./0000755000175000017500000000000011334661443011042 5ustar henrichhenrich./FAQ.TXT0000644000175000017500000001470011331202440012035 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2010-01-31 Q1: How can I display this FAQ again? A1: Type `help' in the command area. Similarly you can get a testpage if you type `test' in the command area. Type 'howto japanese', 'howto configure' to get the howto pages. Q2: Where can I get updates? A2: Download them from http://www.yudit.org/ Q3: I pressed Save Button and nothing happens. Why? A3: Yudit has a command line. Most probably you just need to hit Enter Key. Q4: What is that [Line Break] on the right hand side that is mostly showing "Unix"? A4: The line end marks are: UNIX='\n' - Unix line break DOS='\r\n' - DOS line break MAC='\r' - MAC line break LS = U+2028 - Unicode line separator PS = U+2029 - Unicode paragraph separator In Yudit you can mix these - you can create a file that has DOS and Unix lines for instance. But you should avoid mixing them if possible. Q5: How can I get the list of encodings (-e options)? A5: Type `man uniconv' or `uniconv -h' in a shell window. Q6: How can I add my keyboard input file? A6: The file may already exist in /usr/share/yudit/data in this case you just need to add this to /usr/share/yudit/config/yudit.properties If not, you need to convert the source kmap file into binary format: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Then you need to copy My.my to ~/.yudit/data cp My.my ~/.yudit/data Please send me your kmap file (source) to include it in the next distribution. For more info on kmap files, look at /usr/share/yudit/doc/keymap-format.txt The source code of the kmaps came with yudit are in /usr/share/yudit/src/ Note that kmap files can be used as text converters and font maps too. Q7: How can I see messages in my own language? A7: Download the source code and read the README.TXT. It tells you how to do it. Please send me the translations so that I can include them in future versions. Q8: How can I add a TrueType font? A8: Put font-file.ttf and some-other-font-file.ttf into /usr/share/yudit/fonts or ~/.yudit/fonts after that modify /usr/share/yudit/config/yudit.properties adding a new virtual font MyFont yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Now you can use this font in the editor window if you add it to yudit.editor.fonts=...,MyFont,... or the gui if you add it to: yudit.fonts=...,MyFont,... Q9: Will there be a Windows version? A9: Yudit has an abstract windowing toolkit. This makes it possible to port Yudit to, like svgalib for instance, very quickly. I ported it for my wife Yuko in 2001 December. This was the first and last time I touched Windows. Q10: How good of a Unicode editor is Yudit? A10: I tried to implement the Unicode standard wherever it made sense. There are some quirks, please read the /usr/share/yudit/doc/HOWTO-bidi.txt for bidirectional compliance information. Q11: I specified 3 files on the command line and I can see only one now. A11: They are in the history buffer. If you go to the command input area and hit Arrow-Up (or Ctrl-k) or Arrow-Down (or Ctrl-j) you can walk through the file history. Q12: What are the hot-key bindings? A12: You can see most of them - the yellow tooltip shows them underlined. Most of them should work with Ctrl as well as Alt keys. The pluggable editor currently has the following keybindings: Escape - switch between command mode and editing mode Home - go to beginning of line End - go to end of line b - Page Up f - Page Down k - Up n,j - Down h - Left l - Right m - Delete Whole Line x - Delete Selection v - Paste Last Selection If Meta is kept down while moving the caret, the text will be selected. Mouse double click selects a word triple click selects a full line. Q13: How can I read the contents of a binary keymap file? A13: You can make a source dump like this: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: How can I quickly enter a unicode character? A14: Change input to [unicode], enter uxxxx or Uxxxxxxxx where x is a hexadecimal number. Q15: Can Yudit do replace functions? A15: In The command area you need to type replace old-text new-text and hit an enter for each find/replace. Q16: When can I find the handwriting input method? A16: Click on the blue arrow (input method). Assign freehand to one of the F keys. Q17: How can I turn off syntax highlighting? A17: From the command area by typing: 'syntax none'. The available options are printed in error label if you just type 'syntax'. You can set this in the config file too. If you type "howto syntax" in the editor command area a help file is displayed, which describes spell checker support too. Q18: How can I turn off word wrapping? A18: From the command area by typing: 'wordwrap false'. Typing 'wordwrap true' turns on word wrapping. You can set this in the config file too. Appendix ======== 1.1. Keymap Examples The following examples are for some kmaps that came with Yudit. Russian It maps phonetic Russian letters. The not so obvious ones are: yo yields ё , c yields ь, q yields ъ x yields ы ee yields э Hungarian It maps Hungarian and German characters. The accented characters can be input with the English character followed by the accent. Examples: a' becomes á , o: becomes ö , o" becomes ő SS produces the German ß , Ss gives the paragraph sign §. Kana It maps Romaji into Hiragana and Katakana. Small letters are used for Hiragana and capitals are used for Katakana. The not so obvious ones are: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic With this map you can use RFC1345 mnemonics to enter the characters. Some examples: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML maps SGML to unicode. Examples: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul maps Roman transliteration into Hangul characters. The ISO/TC46/SC2/WG4 transliteration is used. You can find out about it more at http://www.hansoft.com/hangul/faq.html Some examples: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./gnome-yudit.png0000644000175000017500000000624407532460062014016 0ustar henrichhenrichPNG  IHDR00WtIME ( T pHYs  ~ CIDATxYiLY>l.n*n0KMpb\Il۶2jz24n?Ķ]F?6Q[p 7і}jw[xHMnQu޳}| s }zݻZ&C !?(FB#4iZbEDDdmmBSXc/GAAAŋ)>>A9;;iokRII Wr vA^^d6YHXx$֍>`@EGGӳgz|˗ŋ<_RMM-544PSSxkk+577lbO4o 1%X˿2)==~<==ʯ_f!)<<= ---{u:6p+++dЎ;Flf3gUp&2ʊ *ƵUYH~hݺu=B=J&Lb@F'¡F#`iC7sS }BکS(11233())%___V#0ĹI¨F ߼|M MQFϟ?MgV 9+;y2Ό@oQQAl㦹Iyİ(9}%53f̠)SᲡN$Ploo㾨߾/ \86aaɣGT^ZFm۶rի ݃yy Xa%} nj*8uB1[ZPBpX?-P=]xЈ#țq]zűT[[+^`=}K۷oRx[NE` L{3.:c|F~͛ɕL 0{/ɻC҈!SP0u.ڤ$!dfZ !x`֬Y!Ja\3R`qMk3 a_݋.]juKw48\3(h"V&mJy[B}=*ȸnp~:RZ')=|"Hnn ^)Aѽ+zx FzM 5 Ve%-Nep|.0 Bpl׫a Q]#b\~miYښjCPĮ"dB>t,Buo*KN<]xLxDoԨQdWKN8 gOs'OmQ$=U@yُ™3ghĵÊ΅>LKn4PiFdž zH 4uu WW7zdž(--#xzzuGO`~V=+ȆҲe_IV2Kٳ NW0+ti%[5 }>ݻ),s9*jJ+q%$Jݾ> (j7UPƉqƑ?oˁ߽[B JnlA[BN<)W 6ld7e*f O4IeqZoMHJJv4Y-MH3[/CJ &`prM`Jm<~ϛ7nܸAXdBe R7Ɗn߾M'Nhy`,<]=0H@qA,5u*<ذ~PpiRRSSeO(J]6k76mYk0N\\\ʸ&@0N}3 kb)O8A߅:]@cLN-300ZC~6I߸ NdDq`0ijCX}5* &6ٰqK,k׮IsΥNjJh3cYm\r@:#M`M(!"*,$ AQLnݺUꂲ6x֡CJW#(I54ZFKBgąER!.5̆RA4C) ȖR[=h5- =L{v +:k8D?dDCT&1 pR^yB)bJ#tv=ɴUԡ)Swf,eYYY\Sh̙} S^8TsjU-#X=< # yudit.editor.fonts=default,TrueType,Misc,Serif,SansSerif,Box,Full,Indic-F,Indic-M # # You can specify "..,None,.." here too. # As for x-utf-8: # en_GB makes sure you will have the iso8859-1 Compose locale. # For other compose rules, please specify the ones you need: # like hu_HU. Please note that only x-utf-8 can have many # different locales. yudit.editor.inputs=straight,unicode,kinput2,Hungarian,freehand,Hangul,\ Kana,Mnemonic,Esperanto,x-ibus:en_US.utf8,x-utf-8:hu_HU,HungarianRunes # # kinput2:ja_JP, for instance will appear as x-kinput2 to save room # but it will be used as x-kinput2-ja_JP # # IBUS: http://code.google.com/p/ibus/ # SCIM: http://www.scim-im.org/ # interxim: http://www.oksid.ch/interxim/index.html # yudit.editor.xinputs=ibus:en_US.utf8,SCIM:en_US.utf-8,interxim,utf-8:en_GB,utf-8:hu_HU,kinput2:ja_JP.eucJP,xcin:zh_TW.big5,Ami:ko_KR,xcin-zh_CN.GB2312:zh_CN.GB2312 # # The x input style for the editor window. # Available styles: # preedit-root-status-root # preedit-over-status-over # preedit-over-status-under # preedit-under-status-under # yudit.editor.xinputs.style=preedit-over-status-under yudit.editor.fontsize=18 yudit.editor.font=default yudit.editor.input=straight yudit.fonts=default,TrueType,Bitmap,Japanese,Courier,Times,Helvetica,Lucida,Misc # # The font definitions used by yudit.editor.fonts and yudit.fonts # Don't mess with 'default' font unless you have to. It is internally defined. # # - For convention always have one yudit.font.TrueType # - Fonts additionally can have an encoding specified, the # ':' character is used as a separator. # The following font hard-coded encoders will act as range selectors: # # indic: U+0900..U+0FFF # deva: U+0900..U+097F # beng: U+0980..U+09FF # guru: U+0A00..U+0A7F # gujr: U+0A80..U+0AFF # orya: U+0B00..U+0B7F # taml: U+0B80..U+0BFF # telu: U+0C00..U+0C7F # knda: U+0C80..U+0CFF # mlym: U+0D00..U+0D7F # sinh: U+0D80..U+0DFF # thai: U+0E00..U+0E7F # lao: U+0E80..U+0EFF # tibt: U+0F00..U+0FFF # jamo: U+1100..U+11FF # # - Fonts, in addition to encoding can have attributes specified. # currently used attributes: # # RL - Strictly Right-To-Left font # LR - Strictly Left-To-Right font # # If not specified it is used as LR or RL and for RL mirrored glyphs # it will get mirrored by software. # yudit.font.TrueType=arial.ttf,gulim.ttf,ogulim.ttf:mslvt,raghu.ttf,tsckanna.ttf:tscii,dc-font.ttf:mlym,MalOtf.ttf:mlym,code2000.ttf,code2001.ttf:unicode:RL,cyberbit.ttf,yudit.ttf # # For convention always have one yudit.font.Bitmap # yudit.font.Bitmap=\ -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1,*-iso8859-1,\ -sony-fixed-medium-r-normal--*-230-75-75-c-120-iso8859-1 # # Direct rendering if you have unifont.hex. # yudit.font.Unifont=unifont.hex,*-iso8859-1 yudit.font.Japanese=\ *-jisx0208.1983-0,\ *-jisx0201.1976-0,\ *-jisx0212.1990-0,\ -adobe-helvetica-medium-r-normal--*-*-*-*-*-*-iso8859-1 # # JIS X 0213 Font # http://www.mars.sphere.ne.jp/imamura/jisx0213.html # yudit.font.JP2000X=\ -gnu-unifont-medium-r-normal--16-160-75-75-p-80-iso10646-1,\ *-jisx0213.2000-1,*-jisx0213.2000-2,\ *-jisx0201.1976-0,\ -adobe-helvetica-medium-r-normal--*-*-*-*-*-*-iso8859-1 # # Serif.ttf is in fact a paid font DFMinchoPPro5-W5.ttf # yudit.font.Serif=Serif.ttf,times.ttf,cyberbit.ttf,yudit.ttf # # SansSerif.ttf is in fact a paid font DFGothicPPro5-W5.ttf # yudit.font.SansSerif=SansSerif.ttf,arialuni.ttf,yudit.ttf # # This is a package for full coverage of testpage # MuktiNarrow.ttf: # http://savannah.nongnu.org/download/freebangfont/MuktiNarrow-0.94.tar.bz2 # yudit.font.Full=hln.ttf,MuktiNarrow.ttf:beng,ani.ttf:beng,raghu.ttf:deva,dc-font.ttf:mlym,latha.ttf:taml,tunga.ttf:knda,tibt.ttf:tibt,TCRCYoutsoUnicode.ttf:tibt,raavi.ttf:guru,shruti.ttf:gujr,yudit.ttf,cyberbit.ttf,code2001.ttf,code2000.ttf,extendedWatanabeMincho.ttf:shift-jis-3 # # A fairly good set of free or almost free fonts. # As you might have noticed I used the selectors so that # they won't mix up with each other. OpenType script name # can be used for this purpose. # yudit.font.Indic-F=raghu.ttf:deva,bangla.ttf:beng,ani.ttf:beng,sampige.ttf:knda,pothana2000.ttf:telu,TCRCYoutsoUnicode.ttf:tibt,MalOtf.ttf:mlym,code2000.ttf,yudit.ttf # # A set of fonts that you usually can find on MS systems. # yudit.font.Indic-M=mangal.ttf:deva,vrinda.ttf:beng,tunga.ttf:knda,latha.ttf:taml,gautami.ttf:telu,raavi.ttf:guru,shruti.ttf:gujr,tibt.ttf:tibt,arialuni.ttf,yudit.ttf # # Get Courier, Helvetice and Times from Markus Kuhn's Unicode FAQ. # Fallback same with iso9959-1. # yudit.font.Helvetica=\ -adobe-helvetica-medium-r-normal--*-*-75-75-p-*-iso10646-1,\ -adobe-helvetica-*-iso8859-1 yudit.font.Times=\ -adobe-times-medium-r-normal--*-*-75-75-p-*-iso10646-1,\ -adobe-times-*-iso8859-1 # Some experiment with bold yudit.font.Courier=\ -adobe-courier-bold-r-normal--*-*-75-75-m-*-iso10646-1,\ -adobe-courier-*-iso8859-1 # Some experiment with bold yudit.font.Lucida=\ -*-lucidabright-demibold-r-normal--*-*-75-75-p-*-iso10646-1,\ -*-lucidabright-*-r-normal-*-iso8859-1 # http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz yudit.font.Bitmap=-gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1,*-iso8859-1,-sony-fixed-medium-r-normal--*-230-75-75-c-120-iso8859-1 # These size 18 fonts are in ucs-fonts.tar.gz. #yudit.font.Misc=-misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1,\ #-misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-2,\ #-misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 # # These size 18,13 fonts are in ucs-fonts.tar.gz - help yourself # wget http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz # wget http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts-asian.tar.gz # mkdir ucs-fonts; cd ucs-fonts # tar xfz ../ucs-fonts.tar.gz # tar xfz ../ucs-fonts-asian.tar.gz # xset fp+ `pwd` # yudit.font.Misc=-misc-fixed-medium-r-*--18-*-*-*-c-*-iso10646-1,\ -misc-fixed-medium-r-*-ja-18-*-*-*-c-*-iso10646-1,\ -misc-fixed-medium-r-*--18-*-*-*-c-*-iso10646p2-1,\ -misc-fixed-medium-r-*-ja-18-*-*-*-c-*-iso10646p2-1,\ -misc-fixed-medium-r-*--18-*-*-*-c-*-iso10646p2-2,\ -misc-fixed-medium-r-*-ja-18-*-*-*-c-*-iso10646p2-2,\ yudit.ttf:cp-1250 # http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz yudit.font.MiscBold=\ -misc-fixed-bold-r-normal--*-*-75-75-*-*-iso10646-1,\ -misc-fixed-bold-r-normal--*-*-75-75-*-*-iso8859-1\ # # Get a full list from uniconv -h. Only internal encoding are added, # The rest is appended from this list. # yudit.editor.filetypes=Devanagari,Bengali,Tamil,Hungarian,HungarianRunes,Hangul,Bulgarian,Russian,Russian-ISO-Translit,SGML,Yiddish,Troff,Chinese-CJ,DE-RU,GreekBible,Kana,Mnemonic,RU-translit,IS_AS,IS_BN,IS_DV,IS_GJ,IS_KN,IS_ML,IS_OR,IS_PJ,IS_RM,IS_TL,IS_TM yudit.command.font=default yudit.command.fontsize=18 # # This is a bitmap font, good for box drawing # This one has descent and can not be mixed in : # -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 # yudit.font.Box=unifont.hex,-misc-fixed-medium-r-*--18-120-100-100-c-90-iso10646-1 ./bitmap.iss0000700000175000017500000000146111333143122013015 0ustar henrichhenrich; Script generated by the Inno Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! [Setup] AppName=Yudit Bitmap Fonts AppVerName=Yudit Bitmap Fonts 1.5 OutputBaseFileName=bitmap-1.5-1 ArchitecturesInstallIn64BitMode=x64 AppPublisher=Gaspar Sinai AppPublisherURL=http://www.yudit.org/ AppSupportURL=http://www.yudit.org/ AppUpdatesURL=http://www.yudit.org/ DefaultDirName={pf}\Yudit UsePreviousGroup=yes DefaultGroupName=Yudit DisableProgramGroupPage=yes InfoBeforeFile=C:\Build\Yudit\Thirdparty\bitmap-1.5\bitmap.txt DirExistsWarning=no ; uncomment the following line if you want your installation to run on NT 3.51 too. ; MinVersion=4,3.51 [Files] Source: "C:\Build\Yudit\Thirdparty\bitmap-1.5\*.*"; DestDir: "{app}\fonts"; Flags: ignoreversion ./yudit32.iss0000644000175000017500000002127711333734345013077 0ustar henrichhenrich; Script generated by the Inno Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! ; ; When rolling out you need to sync: ; AppVerName: Yudit-{version} ; Current Version: {version} ; Install Directory: Yudit\{version}\Install Directory\ ; Inno Setup Compiler 5.3.7 ; http://www.jrsoftware.org/isdl.htm ; This script was generated/edited ; by Gaspar Sinai ; 2001-12-12 Tokyo [Setup] AppName=Yudit AppVerName=Yudit-2.9.2 OutputBaseFileName=yudit-2.9.2-1.i586 AppPublisher=Gaspar Sinai AppPublisherURL=http://www.yudit.org/ AppSupportURL=http://www.yudit.org/ AppUpdatesURL=http://www.yudit.org/ DefaultDirName={pf}\Yudit DefaultGroupName=Yudit UsePreviousGroup=yes DirExistsWarning=no LicenseFile=C:\Build\Yudit\Install\doc\Copying.txt InfoBeforeFile=C:\Build\Yudit\Install\doc\Readme.txt InfoAfterFile=C:\Build\Yudit\Install\doc\Faq.txt ; uncomment the following line if you want your installation to run on NT 3.51 too. ; MinVersion=4,3.51 [Tasks] Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"; MinVersion: 4,4 [Files] Source: "C:\Build\Yudit\Install\bin\yudit.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\bin\mytool.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\bin\uniconv.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\bin\uniprint.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\data\*.*"; DestDir: "{app}\data"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\config\*.*"; DestDir: "{app}\config"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\syntax\*.*"; DestDir: "{app}\syntax"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\*.*"; DestDir: "{app}\doc"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\CHANGELOG-DOCS.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\COPYING-DOCS"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\FAQ.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\HOWTO-configure.txt"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\HOWTO-keymap.txt"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\HOWTO-windows.txt"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\README-DOCS.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\TODO-DOCS.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\de\FAQ.TXT"; DestDir: "{app}\doc\de"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\es\FAQ.TXT"; DestDir: "{app}\doc\es"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\fi\FAQ.TXT"; DestDir: "{app}\doc\fi"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\hu\FAQ.TXT"; DestDir: "{app}\doc\hu"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\it\FAQ.TXT"; DestDir: "{app}\doc\it"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\ja\FAQ.TXT"; DestDir: "{app}\doc\ja"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\ko\FAQ.TXT"; DestDir: "{app}\doc\ko"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\ru\FAQ.TXT"; DestDir: "{app}\doc\ru"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\sr\FAQ.TXT"; DestDir: "{app}\doc\sr"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\te\FAQ.TXT"; DestDir: "{app}\doc\te"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\vi\FAQ.TXT"; DestDir: "{app}\doc\vi"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\yi\FAQ.TXT"; DestDir: "{app}\doc\yi"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\zh\FAQ.TXT"; DestDir: "{app}\doc\zh"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\fonts\*.*"; DestDir: "{app}\fonts"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\am\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\am\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ar\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ar\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\az\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\az\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\bg\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\bg\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\bn\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\bn\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\cs\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\cs\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\de\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\de\LC_MESSAGES"; Flags: ignoreversion ; English is just an example. It does not have any translations. Source: "C:\Build\Yudit\Install\locale\en\LC_MESSAGES\messages.po"; DestDir: "{app}\locale\en\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\el\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\el\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\es\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\es\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\fi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\fi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\fr\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\fr\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ga\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ga\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\gu\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\gu\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\hi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\hi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\hu\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\hu\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ja\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ja\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ko\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ko\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\mn\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\mn\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\mr\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\mr\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\pl\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\pl\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ru\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ru\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\sl\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\sl\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\sr\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\sr\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ta\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ta\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\uk\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\uk\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ur\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ur\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\vi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\vi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\yi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\yi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\zh\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\zh\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\zh_CN\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\zh_CN\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\man\man1\*.*"; DestDir: "{app}\man\man1"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\src\*.*"; DestDir: "{app}\src"; Flags: ignoreversion [Icons] Name: "{group}\Yudit"; Filename: "{app}\bin\yudit.exe" Name: "{userdesktop}\Yudit"; Filename: "{app}\bin\yudit.exe"; MinVersion: 4,4; Tasks: desktopicon [Registry] Root:HKLM; Subkey: "Software\Inui Yuko\Yudit\Current Version"; ValueName: ""; ValueType: string; ValueData: "2.9.2" Root:HKLM; Subkey: "Software\Inui Yuko\Yudit\2.9.2\Install Directory"; ValueName: ""; ValueType: string; ValueData: {app}; [Run] Filename: "{app}\bin\yudit.exe"; Description: "Launch Yudit"; Flags: nowait postinstall skipifsilent ./Makefile.conf.in0000644000175000017500000000445211333161273014033 0ustar henrichhenrichifeq ($(wildcard /etc/passwd),/etc/passwd) TOPDIR = @TOPDIR@ MSGMERGE=@MSGMERGE@ HAVE_LOCALE = @HAVE_LOCALE@ HAVE_SET_IM_VALUES=@HAVE_SET_IM_VALUES@ NEED_SET_IM_VALUES_PROTO=@NEED_SET_IM_VALUES_PROTO@ prefix = @prefix@ exec_prefix = @exec_prefix@ libexecdir = @libexecdir@ bindir = @bindir@ datadir = @datadir@ mandir = @mandir@ LPR_COMMAND = @LPR_COMMAND@ LPR_CFLAGS = @LPR_CFLAGS@ CXX = @CXX@ CXXFLAGS = @CXXFLAGS@ CFLAGS = @CFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ TRANSLATE_LFLAGS = @GETTEXT_LFLAGS@ CPPFLAGS = -I$(TOPDIR) @CPPFLAGS@ -Wall -DHAVE_MMAP $(CFLAGS) INSTALL = @INSTALL@ YUDIT_DATA = @YUDIT_DATA@ INSTALL = $(TOPDIR)/bin/install-sh -c # Strip binary INSTALL_PROGRAM = $(TOPDIR)/bin/install-sh -c -s INSTALL_DATA = $(TOPDIR)/bin/install-sh -c -m 644 X_CFLAGS = @X_CFLAGS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ USE_X11 = @USE_X11@ X11_LIB = @X11_LIB@ AR = ar cr # # For Sun's SUNWspro compiler you need to have CC's AR # otherwise you get linking errors, like: # # SVector::__vtbl ../stoolkit/libstoolkit.a(SStringVector.o) # [Hint: try checking whether the first non-inlined, # non-pure virtual function of class SVector is defined] # # Todo: put this in configure. # AR = CC -xar -o # #ALL_LIBS=wsock32.lib RANLIB=ranlib LD= $(CXX) $(LDFLAGS) LOCALE_DIR=$(YUDIT_DATA)/locale #INSTALL_DATA=/bin/cp #INSTALL_PROGRAM=/bin/cp MESSAGES=messages OBJS=$(MODULES) SPLATFORM=UNIX SWINDOWS=X11 SWINDOW_FLAGS=$(USE_X11) $(X_CFLAGS) # # This TRANSLATE_LFLAGS should not be here. But this works on solaris... # or, does it? ALL_LIBS=$(X_EXTRA_LIBS) $(X_LIBS) $(X11_LIB) $(LIBS) $(TRANSLATE_LFLAGS) else # # TOPDIR and YUDIT_DATA is all your need. # TOPDIR=/Build/Yudit/yudit-2.9.2 YUDIT_DATA=/usr/share/yudit CPPFLAGS:=$(CPPFLAGS) -nologo -DUSE_WINAPI -I$(TOPDIR) # Zi is debug on CXX=cl /Zi LD=cl /Zi AR=lib /out: ALL_LIBS=advapi32.lib wsock32.lib shell32.lib SPLATFORM=WINDOWS SWINDOWS=WIN32 SWINDOW_FLAGS= # # Do not define HAVE_WS2_32_DLL # because it wont work on Windows95 # #SWINDOW_LIBS=user32.lib ws2_32.lib gdi32.lib imm32.lib SWINDOW_LIBS=user32.lib gdi32.lib imm32.lib HAVE_LOCALE= HAVE_SET_IM_VALUES= NEED_SET_IM_VALUES_PROTO=@NEED_SET_IM_VALUES_PROTO@ endif ifeq (x${YUDIT_MYTOOL},x) MYTOOL := $(TOPDIR)/mytool/mytool else MYTOOL := ${YUDIT_MYTOOL} endif ./swidget/0000755000175000017500000000000011334661073012507 5ustar henrichhenrich./swidget/Makefile0000644000175000017500000000202110722220030014122 0ustar henrichhenrichinclude ../Makefile.conf MODULES=SComponent.o SBorder.o SPanel.o \ SFrame.o STextView.o STextEdit.o SCaret.o SEditorIF.o SEditor.o \ STextEditLS.o SUndo.o SYuditInput.o SLayout.o SUniPrint.o \ SSlider.o SIcon.o SOpaqueLabel.o SButton.o SLabel.o \ STextList.o SListBox.o SIconFactory.o \ SDialog.o STextDialog.o SFileDialog.o \ STextTable.o SDrawing.o SFreeHand.o \ TARGETDIR= TARGETOBJS= ifeq ($(SPLATFORM),WINDOWS) OBJS=$(subst .o,.obj,$(MODULES)) $(subst .o,.obj,$(TARGETOBJS)) TARGET=swidget.lib else OBJS=$(MODULES) $(TARGETOBJS) TARGET=libswidget.a endif all: $(TARGET) # # The cl drops its lib here # swidget.lib: $(OBJS) $(AR)$@ $(subst swin32/,,$(OBJS)) libswidget.a: $(OBJS) $(AR) $@ $(OBJS) $(RANLIB) $@ %.o:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .o,.cpp,$@) %.obj:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .obj,.cpp,$@) depend: $(CXX) -M $(CPPFLAGS) $(patsubst %.o,%.cpp,$(OBJS)) > .depend clean: rm -f *.o *.obj *.o $(TARGET) install: ifeq (.depend, $(wildcard .depend)) include .depend endif ./swidget/SDialog.h0000644000175000017500000000334110434025606014177 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SDialog_h #define SDialog_h #include "swidget/SFrame.h" #include "swidget/SButton.h" #include "swidget/SLabel.h" class SDialog : public SFrame, public SButtonListener, public SFrameListener { public: enum SType { SS_ERR=0, SS_WARN=1, SS_INFO=2, SS_QUESTION, SS_OK_CANCEL, SS_NONE=3 }; SDialog (SPanel* dialogPanel); virtual ~SDialog (); bool getInput (SType messageType); virtual void setBackground (const SColor& bg); virtual void setTitleForeground (const SColor& fg); virtual void setFont (const SString& font, double fontSize=0.0); virtual void setFontSize (double fontSize); protected: virtual void keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void buttonPressed (void* source, const SAccelerator* acc); virtual bool close (SPanel* comp); SType type; SPanel* dialogPanel; void recalc (); bool isCancel; SButton* yesButton; SButton* noButton; }; #endif /* SDialog_h */ ./swidget/SListBox.h0000644000175000017500000000333110434025606014363 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SListBox_h #define SListBox_h #include "swidget/STextList.h" #include "swidget/SSlider.h" #include "swidget/SBorder.h" #include "swidget/SLabel.h" class SListBox : public SPanel { public: SListBox (const SString& title); virtual ~SListBox (); void setText (const SStringVector& v); bool selectText (const SString& s); bool selectItem (int item); /* needed because of border */ virtual void resize (const SDimension& size); void setListListener (SListListener* l); virtual void redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height); virtual void setBackground (const SColor& bg); virtual void setLabelForeground (const SColor& fg); virtual void setSliderBackground (const SColor& bg); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); STextList* textList; protected: void recalc(); SLabel* topLabel; SSlider* slider; SBorder border; }; #endif /* SListBox_h */ ./swidget/STextView.cpp0000644000175000017500000013071510730355376015131 0ustar henrichhenrich/* * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/STextView.h" #include "stoolkit/SCluster.h" #define DEBUG_SPEED 0 /* I could debug speed of redrawing. Most time (98%) is taken in i += font.draw (c, p, dm, &g.array()[i], g.size()-i); */ #if DEBUG_SPEED #ifndef USE_WINAPI #include #else #include #include #endif static struct timeval thatTime; static void timerStart() { gettimeofday (&thatTime, 0); } static void timerStop() { struct timeval thisTime; gettimeofday (&thisTime, 0); if (thisTime.tv_usec < thatTime.tv_usec) { thisTime.tv_sec--; thisTime.tv_usec+=1000000; } thisTime.tv_sec -= thatTime.tv_sec; thisTime.tv_usec -= thatTime.tv_usec; int msec = (int) thisTime.tv_sec * 1000 + thisTime.tv_usec/1000; fprintf (stderr, "Elapsed time: %d msecs\n", msec); } #endif static unsigned int sane_index (const SV_UINT& array, unsigned int index); /** * The text data is mine. I'll delete it. */ STextView::STextView (void) : lrpen (SColor (0.0, 0.0, 0.0, 1.0)), rlpen (SColor (0.0, 0.0, 1.0, 1.0)), underlineColor("red") { printerPageSize = 0; highlightMode = ""; isWordWrapOn = false; isEditable = false; clipx = clipy = 0; clipw = cliph = 0; fontSize = 16.0; lineend = true; multiline = true; syntax.setTextData (&textData); syntax.addTextDataListener (this); textData.addTextDataListener (this); textData.addLineTracker (&syntax); } /** * Make a text-view from external text * @param utf8 is the utf8 ancoded text */ STextView::STextView (const SString& utf8) : textData (utf8), lrpen (SColor (0.0, 0.0, 0.0, 1.0)), rlpen (SColor (0.0, 0.0, 1.0, 1.0)), underlineColor("red") { printerPageSize = 0; highlightMode = ""; isWordWrapOn = false; isEditable = false; clipx = clipy = 0; clipw = cliph = 0; fontSize = 16.0; lineend = true; multiline = true; wrapAndPosition (); syntax.setTextData (&textData); syntax.addTextDataListener (this); textData.addTextDataListener (this); textData.addLineTracker (&syntax); textData.clearEvent(); } /** * Set the text and * Do the reordering, expanding for the whole text. * Not very efficient with large text. */ void STextView::setText(const SString& text) { textData.clear(); textData.fireEvent(); textData.insert(text); /* HACK FOR LABELS - they neeed to know their exact size */ for (unsigned int i=0; i 0.0) fontSize = _fontSize; font = SFont(_font, fontSize); setPen (); setReordered (); lineHeight = (unsigned int ) (font.ascent() + font.descent() + font.gap()); lineAscent = (unsigned int) font.ascent(); preferredSize.height = (textData.size()==0) ? lineHeight : textData.size() * lineHeight; } /** * Set the size of the font. * @param size is the size of the font. */ void STextView::setFontSize (double newsize) { font.setSize(newsize); setPen (); setReordered (); lineHeight = (unsigned int ) (font.ascent() + font.descent() + font.gap()); lineAscent = (unsigned int) font.ascent(); preferredSize.height = (textData.size()==0) ? lineHeight : textData.size() * lineHeight; } /** * Set the pen size according to font size. */ void STextView::setPen () { double pensize = 1.0; double pointsize = font.getSize(); if (pointsize <= 16) { pensize = 0.125; } else if (pointsize <=24) { pensize = 0.25; } else if (pointsize <=80) { pensize = 0.5; } else if (pointsize <=100) { pensize = 0.75; } lrpen.setLineWidth (pensize); rlpen.setLineWidth (pensize); } /** * Set the text alignment align is true if it is right aligned. */ void STextView::setAlignment (bool align) { alignment = align; } /** */ void STextView::setMultiline (bool _multiline) { multiline = _multiline; setReordered (); } /** */ bool STextView::isMultiline () const { return multiline; } /** * Set the viewport. This is the location that casts to {0;0} * @param _viewPort is the new viewport. */ void STextView::setViewPort (const SLocation& _viewPort) { viewPort = _viewPort; } const SLocation& STextView::getViewPort() { return viewPort; } /** * Resize the component and redraw. */ void STextView::resize (const SDimension& _dimension) { SComponent::resize (_dimension); setReordered (); } unsigned int STextView::getLineIndex (int locy) { /* binary search linespan */ unsigned int top; unsigned int bottom; unsigned int mid; top = lineSpan.size(); bottom = 0; int y = locy - (location.y + viewPort.y) + 1; while (top > bottom) { mid = (top+bottom)/2; unsigned int sindex = lineHeight * sane_index (lineSpan, mid+1); if (y == (int) (sindex)) { top = mid; break; } if (y < (int) (sindex)) { top = mid; continue; } bottom = mid + 1; } return top; } /** * @param l is the location on the canvas. */ SCursorIndex STextView::getCursorIndex (const SLocation& l) { unsigned int line = getLineIndex (l.y); if (line >= textData.size()) { if (line > 0 && !textData.isProperLine (line-1)) { return SCursorIndex (line-1, textData.size(line-1)); } return SCursorIndex (line, 0); } SV_UINT brk; if (line < textData.size()) { setVisible (line); brk = breaks[line]; } /* Linear search. I don't expect long lines. */ unsigned int offset = lineHeight * sane_index (lineSpan, line); SLocation lm (0, viewPort.y-location.y+(int)offset); bool lr = textData.isLR (line); /* Transpose to LR */ lm.x = l.x-location.x+viewPort.x; /* convert as if it were lr */ if (!lr) lm.x = (int)size.width - (int)lm.x; /* find where the glyph starts */ unsigned int i; unsigned int currExt=0; for (i=0; i l.y) break; currExt = brk[i]; } unsigned int si = textData.size(line); unsigned int nextExt = si; if (i= (int)begpos && lm.x < (int)midpos) { cindex = SCursorIndex(line, i, before); /* logical before */ break; } else if (lm.x >= (int)midpos && lm.x < (int)endpos) { cindex = SCursorIndex(line, i, !before); /* logical after */ break; } } if (i==si && lm.x > 0 && si > 0) { /* rl is initialized already */ cindex = SCursorIndex(line, i, before); } /* beginning or found */ return SCursorIndex(cindex); } SLocation STextView::getCursorLocation (const SCursorIndex& cursorIndex) { return SLocation(getTextLocation (cursorIndex.textIndex, cursorIndex.before)); } /** * Convert a line and index to a location on the screen * This is the top left(lr) or right(rl) corner of the glyph. * @param line is the line number. * @param index is the index. * @param before is true if we need the index before the glyph - * logical meaning. * Here is an LR glyph: * Paragraph LR A A Paragrph RL * ^ ^ ^ ^ * | | | | * Before ----+ +--- After Before ---+ +---- After */ SLocation STextView::getTextLocation (const STextIndex& textIndex, bool before) { unsigned int line = textIndex.line; unsigned int index = textIndex.index; unsigned int ll = sane_index (lineSpan, line); SLocation ret; if (line >= textData.size()) { ret = SLocation (location.x+viewPort.x, location.y+viewPort.y + lineHeight * ll); } else { setVisible (line); SV_UINT brk = breaks[line]; /* It may be second or third line. */ unsigned int i = 0; int yoffset = 0; unsigned int posafter = 0; for (i=0; i textData.size(line) && textData.isProperLine(line)) { /* last one */ si = 0; yoffset++; } else /* Streched beyond the last one. */ { SV_UINT v = posAfter[line]; unsigned int max = 0; unsigned int maxi = 0; for (unsigned int i=posafter; i max) { max = v[i]; maxi = i; } } si = posAfter[line][maxi]; } ret = SLocation (location.x+si+viewPort.x, location.y+viewPort.y + lineHeight * (ll+yoffset)); } bool lr = textData.isLR (line); int nloc = (lr) ? ret.x : 2 * location.x + (int)size.width - (int)ret.x - 2 * viewPort.x; return SLocation(nloc, ret.y); } /** * This is coming from the SWindowListener * @param c is the canvas to draw on. * @param x is the upper lect corner. * @param y is the upper lect corner. * @param width is the width of this event. * @param height is the height of this event. */ void STextView::redraw (SWindow *w, int x, int y, unsigned int width, unsigned int height) { internalRedraw (w, x, y, width, height); } /** * This is coming from the SWindowListener * @param c is the canvas to draw on. * @param x is the upper lect corner. * @param y is the upper lect corner. * @param width is the width of this event. * @param height is the height of this event. */ void STextView::redraw (SCanvas *c, int x, int y, unsigned int width, unsigned int height) { internalRedraw (c, x, y, width, height); } /** * This is coming from the SWindowListener * @param c is the canvas to draw on. * @param x is the upper lect corner. * @param y is the upper lect corner. * @param width is the width of this event. * @param height is the height of this event. */ void STextView::internalRedraw (SCanvas *c, int x, int y, unsigned int width, unsigned int height) { #if DEBUG_SPEED x = getLocation ().x; y = getLocation ().y; width = getSize().width; height = getSize().height; timerStart(); #endif SLocation lb (x, y); SLocation le (x+width, y+height); unsigned int line = getLineIndex (lb.y); bool islr = textData.isLR (line); SLocation lstart = lb; if (!islr) { lstart.x = le.x; } SLocation lleft(location.x+viewPort.x, location.y+viewPort.y + (int) lineHeight * (int) sane_index (lineSpan, line)); SLocation lright(location.x+viewPort.x+(int)size.width, lleft.y); unsigned int i; // expand +/- SD_PRE_EXPAND lines by calling textData.size(i). unsigned int start = (line > SD_PRE_EXPAND) ? line-SD_PRE_EXPAND : 0; for (i=start; iline+SD_PRE_EXPAND) break; } for (i=line; i location.y + (int) size.height ) break; if (lleft.y > y + (int)height) break; } #if DEBUG_SPEED timerStop(); #endif } /** * Draw a whole line of glyphs. * @param c is the canvas to draw to * @param islr is true if we draw from left to right. * @param line is the line index to draw. * @param l is the beginning upper corner location * @param lb is the beginning exposure * @param le is the end exposure * @param iswindow is true if we want to set the clipping area * this is only if you want to experiment - we dont want to do that. * @return the number of lines drawn. */ unsigned int STextView::drawParagraph (SCanvas* c, bool islr, unsigned int line, const SLocation& l, const SLocation& lb, const SLocation& le, bool iswindow) { SV_UINT br; if (line < breaks.size()) br = breaks[line]; unsigned int currExt = 0; SLocation lm = l; unsigned int ls = textData.size(line); unsigned int mycliph = 0; /** * set clip to line so that we won't overflow... */ if (iswindow && clipw != 0 && cliph != 0) { int myclipy0 = (clipy > lm.y) ? clipy : lm.y; int myclipy1 = myclipy0 + lineHeight; if (myclipy1 > clipy + (int) cliph) { myclipy1 = clipy + (int) cliph; } mycliph = (myclipy1 > myclipy0) ? myclipy1-myclipy0 : 0; //fprintf (stderr, "clip=%d,%d wh=%u,%u\n", clipx, myclipy0, clipw, mycliph); if (mycliph) { ((SWindow*)c)->setClippingArea (clipx, myclipy0, clipw, mycliph); } } for (unsigned int i=0; i= br.size()) break; } lm.y = lineHeight * currExt + l.y; if (iswindow && clipw != 0 && cliph != 0) { int myclipy0 = (clipy > lm.y) ? clipy : lm.y; int myclipy1 = myclipy0 + lineHeight; if (myclipy1 > clipy + (int) cliph) { myclipy1 = clipy + (int) cliph; } mycliph = (myclipy1 > myclipy0) ? myclipy1-myclipy0 : 0; if (mycliph) { ((SWindow*)c)->setClippingArea (clipx, myclipy0, clipw, mycliph); } } } lm.x = islr ? l.x + (int) posBefore[line][i] : l.x-1-(int) posAfter[line][i]; unsigned int e = posAfter[line][i] - posBefore[line][i]; /* is it drawable ? */ if (lm.x < le.x && lb.x < lm.x + (int) e && lm.y < le.y && lb.y < lm.y + (int) lineHeight) { if (!iswindow || mycliph) drawGlyph (c, lm, e, STextIndex (line,i)); } } if (iswindow && clipw!=0 && cliph !=0) { ((SWindow*)c)->setClippingArea (clipx, clipy, clipw, cliph); } return currExt+1; } /** * Set Syntax Hilight Mode */ void STextView::setSyntax (const SString& hlm) { highlightMode = hlm; // these are kept for backward compatibility, hard coded. if (hlm == "simple" || hlm == "simple-dark" || hlm == "none") { syntax.setSyntax (""); } else { syntax.setSyntax (hlm); } } /** * Get Syntax Hilight Mode */ const SString& STextView::getSyntax () const { return highlightMode; } void STextView::setSyntaxColors (const SSyntaxColors& attr) { syntaxColors = attr; } const SSyntaxColors& STextView::getSyntaxColors () const { return syntaxColors; } /** * Set WordWrap Mode * @param pbm is true if line break is on */ void STextView::setWordWrap (bool lbm) { isWordWrapOn = lbm; setReordered (); } /** * Some stuff displays differently if this is editable. */ void STextView::setEditable (bool editable) { isEditable = editable; setReordered (); } /** * Get WordWrap Mode * @return true if line break is on. */ bool STextView::getWordWrap () const { return isWordWrapOn; } /** * Syntax Highlighting system. * Added by Maarten van Gompel * Note: this is a dumb system and merely colors single characters. * For error highlighting, set forground to NONE and error to true. */ void STextView::syntaxHighlight(STextIndex index, SPen* pen, bool *isError) { *isError = false; if (highlightMode == "simple") { const SGlyph& g = textData.glyphAt (index); if (g.isLetter ()) { } else if (g.isNumber()) { pen->setForeground(SColor("orange")); } else // not a letter, nor a number { pen->setForeground(SColor("CornflowerBlue")); } if (getLigatureScriptCode (g.getChar()) == SD_AS_LITERAL) *isError = true; } else if (highlightMode == "simple-dark") { const SGlyph& g = textData.glyphAt (index); if (g.isLetter ()) { } else if (g.isNumber()) { pen->setForeground(SColor("orange4")); } else // not a letter, nor a number { pen->setForeground(SColor("DeepSkyBlue4")); } if (getLigatureScriptCode (g.getChar()) == SD_AS_LITERAL) *isError = true; } else if (highlightMode != "none" && highlightMode != "") { SSyntax::SS_Tag tag = syntax.getTagByTDI (index); const SGlyph& g = textData.glyphAt (index); if (getLigatureScriptCode (g.getChar()) == SD_AS_LITERAL) { *isError = true; tag = SSyntax::SD_CONTROL; SColor c = syntaxColors.colors[(unsigned int) tag]; pen->setForeground(c); } // SD_ERROR and SD_NONE is preserving old color else if (tag == SSyntax::SD_ERROR) { // SColor c = syntaxColors.colors[(unsigned int) SSyntax::SD_NONE]; // pen->setForeground(c); *isError = true; } else if (tag == SSyntax::SD_NONE) { // preserve original color } else { SColor c = syntaxColors.colors[(unsigned int) tag]; pen->setForeground(c); } } return; } /** * Draw one signle glyph on the screen. * @param c is the canvas to draw to * @param l is the location of the glyph. * @return the length of the text drawn */ void STextView::drawGlyph (SCanvas* c, SLocation& l, unsigned int ext, STextIndex index) { const SGlyph& g = textData.glyphAt (index); SS_Matrix2D dm; dm.y1 = -dm.y1; /* updown */ dm.translate (0, font.ascent ()); dm.translate ((double)l.x, (double)l.y); SPen p (lrpen); if (!g.isLR()) { p = rlpen; } unsigned int explevel = g.getExplicitLevel(); bool isError = false; if (g.selected) { //SColor fg = p.getForeground(); //SColor bg = p.getBackground(); SColor fg = SColor("DeepSkyBlue4"); SColor bg = SColor("white"); p.setForeground (bg); p.setBackground (fg); c->bitfill (fg, l.x, l.y, ext, lineHeight); } /* fade background according to embed level */ else if (isEditable && explevel!=0) { SColor bg = p.getBackground(); if (explevel > 5) explevel = 5; /* 5 shades max*/ /* This funny linear curve is the result of experiments */ double alpha = 1.0/2.0 + (1.0/2.0) * 0.9 * ((double)explevel)/5.0; /* we fade gray in with an alpha */ double cg = 0.5; SColor grey(cg,cg,cg, alpha); bg.blend (grey); p.setBackground (bg); c->bitfill (bg, l.x, l.y, ext, lineHeight); } if (!g.selected) { /* * Syntax highlighting, an addition * by Maarten van Gompel */ syntaxHighlight(index, &p, &isError); /* change pen color if necessary */ } if (!lineend && g.isEOP()) return; SS_UCS4 fc = g.getFirstChar(); /* I would just check for SD_CC_Mn also */ if (!isEditable && (g.isEOL() || fc == SD_CD_LRM || fc == SD_CD_RLM || fc == SD_CD_ZWNJ || fc == SD_CD_ZWJ)) { return; } /* Zero width space */ if (fc == SD_CD_ZWSP) return; if (!g.isTab()) font.draw (c, p, dm, g); if (g.underlined) { unsigned int w = ext; unsigned int h = lineHeight/24+1; unsigned int base = (lineAscent + h >= lineHeight) ? lineHeight -1 : lineAscent + h; /* construct a square */ // changed in 2.8.2 //c->bitfill (underlineColor, l.x, l.y + (int) base - h, w, h); c->bitfill (underlineColor, l.x, l.y + (int) base, w, h); } else if(isError) { SColor errColor = syntaxColors.colors[(unsigned int) SSyntax::SD_ERROR]; unsigned int w = ext; unsigned int h = 3; // height occupies 3 pixels unsigned int base = (lineAscent + h >= lineHeight) ? lineHeight - 1 : lineAscent + h; int screenBase = l.y + (int) base; SBinVector x; SBinVector y; for (unsigned i=0; i 0) { c->bitpoints (errColor, x.array(), y.array(), x.size()); } } } /** * This can be called by the STextData and SSyntax. */ void STextView::textChanged (void* src, const STextDataEvent& unparsedEvent) { if (src == &syntax && unparsedEvent.attribute) { STextIndex tb = unparsedEvent.start; STextIndex te = unparsedEvent.remaining; // convert te back to text data coords te.line = te.line >= textData.size() ? 0 : textData.size() - te.line; // Filter out visible range unsigned int firstVisible = getLineIndex (0); int height = (int) getSize().height; int width = (int) getSize().width; unsigned int lastVisible = getLineIndex (height); // filter out nont visible portion if (te.line < firstVisible) return; if (tb.line > lastVisible+1) return; if (tb.line < firstVisible) tb.line = firstVisible; tb.index = 0; // non-inclusive if (te.line > lastVisible) te.line = lastVisible+1; te.index = 0; // calculate the screen index, and do a redraw if (te.line > textData.size()) te.line = textData.size(); if (tb.line > textData.size()) tb.line = textData.size(); int bcoord = (int) lineHeight * sane_index (lineSpan, tb.line); int ecoord = (int) lineHeight * sane_index (lineSpan, te.line); // as we scroll down viewPort.y becomes negative. // y coord of top of starting line. bcoord += (location.y + viewPort.y) - 1; // y coord of top of ending line. ecoord += (location.y + viewPort.y) - 1; SWindow* w = getWindow (); if (w && ecoord > bcoord && bcoord < height && ecoord > 0) { /* request a redraw and clear the whole area + overdraw */ w->redraw (true, 0, bcoord, width, ecoord-bcoord + 2); //fprintf (stderr, "redraw 0,%d %u,%u\n", bcoord, getSize().width, ecoord-bcoord); //fprintf (stderr, "tb=%u te=%u\n", tb.line, te.line); } } else { textChangedInternal (src, unparsedEvent); } } void STextView::textChangedInternal (void* src, const STextDataEvent& event) { /* The whole text has been cleared */ if (textData.size()==0) { wrapAndPosition(); SWindow* w = getWindow (); if (w) { /* request a redraw and clear the whole area */ w->redraw (true, location.x, location.y, size.width, size.height); } return; } /* overdraw */ int odw = (int) lineHeight / 3 + 1; STextIndex tb = textData.getMinTextIndex (event); STextIndex te = textData.getMaxTextIndex (event); unsigned int oldsize = lineSpan.size(); unsigned int oldspan = sane_index (lineSpan, oldsize); bool oldlr = textData.isLR(tb.line); SV_UINT oldbreaks; if (tb.line == te.line && tb.line < oldsize && tb.line < breaks.size()) { /* This is still the old breaks */ oldbreaks = breaks[tb.line]; } /* change in text contents */ SV_UINT mapBefore = textData.getLogicalMap(tb.line); SV_UINT mapAfter = mapBefore; if (!event.attribute) { /* For efficiency, multiline guys will make it only partial */ if (multiline) { /* was recalc */ wrapAndPosition (tb.line, te.line+1, (int)textData.size() - (int) lineSpan.size()); } else { wrapAndPosition (); } mapAfter = textData.getLogicalMap(tb.line); /* find the highest and visual index */ } SWindow* w = getWindow(); if (w == 0) { /* This is a strange place to return - but we needed to rebuild indeces */ return; } unsigned int newsize = lineSpan.size(); unsigned int newspan = sane_index (lineSpan, newsize); bool samebreak = false; bool newlr = textData.isLR(tb.line); bool drawwholeline = (newlr != oldlr && tb.line == te.line); if (tb.line == te.line && tb.line < newsize && tb.line = tb.index && n[i] <= te.index) { drawwholeline = true; } } } } if (tb.line == te.line && drawwholeline) { tb.index = 0; te.index = mapAfter.size(); } /* adjust tb te */ if (tb.line == te.line && !drawwholeline && samebreak) { unsigned int i; /* find out lowest common stuff in map */ unsigned int min = mapAfter.size() < mapBefore.size() ? mapAfter.size() : mapBefore.size(); /* make logical to visual maps */ SS_UINT * mapa = new SS_UINT[mapAfter.size()+1]; CHECK_NEW (mapa); for (i=0; i 0) { tb.index = mapAfter[0]; } else { tb.index = 0; } lowestvis=0; } /* find out if there is something between zero and lowes vis */ for (i=0; i= tb.index) { tb.index = mapa[i]; lowestvis = i; break; } } // if still between lowest and end there is a lower index, take 0. for (i=lowestvis; i 0) smallest--; tb.index = smallest; break; } } /* for attribute te.index is also used and mapafter = mapbefore */ if (event.attribute && te.index < mapAfter.size()) { unsigned int vis = mapAfter[te.index]; unsigned int max = mapAfter.size(); for (i=mapAfter.size(); i>vis; i--) { if (mapa[i-1] < te.index) { te.index= max; break; } max = mapa[i-1]; } } else { te.index = mapAfter.size(); } delete [] mapa; delete [] mapb; } SLocation lb = getTextLocation (tb); SLocation le = getTextLocation (te); /* * Get smallest and biggest. */ if (tb.line == te.line && samebreak && le.y == lb.y) { if (le.x < lb.x) { int tmp = lb.x; lb.x = le.x; le.x = tmp; } for (unsigned int i=tb.index; i<=te.index; i++) { SLocation l = getTextLocation (STextIndex(tb.line, i)); if (l.x < lb.x) lb = l; if (l.x > le.x) le = l; l = getTextLocation (STextIndex(tb.line, i), false); if (l.x < lb.x) lb = l; if (l.x > le.x) le = l; } } //fprintf (stderr, "lb.x =%d, le.x=%u\n", lb.x, le.x); /* make sure we are inside the window */ if (lb.y + (int)lineHeight < 0) lb.y = -(int)lineHeight; if (le.y > location.y + (int)size.height) le.y = size.height + location.y; /* Text content did not change, only the attribute */ int starty = (lb.y > 5) ? lb.y - odw: 0; unsigned int lheight = lineHeight + 2*odw; if (event.attribute) { /* single */ if (lb.y == le.y && samebreak) { /* we add 1 to make sure it is non-null positive */ w->redraw (true, lb.x-odw, starty, (unsigned int) (le.x-lb.x)+2*odw, lheight); } else // multiline - redraw whole thing. { le = getTextLocation (STextIndex (te.line, textData.size(te.line))); if (lb.y < le.y) /* always */ { w->redraw (true, location.x, starty, size.width, lheight + (unsigned int)(le.y-lb.y)); } else /* I dont know what happened - redraw */ { w->redraw (true, location.x, location.y, size.width, size.height); } } return; } /* Change is inside a single paragraph */ if (tb.line == te.line && oldsize == newsize && oldspan == newspan) { /* The whole change is on the same line (breaks did not change) */ if (lb.y == le.y && samebreak) { bool lrline = textData.isLR (tb.line); int wid = 0; if (lrline) { //lb.x = lb.x; wid = (int) size.width; /* till end of line */ } else { lb.x = 0; wid = le.x + location.x; } /* redraw till end of line */ w->redraw (true, lb.x-odw, starty, (unsigned int) wid + 2*odw, lheight); } else /* This is a multi-line paragraph change. redraw till end */ { le = getTextLocation (STextIndex (te.line, textData.size(te.line))); if (le.y > lb.y) /* always */ { w->redraw (true, location.x, starty, size.width, lheight + (unsigned int)(le.y-lb.y)); } else /* I dont know what happened - redraw */ { w->redraw (true, location.x, location.y, size.width, size.height); } } return; } /* Multi-paragraph change. Is it visible? */ if (starty < location.y + (int) size.height) { w->redraw (true, location.x, starty, size.width, location.y + (int)size.height - starty); } } /** * Makr lines so that they will recalculate */ void STextView::setReordered() { /* HACK FOR LABELS - they neeed to know their exact size */ if (!isEditable) { for (unsigned int i=0; i sum) { s -= removesum-sum; } else { s += sum-removesum; } lineSpan.replace (i, s); i++; } } preferredSize.height = (textData.size()==0) ? lineHeight : textData.size() * lineHeight; } /** * Caclulate the extent as one line. * It inserts an element at line in positions, and breaks. * The positions array will have the positions of the end * of the glyph, ragrdless of paragraph embedding, in LR order. * @param line is the line to calculate. * @return the linesspan */ unsigned int STextView::wrapAndPosition (unsigned int line, SH_UINT* cache) { /* first line is always visible - multiline */ if (!textData.isVisible(line)) { SV_UINT empty; posAfter.insert(line, empty); posBefore.insert(line, empty); breaks.insert(line, empty); /* make span 1 */ return 1; } /* +1 is only because of zero sized arrays */ SS_UCS4* logical = new SS_UCS4[textData.size(line)+1]; CHECK_NEW(logical); SS_UCS4* logicalBefore = new SS_UCS4[textData.size(line)+1]; CHECK_NEW(logicalBefore); SS_UCS4* visual = new SS_UCS4[textData.size(line)+1]; CHECK_NEW(visual); unsigned int ae=0; unsigned int ce=0; unsigned int le=0; unsigned int i; SV_UINT b; bool wrapNext = false; bool wrapPage = false; unsigned int lastbreak = 0; /* go through the text in logical order */ for (i=0; iget (g.charKey()); if (ce ==0) { ce = (unsigned int) (0.5 + font.width (g)); SS_UCS4 fc = g.getFirstChar(); if (!isEditable && (g.isEOL() || fc == SD_CD_LRM || fc == SD_CD_RLM || fc == SD_CD_ZWNJ || fc == SD_CD_ZWJ)) { ce = 1; } else if (fc == SD_CD_ZWSP) { ce = 1; } else if (g.isTab()) { int tabsize = (int)(4.0 * font.getSize()); if (tabsize < 1) tabsize = 1; ce = tabsize - (le % (unsigned int)tabsize); if (multiline && (le + ce)> size.width && le > 0) { /* force line break. */ ce = (int)(4.0 * font.getSize()); } } /* Shaped glyphs width and tab may change. */ if (g.getShapeArray()==0 && !g.isTab()) { cache->put (g.charKey(), ce); } } le += ce; ae += ce; logical[i] = ce; if (multiline && le > size.width && i > 0 && !wrapNext) { if (g.isTab()) { /* nothing to do. we break here */ } /* we might want to wrap earlier */ else if (isWordWrapOn && !textData.canWrap (STextIndex (line, i-1))) { unsigned int oldae = ae; unsigned int oldi = i; while (i>lastbreak && !textData.canWrap (STextIndex (line, i-1))) { ae -= logical[i]; i--; } /* emergency break */ if (i==lastbreak) { ae = oldae; i = oldi; } } le = logical[i]; b.append (i); lastbreak = i; } else if (wrapNext) { le = logical[i]; lastbreak = i; if (wrapPage) { if (i == 1 && line == 0) // first line, first char is a FF { b.append (i); } else if (i > 1) // we have something on the line { //const SGlyph& gp = textData.glyphAt (STextIndex (line, i-2)); // the one before FF is an FF too b.append (i); } unsigned int currSpan = (line == 0 || lineSpan.size() < line-1) ? 0 : lineSpan[line-1]; // how many more we need to add to reach top? unsigned int lh = (lineHeight == 0) ? 1 : lineHeight; unsigned int linesPerPage = printerPageSize / lh; while (((currSpan + b.size()) % linesPerPage) != 0) { b.append (i); } } else { b.append (i); } } wrapNext = (multiline && g.isEOL() && !g.isEOP()); if (printerPageSize != 0 && wrapNext) { wrapPage = g.isFF(); } } /* now b contains the logical positions where the glyph should start at 0 */ b.append (textData.size(line)); /* break the text into lines */ textData.setLineBreaks(line, b); if (preferredSize.width < ae) preferredSize.width = ae; /* make a visual map */ for (i=0; iisVisible()) return; w->redraw (true, location.x, location.y, size.width, size.height); } /** * Is new line shown? * @return true if newline characters are shown. */ bool STextView::getLineEndMark () const { return lineend; } /** * calculate the height of the document. */ unsigned int STextView::getDocumentHeight() const { if (textData.size() == 0) { return lineHeight; } unsigned int fheight = lineSpan[textData.size()-1]; if (textData.isProperLine (textData.size()-1)) { fheight += 1; } return (fheight * lineHeight); } /** * return the 'sane index'. * That is, at index 0 it should be 0 * at index at array->size() is should be the last element. */ static unsigned int sane_index (const SV_UINT& array, unsigned int index) { if (index == 0 || array.size() < index) return 0; return array[index-1]; } void STextView::setUnderlineColor (const SColor& c) { underlineColor = c; } /** * Mark this visible */ void STextView::setVisible (unsigned int line) { if (!textData.isVisible (line)) { textData.setVisible(line); wrapAndPosition (line, line+1, 0); } else if (textData.isReordered(line)) { wrapAndPosition (line, line+1, 0); } } /** * return the cursor index that is left (screen-wise) of * ci. * @checkembed is true check for embedding boundary */ SCursorIndex STextView::leftOf (const SCursorIndex& ci) { if (ci.textIndex.line >= textData.size()) { return SCursorIndex(ci.textIndex.line, ci.textIndex.index); } setVisible (ci.textIndex.line); SCursorIndex cn = moveCursor (ci, false); return SCursorIndex (cn); } SCursorIndex STextView::rightOf (const SCursorIndex& ci) { if (ci.textIndex.line >= textData.size()) { return SCursorIndex(ci.textIndex.line, ci.textIndex.index); } setVisible (ci.textIndex.line); SCursorIndex cn = moveCursor (ci, true); return SCursorIndex (cn); } /** * Move the cursor up or down one slot visuallly. * You have to expand the paragrapgh before this call. * @param ci is the input index. * @praram isup is true if we walk right visuallly. * @return 1 index up or down. */ SCursorIndex STextView::moveCursor (const SCursorIndex& ci, bool isup) { SV_UINT map = textData.getLogicalMap(ci.textIndex.line); if (map.size()==0) return SCursorIndex(ci.textIndex.line,0); if (textData.isProperLine (ci.textIndex.line)) { map.truncate (map.size()-1); } if (map.size()==0) return SCursorIndex(ci.textIndex.line,0); /* we need to find the current index in the map. */ int current = map.size(); for (unsigned int i=0; i= (int)map.size()) { current = (int)map.size(); resbefore = true; return SCursorIndex (ci.textIndex.line, (unsigned int) current, resbefore); } resindex = map[(unsigned int) current]; /* check changed index */ SCursorIndex res (ci.textIndex.line, resindex, resbefore); bool nlr = textData.isLR (res.textIndex); /* rl before is logical after switch */ /* nlr already switched */ /* back to logical order */ if (!nlr) res.before = !res.before; /* embed changed */ if (!samembed) { res.before = !res.before; return SCursorIndex (res); } /* direction changed */ if (clr != nlr) { res.before = !res.before; } return SCursorIndex (res); } ./swidget/SOpaqueLabel.h0000644000175000017500000000366010434025606015176 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SOpaqueLabel_h #define SOpaqueLabel_h #include "swidget/SComponent.h" #include "swidget/STextView.h" #include "swidget/SIcon.h" #include "stoolkit/STypes.h" class SOpaqueLabel : public SComponent { public: SOpaqueLabel (const SString& string); SOpaqueLabel (const SString& string, SIcon* icon); virtual ~SOpaqueLabel (); virtual void redraw(SCanvas* w, int x, int y, unsigned int width ,unsigned int height); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); void setForeground (const SColor& fg); void setForeground (const SColor& lrfg, const SColor& rlfg); virtual void setBackground (const SColor& bg); virtual const SDimension& getPreferredSize (); const SColor& getBackground (); const SColor& getForeground (bool lr); void setIcon (SIcon* icon); void setText (const SString& text); void setAlignment (SAlignment alignment); STextView textView; private: SAlignment alignment; void processLabelText (); virtual void recalcSize (); SIcon* icon; }; #endif /* SOpaqueLabel_h */ ./swidget/SLayout.cpp0000644000175000017500000001201210434025610014576 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SLayout.h" #include SLayout::SLayout (void) : lc(0,0), rc(0,0), dlc(0,0), drc(0,0) { } /** * The layout looks like this: * lc-------------+ * | | * | | * +-------------rc * When resize happens the lc is moved by dlc *(lc-newlc) * so these are deltas. The unit for deltas are 1000, so resizing * by unit 1 is achieved by 100. * Example a component that has a minimum size of 100 and grows * twice when resized: * lc.x lc.y rc.y rc.y dlc.x dlc.y drc.x drc.y * 0, 0, 10, 10 0, 0 100, 100 * it will also move down if: * 0, 0, 10, 10 0, 100 100, 100 * it will also move right if: * 0, 0, 10, 10 100, 0 100, 100 */ SLayout::SLayout (const SLocation& _lc, const SLocation _rc, const SLocation& _dlc, const SLocation _drc) : lc (_lc), rc (_rc), dlc(_dlc), drc(_drc) { } SLayout::SLayout (const SLocation& _lc, const SLocation _rc) : lc (_lc), rc (_rc) { dlc = SLocation (100, 100); drc = SLocation (100, 100); } SLayout::SLayout (const SDimension& _rc) : rc (_rc) { lc = SLocation (0, 0); dlc = SLocation (100, 100); drc = SLocation (100, 100); } /** * copy the layout. */ SLayout::SLayout (const SLayout& l) { lc = l.lc; rc = l.rc; dlc = l.dlc; drc = l.drc; } SLayout SLayout::operator = (const SLayout& l) { lc = l.lc; rc = l.rc; dlc = l.dlc; drc = l.drc; return *this; } SLayout::~SLayout () { } /** * Add layout to this to make a bigger layout. */ SLayout SLayout::operator += (const SLayout l) { if (l.rc.x > rc.x) rc.x = l.rc.x; if (l.rc.y > rc.y) rc.y = l.rc.y; return *this; } bool SLayout::isEmpty() const { return (lc == rc && rc == drc && drc == dlc && dlc == SLocation(0,0)); } /** * This is in fact the minimum size. */ SDimension SLayout::getDimension () const { SLocation delta = rc - lc; if (delta.x < 0) delta.x = 2; if (delta.y < 0) delta.y = 2; return SDimension (delta.x, delta.y); } /** * This is in fact the minimum size. */ SLocation SLayout::getLocation () const { SLocation min = lc; return SLocation (min.minmerge(rc)); } /** * Suppose in is the parent layout. we are resized. * @return the new location of this child component. */ SLocation SLayout::getLocation (const SLayout& parent, const SDimension& d) const { SLocation l(d.width, d.height); SLocation delta = l - (parent.rc-parent.lc); //fprintf (stderr, "dim=%u,%u delta=%d,%d parent=%d,%d\n", // d.width, d.height, // delta.x, delta.y, parent.rc.x, parent.rc.y); SLocation lnew (lc.x + (delta.x * dlc.x) / 100, lc.y + (delta.y * dlc.y) / 100); /* NEW if (lnew.x < lc.x) lnew.x = lc.x; if (lnew.y < lc.y) lnew.y = lc.y; */ return SLocation (lnew); } void SLayout::print() { fprintf (stderr, "Layout lc=%d %d / %d%% %d%%\n", lc.x, lc.y, dlc.x, dlc.y); fprintf (stderr, "Layout rc=%d %d / %d%% %d%%\n", rc.x, rc.y, drc.x, drc.y); } /** * Suppose in is the parent layout. we are resized. * @return the new dimension of this child component. */ SDimension SLayout::getDimension (const SLayout& parent, const SDimension& d) const { SLocation l(d.width, d.height); SLocation delta = l - (parent.rc - parent.lc); SLocation lnew (rc.x + (delta.x * drc.x) / 100, rc.y + (delta.y * drc.y) / 100); /* NEW if (lnew.x <= rc.x) lnew.x = rc.x +1; if (lnew.y <= rc.y) lnew.y = rc.y +1; */ SLocation left = getLocation (parent, d); if (lnew.x <= left.x) lnew.x = left.x+1; if (lnew.y <= left.y) lnew.y = left.y+1; return SDimension (lnew.x - left.x, lnew.y - left.y); } bool SLayout::operator == (const SLayout l) const { return (lc == l.lc && rc == l.rc && dlc == l.dlc && drc == l.drc); } bool SLayout::operator != (const SLayout l) const { return (lc != l.lc || rc != l.rc || dlc != l.dlc || drc != l.drc); } /** * Accept the layout. This layout has to change. * becomes this size. * We should not call this with an empty layout. * @param old is the layout this layout was attached to. * @param nl is the layout this layout will be attached to. */ void SLayout::setLayout (const SLayout& old, const SLayout& nl) { if (old.isEmpty() || nl.isEmpty()) return; SDimension d = getDimension (old, nl.getDimension()); SLocation l = getLocation (old, nl.getDimension()); lc = l; rc = l + SLocation (d); } ./swidget/SYuditInput.cpp0000644000175000017500000001723311056425307015461 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNES 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SYuditInput.h" /** * SYuditInput is receiving events from STextEdit * It insert glyphs underlined into editorID and * when composition finished it sends it to the editor, after that * it may put half finished compsitions in the buffer. * @param name is the input name. * @param _eif is the editor interface to modify text. * @param ed is the editor. */ SYuditInput::SYuditInput (const SString& name, SEditorIF* _eif, SEditor* ed): encoder (name) { eif = _eif; editor = ed; startDirection = SS_DR_L; } /** * Delete SYuditInput. * for normal operaztion use clear before deleting. */ SYuditInput::~SYuditInput () { } /** * If SYuditInput is present and working, STextEdit sends the * events here first for processing. */ void SYuditInput::keyPressed (SWindowListener::SKey key, const SString& _s, bool ctrl, bool shift, bool meta) { SString s = _s; if (!eif->isEditable()) { clear(); editor->keyPressed (key, s, ctrl, shift, meta); } switch (key) { case SWindowListener::Key_BackSpace: case SWindowListener::Key_Delete: if (startIndex.getTextIndex()!=endIndex.getTextIndex()) { SString pre = encoder.preEditBuffer(); SV_UCS4 pb = encoder.postEditBuffer(); almostClear(); (void) encoder.decode ("", false); /* clear */ SString post = encoder.encode (pb); SString a = encoder.encode (SV_UCS4()); if (a.size()) post.append (a); if (pre.size()) post.append (pre); if (post.size() > 0) post.truncate(post.size()-1); s = post; } else { editor->keyPressed (key, s, ctrl, shift, meta); return; } break; /* Do not clear - we might need to press shift! */ case SWindowListener::Key_Shift_R: case SWindowListener::Key_Shift_L: if (startIndex.getTextIndex()==endIndex.getTextIndex()) { editor->keyPressed (key, s, ctrl, shift, meta); } break; case SWindowListener::Key_Control_R: case SWindowListener::Key_Control_L: case SWindowListener::Key_Meta_R: case SWindowListener::Key_Meta_L: case SWindowListener::Key_Alt_R: case SWindowListener::Key_Alt_L: case SWindowListener::Key_Escape: case SWindowListener::Key_Home: case SWindowListener::Key_End: case SWindowListener::Key_Prior: case SWindowListener::Key_Next: case SWindowListener::Key_Up: case SWindowListener::Key_Down: case SWindowListener::Key_Left: case SWindowListener::Key_Right: case SWindowListener::Key_Enter: case SWindowListener::Key_Return: case SWindowListener::Key_F1: case SWindowListener::Key_F2: case SWindowListener::Key_F3: case SWindowListener::Key_F4: case SWindowListener::Key_F5: case SWindowListener::Key_F6: case SWindowListener::Key_F7: case SWindowListener::Key_F8: case SWindowListener::Key_F9: case SWindowListener::Key_F10: case SWindowListener::Key_F11: case SWindowListener::Key_F12: if (startIndex.getTextIndex()!=endIndex.getTextIndex()) { clear(); } editor->keyPressed (key, s, ctrl, shift, meta); return; default: if (s.size()==0 && !(ctrl || meta)) return; if (ctrl || meta) { if (startIndex.getTextIndex()!=endIndex.getTextIndex()) clear(); editor->keyPressed (key, s, ctrl, shift, meta); return; } } if (s.size()==0) return; SString remaining = s; SV_UCS4 pbefore = encoder.postEditBuffer(); SV_UCS4 u = encoder.decode (s); SV_UCS4 pafter = encoder.postEditBuffer(); SV_UCS4 pedit; /* we just append ? */ if (u.size() > 0 || pafter.size() != pbefore.size()) { remaining = encoder.preEditBuffer(); pedit = pafter; almostClear (); SEncoder utf8; editor->keyPressed (SWindowListener::Key_Send, utf8.encode(u), false, false, false); } /* process glyphs here */ if (startIndex.getTextIndex()==endIndex.getTextIndex()) { startIndex = eif->getCursorIndex(); startDirection = eif->getDirection(); endIndex = startIndex; } if (pedit.size()) { SEncoder utf8; eif->insertPreEditText (utf8.encode (pedit)); endIndex = eif->getCursorIndex(); } if (remaining.size()) { eif->insertPreEditText (remaining); endIndex = eif->getCursorIndex(); } preEditSize = remaining.size() + pedit.size(); } /** * clear the input text. * @param tosend is true if the remaining characters should * be sent out. * @return true if it had a text. */ bool SYuditInput::clear(bool tosend) { SString toSend; if (preEditSize) { /* flush */ SV_UCS4 u = encoder.decode ("", false); if (u.size() > 0) { SEncoder utf8; toSend = utf8.encode(u); } } /* make it pre-emptive */ encoder = SEncoder(encoder.getName()); almostClear(); if (toSend.size()) { if (tosend) { editor->keyPressed (SWindowListener::Key_Send, toSend, false, false, false); } return true; } return false; } /** * clear it. */ void SYuditInput::almostClear() { if (startIndex.getTextIndex() == endIndex.getTextIndex()) { startIndex = SCursorIndex (0, 0); endIndex = startIndex; preEditSize = 0; return; } /* Make it pre-emptive */ SCursorIndex s = startIndex; SCursorIndex e = endIndex; startIndex = SCursorIndex (0, 0); endIndex = startIndex; preEditSize = 0; eif->endSelect (); eif->setCursorIndex (s); eif->eraseText (e.getTextIndex()); //fprintf (stderr, "setCursor\n"); eif->setCursorIndex (s); //fprintf (stderr, "setDirection\n"); eif->setDirection (startDirection); return; } /** * return true if input method works fine. */ bool SYuditInput::isOK() { return encoder.isOK(); } /** * Try to reverse encode the input with the current keymap */ SString SYuditInput::encode (const SV_UCS4& v) const { SString ret; if (v.size()==0) return SString(ret); SEncoder e = encoder; ret = e.encode (v); /* flush */ SV_UCS4 empty; ret.append (e.encode (empty)); /* check it against input */ SV_UCS4 check = e.decode (ret, true); SString es; check.append (e.decode (es, false)); bool tryagain = false; if (v.size() != check.size()) { tryagain = true; } else for (unsigned int i=0; i v.size() && check.size() > 1 && check[check.size()-1] == (SS_UCS4)' ') { check.truncate (check.size()-1); } if (v.size() != check.size()) { ret.clear(); } else for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SComponent.h" SWindowInterface::SWindowInterface(void) { } SWindowInterface::~SWindowInterface() { } SWindow* SWindowInterface::getComponentWindow () { return 0; } /** * This is the interface for the slidable objects. * these object can be object that have a viewport or * the slider itself. */ SSlidable::SSlidable(void) { } SSlidable::SSlidable(const SSlidable & s) { value = s.value; step = s.step; page = s.page; max = s.max; } SSlidable::~SSlidable() { } SSlidable SSlidable::operator=(const SSlidable & s) { value = s.value; step = s.step; page = s.page; max = s.max; return *this; } bool SSlidable::operator == (const SSlidable & s) const { return (value == s.value && step == s.step && page == s.page && max == s.max); } /** * this is lsitening to changes in the slider. */ SSliderListener::SSliderListener () { } /** * this is lsitening to changes in the slider. */ SSliderListener::~SSliderListener () { } SComponent::SComponent (void) : location (0,0), size (0,0), preferredSize(10,10), background (1.0,1.0,1.0,1.0) { windowInterface = 0; } SComponent::~SComponent () { } /** * Set the window interface of the window. * The component does not have its own window. If it wants to * redraw itself, is should use this interface to draw. * Please note that components should redraw themselfves on a canvas. * With this interface they can draw themselves on a window. */ SWindowInterface* SComponent::setWindowInterface(SWindowInterface* wi) { SWindowInterface *i = windowInterface; windowInterface = wi; return i; } /** * Return the underlying window using this interface */ SWindow* SComponent::getWindow() { if (windowInterface == 0) { return 0; } return windowInterface->getComponentWindow(); } const SLocation& SComponent::getLocation () { return location; } const SDimension& SComponent::getSize () { return size; } const SDimension& SComponent::getPreferredSize () { return preferredSize; } void SComponent::redraw (SCanvas* canvas, int x, int y, unsigned int width, unsigned int height) { } void SComponent::setBackground (const SColor& bg) { this->background = bg; } /** * This is just a palceholder. We not necessarily have * foreground. */ void SComponent::setForeground (const SColor& fg) { } /** * Resize the component * @param d is the new size */ void SComponent::resize(const SDimension& d) { size = d; } /** * Move the component * @param l is the new location */ void SComponent::move(const SLocation& l) { location = l; } /** * SWindowListener */ void SComponent::keyPressed (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta) { } void SComponent::keyReleased (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta) { } void SComponent::buttonPressed (int button, const SLocation& location) { } void SComponent::buttonReleased (int button, const SLocation& location) { } void SComponent::buttonDragged (int button, const SLocation& location) { } /** * If component has slidable, this should return true. * @param l is the listener that will get notified about slider changes. */ SSlidable* SComponent::setSliderListener (SSliderListener* l) { return 0; } void SComponent::valueChanged (SSlidable* slidable, SSlideType type) { } ./swidget/STextEdit.h0000644000175000017500000001747510730352473014553 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextEdit_h #define STextEdit_h #include "swidget/SYuditInput.h" #include "swidget/SEditor.h" #include "swidget/STextEditLS.h" #include "swidget/SEditorIF.h" #include "swidget/SPanel.h" #include "swidget/STextView.h" #include "swidget/SBorder.h" #include "swidget/SCaret.h" #include "stoolkit/SString.h" #include "stoolkit/SProperties.h" #include "stoolkit/SEvent.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SCursorIndex.h" class SDClick : public SEventTarget { public: SDClick(void); ~SDClick(); void start (unsigned int millisec); unsigned int clickCount; protected: STimer* timer; bool timeout (const SEventSource* s); }; class STextEdit : public SPanel, public SEditorIF { public: STextEdit (void); STextEdit (const SString& utf8); virtual ~STextEdit (); // This should be the first thing you do void setDoubleBuffer (bool yes); void setFocus(); bool isFocused () const; const SDimension& getPreferredSize(); void addTextEditLS (STextEditLS* ls); void removeTextEditLS (STextEditLS* ls); void setEditor (const SEditor& editor); void setXIMProperties (const SProperties& props); void addSyntaxListener (SSyntaxListener* _listener) { textView.addSyntaxListener (_listener); } // only SSyntax. SString getSyntaxName () const { return SString (textView.getSyntaxName ()); } // internal included SString getHighlightName () const { return SString (textView.getHighlightName ()); } virtual void setBackground (const SColor& bg); virtual void setTextBackground (const SColor& bg); void setForeground (const SColor& lrfg, const SColor& rlfg); void setCaretForeground (const SColor& lrfg, const SColor& rlfg); virtual void lostKeyboardFocus (SWindow* w); virtual void lostClipSelection (SWindow* w); virtual void gainedKeyboardFocus (SWindow* w); virtual void redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height); virtual void keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void buttonPressed (SWindow * w, int button, int x, int y); virtual void buttonReleased (SWindow * w, int button, int x, int y); virtual void buttonDragged (SWindow * w, int button, int x, int y); virtual void resize (const SDimension& size); void resizeTextView (bool scrool); virtual void move (const SLocation& loc); void setAlignment (bool align); void setMultiline (bool multiline); bool isMultiline () const; void setLineEndMark (bool lineend); bool getLineEndMark () const; void scrollVertical (int value, bool notofy); void scrollHorizontal (int value, bool notofy); virtual void setFont (const SString& font, double fontSize); virtual void setFontSize (double size); virtual void setFont (const SString& font); virtual void setInputMethod (const SString& im); virtual void insertClipboardText (); virtual void insertText (const SString& str, bool embed=true); virtual void insertDirtyText (const SString& str, bool embed=true); virtual void insertPreEditText (const SString& utf8t); virtual SString eraseText (const STextIndex& till); virtual void pageUp (); virtual void pageDown (); virtual const SCursorIndex& getCursorIndex () const; virtual void setCursorIndex (const SCursorIndex& index); virtual void caretUp (); virtual void caretDown (); virtual void caretLeft (); virtual void caretRight (); virtual void startSelect (); virtual void endSelect (); virtual void selectText (const SCursorIndex& till); virtual void selectWord (); virtual void selectLine (); virtual void deselectText (); virtual SString eraseSelectedText (); virtual STextIndex getSelectedIndex (bool hi); virtual STextIndex getIndexAfterLineBreak (); virtual SString backspace (); virtual SString erase (); virtual bool addComposing(SS_UCS4 c); virtual SS_UCS4 removeComposing(); virtual void setDirection (SS_DR_Dir dir); virtual SS_DR_Dir getDirection () const; virtual bool changeDirection (SS_DR_Dir dir); virtual void focusOut (); virtual void setEditable (bool editable); virtual bool isEditable () const; virtual bool isSelecting() const; virtual SString getText (const STextIndex& from, const STextIndex& till); virtual void clear(); virtual bool clearState(); virtual void setDocumentEmbedding (SS_Embedding e); virtual SS_Embedding getDocumentEmbedding () const; void setUnderlineColor (const SColor& c); void setText (const SString& text); SString getText (); bool undo(); bool redo(); void setParagraphSeparator (const SString& lineBreak, bool change); void setSyntax (const SString& hlMode); const SString& getSyntax () const; void setSyntaxColors (const SSyntaxColors& attr); const SSyntaxColors& getSyntaxColors () const; void setWordWrap (bool lbm); bool getWordWrap () const; const SStringVector& getHistory(); void putHistory (const SString& str); void setHistorySize (unsigned int siz); void historyUp (); void historyDown (); void historyEnd (); bool find(const SString& str); bool replace(const SString& orig, const SString& str); const SGlyph* glyphAt(const STextIndex & ti) const; STextIndex getCaretArrowFrom (); /* new text through editor */ void insertEditorText (const SString& text); bool isEmbedStateLR() const; /* encode with current keymap */ SString encode (const SV_UCS4& g) const; SString getSelectedText (); protected: unsigned int historySize; unsigned int currentHistorySize; SStringVector history; SProperties ximProperties; SDClick clicks; bool focused; bool editable; bool selecting; STextIndex startSelection; STextIndex endSelection; void clipSelection (); void setCaretLocationVisible (); void setCaretVisibleVertical(); void setCaretVisibleHorizontal(); void centerCaretVertical(); void updateCaretLocation(bool setvisible=true); void updateCaretPosition(bool updateColumn=true); SCaret caret; SBorder border; STextView textView; /* This is from SSliderListener */ virtual void valueChanged (SSlidable* slidable, SSlideType type); /* This is from component */ virtual SSlidable* setSliderListener (SSliderListener* l); STimer* eventMergeTimer; private: SString cleanEmbed(const SString str) const; SString imWaiting; SString inputMethod; SSlidable slidable; SSliderListener* sliderListener; SYuditInput* yuditInput; void notifySlider (); void fireTextChanged (); void fireCaretMoved (); void redraw (); SBinVector listeners; SEditor editor; SProperties getProperties (); void internalMoveCaret (const SCursorIndex& realIndex); void clip (bool on); unsigned int column; /* this is to align up-down movements of cursor. */ bool resized; unsigned int statusHeight; /* status area for 'over-the-spot-off' */ }; #endif /* STextEdit_h */ ./swidget/STextTable.h0000644000175000017500000000410310434025606014671 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextTable_h #define STextTable_h #include "swidget/STextList.h" #include "swidget/SSlider.h" #include "swidget/SBorder.h" #include "swidget/SLabel.h" #include "stoolkit/STypes.h" class STextTable : public SPanel, public SListListener { public: STextTable (const SStringVector& titles); virtual ~STextTable (); void setText (const SStringTable& t); bool selectText (const SString& s, unsigned int column=0); bool selectItem (int item); void setListListener (SListListener* l); virtual void setBackground (const SColor& bg); virtual void setLabelForeground (const SColor& fg); virtual void setSliderBackground (const SColor& bg); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); /* neede because of border */ virtual void resize(const SDimension& d); int getLastSelected (); protected: SStringTable table; SListListener* listener; int lastSelected; void itemHighlighted (void* source, int item); virtual void itemSelected (void* source, const SAccelerator* acc); virtual void redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height); SBinVector textLists; SBinVector topLabels; void recalc(); SSlider* slider; SBorder border; }; #endif /* STextTable_h */ ./swidget/SFrame.h0000644000175000017500000000263710434025606014041 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFrame_h #define SFrame_h #include "swidget/SPanel.h" #include "swindow/SImage.h" class SFrameListener { public: SFrameListener(void) {}; virtual ~SFrameListener() {}; virtual bool close (SPanel* frame) { return true; }; }; class SFrame : public SPanel { public: SFrame (void); ~SFrame (); SFrameListener* setFrameListener (SFrameListener *l); SFrameListener* removeFrameListener (); virtual void redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height); virtual bool windowClose (SWindow* w); virtual void setApplicationImage (const SImage& image); protected: SFrameListener* frameListener; }; #endif /* SFrame_h */ ./swidget/SDrawing.cpp0000644000175000017500000001470210724277420014736 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SDrawing.h" #define SS_LEFT_MARGIN 2 #define SS_MAX_SEGMENTS 100 #define SS_MAX_LINES 100 SDrawingListener::SDrawingListener(void) { } SDrawingListener::~SDrawingListener() { } /** * A drawing component that lets you make a small * drawing with the mouse. */ SDrawing::SDrawing (void) : fg (SColor (0.0, 0.0, 0.0, 1.0)), lfg (SColor (0.0, 0.0, 1.0, 1.0)) { listener = 0; preferredSize = SDimension (20,20); SDimension d = border.getBorderSize(); preferredSize.width += d.width * 2; preferredSize.height += d.height * 2; clip (true); } /** * Deletes this drawing. Nothing to do. */ SDrawing::~SDrawing () { } /** * There can be only one drawing listener. */ void SDrawing::setDrawingListener (SDrawingListener* _listener) { listener = _listener; } /** * @return the drawing drawn. */ const SLineCurves& SDrawing::getDrawing() { return allLines; } /** * Set the overall background. This will effectively be the border's * background. * @param bg is the backgroud. */ void SDrawing::setBackground (const SColor& bg) { border.setBackground (bg); } /** * Set the background of the drawing itself. * @param bg is the backgroud. */ void SDrawing::setTextBackground (const SColor& bg) { SPanel::setBackground (bg); } /** * Set the foreground of the drawing itself. * @param fg is the foreground * @param fgrecent is the foreground of the last line, being drawn */ void SDrawing::setForeground (const SColor& _fg, const SColor& fgrecent) { fg = _fg; lfg = fgrecent; } /** * Redraw the Component on a canvas * @param canvas is where we redraw this. */ void SDrawing::redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height) { clip (false); border.redraw (canvas, x, y, width, height); clip (true); for (unsigned int i=0; ibitline (fore, p0.x, p0.y, p1.x, p1.y); } } /** * redraw the whole drawing. * @param fore is the foreground color. * @param lines are the lines. */ void SDrawing::redraw (SWindow* canvas, const SColor& fore, const SLineCurve& lines) { if (window->isDoubleBufferEnabled ()) { window->redraw (true, 0 , 0, canvas->getWidth(), canvas->getHeight()); } else { redrawInternal (canvas, fore, lines); } } /** * Turn clipping at the border on and off. * @param on is true if we turn on clipping. */ void SDrawing::clip (bool on) { if (!on) { window->removeClippingArea (); return; } window->setClippingArea ( (int) border.getBorderSize().width , (int) border.getBorderSize().height, size.width - 2 * border.getBorderSize().width, size.height - 2 * border.getBorderSize().height); } /** * Pass this to the editor. Start a timer to measure * the double click. Get the focus. */ void SDrawing::buttonPressed (SWindow * w, int button, int x, int y) { if (lastLines.size()==0 && (button == 2 || button == 1)) { if (listener != 0) listener->clicked (this, button); return; } if (button != 0) return; lastLines.clear(); lastLines.append (SLocation (x,y)); } /** * A button was released. */ void SDrawing::buttonReleased (SWindow * w, int button, int x, int y) { if (button != 0) return; /* redraw with different color */ if (lastLines.size() > 1) { redraw (w, fg, lastLines); allLines.append (lastLines); if (allLines.size() > SS_MAX_LINES) clear(); if (listener) listener->strokeChanged(this, allLines.size()); } lastLines.clear(); } void SDrawing::buttonDragged (SWindow * w, int button, int x, int y) { if (button != 0) return; lastLines.append (SLocation (x,y)); redraw (w, lfg, lastLines); } /** * Resize the component * @param d is the new size */ void SDrawing::resize(const SDimension& d) { if (getSize() == d) return; SPanel::resize (d); border.resize (d); SDimension td; if (size.width + 2 * SS_LEFT_MARGIN> border.getBorderSize().width * 2) { td.width = size.width - border.getBorderSize().width * 2 - 2 * SS_LEFT_MARGIN; } if (size.height > border.getBorderSize().height * 2) { td.height = size.height - border.getBorderSize().height * 2; } clip (true); SComponent::resize (d); } /** * Move the component * @param l is the new location */ void SDrawing::move(const SLocation& l) { SPanel::move (l); } /** * getPreferredSize. * This is calculated form the preferred size of the textView and * adding the border size to it. */ const SDimension& SDrawing::getPreferredSize() { return preferredSize; } /** * Schedule a redraw of the whole drawing. * @param isclear is true if window should be cleared before redraw. */ void SDrawing::redraw (bool isclear) { int eheight = (int)size.height - (int)2 * border.getBorderSize().height; if (eheight <= 0) return; int ewidth = (int)size.width - (int)2 * border.getBorderSize().width + 2 * SS_LEFT_MARGIN; window->redraw (isclear, (int) border.getBorderSize().width , (int) border.getBorderSize().height, ewidth + 2 * SS_LEFT_MARGIN, eheight); } /** * Clear the drawing */ void SDrawing::clear() { allLines.clear(); lastLines.clear(); if (listener) listener->strokeChanged(this, allLines.size()); redraw (true); } void SDrawing::undo () { if (allLines.size()) allLines.truncate (allLines.size()-1); if (listener) listener->strokeChanged(this, allLines.size()); redraw (true); } ./swidget/SLabel.cpp0000644000175000017500000000742410434025610014353 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SLabel.h" SLabel::SLabel (const SString& string) : label (string), border (SBorder::SOLID) { recalcSize(); } SLabel::SLabel (const SString& string, SIcon* icon) : label (string, icon), border (SBorder::SOLID) { recalcSize(); } SLabel::~SLabel () { } void SLabel::redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height) { label.redraw (w, x, y, width, height); border.redraw (w, x, y, width, height); } void SLabel::resize (const SDimension& _size) { SPanel::resize (_size); border.resize (_size); SDimension ds = getSize() - (border.getBorderSize() * 2); SLocation dl = SLocation ( border.getBorderSize().width, border.getBorderSize().height); label.move (dl); //fprintf (stderr, "labelsize=%u %u\n", _size.width, size.height); label.resize (ds); } /** * FIXME: we don't need this method */ void SLabel::resized (SWindow* w, int x, int y, unsigned int width, unsigned int height) { SPanel::resized (w, x, y, width, height); //SDimension d(width, height); //border.resize (d); //label.resize (d - border.getBorderSize() * 2); } void SLabel::recalcSize() { SDimension db = border.getBorderSize(); SDimension dl = label.getPreferredSize(); preferredSize = (db *2 ) + dl; //preferredSize.height += 2; //fprintf (stderr, "%u,%u\n", preferredSize.width, preferredSize.height); //label.move (SLocation (db.width, db.height)); } void SLabel::move (const SLocation& loc) { SPanel::move (loc); } void SLabel::setFont (const SString& font, double fontSize) { label.setFont (font, fontSize); recalcSize(); window->redraw (true, 0, 0, getSize().width, getSize().height); } void SLabel::setFontSize (double fontSize) { label.setFontSize (fontSize); recalcSize(); window->redraw (true, 0, 0, getSize().width, getSize().height); } void SLabel::setForeground (const SColor& fg) { label.setForeground (fg); } void SLabel::setForeground (const SColor& lrfg, const SColor& rlfg) { label.setForeground (lrfg, rlfg); window->redraw (true, 0, 0, getSize().width, getSize().height); } void SLabel::setBackground (const SColor& bg) { SPanel::setBackground (bg); label.setBackground (bg); border.setBackground (bg); window->redraw (true, 0, 0, getSize().width, getSize().height); } void SLabel::setLabelBackground (const SColor& bg) { SPanel::setBackground (bg); label.setBackground (bg); window->redraw (true, 0, 0, getSize().width, getSize().height); } const SColor& SLabel::getBackground () { return label.getBackground (); } const SColor& SLabel::getForeground (bool lr) { return label.getForeground (lr); } void SLabel::setText (const SString& text) { label.setText (text); recalcSize(); window->redraw (true, 0, 0, getSize().width, getSize().height); } void SLabel::setIcon (SIcon* icon) { label.setIcon (icon); recalcSize(); window->redraw (true, 0, 0, getSize().width, getSize().height); } void SLabel::setAlignment (SAlignment _alignment) { label.setAlignment (_alignment); window->redraw (true, 0, 0, getSize().width, getSize().height); } ./swidget/SFreeHand.h0000644000175000017500000000577710434025606014473 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFreeHand_h #define SFreeHand_h #include "swidget/SDrawing.h" #include "swidget/SButton.h" #include "swidget/SLabel.h" #include "swidget/SListBox.h" #include "stoolkit/SString.h" #include "stoolkit/SHWConverter.h" class SFreeHandListener { public: SFreeHandListener(void); virtual ~SFreeHandListener(); virtual void freeHandTextChanged (void* source, const SString& lookup)=0; }; class SFreeHand : public SPanel, public SListListener, public SButtonListener, public SDrawingListener { public: SFreeHand (void); virtual ~SFreeHand (); void setFreeHandListener (SFreeHandListener* listener); virtual void setFont (const SString& font, double fontSize); virtual void setFontSize (double fontSize); virtual void setButtonFont (const SString& font, double fontSize); virtual void setBackground (const SColor& bg); virtual void setDrawingBackground (const SColor& bg); virtual void setSliderBackground (const SColor& bg); void setForeground (const SColor& fg); void setLabelForeground (const SColor& fg); void setDrawingForeground (const SColor& fg, const SColor& fgrecent); virtual void redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height); virtual void buttonPressed (void* source, const SAccelerator* acc); virtual void itemSelected (void* source, const SAccelerator* acc); virtual void resize (const SDimension& _size); virtual void clicked (void* source, int button); virtual void strokeChanged(void* src, unsigned int newsize); const SString& getLookupText(); void setConverter (const SString& name); const SString& getConverter () const; bool isOK () const; protected: void convertOne(); void initConverters(); bool needConversion; SHWConverter converter; void recalc (); SString lookupText; SStringVector allConverters; SFreeHandListener *listener; bool isDirected; SButton* lookupButton; SButton* clearButton; SButton* directedButton; SLabel* strokesLabel; SLabel* strokesCount; SLabel* titleLabel; SListBox* candidates; SListBox* converters; SDrawing* drawing; }; #endif /* SFreeHand_h */ ./swidget/STextList.cpp0000644000175000017500000002724011333146325015120 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/STextList.h" STextList::STextList (void) : label (""), selectedLabel ("") { listListener = 0; lastSelected = -1; sliderListener = 0; viewableSize=SDimension (1,1); lastSelected = -1; setSelectedBackground (SColor("blue")); setSelectedForeground (SColor("white")); setTextBackground (SColor("white")); } STextList::~STextList () { } void STextList::setText (const SStringVector& v) { lastSelected = -1; vector = v; selectedVector.clear(); for (unsigned int i=0; iredraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, viewableSize.width, viewableSize.height); } /** * recalculate slider. */ void STextList::recalc(int current) { slidable.value.y = current; slidable.step.height = label.textView.lineHeight; slidable.page.height = viewableSize.height/2+1; slidable.max.height = vector.size() * label.textView.lineHeight; slidable.max.height = (slidable.max.height > viewableSize.height) ? slidable.max.height - viewableSize.height: 0; if ((int)slidable.max.height < slidable.value.y) { slidable.value.y = (int)slidable.max.height; window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, viewableSize.width, viewableSize.height); } if (sliderListener) { sliderListener->valueChanged (&slidable, SSliderListener::SS_VERTICAL); } } void STextList::clear () { } void STextList::makeSelectedVisible() { if (lastSelected == -1) return; int loc = locationForIndex ((unsigned int) lastSelected); SSlidable s; bool changed = false; if (loc < (int) border.getBorderSize().height) { s.value.y = slidable.value.y - ((int) border.getBorderSize().height - loc); changed = true; } else if (loc + (int) label.textView.lineHeight > (int) border.getBorderSize().height + (int)viewableSize.height) { s.value.y = slidable.value.y + loc + (int) label.textView.lineHeight - (int) border.getBorderSize().height - (int)viewableSize.height; changed = true; } if (changed) { valueChanged (&s, SSliderListener::SS_VERTICAL); sliderListener->valueChanged (&slidable, SSliderListener::SS_VERTICAL); } } void STextList::setBackground (const SColor& bg) { //SPanel::setBackground (bg); //label.setBackground (bg); } void STextList::setTextBackground (const SColor& bg) { SPanel::setBackground (bg); label.setBackground (bg); } void STextList::setSelectedBackground (const SColor& bg) { selectedLabel.setBackground (bg); } void STextList::setForeground (const SColor& fg) { label.setForeground (fg); } void STextList::setSelectedForeground (const SColor& fg) { selectedLabel.setForeground (fg); } void STextList::redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height) { clip (false); border.redraw (canvas, x, y, width, height); clip (true); if (vector.size()==0) return; unsigned int from = indexForLocation (y); unsigned int till = indexForLocation (y+(int)height + (int) label.textView.lineHeight); for (unsigned int i=from; i<=till; i++) { redraw (canvas, i, (int) border.getBorderSize().width, viewableSize.width); } } void STextList::keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { } void STextList::keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { } void STextList::buttonPressed (SWindow * w, int button, int x, int y) { selectLocation (y); if (listListener) { listListener->itemHighlighted(this, lastSelected); } } void STextList::buttonReleased (SWindow * w, int button, int x, int y) { if (lastSelected < 0) return; if (listListener) { listListener->itemSelected(this, 0); } } void STextList::buttonDragged (SWindow * w, int button, int x, int y) { selectLocation (y); if (listListener) { listListener->itemHighlighted(this, lastSelected); } } void STextList::resize (const SDimension& d) { SPanel::resize (d); border.resize (d); viewableSize = getSize(); if (viewableSize.width > 2 * border.getBorderSize().width) { viewableSize.width = viewableSize.width - 2 * border.getBorderSize().width; } if (viewableSize.height > 2 * border.getBorderSize().height) { viewableSize.height = viewableSize.height - 2 * border.getBorderSize().height; } selectedLabel.resize (SDimension (viewableSize.width, selectedLabel.textView.lineHeight)); label.resize (SDimension (viewableSize.width, selectedLabel.textView.lineHeight)); recalc (slidable.value.y); } void STextList::move (const SLocation& loc) { SPanel::move (loc); } SSlidable* STextList::setSliderListener (SSliderListener* l) { sliderListener = l; return &slidable; } /* This is from SSliderListener */ void STextList::valueChanged (SSlidable* _slidable, SSlideType type) { if (type==SSliderListener::SS_HORIZONTAL) return; if (slidable.value.y == _slidable->value.y) return; int diff = slidable.value.y - _slidable->value.y; unsigned int udiff = (diff<0) ? (unsigned int) (-diff) : (unsigned int) diff; slidable.value = _slidable->value; /* redraw the whole thing */ if (window->isDoubleBufferEnabled()) { window->redraw (true, 0, 0, window->getWidth(), window->getHeight()); } else if (udiff > viewableSize.height) { window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, viewableSize.width, viewableSize.height); } /* up */ else if (diff < 0) { window->copy ((int) border.getBorderSize().width, (int) udiff + (int) border.getBorderSize().height, (int) viewableSize.width, (int) viewableSize.height-(int) udiff, border.getBorderSize().width, border.getBorderSize().height); /* redraw down */ window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height + (int) viewableSize.height - (int) udiff, viewableSize.width, udiff); } else { /* copy down */ window->copy ((int) border.getBorderSize().width, (int) border.getBorderSize().height, (int) viewableSize.width, (int) viewableSize.height-(int) udiff, border.getBorderSize().width, border.getBorderSize().height + udiff); /* redraw up */ window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, viewableSize.width, udiff); } } void STextList::clip (bool on) { if (!on) { window->removeClippingArea (); return; } window->setClippingArea ( (int) border.getBorderSize().width , (int) border.getBorderSize().height, size.width - 2 * border.getBorderSize().width, size.height - 2 * border.getBorderSize().height); } /** * redraw one line */ void STextList::redraw (SCanvas* canvas, unsigned int index, int x, unsigned int w) { bool ison = selectedVector[index]; SLocation l((int) border.getBorderSize().width, locationForIndex (index)); if (ison) { canvas->bitfill (selectedLabel.getBackground(), l.x, l.y, getSize().width, selectedLabel.textView.lineHeight); selectedLabel.move(l); selectedLabel.setText(vector[index]); selectedLabel.redraw (canvas, l.x, l.y, getSize().width, selectedLabel.textView.lineHeight); } else { label.move(l); label.setText(vector[index]); //fprintf (stderr, "draw='%*.*s'\n", SSARGS(vector[index])); label.redraw (canvas, l.x, l.y, getSize().width, selectedLabel.textView.lineHeight); } } void STextList::selectLocation (int y) { if (vector.size()==0) return; int line = indexForLocation (y, false); selectItem (line); } /** * select an item. if item is -1 deselect all * @return true if anything got selected. */ bool STextList::selectItem (int line) { if (lastSelected == line) return line>=0; /* do real calculation here */ if (lastSelected >= 0) { selectedVector.replace ((unsigned int) lastSelected, false); window->redraw (true, (int) border.getBorderSize().width , locationForIndex ((unsigned int) lastSelected), viewableSize.width, label.textView.lineHeight); } lastSelected = line; if (lastSelected >= 0) { selectedVector.replace ((unsigned int) lastSelected, true); /* do real calculation here */ window->redraw (true, (int) border.getBorderSize().width , locationForIndex ((unsigned int) lastSelected), viewableSize.width, label.textView.lineHeight); makeSelectedVisible (); return true; } return false; } /** * Select first text if found. Unselect all otehrwise. */ bool STextList::selectText (const SString& text) { int si = -1; for (unsigned int i=0; i= (int) vector.size()) { line = correct ? (int) vector.size() -1 : -1; } return line; } /** * calculate the physical location for a given index */ int STextList::locationForIndex (unsigned int index) { int ret = (int)border.getBorderSize().height + (int) index * (int) label.textView.lineHeight - slidable.value.y; return ret; } /** * Chose between fonts. * @param fnt is the font to chose. * @param size is the size of the font or zero if old size is used. */ void STextList::setFont (const SString& fnt, double size) { label.setFont (fnt, size); selectedLabel.setFont (fnt, size); window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, viewableSize.width, viewableSize.height); recalc(slidable.value.y); } /** * Set the size of the font. */ void STextList::setFontSize (double size) { label.setFontSize (size); selectedLabel.setFontSize (size); window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, viewableSize.width, viewableSize.height); recalc(slidable.value.y); } void STextList::setListListener (SListListener* l) { listListener = l; } SListListener::SListListener(void) { } SListListener::~SListListener() { } void SListListener::itemHighlighted (void* source, int it) { } /** * return the last selected item or -1 */ int STextList::getLastSelected () { return lastSelected; } /** * return the last selected item or -1 */ SString STextList::getLastSelectedText () { if (lastSelected < 0) return SString(); return SString(vector[(unsigned int)lastSelected]); } ./swidget/SOpaqueLabel.cpp0000644000175000017500000001145210434025610015522 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SOpaqueLabel.h" #define SS_MGN 2 SOpaqueLabel::SOpaqueLabel (const SString& string) : textView (string) { alignment = SD_Left; textView.setMultiline (false); textView.setLineEndMark (false); textView.textData.fireEvent(); processLabelText(); icon = 0; recalcSize(); } SOpaqueLabel::SOpaqueLabel (const SString& string, SIcon* _icon) : textView (string) { alignment = SD_Left; textView.setMultiline (false); textView.setLineEndMark (true); textView.textData.fireEvent(); processLabelText(); icon = _icon; recalcSize(); } SOpaqueLabel::~SOpaqueLabel () { if (icon) delete icon; } void SOpaqueLabel::redraw(SCanvas* w, int x, int y, unsigned int width ,unsigned int height) { if (icon) icon->redraw (w, x, y, width, height); textView.redraw (w, x, y, width, height); } void SOpaqueLabel::resize (const SDimension& size) { SComponent::resize(size); recalcSize(); } void SOpaqueLabel::move (const SLocation& loc) { SComponent::move (loc); recalcSize (); } void SOpaqueLabel::recalcSize() { SDimension di; if (icon) { di = icon->getPreferredSize(); } SDimension dt = textView.getPreferredSize(); SString s = textView.textData.getText(); unsigned int mp = (s.size()==0) ? 2: 3; SDimension w = SDimension (di.width + dt.width + mp * SS_MGN , (di.height > dt.height) ? di.height : dt.height ); preferredSize = w; SDimension _size = getSize(); /* centering */ int dw = ((int)_size.width-(int)w.width - getLocation().x * 2); int dh = ((int)_size.height-(int)w.height - getLocation().y * 2); SLocation nl = getLocation (); if (alignment == SD_Center) { //fprintf (stderr,"center: dw=%d nl.x=%d size.width=%u w.width=%u new nl.x=%d\n", // dw, nl.x, _size.width, w.width, nl.x + dw/2); nl.x = nl.x + dw/2 + getLocation ().x; nl.y = nl.y + dh/2 + getLocation ().y; } else if (alignment == SD_Right) { nl.x = nl.x + dw; nl.y = nl.y + dh; } //SDimension dd ((dw<=0)?2:dw, (dh<=0)?2:dh); //SDimension nd (_size.width-dd/2); int h = w.height; if (icon) { icon->move (SLocation (nl.x + SS_MGN, nl.y + (h-(int)di.height)/2)); } textView.move (SLocation (nl.x + (int)di.width +2*SS_MGN, nl.y + (h-(int)dt.height))); if (icon) icon->resize (di); textView.resize (dt); } void SOpaqueLabel::setFontSize (double fontSize) { textView.setFontSize (fontSize); recalcSize(); } void SOpaqueLabel::setFont (const SString& font, double fontSize) { textView.setFont(font, fontSize); recalcSize(); } void SOpaqueLabel::setForeground (const SColor& fg) { textView.setForeground (fg, fg); } void SOpaqueLabel::setForeground (const SColor& lrfg, const SColor& rlfg) { textView.setForeground (lrfg, rlfg); } void SOpaqueLabel::setBackground (const SColor& bg) { textView.setBackground (bg); if (icon) icon->setBackground (bg); } const SDimension& SOpaqueLabel::getPreferredSize () { recalcSize(); return SComponent::getPreferredSize(); } const SColor& SOpaqueLabel::getBackground () { return textView.getBackground(); } const SColor& SOpaqueLabel::getForeground (bool lr) { return textView.getForeground(lr); } void SOpaqueLabel::setIcon (SIcon* _icon) { if (icon) delete icon; icon = _icon; recalcSize(); } void SOpaqueLabel::setText (const SString& text) { textView.setText (text); processLabelText(); recalcSize(); } void SOpaqueLabel::processLabelText() { /* underline __keys__ */ textView.textData.move(STextIndex(0,0)); STextIndex st = textView.textData.find ("__"); if (st == STextIndex(0,0)) return; textView.textData.move(st); STextIndex et = textView.textData.find ("__"); if (et == STextIndex(0,0)) { return; } textView.textData.underline (st); textView.textData.move(STextIndex(0,0)); st = textView.textData.find ("__"); textView.textData.remove (st); textView.textData.fireEvent (); st = textView.textData.find ("__"); textView.textData.remove (st); textView.textData.fireEvent (); } void SOpaqueLabel::setAlignment (SAlignment _alignment) { alignment = _alignment; recalcSize(); } ./swidget/SCaret.cpp0000644000175000017500000002037610434025610014373 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include /** * Create a caret. * A caret can have two directions : < or > */ SCaret::SCaret (void) : lrpen (SColor (0.0, 0.0, 0.0, 1.0)), rlpen (SColor (0.0, 0.0, 1.0, 1.0)) { direction = SS_DR_L; showCaret = true; skipBlink = false; state = true; lrpen.setBackground (SColor(1.0, 1.0, 1.0, 1.0)); rlpen.setBackground (SColor(1.0, 1.0, 1.0, 1.0)); timer = 0; } SCaret::~SCaret () { if (timer) delete timer; } /** * Set the direction of this cursor. * @param lr is true if we are an lr cursor. */ void SCaret::setDirection (SS_DR_Dir dir) { direction = dir; redraw (); } SS_DR_Dir SCaret::getDirection() const { return direction; } bool SCaret::isLR () const { bool lr = (direction == SS_DR_L || direction == SS_DR_LE || direction == SS_DR_LO); return lr; } /** * Set the background. * @param bg is the new background */ void SCaret::setBackground (const SColor& bg) { lrpen.setBackground (bg); rlpen.setBackground (bg); } /** * Set the foreground. * @param fg is the new foreground */ void SCaret::setForeground (const SColor& rlfg, const SColor& lrfg) { lrpen.setForeground (rlfg); rlpen.setForeground (lrfg); } /** * The caret usually takes two glyp positions. * The middle is the insertion point */ void SCaret::redraw (SCanvas* canvas) { if (isSaneSize()) { redraw (canvas, location.x, location.y, size.width, size.height); } } /** * The caret usually takes two glyp positions. * The middle is the insertion point * caret is draw in the middle. */ void SCaret::redraw (SCanvas* canvas, int x, int y, unsigned int width, unsigned int height) { if (!isOn()) return; if (state == false) return; if (!isSaneSize()) return; /* linewidth */ double lw = (double)getSize().width/12.0; double middleX = (double)getLocation().x; double middleY = (double)getLocation().y + (double)getSize().height/2.0; double dx = (double)getSize().width/3.0; double dy = (double)getSize().height/3.0; //double dist = (dx+0.5)/(dy+0.5); char a[64]; //bool lr = (direction == SS_DR_L // || direction == SS_DR_LE || direction == SS_DR_LO); /* This is the key for the drawing engine */ sprintf (a, "caret=%u %u %c;", getSize().width, getSize().height, (char)direction); switch (direction) { case SS_DR_L: if (!canvas->newpath (middleX, middleY - dy +1, a)) { canvas->moveto (middleX, middleY - dy +1); canvas->lineto (middleX + dx -1, middleY); canvas->lineto (middleX, middleY + dy -1); canvas->lineto (middleX, middleY + dy -1 - lw); canvas->lineto (middleX + dx -1 - lw, middleY); canvas->lineto (middleX, middleY - dy +1 + lw); canvas->closepath (); } canvas->fill (lrpen); #if 0 // Another attempt. canvas->bitline (lrpen.getForeground(), (int)middleX, (int)(middleY - dy +1), (int)middleX, (int)(middleY + dy -1)); canvas->bitline (lrpen.getForeground(), (int)middleX, (int)(middleY - dy +1), (int)(middleX + dx -1), (int)(middleY)); canvas->bitline (lrpen.getForeground(), (int)middleX, (int)(middleY + dy -1), (int)(middleX + dx -1), (int)(middleY)); #endif break; case SS_DR_R: if (!canvas->newpath (middleX, middleY - dy +1, a)) { canvas->moveto (middleX, middleY - dy +1); canvas->lineto (middleX - dx +1, middleY); canvas->lineto (middleX, middleY + dy -1); canvas->lineto (middleX, middleY + dy -1 - lw); canvas->lineto (middleX - dx +1 + lw, middleY); canvas->lineto (middleX, middleY - dy +1 + lw); canvas->closepath (); } canvas->fill (lrpen); /* canvas->bitline (lrpen.getForeground(), (int)middleX, (int)(middleY - dy +1), (int)middleX, (int)(middleY + dy -1)); */ break; case SS_DR_LE: if (!canvas->newpath (middleX, middleY - dy +1, a)) { canvas->moveto (middleX, middleY - dy +1); canvas->lineto (middleX + dx -1, middleY); canvas->lineto (middleX, middleY + dy -1); canvas->closepath (); canvas->moveto (middleX + lw/1.5, middleY - dy +1 + 1.5 * lw); canvas->lineto (middleX + lw/1.5, middleY + dy -1 - 1.5 * lw); canvas->lineto (middleX + dx -1 -lw, middleY); canvas->closepath (); } canvas->fill (lrpen); break; case SS_DR_RE: if (!canvas->newpath (middleX, middleY - dy +1, a)) { canvas->moveto (middleX, middleY - dy +1); canvas->lineto (middleX - dx +1, middleY); canvas->lineto (middleX, middleY + dy -1); canvas->closepath (); /* anti-clock */ canvas->moveto (middleX -lw/1.5, middleY - dy +1 + 1.5 *lw); canvas->lineto (middleX -lw/1.5 , middleY + dy -1 - 1.5 *lw); canvas->lineto (middleX - dx +1 +lw, middleY); canvas->closepath (); } canvas->fill (lrpen); break; case SS_DR_LO: if (!canvas->newpath (middleX, middleY - dy +1, a)) { canvas->moveto (middleX, middleY - dy +1); canvas->lineto (middleX + dx -1, middleY); canvas->lineto (middleX, middleY + dy -1); canvas->closepath (); } canvas->fill (lrpen); break; case SS_DR_RO: if (!canvas->newpath (middleX, middleY - dy +1, a)) { canvas->moveto (middleX, middleY - dy +1); canvas->lineto (middleX - dx +1, middleY); canvas->lineto (middleX, middleY + dy -1); canvas->closepath (); } canvas->fill (rlpen); break; } } /** * Show or hide the caret */ void SCaret::on (bool _on) { if (_on != showCaret) redraw (); showCaret = _on; if (state != _on) redraw (); state = _on; skipBlink = true; } /** * Request a redraw from parent if possible. * The redraw will happen async, later. */ void SCaret::redraw () { SWindow* w = getWindow(); if (w != 0) { /* to be in sync with STextView::textChanged() */ int starty = (location.y > 5) ? location.y - 5: 0; unsigned int lheight = size.height + 9; if (isSaneSize()) { w->redraw (true, location.x - (int) size.width/2, starty, size.width, lheight); } } } /** * Show if caret is shown */ bool SCaret::isOn () const { return showCaret; } /** * Show if it is animating. */ bool SCaret::isAnimating() const { return timer!=0; } /** * The timer event */ bool SCaret::timeout (const SEventSource* s) { if (timer == 0) { fprintf (stderr, "strange. timeout..\n"); return false; } if (!showCaret) { return true; } if (skipBlink) { skipBlink = false; return true; } state = !state; redraw (); return true; } /** * Resize the component * @param d is the new size */ void SCaret::resize(const SDimension& d) { redraw (); SComponent::resize (d); redraw (); } /** * Move the component * @param l is the new location */ void SCaret::move(const SLocation& l) { redraw (); SComponent::move (l); redraw (); } /** * Move the component * @param l is the new location */ void SCaret::move(const SCursorIndex& index) { cursorIndex = index; } /** * Do bliking animation of * @param _animate is true. * stop animation otherwise. */ void SCaret::animate (bool _animate) { if ((timer!=0)==_animate) return; if (timer) delete timer; timer = 0; if (_animate) { timer = STimer::newTimer(500, this); skipBlink = false; } state = showCaret; redraw (); } /** * return true if it has a possible size. */ bool SCaret::isSaneSize() { SLocation up = getLocation() + getSize(); /* out */ if (up.x < 0 || up.y < 0) return false; /* out */ if (up.x > 8000 || up.y > 8000) return false; return true; } ./swidget/SUniPrint.h0000644000175000017500000000313310434025606014547 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SUniPrint_h #define SUniPrint_h #include "stoolkit/SString.h" #include "swindow/SPrinter.h" #include "swidget/STextView.h" /** * This is a stoolkit printer. */ class SUniPrint { public: SUniPrint (const SPrinter& printer, const SString& headerFontName, double headerFontSize, const SString& bodyFontName, double bodyFontSize); ~SUniPrint(); bool print (const SString& header, const SString& buffer, bool evt=false); unsigned int getPageCount () const; void setDocumentEmbedding (SS_Embedding e); void setLineEndMark (bool brk); void setWordWrap (bool brk); bool hasNative (); private: unsigned int pageHeight; unsigned int pageCount; SPrinter printer; STextView body; STextView headerLeft; STextView headerCenter; STextView headerRight; bool printheader; }; #endif /* SUniPrint_h */ ./swidget/SComponent.h0000644000175000017500000000555510434025606014753 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SComponent_h #define SComponent_h #include "stoolkit/SLocation.h" #include "stoolkit/SDimension.h" #include #include #include class SWindowInterface { public: SWindowInterface(void); virtual ~SWindowInterface(); virtual SWindow* getComponentWindow (); }; class SSlidable { public: SSlidable(void); SSlidable(const SSlidable & s); ~SSlidable(); SSlidable operator=(const SSlidable & s); bool operator == (const SSlidable & s) const; SLocation value; SDimension step; SDimension page; SDimension max; }; class SSliderListener { public: enum SSlideType { SS_VERTICAL, SS_HORIZONTAL, SS_BOTH }; SSliderListener (); virtual ~SSliderListener (); virtual void valueChanged (SSlidable* slidable, SSlideType type) = 0; }; class SComponent : public SSliderListener { public: SComponent (void); virtual ~SComponent (); const SLocation& getLocation(); const SDimension& getSize(); const SDimension& getPreferredSize(); virtual SWindowInterface* setWindowInterface (SWindowInterface* wi); SWindow* getWindow(); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); virtual void setBackground (const SColor& bg); virtual void setForeground (const SColor& fg); virtual void redraw (SCanvas* canvas, int x, int y, unsigned int width, unsigned int height); virtual void keyPressed (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void keyReleased (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void buttonPressed (int button, const SLocation& location); virtual void buttonReleased (int button, const SLocation& location); virtual void buttonDragged (int button, const SLocation& location); virtual SSlidable* setSliderListener (SSliderListener* l); virtual void valueChanged (SSlidable* slidable, SSlideType type); protected: SWindowInterface* windowInterface; SLocation location; SDimension size; SDimension preferredSize; SColor background; }; #endif /* SComponent_h */ ./swidget/SDialog.cpp0000644000175000017500000001314710724155062014541 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SDialog.h" #include "swidget/SIconFactory.h" #include "stoolkit/SUtil.h" SDialog::SDialog (SPanel* panel) { forceLayout (SLayout (SDimension (2000,3000))); //This is a top level guy. no layout will be set! // But just in case.... setFrameListener (this); isCancel = true; type = SS_NONE; yesButton = new SButton(translate ("Yes")); yesButton->setIcon (SIconFactory::getIcon("Yes")); noButton = new SButton (translate ("No")); noButton->setIcon (SIconFactory::getIcon("Cancel")); yesButton->setButtonListener (this); noButton->setButtonListener (this); add (yesButton); add (noButton); add (dialogPanel = panel); recalc(); } SDialog::~SDialog () { } bool SDialog::getInput (SType messageType) { type = messageType; switch (type) { case SS_ERR: noButton->setText (translate ("No")); yesButton->setText (translate ("OK")); break; case SS_WARN: noButton->setText (translate ("No")); yesButton->setText (translate ("OK")); break; case SS_INFO: noButton->setText (translate ("No")); yesButton->setText (translate ("OK")); break; case SS_QUESTION: noButton->setText (translate ("No")); yesButton->setText (translate ("Yes")); break; case SS_OK_CANCEL: noButton->setText (translate ("Cancel")); yesButton->setText (translate ("OK")); break; default: break; } recalc(); isCancel = true; center (); show(); wait(); hide(); return !isCancel; } /** * recalculate geometry */ void SDialog::recalc () { SDimension dl = dialogPanel->getPreferredSize(); SDimension db = yesButton->getPreferredSize(); SDimension dn = noButton->getPreferredSize(); if (type == SS_QUESTION || type == SS_OK_CANCEL) { if (dn.width > db.width) db.width = dn.width; if (dn.width < db.width) dn.width = db.width; } //fprintf (stderr, "dl.width = %u dl.height = %u \n", dl.width, dl.height); //dl.width = dl.width + 20; //dl.height = dl.height + 20; if (db.width + dn.width < 20) { db.width = dn.width = 10; } if (db.width + 10 > dl.width) { dl.width = db.width + 10; } preferredSize = SDimension ( dl.width + 10, dl.height + db.height + 15); dialogPanel->setLayout ( SLayout ( SLocation (5,5), SLocation (dl.width+5, dl.height+5), SLocation (0,0), SLocation (100,100) ) ); if (type != SS_QUESTION && type != SS_OK_CANCEL) { noButton->setLayout( SLayout ( SLocation (-200, -200), SLocation (-100, -100) ) ); //noButton->hide(); yesButton->setLayout ( SLayout ( SLocation (5 + ((int)dl.width)/2 - (int)db.width/2-1, (int)dl.height + 10), SLocation (5 + ((int)dl.width)/2 + (int)db.width/2+1, (int)dl.height + 10 + (int) db.height), SLocation (50,100), SLocation (50,100) ) ); } else { //noButton->show(); yesButton->setLayout ( SLayout ( SLocation (5, (int)dl.height + 10), SLocation (5 + (int) db.width, (int)dl.height + 10 + (int) db.height), SLocation (50,100), SLocation (50,100) ) ); noButton->setLayout ( SLayout ( SLocation (5 + ((int)dl.width) - ((int)dn.width), (int)dl.height + 10), SLocation (5 + ((int)dl.width), (int)dl.height + 10 + (int) db.height), SLocation (50,100), SLocation (50,100) ) ); } /* pretend we have this layout */ SLayout goodLayout = layout; forceLayout (SLayout (preferredSize)); setLayout (goodLayout); //preferredSize = SDimension (preferredSize.width + 2, // preferredSize.height + 2); resize (preferredSize); setMinimumSize(preferredSize); } void SDialog::buttonPressed (void* source, const SAccelerator* acc) { isCancel = false; if (source == noButton) { isCancel =true; } if (source == yesButton) { isCancel =false; } hide (); } /** * from frameListener */ bool SDialog::close (SPanel* comp) { isCancel =true; hide(); return false; } void SDialog::setBackground (const SColor& bg) { SFrame::setBackground (bg); } void SDialog::setTitleForeground (const SColor& fg) { yesButton->setForeground (fg); noButton->setForeground (fg); } void SDialog::setFont (const SString& font, double fontSize) { yesButton->setFont (font, fontSize); noButton->setFont (font, fontSize); recalc(); } void SDialog::setFontSize (double fontSize) { yesButton->setFontSize (fontSize); noButton->setFontSize (fontSize); recalc(); } /** * Hide the dialog if this is not a question dialog. */ void SDialog::keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { if (type == SS_QUESTION || type == SS_OK_CANCEL) return; if (key == Key_Enter || key == Key_Return) { hide (); } } ./swidget/STextDialog.h0000644000175000017500000000253010434025606015043 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextDialog_h #define STextDialog_h #include "swidget/SDialog.h" #include "swidget/SLabel.h" class STextDialog : public SDialog { public: STextDialog (void); virtual ~STextDialog (); bool getInput (const SString& title, const SString& message, SType messageType); virtual void setBackground (const SColor& bg); virtual void setLabelBackground (const SColor& bg); virtual void setLabelForeground (const SColor& fg); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); protected: SLabel* label; }; #endif /* STextDialog_h */ ./swidget/SPanel.h0000644000175000017500000000720310723754054014047 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SPanel_h #define SPanel_h #include "swidget/SComponent.h" #include "swidget/SLayout.h" #include #include #include "stoolkit/SEvent.h" class SDropListener { public: SDropListener(void); virtual ~SDropListener(); virtual bool dropped (void* p, const SString& mimetype, const SString& data)=0; }; class SPanel : public SComponent, public SWindowInterface, public SEventTarget, public SWindowListener { public: SPanel (void); virtual ~SPanel (); static void setAllDoubleBuffered (bool yes); void setThisDoubleBuffered (bool yes); bool isShown(); virtual void show (); virtual void hide (); void add (SComponent* comp); void add (SPanel* comp); virtual SWindow* getComponentWindow (); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); virtual void setBackground (const SColor& bg); void setTitle (const SString& title); virtual void setDropListener (SDropListener*ls, const SStringVector& mimes); virtual void setModal (SPanel* parent=0, bool decorated=true); virtual void wait (); void setMinimumSize (const SDimension& minimumSize); void center (); /* * setLayout is purposefully not virtual. If your widget * is properly designed, you don't need to override this. */ void setLayout (const SLayout& layout); const SLayout& getLayout () const; protected: virtual void forceLayout (const SLayout& layout); SLayout layout; SPanel* modalParent; STimer* resizeTimer; virtual void redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height); virtual bool windowClose (SWindow* w); virtual void keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void buttonPressed (SWindow * w, int button, int x, int y); virtual void buttonReleased (SWindow * w, int button, int x, int y); virtual void buttonDragged (SWindow * w, int button, int x, int y); virtual void lostKeyboardFocus (SWindow* w); virtual void gainedKeyboardFocus (SWindow* w); virtual void lostClipSelection (SWindow* w); virtual void resized (SWindow* w, int x, int y, unsigned int width, unsigned int height); virtual void valueChanged (SSlidable* slidable, SSlideType type); virtual bool drop (SWindow* w, const SString& mimetype, const SString& data); SDropListener* dropListener; SWindow* window; SBinVector slidableComponents; SBinVector slidables; SBinVector children; SBinVector containers; void cleanup(); static SAwt* awt; static int count; void _resized (); /* for resized */ bool timeout (const SEventSource* s); bool isLayoutOK() const; bool hasParent; bool layoutOK; }; #endif /* SPanel_h */ ./swidget/SIconFactory.h0000644000175000017500000000206010434025606015215 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SIconFactory_h #define SIconFactory_h #include "swidget/SIcon.h" /** * A caret that redraws itself differently for lr and rl text */ class SIconFactory { public: SIconFactory (void); virtual ~SIconFactory (); static SIcon* getIcon (const SString& name); }; #endif /* SIconFactory_h */ ./swidget/STextDialog.cpp0000644000175000017500000000450210434025610015372 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/STextDialog.h" #include "swidget/SIconFactory.h" #include "stoolkit/SUtil.h" STextDialog::STextDialog (void) : SDialog (new SLabel("LA\nbel")) { label = (SLabel*) dialogPanel; label->setAlignment (SD_Center); } STextDialog::~STextDialog () { } /** * @return true if ok or yes was presses. */ bool STextDialog::getInput(const SString& titleString, const SString& message, SType messageType) { type = messageType; setTitle (titleString); switch (type) { case SS_ERR: label->setIcon (SIconFactory::getIcon("Error")); break; case SS_WARN: label->setIcon (SIconFactory::getIcon("Caution")); break; case SS_INFO: label->setIcon (SIconFactory::getIcon("Inform")); break; case SS_QUESTION: label->setIcon (SIconFactory::getIcon("Help")); break; default: label->setIcon (0); } label->setText (message); recalc(); bool input = SDialog::getInput (messageType); return input; } void STextDialog::setBackground (const SColor& bg) { SDialog::setBackground (bg); //label->setBackground (SColor("black")); //label->setLabelBackground (bg); label->setBackground (bg); } void STextDialog::setLabelBackground (const SColor& bg) { label->setLabelBackground (bg); } void STextDialog::setLabelForeground (const SColor& fg) { label->setForeground (fg); } void STextDialog::setFont (const SString& font, double fontSize) { label->setFont (font, fontSize); SDialog::setFont (font, fontSize); } void STextDialog::setFontSize (double fontSize) { label->setFontSize (fontSize); SDialog::setFontSize (fontSize); } ./swidget/SUndo.h0000644000175000017500000000357210434025606013713 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNES 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SUndo_h #define SUndo_h #include "stoolkit/SObject.h" #include "stoolkit/SVector.h" #include "stoolkit/SString.h" #include "stoolkit/SCursorIndex.h" #include "stoolkit/STextIndex.h" #include "stoolkit/SCharClass.h" class SUndo : public SObject { public: enum SType { SS_Insert, SS_Erase, SS_EraseSelect, SS_EraseOne, SS_BackSpaceOne, SS_ComposeOne }; SUndo (SType type, SS_DR_Dir dir, SS_Embedding embedding, const SString& str, const SCursorIndex& before, const SCursorIndex& after, const SCursorIndex& beforeAfter); SUndo (const SUndo& undo); virtual ~SUndo(); SUndo operator = (const SUndo& undo); SObject* clone () const; SType type; SS_DR_Dir direction; SS_Embedding embedding; SString string; SCursorIndex after; SCursorIndex beforeAfter; SCursorIndex before; }; typedef SVector SV_Undo; #endif /* SUndo_h */ ./swidget/SYuditInput.h0000644000175000017500000000340310434025606015115 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNES 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SYuditInput_h #define SYuditInput_h #include "swidget/SEditor.h" #include "swindow/SWindow.h" #include "stoolkit/SCursorIndex.h" #include "stoolkit/STextData.h" #include "stoolkit/SEncoder.h" class SYuditInput { public: SYuditInput (const SString& name, SEditorIF* eif, SEditor* editor); ~SYuditInput (); void keyPressed (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta); bool clear(bool tosend=true); SString encode (const SV_UCS4& v) const; bool isOK(); private: void almostClear(); unsigned int preEditSize; SEncoder encoder; SCursorIndex startIndex; SCursorIndex endIndex; SS_DR_Dir startDirection; SEditorIF *eif; SEditor *editor; }; #endif /* SYuditInput_h */ ./swidget/STextView.h0000644000175000017500000001213610726447217014573 0ustar henrichhenrich/* * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextView_h #define STextView_h #include "stoolkit/STextIndex.h" #include "stoolkit/SCursorIndex.h" #include "stoolkit/STextData.h" #include "stoolkit/STypes.h" #include "swidget/SComponent.h" #include "swindow/SFont.h" #include "swindow/SWindow.h" #include "swindow/SSyntaxColors.h" #include "stoolkit/syntax/SSyntax.h" typedef SBinHashtable SH_UINT; /** * Provide a widget view to STextData */ class STextView : public SComponent, STextDataListener { public: STextView (void); STextView (const SString& utf8); virtual ~STextView (); /* Every component has this. */ virtual void redraw (SCanvas *canvas, int x, int y, unsigned int width, unsigned int height); virtual void redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); void setForeground (const SColor& lrfg, const SColor& rlfg); virtual void setBackground (const SColor& bg); const SColor& getBackground (); const SColor& getForeground (bool lr); void setAlignment (bool align); void setMultiline (bool multiline); bool isMultiline () const; void setViewPort (const SLocation& viewPort); const SLocation& getViewPort(); virtual void resize (const SDimension& d); SCursorIndex getCursorIndex (const SLocation& l); SLocation getCursorLocation (const SCursorIndex& cursorIndex); SCursorIndex leftOf (const SCursorIndex& ci); SCursorIndex rightOf (const SCursorIndex& ci); void setLineEndMark (bool lineend); bool getLineEndMark () const; unsigned int getDocumentHeight () const; void setSyntax (const SString& hlMode); const SString& getSyntax () const; void setSyntaxColors (const SSyntaxColors& attr); const SSyntaxColors& getSyntaxColors () const; void setWordWrap (bool lbm); bool getWordWrap () const; STextData textData; unsigned int lineHeight; unsigned int lineAscent; void setUnderlineColor (const SColor& c); void setClippingArea (int x, int y, unsigned int width, unsigned int height); void addSyntaxListener (SSyntaxListener* _listener) { syntax.addSyntaxListener (_listener); } void setEditable (bool editable); void setText (const SString& text); SString getSyntaxName () const { return syntax.getParser (); } SString getHighlightName () const { return highlightMode; } void setPrinterPageSize (unsigned int _ps) { printerPageSize = _ps; } private: SSyntaxColors syntaxColors; SString highlightMode; SSyntax syntax; bool isWordWrapOn; bool isEditable; unsigned int printerPageSize; SCursorIndex moveCursor (const SCursorIndex& ci, bool up); unsigned int getLineIndex (int locy); void internalRedraw (SCanvas *canvas, int x, int y, unsigned int width, unsigned int height); void setVisible (unsigned int line); SLocation getTextLocation (const STextIndex& textIndex, bool before=true); void setPen(); /* STextDataListener */ void textChanged (void* src, const STextDataEvent& event); void textChangedInternal (void* src, const STextDataEvent& event); unsigned int drawParagraph (SCanvas* c, bool islr, unsigned int line, const SLocation& l, const SLocation& lb, const SLocation& le, bool iswindow=false); void drawGlyph (SCanvas* c, SLocation& l, unsigned int ext, STextIndex index); void syntaxHighlight(STextIndex index, SPen* pen, bool* isError); bool checktext(STextIndex index, const char* checkstring); void setReordered(); void wrapAndPosition (); void wrapAndPosition (unsigned int from, unsigned int until, int addcount); unsigned int wrapAndPosition (unsigned int line, SH_UINT* cache); SFont font; SPen lrpen; SPen rlpen; SLocation viewPort; SColor underlineColor; /* per line based arrays */ SV_UINT lineSpan; /* how many lines? */ SVector posBefore; /* glyph locations */ SVector posAfter; /* glyph locations */ SVector breaks; /* linebreaks */ double fontSize; int clipx; int clipy; int clipw; int cliph; bool alignment; bool multiline; bool lineend; }; #endif /* STextView_h */ ./swidget/STextEdit.cpp0000644000175000017500000021010211334657575015100 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/STextEdit.h" #include "stoolkit/SEncoder.h" SDClick::SDClick (void) { clickCount = 0; timer = 0; } SDClick::~SDClick () { if (timer) delete timer; } void SDClick::start (unsigned int millisec) { if (timer == 0) { timer = STimer::newTimer(300, this); clickCount = 0; } else { clickCount++; } } /** * The timer event */ bool SDClick::timeout (const SEventSource* s) { if (timer == 0) { fprintf (stderr, "strange. timeout..\n"); return false; } if (clickCount == 1) return true; /* again */ clickCount = 0; delete timer; timer = 0; return false; /* don't call me again */ } #define SS_LEFT_MARGIN 2 /** * A text area is an editable area of text. * This one creates one with empty text. */ STextEdit::STextEdit (void) : textView ("") { currentHistorySize = 0; historySize = 0; sliderListener = 0; yuditInput = 0; editable = true; textView.setEditable(true); focused = false; selecting = false; editor.setInterface (this); column = 0; resized = false; statusHeight = 0; textView.move (SLocation((int)border.getBorderSize().width + SS_LEFT_MARGIN, (int)border.getBorderSize().height)); clip (true); textView.setWindowInterface (this); caret.resize (SDimension(textView.lineHeight, textView.lineHeight)); updateCaretPosition (); updateCaretLocation (); caret.setWindowInterface (this); } bool STextEdit::isFocused () const { return focused; } /** * Deletes a text area. */ STextEdit::~STextEdit () { if (yuditInput) { //fprintf (stderr, "deleting yuditinput\n"); delete yuditInput; } } /** * Create a text area with pre-set utf8 text. * @param utf8 is the initial text. */ STextEdit::STextEdit (const SString& utf8) : textView (utf8) { currentHistorySize = 0; historySize = 0; sliderListener = 0; yuditInput = 0; statusHeight = 0; editable = true; textView.setEditable(true); focused = false; resized = false; editor.setInterface (this); textView.textData.move (STextIndex(0,0)); updateCaretPosition (); selecting = false; column = 0; textView.move (SLocation((int)border.getBorderSize().width + SS_LEFT_MARGIN, (int)border.getBorderSize().height)); clip (true); textView.textData.fireEvent (); textView.setWindowInterface (this); caret.resize (SDimension(textView.lineHeight, textView.lineHeight)); updateCaretLocation (); caret.setWindowInterface (this); } /** * Set the editor that works on this widget. */ void STextEdit::setEditor (const SEditor& _editor) { editor = _editor; if (yuditInput) yuditInput->clear(); endSelect(); deselectText(); editor.setInterface (this); } /** * Add a text edit listener to the list. * @param ls is the listener to be added. */ void STextEdit::addTextEditLS (STextEditLS* ls) { listeners.append (ls); } /** * Remove the text edit listener from the list. * @param ls is the listener to be removed. */ void STextEdit::removeTextEditLS (STextEditLS* ls) { for (unsigned int i=0; iisVisible()) { setInputMethod(imWaiting); } } /** * Turn clipping at the border on and off. * @param on is true if we turn on clipping. */ void STextEdit::clip (bool on) { if (!on) { window->removeClippingArea (); textView.setClippingArea (0,0,0,0); return; } window->setClippingArea ( (int) border.getBorderSize().width , (int) border.getBorderSize().height, size.width - 2 * border.getBorderSize().width, size.height - 2 * border.getBorderSize().height); textView.setClippingArea ( (int) border.getBorderSize().width , (int) border.getBorderSize().height, size.width - 2 * border.getBorderSize().width, size.height - 2 * border.getBorderSize().height); } /** * Pass this to the editor. */ void STextEdit::keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { /* fprintf (stderr, "try: %*.*s %*.*s %*.*s\n", SSARGS(window->getInputMethod()), SSARGS(inputMethod), SSARGS(s)); */ if (yuditInput) { yuditInput->keyPressed (key, s, ctrl, shift, meta); } else if ( (window->getInputMethod() == "x-ascii" || window->getInputMethod() == "") && inputMethod == SS_KINPUT2_IM && shift == true && s == " ") { //setInputMethod (SS_KINPUT2_IM); if (!window->startInputMethod ("_JAPANESE_CONVERSION",getProperties())) { fprintf (stderr, "Can not start kinput2 (_JAPANESE_CONVERSION) input method.\n"); } } else { editor.keyPressed (key, s, ctrl, shift, meta); } } /** * Pass this to the editor. */ void STextEdit::keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { //if (!yuditInput) editor.keyReleased (key, s, ctrl, shift, meta); /* end selection needs this. */ editor.keyReleased (key, s, ctrl, shift, meta); } /** * Pass this to the editor. Start a timer to measure * the double click. Get the focus. */ void STextEdit::buttonPressed (SWindow * w, int button, int x, int y) { if (yuditInput) yuditInput->clear(); window->getKeyboardFocus(); SCursorIndex textIndex = textView.getCursorIndex (SLocation (x, y)); setFocus (); /* double click check */ clicks.start (500); editor.buttonPressed (button, textIndex); } /** * A button was released. */ void STextEdit::buttonReleased (SWindow * w, int button, int x, int y) { if (yuditInput) yuditInput->clear(); editor.buttonReleased (button, textView.getCursorIndex (SLocation (x, y))); if (clicks.clickCount == 1) { editor.multiClicked (button, textView.getCursorIndex (SLocation (x, y)), 2); } else if (clicks.clickCount == 2) { editor.multiClicked (button, textView.getCursorIndex (SLocation (x, y)), 3); } } void STextEdit::buttonDragged (SWindow * w, int button, int x, int y) { if (yuditInput) yuditInput->clear(); editor.buttonDragged (button, textView.getCursorIndex (SLocation (x, y))); } /** * Keyboard focus lost. * In some environment this is called *after* the * mouse clicked is called. This results in some serious problem: * you can not select text with the mouse if * if (isSelecting()) * { * endSelect (); * } * is present. */ void STextEdit::lostKeyboardFocus (SWindow* w) { focused = false; caret.animate (false); for (unsigned int i=0; ifocusChanged (this, false); } } /** * Text has gone from clipboard. */ void STextEdit::lostClipSelection (SWindow* w) { deselectText(); } /** * keyboard focus lost. */ void STextEdit::gainedKeyboardFocus (SWindow* w) { focused = true; if (editable) { caret.animate (true); } for (unsigned int i=0; ifocusChanged (this, true); } } /** * Resize the component * @param d is the new size */ void STextEdit::resize(const SDimension& d) { if (getSize() == d) return; SPanel::resize (d); border.resize (d); resizeTextView(false); } void STextEdit::resizeTextView(bool scroll) { SDimension td = size; if (size.width + 2 * SS_LEFT_MARGIN> border.getBorderSize().width * 2) { td.width = size.width - border.getBorderSize().width * 2 - 2 * SS_LEFT_MARGIN; } if (size.height > border.getBorderSize().height * 2) { td.height = size.height - border.getBorderSize().height * 2; if (td.height > statusHeight) { td.height = td.height - statusHeight; } if (scroll) { window->redraw (true, 0, 0, size.width, size.height); } } clip (true); textView.resize (td); resized = true; } /** * Move the component * @param l is the new location */ void STextEdit::move(const SLocation& l) { SPanel::move (l); } /** * getPreferredSize. * This is calculated form the preferred size of the textView and * adding the border size to it. */ const SDimension& STextEdit::getPreferredSize() { preferredSize = textView.getPreferredSize(); SDimension d = border.getBorderSize(); preferredSize.width += d.width * 2; preferredSize.height += d.height * 2; return preferredSize; } /** * Gain keyboard focus * @return true if focus could be gained. */ void STextEdit::setFocus () { window->getKeyboardFocus(); } /** * Scroll the area up or down. * Move text up - * Move text down + * @param value is positive if up. * @param value is negative is down. */ void STextEdit::scrollVertical (int value, bool notify) { if (value ==0) return; int eheight = (int)size.height - (int)2 * border.getBorderSize().height; if (eheight <= 0) return; int ewidth = (int)size.width - (int)2 * border.getBorderSize().width; if (ewidth <= 0) return; SLocation v = textView.getViewPort(); v.y = v.y + value; textView.setViewPort (v); /* redraw whole thing */ if (window->isDoubleBufferEnabled ()) { window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, ewidth, eheight); } /* outof range. */ else if ((value < 0 && -value >= eheight) || (value > 0 && value >= eheight)) { window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, ewidth, eheight); } /* copy the area and redraw the rest */ else if (value < 0) { value = -value; /* copy up */ window->copy ((int) border.getBorderSize().width, value + (int) border.getBorderSize().height, ewidth, eheight-value, border.getBorderSize().width, border.getBorderSize().height); /* redraw down 5 + 4 oeverdraw */ window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height + eheight - value - 5, ewidth, value + 9); } else { /* copy down */ window->copy ((int) border.getBorderSize().width, (int) border.getBorderSize().height, ewidth, eheight-value, border.getBorderSize().width, (int) border.getBorderSize().height + value); /* redraw up */ window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, ewidth, value + 4); } if (notify) { notifySlider(); } } void STextEdit::scrollHorizontal (int value, bool notify) { if (value ==0) return; SLocation v = textView.getViewPort(); v.x = v.x + value; textView.setViewPort (v); int eheight = (int)size.height - (int)2 * border.getBorderSize().height; if (eheight <= 0) return; int ewidth = (int)size.width - (int)2 * border.getBorderSize().width + 2 * SS_LEFT_MARGIN; if (ewidth <= 0) return; /* redraw whole thing */ if (window->isDoubleBufferEnabled ()) { window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, ewidth, eheight); } /* outof range. */ else if ((value < 0 && -value >= ewidth) || (value > 0 && value >= ewidth)) { window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, ewidth, eheight); } /* copy the area and redraw the rest */ else if (value < 0) { value = -value; /* copy up */ window->copy (value + (int) border.getBorderSize().width, (int) border.getBorderSize().height, ewidth-value, eheight, border.getBorderSize().width, border.getBorderSize().height); /* redraw down 2+2 overdraw */ window->redraw (true, (int) ewidth-value - 2, (int) border.getBorderSize().height, value + 4, eheight); } else { /* copy down */ window->copy ((int) border.getBorderSize().width, (int) border.getBorderSize().height, ewidth-value, eheight, border.getBorderSize().width + value, (int) border.getBorderSize().height); /* redraw up + 4 overdraw */ window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, value + 4, ewidth); } if (notify) { notifySlider(); } } /** * Shift the text, and caret so that caret is always visible. */ void STextEdit::setCaretLocationVisible () { if (isMultiline()) { setCaretVisibleVertical (); } else { setCaretVisibleHorizontal (); } } /** * Do the vertical part of caret visible trickies. */ void STextEdit::setCaretVisibleVertical() { /* * I dont like this type of scrolling... It also * has a bug ath the end of the page. */ SDimension ts = textView.getSize(); /* It happens before resize. */ if (ts.height==0) return; SLocation tb = textView.getLocation(); /* t=text-widget c=caret tf=text-full*/ SCursorIndex ci = caret.getCursorIndex(); SLocation cl = textView.getCursorLocation(ci); /* this is negative for scrolls to left */ SLocation viewp = textView.getViewPort(); /* do we need to move ? */ int movey = 0; if (cl.y + (int)textView.lineHeight > (int)ts.height + tb.y) { /* negative - left */ movey = (int) ts.height + tb.y - cl.y - (int) textView.lineHeight; } else if (cl.y < tb.y) { /* positive - right */ movey = tb.y - cl.y; } if (viewp.y + movey > 0) movey = -viewp.y; /* fits one page */ if (viewp.y + movey < -((int)textView.getDocumentHeight() - (int)ts.height)) { movey = -(int)textView.getDocumentHeight()-viewp.y+(int)ts.height; } /* check overscroll */ if (textView.getDocumentHeight() <= ts.height) { movey = -viewp.y; } if (movey!=0) { scrollVertical (movey, true); } } /** * Do the vertical part of caret visible trickies. */ void STextEdit::centerCaretVertical() { /* t=text-widget c=caret tf=text-full*/ SLocation cb = caret.getLocation(); int delta = ((int)(textView.getSize().height/2))-cb.y; /* it would make the first line appear down below */ if (textView.getViewPort().y + delta >= 0) { delta = - textView.getViewPort().y; } /* it would make the last line appear up below */ else if (textView.getViewPort().y + delta + (int)textView.getDocumentHeight() < (int)textView.getSize().height) { delta = ((int)textView.getSize().height) - textView.getViewPort().y - (int)textView.getDocumentHeight(); /* one page text may over-request. */ if (textView.getViewPort().y + delta >= 0) { delta = 0; } } if (delta != 0) { scrollVertical (delta, true); /* move the caret silently */ updateCaretPosition (); updateCaretLocation (false); window->setInputMethodProperties (getProperties()); } return; } /** * Do the horizontal part of caret visible trickies. */ void STextEdit::setCaretVisibleHorizontal() { SDimension ts = textView.getSize(); /* It happens before resize. */ if (ts.width == 0) return; SLocation tb = textView.getLocation(); /* t=text-widget c=caret tf=text-full*/ SCursorIndex ci = caret.getCursorIndex(); SLocation cl = textView.getCursorLocation(ci); bool islr = textView.textData.isLR(ci.textIndex.line); /* this is negative for scrolls to left */ SLocation viewp = textView.getViewPort(); /* do we need to move ? */ int movex = 0; if (islr) { if (cl.x >= 8 * (int)ts.width/ 10 + tb.x) { /* negative - left */ movex = (6 * (int) ts.width / 10 + tb.x) - cl.x; } else if (cl.x <= 2 * ((int)ts.width) / 10 + tb.x) { /* positive - right */ movex = (4 * ((int) ts.width) / 10 + tb.x) - cl.x; } if (viewp.x + movex > 0) movex = -viewp.x; if (movex!=0) { scrollHorizontal (movex, true); } } else /* no support for scrolling yet */ { #if 0 /* if (cl.x <= 6 * (int)ts.width/ 10 + tb.x) { movex = (8 * (int) ts.width / 10 + tb.x) - cl.x; } else if (cl.x >= 4 * ((int)ts.width) / 10 + tb.x) { movex = (2 * ((int) ts.width) / 10 + tb.x) - cl.x; } if (viewp.x + movex > 0) movex = -viewp.x; if (movex!=0) { scrollHorizontal (movex, true); } */ #endif if (viewp.x != 0) { scrollHorizontal (-viewp.x, true); } } return; } /** * If show <- newline characters * @param lineend is true if lineend is shown. */ void STextEdit::setLineEndMark (bool lineend) { textView.setLineEndMark (lineend); resized = true; } /** * Is new line shown? * @return true if newline characters are shown. */ bool STextEdit::getLineEndMark () const { return textView.getLineEndMark (); } /** * Chose between fonts. * @param fnt is the font to chose. * @param size is the size of the font or zero if old size is used. */ void STextEdit::setFont (const SString& fnt, double _size) { textView.setFont (fnt, _size); /* extents may change */ notifySlider(); caret.resize (SDimension(textView.lineHeight, textView.lineHeight)); resized = true; updateCaretLocation (); redraw (); } /** * Set the size of the font. */ void STextEdit::setFontSize (double _size) { textView.setFontSize (_size); /* extents may change */ notifySlider(); caret.resize (SDimension(textView.lineHeight, textView.lineHeight)); resized = true; updateCaretLocation (); redraw (); } /** * redraw the whole thing */ void STextEdit::redraw () { int eheight = (int)size.height - (int)2 * border.getBorderSize().height; if (eheight <= 0) return; int ewidth = (int)size.width - (int)2 * border.getBorderSize().width + 2 * SS_LEFT_MARGIN; resized = true; window->redraw (true, (int) border.getBorderSize().width , (int) border.getBorderSize().height, ewidth + 2 * SS_LEFT_MARGIN, eheight); } /*----------- This is the implementation of SEditorIF ---------------*/ /** * Chose between fonts. * @param fnt is the font to chose. */ void STextEdit::setFont (const SString& fnt) { setFont (fnt, 0.0); } /** * Chose between input methods. * @patam im is the input to chose. */ void STextEdit::setInputMethod (const SString& _im) { //fprintf (stderr, "Starting -----------%*.*s\n", SSARGS(im)); /* Stop current xinput method. */ inputMethod = _im; if (!window->isVisible()) { imWaiting = inputMethod; return; } imWaiting.clear(); unsigned int oldH = statusHeight; statusHeight = 0; SDimension d = getSize(); if (yuditInput) { yuditInput->clear(); delete yuditInput; yuditInput=0;; } else { } if (inputMethod == SS_DEFAULT_IM) { if (oldH != statusHeight) resizeTextView (true); window->startInputMethod ("x-ascii", SProperties()); } else if (inputMethod == SS_KINPUT2_IM) { statusHeight = (textView.lineHeight < 24) ? 24: textView.lineHeight; resizeTextView (true); if (!window->startInputMethod ("_JAPANESE_CONVERSION",getProperties())) { fprintf (stderr, "Can not start kinput2 (_JAPANESE_CONVERSION) input method.\n"); } if (window->getInputMethod()=="x-utf-8" || window->getInputMethod() == "x-ascii" || window->getInputMethod() == "" || ximProperties.get ("InputStyle") == 0 || (ximProperties["InputStyle"] != "preedit-under-status-under" && ximProperties["InputStyle"] != "preedit-over-status-under")) { statusHeight = 0; resizeTextView (true); } } else if (inputMethod == SS_WINDOWS_IM) { statusHeight = (textView.lineHeight < 24) ? 24: textView.lineHeight; resizeTextView (true); if (!window->startInputMethod ("_JAPANESE_CONVERSION",getProperties())) { fprintf (stderr, "Can not start Window input method.\n"); } if (window->getInputMethod()=="x-utf-8" || window->getInputMethod() == "x-ascii" || window->getInputMethod() == "" || ximProperties.get ("InputStyle") == 0 || (ximProperties["InputStyle"] != "preedit-under-status-under" && ximProperties["InputStyle"] != "preedit-over-status-under")) { statusHeight = 0; resizeTextView (true); } } /* X Input method. */ else if (inputMethod.size() > 2 && (inputMethod[0] == 'x' || inputMethod[0] == 'X') && (inputMethod[1] == '-' || inputMethod[1] == '-') ) { statusHeight = (textView.lineHeight < 24) ? 24: textView.lineHeight; resizeTextView (true); if (!window->startInputMethod (inputMethod, getProperties())) { fprintf (stderr, "Can not start %*.*s input method.\n", SSARGS(inputMethod)); } if (window->getInputMethod()=="x-utf-8" || window->getInputMethod() == "x-ascii" || window->getInputMethod() == "" || window->hasStatusArea() == false || ximProperties.get ("InputStyle") == 0 || (ximProperties["InputStyle"] != "preedit-under-status-under" && ximProperties["InputStyle"] != "preedit-over-status-under")) { statusHeight = 0; resizeTextView (true); } } else { if (oldH != statusHeight) resizeTextView (true); window->startInputMethod ("x-ascii", SProperties()); yuditInput = new SYuditInput (inputMethod, this, &editor); } } /** * Get text from clipboard and put it here. */ void STextEdit::insertClipboardText () { SString str = window->getClipUTF8(); if (str.size()==0) { return; } if (isMultiline()) { textView.textData.insert (str); textView.textData.fireEvent(); updateCaretPosition (); updateCaretLocation (); fireTextChanged (); return; } /* multiline */ SEncoder oc; SV_UCS4 s4 = oc.decode (str); SV_UCS4 vle; for (unsigned int i=0; iputClipUTF8 (str); } // Return an empty string if there is no selected text, or // return the text currently selected. SString STextEdit::getSelectedText () { if (startSelection == endSelection) { return SString(""); } SString str = textView.textData.getText (startSelection, endSelection); return SString (str); } /** * Dirty text may conta8ing newline characters and the line. * This routine is calling insertText for multiline widget. * For a signle line widget it is chopping the text at newline * and calls the textEntered callback. * * @param str is an utf8 string that may contain line-breaks as well. * @return the index to the previous insertion point. */ void STextEdit::insertDirtyText (const SString& str, bool embed) { if (!editable) { return ; } if (selecting) { deselectText(); } if (isMultiline()) { insertText (str, embed); return; } int ind0 = str.find (SS_LB_DOS); int ind1 = str.find (SS_LB_MAC); int ind2 = str.find (SS_LB_UNIX); int ind3 = str.find (SS_LB_PS); int ind4 = str.find (SS_LB_LS); int ind5 = str.find (SS_LB_FF); if (ind0 < 0) ind0 = str.size(); if (ind1 < 0) ind1 = str.size(); if (ind2 < 0) ind2 = str.size(); if (ind3 < 0) ind3 = str.size(); if (ind4 < 0) ind4 = str.size(); if (ind5 < 0) ind5 = str.size(); int smallest = ind0; if (ind1 < smallest) smallest = ind1; if (ind2 < smallest) smallest = ind2; if (ind3 < smallest) smallest = ind3; if (ind4 < smallest) smallest = ind4; if (ind5 < smallest) smallest = ind5; if (smallest < (int)str.size()) { SString s = str; s.truncate ((int)smallest); insertText (s, embed); for (unsigned i=0; itextEntered (this); } return; } insertText (str, embed); return; } /** * Insert the text in str. The text won't be affected by keys. * @param str is an utf8 string that may contain line-breaks as well. * @param embed is true if embed marks need to be added. * undo, paste does not need them. * @return the index to the previous insertion point. */ void STextEdit::insertText (const SString& _str, bool embed) { /* find out what text it is */ SEmbedState s = caret.getEmbedState(); SString str = _str; if (embed && s.getExplicitLevel()!=0) { SV_UCS4 ucs = s.getEmbeddingMarks(0); unsigned int i = ucs.size();; /* we have to go the opposite order to get the right order... */ while (i>0) { i--; switch (ucs[i]) { case SD_CD_LRO: str.insert(0, SS_LB_LRO); str.append (SS_LB_PDF); break; case SD_CD_RLO: str.insert(0, SS_LB_RLO); str.append (SS_LB_PDF); break; case SD_CD_LRE: str.insert(0, SS_LB_LRE); str.append (SS_LB_PDF); break; case SD_CD_RLE: str.insert(0, SS_LB_RLE); str.append (SS_LB_PDF); break; } } } textView.textData.insert (str); textView.textData.fireEvent (); /* move to the logical end of previous character */ updateCaretPosition (); updateCaretLocation (); fireTextChanged (); return; } /** * Scroll it up. */ void STextEdit::pageUp () { if ((textView.lineHeight == 0 && !isMultiline()) || textView.textData.size ()==0) { return; } unsigned int h0 = textView.getDocumentHeight(); SCursorIndex indexNow = caret.getCursorIndex(); SLocation l0 = textView.getCursorLocation (indexNow); /* half pages */ int decrement = ((int)textView.getSize().height/2)/textView.lineHeight + 1; decrement = decrement * textView.lineHeight; SLocation l1 = SLocation (0, l0.y - decrement); if (l0.y-l1.y > -textView.getViewPort().y) { l1.y = l0.y + textView.getViewPort().y; } int scrollVle = l0.y - l1.y; if (scrollVle == 0) { /* size changed - redraw whole window */ unsigned int h1 = textView.getDocumentHeight(); if (h1 != h0) { redraw(); } return; } caret.redraw(); scrollVertical (scrollVle, true); SCursorIndex indexNext = textView.getCursorIndex (l0); indexNext.textIndex.index = column; if (scrollVle <= (int)textView.lineHeight && indexNext.textIndex.line > 1) { indexNext.textIndex.line -= 1; } if (selecting) { selectText (indexNext); } else { deselectText(); textView.textData.move (indexNext.textIndex); textView.textData.fireEvent(); updateCaretPosition (false); updateCaretLocation (); } /* size changed - redraw whole window */ unsigned int h1 = textView.getDocumentHeight(); if (h1 != h0) { redraw(); } return; } /** * Scroll it down. */ void STextEdit::pageDown () { if ((textView.lineHeight == 0 && !isMultiline()) || textView.textData.size ()==0) { return; } SCursorIndex indexNow = caret.getCursorIndex(); SLocation l0 = textView.getCursorLocation (indexNow); /* half pages */ int increment = ((int)textView.getSize().height/2)/textView.lineHeight + 1; increment = increment * textView.lineHeight; SLocation l1 = SLocation (0, l0.y + increment); int docHeight = (int) textView.getDocumentHeight(); /* so what if we scroll */ int scrollVle = l1.y - l0.y; if (scrollVle - textView.getViewPort().y > docHeight - (int) textView.getSize().height) { scrollVle = docHeight + textView.getViewPort().y - (int) textView.getSize().height; } if (scrollVle ==0) return; if (textView.getViewPort().y -scrollVle > 0) return; caret.redraw(); scrollVertical (-scrollVle, true); SCursorIndex indexNext = textView.getCursorIndex (l0); indexNext.textIndex.index = column; if (scrollVle <= (int)textView.lineHeight && textView.textData.size() > indexNext.textIndex.line+1) { indexNext.textIndex.line += 1; } if (selecting) { selectText (indexNext); } else { deselectText(); textView.textData.move (indexNext.textIndex); textView.textData.fireEvent(); updateCaretPosition (false); updateCaretLocation (); } return; } /** * Move caret up. if possible. */ void STextEdit::caretUp () { unsigned int h0 = textView.getDocumentHeight(); SCursorIndex indexNow = caret.getCursorIndex (); if (indexNow.textIndex.line==0) { historyUp (); return; } SCursorIndex ti = SCursorIndex (indexNow.textIndex.line-1, column); unsigned int sz = textView.textData.size (ti.textIndex.line); if (sz < ti.textIndex.index) ti.textIndex.index = sz; if (sz > 0 && ti.textIndex.index == sz && textView.textData.isProperLine (ti.textIndex.line)) { ti.textIndex.index--; } if (selecting) { selectText (ti); } else { deselectText(); textView.textData.move (ti.textIndex); textView.textData.fireEvent(); updateCaretPosition (false); updateCaretLocation (); } /* size changed - redraw whole window */ unsigned int h1 = textView.getDocumentHeight(); if (h1 != h0) { redraw(); } return; } /** * Move caret downwards. if possible. */ void STextEdit::caretDown () { SCursorIndex indexNow = caret.getCursorIndex (); if (!textView.textData.isProperLine (indexNow.textIndex.line) || indexNow.textIndex.line + 1 > textView.textData.size()) { historyDown (); return; } SCursorIndex ti = SCursorIndex (indexNow.textIndex.line+1, column); unsigned int sz = textView.textData.size (ti.textIndex.line); if (sz < ti.textIndex.index) ti.textIndex.index = sz; if (sz > 0 && ti.textIndex.index == sz && textView.textData.isProperLine (ti.textIndex.line)) { ti.textIndex.index--; } if (selecting) { selectText (ti); } else { deselectText(); textView.textData.move (ti.textIndex); textView.textData.fireEvent(); //fprintf (stderr, "Y1 column=%u\n", column); updateCaretPosition (false); updateCaretLocation (); } historyDown (); return; } /** * Move caret to the left. if possible. */ void STextEdit::caretLeft () { SCursorIndex indexNow = caret.getCursorIndex(); SCursorIndex indexPrev = textView.leftOf (indexNow); if (indexPrev == indexNow) { return; } if (selecting) { selectText (indexPrev); } else { deselectText(); textView.textData.move (indexPrev.getTextIndex()); textView.textData.fireEvent(); setCursorIndex (indexPrev); } STextIndex ndx = textView.textData.getTextIndex(); column = ndx.index; return; } /** * Move caret to the right. if possible. */ void STextEdit::caretRight () { SCursorIndex indexNow = caret.getCursorIndex(); SCursorIndex indexNext = textView.rightOf (indexNow); if (indexNext == indexNow) { return; } if (selecting) { selectText (indexNext); } else { deselectText(); textView.textData.move (indexNext.getTextIndex()); textView.textData.fireEvent(); setCursorIndex (indexNext); } STextIndex ndx = textView.textData.getTextIndex(); column = ndx.index; return; } /** * Put state machine into a 'selecting' state. */ void STextEdit::startSelect () { deselectText(); startSelection = textView.textData.getTextIndex(); endSelection = startSelection; selecting = true; } /** * End the selection. */ void STextEdit::endSelect () { selecting = false; if (startSelection != endSelection) { clipSelection(); } } /** * Drag select the text. * @param till indicates new endselction. */ void STextEdit::selectText (const SCursorIndex& _till) { if (!selecting) { return; } STextIndex now = _till.getTextIndex(); if (now == endSelection) { setCursorIndex(_till); return; } /* make sure selection doesn't exceed boundaries (for example, because of pressing the END key). Addition by Maarten van Gompel */ unsigned int maxsize = textView.textData.size(now.line); if (textView.textData.isProperLine(now.line)) maxsize--; if (now.index > maxsize) { STextIndex maxindex(now.line, maxsize); now = maxindex; } //textIndex = endSelection; if (now > endSelection) { /* crossed startSelection - delete */ textView.textData.move (endSelection); if (endSelection < startSelection) { if (now < startSelection) { textView.textData.select (now, false); } else { textView.textData.select (startSelection, false); } } textView.textData.select (now, true); } else /* moving down */ { /* crossed startSelection - delete */ textView.textData.move (endSelection); if (endSelection > startSelection) { if (now > startSelection) { textView.textData.select (now, false); } else { textView.textData.select (startSelection, false); } } textView.textData.select (now, true); } endSelection = now; textView.textData.fireEvent (); textView.textData.move (now); setCursorIndex(_till); } /** * Wherever the current index is, select a word there. */ void STextEdit::selectWord () { if (selecting) return; deselectText(); STextIndex index = textView.textData.getTextIndex(); if (index.line == textView.textData.size()) { return; } unsigned int start; for (start=index.index; start>0; start--) { //the new function isDelimiter is now used instead of the //isWhitespace function, so words are now carefully being //selected based on hundreds of possible unicode delimiters. //addition by Maarten van Gompel if (textView.textData.isDelimiter (STextIndex (index.line, start-1))) { break; } } unsigned int end; for (end=index.index; end 0) { nextIndex.index--; } if (index==nextIndex) return; startSelection = STextIndex(index.line, 0); endSelection = nextIndex; textView.textData.move (startSelection); textView.textData.select (endSelection); textView.textData.fireEvent (); /* caret did not move */ textView.textData.move (index); clipSelection(); } /** * get the index after new line mark. that is already on * the next line, or if there is no new line, this is the same line. */ STextIndex STextEdit::getIndexAfterLineBreak () { STextIndex index = textView.textData.getTextIndex(); if (index.line == textView.textData.size()) { return STextIndex(index); } if (textView.textData.isProperLine (index.line)) { index.line = index.line+1; index.index = 0; } else { index.index = textView.textData.size(index.line); } return STextIndex(index); } /** * The text hoghlighted should be unhighlighted. */ void STextEdit::deselectText () { selecting = false; if (startSelection == endSelection) { startSelection = textView.textData.getTextIndex(); endSelection = textView.textData.getTextIndex(); return; } STextIndex now = textView.textData.getTextIndex(); textView.textData.move (startSelection); textView.textData.select (endSelection, false); textView.textData.fireEvent(); /* caret did not move */ textView.textData.move (now); startSelection = now; endSelection = now; } /** * getSelectedIndex * @param hi is true if we want the upper index. */ STextIndex STextEdit::getSelectedIndex (bool hi) { if (startSelection < endSelection) { return hi ? endSelection : startSelection; } else { return hi ? startSelection : startSelection; } } /** * Remove the selected text. * Return the text that was remove - if any. */ SString STextEdit::eraseSelectedText () { if (!editable) return (SString("")); selecting = false; if (startSelection == endSelection) { startSelection = textView.textData.getTextIndex(); endSelection = textView.textData.getTextIndex(); return SString(""); } textView.textData.move (startSelection); SString ret = textView.textData.getText (endSelection); textView.textData.remove (endSelection); textView.textData.fireEvent(); startSelection = textView.textData.getTextIndex(); endSelection = textView.textData.getTextIndex(); fireTextChanged (); updateCaretPosition (); updateCaretLocation (); return SString(ret); } /** * erase a glyph - that is one glyph back. * text deleted are always <- direction. * in an LR context this should be backspace. * @return the text erased (if any) */ SString STextEdit::backspace () { if (selecting || !editable) return SString(""); STextIndex indexNow = textView.textData.getTextIndex (); STextIndex indexPrev = textView.textData.getTextIndex (-1, true); if (indexPrev == indexNow) return SString(""); SString ret = textView.textData.getText (indexPrev); textView.textData.remove (indexPrev); // fireTextDataEvent is used now. textView.textData.fireEvent(); textView.textData.fireEvent (); fireTextChanged (); updateCaretPosition (); updateCaretLocation (); return SString(ret); } /** * Delete text - that is one position forward. * text deleted are always -> direction. * in an LR context this should be delete. * @return the text deleted (if any) */ SString STextEdit::erase () { if (selecting || !editable) return (SString("")); STextIndex indexNow = textView.textData.getTextIndex (); STextIndex indexPrev = textView.textData.getTextIndex (-1, true); STextIndex indexNext = textView.textData.getTextIndex (1, true); if (indexNext == indexNow) return SString(""); SString ret = textView.textData.getText (indexNext); textView.textData.remove (indexNext); textView.textData.fireEvent(); fireTextChanged (); updateCaretPosition (); updateCaretLocation (); return SString(ret); } /** * Remove composing letter to the point ponterd away from with cursor */ SS_UCS4 STextEdit::removeComposing() { STextIndex afrom = getCaretArrowFrom(); /* saving it */ STextIndex before = textView.textData.getTextIndex(); STextIndex ci(afrom.line, afrom.index); textView.textData.move (ci); SS_UCS4 ret = textView.textData.removeComposing (true); textView.textData.move (before); if (ret) { textView.textData.fireEvent(); updateCaretLocation(); fireTextChanged (); } return ret; } /** * Add composing letter to the point ponterd away from with cursor */ bool STextEdit::addComposing(SS_UCS4 c) { STextIndex afrom = getCaretArrowFrom(); /* saving it */ STextIndex before = textView.textData.getTextIndex(); STextIndex ci(afrom.line, afrom.index); textView.textData.move (ci); bool ret = textView.textData.addComposing (c, true); textView.textData.move (before); if (ret) { textView.textData.fireEvent(); updateCaretLocation(); fireTextChanged (); } return ret; } const SCursorIndex& STextEdit::getCursorIndex () const { return caret.getCursorIndex(); } /** * We should put away the focus to somewhere else. */ void STextEdit::focusOut () { for (unsigned int i=0; ifocusOutRequest (this); } } void STextEdit::fireTextChanged () { for (unsigned int i=0; itextChanged (this); } } void STextEdit::fireCaretMoved () { SCursorIndex cin = caret.getCursorIndex(); for (unsigned int i=0; icaretMoved (this, cin.textIndex.line, cin.textIndex.index, cin.before); } } void STextEdit::setEditable (bool _editable) { if (editable == _editable) return; editable = _editable; caret.animate (editable && focused); //textView.setEditable(_editable); } bool STextEdit::isEditable () const { return editable; } bool STextEdit::isSelecting () const { return selecting; } /** * Insert text from pre-edit, bypassing undo */ void STextEdit::insertPreEditText (const SString& str) { STextIndex before = textView.textData.getTextIndex (); /* this will move caret */ insertDirtyText (str); STextIndex now = textView.textData.getTextIndex (); textView.textData.underline (before); textView.textData.move (now); textView.textData.fireEvent (); return; } /** * erase text between this and 'till'. * @return the erased text. */ SString STextEdit::eraseText (const STextIndex& till) { if (selecting || !editable) { //fprintf (stderr, "selecting=%d editable=%d\n", // (int) selecting, (int) editable); return SString(""); } STextIndex index = textView.textData.getTextIndex(); if (index == till) { //fprintf (stderr, "index=%u %u till=%u %u\n", // index.line, index.index, till.line, till.index); return SString(""); } SString ret = textView.textData.getText (till); textView.textData.remove (till); textView.textData.fireEvent(); fireTextChanged (); updateCaretPosition (); updateCaretLocation (); return SString(ret); } SString STextEdit::getText (const STextIndex& from, const STextIndex& till) { return textView.textData.getText (from, till); } SString STextEdit::getText () { return textView.textData.getText (); } void STextEdit::setUnderlineColor (const SColor& c) { textView.setUnderlineColor(c); } /** * This is called by a slibadle and it shows that vales have been changed. */ void STextEdit::valueChanged (SSlidable* _slidable, SSlideType _type) { SLocation diff = textView.getViewPort() + _slidable->value; /* it can not change anything by the viewport. */ if (isMultiline()) /* only vertical */ { if (diff.y == 0) return; SCursorIndex ci = caret.getCursorIndex(); caret.redraw(); /* set see what we get */ scrollVertical (-diff.y, false); SLocation l = textView.getCursorLocation(ci); SDimension tsize = textView.getSize(); SLocation tloc = textView.getLocation(); if (l.y > (int) tsize.height - tloc.y ) { l.y = (int) tsize.height - textView.lineHeight - tloc.y; } if (l.y < tloc.y + (int) textView.lineHeight +1) { l.y = tloc.y + (int) textView.lineHeight +1; } SCursorIndex index = textView.getCursorIndex(l); if (index != ci) { l.x = 0; index = textView.getCursorIndex(l); STextIndex wanted = index.getTextIndex(); /* get our limitation */ textView.textData.move (wanted); STextIndex real = textView.textData.getTextIndex(); SCursorIndex realIndex (index); /* wanted is more */ if (wanted != real) { if (real.index == 0) { realIndex = SCursorIndex(real.line, real.index, true); } else { realIndex = SCursorIndex(real.line, real.index-1, false); } } else { realIndex = index; } internalMoveCaret(realIndex); /* not necessarily visible */ fireCaretMoved(); //column = ci.textIndex.index ; } updateCaretLocation (false); } else /* only horizontal */ { if (diff.x == 0) return; scrollHorizontal (-diff.x, false); updateCaretLocation(false); } } /** * calculate value, step, page and max and send it to * the listener */ void STextEdit::notifySlider () { if (!sliderListener) return; /* FIXME: add horizontal one */ SDimension d = SDimension (0, textView.getDocumentHeight()); SSlidable s; s.max = d - textView.getSize(); s.step = SDimension (0, textView.lineHeight); s.value = SLocation (0, -textView.getViewPort().y); s.page = textView.getSize(); if (slidable==s) return; slidable = s; if (isMultiline()) /* only vertical */ { sliderListener->valueChanged (&slidable, SSliderListener::SS_VERTICAL); } } /** * @param l is the listener. */ SSlidable* STextEdit::setSliderListener (SSliderListener* l) { sliderListener = l; return &slidable; } bool STextEdit::undo () { return editor.undo(); } /** * Clear all states * return treu if it had a state. */ bool STextEdit::clearState() { bool had=false; selecting = false; if (yuditInput && yuditInput->clear(false)) { had = true; } if (startSelection != endSelection) { had=true; clipSelection(); } deselectText(); return had; } bool STextEdit::redo () { return editor.redo(); } /** * Set the ParagraphSeparator */ void STextEdit::setParagraphSeparator (const SString& lbr, bool change) { editor.setParagraphSeparator(lbr); if (!change) return; if (textView.textData.setParagraphSeparator(lbr)) { for (unsigned i=0; itextChanged (this); } window->redraw (true, 0, 0, size.width, size.height); } } void STextEdit::clear() { if (yuditInput) yuditInput->clear(); startSelection = STextIndex(0,0); endSelection = STextIndex(0,0); selecting = false; editor.clear(); textView.textData.clear(); textView.textData.fireEvent(); updateCaretPosition(); updateCaretLocation(); fireCaretMoved(); fireTextChanged(); } void STextEdit::setText (const SString& text) { clear(); textView.textData.setText (text); textView.textData.fireEvent(); updateCaretPosition(); updateCaretLocation(); fireCaretMoved(); fireTextChanged(); editor.clear(); } /** * Insert text through editor. */ void STextEdit::insertEditorText (const SString& text) { editor.keyPressed (SWindowListener::Key_Send, text, false, false, false); } const SStringVector& STextEdit::getHistory() { return history; } /** * history is for singles */ void STextEdit::putHistory (const SString& str) { if (historySize==0) return; if (isMultiline()) return; unsigned int i; for (i=0; i historySize) { history.remove (0); } currentHistorySize = history.size(); } void STextEdit::setHistorySize (unsigned int siz) { historySize = siz; if (history.size() > siz) history.truncate (siz); } /** * set text from history */ void STextEdit::historyDown () { if (history.size() == 0 || historySize==0) return; if (currentHistorySize+1 >= history.size()) return; if (isMultiline()) return; editor.clear(); clear(); currentHistorySize++; setText (history[currentHistorySize]); setCursorIndex(SCursorIndex(0,10000)); } /** * set text from history */ void STextEdit::historyUp () { if (history.size() == 0 || historySize==0) return; if (currentHistorySize == 0) return; if (isMultiline()) return; editor.clear(); clear(); currentHistorySize--; //fprintf (stderr, "history up %u \n", currentHistorySize); setText (history[currentHistorySize]); setCursorIndex(SCursorIndex(0,10000)); } void STextEdit::historyEnd() { currentHistorySize = history.size(); } /** * If there is selected text unselect it increment the index. * and try find again. */ bool STextEdit::find(const SString& str) { if (isSelecting ()) { endSelect (); } /* just find */ STextIndex fs; if (startSelection == endSelection) { fs = textView.textData.find(str); if (fs == STextIndex(0,0)) { setCursorIndex(SCursorIndex(0,0)); fs = textView.textData.find(str); if (fs == STextIndex(0,0)) { return false; } } } /* select the text between current index and fs */ else { STextIndex indexNext = textView.textData.getTextIndex (1, true); textView.textData.move (indexNext); updateCaretPosition(); fs = textView.textData.find(str); if (fs == STextIndex(0,0)) { setCursorIndex(SCursorIndex(0,0)); fs = textView.textData.find(str); if (fs == STextIndex(0,0)) { deselectText(); return false; } } } STextIndex currentIndex = textView.textData.getTextIndex(); if (startSelection != endSelection) { textView.textData.move (startSelection); textView.textData.select (endSelection, false); textView.textData.fireEvent(); textView.textData.move (currentIndex); } startSelection = fs; endSelection = fs; /* select text moves stuff around so we might want to deselect previous now */ selecting = true; selectText (SCursorIndex (currentIndex.line, currentIndex.index, true)); selecting = false; /* this scrolles and leaves old selected text behind */ centerCaretVertical(); return true; } /** * replace text. */ bool STextEdit::replace (const SString& orig, const SString& repl) { if (isSelecting()) { endSelect (); } if (orig.size()==0) { return false; } SString str; if (startSelection != endSelection) { str = cleanEmbed(textView.textData.getText (startSelection, endSelection)); } /* do if it is the same as search string */ if (startSelection == endSelection || str != orig) { return find (orig); } else { /* re-embed */ SEmbedState es = textView.textData.getEmbedState( (startSelection > endSelection) ? endSelection : startSelection); editor.keyPressed (SWindowListener::Key_Delete, SString(""), false, false, false); if (repl.size()) { /* replace with the current embed state */ SV_UCS4 emark = es.getEmbeddingMarks(0); SEncoder utf8enc; SString str = utf8enc.encode (emark); str.append (repl); for (unsigned int i=0; i= textView.textData.size()) return 0; if (ti.index >= textView.textData.size(ti.line)) return 0; return &(textView.textData.glyphAt (ti)); } /** * Return the visual index of where to caret is pointing from: * returned index is index + 1 */ STextIndex STextEdit::getCaretArrowFrom () { SCursorIndex ci = caret.getCursorIndex(); /* before or after, this, visually */ bool clr = caret.isLR(); SCursorIndex cr = (clr) ? textView.leftOf (ci) : textView.rightOf (ci); if (cr == ci) { bool plr = textView.textData.isLR(ci.textIndex.line); if ((plr && !clr) || (!plr && clr)) { if (textView.textData.isProperLine (cr.textIndex.line)) { return STextIndex(cr.textIndex.line, textView.textData.size(cr.textIndex.line)); } return STextIndex(cr.textIndex.line, textView.textData.size(cr.textIndex.line)+1); } return STextIndex(cr.textIndex.line, 0); } return STextIndex (cr.textIndex.line, cr.textIndex.index+1); } void STextEdit::setSyntax (const SString& hlMode) { textView.setSyntax(hlMode); redraw (); } const SString& STextEdit::getSyntax () const { return textView.getSyntax(); } void STextEdit:: setSyntaxColors (const SSyntaxColors& attr) { textView.setSyntaxColors(attr); } const SSyntaxColors& STextEdit::getSyntaxColors () const { return textView.getSyntaxColors(); } void STextEdit::setWordWrap (bool lbm) { SCursorIndex xy = getCursorIndex(); textView.setWordWrap(lbm); /* extents may change */ notifySlider(); setCursorIndex (xy); setCaretLocationVisible (); redraw (); } bool STextEdit::getWordWrap () const { return textView.getWordWrap(); } void STextEdit::setDocumentEmbedding (SS_Embedding e) { if (textView.textData.getDocumentEmbedding()==e) return; textView.textData.setDocumentEmbedding (e); textView.textData.fireEvent (); updateCaretPosition(); updateCaretLocation(); fireCaretMoved(); window->redraw (true, 0, 0, size.width, size.height); } SS_Embedding STextEdit::getDocumentEmbedding () const { return textView.textData.getDocumentEmbedding(); } /** * Set the direction of the caret. If the direction of * The case is not simpliy SS_DR_L or SS_DR_R, add * necessary extra embedding levels to caret if necessary * direction is different. * @return true if the caret direction was different. */ void STextEdit::setDirection (SS_DR_Dir dir) { STextIndex ti = textView.textData.getTextIndex(); SCursorIndex ci = caret.getCursorIndex(); SEmbedState embed = textView.textData.getEmbedState(ci.textIndex); caret.setEmbedState (embed); if (dir==SS_DR_L || dir==SS_DR_R) { caret.setDirection (dir); caret.setEmbedState (embed); return; } SV_UCS4 v = embed.getEmbeddingMarks(0); SS_UCS4 current = (v.size()) ? v[v.size()-1] : 0; SS_UCS4 needed = 0; switch (dir) { case SS_DR_LE: if (current != SD_CD_LRE) needed = SD_CD_LRE; break; case SS_DR_RE: if (current != SD_CD_RLE) needed = SD_CD_RLE; break; case SS_DR_LO: if (current != SD_CD_LRO) needed = SD_CD_LRO; break; case SS_DR_RO: if (current != SD_CD_RLO) needed = SD_CD_RLO; break; default: break; } if (needed != 0) { v.append (needed); embed.setEmbeddingMarks(v); caret.setEmbedState(embed); } caret.setDirection (dir); return; } /** * get the current direction of the caret. */ SS_DR_Dir STextEdit::getDirection () const { return caret.getDirection(); } /** * return the explicit embed level at cursor */ bool STextEdit::isEmbedStateLR() const { SEmbedState ec = caret.getEmbedState(); SCursorIndex ci = caret.getCursorIndex(); bool isEL = ((ec.getExplicitLevel() % 2)==0); if (ec.getExplicitLevel() == 0) { isEL = textView.textData.isLR(ci.textIndex.line); } return isEL; } /** * Change the direction of the selected text. * If no text is selected insert new direction. * @return true if the direction of cursor succeded, false * if only text embedding has been changed. */ bool STextEdit::changeDirection (SS_DR_Dir dir) { if (isSelecting()) { endSelect (); } /* if we want to change the same emvedding dont do it */ SEmbedState ec = caret.getEmbedState(); SCursorIndex ci = caret.getCursorIndex(); bool skip = false; bool isEL = ((ec.getExplicitLevel() % 2)==0); if (ec.getExplicitLevel() == 0) { isEL = textView.textData.isLR(ci.textIndex.line); } bool isOve = ec.isOverride(); SS_DR_Dir cdir = caret.getDirection(); switch (dir) { case SS_DR_LE: if (isEL&& !isOve) skip = true; if (cdir==dir) skip = true; if (cdir==SS_DR_RE) skip = true; break; case SS_DR_RE: if (!isEL && !isOve) skip = true; if (cdir==dir) skip = true; if (cdir==SS_DR_LE) skip = true; break; case SS_DR_LO: if (isEL && isOve) skip = true; if (cdir==dir) skip = true; if (cdir==SS_DR_RO) skip = true; break; case SS_DR_RO: if (cdir==dir) skip = true; if (!isEL && isOve) skip = true; if (cdir==SS_DR_LO) skip = true; break; default: break; } if (skip && startSelection!=endSelection) { endSelect(); deselectText(); } /* just reset */ if (skip || ((dir == SS_DR_L || dir == SS_DR_R) && startSelection == endSelection)) { /* pop embedding direction and return 1 if * next direction is different. Also lower the * embedding if there is selected text. */ SEmbedState et = textView.textData.getEmbedState(ci.textIndex); if (ec == et) { /* do a loop while we have this state or bigger */ unsigned int i=ci.textIndex.index; SV_UCS4 m0 = ec.getEmbeddingMarks(0); if (m0.size()==0) { setCursorIndex (caret.getCursorIndex()); return true; } /* find the end of this embeding */ while (isetInputMethodProperties (getProperties()); } } /** * Move caret to index. if possible. * @param index is the index to go to. */ void STextEdit::setCursorIndex (const SCursorIndex& index) { STextIndex wanted = index.getTextIndex(); /* get our limitation */ textView.textData.move (wanted); STextIndex real = textView.textData.getTextIndex(); textView.textData.fireEvent(); SCursorIndex realIndex (index); /* wanted is more */ if (wanted != real) { if (real.index == 0) { realIndex = SCursorIndex(real.line, real.index, true); } else { realIndex = SCursorIndex(real.line, real.index-1, false); } } else { realIndex = index; } internalMoveCaret(realIndex); updateCaretLocation (); fireCaretMoved(); notifySlider(); } /** * Internal move caret with all fancy shape settings */ void STextEdit::internalMoveCaret (const SCursorIndex& realIndex) { /* This will make sure it wont blink for a while now */ caret.on (true); column = realIndex.textIndex.index; caret.move (realIndex); bool lr = textView.textData.isLR(realIndex.textIndex); SEmbedState ec = textView.textData.getEmbedState(realIndex.textIndex); caret.setEmbedState (ec); caret.setDirection (lr ? SS_DR_L : SS_DR_R); /* check if previous embed state is different */ /* if this embedding state is different from sorrounding embedding state change cursor shape tu current embedding state. */ unsigned int line = realIndex.textIndex.line; unsigned int max = textView.textData.size(line); STextIndex bbox (line, max); /* if the thind does not move get the paragraph embedding */ SCursorIndex right = textView.rightOf (realIndex); SEmbedState rec = (right == realIndex) ? textView.textData.getEmbedState (bbox) : textView.textData.getEmbedState (right.textIndex); SCursorIndex left = textView.leftOf (realIndex); SEmbedState lec = (left == realIndex) ? textView.textData.getEmbedState (bbox) : textView.textData.getEmbedState (left.textIndex); SV_UCS4 marks = ec.getEmbeddingMarks(0); if ((ec != lec || ec != rec) && marks.size()!=0) { switch(marks[marks.size()-1]) { case SD_CD_LRO: caret.setDirection (SS_DR_LO); break; case SD_CD_RLO: caret.setDirection (SS_DR_RO); break; case SD_CD_LRE: caret.setDirection (SS_DR_LE); break; case SD_CD_RLE: caret.setDirection (SS_DR_RE); break; } } } /** * Encode the glyph with current keymap */ SString STextEdit::encode (const SV_UCS4& v) const { SString ret; if (yuditInput!=0) { ret = yuditInput->encode (v); } return SString(ret); } /** * get rid of embedding marks */ SString STextEdit::cleanEmbed(const SString str) const { SEncoder utf8enc; SV_UCS4 u4 = utf8enc.decode (str); SV_UCS4 res; /* remove direction marks */ for (unsigned int i=0; igetWindowID(); sprintf (arr, "%lu", wid); p.put ("InputWindow", arr); SLocation vl = textView.getLocation(); vl.x = vl.x - (int) SS_LEFT_MARGIN; SDimension vd = textView.getSize(); vd.width = vd.width + (unsigned int) 2 * SS_LEFT_MARGIN; vl.y = vl.y + (int) vd.height; sprintf (arr, "%d,%d", vl.x, vl.y); p.put ("InputStatusLocation", arr); unsigned int statusw = 2 * statusHeight; if (statusw < 48) statusw = 48; sprintf (arr, "%u,%u", statusw, statusHeight); p.put ("InputStatusSize", arr); vl.x = (int) statusw; sprintf (arr, "%d,%d", vl.x, vl.y); p.put ("InputClientLocation", arr); vd.width = vd.width + (unsigned int) 2 * SS_LEFT_MARGIN; if (vd.width > statusw) vd.width = vd.width - statusw; sprintf (arr, "%u,%u", vd.width, statusHeight); p.put ("InputClientSize", arr); } /* add required and optional parameters if any */ if (p["InputStyle"] == SString("preedit-over-status-under")) { SLocation vl = textView.getLocation(); vl.x = vl.x - (int) SS_LEFT_MARGIN; SDimension vd = textView.getSize(); vd.width = vd.width + (unsigned int) 2 * SS_LEFT_MARGIN; vl.y = vl.y + (int) vd.height; sprintf (arr, "%d,%d", vl.x, vl.y); p.put ("InputStatusLocation", arr); sprintf (arr, "%u,%u", vd.width, statusHeight); p.put ("InputStatusSize", arr); } return SProperties (p); } /** * Set X Input Method properties. * This method is called if the default * InputStyle="preedit-over-status-over" * needs to be overridden. * Accepted InputStyles: * preedit-root-status-root * preedit-over-status-over * preedit-over-status-under * preedit-under-status-under * Optional: * InputWindow=id - an integer window id * InputStatusLocation="x,y" - the status position * InputStatusSize="width,height" - the status size * InputClientColor=colorbg,colorfg - input status background,foreground * InputClientLocation="x,y" - the client position * InputClientSize="width,height" - the client size * @param props are the properties. */ void STextEdit::setXIMProperties (const SProperties& props) { ximProperties = props; } ./swidget/SButton.h0000644000175000017500000000572610434025606014264 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SButton_h #define SButton_h #include "swidget/SOpaqueLabel.h" #include "swidget/SPanel.h" #include "swidget/SBorder.h" #include "swindow/SAccelerator.h" class SButtonListener { public: SButtonListener(void); virtual ~SButtonListener(); virtual void enterWindow (void* source); virtual void leaveWindow (void* source); virtual void buttonPressed (void* source, const SAccelerator* acc)=0; }; class SButton : public SPanel, public SAcceleratorListener { public: SButton (const SString& string); SButton (const SString& string, SIcon* icon); SButton (SIcon* icon, const SString& accel); virtual ~SButton (); virtual void redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height); virtual void enterWindow (SWindow* w); virtual void leaveWindow (SWindow* w); void addAccelerator (SWindowListener::SKey k, bool ctrl, bool shift, bool meta); bool addAccelerator (const SString& str); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); virtual void buttonPressed (SWindow * w, int button, int x, int y); virtual void buttonReleased (SWindow * w, int button, int x, int y); virtual void buttonDragged (SWindow * w, int button, int x, int y); virtual void acceleratorPressed (const SAccelerator& a); virtual void acceleratorReleased (const SAccelerator& a); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); void setForeground (const SColor& fg); void setForeground (const SColor& lrfg, const SColor& rlfg); virtual void setBackground (const SColor& bg); void setButtonBackground (const SColor& bg); const SColor& getBackground (); const SColor& getForeground (bool lr); void clip (bool on); void setIcon (SIcon* icon); void setText (const SString& text); void setAlignment (SAlignment _alignment); void setButtonListener (SButtonListener* l); private: void applyAccelerator(); void processLabelText (); void changed(); bool pressed; bool inside; int button; virtual void recalcSize (); SOpaqueLabel label; SBorder border; SColor back; SButtonListener* listener; }; #endif /* SButton_h */ ./swidget/SCaret.h0000644000175000017500000000507410434025606014043 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SCaret_h #define SCaret_h #include "swidget/SComponent.h" #include "stoolkit/SEvent.h" #include "stoolkit/SCharClass.h" #include "stoolkit/SEmbedState.h" #include "stoolkit/SCursorIndex.h" /** * A caret that redraws itself differently for lr and rl text */ class SCaret : public SComponent, public SEventTarget { public: SCaret (void); virtual ~SCaret (); virtual void redraw (SCanvas* canvas, int x, int y, unsigned int width, unsigned int height); void redraw (SCanvas* canvas); void setDirection (SS_DR_Dir direction); SS_DR_Dir getDirection() const; bool isLR() const; void setGlyphIndex (unsigned int position); unsigned int getGlyphIndex () const; virtual void setBackground (const SColor& bg); void setForeground (const SColor& lrfg, const SColor& rlfg); void redraw (); void on (bool ison=true); bool isOn () const; void animate (bool _animate); bool isAnimating() const; STimer* timer; bool timeout (const SEventSource* s); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); virtual void move (const SCursorIndex& index); inline const SEmbedState& getEmbedState() const; inline void setEmbedState(const SEmbedState& ns); inline const SCursorIndex& getCursorIndex () const; protected: bool isSaneSize(); SPen lrpen; SPen rlpen; SS_DR_Dir direction; bool showCaret; bool skipBlink; bool state; SEmbedState embedState; SCursorIndex cursorIndex; }; /** * return the explicit embedding state of this glyph */ const SEmbedState& SCaret::getEmbedState() const { return embedState; } void SCaret::setEmbedState(const SEmbedState& ns) { embedState = ns; } const SCursorIndex& SCaret::getCursorIndex() const { return cursorIndex; } #endif /* SCaret_h */ ./swidget/STextEditLS.cpp0000644000175000017500000000273610434025610015326 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/STextEditLS.h" /** * A generic text editor listener. */ STextEditLS::STextEditLS(void) { } STextEditLS::~STextEditLS() { } void STextEditLS::textChanged (void *source) { } void STextEditLS::textEntered (void *source) { } void STextEditLS::focusOutRequest (void *source) { } void STextEditLS::scrolledHorizontal (void *source, int value) { } void STextEditLS::scrolledVertical (void *source, int value) { } void STextEditLS::inputMethodChanged (void *source, const SString& im) { } void STextEditLS::fontChanged (void *source, const SString& font) { } void STextEditLS::focusChanged (void *source, bool in) { } void STextEditLS::caretMoved (void *source, unsigned int line, unsigned int col, bool before) { } ./swidget/SUndo.cpp0000644000175000017500000000435710434025610014243 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNES 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SUndo.h" /** * Create an undo object. * @param t is one of *
    *
  • SS_Insert
  • *
  • SS_Erase
  • *
  • SS_EraseSelect
  • *
* @param dir is the direction * @param s is the string involved. * @param b is the textindex before the action. * @param a is the textindex after the action. * @param b is the textindex 'before' after the action. */ SUndo::SUndo (SType t, SS_DR_Dir dir, SS_Embedding emb, const SString& s, const SCursorIndex& b, const SCursorIndex& a, const SCursorIndex& ba) { type = t; direction = dir; embedding = emb; string = s; before = b; after = a; beforeAfter = ba; } /** * Copy */ SUndo::SUndo (const SUndo& undo) { direction = undo.direction; embedding = undo.embedding; type = undo.type; string = undo.string; before = undo.before; after = undo.after; beforeAfter = undo.beforeAfter; } SUndo::~SUndo() { } SUndo SUndo::operator = (const SUndo& undo) { direction = undo.direction; embedding = undo.embedding; type = undo.type; string = undo.string; before = undo.before; after = undo.after; beforeAfter = undo.beforeAfter; return *this; } /** * This is from object */ SObject* SUndo::clone () const { return new SUndo(*this); } ./swidget/SEditor.cpp0000644000175000017500000005406110726167526014602 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include #include /** * All editors are like this one. */ SEditor::SEditor(void) { cleared = false; paragBreak = "\n"; editorIF = 0; vimode = false; undoIndex = 0; setup(); } SEditor::SEditor (const SString& lb) { cleared = false; paragBreak = lb; editorIF = 0; vimode = false; undoIndex = 0; setup(); } void SEditor::setup() { inputMethods.append (SS_DEFAULT_IM); inputMethods.append ("unicode"); inputMethods.append (SS_KINPUT2_IM); inputMethods.append ("Hungarian"); inputMethods.append ("Kana"); inputMethods.append ("Hangul"); fonts.append (SS_DEFAULT_FONT); fonts.append ("Bitmap"); fonts.append ("TrueType"); } /** * Copy editor and lose undo's */ SEditor::SEditor (const SEditor& in) { editorIF = in.editorIF; vimode = in.vimode; inputMethods = in.inputMethods; fonts = in.fonts; undoIndex = 0; paragBreak = in.paragBreak; } /** * Copy editor and lose undo's */ SEditor SEditor::operator=(const SEditor& in) { editorIF = in.editorIF; vimode = in.vimode; inputMethods = in.inputMethods; fonts = in.fonts; undoIndex = 0; paragBreak = in.paragBreak; return *this; } SEditor::~SEditor () { } void SEditor::setInterface(SEditorIF* _editorIF) { editorIF = _editorIF; } /** * called when a key has been pressed. */ void SEditor::keyPressed (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta) { if (editorIF == 0) return; if (key == SWindowListener::Key_Shift_R || key==SWindowListener::Key_Meta_L || key==SWindowListener::Key_Meta_R || key==SWindowListener::Key_Control_R || key==SWindowListener::Key_Control_L || key==SWindowListener::Key_Shift_L) { return; } /* Whoops - we did not receive keyrelease */ //Enable selection with SHIFT, // Addition by Maarten van Gompel if (editorIF->isSelecting() && !meta && !shift && !ctrl ) { editorIF->endSelect(); } SString erasedString ; SCursorIndex b = editorIF->getCursorIndex(); SCursorIndex a; SCursorIndex ba; SUndo::SType std; SS_Embedding embd = editorIF->getDocumentEmbedding(); cleared = false; SString lineBreak = paragBreak; if (meta) lineBreak = SS_LB_LS; if (ctrl) lineBreak = SS_LB_FF; /* If there's a selection, erase it first before adding new input*/ if ((key != SWindowListener::Key_F1) && (key != SWindowListener::Key_F2) && (key != SWindowListener::Key_F3) && (key != SWindowListener::Key_F4) && (key != SWindowListener::Key_F5) && (key != SWindowListener::Key_F6) && (key != SWindowListener::Key_F7) && (key != SWindowListener::Key_F8) && (key != SWindowListener::Key_F9) && (key != SWindowListener::Key_F10) && (key != SWindowListener::Key_F11) && (key != SWindowListener::Key_F12) && (key != SWindowListener::Key_Control_R) && (key != SWindowListener::Key_Control_L) && (key != SWindowListener::Key_Meta_R) && (key != SWindowListener::Key_Meta_L) && (key != SWindowListener::Key_Alt_R) && (key != SWindowListener::Key_Alt_L) && (key != SWindowListener::Key_Left) && (key != SWindowListener::Key_Right) && (key != SWindowListener::Key_Up) && (key != SWindowListener::Key_Down) && (key != SWindowListener::Key_Prior) && (key != SWindowListener::Key_Next) && (key != SWindowListener::Key_Home) && (key != SWindowListener::Key_End) && (key != SWindowListener::Key_Escape) && (!ctrl) && (!meta)) { std = SUndo::SS_EraseSelect; STextIndex mba = editorIF->getSelectedIndex(true); ba = SCursorIndex (mba.line, mba.index); erasedString = editorIF->eraseSelectedText(); if (erasedString.size() != 0) { a = editorIF->getCursorIndex(); add (SUndo(std, editorIF->getDirection (), embd, erasedString, b, a, ba)); } } switch (key) { case SWindowListener::Key_Escape: // vi if (vimode) { editorIF->setEditable(!editorIF->isEditable()); } else { editorIF->focusOut(); } return; case SWindowListener::Key_Home: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } if (ctrl || meta) { editorIF->setCursorIndex(SCursorIndex(0,0)); if (editorIF->isSelecting()) { if (meta) { editorIF->selectText (editorIF->getCursorIndex()); } else // ctrl should just go to end without selecting. { editorIF->deselectText(); } } } else { SCursorIndex ti = editorIF->getCursorIndex(); ti.textIndex.index = 0; ti.before = true; editorIF->setCursorIndex(ti); if (editorIF->isSelecting()) { editorIF->selectText (editorIF->getCursorIndex()); } } break; case SWindowListener::Key_End: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } if (ctrl || meta) { editorIF->setCursorIndex(SCursorIndex(100000000,100000000)); if (editorIF->isSelecting()) { if (meta) { editorIF->selectText (editorIF->getCursorIndex()); } else // ctrl should just go to end without selecting. { editorIF->deselectText(); } } } else { SCursorIndex ti = editorIF->getCursorIndex(); ti.textIndex.index = 100000000; ti.before =true; editorIF->setCursorIndex(ti); if (editorIF->isSelecting()) { editorIF->selectText (editorIF->getCursorIndex()); } } break; case SWindowListener::Key_Prior: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } editorIF->pageUp(); return; case SWindowListener::Key_Next: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } editorIF->pageDown(); return; case SWindowListener::Key_Up: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } editorIF->caretUp(); return; case SWindowListener::Key_Down: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } editorIF->caretDown(); return; case SWindowListener::Key_Left: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } editorIF->caretLeft(); return; case SWindowListener::Key_Right: if ((shift || ctrl || meta) && !editorIF->isSelecting()) { editorIF->startSelect(); } editorIF->caretRight(); return; /*SGC*/ case SWindowListener::Key_BackSpace: /* switch - delete a single character */ if (erasedString.size() == 0) { std = SUndo::SS_BackSpaceOne; erasedString = editorIF->backspace(); /* not even used */ ba = editorIF->getCursorIndex(); add (SUndo(std, editorIF->getDirection (), embd, erasedString, b, ba, ba)); } return; case SWindowListener::Key_Delete: /* switch - backspace */ if (erasedString.size() == 0) { std = SUndo::SS_EraseOne; erasedString = editorIF->erase(); /* not even used */ ba = editorIF->getCursorIndex(); add (SUndo(std, editorIF->getDirection (), embd, erasedString, b, ba, ba)); } return; case SWindowListener::Key_Enter: editorIF->insertDirtyText(lineBreak); ba = editorIF->getCursorIndex(); if (cleared) return; a = editorIF->getCursorIndex(); add (SUndo(SUndo::SS_Insert, editorIF->getDirection (), embd, lineBreak, b, a, ba)); break; case SWindowListener::Key_Return: editorIF->insertDirtyText(lineBreak); ba = editorIF->getCursorIndex(); if (cleared) return; a = editorIF->getCursorIndex(); add (SUndo(SUndo::SS_Insert, editorIF->getDirection (), embd, lineBreak, b, a, ba)); break; case SWindowListener::Key_F1: fKey (0, ctrl|shift|meta); break; case SWindowListener::Key_F2: fKey (1, ctrl|shift|meta); break; case SWindowListener::Key_F3: fKey (2, ctrl|shift|meta); break; case SWindowListener::Key_F4: fKey (3, ctrl|shift|meta); break; case SWindowListener::Key_F5: fKey (4, ctrl|shift|meta); break; case SWindowListener::Key_F6: fKey (5, ctrl|shift|meta); break; case SWindowListener::Key_F7: fKey (6, ctrl|shift|meta); break; case SWindowListener::Key_F8: fKey (7, ctrl|shift|meta); break; case SWindowListener::Key_F9: fKey (8, ctrl|shift|meta); break; case SWindowListener::Key_F10: fKey (9, ctrl|shift|meta); break; case SWindowListener::Key_F11: fKey (10, ctrl|shift|meta); break; case SWindowListener::Key_F12: fKey (11, ctrl|shift|meta); break; case SWindowListener::Key_B: case SWindowListener::Key_b: if (ctrl|meta) { if (ctrl && editorIF->isSelecting()) editorIF->endSelect(); editorIF->pageUp (); break; } case SWindowListener::Key_c: if (ctrl|meta) { if (editorIF->isSelecting()) editorIF->endSelect(); return; /* Automatic copy */ } /* This is used with accelerator anyway - this is never called here */ case SWindowListener::Key_Y: case SWindowListener::Key_y: if (ctrl|meta) { editorIF->setDirection (SS_DR_L); break; } case SWindowListener::Key_D: case SWindowListener::Key_d: if (ctrl|meta) { if (editorIF->getDirection () != SS_DR_RO) { editorIF->setDirection (SS_DR_RO); } else { editorIF->setDirection (SS_DR_LO); } break; } /* This is used with accelerator anyway - this is never called here */ case SWindowListener::Key_E: case SWindowListener::Key_e: if (ctrl|meta) { if (editorIF->getDirection () != SS_DR_RE) { editorIF->setDirection (SS_DR_RE); } else { editorIF->setDirection (SS_DR_LE); } break; } case SWindowListener::Key_F: case SWindowListener::Key_f: if (ctrl|meta) { if (ctrl && editorIF->isSelecting()) editorIF->endSelect(); editorIF->pageDown (); break; } case SWindowListener::Key_H: case SWindowListener::Key_h: if (ctrl|meta) { if (ctrl && editorIF->isSelecting()) editorIF->endSelect(); editorIF->caretLeft (); break; } case SWindowListener::Key_J: case SWindowListener::Key_j: case SWindowListener::Key_N: case SWindowListener::Key_n: if (ctrl||meta) { if (ctrl && editorIF->isSelecting()) editorIF->endSelect(); editorIF->caretDown (); break; } case SWindowListener::Key_K: case SWindowListener::Key_k: if (ctrl|meta) { if (ctrl && editorIF->isSelecting()) editorIF->endSelect(); editorIF->caretUp (); break; } case SWindowListener::Key_L: case SWindowListener::Key_l: if (ctrl||meta) { if (ctrl && editorIF->isSelecting()) editorIF->endSelect(); editorIF->caretRight (); break; } case SWindowListener::Key_M: case SWindowListener::Key_m: if (ctrl) { editorIF->endSelect(); editorIF->setCursorIndex(SCursorIndex(b.textIndex.line, 0)); STextIndex mba = editorIF->getIndexAfterLineBreak (); ba = SCursorIndex (mba.line, mba.index); erasedString = editorIF->eraseText(mba); if (cleared) return; if (erasedString.size() != 0) { a = editorIF->getCursorIndex(); add (SUndo(SUndo::SS_Erase, editorIF->getDirection (), embd, erasedString, b, a, ba)); } break; } case SWindowListener::Key_R: case SWindowListener::Key_r: if (ctrl) { redo (); break; } case SWindowListener::Key_U: case SWindowListener::Key_u: if (ctrl) { undo (); break; } case SWindowListener::Key_v: if (ctrl) { if (editorIF->isSelecting()) editorIF->endSelect(); pasteText(b); return; } case SWindowListener::Key_V: if (ctrl|meta) { if (editorIF->isSelecting()) editorIF->endSelect(); pasteText (b); return; } case SWindowListener::Key_X: case SWindowListener::Key_x: if (ctrl | meta) { /* switch - delete */ std = SUndo::SS_EraseSelect; STextIndex mba = editorIF->getSelectedIndex(true); erasedString = editorIF->eraseSelectedText(); if (cleared) return; if (erasedString.size() != 0) { a = editorIF->getCursorIndex(); add (SUndo(std, editorIF->getDirection (), embd, erasedString, b, a, ba)); } break; } case SWindowListener::Key_Send: default: if (vimode && key != SWindowListener::Key_Send && s == ":" && !editorIF->isEditable()) { /* push the focus to the command window. */ editorIF->focusOut(); break; } SEncoder enc; SV_UCS4 ustr = enc.decode(s); while (ustr.size() && editorIF->addComposing(ustr[0])) { std = SUndo::SS_ComposeOne; a = editorIF->getCursorIndex(); SS_UCS4 u4 = ustr[0]; /* hack, string stores u4 */ add (SUndo(std, editorIF->getDirection (), embd, SString((char*)&u4, sizeof (u4)), a, a, a)); ustr.remove (0); } SString sstr = enc.encode (ustr); if (sstr.size()) { b = editorIF->getCursorIndex(); editorIF->insertDirtyText(sstr); ba = editorIF->getCursorIndex(); a = editorIF->getCursorIndex(); add (SUndo(SUndo::SS_Insert, editorIF->getDirection (), embd, sstr, b, a, ba)); } else /* to update glyph info */ { a = editorIF->getCursorIndex(); editorIF->setCursorIndex(a); } } } /** * called when a key was released. */ void SEditor::keyReleased (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta) { if (editorIF == 0) return; if (key==SWindowListener::Key_Meta_R || key == SWindowListener::Key_Meta_L || key == SWindowListener::Key_Alt_R || key==SWindowListener::Key_Alt_L || key == SWindowListener::Key_Control_L||key==SWindowListener::Key_Control_R || key == SWindowListener::Key_Shift_R || key==SWindowListener::Key_Shift_L) { editorIF->endSelect(); return; } } /** * called when a mouse button was pressed. */ void SEditor::buttonPressed (int button, const SCursorIndex& index) { if (editorIF == 0) return; editorIF->deselectText(); if (button == 1) { pasteText(editorIF->getCursorIndex()); return; } /*mousewheel*/ if (button == 4) { editorIF->caretDown(); } else if (button == 3) { editorIF->caretUp(); } else { editorIF->setCursorIndex (index); editorIF->startSelect(); } } /** * paste a text ftom clip */ void SEditor::pasteText (const SCursorIndex& index) { if (editorIF == 0) return; editorIF->deselectText(); editorIF->setCursorIndex(index); SCursorIndex b = index; /* stop input methods */ editorIF->insertClipboardText(); SCursorIndex ba = editorIF->getCursorIndex(); SString s = editorIF->getText (b.getTextIndex(), ba.getTextIndex()); SCursorIndex a = editorIF->getCursorIndex(); add (SUndo(SUndo::SS_Insert, editorIF->getDirection (), editorIF->getDocumentEmbedding(), s, b, a, ba)); } /** * Set clean text. */ void SEditor::insertText (const SString& text) { if (editorIF == 0) return; editorIF->deselectText(); SCursorIndex b = editorIF->getCursorIndex(); editorIF->insertText(text); SCursorIndex ba = editorIF->getCursorIndex(); SString s = text; SCursorIndex a = editorIF->getCursorIndex(); add (SUndo(SUndo::SS_Insert, editorIF->getDirection (), editorIF->getDocumentEmbedding(), s, b, a, ba)); } /** * called when a mouse button was released. */ void SEditor::buttonReleased (int button, const SCursorIndex& index) { if (editorIF == 0) return; if (button == 1) { return; } editorIF->selectText (index); editorIF->endSelect (); } /** * called when a mouse button was dragged. */ void SEditor::buttonDragged (int button, const SCursorIndex& index) { if (button == 1) { return; } if (editorIF == 0) return; editorIF->selectText (index); } /** * called when a mouse button was nulti-clicked. * It can come only if button was already released. */ void SEditor::multiClicked (int button, const SCursorIndex& index, int count) { if (editorIF == 0) return; if (button == 1) { return; } editorIF->selectText (index); editorIF->endSelect (); if (count == 2) { editorIF->selectWord (); } else if (count > 2) { editorIF->selectLine (); } } /** * This sets a set of input methods that can be activated with F1-F12. */ void SEditor::setInputMethods (const SStringVector& in) { inputMethods = in; } /** * set editor mode. */ void SEditor::setVI (bool vi) { vimode = vi; } /** * This sets a set of fonts that can be activated with F1-F12. */ void SEditor::setFonts (const SStringVector& in) { fonts = in; } /** * An FKEY was pressed. * @param num *
    *
  • F1 - 0
  • *
  • F2 - 1
  • *
  • Fn - n-1
  • *
*/ void SEditor::fKey(int num, bool ctrl) { if (ctrl) { if (fonts.size() >= (unsigned int) num+1) { editorIF->setFont(fonts[num]); } } else { if (inputMethods.size() >= (unsigned int) num+1) { editorIF->setInputMethod(inputMethods[num]); } } } /** * Try to undo * @return false in case it can not be undone. */ bool SEditor::undo() { //fprintf (stderr, "undo\n"); if (editorIF == 0) return false; /* clear state should be visible */ if (editorIF->clearState()) return true; if (undoIndex == 0) { //fprintf (stderr, "SEditor::nothing to undo - undoindex\n"); return false; } if (!editorIF->isEditable()) { return false; } if (editorIF->isSelecting()) { // fprintf (stderr, "SEditor::can not undo while selecting.\n"); return false; } undoIndex--; SUndo u = undoBuffer[undoIndex]; //fprintf (stderr, "Undo:%d.\n", u.type); switch (u.type) { case SUndo::SS_Insert: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.beforeAfter); editorIF->eraseText (u.before.getTextIndex()); editorIF->setDirection(u.direction); break; case SUndo::SS_Erase: case SUndo::SS_EraseOne: case SUndo::SS_BackSpaceOne: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.beforeAfter); editorIF->setCursorIndex(u.after); editorIF->insertText(u.string, false); editorIF->setCursorIndex(u.before); break; case SUndo::SS_ComposeOne: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.after); editorIF->setDirection(u.direction); editorIF->removeComposing(); editorIF->setCursorIndex(u.after); editorIF->setDirection(u.direction); /* compose does not move caret */ break; case SUndo::SS_EraseSelect: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.after); editorIF->insertText(u.string, false); editorIF->startSelect(); /* this is the sleection spot */ editorIF->selectText(u.after); editorIF->endSelect(); editorIF->setCursorIndex(u.after); break; } return true; } /** * Try to redo * @return false in case it can not be undone. */ bool SEditor::redo() { //fprintf (stderr, "redo\n"); if (editorIF == 0) return false; editorIF->clearState(); if (undoIndex == undoBuffer.size()) { //fprintf (stderr, "SEditor::redo ends here.\n"); return false; } if (!editorIF->isEditable()) return false; if (editorIF->isSelecting()) { //fprintf (stderr, "SEditor::can not redo while selecting.\n"); return false; } SUndo u = undoBuffer[undoIndex]; undoIndex++; //fprintf (stderr, "redo:%d.\n", u.type); switch (u.type) { case SUndo::SS_Insert: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.before); editorIF->insertText(u.string, false); break; case SUndo::SS_Erase: case SUndo::SS_EraseSelect: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.after); editorIF->eraseText(u.beforeAfter.getTextIndex()); break; case SUndo::SS_BackSpaceOne: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.before); editorIF->backspace(); break; case SUndo::SS_EraseOne: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.before); editorIF->erase(); break; case SUndo::SS_ComposeOne: editorIF->setDocumentEmbedding(u.embedding); editorIF->setCursorIndex(u.after); editorIF->setDirection(u.direction); { const SS_UCS4* u4 = (const SS_UCS4*) u.string.array(); editorIF->addComposing(u4[0]); editorIF->setCursorIndex(u.after); } break; } return true; } /** * add an item to undo buffer * @param u is the new item. * TODO: clear buffer after some size. */ void SEditor::add (const SUndo& u) { if (undoBuffer.size() != undoIndex) { if (undoIndex==0) { undoBuffer.clear(); } else { undoBuffer.truncate(undoIndex); } undoIndex = undoBuffer.size(); } undoBuffer.append (u); undoIndex++; } /** * clear the undo buffer. */ void SEditor::clearUndo() { undoBuffer.clear(); undoIndex = 0; } void SEditor::clear () { cleared = true; vimode = false; undoIndex = 0; undoBuffer.clear(); } void SEditor::setParagraphSeparator (const SString& _paragBreak) { paragBreak = _paragBreak; } SString SEditor::getParagraphSeparator () const { return SString (paragBreak); } ./swidget/SSlider.h0000644000175000017500000000551410434025606014226 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SSlider_h #define SSlider_h #include "swidget/SPanel.h" #include "swidget/SFrame.h" #include "swidget/SBorder.h" class SSliderComponent : public SComponent { public: SSliderComponent (void); virtual ~SSliderComponent(); virtual void redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height); virtual void redraw(SWindow* w); virtual void setBackground (const SColor& bg); private: SColor lighter; SColor darker; }; class SSlider : public SPanel { public: SSlider (void); ~SSlider (); /** * These methods are not the preferred way to interact with a slider. * the preferred way is the automatic interaction. */ void set (int value, unsigned int step, unsigned int page, unsigned int max, bool vertical=false); void slide (int value, bool vertical=false); void set (const SLocation& value, const SDimension& step, const SDimension &page, const SDimension& max); void slide (const SLocation& value); SLocation getValue() const; virtual void redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height); virtual void resize (const SDimension& d); virtual void buttonPressed (SWindow * w, int button, int x, int y); virtual void buttonReleased (SWindow * w, int button, int x, int y); virtual void buttonDragged (SWindow * w, int button, int x, int y); virtual void setBackground (const SColor& bg); virtual void setSliderBackground (const SColor& bg); /* This is from SSliderListener */ virtual void valueChanged (SSlidable* slidable, SSlideType type); /* This is from component */ virtual SSlidable* setSliderListener (SSliderListener* l); private: SColor sliderBackground; void recalculateGeometry(); void setSliderGeometry (SLocation l, SDimension d); void clip (bool on); void slide(bool notify); void page (int count); SSlidable slidable; SSliderListener* listener; SLocation dragPoint; bool dragOK; /* subcomponents */ SBorder border; SSliderComponent slider; }; #endif /* SSlider_h */ ./swidget/SPanel.cpp0000644000175000017500000002647411326775457014427 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SPanel.h" #include #include SAwt* SPanel::awt=0; int SPanel::count=0; static int doubleBufferEnabled = true; void SPanel::setAllDoubleBuffered (bool yes) { doubleBufferEnabled = yes; } // default is true, this can turn it on/off void SPanel::setThisDoubleBuffered (bool yes) { window->setDoubleBuffer (yes); } SPanel::SPanel (void) : SComponent () { modalParent = 0; count++; if (count == 1) { awt = new SAwt(); } window = awt->getWindow (this, "Yudit"); window->setDoubleBuffer (doubleBufferEnabled); size = SDimension (window->getWidth(), window->getHeight()); location = SLocation (window->getPositionX(), window->getPositionY()); resizeTimer = 0; dropListener = 0; hasParent = false; layoutOK = true; } SPanel::~SPanel () { count--; if (count == 0) { delete awt; } cleanup (); delete window; if (resizeTimer) delete resizeTimer; resizeTimer = 0; } void SPanel::cleanup () { dropListener = 0; unsigned int i; for (i=0; iredraw(w, x, y, width, height); } } /** * SWindowListener */ void SPanel::keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { for (unsigned int i=0; ikeyPressed (key, s, ctrl, shift, meta); } } void SPanel::keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { for (unsigned int i=0; ikeyReleased (key, s, ctrl, shift, meta); } } void SPanel::buttonPressed (SWindow * w, int button, int x, int y) { for (unsigned int i=0; ibuttonPressed (button, SLocation (x, y)); } } void SPanel::buttonReleased (SWindow * w, int button, int x, int y) { for (unsigned int i=0; ibuttonReleased (button, SLocation (x, y)); } } void SPanel::buttonDragged (SWindow * w, int button, int x, int y) { for (unsigned int i=0; ibuttonDragged (button, SLocation (x, y)); } } /** * notification that window got resized. */ void SPanel::resized (SWindow* w, int x, int y, unsigned int width, unsigned int height) { /* nothing to do - we did it already...*/ if (width == getSize().width && height == getSize().height) { SLocation lme = SLocation (window->getPositionX(), window->getPositionY()); SComponent::move (lme); return; } /* you reach this point because window manager changed our size */ if (hasParent) { // to update window sizes we do this. //_resized (); bool needed = size.width != width|| size.height != height; // Mystery. If there are many resize request in X11 queue, // we might not get the latest honoured. if (needed) { //fprintf (stderr, "Forcing re-resize %u,%u.\n", size.width, size.height); window->resize (size.width, size.height); window->redraw (true, 0, 0, size.width, size.height); } return; } if (!window->isShown() || !window->isVisible ()) { _resized (); return; } // if we dont resize right away it will cause redrawing artefacts // when window is resized vertically. #ifdef USE_WINAPI _resized (); return; #else /* * Resize after 100 ms. */ if (resizeTimer) { return; } resizeTimer = STimer::newTimer(100, this); #endif } bool SPanel::timeout (const SEventSource* s) { if (!resizeTimer) return false; delete resizeTimer; resizeTimer = 0; //if (hasParent) return false; _resized (); return false; } /** * Set the size tothe current window size. */ void SPanel::_resized () { SDimension dme = SDimension (window->getWidth(), window->getHeight()); SLocation lme = SLocation (window->getPositionX(), window->getPositionY()); /* if this came from a timer this may be different */ SComponent::resize (dme); SComponent::move (lme); for (unsigned int i=0; ilayout.isEmpty()) { //fprintf (stderr, "Empty Layout!\n"); continue; } SLocation l = p->layout.getLocation (layout, dme); SDimension d = p->layout.getDimension (layout, dme); d = d.maximize (SDimension (15000, 15000)); d = d.minimize (SDimension (2, 2)); l = l.maximize (SLocation (15000, 15000)); l = l.minimize (SLocation (-15000, -15000)); p->move (l); p->resize (d); /* Noo need for this but some stupido widgets set this wrong. TODO: I will check later */ p->layoutOK = true; } layoutOK = true; } /** * This is SWindowListener implementation */ bool SPanel::windowClose (SWindow* w) { cleanup(); return true; } /** * Add a new component. * This component will be destroyed by the panel. * @param comp is the component to add. */ void SPanel::add (SComponent* comp) { children.append (comp); comp->setWindowInterface (this); SSlidable* slidable = comp->setSliderListener(this); if (slidable) { slidables.append (slidable); slidableComponents.append (comp); } } /** * Add a new component. * This panel will be destroyed by the panel. * @param panel is the component to add. */ void SPanel::add (SPanel* panel) { panel->hasParent = true; containers.append (panel); SLayout oldLayout = layout; layout += panel->layout; SDimension minimumSize = layout.getDimension (); if (layout != oldLayout) { //setMinimumSize (minimumSize); } SWindow *child = panel->window; child->setParent (window, panel->getLocation().x, panel->getLocation().y); SSlidable* slidable = panel->setSliderListener(this); if (slidable) { slidables.append (slidable); slidableComponents.append (panel); } panel->window->show(); layoutOK = false; //panel->show(); } /** * should be called after all layout is set */ void SPanel::setMinimumSize (const SDimension& minimumSize) { window->setMinimumSize (minimumSize.width, minimumSize.height); } /** * This is the SWindowInterface * @return this window */ SWindow* SPanel::getComponentWindow () { return window; } /** * Resize the component. This should have immediate effect on size. * @param d is the new size */ void SPanel::resize(const SDimension& d) { bool needed = window->getWidth() != d.width||window->getHeight() != d.height; if (needed) { /* this will generate an event if really needed. */ window->resize (d.width, d.height); _resized (); } else if (d != size) /* never happens */ { _resized (); } } /** * Resize the component. This should have immediate effect on size. * @param l is the new location */ void SPanel::move(const SLocation& l) { bool needed = window->getPositionX() != l.x || window->getPositionY() != l.y; if (needed) { window->move (l.x, l.y); _resized (); } else if (l != getLocation()) /* never happens */ { _resized (); } } void SPanel::setBackground (const SColor& bg) { SComponent::setBackground(bg); window->setBackground (bg); unsigned int i; for (i=0; isetBackground (bg); } for (i=0; isetBackground (bg); } } void SPanel::lostKeyboardFocus (SWindow* w) { } void SPanel::gainedKeyboardFocus (SWindow* w) { } void SPanel::lostClipSelection (SWindow* w) { } void SPanel::forceLayout (const SLayout& _layout) { layout = _layout; if (layout == _layout) return; layoutOK = false; } void SPanel::setTitle (const SString& title) { window->setTitle(title); } void SPanel::valueChanged (SSlidable* slidable, SSlideType type) { /* notify everybody except this one. */ for (unsigned int i=0; ivalueChanged (slidable, type); } } /** * Listener! */ bool SPanel::drop (SWindow* w, const SString& mimetype, const SString& data) { if (dropListener) return dropListener->dropped (this, mimetype, data); return false; } void SPanel::setDropListener (SDropListener*ls, const SStringVector& mimes) { dropListener = ls; window->setDroppable (mimes); } SDropListener::SDropListener(void) { } SDropListener::~SDropListener() { } /** * Adjust the layout of all children, asssuming their layout were * calculated using original dimension as parent. * This is the preferred way to set a new layout. * Don't do anything with children layout unless this layout is set. * @param original is the original layout. */ void SPanel::setLayout (const SLayout& _layout) { /* nothing to do. */ if (layout.isEmpty ()) { layout = _layout; layoutOK = false; return; } if (layout == _layout && isLayoutOK()) return; /* new dimension */ /* adjust containers - set their new layout */ for (unsigned int i=0; ilayout.isEmpty()) { //fprintf (stderr, "Empty Layout!\n"); continue; } SLayout newlayout = p->layout; newlayout.setLayout (layout, _layout); p->setLayout (newlayout); } layout = _layout; layoutOK = false; } void SPanel::setModal (SPanel* _parent, bool decorated) { if (_parent) { window->setModal (_parent->window, decorated); } else { window->setModal (0, decorated); } modalParent = _parent; } /** * Pop up the window */ void SPanel::show() { window->show(); } /** * Pop down the window */ void SPanel::hide() { window->hide(); } void SPanel::center () { window->center ((modalParent==0)?0:modalParent->window); } void SPanel::wait () { window->wait(); } bool SPanel::isShown() { return window->isShown(); } const SLayout& SPanel::getLayout () const { return layout; } /** * Traverse children and figure out if layout is ok * A alyout is ok if the resize already worked and there is no * layout change. * If one of them is false return false. * Skip children with no layout. */ bool SPanel::isLayoutOK() const { bool isOK = layoutOK; if (!isOK) return false; for (unsigned int i=0; ilayout.isEmpty()) continue; if (!p->isLayoutOK()) { return false; } } return true; } ./swidget/SUniPrint.cpp0000644000175000017500000002140410726164413015107 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SString.h" #include "swindow/SPrinter.h" #include "swidget/STextView.h" #include "swidget/SUniPrint.h" /** * This is a stoolkit printer. * Currently it only prints on A4 portrait. */ SUniPrint::SUniPrint (const SPrinter& _printer, const SString& headerFontName, double headerFontSize, const SString& bodyFontName, double bodyFontSize) : printer (_printer) { pageCount = 0; printheader = (headerFontSize > 1.0); SLocation l = SLocation (printer.getX(), printer.getY()); SDimension d = SDimension (printer.getWidth(), printer.getHeight()); headerLeft.setFont (headerFontName, headerFontSize); headerCenter.setFont (headerFontName, headerFontSize); headerRight.setFont (headerFontName, headerFontSize); int headerHeight = (int)headerCenter.lineHeight; int gap0 = 20; // Between top and header. int gap1 = 10; // between header and body int gap2 = 20; // between bottom and body end. body.setFont (bodyFontName, bodyFontSize); SLocation hl = SLocation (l.x, l.y + gap0); SDimension hd (d.width, headerHeight); /* we will move and resize them again later. now they are max wide.*/ headerLeft.resize(hd); headerLeft.move (hl); headerLeft.setMultiline (false); headerCenter.resize(hd); headerCenter.move (hl); headerCenter.setMultiline (false); headerRight.resize(hd); headerRight.move (hl); headerRight.setMultiline (false); SLocation bl = SLocation (hl.x, hl.y + (int) hd.height + gap1); int bodyHeight = (int) d.height-bl.y-gap2; if (bodyHeight < (int)body.lineHeight) { fprintf (stderr, "Too large font.\n"); pageHeight = body.lineHeight; } else /* should be multiples of lineheight. */ { pageHeight = body.lineHeight * (bodyHeight/body.lineHeight+1); } if (pageHeight<2) pageHeight=2; body.move (bl); // This -1 should be in sync with STextView.cpp. This is all because // we have an extra line if our sizes are exact. SDimension bd (d.width, pageHeight-1); body.resize (bd); body.setPrinterPageSize (pageHeight); } SUniPrint::~SUniPrint() { } unsigned int SUniPrint::getPageCount () const { return pageCount; } /** * print. * @param header will be displayed on thee header * @param buffer will be the data to print * @param evt true = handle events */ bool SUniPrint::print (const SString& header, const SString& buffer, bool evt) { pageCount = 0; if (!printer.open(evt)) return false; SString dt = printer.getCreationDate (); //fprintf (stderr, "DATE=%*.*s\n", SSARGS(dt)); headerLeft.setText(dt); body.setText (buffer); /* FIXME: break it into pages, and set the viewport */ /* first print to cache. */ /* cahce the top line */ SLocation l (body.getLocation().x, body.getLocation().y); SDimension d = body.getSize(); if (!printer.newpath (l.x, l.y, "UPPERLINE")) { printer.moveto (l.x, l.y-9); printer.lineto (l.x + (int)d.width, l.y-9); printer.lineto (l.x + (int)d.width, l.y-8); printer.lineto (l.x, l.y-8 ); printer.closepath (); } printer.fill (); SDimension ld = headerLeft.getPreferredSize (); headerLeft.resize (ld); /* left can be drawn already */ if (printheader) { headerLeft.redraw (&printer, headerLeft.getLocation().x, headerLeft.getLocation().y, headerLeft.getSize().width, headerLeft.getSize().height); } unsigned int pmaMax = 1; /** * go through body and right */ unsigned int heightCount = 0; while (heightCount < body.getDocumentHeight()) { printer.newPage(); body.redraw (&printer, body.getLocation().x, body.getLocation().y, body.getSize().width, body.getSize().height); pageCount++; char a[64]; /* we are not much off using current page */ sprintf (a, "Page %u of %u", pageCount, pageCount); headerRight.setText (a); SDimension rd = headerRight.getPreferredSize (); headerRight.resize (rd); if (printheader) { headerRight.redraw (&printer, headerRight.getLocation().x, headerRight.getLocation().y, headerRight.getSize().width, headerRight.getSize().height); } if (rd.width > pmaMax) pmaMax = rd.width; heightCount += pageHeight; body.setViewPort (SLocation (0, -(int) heightCount)); } /* nove we have the maximum size of right header */ headerRight.resize (SDimension ((unsigned int) pmaMax, headerRight.getSize().height)); /* now lets see how much is left for the center guy */ int full = (int) body.getSize().width; int center = full - (int) pmaMax - (int)ld.width; if (center < 0) center = 1; if (printheader && header.size()) { SString testBegin = "file:"; SString testEnd = header; testBegin.append (testEnd); headerCenter.setText (testBegin); SDimension cd = headerCenter.getPreferredSize(); /* reduce it */ if ((int)cd.width > center) { testEnd.insert (0, "..."); } /* remove glyphs till it fits. */ while ((int)cd.width > center && testEnd.size()>3) { testEnd.remove (3); testBegin = "file:"; testBegin.append (testEnd); headerCenter.setText (testBegin); cd = headerCenter.getPreferredSize(); } headerCenter.resize (cd); /* poor man's centering */ //fprintf (stderr, "center=%u cd=%u\n", center, cd.width); //fprintf (stderr, "full=%u pmamax=%u ldwidth=%u\n", full, pmaMax, ld.width); headerCenter.move (SLocation ( body.getLocation().x + (int)ld.width + ((int)center - (int)cd.width)/2, headerCenter.getLocation().y)); if (printheader) { headerCenter.redraw (&printer, headerCenter.getLocation().x, headerCenter.getLocation().y, headerCenter.getSize().width, headerCenter.getSize().height); } } /*----- print - really using cached images ------------ */ printer.cacheOn (false); unsigned int fullPageCount = pageCount; pageCount = 0; body.setViewPort (SLocation (0, 0)); heightCount = 0; while (heightCount < body.getDocumentHeight()) { /* upper line */ printer.newPage(); if (printheader) { printer.newpath (l.x, l.y, "UPPERLINE"); printer.fill(); } /* body */ body.redraw (&printer, body.getLocation().x, body.getLocation().y, body.getSize().width, body.getSize().height-1); /* left */ if (printheader) { headerLeft.redraw (&printer, headerLeft.getLocation().x, headerLeft.getLocation().y, headerLeft.getSize().width, headerLeft.getSize().height); } /* center */ if (printheader && header.size()) { headerCenter.redraw (&printer, headerCenter.getLocation().x, headerCenter.getLocation().y, headerCenter.getSize().width, headerCenter.getSize().height); } /* right aligned header */ pageCount++; char a[64]; sprintf (a, "Page %u of %u", pageCount, fullPageCount); headerRight.setText (a); SDimension rd = headerRight.getPreferredSize (); //fprintf (stderr, "Right ps=%u %u\n", rd.width, rd.height); headerRight.move ( SLocation ( full - (int)rd.width + body.getLocation().x, headerRight.getLocation().y ) ); headerRight.resize (SDimension (rd.width, rd.height)); if (printheader) { headerRight.redraw (&printer, headerRight.getLocation().x, headerRight.getLocation().y, headerRight.getSize().width, headerRight.getSize().height); } heightCount += pageHeight; body.setViewPort (SLocation (0, -(int) heightCount)); } headerLeft.textData.clear(); headerRight.textData.clear(); headerCenter.textData.clear(); body.textData.clear(); //fprintf (stderr, "closing printer...\n"); bool status = printer.close(); //fprintf (stderr, "closed printer...\n"); return status; } void SUniPrint::setLineEndMark (bool brk) { body.setLineEndMark (brk); } void SUniPrint::setWordWrap (bool brk) { body.setWordWrap (brk); } void SUniPrint::setDocumentEmbedding (SS_Embedding e) { body.textData.setDocumentEmbedding (e); } bool SUniPrint::hasNative () { return printer.hasNative(); } ./swidget/SIcon.h0000644000175000017500000000272010434025606013670 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SIcon_h #define SIcon_h #include "swidget/SComponent.h" #include "stoolkit/SEvent.h" /** * A caret that redraws itself differently for lr and rl text */ class SIcon : public SComponent { public: SIcon (const SImage& image); SIcon (const SString& image); virtual ~SIcon (); virtual void redraw (SCanvas* canvas, int x, int y, unsigned int width, unsigned int height); virtual void setBackground (const SColor& bg); void redraw (SCanvas* canvas); static void put (const SString& name, const SImage& image); static void remove (const SString& name); static bool exists (const SString& name); const SImage& getImage () const; protected: SImage image; }; #endif /* SIcon_h */ ./swidget/STextTable.cpp0000644000175000017500000001336510434025610015231 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/STextTable.h" STextTable::STextTable (const SStringVector& titles) { SPanel::forceLayout (SLayout(SDimension(2000,2000))); listener = 0; lastSelected = -1; SLabel *l = 0; STextList *tl = 0; for (unsigned int i=0; isetListListener (this); l->setAlignment (SD_Center); } slider = new SSlider(); add (slider); recalc(); } STextTable::~STextTable () { } void STextTable::setText (const SStringTable& t) { table = t; for (unsigned int i=0; isetText (table[i]); } } bool STextTable::selectText (const SString& s, unsigned int column) { SStringVector sl = table [column]; for (unsigned int i=0; iselectItem (item); } return ret; } void STextTable::setListListener (SListListener* l) { listener = l; } void STextTable::setBackground (const SColor& bg) { SPanel::setBackground (bg); border.setBackground (bg); } void STextTable::setLabelForeground (const SColor& fg) { for (unsigned int i=0; isetForeground (fg); } } void STextTable::setSliderBackground (const SColor& bg) { slider->setSliderBackground (bg); } void STextTable::setFont (const SString& font, double fontSize) { for (unsigned int i=0; isetFont (font, fontSize); textLists[i]->setFont (font, fontSize); } recalc (); } void STextTable::setFontSize (double fontSize) { for (unsigned int i=0; isetFontSize (fontSize); textLists[i]->setFontSize (fontSize); } recalc (); } int STextTable::getLastSelected () { return lastSelected; } void STextTable::itemSelected (void* source, const SAccelerator* acc) { STextList* listSource = (STextList*) source; lastSelected = listSource->getLastSelected(); for (unsigned int i=0; iselectItem (lastSelected); } if (listener) listener->itemSelected (this, acc); } void STextTable::itemHighlighted (void* source, int item) { STextList* listSource = (STextList*) source; for (unsigned int i=0; iselectItem (item); } } void STextTable::resize(const SDimension& d) { border.resize(d); SPanel::resize (d); } void STextTable::redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height) { //SPanel::redraw (canvas, x, y, width, height); border.redraw(canvas, x, y, width, height); } /** * recalculate the Layout of each comonent * preferredSize should be calculated before calling. */ void STextTable::recalc() { unsigned int w = 20; unsigned int i; for (i=0; igetPreferredSize().width; } unsigned int h = topLabels[0]->getPreferredSize().height; preferredSize = SDimension (w + 4, h * 2 + 4); SDimension d = preferredSize; unsigned int sliderWidth = 20; unsigned int lh = topLabels[0]->getPreferredSize().height; SDimension bd = border.getBorderSize(); unsigned int fullWidth = 0; for (i=0; igetPreferredSize().width; } SDimension estate; estate = d - (bd * 2); if (estate.width > sliderWidth) estate.width -= sliderWidth; unsigned int widthCount = 0; unsigned int current = 0; for (i=0; igetPreferredSize().width; current = (current * estate.width)/fullWidth; if (current == 0) current = 2; topLabels[i]->setLayout ( SLayout ( SLocation (widthCount + bd.width, bd.height), SLocation (widthCount + current + bd.width, bd.height + lh), SLocation (widthCount * 100 / estate.width, 0), SLocation ((widthCount + current) * 100 / estate.width, 0) ) ); textLists[i]->setLayout ( SLayout ( SLocation (widthCount + bd.width, bd.height + lh), SLocation (widthCount + current + bd.width, d.height + bd.height), SLocation (widthCount * 100 / estate.width, 0), SLocation ((widthCount + current) * 100 / estate.width, 100) ) ); widthCount += current; } slider->setLayout ( SLayout ( SLocation (estate.width + bd.width, lh+(int)bd.height), SLocation (d.width-(int)bd.width, d.height + bd.height), SLocation (100, 0), SLocation (100, 100) ) ); /* save current */ SLayout goodlayout = layout; /* pretend we have this layout */ forceLayout (preferredSize); /* accept old layout */ setLayout (goodlayout); } ./swidget/SFreeHand.cpp0000644000175000017500000003224210434025610015004 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SFreeHand.h" #include "swidget/SIcon.h" #include "swidget/SIconFactory.h" #include "stoolkit/SUtil.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SIO.h" #define SS_LEFT_MARGIN 2 static SString SD_NOT_FOUND("???"); SFreeHandListener::SFreeHandListener(void) { } SFreeHandListener::~SFreeHandListener() { } /** * A drawing component that lets you make a small * drawing with the mouse. */ SFreeHand::SFreeHand (void) { listener = 0; /* top line */ titleLabel = new SLabel (translate ("Handwriting Input")); titleLabel->setAlignment (SD_Center); add (titleLabel); strokesLabel = new SLabel (translate ("Strokes:")); strokesLabel->setAlignment (SD_Right); add (strokesLabel); strokesCount = new SLabel ("0"); strokesCount->setAlignment (SD_Left); add (strokesCount); /* next line */ converters = new SListBox (translate ("Converters")); converters->setListListener (this); add (converters); drawing = new SDrawing (); drawing->setDrawingListener(this); add (drawing); /* next four button are one under the other. */ lookupButton = new SButton (translate ("Look-up"), SIconFactory::getIcon("Yes")); lookupButton->setButtonListener (this); lookupButton->setAlignment (SD_Center); add (lookupButton); clearButton = new SButton (translate ("Clear"), SIconFactory::getIcon("Cancel")); clearButton->setButtonListener (this); clearButton->setAlignment (SD_Center); add (clearButton); isDirected = true; directedButton = new SButton (translate ("Directed")); directedButton->setButtonListener (this); directedButton->setAlignment (SD_Center); directedButton->setIcon(SIconFactory::getIcon("CircleOn")); add (directedButton); candidates = new SListBox (translate ("Candidates")); candidates->setListListener (this); add (candidates); forceLayout (SLayout (SDimension (1000, 1000))); recalc (); initConverters(); needConversion = false; } /** * Find converters in datapath, with extension .hwd */ void SFreeHand::initConverters() { SBinHashtable mentioned; SStringVector all; SStringVector sp = SUniMap::getPath (); for (unsigned int i=0; isetText (all); setConverter (all[0]); } else { converters->setText (translate ("not found")); converters->selectItem (0); } } /** * Deletes this drawing. Nothing to do. */ SFreeHand::~SFreeHand () { } /* void printl (const SLayout lo) { SLocation l = lo.getLocation(); SDimension d = lo.getDimension(); fprintf (stderr, "l= (%d,%d) d= (%u,%u) l2 =(%d,%d)\n", l.x, l.y, d.width, d.height, l.x + (int) d.width, l.y + d.height); } */ /** * Recalculate constraints. */ void SFreeHand::recalc () { int gap = 2; int bgap = 4; /* between buttons */ SDimension d = layout.getDimension (); /* we should fit into this layout */ // From left to right... SLocation t0 = SLocation (titleLabel->getPreferredSize()); SLocation t1 = SLocation (strokesLabel->getPreferredSize()); SLocation t2 = SLocation (strokesCount->getPreferredSize()); SLocation l0 = SLocation (converters->getPreferredSize()); SLocation m0 = SLocation (drawing->getPreferredSize()); //SLocation b0 = SLocation (insertButton->getPreferredSize()); SLocation b1 = SLocation (lookupButton->getPreferredSize()); SLocation b0 = b1; // removed insertButton SLocation b2 = SLocation (directedButton->getPreferredSize()); SLocation b3 = SLocation (clearButton->getPreferredSize()); SLocation r0 = SLocation (candidates->getPreferredSize()); b2.x += 20; /* don't ask */ t2.x = t1.x; /* find longest button */ int bX = 0; if (b0.x > bX) bX = b0.x; if (b1.x > bX) bX = b1.x; if (b2.x > bX) bX = b2.x; if (b3.x > bX) bX = b3.x; if (l0.x < r0.x + bX + bgap * 2) l0.x = r0.x + bX + bgap * 2; if (l0.y < b0.y + bgap + b1.y + bgap + b2.y) { l0.y = b0.y + bgap + b1.y + bgap + b2.y + bgap + b3.y; } /* assume drawing wants 140 */ if (l0.y < 140) l0.y = 140; m0.x = 180; /* a bit more */ m0.y = l0.y; r0.y = l0.y; r0.x = r0.x + 20; /* just in case */ /* find minimum height */ int minY = 2 + t1.y + + gap + l0.y; /* find minimum width, assume drawing wants 100. */ int minX = 2 + l0.x + gap + m0.x + bgap + bX + bgap + r0.x; setMinimumSize (SDimension ((unsigned int)minX, (unsigned int) minY)); preferredSize = SDimension ((unsigned int)minX, (unsigned int) minY); /* top */ int x = 1; int y = 1; titleLabel->setLayout (SLayout ( SLocation (x, y), SLocation (x+t0.x, y + t0.y), SLocation (0, 0), SLocation (0, 0) )); x += (t0.x + 20); strokesLabel->setLayout (SLayout ( SLocation (x, y), SLocation (x + t1.x, y + t0.y), SLocation (0, 0), SLocation (0, 0) )); x += (t1.x + gap); strokesCount->setLayout (SLayout ( SLocation (x, y), SLocation (x + t2.x, y + t0.y), SLocation (0, 0), SLocation (0, 0) )); /* new row. */ x = 1; y += (t1.y + gap); converters->setLayout (SLayout ( SLocation (x, y), SLocation (x + l0.x, y + l0.y), SLocation (0, 0), SLocation (30, 100) )); x += (l0.x + gap); drawing->setLayout (SLayout ( SLocation (x, y), SLocation (x + m0.x, y + m0.y), SLocation (30, 0), SLocation (70, 100) )); /* set buttons later */ int butX = x + m0.x; /* right */ //int minX = 2 + l0.x + gap + 100 + bgap + bX + bgap + r0.width; x = minX - 1 - r0.x; candidates->setLayout (SLayout ( SLocation (x, y), SLocation (x + r0.x, y + r0.y), SLocation (80, 0), SLocation (100, 100) )); int tbgap = r0.y - b0.y -bgap - b1.y -bgap -b2.y -bgap -b3.y; if (tbgap < 0) tbgap = 0; /* now buttons between butx .. x- bgap */ x = butX + bgap; lookupButton->setLayout (SLayout ( SLocation (x, y), SLocation (x + bX, y + b0.y), SLocation (70, 0), SLocation (80, 0) )); y += (b0.y + bgap); y += ((b1.y + bgap))/2; /* what is this gap ? there was a button here before ) */ directedButton->setLayout (SLayout ( SLocation (x, y), SLocation (x + bX, y + b2.y), SLocation (70, 66), SLocation (80, 66) )); y += ((b1.y + bgap))/2 + tbgap; y += (b2.y + bgap); clearButton->setLayout (SLayout ( SLocation (x, y), SLocation (x + bX, y + b3.y), SLocation (70, 100), SLocation (80, 100) )); /* save current */ SLayout goodlayout = layout; /* pretend we have this layout */ forceLayout (preferredSize); /* accept old layout */ setLayout (goodlayout); } /** * ButtonListener */ void SFreeHand::buttonPressed (void* source, const SAccelerator* acc) { if (source == clearButton) { drawing->clear(); lookupText.clear(); SStringVector v; candidates->setText (v); } else if (source == lookupButton) { convertOne(); } if (source == directedButton) { isDirected = !isDirected; const char * str = isDirected?"CircleOn" : "CircleOff"; directedButton->setIcon (SIconFactory::getIcon(str)); convertOne(); } } /** * ItemListener */ void SFreeHand::itemSelected (void* source, const SAccelerator* acc) { if (source == candidates->textList) { SString str = candidates->textList->getLastSelectedText(); lookupText.clear(); if (str == SD_NOT_FOUND) return; lookupText = str; if (lookupText.size()>0 && listener != 0) { listener->freeHandTextChanged (this, lookupText); } window->putClipUTF8 (lookupText); } else { SString str = converters->textList->getLastSelectedText(); converter = SHWConverter(str); convertOne(); } } /** * There can be only one drawing listener. */ void SFreeHand::setFreeHandListener (SFreeHandListener* _listener) { listener = _listener; } const SString& SFreeHand::getLookupText() { return lookupText; } void SFreeHand::setFont (const SString& font, double fontSize) { candidates->textList->setFont (font, fontSize); recalc (); } void SFreeHand::setFontSize (double fontSize) { candidates->textList->setFontSize (fontSize); recalc (); } void SFreeHand::setButtonFont (const SString& font, double fontSize) { lookupButton->setFont (font, fontSize); clearButton->setFont (font, fontSize); directedButton->setFont (font, fontSize); titleLabel->setFont (font, fontSize); strokesLabel->setFont (font, fontSize); strokesCount->setFont (font, fontSize); converters->setFont (font, fontSize); candidates->setFont (font, fontSize); recalc (); } /** * @param bg is the backgroud. */ void SFreeHand::setBackground (const SColor& bg) { SPanel::setBackground (bg); } /** * Set the background of the drawing itself. * @param bg is the backgroud. */ void SFreeHand::setDrawingBackground (const SColor& bg) { drawing->setTextBackground (bg); } void SFreeHand::setSliderBackground (const SColor& bg) { candidates->setSliderBackground (bg); converters->setSliderBackground (bg); } /** * Set the foreground of the drawing itself. * @param fg is the foreground * @param fgrecent is the foreground of the last line, being drawn */ void SFreeHand::setForeground (const SColor& fg) { lookupButton->setForeground (fg); clearButton->setForeground (fg); directedButton->setForeground (fg); candidates->setLabelForeground (fg); converters->setLabelForeground (fg); titleLabel->setForeground (fg); strokesLabel->setForeground (fg); } /** * Set the foreground of the label * @param fg is the foreground * @param fgrecent is the foreground of the last line, being drawn */ void SFreeHand::setLabelForeground (const SColor& fg) { strokesCount->setForeground (fg); } /** * Set the foreground of the drawing itself. * @param fg is the foreground * @param fgrecent is the foreground of the last line, being drawn */ void SFreeHand::setDrawingForeground (const SColor& _fg, const SColor& fgrecent) { drawing->setForeground (_fg, fgrecent); } /** * Redraw the Component on a canvas * @param canvas is where we redraw this. */ void SFreeHand::redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height) { SPanel::redraw (canvas, x, y, width, height); } void SFreeHand::resize (const SDimension& _size) { SPanel::resize (_size); } void SFreeHand::setConverter (const SString& name) { for (unsigned int i=0; iclear(); lookupText.clear(); candidates->setText (SStringVector()); converters->selectItem (i); return; } } } const SString& SFreeHand::getConverter() const { return converter.getName(); } bool SFreeHand::isOK () const { return converter.isOK(); } void SFreeHand::clicked (void* source, int button) { if (button==2) { drawing->undo(); } if (button==1) { drawing->clear(); lookupText.clear(); candidates->setText (SString()); return; } } void SFreeHand::strokeChanged(void* src, unsigned int newsize) { SString str; str.print ((int)newsize); strokesCount->setText (str); candidates->setText (SStringVector()); needConversion = true; } void SFreeHand::convertOne () { needConversion = false; SLineCurves set = drawing->getDrawing(); if (set.size()==0) { lookupText = ""; candidates->setText (SStringVector()); return; } SStringVector v = converter.convert (set, isDirected); if (v.size()==0) { lookupText = ""; v.append (SD_NOT_FOUND); candidates->setText (v); return; } lookupText = v[0]; candidates->setText (v); window->putClipUTF8 (v[0]); } ./swidget/SSlider.cpp0000644000175000017500000002772711326775514014606 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SSlider.h" /** * This component is used just to draw the slider pattern. */ SSliderComponent::SSliderComponent (void) : lighter ("white"), darker ("black") { lighter = SColor (background.lighter()); darker = SColor (background.darker()); /* this is the minimum size we have */ preferredSize = SDimension (30, 30); } SSliderComponent::~SSliderComponent() { } void SSliderComponent::redraw(SWindow* w, int _x, int _y, unsigned int _width ,unsigned int _height) { int o = 0; int x = getLocation().x; int y = getLocation().y; int width = getSize().width; int height = getSize().height; w->bitfill (background, x, y, (int)getSize().width, (int)getSize().height); for (int j=y + 2; jbitpoint (c, i, j); } } w->bitline (lighter, x+1, y, x+width-2, y); w->bitline (lighter, x, y, x, y+height-2); //w->bitline (lighter, x, y, x, y+height-1); //w->bitline (darker, x, y+1, x, y+height-2); //w->bitline (lighter, x+1, y+1, x+1, y+height-2); w->bitline (darker, x+width-1, y+1, x+width-1, y+height-1); w->bitline (darker, x+1, y+height-1, x+width-2, y+height-1); } void SSliderComponent::redraw(SWindow* w) { if (w->isDoubleBufferEnabled()) { w->redraw (true, 0, 0, w->getWidth(), w->getHeight()); } else { redraw (w, 0, 0, getSize().width, getSize().height); } } void SSliderComponent::setBackground (const SColor& bg) { SComponent::setBackground(bg); lighter = background.lighter(); darker = background.darker(); } /** * This is a real window slider. */ SSlider::SSlider (void) : sliderBackground((unsigned char) 73, (unsigned char) 121, (unsigned char) 134, (unsigned char) 255), border (SBorder::IN) { listener = 0; /* value, step, page, max */ set (SLocation (0,0), SDimension (0,0), SDimension (1,1), SDimension (0,0)); slider.move (SLocation((int)border.getBorderSize().width, (int)border.getBorderSize().height)); clip (true); window->resize(10,10); dragOK = false; setSliderBackground (sliderBackground); } SSlider::~SSlider () { } void SSlider::redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height) { //fprintf (stderr, "redsize=%u,%u\n", size.width, size.height); //fprintf (stderr, "redraw: me=%lx location=%d,%d size=%u,%u windowsize=%u,%u\n", // (unsigned long) (SWindowListener*) this, //x, y, width ,height, w->getWidth(), w->getHeight()); clip (false); border.redraw (w, x, y, width, height); clip (true); slider.redraw (w, x, y, width, height); } void SSlider::resize (const SDimension& d) { if (getSize() == d) return; SPanel::resize (d); border.resize (d); SDimension td; if (size.width > border.getBorderSize().width * 2) { td.width = size.width - border.getBorderSize().width * 2; } if (size.height > border.getBorderSize().height * 2) { td.height = size.height - border.getBorderSize().height * 2; } clip (true); //slider.resize (td); /* we are a panel */ recalculateGeometry (); window->redraw(true, 0, 0, size.width, size.height); } /** * Turn clipping at the border on and off. * @param on is true if we turn on clipping. */ void SSlider::clip (bool on) { if (!on) { window->removeClippingArea (); return; } window->setClippingArea ( (int) border.getBorderSize().width , (int) border.getBorderSize().height, size.width - 2 * border.getBorderSize().width, size.height - 2 * border.getBorderSize().height); } void SSlider::setBackground (const SColor& bg) { border.setBackground (bg); } void SSlider::setSliderBackground (const SColor& bg) { sliderBackground = bg; window->setBackground (sliderBackground.darker().darker()); slider.setBackground (sliderBackground); } void SSlider::buttonPressed (SWindow * w, int button, int x, int y) { /* drag point is the difference betwen real location is drag location */ SLocation l (x,y); dragPoint = slider.getLocation() - l; dragOK = true; /* see if we clicked the slider */ if (l < slider.getLocation()) { //fprintf (stderr, "1: dragPoint=%d,%d slider=%d,%d\n", // l.x, l.y, slider.getLocation().x, slider.getLocation().y); dragOK = false; page (-1); } if (l > slider.getLocation() + slider.getSize()) { //fprintf (stderr, "2: dragPoint=%d,%d slider=%d,%d %u %u\n", // l.x, l.y, slider.getLocation().x, slider.getLocation().y, // slider.getSize().width, slider.getSize().height); dragOK = false; page (1); } } void SSlider::buttonReleased (SWindow * w, int button, int x, int y) { } void SSlider::buttonDragged (SWindow * w, int button, int x, int y) { if (!dragOK) return; SLocation l = SLocation (x,y) + dragPoint; l = l.minimize (SLocation (0,0)); /* how much is it in value? */ SDimension estate = getSize() - (border.getBorderSize() * 2); SDimension sliderSize = slider.getSize (); SDimension gmax = estate - sliderSize; SLocation newValue = (l * slidable.max) / gmax; newValue = newValue.minimize(SLocation (0,0)).maximize(slidable.max); if (newValue == slidable.value) return; //fprintf (stderr, "old=%d,%d new=%d,%d\n", // value.x, value.y, newValue.x, newValue.y); slidable.value = newValue; slide (true); } /** * page up (positive) or page down (negative) */ void SSlider::page (int count) { SLocation newValue = slidable.value + slidable.page * count; newValue = newValue.minimize(SLocation (0,0)).maximize(slidable.max); if (newValue == slidable.value) return; //fprintf (stderr, "old=%d,%d new=%d,%d\n", // value.x, value.y, newValue.x, newValue.y); slidable.value = newValue; slide (true); } /** * Set these slider properties. * @param _value is the slider value. * @param _step is the single click step. * @param _page is the double click step. * @param _max is the maximum value * @param _vertical is true if vertical values will be set. */ void SSlider::set (int _value, unsigned int _step, unsigned int _page, unsigned int _max, bool _vertical) { if (_step==0 && _page==0 && _max==0) { slide (_value, _vertical); return; } slidable.step = (_vertical) ? SDimension (slidable.step.width, _step) : SDimension (_step, slidable.step.height); slidable.page = (_vertical) ? SDimension (slidable.page.width, _page) : SDimension (_page, slidable.page.height); slidable.max = (_vertical) ? SDimension (slidable.max.width, _max) : SDimension (_max, slidable.max.height); SLocation newValue = (_vertical) ? SLocation (slidable.value.x, _value) : SLocation (_value, slidable.value.y); slidable.value = newValue; recalculateGeometry(); } void SSlider::set (const SLocation& _value, const SDimension& _step, const SDimension & _page, const SDimension& _max) { slidable.value = _value; slidable.step = _step; slidable.page = _page; slidable.max = _max; recalculateGeometry(); } /** * recalculate the slider geometry */ void SSlider::recalculateGeometry () { if (slidable.page == SDimension(0,0)) slidable.page = SDimension (1,1); /* calculate the scale and the slider dimensions */ SDimension estate = getSize() - (border.getBorderSize() * 2); /* This is what we would like to have */ /* max + page = estate ; page = estate - max */ SDimension mestate = slidable.max + slidable.page; SDimension sliderSize = (estate * slidable.page) / mestate; SDimension sliderPrefers = slider.getPreferredSize (); /* this is what geometrically possoble to have */ sliderSize = sliderSize.minimize (sliderPrefers).maximize (estate); /* this is out geometrically possible max. */ SDimension gmax = estate - sliderSize; SLocation sliderLocation = (slidable.value * gmax) / slidable.max; setSliderGeometry (sliderLocation + border.getBorderSize(), sliderSize); } /** * there is no geometry change. just scroll. */ void SSlider::slide (int _value, bool _vertical) { SLocation newValue = (_vertical) ? SLocation (slidable.value.x, _value) : SLocation (_value, slidable.value.y); if (newValue == slidable.value) return; slidable.value = newValue; slide (false); } /** * 2 d slide */ void SSlider::slide (const SLocation& _value) { if (_value == slidable.value) return; slide (false); } void SSlider::slide (bool notify) { slidable.value = slidable.value.maximize (slidable.max).minimize (SLocation(0,0)); SDimension estate = getSize() - (border.getBorderSize() * 2); SDimension sliderSize = slider.getSize (); SDimension gmax = estate - sliderSize; SLocation sliderLocation = (slidable.value * gmax) / slidable.max; setSliderGeometry (sliderLocation + border.getBorderSize(), sliderSize); if (notify && listener) { listener->valueChanged (&slidable, SSliderListener::SS_BOTH); } } /** * Set the slide geometry and redraw slider if necessary. */ void SSlider::setSliderGeometry (SLocation l, SDimension d) { SDimension ssize = slider.getSize (); SLocation sloc = slider.getLocation (); if (l==sloc && d ==ssize) return; SLocation smax = sloc+ssize; /* find the biggest containing rectangle */ SLocation minl = sloc; minl = minl.minmerge (l); SLocation lpd = l+d; SLocation maxl = smax; maxl.maxmerge (lpd); if (!window->isDoubleBufferEnabled()) { window->copy (sloc.x, sloc.y, d.width, d.height, l.x, l.y); } SLocation delta = maxl-minl; /* clear upper */ if (minl.y < l.y && delta.x >0) { if (!window->isDoubleBufferEnabled()) { SLocation ll = l - minl; window->clear (minl.x, minl.y, delta.x, ll.y); } } /* clear lower */ if (maxl.y > lpd.y && delta.x >0) { if (!window->isDoubleBufferEnabled()) { SLocation lu = maxl - lpd; window->clear (minl.x, lpd.y, delta.x, lu.y); } } /* clear left */ if (minl.x < l.x && delta.y >0) { if (!window->isDoubleBufferEnabled()) { SLocation ll = l - minl; window->clear (minl.x, minl.y, ll.x, delta.y); } } /* clear right */ if (maxl.y > lpd.y && delta.x >0) { if (!window->isDoubleBufferEnabled()) { SLocation lu = maxl - lpd; window->clear (lpd.x, minl.y, lu.x, delta.y); } } slider.move (l); if (ssize != d) { slider.resize (d); slider.redraw (window); } else if (window->isDoubleBufferEnabled()) { window->redraw (true, 0, 0, window->getWidth(), window->getHeight()); } } SLocation SSlider::getValue() const { return SLocation (slidable.value); } /** * This is called by a slibadle and it shows that vales have been changed. */ void SSlider::valueChanged (SSlidable* _slidable, SSlideType _type) { switch (_type) { case SSliderListener::SS_HORIZONTAL: set (_slidable->value.x, _slidable->step.width, _slidable->page.width, _slidable->max.width, false); break; case SSliderListener::SS_VERTICAL: set (_slidable->value.y, _slidable->step.height, _slidable->page.height, _slidable->max.height, true); break; case SSliderListener::SS_BOTH: set (_slidable->value, _slidable->step, _slidable->page, _slidable->max); break; } } /** * @param l is the listener. */ SSlidable* SSlider::setSliderListener (SSliderListener* l) { listener = l; return &slidable; } ./swidget/SLayout.h0000644000175000017500000000332110434025606014253 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SLayout_h #define SLayout_h #include "stoolkit/SLocation.h" #include "stoolkit/SDimension.h" class SLayout { public: SLayout (void); SLayout (const SDimension& d); SLayout (const SLocation& lc, const SLocation rc, const SLocation& dlc, const SLocation drc); SLayout (const SLocation& lc, const SLocation rc); SLayout (const SLayout& l); SLayout operator = (const SLayout& l); SLayout operator += (const SLayout l); bool operator == (const SLayout l) const; bool operator != (const SLayout l) const; ~SLayout (); bool isEmpty() const; SDimension getDimension () const; SLocation getLocation () const; void setLayout (const SLayout& old, const SLayout& nl); SLocation getLocation (const SLayout& parent, const SDimension& d) const; SDimension getDimension (const SLayout& parent, const SDimension& d) const; void print(); private: SLocation lc; SLocation rc; SLocation dlc; SLocation drc; }; #endif /* SLayout_h */ ./swidget/SEditorIF.h0000644000175000017500000000612610434025606014451 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNES 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SEditorIF_h #define SEditorIF_h #include "stoolkit/SString.h" #include "stoolkit/STextIndex.h" #include "stoolkit/SCursorIndex.h" #include "stoolkit/STextData.h" #define SS_DEFAULT_IM "straight" #define SS_KINPUT2_IM "kinput2" #define SS_WINDOWS_IM "WindowsIM" #define SS_DEFAULT_FONT "default" class SEditorIF { public: SEditorIF(void); virtual ~SEditorIF (); virtual void setFont (const SString& font)=0; virtual void setInputMethod (const SString& im)=0; virtual void insertClipboardText ()=0; virtual void insertText (const SString& str, bool embed=true)=0; virtual void insertDirtyText (const SString& str, bool embed=true)=0; virtual void insertPreEditText (const SString& utf8t)=0; virtual SString eraseText (const STextIndex& till)=0; virtual void pageUp ()=0; virtual void pageDown ()=0; virtual const SCursorIndex& getCursorIndex () const=0; virtual void setCursorIndex (const SCursorIndex& index)=0; virtual void caretUp ()=0; virtual void caretDown ()=0; virtual void caretLeft ()=0; virtual void caretRight ()=0; virtual void startSelect ()=0; virtual void endSelect ()=0; virtual void selectText (const SCursorIndex& till)=0; virtual void selectWord ()=0; virtual void selectLine ()=0; virtual void deselectText ()=0; virtual SString eraseSelectedText ()=0; virtual STextIndex getSelectedIndex (bool hi)=0; virtual STextIndex getIndexAfterLineBreak ()=0; virtual SString getText (const STextIndex& from, const STextIndex& till)=0; virtual SString backspace ()=0; virtual SString erase ()=0; virtual bool addComposing(SS_UCS4 c) = 0; virtual SS_UCS4 removeComposing() = 0; virtual void setDirection (SS_DR_Dir dir)=0; virtual SS_DR_Dir getDirection () const=0; virtual void focusOut ()=0; virtual void setEditable (bool editable)=0; virtual bool isEditable () const =0; virtual bool isSelecting () const =0; virtual void clear () = 0; virtual bool clearState() = 0; virtual void setDocumentEmbedding (SS_Embedding e) = 0; virtual SS_Embedding getDocumentEmbedding () const = 0; }; #endif /* SEditorIF_h */ ./swidget/SButton.cpp0000644000175000017500000002122710723752376014625 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SButton.h" #define SS_MGN 2 SButtonListener::SButtonListener(void) { } SButtonListener::~SButtonListener() { } void SButtonListener::enterWindow (void* source) { } void SButtonListener::leaveWindow (void* source) { } /** * create a button. * @param autoacc indicates that the letter preceeded by '&' * should contain the accelerator. */ SButton::SButton (const SString& string) : label (string) , back("white") { pressed = false; inside = false; listener = 0; button = 0; applyAccelerator(); recalcSize(); clip (true); } SButton::SButton (SIcon* icon, const SString& accel) : label ("", icon), back ("white") { pressed = false; inside = false; listener = 0; button = 0; addAccelerator (accel); recalcSize(); clip (true); } /** * create a button. * @param autoacc indicates that the letter preceeded by '&' * should contain the accelerator. */ SButton::SButton (const SString& string, SIcon* _icon) : label (string, _icon), back ("white") { pressed = false; inside = false; button = 0; listener = 0; applyAccelerator(); recalcSize(); clip (true); } /** * get the &char from text and apply accel on it. */ void SButton::applyAccelerator() { processLabelText(); } void SButton::processLabelText () { label.textView.textData.move(STextIndex(0,0)); /* accelerate &key */ STextIndex inx = label.textView.textData.find ("&"); if (inx!=STextIndex(0,0)) { STextIndex at = label.textView.textData.getTextIndex (); label.textView.textData.remove (inx); SString orig = label.textView.textData.getText (inx, at); if (addAccelerator (orig)) { label.textView.textData.underline (inx); } } label.textView.textData.fireEvent(); } bool SButton::addAccelerator(const SString& orig) { SString upper = orig; SString lower = orig; upper.upper (); lower.lower (); int id0 = getButtonID (upper); if (id0 < 0) { fprintf (stderr, "SButton::applyAccelerator no id for '%*.*s'.\n", SSARGS (upper)); return false; } int id1 = getButtonID (lower); if (id1 < 0) { fprintf (stderr, "SButton::applyAccelerator no id for '%*.*s'.\n", SSARGS (lower)); return false; } /* ctrl */ addAccelerator ((SWindowListener::SKey)id0, true, false, false); addAccelerator ((SWindowListener::SKey)id1, true, false, false); /* alt */ addAccelerator ((SWindowListener::SKey)id0, false, false, true); addAccelerator ((SWindowListener::SKey)id1, false, false, true); /* alt-ctrl */ addAccelerator ((SWindowListener::SKey)id0, true, false, true); addAccelerator ((SWindowListener::SKey)id1, true, false, true); return true; } SButton::~SButton () { } void SButton::redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height) { clip(true); label.redraw (w, x, y, width, height); clip(false); border.redraw (w, x, y, width, height); clip(true); } /** * The pointer entered the button. */ void SButton::enterWindow (SWindow* w) { if (listener) listener->enterWindow (this); } /** * The pointer left the button. */ void SButton::leaveWindow (SWindow* w) { if (listener) listener->leaveWindow (this); } void SButton::resize (const SDimension& _size) { SPanel::resize (_size); border.resize (_size); SDimension ds = getSize() - (border.getBorderSize() * 2); SLocation dl = SLocation ( border.getBorderSize().width, border.getBorderSize().height); label.move (dl); label.resize (ds); } void SButton::move (const SLocation& loc) { SPanel::move (loc); } void SButton::recalcSize() { SDimension db = border.getBorderSize(); SDimension dl = label.getPreferredSize(); preferredSize = (db *2 ) + dl; label.move (SLocation (db.width, db.height)); } void SButton::setFontSize (double fontSize) { label.setFontSize (fontSize); recalcSize(); } void SButton::setFont (const SString& font, double fontSize) { label.setFont(font, fontSize); recalcSize(); } void SButton::setForeground (const SColor& fg) { label.setForeground (fg, fg); } void SButton::setForeground (const SColor& lrfg, const SColor& rlfg) { label.setForeground (lrfg, rlfg); } void SButton::setBackground (const SColor& bg) { back = bg; SPanel::setBackground(bg); border.setBackground (bg); label.setBackground (bg); window->redraw (true, 0, 0, getSize().width, getSize().height); } void SButton::setButtonBackground (const SColor& bg) { back = bg; SPanel::setBackground(bg); label.setBackground (bg); window->redraw (true, 0, 0, getSize().width, getSize().height); } /** * Turn clipping at the border on and off. * @param on is true if we turn on clipping. */ void SButton::clip (bool on) { if (!on) { window->removeClippingArea (); return; } window->setClippingArea ( (int) border.getBorderSize().width , (int) border.getBorderSize().height, size.width - 2 * border.getBorderSize().width, size.height - 2 * border.getBorderSize().height); } /** * called when the accelerator key combination is pressed */ void SButton::acceleratorPressed (const SAccelerator& a) { if (!pressed) { pressed = true; inside = true; button = -1; changed (); } } void SButton::acceleratorReleased (const SAccelerator& a) { if (pressed) { pressed = false; inside = false; button = -1; changed (); if (listener) { listener->buttonPressed(this, &a); } } } void SButton::buttonPressed (SWindow * w, int _button, int x, int y) { if (!pressed) { pressed = true; inside = true; button = _button; changed (); } } void SButton::buttonReleased (SWindow * w, int _button, int x, int y) { if (button != _button) { return; } bool ins; if (x >= 0 && y >= 0 && x < (int) getSize().width && y < (int) getSize().height) { ins = true; } else { ins = false; } if (ins != inside) { inside = ins; changed (); } bool callb = false; /* call callback if pressed and inside */ if (pressed && inside) { callb = true; } pressed = false; inside = false; changed (); if (callb && listener) { listener->buttonPressed(this, 0); } } void SButton::buttonDragged (SWindow * w, int button, int x, int y) { bool ins; if (x >= 0 && y >= 0 && x < (int) getSize().width && y < (int) getSize().height) { ins = true; } else { ins = false; } if (ins != inside) { inside = ins; changed (); } } void SButton::changed () { if (pressed && inside) { SPanel::setBackground(back.darker()); label.setBackground (back.darker()); } else { SPanel::setBackground(back); label.setBackground (back); } window->redraw (true, 0, 0, getSize().width, getSize().height); // commented out because of double buffer // window->clear (0, 0, getSize().width, getSize().height); // label.redraw (window, 0, 0, // getSize().width, getSize().height); } void SButton::setButtonListener (SButtonListener* l) { listener = l; } void SButton::addAccelerator (SWindowListener::SKey k, bool ctrl, bool shift, bool meta) { window->addAccelerator (SAccelerator ((int)k, (int)ctrl, (int) shift, (int) meta), this); } void SButton::setIcon (SIcon* icon) { label.setIcon (icon); window->redraw (true, 0, 0, getSize().width, getSize().height); // commented out for the above // window->clear (0, 0, getSize().width, getSize().height); // label.redraw (window, 0, 0, // getSize().width, getSize().height); } void SButton::setText (const SString& text) { label.setText (text); processLabelText (); recalcSize(); window->redraw (true, 0, 0, getSize().width, getSize().height); // commented out for the above // window->clear (0, 0, getSize().width, getSize().height); // label.redraw (window, 0, 0, // getSize().width, getSize().height); } void SButton::setAlignment (SAlignment _alignment) { label.setAlignment (_alignment); window->redraw (true, 0, 0, getSize().width, getSize().height); } ./swidget/SFileDialog.cpp0000644000175000017500000005021711334262063015336 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SFileDialog.h" #include "swidget/SIcon.h" #include "swidget/SIconFactory.h" #include "stoolkit/SUtil.h" #include "stoolkit/SEncoder.h" /** * Hidden Filter Type * Directories Files Types * +--------+ +-------+ +---+ * | | | | | | * | | | | | | * | | | | | | * +--------+ +-------+ +---+ * ______directory * ______pathname___________ * OK CD mkdir Cancel */ SFileDialog::SFileDialog (void) { setFrameListener (this); hiddenButton = new SButton (translate ("Show Hidden")); hiddenButton->setButtonListener (this); hiddenButton->setAlignment (SD_Center); hiddenButton->setIcon(SIconFactory::getIcon("CircleOff")); homeButton = new SButton (translate ("Home"), SIconFactory::getIcon("Home")); homeButton->setButtonListener (this); homeButton->setAlignment (SD_Center); add (homeButton); isFocused = false; isCancel = true; showHidden = false; setHidden (); add (hiddenButton); yesButton = new SButton (translate ("OK"), SIconFactory::getIcon("Yes")); yesButton->setAlignment (SD_Center); yesButton->setButtonListener (this); cdButton = new SButton (translate ("CD to"), SIconFactory::getIcon("Folder")); cdButton->setAlignment (SD_Center); cdButton->setButtonListener (this); createButton = new SButton (translate ("Make Folder"), SIconFactory::getIcon("CreateFolder")); createButton->setAlignment (SD_Center); createButton->setButtonListener (this); cancelButton = new SButton (translate ("Cancel"), SIconFactory::getIcon("Cancel")); cancelButton->setAlignment (SD_Center); cancelButton->setButtonListener (this); add (yesButton); add (cdButton); add (createButton); add (cancelButton); folderListBox = new SListBox(translate ("Folder")); folderListBox->setListListener (this); add (folderListBox); fileListBox = new SListBox(translate ("File")); fileListBox->setListListener (this); add (fileListBox); fileTypeListBox = new SListBox(translate ("File Type")); fileTypeListBox->setListListener (this); add (fileTypeListBox); fileTitleLabel = new SLabel (translate ("File:")); add (fileTitleLabel); fileTextEdit = new STextEdit(""); fileTextEdit->setMultiline(false); fileTextEdit->setLineEndMark(false); fileTextEdit->addTextEditLS(this); add (fileTextEdit); folderTitleLabel = new SLabel (translate ("Folder:")); add (folderTitleLabel); folderNameLabel = new SLabel (""); add (folderNameLabel); filterTitleLabel = new SLabel (translate ("Filter:")); add (filterTitleLabel); fileFilter = "*"; filterTextEdit = new STextEdit(fileFilter); filterTextEdit->addTextEditLS(this); add (filterTextEdit); filterTextEdit->setMultiline(false); filterTextEdit->setLineEndMark(false); fileTypeButton = new SButton ( translate ("Best File Type"), SIconFactory::getIcon("Best")); fileTypeButton->setButtonListener (this); add (fileTypeButton); fileTypeLabel = new SLabel ("[]"); add (fileTypeLabel); textDialog = new STextDialog(); textDialog->setModal (this); recalc(); } bool SFileDialog::setFileType (const SString& _fileType) { bool exists = true; if (!fileTypeListBox->selectText (_fileType)) { fileTypeVector.append (_fileType); fileTypeVector.sort (); fileTypeListBox->setText(fileTypeVector); exists = false; } fileTypeListBox->selectText (_fileType); fileTypeChanged (_fileType); return exists; } const SStringVector& SFileDialog::getFileTypes() const { return fileTypeVector; } void SFileDialog::setApplicationImage (const SImage& image) { getComponentWindow()->setApplicationImage (image); textDialog->setApplicationImage (image); } void SFileDialog::fileTypeChanged (const SString& _filetype) { //SString a="["; SString a; a.append(_filetype); //a.append("]"); fileTypeLabel->setText (a); fileTypeText = _filetype; } void SFileDialog::rereadDir() { filterChanged (); /* get directories and files */ while (!currentDirectory.exists() || !currentDirectory.readable()) { currentDirectory.cd (".."); if (currentDirectory.getUnixName() == "/") break; } SStringVector files = currentDirectory.list("*"); SStringVector combedFiles; unsigned int i; if (showHidden) { combedFiles = files; } else { for (i=0; isetText(combedFiles); SStringVector dirs = currentDirectory.list(SDir::SE_DIR); SStringVector combedDirs; if (showHidden) { combedDirs = dirs; } else { for (i=0; isetText(combedDirs); folderNameLabel->setText (currentDirectory.getUnixName ()); // This bug has been with us for some time now :) fileListBox->selectText (fileTextEdit->getText()); } void SFileDialog::setFileTypes(const SStringVector& v) { fileTypeVector = v; fileTypeVector.sort(); fileTypeListBox->setText(fileTypeVector); } SFileDialog::~SFileDialog () { } /** * recalcualte the geometry * it is based upon 300x200 layout. * preferredSize will be calculated here. */ void SFileDialog::recalc () { unsigned int bw = 1; if (yesButton->getPreferredSize().width > bw ) { bw = yesButton->getPreferredSize().width; } if (cdButton->getPreferredSize().width > bw ) { bw = cdButton->getPreferredSize().width; } if (createButton->getPreferredSize().width > bw ) { bw = createButton->getPreferredSize().width; } if (cancelButton->getPreferredSize().width > bw ) { bw = cancelButton->getPreferredSize().width; } unsigned int bh= cancelButton->getPreferredSize().height; int gap = (300-((int)bw * 4 + 10))/3; int currentx= 5; yesButton->setLayout ( SLayout ( SLocation (currentx, 195-bh), SLocation (currentx+(int)bw, 195), SLocation (0, 100), SLocation (0, 100) ) ); currentx = currentx + (int) bw + gap; cdButton->setLayout ( SLayout ( SLocation (currentx, 195-bh), SLocation (currentx+(int)bw, 195), SLocation (33, 100), SLocation (33, 100) ) ); currentx = currentx + (int) bw + gap; createButton->setLayout ( SLayout ( SLocation (currentx, 195-bh), SLocation (currentx+(int)bw, 195), SLocation (66, 100), SLocation (66, 100) ) ); currentx = currentx + (int) bw + gap; cancelButton->setLayout ( SLayout ( SLocation (currentx, 195-bh), SLocation (currentx+(int)bw, 195), SLocation (100, 100), SLocation (100, 100) ) ); SDimension hms = homeButton->getPreferredSize(); homeButton->setLayout ( SLayout ( SLocation (5, 5), SLocation ((int)hms.width+5, (int)hms.height+5), SLocation (0, 0), SLocation (0, 0) ) ); SDimension hs = hiddenButton->getPreferredSize(); hiddenButton->setLayout ( SLayout ( SLocation ((int)hms.width+10, 5), SLocation ((int)hms.width + hs.width+10, (int)hs.height+5), SLocation (0, 0), SLocation (0, 0) ) ); SDimension bs = fileTypeButton->getPreferredSize(); fileTypeButton->setLayout ( SLayout ( SLocation (295-(int)bs.width, 5), SLocation (295, (int)bs.height+5), SLocation (100, 0), SLocation (100, 0) ) ); SDimension fs = filterTitleLabel->getPreferredSize(); filterTitleLabel->setLayout ( SLayout ( SLocation ((int)hs.width+(int)hms.width+12, 5), SLocation ((int) fs.width + (int)hs.width+(int)hms.width+12, (int) fs.height+5), SLocation (0, 0), SLocation (0, 0) ) ); filterTextEdit->setLayout ( SLayout ( SLocation ((int) fs.width + (int)hs.width+(int)hms.width+12, 5), SLocation ((int) fs.width + 80 + (int)hs.width+(int)hms.width+12, (int) fs.height+5), SLocation (0, 0), SLocation (0, 0) ) ); /* this will be the text field height */ unsigned int tfh = fileTextEdit->getPreferredSize().height; unsigned int phw = fileTitleLabel->getPreferredSize().width; unsigned int dph = folderTitleLabel->getPreferredSize().height; unsigned int dpw = folderTitleLabel->getPreferredSize().width; folderTitleLabel->setLayout ( SLayout ( SLocation (5, 200-(int)bh-(int)tfh -(int) dph - 10), SLocation (5 + dpw, 200-(int)bh -(int)tfh - 10), SLocation (0, 100), SLocation (0, 100) ) ); folderNameLabel->setLayout ( SLayout ( SLocation (5+dpw, 200-(int)bh-(int)tfh -(int) dph - 10), SLocation (295, 200-(int)bh -(int)tfh - 10), SLocation (0, 100), SLocation (100, 100) ) ); fileTitleLabel->setLayout ( SLayout ( SLocation (5, 200-(int)bh-(int)tfh - 10), SLocation (5 + phw, 200-(int)bh - 10), SLocation (0, 100), SLocation (0, 100) ) ); fileTextEdit->setLayout ( SLayout ( SLocation (5+phw, 200-(int)bh-(int)tfh - 10), SLocation (180, 200-(int)bh - 10), SLocation (0, 100), SLocation (100, 100) ) ); fileTypeLabel->setLayout ( SLayout ( SLocation (180, 200-(int)bh-(int)tfh - 10), SLocation (295, 200-(int)bh - 10), SLocation (100, 100), SLocation (100, 100) ) ); unsigned int incr = (300-10)/3; folderListBox->setLayout ( SLayout ( SLocation (5, (int)hs.height+5+5), SLocation (5+incr-2, 200-(int)bh-(int)tfh -(int) dph - 10), SLocation (0, 0), SLocation (33, 100) ) ); fileListBox->setLayout ( SLayout ( SLocation (5+incr+1, (int)hs.height+5+5), SLocation (300-5-incr-1, 200-(int)bh-(int)tfh-(int) dph - 10), SLocation (33, 0), SLocation (66, 100) ) ); fileTypeListBox->setLayout ( SLayout ( SLocation (300-5-incr+2, (int)hs.height+5+5), SLocation (300-5, 200-(int)bh-(int)tfh-(int) dph - 10), SLocation (66, 0), SLocation (100, 100) ) ); unsigned int bestWidthBottom = bw * 4 + 10 + 15 + 20; /* top */ unsigned int bestWidthTop = 5 + hms.width + 5 + hs.width + 5 +fs.width + 80 + bs.width + 5 + 10; unsigned int bestWidth = (bestWidthTop>bestWidthBottom) ? bestWidthTop : bestWidthBottom; preferredSize = SDimension (bestWidth+10, 300); /* This was out layout... */ forceLayout (SLayout (SDimension (300,200))); /* But this one is the one that works */ setLayout (SLayout (preferredSize)); setMinimumSize (preferredSize); resize (SDimension (preferredSize.width, preferredSize.height)); } SString SFileDialog::getFileName () { SString fn = fileTextEdit->getText(); if (fn.size()==0) return SString(fn); SString filePath = currentDirectory.getName(); if (filePath != "/") filePath.append ("/"); filePath.append (fn); return SString(filePath); } SString SFileDialog::getUnixFileName () { SString fn = fileTextEdit->getText(); if (fn.size()==0) return SString(fn); SString filePath = currentDirectory.getUnixName(); if (filePath != "/") filePath.append ("/"); filePath.append (fn); return SString(filePath); } SString SFileDialog::getFileType () { return fileTypeText; } bool SFileDialog::getInput (const SString& titleString, bool shouldExist, bool warnExist) { setTitle (titleString); fileFilter = "*"; filterTextEdit->setText (fileFilter); rereadDir (); fileListBox->selectText (fileTextEdit->getText()); center(); isCancel = true; isFocused = false; show(); wait(); textDialog->hide(); hide(); return !isCancel; } /** * buttons call this */ void SFileDialog::buttonPressed (void* source, const SAccelerator* acc) { if (source == createButton) { SString before = currentDirectory.getName(); SDir d(before); SString s(fileTextEdit->getText()); unsigned int ck = 0; bool hasSlash = false; for (ck=0; ckgetInput ("Error", translate ("Will not create\nspecified folder\n"), STextDialog::SS_ERR); return; } if (hasSlash) { textDialog->getInput ("Error", translate ("Folders can be created\nin current directory only."), STextDialog::SS_ERR); return; } if (d.cd (s)) { textDialog->getInput ("Warning", translate ("Specified folder\nalready exists.\n"), STextDialog::SS_WARN); return; } SString cdr = currentDirectory.getName(); if (cdr != "/") cdr.append ("/"); cdr.append (fileTextEdit->getText()); d = SDir (cdr); if (!d.create()) { textDialog->getInput ("Error", translate ("Can not create\nspecified folder\n"), STextDialog::SS_ERR); return; } currentDirectory = d; rereadDir (); fileTextEdit->setText(""); return; } if (source == cdButton) { SString before = currentDirectory.getName(); SDir d(before); if (!d.cd (fileTextEdit->getText())) { textDialog->getInput ("Error", translate ("Can not go to\nspecified folder.\n"), STextDialog::SS_ERR); return; } currentDirectory = d; rereadDir (); fileTextEdit->setText(""); return; } if (source == cancelButton) { isCancel = true; hide(); return; } if (source == yesButton) { isCancel = false; hide(); return; } if (source == fileTypeButton) { setFileType("utf-8"); return; } if (source == hiddenButton) { showHidden = !showHidden; setHidden(); rereadDir(); return; } if (source == homeButton) { currentDirectory.cd (getHome()); rereadDir(); return; } } /** * STextListListener */ void SFileDialog::itemSelected (void* source, const SAccelerator* acc) { if (source == folderListBox->textList) { SString s = folderListBox->textList->getLastSelectedText(); SString before = currentDirectory.getName(); //fprintf (stderr, "before %*.*s [%*.*s]\n", SSARGS (s), SSARGS(before)); currentDirectory.cd (s); SString after = currentDirectory.getName(); //fprintf (stderr, "after %*.*s [%*.*s]\n", SSARGS (s), SSARGS(after)); if (after != before) rereadDir (); return; } if (source == fileListBox->textList) { SString s = fileListBox->textList->getLastSelectedText(); if (s != fileTextEdit->getText()) { fileTextEdit->setText (s); } return; } if (source == fileTypeListBox->textList) { SString s = fileTypeListBox->textList->getLastSelectedText(); //fprintf (stderr, "typeselected %*.*s\n", SSARGS(s)); fileTypeChanged (s); } } /** * STextEditLS */ void SFileDialog::textEntered (void *source) { if (source == filterTextEdit) { rereadDir (); } /* ok */ if (source == fileTextEdit) { isCancel = false; hide(); return; } } void SFileDialog::textChanged (void *source) { if (source == fileTextEdit) { fileListBox->selectText (fileTextEdit->getText()); } } void SFileDialog::filterChanged () { fileFilter = filterTextEdit->getText(); /* trim what is not there */ while (fileFilter.size()>0 && (fileFilter[0]==' '||fileFilter[0]=='\t')) { fileFilter.remove (0); } while (fileFilter.size()>0 && (fileFilter[fileFilter.size()-1] == ' ' || fileFilter[fileFilter.size()-1] == '\t')) { fileFilter.truncate (fileFilter.size()-1); } //fprintf (stderr,"filter changed to '%*.*s'\n"); } /** * set icon accoring to showHidden */ void SFileDialog::setHidden() { /* create icons here */ const char * str = showHidden?"CircleOn" : "CircleOff"; hiddenButton->setIcon (SIconFactory::getIcon(str)); } bool SFileDialog::close (SPanel* comp) { isCancel =true; hide(); textDialog->hide(); return false; } void SFileDialog::focusChanged (void *source, bool in) { if (!in && source == filterTextEdit) { rereadDir (); } } /** * set the filename - cut off the dirpart */ void SFileDialog::setFileName (const SString& _filename) { SDir d; /* this will chop off filename */ d.cd (_filename); SStringVector v(_filename, "/"); SString fn; if (v.size()) { fn.append (v[v.size()-1]); } currentDirectory = d; rereadDir (); fileTextEdit->setText (fn); fileListBox->selectText (fn); } void SFileDialog::setTitleForeground (const SColor& fg) { textDialog->setTitleForeground (fg); fileTypeButton->setForeground (fg); hiddenButton->setForeground (fg); homeButton->setForeground (fg); cdButton->setForeground (fg); yesButton->setForeground (fg); cancelButton->setForeground (fg); createButton->setForeground (fg); folderTitleLabel->setForeground (fg); fileTitleLabel->setForeground (fg); filterTitleLabel->setForeground (fg); folderListBox->setLabelForeground (fg); fileListBox->setLabelForeground (fg); fileTypeListBox->setLabelForeground (fg); } void SFileDialog::setLabelForeground (const SColor& fg) { textDialog->setLabelForeground (fg); folderNameLabel->setForeground (fg); fileTypeLabel->setForeground (fg); } void SFileDialog::setBackground (const SColor& bg) { SFrame::setBackground (bg); textDialog->setBackground (bg); fileTextEdit->setTextBackground (SColor("white")); filterTextEdit->setTextBackground (SColor("white")); } void SFileDialog::setForeground (const SColor& fg) { SFrame::setForeground (fg); setLabelForeground (fg); setTitleForeground (fg); } void SFileDialog::setSliderBackground (const SColor& bg) { folderListBox->setSliderBackground (bg); fileListBox->setSliderBackground (bg); fileTypeListBox->setSliderBackground (bg); } void SFileDialog::setFont (const SString& font, double fontSize) { textDialog->setFont (font, fontSize); folderNameLabel->setFont (font, fontSize); fileTypeLabel->setFont (font, fontSize); textDialog->setFont (font, fontSize); fileTypeButton->setFont (font, fontSize); hiddenButton->setFont (font, fontSize); homeButton->setFont (font, fontSize); cdButton->setFont (font, fontSize); yesButton->setFont (font, fontSize); cancelButton->setFont (font, fontSize); createButton->setFont (font, fontSize); folderTitleLabel->setFont (font, fontSize); fileTitleLabel->setFont (font, fontSize); filterTitleLabel->setFont (font, fontSize); folderListBox->setFont (font, fontSize); fileListBox->setFont (font, fontSize); fileTypeListBox->setFont (font, fontSize); recalc(); } void SFileDialog::setFontSize (double fontSize) { textDialog->setFontSize (fontSize); folderNameLabel->setFontSize (fontSize); fileTypeLabel->setFontSize (fontSize); textDialog->setFontSize (fontSize); fileTypeButton->setFontSize (fontSize); hiddenButton->setFontSize (fontSize); cdButton->setFontSize (fontSize); yesButton->setFontSize (fontSize); cancelButton->setFontSize (fontSize); createButton->setFontSize (fontSize); folderTitleLabel->setFontSize (fontSize); fileTitleLabel->setFontSize (fontSize); filterTitleLabel->setFontSize (fontSize); folderListBox->setFontSize (fontSize); fileListBox->setFontSize (fontSize); fileTypeListBox->setFontSize (fontSize); recalc(); } /** * keyboard focus lost. */ void SFileDialog::gainedKeyboardFocus (SWindow* w) { if (isFocused) return; isFocused = true; fileTextEdit->setFocus(); } ./swidget/SDrawing.h0000644000175000017500000000462410724277035014407 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SDrawing_h #define SDrawing_h #include "swidget/SBorder.h" #include "swindow/SColor.h" #include "stoolkit/SVector.h" #include "stoolkit/SLocation.h" #include "stoolkit/SLineCurve.h" class SDrawingListener { public: SDrawingListener(void); virtual ~SDrawingListener(); virtual void clicked (void* source, int button)=0; virtual void strokeChanged (void* source, unsigned int newcount)=0; }; class SDrawing : public SPanel { public: SDrawing (void); virtual ~SDrawing (); void setDrawingListener (SDrawingListener* listener); virtual void setBackground (const SColor& bg); virtual void setTextBackground (const SColor& bg); void setForeground (const SColor& fg, const SColor& fgrecent); virtual void redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height); virtual void buttonPressed (SWindow * w, int button, int x, int y); virtual void buttonReleased (SWindow * w, int button, int x, int y); virtual void buttonDragged (SWindow * w, int button, int x, int y); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); void clear(); /* TODO: add getDrawing */ const SDimension& getPreferredSize(); const SLineCurves& getDrawing(); void undo (); protected: SDrawingListener *listener; SLineCurve lastLines; SLineCurves allLines; SColor fg; SColor lfg; void clip (bool on); void redraw (bool isclear); void redraw (SWindow* canvas, const SColor& fg, const SLineCurve& lines); void redrawInternal (SWindow* canvas, const SColor& fg, const SLineCurve& lines); SBorder border; }; #endif /* SDrawing_h */ ./swidget/SEditorIF.cpp0000644000175000017500000000153410434025610014775 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include SEditorIF::SEditorIF(void) { } SEditorIF::~SEditorIF () { } ./swidget/SFrame.cpp0000644000175000017500000000407310724772701014377 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SFrame.h" SFrame::SFrame (void) { // if we dont do this there is a funny bug when // the window is mapped and it does not get focus. // It does not happen all the time. setThisDoubleBuffered (false); frameListener = 0; } SFrame::~SFrame () { } /** * This is SWindowListener implementation */ void SFrame::redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height) { SPanel::redraw(w, x, y, width , height); } /** * This is SWindowListener implementation */ bool SFrame::windowClose (SWindow* w) { if (frameListener == 0) { return true; } bool ok = frameListener->close (this); if (!ok) return false; SPanel::windowClose (w); return true; } void SFrame::setApplicationImage (const SImage& image) { getComponentWindow()->setApplicationImage (image); } /** * Add a frame listener to handle frame events * @param l is the new frameListener * @return the previous frame listener */ SFrameListener* SFrame::setFrameListener (SFrameListener *l) { SFrameListener* o = frameListener; frameListener = l; return o; } /** * remove a frame listener to handle frame events * @param l is the new frameListener * @return the previous frame listener */ SFrameListener* SFrame::removeFrameListener () { SFrameListener* o = frameListener; frameListener = 0; return o; } ./swidget/SEditor.h0000644000175000017500000000513510434025606014231 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SEditor_h #define SEditor_h #include "swidget/SUndo.h" #include "swidget/SEditorIF.h" #include "swindow/SWindow.h" #include "stoolkit/STextIndex.h" #include "stoolkit/SCursorIndex.h" #include "stoolkit/SStringVector.h" /** * This is the class that maps actions into editing actions. */ class SEditor { public: SEditor(void); SEditor(const SString& paragBreak); SEditor (const SEditor& in); virtual ~SEditor (); SEditor operator=(const SEditor& in); virtual void setInterface(SEditorIF* editorIF); virtual void keyPressed (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void keyReleased (SWindowListener::SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void buttonPressed (int button, const SCursorIndex& index); virtual void buttonReleased (int button, const SCursorIndex& index); virtual void buttonDragged (int button, const SCursorIndex& index); virtual void multiClicked (int button, const SCursorIndex& index, int count); virtual void setInputMethods (const SStringVector& in); virtual void setFonts (const SStringVector& in); virtual void setVI (bool vimode=true); virtual bool undo(); virtual bool redo(); virtual void clearUndo(); virtual void clear (); virtual void setParagraphSeparator (const SString& paragBreak); virtual void insertText (const SString& text); virtual SString getParagraphSeparator () const; protected: void pasteText (const SCursorIndex& index); void add (const SUndo& undo); bool vimode; bool cleared; private: SString paragBreak; void fKey(int num, bool ctrl); void setup(); SStringVector inputMethods; SStringVector fonts; SEditorIF* editorIF; SV_Undo undoBuffer; unsigned int undoIndex; }; #endif /* SEditor_h */ ./swidget/SFileDialog.h0000644000175000017500000000641511332420377015006 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFileDialog_h #define SFileDialog_h #include "swidget/SFrame.h" #include "swidget/SBorder.h" #include "swidget/STextList.h" #include "swidget/STextEdit.h" #include "swidget/SButton.h" #include "swidget/SListBox.h" #include "swidget/STextEdit.h" #include "swidget/STextDialog.h" #include "swindow/SImage.h" #include class SFileDialog : public SFrame, public SListListener, public SButtonListener, public STextEditLS, public SFrameListener { public: SFileDialog (void); virtual ~SFileDialog (); bool getInput(const SString& title, bool shouldExist, bool warnexist); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); virtual void setBackground (const SColor& bg); virtual void setForeground (const SColor& fg); virtual void setTitleForeground (const SColor& fg); virtual void setSliderBackground (const SColor& bg); virtual void setApplicationImage (const SImage& image); void setLabelForeground (const SColor& fg); void setFileName (const SString& filename); bool setFileType (const SString& fileType); void setFileTypes (const SStringVector& fileTypes); const SStringVector& getFileTypes() const; SString getFileName (); SString getUnixFileName (); SString getFileType (); protected: virtual void buttonPressed (void* source, const SAccelerator* acc); virtual void itemSelected (void* source, const SAccelerator* acc); virtual void textEntered (void *source); virtual void textChanged (void *source); virtual void focusChanged (void *source, bool in); virtual bool close (SPanel* comp); virtual void gainedKeyboardFocus (SWindow* w); private: bool isCancel; bool isFocused; void fileTypeChanged (const SString& filetype); void filterChanged(); /* filetypes */ SStringVector fileTypeVector; SString fileFilter; void rereadDir(); void recalc (); void setHidden(); STextDialog* textDialog; bool showHidden; SListBox* folderListBox; SListBox* fileListBox; SListBox* fileTypeListBox; SButton* fileTypeButton; STextEdit* filterTextEdit; STextEdit* fileTextEdit; SLabel* folderTitleLabel; SLabel* folderNameLabel; SLabel* filterTitleLabel; SLabel* fileTitleLabel; SLabel* fileTypeLabel; SString fileTypeText; SButton* hiddenButton; SButton* yesButton; SButton* cdButton; SButton* createButton; SButton* cancelButton; SButton* homeButton; SDir currentDirectory; }; #endif /* SFileDialog_h */ ./swidget/SBorder.h0000644000175000017500000000245510434025606014222 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SBorder_h #define SBorder_h #include "swidget/SPanel.h" class SBorder : public SComponent { public: enum SStyle { ETCHED, IN, OUT, SOLID}; SBorder (SStyle style=ETCHED); virtual ~SBorder (); void setStyle (SStyle style); const SDimension& getBorderSize() const; virtual void redraw (SCanvas *canvas, int x, int y, unsigned int width, unsigned int height); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); protected: SDimension borderSize; SStyle style; }; #endif /* SBorder_h */ ./swidget/SLabel.h0000644000175000017500000000360310434025606014020 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SLabel_h #define SLabel_h #include "swidget/SOpaqueLabel.h" #include "swidget/SPanel.h" #include "swidget/SBorder.h" class SLabel : public SPanel { public: SLabel (const SString& string); SLabel (const SString& string, SIcon* icon); virtual ~SLabel (); virtual void redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height); virtual void resize (const SDimension& size); virtual void resized (SWindow* w, int x, int y, unsigned int width, unsigned int height); virtual void move (const SLocation& loc); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); void setForeground (const SColor& fg); void setForeground (const SColor& lrfg, const SColor& rlfg); virtual void setBackground (const SColor& bg); void setLabelBackground (const SColor& bg); const SColor& getBackground (); const SColor& getForeground (bool lr); void setText (const SString& text); void setIcon (SIcon* icon); void setAlignment (SAlignment _alignment); private: void recalcSize(); SOpaqueLabel label; SBorder border; }; #endif /* SLabel_h */ ./swidget/STextList.h0000644000175000017500000000662510434025606014570 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextList_h #define STextList_h #include "swidget/SOpaqueLabel.h" #include "swidget/SComponent.h" #include "swidget/SBorder.h" #include "stoolkit/SStringVector.h" #include "stoolkit/STypes.h" class SListListener { public: SListListener(void); virtual ~SListListener(); virtual void itemSelected (void* source, const SAccelerator* acc)=0; virtual void itemHighlighted (void* source, int item); }; /** * Show the components in a list-manner. */ class STextList : public SPanel { public: STextList (void); ~STextList (); void setText (const SStringVector& v); void clear (); virtual void setFont (const SString& font, double fontSize); virtual void setFontSize (double size); virtual void setBackground (const SColor& bg); virtual void setTextBackground (const SColor& bg); virtual void setSelectedBackground (const SColor& bg); virtual void setForeground (const SColor& fg); virtual void setSelectedForeground (const SColor& fg); virtual void redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height); virtual void keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void buttonPressed (SWindow * w, int button, int x, int y); virtual void buttonReleased (SWindow * w, int button, int x, int y); virtual void buttonDragged (SWindow * w, int button, int x, int y); virtual void resize (const SDimension& size); virtual void move (const SLocation& loc); /* This is from component */ virtual SSlidable* setSliderListener (SSliderListener* l); /* This is from SSliderListener */ virtual void valueChanged (SSlidable* slidable, SSlideType type); void setListListener (SListListener* l); bool selectItem (int line); bool selectText (const SString& text); int getLastSelected (); SString getLastSelectedText (); private: SListListener* listListener; void makeSelectedVisible(); void recalc (int current); void selectLocation (int y); int indexForLocation (int y, bool correct=true); int locationForIndex (unsigned int index); void redraw (SCanvas* canvas, unsigned int index, int x, unsigned int width); SOpaqueLabel label; SOpaqueLabel selectedLabel; int lastSelected; SDimension viewableSize; void clip (bool on); SSliderListener* sliderListener; SSlidable slidable; SBorder border; SStringVector vector; SBinVector selectedVector; }; #endif /* STextList_h */ ./swidget/SIconFactory.cpp0000644000175000017500000001032011326615671015556 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SIconFactory.h" #include "icons/SS_Caution.xpm" #include "icons/SS_Inform.xpm" #include "icons/SS_Open.xpm" #include "icons/SS_Print.xpm" #include "icons/SS_Redo.xpm" #include "icons/SS_Save.xpm" #include "icons/SS_SaveNotNeeded.xpm" #include "icons/SS_Undo.xpm" #include "icons/SS_MagnifyPlus.xpm" #include "icons/SS_MagnifyMinus.xpm" #include "icons/SS_GreenRight.xpm" #include "icons/SS_GreenLeft.xpm" #include "icons/SS_Right.xpm" #include "icons/SS_Font.xpm" #include "icons/SS_Help.xpm" #include "icons/SS_Document.xpm" #include "icons/SS_DocumentCX.xpm" #include "icons/SS_DocumentXX.xpm" #include "icons/SS_DocumentXM.xpm" #include "icons/SS_Preview.xpm" #include "icons/SS_Error.xpm" #include "icons/SS_Goto.xpm" #include "icons/SS_Find.xpm" #include "icons/SS_Yes.xpm" #include "icons/SS_Cancel.xpm" #include "icons/SS_Folder.xpm" #include "icons/SS_CreateFolder.xpm" #include "icons/SS_CircleOff.xpm" #include "icons/SS_CircleOn.xpm" #include "icons/SS_Best.xpm" #include "icons/SS_Home.xpm" #include "icons/SS_LBDOS.xpm" #include "icons/SS_LBLS.xpm" #include "icons/SS_LBMAC.xpm" #include "icons/SS_LBPS.xpm" #include "icons/SS_LBUNIX.xpm" #include "icons/SS_Clear.xpm" #include "icons/SS_EmbedLeft.xpm" #include "icons/SS_EmbedRight.xpm" #include "icons/SS_EmbedNone.xpm" #include "icons/SS_RLO_XPM.xpm" #include "icons/SS_LRO_XPM.xpm" #include "icons/SS_RLE_XPM.xpm" #include "icons/SS_LRE_XPM.xpm" #include "icons/SS_RL_XPM.xpm" #include "icons/SS_LR_XPM.xpm" #include "icons/SS_Yudit_XPM.xpm" struct _icon_map { const char* name; const char** icon; } icon_map[] = { { "Caution", SS_Caution }, { "Inform", SS_Inform }, { "Open", SS_Open }, { "Print", SS_Print }, { "Redo", SS_Redo }, { "Save", SS_Save }, { "SaveNotNeeded", SS_SaveNotNeeded }, { "Undo", SS_Undo }, { "MagnifyPlus", SS_MagnifyPlus }, { "MagnifyMinus", SS_MagnifyMinus }, { "GreenRight", SS_GreenRight }, { "GreenLeft", SS_GreenLeft }, { "Right", SS_Right }, { "Font", SS_Font }, { "Help", SS_Help }, { "Document", SS_Document }, { "DocumentXM", SS_DocumentXM }, { "DocumentCX", SS_DocumentCX }, { "DocumentXX", SS_DocumentXX }, { "Preview", SS_Preview }, { "Error", SS_Error }, { "Goto", SS_Goto }, { "Find", SS_Find }, { "Yes", SS_Yes }, { "Cancel", SS_Cancel }, { "Clear", SS_Clear }, { "Folder", SS_Folder }, { "CreateFolder", SS_CreateFolder }, { "CircleOff", SS_CircleOff }, { "CircleOn", SS_CircleOn }, { "Best", SS_Best }, { "Home", SS_Home }, { "DOS", SS_LB_DOS_XPM }, { "LS", SS_LB_LS_XPM }, { "PS", SS_LB_PS_XPM }, { "MAC", SS_LB_MAC_XPM }, { "UNIX", SS_LB_UNIX_XPM }, { "LRO", SS_LRO_XPM }, { "RLO", SS_RLO_XPM }, { "LRE", SS_LRE_XPM }, { "RLE", SS_RLE_XPM }, { "LR", SS_LR_XPM }, { "RL", SS_RL_XPM }, { "EmbedLeft", SS_EmbedLeft }, { "EmbedRight", SS_EmbedRight }, { "EmbedNone", SS_EmbedNone }, { "Yudit", SS_Yudit_XPM }, { 0, 0 } }; SIconFactory::SIconFactory (void) { } SIconFactory::~SIconFactory () { } SIcon* SIconFactory::getIcon (const SString& name) { if (SIcon::exists(name)) { return new SIcon (name); } unsigned int i=0; while (icon_map[i].name) { if (name == SString (icon_map[i].name)) break; i++; } if (icon_map[i].name==0) { fprintf (stderr, "SIconFactory::getIcon does not know how to load %*.*s\n", SSARGS(name)); return 0; } SImage im((const char* const*)icon_map[i].icon); return new SIcon (im); } ./swidget/SBorder.cpp0000644000175000017500000000642010434025610014544 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SBorder.h" /** * Craet a border object. * the borderSize is the x and y dimension of the border. * The actual component size reduces by this twice for x and y directions too */ SBorder::SBorder (SStyle s) { style = s; switch (style) { case IN: case OUT: case SOLID: borderSize = SDimension (1,1); break; default: borderSize = SDimension (2,2); } } SBorder::~SBorder () { } void SBorder::setStyle (SStyle s) { style = s; } const SDimension& SBorder::getBorderSize() const { return borderSize; } void SBorder::redraw (SCanvas *canvas, int _x, int _y, unsigned int width, unsigned int height) { SColor di = background.darker(); SColor li = background.lighter(); /* locations width ending points */ int x[2] = { location.x, location.x + (int) size.width-1 }; int y[2] = { location.y, location.y + (int) size.height-1 }; switch (style) { case ETCHED: // +---- // | // canvas->bitline (di, x[0], y[0], x[1]-1, y[0]); canvas->bitline (di, x[0], y[0]+1, x[0], y[1]-1); // +---- // | canvas->bitline (li, x[0]+1, y[0]+1, x[1]-2, y[0]+1); canvas->bitline (li, x[0]+1, y[0]+2, x[0]+1, y[1]-2); // | // ---+ canvas->bitline (di, x[1]-1, y[0]+2, x[1]-1, y[1]-2); canvas->bitline (di, x[1]-1, y[1]-1, x[0]+2, y[1]-1); // | // ---+ canvas->bitline (li, x[1], y[0]+1, x[1], y[1]); canvas->bitline (li, x[1]-1, y[1], x[0]+1, y[1]); // + // + canvas->bitpoint (background, x[1]-1, y[0]+1); canvas->bitpoint (background, x[0]+1, y[1]-1); canvas->bitpoint (background, x[0], y[1]); canvas->bitpoint (background, x[1], y[0]); break; case IN: canvas->bitline (di, x[0], y[0], x[1]-1, y[0]); canvas->bitline (di, x[0], y[0]+1, x[0], y[1]-1); canvas->bitpoint (background, x[1], y[0]); canvas->bitline (li, x[1], y[0]+1, x[1], y[1]-1); canvas->bitline (li, x[0]+1, y[1], x[1], y[1]); canvas->bitpoint (background, x[0], y[1]); break; case OUT: break; case SOLID: canvas->bitline (background, x[0], y[0], x[1]-1, y[0]); canvas->bitline (background, x[1], y[0], x[1], y[1]-1); canvas->bitline (background, x[0]+1, y[1], x[1], y[1]); canvas->bitline (background, x[0], y[0]+1, x[0], y[1]); break; } return; } void SBorder::resize (const SDimension& s) { SComponent::resize(s); } void SBorder::move (const SLocation& l) { SComponent::move(l); } ./swidget/SIcon.cpp0000644000175000017500000000450410723727444014237 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SIcon.h" #include "stoolkit/SHashtable.h" typedef SHashtable SImageCache; static SImageCache* imageCache=0; SIcon::SIcon (const SImage& _image) : image (_image) { preferredSize = SDimension (image.getWidth(), image.getHeight()); } /** * Create an icon from name. previously it should * be added with the static put method */ SIcon::SIcon (const SString& _name) : image (1, 1, 1) { preferredSize = SDimension (image.getWidth(), image.getHeight()); if (imageCache == 0) imageCache = new SImageCache(); const SImage* im = imageCache->get (_name); if (im==0) { fprintf (stderr, "SIcon::SIcon: can not find image %*.*s\n", SSARGS(_name)); } else { image = *im; } preferredSize = SDimension (image.getWidth(), image.getHeight()); } SIcon::~SIcon () { } void SIcon::redraw (SCanvas* canvas, int x, int y, unsigned int width, unsigned int height) { redraw (canvas); } void SIcon::redraw (SCanvas* canvas) { canvas->putImage (getLocation().x, getLocation().y, image); } void SIcon::put (const SString& name, const SImage& image) { if (imageCache == 0) imageCache = new SImageCache(); imageCache->put (name, image); } void SIcon::remove (const SString& name) { if (imageCache == 0) imageCache = new SImageCache(); imageCache->remove (name); } bool SIcon::exists (const SString& name) { if (imageCache == 0) imageCache = new SImageCache(); return (imageCache->get (name) != 0); } void SIcon::setBackground (const SColor& bg) { SComponent::setBackground (bg); } const SImage& SIcon::getImage () const { return image; } ./swidget/STextEditLS.h0000644000175000017500000000277210434025606015000 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextEditLS_h #define STextEditLS_h #include "stoolkit/SString.h" /** * A generic text editor listener. */ class STextEditLS { public: STextEditLS(void); virtual ~STextEditLS(); virtual void inputMethodChanged (void *source, const SString& im); virtual void fontChanged (void *source, const SString& font); virtual void textChanged (void *source); virtual void textEntered (void *source); virtual void focusOutRequest (void *source); virtual void focusChanged (void *source, bool in); virtual void caretMoved (void *source, unsigned int line, unsigned int col, bool before); virtual void scrolledHorizontal (void *source, int value); virtual void scrolledVertical (void *source, int value); }; #endif /* STextEditLS_h */ ./swidget/SListBox.cpp0000644000175000017500000000663410726721650014735 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swidget/SListBox.h" SListBox::SListBox (const SString& title) { SPanel::forceLayout (SLayout (SDimension (1000,1000))); topLabel = new SLabel (title); topLabel->setAlignment (SD_Center); textList = new STextList(); slider = new SSlider(); add (topLabel); add (textList); add (slider); recalc (); } void SListBox::resize(const SDimension& d) { border.resize(d); SPanel::resize (d); } void SListBox::redraw (SWindow *canvas, int x, int y, unsigned int width, unsigned int height) { border.redraw(canvas, x, y, width, height); } SListBox::~SListBox () { } void SListBox::setText (const SStringVector& v) { textList->setText (v); } void SListBox::setListListener (SListListener* l) { textList->setListListener (l); } /** * recalculate the layout */ void SListBox::recalc() { const SDimension& bd = border.getBorderSize(); int lh = (int) topLabel->getPreferredSize().height; if (lh < 4) lh = 4; int dheight = lh * 2; int dwidth = (int) topLabel->getPreferredSize().width + 2 * (int) bd.width; if (dheight < 20)dheight = 20; if (dwidth < 30) dwidth = 30; preferredSize = SDimension (dwidth, dheight); topLabel->setLayout ( SLayout ( SLocation (bd.width,bd.height), SLocation (dwidth-(int)bd.width, lh+(int)bd.height), SLocation (0, 0), SLocation (100, 0) ) ); int tw = (int)dwidth - 20 - (int) bd.width; textList->setLayout ( SLayout ( SLocation (bd.width, lh+bd.height), SLocation (tw, (int)dheight - (int)bd.height), SLocation (0, 0), SLocation (100, 100) ) ); slider->setLayout ( SLayout ( SLocation (tw, lh+(int)bd.height), SLocation (tw+20, (int)dheight - (int)bd.height), SLocation (100, 0), SLocation (100, 100) ) ); /* save current */ SLayout goodlayout = layout; /* pretend we have this layout */ forceLayout (preferredSize); /* accept old layout */ setLayout (goodlayout); } void SListBox::setBackground (const SColor& bg) { SPanel::setBackground (bg); border.setBackground (bg); } bool SListBox::selectText (const SString& s) { return textList->selectText (s); } bool SListBox::selectItem (int item) { return textList->selectItem (item); } void SListBox::setLabelForeground (const SColor& fg) { topLabel->setForeground (fg); } void SListBox::setSliderBackground (const SColor& bg) { slider->setSliderBackground (bg); } void SListBox::setFont (const SString& font, double fontSize) { topLabel->setFont (font, fontSize); textList->setFont (font, fontSize); recalc(); } void SListBox::setFontSize (double fontSize) { topLabel->setFontSize (fontSize); textList->setFontSize (fontSize); recalc(); } ./stoolkit/0000755000175000017500000000000011334661361012711 5ustar henrichhenrich./stoolkit/SUniqueID.cpp0000644000175000017500000000212510434025610015212 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SUniqueID.h" #include "time.h" #include "string.h" static unsigned int oldSequence = 0; SUniqueID::SUniqueID(void) { time_t t = time (0); timePart = (unsigned int) t; sequence = oldSequence++; char a[64]; sprintf (a, "%u.%u", timePart, sequence); append (a, strlen (a)); } SUniqueID::~SUniqueID () { } ./stoolkit/Makefile0000644000175000017500000000446310725521041014351 0ustar henrichhenrichinclude ../Makefile.conf MODULES=SExcept.o SObject.o SShared.o SHShared.o SBVector.o \ SBHashtable.o SString.o SUniqueID.o SStringVector.o SProperties.o \ SEvent.o SEventBSD.o SIO.o SIOStream.o SCharClass.o \ SConfig.o SBMap.o SUniMap.o SEncoder.o SMatrix.o \ STextIndex.o SCursorIndex.o SEmbedState.o SGlyph.o SParagraph.o \ STextData.o SUtil.o SAutogen.o SDimension.o SLocation.o \ SLineCurve.o SHWConverter.o SCluster.o SBiDi.o SRendClass.o \ SENC_OBJS= sencoder/SBEncoder.o \ sencoder/SB_UTF8.o \ sencoder/SB_Java.o \ sencoder/SB_UTF7.o \ sencoder/SB_Generic.o \ sencoder/SB_ISO2022_JP.o \ sencoder/SB_ISO2022_JP3.o \ sencoder/SB_EUC_JP.o \ sencoder/SB_X11_JP.o \ sencoder/SB_S_JIS.o \ sencoder/SB_X11_HZ.o \ sencoder/SB_GB2312_8.o \ sencoder/SB_HZ.o \ sencoder/SB_X11_KSC.o \ sencoder/SB_EUC_KR.o \ sencoder/SB_UHC.o \ sencoder/SB_Johab.o \ sencoder/SB_BIG5.o \ sencoder/SB_UCS2.o \ sencoder/SB_UInput.o \ sencoder/SB_DeShape.o \ sencoder/SB_NCR.o \ sencoder/SB_GB18030.o \ sencoder/SB_S_JIS0213.o \ sencoder/SB_EUC_JP0213.o \ sencoder/SB_BiDi.o SREGEX_OBJS= \ syntax/SSyntax.o \ syntax/SSyntaxMarker.o \ syntax/SMatcher.o \ syntax/SPattern.o \ syntax/SHunspellPattern.o ifeq ($(SPLATFORM),WINDOWS) OBJS=$(subst .o,.obj,$(MODULES)) $(patsubst sencoder/%.o,%.obj,$(SENC_OBJS)) $(patsubst syntax/%.o,%.obj,$(SREGEX_OBJS)) TARGET=stoolkit.lib else OBJS=$(MODULES) $(SENC_OBJS) $(SREGEX_OBJS) TARGET=libstoolkit.a endif all: $(TARGET) stoolkit.lib: $(OBJS) $(AR)$@ $(OBJS) libstoolkit.a: $(OBJS) $(AR) $@ $(OBJS) $(RANLIB) $@ sencoder/%.o:sencoder/%.cpp $(CXX) -c -o $@ $(CPPFLAGS) $(patsubst %.o,%.cpp,$@) syntax/%.o:syntax/%.cpp $(CXX) -c -o $@ $(CPPFLAGS) $(patsubst %.o,%.cpp,$@) %.o:%.cpp $(CXX) -c -DYUDIT_DATA=\"$(YUDIT_DATA)\" $(CPPFLAGS) $(subst .o,.cpp,$@) %.obj:%.cpp $(CXX) -c -DYUDIT_DATA=\"$(YUDIT_DATA)\" $(CPPFLAGS) $(subst .obj,.cpp,$@) %.obj:sencoder/%.cpp $(CXX) -c $(CPPFLAGS) $(patsubst %.obj,sencoder/%.cpp,$@) %.obj:syntax/%.cpp $(CXX) -c $(CPPFLAGS) $(patsubst %.obj,syntax/%.cpp,$@) depend: $(CXX) -M $(CPPFLAGS) $(patsubst %.o,%.cpp,$(OBJS)) > .depend clean: rm -f *.o *.obj $(TARGET) sencoder/*.o sencoder/*.obj syntax/*.o syntax/*.obj install: ifeq (.depend, $(wildcard .depend)) include .depend endif ./stoolkit/SEmbedState.h0000644000175000017500000000457510434025610015224 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SEmbedState_h #define SEmbedState_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include #define SD_BIDI_MAX_EMBED 61 #define SD_BIDI_MAX32 (SD_BIDI_MAX_EMBED/8+1) class SEmbedState { public: inline SEmbedState(void); inline SEmbedState operator=(const SEmbedState& es); inline SEmbedState(const SEmbedState& es); bool operator == (const SEmbedState& es) const; bool operator != (const SEmbedState& es) const; void setEmbeddingMarks (const SV_UCS4& stack); SV_UCS4 getEmbeddingMarks (const SEmbedState* from) const; inline unsigned int getExplicitLevel() const; inline bool isOverride() const; SString toString() const; private: unsigned int getDepth () const; inline void setExplicitLevel (unsigned int _exlevel, bool _override); void setMark (unsigned int level, unsigned int _mark); unsigned int getMark(unsigned int level) const; SS_UCS4 states[SD_BIDI_MAX32]; char explevel; }; SEmbedState::SEmbedState(void) { memset(states, 0, sizeof (states)); explevel=0; } SEmbedState::SEmbedState(const SEmbedState& es) { memcpy (states, es.states, sizeof (states)); explevel = es.explevel; } SEmbedState SEmbedState::operator=(const SEmbedState& es) { memcpy (states, es.states, sizeof (states)); explevel = es.explevel; return *this; } bool SEmbedState::isOverride() const { return (explevel & 0x40); } unsigned int SEmbedState::getExplicitLevel() const { return (unsigned int) (explevel & 0x3f); } void SEmbedState::setExplicitLevel (unsigned int _exlevel, bool _override) { explevel = ((_exlevel & 0x3f) | (_override?0x40:0)); } #endif /* SEmbedState_h */ ./stoolkit/SBMap.h0000644000175000017500000002402210434025606014020 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** * Generic map (n to n) * @author: Gaspar Sinai * @version: 1999-12-04 */ #ifndef SBMap_H #define SBMap_H #include "stoolkit/STypes.h" #include "stoolkit/SIO.h" #include "stoolkit/SIOStream.h" #include "stoolkit/SStringVector.h" typedef enum { SS_BINARY=0, SS_TEXT_MAP, SS_CTEXT, SS_KEYMAP, SS_BUMAP, SS_CUMAP } SFileFormat; class SBMapBuffer { public: SBMapBuffer(int fromWordSize, int toWordSize); ~SBMapBuffer(); void reset (); void append (const void* buffer, int length); void appendFromNet (const void* buffer, int length); void appendToNet (const void* buffer, int length); void ensureCapacity (int length); // Shift macthed input with size. void shift (int size); // The length of data expected in the input. // 0 1 2 3 int fromWordSize; // The length of data in buffer // 0 1 2 3 int toWordSize; // This is the size of one of the buffers bellow int bufferSize; // This is the length of the array. You should do a toWordSize*length int length; union { SS_WORD8 *u8; SS_WORD16 *u16; SS_WORD32 *u32; SS_WORD64 *u64; } u; }; class SStateModel { public: SStateModel (int inFromLength, int inToLength, int outFromLength, int outToLength); ~SStateModel (); void reset (); // State Machine. Do not overwrite it. // high is used for state machine state. int low; int high; int nextPos; int lastPos; int lastMatch; // These are used for curcular-matches. int circle; SS_WORD64 circleResult; int circleCount; int circleSize; int needReset; SBMapBuffer out; SBMapBuffer in; }; typedef enum { SS_NORMAL=0, SS_LAST, SS_EOF, SS_MAX } SS_LineEnd; class SBMapItem { public: // These flags are the apper bits of states in state machine. enum SFound {REJECT=0, MORE, MATCH_MORE, MATCH }; enum SBMapItemType {SBMapNToN=0, SBMapBumap}; // This will create an SBMapBumap static Map // If matrix is null, it will me a straight map. SBMapItem (int encode, unsigned int inWordSize, int outWordSize, SS_WORD16 highMin, SS_WORD16 highMax, SS_WORD16 lowMin, SS_WORD16 lowMax, const unsigned char* matrix=0); // This will create an SBMapNToN static Map SBMapItem (const unsigned char* buffer); // This will create an SBMapNToN static Map SBMapItem (int _encode, const unsigned char* _name, const unsigned char* _comment, unsigned int _commentSize, unsigned int _inWordSize, unsigned int _outWordSize, unsigned int _inLengthSize, unsigned int _outLengthSize); ~SBMapItem (); unsigned int getDecoderMap (SStringVector* key, SStringVector* value, unsigned int size); /* For maps with holes */ unsigned int getLinearPosition (SS_UCS4 key); SS_UCS4 getLinearKey (unsigned int position); SS_UCS4 getLinearValue (unsigned int position); // to is also used to hash out state machine states. SFound find(const unsigned char in, unsigned int pos, int* from, int* to); const unsigned char* getComment (int arrayIndex, unsigned int* length); const unsigned char* getValue (int arrayIndex, unsigned int* length); const unsigned char* getKey (int arrayIndex, unsigned int* length, unsigned int* matchedLength=0); unsigned int getLength(unsigned int arrayIndex); void convertFromBumap(); // This takes int add (const unsigned char* key, int keySize, int matchSize, const unsigned char* value, int valueSize, const unsigned char* comment, int commSize); int addLine (const unsigned char* line, unsigned int length, bool reverse=false); void buildStateMachine (); int serialize (SString* fd, SFileFormat format, int last=0); int getSerializeSize (); // Get rid of the state machine. void strip (); // // The comment field // byte size. SS_WORD32 commentSize; const unsigned char* comment; // Set to one if encode. unsigned char encode; // // The input/output word in bytes // unsigned char inWordSize; unsigned char outWordSize; // // The size of the length indicator (in bytes) in from of strings // unsigned char inByteLength; unsigned char outByteLength; // This is an array of SS_WORD32 s but they may not be aligned. // WORD32 - 4 byte word size. SS_WORD32 codeSize; const unsigned char* codeMap; // This is the buffer where the references refer to in codeMap. // byte size SS_WORD32 baseSize; const unsigned char* base; // 64 byte Word size SS_WORD32 stateMachineSize; const unsigned char* stateMachine; // 32 bytes const unsigned char* name; SBMapItemType itemType; SS_WORD16 highMin; SS_WORD16 highMax; SS_WORD16 lowMin; SS_WORD16 lowMax; protected: int writeCodeArea (SString* _fd, int _index, SFileFormat _format, SS_LineEnd _last); int writeTextBytes (SString* fd, const unsigned char *from, int length, int slash, int wordSize, SFileFormat _format, SS_LineEnd _last); unsigned int nextSorted (const unsigned char* key, unsigned int keylen); unsigned char* toHex (const unsigned char* in, unsigned int size, unsigned int* len, unsigned int* match); unsigned int stateMachineBufferSize; // This is writable unsigned char* stateMachineBuffer; unsigned int codeMapBufferSize; unsigned char* codeMapBuffer; unsigned int baseBufferSize; unsigned char* baseBuffer; unsigned int commentBufferSize; unsigned char* commentBuffer; unsigned char* nameBuffer; enum SType { SS_STATIC=0, SS_DYNAMIC=1 }; SType stateMachineType; SType baseType; SType codeMapType; SType commentType; SType nameType; // This add one element to state machine, if needed. SS_WORD32 addState(SS_WORD32 oldState, const unsigned char in, unsigned int pos, int from, int to); }; // // This is for low level routines. // Encode means reverse map should be used. #define SS_ACCEPT -1 #define SS_REJECT -2 /** * This is really what you should use */ class SBMap { public: // This is actually reverse = encode logic. enum SBMapType {SBMap_DECODE=0, SBMap_ENCODE}; SBMap (); void setType (int mapType); void setName (const unsigned char* name); void setComment (const unsigned char* comment, int commentSize); ~SBMap (); /* for bumaps only - don't call this otherwise ! */ SS_UCS4 decode (SS_UCS2 in); SS_UCS2 encode (SS_UCS4 in); unsigned int getDecoderMap (SStringVector* key, SStringVector* value, unsigned int size); /* For maps with holes */ unsigned int getLinearPosition (unsigned int _index, SS_UCS4 key); SS_UCS4 getLinearKey (unsigned int _index, unsigned int position); SS_UCS4 getLinearValue (unsigned int _index, unsigned int position); // This item will be owned by SBMap. bool add (SBMapItem* item, int position=-1); bool setFileImage (const SFileImage& image); bool setArray (unsigned char* buffer, int size); inline bool getStatus() { return status; } inline unsigned int getInWordSize (int mapIndex) { return (unsigned int) maps[mapIndex]->inWordSize; } inline unsigned int getOutWordSize (int mapIndex) { return (unsigned int) maps[mapIndex]->outWordSize; } bool makeUnicodeMap (); bool makeStraightMap (); // Return max index int getSize (int index=-1); // Return SBMap_ENCODE or SBMap_DECODE SBMapType getType (int index); int encode (int mapIndex, const void* in, int in_size, SStateModel *stateModel, int more=0); // Same as encode, but put it in the circle int circle (SBMapType type, const void* in, int in_size, SStateModel *stateModel, int more=0); // Return the name field into an array if called with no args return // The name of the whole map. Return the size, but null teminate as well int getName (char* line, int len, int mapIndex=-1); // Read 'between the lines' and return the comment. // Return the size, bu null terminate too. int getComment (char* line, int len, int mapIndex=-1); // Has state machine ? const unsigned char* getStateMachine (int mapIndex); void buildStateMachine (int mapIndex=-1); // Add data to buffer... int serialize (SOutputStream& fd, SFileFormat format=SS_BINARY); inline SBMapItem* getItem (int _index) { return maps[_index]; } // Get rid of state machines. void strip (); int mapType; bool isUMap(); protected: // For humap, cumap int serializeUMAP (SString* fd, SFileFormat format=SS_BINARY); int packString (char* line, int len, const unsigned char* input, int maxlen); enum Type { SBMap_MMAP, SBMap_ARRAY, SBMap_DYNAMIC }; void setOutput(SBMapItem* map, SStateModel* stateModel); bool status; void clear (); bool processBuffer (); bool processSBMapBuffer (); bool processBMBuffer (); SFileImage image; unsigned char* buffer; unsigned int bufferSize; Type bufferType; // 32 bytes const unsigned char* name; unsigned char* nameBuffer; Type nameType; const unsigned char* comment; SS_WORD32 commentSize; unsigned char* commentBuffer; Type commentType; const unsigned char* base; // From buffer. checkBuffer sets them, clear clear them. // Points to beginning of tables. int mapSize; SBMapItem** maps; }; #endif /* SBMap_H */ ./stoolkit/SEvent.cpp0000644000175000017500000001773311331055331014623 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SEvent.h" #include "SEventBSD.h" #include "SExcept.h" #ifndef USE_WINAPI #include #else #include #include #include #endif class SEvtBuffer { public: SEvtBuffer(SEventSource::Type t, long i); ~SEvtBuffer (); bool close(); SEventSource::Type type; long id; int count; bool ok; bool closed; }; SEvtBuffer::SEvtBuffer(SEventSource::Type t, long i) { count = 1; closed = false; id = i; type = t; ok = false; } SEvtBuffer::~SEvtBuffer() { close (); } bool SEvtBuffer::close() { int ret =0; if (!closed) { closed = true; switch (type) { case SEventSource::PIPE: #ifdef USE_WINAPI ret = (id < 0) ? 0 : CloseHandle ((char*)id); if(!ret) ok=false; id = -1; #else ret = (id < 0) ? 0 : ::close (id); if(ret!=0) ok=false; id = -1; #endif break; case SEventSource::FILE: ret = (id < 0) ? 0 : ::close (id); if(ret!=0) ok=false; id = -1; break; case SEventSource::SOCKET: case SEventSource::SERVER: #ifdef USE_WINAPI ret = (id < 0) ? 0 : ::closesocket (id); #else ret = (id < 0) ? 0 : ::close (id); #endif if(ret!=0) ok=false; id = -1; break; case SEventSource::JOB: case SEventSource::TIMER: break; } } return (ok); } /** * @author: Gaspar Sinai * @version: 2000-04-23 * This library is not multi-threaded. Therefor we need event handlers. */ STimer::STimer (long timeout) : SEventSource (TIMER, timeout) { setOK(true); } STimer::~STimer() { } STimer* STimer::newTimer(long timeout, SEventTarget* target) { STimer* t = new STimer(timeout); CHECK_NEW(t); SEventHandler::addTimer (t, target); return t; } SJob::SJob (long priority) : SEventSource (JOB, priority) { setOK(true); } SJob::SJob (void) : SEventSource (JOB, 0) { } SJob::~SJob() { } /** * if false is returned we want to remove this guys. */ int SJob::run () { return -1; } SEventSource::SEventSource (Type t, long sid) { SEvtBuffer* buf = new SEvtBuffer(t, sid); CHECK_NEW (buf); shared = buf; } SEventSource::SEventSource (void) { SEvtBuffer* buf = new SEvtBuffer(FILE, -1); CHECK_NEW (buf); shared = buf; } bool SEventSource::close() { return ((SEvtBuffer*) shared)->close(); } SEventSource::SEventSource(const SEventSource& s) { SEvtBuffer* buf = (SEvtBuffer*) s.shared; buf->count++; shared = buf; } SEventSource& SEventSource::operator = (const SEventSource& s) { if (&s != this) { SEvtBuffer* buf = (SEvtBuffer*) shared; buf->count--; if (buf->count == 0) delete buf; buf = (SEvtBuffer*) s.shared; buf->count++; shared = buf; } return *this; } /** * When an event source dies, we need to remove it from the event * distributor's list. */ SEventSource::~SEventSource () { SEventHandler::remove (this); SEvtBuffer* buf = (SEvtBuffer*) shared; buf->count--; if (buf->count == 0) delete buf; } SEventSource::Type SEventSource::getType () { return ((SEvtBuffer*) shared)->type; } void SEventSource::setOK (bool ok) { ((SEvtBuffer*) shared)->ok=ok; } bool SEventSource::isOK() { return ((SEvtBuffer*) shared)->ok; } long SEventSource::getId () { return ((SEvtBuffer*) shared)->id; } /** * When an event target dies, we need to remove it from the event * distributor's list. */ SEventTarget::SEventTarget (void) { } SEventTarget::~SEventTarget () { SEventHandler::remove (this); } /** * When re-implementing return true if you want repeated timeouts. * @param s is the source where the event came from. */ /*ARGSUSED*/ bool SEventTarget::timeout (const SEventSource* s) { return false; } /** * caused by a jinished job... */ /*ARGSUSED*/ bool SEventTarget::done (const SEventSource* s) { return false; } /** * When re-implementing return true if you want repeated timeouts. * @param s is the source where the event came from. */ /*ARGSUSED*/ void SEventTarget::error (const SEventSource* s) { return; } /** * A server socket accpets... * @param s is the source where the event came from. * return false if the server socket should be closed. */ /*ARGSUSED*/ bool SEventTarget::serve (const SEventSource* s) { return false; } /** * You need to reimplement this to read. * @param s is the source. * @param m is the string read. it will be a SStringNull in case of fail. * @return true if you want to read more. */ /*ARGSUSED*/ bool SEventTarget::write (const SEventSource* s) { return false; } /** * You need to reimplement this to read. * @param s is the source. * @param m is the string read. it will be a SStringNull in case of fail. * @return true if you want to read more. */ /*ARGSUSED*/ bool SEventTarget::read (const SEventSource* s, const SString& m) { return false; } /** * return 0 for no read */ /*ARGSUSED*/ int SEventTarget::readable (const SEventSource* s) { return 1; } /** * THIS IS THE STATIC EVENT HANDLER. */ SEventHandlerImpl* SEventHandler::delegate=0; SEventHandler h; /** * Set the implementation if not set. */ SEventHandler::SEventHandler() { if (delegate==0) { delegate = new SEventBSD(); CHECK_NEW(delegate); } } SEventHandler::~SEventHandler() { if (delegate) delete delegate; } /** * Set the new Implemetation. DELETE the old one. */ bool SEventHandler::setImpl (SEventHandlerImpl* impl) { bool old = implemented(); if (old) delete delegate; delegate = impl; return old; } bool SEventHandler::implemented() { return (delegate != 0); } void SEventHandler::addTimer (STimer* s, SEventTarget* t) { delegate->addTimer (s, t); } void SEventHandler::addServer (SServerStream* s, SEventTarget* t) { delegate->addServer (s, t); } void SEventHandler::addInput (SInputStream* s, SEventTarget* t) { delegate->addInput (s, t); } void SEventHandler::addJob (SJob* s, SEventTarget* t) { delegate->addJob (s, t); } void SEventHandler::addOutput(SOutputStream* s, SEventTarget* t, const SString& m) { delegate->addOutput (s, t, m); } void SEventHandler::remove (SEventTarget* t) { delegate->remove (t); } void SEventHandler::remove (SEventSource* s) { delegate->remove (s); } void SEventHandler::start() { delegate->start (); } void SEventHandler::exit() { delegate->exit (); } /** * Handle the next single event. Return false if * event handler exit was called. */ bool SEventHandler::next() { return delegate->next (); } /** * This is a single implementation of the event handler */ SEventHandlerImpl::SEventHandlerImpl() { } /** * The tables will clean up. */ SEventHandlerImpl::~SEventHandlerImpl() { } void SEventHandlerImpl::addServer (SServerStream* s, SEventTarget* t) { } void SEventHandlerImpl::addTimer (STimer* s, SEventTarget* t) { } void SEventHandlerImpl::addJob (SJob* s, SEventTarget* t) { } void SEventHandlerImpl::addInput (SInputStream* s, SEventTarget* t) { } void SEventHandlerImpl::addOutput (SOutputStream* s, SEventTarget* t, const SString& m) { } void SEventHandlerImpl::remove (SEventTarget* s) { } void SEventHandlerImpl::remove (SEventSource* s) { } void SEventHandlerImpl::start() { } void SEventHandlerImpl::exit() { } /** * Process a next event. Return false if exit was called. */ bool SEventHandlerImpl::next() { return false; } ./stoolkit/SCluster.cpp-0000644000175000017500000012146710434316714015250 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SCluster.h" #include "stoolkit/SProperties.h" #include "stoolkit/SUniMap.h" static unsigned int getJamoCluster (const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished); static SS_UCS4 precomposJamos(SV_UCS4* jamo); static unsigned int getSouthIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished); static unsigned int getIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished); static SUniMap* clusters; static SUniMap* indic; static SProperties* ligatureUnics; static SProperties* ligatureClust; static SProperties* ligatureCache; static SS_UCS4 counters[SD_SCRIPT_MAX]; static SS_UCS4 nextLigature (unsigned int script, const SS_UCS4* unicode, unsigned int length); static void initLigatures(); SString yuditClusterError; /** * Try to form a cluster - an abstract glyphs that can * be broken apart once made. It can be rendered by * a font that contains glyphs and ligatureUnics by subdividing * the cluster. The cluster is in memory order - * vowels are place on the appropriate side. * * Clusters will replace the current SGlyph architecture. * All new things should be added here. * * 2002-04-03 - added surrogate clusters. * * @param ucs4 is the input vector. * @param i is the index in this vector - next character. * @param finished is set to 0 if more data is needed * this parameter can be null. * @return the new index in ucs4. */ unsigned int getCluster (const SV_UCS4& ucs4, unsigned int index, SV_UCS4* retchar, int *finished) { if (finished) *finished = -1; /* pack surrogates into a cluster - no combining marks on surrogates for the time being. */ if (ucs4[index] >= 0xd800 && ucs4[index] <= 0xdbff) { if (ucs4.size() < index+2) { if (finished) *finished = 0; retchar->append (ucs4[index]); return index + 1; } if (ucs4[index+1] >= 0xdc00 && ucs4[index+1] <= 0xdfff) { retchar->append (((ucs4[index] & 0x3ff)<< 10) + (ucs4[index+1]&0x3ff) + 0x10000); if (finished) *finished = 1; return index+2; } return index; } /* start the game */ initLigatures(); /* Should be able to start with ZWJ */ int scriptcode = ( (ucs4[index] == 0x200D || ucs4[index] == 0x25CC) && index+1 < ucs4.size()) ? getUnicodeScript (ucs4[index+1]) : getUnicodeScript (ucs4[index]); if (scriptcode < 0) return index; unsigned int ret = index; yuditClusterError.clear(); switch (scriptcode) { case SD_DEVANAGARI: case SD_BENGALI: case SD_GURMUKHI: case SD_GUJARATI: case SD_ORIYA: case SD_KANNADA: case SD_MALAYALAM: case SD_SINHALA: case SD_TELUGU: if (!indic->isOK()) break;; ret = getIndicCluster ( (unsigned int)scriptcode, ucs4, index, retchar, finished); break; case SD_HANGUL_JAMO: ret = getJamoCluster (ucs4, index, retchar, finished); break; case SD_TIBETAN: case SD_THAI: case SD_LAO: ret = getSouthIndicCluster ((unsigned int)scriptcode, ucs4, index, retchar, finished); //if (ret>0) fprintf (stderr, "TIBET Tibetan: %d\n", ret-index); break; case SD_TAMIL: case SD_YUDIT: if (!clusters->isOK()) break; ret = clusters->lift (ucs4, index, true, retchar); break; } if (finished==0 && yuditClusterError.size()) { // If you want to debug things uncomment this. //fprintf (stderr, "SCluster.cpp:%*.*s\n", SSARGS(yuditClusterError)); } return ret; } /** * Create a JAMO Cluster as of Unicode 3.0 Chapter 3.11. * 1. L.X V.X T.X X.L X.V X.T * 2. T.L * 3. V.L * 4. T.V * In short: Cluster=L*V*T* * Asterisk means: one or more. * @param finished is set to 1 if exact match happens * 0 is not yet finished * -1 if illegal sequence start. */ static unsigned int getJamoCluster (const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished) { unsigned int usize = unicode.size(); if (index>=usize) return index; /* set it to finished - this routine would not be called to other scirpts */ if (finished) *finished = -1; /* Some platforms have unsigned char */ int prevchartype = getJamoClass (unicode[index]); SS_UCS4 nextLig = 0; unsigned int i; for (i=index;iappend (nextLig); return i; } ret->append (next); break; case SD_JAMO_V: if (prevchartype != SD_JAMO_L && prevchartype != SD_JAMO_V) { nextLig = precomposJamos (ret); if (nextLig ==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; } ret->append (next); break; case SD_JAMO_T: /* Do we really have TT sequence ? According to Unicode yes. Hmm.. */ if (prevchartype != SD_JAMO_V && prevchartype != SD_JAMO_T) { nextLig = precomposJamos (ret); if (nextLig==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; } ret->append (next); break; case SD_JAMO_X: default: /* Tone marks can follow the cluster */ // They are suported as composing anyway... #if 0 if (next == 0x302e || next == 0x302f) { ret->append (next); i++; } #endif nextLig = precomposJamos (ret); if (nextLig==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; break; } prevchartype = chartype; } /* Not yet finished. Return unfinished cluster */ if (finished) *finished = 0; if (ret->size()>=1) { nextLig = precomposJamos (ret); if (nextLig==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } /** * Precompose JAMOs that are present in unicode tables * @param jamo is the vector that holds input jamos and * output precompositions. * @return the precomposed JAMOS or 0 */ static SS_UCS4 precomposJamos(SV_UCS4* jamo) { if (jamo->size()==0) return 0; if (jamo->size()==1) return 0; SS_UCS4 last = (*jamo)[jamo->size()-1]; if (last==0x302e || last==0x302f) { if (jamo->size()<=2) return 0; if (jamo->size()>4) return 0; jamo->truncate (jamo->size()-1); } else if (jamo->size()>3) { return 0; } SS_UCS4 l = (*jamo)[0]; SS_UCS4 v = (*jamo)[1]; SS_UCS4 t = (jamo->size() >= 3) ? (*jamo)[2] : 0x11a7; /* tone marks will be rendered first */ if (last==0x302e || last==0x302f) { jamo->insert (0, last); } if (l>=0x1100 && l<=0x1112 && v>=0x1161 && v<=0x1175 && t>=0x11a7 && t<=0x11c2) { jamo->clear(); SS_UCS4 vle = 21*28* (l-0x1100) + 28 * (v-0x1161) + (t-0x11a7) + 0xac00; jamo->append (vle); /* create a unique key */ if (last==0x302e) { vle = vle & 0x3fff; } else if (last==0x302f) { vle = vle & 0x7fff; } vle += 0x80000000 + (0x10000 * SD_HANGUL_PREC); return vle; } return 0; } /** * Get cluster for South Indian Thai-like scripts * The cluster is rendered and treated together. It has * a unicode and a separated memory representation. * Memory representation is only used for fallback rendering. * A cluster is * * a) Consonant + Top/Bottom/Right Sign [+ ...] * b) Consonant + Nukta * c) Consonant + Nukta + Top/Bottom/Right Sign [+ ...] * d) Indep-Vowel + Top/Bottom Sign [+ ...] * * @param finished is set to 1 if exact match happens * 0 is not yet finished * -1 if illegal sequence start. * It also sets yuditClusterError to an appropriate string. */ static unsigned int getSouthIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished) { unsigned int usize = unicode.size(); unsigned int i; if (finished) *finished = 1; /* Some platforms have unsigned char */ char prevchartype = (char)0x7f; /* big enough */ SS_UCS4 nextLig = 0; for (i=index;iencode (next); unsigned int sc = getUnicodeScript (next); if (sc!=scriptcode && next != 0x25cc && next != 0x200d && next != 0x200c) { if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } switch (chartype) { case SD_INDIC_INDEP_VOWEL: ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_CONSONANT_BASE: case SD_INDIC_CONSONANT_POST_BASE: case SD_INDIC_CONSONANT_BELOW_BASE: ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_NUKTA && ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_NUKTA: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with a subjoined consonant."; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE) { yuditClusterError = "Subjoined consonant should be preceded by a full consonant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_LEFT_VOWEL: case SD_INDIC_RIGHT_VOWEL: case SD_INDIC_TOP_VOWEL: case SD_INDIC_BOTTOM_VOWEL: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with a dependent wovel."; return index; } if (prevchartype != SD_INDIC_INDEP_VOWEL && prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_RIGHT_VOWEL && prevchartype != SD_INDIC_TOP_VOWEL && prevchartype != SD_INDIC_BOTTOM_VOWEL) { yuditClusterError = "Dependent sign should be preceded by another character."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_SIGN: if (ret->size()==0) { /* can start with it */ // if (finished) *finished=-1; return index; } ret->append (next); nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; default: if (ret->size()==0) { if (finished) *finished=1; return index; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } prevchartype = chartype; } // fprintf (stderr, "TIBET index=%d\n", index); if (finished) *finished = 0; if (ret->size()>1) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } /** * Get cluster for North Indian Devanagari-like scripts * The cluster is rendered and treated together. It has * a unicode and a seperated memory representation. * Memory representation is only used for fallback rendering. * A cluster is * a) Consonant * b) Consonant + Halant * c) Consonant + Halant + ZWJ * d) Consonant + Nukta + Halant * e) Consonant + Nukta + Halant + ZWJ * f) Independent Vowel * g) Independent Vowel + Vowel * h) [b|c|d|e]* * i) [b|c|d|e]* a * j) [b|c|d|e]* Vowel * k) [a-i] ending with Modifier * l) [a-i] ending with ZWNJ * For bengali * Consonant + ZWJ * Halant + Consonant * are also possible. * @param scriptcode is one of the scripts (Hard-Coded) * @return index if nothing was lifted off vector, return * the number of unicode characters + index otherwise. * append the output cluster to ret, last element is ligature * code - if any. * @param finished is set to 1 if exact match happens * 0 is not yet finished * -1 if illegal sequence start. * It also sets yuditClusterError to an appripriate string. */ static unsigned int getIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished) { unsigned int usize = unicode.size(); unsigned int i; if (finished) *finished = 1; /* Some platforms have unsigned char */ char prevchartype = (char)0x7f; /* big enough */ SS_UCS4 nextLig = 0; for (i=index;iencode (next); //fprintf (stderr, "getIndicCluster=%u %d\n", next, chartype); unsigned int sc = getUnicodeScript (next); if (sc!=scriptcode && chartype != SD_INDIC_ZWNJ && chartype != SD_INDIC_ZWJ && next != 0x25cc) { if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } switch (chartype) { case SD_INDIC_INDEP_VOWEL: ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_BOTTOM_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_LEFT_VOWEL && ct != SD_INDIC_LEFT_RIGHT_VOWEL && ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_MODIFIER && ct != SD_INDIC_HALANT) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_LEFT_VOWEL: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with dependent vowel."; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_INDEP_VOWEL) { yuditClusterError = "Dependent vowel should be preceded by consonant, nukta, halant or independent vowel."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } if (scriptcode == SD_MALAYALAM) ret->insert (ret->size()-1, next); else ret->insert (0, next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_MODIFIER) { nextLig = nextLigature (scriptcode, &unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_LEFT_RIGHT_VOWEL: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with dependent vowel."; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_INDEP_VOWEL) { yuditClusterError = "Dependent vowel should be preceded by consonant, nukta, halant or independent vowel."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } /* this will be the fallback rendering */ { SS_UCS4 l = getLRVowelLeft (next); SS_UCS4 r = getLRVowelRight (next); if (l && r) { if (scriptcode == SD_MALAYALAM) ret->insert (ret->size()-1, l); else ret->insert (0, l); ret->append (r); } else { ret->append (next); } } if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_MODIFIER) { nextLig = nextLigature (scriptcode, &unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_MODIFIER: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster should not start with a modifier."; if (finished) *finished=-1; return index; } if ( prevchartype != SD_INDIC_INDEP_VOWEL && prevchartype != SD_INDIC_TOP_VOWEL && prevchartype != SD_INDIC_BOTTOM_VOWEL && prevchartype != SD_INDIC_LEFT_VOWEL && prevchartype != SD_INDIC_LEFT_RIGHT_VOWEL && prevchartype != SD_INDIC_RIGHT_VOWEL && prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_NUKTA) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i +1; case SD_INDIC_SIGN: if (ret->size()==0) { /* can start with it */ // if (finished) *finished=-1; return index; } ret->append (next); nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; case SD_INDIC_RIGHT_VOWEL: case SD_INDIC_TOP_VOWEL: case SD_INDIC_BOTTOM_VOWEL: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster should not start with dependent vowel."; if (finished) *finished=-1; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_INDEP_VOWEL) { yuditClusterError = "Dependent vowel should be preceded by consonant, nukta, halant or independent vowel."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_MODIFIER) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i +1; } } break; case SD_INDIC_CONSONANT_BASE: case SD_INDIC_CONSONANT_BELOW_BASE: case SD_INDIC_CONSONANT_POST_BASE: if (ret->size() > 0 && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_ZWJ && prevchartype != SD_INDIC_CONSONANT_DEAD) { yuditClusterError = "Consonant should be preceded by halant or nukta or ZWJ"; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_HALANT && ct != SD_INDIC_NUKTA && ct != SD_INDIC_ZWNJ && ct != SD_INDIC_ZWJ && ct != SD_INDIC_MODIFIER && ct != SD_INDIC_BOTTOM_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_LEFT_VOWEL && ct != SD_INDIC_LEFT_RIGHT_VOWEL && ct != SD_INDIC_CONSONANT_DEAD && ct != SD_INDIC_RIGHT_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode,&unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_ZWNJ: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a ZWNJ."; if (finished) *finished=-1; return index; } #if 0 if (prevchartype != SD_INDIC_HALANT) { yuditClusterError = "ZWNJ should be preceded by a halant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } #endif nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; case SD_INDIC_NUKTA: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a nukta."; if (finished) *finished=-1; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_CONSONANT_POST_BASE) { yuditClusterError = "Nukta should be preceded by a consonant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_HALANT && ct != SD_INDIC_MODIFIER && ct != SD_INDIC_BOTTOM_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_LEFT_VOWEL && ct != SD_INDIC_LEFT_RIGHT_VOWEL && ct != SD_INDIC_RIGHT_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode,&unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_ZWJ: // Bengali can start with ZWJ - it needs a little work. #if 0 if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a ZWJ."; if (finished) *finished=-1; return index; } if (prevchartype != SD_INDIC_HALANT) { yuditClusterError = "ZWJ should be preceded by a halant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } #endif ret->append (next); break; case SD_INDIC_HALANT: // Bengali can start with a halant - Yaphala if (next != 0x09cd && ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a halant."; if (finished) *finished=-1; return index; } if (next != 0x09cd && prevchartype != SD_INDIC_INDEP_VOWEL && prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_NUKTA) { yuditClusterError = "Halant should be preceded by an independent vowel, a consonant or nukta."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); break; case SD_INDIC_CONSONANT_DEAD: // Finish the cluster - I dont know any better solution. nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; default: if (ret->size()==0) { if (finished) *finished=1; return index; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; break; } prevchartype = chartype; } if (finished) *finished = 0; if (ret->size()>1) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } /** * Generate a next ligature number if it still does not exist */ static SS_UCS4 nextLigature (unsigned int script, const SS_UCS4* unicode, unsigned int length) { initLigatures (); if (length<2) return 0; SString key = SString((char*)unicode, sizeof (SS_UCS4) * length); const SString* cac = ligatureCache->get (key); SS_UCS4 liga; if (cac && cac->size()==sizeof (SS_UCS4)) { liga = *(SS_UCS4*) (cac->array()); return liga; } liga = counters[script]; /* check overflow */ if ((liga & 0xffff) == 0xffff) return 0; liga++; counters[script] = liga; /* FIXME: check overflow */ SString vle = SString((char*)&liga, sizeof (SS_UCS4)); ligatureCache->put (key, vle); //fprintf (stderr, "New Ligature[%d]=%X\n", script, liga); return liga; } int getUnicodeScript (SS_UCS4 comp) { /* TONE LETTERS */ switch (comp) { case 0x304B: return SD_YUDIT; case 0x304D: return SD_YUDIT; case 0x304F: return SD_YUDIT; case 0x3051: return SD_YUDIT; case 0x3053: return SD_YUDIT; case 0x30AB: return SD_YUDIT; case 0x30AD: return SD_YUDIT; case 0x30AF: return SD_YUDIT; case 0x30B1: return SD_YUDIT; case 0x30B3: return SD_YUDIT; case 0x30BB: return SD_YUDIT; case 0x30C4: return SD_YUDIT; case 0x30C8: return SD_YUDIT; case 0x31F7: return SD_YUDIT; case 0x00E6: return SD_YUDIT; case 0x0254: return SD_YUDIT; case 0x028C: return SD_YUDIT; case 0x0259: return SD_YUDIT; case 0x025A: return SD_YUDIT; default: break; } if (comp >= 0x02E5 && comp <= 0x02E9) return SD_YUDIT; if (getJamoClass (comp)>0) return SD_HANGUL_JAMO; if (comp >= 0x1000) return -1; if (comp < 0x0900 ) return -1; if (comp < 0x0980) return SD_DEVANAGARI; if (comp < 0x0A00) return SD_BENGALI; if (comp < 0x0A80) return SD_GURMUKHI; if (comp < 0x0B00) return SD_GUJARATI; if (comp < 0x0B80) return SD_ORIYA; if (comp < 0x0C00) return SD_TAMIL; if (comp < 0x0C80) return SD_TELUGU; if (comp < 0x0D00) return SD_KANNADA; if (comp < 0x0D80) return SD_MALAYALAM; if (comp < 0x0E00) return SD_SINHALA; if (comp < 0x0E80) return SD_THAI; if (comp < 0x0F00) return SD_LAO; if (comp < 0x0FFF) return SD_TIBETAN; return -1; } /** * return true if this is covered */ bool isCoveredScipt (SS_UCS4 comp, int sc) { switch (sc) { case SD_YUDIT: return false; case SD_DEVANAGARI: return (comp>=0x0900 && comp<0x0980); case SD_BENGALI: return (comp>=0x0980 && comp<0x0a00); case SD_BENGALI_BEGIN: return (comp>=0x0980 && comp<0x0a00); case SD_GURMUKHI: return (comp>=0x0a00 && comp<0x0a80); case SD_GUJARATI: return (comp>=0x0a80 && comp<0x0b00); case SD_ORIYA: return (comp>=0x0b00 && comp<0x0b80); case SD_TAMIL: return (comp>=0x0b80 && comp<0x0c00); case SD_TELUGU: return (comp>=0x0c00 && comp<0x0c80); case SD_KANNADA: return (comp>=0x0c80 && comp<0x0d00); case SD_MALAYALAM: return (comp>=0x0d00 && comp<0x0d80); case SD_SINHALA: return (comp>=0x0d80 && comp<0x0e00); case SD_THAI: return (comp>=0x0e00 && comp<0x0e80); case SD_LAO: return (comp>=0x0e80 && comp<0x0f00); case SD_TIBETAN: return (comp>=0x0f00 && comp<0x0fff); case SD_HANGUL_JAMO: return (getJamoClass(comp) != 0); case SD_HANGUL_PREC: return (getJamoClass(comp) != 0); } return false; } /** * Add combining ligature. A combining ligature is a ligature * with combining marks. The ligature can be a unicode or 8 Yudit ligature. * @param unicode is the unicode representation of the while thing * @param ul is the unicode repr. length * @param ligAndMarks contains one ligature + all the marks to it. * @param cl is the length of ligAndMarks. */ SS_UCS4 addCombiningLigature (const SS_UCS4* unicode, unsigned int ul, const SS_UCS4* ligAndMarks, unsigned int cl) { SS_UCS4 nl = nextLigature (SD_COMBINING_LIGATURE, unicode, ul); const SString* found = ligatureUnics->get ( SString((char*) &nl, sizeof (SS_UCS4))); if (found == 0) { putLigatureUnicode (nl, unicode, ul); putLigatureCluster (nl, ligAndMarks, cl); } return nl; } /** * Put ligature away to remember */ void putLigatureUnicode (SS_UCS4 ligature, const SS_UCS4* buffer, unsigned int bufsize) { if (ligature <= 0x80000000 || ligature >= 0xA0000000) return; initLigatures(); SString key ((char*)& ligature, sizeof (SS_UCS4)); const SString* ret = ligatureUnics->get (key); if (ret) return; /* already there */ ligatureUnics->put (key, SString((char*)buffer, bufsize * sizeof (SS_UCS4))); } /** * Put ligature away to remember */ void putLigatureCluster (SS_UCS4 ligature, const SS_UCS4* buffer, unsigned int bufsize) { if (ligature <= 0x80000000 || ligature >= 0xA0000000) return; initLigatures (); SString key ((char*)& ligature, sizeof (SS_UCS4)); const SString* ret = ligatureClust->get (key); if (ret) return; /* already there */ ligatureClust->put (key, SString((char*)buffer, bufsize * sizeof (SS_UCS4))); } unsigned int getLigatureUnicode (SS_UCS4 lig, SS_UCS4* buffer) { SS_UCS4 ligature = lig; int sc = getLigatureScriptCode(ligature); // // SD_BENGALI_BEGIN is an artificial shape-code. // if (sc == SD_BENGALI_BEGIN) { unsigned int en = (SD_BENGALI << 16) | 0x80000000; ligature = (ligature & 0xffff) | en; } if (ligatureUnics == 0) return 0; const SString* ret = ligatureUnics->get ( SString((char*) &ligature, sizeof (SS_UCS4))); if (ret==0) return 0; if (buffer==0) return ret->size()/sizeof (SS_UCS4); memcpy (buffer, ret->array(), ret->size()); return ret->size()/sizeof (SS_UCS4); } unsigned int getLigatureCluster (SS_UCS4 lig, SS_UCS4* buffer) { SS_UCS4 ligature = lig; int sc = getLigatureScriptCode(ligature); // // SD_BENGALI_BEGIN is an artificial shape-code. // if (sc == SD_BENGALI_BEGIN) { unsigned int en = (SD_BENGALI << 16) | 0x80000000; ligature = (ligature & 0xffff) | en; } if (ligatureClust == 0) return 0; const SString* ret = ligatureClust->get ( SString((char*) &ligature, sizeof (SS_UCS4))); if (ret==0) return 0; if (buffer==0) return ret->size()/sizeof (SS_UCS4); memcpy (buffer, ret->array(), ret->size()); return ret->size()/sizeof (SS_UCS4); } static void initLigatures() { if (ligatureUnics == 0) { clusters = new SUniMap("cluster"); CHECK_NEW (clusters); indic = new SUniMap("indic"); CHECK_NEW (indic); ligatureUnics = new SProperties(); CHECK_NEW (ligatureUnics); ligatureClust = new SProperties(); CHECK_NEW (ligatureClust); ligatureCache = new SProperties(); CHECK_NEW (ligatureCache); for (unsigned int i=0; i> 16; return (int) en; } /* get script name or null */ const char* getLigatureScript (SS_UCS4 comp) { if (comp <= 0x80000000 || comp >= 0xA0000000) return 0; SS_UCS4 en = comp & 0x7fff0000; en = en >> 16; /* I modified this to return Script name as in MS Opentype spec.*/ switch (en) { case SD_YUDIT: return "yudit"; case SD_DEVANAGARI: return "deva"; case SD_BENGALI: return "beng"; case SD_BENGALI_BEGIN: return "beng"; case SD_GURMUKHI: return "guru"; case SD_GUJARATI: return "gujr"; case SD_ORIYA: return "orya"; case SD_TAMIL: return "taml"; case SD_TELUGU: return "telu"; case SD_KANNADA: return "knda"; case SD_MALAYALAM: return "mlym"; case SD_SINHALA: return "sinh"; case SD_HANGUL_JAMO: return "jamo"; case SD_HANGUL_PREC: return "hang"; case SD_THAI: return "thai"; case SD_LAO: return "lao "; case SD_TIBETAN: return "tibt"; } return 0; } bool isLigature (SS_UCS4 _comp) { /* Yudit ligatures below 0x80008000 are considered hacked glyphs only */ return (_comp >= 0x80008000 && _comp > 0x80000000 && _comp < 0xA0000000); } SS_UCS4 getHalant (int index) { switch (index) { case SD_DEVANAGARI: return 0x094D; case SD_BENGALI: return 0x09CD; case SD_BENGALI_BEGIN: return 0x09CD; case SD_GURMUKHI: return 0x0A4D; case SD_GUJARATI: return 0x0ACD; case SD_ORIYA: return 0x0B4D; case SD_TELUGU: return 0x0C4D; case SD_KANNADA: return 0x0CCD; case SD_MALAYALAM: return 0x0D4D; case SD_SINHALA: return 0x0DCD; default: return 0; } return 0; } int getCharType (SS_UCS4 unchar) { initLigatures(); char echartype = (char) indic->encode (unchar); return (int) echartype; } /** * get left part of LR vowel */ SS_UCS4 getLRVowelLeft (SS_UCS4 u) { switch (u) { case 0x09CB: case 0x09CC: return 0x09c7; case 0x0b4b: case 0x0b4c: return 0x0b47; case 0x0d4b: return 0x0d47; case 0x0d4a: case 0x0d4c: return 0x0d46; default: break; } return 0; } /** * get right part of LR vowel */ SS_UCS4 getLRVowelRight (SS_UCS4 u) { switch (u) { case 0x09CB: return 0x09be; case 0x09CC: return 0x09d7; case 0x0b4b: return 0x0b3e; case 0x0b4c: return 0x0b57; case 0x0d4a: case 0x0d4b: return 0x0d3e; case 0x0d4c: return 0x0d57; default: break; } return 0; } /** * Decompose yudit ligature into unicode characters */ void expandYuditLigatures (SV_UCS4* decd) { if (decd->size()!=1 || (*decd)[0] < 0x80000000) return; SS_UCS4 ucs4 = (*decd)[0]; decd->remove (0); /* Yudit ligatures*/ switch (ucs4) { case 0x80000010: /* JIS X 0213: 02B65 */ decd->append (0x02E9); decd->append (0x02E5); break; case 0x80000011: /* JIS X 0213: 02B66 */ decd->append (0x02E5); decd->append (0x02E9); break; // Generated by ./jiscompose.pl at 2002-04-15 // Add this to stoolkit/SCluster.cpp expandYuditLigatures case 0x80000040: /* JIS X 0213: 0x2477 */ decd->append (0x304B); decd->append (0x309A); break; case 0x80000041: /* JIS X 0213: 0x2478 */ decd->append (0x304D); decd->append (0x309A); break; case 0x80000042: /* JIS X 0213: 0x2479 */ decd->append (0x304F); decd->append (0x309A); break; case 0x80000043: /* JIS X 0213: 0x247A */ decd->append (0x3051); decd->append (0x309A); break; case 0x80000044: /* JIS X 0213: 0x247B */ decd->append (0x3053); decd->append (0x309A); break; case 0x80000045: /* JIS X 0213: 0x2577 */ decd->append (0x30AB); decd->append (0x309A); break; case 0x80000046: /* JIS X 0213: 0x2578 */ decd->append (0x30AD); decd->append (0x309A); break; case 0x80000047: /* JIS X 0213: 0x2579 */ decd->append (0x30AF); decd->append (0x309A); break; case 0x80000048: /* JIS X 0213: 0x257A */ decd->append (0x30B1); decd->append (0x309A); break; case 0x80000049: /* JIS X 0213: 0x257B */ decd->append (0x30B3); decd->append (0x309A); break; case 0x8000004A: /* JIS X 0213: 0x257C */ decd->append (0x30BB); decd->append (0x309A); break; case 0x8000004B: /* JIS X 0213: 0x257D */ decd->append (0x30C4); decd->append (0x309A); break; case 0x8000004C: /* JIS X 0213: 0x257E */ decd->append (0x30C8); decd->append (0x309A); break; case 0x8000004D: /* JIS X 0213: 0x2678 */ decd->append (0x31F7); decd->append (0x309A); break; case 0x8000004E: /* JIS X 0213: 0x2B44 */ decd->append (0x00E6); decd->append (0x0300); break; case 0x8000004F: /* JIS X 0213: 0x2B48 */ decd->append (0x0254); decd->append (0x0300); break; case 0x80000050: /* JIS X 0213: 0x2B49 */ decd->append (0x0254); decd->append (0x0301); break; case 0x80000051: /* JIS X 0213: 0x2B4A */ decd->append (0x028C); decd->append (0x0300); break; case 0x80000052: /* JIS X 0213: 0x2B4B */ decd->append (0x028C); decd->append (0x0301); break; case 0x80000053: /* JIS X 0213: 0x2B4C */ decd->append (0x0259); decd->append (0x0300); break; case 0x80000054: /* JIS X 0213: 0x2B4D */ decd->append (0x0259); decd->append (0x0301); break; case 0x80000055: /* JIS X 0213: 0x2B4E */ decd->append (0x025A); decd->append (0x0300); break; case 0x80000056: /* JIS X 0213: 0x2B4F */ decd->append (0x025A); decd->append (0x0301); break; // END OF ./jiscompose.pl default: break; } if (decd->size()==0) decd->append(0xfffd); return; } /** * Get the Jamo class * @param ucs is the unicode character * @return one of *
    *
  • SD_JAMO_X
  • *
  • SD_JAMO_L
  • *
  • SD_JAMO_V
  • *
  • SD_JAMO_T
  • *
*/ int getJamoClass (SS_UCS4 uc) { if (uc >= 0x1100 && uc <= 0x115f) return SD_JAMO_L; if (uc >= 0x1160 && uc <= 0x11a2) return SD_JAMO_V; if (uc >= 0x11a8 && uc <= 0x11f9) return SD_JAMO_T; return SD_JAMO_X; } /* get the name of OTF font shaping feature name */ const char* getShapeCode (unsigned int icode) { static const char* shapes[] = { "isol", "init", "medi", "fina", "med2", "fin2", "fin3", "init", }; if (icode >= 8) return "unkown"; return shapes[icode]; } ./stoolkit/SObject.h0000644000175000017500000000264010434025606014411 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SObject_h #define SObject_h /** * @author: Gaspar Sinai * @version: 2000-04-23 */ /* * This is the basic class for SBinVector * ONLY SOBJECTS CAN BE AUTODELETED */ class SObject { public: virtual SObject* clone() const =0; //virtual int compare (const SObject& o) const = 0; #if SS_DEBUG_MEMORY_LEAK inline SObject(void); virtual ~SObject(); static int debug (int level); private: static int created; static int debugLevel; #else // PUBLIC inline virtual ~SObject(); #endif }; #if SS_DEBUG_MEMORY_LEAK //PUBLIC/INLINE SObject::SObject(void) { created++; } #else SObject::~SObject() { } #endif #endif /* SObject_h */ ./stoolkit/SRendClass.cpp0000644000175000017500000002017710434055402015416 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /*! * \file SRendClass.cpp * \brief Convert Yudit Character Types to OTF. * \author: Gaspar Sinai * \version: 2000-04-23 */ #include "stoolkit/SRendClass.h" #include "stoolkit/SCluster.h" /* * \brief Get the inherent rendering class of the character. * * We use a somewhat different naming convention than * specified in OpenType documents. Here is the Mapping: * * The types in square brackets are handlesd in a * hard-coded switch in here. * * Cbase SD_INDIC_CONSONANT_BASE * Cbellow SD_INDIC_CONSONANT_BELOW_BASE * Cpost SD_INDIC_CONSONANT_POST_BASE * Cdead SD_INDIC_CONSONANT_DEAD * Mbelow[,VMbelow] SD_INDIC_BOTTOM_VOWEL * Mabove SD_INDIC_TOP_VOWEL * Mpost[,Mabove] SD_INDIC_RIGHT_VOWEL * VMpost[,VMabove,SMabove] SD_INDIC_MODIFIER * SMabove[,SMbelow] SD_INDIC_SIGN (only U+0952 is SMbelow) * VO SD_INDIC_INDEP_VOWEL * Mpre SD_INDIC_LEFT_VOWEL * Halant SD_INDIC_HALANT * Nukta SD_INDIC_NUKTA * * Vsplit SD_INDIC_LEFT_RIGHT_VOWEL - need to split * None Extension * * The following types are not returned by this program: * * Cfirst First consonant * Clast Last consonant * Cpre Pre-base * Chbase Cbase that can be in half form. * Cra The first non-reph-ra. * CMra The first non-reph-ra if there is post-base matra. * Creph Repha * CMreph Repha if there is post-base matra. * ZWJ Zero-Width Joiner * ZWNJ Zero-Width Non-Joiner * Any Anything */ SRendClass::RType SRendClass::get (SS_UCS4 u) { if (u >= 0x1100 && u <= 0x115f) return JamoL; if (u >= 0x1160 && u <= 0x11a2) return JamoV; if (u >= 0x11a8 && u <= 0x11f9) return JamoT; switch (u) { // Jamo can use these. case 0x302e: case 0x302f: return Mpre; case 0x0901: case 0x0902: case 0x0981: case 0x0A81: case 0x0B01: case 0x0A82: case 0x0A02: case 0x0A01: case 0x0A03: // Not VMPost return VMabove; case 0x0A70: case 0x0A71: // Not VMpost return SMabove; case 0x0952: return SMbelow; case 0x0C3E: case 0x0C4A: // Not Mabove return Mpost; case 0x0962: case 0x0963: case 0x09E2: case 0x09E3: // Not Mbelow return VMbelow; case 0x200D: return ZWJ; case 0x200C: return ZWNJ; case 0x0946: case 0x0947: case 0x0948: case 0x06C5: case 0x0AC5: return Mpost; // Not above. case 0x0CC3: return LMpost; // It can be proven that OTF fonts treat this as LMpost. } int ct = getCharType (u); switch (ct) { case SD_INDIC_CONSONANT_BASE: return Cbase; case SD_INDIC_CONSONANT_BELOW_BASE: return Cbelow; case SD_INDIC_CONSONANT_POST_BASE: return Cpost; case SD_INDIC_CONSONANT_DEAD: return Cdead; case SD_INDIC_BOTTOM_VOWEL: return Mbelow; case SD_INDIC_TOP_VOWEL: return Mabove; case SD_INDIC_RIGHT_VOWEL: return Mpost; case SD_INDIC_MODIFIER: return VMpost; case SD_INDIC_SIGN: return SMabove; case SD_INDIC_INDEP_VOWEL: return VO; case SD_INDIC_LEFT_VOWEL: return Mpre; case SD_INDIC_HALANT: return Halant; case SD_INDIC_NUKTA: return Nukta; case SD_INDIC_LEFT_RIGHT_VOWEL: return Vsplit; } /* khmm */ return Any; } /*! * \brief Split the vowel into two parts. * \param u is the input character * \param left is the left-vowel output character * \param right is the right-vowel output character * \return true if the split has been sucessful. */ bool SRendClass::split (SS_UCS4 u, SS_UCS4* left, SS_UCS4* right) { // Unfortunatelly not everything is LR. switch (u) { case 0x0B48: // LEFT-TOP 4,6 *left = 0x0B47; *right = 0x0B56; return true; case 0x0C48: // TOP-BOTTOM 6,7 *left = 0x0C46; *right = 0x0C56; return true; case 0x0CC0: // TOP-RIGHT 6,5 *left = 0x0CBF; *right = 0x0CD5; return true; case 0x0CC7: // TOP-RIGHT 6,5 *left = 0x0CC6; *right = 0x0CD5; return true; case 0x0CC8: // TOP-RIGHT 6,5 *left = 0x0CC6; *right = 0x0CD6; return true; case 0x0CCA: // TOP-RIGHT 6,5 *left = 0x0CC6; *right = 0x0CC2; return true; case 0x0CCB: // TOP-RIGHT 6,5 *left = 0x0CCA; *right = 0x0CD5; return true; case 0x0D4B: // LEFT-RIGHT 4,5 - why did I leave this out? *left = 0x0D47; *right = 0x0D3E; return true; // Tibetan: case 0x0F43: // Any, Below *left = 0x0F42; *right = 0x0FB7; return true; case 0x0F4D: // Any, Below *left = 0x0F4C; *right = 0x0FB7; return true; case 0x0F52: // Any, Below *left = 0x0F51; *right = 0x0FB7; return true; case 0x0F57: // Any, Below *left = 0x0F56; *right = 0x0FB7; return true; case 0x0F5C: // Any, Below *left = 0x0F5B; *right = 0x0FB7; return true; case 0x0F69: // Any, Below *left = 0x0F40; *right = 0x0FB5; return true; case 0x0F73: // Below, Top *left = 0x0F71; *right = 0x0F72; return true; case 0x0F75: // Below, Below *left = 0x0F71; *right = 0x0F74; return true; case 0x0F76: // Below, Top *left = 0x0FB2; *right = 0x0F80; return true; case 0x0F77: // Below, Further split - usage is discouraged. *left = 0x0FB2; *right = 0x0F81; return true; case 0x0F78: // Below, Top *left = 0x0FB3; *right = 0x0F80; return true; case 0x0F79: // Below, Further split - usage is discouraged. *left = 0x0FB3; *right = 0x0F81; return true; case 0x0F81: // Below, Top *left = 0x0F71; *right = 0x0F80; return true; case 0x0F93: // Below, Below *left = 0x0F92; *right = 0x0FB7; return true; case 0x0F9D: // Below, Below *left = 0x0F9C; *right = 0x0FB7; return true; case 0x0FA2: // Below, Below *left = 0x0FA1; *right = 0x0FB7; return true; case 0x0FA7: // Below, Below *left = 0x0FA6; *right = 0x0FB7; return true; case 0x0FAC: // Below, Below *left = 0x0FAB; *right = 0x0FB7; return true; } if (get (u) != Vsplit) return false; *left = getLRVowelLeft (u); *right = getLRVowelRight (u); return true; } /*! * \brief Convert type to a string. * \return a string representing type. */ const char* SRendClass::string (RType type) { switch (type) { case Cfirst: return "Cfirst"; case Clast: return "Clast"; case Cpre: return "Cpre"; case Cbase: return "Cbase"; case Chbase: return "Chbase"; case Cbelow: return "Cbelow"; case Cpost: return "Cpost"; case Cdead: return "Cdead"; case Cra: return "Cra"; case CMra: return "CMra"; case Mpre: return "Mpre"; case Mabove: return "Mabove"; case Mbelow: return "Mbelow"; case Mpost: return "Mpost"; case VMbelow: return "VMbelow"; case VMabove: return "VMabove"; case VMpost: return "VMpost"; case LMpost: return "LMpost"; case SMabove: return "SMabove"; case SMbelow: return "SMbelow"; case VO: return "VO"; case Nukta: return "Nukta"; case Halant: return "Halant"; case Vsplit: return "Vsplit"; case Creph: return "Creph"; case CMreph: return "CMreph"; case ZWJ: return "ZWJ"; case ZWNJ: return "ZWNJ"; case Any: return "Any"; case JamoL: return "JamoL"; case JamoV: return "JamoV"; case JamoT: return "JamoT"; default: break; } return "Unknown"; } ./stoolkit/SIO.h0000644000175000017500000000726310434025606013520 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SIO_h #define SIO_h #include "SString.h" #include "SStringVector.h" #include "SEvent.h" #include "SBinVector.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This library is not multi-threaded. Therefor we need event handlers. */ class SIO { public: SIO (SEventSource::Type type); virtual ~SIO(); const SInputStream& getInputStream(); const SOutputStream& getOutputStream(); protected: SInputStream in; SOutputStream out; }; class SFileImage { public: SFileImage (void); SFileImage (long fd, long size, bool write); SFileImage (const SFileImage& in); SFileImage& operator = (const SFileImage& in); long size() const; // Writing is not supported yet. char* array(); char operator[] (unsigned int pos) { return array()[pos]; } ~SFileImage(); private: void* shared; }; /** * A directory in a filesystem */ class SDir { public: enum SEntry { SE_DIR, SE_FILE }; SDir (void); SDir (const SString& name); SDir (const SDir& dir); SDir& operator = (const SDir& dir); virtual ~SDir (); SStringVector list (SEntry e); SStringVector list (const SStringVector &patterns, SEntry e=SE_FILE); SString getName() const; SString getUnixName() const; bool cd (const SString& newDir); bool exists() const; bool readable() const; bool create() const; private: SString name; }; class SStdIO : public SIO { public: SStdIO (); virtual ~SStdIO (); const SInputStream& getInputStream(); const SOutputStream& getOutputStream(); const SOutputStream& getErrorOutputStream(); protected: SOutputStream err; }; class SPipe : public SIO { public: SPipe (const SString& command); SPipe (void); virtual ~SPipe (); const SInputStream& getInputStream(); const SOutputStream& getOutputStream(); int wait (); protected: long openPipe(bool output); SString command; SBinVector waitHandles; }; class SFile : public SIO { public: SFile (const SString& filename); SFile (const SString& filen, const SStringVector& pt, bool lookcwd=true); SFile (const SFile&); SFile& operator = (const SFile&); virtual ~SFile (); long size(); bool truncate (long _size); const SString& getName() const; // Writing is not supported for non-mmap paltforms. const SFileImage& getFileImage(bool write=false); const SInputStream& getInputStream(); const SOutputStream& getOutputStream(); private: SString name; SFileImage map; }; SString getTemporaryFileName (); class SSocket : public SIO { public: SSocket (const SString host, int port); SSocket (const SSocket&); SSocket& operator = (const SSocket&); virtual ~SSocket (); const SInputStream& getInputStream(); const SOutputStream& getOutputStream(); private: void openSocket(SOutputStream* o); unsigned int address[6]; // Four is used now. SString host; int port; }; class SServer : public SIO { public: SServer (int port); virtual ~SServer (); }; #endif /* SIO_h */ ./stoolkit/STextData.h0000644000175000017500000001327010730355331014722 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextData_h #define STextData_h #include "stoolkit/SVector.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/STextIndex.h" #include "stoolkit/SCharClass.h" #include "swindow/SColor.h" #include "stoolkit/SGlyph.h" #include "stoolkit/SParagraph.h" #include "stoolkit/SLineTracker.h" class STextDataEvent { public: /* line per line events */ STextDataEvent (void); STextDataEvent (const STextIndex& start, bool attribute=false); ~STextDataEvent (); void clear(); void add (const STextDataEvent& evt); void setRemaining (const STextIndex& remain); bool valid; bool attribute; // only attribute of text has changed. STextIndex start; /* a reversely calcualted value */ STextIndex remaining; }; class STextDataListener { public: virtual void textChanged(void* src, const STextDataEvent& event) = 0; virtual ~STextDataListener() {} }; /** * This STextData has a notion about glyphs and compositions. */ class STextData { public: STextData (void); STextData (const SString& utf8); STextData operator = (const STextData & data); virtual ~STextData (); SString getText () const; SString getText (const STextIndex& index) const; SString getText (const STextIndex& begin, const STextIndex& end) const; SV_UCS4 getChars (unsigned int line) const { return lines[line]->getChars (); } STextIndex find (const SString& string); const SGlyph& glyphAt (const STextIndex& index) const; // we need only this const SGlyph* peekGlyphAt (const STextIndex& index) const; /* these, till fireEvent all work with events */ void move (const STextIndex& index); /* moves the cursor to the end */ void setText (const SString& utf8); void insert (const SString& data); /* remove moves the cursor */ void remove (const STextIndex& index); /* add a composing character */ bool addComposing(SS_UCS4 c, bool toleft); /* remove a composing character */ SS_UCS4 removeComposing(bool toleft); /* These just change the text */ void select (const STextIndex& index, bool is=true); void underline (const STextIndex& index, bool is=true); bool setParagraphSeparator (const SString& str); bool isLR (unsigned int parag) const; bool isLR (const STextIndex& index) const; SEmbedState getEmbedState (const STextIndex& index) const; void clear (); void fireEvent (); void clearEvent (); unsigned int size() const; unsigned int size(unsigned int line) const; // For syntax, It will not expand line unsigned int softSize (unsigned int line) const; SS_UCS4 softCharAt (unsigned int line, unsigned int pos) const; STextIndex getTextIndex (int charOffset=0, bool logical=false) const; STextIndex getTextIndex(const STextIndex& base, int charOffset=0, bool logical=false) const; STextIndex getMaxTextIndex(const STextDataEvent& evt) const; STextIndex getMinTextIndex(const STextDataEvent& evt) const; unsigned int toLogical (unsigned int line, unsigned int index); SV_UINT getLogicalMap(unsigned int line) const; // Set only void addTextDataListener (STextDataListener* listener); // Set only - lineExpanded is never called, it mmust be handled separately void addLineTracker (SLineTracker* lt); bool isProperLine (unsigned int line) const; bool isVisible(unsigned int line) const; void setVisible(unsigned int line); bool isReordered (unsigned int line) const; void setReordered(unsigned int line); void setDocumentEmbedding(SS_Embedding e); SS_Embedding getDocumentEmbedding() const; bool isWhiteSpace (const STextIndex& index) const; bool isDelimiter (const STextIndex& index) const; bool canWrap (const STextIndex& index) const; bool isNumber (const STextIndex& index) const; bool isLetter (const STextIndex& index) const; bool isTransparent (const STextIndex& index) const; void setLineBreaks (unsigned int line, const SV_UCS4& breaks); bool getInitialLR() const; void setInitialLR(bool lr); const STextDataEvent& getCurrentEvent () const { return event; } bool isExpanded (unsigned int line) const { return lines[line]->isExpanded(); } SS_ParaSep getParagraphSeparator (unsigned int line) const { return lines[line]->getParagraphSeparator (); } private: SS_Embedding embedding; /* insert moves the cursor */ unsigned int properSize(unsigned int line) const; void insert (const SGlyph& glyph); bool setParagraphSeparator (SS_ParaSep ps); void reShape (const STextIndex& index); void reShapeOne (const STextIndex& index); /* moves the cursor to the end */ void setText (const SV_UCS4& ucs4); void setMaxLimits (STextDataEvent* evt, const STextIndex& index); STextIndex reorder (const STextIndex& index); /* These belong to the event being generated */ STextDataEvent event; STextIndex textIndex; /* should be a linked list */ SBinVector lines; STextDataListener* listener; SLineTracker* lineTracker; }; #endif /* STextData_h */ ./stoolkit/SShared.h0000644000175000017500000000456410434025610014413 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef _SShared_h #define _SShared_h #include #include "SExcept.h" /** * @author: Gaspar Sinai * @version: 2000-05-12 */ /* * This is the base class of SBinVector */ class SShared { public: inline SShared (void); SShared (unsigned int size); SShared (const char* copy, unsigned int size); SShared (const SShared& copy); inline ~SShared (); inline void ensure (unsigned int more); static int debug (int level); char* array; unsigned int count; unsigned int arraySize; unsigned int vectorSize; }; /** * Ensure that we have enough capacity. * Before this, the reference count should be one! * int more - the elements in bytes that we need. */ void SShared::ensure(unsigned int more) { if (arraySize > vectorSize + more) return; char* oldArray=array; /* unsigned int newSize = (more + arraySize) * 2; */ unsigned int newSize = (vectorSize == 0) ? more : (more + arraySize) + arraySize/2; if (newSize==0) newSize=1; array = new char[newSize]; CHECK_NEW(array); if (arraySize) { if (vectorSize) memcpy (array, oldArray, vectorSize); delete [] (double*) oldArray; } // Hashtable has a fixed size. If resized, ever we need this line //memset (&array[arraySize], 0, newSize - arraySize); arraySize = newSize; } /** * Create a buffer that will be referenced by all vectors. */ SShared::SShared(void) { count=1; array=0; arraySize=0; vectorSize=0; } /** * delete a buffer. The count should be one here! */ SShared::~SShared() { if (arraySize != 0) { delete [] (double*) array; } } #endif /* _SShared_h */ ./stoolkit/SCharClass.cpp0000644000175000017500000001000210725251225015371 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SCharClass.h" #include "stoolkit/SUniMap.h" #include "stoolkit/SBinHashtable.h" const char* ssCharClass[] = { "Xx", // 0 unknown "Lu", // 01 Lu Letter, Uppercase "Ll", // 02 Ll Letter, Lowercase "Lt", // 03 Lt Letter, Titlecase "Mn", // 04 Mn Mark, Non-Spacing "Mc", // 05 Mc Mark, Spacing Combining "Me", // 06 Me Mark, Enclosing "Nd", // 07 Nd Number, Decimal Digit "Nl", // 08 Nl Number, Letter "No", // 09 No Number, Other "Zs", // 0A Zs Separator, Space "Zl", // 0B Zl Separator, Line "Zp", // 0C Zp Separator, Paragraph "Cc", // 0D Cc Other, Control "Cf", // 0E Cf Other, Format "Cs", // 0F Cs Other, Surrogate "Co", // 10 Co Other, Private Use "Cn", // 10 Cn Other, Not assigned // Informative Categories "Lm", // 12 Lm Letter, Modifier "Lo", // 13 Lo Letter, Other "Pc", // 14 Pc Punctuation, Connector "Pd", // 15 Pd Punctuation, Dash "Ps", // 16 Ps Punctuation, Open "Pe", // 17 Pe Punctuation, Close "Pi", // 18 Pi Punctuation, Initial quote(may behave like Ps or Pe depending on usage) "Pf", // 19 Pf Punctuation, Final quote (may behave like Ps or Pe depending on usage) "Po", // 1A Po Punctuation, Other "Sm", // 1B Sm Symbol, Math "Sc", // 1C Sc Symbol, Currency "Sk", // 1D Sk Symbol, Modifier "So" // 1E So Symbol, Other }; const char* ssBiDiClass[] = { /* strong */ "XX", "L", // Left-to-Right "LRE", // Left-to-Right Embedding "LRO", // Left-to-Right Override "R", // Right-to-Left "AL", // Right-to-Left Arabic "RLE", // Right-to-Left Embedding "RLO", // Right-to-Left Override /* weak */ "PDF", // Pop Directional Format "EN", // European Number "ES", // European Number Separator "ET", // European Number Terminator "AN", // Arabic Number "CS", // Common Number Separator "NSM", // Non-Spacing Mark "BN", // Boundary Neutral /* neutral */ "B", // Paragraph Separator "S", // Segment Separator "WS", // Whitespace "ON" // Other Neutrals }; SD_CharClass getCharClass(SS_UCS4 in) { static SUniMap* ccMap = 0; if (ccMap==0) { ccMap = new SUniMap ("charclass"); CHECK_NEW (ccMap); } if (!ccMap->isOK()) return SD_CC_Xx; SString key((char*)&in, sizeof (in)); // Bengali clusters may start with a virama... if (in==0x09cd) return SD_CC_Mc; // BLISSYMBOLICS65 if (in >= 0xe010 && in <= 0xe019) return SD_CC_Nd; // ROVASIRAS if (in >= 0xee31 && in <= 0xee3f) return SD_CC_Nd; // ROVASIRAS if (in == 0xee2f) return SD_CC_Zs; // BLISSYMBOLICS65 if (in >= 0xe000 && in <=0xe0af) return SD_CC_Lo; // ROVASIRAS if (in >= 0xee00 && in <=0xee8b) return SD_CC_Lo; unsigned int kindex = ccMap->getEncodePosition (in); return (SD_CharClass) ccMap->getEncodeValue(kindex); } SD_BiDiClass getBiDiClass(SS_UCS4 in) { static SUniMap* bcMap = 0; if (bcMap==0) { bcMap = new SUniMap ("bidiclass"); CHECK_NEW (bcMap); } if (!bcMap->isOK()) return SD_BC_XX; unsigned int kindex = bcMap->getEncodePosition (in); SS_UCS4 vle = bcMap->getEncodeValue(kindex); return (SD_BiDiClass) vle; } SS_UCS4 getMirroredCharacter (SS_UCS4 in) { static SUniMap* mirrMap = 0; if (mirrMap==0) { mirrMap = new SUniMap ("mirroring"); CHECK_NEW (mirrMap); } if (!mirrMap->isOK()) return 0; return mirrMap->encode (in); } ./stoolkit/SBinVector.h0000644000175000017500000001061210723221432015070 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SBinVector_h #define SBinVector_h /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SBVector.h" #include "SExcept.h" #include /** * This is my vector. stoolkit as that. There is no code, * just this. This vector is for basic types like int, char e.t.c. */ template class SBinVector : public SBVector { public: SBinVector (void) : SBVector () { } virtual ~SBinVector () {} SBinVector (const SBinVector& v) : SBVector(v) {}; virtual SObject* clone() const { SBinVector* n = new SBinVector (*this); CHECK_NEW(n); return n;} int replace (const SBinVector&e, const SBinVector&with, unsigned int from=0) { return SBVector::replace((char*)e.array(), e.size()*sizeof (Type), (char*)with.array(), with.size()*sizeof(Type), from, sizeof(Type))/sizeof(Type); } int replaceAll (const SBinVector&e, const SBinVector&with, unsigned int from=0) { return SBVector::replaceAll((char*)e.array(), e.size()*sizeof (Type), (char*)with.array(), with.size()*sizeof(Type), from, sizeof(Type)); } void append (const SBinVector& v) { insert (size(), v.array(), v.size()); } void append (const Type& v) { insert (size(), &v); } void append (const Type* v, unsigned int len) { insert (size(), v, len); } void insert (unsigned int ind, const Type& v) { insert (ind, &v, 1); } void insert (unsigned int ind, const SBinVector& v) { insert (ind, v.array(), v.size()); } unsigned int appendSorted (const Type& v) { unsigned int top = findSorted (v); // Append at the end... for (unsigned int i=top; i bottom) { mid = (top+bottom)/2; Type m = peek(mid); if (v == m) { top = mid; break; } if (v < m) { top = mid; continue; } bottom = mid + 1; } return top; } Type peek (unsigned int index) const { return *((Type*)SBVector::peek(index * sizeof (Type))); } void truncate (unsigned int _size) { remove (_size, size() - _size); } void ensure (unsigned int _size) { SBVector::ensure (_size * sizeof (Type)); } unsigned int size () const { return SBVector::size() / sizeof (Type); } Type operator[] (unsigned int index) const { return (Type) (*(Type*)SBVector::peek(index * sizeof (Type))); } const Type* array () const { return (Type*) SBVector::array(); } void insert (unsigned int index, const Type* e, unsigned int len=1) { SBVector::insert (index*sizeof(Type), (const char*) e, len * sizeof (Type)); } void replace (unsigned int index, Type e) { SBVector::replace (index*sizeof (Type), (const char*) &e, sizeof (Type)); } void remove (unsigned int index, unsigned int len=1) { SBVector::remove (index*sizeof (Type), len * sizeof (Type)); } int find (const SBinVector& v, unsigned int from=0) const { int start = SBVector::find ((char*) v.array(), v.size(), from * sizeof(Type), sizeof (Type)); return (start<0) ? -1 : start/sizeof(Type); } int find (const Type v, unsigned int from=0) const { const Type tmpV = v; int start = SBVector::find ((const char*) (&tmpV), sizeof (Type), from * sizeof(Type), sizeof (Type)); return (start<0) ? -1 : start/sizeof(Type); } }; #endif /* SBinVector _h*/ ./stoolkit/SHShared.h0000644000175000017500000000501510434025610014513 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef _SHShared_h #define _SHShared_h #include #include "SExcept.h" /** * @author: Gaspar Sinai * @version: 2000-05-12 */ /* * This is the base class of SBinVector */ class SHShared { public: inline SHShared (void); SHShared (unsigned int size); SHShared (const char* copy, unsigned int size); SHShared (const SHShared& copy); inline ~SHShared (); inline void ensure (unsigned int more); static int debug (int level); char* array; unsigned int count; unsigned int arraySize; unsigned int vectorSize; }; /** * Ensure that we have enough capacity. * Before this, the reference count should be one! * int more - the elements in bytes that we need. */ void SHShared::ensure(unsigned int more) { if (arraySize > vectorSize + more) return; char* oldArray=array; /* This is because hashtable _uses_ vectorsize and the first call to this ensure MUST allocate 'more' bytes. */ unsigned int newSize = (vectorSize == 0) ? more : (more + arraySize) + arraySize/2; if (newSize==0) newSize=1; array = new char[newSize]; CHECK_NEW(array); // We copy the whole thing. Don't care if arraySize is different. /* hashtable does not use vectorSize */ if (arraySize) { memcpy (array, oldArray, arraySize); delete [] oldArray; } // Hashtable has a fixed size. If resized, ever we need this line //memset (&array[arraySize], 0, newSize - arraySize); arraySize = newSize; } /** * Create a buffer that will be referenced by all vectors. */ SHShared::SHShared(void) { count=1; array=0; arraySize=0; vectorSize=0; } /** * delete a buffer. The count should be one here! */ SHShared::~SHShared() { if (arraySize != 0) { delete [] array; } } #endif /* _SHShared_h */ ./stoolkit/SLocation.h0000644000175000017500000000431310434025610014745 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SLocation_h #define SLocation_h #include #include #include class SLocation : public SObject { public: SLocation (void); SLocation (int x, int y); SLocation (const SLocation& d); SLocation (const SDimension& d); SLocation operator = (const SLocation& d); SLocation operator - (const SLocation& d) const; SLocation operator + (const SLocation& d) const; SLocation operator + (const SDimension& d) const; SLocation operator * (const SDimension& d) const; SLocation operator / (const SDimension& d) const; bool operator == (const SLocation& d) const; bool operator != (const SLocation& d) const; bool operator > (const SLocation& d) const; bool operator < (const SLocation& d) const; bool operator >= (const SLocation& d) const; bool operator <= (const SLocation& d) const; SLocation minimize (const SLocation & d) const; SLocation maximize (const SLocation & d) const; SLocation minimize (const SDimension & d) const; SLocation maximize (const SDimension & d) const; SLocation minmerge (const SLocation & l) const; SLocation maxmerge (const SLocation & l) const; int angle32 () const; unsigned int distance () const; unsigned long distance2 () const; int scalarProduct (const SLocation &l) const; int vectorProduct (const SLocation &l) const; virtual ~SLocation (); virtual SObject* clone() const; int x; int y; }; #endif /* SLocation_h */ ./stoolkit/SHWConverter.cpp0000644000175000017500000006274510434025610015753 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SHWConverter.h" #include "SExcept.h" #include "SBinHashtable.h" #include "SUniMap.h" #include "SIO.h" #include "SUtil.h" #include "SAutogen.h" static SLineCurve lineCurve32; static SLineCurve lineCurve12; /* This allows 20% fuzziness */ #define SD_CADIDATE_PERCENT 20 #define SD_CADIDATE_QUANTITY 5 #include #include /* * Handwriting conversion module for Yudit. * Gaspar Sinai * * A total replacement of * gtkkanjipad-0.07 Sven Verdoolaege * http://www.kotnet.org/~skimo/kanji/ * that was mostly copied from Owen Taylor's KanjiPad * http://www.gtk.org/~otaylor/kanjipad/ * The handwriting recognition algorithms were invented by Todd David * Rudick (TDR) for his program JavaDict: * http://www.cs.arizona.edu/japan/JavaDict/ * and translated into C by Robert Wells for his program JStroke: * http://www.wellscs.com/pilot/ * JStroke runs on Pilot handheld computers. * * Changes made by Gaspar Sinai * o totally documented in the perl output file the * magic letters and numbers. * o a total rewrite/reinvention of the scoring system * - renamed ranking system. * - corretly calculates probabilities. * o a total rewrite of all the routines found in original programs, * for clearity. * A did not make any change to the original stroke format. * Reason: I want to be able to add stuff that is used for kanjipad. */ class SHWData { public: SHWData(const SString& data); ~SHWData(); SStringVector convert(const SLineCurves& str, bool derected); unsigned int getIndex(unsigned int stroke); void reindex(); int count; int version; SV_UINT index; private: int scoreAll (const SLineCurves& strokes, const char* buffer, unsigned int from, unsigned int to, bool directed); bool rewriteGuideElementV1 (unsigned int element, SV_UINT *guide); unsigned int rewriteGuideElementsV2 (const char* buffer, unsigned int size, SV_UINT *guide); int fitOneStroke (const SLineCurve& stroke, unsigned int sfrom, unsigned int sto, const SV_UINT& guide, unsigned int pfrom, unsigned int pto, int reversed); int getFilterValue (const SLineCurves& strokes, const char* filter, unsigned int filterSize); int applyFilter (const SLineCurves& strokes, const char* operand, const unsigned int * strokeIndex, bool must); int calculateFilter (const SLineCurve& stroke, char operand); SFileImage image; SString name; }; /* todo - on exist free this cache */ typedef SBinHashtable SWTable; static SWTable* hwcache=0; /** * Create a new SHWConverter using name. * This is an empty converter. */ SHWConverter::SHWConverter(void) { shared = 0; } static int debugLevel = 0; void SHWConverter::setDebugLevel (int level) { debugLevel = level; } /** * Create a new SHWConverter using name. * @param name is the name of the conversion. * SUniMap::getPath() will be searched for name.hwd file. */ SHWConverter::SHWConverter(const SString& _name) { shared = 0; /* is it cached ? */ SHWData* data; name = _name; if (hwcache == 0) hwcache = new SWTable(); if ((data = hwcache->get (name)) == 0) { data = new SHWData(name); CHECK_NEW (data); if (data->count==0) { delete data; data = 0; } else { hwcache->put (name, data); } } else { data->count++; } shared = data; } const SString& SHWConverter::getName() const { return name; } /** * Copy constructor. * Just shared the existing buffer. */ SHWConverter::SHWConverter(const SHWConverter& c) { if (&c != this) { SHWData* data = (SHWData*) c.shared; if (data) data->count++; this->shared = data; this->name = c.name; } } SHWConverter::~SHWConverter() { SHWData* data = (SHWData*) shared; if (data) data->count--; } SHWConverter SHWConverter::operator= (const SHWConverter& c) { if (&c != this) { SHWData* data = (SHWData*) shared; if (data) data->count--; data = (SHWData*) c.shared; if (data) data->count++; this->shared = data; this->name = c.name; } return *this; } /** * Check if this converter is ok * @return false if this converter can not be used. */ bool SHWConverter::isOK () const { SHWData* data = (SHWData*) shared; if (data !=0) data->reindex(); return (data != 0 && data->index.size() > 0); } /** * Convert hand-written data into a list of candidates. * @str is the strokelist * @param directed is ture if direction is taken into account. * @return the candidate list in utf-8 */ SStringVector SHWConverter::convert(const SLineCurves& str, bool directed) const { SHWData* data = (SHWData*) shared; if (data == 0) return SStringVector(); return data->convert (str, directed); } /** * Create a new SHWData and set index to 0 if failed, set index to * 1 if it was successful. */ SHWData::SHWData(const SString& data) { count = 0; version = 0; name = data; SString n (data); n.append (".hwd"); SStringVector p = SUniMap::getPath(); SFile f (n, p); if (f.size() >0) { name = f.getName(); image = f.getFileImage(); if (image.size() > 0) count++; } } SHWData::~SHWData() { } /** * Recalculate indexes so that the index will hash to * the appropriate stroke number. * If it can not be, reset the image. */ void SHWData::reindex() { if (image.size()<=0 || index.size() > 0) return; char* buffer = image.array(); unsigned int length = (unsigned int) image.size(); /* filetype check */ if (length<6 || buffer[0] != '#' || buffer[1] != 'H' || buffer[2] != 'W' || buffer[3] != 'D' || buffer[4] != ' ') { /* empty fileimage */ image = SFileImage(); return; } /* Version 1 uses mystic letters for directions */ if (buffer[5] == '1') { version = 1; } /* Version 1 uses numbers for directions on a clock (0..11)*/ else if (buffer[5] == '2') { version = 2; } else { /* empty fileimage */ image = SFileImage(); return; } unsigned int i; unsigned int j; bool nl = true; unsigned int linecount=1; for (i=0; ii + 2 + 1 + 1 + 1) { if (buffer[i]<'0' || buffer[i]>'9' || buffer[i+1]<'0' || buffer[i+1]>'9' || buffer[i+2] != ' ') { if (debugLevel > 0) { fprintf (stderr, "FileFormat error in SHWConverter: %*.*s line: %u\n", SSARGS (name), linecount); } image = SFileImage(); index.clear(); return; } nl = false; unsigned int strokeCnt = 10 * (unsigned int)(buffer[i]-'0') + (unsigned int)(buffer[i+1]-'0'); if (index.size() > strokeCnt+1) { if (debugLevel > 0) { fprintf (stderr, "SHWConverter: %*.*s line: %u unsorted!\n", SSARGS (name), linecount); } image = SFileImage(); index.clear(); return; } /* fill index with zeros */ if (index.size() < strokeCnt+1) { j = index.size(); while (j++=index.size()) return (unsigned int) image.size(); return index[i]; } /** * Convert hand-written data into a list of candidates. * @str is the strokelist * @param directed is ture if direction is taken into account. * @return the candidate list in utf-8 */ SStringVector SHWData::convert(const SLineCurves& strokes, bool directed) { /* version 1.0 */ if (lineCurve32.size() ==0) { SLineCurve clock32 = getCurveCircle32(); /* scale it down, to fit on 1 byte */ for (unsigned i=0; i=j || buffer[k] != ' ') { break; } SString str (&buffer[i+3], k-i-3); candidates.append (str); i=k+1; while (k 2) { fprintf (stderr, "Stokes: count=%u sorted=%u, length=%u bestlength=%d\n", strokes.size(), sorted.size(), fullsize, -sorted[0]/lineCurve32[16].y); } /* the most negatives come first. */ int delta = sorted[0] * SD_CADIDATE_PERCENT / 100; /* 20 percent, negative */ if (delta<0) delta = -delta; // always for (i=0; i sorted[0]+delta || i>SD_CADIDATE_QUANTITY) { sorted.truncate (i); bestOnes.truncate (i); break; } } return (SStringVector(bestOnes)); } /* * Simply put - it calcualtes the distance of the projection * of the curve on the guideline. The best it fist the closest * it gets to the real line-length of strokes. * @param strokes contains all the strokes in the drawing. * @param buffer contains the score description line (character guide) * @param from is the starting point in buffer * @param to is the ending point in buffer * @param directed is true if writing direction matters. * @return a score number. The bigger the number the better it is. * at the best fit this should be the length of the whole strokes. */ int SHWData::scoreAll (const SLineCurves& strokes, const char* buffer, unsigned int from, unsigned int to, bool directed) { unsigned int cindex = from; int currentLength = 0; for (unsigned int i=0; ito) { if (debugLevel > 0) { fprintf (stderr, "Not enough strokes in '%*.*s' expected=%u got=%u\n", (int)(to-from), (int)(to-from), &buffer[from], strokes.size(), i); } return -1; } } else { if (!rewriteGuideElementV1 ((unsigned int) buffer[cindex], &guide)) { if (debugLevel > 0) { fprintf (stderr, "Not enough strokes in '%*.*s' expected=%u got=%u\n", (int)(to-from), (int)(to-from), &buffer[from], strokes.size(), i); } return -1; } cindex++; /* get the rest - all small letters - this is in version 1 only */ while (cindex < to && buffer[cindex] != '|' && (buffer[cindex] == ' ' || buffer[cindex] >= 'a')) { if (!rewriteGuideElementV1 ((unsigned int) buffer[cindex], &guide)) { if (debugLevel > 0) { fprintf (stderr, "Bad syntax in '%*.*s' strokes=%u\n", (int)(to-from), (int)(to-from), &buffer[from], strokes.size()); } return -1; } cindex++; } } /* this stroke is done */ const SLineCurve& stroke = strokes[i]; /** * Try positive */ int projectedLength = fitOneStroke (stroke, 0, stroke.size(), guide, 0, guide.size(), 1); /** * Try negative - reverse order */ if (!directed && projectedLength < 0) { projectedLength = fitOneStroke (stroke, 0, stroke.size(), guide, 0, guide.size(), -1); } /* * Don't add ranks up. Probabilities are multiplied. * gaspar@yudit.org 2001-11-04 */ currentLength += projectedLength; } /* apply additional filtering - this also return a length type object */ if (cindex+1 < to && buffer[cindex] == '|') { currentLength += getFilterValue (strokes, &buffer[cindex+1], to-cindex-1); } return currentLength; } /** * Try to fit the Stroke to the guide. This is * Gaspar Sinai original * 2001-11-06, Tokyo * @param stroke is the stroke to rank. * @param strokefrom is the lower limit in stroke * @param strokeend is the upper, not including limit in stroke * @param guide is the angle path 0..31 * @param guidestart is the lower limit in guide * @param guideend is the upper, not including limit in ppath * @param directed is *
    *
  • 1 if directed in positive direction
  • *
  • -1 if directed in negative direction
  • *
* @return the length of the fit, that is projected with a * unit vector to the angle. it can be negative if opposite * fit fits. */ int SHWData::fitOneStroke (const SLineCurve& stroke, unsigned int strokefrom, unsigned int strokeend, const SV_UINT& guide, unsigned int guidestart, unsigned int guideend, int directed) { /* Should not happen unless we have a corrupt guide */ if (guideend-guidestart < 1 || stroke.length()==0) return 0; /* End of recursize loop - not dividable any more */ if (strokeend-strokefrom < 2 || guideend-guidestart==1) { if (strokeend-strokefrom < 1) return 0; SLocation v = stroke.getVector (strokefrom, strokeend-1); const SLocation& l = (version==1) ? lineCurve32[guide[guidestart]] // 36 JavaDict, JStroke, Kanjipad : lineCurve12[guide[guidestart]]; // 12 Yudit version int ret = v.scalarProduct(l) * directed; if (debugLevel > 10) { fprintf (stderr,"fitOneStroke[%u..%u] guide [%u..%u] directed=%d ret=%d\n", strokefrom, strokeend, guidestart, guideend, directed, ret); fprintf (stderr, "unit=%d,%d stroke=%d,%d\n", l.x, l.y, v.x, v.y); } return ret; } /* * cut the guide into two equal halves and find * a partition that has longest projected length * Gaspar Sinai */ int maxlength = -1; unsigned int pmid = (guideend-guidestart) / 2 + guidestart; unsigned int s0 = guidestart; unsigned int s1 = pmid; unsigned int e0 = pmid; unsigned int e1 = guideend; /* reverse direction */ if (directed<0) { s0=pmid; s1=guideend; e0=guidestart; e1=pmid; } /* No need unsigned int sstep = (strokeend - strokefrom) / 2; if (sstep <1) sstep = 1; */ /* slowly move it */ unsigned int sstep = 1; int fulllength = (int)stroke.length(); for (unsigned int i=strokefrom; i+sstep SD_DIVIDE_FACT * l0 * (guideend - guidestart) || SD_DIVIDE_FACT * (fulllength * (s1-s0)) < l0 * (guideend - guidestart)) { continue; } if ((fulllength * (e1-e0)) > SD_DIVIDE_FACT * l1 * (guideend - guidestart) || SD_DIVIDE_FACT * (fulllength * (e1-e0)) < l1 * (guideend - guidestart)) { continue; } int length0 = fitOneStroke (stroke, strokefrom, i+sstep+1, guide, s0, s1, directed); int length1 = fitOneStroke (stroke, i+sstep, strokeend, guide, e0, e1, directed); int thislength = length0 + length1; if (thislength > maxlength) maxlength = thislength; } return maxlength; } /** * Filter is a very strong ranker. * @return a direction-like object. */ int SHWData::getFilterValue (const SLineCurves& strokes, const char* filter, unsigned int filterSize) { char oparand[2]; unsigned int strokeIndex[2]; /* init */ oparand[0] = oparand[1] = 0; strokeIndex[0] = strokeIndex[1] = 0; bool must = false; unsigned idx=0; /* 0 or 1 */ int currentLength = 0; int minLength = 0; int maxLength = 0; int length = 0; for (unsigned int i=0; i strokes.size() || strokeIndex[0] == 0 || strokeIndex[1] > strokes.size() || strokeIndex[1] == 0) { if (debugLevel > 0) { fprintf (stderr, "Filter syntax error in %*.*s at '%c'\n", (int)filterSize, (int)filterSize, filter, filter[i]); } return 0;/* neutral */ } /* apply filter */ length = applyFilter(strokes, oparand, strokeIndex, must); currentLength += length; if (length < minLength) minLength = length; if (length > maxLength) maxLength = length; /* init */ oparand[0] = oparand[1] = 0; strokeIndex[0] = strokeIndex[1] = 0; must = false; idx = 0; } /* end case */ } /* last filter */ if (idx == 1) { /* apply filter */ length = applyFilter(strokes, oparand, strokeIndex, must); currentLength += length; if (length < minLength) minLength = length; if (length > maxLength) maxLength = length; } if (currentLength == 0) return 0; if (currentLength < 0) return minLength; return currentLength; } /** * @return 0..127 31 being neutral * @param strokes contains all the strokes. * @param operand contains the operands (2 of them) * @param strokeIndex contains the index in stoke array. * 1 being the first element. * @param must can inforce the filter. */ int SHWData::applyFilter (const SLineCurves& strokes, const char* operand, const unsigned int * strokeIndex, bool must) { int val0 = calculateFilter (strokes[strokeIndex[0]-1], operand[0]); int val1 = calculateFilter (strokes[strokeIndex[1]-1], operand[1]); int diff = val0 - val1; /* plus is good, negative is a bad thing. */ if (debugLevel > 10) { fprintf (stderr, "apply %c%d-%c%d%s = %d %d-%d\n", operand[0], strokeIndex[0], operand[1], strokeIndex[1], (must?"!":""), diff, val0, val1); } if (must) return diff; return 2 * diff * SD_CADIDATE_PERCENT / 100; //return (must) ? diff : diff * SD_CADIDATE_PERCENT / 100 / 2; } /** * calculate one filter elment. * @param stroke contains the stroke, only one. * @param operand is the operand * @return length type argument. */ int SHWData::calculateFilter(const SLineCurve& stroke, char operand) { const SLocation& fl = stroke[0]; const SLocation& ll = stroke[stroke.size()-1]; switch (operand) { case 'x': return fl.x; /* first */ case 'y': return fl.y; /* first */ case 'i': return ll.x; /* second */ case 'j': return ll.y; /* second */ case 'a': return (ll.x+fl.x)/2; /* middle */ case 'b': return (ll.y+fl.y)/2; /* middle */ case 'l': return (ll-fl).distance(); /* length */ } /* should not happen */ return 0; } /** * Try to rewrite version 2 syntax guide till size or * '|'. '\n' and white space are ok. * Otherwise update guide with values according to 12 hour clock * angles. * @return the next element after white space has been eaten up. * in case of error, return size+1. */ unsigned int SHWData::rewriteGuideElementsV2 (const char* buffer, unsigned int size, SV_UINT *guide) { bool param=false; bool done=false; bool separated=true; unsigned int currentAngle = 0; unsigned int i; for (i=0; i 12) { if (debugLevel > 0) { fprintf (stderr, "Guide: angle too large %u (max. is 12).\n", currentAngle); } return size+1; } guide->append (currentAngle); param = false; currentAngle=0; separated = false; } break; case ',': done = true; i++; break; case '-': if (!param) return size+1; if (currentAngle > 12) { if (debugLevel > 0) { fprintf (stderr, "Guide: angle too large %u (max. is 12).\n", currentAngle); } return size+1; } guide->append (currentAngle); param = false; currentAngle=0; separated=true; break; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': if (!separated) { if (debugLevel > 0) { fprintf (stderr,"Guide: parameters should be separated with '-'.\n"); } return size+1; } currentAngle=currentAngle*10 + (unsigned int) (buffer[i] - '0'); param = true; break; case '|': case '\n': done = true; break; default: if (debugLevel > 0) { fprintf (stderr, "Guide: illegal character.\n"); } return size+1; } if (done) break; } if (param) { if (currentAngle > 12) { if (debugLevel > 0) { fprintf (stderr, "Guide: angle-param too large %u (max. is 12).\n", currentAngle); } return size+1; } guide->append (currentAngle); } if (guide->size()==0) { if (debugLevel > 0) { fprintf (stderr, "Guide: empty guide.\n"); } return size+1; } while (iappend (20); break; /* TDR='1' CLK=07:30 DEG=225 */ case 'B': case 'b': guide->append (16); break; /* TDR='2' CLK=06:00 DEG=180 */ case 'C': case 'c': guide->append (12); break; /* TDR='3' CLK=04:30 DEG=135 */ case 'D': case 'd': guide->append (24); break; /* TDR='4' CLK=09:00 DEG=270 */ case 'F': case 'f': guide->append (8); break; /* TDR='6' CLK=03:00 DEG=090 */ case 'G': case 'g': guide->append (28); break; /* TDR='7' CLK=10:30 DEG=315 */ case 'H': case 'h': guide->append (0); break; /* TDR='8' CLK=12:00 DEG=360 */ case 'I': case 'i': guide->append (4); break; /* TDR='9' CLK=01:30 DEG=045 */ /* doubel ones */ case 'J': case 'j': guide->append (16); guide->append (20);/* TDR='x' down 06:00 then 07:30 */ break; case 'K': case 'k': guide->append (16); guide->append (12);/* TDR='y' down 06:00 then 04:30 */ break; case 'L': case 'l': guide->append (16); guide->append (8);/* TDR='c' down 06:00 then 03:00 */ break; case 'M': case 'm': guide->append (8); guide->append (16);/* TDR='b' across 03:00 then 06:00 */ break; default: return false; } return true; } ./stoolkit/SExcept.h0000644000175000017500000000211110434025606014424 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SExcept_h #define SExcept_h class SExcept { public: SExcept (const char* mes); SExcept (const SExcept& e); ~SExcept (); SExcept& operator= (const SExcept& e); const char* toString() const; private: char* message; }; #define CHECK_NEW(_a) if(_a==0) throw SExcept("Not Enough Memory") #endif /* SExcept_h */ ./stoolkit/SDimension.cpp0000644000175000017500000000672610434025610015467 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SDimension.h" #include SDimension::SDimension (void) { width = 0; height = 0; } /** * Create a dimension object * @param width is the width of the object * @param height is the height of the object */ SDimension::SDimension (int w, int h) { this->width = w; this->height = h; } /** * Copy a dimension object * @param d is the dimension */ SDimension::SDimension (const SDimension& d) { this->width = d.width; this->height = d.height; } /** * Create a Dimension from a string of format %d.%d */ SDimension::SDimension (const SString& d) { unsigned int w; unsigned int h; this->width = 10; this->height = 10; SString s(d); s.append ((char)0); if (sscanf (s.array(), "%ux%u", &w, &h) == 2 || sscanf (s.array(), "%uX%u", &w, &h) == 2) { this->width = w; this->height = h; } } /** * Copy a dimension object * @param d is the dimension */ SDimension SDimension::operator = (const SDimension& d) { this->width = d.width; this->height = d.height; return *this; } SDimension SDimension::operator - (const SDimension& d) const { return SDimension (width - ((d.width > width) ? width : d.width), height - ((d.height > height) ? height : d.height)); } SDimension SDimension::operator * (unsigned int scale) const { return SDimension (width * scale, height * scale); } /** * The returned dimension can not be smaller than d. */ SDimension SDimension::minimize (const SDimension & d) const { return SDimension ( (width < d.width) ? d.width : width, (height < d.height) ? d.height : height ); } /** * The returned dimension can not be larger than d. */ SDimension SDimension::maximize (const SDimension & d) const { return SDimension ( (width > d.width) ? d.width : width, (height > d.height) ? d.height : height ); } SDimension SDimension::operator * (const SDimension& d) const { return SDimension (width * d.width, height * d.height); } SDimension SDimension::operator / (const SDimension& d) const { return SDimension ((d.width>0) ? width / d.width : width, (d.height>0) ? height / d.height : height); } SDimension SDimension::operator + (const SDimension& d) const { return SDimension (width + d.width, height + d.height); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SDimension::operator == (const SDimension& d) const { return (d.width == width && d.height == height); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SDimension::operator != (const SDimension& d) const { return (d.width != width || d.height != height); } /** * Destructor - nothing to desctruct now.. */ SDimension::~SDimension () { } ./stoolkit/STextData.cpp0000644000175000017500000006711410730355352015266 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/STextData.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SUtil.h" #include "stoolkit/STypes.h" #include "stoolkit/SCharClass.h" /*------------------------------------------------------------------------------ * STextDataEvent *------------------------------------------------------------------------------ */ /** * @param attr is tru if no text was added or removed. only attribute changed. */ STextDataEvent::STextDataEvent (const STextIndex& _start, bool attr) { start = _start; valid = false; attribute = attr; } /** * Create a stoolkit STextDataEvent */ STextDataEvent::STextDataEvent (void) { clear (); } /** * Set the remaining. */ void STextDataEvent::setRemaining (const STextIndex& _remaining) { remaining = _remaining; valid = true; } /** * Nothing to destroy. Just in case */ STextDataEvent::~STextDataEvent () { } unsigned int STextData::softSize (unsigned int line) const { if (line >= size()) return 0; const SParagraph* l = lines[line]; return l->softSize(); } SS_UCS4 STextData::softCharAt (unsigned int line, unsigned int pos) const { if (line >= size()) return 0; const SParagraph* l = lines[line]; return l->softCharAt(pos); } /** * Clear all fields. */ void STextDataEvent::clear () { start = STextIndex (0,0); remaining = STextIndex (0,0); valid = false; attribute = true; } /** * Add a new event to this in a sane way. */ void STextDataEvent::add (const STextDataEvent& event) { if (!event.valid) { return; } if (!valid) { start = event.start; remaining = event.remaining; if (!event.attribute) attribute = false; } else { if (event.remaining < remaining) { remaining = event.remaining; } if (event.start < start) { start = event.start; } } valid = true; } /*------------------------------------------------------------------------------ * STextData *------------------------------------------------------------------------------ */ /** * Create and empty STextData */ STextData::STextData (void) { embedding = SS_EmbedNone; listener = 0; lineTracker = 0; } /** * Create a text data from utf8. * @param utf8 is the input text */ STextData::STextData (const SString& utf8) { embedding = SS_EmbedNone; listener = 0; lineTracker = 0; insert (utf8); } /** * clear the data and assign new data */ STextData STextData::operator = (const STextData & data) { clear (); embedding = data.embedding; for (unsigned int i=0; i< lines.size(); i++) { SParagraph *p = new SParagraph ((*(data.lines[i]))); CHECK_NEW (p); p->setEmbedding (embedding); p->underline (false); p->select (false); lines.append (p); if (lineTracker) lineTracker->lineInserted (this, lines.size()-1); } return *this; } /** * Glyph Lines are pointers */ STextData::~STextData () { for (unsigned int i=0; i begin) { start = begin; stop = end; } else { start = end; stop = begin; } if (stop.line > size()) { stop.line = size(); stop.index = size(size()-1); } for (unsigned int i=start.line; i<=stop.line && istart.line && igetChars ()); ret.append (ic.encode (ucs)); } else { unsigned int b = (i==start.line) ? start.index : 0; unsigned int e = (i==stop.line)? stop.index : size (i); SParagraph* sub = lines[i]->subParagraph (b, e); SV_UCS4 ucs; ucs.append (sub->getChars()); delete sub; ret.append (ic.encode (ucs)); } } return SString(ret); } /** * find string in text data from current position. * return an index to the end of that data. * move the current position to the beginning of the data. * it does not search across lines. */ STextIndex STextData::find (const SString& string) { STextData d (string); /** * go through all lines. */ for (unsigned int i=textIndex.line; ipeek(j+k); const SGlyph& g2 = d.glyphAt (STextIndex(0, k)); if (g2 != *g) { found = false; } } if (found) { move (STextIndex(i, j)); return STextIndex (i, j+d.size(0)); } } } return STextIndex (0,0); } /** * Get a glyph at a certain position * @param index is the glyph index * @return a reference to the glyph. */ const SGlyph& STextData::glyphAt (const STextIndex& index) const { return (*lines[index.line])[index.index]; } /** * Get a glyph at a certain position * @param index is the glyph index * @return a reference to the glyph. */ const SGlyph* STextData::peekGlyphAt (const STextIndex& index) const { return &(*lines[index.line])[index.index]; } /** * move the insertion point. * @param line is the line number. * @param index is the line index. */ void STextData::move (const STextIndex& index) { STextIndex ndx (index); if (ndx.line > size()) ndx.line = size(); if (ndx.line > 0 && !isProperLine (ndx.line-1)) { ndx.line--; ndx.index = size(ndx.line); } if (ndx.line == size()) { ndx.index = 0; } else if (ndx.index >= size(ndx.line)) { ndx.index = size(ndx.line); if (isProperLine (ndx.line) && ndx.index == size(ndx.line)) { ndx.index = ndx.index-1; } } textIndex = ndx; } /** * set the text data */ void STextData::setText (const SString& string) { SEncoder ic("utf-8-s"); SV_UCS4 ucs4 = ic.decode (string, false); setText (ucs4); } /** * set the text data */ void STextData::setText (const SV_UCS4& ucs4) { clear (); /* split into lines */ unsigned int start = 0; while (true) { unsigned int from = start; SParagraph* gl = new SParagraph(ucs4, &start); CHECK_NEW(gl); gl->setEmbedding (embedding); if (from==start) { delete gl; break; } lines.append (gl); if (lineTracker) lineTracker->lineInserted (this, lines.size()-1); } STextDataEvent nevt (STextIndex(0,0)); event.add (nevt); } /** * insert one signle glyph and move the cursor to the right * @param glyph is the glyph to insert */ void STextData::insert (const SGlyph& glyph) { if (size() <= textIndex.line) { SParagraph* p = new SParagraph(); CHECK_NEW (p); p->setEmbedding (embedding); lines.append (p); if (lineTracker) lineTracker->lineInserted (this, lines.size()-1); } SParagraph* line = lines[textIndex.line]; line->clearChange(); line->insert (textIndex.index, glyph); if (lineTracker) lineTracker->lineChanged (this, textIndex.line); STextDataEvent nevt (STextIndex(textIndex.line, line->getChangeStart())); STextIndex end(textIndex.line, line->getChangeEnd()); textIndex.index = textIndex.index+1; /* there are two cases. we opened a new line or not */ if (glyph.isEOP()) { /* cut line in two */ if (line->size() > textIndex.index) { SParagraph *newLine = new SParagraph (*line); newLine->remove (0, textIndex.index); line->truncate (textIndex.index); if (lineTracker) lineTracker->lineChanged (this, textIndex.line); lines.insert (textIndex.line+1, newLine); if (lineTracker) lineTracker->lineInserted (this, textIndex.line+1); textIndex.index = 0; textIndex.line = textIndex.line + 1; setMaxLimits (&nevt, textIndex); } else /* new line */ { textIndex.index = 0; textIndex.line = textIndex.line + 1; setMaxLimits (&nevt, textIndex); } } else { setMaxLimits (&nevt, end); } event.add (nevt); } /** * Insert a text from utf8. Do fuzzy algoritm to determine * direction and all kinds of fuzzy properties, like composition. * The resulting text is added to the textbuffer in screen-order. * FIXME: * - Implement a bidi algoritm. The current version treats everything * as strong left-to-right character unless it is enclosed in RLO-PDF. * - Get a table of all composing characters and break down the glyphs so * that one glyph contains the base character and the compositng marks. * @param utf8 an utf8 encoded text. */ void STextData::insert (const SString& utf8) { SEncoder ic("utf-8-s"); SV_UCS4 ucs4 = ic.decode (utf8, false); /* split into lines */ unsigned int start = 0; unsigned int i; STextIndex old = textIndex; while (true) { unsigned int end = start; SParagraph gl (ucs4, &start); if (start == end) break; /* more to come - only lines inserted */ if (start < ucs4.size() && textIndex.index == 0 && gl.isProperLine()) { STextDataEvent nevt (textIndex); SParagraph *p = new SParagraph(gl); CHECK_NEW (p); p->setEmbedding(embedding); lines.insert (textIndex.line, p); if (lineTracker) lineTracker->lineInserted (this, textIndex.line); textIndex.line++; setMaxLimits (&nevt, textIndex); event.add (nevt); continue; } for (i=0; i size (i)) { end = size(i); } SParagraph* line = lines[i]; if (begin == 0 && end == size(i)) { if (isProperLine(i)) join = true; line->clear(); if (lineTracker) lineTracker->lineChanged (this, i); } else for (unsigned int j=begin; jremove (begin); if (lineTracker) lineTracker->lineChanged (this, i); } } unsigned int lr = 0; /* Remove zeroes */ for (i=textIndex.line+1; i<=newIndex.line && isize() == 0) { lines.remove (i-lr); delete line; if (lineTracker) lineTracker->lineRemoved (this, i-lr); lr++; } } /* now we have everything collapsed. */ STextDataEvent nevt (textIndex); setMaxLimits (&nevt, textIndex); event.add (nevt); /* a joining line was created */ if (join) { /* wanted, but impossible */ if (textIndex.line+1 == size()) { SParagraph* line = lines[textIndex.line]; if (line->size()==0) { lines.remove (textIndex.line); delete line; if (lineTracker) lineTracker->lineRemoved (this, textIndex.line); } return; } SParagraph* gl = lines[textIndex.line+1]; lines.remove (textIndex.line+1); if (lineTracker) lineTracker->lineRemoved (this, textIndex.line+1); STextIndex sv = textIndex; for (i=0; isize(); i++) { insert ((*gl)[i]); } delete gl; move (sv); } else { /* we may not removed this */ SParagraph* line = lines[textIndex.line]; if (line->size()==0) { lines.remove (textIndex.line); delete line; if (lineTracker) lineTracker->lineRemoved (this, textIndex.line); } } } /** * Modify this glyph by adding extra composing characters * to it. * @param c is a new composing character to be added. * @param toleft is true if we need to add it to the left of cursor. * @return true if this was a composing character. */ bool STextData::addComposing(SS_UCS4 c, bool toleft) { if (textIndex.line >= lines.size()) { return false; } SParagraph* line = lines[textIndex.line]; SGlyph* g = 0; STextIndex fromIndex = textIndex; STextIndex toIndex = textIndex; if (toleft && textIndex.index > 0 && textIndex.index-1 < line->size()) { g = (SGlyph*) line->peek(textIndex.index-1); fromIndex.index = fromIndex.index-1; } if (!toleft && textIndex.index < line->size() && line->size() > 0) { g = (SGlyph*) line->peek(textIndex.index); toIndex.index = toIndex.index+1; } /* Hack - this is read only */ bool status = g ? g->addComposing(c) : false; if (status) { STextDataEvent nevt (fromIndex, false); setMaxLimits (&nevt, toIndex); event.add (nevt); } return status; } /** * @return the removed composing character if any * @param toleft is true if we need to remove it from the left of cursor. * return 0 if there are no more composing characters. */ SS_UCS4 STextData::removeComposing(bool fromleft) { if (textIndex.line >= lines.size()) return false; SParagraph* line = lines[textIndex.line]; SGlyph* g = 0; STextIndex fromIndex = textIndex; STextIndex toIndex = textIndex; if (fromleft && textIndex.index > 0 && textIndex.index-1 < line->size()) { g = (SGlyph*) line->peek(textIndex.index-1); fromIndex.index = fromIndex.index-1; } if (!fromleft && textIndex.index < line->size() && line->size() > 0) { g = (SGlyph*) line->peek(textIndex.index); toIndex.index = toIndex.index+1; } /* Hack - this is read only */ SS_UCS4 status = g ? g->removeComposing() : false; if (status) { STextDataEvent nevt (fromIndex, false); setMaxLimits (&nevt, toIndex); event.add (nevt); } return status; } /** * select a region of text and move cursor to it. * @param index is the new index. high end is non-exclusive * @param is is true if select, unselect otherwise. */ void STextData::select (const STextIndex& index, bool is) { if (size() == 0) return; STextIndex newIndex = reorder (index); bool reordered = (newIndex != index); if (newIndex.line > size()) { newIndex.line = size(); newIndex.index = size(size()-1); } for (unsigned int i=textIndex.line; i<=newIndex.line && itextIndex.line && iselect (is); } else { unsigned int begin = (i==textIndex.line) ? textIndex.index : 0; unsigned int end = (i==newIndex.line)? newIndex.index : size (i); /* do not check others because it would result in expand */ if (i==newIndex.line && end > size (i)) { end = size(i); } lines[i]->select (is, begin, end); } } if (reordered) { STextDataEvent nevt (textIndex, true); setMaxLimits (&nevt, newIndex); event.add (nevt); } else { STextDataEvent nevt (textIndex, true); setMaxLimits (&nevt, newIndex); event.add (nevt); textIndex = newIndex; } } bool STextData::setParagraphSeparator (const SString& str) { if (str==SS_LB_UNIX) return setParagraphSeparator (SS_PS_LF); if (str==SS_LB_MAC) return setParagraphSeparator (SS_PS_CR); if (str==SS_LB_DOS) return setParagraphSeparator (SS_PS_CRLF); if (str==SS_LB_PS) return setParagraphSeparator (SS_PS_PS); return false; } /** * Set the line type for the whole data structure. * @param type will be forced after each newline. * @return true if anything changed. */ bool STextData::setParagraphSeparator (SS_ParaSep sep) { bool retvle = false; for (unsigned int i=0; isetParagraphSeparator (sep)) { retvle = true; } } return retvle; } /** * select a region of text and move cursor to it. * @param index is the new index - high end is non-exclusive * @param is is true if underline, un-underline otherwise. */ void STextData::underline (const STextIndex& index, bool is) { if (size() == 0) return; STextIndex newIndex = reorder (index); bool reordered = (newIndex != index); for (unsigned int i=textIndex.line; i<=newIndex.line && itextIndex.line && iunderline (is); } else { unsigned int begin = (i==textIndex.line) ? textIndex.index : 0; unsigned int end = (i==newIndex.line)? newIndex.index : size (i); /* do not check others because it would result in expand */ if (i==newIndex.line && end > size (i)) { end = size(i); } lines[i]->underline (is, begin, end); } } if (reordered) { STextDataEvent nevt (textIndex, true); setMaxLimits (&nevt, newIndex); event.add (nevt); } else { STextDataEvent nevt (textIndex, true); setMaxLimits (&nevt, newIndex); event.add (nevt); textIndex = newIndex; } } /** * Clear the text */ void STextData::clear () { for (unsigned int i=0; ilineRemoved (this, 0); } textIndex = STextIndex (0, 0); STextDataEvent nevt (STextIndex (0, 0)); nevt.remaining = STextIndex (0, 0); nevt.valid = true; event.add (nevt); } void STextData::fireEvent () { if (!event.valid || listener == 0) return ; listener->textChanged (this, event); event.clear(); } void STextData::clearEvent () { event.clear(); } /** * return the number of lines in text */ unsigned int STextData::size() const { return lines.size(); } /** * return the number of lines in line */ unsigned int STextData::size(unsigned int line) const { if (line >= size()) return 0; const SParagraph* l = lines[line]; // This will expand the line //bool exp = l->isExpanded (); unsigned int ret = l->size(); // We are not const //STextData* th = (STextData*) this; // It is futile to track expanded lines in this class //if (!exp && lineTracker) th->lineTracker->lineExpanded (th, line); return ret; } /** * Get the text index relative to offset. * @param offset is character offset to textIndex. */ STextIndex STextData::getTextIndex(int charOffset, bool logical) const { return getTextIndex (textIndex, charOffset, logical); } #define SD_XBOTH(_a, _b) ((!(_a) && !(_b)) || ((_a) && (_b))) /** * Get the text index relative to offset. * for isLR() lines we increment from index * for !isLR() lines we decrement from index * @param offset is character offset to textIndex. */ STextIndex STextData::getTextIndex(const STextIndex& base, int charOffset, bool logical) const { STextIndex ret = base; bool ltor = (charOffset > 0); unsigned int aco = (charOffset < 0) ? (unsigned int) (-charOffset) : (unsigned int)charOffset; /* sanity check */ if (ret.line > size()) ret.line = size(); if (ret.index > properSize(ret.line)) ret.index = properSize(ret.line); if (charOffset == 0) return STextIndex (ret); /* comnvert to remaining */ if (logical) { if (ltor) ret.index = properSize(ret.line) - ret.index; } else if (SD_XBOTH (isLR(ret.line), ltor)) { ret.index = properSize(ret.line) - ret.index; } /* document embedding is SS_EmbedLeft, if this is lr then up */ bool isup = SD_XBOTH ((embedding!=SS_EmbedRight), ltor); if (logical) isup = ltor; /* multiline - now ret.index contains the remaining */ while (aco > ret.index) { if (!isup && ret.line == 0) { break; } if (isup && ret.line == size()) { break; } aco = aco - ret.index; if (isup) ret.line++; if (!isup) ret.line--; aco--; ret.index = properSize (ret.line); /* try whole line */ } /* set remaining */ ret.index = (aco > ret.index) ? 0 : ret.index = ret.index - aco; /* as ret.index contains the remaining. we need to normalize it back */ if (logical) { if (ltor) ret.index = properSize(ret.line) - ret.index; } else if (SD_XBOTH (isLR(ret.line), ltor)) { ret.index = properSize(ret.line) - ret.index; } /* Now we should have the ret.index and re.line set. */ return STextIndex (ret); } /** * Check if line ends with newline glyph */ bool STextData::isProperLine (unsigned int line) const { if (line >= size()) return false; const SParagraph * p = lines[line]; return p->isProperLine(); } /** * add data listener. * TODO: now it only sets it. */ void STextData::addTextDataListener (STextDataListener* _listener) { listener = _listener; } /** * Add a line tracker that tracks our line array. * TODO: now it only sets it. */ void STextData::addLineTracker (SLineTracker* lt) { lineTracker = lt; } /** * Set the maximum limits. * @param evt -> remainingLine and remainingPosition will be set * @param index is the one that needs to be converted to remaining index */ void STextData::setMaxLimits (STextDataEvent* evt, const STextIndex& index) { evt->valid = true; unsigned int lsize = size(); if (index.line >= lsize) { evt->setRemaining (STextIndex (0,0)); return; } unsigned int rem = lsize - index.line - 1; unsigned int cindex = size(index.line); evt->setRemaining (STextIndex (rem, (index.index>=cindex) ? 0 : cindex - index.index)); } /** * Convert remainin-line to maxline */ STextIndex STextData::getMaxTextIndex (const STextDataEvent& evt) const { if (!evt.valid) return STextIndex (0,0); unsigned int lsize = size(); if (evt.remaining.line >= lsize) { return STextIndex (lsize,0); } unsigned int line = lsize - evt.remaining.line-1; const SParagraph* p = lines[line]; if (evt.remaining.index >= p->size()) { return STextIndex (line, p->size()); } /* should be 1 more for upper limit */ unsigned int max = p->size()+1-evt.remaining.index; return STextIndex (line, max); } /** * Convert remainin-line to maxline */ STextIndex STextData::getMinTextIndex (const STextDataEvent& evt) const { if (!evt.valid) return STextIndex (0,0); unsigned int lsize = size(); if (evt.start.line >= lsize) { return STextIndex (lsize,0); } const SParagraph* p = lines[evt.start.line]; if (evt.start.index >= p->size()) { return STextIndex (evt.start.line, p->size()); } /* should be 1 more for upper limit */ unsigned int min = evt.start.index; return STextIndex (evt.start.line, min); } /** * Put the stuff in order, so that it will always be in increasing order. * @param end is the desired end */ STextIndex STextData::reorder (const STextIndex& index) { if (index > textIndex) { return STextIndex (index); } STextIndex tmp = textIndex; textIndex = index; return STextIndex (tmp); } /** * return true if character is a whitespace */ bool STextData::isWhiteSpace (const STextIndex& index) const { return glyphAt (index).isWhiteSpace(); } /** * return true if character is a number. Addition by Maarten van Gompel */ bool STextData::isNumber (const STextIndex& index) const { return glyphAt (index).isNumber(); } /** * Used in syntax higlighting. */ bool STextData::isLetter (const STextIndex& index) const { return glyphAt (index).isLetter(); } /** * return true if character is a target for select. Addition by Maarten van Gompel */ bool STextData::isDelimiter (const STextIndex& index) const { return glyphAt (index).isDelimiter(); } // previously we used isDelimiter to decide weather the word can be broken // at this poing. Now I added CJK and KANA because they can wrap any time. bool STextData::canWrap (const STextIndex& index) const { return glyphAt (index).canWrap(); } unsigned int STextData::properSize(unsigned int line) const { if (line >= lines.size()) return 0; return lines[line]->properSize(); } /** * pass an array, this array contains the positions after which * linebreaks should occur. */ void STextData::setLineBreaks (unsigned int line, const SV_UCS4& breaks) { if (line >= lines.size()) return; lines[line]->setLineBreaks(breaks); } unsigned int STextData::toLogical (unsigned int line, unsigned int index) { if (line >= lines.size()) return 0; return lines[line]->toLogical (index); } SV_UINT STextData::getLogicalMap(unsigned int line) const { if (line >= lines.size()) return SV_UINT(); return SV_UINT(lines[line]->getLogicalMap()); } bool STextData::isVisible(unsigned int line) const { if (line >= size()) return false; return lines[line]->isVisible(); } void STextData::setVisible(unsigned int line) { if (line >= size()) return; lines[line]->setVisible(); } bool STextData::isReordered (unsigned int line) const { if (line >= size()) return false; return lines[line]->isReordered(); } void STextData::setReordered(unsigned int line) { if (line >= size()) return; lines[line]->setReordered(); } void STextData::setDocumentEmbedding(SS_Embedding e) { embedding = e; if (size() ==0) return; for (unsigned int i=0; isetEmbedding(e); } STextDataEvent nevt (STextIndex(0,0)); event.add (nevt); } SS_Embedding STextData::getDocumentEmbedding() const { return embedding; } /** * Check if current paragraph is rendered lr (left aligned) or * rl (right aligned). */ bool STextData::isLR (unsigned int parag) const { if (parag >= lines.size()) return embedding != SS_EmbedRight; return lines[parag]->isLR(); } /** * return the directionality of this character. * @return true if the previous character is LR. */ bool STextData::isLR (const STextIndex& index) const { if (index.line >= lines.size()) return embedding != SS_EmbedRight; if (index.index >= lines[index.line]->size()) { return STextData::isLR(index.line); } return lines[index.line]->peek(index.index)->isLR(); } /** * Return the explicit embed state. */ SEmbedState STextData::getEmbedState (const STextIndex& index) const { SEmbedState state; if (index.line >= lines.size()) { return SEmbedState(state); } if (index.index >= lines[index.line]->size()) { return SEmbedState(state); } return SEmbedState (lines[index.line]->peek(index.index)->getEmbedState()); } ./stoolkit/SEvent.h0000644000175000017500000001033310434025610014255 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SEvent_h #define SEvent_h #include "SExcept.h" #include "SString.h" #include "SStringVector.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This library is not multi-threaded. Therefor we need event handlers. */ class SEventSource { public: enum Type {FILE, SOCKET, SERVER, JOB, TIMER, PIPE}; SEventSource (Type t, long systemId); SEventSource (void); SEventSource (const SEventSource& s); virtual ~SEventSource(); SEventSource& operator = (const SEventSource& s); Type getType (); long getId (); void setOK(bool ok); bool isOK(); bool close(); private: void *shared; }; /** * These are the specific event sources that the implementation of * the event menager should handle */ typedef SEventSource SInputStream; typedef SEventSource SOutputStream; typedef SEventSource SServerStream; class SJob : public SEventSource { public: SJob(long priority); SJob(void); virtual ~SJob(); virtual int run ();// Normally it returns 0, on fisnich it returns -1. // On urgent data it returns 1 }; /** * Tthe event target can receive all kinds of events from the * event sources above. */ class SEventTarget { public: SEventTarget (); virtual ~SEventTarget (); /* Any Event Source */ virtual void error (const SEventSource* s); /* Output Stream Done*/ virtual bool write (const SEventSource* s); /* Timer Done */ virtual bool timeout (const SEventSource* s); /* Job Done */ virtual bool done (const SEventSource* s); /* Input Stream Read */ virtual bool read (const SEventSource* s, const SString& m); /* Input Stream Is Readable */ virtual int readable (const SEventSource* s); /* Server Stream Accept */ virtual bool serve (const SEventSource* s); }; class STimer : public SEventSource { public: STimer (long timeout); virtual ~STimer (); /* This one automatically add it to the event manager */ static STimer* newTimer (long timeout, SEventTarget* t); }; /** * If you have an external event handler reimplement this */ class SEventHandlerImpl { public: SEventHandlerImpl(); virtual ~SEventHandlerImpl(); /* One source can have only one target! Same target * can be used for more source */ virtual void addJob (SJob* s, SEventTarget* t); virtual void addServer (SServerStream* s, SEventTarget* t); virtual void addTimer (STimer* s, SEventTarget* t); virtual void addInput (SInputStream* s, SEventTarget* t); // Send async write back to SEventSource virtual void addOutput (SOutputStream* s, SEventTarget* t, const SString& m); virtual void remove (SEventTarget* t); virtual void remove (SEventSource* s); virtual void start(); virtual void exit(); virtual bool next(); }; /** * There can be only one event handler. * So this is pretty much a static class. */ class SEventHandler { public: SEventHandler (void); ~SEventHandler (); // Destroys the implementation. bool setImpl (SEventHandlerImpl* impl); bool implemented(); static void addJob (SJob* s, SEventTarget* t); static void addServer (SServerStream* s, SEventTarget* t); static void addTimer (STimer* s, SEventTarget* t); static void addInput (SInputStream* s, SEventTarget* t); static void addOutput (SOutputStream* s, SEventTarget* t, const SString& m); static void remove (SEventTarget* t); static void remove (SEventSource* s); static void start(); static void exit(); static bool next(); private: static SEventHandlerImpl* delegate; }; #endif /* SEvent_h */ ./stoolkit/SIOStream.cpp0000644000175000017500000001404510434025610015216 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SIOStream.h" #include #ifdef USE_WINAPI #include #include #endif SReader::SReader (const SInputStream& i, SEventTarget* t) : in (i) { errFlag = false; finishFlag = false; more = true; SEventHandler::addInput (&in, this); trg = t; if (trg) SEventHandler::addJob (this, trg); } SReader::SReader (const SInputStream& i, const SStringVector& sep, SEventTarget* t) : sepVector (sep), in(i) { errFlag = false; finishFlag = false; more = true; trg = t; SEventHandler::addInput (&in, this); if (trg) SEventHandler::addJob (this, trg); } bool SReader::isOK() { return !errFlag; } bool SReader::close() { return in.close(); } SReader::~SReader () { } bool SReader::read (SString* s) { // This is how we read things unblocked. #ifdef USE_WINAPI if (in.getType()==SInputStream::PIPE) { DWORD n; char* buff = new char[4096]; CHECK_NEW (buff); do { if (!ReadFile ((char*)in.getId(), buff, 4096, &n, 0) || n<=0) { break; errFlag=true; } SString ns(buff, n); read (&in, ns); } while (n>0); delete buff; read (&in, SStringNull); } if (in.getType()==SInputStream::FILE) { int n; char* buff = new char[4096]; CHECK_NEW (buff); do { n = ::read (in.getId(), buff, 4096); SString ns(buff, n); read (&in, ns); } while (n>0); delete buff; read (&in, SStringNull); } #endif if (trg==0) { bool n = true; while (n==true && finishFlag==false) { n = SEventHandler::next(); } } if (errFlag || !finishFlag) return false; if (sepVector.size() != 0) { if (line.size() ==0) { if (!more) { *s = buffer; buffer.clear(); } else { *s = SStringNull; } } else { *s = line[0]; line.remove(0); } if (more && line.size() == 0) { if (in.getId() <0) { finishFlag=true; errFlag=true; more = false; return false; } SEventHandler::addInput (&in, this); if (trg) SEventHandler::addJob (this, trg); finishFlag = 0; } return true; } *s = buffer; buffer.clear(); return true; } int SReader::run () { if (finishFlag) return -1; return 0; } /*a* * This is for event target if t == 0 */ bool SReader::read (const SEventSource* s, const SString& m) { buffer.append (m); // End of stream... if (m.size() == 0) { finishFlag = true; more = false; return false; } if (sepVector.size() != 0) { while (true) { int found =-1; unsigned int i; for (i=0; i=0) break; } if (found < 0) break; unsigned int ind = found+sepVector[i].size(); SString a(buffer.array(), ind); line.append (a); buffer.remove (0, ind); } // Job is done! if (line.size()) { finishFlag = true; return false; } } return true; } /*a* * This is for event target fi t == 0 */ void SReader::error (const SEventSource* s) { errFlag = true; } SWriter::SWriter (const SOutputStream& i, SEventTarget* t) : out(i) { errFlag = false; finishFlag = true; writeCount = 0; trg = t; if (t) { SEventHandler::addJob (this, t); } } SWriter::~SWriter () { } bool SWriter::write (const SString& s) { if (errFlag) return false; #ifdef USE_WINAPI if (out.getType()==SOutputStream::PIPE) { DWORD n; SString rem=s; while (rem.size()) { if (rem.size()==0) break; if (!WriteFile ((char*)out.getId(), rem.array(), rem.size(), &n, 0) || n <= 0) { errFlag=true; break; } SString ns(rem.array(), n, rem.size()-n); rem = ns; } finishFlag = true; if (n<0) errFlag = true; return !errFlag; } else if (out.getType()==SOutputStream::FILE) { int n; SString rem=s; while (rem.size()) { if (rem.size()==0) break; n = ::write ((int)out.getId(), rem.array(), rem.size()); if (n<0) break; SString ns(rem.array(), n, rem.size()-n); rem = ns; } finishFlag = true; if (n<0) errFlag = true; return !errFlag; } #endif if (finishFlag) { finishFlag = false; if (trg) SEventHandler::addJob (this, trg); } if (out.getId() <0) { finishFlag=true; errFlag=true; return false; } SEventHandler::addOutput (&out, this, s); writeCount++; finishFlag = false; bool n = true; if (trg==0) { do { n = SEventHandler::next(); if (out.getId() <0) { finishFlag=true; errFlag=true; return false; } } while (n==true && finishFlag==false); } return n; } /** * This is as a job. Eent manager use */ int SWriter::run () { if (finishFlag) return -1; return 0; } /** * This is for event target fi t == 0 */ bool SWriter::write (const SEventSource* s) { writeCount--; if (writeCount == 0) finishFlag = true; if (finishFlag) return false; return true; } /*a* * This is for event target fi t == 0 */ void SWriter::error (const SEventSource* s) { errFlag = true; finishFlag = true; } bool SWriter::isOK() { return !errFlag; } bool SWriter::close() { return out.close(); } ./stoolkit/sencoder/0000755000175000017500000000000011334661073014513 5ustar henrichhenrich./stoolkit/sencoder/SB_UHC.h0000644000175000017500000000277610434025610015672 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_UHC_h #define SB_UHC_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * Korean text converter (MS-Windows Korean) * rewritten code contributed by Jungshik Shin * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_UHC : SBEncoder { public: SB_UHC (); virtual ~SB_UHC (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap ksc_5601_r; bool ok; }; #endif /* SB_UHC_h */ ./stoolkit/sencoder/SB_HZ.h0000644000175000017500000000267610434025610015573 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_HZ_h #define SB_HZ_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is Hanzi Chinese converter * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_HZ : SBEncoder { public: SB_HZ (); virtual ~SB_HZ (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap gb_2312_l; bool ok; }; #endif /* SB_HZ_h */ ./stoolkit/sencoder/SB_GB2312_8.cpp0000644000175000017500000000711310434025610016623 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_GB2312_8.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_GB2312_8::SB_GB2312_8() : SBEncoder ("\n,\r\n,\r"), gb_2312_l ("gb-2312-l") { ok = gb_2312_l.isOK(); } SB_GB2312_8::~SB_GB2312_8 () { } /** * return false if this generic encoder does not exist. */ bool SB_GB2312_8::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_GB2312_8::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; for (unsigned int i=0; i 0xa000 && (got&0xff00) < 0xff00 && (got&0xff) > 0xa0 && (got&0xff) < 0xff) { sstring.append ((char) ((got>>8) | 0x80)); sstring.append ((char) ((got&0xff) | 0x80)); continue; } } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_GB2312_8::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i i+1 && in[i] > 0xa0 && in[i] < 0xff && in[i+1] > 0xa0 && in[i+1] < 0xff) { got=0; if (gb_2312_l.isOK()) { got = gb_2312_l.decode ( (SS_UCS2)((in[i] & 0x7f) << 8) | (in[i+1] & 0x7f) ); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } i++; continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_GB2312_8::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_GB2312_8::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_DeShape.h0000644000175000017500000000310610434025610016550 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_DeShape_h #define SB_DeShape_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" #include "stoolkit/sencoder/SB_UTF8.h" /** * Chineese text converter (big5) * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_DeShape : SBEncoder { public: SB_DeShape (); virtual ~SB_DeShape (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: const SV_UCS4& convert (const SV_UCS4& input); SUniMap shape; SB_UTF8 interface; bool ok; }; #endif /* SB_DeShape_h */ ./stoolkit/sencoder/SB_UTF8.h0000644000175000017500000000273410434025610015773 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_UTF8_h #define SB_UTF8_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is the 8 bit unicode tarnsformation format. This format is * the only one that can encode 32 bit unicode. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_UTF8 : SBEncoder { public: SB_UTF8 (bool surrogate); virtual ~SB_UTF8 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); private: bool surrogate; }; #endif /* SB_UTF8_h */ ./stoolkit/sencoder/SB_EUC_JP.cpp0000644000175000017500000001211110434025610016573 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_EUC_JP.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_EUC_JP::SB_EUC_JP() : SBEncoder ("\n,\r\n,\r"), jis0201 ("jis-0201"), jis0208 ("jis-0208"), jis0212("jis-0212") { ok = jis0201.isOK() && jis0208.isOK() && jis0212.isOK(); } SB_EUC_JP::~SB_EUC_JP () { } /** * return false if this generic encoder does not exist. */ bool SB_EUC_JP::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_EUC_JP::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; for (unsigned int i=0; i 0xa0 && got < 0xff) { sstring.append ((char) 0x8e); sstring.append ((char) got); continue; } } if (jis0208.isOK() && (got=jis0208.encode (in[i])) != 0) { got |= 0x8080; if ((got&0xff00) > 0xa000 && (got&0xff00) < 0xff00 && (got&0xff) > 0xa0 && (got&0xff) < 0xff) { sstring.append ((char) ((got&0xff00)>>8)); sstring.append ((char) (got&0xff)); continue; } } if (jis0212.isOK() && (got=jis0212.encode (in[i])) != 0) { got |= 0x8080; if ((got&0xff00) > 0xa000 && (got&0xff00) < 0xff00 && (got&0xff) > 0xa0 && (got&0xff) < 0xff) { sstring.append ((char) 0x8f); sstring.append ((char) ((got&0xff00)>>8)); sstring.append ((char) (got&0xff)); continue; } } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_EUC_JP::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i 1 && in[i] == 0x8e && in[i+1] > 0xa0 && in[i+1] < 0xff) { // JISC 6226-1978 half width katakana if (jis0201.isOK()) { got = jis0201.decode ((SS_UCS2)in[i+1]); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } i++; continue; } if (input.size() -i > 1 && in[i] > 0xa0 && in[i] < 0xff && in[i+1] > 0xa0 && in[i+1] < 0xff) { // JIS X 0X208-1990 if (jis0208.isOK()) { got = jis0208.decode (((SS_UCS2)(in[i]&0x7f) << 8) | (in[i+1]&0x7f) ); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } i++; continue; } if (input.size() -i > 2 && in[i] == 0x8f && in[i+1] > 0xa0 && in[i+1] < 0xff && in[i+2] > 0xa0 && in[i+2] < 0xff) { // JIS X 0212-1990 if (jis0212.isOK()) { got = jis0212.decode (((SS_UCS2)(in[i+1]&0x7f) << 8) | (in[i+2]&0x7f) ); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); quoteUCS4 (in[i+2]); } i++; i++; continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_EUC_JP::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_EUC_JP::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_S_JIS.h0000644000175000017500000000300410434025610016143 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_S_JIS_h #define SB_S_JIS_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is the shift-jis converter for Japanese. Used mainly in PCs * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_S_JIS : SBEncoder { public: SB_S_JIS (); virtual ~SB_S_JIS (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap jis0201; SUniMap jis0208; bool ok; }; #endif /* SB_S_JIS_h */ ./stoolkit/sencoder/SB_ISO2022_JP.h0000644000175000017500000000313310434025610016570 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_ISO2022_JP_h #define SB_ISO2022_JP_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is iso-2022-jp converter. It is used mainly in email. * It is not the same as its X11 variant. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_ISO2022_JP : SBEncoder { public: SB_ISO2022_JP (); virtual ~SB_ISO2022_JP (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap jis0201; SUniMap jis0208; SUniMap jis0212; bool ok; }; #endif /* SB_ISO2022_JP_h */ ./stoolkit/sencoder/SB_X11_HZ.cpp0000644000175000017500000001117610434025610016552 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_X11_HZ.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_X11_HZ::SB_X11_HZ() : SBEncoder ("\n,\r\n,\r"), gb_2312_l ("gb-2312-l") { ok = gb_2312_l.isOK(); } SB_X11_HZ::~SB_X11_HZ () { } /** * return false if this generic encoder does not exist. */ bool SB_X11_HZ::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_X11_HZ::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; SUniMap* current=0; for (unsigned int i=0; i 0x2000 && (got&0xff00) < 0x7f00 && (got&0xff) > 0x20 && (got&0xff) < 0x7f) { if (current==0) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) '('); sstring.append ((char) 'A'); } current=&gb_2312_l; sstring.append ((char) ((got&0x7f00)>>8)); sstring.append ((char) (got&0x7f)); continue; } } quoteString (in[i]); } // Change it to roman if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_X11_HZ::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; SUniMap* current=0; bool gbRoman=false; /* Not really used. */ for (unsigned i=0; i i+3 && in[i] == SS_ESC && in[i+1] == '$' && in[i+2] == '(' && in[i+3] == 'A') { current=&gb_2312_l; // Chinese i++; i++; i++; gbRoman=false; continue; } if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '(' && in[i+2] == 'B') { current=0; // ASCII i++; i++; gbRoman=false; continue; } if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '(' && in[i+2] == 'T') { current=&gb_2312_l; // GB Roman i++; i++; gbRoman=true; continue; } // It should not happen but it does. if (in[i] < ' ') current=0; if (current) { got = (input.size() > i+1) ? current->decode (((SS_UCS2)in[i]<< 8) | in[i+1]) : 0; if (got) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } i++; continue; } ucs4string.append ((SS_UCS4) in[i]); continue; } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_X11_HZ::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_X11_HZ::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_GB18030.cpp0000644000175000017500000001723210434025610016463 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_GB18030.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" static SS_UCS4 pack (SS_UCS4 pi); static SS_UCS4 unpack (SS_UCS4 pi); #define SD_GB_ERROR 0xffffffff /** * @author: Gaspar Sinai * Encoder for Chinesee * @version: 2002-03-27 */ SB_GB18030::SB_GB18030() : SBEncoder ("\n,\r\n,\r"), gb_18030 ("gb-18030") { ok = gb_18030.isOK(); } SB_GB18030::~SB_GB18030 () { } /** * return false if this generic encoder does not exist. */ bool SB_GB18030::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_GB18030::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS4 key; SS_UCS4 vle; unsigned int kindex; for (unsigned int i=0; i= 0xdc00 && in[i] <= 0xdfff) { quoteString (in[i]); continue; } /* surrogates are encoded as UCS4 */ if (in[i] >= 0xd800 && in[i] <= 0xdbff) { if (!(i+1= 0xdc00 && in[i+1] <= 0xdfff)) { quoteString (in[i]); continue; } vle = ((in[i] & 0x3ff) << 10) + (in[i+1] & 0x3ff) + 0x10000; vle = unpack (vle + 0x2E248 - 0x10000); i++; } else if (in[i] > 0xffff) { if (in[i] > 0x10ffff) { quoteString (in[i]); continue; } vle = unpack (in[i] + 0x2E248 - 0x10000); } else { /* linear approximation */ if (gb_18030.isOK()) { kindex = gb_18030.getEncodePosition (in[i]); key = gb_18030.getEncodeKey(kindex); vle = gb_18030.getEncodeValue(kindex); if (vle > 0xffff) { vle = pack (vle); if (vle != SD_GB_ERROR) { vle += (in[i] -key); vle = unpack (vle); } } else { vle += (in[i] -key); } } else { vle = SD_GB_ERROR; } } if (vle == SD_GB_ERROR) { quoteString (in[i]); continue; } if (vle > 0xffff) { sstring.append ((char) ((unsigned char)((vle>>24) & 0xff))); sstring.append ((char) ((unsigned char)((vle>>16) & 0xff))); } /* 2 byte */ if (vle > 0xff) { sstring.append ((char) ((unsigned char)((vle>>8) & 0xff))); } sstring.append ((char) ((unsigned char)((vle>>0) & 0xff))); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_GB18030::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 key; SS_UCS4 vle; SS_UCS4 ikey; unsigned int kindex; for (unsigned i=0; i i+1 && in[i] >= 0x81 && in[i] <= 0xfe && ( (in[i+1] >= 0x40 && in[i+1] <= 0x7e) || (in[i+1] >= 0x80 && in[i+1] <= 0xfe) ) && gb_18030.isOK()) { ikey = (SS_UCS4) in[i++]; ikey = ikey << 8; ikey += (SS_UCS4) in[i]; kindex = gb_18030.getDecodePosition (ikey); key = gb_18030.getDecodeKey(kindex); vle = gb_18030.getDecodeValue(kindex); /* should be 2 byte key, and 2 byte value */ if (vle > 0xffff || key > 0xffff || ikey < key) { quoteUCS4 (in[i-1]); quoteUCS4 (in[i]); continue; } ucs4string.append (vle + ikey - key); continue; } if (input.size() > i+3 && in[i] >= 0x81 && in[i] <= 0xfe && in[i+1] >= 0x30 && in[i+1] <= 0x39 && in[i+2] >= 0x81 && in[i+2] <= 0xfe && in[i+3] >= 0x30 && in[i+3] <= 0x39 && gb_18030.isOK()) { ikey = (SS_UCS4) in[i++]; ikey = ikey << 8; ikey += (SS_UCS4) in[i++]; ikey = ikey << 8; ikey += (SS_UCS4) in[i++]; ikey = ikey << 8; ikey += (SS_UCS4) in[i]; /* non-bmp */ if (ikey > 0x8431A439) { /* out of range */ if (ikey>0xE3329A35 || ikey<0x90308130) { quoteUCS4 (in[i-3]); quoteUCS4 (in[i-2]); quoteUCS4 (in[i-1]); quoteUCS4 (in[i]); continue; } vle = 0x10000; key = 0x90308130; } else { kindex = gb_18030.getDecodePosition (ikey); key = gb_18030.getDecodeKey(kindex); vle = gb_18030.getDecodeValue(kindex); } /* should be 4 byte key */ if (key <= 0xffff || ikey < key) { quoteUCS4 (in[i-3]); quoteUCS4 (in[i-2]); quoteUCS4 (in[i-1]); quoteUCS4 (in[i]); continue; } ucs4string.append (vle + pack(ikey) - pack(key)); continue; } quoteUCS4 (in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_GB18030::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_GB18030::delimiters (const SString& sample) { return sampleDelimiters; } /** * pack a gb code into linear code. Return SD_GB_ERROR on fail. */ static SS_UCS4 pack (SS_UCS4 up) { SS_UCS4 value = (SS_UCS4)up; unsigned int k0 = (value >> 24) & 0xff; // 0x81..0xfe unsigned int k1 = (value >> 16) & 0xff; // 0x30..0x39 unsigned int k2 = (value >> 8) & 0xff; // 0x81..0xfe unsigned int k3 = (value >> 0) & 0xff; // 0x30..0x39 if (k0<0x81 || k0> 0xfe) return SD_GB_ERROR; if (k1<0x30 || k1> 0x39) return SD_GB_ERROR; if (k2<0x81 || k2> 0xfe) return SD_GB_ERROR; if (k3<0x30 || k3> 0x39) return SD_GB_ERROR; unsigned int num = (k0-0x81); num = num * 10; num += (k1-0x30); num = num * 126; num += (k2-0x81); num = num * 10; num += (k3-0x30); return ((SS_UCS4)num); } /** * unpack linear code into gb code. Return SD_GB_ERROR on fail. */ static SS_UCS4 unpack (SS_UCS4 p) { SS_UCS4 num = p; unsigned int k3 = (num % 10)+0x30; num = num / 10; unsigned int k2 = (num % 126)+0x81; num = num / 126; unsigned int k1 = (num % 10)+0x30; num = num / 10; unsigned int k0 = (num % 126)+0x81; num = (SS_UCS4) ((k0 << 24) + (k1 << 16) + (k2<<8) + k3); /* 0x10ffff */ if (num > 0xE3329A35) return SD_GB_ERROR; return num; } ./stoolkit/sencoder/SB_EUC_JP.h0000644000175000017500000000302710434025610016246 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_EUC_JP_h #define SB_EUC_JP_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is the euc Japanese converter. Used mainly in unix. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_EUC_JP : SBEncoder { public: SB_EUC_JP (); virtual ~SB_EUC_JP (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap jis0201; SUniMap jis0208; SUniMap jis0212; bool ok; }; #endif /* SB_EUC_JP_h */ ./stoolkit/sencoder/SB_EUC_KR.cpp0000644000175000017500000000716510434025610016613 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_EUC_KR.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_EUC_KR::SB_EUC_KR() : SBEncoder ("\n,\r\n,\r"), ksc_5601_r ("ksc-5601-r") { ok = ksc_5601_r.isOK(); } SB_EUC_KR::~SB_EUC_KR () { } /** * return false if this generic encoder does not exist. */ bool SB_EUC_KR::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_EUC_KR::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; for (unsigned int i=0; i 0xa000 && (got&0xff00) < 0xff00 && (got&0xff) > 0xa0 && (got&0xff) < 0xff) { sstring.append ((char) ((got>>8) | 0x80)); sstring.append ((char) ((got&0xff) | 0x80)); continue; } } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_EUC_KR::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i i+1 && in[i] > 0xa0 && in[i] < 0xff && in[i+1] > 0xa0 && in[i+1] < 0xff) { // KSC5601 if (ksc_5601_r.isOK()) { got = ksc_5601_r.decode ((SS_UCS2)((in[i] & 0xff) << 8) | (in[i+1] & 0xff) ); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 ((unsigned char) in[i]); quoteUCS4 ((unsigned char) in[i+1]); } i++; continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_EUC_KR::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_EUC_KR::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_UTF7.cpp0000644000175000017500000001626410434025610016330 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_UTF7.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" static unsigned char allowedLoose[] = {"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'(),-./:?!\"#$%&*;<=>@[]^_`{|}"}; static unsigned char base64Code[] = {"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"}; static unsigned char _allowedChars[0x80]; static unsigned char* allowedChars = 0; static unsigned char _base64Decode[0x80]; static unsigned char* base64Decode = 0; static void mdecode (SV_UCS4* out, const SString& u7); static void mencode (SString* out, const SString& ucsin); /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_UTF7::SB_UTF7() : SBEncoder("\n,\r\n,\r,\342\200\250,\342\200\251") { unsigned int i; if (allowedChars==0) { allowedChars = _allowedChars; memset (allowedChars, 0, 0x80); for (i=0; i= 0x80 || allowedChars[in[i]]==0)) { if (in[i] <= 0x20) break; /* convert to surrogates */ if (in[i] >= 0x10000 && in[i] <= 0x10ffff) { SS_UCS4 hi = (((in[i] - 0x10000) >> 10)&0x3ff) + 0xd800; tmp.append ((char)(hi >> 8)); tmp.append ((char)(hi & 0xff)); SS_UCS4 lo = ((in[i] - 0x10000) & 0x3ff) + 0xdc00; tmp.append ((char)(lo >> 8)); tmp.append ((char)(lo & 0xff)); } else { tmp.append ((char)(in[i] >> 8)); tmp.append ((char)(in[i] & 0xff)); } i++; } mencode (&sstring, tmp); #if LAZYUTF7 if (i == input.size() || base64Decode[in[i]] != 0xff) { sstring.append ((char)'-'); } #else sstring.append ((char)'-'); #endif i--; } return sstring; } /** * Encode the input string into utf7 */ static void mencode (SString* out, const SString &ucsin) { SString nin = ucsin; nin.append((char)0); const unsigned char* in = (unsigned char*) nin.array(); unsigned char uchar4[4]; for (unsigned int i=0;i>2]; out->append ((char)uchar4[0]); uchar4[1] = base64Code[((in[i] & 0x03)<<4) | (in[i+1] >> 4)]; out->append ((char)uchar4[1]); if (i+1>=ucsin.size()) break; uchar4[2] = base64Code[((in[i+1] & 0x0f)<<2) | (in[i+2] >> 6)]; out->append ((char)uchar4[2]); if (i+2>=ucsin.size()) break; uchar4[3] = base64Code[in[i+2] & 0x3f]; out->append ((char)uchar4[3]); i += 3; } } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_UTF7::decode (const SString& input) { ucs4string.clear(); ucs4string.ensure(input.size()); const unsigned char* in = (unsigned char*) input.array(); unsigned int i; for (i=0; i 1 && in[i] == '+' && in[i+1] == '-') { ucs4string.append ((SS_UCS4) '+'); i++; continue; } if (in[i] != '+') { ucs4string.append ((SS_UCS4) in[i]); continue; } i++; SString u7; while (i= 0xd800 && hi <= 0xdbff && lo >= 0xdc00 && lo <= 0xdfff) { SS_UCS4 vle = ((hi & 0x3ff) << 10) + (lo & 0x3ff) + 0x10000; ucs4string.insert(i, vle); ucs4string.remove(i+1); ucs4string.remove(i+1); } } return ucs4string; } static void mdecode (SV_UCS4* out, const SString& u7) { SString s = u7; s.append ((char) base64Code[0]); s.append ((char) base64Code[0]); s.append ((char) base64Code[0]); const unsigned char* in = (unsigned char*) s.array(); SS_UCS4 uch; unsigned char cch1, cch2; // The buffer is already aligned for (unsigned int i=0; i>4); cch2= (SS_UCS4) (base64Decode[in[i+1]] <<4) | (base64Decode[in[i+2]]>>2); uch = (cch1 << 8) | cch2; if (uch!=0) out->append (uch); if (i+1>=u7.size()) break; cch1 = (SS_UCS4) (base64Decode[in[i+2]] <<6) | base64Decode[in[i+3]]; i+=4; cch2 = (SS_UCS4) (base64Decode[in[i]] <<2) | (base64Decode[in[i+1]]>>4); uch = (cch1 << 8) | cch2; if (uch!=0) out->append (uch); if (i>=u7.size()) break; cch1= (SS_UCS4) (base64Decode[in[i+1]] <<4) | (base64Decode[in[i+2]]>>2); cch2 = (SS_UCS4) (base64Decode[in[i+2]] <<6) | base64Decode[in[i+3]]; uch = (cch1 << 8) | cch2; if (uch!=0) out->append (uch); i+=4; } } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_UTF7::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_UTF7::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_Johab.h0000644000175000017500000000304210434025610016261 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_Johab_h #define SB_Johab_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * JOHAB converter : KS C 5601-1992, Annex 3, supplementary encoding * rewritten code contributed by Jungshik Shin * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_Johab : SBEncoder { public: SB_Johab (); virtual ~SB_Johab (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap ksc_5601_r; bool ok; }; #endif /* SB_Johab_h */ ./stoolkit/sencoder/SB_S_JIS.cpp0000644000175000017500000001431410434025610016504 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* [first] [second] [0x00-0x7F] [0xA1-0xDF] ->JIS X0201 same code single byte [0x81-0x9F or 0xE0-0xEF] [0x40-0x7E or 0x80-0xFC] JIS X0208 2 bytes [0xF0-0xFC] [0x40-0x7E or 0x80-0xFC] 2444 user-defined characters */ #include "stoolkit/sencoder/SB_S_JIS.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_S_JIS::SB_S_JIS() : SBEncoder ("\n,\r\n,\r"), jis0201 ("jis-0201"), jis0208 ("jis-0208") { ok = jis0201.isOK() && jis0208.isOK(); } SB_S_JIS::~SB_S_JIS () { } /** * return false if this generic encoder does not exist. */ bool SB_S_JIS::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_S_JIS::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; unsigned short rowOffset; unsigned short cellOffset; unsigned char c1; unsigned char c2; for (unsigned int i=0; i> 8; c2 = got & 0xff; rowOffset = (c1 < 95) ? 112 : 176; cellOffset = c1 % 2 ? (c2 > 95 ? 32 : 31 ) : 126; c1 = ((c1+1) >> 1) + rowOffset; c2 = c2 + cellOffset; if ( ((c1 >= 0x81 && c1 <= 0x9f) || (c1 >= 0xe0 && c1 <= 0xef)) && ((c2 >= 0x40 && c2 <= 0x7e) || (c2 >= 0x80 && c2 <= 0xfc)) ) { sstring.append ((char)c1); sstring.append ((char)c2); continue; } } if (jis0201.isOK() && (got=jis0201.encode (in[i])) != 0) { // Half-width katakana if (got > 0xa0 && got < 0xff) { sstring.append ((char) got); continue; } // Roman if (got < 0x80) { sstring.append ((char) got); continue; } } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_S_JIS::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; SS_UCS4 code; unsigned short adjust; unsigned short rowOffset; unsigned short cellOffset; for (unsigned i=0; i= 0xa1 && in[i] <= 0xdf) { code = in[i]; got = jis0201.decode (code); if (got ==0) { quoteUCS4 (in[i]); } else { ucs4string.append (got); } continue; } // JIS if (input.size() > i+1 && ((in[i] >= 0x81 && in[i] <= 0x9f) || (in[i] >= 0xe0 && in[i] <= 0xef)) && ((in[i+1] >= 0x40 && in[i+1] <= 0x7e) || (in[i+1] >= 0x80 && in[i+1] <= 0xfc)) ) { adjust = (in[i+1] < 159)? 1 : 0; rowOffset = in[i] < 160 ? 112 : 176; cellOffset = adjust ? (in[i+1]>127 ? 32 : 31) : 126; code = ((((in[i] - rowOffset) << 1) - adjust) << 8) | (in[i+1] - cellOffset); got = jis0208.decode (code); if (got ==0) { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } else { ucs4string.append (got); } i++; continue; } // User defined area // first 0xF0-0xFC, and the second byte in the range 0x40-0x7E or 0x80-0xFC. if (input.size() > i+1 && (in[i] >= 0xf0 && in[i] <= 0xfc) && ((in[i+1] >= 0x40 && in[i+1] <= 0x7e) || (in[i+1] >= 0x80 && in[i+1] <= 0xfc))) { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); i++; continue; } // MAC - backslash if (in[i] == 0x80) { ucs4string.append ((SS_UCS4) '\\'); continue; } // half width yen if (in[i] == '\\') { ucs4string.append ((SS_UCS4) 0x00a5); continue; } // MAC - copyright if (in[i] == 0xfd) { ucs4string.append ((SS_UCS4) 0xa9); continue; } // MAC - tm if (in[i] == 0xfe) { ucs4string.append ((SS_UCS4) 0x2122); continue; } // MAC - ... horizontal ellipsis if (in[i] == 0xff) { ucs4string.append ((SS_UCS4) 0x2026); continue; } if (in[i] > 0x80) { quoteUCS4 (in[i]); continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_S_JIS::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_S_JIS::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_BiDi.h0000644000175000017500000000300610434025610016045 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_BiDi_h #define SB_BiDi_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" #include "stoolkit/sencoder/SB_UTF8.h" /** * Chineese text converter (big5) * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_BiDi : SBEncoder { public: SB_BiDi (); virtual ~SB_BiDi (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap category; SB_UTF8 interface; bool ok; }; #endif /* SB_BiDi_h */ ./stoolkit/sencoder/SB_GB18030.h0000644000175000017500000000277310434025610016134 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_GB18030_h #define SB_GB18030_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is an 8 bit Chineese converter. It is used mainly in unix. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_GB18030 : SBEncoder { public: SB_GB18030 (); virtual ~SB_GB18030 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap gb_18030; bool ok; }; #endif /* SB_GB18030_h */ ./stoolkit/sencoder/SB_S_JIS0213.cpp0000644000175000017500000001253110434025610017011 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* [first] [second] [0x00-0x7F] [0xA1-0xDF] ->JIS X0201 same code single byte [0x81-0x9F or 0xE0-0xEF] [0x40-0x7E or 0x80-0xFC] JIS X0208 2 bytes [0xF0-0xFC] [0x40-0x7E or 0x80-0xFC] 2444 user-defined characters */ #include "stoolkit/sencoder/SB_S_JIS0213.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SCluster.h" /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_S_JIS0213::SB_S_JIS0213() : SBEncoder ("\n,\r\n,\r"), sjis0213 ("shift-jis-3") { ok = sjis0213.isOK(); } SB_S_JIS0213::~SB_S_JIS0213 () { } /** * return false if this generic encoder does not exist. */ bool SB_S_JIS0213::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_S_JIS0213::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); unsigned char c0; unsigned char c1; for (unsigned int i=0; i>8)&0xff); if (c1 == 0) { sstring.append ((char)(c0)); } else { sstring.append ((char)(c1)); sstring.append ((char)(c0)); } i = i+lifted-1; } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_S_JIS0213::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); for (unsigned i=0; i 0x80) { quoteUCS4 (in[i]); continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_S_JIS0213::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_S_JIS0213::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_Java.cpp0000644000175000017500000001676610434025610016473 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_Java.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_Java::SB_Java(bool _surrogate) : SBEncoder ("\n,\r\n,\r,\342\200\250,\342\200\251") { surrogate = _surrogate; } SB_Java::~SB_Java () { } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_Java::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); for (unsigned int i=0; i= 0x10000 && c0 <= 0x10ffff) { /* quote as surrogtes */ c0 = c0 - 0x10000; quoteString(((c0>>10) & 0x3ff) + 0xd800); quoteString((c0 & 0x3ff) + 0xdc00); continue; } quoteString(c0); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_Java::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 decoded; char* next; for (unsigned i=0; i i+5 && in[i] == '\\' && in[i+1] == 'u') { SString nin ((const char*)&in[i+2], 4); nin.append ((char) 0); decoded = (SS_UCS4) strtoul (nin.array(), &next, 16); // success we append even zeros if (nin.array() + 4 == next) { if (surrogate || decoded < 0xd800 || decoded > 0xdfff) { ucs4string.append (decoded); i += 5; continue; } /* lower surrogates came first */ if (decoded >= 0xdc00 || i + 6 + 5 >= input.size() || in[i+6] != '\\' || in[i+7] != 'u') { quoteUCS4 ((SS_UCS2)decoded); i += 5; continue; } i += 6; SString ninl ((const char*)&in[i+2], 4); ninl.append ((char) 0); SS_UCS4 decodedl = (SS_UCS4) strtoul (ninl.array(), &next, 16); // success we append even zeros if (ninl.array() + 4 != next || decodedl < 0xdc00 || decodedl > 0xdfff) { quoteUCS4 ((SS_UCS2)decoded); i--; /* increment later */ continue; } ucs4string.append (((decoded&0x3ff) << 10) + (decodedl&0x3ff) + 0x10000); i += 5; /* increment later */ continue; } } if (input.size() > i+9 && in[i] == '\\' && in[i+1] == 'U') { SString nin ((const char*)&in[i+2], 8); nin.append ((char) 0); decoded = (SS_UCS4) strtoul (nin.array(), &next, 16); // success we append even zeros if (nin.array() + 8 == next) { ucs4string.append (decoded); i += 9; continue; } } // life goes on.. try utf-8 // Unexpected continuation bytes if (in[i] <= 0xbf && in[i] >= 0x80) { quoteUCS4 (in[i]); continue; } if ((in[i] & 0xe0) ==0xc0 && input.size()-i > 1 && (in[i+1] & 0xc0)==0x80 ) { // check - the second decoded = (((SS_UCS4)(in[i] & 0x1f)) << 6) | ((SS_UCS4) (in[i+1] & 0x3f)); if (decoded < 0x80) { quoteUCS4 ((SS_UCS2)decoded); } else { ucs4string.append (decoded); } i++; continue; } if ((in[i] & 0xf0)==0xe0 && input.size()-i > 2 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80) { decoded = (((unsigned short) (in[i] & 0x0f)) << 12) | (((unsigned short) (in[i+1] & 0x3f))<<6) | ((unsigned short) (in[i+2] & 0x3f)); if (decoded < 0x800) { quoteUCS4 ((SS_UCS2) decoded); } else { ucs4string.append (decoded); } i++; i++; continue; } if ((in[i] & 0xf8)==0xf0 && input.size()-i > 3 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x07)) << 18) | (((unsigned int) (in[i+1] & 0x3f))<<12) | (((unsigned short)(in[i+2] & 0x3f))<<6) | ((unsigned short) (in[i+3] & 0x3f)); if (decoded < 0x10000) { quoteUCS4 ((SS_UCS4) decoded); } else { ucs4string.append (decoded); } i++; i++; i++; continue; } if ((in[i] & 0xfc)==0xf8 && input.size()-i > 4 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80 && (in[i+4] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x03)) << 24) | (((unsigned int) (in[i+1] & 0x3f)) << 18) | (((unsigned int) (in[i+2] & 0x3f))<<12) | (((unsigned short) (in[i+3] & 0x3f))<<6) | ((unsigned short) (in[i+4] & 0x3f)); if (decoded < 0x200000) { quoteUCS4 ((SS_UCS4) decoded); } else { ucs4string.append (decoded); } i++; i++; i++; i++; continue; } if ((in[i] & 0xfe)==0xfc && input.size()-i > 5 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80 && (in[i+4] & 0xc0)==0x80 && (in[i+5] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x01)) << 30) | (((unsigned int) (in[i+1] & 0x3f)) << 24) | (((unsigned int) (in[i+2] & 0x3f)) << 18) | (((unsigned int) (in[i+3] & 0x3f))<<12) | (((unsigned short)(in[i+4] & 0x3f))<<6) | ((unsigned short) (in[i+5] & 0x3f)); if (decoded < 0x4000000) { quoteUCS4 ((SS_UCS4) decoded); } else { ucs4string.append (decoded); } i++; i++; i++; i++; i++; continue; } if (in[i] >= 0x80) { quoteUCS4 (in[i]); continue; } // we translate broken utf8 into ucs2 also... ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_Java::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_Java::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_EUC_KR.h0000644000175000017500000000273010434025610016251 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_EUC_KR_h #define SB_EUC_KR_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * Korean text converter (unix euc) * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_EUC_KR : SBEncoder { public: SB_EUC_KR (); virtual ~SB_EUC_KR (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap ksc_5601_r; bool ok; }; #endif /* SB_EUC_KR_h */ ./stoolkit/sencoder/SB_ISO2022_JP3.cpp0000644000175000017500000001455710434025610017222 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_ISO2022_JP3.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SCluster.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_ISO2022_JP3::SB_ISO2022_JP3() : SBEncoder ("\n,\r\n,\r"), jis02131 ("jis-0213-1"), jis02132("jis-0213-2") { ok = jis02131.isOK() && jis02132.isOK(); } SB_ISO2022_JP3::~SB_ISO2022_JP3 () { } /** * return false if this generic encoder does not exist. */ bool SB_ISO2022_JP3::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_ISO2022_JP3::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SUniMap* current=0; SS_UCS2 got; unsigned char c0; unsigned char c1; for (unsigned int i=0; i0 && decd.size()==1 && decd[0] != 0) { if (current != &jis02131) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) '('); sstring.append ((char) 'O'); current = &jis02131; } got = decd[0]; c1 = ((got>>8) & 0xff); c0 = (got & 0xff); sstring.append ((char) c1); sstring.append ((char) c0); i = i + lifted-1; continue; } } if (jis02132.isOK()) { SV_UCS4 decd; SV_UCS4 enc; enc.append (in[i]); if (i+1 < input.size()) enc.append (in[i+1]); if (i+2 < input.size()) enc.append (in[i+2]); unsigned int lifted = jis02132.lift (enc, 0, false, &decd); if (lifted>0 && decd.size()==1 && decd[0] != 0) { if (current != &jis02132) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) '('); sstring.append ((char) 'P'); current = &jis02132; } got = decd[0]; c1 = ((got>>8) & 0xff); c0 = (got & 0xff); sstring.append ((char) c1); sstring.append ((char) c0); i = i + lifted-1; continue; } } if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); current = 0; } quoteString (in[i]); } if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_ISO2022_JP3::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); SUniMap* current=0; ucs4string.clear(); ucs4string.ensure(input.size()); for (unsigned i=0; iisOK() && i+1lift (ucs4, 0, true, &decd); if (lifted != 0 && decd.size() != 0 && decd[0] != 0) { expandYuditLigatures (&decd); ucs4string.append (decd); i++; continue; } } quoteUCS4 (in[i]); if (i+1 * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_HZ.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_HZ::SB_HZ() : SBEncoder ("\n,\r\n,\r"), gb_2312_l ("gb-2312-l") { ok = gb_2312_l.isOK(); } SB_HZ::~SB_HZ () { } /** * return false if this generic encoder does not exist. */ bool SB_HZ::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_HZ::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SUniMap* current=0; SS_UCS2 got; for (unsigned int i=0; i 0x2000 && (got&0x7f00) < 0x7f00 && (got&0x7f) > 0x20 && (got&0x7f) < 0x7f) { sstring.append ((char) ((got>>8) & 0x7f)); sstring.append ((char) ((got&0xff) & 0x7f)); continue; } sstring.append ((char) '~'); sstring.append ((char) '}'); current=0; } quoteString (in[i]); } if (current != 0) { sstring.append ((char) '~'); sstring.append ((char) '}'); } return sstring; } /** * Decode an input string into a unicode string. * It may get rid of new-line and merge tow lines! * Upper routines should know this. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_HZ::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SUniMap* current=0; SS_UCS4 got; for (unsigned i=0; i i+1 && in[i] == '~' && in[i+1] == '~') { ucs4string.append ((SS_UCS4) in[i]); i++; continue; } if (input.size() > i+1 && in[i] == '~' && in[i+1] == '\n') { i++; continue; } if (current==0 && input.size() > i+1 && in[i] == '~' && in[i+1] == '{') { current = &gb_2312_l; i++; continue; } if (current!=0 && input.size() > i+1 && in[i] == '~' && in[i+1] == '}') { current = 0; i++; continue; } if (current!=0 && input.size() > i+1) { got = current->decode ((SS_UCS2)(in[i] << 8) | in[i+1]); if (got != 0) { ucs4string.append (got); i++; continue; } } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_HZ::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_HZ::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_Generic.h0000644000175000017500000000340110434025610016611 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_Generic_h #define SB_Generic_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is a generic converter based upon externap 'my' maps. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_Generic : SBEncoder { public: SB_Generic (const SString& name); virtual ~SB_Generic (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual unsigned int getDecoderMap (SStringVector* key, SStringVector* value, unsigned int size); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); virtual SString preEditBuffer() const; virtual SV_UCS4 postEditBuffer () const; virtual void clear(); bool isOK() const; protected: SUniMap map; bool clustered; /* cluster */ bool ok; }; #endif /* SB_Generic_h */ ./stoolkit/sencoder/SB_EUC_JP0213.cpp0000644000175000017500000001402310434025610017105 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_EUC_JP0213.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SCluster.h" /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_EUC_JP0213::SB_EUC_JP0213() : SBEncoder ("\n,\r\n,\r"), jis0201 ("jis-0201"), jis02131 ("jis-0213-1"), jis02132("jis-0213-2") { ok = jis0201.isOK() && jis02131.isOK() && jis02132.isOK(); } SB_EUC_JP0213::~SB_EUC_JP0213 () { } /** * return false if this generic encoder does not exist. */ bool SB_EUC_JP0213::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_EUC_JP0213::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; unsigned char c0; unsigned char c1; for (unsigned int i=0; i 0xa0 && got < 0xff) { sstring.append ((char) 0x8e); sstring.append ((char) got); continue; } } if (jis02131.isOK()) { SV_UCS4 decd; SV_UCS4 enc; enc.append (in[i]); if (i+1 < input.size()) enc.append (in[i+1]); if (i+2 < input.size()) enc.append (in[i+2]); unsigned int lifted = jis02131.lift (enc, 0, false, &decd); if (lifted>0 && decd.size()==1 && decd[0] != 0) { got = decd[0]; c1 = ((got>>8) & 0xff) | 0x80; c0 = (got & 0xff) | 0x80; sstring.append ((char) c1); sstring.append ((char) c0); i = i + lifted-1; continue; } } if (jis02132.isOK()) { SV_UCS4 decd; SV_UCS4 enc; enc.append (in[i]); if (i+1 < input.size()) enc.append (in[i+1]); if (i+2 < input.size()) enc.append (in[i+2]); unsigned int lifted = jis02132.lift (enc, 0, false, &decd); if (lifted>0 && decd.size()==1 && decd[0] != 0) { got = decd[0]; sstring.append ((char) 0x8f); c1 = ((got>>8) & 0xff) | 0x80; c0 = (got & 0xff) | 0x80; sstring.append ((char) c1); sstring.append ((char) c0); i = i + lifted-1; continue; } } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_EUC_JP0213::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i 0xa0 && in[i+1] < 0xff) { // JISC 6226-1978 half width katakana if (jis0201.isOK()) { got = jis0201.decode ((SS_UCS2)in[i+1]); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } i++; continue; } if (i+2 0xa0 && in[i+1] < 0xff && in[i+2] > 0xa0 && in[i+2] < 0xff) { // JIS X 0213-2000 MEN 2 if (jis02132.isOK()) { SV_UCS4 ucs4; SV_UCS4 decd; ucs4.append (((SS_UCS4)(in[i+1]&0x7f) << 8) + (SS_UCS4)(in[i+2]&0x7f)); unsigned int lifted = jis02132.lift (ucs4, 0, true, &decd); if (lifted != 0 && decd.size() != 0 && decd[0] != 0) { expandYuditLigatures (&decd); ucs4string.append (decd); i++; i++; continue; } } quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); quoteUCS4 (in[i+2]); i++; i++; continue; } if (i+1 < input.size() && in[i] > 0xa0 && in[i] < 0xff && in[i+1] > 0xa0 && in[i+1] < 0xff) { // JIS X 0213-2000 MEN 1 if (jis02131.isOK()) { SV_UCS4 ucs4; SV_UCS4 decd; ucs4.append (((SS_UCS4)(in[i]&0x7f) << 8) | (SS_UCS4)(in[i+1]&0x7f)); unsigned int lifted = jis02131.lift (ucs4, 0, true, &decd); if (lifted != 0 && decd.size() != 0 && decd[0] != 0) { expandYuditLigatures (&decd); ucs4string.append (decd); i++; continue; } } quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); i++; continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_EUC_JP0213::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_EUC_JP0213::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_X11_KSC.cpp0000644000175000017500000001152710434025610016651 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_X11_KSC.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_X11_KSC::SB_X11_KSC() : SBEncoder ("\n,\r\n,\r"), ksc_5601_r ("ksc-5601-r") { ok = ksc_5601_r.isOK(); } SB_X11_KSC::~SB_X11_KSC () { } /** * return false if this generic encoder does not exist. */ bool SB_X11_KSC::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_X11_KSC::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; SUniMap* current=0; for (unsigned int i=0; i 0xa000 && (got&0xff00) < 0xff00 && (got&0xff) > 0xa0 && (got&0xff) < 0xff) { if (current==0) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) '('); sstring.append ((char) 'C'); } current=&ksc_5601_r; sstring.append ((char) ((got&0x7f00)>>8)); sstring.append ((char) (got&0x7f)); continue; } } quoteString (in[i]); } if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_X11_KSC::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; SUniMap* current=0; for (unsigned i=0; i i+3 && in[i] == SS_ESC && in[i+1] == '$' && in[i+2] == '(' && in[i+3] == 'C') { current=&ksc_5601_r; // Korean i++; i++; i++; continue; } if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '(' && in[i+2] == 'B') { current=0; // ASCII i++; i++; continue; } if (input.size() > i+3 && in[i] == SS_ESC && in[i+1] == '(' && in[i+2] == 'A' && in[i+3] > 0x20 && in[i+3] <0x7f) { current=0; // 1 byte ASCII i++; i++; i++; ucs4string.append ((SS_UCS4) in[i]); continue; } // It should not happen but it does. if (in[i] < ' ') current=0; if (current!=0) { if ( input.size() > i+1 && in[i]>0x20 && in[i] < 0x7F && in[i+1] > 0x20 && in[i+1] < 0x7F) { got = current->decode (((((SS_UCS2)in[i]<< 8) | in[i+1]) | 0x8080 )) ; } else { got = 0; } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 ((unsigned char) in[i]); quoteUCS4 ((unsigned char) in[i+1]); } i++; continue; } ucs4string.append ((SS_UCS4) in[i]); continue; } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_X11_KSC::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_X11_KSC::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_UInput.h0000644000175000017500000000321310434025610016462 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_UInput_h #define SB_UInput_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is the 8 bit unicode tarnsformation format. This format is * the only one that can encode 32 bit unicode. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_UInput : SBEncoder { public: SB_UInput (void); virtual ~SB_UInput (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual unsigned int getDecoderMap (SStringVector* key, SStringVector* value, unsigned int size); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); virtual void clear(); virtual SString preEditBuffer() const; private: SString input; }; #endif /* SB_UInput_h */ ./stoolkit/sencoder/SB_GB2312_8.h0000644000175000017500000000300210434025610016261 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_GB2312_8_h #define SB_GB2312_8_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is an 8 bit Chineese converter. It is used mainly in unix. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_GB2312_8 : SBEncoder { public: SB_GB2312_8 (); virtual ~SB_GB2312_8 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap gb_2312_l; bool ok; }; #endif /* SB_GB2312_8_h */ ./stoolkit/sencoder/SB_NCR.cpp0000644000175000017500000001737510434025610016231 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_NCR.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_NCR::SB_NCR() : SBEncoder ("\n,\r\n,\r,\342\200\250,\342\200\251") { } SB_NCR::~SB_NCR () { } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_NCR::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); int j; SS_UCS4 value; bool first; for (unsigned int i=0; i i+4 && in[i] == '&' && in[i+1] == '#' && in[i+2] == 'x') { SString nin ((const char*)&in[i+3], 9); nin.append ((char) 0); decoded = (SS_UCS4) strtoul (nin.array(), &next, 16); // success we append even zeros if (*next == ';') { ucs4string.append (decoded); i += next - nin.array() + 3; continue; } } else if (input.size() > i+4 && in[i] == '&' && in[i+1] == '#') { SString nin ((const char*)&in[i+2], 11); nin.append ((char) 0); decoded = (SS_UCS4) strtoul (nin.array(), &next, 10); // success we append even zeros if (*next == ';') { ucs4string.append (decoded); i += next - nin.array() + 2; continue; } } // life goes on.. try utf-8 // Unexpected continuation bytes if (in[i] <= 0xbf && in[i] >= 0x80) { quoteUCS4 (in[i]); continue; } if ((in[i] & 0xe0) ==0xc0 && input.size()-i > 1 && (in[i+1] & 0xc0)==0x80 ) { // check - the second decoded = (((SS_UCS4)(in[i] & 0x1f)) << 6) | ((SS_UCS4) (in[i+1] & 0x3f)); if (decoded < 0x80) { quoteUCS4 ((SS_UCS2)decoded); } else { ucs4string.append (decoded); } i++; continue; } if ((in[i] & 0xf0)==0xe0 && input.size()-i > 2 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80) { decoded = (((unsigned short) (in[i] & 0x0f)) << 12) | (((unsigned short) (in[i+1] & 0x3f))<<6) | ((unsigned short) (in[i+2] & 0x3f)); if (decoded < 0x800) { quoteUCS4 ((SS_UCS2) decoded); } else { ucs4string.append (decoded); } i++; i++; continue; } if ((in[i] & 0xf8)==0xf0 && input.size()-i > 3 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x07)) << 18) | (((unsigned int) (in[i+1] & 0x3f))<<12) | (((unsigned short)(in[i+2] & 0x3f))<<6) | ((unsigned short) (in[i+3] & 0x3f)); if (decoded < 0x10000) { quoteUCS4 ((SS_UCS4) decoded); } else { ucs4string.append (decoded); } i++; i++; i++; continue; } if ((in[i] & 0xfc)==0xf8 && input.size()-i > 4 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80 && (in[i+4] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x03)) << 24) | (((unsigned int) (in[i+1] & 0x3f)) << 18) | (((unsigned int) (in[i+2] & 0x3f))<<12) | (((unsigned short) (in[i+3] & 0x3f))<<6) | ((unsigned short) (in[i+4] & 0x3f)); if (decoded < 0x200000) { quoteUCS4 ((SS_UCS4) decoded); } else { ucs4string.append (decoded); } i++; i++; i++; i++; continue; } if ((in[i] & 0xfe)==0xfc && input.size()-i > 5 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80 && (in[i+4] & 0xc0)==0x80 && (in[i+5] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x01)) << 30) | (((unsigned int) (in[i+1] & 0x3f)) << 24) | (((unsigned int) (in[i+2] & 0x3f)) << 18) | (((unsigned int) (in[i+3] & 0x3f))<<12) | (((unsigned short)(in[i+4] & 0x3f))<<6) | ((unsigned short) (in[i+5] & 0x3f)); if (decoded < 0x4000000) { quoteUCS4 ((SS_UCS4) decoded); } else { ucs4string.append (decoded); } i++; i++; i++; i++; i++; continue; } if (in[i] >= 0x80) { quoteUCS4 (in[i]); continue; } // we translate broken utf8 into ucs2 also... ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_NCR::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_NCR::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_UCS2.h0000644000175000017500000000360510434025610015757 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_UCS2_h #define SB_UCS2_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * Generic UCS2 (16 bit) converter. * I have redefined endian-ness. * U+1234 -encode-> 12 34 is big endian. * U+1234 -encode-> 34 12 is little endian. * The default is the guess-decode and big-endian encode. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_UCS2 : SBEncoder { public: enum SEndian {AUTO_END=0, BIG_END, LITTLE_END }; SB_UCS2 (void); SB_UCS2 (SEndian e, bool surrogate); virtual ~SB_UCS2 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); /* These are virtual too */ bool isOK() const; void clear(); private: bool start; bool surrogate; SEndian setEndian (const SString& in); void setBigEndian (bool is); int decendian; int encendian; }; #endif /* SB_UCS2_h */ ./stoolkit/sencoder/SB_EUC_JP0213.h0000644000175000017500000000306110434025610016552 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_EUC_JP0213_h #define SB_EUC_JP0213_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is the euc Japanese converter. Used mainly in unix. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_EUC_JP0213 : SBEncoder { public: SB_EUC_JP0213 (); virtual ~SB_EUC_JP0213 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap jis0201; SUniMap jis02131; SUniMap jis02132; bool ok; }; #endif /* SB_EUC_JP0213_h */ ./stoolkit/sencoder/SB_ISO2022_JP3.h0000644000175000017500000000311610434025610016654 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_ISO2022_JP3_h #define SB_ISO2022_JP3_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is iso-2022-jp converter. It is used mainly in email. * It is not the same as its X11 variant. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_ISO2022_JP3 : SBEncoder { public: SB_ISO2022_JP3 (); virtual ~SB_ISO2022_JP3 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap jis02131; SUniMap jis02132; bool ok; }; #endif /* SB_ISO2022_JP3_h */ ./stoolkit/sencoder/SB_BIG5.h0000644000175000017500000000270510434025610015731 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_BIG5_h #define SB_BIG5_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * Chineese text converter (big5) * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_BIG5 : SBEncoder { public: SB_BIG5 (); virtual ~SB_BIG5 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap big_5; bool ok; }; #endif /* SB_BIG5_h */ ./stoolkit/sencoder/SB_BIG5.cpp0000644000175000017500000000710010434025610016256 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_BIG5.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * Chineese text converter (big5) * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_BIG5::SB_BIG5() : SBEncoder ("\n,\r\n,\r"), big_5 ("big-5") { ok = big_5.isOK(); } SB_BIG5::~SB_BIG5 () { } /** * return false if this generic encoder does not exist. */ bool SB_BIG5::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_BIG5::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()); SS_UCS2 got; for (unsigned int i=0; i 0xa000 && (got&0xff00) < 0xff00 && (((got&0xff) > 0xa0 && (got&0xff) < 0xff) || ((got&0xff) >= 0x40 && (got&0xff) < 0x7f))) { sstring.append ((char) (got>>8)); sstring.append ((char) (got&0xff)); continue; } } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_BIG5::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()*2); SS_UCS4 got; for (unsigned i=0; i i+1 && in[i] > 0xa0 && in[i] < 0xff && ((in[i+1] > 0xa0 && in[i+1] < 0xff) || (in[i+1] >= 0x40 && in[i+1] < 0x7f))) { // BIG5 if (big_5.isOK()) { got = big_5.decode ((SS_UCS2)((in[i] << 8) | in[i+1])); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 ((unsigned char) in[i]); quoteUCS4 ((unsigned char) in[i+1]); } i++; continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_BIG5::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_BIG5::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_X11_JP.cpp0000644000175000017500000002231510434025610016537 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_X11_JP.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_X11_JP::SB_X11_JP() : SBEncoder ("\n,\r\n,\r"), jis0201 ("jis-0201"), jis0208 ("jis-0208"), jis0212("jis-0212") { ok = jis0201.isOK() && jis0208.isOK() && jis0212.isOK(); } SB_X11_JP::~SB_X11_JP () { } /** * return false if this generic encoder does not exist. */ bool SB_X11_JP::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * This encoding is also known as X11 Compund Text * @param input is a unicode string. */ const SString& SB_X11_JP::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SUniMap* current=0; bool katakana = false; SS_UCS2 got; for (unsigned int i=0; i 0xa0 && got < 0xff) { if ((current != &jis0201 || katakana!= 1) /*&& current!=0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) ')'); sstring.append ((char) 'I'); } current = &jis0201; katakana=1; sstring.append ((char) got); continue; } if (got < 0x7f) { // Roman if ((current != &jis0201 || katakana!= 1) /*&& current!=0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'J'); current = &jis0201; } katakana=0; sstring.append ((char) got); continue; } } if (jis0208.isOK() && (got=jis0208.encode ((SS_UCS4)in[i])) != 0) { if ((got&0xff00) > 0x2000 && (got&0xff00) < 0x8f00 && (got&0xff) > 0x20 && (got&0xff) < 0x8f) { if (current != &jis0208 /*&& current != 0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) ')'); sstring.append ((char) 'B'); current = &jis0208; } // GR should have high bit set sstring.append ((char) ((got|0x8000)>>8)); sstring.append ((char) (got|0x80)); continue; } } if (jis0212.isOK() && (got=jis0212.encode ((SS_UCS4)in[i])) != 0) { if ((got&0xff00) > 0x2000 && (got&0xff00) < 0x8f00 && (got&0xff) > 0x20 && (got&0xff) < 0x8f) { if (current != &jis0212 /*&& current!=0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) '('); sstring.append ((char) 'D'); current = &jis0212; } sstring.append ((char) ((got&0x7f00)>>8)); sstring.append ((char) (got&0x7f)); continue; } } if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); current = 0; } quoteString(in[i]); } if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); } return sstring; } /** * Decode an input string into a unicode string. * This encoding is also known as X11 Compund Text * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_X11_JP::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); SUniMap* current=0; bool right = false; ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i i+2 && in[i] == SS_ESC && in[i+1] == ')' && in[i+2] == 'I') { current=&jis0201; // JIS X 0X201-1976 right -katakana right = true; i++; i++; continue; } if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '(' && in[i+2] == 'J') { current=&jis0201; // JIS X 0X201-1976 left half -roman right = false; i++; i++; continue; } if (input.size() > i+3 && in[i] == SS_ESC && in[i+1] == '$' && in[i+2] == ')' && in[i+3] == 'B') { current=&jis0208; // JIS X 0X208-1990 right = true; i++; i++; i++; continue; } if (input.size() > i+3 && in[i] == SS_ESC && in[i+1] == '$' && in[i+2] == '(' && in[i+3] == 'D') { current=&jis0212; // JIS X JIS0212-1990 right = false; i++; i++; i++; continue; } // // Kterm has the habit of setting GR instead of GL // if (input.size() > i+3 && in[i] == SS_ESC && in[i+1] == '$' && in[i+2] == ')' && in[i+3] == 'D') { current=&jis0212; // JIS X JIS0212-1990 right = true; i++; i++; i++; continue; } if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '(' && in[i+2] == 'B') { current=0; // ASCII right = false; i++; i++; continue; } // G0 and G1 in an 8-bit env if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == ' ' && in[i+2] == 'C') { i++; i++; continue; } // In 8 bit C1 is 8 bits if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == ' ' && in[i+2] == 'G') { i++; i++; continue; } // In 8 bit C1 is 8 bits if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == ' ' && in[i+2] == 'I') { i++; i++; continue; } // ASCII is G0 if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '(' && in[i+2] == 'B') { i++; i++; continue; } // Right ISO latin is G1 if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '-' && in[i+2] == 'A') { i++; i++; continue; } // Left to right text if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '1' && in[i+2] == ']') { i++; i++; continue; } // right to left text if (input.size() > i+2 && in[i] == SS_ESC && in[i+1] == '2' && in[i+2] == ']') { i++; i++; continue; } // end of text if (input.size() > i+1 && in[i] == SS_ESC && in[i+1] == ']' ) { i++; break; } // It should not happen but it does. // Removed because kterm assumes that conversion did not // change. This is wrong, but let's respect kterm. //if (in[i] < ' ') current=0; if (current) { if (current==&jis0201) { // katakana should have high bit set if (right && in[i] < 0x80) { // escaped ASCII got = (SS_UCS4) in[i]; ucs4string.append (got); continue; } else { got = current->decode ((SS_UCS2)(in[i])); } } else { // GR should have high bit set if (right && in[i] < 0x80) { // escaped ASCII got = (SS_UCS4) in[i]; ucs4string.append (got); continue; } if (input.size() > i+1) { got = current->decode (0x7f7f & ((SS_UCS2)in[i] << 8 | in[i+1])); } else { got = 0; } } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } if (current!=&jis0201) i++; continue; } ucs4string.append ((SS_UCS4) in[i]); continue; } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_X11_JP::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_X11_JP::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_ISO2022_JP.cpp0000644000175000017500000001704010434025610017125 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_ISO2022_JP.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #define SS_ESC 27 /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_ISO2022_JP::SB_ISO2022_JP() : SBEncoder ("\n,\r\n,\r"), jis0201 ("jis-0201"), jis0208 ("jis-0208"), jis0212("jis-0212") { ok = jis0201.isOK() && jis0208.isOK() && jis0212.isOK(); } SB_ISO2022_JP::~SB_ISO2022_JP () { } /** * return false if this generic encoder does not exist. */ bool SB_ISO2022_JP::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_ISO2022_JP::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SUniMap* current=0; bool katakana = false; SS_UCS2 got; for (unsigned int i=0; i 0xa0 && got < 0xff) { if ((current != &jis0201 || !katakana) /*&& current != 0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'I'); current = &jis0201; } current = &jis0201; katakana=true; sstring.append ((char) (got&0x7f)); continue; } if (got < 0x7f) { // Roman if ((current != &jis0201 || !katakana)/* && current != 0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'J'); current = &jis0201; } katakana=false; sstring.append ((char) got); continue; } } if (jis0208.isOK() && (got=jis0208.encode (in[i])) != 0) { if ((got&0xff00) > 0x2000 && (got&0xff00) < 0x8f00 && (got&0xff) > 0x20 && (got&0xff) < 0x8f) { if (current != &jis0208 /*&& current != 0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) 'B'); current = &jis0208; } sstring.append ((char) ((got&0xff00)>>8)); sstring.append ((char) (got&0xff)); continue; } } if (jis0212.isOK() && (got=jis0212.encode (in[i])) != 0) { if ((got&0xff00) > 0x2000 && (got&0xff00) < 0x8f00 && (got&0xff) > 0x20 && (got&0xff) < 0x8f) { if (current != &jis0212 /* && current != 0*/) { sstring.append ((char) SS_ESC); sstring.append ((char) '$'); sstring.append ((char) '('); sstring.append ((char) 'D'); current = &jis0212; } sstring.append ((char) ((got&0xff00)>>8)); sstring.append ((char) (got&0xff)); continue; } } if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); current = 0; } quoteString (in[i]); } if (current != 0) { sstring.append ((char) SS_ESC); sstring.append ((char) '('); sstring.append ((char) 'B'); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_ISO2022_JP::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); SUniMap* current=0; bool katakana = false; ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i i+2 && in[i]==SS_ESC && in[i+1] == '$' && in[i+2] == '@') { current=&jis0208; // JIS C 6226-1978 i++; i++; continue; } if (input.size() > i+2 && in[i]==SS_ESC && in[i+1] == '$' && in[i+2] == 'B') { current=&jis0208; // JIS X 0X208-1983 i++; i++; continue; } if (input.size() > i+5 && in[i]==SS_ESC && in[i+1] == '&' && in[i+2] == '@' && in[i+3]==SS_ESC && in[i+4] == '$' && in[i+5] == 'B') { current=&jis0208; // JIS X 0X208-1990 i++; i++; i++; i++; i++; continue; } if (input.size() > i+2 && in[i]==SS_ESC && in[i+1] == '(' && in[i+2] == 'J') { current=&jis0201; // JIS Roman katakana=false; i++; i++; continue; } if (input.size() > i+2 && in[i]==SS_ESC && in[i+1] == '(' && in[i+2] == 'H') { current=&jis0201; // JIS Roman - old bad escape katakana=false; i++; i++; continue; } if (input.size() > i+2 && in[i]==SS_ESC && in[i+1] == '(' && in[i+2] == 'I') { current=&jis0201; // Half width katakana katakana=true; i++; i++; continue; } if (input.size() > i+2 && in[i]==SS_ESC && in[i+1] == '(' && in[i+2] == 'B') { current=0; // ASCII i++; i++; continue; } if (input.size() > i+3 && in[i]==SS_ESC && in[i+1] == '$' && in[i+2] == '(' && in[i+3] == 'D') { current=&jis0212; // JIS X 0212-1990 i++; i++; i++; continue; } // It should not happen but it does. if (in[i] < ' ') current=0; if (current) { if (current==&jis0201) { // Tyr katakana first, then jis roman. got=(katakana) ? current->decode ((SS_UCS2)(in[i]|0x80)) : current->decode ((SS_UCS2)(in[i])); } else { if (input.size()-i > 1) { got = current->decode ((SS_UCS2)in[i] << 8 | in[i+1]); } else { got = 0; } } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 (in[i]); quoteUCS4 (in[i+1]); } if (current!=&jis0201) i++; continue; } ucs4string.append ((SS_UCS4) in[i]); continue; } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_ISO2022_JP::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_ISO2022_JP::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_Johab.cpp0000644000175000017500000002021611326621526016627 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_Johab.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * JOHAB converter : KS C 5601-1992, Annex 3, supplementary encoding * rewritten code contributed by Jungshik Shin * @author: Gaspar Sinai * @version: 2000-05-12 */ SB_Johab::SB_Johab() : SBEncoder ("\n,\r\n,\r"), ksc_5601_r ("ksc-5601-r") { ok = ksc_5601_r.isOK(); } SB_Johab::~SB_Johab () { } /** * return false if this generic encoder does not exist. */ bool SB_Johab::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_Johab::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); unsigned char c1; unsigned char c2; SS_UCS2 got; static const SS_UCS2 jamo_from_ucs[51] = { 0x8841, 0x8c41, 0x8444, 0x9041, 0x8446, 0x8447, 0x9441, 0x9841, 0x9c41, 0x844a, 0x844b, 0x844c, 0x844d, 0x884e, 0x884f, 0x8450, 0xa041, 0xa441, 0xa841, 0x8454, 0xac41, 0xb041, 0xb441, 0xb841, 0xbc41, 0xc041, 0xc441, 0xc841, 0xca41, 0xd041, 0x8461, 0x8481, 0x84a1, 0x84c1, 0x84e1, 0x8541, 0x8561, 0x8581, 0x85a1, 0x85c1, 0x85e1, 0x8641, 0x8661, 0x8681, 0x86a1, 0x86c1, 0x86e1, 0x8741, 0x8761, 0x8781, 0x87a1 }; sstring.clear(); sstring.ensure(input.size()*2); for (unsigned int i=0; i= 0xac00 && in[i] <= 0xd7af) { SS_UCS4 ch = in[i]-0xac00; int l = ch / 588; // 588 = 21 * 28 int m = (ch / 28) % 21; int t = ch % 28; got = ( (l+2) << 10 ) | ((m + (m<5 ? 3 : (m<11 ? 5 : (m<17 ? 7 : 9)))) << 5) | (t + (t<17 ? 1 : 2)) | 0x8000; sstring.append ((char) ((got & 0xff00) >> 8) ); sstring.append ((char) (got&0xff) ); continue; } if (in[i] > 0x3130 && in[i] < 0x3164) { got = jamo_from_ucs[in[i]-0x3131]; sstring.append ((char) ((got & 0xff00) >>8) ); sstring.append ((char) (got&0xff) ); continue; } if (ksc_5601_r.isOK()&& (got=ksc_5601_r.encode ((SS_UCS4)in[i])) != 0) { c1 = (got >> 8) & 0x7f; c2 = got & 0x7f; if ( (in[i] >=0x4e00 && in[i] <=0x9fa5) || (in[i] >= 0xf900 && in[i] <= 0xfa0b)) { c1 -= 0x4a; c2 |= 0x80; got = ((c1 / 2) << 8) + 0xe000 + c2 + (c1 % 2 ? 0 : (c2 > 0xee ? 0x43 : 0x31) - 0xa1 ); } else { c1 -= 0x21; c2 |= 0x80; got = ((c1 / 2) << 8) + 0xd900 + c2 + (c1 % 2 ? 0 : (c2 > 0xee ? 0x43 : 0x31) - 0xa1 ); } sstring.append ((char) ((got & 0xff00) >>8)); sstring.append ((char) (got&0xff) ); continue; } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_Johab::decode (const SString& input) { /* * The table for Bit pattern to Hangul Jamo * 5 bits each are used to encode * leading consonants(19 + 1 filler),medial vowels(21 + 1 filler) * and trailing consonants(27 + 1 filler). * * KS C 5601-1992 Annex 3 Table 2 * 0 : Filler, -1: invalid, >= 1 : valid */ static int lead[32] = {-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}; static int mid[32] = {-1, -1, 0, 1, 2, 3, 4, 5, -1, -1, 6, 7, 8, 9, 10, 11, -1, -1, 12, 13, 14, 15, 16, 17, -1, -1, 18, 19, 20, 21, -1, -1}; static int trail[32] = {-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, -1}; static SS_UCS2 lead_to_ucs[19] = { 0x3131, 0x3132, 0x3134, 0x3137, 0x3138, 0x3139, 0x3141, 0x3142, 0x3143, 0x3145, 0x3146, 0x3147, 0x3148, 0x3149, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e }; static SS_UCS2 trail_to_ucs[27] = { 0, 0, 0x3133, 0, 0x3135, 0x3136, 0, 0, 0x313a, 0x313b, 0x314c, 0x313d, 0x313e, 0x313f, 0x3140, 0, 0, 0x3144, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; int idx; for (unsigned i=0; i 0xf9 || in[i] == 0xdf || (in[i] > 0x7e && in[i] < 0x84) || (in[i] > 0xd3 && in[i] < 0xd9)) { quoteUCS4 ((unsigned char) in[i]); continue; } // Hangul if (input.size() > i+1 && in[i] <= 0xd3 && ((in[i+1]> 0x40 && in[i+1] < 0x7f) || (in[i+1] > 0x80 && in[i+1] < 0xff)) ) { int l,m,t; idx = (in[i] << 8) + in[i+1]; l = lead[(idx & 0x7c00) >> 10]; m = mid[(idx & 0x03e0) >> 5]; t = trail[idx & 0x001f]; if (l == -1 || m == -1 || t == -1) got=0; // Syllable else if (l > 0 && m > 0) got = ((l-1)*21 + (m-1))*28 + t + 0xac00; // Initial Consonant else if (l > 0 && m == 0 && t == 0) got = lead_to_ucs[l - 1]; // Vowel else if (l == 0 && m > 0 && t == 0) got = 0x314e + m; // 0x314f + m - 1 // Final Consonant else if (l == 0 && m == 0 && t > 0) got = trail_to_ucs[t - 1]; else got = 0; if (got == 0) { quoteUCS4 ((unsigned char) in[i]); quoteUCS4 ((unsigned char) in[i+1]); } else { ucs4string.append (got); } i++; continue; } // Hanja & Symbol if (input.size() > i+1 && in[i] > 0xd8 && ((in[i+1]> 0x30 && in[i+1] < 0x7f) || (in[i+1] > 0x90 && in[i+1] < 0xff)) ) { // User Defined Area : Unused if ( in[i]==0xda && in[i+1]>0xa0 && in[i+1]<0xd4 ) got=0; // Symbol else if (in[i] < 0xdf) { idx = ( ( (in[i]-0xd9) * 2 + (in[i+1] > 0xa0 ? 1 : 0) + 0xa1 ) << 8 ) + in[i+1] + (in[i+1] > 0xa0 ? 0 : (in[i+1] > 0x90 ? 0x5e : 0x70) ); got=ksc_5601_r.decode((SS_UCS2)idx); } // Hanja else { idx = ( ( (in[i]-0xe0) * 2 + (in[i+1] > 0xa0 ? 1 : 0) + 0xca ) << 8 ) + in[i+1] + (in[i+1] > 0xa0 ? 0 : (in[i+1] > 0x90 ? 0x5e : 0x70) ); got=ksc_5601_r.decode((SS_UCS2)idx); } if (got ==0) { quoteUCS4 ((unsigned char) in[i]); quoteUCS4 ((unsigned char) in[i+1]); } else { ucs4string.append (got); } i++; continue; } if (in[i] > 0x7e) { quoteUCS4 ((unsigned char) in[i]); continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_Johab::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_Johab::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_X11_JP.h0000644000175000017500000000305010434025610016177 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_X11_JP_h #define SB_X11_JP_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * JP Compound text converter (X11) * JIS X0208 1983 Japanese Character Set * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_X11_JP : SBEncoder { public: SB_X11_JP (); virtual ~SB_X11_JP (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap jis0201; SUniMap jis0208; SUniMap jis0212; bool ok; }; #endif /* SB_X11_JP_h */ ./stoolkit/sencoder/SBEncoder.h0000644000175000017500000000406110434025610016460 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SBEncoder_h #define SBEncoder_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 */ class SBEncoder { public: SBEncoder (const SStringVector& delim); virtual ~SBEncoder (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual unsigned int getDecoderMap (SStringVector* key, SStringVector* value, unsigned int size); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); virtual void clear(); /* return the string that still waits for match */ virtual SString preEditBuffer() const; virtual SV_UCS4 postEditBuffer () const; protected: void quoteUCS4 (unsigned char in); void quoteIllegalUCS4 (unsigned char in); void quoteUCS4 (SS_UCS2 in); void quoteUCS4 (SS_UCS4 in); void quoteIllegalString (SS_UCS4 in); void quoteString (SS_UCS4 in); void quoteStringLE (SS_UCS4 in); void quoteStringBE (SS_UCS4 in); SStringVector realDelimiters; SStringVector sampleDelimiters; SString sstring; SV_UCS4 ucs4string; SV_UCS4 remaining; }; #endif /* SBEncoder_h */ ./stoolkit/sencoder/SB_X11_HZ.h0000644000175000017500000000276010434025610016216 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_X11_HZ_h #define SB_X11_HZ_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * Hanzi compound text fonverter (X11) * GB 2312 1980 China * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_X11_HZ : SBEncoder { public: SB_X11_HZ (); virtual ~SB_X11_HZ (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap gb_2312_l; bool ok; }; #endif /* SB_X11_HZ_h */ ./stoolkit/sencoder/SB_UHC.cpp0000644000175000017500000000731611326621363016230 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_UHC.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * Korean text converter (MS-Windows Korean) * rewritten code contributed by Jungshik Shin * @author: Gaspar Sinai * @version: 2000-05-12 */ SB_UHC::SB_UHC() : SBEncoder ("\n,\r\n,\r"), ksc_5601_r ("ksc-5601-r") { ok = ksc_5601_r.isOK(); } SB_UHC::~SB_UHC () { } /** * return false if this generic encoder does not exist. */ bool SB_UHC::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_UHC::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); SS_UCS2 got; for (unsigned int i=0; i>8)); sstring.append ((char) (got&0xff)); continue; } quoteString (in[i]); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_UHC::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i i+1 && ( (in[i] > 0xa0 && in[i] < 0xff && in[i+1] > 0xa0 && in[i+1] < 0xff) || (in[i] > 0x80 && in[i] < 0xc6 && ((in[i+1] > 0x40 && in[i+1] < 0x5b) || (in[i+1] > 0x60 && in[i+1] < 0x7b) || (in[i+1] > 0x80 && in[i+1] < 0xff))) || (in[i] == 0xc6 && in[i+1] > 0x40 && in[i+1] < 0x53))) { // KSC5601 if (ksc_5601_r.isOK()) { got = ksc_5601_r.decode ((SS_UCS2)((in[i] & 0xff) << 8) | (in[i+1] & 0xff) ); } if (got != 0) { ucs4string.append (got); } else { quoteUCS4 ((unsigned char) in[i]); quoteUCS4 ((unsigned char) in[i+1]); } i++; continue; } ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_UHC::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_UHC::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_NCR.h0000644000175000017500000000276510434025610015673 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_NCR_h #define SB_NCR_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is a NCR converter to convert &#dddd; and &#xhhhh; sequences. * This can also read utf-8 embedded format. * Used Java encoder/decoder as a base. * @author: Miikka-Markus Alhonen * @version: 2002-02-26 */ class SB_NCR : SBEncoder { public: SB_NCR (void); virtual ~SB_NCR (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); }; #endif /* SB_NCR_h */ ./stoolkit/sencoder/SB_UInput.cpp0000644000175000017500000001175710434025610017031 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_UInput.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_UInput::SB_UInput() : SBEncoder ("\n,\r\n,\r,\342\200\250,\342\200\251") { } SB_UInput::~SB_UInput () { } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. * endecode is not quite reversible * it is producing \UXXXXXXXX and \uxxxx */ const SString& SB_UInput::encode (const SV_UCS4& iucs) { sstring.clear(); for (unsigned int i=0; i i+4 && in[i] == 'u') { decoded = (SS_UCS4) strtoul ((char*) &in[i+1], &next, 16); // success we append even zeros if (in + i + 5 == (unsigned char*) next) { ucs4string.append (decoded); rd += 5; i += 4; continue; } } else if (input.size() > i+8 && in[i] == 'U') { decoded = (SS_UCS4) strtoul ((char*) &in[i+1], &next, 16); // success we append even zeros if (in + i + 9 == (unsigned char*) next) { ucs4string.append (decoded); rd += 9; i += 8; continue; } } unsigned int expected = 0; if (input.size() ==1 && (in[i] == 'u' || in[i] == 'U')) break; if (input.size() > 1 && in[i] == 'u') { expected = 5; } if (input.size() > 1 && in[i] == 'U') { expected = 9; } /* see if all can be good */ if (input.size() < i+expected && _input.size()) { unsigned int j; for (j=i+1; j= '0' && in[j] <='9') || (in[j] >= 'a' && in[j] <='f') || (in[j] >= 'A' && in[j] <='F')) { continue; } break; } if (j==input.size()) break; } decoded = (SS_UCS4) in[i]; ucs4string.append (decoded); rd += 1; } while (rd--) input.remove(0); return ucs4string; } /** * clear input and output buffers. */ void SB_UInput::clear () { //input.clear(); } SString SB_UInput::preEditBuffer() const { return SString(input); } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_UInput::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_UInput::delimiters (const SString& sample) { return sampleDelimiters; } /** * return key value map to see what decodes to what * @param key will contain the keys * @param value will contain the values * @param _size is the maximum size of returned arrays * @return the real size of the arrays. */ unsigned int SB_UInput::getDecoderMap (SStringVector* key, SStringVector* value, unsigned int _size) { key->clear(); value->clear(); char sk[64]; char sv[64]; for (unsigned int i=0; i<_size && i<128 - 32; i++) { sprintf (sk, "u%04d", i+32); key->append (sk); sv[0] = (char)(i+32); sv[1] = 0; value->append (sv); } return 0x7fffffff; } ./stoolkit/sencoder/SB_DeShape.cpp0000644000175000017500000000605610473755710017130 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_DeShape.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/STextData.h" #define SS_ESC 27 /** * @author: Gaspar Sinai * @version: 2000-05-12 * This is the counterpart of SB_Shape. It does just the * Opposite thing - it takes Presentation Forms and * convert them back into normal characters - reverse of * Roman Czyborra's arabjoin. */ SB_DeShape::SB_DeShape() : SBEncoder ("\n,\r\n,\r"), shape ("shape"), interface(false) { ok = shape.isOK(); } SB_DeShape::~SB_DeShape () { } /** * return false if this generic encoder does not exist. */ bool SB_DeShape::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_DeShape::encode (const SV_UCS4& input) { return interface.encode (convert(input)); } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_DeShape::decode (const SString& _input) { SV_UCS4 decd = interface.decode (_input); return convert (decd); } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_DeShape::convert (const SV_UCS4& decd) { for (unsigned int i=0; i=i+1) { ucs4string.append (ret); i = n; } else { ucs4string.append (decd[i]); i++; } } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_DeShape::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_DeShape::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_Java.h0000644000175000017500000000271710434025610016127 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_Java_h #define SB_Java_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is a java converter to convert \unnnn sequences. * This can also read utf-8 enbedded format. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_Java : SBEncoder { public: SB_Java (bool surrogate); virtual ~SB_Java (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); private: bool surrogate; }; #endif /* SB_Java_h */ ./stoolkit/sencoder/SB_BiDi.cpp0000644000175000017500000000750710473755722016433 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_BiDi.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/STextData.h" #define SS_ESC 27 /** * @author: Gaspar Sinai * @version: 2000-05-12 */ /** * This is a converter to import data that is supposed to * be parsed with a bi-di parser. * Yudit uses a less nasty format. * Yudit's format is more consistant and almost * compliant with unicode standard, and I think it is less ambigous * than the standard. SO you dont really need this class :) */ /** *----------------------------------------------------------------------------- *----------------------------------------------------------------------------- * * FOR IMPLEMENTORS: * You only need to write 2 routines. You dont need any tables! * * 1. Take a look at Yudit BiDi in doc/Yudit.bidi.txt * You will * - SB_BiDi::decode to yudit format from utf-8 * - SB_BiDi::encode from yudit format to utf-8 * * 2. Take a look at fribidi. I have one implementation at * stoolkit/work. You dont need those huse tables. * you can get the category with: * SS_UCS2 u2 = category.encode (ucs4[i]); * if (u2 == 0x4) // Mark, Non-Spacing * see mytool/mys/category.mys * * Sorry I was too busy so I did not implement this. * * Gaspar Sinai * 2001-11-25. *----------------------------------------------------------------------------- *----------------------------------------------------------------------------- */ /** * TODO: implement this. */ SB_BiDi::SB_BiDi() : SBEncoder ("\n,\r\n,\r"), category ("category"), interface(false) { ok = false; /* FIXME: remove comment ok = category.isOK(); */ } SB_BiDi::~SB_BiDi () { } /** * return false if this generic encoder does not exist. */ bool SB_BiDi::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_BiDi::encode (const SV_UCS4& input) { sstring = interface.encode (input); /* TODO: do the fuzz here. use category. LRO RLO and PDF needs to be * taken care. By default assume LRO. */ return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_BiDi::decode (const SString& _input) { ucs4string = interface.decode (_input); /* TODO: do the fuzz here. use category. */ return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_BiDi::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_BiDi::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SB_Generic.cpp0000644000175000017500000001072410434025610017152 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_Generic.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SCluster.h" /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_Generic::SB_Generic(const SString& n) : SBEncoder ("\n,\r\n,\r"), map (n) { ok = map.isOK(); clustered = map.isClustered(); } SB_Generic::~SB_Generic () { } /** * return false if this generic encoder does not exist. */ bool SB_Generic::isOK() const { return ok; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_Generic::encode (const SV_UCS4& input) { return map.encode(input); } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_Generic::decode (const SString& input) { /* if clustered, we let output out only if a cluster is finished */ if (!clustered) return map.decode(input); ucs4string.clear(); const SV_UCS4& ret = map.decode(input); if (ret.size()) remaining.append (ret); /* clusterize it */ bool zeorinput = (input.size()==0); while(remaining.size()) { int finished; SV_UCS4 out; unsigned int next = getCluster (remaining, 0, &out, &finished); /* it *is* finished */ if (finished==0 && zeorinput) finished = 1; if (!finished) break; if (next==0) next = 1; while (next) { ucs4string.append (remaining[0]); remaining.remove(0); next--; } } if (zeorinput) map.reset(false); return (ucs4string); } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_Generic::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_Generic::delimiters (const SString& sample) { return sampleDelimiters; } #if 0 /** * @return the text in the decode buffer */ SString SB_Generic::remainder() const { if (!clustered) { return SString(map.remainder()); } /* Make a string from UCS4 remainder, by appliying reverse map. */ SUniMap m = map; SString ret = m.encode (remaining); SV_UCS4 empty; ret.append (m.encode(empty)); SString rem = map.remainder(); //fprintf (stderr, "rem.size%u ucs4.size=%u string.size=%u\n", // remaining.size(), ret.size(), rem.size()); ret.append (rem); return SString(ret); } #endif /* for non-clustering it is remainder */ SString SB_Generic::preEditBuffer() const { if (!clustered) { return SString(map.remainder()); } return SString(map.remainder()); // for a change :) } /* for clustering */ SV_UCS4 SB_Generic::postEditBuffer () const { if (!clustered) { return SV_UCS4(); } return SV_UCS4(remaining); } /** * return key value map to see what decodes to what * @param key will contain the keys * @param value will contain the values * @param _size is the maximum size of returned arrays * @return the real size of the arrays. */ unsigned int SB_Generic::getDecoderMap (SStringVector* key, SStringVector* value, unsigned int _size) { key->clear(); value->clear(); if (!map.isOK()) return 0; return (map.getDecoderMap (key, value, _size)); } /** * Clear the map */ void SB_Generic::clear() { remaining.clear(); map.reset(); } ./stoolkit/sencoder/SB_UCS2.cpp0000644000175000017500000001731710434025610016317 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_UCS2.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /* * This mark can not be possibly in an UCS2 string. * so, this can be the byte order. */ #define SS_UCS2_MARK 0xfeff /** * Generic USC2 converter * @author: Gaspar Sinai * @version: 2000-05-12 * 2028 2029 separators in all possible way */ SB_UCS2::SB_UCS2(void) : SBEncoder ("\040\050,\040\051,\050\040,\051\040") { start = true; surrogate = true; decendian = 0; encendian = 2; } void SB_UCS2::clear() { start = true; SStringVector l("\040\050,\040\051,\050\040,\051\040"); sampleDelimiters = l; realDelimiters = l; } static char BE_LINESEP[] = {0x20, 0x28}; static char BE_PARASEP[] = {0x20,0x29}; static char BE_NL[] = {0x00, '\n'}; static char BE_CR[] = {0x00, '\r'}; static char BE_CRNL[] = {0x00, '\r', 0x00, '\n'}; static char LE_LINESEP[] = {0x28, 0x20}; static char LE_PARASEP[] = {0x29, 0x20}; static char LE_NL[] = {'\n', 0x00}; static char LE_CR[] = {'\r', 0x00}; static char LE_CRNL[] = {'\r', 0x00, '\n', 0x00}; /** * Set the big endina if flag is true. otherwise little endian */ void SB_UCS2::setBigEndian(bool is) { SString linesep; SString parasep; SString nl; SString cr; SString crnl; if (is) { decendian = 1; linesep.append (BE_LINESEP, sizeof(BE_LINESEP)); parasep.append (BE_PARASEP, sizeof(BE_PARASEP)); nl.append (BE_NL, sizeof(BE_NL)); cr.append (BE_CR, sizeof(BE_CR)); crnl.append (BE_CRNL, sizeof(BE_CRNL)); } else { decendian = -1; linesep.append (LE_LINESEP, sizeof(LE_LINESEP)); parasep.append (LE_PARASEP, sizeof(LE_PARASEP)); nl.append (LE_NL, sizeof(LE_NL)); cr.append (LE_CR, sizeof(LE_CR)); crnl.append (LE_CRNL, sizeof(LE_CRNL)); } sampleDelimiters.clear(); sampleDelimiters.append (linesep); sampleDelimiters.append (parasep); sampleDelimiters.append (nl); sampleDelimiters.append (cr); sampleDelimiters.append (crnl); } SB_UCS2::SB_UCS2(SEndian e, bool _surrogate) : SBEncoder ("\040\050,\040\051,\050\040,\051\040") { decendian = 0; start = true; if (e == LITTLE_END) { setBigEndian(false); realDelimiters = sampleDelimiters; } if (e == BIG_END) { setBigEndian(true); realDelimiters = sampleDelimiters; } encendian = decendian; if (encendian==0) encendian = 2; surrogate = _surrogate; } SB_UCS2::~SB_UCS2 () { } SB_UCS2::SEndian SB_UCS2::setEndian(const SString& in) { if (in.size() < 2) return AUTO_END; if (((SS_UCS2_MARK>>8)&(const unsigned char)(in[0]))==(SS_UCS2_MARK>>8) && ((SS_UCS2_MARK&0xff) &(const unsigned char)(in[1]))==(SS_UCS2_MARK&0xff)) { setBigEndian(false); return LITTLE_END; } if (((SS_UCS2_MARK>>8)&(const unsigned char)(in[1]))==(SS_UCS2_MARK>>8) && ((SS_UCS2_MARK&0xff) &(const unsigned char)(in[0]))==(SS_UCS2_MARK&0xff)) { setBigEndian(true); return BIG_END; } return AUTO_END; } /** * This is always a possible encoding. */ bool SB_UCS2::isOK() const { return true; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_UCS2::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure(input.size()*2); /* * Put marker */ if (start && input.size()!=0) { start = false; if (encendian == 2) /* auto endian */ { sstring.append ((char) (SS_UCS2_MARK&0xff)); sstring.append ((char) ((SS_UCS2_MARK>>8)&0xff)); } } for (unsigned int i=0; i 0xffff) { /* if there is no surrogate support quote */ if (in4 > 0x10ffff || !surrogate) { if (encendian < 0) // Little Endian { quoteStringLE (in4); } else // Big endian { quoteStringBE (in4); } continue; } in4 = in4 - 0x10000; SS_UCS4 in4h = ((in4 >> 10) & 0x3ff) + 0xd800; in4 = (in4 & 0x3ff) + 0xdc00; if (encendian < 0) // Little Endian { sstring.append ((char) ((in4h>>8)&0xff)); sstring.append ((char) (in4h&0xff)); } else // Big endian { sstring.append ((char) (in4h&0xff)); sstring.append ((char) ((in4h>>8)&0xff)); } /* low surrogates next */ } if (encendian < 0) // Little Endian { sstring.append ((char) ((in4>>8)&0xff)); sstring.append ((char) (in4&0xff)); } else // Big encendian { sstring.append ((char) (in4&0xff)); sstring.append ((char) ((in4>>8)&0xff)); } } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_UCS2::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); ucs4string.clear(); ucs4string.ensure(input.size()); SS_UCS4 got; for (unsigned i=0; i= 0xd800 && got <= 0xdbff) { if (!surrogate) { quoteUCS4 ((unsigned char)in[i]); quoteUCS4 ((unsigned char)in[i+1]); continue; } if (i+3 >= input.size()) { quoteUCS4 ((unsigned char)in[i]); quoteUCS4 ((unsigned char)in[i+1]); continue; } i++; i++; SS_UCS4 got2; if (decendian < 0) { got2 = (in[i] << 8) + in[i+1]; } else { got2 = (in[i+1] << 8) + in[i]; } if (got2 < 0xdc00 || got2 > 0xdfff) { quoteUCS4 ((unsigned char)in[i-2]); quoteUCS4 ((unsigned char)in[i-1]); quoteUCS4 ((unsigned char)in[i]); quoteUCS4 ((unsigned char)in[i+1]); continue; } got = ((got&0x3ff) << 10) + (got2&0x3ff) + 0x10000; } /* low surrogates - came first ! */ if (got >= 0xdc00 && got <= 0xdfff) { quoteUCS4 ((unsigned char)in[i]); quoteUCS4 ((unsigned char)in[i+1]); continue; } ucs4string.append (got); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_UCS2::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_UCS2::delimiters (const SString& sample) { setEndian (sample); return sampleDelimiters; } ./stoolkit/sencoder/SB_UTF8.cpp0000644000175000017500000002070611326616776016351 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SB_UTF8.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * This is a sample (base) implementation of the core encoding class * @author: Gaspar Sinai * @version: 2000-05-12 * E2 80 A8 E2 80 A9 are paragraph and line seps in utf-8 (U+20A8, U+20A9) */ SB_UTF8::SB_UTF8(bool _surrogate) : SBEncoder ("\n,\r\n,\r,\342\200\250,\342\200\251") { surrogate = _surrogate; } SB_UTF8::~SB_UTF8 () { } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SB_UTF8::encode (const SV_UCS4& input) { const SS_UCS4* in = input.array(); sstring.clear(); sstring.ensure (input.size() * 3); unsigned int isize = input.size(); SS_UCS4 ini; for (register unsigned int i=0; i= 0xd800 && ini <= 0xdfff) { SS_UCS4 hi = ini; if (i+1 >= isize) { quoteIllegalString (hi); continue; } if (hi < 0xd800 || hi > 0xdbff) { quoteIllegalString (hi); continue; } i++; SS_UCS4 lo = in[i]; if (lo < 0xdc00 || lo > 0xdfff) { quoteIllegalString (lo); continue; } /* This is th sortest form required by standard */ ini = ((hi & 0x3ff) << 10) + (lo & 0x3ff) + 0x10000; } if ((ini & 0x9fffff00) == 0x9fffff00) { sstring.append ((char) (ini & 0xff)); continue; } if (ini >= 0x4000000) { sstring.append ((char) (0xfc | ((ini >> 30) & 0x3))); sstring.append ((char) (0x80 | ((ini >> 24) & 0x3f))); sstring.append ((char) (0x80 | ((ini >> 18) & 0x3f))); sstring.append ((char) (0x80 | ((ini >> 12) & 0x3f))); sstring.append ((char) (0x80 | ((ini >> 6) & 0x3f))); sstring.append ((char) (0x80 | (ini & 0x3f))); continue; } if (ini >= 0x200000) { sstring.append ((char) (0xf8 | ((ini >> 24) & 0x7))); sstring.append ((char) (0x80 | ((ini >> 18) & 0x3f))); sstring.append ((char) (0x80 | ((ini >> 12) & 0x3f))); sstring.append ((char) (0x80 | ((ini >> 6) & 0x3f))); sstring.append ((char) (0x80 | (ini & 0x3f))); continue; } if (ini >= 0x10000) { sstring.append ((char) (0xf0 | (ini >> 18))); sstring.append ((char) (0x80 | ((ini >> 12) & 0x3f))); sstring.append ((char) (0x80 | ((ini >> 6) & 0x3f))); sstring.append ((char) (0x80 | (ini & 0x3f))); continue; } if (ini >= 0x0800) { sstring.append ((char) (0xe0 | (ini >> 12))); sstring.append ((char) (0x80 | ((ini >> 6) & 0x3f))); sstring.append ((char) (0x80 | (ini & 0x3f))); continue; } if (ini >= 0x80 && ini <= 0x07ff) { sstring.append ((char) (0xc0 | (ini >> 6))); sstring.append ((char) (0x80 | (ini & 0x3f))); continue; } sstring.append ((char) ini); } return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SB_UTF8::decode (const SString& input) { const unsigned char* in = (unsigned char*) input.array(); SS_UCS4 decoded; unsigned int isize = input.size(); ucs4string.clear(); ucs4string.ensure(isize); for (register unsigned i=0; i= 0x80) { quoteIllegalUCS4 (in[i]); continue; } if ((in[i] & 0xe0) ==0xc0 && isize-i > 1 && (in[i+1] & 0xc0)==0x80 ) { // check - the second decoded = (((SS_UCS4)(in[i] & 0x1f)) << 6) | ((SS_UCS4) (in[i+1] & 0x3f)); if (decoded < 0x80) { quoteIllegalUCS4 (in[i]); quoteIllegalUCS4 (in[i+1]); } else { ucs4string.append (decoded); } i++; continue; } if ((in[i] & 0xf0)==0xe0 && isize-i > 2 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80) { decoded = (((unsigned short) (in[i] & 0x0f)) << 12) | (((unsigned short) (in[i+1] & 0x3f))<<6) | ((unsigned short) (in[i+2] & 0x3f)); if (decoded < 0x800) { quoteIllegalUCS4 (in[i]); quoteIllegalUCS4 (in[i+1]); quoteIllegalUCS4 (in[i+2]); } else if (!surrogate && decoded >= 0xd800 && decoded <= 0xdfff) { quoteIllegalUCS4 (in[i]); quoteIllegalUCS4 (in[i+1]); quoteIllegalUCS4 (in[i+2]); } else { ucs4string.append (decoded); } i++; i++; continue; } if ((in[i] & 0xf8)==0xf0 && isize-i > 3 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x07)) << 18) | (((unsigned int) (in[i+1] & 0x3f))<<12) | (((unsigned short)(in[i+2] & 0x3f))<<6) | ((unsigned short) (in[i+3] & 0x3f)); if (decoded < 0x10000) { quoteIllegalUCS4 (in[i]); quoteIllegalUCS4 (in[i+1]); quoteIllegalUCS4 (in[i+2]); quoteIllegalUCS4 (in[i+3]); } else { ucs4string.append (decoded); } i++; i++; i++; continue; } if ((in[i] & 0xfc)==0xf8 && isize-i > 4 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80 && (in[i+4] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x03)) << 24) | (((unsigned int) (in[i+1] & 0x3f)) << 18) | (((unsigned int) (in[i+2] & 0x3f))<<12) | (((unsigned short) (in[i+3] & 0x3f))<<6) | ((unsigned short) (in[i+4] & 0x3f)); if (decoded < 0x200000) { quoteIllegalUCS4 (in[i]); quoteIllegalUCS4 (in[i+1]); quoteIllegalUCS4 (in[i+2]); quoteIllegalUCS4 (in[i+3]); quoteIllegalUCS4 (in[i+4]); } else { ucs4string.append (decoded); } i++; i++; i++; i++; continue; } if ((in[i] & 0xfe)==0xfc && isize-i > 5 && (in[i+1] & 0xc0)==0x80 && (in[i+2] & 0xc0)==0x80 && (in[i+3] & 0xc0)==0x80 && (in[i+4] & 0xc0)==0x80 && (in[i+5] & 0xc0)==0x80) { decoded = (((unsigned int) (in[i] & 0x01)) << 30) | (((unsigned int) (in[i+1] & 0x3f)) << 24) | (((unsigned int) (in[i+2] & 0x3f)) << 18) | (((unsigned int) (in[i+3] & 0x3f))<<12) | (((unsigned short)(in[i+4] & 0x3f))<<6) | ((unsigned short) (in[i+5] & 0x3f)); if (decoded < 0x4000000) { quoteIllegalUCS4 (in[i]); quoteIllegalUCS4 (in[i+1]); quoteIllegalUCS4 (in[i+2]); quoteIllegalUCS4 (in[i+3]); quoteIllegalUCS4 (in[i+4]); quoteIllegalUCS4 (in[i+5]); } else { ucs4string.append (decoded); } i++; i++; i++; i++; i++; continue; } if (in[i] >= 0x80) { quoteIllegalUCS4 (in[i]); continue; } // we translate broken utf8 into ucs2 also... ucs4string.append ((SS_UCS4) in[i]); } return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SB_UTF8::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SB_UTF8::delimiters (const SString& sample) { return sampleDelimiters; } ./stoolkit/sencoder/SBEncoder.cpp0000644000175000017500000002275310434025610017023 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/sencoder/SBEncoder.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * This is a sample (base) implementation of the core encoding class * This contains a quoting mechanism where things that can not be * converted are converted into 9fffffxx * @author: Gaspar Sinai * @version: 2000-05-12 */ SBEncoder::SBEncoder(const SStringVector& delim) : sampleDelimiters(delim) { realDelimiters = sampleDelimiters; } SBEncoder::~SBEncoder () { } void SBEncoder::clear() { remaining.clear(); } static char _HEXMAP[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}; static char _hexmap[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; /** * Convert illegal byte to a SD_AS_LITERAL */ void SBEncoder::quoteIllegalUCS4 (unsigned char in) { ucs4string.append ((SS_UCS4) 0x9fffff00 | (SS_UCS4) in); } /** * append '=XX' hex quoted input to ucs4string */ void SBEncoder::quoteUCS4 (unsigned char in) { ucs4string.append ((SS_UCS4) '='); ucs4string.append ((SS_UCS4) _HEXMAP[((unsigned int) in >> 4) & 0xf]); ucs4string.append ((SS_UCS4) _HEXMAP[(unsigned int) in & 0xf]); } /** * append '\uxxxx' hex quoted input to ucs4string */ void SBEncoder::quoteUCS4 (SS_UCS2 in) { ucs4string.append ((SS_UCS4) '\\'); ucs4string.append ((SS_UCS4) 'u'); ucs4string.append ((SS_UCS4) _hexmap[(in>>12)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>8)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>4)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[in&0xf]); } void SBEncoder::quoteUCS4 (SS_UCS4 in) { ucs4string.append ((SS_UCS4) '\\'); ucs4string.append ((SS_UCS4) 'U'); ucs4string.append ((SS_UCS4) _hexmap[(in>>28)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>24)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>20)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>16)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>12)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>8)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[(in>>4)&0xf]); ucs4string.append ((SS_UCS4) _hexmap[in&0xf]); } /** * append '\uxxxx' hex quoted input to ucs4string */ void SBEncoder::quoteIllegalString (SS_UCS4 in) { if (in < 0x10000) { sstring.append ((char) '\\'); sstring.append ((char) 'u'); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) _hexmap[in&0xf]); } else if ((in & 0x9fffff00) == 0x9fffff00) { sstring.append ((char)( in & 0xff)); } else { sstring.append ((char) '\\'); sstring.append ((char) 'U'); sstring.append ((char) _hexmap[(in>>28)&0xf]); sstring.append ((char) _hexmap[(in>>24)&0xf]); sstring.append ((char) _hexmap[(in>>20)&0xf]); sstring.append ((char) _hexmap[(in>>16)&0xf]); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) _hexmap[in&0xf]); } } /** * append '\uxxxx' hex quoted input to ucs4string */ void SBEncoder::quoteString (SS_UCS4 in) { if (in < 0x10000) { sstring.append ((char) '\\'); sstring.append ((char) 'u'); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) _hexmap[in&0xf]); } else if ((in & 0x9fffff00) == 0x9fffff00) { sstring.append ((char) '='); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) _hexmap[in&0xf]); } else { sstring.append ((char) '\\'); sstring.append ((char) 'U'); sstring.append ((char) _hexmap[(in>>28)&0xf]); sstring.append ((char) _hexmap[(in>>24)&0xf]); sstring.append ((char) _hexmap[(in>>20)&0xf]); sstring.append ((char) _hexmap[(in>>16)&0xf]); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) _hexmap[in&0xf]); } } void SBEncoder::quoteStringLE (SS_UCS4 in) { if (in < 0x10000) { sstring.append ((char) 0); sstring.append ((char) '\\'); sstring.append ((char) 0); sstring.append ((char) 'u'); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[in&0xf]); } else if ((in & 0x9fffff00) == 0x9fffff00) { sstring.append ((char) 0); sstring.append ((char) '='); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[in&0xf]); } else { sstring.append ((char) 0); sstring.append ((char) '\\'); sstring.append ((char) 0); sstring.append ((char) 'U'); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>28)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>24)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>20)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>16)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[in&0xf]); } } void SBEncoder::quoteStringBE (SS_UCS4 in) { if (in < 0x10000) { sstring.append ((char) '\\'); sstring.append ((char) 0); sstring.append ((char) 'u'); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[in&0xf]); sstring.append ((char) 0); } else if ((in & 0x9fffff00) == 0x9fffff00) { sstring.append ((char) '='); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[in&0xf]); sstring.append ((char) 0); } else { sstring.append ((char) '\\'); sstring.append ((char) 0); sstring.append ((char) 'U'); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>28)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>24)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>20)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>16)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>12)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>8)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[(in>>4)&0xf]); sstring.append ((char) 0); sstring.append ((char) _hexmap[in&0xf]); sstring.append ((char) 0); } } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SBEncoder::encode (const SV_UCS4& input) { return sstring; } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SBEncoder::decode (const SString& input) { return ucs4string; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SBEncoder::delimiters () { return realDelimiters; } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an exact list */ const SStringVector& SBEncoder::delimiters (const SString& sample) { return sampleDelimiters; } /* for non-clustering it is remainder */ SString SBEncoder::preEditBuffer() const { return SString(); } /* for clustering */ SV_UCS4 SBEncoder::postEditBuffer () const { return SV_UCS4(); } /** * return key value map to see what decodes to what * @param key will contain the keys * @param value will contain the values * @param _size is the maximum size of returned arrays * @return the real size of the arrays. */ unsigned int SBEncoder::getDecoderMap (SStringVector* key, SStringVector* value, unsigned int _size) { key->clear(); value->clear(); return 0; } ./stoolkit/sencoder/SB_UTF7.h0000644000175000017500000000262710434025610015773 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_UTF7_h #define SB_UTF7_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is the uniconde 7 bit transformation format. 'could' be used in * email. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_UTF7 : SBEncoder { public: SB_UTF7 (void); virtual ~SB_UTF7 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); }; #endif /* SB_UTF7_h */ ./stoolkit/sencoder/SB_X11_KSC.h0000644000175000017500000000277110434025610016317 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_X11_KSC_h #define SB_X11_KSC_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * Korean compound text fonverter (X11) * KSC 5601 1987 Korea * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_X11_KSC : SBEncoder { public: SB_X11_KSC (); virtual ~SB_X11_KSC (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap ksc_5601_r; bool ok; }; #endif /* SB_X11_KSC_h */ ./stoolkit/sencoder/SB_S_JIS0213.h0000644000175000017500000000301010434025610016446 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SB_S_JIS0213_h #define SB_S_JIS0213_h #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/sencoder/SBEncoder.h" /** * This is the shift-jis converter for Japanese. Used mainly in PCs * @author: Gaspar Sinai * @version: 2000-05-12 */ class SB_S_JIS0213 : SBEncoder { public: SB_S_JIS0213 (); virtual ~SB_S_JIS0213 (); virtual const SString& encode (const SV_UCS4& input); virtual const SV_UCS4& decode (const SString& input); virtual const SStringVector& delimiters (); virtual const SStringVector& delimiters (const SString& sample); bool isOK() const; protected: SUniMap sjis0213; bool ok; }; #endif /* SB_S_JIS0213_h */ ./stoolkit/SCursorIndex.h0000644000175000017500000000301710434025606015447 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SCursorIndex_h #define SCursorIndex_h #include "stoolkit/STextIndex.h" class SCursorIndex { public: SCursorIndex (void); SCursorIndex (int x, int y, bool before=true); SCursorIndex (const SCursorIndex& d); SCursorIndex operator = (const SCursorIndex& d); inline bool operator == (const SCursorIndex& d) const; inline bool operator != (const SCursorIndex& d) const; ~SCursorIndex (); STextIndex getTextIndex() const; STextIndex textIndex; bool before; /* logical */ }; bool SCursorIndex::operator == (const SCursorIndex& d) const { return (textIndex == d.textIndex && before == d.before); } bool SCursorIndex::operator != (const SCursorIndex& d) const { return (textIndex != d.textIndex || before != d.before); } #endif /* SCursorIndex_h */ ./stoolkit/SBiDi.cpp0000644000175000017500000001765410434025610014353 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** * I collected most of the Unicode Implicit bidi * algortihm in this class, so it will be easier * to throw it away. */ #include "stoolkit/SBiDi.h" /** * This is the segment, that can independently resolve types. */ SBiDiSegment::SBiDiSegment (SD_BiDiClass* _classes) { classes = _classes; from = 0; till = 0; sor = true; eor = true; } SBiDiSegment::~SBiDiSegment() { } static bool debugFlag = false; /** * This will resolve the weak and the neutral types. * FIXME: This is the only thing that is not yet finished. */ void SBiDiSegment::resolveWeakNeutral() { unsigned int i; unsigned int j; SD_BiDiClass first = sor ? SD_BC_L : SD_BC_R; SD_BiDiClass last = eor ? SD_BC_L : SD_BC_R; if (debugFlag) { fprintf (stderr, "RES from=%u till=%u sor=%d eor=%d level=%u\n", from, till, (int)sor, (int)eor, level); } /* W1 */ SD_BiDiClass curr = first; for (i=from; i0; j--) { SD_BiDiClass c = classes[j-1]; if (c==SD_BC_L || c==SD_BC_R || c==SD_BC_AL) { if (c==SD_BC_AL) classes[i] = SD_BC_AN; break; } } // first is never AL, it is either L or R //if (j==0) classes[i] = first; } } /* W3 */ for (i=from; i0; j--) { SD_BiDiClass c = classes[j-1]; if (c==SD_BC_L || c==SD_BC_R) { if (c==SD_BC_L) classes[i] = SD_BC_L; break; } } if (j==0 && first==SD_BC_L) classes[i] = first; } } /* Resolving Neutral Types */ /* Neutral is non: R L AN EN */ /* N1 */ curr = first; for (i=from; isor = (initLevel%2) == 0; lastSegment->level = lastLevel; lastSize = 0; } SBiDi::~SBiDi () { delete classes; for (unsigned int i=0; itill = lastSize; lastLevel = embedLevel; return; } /* change of level at the beginning */ if (lastSegment->till==0) { lastSegment->sor = (lastLevel>embedLevel) ? ((lastLevel %2)==0) : ((embedLevel%2)==0); lastSegment->till = lastSize; lastSegment->level = lastLevel; lastLevel = embedLevel; return; } /* finish old segment */ lastSegment->eor = (lastLevel>embedLevel) ? ((lastLevel %2)==0) : ((embedLevel%2)==0); lastSegment->till = lastSize-1; /* sorry last one does not belong to us */ segments.append (lastSegment); /* new segment needed */ bool sor = (lastLevel>embedLevel) ? ((lastLevel %2)==0) : ((embedLevel%2)==0); lastLevel = embedLevel; lastSegment = new SBiDiSegment(classes); CHECK_NEW (lastSegment); lastSegment->sor = sor; /* we incremented lastSize at the beginning */ lastSegment->from = lastSize-1; lastSegment->till = lastSize; lastSegment->level = embedLevel; } void SBiDi::resolveWeakNeutral() { if (lastSize == 0) return; if (lastSegment) { lastSegment->eor = (lastLevel>initLevel) ? ((lastLevel %2)==0) : ((initLevel%2)==0); segments.append (lastSegment); /* This is how I debug */ if (segments.size()>1) { // debugFlag = true; } lastSegment = 0; } for (unsigned int i=0; iresolveWeakNeutral(); } if (segments.size()>1) debugFlag = false; } void SBiDi::insertBN (unsigned int at) { /* move up */ for (unsigned int i=lastSize; i>at; i--) { classes[i] = classes[i-1]; } lastSize++; //classes[at] = SD_BC_BN; /* make this stupid BN the type of the previous char */ /* The standard does not require any particular placement */ if (at == 0) { classes[at] = ((initLevel%2) == 0) ? SD_BC_L : SD_BC_R; return; } /* be the previous. */ classes[at] = classes[at-1]; } ./stoolkit/SProperties.h0000644000175000017500000000276710434025606015351 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SProperties_h #define SProperties_h #include "SHashtable.h" #include /** * @author: Gaspar Sinai * @version: 2000-04-23 */ /** * We make the SBinHashtable private so that nobody can screw with * The autodelete. */ class SProperties : public SHashtable { public: SProperties (void); SProperties (const SString& string); SProperties (const SProperties& base); virtual ~SProperties (); virtual SObject* clone() const; SString& split (const SString& s, const SString& delimiters); void merge (const SProperties& other); SString toString() const; SString getProperty (const SString& prop, const SString& fallback) const; }; // Debug void test_SProperties(); #endif /* SProperties _h*/ ./stoolkit/SStringVector.cpp0000644000175000017500000001714610434025610016171 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SStringVector.h" #include SStringVector::SStringVector (void) : SVector() { } SStringVector::SStringVector (const SStringVector& base) : SVector(base) { } /** * Do a split on base using delim. * empty elements are not put in the resulting vector */ SStringVector::SStringVector (const SString& base, const SString& delim, bool once) : SVector() { split(base, delim, once); } SStringVector::SStringVector (const SString& base) : SVector() { split(base, ","); } SStringVector::SStringVector (const char* base) : SVector() { split(base, ","); } SObject* SStringVector::clone() const { return new SStringVector (*this); } SStringVector::~SStringVector () { } /** * split a string into an array * @param s is the string to split * @param delim is the delimiter list * @param once is true if we quit after one spli * retgurn the number of splits */ unsigned int SStringVector::split (const SString& s, const SString& delim, bool once) { derefer (); char* excl = new char[256]; memset (excl, 0, 256); unsigned int dsize = delim.size(); for (unsigned int d=0; dfind (*peek(i)); if (found<0) continue; if (found < less || where ==-1) { less = found; where = i; } } if (where >= 0) { s->truncate (less); return where; } return -1; } SString SStringVector::join(const SString& delimiter) const { SString str; for (unsigned int i=0; i left) { pivot = (right+left)/2; mid= pivot; // Make a partition while (true) { // We compare everything to the pivot while (i= 0) i++; while (j>left && (compare (indeces, j, mid) * asc) < 0) j--; // Left index reached right index if (i>=j) break; // swap - it may swap the pivot as well. if (i==mid) mid=j; else if (j==mid) mid =i; // Swap unsigned int o = indeces[(unsigned int)i]; indeces[(unsigned int)i] = indeces[(unsigned int)j]; indeces[(unsigned int)j] = o; } // Make sure we don't sort the pivot - originally it is // in the left array so we exchange it with something // that belongs to left and lies in the boundary. // It might be the pivot itself... unsigned int o = indeces[(unsigned int)mid]; indeces[(unsigned int)mid] = indeces[(unsigned int)j]; indeces[(unsigned int)j] = o; sort (indeces, ascending, left, j-1); sort (indeces, ascending, i, right); } } /** * compare addresed trhough indeces. */ int SStringVector::compare (unsigned int* indeces, int i1, int i2) { const SString& js = *peek (indeces[(unsigned int) i1]); const SString& ms = *peek (indeces[(unsigned int) i2]); return js.compare(ms); } void SStringVector::append (const SStringVector& v) { unsigned int sz = v.size(); for (unsigned int i=0; i::append (str); } void SStringVector::append (const char* str) { SVector::append (SString(str)); } ./stoolkit/SConfig.cpp0000644000175000017500000001315210434025610014736 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SConfig.h" #include "SIOStream.h" #include /** *---------------------------------------------------------------------------- * This file is absolete. 2001-01-12 *---------------------------------------------------------------------------- * @author: Gaspar Sinai * @version: 2000-04-23 */ /** * A config file consists of sections in brackets * [section first section] * Inside a section (below the [] thingy: * key 1=value 1 * key 2=value 2 * key-value pairs are * Sections starting with '#' are comments. */ #ifdef USE_WINAPI SString SLineSep("\r\n"); #else SString SLineSep("\n"); #endif SConfig::SConfig (const SFile& config) : file (config) { } SConfig::SConfig (const SConfig& config) : file (config.file) { sectHashtable = config.sectHashtable; } SConfig& SConfig::operator = (const SConfig& config) { file = config.file; sectHashtable = config.sectHashtable; return *this; } void SConfig::setFile(const SFile& newFile) { file = newFile; } SConfig::~SConfig() { } /** * Write out the config in the file. * @return false on error. */ bool SConfig::write() { SInputStream o = file.getOutputStream(); if (!o.isOK()) return false; SWriter w(o); SStringVector sections = keys(); SString banner; banner << "# Property file fo Yudit" << SLineSep; w.write (banner); for (unsigned int i=0; i /** * We make the SBinVector private so that nobody can screw with * The autodelete. */ class SStringVector : public SVector { public: SStringVector (void); SStringVector (const SStringVector& base); SStringVector (const SString& base); SStringVector (const char* base); SStringVector (const SString& base, const SString& delim, bool once=false); virtual SObject* clone() const; virtual ~SStringVector (); /* Split a sting and add it to the list */ unsigned int split (const SString& s, const SString& delimiters, bool once=false); void sort(bool ascending=true); /* splits and leave \" marked text untact */ unsigned int smartSplit (const SString& s); int trim(SString* in) const; SString join(const SString& delimiter) const; void append (const SStringVector& v); void append (const SString& str); void append (const char* str); private: void sort(unsigned int* indeces, bool ascending, int left, int right); int compare (unsigned int* indeces, int i1, int i2); }; #endif /* SStringVector _h*/ ./stoolkit/SProperties.cpp0000644000175000017500000001366110434025610015672 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SProperties.h" #include "SExcept.h" #include #include SProperties::SProperties (void) : SHashtable() { } SProperties::SProperties (const SString& string) { /* split into lines */ SStringVector delimiters("\r\n,\n,\r", ","); SString current; unsigned int dsize = delimiters.size(); unsigned int ssize = string.size(); int found = (int) string.size(); unsigned int di=0; unsigned int from=0; SString comment; while (ssize > from) { /* This is just a splitting rourtine. We can not use the Vector's split because that purges empty lines. */ for (di=0; di=0) break; } SString s = (di < dsize) ? SString (&string.array()[from], (unsigned int)found - from) : SString (&string.array()[from], string.size() - from); from = (di < dsize) ? (unsigned int) found + delimiters[di].size() : string.size(); if (s.size()>0 && s[0] == '#') { /* only pre-ceeding. */ if (current.size()==0) { /* last line is not null terminated. */ if (comment.size()) { comment.append ("\n"); } comment.append (s); continue; } s.clear(); } if (s.size()>0 && s[s.size()-1] == '\\') { s.truncate (s.size()-1); current.append (s); continue; } current.append (s); bool white = true; for (unsigned j=0; j(base) { } SProperties::~SProperties () { } SString SProperties::toString() const { SStringVector keys; for (unsigned int i=0; i 1 && k[k.size()-2]== '.' && k[k.size()-1] == '#') { continue; } keys.append (k); } } /* sort them */ keys.sort(); SStringVector ret; for (unsigned int k=0; ksize() > 0) { ret.append (*comment); } SString line (key); line.append ("="); line.append (*value); ret.append (line); } return ret.join ("\n"); } SObject* SProperties::clone() const { SProperties* p = new SProperties (*this); CHECK_NEW(p); return p; } /** * split a string into an array * @param s is the string to split * @param delim is the delimiter list * @param once is true if we quit after one spli * retgurn the key or SStringNull. returnning key is not yet implemented */ SString& SProperties::split (const SString& s, const SString& delim) { int start = 0; unsigned int count =0; /* Find the first delim. */ SString mykey; while (start < (int) s.size()) { int current; int smallest = s.size(); for (unsigned int i=0; i= (int) s.size()) break; mykey = SString(s.array(), start, smallest-start); SString value = SString(s.array(), smallest+1, (int)s.size()-smallest-1); count += 2; put (mykey, value); break; } start = (smallest+1); } //return (count==2) ? *new SString(mykey) : SStringNull; // Just aint working yet... return SStringNull; } /** * merge the other property into this property */ void SProperties::merge (const SProperties& other) { for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SCursorIndex.h" SCursorIndex::SCursorIndex (void) { before = true; } SCursorIndex::SCursorIndex (int x, int y, bool _before) : textIndex (x, y) { before = _before; } SCursorIndex::SCursorIndex (const SCursorIndex& d) { textIndex = d.textIndex; before = d.before; } SCursorIndex SCursorIndex::operator = (const SCursorIndex& d) { textIndex = d.textIndex; before = d.before; return *this; } SCursorIndex::~SCursorIndex () { } /** * return the textindex calculated from * this object using the before flag. */ STextIndex SCursorIndex::getTextIndex() const { if (before) { return STextIndex(textIndex.line, textIndex.index); } return STextIndex(textIndex.line, textIndex.index+1); } ./stoolkit/syntax/0000755000175000017500000000000011334661073014237 5ustar henrichhenrich./stoolkit/syntax/SMatcher.h0000644000175000017500000000350010725516655016124 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SMatcher_h #define SMatcher_h #include "stoolkit/syntax/SMatcherIterator.h" #include "stoolkit/syntax/SPattern.h" class SMatcherAction { public: SMatcherAction (void) {} virtual ~SMatcherAction () {} /* * from is the staring character index, till is the ending character index */ virtual void applyAction (const SString& name, unsigned int from, unsigned int till) = 0; }; /** * A regular expression matcher. * @author Gaspar Sinai * @version 2007-11-27 */ class SMatcher { public: SMatcher (SPattern& pattern, SMatcherIterator& it); // This will return SD_MATCH_EOD on end // This class is not yet ready, it just provides some // sample implementation. // if unitWork is true SD_MATCH_AGAIN can be returned after // one character is read or one unit work is performed. unsigned int find (bool unitWork=false); /* actions will be applied in order */ void applyActions (SMatcherAction& action); private: SPattern& pattern; SMatcherIterator& iterator; unsigned int start; bool eod; }; #endif /* SMatcher_h */ ./stoolkit/syntax/SMatcherIterator.h0000644000175000017500000000210610724456376017641 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SMatcherIterator_h #define SMatcherIterator_h class SMatcherIterator { public: SMatcherIterator (void) {} virtual ~SMatcherIterator () {} // Lets try with this. If this does not work out we change the // interface to random access. virtual int getNextCharacter ()=0; }; #endif /* SMatcherIterator_h */ ./stoolkit/syntax/SHunspellPattern.cpp0000644000175000017500000005121011334167400020210 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/syntax/SHunspellPattern.h" #include "stoolkit/SIO.h" #include "stoolkit/SCharClass.h" #ifdef USE_WINAPI #include #else #include #include #include #endif static void fixFileName (SString& str); static void convertRovasiras (const SV_UCS4& in, SV_UCS4& out); static void fixFileName (SString& str) { #ifdef USE_WINAPI str.replaceAll ("/", "\\"); if (str.size() > 0 && str[0] == '\\') str.remove (0); #endif } static void* dynHandle = 0; SHunspellPattern::SHunspellPattern (const SString& _name, const SStringVector& path) { name = _name; SString ps_dic = name; ps_dic.append (".dic"); SFile fdic (ps_dic, path); if (fdic.size() < 0) { valid = false; } else { dicFile = fdic.getName (); fixFileName (dicFile); } SString ps_aff = name; ps_aff.append (".aff"); SFile faff (ps_aff, path); if (faff.size() < 0) { valid = false; } else { affFile = faff.getName (); fixFileName (affFile); } dicFile.append ((char)0); affFile.append ((char)0); SString mising = loadLibrary (path); hunspell = 0; functions.create = 0; functions.spell = 0; functions.destroy = 0; functions.get_dic_encoding = 0; entryEncoder = 0; if (dynHandle) { #ifdef USE_WINAPI functions.create = (void* (*)(const char*, const char*)) GetProcAddress((HMODULE)dynHandle, "hunspell_initialize"); functions.spell = (int (*)(void*, const char*)) GetProcAddress((HMODULE)dynHandle, "hunspell_spell"); functions.destroy = (int (*)(void*)) GetProcAddress((HMODULE)dynHandle, "hunspell_uninitialize"); functions.get_dic_encoding = (char* (*)(void*)) GetProcAddress((HMODULE)dynHandle, "hunspell_get_dic_encoding"); #else functions.create = (void* (*)(const char*, const char*)) dlsym(dynHandle, "Hunspell_create"); functions.spell = (int (*)(void*, const char*)) dlsym(dynHandle, "Hunspell_spell"); functions.destroy = (int (*)(void*)) dlsym(dynHandle, "Hunspell_destroy"); functions.get_dic_encoding = (char* (*)(void*)) dlsym(dynHandle, "Hunspell_get_dic_encoding"); #endif if (functions.create && functions.spell && functions.destroy && functions.get_dic_encoding) { hunspell = (*functions.create)(affFile.array (), dicFile.array ()); valid = (hunspell != 0); } else { fprintf (stderr, "hunspell: can not get function handles. create=%d spell=%d destroy=%d get_dic_encoding=%d\n", (int)(functions.create!=0), (int)(functions.spell!=0), (int)(functions.destroy!=0), (int)(functions.get_dic_encoding!=0) ); functions.create = 0; functions.spell = 0; functions.destroy = 0; functions.get_dic_encoding = 0; valid = false; } } else { valid = false; } if (valid) { char* enc = (*functions.get_dic_encoding)(hunspell); // Get at least the ISO set that comes with Yudit. if (enc == 0) { entryEncoder = new SEncoder ("utf-8"); } else if (strcmp (enc, "UTF-8") == 0) { entryEncoder = new SEncoder ("utf-8"); } else if (strcmp (enc, "ISO8859-1") == 0) { entryEncoder = new SEncoder ("iso-8859-1"); } else if (strcmp (enc, "ISO8859-2") == 0) { entryEncoder = new SEncoder ("iso-8859-2"); } else if (strcmp (enc, "ISO8859-3") == 0) { entryEncoder = new SEncoder ("iso-8859-3"); } else if (strcmp (enc, "ISO8859-4") == 0) { entryEncoder = new SEncoder ("iso-8859-4"); } else if (strcmp (enc, "ISO8859-5") == 0) { entryEncoder = new SEncoder ("iso-8859-5"); } else if (strcmp (enc, "ISO8859-6") == 0) { entryEncoder = new SEncoder ("iso-8859-6"); } else if (strcmp (enc, "ISO8859-7") == 0) { entryEncoder = new SEncoder ("iso-8859-7"); } else if (strcmp (enc, "ISO8859-8") == 0) { entryEncoder = new SEncoder ("iso-8859-8"); } else if (strcmp (enc, "ISO8859-9") == 0) { entryEncoder = new SEncoder ("iso-8859-9"); } else if (strcmp (enc, "ISO8859-13") == 0) { entryEncoder = new SEncoder ("iso-8859-13"); } else if (strcmp (enc, "ISO8859-15") == 0) { entryEncoder = new SEncoder ("iso-8859-15"); } else if (strcmp (enc, "ISO8859-16") == 0) { entryEncoder = new SEncoder ("iso-8859-16"); } else if (strcmp (enc, "KOI8-R") == 0) { entryEncoder = new SEncoder ("koi8-r"); } else { fprintf (stderr, "Need hunspell encoder for %s\n", enc); entryEncoder = new SEncoder ("utf-8"); } } } SHunspellPattern::~SHunspellPattern () { if (functions.destroy && hunspell) { (*functions.destroy) (hunspell); } if (entryEncoder) delete entryEncoder; } SString SHunspellPattern::loadLibrary (const SStringVector& path) { if (dynHandle == 0) { SString libFile; #ifdef USE_WINAPI libFile = "libhunspell.dll"; #else #ifdef __APPLE__ libFile = "libhunspell.dylib"; #else libFile = "libhunspell.so"; #endif #endif SString ret = libFile; SFile flib (libFile, path); if (flib.size() > 0) { libFile = flib.getName(); fixFileName (libFile); } libFile.append ((char)0); #ifdef USE_WINAPI SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString res = u16.encode (u8.decode (libFile)); WCHAR* filenameW = (WCHAR *) res.array(); dynHandle = LoadLibraryW (filenameW); if (!dynHandle) { dynHandle = LoadLibraryA (libFile.array()); if (!dynHandle) return SString(ret); } #else dynHandle = dlopen (libFile.array(), RTLD_LAZY); if (!dynHandle) { return SString(ret); } #endif return SString (); } return SString (); } SString SHunspellPattern::getFolderFor (const SString& name, const SStringVector& path) { for (unsigned int i=0; i 0) return SString (path[i]); } return SString (""); } // Return a non "" string in case there are some missing files SString SHunspellPattern::getMissingFile (const SString& name, const SStringVector& path) { SString missLib = loadLibrary (path); if (missLib != "") return SString (missLib); if (name == "") { return SString ("*.dic *.aff"); } for (unsigned int i=0; i 0) { SString f_aff = path[i]; f_aff.append ("/"); f_aff.append (name); f_aff.append (".aff"); SFile file_aff (f_aff); if (file_aff.size() > 0) return (SString ("")); f_aff = name; f_aff.append (".aff"); return (SString (f_aff)); } } SString ret = name; ret.append (".dic"); return SString (ret); } // This method updates matchBegin and matchEnd (exclusive) // variables in case of a match, in case of no match, this // will not be touched. Action will contain that action string. bool SHunspellPattern::checkMatch () { if (current.size() == 0) return false; if (current.size() == 1) return false; // get the controls out first SS_UCS4 chr = current[0]; if (isNumber (chr)) { action = ACT_NUMBER; matchBegin = matchEnd; matchEnd++; current.remove (0); return true; } if (isSeparator (chr) || chr == (SS_UCS4) '-') { action = ACT_CONTROL; matchBegin = matchEnd; matchEnd++; current.remove (0); return true; } if (isJapanese (chr)) { action = ACT_NONE; matchBegin = matchEnd; matchEnd++; current.remove (0); return true; } unsigned int i; for (i=0; iencode (v1); str.append ((char) 0); /* fprintf (stderr, "call %08lx %08lx %s\n", (unsigned long) functions.spell, (unsigned long) hunspell, str.array()); */ if ((*functions.spell)(hunspell, str.array())==0) { action = ACT_ERROR; } return true; } // There is no spell checking for japanese/chinese bool SHunspellPattern::isJapanese (SS_UCS4 chr) const { if (chr==SD_CD_ZWJ) return false; if (chr==SD_CD_ZWNJ) return false; SD_CharClass cc = getCharClass (chr); if (cc == SD_CC_Mn || cc == SD_CC_Me) return false; // CJK Symbols and Punctuation if (chr >= 0x3000 && chr <=0x303f) return true; // Hiragana if (chr >= 0x3040 && chr <=0x309f) return true; // Katakana if (chr >= 0x30A0 && chr <=0x30ff) return true; // if (chr >= 0x31c0 && chr <=0x9fff) return true; // Japanes fullwidth alphabet if (chr >= 0xff21 && chr <=0xff5a) return false; // Halfwidth and Fullwidth Forms if (chr >= 0xff00 && chr <=0xffef) return true; // CJK Compatibility Ideographs if (chr >= 0xf900 && chr <=0xfaff) return true; // CJK Unified Ideographs Extension B if (chr >= 0x20000 && chr <=0x2A6DF) return true; // CJK Compatibility Ideographs Supplement if (chr >= 0x2F800 && chr <=0x2FA1F) return true; return false; } // This includes numbers bool SHunspellPattern::isSeparator (SS_UCS4 chr) const { if (chr == 0xEE2F) return true; // HUNGARIAN RUNIC SEPARATOR in PUA if (chr==SD_CD_ZWJ) return false; if (chr==SD_CD_ZWNJ) return false; // this can be used within the word SD_CharClass cc = getCharClass (chr); // combined if (cc == SD_CC_Mn || cc == SD_CC_Me) return false; return (chr != (SS_UCS4) '-' && cc != SD_CC_Lu && cc != SD_CC_Ll && cc != SD_CC_Lt && cc != SD_CC_Lm && cc != SD_CC_Lo); } bool SHunspellPattern::isNumber (SS_UCS4 chr) const { SD_CharClass cc = getCharClass (chr); return (cc == SD_CC_Nd || cc == SD_CC_Nl || cc == SD_CC_No); } // Convert rovasiras into standard hungarian, all caps static void convertRovasiras (const SV_UCS4& in, SV_UCS4& out) { SS_UCS4 chr; for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/syntax/SPattern.h" #include "stoolkit/SCharClass.h" /** * A sample pattern that can be extended. This pattern * now highlights the following: * * 123... number * Yuko keyword * yuko error * YUKO (kanji) define * characters none * other control * * @author Gaspar Sinai * @version 2007-11-27 */ SPattern::SPattern (void) : ACT_NONE ("none"), ACT_ERROR ("error"), ACT_NUMBER ("number"), ACT_KEYWORD ("keyword"), ACT_VARIABLE ("variable"), ACT_DEFINE ("define"), ACT_CONTROL ("control") { clear (); } SPattern::~SPattern () { } // void SPattern::clear () { action = ACT_NONE; matchBegin = SD_MATCH_EOD; matchEnd = 0; next = 0; current.clear (); } // This method will be overwritten bool SPattern::checkMatch () { return checkMatchTest(); } void SPattern::append (SS_UCS4 in) { if (next == 0) matchEnd = 0; current.append (in); next++; } // We all ignore the last character in the buffer, // that is next position, and it is non-inclusive // note that current position is next - 1, and // we dont look at current. bool SPattern::checkMatchTest () { // We are lucky, none of our staring chars are used in the other pattern. if (current.size() >= 3 && current[current.size()-3] == 0x512A // YUU && current[current.size()-2] == 0x5B50) // KO { if (singleMatchTest (3)) return true; current.remove(0); current.remove(0); matchBegin = next-1-2; matchEnd = next-1; action = ACT_DEFINE; return true; } else if (current.size() >= 2 && current[current.size()-2] == (SS_UCS4)'\n') // YUU { if (singleMatchTest (2)) return true; current.remove(0); matchBegin = next-1-1; matchEnd = next-1; action = ACT_CONTROL; return true; } else if (current.size() >= 5 && current[current.size()-5] == (SS_UCS4)'y' && current[current.size()-4] == (SS_UCS4)'u' && current[current.size()-3] == (SS_UCS4)'k' && current[current.size()-2] == (SS_UCS4)'o') { if (singleMatchTest (5)) return true; current.remove(0); current.remove(0); current.remove(0); current.remove(0); matchBegin = next-1-4; matchEnd = next-1; action = ACT_ERROR; return true; } else if (current.size() >= 5 && current[current.size()-5] == (SS_UCS4)'Y' && current[current.size()-4] == (SS_UCS4)'u' && current[current.size()-3] == (SS_UCS4)'k' && current[current.size()-2] == (SS_UCS4)'o') { if (singleMatchTest (5)) return true; current.remove(0); current.remove(0); current.remove(0); current.remove(0); matchBegin = next-1-4; matchEnd = next-1; action = ACT_KEYWORD; return true; } bool isEOD = current.size() > 0 && current[current.size()-1] == SD_MATCH_EOD; return singleMatchTest (isEOD ? 1: 5); } // match current[0] and remove it. bool SPattern::singleMatchTest (unsigned int leaveSize) { if (current.size() > leaveSize) { matchBegin = matchEnd; matchEnd++; action = ACT_NONE; SD_CharClass cc = getCharClass (current[0]); switch (cc) { // letter case SD_CC_Lu: case SD_CC_Ll: case SD_CC_Lt: case SD_CC_Lm: case SD_CC_Lo: current.remove (0); if (!singleMatchTest (leaveSize)) { return false; } return true; case SD_CC_Nd: case SD_CC_Nl: case SD_CC_No: action = ACT_NUMBER; break; default: action = ACT_CONTROL; } current.remove (0); return true; } return false; } ./stoolkit/syntax/SSyntaxMarker.cpp0000644000175000017500000002055210725531453017523 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/syntax/SSyntaxMarker.h" #include "stoolkit/syntax/SSyntax.h" /** * The _textData and _lines arrays should be in sync, they * should have the same sizes. * @param _around is around which we should mark unmarked in our buffer. */ SSyntaxMarker::SSyntaxMarker (SSyntaxData& _lines, const SUnicodeData& _ulines, const STextIndex& _around) : syntaxLines (_lines), dataLines (_ulines) { STextIndex first = _around; // look backwards for a sync if (decrement(&first)) while ((getSyntaxAt (first) & SGC_BEGIN_MARK) == 0) { if (!decrement(&first)) break; } // hack, commment this out if you have a proper parser. // FIXME FIXME //first = STextIndex (0,0); // fprintf (stderr, "SGC syntax started around=%u,%u found=%u,%u\n", // _around.line, _around.index, first.line, first.index); startIndex = first; unsigned int firstLineSize = getLineSize (startIndex.line) - startIndex.index; // linesizes always contains 1 more lines than real lines. lineSizes.append (0); lineSizes.append (firstLineSize); /* fprintf (stderr, "firstLineSize=%u getLineSize=%u\n", firstLineSize, getLineSize (startIndex.line)); */ isStarted = true; actionMap.put ("none", ((int) SSyntax::SD_NONE) << 8); actionMap.put ("error", ((int) SSyntax::SD_ERROR) << 8); actionMap.put ("number", ((int) SSyntax::SD_NUMBER) << 8); actionMap.put ("string", ((int) SSyntax::SD_STRING) << 8); actionMap.put ("comment", ((int) SSyntax::SD_COMMENT) << 8); actionMap.put ("keyword", ((int) SSyntax::SD_KEYWORD) << 8); actionMap.put ("variable", ((int) SSyntax::SD_VARIABLE) << 8); actionMap.put ("define", ((int) SSyntax::SD_DEFINE) << 8); actionMap.put ("control", ((int) SSyntax::SD_CONTROL) << 8); } SSyntaxMarker::~SSyntaxMarker () { } /* SMatcherIterator */ // FIXME FIXME FIXME int SSyntaxMarker::getNextCharacter () { if (isStarted) { currentIndex = startIndex; isStarted = false; if (isEOD (currentIndex)) return -1; } else { if (!increment (¤tIndex)) return -1; } // lineSizes keeps track of incremental sizes. if (currentIndex.line - startIndex.line == lineSizes.size()-1) { lineSizes.append (getLineSize (currentIndex.line) + lineSizes[currentIndex.line - startIndex.line ]); } return getCharAt (currentIndex); } bool SSyntaxMarker::isEOD (const STextIndex& idx) const { if (idx.line >= dataLines.size()) return true; if (idx.index >= getLineSize(idx.line)) return true; return false; } void SSyntaxMarker::beginActionBlock () { minModified = STextIndex (dataLines.size(), 0); maxModified = STextIndex (0, 0); } /* SMatcherAction */ // Apply action from from till till exclusive // 1. Mark shadow syntax // 2. modify minModified and maxModified void SSyntaxMarker::applyAction (const SString& name, unsigned int markFrom, unsigned int markTill) { STextIndex from = position2Index (markFrom); STextIndex till = position2Index (markTill); #if DEBUG_PARSER fprintf (stderr, "applyAction %*.*s %u..%u %u.%u..%u,%u\n", SSARGS(name), markFrom, markTill, from.line, from.index, till.line, till.index); #endif if (from < minModified) { minModified = from; } if (till > maxModified) { maxModified = till; } int shadow = actionMap.get (name); while (from < till) { int old = getSyntaxAt (from); shadow = (old & 0xff) | shadow; // This will wipe out extra marks setSyntaxAt (from, shadow); if (!increment (&from)) break; } } // 1. move shadow syntax to real // 2. update minModified and maxModified // 3. update the minLimits and minLimits to know where stuff changed. void SSyntaxMarker::endActionBlock () { #if DEBUG_PARSER fprintf (stderr, "finish %u.%u..%u,%u\n", minModified.line, minModified.index, maxModified.line, maxModified.index); #endif STextIndex min = STextIndex (dataLines.size(), 0); STextIndex max = STextIndex (0, 0); STextIndex from = minModified; while (from < maxModified) { int vle = getSyntaxAt (from); int o = (vle & 0xff); int n = (vle & 0xff00) >> 8; if (o == n) { if (!increment (&from)) break; continue; } if (from < min) min = from; if (from > max) max = from; setSyntaxAt (from, n); if (!increment (&from)) break; } // multiline, scrolled editor. write yuko in Hungarian kmap // yuko is not first line. o is not error with test SPattern. // dont know why... // minModified = min; // maxModified = max; } // Increment the in index // return false if in is already at the end // For non expanded lines we generate virtual new index if // it is has a proper ending. bool SSyntaxMarker::decrement (STextIndex* in) { if (in->line == 0 && in->index==0) return false; if (in->index == 0) { in->line--; in->index = getLineSize (in->line); if (in->index==0) { #if DEBUG_PARSER fprintf (stderr, "SSyntaxMarker::decrement: empty line detected.\n"); #endif return false; } } // There can be no empty lines in the middle of the file in->index = in->index-1; return true; } // Decrement the in index // return false if in is already at the end // For non expanded lines we generate virtual new index if // it is has a proper ending. bool SSyntaxMarker::increment (STextIndex* in) { if (in->line >= dataLines.size()) return false; unsigned int ls = getLineSize (in->line); if (in->index+1 == ls) { in->line++; in->index=0; if (in->line >= dataLines.size()) return false; ls = getLineSize (in->line); if (ls == 0) return false; return true; } in->index++; if (in->index >= ls) return false; return true; } // Get character at the index. // return -1 if in is out of bounds. int SSyntaxMarker::getCharAt (const STextIndex& in) const { if (in.line >= dataLines.size()) return -1; if (in.index >= dataLines[in.line]->size()) return -1; // todo sanity check here SS_UCS4 ret = dataLines[in.line]->peek (in.index); // Paragraph separator //fprintf (stderr, "%u,%u=[%c]", in.line, in.index, (char) ret); if (ret == 0x2029) return (int) '\n'; return (int) ret; } // Get character at the index. // return -1 if in is out of bounds. int SSyntaxMarker::getSyntaxAt (const STextIndex& in) const { if (in.line >= syntaxLines.size()) return -1; if (in.index >= syntaxLines[in.line]->size()) return -1; // todo sanity check here return syntaxLines[in.line]->peek (in.index); } // Get character at the index. // return false if in is out of bounds. bool SSyntaxMarker::setSyntaxAt (const STextIndex& in, int syn) { if (in.line >= syntaxLines.size()) return false; if (in.index >= syntaxLines[in.line]->size()) return false; syntaxLines[in.line]->replace (in.index, syn); return true; } // get the line size, adjusted for non-expanded chanacters. // an extra functionality is to sync expanded lines, as // they are not always reported elsewhere. unsigned int SSyntaxMarker::getLineSize (unsigned int lineno) const { if (lineno >= dataLines.size()) return 0; // line is expaned return dataLines[lineno]->size(); } // linsizes[line] contain the accumulated number of characters // from startIndex at the end of the line. STextIndex SSyntaxMarker::position2Index (unsigned int position) { if (position < lineSizes[1]) { return STextIndex (startIndex.line, startIndex.index + position); } // This can return a bigger value unsigned int mapIndex = lineSizes.findSorted (position); if (mapIndex>=lineSizes.size()) { return STextIndex (startIndex.line+lineSizes.size()-1, 0); } while (position < lineSizes[mapIndex] && mapIndex > 0) mapIndex--; unsigned int addValue = lineSizes[mapIndex]; return STextIndex (mapIndex+startIndex.line, position-addValue); } ./stoolkit/syntax/SSyntax.cpp0000644000175000017500000003704210726716235016367 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/syntax/SSyntax.h" #include "stoolkit/syntax/SHunspellPattern.h" #include "stoolkit/syntax/SSyntaxMarker.h" #include "stoolkit/SIO.h" #include "stoolkit/SProperties.h" #include "stoolkit/SUtil.h" static SStringVector syntaxSearchPath( "/,syntax,../syntax,/etc/syntax,/usr/share/yudit/syntax"); SSyntax::SSyntax (void) : parser ("") { textData = 0; pattern = 0; listener = 0; syntaxListener = 0; syntaxState = 0; } SSyntax::~SSyntax () { if (syntaxState) delete syntaxState; if (pattern) delete pattern; clear (); } bool SSyntax::isSupported (const SString& syn) { SStringVector v(syn, ":", true); if (v.size() != 2) return false; if (v[0] == "test") return true; if (v[0] == "hunspell") return true; return false; /* SString ps_syn = syn; ps_syn.append (".dic"); SFile f(ps_syn, syntaxSearchPath); return (f.size() > 0); */ } /** * @param ps - supported properties: * none * xml * properties */ bool SSyntax::setSyntax (const SString& ps) { parser = ps; if (pattern) { delete pattern; pattern = 0; } if (syntaxState) { delete syntaxState; syntaxState = 0; if (syntaxListener) syntaxListener->syntaxChanged ( SSyntaxListener::SD_PARSING_DONE); } clear (); if (ps == "") { return true; } SStringVector split (ps, ":", true); if (split.size() != 2) { parser = ""; return false; } if (split[0] == "test") // update isSupported() { if (split[1] == "yuko") { pattern = new SPattern (); CHECK_NEW (pattern); lineGlobalChange (); return true; } else if (split[1] == "lines") { pattern = new SPattern (); CHECK_NEW (pattern); lineGlobalChange (); return true; } } else if (split[0] == "hunspell") { pattern = new SHunspellPattern (split[1], syntaxSearchPath); CHECK_NEW (pattern); if (!pattern->isValid ()) { delete pattern; pattern = 0; parser = ""; return false; } lineGlobalChange (); return true; } parser = ""; return false; } const SString& SSyntax::getParser () const { return parser; } void SSyntax::clear () { unsigned int i; for (i=0; isyntaxChanged ( SSyntaxListener::SD_PARSING_DONE); } } void SSyntax::clearIterator () { iteratorDataIndex = STextIndex (0,0); iteratorSyntaxIndex = STextIndex (0,0); } void SSyntax::setTextData (const STextData* td) { textData = td; clear (); lineGlobalChange (); } SSyntax::SS_Tag SSyntax::getTag (const STextIndex& index) { if (parser.size()==0) return SD_NONE; if (index.line > syntaxLines.size()) return SD_NONE; if (index.index > syntaxLines[index.line]->size()) return SD_NONE; // Strip off control characters return (SS_Tag) (syntaxLines[index.line]->peek (index.index) & 0xff); } SSyntax::SS_Tag SSyntax::getTagByTDI (const STextIndex& index) { if (parser.size()==0) return SD_NONE; if (index.line > textData->size()) return SD_NONE; if (index.line > syntaxLines.size()) return SD_NONE; if (index.index > textData->size(index.line)) return SD_NONE; if (parser == "test:lines") return (SS_Tag)(index.line % (int) SD_MAX); // return to previous iterator if (index.line != iteratorDataIndex.line || index.index < iteratorDataIndex.index) { iteratorDataIndex.index = 0; iteratorSyntaxIndex.index = 0; } iteratorDataIndex.line = index.line; iteratorSyntaxIndex.line = index.line; const SGlyph* g0 = (iteratorDataIndex.index > 0) ? textData->peekGlyphAt (STextIndex(iteratorDataIndex.line, iteratorDataIndex.index-1)) : 0; while (iteratorDataIndex.index < index.index) { const SGlyph* g = textData->peekGlyphAt (iteratorDataIndex); SV_UCS4 chars = g->getChars (); if (chars.size() == 0) break; // sanity SV_UCS4 emb = g->getEmbeddingMarks(g0); g0 = g; iteratorSyntaxIndex.index += (chars.size() + emb.size()); iteratorDataIndex.index = iteratorDataIndex.index + 1; } // Strip off embedding control characters unsigned int i=0; unsigned int max = dataLines[index.line]->size(); for (i=iteratorSyntaxIndex.index; ipeek (i); if (c!=SD_CD_LRO && c!=SD_CD_RLO && c!=SD_CD_LRE && c!=SD_CD_RLE && c!=SD_CD_PDF) // most likely we wont have SD_CD_PDF { break; } } if (i==max) return SD_ERROR; return (SS_Tag) (syntaxLines[index.line]->peek (i) & 0xff); } void SSyntax::lineRemoved (void* src, unsigned int index) { if (parser.size()==0) return; if (textData->size() == 0) { clear (); return; } if (index >= dataLines.size () || index > textData->size()) { #if DEBUG_PARSER fprintf (stderr, "ERROR: lineRemoved index=%u lines.size=%u textData.size=%u\n", index, lines.size(), textData->size()); #endif lineGlobalChange(); return; } delete dataLines[index]; dataLines.remove (index); delete syntaxLines[index]; syntaxLines.remove (index); clearIterator (); updateSyntaxState (STextIndex (index, 0)); } void SSyntax::lineInserted (void* src, unsigned int index) { if (parser.size()==0) return; if (index > dataLines.size () || index >= textData->size()) { #if 0 fprintf (stderr, "ERROR: lineInserted index=%u lines.size=%u textData.size=%u\n", index, dataLines.size(), textData->size()); #endif lineGlobalChange(); return; } SV_UCS4* l = new SV_UCS4(textData->getChars (index)); CHECK_NEW (l); dataLines.insert (index, l); SSyntaxRow* row = new SSyntaxRow(); CHECK_NEW (row); for (unsigned int i=0; isize(); i++) { row->append (0); } syntaxLines.insert (index, row); clearIterator (); updateSyntaxState (STextIndex (index, 0)); } void SSyntax::lineChanged (void* src, unsigned int index) { if (parser.size()==0) return; if (index > dataLines.size () || index >= textData->size()) { #if 0 fprintf (stderr, "ERROR: lineChanged index=%u lines.size=%u textData.size=%u\n", index, dataLines.size(), textData->size()); #endif lineGlobalChange(); return; } SV_UCS4* newdl = new SV_UCS4 (textData->getChars (index)); CHECK_NEW (newdl); // check what changed. unsigned int floor = 0; unsigned int ceiling = 0; unsigned int lsize = newdl->size(); unsigned int dsize = dataLines[index]->size(); while (floor < lsize && floor < dsize) { if (newdl->peek (floor) != dataLines[index]->peek (floor)) break; floor++; } while (ceiling < lsize && ceiling < dsize && floor + ceiling < dsize && floor + ceiling < lsize) { if (newdl->peek (lsize-ceiling-1) != dataLines[index]->peek (dsize-ceiling-1)) break; ceiling++; } SSyntaxRow* newsn = new SSyntaxRow(); CHECK_NEW (newsn); // copy old data unsigned int i; // fprintf (stderr, "floor=%u ceiling=%u\n", floor, ceiling); // keep the syntax but remove the control for (i=0; iappend (0xff & (unsigned int)syntaxLines[index]->peek (i)); } for (i=0; iinsert (floor, 0xff & (unsigned int)syntaxLines[index]->peek (dsize-i-1)); } for (i=floor; iinsert (i, 0); } if (newdl->size() != newsn->size()) { fprintf (stderr, "Internal error SSyntax::lineChanged."); lineGlobalChange(); return; } delete dataLines[index]; delete syntaxLines[index]; dataLines.replace (index, newdl); syntaxLines.replace (index, newsn); clearIterator (); updateSyntaxState (STextIndex (index, 0)); } void SSyntax::lineGlobalChange () { clear (); if (parser.size()==0) return; for (unsigned i=0; isize(); i++) { lineInserted (this, i); } updateSyntaxState (STextIndex(0,0)); } void SSyntax::updateSyntaxState (const STextIndex ndx) { if (parser.size()==0) { if (syntaxState) { delete syntaxState; syntaxState = 0; if (syntaxListener) syntaxListener->syntaxChanged ( SSyntaxListener::SD_PARSING_DONE); } return; } if (syntaxState) { STextIndex crawlIndex = syntaxState->getCurrentIndex (); // If the crawlIndex is less than our index, dont do anything, // this point is not checked yet. // the linesizes are cached as we crawl, so we should do this. if (crawlIndex.line < ndx.line) { return; } delete syntaxState; syntaxState = 0; } // create a new syntaxState SSyntaxMarker* marker = new SSyntaxMarker (syntaxLines, dataLines, ndx); CHECK_NEW (marker); SMatcher* matcher = new SMatcher (*pattern, *marker); CHECK_NEW (matcher); // effectively this is an idle timer. STimer* timer = STimer::newTimer(0, this); syntaxState = new SSyntaxState ( matcher, marker, timer); CHECK_NEW (syntaxState); if (syntaxListener) syntaxListener->syntaxChanged ( SSyntaxListener::SD_PARSING_STARTED); } // do another iteration of syntax checking // return false if finished, and cleanup syntaxState. bool SSyntax::timeout (const SEventSource* s) { if (syntaxState == 0) { return false;// never } // 100 characters at a time unsigned int count = 0; unsigned int oldN = SD_MATCH_EOD; SS_UCS4 n = 0; while ((n=syntaxState->matcher->find (true)) != SD_MATCH_EOD) { if (n==SD_MATCH_AGAIN) { if (count < SD_UNIT_WORK_COUNT) continue; return true; // call timer again. } count++; if (oldN == n) { fprintf (stderr, "Detected infinite loop in matcher at %u.\n", oldN); n = SD_MATCH_EOD; break; } oldN = n; applyActions (); // set a sync marker to begin here STextIndex idx = syntaxState->marker->position2Index (n); int syn = syntaxState->marker->getSyntaxAt (idx); syn = syn | SGC_BEGIN_MARK; syntaxState->marker->setSyntaxAt (idx, syn); } // end of file reached. applyActions (); if (n != SD_MATCH_EOD) { // set a sync marker to begin here STextIndex idx = syntaxState->marker->position2Index (n); int syn = syntaxState->marker->getSyntaxAt (idx); syn = syn | SGC_BEGIN_MARK; syntaxState->marker->setSyntaxAt (idx, syn); } delete syntaxState; syntaxState = 0; if (syntaxListener) syntaxListener->syntaxChanged ( SSyntaxListener::SD_PARSING_DONE); // fprintf (stderr, "SGC syntax finished.\n"); return false; } void SSyntax::applyActions () { syntaxState->marker->beginActionBlock (); syntaxState->matcher->applyActions (*syntaxState->marker); syntaxState->marker->endActionBlock (); STextIndex minModified = syntaxState->marker->minModified; STextIndex maxModified = syntaxState->marker->maxModified; // maxmodified is incluside. if (minModified <= maxModified) { // we are lazy, and set whole line modified instead of converting // our dataLine index to real textData index. maxModified.line++; maxModified.index=0; // reverse index. unsigned int lineCeiling = (maxModified.line >= textData->size()) ? 0 : textData->size() - maxModified.line; STextDataEvent evt (minModified); if (listener) { STextDataEvent evt (minModified); evt.setRemaining (STextIndex (lineCeiling, 0)); evt.attribute = true; listener->textChanged (this, evt); } } } // It is a setter only void SSyntax::addTextDataListener (STextDataListener* _listener) { listener = _listener; } void SSyntax::addSyntaxListener (SSyntaxListener* _listener) { syntaxListener = _listener; } void SSyntax::setPath (const SStringVector& l) { syntaxSearchPath = l; } const SStringVector& SSyntax::getPath () { return syntaxSearchPath; } /** * search files for property in order and set the path to the * property. Always add YUDIT_DATA/syntax */ void SSyntax::guessPath (const SStringVector& files, const SString& property) { SStringVector outDataPath; for (unsigned int i=0; i0; i--) { SDir dir (syntaxSearchPath[i-1]); SStringVector f = dir.list (p); for (unsigned int j=0; j 4) s.truncate (s.size()-4); prop.put (s, s); } } } for (i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/syntax/SMatcher.h" SMatcher::SMatcher (SPattern& pat, SMatcherIterator& it) : pattern(pat), iterator(it) { eod = false; start = 0; pattern.clear (); } // When a string macthes, it does not return immediatelly, until // it reads again. // if unitWork is true SD_MATCH_AGAIN can be returned after // one character is read or one unit work is performed. unsigned int SMatcher::find (bool unitWork) { int c; if (pattern.checkMatch ()) { return pattern.matchBegin; } if (eod) { return SD_MATCH_EOD; } while ((c = iterator.getNextCharacter ()) != -1) { // our next is current + 1 pattern.append ((SS_UCS4)c); if (pattern.checkMatch ()) { return pattern.matchBegin; } if (unitWork) return SD_MATCH_AGAIN; } if (!eod) { eod = true; c = SD_MATCH_EOD; pattern.append ((SS_UCS4)c); } if (pattern.checkMatch ()) { return pattern.matchBegin; } pattern.action = pattern.ACT_NONE; pattern.matchBegin = SD_MATCH_EOD; return SD_MATCH_EOD; } void SMatcher::applyActions (SMatcherAction& _action) { if (pattern.matchBegin == SD_MATCH_EOD) { // EOD is counted that is why upper limit is next-1 _action.applyAction (pattern.ACT_NONE, pattern.matchEnd, pattern.next-1); return; } _action.applyAction (pattern.ACT_NONE, start, pattern.matchBegin); _action.applyAction (pattern.action, pattern.matchBegin, pattern.matchEnd); start = pattern.matchEnd; } ./stoolkit/syntax/SSyntaxMarker.h0000644000175000017500000000560110725137432017165 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SSyntaxMarker_h #define SSyntaxMarker_h #include "stoolkit/STextData.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SVector.h" #include "stoolkit/SLineTracker.h" #include "stoolkit/syntax/SMatcher.h" #include "stoolkit/SBinHashtable.h" // The first 0xFFFF mask bytes are real syntax // the 0xFFFF0000 mask bytes are shadow syntax // the upper ones are free #define SGC_BEGIN_MARK 0x10000 class SSyntaxMarker : public SMatcherIterator, public SMatcherAction { public: // lines is the syntax markup line // textdata is the matching text // around is from where sync happens SSyntaxMarker (SSyntaxData& syntaxLines, const SUnicodeData& dataLines, const STextIndex& around); virtual ~SSyntaxMarker (); /* must be called at the end to get minModified and maxModified */ // This only knows about positions that were read via getNextCharacter() STextIndex position2Index (unsigned int position); int getCharAt (const STextIndex& in) const; int getSyntaxAt (const STextIndex& in) const; bool setSyntaxAt (const STextIndex& in, int syn); STextIndex getCurrentIndex () const { return STextIndex (currentIndex); } // you need to enclose applyAction statements with these, // to get minModified and maxModified. void beginActionBlock (); void endActionBlock (); STextIndex minModified; STextIndex maxModified; private: /* SMatcherIterator */ virtual int getNextCharacter (); /* SMatcherAction */ virtual void applyAction (const SString& name, unsigned int markFrom, unsigned int markTill); bool decrement (STextIndex* in); bool increment (STextIndex* in); unsigned int getLineSize (unsigned int lineno) const; bool isEOD (const STextIndex& idx) const; SSyntaxData& syntaxLines; const SUnicodeData& dataLines; /* for SMatcherIterator */ STextIndex startIndex; STextIndex currentIndex; bool isStarted; /* for matcherMarkCurrentPosition */ SBinVector lineSizes; SBinHashtable actionMap; }; #endif /* SSyntaxMarket_h */ ./stoolkit/syntax/SPattern.h0000644000175000017500000000372310725527201016152 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SPattern_h #define SPattern_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/syntax/SMatcherIterator.h" /** * A regular expression pattern. * @author Gaspar Sinai * @version 2007-11-27 */ class SPattern { public: SPattern (void); virtual ~SPattern (); bool isValid () const { return valid; } // This method updates matchBegin and matchEnd (exclusive) // variables in case of a match, in case of no match, this // will not be touched. Action will contain that action string. virtual bool checkMatch (); unsigned int matchBegin; unsigned int matchEnd; SString action; // Actions SString ACT_NONE; SString ACT_ERROR; SString ACT_NUMBER; SString ACT_KEYWORD; SString ACT_VARIABLE; SString ACT_DEFINE; SString ACT_CONTROL; // Append a character and update the next to show how // many characters we received so far. void append (SS_UCS4 in); unsigned int next; void clear (); protected: SV_UCS4 current; bool checkMatchTest (); bool singleMatchTest (unsigned int leaveSize); bool valid; }; #endif /* SPattern_h */ ./stoolkit/syntax/SHunspellPattern.h0000644000175000017500000000424711333674145017675 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SHunspellPattern_h #define SHunspellPattern_h #include "stoolkit/syntax/SPattern.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SEncoder.h" extern "C" { typedef struct _HunspellFunctions_ { void* (*create)(const char * affpath, const char * dpath); int (*spell)(void* hunspell, const char *word); int (*destroy)(void* hunspell); char* (*get_dic_encoding)(void* hunspell); } HunspellFunctions; } /** * A regular expression pattern. * @author Gaspar Sinai * @version 2007-11-27 */ class SHunspellPattern : public SPattern { public: SHunspellPattern (const SString& name, const SStringVector& path); virtual ~SHunspellPattern (); // This method updates matchBegin and matchEnd (exclusive) // variables in case of a match, in case of no match, this // will not be touched. Action will contain that action string. virtual bool checkMatch (); static SString getFolderFor (const SString& name, const SStringVector& path); static SString getMissingFile (const SString& name, const SStringVector& path); private: static SString loadLibrary (const SStringVector& path); bool isSeparator (SS_UCS4 chr) const; bool isNumber (SS_UCS4 chr) const; bool isJapanese (SS_UCS4 chr) const; SString name; SString dicFile; SString affFile; void* hunspell; HunspellFunctions functions; SEncoder* entryEncoder; }; #endif /* SHunspellPattern_h */ ./stoolkit/syntax/SSyntax.h0000644000175000017500000001104010726711121016007 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SSyntax_h #define SSyntax_h #include "stoolkit/STextData.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SVector.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SLineTracker.h" #include "stoolkit/SEvent.h" #include "stoolkit/syntax/SMatcher.h" #include "stoolkit/syntax/SSyntaxMarker.h" // This many characters are processed, or this many unit works // are performed in each timer call. #define SD_UNIT_WORK_COUNT 100 class SSyntaxListener { public: enum SS_EventType { SD_PARSING_STARTED, SD_PARSING_INSERT, SD_PARSING_DONE }; SSyntaxListener (void) {} virtual ~SSyntaxListener () {} virtual void syntaxChanged (SS_EventType _evnt)=0; }; class SSyntaxState { public: // Context will delete the objects in args when destructed SSyntaxState (SMatcher* _matcher, SSyntaxMarker* _marker, STimer* _timer) : matcher (_matcher), marker (_marker), timer (_timer) { } ~SSyntaxState () { delete timer; delete marker; delete matcher; } STextIndex getCurrentIndex () { return marker->getCurrentIndex (); } SMatcher* matcher; SSyntaxMarker* marker; STimer* timer; }; // SExentTarget is for crawling timeout class SSyntax : public SLineTracker, public SEventTarget { public: // color is a precious resource, we have only // a limited number of them here. // The number of charactrers that are cached are // detemined by SAwt constuctor cacheSize=2000 // We have a shadow vrsion of these in SSyntaxMarker enum SS_Tag { SD_NONE=0, SD_ERROR, SD_NUMBER, SD_STRING, SD_COMMENT, SD_KEYWORD, SD_VARIABLE, SD_DEFINE, SD_CONTROL, SD_MAX }; SSyntax (void); ~SSyntax (); bool setSyntax (const SString& ps); const SString& getParser () const; void setTextData (const STextData* td); /* by lines raw index */ SS_Tag getTag (const STextIndex& index); /* get text data index */ SS_Tag getTagByTDI (const STextIndex& index); virtual void lineRemoved (void* src, unsigned int index); virtual void lineInserted (void* src, unsigned int index); virtual void lineChanged (void* src, unsigned int index); // The patch for the syntax files. static void setPath(const SStringVector &p); static void guessPath(const SStringVector& files, const SString& property); static void guessPath(); static const SStringVector& getPath(); static bool isSupported (const SString& syn); // This will get called from time-to-time // when this class crawls text and parses // Only whole lines will changed. void addTextDataListener (STextDataListener* _listener); void addSyntaxListener (SSyntaxListener* _listener); static SString getMissingFile (const SString& name); static SString getFolderFor (const SString& name); static SStringVector getCategories (); static SStringVector getAvaliableList (const SString& category); private: STextDataListener* listener; SSyntaxListener* syntaxListener; const STextData* textData; SSyntaxState* syntaxState; void clear (); void clearIterator (); void lineGlobalChange (); void applyActions (); // do another iteration of syntax checking virtual bool timeout (const SEventSource* s); // if ndx is a move back restart parsing. // if parse is "" delete parsing // ndx is our index, not datamodel index. void updateSyntaxState (const STextIndex ndx); SString parser; SPattern* pattern; // These two are in sync. They contain the full expanded line SSyntaxData syntaxLines; SUnicodeData dataLines; // for consecutive getTagByTDI STextIndex iteratorSyntaxIndex; // syntaxLines, dataLines STextIndex iteratorDataIndex; // textData }; #endif /* SSyntax */ ./stoolkit/SHShared.cpp0000644000175000017500000000431610434025610015051 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SHShared.h" #include "SExcept.h" #include #include #include /** * @author: Gaspar Sinai * @version: 2000-04-23 */ static int debug_level = 0; /** * Create a buffer that will be referenced by all vectors. * @param size is the minimum size on chars. */ SHShared::SHShared (unsigned int size) { count=1; vectorSize=0; array = new char[size]; CHECK_NEW(array); arraySize = size; } /** * Create a buffer that will be referenced by all vectors. * @param size is the minimum size on chars. * @param buffer - this will be copyes over one by one. */ SHShared::SHShared (const char* buffer, unsigned int size) { count=1; array = 0; arraySize=0; vectorSize=0; if (size==0)return; array = new char[size]; CHECK_NEW(array); arraySize = size; //ensure (arraySize); memcpy (array, buffer, size); } /** * Create a new Object by copying an old one * @param a SHShared object to copy */ SHShared::SHShared (const SHShared& orig) { count=1; array=0; arraySize=0; vectorSize=0; /* Copy */ if (orig.arraySize!=0) { ensure (orig.arraySize); /* This is needed this way because of Hashtable. Vectorsize in hashtable does not mean continuous size */ memcpy (array, orig.array, orig.arraySize); } vectorSize = orig.vectorSize; } /** * Sets debug printout levels */ int SHShared::debug(int level) { int prev = debug_level; debug_level = level; return prev; } ./stoolkit/SBinHashtable.h0000644000175000017500000000500210434025606015522 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SBinHashtable_h #define SBinHashtable_h /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SBHashtable.h" #include "SString.h" #include "SExcept.h" /** * This is my vector. stoolkit as that. There is no code, * just this. */ template class SBinHashtable : public SBHashtable { public: SBinHashtable (void) : SBHashtable () { } virtual ~SBinHashtable () { } // SBHashtable cleanup will be automatically called. SBinHashtable (const SBinHashtable& v) : SBHashtable (v) { } virtual SObject* clone() const { SBinHashtable* n = new SBinHashtable (*this); CHECK_NEW(n); return n;} SBinHashtable& operator=(const SBinHashtable& v) { refer(v); return *this; } void put (const SString& key, Type e, bool replace=true) { SBHashtable::put (key, (const char*) &e, sizeof (Type), replace); } void put (unsigned int row, unsigned int sub, Type e) { SBHashtable::put (row, sub, (const char*) &e, sizeof (Type)); } void remove (const SString& key) { SBHashtable::remove (key); } // This will dlete void clear () { SBHashtable::clear(); } unsigned int size () const { return SBHashtable::size(); } unsigned int size (unsigned int subb) const { return SBHashtable::size(subb); } Type get (const SString& key) const { return (Type) (*(Type*)SBHashtable::get(key)); } Type operator[] (const SString& key) const { return (Type) (*(Type*)SBHashtable::get(key)); } Type get (unsigned int row, unsigned int column) const { return (Type) (*(Type*)SBHashtable::get(row, column)); } const SString& key (unsigned int row, unsigned int column) const { return SBHashtable::key(row, column); } }; #endif /* SBinHashtable_h _h*/ ./stoolkit/SMatrix.cpp0000644000175000017500000000600110434025610014770 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SMatrix.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include /** * create a 2 d matrix */ SS_Matrix2D::SS_Matrix2D(void) { x0 = 1.0; y0 = 0.0; t0=0.0; x1 = 0.0; y1 = 1.0; t1=0.0; x2 = 0.0; y2 = 0.0; t2=1.0; } SS_Matrix2D::SS_Matrix2D (const SS_Matrix2D& m) { x0 = m.x0; y0 = m.y0; t0=m.t0; x1 = m.x1; y1 = m.y1; t1=m.t1; x2 = m.x2; y2 = m.y2; t2=m.t2; } SS_Matrix2D SS_Matrix2D::operator= (const SS_Matrix2D& m) { x0 = m.x0; y0 = m.y0; t0=m.t0; x1 = m.x1; y1 = m.y1; t1=m.t1; x2 = m.x2; y2 = m.y2; t2=m.t2; return *this; } bool operator== (const SS_Matrix2D& m1, const SS_Matrix2D& m2) { return (m1.x0 == m2.x0 && m1.y0 == m2.y0 && m1.t0==m2.t0 && m1.x1 == m2.x1 && m1.y1 == m2.y1 && m1.t1==m2.t1 && m1.x2 == m2.x2 && m1.y2 == m2.y2 && m1.t2==m2.t2); } bool operator< (const SS_Matrix2D& m1, const SS_Matrix2D& m2) { return (m1.x0 < m2.x0 && m1.y0 < m2.y0 && m1.t0 (const SS_Matrix2D& m1, const SS_Matrix2D& m2) { return (m1.x0 > m2.x0 && m1.y0 > m2.y0 && m1.t0>m2.t0 && m1.x1 > m2.x1 && m1.y1 > m2.y1 && m1.t1>m2.t1 && m1.x2 > m2.x2 && m1.y2 > m2.y2 && m1.t2>m2.t2); } SS_Matrix2D SS_Matrix2D::operator* (const SS_Matrix2D& m1) const { SS_Matrix2D r; r.x0 = x0 * m1.x0 + y0 * m1.x1 + t0 * m1.x2; r.x1 = x1 * m1.x0 + y1 * m1.x1 + t1 * m1.x2; r.x2 = x2 * m1.x0 + y2 * m1.x1 + t2 * m1.x2; r.y0 = x0 * m1.y0 + y0 * m1.y1 + t0 * m1.y2; r.y1 = x1 * m1.y0 + y1 * m1.y1 + t1 * m1.y2; r.y2 = x2 * m1.y0 + y2 * m1.y1 + t2 * m1.y2; r.t0 = x0 * m1.t0 + y0 * m1.t1 + t0 * m1.t2; r.t1 = x1 * m1.t0 + y1 * m1.t1 + t1 * m1.t2; r.t2 = x2 * m1.t0 + y2 * m1.t1 + t2 * m1.t2; return SS_Matrix2D (r); } SS_Matrix2D::~SS_Matrix2D() { } /** * TODO: not implemented */ void SS_Matrix2D::rotate (double angle) { } void SS_Matrix2D::scale (double x, double y) { x0 = x0 * x; y1 = y1 * y; } void SS_Matrix2D::translate (double x, double y) { t0 = t0 + x; t1 = t1 + y; } SS_Matrix2D SS_Matrix2D::invert() const { SS_Matrix2D r; /* FIXME: my det has always some problem. */ return SS_Matrix2D(r); } ./stoolkit/SString.h0000644000175000017500000000543410434025610014450 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SString_h #define SString_h #include "SBinVector.h" #include // This is for %*.*s printf #define SSARGS(_s) (int)_s.size(), (int)_s.size(), _s.array() /** * @author: Gaspar Sinai * @version: 2000-04-23 */ class SString : public SBinVector { public: SString(void); SString (long l); SString (double d); SString (void* p); SString (const char* s); SString (const char* s, unsigned int len); SString (const char* s, unsigned int from, unsigned int len); virtual SObject* clone() const; SString& operator=(const SString& v); void print (int in); void print (unsigned int in); void print (long in); void print (unsigned long in); void print (double in); virtual ~SString (); int find (const SString& v, unsigned int from =0) const; int find (char v, unsigned int from =0) const; int replace (const SString& e, const SString& with, unsigned int from =0); int replaceAll (const SString& e, const SString& with, unsigned int from=0); void insert (unsigned int ind, const SString& v); void append (const SString& v); void append (long l); void append (const char *, unsigned int len); void append (char); bool match (const SString& pattern) const; SString& operator << (const SString& e2); //friend SString& operator << (SString& e1, const SString& e2); unsigned int hashCode () const; long longValue() const; double doubleValue() const; inline bool operator == (const SString& e) const; bool operator != (const SString& e) const; bool operator < (const SString& e) const; bool operator > (const SString& e) const; bool operator <= (const SString& e) const; bool operator >= (const SString& e) const; int compare (const SString& s) const; void truncate (unsigned int size); void lower (); void upper (); char* cString() const; protected: void refer (const SString& v); }; extern SString SStringNull; //PUBLIC/INLINE /** * Is it equal */ bool SString::operator==(const SString& e) const { return equals(e); } #endif /* SString _h*/ ./stoolkit/SLineTracker.h0000644000175000017500000000221510725002030015371 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SLineTracker_h #define SLineTracker_h #include "stoolkit/SParagraph.h" class SLineTracker { public: inline SLineTracker (void) {}; virtual ~SLineTracker () {}; virtual void lineRemoved (void* src, unsigned int index) = 0; virtual void lineInserted (void* src, unsigned int index) = 0; virtual void lineChanged (void* src, unsigned int index) = 0; }; #endif /* SLineTracker_h */ ./stoolkit/SEncoder.h0000644000175000017500000000372110434025610014556 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SEncoder_h #define SEncoder_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" class SEncoder : SObject { public: SEncoder (void); SEncoder (const SString& name); SEncoder (const SEncoder& c); SEncoder& operator = (const SEncoder& c); virtual ~SEncoder (); const SString& encode (const SV_UCS4& input); const SV_UCS4& decode (const SString& input, bool more=true); unsigned int getDecoderMap (SStringVector* key, SStringVector* value, unsigned int size); /* These methods guess the line delimiters for the input */ const SStringVector& delimiters (); const SString& getName() const; virtual SObject* clone() const; bool isOK() const; void clear(); static const SStringVector& builtin(); static SStringVector external(); /* return the string that still waits for match */ SString preEditBuffer() const; /* for non-clustering it is remainder */ SV_UCS4 postEditBuffer () const; /* for clustering */ protected: bool ok; void load (); SString name; SString buffer; SStringVector delim; SV_UCS4 retUCS4; SV_UCS4 remaining; void* delegate; }; #endif /* SEncoder_h */ ./stoolkit/SCharClass.h0000644000175000017500000001216310726150771015055 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SCharClass_h #define SCharClass_h #include "stoolkit/STypes.h" typedef enum { SD_CC_Xx=0, SD_CC_Lu, // 01 Lu Letter, Uppercase SD_CC_Ll, // 02 Ll Letter, Lowercase SD_CC_Lt, // 03 Lt Letter, Titlecase SD_CC_Mn, // 04 Mn Mark, Non-Spacing SD_CC_Mc, // 05 Mc Mark, Spacing Combining SD_CC_Me, // 06 Me Mark, Enclosing SD_CC_Nd, // 07 Nd Number, Decimal Digit SD_CC_Nl, // 08 Nl Number, Letter SD_CC_No, // 09 No Number, Other SD_CC_Zs, // 0A Zs Separator, Space SD_CC_Zl, // 0B Zl Separator, Line SD_CC_Zp, // 0C Zp Separator, Paragraph SD_CC_Cc, // 0D Cc Other, Control SD_CC_Cf, // 0E Cf Other, Format SD_CC_Cs, // 0F Cs Other, Surrogate SD_CC_Co, // 10 Co Other, Private Use SD_CC_Cn, // 11 Cn Other, Not Assigned SD_CC_Lm, // 12 Lm Letter, Modifier SD_CC_Lo, // 13 Lo Letter, Other SD_CC_Pc, // 14 Pc Punctuation, Connector SD_CC_Pd, // 15 Pd Punctuation, Dash SD_CC_Ps, // 16 Ps Punctuation, Open SD_CC_Pe, // 17 Pe Punctuation, Close SD_CC_Pi, // 18 Pi Punctuation, Initial quote // (may behave like Ps or Pe depending on usage) SD_CC_Pf, // 19 Pf Punctuation, Final quote // (may behave like Ps or Pe depending on usage) SD_CC_Po, // 1A Po Punctuation, Other SD_CC_Sm, // 1B Sm Symbol, Math SD_CC_Sc, // 1C Sc Symbol, Currency SD_CC_Sk, // 1D Sk Symbol, Modifier SD_CC_So, // 1E So Symbol, Other SD_CC_MAX // No more } SD_CharClass; /* BiDi class */ typedef enum { /* strong */ SD_BC_XX=0, SD_BC_L, // Left-to-Right SD_BC_LRE, // Left-to-Right Embedding SD_BC_LRO, // Left-to-Right Override SD_BC_R, // Right-to-Left SD_BC_AL, // Right-to-Left Arabic SD_BC_RLE, // Right-to-Left Embedding SD_BC_RLO, // Right-to-Left Override /* weak */ SD_BC_PDF, // Pop Directional Format SD_BC_EN, // European Number SD_BC_ES, // European Number Separator SD_BC_ET, // European Number Terminator SD_BC_AN, // Arabic Number SD_BC_CS, // Common Number Separator SD_BC_NSM, // Non-Spacing Mark SD_BC_BN, // Boundary Neutral /* neutral */ SD_BC_B, // Paragraph Separator SD_BC_S, // Segment Separator SD_BC_WS, // Whitespace SD_BC_ON, // Other Neutrals SD_BC_MAX } SD_BiDiClass; #define SD_CD_ZWSP 0x200B /* Zero width space */ #define SD_CD_ZWNJ 0x200C /* Zs */ #define SD_CD_ZWJ 0x200D /* Cf */ #define SD_CD_ARABIC_TATWEEL 0x0640 #define SD_CD_SYRIAC_LETTER_DALATH 0x0715 #define SD_CD_SYRIAC_LETTER_DOTLESS_DALATH 0x0716 #define SD_CD_SYRIAC_LETTER_RISH 0x072A #define SD_CD_CTRL 0 #define SD_CD_LF ((SS_UCS4)'\n') #define SD_CD_FF ((SS_UCS4)'\f') #define SD_CD_CR ((SS_UCS4)'\r') #define SD_CD_TAB ((SS_UCS4)'\t') #define SD_CD_LS 0x2028 /* line separator */ #define SD_CD_PS 0x2029 /* paragraph separator */ #define SD_CD_LRO 0x202D /* left- to-right override */ #define SD_CD_RLO 0x202E /* right-to-left override */ #define SD_CD_LRE 0x202A /* left-to-right embedding */ #define SD_CD_RLE 0x202B /* right-to-left embedding */ #define SD_CD_PDF 0x202C /* pop directional format */ #define SD_CD_LRM 0x200E /* LEFT-TO-RIGHT MARK */ #define SD_CD_RLM 0x200F /* RIGHT-TO-LEFT MARK */ /** * Line breaking characters in utf-8 * NLF = one of SS_LB_DOS SS_LB_MAC SS_LB_UNIX SS_LB_NEL. */ #define SS_LB_DOS "\r\n" #define SS_LB_MAC "\r" #define SS_LB_UNIX "\n" #define SS_LB_LS "\342\200\250" #define SS_LB_PS "\342\200\251" /* PARAGRAPH BREAKING */ #define SS_LB_FF "\f" #define SS_LB_LRO "\342\200\255" #define SS_LB_RLO "\342\200\256" #define SS_LB_LRE "\342\200\252" #define SS_LB_RLE "\342\200\253" #define SS_LB_PDF "\342\200\254" /** * These line breaking chars are not supported here now. */ #define SS_LB_NEL "\702\102" #define SS_LB_P_VT "\013" /* PARAGRAPH BREAKING */ #define SS_LB_P_FF "\014" /* PARAGRAPH BREAKING */ extern const char* ssCharClass[SD_CC_MAX]; extern const char* ssBiDiClass[SD_BC_MAX]; SD_CharClass getCharClass(SS_UCS4 in); SD_BiDiClass getBiDiClass(SS_UCS4 in); SS_UCS4 getMirroredCharacter (SS_UCS4 in); typedef enum { SS_PS_None=0, SS_PS_LF, SS_PS_CR, SS_PS_CRLF, SS_PS_PS } SS_ParaSep; typedef enum { SS_EmbedNone=0, SS_EmbedLeft, SS_EmbedRight } SS_Embedding; typedef enum { SS_DR_L, /* L-R character */ SS_DR_R, /* R-L character */ SS_DR_LE, /* inside L embedded */ SS_DR_RE, /* inside R embedded */ SS_DR_LO, /* inside L override */ SS_DR_RO /* inside R override */ } SS_DR_Dir; #endif /*SCharClass_h*/ ./stoolkit/SGlyph.h0000644000175000017500000001064610730355441014275 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SGlyph_h #define SGlyph_h #include "stoolkit/SVector.h" #include "stoolkit/STypes.h" #include "stoolkit/SUniMap.h" #include "stoolkit/SString.h" #include "stoolkit/SCharClass.h" #include "stoolkit/SEmbedState.h" #include "stoolkit/SGlyphShared.h" /** * Cache */ SGlyphShared* getGlyphShared (SS_UCS4 c); class SGlyph : public SObject { public: SGlyph (const SV_UCS4 &decomp, SS_UCS4 comp, bool shaped, unsigned int clusterindex, unsigned int composingIndex); SGlyph (const SGlyph& glyph); SGlyph (SGlyphShared* _shared); SGlyph operator=(const SGlyph& glyph); virtual ~SGlyph (); virtual SObject* clone() const; bool operator == (const SGlyph& g2) const; bool operator != (const SGlyph& g2) const; bool isWhiteSpace() const; bool isDelimiter() const; bool canWrap () const; bool isNumber() const; bool isLetter() const; bool isTransparent() const; bool isEOP() const; bool isEOL() const; bool isFF() const; bool isTab() const; bool isCluster() const; bool isYuditLigature() const; bool isYuditComposition() const; bool isSpecial() const; bool isMirrorable() const; SD_CharClass getType() const; SD_BiDiClass getBiDiType() const; SString charKey() const; bool setShape (const SGlyph* before, const SGlyph* after); /* Work on characters */ const SS_UCS4 getChar() const; const SS_UCS4 getMirroredChar() const; const SS_UCS4 getShapedChar() const; const SS_UCS4 getFirstChar () const; /* Work on decompositions */ SV_UCS4 getChars() const; /* returns decomposed or precomposed */ unsigned int decompSize() const; unsigned int compSize() const; const SS_UCS4* getShapeArray() const; /* fast */ const SS_UCS4* getDecompArray() const; /* fast */ const SS_UCS4* getCompArray() const; /* fast */ const SS_UCS4* getShapeFallback() const; /* fast */ /* array operator works on memory represenation */ SS_UCS4 operator[] (unsigned int index) const; /* fast */ /* now comes the real hack. */ bool addComposing(SS_UCS4 c); SS_UCS4 removeComposing(); inline bool isLR() const; /* conformant algoritm needs it */ inline unsigned int getExplicitLevel() const; inline bool isOverride() const; inline void setEmbeddingMarks (const SV_UCS4& stack); inline SV_UCS4 getEmbeddingMarks (const SGlyph* from) const; /* for convenience */ inline const SEmbedState& getEmbedState() const; /* These should be constants */ bool underlined; bool selected; bool usePrecomp; char currentShape; /* These are states */ char embedding; /* resolved embedding level */ private: char getShape (const SGlyph* before, const SGlyph* after); SEmbedState state; SGlyphShared * shared; }; bool SGlyph::isOverride() const { return state.isOverride(); } unsigned int SGlyph::getExplicitLevel() const { return state.getExplicitLevel(); } /** * Return and vector that contains LRO,RLO,LRE,RLE and PDF marks * This array can bring this to from level. * @from is a glyph relative to which we consume embedding levels. * If from is zero zero level is assumed. */ SV_UCS4 SGlyph::getEmbeddingMarks (const SGlyph* from) const { return SV_UCS4(state.getEmbeddingMarks((from==0)?0:&from->state)); } void SGlyph::setEmbeddingMarks (const SV_UCS4& stack) { state.setEmbeddingMarks(stack); } /** * return the embedding level, as calculated by bidi */ bool SGlyph::isLR() const { return ((embedding % 2) == 0); } /** * return the explicit embedding state of this glyph */ const SEmbedState& SGlyph::getEmbedState() const { return state; } void addFallbackShapes (SUniMap* shaper, const SS_UCS4* shapes, const SS_UCS4* chars, unsigned int size); #endif /* SGlyph_h */ ./stoolkit/SParagraph.h0000644000175000017500000001043610725012506015110 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SParagraph_h #define SParagraph_h #include "stoolkit/SGlyph.h" #include "stoolkit/STypes.h" class SParagraph { public: SParagraph(void); SParagraph(const SParagraph& paragraph); ~SParagraph(); SParagraph(const SV_UCS4& buffer, unsigned int *index); SParagraph* subParagraph(unsigned int from, unsigned int to) const; inline unsigned int size() const; inline unsigned int softSize() const; inline SS_UCS4 softCharAt (unsigned int pos) const; inline const SGlyph& operator [] (unsigned int index) const; inline const SGlyph* peek (unsigned int index) const; inline bool isExpanded () const; void append(const SGlyph& glyph); void insert(unsigned int into, const SGlyph& glyph); void remove(unsigned int from, unsigned int to); void remove(unsigned int at); void truncate(unsigned int to); void replace(unsigned int at, const SGlyph& glyph); bool setParagraphSeparator (SS_ParaSep ps); SS_ParaSep getParagraphSeparator () { return paraSep; }; void setEmbedding(SS_Embedding e); void clear(); unsigned int toLogical (unsigned int index); const SV_UINT& getLogicalMap() const; void setLineBreaks (const SV_UCS4& breaks); void select (bool is); void select (bool is, unsigned int from, unsigned int to); void underline (bool is); void underline (bool is, unsigned int from, unsigned int to); bool isLR() const; bool isProperLine () const; bool isVisible() const; void setVisible(); bool isReordered () const; void setReordered(); unsigned int properSize() const; SV_UCS4 getChars() const; void clearChange(); unsigned int getChangeStart() const; unsigned int getChangeEnd() const; private: void setIniLevel (); void setChange(unsigned int from, unsigned int to); void reShape (unsigned int at); void reShape (); int getNonTransparentBefore (unsigned int index) const; int getNonTransparentAfter (unsigned int index) const; bool isLineBreak(unsigned int index) const; void resolveLevels(); void expand() const; bool visible; bool reordered; bool selected; bool underlined; bool expanded; SS_Embedding embedding; unsigned int iniLevel; SVector glyphs; SV_UCS4 ucs4Glyphs; SV_UINT logical; SS_ParaSep paraSep; SV_UCS4 lineBreaks; unsigned int changeStart; unsigned int changeRemaining; }; unsigned int SParagraph::size() const { if (!expanded) expand(); return glyphs.size(); } unsigned int SParagraph::softSize() const { if (!expanded) return ucs4Glyphs.size(); return glyphs.size(); } SS_UCS4 SParagraph::softCharAt(unsigned int pos) const { if (!expanded) return ucs4Glyphs[pos]; return glyphs.peek(pos)->getFirstChar(); } /** * Hopefully noone will do this without expending * thus calling size() */ const SGlyph& SParagraph::operator [] (unsigned int index) const { if (!expanded) expand(); return glyphs[index]; } /** * Hopefully noone will do this without expending * thus calling size() */ const SGlyph* SParagraph::peek (unsigned int index) const { if (!expanded) expand(); return glyphs.peek(index); } // // Return true if the line has been split into glpyhs // already. getChars () will not touch expanded flag, // you can use that to safely get chars without // forcing expansion for unexpanded lines. // bool SParagraph::isExpanded () const { return expanded; } #endif /* SParagraph_h */ ./stoolkit/SUniMap.cpp0000644000175000017500000005124610434025610014730 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SUniMap.h" #include "stoolkit/SBMap.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SIO.h" #include "stoolkit/SUtil.h" #include static SS_UCS4 getMaxBytes (unsigned int inp); /** * A unicode Map. It maps SV_UCS2 to SV_UCS4 or SString<->SV_UCS4 * It is generally useful when mapping UCS4 to Font encodings and * Keyboard trasliterations to unicode strings. * * This is a tamed version of SBMap. * @author: Gaspar Sinai * @version: 2000-05-12 */ class SUniMapDelegate { public: SUniMapDelegate(const SString& name, SBMap* _map); ~SUniMapDelegate(); /* these routines supposed to speed it up */ SString name; int count; SBMap* map; }; /** * We use the delegate to hide the ugly SBMap and * maintain one reference in a chache */ SUniMapDelegate::SUniMapDelegate(const SString& n, SBMap* _map) { name = n; map = _map; count = 1; } SUniMapDelegate::~SUniMapDelegate() { delete map; } typedef SBinHashtable SUniMapHashtable; /* * This canche is consulted when a new map is requested. */ static SUniMapHashtable mapCache; static SStringVector searchPath("/,maps,../maps,/etc/maps,../mytool/uni,../mytool/kmap,../mytool/mys,mytool/uni,mytool/kmap,mytool/mys,uni,kmap,mys"); static void _uniAppend (SString* s, SS_UCS4 u); void SUniMap::setPath (const SStringVector& l) { searchPath = l; } /** * search files for property in order and set the path to the * property. Always add YUDIT_DATA/data */ void SUniMap::guessPath (const SStringVector& files, const SString& property) { SStringVector outDataPath; for (unsigned int i=0; icount++; delegate = d; ok = true; setModel(1, 2, 2, 1); return; } SString n (name); n.append (".my"); SFile f(n, searchPath); if (f.size() <= 0) return ; SFileImage i = f.getFileImage(); if ( i.size() <= 0) return; SBMap* b = new SBMap(); CHECK_NEW (b); if (!b->setFileImage(i)) { delete b; return; } SUniMapDelegate* ud = new SUniMapDelegate(name, b); CHECK_NEW (ud); delegate = ud; mapCache.put (name, ud); setModel(1, 2, 2, 1); bumap = (ud->map->isUMap()) ? ud->map : 0; ok = true; } /** * Allocates new models * @param din is the decode input size 0=SS_WORD8 1=SS_WORD16 3=SS_WORD32 * @param dout is the decode output size * @param ein is the encode input size * @param eout is the encode output size */ void SUniMap::setModel(int din, int dout, int ein, int eout) { SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; eindex = indexOf(true); dindex = indexOf(false); emodel = 0; dmodel = 0; if (eindex>=0) { /* From 4 byte to 2 byte */ emodel = new SStateModel (ein, map->getInWordSize (eindex), map->getOutWordSize (eindex), eout); emodel4 = new SStateModel (2, map->getInWordSize (eindex), map->getOutWordSize (eindex), 2); } if (dindex>=0) { /* From 2byte to 4 byte */ dmodel = new SStateModel (din, map->getInWordSize (dindex), map->getOutWordSize (dindex), dout); dmodel4 = new SStateModel (2, map->getInWordSize (dindex), map->getOutWordSize (dindex), 2); } } /** * Copy an existing map * @param m is an existing map */ SUniMap::SUniMap (const SUniMap &m) { dmodel = 0; emodel = 0; dmodel4 = 0; emodel4 = 0; delegate = 0; dindex = -1; eindex = -1; bumap = m.bumap; if (!m.isOK()) { ok = false; } else { SUniMapDelegate* d = (SUniMapDelegate*) m.delegate; if (d) { d->count++; delegate = d; dindex = m.dindex; eindex = m.eindex; setModel(1, 2, 2, 1); } ok = true; } } /** * Assign a map */ SUniMap& SUniMap::operator = (const SUniMap &m) { if (&m == this) return *this; derefer(); dmodel = 0; emodel = 0; dmodel4 = 0; emodel4 = 0; delegate = 0; dindex = -1; eindex = -1; bumap = m.bumap; reset(); if (!m.isOK()) { ok = false; } else { SUniMapDelegate* d = (SUniMapDelegate*) m.delegate; if (d) { d->count++; delegate = d; dindex = m.dindex; eindex = m.eindex; setModel(1, 2, 2, 1); } ok = true; } return *this; } SUniMap::~SUniMap() { if (delegate !=0) derefer(); } /** * dereference the current map */ void SUniMap::derefer() { if (isOK()) { SUniMapDelegate* d = (SUniMapDelegate*) delegate; if (d!=0) { d->count--; if (d->count==0) { // FIXME: if I delete it it gets deleted twice ! //mapCache.remove (d->name); //fprintf (stderr, "FIXME: STRANGE DELETE %*.*s\n", SSARGS(d->name)); //delete d; } if (dmodel) delete ((SStateModel*) dmodel); if (emodel) delete ((SStateModel*) emodel); if (dmodel4) delete ((SStateModel*) dmodel4); if (emodel4) delete ((SStateModel*) emodel4); } } } /** * A simplistic encoder. * @return the UCS2 value of the first decoded value or zero */ SS_UCS2 SUniMap::encode (SS_UCS4 in) { if (bumap) { if (in > 0xffff) return 0; return ((SBMap*) bumap)->encode (in); } if (!ok) return 0; if (in > 0xffff) return 0; if (delegate==0) return (SS_UCS2) in; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; SStateModel* enc = (SStateModel*) emodel; if (enc == 0) return 0; SS_UCS2 maxBytes = getMaxBytes (map->getInWordSize (eindex)); if (in > maxBytes || maxBytes==0) return 0; int len = map->encode (eindex, &in, 1, enc, 0); if (len < 0) { enc->reset(); return 0; } if (enc->out.length != 1) { enc->reset(); return 0; } SS_UCS2 retVle = enc->out.u.u16[0]; enc->reset(); return retVle; } /** * A simplistic decoder. * @return the UCS4 value of the first decoded value or zero */ SS_UCS4 SUniMap::decode (SS_UCS2 in) { if (bumap) { return ((SBMap*) bumap)->decode (in); } if (!ok) return 0; if (delegate==0) return (SS_UCS4) in; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; SStateModel* dec = (SStateModel*) dmodel; if (dec == 0) return 0; SS_UCS4 maxBytes = getMaxBytes (map->getInWordSize (dindex)); if (in > maxBytes && maxBytes == 0) return 0; int len = map->encode (dindex, &in, 1, dec, 0); if (len < 0) { dec->reset(); return 0; } if (dec->out.length != 1) { dec->reset(); return 0; } SS_UCS4 retVle = dec->out.u.u32[0]; dec->reset(); return retVle; } SObject* SUniMap::clone() const { SObject* n = new SUniMap(*this); CHECK_NEW (n); return n; } /** * @param encode is true if we are looking at the encoding map * return 0 if map was designed to accept SS_WORD8 * 1 if map was designed to accept SS_WORD16 * 2 if map was designed to accept SS_WORD32 * 3 if map was designed to accept SS_WORD64 * -1 if map is not initialized */ int SUniMap::getInWordSize (bool encode) { if (!ok) return -1; if (delegate ==0) return 1; int index = indexOf(encode); if (index < 0) return -1; SUniMapDelegate* d = (SUniMapDelegate*) delegate; return d->map->getInWordSize(index); } /** * @param encode is true if we are looking at the encoding map * return 0 if map was designed to produce SS_WORD8 * 1 if map was designed to produce SS_WORD16 * 2 if map was designed to produce SS_WORD32 * 3 if map was designed to produce SS_WORD64 * -1 if map is not initialized */ int SUniMap::getOutWordSize (bool encode) { if (!ok) return -1; if (delegate ==0) return 1; int index = indexOf(encode); if (index < 0) return -1; SUniMapDelegate* d = (SUniMapDelegate*) delegate; return d->map->getOutWordSize(index); } /** * Get the index in the map * @param encode is true if we are looking at the encoding map * @return the index in the SBMap or -1 */ int SUniMap::indexOf(bool encode) const { SUniMapDelegate* d = (SUniMapDelegate*) delegate; if (d==0) return -1; SBMap *map = d->map; for (int i=0; igetSize(); i++) { if (map->getType(i)==(encode ? SBMap::SBMap_ENCODE : SBMap::SBMap_DECODE)) { return i; } } return -1; } /** * return true if the map is 'usable' * a useless map is a map that could not be found. */ bool SUniMap::isOK() const { return ok; } void SUniMap::reset () { reset (false); reset (true); } void SUniMap::reset(bool en) { if (en) { ucs4vIn.clear(); sstringOut.clear(); } else { sstringIn.clear(); ucs4vOut.clear(); } } void SUniMap::undo (bool encode) { if (encode) { if (ucs4vIn.size() > 0) ucs4vIn.truncate(ucs4vIn.size()-1); } else { if (sstringIn.size() > 0) sstringIn.truncate(sstringIn.size()-1); } } /** * Decode the input string * if in.size() is zero flush it. * It can return a zero sized array, in this case more input is needed. */ const SV_UCS4& SUniMap::decode (const SString& in) { ucs4vOut.clear (); sstringIn.append(in); unsigned int i; if (dmodel==0) { for (i=0; ireset(); SUniMapDelegate* delg = (SUniMapDelegate*) delegate; SBMap* map = (delg==0 || model==0) ? 0 : delg->map; // Now go in circles and append till matches. int st; unsigned int fullsize = buffer.size(); i=0; while (ireset (); int more = (in.size()>0)?1:0; /* imposing a limit of 10 because map->circle sucks. */ /* FIXME we really need a better map and encoding */ unsigned int bsz = ((int)(buffer.size()-i) > 10) ? 10 : buffer.size()-i; st = map->circle (SBMap::SBMap_DECODE, &buffer.array()[i], (int)(bsz), model, more); } if (st == SS_ACCEPT) { model->reset (); int more = (in.size()>0)?1:0; st = map->circle (SBMap::SBMap_DECODE, &buffer.array()[i], (int)(buffer.size()-i), model, more); if (st == SS_ACCEPT) { break; } } // Append stuff as it is and crunch buffer. if (st == SS_REJECT) { ucs4vOut.append ((SS_UCS4)buffer[i]); i++; } // There is a match here. append the output and // Shift the input. else if (st>0) { ucs4vOut.append ((SS_UCS4*)model->out.u.u32, model->out.length); while (st--) { i++; } } // Provision for the bad maps. else { //fprintf (stderr, "SUniMap:: decode bad map zero matched!\n"); ucs4vOut.append ((SS_UCS4)buffer[i]); i++; } } SString vrest; while (ireset(); SUniMapDelegate* delg = (SUniMapDelegate*) delegate; SBMap* map = (delg==0 || model==0) ? 0 : delg->map; // Now go in circles and append till matches. int st; unsigned int fullsize = ucs4vIn.size(); i=0; while (ireset (); int more = (in.size()>0)?1:0; /* check if map can possible handle our input */ SS_UCS4 maxBytes = getMaxBytes (map->getInWordSize (eindex)); unsigned int k; for (k=i; k maxBytes) break; if ((k-i) >= 10) break; /* FIXME self-imposed limit - map->circle sucks */ } if (k==i) { st = SS_REJECT; } else { st = map->circle (SBMap::SBMap_ENCODE, &ucs4vIn.array()[i], (int)(k-i), model, more); } } if (st == SS_ACCEPT) { /* remove self-imposed limit */ model->reset (); int more = (in.size()>0)?1:0; /* check if map can possible handle our input */ SS_UCS4 maxBytes = getMaxBytes (map->getInWordSize (eindex)); unsigned int k; for (k=i; k maxBytes) break; } /* k==i was checked before */ st = map->circle (SBMap::SBMap_ENCODE, &ucs4vIn.array()[i], (int)(k-i), model, more); if (st == SS_ACCEPT) { break; } } // Append stuff as it is and crunch buffer. if (st == SS_REJECT) { _uniAppend (&sstringOut, ucs4vIn[i]); i++; } // There is a match here. append the output and // Shift the input. else if (st>0) { // Model is not char ! for (int j = 0; jout.length; j++) { _uniAppend (&sstringOut, (SS_UCS4) model->out.u.u16[j]); } while (st--) { i++; } } // Provision for the bad maps. else { fprintf (stderr, "SUniMap:: decode bad map zero matched!\n"); _uniAppend (&sstringOut, ucs4vIn[i]); i++; } } SV_UCS4 vrest; while (iappend (&u8, 1); } else if (u < 0x10000) { char u16[32]; sprintf (u16, "\\u%04x", (unsigned int) u); s->append (u16); } else { char u32[32]; sprintf (u32, "\\U%04x", (unsigned int) u); s->append (u32); } } /** * Lift off whetever can be decoded/encoded * This version does not work with circular maps. * @param in is the input * @param inindex is the starting point to process input. * @param out is the output. It can be null. * @praram decode is true if we are decoding. * @return the new index after liftoff. */ unsigned int SUniMap::lift (const SV_UCS4& in, unsigned int inindex, bool isdecode, SV_UCS4* out) { if (!ok) return inindex; if (delegate==0) return inindex; /* make sure we don't have too big values */ SBMap *map = ((SUniMapDelegate*) delegate)->map; int mindex = isdecode ? dindex : eindex; SS_UCS4 maxBytes = getMaxBytes (map->getInWordSize (mindex)); if (in[inindex] > maxBytes || maxBytes == 0) return inindex; if (mindex < 0) return inindex; SStateModel* model = isdecode ? (SStateModel*) dmodel4 : (SStateModel*) emodel4; model->reset(); unsigned int realend = in.size(); int more = 1; int status = SS_ACCEPT; unsigned int i; for (i=inindex; status == SS_ACCEPT && i < realend; i++) { /* more == 0 would return - correctly, the whole string */ if (i+1>=realend || in[i+1] > maxBytes) { more = 0; } status = map->encode (mindex, &in.array()[i], 1, model, more); } if (status <= 0) return inindex; if (out == 0) return inindex + (unsigned int) status; for (i=0; (int)i< model->out.length; i++) { out->append ((SS_UCS4)(model->out.u.u32[i])); } return inindex + (unsigned int) status; } /** * return key value map to see what decodes to what * @param key will contain the keys * @param value will contain the values * @param _size is the maximum size of returned arrays * @return the real size of the arrays. */ unsigned int SUniMap::getDecoderMap (SStringVector* key, SStringVector* value, unsigned int _size) { if (delegate==0) return 0; /* make sure we don't have too big values */ SBMap *map = ((SUniMapDelegate*) delegate)->map; return map->getDecoderMap (key, value, _size); } /** * return true if this is an UMap. * umaps are generally faster. */ bool SUniMap::isUMap() const { if (delegate ==0) return true; return ((((SUniMapDelegate*) delegate)->map)->isUMap() !=0); } /** * return true if this is a type 4 bumap */ bool SUniMap::isClustered() const { if (delegate ==0) return true; return ((((SUniMapDelegate*) delegate)->map)->mapType==4); } /* For maps with holes */ unsigned int SUniMap::getDecodePosition (SS_UCS4 key) { if (dindex < 0) return 0; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; return map->getLinearPosition((unsigned int)dindex, key); } SS_UCS4 SUniMap::getDecodeKey (unsigned int position) { if (dindex < 0) return 0; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; return map->getLinearKey((unsigned int)dindex, position); } SS_UCS4 SUniMap::getDecodeValue (unsigned int position) { if (dindex < 0) return 0; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; return map->getLinearValue((unsigned int)dindex, position); } unsigned int SUniMap::getEncodePosition (SS_UCS4 key) { if (eindex < 0) return 0; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; return map->getLinearPosition((unsigned int)eindex, key); } SS_UCS4 SUniMap::getEncodeKey (unsigned int position) { if (eindex < 0) return 0; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; return map->getLinearKey((unsigned int)eindex, position); } SS_UCS4 SUniMap::getEncodeValue (unsigned int position) { if (eindex < 0) return 0; SUniMapDelegate* d = (SUniMapDelegate*) delegate; SBMap *map = d->map; return map->getLinearValue((unsigned int)eindex, position); } /** * Convert mys length to max value. * return 0 on fail. */ static SS_UCS4 getMaxBytes (unsigned int inp) { /* FIXME: maxBytes algorithm is fixed here. please fix it * in decode and encode - look for maxBytes. */ switch (inp) { case 0: return (0xff); case 1: return (0xffff); case 2: return (0xffffffff); } /* don't support 64 bit */ return 0; } ./stoolkit/SLineCurve.cpp0000644000175000017500000001027610434025610015431 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SLineCurve.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUtil.h" /** * A stroke is a path, a collection of SLocation points. * This object provides extra functionality: * it caches the length of the path as well as the length * distance between elements. Also it can calculate the * closest distance between two points. * Gaspar Sinai */ /** * Create an empty stroke. */ SLineCurve::SLineCurve (void) { } /** * Shallow copy this stroke. */ SLineCurve::SLineCurve (const SLineCurve& d) { /* no need to check if we are 'd' */ vectors = d.vectors; lengths = d.lengths; } /** */ SLineCurve SLineCurve::operator=(const SLineCurve& d) { if (&d == this) return *this; vectors = d.vectors; lengths = d.lengths; return *this; } SLineCurve::~SLineCurve () { /* nothing to do */ } /** * Obligatory SObject stuff. */ SObject* SLineCurve::clone() const { SLineCurve* s = new SLineCurve (*this); CHECK_NEW (s); return s; } /** * @return the full length of the path - open path. */ unsigned int SLineCurve::length () const { return length (0, lengths.size()-1); } /** * Get the length of this segment. * @param segment is greater than zero and less than size * at least two elements to calculate this. */ unsigned int SLineCurve::length (unsigned int segment) const { return length (segment-1, segment); } /** * Get the length from and not including to. * @param from start point * @param to end point. * Points can not be reversed. */ unsigned int SLineCurve::length (unsigned int from, unsigned int to) const { return lengths[to] - lengths[from]; } /** * Calculate the distance between the first and the last point */ unsigned int SLineCurve::distance () const { if (vectors.size()==0) return 0; return distance (0, vectors.size()-1); } /** * Calculate the shortest distance between two points. * This is ALWAYS less or equal to length() * @param p0 start point * @param p1 end point * Points can not be reversed. */ unsigned int SLineCurve::distance (unsigned int p0, unsigned int p1) const { const SLocation diff = vectors[p1] - vectors[p0]; return diff.distance(); } const SLocation& SLineCurve::operator[] (unsigned int index) const { return vectors[index]; } /** * Get a vector pointing from -> to * @param p0 start point * @param p1 end point * Points can not be reversed. */ SLocation SLineCurve::getVector (unsigned int p0, unsigned int p1) const { return SLocation (vectors[p1] - vectors[p0]); } unsigned int SLineCurve::size() const { return vectors.size(); } void SLineCurve::clear() { vectors.clear(); lengths.clear(); } /** * Append a new location to this line of points. * check consistency of lengths too, remember * when a vector's length is calculated it is for sure * less than the real length, because of the rounding * in ss_sqrtlong routine used by SLocation. */ void SLineCurve::append (const SLocation& l) { vectors.append (l); /* is this the only one ? */ if (vectors.size()==1) { lengths.append (0); return; } unsigned int fulllengthnow = length (); unsigned int diagonal = distance (); /* vectors are already updated */ unsigned int len = distance (vectors.size()-2, vectors.size()-1); /* sanity - length can not decrease */ if (fulllengthnow + len < diagonal) { // Notice len can only be positive or zero so // we for sure append a positive number lengths.append (diagonal); return; } lengths.append (fulllengthnow + len); } ./stoolkit/SCluster.h-0000644000175000017500000000772110434052022014676 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SCluster_h #define SCluster_h #include "stoolkit/STypes.h" #define SD_YUDIT 0 /* ligature 0x8001xxxx */ #define SD_DEVANAGARI 1 /* ligature 0x8002xxxx */ #define SD_BENGALI 2 /* ligature 0x8003xxxx */ #define SD_GURMUKHI 3 /* ligature 0x8004xxxx */ #define SD_GUJARATI 4 /* ligature 0x8005xxxx */ #define SD_ORIYA 5 /* ligature 0x8006xxxx */ #define SD_TAMIL 6 /* ligature 0x8007xxxx */ #define SD_TELUGU 7 /* ligature 0x8008xxxx */ #define SD_KANNADA 8 /* ligature 0x8009xxxx */ #define SD_MALAYALAM 9 /* ligature 0x800axxxx */ #define SD_SINHALA 10 /* Hangul */ #define SD_HANGUL_JAMO 11 /* Precomposed Unicode JAMOS */ #define SD_HANGUL_PREC 12 /* Thai, Lao and Tibetan will need positioning */ #define SD_THAI 13 #define SD_LAO 14 #define SD_TIBETAN 15 /* complex combining ligature a ligature that has combining marks in the middle */ #define SD_COMBINING_LIGATURE 16 /* bengali Ra+Ya in the beginning of the word. */ #define SD_BENGALI_BEGIN 17 #define SD_SCRIPT_MAX 18 /* Arabic and Syriac shapes A000[1234]000. */ /* if we are not this lucky we would need one for each */ #define SD_AS_SHAPES 0x2000 /* Escape 9fffffxx */ #define SD_AS_LITERAL 0x1fff /* get the name of OTF font shaping feature name */ const char* getShapeCode (unsigned int icode); /** * This one generates ligature on the non-displayable cluster */ unsigned int getCluster (const SV_UCS4& ucs4, unsigned int index, SV_UCS4* ret, int* finished=0); SS_UCS4 addCombiningLigature (const SS_UCS4* unicode, unsigned int ul, const SS_UCS4* ligAndMarks, unsigned int cl); void putLigatureUnicode (SS_UCS4 ligature, const SS_UCS4* code, unsigned int size); void putLigatureCluster (SS_UCS4 ligature, const SS_UCS4* code, unsigned int size); unsigned int getLigatureUnicode (SS_UCS4 ligature, SS_UCS4* buffer); unsigned int getLigatureCluster (SS_UCS4 ligature, SS_UCS4* buffer); bool isLigature (SS_UCS4 _comp); /* get script name or null */ const char* getLigatureScript (SS_UCS4 comp); int getLigatureScriptCode (SS_UCS4 comp); int getCharType (SS_UCS4 unchar); #define SD_JAMO_X 0 /* non-jamo */ #define SD_JAMO_L 1 /* choseong: leanding consonants or syllable initials */ #define SD_JAMO_V 2 /* jungseong: vowels or syllable-peak characters */ #define SD_JAMO_T 3 /* jongseong: trailing consonants or syllable final characters */ int getJamoClass (SS_UCS4 uc); /* get the index */ int getUnicodeScript (SS_UCS4 comp); bool isCoveredScipt (SS_UCS4 comp, int scipt); SS_UCS4 getHalant (int index); SS_UCS4 getLRVowelLeft (SS_UCS4 u); SS_UCS4 getLRVowelRight (SS_UCS4 u); /** * Some encoders will give back values in yudit ligature range. * Expand those ligatures. */ void expandYuditLigatures (SV_UCS4* decd); #define SD_INDIC_CONSONANT_BELOW_BASE 0x1 #define SD_INDIC_HALANT 0x2 #define SD_INDIC_INDEP_VOWEL 0x3 #define SD_INDIC_LEFT_VOWEL 0x4 #define SD_INDIC_RIGHT_VOWEL 0x5 #define SD_INDIC_TOP_VOWEL 0x6 #define SD_INDIC_BOTTOM_VOWEL 0x7 #define SD_INDIC_SIGN 0x8 #define SD_INDIC_ZWJ 0x9 #define SD_INDIC_ZWNJ 0xa #define SD_INDIC_NUKTA 0xc #define SD_INDIC_MODIFIER 0xd #define SD_INDIC_LEFT_RIGHT_VOWEL 0xe #define SD_INDIC_CONSONANT_BASE 0xf #define SD_INDIC_CONSONANT_POST_BASE 0x10 #define SD_INDIC_CONSONANT_DEAD 0x11 #endif /* SCluster_h */ ./stoolkit/SDimension.h0000644000175000017500000000307710434025610015130 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SDimension_h #define SDimension_h #include "stoolkit/SString.h" class SDimension { public: SDimension (void); SDimension (int width, int height); SDimension (const SString& d); SDimension (const SDimension& d); SDimension operator = (const SDimension& d); SDimension operator - (const SDimension& d) const; SDimension operator * (const SDimension& d) const; SDimension operator * (unsigned int scale) const; SDimension operator / (const SDimension& d) const; SDimension operator + (const SDimension& d) const; bool operator == (const SDimension& d) const; bool operator != (const SDimension& d) const; ~SDimension (); SDimension minimize (const SDimension & d) const; SDimension maximize (const SDimension & d) const; unsigned int width; unsigned int height; }; #endif /* SDimension_h */ ./stoolkit/SEventBSD.cpp0000644000175000017500000006166210434025610015154 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SEvent.h" #include "SEventBSD.h" #include "SExcept.h" #include #include #include #ifndef USE_WINAPI #include #include #include #include #endif /* ! USE_WINAPI */ #include #ifndef USE_WINAPI #include #include #else #include #include #endif #ifdef __sun__ #ifndef __svr4__ extern "C" { void bzero(void *s, size_t n); int gettimeofday(struct timeval *, void *); int select (int width, fd_set* readfds, fd_set* writefds, fd_set* exceptfds, struct timeval* timeout); } #endif #endif #ifdef USE_WINAPI WSADATA* wsaData=0; WSADATA wsaDataStruct; #endif int sEventBSDSignal =0; void initSignals (bool init); static long substract (const struct timeval& from, const struct timeval& what); /* * Make these part of the class if multi-instance is needed */ class SEventDelegate { public: SEventDelegate(void) {} ~SEventDelegate() {} struct timeval baseTime; fd_set readFD; fd_set writeFD; }; #ifdef USE_WINAPI // Hacked for winapi int gettimeofday (struct timeval* tv, void* tz); int initsockets(bool init); #define SBAD_SOCKET 0 #define EWOULDBLOCK TRY_AGAIN #else #define SBAD_SOCKET -1 #endif int selectHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t); int nonblockHack (long id); /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the default unix event handler implementation. */ SClient::SClient (SEventSource* s, SEventTarget* t, ClientType _type) : data() { source = s; target = t; type = _type; value = s->getId(); progress = 0; } SClient::ClientType SClient::getType () { return type; } SClient::~SClient() { } /** * This is a single implementation of the event handler */ SEventBSD::SEventBSD(void) : SEventHandlerImpl() { delegate = new SEventDelegate(); roundRobin = 0; up = true; readMax = 0; writeMax = 0; initSignals(true); remakeWriteFd(); remakeReadFd(); gettimeofday (&((SEventDelegate*)delegate)->baseTime, 0); seedTimer(); CHECK_NEW (delegate); } /** * The tables will clean up. */ SEventBSD::~SEventBSD() { initSignals(false); delete (((SEventDelegate*)delegate)); } /** * Add a timer to the list of event sources. * @param tim is the timer event soruce * @param t is the target of events */ void SEventBSD::addTimer (STimer* tim, SEventTarget* t) { if (sourceHashtable.get (tim)) { fprintf (stderr, "attempted to add save event source (timer) twice.\n"); return; } SEventSource* s = tim; addTimer (s, t); } void SEventBSD::addTimer (SEventSource* s, SEventTarget* t) { SClient* c = new SClient (s, t, SClient::TIMER); CHECK_NEW (c); /* Check if there is already somebody there...*/ targetHashtable.put (t, c, false); sourceHashtable.put (s, c, false); clientHashtable.put((const SString&)c->id, c); struct timeval timenow; struct timeval timeout; gettimeofday (&timenow, 0); // If time is set back if (timenow.tv_sec < ((SEventDelegate*)delegate)->baseTime.tv_sec) { ((SEventDelegate*)delegate)->baseTime.tv_sec = timenow.tv_sec; ((SEventDelegate*)delegate)->baseTime.tv_usec = timenow.tv_usec; } timeout.tv_sec = timenow.tv_sec; timeout.tv_usec = timenow.tv_usec; timeout.tv_sec += ((unsigned long)c->value)/1000; timeout.tv_usec += (((unsigned long)c->value)%1000) * 1000; timeout.tv_sec += timeout.tv_usec / 1000000; timeout.tv_usec = timeout.tv_usec % 1000000; long to = substract (timeout, ((SEventDelegate*)delegate)->baseTime); unsigned int p = timeoutVector.appendSorted (to); if (to != timeoutVector[p] && timeoutClient.size() + 1 != timeoutVector.size()) { fprintf (stderr, "SEventBSD: bad news for timers\n"); } timeoutClient.insert (p, c); //fprintf (stderr, "SEventBSD: add timer %u\n", p); } /** * Add a server to the list of event sources. * @param tim is the server event source * @param t is the target of events */ void SEventBSD::addServer (SServerStream* st, SEventTarget* t) { if (sourceHashtable.get (st)) { fprintf (stderr, "attempted to add save event source (server) twice.\n"); return; } SEventSource* s = st; SClient* c = new SClient (s, t, SClient::SERVER); CHECK_NEW (c); nonblockHack (c->value); /* Check if there is already somebody there...*/ targetHashtable.put (t, c, false); sourceHashtable.put (s, c, false); clientHashtable.put ((const SString&)c->id, c); unsigned int p = readVector.appendSorted (c->value); readClient.insert (p, c); remakeReadFd(); } /** * Add an input stream to the list of event sources. * @param ins is the input event source * @param t is the target of events */ void SEventBSD::addInput (SInputStream* ins, SEventTarget* t) { if (sourceHashtable.get (ins)) { fprintf (stderr, "attempted to add save event source (input) twice.\n"); return; } SEventSource* s = ins; SClient* c = new SClient (s, t, SClient::READER); CHECK_NEW (c); nonblockHack (c->value); /* Check if there is already somebody there...*/ targetHashtable.put (t, c, false); sourceHashtable.put (s, c, false); clientHashtable.put((const SString&)c->id, c); unsigned int p = readVector.appendSorted (c->value); readClient.insert (p, c); remakeReadFd(); } /** * Add a job to the list of event sources. * @param sjob is the input event source * @param t is the target of events */ void SEventBSD::addJob (SJob* sjob, SEventTarget* t) { if (sourceHashtable.get (sjob)) { fprintf (stderr, "attempted to add save event source (input) twice.\n"); return; } SEventSource* s = sjob; SClient* c = new SClient (s, t, SClient::JOB); CHECK_NEW (c); targetHashtable.put (t, c, false); sourceHashtable.put (s, c, false); clientHashtable.put((const SString&)c->id, c); unsigned int p = jobVector.appendSorted (c->value); //fprintf (stderr, "SEventBSD: addjob %u - full=%u\n", p, jobClient.size()); if (c->value != jobVector[p] && jobClient.size() + 1 != jobVector.size()) { fprintf (stderr, "SEventBSD: bad news for jobs\n"); } jobClient.insert (p, c); } /** * Add an output stream to the list of event sources. * @param outs is the input event source * @param t is the target of events */ void SEventBSD::addOutput (SOutputStream* outs, SEventTarget* t, const SString& m) { if (sourceHashtable.get (outs)) { fprintf (stderr, "attempted to add save event source (output) twice.\n"); return; } SEventSource* s = outs; SClient* c = new SClient (s, t, SClient::WRITER); CHECK_NEW (c); c->data = m; nonblockHack (c->value); /* Check if there is already somebody there...*/ targetHashtable.put (t, c, false); sourceHashtable.put (s, c, false); clientHashtable.put((const SString&)c->id,c); unsigned int p = writeVector.appendSorted (c->value); writeClient.insert (p, c); remakeWriteFd(); } /** * Remove all wires that connect the target to an event source * @param t is the target */ void SEventBSD::remove (SEventTarget* t) { while (true) { SClient* cl = targetHashtable.get (t); if (cl == 0) { //fprintf (stderr, "SEventBSD::remove - target already got removed.\n"); return; } remove (cl); } } /** * Remove all wires that connect the target to an event source * @param s is the source */ void SEventBSD::remove (SEventSource* s) { while (true) { SClient* cl = sourceHashtable.get (s); if (cl == 0) { //fprintf (stderr, "SEventBSD::remove - source already got removed.\n"); return; } remove (cl); } } /** * remove the client from sources * This is used internally. */ void SEventBSD::remove (SClient* c) { if (c==0) { fprintf (stderr, "SEventBSD::remove tried to remove zero client.\n"); return; } if (clientHashtable.get ((const SString&)c->id)==0) return; int cindex=-1; switch (c->getType()) { case SClient::WRITER: cindex=writeClient.find (c); //fprintf (stderr, "removing writer %u\n", cindex); if (cindex<0) { /* this should not be an error - it removed itself -*/ //fprintf (stderr, "SEventBSD::remove can not find writer.\n"); remakeWriteFd(); break; } writeVector.remove (cindex); writeClient.remove (cindex); remakeWriteFd(); break; case SClient::READER: case SClient::SERVER: cindex=readClient.find (c); //fprintf (stderr, "removing reader %u\n", cindex); if (cindex<0) { /* this should not be an error - it removed itself -*/ //fprintf (stderr, "SEventBSD::remove can not find reader.\n"); //fprintf (stderr, "SEventBSD::readvector:%u readClient:%u.\n", // readVector.size(), readClient.size()); remakeReadFd(); break; } readVector.remove (cindex); readClient.remove (cindex); remakeReadFd(); break; case SClient::TIMER: cindex=timeoutClient.find (c); //fprintf (stderr, "removing timer %u\n", cindex); if (cindex<0) { /* this should not be an error - it removed itself -*/ fprintf (stderr, "SEventBSD::remove can not find timer.\n"); break; } timeoutVector.remove (cindex); timeoutClient.remove (cindex); break; case SClient::JOB: cindex=jobClient.find (c); //fprintf (stderr, "removing job %u\n", cindex); if (cindex<0) { /* this should not be an error - it removed itself -*/ //fprintf (stderr, "SEventBSD::remove can not find job.\n"); break; } jobVector.remove (cindex); jobClient.remove (cindex); break; } if (cindex < 0) return; /* if there are multiple matches, search the one that needs to be removed. */ SClientVector addbackTarget; /** targets **/ while (targetHashtable.get (c->target)) { SClient* ab = targetHashtable.get (c->target); if (ab == c) { targetHashtable.remove (c->target); break; } addbackTarget.append (ab); targetHashtable.remove (c->target); } unsigned int i; /* adding back stuff. */ for (i=0; itarget, addbackTarget[i], false); } /** sources **/ SClientVector addbackSource; while (sourceHashtable.get (c->source)) { SClient* ab = sourceHashtable.get (c->source); if (ab == c) { sourceHashtable.remove (c->source); break; } addbackSource.append (ab); sourceHashtable.remove (ab->source); } for (i=0; isource, addbackSource[i], false); } clientHashtable.remove ((const SString&)c->id); delete c; return; } /** * This is to remake the fd's */ void SEventBSD::remakeWriteFd() { FD_ZERO (&((SEventDelegate*)delegate)->writeFD); writeMax = 0; unsigned int i; for (i = 0; iwriteFD); } } if (i>0) writeMax = (int)writeVector[i-1] +1; } /** * Remaking the read fd's */ void SEventBSD::remakeReadFd() { FD_ZERO (&((SEventDelegate*)delegate)->readFD); readMax = 0; unsigned int i; for (i = 0; ireadFD); } } if (i>0) readMax = (int)readVector[i-1] +1; } void SEventBSD::start() { while (next()); } void SEventBSD::exit() { up = false; } /** * Process a next event. Return false if exit was called. */ bool SEventBSD::next() { if (!up) { #ifndef USE_WINAPI fprintf (stderr, "SEventBSD::next - down...\n"); #endif return false; } #ifdef USE_WINAPI int dummy; dummy = initsockets (true); if (dummy < 0) { fprintf (stderr, "SEventBSD::next - no socket...\n"); return false; } #endif unsigned int i; struct timeval timeout; struct timeval timenow; struct timeval* tp= 0; //fprintf (stderr, "readvector=%u writeVector=%u timeoutVector=%u jobVector=%u\n", //readVector.size(), writeVector.size(), timeoutVector.size(), jobVector.size()); if (readVector.size() == 0 && writeVector.size()==0 && timeoutVector.size() == 0 && jobVector.size()==0) { fprintf (stderr, "SEventBSD::next - nothing to do\n"); return false; } int more = true; // Get the jobs done first if (jobClient.size() != 0) { // This is no rocket science here... Just a job while (more && jobVector.size()) { more = false; roundRobin++; unsigned int k = roundRobin % jobVector.size(); SClient* c = jobClient[k]; SJob *j= (SJob*)c->source; SEventTarget *t=c->target; remove (c); int status = j->run(); t->done(j); if (status>0) more = true; } } /* jobs can affect up flag */ if (!up) { #ifndef USE_WINAPI fprintf (stderr, "SEventBSD::next - down...\n"); #endif return false; } // Create a timeout if (timeoutVector.size() != 0) { gettimeofday (&timenow, 0); // If time is set back if (timenow.tv_sec < ((SEventDelegate*)delegate)->baseTime.tv_sec) { ((SEventDelegate*)delegate)->baseTime.tv_sec = timenow.tv_sec; ((SEventDelegate*)delegate)->baseTime.tv_usec = timenow.tv_usec; } long diff = timeoutVector[0] - substract (timenow, ((SEventDelegate*)delegate)->baseTime); unsigned long next = (unsigned long) diff; if (diff < 0) { next = 0; } timeout.tv_sec = next/1000; timeout.tv_usec = (next%1000) * 1000; tp = &timeout; } fd_set ro; fd_set wo; memcpy (&ro, &((SEventDelegate*)delegate)->readFD, sizeof (fd_set)); memcpy (&wo, &((SEventDelegate*)delegate)->writeFD, sizeof (fd_set)); //Does not always get the SIGPIPE on Linux Alpha //fprintf (stderr, "Before select %d %d\n", FD_ISSET (5, &wo), FD_ISSET (5, &ro)); //fprintf (stderr, "s=%u %u %u %u\n", // readVector.size(), writeVector.size(), timeoutVector.size(), // jobVector.size()); /* if (readVector.size() == 0 && writeVector.size() ==0 && timeoutVector.size() == 0) { return (jobVector.size() != 0); } */ int selected = selectHack (readMax, &ro, writeMax, &wo, 0, 0, tp); //fprintf (stderr, "After select %d %d\n", FD_ISSET (4, &wo), FD_ISSET (5, &ro)); #ifdef USE_WINAPI /* -2 is windows event */ if (selected == -2) { return true; } #endif if (selected == -1) { #ifdef USE_WINAPI int last = WSAGetLastError(); fprintf (stderr, "SEventBSD:select ERROR %d\n", last); #endif return false; } /* * Timer event */ if (selected == 0) { if (timeoutClient.size() ==0) { fprintf (stderr, "unexpected timeout in : SEventBSD::next\n"); } else { // FIXME: something is wrong with this array. // maybe it is the sorted nature. SClient* c = timeoutClient[0]; SEventSource *s=c->source; SEventTarget *t=c->target; SString id = SString((const SString&)c->id); if (clientHashtable.get (id)!=0) { if (!t->timeout(s)) { if (clientHashtable.get (id)!=0) { remove (c); } } else { if (clientHashtable.get (id)!=0) { remove (c); addTimer (s, t); } } } else { fprintf (stderr, "SEventBSD: miracle happened with timer...\n"); timeoutVector.remove (0); timeoutClient.remove (0); } //return true; } } // See sockets. Let's see reading... for (i=0; isource; SEventTarget *t=c->target; if (c->getType()==SClient::SERVER) { if (!t->serve (s)) { remove (c); } FD_CLR (fd, &ro); break; } if (t->readable(s)==0) { FD_CLR (fd, &ro); continue; } char* buffer = new char[4096]; CHECK_NEW (buffer); int progress = 0; int n; #ifdef USE_WINAPI n = recv(fd, &buffer[progress], 4096, 0); #else n = ::read(fd, &buffer[progress], 4096); #endif if (n<0 && (errno == EINTR || errno==EAGAIN || errno==EWOULDBLOCK)) n = 0; if (n<0) { remove (c); t->error(s); delete buffer; break; } else if (!sendData(c, buffer, n)) { remove (c); delete buffer; break; } delete buffer; FD_CLR (fd, &ro); } } // See sockets. Let's see writing... for (i=0; isource; SEventTarget *t=c->target; // finally... int n; sEventBSDSignal = 0; #ifdef USE_WINAPI n = ::send(fd, &c->data.array()[c->progress], c->data.size()-c->progress, 0); #else n = ::write(fd, &c->data.array()[c->progress], c->data.size()-c->progress); #endif if (n<0 && (errno == EINTR || errno==EAGAIN || errno==EWOULDBLOCK)) n = 0; if (sEventBSDSignal!=0) { sEventBSDSignal=0; n=-1; } if (n<0) { remove (c); t->error(s); break; } else if ((unsigned int) n == (c->data.size() - c->progress)) { remove (c); t->write(s); break; } else { c->progress += n; } FD_CLR (fd, &wo); } } return true; } /** * Send the whole buffer of new lines to client... * @return true if client wants our data. * if size is 0 then we always return true */ bool SEventBSD::sendData(SClient* c, char* buffer, int size) { SEventSource* s=c->source; SEventTarget* t=c->target; SString data (buffer, size); return (t->read (s, data)); } /** * This is needed if the app is up for more than a year * to recalculate the timeout values in the queue. */ void SEventBSD::seedTimer() { struct timeval oldTime; oldTime.tv_sec = ((SEventDelegate*)delegate)->baseTime.tv_sec; oldTime.tv_usec = ((SEventDelegate*)delegate)->baseTime.tv_usec; gettimeofday (&((SEventDelegate*)delegate)->baseTime, 0); // Base minus old //fprintf (stderr, "seed timer\n"); long diff = substract (((SEventDelegate*)delegate)->baseTime, oldTime); for (unsigned int i=0; i from.tv_sec) { unsigned long what_sec = what.tv_sec-1; unsigned long what_usec = what.tv_usec + 1000000; return -((what_sec - from.tv_sec) * 1000 + (what_usec - from.tv_usec) / 1000); } // Time is moving forward else if (what.tv_sec < from.tv_sec) { unsigned long from_sec = from.tv_sec-1; unsigned long from_usec = from.tv_usec + 1000000; return ((from_sec - what.tv_sec) * 1000 + (from_usec - what.tv_usec) / 1000); } // sec is same. Time is moving back else if (what.tv_usec > from.tv_usec) { return -((what.tv_usec - from.tv_usec) /1000); } // Time is moving forward return ((from.tv_usec - what.tv_usec) /1000); } #ifdef USE_WINAPI int (*_windowsSelectHookup)(int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t) = 0; #endif /** * This is a hack to make select work on windows too by Gaspar */ int selectHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t) { int maxFd = (readSize > writeSize) ? readSize : writeSize; maxFd = (exceptSize > maxFd) ? exceptSize : maxFd; #ifdef USE_WINAPI if (_windowsSelectHookup) { return _windowsSelectHookup(readSize, ro, writeSize, wo, exceptSize, ex, t); } // Huh, good eh? if (t!=0 && t->tv_sec==0 && t->tv_usec==0) t=0; fd_set* my_ro = (readSize==0) ? 0 : ro; if (readSize == 0 && ro != 0) FD_ZERO (ro); fd_set* my_wo = (writeSize==0) ? 0 : wo; if (writeSize == 0 && wo != 0) FD_ZERO (wo); fd_set* my_ex = (exceptSize==0) ? 0 : ex; if (exceptSize == 0 && ex != 0) FD_ZERO (ex); if (my_ro==0 && my_wo ==0) { if (t==0) return 0; DWORD millisec = (DWORD) (t->tv_sec * 1000 + t->tv_usec / 1000); // Probably this is the only case sensitive in whole windows. Sleep (millisec); return 0; } return select (maxFd, ro, wo, ex, t); #else // Works as it should on unix return select (maxFd, ro, wo, ex, t); #endif } /** * This makes socket non-blocking. Really... */ int nonblockHack (long id) { #ifdef USE_WINAPI u_long arg=1; return ioctlsocket ((int)id, FIONBIO, &arg); #else int opts = fcntl((int)id,F_GETFL); if (opts < 0) { //fprintf (stderr, "SEventBSD:nonblockHack[%d] %s\n", errno, strerror (errno)); return -1; } opts = (opts | O_NONBLOCK); if (fcntl((int)id,F_SETFL,opts) < 0) { //fprintf (stderr, "SEventBSD:nonblockHack[%d] %s\n", errno, strerror (errno)); return -1; } return 0; /* int ret; int arg = 1; ret = ioctl ((int)id, FIONBIO, (char*) &arg); if (ret!=0) { fprintf (stderr, "SEventBSD:nonblockHack[%d] %s\n", errno, strerror(errno)); } return ret; */ #endif } #ifdef USE_WINAPI /** * Poor man's getttime by Gaspar. Timezone is gmt. * @param tz is grossly ignored. * @raram tv is the returned timeval. * @return 0 */ int gettimeofday (struct timeval* tv, void* tz) { time_t now; time (&now); time_t onetick = (time_t) (1.0/difftime (now+1, now)); tv->tv_sec = now/onetick; tv->tv_usec = now%onetick; return 0; } /** * Try to initialize stuping winsock. * return 0 on fail. */ int initsockets(bool init) { static int state = 0; if (!init) { if (state = 1) { closesocket (state); WSACleanup(); wsaData = 0; return 1; } return 1; } if (state == 0) { WORD version = MAKEWORD (1,1); if (WSAStartup (version, &wsaDataStruct)!=0) { fprintf (stderr, "SEventBSD.cpp:initsockets can not initialize[%d].\n", WSAGetLastError()); state = -1; } else { state=socket (AF_INET, SOCK_STREAM, IPPROTO_IP); if (state==0) { fprintf (stderr, "SEventBSD.cpp: failed to open socket[%d].%s\n", errno, strerror (errno)); state = -1; } else { u_long arg=1; //ioctlsocket (state, FIONBIO, &arg); wsaData = &wsaDataStruct; state = 1; } } } return state; } #endif #ifdef USE_WINAPI void initSignals(bool init) { } #else extern "C" { typedef void(*signalHandler_t)(int); static void signalHandler (int signum); }; void initSignals(bool init) { static bool inited = false; if (inited && init) return; static struct sigaction oact; struct sigaction act; if (init) { sigemptyset(&act.sa_mask); act.sa_flags = 0; /* Hack: on some systems signalHandler does not take an int argument */ *((signalHandler_t*) &act.sa_handler) = (signalHandler_t) signalHandler; #ifdef SA_INTERRUPT act.sa_flags |= SA_INTERRUPT; #endif sigaction (SIGALRM, &act, &oact); act.sa_handler = SIG_IGN; sigaction (SIGPIPE, &act, &oact); inited = true; } else { sigaction (SIGPIPE, &oact, &act); sigaction (SIGALRM, &oact, &act); inited = false; } } /** * Be aware: on some systems signalHandler does not take an int argument */ extern "C" { static void signalHandler (int signum) { #if 0 switch (signum) { case SIGPIPE: fprintf (stderr, "SEventBSD: disconnected - SIGPIPE\n"); break; case SIGALRM: fprintf (stderr, "SEventBSD: timeout - SIGALRM\n"); break; default: fprintf (stderr, "SEventBSD: signal %d\n", signum); } sEventBSDSignal = signum; #endif sEventBSDSignal = 1; return; } } #endif ./stoolkit/SHWConverter.h0000644000175000017500000000272410434025610015407 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SHWConverter_h #define SHWConverter_h #include "stoolkit/SLocation.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SLineCurve.h" /** * @author: Gaspar Sinai * @version: 2001-10-02 */ /* * Handwriting conversion module for Yudit. */ class SHWConverter { public: SHWConverter(void); SHWConverter(const SString& name); SHWConverter(const SHWConverter& c); ~SHWConverter(); SHWConverter operator= (const SHWConverter& c); bool isOK () const; SStringVector convert(const SLineCurves& strokes, bool directed=false) const; static void setDebugLevel (int level); const SString& getName() const; protected: void* shared; SString name; }; #endif /* SHWConverter_h */ ./stoolkit/SEncoder.cpp0000644000175000017500000002402410434025610015110 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SString.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SEncoder.h" #include "stoolkit/sencoder/SBEncoder.h" #include "stoolkit/sencoder/SB_UTF8.h" #include "stoolkit/sencoder/SB_Java.h" #include "stoolkit/sencoder/SB_NCR.h" #include "stoolkit/sencoder/SB_UTF7.h" #include "stoolkit/sencoder/SB_Generic.h" #include "stoolkit/sencoder/SB_EUC_JP.h" #include "stoolkit/sencoder/SB_S_JIS.h" #include "stoolkit/sencoder/SB_X11_JP.h" #include "stoolkit/sencoder/SB_ISO2022_JP.h" #include "stoolkit/sencoder/SB_X11_HZ.h" #include "stoolkit/sencoder/SB_GB2312_8.h" #include "stoolkit/sencoder/SB_GB18030.h" #include "stoolkit/sencoder/SB_HZ.h" #include "stoolkit/sencoder/SB_X11_KSC.h" #include "stoolkit/sencoder/SB_EUC_KR.h" #include "stoolkit/sencoder/SB_UHC.h" #include "stoolkit/sencoder/SB_Johab.h" #include "stoolkit/sencoder/SB_BIG5.h" #include "stoolkit/sencoder/SB_UCS2.h" #include "stoolkit/sencoder/SB_UInput.h" #include "stoolkit/sencoder/SB_DeShape.h" #include "stoolkit/sencoder/SB_BiDi.h" #include "stoolkit/sencoder/SB_S_JIS0213.h" #include "stoolkit/sencoder/SB_EUC_JP0213.h" #include "stoolkit/sencoder/SB_ISO2022_JP3.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUniMap.h" static SStringVector _built_in( "utf-8,utf-8-s,utf-7,java,java-s,ncr,ucs-2,ucs-2-le,ucs-2-be,utf-16,utf-16-le,utf-16-be,euc-jp,euc-jp-3,euc-kr,big-5,hz,iso-2022-x11,ksc-5601-x11,gb-18030,gb-2312-x11,gb-2312,iso-2022-jp,iso-2022-jp-3,shift-jis,shift-jis-3,uhc,johab,unicode,bidi" ); /** * Vector all the build-in encodings. */ const SStringVector& SEncoder::builtin() { return _built_in; } /** * return all the external maps available */ SStringVector SEncoder::external() { SBinHashtable mentioned; for (unsigned int i=0; i<_built_in.size(); i++) { mentioned.put (_built_in[i], 1); } SStringVector ext = SUniMap::list(); SStringVector ret; for (unsigned int j=0; jisOK(); delegate = gb18030; } else if (name == "big-5") { SB_BIG5* big_5 = new SB_BIG5(); ok = big_5->isOK(); delegate = big_5; } else if (name == "euc-jp") { SB_EUC_JP* euc_jp = new SB_EUC_JP(); ok = euc_jp->isOK(); delegate = euc_jp; } else if (name == "euc-jp-3") { SB_EUC_JP0213* euc_jp0213 = new SB_EUC_JP0213(); ok = euc_jp0213->isOK(); delegate = euc_jp0213; } else if (name == "euc-kr") { SB_EUC_KR* euc_kr = new SB_EUC_KR(); ok = euc_kr->isOK(); delegate = euc_kr; } else if (name == "uhc") { SB_UHC* uhc = new SB_UHC(); ok = uhc->isOK(); delegate = uhc; } else if (name == "ucs-2") { delegate = new SB_UCS2(SB_UCS2::AUTO_END, false); } /* I don't know why, it is all mixed up. workaround - mix them up */ else if (name == "ucs-2-be") { delegate = new SB_UCS2(SB_UCS2::LITTLE_END, false); } else if (name == "ucs-2-le") { delegate = new SB_UCS2(SB_UCS2::BIG_END, false); } else if (name == "utf-16") { delegate = new SB_UCS2(SB_UCS2::AUTO_END, true); } /* I don't know why, it is all mixed up. workaround - mix them up */ else if (name == "utf-16-be") { delegate = new SB_UCS2(SB_UCS2::LITTLE_END, true); } else if (name == "utf-16-le") { delegate = new SB_UCS2(SB_UCS2::BIG_END, true); } else if (name == "johab") { SB_Johab* johab = new SB_Johab(); ok = johab->isOK(); delegate = johab; } else if (name == "iso-2022-jp") { SB_ISO2022_JP* iso2022_jp = new SB_ISO2022_JP(); ok = iso2022_jp->isOK(); delegate = iso2022_jp; } else if (name == "iso-2022-jp-3") { SB_ISO2022_JP3* iso2022_jp3 = new SB_ISO2022_JP3(); ok = iso2022_jp3->isOK(); delegate = iso2022_jp3; } else if (name == "iso-2022-x11") { SB_X11_JP* x11_jp = new SB_X11_JP(); ok = x11_jp->isOK(); delegate = x11_jp; } else if (name == "shift-jis") { SB_S_JIS* s_jis = new SB_S_JIS(); ok = s_jis->isOK(); delegate = s_jis; } else if (name == "shift-jis-3") { SB_S_JIS0213* s_jis0213 = new SB_S_JIS0213(); ok = s_jis0213->isOK(); delegate = s_jis0213; } else if (name == "shift-jis-0213") /* alias to hide shift-jis-0213.my */ { SB_S_JIS0213* s_jis0213 = new SB_S_JIS0213(); ok = s_jis0213->isOK(); delegate = s_jis0213; } else if (name == "gb-2312-x11") { SB_X11_HZ* x11_hz = new SB_X11_HZ(); ok = x11_hz->isOK(); delegate = x11_hz; } else if (name == "gb-2312") { SB_GB2312_8* gb_2312_8 = new SB_GB2312_8(); ok = gb_2312_8->isOK(); delegate = gb_2312_8; } else if (name == "ksc-5601-x11") { SB_X11_KSC* gb_x11_ksc = new SB_X11_KSC(); ok = gb_x11_ksc->isOK(); delegate = gb_x11_ksc; } else if (name == "hz") { SB_HZ* hz = new SB_HZ(); ok = hz->isOK(); delegate = hz; } else if (name == "unicode") { SB_UInput* uni = new SB_UInput(); ok = true; delegate = uni; } else if (name == "deshape") { SB_DeShape* deshape = new SB_DeShape(); ok = deshape->isOK(); delegate = deshape; } else if (name == "bidi") { SB_BiDi* bidi = new SB_BiDi(); ok = bidi->isOK(); delegate = bidi; } else { SB_Generic* g = new SB_Generic(name); ok = g->isOK(); if (ok) { delegate = g; } else { delete g; delegate = new SB_UTF8(false); } } } /** * Create a utf-8 converter */ SEncoder::SEncoder (void) { name = "utf-8"; ok = true; load(); } /** * return false if something is wrong with the map: * The map not found or similar */ bool SEncoder::isOK () const { return ok; } /** * Create a converter with a name * @param name is either a valid name * or a map */ SEncoder::SEncoder (const SString& _name) { name = _name; ok = true; load (); } SEncoder::SEncoder (const SEncoder& c) { name = c.getName(); load (); } SEncoder& SEncoder::operator = (const SEncoder& c) { if (this != &c) { delete ((SBEncoder*) delegate); name = c.getName(); load (); clear(); } return *this; } SEncoder::~SEncoder () { delete ((SBEncoder*) delegate); } const SString& SEncoder::getName() const { return name; } /** * This is encoding a unicode string into a bytestring * @param input is a unicode string. */ const SString& SEncoder::encode (const SV_UCS4& input) { return ((SBEncoder*) delegate)->encode (input); } void SEncoder::clear() { buffer.clear(); delim.clear(); remaining.clear(); ((SBEncoder*) delegate)->clear(); } /** * Decode an input string into a unicode string. * @param input is a string. * he output can be null, in this case a line is not * read fully. If input size is zero output will be flushed. */ const SV_UCS4& SEncoder::decode (const SString& input, bool more) { if (delim.size() == 0 && input.size()!=0) { ((SBEncoder*) delegate)->delimiters(input); } buffer.append (input); /** * We need more input for the delimiter? */ if (delim.size() != 0 && more) { unsigned int i; /* there is a potential bug here - r n should be specified in front of r or n */ for (i=0; i= 0) break; } retUCS4.clear(); if (i==delim.size()) return retUCS4; } retUCS4 = ((SBEncoder*) delegate)->decode (buffer); SV_UCS4 additional; if (!more) { additional = ((SBEncoder*) delegate)->decode(""); retUCS4.append (additional); } buffer.clear(); return retUCS4; } /** * return key value map to see what decodes to what * @param key will contain the keys * @param value will contain the values * @param _size is the maximum size of returned arrays * @return the real size of the arrays. */ unsigned int SEncoder::getDecoderMap (SStringVector* key, SStringVector* value, unsigned int _size) { return ((SBEncoder*) delegate)->getDecoderMap (key, value, _size); } /* for non-clustering it is remainder */ SString SEncoder::preEditBuffer() const { SString rm = ((SBEncoder*) delegate)->preEditBuffer(); rm.append (buffer); return SString(rm); } /* for clustering */ SV_UCS4 SEncoder::postEditBuffer () const { return ((SBEncoder*) delegate)->postEditBuffer(); } /** * These methods guess the line delimiters for the input * The one without arguments is giving the 'first approximation' * It returns an inclusive list of all possibilities. */ const SStringVector& SEncoder::delimiters () { return ((SBEncoder*) delegate)->delimiters(); } SObject* SEncoder::clone() const { SEncoder* n = new SEncoder(name); CHECK_NEW (n); return n; } ./stoolkit/SParagraph.cpp0000644000175000017500000010015310724443671015451 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SParagraph.h" #include "stoolkit/SUniMap.h" #include "stoolkit/SCluster.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SBiDi.h" #define SD_MAX_COMPOSE 100 #define SD_MAX_EMBEDDING 61 static unsigned int split(const SV_UCS4& ucs4, SVector* gl, unsigned int from); SParagraph::SParagraph(void) { visible = false; selected = false; underlined = false; expanded = true; iniLevel = 0; embedding = SS_EmbedNone; paraSep = SS_PS_None; reordered = true; clearChange(); } SParagraph::SParagraph(const SParagraph& paragraph) { visible = paragraph.visible; selected = paragraph.selected; underlined = paragraph.underlined; expanded = paragraph.expanded; embedding = paragraph.embedding; iniLevel = paragraph.iniLevel; glyphs = paragraph.glyphs; ucs4Glyphs = paragraph.ucs4Glyphs; paraSep = paragraph.paraSep; lineBreaks = paragraph.lineBreaks; clearChange(); reordered = true; } /** * Lift off one paragraph from vector starting from start * This is the only constructor that works on SV_UCS4. * at the end the line size is zero. */ SParagraph::SParagraph(const SV_UCS4& buffer, unsigned int *index) { visible = false; selected = false; underlined = false; expanded = false; paraSep = SS_PS_None; reordered = true; iniLevel = 0; embedding = SS_EmbedNone; unsigned int start = *index; unsigned int end = buffer.size(); unsigned int i = start; bool eol = false; /* a quick split - well, could be quicker :) */ while (i gl; SV_UCS4 chrs = getChars(); unsigned int end = split (chrs, &gl, 0); if (end != chrs.size()) { fprintf (stderr, "SParagraph::expand() internal error\n"); } p->ucs4Glyphs.clear(); p->expanded = true; if (selected) { for (unsigned int i=0; iselected = selected; } } if (underlined) { for (unsigned int i=0; iunderlined = underlined; } } p->glyphs = gl; p->clearChange(); p->reordered = true; p->reShape (); } /** * try to shape a single segment. * return true if it is possible. * @param before is the visual glyph before this line. * @param after is the visual glyph after this line. * Todo: do glyphline-breaking of shaping is not possible, use * lineShaper to get glyph breakdown. */ void SParagraph::reShape () { expand(); unsigned int gsize = size(); const SGlyph* before; const SGlyph* after; for (unsigned int i=0; igetShapeArray()==0 && getLigatureScriptCode (g->getChar())!=SD_BENGALI) { continue; } int cbefore = getNonTransparentBefore (i); int cafter = getNonTransparentAfter (i); before = (cbefore >= 0) ? peek((unsigned int)cbefore) : 0; after = (cafter >= 0) ? peek((unsigned int)cafter) : 0; if (g->setShape (before, after)) { setChange (i, i+1); } } return; } /** * try to reShape at glypgh */ void SParagraph::reShape (unsigned int index) { if (size()==0) return; unsigned int i = index; if (i>=size()) i=size()-1; SGlyph* g = (SGlyph*) peek(i); const SGlyph* before; const SGlyph* after; int cbefore = getNonTransparentBefore (i); int cafter = getNonTransparentAfter (i); before = (cbefore >= 0) ? peek((unsigned int)cbefore) : 0; after = (cafter >= 0) ? peek((unsigned int)cafter) : 0; if (g->setShape (before, after)) { setChange (i, i+1); } /* reShape previous */ if (cbefore >= 0) { i = (unsigned int) cbefore; g = (SGlyph*) peek(i); if (g->getShapeArray()!=0 || getLigatureScriptCode (g->getChar())==SD_BENGALI) { int cb2 = getNonTransparentBefore (i); int ca2 = getNonTransparentAfter (i); before = (cb2 >= 0) ? peek((unsigned int)cb2) : 0; after = (ca2 >= 0) ? peek((unsigned int)ca2) : 0; if (g->setShape (before, after)) { setChange (i, i+1); } } } /* reShape after */ if (cafter >= 0) { i = (unsigned int) cafter; g = (SGlyph*) peek(i); if (g->getShapeArray()!=0 || getLigatureScriptCode (g->getChar())==SD_BENGALI) { int cb2 = getNonTransparentBefore (i); int ca2 = getNonTransparentAfter (i); before = (cb2 >= 0) ? peek((unsigned int)cb2) : 0; after = (ca2 >= 0) ? peek((unsigned int)ca2) : 0; if (g->setShape (before, after)) { setChange (i, i+1); } } } } /** * Get the first non-spacing glyph left visual order in array, * starting here and incuding this. * return the index or -1 if not found. */ int SParagraph::getNonTransparentBefore(unsigned int index) const { if (index > size()) return -1; for (int i=((int)index) - 1; i >= 0; i--) { const SGlyph* g = peek((unsigned int)i); if (!g->isTransparent()) return i; } return -1; } /** * Get the first non-spacing glyph right, in visual order, * starting here and including this. * return the index or -1 if not found. */ int SParagraph::getNonTransparentAfter(unsigned int index) const { for (int i=index +1; i < (int)size(); i++) { const SGlyph* g = peek((unsigned int)i); if (!g->isTransparent()) return i; } return -1; } /** * Get a sub paragraph. */ SParagraph* SParagraph::subParagraph(unsigned int from, unsigned int to) const { expand(); /* return self */ SParagraph* p = new SParagraph (); CHECK_NEW (p); p->visible = visible; p->underlined = underlined; p->expanded = true; p->paraSep = SS_PS_None; p->selected = selected; p->iniLevel = iniLevel; p->embedding = embedding; p->reordered = true; if (from > to) return p; p->glyphs = glyphs; p->logical = logical; if (from == 0 && to == size()) { return p; } /* set the initial directionality here */ if (tosize()) p->glyphs.truncate (to); if (from>0) p->glyphs.remove (0, from); p->reShape (); return p; } /** * convert the paragraph to ucs4 string */ SV_UCS4 SParagraph::getChars() const { SV_UCS4 ret; if (!expanded) { unsigned int len = ucs4Glyphs.size(); ret = ucs4Glyphs; if (paraSep == SS_PS_None) { return SV_UCS4(ret); } else if (len >= 2 && ret[len-2] == SD_CD_CR && ret[len-1] == SD_CD_LF) { /* no change */ if (paraSep == SS_PS_CRLF) return SV_UCS4(ret); ret.truncate (len-2); } else if (len >= 1 && ret[len-1] == SD_CD_LF) { /* no change */ if (paraSep == SS_PS_LF) return SV_UCS4(ret); ret.truncate (len-1); } else if (len >= 1 && ret[len-1] == SD_CD_CR) { /* no change */ if (paraSep == SS_PS_CR) return SV_UCS4(ret); ret.truncate (len-1); } else if (len >= 1 && ret[len-1] == SD_CD_PS) { /* no change */ if (paraSep == SS_PS_PS) return SV_UCS4(ret); ret.truncate (len-1); } else { /* no eol */ return SV_UCS4(ret); } /* we are here because we need to append paraSep */ switch (paraSep) { case SS_PS_LF: ret.append (SD_CD_LF); break; case SS_PS_CR: ret.append (SD_CD_CR); break; case SS_PS_CRLF: ret.append (SD_CD_CR); ret.append (SD_CD_LF); break; case SS_PS_PS: ret.append (SD_CD_PS); break; default: return SV_UCS4(ret);; } return SV_UCS4(ret);; } const SGlyph* g0 = 0; for (unsigned int i=0; igetEmbeddingMarks(g0)); ret.append (g->getChars()); g0 = g; } if (g0 != 0) { SV_UINT m = g0->getEmbeddingMarks (0); unsigned int i = m.size(); while (i--) ret.append (SD_CD_PDF); } return SV_UCS4(ret); } /** * Set the initial embedding level */ void SParagraph::setIniLevel () { expand(); if (embedding!=SS_EmbedNone) { iniLevel = (embedding != SS_EmbedRight)?0:1; return; } SD_BiDiClass dbclass = SD_BC_XX; unsigned int i=0; for (i=0; iembedding = g->getExplicitLevel(); } /* move initLevel = something else - 1 */ else if (g->getExplicitLevel() != 0) { g->embedding = g->getExplicitLevel()+2; } else /* for not embedded, force our paragraph embedding */ { g->embedding = g->getExplicitLevel()+1; } SD_BiDiClass bcls = g->getBiDiType(); if (g->isOverride()) { bcls = ((g->embedding %2)==0) ? SD_BC_L : SD_BC_R; } /* we wont have LRE RLE RLO LRO and PDF codes here so it is anough to skip BN */ if (bcls != SD_BC_BN) { impBiDi.append (g->embedding, bcls); } } impBiDi.resolveWeakNeutral(); /* add back BN codes that we have not inserted */ for (i=0; iisOverride()) continue; SD_BiDiClass bcls = g->getBiDiType(); if (bcls == SD_BC_BN) { impBiDi.insertBN(i); } } /* Resolving Implicit Embedding Levels */ for (i=0; iembedding % 2)==0; if (curlr) { if (bdclass == SD_BC_R) { g->embedding = g->embedding +1; } if (bdclass == SD_BC_AN || bdclass == SD_BC_EN) { g->embedding = g->embedding +2; } } else { if (bdclass == SD_BC_L || bdclass == SD_BC_EN || bdclass == SD_BC_AN) { g->embedding = g->embedding +1; } } } /* currently we wont break before all SD_BC_S - we just do the alrgorithm. */ for (i=0; igetBiDiType(); if (bdclass==SD_BC_S) /* segment separator */ { g->embedding = (char) iniLevel; for (j=i; j>0; j--) { SGlyph *g1 = (SGlyph*) peek (j-1); SD_BiDiClass c = g1->getBiDiType(); if (c != SD_BC_WS && c != SD_BC_BN) break; g1->embedding = (char) iniLevel; } } } /* physical ending of line - lines with or without separators */ for (j=lsize; j>0; j--) { SGlyph *g1 = (SGlyph*) peek (j-1); SD_BiDiClass c = g1->getBiDiType(); if (c!=SD_BC_WS && c!=SD_BC_BN && !g1->isEOL() && !g1->isEOP()) break; g1->embedding = (char) iniLevel; } /* Set whitespaces before end of *line* to initLevel */ for (i=0; i lsize) lb = lsize; while (lb-- > 0) { SGlyph *g = (SGlyph*) peek (lb); SD_BiDiClass c = g->getBiDiType(); if (c!=SD_BC_WS && c!=SD_BC_BN) break; g->embedding = (char) iniLevel; } } } /** * Put the text back into logical order. * @param index is the visual index. */ unsigned int SParagraph::toLogical (unsigned int index) { expand(); if (!reordered) return logical[index]; unsigned int ccount = size(); if (ccount == 0) return 0; /* resolve embedding levels */ resolveLevels(); unsigned int i; /* we create this array to make things faster */ SS_UINT* logindex = new SS_UINT[ccount]; CHECK_NEW(logindex); unsigned int biggest = 0; /* last one will map to last */ for (i=0; iembedding > biggest) { biggest = (unsigned int) g->embedding; } logindex[i] = i; } /* go through embedding levels and reverse them for each line */ for (unsigned int e=biggest; e>iniLevel; e--) { for (i=0; iembedding >= e) { /* non-enclusive index */ unsigned int j = i; while (++jembedding < e || isLineBreak(j)) { j--; break; } } if (j >= ccount) j--; for (unsigned int k=0; k<=(j-i)/2; k++) { SS_UINT a0 = logindex[i+k]; SS_UINT a1 = logindex[j-k]; logindex[i+k] = a1; logindex[j-k] = a0; } i = j; } } } /* create the array that converts from logindex to visual */ /* last one will map to last */ logical.clear(); for (i=0; i from) changeStart = from; if (to > size()) { changeRemaining = 0; } else if (changeRemaining > (size() - to)) { changeRemaining = (size() - to); } } /** * clear the change indeces for events */ void SParagraph::clearChange() { changeStart = size(); changeRemaining = 0; } /** * return the first index since clearChange * 0 means change is from beginning */ unsigned int SParagraph::getChangeStart() const { return changeStart; } /** * return the last index since clearChange - from the end * 0 means change is till end */ unsigned int SParagraph::getChangeEnd() const { if (changeRemaining >= size()) return size(); return size() - changeRemaining; } bool SParagraph::isVisible() const { return visible; } void SParagraph::setVisible() { visible = true; } void SParagraph::setReordered() { reordered = true; } /** * Set the paragraph separator character, usually found at * the end of the paragraph. * @param glyph is the separator glyph. * @return true if it has changed. */ bool SParagraph::setParagraphSeparator (SS_ParaSep ps) { if (!isProperLine()) return false; if (!expanded) { SS_ParaSep old = paraSep; paraSep = ps; return (old!=ps); } SGlyph oldg = glyphs[glyphs.size()-1]; SGlyph newg = oldg; SV_UCS4 v; switch (ps) { case SS_PS_LF: v.append (SD_CD_LF); newg = SGlyph(v, SD_CD_LF, false, 0, 0); break; case SS_PS_CR: v.append (SD_CD_CR); newg = SGlyph(v, SD_CD_CR, false, 0, 0); break; case SS_PS_CRLF: v.append (SD_CD_CR); v.append (SD_CD_LF); newg = SGlyph(v, 0, false, 0, 0); break; case SS_PS_PS: v.append (SD_CD_PS); newg = SGlyph(v, SD_CD_PS, false, 0, 0); break; default: return false; } if (oldg == newg) return false; newg.embedding = oldg.embedding; newg.selected = oldg.selected; glyphs.replace (glyphs.size()-1, newg); return true; } /** * @return true if the visual ordering has beeen altered. */ bool SParagraph::isReordered () const { /* this is re-set by toVisual() */ return reordered; } /** * Set document embedding level * @param e is external embedding. */ void SParagraph::setEmbedding(SS_Embedding e) { reordered = true; embedding = e; } /** * Select the whole paragraph. */ void SParagraph::select (bool is) { if (!expanded) { selected = is; return; } select (is, 0, size()); } /** * set the selected flags * @param is is true if selecting false if de-selecting. * @param from is the starting index * @param to is the ending index (non-inclusive) */ void SParagraph::select (bool is, unsigned int from, unsigned int to) { unsigned int end = to; if (end > size()) end = size(); for (unsigned int i=from; iselected = is; } } /** * Underline the whole paragraph. */ void SParagraph::underline (bool is) { if (!expanded) { underlined = true; return; } underline (is, 0, size()); } /** * set the underline flags * @param is is true if we are underlining false if un-underlining. * @param from is the starting index * @param to is the ending index (non-inclusive) */ void SParagraph::underline (bool is, unsigned int from, unsigned int to) { unsigned int end = to; if (end > size()) end = size(); for (unsigned int i=from; iunderlined = is; } } /** * Split a text into Glyphs * @param ucs4 is a text that can contain paragraph separators * @param from is the starting index. * @parem gl is the return Glyphs. * @return ending index, that is equal to starting index * if ther is no more data. */ static unsigned int split (const SV_UCS4& ucs4, SVector* gl, unsigned int from) { SUniMap composer ("precompose"); SUniMap shaper ("shape"); gl->clear(); unsigned int i=from; SS_UCS4 composition; bool usePrecomposed; bool isShaped; bool isLigature; bool isLineEnd; //gl->ensure (ucs4.size()); SGlyphShared* shr = 0; unsigned int compIndex = 0; SV_UCS4 stack; while (i=i+1 && ret.size()==4) { /* Try to identify composing ligatures and take them out */ bool isCompLig = false; if (n < ucs4.size()) { SS_UCS2 u2=getCharClass(ucs4[n]); if (u2 == SD_CC_Mn || u2 == SD_CC_Me) { SV_UCS4 try2; SV_UCS4 comb; unsigned int j; for (j=i; j 6 || j>=ucs4.size()) break; u2=getCharClass(ucs4[j]); } } SV_UCS4 ret2; unsigned int n2 = shaper.lift (try2, 0, false, &ret2); /* found a ligature composition */ if (n2 > 1 && ret2.size() ==4) { /* add for all shapes */ SV_UCS4 cm; cm.append (ret2[0]); cm.append (comb); /* FIXME: the first parameter should be memory representation. We are sloppy because noone is using it.*/ SS_UCS4 l0 = (cm[0]==0) ? 0 : addCombiningLigature ( cm.array(), cm.size(), cm.array(), cm.size()); cm.replace (0, ret2[1]); SS_UCS4 l1 = (cm[0]==0) ? 0 : addCombiningLigature ( cm.array(), cm.size(), cm.array(), cm.size()); cm.replace (0, ret2[2]); SS_UCS4 l2 = (cm[0]==0) ? 0 : addCombiningLigature ( cm.array(), cm.size(), cm.array(), cm.size()); cm.replace (0, ret2[3]); SS_UCS4 l3 = (cm[0]==0) ? 0 : addCombiningLigature ( cm.array(), cm.size(), cm.array(), cm.size()); n = i+n2+comb.size(); ret.clear(); ret.append(l0); ret.append(l1); ret.append(l2); ret.append(l3); isCompLig = true; /* combining marks are part of fallback */ addFallbackShapes (&shaper, ret2.array(), &ucs4.array()[i], n-i); } } } } composition = ucs4[i]; /* The four variants for shaping */ du4.append (ret[0]); du4.append (ret[1]); du4.append (ret[2]); du4.append (ret[3]); if (n>i+1 || isCompLig) // composed of several { usePrecomposed = false; composition = 0; /* append the extra bits at the end. */ for (unsigned int j=i; ji+1 && retc.size() == 1) { composition = retc[0]; usePrecomposed = false; ret.clear(); /* replace the shapes for this newly composed glyph */ unsigned int ns = shaper.lift (retc, 0, false, &ret); if (ns==1 && ret.size()==4) { du4.replace (0, ret[0]); du4.replace (1, ret[1]); du4.replace (2, ret[2]); du4.replace (3, ret[3]); } /* the composition comes at the end. */ for (unsigned int j=i; j i && ret.size() > 0 && ret[0] < 0x80000000) { unsigned int j; for (j=0; j 0x80000000 && ret[j] < 0xA0000000) { composition = ret[j]; /* Save this unicode ligature. Fonts have unicode order. */ putLigatureCluster (composition, du4.array(), du4.size()); putLigatureUnicode (composition, &ucs4.array()[i], n-i); break; } du4.append (ret[j]); } clusterIndex = j; if (i>=n) du4.append (ucs4[i++]); /* fallback - error */ while (i=n) du4.append (ucs4[i++]); /* fallback - error */ while (iucs4v; /* we are saving memory in sglyph */ if (du4.size()==0) du4.append (ucs4[i]); composition = shr->precomposed; /* ucs4[i] */ usePrecomposed = true; i++; break; } ret.clear(); /* check if it can be broken down into a composition */ unsigned int n = composer.lift (ucs4, i, true, &ret); if (ucs4[i] != 0 && n == i+1 && ret.size() > 0 && ret.size() <= SD_MAX_COMPOSE) { usePrecomposed = true; n = i+1; composition = ucs4[i++]; du4.append (ret); } else { /* * No composition, there is only a base. * Extra compositions will be added later. */ du4.append (ucs4[i++]); } } } else { du4.append (ucs4[i++]); } break; } /* End Switch */ if (embed) /* PDF */ { SS_UCS4 em = ucs4[i]; i++; if (em == SD_CD_PDF) { if (stack.size() > 0) stack.truncate(stack.size()-1); } else { stack.append (em); } continue; } if (!isLineEnd && i for shapes because base * is used for shaping. We must set compIndex after base * for shaped, before base for unshaped glyphs. This * is just a convention here. For unshaped we don't realy * care: XXXX YYYY ZZZZ or XXXX ; YYYY ZZZZ. So we use former. */ if (isShaped) { /* 1 */ if (du4.size()==4) du4.append (composition); /* 2 */ compIndex = du4.size(); } else { if (du4.size()==0) /* just in case */ { du4.append (composition); composition = 0; usePrecomposed = false; compIndex =0; /* also works with 1 - #2 is very weak */ } else if (du4.size()==1) /* make this a non-composing */ { composition = 0; usePrecomposed = false; compIndex =0; /* also works with 1 - #2 is very weak */ } else /* composing extras */ { compIndex = du4.size(); } } while (u2 == SD_CC_Mn || u2 == SD_CC_Me) { du4.append (ucs4[i]); i++; if (i >= ucs4.size()) break; u2=getCharClass (ucs4[i]); } } } SGlyph g (du4, composition, isShaped, clusterIndex, compIndex); g.usePrecomp = (usePrecomposed || du4.size()==1); if (!g.isEOL() && !g.isEOP()) { g.setEmbeddingMarks (stack); } gl->append (g); if (g.isEOP()) break; } return i; } const SV_UINT& SParagraph::getLogicalMap() const { return logical; } ./stoolkit/SCluster.cpp0000644000175000017500000012767211053456053015176 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SCluster.h" #include "stoolkit/SProperties.h" #include "stoolkit/SUniMap.h" static unsigned int getRovasCluster (const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished, bool isPUA); static unsigned int getJamoCluster (const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished); static SS_UCS4 precomposJamos(SV_UCS4* jamo); static unsigned int getSouthIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished); static unsigned int getIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished); static SUniMap* clusters; static SUniMap* indic; static SProperties* ligatureUnics; static SProperties* ligatureClust; static SProperties* ligatureCache; static SS_UCS4 counters[SD_SCRIPT_MAX]; static SS_UCS4 nextLigature (unsigned int script, const SS_UCS4* unicode, unsigned int length); static void initLigatures(); SString yuditClusterError; /** * Try to form a cluster - an abstract glyphs that can * be broken apart once made. It can be rendered by * a font that contains glyphs and ligatureUnics by subdividing * the cluster. The cluster is in memory order - * vowels are place on the appropriate side. * * Clusters will replace the current SGlyph architecture. * All new things should be added here. * * 2002-04-03 - added surrogate clusters. * * @param ucs4 is the input vector. * @param i is the index in this vector - next character. * @param finished is set to 0 if more data is needed * this parameter can be null. * @return the new index in ucs4. */ unsigned int getCluster (const SV_UCS4& ucs4, unsigned int index, SV_UCS4* retchar, int *finished) { if (finished) *finished = -1; /* pack surrogates into a cluster - no combining marks on surrogates for the time being. */ if (ucs4[index] >= 0xd800 && ucs4[index] <= 0xdbff) { if (ucs4.size() < index+2) { if (finished) *finished = 0; retchar->append (ucs4[index]); return index + 1; } if (ucs4[index+1] >= 0xdc00 && ucs4[index+1] <= 0xdfff) { retchar->append (((ucs4[index] & 0x3ff)<< 10) + (ucs4[index+1]&0x3ff) + 0x10000); if (finished) *finished = 1; return index+2; } return index; } /* start the game */ initLigatures(); /* Should be able to start with ZWJ */ int scriptcode = ( (ucs4[index] == 0x200D || ucs4[index] == 0x25CC) && index+1 < ucs4.size()) ? getUnicodeScript (ucs4[index+1]) : getUnicodeScript (ucs4[index]); if (scriptcode < 0) return index; unsigned int ret = index; yuditClusterError.clear(); switch (scriptcode) { case SD_DEVANAGARI: case SD_BENGALI: case SD_GURMUKHI: case SD_GUJARATI: case SD_ORIYA: case SD_KANNADA: case SD_MALAYALAM: case SD_SINHALA: case SD_TELUGU: if (!indic->isOK()) break;; ret = getIndicCluster ( (unsigned int)scriptcode, ucs4, index, retchar, finished); break; case SD_HANGUL_JAMO: ret = getJamoCluster (ucs4, index, retchar, finished); break; case SD_TIBETAN: case SD_THAI: case SD_LAO: ret = getSouthIndicCluster ((unsigned int)scriptcode, ucs4, index, retchar, finished); //if (ret>0) fprintf (stderr, "TIBET Tibetan: %d\n", ret-index); break; case SD_TAMIL: case SD_YUDIT: if (!clusters->isOK()) break; ret = clusters->lift (ucs4, index, true, retchar); break; case SD_ROVASIRAS: ret = getRovasCluster (ucs4, index, retchar, finished, false); break; case SD_PUA_ROVAS: ret = getRovasCluster (ucs4, index, retchar, finished, true); break; } if (finished==0 && yuditClusterError.size()) { // If you want to debug things uncomment this. //fprintf (stderr, "SCluster.cpp:%*.*s\n", SSARGS(yuditClusterError)); } return ret; } /** * -1 non rovas. * 1 rovas basic * 2 rovas liga * 3 rovas yudit cluster * 0 ZWJ */ int getRovasType (SS_UCS4 chr) { if (chr == 0x200d) return 0; if (chr >= 0x10c00 && chr <= 0x10fff) { return 1; } if (getLigatureScriptCode(chr) == SD_ROVASIRAS) return 3; return -1; } /** * -1 non rovas. * 1 rovas basic * 2 rovas liga * 3 rovas yudit cluster * 0 ZWJ */ int getPUARovasType (SS_UCS4 chr) { if (chr == 0x200d) return 0; if (chr >= 0xee00 && chr <= 0xee29) { return 1; } if (chr >= 0xee30 && chr <= 0xee8b) { return 2; } if (getLigatureScriptCode(chr) == SD_PUA_ROVAS) return 3; return -1; } static unsigned int getRovasCluster (const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished, bool isPUA) { unsigned int usize = unicode.size(); if (index>=usize) return index; /* set it to finished - this routine would not be called to other scirpts */ if (finished) *finished = 1; /* Some platforms have unsigned char */ int prevchartype = 0; SS_UCS4 nextLig = 0; unsigned int i; int ligatureType = isPUA ? SD_PUA_ROVAS : SD_ROVASIRAS; for (i=index;i index+1) { nextLig = nextLigature (ligatureType, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } ret->append (next); break; case 1: case 2: if (prevchartype != 0) { if (i > index+1) { nextLig = nextLigature (ligatureType, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } ret->append (next); break; case -1: if (i > index+1) { nextLig = nextLigature (ligatureType, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } prevchartype = chartype; } /* Not yet finished. Return unfinished cluster */ if (finished) *finished = 0; if (ret->size() > 1) { nextLig = nextLigature (ligatureType, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } /** * Create a JAMO Cluster as of Unicode 3.0 Chapter 3.11. * 1. L.X V.X T.X X.L X.V X.T * 2. T.L * 3. V.L * 4. T.V * In short: Cluster=L*V*T* * Asterisk means: one or more. * @param finished is set to 1 if exact match happens * 0 is not yet finished * -1 if illegal sequence start. */ static unsigned int getJamoCluster (const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished) { unsigned int usize = unicode.size(); if (index>=usize) return index; /* set it to finished - this routine would not be called to other scirpts */ if (finished) *finished = -1; /* Some platforms have unsigned char */ int prevchartype = getJamoClass (unicode[index]); SS_UCS4 nextLig = 0; unsigned int i; for (i=index;iappend (nextLig); return i; } ret->append (next); break; case SD_JAMO_V: if (prevchartype != SD_JAMO_L && prevchartype != SD_JAMO_V) { nextLig = precomposJamos (ret); if (nextLig ==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; } ret->append (next); break; case SD_JAMO_T: /* Do we really have TT sequence ? According to Unicode yes. Hmm.. */ if (prevchartype != SD_JAMO_V && prevchartype != SD_JAMO_T) { nextLig = precomposJamos (ret); if (nextLig==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; } ret->append (next); break; case SD_JAMO_X: default: /* Tone marks can follow the cluster */ // They are suported as composing anyway... #if 0 if (next == 0x302e || next == 0x302f) { ret->append (next); i++; } #endif nextLig = precomposJamos (ret); if (nextLig==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; break; } prevchartype = chartype; } /* Not yet finished. Return unfinished cluster */ if (finished) *finished = 0; if (ret->size()>=1) { nextLig = precomposJamos (ret); if (nextLig==0) { nextLig = nextLigature (SD_HANGUL_JAMO, &unicode.array()[index], i-index); } if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } /** * Precompose JAMOs that are present in unicode tables * @param jamo is the vector that holds input jamos and * output precompositions. * @return the precomposed JAMOS or 0 */ static SS_UCS4 precomposJamos(SV_UCS4* jamo) { if (jamo->size()==0) return 0; if (jamo->size()==1) return 0; SS_UCS4 last = (*jamo)[jamo->size()-1]; if (last==0x302e || last==0x302f) { if (jamo->size()<=2) return 0; if (jamo->size()>4) return 0; jamo->truncate (jamo->size()-1); } else if (jamo->size()>3) { return 0; } SS_UCS4 l = (*jamo)[0]; SS_UCS4 v = (*jamo)[1]; SS_UCS4 t = (jamo->size() >= 3) ? (*jamo)[2] : 0x11a7; /* tone marks will be rendered first */ if (last==0x302e || last==0x302f) { jamo->insert (0, last); } if (l>=0x1100 && l<=0x1112 && v>=0x1161 && v<=0x1175 && t>=0x11a7 && t<=0x11c2) { jamo->clear(); SS_UCS4 vle = 21*28* (l-0x1100) + 28 * (v-0x1161) + (t-0x11a7) + 0xac00; jamo->append (vle); /* create a unique key */ if (last==0x302e) { vle = vle & 0x3fff; } else if (last==0x302f) { vle = vle & 0x7fff; } vle += 0x80000000 + (0x10000 * SD_HANGUL_PREC); return vle; } return 0; } /** * Get cluster for South Indian Thai-like scripts * The cluster is rendered and treated together. It has * a unicode and a separated memory representation. * Memory representation is only used for fallback rendering. * A cluster is * * a) Consonant + Top/Bottom/Right Sign [+ ...] * b) Consonant + Nukta * c) Consonant + Nukta + Top/Bottom/Right Sign [+ ...] * d) Indep-Vowel + Top/Bottom Sign [+ ...] * * @param finished is set to 1 if exact match happens * 0 is not yet finished * -1 if illegal sequence start. * It also sets yuditClusterError to an appropriate string. */ static unsigned int getSouthIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished) { unsigned int usize = unicode.size(); unsigned int i; if (finished) *finished = 1; /* Some platforms have unsigned char */ char prevchartype = (char)0x7f; /* big enough */ SS_UCS4 nextLig = 0; for (i=index;iencode (next); unsigned int sc = getUnicodeScript (next); if (sc!=scriptcode && next != 0x25cc && next != 0x200d && next != 0x200c) { if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } switch (chartype) { case SD_INDIC_INDEP_VOWEL: ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_CONSONANT_BASE: case SD_INDIC_CONSONANT_POST_BASE: case SD_INDIC_CONSONANT_BELOW_BASE: ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_NUKTA && ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_NUKTA: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with a subjoined consonant."; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE) { yuditClusterError = "Subjoined consonant should be preceded by a full consonant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_LEFT_VOWEL: case SD_INDIC_RIGHT_VOWEL: case SD_INDIC_TOP_VOWEL: case SD_INDIC_BOTTOM_VOWEL: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with a dependent wovel."; return index; } if (prevchartype != SD_INDIC_INDEP_VOWEL && prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_RIGHT_VOWEL && prevchartype != SD_INDIC_TOP_VOWEL && prevchartype != SD_INDIC_BOTTOM_VOWEL) { yuditClusterError = "Dependent sign should be preceded by another character."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_BOTTOM_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_SIGN: if (ret->size()==0) { /* can start with it */ // if (finished) *finished=-1; return index; } ret->append (next); nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; default: if (ret->size()==0) { if (finished) *finished=1; return index; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } prevchartype = chartype; } // fprintf (stderr, "TIBET index=%d\n", index); if (finished) *finished = 0; if (ret->size()>1) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } /** * Get cluster for North Indian Devanagari-like scripts * The cluster is rendered and treated together. It has * a unicode and a seperated memory representation. * Memory representation is only used for fallback rendering. * A cluster is * a) Consonant * b) Consonant + Halant * c) Consonant + Halant + ZWJ * d) Consonant + Nukta + Halant * e) Consonant + Nukta + Halant + ZWJ * f) Independent Vowel * g) Independent Vowel + Vowel * h) [b|c|d|e]* * i) [b|c|d|e]* a * j) [b|c|d|e]* Vowel * k) [a-i] ending with Modifier * l) [a-i] ending with ZWNJ * For bengali * Consonant + ZWJ * Halant + Consonant * are also possible. * @param scriptcode is one of the scripts (Hard-Coded) * @return index if nothing was lifted off vector, return * the number of unicode characters + index otherwise. * append the output cluster to ret, last element is ligature * code - if any. * @param finished is set to 1 if exact match happens * 0 is not yet finished * -1 if illegal sequence start. * It also sets yuditClusterError to an appripriate string. */ static unsigned int getIndicCluster (unsigned int scriptcode, const SV_UCS4& unicode, unsigned int index, SV_UCS4* ret, int* finished) { unsigned int usize = unicode.size(); unsigned int i; if (finished) *finished = 1; /* Some platforms have unsigned char */ char prevchartype = (char)0x7f; /* big enough */ SS_UCS4 nextLig = 0; for (i=index;iencode (next); //fprintf (stderr, "getIndicCluster=%u %d\n", next, chartype); unsigned int sc = getUnicodeScript (next); if (sc!=scriptcode && chartype != SD_INDIC_ZWNJ && chartype != SD_INDIC_ZWJ && next != 0x25cc) { if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } switch (chartype) { case SD_INDIC_INDEP_VOWEL: ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_BOTTOM_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_LEFT_VOWEL && ct != SD_INDIC_LEFT_RIGHT_VOWEL && ct != SD_INDIC_RIGHT_VOWEL && ct != SD_INDIC_MODIFIER && ct != SD_INDIC_HALANT) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_LEFT_VOWEL: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with dependent vowel."; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_INDEP_VOWEL) { yuditClusterError = "Dependent vowel should be preceded by consonant, nukta, halant or independent vowel."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } if (scriptcode == SD_MALAYALAM) ret->insert (ret->size()-1, next); else ret->insert (0, next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_MODIFIER) { nextLig = nextLigature (scriptcode, &unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_LEFT_RIGHT_VOWEL: if (ret->size()==0) { /* can not start with it */ if (finished) *finished=-1; yuditClusterError = "Cluster should not start with dependent vowel."; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_INDEP_VOWEL) { yuditClusterError = "Dependent vowel should be preceded by consonant, nukta, halant or independent vowel."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } /* this will be the fallback rendering */ { SS_UCS4 l = getLRVowelLeft (next); SS_UCS4 r = getLRVowelRight (next); if (l && r) { if (scriptcode == SD_MALAYALAM) ret->insert (ret->size()-1, l); else ret->insert (0, l); ret->append (r); } else { ret->append (next); } } if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_MODIFIER) { nextLig = nextLigature (scriptcode, &unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_MODIFIER: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster should not start with a modifier."; if (finished) *finished=-1; return index; } if ( prevchartype != SD_INDIC_INDEP_VOWEL && prevchartype != SD_INDIC_TOP_VOWEL && prevchartype != SD_INDIC_BOTTOM_VOWEL && prevchartype != SD_INDIC_LEFT_VOWEL && prevchartype != SD_INDIC_LEFT_RIGHT_VOWEL && prevchartype != SD_INDIC_RIGHT_VOWEL && prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_NUKTA) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i +1; case SD_INDIC_SIGN: if (ret->size()==0) { /* can start with it */ // if (finished) *finished=-1; return index; } ret->append (next); nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; case SD_INDIC_RIGHT_VOWEL: case SD_INDIC_TOP_VOWEL: case SD_INDIC_BOTTOM_VOWEL: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster should not start with dependent vowel."; if (finished) *finished=-1; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_NUKTA && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_INDEP_VOWEL) { yuditClusterError = "Dependent vowel should be preceded by consonant, nukta, halant or independent vowel."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_MODIFIER) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i +1; } } break; case SD_INDIC_CONSONANT_BASE: case SD_INDIC_CONSONANT_BELOW_BASE: case SD_INDIC_CONSONANT_POST_BASE: if (ret->size() > 0 && prevchartype != SD_INDIC_HALANT && prevchartype != SD_INDIC_ZWJ && prevchartype != SD_INDIC_CONSONANT_DEAD) { yuditClusterError = "Consonant should be preceded by halant or nukta or ZWJ"; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_HALANT && ct != SD_INDIC_NUKTA && ct != SD_INDIC_ZWNJ && ct != SD_INDIC_ZWJ && ct != SD_INDIC_MODIFIER && ct != SD_INDIC_BOTTOM_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_LEFT_VOWEL && ct != SD_INDIC_LEFT_RIGHT_VOWEL && ct != SD_INDIC_CONSONANT_DEAD && ct != SD_INDIC_RIGHT_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode,&unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_ZWNJ: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a ZWNJ."; if (finished) *finished=-1; return index; } #if 0 if (prevchartype != SD_INDIC_HALANT) { yuditClusterError = "ZWNJ should be preceded by a halant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } #endif nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; case SD_INDIC_NUKTA: if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a nukta."; if (finished) *finished=-1; return index; } if (prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_DEAD && prevchartype != SD_INDIC_CONSONANT_POST_BASE) { yuditClusterError = "Nukta should be preceded by a consonant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); if (i+1 < usize) { SS_UCS4 n = unicode[i+1]; char ct = (char) indic->encode (n); if (ct != SD_INDIC_HALANT && ct != SD_INDIC_MODIFIER && ct != SD_INDIC_BOTTOM_VOWEL && ct != SD_INDIC_TOP_VOWEL && ct != SD_INDIC_LEFT_VOWEL && ct != SD_INDIC_LEFT_RIGHT_VOWEL && ct != SD_INDIC_RIGHT_VOWEL) { if (ret->size()==1) return index; nextLig = nextLigature (scriptcode,&unicode.array()[index],i-index+1); if (nextLig) ret->append (nextLig); return i+1; } } break; case SD_INDIC_ZWJ: // Bengali can start with ZWJ - it needs a little work. #if 0 if (ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a ZWJ."; if (finished) *finished=-1; return index; } if (prevchartype != SD_INDIC_HALANT) { yuditClusterError = "ZWJ should be preceded by a halant."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } #endif ret->append (next); break; case SD_INDIC_HALANT: // Bengali can start with a halant - Yaphala if (next != 0x09cd && ret->size()==0) { /* can not start with it */ yuditClusterError = "Cluster can not start with a halant."; if (finished) *finished=-1; return index; } if (next != 0x09cd && prevchartype != SD_INDIC_INDEP_VOWEL && prevchartype != SD_INDIC_CONSONANT_BASE && prevchartype != SD_INDIC_CONSONANT_BELOW_BASE && prevchartype != SD_INDIC_CONSONANT_POST_BASE && prevchartype != SD_INDIC_NUKTA) { yuditClusterError = "Halant should be preceded by an independent vowel, a consonant or nukta."; nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->append (next); break; case SD_INDIC_CONSONANT_DEAD: // Finish the cluster - I dont know any better solution. nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index+1); if (nextLig) ret->append (nextLig); return i+1; default: if (ret->size()==0) { if (finished) *finished=1; return index; } nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; break; } prevchartype = chartype; } if (finished) *finished = 0; if (ret->size()>1) { nextLig = nextLigature (scriptcode, &unicode.array()[index], i-index); if (nextLig) ret->append (nextLig); return i; } ret->clear(); return index; } /** * Generate a next ligature number if it still does not exist */ static SS_UCS4 nextLigature (unsigned int script, const SS_UCS4* unicode, unsigned int length) { initLigatures (); if (length<2) return 0; SString key = SString((char*)unicode, sizeof (SS_UCS4) * length); const SString* cac = ligatureCache->get (key); SS_UCS4 liga; if (cac && cac->size()==sizeof (SS_UCS4)) { liga = *(SS_UCS4*) (cac->array()); return liga; } liga = counters[script]; /* check overflow */ if ((liga & 0xffff) == 0xffff) return 0; liga++; counters[script] = liga; /* FIXME: check overflow */ SString vle = SString((char*)&liga, sizeof (SS_UCS4)); ligatureCache->put (key, vle); //fprintf (stderr, "New Ligature[%d]=%X\n", script, liga); return liga; } int getUnicodeScript (SS_UCS4 comp) { /* TONE LETTERS */ switch (comp) { case 0x304B: return SD_YUDIT; case 0x304D: return SD_YUDIT; case 0x304F: return SD_YUDIT; case 0x3051: return SD_YUDIT; case 0x3053: return SD_YUDIT; case 0x30AB: return SD_YUDIT; case 0x30AD: return SD_YUDIT; case 0x30AF: return SD_YUDIT; case 0x30B1: return SD_YUDIT; case 0x30B3: return SD_YUDIT; case 0x30BB: return SD_YUDIT; case 0x30C4: return SD_YUDIT; case 0x30C8: return SD_YUDIT; case 0x31F7: return SD_YUDIT; case 0x00E6: return SD_YUDIT; case 0x0254: return SD_YUDIT; case 0x028C: return SD_YUDIT; case 0x0259: return SD_YUDIT; case 0x025A: return SD_YUDIT; default: break; } if (comp >= 0x02E5 && comp <= 0x02E9) return SD_YUDIT; if (getJamoClass (comp)>0) return SD_HANGUL_JAMO; if (comp >= 0x1000) { if (getRovasType (comp) == 1) { return SD_ROVASIRAS; } if (getPUARovasType (comp) == 1) { return SD_PUA_ROVAS; } return -1; } if (comp < 0x0900 ) return -1; if (comp < 0x0980) return SD_DEVANAGARI; if (comp < 0x0A00) return SD_BENGALI; if (comp < 0x0A80) return SD_GURMUKHI; if (comp < 0x0B00) return SD_GUJARATI; if (comp < 0x0B80) return SD_ORIYA; if (comp < 0x0C00) return SD_TAMIL; if (comp < 0x0C80) return SD_TELUGU; if (comp < 0x0D00) return SD_KANNADA; if (comp < 0x0D80) return SD_MALAYALAM; if (comp < 0x0E00) return SD_SINHALA; if (comp < 0x0E80) return SD_THAI; if (comp < 0x0F00) return SD_LAO; if (comp < 0x0FFF) return SD_TIBETAN; return -1; } /** * return true if this is covered */ bool isCoveredScipt (SS_UCS4 comp, int sc) { switch (sc) { case SD_YUDIT: return false; case SD_DEVANAGARI: return (comp>=0x0900 && comp<0x0980); case SD_BENGALI: return (comp>=0x0980 && comp<0x0a00); case SD_BENGALI_BEGIN: return (comp>=0x0980 && comp<0x0a00); case SD_GURMUKHI: return (comp>=0x0a00 && comp<0x0a80); case SD_GUJARATI: return (comp>=0x0a80 && comp<0x0b00); case SD_ORIYA: return (comp>=0x0b00 && comp<0x0b80); case SD_TAMIL: return (comp>=0x0b80 && comp<0x0c00); case SD_TELUGU: return (comp>=0x0c00 && comp<0x0c80); case SD_KANNADA: return (comp>=0x0c80 && comp<0x0d00); case SD_MALAYALAM: return (comp>=0x0d00 && comp<0x0d80); case SD_SINHALA: return (comp>=0x0d80 && comp<0x0e00); case SD_THAI: return (comp>=0x0e00 && comp<0x0e80); case SD_LAO: return (comp>=0x0e80 && comp<0x0f00); case SD_TIBETAN: return (comp>=0x0f00 && comp<0x0fff); case SD_HANGUL_JAMO: return (getJamoClass(comp) != 0); case SD_HANGUL_PREC: return (getJamoClass(comp) != 0); } return false; } /** * Add combining ligature. A combining ligature is a ligature * with combining marks. The ligature can be a unicode or 8 Yudit ligature. * @param unicode is the unicode representation of the while thing * @param ul is the unicode repr. length * @param ligAndMarks contains one ligature + all the marks to it. * @param cl is the length of ligAndMarks. */ SS_UCS4 addCombiningLigature (const SS_UCS4* unicode, unsigned int ul, const SS_UCS4* ligAndMarks, unsigned int cl) { SS_UCS4 nl = nextLigature (SD_COMBINING_LIGATURE, unicode, ul); const SString* found = ligatureUnics->get ( SString((char*) &nl, sizeof (SS_UCS4))); if (found == 0) { putLigatureUnicode (nl, unicode, ul); putLigatureCluster (nl, ligAndMarks, cl); } return nl; } /** * Put ligature away to remember */ void putLigatureUnicode (SS_UCS4 ligature, const SS_UCS4* buffer, unsigned int bufsize) { if (ligature <= 0x80000000 || ligature >= 0xA0000000) return; initLigatures(); SString key ((char*)& ligature, sizeof (SS_UCS4)); const SString* ret = ligatureUnics->get (key); if (ret) return; /* already there */ ligatureUnics->put (key, SString((char*)buffer, bufsize * sizeof (SS_UCS4))); } /** * Put ligature away to remember */ void putLigatureCluster (SS_UCS4 ligature, const SS_UCS4* buffer, unsigned int bufsize) { if (ligature <= 0x80000000 || ligature >= 0xA0000000) return; initLigatures (); SString key ((char*)& ligature, sizeof (SS_UCS4)); const SString* ret = ligatureClust->get (key); if (ret) return; /* already there */ ligatureClust->put (key, SString((char*)buffer, bufsize * sizeof (SS_UCS4))); } unsigned int getLigatureUnicode (SS_UCS4 lig, SS_UCS4* buffer) { SS_UCS4 ligature = lig; int sc = getLigatureScriptCode(ligature); // // SD_BENGALI_BEGIN is an artificial shape-code. // if (sc == SD_BENGALI_BEGIN) { unsigned int en = (SD_BENGALI << 16) | 0x80000000; ligature = (ligature & 0xffff) | en; } if (ligatureUnics == 0) return 0; const SString* ret = ligatureUnics->get ( SString((char*) &ligature, sizeof (SS_UCS4))); if (ret==0) return 0; if (buffer==0) return ret->size()/sizeof (SS_UCS4); memcpy (buffer, ret->array(), ret->size()); return ret->size()/sizeof (SS_UCS4); } unsigned int getLigatureCluster (SS_UCS4 lig, SS_UCS4* buffer) { SS_UCS4 ligature = lig; int sc = getLigatureScriptCode(ligature); // // SD_BENGALI_BEGIN is an artificial shape-code. // if (sc == SD_BENGALI_BEGIN) { unsigned int en = (SD_BENGALI << 16) | 0x80000000; ligature = (ligature & 0xffff) | en; } if (ligatureClust == 0) return 0; const SString* ret = ligatureClust->get ( SString((char*) &ligature, sizeof (SS_UCS4))); if (ret==0) return 0; if (buffer==0) return ret->size()/sizeof (SS_UCS4); memcpy (buffer, ret->array(), ret->size()); return ret->size()/sizeof (SS_UCS4); } static void initLigatures() { if (ligatureUnics == 0) { clusters = new SUniMap("cluster"); CHECK_NEW (clusters); indic = new SUniMap("indic"); CHECK_NEW (indic); ligatureUnics = new SProperties(); CHECK_NEW (ligatureUnics); ligatureClust = new SProperties(); CHECK_NEW (ligatureClust); ligatureCache = new SProperties(); CHECK_NEW (ligatureCache); for (unsigned int i=0; i> 16; return (int) en; } /* get script name or null */ const char* getLigatureScript (SS_UCS4 comp) { if (comp <= 0x80000000 || comp >= 0xA0000000) return 0; SS_UCS4 en = comp & 0x7fff0000; en = en >> 16; /* I modified this to return Script name as in MS Opentype spec.*/ switch (en) { case SD_YUDIT: return "yudit"; case SD_DEVANAGARI: return "deva"; case SD_BENGALI: return "beng"; case SD_BENGALI_BEGIN: return "beng"; case SD_GURMUKHI: return "guru"; case SD_GUJARATI: return "gujr"; case SD_ORIYA: return "orya"; case SD_TAMIL: return "taml"; case SD_TELUGU: return "telu"; case SD_KANNADA: return "knda"; case SD_MALAYALAM: return "mlym"; case SD_SINHALA: return "sinh"; case SD_HANGUL_JAMO: return "jamo"; case SD_HANGUL_PREC: return "hang"; case SD_THAI: return "thai"; case SD_LAO: return "lao "; case SD_TIBETAN: return "tibt"; case SD_ROVASIRAS: return "rovs"; case SD_PUA_ROVAS: return "prvs"; } return 0; } bool isLigature (SS_UCS4 _comp) { /* Yudit ligatures below 0x80008000 are considered hacked glyphs only */ return (_comp >= 0x80008000 && _comp > 0x80000000 && _comp < 0xA0000000); } SS_UCS4 getHalant (int index) { switch (index) { case SD_DEVANAGARI: return 0x094D; case SD_BENGALI: return 0x09CD; case SD_BENGALI_BEGIN: return 0x09CD; case SD_GURMUKHI: return 0x0A4D; case SD_GUJARATI: return 0x0ACD; case SD_ORIYA: return 0x0B4D; case SD_TELUGU: return 0x0C4D; case SD_KANNADA: return 0x0CCD; case SD_MALAYALAM: return 0x0D4D; case SD_SINHALA: return 0x0DCD; default: return 0; } return 0; } int getCharType (SS_UCS4 unchar) { initLigatures(); char echartype = (char) indic->encode (unchar); return (int) echartype; } /** * get left part of LR vowel */ SS_UCS4 getLRVowelLeft (SS_UCS4 u) { switch (u) { case 0x09CB: case 0x09CC: return 0x09c7; case 0x0b4b: case 0x0b4c: return 0x0b47; case 0x0d4b: return 0x0d47; case 0x0d4a: case 0x0d4c: return 0x0d46; default: break; } return 0; } /** * get right part of LR vowel */ SS_UCS4 getLRVowelRight (SS_UCS4 u) { switch (u) { case 0x09CB: return 0x09be; case 0x09CC: return 0x09d7; case 0x0b4b: return 0x0b3e; case 0x0b4c: return 0x0b57; case 0x0d4a: case 0x0d4b: return 0x0d3e; case 0x0d4c: return 0x0d57; default: break; } return 0; } /** * Decompose yudit ligature into unicode characters */ void expandYuditLigatures (SV_UCS4* decd) { if (decd->size()!=1 || (*decd)[0] < 0x80000000) return; SS_UCS4 ucs4 = (*decd)[0]; decd->remove (0); /* Yudit ligatures*/ switch (ucs4) { case 0x80000010: /* JIS X 0213: 02B65 */ decd->append (0x02E9); decd->append (0x02E5); break; case 0x80000011: /* JIS X 0213: 02B66 */ decd->append (0x02E5); decd->append (0x02E9); break; // Generated by ./jiscompose.pl at 2002-04-15 // Add this to stoolkit/SCluster.cpp expandYuditLigatures case 0x80000040: /* JIS X 0213: 0x2477 */ decd->append (0x304B); decd->append (0x309A); break; case 0x80000041: /* JIS X 0213: 0x2478 */ decd->append (0x304D); decd->append (0x309A); break; case 0x80000042: /* JIS X 0213: 0x2479 */ decd->append (0x304F); decd->append (0x309A); break; case 0x80000043: /* JIS X 0213: 0x247A */ decd->append (0x3051); decd->append (0x309A); break; case 0x80000044: /* JIS X 0213: 0x247B */ decd->append (0x3053); decd->append (0x309A); break; case 0x80000045: /* JIS X 0213: 0x2577 */ decd->append (0x30AB); decd->append (0x309A); break; case 0x80000046: /* JIS X 0213: 0x2578 */ decd->append (0x30AD); decd->append (0x309A); break; case 0x80000047: /* JIS X 0213: 0x2579 */ decd->append (0x30AF); decd->append (0x309A); break; case 0x80000048: /* JIS X 0213: 0x257A */ decd->append (0x30B1); decd->append (0x309A); break; case 0x80000049: /* JIS X 0213: 0x257B */ decd->append (0x30B3); decd->append (0x309A); break; case 0x8000004A: /* JIS X 0213: 0x257C */ decd->append (0x30BB); decd->append (0x309A); break; case 0x8000004B: /* JIS X 0213: 0x257D */ decd->append (0x30C4); decd->append (0x309A); break; case 0x8000004C: /* JIS X 0213: 0x257E */ decd->append (0x30C8); decd->append (0x309A); break; case 0x8000004D: /* JIS X 0213: 0x2678 */ decd->append (0x31F7); decd->append (0x309A); break; case 0x8000004E: /* JIS X 0213: 0x2B44 */ decd->append (0x00E6); decd->append (0x0300); break; case 0x8000004F: /* JIS X 0213: 0x2B48 */ decd->append (0x0254); decd->append (0x0300); break; case 0x80000050: /* JIS X 0213: 0x2B49 */ decd->append (0x0254); decd->append (0x0301); break; case 0x80000051: /* JIS X 0213: 0x2B4A */ decd->append (0x028C); decd->append (0x0300); break; case 0x80000052: /* JIS X 0213: 0x2B4B */ decd->append (0x028C); decd->append (0x0301); break; case 0x80000053: /* JIS X 0213: 0x2B4C */ decd->append (0x0259); decd->append (0x0300); break; case 0x80000054: /* JIS X 0213: 0x2B4D */ decd->append (0x0259); decd->append (0x0301); break; case 0x80000055: /* JIS X 0213: 0x2B4E */ decd->append (0x025A); decd->append (0x0300); break; case 0x80000056: /* JIS X 0213: 0x2B4F */ decd->append (0x025A); decd->append (0x0301); break; // END OF ./jiscompose.pl default: break; } if (decd->size()==0) decd->append(0xfffd); return; } /** * Get the Jamo class * @param ucs is the unicode character * @return one of *
    *
  • SD_JAMO_X
  • *
  • SD_JAMO_L
  • *
  • SD_JAMO_V
  • *
  • SD_JAMO_T
  • *
*/ int getJamoClass (SS_UCS4 uc) { if (uc >= 0x1100 && uc <= 0x115f) return SD_JAMO_L; if (uc >= 0x1160 && uc <= 0x11a2) return SD_JAMO_V; if (uc >= 0x11a8 && uc <= 0x11f9) return SD_JAMO_T; return SD_JAMO_X; } /* get the name of OTF font shaping feature name */ const char* getShapeCode (unsigned int icode) { static const char* shapes[] = { "isol", "init", "medi", "fina", "med2", "fin2", "fin3", "init", }; if (icode >= 8) return "unkown"; return shapes[icode]; } ./stoolkit/SUniMap.h0000644000175000017500000000613510434025610014372 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SUniMap_h #define SUniMap_h #include "stoolkit/STypes.h" #include "stoolkit/SObject.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" /** * A unicode Map. It maps SV_UCS2 to SV_UCS4. It is generally useful * When mapping UCS4 to Font encodings. * This is mase upong the .my maps * @author: Gaspar Sinai * @version: 2000-05-12 */ class SUniMap : public SObject { public: SUniMap (void); SUniMap (const SString& name); SUniMap (const SUniMap &m); SUniMap& operator = (const SUniMap &m); virtual ~SUniMap(); virtual SObject* clone () const; SS_UCS4 decode (SS_UCS2 in); SS_UCS2 encode (SS_UCS4 in); unsigned int getDecoderMap (SStringVector* key, SStringVector* value, unsigned int size); /* * Convert whatever is in 'in' if possible. * and remove it. */ unsigned int lift (const SV_UCS4& in, unsigned int ini, bool decode, SV_UCS4* out=0); int getInWordSize(bool encode); int getOutWordSize(bool encode); bool isOK() const; static void setPath(const SStringVector &p); static void guessPath(const SStringVector& files, const SString& property); static void guessPath(); static const SStringVector& getPath(); /* State keeping coder. */ void reset(bool encode); void reset(); void undo (bool encode); const SV_UCS4& decode (const SString& in); const SString& encode (const SV_UCS4& in); const SString& encodeBuffer(); const SV_UCS4& decodeBuffer(); /* For maps with holes */ unsigned int getDecodePosition (SS_UCS4 key); SS_UCS4 getDecodeKey (unsigned int position); SS_UCS4 getDecodeValue (unsigned int position); unsigned int getEncodePosition (SS_UCS4 key); SS_UCS4 getEncodeKey (unsigned int position); SS_UCS4 getEncodeValue (unsigned int position); /* Vector all maps available on this path */ static SStringVector list (); const SString& remainder() const; bool isUMap() const; bool isClustered() const; protected: void load (const SString& name); void derefer(); void setModel(int din, int dout, int ein, int eout); int indexOf (bool encode) const; bool ok; void* bumap; int eindex; int dindex; void* delegate; void* dmodel; void* emodel; void* dmodel4; void* emodel4; SV_UCS4 ucs4vIn; SV_UCS4 ucs4vOut; SString sstringIn; SString sstringOut; }; #endif /* SUniMap_h */ ./stoolkit/SVector.h0000644000175000017500000000573410434025610014447 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SVector_h #define SVector_h /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SBVector.h" #include "SExcept.h" /** * This is my vector. stoolkit as that. There is no code, * just this. This vector is for basic types like int, char e.t.c. * This one makes a copy of the object. */ template class SVector : public SOVector { public: SVector (void) : SOVector () {} virtual ~SVector () {} virtual SObject* clone() const { SVector* n = new SVector (*this); CHECK_NEW(n); return n;} SVector (const SVector& v) : SOVector (v) { } SVector (BType& e) : SOVector () { append (e);} SVector& operator=(const SVector& v) { refer(v); return *this; } const BType* peek (unsigned int index) const { return (BType*) SOVector::peek (index); } void append (const BType& v) { SOVector::insert (size(), v); } void replace (unsigned int index, const BType& v) { SOVector::replace (index, v); } void insert (unsigned int index, const BType& v) { SOVector::insert (index, v); } void remove (unsigned int index) { SOVector::remove (index); } void remove (unsigned int index, unsigned int _size) { for (unsigned int i=0; i<_size; i++) SOVector::remove (index); } void truncate (unsigned int _size) { while (size()>_size) SOVector::remove (size()-1); } const BType& operator[] (unsigned int index) const { return *peek(index); } //friend SVector& operator << (SVector& e1, const BType& e2) // { e1.append(e2); return e1; } unsigned int size () const { return SOVector::size (); } unsigned int appendSorted (const BType& v) { unsigned int top = findSorted (v); // Append at the end... for (unsigned int i=top; i bottom) { mid = (top+bottom)/2; if (v.compare(*peek(mid))==0) { top = mid; break; } if (v.compare(*peek(mid))<0) { top = mid; continue; } bottom = mid + 1; } return top; } }; #endif /* SVector _h*/ ./stoolkit/SLineCurve.h0000644000175000017500000000333710434025610015076 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SLineCurve_h #define SLineCurve_h #include #include #include class SLineCurve : public SObject { public: /* Obligatory stuff */ SLineCurve (void); SLineCurve (const SLineCurve& d); SLineCurve operator = (const SLineCurve& d); virtual ~SLineCurve (); virtual SObject* clone() const; unsigned int length () const; unsigned int length (unsigned int segment) const; unsigned int length (unsigned int from, unsigned int to) const; unsigned int distance () const; unsigned int distance (unsigned int p0, unsigned int p1) const; const SLocation& operator[] (unsigned int index) const; SLocation getVector (unsigned int p0, unsigned int p1) const; unsigned int size() const; void clear(); void append (const SLocation& l); protected: SVector vectors; SBinVector lengths; }; typedef SVector SLineCurves; #endif /* SLineCurve_h */ ./stoolkit/SHashtable.h0000644000175000017500000000375411326742457015120 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SHashtable_h #define SHashtable_h /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SBHashtable.h" #include "SString.h" #include "SExcept.h" /** * This is a hash for SObjects */ template class SHashtable : public SOHashtable { public: SHashtable (void) : SOHashtable() {} SHashtable (const SHashtable& base) : SOHashtable(base) {}; virtual SObject* clone() const { SHashtable* n = new SHashtable (*this); CHECK_NEW(n); return n;} virtual ~SHashtable () { } SHashtable& operator=(const SHashtable& v) { refer (v); return *this; } const BType* get (const SString& key) const { return (BType*) SOHashtable::get (key); } const SString& key (unsigned int row, unsigned int col) const { return SBHashtable::key (row, col); } const BType* get (unsigned int row, unsigned int col) const { return (BType*) SOHashtable::get(row, col); } void put (const SString& key, const BType& e, bool replace=true) { SOHashtable::put (key, e, replace); } void remove (const SString& key) { SOHashtable::remove (key); } void clear () { SOHashtable::clear(); } const BType& operator[] (const SString& key) const { return *get (key); } }; #endif /* SHashtable_h _h*/ ./stoolkit/SUtil.h0000644000175000017500000000402411331746026014121 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SUtil_h #define SUtil_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SProperties.h" SString getHome (); SString getPrefix (); bool setPrefix (const SString& str); bool loadProperties (SProperties* in); bool loadProperties (const SString& file, SProperties* in); bool saveProperties (const SString& file, const SProperties& out); /* call them in this order */ void initTranslate (const SString& bindIn, const SString& domain); void setLanguage (const SString& lang); SString getLanguage (); SString getSystemLanguage (const SString& fb); SString translate (const SString& str); SString unicodeValueOf (const SV_UCS4& str); SString unicodeValueOf (const SString& str); /* cost effective math routines */ unsigned long ss_sqrtlong (unsigned long sq); /* * arcus tanget in a scale of 32 * 0 => 12:00, 8 => 3:00, 16 => 6:00, 24 => 9:00 */ int ss_atan32 (int x, int y); long getMaxLong(); long getMaxSqrtLong(); int getMaxInt(); int getMaxSqrtInt(); bool isWindows (); /* for nt this is false */ bool isWinAPI (); /* Microsoft tthis is true */ bool commandExists (const SString& str); /* Filnames with codepages are converted to utf-8 here. */ SString systemToUtf8 (const SString& str); SString utf8ToSystem (const SString& str); #endif /* Util_h */ ./stoolkit/SBMap.cpp0000644000175000017500000027340110451632000014351 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ // // SBMap.cpp // Tokyo 1999-12-04 Gaspar Sinai // Map N bytes to N bytes #include "stoolkit/SExcept.h" #include "stoolkit/SString.h" #include "stoolkit/STypes.h" #include "stoolkit/SBMap.h" #include "stoolkit/SEncoder.h" #include #include #define TO16(c) (((SS_WORD16)c[0]<<8) + (SS_WORD16)c[1]) #define TO32(c) (((SS_WORD32)c[0]<<24) + ((SS_WORD32)c[1]<<16) + ((SS_WORD32)c[2]<<8) + (SS_WORD32)c[3]) #define TO64(c) (((SS_WORD64)c[0]<<56) + ((SS_WORD64)c[1]<<48) + ((SS_WORD64)c[2]<<40) + ((SS_WORD64)c[3]<<32) + ((SS_WORD64)c[4]<<24) + ((SS_WORD64)c[5]<<16) + ((SS_WORD64)c[6]<<8) + (SS_WORD64)c[7]) #if defined LONG_LONG #define VALID_WORD(a) ((a)==3 || (a)==2 || (a)==1 || (a)==0) #else #define VALID_WORD(a) ((a)==2 || (a)==1 || (a)==0) #endif /** * This sould be exactly 16 bytes. */ static char magicNN[]="YUDIT-NtoN 1.0"; static char magicBM[]="YUDIT-UMAP 1.0"; static char dummyName[32]= //01234567890123456789012345678901 "Yudit umap file format "; /** * The last two values are bitmap OR ed to first few values */ typedef enum { FT_MAGIC=0, FT_NAME, FT_SECTION, FT_SIZE_FROM, FT_SIZE_TO, FT_LENGTH_FROM, FT_LENGTH_TO, FT_IS_ENCODE, FT_MAP_TYPE, FT_COMMENT, FT_NATIVE_DATA, FT_UNIC_DATA, FT_IGNORE, FT_MAX } SS_FieldType; const char* textMapPrefix[FT_MAX+1]={ "# ", "#\n#-----------------------------------------\n#### THE NAME OF THIS MAP ###.\nNAME=", "\n#--------------- NEW SECTION -------------\nSECTION=", "\n# 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word\nKEY_WIDTH=", "\n# 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word\nVALUE_WIDTH=", "\n# 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length\nKEY_LENGTH=", "\n# 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length\nVALUE_LENGTH=", "\nENCODE=", "\n# 0=NONE 1=KEY MAP 2=FONT MAP\nTYPE=", "COMM=", "", "", "#", "", }; const char* cMapPrefix[FT_MAX+1]={ "/*--- Magic --*/\n", "\n/*--- Map Name --*/\n", "\n/*------------------New section---------------*/\n", "\n/*---- Width 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit ---*/\n", "\n/*---- Width 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit ---*/\n", "\n/*---- Width 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit ---*/\n", "\n/*---- Width 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit ---*/\n", "\n/*--- ENCODE--*/\n", "\n/*--- TYPE ---*/\n", "\n/*--- COMM ---*/\n", "", "", "", "", }; static int writeBytes(SString* fd, const unsigned char* in, int size); static int write8 (SString* _fd, SS_WORD8 number, SFileFormat _format, const SS_FieldType ftype, const SS_LineEnd lend); static int write16 (SString* fd, SS_WORD16 number, SFileFormat _format, const SS_FieldType ftype, const SS_LineEnd lend); static int write32 (SString* fd, SS_WORD32 number, SFileFormat _format, const SS_FieldType ftype, const SS_LineEnd lend); static int write1(SString* _fd, const unsigned char* out, int size, SFileFormat _format, const SS_FieldType ftype, const SS_LineEnd lend); /** * SBMap can be used to map any N-word-long string into * any n word long string. The supported word sizes are 1,2,4 and 8. * The array of words can be arbirary long. */ SBMap::SBMap () { status = false; buffer =0; bufferSize = 0; maps = 0; mapSize = 0; name = 0; comment = 0; commentSize = 0; nameType = SBMap_ARRAY; commentType = SBMap_ARRAY; bufferType = SBMap_ARRAY; } /** * Set the map type, and initialize map, if not initialized. * @param _mapType is the type of map. *
    *
  • 0 - unknown
  • *
  • 1 - character map
  • *
  • 2 - key map
  • *
*/ void SBMap::setType (int _mapType) { mapType = _mapType; status = true; } /** * Set the name of the map and init. * @param _name is a max 32-byte-long name */ void SBMap::setName (const unsigned char* _name) { nameType = SBMap_DYNAMIC; nameBuffer = new unsigned char [32]; CHECK_NEW (nameBuffer); strncpy ((char*) nameBuffer, (const char*) _name, 32); name = nameBuffer; status = true; } /** * Set the comment. * @param _commment is a comment of arbitrary length. * @param _commmentSize is the length of the commnent. */ void SBMap::setComment (const unsigned char* _comment, int _commentSize) { commentType = SBMap_DYNAMIC; commentSize = (SS_WORD32) _commentSize; commentBuffer = new unsigned char [commentSize]; CHECK_NEW (commentBuffer); memcpy (commentBuffer, _comment, commentSize); comment = commentBuffer; status = true; } SBMap::~SBMap() { clear (); } /** * Addd a new item to the SBMapBuffer. You can add an SBMapItem only if the * SBMap has been properly initialized. * @param _item is the item to add. This will be owned by SBMap. * @param _position is the position of the SBMapItem, if it is less than 0 * it will be added as a new item. */ bool SBMap::add (SBMapItem* _item, int _position) { if (status==false) return false; if (_position>=0 && _position 0) { memcpy (newMaps, maps, mapSize * sizeof (SBMapItem*)); delete maps; } maps = newMaps; maps[mapSize++] = _item; return true; } /** * Create an SBMapBuffer to temporarily store data * @param _fromWordSize is the byte count of input data. * @param _toWordSize is the byte count of stored data. */ SBMapBuffer::SBMapBuffer (int _fromWordSize, int _toWordSize) : fromWordSize (_fromWordSize), toWordSize (_toWordSize) { bufferSize=2; u.u64 = new SS_WORD64 [1+((bufferSize<>2)]; CHECK_NEW (u.u64); length = 0; } SBMapBuffer::~SBMapBuffer() { delete u.u64; } /** * Append an aray of input and put it in the internal buffer. * @param buffer is a pointer to the input array of inWordSize bytes type * @param _length is the length of the input array of specified type */ void SBMapBuffer::append(const void *buffer, int _length) { int i; const SS_WORD8* i8; const SS_WORD16* i16; const SS_WORD32* i32; const SS_WORD64* i64; ensureCapacity (_length + length); switch (fromWordSize) { case 0: i8 = (SS_WORD8*) buffer; for (i=0; i<_length; i++) { switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i8[i]; break; case 1: u.u16[length+i] = (SS_WORD16) i8[i]; break; case 2: u.u32[length+i] = (SS_WORD32) i8[i]; break; case 3: u.u64[length+i] = (SS_WORD64) i8[i]; break; } } break; case 1: i16 = (SS_WORD16*) buffer; for (i=0; i<_length; i++) { switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i16[i]; break; case 1: u.u16[length+i] = (SS_WORD16) i16[i]; break; case 2: u.u32[length+i] = (SS_WORD32) i16[i]; break; case 3: u.u64[length+i] = (SS_WORD64) i16[i]; break; } } break; case 2: i32 = (SS_WORD32*) buffer; for (i=0; i<_length; i++) { switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i32[i]; break; case 1: u.u16[length+i] = (SS_WORD16) i32[i]; break; case 2: u.u32[length+i] = (SS_WORD32) i32[i]; break; case 3: u.u64[length+i] = (SS_WORD64) i32[i]; break; } } break; case 3: i64 = (SS_WORD64*) buffer; for (i=0; i<_length; i++) { switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i64[i]; break; case 1: u.u16[length+i] = (SS_WORD16) i64[i]; break; case 2: u.u32[length+i] = (SS_WORD32) i64[i]; break; case 3: u.u64[length+i] = (SS_WORD64) i64[i]; break; } } break; } length+=_length; } /** * shift array items in buffer. * @param _size is the length of typed shift. */ void SBMapBuffer::shift (int _size) { int i; switch (toWordSize) { case 0: for (i=0; i0) length -= _size; } /** * Append an aray of input and put it in the internal buffer. * @param buffer is a pointer to the input array of inWordSize bytes type * This is in native order. * @param _length is the length of the input array of specified type */ void SBMapBuffer::appendToNet(const void *buffer, int _length) { int i; const SS_WORD8* i8; const SS_WORD16* i16; const SS_WORD32* i32; const SS_WORD64* i64; int ndx; ensureCapacity (_length + length); switch (fromWordSize) { case 0: i8 = (SS_WORD8*) buffer; for (i=0; i<_length; i++) { ndx = (length+i) << toWordSize; switch (toWordSize) { case 0: u.u8[ndx] = i8[i]; break; case 1: u.u8[ndx] = 0; u.u8[ndx+1] = i8[i]; break; case 2: u.u8[ndx] = 0; u.u8[ndx+1] = 0; u.u8[ndx+2] = 0; u.u8[ndx+3] = i8[i]; break; case 3: u.u8[ndx] = 0; u.u8[ndx+1] = 0; u.u8[ndx+2] = 0; u.u8[ndx+3] = 0; u.u8[ndx+4] = 0; u.u8[ndx+5] = 0; u.u8[ndx+6] = 0; u.u8[ndx+7] = i8[i]; break; } } break; case 1: i16 = (SS_WORD16*) buffer; for (i=0; i<_length; i++) { ndx = (length+i) << toWordSize; switch (toWordSize) { case 0: u.u8[ndx] = i16[i]&0xff; break; case 1: u.u8[ndx] = (i16[i]>>8)&0xff; u.u8[ndx+1] = i16[i]&0xff; break; case 2: u.u8[ndx] = 0; u.u8[ndx+1] = 0; u.u8[ndx+2] = (i16[i]>>8)&0xff; u.u8[ndx+3] = i16[i] &0xff; break; case 3: u.u8[ndx] = 0; u.u8[ndx+1] = 0; u.u8[ndx+2] = 0; u.u8[ndx+3] = 0; u.u8[ndx+4] = 0; u.u8[ndx+5] = 0; u.u8[ndx+6] = (i16[i]>>8)&0xff; u.u8[ndx+7] = i16[i] &0xff; break; } } break; case 2: i32 = (SS_WORD32*) buffer; for (i=0; i<_length; i++) { ndx = (length+i) << toWordSize; switch (toWordSize) { case 0: u.u8[ndx] = i32[i]&0xff; break; case 1: u.u8[ndx] = (i32[i]>>8) & 0xff; u.u8[ndx+1] = i32[i]&0xff; break; case 2: u.u8[ndx] = (i32[i]>>24) & 0xff; u.u8[ndx+1] = (i32[i]>>16) & 0xff; u.u8[ndx+2] = (i32[i]>>8) & 0xff; u.u8[ndx+3] = i32[i] &0xff; break; case 3: u.u8[ndx] = 0; u.u8[ndx+1] = 0; u.u8[ndx+2] = 0; u.u8[ndx+3] = 0; u.u8[ndx+4] = (i32[i]>>24) & 0xff; u.u8[ndx+5] = (i32[i]>>16) & 0xff; u.u8[ndx+6] = (i32[i]>>8) & 0xff; u.u8[ndx+7] = i32[i] &0xff; break; } } break; case 3: i64 = (SS_WORD64*) buffer; for (i=0; i<_length; i++) { ndx = (length+i) << toWordSize; switch (toWordSize) { case 0: u.u8[ndx] = i64[i]&0xff; break; case 1: u.u8[ndx] = (i64[i]>>8) & 0xff; u.u8[ndx+1] = i64[i]&0xff; break; case 2: u.u8[ndx] = (i64[i]>>24) & 0xff; u.u8[ndx+1] = (i64[i]>>16) & 0xff; u.u8[ndx+2] = (i64[i]>>8) & 0xff; u.u8[ndx+3] = i64[i] &0xff; break; case 3: u.u8[ndx] = (i64[i]>>56) & 0xf; u.u8[ndx+1] = (i64[i]>>48) & 0xf; u.u8[ndx+2] = (i64[i]>>40) & 0xf; u.u8[ndx+3] = (i64[i]>>32) & 0xf; u.u8[ndx+4] = (i64[i]>>24) & 0xff; u.u8[ndx+5] = (i64[i]>>16) & 0xff; u.u8[ndx+6] = (i64[i]>>8) & 0xff; u.u8[ndx+7] = i64[i] &0xff; break; } } break; } length+=_length; } /** * Append an aray of input of net order to the internal buffer. * @param buffer is a pointer to the input array of inWordSize bytes type * This is in Net order. * @param _length is the length of the input array of specified type */ void SBMapBuffer::appendFromNet(const void *buff, int _length) { int i; const unsigned char* buffer=(const unsigned char*)buff; const unsigned char *p; SS_WORD8 i8; SS_WORD16 i16; SS_WORD32 i32; SS_WORD64 i64; ensureCapacity (_length + length); switch (fromWordSize) { case 0: for (i=0; i<_length; i++) { i8 = buffer[i]; switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i8; break; case 1: u.u16[length+i] = (SS_WORD16) i8; break; case 2: u.u32[length+i] = (SS_WORD32) i8; break; case 3: u.u64[length+i] = (SS_WORD64) i8; break; } } length+=_length; break; case 1: for (i=0; i<_length; i++) { p = &buffer[i<<1]; i16 = (SS_WORD16) TO16(p); switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i16; break; case 1: u.u16[length+i] = (SS_WORD16) i16; break; case 2: u.u32[length+i] = (SS_WORD32) i16; break; case 3: u.u64[length+i] = (SS_WORD64) i16; break; } } length+=_length; break; case 2: for (i=0; i<_length; i++) { p = &buffer[i<<2]; i32 = (SS_WORD32) TO32(p); switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i32; break; case 1: u.u16[length+i] = (SS_WORD16) i32; break; case 2: u.u32[length+i] = (SS_WORD32) i32; break; case 3: u.u64[length+i] = (SS_WORD64) i32; break; } } length+=_length; break; case 3: for (i=0; i<_length; i++) { p = &buffer[i<<3]; i64 = (SS_WORD64) TO64(p); switch (toWordSize) { case 0: u.u8[length+i] = (SS_WORD8) i64; break; case 1: u.u16[length+i] = (SS_WORD16) i64; break; case 2: u.u32[length+i] = (SS_WORD32) i64; break; case 3: u.u64[length+i] = (SS_WORD64) i64; break; } } length+=_length; break; } } /** * Ensures the capacity of the internal buffer. Never shrinks. * @param _length the length of a specified type array. */ void SBMapBuffer::ensureCapacity(int _length) { if (bufferSize>_length) return ; SS_WORD64 *u64; int newSize = (_length>bufferSize) ? bufferSize + _length : bufferSize << 1; // Some arch it is 32 bit :( - what a waste of memory.. u64 = (SS_WORD64*) new SS_WORD64[1+((newSize<>2)]; CHECK_NEW (u64); memcpy (u64, u.u64, length * (1<in. * @param outFromLength the byte count of the output * @param outToLength the byte count of the output stored in member out. */ SStateModel::SStateModel (int inFromLength, int inToLength, int outFromLength, int outToLength) : out (outFromLength, outToLength), in (inFromLength, inToLength) { low = 0; high = 0; nextPos = 0; lastPos = 0; lastMatch = 0; circle = 0; needReset = 0; circleResult = 0; circleCount = 0; circleSize = 0; } SStateModel::~SStateModel() { reset (); } /** * Reset the state machine. */ void SStateModel::reset () { low = 0; high = 0; nextPos = 0; lastPos = 0; lastMatch = 0; circle = 0; needReset = 0; circleResult = 0; circleCount = 0; circleSize = 0; in.reset (); out.reset (); } /** * Clear the SBMap. Get rid of assigned buffer. * You should not use any SStateModel after this. */ void SBMap::clear () { int i; if (bufferType == SBMap_MMAP && buffer!=0) { SFileImage fi; image = fi; } if (bufferType == SBMap_DYNAMIC && buffer!=0) delete buffer; if (nameType == SBMap_DYNAMIC) { delete nameBuffer; } nameType = SBMap_ARRAY; if (commentType == SBMap_DYNAMIC) { delete commentBuffer; } commentType = SBMap_ARRAY; status = false; buffer =0; bufferSize = 0; //fprintf (stderr, "mapSize= %d of deleting %lx \n", mapSize, (unsigned long) this); for (i=0; i * @version 1.0 * @param file the name of the file. This should be on your UMAP_PATH. * a ".map" extension will be attached to this name. * @return false if failed to map this file. */ bool SBMap::setFileImage (const SFileImage& _image) { clear (); image = _image; status = false; if (image.size() > 0) { status = true; bufferSize = image.size(); buffer = (unsigned char*) image.array(); bufferType = SBMap_MMAP; processBuffer(); } if (status!=true) clear(); return status; } /** * Assign an array to be used for this map. * The array should not be changed till this map * is deleted. * @author Gaspar Sinai * @version 1.0 * @param buffer the buffer to be used. * @return false if failed to map this array. */ bool SBMap::setArray (unsigned char* _buffer, int size) { clear (); buffer = _buffer; bufferSize = size; bufferType = SBMap_ARRAY; status = true; return processBuffer(); } /** * Using the SBMapType _type map try to code the input stream using the statemodel. * It circles around the given SBMapType and adds up the first array element * of results if array size is greater than zero. The result is stored in a * n bit array. * * The statemodel should match this SBMap: *
 *  if (map->inWordSize != stateModel->in.toWordSize) return REJECT;
 *  if (map->outWordSize != stateModel->out.fromWordSize) return REJECT;
 * 
* The best is to create a statemodel like this: *
 * new SStateModel (myInWordSize, nmap.getInWordSize (index),
 *     map.getOutWordSize (index), myOutWordSize);
 * 
* * @param in is the input buffer. This will be appended to the statemodel. * @param in_size is the size of the input buffer * @param more is 0 if no more input comes. If this matches, return it. * @param in_match is the size of the match in input buffer. It is only set if * MATCH or EXACT_MATCH is returned. * @param *out is the size of the output buffer. This buffer belongs to SBMap * and it will disappear as soon as SBMap is gone. * @param *out_size the size of the output buffer is indicated here. * @return depending on the match the following values can be returned. *
    *
  • SS_REJECT if failed to code this string.
  • *
  • SS_ACCEPT if string will match. This will never be returned if more is 0.
  • *
  • The input string length matched, greater or equal to 0. * Note that 0 byte can be a valid match.
  • *
* Statemodel will have the following parameters set: *
    *
  • out.length is the size of the output buffer. This buffer belongs to * SStateModel.
  • *
  • out.u is the the output buffer. This buffer belongs to SStateModel. *
  • state is the position in in.u
  • *
  • low is the low index matching
  • *
  • high is the high index matching
  • *
  • last is the last state matched
  • *
*/ int SBMap::circle (SBMapType _type, const void *in, int in_size, SStateModel *stateModel, int more) { if (stateModel->needReset) { stateModel->reset(); } /* make sure we match circle */ int i; int res; int all = getSize(); for (i=stateModel->circle; ineedReset = 1; return SS_REJECT; } stateModel->circle = i; res = encode (i, in, in_size, stateModel, more); if (res==SS_ACCEPT) return SS_ACCEPT; if (res==SS_REJECT) { stateModel->needReset = 1; return SS_REJECT; } stateModel->in.shift (res); stateModel->circleSize+=res; if (stateModel->out.length > 0) { switch (stateModel->out.toWordSize) { case 0: stateModel->circleResult += (SS_WORD64) stateModel->out.u.u8[0]; break; case 1: stateModel->circleResult += (SS_WORD64) stateModel->out.u.u16[0]; break; case 2: stateModel->circleResult += (SS_WORD64) stateModel->out.u.u32[0]; break; case 3: stateModel->circleResult += (SS_WORD64) stateModel->out.u.u64[0]; break; } stateModel->circleCount++; } // Find next. for (i=stateModel->circle+1; ilow = 0; stateModel->high = 0; stateModel->nextPos = 0; stateModel->lastPos = 0; stateModel->lastMatch = 0; stateModel->circle = i; if (stateModel->in.length!=0) { // in already shifted in. return circle (_type, in, 0, stateModel, more); } if (more==0) { stateModel->needReset = 1; return SS_REJECT; } return SS_ACCEPT; } // There is no next. stateModel->needReset = 1; // This has only one encoder/decoder. Don't spoil output! if (stateModel->circleCount==1) return res; switch (stateModel->out.toWordSize) { case 0: stateModel->out.u.u8[0] = (SS_WORD8) stateModel->circleResult; break; case 1: stateModel->out.u.u16[0] = (SS_WORD16) stateModel->circleResult; break; case 2: stateModel->out.u.u32[0] = (SS_WORD32) stateModel->circleResult; break; case 3: stateModel->out.u.u64[0] = (SS_WORD64) stateModel->circleResult; break; } stateModel->out.length=1; return stateModel->circleSize; } /** * Using the mapIndex map try to code the input stream using the statemodel. * The statemodel should match this SBMap: *
 *  if (map->inWordSize != stateModel->in.toWordSize) return REJECT;
 *  if (map->outWordSize != stateModel->out.fromWordSize) return REJECT;
 * 
* The best is to create a statemodel like this: *
 * new SStateModel (myInWordSize, nmap.getInWordSize (index),
 *     map.getOutWordSize (index), myOutWordSize);
 * 
* * @param in is the input buffer. This will be appended to the statemodel. * @param in_size is the size of the input buffer * @param more is 0 if no more input comes. If this matches, return it. * @param in_match is the size of the match in input buffer. It is only set if * MATCH or EXACT_MATCH is returned. * @param *out is the size of the output buffer. This buffer belongs to SBMap * and it will disappear as soon as SBMap is gone. * @param *out_size the size of the output buffer is indicated here. * @return depending on the match the following values can be returned. *
    *
  • SS_REJECT if failed to code this string.
  • *
  • SS_ACCEPT if string will match. This will never be returned if more is 0.
  • *
  • The input string length matched, greater or equal to 0. * Note that 0 byte can be a valid match.
  • *
* Statemodel will have the following parameters set: *
    *
  • out.length is the size of the output buffer. This buffer belongs to * SStateModel.
  • *
  • out.u is the the output buffer. This buffer belongs to SStateModel. *
  • state is the position in in.u
  • *
  • low is the low index matching
  • *
  • high is the high index matching
  • *
  • last is the last state matched
  • *
*/ int SBMap::encode (int mapIndex, const void *in, int in_size, SStateModel *stateModel, int more) { unsigned int i; unsigned int j; int reject; SBMapItem::SFound result; reject = SS_REJECT; if (status!=true || maps ==0 || mapIndex >= mapSize) return SS_REJECT; SBMapItem* map = maps[mapIndex]; // We go through the input and do the search byte by byte // This sucks. Should not do this. stateModel->in.appendToNet (in, in_size); if (stateModel->in.length==0) return SS_ACCEPT; if (map->inWordSize != stateModel->in.toWordSize) return SS_REJECT; if (map->outWordSize != stateModel->out.fromWordSize) return SS_REJECT; if (stateModel->nextPos==0) { unsigned int a, b; stateModel->lastPos = SS_REJECT; stateModel->lastMatch = 0; if (map->itemType != SBMapItem::SBMapBumap) { map->getKey(0, &a, &b); if (b==0) stateModel->lastPos = 0; } stateModel->low = 0; stateModel->high = map->codeSize; } result = SBMapItem::REJECT; const char* buf= (const char*) stateModel->in.u.u8; unsigned int shift = stateModel->in.toWordSize; unsigned int ilimit = (stateModel->in.length << shift); unsigned int istep = (1 << shift); for (i=stateModel->nextPos; ifind (buf[i+j], i+j, &stateModel->low, &stateModel->high); if (result==SBMapItem::REJECT) break; } stateModel->nextPos += (1<lastPos>=0) { // Lastmatch is set in setOutput setOutput (map, stateModel); return stateModel->lastPos; } return SS_REJECT; case SBMapItem::MORE: break; case SBMapItem::MATCH_MORE: stateModel->lastPos = i+1; stateModel->lastMatch = stateModel->low; break; case SBMapItem::MATCH: stateModel->lastMatch = stateModel->low; // setOutput updates lastPos setOutput (map, stateModel); return stateModel->lastPos; } } switch (result) { case SBMapItem::REJECT: return SS_REJECT; case SBMapItem::MORE: if (more==0) { return SS_REJECT; } return SS_ACCEPT; case SBMapItem::MATCH_MORE: if (more==0) { setOutput (map, stateModel); return stateModel->lastPos; } return SS_ACCEPT; case SBMapItem::MATCH: // We did process it. break; } return SS_REJECT; } /** * Set the output * @param map is the map where the output can be found. * @param staetmodel is the state model where the last and from can be found */ void SBMap::setOutput(SBMapItem* map, SStateModel* stateModel) { if (map->itemType==SBMapItem::SBMapBumap) { // The input is in from, the output is in to stateModel->out.reset(); SS_WORD16 w16; SS_WORD8 w8; if (map->outWordSize==1) { w16 = (SS_WORD16) stateModel->high; stateModel->out.append (&w16, 1); } else { w8 = (SS_WORD8) stateModel->high; stateModel->out.append (&w8, 1); } stateModel->lastPos = 1; return; } unsigned int byteSize; unsigned int macthedSize; map->getKey(stateModel->lastMatch, &byteSize, &macthedSize); stateModel->lastPos = macthedSize >> stateModel->in.toWordSize; const unsigned char* vle = map->getValue(stateModel->lastMatch, &byteSize); stateModel->out.reset(); stateModel->out.appendFromNet (vle, byteSize>>map->outWordSize); } /** * Get the nummber of converters * @return the number of converters in this map. */ int SBMap::getSize (int _index) { if (maps==0 || status==false) return 0; if (_index<0) { return mapSize; } return maps[_index]->codeSize; } /** * @return whether that converter is encoding or decoding (reverse) type. * SBMap_ENCODE or SBMap_DECODE. */ SBMap::SBMapType SBMap::getType (int index) { return ((maps[index]->encode) ? SBMap_ENCODE : SBMap_DECODE); } /** * perform some stoolkit check on buffer and assign maps. */ bool SBMap::processBuffer () { if (strncmp ((const char*)buffer, magicNN, strlen (magicNN))==0) { return processSBMapBuffer (); } else if (strncmp ((const char*)buffer, magicBM, strlen (magicBM))==0) { return processBMBuffer (); } fprintf (stderr, "Error: corrupted Yudit n to n map file.\n"); status = false; return status; } /** * Process buffer - this is an BM buffer for sure. */ bool SBMap::processBMBuffer () { // Font map. mapType = 2; status = false; name = &buffer[16]; const unsigned char* mp = &buffer[16+32]; int offset = TO16 (mp); if (offset<(16+32+2)) return false; commentSize = offset - (16+32+2); mp++; mp++; comment = mp; mp = &mp[commentSize]; SS_WORD16 localHighMin=TO16(mp); mp++; mp++; SS_WORD16 localHighMax=TO16(mp); mp++; mp++; SS_WORD16 localLowMin=TO16(mp); mp++; mp++; SS_WORD16 localLowMax=TO16(mp); mp++; mp++; SS_WORD16 uniHighMin=TO16(mp); mp++; mp++; SS_WORD16 uniHighMax=TO16(mp); mp++; mp++; SS_WORD16 uniLowMin=TO16(mp); mp++; mp++; SS_WORD16 uniLowMax=TO16(mp); mp++; mp++; mapSize = 2; maps = new SBMapItem*[mapSize]; CHECK_NEW (maps); int decodeSize = (localLowMax - localLowMin +1) * (localHighMax - localHighMin +1); //int encodeSize = (localLowMax - localLowMin +1) * (localHighMax - localHighMin +1); maps[0] = new SBMapItem (0, (localHighMax>0) ? 1 : 0, (uniHighMax>0) ? 1 : 0, localHighMin, localHighMax, localLowMin, localLowMax, mp); // 2 byte mp = &mp[decodeSize<<1]; maps[1] = new SBMapItem (1, (uniHighMax>0) ? 1: 0, (localHighMax>0) ? 1 : 0, uniHighMin, uniHighMax, uniLowMin, uniLowMax, mp); status = true; return true; } /** * Make a unicode map. */ bool SBMap::makeUnicodeMap () { clear (); mapSize = 2; maps = new SBMapItem*[mapSize]; CHECK_NEW (maps); maps[0] = new SBMapItem (0, 1, 1, 0, 255, 0, 255); maps[1] = new SBMapItem (1, 1, 1, 0, 255, 0, 255); status = true; return true; } /** * Make a iso-8859-1 map. */ bool SBMap::makeStraightMap () { clear (); mapSize = 2; maps = new SBMapItem*[mapSize]; CHECK_NEW (maps); maps[0] = new SBMapItem (0, 0, 1, 32, 255, 0, 0); maps[1] = new SBMapItem (1, 1, 0, 0, 0, 32, 255); status = true; return true; } /** * Process buffer - this is an NN buffer for sure. */ bool SBMap::processSBMapBuffer () { const unsigned char* mp; name = &buffer[16]; mp = &buffer[16+32]; commentSize = TO32 (mp); mp++; mp++; mp++; mp++; comment = mp; mp = &mp[commentSize]; mapType = TO32 (mp); mp++; mp++; mp++; mp++; mapSize = TO32 (mp); mp++; mp++; mp++; mp++; maps = new SBMapItem*[mapSize]; //fprintf (stderr, "SBMap::processSBMapBuffer %d\n", mapSize); base = &buffer [16+32+4+commentSize+4+4+4*(mapSize+1)]; if (maps==0) { fprintf (stderr, "Map pretends to be size: %d , memory exhausted.\n", mapSize); status = false; return status; } int i; unsigned int offset; for (i=0; iinWordSize) || ! VALID_WORD(maps[i]->outWordSize) || ! VALID_WORD(maps[i]->inByteLength) || ! VALID_WORD(maps[i]->outByteLength)) { fprintf (stderr, "error: map word size is wrong [in=%d,out=%d,inlength=%d,,outlength=%d]\n", (int) maps[i]->inWordSize, (int) maps[i]->outWordSize , (int) maps[i]->inByteLength, (int) maps[i]->outByteLength); while (i>=0) delete maps[i--]; delete maps; maps=0; status = false; return status; } } if (mapSize ==0) { status = false; return status; } status = true; return status; } /** * create a bumap type SBMapItem */ SBMapItem::SBMapItem (int _encode, unsigned int _inWordSize, int _outWordSize, SS_WORD16 _highMin, SS_WORD16 _highMax, SS_WORD16 _lowMin, SS_WORD16 _lowMax, const unsigned char* _matrix) { itemType = SBMapBumap; // Determine size. //(decodeHighMax << 8) + 0xff; encode = _encode; highMin = _highMin; highMax = _highMax; lowMin = _lowMin; lowMax = _lowMax; base = _matrix; // Huh - have to go through inWordSize = _inWordSize; outWordSize = _outWordSize; name = (const unsigned char*) dummyName; inByteLength = 0; outByteLength = 0; stateMachine = 0; stateMachineSize = 0; stateMachineType = SS_STATIC; } /** * Initialize a single map buffer */ SBMapItem::SBMapItem (const unsigned char* buff) { itemType = SBMapNToN; stateMachineType = SS_STATIC; baseType = SS_STATIC; codeMapType = SS_STATIC; nameType = SS_STATIC; unsigned int smac; const unsigned char* mp = buff; name = mp; // First there is a long name mp = &mp[32]; commentSize = TO32 (mp); mp++; mp++; mp++; mp++; comment = mp; mp = &mp[commentSize]; encode = mp[0]; mp++; inWordSize = mp[0]; mp++; outWordSize = mp[0]; mp++; inByteLength = mp[0]; mp++; outByteLength = mp[0]; mp++; smac = TO32 (mp); mp++; mp++; mp++; mp++; stateMachine = 0; stateMachineSize = 0; stateMachineType = SS_STATIC; // Ignore spare mp++; mp++; mp++; mp++; codeSize = TO32 (mp); mp++; mp++; mp++; mp++; codeMap = mp; mp = &mp[(codeSize<<2)]; baseSize = TO32 (mp); mp++; mp++; mp++; mp++; base = mp; if (smac>0) { stateMachine = &base[smac]; stateMachineSize = TO32 (stateMachine); stateMachine++; stateMachine++; stateMachine++; stateMachine++; } } /** * SBMapItem constructor for dynamically built maps. * @param _name a max 32-byte-long name. * @param _comment a utf8 string (recommended) * @param _commentSize the size of the comment. * @param _inWordSize the input word (key) max length - 0=8bit, 1=16bit, 2=32bit, 3=64bit * @param _outWordSize the output word (value~ max length - 0=8bit, 1=16bit, 2=32bit, 3=64bit * @param _inByteLength the input word (key) max length - the number of bytes (maximum value) * @param _outByteLength the output word (value max length - the number of bytes (maximum value) */ SBMapItem::SBMapItem (int _encode, const unsigned char* _name, const unsigned char* _comment, unsigned int _commentSize, unsigned int _inWordSize, unsigned int _outWordSize, unsigned int _inByteLength, unsigned int _outByteLength) { itemType = SBMapNToN; nameBuffer = new unsigned char[32]; CHECK_NEW (nameBuffer); memset (nameBuffer, 0, 32); strncpy ((char*)nameBuffer, (const char*) _name, 32); nameType = SS_DYNAMIC; name = nameBuffer; commentBufferSize = _commentSize; commentBuffer = new unsigned char[commentBufferSize]; CHECK_NEW (commentBuffer); memcpy (commentBuffer, _comment, commentBufferSize); comment=commentBuffer; commentType = SS_DYNAMIC; commentSize=commentBufferSize; codeMap = 0; codeSize = 0; codeMapType = SS_STATIC; base = 0; baseSize = 0; baseType = SS_STATIC; inWordSize = _inWordSize; outWordSize = _outWordSize; inByteLength = _inByteLength; outByteLength = _outByteLength; stateMachineType = SS_STATIC;; stateMachineSize = 0; stateMachine = 0; encode = _encode; } SBMapItem::~SBMapItem () { //fprintf (stderr, "Deleteing map dinamic=%d this=%lx name=%s\n", // stateMachineType == SS_DYNAMIC, (unsigned long) this, nameBuffer); if (itemType == SBMapNToN && stateMachineType == SS_DYNAMIC) { delete stateMachineBuffer; } if (itemType == SBMapNToN && codeMapType == SS_DYNAMIC) { delete codeMapBuffer; } if (itemType == SBMapNToN && baseType == SS_DYNAMIC) { delete baseBuffer; } if (itemType == SBMapNToN && commentType == SS_DYNAMIC) { delete commentBuffer; } if (itemType == SBMapNToN && nameType == SS_DYNAMIC) { delete nameBuffer; } } /** * get rid of all state machines. */ void SBMapItem::strip () { if (itemType!=SBMapNToN) return ; if (stateMachineType == SS_DYNAMIC) { delete stateMachineBuffer; } stateMachineSize = 0; stateMachine = 0; stateMachineType = SS_STATIC; } /** * return the comment. * @param at is the index at wich the string is * @param size is the byte-length of string. */ const unsigned char* SBMapItem::getComment (int at, unsigned int *size) { if (itemType!=SBMapNToN) { *size = 0; return (const unsigned char*) ""; } const unsigned char* vle = &codeMap[at<<2]; unsigned int index = TO32(vle); unsigned int keyHead = 1 << inByteLength; unsigned int vleHead = 1 << outByteLength; // Comment head is 1. unsigned int i; vle = &base[index]; index =0; unsigned int svle=0; for (i=0; i ", input&0xff); } else { sprintf (fullLine, "%04X -> ", input&0xffff); } if (outWordSize==0) { sprintf (word, "%02X", output&0xff); } else { sprintf (word, "%04X", output&0xffff); } strcat (fullLine, word); status = addLine ((const unsigned char*) fullLine, strlen (fullLine)); if (status < 0) { fprintf (stderr, "SBMapItem::convertFromBumap can not add '%s'\n", fullLine); } } } /** * Add a new line into the map. Clear state machine, and make map dynamic. * @param _key is the pointer to the bytestream key. * @param _keySize is the byte length of the key. * @param _matchSize is the byte-length of the sub-key, the part that will be returned as matched. * @param _value is the pointer to the bytestream value. * @param _valueSize is the byte-length of the value. * @param _comment is the - preferredly- utf8 comment. * @param _commentSize is the size of the comment in bytes. Its should be less than 255. * @return the new index or a negative number on failure. */ int SBMapItem::add (const unsigned char* _key, int _keySize, int _matchSize, const unsigned char* _value, int _valueSize, const unsigned char* _comment, int _commentSize) { // Use name and comment. Then convert the rest. if (itemType == SBMapBumap) { convertFromBumap(); } unsigned int needBytes; unsigned int newSize; unsigned char* newBuffer; if ((1<<(8*(1< _keySize || (1<<(8*(1< 255) { fprintf (stderr, "error: map can not hold this key/value length."); return -1; } if (stateMachineType == SS_DYNAMIC) { delete stateMachineBuffer; stateMachineBuffer = 0; stateMachineType = SS_STATIC; } // We need to get rid of the state machine. stateMachine = 0; stateMachineSize = 0; // Make a new code map. if (codeMapType == SS_STATIC) { codeMapBufferSize = (codeSize == 0) ? 2 : (codeSize << 1) +2; codeMapBuffer = new unsigned char[4*codeMapBufferSize]; CHECK_NEW (codeMapBuffer); if (codeSize>0) { memcpy (codeMapBuffer, codeMap, 4 * codeSize); } codeMap = codeMapBuffer; codeMapType = SS_DYNAMIC; } // Make a new buffer. if (baseType == SS_STATIC) { baseBufferSize = (baseSize == 0) ? 32 : (baseSize << 1) + 2; baseBuffer = new unsigned char[baseBufferSize]; CHECK_NEW (baseBuffer); if (baseSize>0) { memcpy (baseBuffer, base, baseSize); } base = baseBuffer; baseType = SS_DYNAMIC; } // Ensure capacity. if (codeMapBufferSize <= codeSize) { newSize = codeMapBufferSize << 1; newBuffer = new unsigned char[newSize*4]; CHECK_NEW (newBuffer); if (newSize>0) { memcpy (newBuffer, codeMap, codeSize*4); } delete codeMapBuffer; codeMapBuffer = newBuffer; codeMapBufferSize = newSize; codeMap = codeMapBuffer; codeMapType = SS_DYNAMIC; } // Ensure capacity. Length is max 4 bytes... needBytes = _keySize + _valueSize + _commentSize + 2*(1 < baseBufferSize) ? baseBufferSize + needBytes : baseBufferSize*2; newBuffer = new unsigned char[newSize]; CHECK_NEW (newBuffer); if (newSize>0) { memcpy (newBuffer, base, baseSize); } delete baseBuffer; baseBuffer = newBuffer; baseBufferSize = newSize; base = baseBuffer; baseType = SS_DYNAMIC; } // Let's do the work. int i; int from; int len; unsigned char* newElement = &baseBuffer[baseSize]; int index=0; len = 1<< inByteLength; for (i=0; i> (8 * (len-i-1))) & 0xff; } for (i=0; i> (8 * (len-i-1))) & 0xff; } for (i=0; i<_keySize; i++) { newElement[index++] = _key[i]; } len = 1<< outByteLength; for (i=0; i> (8 * (len-i-1))) & 0xff; } for (i=0; i<_valueSize; i++) { newElement[index++] = _value[i]; } newElement[index++] = (unsigned char) _commentSize; for (i=0; i<_commentSize; i++) { newElement[index++] = _comment[i]; } /** * Do a binary search */ from = nextSorted(_key, _keySize); // The will be after that.. // So where would we like to insert this? // Move the old data. for (i=codeSize; i>from; i--) { codeMapBuffer [i*4] = codeMapBuffer [(i-1)*4]; codeMapBuffer [i*4+1] = codeMapBuffer [(i-1)*4+1]; codeMapBuffer [i*4+2] = codeMapBuffer [(i-1)*4+2]; codeMapBuffer [i*4+3] = codeMapBuffer [(i-1)*4+3]; } // And insert the new one. codeMapBuffer [from*4] = ((SS_WORD32)baseSize>>24) & 0xff; codeMapBuffer [from*4+1] = ((SS_WORD32)baseSize>>16) & 0xff; codeMapBuffer [from*4+2] = ((SS_WORD32)baseSize>>8) & 0xff; codeMapBuffer [from*4+3] = (SS_WORD32)baseSize & 0xff; codeSize++; baseSize += index; return from; } /** * Find the insertion point in the sorted array * This routine will return the insertion point where * The key should be inserted. If the same key is already there * it will be inserted after that key. * @param key is the key to find. * @param klen is the length of the key */ unsigned int SBMapItem::nextSorted (const unsigned char* key, unsigned int klen) { unsigned int top, bottom, mid; unsigned int keyLen1; top = codeSize; bottom = 0; const unsigned char* vle1; int result; while (top > bottom) { mid = (top+bottom)/2; vle1 = getKey (mid, &keyLen1); /* compare key with vle1 */ unsigned int cmplen = (keyLen1 > klen) ? klen : keyLen1; result = 0; for (unsigned int i=0; i vle1[i]) { result = 1; break; } if (key[i] < vle1[i]) { result = -1; break; } } if (result==0) { if (klen > keyLen1) { result = 1; } if (klen < keyLen1) { result = -1; } } /* if equal we want to insert after */ if (result == 0) { top = mid+1; break; } if (result == -1) { top = mid; continue; } bottom = mid + 1; } return top; } /** * Add a new line into the map. Clear state machine, and make map dynamic. * @param _line is the ponter to the buffer for input * the input line should look like tthis: *
 *   20 23 6f 45  -> aa9c
 *   30 23 6f 45 / 5b 44 -> 98ff
 *   'A '# -> 2046 # This is a comment.
 *   
* The first line means that 2023 6f45 will be mapped to aa 9c * The second line means that 3023 6f45 that is followed by 5b 44 will be mapped to * aa 9c. The macthed size will be only 3023 6f45. The third line is an example for * using escape ascii characterrs. The comment will be also placed into the map. * @param _length is the size of the _line in bytes. * @param _reverse is nonzero to reverse the stuff. * @return the new index or a negative number on failure. */ int SBMapItem::addLine (const unsigned char* _line, unsigned int _length, bool _reverse) { if (itemType != SBMapNToN) { return -1; } unsigned int i; unsigned int start = 0; unsigned int toggle = 0; unsigned char* key = 0; unsigned char* vle = 0; unsigned int keyLen = 0; unsigned int match = 0; unsigned int vleLen = 0; int dummy = 0; unsigned int matchVle = 0; unsigned int csize = 0; const unsigned char* comm=0; // Split up input. for (i=0; i<_length; i++) { if (_line[i] == '\n') break; // Key if (toggle==0) { if (i+1<_length && _line[i]=='\'' && _line[i+1]=='#') { i++; } else if (i+1<_length && _line[i]=='-' && _line[i+1]=='>') { key = toHex (&_line[start], i-start, &keyLen, &match); i++; start=i+1; toggle = 1; } } // Vle else if (toggle==1) { if (i+1<_length && _line[i]=='\'' && _line[i+1]=='#') { i++; } else if (_line[i]=='#') { vle = toHex (&_line[start], i-start, &vleLen, &matchVle); i++; start=i; toggle = 2; } } } if (toggle == 0 || key == 0) { return -1; } if (toggle == 1) { vle = toHex (&_line[start], i-start, &vleLen, &matchVle); } if (vle ==0) { delete key; return -1; } if (toggle == 2) { csize = i-start; comm = &_line[start]; } int iws = (1<0 && in[i]=='/'&&in[i-1]!='\'')) { match = count; continue; } count++; } if (match == -1) match = count; if ((count&1) || (match&1)) return 0; // Convert the thing into hex. (real) retVle = new unsigned char[count/2]; *_len = count/2; *_match = match/2; count = 0; int subH; int subL; int old=0; for (i=0; i<_size; i++) { if (in[i]<= ' ') continue; if ((i==0 && in[i]=='/') || (i>0 && in[i]=='/'&&in[i-1]!='\'')) { continue; } count++; if (count&1) { old = i; continue; } // Escape if (in[i-1] == '\'') { retVle[count/2-1] = in[i]; continue; } subH = -1; subL = -1; if (in[old] >= '0' && in[old] <= '9') { subH = '0'; } if (in[old] >= 'A' && in[old] <= 'F') { subH = 'A' - 10; } if (in[old] >= 'a' && in[old] <= 'f') { subH = 'a' - 10; } if (in[i] >= '0' && in[i] <= '9') { subL = '0'; } if (in[i] >= 'A' && in[i] <= 'F') { subL = 'A' - 10; } if (in[i] >= 'a' && in[i] <= 'f') { subL = 'a' - 10; } if (subL < 0 || subH < 0) { delete retVle; return 0; } retVle[count/2-1] = ((in[old]-subH) << 4) + in[i]-subL; } return retVle; } /** * return value byte-string from index. * @param at is the index at wich the string is * @param size is the byte-length of string. */ const unsigned char* SBMapItem::getValue (int at, unsigned int *size) { if (itemType != SBMapNToN) { *size = 0; return (const unsigned char*) ""; } const unsigned char* vle = &codeMap[at<<2]; unsigned int index = TO32(vle); unsigned int keyHead = 1 << inByteLength; unsigned int vleHead = 1 << outByteLength; // Comment head is 1. unsigned int i; vle = &base[index]; index =0; unsigned int svle=0; for (i=0; i *
  • MATCH - the input matches exactly no more
  • *
  • MATCH_MORE - the input matches exactly with more
  • *
  • MORE - the input matches with more
  • *
  • REJECT - the input won't match
  • * * In case itemType is SBMapBumap, from will be mapped into 'to'. * For straight maps, only bounds are checked. */ SBMapItem::SFound SBMapItem::find(const unsigned char in, unsigned int pos, int* from, int* to) { int arrayIndex; unsigned char high; const unsigned char* mp; if (itemType == SBMapBumap) { if (pos>1) return REJECT; if (inWordSize == 0 && pos > 0) return REJECT; if (pos == 0) { if (inWordSize!=0) { *from = in; if (in < highMin || in > highMax) return REJECT; return MORE; } if (highMin>0) return REJECT; *from=0; } if (in < lowMin || in > lowMax) return REJECT; // Straight map high = (unsigned char) *from; *from = ((int)high<<8) + in; if (base == 0) { *to = *from; return MATCH; } arrayIndex = ((int)high - highMin) * (lowMax - lowMin+1) + ((int)in - lowMin); // Array of 16 bit integers mp = &base[arrayIndex<<1]; *to = TO16 (mp); if (*to==0) return REJECT; return MATCH; } if (itemType != SBMapNToN) { return REJECT; } // // We have a fast map!!! // if (stateMachine != 0 ) { unsigned int next; const unsigned char* sp; unsigned int flags; // First nibble * 4 sp = &stateMachine[((in>>2) & 0x3c) + (*from << 6)]; next = TO32 (sp); flags = (next >> 30) & 0x3; *from = next & 0x3fffffff; if (flags != MORE && flags != MATCH_MORE) { return (SFound)flags; } // Second nibble * 4 sp = &stateMachine[((in & 0xf)<<2) + (*from << 6)]; next = TO32 (sp); flags = (next >> 30) & 0x3; *from = next & 0x3fffffff; return ((SFound) flags); } // // Only binary-search map is available // unsigned int top; unsigned int bottom; unsigned int mid; const unsigned char* vle1=0; unsigned int keyLen1; const unsigned char* vle2=0; unsigned int keyLen2; top = *to; bottom = *from; // Search for low position = minimum match all... while (top > bottom) { mid = (top+bottom)>>1; vle1 = getKey(mid, &keyLen1); // bottom has to be greater or equal if (pos > keyLen1 || in > vle1[pos]) { bottom = mid + 1; continue; } // == or less if (mid==bottom) { break; } // Let top slip through top = mid; } *from = bottom; top = *to; // Search for high position while (top > bottom) { mid = (top+bottom)>>1; vle2 = getKey(mid, &keyLen2); // bottom has to be greater if (pos >= keyLen2 || in >= vle2[pos]) { bottom = mid+1; continue; } // == or less if (mid==bottom) { break; } // Let top slip through top = mid; } *to=bottom; top = bottom; bottom = *from; if (top <= bottom) return REJECT; // This is a match. Which one? vle1 = getKey (bottom, &keyLen1); if (top == bottom+1) { vle2 = vle1; keyLen2 = keyLen1; } else { vle2 = getKey (top-1, &keyLen2); } // It is possible to have duplicate keys. if (pos == keyLen1-1 && pos == keyLen2-1) { return MATCH; } if (pos == keyLen1-1) { return MATCH_MORE; } return MORE; } /** * Get the name of the specified map * @param line the buffer to strore the string. This will be a * full string with no chars of 0x00 replaced by a space. * @param len the length of the buffer. * @param mapIndex the index of the map. If a number that is less than zero * specified, the body of the current map. * @return the length of the string, but also null terminate the line. */ int SBMap::getName (char* line, int len, int mapIndex) { if (status==false || maps == 0) return 0; if (mapIndex <0) { return packString (line, len, name, 32); } return packString (line, len, maps[mapIndex]->name, 32); } /** * Get the name of the specified map * @param line the buffer to strore the string. This will be a * full string with no chars of 0x00 replaced by a space. * @param len the length of the buffer. * @param mapIndex the index of the map. If a number that is less than zero * specified, the body of the current map. * @return the length of the string, but also null terminate the line. */ int SBMap::getComment (char* line, int len, int mapIndex) { if (status==false || maps == 0) return 0; if (mapIndex <0) { return packString (line, len, comment, commentSize); } return packString (line, len, maps[mapIndex]->comment, maps[mapIndex]->commentSize); } /** * pack a string into a buffer. * @param line is the string to pack to * @param len the length of line * @param input is the input buffer. * @param maxlen is the length in input buffer. */ int SBMap::packString (char* line, int len, const unsigned char* input, int maxlen) { int i,index; int last = -1; index=0; for (i=0; i len+1) break; if (last==0 && last == (int) input[i]) continue; last = (int) input[i]; if (last == 0) { line[index++] = ' '; } else { line[index++] = last; } } if (last==0) { line[index-1] = 0; } else { line[index] = 0; } return index; } /** * buld a new state machine. * @param the map to build the state machine for, -1 meas all. */ void SBMap::buildStateMachine(int mapIndex) { if (mapIndex < 0) { int i; for (i=0; ibuildStateMachine(); } } else { maps[mapIndex]->buildStateMachine (); } } /** * Return the state machine if we have one. * @param mapIndex is the index of the SBMapItem. */ const unsigned char* SBMap::getStateMachine (int mapIndex) { if (status ==false) return 0; return maps[mapIndex]->stateMachine; } /** * get rid of all state machines. */ void SBMap::strip () { int i; for (i=0; istrip(); } } /** * serialize the current map * @param format is the file format. The possible values: *
      *
    • SS_BINRAY - The most compact and fast map format
    • *
    • SS_CTEXT - The compact and fast map format turned into a C program * as comma seperated hex char values.
    • *
    • SS_TEXT - The dissassembled binary text with TAGS.
    • *
    * The SS_TEXT '#' are comments. *
      *
    • COMM= This will be stored in the file. * Multiple definition possible - multi-line comment.
    • *
    • NAME= A maximum 32-byte-long name.
    • *
    • SECTION= A maximum 32-byte-long section name.
    • *
    • KEY_WIDTH= a size hint for the values on the left of the line 0,1,2,3. Default 0.
    • *
    • VALUE_WIDTH= a size hint for the value on the right right 0,1,2,3. Default 0.
    • *
    • bytes -> bytes a map line. *
    * @param _fd is the file descriptor */ int SBMap::serialize (SOutputStream& is, SFileFormat _format) { int index = 0; int w; int i; SWriter writer(is); if (status == false) return -1; if (mapSize == 0) return 0; SString nw; SString* _fd = &nw; if (_format==SS_BUMAP || _format==SS_CUMAP) { int res = serializeUMAP (_fd, _format); if (res > 0) { writer.write (nw); if (!writer.isOK()) return -1; } return res; } // Serialize header. if (sizeof (magicNN) != 16) { fprintf (stderr, "SBMap::serialize - something is wrong.\n"); return -1; } // magicNN w = write1 (_fd, (const unsigned char*) magicNN, sizeof (magicNN), _format, FT_MAGIC, SS_LAST); if (w<0) return -1; index += w; // Name if (name==0) { unsigned char nm[32]; memset (nm, 0, 32); strcpy ((char*) nm, "UNNAMED"); w = write1 (_fd, nm, 32, _format, FT_NAME, SS_LAST); } else { w = write1 (_fd, name, 32, _format, FT_NAME, SS_LAST); } if (w<0) return -1; index += w; // Comment size w = write32 (_fd, (SS_WORD32) commentSize, _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; index += w; // Comment if (commentSize>0) { w = write1 (_fd, comment, commentSize, _format, FT_COMMENT, SS_LAST); if (w<0) return -1; index += w; } // Map type w = write32 (_fd, (SS_WORD32) mapType, _format, FT_MAP_TYPE, SS_LAST); if (w<0) return -1; index += w; // Map size w = write32 (_fd, (SS_WORD32) mapSize, _format, FT_IGNORE, SS_LAST); if (w<0) return -1; index += w; // SS_WORD32 indeces = 16 + 32 + 4 + commentSize + 4 + 4 + 4 * mapSize + 4; SS_WORD32 indeces = 0; // Write array of indeces for (i=0; iconvertFromBumap(); // size w = write32 (_fd, (SS_WORD32) indeces, _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; index += w; indeces += maps[i]->getSerializeSize(); } // Last index w = write32 (_fd, (SS_WORD32) indeces, _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; index += w; // Now really serialize 'em one by one. for (i=0; iserialize (_fd, _format, (int) (i==mapSize-1)); if (w<0) return -1; index += w; // Stupidity check. if (w != maps[i]->getSerializeSize()) { fprintf (stderr, "SBMap::serialize - something is wrong.\n"); return -1; } } if (index > 0) { writer.write (nw); if (!writer.isOK()) return -1; } return index; } /** * serialize the current map as UMAP or bumap. * It simply takes the first mapitem and reverses it to create * the reverse map. * @param format is the file format. The possible values: *
      *
    • SS_UMAP - c style umap file, constructor of SBMap
    • *
    • SS_BUMAP - binary umap file.
    • *
    * @param _fd is the file descriptor */ int SBMap::serializeUMAP (SString* _fd, SFileFormat _format) { int w; SBMapItem* mapItem =0; // Serialize header. if (sizeof (magicBM) != 16) { fprintf (stderr, "SBMap::serializeUMAP - magicBM is wrong.\n"); return -1; } int index = 0; // magicNN w = write1 (_fd, (const unsigned char*) magicBM, sizeof (magicBM), _format, FT_MAGIC, SS_LAST); if (w<0) return -1; index += w; // Name if (name==0) { unsigned char nm[32]; memset (nm, 0, 32); strcpy ((char*) nm, "UNNAMED"); w = write1 (_fd, nm, 32, _format, FT_NAME, SS_LAST); } else { w = write1 (_fd, name, 32, _format, FT_NAME, SS_LAST); } // Comment size w = write16 (_fd, (SS_WORD16) commentSize+(16+32+2), _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; index += w; // Comment if (commentSize>0) { w = write1 (_fd, comment, commentSize, _format, FT_COMMENT, SS_LAST); if (w<0) return -1; index += w; } // First we need to write the decode, then the encode SS_WORD16* mat[2]; mat[0] = new SS_WORD16[0x10000]; CHECK_NEW (mat[0]); mat[1] = new SS_WORD16[0x10000]; CHECK_NEW (mat[1]); mapItem = maps[0]; mapItem->convertFromBumap(); int ind, rind; ind=0; rind=1; if (mapItem->encode) { ind = 1; } if (ind) rind = 0; memset (mat[0], 0, 0x10000 * sizeof (SS_WORD16)); memset (mat[1], 0, 0x10000 * sizeof (SS_WORD16)); unsigned int matched; unsigned int keylen; unsigned int vlelen; const unsigned char* ckey; const unsigned char* cvle; SS_WORD64 key; SS_WORD64 vle; unsigned int i=0; unsigned int j=0; for (i=0; icodeSize; i++) { ckey = mapItem->getKey (i, &keylen, &matched); if (matched!=keylen) { fprintf (stderr, "SBMap::serializeUMAP map contains substrings\n"); break; } // 1 word! if (keylen > (unsigned) (1 << mapItem->inWordSize)) { fprintf (stderr, "SBMap::serializeUMAP map contains strings\n"); break; } key=0; for (j=0; jgetValue (i, &vlelen); if (vlelen > (unsigned) (1 << mapItem->outWordSize)) { fprintf (stderr, "SBMap::serializeUMAP map contains strings\n"); break; } vle=0; for (j=0; j 0xffff || vle > 0xffff) { fprintf (stderr,"SBMap::serializeUMAP map contains big integers\n"); break; } mat[ind][(int)key]=(SS_WORD16) vle; mat[rind][(int)vle]=(SS_WORD16) key; } if (icodeSize) { delete mat[0]; delete mat[1]; return -1; } // Determine high and low. SS_WORD16 high[2][2]; SS_WORD16 low[2][2]; high[0][0] = 255; high[0][1] = 0; high[1][0] = 255; high[1][1] = 0; low [0][0] = 255; low[0][1] = 0; low [1][0] = 255; low[1][1] = 0; unsigned int tmp; // Key 0 and value 0 'does not compute' static bool warned = false; for (j=0; j<2; j++) for (i=0; i<0x10000; i++) { /* previously thought I will use the opposite array - but it could be used only for reversible maps. So we have to use OUR OWN array. gaspar */ //if (i==0) mat[1-j][i] = 0; //tmp = mat[1-j][i]; tmp = mat[j][i]; if (tmp==0) { continue; } if (!warned && mat[1-j][tmp] != i) { fprintf (stderr, "warning: bumap[%u] not reversible at 0x%04X -> 0x%04X\n", j, i, tmp); warned = true; } if ((i&0xff) < low[j][0]) low[j][0] = (i&0xff); if ((i&0xff) > low[j][1]) low[j][1] = (i&0xff); if (((i>>8)&0xff) < high[j][0]) high[j][0] = ((i>>8)&0xff); if (((i>>8)&0xff) > high[j][1]) high[j][1] = ((i>>8)&0xff); } // OK we can write decode bounds. // Map size for (i=0;i<2;i++) { w = write16 (_fd, high[i][0], _format, FT_IGNORE, SS_LAST); if (w<0) { delete mat[0]; delete mat[1]; return -1; } index += w; w = write16 (_fd, high[i][1], _format, FT_IGNORE, SS_LAST); if (w<0) { delete mat[0]; delete mat[1]; return -1; } index += w; w = write16 (_fd, low[i][0], _format, FT_IGNORE, SS_LAST); if (w<0) { delete mat[0]; delete mat[1]; return -1; } index += w; w = write16 (_fd, low[i][1], _format, FT_IGNORE, SS_LAST); if (w<0) { delete mat[0]; delete mat[1]; return -1; } index += w; } // Now the two bounded arrays. int k; SS_LineEnd lend = SS_LAST; for (i=0;i<2;i++) { for (j=high[i][0]; j<=high[i][1]; j++) { for (k=low[i][0]; k<=low[i][1]; k++) { if (i==1 && j==high[i][1] && k==low[i][1]) { lend = SS_EOF; } w = write16 (_fd, mat[i][(j<<8)+k], _format, FT_IGNORE, lend); if (w<0) { delete mat[0]; delete mat[1]; return -1; } index += w; } } } delete mat[0]; delete mat[1]; return index; } #define STORE_STATE(_state, _bucket, _v) \ stateMachineBuffer [_state * 64 + (4 * _bucket)+0]=(_v>>24)&0xff; \ stateMachineBuffer [_state * 64 + (4 * _bucket)+1]=(_v>>16)&0xff; \ stateMachineBuffer [_state * 64 + (4 * _bucket)+2]=(_v>>8)&0xff; \ stateMachineBuffer [_state * 64 + (4 * _bucket)+3]=(_v>>0)&0xff /** * buld a new state machine. */ void SBMapItem::buildStateMachine() { if (itemType != SBMapNToN) { return; } if (stateMachineType == SS_DYNAMIC) { delete stateMachineBuffer; } stateMachine = 0; stateMachineType = SS_DYNAMIC; stateMachineSize = 1; stateMachineBufferSize = 1; stateMachineBuffer = new unsigned char[16*4]; CHECK_NEW (stateMachineBuffer); int pos; SS_WORD32 stt; int from = 0; int to = codeSize; for (pos=0; pos<16; pos++) { stt = addState ((SS_WORD32) REJECT<<30, (const unsigned char) pos, 0, from, to); STORE_STATE (0, pos, stt); } stateMachine = stateMachineBuffer; } /** * @author Gaspar Sinai Tokyo 1999.12.18 * addState - add a new state to the state machine. * @param oldState - the state carried forward till now. * @param in - the input character nibble. * @pos - the current position * 2, it is divisabel by 2 then * it is the upper nibble and the start of a char. * @ * @return oldState if no new state matched, otherwise nextstate or * nextindex. *
      *
    • REJECT - return oldState;
    • *
    • MORE - return index of more iterations (next state).
    • *
    • MATCH_MORE - not used.
    • *
    • MATCH - return index of this matched iteration.
    • *
    * REJECT=0<<30, MORE=1<<30, MATCH_MORE=2<<30, MATCH=4<<30 */ SS_WORD32 SBMapItem::addState(SS_WORD32 oldState, const unsigned char in, unsigned int pos, int _from, int _to) { if (stateMachineSize >= stateMachineBufferSize) { int newSize; unsigned char* newBuffer; newSize = stateMachineBufferSize << 1; newBuffer = new unsigned char[newSize * 16 * 4]; CHECK_NEW (newBuffer); memcpy (newBuffer, stateMachineBuffer, stateMachineBufferSize * 16 * 4); delete stateMachineBuffer; stateMachineBuffer = newBuffer; stateMachineBufferSize = newSize; } int current = stateMachineSize; stateMachineSize++; int i, matches=0; SS_WORD32 stt=0; SFound found; int from, to; unsigned int newPos = pos+1; for (i=0; i<16; i++) { from = _from; to = _to; // If divisable by 2 it means that this is the // second nibble and we may have to do some work... // Determine what STT to pass. That can be MATCH, // REJECT or MORE. if (newPos&1) { found = find (((in << 4) | i), pos >> 1, &from, &to); if (found == REJECT) { // Depending on old state it is a reject // or an old match stt = (oldState >> 30); if (stt==MATCH) { STORE_STATE (current, i, oldState); matches++; } else { stt = (SS_WORD32) REJECT << 30; STORE_STATE (current, i, stt); } continue; } if (found == MATCH) { stt = from; stt |= ((SS_WORD32) MATCH << 30); STORE_STATE (current, i, stt); matches++; continue; } if (found == MATCH_MORE) { stt = from; stt |= ((SS_WORD32) MATCH << 30); matches++; } if (found == MORE) { stt = (oldState >> 30); // Don't downgrade match; if (stt==MATCH) { stt = oldState; } else { // Upgrade reject. stt |= ((SS_WORD32) MORE << 30); } matches++; } } else { stt = oldState; } stt = addState ((SS_WORD32) stt, (const unsigned char) i, newPos, from, to); STORE_STATE (current, i, stt); if ((stt>>30) != REJECT) matches++; } // // Save a great deal of memory here. // if (matches==0) { stateMachineSize = current; stt = (oldState >> 30); if (stt==REJECT || stt==MORE) { return (SS_WORD32) REJECT << 30; } else { stt = oldState & 0x3fffffff; stt |= (SS_WORD32) MATCH << 30; return stt; } } stt = current & 0x3fffffff; stt |= ((SS_WORD32) MORE << 30); return stt; } /** * serialize the current map */ int SBMapItem::serialize (SString* _fd, SFileFormat _format, int _last) { if (itemType != SBMapNToN) { return (0); } int w; unsigned index; unsigned char out; SS_WORD32 lastIndex; unsigned int i; int fullIndex; // Serialize the body and the additional state machine. // CODE AREA. index = 0; // Name w = write1 (_fd, name, 32, _format, FT_SECTION, SS_LAST); if (w<0) return -1; index += w; // Comment size w = write32 (_fd, (SS_WORD32) commentSize, _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; index += w; // Comment w = write1 (_fd, comment, commentSize, _format, FT_COMMENT, SS_LAST); if (w<0) return -1; index += w; // decode/encode out = encode; w = write8 (_fd, out, _format, FT_IS_ENCODE, SS_LAST); if (w<0) return -1; index += w; // Input word size. out = inWordSize; w = write8 (_fd, out, _format, FT_SIZE_FROM, SS_LAST); if (w<0) return -1; index += w; // Output word size. out = outWordSize; w = write8 (_fd, out, _format, FT_SIZE_TO, SS_LAST); if (w<0) return -1; index += w; // Input length indicator size. out = inByteLength; w = write8 (_fd, out, _format, FT_LENGTH_FROM, SS_LAST); if (w<0) return -1; index += w; // Output length indicator size. out = outByteLength; w = write8 (_fd, out, _format, FT_LENGTH_TO, SS_LAST); if (w<0) return -1; index += w; // Pointer to a state machine. // First we need to know our own length... // Index from base. lastIndex = baseSize; if (stateMachineSize >0 && stateMachine != 0) { w = write32 (_fd, lastIndex, _format, FT_IGNORE, SS_LAST); if (w<0) return -1; index += w; } else { w = write32 (_fd, 0, _format, FT_IGNORE, SS_LAST); if (w<0) return -1; index += w; } // Spare... w = write32 (_fd, 0, _format, FT_IGNORE, SS_LAST); if (w<0) return -1; index += w; // Write out the array of indeces. // First the size. w = write32 (_fd, codeSize, _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; index += w; const unsigned char* mp; fullIndex=0; for (i=0; i0 && stateMachine != 0) { w = write32 (_fd, stateMachineSize, _format, FT_IGNORE, SS_LAST); if (w<0) return -1; index += w; w = write1 (_fd, stateMachine, stateMachineSize * 4 * 16, _format, FT_IGNORE, (_last) ? SS_EOF : SS_LAST); if (w<0) return -1; index += w; } return index; } /** * write a formatted text with a length. * @param _fd is the file descriptior to write to * @param _buf is the buffer tow write. * @param _length is the length in bytes (not in words!) * @param _slash is the length where slash is needed. * @param _format is the file format. * @param _last shows how to end the line. */ int SBMapItem::writeTextBytes (SString* _fd, const unsigned char *_buf, int _length, int _slash, int _wordSize, SFileFormat _format, SS_LineEnd _last) { int i; const unsigned char* cmnt; SS_WORD16 w16; SS_WORD32 w32; SS_LineEnd lend; int w; int ws = (1<<_wordSize); if ((_length%ws) != 0) { fprintf (stderr, "MapItem::writeTextBytes: byte-length error."); fprintf (stderr, "Word=%d", ws); fprintf (stderr, "bytes, Length=%dbytes\n", _length); } if (_format!=SS_TEXT_MAP) { lend = SS_NORMAL; for (i=0; i<_length; i++) { if (i==_length-1) lend = _last; w = write8 (_fd, _buf[i], _format, FT_MAX, lend); if (w<0) return -1; } return _length; } if ((_length%ws) != 0) { cmnt = (const unsigned char*) "#### WRONG LENGTH bytes:"; w = write1 (_fd, cmnt, strlen ((const char*)cmnt), _format, FT_MAX, SS_NORMAL); if (w<0) return -1; return writeTextBytes (_fd, _buf, _length, _slash, 0, _format, SS_LAST); } if (_length==0) { cmnt = (const unsigned char*) ""; w = write1 (_fd, cmnt, 0, _format, FT_MAX, _last); if (w<0) return -1; return _length; } lend = SS_NORMAL; for (i=0; i<_length; i+=ws) { if (i==_slash && _format==SS_TEXT_MAP) { cmnt = (const unsigned char*) "/ "; w = write1 (_fd, cmnt, 1, _format, FT_MAX, SS_NORMAL); if (w<0) return -1; } if (i+ws>=_length) { lend = _last; } switch (ws) { case 1: w = write8 (_fd, _buf[i], _format, FT_MAX, lend); break; case 2: cmnt = &_buf[i]; w16 = TO16(cmnt); w = write16 (_fd, w16, _format, FT_MAX, lend); break; case 4: cmnt = &_buf[i]; w32 = TO32(cmnt); w = write32 (_fd, w32, _format, FT_MAX, lend); break; case 8: default: fprintf (stderr, "writing 8 bytes is not implemented.\n"); cmnt = &_buf[i]; w32 = TO32(cmnt); w = write32 (_fd, w32, _format, FT_MAX, lend); break; } if (w<0) return -1; } return _length; } /** * write out the code area accroding to format. * @param _fd is the output file descriptor * @param _index is the array index of the code area * @param _format is the file format SS_BINARY, SS_TEXT_MAP, SS_CTEXT * @param _last indicates that there will be no more data written after this. */ int SBMapItem::writeCodeArea (SString* _fd, int _index, SFileFormat _format, SS_LineEnd _last) { const unsigned char* vle = &codeMap[_index<<2]; unsigned int index = TO32(vle); unsigned int partLen; unsigned int fullLen; unsigned int slash; const unsigned char* cmnt; int i, w; const unsigned char* starts = &base[index]; fullLen = 0; // The first n bytes are length of string partLen=0; i = 1 << inByteLength; while (i-->0) { w = write8 (_fd, starts[fullLen], _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; partLen = starts[fullLen++] + (partLen<<8); } slash=0; i = 1 << inByteLength; while (i-->0) { w = write8 (_fd, starts[fullLen], _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; slash = starts[fullLen++] + (slash<<8); } w = writeTextBytes (_fd, &starts[fullLen], partLen, slash, inWordSize, _format, SS_NORMAL); if (w<0) return -1; fullLen += w; if (_format==SS_TEXT_MAP) { cmnt = (const unsigned char*) "\t-> "; w = write1 (_fd, cmnt, strlen ((const char*) cmnt),_format, FT_MAX, SS_NORMAL); if (w<0) return -1; } // Second part. partLen=0; i = 1 << outByteLength; while (i-->0) { w = write8 (_fd, starts[fullLen], _format, FT_IGNORE, SS_NORMAL); if (w<0) return -1; partLen = starts[fullLen++] + (partLen<<8); } w = writeTextBytes (_fd, &starts[fullLen], partLen, partLen, outWordSize, _format, SS_NORMAL); if (w<0) return -1; fullLen += w; // Third part if (starts[fullLen] == 0) { w = write8 (_fd, starts[fullLen], _format, FT_IGNORE, _last); } else { w = write8 (_fd, starts[fullLen], _format, FT_IGNORE, SS_NORMAL); } if (w<0) return -1; partLen = starts[fullLen++]; if (_format == SS_TEXT_MAP) { if (partLen!=0) { cmnt = (const unsigned char*) " # "; w = write1 (_fd, cmnt, strlen ((const char*)cmnt), _format, FT_MAX, SS_NORMAL); } else { cmnt = (const unsigned char*) ""; w = write1 (_fd, cmnt, 1, _format, FT_MAX, _last); } if (w<0) return -1; } if (partLen>0) { w = write1 (_fd, &starts[fullLen], partLen, _format, FT_MAX, _last); if (w<0) return -1; fullLen += w; } return fullLen; } /** * size of map when serialized. */ int SBMapItem::getSerializeSize () { if (stateMachineSize>0) { return (32+4+commentSize+5+4+4+4*(codeSize+2)+baseSize +4+stateMachineSize*4*16); } return (32+4+commentSize+5+4+4+4*(codeSize+2)+baseSize); } /** * write bytes - safe version * @param fd - file descriptor * @in - input bytes * @size - size of input. * @param _format is the file format the data is written, */ static int writeBytes(SString* _fd, const unsigned char* in, int size) { if (size<=0) return 0; if (size==0) return 0; _fd->append ((const char*)in, (unsigned int)size); return size; } /** * Write a charatcer stream. * @param _fd the file descriptor * @param out the bytebuffer * @param size the size of buffer * @param _format is the file format the data is written, * @param ftype is the type if data */ static int write1(SString* _fd, const unsigned char* in, int size, SFileFormat _format, const SS_FieldType ftype, const SS_LineEnd lend) { int i, index, written; const char* pref; int newLine; SS_LineEnd nl; index = 0; switch (_format) { case SS_BINARY: case SS_BUMAP: written = writeBytes (_fd, in, size); return written; break; // We strip 0's.; case SS_TEXT_MAP: if (ftype==FT_IGNORE) return size; newLine=1; while (index ' ' && number < 'z' && number != '#') { sprintf ((char*)out, "'%c", number); } else { sprintf ((char*)out, "%02X", number); } if (lend==SS_LAST || lend==SS_EOF) { strcat ((char*)out, "\n"); } else { strcat ((char*)out, " "); } if (writeBytes (_fd, (const unsigned char*) pref, strlen(pref)) < 0) { return -1; } if (writeBytes (_fd, out, strlen((const char*)out)) > 0) { return 1; } return -1; case SS_CTEXT: case SS_CUMAP: default: pref=cMapPrefix[ftype]; if (lend == SS_LAST) { sprintf ((char*)out, "0x%02x,\n", number); } else if (lend == SS_EOF) { sprintf ((char*)out, "0x%02x\n", number); } else { sprintf ((char*)out, "0x%02x, ", number); } if (writeBytes (_fd, (const unsigned char*) pref, strlen(pref)) < 0) { return -1; } if (writeBytes (_fd, out, strlen((const char*)out)) > 0) { return 1; } return -1; } /*NOTREACHED*/ return -1; } /** * Write a 16 bit integer in network order to output stream. * @param _fd the file descriptor * @param number is the integer in host order. * @param _format is the file format the data is written, * @param ftype is the type if data */ static int write16 (SString* _fd, SS_WORD16 number, SFileFormat _format, const SS_FieldType ftype, const SS_LineEnd lend) { unsigned char out[64]; unsigned char num[2]; const char* pref; switch (_format) { case SS_BINARY: case SS_BUMAP: num[0] = ((number >> 8) & 0xff); num[1] = ((number >> 0) & 0xff); return writeBytes (_fd, num, 2); case SS_TEXT_MAP: if (ftype == FT_IGNORE) return 2; pref=textMapPrefix[ftype]; sprintf ((char*)out, "%04X", number); if (lend == SS_LAST || lend == SS_EOF) { strcat ((char*)out, "\n"); } else { strcat ((char*)out, " "); } if (writeBytes (_fd, (const unsigned char*) pref, strlen(pref)) < 0) { return -1; } if (writeBytes (_fd, out, strlen((const char*)out)) > 0) { return 2; } return -1; case SS_CTEXT: case SS_CUMAP: default: num[0] = ((number >> 8) & 0xff); num[1] = ((number >> 0) & 0xff); pref=cMapPrefix[ftype]; if (lend == SS_LAST) { sprintf ((char*)out, "0x%02x, 0x%02x,\n", (int) num[0], (int) num[1]); } else if (lend ==SS_EOF) { sprintf ((char*)out, "0x%02x, 0x%02x\n", (int) num[0], (int) num[1]); } else { sprintf ((char*)out, "0x%02x, 0x%02x, ", (int) num[0], (int) num[1]); } if (writeBytes (_fd, (const unsigned char*) pref, strlen(pref)) < 0) { return -1; } if (writeBytes (_fd, out, strlen((const char*)out)) > 0) { return 2; } return -1; } /*NOTREACHED*/ return -1; } /** * Write a 32 bit integer in network order to output stream. * @param _fd the file descriptor * @param number is the integer in host order. * @param _format is the file format the data is written, * @param ftype is the type if data */ static int write32 (SString* _fd, SS_WORD32 number, SFileFormat _format, const SS_FieldType ftype, const SS_LineEnd lend) { unsigned char out[64]; unsigned char num[4]; const char* pref; switch (_format) { case SS_BINARY: case SS_BUMAP: num[0] = ((number >> 24) & 0xff); num[1] = ((number >> 16) & 0xff); num[2] = ((number >> 8) & 0xff); num[3] = ((number >> 0) & 0xff); return writeBytes (_fd, num, 4); case SS_TEXT_MAP: if (ftype == FT_IGNORE) return 4; pref=textMapPrefix[ftype]; sprintf ((char*)out, "%08X", number); if (lend == SS_LAST || lend == SS_EOF) { strcat ((char*)out, "\n"); } else { strcat ((char*)out, " "); } if (writeBytes (_fd, (const unsigned char*) pref, strlen(pref)) < 0) { return -1; } if (writeBytes (_fd, out, strlen((const char*)out) ) > 0) { return 1; } return -1; case SS_CTEXT: case SS_CUMAP: default: pref=cMapPrefix[ftype]; num[0] = ((number >> 24) & 0xff); num[1] = ((number >> 16) & 0xff); num[2] = ((number >> 8) & 0xff); num[3] = ((number >> 0) & 0xff); if (lend == SS_LAST) { sprintf ((char*)out, "0x%02x, 0x%02x, 0x%02x, 0x%02x,\n", (int) num[0], (int) num[1], (int) num[2], (int) num[3]); } else if (lend == SS_EOF) { sprintf ((char*)out, "0x%02x, 0x%02x, 0x%02x, 0x%02x\n", (int) num[0], (int) num[1], (int) num[2], (int) num[3]); } else { sprintf ((char*)out, "0x%02x, 0x%02x, 0x%02x, 0x%02x,", (int) num[0], (int) num[1], (int) num[2], (int) num[3]); } if (writeBytes (_fd, (const unsigned char*) pref, strlen(pref)) < 0) { return -1; } if (writeBytes (_fd, out, strlen((const char*)out)) > 0) { return 4; } return -1; } /*NOTREACHED*/ return -1; } /** * return key value map to see what decodes to what * @param key will contain the keys * @param value will contain the values * @param _size is the maximum size of returned arrays * @return the real size of the arrays. */ unsigned int SBMap::getDecoderMap (SStringVector* key, SStringVector* value, unsigned int _size) { int all = getSize(); int found = -1; int i; for (i=0; i= 0) return 0; found = i; } } if (found < 0) return 0; key->clear(); value->clear(); SBMapItem* map = maps[(unsigned int)found]; return map->getDecoderMap (key, value, _size); } /* SGC For maps with holes */ unsigned int SBMap::getLinearPosition (unsigned int _index, SS_UCS4 key) { return maps[_index]->getLinearPosition(key); } SS_UCS4 SBMap::getLinearKey (unsigned int _index, unsigned int position) { return maps[_index]->getLinearKey(position); } SS_UCS4 SBMap::getLinearValue (unsigned int _index, unsigned int position) { return maps[_index]->getLinearValue(position); } /** * return key value map to see what decodes to what * @param key will contain the keys * @param value will contain the values * @param _size is the maximum size of returned arrays * @return the real size of the arrays. */ unsigned int SBMapItem::getDecoderMap (SStringVector* key, SStringVector* value, unsigned int _size) { if (stateMachine != 0 ) return 0; if (inWordSize != 0) return 0; SEncoder _encoder("utf-8"); char kc[32]; if (itemType == SBMapBumap) { unsigned int count = 0; for (unsigned int i=highMin; i<=highMax; i++) { for (unsigned int j=lowMin; j<=lowMax; j++) { SS_UCS4 in = (i << 8) + j; unsigned int arrayIndex = ((int)i - highMin) * (lowMax - lowMin+1) + ((int)j - lowMin); // Array of 16 bit integers const unsigned char* mp = &base[arrayIndex<<1]; SS_UCS4 u4out = TO16 (mp); if (u4out==0) continue; count++; if (count > _size) continue; SV_UCS4 ucs4vout; ucs4vout.append (u4out); if (in <= 0xff) { sprintf (kc, "=%02X", (unsigned int)in); } else { sprintf (kc, "=%04X", (unsigned int)in); } SString ks(kc); SString vs = _encoder.encode (ucs4vout); key->append (ks); value->append (vs); } } return count; } unsigned int ksize; unsigned int vlesize; for (unsigned int i=0; iappend (ks); value->append (vs); } return codeSize; } /** * Get the position where key at index is less or equal to input * argument key. This can be used in interpolated linear maps. * @param key is the input argument key. * @return input position. */ unsigned int SBMapItem::getLinearPosition (SS_UCS4 key) { if (itemType!=SBMapNToN) return 0; /* 64 bit map is not supported by getLinearPosition */ if (inWordSize>2) return 0; unsigned int bkeySize = 1<0xff) { delete bkey; return 0;} bkey[0] = key&0xff; break; case 1: if (key>0xffff) { delete bkey; return 0;} bkey[1] = key&0xff; bkey[0] = (key>>8)&0xff; break; case 2: bkey[3] = key&0xff; bkey[2] = (key>>8)&0xff; bkey[1] = (key>>16)&0xff; bkey[0] = (key>>24)&0xff; break; default: delete bkey; return 0; } unsigned int from = nextSorted(bkey, bkeySize); delete bkey; if (from ==0) return 0; /* nextSorted returns next element - the insertion point */ return (from-1); } /** * Get the key value in SS_UCS4 corresponding to index */ SS_UCS4 SBMapItem::getLinearKey (unsigned int position) { if (itemType!=SBMapNToN) return 0; /* 64 bit map is not supported by getLinearKey */ if (position >= codeSize || inWordSize>2) return 0; unsigned int len; const unsigned char* key = getKey(position, &len); /* Multiple words are not supported by getLinearKey */ if (len != (unsigned int)(1<= codeSize || outWordSize>2) return 0; unsigned int len; const unsigned char* value = getValue(position, &len); /* Multiple words are not supported by getLinearValue */ if (len != (unsigned int)(1<> 8; unsigned int j = in & 0xff; if ((int)ihighMin || (int)i>map->highMax) return 0; if ((int)jlowMin || (int)j>map->lowMax) return 0; unsigned int arrayIndex = ((int)i - map->highMin) * (map->lowMax - map->lowMin+1) + ((int)j - map->lowMin); // Array of 16 bit integers const unsigned char* mp = &map->base[arrayIndex<<1]; SS_UCS4 u4out = TO16 (mp); return u4out; } /** * This routine can be called only if temType==SBMapBumap */ SS_UCS2 SBMap::encode (SS_UCS4 in) { SBMapItem* map = maps[1]; unsigned int i = in >> 8; unsigned int j = in & 0xff; if ((int)ihighMin || (int)i>map->highMax) return 0; if ((int)jlowMin || (int)j>map->lowMax) return 0; unsigned int arrayIndex = ((int)i - map->highMin) * (map->lowMax - map->lowMin+1) + ((int)j - map->lowMin); // Array of 16 bit integers const unsigned char* mp = &map->base[arrayIndex<<1]; SS_UCS2 u4out = TO16 (mp); return u4out; } bool SBMap::isUMap() { return (getSize() ==2 && maps[0]->itemType==SBMapItem::SBMapBumap && maps[1]->itemType==SBMapItem::SBMapBumap); } ./stoolkit/SIO.cpp0000644000175000017500000011716511334262507014061 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* For windows debuging #define UNICODE */ #include #include #include #include #include #include #define STDIN 0 #define STDOUT 1 #ifndef USE_WINAPI #include #include #else #include #include #endif #include "SIO.h" #include "SExcept.h" #include "SEncoder.h" #ifdef USE_WINAPI #define S_MYOFLAGS O_BINARY #else #include #define S_MYOFLAGS 0 #endif #ifdef USE_WINAPI # include # include # define ERRNO WSAGetLastError() #else # include # include # include # include # include # include # define ERRNO errno #endif #ifdef HAVE_MMAP #include #include #if !defined (__svr4__) && !defined (__SVR4) && defined (sun) extern "C" { extern int munmap(void *, size_t); } #endif #if !defined (MAP_FAILED) #define MAP_FAILED ((void *)-1) #endif #ifndef MAP_FAILED #define MAP_FAILED ((void *)-1) #endif #endif #ifdef USE_WINAPI // Hacked for winapi This is in SEventBSD hacked to hide dependency !!!! int gettimeofday (struct timeval* tv, void* tz); int initsockets(bool init); #define SBAD_SOCKET 0 #define EWOULDBLOCK TRY_AGAIN #else #define SBAD_SOCKET -1 #endif #ifdef MAX_PATH # define SS_MAX_DIR_LENGTH MAX_PATH #else # define SS_MAX_DIR_LENGTH 4096 #endif #ifdef USE_WINAPI typedef HANDLE SS_DIR; #define SS_INVALID_DIR INVALID_HANDLE_VALUE #define SS_S_ISDIR(_m) ((_m & _S_IFMT)==_S_IFDIR) #define SS_S_ISREG(_m) ((_m & _S_IFMT)==_S_IFREG) #else #define SS_S_ISDIR(_m) (S_ISDIR(_m)) #define SS_S_ISREG(_m) (S_ISREG(_m)) #define SS_S_ISLNK(_m) (S_ISLNK(_m)) typedef DIR* SS_DIR; #define SS_INVALID_DIR 0 #endif #ifdef USE_WINAPI static WCHAR _currDirW [SS_MAX_DIR_LENGTH]; #else static char _currDir [SS_MAX_DIR_LENGTH]; #endif class SFileImageBuffer { public: SFileImageBuffer(long fd, long size, bool writeflag); ~SFileImageBuffer(); #ifdef USE_WINAPI void* handle; #endif int count; char* buffer; long bufferSize; long fd; bool writeflag; }; SFileImage::~SFileImage () { if (shared) { SFileImageBuffer* b = (SFileImageBuffer*) shared; b->count--; if (b->count==0) delete b; } } SFileImage& SFileImage::operator = (const SFileImage& in) { if (&in != this) { if (shared) { SFileImageBuffer* b = (SFileImageBuffer*) shared; b->count--; if (b->count==0) delete b; shared = 0; } if (in.shared) { SFileImageBuffer* b = (SFileImageBuffer*) in.shared; b->count++; shared = b; } } return *this; } SFileImage::SFileImage (void) { shared = 0; } SFileImage::SFileImage (long fd, long size, bool writeflag) { SFileImageBuffer* b = new SFileImageBuffer (fd, size, writeflag); if (b->bufferSize < 0) { delete b; shared = 0; } else { shared = b; } } long SFileImage::size() const { if (shared == 0) return -1; SFileImageBuffer* b = (SFileImageBuffer*) shared; return b->bufferSize; } char* SFileImage::array() { if (shared == 0) return 0; SFileImageBuffer* b = (SFileImageBuffer*) shared; return b->buffer; } SFileImage::SFileImage (const SFileImage& in) { if (in.shared) { SFileImageBuffer* b = (SFileImageBuffer*) in.shared; b->count++; shared = b; } else { shared = 0; } } static int sharedCount=0; SFileImageBuffer::SFileImageBuffer(long _fd, long size, bool _writeflag) { fd = _fd; bufferSize = size; count = 1; #ifdef USE_WINAPI writeflag = _writeflag; handle = CreateFileMapping ((void*)fd, 0, (_writeflag) ? PAGE_READWRITE : PAGE_READONLY, 0, 0, 0); if (handle==0) { CloseHandle ((void*) fd); fd = -1; buffer = 0; bufferSize = -1; } else { buffer = (char*) MapViewOfFile (handle, (_writeflag) ? FILE_MAP_ALL_ACCESS : FILE_MAP_READ, 0, 0, bufferSize); if (buffer ==0) { CloseHandle (handle); CloseHandle ((void*) fd); fd = -1; buffer = 0; bufferSize = -1; } } #else # ifdef HAVE_MMAP writeflag = _writeflag; buffer=(char*) mmap (0, bufferSize, (_writeflag) ? (PROT_WRITE|PROT_READ) : PROT_READ, MAP_SHARED, fd, 0); if (buffer==0 || buffer==(char*)MAP_FAILED) { if (fd >=0) close (fd); fd = -1; buffer = 0; bufferSize = -1; } # else writeflag = 0; buffer = new char[bufferSize]; CHECK_NEW (buffer); if (read (fd, buffer, bufferSize)!= bufferSize) { if (fd >=0) close (fd); delete buffer; fd = -1; buffer = 0; bufferSize = -1; } if (fd >=0) close (fd); close (fd); fd = -1; # endif #endif sharedCount++; } SFileImageBuffer::~SFileImageBuffer() { if (buffer !=0) { if (fd >= 0) { #ifdef USE_WINAPI UnmapViewOfFile (buffer); CloseHandle (handle); CloseHandle ((void*) fd); #else # ifdef HAVE_MMAP munmap ((char*)buffer, bufferSize); ::close (fd); # else # endif #endif } else { delete buffer; } } sharedCount--; if (sharedCount==0) { //fprintf (stderr, "SFileImageBuffer::~SFileImageBuffer OK\n"); } } /** * @author: Gaspar Sinai * @version: 2000-04-23 * This library is not multi-threaded. Therefor we need event handlers. */ /** * This is the base class for all io classes */ SIO::SIO (SEventSource::Type t) : in(t, -1), out(t, -1) { } /** * The descturctor. */ SIO::~SIO() { } /** * Get an input stream */ const SInputStream& SIO::getInputStream() { return in; } /** * Get an output stream */ const SOutputStream& SIO::getOutputStream() { return out; } /** * Create an stdio object. This will have */ SStdIO::SStdIO () : SIO(SEventSource::FILE), err(SEventSource::FILE, -1) { } SStdIO::~SStdIO () { } /** * Get an input stream that can be used an a standard input. */ const SInputStream& SStdIO::getInputStream() { if (in.getId()<0) { in = SInputStream (SEventSource::FILE, (long)0); } return in; } /** * Get an output stream that can be used an a standard output. */ const SOutputStream& SStdIO::getOutputStream() { if (out.getId()<0) { out = SOutputStream (SEventSource::FILE, (long)1); } return out; } /** * Get an output stream that can be used an a standard error output. */ const SOutputStream& SStdIO::getErrorOutputStream() { if (err.getId()<0) { err = SOutputStream (SEventSource::FILE, (long)2); } return err; } /** * Create an stdio object. This will have * @param c is the command to execute. */ SPipe::SPipe (const SString& c) : SIO(SEventSource::PIPE), command (c) { } /** * Create an stdio object. This will have * @param c is the command to execute. */ SPipe::SPipe (void) : SIO(SEventSource::PIPE), command ("") { } SPipe::~SPipe () { #ifdef USE_WINAPI /* FIMXE: You need to modify SYudit.cpp for this. */ for (unsigned int i=0; i< waitHandles.size(); i++) { PROCESS_INFORMATION* pinfo = (PROCESS_INFORMATION*) waitHandles[i]; CloseHandle (pinfo->hThread); CloseHandle (pinfo->hProcess); } #endif } /** * Get an input stream that can be used an a standard input. */ const SInputStream& SPipe::getInputStream() { if (in.getId()<0) { if (command.size()==0) { /* STDIO in */ //fprintf (stderr, "STDIO input.\n"); in = SInputStream (SEventSource::FILE, (long)0); in.setOK(true); } else { long d = openPipe (false); in = SInputStream (SEventSource::PIPE, d); #ifdef USE_WINAPI in.setOK(d>0); #else in.setOK(d>=0); #endif } } return in; } /** * Get an output stream that can be used an a standard output. */ const SOutputStream& SPipe::getOutputStream() { if (out.getId()<0) { if (command.size()==0) { out = SOutputStream (SEventSource::FILE, (long)1); //fprintf (stderr, "SOutputStream stdout\n"); out.setOK(true); } else { //fprintf (stderr, "SOutputStream command\n"); long d = openPipe (true); out = SOutputStream (SEventSource::PIPE, d); #ifdef USE_WINAPI out.setOK(d>0); #else out.setOK(d>=0); #endif } } return out; } /** * Create a file from a fixed filename * @param f is the filename in unix format. */ SFile::SFile (const SString& f) : SIO(SEventSource::FILE) { name = f; } /** * Create a file from a file. The file is reaaly just the name * @param f is the original file */ SFile::SFile (const SFile& f) : SIO(SEventSource::FILE) { name = f.name; map = f.map; } /** * Assign a file. */ SFile& SFile::operator = (const SFile& f) { name = f.name; if (this != &f) map = f.map; return *this; } /** * Open the file for reading and return the input stream, that * can be sued by a SReader */ const SInputStream& SFile::getInputStream() { long fd = in.getId(); if (fd<0) { SString filename=name; #ifdef USE_WINAPI filename.replaceAll("/", "\\"); filename.append ((char) 0); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString res = u16.encode (u8.decode (filename)); WCHAR* filenameW = (WCHAR *) res.array(); #else filename.append ((char) 0); char * filenameU = (char*) filename.array(); #endif if (filename.size()==0) { fd = (long) STDIN; } else { #ifdef USE_WINAPI fd = (long) _wopen (filenameW, O_RDONLY | S_MYOFLAGS); // Windows98SE does not implement _wopen if (fd < 0) { SString filenameA = utf8ToSystem (filename); filenameA.append ((char)0); fd = (long) open (filenameA.array(), O_RDONLY | S_MYOFLAGS); } #else fd = (long) open (filenameU, O_RDONLY | S_MYOFLAGS ); #endif } } SInputStream ins(SEventSource::FILE, fd); #ifdef USE_WINAPI ins.setOK(fd>0); #else ins.setOK(fd>=0); #endif in = ins; return in; } /** * Open the file for writing and return the output stream, that * can be sued by a SWriter */ const SOutputStream& SFile::getOutputStream() { int fd; if (out.getId()< 0) { SString filename=name; #ifdef USE_WINAPI filename.replaceAll("/", "\\"); filename.append ((char) 0); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString res = u16.encode (u8.decode (filename)); WCHAR* filenameW = (WCHAR *) res.array(); #else filename.append ((char) 0); char * filenameU = (char*) filename.array(); #endif if (name.size()==0) { fd = STDOUT; } else { #ifdef USE_WINAPI fd = _wopen (filenameW, O_WRONLY | O_CREAT | O_TRUNC | S_MYOFLAGS, 0666); // Windows98SE does not implement _wopen if (fd < 0) { SString filenameA = utf8ToSystem (filename); filenameA.append ((char)0); fd = open (filenameA.array(), O_WRONLY | O_CREAT | O_TRUNC | S_MYOFLAGS, 0666); } #else fd = open (filenameU, O_WRONLY | O_CREAT | O_TRUNC | S_MYOFLAGS, 0666); #endif } SOutputStream outs (SEventSource::FILE, (long)fd); #ifdef USE_WINAPI outs.setOK(fd>0); #else outs.setOK(fd>=0); #endif out = outs; } return out; } /** * Find the file by the path.. * @parma filen is the base filename. * @param pt is the list of paths it could be found. * @aram lookcwd is true if we also need to look into current working dir */ SFile::SFile (const SString& filen, const SStringVector& pt, bool lookcwd): SIO(SEventSource::FILE) { name = ""; /* Serach for file */ for (unsigned int i=0; i=0) return map; long s = size(); if (s <=0) return map; SString fn=name; #ifdef USE_WINAPI fn.replaceAll("/", "\\"); #endif fn.append ((char) 0); #ifdef USE_WINAPI //SString p = ("\\\\?\\"); //p.append (utf8ToSystem (fn)); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString res = u16.encode (u8.decode (fn)); WCHAR* fileNameW = (WCHAR *) res.array(); #else const char* fileName = fn.array(); #endif #ifdef USE_WINAPI //void* fd=CreateFileW (fileNameW, 0, OF_READ | OF_SHARE_DENY_NONE); void* fd=CreateFileW (fileNameW, (writeflag) ? (GENERIC_READ| GENERIC_WRITE) : GENERIC_READ, (writeflag) ? (FILE_SHARE_READ | FILE_SHARE_WRITE) : FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_RANDOM_ACCESS, 0); if (fd==0) { // Windows98SE does not implement CreateFileW SString fileNameA = utf8ToSystem (fn); fileNameA.append ((char)0); fd=CreateFileA (fileNameA.array(), (writeflag) ? (GENERIC_READ| GENERIC_WRITE) : GENERIC_READ, (writeflag) ? (FILE_SHARE_READ | FILE_SHARE_WRITE) : FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_RANDOM_ACCESS, 0); if (fd == 0) return map; } if (fd==0) #else int fd=open ((const char*) fileName, (writeflag) ? O_RDWR : O_RDONLY); if (fd<0) #endif { return map; } SFileImage newMap((long) fd, s, writeflag); map = newMap; if (map.size() < 0) { #ifndef USE_WINAPI fprintf (stderr, "SIO: Open succeeded but mmap failed for %s\n", fileName); #endif } return map; } /** * Get the resolved filename in unix format. */ const SString& SFile::getName() const { return name; } /** * return the file size or negative if it does not exist */ long SFile::size() { struct stat buf; SString newName = name; newName.append ((char)0); #ifdef USE_WINAPI newName.replaceAll("/", "\\"); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString u16str = u16.encode (u8.decode (newName)); WCHAR* currentW = (WCHAR *) u16str.array(); WIN32_FIND_DATAW entry; SS_DIR dir=FindFirstFileW (currentW, &entry); if (dir == SS_INVALID_DIR) { WIN32_FIND_DATAA entryA; SString system = utf8ToSystem (newName); system.append ((char)0); // Fall back to system char* currentA = (char *) system.array(); // Windows98SE does not implement FindFirstFileW dir=FindFirstFileA (currentA, &entryA); if (dir == SS_INVALID_DIR) { return -1; } FindClose (dir); return ((long)entryA.nFileSizeHigh * (MAXDWORD+1)) + (long)entryA.nFileSizeLow; } FindClose (dir); return ((long)entry.nFileSizeHigh * (MAXDWORD+1)) + (long)entry.nFileSizeLow; #else if (stat ((char*)newName.array(), &buf) != 0) { return -1; } return (long) buf.st_size; #endif } bool SFile::truncate (long _size) { SString newName = name; #ifdef USE_WINAPI newName.replaceAll("/", "\\"); newName.replaceAll("/", "\\"); newName.append ((char) 0); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString res = u16.encode (u8.decode (newName)); WCHAR* filenameW = (WCHAR *) res.array(); #endif SString newNameU = newName; newNameU.append ((char) 0); char * filenameU = (char*) newName.array(); #ifdef USE_WINAPI int d = _wopen (filenameW, O_WRONLY | O_CREAT | O_APPEND | S_MYOFLAGS, 0666); // Windows98SE does not implement _wopen if (d < 0) { SString filenameA = utf8ToSystem (newName); filenameA.append ((char)0); d = open (filenameA.array(), O_WRONLY | O_CREAT | O_APPEND | S_MYOFLAGS, 0666); } #else int d = open (filenameU, O_WRONLY | O_CREAT | O_APPEND | S_MYOFLAGS, 0666); #endif if (d <=0) { return false; } #ifdef USE_WINAPI if (::_chsize (d, _size) != 0) { close (d); return false; } #else if (::ftruncate (d, _size) != 0) { close (d); return false; } #endif close (d); return true; } /** * Destruct the file. */ SFile::~SFile () { } /** * Make a new socket abstraction class. * @param h is the hostname or ip address. * @param p is the port. */ SSocket::SSocket (const SString h, int p): SIO(SEventSource::SOCKET) { host = h; port = p; } /** * Make a new server socket abstraction class. * @param h is the hostname or ip address. */ SSocket::SSocket (const SSocket& s) : SIO(SEventSource::SOCKET) { host = s.host; port = s.port; } /** * Assing a socket. * do not assign sterams */ SSocket& SSocket::operator = (const SSocket& s) { host = s.host; port = s.port; return *this; } /** * Destroy a socket. * The copied streams may survive the socket. */ SSocket::~SSocket () { } /** * Get an input stream that could be used by a SReader */ const SInputStream& SSocket::getInputStream() { if (port < 0) return out; if (out.isOK()) { //SInputStream s (SEventSource::SOCKET, (long)dup((int)out.getId())); //if (s.getId() > 0) s.setOK(true); SOutputStream s(out); in = s; return in; } openSocket(&in); return in; } /** * Get an input stream that could be used by a SWriter */ const SOutputStream& SSocket::getOutputStream() { if (port < 0) return out; if (in.isOK()) { //SOutputStream s (SEventSource::SOCKET, (long)dup((int)in.getId())); //if (s.getId() > 0) s.setOK(true); SOutputStream s(in); out = s; return out; } openSocket(&out); return out; } /** * Try to open a socket. Used internally. * For ip addressed, ipv6 is not yet supported. */ void SSocket::openSocket(SOutputStream* o) { #ifdef USE_WINAPI initsockets (true); #endif int sd = socket (AF_INET, SOCK_STREAM, IPPROTO_IP); SOutputStream s (SEventSource::SOCKET, (long)sd); *o = s; #ifdef USE_WINAPI if (sd == 0) { #else if (sd == -1) { #endif port = -1; return; } char* hstring = host.cString(); // We could use saddr.s_addr = inet_addr(address); // But we don't want at this stage if (sscanf (hstring, "%d.%d.%d.%d", &address[0], &address[1], &address[2], &address[3])!=4) { struct hostent* hostEntry = gethostbyname (hstring); if (hostEntry==0 || hostEntry->h_addr_list==0) { fprintf (stderr, "error: can not get ip address for \"%s\"\n", hstring); port = -1; #ifdef USE_WINAPI closesocket(sd); #else close (sd); #endif delete hstring; return; } address[0] = hostEntry->h_addr_list[0][0]; address[1] = hostEntry->h_addr_list[0][1]; address[2] = hostEntry->h_addr_list[0][2]; address[3] = hostEntry->h_addr_list[0][3]; } delete hstring; address[0] &= 0xff; address[1] &= 0xff; address[2] &= 0xff; address[3] &= 0xff; struct sockaddr_in server; server.sin_addr.s_addr = htonl ((address[0]<<24) + (address[1] << 16) + (address[2] << 8) + address[3]); server.sin_port = htons (port); server.sin_family = AF_INET; if (connect (sd, (struct sockaddr*) &server, sizeof (server))!=0) { fprintf (stderr, "error: failed to connect to %d.%d.%d.%d:%d (%d)\n", address[0], address[1], address[2], address[3], port, ERRNO); #ifdef USE_WINAPI closesocket(sd); #else close (sd); #endif return; } o->setOK(true); } /** * make a server socket. Not yet implemented. */ /* TODO: implement this */ SServer::SServer (int port): SIO(SEventSource::SERVER) { } /** * Delete a server socket. */ SServer::~SServer () { } /** * Try to guess the current directory * GetTempFileName */ SDir::SDir(void) : name("/home/gsinai") { #ifdef USE_WINAPI /* //char* buff=0; //if (GetFullPathNameQ ("Gazsi Bacsi", SS_MAX_DIR_LENGTH-1, _currDirW, &buff)) */ if (GetCurrentDirectoryW (SS_MAX_DIR_LENGTH-1, _currDirW)) { SString u16fn ((const char*) _currDirW, (unsigned int) 2 * wcslen (_currDirW)); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); name = u8.encode (u16.decode (u16fn)); // Windows98 does not implement getCurrentDirectoryW } else if (GetCurrentDirectoryA (SS_MAX_DIR_LENGTH-1, (char*) _currDirW)) { SString ansi ((const char*) _currDirW); name = systemToUtf8 (ansi); } else { name = (SString) "Z:/"; } name.replaceAll("\\", "/"); name.insert (0, "/"); #else if (getcwd(_currDir, SS_MAX_DIR_LENGTH-1)==0) { name = (SString) "/"; } else { _currDir[SS_MAX_DIR_LENGTH-1] = 0; name = (SString) _currDir; } #endif } /** * The directory abstraction layer */ SDir::SDir(const SString& _name) : name (_name) { /* convert it to a real name */ name.replaceAll ("\\", "/"); name.replaceAll ("//", "/"); if (name.size() == 0 || name[0] != '/') { name.insert (0, "/"); } #ifdef USE_WINAPI if (name.size() >= 2 && name[1] == ':' && name[0] >= 'A' && name[0] <= 'Z') { /* C:WINDOWS */ if (name.size() > 2 && name[2] != '/') { name.insert (2, "/"); } name.insert (0, "/"); } else if (name.size() >= 2 && name[1] == ':' && name[0] >= 'a' && name[0] <= 'z') { char dletter = name[0] - 'a' + 'A'; name.remove (0); name.insert (0, SString(&dletter, 1)); /* d:yuko */ if (name.size() > 2 && name[2] != '/') { name.insert (2, "/"); } name.insert (0, "/"); name.insert (0, "/"); } #endif } /** * Copy */ SDir::SDir(const SDir& dir) { name = dir.name; } /** * Assign */ SDir& SDir::operator = (const SDir& dir) { name = dir.name; return *this; } /** * Delete */ SDir::~SDir () { } /** * Return the directory list. * @param e is SE_FILE or SE_DIR */ SStringVector SDir::list (SEntry e) { return list ("*", e); } /** * Return the directory list. * @param pattern is the pattern to look for. * is all. * @param e is SE_FILE or SE_DIR * It makes a smart list= checking checkTime */ SStringVector SDir::list (const SStringVector &patterns, SEntry e) { if (name.size()==0) return SStringVector(); SStringVector entries; SString _name = name; #ifdef USE_WINAPI if (_name.size() > 0 && _name[0] == '/') { _name.remove (0); } if (_name.size () == 0) { if (e!=SE_DIR) return SStringVector(); /* get drive letters */ DWORD letter =GetLogicalDrives(); SStringVector v; for (int i=(int)'A'; i<=(int)'Z' && letter; i++) { if (letter &1) { SString str; str.append ((char)i); str.append (':'); v.append (str); } letter = letter >> 1; } return SStringVector (v); } _name.append("/*.*"); _name.replaceAll("//", "/"); _name.replaceAll("/", "\\"); _name.append ((char)0); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString u16str = u16.encode (u8.decode (_name)); WCHAR* currentW = (WCHAR *) u16str.array(); #else _name.append ((char)0); char* currentU = (char*) _name.array(); #endif SS_DIR dir; #ifdef USE_WINAPI WIN32_FIND_DATAW entry; WIN32_FIND_DATAA entryA; dir=FindFirstFileW (currentW, &entry); boolean ansi = false; if (dir == SS_INVALID_DIR) { SString system = utf8ToSystem (_name); system.append ((char)0); // Fall back to system char* currentA = (char *) system.array(); // Windows98SE does not implement FindFirstFileW dir=FindFirstFileA (currentA, &entryA); ansi = true; } #else struct dirent* entry; dir = opendir (currentU); #endif if (dir == SS_INVALID_DIR) { //fprintf (stderr, "can not opendir: %s\n", currentU); return SStringVector(entries); } struct stat buf; while (true) { #ifdef USE_WINAPI SString dnameStr; if (ansi) { dnameStr = systemToUtf8 (SString (entryA.cFileName)); entry.dwFileAttributes = entryA.dwFileAttributes; } else { SString u16fn ((const char*) entry.cFileName, (unsigned int) 2 * wcslen (entry.cFileName)); dnameStr = u8.encode (u16.decode (u16fn)); } if (entry.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { if (e==SE_DIR && dnameStr != ".." && dnameStr != ".") { for(unsigned int i=0; id_name; fullName.append (dname); fullName.replaceAll("//", "/"); char* cFullName = fullName.cString(); CHECK_NEW (cFullName); if (stat (cFullName, &buf) != 0 && lstat (cFullName, &buf) != 0) { fprintf (stderr, "can not stat: %s\n", cFullName); delete cFullName; continue; } if (SS_S_ISDIR( buf.st_mode)) { if (e==SE_DIR && strcmp (dname, ".")!=0 && strcmp (dname, "..")!=0) { SString n (dname); for(unsigned int i=0; i 0) { str.remove (0); } #endif return SString (str); } /** * check if directory exists */ bool SDir::exists() const { SString _name = name; #ifdef USE_WINAPI if (_name == "/") return true; if (_name.size() > 0 && _name[0] == '/') { _name.remove (0); } if (_name.size() == 2 && _name[1] == ':' && _name[0] >= 'A' && _name[0] <= 'Z') { DWORD letter=GetLogicalDrives(); return ((letter & (1 << (_name[0] - 'A'))) != 0); } if (_name.size() == 2 && _name[1] == ':' && _name[0] >= 'a' && _name[0] <= 'z') { DWORD letter=GetLogicalDrives(); return ((letter & (1 << (_name[0] - 'a'))) != 0); } // TODO Network 'Places'. if (_name.find ("/") < 0) { } _name.replaceAll("/", "\\"); _name.append ((char)0); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString u16str = u16.encode (u8.decode (_name)); WCHAR* currentW = (WCHAR *) u16str.array(); WIN32_FIND_DATAW entry; SS_DIR dir=FindFirstFileW (currentW, &entry); if (dir == SS_INVALID_DIR) { WIN32_FIND_DATAA entryA; SString system = utf8ToSystem (_name); system.append ((char)0); // Fall back to system char* currentA = (char *) system.array(); // Windows98SE does not implement FindFirstFileW dir=FindFirstFileA (currentA, &entryA); if (dir == SS_INVALID_DIR) { return false; } if (entryA.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) return true; return false; } if (entry.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) return true; return false; #else struct stat buf; char* current = _name.cString(); CHECK_NEW (current); if (stat (current, &buf) != 0) { delete current; return false; } if (!SS_S_ISDIR( buf.st_mode)) { delete current; return false; } delete current; return true; #endif } /** * Try to create the directory. * @return true on successs */ bool SDir::create () const { SString s = name; #ifdef USE_WINAPI if (s.size() > 0 && s[0] == '/') { s.remove (0); } s.replaceAll("/", "\\"); s.append ((char) 0); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString u16str = u16.encode (u8.decode (s)); WIN32_FIND_DATAW entry; int status= _wmkdir ((WCHAR*) u16str.array()); if (status != 0) { // Windows98SE does not implement _wmkdir SString ansi = utf8ToSystem (s); ansi.append ((char)0); status= mkdir (ansi.array ()); if (status != 0) { return false; } } #else s.append ((char) 0); int status = mkdir (s.array(), 0755); if (status == -1 && errno != EEXIST) return false; #endif return exists(); } /** * check if directory readable */ bool SDir::readable() const { SString _name = name; #ifdef USE_WINAPI if (_name == "/") return true; if (_name.size() > 0 && _name[0] == '/') { _name.remove (0); } if (_name.size() == 2 && _name[1] == ':' && _name[0] >= 'A' && _name[0] <= 'Z') { DWORD letter=GetLogicalDrives(); return ((letter & (1 << (_name[0] - 'A'))) != 0); } if (_name.size() == 2 && _name[1] == ':' && _name[0] >= 'a' && _name[0] <= 'z') { DWORD letter=GetLogicalDrives(); return ((letter & (1 << (_name[0] - 'a'))) != 0); } // TODO Network 'Places'. if (_name.find ("/") < 0) { } _name.replaceAll("/", "\\"); #else char* current = _name.cString(); CHECK_NEW (current); #endif SS_DIR dir; #ifdef USE_WINAPI WIN32_FIND_DATAW entry; SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); _name.append ((char)0); SString u16str = u16.encode (u8.decode (_name)); dir=FindFirstFileW ((WCHAR*) u16str.array(), &entry); if (dir==SS_INVALID_DIR) { WIN32_FIND_DATAA entryA; SString system = utf8ToSystem (_name); // Fall back to system char* currentA = (char *) system.array(); // Windows98SE does not implement FindFirstFileW dir=FindFirstFileA (currentA, &entryA); if (dir==SS_INVALID_DIR) return false; } #else dir = opendir (current); if (dir==SS_INVALID_DIR) { delete current; return false; } #endif #ifdef USE_WINAPI FindClose (dir); #else closedir(dir); delete current; #endif return true; } /** * Change directory * ToDO DWORD GetLogicalDriveStrings (DWROD, char* lpBuffer); */ bool SDir::cd (const SString& _newDir) { SString newDir = _newDir; newDir.replaceAll("\\", "/"); newDir.replaceAll("//", "/"); if (newDir.size() == 0) { return false; } SStringVector cw = SStringVector(name, "/"); #ifdef USE_WINAPI if (newDir.size() >= 2 && newDir[1] == ':' && newDir[0] >= 'A' && newDir[0] <= 'Z') { /* C:WINDOWS */ if (newDir.size() > 2 && newDir[2] != '/') { newDir.insert (2, "/"); } newDir.insert (0, "/"); cw.clear(); } else if (newDir.size() >= 2 && newDir[1] == ':' && newDir[0] >= 'a' && newDir[0] <= 'z') { char dletter = newDir[0] - 'a' + 'A'; newDir.remove (0); newDir.insert (0, SString(&dletter, 1)); /* d:yuko */ if (newDir.size() > 2 && newDir[2] != '/') { newDir.insert (2, "/"); } newDir.insert (0, "/"); newDir.insert (0, "/"); cw.clear(); } #else if (newDir[0] == '/') { cw.clear(); } #endif /* relative */ SStringVector nw = SStringVector (newDir, "/"); for (unsigned int i=0; i0) { cw.truncate (cw.size()-1); nd = cw.join ("/"); nd.insert (0, "/"); d = SDir(nd); good = false; } name = d.name; return good; } /** * Wait for all waithandles * return false if at leas on of them failed. */ int SPipe::wait () { int exitcode = 0; #ifdef USE_WINAPI for (unsigned int i=0; i< waitHandles.size(); i++) { DWORD ret; PROCESS_INFORMATION* pinfo = (PROCESS_INFORMATION*) waitHandles[i]; WaitForSingleObject (pinfo->hProcess, INFINITE); GetExitCodeProcess (pinfo->hProcess, &ret); if (ret) exitcode = (int) ret; CloseHandle (pinfo->hThread); CloseHandle (pinfo->hProcess); } waitHandles.clear(); return exitcode; #else for (unsigned int i=0; i< waitHandles.size(); i++) { int status; //pid_t ret = waitpid ((pid_t) waitHandles[i], &status, 0); if (status) exitcode = status; } waitHandles.clear(); return exitcode; /* FIXME: did not need it - not implemented. */ #endif } /** * Open a pipe and return the file desctiptor to it. * Chances are that * @param command the shell command line. * @param output is true if we write to the command. */ long SPipe::openPipe(bool output) { #ifdef USE_WINAPI HANDLE pp[2]; SECURITY_ATTRIBUTES sa; memset (&sa, 0, sizeof (sa)); sa.nLength = sizeof (sa); sa.lpSecurityDescriptor = 0; sa.bInheritHandle = 0; /* without this pipe would close */ if (!CreatePipe (&pp[0], &pp[1], &sa, 0)) { fprintf (stderr, "openPipe failed.\n"); return -1; } STARTUPINFOW sinfo; memset (&sinfo, 0, sizeof (sinfo)); sinfo.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES; sinfo.wShowWindow = SW_SHOWDEFAULT; STARTUPINFOA sinfoA; memset (&sinfoA, 0, sizeof (sinfoA)); sinfoA.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES; sinfoA.wShowWindow = SW_SHOWDEFAULT; HANDLE hProcess = GetCurrentProcess(); HANDLE dupedHandle = INVALID_HANDLE_VALUE; HANDLE myHandle = INVALID_HANDLE_VALUE; /* ugly but works...*/ if (output) { /* dup the read side, make it inheritible, and close the original */ myHandle = pp[1]; DuplicateHandle(hProcess, pp[0], hProcess, &dupedHandle, 0, TRUE, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE); sinfo.hStdInput = dupedHandle; sinfo.hStdOutput = INVALID_HANDLE_VALUE; sinfo.hStdError = INVALID_HANDLE_VALUE; sinfoA.hStdInput = dupedHandle; sinfoA.hStdOutput = INVALID_HANDLE_VALUE; sinfoA.hStdError = INVALID_HANDLE_VALUE; } else { /* dup the read side, make it inheritible, and close the original */ myHandle = pp[0]; DuplicateHandle(hProcess, pp[1], hProcess, &dupedHandle, 0, TRUE, DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE); sinfo.hStdInput = INVALID_HANDLE_VALUE; sinfo.hStdOutput = dupedHandle; sinfo.hStdError = INVALID_HANDLE_VALUE; sinfoA.hStdInput = INVALID_HANDLE_VALUE; sinfoA.hStdOutput = dupedHandle; sinfoA.hStdError = INVALID_HANDLE_VALUE; } PROCESS_INFORMATION* pinfo = new PROCESS_INFORMATION[1]; SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString cutf8 = command; cutf8.append ((char)0); SString cmdlineString = u16.encode (u8.decode (cutf8)); SString cmdlineStringA = utf8ToSystem(cutf8); WCHAR* clW = (WCHAR *) cmdlineString.cString(); if (!CreateProcessW ( NULL, // module name clW, // command line NULL, // not inheritable handles NULL, // not inheritable thread handle TRUE, // handles not inherited CREATE_DEFAULT_ERROR_MODE | DETACHED_PROCESS, // no console NULL, // use parent's environment NULL, // use parent's starting directory &sinfo, // STARTUP_INFO pinfo) // PROCESS_INFO // Windows98SE does not implement CreateProcessW && !CreateProcessA ( NULL, // module name cmdlineStringA.cString(), // command line NULL, // not inheritable handles NULL, // not inheritable thread handle TRUE, // handles not inherited CREATE_DEFAULT_ERROR_MODE | DETACHED_PROCESS, // no console NULL, // use parent's environment NULL, // use parent's starting directory &sinfoA, // STARTUP_INFO pinfo)) // PROCESS_INFO { fprintf (stderr, "Could not create process [%s]\n", clW); CloseHandle (myHandle); CloseHandle (dupedHandle); delete pinfo; return -1; } /* we need to close this because it got duped */ CloseHandle (dupedHandle); /* wait till program starts */ // wont link ::WaitForInputIdle (pinfo->hProcess, 5000); waitHandles.append ((long)pinfo); return (long) myHandle; #else SString cmdlineString (command); int pp[2]; if (pipe (pp) == -1) { fprintf (stderr, "openPipe failed.\n"); return -1; } char* clString = cmdlineString.cString(); int pid = fork(); if (pid>0) { delete clString; waitHandles.append (pid); if (output) { close (pp[0]); //fprintf (stderr, "return parent %d\n", pp[1]); return pp[1]; } //fprintf (stderr, "return parent %d\n", pp[0]); close (pp[1]); return pp[0]; } else if (pid<0) { close (pp[1]); close (pp[0]); return -1; } else { for (int i=3; i<1024; i++) { if (i!=pp[0] && i!= pp[1]) { close (i); } } /** * TODO: check if fdup2 works */ if (output) { close (pp[1]); close (0); if (dup (pp[0]) !=0) { fprintf (stderr, "fdup failed\n"); } close (pp[0]); } else { close (pp[0]); close (1); if (dup (pp[1]) != 1) { fprintf (stderr, "fdup failed\n"); } //fprintf (stderr, "return child %d\n", pp[1]); close (pp[1]); } execl ("/bin/sh", "sh", "-c", clString, (char*) 0); delete clString; exit (127); } #endif } /** * Create a temporary file. */ #ifdef USE_WINAPI static WCHAR _tmpFileW [SS_MAX_DIR_LENGTH]; #endif SString getTemporaryFileName () { #ifdef USE_WINAPI // Windows98SE W does not work. if (!GetTempPathW (SS_MAX_DIR_LENGTH-1, _currDirW)) { if (!GetTempPathA (SS_MAX_DIR_LENGTH-1, (char*) _currDirW)) { fprintf (stderr, "Can not get temporary directory.\n"); return SString (""); } if (!GetTempFileNameA ((char*)_currDirW, "yudit", 0, (char*) _tmpFileW)) { fprintf (stderr, "Can not get temporary filename.\n"); return SString (""); } SString ansi ((char*) _tmpFileW); SString utf8 = systemToUtf8 (ansi); return SString (utf8); } if (!GetTempFileNameW (_currDirW, L"yudit", 0, _tmpFileW)) { fprintf (stderr, "Can not get temporary filename.\n"); return SString (""); } SString u16fn ((const char*) _tmpFileW, (unsigned int) 2 * wcslen (_tmpFileW)); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString name = u8.encode (u16.decode (u16fn)); return SString (name); #else SString ret("/tmp"); int pid= getpid(); ret.append ("/yudit"); ret.print (pid); ret.append (".tmp"); return SString (ret); #endif } ./stoolkit/SString.cpp0000644000175000017500000001620410434025610015000 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SString.h" #include SString SStringNull; /** * constucts one. */ SString::SString(void) : SBinVector() { // SStringNUll may not have been inited here. //if (this != &SStringNull) refer(SStringNull); } SString::SString (const char* s) : SBinVector() { if (s!=0) SBinVector::insert (0, s, strlen (s)); } SString::SString (const char* s, unsigned int len) : SBinVector() { if (s!=0) SBinVector::insert (0, s, len); } char* SString::cString() const { char* buff = new char [size() + 1]; CHECK_NEW(buff); memcpy (buff, array(), size()); buff[size()] = 0; return buff; } SString::SString (const char* s, unsigned int from, unsigned int len) : SBinVector() { if (s!=0) SBinVector::insert (0, &s[from], len); } SString::SString (long l) { SBinVector::insert (0, (char*) &l, sizeof (long)); } SString::SString (double d) { SBinVector::insert (0, (char*) &d, sizeof (double)); } SString::SString (void* p) { SBinVector::insert (0, (char*) &p, sizeof (void*)); } long SString::longValue() const { long l; memcpy (&l, array(), sizeof (l)); return l; } double SString::doubleValue() const { double l; memcpy (&l, array(), sizeof (l)); return l; } SString::~SString() { } SObject* SString::clone() const { return new SString (*this); } SString& SString::operator=(const SString& v) { refer(v); return *this; } void SString::truncate(unsigned int i) { SBinVector::truncate(i); } int SString::compare (const SString& e) const { if (e.isNull() && !isNull()) return 1; if (!e.isNull() && isNull()) return -1; unsigned int cmplen = (size() > e.size()) ? e.size() : size(); for (unsigned int i=0; i (unsigned char)e.array()[i]) return 1; if((unsigned char)array()[i] < (unsigned char)e.array()[i]) return -1; } if (size() > e.size()) return 1; if (size() < e.size()) return -1; return 0; } int SString::find (const SString& v, unsigned int from) const { return SBinVector::find (v, from); } int SString::find (char v, unsigned int from) const { return SBinVector::find (v, from); } int SString::replace (const SString& e, const SString& with, unsigned int from) { return SBinVector::replace (e, with, from); } int SString::replaceAll (const SString& e, const SString& with, unsigned int from) { return SBinVector::replaceAll (e, with, from); } void SString::insert (unsigned int ind, const SString& v) { SBinVector::insert (ind, v); } void SString::append (const SString& v) { SBinVector::append (v); } void SString::append (char v) { SBinVector::append (v); } void SString::append (long l) { SBinVector::append ((char*) &l, sizeof (long)); } void SString::append (const char* v, unsigned int len) { SBinVector::append (v, len); } void SString::refer (const SString& v) { SBinVector::refer (v); } SString& SString::operator << (const SString& e1) { append (e1); return *this; } /* SString& operator << (SString& e1, const SString& e2) { e1.append(e2); return e1; } */ /** * This requres at least 32 bit integers * @param in the character array to hash. */ unsigned int SString::hashCode () const { unsigned int sz = size(); unsigned int step = sz/8 +1; //unsigned int step = 1; register unsigned int ret = 0; register unsigned char * arr = (unsigned char*) array(); for (register unsigned int i=0; i(const SString& e) const { /* is e less ? */ return (compare (e) > 0); } bool SString::operator<=(const SString& e) const { /* is e greater or equal ? */ return (compare (e) <= 0); } bool SString::operator>=(const SString& e) const { /* is e less ? or equal */ return (compare (e) >= 0); } /** * Convert it to lower case */ void SString::lower() { for (unsigned int i=0; i= 'A' && a <= 'Z') { a = (a + 'a' - 'A'); SBinVector::replace (i, a); } } } /** * Convert it to lower case */ void SString::upper() { for (unsigned int i=0; i= 'a' && a <= 'z') { a = (a - ('a' - 'A')); SBinVector::replace (i, a); } } } /** * Print a long value * @param in input value to be appended to this string */ void SString::print (long in) { char a[64]; sprintf (a, "%ld", in); append (a); } /** * Print a long value * @param in input value to be appended to this string */ void SString::print (int in) { char a[64]; sprintf (a, "%d", in); append (a); } /** * Print a long value * @param in input value to be appended to this string */ void SString::print (unsigned long in) { char a[64]; sprintf (a, "%lu", in); append (a); } /** * Print a long value * @param in input value to be appended to this string */ void SString::print (unsigned int in) { char a[64]; sprintf (a, "%u", in); append (a); } /** * Print a double value * @param in input value to be appended to this string */ void SString::print (double in) { char a[64]; sprintf (a, "%g", in); append (a); } ./stoolkit/SAutogen.h0000644000175000017500000000311410434025610014575 0ustar henrichhenrich/** * Autogenerated by ./autogen.pl. Rotated unit vector around the clock. */ /** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SAutogen_h #define SAutogen_h #include /** * Rotated unit vector around the clock, from 12:00 clockwise. * The coordinate system follows the screen coordinates. * @return a full set of vectors, to make a closed curve. */ SLineCurve getCurveCircle24 (void); /** * Rotated unit vector around the clock, from 12:00 clockwise. * The coordinate system follows the screen coordinates. * @return a full set of vectors, to make a closed curve. */ SLineCurve getCurveCircle32 (void); /** * Rotated unit vector around the clock, from 12:00 clockwise. * The coordinate system follows the screen coordinates. * @return a full set of vectors, to make a closed curve. */ SLineCurve getCurveCircle36 (void); #endif /*SAutogen_h*/ ./stoolkit/SCluster.h0000644000175000017500000001020711053437207014624 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SCluster_h #define SCluster_h #include "stoolkit/STypes.h" #define SD_YUDIT 0 /* ligature 0x8001xxxx */ #define SD_DEVANAGARI 1 /* ligature 0x8002xxxx */ #define SD_BENGALI 2 /* ligature 0x8003xxxx */ #define SD_GURMUKHI 3 /* ligature 0x8004xxxx */ #define SD_GUJARATI 4 /* ligature 0x8005xxxx */ #define SD_ORIYA 5 /* ligature 0x8006xxxx */ #define SD_TAMIL 6 /* ligature 0x8007xxxx */ #define SD_TELUGU 7 /* ligature 0x8008xxxx */ #define SD_KANNADA 8 /* ligature 0x8009xxxx */ #define SD_MALAYALAM 9 /* ligature 0x800axxxx */ #define SD_SINHALA 10 /* Hangul */ #define SD_HANGUL_JAMO 11 /* Precomposed Unicode JAMOS */ #define SD_HANGUL_PREC 12 /* Thai, Lao and Tibetan will need positioning */ #define SD_THAI 13 #define SD_LAO 14 #define SD_TIBETAN 15 /* complex combining ligature a ligature that has combining marks in the middle */ #define SD_COMBINING_LIGATURE 16 /* bengali Ra+Ya in the beginning of the word. */ #define SD_BENGALI_BEGIN 17 /* Old Hungarian */ #define SD_PUA_ROVAS 18 #define SD_ROVASIRAS 19 #define SD_SCRIPT_MAX 20 /* Arabic and Syriac shapes A000[1234]000. */ /* if we are not this lucky we would need one for each */ #define SD_AS_SHAPES 0x2000 /* Escape 9fffffxx */ #define SD_AS_LITERAL 0x1fff /* get the name of OTF font shaping feature name */ const char* getShapeCode (unsigned int icode); /** * This one generates ligature on the non-displayable cluster */ unsigned int getCluster (const SV_UCS4& ucs4, unsigned int index, SV_UCS4* ret, int* finished=0); SS_UCS4 addCombiningLigature (const SS_UCS4* unicode, unsigned int ul, const SS_UCS4* ligAndMarks, unsigned int cl); void putLigatureUnicode (SS_UCS4 ligature, const SS_UCS4* code, unsigned int size); void putLigatureCluster (SS_UCS4 ligature, const SS_UCS4* code, unsigned int size); unsigned int getLigatureUnicode (SS_UCS4 ligature, SS_UCS4* buffer); unsigned int getLigatureCluster (SS_UCS4 ligature, SS_UCS4* buffer); bool isLigature (SS_UCS4 _comp); /* get script name or null */ const char* getLigatureScript (SS_UCS4 comp); int getLigatureScriptCode (SS_UCS4 comp); int getCharType (SS_UCS4 unchar); #define SD_JAMO_X 0 /* non-jamo */ #define SD_JAMO_L 1 /* choseong: leanding consonants or syllable initials */ #define SD_JAMO_V 2 /* jungseong: vowels or syllable-peak characters */ #define SD_JAMO_T 3 /* jongseong: trailing consonants or syllable final characters */ int getJamoClass (SS_UCS4 uc); /* get the index */ int getUnicodeScript (SS_UCS4 comp); bool isCoveredScipt (SS_UCS4 comp, int scipt); SS_UCS4 getHalant (int index); SS_UCS4 getLRVowelLeft (SS_UCS4 u); SS_UCS4 getLRVowelRight (SS_UCS4 u); /** * Some encoders will give back values in yudit ligature range. * Expand those ligatures. */ void expandYuditLigatures (SV_UCS4* decd); /* 1,2 is rovas, 3 is already a cluster */ int getRovasType (SS_UCS4 chr); int getPUARovasType (SS_UCS4 chr); #define SD_INDIC_CONSONANT_BELOW_BASE 0x1 #define SD_INDIC_HALANT 0x2 #define SD_INDIC_INDEP_VOWEL 0x3 #define SD_INDIC_LEFT_VOWEL 0x4 #define SD_INDIC_RIGHT_VOWEL 0x5 #define SD_INDIC_TOP_VOWEL 0x6 #define SD_INDIC_BOTTOM_VOWEL 0x7 #define SD_INDIC_SIGN 0x8 #define SD_INDIC_ZWJ 0x9 #define SD_INDIC_ZWNJ 0xa #define SD_INDIC_NUKTA 0xc #define SD_INDIC_MODIFIER 0xd #define SD_INDIC_LEFT_RIGHT_VOWEL 0xe #define SD_INDIC_CONSONANT_BASE 0xf #define SD_INDIC_CONSONANT_POST_BASE 0x10 #define SD_INDIC_CONSONANT_DEAD 0x11 #endif /* SCluster_h */ ./stoolkit/SUtil.cpp0000644000175000017500000005402211334221527014454 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SUtil.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SProperties.h" #include "stoolkit/SIO.h" #include "stoolkit/SIOStream.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SHashtable.h" #include "swindow/SAwt.h" #include #ifdef USE_WINAPI #include #include #include #else #include #include #include #endif #include SString getHome () { #ifdef USE_WINAPI // default SString ret ="C:/HOME"; // First try the HOME environment WCHAR* henv = _wgetenv (L"HOME"); if (henv) { SString u16fn ((const char*) henv, 2 * (unsigned int) wcslen (henv)); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString h = u8.encode (u16.decode (u16fn)); h.replaceAll ("\\", "/"); SDir dir (h); if (dir.exists()) { return SString (h); } fprintf (stderr, "HOME environment variable is nonexistent directory : \"%*.*s\".\n", SSARGS (h)); } WCHAR *full = new WCHAR[MAX_PATH+1]; CHECK_NEW (full); full[MAX_PATH] = 0; // Surpsisingly this works on Windows98SE if (SHGetSpecialFolderPathW (0, full, CSIDL_PERSONAL, false)) { SString u16fn ((const char*) full, 2 * (unsigned int) wcslen (full)); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); ret = u8.encode (u16.decode (u16fn)); } else if (SHGetSpecialFolderPathA (0, (char *) full, CSIDL_PERSONAL, false)) { SString s ((char*)full); ret = systemToUtf8 (s); } delete full; ret.replaceAll ("\\", "/"); SDir dir (ret); if (dir.exists()) { fprintf (stderr, "can not determine home directory. Using %*.*s\n", SSARGS(ret)); } else { fprintf (stderr, "can not determine home directory. Creating %*.*s\n", SSARGS(ret)); if (!dir.create()) { fprintf (stderr, "Could not create %*.*s\n", SSARGS(ret)); } } return ret; #else // HOME comes first char* henv = getenv ("HOME"); if (henv) { SString h (henv); if (h.size() != 0 && h[0] == '/') { SDir dir (h); if (dir.exists()) { return SString(h); } else { fprintf (stderr, "HOME environment variable is nonexistent directory : \"%*.*s\".\n", SSARGS (h)); } } else { fprintf (stderr, "HOME environment variable is not absolute path: \"%*.*s\".\n", SSARGS (h)); } } struct passwd * p = getpwuid(getuid()); if (p!=0) { return SString (p->pw_dir); } fprintf (stderr, "can not determine home directory. Using /tmp"); return "/tmp"; #endif } #ifndef YUDIT_DATA #define YUDIT_DATA "/usr/share/yudit" #endif /* YUDIT_DATA */ #define YUDIT_MAX_DATA 2048 #ifdef USE_WINAPI static SString getReg (const SString& _base, const SString& _name) { /* get registry entry first */ SString key = _base; SString name = _name; key.append ("\\"); key.append (name); key.append ((char)0); DWORD datasize = YUDIT_MAX_DATA; char* _registryBuffer = new char[datasize]; CHECK_NEW (_registryBuffer); DWORD type; LONG opened; HKEY hkey=0; type = REG_SZ; SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString utf16key = u16.encode (u8.decode (key)); if ( (opened = RegOpenKeyExW ( HKEY_LOCAL_MACHINE, (WCHAR*) utf16key.array(), 0, KEY_READ, &hkey) == ERROR_SUCCESS) && RegQueryValueExW ( hkey, 0, 0, &type, (BYTE*) _registryBuffer, &datasize) == ERROR_SUCCESS && datasize > 2 && datasize != YUDIT_MAX_DATA && (type == REG_SZ || type == REG_EXPAND_SZ)) { if (datasize < 2) { datasize = 2; } SString u16vle ((const char*) _registryBuffer, (unsigned int) (datasize-2)); SString ret = u8.encode (u16.decode (u16vle)); RegCloseKey (hkey); delete _registryBuffer; return SString(ret); } if (opened == ERROR_SUCCESS) { RegCloseKey (hkey); hkey=0; } // Windows98SE does not implement RegOpneKeyExW and RegQueryValueExW if ( (opened = RegOpenKeyExA ( HKEY_LOCAL_MACHINE, key.array(), 0, KEY_READ, &hkey) == ERROR_SUCCESS) && RegQueryValueExA ( hkey, 0, 0, &type, (BYTE*) _registryBuffer, &datasize) == ERROR_SUCCESS && datasize > 2 && datasize != YUDIT_MAX_DATA && (type == REG_SZ || type == REG_EXPAND_SZ)) { if (datasize < 1) { datasize = 1; } SString vle ((const char*) _registryBuffer, (unsigned int) (datasize-1)); SString ret = systemToUtf8 (vle); RegCloseKey (hkey); delete _registryBuffer; return SString(ret); } if (opened == ERROR_SUCCESS) { RegCloseKey (hkey); hkey=0; } delete _registryBuffer; return SString(); } /* * we dont have administrator privilage so this myght get virtualized. */ static bool setReg (const SString& _base, const SString& _name, const SString& _vle) { SString key = _base; SString name = _name; key.append ("\\"); key.append (name); key.append ((char)0); DWORD type; LONG opened; HKEY hkey=0; type = REG_SZ; SString vle = _vle; vle.append ((char)0); DWORD dispose=0; SECURITY_ATTRIBUTES sa; sa.nLength = sizeof (SECURITY_ATTRIBUTES); sa.lpSecurityDescriptor = NULL; sa.bInheritHandle = TRUE; SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString utf16vle = u16.encode (u8.decode (vle)); SString utf16key = u16.encode (u8.decode (key)); if ( // Windows98SE does not have the W version and it does not fail. (opened = RegCreateKeyExA ( HKEY_LOCAL_MACHINE, (char*) key.array(), 0, 0, REG_OPTION_NON_VOLATILE, KEY_WRITE, &sa, &hkey, &dispose) == ERROR_SUCCESS) && RegSetValueExA ( hkey, 0, 0, type, (BYTE*)vle.array(), vle.size()) == ERROR_SUCCESS) { RegCloseKey (hkey); return true; } if (opened == ERROR_SUCCESS) { fprintf (stderr, "Opened [%*.*s]\n", SSARGS(key)); RegCloseKey (hkey); hkey=0; } else { fprintf (stderr, "Can not open [%*.*s]\n", SSARGS(key)); } return false; } #endif SString getPrefix () { #ifdef USE_WINAPI SString akey = SString("Software\\Inui Yuko\\Yudit"); SString key = akey; key.append ("\\"); SString version = SD_YUDIT_VERSION; key.append (version); SString data=getReg(key, "Install Directory"); if (data.size()) { data.replaceAll("\\", "/"); return SString(data); } data = getReg(akey, "Current Version"); if (data.size()) { fprintf (stderr, "Can not find current version:%*.*s. trying version %*.*s\n", SSARGS(version), SSARGS(data)); SString key = akey; key.append ("\\"); key.append (data); SString data=getReg(key, "Install Directory"); if (data.size()) { data.replaceAll("\\", "/"); return SString(data); } } fprintf (stderr, "Can not find registry entry: [%*.*s\\Install Directory]\n", SSARGS(key)); #endif return SString (YUDIT_DATA); } bool setPrefix (const SString& str) { #ifdef USE_WINAPI SString key = SString("Software\\Inui Yuko\\Yudit"); setReg(key, "Current Version", SD_YUDIT_VERSION); key.append ("\\"); key.append (SD_YUDIT_VERSION); bool ret = setReg(key, "Install Directory", str); if (!ret) { fprintf (stderr, "Can not set registry entry: [%*.*s\\Install Directory] to [%*.*s]\n", SSARGS(key), SSARGS(str)); return false; } fprintf (stderr, "Registry entry [%*.*s\\Install Directory] has been set to [%*.*s]\n", SSARGS(key), SSARGS(str)); return ret; #endif return false; } bool loadProperties (const SString& file, SProperties* in) { SFile f(file); if (f.size() < 0) return false; SFileImage im = f.getFileImage (); if (im.size()<0) return false; SProperties p(SString (im.array(), im.size())); in->merge(p); return true; } bool loadProperties (SProperties* in) { SString c1 = getHome(); c1.append ("/.yudit/yudit.properties"); SString c2 = getPrefix(); c2.append ("/config/yudit.properties"); bool ret = loadProperties (c2, in); ret = ret || loadProperties (c1, in); return ret; } bool saveProperties (const SString& file, const SProperties& out) { SProperties orig; loadProperties (file, &orig); orig.merge (out); SFile f(file); SOutputStream os = f.getOutputStream(); if (!os.isOK()) return false; SWriter writer(os); if (!writer.isOK()) return false; SString s(orig.toString()); s.append ("\n# End of Yudit-"); s.append (SD_YUDIT_VERSION); s.append (" properties\n"); if (!writer.write (s)) return false; if (!writer.close()) return false; return true; } static bool translateInited = false; static SString currentBind; static SString currentLanguage; static SStringVector defaultDomains ("/usr/lib/locale,/usr/share/locale"); static SStringVector currentDomains; static SFileImage moFileImage; static SHashtable *moCache=0; void initTranslate (const SString& bindIn, const SString& domain) { currentBind = bindIn; currentDomains = defaultDomains; currentDomains.insert (0, domain); translateInited=false; } void setLanguage (const SString& _str) { if (_str != currentLanguage) { translateInited=false; } currentLanguage = _str; return; } SString getLanguage () { return SString (currentLanguage); } /** * Get system language or fb */ SString getSystemLanguage (const SString& fb) { char* henv = getenv ("LANG"); if (henv) { SString h (henv); /* no support for country yet */ if (h.size()> 2 && h[2] == '_') h.truncate (2); return SString(h); } return SString(fb); } /* SS_WORD32 mingle */ #define reorder_bytes(b) \ (((b>>24)&0xff) \ | ((b>>8)&0xff00) \ | ((b<<8)&0xff0000) \ | ((b<<24)&0xff000000)) SString translate (const SString& str) { if (moCache == 0) moCache = new SHashtable(); if (!translateInited) { moCache->clear(); translateInited = true; SStringVector plist; for (unsigned int i=0; iget(str) != 0) { return SString(*moCache->get (str)); } /* Direct processing of gettext mo file. byte +------------------------------------------+ 0 | magic number = 0x950412de | | | 4 | file format revision = 0 | | | 8 | number of strings | == N | | 12 | offset of table with original strings | == O | | 16 | offset of table with translation strings | == T | | 20 | size of hashing table | == S | | 24 | offset of hashing table | == H | | . . . (possibly more entries later) . . . | | O | length & offset 0th string ----------------. O + 8 | length & offset 1st string ------------------. ... ... | | O + ((N-1)*8)| length & offset (N-1)th string | | | | | | | T | length & offset 0th translation ---------------. T + 8 | length & offset 1st translation -----------------. ... ... | | | | T + ((N-1)*8)| length & offset (N-1)th translation | | | | | | | | | | | H | start hash table | | | | | ... ... | | | | H + S * 4 | end hash table | | | | | | | | | | | | NUL terminated 0th string <----------------' | | | | | | | | | NUL terminated 1st string <------------------' | | | | | | ... ... | | | | | | | NUL terminated 0th translation <---------------' | | | | | NUL terminated 1st translation <-----------------' | | ... ... | | +------------------------------------------+ */ unsigned char* array = (unsigned char*)moFileImage.array(); SS_WORD32 magic = *((SS_WORD32*)&array[0]); bool swap = (magic != 0x950412de); if (swap) magic = reorder_bytes (magic); if (magic != 0x950412de) { moCache->put (str, str); return SString(str); } SS_WORD32 count = *((SS_WORD32*)&array[8]); SS_WORD32 koffset = *((SS_WORD32*)&array[12]); SS_WORD32 toffset = *((SS_WORD32*)&array[16]); if (swap) { count = reorder_bytes (count); koffset = reorder_bytes (koffset); toffset = reorder_bytes (toffset); } SString trans (str); for (unsigned int i=0; iput (str, trans); return SString(trans); } /** * print the unicode value in "U+XXXX or U+XXXXXXXX" form */ SString unicodeValueOf (const SV_UCS4& ucs4) { char a[64]; SString s; for (unsigned int i=0; i 0xffff) { sprintf (a, "%08lX", (unsigned long) ucs4[i]); } else { sprintf (a, "%04X", (unsigned int) ucs4[i]); } s.append (a); } return SString (s); } SString unicodeValueOf (const SString& str) { SEncoder enc("utf-8"); SV_UCS4 ucs4 = enc.decode (str); return unicodeValueOf (ucs4); } /** * Get the square root or if there are decimals, the value that is less * than square root. * @param sq is the square */ unsigned long ss_sqrtlong (unsigned long sq) { /* we don't check for negative. assume...*/ if (sq<2) return sq; /* zero or 1 */ register unsigned long x=sq; register unsigned long r=x-1; while (r < x) { x = r; r= (x+(sq/x))/2; } return x; } /** * arcus tanget in a scale of 32 * @param x is the vector x param * @param y is the vector y param * @return the anlge with step 1 * 0 => 12:00, 8 => 3:00, 16 => 6:00, 24 => 9:00 * returns 32 if x and y are both zero. */ int ss_atan32 (int x, int y) { if (x==0 && y ==0) return 32; /* normalize data - x and y positive and x < y */ bool xneg = x < 0; if (xneg) x = -x; bool yneg = y < 0; if (yneg) y = -y; bool xyflip = (y < x); if (xyflip) { int tmp = x; x = y; y = tmp; } int slope = (100 * x) / y; int ret = 4; /* ../bin/angle.pl data is used */ if (slope < 10) ret = 0; else if (slope < 31) ret = 1; else if (slope < 54) ret = 2; else if (slope < 83) ret = 3; /* now 0..45 degrees is nicely split up into 0..4 */ /* go back the transform we did at the begining in reverse order */ if (xyflip) ret = 8 - ret; if (yneg) ret = 16 - ret; if (xneg) ret = 32 - ret; return ret % 32; } static long maxlong=0; static long maxsqrtlong=0; /** * Get the maximum long value on the machine. * The hard way. Don't trust header files. Gaspar Sinai */ long getMaxLong() { if (maxlong==0) { long l = 1; long ml = 1; while (l>0) { maxlong = ml; l = l<<1; ml = (ml<<1)|1; } } return maxlong; } long getMaxSqrtLong () { if (maxsqrtlong==0) { getMaxLong(); maxsqrtlong = ss_sqrtlong (maxlong)-1; } return maxsqrtlong; } static long maxint=0; static long maxsqrtint=0; /** * Get the maximum long value on the machine. * The hard way. Don't trust header files. Gaspar Sinai */ int getMaxInt() { if (maxint==0) { int i = 1; int mi = 1; while (i>0) { maxint = i; i = i<<1; mi = (mi<<1)|1; } } return maxint; } int getMaxSqrtInt () { if (maxsqrtint==0) { getMaxInt(); maxsqrtint = (int)ss_sqrtlong ((long)maxlong)-1; } return maxsqrtint; } bool isWindows () { #ifdef USE_WINAPI OSVERSIONINFO ovi; ovi.dwOSVersionInfoSize = sizeof (ovi); GetVersionEx (&ovi); return (ovi.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS); #else /*USE_WINAPI*/ return false; #endif } bool isWinAPI () { #ifdef USE_WINAPI return true; #else /*USE_WINAPI*/ return false; #endif } /** * check if the command could be executed in a shell as is. */ bool commandExists (const SString& str) { SString comm = str; comm.replaceAll ("\\", "/"); comm.replaceAll ("//", "/"); char* path = getenv ("PATH"); if (!path) { path = getenv ("path"); if (!path) { path = getenv ("Path"); } } SStringVector pv; if (path && path[0] != 0) { #ifdef USE_WINAPI SStringVector v(path, ";"); #else SStringVector v(path, ":"); #endif for (unsigned int i=0; i0) return true; #ifdef USE_WINAPI SString ecomm = comm; ecomm.append (".exe"); SFile f1(ecomm, pv); if (f1.size()>0) return true; comm.append (".com"); SFile f2(ecomm, pv); if (f2.size()>0) return true; #endif return false; } SString systemToUtf8 (const SString& str) { #ifdef USE_WINAPI if (str.size() == 0) { return SString (str); } int blen = 4 * str.size (); WCHAR* utf16 = new WCHAR[blen]; CHECK_NEW (utf16); char* cstr = str.cString(); int rlen = MultiByteToWideChar (CP_ACP, MB_PRECOMPOSED, cstr, str.size(), utf16, blen); if (rlen > 0) { int i; SV_UCS4 uni; for (i=0; i= 0xd800 && u16 < 0xe000) { if (i+1 == rlen) { uni.append (u16); } else if (u16 < 0xdc00) { // Sequence is // U+D800-U+DBFF (High Surrogates) // U+DC00-U+DFFF (Low Surrogates) SS_UCS4 full = (u16 & 0x3ff) << 10; i++; u16 = (SS_UCS4) utf16[i]; full += (u16 & 0x3ff); full += 0x10000; uni.append (full); } else { uni.append (u16); i++; u16 = (SS_UCS4) utf16[i]; uni.append (u16); } } else { uni.append (u16); } } delete [] utf16; delete [] cstr; SEncoder enc("utf-8"); return (enc.encode (uni)); } delete [] utf16; delete [] cstr; return SString (str); #else SString ret; for (unsigned int i=0; i= 'a' && str[i] <= 'z') { ret.append ((char) (str[i] - 'a' + 'A')); } else { ret.append ((char) (str[i])); } } return SString (ret); #endif } SString utf8ToSystem (const SString& str) { #ifdef USE_WINAPI if (str.size() == 0) { return SString (str); } SEncoder encoder ("utf-8"); SV_UCS4 input = encoder.decode (str); int blen = 2 * input.size (); WCHAR* utf16 = new WCHAR[blen]; CHECK_NEW (utf16); int i; int count = 0; for (i=0; i> 10) & 0x3ff) | 0xd800; WCHAR l = (c & 0x3ff) | 0xdc00; utf16[count++] = h; utf16[count++] = l; } } blen = 16 * count + 1; char* out = new char[blen]; CHECK_NEW (out); out[blen-1] = 0; int rlen = WideCharToMultiByte (CP_ACP, 0, utf16, count, out, blen, NULL, NULL); if (rlen > 0) { SString ret (out, rlen); delete [] utf16; delete [] out; return (SString(ret)); } delete [] utf16; delete [] out; return SString (str); #else SString ret; for (unsigned int i=0; i= 'A' && str[i] <= 'Z') { ret.append ((char) (str[i] - 'A' + 'a')); } else { ret.append ((char) (str[i])); } } return SString (ret); #endif } ./stoolkit/SConfig.h0000644000175000017500000000371710434025610014411 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SConfig_h #define SConfig_h #include "SIO.h" #include "SString.h" #include "SStringVector.h" #include "SProperties.h" #include "SHashtable.h" /** *---------------------------------------------------------------------------- * This file is absolete. 2001-01-12 *---------------------------------------------------------------------------- * @author: Gaspar Sinai * @version: 2000-04-23 */ typedef SHashtable SSectionHashtable; class SConfig { public: SConfig (const SFile& config); SConfig (const SConfig& config); SConfig& operator = (const SConfig& config); virtual ~SConfig(); const SString& getName() { return file.getName(); } void setFile (const SFile& newFile); bool write (); int read (); void set(const SString& section, const SString& key, const SString& vle); void set(const SString& section, const SProperties& list); SStringVector keys (); SStringVector keys (const SString& section); const SString& get (const SString& section, const SString& key); void remove (const SString& section, const SString& key); void remove (const SString& section); protected: SSectionHashtable sectHashtable; SFile file; }; #endif /* SConfig_h */ ./stoolkit/SGlyph.cpp0000644000175000017500000007430310730357260014631 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SGlyph.h" #include "stoolkit/SParagraph.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SUtil.h" #include "stoolkit/STextData.h" #include "stoolkit/SCluster.h" typedef enum { SD_SH_ISOLATED=0, SD_SH_INITIAL=1, SD_SH_MEDIAL=2, SD_SH_FINAL=3, /* Syriac U+0710 extra shapes */ SD_SH_SYRIAC_ALAPH_FINAL_FJ=4, SD_SH_SYRIAC_ALAPH_ISOLATED_FN=5, SD_SH_SYRIAC_ALAPH_ISOLATED_FX=6, SD_BENGALI_INITIAL=7, SD_SH_NOSHAPE=SD_NOSHAPE } SShape; SBinHashtable glyphCache; static char getSimpleShape (const SS_UCS4* now, const SS_UCS4* before, const SS_UCS4* after); /*------------------------------------------------------------------------------ * The class SFallbackShapes should not be in this file. *------------------------------------------------------------------------------ * This is used to chache shapes internally. * TODO: move this to another file. */ class SFallbackShapes { public: SFallbackShapes(); ~SFallbackShapes(); const SS_UCS4* get (unsigned int shape, const SS_UCS4* ochars, unsigned int sizes); void put (unsigned int shape, const SS_UCS4* ochars, const SS_UCS4* schars, unsigned int sizes); private: SBinHashtable shape0; SBinHashtable shape1; SBinHashtable shape2; SBinHashtable shape3; }; SFallbackShapes::SFallbackShapes() { } SFallbackShapes::~SFallbackShapes() { /* FIXME: cleanup allocated SS_UCS4* arrays */ } const SS_UCS4* SFallbackShapes::get (unsigned int shape, const SS_UCS4* ochars, unsigned int sizes) { const SS_UCS4* elem = 0; SString skey ((char*)ochars, sizes * sizeof (SS_UCS4)); switch (shape) { case 0: elem = shape0.get (skey); break; case 1: elem = shape1.get (skey); break; case 2: elem = shape2.get (skey); break; case 3: elem = shape3.get (skey); break; } /* referecing live data */ return elem; } void SFallbackShapes::put (unsigned int shape, const SS_UCS4* ochars, const SS_UCS4* schars, unsigned int sizes) { SS_UCS4* vp = new SS_UCS4[sizes]; CHECK_NEW (vp); SString skey ((char*)ochars, sizes * sizeof (SS_UCS4)); /* copy over the shaped chars. */ for (unsigned int i=0; ishaped ? 0 : SD_NOSHAPE; /* first or not shaped */ } /** * This is the definition of one glyph. It may be composed of * several characters. * @param decomp is the character array in order. It ALWAYS contains chars. * @param comp is the composition character. It might be 0. In this * case decomp needs to be used. * @param shaped is used only if shared is not chached. It tells if * the glyph is shaped. * @param cluster - points to the cluster boundary * @param compindex - points to the extra composing boundary * YOU SOULD ALSO SET usePrecomp aftwerwards. * * ONLY PRECOMPOSED OR SINGLE CHARS WILL BE CACHED! * comp is nonzero for precomposed chars. */ SGlyph::SGlyph (const SV_UCS4 &decomp, SS_UCS4 comp, bool shaped, unsigned int cluster, unsigned int compindex) { selected = false; underlined = false; usePrecomp = true; embedding = false; SS_UCS4 precomp = comp; /* There is no such thing as a one character composition */ if (decomp.size()==1) precomp = decomp[0]; SString skey = (precomp==0 || compindex>0) ? SString() : SString((char*)&precomp, sizeof (SS_UCS4)); if (skey.size()==0 && decomp.size() > 1) { skey = SString ((char*) decomp.array(), sizeof (SS_UCS4) * decomp.size()); } SGlyphShared* shr = 0; if ((shr=glyphCache.get (skey))) { shared = shr; } else { shared = new SGlyphShared(); shared->shaped = shaped; shared->cluster = cluster; shared->composing = compindex; /* * We save only * 1. chars with precomposition * 2. single chars */ shared->precomposed = precomp; /* Memory is expensive, don't waste on single chars */ if (decomp.size() > 1 || compindex > 0) { shared->ucs4v = decomp; } if (skey.size()) { glyphCache.put (skey, shared); } SS_UCS4 fchar = getFirstChar(); shared->type = (char) getCharClass(fchar); shared->bidi = (char) getBiDiClass(fchar); shared->mirror = precomp ? getMirroredCharacter(precomp) : 0; shared->tab = (fchar == SD_CD_TAB); shared->lineend = (fchar==SD_CD_LF || fchar==SD_CD_CR || fchar==SD_CD_PS || fchar==SD_CD_LS || fchar==SD_CD_FF); /* clusters and stuff need shared->type and shared->bidi */ if (cluster>0) { /* decompose */ SS_UCS4 firstchar = decomp[cluster]; shared->type = (char) getCharClass(firstchar); shared->bidi = (char) getBiDiClass(firstchar); } } currentShape = shared->shaped ? 0 : SD_NOSHAPE; /* first or not shaped */ } /** * Modify this glyph by adding extra composing characters * to it. * @param c is a new composing character to be added. * @return true if this was a composing character. */ bool SGlyph::addComposing(SS_UCS4 c) { //fprintf (stderr, "1\n"); if (c==0) return false; if (isEOP()) return false; SV_UCS4 chars = getChars(); chars.append (c); unsigned int to = 0; SParagraph pg(chars, &to); if (pg.size()!=1) return false; if (to != chars.size()) return false; shared = (SGlyphShared*) pg[0].shared; usePrecomp = pg[0].usePrecomp; return true; } /** * @return the removed composing character if any * return 0 if there are no more composing characters. */ SS_UCS4 SGlyph::removeComposing() { SV_UCS4 chars = getChars(); if (chars.size()<2) return 0; SS_UCS4 c = chars[chars.size()-1]; chars.truncate (chars.size()-1); unsigned int to = 0; SParagraph pg(chars, &to); if (pg.size()!=1) return 0; if (to != chars.size()) return 0; shared = (SGlyphShared*) pg[0].shared; usePrecomp = pg[0].usePrecomp; return c; } /*------------------------------------------------------------------------------ * SGlyph Work on characters *------------------------------------------------------------------------------ */ /** * Get the composition of the glyph. If this is a shaped * Glyph this is the ORIGINAL composition - if any. */ const SS_UCS4 SGlyph::getChar() const { return shared->precomposed; } /* * Get the mirrored version of the glyph. */ const SS_UCS4 SGlyph::getMirroredChar() const { return shared->mirror; } /** * Get the current shape of a shaped glyph. * If glyph is not shaping return getChar. */ const SS_UCS4 SGlyph::getShapedChar() const { if (shared->shaped && currentShape != SD_NOSHAPE) { /* hard-coded 3 extra shapes for SYRIAC_ALAPH U+0710 */ if ((unsigned int)currentShape == (unsigned int)SD_SH_SYRIAC_ALAPH_FINAL_FJ) { return (SS_UCS4) 0xA0005710; } if ((unsigned int)currentShape == (unsigned int)SD_SH_SYRIAC_ALAPH_ISOLATED_FN) { return (SS_UCS4) 0xA0006710; } if ((unsigned int)currentShape == (unsigned int)SD_SH_SYRIAC_ALAPH_ISOLATED_FX) { return (SS_UCS4) 0xA0007710; } SS_UCS4 curr = shared->ucs4v.array()[(unsigned int)currentShape]; if (curr) return curr; /* some fallback. if we are lucky... */ } if ((unsigned int)currentShape == (unsigned int)SD_BENGALI_INITIAL) { unsigned int en = (SD_BENGALI_BEGIN << 16) | 0x80000000; return ( (shared->precomposed & 0xffff) | en); } return shared->precomposed; } /** * Get the first character of this composition or decomposition */ const SS_UCS4 SGlyph::getFirstChar () const { SS_UCS4 g = getChar(); if (g==0 && (compSize() > 0 || decompSize() > 0)) { g = getDecompArray()[0]; } return g; } /** * In certain cases - when the font does not contain the * shaped character and we need to fall back to the original * characters. Original characters are unshaped - this * routine is making them shaped. * This is hard coded for now. * @return null if there are fallback shapes */ const SS_UCS4* SGlyph::getShapeFallback() const { if (!shared->shaped || fallbackShapes == 0 || (unsigned int)currentShape > 3) return 0; unsigned int dcsize = decompSize(); if (dcsize==0) return 0; return fallbackShapes->get ((unsigned int)currentShape, getDecompArray(), dcsize); } /*------------------------------------------------------------------------------ * SGlyph Work on decompositions *------------------------------------------------------------------------------ */ /** * Get the precomposed characters _or_ the composition characters * add extra composing characters at the end. * If precomposed characters we input, return them, if decomposed * were input return them. It returns the unicode representation * of the given cluster. All extra composing character are also * added. */ SV_UCS4 SGlyph::getChars() const { SV_UCS4 ret; /* If precomposed char should be used or there are no decomps */ if ((usePrecomp && getChar() != 0) || decompSize()==0) { ret.append (getChar()); /* add extra composing stuff, if any */ if (shared->composing > 0) { unsigned int sz = shared->ucs4v.size(); for (unsigned int i=(unsigned int)shared->composing; iucs4v[i]); } } return SV_UCS4(ret); } /* TODO: shaping on clusters */ if (shared->cluster!=0) { /* just add the composing also which is at the end of the array */ unsigned int sz = shared->ucs4v.size(); for (unsigned int i=(unsigned int)shared->cluster; iucs4v[i]); } return SV_UCS4(ret); } /* just add the composing also which is at the end of the array */ unsigned int sz = shared->ucs4v.size(); unsigned int from = (shared->shaped)?4:0; for (unsigned int i=from; iucs4v.array()[i]); } return SV_UCS4(ret); } /** * @return the size of the decomposition buffer */ unsigned int SGlyph::decompSize() const { if (shared->shaped) { /* For shaped we have an offset */ if ((unsigned int)shared->composing ==0)return shared->ucs4v.size()-4; return (unsigned int)shared->composing - 4; } if (shared->cluster!=0) { return(unsigned int) shared->cluster; } if ((unsigned int)shared->composing==0) return shared->ucs4v.size(); return (unsigned int)shared->composing; } /** * @return the size of the extra composition buffer */ unsigned int SGlyph::compSize() const { if (shared->composing == 0) return 0; return shared->ucs4v.size() - (unsigned int) shared->composing; } /** * Return the decomposition array of the glyph. * If the glyph is a shaped glyph it still returns the * correct decomposition - if any. */ const SS_UCS4* SGlyph::getDecompArray() const { if (shared->shaped) { /* For shaped we have an offset */ return &shared->ucs4v.array()[4]; } return shared->ucs4v.array(); } /** * Return the omposition array of the glyph. * If the glyph is a shaped glyph it still returns the * correct composition - if any. * The compositon has to be applied to the whole rendered cluster. */ const SS_UCS4* SGlyph::getCompArray() const { return &shared->ucs4v.array()[(unsigned int) shared->composing]; } /** * Return the shape array of the glyph. * If the glyph is not shaped returned 0 * the array has a size of foru and it contains the * isolated, initial, medial, final forms * If a form iz 0 it is not defined. */ const SS_UCS4* SGlyph::getShapeArray() const { if (shared->shaped) { /* For shaped we have an offset */ return shared->ucs4v.array(); } return 0; } /** * return the decomposed character or shaped array, at a certain place. */ SS_UCS4 SGlyph::operator[] (unsigned int index) const { if (shared->shaped) { /* For shaped we have an offset */ return shared->ucs4v.array()[4 + index]; } return shared->ucs4v.array()[index]; } /* * check if the character has to be mirrored in RTL */ bool SGlyph::isMirrorable() const { return (shared->mirror != 0); } /** * check if this character is special - lineend, tab LRM RLM * These require special rendering. */ bool SGlyph::isSpecial() const { SS_UCS4 fc = getFirstChar(); return (shared->lineend || shared->tab || fc < 0x20 || fc == SD_CD_LRM || fc == SD_CD_RLM || fc==SD_CD_ZWJ || fc==SD_CD_ZWNJ); } /* * Get character type. */ SD_CharClass SGlyph::getType() const { return (SD_CharClass) ((unsigned char)shared->type); } /* * Get character type. */ SD_BiDiClass SGlyph::getBiDiType() const { return (SD_BiDiClass) ((unsigned char)shared->bidi); } /** * Check if this is a white space. */ bool SGlyph::isWhiteSpace() const { if (isSpecial ()) return true; switch (getFirstChar()) { case 0x20: case 0x1680: case 0x2000: case 0x2001: case 0x2002: case 0x2003: case 0x2004: case 0x2005: case 0x2006: case 0x2007: case 0x2008: case 0x2009: case 0x200a: // case 0x2028: LINE SEPARATOR case 0x202f: case 0x205f: case 0x3000: return true; } return false; } /** * Check if this is a valid number * Supports many of the number in unicode, including CJK, arabic, hebrew and greek... * Addition by Maarten van Gompel */ bool SGlyph::isNumber() const { SD_CharClass type = getType(); switch (type) { case SD_CC_Nd: case SD_CC_Nl: case SD_CC_No: return true; default: break; } return false; } /** * This method is used to higlight letters with a color. */ bool SGlyph::isLetter() const { SD_CharClass type = getType(); switch (type) { case SD_CC_Lu: case SD_CC_Ll: case SD_CC_Lt: case SD_CC_Lm: case SD_CC_Lo: return true; default: break; } return false; } /** * Check if this is a valid delimiter * This method is used to facilitate wordwarp functionality. * * Supports many of the delimiters in unicode, including CJK delimiters, arabic, hebrew and greek... * Addition by Maarten van Gompel */ bool SGlyph::isDelimiter() const { if (isSpecial ()) return true; SD_CharClass type = getType(); switch (type) { case SD_CC_Pc: case SD_CC_Pd: case SD_CC_Ps: case SD_CC_Pe: case SD_CC_Pi: case SD_CC_Pf: case SD_CC_Po: case SD_CC_Zs: case SD_CC_Zl: case SD_CC_Zp: return true; default: break; } return false; } // previously we used isDelimiter to decide weather the word can be broken // at this poing. Now I added CJK and KANA because they can wrap any time. bool SGlyph::canWrap() const { if (isDelimiter ()) return true; SS_UCS4 chr = shared->precomposed; // CJK Symbols and Punctuation if (chr >= 0x3000 && chr <=0x303f) return true; // Hiragana if (chr >= 0x3040 && chr <=0x309f) return true; // Katakana if (chr >= 0x30A0 && chr <=0x30ff) return true; // Bopomofo // Hangul Compatibility Jamo // CJK Strokes // Katakana Phonetic Extensions // Enclosed CJK Letters and Months // CJK Compatibility // CJK Unified Ideographs Extension A // Yijing Hexagram Symbols // CJK Unified Ideographs if (chr >= 0x3100 && chr <=0x9fff) return true; // Hangul Syllables if (chr >= 0xac00 && chr <=0xd7af) return true; // Japanes fullwidth alphabet if (chr >= 0xff21 && chr <=0xff5a) return true; // Halfwidth and Fullwidth Forms if (chr >= 0xff00 && chr <=0xffef) return true; // CJK Compatibility Ideographs if (chr >= 0xf900 && chr <=0xfaff) return true; // CJK Unified Ideographs Extension B if (chr >= 0x20000 && chr <=0x2A6DF) return true; // CJK Compatibility Ideographs Supplement if (chr >= 0x2F800 && chr <=0x2FA1F) return true; return false; } /** * Check if this is a transparent character. */ bool SGlyph::isTransparent() const { // From Miikka-Markus Alhonen: // "T = Mn + Cf - ZWNJ - ZWJ" (ArabicShaping-4.txt of UCD 3.1.1) // This means that every character belonging to character classes // Mn (04) or Cf (0E) except for ZWNJ U+200C and ZWJ U+200D - and // nothing else - is transparent. // So, even all the characters in Combining Diacritical Marks // U+0300 - U+036F, Hebrew vowels U+0591 - U+05BD, Syriac vowels // U+0730 - U+074A etc. are transparent characters, not just the // Arabic tashkeel //return (gcategory.encode (u4) == 0x4 && ...); // Mark, Non-Spacing if (shared->type == (char)SD_CC_Mn || (char)shared->type == SD_CC_Me || shared->type == (char)SD_CC_Cf) { SS_UCS4 u4 = getFirstChar(); return (u4 != SD_CD_ZWNJ && u4 != SD_CD_ZWJ); } return false; } /** * return true if this is the end of a paragraph */ bool SGlyph::isEOP() const { return (shared->lineend && shared->precomposed != SD_CD_LS && shared->precomposed != SD_CD_FF); } /** * return true if this is the end of a paragraph. */ bool SGlyph::isEOL() const { return (shared->precomposed == SD_CD_LS || shared->precomposed == SD_CD_FF); } bool SGlyph::isFF() const { return (shared->precomposed == SD_CD_FF); } bool SGlyph::isTab() const { return shared->tab; } bool SGlyph::isCluster() const { return shared->cluster != 0; } /** * We use private area to define our own ligatures. */ bool SGlyph::isYuditLigature() const { if (decompSize()==0) return 0; /* We might above ligature for shaping */ SS_UCS4 ch = getShapedChar(); return isLigature (ch); } /** * We use private area to define our own precomposed characters. */ bool SGlyph::isYuditComposition() const { if (decompSize()==0) return 0; /* We might above ligature for shaping */ SS_UCS4 ch = getShapedChar(); if (ch>= 0xA0000000) { return true; } return false; } /** * Construct a key from characters inside the glyph * @return the key. the key does not contain attributes, * it only has glyph info. */ SString SGlyph::charKey() const { if (decompSize()+compSize() == 0) { SS_UCS4 chr = getChar(); return SString ((char*) &chr, sizeof (SS_UCS4)); } return SString ((char*) shared->ucs4v.array(), shared->ucs4v.size() * sizeof (SS_UCS4)); } /*------------------------------------------------------------------------------ * comparison *------------------------------------------------------------------------------ */ bool SGlyph::operator == (const SGlyph& g2) const { if (shared->ucs4v.size() != g2.shared->ucs4v.size()) { return false; } if (shared->ucs4v.size()==0) { return (getChar() == g2.getChar()); } for (unsigned int i=0; iucs4v.size(); i++) { if (shared->ucs4v[i] != g2.shared->ucs4v[i]) return false; } return true; } bool SGlyph::operator != (const SGlyph& g2) const { if (shared->ucs4v.size() != g2.shared->ucs4v.size()) { return true; } if (shared->ucs4v.size()==0) { return (getChar() != g2.getChar()); } for (unsigned int i=0; iucs4v.size(); i++) { if (shared->ucs4v[i] != g2.shared->ucs4v[i]) return true; } return false; } /** * Cache fallback shapes into * fbIsolated, fbInitial, fbMedial, fbFinal global hashTables. * @param shapes tells us what shapes will be present. * this is an array of size 4, (isolated, initial, medial, final) * @param chars tells us the characters we need shapes for. * @param size is the size of chars array. */ void addFallbackShapes (SUniMap* shaper, const SS_UCS4* shapes, const SS_UCS4* chars, unsigned int csize) { if (csize ==0) return; /* roboustness */ /* first build shape arrays */ SV_UCS4 isol; SV_UCS4 init; SV_UCS4 medi; SV_UCS4 fina; if (fallbackShapes == 0) { fallbackShapes = new SFallbackShapes(); CHECK_NEW (fallbackShapes); } /* isolated will aways have it */ if (fallbackShapes->get (0, chars, csize)) { return; } unsigned int i; for (i=0; ilift (v, 0, false, &ret); /* the composition comes at the end - if any */ if (n==1 && ret.size()==4) { isol.append (ret[0]); init.append (ret[1]); medi.append (ret[2]); fina.append (ret[3]); } /* make it transparent: deal with SD_CD_ZWJ for now. */ else if (chars[i]== SD_CD_ZWJ || chars[i]== SD_CD_ZWNJ) { isol.append (chars[i]); init.append (chars[i]); medi.append (chars[i]); fina.append (chars[i]); } else /* no shapes - treat as isol */ { isol.append (chars[i]); init.append (0); medi.append (0); fina.append (0); } } /* now collect shape arrays */ SV_UCS4 isolA; SV_UCS4 initA; SV_UCS4 mediA; SV_UCS4 finaA; for (i=0; i=0 && (chars[(unsigned int)i0] == SD_CD_ZWJ || chars[(unsigned int)i0] == SD_CD_ZWNJ)) i0--; /* Emulate previous */ if (i0>=0) { prev[0] = isol[(unsigned int)i0]; prev[1] = init[(unsigned int)i0]; prev[2] = medi[(unsigned int)i0]; prev[3] = fina[(unsigned int)i0]; } else if (j==(unsigned int)SD_SH_MEDIAL || j==(unsigned int)SD_SH_FINAL) { /* Previous had initial or medial */ prev[0] = 0; prev[1] = 1; prev[2] = 1; prev[3] = 0; } else /* ISOLATED INITIAL */ { /* Previous has isolated or final */ prev[0] = 1; prev[1] = 0; prev[2] = 0; prev[3] = 1; } /* there is next */ unsigned int i2 = i+1; /* skip ZWJ and ZWNJ */ while (i2put (0, chars, isolA.array(), csize); if (initA.size()==csize) fallbackShapes->put (1, chars, initA.array(), csize); if (mediA.size()==csize) fallbackShapes->put (2, chars, mediA.array(), csize); if (finaA.size()==csize) fallbackShapes->put (3, chars, finaA.array(), csize); } /** * calcualte the current shape * return true if shape changed */ bool SGlyph::setShape(const SGlyph* gbefore, const SGlyph* gafter) { if (!shared->shaped && getLigatureScriptCode (shared->precomposed)!=SD_BENGALI) { return false; } char shape = getShape (gbefore, gafter); if (shape == currentShape) return false; currentShape = shape; return true; } /** * Get the shape at the current position * Please note that it works in visual order! * @return *
      *
    • SD_NOSHAPE no shape
    • *
    • 0 isolated
    • *
    • 1 initial (space after-rl)
    • *
    • 2 medial
    • *
    • 3 final (space before-rl)
    • *
    * @param gbefore is the glyph before this line, transparent chars skipped * @param gafter is the glyph before this line, transparent chars skipped */ char SGlyph::getShape(const SGlyph* gbefore, const SGlyph* gafter) { static SS_UCS4 initials[4] = {0x0, 0x0, 0x0, 0x0}; static SS_UCS4 dualjoining[4] = {1, 1, 1, 1}; /* is it a shapeable one ? */ const SS_UCS4* now = getShapeArray(); if (now == 0) { if (getLigatureScriptCode (shared->precomposed)==SD_BENGALI) { if (gbefore==0 || (getLigatureScriptCode (gbefore->shared->precomposed)!=SD_BENGALI && getUnicodeScript (gbefore->getFirstChar()) != SD_BENGALI)) { return (char) SD_BENGALI_INITIAL; } } return (char) SD_SH_NOSHAPE; } const SS_UCS4* before = initials; const SS_UCS4* after = initials; if (gbefore) { before=gbefore->getShapeArray(); if (before==0) before=initials; /* tatweel and ZWJ are dual joining */ if (gbefore->getFirstChar() == SD_CD_ARABIC_TATWEEL || gbefore->getFirstChar() == SD_CD_ZWJ) before = dualjoining; } if (gafter) { after=gafter->getShapeArray(); if (after==0) after=initials; /* tatweel and ZWJ are dual joining */ if (gafter->getFirstChar() == SD_CD_ARABIC_TATWEEL || gafter->getFirstChar() == SD_CD_ZWJ) after = dualjoining; } /* Make it all rl for simplicity */ SS_UCS4 beforeChar = (gbefore==0) ? 0 : gbefore->getFirstChar(); SS_UCS4 afterChar = (gafter==0) ? 0 : gafter->getFirstChar(); bool syriacEOWAlaph = false; syriacEOWAlaph = (afterChar < 0x070f || afterChar > 0x074f) && (afterChar < 0x0621 || afterChar > 0x065f) && afterChar != SD_CD_ZWJ; syriacEOWAlaph = syriacEOWAlaph && (getFirstChar() == 0x0710); /* This is not End of word. Isolated. */ if (syriacEOWAlaph && (beforeChar < 0x070f || beforeChar > 0x074f) && beforeChar != SD_CD_ARABIC_TATWEEL && beforeChar != SD_CD_ZWJ) { return (char) SD_SH_ISOLATED; } /* End-Of-Word rules for Syriac Alaph */ if (syriacEOWAlaph) { /* FX - Isolated end of the word when preceded by Syriac dalath or rish: U+0715 U+0716 U+072A */ if (beforeChar == SD_CD_SYRIAC_LETTER_DALATH || beforeChar == SD_CD_SYRIAC_LETTER_DOTLESS_DALATH || beforeChar == SD_CD_SYRIAC_LETTER_RISH) { return (char) SD_SH_SYRIAC_ALAPH_ISOLATED_FX; } /* FJ - Final end of word */ if (before[(unsigned int)SD_SH_INITIAL]) { return (char) SD_SH_SYRIAC_ALAPH_FINAL_FJ; } /* FN - Isolated end of word except when preceded by Syriac dalath or rish */ return (char) SD_SH_SYRIAC_ALAPH_ISOLATED_FN; } /* call shaper */ return getSimpleShape (now, before, after); } /** * This simple shaper is used after * exceptions are applied, and when a fallback shape * is generated * @param now is the current shape array * @param before is the shape array of the previous character * @param after is the shape array of the next character * before and after is in logical order. * The shape array contains 4 elements for * isolated, initial, medial and final forms. */ static char getSimpleShape (const SS_UCS4* now, const SS_UCS4* before, const SS_UCS4* after) { if ((before[(unsigned int)SD_SH_INITIAL]) && now[(unsigned int)SD_SH_MEDIAL] && (after[(unsigned int)SD_SH_FINAL])) { return (char) SD_SH_MEDIAL; } if (after[(unsigned int)SD_SH_FINAL] && now[(unsigned int)SD_SH_INITIAL]) { return (char) SD_SH_INITIAL; } if (before[(unsigned int)SD_SH_INITIAL] && now[(unsigned int)SD_SH_FINAL]) { return (char) SD_SH_FINAL; } if (now[(unsigned int)SD_SH_ISOLATED]) { return (char) SD_SH_ISOLATED; } /* fallback */ return (char) SD_SH_NOSHAPE; } SGlyphShared* getGlyphShared (SS_UCS4 c) { return glyphCache.get (SString((char*)&c, sizeof (SS_UCS4))); } ./stoolkit/SBVector.h0000644000175000017500000001467010434025610014550 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SBVector_h #define SBVector_h /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SObject.h" #include "SShared.h" #include "SExcept.h" #include class SBVector : public SObject { public: inline SBVector(void); inline SBVector(unsigned int size); inline virtual ~SBVector (); SBVector (const SBVector& v); SBVector& operator=(const SBVector& v); virtual SObject* clone() const { SBVector* n = new SBVector (*this); CHECK_NEW(n); return n;} /** * insert, replace, replaceAll, remove, clear require that you properly * derefer objects. */ inline void insert (unsigned int index, const char* e, unsigned int len); inline void remove (unsigned int index, unsigned int len); void replace (unsigned int index, const char* e, unsigned int len); void clear (); int replace (const char* e, unsigned int len, const char* with, unsigned int withLen, unsigned int from=0, unsigned int align = 1); int replaceAll (const char* e, unsigned int len, const char* with, unsigned int withLen, unsigned int from=0, unsigned int align = 1); inline char* peek (unsigned int index) const; int find (const char* e, unsigned int len, unsigned int from, unsigned int align=1) const; inline unsigned int size () const; static int debug (int level); inline bool isNull () const; inline bool equals (const SBVector& v) const; inline const char* array() const; protected: inline unsigned int count () const; inline void derefer (); void refer(const SBVector& v); inline void ensure (unsigned int more); private: SShared* buffer; inline void cleanup (); }; /** * This is the base for all object vectors */ class SOVector : public SBVector { public: SOVector (void); SOVector (unsigned int size); SOVector (const SOVector& v); virtual ~SOVector (); virtual SObject* clone() const; SOVector& operator=(const SOVector& v); void replace (unsigned int index, const SObject& v); void insert (unsigned int index, const SObject& v); void remove (unsigned int index); inline void ensure (unsigned int more) { SBVector::ensure (more * sizeof (SObject*)); } unsigned int size () const; void clear (); void refer (const SOVector& v); const SObject* peek (unsigned int index) const; protected: void derefer(); private: void replaceQuetly (unsigned int index, const SObject* r); void cleanup(); }; //PUBLIC/INLINE /** * This is the vector class. I don't prefer using STL. */ SBVector::SBVector(void) { buffer = new SShared(); } /** * This is the vector class. I don't prefer using STL. */ SBVector::SBVector(unsigned int _size) { buffer = new SShared(_size); } //PUBLIC/INLINE /** * Return the size of the char array */ unsigned int SBVector::size() const { return buffer->vectorSize; } //PUBLIC/INLINE bool SBVector::isNull () const { return buffer->arraySize==0; } //PUBLIC/INLINE const char* SBVector::array() const { return buffer->array; } //PUBLIC/INLINE /** * Return the element at index. * @param index is the reference index of len blocks */ char* SBVector::peek (unsigned int index) const { if (index > buffer->vectorSize) return 0; return &buffer->array[index]; } //PROTECTED/INLINE unsigned int SBVector::count() const { return buffer->count; } //PROFILE - made inline, moved on top of source file /** * The array will change. If the buffer is shared copy the buffer. */ void SBVector::derefer() { if (buffer->count==1) return; buffer->count--; buffer = new SShared (*buffer); } //PROFILE - made inline, moved to the top of source file /** * clean up. usually called before delete. * remove the buffer or its reference. */ void SBVector::cleanup () { if (buffer->count==1) { delete buffer; } else { buffer->count--; } } //PUBLIC /** * The destructor */ SBVector::~SBVector() { cleanup(); } /** * Insert char's with len length at index. * @param index is the reference index of len blocks * @param e is the pointer to the char array to be saved * @param len is the length of the block. */ void SBVector::insert (unsigned int index, const char* in, unsigned int len) { derefer (); if (len==0 && buffer->arraySize!=0) return; ensure (len); /* Allocate at leas len bytes*/ #ifdef NO_MEMMOVE register char* _array = buffer->array; for (register unsigned int i=buffer->vectorSize; i>index; i--) { _array[i+len-1] = _array[i-1]; } #else /*NO_MEMMOVE*/ if (indexvectorSize) { memmove (&buffer->array[index+len], &buffer->array[index], buffer->vectorSize-index); } #endif /*NO_MEMMOVE*/ memcpy (&buffer->array[index], in, len); buffer->vectorSize += len; } /** * Remove char's with len length at index * @param index is the reference index of len blocks * @param len is the length of the block. */ void SBVector::remove (unsigned int index, unsigned int len) { derefer (); if (len ==0) return; // Move the elements down. #ifdef NO_MEMMOVE register char* _array = buffer->array; for (register unsigned int i=index+len; ivectorSize; i++) { _array[i-len] = _array[i]; } #else memmove (&buffer->array[index], &buffer->array[index+len], buffer->vectorSize-index-len); #endif buffer->vectorSize -= len; } /** * Ensure that we have enough capacity. * Before this, the reference count should be one! * int more - the elements in bytes that we need. */ void SBVector::ensure(unsigned int more) { buffer->ensure (more); } bool SBVector::equals (const SBVector& e) const { //if (e.array() == array()) return true; unsigned int cmplen = e.size(); if (size() != cmplen) return false; return (memcmp (array(), e.array(), cmplen) == 0); } #endif /* SBVector_h */ ./stoolkit/SGlyphShared.h0000644000175000017500000000324610434025610015413 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SGlyphShared_h #define SGlyphShared_h #include "stoolkit/STypes.h" class SGlyphShared { public: char cluster; char composing; char type; char bidi; bool lineend; bool tab; bool shaped; SS_UCS4 precomposed; SS_UCS4 mirror; /* * This is ucs4v: * * For cluster == 0, precomposed is precomposed character if any. * shape[4],decomposition,extra-composed * ^ ^ * | +-- composing, or 0 * | * +------ if shaped it has 4 chars here. It can be private char. * * For cluster == n, precomposed is cluster private charID if any * unicode-cluster,memory-cluster,extra-composed * ^ ^ * | +-------composing or 0 * | * +---cluster-offset */ SV_UCS4 ucs4v; }; #endif /* SGlyphShared_h */ ./stoolkit/SBHashtable.cpp0000644000175000017500000003645011326751124015543 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SBHashtable.h" #include "SObject.h" #include "SExcept.h" #include #include #include #define MAX_DATA_BYTES 8 #define HASH_INITIAL_SIZE 7 #define PSIZE (sizeof(char*)) #define RESIZE_AT 70 // Percent #define PRIME_GROW_PERC 70 // Percent. static unsigned int largerPrime (unsigned int in); static unsigned int sqrimax (unsigned int sq); static char* getNullVector(); int SBHashtable::debugLevel = 0; class SBucketItem : public SObject { public: SBucketItem (const SString& key, const char* value, int len); SBucketItem (const SBucketItem& i); virtual ~SBucketItem() {} virtual SObject* clone () const { SBucketItem* n = new SBucketItem(*this); CHECK_NEW(n); return n; } // Hope for the best - this should be aligned... union { double d; void* v; char c[MAX_DATA_BYTES]; } value; SString key; unsigned int hash; }; #define SBucketVector SBucketItem** static SBucketVector _subBucketAppend (SBucketVector bv, SBucketItem* bi); static unsigned int _subBucketVectorSize (SBucketVector bv); #define GET_BUCKET(_arr, _mod) *((SBucketItem***)&_arr[_mod*PSIZE]) //typedef SVector SBucketVector; /** * Create a signle bucketitem * @param k is the key * @param v is the value * @param len is the size. max is 8 */ SBucketItem::SBucketItem (const SBucketItem& item) : SObject(), key (item.key) { hash =item.hash; memcpy (&value, &item.value, MAX_DATA_BYTES); } /** * Create a signle bucketitem * @param k is the key * @param v is the value * @param len is the size. max is 8 */ SBucketItem::SBucketItem (const SString& k, const char* v, int len) : SObject(), key(k) { if (len > MAX_DATA_BYTES) { fprintf (stderr, "Internal error: SBucketItem:: bad data length\n"); // Dump here. } hash = key.hashCode (); memcpy (&value, v, len); } /** * Set the debug level * @param level 0 means no debug printouts. * @return the previous level */ int SBHashtable::debug (int level) { int old = debugLevel; debugLevel = level; return old; } SObject* SBHashtable::clone() const { SBHashtable * n = new SBHashtable (*this); CHECK_NEW(n); return n; } /** * This is the vector class. I don't prefer using STL. */ SBHashtable::SBHashtable(void) { buffer = new SHShared(HASH_INITIAL_SIZE * PSIZE); CHECK_NEW(buffer); memset (buffer->array, 0, HASH_INITIAL_SIZE * PSIZE); } /** * Create a vector from a const vector. This is * used when you do * SBHashtable v = old; * @param v is the old */ SBHashtable::SBHashtable (const SBHashtable& v) { // Assign the common buffer and increment the reference count buffer = (SHShared*) v.buffer; buffer->count++; } /** * Assign a vector from a const vector. This is * used when you do * SBHashtable v; * v = old; * @param v is the old */ SBHashtable& SBHashtable::operator=(const SBHashtable& v) { refer (v); return *this; } /** * Assign a vector from a const vector by changing the reference. * @param v is the input vector */ void SBHashtable::refer(const SBHashtable& v) { if (&v==this) return; cleanup (); buffer = (SHShared*) v.buffer; buffer->count++; return ; } /** * The destructor */ SBHashtable::~SBHashtable() { cleanup(); } /** * Return the bucket array size. */ unsigned int SBHashtable::size( ) const { return buffer->arraySize/PSIZE; } /** * Return the bucket array size. * param sub is the subbucket index. */ unsigned int SBHashtable::size(int sub) const { SBucketVector bv = GET_BUCKET (buffer->array, sub); if (bv == 0) return 0; return _subBucketVectorSize (bv); } /** * Remake the hash */ void SBHashtable::rehash() { if (buffer->count != 1) { fprintf (stderr, "Internal error: SBuffer::rehash\n"); exit (1); } SHShared *sb = buffer; unsigned int bigger = largerPrime(buffer->arraySize/PSIZE); if (debugLevel > 1) { fprintf (stderr, "SBHashtable::rehash from %u to %u\n", (unsigned int)(buffer->arraySize/PSIZE), bigger); } buffer = new SHShared (bigger * PSIZE); CHECK_NEW(buffer); memset (buffer->array, 0, bigger * PSIZE); SBucketVector bo; SBucketVector bn; for (unsigned int i=0; iarraySize/PSIZE; i++) { bo = GET_BUCKET (sb->array, i); if (bo == 0) continue; // Move the items over... for (unsigned j=0; bo[j] != 0; j++) { SBucketItem* bi =bo[j]; unsigned int mod = bi->hash % (buffer->arraySize/PSIZE); bn = GET_BUCKET (buffer->array, mod); GET_BUCKET(buffer->array, mod) = _subBucketAppend (bn, bi); buffer->vectorSize++; } delete bo; } delete sb; } /** * Replace char's with len length at index * @param index is the reference index of len blocks * @param e is the pointer to the char array to be saved * @param len is the length of the block. */ void SBHashtable::put (const SString& index, const char* e, int len, bool replace) { // Resize buckets if (buffer->vectorSize*PSIZE >= (buffer->arraySize * RESIZE_AT)/100) { rehash (); } unsigned int mod = index.hashCode() % (buffer->arraySize/PSIZE); SBucketItem* sbi = new SBucketItem (index, e, len); CHECK_NEW(sbi); SBucketVector bv = GET_BUCKET (buffer->array, mod); if (bv==0) { //fprintf (stderr, "NEW BV %u\n", mod); bv = new SBucketItem*[2]; CHECK_NEW(bv); bv[0] = sbi; bv[1] = 0; GET_BUCKET (buffer->array, mod)=bv; buffer->vectorSize++; return; } //fprintf (stderr, "OLD BV %u\n", mod); // Find the old one and delete it. if (replace) { for (unsigned int i=0; bv[i]!= 0; i++) { SBucketItem* bi = bv[i]; if (bi->key == index) { delete bi; bv[i] = sbi; return; } } } bv = _subBucketAppend (bv, sbi); GET_BUCKET(buffer->array, mod) = bv; buffer->vectorSize++; //fprintf (stderr, "NOREPLACE AFTER %u (%u)\n", _subBucketVectorSize (bv), mod); //fprintf (stderr, "NOREPLACE AFTER %u\n", _subBucketVectorSize (bv)); //fprintf (stderr, "NOREPLACE AFTER %u\n", // _subBucketVectorSize (GET_BUCKET(buffer->array, mod))); } /** * Remove char's with len length at index * @param index is the reference index of len blocks * @param len is the length of the block. */ void SBHashtable::remove (const SString& index) { derefer (); unsigned int mod = index.hashCode() % (buffer->arraySize/PSIZE); SBucketVector bv = GET_BUCKET (buffer->array, mod); if (bv == 0) return; SBucketItem* bi; for (unsigned int i=0; bv[i] != 0; i++) { bi = bv[i]; if (bi->key == index) { buffer->vectorSize--; delete bi; unsigned int j; for (j=i; bv[j]!=0; j++) { bv[j] = bv[j+1]; } if (j==1) { delete [] bv; bv = NULL; GET_BUCKET (buffer->array, mod) = 0; break; } break; } } } /** * Clear the array and make a new SHShared. */ void SBHashtable::clear () { cleanup (); buffer = new SHShared(HASH_INITIAL_SIZE * PSIZE); CHECK_NEW(buffer); memset (buffer->array, 0, HASH_INITIAL_SIZE * PSIZE); } /** * clean up. usually called before delete. * remove the buffer or its reference. This is private! */ void SBHashtable::cleanup () { if (!buffer) return; // already clean. if (buffer->count==1) { SBucketVector bv; for (unsigned int i=0; iarraySize/PSIZE; i++) { bv = GET_BUCKET (buffer->array, i); if (bv) { SBucketItem* bi; for (unsigned int j=0; bv[j] != 0; j++) { bi = bv[j]; delete bi; } delete [] bv; bv = NULL; } } delete buffer; } else { buffer->count--; } buffer = 0; } /** * Return the element at index. * @param index is the reference index of len blocks */ const char* SBHashtable::get (const SString& index) const { unsigned int mod = index.hashCode() % (buffer->arraySize/PSIZE); SBucketVector bv = GET_BUCKET (buffer->array, mod); if (bv == 0) return getNullVector(); SBucketItem* bi; for (unsigned int i=0; bv[i] != 0; i++) { bi = bv[i]; if (bi->key == index) { return ((char*) &bi->value); } } return getNullVector(); } /** * Return the element at index. * @param index is the reference index of len blocks */ const char* SBHashtable::get (unsigned int bucket, unsigned int subbucket) const { SBucketVector bv = GET_BUCKET (buffer->array, bucket); if (bv == 0) return getNullVector(); for (unsigned int i=0; bv[i] != 0; i++) { if (i==subbucket) { SBucketItem* bi = bv[i]; return ((const char*) &bi->value); } } return getNullVector(); } /** * This could be used if you don't want to disturb the rehash. */ void SBHashtable::put (unsigned int bucket, unsigned int subbucket, const char* e, int len) { derefer (); SBucketVector bv = GET_BUCKET (buffer->array, bucket); if (bv == 0) return; SBucketItem* bi = bv[subbucket]; memcpy (&bi->value, e, len); } /** * Return the element at index. * @param index is the reference index of len blocks */ const SString& SBHashtable::key (unsigned int bucket, unsigned int subbucket) const { SBucketVector bv = GET_BUCKET (buffer->array, bucket); if (bv == 0) return SStringNull; SBucketItem* bi = bv[subbucket]; return (bi->key); } /** * Get the list of keys * @param keys is the string list of output */ void SBHashtable::keys(SStringVector* keys) const { keys->clear(); for (unsigned int i=0; iappend(key(i,j)); } } } /** * The array will change. If the buffer is shared copy the buffer. */ void SBHashtable::derefer() { if (buffer->count==1) return; buffer->count--; SHShared* oldBuffer = buffer; // This copies the array.. buffer = new SHShared (*oldBuffer); CHECK_NEW(buffer); for (unsigned int i=0; iarraySize/PSIZE; i++) { SBucketVector bv = GET_BUCKET (oldBuffer->array, i); if (bv ==0) { GET_BUCKET (buffer->array, i) = 0; continue; } // This will not work this way. The deferer routine // that comes after this can not recreate objects - // It can not put two things in the same array! // Note that we don't count references of contained object. // Copying read-only hash is ok, but read write can be expensive. // GET_BUCKET (buffer->array, i) = new SBucketVector(*bv); // Copy the whole array comment this // Uncomment of the above one does not work. unsigned int ssize = _subBucketVectorSize (bv); SBucketVector nv = new SBucketItem* [ssize+1]; CHECK_NEW (nv); for (unsigned int j=0; jarray, i) = nv; } } /** * These are needed for a real fast hash */ static unsigned int _subBucketVectorSize (SBucketVector bv) { if (bv == 0) return 0; unsigned int i; for (i=0; bv[i]!=0; i++) {} return i; } /** * These are needed for a real fast hash */ static SBucketVector _subBucketAppend (SBucketVector bv, SBucketItem* bi) { unsigned int count = _subBucketVectorSize (bv); SBucketVector nv = new SBucketItem*[count +2]; CHECK_NEW (nv); if (count != 0) { memcpy (nv, bv, count * sizeof (SBucketItem*)); } if (bv != 0) { delete [] bv; bv = NULL; } nv[count] = bi; nv[count+1] = 0; return nv; } /** * Give me a lerger prime than number. */ static unsigned int largerPrime (unsigned int base) { /* It is enough to check if it is dividable by the square root of the fn. */ unsigned int sqrb = sqrimax (base + (base*PRIME_GROW_PERC)/100); unsigned int sqro = sqrimax (base) + 1; if (sqro >= sqrb) sqrb = sqro+1; unsigned int result = (sqrb * sqrb) -1; unsigned int i; while (true) { for (i=2; icount==1) return; SBHashtable::derefer(); const SObject* r; SString k; for (unsigned int i=0; iclone(); SBHashtable::put (i, j, (char*) &newr, sizeof (newr)); } } } void SOHashtable::cleanup() { if (buffer->count!=1) { return; } SObject* r; for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STextIndex_h #define STextIndex_h #include class STextIndex : public SObject { public: STextIndex (void); STextIndex (int x, int y); STextIndex (const STextIndex& d); STextIndex operator = (const STextIndex& d); STextIndex operator - (const STextIndex& d); bool operator == (const STextIndex& d) const; bool operator != (const STextIndex& d) const; bool operator > (const STextIndex& d) const; bool operator < (const STextIndex& d) const; bool operator >= (const STextIndex& d) const; bool operator <= (const STextIndex& d) const; virtual ~STextIndex (); virtual SObject* clone() const; unsigned int line; unsigned int index; }; #endif /* STextIndex_h */ ./stoolkit/SRendClass.h0000644000175000017500000000506510434311614015062 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SRendClass_h #define SRendClass_h #include /*! * \file SRendClass.h * \brief Character Rendering Properties * \author: Gaspar Sinai * \version: 2000-04-23 */ class SRendClass { public: /*! * \enum SType * \brief A list of character properties that are useful * when rendering text. * There are inherent properties, and derived properties. * Inherent properties can be determined from the unicode * codepoint. Derived properties are derived, for instance * the surrounding character. * * Joining class, for instance, is an inherent property * and isolated form is a derived property. For simplicity * we just mixed the whole set into one SType as there can * be a lot of overlaps. */ enum RType { None=0, //!< Placeholder //----------------------------------------------------------------------- // Indic - Inherent //----------------------------------------------------------------------- Cbase, Cbelow, Cpost, Cdead, // This will be rewritten as Cbase or Cpre Mpre, Mabove, Mpost, Mbelow, Vsplit, VMbelow, VMabove, VMpost, LMpost, SMabove, SMbelow, VO, Nukta, Halant, ZWJ, ZWNJ, //----------------------------------------------------------------------- // Indic - Derived //----------------------------------------------------------------------- Cpre=100, Cra, Creph, CMra, CMreph, Chbase, Cfirst, Clast, JamoL, JamoV, JamoT, Any }; static RType get (SS_UCS4 u); static bool split (SS_UCS4 u, SS_UCS4* left, SS_UCS4* right); static const char* string (RType); }; #endif /*SRendClass_h*/ ./stoolkit/SAutogen.cpp0000644000175000017500000001416510434025610015140 0ustar henrichhenrich/** * Autogenerated by ./autogen.pl. * UNIT=65535 */ /** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include /** * Rotated unit vector around the clock, from 12:00 clockwise. * The coordinate system follows the screen coordinates. * SLICES=24 * @return a full set of vectors, to make a closed curve. */ SLineCurve getCurveCircle24 (void) { SLineCurve lc; lc.append (SLocation (0,-65535)); // 0/24 lc.append (SLocation (16961,-63301)); // 1/24 lc.append (SLocation (32767,-56754)); // 2/24 lc.append (SLocation (46340,-46340)); // 3/24 lc.append (SLocation (56754,-32767)); // 4/24 lc.append (SLocation (63301,-16961)); // 5/24 lc.append (SLocation (65535,0)); // 6/24 lc.append (SLocation (63301,16961)); // 7/24 lc.append (SLocation (56754,32767)); // 8/24 lc.append (SLocation (46340,46340)); // 9/24 lc.append (SLocation (32767,56754)); // 10/24 lc.append (SLocation (16961,63301)); // 11/24 lc.append (SLocation (0,65535)); // 12/24 lc.append (SLocation (-16961,63301)); // 13/24 lc.append (SLocation (-32767,56754)); // 14/24 lc.append (SLocation (-46340,46340)); // 15/24 lc.append (SLocation (-56754,32767)); // 16/24 lc.append (SLocation (-63301,16961)); // 17/24 lc.append (SLocation (-65535,0)); // 18/24 lc.append (SLocation (-63301,-16961)); // 19/24 lc.append (SLocation (-56754,-32767)); // 20/24 lc.append (SLocation (-46340,-46340)); // 21/24 lc.append (SLocation (-32767,-56754)); // 22/24 lc.append (SLocation (-16961,-63301)); // 23/24 lc.append (SLocation (0,-65535)); // 24/24 return SLineCurve(lc); } /** * Rotated unit vector around the clock, from 12:00 clockwise. * The coordinate system follows the screen coordinates. * SLICES=32 * @return a full set of vectors, to make a closed curve. */ SLineCurve getCurveCircle32 (void) { SLineCurve lc; lc.append (SLocation (0,-65535)); // 0/32 lc.append (SLocation (12785,-64275)); // 1/32 lc.append (SLocation (25079,-60546)); // 2/32 lc.append (SLocation (36409,-54490)); // 3/32 lc.append (SLocation (46340,-46340)); // 4/32 lc.append (SLocation (54490,-36409)); // 5/32 lc.append (SLocation (60546,-25079)); // 6/32 lc.append (SLocation (64275,-12785)); // 7/32 lc.append (SLocation (65535,0)); // 8/32 lc.append (SLocation (64275,12785)); // 9/32 lc.append (SLocation (60546,25079)); // 10/32 lc.append (SLocation (54490,36409)); // 11/32 lc.append (SLocation (46340,46340)); // 12/32 lc.append (SLocation (36409,54490)); // 13/32 lc.append (SLocation (25079,60546)); // 14/32 lc.append (SLocation (12785,64275)); // 15/32 lc.append (SLocation (0,65535)); // 16/32 lc.append (SLocation (-12785,64275)); // 17/32 lc.append (SLocation (-25079,60546)); // 18/32 lc.append (SLocation (-36409,54490)); // 19/32 lc.append (SLocation (-46340,46340)); // 20/32 lc.append (SLocation (-54490,36409)); // 21/32 lc.append (SLocation (-60546,25079)); // 22/32 lc.append (SLocation (-64275,12785)); // 23/32 lc.append (SLocation (-65535,0)); // 24/32 lc.append (SLocation (-64275,-12785)); // 25/32 lc.append (SLocation (-60546,-25079)); // 26/32 lc.append (SLocation (-54490,-36409)); // 27/32 lc.append (SLocation (-46340,-46340)); // 28/32 lc.append (SLocation (-36409,-54490)); // 29/32 lc.append (SLocation (-25079,-60546)); // 30/32 lc.append (SLocation (-12785,-64275)); // 31/32 lc.append (SLocation (0,-65535)); // 32/32 return SLineCurve(lc); } /** * Rotated unit vector around the clock, from 12:00 clockwise. * The coordinate system follows the screen coordinates. * SLICES=36 * @return a full set of vectors, to make a closed curve. */ SLineCurve getCurveCircle36 (void) { SLineCurve lc; lc.append (SLocation (0,-65535)); // 0/36 lc.append (SLocation (11380,-64539)); // 1/36 lc.append (SLocation (22414,-61582)); // 2/36 lc.append (SLocation (32767,-56754)); // 3/36 lc.append (SLocation (42125,-50202)); // 4/36 lc.append (SLocation (50202,-42125)); // 5/36 lc.append (SLocation (56754,-32767)); // 6/36 lc.append (SLocation (61582,-22414)); // 7/36 lc.append (SLocation (64539,-11380)); // 8/36 lc.append (SLocation (65535,0)); // 9/36 lc.append (SLocation (64539,11380)); // 10/36 lc.append (SLocation (61582,22414)); // 11/36 lc.append (SLocation (56754,32767)); // 12/36 lc.append (SLocation (50202,42125)); // 13/36 lc.append (SLocation (42125,50202)); // 14/36 lc.append (SLocation (32767,56754)); // 15/36 lc.append (SLocation (22414,61582)); // 16/36 lc.append (SLocation (11380,64539)); // 17/36 lc.append (SLocation (0,65535)); // 18/36 lc.append (SLocation (-11380,64539)); // 19/36 lc.append (SLocation (-22414,61582)); // 20/36 lc.append (SLocation (-32767,56754)); // 21/36 lc.append (SLocation (-42125,50202)); // 22/36 lc.append (SLocation (-50202,42125)); // 23/36 lc.append (SLocation (-56754,32767)); // 24/36 lc.append (SLocation (-61582,22414)); // 25/36 lc.append (SLocation (-64539,11380)); // 26/36 lc.append (SLocation (-65535,0)); // 27/36 lc.append (SLocation (-64539,-11380)); // 28/36 lc.append (SLocation (-61582,-22414)); // 29/36 lc.append (SLocation (-56754,-32767)); // 30/36 lc.append (SLocation (-50202,-42125)); // 31/36 lc.append (SLocation (-42125,-50202)); // 32/36 lc.append (SLocation (-32767,-56754)); // 33/36 lc.append (SLocation (-22414,-61582)); // 34/36 lc.append (SLocation (-11380,-64539)); // 35/36 lc.append (SLocation (0,-65535)); // 36/36 return SLineCurve(lc); } ./stoolkit/STypes.h0000644000175000017500000000502411331207275014307 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STypes_h #define STypes_h #define SD_YUDIT_VERSION "2.9.2" // Get the SS_WORD16_t and u_int_32 #include #include "stoolkit/SBinVector.h" #include "stoolkit/SStringVector.h" #ifdef HAVE_UTYPES typedef u_int8_t SS_WORD8; typedef u_int16_t SS_WORD16; typedef u_int32_t SS_WORD32; #ifdef HAVE_LONG_LONG typedef u_int64_t SS_WORD64; #else /* HAVE_LONG_LONG */ typedef u_int32_t SS_WORD64; #endif /* HAVE_LONG_LONG */ #else /* HAVE_UTYPES */ typedef unsigned char SS_WORD8; typedef unsigned short SS_WORD16; typedef unsigned int SS_WORD32; #ifdef HAVE_LONG_LONG typedef unsigned long long SS_WORD64; #else /* HAVE_LONG_LONG */ typedef unsigned long SS_WORD64; #endif /* HAVE_LONG_LONG */ #endif /* HAVE_UTYPES */ typedef SS_WORD16 SS_UCS2; typedef SS_WORD32 SS_UCS4; typedef SBinVector SV_UCS2; typedef SBinVector SV_UCS4; /* processors calcualte with intergers fast */ typedef unsigned int SS_UINT; typedef int SS_INT; typedef SBinVector SV_UINT; typedef SBinVector SV_INT; /* * SStringVector column0 = SStringTable[0]; */ typedef SVector SStringTable; typedef int SAlignment; typedef SS_WORD16 SS_GlyphIndex; typedef SBinVector SV_GlyphIndex; typedef SBinVector SSyntaxRow; typedef SBinVector SSyntaxData; typedef SBinVector SUnicodeData; #define SD_Left ((SAlignment)-1) #define SD_Right ((SAlignment)1) #define SD_Center ((SAlignment)0) /* char can be only positive on some platforms */ #define SD_NOSHAPE ((char)0x7f) /* This many lines are pre-expanded around cursor, for efficiencey */ #define SD_PRE_EXPAND 50 #define DEBUG_PARSER 0 #define SD_MATCH_EOD 0x7ffffff // to provide timer based solution #define SD_MATCH_AGAIN 0x7fffffe #endif /* STypes_h */ ./stoolkit/SIOStream.h0000644000175000017500000000407010434025610014660 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SIOStream_h #define SIOStream_h #include "SEvent.h" #include "SIO.h" #include "SStringVector.h" #include "SString.h" class SReader : public SJob, public SEventTarget { public: // If target is zero this will be a blocking function. SReader (const SInputStream& i, SEventTarget* t=0); SReader (const SInputStream& i, const SStringVector& sep, SEventTarget* t=0); ~SReader (); // These are for public use bool read (SString* s); virtual int run (); virtual bool read (const SEventSource* s, const SString& m); virtual void error (const SEventSource* s); bool isOK(); bool close(); protected: bool finishFlag; bool errFlag; bool more; SString buffer; SStringVector line; SStringVector sepVector; SEventTarget* trg; SInputStream in; }; class SWriter : public SJob, public SEventTarget { public: SWriter (const SOutputStream& i, SEventTarget* t=0); ~SWriter (); // This is for public use bool write (const SString& s); bool isErrror() { return errFlag; } bool isFinished() { return writeCount==0; } virtual int run (); virtual bool write (const SEventSource* s); virtual void error (const SEventSource* s); bool isOK(); bool close(); protected: int writeCount; bool finishFlag; bool errFlag; SOutputStream out; SEventTarget* trg; }; #endif /* SIOStream_h */ ./stoolkit/SEventBSD.h0000644000175000017500000000631010434025610014606 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SEventBSD_h #define SEventBSD_h #include "SEvent.h" #include "SBinVector.h" #include "SBinHashtable.h" #include "SHashtable.h" #include "SUniqueID.h" /** * Tieouts are searched sequenctially when removing source or target */ class SClient { public: enum ClientType {READER, WRITER, SERVER, JOB, TIMER}; SClient (SEventSource* s, SEventTarget* t, ClientType type); ~SClient(); ClientType getType(); SEventSource* source; SEventTarget* target; SString data; unsigned int progress; long value; SUniqueID id; private: ClientType type; }; typedef SBinHashtable SClientHashtable; typedef SBinVector SClientVector; typedef SBinVector STimeoutVector; typedef SBinVector SFDVector; /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is a default unix event handler implementation. */ class SEventBSD : public SEventHandlerImpl { public: SEventBSD(void); virtual ~SEventBSD(); /* One source can have only one target! Same target * can be used for more source */ virtual void addJob (SJob* s, SEventTarget* t); virtual void addServer (SServerStream* s, SEventTarget* t); virtual void addTimer (STimer* s, SEventTarget* t); virtual void addInput (SInputStream* s, SEventTarget* t); virtual void addOutput (SOutputStream* s, SEventTarget* t, const SString& m); virtual void remove (SEventTarget* t); virtual void remove (SEventSource* s); // Send async write back to SEventSource virtual void start(); virtual void exit(); virtual bool next(); private: virtual void addTimer (SEventSource* s, SEventTarget* t); void remove (SClient* s); bool sendData (SClient* c, char* buffer, int len); // This will move the timeouts. You may need it if the app // is up for more than a year. void seedTimer(); STimeoutVector timeoutVector; SFDVector readVector; SFDVector writeVector; SFDVector jobVector; SClientVector timeoutClient; SClientVector readClient; SClientVector writeClient; SClientVector jobClient; /* using pointer */ SClientHashtable sourceHashtable; SClientHashtable targetHashtable; /* using id */ SClientHashtable clientHashtable; void remakeReadFd (); void remakeWriteFd (); void* delegate; int readMax; int writeMax; bool up; unsigned int roundRobin; }; #endif /* SEventBSD_h */ ./stoolkit/SExcept.cpp0000644000175000017500000000274610434025610014770 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SExcept.h" #include SExcept::SExcept (const char* mes) { if (mes != 0 && message != mes) { message = new char[strlen(mes) + 1]; if (message) strcpy (message, mes); } } SExcept::SExcept (const SExcept& e) { if (e.message != 0 && &e != this) { message = new char[strlen(e.message) + 1]; if (message) strcpy (message, e.message); } } SExcept::~SExcept () { if (message) delete message; } SExcept& SExcept::operator= (const SExcept& e) { if (e.message != 0 && &e != this) { message = new char[strlen(e.message) + 1]; if (message) strcpy (message, e.message); } return *this; } const char* SExcept::toString() const { if (message) return message; return "Out Of Memory"; } ./stoolkit/SBHashtable.h0000644000175000017500000000532711326742440015210 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SBHashtable_h #define SBHashtable_h /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SObject.h" #include "SHShared.h" #include "SString.h" #include "SStringVector.h" /** * This is almost the same as vector, bu index is not integer but string. */ class SBHashtable : public SObject { public: SBHashtable(void); virtual ~SBHashtable (); SBHashtable (const SBHashtable& v); SBHashtable& operator=(const SBHashtable& v); virtual SObject* clone() const; /* This is in the library */ void put (const SString& key, const char* e, int len, bool replace=true); void remove (const SString& key); void clear (); const char* get (const SString& key) const; unsigned int size () const; unsigned int size (int bucket) const; static int debug (int level); void keys (SStringVector* list) const; protected: const char* get (unsigned int bucket, unsigned int subbucket) const; void put (unsigned int bucket, unsigned int subbucket, const char* e, int len); const SString& key (unsigned int bucket, unsigned int subbucket) const; void rehash (); void refer(const SBHashtable& v); void derefer (); void ensure (unsigned int more); SHShared* buffer; void cleanup (); private: static int debugLevel; }; /** * This is an Object hash. */ class SOHashtable : public SBHashtable { public: SOHashtable (void); SOHashtable (const SOHashtable& base); virtual SObject* clone() const; SOHashtable& operator=(const SOHashtable& v); virtual ~SOHashtable (); const SObject* get (const SString key) const; const SObject* get (unsigned int row, unsigned int col) const; void put (const SString& key, const SObject& e, bool replace=true); void put (unsigned int bucket, unsigned int subbucket, SObject& e); void remove (const SString& key); void clear (); protected: void refer (const SOHashtable& v); void derefer(); private: void cleanup(); }; #endif /* SBHashtable_h */ ./stoolkit/SLocation.cpp0000644000175000017500000001335310434025610015304 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SLocation.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUtil.h" /** * Create a dimension object * @param x is the x of the object * @param y is the y of the object */ SLocation::SLocation (int x0, int y0) { this->x = x0; this->y = y0; } /** * Create a dimension object * width default location is 0,0 */ SLocation::SLocation () { x = 0; y = 0; } /** * Copy a dimension object * @param d is the dimension */ SLocation::SLocation (const SLocation& d) { this->x = d.x; this->y = d.y; } /** * Create a location object from another one. * @param d is the dimension */ SLocation::SLocation (const SDimension& d) { this->x = d.width; this->y = d.height; } /** * Copy a dimension object * @param d is the dimension */ SLocation SLocation::operator = (const SLocation& d) { this->x = d.x; this->y = d.y; return *this; } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SLocation::operator == (const SLocation& d) const { return (d.x == x && d.y == y); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SLocation::operator != (const SLocation& d) const { return (d.x != x || d.y != y); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SLocation::operator < (const SLocation& d) const { if (y < d.y ) return true; if (y > d.y ) return false; return (x < d.x ); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SLocation::operator > (const SLocation& d) const { if (y > d.y ) return true; if (y < d.y ) return false; return (x > d.x ); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SLocation::operator <= (const SLocation& d) const { if (y < d.y ) return true; if (y > d.y ) return false; return (x <= d.x ); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool SLocation::operator >= (const SLocation& d) const { if (y > d.y ) return true; if (y < d.y ) return false; return (x >= d.x ); } SLocation SLocation::operator - (const SLocation& d) const { return SLocation (x - d.x, y - d.y); } SLocation SLocation::operator + (const SLocation& d) const { return SLocation (x + d.x, y + d.y); } SLocation SLocation::operator + (const SDimension& d) const { return SLocation (x + (int)d.width, y + (int)d.height); } SLocation SLocation::operator * (const SDimension& d) const { return SLocation (x * (int)d.width, y * (int)d.height); } /** * Destructor - nothing to desctruct now.. */ SLocation::~SLocation () { } SObject* SLocation::clone() const { SLocation* l = new SLocation (x, y); CHECK_NEW (l); return l; } SLocation SLocation::operator / (const SDimension& d) const { return SLocation ((d.width>0) ? x / d.width : x, (d.height>0) ? y / d.height : y); } /** * The returned location can not be larger than d. */ SLocation SLocation::maximize (const SLocation & d) const { return SLocation ( (x > d.x) ? d.x : x, (y > d.y) ? d.y : y ); } /** * Assume SLocation is a vector, create the scalar product with l * @param l is the other vector. */ int SLocation::scalarProduct (const SLocation &l) const { return x * l.x + y * l.y; } /** * Assume SLocation is a vector, create the vectorial product with l * @param l is the other vector. */ int SLocation::vectorProduct (const SLocation &l) const { return (x * l.y) - (y * l.x); } /** * The returned location can not be smaller than d. */ SLocation SLocation::minimize (const SLocation & d) const { return SLocation ( (x < d.x) ? d.x : x, (y < d.y) ? d.y : y ); } /** * The returned location can not be larger than d. */ SLocation SLocation::maximize (const SDimension & d) const { return SLocation ( (x > (int)d.width) ? (int)d.width : x, (y > (int)d.height) ? (int)d.height : y ); } /** * The returned location can not be smaller than d. */ SLocation SLocation::minimize (const SDimension & d) const { return SLocation ( (x < (int)d.width) ? (int)d.width : x, (y < (int)d.height) ? (int)d.height : y ); } SLocation SLocation::minmerge (const SLocation & l) const { SLocation ret = *this; if (l.x < ret.x) ret.x = l.x; if (l.y < ret.y) ret.y = l.y; return SLocation (ret); } SLocation SLocation::maxmerge (const SLocation & l) const { SLocation ret = *this; if (l.x > ret.x) ret.x = l.x; if (l.y > ret.y) ret.y = l.y; return SLocation (ret); } /** * return the distance from origo squared */ unsigned long SLocation::distance2 () const { return (long)x*(long)x + (long)y*(long)y; } /** * return the distance from origo */ unsigned int SLocation::distance () const { return (unsigned int) ss_sqrtlong (distance2()); } /** * return the angle from origo * in a 0..31 scale 32 is an undeterminable case. */ int SLocation::angle32 () const { return ss_atan32 (x, y); } ./stoolkit/SBVector.cpp0000644000175000017500000001341710434025610015101 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SBVector.h" #include #include #include /** * Set the debug level * @param level 0 means no debug printouts. * @return the previous level */ int SBVector::debug (int level) { return SShared::debug(level); } /** * Create a vector from a const vector. This is * used when you do * SBVector v = old; * @param v is the old */ SBVector::SBVector (const SBVector& v) { // Assign the common buffer and increment the reference count buffer = (SShared*) v.buffer; buffer->count++; } /** * Assign a vector from a const vector. This is * used when you do * SBVector v; * v = old; * @param v is the old */ SBVector& SBVector::operator=(const SBVector& v) { refer (v); return *this; } /** * Assign a vector from a const vector by changing the reference. * @param v is the input vector */ void SBVector::refer(const SBVector& v) { // Are we the same objects if (&v==this) return; cleanup (); buffer = (SShared*) v.buffer; buffer->count++; return; } /** * Replace char's with len length at index * @param index is the reference index of len blocks * @param e is the pointer to the char array to be saved * @param len is the length of the block. */ void SBVector::replace (unsigned int index, const char* in, unsigned int len) { derefer (); const char* e = in; SShared* ns =0; if (len==0) return; if (len > 0 && buffer->array < in && &buffer->array[buffer->arraySize] > in) { fprintf (stderr, "SBVector::replace copying into itself.\n"); ns = new SShared (in, len); e = ns->array; } memcpy (&buffer->array[index], e, len); if (ns) delete ns; } /** * replace one occurance of buffer with another. */ int SBVector::replace (const char* e, unsigned int len, const char* with, unsigned int withLen, unsigned int from, unsigned int align) { derefer (); int i = find (e, len, from, align); if (i<0) return i; // Max element size remove (i, len); insert (i, with, withLen); return i+withLen; } /** * replace one occurance of buffer with another. */ int SBVector::replaceAll (const char* e, unsigned int len, const char* with, unsigned int withLen, unsigned int from, unsigned int align) { derefer (); int count = 0; int begin =from; while (begin>=0) { begin=replace (e, len, with, withLen, begin, align); if (begin > 0) count++; } return count; } /** * Clear the array and make a new SShared. */ void SBVector::clear () { derefer (); cleanup (); buffer = new SShared(); } /** * Find a subvector. */ int SBVector::find (const char* e, unsigned int len, unsigned int from, unsigned int align) const { //fprintf (stderr, "Address=%lx\n", (unsigned long) (e)); unsigned int sz = size(); register char* _array = buffer->array; register unsigned j; for (register unsigned int i=from; i+len <= sz; i+=(unsigned int)align) { for (j=0; jarray[i+j], j, (int) e[j]); if (_array[i+j] != e[j]) break; } if (j>=len) return (int) i; } return -1024; } /** * This is a replay of the obove for SObject collections */ SOVector::SOVector(void) : SBVector() { } /** * This is a replay of the obove for SObject collections */ SOVector::SOVector(unsigned int _size) : SBVector(_size * sizeof (SObject*)) { } SOVector::SOVector(const SOVector& v) : SBVector(v) { } SOVector::~SOVector () { cleanup(); } SOVector& SOVector::operator=(const SOVector& v) { refer (v); return *this; } SObject* SOVector::clone() const { return new SOVector (*this); } void SOVector::replace (unsigned int index, const SObject& v) { derefer(); SObject* r = (SObject*) peek (index); replaceQuetly (index, &v); delete r; } void SOVector::insert (unsigned int index, const SObject& v) { derefer(); SObject* ref= (SObject*) v.clone(); SBVector::insert (index*sizeof(SObject*), (char*)&ref, sizeof (SObject*)); } void SOVector::remove (unsigned int index) { derefer(); SObject* old = (SObject*) peek (index); if (old) delete old; SBVector::remove (index * sizeof (SObject*), sizeof (SObject*)); } unsigned int SOVector::size () const { return SBVector::size()/sizeof(SObject*); } void SOVector::clear () { cleanup (); SBVector::clear(); } void SOVector::refer (const SOVector& v) { if (&v != this) { cleanup(); SBVector::refer(v); } } const SObject* SOVector::peek (unsigned int index) const { return *(SObject**)SBVector::peek (index * sizeof (SObject*)); } void SOVector::derefer() { if (count()==1) return; SBVector::derefer(); for (unsigned int i=0; iclone(); SBVector::replace (index*sizeof(SObject*), (char*) &n, sizeof (SObject*)); } void SOVector::cleanup() { if (count()!=1) return; for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SMatrix_h #define SMatrix_h #include "stoolkit/SBinVector.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 */ /* * Matrices and the like */ class SS_Matrix2D { public: SS_Matrix2D(void); SS_Matrix2D(const SS_Matrix2D& m); ~SS_Matrix2D(); SS_Matrix2D operator= (const SS_Matrix2D& m); friend bool operator== (const SS_Matrix2D& m1, const SS_Matrix2D& m2); friend bool operator< (const SS_Matrix2D& m1, const SS_Matrix2D& m2); friend bool operator> (const SS_Matrix2D& m1, const SS_Matrix2D& m2); SS_Matrix2D operator* (const SS_Matrix2D& m1) const; void rotate (double angle); void translate (double x, double y); SS_Matrix2D invert() const; void scale (double x, double y); double x0; double y0; double t0; double x1; double y1; double t1; double x2; double y2; double t2; }; typedef SBinVector SS_MatrixStack; #endif /* SMatrix_h */ ./stoolkit/SEmbedState.cpp0000644000175000017500000001155610434025610015554 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SEmbedState.h" #include "stoolkit/SCharClass.h" static SS_UCS4 stateMap[4] = { SD_CD_LRO, SD_CD_LRE, SD_CD_RLO, SD_CD_RLE, }; /** * This is a state class that stores the embedding history. * Currently it supports 32+32/4 = 16 embedding levels. * To support more you need to add exstatexx. */ /** * Check if state is equal */ bool SEmbedState::operator==(const SEmbedState& es) const { return (explevel == es.explevel && memcmp (states, es.states, sizeof (states)) == 0); } /** * Check if state is not equal */ bool SEmbedState::operator!=(const SEmbedState& es) const { return (explevel != es.explevel || memcmp (states, es.states, sizeof (states)) != 0); } /** * exstate0 and exstate1 are operated with this. @ @param level is the current (real) level * @return an index into stateMap */ unsigned int SEmbedState::getMark(unsigned int level) const { unsigned int line = level/8; unsigned int index = (level%8)*4; return ((states[line] >> index) & 0x3); } /** * exstate0 and exstate1 are operated with this. @ @param level is the current (real) level * @mark is an index into stateMap */ void SEmbedState::setMark (unsigned int level, unsigned int _mark) { unsigned int line = level/8; unsigned int index = (level%8)*4; unsigned int mask = ((0x3 << index) ^ 0xffffffff); states[line] = states[line] & mask; states[line] = states[line] | (_mark << index); } /* Return embedding marks */ SV_UCS4 SEmbedState::getEmbeddingMarks (const SEmbedState* from) const { SV_UCS4 ret; unsigned int depfrom = (from==0) ? 0 : from->getDepth(); unsigned int depto = getDepth(); unsigned int min = (depfrom < depto) ? depfrom : depto; /* skip the common ones */ unsigned int i = 0; for (i=0; igetMark(i)!=getMark(i)) break; } /* fill in the space with PDF */ for (unsigned int j=i; j=2 && (emb&1) == 1) emb++; if (mark<2 && (emb&1) == 0) emb++; emb++; } return ret; } /** * Set the overriding state from stack * Stack can contain only glyphs that are in stateMap. */ void SEmbedState::setEmbeddingMarks (const SV_UCS4& stack) { memset (states, 0, sizeof (states)); explevel = 0; /* our max embeding is 16 */ unsigned int level = 0; for (unsigned int i=0; i SD_BIDI_MAX_EMBED) break; level++; level++; } else if ((mark==0 || mark == 1) && (level&1) == 0) { if (level+2 > SD_BIDI_MAX_EMBED) break; level++; level++; } else { if (level+1 > SD_BIDI_MAX_EMBED) break; level++; } /* RL is 2 and 3 */ setExplicitLevel (level, override); setMark (i, mark); } return; } /** * Used for debug. */ SString SEmbedState::toString() const { SString ret; ret.append ("["); char s[12]; SV_UCS4 v = getEmbeddingMarks(0); const char* c = ""; for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SBiDi_h #define SBiDi_h #include "stoolkit/STypes.h" #include "stoolkit/SCharClass.h" /** * I collected most of the Unicode Implicit bidi * algortihm in this class, so it will be easier * to throw it away. */ class SBiDiSegment { public: SBiDiSegment(SD_BiDiClass* classes); ~SBiDiSegment (); void resolveWeakNeutral(); SD_BiDiClass* classes; unsigned int level; unsigned int from; unsigned int till; bool sor; bool eor; }; class SBiDi { public: SBiDi (unsigned int initLevel, unsigned int size); ~SBiDi(); void append (unsigned int embedLevel, SD_BiDiClass bidiType); void resolveWeakNeutral(); /* this *must be called after* resolveWeakNeutral */ void insertBN (unsigned int at); inline unsigned int segmentSize() const; inline const SBiDiSegment* getSegment (unsigned int at) const; inline SD_BiDiClass getBiDiType (unsigned int at) const; private: unsigned int initLevel; unsigned int lastLevel; unsigned int lastSize; SBiDiSegment* lastSegment; SBinVector segments; SD_BiDiClass* classes; }; const SBiDiSegment* SBiDi::getSegment (unsigned int at) const { return segments[at]; } unsigned int SBiDi::segmentSize() const { return segments.size(); } SD_BiDiClass SBiDi::getBiDiType (unsigned int at) const { return classes[at]; } #endif /* SBiDi_h */ ./stoolkit/SUniqueID.h0000644000175000017500000000207310434025610014661 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SUniqueID_h #define SUniqueID_h #include "SString.h" /** * @author: Gaspar Sinai * @version: 2000-10-16 */ class SUniqueID : public SString { public: SUniqueID(void); virtual ~SUniqueID (); protected: unsigned int timePart; unsigned int sequence; }; #endif /* SUniqueID _h*/ ./stoolkit/SShared.cpp0000644000175000017500000000444310434025610014742 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "SShared.h" #include "SExcept.h" #include #include #include /** * @author: Gaspar Sinai * @version: 2000-04-23 */ static int debug_level = 0; /** * Create a buffer that will be referenced by all vectors. * @param size is the minimum size on chars. */ SShared::SShared (unsigned int size) { count=1; vectorSize=0; /* alignment */ array = (char*) new double[size/sizeof (double) + 1]; CHECK_NEW(array); arraySize = size; } /** * Create a buffer that will be referenced by all vectors. * @param size is the minimum size on chars. * @param buffer - this will be copyes over one by one. */ SShared::SShared (const char* buffer, unsigned int size) { count=1; array = 0; arraySize=0; vectorSize=0; if (size==0)return; /* alignment */ array = (char*) new double[size/sizeof (double) + 1]; CHECK_NEW(array); arraySize = size; //ensure (arraySize); memcpy (array, buffer, size); } /** * Create a new Object by copying an old one * @param a SShared object to copy */ SShared::SShared (const SShared& orig) { count=1; array=0; arraySize=0; vectorSize=0; /* Copy */ if (orig.arraySize!=0) { ensure (orig.arraySize); /* This is needed this way because of Hashtable. Vectorsize in hashtable does not mean continuous size */ memcpy (array, orig.array, orig.arraySize); } vectorSize = orig.vectorSize; } /** * Sets debug printout levels */ int SShared::debug(int level) { int prev = debug_level; debug_level = level; return prev; } ./stoolkit/SObject.cpp0000644000175000017500000000232710434025610014741 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /** * @author: Gaspar Sinai * @version: 2000-04-23 */ #include "SObject.h" #include "SExcept.h" #include #if SS_DEBUG_MEMORY_LEAK int SObject::debugLevel = 0; int SObject::created =0; SObject::~SObject() { created--; if (debugLevel && created==0) { fprintf (stderr, "Debug OK: SObject::~SObject no memory leak.\n"); } } int SObject::debug (int level) { int old = debugLevel; debugLevel = level; return old; } #endif ./stoolkit/STextIndex.cpp0000644000175000017500000000664210434025610015453 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "STextIndex.h" #include "stoolkit/SExcept.h" /** * Create a text index object * @param line is the line of the object * @param index is the character index of the object */ STextIndex::STextIndex (int _line, int _index) { this->line = _line; this->index = _index; } /** * Create a dimension object * width default index is 0,0 */ STextIndex::STextIndex () { line = 0; index = 0; } /** * Copy a textindex object * @param d is the textindex */ STextIndex::STextIndex (const STextIndex& d) { this->line = d.line; this->index = d.index; } /** * Copy a textindex object * @param d is the textindex */ STextIndex STextIndex::operator = (const STextIndex& d) { this->line = d.line; this->index = d.index; return *this; } /** * Substract a textindex object * @param d is the textindex */ STextIndex STextIndex::operator - (const STextIndex& d) { this->line -= d.line; if (index > d.index) { this->index -= d.index; } else { this->line--; this->index = 0; } return *this; } /** * Compare the textindex object with another object * @param d is the textindex to compare to */ bool STextIndex::operator == (const STextIndex& d) const { return (d.line == line && d.index == index); } /** * Compare the textindex object with another object * @param d is the textindex to compare to */ bool STextIndex::operator != (const STextIndex& d) const { return (d.line != line || d.index != index); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool STextIndex::operator < (const STextIndex& d) const { if (line < d.line) return true; if (line > d.line ) return false; return (index < d.index); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool STextIndex::operator > (const STextIndex& d) const { if (line > d.line ) return true; if (line < d.line ) return false; return (index > d.index); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool STextIndex::operator <= (const STextIndex& d) const { if (line < d.line ) return true; if (line > d.line ) return false; return (index <= d.index ); } /** * Compare the dimension object with another object * @param d is the dimension to compare to */ bool STextIndex::operator >= (const STextIndex& d) const { if (line > d.line ) return true; if (line < d.line ) return false; return (index >= d.index ); } /** * Destructor - nothing to desctruct now.. */ STextIndex::~STextIndex () { } SObject* STextIndex::clone() const { STextIndex* l = new STextIndex (line, index); CHECK_NEW (l); return l; } ./uniprint/0000755000175000017500000000000011334661333012710 5ustar henrichhenrich./uniprint/Makefile0000644000175000017500000000213607532460076014360 0ustar henrichhenrichinclude ../Makefile.conf MODULES=Main.o ifeq ($(SPLATFORM),WINDOWS) OBJS=$(subst .o,.obj,$(MODULES)) SLIBS=/libpath:../stoolkit stoolkit.lib SWINLIBS=/libpath:../swindow swindow.lib SWIDGETLIBS=/libpath:../swidget swidget.lib MYLIBS=/link /subsystem:CONSOLE $(SWIDGETLIBS) $(SWINLIBS) $(SLIBS) $(SWINDOW_LIBS) $(ALL_LIBS) else OBJS=$(MODULES) SLIBS=-L../stoolkit -lstoolkit SWINLIBS=-L../swindow -lswindow SWIDGETLIBS=-L../swidget -lswidget MYLIBS=$(SWIDGETLIBS) $(SWINLIBS) $(SLIBS) $(ALL_LIBS) endif .PHONY:all clean config all: uniprint uniprint: $(OBJS) $(LD) -o uniprint $(OBJS) $(MYLIBS) %.o:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .o,.cpp,$@) %.obj:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .obj,.cpp,$@) install: rm -f $(DESTDIR)/$(bindir)/uniprint $(INSTALL_PROGRAM) uniprint $(DESTDIR)/$(bindir) $(INSTALL_DATA) uniprint.1 $(DESTDIR)/$(mandir)/man1 clean: rm -f *.o *.obj uniprint uniprint.exe core $(SUBDIRS_clean): $(MAKE) -C $(patsubst %_clean,%,$@) clean depend: $(CXX) -M $(CPPFLAGS) $(patsubst %.o,%.cpp,$(OBJS)) > .depend ifeq (.depend, $(wildcard .depend)) include .depend endif ./uniprint/uniprint.1.in0000644000175000017500000000772610337771112015262 0ustar henrichhenrich.\" @(#)uniconv 1.1 97/11/5 .TH UNIPRINT 1 "Nov 25 1997" "LINUX COMMANDS" "LINUX COMMANDS" .SH NAME .LP uniprint \- produce postscript output from unicode text for printing .SH SYNOPSIS .LP .B uniprint [ .BI "-out " output-file ] [ .BI "-in " input-file ] [ .BI "-decode encoding ] [ .BI "-printer " printer ] [ .BI "-L " ] [ .BI "-media " media ] [ .BI -us ] [ .BI -nus ] [ .BI -break ] [ .BI -wrap ] [ .BI "-left " ] [ .BI "-right " ] [ .BI "-size " font-size ] [ .BI "-hsize " header-font-size ] [ .BI "-font " truetype-font-file ] .LP .SH DESCRIPTION .LP .B uniprint is a program from the yudit distribution. It makes a formatted poscript output that can be saved or directly sent to the printer. The program needs a TrueType font that has unicode table in order to operate. .sp If you are running Linux you most probably have unicode truetype fonts, because there are very few vendors, if any. who give discount if you do not buy Windows. If you are running other Unices it is still possible to get a freely available font. I have made ciberbit.ttf a default font for uniprint, mainly because it is freely downloadable from http://www.bitstream.com/. .sp The postcript output contains all drawing information. No extra fonts are needed, and it can be printed on any postscript printer. You may encounter probkems with old ghostview or old printers. I used this program with ghostscript 5.10 because 2.6.2 gave me stack overflow error. .LP .SH OPTIONS .TP .BI "-out " ouput-file Do not sent the output to the printer, put it in the file instead. If the .B '-' character is specified, send the postscript data to the standard output. .TP .BI "-in " input-file If specified read the document from a file. Read stdin otherwise. .TP .BI "-decode " encoding specifies the encoding of the input text. All encodings that are available for .B uniconv can be used. If not specified encoding is set to utf-8. .TP .BI "-printer " printer Send the postscript output to printer through the 'lpr -P Printer' command. .TP .B "-break " option makes this program print a graphical representation of line breaking characters. .TP .B "-us " option turns on uniscribe emulation. For some scripts emulation is turned on by default. .TP .B "-nus " option turns off uniscribe emulation. For some scripts emulation is turned off by default. .TP .B "-wrap " option makes this program do a simplistic line breaking on word boundaries. .TP .B "-left " option sets the embedding of the document to Left. .TP .B "-right " option sets the embedding of the document to Right. .TP .B "-L " Selects landscape printing. The default is portrait. .TP .BI "-media " media Sets paper size. The default is A4. The following .I media values are accepted: .I A3, A4, A5, B4, B5, Executive, Folio, Ledger, Legal, Letter, Quarto, Statement, Tabloid .TP .BI "-size " font-size sets the size of the font for the text body in .B points. .TP .BI "-hsize " heder-font-size sets the size of the font for the header in .B points. If zero size is specified, no header is printed. .TP .BI "-font " truetype-font specifies the font to be used for printing. .I truetype-font is the full pathname of the font, like .B /somepath/myfonts/cyberbit.ttf or just the name of the file .B cyberbit.ttf. The fonts are searched using yudit.fontpath property in ~/.yudit/yudit.properties or @YUDIT_DATA@/config/yudit.properties. directory where the font files are kept. By default @YUDIT_DATA@/fonts and ~/.yudit/fonts are searched. This option can be specified multiple times, to create a virtual font. .SH FILES ~/.yudit/yudit.properties or @YUDIT_DATA@/config/yudit.properties can have yudit.fontpath and yudit.datapath properties. The former is where the font files, the latter is where the map files are kept. By default @YUDIT_DATA@/fonts is searched. .SH SEE ALSO .BR uniconv .SH AUTHOR .LP This program was written by gsinai@iname.com (Gaspar Sinai), using the code of .B ttf2pfa program that was written by Adrew Weeks. Last Updated Tokyo, 2 November, 2001. ./uniprint/Main.cpp0000644000175000017500000002213311326626251014302 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define BUFFER_SIZE 512 static const char *version="uniprint verison %s GNU(c) Gaspar Sinai\n"; static void usage (); #define SS_UNIX 0 #define SS_DOS 1 #define SS_MAC 2 #define DEFAULT_HEADER 10.0 #define DEFAULT_BODY 12.0 /** * This is a printing utility to simply and nicely print out * utf-8 text files. * FIXME: * ./uniprint -size 12 -font cyberbit.ttf -out aa ../doc/UTF-8-test.txt * will produce bad things. * @author: Gaspar Sinai * @version: 2000-07-08 */ int main (int argc, char *argv[]) { const char* ifile = 0; const char* ofile = 0; const char* printer = 0; const char* command = "lpr"; const char* iencoding ="utf-8"; SStringVector font; bool shownl = false; bool isleft = false; bool isright = false; bool wrap = false; double headerSize = DEFAULT_HEADER; double bodySize = DEFAULT_BODY; SUniMap::guessPath(); SFontImpl::guessPath(); SPrinter::SMedia media = SPrinter::A4; SPrinter::SOrientation orient = SPrinter::PORTRAIT; int i; SInputStream is; SOutputStream os; for (i=1; i 100.0) { fprintf (stderr, "header size out of range[1.0-100.0]: %s", argv[i]); return -1; } if (headerSize==0.0) headerSize = 1.0; } else if (strcmp ("-size", argv[i])==0 && i 1000.0) { fprintf (stderr, "text size out of range[1.0-1000.0]: %s", argv[i]); return -1; } } else if (strcmp ("-out", argv[i])==0 && i 1) { fprintf (stderr, "uniprint: printed %d pages.\n", pagecount); } else { fprintf (stderr, "uniprint: printed %d page.\n", pagecount); } return 0; } static void usage () { fprintf (stdout, version, SD_YUDIT_VERSION); fprintf (stdout, "usage: uniprint [-out file] [-printer name] [-in file] [-decode name] \n"); fprintf (stdout, "[-media A4] [-break] [-right|-left] [-hsize header-font-size] [-size font-size]\n"); fprintf (stdout, "[-L|-landscape] [-wrap] [-font truetype.ttf [-font otherfont.ttf [...]] \n\n"); fprintf (stdout, "uniprint [-us] using uniscribe-clone rendering (default).\n"); fprintf (stdout, "uniprint [-nus] not using uniscribe-clone rendering.\n"); fprintf (stdout, "uniconv -h will get list of supported encodings. \n"); } ./uniprint/uniprint.10000644000175000017500000000774611334661333014660 0ustar henrichhenrich.\" @(#)uniconv 1.1 97/11/5 .TH UNIPRINT 1 "Nov 25 1997" "LINUX COMMANDS" "LINUX COMMANDS" .SH NAME .LP uniprint \- produce postscript output from unicode text for printing .SH SYNOPSIS .LP .B uniprint [ .BI "-out " output-file ] [ .BI "-in " input-file ] [ .BI "-decode encoding ] [ .BI "-printer " printer ] [ .BI "-L " ] [ .BI "-media " media ] [ .BI -us ] [ .BI -nus ] [ .BI -break ] [ .BI -wrap ] [ .BI "-left " ] [ .BI "-right " ] [ .BI "-size " font-size ] [ .BI "-hsize " header-font-size ] [ .BI "-font " truetype-font-file ] .LP .SH DESCRIPTION .LP .B uniprint is a program from the yudit distribution. It makes a formatted poscript output that can be saved or directly sent to the printer. The program needs a TrueType font that has unicode table in order to operate. .sp If you are running Linux you most probably have unicode truetype fonts, because there are very few vendors, if any. who give discount if you do not buy Windows. If you are running other Unices it is still possible to get a freely available font. I have made ciberbit.ttf a default font for uniprint, mainly because it is freely downloadable from http://www.bitstream.com/. .sp The postcript output contains all drawing information. No extra fonts are needed, and it can be printed on any postscript printer. You may encounter probkems with old ghostview or old printers. I used this program with ghostscript 5.10 because 2.6.2 gave me stack overflow error. .LP .SH OPTIONS .TP .BI "-out " ouput-file Do not sent the output to the printer, put it in the file instead. If the .B '-' character is specified, send the postscript data to the standard output. .TP .BI "-in " input-file If specified read the document from a file. Read stdin otherwise. .TP .BI "-decode " encoding specifies the encoding of the input text. All encodings that are available for .B uniconv can be used. If not specified encoding is set to utf-8. .TP .BI "-printer " printer Send the postscript output to printer through the 'lpr -P Printer' command. .TP .B "-break " option makes this program print a graphical representation of line breaking characters. .TP .B "-us " option turns on uniscribe emulation. For some scripts emulation is turned on by default. .TP .B "-nus " option turns off uniscribe emulation. For some scripts emulation is turned off by default. .TP .B "-wrap " option makes this program do a simplistic line breaking on word boundaries. .TP .B "-left " option sets the embedding of the document to Left. .TP .B "-right " option sets the embedding of the document to Right. .TP .B "-L " Selects landscape printing. The default is portrait. .TP .BI "-media " media Sets paper size. The default is A4. The following .I media values are accepted: .I A3, A4, A5, B4, B5, Executive, Folio, Ledger, Legal, Letter, Quarto, Statement, Tabloid .TP .BI "-size " font-size sets the size of the font for the text body in .B points. .TP .BI "-hsize " heder-font-size sets the size of the font for the header in .B points. If zero size is specified, no header is printed. .TP .BI "-font " truetype-font specifies the font to be used for printing. .I truetype-font is the full pathname of the font, like .B /somepath/myfonts/cyberbit.ttf or just the name of the file .B cyberbit.ttf. The fonts are searched using yudit.fontpath property in ~/.yudit/yudit.properties or /usr/share/yudit/config/yudit.properties. directory where the font files are kept. By default /usr/share/yudit/fonts and ~/.yudit/fonts are searched. This option can be specified multiple times, to create a virtual font. .SH FILES ~/.yudit/yudit.properties or /usr/share/yudit/config/yudit.properties can have yudit.fontpath and yudit.datapath properties. The former is where the font files, the latter is where the map files are kept. By default /usr/share/yudit/fonts is searched. .SH SEE ALSO .BR uniconv .SH AUTHOR .LP This program was written by gsinai@iname.com (Gaspar Sinai), using the code of .B ttf2pfa program that was written by Adrew Weeks. Last Updated Tokyo, 2 November, 2001. ./NEWS.TXT0000644000175000017500000000070511334661443012221 0ustar henrichhenrichVersion 2.9.2 of the Unicode Text Editor Yudit has been released. Download: -------- http://www.yudit.org/download.html Homepage: -------- http://www.yudit.org/ Changes since version 2.9.0: --------------------------- - Updated to Unicode 5.2.0 - Landscape printing bug fixed - DOS CRLF with uniconv bug fixed - Hungarian Runes (PUA) rovasiras glyph adjustments - Windows port now behaves itself - Minor enhancements Enjoy! Gaspar 2010-02-09 ./README.TXT0000644000175000017500000003352211331220313012365 0ustar henrichhenrichVersion: 2.9.2 Location: http://www.yudit.org/ Author: Gaspar Sinai Copyright: Released under the GNU General Public License, version 2, dated June 1991, worded by the Free Software Foundation. Please read the file COPYING. (GNU) Features ======== o The kinput2 method is directly supported for Japanese. o X Input Method support. o Handwriting recognition support. o Easy-to-make key-input maps that can be created to input scripts with a two-way English transliteration scheme. Yudit comes with more than 100 keyboard maps contributed by Yudit users from all over the World. o Built-in printing support High quality and locale independent postscript is generated. o Direct True Type / Open Type font support. Yudit does not need X11 TTF support to show your text. o Yudit can display and print your text with a mixture of X11 fonts/True Type fonts. Unicode glyphs are widely available these days but still there are some scripts that need this feature. o Cut and paste, load and save your text with various encodings. It is possible to create a unicode text file in Linux and read it in MS Notepad on NT. (utf-16) o Keyboard input maps can be used as text converters. This means that you can make instant transliterations of your scripts. If the transliterations is reversible, it is possible to read it back get the original text back. o Unlinimted undo/redo. o Overstriking and OTF composing-character support. o 31-bit Unicode support. o Drag-and-Drop (xdnd and Dnd) support. o Full Bidirectional text support. o Hagul Jamos with mslvt encoder (hardwired for ogulim.ttf) and X11 fonts o Arabic, Syriac,... shaping support. o Indic scripts: Tamil,Devanagari,Bengali,Gujarati,Gurmukhi, Oriya,Malayalam,Kannada and Telugu o Hungarian Runes (rovásírás) support in Private Use Area o Software glyph mirroring (Hungarian Runes,Old Italic) o External spell-checker (Hunspell) support How to Install ============== Prerequisites: --needed: gcc-2.96 or better http://gcc.gnu.org/ --needed: gmake 3.75 or greater ftp://prep.ai.mit.edu/ --needed: X11R5 or greater (www.xfree86.org) --recommended gettext 0.10 or better for multi-language message support From version-2.4.8 it is only needed when making your own messages. Reading gettext generated files are internally supported. --optional: a lot of True Type fonts are available for free: From www.microsoft.com you can get gulim (Hangul), msgothic (Japanese) for IE. From www.bitstream.com you can get cyberbit that contains a lot of glyphs. From ftp://ftp.cs.indiana.edu/pub/fidel/fonts/ you can get Ethiopic fonts (gfzemenu). --recommended: Several UCS fonts: http://www.cl.cam.ac.uk/~mgk25/ucs-fonts.html Unifont: http://www.czyborra.com/unifont/ --recommened literature: http://www.cl.cam.ac.uk/~mgk25/unicode.html Installation Process ==================== Linux: 1. configure --prefix=/usr/local 2. make 3. make install Solaris: 1. configure --prefix=/opt/Misc 2. make 3. make install FreeBSD: 1. ./configure --prefix=/usr/local 2. gmake 3. gmake install Windows: 1. run setup.exe 2. install into a directory, like: C:\Yudit * Good to know: if you don't have setup.exe or you want to move yudit manually to another directory you just need mytool to change installdir: C:\NewInstallBaseDir\bin\mytool -installdir "C:\NewInstallBaseDir" 3. install ghostview from, for instance, http://www.ghostgum.com.au/ into, like: C:\Ghostgum 4. If you install ghostview into any other directory, modify %HOME%\.yudit\yudit.properties and C:\Yudit\config\yudit.properties * Note: there is an editor that can edit unix files called yudit :) yudit C:/Yudit/config/yudit.properties and set yudit.default.preview.command to the command to execute: yudit.default.preview.command="C:/Ghostgum/gsview/gsview32.exe" 5. If you don't have HOME environment set, Yudit will use C:\HOME How to make an rpm package form Yudit sources ============================================= 1. rpm -tb yudit-2.9.2.tar.gz or if it does not work: rpmbuild -tb yudit-2.9.2.tar.gz This will tell you where to put the compresed source code.Put it there. Most likely: Suse: /usr/src/packages/SOURCES/yudit-2.9.2.tar.gz or Redhat: /usr/src/redhat/SOURCES/yudit-2.9.2.tar.gz 2. rpm -i [binary rpm] Does the GUI speak my language? ============================== Yudit menus can be displayed in several languages. In ~/.yudit/yudit.properties file you can specify: yudit.default.language=language_code The following languages are supported: Tag Country/Language Translated and contributed by === =================== ============================= am Amharic/Ethiopia Daniel Yacob ar Arabic/ Mohamed kebdani az Azerbaijani Turkish Vasif İsmailoglu bn Bengali Anirban Mitra bg Bulgaria/Bulgarian Alexander Shopov de Germany/German Thomas Wohlfarth cs Czechia/Czech Lubos Stanek en US/English Gáspár Sinai el Greece/Greek Velonis Petros es Spain/Spanish Juan Rafael Fernández García fi Finland/Finnish Miikka-Markus Alhonen fr France/French Olivier Faucheux ga Irish Kevin Patrick Scannell gu Gujarati Vibha Sinojia hi Hindi Sanjay Khatri hu Hungary/Hungarian Gáspár Sinai ja Japan/Japanese Inui Yuko / Gáspár Sinai ko Korea/Korean Jungshik Shin mn Mongolia/Mongolian Natsagdorj Shagdar mr Marathi Swapnil Hajare pa Punjabi Madhusudan Singh pl Polish/Poland Pawel Zawila-Niedzwiecki ru Russian/Russia Вячеслав Диконов Vyacheslav Dikonov sl Slovenia/Slovenian Roman Maurer sr Yugoslavia/Serbian Slobodan Marković ta Tamil Thuraiappah Vaseeharan uk Ukrainian Solotskyy Mykola ur Urdu/Pakistan S H A N vi Vietnamese/Vietnam Hoan yi Israel/Yiddish Raphael Finkel zh Chinese/HongKong Joe Man zh_CN Chinese/Simplified Zhou Jinnian If you specify yudit.default.language=default The environment variable LANG will be used to determine the language. Use this option sparingly - it is not guaranteed that the font is available. If your language does not appear properly, you might need to change yudit.default.font=default to yudit.default.font=MyVirtualFont The default font is internally defined in swindow/SFont.ttf as: "yudit.hex,arabforms.hex,syriacforms.hex,unifont.hex," "markus9x18.bdf,markus18x18ja.bdf," "-*-*-medium-r-normal--16-*-*-*-c-*-iso8859-1," "-*-*-*-*-*--16-*-*-*-c-*-iso8859-1," "THOOLIUC.TTF:mlym," "ani.ttf:beng," "pothana2000.ttf:telu," "TCRCYoutsoUnicode.ttf:tibt," "raghu.ttf:deva," "mangal.ttf:deva,tunga.ttf:knda,code2000.ttf:taml," "raavi.ttf:guru,shruti.ttf:gujr," "arialuni.ttf,cyberbit.ttf," "code2000.ttf,code2001.ttf:unicode:RL,arial.ttf," "yudit.ttf" How to translate yudit messages to my language ============================================== 1. cd gui 2. mkdir -p locale/country_and_variant/LC_MESSAGES/ 3. make messages 4. yudit -e utf-8 locale/country_and_variant/LC_MESSAGES/messages.po 5. make messages 6. make install 7. mail -s locale/country_and_variant \ gaspar@yudit.org < locale/country_and_variant/LC_MESSAGES/messages.po 8. add yudit.default.language=country_and_variant to ~/.yudit/yudit.properties you may want to add: yudit.default.font=yourfont yudit.default.fontsize=yourfontsize A good result can be achieved if you download and install the http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz - mkdir x11fonts (or re-use .yudit/fonts) - cd x11fonts - wget http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz - tar xfz ucs-fonts.tar.gz - xset fp+ ~/x11fonts - (optional) put the line above into ~/.Xinitrc - change ~/.yudit/yudit.properties yudit.default.font=Misc yudit.default.fontsze=15 9. Sometimes you may have a translation but it does not appear. Possible and not obvious reasons: - if the original message has \n at the end the translation should have it too. - if you see the fuzzy keyword in a comment preceeding the message it won't be included. Remove the fuzzy comment. Huspell spell-checker support ============================= Type the following in command area of Yudit: howto syntax This will show how Hunspell can be used within Yudit. Japanese Input ============== If you have built the Motif version you can also use Kinput2 to input Japanese. If you want to use free packages and you have an English environment you need to do the following: o Get a conversion server, 'canna' from X11 contrib directory. This server can be built in Linux. It is usually started when the machine boots and keeps running. Make sure it uses its own wide text library. No Japanese environment is needed. o Get a 'kinput2' X front-end for X11 from the same place you got canna. If you do not have Japanese environment, make sure it links with libcanna16. Kinput is started after X in .xinitrc and it provides the input windows for the applications. The current version of kinput2 has a bug - it thinks that long is 32 bit, which is true on a pentium machine. On an alpha machine you should make sure you have a version number set to less than 2.02 in your .yuditrc so that yudit knows that it should deal with a buggy kinput2. If you have a value of zero, yudit tries to determine the version number itself. Hangul Input ============ Yudit comes with kmap files for Roman transliteration, 2-set and 3-set keyboards. I expect yudit to improve on this area. Adding New Mappings =================== Please read the man page for mytool. FAQ.TXT also has some information. For clues on how to create an Handwriting input please read the mytool/hwd/hiragana.hwd utf-8 encoded file, or the same file in /usr/share/yudit/data/hiragana.hwd. Undocumented Features ===================== There is a Yudit command-area command configure that brings up the configuration file. When the configuration file is edited, Yudit will not save the current settings when it exits, so that you can save the config file safely. (Unless another editor session is running...) This is documented: you should know that you can use the keyboard maps as text converters. So you convert a Devanagari transliterated text into unicode like this: uniconv -decode Devanagari < in_itrans.txt > out_utf8.txt There are many converters for ISCII character conversion written by Anirban Mitra and included in this Yudit package. They all start with IS_. There is a plan to make a more extensive documentation but there are too many features and not enough time :) Acknowledgements ================ 乾優子 for her support, and her hiragana and katakana handwriting data. Andrew Weeks at the University of Bath for releasing his True Type to postscript (ttf2pfa) program. Anirban Mitra Indic (Bengali), IS_XX.mys transliteration maps. Grisha Mokhin Tibetan support. Hosszú, Gábor Old Hungarian Support Németh László nemeth (at) OpenOffice.org - his hunspel can be used in yudit as an external spell checker. See 'howto syntax' document Jungshik Shin Korean support Jim Breen for the extensive tests and bug reports. Mark E. Shoulson for helping to test the diactritical marks. Maarten van Gompel - syntax higlighting, word wrapping and other fixes Markus Kuhn for the unicode FAQ and the good advise. Mohammed Elzubeir for helping me with Arabic. Miikka-Markus Alhonen for the huge amount of help in many scripts. Peter Soos - cp-1251 encoded vector font (TTF). Raphael Finkel - extensive debugging Rajkumar S. - Malayalam, contributor of dc-font.ttf Ričardas Čepas - FreeBSD port Robert Wells for JStroke Roman Czyborra kmap files, web-page, unifont Thomas Wohlfarth , - translations, tests Thuraiappah Vaseeharan for his help and contributions to Tamil in Yudit. Richard Tebb - for 'remote debugging' on Sparc Todd David Rudick for his program JavaDict, and the kanji hwd. Tony Laszlo - extensive debugging of Yudit. Mike Fabian mfabian (at) suse.de for his help ... and you... ============================================================================== Gáspár Sinai Tokyo 2010-01-30 ./swindow/0000755000175000017500000000000011334661073012533 5ustar henrichhenrich./swindow/SFontTTF.h0000644000175000017500000001373311053412537014317 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontTTF_h #define SFontTTF_h #include "swindow/SCanvas.h" #include "swindow/SPen.h" #include "swindow/SFontLookup.h" #include "stoolkit/SIO.h" #include "stoolkit/STypes.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SHashtable.h" #include "stoolkit/SProperties.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SString.h" #include "stoolkit/SProperties.h" #include "stoolkit/SUniMap.h" /** * This file will not be exposed so we can put some local junk here. */ // for coords. typedef SBinVector SH_Vector; /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SFontTTF : public SFontLookup { public: enum SHardWire { SS_NONE=0, SS_MSLVT, SS_NOJAMO, SS_INDIC, SS_JAMO, SS_DEVANAGARI, SS_BENGALI, SS_GURMUKHI, SS_GUJARATI, SS_ORIYA, SS_TAMIL, SS_TELUGU, SS_KANNADA, SS_MALAYALAM, SS_SINHALA, SS_THAI, SS_LAO, SS_TIBETAN }; SFontTTF (const SFile& file, const SString& encoding); virtual ~SFontTTF (); bool draw (SCanvas* canvas, const SS_Matrix2D& matrix, SS_UCS4 uch, bool isLRContext); bool width (const SS_Matrix2D& matrix, SS_UCS4 uch, double* width_); bool isLeftAligned (SS_UCS4 uch) const; double width (const SS_Matrix2D& matrix); double ascent (const SS_Matrix2D& matrix); double descent (const SS_Matrix2D& matrix); double gap (const SS_Matrix2D& matrix); /* mulltiply this with size you want to get the matrix */ double scale (); bool isOK(); SS_GlyphIndex findGlyph (SS_UCS4 in, bool ownjoiners=true); static void setBase (SS_UCS4 base); void getBaseOffsets (const SS_Matrix2D& m, SS_UCS4 mark, double* offx, double* offy); public: // SFontLookup interface implementation SS_GlyphIndex gindex (SS_UCS4 in); int gwidth (SS_GlyphIndex in); unsigned int gsub (const char* script, const char* feature, const SS_GlyphIndex* in, unsigned int in_size, unsigned int* start, SS_GlyphIndex* out, unsigned int* out_size, bool* is_contextual); bool gpos (const char* script, const char* feature, const SS_GlyphIndex* in, int* x, int* y); unsigned int getGlyphClass(SS_GlyphIndex in); bool attach (SS_GlyphIndex base, SS_GlyphIndex mark, int where, int* x, int* y); protected: SHardWire hardWire; SS_GlyphIndex defaultGlyph; SProperties char2Glyphs; SBinHashtable char2Width; SBinHashtable mark2Base; /* this is to position many points, like Lao,Thai,Tibetan */ SHashtable mark2BaseList; void drawGlyph (SCanvas* canvas, const SS_Matrix2D& matrix, SS_GlyphIndex glyphno); double widthGlyph (const SS_Matrix2D& m, SS_GlyphIndex glyphno); int getWidth (SS_GlyphIndex glyphno); bool findGlyphs (SS_UCS4 in, SV_GlyphIndex* out); bool findJamoGlyphs (const SS_UCS4* in, unsigned int len, SV_GlyphIndex* out); bool findSouthIndicGlyphs (const SString& key, unsigned int scriptcode, const char* script, const SS_UCS4* chars, unsigned int liglen, SV_GlyphIndex* out); bool storeMarkPositions (const SString& key, const SS_GlyphIndex* gv, unsigned int liglen); unsigned int getOTFLigature (const char* script, const char* feature, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* out, unsigned int substtype = 4); bool hasOTFLigatures(); void getOTFMarkToBase (SS_GlyphIndex baseGlyph, SS_GlyphIndex markGlyph, int* ix, int* iy); void getOTFMarkToMark (SS_GlyphIndex baseGlyph, SS_GlyphIndex markGlyph, int* ix, int* iy); bool getPositions(int feature, const SS_GlyphIndex* gv, unsigned int gvsize, const char* _feature, const char* _script, int* xpos, int* ypos); int getGlyphWidth (SS_GlyphIndex glyph); int getLeftSideBearing (SS_GlyphIndex glyphno) const; bool getBBOX (SS_GlyphIndex glyphno, int* xMin, int* yMin, int* xMax, int* yMax) const; SS_GlyphIndex substituteOTFGlyph (const char* feature, SS_GlyphIndex g); bool doContextSubstitutions (SS_GlyphIndex* ino, unsigned int inlen, unsigned int * olen, const char* script, const char* feature); unsigned int getOTFLigatures (SS_GlyphIndex* ino, unsigned int len, const char* script, const char* feature, SS_GlyphIndex halant, SS_GlyphIndex reord, bool* base); bool getContours(SS_GlyphIndex glyphno, SH_Vector * xc, SH_Vector *yc ); SFileImage image; SString name; SString fontencoding; SFile file; bool ok; bool broken; bool init (); bool processName (); bool checkTables (); void getName (long id, const char* str, int len); SProperties names; SBinHashtable tables; SUniMap charEncoder; unsigned int charEncoderTable; //double fontSize; double scaleFactor; // line height is charAscent - charDescent + lineGap double lineGap; double charWidth; double charAscent; double charDescent; //double scaleFactor; double italicAngle; double underlineThickness; double underlinePosition; bool isFixedPitch; int longOffsets; static SS_UCS4 setBaseCharacter; SS_UCS4 baseCharacter; SS_GlyphIndex baseGlyph; int baseWidth; }; #endif /* SFontTTF_h */ ./swindow/SFontBDF.h0000644000175000017500000000346710434025606014257 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontBDF_h #define SFontBDF_h #include "stoolkit/SIO.h" #include "stoolkit/SString.h" #include "stoolkit/STypes.h" #include "swindow/SCanvas.h" #include "swindow/SColor.h" /** * This is specifically designed for * Roman Czyborrra's UniFont. The font is currently maintained by * David Starner */ class SFontBDF { public: SFontBDF (const SFile& file); ~SFontBDF (); bool draw (double scale, SCanvas* canvas, const SColor& fg, const SS_Matrix2D& matrix, SS_UCS4 g, bool mirrored); bool width (double scale, SS_UCS4 g, double *width_); double width (double scale); double ascent (double scale); double descent (double scale); double gap (double scale); private: bool find (SS_UCS4 g); int nextIndex (int from, SS_UCS4* g, int* width); unsigned int nextLine (unsigned int from); int iscale; int iascent; int idescent; unsigned int size; SString name; SFile file; SFileImage image; const char* array; int position[0x10000]; char widths[0x10000]; }; #endif /* SFontBDF_h */ ./swindow/SFont.h0000644000175000017500000000477610434025606013747 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFont_h #define SFont_h #include "swindow/SFontImpl.h" #include "swindow/SCanvas.h" #include "swindow/SPen.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SUniMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SVector.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/STextData.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ #define SD_XLFD_ANY "-*-*-*-*-*-*-*-*-*-*-*-*-*-*" typedef SVector SFontImplVector; class SFont { public: /* This is a little help in xlfd */ enum SE_Weight {ANYWEIGHT, REGULAR, MEDIUM, DEMIBOLD, BOLD}; enum SE_Slant {ANYSLANT, ROMAN, ITALIC, OBLIQUE}; enum SE_Spacing {ANYSPACING, MONOSPACE, CONDENSED, PROPORTIONAL}; SFont (void); SFont (const SString name); SFont (const SString name, double size); SFont (const SFont& font); SFont operator = (const SFont& font); virtual ~SFont(); static void put (const SString name, const SFontImplVector& list); static void clear(); void setSize (double s); double getHeight() const; double getAscent() const; double getSize() const; void draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, const SGlyph& glyph); double width (const SGlyph& glyph); double width () const; double ascent () const; double descent () const; double gap () const; private: inline void setBase (SS_UCS4 base); double fontWidth; double fontAscent; double fontDescent; double fontGap; double fontScale; double fallbackScale; SString name; SString xlfd; SFontImplVector fontVector; }; /** * Set the base for diacritical marks */ void SFont::setBase(SS_UCS4 base) { SFontImpl::setBase(base); } #endif /* SFont_h */ ./swindow/Makefile0000644000175000017500000000307010722220116014160 0ustar henrichhenrichinclude ../Makefile.conf MODULES=SAwt.o SGPrimitive.o SGEngine.o SWindow.o SColor.o \ SImage.o SPen.o SCanvas.o SRedrawEvent.o \ SFont.o SFontImpl.o SFontTTF.o SFontOTF.o SFontBDF.o SUniFont.o \ SFontFB.o SFontNative.o SPostscript.o \ SPrinter.o SAccelerator.o SScriptProcessor.o \ SSyntaxColors.o TARGETDIR= TARGETOBJS= ifeq ($(SWINDOWS),X11) TARGETDIR:=$(TARGETDIR) SX11 ifeq ($(USE_X11),-DUSE_X11=1) TARGETOBJS:=sx11/SX11Impl.o sx11/SX11Window.o \ sx11/SX11Color.o sx11/SX11Font.o \ sx11/SXInputMethod.o sx11/SXEventHandler.o endif CPPFLAGS:=$(CPPFLAGS) $(SWINDOW_FLAGS) endif ifeq ($(SWINDOWS),WIN32) TARGETDIR:=$(TARGETDIR) swin32 TARGETOBJS:=SWin32.o CPPFLAGS:=$(CPPFLAGS) endif ifeq ($(SPLATFORM),WINDOWS) OBJS=$(subst .o,.obj,$(MODULES)) $(subst .o,.obj,$(TARGETOBJS)) #OBJS:=$(subst /,\,$(OBJS)) TARGET=swindow.lib else OBJS=$(MODULES) $(TARGETOBJS) TARGET=libswindow.a endif all: $(TARGET) # # The cl drops its lib here # swindow.lib: $(OBJS) $(AR)$@ $(subst swin32/,,$(OBJS)) libswindow.a: $(OBJS) $(AR) $@ $(OBJS) $(RANLIB) $@ sx11/%.o:sx11/%.cpp $(CXX) -c -o $@ $(HAVE_LOCALE) $(NEED_SET_IM_VALUES_PROTO) $(HAVE_SET_IM_VALUES) $(CPPFLAGS) $(patsubst %.o,%.cpp,$@) %.o:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .o,.cpp,$@) %.obj:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .obj,.cpp,$@) %.obj:swin32/%.cpp $(CXX) -c $(CPPFLAGS) $(patsubst %.obj,swin32/%.cpp,$@) depend: $(CXX) -M $(CPPFLAGS) $(patsubst %.o,%.cpp,$(OBJS)) > .depend clean: rm -f *.o *.obj */*.o */*.obj $(TARGET) install: ifeq (.depend, $(wildcard .depend)) include .depend endif ./swindow/SFontImpl.h0000644000175000017500000000450411053412523014552 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontImpl_h #define SFontImpl_h #include "swindow/SCanvas.h" #include "swindow/SPen.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SProperties.h" #include "stoolkit/SObject.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SFontImpl : public SObject { public: SFontImpl (const SString& name, const SString& encoding); SFontImpl (const SFontImpl& ff); SFontImpl operator= (const SFontImpl& ff); virtual ~SFontImpl (); static void setPath (const SStringVector& path); static void guessPath(const SStringVector& files, const SString& property); static void guessPath(); virtual SObject* clone() const; void scale (double x, double y); bool draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 uch, bool isLRContext); bool width (SS_UCS4 uch, double* width); double width () const; double ascent () const; double descent () const; double gap () const; bool isTTF() const; bool isLeftAligned(SS_UCS4 uch) const; void setAttributes (const SProperties& properties); bool isLR () const { return lrFont; } bool isRL () const { return rlFont; } bool needSoftMirror (SS_UCS4 uch, bool isLRContext) const; /* set the base character for better glyph positioning */ static void setBase(SS_UCS4 base); private: void createSaneXLFD (); SString xlfd; SString name; SString encoding; SS_Matrix2D matrix; bool lrFont; bool rlFont; void* delegate; }; #endif /* SFontImpl_h */ ./swindow/SScriptProcessor.h0000644000175000017500000000724110434025606016173 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /*! * \file SScriptProcessor.h * \brief Script Processing routines. * \author: Gaspar Sinai * \version: 2000-04-23 */ #ifndef ScriptProcessor_h #define ScriptProcessor_h #include "swindow/SFontLookup.h" #include "stoolkit/SRendClass.h" /*! * \class SScriptProcessor * \brief A script processor that enables font-dependent * processing of characters in a font-independent way. * * The input is the unicode character cluster and the * output is the unscaled with, glyph list and * the position of the glyphs in the list. * * All Yudit script processing routines should go into * this class after collecting them. Currently they are * scattered all over the place. */ class SScriptProcessor { public: enum SScriptCode { SC_NONE=0, SC_DEVANAGARI, SC_BENGALI, SC_GURMUKHI, SC_GUJARATI, SC_ORIYA, SC_TAMIL, SC_TELUGU, SC_KANNADA, SC_MALAYALAM, SC_SINHALA, // Not done SC_THAI, SC_LAO, SC_TIBETAN, SC_JAMO, SC_MAX }; SScriptProcessor (SFontLookup* font); ~SScriptProcessor (void); unsigned int put (const SS_UCS4* in, unsigned int len, bool is_begin); void apply(); const SV_GlyphIndex& getGlyphs () const; const SV_INT& getPositions () const; int getWidth () const; bool isSupported (SS_UCS4 c) const; static void support (bool on); static void doInit (bool on); protected: /* generic */ void decompose (); void reorder (); void reorderIndic (); void reorderStraight (); bool gindex (); void gsub (const char* feature); void gsubclean(); void gposInit(); void gpos (const char* feature); void gposFinal(); /* util */ unsigned int findBaseConsonant(); // 1 based. unsigned int findLastConsonant(); // 1 based. void replaceIn (unsigned int from, unsigned int until, const SS_UCS4* with, unsigned int size); void replaceOut (unsigned int from, unsigned int until, SS_GlyphIndex* with, unsigned int size); /* input */ SV_UCS4 m_in; SV_UCS4 m_orig; /* output */ SV_GlyphIndex m_out; int m_width; SV_INT m_positions; bool m_is_begin; protected: SBinVector m_out_type; bool allowed (const char* sub, SRendClass::RType st); void debugIn(const char* message) const; void debugOut(const char* message) const; void debugInOut(const char* message) const; void debugPos(const char* message) const; void debugDeltaPos(const char* message) const; /* temporary */ SV_INT m_xpos; SV_INT m_ypos; SV_UINT m_pos_base_index; /* reordering */ SBinVector m_reorder_guide; SS_UCS4 m_ra; bool m_script_has_reph; SScriptCode m_script; const char* m_otfScript; /* an abstract font lookup */ SFontLookup* m_font; }; #endif /* ScriptProcessor_h */ ./swindow/SFontFB.cpp0000644000175000017500000007470110726176505014516 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFontFB.h" #include /** * The following is from freeware 'dixon.zip' font at * http://www.brockmeiers.de/fonts/ */ #define SD_BOXR 10 #define SD_BWIDTH (fb_width*SD_BOXR/400) //static short fb_ascent=728; //static short fb_descent=210; static short fb_doffset=210; static short fb_aoffset=728; /* we will draw with fb_aoffset ascender but pretend it is 0 */ static short fb_ascent=fb_aoffset+fb_doffset; static short fb_descent=0; //static double fb_scale=0.001 * (728.0/ (728.0+210.0)); static double fb_scale= 1.0/( + double(fb_ascent) * (1.0 + double (SD_BOXR) / 50)); //static double fb_scale=0.001; static double fb_height = 728.0+210.0; //static double fb_scale=0.001; //static short fb_gap=150; static short fb_gap=0; static short fb_width=721; #define SD_BEGIN_GLYPH 32000 #define SD_MOVE_TO 32001 #define SD_LINE_TO 32002 #define SD_CURVE_TO 32003 #define SD_CLOSE_PATH 32004 #define SD_END_GLYPH 32005 /** * The first number after the SD_BEGIN_GLYPH is the width * don't worry we just use fb_width to scale. */ short fb_box[] = { SD_BEGIN_GLYPH, 721, /* width as in U+0030 '0'*/ SD_MOVE_TO, -fb_width*SD_BOXR/200 - SD_BWIDTH, -100 - SD_BWIDTH, SD_LINE_TO, 719 + fb_width*SD_BOXR/200 + SD_BWIDTH, -100 - SD_BWIDTH, SD_LINE_TO, 719 + fb_width*SD_BOXR/200 + SD_BWIDTH, 726 + SD_BWIDTH, SD_LINE_TO, -fb_width*SD_BOXR/200 - SD_BWIDTH, 726 + SD_BWIDTH, SD_CLOSE_PATH, /* reversed rotation because ghsotscript did not like it. */ SD_MOVE_TO, -fb_width*SD_BOXR/200 + 2, -100, SD_LINE_TO, -fb_width*SD_BOXR/200 + 2, 726, SD_LINE_TO, 719 + fb_width*SD_BOXR/200 , 726, SD_LINE_TO, 719 + fb_width*SD_BOXR/200 , -100, SD_CLOSE_PATH, SD_END_GLYPH }; /* linefeed */ short fb_lf[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 700, 300, SD_LINE_TO, 700, 0, SD_LINE_TO, 300, 0, SD_LINE_TO, 300, -100, SD_LINE_TO, 50, 25, SD_LINE_TO, 300, 150, SD_LINE_TO, 300, 50, SD_LINE_TO, 650, 50, SD_LINE_TO, 650, 300, SD_CLOSE_PATH, SD_END_GLYPH }; /* line separator */ short fb_ls[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 700, 300, SD_LINE_TO, 700, 0, SD_LINE_TO, 100, 0, SD_LINE_TO, 100, 50, SD_LINE_TO, 300, 50, SD_LINE_TO, 650, 50, SD_LINE_TO, 650, 300, SD_CLOSE_PATH, SD_END_GLYPH }; /* form feed */ short fb_ff[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 700, 300, SD_LINE_TO, 700, 0, SD_LINE_TO, 100, 0, SD_LINE_TO, 100, 300, SD_CLOSE_PATH, SD_END_GLYPH }; /* crlf */ short fb_crlf[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 700, 300, SD_LINE_TO, 700, 0, SD_LINE_TO, 300, 0, SD_LINE_TO, 300, -100, SD_LINE_TO, 50, 25, SD_LINE_TO, 300, 150, SD_LINE_TO, 300, 50, SD_LINE_TO, 450, 50, SD_LINE_TO, 450, 300, SD_LINE_TO, 500, 300, SD_LINE_TO, 500, 50, SD_LINE_TO, 650, 50, SD_LINE_TO, 650, 300, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_cr[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 500, 300, SD_LINE_TO, 500, 0, SD_LINE_TO, 300, 0, SD_LINE_TO, 300, -100, SD_LINE_TO, 50, 25, SD_LINE_TO, 300, 150, SD_LINE_TO, 300, 50, SD_LINE_TO, 450, 50, SD_LINE_TO, 450, 300, SD_CLOSE_PATH, SD_END_GLYPH }; /* Paragraph Separator */ short fb_ps[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 700, 700, SD_LINE_TO, 700, 0, SD_LINE_TO, 300, 0, SD_LINE_TO, 300, -100, SD_LINE_TO, 50, 25, SD_LINE_TO, 300, 150, SD_LINE_TO, 300, 50, SD_LINE_TO, 650, 50, SD_LINE_TO, 650, 700, SD_CLOSE_PATH, SD_END_GLYPH }; /* LRM */ short fb_lrm[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 720-500, 300, SD_LINE_TO, 720-300, 300, SD_LINE_TO, 720-300, 200, SD_LINE_TO, 720-50, 325, SD_LINE_TO, 720-300, 450, SD_LINE_TO, 720-300, 350, SD_LINE_TO, 720-500, 350, SD_CLOSE_PATH, SD_END_GLYPH }; /* RLM */ short fb_rlm[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 500, 300, SD_LINE_TO, 300, 300, SD_LINE_TO, 300, 200, SD_LINE_TO, 50, 325, SD_LINE_TO, 300, 450, SD_LINE_TO, 300, 350, SD_LINE_TO, 500, 350, SD_CLOSE_PATH, SD_END_GLYPH }; /* ZWNJ */ short fb_zwnj[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 550, 325, SD_LINE_TO, 400, 200, SD_LINE_TO, 400, 300, SD_LINE_TO, 250, 300, SD_LINE_TO, 250, 200, SD_LINE_TO, 100, 325, SD_LINE_TO, 250, 450, SD_LINE_TO, 250, 350, SD_LINE_TO, 400, 350, SD_LINE_TO, 400, 450, SD_CLOSE_PATH, SD_END_GLYPH }; /* ZWJ */ short fb_zwj[] = { SD_BEGIN_GLYPH, 721, /* width */ SD_MOVE_TO, 550, 200, SD_LINE_TO, 400, 300, SD_LINE_TO, 250, 300, SD_LINE_TO, 100, 200, SD_LINE_TO, 100, 450, SD_LINE_TO, 250, 350, SD_LINE_TO, 400, 350, SD_LINE_TO, 550, 450, SD_CLOSE_PATH, SD_END_GLYPH }; /** * The first number after the SD_BEGIN_GLYPH is the width */ short fb_box2x[] = { SD_BEGIN_GLYPH, 1442, /* U+0030 '0'*/ SD_MOVE_TO, -fb_width*SD_BOXR/200 - SD_BWIDTH, -100 - SD_BWIDTH, SD_LINE_TO, 719*2 + fb_width*SD_BOXR/200 + SD_BWIDTH, -100 - SD_BWIDTH, SD_LINE_TO, 719*2 + fb_width*SD_BOXR/200 + SD_BWIDTH, 726 + SD_BWIDTH, SD_LINE_TO, -fb_width*SD_BOXR/200 - SD_BWIDTH, 726 + SD_BWIDTH, SD_CLOSE_PATH, SD_MOVE_TO, -fb_width*SD_BOXR/200 + 2, -100, SD_LINE_TO, -fb_width*SD_BOXR/200 + 2, 726, SD_LINE_TO, 719*2 + fb_width*SD_BOXR/200, 726, SD_LINE_TO, 719*2 + fb_width*SD_BOXR/200, -100, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_0[] = { SD_BEGIN_GLYPH, 555, /* U+0030 '0'*/ SD_MOVE_TO, 43, 355, SD_CURVE_TO, 43, 595, 122, 717, 277, 717, SD_CURVE_TO, 431, 717, 510, 594, 510, 352, SD_CURVE_TO, 510, 109, 431, -12, 277, -12, SD_CURVE_TO, 183, -12, 113, 35, 77, 125, SD_CURVE_TO, 54, 183, 43, 255, 43, 354, SD_CLOSE_PATH, SD_MOVE_TO, 133, 353, SD_CURVE_TO, 133, 263, 141, 194, 159, 148, SD_CURVE_TO, 177, 93, 223, 59, 277, 59, SD_CURVE_TO, 329, 59, 372, 93, 394, 148, SD_CURVE_TO, 411, 194, 420, 264, 420, 352, SD_CURVE_TO, 420, 440, 411, 507, 394, 555, SD_CURVE_TO, 375, 611, 329, 645, 276, 645, SD_CURVE_TO, 178, 645, 133, 553, 133, 352, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_1[] = { SD_BEGIN_GLYPH, 555, /* U+0031 '1'*/ SD_MOVE_TO, 286, 0, SD_LINE_TO, 286, 560, SD_CURVE_TO, 282, 556, 277, 553, 275, 549, SD_CURVE_TO, 268, 545, 262, 539, 256, 535, SD_CURVE_TO, 236, 519, 213, 502, 177, 484, SD_CURVE_TO, 158, 474, 147, 468, 135, 463, SD_CURVE_TO, 132, 461, 129, 460, 125, 459, SD_CURVE_TO, 121, 456, 115, 455, 110, 453, SD_LINE_TO, 110, 538, SD_CURVE_TO, 194, 576, 266, 636, 305, 695, SD_CURVE_TO, 309, 701, 313, 710, 317, 717, SD_LINE_TO, 374, 718, SD_LINE_TO, 374, 0, SD_LINE_TO, 286, 0, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_2[] = { SD_BEGIN_GLYPH, 555, /* U+0032 '2' */ SD_MOVE_TO, 28, 0, SD_CURVE_TO, 32, 25, 34, 41, 41, 59, SD_CURVE_TO, 43, 67, 48, 74, 52, 84, SD_CURVE_TO, 78, 138, 123, 192, 197, 250, SD_LINE_TO, 231, 278, SD_CURVE_TO, 364, 382, 413, 451, 413, 521, SD_CURVE_TO, 413, 591, 356, 645, 278, 645, SD_CURVE_TO, 192, 645, 138, 593, 138, 507, SD_CURVE_TO, 138, 505, 138, 503, 138, 501, SD_LINE_TO, 48, 511, SD_CURVE_TO, 60, 643, 141, 717, 280, 717, SD_CURVE_TO, 412, 717, 503, 636, 503, 519, SD_CURVE_TO, 503, 497, 499, 478, 494, 457, SD_CURVE_TO, 474, 394, 421, 331, 327, 251, SD_LINE_TO, 255, 191, SD_CURVE_TO, 208, 151, 183, 126, 165, 101, SD_CURVE_TO, 161, 95, 157, 89, 153, 83, SD_LINE_TO, 504, 84, SD_LINE_TO, 504, 0, SD_LINE_TO, 28, 0, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_3[] = { SD_BEGIN_GLYPH, 555, /* U+0033 '3' */ SD_MOVE_TO, 43, 189, SD_LINE_TO, 132, 200, SD_CURVE_TO, 133, 177, 136, 166, 142, 154, SD_CURVE_TO, 143, 148, 147, 142, 150, 136, SD_CURVE_TO, 171, 85, 218, 59, 272, 59, SD_CURVE_TO, 354, 59, 419, 124, 419, 208, SD_CURVE_TO, 419, 289, 360, 347, 279, 347, SD_CURVE_TO, 275, 347, 271, 347, 269, 347, SD_CURVE_TO, 253, 347, 238, 346, 217, 338, SD_LINE_TO, 227, 415, SD_CURVE_TO, 231, 413, 233, 414, 236, 414, SD_CURVE_TO, 237, 414, 239, 414, 241, 414, SD_CURVE_TO, 327, 414, 387, 463, 387, 533, SD_CURVE_TO, 387, 598, 338, 645, 270, 645, SD_CURVE_TO, 199, 645, 153, 598, 140, 516, SD_LINE_TO, 52, 533, SD_CURVE_TO, 74, 650, 152, 717, 267, 717, SD_CURVE_TO, 385, 717, 477, 637, 477, 531, SD_CURVE_TO, 477, 465, 441, 416, 379, 386, SD_CURVE_TO, 401, 382, 415, 377, 429, 369, SD_CURVE_TO, 433, 366, 438, 364, 442, 360, SD_CURVE_TO, 486, 328, 512, 272, 512, 210, SD_CURVE_TO, 512, 83, 408, -12, 272, -12, SD_CURVE_TO, 146, -12, 60, 68, 43, 188, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_4[] = { SD_BEGIN_GLYPH, 555, /* U+0034 '4' */ SD_MOVE_TO, 325, 0, SD_LINE_TO, 325, 171, SD_LINE_TO, 14, 171, SD_LINE_TO, 14, 252, SD_LINE_TO, 341, 715, SD_LINE_TO, 413, 715, SD_LINE_TO, 413, 252, SD_LINE_TO, 510, 252, SD_LINE_TO, 510, 171, SD_LINE_TO, 413, 171, SD_LINE_TO, 413, 0, SD_LINE_TO, 325, 0, SD_CLOSE_PATH, SD_MOVE_TO, 325, 252, SD_LINE_TO, 325, 574, SD_LINE_TO, 101, 252, SD_LINE_TO, 325, 252, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_5[] = { SD_BEGIN_GLYPH, 555, /* U+0035 '5' */ SD_MOVE_TO, 43, 187, SD_LINE_TO, 135, 195, SD_CURVE_TO, 149, 107, 198, 58, 273, 58, SD_CURVE_TO, 361, 58, 425, 131, 425, 233, SD_CURVE_TO, 425, 331, 364, 396, 272, 396, SD_CURVE_TO, 217, 396, 169, 368, 141, 326, SD_LINE_TO, 59, 338, SD_LINE_TO, 128, 706, SD_LINE_TO, 484, 706, SD_LINE_TO, 484, 622, SD_LINE_TO, 198, 622, SD_LINE_TO, 160, 429, SD_CURVE_TO, 190, 450, 225, 464, 260, 470, SD_CURVE_TO, 272, 472, 283, 473, 295, 473, SD_CURVE_TO, 423, 473, 518, 375, 518, 241, SD_CURVE_TO, 518, 94, 415, -12, 273, -12, SD_CURVE_TO, 143, -12, 55, 64, 43, 186, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_6[] = { SD_BEGIN_GLYPH, 555, /* U+0036 '6' */ SD_MOVE_TO, 127, 369, SD_CURVE_TO, 132, 375, 136, 381, 140, 387, SD_CURVE_TO, 145, 393, 149, 398, 156, 404, SD_CURVE_TO, 160, 408, 163, 412, 169, 416, SD_CURVE_TO, 202, 444, 246, 460, 289, 463, SD_CURVE_TO, 293, 463, 296, 463, 300, 463, SD_CURVE_TO, 421, 463, 512, 364, 512, 231, SD_CURVE_TO, 512, 88, 418, -12, 288, -12, SD_CURVE_TO, 196, -12, 115, 36, 78, 114, SD_CURVE_TO, 51, 171, 39, 238, 39, 333, SD_CURVE_TO, 39, 585, 128, 717, 296, 717, SD_CURVE_TO, 409, 717, 485, 651, 499, 539, SD_LINE_TO, 412, 533, SD_CURVE_TO, 402, 605, 361, 645, 295, 645, SD_CURVE_TO, 231, 645, 182, 610, 157, 546, SD_CURVE_TO, 146, 518, 137, 482, 132, 448, SD_CURVE_TO, 128, 424, 126, 402, 126, 381, SD_CURVE_TO, 126, 379, 125, 377, 127, 375, SD_CURVE_TO, 127, 373, 127, 370, 127, 368, SD_CLOSE_PATH, SD_MOVE_TO, 140, 233, SD_CURVE_TO, 140, 134, 204, 59, 286, 59, SD_CURVE_TO, 364, 59, 422, 129, 422, 225, SD_CURVE_TO, 422, 319, 365, 385, 283, 385, SD_CURVE_TO, 201, 385, 140, 320, 140, 232, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_7[] = { SD_BEGIN_GLYPH, 555, /* U+0037 '7' */ SD_MOVE_TO, 149, 0, SD_CURVE_TO, 150, 70, 167, 161, 197, 251, SD_CURVE_TO, 206, 281, 217, 312, 231, 343, SD_CURVE_TO, 249, 387, 267, 425, 290, 463, SD_CURVE_TO, 304, 489, 322, 516, 342, 546, SD_CURVE_TO, 354, 564, 364, 576, 372, 587, SD_CURVE_TO, 373, 589, 374, 590, 376, 592, SD_CURVE_TO, 382, 601, 390, 609, 400, 621, SD_LINE_TO, 49, 622, SD_LINE_TO, 49, 706, SD_LINE_TO, 513, 706, SD_LINE_TO, 513, 638, SD_CURVE_TO, 422, 546, 356, 442, 310, 314, SD_CURVE_TO, 299, 284, 290, 255, 281, 225, SD_CURVE_TO, 258, 145, 244, 65, 240, 0, SD_LINE_TO, 149, 0, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_8[] = { SD_BEGIN_GLYPH, 555, /* U+0038 '8' */ SD_MOVE_TO, 178, 388, SD_CURVE_TO, 156, 392, 145, 399, 133, 407, SD_CURVE_TO, 130, 409, 127, 412, 123, 415, SD_CURVE_TO, 89, 440, 71, 485, 71, 532, SD_CURVE_TO, 71, 641, 155, 717, 277, 717, SD_CURVE_TO, 397, 717, 485, 639, 485, 530, SD_CURVE_TO, 485, 460, 448, 415, 379, 387, SD_CURVE_TO, 404, 380, 418, 373, 432, 364, SD_CURVE_TO, 437, 360, 440, 357, 446, 353, SD_CURVE_TO, 488, 319, 514, 264, 514, 203, SD_CURVE_TO, 514, 77, 415, -12, 278, -12, SD_CURVE_TO, 140, -12, 42, 78, 42, 205, SD_CURVE_TO, 42, 267, 66, 320, 108, 354, SD_CURVE_TO, 113, 358, 117, 361, 123, 365, SD_CURVE_TO, 137, 374, 151, 381, 178, 387, SD_CLOSE_PATH, SD_MOVE_TO, 132, 205, SD_CURVE_TO, 132, 121, 195, 59, 279, 59, SD_CURVE_TO, 363, 59, 424, 119, 424, 202, SD_CURVE_TO, 424, 287, 361, 349, 276, 349, SD_CURVE_TO, 194, 349, 132, 286, 132, 204, SD_CLOSE_PATH, SD_MOVE_TO, 161, 534, SD_CURVE_TO, 161, 467, 211, 421, 278, 421, SD_CURVE_TO, 344, 421, 394, 468, 394, 531, SD_CURVE_TO, 394, 596, 343, 645, 277, 645, SD_CURVE_TO, 211, 645, 161, 597, 161, 533, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_9[] = { SD_BEGIN_GLYPH, 555, /* U+0039 '9' */ SD_MOVE_TO, 56, 165, SD_LINE_TO, 141, 173, SD_CURVE_TO, 155, 94, 192, 58, 260, 58, SD_CURVE_TO, 314, 58, 360, 86, 386, 136, SD_CURVE_TO, 406, 174, 420, 227, 424, 279, SD_CURVE_TO, 425, 292, 426, 304, 426, 318, SD_CURVE_TO, 426, 322, 426, 328, 426, 336, SD_CURVE_TO, 388, 278, 324, 241, 255, 241, SD_CURVE_TO, 132, 241, 43, 340, 43, 476, SD_CURVE_TO, 43, 617, 136, 717, 268, 717, SD_CURVE_TO, 340, 717, 404, 685, 448, 631, SD_CURVE_TO, 494, 573, 514, 497, 514, 371, SD_CURVE_TO, 514, 245, 498, 169, 460, 101, SD_CURVE_TO, 418, 26, 346, -12, 258, -12, SD_CURVE_TO, 144, -12, 70, 50, 56, 164, SD_CLOSE_PATH, SD_MOVE_TO, 133, 479, SD_CURVE_TO, 133, 383, 190, 319, 273, 319, SD_CURVE_TO, 355, 319, 416, 383, 416, 473, SD_CURVE_TO, 416, 569, 352, 645, 271, 645, SD_CURVE_TO, 191, 645, 133, 575, 133, 478, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_A[] = { SD_BEGIN_GLYPH, 666, /* U+0041 'A' */ SD_MOVE_TO, -1, 0, SD_LINE_TO, 273, 715, SD_LINE_TO, 375, 715, SD_LINE_TO, 668, 0, SD_LINE_TO, 560, 0, SD_LINE_TO, 477, 216, SD_LINE_TO, 178, 216, SD_LINE_TO, 99, 0, SD_LINE_TO, -1, 0, SD_CLOSE_PATH, SD_MOVE_TO, 205, 294, SD_LINE_TO, 447, 294, SD_LINE_TO, 373, 492, SD_LINE_TO, 322, 640, SD_LINE_TO, 283, 504, SD_LINE_TO, 205, 294, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_B[] = { SD_BEGIN_GLYPH, 666, /* U+0042 'B' */ SD_MOVE_TO, 73, 0, SD_LINE_TO, 73, 715, SD_LINE_TO, 342, 715, SD_CURVE_TO, 442, 713, 499, 693, 541, 639, SD_CURVE_TO, 559, 613, 574, 582, 578, 550, SD_CURVE_TO, 578, 543, 579, 537, 579, 531, SD_CURVE_TO, 579, 465, 544, 407, 479, 379, SD_CURVE_TO, 565, 353, 613, 291, 613, 205, SD_CURVE_TO, 613, 123, 569, 52, 501, 23, SD_CURVE_TO, 497, 21, 492, 19, 488, 18, SD_CURVE_TO, 449, 3, 411, 0, 345, 0, SD_LINE_TO, 73, 0, SD_CLOSE_PATH, SD_MOVE_TO, 168, 84, SD_LINE_TO, 346, 84, SD_CURVE_TO, 392, 82, 412, 84, 432, 91, SD_CURVE_TO, 438, 92, 447, 96, 455, 100, SD_CURVE_TO, 493, 117, 516, 158, 516, 205, SD_CURVE_TO, 516, 255, 489, 296, 447, 314, SD_CURVE_TO, 440, 316, 434, 318, 428, 321, SD_CURVE_TO, 406, 327, 383, 329, 333, 329, SD_LINE_TO, 168, 330, SD_LINE_TO, 168, 84, SD_CLOSE_PATH, SD_MOVE_TO, 168, 414, SD_LINE_TO, 323, 414, SD_CURVE_TO, 372, 412, 393, 414, 413, 421, SD_CURVE_TO, 419, 423, 424, 425, 431, 428, SD_CURVE_TO, 465, 442, 486, 477, 486, 519, SD_CURVE_TO, 486, 568, 460, 607, 422, 619, SD_CURVE_TO, 396, 625, 365, 630, 311, 630, SD_LINE_TO, 168, 631, SD_LINE_TO, 168, 414, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_C[] = { SD_BEGIN_GLYPH, 721, /* U+0043 'C' */ SD_MOVE_TO, 589, 250, SD_LINE_TO, 683, 226, SD_CURVE_TO, 644, 72, 537, -12, 387, -12, SD_CURVE_TO, 243, -12, 146, 43, 93, 159, SD_CURVE_TO, 65, 221, 51, 290, 51, 362, SD_CURVE_TO, 51, 583, 183, 727, 389, 727, SD_CURVE_TO, 531, 727, 632, 652, 671, 518, SD_LINE_TO, 578, 497, SD_CURVE_TO, 542, 598, 485, 645, 387, 645, SD_CURVE_TO, 236, 645, 148, 540, 148, 362, SD_CURVE_TO, 148, 175, 233, 67, 379, 67, SD_CURVE_TO, 489, 67, 566, 131, 589, 249, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_D[] = { SD_BEGIN_GLYPH, 721, /* U+0044 'D' */ SD_MOVE_TO, 78, 0, SD_LINE_TO, 78, 715, SD_LINE_TO, 325, 715, SD_CURVE_TO, 399, 713, 434, 711, 469, 701, SD_CURVE_TO, 481, 697, 491, 692, 505, 686, SD_CURVE_TO, 533, 674, 561, 653, 583, 627, SD_CURVE_TO, 640, 559, 670, 472, 670, 362, SD_CURVE_TO, 670, 206, 614, 85, 517, 35, SD_CURVE_TO, 511, 32, 505, 29, 499, 27, SD_CURVE_TO, 455, 7, 410, 0, 336, 0, SD_LINE_TO, 78, 0, SD_CLOSE_PATH, SD_MOVE_TO, 173, 84, SD_LINE_TO, 325, 84, SD_CURVE_TO, 395, 82, 435, 90, 469, 110, SD_CURVE_TO, 535, 150, 572, 236, 572, 362, SD_CURVE_TO, 572, 447, 557, 503, 523, 553, SD_CURVE_TO, 508, 575, 485, 595, 463, 607, SD_CURVE_TO, 456, 609, 450, 613, 445, 615, SD_CURVE_TO, 417, 627, 388, 630, 323, 630, SD_LINE_TO, 173, 631, SD_LINE_TO, 173, 84, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_E[] = { SD_BEGIN_GLYPH, 666, /* U+0045 'E' */ SD_MOVE_TO, 79, 0, SD_LINE_TO, 79, 715, SD_LINE_TO, 596, 715, SD_LINE_TO, 596, 631, SD_LINE_TO, 174, 631, SD_LINE_TO, 174, 412, SD_LINE_TO, 569, 412, SD_LINE_TO, 569, 328, SD_LINE_TO, 174, 328, SD_LINE_TO, 174, 84, SD_LINE_TO, 613, 84, SD_LINE_TO, 613, 0, SD_LINE_TO, 79, 0, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_F[] = { SD_BEGIN_GLYPH, 610, /* U+0046 'F' */ SD_MOVE_TO, 80, 0, SD_LINE_TO, 80, 715, SD_LINE_TO, 563, 715, SD_LINE_TO, 563, 631, SD_LINE_TO, 175, 631, SD_LINE_TO, 175, 409, SD_LINE_TO, 510, 409, SD_LINE_TO, 510, 325, SD_LINE_TO, 175, 325, SD_LINE_TO, 175, 0, SD_LINE_TO, 80, 0, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_a[] = { SD_BEGIN_GLYPH, 555, /* U+0061 'a' */ SD_MOVE_TO, 406, 64, SD_CURVE_TO, 391, 50, 376, 39, 363, 31, SD_CURVE_TO, 316, 0, 269, -11, 215, -11, SD_CURVE_TO, 107, -11, 38, 45, 38, 135, SD_CURVE_TO, 38, 207, 83, 261, 162, 283, SD_CURVE_TO, 167, 284, 172, 285, 176, 287, SD_CURVE_TO, 184, 288, 190, 289, 201, 292, SD_CURVE_TO, 210, 293, 223, 295, 241, 297, SD_CURVE_TO, 274, 301, 304, 305, 330, 312, SD_CURVE_TO, 358, 317, 380, 324, 398, 327, SD_CURVE_TO, 399, 335, 399, 340, 399, 343, SD_CURVE_TO, 399, 347, 399, 349, 399, 351, SD_CURVE_TO, 399, 425, 360, 456, 274, 456, SD_CURVE_TO, 191, 456, 157, 431, 139, 358, SD_LINE_TO, 53, 370, SD_CURVE_TO, 55, 394, 60, 408, 68, 422, SD_CURVE_TO, 70, 426, 73, 430, 76, 436, SD_CURVE_TO, 112, 496, 182, 529, 285, 529, SD_CURVE_TO, 387, 529, 453, 499, 475, 442, SD_CURVE_TO, 476, 436, 478, 431, 480, 426, SD_CURVE_TO, 485, 406, 487, 385, 487, 333, SD_LINE_TO, 487, 217, SD_CURVE_TO, 487, 111, 487, 85, 493, 60, SD_CURVE_TO, 493, 57, 493, 53, 495, 51, SD_CURVE_TO, 497, 39, 500, 32, 504, 24, SD_CURVE_TO, 506, 16, 509, 9, 515, 0, SD_LINE_TO, 423, 0, SD_CURVE_TO, 420, 2, 418, 7, 417, 13, SD_CURVE_TO, 411, 27, 408, 41, 406, 63, SD_CLOSE_PATH, SD_MOVE_TO, 398, 260, SD_CURVE_TO, 392, 257, 387, 254, 381, 253, SD_CURVE_TO, 350, 242, 305, 232, 255, 226, SD_CURVE_TO, 161, 214, 131, 190, 131, 138, SD_CURVE_TO, 131, 87, 172, 56, 236, 56, SD_CURVE_TO, 286, 56, 330, 73, 360, 104, SD_CURVE_TO, 361, 105, 363, 107, 365, 109, SD_CURVE_TO, 390, 138, 398, 167, 398, 226, SD_LINE_TO, 398, 260, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_b[] = { SD_BEGIN_GLYPH, 555, /* U+0062 'b' */ SD_MOVE_TO, 148, 0, SD_LINE_TO, 67, 0, SD_LINE_TO, 67, 715, SD_LINE_TO, 155, 715, SD_LINE_TO, 155, 460, SD_CURVE_TO, 193, 502, 238, 529, 297, 529, SD_CURVE_TO, 429, 529, 516, 423, 516, 266, SD_CURVE_TO, 516, 100, 425, -11, 292, -11, SD_CURVE_TO, 232, -11, 182, 13, 148, 64, SD_LINE_TO, 148, 0, SD_CLOSE_PATH, SD_MOVE_TO, 147, 263, SD_CURVE_TO, 147, 256, 147, 252, 147, 248, SD_CURVE_TO, 147, 130, 199, 59, 285, 59, SD_CURVE_TO, 371, 59, 426, 136, 426, 258, SD_CURVE_TO, 426, 380, 374, 456, 289, 456, SD_CURVE_TO, 203, 456, 152, 384, 147, 262, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_c[] = { SD_BEGIN_GLYPH, 499, /* U+0063 'c' */ SD_MOVE_TO, 404, 189, SD_LINE_TO, 490, 178, SD_CURVE_TO, 470, 59, 390, -11, 274, -11, SD_CURVE_TO, 127, -11, 38, 88, 38, 256, SD_CURVE_TO, 38, 426, 127, 529, 275, 529, SD_CURVE_TO, 349, 529, 414, 498, 450, 448, SD_CURVE_TO, 454, 441, 458, 436, 461, 430, SD_CURVE_TO, 471, 412, 478, 395, 482, 365, SD_LINE_TO, 396, 352, SD_CURVE_TO, 378, 418, 340, 456, 278, 456, SD_CURVE_TO, 182, 456, 129, 384, 129, 258, SD_CURVE_TO, 129, 130, 179, 59, 273, 59, SD_CURVE_TO, 323, 59, 368, 86, 388, 128, SD_CURVE_TO, 390, 133, 393, 139, 395, 143, SD_CURVE_TO, 400, 155, 404, 165, 404, 188, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_d[] = { SD_BEGIN_GLYPH, 555, /* U+0064 'd' */ SD_MOVE_TO, 404, 0, SD_LINE_TO, 404, 65, SD_CURVE_TO, 370, 13, 321, -11, 259, -11, SD_CURVE_TO, 128, -11, 36, 99, 36, 257, SD_CURVE_TO, 36, 423, 121, 529, 255, 529, SD_CURVE_TO, 313, 529, 364, 503, 398, 457, SD_LINE_TO, 398, 715, SD_LINE_TO, 486, 715, SD_LINE_TO, 486, 0, SD_LINE_TO, 404, 0, SD_CLOSE_PATH, SD_MOVE_TO, 126, 258, SD_CURVE_TO, 126, 136, 181, 59, 267, 59, SD_CURVE_TO, 353, 59, 405, 132, 405, 250, SD_CURVE_TO, 405, 379, 352, 456, 263, 456, SD_CURVE_TO, 177, 456, 126, 382, 126, 257, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_e[] = { SD_BEGIN_GLYPH, 555, /* U+0065 'e' */ SD_MOVE_TO, 422, 166, SD_LINE_TO, 513, 155, SD_CURVE_TO, 483, 45, 403, -11, 285, -11, SD_CURVE_TO, 131, -11, 38, 87, 38, 253, SD_CURVE_TO, 38, 422, 132, 529, 280, 529, SD_CURVE_TO, 424, 529, 516, 423, 516, 259, SD_CURVE_TO, 516, 253, 516, 245, 516, 235, SD_LINE_TO, 129, 236, SD_CURVE_TO, 135, 125, 194, 59, 285, 59, SD_CURVE_TO, 353, 59, 400, 93, 422, 165, SD_CLOSE_PATH, SD_MOVE_TO, 134, 309, SD_LINE_TO, 423, 309, SD_CURVE_TO, 423, 309, 423, 310, 423, 312, SD_CURVE_TO, 423, 313, 423, 314, 423, 316, SD_CURVE_TO, 423, 334, 420, 345, 416, 356, SD_CURVE_TO, 414, 361, 412, 366, 410, 373, SD_CURVE_TO, 391, 423, 338, 456, 281, 456, SD_CURVE_TO, 199, 456, 139, 396, 134, 308, SD_CLOSE_PATH, SD_END_GLYPH }; short fb_f[] = { SD_BEGIN_GLYPH, 277, /* U+0066 'f' */ SD_MOVE_TO, 85, 0, SD_LINE_TO, 85, 450, SD_LINE_TO, 7, 450, SD_LINE_TO, 7, 518, SD_LINE_TO, 85, 518, SD_LINE_TO, 85, 573, SD_CURVE_TO, 85, 618, 88, 638, 99, 660, SD_CURVE_TO, 100, 661, 100, 663, 102, 666, SD_CURVE_TO, 124, 706, 166, 727, 228, 727, SD_CURVE_TO, 236, 727, 243, 727, 251, 727, SD_CURVE_TO, 269, 725, 288, 724, 310, 718, SD_LINE_TO, 297, 642, SD_CURVE_TO, 282, 646, 266, 646, 252, 646, SD_CURVE_TO, 249, 646, 247, 646, 245, 646, SD_CURVE_TO, 190, 646, 172, 626, 172, 565, SD_LINE_TO, 172, 518, SD_LINE_TO, 273, 518, SD_LINE_TO, 273, 450, SD_LINE_TO, 172, 450, SD_LINE_TO, 172, 0, SD_LINE_TO, 85, 0, SD_CLOSE_PATH, SD_END_GLYPH }; #define SD_BOX 16 #define SD_BOX2 17 short* fb_all[] = { fb_0, fb_1, fb_2, fb_3, fb_4, fb_5, fb_6, fb_7, fb_8, fb_9, fb_a, fb_b, fb_c, fb_d, fb_e, fb_f, fb_box, fb_box2x }; /** * @author: Gaspar Sinai * @version: 2000-04-23 * Many parts of this file are originally written by Andrew Weeks. */ SFontFB::SFontFB (void) { tabSize = 2; } SFontFB::~SFontFB () { } void SFontFB::signDraw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SIGN sign, SS_UCS4 g) { /* it fails in ps printing - this fix did not help * refer to SPostscript.cpp SPostscript::newpath */ if (sign == TAB) return; SS_Matrix2D r; SS_Matrix2D f = matrix; f.translate (f.x0 * double (fb_width) * double (SD_BOXR) / 100.0, 0); char a[64]; sprintf (a, "sign=%d\n", (int) sign); SString key (a); key.append ((long)(matrix.x0*16000.0)); key.append ((long)(matrix.y1*16000.0)); //fprintf (stderr, "key=%*.*s\n", SSARGS(key)); if (canvas->newpath (matrix.t0, matrix.t1, key)) { canvas->fill (pen); return; } switch (sign) { case CR: drawOne (canvas, f, fb_cr); break; case LF: drawOne (canvas, f, fb_lf); break; case CRLF: case LFCR: drawOne (canvas, f, fb_crlf); break; case LS: drawOne (canvas, f, fb_ls); break; case FF: drawOne (canvas, f, fb_ff); break; case PS: drawOne (canvas, f, fb_ps); break; case LRM: drawOne (canvas, f, fb_lrm); break; case RLM: drawOne (canvas, f, fb_rlm); break; case FB_ZWNJ: drawOne (canvas, f, fb_zwnj); break; case FB_ZWJ: drawOne (canvas, f, fb_zwj); break; case TAB: break; case CTRL: draw (canvas, pen, matrix, g); break; } canvas->fill (pen); } /** * Draw the non-existent glyph... */ void SFontFB::draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 g) { SS_Matrix2D r; char a[64]; /* FIXME: you should in fact use an instance counter. */ sprintf (a, "%lx ", (unsigned long) this); SString key (a); sprintf (a, "%ul;", g); key.append (a); /* Get the scale factor */ char wh[64]; SS_Matrix2D mtrx = canvas->getCurrentMatrix() * matrix; sprintf (wh, "scale=%g,%g;", mtrx.x0, mtrx.y1); key.append (wh); if (canvas->newpath (matrix.t0, matrix.t1, key)) { canvas->fill (pen); return; } if (g<=0xff) { //r.translate (0, (ascent (r) + descent(r) + gap (r))/0.7); SS_Matrix2D f = matrix; f.translate (f.x0 * double (fb_width) * double (SD_BOXR) / 100.0, 0); drawOne (canvas, f, fb_box); r.scale (0.5, 0.9); r.translate (r.x0 * double (fb_width) * double (SD_BOXR) / 100.0, 2.0 * (double) SD_BOXR); //r.translate (0, (r.y1 * (double)fb_doffset + (double) SD_BOXR)); SS_Matrix2D m = f * r; drawOne (canvas, m, fb_all[g>>4]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[g&0x0f]); } else if (g<=0xffff) { //r.translate (0, (ascent (r) + descent(r) + gap (r))/0.7); SS_Matrix2D f = matrix; f.translate (f.x0 * double (fb_width) * double (SD_BOXR) / 100.0, 0); drawOne (canvas, f, fb_box); r.scale (0.5, 0.4); r.translate (r.x0 * double (fb_width) * double (SD_BOXR) / 100.0, 0); r.translate (0, (r.y1 * (double)fb_doffset + 2.0 * (double) SD_BOXR)); SS_Matrix2D s = r; r.translate (0, (r.y1 * fb_height)); SS_Matrix2D m = f * r; drawOne (canvas, m, fb_all[(g>>12)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g>>8)&0x0f]); m = f * s; //m.translate (0, (m.y1 * double (fb_descent))); drawOne (canvas, m, fb_all[(g>>4)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g)&0x0f]); } else { //r.translate (0, (ascent (r) + descent(r) + gap (r))/0.7); SS_Matrix2D f = matrix; f.translate (f.x0 * double (fb_width) * double (SD_BOXR) / 100.0, 0); drawOne (canvas, f, fb_box2x); r.scale (0.5, 0.4); r.translate (r.x0 * double (fb_width) * double (SD_BOXR) / 100.0, 0); r.translate (0, (r.y1 * (double)fb_doffset + 2.0 * (double) SD_BOXR)); SS_Matrix2D s = r; r.translate (0, r.y1 * fb_height); SS_Matrix2D m = f * r; drawOne (canvas, m, fb_all[(g>>28)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g>>24)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g>>20)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g>>16)&0x0f]); m = f * s; //m.translate (0, (m.y1 * double (fb_descent))); drawOne (canvas, m, fb_all[(g>>12)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g>>8)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g>>4)&0x0f]); m.translate (m.x0 * double (fb_width), 0); drawOne (canvas, m, fb_all[(g)&0x0f]); } canvas->fill (pen); return; } /** * Draw a glyph between 0..15 */ void SFontFB::drawOne (SCanvas* canvas, const SS_Matrix2D& m, short* guide) { unsigned int i=0; short wid; double x, y; double x0, y0; double x1, y1; double x2, y2; while (guide[i] != SD_END_GLYPH) { switch (guide[i]) { case SD_BEGIN_GLYPH: wid = guide[i+1]; i=i+2; break; case SD_MOVE_TO: x = m.x0 * double (guide[i+1]) + m.y0 * double (guide[i+2]+fb_doffset) + m.t0; y = m.x1 * double (guide[i+1]) + m.y1 * double (guide[i+2]+fb_doffset) + m.t1; canvas->moveto (x, y); i = i + 3; break; case SD_LINE_TO: x = m.x0 * double (guide[i+1]) + m.y0 * double (guide[i+2]+fb_doffset) + m.t0; y = m.x1 * double (guide[i+1]) + m.y1 * double (guide[i+2]+fb_doffset) + m.t1; canvas->lineto (x, y); i = i + 3; break; case SD_CURVE_TO: x0 = m.x0 * double (guide[i+1]) + m.y0 * double (guide[i+2]+fb_doffset) + m.t0; y0 = m.x1 * double (guide[i+1]) + m.y1 * double (guide[i+2]+fb_doffset) + m.t1; x1 = m.x0 * double (guide[i+3]) + m.y0 * double (guide[i+4]+fb_doffset) + m.t0; y1 = m.x1 * double (guide[i+3]) + m.y1 * double (guide[i+4]+fb_doffset) + m.t1; x2 = m.x0 * double (guide[i+5]) + m.y0 * double (guide[i+6]+fb_doffset) + m.t0; y2 = m.x1 * double (guide[i+5]) + m.y1 * double (guide[i+6]+fb_doffset) + m.t1; canvas->curveto (x0, y0, x1, y1, x2, y2); i = i + 7; break; case SD_CLOSE_PATH: canvas->closepath (); i = i + 1; break; case SD_END_GLYPH: break; } } } /** * USE tab sizes. */ double SFontFB::signWidth (const SS_Matrix2D& matrix, SIGN s) { double ws = (s==TAB) ? 1.0 * tabSize : 1.0; double r = matrix.x0 * (ws * double (fb_width) + double (fb_width) * double (SD_BOXR) / 25); return (r<0.0) ? -r : r; } double SFontFB::width (const SS_Matrix2D& matrix, SS_UCS4 g) { double ws = (g > 0xffff) ? 2.0 : 1.0; double r = matrix.x0 * (ws * double (fb_width) + double (fb_width) * double (SD_BOXR) / 25); return (r<0.0) ? -r : r; } double SFontFB::width (const SS_Matrix2D& matrix) const { double r = matrix.x0 * double (fb_width)* (1.0 + double (SD_BOXR) / 50); return (r<0.0) ? -r : r; } double SFontFB::ascent (const SS_Matrix2D& matrix) const { double r = matrix.y1 * double (fb_ascent) * (1.0 + double (SD_BOXR) / 50); return (r<0.0) ? -r : r; } double SFontFB::descent (const SS_Matrix2D& matrix) const { double r = matrix.y1 * double (fb_descent) * (1.0 + double (SD_BOXR) / 50); return (r<0.0) ? -r : r; } double SFontFB::gap (const SS_Matrix2D& matrix) const { double r = matrix.y1 * double (fb_gap); return (r<0.0) ? -r : r; } /* mulltiply this with size you want to get the matrix */ double SFontFB::scale () const { return fb_scale; } ./swindow/SPostscript.cpp0000644000175000017500000005045111163173064015537 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SPostscript.h" #include "stoolkit/STypes.h" #include /** * Bitmap font support */ #ifndef USE_WINAPI # if USE_X11 # include # include # include "swindow/SAwt.h" # include "swindow/sx11/SX11Impl.h" # endif #endif /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is a postscript renderer for yudit. */ SPostscript::SPostscript (const SWriter& wr, SMedia m, SOrientation o) : out (wr) { ticks = 0; timer = 0; isUgly = false; cacheIDMapCount = 0; media = m; orientation = o; unsigned int w; unsigned int h; switch (m) { case A3: w = 842; h = 1190; widthMargin = 64; heightMargin = 48; break; case A4: w = 595; h = 842; widthMargin = 64; heightMargin = 48; break; case A5: w = 420; h = 595; widthMargin = 45; heightMargin = 34; break; case B4: w = 792; h = 1032; widthMargin = 64; heightMargin = 48; break; case B5: w = 516; h = 729; widthMargin = 45; heightMargin = 34; break; case Executive: w = 540; h = 720; widthMargin = 64; heightMargin = 48; break; case Folio: w = 612; h = 936; widthMargin = 64; heightMargin = 48; break; case Ledger: w = 980; h = 792; widthMargin = 64; heightMargin = 48; break; case Legal: w = 612; h = 1008; widthMargin = 64; heightMargin = 48; break; case Letter: w = 612; h = 792; widthMargin = 24; heightMargin = 34; break; case Quarto: w = 610; h = 780; widthMargin = 24; heightMargin = 48; break; case Statement: w = 396; h = 612; widthMargin = 24; heightMargin = 48; break; case Tabloid: w = 792; h = 1028; widthMargin = 24; heightMargin = 48; break; default: w = 595; h = 842; widthMargin = 64; heightMargin = 48; } if (o==PORTRAIT) { width = w; height = h; } else { width = h; height = w; } status = true; SS_Matrix2D mat; matrix.append (mat); } SPostscript::~SPostscript() { if (timer) delete timer; } /** * return the margin-stripped width. */ unsigned int SPostscript::getWidth() const { return width - 2 * widthMargin; } /** * return the margin-stripped height. */ unsigned int SPostscript::getHeight() const { return height - 2 * heightMargin; } /** * return the margin stripped X corner. */ int SPostscript::getX() const { return (int) widthMargin; } /** * return the margin stripped Y corner. */ int SPostscript::getY() const { return (int) heightMargin; } /** * Print out the postscript prolog */ bool SPostscript::open (bool background) { isUgly = false; status = true; isCacheOn = true; cache.clear(); cacheCurrent.clear(); cacheIDMapCount = 0; cacheID.clear(); cacheIDMap.clear(); SStringVector head("%!PS-Adobe-3.0"); SString bb("%%BoundingBox: "); switch (orientation) { case LANDSCAPE: bb.print (heightMargin); bb.append (" "); bb.print (widthMargin); bb.append (" "); bb.print (height - heightMargin); bb.append (" "); bb.print (width - widthMargin); head.append (bb); break; case PORTRAIT: default: bb.print (widthMargin); bb.append (" "); bb.print (heightMargin); bb.append (" "); bb.print (width - widthMargin); bb.append (" "); bb.print (height - heightMargin); head.append (bb); break; } head.append ("%%Title: Untitled"); SString creator ("%%Creator: yudit "); creator.append (SD_YUDIT_VERSION); creator.append (" GNU (C) Gaspar Sinai"); head.append (creator); time_t now; struct tm* localTime; time(&now); localTime = localtime (&now); char strt[64]; strftime (strt, sizeof (strt)-1, "%Y-%m-%d %H:%M:%S", localTime); SString t("%%CreationDate: "); creationDate = strt; t.append (creationDate); head.append (t); switch (orientation) { case LANDSCAPE: head.append ("%%Orientation: Landscape"); break; case PORTRAIT: default: head.append ("%%Orientation: Portrait"); break; } SString m ("%%DocumentMedia: "); switch (media) { case Legal: m.append ("Legal "); break; case Letter: m.append ("Letter "); break; case Tabloid: m.append ("Tabloid "); break; case Ledger: m.append ("Ledger "); break; case B4: m.append ("B4 "); break; case A3: m.append ("A3 "); break; case A4: m.append ("A4 "); break; case A5: m.append ("A5 "); break; case B5: m.append ("B5 "); break; default: m.append ("A4 "); } if (orientation == LANDSCAPE) { m.print (height); m.append (" "); m.print (width); m.append (" 0 () ()"); } else { m.print (width); m.append (" "); m.print (height); m.append (" 0 () ()"); } head.append (m); // windows gs goes crazy if I uncomment this. //head.append (""); /* caching should be here */ //head.append (""); SString all = head.join("\n"); all.append ("\n"); writeString (all); pages = 0; currentPage = 0; if (status && background) { timer = STimer::newTimer(1, this); } return status; } /** * Print out the ending lines. */ bool SPostscript::close () { if (timer) delete timer; timer = 0; /* go back */ isCacheOn = true; cache.clear(); cacheCurrent.clear(); cacheIDMapCount = 0; cacheID.clear(); cacheIDMap.clear(); if (currentPage!=0) { writeString ("\nshowpage restore\n"); } SStringVector l("%%DocumentFonts: Times-Roman"); char a[64]; sprintf (a, "%%%%Pages: %u", pages); l.append (a); l.append ("%%Trailer"); l.append ("%%EOF"); SString all = l.join ("\n"); all.append ("\n"); writeString (all); return status; } void SPostscript::newPage() { if (isCacheOn) { pages++; } else { if (currentPage!=0) { writeString ("\nshowpage restore\n"); } currentPage++; char buff[128]; switch (orientation) { case LANDSCAPE: sprintf (buff, "\n%%%%Page: %u %u\nsave\n90 rotate\n0 -%d.000 translate\n", pages, currentPage, height); break; case PORTRAIT: default: sprintf (buff, "\n%%%%Page: %u %u\nsave\n", pages, currentPage); break; } writeString (buff); } } #define SG(_ix)\ (((_ix) > -1000 && (_ix) < 0)? "-" : "") #define SM(_ix)\ ((_ix < 0) ? ((-_ix) % 1000) : ((_ix) % 1000)) /** * Try to do a fill from cache. return false on fail. * INTERNAL FUNCTION. PRINTS ON SCREEN. * @param id is the id to print. */ bool SPostscript::_newpath (double _x, double _y, const SString& _id) { if (!cacheIDMap.get (_id)) return false; char ins[128]; /** * if you noticed I negated all y coordinates, and now I add height to it * it should nicely re-invert yudit screen coordinates. * everything should be relative to this point * SGC locale can screw things up (. -> , )- use decimals. */ int ix = (int) (1000.0 * _x); int iy = (int) (1000.0 * ((double)height-_y)); sprintf (ins, "gsave %s%d.%03d %s%d.%03d translate ", SG(ix), ix/1000, SM (ix), SG(iy), iy/1000, SM(iy)); SString all; all.append (ins); all.append (cacheIDMap[_id]); all.append (" grestore\n"); writeString (all); return true; } /** * Write out the cache, so that you can refer to it by the id * mapped by cacheIDMap. */ bool SPostscript::cacheOn (bool on) { /* you can only turn it off */ if (on) return isCacheOn; char p[64]; sprintf (p, "%u", pages); SString cs; cs.append ("%%Pages: "); cs.append (p); cs.append ("\n"); cs.append ("%%PageOrder: Ascend\n"); cs.append ("%%EndComments\n"); cs.append ("\n"); cs.append ("%%BeginProlog\n"); cs.append ("%%BeginResource: cache\n"); cs.append ("\n"); writeString (cs); cs = ""; //fprintf (stderr, "cache in flushed. size=%u\n", cache.size()); for (unsigned int i=0; igetAnyWindow(); if (aWindow==None) { fprintf (stderr, "(window) no luck in prining bitmap font.\n"); return; } SString key("NF"); key.append (SString((long)native)); key.append (SString(data, len)); if (newpath (x, y, key)) { fill (pen); return; } /* FIXME: draw font here */ int bits = DefaultDepth (impl->display, impl->screen); int nchars = len/2; int direction_return; int font_ascent_return; int font_descent_return; XCharStruct overall_return; XQueryTextExtents16 ( impl->display, ((Font)native), (XChar2b*) data, nchars, &direction_return, &font_ascent_return, &font_descent_return, &overall_return); int wi = overall_return.width; int ahe = (overall_return.ascent<0) ? -overall_return.ascent : overall_return.ascent; int he = ahe + ((overall_return.descent<0) ? -overall_return.descent : overall_return.descent); Pixmap pixmap = XCreatePixmap (impl->display, aWindow, wi+1, he+1, bits); if (pixmap==None) { fill (pen); fprintf (stderr, "(Pixmap) no luck in prining bitmap font.\n"); return; } XGCValues gcv; gcv.foreground = 1; gcv.background = 0; GC gc = XCreateGC (impl->display, pixmap, GCForeground | GCBackground, &gcv); XSetForeground (impl->display, gc, 0); XFillRectangle (impl->display, pixmap, gc, 0, 0, wi+1, he+1); XSetForeground (impl->display, gc, 1); XSetFont (impl->display, gc, (Font) native); XDrawString16 (impl->display, pixmap, gc, 0, ahe, (XChar2b*) data, len/2); //fprintf (stderr, "getting pixmap=%u %u 0x%lx\n", wi, he, (unsigned long) pixmap); XImage* im = XGetImage (impl->display, pixmap, 0, 0, wi+1, he+1, AllPlanes, ZPixmap); XFreePixmap (impl->display, pixmap); XFreeGC (impl->display, gc); if (im==0) { fprintf (stderr, "(Image) no luck in prining bitmap font.\n"); fill (pen); return; } /* draw here */ //fprintf (stderr, "BITMAP FONT\n"); for (int j=0; j * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SWindow_h #define SWindow_h #include "swindow/SCanvas.h" #include "swindow/SAccelerator.h" #include "swindow/SImage.h" #include "stoolkit/SExcept.h" #include "stoolkit/SString.h" #include "stoolkit/SProperties.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ #define SD_WIN_X 0 #define SD_WIN_Y 0 #define SD_WIN_W 10 #define SD_WIN_H 10 // // Important: if you use doubleBuffer, dont draw with // the drawing methods provided here UNLESS SWindow // came from SWindowListener // virtual void redraw (SWindow* w, int x, int y, // unsigned int width, unsigned int height); // class SWindow : public SCanvas { public: SWindow(); virtual ~SWindow(); virtual void clear (int x, int y, unsigned int width, unsigned int height); virtual void copy (int x, int y, unsigned int width, unsigned int height, int tox, int toy); virtual void setParent (SWindow* w, int x, int y); virtual void setMinimumSize (unsigned int width, unsigned int height); virtual void show (); virtual void hide (); virtual void resize (unsigned int width, unsigned int height); virtual void redraw (bool clear, int x, int y, unsigned int width, unsigned int height); virtual void move (int x, int y); virtual SS_Matrix2D getCurrentMatrix() const; virtual void setApplicationImage (const SImage& im); /*---------------- from canvas --------------*/ virtual bool newpath (double x, double y, const SString& id); virtual void fill (const SPen& pen); virtual void stroke (const SPen& pen); virtual void moveto (double x, double y); virtual void lineto (double x, double y); virtual void curveto (double x0, double y0, double x1, double y1, double x3, double y3); virtual void closepath(); virtual void pushmatrix(); virtual void popmatrix(); virtual void scale (double x, double y); virtual void translate (double x, double y); virtual void rotate (double angle); virtual void setBackground (const SColor &color); virtual void putImage (int x, int y, const SImage& image); virtual void bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len); virtual void bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height); virtual void bitline (const SColor& fg, int x, int y, int tox, int toy); virtual void bitpoint (const SColor& fg, int x, int y); virtual void bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size); /*---------------- end of canvas --------------*/ virtual void getKeyboardFocus(); virtual void setClippingArea (int x, int y, unsigned int width, unsigned int height); virtual void removeClippingArea (); virtual bool startInputMethod (const SString& name, const SProperties& prop); virtual void stopInputMethod (); virtual void setInputMethodProperties (const SProperties& prop); virtual SString getInputMethod (); virtual bool hasStatusArea (); virtual bool isVisible (); virtual SString getClipUTF8(); virtual void putClipUTF8(const SString& utf8); virtual void setTitle (const SString& title); virtual void addAccelerator (const SAccelerator& a, SAcceleratorListener* l); virtual void removeAccelerator (const SAccelerator& a, SAcceleratorListener* l); /*------ drag and drop --------*/ virtual void setDroppable (const SStringVector& targets); virtual void setModal (SWindow* parent, bool decorated); virtual void center (SWindow* window); virtual void wait (); bool isModal (); bool isShown (); void setSize (unsigned int width, unsigned int height); void setPosition (int x, int y); unsigned int getWidth() const; unsigned int getHeight() const; int getPositionX() const; int getPositionY() const; /*--- get an integer id for the underlying window ---*/ virtual unsigned long getWindowID() const; // In double buffer mode only setClippingArea and removeClippingArea // can be called outside awt callback SWindowListener::redraw (). virtual void setDoubleBuffer (bool isOn); virtual bool isDoubleBufferEnabled () const; protected: bool shown; bool modalFlag; int xpos; int ypos; unsigned int xwidth; unsigned int yheight; }; class SWindowListener { public: enum SKey { Key_Undefined, Key_Control_R, Key_Control_L, Key_Alt_L, Key_Alt_R, Key_Meta_L, Key_Meta_R, Key_Shift_L, Key_Shift_R, Key_Tab, Key_Space, Key_Left, Key_Right, Key_Up, Key_Down, Key_Prior, Key_End, Key_Next, Key_Return, Key_Enter, Key_Home, Key_Delete, Key_BackSpace, Key_Clear, Key_Escape, Key_Send, Key_F1, Key_F2, Key_F3, Key_F4, Key_F5, Key_F6, Key_F7, Key_F8, Key_F9, Key_F10, Key_F11, Key_F12, Key_a, Key_A, Key_b, Key_B, Key_c, Key_C, Key_d, Key_D, Key_e, Key_E, Key_f, Key_F, Key_g, Key_G, Key_h, Key_H, Key_i, Key_I, Key_j, Key_J, Key_k, Key_K, Key_l, Key_L, Key_m, Key_M, Key_n, Key_N, Key_o, Key_O, Key_p, Key_P, Key_q, Key_Q, Key_r, Key_R, Key_s, Key_S, Key_t, Key_T, Key_u, Key_U, Key_x, Key_X, Key_y, Key_Y, Key_v, Key_V, Key_w, Key_W, Key_z, Key_Z, Key_slash, Key_period, Key_comma, Key_semicolon, Key_colon, Key_underscore, Key_hash, Key_questionmark, Key_1,Key_2,Key_3,Key_4,Key_5,Key_6,Key_7,Key_8,Key_9,Key_0 }; SWindowListener(); virtual ~SWindowListener(); virtual bool windowClose (SWindow* w); virtual void redraw (SWindow* w, int x, int y, unsigned int width, unsigned int height); virtual void resized (SWindow* w, int x, int y, unsigned int width, unsigned int height); virtual void keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta); virtual void buttonPressed (SWindow * w, int button, int x, int y); virtual void buttonReleased (SWindow * w, int button, int x, int y); virtual void buttonDragged (SWindow * w, int button, int x, int y); virtual void lostKeyboardFocus (SWindow* w); virtual void gainedKeyboardFocus (SWindow* w); virtual void lostClipSelection (SWindow* w); virtual void enterWindow (SWindow* w); virtual void leaveWindow (SWindow* w); virtual bool drop (SWindow* w, const SString& mimetype, const SString& data); }; int getButtonID (const SString& string); #endif /* SWindow_h */ ./swindow/SColor.h0000644000175000017500000000357710722225244014115 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SColor_h #define SColor_h #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SObject.h" #include "stoolkit/SVector.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SColor : public SObject { public: SColor (void); SColor (SS_WORD32 value); SColor (const SString& name, double alpha=1.0); SColor (double red, double green, double blue, double alpha); SColor (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha); SColor (const SColor& color); SColor operator= (const SColor& color); SColor lighter(double a=0.3) const; SColor darker(double a=0.3) const; virtual ~SColor(); virtual void blend (const SColor& color); virtual SObject* clone () const; SS_WORD32 getValue() const; static SS_WORD32 getNamedColor(const SString& name); bool operator==(const SColor& col) const; bool operator!=(const SColor& col) const; unsigned char red; unsigned char green; unsigned char blue; unsigned char alpha; }; typedef SVector SColorVector; #endif /* SColor_h */ ./swindow/SFontTTF.cpp0000644000175000017500000024450411053732325014654 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* 0xffffffff */ static int SD_TTF_NAN=-1; #include "swindow/SFontTTF.h" #include "swindow/SScriptProcessor.h" #include "swindow/STTables.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUniMap.h" #include "stoolkit/SUtil.h" #include "stoolkit/SCluster.h" #include "stoolkit/SCharClass.h" /* * ntohl */ #ifndef USE_WINAPI #include #else #include #endif #include #include /* * These glyphs should not exists khmm.. I said these glyphs should not exist. * Unicode magic :) */ #define SD_G_INDIC_ZWNJ 0xfffe #define SD_G_INDIC_ZWJ 0xffff /** * This is a hash width key platform '~' encoding * and value SUnimap. */ static const SString SS_TB_NAME("name"); static const SString SS_TB_HEAD("head"); static const SString SS_TB_HHEA("hhea"); static const SString SS_TB_POST("post"); static const SString SS_TB_GLYF("glyf"); static const SString SS_TB_CMAP("cmap"); static const SString SS_TB_KERN("kern"); static const SString SS_TB_MAXP("maxp"); static const SString SS_TB_HTMX("hmtx"); static const SString SS_TB_LOCA("loca"); static const SString SS_TB_OS2("OS/2"); static const long SS_TN_NOTICE=0; static const long SS_TN_FAMILY=1; static const long SS_TN_WEIGHT=2; static const long SS_TN_X3=3; static const long SS_TN_FULLNAME=4; static const long SS_TN_VERSION=5; static const long SS_TN_FONTNAME=6; static const long SS_TN_X7=7; static const long SS_TN_MAX=8; static void debugChars (const char* msg, const SS_GlyphIndex* gchars, unsigned int len); static SS_GlyphIndex findGlyph0 (TTF_CMAP_FMT0* encoding0, SS_UCS4 ucs4); static SS_GlyphIndex findGlyph4 (TTF_CMAP_FMT4* encoding4, SS_UCS4 ucs4); static SS_GlyphIndex findGlyph12 (TTF_CMAP_FMT12* encoding12, SS_UCS4 ucs4); static SS_GlyphIndex findGlyph2 (TTF_CMAP_FMT2* encoding2, SS_UCS4 ucs4); static double f2dot14 (short x); static void moveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y); static void lineto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y); static void cureveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x0, SD_SHORT _y0, SD_SHORT _x1, SD_SHORT _y1, SD_SHORT _x2, SD_SHORT _y2); /** * @author: Gaspar Sinai * @version: 2000-04-23 * Many parts of this file are originally written by Andrew Weeks. */ SS_UCS4 SFontTTF::setBaseCharacter = 0; /** * Initialize a TTF * @param name is the font file */ SFontTTF::SFontTTF (const SFile& _file, const SString& _fontencoding) : file (_file) { ok = true; fontencoding = _fontencoding; hardWire = SS_NONE; defaultGlyph = 0; baseGlyph = 0; } SFontTTF::~SFontTTF () { } bool SFontTTF::isOK() { if (!ok) return false; /* initialize */ if (name.size()==0) { name = file.getName(); if (fontencoding == "mslvt") { hardWire = SS_MSLVT; fontencoding.clear(); } else if (fontencoding == "nojamo") { hardWire = SS_NOJAMO; fontencoding.clear(); } else if (fontencoding == "jamo") { hardWire = SS_JAMO; fontencoding.clear(); } /* Experimental filters for whole ranges */ else if (fontencoding == "indic") { hardWire = SS_INDIC; fontencoding.clear(); } else if (fontencoding == "deva") { hardWire = SS_DEVANAGARI; fontencoding.clear(); } else if (fontencoding == "beng") { hardWire = SS_BENGALI; fontencoding.clear(); } else if (fontencoding == "guru") { hardWire = SS_GURMUKHI; fontencoding.clear(); } else if (fontencoding == "gujr") { hardWire = SS_GUJARATI; fontencoding.clear(); } else if (fontencoding == "orya") { hardWire = SS_ORIYA; fontencoding.clear(); } else if (fontencoding == "taml") { hardWire = SS_TAMIL; fontencoding.clear(); } else if (fontencoding == "telu") { hardWire = SS_TELUGU; fontencoding.clear(); } else if (fontencoding == "knda") { hardWire = SS_KANNADA; fontencoding.clear(); } else if (fontencoding == "mlym") { hardWire = SS_MALAYALAM; fontencoding.clear(); } else if (fontencoding == "sinh") { hardWire = SS_SINHALA; fontencoding.clear(); } else if (fontencoding == "thai") { hardWire = SS_THAI; fontencoding.clear(); } else if (fontencoding == "lao") { hardWire = SS_LAO; fontencoding.clear(); } else if (fontencoding == "tibt") { hardWire = SS_TIBETAN; fontencoding.clear(); } else { SString n = name; n.lower(); /* only Ogulim may work. forget any prefix.*/ if (n.match("*ogulim.ttf")) { hardWire = SS_MSLVT; fontencoding.clear(); } } if (file.size() < 0) { ok = false; } else { image = file.getFileImage(); ok = image.size()>0 && init(); } } return ok; } /** * initialize all numbers. * return false if something is wrong with this font. */ bool SFontTTF::init () { TTF_DIRECTORY* directory = (TTF_DIRECTORY *) image.array(); if (ntohl (directory->sfntVersion) != 0x00010000) { fprintf (stderr, "SFontTTF: BAD TTF file [%*.*s].\n", SSARGS(name)); return false; } TTF_DIR_ENTRY* dir_entry = &(directory->list); char tag[5]; unsigned int i; for (i=0; i < (unsigned short)ntohs(directory->numTables); i++) { for (unsigned int j=0; j<4; j++) { tag[j] = dir_entry->tag[j]; } tag[4] = 0; tables.put (tag, image.array() + ntohl (dir_entry->offset)); if (memcmp(tag, "EBDT", 4)==0 || memcmp(tag, "EBLC", 4)==0 || memcmp(tag, "EBSC", 4)==0) { //fprintf (stderr, "SFontTTF info: TTF file [%*.*s] contains bitmaps.\n", // SSARGS(name)); } dir_entry++; } if (!processName()) { return false; } if (!checkTables()) { return false; } broken = false; TTF_CMAP* cmap_table = (TTF_CMAP*) tables[SS_TB_CMAP]; int num_tables = ntohs(cmap_table->numberOfEncodingTables); TTF_OS2* os2table = (TTF_OS2*) tables[SS_TB_OS2]; if (os2table) { //defaultGlyph = ntohs(os2table->usDefaultChar); //unsigned int rangel = ntohl (os2table->ulUnicodeRange1); //unsigned int rangeh = ntohl (os2table->ulUnicodeRange2); //fprintf (stderr, "%*.*s defaultGlyph=%u %u %u\n", // SSARGS(name), defaultGlyph, rangel, rangeh); } /* We go through all the tables and choose the bes table */ int bestType = 0; if (fontencoding.size()) { charEncoder = SUniMap(fontencoding); if (!charEncoder.isOK()) { fprintf (stderr, "SFontTTF: umap '%*.*s' not found for '%*.*s'.\n", SSARGS(fontencoding), SSARGS(name)); } } charEncoderTable = (unsigned int) num_tables; for (i=0; i < (unsigned int) num_tables; i++) { TTF_CMAP_ENTRY* table_entry = &(cmap_table->encodingTable[i]); int offset = ntohl(table_entry->offset); TTF_CMAP_FMT4* encoding4 = (TTF_CMAP_FMT4 *) ((SD_BYTE *)cmap_table + offset); int format = ntohs(encoding4->format); int platform = ntohs(table_entry->platformID); int encoding_id = ntohs(table_entry->encodingID); /** * All * platform == TT_PLAT_ID_MICROSOFT(3) * encoding_id == TT_ENC_ID_ISO_10646 (1) * will have TTF_CMAP_FMT4 (format==4 * character map. Others *might* have. * * TODO: support more cmap formats like 32 bit unicode. * currently 32 bit unicode is done through external map. */ if (format != 4) continue; /* could not find any good table */ if (charEncoderTable ==(unsigned int) num_tables) { charEncoderTable = i; } /* fprintf (stderr, "%*.*s platform=%d encoding=%d at %u\n", SSARGS(name), platform, encoding_id, i); */ switch (platform) { case TT_PLAT_ID_MICROSOFT: switch (encoding_id) { case TT_ENC_ID_MS_SYMBOL: break; case TT_ENC_ID_MS_UNICODE: bestType = 9; /* these mystic numbers are my scores */ charEncoderTable = i; break; case TT_ENC_ID_MS_SURROGATES: bestType = 10; /* these mystic numbers are my scores */ charEncoderTable = i; break; case TT_ENC_ID_MS_SHIFT_JIS: case TT_ENC_ID_MS_BIG5: case TT_ENC_ID_MS_RPC: case TT_ENC_ID_MS_WANSUNG: case TT_ENC_ID_MS_JOHAB: default: break; } break; case TT_PLAT_ID_ISO: switch (encoding_id) { case TT_ENC_ID_ANY: break; case TT_ENC_ID_ISO_ASCII: if (bestType < 2) { bestType = 2; charEncoderTable = i; } break; case TT_ENC_ID_ISO_10646: if (bestType < 8) { bestType = 8; charEncoderTable = i; } break; case TT_ENC_ID_ISO_8859_1: if (bestType < 4) { bestType = 4; charEncoderTable = i; } break; default: break; } break; case TT_PLAT_ID_APPLE: switch (encoding_id) { case TT_ENC_ID_APPLE_DEFAULT: break; case TT_ENC_ID_APPLE_UNICODE_1_1: case TT_ENC_ID_APPLE_ISO_10646: case TT_ENC_ID_APPLE_UNICODE_2_0: if (bestType < 7) { bestType = 8; charEncoderTable = i; } default: break; } break; case TT_PLAT_ID_MACINTOSH: switch (encoding_id) { case TT_ENC_ID_MAC_ROMAN: /* a lot of other encodings missing */ default: break; } default: break; } } /* look at all tables SGC */ if (fontencoding.size()!=0) charEncoderTable =(unsigned int) num_tables; //fprintf (stderr, "SGC %*.*s besttype = %d table=%d count=%d\n", // SSARGS (name), bestType, charEncoderTable, num_tables); //SString chk = name; chk.lower(); return true; } /** * Process the name table */ bool SFontTTF::processName () { TTF_NAME* name_table = (TTF_NAME*) tables[SS_TB_NAME]; if (name_table==0) { getName (SS_TN_FONTNAME, name.array(), name.size()); fprintf (stderr, "SFontTTF: No name fields in %*.*s\n", SSARGS(name)); fprintf (stderr, "SFontTTF: records:["); for (unsigned int i=0; inameRecords); char* string_area = (char *)name_table + ntohs(name_table->offset); int found=0; int i; for (i=0; i < ntohs (name_table->numberOfNameRecords); i++) { short platform = ntohs(name_record->platformID); if (platform == 3) { found = 1; short len = ntohs(name_record->stringLength); short strOffset = ntohs(name_record->stringOffset); long nameId = ntohs(name_record->nameID); if (nameId < SS_TN_MAX) { getName (nameId, &string_area[strOffset], len); } } name_record++; } name_record = &(name_table->nameRecords); if (!found) for (i=0; i < ntohs(name_table->numberOfNameRecords); i++) { short platform = ntohs(name_record->platformID); if (platform ==1) { found = 1; short len = ntohs(name_record->stringLength); short strOffset = ntohs(name_record->stringOffset); long nameId = ntohs(name_record->nameID); if (nameId < SS_TN_MAX) { getName (nameId, &string_area[strOffset], len); } } name_record++; } if (!found) { fprintf (stderr, "SFontTTF: BAD Name fields in %*.*s\n", SSARGS(name)); return false; } if (names.get (SS_TN_FONTNAME) == 0 || names[SS_TN_FONTNAME].size() == 0) { getName (SS_TN_FONTNAME, names[SS_TN_FULLNAME].array(), names[SS_TN_FULLNAME].size()); } return true; } /** * put the string from str into names. * @param id is SS_TN_ something. * @param str is the input string * @param len is the size of the stirng */ void SFontTTF::getName (long id, const char* str, int len) { SString s; for (int i=0; iindexToLocFormat); if (longOffsets != 0 && longOffsets != 1) { fprintf (stderr, "SFontTTF: BAD TTF file [%*.*s] - indexToLocFormat.\n", SSARGS(name)); return false; } if (tables[SS_TB_HHEA] == 0) { fprintf (stderr, "SFontTTF: BAD hhea table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_GLYF] == 0) { fprintf (stderr, "SFontTTF: BAD glyf table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_CMAP] == 0) { fprintf (stderr, "SFontTTF: BAD cmap table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_HTMX] == 0) { fprintf (stderr, "SFontTTF: BAD htmx table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_LOCA] == 0) { fprintf (stderr, "SFontTTF: BAD loca table in %*.*s\n", SSARGS(name)); return false; } TTF_POST_HEAD* post_table = (TTF_POST_HEAD*) tables[SS_TB_POST]; if (post_table == 0) { fprintf (stderr, "SFontTTF: missing post table in %*.*s. Using defaults\n", SSARGS(name)); italicAngle = 0.0; underlineThickness = 100; underlinePosition = 0.0; isFixedPitch = 0.0; } else { italicAngle = (double) (ntohs(post_table->italicAngle.upper)) + (ntohs(post_table->italicAngle.lower) / 65536.0); underlineThickness = (double)ntohs(post_table->underlineThickness); underlinePosition = (double)ntohs(post_table->underlinePosition); isFixedPitch = (ntohl(post_table->isFixedPitch))? true : false; } TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; lineGap = (double) ((short)htons (hhea_table->lineGap)); charWidth = (double) ((short)(ntohs(head_table->xMax)+ ntohs(head_table->xMin))); charAscent = (double) ((short)htons (hhea_table->ascender)); /* Be aware charDescent is negative! */ charDescent = (double) ((short)htons (hhea_table->descender)); /* kairali-S: dscale=1000 charAscent=298 charDescent=-202 dscale_factor dscale/(charAscent-charDescent) */ /* charDescent is negative - take charAscent aonly to determine size */ double charheight = charAscent; if (charheight < 1) charheight = 1; scaleFactor = 1.0 / charheight; /* short unitsPerEM = ntohs (head_table->unitsPerEm); fprintf (stderr, "font=%*.*s charheight=%g unitsPerEM=%d\n", SSARGS(name), charheight, unitsPerEM); */ return true; } /** * set the base character for better glyph positioning * @param base is the base character relative to which * we will position all of out composing marks. * When the draw routine is called with non-base * character, then the position will be at the end * of the glyph visually, except for U+0500..U+0900 * composing marks, where matrix will be set at the * beginning of the base glyph, viaually */ void SFontTTF::setBase(SS_UCS4 base) { setBaseCharacter = base; /* we do this font unicode fonts only now */ } /** * Get the x,y offset for better positioning of diacritical marks. * This routine is supposed to be */ void SFontTTF::getBaseOffsets (const SS_Matrix2D& m, SS_UCS4 _uch, double* offx, double* offy) { *offx = 0.0; *offy = 0.0; if (!isOK() || setBaseCharacter==0 || setBaseCharacter==_uch) return; if (setBaseCharacter == baseCharacter && baseGlyph==0) { return; } if (setBaseCharacter != baseCharacter) { baseCharacter = setBaseCharacter; if (fontencoding.size()!=0 || baseCharacter >= 0x80000000 || !isOK() || hardWire == SS_MSLVT || hardWire == SS_NOJAMO) { baseGlyph = 0; return; } baseGlyph = findGlyph (baseCharacter); if (baseGlyph==0) { return; } //fprintf (stderr, "baseCharacter=%04X glyph=%04X\n", baseCharacter, baseGlyph); /* get the width of the base char */ baseWidth = getGlyphWidth (baseGlyph); } SString key ((char*)&baseGlyph, sizeof (SS_GlyphIndex)); key.append (SString ((char*)&_uch, sizeof (SS_UCS4))); int cxy = mark2Base.get (key); if (cxy == SD_TTF_NAN) return; /* we had it not found. SGC */ int cx = cxy & 0xffff; if (cx > 0x7fff) cx -= 0x10000 ; int cy = (cxy >> 16) & 0xffff; if (cy > 0x7fff) cy -= 0x10000; if (cx != 0 || cy != 0) { *offx = cx * m.x0; *offy = cy * m.y1; return; } SS_GlyphIndex gi = findGlyph(_uch); if (gi==0) { mark2Base.put (key, SD_TTF_NAN); return; } getOTFMarkToBase (baseGlyph, gi, &cx, &cy); if (cx==0 && cy==0) { mark2Base.put (key, SD_TTF_NAN); return; } /* In sync with SFont.cpp - we need to undo fallback positioning */ if (!isLeftAligned(_uch)) { cx -= (baseWidth - getGlyphWidth (gi)); } cxy = (cy << 16) & 0xffff0000; cxy = cxy | (cx & 0xffff); mark2Base.put (key, cxy); *offx = (double)cx * m.x0; *offy = (double)cy * m.y1; return; } /** * Get the unadjusted width of the glyph */ int SFontTTF::getGlyphWidth (SS_GlyphIndex glyph) { TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; int n_hmetrics = ntohs(hhea_table->numberOfHMetrics); short _bw; /* left side bearing is grossly ignored */ if (glyph >= n_hmetrics) { _bw = ntohs (hmtx_entry[n_hmetrics-1].advanceWidth); } else { _bw = ntohs(hmtx_entry[glyph].advanceWidth); } int w = (int) ((_bw>0) ? _bw : -_bw); return w; } /** * Draw a single unicode character on canvas using the pen. * before calling this, you should call a newpath and * after calling this you may want to call fill. * @param canvas is the canvas to draw to * @param m is the transformation matrix. * @param uch is the unicode character * @param len is the length of unicode array * @return true if drawn */ bool SFontTTF::draw (SCanvas* canvas, const SS_Matrix2D& matrix, SS_UCS4 _uch, bool isLRContext) { if (!isOK()) return false; SV_GlyphIndex gi; if (!findGlyphs (_uch, &gi)) return false; /* This makes things a bit faster */ if (gi.size()==1) { SS_GlyphIndex g = gi[0]; if (g == SD_G_INDIC_ZWJ || g== SD_G_INDIC_ZWNJ) return true; drawGlyph (canvas, matrix, g); return true; } SS_Matrix2D mo = matrix; /* a cluster can defined positions to fine adjust */ const SV_INT *positions = mark2BaseList.get ( SString((char*) &_uch, sizeof (SS_UCS4))); /* do we have fine-grained positions ?*/ if (positions!= 0 && positions->size() >= gi.size()) { mo = matrix; const SS_INT* posarray = positions->array(); for (unsigned int i=0; i 0x7fff) xdiff -= 0x10000 ; int ydiff = (xydiff >> 16) & 0xffff; if (ydiff > 0x7fff) ydiff -= 0x10000; #ifdef DEBUG_POSITION fprintf (stderr, "%u->Positions[%u]=%d,%d\n", _uch, gi[i], xdiff, ydiff); #endif /* DEBUG_LIGATURE */ /* we have absolute positions */ mo.t0 = matrix.t0 + matrix.x0 * xdiff; mo.t1 = matrix.t1 + matrix.y1 * ydiff; /* draw the glyph at this position */ SS_GlyphIndex g = gi[i]; if (g != SD_G_INDIC_ZWJ && g != SD_G_INDIC_ZWNJ) { drawGlyph (canvas, mo, g); } } } else { for (unsigned int i=0; i= 0.0) || (!isLRContext && mo.x0 < 0.0)) ? gi[i] : gi[gi.size()-i-1]; if (g != SD_G_INDIC_ZWJ && g != SD_G_INDIC_ZWNJ)drawGlyph (canvas, mo, g); double nwidth = widthGlyph (mo, g); if (nwidth < 0) nwidth = -nwidth; // For failsafe we preserve old behaviour for non SD_ROVASIRAS // Mirroring (mo.x0 < 0) will reverse the glyph order. if (!isRovas || mo.x0 >= 0.0) { mo.translate (nwidth, 0.0); } else { mo.translate (-nwidth, 0.0); } } } return true; } /** * Return the advacnce width of the glyphs * The value is the value that is multipied with matrix. * @param m is the transformation matrix. * @param uch is the unicode character * @param len is the length of unicode array * @param used will show how many characters were used in uch * @return the calibrated advace width, if with_ is passed and * true if it exists. */ bool SFontTTF::width (const SS_Matrix2D& m, SS_UCS4 _uch, double* width_) { if (width_) *width_ = 0.0; if (!isOK()) return false; /* a cluster can define positions to fine adjust */ SV_GlyphIndex gi; if (!findGlyphs (_uch, &gi)) return false; if (_uch > 0x7fffffff) { const SV_INT* positions = mark2BaseList.get ( SString((char*) &_uch, sizeof (SS_UCS4))); /* do we have fine-grained positions ?*/ if (positions!= 0 && positions->size() > gi.size()) { const SS_INT* arr = positions->array(); if (width_) { int wid = arr[positions->size()-1]; *width_ = double (wid) * m.x0; } return true; } } if (!width_) return true; /** * Multiple glyphs draw on top of each other. */ double max = 0; /* We draw one after the other.*/ for (unsigned int i=0; i 0x7ffffff) return false; if (c == 0x0c55) return false; SS_GlyphIndex glyphno = ((SFontTTF*)this)->findGlyph (c); if (glyphno == 0) return false; if (glyphno == SD_G_INDIC_ZWJ) return false; if (glyphno == SD_G_INDIC_ZWNJ) return false; int lsb = getLeftSideBearing (glyphno); return (lsb >= 0); } /** * Find out the width, knowing the local glyph number * @param m is the transformation matrix * @param glyphno is the local glyph index in the glyph table. */ double SFontTTF::widthGlyph (const SS_Matrix2D& m, SS_GlyphIndex glyphno) { if (!isOK()) return 0.0; if (glyphno == SD_G_INDIC_ZWJ) return 0.0; if (glyphno == SD_G_INDIC_ZWNJ) return 0.0; SString key ((char*)&glyphno, sizeof (SS_GlyphIndex)); int cw = char2Width.get (key); if (cw == SD_TTF_NAN) return 0.0; if (cw != 0) return (double)cw * m.x0; TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; int n_hmetrics = ntohs(hhea_table->numberOfHMetrics); //SD_FWORD* lsblist = (SD_FWORD *) &hmtx_entry[n_hmetrics]; unsigned short w; /* left side bearing is grossly ignored */ if (glyphno >= n_hmetrics) { /* get the last one */ w = ntohs (hmtx_entry[n_hmetrics-1].advanceWidth); } else { w = ntohs(hmtx_entry[glyphno].advanceWidth); } int wi = (int) w; /* replace 0.0 with SD_NAN */ if (wi==0) { char2Width.put (key, SD_TTF_NAN); } else { char2Width.put (key, (int)w); } return double (wi) * m.x0; } /** * \brief Find out raw, unscaled width of glyph. * \glyphno is th glyph * \return a with that can be negative. */ int SFontTTF::getWidth (SS_GlyphIndex glyphno) { if (!isOK()) return 0; if (glyphno == SD_G_INDIC_ZWJ) return 0; if (glyphno == SD_G_INDIC_ZWNJ) return 0; SString key ((char*)&glyphno, sizeof (SS_GlyphIndex)); TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; unsigned short n_hmetrics = ntohs(hhea_table->numberOfHMetrics); unsigned short w; /* left side bearing is grossly ignored */ if (glyphno >= n_hmetrics) { /* get the last one */ w = ntohs (hmtx_entry[n_hmetrics-1].advanceWidth); } else { w = ntohs(hmtx_entry[glyphno].advanceWidth); } int wi = (int) w; int lsb = getLeftSideBearing (glyphno); if (lsb < 0) return -wi; return wi; } /** * \brief Find out raw, unscaled left-side bearing. * \glyphno is th glyph * \return a with that can be negative. */ int SFontTTF::getLeftSideBearing (SS_GlyphIndex glyphno) const { if (glyphno == SD_G_INDIC_ZWJ) return 0; if (glyphno == SD_G_INDIC_ZWNJ) return 0; SString key ((char*)&glyphno, sizeof (SS_GlyphIndex)); TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; if (hmtx_entry == 0 || hhea_table==0) return 0; TTF_MAXP* maxp_table = (TTF_MAXP*) tables[SS_TB_MAXP]; unsigned short numg = (maxp_table) ? htons (maxp_table->numGlyphs) : 0; unsigned short n_hmetrics = ntohs(hhea_table->numberOfHMetrics); short lsb; if (glyphno >= n_hmetrics) { if (numg == 0) { lsb = ntohs (hmtx_entry[n_hmetrics-1].lsb); } else { short* arr = (short*) &hmtx_entry[n_hmetrics]; lsb = htons (arr[glyphno-n_hmetrics]); } } else { lsb = ntohs(hmtx_entry[glyphno].lsb); } return (int) lsb; } /*! * \brief Get the raw (unscaled) bounding box. * \return true if such a box exists. */ bool SFontTTF::getBBOX (SS_GlyphIndex glyphno, int* xMin, int* yMin, int* xMax, int* yMax) const { if (glyphno == SD_G_INDIC_ZWJ) return false; if (glyphno == SD_G_INDIC_ZWNJ) return false; SD_BYTE* gstart = (SD_BYTE *) tables[SS_TB_GLYF]; if (gstart == 0) return false; TTF_GLYF* gtable; int len =0; if (longOffsets) { SD_ULONG* lloca = (SD_ULONG *) tables[SS_TB_LOCA]; if (lloca == 0) return false; unsigned int offs1 = ntohl (lloca[glyphno]); unsigned int offs2 = ntohl (lloca[glyphno+1]); gtable = (TTF_GLYF *) ((char*)gstart + offs1); len = offs2-offs1; } else { SD_USHORT* sloca = (SD_USHORT *) tables[SS_TB_LOCA]; if (sloca == 0) return false; gtable = (TTF_GLYF *) (gstart + (ntohs (sloca[glyphno]) << 1)); len = (ntohs (sloca[glyphno+1]) - ntohs (sloca[glyphno])) << 1; } if (len <= 0) { return false; } TTF_GLYF* kludge = 0; if ((((unsigned long) gtable) & 1) != 0) { kludge = new TTF_GLYF[len]; CHECK_NEW (kludge); memcpy (kludge, gtable, len * sizeof (TTF_GLYF)); gtable = kludge; } short xmin = ntohs (gtable->xMin); short xmax = ntohs (gtable->xMax); short ymin = ntohs (gtable->yMin); short ymax = ntohs (gtable->yMax); *xMin = xmin; *yMin = ymin; *xMax = xmax; *yMax = ymax; if (kludge) delete kludge; return true; } /** * Return the calibrated ascent * @param m is the transformation matrix. */ double SFontTTF::ascent (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = charAscent * m.y1; if (rvle < 0) { // fprintf (stderr, "FIXME negative ascent: SFontTTF.cpp\n"); return 1; } return rvle; } /** * Return the calibrated descent * @param m is the transformation matrix. */ double SFontTTF::descent (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = - charDescent * m.y1; if (rvle < 0) { // fprintf (stderr, "FIXME negative descent: SFontTTF.cpp\n"); return 1; } return rvle; } /** * Return the calibrated avarage width * @param m is the transformation matrix. */ double SFontTTF::width (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = charWidth * m.x0; if (rvle < 0) return -rvle; return rvle; } /** * Return the calibrated gap * @param m is the transformation matrix. */ double SFontTTF::gap (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = lineGap * m.y1; if (rvle < 0) return -rvle; return rvle; } /** * Return the scale factor. You multiply this with point size you want. * matrix diagonals for a 10 point font is scale, scale */ double SFontTTF::scale () { if (!isOK()) return 0.0; return scaleFactor; } /** * This routine tries to find the glyph indeces of a unicode input stream * @param in is the input stream * @param len is the length if in * @param out is the output * @return the nuber of characters processed in 'in' */ bool SFontTTF::findGlyphs (SS_UCS4 in, SV_GlyphIndex* out) { if (!isOK()) return false; SString key ((char*)&in, sizeof (SS_UCS4)); const SString* cached = char2Glyphs.get (key); if (cached) { if (cached->size()size(); for (unsigned int i=0; iappend (*((SS_GlyphIndex*)&cached->array()[i])); } return true; } TTF_CMAP* cmap_table = (TTF_CMAP*) tables[SS_TB_CMAP]; int num_tables = ntohs(cmap_table->numberOfEncodingTables); if (num_tables ==0) { SString chc; char2Glyphs.put (key, chc); return false; } /* Try to get the ligature index from OTF */ SS_UCS4 lig = in; unsigned int liglen = 0; unsigned int scriptcode = getLigatureScriptCode (lig); /* no support yet for this monster */ if ( (scriptcode == SD_ROVASIRAS || scriptcode == SD_PUA_ROVAS) && (liglen=getLigatureUnicode(lig, 0)) > 0) { if (fontencoding.size()!=0) { SString chc; char2Glyphs.put (key, chc); return false; } SS_UCS4* chars = new SS_UCS4[liglen]; CHECK_NEW (chars); getLigatureUnicode (lig, chars); SS_GlyphIndex* gi = new SS_GlyphIndex [liglen]; CHECK_NEW (gi); unsigned int count = 0; unsigned int i; for (i=0; iappend (gi[i]); SString chc ((char*)gi, count * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); delete chars; delete gi; return true; } SS_GlyphIndex lig = 0; // I dont know yet what feature is best. // We dont know the script code, so we pass 0. // We dont know if it should be alig, dlig or rlig. // Use all that is available. unsigned int ligs = getOTFLigature (0, "rlig,liga", &gi[0], count, &lig, 4); while (ligs > 1 && ligs <= count) { gi[0] = lig; // ligs fell out. for(i=1; iappend (gi[i]); SString chc ((char*)gi, count * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); delete chars; delete gi; return true; } else if (scriptcode == SD_COMBINING_LIGATURE) { /* never comes here */ SString chc; char2Glyphs.put (key, chc); return false; } else if (scriptcode == SD_AS_SHAPES && fontencoding.size() == 0 && hasOTFLigatures()) { /* No encoder support for OTF single substitution */ if (hardWire == SS_MSLVT) { SString chc; char2Glyphs.put (key, chc); return false; } bool success = false; unsigned int fcode = (lig & 0xf000) >> 12; SS_UCS4 gcode = lig & 0x0fff; SS_GlyphIndex gi[2]; unsigned int len = 1; bool shouldBe1 = true; switch (gcode) { case 1: /* A000X001 */ gi[0] = findGlyph (0x072A); gi[1] = findGlyph (0x0308); len = 2; shouldBe1 = false; break; case 2: /* A000X002 */ gi[0] = findGlyph (0x06A9); gi[1] = findGlyph (0x0627); len = 2; break; case 3: /* A000X003 */ gi[0] = findGlyph (0x06A9); gi[1] = findGlyph (0x0644); len = 2; break; default: gi[0] = findGlyph (gcode); break; } /* Check if we got all glyphs */ for (unsigned int i=0; i? */ else if (getOTFLigature ("urd ", "ccmp", gi, 2, &out, 4)) { gi[0] = out; len = 1; success = true; } else if (getOTFLigature ("urdu", "ccmp", gi, 2, &out, 4)) { gi[0] = out; len = 1; success = true; } } const char* fname = getShapeCode (fcode-1); SS_GlyphIndex go = substituteOTFGlyph (fname, gi[0]); /* use it if found - fallback otherwise */ if (go) { gi[0] = go; success = true; } else if (len!=2)/* fallback where placement is important */ { SString chc; char2Glyphs.put (key, chc); return false; } /* Try to get a ligature substitution */ if (len==2) { SS_GlyphIndex out = 0; /* FIXME: How about URDU? * should we do this before shaping? */ if (getOTFLigature ("syrc", "rlig", gi, 2, &out, 4)) { gi[0] = out; len = 1; success = true; } } if (shouldBe1 && len != 1) success = false; if (success) { out->append (gi[0]); if (len==2) out->append (gi[1]); SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } else { SString chc; char2Glyphs.put (key, chc); return false; } } /* INDIC */ else if (isLigature (lig) && hasOTFLigatures() && scriptcode != SD_AS_SHAPES && scriptcode != SD_AS_LITERAL && (liglen=getLigatureUnicode(lig, 0)) > 0) { if ((hardWire == SS_MSLVT || hardWire == SS_NOJAMO) && scriptcode!=SD_HANGUL_PREC && scriptcode!=SD_HANGUL_JAMO) { SString chc; char2Glyphs.put (key, chc); return false; } bool fixedcluster = true; SS_UCS4* chars = new SS_UCS4[liglen]; CHECK_NEW (chars); getLigatureUnicode (lig, chars); /* * Complex script rendering, with uniscribe-like algorithm. * This can be enabled with command line: * -us * option. * SS_MSLVT and SS_NOJAMO hardwired fonts will not be processed. */ SScriptProcessor engine (this); // Should be able to start with ZWJ SS_UCS4 sample = ((chars[0] == 0x200D || chars[0] == 0x25cc) && liglen > 1) ? chars[1] : chars[0]; // Precompiled Hangul should not go through this. if (scriptcode!=SD_HANGUL_PREC && hardWire!=SS_MSLVT && hardWire!=SS_NOJAMO && engine.isSupported(sample)) { bool isbegin = (scriptcode == SD_BENGALI_BEGIN); unsigned int plen = engine.put (chars, liglen, isbegin); /* * We already have a full cluster, so we can fail * only if the engine can not find some glyphs. */ if (plen != liglen) { SString chc; char2Glyphs.put (key, chc); delete chars; return false; } engine.apply (); *out =engine.getGlyphs (); if (out->size()==0) { SString chc; char2Glyphs.put (key, chc); delete chars; return false; } /* Maintain our glyph-cache. */ SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); /* Maintain our position-cache. */ SV_INT positions = engine.getPositions(); positions.append (engine.getWidth()); mark2BaseList.put (key, positions); delete chars; return true; } /* * Hangul, Thai and Lao is processed right here in the switch */ switch (scriptcode) { case SD_THAI: case SD_LAO: { bool ret = false; /* don't support non-unicode encoded fonts for now */ const char * script = getLigatureScript (lig); if (fontencoding.size()!=0 || !isOK() || script==0) { ret = false; } else { ret = findSouthIndicGlyphs (key, scriptcode, script, chars, liglen, out); } if (ret) { SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); } else { SString chc; char2Glyphs.put (key, chc); } delete chars; return ret; } case SD_HANGUL_PREC: case SD_HANGUL_JAMO: { bool ret = findJamoGlyphs (chars, liglen, out); /* cache */ if (ret) { SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); } else { SString chc; char2Glyphs.put (key, chc); } delete chars; return ret; } case SD_TAMIL: fixedcluster = true; break; default: fixedcluster = false; break; } SUniMap umap = charEncoder; if (!umap.isOK()) { delete chars; SString chc; char2Glyphs.put (key, chc); return false; } /* we allocate one more to allow for LEFT_RIGHT vowel expansion */ SS_GlyphIndex* gchars = new SS_GlyphIndex[liglen+1]; CHECK_NEW (gchars); const char * script = getLigatureScript (lig); if (script == 0) script = "default"; /* get the encoder for this table. */ bool decoded = true; /* we need this hocus-pocus because getLigature works on glyph indeces */ /* for indic modifiers */ unsigned int mstart = 0; unsigned int mend = 0; for (unsigned int i=0; i 0xffff) { decoded = false; break; } /* BE AWARE HACK! Try straight unicode */ ucs2 = chars[i]; } gchars[i] = findGlyph(ucs2); if (gchars[i]==0) { decoded = false; break; } int endtype = getCharType (chars[i]); if (i>0 && endtype == SD_INDIC_MODIFIER && mstart == 0) { mstart = i; mend = liglen; } } /* adjust liglen to where modifiers start */ if (mstart != 0) { liglen = mstart; } /* this is unicode encoded... */ SS_GlyphIndex halant = findGlyph (getHalant (scriptcode)); SS_GlyphIndex reorder = 0; SS_GlyphIndex addVirama = 0; unsigned int inlen = liglen; bool *gbase = NULL; // post-consonant Malayalam ra has to be reordered to syllable start if (scriptcode == SD_MALAYALAM) reorder = findGlyph (0x0d30); // special rules for clusters ending in virama if (decoded && liglen == 2 && chars[1] == getHalant(scriptcode)) { decoded = false; unsigned int olen = getOTFLigatures (gchars, inlen, script, "haln", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS haln=", gchars, olen); decoded = true; inlen--; } } else if (decoded && chars[liglen-1] == getHalant(scriptcode)) { // todo - RA+H RA+H addVirama = gchars[liglen-1]; inlen--; } /* * Scripts like Tamil do not need complex processing. * The combinations are finite, a fixed cluster suffices. */ if (fixedcluster && decoded) { SS_GlyphIndex gi; unsigned int nind = getOTFLigature (script, 0, gchars, liglen, &gi); if (nind == liglen) { out->append (gi); } else { decoded = false; } } /* * Complex script rendering, with our own algorithm. */ else if (decoded) { /* ----> DEBUG Information */ debugChars ("GCHARS=", gchars, liglen); #ifdef DEBUG_LIGATURE fprintf (stderr, "Halant=%04X reorder=%04X gbase=%04X\n", halant, reorder, (gbase==0)?0: *gbase); #endif /* ----< DEBUG Information */ unsigned int olen = getOTFLigatures (gchars, inlen, script, "akhn", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS akhn=", gchars, olen); inlen = olen; } /* can be at beginning only */ SS_GlyphIndex rphfGlyph = 0; SS_GlyphIndex rphfNone = 0; if (inlen>2 && gchars[2] != findGlyph(SD_CD_ZWJ)) { debugChars ("BEFORE RPH =", gchars, inlen); SS_GlyphIndex g[2]; g[0] = gchars[0]; g[1] = gchars[1]; olen = getOTFLigatures (g, 2 , script, "rphf", halant, reorder, gbase); if (olen == 2) olen = getOTFLigatures (g, 2, script, "abvs", halant, reorder, gbase); if (olen == 1 && liglen > 2) { int ct = getCharType (chars[2]); // if chars[2] == SD_CD_ZWJ will be handled automagically here if (ct == SD_INDIC_CONSONANT_BASE || ct == SD_INDIC_CONSONANT_POST_BASE || ct == SD_INDIC_CONSONANT_BELOW_BASE) { debugChars ("GCHARS rphf=", g, olen); rphfGlyph = g[0]; } else { //fprintf (stderr, "GCHARS rphfNone\n"); rphfNone = gchars[0]; } /* remove */ for (unsigned int i=2; i 2) { gchars[0] = findGlyph(0x0930); olen = getOTFLigatures (gchars, inlen, script, "half", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS eyelash=", gchars, olen); inlen = olen; } else // otherwise we change it back to U+0931 { gchars[0] = findGlyph(0x0931); } } /* Half-forms */ olen = getOTFLigatures (gchars, inlen, script, "half", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS half=", gchars, olen); inlen = olen; } olen = getOTFLigatures (gchars, inlen, script, "!pstf,blwf,vatu,blws,rphf,psts,haln", halant, reorder, gbase); while (olen != inlen) { debugChars ("GCHARS any=", gchars, olen); inlen = olen; olen = getOTFLigatures (gchars, inlen, script, "!pstf,blwf,vatu,blws,rphf,psts,haln", halant, reorder, gbase); } /* in fact, this alone should do all the junk job (above) */ /* * From: http://www.microsoft.com/typography/otspec/indicot/reg.htm * * In scripts like Malayalam, the halant form of certain consonants * is represented by 'chillaksharams'. These can appear at any * non-initial or final consonant location in a syllable. * * - unfortunatelly it is very vague: 'scripts like Malayalam' * gaspar */ if (inlen > 1) { /* does it start with consonant + halant + ZWJ ? */ bool firstHalanOK = scriptcode!=SD_MALAYALAM /* bit vague */ || (inlen > 2 && gchars[1] == halant && gchars[2] == SD_G_INDIC_ZWJ); if (firstHalanOK) /* a bit vague */ { olen = getOTFLigatures (gchars, inlen, script, "haln", halant, reorder, gbase); } else { olen = getOTFLigatures (&gchars[1], inlen-1, script, "haln", halant, reorder, gbase?&gbase[1]:0); olen++; } inlen = olen; } /* insert back virama and search for feature "haln" */ if (addVirama) { gchars[olen] = addVirama; inlen++; olen = getOTFLigatures (gchars, inlen, script, "haln", halant, reorder, gbase); } /* This is "haln" not applied in while loop because of a specific check condition for SD_G_INDIC_ZWNJ in getOTFLigatures */ else if (inlen > 1 && gchars[inlen-1] == SD_G_INDIC_ZWNJ) { if (scriptcode != SD_MALAYALAM) /* a bit vague */ { olen = getOTFLigatures (gchars, inlen-1, script, "haln", halant, reorder, gbase); if (olen != inlen-1) { gchars[olen] = gchars[inlen-1]; olen++; } } } /* insert back non repha after getOTFLigatures */ if (rphfNone) { for (unsigned int i=olen-1; i>1; i--) { gchars[i] = gchars[i-2]; } gchars[0] = rphfNone; gchars[1] = halant; olen += 2; } int endtype = getCharType (chars[liglen-1]); switch (endtype) { case SD_INDIC_LEFT_VOWEL: if (olen > 1) { SS_GlyphIndex g = gchars[olen-1]; if (gbase) { unsigned int i; for (i=olen-2; i && !gbase[i]; i--); for (unsigned int j=olen-1; j > i; j--) gchars[j]=gchars[j-1]; gchars[i] = g; } else { for (unsigned int i=olen-1; i; i--) gchars[i]=gchars[i-1]; gchars[0] = g; } } break; case SD_INDIC_RIGHT_VOWEL: case SD_INDIC_TOP_VOWEL: case SD_INDIC_BOTTOM_VOWEL: if (olen > 0) { SS_GlyphIndex g = gchars[olen-1]; if (gbase) { unsigned int i; for (i=olen-2; i && !gbase[i]; i--); for (unsigned int j=olen-1; j > i+1; j--) gchars[j]=gchars[j-1]; gchars[i+1] = g; } } break; case SD_INDIC_LEFT_RIGHT_VOWEL: if (olen > 0) { SS_GlyphIndex g1 = findGlyph (getLRVowelLeft(chars[liglen-1])); SS_GlyphIndex g2 = findGlyph (getLRVowelRight(chars[liglen-1])); if (g1 && g2) { if (gbase) { unsigned int i; for (i=olen-2; i && !gbase[i]; i--); for (unsigned int j=olen-1; j > i; j--) gchars[j]=gchars[j-1]; gchars[i] = g1; } else { for (unsigned int i=olen; i; i--) gchars[i]=gchars[i-1]; gchars[0] = g1; } gchars[olen] = g2; olen++; liglen++; // We increase this, so that the program could notice // that the original character sequence has changed } } } if (rphfGlyph) { gchars[olen] = rphfGlyph; olen++; } /* add modifiers back */ for (unsigned int i=mstart; i %u: ", script, (lig & 0xffff), liglen, out->size()); debugChars ("GCHARS glyphs=",out->array(), out->size()); for (unsigned int i=0; iclear(); delete chars; delete gchars; if (gbase) delete gbase; } /* End of Indic/Hangul/OTF */ /* Let precomposed Hangul through. */ bool okToProcess = true; /* Set okToProcess accoriding to artifical encodings */ switch (hardWire) { case SS_MSLVT: /* precomposed or jamo */ okToProcess = ((in>=0xac00 && in<0xd7a4) || getJamoClass (in) != SD_JAMO_X); break; case SS_NOJAMO: /* non jamo */ okToProcess = (getJamoClass (in) == SD_JAMO_X); break; case SS_NONE: default: okToProcess = true; break; } if (!okToProcess) { SString chc; char2Glyphs.put (key, chc); return false; } /** * When using external maps we are using the same map for all * tables. */ if (fontencoding.size()!=0 && charEncoder.isOK() && !charEncoder.isUMap()) { /* max 3 */ SV_UCS4 ucs4; ucs4.append (in); SV_UCS4 decd; SUniMap umap = charEncoder; unsigned int lifted = umap.lift (ucs4, 0, false, &decd); if (lifted == 0) { /* try straight - font has to have ascii mapping */ SS_GlyphIndex gi = (in>=0x80) ? 0 : findGlyph (in); if (gi) { out->append (gi); SString chc ((char*) &gi, sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } SString chc; char2Glyphs.put (key, chc); return false; } for (unsigned int i=0; iclear (); SString chc; char2Glyphs.put (key, chc); return false; } out->append (gi); } SString chc ((char*) out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } /* as I see there is no way to define multiple tables * for now so we just hardcode first one in reality we should * go through 0..num_tables */ SUniMap umap = charEncoder; if (!umap.isOK()) { SString chc; char2Glyphs.put (key, chc); return false; } /* get the encoder for this table. */ // FIXME: // if in is non-BMP we will just use the value - hack - I know SS_UCS4 ucs4 = (in>0xffff) ? in : (SS_UCS4) umap.encode (in); if (ucs4==0) { SString chc; char2Glyphs.put (key, chc); return false; } SS_GlyphIndex o = findGlyph (ucs4); if (o==0) { /* Try the decomposed one instead */ if (hardWire==SS_MSLVT && /* chekc for Precomposed Korean or JAMO */ ((in>=0xac00 && in<0xd7a4) || getJamoClass (in) != SD_JAMO_X)) { SS_UCS4 chars[3]; /* lvt */ unsigned int liglen = 1; /* decompose if precomposed */ if (in>=0xac00 && in<0xd7a4) { SS_UCS4 hangul = ucs4 - 0xac00; chars[0] = hangul / (21*28) + 0x1100; chars[1] = (hangul % (21*28))/28 + 0x1161; chars[2] = (hangul % 28) + 0x11a7; liglen = (chars[2] == 0x11a7) ? 2 : 3; } else { liglen = 1; chars[0] = in; } bool ret = findJamoGlyphs (chars, liglen, out); /* cache */ if (ret) { if (liglen==1 && getJamoClass (in) != SD_JAMO_L) { /* standalone jamos fill emptyness */ SS_GlyphIndex placeHolder = findGlyph (0x4e00); if (placeHolder) out->insert (0, placeHolder); } SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return ret; } /* not found */ } /* cache the nothing. */ SString chc; char2Glyphs.put (key, chc); return false; } out->append (o); SString chc ((char*)&o, sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } /** * Chaining Context Substitution may not change the length of the * input. * @param ino is the input/output array. * @param inlen is the length of the ino array. * @param olen is the new length of the ino array. * @param script is the OTF script code - or null. * @param feature is the OTF feature code - or null. * @return true if at least one substitution has been made. */ bool SFontTTF::doContextSubstitutions (SS_GlyphIndex* ino, unsigned int inlen, unsigned int * olen, const char* script, const char* feature) { unsigned int i; unsigned int len = inlen; *olen = len; for (i=0; i= 3 && ino[curin+1] == halant) { SS_GlyphIndex tmp[3]; tmp[0] = ino[curin]; tmp[1] = ino[curin+2]; tmp[2] = ino[curin+1]; nind = getOTFLigature (script, feature, tmp, 3, &lig); } /* we have at least 2 characters to reorder */ else if (len-curin >= 2 && ino[curin] == halant) { SS_GlyphIndex tmp[2]; tmp[0] = ino[curin+1]; tmp[1] = ino[curin]; nind = getOTFLigature (script, feature, tmp, 2, &lig); fullglyph = false; /* set reorder if resulting/original glyphs is a reorder glyph */ if (reord && tmp[0] == reord) reorder = true; /* reorder shows that this should go to zero position */ } else { /* don't reorder - just apply feature. nothing will happen. */ nind = getOTFLigature (script, feature, &ino[curin], len-curin, &lig); } } else /* ! needreorder */ { /* just apply feature. */ nind = getOTFLigature (script, feature, &ino[curin], len-curin, &lig); } /* nind is the index of the ligature found */ bool isok = (nind != 0); /* i point to next character index. ino is not rewritten yet and lig may contain a ligature that was found. */ i=nind+curin; if (isok) { /* don't worry i can not be zero nind!=0 checks it*/ /* SD_G_INDIC_ZWNJ prevents half form when halant comes. */ /* halant + ZWNJ */ if (i+1==len && ino[i-1] == halant && ino[i] == SD_G_INDIC_ZWNJ) { isok = false; } } /* substitution can go ahead */ if (isok) { ino[curout] = lig; curout++; curin = i; /* we need to update base output parameter */ if (base) { unsigned int j, k; for (j=curin, k=curout; j0x0FFF) return 0; break; case SS_DEVANAGARI: if (in<0x0900 || in>0x097F) return 0; break; case SS_BENGALI: if (in<0x0980 || in>0x09FF) return 0; break; case SS_GURMUKHI: if (in<0x0A00 || in>0x0A7F) return 0; break; case SS_GUJARATI: if (in<0x0A80 || in>0x0AFF) return 0; break; case SS_ORIYA: if (in<0x0B00 || in>0x0B7F) return 0; break; case SS_TAMIL: if (in<0x0B80 || in>0x0BFF) return 0; break; case SS_TELUGU: if (in<0x0C00 || in>0x0C7F) return 0; break; case SS_KANNADA: if (in<0x0C80 || in>0x0CFF) return 0; break; case SS_MALAYALAM: if (in<0x0D00 || in>0x0D7F) return 0; break; case SS_SINHALA: if (in<0x0D80 || in>0x0DFF) return 0; break; case SS_THAI: if (in<0x0E00 || in>0x0E7F) return 0; break; case SS_LAO: if (in<0x0E80 || in>0x0EFF) return 0; break; case SS_TIBETAN: if (in<0x0F00 || in>0x0FFF) return 0; break; case SS_JAMO: if (in<0x1100 || in>0x11FF) return 0; break; default: break; } TTF_CMAP* cmap_table = (TTF_CMAP*) tables[SS_TB_CMAP]; int num_tables = ntohs(cmap_table->numberOfEncodingTables); /* Go for it directly */ bool uniconly = false; if (charEncoderTable != (unsigned int) num_tables) { TTF_CMAP_ENTRY* table_entry = &(cmap_table->encodingTable[charEncoderTable]); int offset = ntohl(table_entry->offset); int format = ntohs(*((SD_USHORT*)((SD_BYTE*)cmap_table+offset))); SS_GlyphIndex gi=0; switch (format) { case 0: gi = findGlyph0 ((TTF_CMAP_FMT0 *)((SD_BYTE *)cmap_table + offset), in); break; case 2: /* this has to have an encoder */ if (fontencoding.size()) { gi = findGlyph2 ((TTF_CMAP_FMT2 *)((SD_BYTE *)cmap_table + offset), in); } break; case 4: gi = findGlyph4 ((TTF_CMAP_FMT4 *)((SD_BYTE *)cmap_table + offset), in); break; case 8: /* TODO */ break; case 10: break; case 12: gi = findGlyph12 ((TTF_CMAP_FMT12 *)((SD_BYTE *)cmap_table + offset), in); break; default: break; } if (gi) return gi; /* look for unicode encoding only */ uniconly = true; } //fprintf (stderr, "Second round\n"); /* go through all tables */ int platform = 0; int encoding_id = 0; for (int i=0; i < num_tables; i++) { TTF_CMAP_ENTRY* table_entry = &(cmap_table->encodingTable[i]); int offset = ntohl(table_entry->offset); int format = ntohs(*((SD_USHORT*)((SD_BYTE*)cmap_table+offset))); bool isok = true; if (uniconly) { platform = ntohs(table_entry->platformID); encoding_id = ntohs(table_entry->encodingID); isok = false; switch (platform) { case TT_PLAT_ID_MICROSOFT: switch (encoding_id) { case TT_ENC_ID_MS_UNICODE: case TT_ENC_ID_MS_SURROGATES: isok = true; break; case TT_ENC_ID_MS_SYMBOL: case TT_ENC_ID_MS_SHIFT_JIS: case TT_ENC_ID_MS_BIG5: case TT_ENC_ID_MS_RPC: case TT_ENC_ID_MS_WANSUNG: case TT_ENC_ID_MS_JOHAB: default: break; } break; case TT_PLAT_ID_ISO: switch (encoding_id) { case TT_ENC_ID_ISO_ASCII: case TT_ENC_ID_ISO_10646: case TT_ENC_ID_ISO_8859_1: isok = true; break; case TT_ENC_ID_ANY: default: break; } break; case TT_PLAT_ID_APPLE: switch (encoding_id) { case TT_ENC_ID_APPLE_UNICODE_1_1: case TT_ENC_ID_APPLE_ISO_10646: case TT_ENC_ID_APPLE_UNICODE_2_0: isok = true; break; case TT_ENC_ID_APPLE_DEFAULT: default: break; } break; case TT_PLAT_ID_MACINTOSH: switch (encoding_id) { case TT_ENC_ID_MAC_ROMAN: isok = true; break; /* a lot of other encodings missing */ default: break; } break; default: break; } } if (!isok) continue; SS_GlyphIndex gi=0; switch (format) { case 0:/* TODO - SGC 8 bit*/ gi = findGlyph0 ((TTF_CMAP_FMT0 *)((SD_BYTE *)cmap_table + offset), in); break; case 2: /* this has to have an encoder */ if (fontencoding.size()) { gi = findGlyph2 ((TTF_CMAP_FMT2 *)((SD_BYTE *)cmap_table + offset), in); } break; case 4: gi = findGlyph4 ((TTF_CMAP_FMT4 *)((SD_BYTE *)cmap_table + offset), in); break; case 8: /* TODO */ break; case 10: break; case 12: gi = findGlyph12 ((TTF_CMAP_FMT12 *)((SD_BYTE *)cmap_table + offset), in); break; default: break; } /* if (uniconly && in > 0x1000 && format == 12 && gi) { fprintf (stderr, "platform = %d id=%d\n", platform, encoding_id); } */ if (gi) return gi; } return 0; } /** * Try to find Glyph in an encoding format 4 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph0 (TTF_CMAP_FMT0* encoding0, SS_UCS4 ucs4) { if (ucs4==0||ucs4>255) return 0; /* 1 byte does not need byteorder */ return (SS_GlyphIndex) encoding0->glyphIdArray[ucs4]; } /** * Try to find Glyph in an encoding format 2 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph2 (TTF_CMAP_FMT2* encoding2, SS_UCS4 ucs4) { if (ucs4 > 0xffff) return 0; unsigned int first = (ucs4>>8) &0xff; unsigned int second = ucs4 & 0xff; SD_USHORT n = 0; if (first == 0) { SD_USHORT k = ntohs (encoding2->subHeaderKeys[second]) / 8; if (k!=0) return 0; TTF_CMAP_FMT2_SUBHEADER * sh1 = &encoding2->subHeaders[0]; SD_USHORT firstCode = ntohs (sh1->firstCode); SD_USHORT entryCount = ntohs (sh1->entryCount); SD_USHORT ro = ntohs (sh1->idRangeOffset); if (firstCode!=0 || entryCount != 256 || ro == 0) return 0; unsigned int ind = (ro/2) + (second - firstCode); n = (SD_USHORT) ntohs(*(&sh1->idRangeOffset + ind)); if (n==0) return n; SD_SHORT delta = (SD_SHORT)ntohs (sh1->idDelta); /* negative possible */ n += delta; n = n % 0xffff; return n; } SD_USHORT k = ntohs (encoding2->subHeaderKeys[first]) / 8; /* 1 byte - we can not deal with this */ if (k==0) return 0; TTF_CMAP_FMT2_SUBHEADER * sh = &encoding2->subHeaders[k]; SD_USHORT firstCode = ntohs (sh->firstCode); SD_USHORT entryCount = ntohs (sh->entryCount); if (second < (unsigned int) firstCode || second >= ((unsigned int)firstCode + (unsigned int)entryCount)) return 0; SD_USHORT ro = ntohs (sh->idRangeOffset); /* If the idRangeOffset value for the segment is not 0, * the mapping of the character codes relies on * the glyphIndexArray. */ if (ro==0) return 0; /* * The value of the idRangeOffset is the number of bytes past * the actual location of the idRangeOffset word where the * glyphIndexArray element corresponding to firstCode * appears */ unsigned int ind = (ro/2) + (second - firstCode); n = (SD_USHORT) ntohs(*(&sh->idRangeOffset + ind)); if (n==0) return 0; /* If the idRangeOffset is 0, the idDelta value is added * directly to the character code to get the corresponding * glyph index */ SD_SHORT delta = (SD_SHORT)ntohs (sh->idDelta); /* negative possible */ n += delta; n = n % 0xffff; return (SS_GlyphIndex) n; } /** * Try to find Glyph in an encoding format 4 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph4 (TTF_CMAP_FMT4* encoding4, SS_UCS4 ucs4) { if (ucs4 > 0xffff) return 0; /* Finally we found it. Maybe */ int seg_c2 = ntohs(encoding4->segCountX2); SD_SHORT cmap_n_segs = seg_c2 >> 1; SD_BYTE* ptr = (SD_BYTE *)encoding4 + 14; SD_USHORT* cmap_seg_end = (SD_USHORT *) ptr; /* here comes a pad, then: */ SD_USHORT* cmap_seg_start = (SD_USHORT *) (ptr + seg_c2 + 2); SD_SHORT* cmap_idDelta = (SD_SHORT *) (ptr + (seg_c2 * 2 )+ 2); SD_SHORT* cmap_idRangeOffset = (SD_SHORT *) (ptr + (seg_c2 * 3) + 2); //SD_USHORT* glyphIndexArray = (SD_USHORT *) (ptr + (seg_c2 * 4) + 2); /* No choice. Go through the segments */ for (int j=0; j < cmap_n_segs; j++) { SD_USHORT start = ntohs(cmap_seg_start[j]); SD_USHORT end = ntohs(cmap_seg_end[j]); SD_USHORT ro = ntohs(cmap_idRangeOffset[j]); if (start == 0xffff) return 0; if (ucs4> end || ucs4 < start) continue; /* If the idRangeOffset value for the segment is not 0, * the mapping of the character codes relies on * the glyphIndexArray. */ SD_USHORT n = 0; SD_SHORT delta = ntohs(cmap_idDelta[j]); /* * Should be ro only - but it dumps on code2000.ttf * with U+5C81 if I don't check for delta too */ if (ro!=0 && delta==0) { //n = ntohs (glyphIndexArray[ro/2 + (ucs4 - start) + ro]); unsigned int ind = (ro/2) + (ucs4 - start); n = (SD_USHORT) ntohs(*(&cmap_idRangeOffset [j] + ind)); } /* If the idRangeOffset is 0, the idDelta value is added * directly to the character code to get the corresponding * glyph index */ else if (delta!=0) /* should not really check for != 0 - I am paranoid */ { /* negative possible */ n = ucs4 + delta; n = n % 0xffff; } return (SS_GlyphIndex) n; } return 0; } /** * Try to find Glyph in an encoding format 4 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph12 (TTF_CMAP_FMT12* encoding12, SS_UCS4 ucs4) { unsigned int count = ntohl (encoding12->nGroups); for (unsigned int i=0; ientry[i].startCharCode); unsigned int end = ntohl (encoding12->entry[i].endCharCode); if (ucs4 >= start && ucs4 <= end) { unsigned int gl = ntohl (encoding12->entry[i].startGlyphCode); gl += (ucs4 - start); if (gl > 0xffff) { return 0; } return (SS_GlyphIndex) gl; } } return 0; } /** * Draw a single glyph. * @pama canvas is the canvas to draw to * @param pen is the pen to draw with * @param m is the transformation matrix. * @param glyphindex is the local glyph index * @return nothing */ void SFontTTF::drawGlyph (SCanvas* canvas, const SS_Matrix2D& matrix, SS_GlyphIndex glyphno) { if (!isOK()) return ; if (glyphno == SD_G_INDIC_ZWJ) return; if (glyphno == SD_G_INDIC_ZWNJ) return; SD_BYTE* gstart = (SD_BYTE *) tables[SS_TB_GLYF]; TTF_GLYF* gtable; int len =0; if (longOffsets) { SD_ULONG* lloca = (SD_ULONG *) tables[SS_TB_LOCA]; unsigned int offs1 = ntohl (lloca[glyphno]); unsigned int offs2 = ntohl (lloca[glyphno+1]); gtable = (TTF_GLYF *) ((char*)gstart + offs1); len = offs2-offs1; } else { SD_USHORT* sloca = (SD_USHORT *) tables[SS_TB_LOCA]; gtable = (TTF_GLYF *) (gstart + (ntohs (sloca[glyphno]) << 1)); len = (ntohs (sloca[glyphno+1]) - ntohs (sloca[glyphno])) << 1; } if (len <= 0) { if (!broken && len < 0) { fprintf (stderr, "SFontTTF-2: non-existent glyph %u in %*.*s %d\n", (unsigned int) glyphno, SSARGS (name), (int) len) ; broken = true; } return; } TTF_GLYF* kludge = 0; if ((((unsigned long) gtable) & 1) != 0) { if (!broken) { fprintf (stderr, "SFontTTF: fixing unaligned %*.*s.\n", SSARGS(name)); broken = true; } kludge = new TTF_GLYF[len]; CHECK_NEW (kludge); memcpy (kludge, gtable, len * sizeof (TTF_GLYF)); gtable = kludge; } int ncontours = (int) ((short)ntohs (gtable->numberOfContours)); if (ncontours <= 0) { SD_BYTE *ptr = ((SD_BYTE *) gtable + sizeof(TTF_GLYF)); SD_SHORT *sptr = (SD_SHORT *) ptr; SD_USHORT flagbyte; do { SS_Matrix2D m; flagbyte = ntohs(*sptr); sptr ++; SS_GlyphIndex glyphindex = ntohs(*sptr); sptr ++; if (flagbyte & ARG_1_AND_2_ARE_WORDS) { /* we need to make it short as it can be negative */ m.t0 = (double) ((SD_SHORT)ntohs(*sptr)); sptr++; m.t1 = (double) ((SD_SHORT)ntohs(*sptr)); sptr++; } else { char* bptr = (char *)sptr; m.t0 = (signed char)bptr[0]; m.t1 = (signed char)bptr[1]; sptr ++; } if (flagbyte & WE_HAVE_A_SCALE) { m.x0 = m.y1 = f2dot14(*sptr); sptr ++; } else if (flagbyte & WE_HAVE_AN_X_AND_Y_SCALE) { m.x0 = f2dot14(*sptr); sptr ++; m.y1 = f2dot14(*sptr); sptr ++; } else if (flagbyte & WE_HAVE_A_TWO_BY_TWO) { m.x0 = f2dot14(*sptr); sptr ++; m.y0 = f2dot14(*sptr); sptr ++; m.x1 = f2dot14(*sptr); sptr ++; m.y1 = f2dot14(*sptr); sptr ++; } SS_Matrix2D mm = matrix * m; /* recursively call itself */ drawGlyph (canvas, mm, glyphindex); } while (flagbyte & MORE_COMPONENTS); if (kludge) delete kludge; return; } SD_USHORT* contour_end_pt = (SD_USHORT *) ((char *)gtable + sizeof(TTF_GLYF)); int last_point = (int) ntohs (contour_end_pt[ncontours-1]); int n_inst = (int) ntohs (contour_end_pt[ncontours]); SD_BYTE* ptr = ((SD_BYTE *)contour_end_pt) + (ncontours << 1) + n_inst + 2; int j = 0; int k = 0; SBinVector flags; while (k <= last_point) { flags.append (ptr[j]); if (ptr[j] & REPEAT) { for (int k1=0; k1 < ptr[j+1]; k1++) { k++; flags.append (ptr[j]); } j++; } j++; k++; } SBinVector xrel; SBinVector xcoord; for (k=0; k <= last_point; k++) { /* Process xrel */ if (flags[k] & XSD_SHORT) { if (flags[k] & XSAME) { xrel.append (ptr[j]); } else { xrel.append (-ptr[j]); } j++; } else if (flags[k] & XSAME) { xrel.append (0); } else { xrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } /* Process x coordinate */ if (k==0) { xcoord.append (xrel[k]); } else { xcoord.append (xrel[k] + xcoord[k-1]); } } SBinVector yrel; SBinVector ycoord; /* one more run fore yrel and ycoord */ for (k=0; k <= last_point; k++) { if (flags[k] & YSD_SHORT) { if (flags[k] & YSAME) { yrel.append (ptr[j]); } else { yrel.append (- ptr[j]); } j++; } else if (flags[k] & YSAME) { yrel.append (0); } else { yrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } if (k==0) { ycoord.append (yrel[k]); } else { ycoord.append (yrel[k] + ycoord[k-1]); } } bool first = true; j = 0; int i = 0; int contour_start = 0; while (i <= ntohs(contour_end_pt[ncontours-1])) { int contour_end = ntohs(contour_end_pt[j]); if (first) { moveto (canvas, matrix, xcoord[i], ycoord[i]); contour_start = i; first = false; } else if (flags[i] & ONOROFF) { lineto (canvas, matrix, xcoord[i], ycoord[i]); } else /* curvy */ { int cs = i-1; int ce = 0; bool finished = false; int nguide = 0; while (!finished) { if (i == contour_end+1) { ce = contour_start; finished = true; } else if (flags[i] & ONOROFF) { ce = i; finished = true; } else { i++; nguide++; } } switch (nguide) { case 0: lineto (canvas, matrix, xcoord[ce], ycoord[ce]); break; case 1: cureveto (canvas, matrix, (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (2*xcoord[cs+1]+xcoord[ce])/3, (2*ycoord[cs+1]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; case 2: cureveto (canvas, matrix, (-xcoord[cs]+4*xcoord[cs+1])/3, (-ycoord[cs]+4*ycoord[cs+1])/3, (4*xcoord[cs+2]-xcoord[ce])/3, (4*ycoord[cs+2]-ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; case 3: cureveto (canvas, matrix, (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (5*xcoord[cs+1]+xcoord[cs+2])/6, (5*ycoord[cs+1]+ycoord[cs+2])/6, (xcoord[cs+1]+xcoord[cs+2])/2, (ycoord[cs+1]+ycoord[cs+2])/2); cureveto (canvas, matrix, (xcoord[cs+1]+5*xcoord[cs+2])/6, (ycoord[cs+1]+5*ycoord[cs+2])/6, (5*xcoord[cs+2]+xcoord[cs+3])/6, (5*ycoord[cs+2]+ycoord[cs+3])/6, (xcoord[cs+3]+xcoord[cs+2])/2, (ycoord[cs+3]+ycoord[cs+2])/2); cureveto (canvas, matrix, (xcoord[cs+2]+5*xcoord[cs+3])/6, (ycoord[cs+2]+5*ycoord[cs+3])/6, (2*xcoord[cs+3]+xcoord[ce])/3, (2*ycoord[cs+3]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; default: int k1 = cs + nguide; cureveto (canvas, matrix, (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (5*xcoord[cs+1]+xcoord[cs+2])/6, (5*ycoord[cs+1]+ycoord[cs+2])/6, (xcoord[cs+1]+xcoord[cs+2])/2, (ycoord[cs+1]+ycoord[cs+2])/2); for (k = cs+2; k <= k1-1; k++) { cureveto (canvas, matrix, (xcoord[k-1]+5*xcoord[k])/6, (ycoord[k-1]+5*ycoord[k])/6, (5*xcoord[k]+xcoord[k+1])/6, (5*ycoord[k]+ycoord[k+1])/6, (xcoord[k]+xcoord[k+1])/2, (ycoord[k]+ycoord[k+1])/2); } cureveto (canvas, matrix, (xcoord[k1-1]+5*xcoord[k1])/6, (ycoord[k1-1]+5*ycoord[k1])/6, (2*xcoord[k1]+xcoord[ce])/3, (2*ycoord[k1]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; } /* end switch (nguide) */ } if (i >= contour_end) { first = true; i = contour_end + 1; canvas->closepath (); j++; } else { i++; } } if (kludge!=0) delete kludge; return; } /** * The moveto */ static void moveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y) { double x = m.x0 * double (_x) + m.y0 * double (_y) + m.t0; double y = m.x1 * double (_x) + m.y1 * double (_y) + m.t1; canvas->moveto (x, y); } /** * The lineto */ static void lineto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y) { double x = m.x0 * double (_x) + m.y0 * double (_y) + m.t0; double y = m.x1 * double (_x) + m.y1 * double (_y) + m.t1; canvas->lineto (x, y); } /** * The curveto */ static void cureveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x0, SD_SHORT _y0, SD_SHORT _x1, SD_SHORT _y1, SD_SHORT _x2, SD_SHORT _y2) { double x0 = m.x0 * double (_x0) + m.y0 * double (_y0) + m.t0; double y0 = m.x1 * double (_x0) + m.y1 * double (_y0) + m.t1; double x1 = m.x0 * double (_x1) + m.y0 * double (_y1) + m.t0; double y1 = m.x1 * double (_x1) + m.y1 * double (_y1) + m.t1; double x2 = m.x0 * double (_x2) + m.y0 * double (_y2) + m.t0; double y2 = m.x1 * double (_x2) + m.y1 * double (_y2) + m.t1; canvas->curveto (x0, y0, x1, y1, x2, y2); } /** * Create double numbers between -2 .. 1.99994 * from a packed short. */ static double f2dot14 (short x) { short y = ntohs(x); return (y >> 14) + ((y & 0x3fff) / 16384.0); } static void debugChars (const char* msg, const SS_GlyphIndex* gchars, unsigned int len) { #ifdef DEBUG_LIGATURE fprintf (stderr, "SFontTTF.cpp: %s", msg); for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* 0xffffffff */ static int SD_TTF_NAN=-1; #include "swindow/SFontTTF.h" #include "swindow/SScriptProcessor.h" #include "swindow/STTables.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUniMap.h" #include "stoolkit/SUtil.h" #include "stoolkit/SCluster.h" #include "stoolkit/SCharClass.h" /* * ntohl */ #ifndef USE_WINAPI #include #else #include #endif #include #include /* * These glyphs should not exists khmm.. I said these glyphs should not exist. * Unicode magic :) */ #define SD_G_INDIC_ZWNJ 0xfffe #define SD_G_INDIC_ZWJ 0xffff /** * This is a hash width key platform '~' encoding * and value SUnimap. */ static const SString SS_TB_NAME("name"); static const SString SS_TB_HEAD("head"); static const SString SS_TB_HHEA("hhea"); static const SString SS_TB_POST("post"); static const SString SS_TB_GLYF("glyf"); static const SString SS_TB_CMAP("cmap"); static const SString SS_TB_KERN("kern"); static const SString SS_TB_MAXP("maxp"); static const SString SS_TB_HTMX("hmtx"); static const SString SS_TB_LOCA("loca"); static const SString SS_TB_OS2("OS/2"); static const long SS_TN_NOTICE=0; static const long SS_TN_FAMILY=1; static const long SS_TN_WEIGHT=2; static const long SS_TN_X3=3; static const long SS_TN_FULLNAME=4; static const long SS_TN_VERSION=5; static const long SS_TN_FONTNAME=6; static const long SS_TN_X7=7; static const long SS_TN_MAX=8; static void debugChars (const char* msg, const SS_GlyphIndex* gchars, unsigned int len); static SS_GlyphIndex findGlyph0 (TTF_CMAP_FMT0* encoding0, SS_UCS4 ucs4); static SS_GlyphIndex findGlyph4 (TTF_CMAP_FMT4* encoding4, SS_UCS4 ucs4); static SS_GlyphIndex findGlyph12 (TTF_CMAP_FMT12* encoding12, SS_UCS4 ucs4); static SS_GlyphIndex findGlyph2 (TTF_CMAP_FMT2* encoding2, SS_UCS4 ucs4); static double f2dot14 (short x); static void moveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y); static void lineto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y); static void cureveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x0, SD_SHORT _y0, SD_SHORT _x1, SD_SHORT _y1, SD_SHORT _x2, SD_SHORT _y2); /** * @author: Gaspar Sinai * @version: 2000-04-23 * Many parts of this file are originally written by Andrew Weeks. */ SS_UCS4 SFontTTF::setBaseCharacter = 0; /** * Initialize a TTF * @param name is the font file */ SFontTTF::SFontTTF (const SFile& _file, const SString& _fontencoding) : file (_file) { ok = true; fontencoding = _fontencoding; hardWire = SS_NONE; defaultGlyph = 0; baseGlyph = 0; } SFontTTF::~SFontTTF () { } bool SFontTTF::isOK() { if (!ok) return false; /* initialize */ if (name.size()==0) { name = file.getName(); if (fontencoding == "mslvt") { hardWire = SS_MSLVT; fontencoding.clear(); } else if (fontencoding == "nojamo") { hardWire = SS_NOJAMO; fontencoding.clear(); } else if (fontencoding == "jamo") { hardWire = SS_JAMO; fontencoding.clear(); } /* Experimental filters for whole ranges */ else if (fontencoding == "indic") { hardWire = SS_INDIC; fontencoding.clear(); } else if (fontencoding == "deva") { hardWire = SS_DEVANAGARI; fontencoding.clear(); } else if (fontencoding == "beng") { hardWire = SS_BENGALI; fontencoding.clear(); } else if (fontencoding == "guru") { hardWire = SS_GURMUKHI; fontencoding.clear(); } else if (fontencoding == "gujr") { hardWire = SS_GUJARATI; fontencoding.clear(); } else if (fontencoding == "orya") { hardWire = SS_ORIYA; fontencoding.clear(); } else if (fontencoding == "taml") { hardWire = SS_TAMIL; fontencoding.clear(); } else if (fontencoding == "telu") { hardWire = SS_TELUGU; fontencoding.clear(); } else if (fontencoding == "knda") { hardWire = SS_KANNADA; fontencoding.clear(); } else if (fontencoding == "mlym") { hardWire = SS_MALAYALAM; fontencoding.clear(); } else if (fontencoding == "sinh") { hardWire = SS_SINHALA; fontencoding.clear(); } else if (fontencoding == "thai") { hardWire = SS_THAI; fontencoding.clear(); } else if (fontencoding == "lao") { hardWire = SS_LAO; fontencoding.clear(); } else if (fontencoding == "tibt") { hardWire = SS_TIBETAN; fontencoding.clear(); } else { SString n = name; n.lower(); /* only Ogulim may work. forget any prefix.*/ if (n.match("*ogulim.ttf")) { hardWire = SS_MSLVT; fontencoding.clear(); } } if (file.size() < 0) { ok = false; } else { image = file.getFileImage(); ok = image.size()>0 && init(); } } return ok; } /** * initialize all numbers. * return false if something is wrong with this font. */ bool SFontTTF::init () { TTF_DIRECTORY* directory = (TTF_DIRECTORY *) image.array(); if (ntohl (directory->sfntVersion) != 0x00010000) { fprintf (stderr, "SFontTTF: BAD TTF file [%*.*s].\n", SSARGS(name)); return false; } TTF_DIR_ENTRY* dir_entry = &(directory->list); char tag[5]; unsigned int i; for (i=0; i < (unsigned short)ntohs(directory->numTables); i++) { for (unsigned int j=0; j<4; j++) { tag[j] = dir_entry->tag[j]; } tag[4] = 0; tables.put (tag, image.array() + ntohl (dir_entry->offset)); if (memcmp(tag, "EBDT", 4)==0 || memcmp(tag, "EBLC", 4)==0 || memcmp(tag, "EBSC", 4)==0) { //fprintf (stderr, "SFontTTF info: TTF file [%*.*s] contains bitmaps.\n", // SSARGS(name)); } dir_entry++; } if (!processName()) { return false; } if (!checkTables()) { return false; } broken = false; TTF_CMAP* cmap_table = (TTF_CMAP*) tables[SS_TB_CMAP]; int num_tables = ntohs(cmap_table->numberOfEncodingTables); TTF_OS2* os2table = (TTF_OS2*) tables[SS_TB_OS2]; if (os2table) { //defaultGlyph = ntohs(os2table->usDefaultChar); //unsigned int rangel = ntohl (os2table->ulUnicodeRange1); //unsigned int rangeh = ntohl (os2table->ulUnicodeRange2); //fprintf (stderr, "%*.*s defaultGlyph=%u %u %u\n", // SSARGS(name), defaultGlyph, rangel, rangeh); } /* We go through all the tables and choose the bes table */ int bestType = 0; if (fontencoding.size()) { charEncoder = SUniMap(fontencoding); if (!charEncoder.isOK()) { fprintf (stderr, "SFontTTF: umap '%*.*s' not found for '%*.*s'.\n", SSARGS(fontencoding), SSARGS(name)); } } charEncoderTable = (unsigned int) num_tables; for (i=0; i < (unsigned int) num_tables; i++) { TTF_CMAP_ENTRY* table_entry = &(cmap_table->encodingTable[i]); int offset = ntohl(table_entry->offset); TTF_CMAP_FMT4* encoding4 = (TTF_CMAP_FMT4 *) ((SD_BYTE *)cmap_table + offset); int format = ntohs(encoding4->format); int platform = ntohs(table_entry->platformID); int encoding_id = ntohs(table_entry->encodingID); /** * All * platform == TT_PLAT_ID_MICROSOFT(3) * encoding_id == TT_ENC_ID_ISO_10646 (1) * will have TTF_CMAP_FMT4 (format==4 * character map. Others *might* have. * * TODO: support more cmap formats like 32 bit unicode. * currently 32 bit unicode is done through external map. */ if (format != 4) continue; /* could not find any good table */ if (charEncoderTable ==(unsigned int) num_tables) { charEncoderTable = i; } /* fprintf (stderr, "%*.*s platform=%d encoding=%d at %u\n", SSARGS(name), platform, encoding_id, i); */ switch (platform) { case TT_PLAT_ID_MICROSOFT: switch (encoding_id) { case TT_ENC_ID_MS_SYMBOL: break; case TT_ENC_ID_MS_UNICODE: bestType = 9; /* these mystic numbers are my scores */ charEncoderTable = i; break; case TT_ENC_ID_MS_SURROGATES: bestType = 10; /* these mystic numbers are my scores */ charEncoderTable = i; break; case TT_ENC_ID_MS_SHIFT_JIS: case TT_ENC_ID_MS_BIG5: case TT_ENC_ID_MS_RPC: case TT_ENC_ID_MS_WANSUNG: case TT_ENC_ID_MS_JOHAB: default: break; } break; case TT_PLAT_ID_ISO: switch (encoding_id) { case TT_ENC_ID_ANY: break; case TT_ENC_ID_ISO_ASCII: if (bestType < 2) { bestType = 2; charEncoderTable = i; } break; case TT_ENC_ID_ISO_10646: if (bestType < 8) { bestType = 8; charEncoderTable = i; } break; case TT_ENC_ID_ISO_8859_1: if (bestType < 4) { bestType = 4; charEncoderTable = i; } break; default: break; } break; case TT_PLAT_ID_APPLE: switch (encoding_id) { case TT_ENC_ID_APPLE_DEFAULT: break; case TT_ENC_ID_APPLE_UNICODE_1_1: case TT_ENC_ID_APPLE_ISO_10646: case TT_ENC_ID_APPLE_UNICODE_2_0: if (bestType < 7) { bestType = 8; charEncoderTable = i; } default: break; } break; case TT_PLAT_ID_MACINTOSH: switch (encoding_id) { case TT_ENC_ID_MAC_ROMAN: /* a lot of other encodings missing */ default: break; } default: break; } } /* look at all tables SGC */ if (fontencoding.size()!=0) charEncoderTable =(unsigned int) num_tables; //fprintf (stderr, "SGC %*.*s besttype = %d table=%d count=%d\n", // SSARGS (name), bestType, charEncoderTable, num_tables); //SString chk = name; chk.lower(); return true; } /** * Process the name table */ bool SFontTTF::processName () { TTF_NAME* name_table = (TTF_NAME*) tables[SS_TB_NAME]; if (name_table==0) { getName (SS_TN_FONTNAME, name.array(), name.size()); fprintf (stderr, "SFontTTF: No name fields in %*.*s\n", SSARGS(name)); fprintf (stderr, "SFontTTF: records:["); for (unsigned int i=0; inameRecords); char* string_area = (char *)name_table + ntohs(name_table->offset); int found=0; int i; for (i=0; i < ntohs (name_table->numberOfNameRecords); i++) { short platform = ntohs(name_record->platformID); if (platform == 3) { found = 1; short len = ntohs(name_record->stringLength); short strOffset = ntohs(name_record->stringOffset); long nameId = ntohs(name_record->nameID); if (nameId < SS_TN_MAX) { getName (nameId, &string_area[strOffset], len); } } name_record++; } name_record = &(name_table->nameRecords); if (!found) for (i=0; i < ntohs(name_table->numberOfNameRecords); i++) { short platform = ntohs(name_record->platformID); if (platform ==1) { found = 1; short len = ntohs(name_record->stringLength); short strOffset = ntohs(name_record->stringOffset); long nameId = ntohs(name_record->nameID); if (nameId < SS_TN_MAX) { getName (nameId, &string_area[strOffset], len); } } name_record++; } if (!found) { fprintf (stderr, "SFontTTF: BAD Name fields in %*.*s\n", SSARGS(name)); return false; } if (names.get (SS_TN_FONTNAME) == 0 || names[SS_TN_FONTNAME].size() == 0) { getName (SS_TN_FONTNAME, names[SS_TN_FULLNAME].array(), names[SS_TN_FULLNAME].size()); } return true; } /** * put the string from str into names. * @param id is SS_TN_ something. * @param str is the input string * @param len is the size of the stirng */ void SFontTTF::getName (long id, const char* str, int len) { SString s; for (int i=0; iindexToLocFormat); if (longOffsets != 0 && longOffsets != 1) { fprintf (stderr, "SFontTTF: BAD TTF file [%*.*s] - indexToLocFormat.\n", SSARGS(name)); return false; } if (tables[SS_TB_HHEA] == 0) { fprintf (stderr, "SFontTTF: BAD hhea table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_GLYF] == 0) { fprintf (stderr, "SFontTTF: BAD glyf table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_CMAP] == 0) { fprintf (stderr, "SFontTTF: BAD cmap table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_HTMX] == 0) { fprintf (stderr, "SFontTTF: BAD htmx table in %*.*s\n", SSARGS(name)); return false; } if (tables[SS_TB_LOCA] == 0) { fprintf (stderr, "SFontTTF: BAD loca table in %*.*s\n", SSARGS(name)); return false; } TTF_POST_HEAD* post_table = (TTF_POST_HEAD*) tables[SS_TB_POST]; if (post_table == 0) { fprintf (stderr, "SFontTTF: missing post table in %*.*s. Using defaults\n", SSARGS(name)); italicAngle = 0.0; underlineThickness = 100; underlinePosition = 0.0; isFixedPitch = 0.0; } else { italicAngle = (double) (ntohs(post_table->italicAngle.upper)) + (ntohs(post_table->italicAngle.lower) / 65536.0); underlineThickness = (double)ntohs(post_table->underlineThickness); underlinePosition = (double)ntohs(post_table->underlinePosition); isFixedPitch = (ntohl(post_table->isFixedPitch))? true : false; } TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; lineGap = (double) ((short)htons (hhea_table->lineGap)); charWidth = (double) ((short)(ntohs(head_table->xMax)+ ntohs(head_table->xMin))); charAscent = (double) ((short)htons (hhea_table->ascender)); /* Be aware charDescent is negative! */ charDescent = (double) ((short)htons (hhea_table->descender)); /* kairali-S: dscale=1000 charAscent=298 charDescent=-202 dscale_factor dscale/(charAscent-charDescent) */ /* charDescent is negative - take charAscent aonly to determine size */ double charheight = charAscent; if (charheight < 1) charheight = 1; scaleFactor = 1.0 / charheight; /* short unitsPerEM = ntohs (head_table->unitsPerEm); fprintf (stderr, "font=%*.*s charheight=%g unitsPerEM=%d\n", SSARGS(name), charheight, unitsPerEM); */ return true; } /** * set the base character for better glyph positioning * @param base is the base character relative to which * we will position all of out composing marks. * When the draw routine is called with non-base * character, then the position will be at the end * of the glyph visually, except for U+0500..U+0900 * composing marks, where matrix will be set at the * beginning of the base glyph, viaually */ void SFontTTF::setBase(SS_UCS4 base) { setBaseCharacter = base; /* we do this font unicode fonts only now */ } /** * Get the x,y offset for better positioning of diacritical marks. * This routine is supposed to be */ void SFontTTF::getBaseOffsets (const SS_Matrix2D& m, SS_UCS4 _uch, double* offx, double* offy) { *offx = 0.0; *offy = 0.0; if (!isOK() || setBaseCharacter==0 || setBaseCharacter==_uch) return; if (setBaseCharacter == baseCharacter && baseGlyph==0) { return; } if (setBaseCharacter != baseCharacter) { baseCharacter = setBaseCharacter; if (fontencoding.size()!=0 || baseCharacter >= 0x80000000 || !isOK() || hardWire == SS_MSLVT || hardWire == SS_NOJAMO) { baseGlyph = 0; return; } baseGlyph = findGlyph (baseCharacter); if (baseGlyph==0) { return; } //fprintf (stderr, "baseCharacter=%04X glyph=%04X\n", baseCharacter, baseGlyph); /* get the width of the base char */ baseWidth = getGlyphWidth (baseGlyph); } SString key ((char*)&baseGlyph, sizeof (SS_GlyphIndex)); key.append (SString ((char*)&_uch, sizeof (SS_UCS4))); int cxy = mark2Base.get (key); if (cxy == SD_TTF_NAN) return; /* we had it not found. SGC */ int cx = cxy & 0xffff; if (cx > 0x7fff) cx -= 0x10000 ; int cy = (cxy >> 16) & 0xffff; if (cy > 0x7fff) cy -= 0x10000; if (cx != 0 || cy != 0) { *offx = cx * m.x0; *offy = cy * m.y1; return; } SS_GlyphIndex gi = findGlyph(_uch); if (gi==0) { mark2Base.put (key, SD_TTF_NAN); return; } getOTFMarkToBase (baseGlyph, gi, &cx, &cy); if (cx==0 && cy==0) { mark2Base.put (key, SD_TTF_NAN); return; } /* In sync with SFont.cpp - we need to undo fallback positioning */ if (!isLeftAligned(_uch)) { cx -= (baseWidth - getGlyphWidth (gi)); } cxy = (cy << 16) & 0xffff0000; cxy = cxy | (cx & 0xffff); mark2Base.put (key, cxy); *offx = (double)cx * m.x0; *offy = (double)cy * m.y1; return; } /** * Get the unadjusted width of the glyph */ int SFontTTF::getGlyphWidth (SS_GlyphIndex glyph) { TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; int n_hmetrics = ntohs(hhea_table->numberOfHMetrics); short _bw; /* left side bearing is grossly ignored */ if (glyph >= n_hmetrics) { _bw = ntohs (hmtx_entry[n_hmetrics-1].advanceWidth); } else { _bw = ntohs(hmtx_entry[glyph].advanceWidth); } int w = (int) ((_bw>0) ? _bw : -_bw); return w; } /** * Draw a single unicode character on canvas using the pen. * before calling this, you should call a newpath and * after calling this you may want to call fill. * @param canvas is the canvas to draw to * @param m is the transformation matrix. * @param uch is the unicode character * @param len is the length of unicode array * @return true if drawn */ bool SFontTTF::draw (SCanvas* canvas, const SS_Matrix2D& matrix, SS_UCS4 _uch) { if (!isOK()) return false; SV_GlyphIndex gi; if (!findGlyphs (_uch, &gi)) return false; /* This makes things a bit faster */ if (gi.size()==1) { SS_GlyphIndex g = gi[0]; if (g == SD_G_INDIC_ZWJ || g== SD_G_INDIC_ZWNJ) return true; drawGlyph (canvas, matrix, g); return true; } SS_Matrix2D mo = matrix; /* a cluster can defined positions to fine adjust */ const SV_INT *positions = mark2BaseList.get ( SString((char*) &_uch, sizeof (SS_UCS4))); /* do we have fine-grained positions ?*/ if (positions!= 0 && positions->size() >= gi.size()) { mo = matrix; const SS_INT* posarray = positions->array(); for (unsigned int i=0; i 0x7fff) xdiff -= 0x10000 ; int ydiff = (xydiff >> 16) & 0xffff; if (ydiff > 0x7fff) ydiff -= 0x10000; #ifdef DEBUG_POSITION fprintf (stderr, "%u->Positions[%u]=%d,%d\n", _uch, gi[i], xdiff, ydiff); #endif /* DEBUG_LIGATURE */ /* we have absolute positions */ mo.t0 = matrix.t0 + matrix.x0 * xdiff; mo.t1 = matrix.t1 + matrix.y1 * ydiff; /* draw the glyph at this position */ SS_GlyphIndex g = gi[i]; if (g != SD_G_INDIC_ZWJ && g != SD_G_INDIC_ZWNJ) { drawGlyph (canvas, mo, g); } } } else { for (unsigned int i=0; i 0x7fffffff) { const SV_INT* positions = mark2BaseList.get ( SString((char*) &_uch, sizeof (SS_UCS4))); /* do we have fine-grained positions ?*/ if (positions!= 0 && positions->size() > gi.size()) { const SS_INT* arr = positions->array(); if (width_) { int wid = arr[positions->size()-1]; *width_ = double (wid) * m.x0; } return true; } } if (!width_) return true; /** * Multiple glyphs draw on top of each other. */ double max = 0; /* We draw one after the other.*/ for (unsigned int i=0; i 0x7ffffff) return false; if (c == 0x0c55) return false; SS_GlyphIndex glyphno = ((SFontTTF*)this)->findGlyph (c); if (glyphno == 0) return false; if (glyphno == SD_G_INDIC_ZWJ) return false; if (glyphno == SD_G_INDIC_ZWNJ) return false; int lsb = getLeftSideBearing (glyphno); return (lsb >= 0); } /** * Find out the width, knowing the local glyph number * @param m is the transformation matrix * @param glyphno is the local glyph index in the glyph table. */ double SFontTTF::widthGlyph (const SS_Matrix2D& m, SS_GlyphIndex glyphno) { if (!isOK()) return 0.0; if (glyphno == SD_G_INDIC_ZWJ) return 0.0; if (glyphno == SD_G_INDIC_ZWNJ) return 0.0; SString key ((char*)&glyphno, sizeof (SS_GlyphIndex)); int cw = char2Width.get (key); if (cw == SD_TTF_NAN) return 0.0; if (cw != 0) return (double)cw * m.x0; TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; int n_hmetrics = ntohs(hhea_table->numberOfHMetrics); //SD_FWORD* lsblist = (SD_FWORD *) &hmtx_entry[n_hmetrics]; unsigned short w; /* left side bearing is grossly ignored */ if (glyphno >= n_hmetrics) { /* get the last one */ w = ntohs (hmtx_entry[n_hmetrics-1].advanceWidth); } else { w = ntohs(hmtx_entry[glyphno].advanceWidth); } int wi = (int) w; /* replace 0.0 with SD_NAN */ if (wi==0) { char2Width.put (key, SD_TTF_NAN); } else { char2Width.put (key, (int)w); } return double (wi) * m.x0; } /** * \brief Find out raw, unscaled width of glyph. * \glyphno is th glyph * \return a with that can be negative. */ int SFontTTF::getWidth (SS_GlyphIndex glyphno) { if (!isOK()) return 0; if (glyphno == SD_G_INDIC_ZWJ) return 0; if (glyphno == SD_G_INDIC_ZWNJ) return 0; SString key ((char*)&glyphno, sizeof (SS_GlyphIndex)); TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; unsigned short n_hmetrics = ntohs(hhea_table->numberOfHMetrics); unsigned short w; /* left side bearing is grossly ignored */ if (glyphno >= n_hmetrics) { /* get the last one */ w = ntohs (hmtx_entry[n_hmetrics-1].advanceWidth); } else { w = ntohs(hmtx_entry[glyphno].advanceWidth); } int wi = (int) w; int lsb = getLeftSideBearing (glyphno); if (lsb < 0) return -wi; return wi; } /** * \brief Find out raw, unscaled left-side bearing. * \glyphno is th glyph * \return a with that can be negative. */ int SFontTTF::getLeftSideBearing (SS_GlyphIndex glyphno) const { if (glyphno == SD_G_INDIC_ZWJ) return 0; if (glyphno == SD_G_INDIC_ZWNJ) return 0; SString key ((char*)&glyphno, sizeof (SS_GlyphIndex)); TTF_HHEA* hhea_table = (TTF_HHEA*) tables[SS_TB_HHEA]; LONGHORMETRIC* hmtx_entry = (LONGHORMETRIC*) tables[SS_TB_HTMX]; if (hmtx_entry == 0 || hhea_table==0) return 0; TTF_MAXP* maxp_table = (TTF_MAXP*) tables[SS_TB_MAXP]; unsigned short numg = (maxp_table) ? htons (maxp_table->numGlyphs) : 0; unsigned short n_hmetrics = ntohs(hhea_table->numberOfHMetrics); short lsb; if (glyphno >= n_hmetrics) { if (numg == 0) { lsb = ntohs (hmtx_entry[n_hmetrics-1].lsb); } else { short* arr = (short*) &hmtx_entry[n_hmetrics]; lsb = htons (arr[glyphno-n_hmetrics]); } } else { lsb = ntohs(hmtx_entry[glyphno].lsb); } return (int) lsb; } /*! * \brief Get the raw (unscaled) bounding box. * \return true if such a box exists. */ bool SFontTTF::getBBOX (SS_GlyphIndex glyphno, int* xMin, int* yMin, int* xMax, int* yMax) const { if (glyphno == SD_G_INDIC_ZWJ) return false; if (glyphno == SD_G_INDIC_ZWNJ) return false; SD_BYTE* gstart = (SD_BYTE *) tables[SS_TB_GLYF]; if (gstart == 0) return false; TTF_GLYF* gtable; int len =0; if (longOffsets) { SD_ULONG* lloca = (SD_ULONG *) tables[SS_TB_LOCA]; if (lloca == 0) return false; unsigned int offs1 = ntohl (lloca[glyphno]); unsigned int offs2 = ntohl (lloca[glyphno+1]); gtable = (TTF_GLYF *) ((char*)gstart + offs1); len = offs2-offs1; } else { SD_USHORT* sloca = (SD_USHORT *) tables[SS_TB_LOCA]; if (sloca == 0) return false; gtable = (TTF_GLYF *) (gstart + (ntohs (sloca[glyphno]) << 1)); len = (ntohs (sloca[glyphno+1]) - ntohs (sloca[glyphno])) << 1; } if (len <= 0) { return false; } TTF_GLYF* kludge = 0; if ((((unsigned long) gtable) & 1) != 0) { kludge = new TTF_GLYF[len]; CHECK_NEW (kludge); memcpy (kludge, gtable, len * sizeof (TTF_GLYF)); gtable = kludge; } short xmin = ntohs (gtable->xMin); short xmax = ntohs (gtable->xMax); short ymin = ntohs (gtable->yMin); short ymax = ntohs (gtable->yMax); *xMin = xmin; *yMin = ymin; *xMax = xmax; *yMax = ymax; if (kludge) delete kludge; return true; } /** * Return the calibrated ascent * @param m is the transformation matrix. */ double SFontTTF::ascent (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = charAscent * m.y1; if (rvle < 0) { // fprintf (stderr, "FIXME negative ascent: SFontTTF.cpp\n"); return 1; } return rvle; } /** * Return the calibrated descent * @param m is the transformation matrix. */ double SFontTTF::descent (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = - charDescent * m.y1; if (rvle < 0) { // fprintf (stderr, "FIXME negative descent: SFontTTF.cpp\n"); return 1; } return rvle; } /** * Return the calibrated avarage width * @param m is the transformation matrix. */ double SFontTTF::width (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = charWidth * m.x0; if (rvle < 0) return -rvle; return rvle; } /** * Return the calibrated gap * @param m is the transformation matrix. */ double SFontTTF::gap (const SS_Matrix2D& m) { if (!isOK()) return 0.0; double rvle = lineGap * m.y1; if (rvle < 0) return -rvle; return rvle; } /** * Return the scale factor. You multiply this with point size you want. * matrix diagonals for a 10 point font is scale, scale */ double SFontTTF::scale () { if (!isOK()) return 0.0; return scaleFactor; } /** * This routine tries to find the glyph indeces of a unicode input stream * @param in is the input stream * @param len is the length if in * @param out is the output * @return the nuber of characters processed in 'in' */ bool SFontTTF::findGlyphs (SS_UCS4 in, SV_GlyphIndex* out) { if (!isOK()) return false; SString key ((char*)&in, sizeof (SS_UCS4)); const SString* cached = char2Glyphs.get (key); if (cached) { if (cached->size()size(); for (unsigned int i=0; iappend (*((SS_GlyphIndex*)&cached->array()[i])); } return true; } TTF_CMAP* cmap_table = (TTF_CMAP*) tables[SS_TB_CMAP]; int num_tables = ntohs(cmap_table->numberOfEncodingTables); if (num_tables ==0) { SString chc; char2Glyphs.put (key, chc); return false; } /* Try to get the ligature index from OTF */ SS_UCS4 lig = in; unsigned int liglen = 0; unsigned int scriptcode = getLigatureScriptCode (lig); /* no support yet for this monster */ if (scriptcode == SD_COMBINING_LIGATURE) { /* never comes here */ SString chc; char2Glyphs.put (key, chc); return false; } else if (scriptcode == SD_AS_SHAPES && fontencoding.size() == 0 && hasOTFLigatures()) { /* No encoder support for OTF single substitution */ if (hardWire == SS_MSLVT) { SString chc; char2Glyphs.put (key, chc); return false; } bool success = false; unsigned int fcode = (lig & 0xf000) >> 12; SS_UCS4 gcode = lig & 0x0fff; SS_GlyphIndex gi[2]; unsigned int len = 1; bool shouldBe1 = true; switch (gcode) { case 1: /* A000X001 */ gi[0] = findGlyph (0x072A); gi[1] = findGlyph (0x0308); len = 2; shouldBe1 = false; break; case 2: /* A000X002 */ gi[0] = findGlyph (0x06A9); gi[1] = findGlyph (0x0627); len = 2; break; case 3: /* A000X003 */ gi[0] = findGlyph (0x06A9); gi[1] = findGlyph (0x0644); len = 2; break; default: gi[0] = findGlyph (gcode); break; } /* Check if we got all glyphs */ for (unsigned int i=0; i? */ else if (getOTFLigature ("urd ", "ccmp", gi, 2, &out, 4)) { gi[0] = out; len = 1; success = true; } else if (getOTFLigature ("urdu", "ccmp", gi, 2, &out, 4)) { gi[0] = out; len = 1; success = true; } } const char* fname = getShapeCode (fcode-1); SS_GlyphIndex go = substituteOTFGlyph (fname, gi[0]); /* use it if found - fallback otherwise */ if (go) { gi[0] = go; success = true; } else if (len!=2)/* fallback where placement is important */ { SString chc; char2Glyphs.put (key, chc); return false; } /* Try to get a ligature substitution */ if (len==2) { SS_GlyphIndex out = 0; /* FIXME: How about URDU? * should we do this before shaping? */ if (getOTFLigature ("syrc", "rlig", gi, 2, &out, 4)) { gi[0] = out; len = 1; success = true; } } if (shouldBe1 && len != 1) success = false; if (success) { out->append (gi[0]); if (len==2) out->append (gi[1]); SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } else { SString chc; char2Glyphs.put (key, chc); return false; } } /* INDIC */ else if (isLigature (lig) && hasOTFLigatures() && scriptcode != SD_AS_SHAPES && scriptcode != SD_AS_LITERAL && (liglen=getLigatureUnicode(lig, 0)) > 0) { if ((hardWire == SS_MSLVT || hardWire == SS_NOJAMO) && scriptcode!=SD_HANGUL_PREC && scriptcode!=SD_HANGUL_JAMO) { SString chc; char2Glyphs.put (key, chc); return false; } bool fixedcluster = true; SS_UCS4* chars = new SS_UCS4[liglen]; CHECK_NEW (chars); getLigatureUnicode (lig, chars); /* * Complex script rendering, with uniscribe-like algorithm. * This can be enabled with command line: * -us * option. * SS_MSLVT and SS_NOJAMO hardwired fonts will not be processed. */ SScriptProcessor engine (this); // Should be able to start with ZWJ SS_UCS4 sample = ((chars[0] == 0x200D || chars[0] == 0x25cc) && liglen > 1) ? chars[1] : chars[0]; // Precompiled Hangul should not go through this. if (scriptcode!=SD_HANGUL_PREC && hardWire!=SS_MSLVT && hardWire!=SS_NOJAMO && engine.isSupported(sample)) { bool isbegin = (scriptcode == SD_BENGALI_BEGIN); unsigned int plen = engine.put (chars, liglen, isbegin); /* * We already have a full cluster, so we can fail * only if the engine can not find some glyphs. */ if (plen != liglen) { SString chc; char2Glyphs.put (key, chc); delete chars; return false; } engine.apply (); *out =engine.getGlyphs (); if (out->size()==0) { SString chc; char2Glyphs.put (key, chc); delete chars; return false; } /* Maintain our glyph-cache. */ SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); /* Maintain our position-cache. */ SV_INT positions = engine.getPositions(); positions.append (engine.getWidth()); mark2BaseList.put (key, positions); delete chars; return true; } /* * Hangul, Thai and Lao is processed right here in the switch */ switch (scriptcode) { case SD_THAI: case SD_LAO: { bool ret = false; /* don't support non-unicode encoded fonts for now */ const char * script = getLigatureScript (lig); if (fontencoding.size()!=0 || !isOK() || script==0) { ret = false; } else { ret = findSouthIndicGlyphs (key, scriptcode, script, chars, liglen, out); } if (ret) { SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); } else { SString chc; char2Glyphs.put (key, chc); } delete chars; return ret; } case SD_HANGUL_PREC: case SD_HANGUL_JAMO: { bool ret = findJamoGlyphs (chars, liglen, out); /* cache */ if (ret) { SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); } else { SString chc; char2Glyphs.put (key, chc); } delete chars; return ret; } case SD_TAMIL: fixedcluster = true; break; default: fixedcluster = false; break; } SUniMap umap = charEncoder; if (!umap.isOK()) { delete chars; SString chc; char2Glyphs.put (key, chc); return false; } /* we allocate one more to allow for LEFT_RIGHT vowel expansion */ SS_GlyphIndex* gchars = new SS_GlyphIndex[liglen+1]; CHECK_NEW (gchars); const char * script = getLigatureScript (lig); if (script == 0) script = "default"; /* get the encoder for this table. */ bool decoded = true; /* we need this hocus-pocus because getLigature works on glyph indeces */ /* for indic modifiers */ unsigned int mstart = 0; unsigned int mend = 0; for (unsigned int i=0; i 0xffff) { decoded = false; break; } /* BE AWARE HACK! Try straight unicode */ ucs2 = chars[i]; } gchars[i] = findGlyph(ucs2); if (gchars[i]==0) { decoded = false; break; } int endtype = getCharType (chars[i]); if (i>0 && endtype == SD_INDIC_MODIFIER && mstart == 0) { mstart = i; mend = liglen; } } /* adjust liglen to where modifiers start */ if (mstart != 0) { liglen = mstart; } /* this is unicode encoded... */ SS_GlyphIndex halant = findGlyph (getHalant (scriptcode)); SS_GlyphIndex reorder = 0; SS_GlyphIndex addVirama = 0; unsigned int inlen = liglen; bool *gbase = NULL; // post-consonant Malayalam ra has to be reordered to syllable start if (scriptcode == SD_MALAYALAM) reorder = findGlyph (0x0d30); // special rules for clusters ending in virama if (decoded && liglen == 2 && chars[1] == getHalant(scriptcode)) { decoded = false; unsigned int olen = getOTFLigatures (gchars, inlen, script, "haln", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS haln=", gchars, olen); decoded = true; inlen--; } } else if (decoded && chars[liglen-1] == getHalant(scriptcode)) { // todo - RA+H RA+H addVirama = gchars[liglen-1]; inlen--; } /* * Scripts like Tamil do not need complex processing. * The combinations are finite, a fixed cluster suffices. */ if (fixedcluster && decoded) { SS_GlyphIndex gi; unsigned int nind = getOTFLigature (script, 0, gchars, liglen, &gi); if (nind == liglen) { out->append (gi); } else { decoded = false; } } /* * Complex script rendering, with our own algorithm. */ else if (decoded) { /* ----> DEBUG Information */ debugChars ("GCHARS=", gchars, liglen); #ifdef DEBUG_LIGATURE fprintf (stderr, "Halant=%04X reorder=%04X gbase=%04X\n", halant, reorder, (gbase==0)?0: *gbase); #endif /* ----< DEBUG Information */ unsigned int olen = getOTFLigatures (gchars, inlen, script, "akhn", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS akhn=", gchars, olen); inlen = olen; } /* can be at beginning only */ SS_GlyphIndex rphfGlyph = 0; SS_GlyphIndex rphfNone = 0; if (inlen>2 && gchars[2] != findGlyph(SD_CD_ZWJ)) { debugChars ("BEFORE RPH =", gchars, inlen); SS_GlyphIndex g[2]; g[0] = gchars[0]; g[1] = gchars[1]; olen = getOTFLigatures (g, 2 , script, "rphf", halant, reorder, gbase); if (olen == 2) olen = getOTFLigatures (g, 2, script, "abvs", halant, reorder, gbase); if (olen == 1 && liglen > 2) { int ct = getCharType (chars[2]); // if chars[2] == SD_CD_ZWJ will be handled automagically here if (ct == SD_INDIC_CONSONANT_BASE || ct == SD_INDIC_CONSONANT_POST_BASE || ct == SD_INDIC_CONSONANT_BELOW_BASE) { debugChars ("GCHARS rphf=", g, olen); rphfGlyph = g[0]; } else { //fprintf (stderr, "GCHARS rphfNone\n"); rphfNone = gchars[0]; } /* remove */ for (unsigned int i=2; i 2) { gchars[0] = findGlyph(0x0930); olen = getOTFLigatures (gchars, inlen, script, "half", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS eyelash=", gchars, olen); inlen = olen; } else // otherwise we change it back to U+0931 { gchars[0] = findGlyph(0x0931); } } /* Half-forms */ olen = getOTFLigatures (gchars, inlen, script, "half", halant, reorder, gbase); if (olen != inlen) { debugChars ("GCHARS half=", gchars, olen); inlen = olen; } olen = getOTFLigatures (gchars, inlen, script, "!pstf,blwf,vatu,blws,rphf,psts,haln", halant, reorder, gbase); while (olen != inlen) { debugChars ("GCHARS any=", gchars, olen); inlen = olen; olen = getOTFLigatures (gchars, inlen, script, "!pstf,blwf,vatu,blws,rphf,psts,haln", halant, reorder, gbase); } /* in fact, this alone should do all the junk job (above) */ /* * From: http://www.microsoft.com/typography/otspec/indicot/reg.htm * * In scripts like Malayalam, the halant form of certain consonants * is represented by 'chillaksharams'. These can appear at any * non-initial or final consonant location in a syllable. * * - unfortunatelly it is very vague: 'scripts like Malayalam' * gaspar */ if (inlen > 1) { /* does it start with consonant + halant + ZWJ ? */ bool firstHalanOK = scriptcode!=SD_MALAYALAM /* bit vague */ || (inlen > 2 && gchars[1] == halant && gchars[2] == SD_G_INDIC_ZWJ); if (firstHalanOK) /* a bit vague */ { olen = getOTFLigatures (gchars, inlen, script, "haln", halant, reorder, gbase); } else { olen = getOTFLigatures (&gchars[1], inlen-1, script, "haln", halant, reorder, gbase?&gbase[1]:0); olen++; } inlen = olen; } /* insert back virama and search for feature "haln" */ if (addVirama) { gchars[olen] = addVirama; inlen++; olen = getOTFLigatures (gchars, inlen, script, "haln", halant, reorder, gbase); } /* This is "haln" not applied in while loop because of a specific check condition for SD_G_INDIC_ZWNJ in getOTFLigatures */ else if (inlen > 1 && gchars[inlen-1] == SD_G_INDIC_ZWNJ) { if (scriptcode != SD_MALAYALAM) /* a bit vague */ { olen = getOTFLigatures (gchars, inlen-1, script, "haln", halant, reorder, gbase); if (olen != inlen-1) { gchars[olen] = gchars[inlen-1]; olen++; } } } /* insert back non repha after getOTFLigatures */ if (rphfNone) { for (unsigned int i=olen-1; i>1; i--) { gchars[i] = gchars[i-2]; } gchars[0] = rphfNone; gchars[1] = halant; olen += 2; } int endtype = getCharType (chars[liglen-1]); switch (endtype) { case SD_INDIC_LEFT_VOWEL: if (olen > 1) { SS_GlyphIndex g = gchars[olen-1]; if (gbase) { unsigned int i; for (i=olen-2; i && !gbase[i]; i--); for (unsigned int j=olen-1; j > i; j--) gchars[j]=gchars[j-1]; gchars[i] = g; } else { for (unsigned int i=olen-1; i; i--) gchars[i]=gchars[i-1]; gchars[0] = g; } } break; case SD_INDIC_RIGHT_VOWEL: case SD_INDIC_TOP_VOWEL: case SD_INDIC_BOTTOM_VOWEL: if (olen > 0) { SS_GlyphIndex g = gchars[olen-1]; if (gbase) { unsigned int i; for (i=olen-2; i && !gbase[i]; i--); for (unsigned int j=olen-1; j > i+1; j--) gchars[j]=gchars[j-1]; gchars[i+1] = g; } } break; case SD_INDIC_LEFT_RIGHT_VOWEL: if (olen > 0) { SS_GlyphIndex g1 = findGlyph (getLRVowelLeft(chars[liglen-1])); SS_GlyphIndex g2 = findGlyph (getLRVowelRight(chars[liglen-1])); if (g1 && g2) { if (gbase) { unsigned int i; for (i=olen-2; i && !gbase[i]; i--); for (unsigned int j=olen-1; j > i; j--) gchars[j]=gchars[j-1]; gchars[i] = g1; } else { for (unsigned int i=olen; i; i--) gchars[i]=gchars[i-1]; gchars[0] = g1; } gchars[olen] = g2; olen++; liglen++; // We increase this, so that the program could notice // that the original character sequence has changed } } } if (rphfGlyph) { gchars[olen] = rphfGlyph; olen++; } /* add modifiers back */ for (unsigned int i=mstart; i %u: ", script, (lig & 0xffff), liglen, out->size()); debugChars ("GCHARS glyphs=",out->array(), out->size()); for (unsigned int i=0; iclear(); delete chars; delete gchars; if (gbase) delete gbase; } /* End of Indic/Hangul/OTF */ /* Let precomposed Hangul through. */ bool okToProcess = true; /* Set okToProcess accoriding to artifical encodings */ switch (hardWire) { case SS_MSLVT: /* precomposed or jamo */ okToProcess = ((in>=0xac00 && in<0xd7a4) || getJamoClass (in) != SD_JAMO_X); break; case SS_NOJAMO: /* non jamo */ okToProcess = (getJamoClass (in) == SD_JAMO_X); break; case SS_NONE: default: okToProcess = true; break; } if (!okToProcess) { SString chc; char2Glyphs.put (key, chc); return false; } /** * When using external maps we are using the same map for all * tables. */ if (fontencoding.size()!=0 && charEncoder.isOK() && !charEncoder.isUMap()) { /* max 3 */ SV_UCS4 ucs4; ucs4.append (in); SV_UCS4 decd; SUniMap umap = charEncoder; unsigned int lifted = umap.lift (ucs4, 0, false, &decd); if (lifted == 0) { /* try straight - font has to have ascii mapping */ SS_GlyphIndex gi = (in>=0x80) ? 0 : findGlyph (in); if (gi) { out->append (gi); SString chc ((char*) &gi, sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } SString chc; char2Glyphs.put (key, chc); return false; } for (unsigned int i=0; iclear (); SString chc; char2Glyphs.put (key, chc); return false; } out->append (gi); } SString chc ((char*) out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } /* as I see there is no way to define multiple tables * for now so we just hardcode first one in reality we should * go through 0..num_tables */ SUniMap umap = charEncoder; if (!umap.isOK()) { SString chc; char2Glyphs.put (key, chc); return false; } /* get the encoder for this table. */ // FIXME: // if in is non-BMP we will just use the value - hack - I know SS_UCS4 ucs4 = (in>0xffff) ? in : (SS_UCS4) umap.encode (in); if (ucs4==0) { SString chc; char2Glyphs.put (key, chc); return false; } SS_GlyphIndex o = findGlyph (ucs4); if (o==0) { /* Try the decomposed one instead */ if (hardWire==SS_MSLVT && /* chekc for Precomposed Korean or JAMO */ ((in>=0xac00 && in<0xd7a4) || getJamoClass (in) != SD_JAMO_X)) { SS_UCS4 chars[3]; /* lvt */ unsigned int liglen = 1; /* decompose if precomposed */ if (in>=0xac00 && in<0xd7a4) { SS_UCS4 hangul = ucs4 - 0xac00; chars[0] = hangul / (21*28) + 0x1100; chars[1] = (hangul % (21*28))/28 + 0x1161; chars[2] = (hangul % 28) + 0x11a7; liglen = (chars[2] == 0x11a7) ? 2 : 3; } else { liglen = 1; chars[0] = in; } bool ret = findJamoGlyphs (chars, liglen, out); /* cache */ if (ret) { if (liglen==1 && getJamoClass (in) != SD_JAMO_L) { /* standalone jamos fill emptyness */ SS_GlyphIndex placeHolder = findGlyph (0x4e00); if (placeHolder) out->insert (0, placeHolder); } SString chc ((char*)out->array(), out->size() * sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return ret; } /* not found */ } /* cache the nothing. */ SString chc; char2Glyphs.put (key, chc); return false; } out->append (o); SString chc ((char*)&o, sizeof (SS_GlyphIndex)); char2Glyphs.put (key, chc); return true; } /** * Chaining Context Substitution may not change the length of the * input. * @param ino is the input/output array. * @param inlen is the length of the ino array. * @param olen is the new length of the ino array. * @param script is the OTF script code - or null. * @param feature is the OTF feature code - or null. * @return true if at least one substitution has been made. */ bool SFontTTF::doContextSubstitutions (SS_GlyphIndex* ino, unsigned int inlen, unsigned int * olen, const char* script, const char* feature) { unsigned int i; unsigned int len = inlen; *olen = len; for (i=0; i= 3 && ino[curin+1] == halant) { SS_GlyphIndex tmp[3]; tmp[0] = ino[curin]; tmp[1] = ino[curin+2]; tmp[2] = ino[curin+1]; nind = getOTFLigature (script, feature, tmp, 3, &lig); } /* we have at least 2 characters to reorder */ else if (len-curin >= 2 && ino[curin] == halant) { SS_GlyphIndex tmp[2]; tmp[0] = ino[curin+1]; tmp[1] = ino[curin]; nind = getOTFLigature (script, feature, tmp, 2, &lig); fullglyph = false; /* set reorder if resulting/original glyphs is a reorder glyph */ if (reord && tmp[0] == reord) reorder = true; /* reorder shows that this should go to zero position */ } else { /* don't reorder - just apply feature. nothing will happen. */ nind = getOTFLigature (script, feature, &ino[curin], len-curin, &lig); } } else /* ! needreorder */ { /* just apply feature. */ nind = getOTFLigature (script, feature, &ino[curin], len-curin, &lig); } /* nind is the index of the ligature found */ bool isok = (nind != 0); /* i point to next character index. ino is not rewritten yet and lig may contain a ligature that was found. */ i=nind+curin; if (isok) { /* don't worry i can not be zero nind!=0 checks it*/ /* SD_G_INDIC_ZWNJ prevents half form when halant comes. */ /* halant + ZWNJ */ if (i+1==len && ino[i-1] == halant && ino[i] == SD_G_INDIC_ZWNJ) { isok = false; } } /* substitution can go ahead */ if (isok) { ino[curout] = lig; curout++; curin = i; /* we need to update base output parameter */ if (base) { unsigned int j, k; for (j=curin, k=curout; j0x0FFF) return 0; break; case SS_DEVANAGARI: if (in<0x0900 || in>0x097F) return 0; break; case SS_BENGALI: if (in<0x0980 || in>0x09FF) return 0; break; case SS_GURMUKHI: if (in<0x0A00 || in>0x0A7F) return 0; break; case SS_GUJARATI: if (in<0x0A80 || in>0x0AFF) return 0; break; case SS_ORIYA: if (in<0x0B00 || in>0x0B7F) return 0; break; case SS_TAMIL: if (in<0x0B80 || in>0x0BFF) return 0; break; case SS_TELUGU: if (in<0x0C00 || in>0x0C7F) return 0; break; case SS_KANNADA: if (in<0x0C80 || in>0x0CFF) return 0; break; case SS_MALAYALAM: if (in<0x0D00 || in>0x0D7F) return 0; break; case SS_SINHALA: if (in<0x0D80 || in>0x0DFF) return 0; break; case SS_THAI: if (in<0x0E00 || in>0x0E7F) return 0; break; case SS_LAO: if (in<0x0E80 || in>0x0EFF) return 0; break; case SS_TIBETAN: if (in<0x0F00 || in>0x0FFF) return 0; break; case SS_JAMO: if (in<0x1100 || in>0x11FF) return 0; break; default: break; } TTF_CMAP* cmap_table = (TTF_CMAP*) tables[SS_TB_CMAP]; int num_tables = ntohs(cmap_table->numberOfEncodingTables); /* Go for it directly */ bool uniconly = false; if (charEncoderTable != (unsigned int) num_tables) { TTF_CMAP_ENTRY* table_entry = &(cmap_table->encodingTable[charEncoderTable]); int offset = ntohl(table_entry->offset); int format = ntohs(*((SD_USHORT*)((SD_BYTE*)cmap_table+offset))); SS_GlyphIndex gi=0; switch (format) { case 0: gi = findGlyph0 ((TTF_CMAP_FMT0 *)((SD_BYTE *)cmap_table + offset), in); break; case 2: /* this has to have an encoder */ if (fontencoding.size()) { gi = findGlyph2 ((TTF_CMAP_FMT2 *)((SD_BYTE *)cmap_table + offset), in); } break; case 4: gi = findGlyph4 ((TTF_CMAP_FMT4 *)((SD_BYTE *)cmap_table + offset), in); break; case 8: /* TODO */ break; case 10: break; case 12: gi = findGlyph12 ((TTF_CMAP_FMT12 *)((SD_BYTE *)cmap_table + offset), in); break; default: break; } if (gi) return gi; /* look for unicode encoding only */ uniconly = true; } //fprintf (stderr, "Second round\n"); /* go through all tables */ int platform = 0; int encoding_id = 0; for (int i=0; i < num_tables; i++) { TTF_CMAP_ENTRY* table_entry = &(cmap_table->encodingTable[i]); int offset = ntohl(table_entry->offset); int format = ntohs(*((SD_USHORT*)((SD_BYTE*)cmap_table+offset))); bool isok = true; if (uniconly) { platform = ntohs(table_entry->platformID); encoding_id = ntohs(table_entry->encodingID); isok = false; switch (platform) { case TT_PLAT_ID_MICROSOFT: switch (encoding_id) { case TT_ENC_ID_MS_UNICODE: case TT_ENC_ID_MS_SURROGATES: isok = true; break; case TT_ENC_ID_MS_SYMBOL: case TT_ENC_ID_MS_SHIFT_JIS: case TT_ENC_ID_MS_BIG5: case TT_ENC_ID_MS_RPC: case TT_ENC_ID_MS_WANSUNG: case TT_ENC_ID_MS_JOHAB: default: break; } break; case TT_PLAT_ID_ISO: switch (encoding_id) { case TT_ENC_ID_ISO_ASCII: case TT_ENC_ID_ISO_10646: case TT_ENC_ID_ISO_8859_1: isok = true; break; case TT_ENC_ID_ANY: default: break; } break; case TT_PLAT_ID_APPLE: switch (encoding_id) { case TT_ENC_ID_APPLE_UNICODE_1_1: case TT_ENC_ID_APPLE_ISO_10646: case TT_ENC_ID_APPLE_UNICODE_2_0: isok = true; break; case TT_ENC_ID_APPLE_DEFAULT: default: break; } break; case TT_PLAT_ID_MACINTOSH: switch (encoding_id) { case TT_ENC_ID_MAC_ROMAN: isok = true; break; /* a lot of other encodings missing */ default: break; } break; default: break; } } if (!isok) continue; SS_GlyphIndex gi=0; switch (format) { case 0:/* TODO - SGC 8 bit*/ gi = findGlyph0 ((TTF_CMAP_FMT0 *)((SD_BYTE *)cmap_table + offset), in); break; case 2: /* this has to have an encoder */ if (fontencoding.size()) { gi = findGlyph2 ((TTF_CMAP_FMT2 *)((SD_BYTE *)cmap_table + offset), in); } break; case 4: gi = findGlyph4 ((TTF_CMAP_FMT4 *)((SD_BYTE *)cmap_table + offset), in); break; case 8: /* TODO */ break; case 10: break; case 12: gi = findGlyph12 ((TTF_CMAP_FMT12 *)((SD_BYTE *)cmap_table + offset), in); break; default: break; } /* if (uniconly && in > 0x1000 && format == 12 && gi) { fprintf (stderr, "platform = %d id=%d\n", platform, encoding_id); } */ if (gi) return gi; } return 0; } /** * Try to find Glyph in an encoding format 4 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph0 (TTF_CMAP_FMT0* encoding0, SS_UCS4 ucs4) { if (ucs4==0||ucs4>255) return 0; /* 1 byte does not need byteorder */ return (SS_GlyphIndex) encoding0->glyphIdArray[ucs4]; } /** * Try to find Glyph in an encoding format 2 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph2 (TTF_CMAP_FMT2* encoding2, SS_UCS4 ucs4) { if (ucs4 > 0xffff) return 0; unsigned int first = (ucs4>>8) &0xff; unsigned int second = ucs4 & 0xff; SD_USHORT n = 0; if (first == 0) { SD_USHORT k = ntohs (encoding2->subHeaderKeys[second]) / 8; if (k!=0) return 0; TTF_CMAP_FMT2_SUBHEADER * sh1 = &encoding2->subHeaders[0]; SD_USHORT firstCode = ntohs (sh1->firstCode); SD_USHORT entryCount = ntohs (sh1->entryCount); SD_USHORT ro = ntohs (sh1->idRangeOffset); if (firstCode!=0 || entryCount != 256 || ro == 0) return 0; unsigned int ind = (ro/2) + (second - firstCode); n = (SD_USHORT) ntohs(*(&sh1->idRangeOffset + ind)); if (n==0) return n; SD_SHORT delta = (SD_SHORT)ntohs (sh1->idDelta); /* negative possible */ n += delta; n = n % 0xffff; return n; } SD_USHORT k = ntohs (encoding2->subHeaderKeys[first]) / 8; /* 1 byte - we can not deal with this */ if (k==0) return 0; TTF_CMAP_FMT2_SUBHEADER * sh = &encoding2->subHeaders[k]; SD_USHORT firstCode = ntohs (sh->firstCode); SD_USHORT entryCount = ntohs (sh->entryCount); if (second < (unsigned int) firstCode || second >= ((unsigned int)firstCode + (unsigned int)entryCount)) return 0; SD_USHORT ro = ntohs (sh->idRangeOffset); /* If the idRangeOffset value for the segment is not 0, * the mapping of the character codes relies on * the glyphIndexArray. */ if (ro==0) return 0; /* * The value of the idRangeOffset is the number of bytes past * the actual location of the idRangeOffset word where the * glyphIndexArray element corresponding to firstCode * appears */ unsigned int ind = (ro/2) + (second - firstCode); n = (SD_USHORT) ntohs(*(&sh->idRangeOffset + ind)); if (n==0) return 0; /* If the idRangeOffset is 0, the idDelta value is added * directly to the character code to get the corresponding * glyph index */ SD_SHORT delta = (SD_SHORT)ntohs (sh->idDelta); /* negative possible */ n += delta; n = n % 0xffff; return (SS_GlyphIndex) n; } /** * Try to find Glyph in an encoding format 4 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph4 (TTF_CMAP_FMT4* encoding4, SS_UCS4 ucs4) { if (ucs4 > 0xffff) return 0; /* Finally we found it. Maybe */ int seg_c2 = ntohs(encoding4->segCountX2); SD_SHORT cmap_n_segs = seg_c2 >> 1; SD_BYTE* ptr = (SD_BYTE *)encoding4 + 14; SD_USHORT* cmap_seg_end = (SD_USHORT *) ptr; /* here comes a pad, then: */ SD_USHORT* cmap_seg_start = (SD_USHORT *) (ptr + seg_c2 + 2); SD_SHORT* cmap_idDelta = (SD_SHORT *) (ptr + (seg_c2 * 2 )+ 2); SD_SHORT* cmap_idRangeOffset = (SD_SHORT *) (ptr + (seg_c2 * 3) + 2); //SD_USHORT* glyphIndexArray = (SD_USHORT *) (ptr + (seg_c2 * 4) + 2); /* No choice. Go through the segments */ for (int j=0; j < cmap_n_segs; j++) { SD_USHORT start = ntohs(cmap_seg_start[j]); SD_USHORT end = ntohs(cmap_seg_end[j]); SD_USHORT ro = ntohs(cmap_idRangeOffset[j]); if (start == 0xffff) return 0; if (ucs4> end || ucs4 < start) continue; /* If the idRangeOffset value for the segment is not 0, * the mapping of the character codes relies on * the glyphIndexArray. */ SD_USHORT n = 0; SD_SHORT delta = ntohs(cmap_idDelta[j]); /* * Should be ro only - but it dumps on code2000.ttf * with U+5C81 if I don't check for delta too */ if (ro!=0 && delta==0) { //n = ntohs (glyphIndexArray[ro/2 + (ucs4 - start) + ro]); unsigned int ind = (ro/2) + (ucs4 - start); n = (SD_USHORT) ntohs(*(&cmap_idRangeOffset [j] + ind)); } /* If the idRangeOffset is 0, the idDelta value is added * directly to the character code to get the corresponding * glyph index */ else if (delta!=0) /* should not really check for != 0 - I am paranoid */ { /* negative possible */ n = ucs4 + delta; n = n % 0xffff; } return (SS_GlyphIndex) n; } return 0; } /** * Try to find Glyph in an encoding format 4 table * @param encoding4 is the encoding4 tables * @param ucs2 is the character to find. * @return the glyph index. */ static SS_GlyphIndex findGlyph12 (TTF_CMAP_FMT12* encoding12, SS_UCS4 ucs4) { unsigned int count = ntohl (encoding12->nGroups); for (unsigned int i=0; ientry[i].startCharCode); unsigned int end = ntohl (encoding12->entry[i].endCharCode); if (ucs4 >= start && ucs4 <= end) { unsigned int gl = ntohl (encoding12->entry[i].startGlyphCode); gl += (ucs4 - start); if (gl > 0xffff) { return 0; } return (SS_GlyphIndex) gl; } } return 0; } /** * Draw a single glyph. * @pama canvas is the canvas to draw to * @param pen is the pen to draw with * @param m is the transformation matrix. * @param glyphindex is the local glyph index * @return nothing */ void SFontTTF::drawGlyph (SCanvas* canvas, const SS_Matrix2D& matrix, SS_GlyphIndex glyphno) { if (!isOK()) return ; if (glyphno == SD_G_INDIC_ZWJ) return; if (glyphno == SD_G_INDIC_ZWNJ) return; SD_BYTE* gstart = (SD_BYTE *) tables[SS_TB_GLYF]; TTF_GLYF* gtable; int len =0; if (longOffsets) { SD_ULONG* lloca = (SD_ULONG *) tables[SS_TB_LOCA]; unsigned int offs1 = ntohl (lloca[glyphno]); unsigned int offs2 = ntohl (lloca[glyphno+1]); gtable = (TTF_GLYF *) ((char*)gstart + offs1); len = offs2-offs1; } else { SD_USHORT* sloca = (SD_USHORT *) tables[SS_TB_LOCA]; gtable = (TTF_GLYF *) (gstart + (ntohs (sloca[glyphno]) << 1)); len = (ntohs (sloca[glyphno+1]) - ntohs (sloca[glyphno])) << 1; } if (len <= 0) { if (!broken && len < 0) { fprintf (stderr, "SFontTTF-2: non-existent glyph %u in %*.*s %d\n", (unsigned int) glyphno, SSARGS (name), (int) len) ; broken = true; } return; } TTF_GLYF* kludge = 0; if ((((unsigned long) gtable) & 1) != 0) { if (!broken) { fprintf (stderr, "SFontTTF: fixing unaligned %*.*s.\n", SSARGS(name)); broken = true; } kludge = new TTF_GLYF[len]; CHECK_NEW (kludge); memcpy (kludge, gtable, len * sizeof (TTF_GLYF)); gtable = kludge; } int ncontours = (int) ((short)ntohs (gtable->numberOfContours)); if (ncontours <= 0) { SD_BYTE *ptr = ((SD_BYTE *) gtable + sizeof(TTF_GLYF)); SD_SHORT *sptr = (SD_SHORT *) ptr; SD_USHORT flagbyte; do { SS_Matrix2D m; flagbyte = ntohs(*sptr); sptr ++; SS_GlyphIndex glyphindex = ntohs(*sptr); sptr ++; if (flagbyte & ARG_1_AND_2_ARE_WORDS) { /* we need to make it short as it can be negative */ m.t0 = (double) ((SD_SHORT)ntohs(*sptr)); sptr++; m.t1 = (double) ((SD_SHORT)ntohs(*sptr)); sptr++; } else { char* bptr = (char *)sptr; m.t0 = (signed char)bptr[0]; m.t1 = (signed char)bptr[1]; sptr ++; } if (flagbyte & WE_HAVE_A_SCALE) { m.x0 = m.y1 = f2dot14(*sptr); sptr ++; } else if (flagbyte & WE_HAVE_AN_X_AND_Y_SCALE) { m.x0 = f2dot14(*sptr); sptr ++; m.y1 = f2dot14(*sptr); sptr ++; } else if (flagbyte & WE_HAVE_A_TWO_BY_TWO) { m.x0 = f2dot14(*sptr); sptr ++; m.y0 = f2dot14(*sptr); sptr ++; m.x1 = f2dot14(*sptr); sptr ++; m.y1 = f2dot14(*sptr); sptr ++; } SS_Matrix2D mm = matrix * m; /* recursively call itself */ drawGlyph (canvas, mm, glyphindex); } while (flagbyte & MORE_COMPONENTS); if (kludge) delete kludge; return; } SD_USHORT* contour_end_pt = (SD_USHORT *) ((char *)gtable + sizeof(TTF_GLYF)); int last_point = (int) ntohs (contour_end_pt[ncontours-1]); int n_inst = (int) ntohs (contour_end_pt[ncontours]); SD_BYTE* ptr = ((SD_BYTE *)contour_end_pt) + (ncontours << 1) + n_inst + 2; int j = 0; int k = 0; SBinVector flags; while (k <= last_point) { flags.append (ptr[j]); if (ptr[j] & REPEAT) { for (int k1=0; k1 < ptr[j+1]; k1++) { k++; flags.append (ptr[j]); } j++; } j++; k++; } SBinVector xrel; SBinVector xcoord; for (k=0; k <= last_point; k++) { /* Process xrel */ if (flags[k] & XSD_SHORT) { if (flags[k] & XSAME) { xrel.append (ptr[j]); } else { xrel.append (-ptr[j]); } j++; } else if (flags[k] & XSAME) { xrel.append (0); } else { xrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } /* Process x coordinate */ if (k==0) { xcoord.append (xrel[k]); } else { xcoord.append (xrel[k] + xcoord[k-1]); } } SBinVector yrel; SBinVector ycoord; /* one more run fore yrel and ycoord */ for (k=0; k <= last_point; k++) { if (flags[k] & YSD_SHORT) { if (flags[k] & YSAME) { yrel.append (ptr[j]); } else { yrel.append (- ptr[j]); } j++; } else if (flags[k] & YSAME) { yrel.append (0); } else { yrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } if (k==0) { ycoord.append (yrel[k]); } else { ycoord.append (yrel[k] + ycoord[k-1]); } } bool first = true; j = 0; int i = 0; int contour_start = 0; while (i <= ntohs(contour_end_pt[ncontours-1])) { int contour_end = ntohs(contour_end_pt[j]); if (first) { moveto (canvas, matrix, xcoord[i], ycoord[i]); contour_start = i; first = false; } else if (flags[i] & ONOROFF) { lineto (canvas, matrix, xcoord[i], ycoord[i]); } else /* curvy */ { int cs = i-1; int ce = 0; bool finished = false; int nguide = 0; while (!finished) { if (i == contour_end+1) { ce = contour_start; finished = true; } else if (flags[i] & ONOROFF) { ce = i; finished = true; } else { i++; nguide++; } } switch (nguide) { case 0: lineto (canvas, matrix, xcoord[ce], ycoord[ce]); break; case 1: cureveto (canvas, matrix, (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (2*xcoord[cs+1]+xcoord[ce])/3, (2*ycoord[cs+1]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; case 2: cureveto (canvas, matrix, (-xcoord[cs]+4*xcoord[cs+1])/3, (-ycoord[cs]+4*ycoord[cs+1])/3, (4*xcoord[cs+2]-xcoord[ce])/3, (4*ycoord[cs+2]-ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; case 3: cureveto (canvas, matrix, (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (5*xcoord[cs+1]+xcoord[cs+2])/6, (5*ycoord[cs+1]+ycoord[cs+2])/6, (xcoord[cs+1]+xcoord[cs+2])/2, (ycoord[cs+1]+ycoord[cs+2])/2); cureveto (canvas, matrix, (xcoord[cs+1]+5*xcoord[cs+2])/6, (ycoord[cs+1]+5*ycoord[cs+2])/6, (5*xcoord[cs+2]+xcoord[cs+3])/6, (5*ycoord[cs+2]+ycoord[cs+3])/6, (xcoord[cs+3]+xcoord[cs+2])/2, (ycoord[cs+3]+ycoord[cs+2])/2); cureveto (canvas, matrix, (xcoord[cs+2]+5*xcoord[cs+3])/6, (ycoord[cs+2]+5*ycoord[cs+3])/6, (2*xcoord[cs+3]+xcoord[ce])/3, (2*ycoord[cs+3]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; default: int k1 = cs + nguide; cureveto (canvas, matrix, (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (5*xcoord[cs+1]+xcoord[cs+2])/6, (5*ycoord[cs+1]+ycoord[cs+2])/6, (xcoord[cs+1]+xcoord[cs+2])/2, (ycoord[cs+1]+ycoord[cs+2])/2); for (k = cs+2; k <= k1-1; k++) { cureveto (canvas, matrix, (xcoord[k-1]+5*xcoord[k])/6, (ycoord[k-1]+5*ycoord[k])/6, (5*xcoord[k]+xcoord[k+1])/6, (5*ycoord[k]+ycoord[k+1])/6, (xcoord[k]+xcoord[k+1])/2, (ycoord[k]+ycoord[k+1])/2); } cureveto (canvas, matrix, (xcoord[k1-1]+5*xcoord[k1])/6, (ycoord[k1-1]+5*ycoord[k1])/6, (2*xcoord[k1]+xcoord[ce])/3, (2*ycoord[k1]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); break; } /* end switch (nguide) */ } if (i >= contour_end) { first = true; i = contour_end + 1; canvas->closepath (); j++; } else { i++; } } if (kludge!=0) delete kludge; return; } /** * The moveto */ static void moveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y) { double x = m.x0 * double (_x) + m.y0 * double (_y) + m.t0; double y = m.x1 * double (_x) + m.y1 * double (_y) + m.t1; canvas->moveto (x, y); } /** * The lineto */ static void lineto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x, SD_SHORT _y) { double x = m.x0 * double (_x) + m.y0 * double (_y) + m.t0; double y = m.x1 * double (_x) + m.y1 * double (_y) + m.t1; canvas->lineto (x, y); } /** * The curveto */ static void cureveto (SCanvas* canvas, const SS_Matrix2D &m, SD_SHORT _x0, SD_SHORT _y0, SD_SHORT _x1, SD_SHORT _y1, SD_SHORT _x2, SD_SHORT _y2) { double x0 = m.x0 * double (_x0) + m.y0 * double (_y0) + m.t0; double y0 = m.x1 * double (_x0) + m.y1 * double (_y0) + m.t1; double x1 = m.x0 * double (_x1) + m.y0 * double (_y1) + m.t0; double y1 = m.x1 * double (_x1) + m.y1 * double (_y1) + m.t1; double x2 = m.x0 * double (_x2) + m.y0 * double (_y2) + m.t0; double y2 = m.x1 * double (_x2) + m.y1 * double (_y2) + m.t1; canvas->curveto (x0, y0, x1, y1, x2, y2); } /** * Create double numbers between -2 .. 1.99994 * from a packed short. */ static double f2dot14 (short x) { short y = ntohs(x); return (y >> 14) + ((y & 0x3fff) / 16384.0); } static void debugChars (const char* msg, const SS_GlyphIndex* gchars, unsigned int len) { #ifdef DEBUG_LIGATURE fprintf (stderr, "SFontTTF.cpp: %s", msg); for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFontTTF.h" #include "swindow/STTables.h" #include "stoolkit/SString.h" #include "stoolkit/SExcept.h" /* * ntohl */ #ifndef USE_WINAPI #include #else #include #endif #include #include #include "stoolkit/SCluster.h" #define SD_BYTE unsigned char #define SD_CHAR signed char #define SD_USHORT unsigned short #define SD_SHORT signed short #define SD_ULONG unsigned int #define SD_LONG signed int #define SD_FWORD SD_SHORT #define SD_UFWORD SD_USHORT /* * If you have a font that has some substitution * and it is not supported you can get notified if * you set this to 1. */ #define PRINT_UNSUPPORTED 0 /* * For some (2) format the code is commented out * because there was no such font that had it, * Set this to 1 if you want to debug them. */ #define PRINT_UNDEBUGGED 0 /* * Recommended value 0 */ #define USE_UNTESTED_CODE 0 /* OTF */ static const SString SS_TB_GSUB("GSUB"); static const SString SS_TB_GPOS("GPOS"); static const SString SS_TB_GDEF("GDEF"); /*---------------------------------------------------------------------------- * True Type Font handling routines *--------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------- * kern: Kerning Table *--------------------------------------------------------------------------*/ typedef struct _kern_head_ms { SD_USHORT version; SD_USHORT nTables; } KERN_HEAD_MS; typedef struct _kern_subtable_ms { SD_USHORT version; SD_USHORT length; SD_USHORT coverage; } KERN_SUBTABLE_MS; /* format 0: horizontal */ typedef struct _kern_horizontal_ms { SD_USHORT nPairs; SD_USHORT searchRange; SD_USHORT entrySelector; SD_USHORT rangeShift; } KERN_HORIZONTAL_MS; typedef struct _kern_pairs_ms { SD_USHORT left; SD_USHORT right; SD_USHORT value; /* FWORD */ } KERN_PAIRS_MS; /*---------------------------------------------------------------------------- * Open Type Font handling routines *--------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------- * GSUB: Glyph Substitution Table *--------------------------------------------------------------------------*/ typedef struct _OTF_Feature { SD_USHORT offset; SD_USHORT count; SD_USHORT record[1]; } OTF_Feature; typedef struct _OTF_FeatureRecord { char tag[4]; SD_USHORT offset; } OTF_FeatureRecord; typedef struct _OTF_FeatureList { SD_USHORT count; OTF_FeatureRecord record[1]; } OTF_FeatureList; typedef struct _OTF_Lookup { SD_USHORT type; SD_USHORT flag; SD_USHORT count; SD_USHORT subtable[1]; } OTF_Lookup; typedef struct _OTF_LookupList { SD_USHORT count; SD_USHORT record[1]; } OTF_LookupList; typedef struct _OTF_RangeRecord { SD_USHORT start; SD_USHORT end; SD_USHORT index; } OTF_RangeRecord; typedef struct _OTF_CoverageFormat2 { SD_USHORT format; SD_USHORT count; OTF_RangeRecord record[1]; } OTF_CoverageFormat2; typedef struct _OTF_CoverageFormat1 { SD_USHORT format; SD_USHORT count; SD_USHORT id[1]; /* numerical order */ } OTF_CoverageFormat1; /* Just header */ typedef struct _OTF_CoverageFormat { SD_USHORT format; SD_USHORT count; } OTF_CoverageFormat; /* * IF I have more time I will debug this */ typedef struct _OTF_LangSys { SD_USHORT lookupOrder; /* 0 for 1.0 */ SD_USHORT reqFeatureIndex; SD_USHORT featureCount; SD_USHORT featureIndex[1]; /* or more - index in feature */ } OTF_LangSys; typedef struct _OTF_LangSysRecord { char tag[4]; SD_USHORT offsetFromScript; } OTF_LangSysRecord; typedef struct _OTF_Script { SD_USHORT defaultLangSys; /* may be 0 */ SD_USHORT langSysCount; OTF_LangSysRecord langSysRecord[1]; /* or more */ } OTF_Script; typedef struct _OTF_ScriptRecord { char tag[4]; SD_USHORT offset; } OTF_ScriptRecord; typedef struct _OTF_ScriptList { SD_USHORT scriptCount; OTF_ScriptRecord records[1]; } OTF_ScriptList; /* Table for Single Substitution */ /* Just header */ typedef struct _OTF_SingleSubstFormat { SD_USHORT format; SD_USHORT coverage; } OTF_SingleSubstFormat; typedef struct _OTF_SingleSubstFormat1 { SD_USHORT format; SD_USHORT coverage; SD_SHORT deltaGlyphID; } OTF_SingleSubstFormat1; typedef struct _OTF_SingleSubstFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT count; SD_USHORT substitute[1]; /* count */ } OTF_SingleSubstFormat2; /* Table for Multiple Substitution */ typedef struct _OTF_LigatureSusbstFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT count; SD_USHORT offset[1]; } OTF_LigatureSusbstFormat1; typedef struct _SubstLookupRecord { SD_USHORT sequenceIndex; /* Index into current sequence */ SD_USHORT lookupListIndex; /* Lookup to apply to that */ } SubstLookupRecord; /* Table for ChainContextSubstFormat3. They come in this order. */ typedef struct _OTF_ChainContextSubstFormat3_Backtrack { SD_USHORT format; SD_USHORT backtrackGlyphCount; SD_USHORT coverage[1]; /* real size: backtrackGlyphCount */ } OTF_ChainContextSubstFormat3_Backtrack; typedef struct _OTF_ChainContextSubstFormat3_Input { SD_USHORT inputGlyphCount; SD_USHORT coverage[1]; /* real size: inputGlyphCount */ } OTF_ChainContextSubstFormat3_Input; typedef struct _OTF_ChainContextSubstFormat3_Lookahead { SD_USHORT lookaheadGlyphCount; SD_USHORT coverage[1]; /* real size: lookadeadGlyphCount */ } OTF_ChainContextSubstFormat3_Lookahead; typedef struct _OTF_ChainContextSubstFormat3_Subst { SD_USHORT substGlyphCount; SubstLookupRecord substLookupRecord[1]; /* real size: substGlyphCount */ } OTF_ChainContextSubstFormat3_Subst; /* Table for ChainContextSubstFormat3. They come in this order. */ typedef struct _OTF_ChainContextSubstFormat2_Backtrack { SD_USHORT backtrackGlyphCount; SD_USHORT coverage[1]; /* real size: backtrackGlyphCount */ } OTF_ChainContextSubstFormat2_Backtrack; typedef struct _OTF_ChainContextSubstFormat2_Input { SD_USHORT inputGlyphCount; SD_USHORT coverage[1]; /* real size: inputGlyphCount - 1 */ } OTF_ChainContextSubstFormat2_Input; typedef struct _OTF_ChainContextSubstFormat2_Lookahead { SD_USHORT lookaheadGlyphCount; SD_USHORT coverage[1]; /* real size: lookadeadGlyphCount */ } OTF_ChainContextSubstFormat2_Lookahead; typedef struct _OTF_ChainContextSubstFormat2_Subst { SD_USHORT substGlyphCount; SubstLookupRecord substLookupRecord[1]; /* real size: substGlyphCount */ } OTF_ChainContextSubstFormat2_Subst; typedef struct _OTF_ChainSubClassSet { SD_USHORT chainSubClassRuleCnt; // Backtrack + input + lookahead + subst SD_USHORT chainSubClassRule[1]; // chainSubClassCnt. } OTF_ChainSubClassSet; typedef struct _OTF_SubClassRule { SD_USHORT glyphCount; SD_USHORT substCount; SD_USHORT clazz[1]; // size of glyphCount -1 // followed by SubstLookupRecord } OTF_SubClassRule; typedef struct _OTF_SubClassSet { SD_USHORT subClassRuleCnt; // Backtrack + input + lookahead + subst SD_USHORT subClassRule[1]; // chainSubClassCnt. } OTF_SubClassSet; typedef struct _OTF_ClassDefFormat1 { SD_USHORT format; // 1. SD_USHORT startGlyph; SD_USHORT glyphCount; SD_USHORT classValueArray[1]; // glyphCount } OTF_ClassDefFormat1; typedef struct _OTF_ClassRangeRecord { SD_USHORT startGlyph; SD_USHORT endGlyph; SD_USHORT classValue; } OTF_ClassRangeRecord; typedef struct _OTF_ClassDefFormat2 { SD_USHORT format; // 2. SD_USHORT classRangeCount; OTF_ClassRangeRecord classRangeRecord[1]; // classRangeCount } OTF_ClassDefFormat2; typedef struct _OTF_ChainContextSubstFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT backtrackClassDef; SD_USHORT inputClassDef; SD_USHORT lookaheadClassDef; SD_USHORT chainSubClassSetCnt; SD_USHORT chainSubClassSet[1]; // chainSubClassCnt. } OTF_ChainContextSubstFormat2; typedef struct _OTF_ContextSubstFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT classDef; SD_USHORT subClassSetCnt; SD_USHORT subClassSet[1]; // chainSubClassCnt. } OTF_ContextSubstFormat2; typedef struct _OTF_Ligature { SD_USHORT glyph; SD_USHORT count; SD_USHORT component[1]; } OTF_Ligature; typedef struct _OTF_LigatureSet { SD_USHORT count; SD_USHORT offset[1]; } OTF_LigatureSet; typedef struct _OTF_AlternateSet { SD_USHORT glyphCount; SD_USHORT alternate[1]; } OTF_AlternateSet; typedef struct _OTF_AlternateSubstFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT alternateCount; SD_USHORT alternateSet[1]; } OTF_AlternateSubstFormat1; typedef struct gsub_head { SD_ULONG version; SD_USHORT scriptList; SD_USHORT featureList; SD_USHORT lookupList; } GSUB_HEAD; /*---------------------------------------------------------------------------- * GDEF: Glyph Definition Table *--------------------------------------------------------------------------*/ typedef struct gdef_head { SD_ULONG version; SD_USHORT glyphClassDef; SD_USHORT attachList; SD_USHORT ligatureCaretList; SD_USHORT markAttachClassDef; } GDEF_HEAD; typedef struct _OTF_AttachPoint { SD_USHORT pointCount; SD_USHORT pointIndex[1]; } OTF_AttachPoint; typedef struct _OTF_AttachList { SD_USHORT coverage; SD_USHORT glyphCount; SD_USHORT attachPoint[1]; } OTF_AttachList; /*---------------------------------------------------------------------------- * GPOS: Glyph Positioning Table *--------------------------------------------------------------------------*/ typedef struct gpos_head { SD_ULONG version; SD_USHORT scriptList; SD_USHORT featureList; SD_USHORT lookupList; } GPOS_HEAD; /* * FIXME: I could not find any spec * I just guessed this much be the Achnor * Structure. */ typedef struct _OTF_Anchor { SD_USHORT format; /* this can define many formats */ SD_SHORT x; SD_SHORT y; /* till here is it format one */ SD_USHORT anchorPoint; /* index to glyph contour pint */ /* till here is it format two */ SD_USHORT xDeviceTable; /* index to device table can be null */ SD_USHORT yDeviceTable; /* index to device table can be null */ } OTF_Anchor; typedef struct _OTF_MarkRecord { SD_USHORT markClass; SD_USHORT markAnchor; /* offset from MarkArray */ } OTF_MarkRecord; typedef struct _OTF_MarkArray { SD_USHORT markCount; OTF_MarkRecord markRecord[1]; /* basecount */ } OTF_MarkArray; /* * FIXME: I am using this for Mark2Recored too. * Spec does not say it is good or bad */ typedef struct _OTF_BaseRecord { SD_USHORT baseAnchor[1]; /* This is not one but class size */ } OTF_BaseRecord; /* * FIXME: I am using this for d Mark2Array too. * Spec does not say it is good or bad */ typedef struct _OTF_BaseArray { SD_USHORT baseCount; OTF_BaseRecord baseRecord[1]; /* basecount */ } OTF_BaseArray; /* Table for Mark to Base Substitution */ typedef struct _OTF_MarkBasePosFormat1 { SD_USHORT format; SD_USHORT markCoverage; SD_USHORT baseCoverage; SD_USHORT classCount; SD_USHORT markArray; /* offset from beginning of the table */ SD_USHORT baseArray; /* offset from beginning of the table */ } OTF_MarkBasePosFormat1; /* Table for Mark to Mark Substitution */ typedef struct _OTF_MarkMarkPosFormat1 { SD_USHORT format; SD_USHORT mark1Coverage; SD_USHORT mark2Coverage; SD_USHORT classCount; SD_USHORT mark1Array; /* offset from beginning of the table */ SD_USHORT mark2Array; /* offset from beginning of the table */ } OTF_MarkMarkPosFormat1; /* Pair Adjustment */ typedef struct _OTF_PairAdjustmentFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT valueFormat1; SD_USHORT valueFormat2; SD_USHORT pairSetCount; SD_USHORT pairSetOffset; /* offset from beginning of the table. */ } OTF_PairAdjustmentFormat1; /* Chained Adjustment */ typedef struct _OTF_ChainedAdjustmentFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT chainPosRuleSetCount; SD_USHORT chainPosRuleSet[1]; /* offset from beginning of the table. */ } OTF_ChainedAdjustmentFormat1; /* Chained Adjustment */ typedef struct _OTF_ChainedAdjustmentFormat2 { SD_USHORT format; } OTF_ChainedAdjustmentFormat2; // We will support only these #define SD_X_PLACEMENT 1 #define SD_Y_PLACEMENT 2 #define SD_X_ADVANCE 4 #define SD_Y_ADVANCE 8 typedef struct _OTF_Class2Record { SD_SHORT value1; SD_SHORT value2; } OTF_Class2Record; typedef struct _OTF_Class1Record { OTF_Class2Record class2Record[1]; /* Class2Count */ } OTF_Class1Record; /* Pair Adjustment */ typedef struct _OTF_PairAdjustmentFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT valueFormat1; SD_USHORT valueFormat2; SD_USHORT classDef1; SD_USHORT classDef2; SD_USHORT class1Count; SD_USHORT class2Count; OTF_Class1Record classRecord[1]; // class1Count. } OTF_PairAdjustmentFormat2; /* structure for a sequence of basic Jamos and the corresponding Jamo cluster used in 'mslvt' TTF's.*/ #define MAX_BAS_JAMOS 3 // max. # of basic jamos forming a cluster jamo typedef struct { SS_UCS4 seq[MAX_BAS_JAMOS]; SS_UCS4 liga; } _OTF_mslvtJamo; static unsigned int getOTFFeature (OTF_Feature* feat, OTF_LookupList* lookuplist, unsigned int substtype, const SString& fontname, const SS_GlyphIndex* chars, unsigned int length, SS_GlyphIndex* out); static unsigned int doChainContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doAlternateSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doSingleSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doLigatureSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static bool processGPOSFeature (const SString& name, OTF_Feature* feat, int substtype, OTF_LookupList* lookupList, const SS_GlyphIndex* gv, unsigned int gvsize, int* xpos, int* ypos); static bool doChainedPos (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static bool doPairAdjustment (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static bool doMarkToBase (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static bool doMarkToMark (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static OTF_LangSys* getNextOTFLanguageSystem (const SString fontname, GSUB_HEAD* gsubh, const SString& _script, unsigned int* from); static SD_USHORT getCoverageIndex (OTF_CoverageFormat* coverageFormat, SS_GlyphIndex gi); // OTF_ClassDefFormat1, // OTF_ClassDefFromat2 static SD_USHORT glyphClass (char* def, SD_USHORT glyph); static int get_jamo_class2(SS_UCS4 uc); static int jamo_srch_repl(_OTF_mslvtJamo *cluster, SS_UCS4 *in, int *len); static bool mslvtXform (const SS_UCS4* in, SS_UCS4* med, int *len); /** * return true if this font can do OTF ligatures */ bool SFontTTF::hasOTFLigatures() { return (tables[SS_TB_GSUB] != 0); } /** * Use feature 1 Single Substitution and substitute glyph * @param feature is one of *
      *
    • init
    • *
    • isol
    • *
    • fina
    • *
    • medi
    • *
    * @return 0 on failure. */ SS_GlyphIndex SFontTTF::substituteOTFGlyph (const char* feature, SS_GlyphIndex g) { SS_GlyphIndex out = 0; unsigned int ligs = getOTFLigature ("arab", feature, &g, 1, &out, 1); if (ligs) return out; ligs = getOTFLigature ("syrc", feature, &g, 1, &out, 1); if (ligs) { return out; } return 0; } SString debugTag ; /** * Opent Type fonts may have GSUB tables that define * Glyph substitutions. * @param _script is the script code of the table *
      *
    • arab - Arabic
    • *
    • deva - Devanagari
    • *
    • beng - Bengali
    • *
    • guru - Gurmukhi
    • *
    • gujr - Gujarati
    • *
    • orya - Oriya
    • *
    • taml - Tamil
    • *
    • telu - Telugu
    • *
    • knda - Kannada
    • *
    • mlym - Malayalam
    • *
    • sinh - Shinhala
    • *
    • jamo - Jamo (Hangul)
    • *
    • thai - Thai
    • *
    • lao - Lao (padded with space at the end)
    • *
    • tibt - Tibetan
    • *
    * @param featurelist is a comma separated list of features. * If the list starts with '!', like in '!blws,psts" it * means that the features (blws,psts) should not be used. * @param chars are the input glyphs. * @param liglen is the length of chars array * @param out is an array for output glyphs. * for all substitutions it is size 1 except for * Chaining Context Substitution, where the size of this * array must be liglen. * @param substtype in one of *
      *
    • 1 Single Substitution
    • *
    • 4 Lingature Substitution
    • *
    • 6 Chaining Context Substitution
    • *
    * @return 0 if no substitutions have been made or * length of ligatures substitued. * The result is always 1 glyph except for Chaining Context Substitution * where is is always liglen. */ unsigned int SFontTTF::getOTFLigature (const char* _script, const char* _featurelist, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* out, unsigned int substtype) { *out = 0; GSUB_HEAD* gsubh = (GSUB_HEAD*) tables[SS_TB_GSUB]; if (gsubh == 0 || ntohl (gsubh->version) != 0x00010000) { return 0; } bool nonfeature = false; SBinHashtable features; if (_featurelist != 0 && _featurelist[0] != 0 && _featurelist[1] != 0) { SString f = SString(_featurelist); if (f[0] == '!') { nonfeature = true; f.remove (0); } SStringVector v(f); for (unsigned int i=0; ifeatureList); OTF_FeatureList* featureList = (OTF_FeatureList*) ((SD_BYTE*)gsubh + ofeat); SD_USHORT fcount = ntohs (featureList->count); int olookup = ntohs(gsubh->lookupList); OTF_LookupList* lookupList = (OTF_LookupList*) ((SD_BYTE*)gsubh + olookup); if (_script == 0) { for (unsigned int i=0; i< fcount; i++) { SString tag (featureList->record[i].tag, 4); debugTag = tag; SD_USHORT loffset = ntohs (featureList->record[i].offset); /* got or not omitted */ if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); unsigned int ind = getOTFFeature (feat, lookupList, substtype, name, chars, liglen, out); if (ind) { return ind; } } return 0; } unsigned int next = 0; SString script (_script); OTF_LangSys* lsys = 0; while ((lsys = getNextOTFLanguageSystem (name, gsubh, script, &next))!=0) { SD_USHORT fcount = ntohs (lsys->featureCount); /* index lookupList through lsys->featureIndex */ SD_USHORT lorder = ntohs (lsys->lookupOrder); if (lorder != 0) { static bool warned = false; if (!warned) { fprintf (stderr, "LanguageSystem lookup order %u not supported", (unsigned int) lorder); fprintf (stderr, " in %*.*s.\n", SSARGS(name)); warned = true; } continue; } for (unsigned int i=0; i< fcount; i++) { unsigned int index = ntohs (lsys->featureIndex[i]) ; SString tag (featureList->record[index].tag, 4); if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } SD_USHORT loffset = ntohs (featureList->record[index].offset); /* tags will have mystic ligature names and stuff like that - don't check */ OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); unsigned int ind = getOTFFeature (feat, lookupList, substtype, name, chars, liglen, out); if (ind) { return ind; } } } return 0; } /** * @param feat is the feature to go through * @param lookuplist is the list of lookups. * @param substtype is 4 for ligature substituion. * @param name is the fontname - used in error printouts. * @param chars is the glyphindeces in a ligature * @param liglen is the glyphindeces count * @param outchar is the output glyph. For chaining substitution * is should be at least legth of liglen. * @return the number of glyphs that got substituted */ static unsigned int getOTFFeature (OTF_Feature* feat, OTF_LookupList* lookupList, unsigned int substtype, const SString& name, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT nfcount = ntohs (feat->count); for (unsigned int j=0; jrecord[j]); SD_USHORT lrec = ntohs (lookupList->record[rec]); OTF_Lookup * ltable = (OTF_Lookup*)((char*)lookupList + lrec); SD_USHORT type = ntohs (ltable->type); #if PRINT_UNSUPPORTED if (type !=1 && type != 4 && type != 6 && type != 5) { fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u.\n", SSARGS(name), type); } #endif if (type != substtype) continue; unsigned int ret = 0; switch (type) { case 1: ret = doSingleSubstitution (name, ltable, chars, liglen, outchar); break; case 4: ret = doLigatureSubstitution (name, ltable, chars, liglen, outchar); break; case 5: ret = doContextSubstitution (name, lookupList, ltable, chars, liglen, outchar); break; case 6: ret = doChainContextSubstitution (name, lookupList, ltable, chars, liglen, outchar); } if (ret) return ret; } return 0; } /** * Perform Substitution type 6, Chaining Contextual Substitution. * @param name is the name of this font. * @param lookuplist is the whole lookuplist * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length must be liglen. */ static unsigned int doContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); SD_USHORT *pformat = (SD_USHORT*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (*pformat); // Class Based Context Subst. if (cformat == 2) { OTF_ContextSubstFormat2 *f2 = (OTF_ContextSubstFormat2*) ( (char*)ltable + offset); SD_USHORT coffset = ntohs (f2->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)f2 + coffset); SD_USHORT cdoffset = ntohs (f2->classDef); SD_USHORT ccount = ntohs (f2->subClassSetCnt); for (unsigned int i=0; isubClassSet[i]); if (coffset == 0) continue; OTF_SubClassSet * sset = (OTF_SubClassSet*) ((char*) f2 + coffset); SD_USHORT rcount = ntohs (sset->subClassRuleCnt); for (unsigned int j=0; jsubClassRule[j]); OTF_SubClassRule *srule = (OTF_SubClassRule*) ((char*) sset + roffset); SD_USHORT gcount = ntohs(srule->glyphCount); if (gcount == 0) { continue; } SD_USHORT scount = ntohs(srule->substCount); SubstLookupRecord * slrec = (SubstLookupRecord*) &srule->clazz [gcount-1]; if ((unsigned int)gcount>(unsigned int) liglen) { continue; } //---------------------------------------------------------------- // Context - 2 //---------------------------------------------------------------- unsigned int index = 0; SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex == 0xffff) { continue; } bool ok = true; /* cont */ for (unsigned int ii=1; iiclazz[ii-1]); SD_USHORT c2 = glyphClass((char*)f2 + cdoffset, chars[index++]); if (c2==0xffff || c2 != c1) { ok = false; break; } } if (!ok) continue; unsigned int inlength = gcount; unsigned int m; for (m=0; msequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int slen=0; SS_GlyphIndex g; unsigned int at = (unsigned int) sqi; // Sanity if (at > inlength) break; unsigned int lsize = inlength - at; switch (mtype) { case 1: slen = doSingleSubstitution (name, mltable, &outchar[at], lsize, &g); break; case 3: slen = doAlternateSubstitution (name, mltable, &outchar[at], lsize, &g); break; case 4: slen = doLigatureSubstitution (name, mltable, &outchar[at], lsize, &g); break; } if (slen == 0) continue; if (slen > lsize) continue; outchar[at] = g; /* move down */ for (unsigned int v=at+1; v+slen-1 < liglen; v++) { outchar[v] = outchar[v+slen-1]; } inlength = inlength - slen +1; } return inlength + liglen - gcount; } } return 0; } else // todo other stuff if ther is such a font. { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 5, cformat); #endif } } return 0; } /** * Perform Substitution type 6, Chaining Contextual Substitution. * @param name is the name of this font. * @param lookuplist is the whole lookuplist * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length must be liglen. */ static unsigned int doChainContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); SD_USHORT *pformat = (SD_USHORT*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (*pformat); // Coverage Based Chaining Context Glyph Substitution if (cformat == 3) { OTF_ChainContextSubstFormat3_Backtrack *bformat = (OTF_ChainContextSubstFormat3_Backtrack*) ( (char*)ltable + offset); SD_USHORT bcount = ntohs(bformat->backtrackGlyphCount); OTF_ChainContextSubstFormat3_Input * iformat = (OTF_ChainContextSubstFormat3_Input*) &bformat->coverage[bcount]; SD_USHORT icount = ntohs(iformat->inputGlyphCount); OTF_ChainContextSubstFormat3_Lookahead * lformat = (OTF_ChainContextSubstFormat3_Lookahead*) &iformat->coverage[icount]; SD_USHORT lcount = ntohs(lformat->lookaheadGlyphCount); OTF_ChainContextSubstFormat3_Subst * sformat = (OTF_ChainContextSubstFormat3_Subst*) &lformat->coverage[lcount]; SD_USHORT scount = ntohs(sformat->substGlyphCount); if ((unsigned int)bcount+icount+lcount>(unsigned int) liglen) { continue; } bool ok = true; unsigned int index = 0; /* Backtrack */ for (unsigned int bi=0; bicoverage[bcount-bi-1]); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)bformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex==0xffff) { ok = false; break; } } if (!ok) continue; /* Input */ for (unsigned int ii=0; iicoverage[ii]); /* this is also measured from bformat */ OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)bformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex==0xffff) { ok = false; break; } } if (!ok) continue; /* Lookahead */ for (unsigned int li=0; licoverage[li]); /* this is also measured from bformat */ OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)bformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex==0xffff) { ok = false; break; } } if (!ok) continue; // OTF_ChainContextSubstFormat3_Subst sformat unsigned int m; unsigned int om=0; unsigned int im=0; for (m=0; m<(unsigned int)bcount; m++) { outchar[om++] = chars[im++]; } for (m=0; m<(unsigned int)icount; m++) { outchar[om+m] = chars[im++]; } /* Substitute from outchar[om..scount] - assume scount < icount */ unsigned int inlength = icount; for (m=0; m<(unsigned int)scount; m++) { SubstLookupRecord* sr = (SubstLookupRecord*) &sformat->substLookupRecord[m]; SD_USHORT sqi = ntohs (sr->sequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); /* * Perform substitution loi at outchar[om+sqi]. * If is is just a single glyph substitution * replace outchar[om+sqi]. * If n glyphs are made into 1 then * reduce inlen with n-1, and move data. */ SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int slen=0; SS_GlyphIndex g; unsigned int at = (unsigned int) sqi; // Sanity. if (at > inlength) break; unsigned int lsize = inlength - at; switch (mtype) { case 1: slen = doSingleSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 3: slen = doAlternateSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 4: slen = doLigatureSubstitution (name, mltable, &outchar[om+at], lsize, &g); } if (slen == 0) continue; if (slen > lsize) continue; outchar[om+at] = g; /* move down */ for (unsigned int v=at+1; v+slen-1 < inlength; v++) { outchar[om+v] = outchar[om+v+slen-1]; } inlength = inlength - slen +1; } om += inlength; /* do it till the end of ligature. */ for (m=(unsigned int)bcount+icount; m<(unsigned int)liglen; m++) { outchar[om++] = chars[im++]; } return om; } // Class Based Chaining Context Glyph Substitution else if (cformat == 2) { OTF_ChainContextSubstFormat2 *f2 = (OTF_ChainContextSubstFormat2*) ( (char*)ltable + offset); SD_USHORT coffset = ntohs (f2->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)f2 + coffset); SD_USHORT bcoffset = ntohs (f2->backtrackClassDef); SD_USHORT icoffset = ntohs (f2->inputClassDef); SD_USHORT lcoffset = ntohs (f2->lookaheadClassDef); SD_USHORT ccount = ntohs (f2->chainSubClassSetCnt); for (unsigned int i=0; ichainSubClassSet[i]); if (coffset == 0) continue; OTF_ChainSubClassSet * sset = (OTF_ChainSubClassSet*) ((char*) f2 + coffset); SD_USHORT rcount = ntohs (sset->chainSubClassRuleCnt); for (unsigned int j=0; jchainSubClassRule[j]); OTF_ChainContextSubstFormat2_Backtrack *bformat = (OTF_ChainContextSubstFormat2_Backtrack*) ((char*) sset + roffset); SD_USHORT bcount = ntohs(bformat->backtrackGlyphCount); OTF_ChainContextSubstFormat2_Input * iformat = (OTF_ChainContextSubstFormat2_Input*) &bformat->coverage[bcount]; SD_USHORT icount = ntohs(iformat->inputGlyphCount); if (icount == 0) { continue; } OTF_ChainContextSubstFormat2_Lookahead * lformat = (OTF_ChainContextSubstFormat2_Lookahead*) &iformat->coverage[icount-1]; SD_USHORT lcount = ntohs(lformat->lookaheadGlyphCount); OTF_ChainContextSubstFormat2_Subst * sformat = (OTF_ChainContextSubstFormat2_Subst*) &lformat->coverage[lcount]; SD_USHORT scount = ntohs(sformat->substGlyphCount); if ((unsigned int)bcount+icount+lcount>(unsigned int) liglen) { continue; } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- bool ok = true; unsigned int index = 0; /* Backtrack */ for (unsigned int bi=0; bicoverage[bcount-bi-1]); if (bcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + bcoffset, chars[index++]); if (clazz==0xffff || clazz != backtrack) { ok = false; break; } } if (!ok) continue; SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex == 0xffff) { continue; } /* Input */ for (unsigned int ii=1; iicoverage[ii-1]); if (icoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + icoffset, chars[index++]); if (clazz==0xffff || clazz != input) { ok = false; break; } } if (!ok) continue; /* Lookahead */ for (unsigned int li=0; licoverage[li]); if (lcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + lcoffset, chars[index++]); if (clazz==0xffff || clazz != lookahead) { ok = false; break; } } if (!ok) continue; // OTF_ChainContextSubstFormat3_Subst sformat unsigned int m; unsigned int om=0; unsigned int im=0; for (m=0; m<(unsigned int)bcount; m++) { outchar[om++] = chars[im++]; } for (m=0; m<(unsigned int)icount; m++) { outchar[om+m] = chars[im++]; } /* Substitute from outchar[om..scount] - assume scount < icount */ unsigned int inlength = icount; for (m=0; m<(unsigned int)scount; m++) { SubstLookupRecord* sr = (SubstLookupRecord*) &sformat->substLookupRecord[m]; SD_USHORT sqi = ntohs (sr->sequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); /* * Perform substitution loi at outchar[om+sqi]. * If is is just a single glyph substitution * replace outchar[om+sqi]. * If n glyphs are made into 1 then * reduce inlen with n-1, and move data. */ SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int slen=0; SS_GlyphIndex g; unsigned int at = (unsigned int) sqi; // Sanity. if (at > inlength) break; unsigned int lsize = inlength - at; switch (mtype) { case 1: slen = doSingleSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 3: slen = doAlternateSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 4: slen = doLigatureSubstitution (name, mltable, &outchar[om+at], lsize, &g); } if (slen == 0) continue; if (slen > lsize) continue; outchar[om+at] = g; /* move down */ for (unsigned int v=at+1; v+slen-1 < inlength; v++) { outchar[om+v] = outchar[om+v+slen-1]; } inlength = inlength - slen +1; } om += inlength; /* do it till the end of ligature. */ for (m=(unsigned int)bcount+icount; m<(unsigned int)liglen; m++) { outchar[om++] = chars[im++]; } return om; } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 6, cformat); #endif } } return 0; } /** * Perform Substitution type 1, Single Substitution. * @param name is the name of this font. * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length is 1. */ static unsigned int doSingleSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_SingleSubstFormat *lformat = (OTF_SingleSubstFormat*) ((char*)ltable + offset); SD_USHORT coffset = ntohs (lformat->coverage); /* This should be less than ccount after coverage is found */ OTF_CoverageFormat* coverageFormat = (OTF_CoverageFormat*) ((char*)lformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (coverageFormat, chars[0]); if (coverageIndex == 0xffff) { continue; /* no coverage */ } SD_USHORT cformat = ntohs (lformat->format); if (cformat == 1) { OTF_SingleSubstFormat1* lformat1 = (OTF_SingleSubstFormat1*) ((char*)ltable + offset); SD_SHORT deltagid = ntohs (lformat1->deltaGlyphID); return (chars[0] + deltagid); } else if (cformat == 2) { OTF_SingleSubstFormat2* lformat2 = (OTF_SingleSubstFormat2*) ((char*)ltable + offset); SD_USHORT count2 = ntohs (lformat2->count); if (coverageIndex >= count2) continue; SD_USHORT glyph = ntohs (lformat2->substitute[coverageIndex]); *outchar = (SS_GlyphIndex) glyph; return 1; } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 1, cformat); #endif } } return 0; } /** * Perform Substitution type 3, Altenate Substitution. * @param name is the name of this font. * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length is 1. */ static unsigned int doAlternateSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_AlternateSubstFormat1 *lformat = (OTF_AlternateSubstFormat1*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (lformat->format); if (cformat==1) { SD_USHORT acount = ntohs (lformat->alternateCount); SD_USHORT coffset = ntohs (lformat->coverage); /* This should be less than ccount after coverage is found */ OTF_CoverageFormat* coverageFormat = (OTF_CoverageFormat*) ((char*)lformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (coverageFormat, chars[0]); if (coverageIndex >= acount) { continue; /* no coverage */ } SD_USHORT aoffset = htons (lformat->alternateSet[coverageIndex]); OTF_AlternateSet* aset = (OTF_AlternateSet*) ((char*)lformat + aoffset); SD_USHORT gcount = htons (aset->glyphCount); if (gcount > 0) { SD_USHORT ch = htons (aset->alternate[0]); //fprintf (stderr, "XXXX Alternate %04X -> %04X\n", chars[0], ch); *outchar = (SS_GlyphIndex) ch; return 1; } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 3, cformat); #endif } } return 0; } /** * Perform Substitution type 4, Ligature Substitution. * @param name is the name of this font. * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length is 1. */ static unsigned int doLigatureSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); // HELP Is this good or bad? // if ((flag & 0x0e)!=0) continue; for (unsigned int k=0; ksubtable[k]); OTF_LigatureSusbstFormat1 *lformat = (OTF_LigatureSusbstFormat1*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (lformat->format); if (cformat != 1) { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 4, cformat); #endif continue; } SD_USHORT coffset = ntohs (lformat->coverage); /* get the coverage */ SD_USHORT ccount = ntohs (lformat->count); /* This should be less than ccount after coverage is found */ OTF_CoverageFormat* coverageFormat = (OTF_CoverageFormat*) ((char*)lformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (coverageFormat, chars[0]); if (coverageIndex >= ccount) { continue; /* no coverage */ } /* don't loop - get coverageIndex */ SD_USHORT cinoffset = ntohs (lformat->offset[coverageIndex]); OTF_LigatureSet *lset = (OTF_LigatureSet *) ((SD_BYTE*) lformat + cinoffset); SD_USHORT count = ntohs (lset->count); for (unsigned int m=0; moffset[m]); OTF_Ligature* lig = (OTF_Ligature*) ((SD_BYTE*) lset + offset); SD_USHORT compcount = ntohs (lig->count); if (compcount > liglen) { continue; } bool found = true; for (unsigned int n=0; n+1component[n]); if (chars[n+1] != component) found = false; } if (found) { SD_USHORT glyph = ntohs (lig->glyph); *outchar = (SS_GlyphIndex) glyph; return (unsigned int) compcount; } } } return 0; } /** * Get a coverage index * @param coverageFormat is the header format */ static SD_USHORT getCoverageIndex (OTF_CoverageFormat* coverageFormat, SS_GlyphIndex gi) { SD_USHORT coverageIndex = 0xffff; /* go through coverage tables - they should be sorted */ SD_USHORT format = ntohs (coverageFormat->format); if (format==1) { OTF_CoverageFormat1* format1 = (OTF_CoverageFormat1*) coverageFormat; SD_USHORT gcount = ntohs (format1->count); /* Do binary search here set coverageIndex */ unsigned int top, bottom, mid; top = gcount; bottom = 0; unsigned int c0 = gi; SD_USHORT id = c0 +1; while (top > bottom) { mid = (top+bottom)/2; id = ntohs (format1->id[mid]); if (c0 == id) { top = mid; break; } if (c0 < id) { top = mid; continue; } bottom = mid + 1; } if (top < gcount && c0 == id) coverageIndex = top; } else if (format==2) { OTF_CoverageFormat2* format2 = (OTF_CoverageFormat2*) coverageFormat; /* I could not find any format2 fonts-this part is untested */ SD_USHORT gcount = ntohs (format2->count); /* Do binary search here. */ for (unsigned int l=0; lrecord[l].index); SD_USHORT start = ntohs (format2->record[l].start); SD_USHORT end = ntohs (format2->record[l].end); if (gi >= start && gi <= end) { coverageIndex = index + gi - start; break; } } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED GSUB coverage format=%u.\n", format); #endif } return coverageIndex; } // OTF_ClassDefFormat1, // OTF_ClassDefFromat2 SD_USHORT glyphClass (char* def, SD_USHORT glyph) { OTF_ClassDefFormat1* f1 = (OTF_ClassDefFormat1*) def; SD_USHORT format = htons (f1->format); SD_USHORT rvle = 0xffff; if (format == 1) { SD_USHORT startGlyph = htons (f1->startGlyph); SD_USHORT glyphCount = htons (f1->glyphCount); if (glyph < startGlyph || glyph+glyphCount >= glyph) return rvle; rvle = htons (f1->classValueArray[glyph-startGlyph]); return rvle; } else if (format == 2) { OTF_ClassDefFormat2* f2 = (OTF_ClassDefFormat2*) def; SD_USHORT classRangeCount = htons (f2->classRangeCount); for (unsigned int i=0; iclassRangeRecord[i]; SD_USHORT startGlyph = htons(rec->startGlyph); SD_USHORT endGlyph = htons(rec->endGlyph); if (glyph >= startGlyph && glyph <= endGlyph) { rvle = htons (rec->classValue); return rvle; } } return rvle; } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED glyph-class format=%u.\n", format); #endif } return rvle; } /** * Iterate to the next language system. * @param gsubh is the GSUB_HEAD header * @param _script is the OTF standard name of script. * like "taml" * @patam from is the input output iterator counter * - first it is needed to be set to zero. */ static OTF_LangSys* getNextOTFLanguageSystem (const SString fontname, GSUB_HEAD* gsubh, const SString& script, unsigned int* from) { /* Look for script. */ int offset = ntohs(gsubh->scriptList); OTF_ScriptList* scriptList = (OTF_ScriptList*) ((SD_BYTE*)gsubh + offset); SD_USHORT numscripts = ntohs (scriptList->scriptCount); for (unsigned int i=*from; irecords[i].tag, 4); SD_USHORT sl = ntohs (scriptList->records[i].offset); /* we found the script */ if (tag==script) { OTF_Script* stable = (OTF_Script*) ((char*)scriptList + sl); SD_USHORT defaultLangsys = ntohs (stable->defaultLangSys); SD_USHORT langSysCount = ntohs (stable->langSysCount); OTF_LangSysRecord* langsysrec = 0; OTF_LangSys *lsys = 0 ; /* attention count includes default */ if (defaultLangsys == 0 && langSysCount > 0) { langsysrec = &stable->langSysRecord[0]; } else if (langSysCount > 0 && defaultLangsys != 0) { langsysrec = (OTF_LangSysRecord*) ((char*) stable + defaultLangsys); } /* Locate the langsys table */ if (langsysrec) { SString ltag (langsysrec->tag, 4); SD_USHORT lsysoffset = ntohs (langsysrec->offsetFromScript); lsys = (OTF_LangSys*) ((char*) stable + lsysoffset); } else if (defaultLangsys != 0) { lsys = (OTF_LangSys*) ((char*) stable + defaultLangsys) ; } SD_USHORT lorder = ntohs (lsys->lookupOrder); if (lorder != 0) { static bool fixed = false; /* get a langsys record that works */ for (unsigned int sg = 0; sglangSysRecord[sg]; SD_USHORT lsysoffset = ntohs (lr->offsetFromScript); OTF_LangSys* ls = (OTF_LangSys*) ((char*) stable + lsysoffset); SD_USHORT lorder = ntohs (ls->lookupOrder); if (lorder == 0) { lsys = ls; #if PRINT_UNSUPPORTED if (!fixed) { fprintf (stderr, "Fixed broken default langsys table in %*.*s. (%4.4s %u/%u)\n", SSARGS(fontname), lr->tag, (unsigned int) sg, (unsigned int) langSysCount); } #endif } fixed = true; } } *from = i+1; return lsys; } } *from = numscripts; return 0; } #define LC_TMPPOS 0xf000 // temp. block for leading consonants #define VO_TMPPOS 0xf100 // temp. block for vowels #define TC_TMPPOS 0xf200 // temp. block for trailinng consonants #define LC_OFFSET (LC_TMPPOS-0x1100) #define VO_OFFSET (VO_TMPPOS-0x1160) #define TC_OFFSET (TC_TMPPOS-0x11a8) /** * The map from sequences of leading consonants forming consonant clusters * not encoded in U+1100 block to temporary code points in the 0xf000 block */ static _OTF_mslvtJamo LC_Clusters[]= { {{0xf005, 0xf000, 0xf000}, 0xf06a}, // U+1105 U+1100 U+1100 => lc # 0x6a {{0xf005, 0xf003, 0xf003}, 0xf06c}, // U+1105 U+1103 U+1103 => lc # 0x6c {{0xf005, 0xf007, 0xf007}, 0xf06f}, // U+1105 U+1107 U+1107 => lc # 0x6f {{0xf005, 0xf007, 0xf00b}, 0xf070}, // U+1105 U+1107 U+110b => lc # 0x70 {{0xf007, 0xf009, 0xf010}, 0xf077}, // U+1107 U+1109 U+1110 => lc # 0x77 {{0xf009, 0xf009, 0xf007}, 0xf07a}, // U+1109 U+1109 U+1107 => lc # 0x7a {{0xf00c, 0xf00c, 0xf012}, 0xf07d}, // U+110c U+110c U+1112 => lc # 0x7d {{0xf005, 0xf001, 0x0000}, 0xf06a}, // U+1105 U+1101 => lc # 0x6a {{0xf005, 0xf004, 0x0000}, 0xf06c}, // U+1105 U+1104 => lc # 0x6c {{0xf005, 0xf008, 0x0000}, 0xf06f}, // U+1105 U+1108 => lc # 0x6f {{0xf005, 0xf02b, 0x0000}, 0xf070}, // U+1105 U+112b => lc # 0x70 {{0xf00a, 0xf007, 0x0000}, 0xf07a}, // U+110a U+1107 => lc # 0x7a {{0xf00d, 0xf012, 0x0000}, 0xf07d}, // U+110d U+1112 => lc # 0x7d {{0xf000, 0xf003, 0x0000}, 0xf060}, // U+1100 U+1103 => lc # 0x60 {{0xf002, 0xf009, 0x0000}, 0xf061}, // U+1102 U+1109 => lc # 0x61 {{0xf002, 0xf00c, 0x0000}, 0xf062}, // U+1102 U+110c => lc # 0x62 {{0xf002, 0xf012, 0x0000}, 0xf063}, // U+1102 U+1112 => lc # 0x63 {{0xf003, 0xf005, 0x0000}, 0xf064}, // U+1103 U+1105 => lc # 0x64 {{0xf003, 0xf006, 0x0000}, 0xf065}, // U+1103 U+1106 => lc # 0x65 {{0xf003, 0xf007, 0x0000}, 0xf066}, // U+1103 U+1107 => lc # 0x66 {{0xf003, 0xf009, 0x0000}, 0xf067}, // U+1103 U+1109 => lc # 0x67 {{0xf003, 0xf00c, 0x0000}, 0xf068}, // U+1103 U+110c => lc # 0x68 {{0xf005, 0xf000, 0x0000}, 0xf069}, // U+1105 U+1100 => lc # 0x69 {{0xf005, 0xf003, 0x0000}, 0xf06b}, // U+1105 U+1103 => lc # 0x6b {{0xf005, 0xf006, 0x0000}, 0xf06d}, // U+1105 U+1106 => lc # 0x6d {{0xf005, 0xf007, 0x0000}, 0xf06e}, // U+1105 U+1107 => lc # 0x6e {{0xf005, 0xf009, 0x0000}, 0xf071}, // U+1105 U+1109 => lc # 0x71 {{0xf005, 0xf00c, 0x0000}, 0xf072}, // U+1105 U+110c => lc # 0x72 {{0xf005, 0xf00f, 0x0000}, 0xf073}, // U+1105 U+110f => lc # 0x73 {{0xf006, 0xf000, 0x0000}, 0xf074}, // U+1106 U+1100 => lc # 0x74 {{0xf006, 0xf003, 0x0000}, 0xf075}, // U+1106 U+1103 => lc # 0x75 {{0xf006, 0xf009, 0x0000}, 0xf076}, // U+1106 U+1109 => lc # 0x76 {{0xf007, 0xf00f, 0x0000}, 0xf078}, // U+1107 U+110f => lc # 0x78 {{0xf007, 0xf012, 0x0000}, 0xf079}, // U+1107 U+1112 => lc # 0x79 {{0xf00b, 0xf005, 0x0000}, 0xf07b}, // U+110b U+1105 => lc # 0x7b {{0xf00b, 0xf012, 0x0000}, 0xf07c}, // U+110b U+1112 => lc # 0x7c {{0xf010, 0xf010, 0x0000}, 0xf07e}, // U+1110 U+1110 => lc # 0x7e {{0xf011, 0xf012, 0x0000}, 0xf07f}, // U+1111 U+1112 => lc # 0x7f {{0xf012, 0xf009, 0x0000}, 0xf080}, // U+1112 U+1109 => lc # 0x80 {{0xf059, 0xf059, 0x0000}, 0xf081}, // U+1159 U+1159 => lc # 0x81 {{0, 0, 0}, 0} }; /** * The map from sequences of medial vowels forming vowel clusters * not encoded in U+1100 block to temporary code points in the 0xf100 block */ static _OTF_mslvtJamo VO_Clusters[]= { {{0xf109, 0xf103, 0xf115}, 0xf147}, // U+1169 U+1163 U+1175 => vowel # 0x47 {{0xf109, 0xf10e, 0xf13e}, 0xf149}, // U+1169 U+116e U+119e => vowel # 0x49 {{0xf10d, 0xf101, 0xf115}, 0xf14b}, // U+116d U+1161 U+1175 => vowel # 0x4b {{0xf10e, 0xf115, 0xf115}, 0xf14e}, // U+116e U+1175 U+1175 => vowel # 0x4e {{0xf112, 0xf101, 0xf115}, 0xf14f}, // U+1172 U+1161 U+1175 => vowel # 0x4f {{0xf113, 0xf105, 0xf115}, 0xf153}, // U+1173 U+1165 U+1175 => vowel # 0x53 {{0xf115, 0xf103, 0xf109}, 0xf155}, // U+1175 U+1163 U+1169 => vowel # 0x55 {{0xf115, 0xf103, 0xf115}, 0xf156}, // U+1175 U+1163 U+1175 => vowel # 0x56 {{0xf115, 0xf107, 0xf115}, 0xf158}, // U+1175 U+1167 U+1175 => vowel # 0x58 {{0xf115, 0xf109, 0xf13e}, 0xf159}, // U+1175 U+1169 U+119e => vowel # 0x59 {{0xf115, 0xf115, 0xf115}, 0xf15c}, // U+1175 U+1175 U+1175 => vowel # 0x5c {{0xf13e, 0xf105, 0xf115}, 0xf15e}, // U+119e U+1165 U+1175 => vowel # 0x5e {{0xf101, 0xf113, 0x0000}, 0xf143}, // U+1161 U+1173 => vowel # 0x43 {{0xf103, 0xf10e, 0x0000}, 0xf144}, // U+1163 U+116e => vowel # 0x44 {{0xf107, 0xf103, 0x0000}, 0xf145}, // U+1167 U+1163 => vowel # 0x45 {{0xf109, 0xf103, 0x0000}, 0xf146}, // U+1169 U+1163 => vowel # 0x46 {{0xf109, 0xf104, 0x0000}, 0xf147}, // U+1169 U+1164 => vowel # 0x47 {{0xf109, 0xf107, 0x0000}, 0xf148}, // U+1169 U+1167 => vowel # 0x48 {{0xf10d, 0xf101, 0x0000}, 0xf14a}, // U+116d U+1161 => vowel # 0x4a {{0xf10d, 0xf102, 0x0000}, 0xf14b}, // U+116d U+1162 => vowel # 0x4b {{0xf10d, 0xf105, 0x0000}, 0xf14c}, // U+116d U+1165 => vowel # 0x4c {{0xf10e, 0xf107, 0x0000}, 0xf14d}, // U+116e U+1167 => vowel # 0x4d {{0xf112, 0xf102, 0x0000}, 0xf14f}, // U+1172 U+1162 => vowel # 0x4f {{0xf112, 0xf109, 0x0000}, 0xf150}, // U+1172 U+1169 => vowel # 0x50 {{0xf113, 0xf101, 0x0000}, 0xf151}, // U+1173 U+1161 => vowel # 0x51 {{0xf113, 0xf105, 0x0000}, 0xf152}, // U+1173 U+1165 => vowel # 0x52 {{0xf113, 0xf106, 0x0000}, 0xf153}, // U+1173 U+1166 => vowel # 0x53 {{0xf113, 0xf109, 0x0000}, 0xf154}, // U+1173 U+1169 => vowel # 0x54 {{0xf115, 0xf104, 0x0000}, 0xf156}, // U+1175 U+1164 => vowel # 0x56 {{0xf115, 0xf107, 0x0000}, 0xf157}, // U+1175 U+1167 => vowel # 0x57 {{0xf115, 0xf10d, 0x0000}, 0xf15a}, // U+1175 U+116d => vowel # 0x5a {{0xf115, 0xf112, 0x0000}, 0xf15b}, // U+1175 U+1172 => vowel # 0x5b {{0xf13e, 0xf101, 0x0000}, 0xf15d}, // U+119e U+1161 => vowel # 0x5d {{0xf13e, 0xf106, 0x0000}, 0xf15e}, // U+119e U+1166 => vowel # 0x5e {{0, 0, 0}, 0} }; /** * The map from sequences of trailing consonants forming consonant clusters * not encoded in U+1100 block to temporary code points in the 0xf200 block */ static _OTF_mslvtJamo TC_Clusters[]= { {{0xf206, 0xf206, 0xf210}, 0xf25b}, // U+11ae U+11ae U+11b8 => tc # 0x5b {{0xf206, 0xf212, 0xf200}, 0xf25e}, // U+11ae U+11ba U+11a8 => tc # 0x5e {{0xf207, 0xf200, 0xf200}, 0xf262}, // U+11af U+11a8 U+11a8 => tc # 0x62 {{0xf207, 0xf200, 0xf21a}, 0xf263}, // U+11af U+11a8 U+11c2 => tc # 0x63 {{0xf207, 0xf207, 0xf217}, 0xf264}, // U+11af U+11af U+11bf => tc # 0x64 {{0xf207, 0xf20f, 0xf21a}, 0xf265}, // U+11af U+11b7 U+11c2 => tc # 0x65 {{0xf207, 0xf210, 0xf206}, 0xf266}, // U+11af U+11b8 U+11ae => tc # 0x66 {{0xf207, 0xf210, 0xf219}, 0xf267}, // U+11af U+11b8 U+11c1 => tc # 0x67 {{0xf207, 0xf251, 0xf21a}, 0xf269}, // U+11af U+11f9 U+11c2 => tc # 0x69 {{0xf20f, 0xf203, 0xf203}, 0xf26c}, // U+11b7 U+11ab U+11ab => tc # 0x6c {{0xf20f, 0xf210, 0xf212}, 0xf26e}, // U+11b7 U+11b8 U+11ba => tc # 0x6e {{0xf210, 0xf207, 0xf219}, 0xf271}, // U+11b8 U+11af U+11c1 => tc # 0x71 {{0xf210, 0xf212, 0xf206}, 0xf274}, // U+11b8 U+11ba U+11ae => tc # 0x74 {{0xf212, 0xf210, 0xf214}, 0xf278}, // U+11ba U+11b8 U+11bc => tc # 0x78 {{0xf212, 0xf212, 0xf200}, 0xf279}, // U+11ba U+11ba U+11a8 => tc # 0x79 {{0xf212, 0xf212, 0xf206}, 0xf27a}, // U+11ba U+11ba U+11ae => tc # 0x7a {{0xf243, 0xf210, 0xf214}, 0xf281}, // U+11eb U+11b8 U+11bc => tc # 0x81 {{0xf215, 0xf210, 0xf210}, 0xf289}, // U+11bd U+11b8 U+11b8 => tc # 0x89 {{0xf215, 0xf215, 0xf215}, 0xf28a}, // U+11bd U+11bd U+11bd => tc # 0x8a {{0xf200, 0xf203, 0x0000}, 0xf252}, // U+11a8 U+11ab => tc # 0x52 {{0xf200, 0xf210, 0x0000}, 0xf253}, // U+11a8 U+11b8 => tc # 0x53 {{0xf200, 0xf216, 0x0000}, 0xf254}, // U+11a8 U+11be => tc # 0x54 {{0xf200, 0xf217, 0x0000}, 0xf255}, // U+11a8 U+11bf => tc # 0x55 {{0xf200, 0xf21a, 0x0000}, 0xf256}, // U+11a8 U+11c2 => tc # 0x56 {{0xf203, 0xf203, 0x0000}, 0xf257}, // U+11ab U+11ab => tc # 0x57 {{0xf203, 0xf207, 0x0000}, 0xf258}, // U+11ab U+11af => tc # 0x58 {{0xf203, 0xf216, 0x0000}, 0xf259}, // U+11ab U+11be => tc # 0x59 {{0xf206, 0xf206, 0x0000}, 0xf25a}, // U+11ae U+11ae => tc # 0x5a {{0xf206, 0xf210, 0x0000}, 0xf25c}, // U+11ae U+11b8 => tc # 0x5c {{0xf206, 0xf212, 0x0000}, 0xf25d}, // U+11ae U+11ba => tc # 0x5d {{0xf206, 0xf215, 0x0000}, 0xf25f}, // U+11ae U+11bd => tc # 0x5f {{0xf206, 0xf216, 0x0000}, 0xf260}, // U+11ae U+11be => tc # 0x60 {{0xf206, 0xf218, 0x0000}, 0xf261}, // U+11ae U+11c0 => tc # 0x61 {{0xf207, 0xf201, 0x0000}, 0xf262}, // U+11af U+11a9 => tc # 0x62 {{0xf207, 0xf248, 0x0000}, 0xf268}, // U+11af U+11f0 => tc # 0x68 {{0xf207, 0xf214, 0x0000}, 0xf26a}, // U+11af U+11bc => tc # 0x6a {{0xf20f, 0xf203, 0x0000}, 0xf26b}, // U+11b7 U+11ab => tc # 0x6b {{0xf20f, 0xf20f, 0x0000}, 0xf26d}, // U+11b7 U+11b7 => tc # 0x6d {{0xf20f, 0xf215, 0x0000}, 0xf26f}, // U+11b7 U+11bd => tc # 0x6f {{0xf210, 0xf206, 0x0000}, 0xf270}, // U+11b8 U+11ae => tc # 0x70 {{0xf210, 0xf20f, 0x0000}, 0xf272}, // U+11b8 U+11b7 => tc # 0x72 {{0xf210, 0xf210, 0x0000}, 0xf273}, // U+11b8 U+11b8 => tc # 0x73 {{0xf210, 0xf215, 0x0000}, 0xf275}, // U+11b8 U+11bd => tc # 0x75 {{0xf210, 0xf216, 0x0000}, 0xf276}, // U+11b8 U+11be => tc # 0x76 {{0xf212, 0xf20f, 0x0000}, 0xf277}, // U+11ba U+11b7 => tc # 0x77 {{0xf212, 0xf23e, 0x0000}, 0xf278}, // U+11ba U+11e6 => tc # 0x78 {{0xf213, 0xf200, 0x0000}, 0xf279}, // U+11bb U+11a8 => tc # 0x79 {{0xf213, 0xf206, 0x0000}, 0xf27a}, // U+11bb U+11ae => tc # 0x7a {{0xf212, 0xf243, 0x0000}, 0xf27b}, // U+11ba U+11eb => tc # 0x7b {{0xf212, 0xf215, 0x0000}, 0xf27c}, // U+11ba U+11bd => tc # 0x7c {{0xf212, 0xf216, 0x0000}, 0xf27d}, // U+11ba U+11be => tc # 0x7d {{0xf212, 0xf218, 0x0000}, 0xf27e}, // U+11ba U+11c0 => tc # 0x7e {{0xf212, 0xf21a, 0x0000}, 0xf27f}, // U+11ba U+11c2 => tc # 0x7f {{0xf243, 0xf210, 0x0000}, 0xf280}, // U+11eb U+11b8 => tc # 0x80 {{0xf243, 0xf23e, 0x0000}, 0xf281}, // U+11eb U+11e6 => tc # 0x81 {{0xf214, 0xf20f, 0x0000}, 0xf282}, // U+11bc U+11b7 => tc # 0x82 {{0xf214, 0xf212, 0x0000}, 0xf283}, // U+11bc U+11ba => tc # 0x83 {{0xf214, 0xf21a, 0x0000}, 0xf284}, // U+11bc U+11c2 => tc # 0x84 {{0xf248, 0xf200, 0x0000}, 0xf285}, // U+11f0 U+11a8 => tc # 0x85 {{0xf248, 0xf217, 0x0000}, 0xf286}, // U+11f0 U+11bf => tc # 0x86 {{0xf248, 0xf21a, 0x0000}, 0xf287}, // U+11f0 U+11c2 => tc # 0x87 {{0xf215, 0xf210, 0x0000}, 0xf288}, // U+11bd U+11b8 => tc # 0x88 {{0xf219, 0xf212, 0x0000}, 0xf28b}, // U+11c1 U+11ba => tc # 0x8b {{0xf219, 0xf218, 0x0000}, 0xf28c}, // U+11c1 U+11c0 => tc # 0x8c { {0, 0, 0}, 0} }; /** * transforms the content of in[] to a more convenient form * for mapping to glyphs of mslvt fonts and store the result in med[]. * More specifically, sequences of basic Jamos for which * precomposed Jamo glyphs are available in mslvt TTF's are replaced * with Jamo cluster code points defined in PUA. In findJamoGlyph(), * these PUA code points are converted to glyph code points * in mslvt TTF's which are in turn converted to glyph indices. * Also, put a new length in *len after the replacement. */ static bool mslvtXform (const SS_UCS4* in, SS_UCS4* med, int *len) { int i; for (i=0; i < *len; i++) switch(getJamoClass(in[i])) { case SD_JAMO_L: med[i]=in[i]+LC_OFFSET; break; case SD_JAMO_V: med[i]=in[i]+VO_OFFSET; break; case SD_JAMO_T: med[i]=in[i]+TC_OFFSET; break; default: med[i]=in[i]; } for (i=0; LC_Clusters[i].seq[0]; i++) jamo_srch_repl(&LC_Clusters[i],med,len); for (i=0; VO_Clusters[i].seq[0]; i++) jamo_srch_repl(&VO_Clusters[i],med,len); for (i=0; TC_Clusters[i].seq[0]; i++) jamo_srch_repl(&TC_Clusters[i],med,len); return true; } /** * search for cluster->seq in 'in' and replace it with cluster->liga in place. * returns the difference in length between before and after the replacement. */ static int jamo_srch_repl(_OTF_mslvtJamo *cluster, SS_UCS4 *in, int *len) { int i,j; bool matched=false; int mstart=0; int mlen=0; for (i=0; i<*len; i++) { matched=true; for (j=0; i+j < *len && jseq[j] ;j++) if ( in[i+j] != cluster->seq[j] ) { matched=false; break; } if ( i+j==*len && jseq[j] ) matched=false; if (matched) { mstart=i; mlen=j; break; } } if ( !matched ) return 0; in[mstart]=cluster->liga; for (i=mstart+mlen; i<*len; i++) in[i-mlen+1]=in[i]; *len=*len-mlen+1; return mlen-1; } /** * return jamo_class of shifted code points for extended Jamos * used in mslvt fonts. */ static int get_jamo_class2(SS_UCS4 uc) { switch(uc & 0xff00) { case LC_TMPPOS: return SD_JAMO_L; case VO_TMPPOS: return SD_JAMO_V; case TC_TMPPOS: return SD_JAMO_T; default: return SD_JAMO_X; } } /** * This is mslvt.otp from Jin-Hwan Cho . * Extended by Jungshik Shin to support * additional Jamo clusters not encoded in U+1100 Jamo block * as precomposed Jamos. */ /** * table of choseong(Leading consonant) - till 115f * followed by 34 additional consonant clusters for which separate glyphs * exist in O*.ttf fonts */ static SS_UCS4 tableL[130] = { 1, 2, 4, 12, 14, 20, 36, 42, 46, 62, 70, 85,100,102,108,113, 114,116,120, 5, 6, 7, 8, 13, 23, 26, 34, 35, 39, 41, 43, 44, 45, 47, 48, 49, 50, 51, 52, 54, 55, 57, 58, 60, 61, 63, 64, 65, 66, 67, 68, 69, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 89, 90, 91, 92, 93, 94, 95, 96, 97, 99,101,104,105, 106,107,109,110,111,112,117,119,122,123, 0, 0, 0, 0, 0, 0, 3, 9, 10, 11, 15, 16, 17, 18, 19, 21, 22, 24, 25, 27, 28, 29, 30, 31, 32, 33, 37, 38, 40, 53, 56, 59, 71, 88, 98,103,115,118, 121, 124 }; /** * table of jungseong(Vowel) - 0x1160 (Vowel filler) excluded. * Glyphs for 28 additional vowel clusters (not given separate * code points in U+1100 block) are available in O*ttf fonts. * Total count: 94 = 66 (in U+1100 block) + 28 (extra.) */ static SS_UCS4 tableV[94] = { 0, 4, 5, 9, 10, 14, 15, 19, 20, 21, 22, 32, 33, 42, 45, 47, 51, 53, 63, 70, 72, 1, 2, 6, 7, 11, 12, 13, 17, 18, 25, 26, 28, 29, 31, 36, 37, 39, 40, 41, 43, 44, 46, 49, 50, 54, 56, 57, 58, 59, 61, 62, 68, 69, 71, 73, 74, 79, 82, 84, 86, 87, 89, 91, 92, 93, 3, 8, 16, 23, 24, 27, 30, 34, 35, 38, 48, 52, 55, 60, 64, 65, 66, 67, 75, 76, 77, 78, 80, 81, 83, 85, 88, 90 }; /** * table of jongseong(Trailing consonant). * glyphs for 59 additional trailing consonant clusters (not given separate * code points in U+1100 blocks) are available in O*ttf fonts. * Total count: 141 = 82 (in U+1100 block) + 59 (extra.) */ static SS_UCS4 tableT[141] = { 0, 1, 5, 10, 17, 20, 21, 32, 33, 42, 46, 52, 57, 58, 59, 63, 78, 84, 91, 98,109,123,127,128,129,130,135, 3, 6, 11, 13, 15, 16, 19, 22, 25, 35, 37, 38, 39, 40, 43, 44, 48, 50, 51, 53, 54, 56, 60, 64, 67, 69, 71, 72, 73, 75, 76, 77, 80, 88, 89, 90, 92, 93, 94, 96,106,110,111,114,115,117,119,120,131,134,136,137,138, 139,140, 2, 4, 7, 8, 9, 12, 14, 18, 23, 24, 26, 27, 28, 29, 30, 31, 34, 36, 41, 45, 47, 49, 55, 61, 62, 65, 66, 68, 70, 74, 79, 81, 82, 83, 85, 86, 87, 95, 97, 99,100,101,102,103,104,105, 107,108,112,113,116,118,121,122,124,125,126,132,133 }; // Which of six glyphs to use for choseong(L) depends on // the following vowel and whether or not jongseong(T) is present // in a syllable. //shape Number of choseong(L) w.r.t. jungseong(V) without jongseong(T) static SS_UCS4 tableNLV[94] = { 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1, 0, 0, 3, 3, 3, 0, 2, 1, 2, 1, 2, 3, 3, 0, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 3, 3, 3, 2, 3, 0, 0, 0, 3, 3, 2, 0, 2, 2 }; // shape Number of choseong(L) w.r.t. jungseong(V) with jongseong(T) static SS_UCS4 tableNLVT[94] = { 1, 1, 1, 1, 1, 1, 1, 1, 5, 4, 4, 4, 5, 5, 4, 4, 4, 5, 5, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 4, 4, 4, 5, 4, 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 5, 4, 5, 5, 4, 1, 1, 4, 4, 4, 1, 5, 4, 5, 4, 5, 1, 1, 1, 1, 1, 1, 5, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4, 5, 4, 1, 1, 1, 4, 4, 5, 1, 4, 4 }; // shape Number of jongseong(T) w.r.t. jungseong(V) // Which of four glyphs to use for jongseong(T) depends on // the preceding vowel. static SS_UCS4 tableNTV[94] = { 0, 2, 0, 2, 1, 2, 1, 2, 3, 0, 2, 1, 3, 3, 1, 2, 1, 3, 3, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 0, 2, 1, 3, 1, 0, 2, 1, 2, 3, 0, 1, 2, 1, 2, 3, 1, 3, 3, 1, 2, 2, 1, 1, 1, 1, 3, 1, 3, 1, 3, 0, 1, 0, 0, 0, 2, 3, 0, 2, 1, 1, 2, 2, 3, 0, 0, 0, 3, 0, 2, 2, 2, 1, 0, 1, 2, 1, 1 }; /** * This is a JAMO specific code. It tries to find and cache * Jamo. * @param in are the input jamos * @param len is the length of input jamos * @param out is filled with JAMO glyphIndeces * @return true if JAMO conversion was successful */ bool SFontTTF::findJamoGlyphs (const SS_UCS4* in, unsigned int len, SV_GlyphIndex* out) { if (hardWire != SS_MSLVT) return false; if (len < 2) #if 0 { // deal with irregular cases of stand-alone Jamos int jclass=getJamoClass(in[0]); if (jclass == SD_JAMO_X) return false; SS_UCS4 result; switch (jclass) { case SD_JAMO_L: result = tableL[in[0]- 0x1100]*6 + 0x4e00; break; case SD_JAMO_V: result = tableV[in[0]- 0x1161]*2 + 0x5102; break; case SD_JAMO_T: result = tableT[in[0]- 0x11a8]*4 + 0x5207; break; default: return false; } SUniMap umap = charEncoder; if (!umap.isOK()) { return false; } SS_GlyphIndex gi = findGlyph(result); if (gi==0) { out->clear(); return false; } out->append (gi); return true; } #else return false; #endif /* VC++ 6.0 does not like this. */ SS_UCS4* med = new SS_UCS4[len]; CHECK_NEW (med); if ( ! mslvtXform(in,med,(int *) &len) ) { delete med; return false; } SS_UCS4 tone = med[len-1]; if (tone == 0x302e || tone == 0x302f) { if (len > 4 || len < 3) { delete med; return false; } } else { tone = 0; if (len > 3) { delete med; return false; } } bool is3 = (tone==0 && len==3) || (tone!=0 && len==4); int jclass0 = get_jamo_class2(med[0]); int jclass1 = get_jamo_class2(med[1]); int jclass2 = is3 ? get_jamo_class2(med[2]) : SD_JAMO_T; if (jclass0 != SD_JAMO_L || jclass1 != SD_JAMO_V || jclass2 != SD_JAMO_T) { delete med; return false; } SV_UCS4 result; /* For TTF tone comes last */ if (tone) { result.append (tone); } // Now that med[0..2] are identified as L,V, and T, it's safe to // shift them back to U+1100 block although their ranges overlap // each other. med[0]-=LC_OFFSET; med[1]-=VO_OFFSET; med[2]-=TC_OFFSET; if (med[1] == 0x1160) /* filler */ { if (!is3) { result.append (tableL[med[0]-0x1100]*6 + 0x4e00); } else /* len == 3 */ { result.append (tableL[med[0]-0x1100]*6 + 0x4e05); result.append (tableT[med[2]-0x11a8]*4 + 0x5207); } } else { if (!is3) { result.append (tableL[med[0]-0x1100]*6 + tableNLV[med[1]-0x1161] + 0x4e00); result.append (tableV[med[1]-0x1161]*2 + 0x5102); } else /* len == 3 */ { result.append (tableL[med[0]-0x1100]*6 + tableNLVT[med[1]-0x1161] + 0x4e00); result.append (tableV[med[1]-0x1161]*2 + 0x5103); result.append (tableT[med[2]-0x11a8] * 4 + tableNTV[med[1]-0x1161] + 0x5204); } } for (unsigned int i=0; iclear(); return false; } out->append (gi); } return true; } /** * Find the glyphs for south indian scirpts * and return them. Put the positions of characters * in mark2BaseList under key. * @param scriptcode is one of SD_LAO, SD_THAI, SD_TIBETAN * @param in are the input characters * @param len is the length of input characters * @param out is filled with glyphIndeces * @return true if conversion was successful */ bool SFontTTF::findSouthIndicGlyphs (const SString& key, unsigned int scriptcode, const char* script, const SS_UCS4* chars, unsigned int liglen, SV_GlyphIndex* out) { /* find all glyphs */ unsigned int i; SS_GlyphIndex* gv = new SS_GlyphIndex[liglen]; CHECK_NEW (gv); for (i=0; iappend (gv[0]); delete gv; return true; } /* find the positions of these glyphs */ storeMarkPositions (key, gv, liglen); /* copy glyphs */ for (i=0; iappend (gv[i]); } delete gv; return true; } /** * Store the positions of MarkToBase substitutions. * @param key is the key for this form. * such a key can be constructed this way: * SString key ((char*)&in, sizeof (SS_UCS4)); * @param gv is the glyph array * @param liglen is the length of the array */ bool SFontTTF::storeMarkPositions (const SString& key, const SS_GlyphIndex* gv, unsigned int liglen) { SV_INT positions; bool haspos = false; int cxy = 0; int ix = 0; int iy = 0; int currentw = 0; positions.append (currentw); /* x = 0; y = 0 */ unsigned int i; SS_GlyphIndex theBase = gv[0]; for (i=1; i 0xfffe) { /* bad luck - it usually wont happen unless the cluster is really long */ currentw = 0xfffe; ix = 0xfffe; } #if DEBUG_POSITIONS fprintf (stderr, "PUT MarkToBase[%u.%u]=%d,%d.\n", gv[i-1], gv[i], ix, iy); #endif cxy = (iy << 16) & 0xffff0000; cxy = cxy | (ix & 0xffff); positions.append (cxy); } /* adjust mark to marks */ theBase = gv[0]; currentw = 0; for (i=1; i%u]=%d,%d\n", gv[i-1], gv[i], ix, iy); #endif int mxy = positions[positions.size()-1]; haspos = true; int pix = mxy & 0xffff; if (pix > 0x7fff) pix -= 0x10000 ; int piy = (mxy >> 16) & 0xffff; if (piy > 0x7fff) piy -= 0x10000; /* * Modify mark position. * TODO: Do we need to shift everything that comes after mark? */ ix = pix + ix; iy = piy + iy; /* store positions in compressed format */ if (ix > 0xfffe) { /* bad luck - it usually wont happen unless the cluster is really long */ currentw = 0xfffe; ix = 0xfffe; } cxy = (iy << 16) & 0xffff0000; cxy = cxy | (ix & 0xffff); positions.replace (i, cxy); haspos = true; } } /* save positions */ if (haspos) { mark2BaseList.put (key, positions); #if DEBUG_POSITIONS for (unsigned int k = 0; k 0x7fff) xdiff -= 0x10000 ; int ydiff = (xydiff >> 16) & 0xffff; if (ydiff > 0x7fff) ydiff -= 0x10000; fprintf (stderr, "PutPosition[%u]=%d,%d\n", k, xdiff, ydiff); } #endif } /* fallback to kerning */ /* width will be found */ char2Width.put (key, currentw); return haspos; } /** * @param baseGl is the base glyph * @param markGlyph is the mark that needs to get positioned. * @param ix holds the x offset for the mark. * @param iy holds the y offset for the mark. */ void SFontTTF::getOTFMarkToBase (SS_GlyphIndex baseGl, SS_GlyphIndex markGlyph, int* ix, int* iy) { SS_GlyphIndex gv[2]; gv[0] = baseGl; gv[1] = markGlyph; /* Relative to base */ int x[2]; x[1] = 0; int y[2]; y[1] = 0; getPositions (4, gv, 2, 0, 0, x, y); /* 4 is mark-to-base */ *ix = x[1]; *iy = y[1]; return; } /** * @param m0 is the mark glyph * @param m1 is the mark that needs to get positioned. * @param ix holds the x offset for the mark. * @param iy holds the y offset for the mark. */ void SFontTTF::getOTFMarkToMark (SS_GlyphIndex m0, SS_GlyphIndex m1, int* ix, int* iy) { SS_GlyphIndex gv[2]; gv[0] = m0; gv[1] = m1; /* Relative to mark */ int x[2]; x[1] = 0; int y[2]; y[1] = 0; getPositions (6, gv, 2, 0, 0, x, y); /* 4 is mark-to-mark */ *ix = x[1]; *iy = y[1]; return; } /** * Get the positions * @param basewidth is used only if advanced is set. */ bool SFontTTF::getPositions(int feature, const SS_GlyphIndex* gv, unsigned int gvsize, const char* _featurelist, const char* _script, int* xpos, int* ypos) { GPOS_HEAD* gposh = (GPOS_HEAD*) tables[SS_TB_GPOS]; if (gposh == 0 || ntohl (gposh->version) != 0x00010000) { return false; } /* filtering features */ bool nonfeature = false; SBinHashtable features; if (_featurelist != 0 && _featurelist[0] != 0 && _featurelist[1] != 0) { SString f = SString(_featurelist); if (f[0] == '!') { nonfeature = true; f.remove (0); } SStringVector v(f); for (unsigned int i=0; ifeatureList); OTF_FeatureList* featureList = (OTF_FeatureList*) ((SD_BYTE*)gposh + ofeat); SD_USHORT fcount = ntohs (featureList->count); int olookup = ntohs(gposh->lookupList); OTF_LookupList* lookupList = (OTF_LookupList*) ((SD_BYTE*)gposh + olookup); //SD_USHORT lcount = ntohs (lookupList->count); if (_script == 0) { for (unsigned int i=0; i< fcount; i++) { SString tag (featureList->record[i].tag, 4); debugTag = tag; SD_USHORT loffset = ntohs (featureList->record[i].offset); /* got or not omitted */ if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); if (processGPOSFeature(name, feat, feature, lookupList, gv, gvsize, xpos, ypos)) return true; } return false; } unsigned int next = 0; /* iterator - just in case we have same lang twice */ SString script (_script); OTF_LangSys* lsys = 0; /* HACK! getNextOTFLanguageSystem is using GSUB_HEAD* scriptList only this is why we can cast our GPOS* to GSUB* */ while ((lsys = getNextOTFLanguageSystem (name, (GSUB_HEAD*) gposh, script, &next))!=0) { SD_USHORT fcount = ntohs (lsys->featureCount); /* index lookupList through lsys->featureIndex */ SD_USHORT lorder = ntohs (lsys->lookupOrder); if (lorder != 0) { static bool warned = false; if (!warned) { #if PRINT_UNSUPPORTED fprintf (stderr, "LanguageSystem lookup order %u not supported", (unsigned int) lorder); fprintf (stderr, " in %*.*s.\n", SSARGS(name)); #endif warned = true; } continue; } for (unsigned int i=0; i< fcount; i++) { unsigned int index = ntohs (lsys->featureIndex[i]) ; SString tag (featureList->record[index].tag, 4); if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } SD_USHORT loffset = ntohs (featureList->record[index].offset); /* tags will have mystic ligature names and stuff like that - don't check */ OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); if (processGPOSFeature(name, feat, feature, lookupList, gv, gvsize, xpos, ypos)) return true; } } return false; } /** * @param name is the fontname - used in error printouts. * @param lookuplist is the list of lookups. * @param substtype is 4 for MarkToBase substituion. * @param gv is the glyphindeces for positions * @param gvsize is the size of gv * @param xpos is the x position array same size as gv * @param ypos is the y position array same size as gv * @return true if positions were gained , and fill in * xpos and ypos in that case. */ static bool processGPOSFeature (const SString& name, OTF_Feature* feat, int substtype, OTF_LookupList* lookupList, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { /* faster */ if (gvsize<2) return false; SD_USHORT nfcount = ntohs (feat->count); for (unsigned int j=0; jrecord[j]); SD_USHORT lrec = ntohs (lookupList->record[rec]); OTF_Lookup * ltable = (OTF_Lookup*)((char*)lookupList + lrec); SD_USHORT type = ntohs (ltable->type); if (type != substtype) { if (type != 2 && type != 4 && type != 6 && type != 8) { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u.\n", SSARGS(name), type); #endif } continue; } bool ret = false; switch (type) { case 2: ret = doPairAdjustment (name, ltable, gvarray, gvsize, xpos, ypos); break; case 4: ret = doMarkToBase (name, ltable, gvarray, gvsize, xpos, ypos); break; case 6: ret = doMarkToMark (name, ltable, gvarray, gvsize, xpos, ypos); break; case 8: ret = doChainedPos (name, lookupList, ltable, gvarray, gvsize, xpos, ypos); } if (ret) return ret; } return false; } static bool doChainedPos (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_ChainedAdjustmentFormat1 *lformat1 = (OTF_ChainedAdjustmentFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat==2) { // Same as chain context substitution - reuse the code. // Ugly, but works. OTF_ChainContextSubstFormat2 *f2 = (OTF_ChainContextSubstFormat2*) ( (char*)ltable + offset); SD_USHORT coffset = ntohs (f2->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)f2 + coffset); SD_USHORT bcoffset = ntohs (f2->backtrackClassDef); SD_USHORT icoffset = ntohs (f2->inputClassDef); SD_USHORT lcoffset = ntohs (f2->lookaheadClassDef); SD_USHORT ccount = ntohs (f2->chainSubClassSetCnt); for (unsigned int i=0; ichainSubClassSet[i]); if (coffset == 0) continue; OTF_ChainSubClassSet * sset = (OTF_ChainSubClassSet*) ((char*) f2 + coffset); SD_USHORT rcount = ntohs (sset->chainSubClassRuleCnt); for (unsigned int j=0; jchainSubClassRule[j]); OTF_ChainContextSubstFormat2_Backtrack *bformat = (OTF_ChainContextSubstFormat2_Backtrack*) ((char*) sset + roffset); SD_USHORT bcount = ntohs(bformat->backtrackGlyphCount); OTF_ChainContextSubstFormat2_Input * iformat = (OTF_ChainContextSubstFormat2_Input*) &bformat->coverage[bcount]; SD_USHORT icount = ntohs(iformat->inputGlyphCount); if (icount == 0) { continue; } OTF_ChainContextSubstFormat2_Lookahead * lformat = (OTF_ChainContextSubstFormat2_Lookahead*) &iformat->coverage[icount-1]; SD_USHORT lcount = ntohs(lformat->lookaheadGlyphCount); #if USE_UNTESTED_CODE OTF_ChainContextSubstFormat2_Subst * sformat = (OTF_ChainContextSubstFormat2_Subst*) &lformat->coverage[lcount]; SD_USHORT scount = ntohs(sformat->substGlyphCount); #endif if ((unsigned int)bcount+icount+lcount>(unsigned int) liglen) { continue; } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- bool ok = true; unsigned int index = 0; /* Backtrack */ for (unsigned int bi=0; bicoverage[bcount-bi-1]); if (bcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + bcoffset, chars[index++]); if (clazz==0xffff || clazz != backtrack) { ok = false; break; } } if (!ok) continue; SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex == 0xffff) { continue; } /* Input */ for (unsigned int ii=1; iicoverage[ii-1]); if (icoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + icoffset, chars[index++]); if (clazz==0xffff || clazz != input) { ok = false; break; } } if (!ok) continue; /* Lookahead */ for (unsigned int li=0; licoverage[li]); if (lcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + lcoffset, chars[index++]); if (clazz==0xffff || clazz != lookahead) { ok = false; break; } } if (!ok) continue; #if PRINT_UNSUPPORTED fprintf (stderr, "UNDEBUGGED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 2, cformat); #endif #if USE_UNTESTED_CODE /* Substitute from outchar[om..scount] - assume scount < icount */ unsigned int inlength = icount; bool ret = false; for (unsigned int m=0; m<(unsigned int)scount; m++) { SubstLookupRecord* sr = (SubstLookupRecord*) &sformat->substLookupRecord[m]; SD_USHORT sqi = ntohs (sr->sequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); /* * Perform substitution loi at outchar[om+sqi]. * If is is just a single glyph substitution * replace outchar[om+sqi]. * If n glyphs are made into 1 then * reduce inlen with n-1, and move data. */ SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int at = (unsigned int) sqi; if (at < inlength && at > 0) { unsigned int lsize = 2; int savex = xpos[at-1]; int savey = ypos[at-1]; switch (mtype) { case 2: ret = doPairAdjustment (name, mltable, &chars[at-1], lsize, &xpos[at-1], &ypos[at-1]) || ret; break; case 4: ret = doMarkToBase (name, mltable, &chars[at-1], lsize, &xpos[at-1], &ypos[at-1]) || ret; break; case 6: ret = doMarkToMark (name, mltable, &chars[at-1], lsize, &xpos[at-1], &ypos[at-1]) || ret; } xpos[at-1] = savex; ypos[at-1] = savey; } } return ret; #else /* USE_UNTESTED_CODE */ return false; #endif } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 8, cformat); #endif } } return false; } /*! * Do a MarkToBase substitution. */ static bool doPairAdjustment (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_PairAdjustmentFormat1 *lformat1 = (OTF_PairAdjustmentFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat==2) { OTF_PairAdjustmentFormat2 *lformat2 = (OTF_PairAdjustmentFormat2*) ((char*)ltable + offset); /* Try to get the mark coverage */ SD_USHORT mcoffset = ntohs (lformat2->coverage); OTF_CoverageFormat* mCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat2 + mcoffset); SD_USHORT coverageIndex = getCoverageIndex (mCoverageFormat, gvarray[0]); // No coverage. //SD_USHORT vf1 = ntohs (lformat2->valueFormat1); //SD_USHORT vf2 = ntohs (lformat2->valueFormat2); if (coverageIndex==0xffff) { continue; } #if PRINT_UNDEBUGGED fprintf (stderr, "UNDEBUGGED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 2, cformat); #endif } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 2, cformat); #endif } } return false; } /*! * Do a MarkToBase substitution. */ static bool doMarkToBase (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_MarkBasePosFormat1 *lformat1 = (OTF_MarkBasePosFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat != 1) { continue; } /* Try to get the mark coverage */ SD_USHORT mcoffset = ntohs (lformat1->markCoverage); OTF_CoverageFormat* mCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + mcoffset); SD_USHORT markCoverageIndex = getCoverageIndex (mCoverageFormat, gvarray[1]); SD_USHORT markOffset = ntohs (lformat1->markArray); OTF_MarkArray* markArray = (OTF_MarkArray*)((char*)lformat1 + markOffset); SD_USHORT markCount = ntohs (markArray->markCount); if (markCoverageIndex >= markCount) { continue; /* no coverage */ } /* Try to get the base coverage */ SD_USHORT bcoffset = ntohs (lformat1->baseCoverage); OTF_CoverageFormat* bCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + bcoffset); SD_USHORT baseCoverageIndex = getCoverageIndex (bCoverageFormat, gvarray[0]); SD_USHORT baseOffset = ntohs (lformat1->baseArray); OTF_BaseArray* baseArray = (OTF_BaseArray*)((char*)lformat1 + baseOffset); SD_USHORT baseCount = ntohs (baseArray->baseCount); if (baseCoverageIndex >= baseCount) { continue; } /* get the class count */ SD_USHORT ccount = ntohs (lformat1->classCount); /* figure out what class the mark wants */ OTF_MarkRecord* markRecord = (OTF_MarkRecord*) &markArray->markRecord[markCoverageIndex]; SD_USHORT markClass = htons (markRecord->markClass); //SD_USHORT markClass = htons (markRecord->markClass); if (markClass >= ccount) { continue; } /* load this class */ OTF_BaseRecord* baseRecord = (OTF_BaseRecord*) &baseArray->baseRecord[baseCoverageIndex*ccount]; /* clssize */ /* Achors are offset from markArray, baseArray */ SD_USHORT boffset =(SD_USHORT)htons(baseRecord->baseAnchor[markClass]); OTF_Anchor* banchor = (OTF_Anchor*) ((char*) baseArray + boffset); SD_USHORT moffset = (SD_USHORT) htons(markRecord->markAnchor); OTF_Anchor* manchor = (OTF_Anchor*) ((char*) markArray + moffset); unsigned short mformat = htons (manchor->format); unsigned short bformat = htons (banchor->format); // We will ignore device table for 2, 3. if (mformat>3 || bformat>3) { #if PRINT_UNDEBUGGED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u base=%u anchor=%u.\n", SSARGS(name), 4, cformat, bformat, mformat); #endif continue; } short bx = (short) htons (banchor->x); short by = (short) htons (banchor->y); short mx = (short) htons (manchor->x); short my = (short) htons (manchor->y); /* Unnecessary to calculate hot-spot in a more complicated way */ mx = bx - mx; my = by - my; xpos[0] = bx; ypos[0] = by; /* return delta in xpos[1] and ypos[1] */ xpos[1] = mx; ypos[1] = my; return true; } return false; } /*! * Do a MarkToMark substitution. */ static bool doMarkToMark (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_MarkMarkPosFormat1 *lformat1 = (OTF_MarkMarkPosFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat != 1) { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 6, cformat); #endif continue; } /* Try to get the mark coverage */ SD_USHORT mcoffset = ntohs (lformat1->mark1Coverage); OTF_CoverageFormat* mCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + mcoffset); SD_USHORT markCoverageIndex = getCoverageIndex (mCoverageFormat, gvarray[1]); SD_USHORT markOffset = ntohs (lformat1->mark1Array); OTF_MarkArray* markArray = (OTF_MarkArray*)((char*)lformat1 + markOffset); SD_USHORT markCount = ntohs (markArray->markCount); if (markCoverageIndex >= markCount) { continue; } /* Try to get the mark2 coverage */ SD_USHORT bcoffset = ntohs (lformat1->mark2Coverage); OTF_CoverageFormat* bCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + bcoffset); SD_USHORT baseCoverageIndex = getCoverageIndex (bCoverageFormat, gvarray[0]); SD_USHORT baseOffset = ntohs (lformat1->mark2Array); OTF_BaseArray* baseArray = (OTF_BaseArray*)((char*)lformat1 + baseOffset); SD_USHORT baseCount = ntohs (baseArray->baseCount); if (baseCoverageIndex >= baseCount) { continue; } /* get the class count */ SD_USHORT ccount = ntohs (lformat1->classCount); /* figure out what class the mark wants */ OTF_MarkRecord* markRecord = (OTF_MarkRecord*) &markArray->markRecord[markCoverageIndex]; SD_USHORT markClass = htons (markRecord->markClass); if (markClass >= ccount) { continue; } /* load this class */ OTF_BaseRecord* baseRecord = (OTF_BaseRecord*) &baseArray->baseRecord[baseCoverageIndex*ccount]; /* clssize */ /* Achors are offset from markArray, baseArray */ SD_USHORT boffset =(SD_USHORT)htons(baseRecord->baseAnchor[markClass]); OTF_Anchor* banchor = (OTF_Anchor*) ((char*) baseArray + boffset); SD_USHORT moffset = (SD_USHORT) htons(markRecord->markAnchor); OTF_Anchor* manchor = (OTF_Anchor*) ((char*) markArray + moffset); unsigned short mformat = htons (manchor->format); unsigned short bformat = htons (banchor->format); // We will ignore device table for 2, 3. if (mformat>2 || bformat>3) { #if PRINT_UNDEBUGGED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u base=%u anchor=%u.\n", SSARGS(name), 4, cformat, bformat, mformat); #endif continue; } short bx = (short) htons (banchor->x); short by = (short) htons (banchor->y); short mx = (short) htons (manchor->x); short my = (short) htons (manchor->y); /* bool isrl = ((flag & 0x0001)!=0); fprintf (stderr, "Found b=%d,%d m=%d,%d %d rl=%d.\n", bx, by, mx, my, basewidth, isrl); */ /* Unnecessary to calculate hot-spot in a more complicated way */ mx = bx - mx; my = by - my; xpos[0] = bx; ypos[0] = by; /* return delta in xpos[1] and ypos[1] */ xpos[1] = mx; ypos[1] = my; return true; } return false; } /*! * \brief Find the glyph index for the character. * \param in is the unicode-encoded character. * \return the glyph index or null. */ SS_GlyphIndex SFontTTF::gindex (SS_UCS4 in) { return findGlyph (in, false); } /*! * \brief Get the width of the unscaled glyph. * \param in is the glyph index. * \return the width of the glyph. * If width is negative or 0, then this mark * should be aligned to the end of the previous * character: * <-------base-------> * x-------x----------x * <--length--> */ int SFontTTF::gwidth (SS_GlyphIndex in) { return getWidth(in); } //---------------------------------------------------------------------------- // SFontLookup Interface //---------------------------------------------------------------------------- /*! * \brief Perform a glyph/ligature substitution. * \param feature is a 4-character OTF-feature, like "gsub" * \param in is the input glyph index array. * \param in_size is the size of input glyph index array. * \param start is the starting point of the substitution * \param out is the output will be used to put the Glyphs in. * At leas the input glyph size should be allocated. * \param out_size will contain how many glyphs were placed in out * array. * \param script is the code of the script, like "deva" * \param is_contextual will be true after a successful * chaining contextual substitution. * \return how many glyphs should dissappear from the input * array between start...start + retvle -1. */ unsigned int SFontTTF::gsub (const char* script, const char* feature, const SS_GlyphIndex* in, unsigned int in_size, unsigned int* start, SS_GlyphIndex *out, unsigned int* out_size, bool* is_contextual) { *is_contextual = false; unsigned int liglen; *start = 0; *out_size = 0; // 1: Glyph Substitution. liglen = getOTFLigature (script, feature, in, in_size, out, 1); if (liglen == 1) { *start = 0; *out_size=1; return 1; } // 4: Ligature Substitution. liglen = getOTFLigature (script, feature, in, in_size, out, 4); if (liglen >= 2) { *start = 0; *out_size = 1; return liglen; } // 5: Contextual Substitution liglen = getOTFLigature (script, feature, in, in_size, out, 5); if (liglen == 0) { // 6: Chaining Contextual Substitution liglen = getOTFLigature (script, feature, in, in_size, out, 6); } // I tested this thing when the sizes were the same... if (liglen > 0) { *is_contextual = true; // find out start end and position... unsigned int s = 0; unsigned int eo = liglen; unsigned int ei = in_size; while (s < liglen && out[s] == in[s]) s++; while (eo > 0 && ei > 0 && out[eo-1] == in[ei-1]) { ei--; eo--; } /* nothing has changed! */ if (s>=eo || s>=ei) return 0; /* cut out the s..eo window move stuff down */ for (unsigned int i=0; iversion); SD_USHORT nTables = htons (kh->nTables); fprintf (stderr, "XXX kerning: version=%u tables=%u\n", version, nTables); char* pt = ((char*)kh + sizeof(KERN_HEAD_MS)); for (unsigned int i=0; iversion); SD_USHORT slength = htons (st->length); SD_USHORT scoverage = htons (st->coverage); fprintf (stderr, "XXX kerning: st[%u] sversion=%u slength=%u scoverage=%u\n", i, sversion, slength, scoverage); /* horizontal, type 0 */ if ((scoverage & 1) == 1 && (coverage & 0xf0) == 0) { KERN_HORIZONTAL_MS* ht = (KERN_HORIZONTAL_MS*) ((char*)pt + sizeof (KERN_SUBTABLE_MS)); SD_USHORT nPairs = htons (ht->nPairs); SD_USHORT searchRange = htons (ht->searchRange); SD_USHORT entrySelector = htons (ht->entrySelector); SD_USHORT rangeShift = htons (ht->rangeShift); fprintf (stderr, " nPairs=%u searchRange=%u entrySelector=%u rangeShift=%u\n", nPairs, searchRange, entrySelector, rangeShift); KERN_PAIRS_MS* pair = (KERN_PAIRS_MS*) ((char*)ht+sizeof (KERN_HORIZONTAL_MS)); for (unsigned int j=0; jleft); SD_USHORT right = htons (pair->right); SD_USHORT value = htons (pair->right); fprintf (stderr, " left=%04X right=%04X value=%u\n", left, right, value); if (in[0] == left && in[1] == right) { *x = value; return true; } pair = (KERN_PAIRS_MS*) ((char*)pair + sizeof (KERN_PAIRS_MS)); } } pt = pt + slength; } } } #endif return false; } /*! * \return the glyph class: * \li 0 - Unknown * \li 1 - Base Glyph (single character spacing glyph) * \li 2 - Base Glyph (single character spacing glyph) * \li 3 - Mark Glyph (non-spacing combining glyph) * \li 4 - Component Glyph (part of a single character, spacing glyph) */ unsigned int SFontTTF::getGlyphClass(SS_GlyphIndex in) { GDEF_HEAD* gdefh = (GDEF_HEAD*) tables[SS_TB_GDEF]; if (gdefh == 0) { return 0; } if (ntohl (gdefh->version) != 0x00010000) { return 0; } SD_USHORT offset = htons (gdefh->glyphClassDef); if (offset == 0) { return 0; } unsigned int ret = glyphClass ((char*) gdefh + offset, in); if (ret == 0xffff) { return 0; } return ret; } /*! * \brief try to attach mark to base. * \param where takes the following values: * 1 - below. * \return true on success. * This code is undebugged. */ bool SFontTTF::attach (SS_GlyphIndex base, SS_GlyphIndex mark, int where, int* x, int* y) { // Below. if (where == 1) { int bxmin, bymin, bxmax, bymax; if (!getBBOX (base, &bxmin, &bymin, &bxmax, &bymax)) { return false; } int mxmin, mymin, mxmax, mymax; if (!getBBOX (mark, &mxmin, &mymin, &mxmax, &mymax)) { return false; } // Dont do it if it overlaps if (mymax >= bymin) return false; // Move it along x. int mb = (bxmin + bxmax) / 2; int mm = (mxmin + mxmax) / 2; *x = (mb - mm); *y = 0; return true; } return false; // This untested piece was an unsuccessful attempt on the same // thing. #if 0 GDEF_HEAD* gdefh = (GDEF_HEAD*) tables[SS_TB_GDEF]; if (gdefh == 0) { return 0; } if (ntohl (gdefh->version) != 0x00010000) { return 0; } SD_USHORT offset = htons (gdefh->attachList); if (offset == 0) { return 0; } OTF_AttachList* list = (OTF_AttachList*) ((char*) gdefh + offset); SD_USHORT gc = htons (list->glyphCount); SD_USHORT coff = htons (list->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*) list + coff); SD_USHORT bc = getCoverageIndex (cf, base); if (bc >= gc) return false; SD_USHORT mc = getCoverageIndex (cf, mark); if (mc >= gc) return false; SD_USHORT bpoff = htons(list->attachPoint[bc]); OTF_AttachPoint* bp = (OTF_AttachPoint*) ((char*) list + bpoff); SD_USHORT bcount = ntohs (bp->pointCount); SD_USHORT mpoff = htons(list->attachPoint[mc]); OTF_AttachPoint* mp = (OTF_AttachPoint*) ((char*) list + mpoff); SD_USHORT mcount = ntohs (mp->pointCount); SH_Vector bpx; SH_Vector bpy; if (!getContours (base, &bpx, &bpy) || bpx.size()==0) { return false; } SH_Vector mpx; SH_Vector mpy; if (!getContours (mark, &mpx, &mpy) || bpx.size()==0) { return false; } // TODO: attach base if (where == 1) { unsigned int i; // fprintf (stderr, "XXX Base: %04X count=%u\n", base, bcount); for (i=0; ipointIndex[i]); if (mpx.size() <= index) return false; // fprintf (stderr, "XXX base[%u] = %d,%d\n", i, // bpx[index], bpy[index]); } // fprintf (stderr, "XXX Mark: %04X count=%u\n", mark, mcount); for (i=0; ipointIndex[i]); if (mpx.size() <= index) return false; // fprintf (stderr, "XXX mark[%u] = %d,%d\n", i, // mpx[index], mpy[index]); } } return false; #endif } /*! * \brief Get the contour points. */ bool SFontTTF::getContours (SS_GlyphIndex glyphno, SH_Vector * xc, SH_Vector *yc ) { SD_BYTE* gstart = (SD_BYTE *) tables["glyf"]; if (gstart == 0) return false; TTF_GLYF* gtable; int len =0; if (longOffsets) { SD_ULONG* lloca = (SD_ULONG *) tables["loca"]; if (lloca == 0) return false; unsigned int offs1 = ntohl (lloca[glyphno]); unsigned int offs2 = ntohl (lloca[glyphno+1]); gtable = (TTF_GLYF *) ((char*)gstart + offs1); len = offs2-offs1; } else { SD_USHORT* sloca = (SD_USHORT *) tables["loca"]; if (sloca == 0) return false; gtable = (TTF_GLYF *) (gstart + (ntohs (sloca[glyphno]) << 1)); len = (ntohs (sloca[glyphno+1]) - ntohs (sloca[glyphno])) << 1; } if (len <= 0) { return false; } TTF_GLYF* kludge = 0; if ((((unsigned long) gtable) & 1) != 0) { kludge = new TTF_GLYF[len]; CHECK_NEW (kludge); memcpy (kludge, gtable, len * sizeof (TTF_GLYF)); gtable = kludge; } int ncontours = (int) ((short)ntohs (gtable->numberOfContours)); if (ncontours < 0) { if (kludge) delete kludge; return false; } SD_USHORT* contour_end_pt = (SD_USHORT *) ((char *)gtable + sizeof(TTF_GLYF)); int last_point = (int) ntohs (contour_end_pt[ncontours-1]); // length of instructions. int n_inst = (int) ntohs (contour_end_pt[ncontours]); // flags SD_BYTE* ptr = ((SD_BYTE *)contour_end_pt) + (ncontours << 1) + n_inst + 2; int j = 0; int k = 0; SBinVector flags; while (k <= last_point) { flags.append (ptr[j]); if (ptr[j] & REPEAT) { for (int k1=0; k1 < ptr[j+1]; k1++) { k++; flags.append (ptr[j]); } j++; } j++; k++; } SH_Vector xrel; SH_Vector xcoord; for (k=0; k <= last_point; k++) { /* Process xrel */ if (flags[k] & XSD_SHORT) { if (flags[k] & XSAME) { xrel.append (ptr[j]); } else { xrel.append (-ptr[j]); } j++; } else if (flags[k] & XSAME) { xrel.append (0); } else { xrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } /* Process x coordinate */ if (k==0) { xcoord.append (xrel[k]); } else { xcoord.append (xrel[k] + xcoord[k-1]); } } SH_Vector yrel; SH_Vector ycoord; /* one more run fore yrel and ycoord */ for (k=0; k <= last_point; k++) { if (flags[k] & YSD_SHORT) { if (flags[k] & YSAME) { yrel.append (ptr[j]); } else { yrel.append (- ptr[j]); } j++; } else if (flags[k] & YSAME) { yrel.append (0); } else { yrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } if (k==0) { ycoord.append (yrel[k]); } else { ycoord.append (yrel[k] + ycoord[k-1]); } } if (kludge) delete kludge; *xc = xcoord; *yc = ycoord; return true; } ./swindow/SPrinter.cpp0000644000175000017500000001435710726163474015025 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SPrinter.h" #include "swindow/SPostscript.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is a postscript renderer for yudit. */ SPrinter::SPrinter (const SWriter& w, SType t, SMedia m, SOrientation o) { delegate = 0; type = t; switch (type) { case POSTSCRIPT: delegate = new SPostscript (w, (SPostscript::SMedia) m, (SPostscript::SOrientation) o); case PCL: case WIN32: break; } } SPrinter::SPrinter (const SPrinter& printer) { delegate = 0; type = printer.type; switch (type) { case POSTSCRIPT: delegate = new SPostscript (*((SPostscript*) (printer.delegate))); break; case PCL: case WIN32: break; } } SPrinter::~SPrinter() { if (delegate) delete delegate; } unsigned int SPrinter::getWidth() const { switch (type) { case POSTSCRIPT: return ((SPostscript*) delegate)->getWidth(); case PCL: case WIN32: break; } return 0; } unsigned int SPrinter::getHeight() const { switch (type) { case POSTSCRIPT: return ((SPostscript*) delegate)->getHeight(); case PCL: case WIN32: break; } return 0; } /** * return the margin stripped X corner. */ int SPrinter::getX() const { switch (type) { case POSTSCRIPT: return ((SPostscript*) delegate)->getX(); case PCL: case WIN32: break; } return 0; } /** * return the margin stripped Y corner. */ int SPrinter::getY() const { switch (type) { case POSTSCRIPT: return ((SPostscript*) delegate)->getY(); case PCL: case WIN32: break; } return 0; } /** * Print out the postscript prolog * This will by default turn on cacheing. */ bool SPrinter::open (bool background) { if (delegate) switch (type) { case POSTSCRIPT: return ((SPostscript*) delegate)->open(background); case PCL: case WIN32: break; } return false; } void SPrinter::newPage() { if (delegate) switch (type) { case POSTSCRIPT: ((SPostscript*) delegate)->newPage(); break; case PCL: case WIN32: break; } return; } bool SPrinter::cacheOn (bool on) { if (delegate) switch (type) { case POSTSCRIPT: return ((SPostscript*) delegate)->cacheOn (on); case PCL: case WIN32: break; } return false; } /** * Print out the ending lines. */ bool SPrinter::close () { if (delegate) switch (type) { case POSTSCRIPT: return ((SPostscript*) delegate)->close(); break; case PCL: case WIN32: break; } return false; } /* * The Printing instructions follow: */ bool SPrinter::newpath (double x, double y, const SString& id) { if (delegate) return delegate->newpath (x, y, id); return false; } void SPrinter::stroke (const SPen& pen) { if (delegate) delegate->stroke (pen); } void SPrinter::fill (const SPen& pen) { if (delegate) delegate->fill (pen); } void SPrinter::moveto (double _x, double _y) { if (delegate) delegate->moveto (_x, _y); } void SPrinter::lineto (double _x, double _y) { if (delegate) delegate->lineto (_x, _y); } void SPrinter::curveto (double _x0, double _y0, double _x1, double _y1, double _x2, double _y2) { if (delegate) delegate->curveto (_x0, _y0, _x1, _y1, _x2, _y2); } void SPrinter::closepath() { if (delegate) delegate->closepath (); } void SPrinter::pushmatrix() { if (delegate) delegate->pushmatrix (); } void SPrinter::popmatrix() { if (delegate) delegate->popmatrix (); } void SPrinter::scale (double x, double y) { if (delegate) switch (type) { case POSTSCRIPT: ((SPostscript*)delegate)->scale (x, y); break; case PCL: case WIN32: break; } } void SPrinter::translate (double x, double y) { if (delegate) delegate->translate (x, y); } void SPrinter::rotate (double angle) { if (delegate) delegate->rotate (angle); } void SPrinter::bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len) { if (delegate) delegate->bitfont (pen, x, y, native, data, len); } /** * Fill a solid rectangle * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to fill * @param height is the height of the region to fill */ void SPrinter::bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height) { } /** * Draw a solid line. * @param x is the starting x point * @param y is the starting y point * @param x is the ending non-exclusive x point * @param y is the ending non-exclusive y point */ void SPrinter::bitline (const SColor& fg, int x, int y, int tox, int toy) { } /** * Draw a solid line. * @param x is the x point * @param y is the y point */ void SPrinter::bitpoint (const SColor& fg, int x, int y) { if (delegate) delegate->bitpoint (SColor("black"), x, y); } void SPrinter::bitpoints (const SColor& fg, const int* x, const int* y, unsigned int _size) { if (delegate) delegate->bitpoints (SColor("black"), x, y, _size); } void SPrinter::fill () { if (delegate) delegate->fill (SPen(SColor("black"))); } void SPrinter::stroke () { if (delegate) delegate->stroke (SPen(SColor("black"))); } SString SPrinter::getCreationDate () const { if (delegate) switch (type) { case POSTSCRIPT: return ((SPostscript*)delegate)->getCreationDate (); case PCL: case WIN32: break; } return SString(); } /** * return true if printed output used native fonts. */ bool SPrinter::hasNative() const { if (delegate) switch (type) { case POSTSCRIPT: return ((SPostscript*)delegate)->hasNative (); case PCL: case WIN32: break; } return false; } ./swindow/SSyntaxColors.h0000644000175000017500000000222510725015424015474 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SSyntaxColors_h #define SyntaxColors_h #include "swindow/SColor.h" #include "stoolkit/SString.h" #include "stoolkit/syntax/SSyntax.h" class SSyntaxColors { public: SSyntaxColors(void); SSyntaxColors(const SSyntaxColors& c); SSyntaxColors& operator=(const SSyntaxColors& v); virtual ~SSyntaxColors (); SColor colors [(unsigned int) SSyntax::SD_MAX]; }; #endif /* SSyntaxColors_h _h*/ ./swindow/SCanvas.h0000644000175000017500000000473610434025606014250 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SCanvas_h #define SCanvas_h #include "swindow/SPen.h" #include "swindow/SImage.h" #include "stoolkit/SMatrix.h" #include "stoolkit/STypes.h" #include "stoolkit/SUniqueID.h" #include "stoolkit/SString.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit package */ class SCanvas { public: SCanvas (void); virtual ~SCanvas (); virtual bool cacheOn (bool on=true); virtual bool newpath (double x, double y, const SString& id); virtual void fill (const SPen& pen); virtual void stroke(const SPen& pen); virtual void moveto (double x, double y); virtual void lineto (double x, double y); virtual void curveto (double x0, double y0, double x1, double y1, double x3, double y3); virtual void closepath(); virtual void pushmatrix(); virtual void popmatrix(); virtual void scale (double x, double y); virtual void translate (double x, double y); virtual void rotate (double angle); virtual SS_Matrix2D getCurrentMatrix() const; virtual void putImage (int x, int y, const SImage& image); virtual void setBackground(const SColor &color); /* * the following 3 routines might not be implemented for a canvas, * without a pixel device */ virtual void bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len); virtual void bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height); virtual void bitline (const SColor& fg, int x, int y, int tox, int toy); virtual void bitpoint (const SColor& fg, int x, int y); virtual void bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size); protected: bool isCacheOn; }; #endif /* SCanvas_h */ ./swindow/SAccelerator.h0000644000175000017500000000323410434025606015251 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SAccelerator_h #define SAccelerator_h #include "stoolkit/SString.h" #include "stoolkit/SObject.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SAccelerator : public SObject { public: SAccelerator (void); SAccelerator (const SString& str); SAccelerator (int key, bool ctrl=true, bool shift=false, bool meta=false); virtual ~SAccelerator (); SAccelerator(const SAccelerator& a); SAccelerator operator = (const SAccelerator& a); const SString& toString() const; SObject* clone() const; SString string; int key; bool ctrl; bool shift; bool meta; }; class SAcceleratorListener { public: SAcceleratorListener(); virtual ~SAcceleratorListener(); virtual void acceleratorPressed (const SAccelerator& a)=0; virtual void acceleratorReleased (const SAccelerator& a)=0; }; #endif /* SAccelerator_h */ ./swindow/SUniFont.h0000644000175000017500000000427410434025606014414 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SUniFont_h #define SUniFont_h #include "stoolkit/SIO.h" #include "stoolkit/SString.h" #include "stoolkit/STypes.h" #include "stoolkit/SBinHashtable.h" #include "swindow/SCanvas.h" #include "swindow/SColor.h" /* We stuff with and pos info int and int: theoretical limit: 262,144 MBytes fonts size */ #define SD_POS_MASK 0x0fffffff #define SD_WIDTH_MASK 0xf0000000 #define SD_WIDTH_SHIFT 28 #define SD_GET_POS(_x) ((unsigned int)((_x)&SD_POS_MASK)) #define SD_GET_WIDTH(_x) ((unsigned int)(((_x)&SD_WIDTH_MASK)>>SD_WIDTH_SHIFT)) #define SD_GET_POSWIDTH(_pos,_width) ((unsigned int)((_pos) | ((_width) << SD_WIDTH_SHIFT))) /** * This is specifically designed for * Roman Czyborrra's UniFont. The font is currently maintained by * David Starner */ class SUniFont { public: SUniFont (const SFile& file); ~SUniFont (); bool draw (double scale, SCanvas* canvas, const SColor& fg, const SS_Matrix2D& matrix, SS_UCS4 g, bool mirrored); bool width (double scale, SS_UCS4 g, double *width_); double width (double scale); double ascent (double scale); double descent (double scale); double gap (double scale); private: bool width (double scale, SS_UCS4 g, double *width_, unsigned int* pw); unsigned int find (SS_UCS4 g); int nextIndex (int from, int size, SString* g); SFile file; SFileImage image; const char* array; SBinHashtable posWidth; }; #endif /* SUniFont_h */ ./swindow/SPostscript.h0000644000175000017500000000706110434025606015201 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SPostscript_h #define SPostscript_h #include "swindow/SCanvas.h" #include "stoolkit/SExcept.h" #include "stoolkit/SString.h" #include "stoolkit/SProperties.h" #include "stoolkit/SIOStream.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SEvent.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is a postscript renderer for yudit. */ class SPostscript : public SCanvas, public SEventTarget { public: enum SMedia { A3, A4, A5, B4, B5, Executive, Folio, Ledger, Legal, Letter, Quarto, Statement, Tabloid }; enum SOrientation { PORTRAIT, LANDSCAPE }; SPostscript (const SWriter& w, SMedia m, SOrientation o); virtual ~SPostscript(); /* maybe we should move these to canvas */ unsigned int getWidth() const; unsigned int getHeight() const; int getX() const; int getY() const; bool open (bool background); void newPage(); bool cacheOn (bool on=true); bool close (); bool hasNative () const; /* From SCanvas */ virtual bool newpath (double x, double y, const SString& id); virtual void fill (const SPen& pen); virtual void stroke (const SPen& pen); virtual void moveto (double x, double y); virtual void lineto (double x, double y); virtual void curveto (double x0, double y0, double x1, double y1, double x3, double y3); virtual void closepath(); virtual void pushmatrix(); virtual void popmatrix(); virtual void scale (double x, double y); virtual void translate (double x, double y); virtual void rotate (double angle); virtual void bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len); virtual void bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height); virtual void bitline (const SColor& fg, int x, int y, int tox, int toy); virtual void bitpoint (const SColor& fg, int x, int y); virtual void bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size); SString getCreationDate() const; /* for background */ bool timeout (const SEventSource* s); private: void fill (); unsigned int ticks; STimer* timer; virtual bool _newpath (double x, double y, const SString& id); bool writeString (const SString& str); bool isUgly; unsigned int pages; unsigned int currentPage; SS_MatrixStack matrix; SMedia media; SOrientation orientation; bool status; unsigned int width; unsigned int height; unsigned int widthMargin; unsigned int heightMargin; SWriter out; SProperties cache; SProperties cacheIDMap; unsigned int cacheIDMapCount; SString cacheID; SString cacheCurrent; double cacheOriginX; double cacheOriginY; SString creationDate; }; #endif /* SPostscript_h */ ./swindow/SGEngine.cpp0000644000175000017500000006272410434025610014700 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define SS_MAKKA true #include "swindow/SGEngine.h" #include "swindow/SImage.h" #include "stoolkit/SHashtable.h" #include "stoolkit/SProperties.h" static bool cacheOn=true; typedef SHashtable SEImageCache; static SEImageCache imageCache; static unsigned int cacheSize = 100; static unsigned int cacheCount = 0; /** * After this size things won't be cached. */ void SGEngine::setCacheSize(unsigned int size) { cacheSize = size; } /** * turn on/off the cache and clear it */ void SGEngine::setCacheOn (bool on) { cacheOn=on; imageCache.clear(); } /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit package */ /** * This class is meant to be the base class of canvases * @param windingrule is true if nonzero winding areas should * be filled instead of nonzero intersects. */ SGEngine::SGEngine(bool windingrule) { SS_Matrix2D m; matrix.append (m); setup (1.0); winding = windingrule; } SGEngine::~SGEngine () { } /** * start a new path. * @param _pen is the pen to draw with. it controls oversampling. * by experience the best and most efficient pen is size 1.0 * that give you a 2x2 oversampling. * @param _lw is the linewidth */ void SGEngine::_newpath (double _lw) { pathNow.clear(); pathVector.clear(); setup (_lw); unfinished =false; } /** * set up scanning parameters * By experience the best pen is the 0.5-pen */ void SGEngine::setup(double linewidth) { minx = 0.0; miny = 0.0; maxx = 0.0; maxy = 0.0; unfinished = false; undelta = 0.0; unx = 0.0; uny = 0.0; if (linewidth > 2.0) { scancount = 1; oversample = 1; epsylon = 1; } else { scancount = 2; if (linewidth <= 0.125) { oversample = 5; epsylon = 0.125; } else if (linewidth <= 0.25) { oversample = 4; epsylon = 0.25; } else if (linewidth <= 0.5) { oversample = 3; epsylon = 0.5; } else { oversample = 2; epsylon = 0.5; } } //colors = scancount * (oversample * oversample) +1; colors = (oversample * oversample) +1; } void SGEngine::_moveto (double _x, double _y) { if (unfinished) { linetoInternal (unx, uny); unfinished = false; } SS_Matrix2D m = matrix[matrix.size()-1]; double x = m.x0 * _x + m.y0 * _y + m.t0; double y = m.x1 * _x + m.y1 * _y + m.t1; if (pathVector.size()==0 && pathNow.size()==0) { minx=x ; miny=y; maxx=x ; maxy=y; } if (pathNow.size()) { pathVector.append (pathNow); } pathNow.clear(); pathNow.append(x); pathNow.append(y); if (x < minx) minx=x; if (x > maxx) maxx=x; if (y < miny) miny=y; if (y > maxy) maxy=y; } void SGEngine::_lineto (double _x, double _y) { SS_Matrix2D m = matrix[matrix.size()-1]; double x = m.x0 * _x + m.y0 * _y + m.t0; double y = m.x1 * _x + m.y1 * _y + m.t1; double px0 = pathNow[pathNow.size()-2]; double py0 = pathNow[pathNow.size()-1]; double d2 = (x - px0) * (x - px0) + (y - py0) * (y - py0); if (d2 double (int(cminx) + int(_width))) { cmaxx = double (int(cminx) + int(_width)); offScreen = true; } double cmaxy = maxy+1.0; if (maxy > double (int(cminy) + int (_height))) { cmaxy = double (int(cminy)+ int(_height)); offScreen = true; } int cwidth = oversample * (int) cmaxx - (int) origoX; int cheight = oversample * (int) cmaxy - (int) origoY; unsigned int width = (cwidth < 0) ? oversample : cwidth; unsigned int height = (cheight < 0) ? oversample : cheight; // fprintf (stderr, "miny=%g maxy=%g origoY=%d cmaxy=%g cminy=%g cheight=%d height=%d _height=%d\n", // miny, maxy, origoY, cmaxy, cminy, cheight, height, _height); if (height == 0 || width == 0) return 0; if (cwidth < 0 || cheight < 0) { offScreen = true; } unsigned int i; unsigned int imageSize = width/oversample *height/oversample; SS_WORD32 *image = new SS_WORD32[imageSize]; CHECK_NEW (image); memset (image, 0, imageSize * sizeof (SS_WORD32)); /** * scan the lines horizontally */ SS_InterSection** scanHoriz = new SS_InterSection* [height]; CHECK_NEW (scanHoriz); for (i=0; i 0) { SS_InterSection** scanVert = new SS_InterSection* [width]; CHECK_NEW (scanVert); for (i=0; i> 1; } /* count how many bits we have */ image[i] = cnt; } pathVector.clear(); /** * copy the resulting image */ SImage* im = new SImage (image, colors, origoX/oversample, origoY/oversample, width/oversample, height/oversample); CHECK_NEW (im); im->offScreen = offScreen; return im; } void SGEngine::_pushmatrix() { SS_Matrix2D m = matrix[matrix.size()-1]; matrix.append (m); } void SGEngine::_popmatrix() { if (matrix.size()) { matrix.truncate(matrix.size()-1); } } /** * TODO: not implemented */ void SGEngine::_rotate (double angle) { SS_Matrix2D m = matrix[matrix.size()-1]; m.rotate (angle); popmatrix (); matrix.append (m); } /** * immaediate action. */ void SGEngine::_scale (double x, double y) { SS_Matrix2D m = matrix[matrix.size()-1]; m.scale (x, y); popmatrix (); matrix.append (m); } void SGEngine::_translate (double x, double y) { SS_Matrix2D m = matrix[matrix.size()-1]; m.translate (x, y); popmatrix (); matrix.append (m); } /** * The following section contains the guts of the engine: the rendering */ /** * This routine is called when no coordiante transform is needed */ void SGEngine::curvetoInternal (double x0, double y0, double x1, double y1, double x2, double y2, double x3, double y3, int rec) { /* http://www.cs.wpi.edu/~matt/courses/cs563/talks/curves.html */ double dist2 = (x3 - x0) * (x3 - x0) + (y3 - y0) * (y3 - y0); // Tune this. 1.0 should be fine. if (dist2 < 1.0) { if (unfinished) { double px0 = pathNow[pathNow.size()-2]; double py0 = pathNow[pathNow.size()-1]; double d2 = (x3 - px0) * (x3 - px0) + (y3 - py0) * (y3 - py0); if (d2 > epsylon) { linetoInternal (x3, y3); unfinished = false; } else { if (undelta < d2 || SS_MAKKA) { undelta = d2; unx = x3; uny = y3; } } } else { unfinished = true; unx = x3; uny = y3; } return; } /* divide it up into two sub-sections */ double qx0 = x0; double qy0 = y0; double qx1 = (x0 + x1)/2.0; double qy1 = (y0 + y1)/2.0; double qx2 = qx1/2.0 + (x1 + x2) / 4.0; double qy2 = qy1/2.0 + (y1 + y2) / 4.0; double rx3 = x3; double ry3 = y3; double rx2 = (x2 + x3) / 2.0; double ry2 = (y2 + y3) / 2.0; double rx1 = (x1 + x2) / 4.0 + rx2 / 2.0; double ry1 = (y1 + y2) / 4.0 + ry2 / 2.0; double qx3 = (qx2 + rx1) / 2.0; double qy3 = (qy2 + ry1) / 2.0; double rx0 = qx3; double ry0 = qy3; curvetoInternal (qx0, qy0, qx1, qy1, qx2, qy2, qx3, qy3, rec); curvetoInternal (rx0, ry0, rx1, ry1, rx2, ry2, rx3, ry3, rec); } /** * This routine is called when no coordiante transform is needed */ void SGEngine::linetoInternal (double x, double y) { pathNow.append(x); pathNow.append(y); if (x < minx) minx=x; if (x > maxx) maxx=x; if (y < miny) miny=y; if (y > maxy) maxy=y; } /** * can the curves into the buffer * If winding is true use the non-zero winding rule rather that * intersect rule. * @param inter in the allocated and initialisez intersection array * @param offsetx is the offset in inter buffer * @param offsety is the offset in scanline. * @parm hieght is the hieght of the inter buffer * @param xy is 0 if x is x y is y 1 vice versa. */ void SGEngine::scan (SS_InterSection** intersBuff, int ox, int oy, int height, bool swap) { if (winding) { scanWinding (intersBuff, ox, oy, height, swap); } else { scanCrosses (intersBuff, ox, oy, height, swap); } } /** * Scan the curves into the buffer using nonzero winding rule. * @param inter in the allocated and initialisez intersection array * @param offsetx is the offset in inter buffer * @param offsety is the offset in scanline. * @parm hieght is the hieght of the inter buffer * @param xy is 0 if x is x y is y 1 vice versa. */ void SGEngine::scanWinding (SS_InterSection** intersBuff, int ox, int oy, int height, bool swap) { int* crossBuff = new int[height]; CHECK_NEW (crossBuff); double is; double diff; unsigned int swapindx = (swap) ? 1 : 0; unsigned int swapindy = (swap) ? 0 : 1; /* all paths */ unsigned int i; unsigned int j; SS_InterSection** clockwise = new SS_InterSection*[(unsigned int)height]; CHECK_NEW (clockwise); for (i=0; i<(unsigned int)height; i++) { clockwise[i] = new SS_InterSection(); CHECK_NEW (clockwise[i]); } for (i=0; i=pathVector[i].size()); /* Blur the image by half a grid to get a better contour */ double x0 = pathVector[i][j+swapindx] * (double) oversample + 0.5 - (double) ox ; double y0 = pathVector[i][j+swapindy] * (double) oversample + 0.5 - (double) oy ; double x1 = pathVector[i][j+swapindx+2] * (double) oversample + 0.5 - (double) ox ; double y1 = pathVector[i][j+swapindy+2] * (double) oversample + 0.5 - (double) oy ; int from = (int) y0; int to = (int) y1; int increment = (y0 > y1) ? -1 : 1; if (increment > 0) { if (from >= height || to < 0) { continue; } if (from < 0) from = 0; if (to >= height) to = height-1; diff = y1 - y0; } else { if (to >= height || from < 0) { continue; } if (to < 0) to = 0; if (from >= height) from = height-1; diff = y0 - y1; } /* scan betbeen y0..y1 */ for (int k=from; ; k+=increment) { double cline = double (k); bool crosses = (increment > 0) ? (cline >= y0 && cline < y1) : (cline >= y1 && cline < y0); int lastCross = crossBuff[k]; if (lastCross == 0) { lastCross = -increment; } if (increment * lastCross > 0 || !crosses) { if (k==to) break; continue; } crossBuff[k] = increment; if (diff < 0.1) { is = x0; } else { is = x0 + (x1 - x0) * (cline - y0) / (y1-y0); } unsigned int pos = intersBuff[k]->appendSorted ((int)is); clockwise[k]->insert (pos, increment); /* * This happend if we got inside/out it all wrong * Mainly happens when we get a straight line first and we * think is is positive. */ if (lastone && (intersBuff[k]->size() & 1)!=0) { intersBuff[k]->remove (0); clockwise[k]->remove (0); } if (k==to) break; } } } for (i=0; i<(unsigned int)height; i++) { int swinding = 0; for (j=0; jsize(); ) { int oldwin = swinding; swinding += clockwise[i]->peek(j); if (oldwin==0 || swinding==0) { j++; continue; } /* remove the ones that don't go from/to zero */ intersBuff[i]->remove (j); clockwise[i]->remove (j); } delete clockwise[i]; } delete crossBuff; delete clockwise; } /** * Scan the curves into the buffer using crosses rule * @param inter in the allocated and initialisez intersection array * @param offsetx is the offset in inter buffer * @param offsety is the offset in scanline. * @parm hieght is the hieght of the inter buffer * @param xy is 0 if x is x y is y 1 vice versa. */ void SGEngine::scanCrosses (SS_InterSection** intersBuff, int ox, int oy, int height, bool swap) { int* crossBuff = new int[height]; CHECK_NEW (crossBuff); double is; double diff; unsigned int swapindx = (swap) ? 1 : 0; unsigned int swapindy = (swap) ? 0 : 1; /* all paths */ for (unsigned int i=0; i=pathVector[i].size()); /* Blur the image by half a grid to get a better contour */ double x0 = pathVector[i][j+swapindx] * (double) oversample + 0.5 - (double) ox ; double y0 = pathVector[i][j+swapindy] * (double) oversample + 0.5 - (double) oy ; double x1 = pathVector[i][j+swapindx+2] * (double) oversample + 0.5 - (double) ox ; double y1 = pathVector[i][j+swapindy+2] * (double) oversample + 0.5 - (double) oy ; int from = (int) y0; int to = (int) y1; int increment = (y0 > y1) ? -1 : 1; if (increment > 0) { if (from >= height || to < 0) { continue; } if (from < 0) from = 0; if (to >= height) to = height-1; diff = y1 - y0; } else { if (to >= height || from < 0) { continue; } if (to < 0) to = 0; if (from >= height) from = height-1; diff = y0 - y1; } /* scan betbeen y0..y1 */ for (int k=from; ; k+=increment) { double cline = double (k); bool crosses = (increment > 0) ? (cline >= y0 && cline < y1) : (cline >= y1 && cline < y0); int lastCross = crossBuff[k]; if (lastCross == 0) { lastCross = -increment; } if (increment * lastCross > 0 || !crosses) { if (k==to) break; continue; } crossBuff[k] = increment; if (diff < 0.1) { is = x0; } else { is = x0 + (x1 - x0) * (cline - y0) / (y1-y0); } intersBuff[k]->appendSorted ((int)is); /* * This happend if we got inside/out it all wrong * Mainly happens when we get a straight line first and we * think is is positive. */ if (lastone && (intersBuff[k]->size() & 1)!=0) { intersBuff[k]->remove (0); } if (k==to) break; } } } delete crossBuff; } void SGEngine::render (SS_WORD32* image, SS_InterSection** intersBuff, unsigned int width, unsigned int height, bool swap) { int first; int next; /* These are the array increments x, y */ int muxx = (swap) ? 1 : width/oversample; int muxy = (swap) ? height/oversample : 1; //for (unsigned i=0; isize() == 0) continue; for (unsigned int k=0; k+1size(); k=k+2) { first = intersBuff[i]->peek (k); next = intersBuff[i]->peek (k+1); if (first < 0) first = 0; if (lastx < first) lastx=first; if (next+1 >= (int) width) next = ((int) width)-1; while (lastx<=next) { SS_WORD32 ind = muxy*(lastx/oversample) + muxx*((i)/oversample); SS_WORD32 mask = (swap) ? 1 << (((i) + oversample * lastx) % ovs2) : 1 << (((i) * oversample + lastx) % ovs2); SS_WORD32 vle = image[ind]; vle = vle | mask; image[ind] = vle; lastx++; } } } } } /** * create a new path. * if an image exists that has the same id, it will be * moved to x, y and returned. You shoulld delete the image * aftwerwards. * * IMPORTANT: it is the creator of the id that actually * is responsible of distinguishing diferent penWidth values. * * If the image with id is not in cache, it will return 0. * @param id is the unique id of the image. * @param x is the x offset * @param y is the y offset */ bool SGEngine::newpath (int x, int y, const SString& id) { primitive.clear(); newpathID = id; newpathX = x; newpathY = y; /* with a bit of a luck we have it in the cache */ const SImage* im; if (id.size() && (im = imageCache.get (id))) { return true; } /* take a first hand look. */ SGPrimitive p; p.newpath(); primitive.append (p); return 0; } /** * Stroke and fill resets the machinesry and returns the rendered image * @param x is the x corner * @param x is the y corner * @param width is the desired width * @param height is the desired height * @param lw is the lineWidth (if value is less than zero - subpixel *) */ SImage* SGEngine::stroke(int x, int y, unsigned int width, unsigned int height, double lw) { SGPrimitive p; p.stroke(x, y, width, height); primitive.append (p); _replay(lw); return _stroke (x, y, width, height); } /** * Stroke and fill resets the machinesry and returns the rendered image * @param x is the x corner * @param x is the y corner * @param width is the desired width * @param height is the desired height * @return the resulting image. Put it in the cache with 'newpathID' if * newpathID is not "" and the image is not off the screen. */ SImage* SGEngine::fill (int x, int y, unsigned int width, unsigned int height, double lw) { SGPrimitive p; p.fill (x, y, width, height); primitive.append (p); if (!cacheOn || newpathID.size()==0) { //fprintf (stderr, "screen image %*.*s cacheOn=%d\n", // SSARGS(newpathID), (int)cacheOn); _replay(lw); return _fill (x, y, width, height); } if (imageCache.get (newpathID)) { primitive.clear(); SImage * im = new SImage(imageCache[newpathID]); im->setOrigoX (im->getOrigoX() + (int)newpathX - im->px); im->setOrigoY (im->getOrigoY() + (int)newpathY - im->py); //im->px = im->getOrigoX() + (int)newpathX - im->px; //im->py = im->getOrigoY() + (int)newpathY - im->py; //fprintf (stderr, "screen image %*.*s is already in the cache\n", // SSARGS(newpathID)); return im; } /*--------- no luck with cached image. -------------*/ _replay(lw); SImage *ii = _fill (x, y, width, height); if (ii==0) return 0; ii->px = (int)newpathX; ii->py = (int)newpathY; //fprintf (stderr, "created one with newpathX=%d, newpathY=%d\n", // (int)newpathX, (int)newpathY); if (ii->offScreen) { //fprintf (stderr, "refuse to put off screen image into the cache\n"); } else { ii->compress (); cacheCount++; if (cacheCount > cacheSize) { fprintf (stderr, "SGEngine:: clearing cache (%u elements)\n",cacheCount); imageCache.clear (); cacheCount = 1; } imageCache.put (newpathID, *ii); //fprintf (stderr, "putting screen image %*.*s into the cache\n", // SSARGS(newpathID)); } return ii; } /** * Go through the primitives and replay them */ void SGEngine::_replay (double lineWidth) { for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontImpl_h #define SFontImpl_h #include "swindow/SCanvas.h" #include "swindow/SPen.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SProperties.h" #include "stoolkit/SObject.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SFontImpl : public SObject { public: SFontImpl (const SString& name, const SString& encoding); SFontImpl (const SFontImpl& ff); SFontImpl operator= (const SFontImpl& ff); virtual ~SFontImpl (); static void setPath (const SStringVector& path); static void guessPath(const SStringVector& files, const SString& property); static void guessPath(); virtual SObject* clone() const; void scale (double x, double y); bool draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 uch); bool width (SS_UCS4 uch, double* width); double width () const; double ascent () const; double descent () const; double gap () const; bool isTTF() const; bool isLeftAligned(SS_UCS4 uch) const; void setAttributes (const SProperties& properties); bool isLR () const { return lrFont; } bool isRL () const { return rlFont; } /* set the base character for better glyph positioning */ static void setBase(SS_UCS4 base); private: void createSaneXLFD (); SString xlfd; SString name; SString encoding; SS_Matrix2D matrix; bool lrFont; bool rlFont; void* delegate; }; #endif /* SFontImpl_h */ ./swindow/SPen.h0000644000175000017500000000307410434025606013551 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SPen_h #define SPen_h #include "swindow/SColor.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SPen { public: SPen (const SColor& fore); SPen (const SColor& fore, const SColor& back); SPen (const SColor& fore, const SColor& back, double width); SPen (const SPen& pen); SPen operator= (const SPen& pen); virtual ~SPen(); bool operator==(const SPen& pen) const; bool operator!=(const SPen& pen) const; const SColor& getForeground() const; const SColor& getBackground() const; double getLineWidth() const; void setForeground (const SColor& fore); void setBackground (const SColor& back); void setLineWidth (double width); private: SColor fore; SColor back; double width; }; #endif /* SPen_h */ ./swindow/SFontFB.h0000644000175000017500000000365010726175567014165 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontFB_h #define SFontFB_h #include "swindow/SCanvas.h" #include "swindow/SPen.h" #include "stoolkit/STypes.h" #include "stoolkit/SMatrix.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is a falllback font that always have glyphs */ class SFontFB { public: SFontFB (void); virtual ~SFontFB (); enum SIGN { CR, LF, CRLF, LFCR, PS, LS, FF, TAB, CTRL, LRM, RLM, FB_ZWNJ, FB_ZWJ }; void draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 g); void signDraw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SIGN sign, SS_UCS4 g); double width (const SS_Matrix2D& matrix, SS_UCS4 g); double signWidth (const SS_Matrix2D& matrix, SIGN sign); double width (const SS_Matrix2D& matrix) const; double ascent (const SS_Matrix2D& matrix) const; double descent (const SS_Matrix2D& matrix) const; double gap (const SS_Matrix2D& matrix) const; /* mulltiply this with size you want to get the matrix */ double scale () const; /* in height */ unsigned int tabSize; private: void drawOne (SCanvas* canvas, const SS_Matrix2D& matrix, short* guide); }; #endif /* SFontFB_h */ ./swindow/SGPrimitive.h0000644000175000017500000000406310434025606015105 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SPrimitive_h #define SPrimitive_h #include "stoolkit/SObject.h" #include "stoolkit/SString.h" /** * This is the graphic primitives. * This is what happens between a SPen'ed newpath and stroke or fill. */ #define MAX_SG_PARAMS 6 class SGPrimitive : public SObject { public: enum SGType { NONE, NEWPATH, MOVETO, LINETO, CURVETO, CLOSEPATH, PUSHMATRIX, POPMATRIX, SCALE, TRANSLATE, ROTATE, STROKE, FILL }; SGPrimitive (void); SGPrimitive (const SGPrimitive& p); SGPrimitive operator = (const SGPrimitive& p); virtual ~SGPrimitive (); SObject* clone() const; SString getKey(double originx, double originy) const; double getOriginX (double originx); double getOriginY (double originy); /* You need to call one of these */ void newpath (); void stroke (int x, int y, unsigned int width, unsigned int height); void fill (int x, int y, unsigned int width, unsigned int height); void moveto (double x, double y); void lineto (double x, double y); void curveto (double x0, double y0, double x1, double y1, double x3, double y3); void closepath(); void pushmatrix(); void popmatrix(); void scale (double x, double y); void translate (double x, double y); void rotate (double angle); SGType type; double params[MAX_SG_PARAMS]; }; #endif /* SPrimitive_h */ ./swindow/SCanvas.cpp0000644000175000017500000000764610434025610014601 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SCanvas.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit package */ /** * This class is meant to be the base class of canvases * enum SState { DRAW, CACHE, FLUSH }; *
      *
    • DRAW - use direct printing (default)
    • *
    • CACHE - use cacheStart , cahceEnd and draw in between
    • *
    • FLUSH - use cachePrint to print the cahced item.
    • *
    */ SCanvas::SCanvas(void) { isCacheOn = true; } SCanvas::~SCanvas () { } /** * Try to put a cached image with id at x,y * if failed, return false. You should draw it then. * even if this return true, fill should be called to * actually place the cached image. */ bool SCanvas::newpath (double x, double y, const SString& id) { return false; } /** * Fill the image with this pen. */ void SCanvas::fill (const SPen& pen) { } /** * Stroke the image with this pen. */ void SCanvas::stroke(const SPen& pen) { } void SCanvas::moveto (double x, double y) { } void SCanvas::lineto (double x, double y) { } void SCanvas::curveto (double x0, double y0, double x1, double y1, double x2, double y2) { } void SCanvas::closepath() { } void SCanvas::rotate (double angle) { } void SCanvas::scale (double x, double y) { } void SCanvas::translate (double x, double y) { } /** * put an image to the scene. originX and OriginY is ignored. * @param x is the x corener of the image. * @param y is the y corner of the image. * @param image is the actual image. */ void SCanvas::putImage (int x, int y, const SImage& image) { } void SCanvas::setBackground(const SColor &color) { } void SCanvas::pushmatrix() { } void SCanvas::popmatrix() { } /** * Draw a native font to the screen. This will not delete existing data. * @param x is the origo position * @param y is the origo position * @param native is X11 FID for X11 * @param data is a XChar2b structure for X11 * @param len is the unber of chars for X11 */ void SCanvas::bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len) { } /** * Fill a solid rectangle * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to fill * @param height is the height of the region to fill */ void SCanvas::bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height) { } /** * Draw a solid line. * @param x is the starting x point * @param y is the starting y point * @param x is the ending non-exclusive x point * @param y is the ending non-exclusive y point */ void SCanvas::bitline (const SColor& fg, int x, int y, int tox, int toy) { } /** * Draw a solid line. * @param x is the x point * @param y is the y point */ void SCanvas::bitpoint (const SColor& fg, int x, int y) { } void SCanvas::bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size) { } /** * This routine is not supposed to be used extensively. This is * to check the current matrix. */ SS_Matrix2D SCanvas::getCurrentMatrix() const { return SS_Matrix2D(); } /** * turn on cacheing. */ bool SCanvas::cacheOn(bool on) { bool old = isCacheOn; isCacheOn = on; return old; } ./swindow/sx11/0000755000175000017500000000000011334661312013323 5ustar henrichhenrich./swindow/sx11/SX11Color.cpp0000644000175000017500000001256710434025610015530 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/sx11/SX11Color.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SExcept.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 */ /** * This is out color class */ SX11Color::SX11Color (SX11Impl* _impl, SS_WORD32 value) : SColor(value) { pixel = allocate(_impl); impl = _impl; } SX11Color::SX11Color (SX11Impl* _impl, unsigned char _red, unsigned char _green, unsigned char _blue, unsigned char _alpha) : SColor (_red, _green, _blue, _alpha) { pixel = allocate(_impl); impl = _impl; } SX11Color::SX11Color (SX11Impl* _impl, double _red, double _green, double _blue, double _alpha) : SColor (_red, _green, _blue, _alpha) { pixel = allocate(_impl); impl = _impl; } SX11Color::SX11Color (const SX11Color& color) : SColor (color.red, color.green, color.blue, color.alpha) { pixel = color.pixel; impl = color.impl; } SX11Color::SX11Color (SX11Impl* _impl,const SColor& color) : SColor (color) { pixel = allocate(_impl); impl = _impl; } SX11Color SX11Color::operator= (const SX11Color& color) { if (&color == this) return *this; red = color.red; green = color.green; blue = color.blue; alpha = color.alpha; pixel = color.pixel; impl = color.impl; return *this; } SX11Color::~SX11Color() { } SS_WORD32 SX11Color::getValue() const { return ((SS_WORD32) blue) + (((SS_WORD32) green) << 8) + (((SS_WORD32) red) << 16) + (((SS_WORD32) alpha) << 24); } SPixel SX11Color::getPixelValue() const { return pixel; } SBinHashtable colorCache; /** * Try to get the color from cache or allocate it. * This one does not take the alpha! */ SS_WORD32 SX11Color::allocate(SX11Impl* _impl) { XColor xcolor; xcolor.red = (((unsigned short)red)<<8)+(unsigned short)red; xcolor.green = (((unsigned short)green)<<8)+(unsigned short)green; xcolor.blue = (((unsigned short)blue)<<8)+(unsigned short)blue; xcolor.flags = 0; SString mvle ((long)getValue() & 0x00ffffff); SS_WORD32 mpixel = colorCache[mvle]; if (mpixel!=0) return mpixel & 0x00ffffff; if (_impl->visual->c_class != PseudoColor) { if (XAllocColor (_impl->display, _impl->colormap, &xcolor)==0) { colorCache.put (mvle, 0x01000000); return 0; } mpixel = xcolor.pixel | 0x01000000; colorCache.put (mvle, mpixel); return mpixel; } XColor copyXcolor = xcolor; XColor* colors; char* flags; unsigned long r,g,b; int bestMatch; unsigned long bestDistance; unsigned long d; int i; if (XAllocColor (_impl->display, _impl->colormap, ©Xcolor)!=0) { mpixel = copyXcolor.pixel | 0x01000000; colorCache.put (mvle, mpixel); return copyXcolor.pixel; } // Fuzzy logic to get "some" good color. if (_impl->cellCount<=0) return 0; colors = new XColor [_impl->cellCount]; CHECK_NEW (colors); flags = new char [_impl->cellCount]; CHECK_NEW (flags); memset (flags, 0, _impl->cellCount); // Find best match for (i=0; i<_impl->cellCount; i++) { colors[i].pixel = i; } while (1) { XQueryColors (_impl->display, _impl->colormap, colors, _impl->cellCount); bestMatch = -1; bestDistance = 0; for (i=0; i<_impl->cellCount; i++) { if (flags[i]) continue; r = (colors[i].red>>2)-(xcolor.red>>2); g = (colors[i].green>>2)-(xcolor.green>>2); b = (colors[i].blue>>2)-(xcolor.blue>>2); d = r*r+g*g+b*b; if (bestMatch<0 || d< bestDistance) { bestDistance = d; bestMatch = i; } } /* we tried everything. can not allocate color. */ if (bestMatch<0) { break; } copyXcolor = colors[bestMatch]; if (XAllocColor (_impl->display, _impl->colormap, ©Xcolor)!=0) { break; } /* can not use this cell, continue our search */ flags[bestMatch] = 1; } delete colors; delete flags; if (bestMatch<0) { // No way to get any colors. All cells are private colorCache.put (mvle, 0x01000000); return 0; } mpixel = copyXcolor.pixel | 0x01000000; colorCache.put (mvle, mpixel); return copyXcolor.pixel; } /** * Blend the other color into this color, using alpha values * This function is virtual because you may need to reimplement this. */ void SX11Color::blend (const SColor& color) { red = (unsigned char) (((int) red * (255 - (int)color.alpha) + (int) color.red * (int) color.alpha) / 255); green = (unsigned char) (((int) green * (255 - (int)color.alpha) + (int) color.green * (int) color.alpha) / 255); blue = (unsigned char) (((int) blue * (255 - (int)color.alpha) + (int) color.blue * (int) color.alpha) / 255); pixel = allocate(impl); } ./swindow/sx11/SX11Font.cpp0000644000175000017500000006313310434025610015353 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/sx11/SX11Font.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUtil.h" #include "stoolkit/SCluster.h" #include #include #define SD_ZW_FOTNTHACK 0.0001 static SStringVector mapNameVector; /** * Maps SCluster.h SD_DEVANAGARI - like codes to pango codes. */ static SStringVector scriptCodeMap("*-iso10646-yudit,*-iso10646-dev,*-iso10646-bng,*-iso10646-gur,*-iso10646-guj,*-iso10646-ori,*-iso10646-tam,*-iso10646-tel,*-iso10646-kan,*-iso10646-mal,*-iso10646-sin"); /** * forcefully sets coverage even if glyph is zero size */ static bool inited= false; static const char* defaultNames[] = { "*-iso10646-1", "ucs2", "*-iso10646-dev", "ucs2", "*-iso10646-tam", "ucs2", "*-iso10646-bgn", "ucs2", "*-iso10646-bng", "ucs2", "*-iso10646-bur", "ucs2", "*-iso10646-gur", "ucs2", "*-unicode", "ucs2", "*-iso8859-1", "iso-8859-1", "*-iso8859-2", "iso-8859-2", "*-iso8859-3", "iso-8859-3", "*-iso8859-4", "iso-8859-4", "*-iso8859-5", "iso-8859-5", "*-iso8859-6", "iso-8859-6", "*-iso8859-7", "iso-8859-7", "*-iso8859-8", "iso-8859-8", "*-iso8859-9", "iso-8859-9", "*-iso8859-11", "iso-8859-11", "*-iso8859-12", "iso-8859-12", "*-iso8859-13", "iso-8859-13", "*-iso8859-14", "iso-8859-14", "*-iso8859-15", "iso-8859-15", "*-iso8859-16", "iso-8859-16", "*-koi8-r", "koi8-r", "*-koi8-c", "koi8-c", "*-koi8-u", "koi8-u", "*-koi8-1", "koi8-r", "*-ksc5601.1987-0", "ksc-5601-l", "*-ksc5601*", "ksc-5601-l", "*-ksx1001*", "ksx-1001", "*-jisx0208.1983-0", "jis-0208", "*-jisx0208*", "jis-0208", "*-jisx0208.1990-0", "jis-0208", "*-jisx0208*", "jis-0208", "*-jisx0201.1976-0", "jis-0201", "*-jisx0201*", "jis-0201", "*-jisx0212.1990-0", "jis-0212", "*-jisx0212*-0", "jis-0212", "*-jisx0213*-1", "jis-0213-1", "*-jisx0213*-2", "jis-0213-2", "*-big5.hku-0", "big-5", "*-big5-0", "big-5", "*-big5*", "big-5", "*-gb2312.1980-0", "gb-2312-l", /* There are some font encoded with gb-2312-r"*/ "*-gb2312*", "gb-2312-l", /* There are some font encoded with gb-2312-r"*/ "*-iso646*", "iso-646", /* 646 is not 10646 */ }; /** * @author: Gaspar Sinai * @version: 2000-06-03 * This is a specific native font, with a certain size */ class SX11FontCache { public: SX11FontCache (SX11Impl *impl,const SString& xlfd); ~SX11FontCache (); SString xlfd; SX11Impl* impl; SUniMap map; double fontAscent; double fontDescent; double fontWidth; XFontStruct* font; bool loaded; bool load (); unsigned int getRawPangoLigatures (unsigned int script, SS_UCS4* ino, unsigned int len); unsigned int getPangoLigatures (unsigned int script, SS_UCS4* ino, unsigned int len); double draw (SCanvas* canvas, const SPen& pen, double x, double y, SS_UCS2 glyphno); double width (SS_UCS2 glyphno); SProperties ligatures; unsigned int ligatureCount; int scriptCode; /* Still no agreement on this - I am using : */ /* http://mail.nl.linux.org/linux-utf8/2000-12/msg00042.html */ unsigned int plane; }; SX11FontCache::SX11FontCache(SX11Impl *_impl, const SString& _xlfd) : xlfd (_xlfd) { impl = _impl; fontAscent = 0.0; fontDescent = 0.0; fontWidth = 0.0; loaded = false; plane = 0; } /** * Create an XLFD and try to load this as a font. * TODO: it should modify xlfd to show the real xlfd */ bool SX11FontCache::load () { if (loaded) return (font!=0); scriptCode = -1; plane = 0; loaded = true; char* fontName = xlfd.cString(); font = XLoadQueryFont (impl->display, fontName); delete fontName; if (font == 0) return false; /* Fix broken fonts */ Atom fontatom = XInternAtom (impl->display, "FONT", False); Atom pangohack = XInternAtom (impl->display, "PANGO_LIGATURE_HACK", False); char* vle = 0; char* pangohackname = 0; XFontProp *fp = font->properties; for (int i = 0; i < font->n_properties; i++, fp++) { if (fp->name == fontatom) { vle = XGetAtomName (impl->display, fp->card32); } else if (fp->name == pangohack) { pangohackname = XGetAtomName (impl->display, fp->card32); } } if (vle) { SString fn(vle); XFree (vle); fn.lower(); xlfd = fn; } int tryAscent[2]; tryAscent[0] = font->ascent; tryAscent[1] = font->max_bounds.ascent; if (tryAscent[1] < tryAscent[0] || (tryAscent[0] +2) * 2 < tryAscent[1]) { tryAscent[1] = tryAscent[0]; } int tryDescent[2]; tryDescent[0] = font->descent; tryDescent[1] = font->max_bounds.descent; if (tryDescent[1] < tryDescent[0] || (tryDescent[0] +2) * 2 < tryDescent[1]) { tryDescent[1] = tryDescent[0]; } fontAscent = (double) tryAscent[1]; fontDescent = (double)tryDescent[1]; fontWidth = (double) font->max_bounds.width; if (!inited) { for (unsigned int i=0; i hackatoms; unsigned int i; for (i=0; idisplay, hname.array(), False); hackatoms.append (atom); } XFontProp *fp = font->properties; for (int j = 0; j < font->n_properties; j++, fp++) { for (i=0; iname != hackatoms[i]) continue; char* hvle = XGetAtomName (impl->display, fp->card32); SStringVector hvect (hvle, " "); for (unsigned int k=0; k 0xffff || w == 0.0) { static bool warned = false; if (!warned) fprintf (stderr, "SX11Font: Deleting non-existent ligatures from %*.*s\n", SSARGS(xlfd)); warned = true; } else { SString key ((char*)v.array(), sizeof (SS_UCS4) * (v.size()-1)); SString vle ((char*)&v.array()[v.size()-1], sizeof (SS_UCS4)); ligatureCount++; ligatures.put (key, vle); } } } } } } if (ligatureCount != 0) { #if 0 fprintf (stderr, "loaded %u ligatures from %*.*s.\n", ligatureCount, SSARGS(xlfd)); #endif } return true; } /** * Draw a single glyph. * @return the width */ double SX11FontCache::draw (SCanvas* canvas, const SPen& pen, double x, double y, SS_UCS2 glyphno) { /* ZWJ and ZWNJ */ /* ZWJ and ZWNJ */ if (plane == 0 && scriptCode != -1 && (glyphno == 0x200d || glyphno == 0x200c)) { return SD_ZW_FOTNTHACK; } bool covered = isCoveredScipt ((SS_UCS4) glyphno, scriptCode); /* pango subscript and superscirpt ra - zero width */ if (plane == 0 && !covered && scriptCode != -1 && (glyphno == 0xc97e || glyphno == 0xc97f)) { covered = true; } XChar2b char2B; char2B.byte1 = glyphno >> 8; char2B.byte2 = glyphno & 0xff; double fwidth; if (font->per_char==0) { int ddirection; int dascent; int ddescent; XCharStruct overall; if (!XQueryTextExtents16 (impl->display, font->fid, &char2B, 1, &ddirection, &dascent, &ddescent, &overall)) { return 0.0; } if (overall.width==0 && !covered) return 0.0; fwidth = (double) overall.width; if (fwidth==0.0) fwidth = SD_ZW_FOTNTHACK; } else { if (char2B.byte1 < font->min_byte1 || char2B.byte2 < font->min_char_or_byte2 || char2B.byte1 > font->max_byte1 || char2B.byte2 > font->max_char_or_byte2) { return 0.0; } int cellIndex = (char2B.byte1-font->min_byte1) * (font->max_char_or_byte2 -font->min_char_or_byte2+1) + char2B.byte2-font->min_char_or_byte2; fwidth = (double) font->per_char[cellIndex].width; if (fwidth == 0.0 && !covered) return 0.0; if (fwidth==0.0) fwidth = SD_ZW_FOTNTHACK; } canvas->bitfont (pen, x, y, (void*) font->fid, (char*) &char2B, 2); return fwidth; } /** * get width of a single glyph. * @return the width */ double SX11FontCache::width (SS_UCS2 glyphno) { /* ZWJ and ZWNJ */ if (plane == 0 && scriptCode != -1 && (glyphno == 0x200d || glyphno == 0x200c)) { return SD_ZW_FOTNTHACK; } /* pango subscript and superscirpt ra - zero width */ bool covered = isCoveredScipt ((SS_UCS4) glyphno, scriptCode); if (plane == 0 && !covered && scriptCode != -1 && (glyphno == 0xc97e || glyphno == 0xc97f)) { covered = true; } XChar2b char2B; char2B.byte1 = glyphno >> 8; char2B.byte2 = glyphno & 0xff; if (font->per_char==0) { int ddirection; int ddescent; int dascent; XCharStruct overall; if (!XQueryTextExtents16 (impl->display, font->fid, &char2B, 1, &ddirection, &dascent, &ddescent, &overall)) { return 0.0; } if (!covered) return (double)overall.width; if (overall.width == 0) return SD_ZW_FOTNTHACK; return (double) overall.width; } if (char2B.byte1 < font->min_byte1 || char2B.byte2 < font->min_char_or_byte2 || char2B.byte1 > font->max_byte1 || char2B.byte2 > font->max_char_or_byte2) { return 0.0; } int cellIndex = (char2B.byte1-font->min_byte1) * (font->max_char_or_byte2 -font->min_char_or_byte2+1) + char2B.byte2-font->min_char_or_byte2; double ret = (double) font->per_char[cellIndex].width; if (!covered) return ret; if (ret == 0.0) return SD_ZW_FOTNTHACK; return ret; } SX11FontCache::~SX11FontCache () { if (font) XFreeFont (impl->display, (XFontStruct*) font); } /** * TODO: this is never freed up. It simply grows... */ static SBinHashtable fontCache; static SX11FontCache* loadFont (SX11Impl* impl, const SString& xlfd); /** * Create a new empty font * if _encoding exists use it as the decoder for the font. */ SX11Font::SX11Font (SX11Impl* _impl, const SString& _encoding) : encoder (_encoding), impl(_impl) { isencoded = (_encoding.size()!=0); if (isencoded && !encoder.isOK()) { if (_encoding != "unicode" && _encoding != "mslvt" && _encoding != "nojamo" && _encoding != "indic" && _encoding != "deva" && _encoding != "beng" && _encoding != "guru" && _encoding != "gujr" && _encoding != "orya" && _encoding != "taml" && _encoding != "telu" && _encoding != "knda" && _encoding != "mlym" && _encoding != "sinh" && _encoding != "thai" && _encoding != "lao" && _encoding != "tibt" ) { fprintf (stderr, "SX11Font: unknown encoding : '%*.*s'\n", SSARGS (_encoding)); } isencoded = false; } } SX11Font::~SX11Font () { } /** * Draw one glyph. */ bool SX11Font::draw (const SString& xlfd, SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 g) { SX11FontCache* fc = loadFont(impl, xlfd); if (!fc->load()) return false; /** * create a glyphno array */ SS_UCS2 glyphno = 0; unsigned int liglen =0; if (isLigature (g) && fc->ligatureCount != 0 && (liglen=getLigatureUnicode (g, 0)) > 0) { /* we allocate one more to allow for LEFT_RIGHT vowel expansion */ SS_UCS4* chars = new SS_UCS4[liglen + 1]; CHECK_NEW (chars); getLigatureUnicode (g, chars); unsigned int script = (g & 0x7fff0000) >> 16; unsigned int collapsed = fc->getPangoLigatures (script, chars, liglen); if (collapsed==0 || collapsed == liglen) { delete chars; return false; } if (collapsed == 1) { glyphno = chars[0]; } else { double x = matrix.t0; double y = matrix.t1; /* draw the whole ligature */ for (unsigned int i=0; i 0xffff || ((dw = fc->draw (canvas, pen, x, y, (SS_UCS2) chars[i])) == 0.0 && i==0)) { delete chars; return false; } x += dw; } delete chars; return true; } delete chars; } else if (isencoded) { /* to make things faster */ if (encoder.isUMap()) { glyphno = encoder.encode (g); } else { SV_UCS4 ucs4; ucs4.append (g); SV_UCS4 decd; unsigned int lifted = encoder.lift (ucs4, 0, false, &decd); /* like TTF we fallback to original font encoding */ if (lifted == 0) { glyphno = fc->map.encode (g); } else { double x = matrix.t0; double y = matrix.t1; /* draw the whole ligature */ for (unsigned int i=0; i 0xffff) return 0; double dw = fc->draw (canvas, pen, x, y, (SS_UCS2) decd[i]); if (dw == 0.0 && i==0) { return false; } x += dw; } return true; } } } else { if (fc->plane == 0) { /* faster */ if (fc->map.isUMap()) { glyphno = fc->map.encode (g); } else { SV_UCS4 ucs4; ucs4.append (g); SV_UCS4 decd; unsigned int lifted = fc->map.lift (ucs4, 0, false, &decd); if (lifted==1 && decd.size()==1) glyphno = decd[0]; } } else { SS_UCS4 start = fc->plane*0x10000;; glyphno = (g < start) ? 0 : fc->map.encode (g-start); } } if (glyphno==0) return false; double dw = fc->draw (canvas, pen, matrix.t0, matrix.t1, glyphno); return dw; } /** * Get pango ligatures. * @param ino is the input-output buffer * @param len is the input length * @return output length */ unsigned int SX11FontCache::getRawPangoLigatures (unsigned int script, SS_UCS4* ino, unsigned int len) { for (unsigned int i=0; i 0xffff) return len; } if (len == 1) return 1; SString l; /* collect all ligatures in one loop, starting from big ones. */ unsigned int curin=0; unsigned int curout=0; unsigned int i; while (curin < len) { bool gotone = false; for (i=len; i>curin; i--) { SString key ((char*)&ino[curin], (i-curin)*sizeof (SS_UCS4)); const SString* lig = ligatures.get (key); /* get hard-coded pango scripts */ if (lig == 0 && i== curin+2 && scriptCode==(int)script) { int type0 = getCharType (ino[curin]); int type1 = getCharType (ino[curin+1]); if ((type0 == SD_INDIC_CONSONANT_BASE || type0 == SD_INDIC_CONSONANT_POST_BASE || type0 == SD_INDIC_CONSONANT_BELOW_BASE ) && type1 == SD_INDIC_HALANT) { /* PANGO intermediate half form */ SS_UCS4 gl = 0; switch (script) { case SD_DEVANAGARI: gl = 0xf000 + ino[curin]; l = SString ((char*)&gl, sizeof (SS_UCS4)); lig = &l; break; default: break; } } else { /* TODO: other stuff */ switch (script) { case SD_DEVANAGARI: break; default: break; } } } if (lig && lig->size() == sizeof (SS_UCS4)) { memcpy (&ino[curout], lig->array(), sizeof (SS_UCS4)); curout++; curin = i; gotone = true; break; } } if (!gotone) { ino[curout] = ino[curin]; curout++; curin++; } } if (curout == len) return curout; /* try collapsing further */ return getRawPangoLigatures (script, ino, curout); } /** * Get pango ligatures, and fix them. * @param ino is the input-output buffer * @param len is the input length * @return output length */ unsigned int SX11FontCache::getPangoLigatures (unsigned int script, SS_UCS4* ino, unsigned int _len) { /* modifiers*/ unsigned int mstart=0; unsigned int mend=0; unsigned int i; unsigned int len = _len; /* chop off modifier */ for (i=0; i<_len; i++) { int type0 = getCharType (ino[i]); if (i>0 && type0 == SD_INDIC_MODIFIER && mstart==0) { mstart = i; mend = len; len = mstart; } } /* pre-processing */ switch (script) { case SD_DEVANAGARI: if (len > 2 && ino[0] == 0x930 && ino[1] == 0x94d && ino[2] == 0x200d) { ino[0] = 0x0931; /* making sure eyelash is eyelash */ } break; } unsigned int ret = getRawPangoLigatures (script, ino, len); if (scriptCode != (int)script || ret < 2) { /* put back modifiers */ for (i=mstart; i0; i--) { ino[i] = ino[i-1]; } ino[0] = prefix; if (postfix) { ino[ret] = postfix; ret++; } } break; case SD_DEVANAGARI: if (ino[ret-1] == 0x93f) { prefix = 0x93f; } /* convert something + RA to subscript ra */ for (i=1; i= 0xf900 && ino[i-1] <0xf980 && ino[i] == 0x0930) // RA { ino[i-1] = ino[i-1] - 0xf000; /* back to original form */ ino[i] = 0xc97e; /* subscript */ } if (ino[i-1] >= 0xf900 && ino[i-1] <0xf980 && ino[i] == 0xf000 + 0x0930) // Half RA { ino[i-1] = ino[i-1] - 0xf000; /* back to original form */ for (unsigned int j=ret; j>i+1; j--) { ino[j] = ino[j-1]; } ino[i] = 0xc97e; /* subscript */ ino[i+1] = 0x094D; /* halant */ ret++; } } if (ino[0] == 0xf000 + 0x0930)// Starts with half-ra. { for (i=1; i0; i--) { ino[i] = ino[i-1]; } ino[0] = prefix; } /* convert stuff to half forms - everything excpept if it ends with half */ for (i=prefix?1:0; i+1= 0xf000 && ino[i] < 0xf9ff) { ino[i] = (ino[i] & 0x0fff) | 0xe000; } } break; default: break; } #if 0 fprintf (stderr, "Glyphs "); for (i=0; iload()) return false; SS_UCS2 glyphno = 0; unsigned int liglen =0; if (isLigature (g) && fc->ligatureCount != 0 && (liglen=getLigatureUnicode (g, 0)) > 0) { /* we allocate one more to allow for LEFT_RIGHT vowel expansion */ SS_UCS4* chars = new SS_UCS4[liglen + 1]; CHECK_NEW (chars); getLigatureUnicode (g, chars); unsigned int script = (g & 0x7fff0000) >> 16; unsigned int collapsed = fc->getPangoLigatures (script, chars, liglen); if (collapsed==0 || collapsed == liglen) { delete chars; return false; } if (collapsed == 1) { glyphno = chars[0]; } else { double x = 0; /* the whole ligature */ for (unsigned int i=0; i 0xffff || ((dw=fc->width ((SS_UCS2) chars[i]))==0.0 && i==0)) { delete chars; return false; } x += dw; } if (width_) *width_ = x; /* loop */ delete chars; return true; } delete chars; } /** * create a glyphno array */ else if (isencoded) { /* to make things faster */ if (encoder.isUMap()) { glyphno = encoder.encode (g); } else { SV_UCS4 ucs4; ucs4.append (g); SV_UCS4 decd; unsigned int lifted = encoder.lift (ucs4, 0, false, &decd); /* Like TTF we fallback to original font encoding */ if (lifted == 0) { glyphno = fc->map.encode (g); } else { double x = 0; /* draw the whole ligature */ for (unsigned int i=0; i 0xffff) return false; if ((dw=fc->width ((SS_UCS2) decd[i]))==0.0 && i==0) { return false; } x += dw; } if (width_) *width_ = x; return true; } } } else { if (fc->plane == 0) { if (fc->map.isUMap()) { glyphno = fc->map.encode (g); } else { SV_UCS4 ucs4; ucs4.append (g); SV_UCS4 decd; unsigned int lifted = fc->map.lift (ucs4, 0, false, &decd); if (lifted==1 && decd.size()==1) glyphno = decd[0]; } } else { SS_UCS4 start = fc->plane*0x10000;; glyphno = (g < start) ? 0 : fc->map.encode (g-start); } } if (glyphno==0) return false; double dw; if ((dw = fc->width (glyphno))!=0.0) { if (width_) *width_ = dw; return true; } return false; } double SX11Font::width (const SString& xlfd) { SX11FontCache* fc = loadFont(impl, xlfd); if (!fc->load()) return 0.0; return fc->fontWidth; } double SX11Font::ascent (const SString& xlfd) { SX11FontCache* fc = loadFont(impl, xlfd); if (!fc->load()) return 0.0; return fc->fontAscent; } double SX11Font::descent (const SString& xlfd) { SX11FontCache* fc = loadFont(impl, xlfd); if (!fc->load()) return 0.0; return fc->fontDescent; } double SX11Font::gap (const SString& xlfd) { return 0.0; } static SX11FontCache* loadFont (SX11Impl* impl, const SString& xlfd) { SX11FontCache* f = fontCache.get (xlfd); if (f!=0) return f; f = new SX11FontCache (impl, xlfd); CHECK_NEW (f); fontCache.put (xlfd, f); return f; } ./swindow/sx11/SXInputMethod.h0000644000175000017500000000747111334656635016234 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SXInputMethod_h #define SXInputMethod_h #include "stoolkit/SString.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SProperties.h" #include "swindow/sx11/SX11Impl.h" #include "swindow/sx11/SXEventHandler.h" class SXInputMethod : public SXEventHandler { public: SXInputMethod (SX11Impl* impl, long id, long eventmask); virtual ~SXInputMethod(); bool start (const SString& name, const SProperties& props); void stop (); void setProperties ( const SProperties& props); const SString& getName(); bool hasStatusArea (); /* SXEventHandler */ virtual bool handleEvent (const XEvent& event); bool isAsciiInput (); bool isKInput (); XIC getIC (); const SString& getICEncoding () const; private: SString icEncoding; long eventMask; bool isAscii; XIC xic; XIM xim; bool statusAreaOK; bool createIC (const SString& str, const SProperties& props); Atom toAtom (const SString& str); Window getOwner (Atom atom); bool sendEvent (const SString& type, Window w, long p0 ,long p1=0, long p2=0, long p3=0, long p4=0); bool setKinputAttributes (const SProperties& properties); bool handlePropertyNotify (const XEvent& event); SString name; SString inputStyle; Atom kproperty; /* do I need this ? */ Window conversionOwner; SX11Impl* impl; long id; long clientWindow; }; /**------------- THIS IS KINPUT2 ------------------**/ #define ATOM_KINPUT2 "_JAPANESE_CONVERSION" #define CONV_ATTR(code,len) ((unsigned long)((code)<<16)+(len)) #define UPPER16U(data) (((data)>>16)&0xffff) #define UPPER16S(data) ((short)(((data)>>16)&0xffff)) #define LOWER16U(data) ((data)&0xffff) #define LOWER16S(data) ((short)((data)&0xffff)) #define CODE_OF_ATTR(head) UPPER16U(head) #define LENGTH_OF_ATTR(head) LOWER16U(head) #define CONVPROF_PROTOCOL_VERSION 1 #define CONVPROF_SUPPORTED_STYLES 2 /* 128-255: can be specified only at startup time */ #define CONVATTR_INPUT_STYLE 128 #define CONVATTR_EVENT_CAPTURE_METHOD 129 #define CONVATTR_USE_EXTENSION 255 /* argument for CONVATTR_INPUT_STYLE and CONVPROP_SUPPORTED_STYLES */ #define CONVARG_ROOTWINDOW 1L #define CONVARG_OFFTHESPOT 2L #define CONVARG_OVERTHESPOT 4L /* argument for CONVATTR_EVENT_CAPTURE_METHOD */ #define CONVARG_NONE 0L #define CONVARG_CREATE_INPUTONLY 1L #define CONVARG_SELECT_FOCUS_WINDOW 2L /* 0-127: can be specified at any time (startup and during conversion) */ #define CONVATTR_NONE 0 #define CONVATTR_INDIRECT 1 #define CONVATTR_FOCUS_WINDOW 2 #define CONVATTR_SPOT_LOCATION 3 #define CONVATTR_CLIENT_AREA 4 #define CONVATTR_STATUS_AREA 5 #define CONVATTR_COLORMAP 6 #define CONVATTR_COLOR 7 #define CONVATTR_BACKGROUND_PIXMAP 8 #define CONVATTR_LINE_SPACING 9 #define CONVATTR_FONT_ATOMS 10 #define CONVATTR_CURSOR 11 /**------------- THIS WAS KINPUT2 ------------------**/ #endif /* SXInputMethod_h */ ./swindow/sx11/SXEventHandler.h0000644000175000017500000000176610434025606016340 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SXEventHandler_h #define SXEventHandler_h #include class SXEventHandler { public: SXEventHandler(void); virtual ~SXEventHandler(); virtual bool handleEvent (const XEvent& event)=0; }; #endif /* SXEventHandler_h */ ./swindow/sx11/SXInputMethod.cpp0000644000175000017500000011047711334661312016554 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/sx11/SXInputMethod.h" #include "swindow/sx11/SX11Color.h" #include "stoolkit/STypes.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SStringVector.h" #ifdef HAVE_LOCALE #include #endif #ifdef NEED_SET_IM_VALUES_PROTO extern "C" { extern char * XSetIMValues( #if NeedVarargsPrototypes XIM /* im */, ... #endif ); } #endif void destroyIMCB (XIM xim, XPointer p0, XPointer p1); static XFontSet fontSet = 0; /** * This is out X11 input method. Currently only kinput2 is here, so * we have one class only. */ SXInputMethod::SXInputMethod (SX11Impl* _impl, long _id, long _eventMask) { inputStyle = "none"; impl = _impl; id = _id; name = ""; kproperty = None; conversionOwner = None; xim = 0; xic = 0; statusAreaOK = false; clientWindow = _id; isAscii = true; eventMask = _eventMask; } /** * return true if only ascii input is accepted. */ bool SXInputMethod::isAsciiInput () { return isAscii; } bool SXInputMethod::hasStatusArea () { return statusAreaOK; } /** * return true if kinput is active and up */ bool SXInputMethod::isKInput () { if (isAsciiInput() || name != ATOM_KINPUT2) return false; /* oops its has gone */ if (conversionOwner == None) { impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; isAscii = true; return false; } Window owner = getOwner (toAtom (name)); /* olle its has gone */ if (owner == None || conversionOwner != owner) { conversionOwner = None; impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; isAscii = true; return false; } return true; } SXInputMethod::~SXInputMethod() { impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); } /** * Start kinput2 conversion. * @param _name is the conversion name - only "_JAPANESE_CONVERSION" is OK now. * @param properties contains the properties for input. */ bool SXInputMethod::start (const SString& _name, const SProperties& properties) { SString oldName = name; if (name == _name) return true; /* need to stop current kinput2 */ if (name == ATOM_KINPUT2) stop (); name = "x-ascii"; isAscii = true; statusAreaOK = false; if (_name.size() > 0 && (_name[0] =='x' || _name[0] == 'X')) { return (createIC(_name, properties)); } statusAreaOK = true; /* switch off current one */ if (oldName.size() > 1 && oldName[0] == 'x' && oldName[1] == '-' && oldName != "x-ascii") { createIC ("x-ascii", properties); } if (_name != ATOM_KINPUT2) return false; conversionOwner = getOwner (toAtom (_name)); if (conversionOwner == None) { return false; } if (properties.get ("InputStyle")==0) { fprintf (stderr, "InputStyle is not present in properties.\n"); return false; } inputStyle = properties["InputStyle"]; clientWindow = id; /** * Check if we can use this '_JAPANESE_CONVERSION' thingy. */ Atom expectedAttribueType = toAtom ("_CONVERSION_ATTRIBUTE_TYPE"); Atom attributeType; int format; unsigned long nitems; unsigned long bytesafter; unsigned long *data; unsigned char *c_data=0; XGetWindowProperty ( impl->display, conversionOwner, toAtom ("_CONVERSION_PROFILE"), 0L, 100L, False, toAtom ("_CONVERSION_ATTRIBUTE_TYPE"), &attributeType, &format, &nitems, &bytesafter, &c_data); data = (unsigned long*) c_data; if (data == 0) return false; if (format != 32 || attributeType != expectedAttribueType) { XFree ((char*) data); return false; } bool isOK = false; for (unsigned i=0; i nitems) break; switch (code) { case CONVPROF_PROTOCOL_VERSION: if (data[i+1] == toAtom ("PROTOCOL-2.0")) { isOK = true; } case CONVPROF_SUPPORTED_STYLES: break; } i+=len; } XFree (data); if (!isOK) { conversionOwner = None; return false; } /* set attributes and clientWindow */ if (!setKinputAttributes (properties)) { conversionOwner = None; return false; } impl->setXEventHandler (clientWindow, ClientMessage, this); name = _name; bool ret = false; ret = sendEvent ("CONVERSION_REQUEST", conversionOwner, toAtom (name), clientWindow, toAtom ("COMPOUND_TEXT"), toAtom (name), toAtom ("CONVERSION_ATTRIBUTE")); isAscii = false; return ret; } /** * Stop the conversion. */ void SXInputMethod::stop () { if (name == "") return; if (name != ATOM_KINPUT2) { createIC ("x-ascii", SProperties()); return; } name = "x-ascii"; isAscii = true; if (conversionOwner == None) { return; } Window owner = getOwner (toAtom (ATOM_KINPUT2)); if (owner == None || conversionOwner != owner) { conversionOwner = None; impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; return; } Atom an = toAtom(ATOM_KINPUT2); sendEvent ("CONVERSION_END_REQUEST", conversionOwner, an, clientWindow); conversionOwner = None; impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; } /** * Chech if it is running and return name or null */ const SString& SXInputMethod::getName() { return name; } void SXInputMethod::setProperties (const SProperties& props) { if (name == "") return; if (inputStyle == "root") return; if (!isKInput()) { XIC ic = getIC(); if (ic ==0) return; if (props.get("InputSpot")) { if (inputStyle == "preedit-over-status-over") { SString spotLocation = props["InputSpot"]; spotLocation.append ((char)0); int x, y; sscanf (spotLocation.array(), "%d,%d", &x, &y); XPoint spot; spot.x = x; spot.y = y; XVaNestedList attributes = XVaCreateNestedList (0, XNSpotLocation, &spot, (char *) 0x0); if (attributes) { XSetICValues(xic, XNPreeditAttributes, attributes, (char *) 0x0); XFree (attributes); } } else if (inputStyle == "preedit-over-status-under") { SString spotLocation = props["InputSpot"]; spotLocation.append ((char)0); int x, y; sscanf (spotLocation.array(), "%d,%d", &x, &y); XPoint spot; spot.x = x; spot.y = y; SString sl = props["InputStatusLocation"]; sl.append((char)0); int statusX, statusY; sscanf(sl.array(), "%d,%d", &statusX, &statusY); SString ss = props["InputStatusSize"]; ss.append((char)0); int statusWidth, statusHeight; sscanf(ss.array(), "%d,%d", &statusWidth, &statusHeight); XRectangle statusArea; statusArea.width = statusWidth; statusArea.height = statusHeight; statusArea.x = statusX; statusArea.y = statusY; XVaNestedList ca = XVaCreateNestedList (0, XNSpotLocation, &spot, (char *) 0x0); XVaNestedList sa = XVaCreateNestedList (0, XNArea, &statusArea, (char *) 0x0); if (ca && sa) { XSetICValues(xic, XNPreeditAttributes, ca, XNStatusAttributes, sa, (char *) 0x0); XFree (ca); XFree (sa); } } } return; } if (conversionOwner == None) return; if (inputStyle != "preedit-over-status-under" && inputStyle != "preedit-over-status-over") { return; } Window owner = getOwner (toAtom (name)); if (owner == None || conversionOwner != owner || !setKinputAttributes (props)) { name = ""; conversionOwner = None; impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; return; } long attr = CONV_ATTR(CONVATTR_INDIRECT, 1); sendEvent ("CONVERSION_ATTRIBUTE_NOTIFY", conversionOwner, toAtom (name), clientWindow, attr, toAtom ("CONVERSION_ATTRIBUTE")); return; } /** * Handle event. return false if no more call is needed. * @return false if we can not process this. */ bool SXInputMethod::handleEvent (const XEvent& event) { if (conversionOwner == None) return false; /* Check if we got the right event. */ switch (event.xany.type) { case PropertyNotify: //fprintf (stderr,"SXInputMethod: Property Notify.\n"); return handlePropertyNotify (event); /* response to conversion start */ case ClientMessage: if (event.xclient.format != 32) return false; if (event.xclient.message_type == toAtom ("CONVERSION_END") && event.xclient.data.l[0] == (long) toAtom (name)) { //fprintf (stderr, "SXInputMethod: conversion ended.\n"); name = ""; conversionOwner = None; impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; return true; } /* we take notify only */ if (event.xclient.message_type != toAtom ("CONVERSION_NOTIFY") || (Atom) event.xclient.data.l[0] != toAtom (name)) { name = ""; conversionOwner = None; impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; fprintf (stderr, "SXInputMethod: conversion request failed.\n"); return false; } if (event.xclient.data.l[2] == None) { name = ""; conversionOwner = None; impl->removeXEventHandler (clientWindow, PropertyNotify); impl->removeXEventHandler (clientWindow, ClientMessage); kproperty = None; fprintf (stderr,"SXInputMethod: request can not be performed.\n"); return true; } /* Why do I need this ? */ kproperty = (Atom) event.xclient.data.l[2]; //fprintf (stderr,"SXInputMethod: request OK.\n"); impl->setXEventHandler (clientWindow, PropertyNotify, this); return true; } /* remove this handler */ return false; } /** * Handle property notify event. return false if no more call is needed. * @return true if we want to propagate this. */ bool SXInputMethod::handlePropertyNotify (const XEvent& event) { if (name.size() == 0) return true; if (conversionOwner == None) return true; if (kproperty == None) { return false; } if ((long) event.xproperty.window != clientWindow || event.xproperty.atom != kproperty || event.xproperty.state != PropertyNewValue) { return false; } Atom proptype; int propformat; unsigned long propsize; unsigned long rest; unsigned char* propvalue=0; /* Kinput just hang some property on our window, or client window */ XGetWindowProperty (impl->display, (Window)clientWindow, kproperty, 0L, 100000L, True, AnyPropertyType, &proptype, &propformat, &propsize, &rest, &propvalue); /** * this happens if accumulated property change * appened, and we already have read the data. */ if (proptype == None) { if (propvalue) XFree (propvalue); return true; } // Should not happen if (proptype != toAtom ("COMPOUND_TEXT")) { if (propvalue) XFree (propvalue); fprintf (stderr, "Expected COMPUND_TEXT\n"); return true; } // Should not happen if (propformat != 8) { if (propvalue) XFree (propvalue); return true; } SString in ((char*)propvalue, propsize); if (propvalue) XFree (propvalue); SEncoder utf8Encoder("utf-8-s"); SEncoder ctextJP ("iso-2022-x11"); if (!ctextJP.isOK()) { fprintf (stderr, "could not load encoder for iso-2022-jp\n"); return true; } impl->sendString (id, utf8Encoder.encode (ctextJP.decode (in))); return true; } /** * Changes the attributes on this window by changing the window properties * to whatever we have in properties. */ bool SXInputMethod::setKinputAttributes (const SProperties& properties) { /* pad with 4 zero bytes on top for buggy kinput on alpha */ SString xprop; int style = CONVARG_OVERTHESPOT; if (inputStyle=="preedit-root-status-root") { style = CONVARG_ROOTWINDOW; } else if (inputStyle =="preedit-under-status-under") { style = CONVARG_OFFTHESPOT; } else if (inputStyle =="preedit-over-status-over") { style = CONVARG_OVERTHESPOT; } else if (inputStyle == "preedit-over-status-under") { style = CONVARG_OVERTHESPOT; } else { fprintf (stderr, "InputStyle is bad - '%*.*s.'\n", SSARGS(inputStyle)); return false; } xprop.append (SString ((long) CONV_ATTR(CONVATTR_INPUT_STYLE, 1))); xprop.append (SString((long) style)); clientWindow = id; // CONVARG_NONE - not supported // CONVARG_SELECT_FOCUS_WINDOW - key events that happen // during coversion and dont have SendEvent flags need to be // ignored. // CONVARG_CREATE_INPUTONLY - create an invisible window in front of // the real one - does not work with all window managers- // click to type. - CURRENTLY YUDIT CAN DO ONLY THIS. xprop.append (SString ((long) CONV_ATTR(CONVATTR_EVENT_CAPTURE_METHOD, 1))); xprop.append (SString((long) CONVARG_SELECT_FOCUS_WINDOW)); if (inputStyle == "preedit-over-status-over" && properties.get ("InputSpot") && properties.get ("InputStyle")) { SString spotLocation = properties["InputSpot"]; spotLocation.append((char)0); int x, y; sscanf(spotLocation.array(), "%d,%d", &x, &y); xprop.append(SString((long)CONV_ATTR(CONVATTR_SPOT_LOCATION, 1))); xprop.append(SString((long)(x << 16) | (y & 0xffff))); if (properties.get ("InputClientColor")) { SString col = properties["InputClientColor"]; col.append ((char)0); unsigned long bg, fg; sscanf (col.array(), "%lu,%lu", &bg, &fg); SX11Color xbg = SX11Color(impl, (SS_WORD32)bg); SX11Color xfg = SX11Color(impl, (SS_WORD32)fg); xprop.append (SString ((long) CONV_ATTR(CONVATTR_COLOR, 2))); xprop.append (SString ((long)(xfg.getPixelValue()))); xprop.append (SString ((long)(xbg.getPixelValue()))); } } if (inputStyle == "preedit-under-status-under") { xprop.append (SString ((long) CONV_ATTR(CONVATTR_FOCUS_WINDOW, 1))); xprop.append (SString ((long)id)); if (properties.get ("InputWindow")) { SString pw = properties["InputWindow"]; pw.append ((char)0); unsigned long w; sscanf (pw.array(), "%lu", &w); clientWindow = w; } if (properties.get ("InputStatusLocation") && properties.get ("InputStatusSize")) { SString sl = properties["InputStatusLocation"]; sl.append((char)0); int x, y; sscanf(sl.array(), "%d,%d", &x, &y); SString ss = properties["InputStatusSize"]; ss.append((char)0); int width, height; sscanf(ss.array(), "%d,%d", &width, &height); xprop.append(SString((long)CONV_ATTR(CONVATTR_STATUS_AREA, 2))); xprop.append(SString((long)(x << 16) | (y & 0xffff))); xprop.append(SString((long)(width << 16) | (height & 0xffff))); } if (properties.get ("InputClientLocation") && properties.get ("InputClientSize")) { SString sl = properties["InputClientLocation"]; sl.append((char)0); int x, y; sscanf(sl.array(), "%d,%d", &x, &y); SString ss = properties["InputClientSize"]; ss.append((char)0); int width, height; sscanf(ss.array(), "%d,%d", &width, &height); xprop.append(SString((long)CONV_ATTR(CONVATTR_CLIENT_AREA, 2))); xprop.append(SString((long)(x << 16) | (y & 0xffff))); xprop.append(SString((long)(width << 16) | (height & 0xffff))); } if (properties.get ("InputClientColor")) { SString col = properties["InputClientColor"]; col.append ((char)0); unsigned long bg, fg; sscanf (col.array(), "%lu,%lu", &bg, &fg); SX11Color xbg = SX11Color(impl, (SS_WORD32)bg); SX11Color xfg = SX11Color(impl, (SS_WORD32)fg); xprop.append (SString ((long) CONV_ATTR(CONVATTR_COLOR, 2))); xprop.append (SString ((long)(xfg.getPixelValue()))); xprop.append (SString ((long)(xbg.getPixelValue()))); } } /* status off the spot */ if (inputStyle == "preedit-over-status-under") { xprop.append (SString ((long) CONV_ATTR(CONVATTR_FOCUS_WINDOW, 1))); xprop.append (SString ((long)id)); if (properties.get ("InputStatusLocation") && properties.get ("InputStatusSize")) { SString sl = properties["InputStatusLocation"]; sl.append((char)0); int x, y; sscanf(sl.array(), "%d,%d", &x, &y); SString ss = properties["InputStatusSize"]; ss.append((char)0); int width, height; sscanf(ss.array(), "%d,%d", &width, &height); xprop.append(SString((long)CONV_ATTR(CONVATTR_STATUS_AREA, 2))); xprop.append(SString((long)(x << 16) | (y & 0xffff))); xprop.append(SString((long)(width << 16) | (height & 0xffff))); } if (properties.get ("InputStatusColor")) { SString col = properties["InputStatusColor"]; col.append ((char)0); unsigned long bg, fg; sscanf (col.array(), "%lu,%lu", &bg, &fg); SX11Color xbg = SX11Color(impl, (SS_WORD32)bg); SX11Color xfg = SX11Color(impl, (SS_WORD32)fg); xprop.append (SString ((long) CONV_ATTR(CONVATTR_COLOR, 2))); xprop.append (SString ((long)(xfg.getPixelValue()))); xprop.append (SString ((long)(xbg.getPixelValue()))); } if (properties.get ("InputClientColor")) { SString col = properties["InputClientColor"]; col.append ((char)0); unsigned long bg, fg; sscanf (col.array(), "%lu,%lu", &bg, &fg); SX11Color xbg = SX11Color(impl, (SS_WORD32)bg); SX11Color xfg = SX11Color(impl, (SS_WORD32)fg); xprop.append (SString ((long) CONV_ATTR(CONVATTR_COLOR, 2))); xprop.append (SString ((long)(xfg.getPixelValue()))); xprop.append (SString ((long)(xbg.getPixelValue()))); } SString spotLocation = properties["InputSpot"]; spotLocation.append((char)0); int x, y; sscanf(spotLocation.array(), "%d,%d", &x, &y); xprop.append(SString((long)CONV_ATTR(CONVATTR_SPOT_LOCATION, 1))); xprop.append(SString((long)(x << 16) | (y & 0xffff))); } if (properties.get ("LineSpacing")) { SString lsp = properties["LineSpacing"]; lsp.append ((char)0); int spacing; sscanf (lsp.array(), "%d", &spacing); xprop.append (SString ((long) CONV_ATTR(CONVATTR_LINE_SPACING, 1))); xprop.append (SString((long)spacing)); } Atom attributeAtom = toAtom ("CONVERSION_ATTRIBUTE"); unsigned int psize = xprop.size(); /* I have to deal here with bugs all over X11/Kinput on Alpha AXP */ for (unsigned int i=0; idisplay, (Window) clientWindow, attributeAtom, attributeAtom, 32, PropModeReplace, (unsigned char *)xprop.array(), /* tricky len calculation for buggy kinput2 */ (sizeof(long)/sizeof(SS_WORD32)) * psize / sizeof(SS_WORD32)); XFlush (impl->display); return true; } /** * Convert string to atom. * @param str is the string name of atom. */ Atom SXInputMethod::toAtom (const SString& str) { SString a=str; a.append ((char)0); return XInternAtom (impl->display, a.array(), False); } /** * Get the window that is the selection owner of atom. */ Window SXInputMethod::getOwner (Atom atom) { if (atom == None) return None; return XGetSelectionOwner (impl->display, atom); } /** * Send a client message to window. * Mostly used to communicate with kinput2 Window. * TODO: This is the most dangerous part. If window disappears while * getting the id and sending the event, X error handles needs to be implemented * to prevent app from exiting. * @param _type is the message type - atom string. * @param v contains all the elements in the message * @return false if anything is wrong. */ bool SXInputMethod::sendEvent (const SString& _type, Window window, long p0 ,long p1, long p2, long p3, long p4) { if (window == None) return false; Atom type = toAtom (_type); if (type == None) return false; XEvent event; event.xclient.type = ClientMessage; event.xclient.window = window; event.xclient.display = impl->display; event.xclient.message_type = type; event.xclient.format = 32; event.xclient.data.l[0] = p0; event.xclient.data.l[1] = p1; event.xclient.data.l[2] = p2; event.xclient.data.l[3] = p3; event.xclient.data.l[4] = p4; XSendEvent (impl->display, window, False, NoEventMask, &event); return true; } /** * Creare an IC. If IC is ascii of none, it will work by all means. * If it fails it will fall back to ascii and set name and isAscii. * member variables in the class accordingly. * @param st is the name if ic in the form of x-kinput-ja_JP.eucJP * @param props is the input mehtod properties. * @return true if we could make it work. */ bool SXInputMethod::createIC (const SString& str, const SProperties& props) { if (xic!=0 && xim!=0) XDestroyIC (xic); if (xim!=0 && xic!=0) XCloseIM (xim); inputStyle = "preedit-over-status-over"; icEncoding = ""; xic = 0; xim = 0; SStringVector nv(str, ":"); SString sname = nv[0]; name = sname; if (sname.size() > 2 && sname[1] == '-') { /* 'x-' */ sname.remove (0); sname.remove (0); } isAscii = (sname == "ascii"); SProperties ps = props; if (sname == "ascii" || sname == "none" || sname == "utf-8") { ps.put ("InputStyle", "none"); sname = "none"; } SString zname("@im="); zname.append (sname); zname.append ((char)0); SString slocale = SString ((nv.size() > 1) ? SString(nv[1]) : SString("")); bool localeOK = false; #ifdef HAVE_LOCALE SString zlocale = slocale; if (zlocale.size() == 0) zlocale = "C"; zlocale.append ((char)0); if (!setlocale (LC_ALL, zlocale.array())) { setlocale (LC_ALL, "C"); fprintf (stderr, "Locale %s is not supported by C library.\n", zlocale.array()); } else if (!XSupportsLocale()) { fprintf (stderr, "Locale %s is not supported by X.\n", zlocale.array()); } else { localeOK = true; //fprintf (stderr, "set locale %s.\n", zlocale.array()); } #else fprintf (stderr, "No locale support on this machine.\n"); isAscii = true; name = "x-ascii"; return false; #endif icEncoding = ""; SStringVector vl(slocale, ".", true); if (vl.size() == 2) { icEncoding = vl[1]; icEncoding.lower(); if (icEncoding == "eucjp") { icEncoding = "euc-jp"; } else if (icEncoding == "euckr") { icEncoding = "euc-kr"; } else if (icEncoding == "gb2312") { icEncoding = "gb-18030"; } else if (icEncoding == "gb18030") { icEncoding = "gb-18030"; } else if (icEncoding == "gb-2312") { icEncoding = "gb-18030"; } else if (icEncoding == "big5") { icEncoding = "big-5"; } else if (icEncoding == "utf8") { icEncoding = ""; } else if (icEncoding == "iso8859-1") { icEncoding = "iso-8859-1"; } else if (icEncoding == "iso8859-2") { icEncoding = "iso-8859-2"; } else if (icEncoding == "iso8859-3") { icEncoding = "iso-8859-3"; } else if (icEncoding == "iso8859-4") { icEncoding = "iso-8859-4"; } else if (icEncoding == "iso8859-5") { icEncoding = "iso-8859-5"; } else if (icEncoding == "iso8859-6") { icEncoding = "iso-8859-6"; } else if (icEncoding == "iso8859-7") { icEncoding = "iso-8859-7"; } else if (icEncoding == "iso8859-8") { icEncoding = "iso-8859-8"; } else if (icEncoding == "iso8859-9") { icEncoding = "iso-8859-9"; } else if (icEncoding == "iso8859e") { icEncoding = "iso-8859e"; } else if (icEncoding == "iso8859-15") { icEncoding = "iso-8859-15"; } else if (icEncoding == "iso8859-16") { icEncoding = "iso-8859-16"; } else if (icEncoding == "utf-8") { icEncoding = ""; } } char * p = localeOK?XSetLocaleModifiers(zname.array()):0; if (localeOK && (p==0 || *p == 0)) { fprintf (stderr, "setting modifiers '%s' failed.\n", zname.array()); } xim = (p!=0 && *p) ? XOpenIM(impl->display, 0, 0, 0) : 0; bool status = (xim!=0); /* hmm. */ if (!status) { fprintf (stderr, "openim '%s' failed.\n", zname.array()); icEncoding = ""; localeOK = false; #ifdef HAVE_LOCALE setlocale (LC_ALL, "C"); if (!setlocale (LC_ALL, "C")) { setlocale (LC_ALL, "C"); fprintf (stderr, "Locale C is not supported by C library.\n"); } else if (!XSupportsLocale()) { fprintf (stderr, "Locale C is not supported by X.\n"); } else { localeOK = true; //fprintf (stderr, "set locale %s.\n", zlocale.array()); } #endif isAscii = true; name = "x-ascii"; zname = "@im=none"; zname.append ((char)0); p = localeOK?XSetLocaleModifiers(zname.array()):0; xim = (p && *p)?XOpenIM (impl->display, 0, 0, 0):0; if (xim == 0) { fprintf (stderr, "Can not open any xim.\n"); return false; } ps.put ("InputStyle", "none"); } #ifdef HAVE_SET_IM_VALUES //fprintf (stderr, "Setting CB.\n"); XIMCallback imCallback; imCallback.client_data = (char*)&xim; imCallback.callback = (XIMProc) destroyIMCB; XSetIMValues (xim, XNDestroyCallback , &imCallback , (char *) 0x0); #endif if (ps.get ("InputStyle") == 0) ps.put ("InputStyle", "none"); SString s = ps["InputStyle"]; statusAreaOK = false; unsigned long code = XIMPreeditNone | XIMStatusNone; if (s=="preedit-root-status-root") { code = XIMPreeditNothing | XIMStatusNothing; } else if (s =="preedit-under-status-under") { code = XIMPreeditArea | XIMStatusArea; statusAreaOK = true; } else if (s =="preedit-over-status-under") { code = XIMPreeditPosition | XIMStatusArea; statusAreaOK = true; } else if (s == "preedit-over-status-over") { code = XIMPreeditPosition | XIMStatusNothing; } else if (s == "none") { //code = XIMPreeditNone | XIMStatusNone; /* This one will accept compositions */ code = XIMPreeditNothing | XIMStatusNothing; } else { fprintf (stderr, "InputStyle is bad - %*.*s.\n", SSARGS(s)); XCloseIM(xim); xim = 0; return false; } inputStyle = s; XIMStyles* xim_styles; if (XGetIMValues(xim, XNQueryInputStyle, &xim_styles, (char *) 0x0) || xim_styles==0 || xim_styles->count_styles==0) { fprintf (stderr, "input method doesn't support any style\n"); XCloseIM(xim); xim = 0; return false; } int i; bool hasrootstyle = false; bool hasoverthespot = false; for (i=0; icount_styles; i++) { if (xim_styles->supported_styles[i] == code) break; if (xim_styles->supported_styles[i] == (XIMPreeditNothing | XIMStatusNothing)) { hasrootstyle = true; } else if (xim_styles->supported_styles[i] == (XIMPreeditPosition | XIMStatusNothing)) { hasoverthespot = true; } } bool nostyle = (i == xim_styles->count_styles); if (nostyle && hasoverthespot && inputStyle != "None" && inputStyle != "none") { //fprintf (stderr, "Reverting to preedit-over-status-over.\n"); inputStyle = "preedit-over-status-over"; code = XIMPreeditPosition | XIMStatusNothing; nostyle = false; statusAreaOK = false; } if (hasrootstyle && nostyle && inputStyle != "None" && inputStyle != "none") { //fprintf (stderr, "Reverting to preedit-root-status-root.\n"); inputStyle = "preedit-root-status-root"; code = XIMPreeditNothing | XIMStatusNothing; nostyle = false; statusAreaOK = false; } /* Try no precomposition style */ if (nostyle && inputStyle == "none") { for (i=0; icount_styles; i++) { if (xim_styles->supported_styles[i] == (XIMPreeditNone|XIMStatusNone)) { code = XIMPreeditNone|XIMStatusNone; inputStyle = "preedit-root-status-root"; nostyle = false; statusAreaOK = false; break; } } } XFree(xim_styles); if (nostyle) { fprintf (stderr, "Style=%*.*s in %*.*s not found. Style negotiation failed.\n", SSARGS(inputStyle), SSARGS(name)); statusAreaOK = false; XCloseIM(xim); xim = 0; return false; } char **missing_charset_list; int missing_charset_count; char *def_string; /* Why? */ if (fontSet == 0) { fontSet = XCreateFontSet(impl->display, "*", &missing_charset_list, &missing_charset_count, &def_string); } /* over the spot */ if (inputStyle == "preedit-over-status-over") { XPoint spot = {1, 1}; /* Why the heck do we need fontset? */ int screen = DefaultScreen (impl->display); XVaNestedList attributes = XVaCreateNestedList (0, XNForeground , BlackPixel (impl->display, screen), XNBackground , WhitePixel (impl->display, screen), XNSpotLocation, &spot, XNFontSet, fontSet, (char *) 0x0); if (attributes==0) { XCloseIM(xim); xim = 0; fprintf (stderr, "Can not create XVaNestedList.\n"); return false; } xic = XCreateIC(xim, XNInputStyle, code, XNClientWindow, (Window) id, XNPreeditAttributes, attributes, (char *) 0x0); XFree (attributes); //Bool preedit_state = 1; //if (xic) XSetICValues (xic, XNPreeditState, preedit_state, (char *) 0x0); if (props.get ("InputClientColor")) { SString col = props["InputClientColor"]; col.append ((char)0); unsigned long bg, fg; sscanf (col.array(), "%lu,%lu", &bg, &fg); SX11Color xbg = SX11Color(impl, (SS_WORD32)bg); SX11Color xfg = SX11Color(impl, (SS_WORD32)fg); XVaNestedList atts = XVaCreateNestedList (0, XNForeground, xfg.getPixelValue(), XNBackground, xbg.getPixelValue(), (char *) 0x0); if (atts) { XSetICValues(xic, XNPreeditAttributes, atts, (char *) 0x0); XFree (atts); } } } else if (inputStyle == "preedit-under-status-under") { SString sl = props["InputStatusLocation"]; sl.append((char)0); int statusX, statusY; sscanf(sl.array(), "%d,%d", &statusX, &statusY); SString ss = props["InputStatusSize"]; ss.append((char)0); int statusWidth, statusHeight; sscanf(ss.array(), "%d,%d", &statusWidth, &statusHeight); XRectangle statusArea; statusArea.width = statusWidth; statusArea.height = statusHeight; statusArea.x = statusX; statusArea.y = statusY; SString col = props["InputStatusColor"]; col.append ((char)0); unsigned long sbg, sfg; sscanf (col.array(), "%lu,%lu", &sbg, &sfg); SX11Color sxbg = SX11Color(impl, (SS_WORD32)sbg); SX11Color sxfg = SX11Color(impl, (SS_WORD32)sfg); sl = props["InputClientLocation"]; sl.append((char)0); int clientX, clientY; sscanf(sl.array(), "%d,%d", &clientX, &clientY); ss = props["InputClientSize"]; ss.append((char)0); int clientWidth, clientHeight; sscanf(ss.array(), "%d,%d", &clientWidth, &clientHeight); XRectangle clientArea; clientArea.width = clientWidth; clientArea.height = clientHeight; clientArea.x = clientX; clientArea.y = clientY; col = props["InputClientColor"]; col.append ((char)0); unsigned long cbg, cfg; sscanf (col.array(), "%lu,%lu", &cbg, &cfg); SX11Color cxbg = SX11Color(impl, (SS_WORD32)cbg); SX11Color cxfg = SX11Color(impl, (SS_WORD32)cfg); XVaNestedList sa = XVaCreateNestedList (0, XNForeground , sxfg.getPixelValue(), XNBackground , sxbg.getPixelValue(), XNFontSet, fontSet, XNArea, &statusArea, (char *) 0x0); XVaNestedList ca = XVaCreateNestedList (0, XNForeground , cxfg.getPixelValue(), XNBackground , cxbg.getPixelValue(), XNFontSet, fontSet, XNArea, &clientArea, (char *) 0x0); if (sa==0 || ca==0) { XCloseIM(xim); xim = 0; fprintf (stderr, "Can not create XVaNestedList.\n"); return false; } SString pw = props["InputWindow"]; pw.append ((char)0); unsigned long w; sscanf (pw.array(), "%lu", &w); xic = XCreateIC(xim, XNInputStyle, code, XNClientWindow, (Window) w, XNFocusWindow, (Window) id, XNPreeditAttributes, ca, XNStatusAttributes, sa, (char *) 0x0); XFree (ca); XFree (sa); } else if (inputStyle == "preedit-over-status-under") { SString sl = props["InputStatusLocation"]; sl.append((char)0); int statusX, statusY; sscanf(sl.array(), "%d,%d", &statusX, &statusY); SString ss = props["InputStatusSize"]; ss.append((char)0); int statusWidth, statusHeight; sscanf(ss.array(), "%d,%d", &statusWidth, &statusHeight); XRectangle statusArea; statusArea.width = statusWidth; statusArea.height = statusHeight; statusArea.x = statusX; SString col = props["InputStatusColor"]; col.append ((char)0); unsigned long sbg, sfg; sscanf (col.array(), "%lu,%lu", &sbg, &sfg); SX11Color sxbg = SX11Color(impl, (SS_WORD32)sbg); SX11Color sxfg = SX11Color(impl, (SS_WORD32)sfg); col = props["InputClientColor"]; col.append ((char)0); unsigned long cbg, cfg; sscanf (col.array(), "%lu,%lu", &cbg, &cfg); SX11Color cxbg = SX11Color(impl, (SS_WORD32)cbg); SX11Color cxfg = SX11Color(impl, (SS_WORD32)cfg); XVaNestedList sa = XVaCreateNestedList (0, XNForeground , sxfg.getPixelValue(), XNBackground , sxbg.getPixelValue(), XNFontSet, fontSet, XNArea, &statusArea, (char *) 0x0); XPoint spot = {1, 1}; XVaNestedList ca = XVaCreateNestedList (0, XNForeground , cxfg.getPixelValue(), XNBackground , cxbg.getPixelValue(), XNSpotLocation, &spot, XNFontSet, fontSet, (char *) 0x0); if (sa==0 || ca==0) { XCloseIM(xim); xim = 0; fprintf (stderr, "Can not create XVaNestedList.\n"); return false; } /* I can do this only in the same window */ xic = XCreateIC(xim, XNInputStyle, code, XNClientWindow, (Window) id, XNFocusWindow, (Window) id, XNPreeditAttributes, ca, XNStatusAttributes, sa, (char *) 0x0); XFree (ca); XFree (sa); } else /* preedit-root-status-root */ { xic = XCreateIC(xim, XNInputStyle, code, XNClientWindow, (Window) id, XNFocusWindow, (Window) id, (char *) 0x0); } if (xic==0) { XCloseIM(xim); xim = 0; fprintf (stderr, "Could not create XIC from XIM\n"); return false; } /* is it int and not long? */ int xim_ev_mask = 0; XGetICValues (xic , XNFilterEvents , &xim_ev_mask , NULL); xim_ev_mask |= KeyPressMask|KeyReleaseMask; XSetICValues (xic , XNFilterEvents , &xim_ev_mask , NULL); //XSetICValues(xic, XNResetState, XIMPreserveState, (char *) 0x0); eventMask |= xim_ev_mask; XSelectInput (impl->display, (Window) id, eventMask); XSetICFocus (xic); /* is it good ? */ setProperties (props); //XSetInputFocus (impl->display, (Window) id, RevertToNone, CurrentTime); return status; } /** * I tested it - never worked - gaspar */ void destroyIMCB (XIM xim, XPointer p0, XPointer p1) { fprintf (stderr, "X Input server crashed.\n"); *((XIM*)p0) = 0; } const SString& SXInputMethod::getICEncoding () const { return icEncoding; } XIC SXInputMethod::getIC () { if (name == ATOM_KINPUT2) return 0; if ((xic == 0 || xim == 0) && !isAsciiInput()) { createIC ("x-ascii", SProperties()); fprintf (stderr, "x-ascii %lx", (unsigned long) xic); } return xic; } ./swindow/sx11/SX11Impl.cpp0000644000175000017500000015537111326775623015375 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/sx11/SX11Impl.h" #include "swindow/sx11/SX11Window.h" #include "swindow/sx11/SX11Font.h" #include #include #ifdef HAVE_LOCALE #include #endif #define XK_MISCELLANY #define XK_LATIN1 #include #include #include static SWindowListener::SKey keySymOf (KeySym sym); static SX11Window* keyboardFocusWindow = 0;; static SX11Window* lastKeyboardFocusWindow = 0;; static bool isAncestor (Display * d, long root, long parent, long w); extern "C" { int handleX11Errors (Display *, XErrorEvent *); } /** * This should be 1. */ static bool hasJob=true; long SX11Impl::getAnyWindow() { return (long) root; } /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ SX11Impl::SX11Impl(void) : in (SEventSource::SOCKET, 0) { // This hopefully will help yudit start faster. #ifdef HAVE_LOCALE setlocale (LC_CTYPE, "C"); #endif xdndSource = None; acceptedDataTypeAtom = None; accelPressed = false; clipOwner = None; clipBuffer = ""; encoder = SEncoder("iso-2022-x11"); display = XOpenDisplay (0); job = new SJob(); needFocusWhenMapped = 0; if (display == 0) { fprintf(stderr, "Can not open display.\n"); } else { XSetErrorHandler (handleX11Errors); screen = DefaultScreen (display); root = RootWindow (display, screen); border= 0; shown = 0; background = WhitePixel (display, screen); foreground = BlackPixel (display, screen); rectangle.x = SD_WIN_X; rectangle.y = SD_WIN_Y; rectangle.width = SD_WIN_W; rectangle.height = SD_WIN_H; wmProtocols = XInternAtom (display, "WM_PROTOCOLS", False); wmDeleteWindow = XInternAtom (display, "WM_DELETE_WINDOW", False); SInputStream is(SEventSource::SOCKET, XConnectionNumber (display)); in = is; //fprintf (stderr, "X11 socket=%d\n", XConnectionNumber (display)); SEventHandler::addInput (&in, this); SEventHandler::addJob (job, this); visual = DefaultVisual (display, screen); colormap = XDefaultColormap (display, screen); cellCount = XDisplayCells (display, screen); XFlush (display); Window root_return; int x_return, y_return; unsigned int width_return, height_return; unsigned int border_width_return; unsigned int depth_return; rootWidth = 0; rootHeight = 0; if (XGetGeometry (display, root, &root_return, &x_return, &y_return, &width_return, &height_return, &border_width_return,&depth_return)) { rootWidth = width_return; rootHeight = height_return; } } } SX11Impl::~SX11Impl() { if (clipOwner != None) { XSetSelectionOwner (display, XA_PRIMARY, None, CurrentTime); } if (display != 0) { XCloseDisplay (display); delete job; } } bool SX11Impl::isOK() { return (display != 0); } /** * The SEventTarget */ int SX11Impl::readable(const SEventSource* s) { if (display == 0) { return 0; } if (!hasJob) { //fprintf (stderr, "Adding job..\n"); // SEventHandler::addJob (job, this); } return 0; } /** * Process X11 events in a loop * @return true if at least one event was found. */ bool SX11Impl::doXLoop() { if (display == 0) { return false; } XFlush (display); bool done1 = false; while (doX()) { done1 = true; } return done1; } /** * Process one X11 event * @return true if at least one event was found. */ bool SX11Impl::doX() { if (display == 0) { return false; } if (!XPending(display)) { return false; } /* block - true */ { /* we dont process things in a nomral socket event looop. */ /* everything is moved to job - done. */ XEvent event; /* NextEvent sucks in all events from socket, and pass the first queued. */ XNextEvent (display, &event); /* XIC needs this */ if (keyboardFocusWindow != 0 && (event.type == KeyPress || event.type == KeyRelease)) { event.xkey.window = (Window)keyboardFocusWindow->getID(); event.xkey.subwindow = None; /* This precaution is because if input method dies....*/ if (!keyboardFocusWindow->isAsciiInput()) { if (XFilterEvent (&event, event.xkey.window)) { return true; } } } else if (XFilterEvent(&event, None)) { return true; } /* Pixmap Copy */ if (event.xany.type == NoExpose) return true; /* event handlers are our first priority */ SString ekey((long)event.xany.window); ekey.append (SString ((long) event.xany.type)); /* process all drag and drop thingy here */ if (event.xany.type == PropertyNotify || event.xany.type==ClientMessage) { if (dndEvent (event)) { return true; } } SXEventHandler*h = eventHandlerTable.get (ekey); if (h != 0) { /* if false is returned we need to process this event */ if (h->handleEvent (event)) { return true; } } Window w = event.xany.window; SX11Window* sw = (SX11Window*) windowHashtable.get((long)w); XEvent peekEvent; XEvent lastEvent; int butt = 0; /** * -------------------------------------------------------------------- * Nothing is perfect. This is my if block... * TODO: major cleanup. * -------------------------------------------------------------------- */ if (event.type == KeyPress || event.type == KeyRelease) { if (keyboardFocusWindow != 0) { sw = keyboardFocusWindow; } else { sw = 0; } } /* ConfigureNotify window is false. we need the window that changed. */ else if (event.type == ConfigureNotify) { sw = (SX11Window*) windowHashtable.get((long) event.xconfigure.window); } /** * Map and unmap has fuxxy modal processing. TODO: cleanup */ else if (event.type == UnmapNotify || event.type == MapNotify) { /* bool debug = (sw->getWidth() == 20 && sw->getHeight() == 359); debug = debug || (sw->getWidth() == 10 && sw->getHeight() == 200); if (debug && event.type == UnmapNotify) fprintf(stderr, "UnmapNotify\n"); if (debug && event.type == MapNotify) fprintf(stderr, "MapNotify\n"); */ sw = (SX11Window*) windowHashtable.get((long) event.xunmap.window); if (sw!=0) { //TODO remove mapNotified totally sw->mapNotified = (event.type == MapNotify); /* for child windows we dont get redraw, only Map. */ if (sw->mapNotified && !sw->isChild) { addRedrawChildrenEvent (sw->getID(), SRedrawEvent (false, 0, 0, sw->getWidth(), sw->getHeight())); } } /** *-------------------------------------------------------------------- * Modal Checks *-------------------------------------------------------------------- */ if (sw !=0 && sw->isModal()) { /* add to modal stack, or remove from it */ unsigned int modalIndex=0; /* earch foir this modal box... */ for (modalIndex=0; modalIndexgetID()) { break; } } /* modalIndex is model index. */ if (event.type == MapNotify) { SX11Window* foc = (keyboardFocusWindow==0) ? lastKeyboardFocusWindow : keyboardFocusWindow; long fid = (foc==0) ? 0 : foc->getID(); /** * Not yet on stack add to stack */ if (modalIndex==modalStack.size()) { modalStack.append (sw->getID()); modalFocusStack.append (fid); getKeyboardFocus (sw); } } else { /* * Remove from modal stack */ if (modalIndexgetID()); if (l == 0) { return true; } SWindowListener* lf = 0; /** * -------------------------------------------------------------------- * X11 event switch * -------------------------------------------------------------------- */ switch (event.type) { case EnterNotify: if (l && sw) { l->enterWindow(sw); } break; case LeaveNotify: if (l && sw) { l->leaveWindow(sw); } break; case SelectionClear: case SelectionNotify: case SelectionRequest: clipEvent (event); break; case KeyPress: case KeyRelease: { /* events that hapen during conversion that dont have sent_event * set should be ignored */ /* Don't try to make this bigger because it will screw up Xutf8LookupString at and above 65 (try newline in ami) */ char asci[64]; KeySym key = 0; XIC ic = sw->getIC(); SString enc = sw->getICEncoding(); Status status_return; int cnt = 0; SString s; if (sw->isAsciiInput() || ic==0) { // Attempted modification to get utf-8 string instead of ascii. // ic is 0 segfault // #ifdef X_HAVE_UTF8_STRING #if 0 if (ic==0) { cnt = Xutf8LookupString (0, &event.xkey, asci, sizeof (asci), &key, &status_return); if (status_return==XLookupChars || XLookupBoth) { s = SString (asci, (unsigned int)cnt); } } else { cnt = XLookupString (&event.xkey, asci, sizeof (asci), &key, 0); status_return = 1; s = SString (asci, (unsigned int)cnt); } #else cnt = XLookupString (&event.xkey, asci, sizeof (asci), &key, 0); status_return = 1; s = SString (asci, (unsigned int)cnt); #endif } else if (enc.size()>0) { cnt = XmbLookupString (ic, &event.xkey, asci, sizeof (asci), &key, &status_return); if (status_return==XLookupChars || XLookupBoth) { SEncoder dec (enc); SString str (asci, (unsigned int)cnt); SV_UCS4 sv = dec.decode (str); SEncoder enc ("utf-8-s"); s = enc.encode (sv); } } else { #ifdef X_HAVE_UTF8_STRING cnt = Xutf8LookupString (ic, &event.xkey, asci, sizeof (asci), &key, &status_return); if (status_return==XLookupChars || XLookupBoth) { s = SString (asci, (unsigned int)cnt); } #else cnt = XmbLookupString (ic, &event.xkey, asci, sizeof (asci), &key, &status_return); if (status_return==XLookupChars || status_return==XLookupBoth) { s = SString (asci, (unsigned int)cnt); } #endif } if (cnt == 0 && (key & 0xff000000) == 0x01000000) { SV_UCS4 ucs4; ucs4.append ((SS_UCS4)(key & 0x00ffffff)); SEncoder enc ("utf-8-s"); s = enc.encode (ucs4); status_return = 0; } bool ctrl = (event.xkey.state & ControlMask) ? true : false; bool shift = (event.xkey.state & ShiftMask) ? true : false; bool meta = (event.xkey.state & Mod1Mask) ? true : false; SWindowListener::SKey skey = status_return ? keySymOf(key) : SWindowListener::Key_Undefined; if (event.type==KeyPress) { /* Let kinput2 deal with the event. */ /* FIXME: Works fine, but too naive. Ideally, we should devise * a mechanism that harmonizes the key bindings of yudit with * those of an XIM. */ if (sw->isKInput() && (ctrl || meta)) break; if (sendAcceleratorPressed ((int) skey, ctrl, shift, meta)) break; /* in case we forgot to get this. */ if (sendAcceleratorReleased ()) break; } else { if (sendAcceleratorReleased ()) break; } if (!event.xkey.send_event && sw->isKInput() && sw == keyboardFocusWindow) { //fprintf (stderr, "Ignoreing keys.\n"); if (event.type==KeyRelease) { l->keyReleased (sw, skey, s, ctrl, shift, meta); } break; } if (isOKToDeliver (sw->getID())) { if (event.type==KeyPress) { l->keyPressed (sw, skey, s, ctrl, shift, meta); } else { l->keyReleased (sw, skey, s, ctrl, shift, meta); } } } break; case ConfigureNotify: if (needFocusWhenMapped == sw->getID()) { if (getKeyboardFocus (sw)) needFocusWhenMapped = 0; } /* { bool debug = (sw->getWidth() == 20 && sw->getHeight() == 359); debug = debug || (sw->getWidth() == 10 && sw->getHeight() == 200); if (debug) fprintf (stderr, "ConfigureNotify %lx: %u,%u\n", (unsigned long) sw, event.xconfigure.width, event.xconfigure.height); } */ //if (sw->isChild) break; sw->setPosition( event.xconfigure.x, event.xconfigure.y); sw->setSize( event.xconfigure.width, event.xconfigure.height); l->resized (sw, event.xconfigure.x, event.xconfigure.y, event.xconfigure.width, event.xconfigure.height); break; case FocusIn: /* Return the focus */ if (lastKeyboardFocusWindow != 0 && keyboardFocusWindow == 0) { keyboardFocusWindow = lastKeyboardFocusWindow; lf = listenerHashtable.get(lastKeyboardFocusWindow->getID()); if (lf != 0) { lf->gainedKeyboardFocus (lastKeyboardFocusWindow); } } if (lastKeyboardFocusWindow != 0) { keyboardFocusWindow = lastKeyboardFocusWindow; } if (keyboardFocusWindow != sw && keyboardFocusWindow!=0) { /* wierd eh? we receive a gained focus event, but it is not us! */ /* Gaspar 2007-12-07 Commented out because this can cause an infinite loop. if (keyboardFocusWindow->isVisible()) { XSetInputFocus (display, (Window) keyboardFocusWindow->getID(), RevertToNone, CurrentTime); } */ } break; case FocusOut: if (keyboardFocusWindow != 0) { lf = listenerHashtable.get(keyboardFocusWindow->getID()); if (lf != 0) { lf->lostKeyboardFocus (keyboardFocusWindow); } keyboardFocusWindow = 0; } break; case ClientMessage: if ((Atom)event.xclient.message_type == wmProtocols && (Atom)event.xclient.data.l[0] == wmDeleteWindow && event.xclient.format == 32) { if (l->windowClose (sw) == true) { delete sw; } } break; case Expose: //TODO remove mapNotified totally //if (!sw->mapNotified) return true; addRedrawEvent ((long) event.xexpose.window, SRedrawEvent (false, event.xexpose.x, event.xexpose.y, event.xexpose.width, event.xexpose.height)); break; case GraphicsExpose: //TODO remove mapNotified totally if (!sw->mapNotified) return true; addRedrawEvent (event.xany.window, SRedrawEvent (false, event.xgraphicsexpose.x, event.xgraphicsexpose.y, event.xgraphicsexpose.width, event.xgraphicsexpose.height)); break; case MotionNotify: if (!isOKToDeliver (sw->getID())) break; if (event.xmotion.state & Button2MotionMask) { butt = 0; } else if (event.xmotion.state & Button2MotionMask) { butt = 1; } else if (event.xmotion.state & Button3MotionMask) { butt = 2; } /* Event compression */ lastEvent = event; while (XEventsQueued (display, QueuedAfterFlush)) { XPeekEvent (display, &peekEvent); if (peekEvent.type == MotionNotify && peekEvent.xmotion.window == event.xmotion.window && peekEvent.xmotion.state == event.xmotion.state) { XNextEvent (display, &lastEvent); } else { break; } } l->buttonDragged (sw, butt, lastEvent.xbutton.x, lastEvent.xbutton.y); break; case ButtonRelease: if (!isOKToDeliver (sw->getID())) break; if (event.xbutton.button == Button1) { l->buttonReleased (sw, 0, event.xbutton.x, event.xbutton.y); } else if (event.xbutton.button == Button2) { l->buttonReleased (sw, 1, event.xbutton.x, event.xbutton.y); } else if (event.xbutton.button == Button3) { l->buttonReleased (sw, 2, event.xbutton.x, event.xbutton.y); } break; case ButtonPress: if (!isOKToDeliver (sw->getID())) break; //Enable Mousewheel functions (Addition by Maarten van Gompel if (event.xbutton.button == Button1) { l->buttonPressed (sw, 0, event.xbutton.x, event.xbutton.y); } else if (event.xbutton.button == Button2) { l->buttonPressed (sw, 1, event.xbutton.x, event.xbutton.y); } else if (event.xbutton.button == Button3) { l->buttonPressed (sw, 2, event.xbutton.x, event.xbutton.y); } else if (event.xbutton.button == Button4) { l->buttonPressed (sw, 3, event.xbutton.x, event.xbutton.y); } else if (event.xbutton.button == Button5) { l->buttonPressed (sw, 4, event.xbutton.x, event.xbutton.y); } break; case DestroyNotify: break; } } return true; } /** * The job is processing all events, and iafter that it processes * the redrawEventTable */ bool SX11Impl::done (const SEventSource* s) { hasJob = false; //static unsigned int ccount=0; doXLoop (); /* this will process readable */ SRedrawEventTable t; /* redraw block */ do { t.clear(); t = redrawEventTable; redrawEventTable.clear(); for (unsigned int i=0; igetID()); if (li == 0) { fprintf (stderr, "Window listener for %ld not found.\n", wid); continue; } //Pixmap e = imageCache.get (i, j); //if (e != 0) XFreePixmap (impl->display, e); // Flicker free //Pixmap p = XCreatePixmap (display, (Window) wid, // evt->width, evt->height, depth) //if (!swid->mapNotified) continue; SX11Region region (evt->x, evt->y, evt->width, evt->height); if (evt->width == 0 || evt->height == 0) { region.x = 0; region.y = 0; region.width = swid->getWidth(); region.height = swid->getHeight(); } swid->beginDoubleBuffer (region); if (!swid->isDoubleBufferEnabled() && evt->clear) { if (evt->width != 0 && evt->height != 0) { swid->clear (evt->x, evt->y, evt->width, evt->height); } } /* This is the first expose. */ if (evt->width == 0 || evt->height == 0) { li->redraw (swid, 0, 0, swid->getWidth(), swid->getHeight()); } else { //if (swid->getWidth() == 20) //fprintf (stderr, "Window redraw list=%lx evt.size=%u,%u\n", // (unsigned long) li, evt->width, evt->height); li->redraw (swid, evt->x, evt->y, evt->width, evt->height); } swid->endDoubleBuffer (region); } } } while (doXLoop()); hasJob = true; SEventHandler::addJob (job, this); return false; } /** * Add a collapsing window redraw, for all children only, same event. * aparam id is the id of the window. * We assume all chidren are smaller than parent :) * @param evt is the event. */ void SX11Impl::addRedrawChildrenEvent (long id, const SRedrawEvent& evt) { /* FIXME: finish addRedrawChildrenEvent and get rid of this */ /* this will generate expose event fro child windows. */ //fprintf (stderr, "addRedrawChildrenEvent\n"); //XMapSubwindows (display, (Window) id); } /** * Add a collapsing window redraw. * aparam id is the id of the window. * @param evt is the event. */ void SX11Impl::addRedrawEvent (long id, const SRedrawEvent& evt) { SVector save; /* multiple keys */ SRedrawEvent newEvt (evt); const SRedrawEvent* old = 0; while ((old = redrawEventTable.get (id))) { if (newEvt.merge (*old)) { redrawEventTable.remove (id); break; // ? continue } save.append (*old); redrawEventTable.remove (id); } for (unsigned int i=0; i save; const SRedrawEvent* old = 0; while ((old=redrawEventTable.get (id))) { save.append (*old); redrawEventTable.remove (id); } //fprintf (stderr, "moveRedrawEvent %u\n", save.size()); for (unsigned int i=0; iisShown()) shown--; if (shown==0) { SEventHandler::remove (&in); //fprintf (stderr, "FINISHED.\n"); } if ((SWindow*)keyboardFocusWindow == w) { keyboardFocusWindow = 0; lastKeyboardFocusWindow = 0; } } void SX11Impl::show (long id) { if (display == 0) return; XMapRaised (display, (Window) id); //XFlush(display); SX11Window* sw = (SX11Window*) windowHashtable.get(id); if (sw->isShown() == false) shown++; } void SX11Impl::hide (long id) { if (display == 0) return; XUnmapWindow (display, (Window) id); XFlush(display); SX11Window* sw = (SX11Window*) windowHashtable.get(id); if (sw->isShown() == true) shown--; } /** * Please implement this to get a new toplvele window with * a title. */ SWindow* SX11Impl::getWindow (SWindowListener* l, const SString& name) { if (display == 0) return 0; Window w = XCreateSimpleWindow (display, root, rectangle.x, rectangle.y, rectangle.width, rectangle.height, border, foreground, background); char* n = name.cString(); XClassHint classHints; classHints.res_name = n; classHints.res_class = n; XWMHints wmHints; wmHints.initial_state = NormalState; wmHints.input = True; wmHints.flags = StateHint | InputHint; XSetWMProperties (display, w, 0, 0, 0, 0, 0, &wmHints, &classHints); XSetWMProtocols (display, w, &wmDeleteWindow, 1); XStoreName (display, w, n); delete n; SX11Window* sx11 = new SX11Window (name, this, w); listenerHashtable.put ((long)w, l); XFlush(display); return sx11; } /** * Get an X11 native font. */ SFontNative* SX11Impl::getFont (const SString& encoding) { SX11Font* x11font = new SX11Font (this, encoding); return x11font; } bool SX11Impl::getKeyboardFocus (SWindow *w) { if ((SWindow*) keyboardFocusWindow == w) return true; if (!((SX11Window*)w)->isVisible()) { needFocusWhenMapped = ((SX11Window*)w)->getID(); //fprintf (stderr, "focus gaining delayed.\n"); return false; } if (keyboardFocusWindow != 0) { SWindowListener* l = listenerHashtable.get(keyboardFocusWindow->getID()); if (l != 0) { l->lostKeyboardFocus (keyboardFocusWindow); } } XSetInputFocus (display, (Window) ((SX11Window*)w)->getID(), RevertToNone, CurrentTime); XFlush (display); keyboardFocusWindow = (SX11Window*) w; lastKeyboardFocusWindow = keyboardFocusWindow; return true; } /** * convert KeySym to SWindowListener::SKey */ static SWindowListener::SKey keySymOf (KeySym sym) { switch (sym) { case XK_a: return SWindowListener::Key_a; case XK_A: return SWindowListener::Key_A; case XK_b: return SWindowListener::Key_b; case XK_B: return SWindowListener::Key_B; case XK_c: return SWindowListener::Key_c; case XK_C: return SWindowListener::Key_C; case XK_d: return SWindowListener::Key_d; case XK_D: return SWindowListener::Key_D; case XK_e: return SWindowListener::Key_e; case XK_E: return SWindowListener::Key_E; case XK_f: return SWindowListener::Key_f; case XK_F: return SWindowListener::Key_F; case XK_g: return SWindowListener::Key_g; case XK_G: return SWindowListener::Key_G; case XK_h: return SWindowListener::Key_h; case XK_H: return SWindowListener::Key_H; case XK_i: return SWindowListener::Key_i; case XK_I: return SWindowListener::Key_I; case XK_j: return SWindowListener::Key_j; case XK_J: return SWindowListener::Key_J; case XK_k: return SWindowListener::Key_k; case XK_K: return SWindowListener::Key_K; case XK_l: return SWindowListener::Key_l; case XK_L: return SWindowListener::Key_L; case XK_m: return SWindowListener::Key_m; case XK_M: return SWindowListener::Key_M; case XK_n: return SWindowListener::Key_n; case XK_N: return SWindowListener::Key_N; case XK_o: return SWindowListener::Key_o; case XK_O: return SWindowListener::Key_O; case XK_p: return SWindowListener::Key_p; case XK_P: return SWindowListener::Key_P; case XK_q: return SWindowListener::Key_q; case XK_Q: return SWindowListener::Key_Q; case XK_r: return SWindowListener::Key_r; case XK_R: return SWindowListener::Key_R; case XK_s: return SWindowListener::Key_s; case XK_S: return SWindowListener::Key_S; case XK_t: return SWindowListener::Key_t; case XK_T: return SWindowListener::Key_T; case XK_u: return SWindowListener::Key_u; case XK_U: return SWindowListener::Key_U; case XK_x: return SWindowListener::Key_x; case XK_X: return SWindowListener::Key_X; case XK_y: return SWindowListener::Key_y; case XK_Y: return SWindowListener::Key_Y; case XK_v: return SWindowListener::Key_v; case XK_V: return SWindowListener::Key_V; case XK_w: return SWindowListener::Key_w; case XK_W: return SWindowListener::Key_W; case XK_z: return SWindowListener::Key_z; case XK_Z: return SWindowListener::Key_Z; case XK_Shift_L: return SWindowListener::Key_Shift_R; case XK_Shift_R: return SWindowListener::Key_Shift_L; case XK_Control_L: return SWindowListener::Key_Control_R; case XK_Control_R: return SWindowListener::Key_Control_L; case XK_Alt_L: return SWindowListener::Key_Alt_L; case XK_Alt_R: return SWindowListener::Key_Alt_R; case XK_Meta_L: return SWindowListener::Key_Meta_L; case XK_Meta_R: return SWindowListener::Key_Meta_R; case XK_Tab: return SWindowListener::Key_Tab; case XK_Left: return SWindowListener::Key_Left; case XK_Right: return SWindowListener::Key_Right; case XK_Up: return SWindowListener::Key_Up; case XK_Down: return SWindowListener::Key_Down; case XK_Prior: return SWindowListener::Key_Prior; case XK_Next: return SWindowListener::Key_Next; case XK_Return: return SWindowListener::Key_Return; case XK_KP_Enter: return SWindowListener::Key_Enter; case XK_Home: return SWindowListener::Key_Home; case XK_End: return SWindowListener::Key_End; case XK_Delete: return SWindowListener::Key_Delete; case XK_BackSpace: return SWindowListener::Key_BackSpace; case XK_Clear: return SWindowListener::Key_Clear; case XK_KP_Space: return SWindowListener::Key_Space; case XK_Escape: return SWindowListener::Key_Escape; case XK_F1: return SWindowListener::Key_F1; case XK_F2: return SWindowListener::Key_F2; case XK_F3: return SWindowListener::Key_F3; case XK_F4: return SWindowListener::Key_F4; case XK_F5: return SWindowListener::Key_F5; case XK_F6: return SWindowListener::Key_F6; case XK_F7: return SWindowListener::Key_F7; case XK_F8: return SWindowListener::Key_F8; case XK_F9: return SWindowListener::Key_F9; case XK_F10: return SWindowListener::Key_F10; case XK_F11: return SWindowListener::Key_F11; case XK_F12: return SWindowListener::Key_F12; } return SWindowListener::Key_Undefined; } void SX11Impl::setXEventHandler (long id, long type, SXEventHandler* h) { SString key(id); key.append (SString (type)); eventHandlerTable.put (key, h); } void SX11Impl::removeXEventHandler (long id, long type) { SString key(id); key.append (SString (type)); eventHandlerTable.remove (key); } /** * Send this string to a window. * @param id is the window id. * @param string is an utf8 string. */ void SX11Impl::sendString (long id, const SString& s) { SX11Window* sw = (SX11Window*) windowHashtable.get(id); if (sw == 0 || sw != keyboardFocusWindow) return; SWindowListener* l = listenerHashtable.get(sw->getID()); if (l == 0) return; l->keyPressed (sw, SWindowListener::Key_Send, s, false, false, false); } /** * get an utf-8 string from clipboard. * FIXME */ SString SX11Impl::getClipUTF8(long id) { Window owner; SEncoder utf8e; // If we own the selection ourselves, no need for interprocess // communication. if (clipOwner==(owner=XGetSelectionOwner (display, XA_PRIMARY))) { return SString(clipBuffer); } clipBuffer.clear(); clipOwner = None; // Try UTF8_STRING first. clipBuffer = getSelectionData (XA_PRIMARY, toAtom("UTF8_STRING"), id, CurrentTime); if (clipBuffer.size()) { //fprintf (stderr, "SX11Impl::getClipUTF8: got UTF8_STRING\n"); return SString(clipBuffer); } // Then try COMPOUND_TEXT. clipBuffer = getSelectionData (XA_PRIMARY, toAtom("COMPOUND_TEXT"), id, CurrentTime); if (clipBuffer.size()) { //fprintf (stderr, "SX11Impl::getClipUTF8: got COMPOUND_TEXT\n"); clipBuffer = utf8e.encode (encoder.decode(clipBuffer)); return SString (clipBuffer); } // Finally try STRING. clipBuffer = getSelectionData (XA_PRIMARY, XA_STRING, id, CurrentTime); if (clipBuffer.size()) { //fprintf (stderr, "SX11Impl::getClipUTF8: got XA_STRING\n"); SEncoder iso_1("iso-8859-1"); clipBuffer = utf8e.encode (iso_1.decode(clipBuffer)); return SString (clipBuffer); } return SString(clipBuffer); } void SX11Impl::setEncoding(const SString& str) { SEncoder enc = SEncoder (str); if (!enc.isOK()) { fprintf (stderr, "SX11 clipboard encoder `%*.*s' unknown\n", SSARGS(str)); } else { encoder = enc; } } /** * This is getting data * using any selection. * @param dataName is the selection name. for clipboard we use * XA_PRIMARY and for drag and drop we use XdndSelection * @param dataType is the dataType. * @param id is the window id which asks for conversion * @param _time is a timestamp. */ SString SX11Impl::getSelectionData (Atom dataName, Atom dataType, long id, Time _time) { // use encoder to encode. XEvent xevent; time_t start; Atom propty; propty = toAtom ("YUDIT_SELECTION");; XConvertSelection (display, dataName, dataType, propty, (Window)id, _time ); XFlush (display); for (start = time (0); ; ) { if (XCheckTypedWindowEvent(display, (Window)id, SelectionNotify, &xevent)) { break; } if (time (0) - start >= 8) { fprintf (stderr, "warn: clipboard timeout.\n"); return SString(); } } return getPropertyData (xevent.xselection.requestor, propty, 8); } /** * Get the property data of the window. * @param window is the window that has the property * @param property * @param format - only 8 is tested. */ SString SX11Impl::getPropertyData (Window window, Atom property, int format) { // FIXME: This does not deal with INCR properties. int propformat; unsigned long propsize; unsigned long rest; unsigned char* propvalue; Atom proptype; SString result; int count = 0; /* Read the propty from the selection owner's window */ while (Success==XGetWindowProperty (display, window, property, count, 100000L, True, AnyPropertyType, &proptype, &propformat, &propsize, &rest, &propvalue)) { if (propvalue==0) { break; } if (propsize==0 || propformat != format) { XFree (propvalue); break; } result.append (SString((char*)propvalue, propsize)); XFree (propvalue); count += propsize; if (rest==0) break; } return SString (result); } /** * put an utf-8 string to clipboard * This is using the XA_PRIMARY selection. */ void SX11Impl::putClipUTF8 (long id, const SString& utf8) { //fprintf (stderr, "FIXME: putClipUTF8\n"); SWindowListener* l; SX11Window* sw; if (clipOwner != (Window) id && clipOwner != None) { l = listenerHashtable.get((long)clipOwner); sw = (SX11Window*) windowHashtable.get((long)clipOwner); if (l && sw) { l->lostClipSelection (sw); } } l = listenerHashtable.get((long)id); sw = (SX11Window*) windowHashtable.get((long)clipOwner); clipOwner = None; XSetSelectionOwner (display, XA_PRIMARY, (Window) id, CurrentTime); if (XGetSelectionOwner (display, XA_PRIMARY) != (Window) id) { /* Oops */ clipOwner = None; if (l && sw) { fprintf (stderr, "XGetSelectionOwner oops\n"); l->lostClipSelection (sw); } return; } clipOwner = (Window) id; clipBuffer = utf8; } /** * process the following events: *
      *
    • SelectionClear
    • *
    • SelectionNotify
    • *
    • SelectionRequest
    • *
        * @param event is the event to process. */ void SX11Impl::clipEvent (const XEvent& event) { SWindowListener* l = listenerHashtable.get((long)clipOwner); SX11Window* sw = (SX11Window*) windowHashtable.get((long)clipOwner); XSelectionRequestEvent sel = event.xselectionrequest; XEvent xevent; SEncoder utf8e; SString str; if (sw == 0 || sw->getID() != (long)event.xany.window) { fprintf (stderr, "oops SX11Impl::clipEvent - clear.\n"); return; } switch (event.type) { case SelectionClear: //fprintf (stderr, "clipevent - clear.\n"); if (l && sw) { l->lostClipSelection (sw); } clipOwner = None; return; case SelectionNotify: //fprintf (stderr, "clipevent - notify.\n"); clipOwner = None; return; case SelectionRequest: /* FIXME: This does not answer MULTIPLE and TIMESTAMP requests. */ if (sel.target == XInternAtom(display,"TARGETS",False)) { //fprintf (stderr, "clipevent - targets.\n"); Atom* targets = new Atom[5]; targets[0] = XInternAtom(display,"TARGETS",False); targets[1] = XInternAtom(display,"TEXT",False); targets[2] = XA_STRING; targets[3] = XInternAtom(display,"COMPOUND_TEXT",False); targets[4] = XInternAtom(display,"UTF8_STRING",False); XChangeProperty (sel.display, sel.requestor, sel.property, XA_ATOM, 32, PropModeReplace, (unsigned char *) targets, 5); delete[] targets; } else if (sel.target == XInternAtom(display,"UTF8_STRING",False)) { //fprintf (stderr, "clipevent - utf8.\n"); // Asked for TEXT or UTF8_STRING -> answer with UTF8_STRING. XChangeProperty (sel.display, sel.requestor, sel.property, XInternAtom(display,"UTF8_STRING",False), 8, PropModeReplace, (const unsigned char*) clipBuffer.array(), clipBuffer.size()); } else if (sel.target == XInternAtom(display,"TEXT",False) || sel.target == XInternAtom(display,"COMPOUND_TEXT",False)) { //fprintf (stderr, "clipevent - compound.\n"); // Asked for COMPOUND_TEXT -> answer with COMPOUND_TEXT if convertible. str=encoder.encode (utf8e.decode (clipBuffer)); XChangeProperty (sel.display, sel.requestor, sel.property, XInternAtom(display,"COMPOUND_TEXT", False), 8, PropModeReplace, (const unsigned char*) str.array(), str.size()); } else if (sel.target == XA_STRING) { //fprintf (stderr, "clipevent - string.\n"); // Asked for STRING -> answer with STRING if convertible. SEncoder iso_1("iso-8859-1"); str=iso_1.encode (utf8e.decode (clipBuffer)); XChangeProperty (sel.display, sel.requestor, sel.property, XA_STRING, 8, PropModeReplace, (const unsigned char*) str.array(), str.size()); } else { sel.property = None; } xevent.xselection.type = SelectionNotify; xevent.xselection.display = sel.display; xevent.xselection.requestor = sel.requestor; xevent.xselection.selection = sel.selection; xevent.xselection.target = sel.target; xevent.xselection.property = sel.property; xevent.xselection.time = sel.time; XSendEvent (sel.display, sel.requestor, False, 0, &xevent); break; default: break; } } void SX11Impl::addAccelerator (long id, const SAccelerator& a) { acceleratorTable.put (a.toString(), id); //fprintf (stderr, "accel added %*.*s\n", SSARGS(a.toString())); } void SX11Impl::removeAccelerator (long id, const SAccelerator& a) { acceleratorTable.remove (a.toString()); } bool SX11Impl::sendAcceleratorPressed (int key, bool ctrl, bool shift, bool meta) { if (accelPressed) return true; if (modalStack.size()!=0) return false; currentAccelerator = SAccelerator (key, ctrl, shift, meta); //fprintf (stderr, "accel pressed %*.*s\n", // SSARGS(currentAccelerator.toString())); long id = acceleratorTable.get (currentAccelerator.toString()); if (id ==0) return false; SX11Window* sw = (SX11Window*) windowHashtable.get(id); if (sw ==0) return false; accelPressed = true; sw->_acceleratorPressed (currentAccelerator); return true; } bool SX11Impl::sendAcceleratorReleased () { if (!accelPressed) return false; if (modalStack.size()!=0) return false; long id = acceleratorTable.get (currentAccelerator.toString()); if (id ==0) { accelPressed = false; return true; } SX11Window* sw = (SX11Window*) windowHashtable.get(id); if (sw ==0) { accelPressed = false; return true; } accelPressed = false; sw->_acceleratorReleased (currentAccelerator); return true; } /** * This is a really minimal implementation of xdnd target. */ bool SX11Impl::dndEvent (const XEvent& event) { //char* an; switch (event.xany.type) { case ClientMessage: //fprintf (stderr, "SX11Impl::clientMessage\n"); if (event.xclient.message_type == toAtom("XdndEnter")) { xdndEnter (event); return true; } if (event.xclient.message_type == toAtom("XdndPosition")) { xdndPosition (event); return true; } if (event.xclient.message_type == toAtom("XdndDrop")) { xdndDrop (event); return true; } if (event.xclient.message_type == toAtom("XdndLeave")) { xdndLeave (event); return true; } /* old kde */ if (event.xclient.message_type == toAtom("DndProtocol")) { dndProtocol (event); return true; } #if 0 an = XGetAtomName(display, (Atom)event.xclient.message_type); if (an) { fprintf (stderr, "Client Message not handled: %s\n", an); XFree (an); } else { fprintf (stderr, "Client Message not handled: %d\n", (int)event.xclient.message_type); } #endif return false; case PropertyNotify: //fprintf (stderr, "SX11Impl::propertyNotify\n"); return false; //default: //fprintf (stderr, "SX11Impl::xdndEvent unknown - %d\n", event.xany.type); } return false; } /** * The target receives XdndEnter. * The ClientMessage only has space for three data types, * so if the source supports more than this, the target must retrieve * the property XdndTypeList from the source window in order to get the * list of available types. */ void SX11Impl::xdndEnter (const XEvent& event) { //fprintf (stderr, "SX11Impl::xdndEnter\n"); xdndSource = (Window) event.xclient.data.l[0]; unsigned long enterFlags = (unsigned long) event.xclient.data.l[1]; Atom dataType0 = event.xclient.data.l[2]; Atom dataType1 = event.xclient.data.l[3]; Atom dataType2 = event.xclient.data.l[4]; //unsigned int version = (enterFlags>>24) & 0xff; bool hasmoreTypes = ((enterFlags & 1) != 0); SBinVector allTypes; if (dataType0!=None) allTypes.append (dataType0); if (dataType1!=None) allTypes.append (dataType1); if (dataType2!=None) allTypes.append (dataType2); unsigned int i; /* check if we have more types */ if (hasmoreTypes) { Atom attributeType; int format; unsigned long nitems; unsigned long bytesafter; Atom *data; unsigned char *c_data=0; XGetWindowProperty ( display, xdndSource, toAtom ("XdndTypeList"), 0L, 100L, False, XA_ATOM, &attributeType, &format, &nitems, &bytesafter, &c_data); data = (Atom*) c_data; if (attributeType==XA_ATOM && format==32 && nitems >0) { for (i=0; igetID()); } if (l==0) { fprintf (stderr, "SX11Impl::xdndPosition - no listener\n"); status=false; } unsigned int i; unsigned int j; for (i=0; status && itargetAtoms.size() && !accept; i++) { for (j=0; jtargetAtoms[i] == dndTypes[j]) { acceptedDataType = sw->targets[i]; acceptedDataTypeAtom = dndTypes[j]; accept = true; } } } /* create an xdnd status */ XEvent cevt; cevt.xclient.type = ClientMessage; cevt.xclient.window = xdndSource; cevt.xclient.display = display; cevt.xclient.message_type = toAtom("XdndStatus"); cevt.xclient.format = 32; cevt.xclient.data.l[0] = window; cevt.xclient.data.l[1] |= (accept&&status)?1:0; /* accept drop bit */ cevt.xclient.data.l[2] = 0; /* x,y of no msg (root)*/ cevt.xclient.data.l[3] = 0; /* x,y of no msg */ cevt.xclient.data.l[4] = toAtom ("XdndActionCopy"); /* actions */ XSendEvent (display, xdndSource, False, NoEventMask, &cevt); } /** * If the mouse button is released in the window, the source waits * for the last XdndStatus message (if necessary) and then sends a * ClientMessage of type XdndLeave or XdndDrop, depending on the "accept" * flag in the last XdndStatus. * If the source never received any XdndStatus messages at all, it * should send XdndLeave without waiting. * If the source doesn't receive the expected XdndStatus within a * reasonable amount of time, it should send XdndLeave. While waiting * for XdndStatus, the source can block, but it must at least process * SelectionRequest events so the target can examine the data. */ void SX11Impl::xdndDrop (const XEvent& event) { //fprintf (stderr, "SX11Impl::xdndDrop\n"); if (xdndSource == None) return; if (xdndSource != (Window) event.xclient.data.l[0]) return; #if 0 unsigned long flags = event.xclient.data.l[1]; #endif unsigned long timestamp = event.xclient.data.l[2]; bool status = true; /* find the window */ Window window = event.xclient.window; SX11Window* sw = (SX11Window*)windowHashtable.get((long)window); SWindowListener*l = 0; if (sw == 0) { fprintf (stderr, "SX11Impl::xdndPosition - no window\n"); status=false; } else { l = listenerHashtable.get(sw->getID()); } if (l==0) { fprintf (stderr, "SX11Impl::xdndPosition - no listener\n"); status=false; } /* get the actual data */ SString data; if (status) { //fprintf (stderr, "Trying %*.*s...\n", SSARGS(acceptedDataType)); data = getSelectionData (toAtom ("XdndSelection"),acceptedDataTypeAtom, window, timestamp); //fprintf (stderr, "got data: [%*.*s]\n", SSARGS(data)); } /* create an xdnd finsished */ XEvent cevt; cevt.xclient.type = ClientMessage; cevt.xclient.window = xdndSource; cevt.xclient.display = display; cevt.xclient.message_type = toAtom("XdndFinished"); cevt.xclient.format = 32; cevt.xclient.data.l[0] = window; cevt.xclient.data.l[1] = 0; /* finished flags */ XSendEvent (display, xdndSource, False, NoEventMask, &cevt); /* kde hacks */ if (data.size()) { if (data[data.size()-1] == 0) data.truncate (data.size()-1); } while (data.size()) { if (data[0] == ' ' && data[0] == '\n' && data[0] == '\r') { data.remove (0); } else { break; } } if (data.size()) l->drop (sw, acceptedDataType, data); } /** * if the target receives XdndLeave, it frees any cached data * and forgets the whole incident. */ void SX11Impl::xdndLeave (const XEvent& event) { //fprintf (stderr, "SX11Impl::xdndLeave\n"); dndTypes.clear(); xdndSource = None; acceptedDataType.clear(); acceptedDataTypeAtom = None; } /** * COMPATIBILITY routine. * When a drop occurs, DND will send a client message event to the top * level window of the application that receives the drop. The * event will have the following data: * Event.xclient.type = ClientMessage; * Event.xclient.message_type = DndProtocol; * Event.xclient.format = 32; * Event.xclient.data.l[0] = DataType; * Event.xclient.data.l[1] = (long)event->xbutton.state; * Event.xclient.data.l[2] = (long)widget; * Event.xclient.data.l[3] = 0; * Event.xclient.data.l[4] = 0; * * So your program main event loop will need to intercept this message and * take the appropriate action. Normally, this action consists * in getting the drop data and processing it. This can be done by getting * the DndSelection property contents of the root window. * * FIXME: I had no specifications when I wrote this hack. */ void SX11Impl::dndProtocol (const XEvent& event) { fprintf (stderr, "Drag and drop kack for kde < 2.0. \n"); Atom dataType = (Atom) event.xclient.data.l[0]; SString dataTypeString("Unknown"); switch (dataType) { case 0: dataTypeString=SString("DndUnknown"); break; case 1: dataTypeString=SString("DndRawData"); break; case 2: dataTypeString=SString("DndFile"); break; case 3: dataTypeString=SString("DndFiles"); break; case 4: dataTypeString=SString("DndText"); break; case 5: dataTypeString=SString("DndDir"); break; case 6: dataTypeString=SString("DndLink"); break; case 7: dataTypeString=SString("DndExe"); break; case 8: dataTypeString=SString("DndURL"); break; case 9: dataTypeString=SString("DndMIME"); break; default: break; } //fprintf (stderr, "got dataType [%*.*s]\n", SSARGS(dataTypeString)); Window window = (Window) event.xclient.data.l[2]; //Window window = (Window) event.xclient.window; //Window window = (Window) (long)event.xclient.window; SX11Window* sw = (SX11Window*)windowHashtable.get((long)window); if (window==None) sw = 0; if (sw == 0) { /* ok. lets pick one */ for (unsigned int i=0; sw == 0 && itargetAtoms.size()) { sw = sww; } } } if (sw == 0) { fprintf (stderr, "SX11Impl::dndProtocol - no window for %lu\n", (unsigned long) window); } else { //fprintf (stderr, "SX11Impl::dndProtocol - substituted %lu with %lu\n", // (unsigned long) window, (unsigned long) sw->getID()); } } SWindowListener*l = (sw==0) ? 0 : listenerHashtable.get(sw->getID()); if (l==0) { fprintf (stderr, "SX11Impl::dndProtocol - no listener\n"); } /* get the actual data */ if (l) { SString data = getPropertyData (root, toAtom ("DndSelection"), 8); /* kde hacks */ if (data.size()) { if (data[data.size()-1] == 0) data.truncate (data.size()-1); } while (data.size()) { if (data[0] == ' ' && data[0] == '\n' && data[0] == '\r') { data.remove (0); } else { break; } } int sz = strlen ("file:"); if (data.size() > (unsigned int)sz && strncmp (data.array(), "file:", sz)==0) { data.remove (0, (unsigned int) sz); } if (data.size()) { //fprintf (stderr, "got data[%*.*s]: [%*.*s]\n", // SSARGS (dataTypeString), SSARGS(data)); l->drop (sw, dataTypeString, data); } } } Atom SX11Impl::toAtom (const SString& str) { SString a=str; a.append ((char)0); return XInternAtom (display, a.array(), False); } /** * if there is a modal window up and the ancestor is not that * window return false. * @param is is the window to which we wish to deliver. */ bool SX11Impl::isOKToDeliver (long wid) { if (modalStack.size()==0) return true; long modal = modalStack[modalStack.size()-1]; return isAncestor (display, root, modal, wid); } /** * check if window is ancestor */ static bool isAncestor (Display* display, long _root, long modal, long w) { Window window = (Window) w; Window root = (Window) _root; while (window != None && window != (Window) root) { if (window == (Window) modal) return true; unsigned int nchildren; Window parent=None; Window rw=root; Window* children=0; if (!XQueryTree (display, window, &rw, &parent, &children, &nchildren)) { return false; } root = rw; if (children) XFree (children); window = parent; } return false; } Window SX11Impl::getTopLevelWindow (Window w) { Window window = w; Window _root = root; while (window != None && window != (Window) _root) { unsigned int nchildren; Window parent=None; Window rw=_root; Window* children=0; if (!XQueryTree (display, window, &rw, &parent, &children, &nchildren)) { return window; } _root = rw; if (children) XFree (children); if (parent == _root) return window; window = parent; } return window; } /** * does it make us more robust? */ extern "C" { int handleX11Errors (Display *display, XErrorEvent *event) { char buffer_return[256]; buffer_return[0] = 0; XGetErrorText (display, event->error_code, buffer_return, sizeof (buffer_return)-1); buffer_return[255] = 0; if ( event->request_code == X_SetInputFocus) { //fprintf(stderr, "XSetInputFocus failed (not an error).\n"); } else { fprintf(stderr, "X11Impl.cpp request_code=%d:\n%s\n", event->request_code, buffer_return); } return 0; } } ./swindow/sx11/SXEventHandler.cpp0000644000175000017500000000157110434025610016660 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/sx11/SXEventHandler.h" SXEventHandler::SXEventHandler(void) { } SXEventHandler::~SXEventHandler() { } ./swindow/sx11/SX11Impl.h0000644000175000017500000001147310434025606015020 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SX11Impl_h #define SX11Impl_h #include "stoolkit/SEncoder.h" #include "stoolkit/SExcept.h" #include "stoolkit/SString.h" #include "stoolkit/SEvent.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SHashtable.h" #include "stoolkit/SProperties.h" #include "swindow/SAwt.h" #include "swindow/SRedrawEvent.h" #include "swindow/sx11/SXEventHandler.h" #include #include #include /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ typedef unsigned long SPixel; typedef SBinHashtable SWindowHashtable; typedef SBinHashtable SListenerHashtable; typedef SHashtable SRedrawEventTable; /** * This class should be implemented for a window toolkit implementation */ class SX11Impl : public SAwtImpl, public SEventTarget { public: SX11Impl(void); virtual ~SX11Impl(); virtual SWindow* getWindow (SWindowListener* l, const SString& name); bool getKeyboardFocus (SWindow *w); virtual SFontNative* getFont (const SString& encoding); virtual bool isOK(); /* My implementation */ void addWindow(long id, SWindow* w); void deleteWindow(long id, SWindow* w); void show (long id); void hide (long id); void addRedrawEvent (long id, const SRedrawEvent& evt); void addRedrawChildrenEvent (long id, const SRedrawEvent& evt); void moveRedrawEvent (long id, int xoffset, int yoffset); void setXEventHandler (long id, long type, SXEventHandler* h); void removeXEventHandler (long id, long type); void sendString (long id, const SString& string); bool sendAcceleratorPressed (int key, bool ctrl, bool shift, bool meta); bool sendAcceleratorReleased (); virtual SString getClipUTF8(long id); virtual void putClipUTF8 (long id, const SString& utf8); virtual void setEncoding(const SString& str); virtual void addAccelerator (long id, const SAccelerator& a); virtual void removeAccelerator (long id, const SAccelerator& a); long getAnyWindow (); void clipEvent (const XEvent& event); bool dndEvent (const XEvent& event); /*--------------- xdnd stuff --------------------------*/ void xdndEnter (const XEvent& event); void xdndPosition (const XEvent& event); void xdndDrop (const XEvent& event); void xdndLeave (const XEvent& event); void dndProtocol (const XEvent& event); /*------ good to have's ---------------*/ Atom toAtom (const SString& str); SString getPropertyData (Window window, Atom property, int format); SString getSelectionData (Atom dataName, Atom dataType, long id, Time time); SBinHashtable eventHandlerTable; SBinHashtable acceleratorTable; bool accelPressed; SAccelerator currentAccelerator; Display* display; Visual* visual; Colormap colormap; int screen; int cellCount; Window root; unsigned int rootWidth; unsigned int rootHeight; XRectangle rectangle; SPixel background; SPixel foreground; unsigned short border; Atom wmProtocols; Atom wmDeleteWindow; Window focusWindow; Window clipOwner; SEncoder encoder; // used for clip. SString clipBuffer; SInputStream in; SWindowHashtable windowHashtable; SListenerHashtable listenerHashtable; SRedrawEventTable redrawEventTable; /* SEventTarget */ int readable(const SEventSource* s); bool doX(); bool doXLoop(); long shown; SJob* job; bool done (const SEventSource* s); long needFocusWhenMapped; Window getTopLevelWindow (Window w); private: bool isOKToDeliver (long id); Window xdndSource; SString acceptedDataType; Atom acceptedDataTypeAtom; SBinVector dndTypes; SBinVector modalStack; SBinVector modalFocusStack; }; #endif /* SX11Impl_h */ ./swindow/sx11/SX11Window.cpp0000644000175000017500000011551611334656352015734 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/sx11/SX11Window.h" #include "swindow/sx11/SX11Color.h" #include typedef SBinHashtable SPixmapCache; /* * These caches hold the clipping pixmap and the real pixmap. * They are always come in pairs. The key is the image id. */ SPixmapCache maskCache; SPixmapCache imageCache; /* * This is true if we actually use the pixmap cache to cahce * the SImage on the X Server itself. */ #define SS_IMAGE_SIZE (32*32) static bool pixmapCacheOn=true; static unsigned int cacheSize = 10; static unsigned int cacheCount = 0; static bool needClear = false; /** * Afetr this size things wont be cached. */ void SX11Window::setPixmapCacheSize(unsigned int size) { cacheSize = size; } /** * turn on/off the cache and clear it */ void SX11Window::setPixmapCacheOn (bool on) { pixmapCacheOn=on; needClear = false; } #define SD_YUDIT_EVENT_MASK ( ExposureMask \ | StructureNotifyMask \ | SubstructureNotifyMask \ | ButtonPressMask \ | ButtonReleaseMask \ | Button1MotionMask \ | Button2MotionMask \ | Button3MotionMask \ | KeyPressMask \ | KeyReleaseMask \ | KeymapStateMask \ | PropertyChangeMask \ | EnterWindowMask \ | LeaveWindowMask \ | FocusChangeMask) SX11Window::SX11Window(const SString& n, SX11Impl* _impl, long _id) : name (n), inputMethod (_impl, _id, SD_YUDIT_EVENT_MASK), background (SX11Color(_impl, SS_WORD32(0xffffffff))), pen (SColor(0), SColor(0xffffffff)) { impl = _impl; dbindex = 0; isChild = 0; mapNotified = false; exposedOnce = false; dbuffer[0].id = _id; dbuffer[1].id = None; dbuffer[0].gcFD = 0; dbuffer[0].gcFG = (unsigned long) pen.getForeground().getValue(); impl->addWindow (dbuffer[0].id, this); XGCValues gcv; gcv.foreground = SX11Color(impl, pen.getForeground()).getPixelValue(); gcv.background = background.getPixelValue(); clipped = false; dbuffer[0].gc = XCreateGC (impl->display, (Drawable)dbuffer[0].id, GCForeground | GCBackground, &gcv); dbuffer[0].gc_default = XCreateGC (impl->display, (Drawable)dbuffer[0].id, 0, &gcv); gcv.function = GXand; dbuffer[0].gc_draw_and = XCreateGC (impl->display, (Drawable)dbuffer[0].id, GCForeground | GCBackground | GCFunction, &gcv); gcv.function = GXor; dbuffer[0].gc_draw_or = XCreateGC (impl->display, (Drawable)dbuffer[0].id, GCForeground | GCBackground | GCFunction, &gcv); setBackground (background); engine = 0; shown = false; XSelectInput (impl->display, (Window) dbuffer[0].id, SD_YUDIT_EVENT_MASK); } SX11Window::~SX11Window() { freeDoubleBuffer (); XFreeGC (impl->display, dbuffer[0].gc); XFreeGC (impl->display, dbuffer[0].gc_default); XFreeGC (impl->display, dbuffer[0].gc_draw_and); XFreeGC (impl->display, dbuffer[0].gc_draw_or); impl->deleteWindow (dbuffer[0].id, this); if (engine) delete engine; } void SX11Window::show () { impl->show (dbuffer[0].id); shown = true; } void SX11Window::hide () { impl->hide (dbuffer[0].id); shown = false; } /** * Drawing routines inherited from SCanvas */ bool SX11Window::newpath (double _x, double _y, const SString& _id) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::newpath called without beginDoubleBuffer\n"); /* this will always return false */ return engine->newpath ((int)_x, (int)_y, ""); } if (engine ==0) engine = new SGEngine(); if (isCacheOn) { return engine->newpath ((int)_x, (int)_y, _id); } else { /* this will always return false */ return engine->newpath ((int)_x, (int)_y, ""); } } #define SS_SHADING_COLORS (SD_OVERSAMPLE * SD_OVERSAMPLE +1) #define SS_DOUBLE_SCAN 1 /** * fill and return the resulting image for better cahcing. */ void SX11Window::fill (const SPen& _pen) { if (pen != _pen) { pen = _pen; } if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::fill called without beginDoubleBuffer\n"); return; } if (engine==0) return; SImage* si= engine->fill (0, 0, getWidth(), getHeight(), pen.getLineWidth()); if (si==0) return; /* offscreen */ /* Use the putimage that does some cahcheing. */ if (pixmapCacheOn) { putImage (si->getOrigoX(), si->getOrigoY(), *si); delete si; return; } int imageWidth = (int) si->getWidth(); int imageHeight = (int) si->getHeight(); SS_WORD32* image = new SS_WORD32[imageWidth*imageHeight]; int bits = DefaultDepth (impl->display, impl->screen); XImage* ximage = XCreateImage (impl->display, impl->visual, bits, (bits > 1? ZPixmap: XYBitmap), 0, (char*) image, imageWidth, imageHeight, 32, 0); int shades = si->getShades(); SX11Color** colors = new SX11Color*[shades]; CHECK_NEW (colors); int i; /* * We could blend it with the corrent background, * but we would lose a lot of speed... */ for (i=0; igetShade (x, y); SS_WORD32 rpvle = (sh==0) ? 0xffffff : 0; XPutPixel (ximage, x, y, rpvle); } } XPutImage (impl->display, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc_draw_and, ximage, 0, 0, si->getOrigoX(), si->getOrigoY(), imageWidth, imageHeight); /* Then blot the image */ for (int y=0; ygetShade (x, y); SS_WORD32 rpvle = (sh==0) ? 0 : colors[si->getShade (x, y)]->getPixelValue(); XPutPixel (ximage, x, y, rpvle); } } XPutImage (impl->display, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc_draw_or, ximage, 0, 0, si->getOrigoX(), si->getOrigoY(), imageWidth, imageHeight); for (i=0; istroke(0,0, getWidth(), getHeight(), _pen.getLineWidth()); if (i==0) return; delete i; } /** * Move to a new point * This will clear the path and push 3 element-pairs * one is the bounding low, second is bounding high * third is the new coord. */ void SX11Window::moveto (double x, double y) { if (engine ==0) return; engine->moveto (x, y); } /** * The lowest level function to add a new element */ void SX11Window::lineto (double x, double y) { if (engine ==0) return; engine->lineto (x, y); } /** * Draw a cubic beizer curve */ void SX11Window::curveto (double _x0, double _y0, double _x1, double _y1, double _x2, double _y2) { if (engine ==0) return; engine->curveto (_x0, _y0, _x1, _y1, _x2, _y2); } void SX11Window::closepath() { if (engine ==0) return; engine->closepath(); } /** * put an image to the scene. originX and OriginY is ignored. * This version is using full pixmaps for speed. * @param x is the x corener of the image. * @param y is the y corner of the image. * @param image is the actual image. */ void SX11Window::putImage (int _x, int _y, const SImage& im) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::putImage called without beginDoubleBuffer\n"); return; } if (cacheCount > cacheSize) { fprintf (stderr, "SX11Window:: clearing cache (%u elements)\n", cacheCount); needClear = true; } if (needClear && cacheCount!=0) { unsigned int i; unsigned int j; for (i=0; idisplay, e); } } for (i=0; idisplay, e); } } needClear = false; imageCache.clear(); maskCache.clear(); cacheCount = 0; } char a[64]; const SColor& cf = pen.getForeground(); const SColor& cb = pen.getBackground(); a[0] = 'i'; a[1] = 'm'; a[2] = (char) cf.red; a[3] = (char) cf.green; a[4] = (char) cf.blue; a[5] = (char) cb.red; a[6] = (char) cb.green; a[7] = (char) cb.blue; SString key (a, 8); key.append ((const SString&)im.getID()); Pixmap mask = maskCache.get (key); Pixmap pixmap = imageCache.get (key); bool createMask = (mask==0); bool createPixmap = (pixmap==0); /* Pixmap is always added, mask is on-demand */ if (createPixmap) { if (im.getShades() == 0) { createColoredPixmap (im, &pixmap, (createMask) ? &mask : 0); } else { createShadedPixmap (im, &pixmap, (createMask) ? &mask : 0); } #if 0 SString id = key; fprintf (stderr, "New Map..."); for (unsigned int i=0; idisplay, mask, (Drawable)dbuffer[dbindex].id, dbuffer[dbindex].gc_draw_and, 0, 0, im.getWidth(), im.getHeight(), _x, _y); XCopyArea(impl->display, pixmap, (Drawable)dbuffer[dbindex].id, dbuffer[dbindex].gc_draw_or, 0, 0, im.getWidth(), im.getHeight(), _x, _y); /* This should have the foreground and background in it */ /* We dont want to cache big ones */ if (pixmapCacheOn && (im.getWidth() * im.getHeight()) / SS_IMAGE_SIZE < 10) { if (createPixmap) { imageCache.put (key, pixmap); //cacheCount += im.getWidth() * im.getHeight() / SS_IMAGE_SIZE; cacheCount++; //fprintf (stderr, "cacheCount=%u cacheSize=%u\n", cacheCount, cacheSize); } if (createMask) { maskCache.put (key, mask); } } else { if (createPixmap) { XFreePixmap (impl->display, pixmap); } if (createMask) { XFreePixmap (impl->display, mask); } } } /** * Create two pixmaps, one for the image and one for the colored ones. * We use the same depth to avoid XCopyPlanes to gain speed * @param p is the image * @param m is the shape image. */ /* unsigned char in color is less that this -> transparent */ void SX11Window::createColoredPixmap (const SImage& im, Pixmap* p, Pixmap* m) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::createColoredPixmap called without beginDoubleBuffer\n"); return; } int imageWidth = (int) im.getWidth(); int imageHeight = (int) im.getHeight(); SS_WORD32* image = new SS_WORD32[imageWidth*imageHeight]; int bits = DefaultDepth (impl->display, impl->screen); XImage* ximage = XCreateImage (impl->display, impl->visual, bits, (bits > 1? ZPixmap: XYBitmap), 0, (char*) image, imageWidth, imageHeight, 32, 0); /* First wipe out the shape */ if (m != 0) { for (int y=0; ydisplay, (Drawable) dbuffer[dbindex].id, im.getWidth(), im.getHeight(), bits); XPutImage (impl->display, xshape, dbuffer[dbindex].gc_default, ximage, 0, 0, 0, 0, im.getWidth(), im.getHeight()); *m = xshape; } /* Then blot the image */ for (int y=0; ydisplay, (Drawable)dbuffer[dbindex].id, im.getWidth(), im.getHeight(), bits); XPutImage (impl->display, xpixmap, dbuffer[dbindex].gc_default, ximage, 0, 0, 0, 0, im.getWidth(), im.getHeight()); XDestroyImage (ximage); *p = xpixmap; } /** * Create two pixmaps, one for the image and one for the shade. * We use the same depth to avoid XCopyPlanes to gain speed * @param p is the image * @param m is the shape image. it contains 1's where ther is no image. */ void SX11Window::createShadedPixmap (const SImage& im, Pixmap* p, Pixmap* m) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::createShadedPixmap called without beginDoubleBuffer\n"); return; } int imageWidth = (int) im.getWidth(); int imageHeight = (int) im.getHeight(); SS_WORD32* image = new SS_WORD32[imageWidth*imageHeight]; int bits = DefaultDepth (impl->display, impl->screen); XImage* ximage = XCreateImage (impl->display, impl->visual, bits, (bits > 1? ZPixmap: XYBitmap), 0, (char*) image, imageWidth, imageHeight, 32, 0); int i; /* First wipe out the shape */ if (m != 0) { for (int y=0; ydisplay, (Drawable) dbuffer[dbindex].id, im.getWidth(), im.getHeight(), bits); XPutImage (impl->display, xshape, dbuffer[dbindex].gc_default, ximage, 0, 0, 0, 0, im.getWidth(), im.getHeight()); *m = xshape; } int shades = im.getShades(); SX11Color** colors = new SX11Color*[shades]; CHECK_NEW (colors); /* * We could blend it with the corrent background, * but we would lose a lot of speed... */ for (i=0; igetPixelValue(); XPutPixel (ximage, x, y, rpvle); } } Pixmap xpixmap = XCreatePixmap (impl->display, (Drawable) dbuffer[dbindex].id, im.getWidth(), im.getHeight(), bits); XPutImage (impl->display, xpixmap, dbuffer[dbindex].gc_default, ximage, 0, 0, 0, 0, im.getWidth(), im.getHeight()); for (i=0; idisplay, (Drawable) dbuffer[dbindex].id, im.getWidth(), im.getHeight(), 1); XGCValues gcv; gcv.background = 0x0; gcv.foreground = 0x0; GC sgc = XCreateGC (impl->display, xshape, GCForeground | GCBackground, &gcv); XFillRectangle (impl->display, xshape, sgc, 0, 0, imageWidth, imageHeight); XSetForeground (impl->display, sgc, 0x1); for (int y=0; ydisplay, xshape, sgc, x, y); } } } *m = xshape; XFreeGC (impl->display, sgc); } int bits = DefaultDepth (impl->display, impl->screen); SS_WORD32* image = new SS_WORD32[imageWidth*imageHeight]; XImage* ximage = XCreateImage (impl->display, impl->visual, bits, (bits > 1? ZPixmap: XYBitmap), 0, (char*) image, imageWidth, imageHeight, 32, 0); /* Then blot the image */ for (int y=0; ydisplay, (Drawable) dbuffer[dbindex].id, im.getWidth(), im.getHeight(), bits); XPutImage (impl->display, xpixmap, dbuffer[dbindex].gc_default, ximage, 0, 0, 0, 0, im.getWidth(), im.getHeight()); XDestroyImage (ximage); *p = xpixmap; } void SX11Window::setBackground(const SColor &color) { SX11Color c(impl, color); background = c; XSetWindowBackground (impl->display, (Window)dbuffer[0].id, background.getPixelValue()); pen = SPen(pen.getForeground(), color, pen.getLineWidth()); } /** * TODO: not implemented */ void SX11Window::rotate (double angle) { if (engine ==0) engine = new SGEngine(); engine->rotate (angle); } void SX11Window::scale (double x, double y) { if (engine ==0) engine = new SGEngine(); //fprintf (stderr, "scaling %g %g\n", x, y); engine->scale (x, y); } void SX11Window::translate (double x, double y) { if (engine ==0) engine = new SGEngine(); engine->translate (x, y); } void SX11Window::pushmatrix() { if (engine ==0) engine = new SGEngine(); engine->pushmatrix(); } void SX11Window::popmatrix() { if (engine ==0) engine = new SGEngine(); engine->popmatrix(); } void SX11Window::resize (unsigned int _width, unsigned int _height) { //fprintf (stderr, "resizing from: %lx %u %u to %u %u\n", //(unsigned long) this, xwidth, yheight, _width, _height); if (getWidth() == _width && getHeight() == _height)return; if (_width == 0) _width = 1; if (_height == 0) _height = 1; XResizeWindow (impl->display, (Window) dbuffer[0].id, _width, _height); setSize(_width, _height); } void SX11Window::move (int _x, int _y) { if (getPositionX() == _x && getPositionY() == _y)return; XMoveWindow (impl->display, (Window) dbuffer[0].id, _x, _y); setPosition(_x, _y); } /** * Draw a native font to the screen. This will not delete existing data. * @param x is the origo position * @param y is the origo position * @param native is X11 FID * @param data is a XChar2b structure * @param len is the unber of chars */ void SX11Window::bitfont (const SPen& _pen, double x, double y, void* native, char* data, unsigned int len) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::bitfont called without beginDoubleBuffer\n"); return; } if (dbuffer[dbindex].gcFD != (unsigned long) native) { XSetFont (impl->display, dbuffer[dbindex].gc, (Font) native); dbuffer[dbindex].gcFD = (unsigned long) native; } if (dbuffer[dbindex].gcFG != (unsigned long) _pen.getForeground().getValue()) { XSetForeground (impl->display, dbuffer[dbindex].gc, SX11Color(impl, _pen.getForeground()).getPixelValue()); dbuffer[dbindex].gcFG = (unsigned long) _pen.getForeground().getValue(); } XDrawString16 (impl->display, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc, (int)x, (int)y, (XChar2b*) data, len/2); } void SX11Window::setParent (SWindow* w, int x, int y) { //fprintf (stderr, "reparent %lx\n", (unsigned long) this); SX11Window* x11w = (SX11Window*) w; XReparentWindow (impl->display, (Window) dbuffer[0].id, (Window) x11w->dbuffer[0].id, x, y); isChild = true; } /** * Clear a region (set it to the background) * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to clear * @param height is the height of the region to clear */ void SX11Window::clear (int x, int y, unsigned int width, unsigned int height) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::clear called without beginDoubleBuffer\n"); return; } bitfill (background, x, y, width, height); /* This one does not takes clip */ /* // does not work with pixmaps XClearArea (impl->display, (Window) id, x, y, width, height, 0); */ } /** * Copy an area on the window to another area. * overlap is ok. * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to copy * @param height is the height of the region to copy * @param tox is the destination left corner * @param toy is the destination top corner */ void SX11Window::copy (int x, int y, unsigned int width, unsigned int height, int tox, int toy) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::copy called without beginDoubleBuffer\n"); return; } XCopyArea (impl->display, (Drawable) dbuffer[dbindex].id, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc, x, y, width, height, tox, toy); impl->moveRedrawEvent (dbuffer[0].id, tox-x, toy-y); } /** * Fill a solid rectangle * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to fill * @param height is the height of the region to fill */ void SX11Window::bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::bitfill called without beginDoubleBuffer\n"); return; } if (dbuffer[dbindex].gcFG != (unsigned long) bg.getValue()) { XSetForeground (impl->display, dbuffer[dbindex].gc, SX11Color(impl, bg).getPixelValue()); dbuffer[dbindex].gcFG = (unsigned long) bg.getValue(); } XFillRectangle (impl->display, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc, x, y, width, height); } /** * Draw a solid line. * @param x is the starting x point * @param y is the starting y point * @param x is the ending non-exclusive x point * @param y is the ending non-exclusive y point */ void SX11Window::bitline (const SColor& fg, int x, int y, int tox, int toy) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::bitline called without beginDoubleBuffer\n"); return; } if (dbuffer[dbindex].gcFG != (unsigned long) fg.getValue()) { XSetForeground (impl->display, dbuffer[dbindex].gc, SX11Color(impl, fg).getPixelValue()); dbuffer[dbindex].gcFG = (unsigned long) fg.getValue(); } XDrawLine (impl->display, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc, x, y, tox, toy); } /** * Draw a solid point. * @param x is the x point * @param y is the y point */ void SX11Window::bitpoint (const SColor& fg, int x, int y) { if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::bitpoint called without beginDoubleBuffer\n"); return; } if (dbuffer[dbindex].gcFG != (unsigned long) fg.getValue()) { XSetForeground (impl->display, dbuffer[dbindex].gc, SX11Color(impl, fg).getPixelValue()); dbuffer[dbindex].gcFG = (unsigned long) fg.getValue(); } XDrawPoint (impl->display, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc, x, y); } void SX11Window::bitpoints (const SColor& fg, const int* _x, const int* _y, unsigned int _size) { if (_size==0) return; if (dbuffer[dbindex].id == None) { fprintf (stderr, "SX11Window::bitpoints called without beginDoubleBuffer\n"); return; } if (dbuffer[dbindex].gcFG != (unsigned long) fg.getValue()) { XSetForeground (impl->display, dbuffer[dbindex].gc, SX11Color(impl, fg).getPixelValue()); dbuffer[dbindex].gcFG = (unsigned long) fg.getValue(); // If I don't do XSync there is a point drawing error of // highlighted text on Matrox Video card with X64 // XSync (impl->display, False); } XPoint* p = new XPoint[_size]; CHECK_NEW (p); for (unsigned int i=0; i<_size; i++) { p[i].x = _x[i]; p[i].y = _y[i]; } XDrawPoints (impl->display, (Drawable) dbuffer[dbindex].id, dbuffer[dbindex].gc, p, _size, CoordModeOrigin); delete p; } void SX11Window::getKeyboardFocus() { impl->getKeyboardFocus (this); XSetInputFocus (impl->display, (Window) dbuffer[0].id, RevertToNone, CurrentTime); XIC xic = inputMethod.getIC(); if (xic) { XSetICFocus (xic); } return; } long SX11Window::getID () { return dbuffer[0].id; } /** * Assign a rectangualr clip area. Everithing outside this area will be clipped. */ void SX11Window::setClippingArea (int _x, int _y, unsigned int _width, unsigned int _height) { // called outside dbufer begin and end if (dbuffer[dbindex].id == None) { clipRegion = SX11Region (_x, _y, _width, _height); return; } XRectangle rect; rect.x = _x; rect.y = _y; rect.width = _width; rect.height = _height; XSetClipRectangles (impl->display, dbuffer[dbindex].gc, 0, 0, &rect, 1, Unsorted); XSetClipRectangles (impl->display, dbuffer[dbindex].gc_draw_and, 0, 0, &rect, 1, Unsorted); XSetClipRectangles (impl->display, dbuffer[dbindex].gc_draw_or, 0, 0, &rect, 1, Unsorted); clipped = true; } /** * clear the clipping area. */ void SX11Window::removeClippingArea () { // called outside dbufer begin and end if (dbuffer[dbindex].id == None) return; if (clipped) { XSetClipMask (impl->display, dbuffer[dbindex].gc, None); XSetClipMask (impl->display, dbuffer[dbindex].gc_draw_and, None); XSetClipMask (impl->display, dbuffer[dbindex].gc_draw_or, None); clipped = false; } } /** * This routine is not supposed to be used extensively. This is * to check the current matrix. */ SS_Matrix2D SX11Window::getCurrentMatrix() const { if (engine!=0) return engine->getCurrentMatrix(); return SS_Matrix2D(); } // TODO: implement this. void SX11Window::setApplicationImage (const SImage& im) { Pixmap pixmap = 0; Pixmap mask = 0; unsigned int dbindexSave = dbindex; dbindex = 0; createMaskedPixmap (im, &pixmap, &mask); dbindex = dbindexSave; //XWMHints *hints = XGetWMHints(impl->display, (Window) id); XWMHints *hints = XAllocWMHints(); if (!pixmap ||!mask || !hints) { return; } hints->flags |= IconPixmapHint; hints->icon_pixmap = pixmap; hints->flags |= IconMaskHint; hints->icon_mask = mask; XSetWMHints(impl->display, (Window) dbuffer[0].id, hints); XFree (hints); } /** * This reqests a redraw, efficiently after all events got processed. * This is called by the client and not by SX11Impl. * @param clear is true if the window needs to be cleared before calling redraw. * @param x is the x origin of the event * @param y is the y origin of the event * @param width is the width of the event * @param height is the height of the event */ void SX11Window::redraw (bool clear, int _x, int _y, unsigned int _width, unsigned int _height) { if (_x+(int)_width < 0 || _y + (int) _height < 0) { return; } if (_x > (int)getWidth() || _y > (int)getHeight()) { return; } impl->addRedrawEvent (dbuffer[0].id, SRedrawEvent (clear, _x, _y, _width, _height)); } /** * Start a native input method. * @param name is the name of the input method: * like "kinput2" * @param properties provide some attributes to the input method. */ bool SX11Window::startInputMethod (const SString& _name, const SProperties& prop) { return inputMethod.start (_name, prop); } void SX11Window::stopInputMethod () { inputMethod.stop(); } /** * Change properties of the input method on the fly. * @param prop contains properties like: * InputStyle: root over-the-spot off-the-spot */ void SX11Window::setInputMethodProperties (const SProperties& prop) { inputMethod.setProperties(prop); } /** * Get the current input method. * it returns a zero sized string if input method is not started. */ SString SX11Window::getInputMethod () { return SString(inputMethod.getName()); } bool SX11Window::hasStatusArea () { return inputMethod.hasStatusArea (); } bool SX11Window::isVisible () { #if 0 /* Oh man this did not work at all . I left here to draw lessons */ XWindowAttributes xwa; if (!XGetWindowAttributes (impl->display, (Window) id, &xwa)) { return false; } XWindowAttributes txwa; txwa.map_state = xwa.map_state; Window tw = impl->getTopLevelWindow ((Window) id); if (tw != (Window) id) { XGetWindowAttributes (impl->display, (Window) tw, &txwa); } return (xwa.map_state == IsViewable && txwa.map_state == IsViewable); #endif return mapNotified; } #if 0 RETIRED 2001-11-21 /** * draw a poligon on the screen with bits. */ void SX11Window::bitpolygon (const SColor& fg, const SV_INT& poligon) { if (gcFG != (unsigned long) fg.getValue()) { XSetForeground (impl->display, gc, SX11Color(impl, fg).getPixelValue()); gcFG = (unsigned long) fg.getValue(); } XPoint* points = new XPoint[poligon.size()/2]; for (unsigned int i=0; idisplay, (Window) id, gc, points, poligon.size()/2, Convex, CoordModeOrigin); delete [] points; } #endif /** * Get an utf8 encoded text from clipboard. */ SString SX11Window::getClipUTF8() { return impl->getClipUTF8 (dbuffer[0].id); } /** * put and utf8-encoded text to clipboard. */ void SX11Window::putClipUTF8(const SString& utf8) { impl->putClipUTF8 (dbuffer[0].id, utf8); } /** * Fixme. */ void SX11Window::setMinimumSize (unsigned int _width, unsigned int _height) { //fprintf (stderr, "in -------------minimumsize %u %u\n", _width, _height); XSizeHints sizeHints; sizeHints.min_width = _width; sizeHints.min_height = _height; sizeHints.flags = PMinSize; XSetWMProperties (impl->display, (Window) dbuffer[0].id, 0, 0, 0, 0, &sizeHints, 0, 0); } void SX11Window::setTitle (const SString& title) { SString windowName = title; windowName.append((char)0); XTextProperty propertyIconName; XTextProperty propertyWindowName; XStoreName (impl->display, (Window) dbuffer[0].id, windowName.array()); /* Discard const */ char* wnc = (char*) windowName.array(); #ifdef X_HAVE_UTF8_STRING if (Xutf8TextListToTextProperty (impl->display, &wnc, 1, XUTF8StringStyle, &propertyWindowName)==Success && Xutf8TextListToTextProperty (impl->display, &wnc, 1, XUTF8StringStyle, &propertyIconName)==Success) #else if (XStringListToTextProperty (&wnc, 1, &propertyWindowName)!=0 && XStringListToTextProperty (&wnc, 1, &propertyIconName)!=0) #endif { XSetWMProperties (impl->display, (Window) dbuffer[0].id, &propertyWindowName, &propertyIconName, 0, 0, // argv, argc, 0, 0, 0); XFree (propertyWindowName.value); XFree (propertyIconName.value); } XSetWMProtocols (impl->display, (Window) dbuffer[0].id, &impl->wmDeleteWindow, 1); } /** * Do nothing special here. */ bool SX11Window::cacheOn (bool on) { return SCanvas::cacheOn(on); } /** * add and remove keyboard accelerator */ void SX11Window::addAccelerator (const SAccelerator& a, SAcceleratorListener* l) { accelerators.put (a.toString(), l); impl->addAccelerator (dbuffer[0].id, a); } void SX11Window::removeAccelerator (const SAccelerator& a, SAcceleratorListener* l) { accelerators.remove (a.toString()); impl->removeAccelerator (dbuffer[0].id, a); } void SX11Window::_acceleratorPressed (const SAccelerator& a) { SAcceleratorListener* l = accelerators.get (a.toString()); if (l==0) { fprintf (stderr, "SX11Window::_acceleratorPressed - can not find accelerator listener.\n"); return; } l->acceleratorPressed (a); } void SX11Window::_acceleratorReleased (const SAccelerator& a) { SAcceleratorListener* l = accelerators.get (a.toString()); if (l==0) { fprintf (stderr, "SX11Window::_acceleratorPressed - can not find accelerator listener.\n"); return; } l->acceleratorReleased (a); } /** * Sets the targets that can be dropped on this window */ void SX11Window::setDroppable (const SStringVector& _targets) { const Atom xdndVersion = 3; XChangeProperty (impl->display, (Window) dbuffer[0].id, XInternAtom (impl->display, "XdndAware", False), XA_ATOM, 32, PropModeReplace, (unsigned char*) &xdndVersion, 1); for (unsigned int i=0; i<_targets.size(); i++) { targetAtoms.append (impl->toAtom(_targets[i])); } targets = _targets; //fprintf (stderr, "SX11Window::setDroppable\n"); } const SStringVector& SX11Window::getDroppable() const { return targets; } void SX11Window::setModal (SWindow* _parent, bool decorated) { XSetWindowAttributes winattr; SWindow::setModal (_parent, decorated); winattr.override_redirect = True; winattr.save_under = True; if (_parent == 0) { XSetTransientForHint (impl->display, (Window) dbuffer[0].id, (Window)impl->root); } else { XSetTransientForHint (impl->display, (Window) dbuffer[0].id, (Window) (((SX11Window*)_parent)->dbuffer[0].id)); } if (decorated) return; XChangeWindowAttributes (impl->display, (Window) dbuffer[0].id, CWOverrideRedirect | CWSaveUnder, &winattr); } /** * put this window in the middle */ void SX11Window::center (SWindow* _window) { Window cw = impl->root; if (_window!=0) { cw = (Window) ((SX11Window*)_window)->dbuffer[0].id; cw = impl->getTopLevelWindow (cw); } /* center this in cw */ Window root_return; int x_return, y_return; unsigned int width_return, height_return; unsigned int border_width_return; unsigned int depth_return; if (!XGetGeometry (impl->display, cw, &root_return, &x_return, &y_return, &width_return, &height_return, &border_width_return,&depth_return)) { return; } #if 0 fprintf (stderr, "x=%d, y=%d, w=%d, h=%d mine %u %u %ld\n", x_return, y_return, width_return, height_return, width, height, (long)cw); #endif int lx = (x_return + (int)width_return/2); int ly = (y_return + (int)height_return/2); int mx = lx - (int) getWidth()/2; int my = ly - (int) getHeight()/2; if ((int)impl->rootWidth < (int) getWidth() + mx + 20) { mx = (int)impl->rootWidth - (int)getWidth() - 20; } if ((int)impl->rootHeight < (int) getHeight() + my + 20) { my = (int)impl->rootHeight - (int)getHeight() - 20; } if (mx<0) mx = 0; if (my<0) my = 0; move (mx, my); } /** * wait till window is mapped and unmapped */ void SX11Window::wait () { /* x may have some stuff sucked in */ // int lcount=0; impl->doXLoop(); /* This is in a job and the job is removed already */ SEventHandler::addJob (impl->job, impl); while (shown && SEventHandler::next()) { // fprintf (stderr, "NEXT=%d\n", lcount++); } SEventHandler::remove (impl->job); } XIC SX11Window::getIC () { return inputMethod.getIC(); } const SString& SX11Window::getICEncoding () const { return inputMethod.getICEncoding(); } bool SX11Window::isAsciiInput () { return inputMethod.isAsciiInput(); } bool SX11Window::isKInput () { return inputMethod.isKInput(); } unsigned long SX11Window::getWindowID() const { return (unsigned long) dbuffer[0].id; } void SX11Window::setDoubleBuffer (bool isOn) { dbindex = isOn ? 1 : 0; } bool SX11Window::isDoubleBufferEnabled () const { return (dbindex == 1); } void SX11Window::freeDoubleBuffer () { if (dbuffer[1].id != None) { XFreeGC (impl->display, dbuffer[1].gc); XFreeGC (impl->display, dbuffer[1].gc_default); XFreeGC (impl->display, dbuffer[1].gc_draw_and); XFreeGC (impl->display, dbuffer[1].gc_draw_or); XFreePixmap (impl->display, (Pixmap) dbuffer[1].id); dbuffer[1].id = None; } } // called before global redraw to sync backing buffer with window. void SX11Window::beginDoubleBuffer (const SX11Region& region) { if (dbindex == 0) return; // Free Up Previous pixmap if if (dbuffer[1].id) { fprintf (stderr, "SX11Window::beginDoubleBuffer nested call?"); freeDoubleBuffer (); } dbuffer[1].gcFD = 0; // Font unsigned int pw = (getWidth() == 0) ? 1 : getWidth(); unsigned int ph = (getHeight() == 0) ? 1 : getHeight(); int bits = DefaultDepth (impl->display, impl->screen); dbuffer[1].id = XCreatePixmap (impl->display, (Window) dbuffer[0].id, pw, ph, bits); XGCValues gcv; gcv.foreground = SX11Color(impl, pen.getForeground()).getPixelValue(); gcv.background = background.getPixelValue(); clipped = false; dbuffer[1].gc = XCreateGC (impl->display, (Drawable)dbuffer[0].id, GCForeground | GCBackground, &gcv); dbuffer[1].gc_default = XCreateGC (impl->display, (Drawable)dbuffer[0].id, 0, &gcv); gcv.function = GXand; dbuffer[1].gc_draw_and = XCreateGC (impl->display, (Drawable)dbuffer[0].id, GCForeground | GCBackground | GCFunction, &gcv); gcv.function = GXor; dbuffer[1].gc_draw_or = XCreateGC (impl->display, (Drawable)dbuffer[0].id, GCForeground | GCBackground | GCFunction, &gcv); XSetForeground (impl->display, dbuffer[1].gc, SX11Color(impl, background).getPixelValue()); dbuffer[1].gcFG = (unsigned long) background.getValue(); XFillRectangle (impl->display, (Drawable) dbuffer[1].id, dbuffer[1].gc, region.x, region.y, region.width, region.height); if (clipped) { XRectangle rect; rect.x = clipRegion.x; rect.y = clipRegion.y; rect.width = clipRegion.width; rect.height = clipRegion.height; XSetClipRectangles (impl->display, dbuffer[1].gc, 0, 0, &rect, 1, Unsorted); XSetClipRectangles (impl->display, dbuffer[1].gc_draw_and, 0, 0, &rect, 1, Unsorted); XSetClipRectangles (impl->display, dbuffer[1].gc_draw_or, 0, 0, &rect, 1, Unsorted); } } void SX11Window::endDoubleBuffer (const SX11Region& region) { if (dbindex == 0) { if (dbuffer[1].id != None) freeDoubleBuffer (); return; } if (dbuffer[1].id == 0) { fprintf (stderr, "SX11Window::endDoubleBuffer nested call?"); return; } XCopyArea (impl->display, (Drawable) dbuffer[1].id, (Drawable)dbuffer[0].id, dbuffer[dbindex].gc_default, region.x, region.y, region.width, region.height, region.x, region.y); freeDoubleBuffer (); } ./swindow/sx11/SX11Font.h0000644000175000017500000000321310434025606015016 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SX11Font_h #define SX11Font_h #include "swindow/sx11/SX11Impl.h" #include "swindow/SFontNative.h" #include "stoolkit/SUniMap.h" #include "stoolkit/SProperties.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is a specific native font, with a certain size */ class SX11Font : public SFontNative { public: SX11Font (SX11Impl* impl, const SString& encoding); virtual ~SX11Font (); virtual bool draw (const SString& xlfd,SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 g); virtual bool width (const SString& xlfd, SS_UCS4 g, double *width_); virtual double width (const SString& xlfd); virtual double ascent (const SString& xlfd); virtual double descent (const SString& xlfd); virtual double gap (const SString& xlfd); private: bool isencoded; SUniMap encoder; SX11Impl* impl; }; #endif /* SX11Font_h */ ./swindow/sx11/SX11Color.h0000644000175000017500000000317210723451314015172 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SX11Color_h #define SX11Color_h #include "swindow/SColor.h" #include "swindow/sx11/SX11Impl.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ class SX11Color : public SColor { public: SX11Color (SX11Impl* impl, SS_WORD32 value); SX11Color (SX11Impl* impl, double red, double green, double blue, double alpha); SX11Color (SX11Impl* impl, unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha); SX11Color (const SX11Color& color); virtual void blend (const SColor& color); SX11Color (SX11Impl* impl,const SColor& color); SX11Color operator= (const SX11Color& color); virtual ~SX11Color(); SS_WORD32 getValue() const; SPixel getPixelValue() const; protected: SS_WORD32 allocate(SX11Impl* impl); SPixel pixel; SX11Impl* impl; }; #endif /* SX11Color_h */ ./swindow/sx11/SX11Window.h0000644000175000017500000001470111334656270015372 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SX11Window_h #define SX11Window_h #include "swindow/sx11/SX11Impl.h" #include "swindow/sx11/SX11Color.h" #include "swindow/sx11/SXInputMethod.h" #include "swindow/SGEngine.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SVector.h" class SX11DoubleBuffer { public: SX11DoubleBuffer (void) {} long id; GC gc; /* always set to gb and pen fg */ GC gc_draw_or; /* always set to gb and pen fg */ GC gc_draw_and; /* always set to gb and pen fg */ GC gc_default; /* always set to gb and pen fg */ unsigned long gcFD; unsigned long gcFG; }; class SX11Region { public: SX11Region (void) : x(0), y(0), width (0), height (0) {} SX11Region (int _x, int _y, unsigned int _w, unsigned int _h) : x(_x), y(_y), width (_w), height (_h) {} SX11Region (const SX11Region& old) : x(old.x), y(old.y), width (old.width), height (old.height) {} SX11Region operator = (const SX11Region& old) { x = old.x; y = old.y; width = old.width; height = old.height; return *this; } int x; int y; unsigned int width; unsigned int height; }; /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ class SX11Window : public SWindow { public: SX11Window (const SString &name, SX11Impl* impl, long id); virtual ~SX11Window(); static void setPixmapCacheSize(unsigned int size); static void setPixmapCacheOn (bool isOn=true); virtual bool cacheOn (bool on=true); virtual SS_Matrix2D getCurrentMatrix() const; virtual void setMinimumSize (unsigned int width, unsigned int height); /* Low level routines */ virtual void clear (int x, int y, unsigned int width, unsigned int height); virtual void copy (int x, int y, unsigned int width, unsigned int height, int tox, int toy); virtual void show (); virtual void hide (); virtual void setApplicationImage (const SImage& im); /*---------------- from canvas --------------*/ virtual bool newpath (double x, double y, const SString& id); virtual void fill (const SPen& pen); virtual void stroke (const SPen& pen); virtual void moveto (double x, double y); virtual void lineto (double x, double y); virtual void curveto (double x0, double y0, double x1, double y1, double x3, double y3); virtual void closepath(); virtual void pushmatrix(); virtual void popmatrix(); virtual void scale (double x, double y); virtual void translate (double x, double y); virtual void rotate (double angle); virtual void putImage (int x, int y, const SImage& image); virtual void bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len); virtual void bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height); virtual void bitline (const SColor& fg, int x, int y, int tox, int toy); virtual void bitpoint (const SColor& fg, int x, int y); virtual void bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size); /*---------------- end of canvas ---------------*/ virtual void setBackground(const SColor &color); virtual void resize (unsigned int width, unsigned int height); virtual void redraw (bool clear, int x, int y, unsigned int width, unsigned int height); virtual void move (int x, int y); virtual void setParent (SWindow* w, int x, int y); virtual void getKeyboardFocus(); virtual long getID(); virtual void setClippingArea (int x, int y, unsigned int width, unsigned int height); virtual void removeClippingArea (); virtual bool startInputMethod (const SString& name, const SProperties& prop); virtual void stopInputMethod (); virtual void setInputMethodProperties (const SProperties& prop); virtual SString getInputMethod (); virtual bool hasStatusArea (); virtual bool isVisible (); virtual SString getClipUTF8(); virtual void putClipUTF8(const SString& utf8); virtual void setTitle (const SString& title); virtual void addAccelerator (const SAccelerator& a, SAcceleratorListener* l); virtual void removeAccelerator (const SAccelerator& a, SAcceleratorListener* l); void _acceleratorPressed (const SAccelerator& a); void _acceleratorReleased (const SAccelerator& a); /*------- xdnd -----------*/ void setDroppable (const SStringVector& targets); const SStringVector& getDroppable() const; /* Xutf8LookupString needs this from input context */ XIC getIC (); const SString& getICEncoding () const; bool isAsciiInput (); bool isKInput (); SBinVector targetAtoms; SStringVector targets; virtual void setModal (SWindow*w, bool decorated); virtual void center (SWindow* window); virtual void wait (); bool mapNotified; bool exposedOnce; // The first expose event in X11 gives old size. bool isChild; /*--- get an integer id for the underlying window ---*/ virtual unsigned long getWindowID() const; // default off virtual void setDoubleBuffer (bool isOn); virtual bool isDoubleBufferEnabled () const; // called before redraw area void freeDoubleBuffer (); void beginDoubleBuffer (const SX11Region& region); void endDoubleBuffer (const SX11Region& region); private: SBinHashtable accelerators; void createShadedPixmap (const SImage& im, Pixmap* p, Pixmap* m); void createColoredPixmap (const SImage& im, Pixmap* p, Pixmap* m); void createMaskedPixmap (const SImage& im, Pixmap* p, Pixmap* m); SString name; SXInputMethod inputMethod; SX11Color background; SX11Impl* impl; SPen pen; bool clipped; /* gc is clipped */ SGEngine* engine; // added in 2.8.2 unsigned int dbindex; SX11DoubleBuffer dbuffer[2]; SX11Region clipRegion; }; #endif /* SX11Window_h */ ./swindow/STTables.h0000644000175000017500000002553510434025606014373 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef STTABLES_H #define STTABLES_H /* * TT_PLAT and TT_ENC from ttf.h from VFlib Library. * by Hirotsugu Kakugawa. Copyright: GNU. */ #define TT_ENC_ID_ANY -1 #define TT_ENC_ID_ISO_ASCII 0 #define TT_ENC_ID_ISO_10646 1 #define TT_ENC_ID_ISO_8859_1 2 #define TT_ENC_ID_MS_SYMBOL 0 #define TT_ENC_ID_MS_UNICODE 1 #define TT_ENC_ID_MS_SHIFT_JIS 2 #define TT_ENC_ID_MS_BIG5 3 #define TT_ENC_ID_MS_RPC 4 #define TT_ENC_ID_MS_WANSUNG 5 #define TT_ENC_ID_MS_JOHAB 6 #define TT_ENC_ID_MS_SURROGATES 10 #define TT_ENC_ID_APPLE_DEFAULT 0 #define TT_ENC_ID_APPLE_UNICODE_1_1 1 #define TT_ENC_ID_APPLE_ISO_10646 2 #define TT_ENC_ID_APPLE_UNICODE_2_0 3 #define TT_ENC_ID_MAC_ROMAN 0 #define TT_ENC_ID_MAC_JAPANESE 1 #define TT_ENC_ID_MAC_TRADITIONAL_CHINESE 2 #define TT_ENC_ID_MAC_KOREAN 3 #define TT_ENC_ID_MAC_ARABIC 4 #define TT_ENC_ID_MAC_HEBREW 5 #define TT_ENC_ID_MAC_GREEK 6 #define TT_ENC_ID_MAC_RUSSIAN 7 #define TT_ENC_ID_MAC_RSYMBOL 8 #define TT_ENC_ID_MAC_DEVANAGARI 9 #define TT_ENC_ID_MAC_GURMUKHI 10 #define TT_ENC_ID_MAC_GUJARATI 11 #define TT_ENC_ID_MAC_ORIYA 12 #define TT_ENC_ID_MAC_BENGALI 13 #define TT_ENC_ID_MAC_TAMIL 14 #define TT_ENC_ID_MAC_TELUGU 15 #define TT_ENC_ID_MAC_KANNADA 16 #define TT_ENC_ID_MAC_MALAYALAM 17 #define TT_ENC_ID_MAC_SINHALESE 18 #define TT_ENC_ID_MAC_BURMESE 19 #define TT_ENC_ID_MAC_KHMER 20 #define TT_ENC_ID_MAC_THAI 21 #define TT_ENC_ID_MAC_LAOTIAN 22 #define TT_ENC_ID_MAC_GEORGIAN 23 #define TT_ENC_ID_MAC_ARMENIAN 24 #define TT_ENC_ID_MAC_MALDIVIAN 25 #define TT_ENC_ID_MAC_SIMPLIFIED_CHINESE 25 #define TT_ENC_ID_MAC_TIBETAN 26 #define TT_ENC_ID_MAC_MONGOLIAN 27 #define TT_ENC_ID_MAC_GEEZ 28 #define TT_ENC_ID_MAC_SLAVIC 29 #define TT_ENC_ID_MAC_VIETNAMESE 30 #define TT_ENC_ID_MAC_SINDHI 31 #define TT_ENC_ID_MAC_UNINTERP 32 #define TT_PLAT_ID_ANY -1 #define TT_PLAT_ID_APPLE 0 #define TT_PLAT_ID_MACINTOSH 1 #define TT_PLAT_ID_ISO 2 #define TT_PLAT_ID_MICROSOFT 3 /* * The following definitions were derived from * Andrew Weeks's excellent font converter program. * Many thanks! */ #define SD_BYTE unsigned char #define SD_CHAR signed char #define SD_USHORT unsigned short #define SD_SHORT signed short #define SD_ULONG unsigned int #define SD_LONG signed int #define SD_FWORD SD_SHORT #define SD_UFWORD SD_USHORT #define ONOROFF 0x01 #define XSD_SHORT 0x02 #define YSD_SHORT 0x04 #define REPEAT 0x08 #define XSAME 0x10 #define YSAME 0x20 #define ARG_1_AND_2_ARE_WORDS 0x0001 #define ARGS_ARE_XY_VALUES 0x0002 #define XY_BOUND_TO_GRID 0x0004 #define WE_HAVE_A_SCALE 0x0008 #define MORE_COMPONENTS 0x0020 #define WE_HAVE_AN_X_AND_Y_SCALE 0x0040 #define WE_HAVE_A_TWO_BY_TWO 0x0080 #define WE_HAVE_INSTRUCTIONS 0x0100 #define USE_MY_METRICS 0x0200 typedef struct longhormetric { SD_UFWORD advanceWidth; SD_FWORD lsb; } LONGHORMETRIC; typedef struct ttf_hhea { SD_BYTE version[4]; SD_SHORT ascender, descender, lineGap; SD_USHORT advnaceWidthMax; SD_SHORT minLSB, minRSB, xMaxExtent; SD_SHORT caretSlopeRise, caretSlopeRun; SD_SHORT reserved[5]; SD_SHORT metricDataFormat; SD_USHORT numberOfHMetrics; } TTF_HHEA; typedef struct ttf_dir_entry { char tag[4]; SD_ULONG checksum; SD_ULONG offset; SD_ULONG length; } TTF_DIR_ENTRY ; typedef struct ttf_directory { SD_ULONG sfntVersion; SD_USHORT numTables; SD_USHORT searchRange; SD_USHORT entrySelector; SD_USHORT rangeShift; TTF_DIR_ENTRY list; } TTF_DIRECTORY ; typedef struct ttf_name_rec { SD_USHORT platformID; SD_USHORT encodingID; SD_USHORT languageID; SD_USHORT nameID; SD_USHORT stringLength; SD_USHORT stringOffset; } TTF_NAME_REC; typedef struct ttf_name { SD_USHORT format; SD_USHORT numberOfNameRecords; SD_USHORT offset; TTF_NAME_REC nameRecords; } TTF_NAME ; /* Flags is HEAD table - grossly ignored by yudit :) Bit 0: Baseline for font at y=0; Bit 1: Left sidebearing point at x=0; Bit 2: Instructions may depend on point size; Bit 3: Force ppem to integer values for all internal scaler math; may use fractional ppem sizes if this bit is clear; Bit 4: Instructions may alter advance width (the advance widths might not scale linearly); Bits 5-10: These should be set according to Apple's specification . However, they are not implemented in OpenType. Bit 11: Font data is 'lossless,' as a result of having been compressed and decompressed with the Agfa MicroType Express engine. Bit 12: Font converted (produce compatible metrics) Bit 13: Font optimised for ClearType Bit 14: Reserved, set to 0 Bit 15: Reserved, set to 0 */ typedef struct ttf_head { SD_ULONG version; SD_ULONG fontRevision; SD_ULONG checksumAdjust; SD_ULONG magicNo; SD_USHORT flags; SD_USHORT unitsPerEm; SD_BYTE created[8]; SD_BYTE modified[8]; SD_FWORD xMin, yMin, xMax, yMax; SD_USHORT macStyle, lowestRecPPEM; SD_SHORT fontDirection, indexToLocFormat, glyphDataFormat; } TTF_HEAD ; typedef struct ttf_kern { SD_USHORT version, nTables; } TTF_KERN ; typedef struct ttf_kern_sub { SD_USHORT version, length, coverage; SD_USHORT nPairs, searchRange, entrySelector, rangeShift; } TTF_KERN_SUB; typedef struct ttf_kern_entry { SD_USHORT left, right; SD_FWORD value; } TTF_KERN_ENTRY; typedef struct ttf_cmap_fmt0 { SD_USHORT format; SD_USHORT length; SD_USHORT version; SD_BYTE glyphIdArray[256]; } TTF_CMAP_FMT0; typedef struct ttf_cmap_fmt2_subheader { SD_USHORT firstCode; SD_USHORT entryCount; SD_SHORT idDelta; SD_USHORT idRangeOffset; } TTF_CMAP_FMT2_SUBHEADER; typedef struct ttf_cmap_fmt2 { SD_USHORT format; SD_USHORT length; SD_USHORT language; SD_USHORT subHeaderKeys[256]; TTF_CMAP_FMT2_SUBHEADER subHeaders[1]; } TTF_CMAP_FMT2; typedef struct ttf_cmap_fmt4 { SD_USHORT format; SD_USHORT length; SD_USHORT version; SD_USHORT segCountX2; SD_USHORT searchRange; SD_USHORT entrySelector; SD_USHORT rangeShift; } TTF_CMAP_FMT4; typedef struct ttf_cmap_fmt12_entry { SD_ULONG startCharCode; SD_ULONG endCharCode; SD_ULONG startGlyphCode; } TTF_CMAP_FMT12_ENTRY; typedef struct ttf_cmap_fmt12 { SD_ULONG format; SD_ULONG length; SD_ULONG language; SD_ULONG nGroups; TTF_CMAP_FMT12_ENTRY entry[1]; /* nGroups */ } TTF_CMAP_FMT12; typedef struct ttf_cmap_entry { SD_USHORT platformID; SD_USHORT encodingID; SD_ULONG offset; } TTF_CMAP_ENTRY; typedef struct ttf_cmap { SD_USHORT version; SD_USHORT numberOfEncodingTables; TTF_CMAP_ENTRY encodingTable[1]; } TTF_CMAP ; typedef struct ttf_glyf { SD_SHORT numberOfContours; SD_FWORD xMin, yMin, xMax, yMax; } TTF_GLYF ; typedef struct ttf_maxp { SD_ULONG version; SD_USHORT numGlyphs, maxPoints, maxContours; SD_USHORT maxCompositePoints, maxCompositeContours; SD_USHORT maxZones, maxTwilightPoints, maxStorage; SD_USHORT maxFunctionDefs, maxInstructionsDefs; SD_USHORT maxSizeOfInstructions, maxComponentElements; SD_USHORT maxComponentDepth; } TTF_MAXP ; typedef struct short_2 { SD_SHORT upper; SD_USHORT lower; } SSFIX ; typedef struct ttf_post_head { SD_ULONG formatType; SSFIX italicAngle; SD_FWORD underlinePosition; SD_FWORD underlineThickness; SD_ULONG isFixedPitch; SD_ULONG minMemType42; SD_ULONG maxMemType42; SD_ULONG minMemType1; SD_ULONG maxMemType1; SD_USHORT numGlyphs; SD_USHORT glyphNameIndex; } TTF_POST_HEAD ; typedef struct ttf_oss2 { SD_USHORT version; /* 0x0002 */ SD_SHORT xAvgCharWidth; SD_USHORT usWeightClass; SD_USHORT usWidthClass; SD_USHORT fsType; SD_SHORT ySubscriptXSize; SD_SHORT ySubscriptYSize; SD_SHORT ySubscriptXOffset; SD_SHORT ySubscriptYOffset; SD_SHORT ySuperscriptXSize; SD_SHORT ySuperscriptYSize; SD_SHORT ySuperscriptXOffset; SD_SHORT ySuperscriptYOffset; SD_SHORT yStrikeoutSize; SD_SHORT yStrikeoutPosition; SD_SHORT sFamilyClass; SD_BYTE panose[10]; SD_ULONG ulUnicodeRange1; /* Bits 0-31 */ SD_ULONG ulUnicodeRange2; /* Bits 32-63 */ SD_ULONG ulUnicodeRange3; /* Bits 64-95 */ SD_ULONG ulUnicodeRange4; /* Bits 96-127 */ SD_CHAR achVendID[4]; SD_USHORT fsSelection; SD_USHORT usFirstCharIndex; SD_USHORT usLastCharIndex; SD_SHORT sTypoAscender; SD_SHORT sTypoDescender; SD_SHORT sTypoLineGap; SD_USHORT usWinAscent; SD_USHORT usWinDescent; SD_ULONG ulCodePageRange1; /* Bits 0-31 */ SD_ULONG ulCodePageRange2; /* Bits 32-63 */ SD_SHORT sxHeight; SD_SHORT sCapHeight; SD_USHORT usDefaultChar; SD_USHORT usBreakChar; SD_USHORT usMaxContext; } TTF_OS2; #endif /*STTABLES_H*/ ./swindow/SImage.cpp0000644000175000017500000001766010434025610014405 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SImage.h" #include "stoolkit/SExcept.h" #include class SImageBuffer { public: SImageBuffer (unsigned int shades, unsigned int width, unsigned int height); SImageBuffer (SS_WORD32* image, unsigned int shades, unsigned int width, unsigned int height); inline SS_WORD32 getShade(const int x, const int y) const; void compress(); ~SImageBuffer(); const SUniqueID& getID() const; unsigned int count; SS_WORD32* image; unsigned int width; unsigned int height; unsigned int shades; SUniqueID id; bool compressed; }; //PROFILE - made inline, better prototype SS_WORD32 SImageBuffer::getShade(const int x, const int y) const { if (compressed) { return (SS_WORD32) (((unsigned char*)image)[y * width + x]); } return image[y * width + x]; } /** * return the unique id of this buffer */ const SUniqueID& SImageBuffer::getID() const { return id; } SImageBuffer::SImageBuffer (unsigned int s, unsigned int w, unsigned int h) { shades = s; width = w; height = h; count = 1; image = new SS_WORD32 [width*height]; CHECK_NEW (image); compressed = false; } SImageBuffer::SImageBuffer (SS_WORD32* i, unsigned int s, unsigned int w, unsigned int h) { shades = s; width = w; height = h; count = 1; image = i; compressed = false; } SImageBuffer::~SImageBuffer() { if (compressed) { if (image) delete (unsigned char*)image; } else { if (image) delete (unsigned char*)image; } } void SImageBuffer::compress () { if (image == 0 || compressed || shades == 0 || shades > 255) { return; } unsigned char* ib = new unsigned char [width*height]; CHECK_NEW (ib); for (unsigned int i=0; i * @version: 2000-04-23 * This is the abstract widget toolkit font package */ SImage::SImage (unsigned int _colors, unsigned int _width, unsigned int _height) { buffer = new SImageBuffer (_colors, _width, _height); CHECK_NEW (buffer); origox = 0; origoy = 0; px = 0; py=0; offScreen = false; } SImage::SImage (SS_WORD32* _im, unsigned int _shades, int _origox, int _origoy, unsigned int _width, unsigned int _height) { buffer = new SImageBuffer (_im, _shades, _width, _height); CHECK_NEW (buffer); origox = _origox; origoy = _origoy; px = 0; py=0; offScreen = false; } void SImage::setOrigoX (int x) { origox = x; } void SImage::setOrigoY (int y) { origoy = y; } /** * This is for the Object class */ SObject* SImage::clone () const { SImage* ret = new SImage(*this); CHECK_NEW (ret); return ret; } SImage::SImage(const SImage& im) { buffer = ((SImage*) &im)->buffer; ((SImageBuffer*)buffer)->count++; px = im.px; py=im.py; offScreen = im.offScreen; origox = im.origox; origoy = im.origoy; } /** * This is a shallow copy */ SImage SImage::operator=(const SImage& im) { if (&im == this) return *this; if (buffer) { SImageBuffer* b = (SImageBuffer*) buffer; b->count--; if (b == 0) delete b; } buffer = ((SImage*) &im)->buffer; ((SImageBuffer*)buffer)->count++; px = im.px; py=im.py; offScreen = im.offScreen; origox = im.origox; origoy = im.origoy; return *this; } SImage::~SImage() { if (buffer) { SImageBuffer* b = (SImageBuffer*) buffer; b->count--; if (b == 0) delete b; } } int SImage::getOrigoX() const { return origox; } int SImage::getOrigoY() const { return origoy; } /** * Return the number of shades we have. * If it is zero, we have a truecolor image, otherwise * the image juste have 'shades'. * both truecolor and shaded images get the value with getSHade() */ unsigned int SImage::getShades () const { return ((SImageBuffer*)buffer)->shades; } unsigned int SImage::getWidth () const { return ((SImageBuffer*)buffer)->width; } unsigned int SImage::getHeight () const { return ((SImageBuffer*)buffer)->height; } /** * return the shade value. * This value is between 1.0..0 1.0 being the brightest. * @param x is the x coordinate * @param y is the y coordiante */ SS_WORD32 SImage::getShade(int x, int y) const { return ((SImageBuffer*)buffer)->getShade(x, y); } /** * Create an image from an xpm array * This is a very stoolkit version. Don't expect much. */ void SImage::compress () { ((SImageBuffer*)buffer)->compress(); } /** * Create an image from an xpm array * This is a very stoolkit version. Don't expect much. */ SImage::SImage (const char* const* xpm) { int w; int h; int clrs; int colperp; if (sscanf (xpm[0], "%d %d %d %d", &w, &h, &clrs, &colperp) != 4) { fprintf (stderr, "Error in xpm.\n"); return; } if (clrs > 64 && colperp > 1) { fprintf (stderr, "Too many colors in xpm.\n"); return; } unsigned char *p = new unsigned char[256]; CHECK_NEW (p); memset (p, 0, clrs); char shade[32]; char col[32]; unsigned char ui; SColorVector list; char* next; SS_WORD32 ret; unsigned int i; for (i=0; i<(unsigned int)clrs; i++) { ui = (unsigned char) xpm[1+i][0]; p[ui] = i; //fprintf (stderr, "%u\n", (unsigned int)ui); /* TODO: create colors in list */ if (sscanf (&xpm[i+1][2], "s s_%s c %s", shade, col) == 2 || sscanf (&xpm[i+1][2], "c %s s s_%s", col, shade) == 2) { ret = (SS_WORD32) strtoul (shade, &next, 16); list.append (SColor(col, (double)ret/255)); //fprintf (stderr, "col:%s s:%s = %lx ret=%lx\n", col, shade, // (unsigned long) list[i].getValue(), (unsigned long)ret); } else if (sscanf (&xpm[i+1][2], "c %s", col) == 1) { //fprintf (stderr, "col %s\n", col); if (SString(col) == SString("None") || SString(col) == SString("none")) { list.append(SColor(0.0, 0.0, 0.0, 0.0)); //fprintf (stderr, "XXXX %s = %lx (%lx)\n", col, // (unsigned long) list[i].getValue(), // (unsigned long) SColor(0.0,0.0,0.0,0.0).getValue()); } else { list.append(SColor(col, 1.0)); } //fprintf (stderr, "col%s = %lx (%lx)", col, // (unsigned long) list[i].getValue(), // (unsigned long) SColor(col, 1.0).getValue()); } else if (sscanf (&xpm[i+1][2], "s s_%s", shade) == 1) { ret = (SS_WORD32) strtoul (&shade[1], &next, 16); list.append(SColor( (unsigned char) 0, (unsigned char) 0, (unsigned char) 0, (unsigned char) ret)); } else { fprintf (stderr, "Error in xpm line %d.\n", 1+i); delete p; return; } } SImageBuffer* b = new SImageBuffer (0, w, h); buffer = b; CHECK_NEW (buffer); origox = 0; origoy = 0; px = 0; py=0; offScreen = false; unsigned int j; for (i=0; i<(unsigned int)h; i++) { for (j=0; j<(unsigned int)w; j++) { ui = p[(unsigned char) xpm[1+clrs+i][j]]; b->image[i * w + j] = list[ui].getValue(); //fprintf (stderr, "%u\n", (unsigned int)ui); /* TODO: create colors in list */ //fprintf (stderr, "%lx ", (unsigned long) list[ui].getValue()); } } delete p; } /** * Return a unique id that is the same for images that * share the same buffer. */ const SUniqueID& SImage::getID() const { return ((SImageBuffer*)buffer)->getID(); } ./swindow/SPrinter.h0000644000175000017500000000564710726163470014470 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SPrinter_h #define SPrinter_h #include "swindow/SCanvas.h" #include "swindow/SPrinter.h" #include "stoolkit/SExcept.h" #include "stoolkit/SString.h" #include "stoolkit/SProperties.h" #include "stoolkit/SIOStream.h" #include "stoolkit/SMatrix.h" /** * @author: Gaspar Sinai * @version: 2000-07-06 * This is a postscript renderer for yudit. */ class SPrinter : public SCanvas { public: enum SMedia { A3, A4, A5, B4, B5, Executive, Folio, Ledger, Legal, Letter, Quarto, Statement, Tabloid }; enum SOrientation { PORTRAIT, LANDSCAPE }; enum SType { POSTSCRIPT, PCL, WIN32 }; SPrinter (const SWriter& writer, SType=POSTSCRIPT, SMedia m=A4, SOrientation o=PORTRAIT); SPrinter (const SPrinter& printer); virtual ~SPrinter(); unsigned int getWidth() const; unsigned int getHeight() const; int getX() const; int getY() const; SString getCreationDate() const; bool open (bool background=false); void newPage(); bool cacheOn (bool on=true); bool close (); bool hasNative() const; /* From SCanvas */ virtual bool newpath (double x, double y, const SString& id); virtual void fill (const SPen& pen); virtual void stroke (const SPen& pen); virtual void fill (); virtual void stroke (); virtual void moveto (double x, double y); virtual void lineto (double x, double y); virtual void curveto (double x0, double y0, double x1, double y1, double x3, double y3); virtual void closepath(); virtual void pushmatrix(); virtual void popmatrix(); virtual void scale (double x, double y); virtual void translate (double x, double y); virtual void rotate (double angle); virtual void bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len); virtual void bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height); virtual void bitline (const SColor& fg, int x, int y, int tox, int toy); virtual void bitpoint (const SColor& fg, int x, int y); virtual void bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size); private: SType type; SCanvas* delegate; }; #endif /* SPrinter_h */ ./swindow/SAwt.h0000644000175000017500000000356210725646260013574 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SAwt_h #define SAwt_h #include "swindow/SWindow.h" #include "swindow/SFontNative.h" #include "stoolkit/SExcept.h" #include "stoolkit/SString.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ /** * This class should be implemented for a window toolkit implementation */ class SAwtImpl { public: SAwtImpl(); virtual ~SAwtImpl(); virtual SWindow* getWindow (SWindowListener*l, const SString& name); virtual SFontNative* getFont (const SString& enc); virtual void setEncoding (const SString& str); }; /** * This is the awt handler. */ class SAwt { public: // changed cache size from 2000 to 4000 because of syntax highlighting SAwt (bool cacheOn=true, unsigned int cacheSize=4000); ~SAwt (); // Destroys the implementation. static void setImpl (SAwtImpl* impl); static SWindow* getWindow (SWindowListener* l, const SString& name); static void setEncoding (const SString& str); static SFontNative* getFont (const SString& enc); static bool implemented(); static bool hasGUI (); static SAwtImpl* delegate; }; #endif /* SAwt_h */ ./swindow/SFontBDF.cpp0000644000175000017500000002006110434025610014572 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFontBDF.h" #include "stoolkit/SCluster.h" #include "stoolkit/SBinVector.h" #include #include SFontBDF::SFontBDF (const SFile& _file) : file(_file) { image = file.getFileImage(); array = image.array(); /* position of bimaps */ memset (position, 0, 0x10000 * sizeof (unsigned int)); memset (widths, 0, 0x10000 * sizeof (char)); /* these values are read from bdf font */ iscale = 0; iascent = 0; idescent = 0; size = (image.size() >= 0) ? (unsigned int) image.size() : 0; bool gotiscale = false; bool gotiascent = false; bool gotidescent = false; bool gotname = false; unsigned int i=0; while (i0x10000) return false; double w; bool re = width (scale, g, &w); if (!re) return re; int wd = (unsigned int) w; /* scan */ unsigned int pt = (unsigned int) position[g]; char ch[9]; int x = (int)matrix.t0; int y = (int)matrix.t1; SBinVector ix; SBinVector iy; for (int i=0; i> 1; } } if (ix.size()) { canvas->bitpoints (fg, ix.array(), iy.array(), ix.size()); } return true; } bool SFontBDF::width (double scale, SS_UCS4 g, double *width_) { /* not a valid font */ if (width_) *width_ = 0.0; if (iscale == 0 || (int)scale != iscale) return false; if (find (g)) { /* Sorry, indic won't work with unifont. */ if (getUnicodeScript (g) <= 0 && g != 0x200D && g != 0x200C) /* ZWJ ZWNJ */ { if (width_) *width_ = (double) widths[g]; return true; } } return false; } double SFontBDF::width (double scale) { if (iscale == 0 || (int)scale != iscale) return 1.0; return (double) iascent; /* hack. */ } double SFontBDF::ascent (double scale) { if (iscale == 0 || (int)scale != iscale) return 1.0; return (double) iascent; } double SFontBDF::descent (double scale) { if (iscale == 0 || (int)scale != iscale) return 0.0; return (double) idescent; } double SFontBDF::gap (double scale) { if (iscale == 0 || (int)scale != iscale) return 0.0; return 0.0; } bool SFontBDF::find (SS_UCS4 g) { if (g < 0x20) return false; if (g > 0xffff) return false; if (array == 0) return false; if (widths[g] == 1) return false; if (widths[g] != 0) return true; /* load it ... */ int bottom = 0; int top = (int)image.size(); /* do a binary search */ SS_UCS4 gout; int owidth = 0; while (top >= bottom) { int mid = (top + bottom) / 2; int index = nextIndex (mid, &gout, &owidth); if (gout < 0x10000 && index >=0) { if (widths[gout] == 0) { position[gout] = index; widths[gout] = (char)owidth; } } if (index < 0 || gout > g) { top = mid - 1; } else if (gout < g) { bottom = mid + 1; } else { return true; } } widths[g] = 1; return false; } /** * Find next XXXX: combination. * @return position to first X and return the value of X in g. * return negative if not found any, and set g to 0x10000. * Sample: STARTCHAR exclam ENCODING 33 SWIDTH 540 0 DWIDTH 9 0 BBX 9 18 0 -4 BITMAP 0000 0000 0000 0800 0800 0800 0800 0800 0800 0800 0000 0000 0800 0000 0000 0000 0000 ENDCHAR */ int SFontBDF::nextIndex (int pos, SS_UCS4* g, int *owidth) { *g = 0x10000; *owidth = 1; unsigned int i=(unsigned int) pos; bool started = false; int encoding = -1; while (i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SColor.h" #include "stoolkit/SBinHashtable.h" #include "swindow/SColorDefs.i" #include /** * @author: Gaspar Sinai * @version: 2000-04-23 */ SColor::SColor (void) : red (0xff), green (0xff), blue (0xff), alpha (0xff) { } /** * This is out color class */ SColor::SColor (SS_WORD32 value) : red ((value>>16)&0xff), green ((value>>8)&0xff), blue (value&0xff), alpha ((value>>24)&0xff) { } SColor::SColor (unsigned char _red, unsigned char _green, unsigned char _blue, unsigned char _alpha) : red(_red), green (_green), blue (_blue), alpha (_alpha) { } SColor::SColor (double _red, double _green, double _blue, double _alpha) : red((unsigned char)(_red*255.9)), green ((unsigned char)(_green*255.9)), blue ((unsigned char) (_blue*255.9)), alpha ((unsigned char)(_alpha*255.9)) { } SColor::SColor (const SColor& color) : red(color.red), green (color.green), blue (color.blue), alpha (color.alpha) { } SColor SColor::operator= (const SColor& color) { if (&color == this) return *this; red = color.red; green = color.green; blue = color.blue; alpha = color.alpha; return *this; } SColor::~SColor() { } SS_WORD32 SColor::getValue() const { return ((SS_WORD32) blue) + (((SS_WORD32) green) << 8) + (((SS_WORD32) red) << 16) + (((SS_WORD32) alpha) << 24); } SBinHashtable colorHashtable; bool colorHashtableInited = false; SS_WORD32 SColor::getNamedColor(const SString& _name) { if (!colorHashtableInited) { colorHashtable.put ("white", 0xffffff); colorHashtable.put ("black", 0x000000); colorHashtable.put ("darkgray", 0xa9a9a9); colorHashtable.put ("gray", 0xbebebe); colorHashtable.put ("lightgray", 0xd3d3d3); colorHashtable.put ("red", 0xff0000); colorHashtable.put ("green", 0x00ff00); colorHashtable.put ("blue", 0x0000ff); colorHashtable.put ("cyan", 0x00ffff); colorHashtable.put ("magenta", 0xff00ff); colorHashtable.put ("yellow", 0xffff00); colorHashtable.put ("darkred", 0x8b0000); colorHashtable.put ("darkgreen", 0x006400); colorHashtable.put ("darkblue", 0x00008b); colorHashtable.put ("darkcyan", 0x008b8b); colorHashtable.put ("darkmagenta", 0x8b008b); colorHashtable.put ("darkyellow", 0x8b8b00); colorHashtable.put ("metal", 0xafb49f); for (unsigned int i=0; rgb_colors[i].name != 0; i++) { unsigned char r = ((unsigned char)(rgb_colors[i].red)); unsigned char g = ((unsigned char)(rgb_colors[i].green)); unsigned char b = ((unsigned char) (rgb_colors[i].blue)); unsigned char a = 0; SS_WORD32 v = ((SS_WORD32) b) + (((SS_WORD32) g) << 8) + (((SS_WORD32) r) << 16) + (((SS_WORD32) a) << 24); SString colorName (rgb_colors[i].name); colorName.lower(); colorHashtable.put (colorName, v); } colorHashtableInited = 1; } SS_WORD32 ret = 0; SString name (_name); if (_name.size()==7 && _name[0] == '#') { name.append ((char)0); char * next; ret = (SS_WORD32) strtoul (&(name.array()[1]), &next, 16); } else { name.lower (); ret = colorHashtable.get (name); } return ret; } bool SColor::operator==(const SColor& col) const { return (red==col.red && green == col.green && blue == col.blue && alpha == col.alpha); } bool SColor::operator!=(const SColor& col) const { return (red!=col.red || green != col.green || blue != col.blue || alpha != col.alpha); } /** * Blend the other color into this color, using alpha values * This function is virtual because you may need to reimplement this. */ void SColor::blend (const SColor& color) { red = (unsigned char) (((int) red * (255 - (int)color.alpha) + (int) color.red * (int) color.alpha) / 255); green = (unsigned char) (((int) green * (255 - (int)color.alpha) + (int) color.green * (int) color.alpha) / 255); blue = (unsigned char) (((int) blue * (255 - (int)color.alpha) + (int) color.blue * (int) color.alpha) / 255); } SColor SColor::lighter(double a) const { SColor orig(*this); SColor ret(1.0, 1.0, 1.0, a); orig.blend (ret); return (SColor(orig)); } SColor SColor::darker(double a) const { SColor orig(*this); SColor ret(0.0, 0.0, 0.0, a); orig.blend (ret); return (SColor((orig))); } /** * This is from SObject */ SObject* SColor::clone () const { SColor * c = new SColor(*this); CHECK_NEW (c); return c; } SColor::SColor (const SString& name, double _alpha) { SS_WORD32 vle = getNamedColor (name); alpha = (unsigned char) (_alpha * 255.9); blue = (vle)&0xff;; green = (vle>>8)&0xff; red = (vle>>16)&0xff; } ./swindow/SRedrawEvent.cpp0000644000175000017500000000560311326744310015611 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SRedrawEvent.h" #include /** * Redraw event that can be put in a hashtable. * It is very efficient to collapse many SRedrawEvent object with merge. */ SRedrawEvent::SRedrawEvent (bool _clear, int _x, int _y, unsigned int _width, unsigned int _height) { clear = _clear; x = _x; y = _y; width = _width; height = _height; } SRedrawEvent::SRedrawEvent (const SRedrawEvent& evt) { clear = evt.clear; x = evt.x; y = evt.y; width = evt.width; height = evt.height; } SRedrawEvent::~SRedrawEvent() { } SRedrawEvent SRedrawEvent::operator=(const SRedrawEvent& evt) { clear = evt.clear; x = evt.x; y = evt.y; width = evt.width; height = evt.height; return *this; } SObject* SRedrawEvent::clone () const { return new SRedrawEvent (*this); } /** * Merge this event with another one. * return false if they can not be merged because they * don't overlap. */ bool SRedrawEvent::merge (const SRedrawEvent& evt) { /*/ unsigned int mew = width; unsigned int meh = height; unsigned int youw = evt.width; unsigned int youh = evt.height; */ /* check if they have overlapping areas */ /* maximum start */ int maxx = (x > evt.x) ? x : evt.x; int maxy = (y > evt.y) ? y : evt.y; /* minimum end */ int minx = (x+(int) width < evt.x + (int) evt.width) ? x+(int) width : evt.x + (int) evt.width; int miny = (y+(int) height < evt.y + (int) evt.height) ? y+(int) height : evt.y + (int) evt.height; if (maxx > minx || maxy > miny) return false; if (evt.clear) clear = true; int oldx1 = x + (int) width; int oldy1 = y + (int) height; int newx1 = evt.x + (int) evt.width; int newy1 = evt.y + (int) evt.height; if (evt.x < x) x = evt.x; if (evt.y < y) y = evt.y; if (newx1 > oldx1) oldx1 = newx1; if (newy1 > oldy1) oldy1 = newy1; width = (unsigned int) (oldx1 - x); height = (unsigned int) (oldy1 - y); /* if (width == 10 && height == 200) { fprintf (stderr, "merge 10,200\n"); } if (width == 20 && height == 341) { fprintf (stderr, "merge 20,341 me=%u,%u you=%u,%u\n", mew, meh, youw, youh); } */ /* mergeable */ return true; } ./swindow/SFontNative.h0000644000175000017500000000314510434025606015103 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontNative_h #define SFontNative_h #include "swindow/SCanvas.h" #include "swindow/SPen.h" #include "stoolkit/STypes.h" #include "stoolkit/SString.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SObject.h" #include "stoolkit/SUniMap.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is a specific native font, with a certain size */ class SFontNative { public: SFontNative (void); virtual ~SFontNative (); virtual bool draw (const SString& xlfd, SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 g); virtual bool width (const SString& xlfd, SS_UCS4 g, double *width_); virtual double width (const SString& xlfd); virtual double ascent (const SString& xlfd); virtual double descent (const SString& xlfd); virtual double gap (const SString& xlfd); }; #endif /* SFontNative_h */ ./swindow/SFont.cpp0000644000175000017500000005772211326522757014313 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFont.h" #include "swindow/SFontFB.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SHashtable.h" #include "stoolkit/STextData.h" #include "stoolkit/SExcept.h" #include "stoolkit/SCluster.h" static SFontFB fallbackFont; typedef SHashtable SFontHashtable; static SFontHashtable* fontHashtable=0; static SFontFB::SIGN mapFB (const SGlyph& glyph); /* write the composing character bellow this */ /** * Create a font. The font can have many faces. * @param _name is the logical name of this font. */ SFont::SFont (const SString _name) : name(_name), xlfd (SD_XLFD_ANY) { if (fontHashtable == 0 ) fontHashtable = new SFontHashtable(); if (fontHashtable->get (name) != 0) fontVector = (*fontHashtable)[name]; setSize (16.0); } /** * Create a font. The font can have many faces. * @param _name is the logical name of this font. */ SFont::SFont (const SString _name, double _size) : name(_name), xlfd (SD_XLFD_ANY) { if (fontHashtable == 0 ) fontHashtable = new SFontHashtable(); if (fontHashtable->get (name) != 0) fontVector = (*fontHashtable)[name]; setSize (_size); } /** * get a point 16 font called _default */ SFont::SFont (void) : name("default"), xlfd (SD_XLFD_ANY) { static bool _defaultSet=false; if (_defaultSet==false) { SStringVector m( /* yudit.hex has ohungarian.hex and part of unifont.hex */ // Indic range is not necessary free. But they are the best "yudit.hex,arabforms.hex,syriacforms.hex,unifont.hex," "markus9x18.bdf,markus18x18ja.bdf," "-*-*-medium-r-normal--16-*-*-*-c-*-iso8859-1," "-*-*-*-*-*--16-*-*-*-c-*-iso8859-1," "THOOLIUC.TTF:mlym," "MuktiNarrow.ttf:beng," "ani.ttf:beng," "pothana2000.ttf:telu," "TCRCYoutsoUnicode.ttf:tibt," "raghu.ttf:deva," "mangal.ttf:deva,tunga.ttf:knda,code2000.ttf:taml," "raavi.ttf:guru,shruti.ttf:gujr," "arialuni.ttf,cyberbit.ttf," "code2000.ttf,code2001.ttf:unicode:RL,arial.ttf," //"rovasSMP.ttf," // Hosszu Gabor //"oldhunSMP.ttf," // Michael Everson "yudit.ttf" ); SFontImplVector list; for (unsigned int i=0; i1 && v[1].size()!=0) enc = v[1]; SFontImpl impl (v[0], enc); if (v.size()>2 && v[2].size()>0) { SStringVector pvect(v[2], ";"); SProperties props; for (unsigned int j=0; j fontGap) fontGap = g; if (a > fontAscent) fontAscent = a; if (d > fontDescent) fontDescent = d; } if (fontAscent <= 1.0 || fontAscent < points/2) { fontGap = fallbackFont.gap(m); fontAscent = fallbackFont.ascent(m); fontDescent = fallbackFont.descent(m); if (fontAscent < 1.0) fontAscent = 1.0; } fallbackScale = fontAscent+fontDescent; } /** * Get the size of the font. * @return the size in points */ double SFont::getSize () const { return fontScale; } /** * A static method to build a font list. * This is only use at initialization time. * @param name is the name of the font. * @param gface is the face to add to the name. */ void SFont::put (const SString name, const SFontImplVector& face) { if (fontHashtable == 0 ) fontHashtable = new SFontHashtable(); fontHashtable->put (name, face); } /** * clear all the stuff in the list */ void SFont::clear() { } /** * map a fallback font sign. */ static SFontFB::SIGN mapFB (const SGlyph& glyph) { if (glyph.decompSize() > 1) { if (glyph[0] == SD_CD_CR || glyph[1] == SD_CD_LF) return SFontFB::CRLF; if (glyph[1] == SD_CD_CR || glyph[0] == SD_CD_LF) return SFontFB::LFCR; } else { if (glyph.getChar() == SD_CD_CR) return SFontFB::CR; if (glyph.getChar() == SD_CD_LF) return SFontFB::LF; if (glyph.getChar() == SD_CD_LS) return SFontFB::LS; if (glyph.getChar() == SD_CD_FF) return SFontFB::FF; if (glyph.getChar() == SD_CD_PS) return SFontFB::PS; if (glyph.getChar() == SD_CD_TAB) return SFontFB::TAB; if (glyph.getChar() == SD_CD_LRM) return SFontFB::LRM; if (glyph.getChar() == SD_CD_RLM) return SFontFB::RLM; if (glyph.getChar() == SD_CD_ZWJ) return SFontFB::FB_ZWJ; if (glyph.getChar() == SD_CD_ZWNJ) return SFontFB::FB_ZWNJ; } return SFontFB::CTRL; } /** * Try to draw one single glyph. * @param canvas is the canvas to draw to * @param m is the conversion matrix * @param uch is the array containing ucs4 * @prama len is the length of the array */ void SFont::draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& m, const SGlyph& glyph) { double currw = 0.0; if (glyph.isSpecial()) { SS_Matrix2D sd; double sc = fallbackFont.scale(); sd.scale (fallbackScale * sc, fallbackScale * sc); sd.translate (0, -fontDescent); SS_Matrix2D sm = m * sd; SFontFB::SIGN sig = mapFB (glyph); /* The markers are not mirrored. */ if (!glyph.isLR() && sig != SFontFB::LRM && sig != SFontFB::RLM) { currw = fallbackFont.signWidth (sm, sig); /* mirroring */ sm.x0 = -sm.x0; sm.t0 = sm.t0 + currw; } fallbackFont.signDraw(canvas, pen, sm, sig, glyph.getFirstChar()); return; } /* try to draw it with all fonts. */ SS_UCS4 comp = glyph.getShapedChar(); unsigned int scriptcode = getLigatureScriptCode (comp); SV_UCS4 ligclust; if (scriptcode == SD_COMBINING_LIGATURE) { unsigned int lgsize = getLigatureCluster (comp, 0); if (lgsize > 1) { SS_UCS4* lc = new SS_UCS4[lgsize]; CHECK_NEW (lc); getLigatureCluster (comp, lc); comp = lc[0]; for (unsigned int i=0; i= 0xEE00 && comp < 0xEE9F) || (comp >= 0x10300 && comp <= 0x1032F) || (comp >= 0x10c00 && comp <= 0x10fff) || scriptcode == SD_ROVASIRAS || scriptcode == SD_PUA_ROVAS) { /* Try to use lr and rl attributes. This is the non-mirrored dwaring. */ for (i=0; i 0) { double* positions = new double[gsize]; unsigned int* indeces = new unsigned int[gsize]; CHECK_NEW (positions); CHECK_NEW (indeces); bool found = false; bool overstrike = (glyph.getShapeArray()==0 && !glyph.isYuditLigature() && !glyph.isCluster()); /* * Hack for special Yudit ligatures * Normally clusters are not OVERSTRIKE. * MARK Composing Cluster: see bin/cluster/cluster.template */ if (gsize > 1 && (decomp[1] == 0x309A || decomp[1] == 0x300 || decomp[1] == 0x301)) { overstrike = true; } else { } int scode = getLigatureScriptCode (comp); if (scode == SD_HANGUL_JAMO || scode == SD_LAO || scode == SD_THAI || scode == SD_TIBETAN) { overstrike = true; } /* shape fallback does not include composing marks */ fbs = glyph.getShapeFallback(); if (fbs) { overstrike = false; /* well, this is overstrike sometimes */ decomp = fbs; /* even if we can not draw it, this will be displayed */ } /* we can not do overstrike positioning on a shape fallback */ if (overstrike) { setBase (decomp[0]); } else { setBase (0); } /* build positions */ unsigned int index = 0; unsigned int i=0; unsigned int fsize = fontVector.size(); double fullsize = 0; while (i 0 && decomp[index]==0x200d) ? true: im.width (decomp[index], &currw); /* ZWJ and ZWNJ - use fallback if not present.*/ if (!used && i+1 == fsize && !overstrike) { SS_Matrix2D sm; double sc = fallbackFont.scale(); sm.scale (fallbackScale * sc, fallbackScale * sc); used = true; i = fsize; currw = fallbackFont.width (sm, decomp[index]); } /* True Type fonts will need to position non spacing marks *after* moving cursor */ if (index ==0) { if (!used || currw==0) { i++; continue; } positions[index] = currw; fullsize = currw; } else if (overstrike) /* may have zero width */ { if (!used) { i++; continue; } /* by default don't move caret */ positions[index] = 0; /* * Should be in sync with: SFontTTF::getBaseOffsets */ if (!im.isLeftAligned(decomp[index])) { positions[index] = positions[0]-currw; } } else { /* clusters can have 0 width stuff. */ if (!used) { i++; continue; } fullsize += currw; positions[index] = fullsize; } indeces[index] = i; i=0; index++; /* found if all found */ if (index == gsize) { baseWidth = fullsize; found = true; break; } } if (found) { for (i=0; i 1) { ligclust.remove (0); postcomp = ligclust.size(); for (unsigned int i=0; i= 0x500 && decomp[i] < 0x900)) { mc.t0 = m.t0 + baseWidth / 2; } } /* Draw it finally... */ if (im.draw (canvas, pen, mc, decomp[i], glyph.isLR())) { break; } } } /* return anyway. Extra composing failures will not be indicated for now. There is one for sure when you apply the composing to a cluster */ return; } /* Draw some last resort font. */ SS_Matrix2D sd; double sc = fallbackFont.scale(); sd.scale (fallbackScale * sc, fallbackScale * sc); sd.translate (0, -fontDescent); SS_Matrix2D sm = m * sd; SS_Matrix2D mo = sm; SV_UCS4 allchar; if (comp != 0) { allchar.append (comp); gsize = glyph.compSize(); decomp = glyph.getCompArray(); } else { /* draw everything. CompArray is right after DecompArray */ gsize += glyph.compSize(); } for (unsigned int k=0; k 1) { SS_UCS4* lc = new SS_UCS4[lgsize]; CHECK_NEW (lc); getLigatureCluster (comp, lc); comp = lc[0]; delete lc; } } else if (!glyph.isLR() && glyph.isMirrorable()) { comp = glyph.getMirroredChar(); } /* first try the precomposed */ if (comp != 0 && comp!= 0x200c && comp != 0x200d) { for (unsigned int i=0; i0.0) { return currw; } } } } /* You reach this point if comp did not work */ unsigned int gsize = glyph.decompSize(); const SS_UCS4* decomp = glyph.getDecompArray(); if (gsize > 0) { bool overstrike = (glyph.getShapeArray() ==0 && !glyph.isYuditLigature() && !glyph.isCluster()); /* hack for special Yudit ligatures */ /* MARK Composing Cluster: see bin/cluster/cluster.template */ if (gsize > 1 && (decomp[1] == 0x309A || decomp[1] == 0x300 || decomp[1] == 0x301)) { overstrike = true; } int scode = getLigatureScriptCode (comp); if (scode == SD_HANGUL_JAMO || scode == SD_LAO || scode == SD_THAI || scode == SD_TIBETAN) { overstrike = true; } const SS_UCS4* fbs = glyph.getShapeFallback(); if (fbs) { overstrike = false; decomp = fbs; /* even if we can not draw it, this will be displayed */ } unsigned int index = 0; unsigned int i=0; unsigned int fsize = fontVector.size(); while (i 0 && decomp[index]==0x200d) ? true : im.width (decomp[index], &currw); /* can draw fallback in the middle */ if (!used && i+1 == fsize && !overstrike) { SS_Matrix2D sm; double sc = fallbackFont.scale(); sm.scale (fallbackScale * sc, fallbackScale * sc); used = true; i = fsize; currw = fallbackFont.width (sm, decomp[index]); } if (index==0 && (currw==0.0 || !used)) { i++; continue; } /* clusters also can have 0 width stuff */ if (!used) { i++; continue; } if (overstrike) { if (index==0) maxw = currw; } else { maxw += currw; } index++; i = 0; if (index >= gsize) { if (maxw > 0.0) return maxw; break; } } } /* * If it is shaped and current shape is any fallback * Isolated fallback has been processed already. */ if (glyph.getShapeArray()!=0 && glyph.currentShape != 0) // ISOLATED { SS_UCS4 orig = glyph.getChar(); if (orig!=comp && orig != 0) { for (unsigned int i=0; i0.0) { return currw; } } } } /* last resort font */ SS_Matrix2D sm; double sc = fallbackFont.scale(); sm.scale (fallbackScale * sc, fallbackScale * sc); maxw = 0; if (comp != 0) { SS_UCS4 chr = comp; if (getLigatureScriptCode (chr) == SD_AS_LITERAL) { chr = chr & 0xff; } maxw = fallbackFont.width (sm, chr); gsize = glyph.compSize(); decomp = glyph.getCompArray(); } else { /* draw everything */ gsize += glyph.compSize(); } for (unsigned int i=0; i< gsize; i++) { SS_UCS4 chr = decomp[i]; if (getLigatureScriptCode (chr) == SD_AS_LITERAL) { chr = chr & 0xff; } maxw = maxw + fallbackFont.width (sm, chr); } return maxw; } /** * return the overall width */ double SFont::width () const { return fontWidth; } /** * return the overall ascent */ double SFont::ascent () const { return fontAscent; } /** * return the overall descent */ double SFont::descent () const { return fontDescent; } /** * return the overall gap */ double SFont::gap () const { return fontGap; } ./swindow/SWindow.cpp0000644000175000017500000003063011334656077014643 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SWindow.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ SWindowListener::SWindowListener() { } SWindowListener::~SWindowListener() { } /** * Try to close the window. If return value is true. */ bool SWindowListener::windowClose (SWindow* w) { return false; } void SWindowListener::buttonPressed (SWindow *w, int button, int x, int y) { } void SWindowListener::buttonReleased (SWindow *w, int button, int x, int y) { } void SWindowListener::buttonDragged (SWindow *w, int button, int x, int y) { } void SWindowListener::keyPressed (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { } void SWindowListener::keyReleased (SWindow * w, SKey key, const SString& s, bool ctrl, bool shift, bool meta) { } void SWindowListener::redraw (SWindow* w, int x, int y, unsigned int width, unsigned int height) { } void SWindowListener::resized (SWindow* w, int x, int y, unsigned int width, unsigned int height) { } void SWindowListener::enterWindow (SWindow* w) { } void SWindowListener::leaveWindow (SWindow* w) { } /** * called when a drop event happens. * @return true if the event is handled. */ bool SWindowListener::drop (SWindow* w, const SString& mimetype, const SString& data) { return false; } /** * Sets the targets that can be dropped on this window */ void SWindow::setDroppable (const SStringVector& targets) { } SWindow::SWindow() { modalFlag = false; xpos = SD_WIN_X; ypos = SD_WIN_Y; xwidth = SD_WIN_W; yheight = SD_WIN_H; } SWindow::~SWindow() { } void SWindow::show () { } void SWindow::hide () { } void SWindow::resize (unsigned int _width, unsigned int _height) { xwidth = _width; yheight = _height; } void SWindow::move (int x, int y) { xpos = x; ypos = y; } /** * This reqests a redraw, efficiently after all events got processed. * @param clear is true if the window needs to be cleared before calling redraw. * @param x is the x origin of the event * @param y is the y origin of the event * @param width is the width of the event * @param height is the height of the event */ void SWindow::redraw (bool clear, int x, int y, unsigned int width, unsigned int height) { } void SWindow::setParent (SWindow* w, int x, int y) { } /** * Clear a reagion (set it to the background) * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to clear * @param height is the height of the region to clear */ void SWindow::clear (int x, int y, unsigned int width, unsigned int height) { } /** * Copy an area on the window to another area. * overlap is ok. * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to copy * @param height is the height of the region to copy * @param tox is the destination left corner * @param toy is the destination top corner */ void SWindow::copy (int x, int y, unsigned int width, unsigned int height, int tox, int toy) { } /** * Fill a solid rectangle * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to fill * @param height is the height of the region to fill */ void SWindow::bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height) { } /** * Draw a solid line. * @param x is the starting x point * @param y is the starting y point * @param x is the ending non-exclusive x point * @param y is the ending non-exclusive y point */ void SWindow::bitline (const SColor& fg, int x, int y, int tox, int toy) { } /** * Try to put a cached image with id at x,y * if failed, return false. You should draw it then. */ bool SWindow::newpath (double x, double y, const SString& id) { return false; } /** * Fill the image with this pen. */ void SWindow::fill (const SPen& pen) { } void SWindow::stroke(const SPen& pen) { } void SWindow::moveto (double x, double y) { } void SWindow::lineto (double x, double y) { } void SWindow::curveto (double x0, double y0, double x1, double y1, double x2, double y2) { } void SWindow::closepath() { } void SWindow::rotate (double angle) { } void SWindow::scale (double x, double y) { } void SWindow::translate (double x, double y) { } /** * put an image to the scene. originX and OriginY is ignored. * @param x is the x corener of the image. * @param y is the y corner of the image. * @param image is the actual image. */ void SWindow::putImage (int x, int y, const SImage& image) { } void SWindow::setBackground(const SColor &color) { } void SWindow::pushmatrix() { } void SWindow::popmatrix() { } /** * Draw a native font to the screen. This will not delete existing data. * @param x is the origo position * @param y is the origo position * @param native is X11 FID for X11 * @param data is a XChar2b structure for X11 * @param len is the unber of chars for X11 */ void SWindow::bitfont (const SPen& pen, double x, double y, void* native, char* data, unsigned int len) { } void SWindow::bitpoint (const SColor& fg, int x, int y) { } void SWindow::bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size) { } void SWindow::getKeyboardFocus() { return; } void SWindowListener::lostKeyboardFocus(SWindow* w) { } void SWindowListener::lostClipSelection(SWindow* w) { } void SWindowListener::gainedKeyboardFocus(SWindow* w) { } /** * Assign a rectangualr clip area. Everithing outside this area will be clipped. */ void SWindow::setClippingArea (int x, int y, unsigned int width, unsigned int height) { } /** * clear the clipping area. */ void SWindow::removeClippingArea () { } /** * This routine is not supposed to be used extensively. This is * to check the current matrix. */ SS_Matrix2D SWindow::getCurrentMatrix() const { return SS_Matrix2D(); } /** * Officially this is the application icon and not image. */ void SWindow::setApplicationImage (const SImage& im) { } /** * Start a native input method. * @param name is the name of the input method: * like "kinput2" * @param properties provide some attributes to the input method. * It contains: * InputStyle: root over-the-spot off-the-spot * @return true if it could be started. */ bool SWindow::startInputMethod (const SString& name, const SProperties& prop) { return false; } void SWindow::stopInputMethod () { } /** * Change properties of the input method on the fly. * @param prop contains properties like: * InputStyle: root over-the-spot off-the-spot */ void SWindow::setInputMethodProperties (const SProperties& prop) { } /** * Get the current input method. * it returns a zero sized string if input method is not started. */ SString SWindow::getInputMethod () { return SString(); } bool SWindow::hasStatusArea () { return false; } bool SWindow::isVisible () { return false; } /** * Get an utf8 encoded text from clipboard. */ SString SWindow::getClipUTF8() { return SString(); } /** * put and utf8-encoded text to clipboard. */ void SWindow::putClipUTF8(const SString& utf8) { } void SWindow::setMinimumSize (unsigned int width, unsigned int height) { } void SWindow::setTitle (const SString& title) { } /** * add and remove keyboard accelerator */ void SWindow::addAccelerator (const SAccelerator& a, SAcceleratorListener* l) { } void SWindow::removeAccelerator (const SAccelerator& a, SAcceleratorListener* l) { } /** * make an ID for a button from string */ int getButtonID (const SString& string) { if (string.size()==0) return -1; switch (string[0]) { case 'A': return SWindowListener::Key_A; case 'a': return SWindowListener::Key_a; case 'B': return SWindowListener::Key_B; case 'b': return SWindowListener::Key_b; case 'C': return SWindowListener::Key_C; case 'c': return SWindowListener::Key_c; case 'D': return SWindowListener::Key_D; case 'd': return SWindowListener::Key_d; case 'E': return SWindowListener::Key_E; case 'e': return SWindowListener::Key_e; case 'F': return SWindowListener::Key_F; case 'f': return SWindowListener::Key_f; case 'G': return SWindowListener::Key_G; case 'g': return SWindowListener::Key_g; case 'H': return SWindowListener::Key_H; case 'h': return SWindowListener::Key_h; case 'I': return SWindowListener::Key_I; case 'i': return SWindowListener::Key_i; case 'J': return SWindowListener::Key_J; case 'j': return SWindowListener::Key_j; case 'K': return SWindowListener::Key_K; case 'k': return SWindowListener::Key_k; case 'L': return SWindowListener::Key_L; case 'l': return SWindowListener::Key_l; case 'M': return SWindowListener::Key_M; case 'm': return SWindowListener::Key_m; case 'N': return SWindowListener::Key_N; case 'n': return SWindowListener::Key_n; case 'O': return SWindowListener::Key_O; case 'o': return SWindowListener::Key_o; case 'P': return SWindowListener::Key_P; case 'p': return SWindowListener::Key_p; case 'Q': return SWindowListener::Key_Q; case 'q': return SWindowListener::Key_q; case 'R': return SWindowListener::Key_R; case 'r': return SWindowListener::Key_r; case 'S': return SWindowListener::Key_S; case 's': return SWindowListener::Key_s; case 'T': return SWindowListener::Key_T; case 't': return SWindowListener::Key_t; case 'U': return SWindowListener::Key_U; case 'u': return SWindowListener::Key_u; case 'V': return SWindowListener::Key_V; case 'v': return SWindowListener::Key_v; case 'W': return SWindowListener::Key_W; case 'w': return SWindowListener::Key_w; case 'X': return SWindowListener::Key_X; case 'x': return SWindowListener::Key_x; case 'Y': return SWindowListener::Key_Y; case 'y': return SWindowListener::Key_y; case 'Z': return SWindowListener::Key_Z; case 'z': return SWindowListener::Key_z; case '/': return SWindowListener::Key_slash; case '.': return SWindowListener::Key_period; case ',': return SWindowListener::Key_comma; case ';': return SWindowListener::Key_semicolon; case ':': return SWindowListener::Key_colon; case '_': return SWindowListener::Key_underscore; case '-': return SWindowListener::Key_hash; case '?': return SWindowListener::Key_questionmark; case '1': return SWindowListener::Key_1; case '2': return SWindowListener::Key_2; case '3': return SWindowListener::Key_3; case '4': return SWindowListener::Key_4; case '5': return SWindowListener::Key_5; case '6': return SWindowListener::Key_6; case '7': return SWindowListener::Key_7; case '8': return SWindowListener::Key_8; case '9': return SWindowListener::Key_9; case '0': return SWindowListener::Key_0; } return -1; } void SWindow::setModal (SWindow* parent, bool decorated) { modalFlag = true; } bool SWindow::isModal () { return modalFlag; } bool SWindow::isShown () { return shown; } /** * put this window in the middle */ void SWindow::center (SWindow* window) { } /** * wait till window is unmapped */ void SWindow::wait () { } void SWindow::setSize (unsigned int _width, unsigned int _height) { xwidth = _width; yheight = _height; }; void SWindow::setPosition (int _posx, int _posy) { xpos = _posx; ypos = _posy; }; unsigned int SWindow::getWidth() const { return xwidth; } unsigned int SWindow::getHeight() const { return yheight; } int SWindow::getPositionX() const { return xpos; } int SWindow::getPositionY() const { return ypos; } unsigned long SWindow::getWindowID() const { return (unsigned long) 0; } void SWindow::setDoubleBuffer (bool isOn) { } bool SWindow::isDoubleBufferEnabled () const { return false; } ./swindow/SFontImpl.cpp-0000644000175000017500000004343110434025610015163 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFontImpl.h" #include "swindow/SFontTTF.h" #include "swindow/SFontNative.h" #include "swindow/SFontBDF.h" #include "swindow/SUniFont.h" #include "swindow/SAwt.h" #include "swindow/SImage.h" #include "stoolkit/SIO.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SHashtable.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUtil.h" static SStringVector fontSearchPath( "/,fonts,../fonts,/etc/fonts,/usr/share/yudit/fonts"); /* it makes a big difference in speed */ /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SFontDelegate { public: enum SE_Type { SE_NONE, SE_TTF, SE_NATIVE, SE_UNIFONT, SE_BDF }; SFontDelegate (const SFile& file, SE_Type type, const SString& encoding=SString("")); ~SFontDelegate(); unsigned int count; SE_Type type; union { SFontTTF* ttf; SFontNative* native; SUniFont* unifont; SFontBDF* bdf; } u; }; /** * Create a brand new delegate */ SFontDelegate::SFontDelegate (const SFile& file, SE_Type _type, const SString& enc) { count = 1; type = _type; u.ttf = 0; switch (type) { case SE_TTF: u.ttf = new SFontTTF (file, enc); if (!u.ttf->isOK()) { delete u.ttf; u.ttf = 0; type = SE_NONE; } break; case SE_NATIVE: u.native = SAwt::getFont(enc); break; case SE_UNIFONT: u.unifont = new SUniFont(file); break; case SE_BDF: u.bdf = new SFontBDF(file); break; case SE_NONE: break; } } SFontDelegate::~SFontDelegate() { switch (type) { case SE_TTF: if (u.ttf!=0) delete u.ttf; break; case SE_NATIVE: if (u.native!=0) delete u.native; break; case SE_UNIFONT: if (u.unifont!=0) delete u.unifont; break; case SE_BDF: if (u.bdf!=0) delete u.bdf; break; case SE_NONE: break; } } typedef SBinHashtable SFontCache; static SFontCache fontCache; /** * Create a new font face. * @param _name is the logical x11 font descriptor that matches * this font. "-%s-%s-%s-%s-*-%s-%g-*-*-*-%s-%s-%s-%s" * foundry-family-weight-slant-*-style-pixel-*-*-*-spacing-avgWidth-registry-encoding * @param encoding is not zero size if there is an external encoder. */ SFontImpl::SFontImpl (const SString& _name, const SString& _encoding) : xlfd (_name), name(_name), encoding (_encoding) { /** * Try to find TTF first */ rlFont = false; lrFont = false; SString decorated (name); decorated.append ("~"); decorated.append (encoding); //fprintf (stderr, "XLFD %*.*s\n", SSARGS(xlfd)); SFontDelegate* d = fontCache.get(decorated); delegate = 0; if (d!=0) { //fprintf (stderr, "resusing %*.*s %u\n", SSARGS(name), d->count); delegate = d; d->count++; if (d->type == SFontDelegate::SE_NATIVE) { createSaneXLFD(); } } else { //n.append (".ttf"); SFile f(name, fontSearchPath); if (f.size() > 0 && name.match ("*.hex")) { d = new SFontDelegate (f, SFontDelegate::SE_UNIFONT); CHECK_NEW (d); delegate = d; fontCache.put (decorated, d); } else if (f.size() > 0 && name.match ("*.bdf")) { d = new SFontDelegate (f, SFontDelegate::SE_BDF); CHECK_NEW (d); delegate = d; fontCache.put (decorated, d); } else if (f.size() > 0) { if (encoding.size()==0 || encoding == name || encoding == SString("unicode")) { d = new SFontDelegate (f, SFontDelegate::SE_TTF); } else { /* xlfd contains encoding */ d = new SFontDelegate (f, SFontDelegate::SE_TTF, encoding); } CHECK_NEW (d); delegate = d; // It is obvious that we don't use fontCache at this point. // FIXME: this was commented out till yudit-2.3.beta-14 !!! Why? fontCache.put (decorated, d); } else { createSaneXLFD(); //fprintf (stderr, "name=%*.*s xlfd=%*.*s\n", SSARGS(name), SSARGS(xlfd)); if (encoding.size()==0 || encoding == name) { d = new SFontDelegate (xlfd, SFontDelegate::SE_NATIVE); } else { d = new SFontDelegate (xlfd, SFontDelegate::SE_NATIVE, encoding); } CHECK_NEW (d); delegate = d; fontCache.put (decorated, d); } } } void SFontImpl::createSaneXLFD () { SStringVector l; xlfd.replace("--", "-*-"); l.split (xlfd, "-"); if (l.size() < 14) { //fprintf (stderr, "SFontImpl: Need better XLFD %*.*s. Adding some -*-\n", SSARGS(xlfd)); /* find a good insertion point - FIXME this is not very good here */ unsigned int ipoint = 0; if (l.size() > 2) { ipoint = l.size() -1; while (ipoint > 0 && l[ipoint-1] != "*") ipoint--; } else if (xlfd[0] == '-') { while (ipoint < l.size() && l[ipoint] != "*") ipoint++; if (ipoint >= l.size()) { ipoint = 0; } } while (l.size() < 14) l.insert(ipoint, "*"); xlfd = "-"; xlfd.append(l.join ("-")); } } SFontImpl::SFontImpl (const SFontImpl& ff) { name = ff.name; xlfd = ff.xlfd; matrix = ff.matrix; encoding = ff.encoding; SFontDelegate* d = (SFontDelegate*) ff.delegate; if (d) { d->count++; } lrFont = ff.lrFont; rlFont = ff.rlFont; delegate = d; } void SFontImpl::setAttributes (const SProperties& properties) { if (properties.get("LR")) { lrFont = properties["LR"]==SString("true"); } if (properties.get("RL")) { rlFont = properties["RL"]==SString("true"); } } SFontImpl SFontImpl::operator= (const SFontImpl& ff) { if (&ff == this) return *this; SFontDelegate* d; if (ff.delegate == delegate) { xlfd = ff.xlfd; matrix = ff.matrix; name = ff.name; encoding = ff.encoding; lrFont = ff.lrFont; rlFont = ff.rlFont; return *this; } /* Get this till name exists */ SString decorated (name); decorated.append ("~"); decorated.append (encoding); xlfd = ff.xlfd; matrix = ff.matrix; name = ff.name; encoding = ff.encoding; lrFont = ff.lrFont; rlFont = ff.rlFont; if (delegate) { d = (SFontDelegate*) delegate; d->count--; if (d->count==0) { if (fontCache.get (decorated)) { fontCache.remove (decorated); delete d; } else { fprintf (stderr, "SFontImpl.cpp: FontCache does not have: %*.*s\n", SSARGS(decorated)); } } } d = (SFontDelegate*) ff.delegate; if (d) { d->count++; } delegate = d; return *this; } bool SFontImpl::isTTF () const { if (delegate) { return (((SFontDelegate*) delegate)->type==SFontDelegate::SE_TTF); } return false; } /** * \brief Try to make a fuzzy guess if we need to align the diacritics to * the left or to the right. * left aligned marks will be rendered this way: * x----basewith----x * x-markwidth-x * right aligned marks will be rendered this way: * x----basewith----x * x-markwidth-x */ bool SFontImpl::isLeftAligned (SS_UCS4 c) const { if (delegate && ((SFontDelegate*) delegate)->type==SFontDelegate::SE_TTF) { return (((SFontDelegate*)delegate)->u.ttf->isLeftAligned (c)); } /* * X11 font non-spacing marks will be right aligned. * Except for RL scripts . */ /* * FIXME: * In reality should check if it is a non-spacing mark. */ if (c>= 0x500 && c < 0x900) { return true; } return false; } SFontImpl::~SFontImpl () { if (delegate) { SFontDelegate* d = (SFontDelegate*) delegate; d->count--; if (isTTF()) if (d->count==0) { /* Get this till name exists */ SString decorated (name); decorated.append ("~"); decorated.append (encoding); if (fontCache.get (decorated)) { fontCache.remove (decorated); delete d; } else { fprintf (stderr, "SFontImpl.cpp: FontCache does not have: %*.*s\n", SSARGS(decorated)); } } } } /** * set the search path for the font * This path will be used to locate font files on the disk * Currently it is used for True Type fonts. * @param l is the list of directories. */ void SFontImpl::setPath(const SStringVector& l) { //fprintf (stderr, "set path ...\n"); fontSearchPath = l; } /** * search files for property in order and set the path to the * property. Always add YUDIT_DATA/fonts */ void SFontImpl::guessPath (const SStringVector& files, const SString& property) { SStringVector outDataPath; for (unsigned int i=0; itype) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { double scale = d->u.ttf->scale (); m.scale (x * scale, y * scale); matrix = m; } break; case SFontDelegate::SE_NATIVE: /* * Modify the currentXLFD and load the font. * it will be our pixel size. nice eh? * A reminder on xlfd: * -foundry-family-weight-slant-*-style-pixel-*-*-*-spacing-avgWidth-registry-encoding */ if (d->u.native==0) break; l.split (xlfd, "-"); sprintf (tmp, "%u", (unsigned int) (y + 0.5)); if (l.size() < 14) { fprintf (stderr, "BAD XLFD %*.*s\n", SSARGS(xlfd)); break; } l.replace (6, tmp); xlfd = "-"; xlfd.append(l.join ("-")); break; case SFontDelegate::SE_UNIFONT: if (d->u.unifont==0) break; m.scale (x, y); matrix = m; break; case SFontDelegate::SE_BDF: if (d->u.bdf==0) break; m.scale (x, y); matrix = m; break; case SFontDelegate::SE_NONE: break; } } /** * Try to draw one single glyph. * @param canvas is the canvas to draw to * @param m is the conversion matrix * @param uch is the array containing ucs4 * @prama len is the length of the array * @return true is drawn. */ bool SFontImpl::draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& m, SS_UCS4 uch) { if (!delegate) return 0; SFontDelegate* d = (SFontDelegate*) delegate;; SS_Matrix2D sd = m * matrix; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { if (!d->u.ttf->width (m, uch, 0)) return 0; long larr[8]; larr[0] = 'T' ; larr[1] = 'T'; larr[2] = 'F'; larr[3] = (long)d->u.ttf; larr[4] = (long)uch; SString key((char*) larr, 5 * sizeof (long)); /* FIXME: you should in fact use an instance counter. */ key.append ((long)(sd.x0*16000.0)); /* scale-x */ key.append ((long)(sd.y1*16000.0)); /* scale-y */ double offsetX = 0.0; double offsetY = 0.0; /* for better positioning of diacritical marks */ d->u.ttf->getBaseOffsets (sd, uch, &offsetX, &offsetY); // No need to be part of the key //key.append ((long)(offsetX*16000.0)); //key.append ((long)(offsetY*16000.0)); sd.t0 += offsetX; sd.t1 += offsetY; /* reverse coordinates Y, negative m.t1 */ if (!canvas->newpath (m.t0+offsetX, m.t1+offsetY, key)) { /* not cached yet */ d->u.ttf->draw (canvas, sd, uch); } canvas->fill (pen); return true; } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return (d->u.native->draw (xlfd, canvas, pen, sd, uch)); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { if (!d->u.unifont->width (matrix.y1, uch, 0)) return 0; d->u.unifont->draw (matrix.y1, canvas, pen.getForeground(), sd, uch, (m.x0 < 0)); return true; } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { if (!d->u.bdf->width (matrix.y1, uch, 0)) return 0; d->u.bdf->draw (matrix.y1, canvas, pen.getForeground(), sd, uch, (m.x0 < 0)); return true; } break; case SFontDelegate::SE_NONE: break; } return false; } /** * @param m is the conversion matrix * @param uch is the array containing ucs4 * @prama len is the length of the array * @return ture if it has width. * width_ will be set t width if exists. */ bool SFontImpl::width (SS_UCS4 uch, double* width_) { if (!delegate) return false; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->width (matrix, uch, width_)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return (d->u.native->width (xlfd, uch, width_)); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->width (matrix.y1, uch, width_)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->width (matrix.y1, uch, width_)); } break; case SFontDelegate::SE_NONE: break; } return false; } /** * set the base character for better glyph positioning * @param base is the base character relative to which * we will position all of out composing marks. */ void SFontImpl::setBase(SS_UCS4 base) { SFontTTF::setBase (base); } /** * return the overall width */ double SFontImpl::width () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->width (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->width (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->width (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->width (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } /** * return the overall ascent */ double SFontImpl::ascent () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->ascent (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->ascent (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->ascent (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->ascent (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } /** * return the overall descent */ double SFontImpl::descent () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->descent (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->descent (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->descent (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->descent (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } /** * return the overall gap */ double SFontImpl::gap () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->gap (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->gap (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->gap (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->gap (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } SObject* SFontImpl::clone () const { SFontImpl *ret = new SFontImpl(*this); CHECK_NEW (ret); return ret; } ./swindow/SRedrawEvent.h0000644000175000017500000000241110434025606015247 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SRedrawEvent_h #define SRedrawEvent_h #include "stoolkit/SObject.h" class SRedrawEvent : public SObject { public: SRedrawEvent (bool clear, int x, int y, unsigned int width, unsigned int height); SRedrawEvent (const SRedrawEvent& evt); SRedrawEvent operator=(const SRedrawEvent& evt); virtual ~SRedrawEvent(); virtual SObject* clone () const; bool merge (const SRedrawEvent& evt); bool clear; int x; int y; unsigned int width; unsigned int height; }; #endif /* SRedrawEvent_h */ ./swindow/SUniFont.cpp0000644000175000017500000001644110434025610014741 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SUniFont.h" #include "stoolkit/SCluster.h" #include "stoolkit/SBinVector.h" #include #include /** * We have 16 widths */ #define SD_W08 0 #define SD_W16 1 /* pos 1 is impossible */ #define SD_PW_ERR 1 SUniFont::SUniFont (const SFile& _file) : file(_file) { image = file.getFileImage(); array = image.array(); } SUniFont::~SUniFont () { } bool SUniFont::draw (double scale, SCanvas* canvas, const SColor& fg, const SS_Matrix2D& matrix, SS_UCS4 g, bool mirrored) { int scriptCode = getLigatureScriptCode (g); /* only support SD_AS_SHAPES if scriptCode */ if (scriptCode != SD_AS_SHAPES && scriptCode >= 0) return false; if ((int)scale != 16) return false; double w; unsigned int posw; bool re = width (scale, g, &w, &posw); if (!re) return re; unsigned int pt = SD_GET_POS (posw); int wd = (unsigned int) w; /* scan */ char ch[5]; int x = (int)matrix.t0; int y = (int)matrix.t1; SBinVector ix; SBinVector iy; for (int i=0; i<16; i++) { SS_UCS4 mask = 0; SS_UCS4 bits = 0; char* next = ch; if (wd == 16) { ch[0] = array[pt++]; ch[1] = array[pt++]; ch[2] = array[pt++]; ch[3] = array[pt++]; ch[4] = 0; bits = (SS_UCS4) strtoul (ch, &next, 16); mask = 0x8000; } if (wd == 8) { ch[0] = array[pt++]; ch[1] = array[pt++]; ch[2] = 0; bits = (SS_UCS4) strtoul (ch, &next, 16); mask = 0x80; } for (int j=0; j> 1; } } if (ix.size()) { canvas->bitpoints (fg, ix.array(), iy.array(), ix.size()); } return true; } bool SUniFont::width (double scale, SS_UCS4 g, double *width_) { unsigned int pwd; return width (scale, g, width_, &pwd); } bool SUniFont::width (double scale, SS_UCS4 g, double *width_, unsigned int* pwd) { if (width_) *width_ = 0.0; int scriptCode = getLigatureScriptCode (g); /* only support SD_AS_SHAPES if scriptCode */ if (scriptCode != SD_AS_SHAPES && scriptCode >= 0) return false; if ((int)scale != 16) return false; if ((*pwd = find (g)) != 0) { /* Sorry, indic won't work with unifont. */ if (getUnicodeScript (g) <= 0 && g != 0x200D && g != 0x200C) /* ZWJ ZWNJ */ { if (width_) { unsigned int wi = SD_GET_WIDTH (*pwd); *width_ = 8.0; if (wi == SD_W08) *width_ = 8.0; if (wi == SD_W16) *width_ = 16.0; } return true; } } return false; } double SUniFont::width (double scale) { if ((int)scale != 16) return 1.0; return 8.0; } double SUniFont::ascent (double scale) { if ((int)scale != 16) return 1.0; return 14.0; } double SUniFont::descent (double scale) { if ((int)scale != 16) return 0.0; return 2.0; } double SUniFont::gap (double scale) { if ((int)scale != 16) return 0.0; return 0.0; } static const char* shapeVariants[7] = { "n", // ISOLATED "l", // INITIAL "m", // MEDIAL "r", // FINAL "fj", // FINAL-FJ "fn", // ISOLATED-FN "fx", // ISOLATED-FX }; /** * Find this glyph in the font. It also should put this * in the cache. * @return 0 on fail widthposition on success. */ unsigned int SUniFont::find (SS_UCS4 g) { if (array == 0) return 0; // No font file found. if (g < 0x20) return 0; char arr[32]; /* colon is part of it */ if (g <= 0xffff) { sprintf (arr, "%04X:", g); } else if (g <= 0xfffff) { sprintf (arr, "%05X:", g); } else if (g <= 0xffffff) { sprintf (arr, "%06X:", g); } else if (g <= 0xfffffff) { sprintf (arr, "%07X:", g); } else if (g <= 0x7fffffff) { sprintf (arr, "%08X:", g); } else if (getLigatureScriptCode (g)==SD_AS_SHAPES) { unsigned int fcode = (g & 0xf000) >> 12; unsigned int gcode = g&0x0fff; if (fcode ==0 || fcode > 7) return 0; fcode--; switch (gcode) { case 1: /* 0xA000X001: */ sprintf (arr, "072A+0308-%s:", shapeVariants[fcode]); break; default: sprintf (arr, "%04X-%s:", gcode, shapeVariants[fcode]); break; } } else { return 0; } SString key (arr); unsigned int pw = posWidth.get (key); if (pw == SD_PW_ERR) return 0; if (pw!= 0) return pw; /* load it ... */ int size = (int)image.size(); int bottom = 0; int top = size; /* do a binary search */ SString gout; while (top >= bottom) { int mid = (top + bottom) / 2; int index = nextIndex (mid, size, &gout); /* build the cahce */ if (index >=0 && posWidth.get(gout) == 0) { /* * fill in width. 1. means non-existent. * 100 is here so that we don't consume much time with corrupted files. */ for (int j=index; j key) { top = mid - 1; } else if (gout < key) { bottom = mid + 1; } else { unsigned int pwr = posWidth.get (key); if (pwr == SD_PW_ERR) return 0; if (pwr != 0) return pwr; } } posWidth.put (key, SD_PW_ERR); return false; } /** * Find next XXXX: combination. * @return position to first X and return the value of X in g. * return negative if not found any, and set g to 0x10000. * Sample * unifont.hex: * 001F:0000000000000000000024E0250024C0242019C0000000000000000000000000 * 0021:00000000101010101010100010100000 * syriacforms.hex: * 0710-fn:00180404040810203E10100000000000 * arabforms.hex: * 0678-l:0304030400080404F800000000000000 * <-*g->.^ position returned */ int SUniFont::nextIndex (int pos, int size, SString* g) { g->clear(); for (int i=pos; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontLookup_h #define SFontLookup_h /*! * \file SFontLookup.h * \brief A common set of routines that a font should have. * \author: Gaspar Sinai * \version: 2000-04-23 */ #include "stoolkit/STypes.h" /*! * \class SFontLookup * \brief This interface hides the font lookup details so * the ScriptProcessor can work on any font that implements it. */ class SFontLookup { public: virtual ~SFontLookup() {} /*! * \brief Find the glyph index for the character. * \param in is the unicode-encoded character. * \return the glyph index or null. */ virtual SS_GlyphIndex gindex (SS_UCS4 in)=0; /*! * \brief Get the width of the unscaled glyph. * \param in is the glyph index. * \return the width of the glyph. * If width is negative or 0, then this mark * should be aligned to the end of the previous * character: * <-------base-------> * x-------x----------x * <--length--> */ virtual int gwidth (SS_GlyphIndex in)=0; /*! * \brief Perform a glyph/ligature substitution. * \param feature is a 4-character OTF-feature, like "gsub" * \param in is the input glyph index array. * \param in_size is the size of input glyph index array. * \param start is the starting point of the substitution * \param out is the output will be used to put the Glyphs in. * At leas the input glyph size should be allocated. * \param out_size will contain how many glyphs were placed in out * array. * \param script is the code of the script, like "deva" * \param is_contextual will be true after a successful * chaining contextual substitution. * \return how many glyphs should dissappear from the input * array between start...start + retvle -1. */ virtual unsigned int gsub (const char* script, const char* feature, const SS_GlyphIndex* in, unsigned int in_size, unsigned int* start, SS_GlyphIndex* out, unsigned int* out_size, bool* is_contextual)=0; /*! * \brief Get the releative position of glyphs. * \param script is the code of the script, like "deva" * \param feature is a 4-character OTF-feature, like "blwm" * \param in contains 2 glyphs. The first glyph assumed to be * at position 0.0. * \param x will contain the relative x position of the * second glyph. If no position can be retrieved the * method will not change the value of this. * \param y will contain the relative y position of the * second glyph. If no position can be retrieved the * method will not change the value of this. * \return true if a position was retrieved. */ virtual bool gpos (const char* script, const char* feature, const SS_GlyphIndex* in, int* x, int* y)=0; /*! * \return the glyph class: * \li 0 - Unknown * \li 1 - Base Glyph (single character spacing glyph) * \li 2 - Base Glyph (single character spacing glyph) * \li 3 - Mark Glyph (non-spacing combining glyph) * \li 4 - Component Glyph (part of a single character, spacing glyph) */ virtual unsigned int getGlyphClass(SS_GlyphIndex in) = 0; /*! * \brief try to attach mark to base. * \param where takes the following values: * 1 - below. * \return true on success. */ virtual bool attach (SS_GlyphIndex base, SS_GlyphIndex mark, int where, int* x, int* y) = 0; }; #endif /* SFontLookup_h */ ./swindow/SFont.cpp-0000644000175000017500000005726410726176000014356 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFont.h" #include "swindow/SFontFB.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SHashtable.h" #include "stoolkit/STextData.h" #include "stoolkit/SExcept.h" #include "stoolkit/SCluster.h" static SFontFB fallbackFont; typedef SHashtable SFontHashtable; static SFontHashtable* fontHashtable=0; static SFontFB::SIGN mapFB (const SGlyph& glyph); /* write the composing character bellow this */ /** * Create a font. The font can have many faces. * @param _name is the logical name of this font. */ SFont::SFont (const SString _name) : name(_name), xlfd (SD_XLFD_ANY) { if (fontHashtable == 0 ) fontHashtable = new SFontHashtable(); if (fontHashtable->get (name) != 0) fontVector = (*fontHashtable)[name]; setSize (16.0); } /** * Create a font. The font can have many faces. * @param _name is the logical name of this font. */ SFont::SFont (const SString _name, double _size) : name(_name), xlfd (SD_XLFD_ANY) { if (fontHashtable == 0 ) fontHashtable = new SFontHashtable(); if (fontHashtable->get (name) != 0) fontVector = (*fontHashtable)[name]; setSize (_size); } /** * get a point 16 font called _default */ SFont::SFont (void) : name("default"), xlfd (SD_XLFD_ANY) { static bool _defaultSet=false; if (_defaultSet==false) { SStringVector m( /* yudit.hex has ohungarian.hex and part of unifont.hex */ // Indic range is not necessary free. But they are the best "yudit.hex,arabforms.hex,syriacforms.hex,unifont.hex," "markus9x18.bdf,markus18x18ja.bdf," "-*-*-medium-r-normal--16-*-*-*-c-*-iso8859-1," "-*-*-*-*-*--16-*-*-*-c-*-iso8859-1," "THOOLIUC.TTF:mlym," "MuktiNarrow.ttf:beng," "ani.ttf:beng," "pothana2000.ttf:telu," "TCRCYoutsoUnicode.ttf:tibt," "raghu.ttf:deva," "mangal.ttf:deva,tunga.ttf:knda,code2000.ttf:taml," "raavi.ttf:guru,shruti.ttf:gujr," "arialuni.ttf,cyberbit.ttf," "code2000.ttf,code2001.ttf:unicode:RL,arial.ttf," "yudit.ttf" ); SFontImplVector list; for (unsigned int i=0; i1 && v[1].size()!=0) enc = v[1]; SFontImpl impl (v[0], enc); if (v.size()>2 && v[2].size()>0) { SStringVector pvect(v[2], ";"); SProperties props; for (unsigned int j=0; j fontGap) fontGap = g; if (a > fontAscent) fontAscent = a; if (d > fontDescent) fontDescent = d; } if (fontAscent <= 1.0 || fontAscent < points/2) { fontGap = fallbackFont.gap(m); fontAscent = fallbackFont.ascent(m); fontDescent = fallbackFont.descent(m); if (fontAscent < 1.0) fontAscent = 1.0; } fallbackScale = fontAscent+fontDescent; } /** * Get the size of the font. * @return the size in points */ double SFont::getSize () const { return fontScale; } /** * A static method to build a font list. * This is only use at initialization time. * @param name is the name of the font. * @param gface is the face to add to the name. */ void SFont::put (const SString name, const SFontImplVector& face) { if (fontHashtable == 0 ) fontHashtable = new SFontHashtable(); fontHashtable->put (name, face); } /** * clear all the stuff in the list */ void SFont::clear() { } /** * map a fallback font sign. */ static SFontFB::SIGN mapFB (const SGlyph& glyph) { if (glyph.decompSize() > 1) { if (glyph[0] == SD_CD_CR || glyph[1] == SD_CD_LF) return SFontFB::CRLF; if (glyph[1] == SD_CD_CR || glyph[0] == SD_CD_LF) return SFontFB::LFCR; } else { if (glyph.getChar() == SD_CD_CR) return SFontFB::CR; if (glyph.getChar() == SD_CD_LF) return SFontFB::LF; if (glyph.getChar() == SD_CD_LS) return SFontFB::LS; if (glyph.getChar() == SD_CD_FF) return SFontFB::FF; if (glyph.getChar() == SD_CD_PS) return SFontFB::PS; if (glyph.getChar() == SD_CD_TAB) return SFontFB::TAB; if (glyph.getChar() == SD_CD_LRM) return SFontFB::LRM; if (glyph.getChar() == SD_CD_RLM) return SFontFB::RLM; if (glyph.getChar() == SD_CD_ZWJ) return SFontFB::FB_ZWJ; if (glyph.getChar() == SD_CD_ZWNJ) return SFontFB::FB_ZWNJ; } return SFontFB::CTRL; } /** * Try to draw one single glyph. * @param canvas is the canvas to draw to * @param m is the conversion matrix * @param uch is the array containing ucs4 * @prama len is the length of the array */ void SFont::draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& m, const SGlyph& glyph) { double currw = 0.0; if (glyph.isSpecial()) { SS_Matrix2D sd; double sc = fallbackFont.scale(); sd.scale (fallbackScale * sc, fallbackScale * sc); sd.translate (0, -fontDescent); SS_Matrix2D sm = m * sd; SFontFB::SIGN sig = mapFB (glyph); /* The markers are not mirrored. */ if (!glyph.isLR() && sig != SFontFB::LRM && sig != SFontFB::RLM) { currw = fallbackFont.signWidth (sm, sig); /* mirroring */ sm.x0 = -sm.x0; sm.t0 = sm.t0 + currw; } fallbackFont.signDraw(canvas, pen, sm, sig, glyph.getFirstChar()); return; } /* try to draw it with all fonts. */ SS_UCS4 comp = glyph.getShapedChar(); unsigned int scriptcode = getLigatureScriptCode (comp); SV_UCS4 ligclust; if (scriptcode == SD_COMBINING_LIGATURE) { unsigned int lgsize = getLigatureCluster (comp, 0); if (lgsize > 1) { SS_UCS4* lc = new SS_UCS4[lgsize]; CHECK_NEW (lc); getLigatureCluster (comp, lc); comp = lc[0]; for (unsigned int i=0; i= 0xEE00 && comp < 0xEE9F) || (comp >= 0x10300 && comp <= 0x1032F)) { /* Try to use lr and rl attributes */ for (i=0; i 0) { double* positions = new double[gsize]; unsigned int* indeces = new unsigned int[gsize]; CHECK_NEW (positions); CHECK_NEW (indeces); bool found = false; bool overstrike = (glyph.getShapeArray()==0 && !glyph.isYuditLigature() && !glyph.isCluster()); /* * Hack for special Yudit ligatures * Normally clusters are not OVERSTRIKE. * MARK Composing Cluster: see bin/cluster/cluster.template */ if (gsize > 1 && (decomp[1] == 0x309A || decomp[1] == 0x300 || decomp[1] == 0x301)) { overstrike = true; } else { } int scode = getLigatureScriptCode (comp); if (scode == SD_HANGUL_JAMO || scode == SD_LAO || scode == SD_THAI || scode == SD_TIBETAN) { overstrike = true; } /* shape fallback does not include composing marks */ fbs = glyph.getShapeFallback(); if (fbs) { overstrike = false; /* well, this is overstrike sometimes */ decomp = fbs; /* even if we can not draw it, this will be displayed */ } /* we can not do overstrike positioning on a shape fallback */ if (overstrike) { setBase (decomp[0]); } else { setBase (0); } /* build positions */ unsigned int index = 0; unsigned int i=0; unsigned int fsize = fontVector.size(); double fullsize = 0; while (i 0 && decomp[index]==0x200d) ? true: im.width (decomp[index], &currw); /* ZWJ and ZWNJ - use fallback if not present.*/ if (!used && i+1 == fsize && !overstrike) { SS_Matrix2D sm; double sc = fallbackFont.scale(); sm.scale (fallbackScale * sc, fallbackScale * sc); used = true; i = fsize; currw = fallbackFont.width (sm, decomp[index]); } /* True Type fonts will need to position non spacing marks *after* moving cursor */ if (index ==0) { if (!used || currw==0) { i++; continue; } positions[index] = currw; fullsize = currw; } else if (overstrike) /* may have zero width */ { if (!used) { i++; continue; } /* by default don't move caret */ positions[index] = 0; /* * Should be in sync with: SFontTTF::getBaseOffsets */ if (!im.isLeftAligned(decomp[index])) { positions[index] = positions[0]-currw; } } else { /* clusters can have 0 width stuff. */ if (!used) { i++; continue; } fullsize += currw; positions[index] = fullsize; } indeces[index] = i; i=0; index++; /* found if all found */ if (index == gsize) { baseWidth = fullsize; found = true; break; } } if (found) { for (i=0; i 1) { ligclust.remove (0); postcomp = ligclust.size(); for (unsigned int i=0; i= 0x500 && decomp[i] < 0x900)) { mc.t0 = m.t0 + baseWidth / 2; } } /* Draw it finally... */ if (im.draw (canvas, pen, mc, decomp[i])) { break; } } } /* return anyway. Extra composing failures will not be indicated for now. There is one for sure when you apply the composing to a cluster */ return; } /* Draw some last resort font. */ SS_Matrix2D sd; double sc = fallbackFont.scale(); sd.scale (fallbackScale * sc, fallbackScale * sc); sd.translate (0, -fontDescent); SS_Matrix2D sm = m * sd; SS_Matrix2D mo = sm; SV_UCS4 allchar; if (comp != 0) { allchar.append (comp); gsize = glyph.compSize(); decomp = glyph.getCompArray(); } else { /* draw everything. CompArray is right after DecompArray */ gsize += glyph.compSize(); } for (unsigned int k=0; k 1) { SS_UCS4* lc = new SS_UCS4[lgsize]; CHECK_NEW (lc); getLigatureCluster (comp, lc); comp = lc[0]; delete lc; } } else if (!glyph.isLR() && glyph.isMirrorable()) { comp = glyph.getMirroredChar(); } /* first try the precomposed */ if (comp != 0 && comp!= 0x200c && comp != 0x200d) { for (unsigned int i=0; i0.0) { return currw; } } } } /* You reach this point if comp did not work */ unsigned int gsize = glyph.decompSize(); const SS_UCS4* decomp = glyph.getDecompArray(); if (gsize > 0) { bool overstrike = (glyph.getShapeArray() ==0 && !glyph.isYuditLigature() && !glyph.isCluster()); /* hack for special Yudit ligatures */ /* MARK Composing Cluster: see bin/cluster/cluster.template */ if (gsize > 1 && (decomp[1] == 0x309A || decomp[1] == 0x300 || decomp[1] == 0x301)) { overstrike = true; } int scode = getLigatureScriptCode (comp); if (scode == SD_HANGUL_JAMO || scode == SD_LAO || scode == SD_THAI || scode == SD_TIBETAN) { overstrike = true; } const SS_UCS4* fbs = glyph.getShapeFallback(); if (fbs) { overstrike = false; decomp = fbs; /* even if we can not draw it, this will be displayed */ } unsigned int index = 0; unsigned int i=0; unsigned int fsize = fontVector.size(); while (i 0 && decomp[index]==0x200d) ? true : im.width (decomp[index], &currw); /* can draw fallback in the middle */ if (!used && i+1 == fsize && !overstrike) { SS_Matrix2D sm; double sc = fallbackFont.scale(); sm.scale (fallbackScale * sc, fallbackScale * sc); used = true; i = fsize; currw = fallbackFont.width (sm, decomp[index]); } if (index==0 && (currw==0.0 || !used)) { i++; continue; } /* clusters also can have 0 width stuff */ if (!used) { i++; continue; } if (overstrike) { if (index==0) maxw = currw; } else { maxw += currw; } index++; i = 0; if (index >= gsize) { if (maxw > 0.0) return maxw; break; } } } /* * If it is shaped and current shape is any fallback * Isolated fallback has been processed already. */ if (glyph.getShapeArray()!=0 && glyph.currentShape != 0) // ISOLATED { SS_UCS4 orig = glyph.getChar(); if (orig!=comp && orig != 0) { for (unsigned int i=0; i0.0) { return currw; } } } } /* last resort font */ SS_Matrix2D sm; double sc = fallbackFont.scale(); sm.scale (fallbackScale * sc, fallbackScale * sc); maxw = 0; if (comp != 0) { SS_UCS4 chr = comp; if (getLigatureScriptCode (chr) == SD_AS_LITERAL) { chr = chr & 0xff; } maxw = fallbackFont.width (sm, chr); gsize = glyph.compSize(); decomp = glyph.getCompArray(); } else { /* draw everything */ gsize += glyph.compSize(); } for (unsigned int i=0; i< gsize; i++) { SS_UCS4 chr = decomp[i]; if (getLigatureScriptCode (chr) == SD_AS_LITERAL) { chr = chr & 0xff; } maxw = maxw + fallbackFont.width (sm, chr); } return maxw; } /** * return the overall width */ double SFont::width () const { return fontWidth; } /** * return the overall ascent */ double SFont::ascent () const { return fontAscent; } /** * return the overall descent */ double SFont::descent () const { return fontDescent; } /** * return the overall gap */ double SFont::gap () const { return fontGap; } ./swindow/SFontTTF.h-0000644000175000017500000001371110434025606014367 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SFontTTF_h #define SFontTTF_h #include "swindow/SCanvas.h" #include "swindow/SPen.h" #include "swindow/SFontLookup.h" #include "stoolkit/SIO.h" #include "stoolkit/STypes.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SHashtable.h" #include "stoolkit/SProperties.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SString.h" #include "stoolkit/SProperties.h" #include "stoolkit/SUniMap.h" /** * This file will not be exposed so we can put some local junk here. */ // for coords. typedef SBinVector SH_Vector; /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SFontTTF : public SFontLookup { public: enum SHardWire { SS_NONE=0, SS_MSLVT, SS_NOJAMO, SS_INDIC, SS_JAMO, SS_DEVANAGARI, SS_BENGALI, SS_GURMUKHI, SS_GUJARATI, SS_ORIYA, SS_TAMIL, SS_TELUGU, SS_KANNADA, SS_MALAYALAM, SS_SINHALA, SS_THAI, SS_LAO, SS_TIBETAN }; SFontTTF (const SFile& file, const SString& encoding); virtual ~SFontTTF (); bool draw (SCanvas* canvas, const SS_Matrix2D& matrix, SS_UCS4 uch); bool width (const SS_Matrix2D& matrix, SS_UCS4 uch, double* width_); bool isLeftAligned (SS_UCS4 uch) const; double width (const SS_Matrix2D& matrix); double ascent (const SS_Matrix2D& matrix); double descent (const SS_Matrix2D& matrix); double gap (const SS_Matrix2D& matrix); /* mulltiply this with size you want to get the matrix */ double scale (); bool isOK(); SS_GlyphIndex findGlyph (SS_UCS4 in, bool ownjoiners=true); static void setBase (SS_UCS4 base); void getBaseOffsets (const SS_Matrix2D& m, SS_UCS4 mark, double* offx, double* offy); public: // SFontLookup interface implementation SS_GlyphIndex gindex (SS_UCS4 in); int gwidth (SS_GlyphIndex in); unsigned int gsub (const char* script, const char* feature, const SS_GlyphIndex* in, unsigned int in_size, unsigned int* start, SS_GlyphIndex* out, unsigned int* out_size, bool* is_contextual); bool gpos (const char* script, const char* feature, const SS_GlyphIndex* in, int* x, int* y); unsigned int getGlyphClass(SS_GlyphIndex in); bool attach (SS_GlyphIndex base, SS_GlyphIndex mark, int where, int* x, int* y); protected: SHardWire hardWire; SS_GlyphIndex defaultGlyph; SProperties char2Glyphs; SBinHashtable char2Width; SBinHashtable mark2Base; /* this is to position many points, like Lao,Thai,Tibetan */ SHashtable mark2BaseList; void drawGlyph (SCanvas* canvas, const SS_Matrix2D& matrix, SS_GlyphIndex glyphno); double widthGlyph (const SS_Matrix2D& m, SS_GlyphIndex glyphno); int getWidth (SS_GlyphIndex glyphno); bool findGlyphs (SS_UCS4 in, SV_GlyphIndex* out); bool findJamoGlyphs (const SS_UCS4* in, unsigned int len, SV_GlyphIndex* out); bool findSouthIndicGlyphs (const SString& key, unsigned int scriptcode, const char* script, const SS_UCS4* chars, unsigned int liglen, SV_GlyphIndex* out); bool storeMarkPositions (const SString& key, const SS_GlyphIndex* gv, unsigned int liglen); unsigned int getOTFLigature (const char* script, const char* feature, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* out, unsigned int substtype = 4); bool hasOTFLigatures(); void getOTFMarkToBase (SS_GlyphIndex baseGlyph, SS_GlyphIndex markGlyph, int* ix, int* iy); void getOTFMarkToMark (SS_GlyphIndex baseGlyph, SS_GlyphIndex markGlyph, int* ix, int* iy); bool getPositions(int feature, const SS_GlyphIndex* gv, unsigned int gvsize, const char* _feature, const char* _script, int* xpos, int* ypos); int getGlyphWidth (SS_GlyphIndex glyph); int getLeftSideBearing (SS_GlyphIndex glyphno) const; bool getBBOX (SS_GlyphIndex glyphno, int* xMin, int* yMin, int* xMax, int* yMax) const; SS_GlyphIndex substituteOTFGlyph (const char* feature, SS_GlyphIndex g); bool doContextSubstitutions (SS_GlyphIndex* ino, unsigned int inlen, unsigned int * olen, const char* script, const char* feature); unsigned int getOTFLigatures (SS_GlyphIndex* ino, unsigned int len, const char* script, const char* feature, SS_GlyphIndex halant, SS_GlyphIndex reord, bool* base); bool getContours(SS_GlyphIndex glyphno, SH_Vector * xc, SH_Vector *yc ); SFileImage image; SString name; SString fontencoding; SFile file; bool ok; bool broken; bool init (); bool processName (); bool checkTables (); void getName (long id, const char* str, int len); SProperties names; SBinHashtable tables; SUniMap charEncoder; unsigned int charEncoderTable; //double fontSize; double scaleFactor; // line height is charAscent - charDescent + lineGap double lineGap; double charWidth; double charAscent; double charDescent; //double scaleFactor; double italicAngle; double underlineThickness; double underlinePosition; bool isFixedPitch; int longOffsets; static SS_UCS4 setBaseCharacter; SS_UCS4 baseCharacter; SS_GlyphIndex baseGlyph; int baseWidth; }; #endif /* SFontTTF_h */ ./swindow/SGPrimitive.cpp0000644000175000017500000001322310434025610015431 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SGPrimitive.h" #include "stoolkit/SString.h" #define SS_SHORT_KEY 0 /** * This is the graphic primitives. * This is what happens between a SPen'ed newpath and stroke or fill. */ SGPrimitive::SGPrimitive (void) { type = NONE; } SGPrimitive::SGPrimitive (const SGPrimitive& p) { type = p.type; for (unsigned int i=0; itype = type; for (unsigned int i=0; iparams[i] = params[i]; } return p; } /** * return the keys, that is all the drawing parameters * moved to the origin */ SString SGPrimitive::getKey (double originx, double originy) const { char arr[256]; arr[0] = 0; #if SS_SHORT_KEY int s[MAX_SG_PARAMS+1]; unsigned int sLen=0; #endif switch (type) { case CURVETO: #if SS_SHORT_KEY sLen = 7; s[0] = (int) type; s[1] = (int) (params[0] - originx); s[2] = (int) (params[1] - originy); s[3] = (int) (params[2] - originx); s[4] = (int) (params[3] - originy); s[5] = (int) (params[4] - originx); s[6] = (int) (params[5] - originy); #else sprintf (arr, "%d=%g,%g,%g,%g,%g,%g;", (int) type, params[0] - originx, params[1] - originy, params[2] - originx, params[3] - originy, params[4] - originx, params[5] - originy); #endif break; case TRANSLATE: #if SS_SHORT_KEY sLen = 3; s[0] = (int) type; s[1] = (int) (params[0]); s[2] = (int) (params[1]); #else sprintf (arr, "%d=%g,%g;", (int) type, params[0], params[1]); #endif break; case LINETO: case MOVETO: #if SS_SHORT_KEY sLen = 3; s[0] = (int) type; s[1] = (int) (params[0] - originx); s[2] = (int) (params[1] - originy); #else sprintf (arr, "%d=%g,%g;", (int) type, params[0] - originx, params[1] - originy); #endif break; case CLOSEPATH: case PUSHMATRIX: case POPMATRIX: case STROKE: case FILL: case SCALE: case NEWPATH: #if SS_SHORT_KEY sLen = 1; s[0] = (int) type; #else sprintf (arr, "%d;", (int) type); #endif break; /* * TODO: BUG: totate probably will not work because it can * not be tied to origin */ case ROTATE: #if SS_SHORT_KEY sLen = 2; s[0] = (int) type; s[1] = (int) (params[0]); #else sprintf (arr, "%d=%g;", (int) type, params[0]); #endif break; default: break; } #if SS_SHORT_KEY #ifdef GASPAR SString a((char*) s, sLen * sizeof (int)); fprintf (stderr, ">"); for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SSyntaxColors.h" SSyntaxColors::SSyntaxColors(void) { // in fact it is initialized in editor colors[(unsigned int) SSyntax::SD_NONE] = SColor ("green"); } SSyntaxColors::SSyntaxColors(const SSyntaxColors& c) { for (unsigned int i=0; i<(unsigned int) SSyntax::SD_MAX; i++) { colors[i] = c.colors[i]; } } SSyntaxColors& SSyntaxColors::operator=(const SSyntaxColors& v) { for (unsigned int i=0; i<(unsigned int) SSyntax::SD_MAX; i++) { colors[i] = v.colors[i]; } return (*this); } SSyntaxColors::~SSyntaxColors () { } ./swindow/SPen.cpp0000644000175000017500000000511610434025610014076 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SPen.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ /** * This classs draws objects * @param _fore is the foreground color */ SPen::SPen (const SColor& _fore) : fore (_fore), back (0.0, 0.0, 0.0, 0.0), width(1.0) { } /** * This classs draws objects * @param _fore is the foreground color * @param _back is the foreground color */ SPen::SPen (const SColor& _fore, const SColor& _back ) : fore (_fore), back (_back), width(1.0) { } /** * This classs draws objects * @param _fore is the foreground color * @param _back is the foreground color * _width is the brush with. It can cotrol sub-pixel redering. * The best/most efficient width is 1.0 which gives 2 times oversamplin in * SGEngine. */ SPen::SPen (const SColor& _fore, const SColor& _back, double _width ) : fore (_fore), back (_back), width(_width) { } SPen::SPen (const SPen& pen) : fore (pen.fore), back (pen.back), width (pen.width) { } SPen SPen::operator= (const SPen& pen) { if (&pen == this) return *this; fore = pen.fore; back = pen.back; width = pen.width; return *this; } bool SPen::operator==(const SPen& pen) const { return (fore == pen.fore && back == pen.back && width == pen.width); } bool SPen::operator!=(const SPen& pen) const { return (fore != pen.fore || back != pen.back || width != pen.width); } SPen::~SPen() { } const SColor& SPen::getForeground() const { return fore; } const SColor& SPen::getBackground() const { return back; } double SPen::getLineWidth() const { return width; } void SPen::setForeground (const SColor& f) { fore = f; } void SPen::setBackground (const SColor& b) { back = b; } /** * Set the width, that is mostly used for sub-pixel rendering. */ void SPen::setLineWidth (double _width) { width = _width; } ./swindow/SScriptProcessor.cpp0000644000175000017500000015450710473756140016545 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define DEBUG_ALL 0 /* * Overhang is not supposed to move cursor in pothana2000.ttf * With this defined as 1 we hack it. It happens mainly with * Mbelow. */ #define DO_FIX_BROKEN_BELOW 1 /*! * \file SScriptProcessor.cpp * \brief Script Processing routines. * \author: Gaspar Sinai * \version: 2000-04-23 */ #include "swindow/SScriptProcessor.h" #include "stoolkit/SCluster.h" #include static int l_isSupported = -1; static int l_isInit = 1; #define SD_NONE 0x7ffffffe #if DEBUG_ALL static void debugArray (const char* message, const SS_UCS4* arr, unsigned int size); #endif static SRendClass::RType l_devanagari_gujarati_reorder_guide[] = { SRendClass::Mpre, SRendClass::Cpre, SRendClass::Cbase, SRendClass::VO, SRendClass::Cbelow, SRendClass::Cpost, SRendClass::Mbelow, SRendClass::VMbelow, SRendClass::SMbelow, SRendClass::Creph, SRendClass::Mabove, SRendClass::Mpost, SRendClass::CMreph, SRendClass::VMabove, SRendClass::SMabove, SRendClass::VMpost, SRendClass::None }; static SRendClass::RType l_bengali_oriya_reorder_guide[] = { SRendClass::Mpre, SRendClass::Cpre, SRendClass::Cbase, SRendClass::Cra, SRendClass::VO, SRendClass::Creph, SRendClass::Cbelow, SRendClass::Mbelow, SRendClass::Mabove, SRendClass::CMreph, SRendClass::VMabove, SRendClass::Cpost, SRendClass::Mpost, SRendClass::VMpost, SRendClass::None }; static SRendClass::RType l_gurmukhi_reorder_guide[] = { SRendClass::Mpre, SRendClass::Cpre, SRendClass::Cbase, SRendClass::VO, SRendClass::Cra, SRendClass::Cbelow, SRendClass::Mbelow, SRendClass::SMbelow, SRendClass::Mabove, SRendClass::Cpost, SRendClass::Mpost, SRendClass::CMra, SRendClass::VMabove, SRendClass::SMabove, SRendClass::None }; static SRendClass::RType l_telugu_reorder_guide[] = { SRendClass::Cpre, SRendClass::Cbase, SRendClass::VO, SRendClass::Cra, SRendClass::CMra, SRendClass::Mabove, SRendClass::Mbelow, SRendClass::Mpost, SRendClass::Cbelow, SRendClass::Cpost, SRendClass::VMpost, SRendClass::None, }; static SRendClass::RType l_kannada_reorder_guide[] = { SRendClass::Cpre, SRendClass::Cbase, SRendClass::VO, SRendClass::Mabove, SRendClass::Mpost, SRendClass::Cbelow, SRendClass::Cpost, SRendClass::LMpost, // For Kannada 0CD5 and 0CD6 is not in indic.txt SRendClass::Creph, SRendClass::CMreph, SRendClass::VMpost, SRendClass::None }; static SRendClass::RType l_malayalam_reorder_guide[] = { SRendClass::Mpre, // put before Cbase in gsubclean SRendClass::Cra, SRendClass::CMra, SRendClass::Cpre, SRendClass::Cbase, SRendClass::VO, SRendClass::Cbelow, SRendClass::Mbelow, SRendClass::Creph, // This makes it traditional. It will be // automatically re-ordered if not found int the font. SRendClass::Cpost, SRendClass::Mpost, SRendClass::CMreph, // This makes it traditional. It will be // automatically re-ordered if not found int the font. SRendClass::VMpost, SRendClass::None }; static SRendClass::RType l_tamil_reorder_guide[] = { SRendClass::Mpre, // put before base in gsubclean SRendClass::Cpre, SRendClass::Cbase, SRendClass::Cra, SRendClass::CMra, SRendClass::VO, SRendClass::Cbelow, SRendClass::Mabove, SRendClass::Mpost, SRendClass::VMpost, SRendClass::None }; /*! * \brief Find out if the script is supported by this * shaping engine. * \param c is the first unicode character. */ bool SScriptProcessor::isSupported (SS_UCS4 c) const { static bool warned = false; /* Issue a warning for incompatible yudit installation */ if (SRendClass::get(0x915)!=SRendClass::Cbase) { if (!warned) { fprintf (stderr, "WARNING: new indic.my map is not installed. (SScriptProcessor will turn off now.)\n"); warned = true; } return false; } if (c==0) return false; if (l_isSupported==0) return false; /* Devanagari */ if (c >= 0x0900 && c<= 0x097f) return true; /* Bengali */ if (c >= 0x0980 && c<= 0x09ff) return true; /* Gurmukhi */ if (c >= 0x0a00 && c<= 0x0a7f) return true; /* Gujarati */ if (c >= 0x0a80 && c<= 0x0aff) return true; /* Oriya */ if (c >= 0x0b00 && c<= 0x0b7f) return true; /* Tamil - supported with fixed clusters */ if (c >= 0x0b80 && c<= 0x0bff) return false; //<<<< /* Telugu */ if (c >= 0x0c00 && c<= 0x0c7f) return true; /* Kannada */ if (c >= 0x0c80 && c<= 0x0cff) return true; /* Malayalam */ if (c >= 0x0d00 && c<= 0x0d7f) return true; /* Sinhala - not supported, need to get info */ if (c >= 0x0d80 && c<= 0x0dff) return false; //<<<< /* Thai */ if (c >= 0x0e00 && c<= 0x0e7f) return true; /* Lao */ if (c >= 0x0e80 && c<= 0x0eff) return true; /* Tibetan */ if (c >= 0x0f00 && c<= 0x0fff) return true; /* Jamo */ if (c >= 0x1100 && c<= 0x11ff) return true; return false; } /*! * \brief Turn the engine on and off. * \param on is true if the engine turns on. */ void SScriptProcessor::support (bool on) { l_isSupported = on ? 1 : 0; } /*! * \brief Turn the engine on and off. * \param on is true if the engine turns on. */ void SScriptProcessor::doInit (bool on) { l_isInit = on ? 1 : 0; } /*! * \brief Create a new font engine. * \font is an abstract font-dependent interface. */ SScriptProcessor::SScriptProcessor (SFontLookup* font) { m_script = SC_NONE; m_otfScript = "latn"; m_font = font; } SScriptProcessor::~SScriptProcessor (void) { } /*! * \put a string into the buffer for processing. * \param in is the input unicode array. * \param len is the size of the input unicode array. * \param is_begin is true if this is at the beginning of the word. * \return the number of character that will be processed. */ unsigned int SScriptProcessor::put (const SS_UCS4* in, unsigned int len, bool is_begin) { m_script = SC_NONE; if (len == 0) return 0; m_is_begin = is_begin; unsigned int reallen = 0; // Real length. unsigned int min = 0; // minimum range (inclusive) unsigned int max = 0; // maxinum range (non-inclusive) m_script_has_reph = false; m_ra = 0; const SRendClass::RType* order = 0; SS_UCS4 sample = ((in[0] == 0x200D || in[0] == 0x25cc) && len > 1) ? in[1] : in[0]; // Devanagari if (sample >= 0x0900 && sample < 0x0980) { m_script = SC_DEVANAGARI; m_otfScript = "deva"; min = 0x0900; max = 0x0980; m_script_has_reph = true; order = l_devanagari_gujarati_reorder_guide; } // Bengali else if (sample >= 0x0980 && sample < 0x0a00) { m_script = SC_BENGALI; m_otfScript = "beng"; min = 0x0980; max = 0x0a00; m_script_has_reph = true; order = l_bengali_oriya_reorder_guide; } // Gurmukhi else if (sample >= 0x0a00 && sample < 0x0a80) { m_script = SC_GURMUKHI; m_otfScript = "guru"; min = 0x0a00; max = 0x0a80; m_script_has_reph = false; order = l_gurmukhi_reorder_guide; } // Gujarati else if (sample >= 0x0a80 && sample < 0x0b00) { m_script = SC_GUJARATI; m_otfScript = "gujr"; min = 0x0a80; max = 0x0b00; m_script_has_reph = true; order = l_devanagari_gujarati_reorder_guide; } // Oriya else if (sample >= 0x0b00 && sample < 0x0b7f) { m_script = SC_ORIYA; m_otfScript = "orya"; min = 0x0b00; max = 0x0b80; m_script_has_reph = true; order = l_bengali_oriya_reorder_guide; } // Tamil else if (sample >= 0x0b80 && sample < 0x0c00) { m_script = SC_TAMIL; m_otfScript = "taml"; min = 0x0b80; max = 0x0c00; order = l_tamil_reorder_guide; } // Telugu else if (sample >= 0x0c00 && sample < 0x0c80) { m_script = SC_TELUGU; m_otfScript = "telu"; min = 0x0c00; max = 0x0c80; order = l_telugu_reorder_guide; } // Kannada else if (sample >= 0x0c80 && sample < 0x0d00) { m_script = SC_KANNADA; m_otfScript = "knda"; min = 0x0c80; max = 0x0d00; order = l_kannada_reorder_guide; m_script_has_reph = true; } // Malayalam else if (sample >= 0x0d00 && sample < 0x0d80) { m_script = SC_MALAYALAM; m_otfScript = "mlym"; min = 0x0d00; max = 0x0d80; order = l_malayalam_reorder_guide; // Test reph with the font. m_out.clear(); m_out_type.clear(); m_out.append (0x0d30); m_out_type.append (SRendClass::Creph); m_out.append (0x0d4d); m_out_type.append (SRendClass::Halant); gsub("rphf"); gsub("abvs"); if (m_out.size()<2) { m_script_has_reph = true; } m_out.clear(); m_out_type.clear(); } // Sinhala - not supported yet - have not seen any fonts. else if (sample >= 0x0d80 && sample < 0x0e00) { m_script = SC_SINHALA; m_otfScript = "sinh"; min = 0x0d80; max = 0x0e00; order = l_devanagari_gujarati_reorder_guide; m_script_has_reph = true; } // Thai else if (sample >= 0x0e00 && sample < 0x0e80) { m_script = SC_THAI; m_otfScript = "thai"; min = 0x0e00; max = 0x0e80; order = 0; } // Lao else if (sample >= 0x0e80 && sample < 0x0f00) { m_script = SC_LAO; m_otfScript = "lao "; min = 0x0e80; max = 0x0f00; order = 0; } // Tibetan else if (sample >= 0x0f00 && sample < 0x1000) { m_script = SC_TIBETAN; m_otfScript = "tibt"; min = 0x0f00; max = 0x1000; order = 0; } // Hangul Jamo else if (sample >= 0x1100 && sample < 0x1200) { m_script = SC_JAMO; m_otfScript = "jamo"; min = 0x1100; max = 0x1200; order = 0; } else { return 0; } // For some scripts it is irrelevant. m_ra = min + 0x30; // Stop at first non-telugu. for (reallen=1; reallen=max) break; } unsigned int i=0; /* initialize m_order */ m_reorder_guide.clear(); while (order!=0 && order[i]!=SRendClass::None) { m_reorder_guide.append (order[i]); i++; } /* * Our cluster is ready-made so we dont need to check * if each character is telugu or ZWJ,ZWNJ. */ for (i=0; i 0 || !m_is_begin)) break; gi = m_out.array(); // In confirmance with the ISCII standard, the half-consonant form // RRAh is represented as eyelash-RA. This form of RA is // commonly used in writing Marathi. if (i==0 && m_out.size()>2 && strcmp (feature, "half")==0 && m_out_type[1] == SRendClass::Halant && gi[0] == m_font->gindex (0x0931)) { SS_GlyphIndex eye[2]; eye[0] = m_font->gindex (m_ra); eye[1] = gi[1]; cutsize = m_font->gsub (m_otfScript, ft, eye, 2, &start, lig, &out_size, &is_contextual); #if DEBUG_ALL if (cutsize) { fprintf (stderr, "gsub: fixed 0x0931 + halant + zwj as eyelash.\n"); } #endif // Fallback to original. if (cutsize==0) { cutsize = m_font->gsub (m_otfScript, ft, &gi[i], m_out.size()-i, &start, lig, &out_size, &is_contextual); } } // RA+Halant+ZWJ+Consonant else if (is_blwf && i+3< m_out.size() && m_out_type[i] == SRendClass::Cfirst && m_out_type[i+1] == SRendClass::Halant && m_out_type[i+2] == SRendClass::ZWJ && m_out[i] == m_font->gindex (0x0cb0)) { SS_GlyphIndex bl[2]; bl[0] = m_out[i+3]; bl[1] = m_out[i+1]; cutsize = m_font->gsub (m_otfScript, ft, bl, 2, &start, lig, &out_size, &is_contextual); if (cutsize==2 && out_size==1) { #if DEBUG_ALL fprintf (stderr, "gsub: fixed Kannada ra+halant+zwj.\n"); #endif out_size = 2; cutsize = 4; start = 0; lig[1] = lig[0]; lig[0] = m_out[i]; is_contextual = true; // to be sure it passes. } else { cutsize = m_font->gsub (m_otfScript, ft, &gi[i], m_out.size()-i, &start, lig, &out_size, &is_contextual); } } // Malayalam post 0D31 should render same a 0D30 else if (allowed(feature, m_out_type[i]) && i+1< m_out.size() && (m_out_type[i] == SRendClass::Cpost || m_out_type[i] == SRendClass::Clast || (i+2 < m_out.size() && m_out_type[i+2] == SRendClass::ZWJ)) && m_out_type[i+1] == SRendClass::Halant && m_out[i] == m_font->gindex (0x0D31)) { cutsize = m_font->gsub (m_otfScript, ft, &gi[i], m_out.size()-i, &start, lig, &out_size, &is_contextual); if (cutsize==0) { SS_GlyphIndex bl[2]; bl[0] = m_font->gindex (m_ra); bl[1] = m_out[i+1]; cutsize = m_font->gsub (m_otfScript, ft, bl, 2, &start, lig, &out_size, &is_contextual); if (cutsize==2 && out_size==1) { #if DEBUG_ALL fprintf (stderr, "gsub: fixed Malayalam ..ta+halant+zwj as ra+halant+zwj.\n"); #endif m_out.replace (i, bl[0]); start = 0; } else { cutsize = 0; } } } // Malayalam post 0D31 should render same a 0D30 else if (allowed(feature, m_out_type[i]) && i+1< m_out.size() && (m_out_type[i] == SRendClass::Cpost || m_out_type[i] == SRendClass::Clast || (i+2 < m_out.size() && m_out_type[i+2] == SRendClass::ZWJ)) && m_out_type[i+1] == SRendClass::Halant && m_out[i] == m_font->gindex (m_ra)) { cutsize = m_font->gsub (m_otfScript, ft, &gi[i], m_out.size()-i, &start, lig, &out_size, &is_contextual); if (cutsize==0) { SS_GlyphIndex bl[2]; bl[0] = m_font->gindex (0x0d31); bl[1] = m_out[i+1]; cutsize = m_font->gsub (m_otfScript, ft, bl, 2, &start, lig, &out_size, &is_contextual); if (cutsize==2 && out_size==1) { #if DEBUG_ALL fprintf (stderr, "gsub: fixed Malayalam ra+halant+zwj as ..ta+halant+zwj.\n"); #endif start = 0; } else { cutsize = 0; } } } // Some malayalam fonts have ill-defined conjuncts - fix them here. // Fix la conunct. else if (m_script == SC_MALAYALAM && i+2< m_out.size() && m_out_type[i] == SRendClass::Cbase && (m_out_type[i+1] == SRendClass::Clast || m_out_type[i+1] == SRendClass::Cbelow || m_out_type[i+1] == SRendClass::Mbelow || m_out_type[i+1] == SRendClass::Cpost) && m_out_type[i+2] == SRendClass::Halant && m_out[i] == m_font->gindex (0x0d32) // or more if needed. && (i+3 >= m_out.size() || m_out_type[i+3] != SRendClass::ZWJ)) { cutsize = m_font->gsub (m_otfScript, ft, &gi[i], m_out.size()-i, &start, lig, &out_size, &is_contextual); if (cutsize==0) { SS_GlyphIndex bl[3]; // SWAP Halant. bl[0] = m_out[i]; bl[1] = m_out[i+2]; bl[2] = m_out[i+1]; cutsize = m_font->gsub (m_otfScript, ft, bl, 3, &start, lig, &out_size, &is_contextual); if (cutsize==3 && out_size==1) { // make it happen. #if DEBUG_ALL fprintf (stderr, "gsub: fixed Malayalam lla.\n"); #endif is_contextual = true; start = 0; } else { cutsize = 0; } } } else { cutsize = m_font->gsub (m_otfScript, ft, &gi[i], m_out.size()-i, &start, lig, &out_size, &is_contextual); } // Check if the substitution is allowed. if (cutsize > 0) { unsigned int end = start+cutsize; bool allowed_once = false; if (is_contextual) { allowed_once = true; } /* * In scripts like Malayalam, the halant form of certain consonants * is represented by 'chillaksharams'. * Chillakasharams must form if C+H+ZWJ is present. * Chillakasharams should bot form if C+H+ZWNJ is present. * Conjuncts may form otherwise. */ else if (m_script==SC_MALAYALAM && strcmp (feature, "haln")==0) { allowed_once = (i+2 < m_out_type.size() && m_out_type[i+1] == SRendClass::Halant && m_out_type[i+2] == SRendClass::ZWJ); } else for (j=start; j 0) { // find out till when we need to cut. unsigned int end = start+cutsize; // what type should it be? SRendClass::RType type = m_out_type[start+i]; // if base was involved move it. for (j=start+1; j 0 && type != SRendClass::Cbase && type != SRendClass::Chbase) { type = SRendClass::Mbelow; } #endif // This is from the old program. // Post-consonant Malayalam ra has to be reordered to syllable start if (out_size ==1 && cutsize ==2 && m_script == SC_MALAYALAM && strcmp (feature, "haln")!=0 && m_out_type[i+1] == SRendClass::Halant && m_out[i] == m_font->gindex (m_ra)) { // out_type is adjusted here. for (j=start; j0 && m_out_type[0] == SRendClass::Mpre) { m_out_type.insert (1, type); m_out.insert (1, lig[0]); } else { m_out_type.insert (0, type); m_out.insert (0, lig[0]); } } else { // out_type is adjusted here. for (j=start; j 0 && m_out_type[0] == SRendClass::Mpre) { m_out.insert (1, gi0); m_out.insert (2, gi1); m_out_type.insert (1, t); m_out_type.insert (2, SRendClass::Halant); } else { m_out.insert (0, gi0); m_out.insert (1, gi1); m_out_type.insert (0, t); m_out_type.insert (1, SRendClass::Halant); } // There can be at most one Cra,CMra,CMreph or Creph break; } } // Correcting the reorder-guide. In case of Tamil and // Malayalam it is impossible to predict conjuncts. // Move pre to its proper place after gsub - here. if (m_script == SC_MALAYALAM || m_script == SC_TAMIL) { SS_GlyphIndex pre = 0; for (i=0; i 0 && halantIndex > baseIndex) { #if DEBUG_ALL fprintf (stderr, "gsubclean: moving back unprocessed halant.\n"); #endif SS_GlyphIndex h = m_out[halantIndex]; SRendClass::RType t = m_out_type[halantIndex]; m_out.remove (halantIndex); m_out_type.remove (halantIndex); m_out.insert (baseIndex, h); m_out_type.insert (baseIndex, t); gsub ("haln"); } } /*! * \brief Initialize positioning array. */ void SScriptProcessor::gposInit () { m_xpos.clear(); m_ypos.clear(); m_pos_base_index.clear(); for (unsigned int i=0; i0)? (i-1) : 0; m_pos_base_index.append (ref); } } /*! * \brief Finalize positioning. Store values at m_positions. * This manipulates the m_out array. */ void SScriptProcessor::gposFinal () { m_positions.clear(); m_width = 0; if (m_out.size()==0) return; /* store these for first run */ m_positions.append(0); m_xpos.replace (0,0); m_ypos.replace (0,0); int width = m_font->gwidth(m_out[0]); if (width<0) width = -width; for (unsigned int i=1; igwidth (m_out[i]); if (x+w > width) width = x+w; } else // We don't have position. Calculate the position. { // this negative thing is just a hack. gwidth never actually works. int w = m_font->gwidth (m_out[i]); if (w < 0) w = -w; if (w > 0) // left aligned. { x = width; y = 0; width += w; // move cursor. } else // right aligned, composing, zero width. { x = width - w; y = 0; } } /* store it for next run */ m_xpos.replace (i, x); m_ypos.replace (i, y); int xy = (y << 16) & 0xffff0000; xy = xy | (x & 0xffff); // store packed position m_positions.append(xy); } m_width = width; } /*! * \return the advance width of this cluster. */ int SScriptProcessor::getWidth() const { return m_width; } /*! * \brief Fill m_out from m_in by getting glyphs indeces from * the font. * \return false if at least one glyph is not found. * in all circumstances, the m_out will contain * a glyph for each element in m_in. */ bool SScriptProcessor::gindex() { m_out.clear(); bool ret = true; SS_GlyphIndex index; for (unsigned i=0; igindex (m_in[i]); // // allow ZWJ ZWNJ even though they are missing from font. // if (index == 0) { if (m_in[i] != 0x200c && m_in[i] != 0x200d) { ret = false; } } m_out.append (index); } return ret; } /*! * \brief mark to base positioning OTF feature. * gposInit must be called before this. * When all gpos sequences are done gposFinal must * be called. * This manipulates the m_out array. */ void SScriptProcessor::gpos (const char* feature) { int x; int y; SS_GlyphIndex g[2]; for (unsigned int i=0; i+10 && m_out_type[i] == SRendClass::Halant) { if (i>1 && m_out_type[i-1] == SRendClass::Nukta) { pos_base_index = i-2; // should be a consonant. } else { pos_base_index = i-1; // should be a consonant. } } const SS_GlyphIndex* gi = m_out.array(); g[0] = gi[pos_base_index]; g[1] = gi[i+1]; if (m_font->gpos (m_otfScript, feature, g, &x, &y)) { m_xpos.replace (i+1, x); m_ypos.replace (i+1, y); m_pos_base_index.replace (i+1, pos_base_index) ; continue; } if (strcmp (feature, "abvm")==0) { // Try again to attach it to base. while (pos_base_index > 0 && m_out_type[pos_base_index] == SRendClass::Mbelow && m_out_type[pos_base_index] != SRendClass::Cbase && m_out_type[pos_base_index] != SRendClass::Chbase && m_out[pos_base_index] != m_out[i+1]) { pos_base_index--; } if (m_out_type[pos_base_index] != SRendClass::Cbase && m_out_type[pos_base_index] != SRendClass::Chbase) { continue; } g[0] = gi[pos_base_index]; if (m_font->gpos (m_otfScript, feature, g, &x, &y)) { m_xpos.replace (i+1, x); m_ypos.replace (i+1, y); m_pos_base_index.replace (i+1, pos_base_index) ; continue; } } #if DO_FIX_BROKEN_BELOW if (strcmp (feature, "blwm")!=0) continue; // Try again to attach it to base. while (pos_base_index > 0 && m_out_type[pos_base_index] != SRendClass::Cbase && m_out_type[pos_base_index] != SRendClass::Chbase && m_out[pos_base_index] != m_out[i+1]) { pos_base_index--; } if (m_out_type[pos_base_index] != SRendClass::Cbase && m_out_type[pos_base_index] != SRendClass::Chbase) { continue; } g[0] = gi[pos_base_index]; if (m_font->gpos (m_otfScript, feature, g, &x, &y)) { m_xpos.replace (i+1, x); m_ypos.replace (i+1, y); m_pos_base_index.replace (i+1, pos_base_index) ; continue; } if (m_font->getGlyphClass (m_out[i+1]) != 3) continue; // Select the ones that for sure should be below if (m_out[i+1] != m_font->gindex (0x0c56)) continue; if (m_out_type[i+1] == SRendClass::Mbelow && m_xpos[i+1] == 0 && m_ypos[i+1] == 0) { int w = m_font->gwidth (m_out[i+1]); // Should be below - well, it is not. if (w > 0) { m_xpos.replace (i+1, w); m_ypos.replace (i+1, 0); m_pos_base_index.replace (i+1, pos_base_index); debugDeltaPos ("Manual hack SRendClass::Mbelow."); } } #endif } } /*! * \return the position after the base consonant. * Move backwards and find the first consonant that does not * have a below-base or post base form, or arrive at first consonant. * * Initialize m_out_type and add addtionional marks for reordering: * * Creph Non-base consonant clas in case m_script_has_reph * is set and it starts with m_ra and syllable does not have * an Mpost. * * CMreph Non-base consonant clas in case m_script_has_reph * is set and it starts with m_ra and syllable has an * Mpost. * * Cra Non-base consonant class in case m_script_has_reph * is not set and it starts with m_ra and syllable does * not have an Mpost. * * CMra Non-base consonant class in case m_script_has_reph * is not set and it starts with m_ra and syllable has * an Mpost. * * Cpost After the first Cpost, all Cbelow consonants * should be marked Cpost after base. * * Cpre Consonants that are not at the beginning of the * syllable and they are before the base consonant * should be marked Cpre. * * Cbase The base consonant if it can not be in half-form. * * At this moment, in addition to the inherent properties, * these are the only ones that can appear in re-ordering-guides. */ unsigned int SScriptProcessor::findBaseConsonant() { if (m_in.size()==0) return 0; unsigned int lastConsonant = 0; /* * Get first type and add * << Creph Cra */ SRendClass::RType typeFirst; if (m_in[0] == m_ra) { typeFirst = (m_script_has_reph) ? SRendClass::Creph : SRendClass::Cra; if (m_in.size() > 1 && SRendClass::get(m_in[1]) != SRendClass::Halant) { typeFirst = SRendClass::get (m_in[0]); } lastConsonant = 1; } else { typeFirst = SRendClass::get (m_in[0]); if (typeFirst == SRendClass::Cbase || typeFirst == SRendClass::Cpost || typeFirst == SRendClass::Cdead || typeFirst == SRendClass::Cbelow) { lastConsonant = 1; } } // Khanda Ta Treat it just like Ta if (typeFirst == SRendClass::Cdead) { typeFirst = SRendClass::Cbase; } m_out_type.clear(); m_out_type.append (typeFirst); /* * Test VO * In Bengali if there is VMabove after Mpost change it to * VMpost. * << Cra */ bool has_vo = false; bool has_mpost = false; unsigned int i; // Initialize m_out_type. for (i=1; i base) { SRendClass::RType ct = m_out_type[i]; switch (ct) { case SRendClass::Cbase: case SRendClass::Cra: // This formation is not allowed to be base, unless last. if (last>i && m_out_type[i+1] == SRendClass::Halant && m_out_type[i+2] == SRendClass::ZWJ) { base = last; break; } base = i; break; case SRendClass::Creph: if (last == 0) { base = i; } else { base = last; } break; case SRendClass::Cpost: case SRendClass::Cbelow: // This formation is not allowed to be base, unless last. if (last>i && m_out_type[i+1] == SRendClass::Halant && m_out_type[i+2] == SRendClass::ZWJ) { base = last; break; } count++; if (count==3 && (m_script == SC_TELUGU || m_script == SC_KANNADA)) { base = i; } last = i; break; default: break; } } #if DEBUG_ALL fprintf (stderr, "find-base: base=%u last=%u\n", base+1, lastConsonant); #endif /* * Modify first type if necassary (Creph) */ if (typeFirst == SRendClass::Cra || SRendClass::Creph) { if (has_vo && m_script_has_reph) { m_out_type.replace (0, SRendClass::Creph); // preventing engine taking reph away from me. if (base == 0) base = m_out_type.size()-1; } if (m_out_type.size() > 2 && m_out_type[1] == SRendClass::Halant && m_out_type[2] == SRendClass::ZWJ) { m_out_type.replace (0, SRendClass::Cpre); } } // Makes sure everything is ordered properly. bool post = false; // everything will be ppst after a post. for (i=0; ibase) { m_out_type.replace (i, SRendClass::Cpre); post = (post || (type != SRendClass::Cbelow)); if (post) { m_out_type.replace (i,SRendClass::Cpost); } else { m_out_type.replace (i, type); } } break; default: break; } } // << CMra, CMreph if (has_mpost && m_out_type[0] == SRendClass::Cra) { m_out_type.replace (0, SRendClass::CMra); } if (has_mpost && m_out_type[0] == SRendClass::Creph) { m_out_type.replace (0, SRendClass::CMreph); } // Yaphala should use ZWNJ. #if 0 if (m_script == SC_BENGALI && m_is_begin && m_in.size() > 2 && m_in[0] == 0x09b0 && m_in[1] == 0x09cd && m_in[2] == 0x09af ) { if (m_out_type[2] == SRendClass::Cbase) { m_out_type.replace (0, SRendClass::Cbase); m_out_type.replace (2, SRendClass::Cbelow); base = 0; } else { m_out_type.replace (0, SRendClass::Cpre); } debugInOut ("reorder-rya-init"); } #endif return base+1; } /*! * \return the position after the last consonant. * This manipulates the m_in array. */ unsigned int SScriptProcessor::findLastConsonant() { if (m_in.size()==0) return 0; unsigned int i=m_in.size(); while (i-- > 0) { SRendClass::RType ct = SRendClass::get (m_in[i]); if (ct==SRendClass::Cbase || ct==SRendClass::Cpost || ct==SRendClass::Cbelow) { return i+1; } } return 0; } /*! * \brief Manipulate the m_in array. * \param from is the first index that will get removed. * \param until is the index before last that will get removed. * \param with is the replacement array (it can overlap) * \param size is the array size. * This manipulates the m_in array. */ void SScriptProcessor::replaceIn (unsigned int from, unsigned int until, const SS_UCS4* with, unsigned int size) { unsigned int i=0; /* remove */ for (i=from; i in_type = m_out_type; m_out_type.clear(); SV_UCS4 pp; // 4. Use the m_reorder_guide to reorder the codepoints. // Update: // Chbase // Cfirst unsigned int chpos=0; unsigned int cpos; bool first = true; unsigned int c_last_pos=0; for (unsigned int gindex=0; gindex < m_reorder_guide.size(); gindex++) { SRendClass::RType gclass = m_reorder_guide[gindex]; for (i=0;ic_last_pos) c_last_pos = cpos; } if (m_out_type[cpos] == SRendClass::Cbase) { chpos = m_out_type.size(); } if (first && m_out_type[cpos] == SRendClass::Cpre) { m_out_type.replace (cpos, SRendClass::Cfirst); first = false; } // Eat up Yaphala - halant comes before ya. if (i>0 && m_in[i] == 0x09af && m_in[i-1] == 0x09cd && (i+1==m_in.size() || m_in[i+1] != 0x09af)) { if (i!=2 || m_in[i-2] != m_ra) { pp.append (m_in[i-1]); m_out_type.append (in_type[i-1]); m_in.replace (i-1, 0); } } m_in.replace (i, 0); while (i+1 < m_in.size() && ( in_type[i+1] == SRendClass::Halant || in_type[i+1] == SRendClass::Nukta || in_type[i+1] == SRendClass::ZWJ)) { i++; pp.append (m_in[i]); m_out_type.append (in_type[i]); m_in.replace (i, 0); if (in_type[i] == SRendClass::ZWJ) { if (chpos) { m_out_type.replace (chpos-1, SRendClass::Chbase); } } } #if DEBUG_ALL SString str ("reorder-add-"); str.append (SRendClass::string(gclass)); str.append ((char)0); debugArray (str.array(), pp.array(), pp.size()); #endif } } // Malayalam needs this. if (c_last_pos != 0) { m_out_type.replace (c_last_pos, SRendClass::Clast); } // Add additional properries for rendering. unsigned int ucount =0; for (i=0; i< m_in.size(); i++) { if (SRendClass::get (m_in[i]) == SRendClass::ZWNJ) { m_in.replace (i, 0); } if (m_in[i] != 0) { #if DEBUG_ALL fprintf (stderr, "[ERROR] reorder-unprocesed: %s-U+%04X.\n", SRendClass::string (SRendClass::get(m_in[i])), m_in[i]); #endif ucount++; pp.append (m_in[i]); m_out_type.append (in_type[i]); } } #if DEBUG_ALL if (ucount) { debugArray ("reorder-unprocessed", m_in.array(), m_in.size()); } #endif // Copy back out pp, and list. m_in = pp; /* make sure m_in and m_out is in sync */ if (m_in.size() != m_out_type.size()) { #if DEBUG_ALL fprintf (stderr, "[ERROR] reorder-error: m_in.size=%u m_out_type_size=%u\n", m_in.size(), m_out_type.size()); #endif m_out_type.clear(); m_in.clear(); } } /*! * \brief Apply positioning and reordering features on a * buffer that was accepted with 'put'. * This also stores the key. */ void SScriptProcessor::apply () { unsigned int i; SStringVector gsub_guide; SStringVector gpos_guide; m_in = m_orig; m_out.clear(); m_out_type.clear(); switch (m_script) { case SC_NONE: break; case SC_DEVANAGARI: gsub_guide = SStringVector("nukt,akhn,rphf,blwf,half,vatu,pres,abvs,blws,psts,haln"); gpos_guide = SStringVector("abvm,blwm,dist"); break; case SC_BENGALI: // FIXME: If I put 'init' in from ani.ttf substitutes ka, ra with // something the font can not deal with in subsequent gsub operations. if (l_isInit==1) { gsub_guide = SStringVector("init,nukt,akhn,rphf,blwf,half,pstf,vatu,pres,abvs,blws,psts"); } else { gsub_guide = SStringVector("nukt,akhn,rphf,blwf,half,pstf,vatu,pres,abvs,blws,psts"); } gpos_guide = SStringVector("abvm,blwm,dist"); break; case SC_GURMUKHI: gsub_guide = SStringVector("nukt,blwf,pstf,vatu,pres,abvs,blws,psts,haln"); gpos_guide = SStringVector("abvm,blwm,dist"); break; case SC_GUJARATI: gsub_guide = SStringVector("nukt,akhn,rphf,blwf,half,pstf,vatu,pres,abvs,blws,psts,haln"); gpos_guide = SStringVector("abvm,blwm,dist"); break; // Go with the generic recipie case SC_ORIYA: case SC_KANNADA: case SC_MALAYALAM: gsub_guide = SStringVector("nukt,akhn,rphf,blwf,half,pstf,vatu,pres,blws,abvs,psts,haln"); gpos_guide = SStringVector("abvm,blwm,dist"); break; case SC_TAMIL: gsub_guide = SStringVector("akhn,half,pres,abvs,blws,psts,haln"); gpos_guide = SStringVector("abvm,blwm,dist"); break; case SC_TELUGU: gsub_guide = SStringVector("akhn,blwf,abvs,blws,psts,haln"); gpos_guide = SStringVector("abvm,blwm,dist"); break; case SC_THAI: gsub_guide = SStringVector("ccmp"); gpos_guide = SStringVector("kern,mark,mkmk"); break; case SC_LAO: gsub_guide = SStringVector("ccmp,blws,abvs"); gpos_guide = SStringVector("kern,mark,mkmk"); break; case SC_TIBETAN: gsub_guide = SStringVector("ccmp,blws,abvs"); gpos_guide = SStringVector("blwm,abvm,kern"); break; case SC_JAMO: gsub_guide = SStringVector("ccmp,ljmo,vjmo,tjmo"); gpos_guide = SStringVector(""); default: case SC_MAX: break; } debugIn("in"); // Decompose into parts decompose (); debugIn("decompose"); /* * reorder m_in. */ reorder (); // m_in, m_out_type debugInOut("reorder"); /* * make raw m_out from m_in. Look up all glyph indeces. */ gindex (); debugOut("gindex"); /* * Do all gsubs */ for (i=0; i 0x7fff) pix -= 0x10000 ; int piy = (mxy >> 16) & 0xffff; if (piy > 0x7fff) piy -= 0x10000; fprintf (stderr, " [%d,%d]", pix, piy); } fprintf (stderr, "\n"); #endif } #if DEBUG_ALL static void debugArray (const char* message, const SS_UCS4* arr, unsigned int size) { fprintf (stderr, "%s: ", message); for (unsigned int i=0; i * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SW32_h #define SW32_h #include "stoolkit/SExcept.h" #include "swindow/SAwt.h" #include "swindow/SWindow.h" #include "stoolkit/SString.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SBinHashtable.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ /** * This class should be implemented for a window toolkit implementation */ class SW32Impl : public SAwtImpl { public: SW32Impl(); virtual ~SW32Impl(); virtual SWindow* getWindow (SWindowListener* l, const SString& name); virtual bool isOK(); virtual void setEncoding(const SString& str); SEncoder encoder; }; class SW32Window : public SWindow { public: SW32Window(const SString& n, SW32Impl* i, long _id); virtual ~SW32Window(); /* windowing */ virtual void show (); virtual void hide (); virtual void wait (); virtual void center (SWindow* window); virtual void setParent (SWindow* w, int x, int y); void redraw (bool clear, int x, int y, unsigned int width, unsigned int height); virtual void resize (unsigned int width, unsigned int height); virtual void setMinimumSize (unsigned int _width, unsigned int _height); virtual void move (int x, int y); virtual void setTitle (const SString& title); virtual void setBackground (const SColor &color); virtual void clear (int x, int y, unsigned int width, unsigned int height); virtual void copy (int x, int y, unsigned int width, unsigned int height, int tox, int toy); /* clip */ virtual void setClippingArea (int x, int y, unsigned int width, unsigned int height); virtual void removeClippingArea (); virtual SString getClipUTF8(); virtual void putClipUTF8(const SString& utf8); virtual void getKeyboardFocus(); virtual void addAccelerator (const SAccelerator& a, SAcceleratorListener* l); virtual void removeAccelerator (const SAccelerator& a, SAcceleratorListener* l); virtual bool startInputMethod (const SString& name, const SProperties& prop); virtual void stopInputMethod (); virtual void setInputMethodProperties (const SProperties& prop); virtual SString getInputMethod (); /*---------------- from canvas --------------*/ virtual bool newpath (double x, double y, const SString& id); virtual void fill (const SPen& pen); virtual void stroke (const SPen& pen); virtual void moveto (double x, double y); virtual void lineto (double x, double y); virtual void curveto (double x0, double y0, double x1, double y1, double x3, double y3); virtual void closepath(); virtual void pushmatrix(); virtual void popmatrix(); virtual void scale (double x, double y); virtual void translate (double x, double y); virtual void rotate (double angle); virtual bool isVisible (); virtual void putImage (int x, int y, const SImage& image); virtual void bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height); virtual void bitline (const SColor& fg, int x, int y, int tox, int toy); virtual void bitpoint (const SColor& fg, int x, int y); virtual void bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size); virtual void setModal (SWindow*w, bool decorated); static void setPixmapCacheSize(unsigned int _size); static void setPixmapCacheOn (bool _on); /* helper */ void repaintBackground(int left, int top, int right, int bottom); long getID () { return id; } bool clipChained; long clipChain; /* only for top level windows */ long currentFocusWindow; long modalID; long parentID; /* only top level ones will have it. */ SBinHashtable acceleratorTable; SBinHashtable accelerators; /*--- get an integer id for the underlying window ---*/ virtual unsigned long getWindowID() const; // default off virtual void setDoubleBuffer (bool isOn); virtual bool isDoubleBufferEnabled () const; bool dbufferOn; // double buffer void* dbuffer; long id; void* cdc; SColor background; private: bool dcin(); void dcout(bool wasin); void* clipRegion; SGEngine* engine; SPen pen; SW32Impl* impl; SString name; SString imname; }; #endif /* SW32_h */ ./swindow/swin32/backup/0000755000175000017500000000000010724001350015111 5ustar henrichhenrich./swindow/swin32/backup/SWin32.h0000644000175000017500000001152010723674716016333 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SW32_h #define SW32_h #include "stoolkit/SExcept.h" #include "swindow/SAwt.h" #include "swindow/SWindow.h" #include "stoolkit/SString.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SBinHashtable.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ /** * This class should be implemented for a window toolkit implementation */ class SW32Impl : public SAwtImpl { public: SW32Impl(); virtual ~SW32Impl(); virtual SWindow* getWindow (SWindowListener* l, const SString& name); virtual bool isOK(); virtual void setEncoding(const SString& str); SEncoder encoder; }; class SW32Window : public SWindow { public: SW32Window(const SString& n, SW32Impl* i, long _id); virtual ~SW32Window(); /* windowing */ virtual void show (); virtual void hide (); virtual void wait (); virtual void center (SWindow* window); virtual void setParent (SWindow* w, int x, int y); void redraw (bool clear, int x, int y, unsigned int width, unsigned int height); virtual void resize (unsigned int width, unsigned int height); virtual void setMinimumSize (unsigned int _width, unsigned int _height); virtual void move (int x, int y); virtual void setTitle (const SString& title); virtual void setBackground (const SColor &color); virtual void clear (int x, int y, unsigned int width, unsigned int height); virtual void copy (int x, int y, unsigned int width, unsigned int height, int tox, int toy); /* clip */ virtual void setClippingArea (int x, int y, unsigned int width, unsigned int height); virtual void removeClippingArea (); virtual SString getClipUTF8(); virtual void putClipUTF8(const SString& utf8); virtual void getKeyboardFocus(); virtual void addAccelerator (const SAccelerator& a, SAcceleratorListener* l); virtual void removeAccelerator (const SAccelerator& a, SAcceleratorListener* l); virtual bool startInputMethod (const SString& name, const SProperties& prop); virtual void stopInputMethod (); virtual void setInputMethodProperties (const SProperties& prop); virtual SString getInputMethod (); /*---------------- from canvas --------------*/ virtual bool newpath (double x, double y, const SString& id); virtual void fill (const SPen& pen); virtual void stroke (const SPen& pen); virtual void moveto (double x, double y); virtual void lineto (double x, double y); virtual void curveto (double x0, double y0, double x1, double y1, double x3, double y3); virtual void closepath(); virtual void pushmatrix(); virtual void popmatrix(); virtual void scale (double x, double y); virtual void translate (double x, double y); virtual void rotate (double angle); virtual bool isVisible (); virtual void putImage (int x, int y, const SImage& image); virtual void bitfill (const SColor& bg, int x, int y, unsigned int width, unsigned int height); virtual void bitline (const SColor& fg, int x, int y, int tox, int toy); virtual void bitpoint (const SColor& fg, int x, int y); virtual void bitpoints (const SColor& fg, const int* x, const int* y, unsigned int size); virtual void setModal (SWindow*w, bool decorated); void* cdc; static void setPixmapCacheSize(unsigned int _size); static void setPixmapCacheOn (bool _on); /* helper */ void repaintBackground(int left, int top, int right, int bottom); long getID () { return id; } bool clipChained; long clipChain; /* only for top level windows */ long currentFocusWindow; long modalID; long parentID; /* only top level ones will have it. */ SBinHashtable acceleratorTable; SBinHashtable accelerators; /*--- get an integer id for the underlying window ---*/ virtual unsigned long getWindowID() const; // default off virtual void setDoubleBuffer (bool isOn); virtual bool isDubleBufferEnabled () const; private: bool dcin(); void dcout(bool wasin); void* clipRegion; SGEngine* engine; SColor background; SPen pen; SW32Impl* impl; long id; SString name; SString imname; }; #endif /* SW32_h */ ./swindow/swin32/backup/SWin32.cpp0000700000175000017500000025317011332762257016663 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define SS_YUDIT_DIALOG_STYLE \ (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_CLIPCHILDREN) #define SS_YUDIT_TOPLEVEL_STYLE \ (WS_OVERLAPPEDWINDOW | WS_CLIPCHILDREN) #define SS_YUDIT_CHILD_STYLE \ (WS_CHILD | WS_CLIPCHILDREN) /* * You might want to comment this out to build on Wndows CE * Having it makes it more responsive, event based. * it needs ws2_32.lib */ #include "stoolkit/SExcept.h" #include "stoolkit/SEvent.h" #include "stoolkit/SString.h" #include "stoolkit/SUtil.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SBinHashtable.h" #include "swindow/SAwt.h" #include "swindow/SGEngine.h" #include "swindow/swin32/SWin32.h" #include "swindow/SRedrawEvent.h" #include #include #include #define WIN32_LEAN_AND_MEAN #include #include #undef WIN32_LEAN_AND_MEAN #include #ifdef USE_WINAPI /* SEventBSD hookup hack */ int main(int argc, char* argv[]); #endif extern int (*_windowsSelectHookup)(int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t); static int winSelectHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t); static int winWineHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t); class SDoubleBuffer { public: SDoubleBuffer (HWND _id, HDC _gotDC, const SColor& background, int _x, int _y, unsigned int _w, unsigned int _h); void copyToScreen (HWND _id, HDC _gotDC); ~SDoubleBuffer (); HDC bitmapHDC; HBITMAP bitmap; int x; int y; unsigned int width; unsigned int height; }; /** * Clipboard Stuff. */ static UINT UTF8_STRING = 0; SV_UCS4 clipData; typedef struct _KeyData { SWindowListener::SKey key; bool ctrl0; bool ctrl1; bool meta0; bool meta1; bool shift0; bool shift1; } KeyData; static int putClipText(); static int putClipUnicodeText(); static int putClipUtf8Text(); static void notifyClip (); static void processKey (KeyData* kd, bool syskey, int keycod, bool isdown); static void sendKeyReleased (KeyData* kd, SW32Window* wn, SWindowListener* ln); static void sendKeyChar (KeyData* kd, const SString& s); static bool sendAcceleratorPressed (int key, bool ctrl, bool shift, bool meta); static bool sendAcceleratorReleased (); /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ static bool needClear = false; SBinHashtable brushes; SBinHashtable pens; SBinHashtable minimumSizesX; SBinHashtable minimumSizesY; static HPEN getBitPen (const SColor& clr); static HBRUSH getSolidBrush (const SColor& clr); static long currentTopFocusWindow=0; static long currentFocusWindow=0; /* There is only one context */ HINSTANCE instance; HINSTANCE pinstance; LPSTR cmdLine; int cmdShow; HANDLE accel; /* alway reset it on colormap change */ static HDC compatibleDC = 0; static HBITMAP compatibleHBitmap = 0; static bool winOK = false; typedef SBinHashtable SWindowHashtable; typedef SBinHashtable SListenerHashtable; static SWindowHashtable windowHashtable; static SListenerHashtable listenerHashtable; static void createShadedBitmap (const SPen& pen, const SImage& im, HBITMAP* p, HBITMAP* m, HDC odc, HDC dc); static void createColoredBitmap (const SPen& pen, const SImage& im, HBITMAP* p, HBITMAP* m, HDC odc, HDC dc); static long clipboardOwner=0; char* windowName = "Yudit"; typedef SHashtable SRedrawEventTable; int shownWindows = 0; long buttonFlags[3]; static SW32Window* getToplevelWindow (SW32Window* w); static SW32Window* getToplevelWindow (long id); /*-------------------------------------------------------------------------- * You would not need this if win98 could create more than 500 bitmaps. * START *-------------------------------------------------------------------------*/ SDoubleBuffer::SDoubleBuffer (HWND _id, HDC _gotDC, const SColor& background, int _x, int _y, unsigned int _w, unsigned int _h) { HDC winDC = (_gotDC == 0) ? GetDC(_id) : _gotDC; bitmapHDC = CreateCompatibleDC (winDC); // fprintf (stderr, "bitmapHDC=%u\n", (unsigned int) bitmapHDC); x = _x; y = _y; width = _w; height = _h; if (width == 0) width = 1; if (height == 0) height = 1; // can't use bitmapHDC, don't ask me why bitmap = CreateCompatibleBitmap(winDC, x+width, y+height); SelectObject(bitmapHDC, bitmap); if (_gotDC == 0) ReleaseDC (_id, winDC); if (bitmap == 0) { fprintf (stderr, "Bitmap is null...\n"); } // Clear the bitmap with background RECT rect; rect.left = x; rect.top = y; rect.right = x + (int) width; rect.bottom = y + (int) height; HBRUSH brush = getSolidBrush (background); int mode = SetMapMode (bitmapHDC, MM_TEXT); FillRect (bitmapHDC, &rect, brush); SetMapMode (bitmapHDC, mode); // brush is cached, dont delete it } void SDoubleBuffer::copyToScreen (HWND _id, HDC _gotDC) { HDC winDC = (_gotDC == 0) ? GetDC(_id) : _gotDC; // SelectClipRgn ((HDC)bitmapHDC, (HRGN) 0); // SelectClipRgn (winDC, (HRGN) 0); BitBlt (winDC, x, y, width, height, bitmapHDC, x, y, SRCCOPY); if (_gotDC == 0) ReleaseDC (_id, winDC); } SDoubleBuffer::~SDoubleBuffer () { DeleteDC (bitmapHDC); DeleteObject (bitmap); } class SBitmapItem { public: HBITMAP bitmap; HDC dc; int x; int y; int width; int height; }; class SBitmapArea { public: SBitmapArea (unsigned int _xy) { xy = _xy; bitmap = 0; cursor = 0; size = 0; ison = false; dc = 0; } void clear () { /* delete dc first. always bitmap might be selected...*/ if (dc) DeleteDC (dc); if (bitmap) DeleteObject (bitmap); dc = 0; bitmap = 0; cursor = 0; } void setOn (bool _ison) { clear(); ison = _ison; } void setSize (int _size) { clear(); unsigned long l = ss_sqrtlong ((unsigned long) _size); size = (int) (l); /* limit size 4 Megs */ if (xy > 2 && size * xy > 2000) size = 2000/xy; } int put (const SString& key, SBitmapItem* item, SString* old); private: bool ison; int xy; int size; int cursor; HBITMAP bitmap; HDC dc; SStringVector keys; }; /** * Put a new item in cache. * @return -1 if old data was replaced * 0 if it was not successful * positive if it suceesed. * it also sets origox, origoy */ int SBitmapArea::put (const SString& key, SBitmapItem* item, SString* old) { /* cerate compatible bitmap */ if (!ison) return 0; if (!item->dc) return 0; if (!item->bitmap) return 0; if (bitmap == 0) { if (size<2) return 0; bitmap = CreateCompatibleBitmap (item->dc, size*xy, size*xy); if (bitmap == 0) { fprintf (stderr, "could not create bitmap dime=%dx%d size=%d\n", size * xy, size * xy, xy); return 0; } dc = CreateCompatibleDC(item->dc); if (dc == 0) { fprintf (stderr, "could not create dc\n"); return 0; } SelectObject (dc, bitmap); cursor = 0; keys.clear(); } if (dc == 0) { return 0; } if (cursor >= size * size) { cursor = 0; } int ret = 1; if (keys.size() > cursor) { ret = -1; old->append (keys[cursor]); keys.replace (cursor, key); } else { keys.append (key); } SelectObject (item->dc, item->bitmap); int ypos = xy * (cursor/size); int xpos = xy * (cursor%size); BitBlt (dc, xpos, ypos, item->width, item->height, item->dc, 0, 0, SRCCOPY); item->bitmap = bitmap; item->dc = dc; item->x = xpos; item->y = ypos; cursor++; return ret; } typedef SBinHashtable SBitmapHash; /** * This object re-uses a big bitmap area. */ class SBitmapCache { public: SBitmapCache (void); SBitmapItem* get (const SString& key) { SBitmapItem* it = (SBitmapItem*) cache.get (key); return it; } void put (const SString& key, const SBitmapItem& item); void setOn (bool ison) { area16.setOn (ison); area32.setOn (ison); area64.setOn (ison); area128.setOn (ison); iscaching = true; clear(); } bool isOn () { return iscaching; } void clear(); void setSize (int size) { area16.setSize (size); area32.setSize (size); area64.setSize (size); area128.setSize (size); clear(); } private: bool iscaching; SBitmapHash cache; SBitmapArea area16; SBitmapArea area32; SBitmapArea area64; SBitmapArea area128; }; void SBitmapCache::clear() { area16.clear (); area32.clear (); area64.clear (); area128.clear (); for (unsigned int i=0; i 128 || _item.width > 128) { return; } SBitmapItem * item = new SBitmapItem(); item->bitmap = _item.bitmap; item->dc = _item.dc; item->width = _item.width; item->height = _item.height; int ret = 0; SString old; if (item->height > 64 || item->width > 64) { ret = area128.put (key, item, &old); } else if (item->height > 32 || item->width > 32) { ret = area64.put (key, item, &old); } else if (item->height > 16 || item->width > 16) { ret = area32.put (key, item, &old); } else { ret = area16.put (key, item, &old); } /* replaced */ if (ret < 0) { SBitmapItem* bold = cache.get (old); if (bold) { cache.remove (old); delete bold; } } /* can not use it */ if (ret == 0) { delete item; return; } /* dont delete item - reused */ cache.put (key, item); return; } SBitmapCache imageCache; SBitmapCache maskCache; /*-------------------------------------------------------------------------- * You would not need this if win98 could create more than 500 bitmaps. * END *-------------------------------------------------------------------------*/ class SWHandler : public SEventTarget { public: SWHandler(unsigned int msec, bool iswine); ~SWHandler(); virtual bool done(const SEventSource* s); virtual bool timeout(const SEventSource* s); void addRedrawEvent (long id, const SRedrawEvent& evt); void moveRedrawEvent (long id, int xoffset, int yoffset); bool doWin32(); bool doWin32Loop(); SRedrawEventTable redrawEventTable; SJob* job; STimer* timer; private: }; /** * The command line -wine flag make this work in wine. * @param msec is zero for event based version. or >= 1 for wine. * @param iswine is true if we use just a Sleep in event loop. * this happens because there is no socket in wine. * if iswine is specified msec can not be zero. */ SWHandler::SWHandler(unsigned int msec, bool iswine) { job = new SJob(); if (msec!=0) { timer = new STimer(msec); SEventHandler::addTimer(timer, this); if (iswine) { _windowsSelectHookup = winWineHack; fprintf (stderr, "Hooked up 'Sleep' event handler for wine.\n"); } fprintf (stderr, "Timer is set to %d msecs.\n", msec); } else { // fprintf (stderr, "Waiting for (I think ON is a better word) multiple objects. Throw 'em at me!\n"); _windowsSelectHookup = winSelectHack; timer = 0; } SEventHandler::addJob(job, this); UTF8_STRING = RegisterClipboardFormat ("UTF8_STRING"); } SWHandler::~SWHandler() { if (job) delete job; if (timer) delete timer; } bool SWHandler::done(const SEventSource* s) { if (!winOK) { return false; } /* we dont get a notice so better hurry up and process all messages. */ doWin32Loop(); if (redrawEventTable.size()==0) return false; /* this is the fast serving of collapsing events */ /* we request redraw events only after all events are processed */ SRedrawEventTable t; /* redraw block */ do { t.clear(); t = redrawEventTable; redrawEventTable.clear(); for (unsigned int i=0; igetID()); if (li == 0) { fprintf (stderr, "Window listener for %ld not found.\n", wid); continue; } // swid->dbuffer IS 0 if (swid->dbufferOn && swid->dbuffer == 0) { swid->dbuffer = (evt->width == 0 || evt->height == 0) ? new SDoubleBuffer ((HWND) swid->id, 0, swid->background, 0, 0, swid->getWidth(), swid->getHeight()) : new SDoubleBuffer ((HWND) swid->id, 0, swid->background, evt->x, evt->y, evt->width, evt->height); } /* FIXME : if window is not yet visible continue */ if (swid->dbuffer == 0 && evt->clear && evt->width > 0 && evt->height > 0) { swid->repaintBackground ( evt->x, evt->y, evt->x + evt->width, evt->y + evt->height); } // fprintf (stderr, "deliver RedrawEvent %ld.\n", wid); if (evt->width == 0 || evt->height == 0) { li->redraw (swid, 0, 0, swid->getWidth(), swid->getHeight()); } else { li->redraw (swid, evt->x, evt->y, evt->width, evt->height); } if (swid->dbuffer) { ((SDoubleBuffer*) swid->dbuffer)->copyToScreen ( (HWND) swid->id, (HDC) 0); delete (SDoubleBuffer*) swid->dbuffer; swid->dbuffer = 0; } } } } while (doWin32Loop()); SEventHandler::addJob(job, this); return false; } /** * Process X11 events in a loop * @return true if at least one event was found. */ bool SWHandler::doWin32Loop() { bool done1 = false; while (doWin32()) { done1 = true; } return done1; } /** * Process one message. * @return true if at least one message was processed. */ bool SWHandler::doWin32() { MSG msg; if (!PeekMessage(&msg ,0 , 0, 0, PM_REMOVE)) return false; do { //if (!TranslateAccelarator(hwnd, accel,&msg) TranslateMessage(&msg); DispatchMessage(&msg); } while (PeekMessage(&msg ,0 , 0, 0, PM_REMOVE)); return true; } /** * Add a collapsing window redraw. * @param id is the id of the window. * @param evt is the event. */ void SWHandler::addRedrawEvent (long id, const SRedrawEvent& evt) { SVector save; SRedrawEvent newEvt (evt); const SRedrawEvent* old = 0; while ((old = redrawEventTable.get (id))) { if (newEvt.merge (*old)) { redrawEventTable.remove (id); break; } save.append (*old); redrawEventTable.remove (id); } /* put back */ for (unsigned int i=0; i save; const SRedrawEvent* old = 0; while ((old=redrawEventTable.get (id))) { save.append (*old); redrawEventTable.remove (id); } //fprintf (stderr, "moveRedrawEvent %u\n", save.size()); for (unsigned int i=0; icurrentFocusWindow); if (foc) foc->getKeyboardFocus(); } //BringWindowToTop((HWND)modalID); } } } /** * This reqests a redraw, efficiently after all events got processed. * @param clear is true if the window needs to be cleared before calling redraw. * @param x is the x origin of the event * @param y is the y origin of the event * @param width is the width of the event * @param height is the height of the event */ void SW32Window::redraw (bool clear, int _x, int _y, unsigned int _width, unsigned int _height) { if (_x+(int)_width < 0 || _y + (int) _height < 0) { return; } if (_x > (int)getWidth() || _y > (int)getHeight()) { return; } handler->addRedrawEvent (id, SRedrawEvent (clear, _x, _y, _width, _height)); } /** * Reparent the window. * TODO: move it to x y * @param p is the parent window */ void SW32Window::setParent (SWindow* p, int x, int y) { SW32Window* otop = getToplevelWindow (this); SetParent ((HWND)id, (HWND)((SW32Window*)p)->id); SetWindowLong ((HWND)id, GWL_STYLE, SS_YUDIT_CHILD_STYLE); parentID = ((SW32Window *)p)->id; SW32Window* top = getToplevelWindow (this); unsigned int i; unsigned int j; for (i=0; iaccelerators.size(); i++) { for (j=0; jaccelerators.size(i); j++) { SAcceleratorListener* l = otop->accelerators.get (i,j); if (l==0) continue; const SString& key = otop->accelerators.key (i,j); top->accelerators .put (key, l); } } otop->accelerators.clear(); for (i=0; iacceleratorTable.size(); i++) { for (j=0; jacceleratorTable.size(i); j++) { long acc = otop->acceleratorTable.get (i,j); if (acc==0) continue; const SString& key = otop->acceleratorTable.key (i,j); top->acceleratorTable .put (key, acc); } } otop->acceleratorTable.clear(); } void SW32Window::resize (unsigned int _width, unsigned int _height) { RECT rcClient, rcWindow; POINT ptDiff; if (GetParent ((HWND)getID()) == 0 && GetClientRect((HWND)getID(), &rcClient) && GetWindowRect((HWND)getID(), &rcWindow)) { // rcClient.left and rcClient.top is 0 ptDiff.x = (rcWindow.right - rcWindow.left) - (rcClient.right-rcClient.left); ptDiff.y = (rcWindow.bottom - rcWindow.top) - (rcClient.bottom-rcClient.top); //MoveWindow(hWnd,rcWindow.left, rcWindow.top, //nWidth + ptDiff.x, nHeight + ptDiff.y, TRUE); unsigned int w = _width + ptDiff.x; unsigned int h = _height+ ptDiff.y; // fprintf (stderr, "SetSize=%d %d\n", w, h); setSize(_width, _height); MoveWindow((HWND)getID(),rcWindow.left, rcWindow.top, w, h, TRUE); //SetWindowPos ((HWND)getID(), 0, // getPositionX(), getPositionY(), // w, h, // SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOZORDER); } else { if (getWidth() == _width && getHeight() == _height) return; setSize(_width, _height); SetWindowPos ((HWND)getID(), 0, getPositionX(), getPositionY(), getWidth(), getHeight(), SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOZORDER); } } void SW32Window::move (int _x, int _y) { if (getPositionX() == _x && getPositionY() == _y) return; setPosition(_x, _y); SetWindowPos ((HWND)getID(), 0, getPositionX(), getPositionY(), getWidth(), getHeight(), SWP_NOACTIVATE | SWP_NOSIZE | SWP_NOZORDER); } void SW32Window::setTitle (const SString& title) { SString windowName=title; windowName.append ((char)0); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString titleW = u16.encode (u8.decode (windowName)); SetWindowTextW ((HWND)id, (WCHAR*) titleW.array()); } KeyData keyData = { SWindowListener::Key_Undefined, false, false, false, false, false, false }; LRESULT CALLBACK _eventHandler (HWND hwnd, UINT message, WPARAM wParam,LPARAM lParam) { SW32Window* w = 0; SWindowListener* l = 0; switch(message) { case WM_GETMINMAXINFO: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { unsigned int minx = minimumSizesX.get((long)hwnd); unsigned int miny = minimumSizesY.get((long)hwnd); if (minx && miny) { LPMINMAXINFO info = (LPMINMAXINFO) lParam; /* is it enough ? too much trouble getting the client are size ..*/ info->ptMinTrackSize.x = minx + 10; info->ptMinTrackSize.y = miny + 30; return 0; RECT rect; rect.left = 0; rect.top = 0; rect.right = minx; rect.bottom = miny; int style = (w->modalID) ? SS_YUDIT_DIALOG_STYLE : SS_YUDIT_TOPLEVEL_STYLE; if (!AdjustWindowRect (&rect, style, false)) { return 0; } info->ptMinTrackSize.x = rect.right - rect.left; info->ptMinTrackSize.y = rect.bottom - rect.top; return 0; } } break; case WM_ACTIVATE: break; case WM_KILLFOCUS: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { SW32Window* top = getToplevelWindow (w); long oldT = currentTopFocusWindow; long oldW = currentFocusWindow; currentTopFocusWindow = 0; currentFocusWindow = 0; if (oldW != 0) { SW32Window* wo = windowHashtable.get (oldW); SWindowListener* lo = listenerHashtable.get (oldW); if (wo && lo) { sendKeyReleased(&keyData, wo, lo); lo->lostKeyboardFocus(wo); } } return 0; } break; case WM_SETFOCUS: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { SW32Window* top = getToplevelWindow (w); long oldT = currentTopFocusWindow; long oldW = currentFocusWindow; currentTopFocusWindow = top->getID(); currentFocusWindow = top->currentFocusWindow; /* if we changed window inside top, generate lost and gained event */ if (oldW != currentFocusWindow) { SW32Window* wo = windowHashtable.get (oldW); SWindowListener* lo = listenerHashtable.get (oldW); if (wo && lo) { sendKeyReleased(&keyData, wo, lo); lo->lostKeyboardFocus(wo); } SW32Window* wn = windowHashtable.get (currentFocusWindow); SWindowListener* ln = listenerHashtable.get (currentFocusWindow); if (wn && ln) ln->gainedKeyboardFocus(wo); } return 0; } break; case WM_NCCALCSIZE: /* forget it. */ break; case WM_RENDERALLFORMATS: putClipText(); putClipUnicodeText(); putClipUtf8Text(); return 0; case WM_RENDERFORMAT: if ((UINT)wParam == UTF8_STRING) { return putClipUtf8Text(); } else if ((UINT)wParam == CF_UNICODETEXT) { return putClipUnicodeText(); } else if ((UINT)wParam == CF_TEXT) { return putClipText(); } break; case WM_DRAWCLIPBOARD: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w!=0 && w->clipChain != 0) { SendMessage ((HWND)w->clipChain, message, wParam, lParam); } notifyClip(); return 0; case WM_CHANGECBCHAIN: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); /* repair chain - next is gone */ if (w!=0 && (long) wParam == w->clipChain) { w->clipChain = (long) lParam; } else if (w!=0 && w->clipChain != 0) { SendMessage ((HWND)w->clipChain, message, wParam, lParam); } return 0; case WM_PAINT: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); /* TODO: might be faster with addRedrawingEvent */ if (w) { if (GetUpdateRect (hwnd, 0, true)) { PAINTSTRUCT pstr; HDC dc = BeginPaint (hwnd, &pstr); if (dc == 0) break ; if (w->cdc != 0) { //fprintf (stderr, "PAINT: WONT..."); } else { #define SD_YUDIT_EVENT_COMPRESSION 1 #if SD_YUDIT_EVENT_COMPRESSION /* Windows has crappy event compression - yudit uses its own */ handler->addRedrawEvent (w->getID(), SRedrawEvent (pstr.fErase, pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right-pstr.rcPaint.left, pstr.rcPaint.bottom-pstr.rcPaint.top)); #else w->cdc = dc; // w->dbuffer IS 0 if (w->dbufferOn && w->dbuffer == 0) { w->dbuffer = ( pstr.rcPaint.bottom == pstr.rcPaint.top || pstr.rcPaint.left == pstr.rcPaint.right) ? new SDoubleBuffer ((HWND) w->id, (HDC) w->cdc, w->background, 0, 0, w->getWidth(), w->getHeight()) : new SDoubleBuffer ((HWND) w->id, (HDC) w->cdc, w->background, pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right-pstr.rcPaint.left, pstr.rcPaint.bottom-pstr.rcPaint.top); } if (w->dbuffer == 0 && pstr.fErase) { w->repaintBackground ( pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right, pstr.rcPaint.bottom); } l->redraw (w, pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right-pstr.rcPaint.left, pstr.rcPaint.bottom-pstr.rcPaint.top); if (w->dbuffer) { ((SDoubleBuffer*) w->dbuffer)->copyToScreen ( (HWND) w->id, (HDC) w->cdc); delete (SDoubleBuffer*) w->dbuffer; w->dbuffer = 0; } w->cdc = 0; #endif EndPaint (hwnd, &pstr); } return 0; } } break; case WM_DEVICECHANGE: imageCache.clear(); maskCache.clear(); fprintf (stderr, "DeviceChange - Compatible DC deleted\n"); DeleteDC (compatibleDC); compatibleDC = 0; break; case WM_ERASEBKGND: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); /* TODO: might be faster with addRedrawingEvent */ if (w) { RECT rect; GetClientRect (hwnd, &rect); /* does not work - race condition */ #if 0 handler->addRedrawEvent (w->getID(), SRedrawEvent (true, rect.left, rect.top, rect.right-rect.left, rect.bottom-rect.top)); #else w->cdc = ((HDC) wParam); w->repaintBackground ( rect.left, rect.top, rect.right, rect.bottom); w->cdc = 0; #endif return 1; } break; case WM_CAPTURECHANGED: lostCapture((long)lParam); return 0; break; //what a NAME! //case WM_NCHITTEST: case WM_MOUSEMOVE: { int fwKeys = (int) wParam; short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); if (fwKeys & MK_LBUTTON) { buttonDragged ((long) hwnd, 0, xPos, yPos); } else if (fwKeys & MK_MBUTTON) { buttonDragged ((long) hwnd, 1, xPos, yPos); } else if (fwKeys & MK_RBUTTON) { buttonDragged ((long) hwnd, 2, xPos, yPos); } else { buttonEnter ((long) hwnd); } } break; case WM_RBUTTONDOWN: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonPressed (long (hwnd), 2, xPos, yPos); } break; case WM_RBUTTONUP: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonReleased (long (hwnd), 2, xPos, yPos); } break; case WM_MBUTTONDOWN: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonPressed ((long) hwnd, 1, xPos, yPos); } break; case WM_MBUTTONUP: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonReleased ((long) hwnd, 1, xPos, yPos); } break; case WM_LBUTTONDOWN: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonPressed ((long) hwnd, 0, xPos, yPos); } break; case WM_LBUTTONUP: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonReleased ((long)hwnd, 0, xPos, yPos); } break; case WM_IME_CHAR: //fprintf (stderr, "WM_IME_COMPOSITION\n"); { } break; case WM_IME_COMPOSITION: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); //fprintf (stderr, "WM_IME_CHAR\n"); if (w && (lParam & GCS_RESULTSTR)) { HIMC himc = ImmGetContext (hwnd); if (!himc) break; DWORD size = ImmGetCompositionStringW(himc, GCS_RESULTSTR, 0, 0); HGLOBAL hglobal = GlobalAlloc (GHND, size + sizeof (WCHAR)); if (!hglobal) { ImmReleaseContext (hwnd, himc); break; } LPSTR lpstr = (LPSTR) GlobalLock (hglobal); if (lpstr) { ImmGetCompositionStringW(himc, GCS_RESULTSTR, lpstr, size + sizeof (WCHAR)); /* copy unicode over */ SV_UCS4 ucs4v; SString str (lpstr, (unsigned int)size); for (unsigned int i=0; i+1setSize(rcClient.right-rcClient.left, rcClient.bottom-rcClient.top); } else { w->setSize(width, height); } */ w->setSize(width, height); /* no need to send event to children */ if (!w->parentID) { l->resized(w, w->getPositionX(), w->getPositionY(), w->getWidth(), w->getHeight()); } return 0; } break; case WM_MOVE: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { short xPos = (unsigned int) LOWORD (lParam); short yPos = (unsigned int) HIWORD (lParam); w->setPosition(xPos, yPos); return 0; } break; case WM_COMMAND: break; case WM_DESTROY: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w && w->clipChained) { ChangeClipboardChain (hwnd, (HWND)w->clipChain); w->clipChained = false; } PostQuitMessage (0); SEventHandler::exit(); break; case WM_CLOSE: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { if (w && l && l->windowClose (w)) { w->hide (); } if (shownWindows == 0) { if (w && w->clipChained) { ChangeClipboardChain (hwnd, (HWND)w->clipChain); w->clipChained = false; } PostQuitMessage (0); SEventHandler::exit(); } return 0; } else { return 0; } break; default: return DefWindowProc(hwnd,message,wParam,lParam); } return DefWindowProc(hwnd,message,wParam,lParam); } /** * This event loop is especially tailored for wine * where we can not wait on objects and we can not * wait on sockets. What can we do? Sleep. That is * what Word Excel and all ms stuff is doing anyway * so we wont be any different. */ static int winWineHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t) { int millisec = 2000; /* people should notice they did sg wrong. */ if (t!=0) { millisec = (DWORD) (t->tv_sec * 1000 + t->tv_usec / 1000); } Sleep (millisec); return 0; } /** * This is a hack to make select work on windows too by Gaspar * This routine will hook up int SEventBSD hook. */ static int winSelectHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t) { int maxFd = (readSize > writeSize) ? readSize : writeSize; maxFd = (exceptSize > maxFd) ? exceptSize : maxFd; /* build events */ DWORD millisec = WSA_INFINITE; if (t!=0) { millisec = (DWORD) (t->tv_sec * 1000 + t->tv_usec / 1000); } if (maxFd == 0 && millisec ==0) { return 0; } SBinVector events; SV_INT vmap; // Win95 does not have it. #ifdef HAVE_WS2_32_DLL /* Nothing only timer - or not even exceptSize - forget that */ unsigned int i; /* go through read and write */ for (i=0; i 0) { FD_SET (fd, wo); return 1; } return -2; /* what the heck? */ } void SW32Window::setBackground(const SColor &color) { background = color; pen = SPen(pen.getForeground(), background, pen.getLineWidth()); } static HBRUSH getSolidBrush (const SColor& clr) { SString mvle = SString ((long)(clr.getValue() & 0x00ffffff)); HBRUSH brush = brushes.get (mvle); if (brush == 0) { COLORREF ref = PALETTERGB (clr.red, clr.green, clr.blue); brush = ::CreateSolidBrush (ref); brushes.put (mvle, brush); } return brush; } static HPEN getBitPen (const SColor& clr) { SString mvle = SString ((long)(clr.getValue() & 0x00ffffff)); HPEN hpen = pens.get (mvle); if (hpen == 0) { hpen = CreatePen (PS_SOLID, 0, RGB(clr.red, clr.green, clr.blue)); pens.put (mvle, hpen); } return hpen; } void SW32Window::repaintBackground(int left, int top, int right, int bottom) { /* remove clipping */ void* oclip = clipRegion; clipRegion = 0; bitfill (background, left, top, right - left, bottom - top); clipRegion = oclip; } /** * Fill a solid rectangle * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to fill * @param height is the height of the region to fill */ void SW32Window::bitfill (const SColor& bg, int _x, int _y, unsigned int _width, unsigned int _height) { bool mydc = dcin(); RECT rect; rect.left = _x; rect.top = _y; rect.right = _x + (int) _width; rect.bottom = _y + (int) _height; HBRUSH brush = getSolidBrush (bg); int mode = SetMapMode ((HDC)cdc, MM_TEXT); FillRect ((HDC)cdc, &rect, brush); SetMapMode ((HDC)cdc, mode); dcout (mydc); } /** * Draw a solid line. * @param x is the starting x point * @param y is the starting y point * @param x is the ending non-exclusive x point * @param y is the ending non-exclusive y point */ void SW32Window::bitline (const SColor& fg, int _x, int _y, int _tox, int _toy) { bool mydc = dcin(); HPEN hpen = getBitPen (fg); SelectObject ((HDC)cdc, hpen); MoveToEx ((HDC)cdc, _x, _y, 0); LineTo ((HDC)cdc, _tox, _toy); /* no last point otherwiseon windows */ LineTo ((HDC)cdc, _tox+1, _toy); dcout (mydc); } /** * Draw a solid point. * @param x is the x point * @param y is the y point */ void SW32Window::bitpoint (const SColor& clr, int _x, int _y) { bool mydc = dcin(); COLORREF ref = PALETTERGB (clr.red, clr.green, clr.blue); ::SetPixel ((HDC)cdc, _x, _y, ref); dcout (mydc); } void SW32Window::bitpoints (const SColor& clr, const int* _x, const int* _y, unsigned int _size) { bool mydc = dcin(); COLORREF ref = PALETTERGB (clr.red, clr.green, clr.blue); for (unsigned int i=0; i<_size; i++) { ::SetPixel ((HDC)cdc, _x[i], _y[i], ref); } dcout (mydc); } /** * Afetr this size things wont be cached. */ void SW32Window::setPixmapCacheSize(unsigned int _size) { // fprintf (stderr, "setPixmapCacheSize=%u\n", _size); imageCache.setSize (_size); maskCache.setSize (_size); } /** * turn on/off the cache and clear it */ void SW32Window::setPixmapCacheOn (bool _on) { // Win98 grocks under bitmaps. imageCache.setOn (_on); maskCache.setOn (_on); } /** * This one can return false if it fails. */ void SW32Window::putImage (int _x, int _y, const SImage& im) { bool mydc = dcin(); /* bitmap may be selected in a dc . dont delet now thinking....*/ const SString& ks = (const SString&) im.getID(); char a[10]; const SColor& cf = pen.getForeground(); const SColor& cb = pen.getBackground(); a[0] = 'i'; a[1] = 'm'; a[2] = (char) cf.red; a[3] = (char) cf.green; a[4] = (char) cf.blue; a[5] = (char) cb.red; a[6] = (char) cb.green; a[7] = (char) cb.blue; SString key (a, 8); key.append (ks); /* Bitmap is always added, mask is on-demand */ if (compatibleDC == 0) { compatibleDC = CreateCompatibleDC((HDC)cdc); if (compatibleHBitmap!=0) { DeleteObject (compatibleHBitmap); } compatibleHBitmap = CreateCompatibleBitmap(compatibleDC, 8, 8); } SBitmapItem* maskItem = maskCache.get (key); SBitmapItem* bitmapItem = imageCache.get (key); HBITMAP bitmap; HBITMAP mask; SBitmapItem bitem; SBitmapItem mitem; bitem.width = im.getWidth(); bitem.height = im.getHeight(); mitem.width = im.getWidth(); mitem.height = im.getHeight(); if (maskItem && bitmapItem) { bitmap = bitmapItem->bitmap; mask = maskItem->bitmap; bitem.bitmap = bitmap; mitem.bitmap = mask; bitem.dc = bitmapItem->dc; mitem.dc = maskItem->dc; bitem.x = bitmapItem->x; bitem.y = bitmapItem->y; mitem.x = maskItem->x; mitem.y = maskItem->y; bitem.width = bitmapItem->width; bitem.height = bitmapItem->height; mitem.width = maskItem->width; mitem.height = maskItem->height; } else { bitmap = 0; mask = 0; bitem.x = 0; bitem.y = 0; mitem.x = 0; mitem.y = 0; if (im.getShades() == 0) { createColoredBitmap (pen, im, &bitmap, &mask, (HDC)cdc, compatibleDC); } else { createShadedBitmap (pen, im, &bitmap, &mask, (HDC)cdc, compatibleDC); } /* cache this */ SelectObject (compatibleDC, bitmap); bitem.dc = compatibleDC; bitem.bitmap = bitmap; imageCache.put (key, bitem); /* cache mask */ SelectObject (compatibleDC, mask); mitem.dc = compatibleDC; mitem.bitmap = mask; maskCache.put (key, mitem); } if (mask) { /* if cached, dc is not same, not necessary */ if (mitem.dc == bitem.dc) SelectObject (mitem.dc, mask); BitBlt ((HDC)cdc, _x, _y, mitem.width, mitem.height, mitem.dc, mitem.x, mitem.y, SRCAND); } if (bitmap) { /* if cached, dc is not same, not necessary */ if (mitem.dc == bitem.dc) SelectObject (bitem.dc, bitmap); BitBlt ((HDC)cdc, _x, _y, bitem.width, bitem.height, bitem.dc, bitem.x, bitem.y, SRCPAINT); } /* cache was used */ if (maskItem && bitmapItem) { dcout (mydc); return; } SelectObject (compatibleDC, compatibleHBitmap); if (bitmap) DeleteObject (bitmap); if (mask) DeleteObject (mask); dcout (mydc); return; } /** * Create two bitmaps, one for the image and one for the colored ones. * @param p is the image * @param m is the shape image. it contains 1's where ther is no image. * @param dc is a dc that has the original colored bitmap selcted in it. * @param _dc is a dc we can use - it usually has a 1 depth bitmap in it */ static void createColoredBitmap (const SPen& pen, const SImage& im, HBITMAP* p, HBITMAP* m, HDC odc, HDC _dc) { int imageWidth = (int) im.getWidth(); int imageHeight = (int) im.getHeight(); *p = CreateCompatibleBitmap (odc, imageWidth, imageHeight); if (*p==0) { fprintf (stderr, "can not create colored bitmap width=%u height=%u\n", imageWidth, imageHeight); /* this is win98 - another piece of .... */ return; } SelectObject (_dc, *p); for (int y=0; ynewpath ((int)_x, (int)_y, _id); } else { return engine->newpath ((int)_x, (int)_y, ""); } } /** * FIXME: fill and return the resulting image for better cahcing. */ void SW32Window::fill (const SPen& _pen) { if (pen != _pen) { pen = _pen; } if (engine==0) return; SImage* si= engine->fill (0, 0, getWidth(), getHeight(), pen.getLineWidth()); if (si==0) return; /* offscreen */ /* Use the putimage that does some cacheing. */ if (imageCache.isOn()) { putImage (si->getOrigoX(), si->getOrigoY(), *si); delete si; return; } bool mydc = dcin(); /* * Here comes Gaspar's version of * "Poor man's transparency" It depends on believing that * background of the window in the region is really pen.getBackground() * If it is not true you should get the image yourself. */ if (compatibleDC == 0) { compatibleDC = CreateCompatibleDC((HDC)cdc); if (compatibleHBitmap!=0) { DeleteObject (compatibleHBitmap); } compatibleHBitmap = CreateCompatibleBitmap(compatibleDC, 8, 8); } HBITMAP bitmap; HBITMAP mask; createShadedBitmap (pen, *si, &bitmap, &mask, (HDC)cdc, compatibleDC); if (mask) { SelectObject (compatibleDC, mask); BitBlt ((HDC)cdc, si->getOrigoX(), si->getOrigoY(), si->getWidth(), si->getHeight(), compatibleDC, 0, 0, SRCAND); } if (bitmap) { SelectObject (compatibleDC, bitmap); BitBlt ((HDC)cdc, si->getOrigoX(), si->getOrigoY(), si->getWidth(), si->getHeight(), compatibleDC, 0, 0, SRCPAINT); } /* can not delete a bitmap if it is selected in */ SelectObject (compatibleDC, compatibleHBitmap); if (mask) DeleteObject (mask); if (bitmap) DeleteObject (bitmap); delete si; dcout (mydc); } /** * FIXME: * This method is not implemented */ void SW32Window::stroke (const SPen& _pen) { if (engine ==0) return; if (pen != _pen) { pen = _pen; } SImage *i = engine->stroke(0,0, getWidth(), getHeight(), _pen.getLineWidth()); if (i==0) return; delete i; } /** * Move to a new point * This will clear the path and push 3 element-pairs * one is the bounding low, second is bounding high * third is the new coord. */ void SW32Window::moveto (double x, double y) { if (engine ==0) return; engine->moveto (x, y); } /** * The lowest level function to add a new element */ void SW32Window::lineto (double x, double y) { if (engine ==0) return; engine->lineto (x, y); } /** * Draw a cubic beizer curve */ void SW32Window::curveto (double _x0, double _y0, double _x1, double _y1, double _x2, double _y2) { if (engine ==0) return; engine->curveto (_x0, _y0, _x1, _y1, _x2, _y2); } void SW32Window::closepath() { if (engine ==0) return; engine->closepath(); } /** * TODO: not implemented */ void SW32Window::rotate (double angle) { if (engine ==0) engine = new SGEngine(); engine->rotate (angle); } void SW32Window::scale (double x, double y) { if (engine ==0) engine = new SGEngine(); engine->scale (x, y); } void SW32Window::translate (double x, double y) { if (engine ==0) engine = new SGEngine(); engine->translate (x, y); } void SW32Window::pushmatrix() { if (engine ==0) engine = new SGEngine(); engine->pushmatrix(); } void SW32Window::popmatrix() { if (engine ==0) engine = new SGEngine(); engine->popmatrix(); } /** * Clear a region (set it to the background) * This should work with a clipped region. * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to clear * @param height is the height of the region to clear */ void SW32Window::clear (int _x, int _y, unsigned int _width, unsigned int _height) { bitfill (background, _x, _y, _width, _height); } /** * Copy an area on the window to another area. * overlap is ok. * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to copy * @param height is the height of the region to copy * @param tox is the destination left corner * @param toy is the destination top corner */ void SW32Window::copy (int _x, int _y, unsigned int _width, unsigned int _height, int _tox, int _toy) { //XCopyArea (impl->display, (Window) id, (Window) id, // gc, x, y, width, height, tox, toy); bool mydc = dcin(); BitBlt ((HDC)cdc, _tox, _toy, _width, _height, (HDC)cdc, _x, _y, SRCCOPY); handler->moveRedrawEvent (id, _tox-_x, _toy-_y); dcout (mydc); } /** * Assign a rectangualr clip area. Everithing outside this area will be clipped. */ void SW32Window::setClippingArea (int _x, int _y, unsigned int _width, unsigned int _height) { if (clipRegion != 0) { DeleteObject ((HRGN) clipRegion); } HRGN rgn = CreateRectRgn (_x, _y, _x + (int) _width, _y + (int) _height); clipRegion = rgn; if (cdc) SelectClipRgn ((HDC)cdc, rgn); } /** * clear the clipping area. */ void SW32Window::removeClippingArea () { if (!clipRegion) { if (cdc) { SelectClipRgn ((HDC)cdc, 0); } return; } DeleteObject ((HRGN) clipRegion); clipRegion = 0; if (cdc) { SelectClipRgn ((HDC)cdc, 0); } } static int dcins = 0; /** * Gointo a dc. return true if it is a borrowed resource . * this should be passed to dcout when exiting dc */ bool SW32Window::dcin() { if (dcins >0) { fprintf (stderr, "SW32Window::dcin error %d\n", dcins); } dcins++; if (dbuffer) { cdc = ((SDoubleBuffer*)dbuffer)->bitmapHDC; SelectClipRgn ((HDC)cdc, (HRGN) clipRegion); return false; } if (cdc != 0) { SelectClipRgn ((HDC)cdc, (HRGN) clipRegion); return false; } cdc = GetDC((HWND)id); if (cdc == 0) fprintf (stderr, "DC==NULL\n"); SelectClipRgn ((HDC)cdc, (HRGN) clipRegion); return true; } void SW32Window::dcout(bool wasin) { if (dcins ==0) { fprintf (stderr, "SW32Window::dcout error %d\n", dcins); return; } else { dcins--; } SelectClipRgn ((HDC)cdc, 0); if (wasin && dbuffer == 0) { ReleaseDC ((HWND)id, (HDC)cdc); cdc = 0; } } /** */ void SW32Window::wait () { handler->doWin32Loop(); /* we lost the job - we are in the job callback */ SEventHandler::addJob(handler->job, handler); while (shown && SEventHandler::next()); SEventHandler::remove(handler->job); } static int buttonLastX[3]; static int buttonLastY[3]; long lastMouseWindow = 0; /** * Generate a mouse enter and mouse leave event from what we have - * the current window where the mouse is... */ static void buttonEnter (long hwnd) { if (lastMouseWindow == hwnd) return; SW32Window* w=0; SWindowListener* l=0; if (lastMouseWindow) { w = windowHashtable.get (lastMouseWindow); l = listenerHashtable.get (lastMouseWindow); if (w != 0 && l!=0) l->leaveWindow (w); } lastMouseWindow = hwnd; if (lastMouseWindow) { w = windowHashtable.get (lastMouseWindow); l = listenerHashtable.get (lastMouseWindow); if (w != 0 && l!=0) l->enterWindow (w); } } /** * Work on buttonFlags buttons and do * the actual delivery of events on actual windows. */ static void buttonPressed (long hwnd, int button, int x, int y) { buttonEnter (hwnd); if (buttonFlags[button]) return; if (buttonFlags[0] ==0 && buttonFlags[1] == 0 && buttonFlags[2] == 0) { SetCapture ((HWND)hwnd); } buttonFlags[button] = hwnd; buttonLastX[button] = x; buttonLastY[button] = y; SW32Window* w = windowHashtable.get ((long)hwnd); SWindowListener* l = listenerHashtable.get ((long)hwnd); if (w == 0 || l==0) return; l->buttonPressed (w, button, x, y); } static void buttonDragged (long nwnd, int button, int x, int y) { buttonEnter (nwnd); if (buttonFlags[button] != nwnd) return; buttonLastX[button] = x; buttonLastY[button] = y; long hwnd = buttonFlags[button]; SW32Window* w = windowHashtable.get ((long)hwnd); SWindowListener* l = listenerHashtable.get ((long)hwnd); if (w == 0 || l==0) return; l->buttonDragged (w, button, x, y); } static void buttonReleased (long nwnd, int button, int x, int y) { buttonEnter (nwnd); if (!buttonFlags[button]) return; bool samebutton = (nwnd == buttonFlags[button]); buttonLastX[button] = x; buttonLastY[button] = y; long hwnd = buttonFlags[button]; SW32Window* w = windowHashtable.get (buttonFlags[button]); SWindowListener* l = listenerHashtable.get (buttonFlags[button]); buttonFlags[button] = 0; if (buttonFlags[0] ==0 && buttonFlags[1] == 0 && buttonFlags[2] == 0) { ReleaseCapture (); } if (w != 0 && l!=0) { l->buttonReleased (w, button, x, y); } #if 0 if (samebutton) return; /* this poor guy was at the mercy of this screwy windows */ w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w != 0 && l!=0) { l->buttonReleased (w, button, x, y); } #endif } static void lostCapture (long wid) { for (unsigned int i=0; i<3; i++) { if (buttonFlags[i] == 0) continue; if (wid == buttonFlags[i]) continue; SW32Window* w = windowHashtable.get (buttonFlags[i]); SWindowListener* l = listenerHashtable.get (buttonFlags[i]); int x = buttonLastX[i]; int y = buttonLastY[i]; if (w == 0 || l==0) continue; l->buttonReleased (w, i, x, y); buttonFlags[i] = 0; } buttonEnter (wid); } SString SW32Window::getClipUTF8() { SString cld; bool ucs = true; bool utf8 = true; notifyClip (); SW32Window* w = windowHashtable.get (clipboardOwner); if (w != 0) /* local guy */ { SEncoder utf8enc ("utf-8-s"); SString out = utf8enc.encode (clipData); return SString (out); } if (OpenClipboard (0)) { HANDLE h = GetClipboardData (UTF8_STRING); if (!h) { utf8 = false; h = GetClipboardData (CF_UNICODETEXT); if (!h) { h = GetClipboardData (CF_TEXT); ucs = false; } } if (h) { char* str = (char*) GlobalLock (h); if (str) { unsigned int lsize = GlobalSize (h); cld = SString (str, lsize); GlobalUnlock (h); /* we need to terminate ucs2 if 0 is seen */ if (ucs) { for (unsigned int i=0; i+1encoder.clear(); SEncoder ucsenc("utf-16-le"); SV_UCS4 ucstext = (ucs) ? ucsenc.decode (cld) : impl->encoder.decode (cld); /* stupid windows does not know how to copy u+0000 - this * is the terminating character. */ for (unsigned int i=0; ilostClipSelection (w); } clipboardOwner = (long) owner; } } void SW32Window::setModal (SWindow* _parent, bool decorated) { modalID = ((SW32Window*)_parent)->getID(); SetWindowLong ((HWND)id, GWL_STYLE, SS_YUDIT_DIALOG_STYLE); //WS_POPUPWINDOW | WS_CAPTION); } /** * put this window in the middle */ void SW32Window::center (SWindow* _window) { HWND root = GetDesktopWindow(); // dont trust these guys if (!root) return; HWND me = root; if (_window!=0) { me = (HWND) ((SW32Window*)_window)->getID(); } RECT myrect; if (!GetWindowRect(me, &myrect)) { fprintf (stderr, "ERROR: can not get my window rect\n"); return; } RECT rootrect; if (!GetWindowRect(root, &rootrect)) { fprintf (stderr, "ERROR: can nto get root window rect\n"); return; } /* center point */ int lx = (myrect.left + myrect.right)/2; int ly = (myrect.top + myrect.bottom)/2; int mx = lx - (int) getWidth()/2; int my = ly - (int) getHeight()/2; int rootWidth = rootrect.right - rootrect.left; int rootHeight = rootrect.bottom - rootrect.top; if (rootWidth < (int) getWidth() + mx + 20) { mx = rootWidth - (int)getWidth() - 20; } if (rootHeight < (int) getHeight() + my + 20) { my = rootHeight - (int)getHeight() - 20; } if (mx<0) mx = 0; if (my<0) my = 0; move (mx, my); } void SW32Window::getKeyboardFocus () { SW32Window* top = getToplevelWindow (this); top->currentFocusWindow = getID(); if (top->currentFocusWindow == currentFocusWindow) { return; } SetFocus ((HWND)getID()); } static SW32Window* getToplevelWindow (SW32Window* w) { SW32Window * wn = w; while (wn->parentID) { SW32Window* swid = (SW32Window*) windowHashtable.get(wn->parentID); if (swid == 0) break; /* never happens */ wn = swid; } return wn; } static SW32Window* getToplevelWindow (long id) { SW32Window* wn = (SW32Window*) windowHashtable.get(wn->parentID); if (wn == 0) return 0; while (wn->parentID) { SW32Window* swid = (SW32Window*) windowHashtable.get(wn->parentID); if (swid == 0) break; /* never happens */ wn = swid; } return wn; } void SW32Window::setMinimumSize (unsigned int _width, unsigned int _height) { minimumSizesX.put (id, _width); minimumSizesY.put (id, _height); } static void sendKeyChar (KeyData* kd, const SString& _s) { SString s = _s; if (s.size() == 0) return; unsigned char c0 = (unsigned char) s[0]; /* TABS and controls are handled in processKey */ if (s.size() == 1 && c0 < 0x20) { return; } /* * Deal with only 'pressed' keys. If focus changes while repeat, * it may cause this. */ if (kd->key == SWindowListener::Key_Undefined) { return; } bool ctrl = kd->ctrl0 || kd->ctrl1; bool shift = kd->shift0 || kd->shift1; bool meta = kd->meta0 || kd->meta1; if (!sendAcceleratorPressed ((int) kd->key, ctrl, shift, meta)) { SW32Window* wn = windowHashtable.get (currentFocusWindow); SWindowListener* ln = listenerHashtable.get (currentFocusWindow); if (wn == 0 || ln == 0) return; ln->keyPressed (wn, kd->key, s, ctrl, shift, meta); } } /** * Send release key event to those unfortunatelly windows that * lost keyboard focus as windows does not sent it :( */ static void sendKeyReleased (KeyData* kd, SW32Window* wn, SWindowListener* ln) { if (sendAcceleratorReleased ()) { kd->ctrl0 = false; kd->ctrl1 = false; kd->shift0 = false; kd->shift1 = false; kd->meta0 = false; kd->meta1 = false; kd->key = SWindowListener::Key_Undefined; return; } SString s; bool ctrl = kd->ctrl0 || kd->ctrl1; bool shift = kd->shift0 || kd->shift1; bool meta = kd->meta0 || kd->meta1; if (kd->ctrl0) { ln->keyReleased (wn, SWindowListener::Key_Control_L, s, ctrl, shift, meta); } if (kd->ctrl1) { ln->keyReleased (wn, SWindowListener::Key_Control_R, s, ctrl, shift, meta); } kd->ctrl0 = false; kd->ctrl1 = false; ctrl = false; if (kd->shift0) { ln->keyReleased (wn, SWindowListener::Key_Shift_L, s, ctrl, shift, meta); } if (kd->shift1) { ln->keyReleased (wn, SWindowListener::Key_Shift_R, s, ctrl, shift, meta); } kd->shift0 = false; kd->shift1 = false; shift = false; if (kd->meta0) { ln->keyReleased (wn, SWindowListener::Key_Meta_L, s, ctrl, shift, meta); } if (kd->meta1) { ln->keyReleased (wn, SWindowListener::Key_Meta_R, s, ctrl, shift, meta); } kd->meta0 = false; kd->meta1 = false; meta = false; kd->key = SWindowListener::Key_Undefined; } /** * Process a key message. Generate event if necessary. * @param kd is a state holder. * @param syskey is true is this is a system key (what does this * stupid thing mean - I will never know) * @param keycod is the VK_KEYCODE * @param isdown is true if the key was pressed. */ static void processKey (KeyData* kdin, bool syskey, int keycod, bool isdown) { KeyData kd = { SWindowListener::Key_Undefined, false, false, false, false, false, false }; if (isdown) { kd.shift0 = kdin->shift0; kd.shift1 = kdin->shift1; kd.meta0 = kdin->meta0; kd.meta1 = kdin->meta1; kd.ctrl0 = kdin->ctrl0; kd.ctrl0 = kdin->ctrl0; } else { kd.shift0 = ! kdin->shift0; kd.shift1 = ! kdin->shift1; kd.meta0 = ! kdin->meta0; kd.meta1 = ! kdin->meta1; kd.ctrl0 = ! kdin->ctrl0; kd.ctrl0 = ! kdin->ctrl0; } // VK_SHIFT // VK_CONTROL // VK_MENU bool ckey=false; /* translate keycode first */ switch (keycod) { case VK_CONTROL: kd.ctrl0 = true; kd.key = SWindowListener::Key_Control_L; break; case VK_LCONTROL: kd.ctrl0 = true; kd.key = SWindowListener::Key_Control_L; break; case VK_RCONTROL: kd.ctrl1 = true; kd.key = SWindowListener::Key_Control_R; break; case VK_SHIFT: kd.shift0 = true; kd.key = SWindowListener::Key_Shift_R; break; case VK_LSHIFT: kd.key = SWindowListener::Key_Shift_L; kd.shift0 = true; break; case VK_RSHIFT: kd.key = SWindowListener::Key_Shift_R; kd.shift1 = true; break; case VK_MENU: kd.key = SWindowListener::Key_Alt_L; kd.meta0 = true; break; case VK_LMENU: kd.key = SWindowListener::Key_Alt_L; kd.meta0 = true; break; case VK_RMENU: kd.key = SWindowListener::Key_Alt_R; kd.meta1 = true; break; //VK_LWIN: kd.key = SWindowListener::Key_Meta_L; kd.meta0 = true; break; //VK_RWIN: kd.key = SWindowListener::Key_Meta_R; kd.meta1 = true; break; //VK_LBUTTON //VK_RBUTTON case VK_TAB: kd.key = SWindowListener::Key_Tab; break; case VK_RETURN: kd.key = SWindowListener::Key_Return; break; case VK_ESCAPE: kd.key = SWindowListener::Key_Escape; break; case VK_CLEAR: kd.key = SWindowListener::Key_Clear; break; case VK_SPACE: kd.key = SWindowListener::Key_Space; break; case VK_PRIOR: kd.key = SWindowListener::Key_Prior; break; case VK_NEXT: kd.key = SWindowListener::Key_Next; break; case VK_END: kd.key = SWindowListener::Key_End; break; case VK_HOME: kd.key = SWindowListener::Key_Home; break; case VK_LEFT: kd.key = SWindowListener::Key_Left; break; case VK_UP: kd.key = SWindowListener::Key_Up; break; case VK_RIGHT: kd.key = SWindowListener::Key_Right; break; case VK_DOWN: kd.key = SWindowListener::Key_Down; break; case VK_DELETE: kd.key = SWindowListener::Key_Delete; break; case VK_BACK: kd.key = SWindowListener::Key_BackSpace; break; case VK_F1: kd.key = SWindowListener::Key_F1; break; case VK_F2: kd.key = SWindowListener::Key_F2; break; case VK_F3: kd.key = SWindowListener::Key_F3; break; case VK_F4: kd.key = SWindowListener::Key_F4; break; case VK_F5: kd.key = SWindowListener::Key_F5; break; case VK_F6: kd.key = SWindowListener::Key_F6; break; case VK_F7: kd.key = SWindowListener::Key_F7; break; case VK_F8: kd.key = SWindowListener::Key_F8; break; case VK_F9: kd.key = SWindowListener::Key_F9; break; case VK_F10: kd.key = SWindowListener::Key_F10; break; case VK_F11: kd.key = SWindowListener::Key_F11; break; case VK_F12: kd.key = SWindowListener::Key_F12; break; /* VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39) */ /* VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A) */ case 'A': kd.key = SWindowListener::Key_A; ckey=true; break; case 'B': kd.key = SWindowListener::Key_B; ckey=true; break; case 'C': kd.key = SWindowListener::Key_C; ckey=true; break; case 'D': kd.key = SWindowListener::Key_D; ckey=true; break; case 'E': kd.key = SWindowListener::Key_E; ckey=true; break; case 'F': kd.key = SWindowListener::Key_F; ckey=true; break; case 'G': kd.key = SWindowListener::Key_G; ckey=true; break; case 'H': kd.key = SWindowListener::Key_H; ckey=true; break; case 'I': kd.key = SWindowListener::Key_I; ckey=true; break; case 'J': kd.key = SWindowListener::Key_J; ckey=true; break; case 'K': kd.key = SWindowListener::Key_K; ckey=true; break; case 'L': kd.key = SWindowListener::Key_L; ckey=true; break; case 'M': kd.key = SWindowListener::Key_M; ckey=true; break; case 'N': kd.key = SWindowListener::Key_N; ckey=true; break; case 'O': kd.key = SWindowListener::Key_O; ckey=true; break; case 'P': kd.key = SWindowListener::Key_P; ckey=true; break; case 'Q': kd.key = SWindowListener::Key_Q; ckey=true; break; case 'R': kd.key = SWindowListener::Key_R; ckey=true; break; case 'S': kd.key = SWindowListener::Key_S; ckey=true; break; case 'T': kd.key = SWindowListener::Key_T; ckey=true; break; case 'U': kd.key = SWindowListener::Key_U; ckey=true; break; case 'X': kd.key = SWindowListener::Key_X; ckey=true; break; case 'Y': kd.key = SWindowListener::Key_Y; ckey=true; break; case 'V': kd.key = SWindowListener::Key_V; ckey=true; break; case 'W': kd.key = SWindowListener::Key_W; ckey=true; break; case 'Z': kd.key = SWindowListener::Key_Z; ckey=true; break; default: kd.key = SWindowListener::Key_Send; ckey=true; break; } kdin-> key = kd.key; if (isdown) { kdin->shift0 = kd.shift0; kdin->shift1 = kd.shift1; kdin->meta0 = kd.meta0; kdin->meta1 = kd.meta1; kdin->ctrl0 = kd.ctrl0; kdin->ctrl0 = kd.ctrl0; } else { kdin->shift0 = ! kd.shift0; kdin->shift1 = ! kd.shift1; kdin->meta0 = ! kd.meta0; kdin->meta1 = ! kd.meta1; kdin->ctrl0 = ! kd.ctrl0; kdin->ctrl0 = ! kd.ctrl0; } /* */ bool ctrl = kdin->ctrl0 || kdin->ctrl1; bool shift = kdin->shift0 || kdin->shift1; bool meta = kdin->meta0 || kdin->meta1; SW32Window* wn = windowHashtable.get (currentFocusWindow); SWindowListener* ln = listenerHashtable.get (currentFocusWindow); if (wn != 0 || ln != 0) { SString s; /* WM_IME_COMPOSITION does not give us TAB */ if (keycod == VK_TAB && isdown) { s.append ("\t"); } if (isdown) { if (!sendAcceleratorPressed ((int) kdin->key, ctrl, shift, meta)) { ln->keyPressed (wn, kdin->key, s, ctrl, shift, meta); } } else { if (!sendAcceleratorReleased ()) { ln->keyReleased (wn, kdin->key, s, ctrl, shift, meta); } } } } SAccelerator currentAccelerator; bool accelPressed = false; /** * add and remove keyboard accelerator */ void SW32Window::addAccelerator (const SAccelerator& a, SAcceleratorListener* l) { SW32Window* top = getToplevelWindow (this); top->accelerators.put (a.toString(), l); top->acceleratorTable.put (a.toString(), id); } void SW32Window::removeAccelerator (const SAccelerator& a, SAcceleratorListener* l) { SW32Window* top = getToplevelWindow (this); top->accelerators.remove (a.toString()); top->acceleratorTable.remove (a.toString()); } static bool sendAcceleratorPressed (int key, bool ctrl, bool shift, bool meta) { if (currentTopFocusWindow==0) return true; if (accelPressed) return true; SW32Window* top = windowHashtable.get (currentTopFocusWindow); if (top ==0) return true; currentAccelerator = SAccelerator (key, ctrl, shift, meta); long id = top->acceleratorTable.get (currentAccelerator.toString()); if (id ==0) { return false; } SAcceleratorListener* l = top->accelerators.get ( currentAccelerator.toString()); if (l ==0) { return false; } accelPressed = true; l->acceleratorPressed (currentAccelerator); return true; } static bool sendAcceleratorReleased () { if (currentTopFocusWindow==0) return false; if (!accelPressed) return false; SW32Window* top = windowHashtable.get (currentTopFocusWindow); if (top ==0) { accelPressed = false; return true; } long id = top->acceleratorTable.get (currentAccelerator.toString()); SAcceleratorListener* l = top->accelerators.get ( currentAccelerator.toString()); if (l==0 || id ==0) { accelPressed = false; return true; } accelPressed = false; l->acceleratorReleased (currentAccelerator); return true; } /** * Start a native input method. * @param name is the name of the input method: * like "kinput2" * @param properties provide some attributes to the input method. */ bool SW32Window::startInputMethod (const SString& name, const SProperties& prop) { if (name == "x-none" || name == "x-ascii" || name == "x-utf-8") { if (imname == name) return true; stopInputMethod(); imname = name; return true; } HIMC himc = ImmGetContext((HWND)id); if (!himc) return false; /* ImmSetOpenStatus */ /* stop previous one */ if (imname.size()) { ImmSetOpenStatus (himc, false); } getKeyboardFocus(); ImmSetOpenStatus (himc, true); setInputMethodProperties (prop); imname = name; return true; } void SW32Window::stopInputMethod () { HIMC himc = ImmGetContext((HWND)id); if (!himc) return; /* stop previous one */ if (imname.size()) { ImmSetOpenStatus (himc, false); } imname = ""; } /** * Change properties of the input method on the fly. * @param prop contains properties like: * InputStyle: root over-the-spot off-the-spot */ void SW32Window::setInputMethodProperties (const SProperties& properties) { if (!isVisible()) return; HIMC himc = ImmGetContext((HWND)id); if (!himc) return; if (properties.get ("InputStyle")==0) { fprintf (stderr, "InputStyle is not present in properties.\n"); return; } SString s = properties["InputStyle"]; /* ok. now I can tell you windows can not set InputStyle sorry */ if (properties.get ("LineSpacing")) { SString lsp = properties["LineSpacing"]; lsp.append ((char)0); int spacing; sscanf (lsp.array(), "%d", &spacing); } /* What to do with this? */ if (properties.get ("InputClientColor")) { SString col = properties["InputClientColor"]; col.append ((char)0); unsigned long bg, fg; sscanf (col.array(), "%lu,%lu", &bg, &fg); SColor xbg = SColor((SS_WORD32)bg); SColor xfg = SColor((SS_WORD32)fg); } /* XXX: no idea how to do this... */ if (s == "preedit-over-status-under" && properties.get ("InputSpot") && properties.get ("InputStatusLocation") && properties.get ("InputStatusSize") ) { SString spotLocation = properties["InputSpot"]; spotLocation.append ((char)0); int _x, _y; sscanf (spotLocation.array(), "%d,%d", &_x, &_y); COMPOSITIONFORM form; form.dwStyle = CFS_POINT; form.ptCurrentPos.x = _x; form.ptCurrentPos.y = _y; form.rcArea.left = 0; form.rcArea.top = 0; form.rcArea.right = (int) getWidth(); form.rcArea.bottom = (int) getHeight(); ImmSetCompositionWindow (himc, &form); SString sl = properties["InputStatusLocation"]; sl.append ((char)0); int statusX, statusY; sscanf (sl.array(), "%d,%d", &statusX, &statusY); SString ss = properties["InputStatusSize"]; ss.append ((char)0); int statusWidth, statusHeight; sscanf (ss.array(), "%d,%d", &statusWidth, &statusHeight); POINT point; point.x = statusX; point.y = statusY; ImmSetStatusWindowPos(himc, &point); } else if (s == "preedit-under-status-under" && properties.get ("InputSpot") && properties.get ("InputStatusLocation") && properties.get ("InputStatusSize") && properties.get ("InputClientLocation") && properties.get ("InputClientSize") ) { SString spotLocation = properties["InputSpot"]; spotLocation.append ((char)0); int _x, _y; sscanf (spotLocation.array(), "%d,%d", &_x, &_y); SString sl = properties["InputStatusLocation"]; sl.append ((char)0); int statusX, statusY; sscanf (sl.array(), "%d,%d", &statusX, &statusY); SString ss = properties["InputStatusSize"]; ss.append ((char)0); int statusWidth, statusHeight; sscanf (ss.array(), "%d,%d", &statusWidth, &statusHeight); SString cl = properties["InputClientLocation"]; cl.append ((char)0); int clientX, clientY; sscanf (cl.array(), "%d,%d", &clientX, &clientY); SString cs = properties["InputClientSize"]; cs.append ((char)0); int clientWidth, clientHeight; sscanf (cs.array(), "%d,%d", &clientWidth, &clientHeight); POINT point; point.x = statusX; point.y = statusY; ImmSetStatusWindowPos(himc, &point); COMPOSITIONFORM form; form.dwStyle = CFS_RECT; form.ptCurrentPos.x = clientX; // starting from. form.ptCurrentPos.y = clientY; form.rcArea.left = clientX; // next line form.rcArea.top = clientY; form.rcArea.right = clientX + clientWidth; form.rcArea.bottom = clientY + clientHeight; ImmSetCompositionWindow (himc, &form); } else if (s == "preedit-root-status-root") { COMPOSITIONFORM form; form.dwStyle = CFS_DEFAULT; form.ptCurrentPos.x = (int) getWidth(); form.ptCurrentPos.y = (int) getHeight(); form.rcArea.left = 0; form.rcArea.top = 0; form.rcArea.right = (int) getWidth(); form.rcArea.bottom = (int) getHeight(); ImmSetCompositionWindow (himc, &form); } /* All the input styles */ else if (s == "preedit-over-status-over" && properties.get ("InputSpot")) { SString spotLocation = properties["InputSpot"]; spotLocation.append ((char)0); int _x, _y; sscanf (spotLocation.array(), "%d,%d", &_x, &_y); COMPOSITIONFORM form; form.dwStyle = CFS_POINT; form.ptCurrentPos.x = _x; form.ptCurrentPos.y = _y; form.rcArea.left = 0; form.rcArea.top = 0; form.rcArea.right = (int) getWidth(); form.rcArea.bottom = (int) getHeight(); ImmSetCompositionWindow (himc, &form); } } /** * Get the current input method. * it returns a zero sized string if input method is not started. */ SString SW32Window::getInputMethod () { return SString(imname); } unsigned long SW32Window::getWindowID() const { return (unsigned long) id; } // FIXME void SW32Window::setDoubleBuffer (bool isOn) { dbufferOn = isOn; } bool SW32Window::isDoubleBufferEnabled () const { return dbufferOn; } ./swindow/swin32/SWin32.cpp0000644000175000017500000025334411334166411015420 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define SS_YUDIT_DIALOG_STYLE \ (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_CLIPCHILDREN) #define SS_YUDIT_TOPLEVEL_STYLE \ (WS_OVERLAPPEDWINDOW | WS_CLIPCHILDREN) #define SS_YUDIT_CHILD_STYLE \ (WS_CHILD | WS_CLIPCHILDREN) /* * You might want to comment this out to build on Wndows CE * Having it makes it more responsive, event based. * it needs ws2_32.lib */ #include "stoolkit/SExcept.h" #include "stoolkit/SEvent.h" #include "stoolkit/SString.h" #include "stoolkit/SUtil.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SBinHashtable.h" #include "swindow/SAwt.h" #include "swindow/SGEngine.h" #include "swindow/swin32/SWin32.h" #include "swindow/SRedrawEvent.h" #include #include #include #define WIN32_LEAN_AND_MEAN #include #include #undef WIN32_LEAN_AND_MEAN #include #ifdef USE_WINAPI /* SEventBSD hookup hack */ int main(int argc, char* argv[]); #endif extern int (*_windowsSelectHookup)(int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t); static int winSelectHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t); static int winWineHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t); class SDoubleBuffer { public: SDoubleBuffer (HWND _id, HDC _gotDC, const SColor& background, int _x, int _y, unsigned int _w, unsigned int _h); void copyToScreen (HWND _id, HDC _gotDC); ~SDoubleBuffer (); HDC bitmapHDC; HBITMAP bitmap; int x; int y; unsigned int width; unsigned int height; }; /** * Clipboard Stuff. */ static UINT UTF8_STRING = 0; SV_UCS4 clipData; typedef struct _KeyData { SWindowListener::SKey key; bool ctrl0; bool ctrl1; bool meta0; bool meta1; bool shift0; bool shift1; } KeyData; static int putClipText(); static int putClipUnicodeText(); static int putClipUtf8Text(); static void notifyClip (); static void processKey (KeyData* kd, bool syskey, int keycod, bool isdown); static void sendKeyReleased (KeyData* kd, SW32Window* wn, SWindowListener* ln); static void sendKeyChar (KeyData* kd, const SString& s); static bool sendAcceleratorPressed (int key, bool ctrl, bool shift, bool meta); static bool sendAcceleratorReleased (); /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ static bool needClear = false; SBinHashtable brushes; SBinHashtable pens; SBinHashtable minimumSizesX; SBinHashtable minimumSizesY; static HPEN getBitPen (const SColor& clr); static HBRUSH getSolidBrush (const SColor& clr); static long currentTopFocusWindow=0; static long currentFocusWindow=0; /* There is only one context */ HINSTANCE instance; HINSTANCE pinstance; LPSTR cmdLine; int cmdShow; HANDLE accel; /* alway reset it on colormap change */ static HDC compatibleDC = 0; static HBITMAP compatibleHBitmap = 0; static bool winOK = false; typedef SBinHashtable SWindowHashtable; typedef SBinHashtable SListenerHashtable; static SWindowHashtable windowHashtable; static SListenerHashtable listenerHashtable; static void createShadedBitmap (const SPen& pen, const SImage& im, HBITMAP* p, HBITMAP* m, HDC odc, HDC dc); static void createColoredBitmap (const SPen& pen, const SImage& im, HBITMAP* p, HBITMAP* m, HDC odc, HDC dc); static long clipboardOwner=0; char* windowName = "Yudit"; typedef SHashtable SRedrawEventTable; int shownWindows = 0; long buttonFlags[3]; static SW32Window* getToplevelWindow (SW32Window* w); static SW32Window* getToplevelWindow (long id); /*-------------------------------------------------------------------------- * You would not need this if win98 could create more than 500 bitmaps. * START *-------------------------------------------------------------------------*/ SDoubleBuffer::SDoubleBuffer (HWND _id, HDC _gotDC, const SColor& background, int _x, int _y, unsigned int _w, unsigned int _h) { HDC winDC = (_gotDC == 0) ? GetDC(_id) : _gotDC; bitmapHDC = CreateCompatibleDC (winDC); // fprintf (stderr, "bitmapHDC=%u\n", (unsigned int) bitmapHDC); x = _x; y = _y; width = _w; height = _h; if (width == 0) width = 1; if (height == 0) height = 1; // can't use bitmapHDC, don't ask me why bitmap = CreateCompatibleBitmap(winDC, x+width, y+height); SelectObject(bitmapHDC, bitmap); if (_gotDC == 0) ReleaseDC (_id, winDC); if (bitmap == 0) { fprintf (stderr, "Bitmap is null...\n"); } // Clear the bitmap with background RECT rect; rect.left = x; rect.top = y; rect.right = x + (int) width; rect.bottom = y + (int) height; HBRUSH brush = getSolidBrush (background); int mode = SetMapMode (bitmapHDC, MM_TEXT); FillRect (bitmapHDC, &rect, brush); SetMapMode (bitmapHDC, mode); // brush is cached, dont delete it } void SDoubleBuffer::copyToScreen (HWND _id, HDC _gotDC) { HDC winDC = (_gotDC == 0) ? GetDC(_id) : _gotDC; // SelectClipRgn ((HDC)bitmapHDC, (HRGN) 0); // SelectClipRgn (winDC, (HRGN) 0); BitBlt (winDC, x, y, width, height, bitmapHDC, x, y, SRCCOPY); if (_gotDC == 0) ReleaseDC (_id, winDC); } SDoubleBuffer::~SDoubleBuffer () { DeleteDC (bitmapHDC); DeleteObject (bitmap); } class SBitmapItem { public: HBITMAP bitmap; HDC dc; int x; int y; int width; int height; }; class SBitmapArea { public: SBitmapArea (unsigned int _xy) { xy = _xy; bitmap = 0; cursor = 0; size = 0; ison = false; dc = 0; } void clear () { /* delete dc first. always bitmap might be selected...*/ if (dc) DeleteDC (dc); if (bitmap) DeleteObject (bitmap); dc = 0; bitmap = 0; cursor = 0; } void setOn (bool _ison) { clear(); ison = _ison; } void setSize (int _size) { clear(); unsigned long l = ss_sqrtlong ((unsigned long) _size); size = (int) (l); /* limit size 4 Megs */ if (xy > 2 && size * xy > 2000) size = 2000/xy; } int put (const SString& key, SBitmapItem* item, SString* old); private: bool ison; int xy; int size; int cursor; HBITMAP bitmap; HDC dc; SStringVector keys; }; /** * Put a new item in cache. * @return -1 if old data was replaced * 0 if it was not successful * positive if it suceesed. * it also sets origox, origoy */ int SBitmapArea::put (const SString& key, SBitmapItem* item, SString* old) { /* cerate compatible bitmap */ if (!ison) return 0; if (!item->dc) return 0; if (!item->bitmap) return 0; if (bitmap == 0) { if (size<2) return 0; bitmap = CreateCompatibleBitmap (item->dc, size*xy, size*xy); if (bitmap == 0) { fprintf (stderr, "could not create bitmap dime=%dx%d size=%d\n", size * xy, size * xy, xy); return 0; } dc = CreateCompatibleDC(item->dc); if (dc == 0) { fprintf (stderr, "could not create dc\n"); return 0; } SelectObject (dc, bitmap); cursor = 0; keys.clear(); } if (dc == 0) { return 0; } if (cursor >= size * size) { cursor = 0; } int ret = 1; if (keys.size() > cursor) { ret = -1; old->append (keys[cursor]); keys.replace (cursor, key); } else { keys.append (key); } SelectObject (item->dc, item->bitmap); int ypos = xy * (cursor/size); int xpos = xy * (cursor%size); BitBlt (dc, xpos, ypos, item->width, item->height, item->dc, 0, 0, SRCCOPY); item->bitmap = bitmap; item->dc = dc; item->x = xpos; item->y = ypos; cursor++; return ret; } typedef SBinHashtable SBitmapHash; /** * This object re-uses a big bitmap area. */ class SBitmapCache { public: SBitmapCache (void); SBitmapItem* get (const SString& key) { SBitmapItem* it = (SBitmapItem*) cache.get (key); return it; } void put (const SString& key, const SBitmapItem& item); void setOn (bool ison) { area16.setOn (ison); area32.setOn (ison); area64.setOn (ison); area128.setOn (ison); iscaching = true; clear(); } bool isOn () { return iscaching; } void clear(); void setSize (int size) { area16.setSize (size); area32.setSize (size); area64.setSize (size); area128.setSize (size); clear(); } private: bool iscaching; SBitmapHash cache; SBitmapArea area16; SBitmapArea area32; SBitmapArea area64; SBitmapArea area128; }; void SBitmapCache::clear() { area16.clear (); area32.clear (); area64.clear (); area128.clear (); for (unsigned int i=0; i 128 || _item.width > 128) { return; } SBitmapItem * item = new SBitmapItem(); item->bitmap = _item.bitmap; item->dc = _item.dc; item->width = _item.width; item->height = _item.height; int ret = 0; SString old; if (item->height > 64 || item->width > 64) { ret = area128.put (key, item, &old); } else if (item->height > 32 || item->width > 32) { ret = area64.put (key, item, &old); } else if (item->height > 16 || item->width > 16) { ret = area32.put (key, item, &old); } else { ret = area16.put (key, item, &old); } /* replaced */ if (ret < 0) { SBitmapItem* bold = cache.get (old); if (bold) { cache.remove (old); delete bold; } } /* can not use it */ if (ret == 0) { delete item; return; } /* dont delete item - reused */ cache.put (key, item); return; } SBitmapCache imageCache; SBitmapCache maskCache; /*-------------------------------------------------------------------------- * You would not need this if win98 could create more than 500 bitmaps. * END *-------------------------------------------------------------------------*/ class SWHandler : public SEventTarget { public: SWHandler(unsigned int msec, bool iswine); ~SWHandler(); virtual bool done(const SEventSource* s); virtual bool timeout(const SEventSource* s); void addRedrawEvent (long id, const SRedrawEvent& evt); void moveRedrawEvent (long id, int xoffset, int yoffset); bool doWin32(); bool doWin32Loop(); SRedrawEventTable redrawEventTable; SJob* job; STimer* timer; private: }; /** * The command line -wine flag make this work in wine. * @param msec is zero for event based version. or >= 1 for wine. * @param iswine is true if we use just a Sleep in event loop. * this happens because there is no socket in wine. * if iswine is specified msec can not be zero. */ SWHandler::SWHandler(unsigned int msec, bool iswine) { job = new SJob(); if (msec!=0) { timer = new STimer(msec); SEventHandler::addTimer(timer, this); if (iswine) { _windowsSelectHookup = winWineHack; fprintf (stderr, "Hooked up 'Sleep' event handler for wine.\n"); } fprintf (stderr, "Timer is set to %d msecs.\n", msec); } else { // fprintf (stderr, "Waiting for (I think ON is a better word) multiple objects. Throw 'em at me!\n"); _windowsSelectHookup = winSelectHack; timer = 0; } SEventHandler::addJob(job, this); UTF8_STRING = RegisterClipboardFormat ("UTF8_STRING"); } SWHandler::~SWHandler() { if (job) delete job; if (timer) delete timer; } bool SWHandler::done(const SEventSource* s) { if (!winOK) { return false; } /* we dont get a notice so better hurry up and process all messages. */ doWin32Loop(); if (redrawEventTable.size()==0) return false; /* this is the fast serving of collapsing events */ /* we request redraw events only after all events are processed */ SRedrawEventTable t; /* redraw block */ do { t.clear(); t = redrawEventTable; redrawEventTable.clear(); for (unsigned int i=0; igetID()); if (li == 0) { fprintf (stderr, "Window listener for %ld not found.\n", wid); continue; } // swid->dbuffer IS 0 if (swid->dbufferOn && swid->dbuffer == 0) { swid->dbuffer = (evt->width == 0 || evt->height == 0) ? new SDoubleBuffer ((HWND) swid->id, 0, swid->background, 0, 0, swid->getWidth(), swid->getHeight()) : new SDoubleBuffer ((HWND) swid->id, 0, swid->background, evt->x, evt->y, evt->width, evt->height); } /* FIXME : if window is not yet visible continue */ if (swid->dbuffer == 0 && evt->clear && evt->width > 0 && evt->height > 0) { swid->repaintBackground ( evt->x, evt->y, evt->x + evt->width, evt->y + evt->height); } // fprintf (stderr, "deliver RedrawEvent %ld.\n", wid); if (evt->width == 0 || evt->height == 0) { li->redraw (swid, 0, 0, swid->getWidth(), swid->getHeight()); } else { li->redraw (swid, evt->x, evt->y, evt->width, evt->height); } if (swid->dbuffer) { ((SDoubleBuffer*) swid->dbuffer)->copyToScreen ( (HWND) swid->id, (HDC) 0); delete (SDoubleBuffer*) swid->dbuffer; swid->dbuffer = 0; } } } } while (doWin32Loop()); SEventHandler::addJob(job, this); return false; } /** * Process X11 events in a loop * @return true if at least one event was found. */ bool SWHandler::doWin32Loop() { bool done1 = false; while (doWin32()) { done1 = true; } return done1; } /** * Process one message. * @return true if at least one message was processed. */ bool SWHandler::doWin32() { MSG msg; if (!PeekMessage(&msg ,0 , 0, 0, PM_REMOVE)) return false; do { //if (!TranslateAccelarator(hwnd, accel,&msg) TranslateMessage(&msg); DispatchMessage(&msg); } while (PeekMessage(&msg ,0 , 0, 0, PM_REMOVE)); return true; } /** * Add a collapsing window redraw. * @param id is the id of the window. * @param evt is the event. */ void SWHandler::addRedrawEvent (long id, const SRedrawEvent& evt) { SVector save; SRedrawEvent newEvt (evt); const SRedrawEvent* old = 0; while ((old = redrawEventTable.get (id))) { if (newEvt.merge (*old)) { redrawEventTable.remove (id); break; } save.append (*old); redrawEventTable.remove (id); } /* put back */ for (unsigned int i=0; i save; const SRedrawEvent* old = 0; while ((old=redrawEventTable.get (id))) { save.append (*old); redrawEventTable.remove (id); } //fprintf (stderr, "moveRedrawEvent %u\n", save.size()); for (unsigned int i=0; icurrentFocusWindow); if (foc) foc->getKeyboardFocus(); } //BringWindowToTop((HWND)modalID); } } } /** * This reqests a redraw, efficiently after all events got processed. * @param clear is true if the window needs to be cleared before calling redraw. * @param x is the x origin of the event * @param y is the y origin of the event * @param width is the width of the event * @param height is the height of the event */ void SW32Window::redraw (bool clear, int _x, int _y, unsigned int _width, unsigned int _height) { if (_x+(int)_width < 0 || _y + (int) _height < 0) { return; } if (_x > (int)getWidth() || _y > (int)getHeight()) { return; } handler->addRedrawEvent (id, SRedrawEvent (clear, _x, _y, _width, _height)); } /** * Reparent the window. * TODO: move it to x y * @param p is the parent window */ void SW32Window::setParent (SWindow* p, int x, int y) { SW32Window* otop = getToplevelWindow (this); SetParent ((HWND)id, (HWND)((SW32Window*)p)->id); SetWindowLong ((HWND)id, GWL_STYLE, SS_YUDIT_CHILD_STYLE); parentID = ((SW32Window *)p)->id; SW32Window* top = getToplevelWindow (this); unsigned int i; unsigned int j; for (i=0; iaccelerators.size(); i++) { for (j=0; jaccelerators.size(i); j++) { SAcceleratorListener* l = otop->accelerators.get (i,j); if (l==0) continue; const SString& key = otop->accelerators.key (i,j); top->accelerators .put (key, l); } } otop->accelerators.clear(); for (i=0; iacceleratorTable.size(); i++) { for (j=0; jacceleratorTable.size(i); j++) { long acc = otop->acceleratorTable.get (i,j); if (acc==0) continue; const SString& key = otop->acceleratorTable.key (i,j); top->acceleratorTable .put (key, acc); } } otop->acceleratorTable.clear(); } void SW32Window::resize (unsigned int _width, unsigned int _height) { RECT rcClient, rcWindow; POINT ptDiff; if (GetParent ((HWND)getID()) == 0 && GetClientRect((HWND)getID(), &rcClient) && GetWindowRect((HWND)getID(), &rcWindow)) { // rcClient.left and rcClient.top is 0 ptDiff.x = (rcWindow.right - rcWindow.left) - (rcClient.right-rcClient.left); ptDiff.y = (rcWindow.bottom - rcWindow.top) - (rcClient.bottom-rcClient.top); //MoveWindow(hWnd,rcWindow.left, rcWindow.top, //nWidth + ptDiff.x, nHeight + ptDiff.y, TRUE); unsigned int w = _width + ptDiff.x; unsigned int h = _height+ ptDiff.y; // fprintf (stderr, "SetSize=%d %d\n", w, h); setSize(_width, _height); MoveWindow((HWND)getID(),rcWindow.left, rcWindow.top, w, h, TRUE); //SetWindowPos ((HWND)getID(), 0, // getPositionX(), getPositionY(), // w, h, // SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOZORDER); } else { if (getWidth() == _width && getHeight() == _height) return; setSize(_width, _height); SetWindowPos ((HWND)getID(), 0, getPositionX(), getPositionY(), getWidth(), getHeight(), SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOZORDER); } } void SW32Window::move (int _x, int _y) { if (getPositionX() == _x && getPositionY() == _y) return; setPosition(_x, _y); SetWindowPos ((HWND)getID(), 0, getPositionX(), getPositionY(), getWidth(), getHeight(), SWP_NOACTIVATE | SWP_NOSIZE | SWP_NOZORDER); } void SW32Window::setTitle (const SString& title) { SString windowName=title; windowName.append ((char)0); // Windows98SE SString ansi = utf8ToSystem (windowName); SetWindowTextA ((HWND)id, ansi.array()); SEncoder u8("utf-8"); SEncoder u16("utf-16-le"); SString titleW = u16.encode (u8.decode (windowName)); SetWindowTextW ((HWND)id, (WCHAR*) titleW.array()); } KeyData keyData = { SWindowListener::Key_Undefined, false, false, false, false, false, false }; LRESULT CALLBACK _eventHandler (HWND hwnd, UINT message, WPARAM wParam,LPARAM lParam) { SW32Window* w = 0; SWindowListener* l = 0; switch(message) { case WM_GETMINMAXINFO: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { unsigned int minx = minimumSizesX.get((long)hwnd); unsigned int miny = minimumSizesY.get((long)hwnd); if (minx && miny) { LPMINMAXINFO info = (LPMINMAXINFO) lParam; /* is it enough ? too much trouble getting the client are size ..*/ info->ptMinTrackSize.x = minx + 10; info->ptMinTrackSize.y = miny + 30; return 0; RECT rect; rect.left = 0; rect.top = 0; rect.right = minx; rect.bottom = miny; int style = (w->modalID) ? SS_YUDIT_DIALOG_STYLE : SS_YUDIT_TOPLEVEL_STYLE; if (!AdjustWindowRect (&rect, style, false)) { return 0; } info->ptMinTrackSize.x = rect.right - rect.left; info->ptMinTrackSize.y = rect.bottom - rect.top; return 0; } } break; case WM_ACTIVATE: break; case WM_KILLFOCUS: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { SW32Window* top = getToplevelWindow (w); long oldT = currentTopFocusWindow; long oldW = currentFocusWindow; currentTopFocusWindow = 0; currentFocusWindow = 0; if (oldW != 0) { SW32Window* wo = windowHashtable.get (oldW); SWindowListener* lo = listenerHashtable.get (oldW); if (wo && lo) { sendKeyReleased(&keyData, wo, lo); lo->lostKeyboardFocus(wo); } } return 0; } break; case WM_SETFOCUS: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { SW32Window* top = getToplevelWindow (w); long oldT = currentTopFocusWindow; long oldW = currentFocusWindow; currentTopFocusWindow = top->getID(); currentFocusWindow = top->currentFocusWindow; /* if we changed window inside top, generate lost and gained event */ if (oldW != currentFocusWindow) { SW32Window* wo = windowHashtable.get (oldW); SWindowListener* lo = listenerHashtable.get (oldW); if (wo && lo) { sendKeyReleased(&keyData, wo, lo); lo->lostKeyboardFocus(wo); } SW32Window* wn = windowHashtable.get (currentFocusWindow); SWindowListener* ln = listenerHashtable.get (currentFocusWindow); if (wn && ln) ln->gainedKeyboardFocus(wo); } return 0; } break; case WM_NCCALCSIZE: /* forget it. */ break; case WM_RENDERALLFORMATS: putClipText(); putClipUnicodeText(); putClipUtf8Text(); return 0; case WM_RENDERFORMAT: if ((UINT)wParam == UTF8_STRING) { return putClipUtf8Text(); } else if ((UINT)wParam == CF_UNICODETEXT) { return putClipUnicodeText(); } else if ((UINT)wParam == CF_TEXT) { return putClipText(); } break; case WM_DRAWCLIPBOARD: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w!=0 && w->clipChain != 0) { SendMessage ((HWND)w->clipChain, message, wParam, lParam); } notifyClip(); return 0; case WM_CHANGECBCHAIN: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); /* repair chain - next is gone */ if (w!=0 && (long) wParam == w->clipChain) { w->clipChain = (long) lParam; } else if (w!=0 && w->clipChain != 0) { SendMessage ((HWND)w->clipChain, message, wParam, lParam); } return 0; case WM_PAINT: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); /* TODO: might be faster with addRedrawingEvent */ if (w) { if (GetUpdateRect (hwnd, 0, true)) { PAINTSTRUCT pstr; HDC dc = BeginPaint (hwnd, &pstr); if (dc == 0) break ; if (w->cdc != 0) { //fprintf (stderr, "PAINT: WONT..."); } else { #define SD_YUDIT_EVENT_COMPRESSION 1 #if SD_YUDIT_EVENT_COMPRESSION /* Windows has crappy event compression - yudit uses its own */ handler->addRedrawEvent (w->getID(), SRedrawEvent (pstr.fErase, pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right-pstr.rcPaint.left, pstr.rcPaint.bottom-pstr.rcPaint.top)); #else w->cdc = dc; // w->dbuffer IS 0 if (w->dbufferOn && w->dbuffer == 0) { w->dbuffer = ( pstr.rcPaint.bottom == pstr.rcPaint.top || pstr.rcPaint.left == pstr.rcPaint.right) ? new SDoubleBuffer ((HWND) w->id, (HDC) w->cdc, w->background, 0, 0, w->getWidth(), w->getHeight()) : new SDoubleBuffer ((HWND) w->id, (HDC) w->cdc, w->background, pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right-pstr.rcPaint.left, pstr.rcPaint.bottom-pstr.rcPaint.top); } if (w->dbuffer == 0 && pstr.fErase) { w->repaintBackground ( pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right, pstr.rcPaint.bottom); } l->redraw (w, pstr.rcPaint.left, pstr.rcPaint.top, pstr.rcPaint.right-pstr.rcPaint.left, pstr.rcPaint.bottom-pstr.rcPaint.top); if (w->dbuffer) { ((SDoubleBuffer*) w->dbuffer)->copyToScreen ( (HWND) w->id, (HDC) w->cdc); delete (SDoubleBuffer*) w->dbuffer; w->dbuffer = 0; } w->cdc = 0; #endif EndPaint (hwnd, &pstr); } return 0; } } break; case WM_DEVICECHANGE: imageCache.clear(); maskCache.clear(); fprintf (stderr, "DeviceChange - Compatible DC deleted\n"); DeleteDC (compatibleDC); compatibleDC = 0; break; case WM_ERASEBKGND: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); /* TODO: might be faster with addRedrawingEvent */ if (w) { RECT rect; GetClientRect (hwnd, &rect); /* does not work - race condition */ #if 0 handler->addRedrawEvent (w->getID(), SRedrawEvent (true, rect.left, rect.top, rect.right-rect.left, rect.bottom-rect.top)); #else w->cdc = ((HDC) wParam); w->repaintBackground ( rect.left, rect.top, rect.right, rect.bottom); w->cdc = 0; #endif return 1; } break; case WM_CAPTURECHANGED: lostCapture((long)lParam); return 0; break; //what a NAME! //case WM_NCHITTEST: case WM_MOUSEMOVE: { int fwKeys = (int) wParam; short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); if (fwKeys & MK_LBUTTON) { buttonDragged ((long) hwnd, 0, xPos, yPos); } else if (fwKeys & MK_MBUTTON) { buttonDragged ((long) hwnd, 1, xPos, yPos); } else if (fwKeys & MK_RBUTTON) { buttonDragged ((long) hwnd, 2, xPos, yPos); } else { buttonEnter ((long) hwnd); } } break; case WM_RBUTTONDOWN: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonPressed (long (hwnd), 2, xPos, yPos); } break; case WM_RBUTTONUP: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonReleased (long (hwnd), 2, xPos, yPos); } break; case WM_MBUTTONDOWN: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonPressed ((long) hwnd, 1, xPos, yPos); } break; case WM_MBUTTONUP: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonReleased ((long) hwnd, 1, xPos, yPos); } break; case WM_LBUTTONDOWN: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonPressed ((long) hwnd, 0, xPos, yPos); } break; case WM_LBUTTONUP: { short xPos = LOWORD (lParam); short yPos = HIWORD (lParam); buttonReleased ((long)hwnd, 0, xPos, yPos); } break; case WM_IME_CHAR: //fprintf (stderr, "WM_IME_COMPOSITION\n"); { } break; case WM_IME_COMPOSITION: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); //fprintf (stderr, "WM_IME_CHAR\n"); if (w && (lParam & GCS_RESULTSTR)) { HIMC himc = ImmGetContext (hwnd); if (!himc) break; DWORD size = ImmGetCompositionStringW(himc, GCS_RESULTSTR, 0, 0); HGLOBAL hglobal = GlobalAlloc (GHND, size + sizeof (WCHAR)); if (!hglobal) { ImmReleaseContext (hwnd, himc); break; } LPSTR lpstr = (LPSTR) GlobalLock (hglobal); if (lpstr) { ImmGetCompositionStringW(himc, GCS_RESULTSTR, lpstr, size + sizeof (WCHAR)); /* copy unicode over */ SV_UCS4 ucs4v; SString str (lpstr, (unsigned int)size); for (unsigned int i=0; i+1setSize(rcClient.right-rcClient.left, rcClient.bottom-rcClient.top); } else { w->setSize(width, height); } */ w->setSize(width, height); /* no need to send event to children */ if (!w->parentID) { l->resized(w, w->getPositionX(), w->getPositionY(), w->getWidth(), w->getHeight()); } return 0; } break; case WM_MOVE: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { short xPos = (unsigned int) LOWORD (lParam); short yPos = (unsigned int) HIWORD (lParam); w->setPosition(xPos, yPos); return 0; } break; case WM_COMMAND: break; case WM_DESTROY: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w && w->clipChained) { ChangeClipboardChain (hwnd, (HWND)w->clipChain); w->clipChained = false; } PostQuitMessage (0); SEventHandler::exit(); break; case WM_CLOSE: w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w) { if (w && l && l->windowClose (w)) { w->hide (); } if (shownWindows == 0) { if (w && w->clipChained) { ChangeClipboardChain (hwnd, (HWND)w->clipChain); w->clipChained = false; } PostQuitMessage (0); SEventHandler::exit(); } return 0; } else { return 0; } break; default: return DefWindowProc(hwnd,message,wParam,lParam); } return DefWindowProc(hwnd,message,wParam,lParam); } /** * This event loop is especially tailored for wine * where we can not wait on objects and we can not * wait on sockets. What can we do? Sleep. That is * what Word Excel and all ms stuff is doing anyway * so we wont be any different. */ static int winWineHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t) { int millisec = 2000; /* people should notice they did sg wrong. */ if (t!=0) { millisec = (DWORD) (t->tv_sec * 1000 + t->tv_usec / 1000); } Sleep (millisec); return 0; } /** * This is a hack to make select work on windows too by Gaspar * This routine will hook up int SEventBSD hook. */ static int winSelectHack (int readSize, fd_set *ro, int writeSize, fd_set *wo, int exceptSize, fd_set *ex, struct timeval* t) { int maxFd = (readSize > writeSize) ? readSize : writeSize; maxFd = (exceptSize > maxFd) ? exceptSize : maxFd; /* build events */ DWORD millisec = WSA_INFINITE; if (t!=0) { millisec = (DWORD) (t->tv_sec * 1000 + t->tv_usec / 1000); } if (maxFd == 0 && millisec ==0) { return 0; } SBinVector events; SV_INT vmap; // Win95 does not have it. #ifdef HAVE_WS2_32_DLL /* Nothing only timer - or not even exceptSize - forget that */ unsigned int i; /* go through read and write */ for (i=0; i 0) { FD_SET (fd, wo); return 1; } return -2; /* what the heck? */ } void SW32Window::setBackground(const SColor &color) { background = color; pen = SPen(pen.getForeground(), background, pen.getLineWidth()); } static HBRUSH getSolidBrush (const SColor& clr) { SString mvle = SString ((long)(clr.getValue() & 0x00ffffff)); HBRUSH brush = brushes.get (mvle); if (brush == 0) { COLORREF ref = PALETTERGB (clr.red, clr.green, clr.blue); brush = ::CreateSolidBrush (ref); brushes.put (mvle, brush); } return brush; } static HPEN getBitPen (const SColor& clr) { SString mvle = SString ((long)(clr.getValue() & 0x00ffffff)); HPEN hpen = pens.get (mvle); if (hpen == 0) { hpen = CreatePen (PS_SOLID, 0, RGB(clr.red, clr.green, clr.blue)); pens.put (mvle, hpen); } return hpen; } void SW32Window::repaintBackground(int left, int top, int right, int bottom) { /* remove clipping */ void* oclip = clipRegion; clipRegion = 0; bitfill (background, left, top, right - left, bottom - top); clipRegion = oclip; } /** * Fill a solid rectangle * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to fill * @param height is the height of the region to fill */ void SW32Window::bitfill (const SColor& bg, int _x, int _y, unsigned int _width, unsigned int _height) { bool mydc = dcin(); RECT rect; rect.left = _x; rect.top = _y; rect.right = _x + (int) _width; rect.bottom = _y + (int) _height; HBRUSH brush = getSolidBrush (bg); int mode = SetMapMode ((HDC)cdc, MM_TEXT); FillRect ((HDC)cdc, &rect, brush); SetMapMode ((HDC)cdc, mode); dcout (mydc); } /** * Draw a solid line. * @param x is the starting x point * @param y is the starting y point * @param x is the ending non-exclusive x point * @param y is the ending non-exclusive y point */ void SW32Window::bitline (const SColor& fg, int _x, int _y, int _tox, int _toy) { bool mydc = dcin(); HPEN hpen = getBitPen (fg); SelectObject ((HDC)cdc, hpen); MoveToEx ((HDC)cdc, _x, _y, 0); LineTo ((HDC)cdc, _tox, _toy); /* no last point otherwiseon windows */ LineTo ((HDC)cdc, _tox+1, _toy); dcout (mydc); } /** * Draw a solid point. * @param x is the x point * @param y is the y point */ void SW32Window::bitpoint (const SColor& clr, int _x, int _y) { bool mydc = dcin(); COLORREF ref = PALETTERGB (clr.red, clr.green, clr.blue); ::SetPixel ((HDC)cdc, _x, _y, ref); dcout (mydc); } void SW32Window::bitpoints (const SColor& clr, const int* _x, const int* _y, unsigned int _size) { bool mydc = dcin(); COLORREF ref = PALETTERGB (clr.red, clr.green, clr.blue); for (unsigned int i=0; i<_size; i++) { ::SetPixel ((HDC)cdc, _x[i], _y[i], ref); } dcout (mydc); } /** * Afetr this size things wont be cached. */ void SW32Window::setPixmapCacheSize(unsigned int _size) { // fprintf (stderr, "setPixmapCacheSize=%u\n", _size); imageCache.setSize (_size); maskCache.setSize (_size); } /** * turn on/off the cache and clear it */ void SW32Window::setPixmapCacheOn (bool _on) { // Win98 grocks under bitmaps. imageCache.setOn (_on); maskCache.setOn (_on); } /** * This one can return false if it fails. */ void SW32Window::putImage (int _x, int _y, const SImage& im) { bool mydc = dcin(); /* bitmap may be selected in a dc . dont delet now thinking....*/ const SString& ks = (const SString&) im.getID(); char a[10]; const SColor& cf = pen.getForeground(); const SColor& cb = pen.getBackground(); a[0] = 'i'; a[1] = 'm'; a[2] = (char) cf.red; a[3] = (char) cf.green; a[4] = (char) cf.blue; a[5] = (char) cb.red; a[6] = (char) cb.green; a[7] = (char) cb.blue; SString key (a, 8); key.append (ks); /* Bitmap is always added, mask is on-demand */ if (compatibleDC == 0) { compatibleDC = CreateCompatibleDC((HDC)cdc); if (compatibleHBitmap!=0) { DeleteObject (compatibleHBitmap); } compatibleHBitmap = CreateCompatibleBitmap(compatibleDC, 8, 8); } SBitmapItem* maskItem = maskCache.get (key); SBitmapItem* bitmapItem = imageCache.get (key); HBITMAP bitmap; HBITMAP mask; SBitmapItem bitem; SBitmapItem mitem; bitem.width = im.getWidth(); bitem.height = im.getHeight(); mitem.width = im.getWidth(); mitem.height = im.getHeight(); if (maskItem && bitmapItem) { bitmap = bitmapItem->bitmap; mask = maskItem->bitmap; bitem.bitmap = bitmap; mitem.bitmap = mask; bitem.dc = bitmapItem->dc; mitem.dc = maskItem->dc; bitem.x = bitmapItem->x; bitem.y = bitmapItem->y; mitem.x = maskItem->x; mitem.y = maskItem->y; bitem.width = bitmapItem->width; bitem.height = bitmapItem->height; mitem.width = maskItem->width; mitem.height = maskItem->height; } else { bitmap = 0; mask = 0; bitem.x = 0; bitem.y = 0; mitem.x = 0; mitem.y = 0; if (im.getShades() == 0) { createColoredBitmap (pen, im, &bitmap, &mask, (HDC)cdc, compatibleDC); } else { createShadedBitmap (pen, im, &bitmap, &mask, (HDC)cdc, compatibleDC); } /* cache this */ SelectObject (compatibleDC, bitmap); bitem.dc = compatibleDC; bitem.bitmap = bitmap; imageCache.put (key, bitem); /* cache mask */ SelectObject (compatibleDC, mask); mitem.dc = compatibleDC; mitem.bitmap = mask; maskCache.put (key, mitem); } if (mask) { /* if cached, dc is not same, not necessary */ if (mitem.dc == bitem.dc) SelectObject (mitem.dc, mask); BitBlt ((HDC)cdc, _x, _y, mitem.width, mitem.height, mitem.dc, mitem.x, mitem.y, SRCAND); } if (bitmap) { /* if cached, dc is not same, not necessary */ if (mitem.dc == bitem.dc) SelectObject (bitem.dc, bitmap); BitBlt ((HDC)cdc, _x, _y, bitem.width, bitem.height, bitem.dc, bitem.x, bitem.y, SRCPAINT); } /* cache was used */ if (maskItem && bitmapItem) { dcout (mydc); return; } SelectObject (compatibleDC, compatibleHBitmap); if (bitmap) DeleteObject (bitmap); if (mask) DeleteObject (mask); dcout (mydc); return; } /** * Create two bitmaps, one for the image and one for the colored ones. * @param p is the image * @param m is the shape image. it contains 1's where ther is no image. * @param dc is a dc that has the original colored bitmap selcted in it. * @param _dc is a dc we can use - it usually has a 1 depth bitmap in it */ static void createColoredBitmap (const SPen& pen, const SImage& im, HBITMAP* p, HBITMAP* m, HDC odc, HDC _dc) { int imageWidth = (int) im.getWidth(); int imageHeight = (int) im.getHeight(); *p = CreateCompatibleBitmap (odc, imageWidth, imageHeight); if (*p==0) { fprintf (stderr, "can not create colored bitmap width=%u height=%u\n", imageWidth, imageHeight); /* this is win98 - another piece of .... */ return; } SelectObject (_dc, *p); for (int y=0; ynewpath ((int)_x, (int)_y, _id); } else { return engine->newpath ((int)_x, (int)_y, ""); } } /** * FIXME: fill and return the resulting image for better cahcing. */ void SW32Window::fill (const SPen& _pen) { if (pen != _pen) { pen = _pen; } if (engine==0) return; SImage* si= engine->fill (0, 0, getWidth(), getHeight(), pen.getLineWidth()); if (si==0) return; /* offscreen */ /* Use the putimage that does some cacheing. */ if (imageCache.isOn()) { putImage (si->getOrigoX(), si->getOrigoY(), *si); delete si; return; } bool mydc = dcin(); /* * Here comes Gaspar's version of * "Poor man's transparency" It depends on believing that * background of the window in the region is really pen.getBackground() * If it is not true you should get the image yourself. */ if (compatibleDC == 0) { compatibleDC = CreateCompatibleDC((HDC)cdc); if (compatibleHBitmap!=0) { DeleteObject (compatibleHBitmap); } compatibleHBitmap = CreateCompatibleBitmap(compatibleDC, 8, 8); } HBITMAP bitmap; HBITMAP mask; createShadedBitmap (pen, *si, &bitmap, &mask, (HDC)cdc, compatibleDC); if (mask) { SelectObject (compatibleDC, mask); BitBlt ((HDC)cdc, si->getOrigoX(), si->getOrigoY(), si->getWidth(), si->getHeight(), compatibleDC, 0, 0, SRCAND); } if (bitmap) { SelectObject (compatibleDC, bitmap); BitBlt ((HDC)cdc, si->getOrigoX(), si->getOrigoY(), si->getWidth(), si->getHeight(), compatibleDC, 0, 0, SRCPAINT); } /* can not delete a bitmap if it is selected in */ SelectObject (compatibleDC, compatibleHBitmap); if (mask) DeleteObject (mask); if (bitmap) DeleteObject (bitmap); delete si; dcout (mydc); } /** * FIXME: * This method is not implemented */ void SW32Window::stroke (const SPen& _pen) { if (engine ==0) return; if (pen != _pen) { pen = _pen; } SImage *i = engine->stroke(0,0, getWidth(), getHeight(), _pen.getLineWidth()); if (i==0) return; delete i; } /** * Move to a new point * This will clear the path and push 3 element-pairs * one is the bounding low, second is bounding high * third is the new coord. */ void SW32Window::moveto (double x, double y) { if (engine ==0) return; engine->moveto (x, y); } /** * The lowest level function to add a new element */ void SW32Window::lineto (double x, double y) { if (engine ==0) return; engine->lineto (x, y); } /** * Draw a cubic beizer curve */ void SW32Window::curveto (double _x0, double _y0, double _x1, double _y1, double _x2, double _y2) { if (engine ==0) return; engine->curveto (_x0, _y0, _x1, _y1, _x2, _y2); } void SW32Window::closepath() { if (engine ==0) return; engine->closepath(); } /** * TODO: not implemented */ void SW32Window::rotate (double angle) { if (engine ==0) engine = new SGEngine(); engine->rotate (angle); } void SW32Window::scale (double x, double y) { if (engine ==0) engine = new SGEngine(); engine->scale (x, y); } void SW32Window::translate (double x, double y) { if (engine ==0) engine = new SGEngine(); engine->translate (x, y); } void SW32Window::pushmatrix() { if (engine ==0) engine = new SGEngine(); engine->pushmatrix(); } void SW32Window::popmatrix() { if (engine ==0) engine = new SGEngine(); engine->popmatrix(); } /** * Clear a region (set it to the background) * This should work with a clipped region. * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to clear * @param height is the height of the region to clear */ void SW32Window::clear (int _x, int _y, unsigned int _width, unsigned int _height) { bitfill (background, _x, _y, _width, _height); } /** * Copy an area on the window to another area. * overlap is ok. * @param x is the upper left corner * @param y is the upper top corner * @param width is the width of the region to copy * @param height is the height of the region to copy * @param tox is the destination left corner * @param toy is the destination top corner */ void SW32Window::copy (int _x, int _y, unsigned int _width, unsigned int _height, int _tox, int _toy) { //XCopyArea (impl->display, (Window) id, (Window) id, // gc, x, y, width, height, tox, toy); bool mydc = dcin(); BitBlt ((HDC)cdc, _tox, _toy, _width, _height, (HDC)cdc, _x, _y, SRCCOPY); handler->moveRedrawEvent (id, _tox-_x, _toy-_y); dcout (mydc); } /** * Assign a rectangualr clip area. Everithing outside this area will be clipped. */ void SW32Window::setClippingArea (int _x, int _y, unsigned int _width, unsigned int _height) { if (clipRegion != 0) { DeleteObject ((HRGN) clipRegion); } HRGN rgn = CreateRectRgn (_x, _y, _x + (int) _width, _y + (int) _height); clipRegion = rgn; if (cdc) SelectClipRgn ((HDC)cdc, rgn); } /** * clear the clipping area. */ void SW32Window::removeClippingArea () { if (!clipRegion) { if (cdc) { SelectClipRgn ((HDC)cdc, 0); } return; } DeleteObject ((HRGN) clipRegion); clipRegion = 0; if (cdc) { SelectClipRgn ((HDC)cdc, 0); } } static int dcins = 0; /** * Gointo a dc. return true if it is a borrowed resource . * this should be passed to dcout when exiting dc */ bool SW32Window::dcin() { if (dcins >0) { fprintf (stderr, "SW32Window::dcin error %d\n", dcins); } dcins++; if (dbuffer) { cdc = ((SDoubleBuffer*)dbuffer)->bitmapHDC; SelectClipRgn ((HDC)cdc, (HRGN) clipRegion); return false; } if (cdc != 0) { SelectClipRgn ((HDC)cdc, (HRGN) clipRegion); return false; } cdc = GetDC((HWND)id); if (cdc == 0) fprintf (stderr, "DC==NULL\n"); SelectClipRgn ((HDC)cdc, (HRGN) clipRegion); return true; } void SW32Window::dcout(bool wasin) { if (dcins ==0) { fprintf (stderr, "SW32Window::dcout error %d\n", dcins); return; } else { dcins--; } SelectClipRgn ((HDC)cdc, 0); if (wasin && dbuffer == 0) { ReleaseDC ((HWND)id, (HDC)cdc); cdc = 0; } } /** */ void SW32Window::wait () { handler->doWin32Loop(); /* we lost the job - we are in the job callback */ SEventHandler::addJob(handler->job, handler); while (shown && SEventHandler::next()); SEventHandler::remove(handler->job); } static int buttonLastX[3]; static int buttonLastY[3]; long lastMouseWindow = 0; /** * Generate a mouse enter and mouse leave event from what we have - * the current window where the mouse is... */ static void buttonEnter (long hwnd) { if (lastMouseWindow == hwnd) return; SW32Window* w=0; SWindowListener* l=0; if (lastMouseWindow) { w = windowHashtable.get (lastMouseWindow); l = listenerHashtable.get (lastMouseWindow); if (w != 0 && l!=0) l->leaveWindow (w); } lastMouseWindow = hwnd; if (lastMouseWindow) { w = windowHashtable.get (lastMouseWindow); l = listenerHashtable.get (lastMouseWindow); if (w != 0 && l!=0) l->enterWindow (w); } } /** * Work on buttonFlags buttons and do * the actual delivery of events on actual windows. */ static void buttonPressed (long hwnd, int button, int x, int y) { buttonEnter (hwnd); if (buttonFlags[button]) return; if (buttonFlags[0] ==0 && buttonFlags[1] == 0 && buttonFlags[2] == 0) { SetCapture ((HWND)hwnd); } buttonFlags[button] = hwnd; buttonLastX[button] = x; buttonLastY[button] = y; SW32Window* w = windowHashtable.get ((long)hwnd); SWindowListener* l = listenerHashtable.get ((long)hwnd); if (w == 0 || l==0) return; l->buttonPressed (w, button, x, y); } static void buttonDragged (long nwnd, int button, int x, int y) { buttonEnter (nwnd); if (buttonFlags[button] != nwnd) return; buttonLastX[button] = x; buttonLastY[button] = y; long hwnd = buttonFlags[button]; SW32Window* w = windowHashtable.get ((long)hwnd); SWindowListener* l = listenerHashtable.get ((long)hwnd); if (w == 0 || l==0) return; l->buttonDragged (w, button, x, y); } static void buttonReleased (long nwnd, int button, int x, int y) { buttonEnter (nwnd); if (!buttonFlags[button]) return; bool samebutton = (nwnd == buttonFlags[button]); buttonLastX[button] = x; buttonLastY[button] = y; long hwnd = buttonFlags[button]; SW32Window* w = windowHashtable.get (buttonFlags[button]); SWindowListener* l = listenerHashtable.get (buttonFlags[button]); buttonFlags[button] = 0; if (buttonFlags[0] ==0 && buttonFlags[1] == 0 && buttonFlags[2] == 0) { ReleaseCapture (); } if (w != 0 && l!=0) { l->buttonReleased (w, button, x, y); } #if 0 if (samebutton) return; /* this poor guy was at the mercy of this screwy windows */ w = windowHashtable.get ((long)hwnd); l = listenerHashtable.get ((long)hwnd); if (w != 0 && l!=0) { l->buttonReleased (w, button, x, y); } #endif } static void lostCapture (long wid) { for (unsigned int i=0; i<3; i++) { if (buttonFlags[i] == 0) continue; if (wid == buttonFlags[i]) continue; SW32Window* w = windowHashtable.get (buttonFlags[i]); SWindowListener* l = listenerHashtable.get (buttonFlags[i]); int x = buttonLastX[i]; int y = buttonLastY[i]; if (w == 0 || l==0) continue; l->buttonReleased (w, i, x, y); buttonFlags[i] = 0; } buttonEnter (wid); } SString SW32Window::getClipUTF8() { SString cld; bool ucs = true; bool utf8 = true; notifyClip (); SW32Window* w = windowHashtable.get (clipboardOwner); if (w != 0) /* local guy */ { SEncoder utf8enc ("utf-8-s"); SString out = utf8enc.encode (clipData); return SString (out); } if (OpenClipboard (0)) { HANDLE h = GetClipboardData (UTF8_STRING); if (!h) { utf8 = false; h = GetClipboardData (CF_UNICODETEXT); if (!h) { h = GetClipboardData (CF_TEXT); ucs = false; } } if (h) { char* str = (char*) GlobalLock (h); if (str) { unsigned int lsize = GlobalSize (h); cld = SString (str, lsize); GlobalUnlock (h); /* we need to terminate ucs2 if 0 is seen */ if (ucs) { for (unsigned int i=0; i+1encoder.clear(); SEncoder ucsenc("utf-16-le"); SV_UCS4 ucstext = (ucs) ? ucsenc.decode (cld) : impl->encoder.decode (cld); /* stupid windows does not know how to copy u+0000 - this * is the terminating character. */ for (unsigned int i=0; ilostClipSelection (w); } clipboardOwner = (long) owner; } } void SW32Window::setModal (SWindow* _parent, bool decorated) { modalID = ((SW32Window*)_parent)->getID(); SetWindowLong ((HWND)id, GWL_STYLE, SS_YUDIT_DIALOG_STYLE); //WS_POPUPWINDOW | WS_CAPTION); } /** * put this window in the middle */ void SW32Window::center (SWindow* _window) { HWND root = GetDesktopWindow(); // dont trust these guys if (!root) return; HWND me = root; if (_window!=0) { me = (HWND) ((SW32Window*)_window)->getID(); } RECT myrect; if (!GetWindowRect(me, &myrect)) { fprintf (stderr, "ERROR: can not get my window rect\n"); return; } RECT rootrect; if (!GetWindowRect(root, &rootrect)) { fprintf (stderr, "ERROR: can nto get root window rect\n"); return; } /* center point */ int lx = (myrect.left + myrect.right)/2; int ly = (myrect.top + myrect.bottom)/2; int mx = lx - (int) getWidth()/2; int my = ly - (int) getHeight()/2; int rootWidth = rootrect.right - rootrect.left; int rootHeight = rootrect.bottom - rootrect.top; if (rootWidth < (int) getWidth() + mx + 20) { mx = rootWidth - (int)getWidth() - 20; } if (rootHeight < (int) getHeight() + my + 20) { my = rootHeight - (int)getHeight() - 20; } if (mx<0) mx = 0; if (my<0) my = 0; move (mx, my); } void SW32Window::getKeyboardFocus () { SW32Window* top = getToplevelWindow (this); top->currentFocusWindow = getID(); if (top->currentFocusWindow == currentFocusWindow) { return; } SetFocus ((HWND)getID()); } static SW32Window* getToplevelWindow (SW32Window* w) { SW32Window * wn = w; while (wn->parentID) { SW32Window* swid = (SW32Window*) windowHashtable.get(wn->parentID); if (swid == 0) break; /* never happens */ wn = swid; } return wn; } static SW32Window* getToplevelWindow (long id) { SW32Window* wn = (SW32Window*) windowHashtable.get(wn->parentID); if (wn == 0) return 0; while (wn->parentID) { SW32Window* swid = (SW32Window*) windowHashtable.get(wn->parentID); if (swid == 0) break; /* never happens */ wn = swid; } return wn; } void SW32Window::setMinimumSize (unsigned int _width, unsigned int _height) { minimumSizesX.put (id, _width); minimumSizesY.put (id, _height); } static void sendKeyChar (KeyData* kd, const SString& _s) { SString s = _s; if (s.size() == 0) return; unsigned char c0 = (unsigned char) s[0]; /* TABS and controls are handled in processKey */ if (s.size() == 1 && c0 < 0x20) { return; } /* * Deal with only 'pressed' keys. If focus changes while repeat, * it may cause this. */ if (kd->key == SWindowListener::Key_Undefined) { return; } bool ctrl = kd->ctrl0 || kd->ctrl1; bool shift = kd->shift0 || kd->shift1; bool meta = kd->meta0 || kd->meta1; if (!sendAcceleratorPressed ((int) kd->key, ctrl, shift, meta)) { SW32Window* wn = windowHashtable.get (currentFocusWindow); SWindowListener* ln = listenerHashtable.get (currentFocusWindow); if (wn == 0 || ln == 0) return; ln->keyPressed (wn, kd->key, s, ctrl, shift, meta); } } /** * Send release key event to those unfortunatelly windows that * lost keyboard focus as windows does not sent it :( */ static void sendKeyReleased (KeyData* kd, SW32Window* wn, SWindowListener* ln) { if (sendAcceleratorReleased ()) { kd->ctrl0 = false; kd->ctrl1 = false; kd->shift0 = false; kd->shift1 = false; kd->meta0 = false; kd->meta1 = false; kd->key = SWindowListener::Key_Undefined; return; } SString s; bool ctrl = kd->ctrl0 || kd->ctrl1; bool shift = kd->shift0 || kd->shift1; bool meta = kd->meta0 || kd->meta1; if (kd->ctrl0) { ln->keyReleased (wn, SWindowListener::Key_Control_L, s, ctrl, shift, meta); } if (kd->ctrl1) { ln->keyReleased (wn, SWindowListener::Key_Control_R, s, ctrl, shift, meta); } kd->ctrl0 = false; kd->ctrl1 = false; ctrl = false; if (kd->shift0) { ln->keyReleased (wn, SWindowListener::Key_Shift_L, s, ctrl, shift, meta); } if (kd->shift1) { ln->keyReleased (wn, SWindowListener::Key_Shift_R, s, ctrl, shift, meta); } kd->shift0 = false; kd->shift1 = false; shift = false; if (kd->meta0) { ln->keyReleased (wn, SWindowListener::Key_Meta_L, s, ctrl, shift, meta); } if (kd->meta1) { ln->keyReleased (wn, SWindowListener::Key_Meta_R, s, ctrl, shift, meta); } kd->meta0 = false; kd->meta1 = false; meta = false; kd->key = SWindowListener::Key_Undefined; } /** * Process a key message. Generate event if necessary. * @param kd is a state holder. * @param syskey is true is this is a system key (what does this * stupid thing mean - I will never know) * @param keycod is the VK_KEYCODE * @param isdown is true if the key was pressed. */ static void processKey (KeyData* kdin, bool syskey, int keycod, bool isdown) { KeyData kd = { SWindowListener::Key_Undefined, false, false, false, false, false, false }; if (isdown) { kd.shift0 = kdin->shift0; kd.shift1 = kdin->shift1; kd.meta0 = kdin->meta0; kd.meta1 = kdin->meta1; kd.ctrl0 = kdin->ctrl0; kd.ctrl0 = kdin->ctrl0; } else { kd.shift0 = ! kdin->shift0; kd.shift1 = ! kdin->shift1; kd.meta0 = ! kdin->meta0; kd.meta1 = ! kdin->meta1; kd.ctrl0 = ! kdin->ctrl0; kd.ctrl0 = ! kdin->ctrl0; } // VK_SHIFT // VK_CONTROL // VK_MENU bool ckey=false; /* translate keycode first */ switch (keycod) { case VK_CONTROL: kd.ctrl0 = true; kd.key = SWindowListener::Key_Control_L; break; case VK_LCONTROL: kd.ctrl0 = true; kd.key = SWindowListener::Key_Control_L; break; case VK_RCONTROL: kd.ctrl1 = true; kd.key = SWindowListener::Key_Control_R; break; case VK_SHIFT: kd.shift0 = true; kd.key = SWindowListener::Key_Shift_R; break; case VK_LSHIFT: kd.key = SWindowListener::Key_Shift_L; kd.shift0 = true; break; case VK_RSHIFT: kd.key = SWindowListener::Key_Shift_R; kd.shift1 = true; break; case VK_MENU: kd.key = SWindowListener::Key_Alt_L; kd.meta0 = true; break; case VK_LMENU: kd.key = SWindowListener::Key_Alt_L; kd.meta0 = true; break; case VK_RMENU: kd.key = SWindowListener::Key_Alt_R; kd.meta1 = true; break; //VK_LWIN: kd.key = SWindowListener::Key_Meta_L; kd.meta0 = true; break; //VK_RWIN: kd.key = SWindowListener::Key_Meta_R; kd.meta1 = true; break; //VK_LBUTTON //VK_RBUTTON case VK_TAB: kd.key = SWindowListener::Key_Tab; break; case VK_RETURN: kd.key = SWindowListener::Key_Return; break; case VK_ESCAPE: kd.key = SWindowListener::Key_Escape; break; case VK_CLEAR: kd.key = SWindowListener::Key_Clear; break; case VK_SPACE: kd.key = SWindowListener::Key_Space; break; case VK_PRIOR: kd.key = SWindowListener::Key_Prior; break; case VK_NEXT: kd.key = SWindowListener::Key_Next; break; case VK_END: kd.key = SWindowListener::Key_End; break; case VK_HOME: kd.key = SWindowListener::Key_Home; break; case VK_LEFT: kd.key = SWindowListener::Key_Left; break; case VK_UP: kd.key = SWindowListener::Key_Up; break; case VK_RIGHT: kd.key = SWindowListener::Key_Right; break; case VK_DOWN: kd.key = SWindowListener::Key_Down; break; case VK_DELETE: kd.key = SWindowListener::Key_Delete; break; case VK_BACK: kd.key = SWindowListener::Key_BackSpace; break; case VK_F1: kd.key = SWindowListener::Key_F1; break; case VK_F2: kd.key = SWindowListener::Key_F2; break; case VK_F3: kd.key = SWindowListener::Key_F3; break; case VK_F4: kd.key = SWindowListener::Key_F4; break; case VK_F5: kd.key = SWindowListener::Key_F5; break; case VK_F6: kd.key = SWindowListener::Key_F6; break; case VK_F7: kd.key = SWindowListener::Key_F7; break; case VK_F8: kd.key = SWindowListener::Key_F8; break; case VK_F9: kd.key = SWindowListener::Key_F9; break; case VK_F10: kd.key = SWindowListener::Key_F10; break; case VK_F11: kd.key = SWindowListener::Key_F11; break; case VK_F12: kd.key = SWindowListener::Key_F12; break; /* VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39) */ /* VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A) */ case 'A': kd.key = SWindowListener::Key_A; ckey=true; break; case 'B': kd.key = SWindowListener::Key_B; ckey=true; break; case 'C': kd.key = SWindowListener::Key_C; ckey=true; break; case 'D': kd.key = SWindowListener::Key_D; ckey=true; break; case 'E': kd.key = SWindowListener::Key_E; ckey=true; break; case 'F': kd.key = SWindowListener::Key_F; ckey=true; break; case 'G': kd.key = SWindowListener::Key_G; ckey=true; break; case 'H': kd.key = SWindowListener::Key_H; ckey=true; break; case 'I': kd.key = SWindowListener::Key_I; ckey=true; break; case 'J': kd.key = SWindowListener::Key_J; ckey=true; break; case 'K': kd.key = SWindowListener::Key_K; ckey=true; break; case 'L': kd.key = SWindowListener::Key_L; ckey=true; break; case 'M': kd.key = SWindowListener::Key_M; ckey=true; break; case 'N': kd.key = SWindowListener::Key_N; ckey=true; break; case 'O': kd.key = SWindowListener::Key_O; ckey=true; break; case 'P': kd.key = SWindowListener::Key_P; ckey=true; break; case 'Q': kd.key = SWindowListener::Key_Q; ckey=true; break; case 'R': kd.key = SWindowListener::Key_R; ckey=true; break; case 'S': kd.key = SWindowListener::Key_S; ckey=true; break; case 'T': kd.key = SWindowListener::Key_T; ckey=true; break; case 'U': kd.key = SWindowListener::Key_U; ckey=true; break; case 'X': kd.key = SWindowListener::Key_X; ckey=true; break; case 'Y': kd.key = SWindowListener::Key_Y; ckey=true; break; case 'V': kd.key = SWindowListener::Key_V; ckey=true; break; case 'W': kd.key = SWindowListener::Key_W; ckey=true; break; case 'Z': kd.key = SWindowListener::Key_Z; ckey=true; break; default: kd.key = SWindowListener::Key_Send; ckey=true; break; } kdin-> key = kd.key; if (isdown) { kdin->shift0 = kd.shift0; kdin->shift1 = kd.shift1; kdin->meta0 = kd.meta0; kdin->meta1 = kd.meta1; kdin->ctrl0 = kd.ctrl0; kdin->ctrl0 = kd.ctrl0; } else { kdin->shift0 = ! kd.shift0; kdin->shift1 = ! kd.shift1; kdin->meta0 = ! kd.meta0; kdin->meta1 = ! kd.meta1; kdin->ctrl0 = ! kd.ctrl0; kdin->ctrl0 = ! kd.ctrl0; } /* */ bool ctrl = kdin->ctrl0 || kdin->ctrl1; bool shift = kdin->shift0 || kdin->shift1; bool meta = kdin->meta0 || kdin->meta1; SW32Window* wn = windowHashtable.get (currentFocusWindow); SWindowListener* ln = listenerHashtable.get (currentFocusWindow); if (wn != 0 || ln != 0) { SString s; /* WM_IME_COMPOSITION does not give us TAB */ if (keycod == VK_TAB && isdown) { s.append ("\t"); } if (isdown) { if (!sendAcceleratorPressed ((int) kdin->key, ctrl, shift, meta)) { ln->keyPressed (wn, kdin->key, s, ctrl, shift, meta); } } else { if (!sendAcceleratorReleased ()) { ln->keyReleased (wn, kdin->key, s, ctrl, shift, meta); } } } } SAccelerator currentAccelerator; bool accelPressed = false; /** * add and remove keyboard accelerator */ void SW32Window::addAccelerator (const SAccelerator& a, SAcceleratorListener* l) { SW32Window* top = getToplevelWindow (this); top->accelerators.put (a.toString(), l); top->acceleratorTable.put (a.toString(), id); } void SW32Window::removeAccelerator (const SAccelerator& a, SAcceleratorListener* l) { SW32Window* top = getToplevelWindow (this); top->accelerators.remove (a.toString()); top->acceleratorTable.remove (a.toString()); } static bool sendAcceleratorPressed (int key, bool ctrl, bool shift, bool meta) { if (currentTopFocusWindow==0) return true; if (accelPressed) return true; SW32Window* top = windowHashtable.get (currentTopFocusWindow); if (top ==0) return true; currentAccelerator = SAccelerator (key, ctrl, shift, meta); long id = top->acceleratorTable.get (currentAccelerator.toString()); if (id ==0) { return false; } SAcceleratorListener* l = top->accelerators.get ( currentAccelerator.toString()); if (l ==0) { return false; } accelPressed = true; l->acceleratorPressed (currentAccelerator); return true; } static bool sendAcceleratorReleased () { if (currentTopFocusWindow==0) return false; if (!accelPressed) return false; SW32Window* top = windowHashtable.get (currentTopFocusWindow); if (top ==0) { accelPressed = false; return true; } long id = top->acceleratorTable.get (currentAccelerator.toString()); SAcceleratorListener* l = top->accelerators.get ( currentAccelerator.toString()); if (l==0 || id ==0) { accelPressed = false; return true; } accelPressed = false; l->acceleratorReleased (currentAccelerator); return true; } /** * Start a native input method. * @param name is the name of the input method: * like "kinput2" * @param properties provide some attributes to the input method. */ bool SW32Window::startInputMethod (const SString& name, const SProperties& prop) { if (name == "x-none" || name == "x-ascii" || name == "x-utf-8") { if (imname == name) return true; stopInputMethod(); imname = name; return true; } HIMC himc = ImmGetContext((HWND)id); if (!himc) return false; /* ImmSetOpenStatus */ /* stop previous one */ if (imname.size()) { ImmSetOpenStatus (himc, false); } getKeyboardFocus(); ImmSetOpenStatus (himc, true); setInputMethodProperties (prop); imname = name; return true; } void SW32Window::stopInputMethod () { HIMC himc = ImmGetContext((HWND)id); if (!himc) return; /* stop previous one */ if (imname.size()) { ImmSetOpenStatus (himc, false); } imname = ""; } /** * Change properties of the input method on the fly. * @param prop contains properties like: * InputStyle: root over-the-spot off-the-spot */ void SW32Window::setInputMethodProperties (const SProperties& properties) { if (!isVisible()) return; HIMC himc = ImmGetContext((HWND)id); if (!himc) return; if (properties.get ("InputStyle")==0) { fprintf (stderr, "InputStyle is not present in properties.\n"); return; } SString s = properties["InputStyle"]; /* ok. now I can tell you windows can not set InputStyle sorry */ if (properties.get ("LineSpacing")) { SString lsp = properties["LineSpacing"]; lsp.append ((char)0); int spacing; sscanf (lsp.array(), "%d", &spacing); } /* What to do with this? */ if (properties.get ("InputClientColor")) { SString col = properties["InputClientColor"]; col.append ((char)0); unsigned long bg, fg; sscanf (col.array(), "%lu,%lu", &bg, &fg); SColor xbg = SColor((SS_WORD32)bg); SColor xfg = SColor((SS_WORD32)fg); } /* XXX: no idea how to do this... */ if (s == "preedit-over-status-under" && properties.get ("InputSpot") && properties.get ("InputStatusLocation") && properties.get ("InputStatusSize") ) { SString spotLocation = properties["InputSpot"]; spotLocation.append ((char)0); int _x, _y; sscanf (spotLocation.array(), "%d,%d", &_x, &_y); COMPOSITIONFORM form; form.dwStyle = CFS_POINT; form.ptCurrentPos.x = _x; form.ptCurrentPos.y = _y; form.rcArea.left = 0; form.rcArea.top = 0; form.rcArea.right = (int) getWidth(); form.rcArea.bottom = (int) getHeight(); ImmSetCompositionWindow (himc, &form); SString sl = properties["InputStatusLocation"]; sl.append ((char)0); int statusX, statusY; sscanf (sl.array(), "%d,%d", &statusX, &statusY); SString ss = properties["InputStatusSize"]; ss.append ((char)0); int statusWidth, statusHeight; sscanf (ss.array(), "%d,%d", &statusWidth, &statusHeight); POINT point; point.x = statusX; point.y = statusY; ImmSetStatusWindowPos(himc, &point); } else if (s == "preedit-under-status-under" && properties.get ("InputSpot") && properties.get ("InputStatusLocation") && properties.get ("InputStatusSize") && properties.get ("InputClientLocation") && properties.get ("InputClientSize") ) { SString spotLocation = properties["InputSpot"]; spotLocation.append ((char)0); int _x, _y; sscanf (spotLocation.array(), "%d,%d", &_x, &_y); SString sl = properties["InputStatusLocation"]; sl.append ((char)0); int statusX, statusY; sscanf (sl.array(), "%d,%d", &statusX, &statusY); SString ss = properties["InputStatusSize"]; ss.append ((char)0); int statusWidth, statusHeight; sscanf (ss.array(), "%d,%d", &statusWidth, &statusHeight); SString cl = properties["InputClientLocation"]; cl.append ((char)0); int clientX, clientY; sscanf (cl.array(), "%d,%d", &clientX, &clientY); SString cs = properties["InputClientSize"]; cs.append ((char)0); int clientWidth, clientHeight; sscanf (cs.array(), "%d,%d", &clientWidth, &clientHeight); POINT point; point.x = statusX; point.y = statusY; ImmSetStatusWindowPos(himc, &point); COMPOSITIONFORM form; form.dwStyle = CFS_RECT; form.ptCurrentPos.x = clientX; // starting from. form.ptCurrentPos.y = clientY; form.rcArea.left = clientX; // next line form.rcArea.top = clientY; form.rcArea.right = clientX + clientWidth; form.rcArea.bottom = clientY + clientHeight; ImmSetCompositionWindow (himc, &form); } else if (s == "preedit-root-status-root") { COMPOSITIONFORM form; form.dwStyle = CFS_DEFAULT; form.ptCurrentPos.x = (int) getWidth(); form.ptCurrentPos.y = (int) getHeight(); form.rcArea.left = 0; form.rcArea.top = 0; form.rcArea.right = (int) getWidth(); form.rcArea.bottom = (int) getHeight(); ImmSetCompositionWindow (himc, &form); } /* All the input styles */ else if (s == "preedit-over-status-over" && properties.get ("InputSpot")) { SString spotLocation = properties["InputSpot"]; spotLocation.append ((char)0); int _x, _y; sscanf (spotLocation.array(), "%d,%d", &_x, &_y); COMPOSITIONFORM form; form.dwStyle = CFS_POINT; form.ptCurrentPos.x = _x; form.ptCurrentPos.y = _y; form.rcArea.left = 0; form.rcArea.top = 0; form.rcArea.right = (int) getWidth(); form.rcArea.bottom = (int) getHeight(); ImmSetCompositionWindow (himc, &form); } } /** * Get the current input method. * it returns a zero sized string if input method is not started. */ SString SW32Window::getInputMethod () { return SString(imname); } unsigned long SW32Window::getWindowID() const { return (unsigned long) id; } // FIXME void SW32Window::setDoubleBuffer (bool isOn) { dbufferOn = isOn; } bool SW32Window::isDoubleBufferEnabled () const { return dbufferOn; } ./swindow/swin32/dbuffer_diff.txt0000644000175000017500000001731510724172636017041 0ustar henrichhenrich*** backup/SWin32.h 2007-11-30 11:47:42.000000000 +0900 --- SWin32.h 2007-11-30 22:20:28.000000000 +0900 *************** *** 120,124 **** virtual void setModal (SWindow*w, bool decorated); - void* cdc; static void setPixmapCacheSize(unsigned int _size); static void setPixmapCacheOn (bool _on); --- 120,123 ---- *************** *** 143,146 **** --- 142,152 ---- virtual void setDoubleBuffer (bool isOn); virtual bool isDubleBufferEnabled () const; + + bool dbufferOn; // double buffer + void* dbuffer; + long id; + void* cdc; + SColor background; + private: bool dcin(); *************** *** 149,156 **** void* clipRegion; SGEngine* engine; - SColor background; SPen pen; SW32Impl* impl; - long id; SString name; SString imname; --- 155,160 ---- *** backup/SWin32.cpp 2007-11-30 11:47:42.000000000 +0900 --- SWin32.cpp 2007-12-01 14:20:52.000000000 +0900 *************** *** 19,23 **** #define SS_YUDIT_DIALOG_STYLE \ ! (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME) #define SS_YUDIT_TOPLEVEL_STYLE \ --- 19,23 ---- #define SS_YUDIT_DIALOG_STYLE \ ! (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_CLIPCHILDREN) #define SS_YUDIT_TOPLEVEL_STYLE \ *************** *** 77,80 **** --- 77,100 ---- + class SDoubleBuffer + { + public: + SDoubleBuffer (HWND _id, HDC _gotDC, + const SColor& background, + int _x, int _y, + unsigned int _w, unsigned int _h); + copyToScreen (HWND _id, HDC _gotDC); + ~SDoubleBuffer (); + + HDC bitmapHDC; + HBITMAP bitmap; + + int x; + int y; + unsigned int width; + unsigned int height; + }; + + /** * Clipboard Stuff. *************** *** 162,165 **** --- 182,235 ---- * START *-------------------------------------------------------------------------*/ + SDoubleBuffer::SDoubleBuffer (HWND _id, HDC _gotDC, + const SColor& background, int _x, int _y, + unsigned int _w, unsigned int _h) + { + HDC winDC = (_gotDC == 0) ? GetDC(_id) : _gotDC; + + bitmapHDC = CreateCompatibleDC (winDC); + // fprintf (stderr, "bitmapHDC=%u\n", (unsigned int) bitmapHDC); + + x = _x; y = _y; + width = _w; height = _h; + + if (width == 0) width = 1; + if (height == 0) height = 1; + + // can't use bitmapHDC, don't ask me why + bitmap = CreateCompatibleBitmap(winDC, x+width, y+height); + SelectObject(bitmapHDC, bitmap); + if (_gotDC == 0) ReleaseDC (_id, winDC); + + if (bitmap == 0) + { + fprintf (stderr, "Bitmap is null...\n"); + } + // Clear the bitmap with background + RECT rect; rect.left = x; rect.top = y; + rect.right = x + (int) width; rect.bottom = y + (int) height; + HBRUSH brush = getSolidBrush (background); + int mode = SetMapMode (bitmapHDC, MM_TEXT); + FillRect (bitmapHDC, &rect, brush); + SetMapMode (bitmapHDC, mode); + // brush is cached, dont delete it + } + + SDoubleBuffer::copyToScreen (HWND _id, HDC _gotDC) + { + HDC winDC = (_gotDC == 0) ? GetDC(_id) : _gotDC; + + // SelectClipRgn ((HDC)bitmapHDC, (HRGN) 0); + // SelectClipRgn (winDC, (HRGN) 0); + BitBlt (winDC, x, y, width, height, bitmapHDC, x, y, SRCCOPY); + + if (_gotDC == 0) ReleaseDC (_id, winDC); + } + + SDoubleBuffer::~SDoubleBuffer () + { + DeleteDC (bitmapHDC); + DeleteObject (bitmap); + } class SBitmapItem { *************** *** 507,512 **** continue; } /* FIXME : if window is not yet visible continue */ ! if (evt->clear && evt->width > 0 && evt->height > 0) { swid->repaintBackground ( --- 577,594 ---- continue; } + + // swid->dbuffer IS 0 + if (swid->dbufferOn && swid->dbuffer == 0) + { + swid->dbuffer = (evt->width == 0 || evt->height == 0) + ? new SDoubleBuffer ((HWND) swid->id, 0, + swid->background, 0, 0, + swid->getWidth(), swid->getHeight()) + : new SDoubleBuffer ((HWND) swid->id, 0, + swid->background, evt->x, evt->y, evt->width, evt->height); + } /* FIXME : if window is not yet visible continue */ ! if (swid->dbuffer == 0 && ! evt->clear && evt->width > 0 && evt->height > 0) { swid->repaintBackground ( *************** *** 523,526 **** --- 605,616 ---- li->redraw (swid, evt->x, evt->y, evt->width, evt->height); } + if (swid->dbuffer) + { + ((SDoubleBuffer*) swid->dbuffer)->copyToScreen ( + (HWND) swid->id, + (HDC) 0); + delete (SDoubleBuffer*) swid->dbuffer; + swid->dbuffer = 0; + } } } *************** *** 818,821 **** --- 908,913 ---- clipChained = false; clipChain = 0; + dbufferOn = 0; + dbuffer = 0; windowHashtable.put (id, this); } *************** *** 823,826 **** --- 915,919 ---- SW32Window::~SW32Window() { + if (dbuffer) delete (SDoubleBuffer*) dbuffer; if (engine) delete engine; windowHashtable.remove (id); *************** *** 905,910 **** { EnableWindow ((HWND)modalID, true); - //SetForegroundWindow ((HWND)modalID); SetActiveWindow ((HWND)modalID); SW32Window* swid = (SW32Window*) windowHashtable.get(modalID); if (swid) --- 998,1003 ---- { EnableWindow ((HWND)modalID, true); SetActiveWindow ((HWND)modalID); + SetForegroundWindow ((HWND)modalID); SW32Window* swid = (SW32Window*) windowHashtable.get(modalID); if (swid) *************** *** 1186,1190 **** #else w->cdc = dc; ! if (pstr.fErase) { w->repaintBackground ( --- 1279,1297 ---- #else w->cdc = dc; ! ! // w->dbuffer IS 0 ! if (w->dbufferOn && w->dbuffer == 0) ! { ! w->dbuffer = ( pstr.rcPaint.bottom == pstr.rcPaint.top ! || pstr.rcPaint.left == pstr.rcPaint.right) ! ? new SDoubleBuffer ((HWND) w->id, (HDC) w->cdc, ! w->background, 0, 0, ! w->getWidth(), w->getHeight()) ! : new SDoubleBuffer ((HWND) w->id, (HDC) w->cdc, ! w->background, pstr.rcPaint.left, pstr.rcPaint.top, ! pstr.rcPaint.right-pstr.rcPaint.left, ! pstr.rcPaint.bottom-pstr.rcPaint.top); ! } ! if (w->dbuffer == 0 && pstr.fErase) { w->repaintBackground ( *************** *** 1195,1198 **** --- 1302,1313 ---- pstr.rcPaint.right-pstr.rcPaint.left, pstr.rcPaint.bottom-pstr.rcPaint.top); + if (w->dbuffer) + { + ((SDoubleBuffer*) w->dbuffer)->copyToScreen ( + (HWND) w->id, + (HDC) w->cdc); + delete (SDoubleBuffer*) w->dbuffer; + w->dbuffer = 0; + } w->cdc = 0; #endif *************** *** 2233,2236 **** --- 2348,2357 ---- } dcins++; + if (dbuffer) + { + cdc = ((SDoubleBuffer*)dbuffer)->bitmapHDC; + SelectClipRgn ((HDC)cdc, (HRGN) clipRegion); + return false; + } if (cdc != 0) { *************** *** 2255,2259 **** } SelectClipRgn ((HDC)cdc, 0); ! if (wasin) { ReleaseDC ((HWND)id, (HDC)cdc); --- 2376,2380 ---- } SelectClipRgn ((HDC)cdc, 0); ! if (wasin && dbuffer == 0) { ReleaseDC ((HWND)id, (HDC)cdc); *************** *** 3301,3304 **** --- 3422,3426 ---- SW32Window::setDoubleBuffer (bool isOn) { + dbufferOn = isOn; } *************** *** 3306,3309 **** SW32Window::isDubleBufferEnabled () const { ! return false; } --- 3428,3431 ---- SW32Window::isDubleBufferEnabled () const { ! return dbufferOn; } ./swindow/SFontImpl.cpp0000644000175000017500000004443011053437153015115 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFontImpl.h" #include "swindow/SFontTTF.h" #include "swindow/SFontNative.h" #include "swindow/SFontBDF.h" #include "swindow/SUniFont.h" #include "swindow/SAwt.h" #include "swindow/SImage.h" #include "stoolkit/SIO.h" #include "stoolkit/SBinHashtable.h" #include "stoolkit/SHashtable.h" #include "stoolkit/SExcept.h" #include "stoolkit/SUtil.h" #include "stoolkit/SCluster.h" static SStringVector fontSearchPath( "/,fonts,../fonts,/etc/fonts,/usr/share/yudit/fonts"); /* it makes a big difference in speed */ /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SFontDelegate { public: enum SE_Type { SE_NONE, SE_TTF, SE_NATIVE, SE_UNIFONT, SE_BDF }; SFontDelegate (const SFile& file, SE_Type type, const SString& encoding=SString("")); ~SFontDelegate(); unsigned int count; SE_Type type; union { SFontTTF* ttf; SFontNative* native; SUniFont* unifont; SFontBDF* bdf; } u; }; /** * Create a brand new delegate */ SFontDelegate::SFontDelegate (const SFile& file, SE_Type _type, const SString& enc) { count = 1; type = _type; u.ttf = 0; switch (type) { case SE_TTF: u.ttf = new SFontTTF (file, enc); if (!u.ttf->isOK()) { delete u.ttf; u.ttf = 0; type = SE_NONE; } break; case SE_NATIVE: u.native = SAwt::getFont(enc); break; case SE_UNIFONT: u.unifont = new SUniFont(file); break; case SE_BDF: u.bdf = new SFontBDF(file); break; case SE_NONE: break; } } SFontDelegate::~SFontDelegate() { switch (type) { case SE_TTF: if (u.ttf!=0) delete u.ttf; break; case SE_NATIVE: if (u.native!=0) delete u.native; break; case SE_UNIFONT: if (u.unifont!=0) delete u.unifont; break; case SE_BDF: if (u.bdf!=0) delete u.bdf; break; case SE_NONE: break; } } typedef SBinHashtable SFontCache; static SFontCache fontCache; /** * Create a new font face. * @param _name is the logical x11 font descriptor that matches * this font. "-%s-%s-%s-%s-*-%s-%g-*-*-*-%s-%s-%s-%s" * foundry-family-weight-slant-*-style-pixel-*-*-*-spacing-avgWidth-registry-encoding * @param encoding is not zero size if there is an external encoder. */ SFontImpl::SFontImpl (const SString& _name, const SString& _encoding) : xlfd (_name), name(_name), encoding (_encoding) { /** * Try to find TTF first */ rlFont = false; lrFont = false; SString decorated (name); decorated.append ("~"); decorated.append (encoding); //fprintf (stderr, "XLFD %*.*s\n", SSARGS(xlfd)); SFontDelegate* d = fontCache.get(decorated); delegate = 0; if (d!=0) { //fprintf (stderr, "resusing %*.*s %u\n", SSARGS(name), d->count); delegate = d; d->count++; if (d->type == SFontDelegate::SE_NATIVE) { createSaneXLFD(); } } else { //n.append (".ttf"); SFile f(name, fontSearchPath); if (f.size() > 0 && name.match ("*.hex")) { d = new SFontDelegate (f, SFontDelegate::SE_UNIFONT); CHECK_NEW (d); delegate = d; fontCache.put (decorated, d); } else if (f.size() > 0 && name.match ("*.bdf")) { d = new SFontDelegate (f, SFontDelegate::SE_BDF); CHECK_NEW (d); delegate = d; fontCache.put (decorated, d); } else if (f.size() > 0) { if (encoding.size()==0 || encoding == name || encoding == SString("unicode")) { d = new SFontDelegate (f, SFontDelegate::SE_TTF); } else { /* xlfd contains encoding */ d = new SFontDelegate (f, SFontDelegate::SE_TTF, encoding); } CHECK_NEW (d); delegate = d; // It is obvious that we don't use fontCache at this point. // FIXME: this was commented out till yudit-2.3.beta-14 !!! Why? fontCache.put (decorated, d); } else { createSaneXLFD(); //fprintf (stderr, "name=%*.*s xlfd=%*.*s\n", SSARGS(name), SSARGS(xlfd)); if (encoding.size()==0 || encoding == name) { d = new SFontDelegate (xlfd, SFontDelegate::SE_NATIVE); } else { d = new SFontDelegate (xlfd, SFontDelegate::SE_NATIVE, encoding); } CHECK_NEW (d); delegate = d; fontCache.put (decorated, d); } } } void SFontImpl::createSaneXLFD () { SStringVector l; xlfd.replace("--", "-*-"); l.split (xlfd, "-"); if (l.size() < 14) { //fprintf (stderr, "SFontImpl: Need better XLFD %*.*s. Adding some -*-\n", SSARGS(xlfd)); /* find a good insertion point - FIXME this is not very good here */ unsigned int ipoint = 0; if (l.size() > 2) { ipoint = l.size() -1; while (ipoint > 0 && l[ipoint-1] != "*") ipoint--; } else if (xlfd[0] == '-') { while (ipoint < l.size() && l[ipoint] != "*") ipoint++; if (ipoint >= l.size()) { ipoint = 0; } } while (l.size() < 14) l.insert(ipoint, "*"); xlfd = "-"; xlfd.append(l.join ("-")); } } SFontImpl::SFontImpl (const SFontImpl& ff) { name = ff.name; xlfd = ff.xlfd; matrix = ff.matrix; encoding = ff.encoding; SFontDelegate* d = (SFontDelegate*) ff.delegate; if (d) { d->count++; } lrFont = ff.lrFont; rlFont = ff.rlFont; delegate = d; } void SFontImpl::setAttributes (const SProperties& properties) { if (properties.get("LR")) { lrFont = properties["LR"]==SString("true"); } if (properties.get("RL")) { rlFont = properties["RL"]==SString("true"); } } SFontImpl SFontImpl::operator= (const SFontImpl& ff) { if (&ff == this) return *this; SFontDelegate* d; if (ff.delegate == delegate) { xlfd = ff.xlfd; matrix = ff.matrix; name = ff.name; encoding = ff.encoding; lrFont = ff.lrFont; rlFont = ff.rlFont; return *this; } /* Get this till name exists */ SString decorated (name); decorated.append ("~"); decorated.append (encoding); xlfd = ff.xlfd; matrix = ff.matrix; name = ff.name; encoding = ff.encoding; lrFont = ff.lrFont; rlFont = ff.rlFont; if (delegate) { d = (SFontDelegate*) delegate; d->count--; if (d->count==0) { if (fontCache.get (decorated)) { fontCache.remove (decorated); delete d; } else { fprintf (stderr, "SFontImpl.cpp: FontCache does not have: %*.*s\n", SSARGS(decorated)); } } } d = (SFontDelegate*) ff.delegate; if (d) { d->count++; } delegate = d; return *this; } bool SFontImpl::isTTF () const { if (delegate) { return (((SFontDelegate*) delegate)->type==SFontDelegate::SE_TTF); } return false; } /** * \brief Try to make a fuzzy guess if we need to align the diacritics to * the left or to the right. * left aligned marks will be rendered this way: * x----basewith----x * x-markwidth-x * right aligned marks will be rendered this way: * x----basewith----x * x-markwidth-x */ bool SFontImpl::isLeftAligned (SS_UCS4 c) const { if (delegate && ((SFontDelegate*) delegate)->type==SFontDelegate::SE_TTF) { return (((SFontDelegate*)delegate)->u.ttf->isLeftAligned (c)); } /* * X11 font non-spacing marks will be right aligned. * Except for RL scripts . */ /* * FIXME: * In reality should check if it is a non-spacing mark. */ if (c>= 0x500 && c < 0x900) { return true; } return false; } SFontImpl::~SFontImpl () { if (delegate) { SFontDelegate* d = (SFontDelegate*) delegate; d->count--; if (isTTF()) if (d->count==0) { /* Get this till name exists */ SString decorated (name); decorated.append ("~"); decorated.append (encoding); if (fontCache.get (decorated)) { fontCache.remove (decorated); delete d; } else { fprintf (stderr, "SFontImpl.cpp: FontCache does not have: %*.*s\n", SSARGS(decorated)); } } } } /** * set the search path for the font * This path will be used to locate font files on the disk * Currently it is used for True Type fonts. * @param l is the list of directories. */ void SFontImpl::setPath(const SStringVector& l) { //fprintf (stderr, "set path ...\n"); fontSearchPath = l; } /** * search files for property in order and set the path to the * property. Always add YUDIT_DATA/fonts */ void SFontImpl::guessPath (const SStringVector& files, const SString& property) { SStringVector outDataPath; for (unsigned int i=0; itype) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { double scale = d->u.ttf->scale (); m.scale (x * scale, y * scale); matrix = m; } break; case SFontDelegate::SE_NATIVE: /* * Modify the currentXLFD and load the font. * it will be our pixel size. nice eh? * A reminder on xlfd: * -foundry-family-weight-slant-*-style-pixel-*-*-*-spacing-avgWidth-registry-encoding */ if (d->u.native==0) break; l.split (xlfd, "-"); sprintf (tmp, "%u", (unsigned int) (y + 0.5)); if (l.size() < 14) { fprintf (stderr, "BAD XLFD %*.*s\n", SSARGS(xlfd)); break; } l.replace (6, tmp); xlfd = "-"; xlfd.append(l.join ("-")); break; case SFontDelegate::SE_UNIFONT: if (d->u.unifont==0) break; m.scale (x, y); matrix = m; break; case SFontDelegate::SE_BDF: if (d->u.bdf==0) break; m.scale (x, y); matrix = m; break; case SFontDelegate::SE_NONE: break; } } /** * Try to draw one single glyph. * @param canvas is the canvas to draw to * @param m is the conversion matrix * @param uch is the array containing ucs4 * @prama len is the length of the array * @return true is drawn. */ bool SFontImpl::draw (SCanvas* canvas, const SPen& pen, const SS_Matrix2D& m, SS_UCS4 uch, bool isLRContext) { if (!delegate) return 0; SFontDelegate* d = (SFontDelegate*) delegate;; SS_Matrix2D sd = m * matrix; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { if (!d->u.ttf->width (m, uch, 0)) return 0; long larr[8]; larr[0] = 'T' ; larr[1] = 'T'; larr[2] = 'F'; larr[3] = (long)d->u.ttf; larr[4] = (long)uch; SString key((char*) larr, 5 * sizeof (long)); /* FIXME: you should in fact use an instance counter. */ key.append ((long)(sd.x0*16000.0)); /* scale-x */ key.append ((long)(sd.y1*16000.0)); /* scale-y */ if (!isLRContext) key.append ("R"); double offsetX = 0.0; double offsetY = 0.0; /* for better positioning of diacritical marks */ d->u.ttf->getBaseOffsets (sd, uch, &offsetX, &offsetY); // No need to be part of the key //key.append ((long)(offsetX*16000.0)); //key.append ((long)(offsetY*16000.0)); sd.t0 += offsetX; sd.t1 += offsetY; /* reverse coordinates Y, negative m.t1 */ if (!canvas->newpath (m.t0+offsetX, m.t1+offsetY, key)) { /* not cached yet */ d->u.ttf->draw (canvas, sd, uch, isLRContext); } canvas->fill (pen); return true; } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return (d->u.native->draw (xlfd, canvas, pen, sd, uch)); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { if (!d->u.unifont->width (matrix.y1, uch, 0)) return 0; d->u.unifont->draw (matrix.y1, canvas, pen.getForeground(), sd, uch, (m.x0 < 0)); return true; } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { if (!d->u.bdf->width (matrix.y1, uch, 0)) return 0; d->u.bdf->draw (matrix.y1, canvas, pen.getForeground(), sd, uch, (m.x0 < 0)); return true; } break; case SFontDelegate::SE_NONE: break; } return false; } /** * @param m is the conversion matrix * @param uch is the array containing ucs4 * @prama len is the length of the array * @return ture if it has width. * width_ will be set t width if exists. */ bool SFontImpl::width (SS_UCS4 uch, double* width_) { if (!delegate) return false; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->width (matrix, uch, width_)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return (d->u.native->width (xlfd, uch, width_)); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->width (matrix.y1, uch, width_)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->width (matrix.y1, uch, width_)); } break; case SFontDelegate::SE_NONE: break; } return false; } /** * set the base character for better glyph positioning * @param base is the base character relative to which * we will position all of out composing marks. */ void SFontImpl::setBase(SS_UCS4 base) { SFontTTF::setBase (base); } /** * return the overall width */ double SFontImpl::width () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->width (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->width (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->width (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->width (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } /** * return the overall ascent */ double SFontImpl::ascent () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->ascent (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->ascent (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->ascent (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->ascent (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } /** * return the overall descent */ double SFontImpl::descent () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->descent (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->descent (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->descent (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->descent (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } /** * return the overall gap */ double SFontImpl::gap () const { if (!delegate) return 0.0; SFontDelegate* d = (SFontDelegate*) delegate;; switch (d->type) { case SFontDelegate::SE_TTF: if (d->u.ttf->isOK()) { return (d->u.ttf->gap (matrix)); } break; case SFontDelegate::SE_NATIVE: if (d->u.native==0) break; return d->u.native->gap (xlfd); case SFontDelegate::SE_UNIFONT: if (d->u.unifont) { return (d->u.unifont->gap (matrix.y1)); } break; case SFontDelegate::SE_BDF: if (d->u.bdf) { return (d->u.bdf->gap (matrix.y1)); } break; case SFontDelegate::SE_NONE: break; } return 0.0; } SObject* SFontImpl::clone () const { SFontImpl *ret = new SFontImpl(*this); CHECK_NEW (ret); return ret; } bool SFontImpl::needSoftMirror (SS_UCS4 uch, bool isLRContext) const { // Sort out strong font types. if (isLR() && !isLRContext) return true; if (isRL() && isLRContext) return true; if (isLR() || isRL()) return false; if (getPUARovasType (uch) > 0) return !isLRContext; if (getRovasType (uch) > 0) return isLRContext; // rest is LR, need mirroring in RL context. return !isLRContext; } ./swindow/SImage.h0000644000175000017500000000376310434025606014056 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SImage_h #define SImage_h #include "swindow/SColor.h" #include "stoolkit/STypes.h" #include "stoolkit/SObject.h" #include "stoolkit/SUniqueID.h" /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit font package */ class SImage : public SObject { public: SImage (const char* const* xpm); SImage (const SImage& im); SImage operator = (const SImage& im); SImage (unsigned int shades, unsigned int width, unsigned int height); SImage (SS_WORD32* image, unsigned int shades, int origox, int origoy, unsigned int width, unsigned int height); virtual ~SImage(); const SUniqueID& getID() const; void compress(); /* After fill, return the shade of white */ unsigned int getShades () const; unsigned int getWidth () const; unsigned int getHeight () const; int getOrigoX() const; int getOrigoY() const; void setOrigoX (int x); void setOrigoY (int y); SS_WORD32 getShade (int x, int y) const; virtual SObject* clone () const; /* USed by cache device to indicate the offset */ int px; int py; /* indicated the the image is off screen */ bool offScreen; private: int origox; int origoy; void* buffer; }; #endif /* SImage_h */ ./swindow/SColorDefs.i0000644000175000017500000005046107672362372014730 0ustar henrichhenrich// // Generated by rgb.pl // Hostname: macska // Date: Fri Oct 13 20:05:55 JST 2000 // typedef struct SS_RGBStruct { const char* name; int red; int green; int blue; } _SS_RGBStruct; SS_RGBStruct rgb_colors[] = { { "snow", 255, 250, 250 }, { "GhostWhite", 248, 248, 255 }, { "WhiteSmoke", 245, 245, 245 }, { "gainsboro", 220, 220, 220 }, { "FloralWhite", 255, 250, 240 }, { "OldLace", 253, 245, 230 }, { "linen", 250, 240, 230 }, { "AntiqueWhite", 250, 235, 215 }, { "PapayaWhip", 255, 239, 213 }, { "BlanchedAlmond", 255, 235, 205 }, { "bisque", 255, 228, 196 }, { "PeachPuff", 255, 218, 185 }, { "NavajoWhite", 255, 222, 173 }, { "moccasin", 255, 228, 181 }, { "cornsilk", 255, 248, 220 }, { "ivory", 255, 255, 240 }, { "LemonChiffon", 255, 250, 205 }, { "seashell", 255, 245, 238 }, { "honeydew", 240, 255, 240 }, { "MintCream", 245, 255, 250 }, { "azure", 240, 255, 255 }, { "AliceBlue", 240, 248, 255 }, { "lavender", 230, 230, 250 }, { "LavenderBlush", 255, 240, 245 }, { "MistyRose", 255, 228, 225 }, { "white", 255, 255, 255 }, { "black", 0, 0, 0 }, { "DarkSlateGray", 47, 79, 79 }, { "DarkSlateGrey", 47, 79, 79 }, { "DimGray", 105, 105, 105 }, { "DimGrey", 105, 105, 105 }, { "SlateGray", 112, 128, 144 }, { "SlateGrey", 112, 128, 144 }, { "LightSlateGray", 119, 136, 153 }, { "LightSlateGrey", 119, 136, 153 }, { "gray", 190, 190, 190 }, { "grey", 190, 190, 190 }, { "LightGrey", 211, 211, 211 }, { "LightGray", 211, 211, 211 }, { "MidnightBlue", 25, 25, 112 }, { "navy", 0, 0, 128 }, { "NavyBlue", 0, 0, 128 }, { "CornflowerBlue", 100, 149, 237 }, { "DarkSlateBlue", 72, 61, 139 }, { "SlateBlue", 106, 90, 205 }, { "MediumSlateBlue", 123, 104, 238 }, { "LightSlateBlue", 132, 112, 255 }, { "MediumBlue", 0, 0, 205 }, { "RoyalBlue", 65, 105, 225 }, { "blue", 0, 0, 255 }, { "DodgerBlue", 30, 144, 255 }, { "DeepSkyBlue", 0, 191, 255 }, { "SkyBlue", 135, 206, 235 }, { "LightSkyBlue", 135, 206, 250 }, { "SteelBlue", 70, 130, 180 }, { "LightSteelBlue", 176, 196, 222 }, { "LightBlue", 173, 216, 230 }, { "PowderBlue", 176, 224, 230 }, { "PaleTurquoise", 175, 238, 238 }, { "DarkTurquoise", 0, 206, 209 }, { "MediumTurquoise", 72, 209, 204 }, { "turquoise", 64, 224, 208 }, { "cyan", 0, 255, 255 }, { "LightCyan", 224, 255, 255 }, { "CadetBlue", 95, 158, 160 }, { "MediumAquamarine", 102, 205, 170 }, { "aquamarine", 127, 255, 212 }, { "DarkGreen", 0, 100, 0 }, { "DarkOliveGreen", 85, 107, 47 }, { "DarkSeaGreen", 143, 188, 143 }, { "SeaGreen", 46, 139, 87 }, { "MediumSeaGreen", 60, 179, 113 }, { "LightSeaGreen", 32, 178, 170 }, { "PaleGreen", 152, 251, 152 }, { "SpringGreen", 0, 255, 127 }, { "LawnGreen", 124, 252, 0 }, { "green", 0, 255, 0 }, { "chartreuse", 127, 255, 0 }, { "MediumSpringGreen", 0, 250, 154 }, { "GreenYellow", 173, 255, 47 }, { "LimeGreen", 50, 205, 50 }, { "YellowGreen", 154, 205, 50 }, { "ForestGreen", 34, 139, 34 }, { "OliveDrab", 107, 142, 35 }, { "DarkKhaki", 189, 183, 107 }, { "khaki", 240, 230, 140 }, { "PaleGoldenrod", 238, 232, 170 }, { "LightGoldenrodYellow", 250, 250, 210 }, { "LightYellow", 255, 255, 224 }, { "yellow", 255, 255, 0 }, { "gold", 255, 215, 0 }, { "LightGoldenrod", 238, 221, 130 }, { "goldenrod", 218, 165, 32 }, { "DarkGoldenrod", 184, 134, 11 }, { "RosyBrown", 188, 143, 143 }, { "IndianRed", 205, 92, 92 }, { "SaddleBrown", 139, 69, 19 }, { "sienna", 160, 82, 45 }, { "peru", 205, 133, 63 }, { "burlywood", 222, 184, 135 }, { "beige", 245, 245, 220 }, { "wheat", 245, 222, 179 }, { "SandyBrown", 244, 164, 96 }, { "tan", 210, 180, 140 }, { "chocolate", 210, 105, 30 }, { "firebrick", 178, 34, 34 }, { "brown", 165, 42, 42 }, { "DarkSalmon", 233, 150, 122 }, { "salmon", 250, 128, 114 }, { "LightSalmon", 255, 160, 122 }, { "orange", 255, 165, 0 }, { "DarkOrange", 255, 140, 0 }, { "coral", 255, 127, 80 }, { "LightCoral", 240, 128, 128 }, { "tomato", 255, 99, 71 }, { "OrangeRed", 255, 69, 0 }, { "red", 255, 0, 0 }, { "HotPink", 255, 105, 180 }, { "DeepPink", 255, 20, 147 }, { "pink", 255, 192, 203 }, { "LightPink", 255, 182, 193 }, { "PaleVioletRed", 219, 112, 147 }, { "maroon", 176, 48, 96 }, { "MediumVioletRed", 199, 21, 133 }, { "VioletRed", 208, 32, 144 }, { "magenta", 255, 0, 255 }, { "violet", 238, 130, 238 }, { "plum", 221, 160, 221 }, { "orchid", 218, 112, 214 }, { "MediumOrchid", 186, 85, 211 }, { "DarkOrchid", 153, 50, 204 }, { "DarkViolet", 148, 0, 211 }, { "BlueViolet", 138, 43, 226 }, { "purple", 160, 32, 240 }, { "MediumPurple", 147, 112, 219 }, { "thistle", 216, 191, 216 }, { "snow1", 255, 250, 250 }, { "snow2", 238, 233, 233 }, { "snow3", 205, 201, 201 }, { "snow4", 139, 137, 137 }, { "seashell1", 255, 245, 238 }, { "seashell2", 238, 229, 222 }, { "seashell3", 205, 197, 191 }, { "seashell4", 139, 134, 130 }, { "AntiqueWhite1", 255, 239, 219 }, { "AntiqueWhite2", 238, 223, 204 }, { "AntiqueWhite3", 205, 192, 176 }, { "AntiqueWhite4", 139, 131, 120 }, { "bisque1", 255, 228, 196 }, { "bisque2", 238, 213, 183 }, { "bisque3", 205, 183, 158 }, { "bisque4", 139, 125, 107 }, { "PeachPuff1", 255, 218, 185 }, { "PeachPuff2", 238, 203, 173 }, { "PeachPuff3", 205, 175, 149 }, { "PeachPuff4", 139, 119, 101 }, { "NavajoWhite1", 255, 222, 173 }, { "NavajoWhite2", 238, 207, 161 }, { "NavajoWhite3", 205, 179, 139 }, { "NavajoWhite4", 139, 121, 94 }, { "LemonChiffon1", 255, 250, 205 }, { "LemonChiffon2", 238, 233, 191 }, { "LemonChiffon3", 205, 201, 165 }, { "LemonChiffon4", 139, 137, 112 }, { "cornsilk1", 255, 248, 220 }, { "cornsilk2", 238, 232, 205 }, { "cornsilk3", 205, 200, 177 }, { "cornsilk4", 139, 136, 120 }, { "ivory1", 255, 255, 240 }, { "ivory2", 238, 238, 224 }, { "ivory3", 205, 205, 193 }, { "ivory4", 139, 139, 131 }, { "honeydew1", 240, 255, 240 }, { "honeydew2", 224, 238, 224 }, { "honeydew3", 193, 205, 193 }, { "honeydew4", 131, 139, 131 }, { "LavenderBlush1", 255, 240, 245 }, { "LavenderBlush2", 238, 224, 229 }, { "LavenderBlush3", 205, 193, 197 }, { "LavenderBlush4", 139, 131, 134 }, { "MistyRose1", 255, 228, 225 }, { "MistyRose2", 238, 213, 210 }, { "MistyRose3", 205, 183, 181 }, { "MistyRose4", 139, 125, 123 }, { "azure1", 240, 255, 255 }, { "azure2", 224, 238, 238 }, { "azure3", 193, 205, 205 }, { "azure4", 131, 139, 139 }, { "SlateBlue1", 131, 111, 255 }, { "SlateBlue2", 122, 103, 238 }, { "SlateBlue3", 105, 89, 205 }, { "SlateBlue4", 71, 60, 139 }, { "RoyalBlue1", 72, 118, 255 }, { "RoyalBlue2", 67, 110, 238 }, { "RoyalBlue3", 58, 95, 205 }, { "RoyalBlue4", 39, 64, 139 }, { "blue1", 0, 0, 255 }, { "blue2", 0, 0, 238 }, { "blue3", 0, 0, 205 }, { "blue4", 0, 0, 139 }, { "DodgerBlue1", 30, 144, 255 }, { "DodgerBlue2", 28, 134, 238 }, { "DodgerBlue3", 24, 116, 205 }, { "DodgerBlue4", 16, 78, 139 }, { "SteelBlue1", 99, 184, 255 }, { "SteelBlue2", 92, 172, 238 }, { "SteelBlue3", 79, 148, 205 }, { "SteelBlue4", 54, 100, 139 }, { "DeepSkyBlue1", 0, 191, 255 }, { "DeepSkyBlue2", 0, 178, 238 }, { "DeepSkyBlue3", 0, 154, 205 }, { "DeepSkyBlue4", 0, 104, 139 }, { "SkyBlue1", 135, 206, 255 }, { "SkyBlue2", 126, 192, 238 }, { "SkyBlue3", 108, 166, 205 }, { "SkyBlue4", 74, 112, 139 }, { "LightSkyBlue1", 176, 226, 255 }, { "LightSkyBlue2", 164, 211, 238 }, { "LightSkyBlue3", 141, 182, 205 }, { "LightSkyBlue4", 96, 123, 139 }, { "SlateGray1", 198, 226, 255 }, { "SlateGray2", 185, 211, 238 }, { "SlateGray3", 159, 182, 205 }, { "SlateGray4", 108, 123, 139 }, { "LightSteelBlue1", 202, 225, 255 }, { "LightSteelBlue2", 188, 210, 238 }, { "LightSteelBlue3", 162, 181, 205 }, { "LightSteelBlue4", 110, 123, 139 }, { "LightBlue1", 191, 239, 255 }, { "LightBlue2", 178, 223, 238 }, { "LightBlue3", 154, 192, 205 }, { "LightBlue4", 104, 131, 139 }, { "LightCyan1", 224, 255, 255 }, { "LightCyan2", 209, 238, 238 }, { "LightCyan3", 180, 205, 205 }, { "LightCyan4", 122, 139, 139 }, { "PaleTurquoise1", 187, 255, 255 }, { "PaleTurquoise2", 174, 238, 238 }, { "PaleTurquoise3", 150, 205, 205 }, { "PaleTurquoise4", 102, 139, 139 }, { "CadetBlue1", 152, 245, 255 }, { "CadetBlue2", 142, 229, 238 }, { "CadetBlue3", 122, 197, 205 }, { "CadetBlue4", 83, 134, 139 }, { "turquoise1", 0, 245, 255 }, { "turquoise2", 0, 229, 238 }, { "turquoise3", 0, 197, 205 }, { "turquoise4", 0, 134, 139 }, { "cyan1", 0, 255, 255 }, { "cyan2", 0, 238, 238 }, { "cyan3", 0, 205, 205 }, { "cyan4", 0, 139, 139 }, { "DarkSlateGray1", 151, 255, 255 }, { "DarkSlateGray2", 141, 238, 238 }, { "DarkSlateGray3", 121, 205, 205 }, { "DarkSlateGray4", 82, 139, 139 }, { "aquamarine1", 127, 255, 212 }, { "aquamarine2", 118, 238, 198 }, { "aquamarine3", 102, 205, 170 }, { "aquamarine4", 69, 139, 116 }, { "DarkSeaGreen1", 193, 255, 193 }, { "DarkSeaGreen2", 180, 238, 180 }, { "DarkSeaGreen3", 155, 205, 155 }, { "DarkSeaGreen4", 105, 139, 105 }, { "SeaGreen1", 84, 255, 159 }, { "SeaGreen2", 78, 238, 148 }, { "SeaGreen3", 67, 205, 128 }, { "SeaGreen4", 46, 139, 87 }, { "PaleGreen1", 154, 255, 154 }, { "PaleGreen2", 144, 238, 144 }, { "PaleGreen3", 124, 205, 124 }, { "PaleGreen4", 84, 139, 84 }, { "SpringGreen1", 0, 255, 127 }, { "SpringGreen2", 0, 238, 118 }, { "SpringGreen3", 0, 205, 102 }, { "SpringGreen4", 0, 139, 69 }, { "green1", 0, 255, 0 }, { "green2", 0, 238, 0 }, { "green3", 0, 205, 0 }, { "green4", 0, 139, 0 }, { "chartreuse1", 127, 255, 0 }, { "chartreuse2", 118, 238, 0 }, { "chartreuse3", 102, 205, 0 }, { "chartreuse4", 69, 139, 0 }, { "OliveDrab1", 192, 255, 62 }, { "OliveDrab2", 179, 238, 58 }, { "OliveDrab3", 154, 205, 50 }, { "OliveDrab4", 105, 139, 34 }, { "DarkOliveGreen1", 202, 255, 112 }, { "DarkOliveGreen2", 188, 238, 104 }, { "DarkOliveGreen3", 162, 205, 90 }, { "DarkOliveGreen4", 110, 139, 61 }, { "khaki1", 255, 246, 143 }, { "khaki2", 238, 230, 133 }, { "khaki3", 205, 198, 115 }, { "khaki4", 139, 134, 78 }, { "LightGoldenrod1", 255, 236, 139 }, { "LightGoldenrod2", 238, 220, 130 }, { "LightGoldenrod3", 205, 190, 112 }, { "LightGoldenrod4", 139, 129, 76 }, { "LightYellow1", 255, 255, 224 }, { "LightYellow2", 238, 238, 209 }, { "LightYellow3", 205, 205, 180 }, { "LightYellow4", 139, 139, 122 }, { "yellow1", 255, 255, 0 }, { "yellow2", 238, 238, 0 }, { "yellow3", 205, 205, 0 }, { "yellow4", 139, 139, 0 }, { "gold1", 255, 215, 0 }, { "gold2", 238, 201, 0 }, { "gold3", 205, 173, 0 }, { "gold4", 139, 117, 0 }, { "goldenrod1", 255, 193, 37 }, { "goldenrod2", 238, 180, 34 }, { "goldenrod3", 205, 155, 29 }, { "goldenrod4", 139, 105, 20 }, { "DarkGoldenrod1", 255, 185, 15 }, { "DarkGoldenrod2", 238, 173, 14 }, { "DarkGoldenrod3", 205, 149, 12 }, { "DarkGoldenrod4", 139, 101, 8 }, { "RosyBrown1", 255, 193, 193 }, { "RosyBrown2", 238, 180, 180 }, { "RosyBrown3", 205, 155, 155 }, { "RosyBrown4", 139, 105, 105 }, { "IndianRed1", 255, 106, 106 }, { "IndianRed2", 238, 99, 99 }, { "IndianRed3", 205, 85, 85 }, { "IndianRed4", 139, 58, 58 }, { "sienna1", 255, 130, 71 }, { "sienna2", 238, 121, 66 }, { "sienna3", 205, 104, 57 }, { "sienna4", 139, 71, 38 }, { "burlywood1", 255, 211, 155 }, { "burlywood2", 238, 197, 145 }, { "burlywood3", 205, 170, 125 }, { "burlywood4", 139, 115, 85 }, { "wheat1", 255, 231, 186 }, { "wheat2", 238, 216, 174 }, { "wheat3", 205, 186, 150 }, { "wheat4", 139, 126, 102 }, { "tan1", 255, 165, 79 }, { "tan2", 238, 154, 73 }, { "tan3", 205, 133, 63 }, { "tan4", 139, 90, 43 }, { "chocolate1", 255, 127, 36 }, { "chocolate2", 238, 118, 33 }, { "chocolate3", 205, 102, 29 }, { "chocolate4", 139, 69, 19 }, { "firebrick1", 255, 48, 48 }, { "firebrick2", 238, 44, 44 }, { "firebrick3", 205, 38, 38 }, { "firebrick4", 139, 26, 26 }, { "brown1", 255, 64, 64 }, { "brown2", 238, 59, 59 }, { "brown3", 205, 51, 51 }, { "brown4", 139, 35, 35 }, { "salmon1", 255, 140, 105 }, { "salmon2", 238, 130, 98 }, { "salmon3", 205, 112, 84 }, { "salmon4", 139, 76, 57 }, { "LightSalmon1", 255, 160, 122 }, { "LightSalmon2", 238, 149, 114 }, { "LightSalmon3", 205, 129, 98 }, { "LightSalmon4", 139, 87, 66 }, { "orange1", 255, 165, 0 }, { "orange2", 238, 154, 0 }, { "orange3", 205, 133, 0 }, { "orange4", 139, 90, 0 }, { "DarkOrange1", 255, 127, 0 }, { "DarkOrange2", 238, 118, 0 }, { "DarkOrange3", 205, 102, 0 }, { "DarkOrange4", 139, 69, 0 }, { "coral1", 255, 114, 86 }, { "coral2", 238, 106, 80 }, { "coral3", 205, 91, 69 }, { "coral4", 139, 62, 47 }, { "tomato1", 255, 99, 71 }, { "tomato2", 238, 92, 66 }, { "tomato3", 205, 79, 57 }, { "tomato4", 139, 54, 38 }, { "OrangeRed1", 255, 69, 0 }, { "OrangeRed2", 238, 64, 0 }, { "OrangeRed3", 205, 55, 0 }, { "OrangeRed4", 139, 37, 0 }, { "red1", 255, 0, 0 }, { "red2", 238, 0, 0 }, { "red3", 205, 0, 0 }, { "red4", 139, 0, 0 }, { "DeepPink1", 255, 20, 147 }, { "DeepPink2", 238, 18, 137 }, { "DeepPink3", 205, 16, 118 }, { "DeepPink4", 139, 10, 80 }, { "HotPink1", 255, 110, 180 }, { "HotPink2", 238, 106, 167 }, { "HotPink3", 205, 96, 144 }, { "HotPink4", 139, 58, 98 }, { "pink1", 255, 181, 197 }, { "pink2", 238, 169, 184 }, { "pink3", 205, 145, 158 }, { "pink4", 139, 99, 108 }, { "LightPink1", 255, 174, 185 }, { "LightPink2", 238, 162, 173 }, { "LightPink3", 205, 140, 149 }, { "LightPink4", 139, 95, 101 }, { "PaleVioletRed1", 255, 130, 171 }, { "PaleVioletRed2", 238, 121, 159 }, { "PaleVioletRed3", 205, 104, 137 }, { "PaleVioletRed4", 139, 71, 93 }, { "maroon1", 255, 52, 179 }, { "maroon2", 238, 48, 167 }, { "maroon3", 205, 41, 144 }, { "maroon4", 139, 28, 98 }, { "VioletRed1", 255, 62, 150 }, { "VioletRed2", 238, 58, 140 }, { "VioletRed3", 205, 50, 120 }, { "VioletRed4", 139, 34, 82 }, { "magenta1", 255, 0, 255 }, { "magenta2", 238, 0, 238 }, { "magenta3", 205, 0, 205 }, { "magenta4", 139, 0, 139 }, { "orchid1", 255, 131, 250 }, { "orchid2", 238, 122, 233 }, { "orchid3", 205, 105, 201 }, { "orchid4", 139, 71, 137 }, { "plum1", 255, 187, 255 }, { "plum2", 238, 174, 238 }, { "plum3", 205, 150, 205 }, { "plum4", 139, 102, 139 }, { "MediumOrchid1", 224, 102, 255 }, { "MediumOrchid2", 209, 95, 238 }, { "MediumOrchid3", 180, 82, 205 }, { "MediumOrchid4", 122, 55, 139 }, { "DarkOrchid1", 191, 62, 255 }, { "DarkOrchid2", 178, 58, 238 }, { "DarkOrchid3", 154, 50, 205 }, { "DarkOrchid4", 104, 34, 139 }, { "purple1", 155, 48, 255 }, { "purple2", 145, 44, 238 }, { "purple3", 125, 38, 205 }, { "purple4", 85, 26, 139 }, { "MediumPurple1", 171, 130, 255 }, { "MediumPurple2", 159, 121, 238 }, { "MediumPurple3", 137, 104, 205 }, { "MediumPurple4", 93, 71, 139 }, { "thistle1", 255, 225, 255 }, { "thistle2", 238, 210, 238 }, { "thistle3", 205, 181, 205 }, { "thistle4", 139, 123, 139 }, { "gray0", 0, 0, 0 }, { "grey0", 0, 0, 0 }, { "gray1", 3, 3, 3 }, { "grey1", 3, 3, 3 }, { "gray2", 5, 5, 5 }, { "grey2", 5, 5, 5 }, { "gray3", 8, 8, 8 }, { "grey3", 8, 8, 8 }, { "gray4", 10, 10, 10 }, { "grey4", 10, 10, 10 }, { "gray5", 13, 13, 13 }, { "grey5", 13, 13, 13 }, { "gray6", 15, 15, 15 }, { "grey6", 15, 15, 15 }, { "gray7", 18, 18, 18 }, { "grey7", 18, 18, 18 }, { "gray8", 20, 20, 20 }, { "grey8", 20, 20, 20 }, { "gray9", 23, 23, 23 }, { "grey9", 23, 23, 23 }, { "gray10", 26, 26, 26 }, { "grey10", 26, 26, 26 }, { "gray11", 28, 28, 28 }, { "grey11", 28, 28, 28 }, { "gray12", 31, 31, 31 }, { "grey12", 31, 31, 31 }, { "gray13", 33, 33, 33 }, { "grey13", 33, 33, 33 }, { "gray14", 36, 36, 36 }, { "grey14", 36, 36, 36 }, { "gray15", 38, 38, 38 }, { "grey15", 38, 38, 38 }, { "gray16", 41, 41, 41 }, { "grey16", 41, 41, 41 }, { "gray17", 43, 43, 43 }, { "grey17", 43, 43, 43 }, { "gray18", 46, 46, 46 }, { "grey18", 46, 46, 46 }, { "gray19", 48, 48, 48 }, { "grey19", 48, 48, 48 }, { "gray20", 51, 51, 51 }, { "grey20", 51, 51, 51 }, { "gray21", 54, 54, 54 }, { "grey21", 54, 54, 54 }, { "gray22", 56, 56, 56 }, { "grey22", 56, 56, 56 }, { "gray23", 59, 59, 59 }, { "grey23", 59, 59, 59 }, { "gray24", 61, 61, 61 }, { "grey24", 61, 61, 61 }, { "gray25", 64, 64, 64 }, { "grey25", 64, 64, 64 }, { "gray26", 66, 66, 66 }, { "grey26", 66, 66, 66 }, { "gray27", 69, 69, 69 }, { "grey27", 69, 69, 69 }, { "gray28", 71, 71, 71 }, { "grey28", 71, 71, 71 }, { "gray29", 74, 74, 74 }, { "grey29", 74, 74, 74 }, { "gray30", 77, 77, 77 }, { "grey30", 77, 77, 77 }, { "gray31", 79, 79, 79 }, { "grey31", 79, 79, 79 }, { "gray32", 82, 82, 82 }, { "grey32", 82, 82, 82 }, { "gray33", 84, 84, 84 }, { "grey33", 84, 84, 84 }, { "gray34", 87, 87, 87 }, { "grey34", 87, 87, 87 }, { "gray35", 89, 89, 89 }, { "grey35", 89, 89, 89 }, { "gray36", 92, 92, 92 }, { "grey36", 92, 92, 92 }, { "gray37", 94, 94, 94 }, { "grey37", 94, 94, 94 }, { "gray38", 97, 97, 97 }, { "grey38", 97, 97, 97 }, { "gray39", 99, 99, 99 }, { "grey39", 99, 99, 99 }, { "gray40", 102, 102, 102 }, { "grey40", 102, 102, 102 }, { "gray41", 105, 105, 105 }, { "grey41", 105, 105, 105 }, { "gray42", 107, 107, 107 }, { "grey42", 107, 107, 107 }, { "gray43", 110, 110, 110 }, { "grey43", 110, 110, 110 }, { "gray44", 112, 112, 112 }, { "grey44", 112, 112, 112 }, { "gray45", 115, 115, 115 }, { "grey45", 115, 115, 115 }, { "gray46", 117, 117, 117 }, { "grey46", 117, 117, 117 }, { "gray47", 120, 120, 120 }, { "grey47", 120, 120, 120 }, { "gray48", 122, 122, 122 }, { "grey48", 122, 122, 122 }, { "gray49", 125, 125, 125 }, { "grey49", 125, 125, 125 }, { "gray50", 127, 127, 127 }, { "grey50", 127, 127, 127 }, { "gray51", 130, 130, 130 }, { "grey51", 130, 130, 130 }, { "gray52", 133, 133, 133 }, { "grey52", 133, 133, 133 }, { "gray53", 135, 135, 135 }, { "grey53", 135, 135, 135 }, { "gray54", 138, 138, 138 }, { "grey54", 138, 138, 138 }, { "gray55", 140, 140, 140 }, { "grey55", 140, 140, 140 }, { "gray56", 143, 143, 143 }, { "grey56", 143, 143, 143 }, { "gray57", 145, 145, 145 }, { "grey57", 145, 145, 145 }, { "gray58", 148, 148, 148 }, { "grey58", 148, 148, 148 }, { "gray59", 150, 150, 150 }, { "grey59", 150, 150, 150 }, { "gray60", 153, 153, 153 }, { "grey60", 153, 153, 153 }, { "gray61", 156, 156, 156 }, { "grey61", 156, 156, 156 }, { "gray62", 158, 158, 158 }, { "grey62", 158, 158, 158 }, { "gray63", 161, 161, 161 }, { "grey63", 161, 161, 161 }, { "gray64", 163, 163, 163 }, { "grey64", 163, 163, 163 }, { "gray65", 166, 166, 166 }, { "grey65", 166, 166, 166 }, { "gray66", 168, 168, 168 }, { "grey66", 168, 168, 168 }, { "gray67", 171, 171, 171 }, { "grey67", 171, 171, 171 }, { "gray68", 173, 173, 173 }, { "grey68", 173, 173, 173 }, { "gray69", 176, 176, 176 }, { "grey69", 176, 176, 176 }, { "gray70", 179, 179, 179 }, { "grey70", 179, 179, 179 }, { "gray71", 181, 181, 181 }, { "grey71", 181, 181, 181 }, { "gray72", 184, 184, 184 }, { "grey72", 184, 184, 184 }, { "gray73", 186, 186, 186 }, { "grey73", 186, 186, 186 }, { "gray74", 189, 189, 189 }, { "grey74", 189, 189, 189 }, { "gray75", 191, 191, 191 }, { "grey75", 191, 191, 191 }, { "gray76", 194, 194, 194 }, { "grey76", 194, 194, 194 }, { "gray77", 196, 196, 196 }, { "grey77", 196, 196, 196 }, { "gray78", 199, 199, 199 }, { "grey78", 199, 199, 199 }, { "gray79", 201, 201, 201 }, { "grey79", 201, 201, 201 }, { "gray80", 204, 204, 204 }, { "grey80", 204, 204, 204 }, { "gray81", 207, 207, 207 }, { "grey81", 207, 207, 207 }, { "gray82", 209, 209, 209 }, { "grey82", 209, 209, 209 }, { "gray83", 212, 212, 212 }, { "grey83", 212, 212, 212 }, { "gray84", 214, 214, 214 }, { "grey84", 214, 214, 214 }, { "gray85", 217, 217, 217 }, { "grey85", 217, 217, 217 }, { "gray86", 219, 219, 219 }, { "grey86", 219, 219, 219 }, { "gray87", 222, 222, 222 }, { "grey87", 222, 222, 222 }, { "gray88", 224, 224, 224 }, { "grey88", 224, 224, 224 }, { "gray89", 227, 227, 227 }, { "grey89", 227, 227, 227 }, { "gray90", 229, 229, 229 }, { "grey90", 229, 229, 229 }, { "gray91", 232, 232, 232 }, { "grey91", 232, 232, 232 }, { "gray92", 235, 235, 235 }, { "grey92", 235, 235, 235 }, { "gray93", 237, 237, 237 }, { "grey93", 237, 237, 237 }, { "gray94", 240, 240, 240 }, { "grey94", 240, 240, 240 }, { "gray95", 242, 242, 242 }, { "grey95", 242, 242, 242 }, { "gray96", 245, 245, 245 }, { "grey96", 245, 245, 245 }, { "gray97", 247, 247, 247 }, { "grey97", 247, 247, 247 }, { "gray98", 250, 250, 250 }, { "grey98", 250, 250, 250 }, { "gray99", 252, 252, 252 }, { "grey99", 252, 252, 252 }, { "gray100", 255, 255, 255 }, { "grey100", 255, 255, 255 }, { "DarkGrey", 169, 169, 169 }, { "DarkGray", 169, 169, 169 }, { "DarkBlue", 0, 0, 139 }, { "DarkCyan", 0, 139, 139 }, { "DarkMagenta", 139, 0, 139 }, { "DarkRed", 139, 0, 0 }, { "LightGreen", 144, 238, 144 }, { 0, 0, 0, 0 } }; ./swindow/SFontOTF.cpp0000644000175000017500000033514311053426375014654 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFontTTF.h" #include "swindow/STTables.h" #include "stoolkit/SString.h" #include "stoolkit/SExcept.h" /* * ntohl */ #ifndef USE_WINAPI #include #else #include #endif #include #include #include "stoolkit/SCluster.h" #define SD_BYTE unsigned char #define SD_CHAR signed char #define SD_USHORT unsigned short #define SD_SHORT signed short #define SD_ULONG unsigned int #define SD_LONG signed int #define SD_FWORD SD_SHORT #define SD_UFWORD SD_USHORT /* * If you have a font that has some substitution * and it is not supported you can get notified if * you set this to 1. */ #define PRINT_UNSUPPORTED 0 /* * For some (2) format the code is commented out * because there was no such font that had it, * Set this to 1 if you want to debug them. */ #define PRINT_UNDEBUGGED 0 /* * Recommended value 0 */ #define USE_UNTESTED_CODE 0 /* OTF */ static const SString SS_TB_GSUB("GSUB"); static const SString SS_TB_GPOS("GPOS"); static const SString SS_TB_GDEF("GDEF"); /*---------------------------------------------------------------------------- * True Type Font handling routines *--------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------- * kern: Kerning Table *--------------------------------------------------------------------------*/ typedef struct _kern_head_ms { SD_USHORT version; SD_USHORT nTables; } KERN_HEAD_MS; typedef struct _kern_subtable_ms { SD_USHORT version; SD_USHORT length; SD_USHORT coverage; } KERN_SUBTABLE_MS; /* format 0: horizontal */ typedef struct _kern_horizontal_ms { SD_USHORT nPairs; SD_USHORT searchRange; SD_USHORT entrySelector; SD_USHORT rangeShift; } KERN_HORIZONTAL_MS; typedef struct _kern_pairs_ms { SD_USHORT left; SD_USHORT right; SD_USHORT value; /* FWORD */ } KERN_PAIRS_MS; /*---------------------------------------------------------------------------- * Open Type Font handling routines *--------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------- * GSUB: Glyph Substitution Table *--------------------------------------------------------------------------*/ typedef struct _OTF_Feature { SD_USHORT offset; SD_USHORT count; SD_USHORT record[1]; } OTF_Feature; typedef struct _OTF_FeatureRecord { char tag[4]; SD_USHORT offset; } OTF_FeatureRecord; typedef struct _OTF_FeatureList { SD_USHORT count; OTF_FeatureRecord record[1]; } OTF_FeatureList; typedef struct _OTF_Lookup { SD_USHORT type; SD_USHORT flag; SD_USHORT count; SD_USHORT subtable[1]; } OTF_Lookup; typedef struct _OTF_LookupList { SD_USHORT count; SD_USHORT record[1]; } OTF_LookupList; typedef struct _OTF_RangeRecord { SD_USHORT start; SD_USHORT end; SD_USHORT index; } OTF_RangeRecord; typedef struct _OTF_CoverageFormat2 { SD_USHORT format; SD_USHORT count; OTF_RangeRecord record[1]; } OTF_CoverageFormat2; typedef struct _OTF_CoverageFormat1 { SD_USHORT format; SD_USHORT count; SD_USHORT id[1]; /* numerical order */ } OTF_CoverageFormat1; /* Just header */ typedef struct _OTF_CoverageFormat { SD_USHORT format; SD_USHORT count; } OTF_CoverageFormat; /* * IF I have more time I will debug this */ typedef struct _OTF_LangSys { SD_USHORT lookupOrder; /* 0 for 1.0 */ SD_USHORT reqFeatureIndex; SD_USHORT featureCount; SD_USHORT featureIndex[1]; /* or more - index in feature */ } OTF_LangSys; typedef struct _OTF_LangSysRecord { char tag[4]; SD_USHORT offsetFromScript; } OTF_LangSysRecord; typedef struct _OTF_Script { SD_USHORT defaultLangSys; /* may be 0 */ SD_USHORT langSysCount; OTF_LangSysRecord langSysRecord[1]; /* or more */ } OTF_Script; typedef struct _OTF_ScriptRecord { char tag[4]; SD_USHORT offset; } OTF_ScriptRecord; typedef struct _OTF_ScriptList { SD_USHORT scriptCount; OTF_ScriptRecord records[1]; } OTF_ScriptList; /* Table for Single Substitution */ /* Just header */ typedef struct _OTF_SingleSubstFormat { SD_USHORT format; SD_USHORT coverage; } OTF_SingleSubstFormat; typedef struct _OTF_SingleSubstFormat1 { SD_USHORT format; SD_USHORT coverage; SD_SHORT deltaGlyphID; } OTF_SingleSubstFormat1; typedef struct _OTF_SingleSubstFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT count; SD_USHORT substitute[1]; /* count */ } OTF_SingleSubstFormat2; /* Table for Multiple Substitution */ typedef struct _OTF_LigatureSusbstFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT count; SD_USHORT offset[1]; } OTF_LigatureSusbstFormat1; typedef struct _SubstLookupRecord { SD_USHORT sequenceIndex; /* Index into current sequence */ SD_USHORT lookupListIndex; /* Lookup to apply to that */ } SubstLookupRecord; /* Table for ChainContextSubstFormat3. They come in this order. */ typedef struct _OTF_ChainContextSubstFormat3_Backtrack { SD_USHORT format; SD_USHORT backtrackGlyphCount; SD_USHORT coverage[1]; /* real size: backtrackGlyphCount */ } OTF_ChainContextSubstFormat3_Backtrack; typedef struct _OTF_ChainContextSubstFormat3_Input { SD_USHORT inputGlyphCount; SD_USHORT coverage[1]; /* real size: inputGlyphCount */ } OTF_ChainContextSubstFormat3_Input; typedef struct _OTF_ChainContextSubstFormat3_Lookahead { SD_USHORT lookaheadGlyphCount; SD_USHORT coverage[1]; /* real size: lookadeadGlyphCount */ } OTF_ChainContextSubstFormat3_Lookahead; typedef struct _OTF_ChainContextSubstFormat3_Subst { SD_USHORT substGlyphCount; SubstLookupRecord substLookupRecord[1]; /* real size: substGlyphCount */ } OTF_ChainContextSubstFormat3_Subst; /* Table for ChainContextSubstFormat3. They come in this order. */ typedef struct _OTF_ChainContextSubstFormat2_Backtrack { SD_USHORT backtrackGlyphCount; SD_USHORT coverage[1]; /* real size: backtrackGlyphCount */ } OTF_ChainContextSubstFormat2_Backtrack; typedef struct _OTF_ChainContextSubstFormat2_Input { SD_USHORT inputGlyphCount; SD_USHORT coverage[1]; /* real size: inputGlyphCount - 1 */ } OTF_ChainContextSubstFormat2_Input; typedef struct _OTF_ChainContextSubstFormat2_Lookahead { SD_USHORT lookaheadGlyphCount; SD_USHORT coverage[1]; /* real size: lookadeadGlyphCount */ } OTF_ChainContextSubstFormat2_Lookahead; typedef struct _OTF_ChainContextSubstFormat2_Subst { SD_USHORT substGlyphCount; SubstLookupRecord substLookupRecord[1]; /* real size: substGlyphCount */ } OTF_ChainContextSubstFormat2_Subst; typedef struct _OTF_ChainSubClassSet { SD_USHORT chainSubClassRuleCnt; // Backtrack + input + lookahead + subst SD_USHORT chainSubClassRule[1]; // chainSubClassCnt. } OTF_ChainSubClassSet; typedef struct _OTF_SubClassRule { SD_USHORT glyphCount; SD_USHORT substCount; SD_USHORT clazz[1]; // size of glyphCount -1 // followed by SubstLookupRecord } OTF_SubClassRule; typedef struct _OTF_SubClassSet { SD_USHORT subClassRuleCnt; // Backtrack + input + lookahead + subst SD_USHORT subClassRule[1]; // chainSubClassCnt. } OTF_SubClassSet; typedef struct _OTF_ClassDefFormat1 { SD_USHORT format; // 1. SD_USHORT startGlyph; SD_USHORT glyphCount; SD_USHORT classValueArray[1]; // glyphCount } OTF_ClassDefFormat1; typedef struct _OTF_ClassRangeRecord { SD_USHORT startGlyph; SD_USHORT endGlyph; SD_USHORT classValue; } OTF_ClassRangeRecord; typedef struct _OTF_ClassDefFormat2 { SD_USHORT format; // 2. SD_USHORT classRangeCount; OTF_ClassRangeRecord classRangeRecord[1]; // classRangeCount } OTF_ClassDefFormat2; typedef struct _OTF_ChainContextSubstFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT backtrackClassDef; SD_USHORT inputClassDef; SD_USHORT lookaheadClassDef; SD_USHORT chainSubClassSetCnt; SD_USHORT chainSubClassSet[1]; // chainSubClassCnt. } OTF_ChainContextSubstFormat2; typedef struct _OTF_ContextSubstFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT classDef; SD_USHORT subClassSetCnt; SD_USHORT subClassSet[1]; // chainSubClassCnt. } OTF_ContextSubstFormat2; typedef struct _OTF_Ligature { SD_USHORT glyph; SD_USHORT count; SD_USHORT component[1]; } OTF_Ligature; typedef struct _OTF_LigatureSet { SD_USHORT count; SD_USHORT offset[1]; } OTF_LigatureSet; typedef struct _OTF_AlternateSet { SD_USHORT glyphCount; SD_USHORT alternate[1]; } OTF_AlternateSet; typedef struct _OTF_AlternateSubstFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT alternateCount; SD_USHORT alternateSet[1]; } OTF_AlternateSubstFormat1; typedef struct gsub_head { SD_ULONG version; SD_USHORT scriptList; SD_USHORT featureList; SD_USHORT lookupList; } GSUB_HEAD; /*---------------------------------------------------------------------------- * GDEF: Glyph Definition Table *--------------------------------------------------------------------------*/ typedef struct gdef_head { SD_ULONG version; SD_USHORT glyphClassDef; SD_USHORT attachList; SD_USHORT ligatureCaretList; SD_USHORT markAttachClassDef; } GDEF_HEAD; typedef struct _OTF_AttachPoint { SD_USHORT pointCount; SD_USHORT pointIndex[1]; } OTF_AttachPoint; typedef struct _OTF_AttachList { SD_USHORT coverage; SD_USHORT glyphCount; SD_USHORT attachPoint[1]; } OTF_AttachList; /*---------------------------------------------------------------------------- * GPOS: Glyph Positioning Table *--------------------------------------------------------------------------*/ typedef struct gpos_head { SD_ULONG version; SD_USHORT scriptList; SD_USHORT featureList; SD_USHORT lookupList; } GPOS_HEAD; /* * FIXME: I could not find any spec * I just guessed this much be the Achnor * Structure. */ typedef struct _OTF_Anchor { SD_USHORT format; /* this can define many formats */ SD_SHORT x; SD_SHORT y; /* till here is it format one */ SD_USHORT anchorPoint; /* index to glyph contour pint */ /* till here is it format two */ SD_USHORT xDeviceTable; /* index to device table can be null */ SD_USHORT yDeviceTable; /* index to device table can be null */ } OTF_Anchor; typedef struct _OTF_MarkRecord { SD_USHORT markClass; SD_USHORT markAnchor; /* offset from MarkArray */ } OTF_MarkRecord; typedef struct _OTF_MarkArray { SD_USHORT markCount; OTF_MarkRecord markRecord[1]; /* basecount */ } OTF_MarkArray; /* * FIXME: I am using this for Mark2Recored too. * Spec does not say it is good or bad */ typedef struct _OTF_BaseRecord { SD_USHORT baseAnchor[1]; /* This is not one but class size */ } OTF_BaseRecord; /* * FIXME: I am using this for d Mark2Array too. * Spec does not say it is good or bad */ typedef struct _OTF_BaseArray { SD_USHORT baseCount; OTF_BaseRecord baseRecord[1]; /* basecount */ } OTF_BaseArray; /* Table for Mark to Base Substitution */ typedef struct _OTF_MarkBasePosFormat1 { SD_USHORT format; SD_USHORT markCoverage; SD_USHORT baseCoverage; SD_USHORT classCount; SD_USHORT markArray; /* offset from beginning of the table */ SD_USHORT baseArray; /* offset from beginning of the table */ } OTF_MarkBasePosFormat1; /* Table for Mark to Mark Substitution */ typedef struct _OTF_MarkMarkPosFormat1 { SD_USHORT format; SD_USHORT mark1Coverage; SD_USHORT mark2Coverage; SD_USHORT classCount; SD_USHORT mark1Array; /* offset from beginning of the table */ SD_USHORT mark2Array; /* offset from beginning of the table */ } OTF_MarkMarkPosFormat1; /* Pair Adjustment */ typedef struct _OTF_PairAdjustmentFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT valueFormat1; SD_USHORT valueFormat2; SD_USHORT pairSetCount; SD_USHORT pairSetOffset; /* offset from beginning of the table. */ } OTF_PairAdjustmentFormat1; /* Chained Adjustment */ typedef struct _OTF_ChainedAdjustmentFormat1 { SD_USHORT format; SD_USHORT coverage; SD_USHORT chainPosRuleSetCount; SD_USHORT chainPosRuleSet[1]; /* offset from beginning of the table. */ } OTF_ChainedAdjustmentFormat1; /* Chained Adjustment */ typedef struct _OTF_ChainedAdjustmentFormat2 { SD_USHORT format; } OTF_ChainedAdjustmentFormat2; // We will support only these #define SD_X_PLACEMENT 1 #define SD_Y_PLACEMENT 2 #define SD_X_ADVANCE 4 #define SD_Y_ADVANCE 8 typedef struct _OTF_Class2Record { SD_SHORT value1; SD_SHORT value2; } OTF_Class2Record; typedef struct _OTF_Class1Record { OTF_Class2Record class2Record[1]; /* Class2Count */ } OTF_Class1Record; /* Pair Adjustment */ typedef struct _OTF_PairAdjustmentFormat2 { SD_USHORT format; SD_USHORT coverage; SD_USHORT valueFormat1; SD_USHORT valueFormat2; SD_USHORT classDef1; SD_USHORT classDef2; SD_USHORT class1Count; SD_USHORT class2Count; OTF_Class1Record classRecord[1]; // class1Count. } OTF_PairAdjustmentFormat2; /* structure for a sequence of basic Jamos and the corresponding Jamo cluster used in 'mslvt' TTF's.*/ #define MAX_BAS_JAMOS 3 // max. # of basic jamos forming a cluster jamo typedef struct { SS_UCS4 seq[MAX_BAS_JAMOS]; SS_UCS4 liga; } _OTF_mslvtJamo; static unsigned int getOTFFeature (OTF_Feature* feat, OTF_LookupList* lookuplist, unsigned int substtype, const SString& fontname, const SS_GlyphIndex* chars, unsigned int length, SS_GlyphIndex* out); static unsigned int doChainContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doAlternateSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doSingleSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static unsigned int doLigatureSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar); static bool processGPOSFeature (const SString& name, OTF_Feature* feat, int substtype, OTF_LookupList* lookupList, const SS_GlyphIndex* gv, unsigned int gvsize, int* xpos, int* ypos); static bool doChainedPos (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static bool doPairAdjustment (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static bool doMarkToBase (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static bool doMarkToMark (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos); static OTF_LangSys* getNextOTFLanguageSystem (const SString fontname, GSUB_HEAD* gsubh, const SString& _script, unsigned int* from); static SD_USHORT getCoverageIndex (OTF_CoverageFormat* coverageFormat, SS_GlyphIndex gi); // OTF_ClassDefFormat1, // OTF_ClassDefFromat2 static SD_USHORT glyphClass (char* def, SD_USHORT glyph); static int get_jamo_class2(SS_UCS4 uc); static int jamo_srch_repl(_OTF_mslvtJamo *cluster, SS_UCS4 *in, int *len); static bool mslvtXform (const SS_UCS4* in, SS_UCS4* med, int *len); /** * return true if this font can do OTF ligatures */ bool SFontTTF::hasOTFLigatures() { return (tables[SS_TB_GSUB] != 0); } /** * Use feature 1 Single Substitution and substitute glyph * @param feature is one of *
          *
        • init
        • *
        • isol
        • *
        • fina
        • *
        • medi
        • *
        * @return 0 on failure. */ SS_GlyphIndex SFontTTF::substituteOTFGlyph (const char* feature, SS_GlyphIndex g) { SS_GlyphIndex out = 0; unsigned int ligs = getOTFLigature ("arab", feature, &g, 1, &out, 1); if (ligs) return out; ligs = getOTFLigature ("syrc", feature, &g, 1, &out, 1); if (ligs) { return out; } return 0; } SString debugTag ; /** * Opent Type fonts may have GSUB tables that define * Glyph substitutions. * @param _script is the script code of the table *
          *
        • arab - Arabic
        • *
        • deva - Devanagari
        • *
        • beng - Bengali
        • *
        • guru - Gurmukhi
        • *
        • gujr - Gujarati
        • *
        • orya - Oriya
        • *
        • taml - Tamil
        • *
        • telu - Telugu
        • *
        • knda - Kannada
        • *
        • mlym - Malayalam
        • *
        • sinh - Shinhala
        • *
        • jamo - Jamo (Hangul)
        • *
        • thai - Thai
        • *
        • lao - Lao (padded with space at the end)
        • *
        • tibt - Tibetan
        • *
        * @param featurelist is a comma separated list of features. * If the list starts with '!', like in '!blws,psts" it * means that the features (blws,psts) should not be used. * @param chars are the input glyphs. * @param liglen is the length of chars array * @param out is an array for output glyphs. * for all substitutions it is size 1 except for * Chaining Context Substitution, where the size of this * array must be liglen. * @param substtype in one of *
          *
        • 1 Single Substitution
        • *
        • 4 Lingature Substitution
        • *
        • 6 Chaining Context Substitution
        • *
        * @return 0 if no substitutions have been made or * length of ligatures substitued. * The result is always 1 glyph except for Chaining Context Substitution * where is is always liglen. */ unsigned int SFontTTF::getOTFLigature (const char* _script, const char* _featurelist, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* out, unsigned int substtype) { *out = 0; GSUB_HEAD* gsubh = (GSUB_HEAD*) tables[SS_TB_GSUB]; if (gsubh == 0 || ntohl (gsubh->version) != 0x00010000) { return 0; } bool nonfeature = false; SBinHashtable features; if (_featurelist != 0 && _featurelist[0] != 0 && _featurelist[1] != 0) { SString f = SString(_featurelist); if (f[0] == '!') { nonfeature = true; f.remove (0); } SStringVector v(f); for (unsigned int i=0; ifeatureList); OTF_FeatureList* featureList = (OTF_FeatureList*) ((SD_BYTE*)gsubh + ofeat); SD_USHORT fcount = ntohs (featureList->count); int olookup = ntohs(gsubh->lookupList); OTF_LookupList* lookupList = (OTF_LookupList*) ((SD_BYTE*)gsubh + olookup); if (_script == 0) { for (unsigned int i=0; i< fcount; i++) { SString tag (featureList->record[i].tag, 4); debugTag = tag; SD_USHORT loffset = ntohs (featureList->record[i].offset); /* got or not omitted */ if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); unsigned int ind = getOTFFeature (feat, lookupList, substtype, name, chars, liglen, out); if (ind) { return ind; } } return 0; } unsigned int next = 0; SString script (_script); OTF_LangSys* lsys = 0; while ((lsys = getNextOTFLanguageSystem (name, gsubh, script, &next))!=0) { SD_USHORT fcount = ntohs (lsys->featureCount); /* index lookupList through lsys->featureIndex */ SD_USHORT lorder = ntohs (lsys->lookupOrder); if (lorder != 0) { static bool warned = false; if (!warned) { fprintf (stderr, "LanguageSystem lookup order %u not supported", (unsigned int) lorder); fprintf (stderr, " in %*.*s.\n", SSARGS(name)); warned = true; } continue; } for (unsigned int i=0; i< fcount; i++) { unsigned int index = ntohs (lsys->featureIndex[i]) ; SString tag (featureList->record[index].tag, 4); if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } SD_USHORT loffset = ntohs (featureList->record[index].offset); /* tags will have mystic ligature names and stuff like that - don't check */ OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); unsigned int ind = getOTFFeature (feat, lookupList, substtype, name, chars, liglen, out); if (ind) { return ind; } } } return 0; } /** * @param feat is the feature to go through * @param lookuplist is the list of lookups. * @param substtype is 4 for ligature substituion. * @param name is the fontname - used in error printouts. * @param chars is the glyphindeces in a ligature * @param liglen is the glyphindeces count * @param outchar is the output glyph. For chaining substitution * is should be at least legth of liglen. * @return the number of glyphs that got substituted */ static unsigned int getOTFFeature (OTF_Feature* feat, OTF_LookupList* lookupList, unsigned int substtype, const SString& name, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT nfcount = ntohs (feat->count); for (unsigned int j=0; jrecord[j]); SD_USHORT lrec = ntohs (lookupList->record[rec]); OTF_Lookup * ltable = (OTF_Lookup*)((char*)lookupList + lrec); SD_USHORT type = ntohs (ltable->type); #if PRINT_UNSUPPORTED if (type !=1 && type != 4 && type != 6 && type != 5) { fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u.\n", SSARGS(name), type); } #endif if (type != substtype) continue; unsigned int ret = 0; switch (type) { case 1: ret = doSingleSubstitution (name, ltable, chars, liglen, outchar); break; case 4: ret = doLigatureSubstitution (name, ltable, chars, liglen, outchar); break; case 5: ret = doContextSubstitution (name, lookupList, ltable, chars, liglen, outchar); break; case 6: ret = doChainContextSubstitution (name, lookupList, ltable, chars, liglen, outchar); } if (ret) return ret; } return 0; } /** * Perform Substitution type 6, Chaining Contextual Substitution. * @param name is the name of this font. * @param lookuplist is the whole lookuplist * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length must be liglen. */ static unsigned int doContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); SD_USHORT *pformat = (SD_USHORT*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (*pformat); // Class Based Context Subst. if (cformat == 2) { OTF_ContextSubstFormat2 *f2 = (OTF_ContextSubstFormat2*) ( (char*)ltable + offset); SD_USHORT coffset = ntohs (f2->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)f2 + coffset); SD_USHORT cdoffset = ntohs (f2->classDef); SD_USHORT ccount = ntohs (f2->subClassSetCnt); for (unsigned int i=0; isubClassSet[i]); if (coffset == 0) continue; OTF_SubClassSet * sset = (OTF_SubClassSet*) ((char*) f2 + coffset); SD_USHORT rcount = ntohs (sset->subClassRuleCnt); for (unsigned int j=0; jsubClassRule[j]); OTF_SubClassRule *srule = (OTF_SubClassRule*) ((char*) sset + roffset); SD_USHORT gcount = ntohs(srule->glyphCount); if (gcount == 0) { continue; } SD_USHORT scount = ntohs(srule->substCount); SubstLookupRecord * slrec = (SubstLookupRecord*) &srule->clazz [gcount-1]; if ((unsigned int)gcount>(unsigned int) liglen) { continue; } //---------------------------------------------------------------- // Context - 2 //---------------------------------------------------------------- unsigned int index = 0; SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex == 0xffff) { continue; } bool ok = true; /* cont */ for (unsigned int ii=1; iiclazz[ii-1]); SD_USHORT c2 = glyphClass((char*)f2 + cdoffset, chars[index++]); if (c2==0xffff || c2 != c1) { ok = false; break; } } if (!ok) continue; unsigned int inlength = gcount; unsigned int m; for (m=0; msequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int slen=0; SS_GlyphIndex g; unsigned int at = (unsigned int) sqi; // Sanity if (at > inlength) break; unsigned int lsize = inlength - at; switch (mtype) { case 1: slen = doSingleSubstitution (name, mltable, &outchar[at], lsize, &g); break; case 3: slen = doAlternateSubstitution (name, mltable, &outchar[at], lsize, &g); break; case 4: slen = doLigatureSubstitution (name, mltable, &outchar[at], lsize, &g); break; } if (slen == 0) continue; if (slen > lsize) continue; outchar[at] = g; /* move down */ for (unsigned int v=at+1; v+slen-1 < liglen; v++) { outchar[v] = outchar[v+slen-1]; } inlength = inlength - slen +1; } return inlength + liglen - gcount; } } return 0; } else // todo other stuff if ther is such a font. { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 5, cformat); #endif } } return 0; } /** * Perform Substitution type 6, Chaining Contextual Substitution. * @param name is the name of this font. * @param lookuplist is the whole lookuplist * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length must be liglen. */ static unsigned int doChainContextSubstitution (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); SD_USHORT *pformat = (SD_USHORT*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (*pformat); // Coverage Based Chaining Context Glyph Substitution if (cformat == 3) { OTF_ChainContextSubstFormat3_Backtrack *bformat = (OTF_ChainContextSubstFormat3_Backtrack*) ( (char*)ltable + offset); SD_USHORT bcount = ntohs(bformat->backtrackGlyphCount); OTF_ChainContextSubstFormat3_Input * iformat = (OTF_ChainContextSubstFormat3_Input*) &bformat->coverage[bcount]; SD_USHORT icount = ntohs(iformat->inputGlyphCount); OTF_ChainContextSubstFormat3_Lookahead * lformat = (OTF_ChainContextSubstFormat3_Lookahead*) &iformat->coverage[icount]; SD_USHORT lcount = ntohs(lformat->lookaheadGlyphCount); OTF_ChainContextSubstFormat3_Subst * sformat = (OTF_ChainContextSubstFormat3_Subst*) &lformat->coverage[lcount]; SD_USHORT scount = ntohs(sformat->substGlyphCount); if ((unsigned int)bcount+icount+lcount>(unsigned int) liglen) { continue; } bool ok = true; unsigned int index = 0; /* Backtrack */ for (unsigned int bi=0; bicoverage[bcount-bi-1]); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)bformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex==0xffff) { ok = false; break; } } if (!ok) continue; /* Input */ for (unsigned int ii=0; iicoverage[ii]); /* this is also measured from bformat */ OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)bformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex==0xffff) { ok = false; break; } } if (!ok) continue; /* Lookahead */ for (unsigned int li=0; licoverage[li]); /* this is also measured from bformat */ OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)bformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex==0xffff) { ok = false; break; } } if (!ok) continue; // OTF_ChainContextSubstFormat3_Subst sformat unsigned int m; unsigned int om=0; unsigned int im=0; for (m=0; m<(unsigned int)bcount; m++) { outchar[om++] = chars[im++]; } for (m=0; m<(unsigned int)icount; m++) { outchar[om+m] = chars[im++]; } /* Substitute from outchar[om..scount] - assume scount < icount */ unsigned int inlength = icount; for (m=0; m<(unsigned int)scount; m++) { SubstLookupRecord* sr = (SubstLookupRecord*) &sformat->substLookupRecord[m]; SD_USHORT sqi = ntohs (sr->sequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); /* * Perform substitution loi at outchar[om+sqi]. * If is is just a single glyph substitution * replace outchar[om+sqi]. * If n glyphs are made into 1 then * reduce inlen with n-1, and move data. */ SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int slen=0; SS_GlyphIndex g; unsigned int at = (unsigned int) sqi; // Sanity. if (at > inlength) break; unsigned int lsize = inlength - at; switch (mtype) { case 1: slen = doSingleSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 3: slen = doAlternateSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 4: slen = doLigatureSubstitution (name, mltable, &outchar[om+at], lsize, &g); } if (slen == 0) continue; if (slen > lsize) continue; outchar[om+at] = g; /* move down */ for (unsigned int v=at+1; v+slen-1 < inlength; v++) { outchar[om+v] = outchar[om+v+slen-1]; } inlength = inlength - slen +1; } om += inlength; /* do it till the end of ligature. */ for (m=(unsigned int)bcount+icount; m<(unsigned int)liglen; m++) { outchar[om++] = chars[im++]; } return om; } // Class Based Chaining Context Glyph Substitution else if (cformat == 2) { OTF_ChainContextSubstFormat2 *f2 = (OTF_ChainContextSubstFormat2*) ( (char*)ltable + offset); SD_USHORT coffset = ntohs (f2->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)f2 + coffset); SD_USHORT bcoffset = ntohs (f2->backtrackClassDef); SD_USHORT icoffset = ntohs (f2->inputClassDef); SD_USHORT lcoffset = ntohs (f2->lookaheadClassDef); SD_USHORT ccount = ntohs (f2->chainSubClassSetCnt); for (unsigned int i=0; ichainSubClassSet[i]); if (coffset == 0) continue; OTF_ChainSubClassSet * sset = (OTF_ChainSubClassSet*) ((char*) f2 + coffset); SD_USHORT rcount = ntohs (sset->chainSubClassRuleCnt); for (unsigned int j=0; jchainSubClassRule[j]); OTF_ChainContextSubstFormat2_Backtrack *bformat = (OTF_ChainContextSubstFormat2_Backtrack*) ((char*) sset + roffset); SD_USHORT bcount = ntohs(bformat->backtrackGlyphCount); OTF_ChainContextSubstFormat2_Input * iformat = (OTF_ChainContextSubstFormat2_Input*) &bformat->coverage[bcount]; SD_USHORT icount = ntohs(iformat->inputGlyphCount); if (icount == 0) { continue; } OTF_ChainContextSubstFormat2_Lookahead * lformat = (OTF_ChainContextSubstFormat2_Lookahead*) &iformat->coverage[icount-1]; SD_USHORT lcount = ntohs(lformat->lookaheadGlyphCount); OTF_ChainContextSubstFormat2_Subst * sformat = (OTF_ChainContextSubstFormat2_Subst*) &lformat->coverage[lcount]; SD_USHORT scount = ntohs(sformat->substGlyphCount); if ((unsigned int)bcount+icount+lcount>(unsigned int) liglen) { continue; } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- bool ok = true; unsigned int index = 0; /* Backtrack */ for (unsigned int bi=0; bicoverage[bcount-bi-1]); if (bcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + bcoffset, chars[index++]); if (clazz==0xffff || clazz != backtrack) { ok = false; break; } } if (!ok) continue; SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex == 0xffff) { continue; } /* Input */ for (unsigned int ii=1; iicoverage[ii-1]); if (icoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + icoffset, chars[index++]); if (clazz==0xffff || clazz != input) { ok = false; break; } } if (!ok) continue; /* Lookahead */ for (unsigned int li=0; licoverage[li]); if (lcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + lcoffset, chars[index++]); if (clazz==0xffff || clazz != lookahead) { ok = false; break; } } if (!ok) continue; // OTF_ChainContextSubstFormat3_Subst sformat unsigned int m; unsigned int om=0; unsigned int im=0; for (m=0; m<(unsigned int)bcount; m++) { outchar[om++] = chars[im++]; } for (m=0; m<(unsigned int)icount; m++) { outchar[om+m] = chars[im++]; } /* Substitute from outchar[om..scount] - assume scount < icount */ unsigned int inlength = icount; for (m=0; m<(unsigned int)scount; m++) { SubstLookupRecord* sr = (SubstLookupRecord*) &sformat->substLookupRecord[m]; SD_USHORT sqi = ntohs (sr->sequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); /* * Perform substitution loi at outchar[om+sqi]. * If is is just a single glyph substitution * replace outchar[om+sqi]. * If n glyphs are made into 1 then * reduce inlen with n-1, and move data. */ SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int slen=0; SS_GlyphIndex g; unsigned int at = (unsigned int) sqi; // Sanity. if (at > inlength) break; unsigned int lsize = inlength - at; switch (mtype) { case 1: slen = doSingleSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 3: slen = doAlternateSubstitution (name, mltable, &outchar[om+at], lsize, &g); break; case 4: slen = doLigatureSubstitution (name, mltable, &outchar[om+at], lsize, &g); } if (slen == 0) continue; if (slen > lsize) continue; outchar[om+at] = g; /* move down */ for (unsigned int v=at+1; v+slen-1 < inlength; v++) { outchar[om+v] = outchar[om+v+slen-1]; } inlength = inlength - slen +1; } om += inlength; /* do it till the end of ligature. */ for (m=(unsigned int)bcount+icount; m<(unsigned int)liglen; m++) { outchar[om++] = chars[im++]; } return om; } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 6, cformat); #endif } } return 0; } /** * Perform Substitution type 1, Single Substitution. * @param name is the name of this font. * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length is 1. */ static unsigned int doSingleSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_SingleSubstFormat *lformat = (OTF_SingleSubstFormat*) ((char*)ltable + offset); SD_USHORT coffset = ntohs (lformat->coverage); /* This should be less than ccount after coverage is found */ OTF_CoverageFormat* coverageFormat = (OTF_CoverageFormat*) ((char*)lformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (coverageFormat, chars[0]); if (coverageIndex == 0xffff) { continue; /* no coverage */ } SD_USHORT cformat = ntohs (lformat->format); if (cformat == 1) { OTF_SingleSubstFormat1* lformat1 = (OTF_SingleSubstFormat1*) ((char*)ltable + offset); SD_SHORT deltagid = ntohs (lformat1->deltaGlyphID); return (chars[0] + deltagid); } else if (cformat == 2) { OTF_SingleSubstFormat2* lformat2 = (OTF_SingleSubstFormat2*) ((char*)ltable + offset); SD_USHORT count2 = ntohs (lformat2->count); if (coverageIndex >= count2) continue; SD_USHORT glyph = ntohs (lformat2->substitute[coverageIndex]); *outchar = (SS_GlyphIndex) glyph; return 1; } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 1, cformat); #endif } } return 0; } /** * Perform Substitution type 3, Altenate Substitution. * @param name is the name of this font. * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length is 1. */ static unsigned int doAlternateSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_AlternateSubstFormat1 *lformat = (OTF_AlternateSubstFormat1*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (lformat->format); if (cformat==1) { SD_USHORT acount = ntohs (lformat->alternateCount); SD_USHORT coffset = ntohs (lformat->coverage); /* This should be less than ccount after coverage is found */ OTF_CoverageFormat* coverageFormat = (OTF_CoverageFormat*) ((char*)lformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (coverageFormat, chars[0]); if (coverageIndex >= acount) { continue; /* no coverage */ } SD_USHORT aoffset = htons (lformat->alternateSet[coverageIndex]); OTF_AlternateSet* aset = (OTF_AlternateSet*) ((char*)lformat + aoffset); SD_USHORT gcount = htons (aset->glyphCount); if (gcount > 0) { SD_USHORT ch = htons (aset->alternate[0]); //fprintf (stderr, "XXXX Alternate %04X -> %04X\n", chars[0], ch); *outchar = (SS_GlyphIndex) ch; return 1; } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 3, cformat); #endif } } return 0; } /** * Perform Substitution type 4, Ligature Substitution. * @param name is the name of this font. * @param ltable is this lookup table. * @param chars is the input characters. * @param liglen is the length of the input characters. * @param outchar is the output array. The length is 1. */ static unsigned int doLigatureSubstitution (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, SS_GlyphIndex* outchar) { SD_USHORT ltcount = ntohs (ltable->count); // HELP Is this good or bad? // if ((flag & 0x0e)!=0) continue; for (unsigned int k=0; ksubtable[k]); OTF_LigatureSusbstFormat1 *lformat = (OTF_LigatureSusbstFormat1*) ((char*)ltable + offset); SD_USHORT cformat = ntohs (lformat->format); if (cformat != 1) { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GSUB type:%u format=%u.\n", SSARGS(name), 4, cformat); #endif continue; } SD_USHORT coffset = ntohs (lformat->coverage); /* get the coverage */ SD_USHORT ccount = ntohs (lformat->count); /* This should be less than ccount after coverage is found */ OTF_CoverageFormat* coverageFormat = (OTF_CoverageFormat*) ((char*)lformat + coffset); SD_USHORT coverageIndex = getCoverageIndex (coverageFormat, chars[0]); if (coverageIndex >= ccount) { continue; /* no coverage */ } /* don't loop - get coverageIndex */ SD_USHORT cinoffset = ntohs (lformat->offset[coverageIndex]); OTF_LigatureSet *lset = (OTF_LigatureSet *) ((SD_BYTE*) lformat + cinoffset); SD_USHORT count = ntohs (lset->count); for (unsigned int m=0; moffset[m]); OTF_Ligature* lig = (OTF_Ligature*) ((SD_BYTE*) lset + offset); SD_USHORT compcount = ntohs (lig->count); if (compcount > liglen) { continue; } bool found = true; for (unsigned int n=0; n+1component[n]); if (chars[n+1] != component) found = false; } if (found) { SD_USHORT glyph = ntohs (lig->glyph); *outchar = (SS_GlyphIndex) glyph; return (unsigned int) compcount; } } } return 0; } /** * Get a coverage index * @param coverageFormat is the header format */ static SD_USHORT getCoverageIndex (OTF_CoverageFormat* coverageFormat, SS_GlyphIndex gi) { SD_USHORT coverageIndex = 0xffff; /* go through coverage tables - they should be sorted */ SD_USHORT format = ntohs (coverageFormat->format); if (format==1) { OTF_CoverageFormat1* format1 = (OTF_CoverageFormat1*) coverageFormat; SD_USHORT gcount = ntohs (format1->count); /* Do binary search here set coverageIndex */ unsigned int top, bottom, mid; top = gcount; bottom = 0; unsigned int c0 = gi; SD_USHORT id = c0 +1; while (top > bottom) { mid = (top+bottom)/2; id = ntohs (format1->id[mid]); if (c0 == id) { top = mid; break; } if (c0 < id) { top = mid; continue; } bottom = mid + 1; } if (top < gcount && c0 == id) coverageIndex = top; } else if (format==2) { OTF_CoverageFormat2* format2 = (OTF_CoverageFormat2*) coverageFormat; /* I could not find any format2 fonts-this part is untested */ SD_USHORT gcount = ntohs (format2->count); /* Do binary search here. */ for (unsigned int l=0; lrecord[l].index); SD_USHORT start = ntohs (format2->record[l].start); SD_USHORT end = ntohs (format2->record[l].end); if (gi >= start && gi <= end) { coverageIndex = index + gi - start; break; } } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED GSUB coverage format=%u.\n", format); #endif } return coverageIndex; } // OTF_ClassDefFormat1, // OTF_ClassDefFromat2 SD_USHORT glyphClass (char* def, SD_USHORT glyph) { OTF_ClassDefFormat1* f1 = (OTF_ClassDefFormat1*) def; SD_USHORT format = htons (f1->format); SD_USHORT rvle = 0xffff; if (format == 1) { SD_USHORT startGlyph = htons (f1->startGlyph); SD_USHORT glyphCount = htons (f1->glyphCount); if (glyph < startGlyph || glyph+glyphCount >= glyph) return rvle; rvle = htons (f1->classValueArray[glyph-startGlyph]); return rvle; } else if (format == 2) { OTF_ClassDefFormat2* f2 = (OTF_ClassDefFormat2*) def; SD_USHORT classRangeCount = htons (f2->classRangeCount); for (unsigned int i=0; iclassRangeRecord[i]; SD_USHORT startGlyph = htons(rec->startGlyph); SD_USHORT endGlyph = htons(rec->endGlyph); if (glyph >= startGlyph && glyph <= endGlyph) { rvle = htons (rec->classValue); return rvle; } } return rvle; } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED glyph-class format=%u.\n", format); #endif } return rvle; } /** * Iterate to the next language system. * @param gsubh is the GSUB_HEAD header * @param _script is the OTF standard name of script. * like "taml" * @patam from is the input output iterator counter * - first it is needed to be set to zero. */ static OTF_LangSys* getNextOTFLanguageSystem (const SString fontname, GSUB_HEAD* gsubh, const SString& script, unsigned int* from) { /* Look for script. */ int offset = ntohs(gsubh->scriptList); OTF_ScriptList* scriptList = (OTF_ScriptList*) ((SD_BYTE*)gsubh + offset); SD_USHORT numscripts = ntohs (scriptList->scriptCount); for (unsigned int i=*from; irecords[i].tag, 4); SD_USHORT sl = ntohs (scriptList->records[i].offset); /* we found the script */ if (tag==script) { OTF_Script* stable = (OTF_Script*) ((char*)scriptList + sl); SD_USHORT defaultLangsys = ntohs (stable->defaultLangSys); SD_USHORT langSysCount = ntohs (stable->langSysCount); OTF_LangSysRecord* langsysrec = 0; OTF_LangSys *lsys = 0 ; /* attention count includes default */ if (defaultLangsys == 0 && langSysCount > 0) { langsysrec = &stable->langSysRecord[0]; } else if (langSysCount > 0 && defaultLangsys != 0) { langsysrec = (OTF_LangSysRecord*) ((char*) stable + defaultLangsys); } /* Locate the langsys table */ if (langsysrec) { SString ltag (langsysrec->tag, 4); SD_USHORT lsysoffset = ntohs (langsysrec->offsetFromScript); lsys = (OTF_LangSys*) ((char*) stable + lsysoffset); } else if (defaultLangsys != 0) { lsys = (OTF_LangSys*) ((char*) stable + defaultLangsys) ; } SD_USHORT lorder = ntohs (lsys->lookupOrder); if (lorder != 0) { static bool fixed = false; /* get a langsys record that works */ for (unsigned int sg = 0; sglangSysRecord[sg]; SD_USHORT lsysoffset = ntohs (lr->offsetFromScript); OTF_LangSys* ls = (OTF_LangSys*) ((char*) stable + lsysoffset); SD_USHORT lorder = ntohs (ls->lookupOrder); if (lorder == 0) { lsys = ls; #if PRINT_UNSUPPORTED if (!fixed) { fprintf (stderr, "Fixed broken default langsys table in %*.*s. (%4.4s %u/%u)\n", SSARGS(fontname), lr->tag, (unsigned int) sg, (unsigned int) langSysCount); } #endif } fixed = true; } } *from = i+1; return lsys; } } *from = numscripts; return 0; } #define LC_TMPPOS 0xf000 // temp. block for leading consonants #define VO_TMPPOS 0xf100 // temp. block for vowels #define TC_TMPPOS 0xf200 // temp. block for trailinng consonants #define LC_OFFSET (LC_TMPPOS-0x1100) #define VO_OFFSET (VO_TMPPOS-0x1160) #define TC_OFFSET (TC_TMPPOS-0x11a8) /** * The map from sequences of leading consonants forming consonant clusters * not encoded in U+1100 block to temporary code points in the 0xf000 block */ static _OTF_mslvtJamo LC_Clusters[]= { {{0xf005, 0xf000, 0xf000}, 0xf06a}, // U+1105 U+1100 U+1100 => lc # 0x6a {{0xf005, 0xf003, 0xf003}, 0xf06c}, // U+1105 U+1103 U+1103 => lc # 0x6c {{0xf005, 0xf007, 0xf007}, 0xf06f}, // U+1105 U+1107 U+1107 => lc # 0x6f {{0xf005, 0xf007, 0xf00b}, 0xf070}, // U+1105 U+1107 U+110b => lc # 0x70 {{0xf007, 0xf009, 0xf010}, 0xf077}, // U+1107 U+1109 U+1110 => lc # 0x77 {{0xf009, 0xf009, 0xf007}, 0xf07a}, // U+1109 U+1109 U+1107 => lc # 0x7a {{0xf00c, 0xf00c, 0xf012}, 0xf07d}, // U+110c U+110c U+1112 => lc # 0x7d {{0xf005, 0xf001, 0x0000}, 0xf06a}, // U+1105 U+1101 => lc # 0x6a {{0xf005, 0xf004, 0x0000}, 0xf06c}, // U+1105 U+1104 => lc # 0x6c {{0xf005, 0xf008, 0x0000}, 0xf06f}, // U+1105 U+1108 => lc # 0x6f {{0xf005, 0xf02b, 0x0000}, 0xf070}, // U+1105 U+112b => lc # 0x70 {{0xf00a, 0xf007, 0x0000}, 0xf07a}, // U+110a U+1107 => lc # 0x7a {{0xf00d, 0xf012, 0x0000}, 0xf07d}, // U+110d U+1112 => lc # 0x7d {{0xf000, 0xf003, 0x0000}, 0xf060}, // U+1100 U+1103 => lc # 0x60 {{0xf002, 0xf009, 0x0000}, 0xf061}, // U+1102 U+1109 => lc # 0x61 {{0xf002, 0xf00c, 0x0000}, 0xf062}, // U+1102 U+110c => lc # 0x62 {{0xf002, 0xf012, 0x0000}, 0xf063}, // U+1102 U+1112 => lc # 0x63 {{0xf003, 0xf005, 0x0000}, 0xf064}, // U+1103 U+1105 => lc # 0x64 {{0xf003, 0xf006, 0x0000}, 0xf065}, // U+1103 U+1106 => lc # 0x65 {{0xf003, 0xf007, 0x0000}, 0xf066}, // U+1103 U+1107 => lc # 0x66 {{0xf003, 0xf009, 0x0000}, 0xf067}, // U+1103 U+1109 => lc # 0x67 {{0xf003, 0xf00c, 0x0000}, 0xf068}, // U+1103 U+110c => lc # 0x68 {{0xf005, 0xf000, 0x0000}, 0xf069}, // U+1105 U+1100 => lc # 0x69 {{0xf005, 0xf003, 0x0000}, 0xf06b}, // U+1105 U+1103 => lc # 0x6b {{0xf005, 0xf006, 0x0000}, 0xf06d}, // U+1105 U+1106 => lc # 0x6d {{0xf005, 0xf007, 0x0000}, 0xf06e}, // U+1105 U+1107 => lc # 0x6e {{0xf005, 0xf009, 0x0000}, 0xf071}, // U+1105 U+1109 => lc # 0x71 {{0xf005, 0xf00c, 0x0000}, 0xf072}, // U+1105 U+110c => lc # 0x72 {{0xf005, 0xf00f, 0x0000}, 0xf073}, // U+1105 U+110f => lc # 0x73 {{0xf006, 0xf000, 0x0000}, 0xf074}, // U+1106 U+1100 => lc # 0x74 {{0xf006, 0xf003, 0x0000}, 0xf075}, // U+1106 U+1103 => lc # 0x75 {{0xf006, 0xf009, 0x0000}, 0xf076}, // U+1106 U+1109 => lc # 0x76 {{0xf007, 0xf00f, 0x0000}, 0xf078}, // U+1107 U+110f => lc # 0x78 {{0xf007, 0xf012, 0x0000}, 0xf079}, // U+1107 U+1112 => lc # 0x79 {{0xf00b, 0xf005, 0x0000}, 0xf07b}, // U+110b U+1105 => lc # 0x7b {{0xf00b, 0xf012, 0x0000}, 0xf07c}, // U+110b U+1112 => lc # 0x7c {{0xf010, 0xf010, 0x0000}, 0xf07e}, // U+1110 U+1110 => lc # 0x7e {{0xf011, 0xf012, 0x0000}, 0xf07f}, // U+1111 U+1112 => lc # 0x7f {{0xf012, 0xf009, 0x0000}, 0xf080}, // U+1112 U+1109 => lc # 0x80 {{0xf059, 0xf059, 0x0000}, 0xf081}, // U+1159 U+1159 => lc # 0x81 {{0, 0, 0}, 0} }; /** * The map from sequences of medial vowels forming vowel clusters * not encoded in U+1100 block to temporary code points in the 0xf100 block */ static _OTF_mslvtJamo VO_Clusters[]= { {{0xf109, 0xf103, 0xf115}, 0xf147}, // U+1169 U+1163 U+1175 => vowel # 0x47 {{0xf109, 0xf10e, 0xf13e}, 0xf149}, // U+1169 U+116e U+119e => vowel # 0x49 {{0xf10d, 0xf101, 0xf115}, 0xf14b}, // U+116d U+1161 U+1175 => vowel # 0x4b {{0xf10e, 0xf115, 0xf115}, 0xf14e}, // U+116e U+1175 U+1175 => vowel # 0x4e {{0xf112, 0xf101, 0xf115}, 0xf14f}, // U+1172 U+1161 U+1175 => vowel # 0x4f {{0xf113, 0xf105, 0xf115}, 0xf153}, // U+1173 U+1165 U+1175 => vowel # 0x53 {{0xf115, 0xf103, 0xf109}, 0xf155}, // U+1175 U+1163 U+1169 => vowel # 0x55 {{0xf115, 0xf103, 0xf115}, 0xf156}, // U+1175 U+1163 U+1175 => vowel # 0x56 {{0xf115, 0xf107, 0xf115}, 0xf158}, // U+1175 U+1167 U+1175 => vowel # 0x58 {{0xf115, 0xf109, 0xf13e}, 0xf159}, // U+1175 U+1169 U+119e => vowel # 0x59 {{0xf115, 0xf115, 0xf115}, 0xf15c}, // U+1175 U+1175 U+1175 => vowel # 0x5c {{0xf13e, 0xf105, 0xf115}, 0xf15e}, // U+119e U+1165 U+1175 => vowel # 0x5e {{0xf101, 0xf113, 0x0000}, 0xf143}, // U+1161 U+1173 => vowel # 0x43 {{0xf103, 0xf10e, 0x0000}, 0xf144}, // U+1163 U+116e => vowel # 0x44 {{0xf107, 0xf103, 0x0000}, 0xf145}, // U+1167 U+1163 => vowel # 0x45 {{0xf109, 0xf103, 0x0000}, 0xf146}, // U+1169 U+1163 => vowel # 0x46 {{0xf109, 0xf104, 0x0000}, 0xf147}, // U+1169 U+1164 => vowel # 0x47 {{0xf109, 0xf107, 0x0000}, 0xf148}, // U+1169 U+1167 => vowel # 0x48 {{0xf10d, 0xf101, 0x0000}, 0xf14a}, // U+116d U+1161 => vowel # 0x4a {{0xf10d, 0xf102, 0x0000}, 0xf14b}, // U+116d U+1162 => vowel # 0x4b {{0xf10d, 0xf105, 0x0000}, 0xf14c}, // U+116d U+1165 => vowel # 0x4c {{0xf10e, 0xf107, 0x0000}, 0xf14d}, // U+116e U+1167 => vowel # 0x4d {{0xf112, 0xf102, 0x0000}, 0xf14f}, // U+1172 U+1162 => vowel # 0x4f {{0xf112, 0xf109, 0x0000}, 0xf150}, // U+1172 U+1169 => vowel # 0x50 {{0xf113, 0xf101, 0x0000}, 0xf151}, // U+1173 U+1161 => vowel # 0x51 {{0xf113, 0xf105, 0x0000}, 0xf152}, // U+1173 U+1165 => vowel # 0x52 {{0xf113, 0xf106, 0x0000}, 0xf153}, // U+1173 U+1166 => vowel # 0x53 {{0xf113, 0xf109, 0x0000}, 0xf154}, // U+1173 U+1169 => vowel # 0x54 {{0xf115, 0xf104, 0x0000}, 0xf156}, // U+1175 U+1164 => vowel # 0x56 {{0xf115, 0xf107, 0x0000}, 0xf157}, // U+1175 U+1167 => vowel # 0x57 {{0xf115, 0xf10d, 0x0000}, 0xf15a}, // U+1175 U+116d => vowel # 0x5a {{0xf115, 0xf112, 0x0000}, 0xf15b}, // U+1175 U+1172 => vowel # 0x5b {{0xf13e, 0xf101, 0x0000}, 0xf15d}, // U+119e U+1161 => vowel # 0x5d {{0xf13e, 0xf106, 0x0000}, 0xf15e}, // U+119e U+1166 => vowel # 0x5e {{0, 0, 0}, 0} }; /** * The map from sequences of trailing consonants forming consonant clusters * not encoded in U+1100 block to temporary code points in the 0xf200 block */ static _OTF_mslvtJamo TC_Clusters[]= { {{0xf206, 0xf206, 0xf210}, 0xf25b}, // U+11ae U+11ae U+11b8 => tc # 0x5b {{0xf206, 0xf212, 0xf200}, 0xf25e}, // U+11ae U+11ba U+11a8 => tc # 0x5e {{0xf207, 0xf200, 0xf200}, 0xf262}, // U+11af U+11a8 U+11a8 => tc # 0x62 {{0xf207, 0xf200, 0xf21a}, 0xf263}, // U+11af U+11a8 U+11c2 => tc # 0x63 {{0xf207, 0xf207, 0xf217}, 0xf264}, // U+11af U+11af U+11bf => tc # 0x64 {{0xf207, 0xf20f, 0xf21a}, 0xf265}, // U+11af U+11b7 U+11c2 => tc # 0x65 {{0xf207, 0xf210, 0xf206}, 0xf266}, // U+11af U+11b8 U+11ae => tc # 0x66 {{0xf207, 0xf210, 0xf219}, 0xf267}, // U+11af U+11b8 U+11c1 => tc # 0x67 {{0xf207, 0xf251, 0xf21a}, 0xf269}, // U+11af U+11f9 U+11c2 => tc # 0x69 {{0xf20f, 0xf203, 0xf203}, 0xf26c}, // U+11b7 U+11ab U+11ab => tc # 0x6c {{0xf20f, 0xf210, 0xf212}, 0xf26e}, // U+11b7 U+11b8 U+11ba => tc # 0x6e {{0xf210, 0xf207, 0xf219}, 0xf271}, // U+11b8 U+11af U+11c1 => tc # 0x71 {{0xf210, 0xf212, 0xf206}, 0xf274}, // U+11b8 U+11ba U+11ae => tc # 0x74 {{0xf212, 0xf210, 0xf214}, 0xf278}, // U+11ba U+11b8 U+11bc => tc # 0x78 {{0xf212, 0xf212, 0xf200}, 0xf279}, // U+11ba U+11ba U+11a8 => tc # 0x79 {{0xf212, 0xf212, 0xf206}, 0xf27a}, // U+11ba U+11ba U+11ae => tc # 0x7a {{0xf243, 0xf210, 0xf214}, 0xf281}, // U+11eb U+11b8 U+11bc => tc # 0x81 {{0xf215, 0xf210, 0xf210}, 0xf289}, // U+11bd U+11b8 U+11b8 => tc # 0x89 {{0xf215, 0xf215, 0xf215}, 0xf28a}, // U+11bd U+11bd U+11bd => tc # 0x8a {{0xf200, 0xf203, 0x0000}, 0xf252}, // U+11a8 U+11ab => tc # 0x52 {{0xf200, 0xf210, 0x0000}, 0xf253}, // U+11a8 U+11b8 => tc # 0x53 {{0xf200, 0xf216, 0x0000}, 0xf254}, // U+11a8 U+11be => tc # 0x54 {{0xf200, 0xf217, 0x0000}, 0xf255}, // U+11a8 U+11bf => tc # 0x55 {{0xf200, 0xf21a, 0x0000}, 0xf256}, // U+11a8 U+11c2 => tc # 0x56 {{0xf203, 0xf203, 0x0000}, 0xf257}, // U+11ab U+11ab => tc # 0x57 {{0xf203, 0xf207, 0x0000}, 0xf258}, // U+11ab U+11af => tc # 0x58 {{0xf203, 0xf216, 0x0000}, 0xf259}, // U+11ab U+11be => tc # 0x59 {{0xf206, 0xf206, 0x0000}, 0xf25a}, // U+11ae U+11ae => tc # 0x5a {{0xf206, 0xf210, 0x0000}, 0xf25c}, // U+11ae U+11b8 => tc # 0x5c {{0xf206, 0xf212, 0x0000}, 0xf25d}, // U+11ae U+11ba => tc # 0x5d {{0xf206, 0xf215, 0x0000}, 0xf25f}, // U+11ae U+11bd => tc # 0x5f {{0xf206, 0xf216, 0x0000}, 0xf260}, // U+11ae U+11be => tc # 0x60 {{0xf206, 0xf218, 0x0000}, 0xf261}, // U+11ae U+11c0 => tc # 0x61 {{0xf207, 0xf201, 0x0000}, 0xf262}, // U+11af U+11a9 => tc # 0x62 {{0xf207, 0xf248, 0x0000}, 0xf268}, // U+11af U+11f0 => tc # 0x68 {{0xf207, 0xf214, 0x0000}, 0xf26a}, // U+11af U+11bc => tc # 0x6a {{0xf20f, 0xf203, 0x0000}, 0xf26b}, // U+11b7 U+11ab => tc # 0x6b {{0xf20f, 0xf20f, 0x0000}, 0xf26d}, // U+11b7 U+11b7 => tc # 0x6d {{0xf20f, 0xf215, 0x0000}, 0xf26f}, // U+11b7 U+11bd => tc # 0x6f {{0xf210, 0xf206, 0x0000}, 0xf270}, // U+11b8 U+11ae => tc # 0x70 {{0xf210, 0xf20f, 0x0000}, 0xf272}, // U+11b8 U+11b7 => tc # 0x72 {{0xf210, 0xf210, 0x0000}, 0xf273}, // U+11b8 U+11b8 => tc # 0x73 {{0xf210, 0xf215, 0x0000}, 0xf275}, // U+11b8 U+11bd => tc # 0x75 {{0xf210, 0xf216, 0x0000}, 0xf276}, // U+11b8 U+11be => tc # 0x76 {{0xf212, 0xf20f, 0x0000}, 0xf277}, // U+11ba U+11b7 => tc # 0x77 {{0xf212, 0xf23e, 0x0000}, 0xf278}, // U+11ba U+11e6 => tc # 0x78 {{0xf213, 0xf200, 0x0000}, 0xf279}, // U+11bb U+11a8 => tc # 0x79 {{0xf213, 0xf206, 0x0000}, 0xf27a}, // U+11bb U+11ae => tc # 0x7a {{0xf212, 0xf243, 0x0000}, 0xf27b}, // U+11ba U+11eb => tc # 0x7b {{0xf212, 0xf215, 0x0000}, 0xf27c}, // U+11ba U+11bd => tc # 0x7c {{0xf212, 0xf216, 0x0000}, 0xf27d}, // U+11ba U+11be => tc # 0x7d {{0xf212, 0xf218, 0x0000}, 0xf27e}, // U+11ba U+11c0 => tc # 0x7e {{0xf212, 0xf21a, 0x0000}, 0xf27f}, // U+11ba U+11c2 => tc # 0x7f {{0xf243, 0xf210, 0x0000}, 0xf280}, // U+11eb U+11b8 => tc # 0x80 {{0xf243, 0xf23e, 0x0000}, 0xf281}, // U+11eb U+11e6 => tc # 0x81 {{0xf214, 0xf20f, 0x0000}, 0xf282}, // U+11bc U+11b7 => tc # 0x82 {{0xf214, 0xf212, 0x0000}, 0xf283}, // U+11bc U+11ba => tc # 0x83 {{0xf214, 0xf21a, 0x0000}, 0xf284}, // U+11bc U+11c2 => tc # 0x84 {{0xf248, 0xf200, 0x0000}, 0xf285}, // U+11f0 U+11a8 => tc # 0x85 {{0xf248, 0xf217, 0x0000}, 0xf286}, // U+11f0 U+11bf => tc # 0x86 {{0xf248, 0xf21a, 0x0000}, 0xf287}, // U+11f0 U+11c2 => tc # 0x87 {{0xf215, 0xf210, 0x0000}, 0xf288}, // U+11bd U+11b8 => tc # 0x88 {{0xf219, 0xf212, 0x0000}, 0xf28b}, // U+11c1 U+11ba => tc # 0x8b {{0xf219, 0xf218, 0x0000}, 0xf28c}, // U+11c1 U+11c0 => tc # 0x8c { {0, 0, 0}, 0} }; /** * transforms the content of in[] to a more convenient form * for mapping to glyphs of mslvt fonts and store the result in med[]. * More specifically, sequences of basic Jamos for which * precomposed Jamo glyphs are available in mslvt TTF's are replaced * with Jamo cluster code points defined in PUA. In findJamoGlyph(), * these PUA code points are converted to glyph code points * in mslvt TTF's which are in turn converted to glyph indices. * Also, put a new length in *len after the replacement. */ static bool mslvtXform (const SS_UCS4* in, SS_UCS4* med, int *len) { int i; for (i=0; i < *len; i++) switch(getJamoClass(in[i])) { case SD_JAMO_L: med[i]=in[i]+LC_OFFSET; break; case SD_JAMO_V: med[i]=in[i]+VO_OFFSET; break; case SD_JAMO_T: med[i]=in[i]+TC_OFFSET; break; default: med[i]=in[i]; } for (i=0; LC_Clusters[i].seq[0]; i++) jamo_srch_repl(&LC_Clusters[i],med,len); for (i=0; VO_Clusters[i].seq[0]; i++) jamo_srch_repl(&VO_Clusters[i],med,len); for (i=0; TC_Clusters[i].seq[0]; i++) jamo_srch_repl(&TC_Clusters[i],med,len); return true; } /** * search for cluster->seq in 'in' and replace it with cluster->liga in place. * returns the difference in length between before and after the replacement. */ static int jamo_srch_repl(_OTF_mslvtJamo *cluster, SS_UCS4 *in, int *len) { int i,j; bool matched=false; int mstart=0; int mlen=0; for (i=0; i<*len; i++) { matched=true; for (j=0; i+j < *len && jseq[j] ;j++) if ( in[i+j] != cluster->seq[j] ) { matched=false; break; } if ( i+j==*len && jseq[j] ) matched=false; if (matched) { mstart=i; mlen=j; break; } } if ( !matched ) return 0; in[mstart]=cluster->liga; for (i=mstart+mlen; i<*len; i++) in[i-mlen+1]=in[i]; *len=*len-mlen+1; return mlen-1; } /** * return jamo_class of shifted code points for extended Jamos * used in mslvt fonts. */ static int get_jamo_class2(SS_UCS4 uc) { switch(uc & 0xff00) { case LC_TMPPOS: return SD_JAMO_L; case VO_TMPPOS: return SD_JAMO_V; case TC_TMPPOS: return SD_JAMO_T; default: return SD_JAMO_X; } } /** * This is mslvt.otp from Jin-Hwan Cho . * Extended by Jungshik Shin to support * additional Jamo clusters not encoded in U+1100 Jamo block * as precomposed Jamos. */ /** * table of choseong(Leading consonant) - till 115f * followed by 34 additional consonant clusters for which separate glyphs * exist in O*.ttf fonts */ static SS_UCS4 tableL[130] = { 1, 2, 4, 12, 14, 20, 36, 42, 46, 62, 70, 85,100,102,108,113, 114,116,120, 5, 6, 7, 8, 13, 23, 26, 34, 35, 39, 41, 43, 44, 45, 47, 48, 49, 50, 51, 52, 54, 55, 57, 58, 60, 61, 63, 64, 65, 66, 67, 68, 69, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 89, 90, 91, 92, 93, 94, 95, 96, 97, 99,101,104,105, 106,107,109,110,111,112,117,119,122,123, 0, 0, 0, 0, 0, 0, 3, 9, 10, 11, 15, 16, 17, 18, 19, 21, 22, 24, 25, 27, 28, 29, 30, 31, 32, 33, 37, 38, 40, 53, 56, 59, 71, 88, 98,103,115,118, 121, 124 }; /** * table of jungseong(Vowel) - 0x1160 (Vowel filler) excluded. * Glyphs for 28 additional vowel clusters (not given separate * code points in U+1100 block) are available in O*ttf fonts. * Total count: 94 = 66 (in U+1100 block) + 28 (extra.) */ static SS_UCS4 tableV[94] = { 0, 4, 5, 9, 10, 14, 15, 19, 20, 21, 22, 32, 33, 42, 45, 47, 51, 53, 63, 70, 72, 1, 2, 6, 7, 11, 12, 13, 17, 18, 25, 26, 28, 29, 31, 36, 37, 39, 40, 41, 43, 44, 46, 49, 50, 54, 56, 57, 58, 59, 61, 62, 68, 69, 71, 73, 74, 79, 82, 84, 86, 87, 89, 91, 92, 93, 3, 8, 16, 23, 24, 27, 30, 34, 35, 38, 48, 52, 55, 60, 64, 65, 66, 67, 75, 76, 77, 78, 80, 81, 83, 85, 88, 90 }; /** * table of jongseong(Trailing consonant). * glyphs for 59 additional trailing consonant clusters (not given separate * code points in U+1100 blocks) are available in O*ttf fonts. * Total count: 141 = 82 (in U+1100 block) + 59 (extra.) */ static SS_UCS4 tableT[141] = { 0, 1, 5, 10, 17, 20, 21, 32, 33, 42, 46, 52, 57, 58, 59, 63, 78, 84, 91, 98,109,123,127,128,129,130,135, 3, 6, 11, 13, 15, 16, 19, 22, 25, 35, 37, 38, 39, 40, 43, 44, 48, 50, 51, 53, 54, 56, 60, 64, 67, 69, 71, 72, 73, 75, 76, 77, 80, 88, 89, 90, 92, 93, 94, 96,106,110,111,114,115,117,119,120,131,134,136,137,138, 139,140, 2, 4, 7, 8, 9, 12, 14, 18, 23, 24, 26, 27, 28, 29, 30, 31, 34, 36, 41, 45, 47, 49, 55, 61, 62, 65, 66, 68, 70, 74, 79, 81, 82, 83, 85, 86, 87, 95, 97, 99,100,101,102,103,104,105, 107,108,112,113,116,118,121,122,124,125,126,132,133 }; // Which of six glyphs to use for choseong(L) depends on // the following vowel and whether or not jongseong(T) is present // in a syllable. //shape Number of choseong(L) w.r.t. jungseong(V) without jongseong(T) static SS_UCS4 tableNLV[94] = { 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1, 0, 0, 3, 3, 3, 0, 2, 1, 2, 1, 2, 3, 3, 0, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 3, 3, 3, 2, 3, 0, 0, 0, 3, 3, 2, 0, 2, 2 }; // shape Number of choseong(L) w.r.t. jungseong(V) with jongseong(T) static SS_UCS4 tableNLVT[94] = { 1, 1, 1, 1, 1, 1, 1, 1, 5, 4, 4, 4, 5, 5, 4, 4, 4, 5, 5, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 4, 4, 4, 5, 4, 4, 4, 4, 4, 5, 4, 4, 4, 4, 4, 5, 4, 5, 5, 4, 1, 1, 4, 4, 4, 1, 5, 4, 5, 4, 5, 1, 1, 1, 1, 1, 1, 5, 4, 4, 4, 4, 4, 4, 5, 4, 4, 4, 5, 4, 1, 1, 1, 4, 4, 5, 1, 4, 4 }; // shape Number of jongseong(T) w.r.t. jungseong(V) // Which of four glyphs to use for jongseong(T) depends on // the preceding vowel. static SS_UCS4 tableNTV[94] = { 0, 2, 0, 2, 1, 2, 1, 2, 3, 0, 2, 1, 3, 3, 1, 2, 1, 3, 3, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 0, 2, 1, 3, 1, 0, 2, 1, 2, 3, 0, 1, 2, 1, 2, 3, 1, 3, 3, 1, 2, 2, 1, 1, 1, 1, 3, 1, 3, 1, 3, 0, 1, 0, 0, 0, 2, 3, 0, 2, 1, 1, 2, 2, 3, 0, 0, 0, 3, 0, 2, 2, 2, 1, 0, 1, 2, 1, 1 }; /** * This is a JAMO specific code. It tries to find and cache * Jamo. * @param in are the input jamos * @param len is the length of input jamos * @param out is filled with JAMO glyphIndeces * @return true if JAMO conversion was successful */ bool SFontTTF::findJamoGlyphs (const SS_UCS4* in, unsigned int len, SV_GlyphIndex* out) { if (hardWire != SS_MSLVT) return false; if (len < 2) #if 0 { // deal with irregular cases of stand-alone Jamos int jclass=getJamoClass(in[0]); if (jclass == SD_JAMO_X) return false; SS_UCS4 result; switch (jclass) { case SD_JAMO_L: result = tableL[in[0]- 0x1100]*6 + 0x4e00; break; case SD_JAMO_V: result = tableV[in[0]- 0x1161]*2 + 0x5102; break; case SD_JAMO_T: result = tableT[in[0]- 0x11a8]*4 + 0x5207; break; default: return false; } SUniMap umap = charEncoder; if (!umap.isOK()) { return false; } SS_GlyphIndex gi = findGlyph(result); if (gi==0) { out->clear(); return false; } out->append (gi); return true; } #else return false; #endif /* VC++ 6.0 does not like this. */ SS_UCS4* med = new SS_UCS4[len]; CHECK_NEW (med); if ( ! mslvtXform(in,med,(int *) &len) ) { delete med; return false; } SS_UCS4 tone = med[len-1]; if (tone == 0x302e || tone == 0x302f) { if (len > 4 || len < 3) { delete med; return false; } } else { tone = 0; if (len > 3) { delete med; return false; } } bool is3 = (tone==0 && len==3) || (tone!=0 && len==4); int jclass0 = get_jamo_class2(med[0]); int jclass1 = get_jamo_class2(med[1]); int jclass2 = is3 ? get_jamo_class2(med[2]) : SD_JAMO_T; if (jclass0 != SD_JAMO_L || jclass1 != SD_JAMO_V || jclass2 != SD_JAMO_T) { delete med; return false; } SV_UCS4 result; /* For TTF tone comes last */ if (tone) { result.append (tone); } // Now that med[0..2] are identified as L,V, and T, it's safe to // shift them back to U+1100 block although their ranges overlap // each other. med[0]-=LC_OFFSET; med[1]-=VO_OFFSET; med[2]-=TC_OFFSET; if (med[1] == 0x1160) /* filler */ { if (!is3) { result.append (tableL[med[0]-0x1100]*6 + 0x4e00); } else /* len == 3 */ { result.append (tableL[med[0]-0x1100]*6 + 0x4e05); result.append (tableT[med[2]-0x11a8]*4 + 0x5207); } } else { if (!is3) { result.append (tableL[med[0]-0x1100]*6 + tableNLV[med[1]-0x1161] + 0x4e00); result.append (tableV[med[1]-0x1161]*2 + 0x5102); } else /* len == 3 */ { result.append (tableL[med[0]-0x1100]*6 + tableNLVT[med[1]-0x1161] + 0x4e00); result.append (tableV[med[1]-0x1161]*2 + 0x5103); result.append (tableT[med[2]-0x11a8] * 4 + tableNTV[med[1]-0x1161] + 0x5204); } } for (unsigned int i=0; iclear(); return false; } out->append (gi); } return true; } /** * Find the glyphs for south indian scirpts * and return them. Put the positions of characters * in mark2BaseList under key. * @param scriptcode is one of SD_LAO, SD_THAI, SD_TIBETAN * @param in are the input characters * @param len is the length of input characters * @param out is filled with glyphIndeces * @return true if conversion was successful */ bool SFontTTF::findSouthIndicGlyphs (const SString& key, unsigned int scriptcode, const char* script, const SS_UCS4* chars, unsigned int liglen, SV_GlyphIndex* out) { /* find all glyphs */ unsigned int i; SS_GlyphIndex* gv = new SS_GlyphIndex[liglen]; CHECK_NEW (gv); for (i=0; iappend (gv[0]); delete gv; return true; } /* find the positions of these glyphs */ storeMarkPositions (key, gv, liglen); /* copy glyphs */ for (i=0; iappend (gv[i]); } delete gv; return true; } /** * Store the positions of MarkToBase substitutions. * @param key is the key for this form. * such a key can be constructed this way: * SString key ((char*)&in, sizeof (SS_UCS4)); * @param gv is the glyph array * @param liglen is the length of the array */ bool SFontTTF::storeMarkPositions (const SString& key, const SS_GlyphIndex* gv, unsigned int liglen) { SV_INT positions; bool haspos = false; int cxy = 0; int ix = 0; int iy = 0; int currentw = 0; positions.append (currentw); /* x = 0; y = 0 */ unsigned int i; SS_GlyphIndex theBase = gv[0]; for (i=1; i 0xfffe) { /* bad luck - it usually wont happen unless the cluster is really long */ currentw = 0xfffe; ix = 0xfffe; } #if DEBUG_POSITIONS fprintf (stderr, "PUT MarkToBase[%u.%u]=%d,%d.\n", gv[i-1], gv[i], ix, iy); #endif cxy = (iy << 16) & 0xffff0000; cxy = cxy | (ix & 0xffff); positions.append (cxy); } /* adjust mark to marks */ theBase = gv[0]; currentw = 0; for (i=1; i%u]=%d,%d\n", gv[i-1], gv[i], ix, iy); #endif int mxy = positions[positions.size()-1]; haspos = true; int pix = mxy & 0xffff; if (pix > 0x7fff) pix -= 0x10000 ; int piy = (mxy >> 16) & 0xffff; if (piy > 0x7fff) piy -= 0x10000; /* * Modify mark position. * TODO: Do we need to shift everything that comes after mark? */ ix = pix + ix; iy = piy + iy; /* store positions in compressed format */ if (ix > 0xfffe) { /* bad luck - it usually wont happen unless the cluster is really long */ currentw = 0xfffe; ix = 0xfffe; } cxy = (iy << 16) & 0xffff0000; cxy = cxy | (ix & 0xffff); positions.replace (i, cxy); haspos = true; } } /* save positions */ if (haspos) { mark2BaseList.put (key, positions); #if DEBUG_POSITIONS for (unsigned int k = 0; k 0x7fff) xdiff -= 0x10000 ; int ydiff = (xydiff >> 16) & 0xffff; if (ydiff > 0x7fff) ydiff -= 0x10000; fprintf (stderr, "PutPosition[%u]=%d,%d\n", k, xdiff, ydiff); } #endif } /* fallback to kerning */ /* width will be found */ char2Width.put (key, currentw); return haspos; } /** * @param baseGl is the base glyph * @param markGlyph is the mark that needs to get positioned. * @param ix holds the x offset for the mark. * @param iy holds the y offset for the mark. */ void SFontTTF::getOTFMarkToBase (SS_GlyphIndex baseGl, SS_GlyphIndex markGlyph, int* ix, int* iy) { SS_GlyphIndex gv[2]; gv[0] = baseGl; gv[1] = markGlyph; /* Relative to base */ int x[2]; x[1] = 0; int y[2]; y[1] = 0; getPositions (4, gv, 2, 0, 0, x, y); /* 4 is mark-to-base */ *ix = x[1]; *iy = y[1]; return; } /** * @param m0 is the mark glyph * @param m1 is the mark that needs to get positioned. * @param ix holds the x offset for the mark. * @param iy holds the y offset for the mark. */ void SFontTTF::getOTFMarkToMark (SS_GlyphIndex m0, SS_GlyphIndex m1, int* ix, int* iy) { SS_GlyphIndex gv[2]; gv[0] = m0; gv[1] = m1; /* Relative to mark */ int x[2]; x[1] = 0; int y[2]; y[1] = 0; getPositions (6, gv, 2, 0, 0, x, y); /* 4 is mark-to-mark */ *ix = x[1]; *iy = y[1]; return; } /** * Get the positions * @param basewidth is used only if advanced is set. */ bool SFontTTF::getPositions(int feature, const SS_GlyphIndex* gv, unsigned int gvsize, const char* _featurelist, const char* _script, int* xpos, int* ypos) { GPOS_HEAD* gposh = (GPOS_HEAD*) tables[SS_TB_GPOS]; if (gposh == 0 || ntohl (gposh->version) != 0x00010000) { return false; } /* filtering features */ bool nonfeature = false; SBinHashtable features; if (_featurelist != 0 && _featurelist[0] != 0 && _featurelist[1] != 0) { SString f = SString(_featurelist); if (f[0] == '!') { nonfeature = true; f.remove (0); } SStringVector v(f); for (unsigned int i=0; ifeatureList); OTF_FeatureList* featureList = (OTF_FeatureList*) ((SD_BYTE*)gposh + ofeat); SD_USHORT fcount = ntohs (featureList->count); int olookup = ntohs(gposh->lookupList); OTF_LookupList* lookupList = (OTF_LookupList*) ((SD_BYTE*)gposh + olookup); //SD_USHORT lcount = ntohs (lookupList->count); if (_script == 0) { for (unsigned int i=0; i< fcount; i++) { SString tag (featureList->record[i].tag, 4); debugTag = tag; SD_USHORT loffset = ntohs (featureList->record[i].offset); /* got or not omitted */ if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); if (processGPOSFeature(name, feat, feature, lookupList, gv, gvsize, xpos, ypos)) return true; } return false; } unsigned int next = 0; /* iterator - just in case we have same lang twice */ SString script (_script); OTF_LangSys* lsys = 0; /* HACK! getNextOTFLanguageSystem is using GSUB_HEAD* scriptList only this is why we can cast our GPOS* to GSUB* */ while ((lsys = getNextOTFLanguageSystem (name, (GSUB_HEAD*) gposh, script, &next))!=0) { SD_USHORT fcount = ntohs (lsys->featureCount); /* index lookupList through lsys->featureIndex */ SD_USHORT lorder = ntohs (lsys->lookupOrder); if (lorder != 0) { static bool warned = false; if (!warned) { #if PRINT_UNSUPPORTED fprintf (stderr, "LanguageSystem lookup order %u not supported", (unsigned int) lorder); fprintf (stderr, " in %*.*s.\n", SSARGS(name)); #endif warned = true; } continue; } for (unsigned int i=0; i< fcount; i++) { unsigned int index = ntohs (lsys->featureIndex[i]) ; SString tag (featureList->record[index].tag, 4); if (_featurelist) { if (nonfeature) { if (features.get(tag)) continue; } else { if (!features.get(tag)) continue; } } SD_USHORT loffset = ntohs (featureList->record[index].offset); /* tags will have mystic ligature names and stuff like that - don't check */ OTF_Feature* feat = (OTF_Feature*) ((char*)featureList+loffset); if (processGPOSFeature(name, feat, feature, lookupList, gv, gvsize, xpos, ypos)) return true; } } return false; } /** * @param name is the fontname - used in error printouts. * @param lookuplist is the list of lookups. * @param substtype is 4 for MarkToBase substituion. * @param gv is the glyphindeces for positions * @param gvsize is the size of gv * @param xpos is the x position array same size as gv * @param ypos is the y position array same size as gv * @return true if positions were gained , and fill in * xpos and ypos in that case. */ static bool processGPOSFeature (const SString& name, OTF_Feature* feat, int substtype, OTF_LookupList* lookupList, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { /* faster */ if (gvsize<2) return false; SD_USHORT nfcount = ntohs (feat->count); for (unsigned int j=0; jrecord[j]); SD_USHORT lrec = ntohs (lookupList->record[rec]); OTF_Lookup * ltable = (OTF_Lookup*)((char*)lookupList + lrec); SD_USHORT type = ntohs (ltable->type); if (type != substtype) { if (type != 2 && type != 4 && type != 6 && type != 8) { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u.\n", SSARGS(name), type); #endif } continue; } bool ret = false; switch (type) { case 2: ret = doPairAdjustment (name, ltable, gvarray, gvsize, xpos, ypos); break; case 4: ret = doMarkToBase (name, ltable, gvarray, gvsize, xpos, ypos); break; case 6: ret = doMarkToMark (name, ltable, gvarray, gvsize, xpos, ypos); break; case 8: ret = doChainedPos (name, lookupList, ltable, gvarray, gvsize, xpos, ypos); } if (ret) return ret; } return false; } static bool doChainedPos (const SString& name, OTF_LookupList* lookupList, OTF_Lookup* ltable, const SS_GlyphIndex* chars, unsigned int liglen, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_ChainedAdjustmentFormat1 *lformat1 = (OTF_ChainedAdjustmentFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat==2) { // Same as chain context substitution - reuse the code. // Ugly, but works. OTF_ChainContextSubstFormat2 *f2 = (OTF_ChainContextSubstFormat2*) ( (char*)ltable + offset); SD_USHORT coffset = ntohs (f2->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*)f2 + coffset); SD_USHORT bcoffset = ntohs (f2->backtrackClassDef); SD_USHORT icoffset = ntohs (f2->inputClassDef); SD_USHORT lcoffset = ntohs (f2->lookaheadClassDef); SD_USHORT ccount = ntohs (f2->chainSubClassSetCnt); for (unsigned int i=0; ichainSubClassSet[i]); if (coffset == 0) continue; OTF_ChainSubClassSet * sset = (OTF_ChainSubClassSet*) ((char*) f2 + coffset); SD_USHORT rcount = ntohs (sset->chainSubClassRuleCnt); for (unsigned int j=0; jchainSubClassRule[j]); OTF_ChainContextSubstFormat2_Backtrack *bformat = (OTF_ChainContextSubstFormat2_Backtrack*) ((char*) sset + roffset); SD_USHORT bcount = ntohs(bformat->backtrackGlyphCount); OTF_ChainContextSubstFormat2_Input * iformat = (OTF_ChainContextSubstFormat2_Input*) &bformat->coverage[bcount]; SD_USHORT icount = ntohs(iformat->inputGlyphCount); if (icount == 0) { continue; } OTF_ChainContextSubstFormat2_Lookahead * lformat = (OTF_ChainContextSubstFormat2_Lookahead*) &iformat->coverage[icount-1]; SD_USHORT lcount = ntohs(lformat->lookaheadGlyphCount); #if USE_UNTESTED_CODE OTF_ChainContextSubstFormat2_Subst * sformat = (OTF_ChainContextSubstFormat2_Subst*) &lformat->coverage[lcount]; SD_USHORT scount = ntohs(sformat->substGlyphCount); #endif if ((unsigned int)bcount+icount+lcount>(unsigned int) liglen) { continue; } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- bool ok = true; unsigned int index = 0; /* Backtrack */ for (unsigned int bi=0; bicoverage[bcount-bi-1]); if (bcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + bcoffset, chars[index++]); if (clazz==0xffff || clazz != backtrack) { ok = false; break; } } if (!ok) continue; SD_USHORT coverageIndex = getCoverageIndex (cf, chars[index++]); if (coverageIndex == 0xffff) { continue; } /* Input */ for (unsigned int ii=1; iicoverage[ii-1]); if (icoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + icoffset, chars[index++]); if (clazz==0xffff || clazz != input) { ok = false; break; } } if (!ok) continue; /* Lookahead */ for (unsigned int li=0; licoverage[li]); if (lcoffset == 0) { ok = false; break; } SD_USHORT clazz = glyphClass((char*)f2 + lcoffset, chars[index++]); if (clazz==0xffff || clazz != lookahead) { ok = false; break; } } if (!ok) continue; #if PRINT_UNSUPPORTED fprintf (stderr, "UNDEBUGGED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 2, cformat); #endif #if USE_UNTESTED_CODE /* Substitute from outchar[om..scount] - assume scount < icount */ unsigned int inlength = icount; bool ret = false; for (unsigned int m=0; m<(unsigned int)scount; m++) { SubstLookupRecord* sr = (SubstLookupRecord*) &sformat->substLookupRecord[m]; SD_USHORT sqi = ntohs (sr->sequenceIndex); SD_USHORT loi = ntohs (sr->lookupListIndex); /* * Perform substitution loi at outchar[om+sqi]. * If is is just a single glyph substitution * replace outchar[om+sqi]. * If n glyphs are made into 1 then * reduce inlen with n-1, and move data. */ SD_USHORT mlrec = ntohs (lookupList->record[loi]); OTF_Lookup * mltable = (OTF_Lookup*)((char*)lookupList + mlrec); SD_USHORT mtype = ntohs (mltable->type); unsigned int at = (unsigned int) sqi; if (at < inlength && at > 0) { unsigned int lsize = 2; int savex = xpos[at-1]; int savey = ypos[at-1]; switch (mtype) { case 2: ret = doPairAdjustment (name, mltable, &chars[at-1], lsize, &xpos[at-1], &ypos[at-1]) || ret; break; case 4: ret = doMarkToBase (name, mltable, &chars[at-1], lsize, &xpos[at-1], &ypos[at-1]) || ret; break; case 6: ret = doMarkToMark (name, mltable, &chars[at-1], lsize, &xpos[at-1], &ypos[at-1]) || ret; } xpos[at-1] = savex; ypos[at-1] = savey; } } return ret; #else /* USE_UNTESTED_CODE */ return false; #endif } //---------------------------------------------------------------- // Chain context - 2 //---------------------------------------------------------------- } } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 8, cformat); #endif } } return false; } /*! * Do a MarkToBase substitution. */ static bool doPairAdjustment (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_PairAdjustmentFormat1 *lformat1 = (OTF_PairAdjustmentFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat==2) { OTF_PairAdjustmentFormat2 *lformat2 = (OTF_PairAdjustmentFormat2*) ((char*)ltable + offset); /* Try to get the mark coverage */ SD_USHORT mcoffset = ntohs (lformat2->coverage); OTF_CoverageFormat* mCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat2 + mcoffset); SD_USHORT coverageIndex = getCoverageIndex (mCoverageFormat, gvarray[0]); // No coverage. //SD_USHORT vf1 = ntohs (lformat2->valueFormat1); //SD_USHORT vf2 = ntohs (lformat2->valueFormat2); if (coverageIndex==0xffff) { continue; } #if PRINT_UNDEBUGGED fprintf (stderr, "UNDEBUGGED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 2, cformat); #endif } else { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 2, cformat); #endif } } return false; } /*! * Do a MarkToBase substitution. */ static bool doMarkToBase (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_MarkBasePosFormat1 *lformat1 = (OTF_MarkBasePosFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat != 1) { continue; } /* Try to get the mark coverage */ SD_USHORT mcoffset = ntohs (lformat1->markCoverage); OTF_CoverageFormat* mCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + mcoffset); SD_USHORT markCoverageIndex = getCoverageIndex (mCoverageFormat, gvarray[1]); SD_USHORT markOffset = ntohs (lformat1->markArray); OTF_MarkArray* markArray = (OTF_MarkArray*)((char*)lformat1 + markOffset); SD_USHORT markCount = ntohs (markArray->markCount); if (markCoverageIndex >= markCount) { continue; /* no coverage */ } /* Try to get the base coverage */ SD_USHORT bcoffset = ntohs (lformat1->baseCoverage); OTF_CoverageFormat* bCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + bcoffset); SD_USHORT baseCoverageIndex = getCoverageIndex (bCoverageFormat, gvarray[0]); SD_USHORT baseOffset = ntohs (lformat1->baseArray); OTF_BaseArray* baseArray = (OTF_BaseArray*)((char*)lformat1 + baseOffset); SD_USHORT baseCount = ntohs (baseArray->baseCount); if (baseCoverageIndex >= baseCount) { continue; } /* get the class count */ SD_USHORT ccount = ntohs (lformat1->classCount); /* figure out what class the mark wants */ OTF_MarkRecord* markRecord = (OTF_MarkRecord*) &markArray->markRecord[markCoverageIndex]; SD_USHORT markClass = htons (markRecord->markClass); //SD_USHORT markClass = htons (markRecord->markClass); if (markClass >= ccount) { continue; } /* load this class */ OTF_BaseRecord* baseRecord = (OTF_BaseRecord*) &baseArray->baseRecord[baseCoverageIndex*ccount]; /* clssize */ /* Achors are offset from markArray, baseArray */ SD_USHORT boffset =(SD_USHORT)htons(baseRecord->baseAnchor[markClass]); OTF_Anchor* banchor = (OTF_Anchor*) ((char*) baseArray + boffset); SD_USHORT moffset = (SD_USHORT) htons(markRecord->markAnchor); OTF_Anchor* manchor = (OTF_Anchor*) ((char*) markArray + moffset); unsigned short mformat = htons (manchor->format); unsigned short bformat = htons (banchor->format); // We will ignore device table for 2, 3. if (mformat>3 || bformat>3) { #if PRINT_UNDEBUGGED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u base=%u anchor=%u.\n", SSARGS(name), 4, cformat, bformat, mformat); #endif continue; } short bx = (short) htons (banchor->x); short by = (short) htons (banchor->y); short mx = (short) htons (manchor->x); short my = (short) htons (manchor->y); /* Unnecessary to calculate hot-spot in a more complicated way */ mx = bx - mx; my = by - my; xpos[0] = bx; ypos[0] = by; /* return delta in xpos[1] and ypos[1] */ xpos[1] = mx; ypos[1] = my; return true; } return false; } /*! * Do a MarkToMark substitution. */ static bool doMarkToMark (const SString& name, OTF_Lookup* ltable, const SS_GlyphIndex* gvarray, unsigned int gvsize, int* xpos, int* ypos) { SD_USHORT ltcount = ntohs (ltable->count); for (unsigned int k=0; ksubtable[k]); OTF_MarkMarkPosFormat1 *lformat1 = (OTF_MarkMarkPosFormat1*) ((char*)ltable + offset); /* check what we can */ SD_USHORT cformat = ntohs (lformat1->format); if (cformat != 1) { #if PRINT_UNSUPPORTED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u.\n", SSARGS(name), 6, cformat); #endif continue; } /* Try to get the mark coverage */ SD_USHORT mcoffset = ntohs (lformat1->mark1Coverage); OTF_CoverageFormat* mCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + mcoffset); SD_USHORT markCoverageIndex = getCoverageIndex (mCoverageFormat, gvarray[1]); SD_USHORT markOffset = ntohs (lformat1->mark1Array); OTF_MarkArray* markArray = (OTF_MarkArray*)((char*)lformat1 + markOffset); SD_USHORT markCount = ntohs (markArray->markCount); if (markCoverageIndex >= markCount) { continue; } /* Try to get the mark2 coverage */ SD_USHORT bcoffset = ntohs (lformat1->mark2Coverage); OTF_CoverageFormat* bCoverageFormat = (OTF_CoverageFormat*) ((char*)lformat1 + bcoffset); SD_USHORT baseCoverageIndex = getCoverageIndex (bCoverageFormat, gvarray[0]); SD_USHORT baseOffset = ntohs (lformat1->mark2Array); OTF_BaseArray* baseArray = (OTF_BaseArray*)((char*)lformat1 + baseOffset); SD_USHORT baseCount = ntohs (baseArray->baseCount); if (baseCoverageIndex >= baseCount) { continue; } /* get the class count */ SD_USHORT ccount = ntohs (lformat1->classCount); /* figure out what class the mark wants */ OTF_MarkRecord* markRecord = (OTF_MarkRecord*) &markArray->markRecord[markCoverageIndex]; SD_USHORT markClass = htons (markRecord->markClass); if (markClass >= ccount) { continue; } /* load this class */ OTF_BaseRecord* baseRecord = (OTF_BaseRecord*) &baseArray->baseRecord[baseCoverageIndex*ccount]; /* clssize */ /* Achors are offset from markArray, baseArray */ SD_USHORT boffset =(SD_USHORT)htons(baseRecord->baseAnchor[markClass]); OTF_Anchor* banchor = (OTF_Anchor*) ((char*) baseArray + boffset); SD_USHORT moffset = (SD_USHORT) htons(markRecord->markAnchor); OTF_Anchor* manchor = (OTF_Anchor*) ((char*) markArray + moffset); unsigned short mformat = htons (manchor->format); unsigned short bformat = htons (banchor->format); // We will ignore device table for 2, 3. if (mformat>2 || bformat>3) { #if PRINT_UNDEBUGGED fprintf (stderr, "UNSUPPORTED %*.*s GPOS type:%u format=%u base=%u anchor=%u.\n", SSARGS(name), 4, cformat, bformat, mformat); #endif continue; } short bx = (short) htons (banchor->x); short by = (short) htons (banchor->y); short mx = (short) htons (manchor->x); short my = (short) htons (manchor->y); /* bool isrl = ((flag & 0x0001)!=0); fprintf (stderr, "Found b=%d,%d m=%d,%d %d rl=%d.\n", bx, by, mx, my, basewidth, isrl); */ /* Unnecessary to calculate hot-spot in a more complicated way */ mx = bx - mx; my = by - my; xpos[0] = bx; ypos[0] = by; /* return delta in xpos[1] and ypos[1] */ xpos[1] = mx; ypos[1] = my; return true; } return false; } /*! * \brief Find the glyph index for the character. * \param in is the unicode-encoded character. * \return the glyph index or null. */ SS_GlyphIndex SFontTTF::gindex (SS_UCS4 in) { return findGlyph (in, false); } /*! * \brief Get the width of the unscaled glyph. * \param in is the glyph index. * \return the width of the glyph. * If width is negative or 0, then this mark * should be aligned to the end of the previous * character: * <-------base-------> * x-------x----------x * <--length--> */ int SFontTTF::gwidth (SS_GlyphIndex in) { return getWidth(in); } //---------------------------------------------------------------------------- // SFontLookup Interface //---------------------------------------------------------------------------- /*! * \brief Perform a glyph/ligature substitution. * \param feature is a 4-character OTF-feature, like "gsub" * \param in is the input glyph index array. * \param in_size is the size of input glyph index array. * \param start is the starting point of the substitution * \param out is the output will be used to put the Glyphs in. * At leas the input glyph size should be allocated. * \param out_size will contain how many glyphs were placed in out * array. * \param script is the code of the script, like "deva" * \param is_contextual will be true after a successful * chaining contextual substitution. * \return how many glyphs should dissappear from the input * array between start...start + retvle -1. */ unsigned int SFontTTF::gsub (const char* script, const char* feature, const SS_GlyphIndex* in, unsigned int in_size, unsigned int* start, SS_GlyphIndex *out, unsigned int* out_size, bool* is_contextual) { *is_contextual = false; unsigned int liglen; *start = 0; *out_size = 0; // 1: Glyph Substitution. liglen = getOTFLigature (script, feature, in, in_size, out, 1); if (liglen == 1) { *start = 0; *out_size=1; return 1; } // 4: Ligature Substitution. liglen = getOTFLigature (script, feature, in, in_size, out, 4); if (liglen >= 2) { *start = 0; *out_size = 1; return liglen; } // 5: Contextual Substitution liglen = getOTFLigature (script, feature, in, in_size, out, 5); if (liglen == 0) { // 6: Chaining Contextual Substitution liglen = getOTFLigature (script, feature, in, in_size, out, 6); } // I tested this thing when the sizes were the same... if (liglen > 0) { *is_contextual = true; // find out start end and position... unsigned int s = 0; unsigned int eo = liglen; unsigned int ei = in_size; while (s < liglen && out[s] == in[s]) s++; while (eo > 0 && ei > 0 && out[eo-1] == in[ei-1]) { ei--; eo--; } /* nothing has changed! */ if (s>=eo || s>=ei) return 0; /* cut out the s..eo window move stuff down */ for (unsigned int i=0; iversion); SD_USHORT nTables = htons (kh->nTables); fprintf (stderr, "XXX kerning: version=%u tables=%u\n", version, nTables); char* pt = ((char*)kh + sizeof(KERN_HEAD_MS)); for (unsigned int i=0; iversion); SD_USHORT slength = htons (st->length); SD_USHORT scoverage = htons (st->coverage); fprintf (stderr, "XXX kerning: st[%u] sversion=%u slength=%u scoverage=%u\n", i, sversion, slength, scoverage); /* horizontal, type 0 */ if ((scoverage & 1) == 1 && (coverage & 0xf0) == 0) { KERN_HORIZONTAL_MS* ht = (KERN_HORIZONTAL_MS*) ((char*)pt + sizeof (KERN_SUBTABLE_MS)); SD_USHORT nPairs = htons (ht->nPairs); SD_USHORT searchRange = htons (ht->searchRange); SD_USHORT entrySelector = htons (ht->entrySelector); SD_USHORT rangeShift = htons (ht->rangeShift); fprintf (stderr, " nPairs=%u searchRange=%u entrySelector=%u rangeShift=%u\n", nPairs, searchRange, entrySelector, rangeShift); KERN_PAIRS_MS* pair = (KERN_PAIRS_MS*) ((char*)ht+sizeof (KERN_HORIZONTAL_MS)); for (unsigned int j=0; jleft); SD_USHORT right = htons (pair->right); SD_USHORT value = htons (pair->right); fprintf (stderr, " left=%04X right=%04X value=%u\n", left, right, value); if (in[0] == left && in[1] == right) { *x = value; return true; } pair = (KERN_PAIRS_MS*) ((char*)pair + sizeof (KERN_PAIRS_MS)); } } pt = pt + slength; } } } #endif return false; } /*! * \return the glyph class: * \li 0 - Unknown * \li 1 - Base Glyph (single character spacing glyph) * \li 2 - Base Glyph (single character spacing glyph) * \li 3 - Mark Glyph (non-spacing combining glyph) * \li 4 - Component Glyph (part of a single character, spacing glyph) */ unsigned int SFontTTF::getGlyphClass(SS_GlyphIndex in) { GDEF_HEAD* gdefh = (GDEF_HEAD*) tables[SS_TB_GDEF]; if (gdefh == 0) { return 0; } if (ntohl (gdefh->version) != 0x00010000) { return 0; } SD_USHORT offset = htons (gdefh->glyphClassDef); if (offset == 0) { return 0; } unsigned int ret = glyphClass ((char*) gdefh + offset, in); if (ret == 0xffff) { return 0; } return ret; } /*! * \brief try to attach mark to base. * \param where takes the following values: * 1 - below. * \return true on success. * This code is undebugged. */ bool SFontTTF::attach (SS_GlyphIndex base, SS_GlyphIndex mark, int where, int* x, int* y) { // Below. if (where == 1) { int bxmin, bymin, bxmax, bymax; if (!getBBOX (base, &bxmin, &bymin, &bxmax, &bymax)) { return false; } int mxmin, mymin, mxmax, mymax; if (!getBBOX (mark, &mxmin, &mymin, &mxmax, &mymax)) { return false; } // Dont do it if it overlaps if (mymax >= bymin) return false; // Move it along x. int mb = (bxmin + bxmax) / 2; int mm = (mxmin + mxmax) / 2; *x = (mb - mm); *y = 0; return true; } return false; // This untested piece was an unsuccessful attempt on the same // thing. #if 0 GDEF_HEAD* gdefh = (GDEF_HEAD*) tables[SS_TB_GDEF]; if (gdefh == 0) { return 0; } if (ntohl (gdefh->version) != 0x00010000) { return 0; } SD_USHORT offset = htons (gdefh->attachList); if (offset == 0) { return 0; } OTF_AttachList* list = (OTF_AttachList*) ((char*) gdefh + offset); SD_USHORT gc = htons (list->glyphCount); SD_USHORT coff = htons (list->coverage); OTF_CoverageFormat* cf = (OTF_CoverageFormat*) ((char*) list + coff); SD_USHORT bc = getCoverageIndex (cf, base); if (bc >= gc) return false; SD_USHORT mc = getCoverageIndex (cf, mark); if (mc >= gc) return false; SD_USHORT bpoff = htons(list->attachPoint[bc]); OTF_AttachPoint* bp = (OTF_AttachPoint*) ((char*) list + bpoff); SD_USHORT bcount = ntohs (bp->pointCount); SD_USHORT mpoff = htons(list->attachPoint[mc]); OTF_AttachPoint* mp = (OTF_AttachPoint*) ((char*) list + mpoff); SD_USHORT mcount = ntohs (mp->pointCount); SH_Vector bpx; SH_Vector bpy; if (!getContours (base, &bpx, &bpy) || bpx.size()==0) { return false; } SH_Vector mpx; SH_Vector mpy; if (!getContours (mark, &mpx, &mpy) || bpx.size()==0) { return false; } // TODO: attach base if (where == 1) { unsigned int i; // fprintf (stderr, "XXX Base: %04X count=%u\n", base, bcount); for (i=0; ipointIndex[i]); if (mpx.size() <= index) return false; // fprintf (stderr, "XXX base[%u] = %d,%d\n", i, // bpx[index], bpy[index]); } // fprintf (stderr, "XXX Mark: %04X count=%u\n", mark, mcount); for (i=0; ipointIndex[i]); if (mpx.size() <= index) return false; // fprintf (stderr, "XXX mark[%u] = %d,%d\n", i, // mpx[index], mpy[index]); } } return false; #endif } /*! * \brief Get the contour points. */ bool SFontTTF::getContours (SS_GlyphIndex glyphno, SH_Vector * xc, SH_Vector *yc ) { SD_BYTE* gstart = (SD_BYTE *) tables["glyf"]; if (gstart == 0) return false; TTF_GLYF* gtable; int len =0; if (longOffsets) { SD_ULONG* lloca = (SD_ULONG *) tables["loca"]; if (lloca == 0) return false; unsigned int offs1 = ntohl (lloca[glyphno]); unsigned int offs2 = ntohl (lloca[glyphno+1]); gtable = (TTF_GLYF *) ((char*)gstart + offs1); len = offs2-offs1; } else { SD_USHORT* sloca = (SD_USHORT *) tables["loca"]; if (sloca == 0) return false; gtable = (TTF_GLYF *) (gstart + (ntohs (sloca[glyphno]) << 1)); len = (ntohs (sloca[glyphno+1]) - ntohs (sloca[glyphno])) << 1; } if (len <= 0) { return false; } TTF_GLYF* kludge = 0; if ((((unsigned long) gtable) & 1) != 0) { kludge = new TTF_GLYF[len]; CHECK_NEW (kludge); memcpy (kludge, gtable, len * sizeof (TTF_GLYF)); gtable = kludge; } int ncontours = (int) ((short)ntohs (gtable->numberOfContours)); if (ncontours < 0) { if (kludge) delete kludge; return false; } SD_USHORT* contour_end_pt = (SD_USHORT *) ((char *)gtable + sizeof(TTF_GLYF)); int last_point = (int) ntohs (contour_end_pt[ncontours-1]); // length of instructions. int n_inst = (int) ntohs (contour_end_pt[ncontours]); // flags SD_BYTE* ptr = ((SD_BYTE *)contour_end_pt) + (ncontours << 1) + n_inst + 2; int j = 0; int k = 0; SBinVector flags; while (k <= last_point) { flags.append (ptr[j]); if (ptr[j] & REPEAT) { for (int k1=0; k1 < ptr[j+1]; k1++) { k++; flags.append (ptr[j]); } j++; } j++; k++; } SH_Vector xrel; SH_Vector xcoord; for (k=0; k <= last_point; k++) { /* Process xrel */ if (flags[k] & XSD_SHORT) { if (flags[k] & XSAME) { xrel.append (ptr[j]); } else { xrel.append (-ptr[j]); } j++; } else if (flags[k] & XSAME) { xrel.append (0); } else { xrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } /* Process x coordinate */ if (k==0) { xcoord.append (xrel[k]); } else { xcoord.append (xrel[k] + xcoord[k-1]); } } SH_Vector yrel; SH_Vector ycoord; /* one more run fore yrel and ycoord */ for (k=0; k <= last_point; k++) { if (flags[k] & YSD_SHORT) { if (flags[k] & YSAME) { yrel.append (ptr[j]); } else { yrel.append (- ptr[j]); } j++; } else if (flags[k] & YSAME) { yrel.append (0); } else { yrel.append (ptr[j] * 256 + ptr[j+1]); j += 2; } if (k==0) { ycoord.append (yrel[k]); } else { ycoord.append (yrel[k] + ycoord[k-1]); } } if (kludge) delete kludge; *xc = xcoord; *yc = ycoord; return true; } ./swindow/SAwt.cpp0000644000175000017500000000542510721464462014125 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SExcept.h" #include "swindow/SAwt.h" #include "swindow/SGEngine.h" #include "swindow/SFontImpl.h" #ifdef USE_WINAPI # include "swin32/SWin32.h" # else # if USE_X11 # include "sx11/SX11Impl.h" # include "sx11/SX11Window.h" # endif #endif /** * @author: Gaspar Sinai * @version: 2000-04-23 * This is the abstract widget toolkit */ /** * This class should be implemented for a window toolkit implementation */ SAwtImpl::SAwtImpl() { } SAwtImpl::~SAwtImpl() { } SWindow* SAwtImpl::getWindow (SWindowListener* l, const SString& name) { return 0; } SFontNative* SAwtImpl::getFont (const SString& enc) { return 0; } /** * Set the encoder for locale conversions. */ void SAwtImpl::setEncoding (const SString& encoder) { } SAwt::SAwt (bool cacheOn, unsigned int cacheSize) { if (!delegate) { SGEngine::setCacheSize (cacheSize); SGEngine::setCacheOn (cacheOn); #ifdef USE_WINAPI SW32Impl* i = new SW32Impl(); delegate = (i->isOK()) ? i : 0; SW32Window::setPixmapCacheSize (cacheSize); SW32Window::setPixmapCacheOn (cacheOn); #else # if USE_X11 SX11Impl* i = new SX11Impl(); delegate = (i->isOK()) ? i : 0; SX11Window::setPixmapCacheSize (cacheSize); SX11Window::setPixmapCacheOn (cacheOn); # else delegate = 0; #endif #endif } } // Destroys the implementation. SAwt::~SAwt () { if (delegate) delete delegate; } void SAwt::setImpl (SAwtImpl* impl) { delegate = impl; } SWindow* SAwt::getWindow (SWindowListener* l, const SString& name) { if (delegate==0) return 0; return delegate->getWindow(l, name); } SFontNative* SAwt::getFont (const SString& enc) { if (delegate==0) return 0; return delegate->getFont(enc); } void SAwt::setEncoding (const SString& encoder) { if (delegate==0) return; delegate->setEncoding(encoder); } bool SAwt::implemented() { return (delegate!=0); } bool SAwt::hasGUI() { bool ret = false; #ifdef USE_WINAPI ret = true; #else # if USE_X11 ret = true; # endif #endif return ret; } SAwtImpl* SAwt::delegate = 0; ./swindow/SAccelerator.cpp0000644000175000017500000000447410434025610015606 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SAccelerator.h" SAccelerator::SAccelerator (void) { key = 0; ctrl = false; shift = false; meta = false; string = SString("empty"); } SAccelerator::SAccelerator (const SString& str) { key = 0; ctrl = false; shift = false; meta = false; int ikey; int ictrl; int ishift; int imeta; SString a = str; a.append ((char)0); if (sscanf (a.array(), "%d %d %d %d", &ikey, &ictrl, &ishift, &imeta) != 4) { fprintf (stderr, "bad accelerator:%s\n", a.array()); } else { key = ikey; ctrl = (bool) ictrl; shift = (bool) ishift; meta = (bool) imeta; } char as[64]; sprintf (as, "%d %d %d %d", (int) key, (int) ctrl, (int) shift, (int) meta); string = SString(as); } SAccelerator::SAccelerator (int _key, bool _ctrl, bool _shift, bool _meta) { key = _key; ctrl = _ctrl; shift = _shift; meta = _meta; char as[64]; sprintf (as, "%d %d %d %d", (int) key, (int) ctrl, (int) shift, (int) meta); string = SString(as); } SAccelerator::SAccelerator(const SAccelerator& a) { string = a.string; key = a.key; ctrl = a.ctrl; shift = a.shift; meta = a.meta; } SAccelerator SAccelerator::operator = (const SAccelerator& a) { string = a.string; key = a.key; ctrl = a.ctrl; shift = a.shift; meta = a.meta; return *this; } SAccelerator::~SAccelerator () { } SObject* SAccelerator::clone() const { return new SAccelerator (*this); } const SString& SAccelerator::toString() const { return string; } SAcceleratorListener::SAcceleratorListener() { } SAcceleratorListener::~SAcceleratorListener() { } ./swindow/SGEngine.h0000644000175000017500000001001210434025606014331 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SGEngine_h #define SGEngine_h #include "swindow/SPen.h" #include "swindow/SImage.h" #include "swindow/SGPrimitive.h" #include "stoolkit/SVector.h" #include "stoolkit/SBinVector.h" #include "stoolkit/STypes.h" #include "stoolkit/SMatrix.h" #include "stoolkit/SObject.h" typedef SBinVector SPSPath; typedef SVector SPSPathVector; typedef SBinVector SS_InterSection; typedef SVector SV_Primitive; /** * @author: Gaspar Sinai * @version: 2000-04-23 * Graphics drawing engine for the poor. */ class SGEngine { public: /* This should be called before fill */ SGEngine (bool windingrule=true); virtual ~SGEngine (); /*---------------- similar to canvas --------------*/ virtual bool newpath (int x, int y, const SString& id); void moveto (double x, double y); void lineto (double x, double y); void curveto (double x0, double y0, double x1, double y1, double x3, double y3); void closepath(); /* not implemented */ SImage* stroke (int x, int y, unsigned int width, unsigned int height, double lineWidth); /* return xy buffer and clear states */ SImage* fill (int x, int y, unsigned int width, unsigned int height, double lineWidth); void pushmatrix(); void popmatrix(); void scale (double x, double y); void translate (double x, double y); void rotate (double angle); /*---------------- end canvas --------------*/ static void setCacheSize(unsigned int size); static void setCacheOn (bool on=true); virtual SS_Matrix2D getCurrentMatrix() const; private: bool winding; SV_Primitive primitive; void _replay (double lineWidth); /* these are done by replay */ void _newpath (double lineWidth); void _moveto (double x, double y); void _lineto (double x, double y); void _curveto (double x0, double y0, double x1, double y1, double x3, double y3); void _closepath(); SImage* _stroke(int x, int y, unsigned int width, unsigned int height); SImage* _fill (int x, int y, unsigned int width, unsigned int height); void _pushmatrix(); void _popmatrix(); void _scale (double x, double y); void _translate (double x, double y); void _rotate (double angle); void setup (double d); void scan (SS_InterSection** inter, int ox, int oy, int height, bool swap); void scanCrosses (SS_InterSection** inter, int ox, int oy, int height, bool swap); void scanWinding (SS_InterSection** inter, int ox, int oy, int height, bool swap); void render (SS_WORD32* buffer, SS_InterSection** inter, unsigned int width, unsigned int height, bool swap); void curvetoInternal (double x0, double y0, double x1, double y1, double x2, double y2, double x3, double y3, int count); void linetoInternal (double x, double y); double newpathX; double newpathY; SString newpathID; SS_MatrixStack matrix; unsigned int oversample; unsigned int scancount; /* This is sqrt (1/oversample)/2 */ double epsylon; int colors; double minx; double miny; double maxx; double maxy; bool unfinished; double undelta; double unx; double uny; SPSPath pathNow; SPSPathVector pathVector; }; #endif /* SGEngine_h */ ./swindow/SFontNative.cpp0000644000175000017500000000301510434025610015425 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "swindow/SFontNative.h" #include /** * @author: Gaspar Sinai * @version: 2000-06-03 * This is a specific native font, with a certain size */ SFontNative::SFontNative (void) { } SFontNative::~SFontNative () { } bool SFontNative::draw (const SString& xlfd, SCanvas* canvas, const SPen& pen, const SS_Matrix2D& matrix, SS_UCS4 g) { return 0; } bool SFontNative::width (const SString& xlfd, SS_UCS4 g, double* width_) { if (width_) *width_=0; return false; } double SFontNative::width (const SString& xlfd) { return 0.0; } double SFontNative::ascent (const SString& xlfd) { return 0.0; } double SFontNative::descent (const SString& xlfd) { return 0.0; } double SFontNative::gap (const SString& xlfd) { return 0.0; } ./BUGS.TXT0000644000175000017500000000027410536671116012207 0ustar henrichhenrichIt has been reported that XCreateFontSet in SXInputMethod.cpp makes yudit slow at strat-up. setlocale (LC_CTYPE, "C"); is recommened. Still could not cofirm - it is fast on my machine. ./bin/0000755000175000017500000000000011333725247011614 5ustar henrichhenrich./bin/patch.txt0000644000175000017500000000646707532460062013466 0ustar henrichhenrich2,73d1 < # Name: JIS X 0208 (1990) to Unicode < # Unicode version: 1.1 < # Table version: 0.9 < # Table format: Format A < # Date: 8 March 1994 < # < # Copyright (c) 1991-1994 Unicode, Inc. All Rights reserved. < # < # This file is provided as-is by Unicode, Inc. (The Unicode Consortium). < # No claims are made as to fitness for any particular purpose. No < # warranties of any kind are expressed or implied. The recipient < # agrees to determine applicability of information provided. If this < # file has been provided on magnetic media by Unicode, Inc., the sole < # remedy for any claim will be exchange of defective media within 90 < # days of receipt. < # < # Recipient is granted the right to make copies in any form for < # internal distribution and to freely use the information supplied < # in the creation of products supporting Unicode. Unicode, Inc. < # specifically excludes the right to re-distribute this file directly < # to third parties or other organizations whether for profit or not. < # < # General notes: < # < # < # This table contains one set of mappings from JIS X 0208 (1990) into Unicode. < # Note that these data are *possible* mappings only and may not be the < # same as those used by actual products, nor may they be the best suited < # for all uses. For more information on the mappings between various code < # pages incorporating the repertoire of JIS X 0208 (1990) and Unicode, consult the < # VENDORS mapping data. Normative information on the mapping between < # JIS X 0208 (1990) and Unicode may be found in the Unihan.txt file in the < # latest Unicode Character Database. < # < # If you have carefully considered the fact that the mappings in < # this table are only one possible set of mappings between JIS X 0208 (1990) < # and Unicode and have no normative status, but still feel that you < # have located an error in the table that requires fixing, you may < # report any such error to errata@unicode.org. < # < # < # Format: Four tab-separated columns < # Column #1 is the shift-JIS code (in hex) < # Column #2 is the JIS X 0208 code (in hex as 0xXXXX) < # Column #3 is the Unicode (in hex as 0xXXXX) < # Column #4 the Unicode name (follows a comment sign, '#') < # The official names for Unicode characters U+4E00 < # to U+9FA5, inclusive, is "CJK UNIFIED IDEOGRAPH-XXXX", < # where XXXX is the code point. Including all these < # names in this file increases its size substantially < # and needlessly. The token "" is used for the < # name of these characters. If necessary, it can be < # expanded algorithmically by a parser or editor. < # < # The entries are in JIS X 0208 order < # < # The following algorithms can be used to change the hex form < # of JIS 0208 to other standard forms: < # < # To change hex to EUC form, add 0x8080 < # To change hex to kuten form, first subtract 0x2020. Then < # the high and low bytes correspond to the ku and ten of < # the kuten form. For example, 0x2121 -> 0x0101 -> 0101; < # 0x7426 -> 0x5406 -> 8406 < # < # The kanji mappings are a normative part of ISO/IEC 10646. The < # non-kanji mappings are provisional, pending definition of < # official mappings by Japanese standards bodies < # < # Any comments or problems, contact < # < # 6952a6881 > # SJIS JIS UNICODE ./bin/Makefile0000644000175000017500000000355011326531030013242 0ustar henrichhenrichall: # # UNIDATA directory should have: # UnicodeData.txt # Unihan.txt # BidiMirroring.txt # VERSION=5.2.0 UNIROOT=/home/gsinai/Documents/Unicode/ftp.unicode.org/$(VERSION) UNIDATA=$(UNIROOT)/ucd # This has been removed. Dont make eastasia MAPPINGS=$(UNIROOT)/MAPPINGS # # This is the target for unicode updates. # map: charclass bidiclass precompose mirror olditalic shape kmap restricted: gcategory shape mirror precompose olditalic jis2000 charclass: $(UNIDATA)/UnicodeData.txt perl charclass.pl $(VERSION) $< > ../mytool/mys/charclass.mys bidiclass: $(UNIDATA)/UnicodeData.txt perl bidiclass.pl $(VERSION) $< > ../mytool/mys/bidiclass.mys precompose: $(UNIDATA)/UnicodeData.txt perl precompose.pl $(VERSION) $< > ../mytool/mys/precompose.mys mirror: $(UNIDATA)/BidiMirroring.txt perl mirroring.pl $(VERSION) $< > ../mytool/uni/mirroring.txt olditalic: $(UNIDATA)/UnicodeData.txt perl olditalic.pl $(VERSION) u $< > ../mytool/mys/OldItalic.mys shape: $(UNIDATA)/UnicodeData.txt ./shape.pl $(VERSION) $< > ../mytool/mys/shape.mys 2> /dev/null kmap: ../mytool/mys/shape.mys ./arabickmap.pl $< > ../mytool/kmap/ArabicTranslit.kmap # # This will create eastasia - that is obsolete # JIS0201.TXT can not be calculated.... # eastasia: $(UNIDATA)/Unihan.txt cp $(MAPPINGS)/OBSOLETE/EASTASIA/JIS/JIS0201.TXT MAPPINGS ./eastasia.pl --dir MAPPINGS $< # CP949.TXT stripped will make KSC5601.TXT - this has nothing # to do with KSC5601 but I will still keep it. # korean: wget http://jshin.net/faq/KSX1001.TXT.gz wget http://jshin.net/faq/JOHAB.TXT.gz gunzip KSX1001.TXT.gz gunzip JOHAB.TXT.gz mv KSX1001.TXT MAPPINGS mv JOHAB.TXT MAPPINGS perl -ne 'next if (/^0x[0-9A-Za-z]{2}[ \t]/);print;' $(MAPPINGS)/VENDORS/MICSFT/WINDOWS/CP949.TXT > MAPPINGS/KSC5601.TXT clean: rm MAPPINGS/KSX1001.* rm MAPPINGS/JOHAB.* veryclean: rm MAPPINGS/KSX1001.* rm MAPPINGS/JOHAB.* ./bin/mirroring.pl0000755000175000017500000000132011326526016014153 0ustar henrichhenrich#!/usr/bin/perl # This script makes a bidi mirroring map. # In order to run the script you need to get # http://www.unicode.org/Public/UNIDATA/BidiMirroring.txt # as an input. @full_date = localtime(time); $year = $full_date[5] + 1900; $mon = $full_date[4] + 1; $mday = $full_date[3]; $date = sprintf ("%4d-%02d-%02d", $year, $mon, $mday); die "No version specified." if ($#ARGV == -1); $VERSION=shift; print <) { next if not /^([0-9A-F]*); ([0-9A-F]*)( #.*)?/; $char = hex $1; $mirror = hex $2; next if ($char > 0xffff); printf ("0x%04X 0x%04X$/", $char, $mirror); } print "$/#END$/"; ./bin/yuditlig/0000755000175000017500000000000010724200633013434 5ustar henrichhenrich./bin/yuditlig/cluster.txt0000644000175000017500000000201107532460062015657 0ustar henrichhenrich# Generated by ./jiscompose.pl at 2002-04-15 # Add this to bin/cluster/cluster.template 304B 309A -> 0000304B 0000309A 80000040 304D 309A -> 0000304D 0000309A 80000041 304F 309A -> 0000304F 0000309A 80000042 3051 309A -> 00003051 0000309A 80000043 3053 309A -> 00003053 0000309A 80000044 30AB 309A -> 000030AB 0000309A 80000045 30AD 309A -> 000030AD 0000309A 80000046 30AF 309A -> 000030AF 0000309A 80000047 30B1 309A -> 000030B1 0000309A 80000048 30B3 309A -> 000030B3 0000309A 80000049 30BB 309A -> 000030BB 0000309A 8000004A 30C4 309A -> 000030C4 0000309A 8000004B 30C8 309A -> 000030C8 0000309A 8000004C 31F7 309A -> 000031F7 0000309A 8000004D 00E6 0300 -> 000000E6 00000300 8000004E 0254 0300 -> 00000254 00000300 8000004F 0254 0301 -> 00000254 00000301 80000050 028C 0300 -> 0000028C 00000300 80000051 028C 0301 -> 0000028C 00000301 80000052 0259 0300 -> 00000259 00000300 80000053 0259 0301 -> 00000259 00000301 80000054 025A 0300 -> 0000025A 00000300 80000055 025A 0301 -> 0000025A 00000301 80000056 # END OF ./jiscompose.pl ./bin/yuditlig/cpp.txt0000644000175000017500000000511507532460062014770 0ustar henrichhenrich// Generated by ./jiscompose.pl at 2002-04-15 // Add this to stoolkit/SCluster.cpp expandYuditLigatures case 0x80000040: /* JIS X 0213: 0x2477 */ decd->append (0x304B); decd->append (0x309A); break; case 0x80000041: /* JIS X 0213: 0x2478 */ decd->append (0x304D); decd->append (0x309A); break; case 0x80000042: /* JIS X 0213: 0x2479 */ decd->append (0x304F); decd->append (0x309A); break; case 0x80000043: /* JIS X 0213: 0x247A */ decd->append (0x3051); decd->append (0x309A); break; case 0x80000044: /* JIS X 0213: 0x247B */ decd->append (0x3053); decd->append (0x309A); break; case 0x80000045: /* JIS X 0213: 0x2577 */ decd->append (0x30AB); decd->append (0x309A); break; case 0x80000046: /* JIS X 0213: 0x2578 */ decd->append (0x30AD); decd->append (0x309A); break; case 0x80000047: /* JIS X 0213: 0x2579 */ decd->append (0x30AF); decd->append (0x309A); break; case 0x80000048: /* JIS X 0213: 0x257A */ decd->append (0x30B1); decd->append (0x309A); break; case 0x80000049: /* JIS X 0213: 0x257B */ decd->append (0x30B3); decd->append (0x309A); break; case 0x8000004A: /* JIS X 0213: 0x257C */ decd->append (0x30BB); decd->append (0x309A); break; case 0x8000004B: /* JIS X 0213: 0x257D */ decd->append (0x30C4); decd->append (0x309A); break; case 0x8000004C: /* JIS X 0213: 0x257E */ decd->append (0x30C8); decd->append (0x309A); break; case 0x8000004D: /* JIS X 0213: 0x2678 */ decd->append (0x31F7); decd->append (0x309A); break; case 0x8000004E: /* JIS X 0213: 0x2B44 */ decd->append (0x00E6); decd->append (0x0300); break; case 0x8000004F: /* JIS X 0213: 0x2B48 */ decd->append (0x0254); decd->append (0x0300); break; case 0x80000050: /* JIS X 0213: 0x2B49 */ decd->append (0x0254); decd->append (0x0301); break; case 0x80000051: /* JIS X 0213: 0x2B4A */ decd->append (0x028C); decd->append (0x0300); break; case 0x80000052: /* JIS X 0213: 0x2B4B */ decd->append (0x028C); decd->append (0x0301); break; case 0x80000053: /* JIS X 0213: 0x2B4C */ decd->append (0x0259); decd->append (0x0300); break; case 0x80000054: /* JIS X 0213: 0x2B4D */ decd->append (0x0259); decd->append (0x0301); break; case 0x80000055: /* JIS X 0213: 0x2B4E */ decd->append (0x025A); decd->append (0x0300); break; case 0x80000056: /* JIS X 0213: 0x2B4F */ decd->append (0x025A); decd->append (0x0301); break; // END OF ./jiscompose.pl ./bin/yuditlig/jiscompose.pl0000755000175000017500000000635007532460062016162 0ustar henrichhenrich#!/usr/bin/perl # Make diff of 3 files # GNU (C) Gaspar Sinai # Tokyo 2002-04-10 $PLANE1="JISX0213-1.TXT"; $VERSION="Version 1.1"; $date = `date '+%Y-%m-%d'`; $BASE=0x80000040; $START=$BASE; # # Make a Yudit Ligature Map # $arg=$ARGV[0]; if ($arg ne "cluster" && $arg ne "cpp" && $arg ne "jis" && $arg ne "sjis") { die "usage: $0 {cluster|cpp|mys}" } # # SJIS is KEY # %JISMAP=(); %KUTENMAP=(); %UMAP=(); %ALLJ=(); %ALLU=(); &makeMap ($PLANE1); if ($arg eq "cpp") { print "// END OF $0\n"; } else { print "# END OF $0\n"; } sub makeMap { open (P1, "<$_[0]") || die "Can not open $_[0]"; while () { chomp; next if (/UNASSIGNED .* JIS /); if (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=sprintf ("%08X+%08X+%08X", hex($3), hex($4), hex($5)); &printmap ($SJ, hex($2), hex($3), hex($4), hex($5)); $KT=$6; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } elsif (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=sprintf ("%08X+%08X", hex($3), hex($4)); &printmap ($SJ, hex($2), hex($3), hex($4)); $KT=$5; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } elsif (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=sprintf ("%08X", hex($3)); $KT=$4; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } elsif (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=""; $KT=$3; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } } close (P1); } sub printmap { ($s, $j, @p) = @_; # Done - tone marks return if ($p[$#p] == 0x200C); die "too many combinations" if ($#p != 1); if ($arg eq "cluster") { if ($START == $BASE) { print "# Generated by $0 at $date\n"; print "# Add this to bin/cluster/cluster.template\n"; } printf ("%04X %04X -> %08X %08X %08X\n", $p[0], $p[1], $p[0], $p[1], $BASE++); } elsif ($arg eq "cpp") { if ($START == $BASE) { print "// Generated by $0 at $date\n"; print "// Add this to stoolkit/SCluster.cpp expandYuditLigatures\n"; } $c = sprintf ("0x%08X", $BASE++); $jp = sprintf ("0x%04X", $j); $f = sprintf ("0x%04X", $p[0]); $s = sprintf ("0x%04X", $p[1]); print <append ($f); decd->append ($s); break; EOD } elsif ($arg eq "jis") { if ($START == $BASE) { print "# Generated by $0 at $date\n"; print "# Add this to mytool/mys/jis-0213-1.mys\n"; } printf ("%04X -> %08X\n", $j, $BASE++); } elsif ($arg eq "sjis") { if ($START == $BASE) { print "# Generated by $0 at $date\n"; print "# Add this to mytool/mys/shift-jis-3.mys\n"; } printf ("%04X -> %08X\n", $s, $BASE++); } } ./bin/yuditlig/sjis.txt0000644000175000017500000000076607532460062015165 0ustar henrichhenrich# Generated by ./jiscompose.pl at 2002-04-15 # Add this to mytool/mys/shift-jis-3.mys 82F5 -> 80000040 82F6 -> 80000041 82F7 -> 80000042 82F8 -> 80000043 82F9 -> 80000044 8397 -> 80000045 8398 -> 80000046 8399 -> 80000047 839A -> 80000048 839B -> 80000049 839C -> 8000004A 839D -> 8000004B 839E -> 8000004C 83F6 -> 8000004D 8663 -> 8000004E 8667 -> 8000004F 8668 -> 80000050 8669 -> 80000051 866A -> 80000052 866B -> 80000053 866C -> 80000054 866D -> 80000055 866E -> 80000056 # END OF ./jiscompose.pl ./bin/yuditlig/jis.txt0000644000175000017500000000076507532460062015001 0ustar henrichhenrich# Generated by ./jiscompose.pl at 2002-04-15 # Add this to mytool/mys/jis-0213-1.mys 2477 -> 80000040 2478 -> 80000041 2479 -> 80000042 247A -> 80000043 247B -> 80000044 2577 -> 80000045 2578 -> 80000046 2579 -> 80000047 257A -> 80000048 257B -> 80000049 257C -> 8000004A 257D -> 8000004B 257E -> 8000004C 2678 -> 8000004D 2B44 -> 8000004E 2B48 -> 8000004F 2B49 -> 80000050 2B4A -> 80000051 2B4B -> 80000052 2B4C -> 80000053 2B4D -> 80000054 2B4E -> 80000055 2B4F -> 80000056 # END OF ./jiscompose.pl ./bin/olditalic.pl0000755000175000017500000000524311326531430014113 0ustar henrichhenrich#!/usr/bin/perl # Create OldItalic16 or OldItalic # OldItalic16 is 16 bit (Using surrogates) die "No version specified." if ($#ARGV == -1); $VERSION=shift; if ($#ARGV < 0 || ($ARGV[0] ne "16" && $ARGV[0] ne "u")) { print STDERR "usage: $0 u|16 UnicodeData.txt > OldItalic.kmap\n"; exit (0); } $surrogates = ($ARGV[0] eq "16") ? 1 : 0; $suffix=($surrogates==1)?"16":""; shift; if ($surrogates==1) { print "// Experimental OldItalic$suffix.kmap\n"; print "// Generated from http://www.unicode.org/Public/$VERSION/uc/UnicodeData.txt\n"; print "// Please give me a better map if you have any.\n"; print "// Generated by $0 Gaspar Sinai \n"; print "// GNU (C) 2002-04-03\n"; print "// kmap can handle only utf-16 values. Use mys for a ucs-4 map!\n"; print "// This map will produce a surrogate pair - bad boy!.\n"; print "// \n"; print "// Mytool option -type clkmap must be specified when compiling.\n"; } else { print "# YUDIT-NtoN 1.0\n"; print "NAME=OldItalic$suffix.kmap\n"; print "COMM= Generated from http://www.unicode.org/Public/$VERSION/uc/UnicodeData.txt\n"; print "COMM= Experimental OldItalic$suffix.mys\n"; print "COMM= Please give me a better map if you have any.\n"; print "COMM= Generated by $0 Gaspar Sinai \n"; print "COMM= GNU (C) 2002-04-03\n"; print "COMM= This map will produce UCS4 characters.\n"; print "TYPE=00000001\n"; print "SECTION=Section1\n"; print "ENCODE=00\n"; print "KEY_WIDTH=00\n"; print "VALUE_WIDTH=02\n"; print "KEY_LENGTH=00\n"; print "VALUE_LENGTH=00\n"; } while (<>) { if (/(103[0-9a-fA-F]{2});(OLD ITALIC \S+) ([^;]+);/) { $num = hex ($1); $name = $2 . " " . $3; $cname = $3; $cname =~ y/A-Z/a-z/; #print "num=" . $num . " " . $cname . "\n"; $cname =~ s/ku/q/; $cname =~ s/ke/c/; $cname =~ s/ka/j/; $cname =~ s/khe/k/; $cname =~ s/the/g/; $cname =~ s/one/0x31/; $cname =~ s/five/0x35/; $cname =~ s/ten/0x31 0x30/; $cname =~ s/fifty/0x35 0x30/; $cname =~ s/ks/x/; $cname =~ s/(.)e/$1/; $cname =~ s/e(.)/$1/ if ($cname ne "esh"); if (defined ($names{$cname})) { print STDERR "Already defined $name in $names{$cname}\n"; exit (1); } $names{$cname} = $name; if ($surrogates == 1) { $num = $num - 0x10000; $to = sprintf ("0x%X 0x%X", ($num >> 10) + 0xd800, ($num & 0x3ff) + 0xdc00); printf ("\"%s = %s\", // %s\n", $cname, $to, $name); } else { $to = sprintf ("%08X", $num); $cname =~ s/0x3(.) /$1/g; $cname =~ s/0x3(.)/$1/g; $cname =~ s/(.)/'$1/g; printf ("%s -> %s # %s\n", $cname, $to, $name); } } } exit(0); ./bin/jis2000.pl0000755000175000017500000002126007532460062013241 0ustar henrichhenrich#!/usr/bin/perl # Create jis2000.mys from jis-0213-1.mys and jis-0213-2.mys # Gaspar Sinai gsinai@yudit.org # Tokyo 2002-03-07 # The input for this program is 2 files: # jis-0213-1.mys # jis-0213-2.mys print "NAME=shift-jis-0213.mys\n"; print "COMM= Shift_JISX0313 -> Unicode with JIS X 0213 and JIS X 0201\n"; print "COMM= Generated by $0 from jis-0213-1.mys and jis-0213-2.mys\n"; print "COMM= ". `date`; # # # $men = 0; @JIS0201=(); while () { chomp; push (@JIS0201, $_ . "\n"); } while (<>) { chomp; # two files are cat here. next if (/NAME=/); if ($men == 0) { printf ("%s\n", $_); } # New file :) if (/VALUE_LENGTH=/) { $men++; if ($men ==1) { print join ('', @JIS0201); print "\n"; } print "# MEN 1 of JIS X 0213\n" if ($men ==1); print "# MEN 2 of JIS X 0213\n" if ($men ==2); } if (/^(....) -> (........)(.*)$/) { $jis = hex ($1); $unic = hex ($2); $comment = $3; $sjis = &jis2sjis ($men, $jis); die "BAD LINE $men: $_" if ($sjis==0); printf ("%04X -> %08X%s\n", $sjis, $unic, $comment); } } exit (0); # # Shift_JISX0213 conversion. # Input parameter is jis code # Returns a Shift_JISX0213 code or zero. # sub jis2sjis { my ($phex, $jis) = @_; my ($m, $k, $t) = ($phex, ($jis>>8)-0x20, ($jis&0xff)-0x20); my ($s1, $s2) = (0,0); if ($m==1) { if ($k>=1 && $k<=62) { $s1 = ($k + 0x101)/2; } elsif ($k>=63 && $k<=94) { $s1 = ($k + 0x181)/2; } else { printf (STDERR "NONJIS kuten=%d\n", $k); return (0); } } elsif ($m==2) { if ($k==1||$k==3||$k==4||$k==5||$k==8||$k==12||$k==13||$k==14||$k==15) { $s1 = ($k + 0x1df)/2 - (int($k/8)) * 3; } elsif ($k>=78 && $k<= 94) { $s1 = ($k + 0x19b)/2; } else { printf (STDERR "NONJIS men=%d kuten=%d JIS=%X\n", $m, $k, $jis); return (0); } } else { printf (STDERR "NONJIS men=%d JIS=%X\n", $m, $jis); return (0); } # odd if (($k%2) == 1) { $s2 = $t + 0x3f if ($t >= 1 && $t <= 63); $s2 = $t + 0x40 if ($t >= 64 && $t <= 94); } # odd else { $s2 = $t + 0x9e; } return (($s1 << 8) + $s2); } __DATA__ # START JIS 0213 0020 -> 00000020 # SPACE 0021 -> 00000021 # EXCLAMATION MARK 0022 -> 00000022 # QUOTATION MARK 0023 -> 00000023 # NUMBER SIGN 0024 -> 00000024 # DOLLAR SIGN 0025 -> 00000025 # PERCENT SIGN 0026 -> 00000026 # AMPERSAND 0027 -> 00000027 # APOSTROPHE 0028 -> 00000028 # LEFT PARENTHESIS 0029 -> 00000029 # RIGHT PARENTHESIS 002A -> 0000002A # ASTERISK 002B -> 0000002B # PLUS SIGN 002C -> 0000002C # COMMA 002D -> 0000002D # HYPHEN-MINUS 002E -> 0000002E # FULL STOP 002F -> 0000002F # SOLIDUS 0030 -> 00000030 # DIGIT ZERO 0031 -> 00000031 # DIGIT ONE 0032 -> 00000032 # DIGIT TWO 0033 -> 00000033 # DIGIT THREE 0034 -> 00000034 # DIGIT FOUR 0035 -> 00000035 # DIGIT FIVE 0036 -> 00000036 # DIGIT SIX 0037 -> 00000037 # DIGIT SEVEN 0038 -> 00000038 # DIGIT EIGHT 0039 -> 00000039 # DIGIT NINE 003A -> 0000003A # COLON 003B -> 0000003B # SEMICOLON 003C -> 0000003C # LESS-THAN SIGN 003D -> 0000003D # EQUALS SIGN 003E -> 0000003E # GREATER-THAN SIGN 003F -> 0000003F # QUESTION MARK 0040 -> 00000040 # COMMERCIAL AT 0041 -> 00000041 # LATIN CAPITAL LETTER A 0042 -> 00000042 # LATIN CAPITAL LETTER B 0043 -> 00000043 # LATIN CAPITAL LETTER C 0044 -> 00000044 # LATIN CAPITAL LETTER D 0045 -> 00000045 # LATIN CAPITAL LETTER E 0046 -> 00000046 # LATIN CAPITAL LETTER F 0047 -> 00000047 # LATIN CAPITAL LETTER G 0048 -> 00000048 # LATIN CAPITAL LETTER H 0049 -> 00000049 # LATIN CAPITAL LETTER I 004A -> 0000004A # LATIN CAPITAL LETTER J 004B -> 0000004B # LATIN CAPITAL LETTER K 004C -> 0000004C # LATIN CAPITAL LETTER L 004D -> 0000004D # LATIN CAPITAL LETTER M 004E -> 0000004E # LATIN CAPITAL LETTER N 004F -> 0000004F # LATIN CAPITAL LETTER O 0050 -> 00000050 # LATIN CAPITAL LETTER P 0051 -> 00000051 # LATIN CAPITAL LETTER Q 0052 -> 00000052 # LATIN CAPITAL LETTER R 0053 -> 00000053 # LATIN CAPITAL LETTER S 0054 -> 00000054 # LATIN CAPITAL LETTER T 0055 -> 00000055 # LATIN CAPITAL LETTER U 0056 -> 00000056 # LATIN CAPITAL LETTER V 0057 -> 00000057 # LATIN CAPITAL LETTER W 0058 -> 00000058 # LATIN CAPITAL LETTER X 0059 -> 00000059 # LATIN CAPITAL LETTER Y 005A -> 0000005A # LATIN CAPITAL LETTER Z 005B -> 0000005B # LEFT SQUARE BRACKET 005C -> 000000A5 # YEN SIGN 005D -> 0000005D # RIGHT SQUARE BRACKET 005E -> 0000005E # CIRCUMFLEX ACCENT 005F -> 0000005F # LOW LINE 0060 -> 00000060 # GRAVE ACCENT 0061 -> 00000061 # LATIN SMALL LETTER A 0062 -> 00000062 # LATIN SMALL LETTER B 0063 -> 00000063 # LATIN SMALL LETTER C 0064 -> 00000064 # LATIN SMALL LETTER D 0065 -> 00000065 # LATIN SMALL LETTER E 0066 -> 00000066 # LATIN SMALL LETTER F 0067 -> 00000067 # LATIN SMALL LETTER G 0068 -> 00000068 # LATIN SMALL LETTER H 0069 -> 00000069 # LATIN SMALL LETTER I 006A -> 0000006A # LATIN SMALL LETTER J 006B -> 0000006B # LATIN SMALL LETTER K 006C -> 0000006C # LATIN SMALL LETTER L 006D -> 0000006D # LATIN SMALL LETTER M 006E -> 0000006E # LATIN SMALL LETTER N 006F -> 0000006F # LATIN SMALL LETTER O 0070 -> 00000070 # LATIN SMALL LETTER P 0071 -> 00000071 # LATIN SMALL LETTER Q 0072 -> 00000072 # LATIN SMALL LETTER R 0073 -> 00000073 # LATIN SMALL LETTER S 0074 -> 00000074 # LATIN SMALL LETTER T 0075 -> 00000075 # LATIN SMALL LETTER U 0076 -> 00000076 # LATIN SMALL LETTER V 0077 -> 00000077 # LATIN SMALL LETTER W 0078 -> 00000078 # LATIN SMALL LETTER X 0079 -> 00000079 # LATIN SMALL LETTER Y 007A -> 0000007A # LATIN SMALL LETTER Z 007B -> 0000007B # LEFT CURLY BRACKET 007C -> 0000007C # VERTICAL LINE 007D -> 0000007D # RIGHT CURLY BRACKET 007E -> 0000203E # OVERLINE 00A1 -> 0000FF61 # HALFWIDTH IDEOGRAPHIC FULL STOP 00A2 -> 0000FF62 # HALFWIDTH LEFT CORNER BRACKET 00A3 -> 0000FF63 # HALFWIDTH RIGHT CORNER BRACKET 00A4 -> 0000FF64 # HALFWIDTH IDEOGRAPHIC COMMA 00A5 -> 0000FF65 # HALFWIDTH KATAKANA MIDDLE DOT 00A6 -> 0000FF66 # HALFWIDTH KATAKANA LETTER WO 00A7 -> 0000FF67 # HALFWIDTH KATAKANA LETTER SMALL A 00A8 -> 0000FF68 # HALFWIDTH KATAKANA LETTER SMALL I 00A9 -> 0000FF69 # HALFWIDTH KATAKANA LETTER SMALL U 00AA -> 0000FF6A # HALFWIDTH KATAKANA LETTER SMALL E 00AB -> 0000FF6B # HALFWIDTH KATAKANA LETTER SMALL O 00AC -> 0000FF6C # HALFWIDTH KATAKANA LETTER SMALL YA 00AD -> 0000FF6D # HALFWIDTH KATAKANA LETTER SMALL YU 00AE -> 0000FF6E # HALFWIDTH KATAKANA LETTER SMALL YO 00AF -> 0000FF6F # HALFWIDTH KATAKANA LETTER SMALL TU 00B0 -> 0000FF70 # HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK 00B1 -> 0000FF71 # HALFWIDTH KATAKANA LETTER A 00B2 -> 0000FF72 # HALFWIDTH KATAKANA LETTER I 00B3 -> 0000FF73 # HALFWIDTH KATAKANA LETTER U 00B4 -> 0000FF74 # HALFWIDTH KATAKANA LETTER E 00B5 -> 0000FF75 # HALFWIDTH KATAKANA LETTER O 00B6 -> 0000FF76 # HALFWIDTH KATAKANA LETTER KA 00B7 -> 0000FF77 # HALFWIDTH KATAKANA LETTER KI 00B8 -> 0000FF78 # HALFWIDTH KATAKANA LETTER KU 00B9 -> 0000FF79 # HALFWIDTH KATAKANA LETTER KE 00BA -> 0000FF7A # HALFWIDTH KATAKANA LETTER KO 00BB -> 0000FF7B # HALFWIDTH KATAKANA LETTER SA 00BC -> 0000FF7C # HALFWIDTH KATAKANA LETTER SI 00BD -> 0000FF7D # HALFWIDTH KATAKANA LETTER SU 00BE -> 0000FF7E # HALFWIDTH KATAKANA LETTER SE 00BF -> 0000FF7F # HALFWIDTH KATAKANA LETTER SO 00C0 -> 0000FF80 # HALFWIDTH KATAKANA LETTER TA 00C1 -> 0000FF81 # HALFWIDTH KATAKANA LETTER TI 00C2 -> 0000FF82 # HALFWIDTH KATAKANA LETTER TU 00C3 -> 0000FF83 # HALFWIDTH KATAKANA LETTER TE 00C4 -> 0000FF84 # HALFWIDTH KATAKANA LETTER TO 00C5 -> 0000FF85 # HALFWIDTH KATAKANA LETTER NA 00C6 -> 0000FF86 # HALFWIDTH KATAKANA LETTER NI 00C7 -> 0000FF87 # HALFWIDTH KATAKANA LETTER NU 00C8 -> 0000FF88 # HALFWIDTH KATAKANA LETTER NE 00C9 -> 0000FF89 # HALFWIDTH KATAKANA LETTER NO 00CA -> 0000FF8A # HALFWIDTH KATAKANA LETTER HA 00CB -> 0000FF8B # HALFWIDTH KATAKANA LETTER HI 00CC -> 0000FF8C # HALFWIDTH KATAKANA LETTER HU 00CD -> 0000FF8D # HALFWIDTH KATAKANA LETTER HE 00CE -> 0000FF8E # HALFWIDTH KATAKANA LETTER HO 00CF -> 0000FF8F # HALFWIDTH KATAKANA LETTER MA 00D0 -> 0000FF90 # HALFWIDTH KATAKANA LETTER MI 00D1 -> 0000FF91 # HALFWIDTH KATAKANA LETTER MU 00D2 -> 0000FF92 # HALFWIDTH KATAKANA LETTER ME 00D3 -> 0000FF93 # HALFWIDTH KATAKANA LETTER MO 00D4 -> 0000FF94 # HALFWIDTH KATAKANA LETTER YA 00D5 -> 0000FF95 # HALFWIDTH KATAKANA LETTER YU 00D6 -> 0000FF96 # HALFWIDTH KATAKANA LETTER YO 00D7 -> 0000FF97 # HALFWIDTH KATAKANA LETTER RA 00D8 -> 0000FF98 # HALFWIDTH KATAKANA LETTER RI 00D9 -> 0000FF99 # HALFWIDTH KATAKANA LETTER RU 00DA -> 0000FF9A # HALFWIDTH KATAKANA LETTER RE 00DB -> 0000FF9B # HALFWIDTH KATAKANA LETTER RO 00DC -> 0000FF9C # HALFWIDTH KATAKANA LETTER WA 00DD -> 0000FF9D # HALFWIDTH KATAKANA LETTER N 00DE -> 0000FF9E # HALFWIDTH KATAKANA VOICED SOUND MARK 00DF -> 0000FF9F # HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK # END JIS 0213 ./bin/makecid2uni.pl0000755000175000017500000000177207532460062014353 0ustar henrichhenrich#!/usr/bin/perl # This script is a modified version of # makecid2uni that can be found in: # http://kappa.allnet.ne.jp/Kochi-CID/index-e.html -> CIDKit-20020407.tar.gz # This will make a conversion map from: # http://www.aihara.co.jp/~taiji/tops/index-j.html -> cjkvttcidmap-0.94.tar.gz # Adobe-Japan1-Unicode $cid = 0; while (<>) { last if (/DuplicateCodeMap/); next unless /^16#/; foreach $v (split) { $v =~ s/^16#//; $cid2uni[$cid] = hex($v) if $v ne '0000'; $cid++; } } $cidsup = $cid; while (<>) { last if (/def/); next unless s/\[\s*(.*?)\s*\]/$1/; s/16#//g; ($cid, @unis) = split; foreach $u (@unis) { $u = hex($u); } $dupcode[$cid] = [@unis]; } $cid2uni[0] = 0; for ($cid = 0; $cid < $cidsup; $cid++) { if (defined $dupcode[$cid]) { @all = @{$dupcode[$cid]}; printf ("%04X ->", $cid); for (@all) { printf (" %04X", $_); } printf ("\n"); } elsif (defined $cid2uni[$cid]) { printf ("%04X -> %04X\n", $cid, $cid2uni[$cid]); } } ./bin/cluster/0000755000175000017500000000000010724001346013263 5ustar henrichhenrich./bin/cluster/cluster.template0000644000175000017500000000400007551154544016510 0ustar henrichhenrichNAME=cluster.my COMM=autogenerated clusters fron unicode -> display cluster TYPE=0 SECTION=cluster ENCODE=0 KEY_WIDTH=1 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # # Test - ligatures are defined on top of clusters. # Remove this from production release. # # Ligature # #0041 0042 -> 00000041 00000042 80000001 # # Just a cluster # #0043 0044 -> 00000043 00000044 # ------------------ Yudit Ligatures ------------------------------- # Yudit ligatures below 0x80008000 are considered hacked glyphs only # Y+0001 MODIFIER LETTER EXTRA-HIGH TONE BAR # Y+0002 MODIFIER LETTER HIGH TONE BAR # Y+0003 MODIFIER LETTER MID TONE BAR # Y+0004 MODIFIER LETTER LOW TONE BAR # Y+0005 MODIFIER LETTER EXTRA-LOW TONE BAR # Y+0010 RISING LETTER # Y+0011 FALLING LETTER 02E9 02E5 -> 000002E9 000002E5 80000010 02E5 02E9 -> 000002E5 000002E9 80000011 # Generated by ./jiscompose.pl at 2002-04-15 # Add this to bin/cluster/cluster.template # Usually clusters are non-composing. # Don't forget to hard-code 'Composing Clusters' to # swindow/SFont.cpp: MARK Composing Cluster. (2 places) # 309A 0300 0301 are already added. 304B 309A -> 0000304B 0000309A 80000040 304D 309A -> 0000304D 0000309A 80000041 304F 309A -> 0000304F 0000309A 80000042 3051 309A -> 00003051 0000309A 80000043 3053 309A -> 00003053 0000309A 80000044 30AB 309A -> 000030AB 0000309A 80000045 30AD 309A -> 000030AD 0000309A 80000046 30AF 309A -> 000030AF 0000309A 80000047 30B1 309A -> 000030B1 0000309A 80000048 30B3 309A -> 000030B3 0000309A 80000049 30BB 309A -> 000030BB 0000309A 8000004A 30C4 309A -> 000030C4 0000309A 8000004B 30C8 309A -> 000030C8 0000309A 8000004C 31F7 309A -> 000031F7 0000309A 8000004D 00E6 0300 -> 000000E6 00000300 8000004E 0254 0300 -> 00000254 00000300 8000004F 0254 0301 -> 00000254 00000301 80000050 028C 0300 -> 0000028C 00000300 80000051 028C 0301 -> 0000028C 00000301 80000052 0259 0300 -> 00000259 00000300 80000053 0259 0301 -> 00000259 00000301 80000054 025A 0300 -> 0000025A 00000300 80000055 025A 0301 -> 0000025A 00000301 80000056 # END OF ./jiscompose.pl ./bin/cluster/Makefile0000644000175000017500000000126507532460062014736 0ustar henrichhenrich# # Put a list of scripts here. # INDIC=Tamil CLUSTER_DIR=../../mytool/mys MYS_DIR=../../mytool/mys KMAP_DIR=../../mytool/kmap indic: iscii cp cluster.template $(CLUSTER_DIR)/cluster.mys @echo Creating: $(CLUSTER_DIR)/cluster.mys @for i in $(INDIC); do \ echo Adding $$i to $(CLUSTER_DIR)/cluster.mys; \ perl $$i.cluster.pl >> $(CLUSTER_DIR)/cluster.mys; \ if [ $$? != 0 ]; then \ exit 1; \ fi; \ if [ -f $$i.kmap.pl ]; \ then \ echo Creating: $(KMAP_DIR)/$$i.kmap; \ perl $$i.kmap.pl > $(KMAP_DIR)/$$i.kmap; \ if [ $$? != 0 ]; then \ exit 1; \ fi; \ fi; \ done iscii: $(MYS_DIR)/tscii.mys $(MYS_DIR)/tscii.mys: Tamil.tscii.pl perl $< > $@ ./bin/cluster/Tamil.cluster.pl0000644000175000017500000001032607532460062016357 0ustar henrichhenrich#!/usr/bin/perl -w # # A script to convert tamil character clusters to # their presentation format and assign them internal Yudit ids. # # Tamil clusters are formed by # vowels = 12 # consonants = 22 (including grantha) # modifiers = pulli (VIRAMA), i, I, u, U, e, E, ai, o, O and au # and the aytham symbol # # In general, we need to output new glyphs for clusters # formed by modifiers (i I u U and pulli). We assign unique ids # internal to Yudit for the output glyphs, following the Pango convention # outlined in http://www.wholehog.fsnet.co.uk/robert/indic/fonts.htm # # Thuraippah Vaseeharan # Thu Dec 27 22:49:33 CST 2001 # # CHANGES: # merged Tamil.kmap.pl # Mon Dec 31 19:18:06 CST 2001 $KMAP_FILE="../../mytool/kmap/Tamil.kmap" ; open (KMAP_FILE, ">$KMAP_FILE") || die "unable to open kmap file for writing" ; print KMAP_FILE "//autogenerated by Tamil.cluster.pl\n" ; @consonant_keys = qw(k ng c j nj d N t q n p m y r R l L z v sh s h) ; %modifier_keys = ( '0bbe' => 'A', '0bcd' => 'f', '0bbf' => 'i', '0bc0' => 'I', '0bc1' => 'u', '0bc2' => 'U', '0bc6' => 'e', '0bc7' => 'E', '0bc8' => 'G', '0bca' => 'o', '0bcb' => 'O', '0bcc' => 'H' ) ; # The notation for vowels modifiers ai(G)/au(H) # is not very obvious :-( # They have been 'renamed' as G, H to prevent Yudit 'waiting' # for additional input, when typing the "a" vowel @vowel_keys = qw(a A i I u U e E G o O H) ; $aytham = "0b83" ; $pulli = "0bcd" ; $aravu = "0bbe" ; @vowels = qw(0b85 0b86 0b87 0b88 0b89 0b8a 0b8e 0b8f 0b90 0b92 0b93 0b94) ; @consonants = qw(0b95 0b99 0b9a 0b9c 0b9e 0b9f 0ba3 0ba4 0ba8 0ba9 0baa 0bae 0baf 0bb0 0bb1 0bb2 0bb3 0bb4 0bb5 0bb7 0bb8 0bb9) ; @modifiers_0 = qw(0bbf 0bc0 0bc1 0bc2) ; # i I u U @modifiers_1 = qw(0bc6 0bc7 0bc8) ; # e E ai @modifiers_2 = qw(0bca 0bcb 0bcc) ; # o O au %first_part = ( '0bca' => '0bc6', '0bcb' => '0bc7', '0bcc' => '0bc6' ) ; %last_part = ( '0bca' => '0bbe' , '0bcb' => '0bbe' , '0bcc' => '0bd7' ) ; $independent = 0x80060000 ; print "COMM=begin tamil clusters \n" ; print "COMM=autogenerated by Tamil.cluster.pl\n" ; # uyirs $i= 0; foreach $vowel (@vowels) { printf(KMAP_FILE "\"%s=0x%s\",\n", $vowel_keys[$i++], $vowel) ; printf("%s -> 0000%s %x\n", $vowel, $vowel, $independent++) ; } # aytham printf(KMAP_FILE "\"%s=0x%s\",\n", "Q", $aytham) ; printf("%s -> 0000%s %x\n", $aytham, $aytham, $independent++) ; # akara meys (base consonant) $i= 0; foreach $cons (@consonants) { printf(KMAP_FILE "\"%s%s=0x%s\",\n", $consonant_keys[$i++], "a", $cons) ; printf("%s -> 0000%s %x\n", $cons, $cons, $independent++) ; } # Akaaram meys (long form of base consonant) $i = 0 ; foreach $cons (@consonants) { printf(KMAP_FILE "\"%s%s=0x%s 0x%s\",\n", $consonant_keys[$i++], $modifier_keys{$aravu}, $cons, $aravu) ; printf("%s %s -> 0000%s 0000%s %x\n", $cons, $aravu, $cons, $aravu, $independent++) ; } # meys (base consonant + pulli) and other uyir-meys (including ligatures and re-ordered forms) $uyirmeys = 0x8006d000 ; $meys = 0x8006f000 ; $reordered = 0x8006e000 ; $i = 0 ; foreach $cons (@consonants) { # Tamil Meys: ligatures with pulli (virama) printf(KMAP_FILE "\"%s%s=0x%s 0x%s\",\n", $consonant_keys[$i], $modifier_keys{$pulli}, $cons, $pulli) ; printf("%s %s -> 0000%s 0000%s %x\n", $cons, $pulli, $cons, $pulli, $meys++) ; # Tamil Uyir-Meys: # ligatures with i, I, u, U foreach $mod (@modifiers_0) { printf(KMAP_FILE "\"%s%s=0x%s 0x%s\",\n", $consonant_keys[$i], $modifier_keys{$mod}, $cons, $mod) ; printf("%s %s -> 0000%s 0000%s %x\n", $cons, $mod, $cons, $mod, $uyirmeys++) ; } # re-ordered forms # for (e E ai), just flip foreach $mod (@modifiers_1) { printf(KMAP_FILE "\"%s%s=0x%s 0x%s\",\n", $consonant_keys[$i], $modifier_keys{$mod}, $cons, $mod) ; printf("%s %s -> 0000%s 0000%s %x\n", $cons, $mod, $mod, $cons, $reordered++) ; } # for (o O au), the modifier "splits" into two parts, # that surround the base consonant foreach $mod (@modifiers_2) { printf(KMAP_FILE "\"%s%s=0x%s 0x%s\",\n", $consonant_keys[$i], $modifier_keys{$mod}, $cons, $mod) ; printf("%s %s -> 0000%s 0000%s 0000%s %x\n", $cons, $mod, $first_part{$mod}, $cons, $last_part{$mod}, $reordered++) ; } $i++ ; } print "COMM=end tamil\n" ; ./bin/cluster/Tamil.tscii.pl0000644000175000017500000000523507532460062016014 0ustar henrichhenrich#!/usr/bin/perl -w # # script to generate mapping between # Yudit internal ids and codepoints in # Tamil TSCII fonts (http://www.tscii.org) # Thuraiappah Vaseeharan # Mon Dec 31 20:13:51 CST 2001 print < 1, 0x201e => 1, 0x2025 => 1, 0x2020 => 1) ; @modifiers_0 = (0xa2, 0xa3) ; # i I #@modifiers_1 = (0xa4, 0xa5) ; # u U @modifiers_2 = (0xa6..0xa8) ; # e E ai @modifiers_3 = qw(o O au) ; # o O au %didI = ( 0xa2 => 0xca, 0xa3 => 0xcb) ; %first_part = ( 'o' => 0xa6, 'O' => 0xa7, 'au' => 0xa6 ) ; %last_part = ( 'o' => 0xa1 , 'O' => 0xa1 , 'au' => 0xaa ) ; # independent vowels, consonants print "COMM=begin tamil clusters\n" ; print "COMM=uyir, akara meys\n" ; $id = 0x80060000 ; foreach $v (@vowels) { printf("%x -> %04x\n", $id++, $v) ; } foreach $c (@consonants) { printf("%x -> %04x\n", $id++, $c) ; } $aravu = 0xa1 ; foreach $c (@consonants) { printf("%x -> %04x %04x\n", $id++, $c, $aravu) ; } print "COMM=meys\n" ; # meys (consonant + pulli) $id = 0x8006f000 ; @meys = (0xec..0xee, 0x2c6, 0xef..0xf3, 0xfd, 0xf4..0xf7, 0xfc, 0xf8, 0xfb, 0xfa, 0xf9, 0x2030, 0x0160, 0x2039) ; foreach $m (@meys) { printf("%x -> %04x\n", $id++, $m) ; } print "COMM=uyir-meys\n" ; # uyir-meys $id1 = 0x8006d000 ; $id2 = 0x8006e000 ; $count = 0 ; foreach $c (@consonants) { # i, I foreach $m (@modifiers_0) { if ($c == 0xbc) { printf("%x -> %04x\n", $id1++, $didI{$m}) ; } else { printf("%x -> %04x %04x\n", $id1++, $c, $m) ; } } # u if ($granthas{$c}) { printf("%x -> %04x %04x\n", $id1++, $c, $ukaram[$count]) ; } else { printf("%x -> %04x\n", $id1++, $ukaram[$count]) ; } # U if ($granthas{$c}) { printf("%x -> %04x %04x\n", $id1++, $c, $Ukaaram[$count]) ; } else { printf("%x -> %04x\n", $id1++, $Ukaaram[$count]) ; } # e, E, ai foreach $m (@modifiers_2) { printf("%x -> %04x %04x\n", $id2++, $m, $c) ; } # o, O, au foreach $m (@modifiers_3) { printf("%x -> %04x %04x %04x\n", $id2++, $first_part{$m}, $c, $last_part{$m}) ; } $count++ ; } print "COMM=end tamil\n" ; ./bin/vc60.bat0000644000175000017500000000143011330601262013043 0ustar henrichhenrichREM REM Microsoft Visual Studio 6.0 Environment Settings. REM set include=C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include;%include% set lib=C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib;%lib% set MSDevDir=C:\Program Files\Microsoft Visual Studio\Common\MSDev98 REM REM set path=C:\Thirdparty\MSys-1.0\bin;%path% set path=C:\Build\Unix\usr\local\wbin;%path% REM set path=C:\Program Files\Microsoft Visual Studio\Common\Tools\WinNT;C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;C:\Program Files\Microsoft Visual Studio\Common\Tools;C:\Program Files\Microsoft Visual Studio\VC98\bin;%path% ./bin/ttf2bdf.rovstd.sh0000755000175000017500000001063307532460062015026 0ustar henrichhenrich#!/bin/sh #TYPEFACE=fixed TYPEFACE=rovas RES=100 ttF2BDf -f misc -t $TYPEFACE -w medium \ -m $0 -p 13 -r $RES \ -o rovstd.bdf rovstd.ttf mkfontdir xset fp rehash xfd -fn "-misc-$TYPEFACE-medium-r-normal--18-130-$RES-$RES-p-90-iso10646-1" exit 0 # # Second Column: ROVSTD codes. # First Column: Unicode PUA values. ## REGISTRY ISO10646 ENCODING 1 0xEE00 0x61 #  OLD HUNGARIAN LETTER A 0xEE01 0x41 #  OLD HUNGARIAN LETTER AA 0xEE02 0x62 #  OLD HUNGARIAN LETTER EB 0xEE03 0x63 #  OLD HUNGARIAN LETTER EC 0xEE04 0x43 #  OLD HUNGARIAN LETTER ECS 0xEE05 0x64 #  OLD HUNGARIAN LETTER ED # # From this point on we shifted 1 from original proposal # 0xEE06 0x48 #  OLD HUNGARIAN LETTER AE 0xEE07 0x65 #  OLD HUNGARIAN LETTER E 0xEE08 0x45 #  OLD HUNGARIAN LETTER EE 0xEE09 0x66 #  OLD HUNGARIAN LETTER EF 0xEE0A 0x67 #  OLD HUNGARIAN LETTER EG 0xEE0B 0x47 #  OLD HUNGARIAN LETTER EGY 0xEE0C 0x68 #  OLD HUNGARIAN LETTER EH 0xEE0D 0x69 #  OLD HUNGARIAN LETTER I 0xEE0E 0x49 #  OLD HUNGARIAN LETTER II 0xEE0F 0x6A #  OLD HUNGARIAN LETTER EJ 0xEE10 0x4B #  OLD HUNGARIAN LETTER AK 0xEE11 0x6B #  OLD HUNGARIAN LETTER EK 0xEE12 0x6C #  OLD HUNGARIAN LETTER EL 0xEE13 0x4C #  OLD HUNGARIAN LETTER ELY 0xEE14 0x6D #  OLD HUNGARIAN LETTER EM 0xEE15 0x6E #  OLD HUNGARIAN LETTER EN 0xEE16 0x4E #  OLD HUNGARIAN LETTER ENY 0xEE17 0x6F #  OLD HUNGARIAN LETTER O 0xEE18 0x4F #  OLD HUNGARIAN LETTER OO 0xEE19 0x71 #  OLD HUNGARIAN LETTER OE 0xEE1A 0x51 #  OLD HUNGARIAN LETTER OEE 0xEE1B 0x70 #  OLD HUNGARIAN LETTER EP 0xEE1C 0x72 #  OLD HUNGARIAN LETTER ER 0xEE1D 0x46 #  OLD HUNGARIAN LETTER AS # # From this point on we shifted 2 from original proposal # 0xEE1E 0x73 #  OLD HUNGARIAN LETTER ES 0xEE1F 0x53 #  OLD HUNGARIAN LETTER ESZ 0xEE20 0x74 #  OLD HUNGARIAN LETTER ET 0xEE21 0x78 #  OLD HUNGARIAN LETTER ATY # # From this point on we shifted 3 from original proposal # 0xEE22 0x54 #  OLD HUNGARIAN LETTER ETY 0xEE23 0x75 #  OLD HUNGARIAN LETTER U 0xEE24 0x55 #  OLD HUNGARIAN LETTER UU 0xEE25 0x77 #  OLD HUNGARIAN LETTER UE 0xEE26 0x57 #  OLD HUNGARIAN LETTER UEE 0xEE27 0x76 #  OLD HUNGARIAN LETTER EV 0xEE28 0x7A #  OLD HUNGARIAN LETTER EZ 0xEE29 0x5A #  OLD HUNGARIAN LETTER EZS # 0xEE2F 0xBA # OLD HUNGARIAN SEPARATOR # # NUMBERS # 0xEE31 0x79 #  OLD HUNGARIAN NUMBER ONE 0xEE35 0x59 #  OLD HUNGARIAN NUMBER FIVE 0xEE3A 0x58 #  OLD HUNGARIAN NUMBER TEN 0xEE3B 0x56 #  OLD HUNGARIAN NUMBER FIFTY 0xEE3C 0x42 #  OLD HUNGARIAN NUMBER ONE HUNDRED 0xEE3D 0x4D #  OLD HUNGARIAN NUMBER ONE THOUSAND # # LIGATURES # 0xEE40 0xD8 # AB 0xEE41 0xA5 #  AD 0xEE42 0xAF #  AL 0xEE43 0x4A #  AMB 0xEE44 0xE1 #  AND 0xEE45 0xC1 #  ANT 0xEE46 0xE0 #  AR 0xEE47 0xEC #  ATT 0xEE48 0xEB #  AAR 0xEE49 0xC2 #  BA 0xEE4A 0xDC #  BE 0xEE4B 0xA1 # BET 0xEE4C 0xDA #  BI 0xEE4D 0xD3 #  BO 0xEE4E 0xB5 #  CAK 0xEE4F 0xF2 #  CK 0xEE50 0xBF #  CSA 0xEE51 0xC7 #  CSIN 0xEE52 0xCF #  DU 0xEE53 0xFB #  EMP 0xEE54 0xE9 #  ENT 0xEE55 0xE5 #  GA 0xEE56 0xCA #  GE 0xEE57 0xE6 #  GI # rovtxt 0xEE58 0x8C #  GO 0xEE58 0x0152 #  GO # rovtxt 0xEE59 0x9F #  HA 0xEE59 0x0178 #  HA 0xEE5A 0xDB #  HE # rovtxt 0xEE5B 0x98 #  HI 0xEE5B 0x02DC #  HI 0xEE5C 0xF3 #  HO # rovtxt 0xEE5D 0x85 #  IT 0xEE5D 0x2026 #  IT 0xEE5E 0xCD #  IRT 0xEE5F 0xFF #  LA 0xEE60 0xCE #  LAA 0xEE61 0xC9 #  LE 0xEE62 0xF9 #  LO 0xEE63 0xD2 #  LT 0xEE64 0xFC #  MB 0xEE65 0xC6 #  NA 0xEE66 0x50 #  NAP 0xEE67 0xED #  NB 0xEE68 0xF8 #  NE 0xEE69 0xEF #  ND 0xEE6A 0xD1 #  NGY 0xEE6B 0xA2 #  NI 0xEE6C 0xE2 #  NK # rovtxt 0xEE6D 0x9C #  NT 0xEE6D 0x0153 #  NT 0xEE6E 0xA9 #  AR 0xEE6F 0xE4 #  RA 0xEE70 0xEE #  RE 0xEE71 0xC0 #  RI 0xEE72 0xAE #  RO 0xEE73 0xC3 #  RT 0xEE74 0xE7 #  RU 0xEE75 0xAC #  SA 0xEE76 0xDF #  SE 0xEE77 0xA3 #  SI # rovtxt 0xEE78 0x83 #  SK 0xEE78 0x0192 #  SK 0xEE79 0xF1 #  SM 0xEE7A 0xC4 #  SO 0xEE7B 0xE3 #  SP 0xEE7C 0xE8 #  ST 0xEE7D 0xC5 #  SZT 0xEE7E 0xA8 #  TI 0xEE7F 0x52 #  TPRU 0xEE80 0x44 #  TPRUS 0xEE81 0xF4 #  TYA 0xEE82 0xEA #  UL 0xEE83 0xAA #  UM # rovtxt 0xEE84 0x99 #  UNK 0xEE84 0x2122 #  UNK 0xEE85 0xCC #  UR 0xEE86 0xFA #  US 0xEE87 0xC8 #  VA 0xEE88 0xD4 #  VAAR 0xEE89 0xD9 #  ZA 0xEE8A 0xCB #  ZR 0xEE8B 0xB8 #  ZT ./bin/sgml.pl0000755000175000017500000000060310716560456013120 0ustar henrichhenrich#!/usr/bin/perl die unless open (UNI, "< SGML.txt"); while () { chop; split /\t/; next if ($#_ < 3); $comm = $_[3]; $comm =~ s/^#/\/\//; $ALL{$_[0]} = 1; print "\"&". $_[0] . ";" . "=" . $_[2] . "\", " . $comm; print $/; } print < # # This program 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 of the License, or # (at your option) any later version. # # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # This script makes a precompose map. # In order to run the script you need to get # ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt # as and input. # encode composing chars -> precomposed char # decode precomposed char -> composing chars die "No version specified." if ($#ARGV == -1); $VERSION=shift; @encodes = (); @decodes = (); while (<>) { next if (split (';')) < 6; $plain = $_[0]; $plain = hex $plain; next if ($plain > 0xffff); $components = $_[5]; next if (length ($components)==0); @compose = split (' ', $components); next if ($#compose <=0); $good = 1; @hexcomp = (); for (@compose) { if ($_ !~ /^[0-9A-Fa-f]+/) { $good = 0; last; } push (@hexcomp, $_); } next if ($good == 0); next if ($#hexcomp <= 0); $key = sprintf ("%04X", $plain); # # make it utf-8 - dont # #if ($plain >= 0x0800) #{ # $key = sprintf ("%02X %02X %02X", # 0xe0 | ($plain>>12), 0x80 | (($plain>>6)&0x3f), 0x80 | ($plain&0x3f)); #} #elsif ($plain >= 0x80) #{ # $key = sprintf ("%02X %02X", 0xc0 | ($plain>>6), 0x80 | ($plain&0x3f)); #} #else #{ # $key = sprintf ("%02X", $plain); #} push (@decodes, $key . " -> " . join (' ', @hexcomp)); push (@encodes, join (' ', @hexcomp) . " -> " . $key); } @full_date = localtime(time); $year = $full_date[5] + 1900; $mon = $full_date[4] + 1; $mday = $full_date[3]; $date = sprintf ("%4d-%02d-%02d", $year, $mon, $mday); $name="precompose.my"; print < # 2001-12-24 # $syl = 0xac00; for ($i = 0x1100; $i <= 0x1112; $i++) { for ($j = 0x1161; $j <= 0x1175; $j++) { for ($k = 0x11a7; $k <= 0x11c2; $k++) { printf ("%04X -> %04X %04X",$syl,$i,$j); printf (" %04X",$k) if $k != 0x11a7; print "\n"; $syl++; } } } print < # 2001-12-24 $syl = 0xac00; for ($i = 0x1100; $i <= 0x1112; $i++) { for ($j = 0x1161; $j <= 0x1175; $j++) { for ($k = 0x11a7; $k <= 0x11c2; $k++) { printf ("%04X %04X ",$i,$j); printf ("%04X ",$k) if $k != 0x11a7; printf ("-> %04X\n",$syl); $syl++; } } } print "#END$/"; ./bin/shape.pl0000755000175000017500000001765211326531141013255 0ustar henrichhenrich#!/usr/bin/perl # Yudit Unicode Editor Source File # # Copyright (C) 2000 Gaspar Sinai # # This program 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 of the License, or # (at your option) any later version. # # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. die "No version specified." if ($#ARGV == -1); $VERSION=shift; # # This script makes shaping maps # isolated # final # medial # initial # @full_date = localtime(time); $year = $full_date[5] + 1900; $mon = $full_date[4] + 1; $mday = $full_date[3]; $date = sprintf ("%4d-%02d-%02d", $year, $mon, $mday); $name="shape.my"; %STUFF = (); %KVLE = (); %DECODER=(); while (<>) { next if (split (';')) < 6; $present = $_[0]; $present = hex $present; next if ($present > 0xffff); if ($_[5] =~ /<(isolated)> ([0-9A-Fa-f ]+)/ || $_[5] =~ /<(medial)> ([0-9A-Fa-f ]+)/ || $_[5] =~ /<(final)> ([0-9A-Fa-f ]+)/ || $_[5] =~ /<(initial)> ([0-9A-Fa-f ]+)/) { $present = sprintf ("0000%04X", $present); $position = $1; @keys = split (' ', $2); $plain = ""; for ($i=0; $i<=$#keys; $i++) { $plain .= sprintf ("0000%04X ", hex ($keys[$i])); } $DECODER{$present} = $plain; $STUFF{$plain} = "found"; $KVLE{$plain . $position} = $present; } } # shaping forms for other two-form characters for ("672", "673", "675", "676", "677", "689", "68A", "68B", "68F", "690", "692", "693", "694", "695", "696", "697", "699", "6C2", "6C3", "6C4", "6CA", "6CD", "6CF", "6D5", # Arabic "710", "715", "716", "717", "718", "719", "71E", "728", "72A", "72C" # Syriac ) { $key = "00000" . $_ . " "; $KVLE {$key . "isolated" } = "A0001" . $_, $STUFF{$key} = "found", $DECODER{"A0001" . $_} = $key if (!defined ($KVLE {$key . "isolated" })); $KVLE {$key . "final" } = "A0004" . $_, $STUFF{$key} = "found", $DECODER{"A0004" . $_} = $key if (!defined ($KVLE {$key . "final" })); } # shaping forms for other four-form characters for ("66E", "66F", "678", "67C", "67D", "681", "682", "685", "69A", "69B", "69C", "69D", "69E", "69F", "6A0", "6A1", "6A2", "6A3", "6A5", "6A7", "6A8", "6AA", "6AB", "6AC", "6AE", "6B0", "6B2", "6B4", "6B5", "6B6", "6B7", "6B8", "6B9", "6BA", "6BC", "6BD", "6BF", "6CE", "6D1", "6FA", "6FB", "6FC", # Arabic "712", "713", "714", "71A", "71B", "71C", "71D", "71F", "720", "721", "722", "723", "724", "725", "726", "727", "729", "72B" # Syriac ) { $key = "00000" . $_ . " "; $KVLE {$key . "isolated" } = "A0001" . $_, $STUFF{$key} = "found", $DECODER{"A0001" . $_} = $key if (!defined ($KVLE {$key . "isolated" })); $KVLE {$key . "initial" } = "A0002" . $_, $STUFF{$key} = "found", $DECODER{"A0002" . $_} = $key if (!defined ($KVLE {$key . "initial" })); $KVLE {$key . "medial" } = "A0003" . $_, $STUFF{$key} = "found", $DECODER{"A0003" . $_} = $key if (!defined ($KVLE {$key . "medial" })); $KVLE {$key . "final" } = "A0004" . $_, $STUFF{$key} = "found", $DECODER{"A0004" . $_} = $key if (!defined ($KVLE {$key . "final" })); } print < # Miikka-Markus Alhonen # NAME=shape.my TYPE=0 COMM=ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt COMM=shapein -> isolated initial medial final COMM=Test A-> A i m f SECTION=shapeout ENCODE=1 KEY_WIDTH=2 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # EOD $tashkeelin = 0; for (sort (keys(%STUFF))) { $key = $_; $isolated = $KVLE {$key . "isolated" }; $final = $KVLE {$key . "final" }; $initial = $KVLE {$key . "initial" }; $medial = $KVLE {$key . "medial" }; $isolated = "00000000" if (!defined ($isolated)); $initial = "00000000" if (!defined ($initial)); $medial = "00000000" if (!defined ($medial)); $final = "00000000" if (!defined ($final)); # Lam-Alef if ($key eq "00000644 00000622 " || $key eq "00000644 00000623 " || $key eq "00000644 00000625 " || $key eq "00000644 00000627 " ) { print STDERR "forcing Lam-Alef in.\n"; } elsif ($key eq "00000643 00000627 " # URDU needs this. || $key eq "00000643 00000644 ") # URDU needs this. { print STDERR "forcing Urdu Ligatures in.\n"; $key =~ s/(\S+)\s(\S+)\s/$1 0000200D $2 /; # add ZWJ in between. } elsif ( (@kparts = split (' ', $key)) > 1) { $key = ""; for ($kp=0; $kp<=$#kparts; $kp++) { $key .= $kparts[$kp]; $key .= " 0000200D " if ($kp < $#kparts); } $key .= " "; print STDERR "Forcing Ligature: $key\n"; } elsif (length ($key) > 9) { # print STDERR "ignoring multiple $key keys - till STextData changed\n"; next; } elsif ($tashkeelin == 0 && hex ($key) > 0x064B) { # # Concerning tashkeel: I would like text with it to not look garbled. # Using shaped tashkeel would is nicer. # print < # Concerning tashkeel: I would like text with it to not look garbled. # Using shaped tashkeel would is nicer. # 0000064B -> 0000FE70 0000FE70 0000FE71 0000FE70 0000064E -> 0000FE76 0000FE76 0000FE77 0000FE76 0000064F -> 0000FE78 0000FE78 0000FE79 0000FE78 00000650 -> 0000FE7A 0000FE7A 0000FE7B 0000FE7A 00000651 -> 0000FE7C 0000FE7C 0000FE7D 0000FE7C 00000652 -> 0000FE7E 0000FE7E 0000FE7F 0000FE7E # # Miikka-Markus Alhonen # Syriac: The only obligatory ligature in all script styles: # Rish + Seyame (U+072A U+0308) # 0000072A 00000308 -> A0001001 00000000 00000000 A0004001 # # Kaf + Alif and Kaf + Lam should have a presentation form as # it is used in Urdu nastaliq.ttf. 000006A9 0000200D 00000627 -> A0001002 00000000 00000000 A0004002 000006A9 0000200D 00000644 -> A0001003 A0002003 A0003003 A0004003 # # END # EOD $tashkeelin = 1; } print $key . " -> " . "$isolated $initial $medial $final\n"; } print < isolated initial medial final COMM=Test A-> A i m f SECTION=shapein ENCODE=0 KEY_WIDTH=2 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # EOD $tashkeelout = 0; for (sort (keys(%DECODER))) { $plain = $DECODER{$_}; if ($tashkeelout == 0 && hex ($_) > 0xFE70) { print < # Concerning tashkeel: I would like text with it to not look garbled. # Using shaped tashkeel would is nicer. # Commented by gaspar - duplicate # FE70 -> 064B # FE71 -> 064B # FE72 -> 064C # FE74 -> 064D # FE76 -> 064E # FE77 -> 064E # FE78 -> 064F # FE79 -> 064F # FE7A -> 0650 # FE7B -> 0650 # FE7C -> 0651 # FE7D -> 0651 # FE7E -> 0652 # FE7F -> 0652 # END # # Miikka-Markus Alhonen # Syriac: The only obligatory ligature in all script styles: # Rish + Seyame (U+072A U+0308) # A0001001 -> 0000072A 00000308 A0004001 -> 0000072A 00000308 # # Kaf + Alif and Kaf + Lam should have a presentation form as # it is used in Urdu nastaliq.ttf. A0001002 -> 000006A9 0000200D 00000627 A0004002 -> 000006A9 0000200D 00000627 A0001003 -> 000006A9 0000200D 00000644 A0002003 -> 000006A9 0000200D 00000644 A0003003 -> 000006A9 0000200D 00000644 A0004003 -> 000006A9 0000200D 00000644 # EOD $tashkeelout = 1; } print "$_ -> $plain\n"; } print "# End\n"; exit (0); ./bin/vcvars32.bat0000644000175000017500000000365711331037261013756 0ustar henrichhenrich@SET VSINSTALLDIR=C:\Program Files\Microsoft Visual Studio 9.0 @SET VCINSTALLDIR=C:\Program Files\Microsoft Visual Studio 9.0\VC @SET FrameworkDir=C:\Windows\Microsoft.NET\Framework @SET FrameworkVersion=v2.0.50727 @if "%VSINSTALLDIR%"=="" goto error_no_VSINSTALLDIR @if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR @echo Setting environment for using Microsoft Visual Studio 2008 x86 tools. @call :GetWindowsSdkDir @if not "%WindowsSdkDir%" == "" ( set "PATH=%WindowsSdkDir%bin;%PATH%" set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%" set "LIB=%WindowsSdkDir%lib;%LIB%" ) @rem @rem Root of Visual Studio IDE installed files. @rem @set DevEnvDir=%VSINSTALLDIR%\Common7\IDE @set PATH=%DevEnvDir%;%VCINSTALLDIR%\BIN;%VSINSTALLDIR%\Common7\Tools;%VSINSTALLDIR%\Common7\Tools\bin;%FrameworkDir%\%Framework35Version%;%FrameworkDir%\%Framework35Version%\Microsoft .NET Framework 3.5 (Pre-Release Version);%FrameworkDir%\%FrameworkVersion%;%VCINSTALLDIR%\VCPackages;%PATH% @set INCLUDE=%VCINSTALLDIR%\ATLMFC\INCLUDE;%VCINSTALLDIR%\INCLUDE;%INCLUDE% @set LIB=%VCINSTALLDIR%\ATLMFC\LIB;%VCINSTALLDIR%\LIB;%LIB% @set LIBPATH=%FrameworkDir%\%Framework35Version%;%FrameworkDir%\%FrameworkVersion%;%VCINSTALLDIR%\ATLMFC\LIB;%VCINSTALLDIR%\LIB;%LIBPATH% @goto end :GetWindowsSdkDir @call :GetWindowsSdkDirHelper HKLM > nul 2>&1 @if errorlevel 1 call :GetWindowsSdkDirHelper HKCU > nul 2>&1 @if errorlevel 1 set WindowsSdkDir=%VCINSTALLDIR%\PlatformSDK\ @exit /B 0 :GetWindowsSdkDirHelper @SET WindowsSdkDir= @for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows" /v "CurrentInstallFolder"') DO ( if "%%i"=="CurrentInstallFolder" ( SET "WindowsSdkDir=%%k" ) ) @if "%WindowsSdkDir%"=="" exit /B 1 @exit /B 0 :error_no_VSINSTALLDIR @echo ERROR: VSINSTALLDIR variable is not set. @goto end :error_no_VCINSTALLDIR @echo ERROR: VCINSTALLDIR variable is not set. @goto end :end ./bin/diff.sh0000755000175000017500000000032411326527440013057 0ustar henrichhenrich#!/bin/sh ORIG=yudit-2.9.1.beta4 NEW=yudit-2.9.1.beta5 diff --exclude=*.kmap --exclude=*.my --exclude=*.mo \ --exclude=config.status --exclude=config.cache \ --context=2 --new-file --recursive \ $ORIG $NEW ./bin/eastasia.pl0000755000175000017500000012536707532460062013761 0ustar henrichhenrich#!/usr/bin/perl # eastasia.pl: With Unicode 3.2 Unicode Consortium made # ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA # obselete. This script tries to resurrect them. # GNU (C) Gaspar Sinai # Changes: # o Removed KSC5601.TXT # According to Jungshik Shin 4 Apr 2002: # KSC5601.TXT in OBSOLETE/EASTASIA is NOT the mapping # between Unicode and KS C 5601-1987 but the mapping # between MS CP949 and Unicode. # o Renamed OLD5601.TXT use KSC1001.TXT instead. # o KSX1001.TXT - created by a different script. # o JOHAB.TXT - created by a different script. # According to Jungshik Shin 4 Apr 2002: # You can extract two different mappings between EUC-KR # and Unicode from CP949.TXT (in VENDORS/MICSFT/) and KOREAN.TXT # (in VENDORS/APPLE). Just filter out non-EUC portion and keep EUC # codepoints only (that is, 0x00-0x7E for single byte characters and # [0xA1-0xFE][0xA1-0xFE] for double byte characters). If you want # the mapping KS X 1001 and Unicode, you can subtract 0x8080 from # codepoints of two byte characters in EUC-KR. I've put them up at # # http://jshin.net/faq/KSX1001.TXT.gz (extracted from CP949.TXT) # http://jshin.net/faq/JOHAB.TXT.gz (for Johab) # # wget http://jshin.net/faq/KSX1001.TXT.gz # wget http://jshin.net/faq/JOHAB.TXT.gz # gunzip KSX1001.TXT.gz # mv KSX1001.TXT MAPPINGS # gunzip JOHAB.TXT.gz # mv JOHAB.TXT MAPPINGS $dir=""; $strict=0; while ($#ARGV>=0) { if ($ARGV[0] eq "--dir" && $#ARGV>0) { shift; $dir = shift; } elsif($ARGV[0] eq "--strict") { $strict = 1; } else { last; } } if ($dir eq "" || $#ARGV > 0) { print STDERR "usage: $0 [--strict] --dir directory [Uniha.txt]\n"; print STDERR " --strict - do not patch original unicode file\n"; print STDERR " --dir - directory to create files\n"; print STDERR "creates: JIS0208.TXT JIS0212.TXT JIS0213-1.TXT JIS0213-2.TXT\n"; exit (1); } %ADDJIS0208=(); %IGNOREJIS0208=(); die "$0: can not write JIS0208.TXT" unless (open (JIS0208, "| sort -k2 -o $dir/JIS0208.TXT")); die "$0: can not write JIS0212.TXT" unless (open (JIS0212, "| sort -k1 -o $dir/JIS0212.TXT")); die "$0: can not write JIS0213-1.TXT" unless (open (JIS02131, "| sort -k1 -o $dir/JIS0213-1.TXT")); die "$0: can not write JIS0213-2.TXT" unless (open (JIS02132, "| sort -k1 -o $dir/JIS0213-2.TXT")); print JIS0208 "#SJIS 00JISX0208 UNICODE\n"; print JIS0212 "#JISX0212 UNICODE\n"; print JIS02131 "#JISX0213-1 UNICODE\n"; print JIS02132 "#JISX0213-2 UNICODE\n"; %JIS208MAP={}; %JIS212MAP={}; %JIS2131MAP={}; %JIS2132MAP={}; $CURRENTMAP=""; # # Add data first - override. # if ($strict == 0) { while () { chomp; if (/START (.*)/){ $current=$1; next; } if (/END (.*)/){ $current=""; next; } if ($current eq "JIS0208") { $line = $_; split; $JIS208MAP{hex($_[2])} = $_[1]; # To test missing ones. # $ADDJIS0208{hex($_[1])}=hex($_[2]); printf (JIS0208 "%s\n", $line); } if ($current eq "JIS0212") { $line = $_; split; $JIS212MAP{hex($_[1])} = $_[0]; printf (JIS0212 "%s\n", $line); } if ($current eq "JIS02131") { $line = $_; split; $JIS2131MAP{hex($_[1])} = $_[0]; $IGNOREJIS0208{hex($_[0])}=hex($_[1]); printf (JIS02131 "%s\n", $line); } if ($current eq "JIS02132") { $line = $_; split; $JIS2132MAP{hex($_[1])} = $_[0]; printf (JIS02132 "%s\n", $line); } } } while (<>) { # JIS0208 - print SJIS if (/U\+([0-9a-zA-Z]+)[ \t]+kJis0[ \t]+(\d\d)(\d\d)/) { $unicode = $1; $jis = (($2 + 0x20) << 8) + $3 + 0x20; $sjis = &jis2sjis($jis); $pjis = sprintf ("0x%04X", $jis); if (defined ( $JIS208MAP{hex($unicode)})) { $def = $JIS208MAP{hex($unicode)}; print STDERR "JIS0208 $unicode JIS:$pjis is JIS:$def - skipping...\n"; next; } $JIS208MAP{hex($unicode)} = $pjis; printf (JIS0208 "0x%04X\t0x%04X\t0x%s\t# \n", $sjis, $jis, $unicode); next; } if (/U\+([0-9a-zA-Z]+)[ \t]+kJis1[ \t]+(\d\d)(\d\d)/) { $unicode = $1; $jis = (($2 + 0x20) << 8) + $3 + 0x20; $pjis = sprintf ("0x%04X", $jis); if (defined ( $JIS212MAP{hex($unicode)})) { $def = $JIS212MAP{hex($unicode)}; print STDERR "JIS0212 $unicode JIS:$pjis is JIS:$def - skipping...\n"; next; } $JIS212MAP{hex($unicode)} = $pjis; # To test # $ADDJIS0208{hex($pjis)}=hex($unicode); printf (JIS0212 "0x%04X\t0x%s\t# \n", $jis, $unicode); next; } # men,ku.ten if (/U\+([0-9a-zA-Z]+)[ \t]+kJIS0213[ \t]+(\d+),(\d+),(\d+)/) { $unicode = $1; $men = $2; $jis = (($3 + 0x20) << 8) + $4 + 0x20; $pjis = sprintf ("0x%04X", $jis); if ($men == 1 && defined ( $JIS2131MAP{hex($unicode)})) { $def = $JIS2131MAP{hex($unicode)}; print STDERR "JIS02131 $unicode JIS:$pjis is JIS:$def - skipping...\n"; next; } if ($men == 2 && defined ( $JIS2132MAP{hex($unicode)})) { $def = $JIS2132MAP{hex($unicode)}; print STDERR "JIS02132 $unicode JIS:$pjis is JIS:$def - skipping...\n"; next; } if ($men==1) { $JIS2131MAP{hex($unicode)} = $pjis; $IGNOREJIS0208{hex($pjis)}=hex($unicode); printf (JIS02131 "0x%04X\t0x%s\n", $jis, $unicode); } elsif ($men==2) { $JIS2132MAP{hex($unicode)} = $pjis; printf (JIS02132 "0x%04X\t0x%s\n", $jis, $unicode); } else { die "JISX0213 BAD MEN: $men at $."; } next; } } @k = keys (%ADDJIS0208); # # Add missing ones from JIS0208 # for(@k) { if (defined $IGNOREJIS0208 {$_}) { printf STDERR ("REDEFINED JIS:%04X JISX0208 for JIX0213 [U+%04X -> U+%04X]\n", $_, $ADDJIS0208{$_}, $IGNOREJIS0208{$_}); next; } printf (JIS02131 "0x%04X\t0x%04X\n", $_, $ADDJIS0208{$_}); } close (JIS0208); close (JIS0212); close (JIS02131); close (JIS02132); exit (0); sub jis2sjis { my $jis = @_[0]; my $c1 = $jis >> 8; my $c2 = $jis & 0xff; my $rowOffset = ($c1 < 95) ? 112 : 176; my $cellOffset = $c1 % 2 ? ($c2 > 95 ? 32 : 31 ) : 126; $c1 = (($c1+1) >> 1) + $rowOffset; $c2 = $c2 + $cellOffset; if ( (($c1 >= 0x81 && $c1 <= 0x9f) || ($c1 >= 0xe0 && $c1 <= 0xef)) && (($c2 >= 0x40 && $c2 <= 0x7e) || ($c2 >= 0x80 && $c2 <= 0xfc)) ) { return (($c1 << 8) + $c2); } return 0; } # # The following data should be added to the stream # __DATA__ START JIS0208 0x8140 0x2121 0x3000 # IDEOGRAPHIC SPACE 0x8141 0x2122 0x3001 # IDEOGRAPHIC COMMA 0x8142 0x2123 0x3002 # IDEOGRAPHIC FULL STOP 0x8143 0x2124 0xFF0C # FULLWIDTH COMMA 0x8144 0x2125 0xFF0E # FULLWIDTH FULL STOP 0x8145 0x2126 0x30FB # KATAKANA MIDDLE DOT 0x8146 0x2127 0xFF1A # FULLWIDTH COLON 0x8147 0x2128 0xFF1B # FULLWIDTH SEMICOLON 0x8148 0x2129 0xFF1F # FULLWIDTH QUESTION MARK 0x8149 0x212A 0xFF01 # FULLWIDTH EXCLAMATION MARK 0x814A 0x212B 0x309B # KATAKANA-HIRAGANA VOICED SOUND MARK 0x814B 0x212C 0x309C # KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK 0x814C 0x212D 0x00B4 # ACUTE ACCENT 0x814D 0x212E 0xFF40 # FULLWIDTH GRAVE ACCENT 0x814E 0x212F 0x00A8 # DIAERESIS 0x814F 0x2130 0xFF3E # FULLWIDTH CIRCUMFLEX ACCENT 0x8150 0x2131 0xFFE3 # FULLWIDTH MACRON 0x8151 0x2132 0xFF3F # FULLWIDTH LOW LINE 0x8152 0x2133 0x30FD # KATAKANA ITERATION MARK 0x8153 0x2134 0x30FE # KATAKANA VOICED ITERATION MARK 0x8154 0x2135 0x309D # HIRAGANA ITERATION MARK 0x8155 0x2136 0x309E # HIRAGANA VOICED ITERATION MARK 0x8156 0x2137 0x3003 # DITTO MARK # 0x8158 0x2139 0x3005 # IDEOGRAPHIC ITERATION MARK 0x8159 0x213A 0x3006 # IDEOGRAPHIC CLOSING MARK 0x815A 0x213B 0x3007 # IDEOGRAPHIC NUMBER ZERO 0x815B 0x213C 0x30FC # KATAKANA-HIRAGANA PROLONGED SOUND MARK 0x815C 0x213D 0x2015 # HORIZONTAL BAR 0x815D 0x213E 0x2010 # HYPHEN 0x815E 0x213F 0xFF0F # FULLWIDTH SOLIDUS 0x815F 0x2140 0x005C # REVERSE SOLIDUS 0x8160 0x2141 0x301C # WAVE DASH 0x8161 0x2142 0x2016 # DOUBLE VERTICAL LINE 0x8162 0x2143 0xFF5C # FULLWIDTH VERTICAL LINE 0x8163 0x2144 0x2026 # HORIZONTAL ELLIPSIS 0x8164 0x2145 0x2025 # TWO DOT LEADER 0x8165 0x2146 0x2018 # LEFT SINGLE QUOTATION MARK 0x8166 0x2147 0x2019 # RIGHT SINGLE QUOTATION MARK 0x8167 0x2148 0x201C # LEFT DOUBLE QUOTATION MARK 0x8168 0x2149 0x201D # RIGHT DOUBLE QUOTATION MARK 0x8169 0x214A 0xFF08 # FULLWIDTH LEFT PARENTHESIS 0x816A 0x214B 0xFF09 # FULLWIDTH RIGHT PARENTHESIS 0x816B 0x214C 0x3014 # LEFT TORTOISE SHELL BRACKET 0x816C 0x214D 0x3015 # RIGHT TORTOISE SHELL BRACKET 0x816D 0x214E 0xFF3B # FULLWIDTH LEFT SQUARE BRACKET 0x816E 0x214F 0xFF3D # FULLWIDTH RIGHT SQUARE BRACKET 0x816F 0x2150 0xFF5B # FULLWIDTH LEFT CURLY BRACKET 0x8170 0x2151 0xFF5D # FULLWIDTH RIGHT CURLY BRACKET 0x8171 0x2152 0x3008 # LEFT ANGLE BRACKET 0x8172 0x2153 0x3009 # RIGHT ANGLE BRACKET 0x8173 0x2154 0x300A # LEFT DOUBLE ANGLE BRACKET 0x8174 0x2155 0x300B # RIGHT DOUBLE ANGLE BRACKET 0x8175 0x2156 0x300C # LEFT CORNER BRACKET 0x8176 0x2157 0x300D # RIGHT CORNER BRACKET 0x8177 0x2158 0x300E # LEFT WHITE CORNER BRACKET 0x8178 0x2159 0x300F # RIGHT WHITE CORNER BRACKET 0x8179 0x215A 0x3010 # LEFT BLACK LENTICULAR BRACKET 0x817A 0x215B 0x3011 # RIGHT BLACK LENTICULAR BRACKET 0x817B 0x215C 0xFF0B # FULLWIDTH PLUS SIGN 0x817C 0x215D 0x2212 # MINUS SIGN 0x817D 0x215E 0x00B1 # PLUS-MINUS SIGN 0x817E 0x215F 0x00D7 # MULTIPLICATION SIGN 0x8180 0x2160 0x00F7 # DIVISION SIGN 0x8181 0x2161 0xFF1D # FULLWIDTH EQUALS SIGN 0x8182 0x2162 0x2260 # NOT EQUAL TO 0x8183 0x2163 0xFF1C # FULLWIDTH LESS-THAN SIGN 0x8184 0x2164 0xFF1E # FULLWIDTH GREATER-THAN SIGN 0x8185 0x2165 0x2266 # LESS-THAN OVER EQUAL TO 0x8186 0x2166 0x2267 # GREATER-THAN OVER EQUAL TO 0x8187 0x2167 0x221E # INFINITY 0x8188 0x2168 0x2234 # THEREFORE 0x8189 0x2169 0x2642 # MALE SIGN 0x818A 0x216A 0x2640 # FEMALE SIGN 0x818B 0x216B 0x00B0 # DEGREE SIGN 0x818C 0x216C 0x2032 # PRIME 0x818D 0x216D 0x2033 # DOUBLE PRIME 0x818E 0x216E 0x2103 # DEGREE CELSIUS 0x818F 0x216F 0xFFE5 # FULLWIDTH YEN SIGN 0x8190 0x2170 0xFF04 # FULLWIDTH DOLLAR SIGN 0x8191 0x2171 0x00A2 # CENT SIGN 0x8192 0x2172 0x00A3 # POUND SIGN 0x8193 0x2173 0xFF05 # FULLWIDTH PERCENT SIGN 0x8194 0x2174 0xFF03 # FULLWIDTH NUMBER SIGN 0x8195 0x2175 0xFF06 # FULLWIDTH AMPERSAND 0x8196 0x2176 0xFF0A # FULLWIDTH ASTERISK 0x8197 0x2177 0xFF20 # FULLWIDTH COMMERCIAL AT 0x8198 0x2178 0x00A7 # SECTION SIGN 0x8199 0x2179 0x2606 # WHITE STAR 0x819A 0x217A 0x2605 # BLACK STAR 0x819B 0x217B 0x25CB # WHITE CIRCLE 0x819C 0x217C 0x25CF # BLACK CIRCLE 0x819D 0x217D 0x25CE # BULLSEYE 0x819E 0x217E 0x25C7 # WHITE DIAMOND 0x819F 0x2221 0x25C6 # BLACK DIAMOND 0x81A0 0x2222 0x25A1 # WHITE SQUARE 0x81A1 0x2223 0x25A0 # BLACK SQUARE 0x81A2 0x2224 0x25B3 # WHITE UP-POINTING TRIANGLE 0x81A3 0x2225 0x25B2 # BLACK UP-POINTING TRIANGLE 0x81A4 0x2226 0x25BD # WHITE DOWN-POINTING TRIANGLE 0x81A5 0x2227 0x25BC # BLACK DOWN-POINTING TRIANGLE 0x81A6 0x2228 0x203B # REFERENCE MARK 0x81A7 0x2229 0x3012 # POSTAL MARK 0x81A8 0x222A 0x2192 # RIGHTWARDS ARROW 0x81A9 0x222B 0x2190 # LEFTWARDS ARROW 0x81AA 0x222C 0x2191 # UPWARDS ARROW 0x81AB 0x222D 0x2193 # DOWNWARDS ARROW 0x81AC 0x222E 0x3013 # GETA MARK 0x81B8 0x223A 0x2208 # ELEMENT OF 0x81B9 0x223B 0x220B # CONTAINS AS MEMBER 0x81BA 0x223C 0x2286 # SUBSET OF OR EQUAL TO 0x81BB 0x223D 0x2287 # SUPERSET OF OR EQUAL TO 0x81BC 0x223E 0x2282 # SUBSET OF 0x81BD 0x223F 0x2283 # SUPERSET OF 0x81BE 0x2240 0x222A # UNION 0x81BF 0x2241 0x2229 # INTERSECTION 0x81C8 0x224A 0x2227 # LOGICAL AND 0x81C9 0x224B 0x2228 # LOGICAL OR 0x81CA 0x224C 0x00AC # NOT SIGN 0x81CB 0x224D 0x21D2 # RIGHTWARDS DOUBLE ARROW 0x81CC 0x224E 0x21D4 # LEFT RIGHT DOUBLE ARROW 0x81CD 0x224F 0x2200 # FOR ALL 0x81CE 0x2250 0x2203 # THERE EXISTS 0x81DA 0x225C 0x2220 # ANGLE 0x81DB 0x225D 0x22A5 # UP TACK 0x81DC 0x225E 0x2312 # ARC 0x81DD 0x225F 0x2202 # PARTIAL DIFFERENTIAL 0x81DE 0x2260 0x2207 # NABLA 0x81DF 0x2261 0x2261 # IDENTICAL TO 0x81E0 0x2262 0x2252 # APPROXIMATELY EQUAL TO OR THE IMAGE OF 0x81E1 0x2263 0x226A # MUCH LESS-THAN 0x81E2 0x2264 0x226B # MUCH GREATER-THAN 0x81E3 0x2265 0x221A # SQUARE ROOT 0x81E4 0x2266 0x223D # REVERSED TILDE 0x81E5 0x2267 0x221D # PROPORTIONAL TO 0x81E6 0x2268 0x2235 # BECAUSE 0x81E7 0x2269 0x222B # INTEGRAL 0x81E8 0x226A 0x222C # DOUBLE INTEGRAL 0x81F0 0x2272 0x212B # ANGSTROM SIGN 0x81F1 0x2273 0x2030 # PER MILLE SIGN 0x81F2 0x2274 0x266F # MUSIC SHARP SIGN 0x81F3 0x2275 0x266D # MUSIC FLAT SIGN 0x81F4 0x2276 0x266A # EIGHTH NOTE 0x81F5 0x2277 0x2020 # DAGGER 0x81F6 0x2278 0x2021 # DOUBLE DAGGER 0x81F7 0x2279 0x00B6 # PILCROW SIGN 0x81FC 0x227E 0x25EF # LARGE CIRCLE 0x824F 0x2330 0xFF10 # FULLWIDTH DIGIT ZERO 0x8250 0x2331 0xFF11 # FULLWIDTH DIGIT ONE 0x8251 0x2332 0xFF12 # FULLWIDTH DIGIT TWO 0x8252 0x2333 0xFF13 # FULLWIDTH DIGIT THREE 0x8253 0x2334 0xFF14 # FULLWIDTH DIGIT FOUR 0x8254 0x2335 0xFF15 # FULLWIDTH DIGIT FIVE 0x8255 0x2336 0xFF16 # FULLWIDTH DIGIT SIX 0x8256 0x2337 0xFF17 # FULLWIDTH DIGIT SEVEN 0x8257 0x2338 0xFF18 # FULLWIDTH DIGIT EIGHT 0x8258 0x2339 0xFF19 # FULLWIDTH DIGIT NINE 0x8260 0x2341 0xFF21 # FULLWIDTH LATIN CAPITAL LETTER A 0x8261 0x2342 0xFF22 # FULLWIDTH LATIN CAPITAL LETTER B 0x8262 0x2343 0xFF23 # FULLWIDTH LATIN CAPITAL LETTER C 0x8263 0x2344 0xFF24 # FULLWIDTH LATIN CAPITAL LETTER D 0x8264 0x2345 0xFF25 # FULLWIDTH LATIN CAPITAL LETTER E 0x8265 0x2346 0xFF26 # FULLWIDTH LATIN CAPITAL LETTER F 0x8266 0x2347 0xFF27 # FULLWIDTH LATIN CAPITAL LETTER G 0x8267 0x2348 0xFF28 # FULLWIDTH LATIN CAPITAL LETTER H 0x8268 0x2349 0xFF29 # FULLWIDTH LATIN CAPITAL LETTER I 0x8269 0x234A 0xFF2A # FULLWIDTH LATIN CAPITAL LETTER J 0x826A 0x234B 0xFF2B # FULLWIDTH LATIN CAPITAL LETTER K 0x826B 0x234C 0xFF2C # FULLWIDTH LATIN CAPITAL LETTER L 0x826C 0x234D 0xFF2D # FULLWIDTH LATIN CAPITAL LETTER M 0x826D 0x234E 0xFF2E # FULLWIDTH LATIN CAPITAL LETTER N 0x826E 0x234F 0xFF2F # FULLWIDTH LATIN CAPITAL LETTER O 0x826F 0x2350 0xFF30 # FULLWIDTH LATIN CAPITAL LETTER P 0x8270 0x2351 0xFF31 # FULLWIDTH LATIN CAPITAL LETTER Q 0x8271 0x2352 0xFF32 # FULLWIDTH LATIN CAPITAL LETTER R 0x8272 0x2353 0xFF33 # FULLWIDTH LATIN CAPITAL LETTER S 0x8273 0x2354 0xFF34 # FULLWIDTH LATIN CAPITAL LETTER T 0x8274 0x2355 0xFF35 # FULLWIDTH LATIN CAPITAL LETTER U 0x8275 0x2356 0xFF36 # FULLWIDTH LATIN CAPITAL LETTER V 0x8276 0x2357 0xFF37 # FULLWIDTH LATIN CAPITAL LETTER W 0x8277 0x2358 0xFF38 # FULLWIDTH LATIN CAPITAL LETTER X 0x8278 0x2359 0xFF39 # FULLWIDTH LATIN CAPITAL LETTER Y 0x8279 0x235A 0xFF3A # FULLWIDTH LATIN CAPITAL LETTER Z 0x8281 0x2361 0xFF41 # FULLWIDTH LATIN SMALL LETTER A 0x8282 0x2362 0xFF42 # FULLWIDTH LATIN SMALL LETTER B 0x8283 0x2363 0xFF43 # FULLWIDTH LATIN SMALL LETTER C 0x8284 0x2364 0xFF44 # FULLWIDTH LATIN SMALL LETTER D 0x8285 0x2365 0xFF45 # FULLWIDTH LATIN SMALL LETTER E 0x8286 0x2366 0xFF46 # FULLWIDTH LATIN SMALL LETTER F 0x8287 0x2367 0xFF47 # FULLWIDTH LATIN SMALL LETTER G 0x8288 0x2368 0xFF48 # FULLWIDTH LATIN SMALL LETTER H 0x8289 0x2369 0xFF49 # FULLWIDTH LATIN SMALL LETTER I 0x828A 0x236A 0xFF4A # FULLWIDTH LATIN SMALL LETTER J 0x828B 0x236B 0xFF4B # FULLWIDTH LATIN SMALL LETTER K 0x828C 0x236C 0xFF4C # FULLWIDTH LATIN SMALL LETTER L 0x828D 0x236D 0xFF4D # FULLWIDTH LATIN SMALL LETTER M 0x828E 0x236E 0xFF4E # FULLWIDTH LATIN SMALL LETTER N 0x828F 0x236F 0xFF4F # FULLWIDTH LATIN SMALL LETTER O 0x8290 0x2370 0xFF50 # FULLWIDTH LATIN SMALL LETTER P 0x8291 0x2371 0xFF51 # FULLWIDTH LATIN SMALL LETTER Q 0x8292 0x2372 0xFF52 # FULLWIDTH LATIN SMALL LETTER R 0x8293 0x2373 0xFF53 # FULLWIDTH LATIN SMALL LETTER S 0x8294 0x2374 0xFF54 # FULLWIDTH LATIN SMALL LETTER T 0x8295 0x2375 0xFF55 # FULLWIDTH LATIN SMALL LETTER U 0x8296 0x2376 0xFF56 # FULLWIDTH LATIN SMALL LETTER V 0x8297 0x2377 0xFF57 # FULLWIDTH LATIN SMALL LETTER W 0x8298 0x2378 0xFF58 # FULLWIDTH LATIN SMALL LETTER X 0x8299 0x2379 0xFF59 # FULLWIDTH LATIN SMALL LETTER Y 0x829A 0x237A 0xFF5A # FULLWIDTH LATIN SMALL LETTER Z 0x829F 0x2421 0x3041 # HIRAGANA LETTER SMALL A 0x82A0 0x2422 0x3042 # HIRAGANA LETTER A 0x82A1 0x2423 0x3043 # HIRAGANA LETTER SMALL I 0x82A2 0x2424 0x3044 # HIRAGANA LETTER I 0x82A3 0x2425 0x3045 # HIRAGANA LETTER SMALL U 0x82A4 0x2426 0x3046 # HIRAGANA LETTER U 0x82A5 0x2427 0x3047 # HIRAGANA LETTER SMALL E 0x82A6 0x2428 0x3048 # HIRAGANA LETTER E 0x82A7 0x2429 0x3049 # HIRAGANA LETTER SMALL O 0x82A8 0x242A 0x304A # HIRAGANA LETTER O 0x82A9 0x242B 0x304B # HIRAGANA LETTER KA 0x82AA 0x242C 0x304C # HIRAGANA LETTER GA 0x82AB 0x242D 0x304D # HIRAGANA LETTER KI 0x82AC 0x242E 0x304E # HIRAGANA LETTER GI 0x82AD 0x242F 0x304F # HIRAGANA LETTER KU 0x82AE 0x2430 0x3050 # HIRAGANA LETTER GU 0x82AF 0x2431 0x3051 # HIRAGANA LETTER KE 0x82B0 0x2432 0x3052 # HIRAGANA LETTER GE 0x82B1 0x2433 0x3053 # HIRAGANA LETTER KO 0x82B2 0x2434 0x3054 # HIRAGANA LETTER GO 0x82B3 0x2435 0x3055 # HIRAGANA LETTER SA 0x82B4 0x2436 0x3056 # HIRAGANA LETTER ZA 0x82B5 0x2437 0x3057 # HIRAGANA LETTER SI 0x82B6 0x2438 0x3058 # HIRAGANA LETTER ZI 0x82B7 0x2439 0x3059 # HIRAGANA LETTER SU 0x82B8 0x243A 0x305A # HIRAGANA LETTER ZU 0x82B9 0x243B 0x305B # HIRAGANA LETTER SE 0x82BA 0x243C 0x305C # HIRAGANA LETTER ZE 0x82BB 0x243D 0x305D # HIRAGANA LETTER SO 0x82BC 0x243E 0x305E # HIRAGANA LETTER ZO 0x82BD 0x243F 0x305F # HIRAGANA LETTER TA 0x82BE 0x2440 0x3060 # HIRAGANA LETTER DA 0x82BF 0x2441 0x3061 # HIRAGANA LETTER TI 0x82C0 0x2442 0x3062 # HIRAGANA LETTER DI 0x82C1 0x2443 0x3063 # HIRAGANA LETTER SMALL TU 0x82C2 0x2444 0x3064 # HIRAGANA LETTER TU 0x82C3 0x2445 0x3065 # HIRAGANA LETTER DU 0x82C4 0x2446 0x3066 # HIRAGANA LETTER TE 0x82C5 0x2447 0x3067 # HIRAGANA LETTER DE 0x82C6 0x2448 0x3068 # HIRAGANA LETTER TO 0x82C7 0x2449 0x3069 # HIRAGANA LETTER DO 0x82C8 0x244A 0x306A # HIRAGANA LETTER NA 0x82C9 0x244B 0x306B # HIRAGANA LETTER NI 0x82CA 0x244C 0x306C # HIRAGANA LETTER NU 0x82CB 0x244D 0x306D # HIRAGANA LETTER NE 0x82CC 0x244E 0x306E # HIRAGANA LETTER NO 0x82CD 0x244F 0x306F # HIRAGANA LETTER HA 0x82CE 0x2450 0x3070 # HIRAGANA LETTER BA 0x82CF 0x2451 0x3071 # HIRAGANA LETTER PA 0x82D0 0x2452 0x3072 # HIRAGANA LETTER HI 0x82D1 0x2453 0x3073 # HIRAGANA LETTER BI 0x82D2 0x2454 0x3074 # HIRAGANA LETTER PI 0x82D3 0x2455 0x3075 # HIRAGANA LETTER HU 0x82D4 0x2456 0x3076 # HIRAGANA LETTER BU 0x82D5 0x2457 0x3077 # HIRAGANA LETTER PU 0x82D6 0x2458 0x3078 # HIRAGANA LETTER HE 0x82D7 0x2459 0x3079 # HIRAGANA LETTER BE 0x82D8 0x245A 0x307A # HIRAGANA LETTER PE 0x82D9 0x245B 0x307B # HIRAGANA LETTER HO 0x82DA 0x245C 0x307C # HIRAGANA LETTER BO 0x82DB 0x245D 0x307D # HIRAGANA LETTER PO 0x82DC 0x245E 0x307E # HIRAGANA LETTER MA 0x82DD 0x245F 0x307F # HIRAGANA LETTER MI 0x82DE 0x2460 0x3080 # HIRAGANA LETTER MU 0x82DF 0x2461 0x3081 # HIRAGANA LETTER ME 0x82E0 0x2462 0x3082 # HIRAGANA LETTER MO 0x82E1 0x2463 0x3083 # HIRAGANA LETTER SMALL YA 0x82E2 0x2464 0x3084 # HIRAGANA LETTER YA 0x82E3 0x2465 0x3085 # HIRAGANA LETTER SMALL YU 0x82E4 0x2466 0x3086 # HIRAGANA LETTER YU 0x82E5 0x2467 0x3087 # HIRAGANA LETTER SMALL YO 0x82E6 0x2468 0x3088 # HIRAGANA LETTER YO 0x82E7 0x2469 0x3089 # HIRAGANA LETTER RA 0x82E8 0x246A 0x308A # HIRAGANA LETTER RI 0x82E9 0x246B 0x308B # HIRAGANA LETTER RU 0x82EA 0x246C 0x308C # HIRAGANA LETTER RE 0x82EB 0x246D 0x308D # HIRAGANA LETTER RO 0x82EC 0x246E 0x308E # HIRAGANA LETTER SMALL WA 0x82ED 0x246F 0x308F # HIRAGANA LETTER WA 0x82EE 0x2470 0x3090 # HIRAGANA LETTER WI 0x82EF 0x2471 0x3091 # HIRAGANA LETTER WE 0x82F0 0x2472 0x3092 # HIRAGANA LETTER WO 0x82F1 0x2473 0x3093 # HIRAGANA LETTER N 0x8340 0x2521 0x30A1 # KATAKANA LETTER SMALL A 0x8341 0x2522 0x30A2 # KATAKANA LETTER A 0x8342 0x2523 0x30A3 # KATAKANA LETTER SMALL I 0x8343 0x2524 0x30A4 # KATAKANA LETTER I 0x8344 0x2525 0x30A5 # KATAKANA LETTER SMALL U 0x8345 0x2526 0x30A6 # KATAKANA LETTER U 0x8346 0x2527 0x30A7 # KATAKANA LETTER SMALL E 0x8347 0x2528 0x30A8 # KATAKANA LETTER E 0x8348 0x2529 0x30A9 # KATAKANA LETTER SMALL O 0x8349 0x252A 0x30AA # KATAKANA LETTER O 0x834A 0x252B 0x30AB # KATAKANA LETTER KA 0x834B 0x252C 0x30AC # KATAKANA LETTER GA 0x834C 0x252D 0x30AD # KATAKANA LETTER KI 0x834D 0x252E 0x30AE # KATAKANA LETTER GI 0x834E 0x252F 0x30AF # KATAKANA LETTER KU 0x834F 0x2530 0x30B0 # KATAKANA LETTER GU 0x8350 0x2531 0x30B1 # KATAKANA LETTER KE 0x8351 0x2532 0x30B2 # KATAKANA LETTER GE 0x8352 0x2533 0x30B3 # KATAKANA LETTER KO 0x8353 0x2534 0x30B4 # KATAKANA LETTER GO 0x8354 0x2535 0x30B5 # KATAKANA LETTER SA 0x8355 0x2536 0x30B6 # KATAKANA LETTER ZA 0x8356 0x2537 0x30B7 # KATAKANA LETTER SI 0x8357 0x2538 0x30B8 # KATAKANA LETTER ZI 0x8358 0x2539 0x30B9 # KATAKANA LETTER SU 0x8359 0x253A 0x30BA # KATAKANA LETTER ZU 0x835A 0x253B 0x30BB # KATAKANA LETTER SE 0x835B 0x253C 0x30BC # KATAKANA LETTER ZE 0x835C 0x253D 0x30BD # KATAKANA LETTER SO 0x835D 0x253E 0x30BE # KATAKANA LETTER ZO 0x835E 0x253F 0x30BF # KATAKANA LETTER TA 0x835F 0x2540 0x30C0 # KATAKANA LETTER DA 0x8360 0x2541 0x30C1 # KATAKANA LETTER TI 0x8361 0x2542 0x30C2 # KATAKANA LETTER DI 0x8362 0x2543 0x30C3 # KATAKANA LETTER SMALL TU 0x8363 0x2544 0x30C4 # KATAKANA LETTER TU 0x8364 0x2545 0x30C5 # KATAKANA LETTER DU 0x8365 0x2546 0x30C6 # KATAKANA LETTER TE 0x8366 0x2547 0x30C7 # KATAKANA LETTER DE 0x8367 0x2548 0x30C8 # KATAKANA LETTER TO 0x8368 0x2549 0x30C9 # KATAKANA LETTER DO 0x8369 0x254A 0x30CA # KATAKANA LETTER NA 0x836A 0x254B 0x30CB # KATAKANA LETTER NI 0x836B 0x254C 0x30CC # KATAKANA LETTER NU 0x836C 0x254D 0x30CD # KATAKANA LETTER NE 0x836D 0x254E 0x30CE # KATAKANA LETTER NO 0x836E 0x254F 0x30CF # KATAKANA LETTER HA 0x836F 0x2550 0x30D0 # KATAKANA LETTER BA 0x8370 0x2551 0x30D1 # KATAKANA LETTER PA 0x8371 0x2552 0x30D2 # KATAKANA LETTER HI 0x8372 0x2553 0x30D3 # KATAKANA LETTER BI 0x8373 0x2554 0x30D4 # KATAKANA LETTER PI 0x8374 0x2555 0x30D5 # KATAKANA LETTER HU 0x8375 0x2556 0x30D6 # KATAKANA LETTER BU 0x8376 0x2557 0x30D7 # KATAKANA LETTER PU 0x8377 0x2558 0x30D8 # KATAKANA LETTER HE 0x8378 0x2559 0x30D9 # KATAKANA LETTER BE 0x8379 0x255A 0x30DA # KATAKANA LETTER PE 0x837A 0x255B 0x30DB # KATAKANA LETTER HO 0x837B 0x255C 0x30DC # KATAKANA LETTER BO 0x837C 0x255D 0x30DD # KATAKANA LETTER PO 0x837D 0x255E 0x30DE # KATAKANA LETTER MA 0x837E 0x255F 0x30DF # KATAKANA LETTER MI 0x8380 0x2560 0x30E0 # KATAKANA LETTER MU 0x8381 0x2561 0x30E1 # KATAKANA LETTER ME 0x8382 0x2562 0x30E2 # KATAKANA LETTER MO 0x8383 0x2563 0x30E3 # KATAKANA LETTER SMALL YA 0x8384 0x2564 0x30E4 # KATAKANA LETTER YA 0x8385 0x2565 0x30E5 # KATAKANA LETTER SMALL YU 0x8386 0x2566 0x30E6 # KATAKANA LETTER YU 0x8387 0x2567 0x30E7 # KATAKANA LETTER SMALL YO 0x8388 0x2568 0x30E8 # KATAKANA LETTER YO 0x8389 0x2569 0x30E9 # KATAKANA LETTER RA 0x838A 0x256A 0x30EA # KATAKANA LETTER RI 0x838B 0x256B 0x30EB # KATAKANA LETTER RU 0x838C 0x256C 0x30EC # KATAKANA LETTER RE 0x838D 0x256D 0x30ED # KATAKANA LETTER RO 0x838E 0x256E 0x30EE # KATAKANA LETTER SMALL WA 0x838F 0x256F 0x30EF # KATAKANA LETTER WA 0x8390 0x2570 0x30F0 # KATAKANA LETTER WI 0x8391 0x2571 0x30F1 # KATAKANA LETTER WE 0x8392 0x2572 0x30F2 # KATAKANA LETTER WO 0x8393 0x2573 0x30F3 # KATAKANA LETTER N 0x8394 0x2574 0x30F4 # KATAKANA LETTER VU 0x8395 0x2575 0x30F5 # KATAKANA LETTER SMALL KA 0x8396 0x2576 0x30F6 # KATAKANA LETTER SMALL KE 0x839F 0x2621 0x0391 # GREEK CAPITAL LETTER ALPHA 0x83A0 0x2622 0x0392 # GREEK CAPITAL LETTER BETA 0x83A1 0x2623 0x0393 # GREEK CAPITAL LETTER GAMMA 0x83A2 0x2624 0x0394 # GREEK CAPITAL LETTER DELTA 0x83A3 0x2625 0x0395 # GREEK CAPITAL LETTER EPSILON 0x83A4 0x2626 0x0396 # GREEK CAPITAL LETTER ZETA 0x83A5 0x2627 0x0397 # GREEK CAPITAL LETTER ETA 0x83A6 0x2628 0x0398 # GREEK CAPITAL LETTER THETA 0x83A7 0x2629 0x0399 # GREEK CAPITAL LETTER IOTA 0x83A8 0x262A 0x039A # GREEK CAPITAL LETTER KAPPA 0x83A9 0x262B 0x039B # GREEK CAPITAL LETTER LAMDA 0x83AA 0x262C 0x039C # GREEK CAPITAL LETTER MU 0x83AB 0x262D 0x039D # GREEK CAPITAL LETTER NU 0x83AC 0x262E 0x039E # GREEK CAPITAL LETTER XI 0x83AD 0x262F 0x039F # GREEK CAPITAL LETTER OMICRON 0x83AE 0x2630 0x03A0 # GREEK CAPITAL LETTER PI 0x83AF 0x2631 0x03A1 # GREEK CAPITAL LETTER RHO 0x83B0 0x2632 0x03A3 # GREEK CAPITAL LETTER SIGMA 0x83B1 0x2633 0x03A4 # GREEK CAPITAL LETTER TAU 0x83B2 0x2634 0x03A5 # GREEK CAPITAL LETTER UPSILON 0x83B3 0x2635 0x03A6 # GREEK CAPITAL LETTER PHI 0x83B4 0x2636 0x03A7 # GREEK CAPITAL LETTER CHI 0x83B5 0x2637 0x03A8 # GREEK CAPITAL LETTER PSI 0x83B6 0x2638 0x03A9 # GREEK CAPITAL LETTER OMEGA 0x83BF 0x2641 0x03B1 # GREEK SMALL LETTER ALPHA 0x83C0 0x2642 0x03B2 # GREEK SMALL LETTER BETA 0x83C1 0x2643 0x03B3 # GREEK SMALL LETTER GAMMA 0x83C2 0x2644 0x03B4 # GREEK SMALL LETTER DELTA 0x83C3 0x2645 0x03B5 # GREEK SMALL LETTER EPSILON 0x83C4 0x2646 0x03B6 # GREEK SMALL LETTER ZETA 0x83C5 0x2647 0x03B7 # GREEK SMALL LETTER ETA 0x83C6 0x2648 0x03B8 # GREEK SMALL LETTER THETA 0x83C7 0x2649 0x03B9 # GREEK SMALL LETTER IOTA 0x83C8 0x264A 0x03BA # GREEK SMALL LETTER KAPPA 0x83C9 0x264B 0x03BB # GREEK SMALL LETTER LAMDA 0x83CA 0x264C 0x03BC # GREEK SMALL LETTER MU 0x83CB 0x264D 0x03BD # GREEK SMALL LETTER NU 0x83CC 0x264E 0x03BE # GREEK SMALL LETTER XI 0x83CD 0x264F 0x03BF # GREEK SMALL LETTER OMICRON 0x83CE 0x2650 0x03C0 # GREEK SMALL LETTER PI 0x83CF 0x2651 0x03C1 # GREEK SMALL LETTER RHO 0x83D0 0x2652 0x03C3 # GREEK SMALL LETTER SIGMA 0x83D1 0x2653 0x03C4 # GREEK SMALL LETTER TAU 0x83D2 0x2654 0x03C5 # GREEK SMALL LETTER UPSILON 0x83D3 0x2655 0x03C6 # GREEK SMALL LETTER PHI 0x83D4 0x2656 0x03C7 # GREEK SMALL LETTER CHI 0x83D5 0x2657 0x03C8 # GREEK SMALL LETTER PSI 0x83D6 0x2658 0x03C9 # GREEK SMALL LETTER OMEGA 0x8440 0x2721 0x0410 # CYRILLIC CAPITAL LETTER A 0x8441 0x2722 0x0411 # CYRILLIC CAPITAL LETTER BE 0x8442 0x2723 0x0412 # CYRILLIC CAPITAL LETTER VE 0x8443 0x2724 0x0413 # CYRILLIC CAPITAL LETTER GHE 0x8444 0x2725 0x0414 # CYRILLIC CAPITAL LETTER DE 0x8445 0x2726 0x0415 # CYRILLIC CAPITAL LETTER IE 0x8446 0x2727 0x0401 # CYRILLIC CAPITAL LETTER IO 0x8447 0x2728 0x0416 # CYRILLIC CAPITAL LETTER ZHE 0x8448 0x2729 0x0417 # CYRILLIC CAPITAL LETTER ZE 0x8449 0x272A 0x0418 # CYRILLIC CAPITAL LETTER I 0x844A 0x272B 0x0419 # CYRILLIC CAPITAL LETTER SHORT I 0x844B 0x272C 0x041A # CYRILLIC CAPITAL LETTER KA 0x844C 0x272D 0x041B # CYRILLIC CAPITAL LETTER EL 0x844D 0x272E 0x041C # CYRILLIC CAPITAL LETTER EM 0x844E 0x272F 0x041D # CYRILLIC CAPITAL LETTER EN 0x844F 0x2730 0x041E # CYRILLIC CAPITAL LETTER O 0x8450 0x2731 0x041F # CYRILLIC CAPITAL LETTER PE 0x8451 0x2732 0x0420 # CYRILLIC CAPITAL LETTER ER 0x8452 0x2733 0x0421 # CYRILLIC CAPITAL LETTER ES 0x8453 0x2734 0x0422 # CYRILLIC CAPITAL LETTER TE 0x8454 0x2735 0x0423 # CYRILLIC CAPITAL LETTER U 0x8455 0x2736 0x0424 # CYRILLIC CAPITAL LETTER EF 0x8456 0x2737 0x0425 # CYRILLIC CAPITAL LETTER HA 0x8457 0x2738 0x0426 # CYRILLIC CAPITAL LETTER TSE 0x8458 0x2739 0x0427 # CYRILLIC CAPITAL LETTER CHE 0x8459 0x273A 0x0428 # CYRILLIC CAPITAL LETTER SHA 0x845A 0x273B 0x0429 # CYRILLIC CAPITAL LETTER SHCHA 0x845B 0x273C 0x042A # CYRILLIC CAPITAL LETTER HARD SIGN 0x845C 0x273D 0x042B # CYRILLIC CAPITAL LETTER YERU 0x845D 0x273E 0x042C # CYRILLIC CAPITAL LETTER SOFT SIGN 0x845E 0x273F 0x042D # CYRILLIC CAPITAL LETTER E 0x845F 0x2740 0x042E # CYRILLIC CAPITAL LETTER YU 0x8460 0x2741 0x042F # CYRILLIC CAPITAL LETTER YA 0x8470 0x2751 0x0430 # CYRILLIC SMALL LETTER A 0x8471 0x2752 0x0431 # CYRILLIC SMALL LETTER BE 0x8472 0x2753 0x0432 # CYRILLIC SMALL LETTER VE 0x8473 0x2754 0x0433 # CYRILLIC SMALL LETTER GHE 0x8474 0x2755 0x0434 # CYRILLIC SMALL LETTER DE 0x8475 0x2756 0x0435 # CYRILLIC SMALL LETTER IE 0x8476 0x2757 0x0451 # CYRILLIC SMALL LETTER IO 0x8477 0x2758 0x0436 # CYRILLIC SMALL LETTER ZHE 0x8478 0x2759 0x0437 # CYRILLIC SMALL LETTER ZE 0x8479 0x275A 0x0438 # CYRILLIC SMALL LETTER I 0x847A 0x275B 0x0439 # CYRILLIC SMALL LETTER SHORT I 0x847B 0x275C 0x043A # CYRILLIC SMALL LETTER KA 0x847C 0x275D 0x043B # CYRILLIC SMALL LETTER EL 0x847D 0x275E 0x043C # CYRILLIC SMALL LETTER EM 0x847E 0x275F 0x043D # CYRILLIC SMALL LETTER EN 0x8480 0x2760 0x043E # CYRILLIC SMALL LETTER O 0x8481 0x2761 0x043F # CYRILLIC SMALL LETTER PE 0x8482 0x2762 0x0440 # CYRILLIC SMALL LETTER ER 0x8483 0x2763 0x0441 # CYRILLIC SMALL LETTER ES 0x8484 0x2764 0x0442 # CYRILLIC SMALL LETTER TE 0x8485 0x2765 0x0443 # CYRILLIC SMALL LETTER U 0x8486 0x2766 0x0444 # CYRILLIC SMALL LETTER EF 0x8487 0x2767 0x0445 # CYRILLIC SMALL LETTER HA 0x8488 0x2768 0x0446 # CYRILLIC SMALL LETTER TSE 0x8489 0x2769 0x0447 # CYRILLIC SMALL LETTER CHE 0x848A 0x276A 0x0448 # CYRILLIC SMALL LETTER SHA 0x848B 0x276B 0x0449 # CYRILLIC SMALL LETTER SHCHA 0x848C 0x276C 0x044A # CYRILLIC SMALL LETTER HARD SIGN 0x848D 0x276D 0x044B # CYRILLIC SMALL LETTER YERU 0x848E 0x276E 0x044C # CYRILLIC SMALL LETTER SOFT SIGN 0x848F 0x276F 0x044D # CYRILLIC SMALL LETTER E 0x8490 0x2770 0x044E # CYRILLIC SMALL LETTER YU 0x8491 0x2771 0x044F # CYRILLIC SMALL LETTER YA 0x849F 0x2821 0x2500 # BOX DRAWINGS LIGHT HORIZONTAL 0x84A0 0x2822 0x2502 # BOX DRAWINGS LIGHT VERTICAL 0x84A1 0x2823 0x250C # BOX DRAWINGS LIGHT DOWN AND RIGHT 0x84A2 0x2824 0x2510 # BOX DRAWINGS LIGHT DOWN AND LEFT 0x84A3 0x2825 0x2518 # BOX DRAWINGS LIGHT UP AND LEFT 0x84A4 0x2826 0x2514 # BOX DRAWINGS LIGHT UP AND RIGHT 0x84A5 0x2827 0x251C # BOX DRAWINGS LIGHT VERTICAL AND RIGHT 0x84A6 0x2828 0x252C # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL 0x84A7 0x2829 0x2524 # BOX DRAWINGS LIGHT VERTICAL AND LEFT 0x84A8 0x282A 0x2534 # BOX DRAWINGS LIGHT UP AND HORIZONTAL 0x84A9 0x282B 0x253C # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL 0x84AA 0x282C 0x2501 # BOX DRAWINGS HEAVY HORIZONTAL 0x84AB 0x282D 0x2503 # BOX DRAWINGS HEAVY VERTICAL 0x84AC 0x282E 0x250F # BOX DRAWINGS HEAVY DOWN AND RIGHT 0x84AD 0x282F 0x2513 # BOX DRAWINGS HEAVY DOWN AND LEFT 0x84AE 0x2830 0x251B # BOX DRAWINGS HEAVY UP AND LEFT 0x84AF 0x2831 0x2517 # BOX DRAWINGS HEAVY UP AND RIGHT 0x84B0 0x2832 0x2523 # BOX DRAWINGS HEAVY VERTICAL AND RIGHT 0x84B1 0x2833 0x2533 # BOX DRAWINGS HEAVY DOWN AND HORIZONTAL 0x84B2 0x2834 0x252B # BOX DRAWINGS HEAVY VERTICAL AND LEFT 0x84B3 0x2835 0x253B # BOX DRAWINGS HEAVY UP AND HORIZONTAL 0x84B4 0x2836 0x254B # BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL 0x84B5 0x2837 0x2520 # BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT 0x84B6 0x2838 0x252F # BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY 0x84B7 0x2839 0x2528 # BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT 0x84B8 0x283A 0x2537 # BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY 0x84B9 0x283B 0x253F # BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY 0x84BA 0x283C 0x251D # BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY 0x84BB 0x283D 0x2530 # BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT 0x84BC 0x283E 0x2525 # BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY 0x84BD 0x283F 0x2538 # BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT 0x84BE 0x2840 0x2542 # BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT END JIS0208 START JIS0212 0x222F 0x02D8 # BREVE 0x2230 0x02C7 # CARON (Mandarin Chinese third tone) 0x2231 0x00B8 # CEDILLA 0x2232 0x02D9 # DOT ABOVE (Mandarin Chinese light tone) 0x2233 0x02DD # DOUBLE ACUTE ACCENT 0x2234 0x00AF # MACRON 0x2235 0x02DB # OGONEK 0x2236 0x02DA # RING ABOVE 0x2237 0x007E # TILDE 0x2238 0x0384 # GREEK TONOS 0x2239 0x0385 # GREEK DIALYTIKA TONOS 0x2242 0x00A1 # INVERTED EXCLAMATION MARK 0x2243 0x00A6 # BROKEN BAR 0x2244 0x00BF # INVERTED QUESTION MARK 0x226B 0x00BA # MASCULINE ORDINAL INDICATOR 0x226C 0x00AA # FEMININE ORDINAL INDICATOR 0x226D 0x00A9 # COPYRIGHT SIGN 0x226E 0x00AE # REGISTERED SIGN 0x226F 0x2122 # TRADE MARK SIGN 0x2270 0x00A4 # CURRENCY SIGN 0x2271 0x2116 # NUMERO SIGN 0x2661 0x0386 # GREEK CAPITAL LETTER ALPHA WITH TONOS 0x2662 0x0388 # GREEK CAPITAL LETTER EPSILON WITH TONOS 0x2663 0x0389 # GREEK CAPITAL LETTER ETA WITH TONOS 0x2664 0x038A # GREEK CAPITAL LETTER IOTA WITH TONOS 0x2665 0x03AA # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA 0x2667 0x038C # GREEK CAPITAL LETTER OMICRON WITH TONOS 0x2669 0x038E # GREEK CAPITAL LETTER UPSILON WITH TONOS 0x266A 0x03AB # GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA 0x266C 0x038F # GREEK CAPITAL LETTER OMEGA WITH TONOS 0x2671 0x03AC # GREEK SMALL LETTER ALPHA WITH TONOS 0x2672 0x03AD # GREEK SMALL LETTER EPSILON WITH TONOS 0x2673 0x03AE # GREEK SMALL LETTER ETA WITH TONOS 0x2674 0x03AF # GREEK SMALL LETTER IOTA WITH TONOS 0x2675 0x03CA # GREEK SMALL LETTER IOTA WITH DIALYTIKA 0x2676 0x0390 # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS 0x2677 0x03CC # GREEK SMALL LETTER OMICRON WITH TONOS 0x2678 0x03C2 # GREEK SMALL LETTER FINAL SIGMA 0x2679 0x03CD # GREEK SMALL LETTER UPSILON WITH TONOS 0x267A 0x03CB # GREEK SMALL LETTER UPSILON WITH DIALYTIKA 0x267B 0x03B0 # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS 0x267C 0x03CE # GREEK SMALL LETTER OMEGA WITH TONOS 0x2742 0x0402 # CYRILLIC CAPITAL LETTER DJE 0x2743 0x0403 # CYRILLIC CAPITAL LETTER GJE 0x2744 0x0404 # CYRILLIC CAPITAL LETTER UKRAINIAN IE 0x2745 0x0405 # CYRILLIC CAPITAL LETTER DZE 0x2746 0x0406 # CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I 0x2747 0x0407 # CYRILLIC CAPITAL LETTER YI 0x2748 0x0408 # CYRILLIC CAPITAL LETTER JE 0x2749 0x0409 # CYRILLIC CAPITAL LETTER LJE 0x274A 0x040A # CYRILLIC CAPITAL LETTER NJE 0x274B 0x040B # CYRILLIC CAPITAL LETTER TSHE 0x274C 0x040C # CYRILLIC CAPITAL LETTER KJE 0x274D 0x040E # CYRILLIC CAPITAL LETTER SHORT U 0x274E 0x040F # CYRILLIC CAPITAL LETTER DZHE 0x2772 0x0452 # CYRILLIC SMALL LETTER DJE 0x2773 0x0453 # CYRILLIC SMALL LETTER GJE 0x2774 0x0454 # CYRILLIC SMALL LETTER UKRAINIAN IE 0x2775 0x0455 # CYRILLIC SMALL LETTER DZE 0x2776 0x0456 # CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I 0x2777 0x0457 # CYRILLIC SMALL LETTER YI 0x2778 0x0458 # CYRILLIC SMALL LETTER JE 0x2779 0x0459 # CYRILLIC SMALL LETTER LJE 0x277A 0x045A # CYRILLIC SMALL LETTER NJE 0x277B 0x045B # CYRILLIC SMALL LETTER TSHE 0x277C 0x045C # CYRILLIC SMALL LETTER KJE 0x277D 0x045E # CYRILLIC SMALL LETTER SHORT U 0x277E 0x045F # CYRILLIC SMALL LETTER DZHE 0x2921 0x00C6 # LATIN CAPITAL LIGATURE AE 0x2922 0x0110 # LATIN CAPITAL LETTER D WITH STROKE 0x2924 0x0126 # LATIN CAPITAL LETTER H WITH STROKE 0x2926 0x0132 # LATIN CAPITAL LIGATURE IJ 0x2928 0x0141 # LATIN CAPITAL LETTER L WITH STROKE 0x2929 0x013F # LATIN CAPITAL LETTER L WITH MIDDLE DOT 0x292B 0x014A # LATIN CAPITAL LETTER ENG 0x292C 0x00D8 # LATIN CAPITAL LETTER O WITH STROKE 0x292D 0x0152 # LATIN CAPITAL LIGATURE OE 0x292F 0x0166 # LATIN CAPITAL LETTER T WITH STROKE 0x2930 0x00DE # LATIN CAPITAL LETTER THORN 0x2941 0x00E6 # LATIN SMALL LIGATURE AE 0x2942 0x0111 # LATIN SMALL LETTER D WITH STROKE 0x2943 0x00F0 # LATIN SMALL LETTER ETH 0x2944 0x0127 # LATIN SMALL LETTER H WITH STROKE 0x2945 0x0131 # LATIN SMALL LETTER DOTLESS I 0x2946 0x0133 # LATIN SMALL LIGATURE IJ 0x2947 0x0138 # LATIN SMALL LETTER KRA 0x2948 0x0142 # LATIN SMALL LETTER L WITH STROKE 0x2949 0x0140 # LATIN SMALL LETTER L WITH MIDDLE DOT 0x294A 0x0149 # LATIN SMALL LETTER N PRECEDED BY APOSTROPHE 0x294B 0x014B # LATIN SMALL LETTER ENG 0x294C 0x00F8 # LATIN SMALL LETTER O WITH STROKE 0x294D 0x0153 # LATIN SMALL LIGATURE OE 0x294E 0x00DF # LATIN SMALL LETTER SHARP S 0x294F 0x0167 # LATIN SMALL LETTER T WITH STROKE 0x2950 0x00FE # LATIN SMALL LETTER THORN 0x2A21 0x00C1 # LATIN CAPITAL LETTER A WITH ACUTE 0x2A22 0x00C0 # LATIN CAPITAL LETTER A WITH GRAVE 0x2A23 0x00C4 # LATIN CAPITAL LETTER A WITH DIAERESIS 0x2A24 0x00C2 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX 0x2A25 0x0102 # LATIN CAPITAL LETTER A WITH BREVE 0x2A26 0x01CD # LATIN CAPITAL LETTER A WITH CARON 0x2A27 0x0100 # LATIN CAPITAL LETTER A WITH MACRON 0x2A28 0x0104 # LATIN CAPITAL LETTER A WITH OGONEK 0x2A29 0x00C5 # LATIN CAPITAL LETTER A WITH RING ABOVE 0x2A2A 0x00C3 # LATIN CAPITAL LETTER A WITH TILDE 0x2A2B 0x0106 # LATIN CAPITAL LETTER C WITH ACUTE 0x2A2C 0x0108 # LATIN CAPITAL LETTER C WITH CIRCUMFLEX 0x2A2D 0x010C # LATIN CAPITAL LETTER C WITH CARON 0x2A2E 0x00C7 # LATIN CAPITAL LETTER C WITH CEDILLA 0x2A2F 0x010A # LATIN CAPITAL LETTER C WITH DOT ABOVE 0x2A30 0x010E # LATIN CAPITAL LETTER D WITH CARON 0x2A31 0x00C9 # LATIN CAPITAL LETTER E WITH ACUTE 0x2A32 0x00C8 # LATIN CAPITAL LETTER E WITH GRAVE 0x2A33 0x00CB # LATIN CAPITAL LETTER E WITH DIAERESIS 0x2A34 0x00CA # LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0x2A35 0x011A # LATIN CAPITAL LETTER E WITH CARON 0x2A36 0x0116 # LATIN CAPITAL LETTER E WITH DOT ABOVE 0x2A37 0x0112 # LATIN CAPITAL LETTER E WITH MACRON 0x2A38 0x0118 # LATIN CAPITAL LETTER E WITH OGONEK 0x2A3A 0x011C # LATIN CAPITAL LETTER G WITH CIRCUMFLEX 0x2A3B 0x011E # LATIN CAPITAL LETTER G WITH BREVE 0x2A3C 0x0122 # LATIN CAPITAL LETTER G WITH CEDILLA 0x2A3D 0x0120 # LATIN CAPITAL LETTER G WITH DOT ABOVE 0x2A3E 0x0124 # LATIN CAPITAL LETTER H WITH CIRCUMFLEX 0x2A3F 0x00CD # LATIN CAPITAL LETTER I WITH ACUTE 0x2A40 0x00CC # LATIN CAPITAL LETTER I WITH GRAVE 0x2A41 0x00CF # LATIN CAPITAL LETTER I WITH DIAERESIS 0x2A42 0x00CE # LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0x2A43 0x01CF # LATIN CAPITAL LETTER I WITH CARON 0x2A44 0x0130 # LATIN CAPITAL LETTER I WITH DOT ABOVE 0x2A45 0x012A # LATIN CAPITAL LETTER I WITH MACRON 0x2A46 0x012E # LATIN CAPITAL LETTER I WITH OGONEK 0x2A47 0x0128 # LATIN CAPITAL LETTER I WITH TILDE 0x2A48 0x0134 # LATIN CAPITAL LETTER J WITH CIRCUMFLEX 0x2A49 0x0136 # LATIN CAPITAL LETTER K WITH CEDILLA 0x2A4A 0x0139 # LATIN CAPITAL LETTER L WITH ACUTE 0x2A4B 0x013D # LATIN CAPITAL LETTER L WITH CARON 0x2A4C 0x013B # LATIN CAPITAL LETTER L WITH CEDILLA 0x2A4D 0x0143 # LATIN CAPITAL LETTER N WITH ACUTE 0x2A4E 0x0147 # LATIN CAPITAL LETTER N WITH CARON 0x2A4F 0x0145 # LATIN CAPITAL LETTER N WITH CEDILLA 0x2A50 0x00D1 # LATIN CAPITAL LETTER N WITH TILDE 0x2A51 0x00D3 # LATIN CAPITAL LETTER O WITH ACUTE 0x2A52 0x00D2 # LATIN CAPITAL LETTER O WITH GRAVE 0x2A53 0x00D6 # LATIN CAPITAL LETTER O WITH DIAERESIS 0x2A54 0x00D4 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0x2A55 0x01D1 # LATIN CAPITAL LETTER O WITH CARON 0x2A56 0x0150 # LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 0x2A57 0x014C # LATIN CAPITAL LETTER O WITH MACRON 0x2A58 0x00D5 # LATIN CAPITAL LETTER O WITH TILDE 0x2A59 0x0154 # LATIN CAPITAL LETTER R WITH ACUTE 0x2A5A 0x0158 # LATIN CAPITAL LETTER R WITH CARON 0x2A5B 0x0156 # LATIN CAPITAL LETTER R WITH CEDILLA 0x2A5C 0x015A # LATIN CAPITAL LETTER S WITH ACUTE 0x2A5D 0x015C # LATIN CAPITAL LETTER S WITH CIRCUMFLEX 0x2A5E 0x0160 # LATIN CAPITAL LETTER S WITH CARON 0x2A5F 0x015E # LATIN CAPITAL LETTER S WITH CEDILLA 0x2A60 0x0164 # LATIN CAPITAL LETTER T WITH CARON 0x2A61 0x0162 # LATIN CAPITAL LETTER T WITH CEDILLA 0x2A62 0x00DA # LATIN CAPITAL LETTER U WITH ACUTE 0x2A63 0x00D9 # LATIN CAPITAL LETTER U WITH GRAVE 0x2A64 0x00DC # LATIN CAPITAL LETTER U WITH DIAERESIS 0x2A65 0x00DB # LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0x2A66 0x016C # LATIN CAPITAL LETTER U WITH BREVE 0x2A67 0x01D3 # LATIN CAPITAL LETTER U WITH CARON 0x2A68 0x0170 # LATIN CAPITAL LETTER U WITH DOUBLE ACUTE 0x2A69 0x016A # LATIN CAPITAL LETTER U WITH MACRON 0x2A6A 0x0172 # LATIN CAPITAL LETTER U WITH OGONEK 0x2A6B 0x016E # LATIN CAPITAL LETTER U WITH RING ABOVE 0x2A6C 0x0168 # LATIN CAPITAL LETTER U WITH TILDE 0x2A6D 0x01D7 # LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE 0x2A6E 0x01DB # LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE 0x2A6F 0x01D9 # LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON 0x2A70 0x01D5 # LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON 0x2A71 0x0174 # LATIN CAPITAL LETTER W WITH CIRCUMFLEX 0x2A72 0x00DD # LATIN CAPITAL LETTER Y WITH ACUTE 0x2A73 0x0178 # LATIN CAPITAL LETTER Y WITH DIAERESIS 0x2A74 0x0176 # LATIN CAPITAL LETTER Y WITH CIRCUMFLEX 0x2A75 0x0179 # LATIN CAPITAL LETTER Z WITH ACUTE 0x2A76 0x017D # LATIN CAPITAL LETTER Z WITH CARON 0x2A77 0x017B # LATIN CAPITAL LETTER Z WITH DOT ABOVE 0x2B21 0x00E1 # LATIN SMALL LETTER A WITH ACUTE 0x2B22 0x00E0 # LATIN SMALL LETTER A WITH GRAVE 0x2B23 0x00E4 # LATIN SMALL LETTER A WITH DIAERESIS 0x2B24 0x00E2 # LATIN SMALL LETTER A WITH CIRCUMFLEX 0x2B25 0x0103 # LATIN SMALL LETTER A WITH BREVE 0x2B26 0x01CE # LATIN SMALL LETTER A WITH CARON 0x2B27 0x0101 # LATIN SMALL LETTER A WITH MACRON 0x2B28 0x0105 # LATIN SMALL LETTER A WITH OGONEK 0x2B29 0x00E5 # LATIN SMALL LETTER A WITH RING ABOVE 0x2B2A 0x00E3 # LATIN SMALL LETTER A WITH TILDE 0x2B2B 0x0107 # LATIN SMALL LETTER C WITH ACUTE 0x2B2C 0x0109 # LATIN SMALL LETTER C WITH CIRCUMFLEX 0x2B2D 0x010D # LATIN SMALL LETTER C WITH CARON 0x2B2E 0x00E7 # LATIN SMALL LETTER C WITH CEDILLA 0x2B2F 0x010B # LATIN SMALL LETTER C WITH DOT ABOVE 0x2B30 0x010F # LATIN SMALL LETTER D WITH CARON 0x2B31 0x00E9 # LATIN SMALL LETTER E WITH ACUTE 0x2B32 0x00E8 # LATIN SMALL LETTER E WITH GRAVE 0x2B33 0x00EB # LATIN SMALL LETTER E WITH DIAERESIS 0x2B34 0x00EA # LATIN SMALL LETTER E WITH CIRCUMFLEX 0x2B35 0x011B # LATIN SMALL LETTER E WITH CARON 0x2B36 0x0117 # LATIN SMALL LETTER E WITH DOT ABOVE 0x2B37 0x0113 # LATIN SMALL LETTER E WITH MACRON 0x2B38 0x0119 # LATIN SMALL LETTER E WITH OGONEK 0x2B39 0x01F5 # LATIN SMALL LETTER G WITH ACUTE 0x2B3A 0x011D # LATIN SMALL LETTER G WITH CIRCUMFLEX 0x2B3B 0x011F # LATIN SMALL LETTER G WITH BREVE 0x2B3D 0x0121 # LATIN SMALL LETTER G WITH DOT ABOVE 0x2B3E 0x0125 # LATIN SMALL LETTER H WITH CIRCUMFLEX 0x2B3F 0x00ED # LATIN SMALL LETTER I WITH ACUTE 0x2B40 0x00EC # LATIN SMALL LETTER I WITH GRAVE 0x2B41 0x00EF # LATIN SMALL LETTER I WITH DIAERESIS 0x2B42 0x00EE # LATIN SMALL LETTER I WITH CIRCUMFLEX 0x2B43 0x01D0 # LATIN SMALL LETTER I WITH CARON 0x2B45 0x012B # LATIN SMALL LETTER I WITH MACRON 0x2B46 0x012F # LATIN SMALL LETTER I WITH OGONEK 0x2B47 0x0129 # LATIN SMALL LETTER I WITH TILDE 0x2B48 0x0135 # LATIN SMALL LETTER J WITH CIRCUMFLEX 0x2B49 0x0137 # LATIN SMALL LETTER K WITH CEDILLA 0x2B4A 0x013A # LATIN SMALL LETTER L WITH ACUTE 0x2B4B 0x013E # LATIN SMALL LETTER L WITH CARON 0x2B4C 0x013C # LATIN SMALL LETTER L WITH CEDILLA 0x2B4D 0x0144 # LATIN SMALL LETTER N WITH ACUTE 0x2B4E 0x0148 # LATIN SMALL LETTER N WITH CARON 0x2B4F 0x0146 # LATIN SMALL LETTER N WITH CEDILLA 0x2B50 0x00F1 # LATIN SMALL LETTER N WITH TILDE 0x2B51 0x00F3 # LATIN SMALL LETTER O WITH ACUTE 0x2B52 0x00F2 # LATIN SMALL LETTER O WITH GRAVE 0x2B53 0x00F6 # LATIN SMALL LETTER O WITH DIAERESIS 0x2B54 0x00F4 # LATIN SMALL LETTER O WITH CIRCUMFLEX 0x2B55 0x01D2 # LATIN SMALL LETTER O WITH CARON 0x2B56 0x0151 # LATIN SMALL LETTER O WITH DOUBLE ACUTE 0x2B57 0x014D # LATIN SMALL LETTER O WITH MACRON 0x2B58 0x00F5 # LATIN SMALL LETTER O WITH TILDE 0x2B59 0x0155 # LATIN SMALL LETTER R WITH ACUTE 0x2B5A 0x0159 # LATIN SMALL LETTER R WITH CARON 0x2B5B 0x0157 # LATIN SMALL LETTER R WITH CEDILLA 0x2B5C 0x015B # LATIN SMALL LETTER S WITH ACUTE 0x2B5D 0x015D # LATIN SMALL LETTER S WITH CIRCUMFLEX 0x2B5E 0x0161 # LATIN SMALL LETTER S WITH CARON 0x2B5F 0x015F # LATIN SMALL LETTER S WITH CEDILLA 0x2B60 0x0165 # LATIN SMALL LETTER T WITH CARON 0x2B61 0x0163 # LATIN SMALL LETTER T WITH CEDILLA 0x2B62 0x00FA # LATIN SMALL LETTER U WITH ACUTE 0x2B63 0x00F9 # LATIN SMALL LETTER U WITH GRAVE 0x2B64 0x00FC # LATIN SMALL LETTER U WITH DIAERESIS 0x2B65 0x00FB # LATIN SMALL LETTER U WITH CIRCUMFLEX 0x2B66 0x016D # LATIN SMALL LETTER U WITH BREVE 0x2B67 0x01D4 # LATIN SMALL LETTER U WITH CARON 0x2B68 0x0171 # LATIN SMALL LETTER U WITH DOUBLE ACUTE 0x2B69 0x016B # LATIN SMALL LETTER U WITH MACRON 0x2B6A 0x0173 # LATIN SMALL LETTER U WITH OGONEK 0x2B6B 0x016F # LATIN SMALL LETTER U WITH RING ABOVE 0x2B6C 0x0169 # LATIN SMALL LETTER U WITH TILDE 0x2B6D 0x01D8 # LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE 0x2B6E 0x01DC # LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE 0x2B6F 0x01DA # LATIN SMALL LETTER U WITH DIAERESIS AND CARON 0x2B70 0x01D6 # LATIN SMALL LETTER U WITH DIAERESIS AND MACRON 0x2B71 0x0175 # LATIN SMALL LETTER W WITH CIRCUMFLEX 0x2B72 0x00FD # LATIN SMALL LETTER Y WITH ACUTE 0x2B73 0x00FF # LATIN SMALL LETTER Y WITH DIAERESIS 0x2B74 0x0177 # LATIN SMALL LETTER Y WITH CIRCUMFLEX 0x2B75 0x017A # LATIN SMALL LETTER Z WITH ACUTE 0x2B76 0x017E # LATIN SMALL LETTER Z WITH CARON 0x2B77 0x017C # LATIN SMALL LETTER Z WITH DOT ABOVE END JIS0212 START JIS02131 END JIS02131 ./bin/charclass.pl0000755000175000017500000000740711326525116014122 0ustar henrichhenrich#!/usr/bin/perl # Yudit Unicode Editor Source File # # Copyright (C) 2000 Gaspar Sinai # # This program 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 of the License, or # (at your option) any later version. # # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # This script makes a compressed precompose map. # Compressed means: for a range only the first one will be # encoded. # In order to run the script you need to get # ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt # as and input. # encode composing chars -> precomposed char # decode precomposed char -> composing chars %GeneralCategory = ( "Lu", 1, "Ll", 2, "Lt", 3, "Mn", 4, "Mc", 5, "Me", 6, "Nd", 7, "Nl", 8, "No", 9, "Zs", 10, "Zl", 11, "Zp", 12, "Cc", 13, "Cf", 14, "Cs", 15, "Co", 16, "Cn", 17, # Informative Categories "Lm", 18, "Lo", 19, "Pc", 20, "Pd", 21, "Ps", 22, "Pe", 23, "Pi", 24, "Pf", 25, "Po", 26, "Sm", 27, "Sc", 28, "Sk", 29, "So", 30 ); @encodes = (); @decodes = (); @full_date = localtime(time); $year = $full_date[5] + 1900; $mon = $full_date[4] + 1; $mday = $full_date[3]; $date = sprintf ("%4d-%02d-%02d", $year, $mon, $mday); $name="precompose.my"; die "No version specified." if ($#ARGV == -1); $VERSION=shift; print <) { next if (split (';')) < 6; $plain = hex $_[0]; $general = $_[2]; if (!defined ($GeneralCategory {$general})) { $general = 0; } else { $general = $GeneralCategory {$general}; } if ($last+1 == $plain && $lastvle == $general) { $last++; next; } # hole if ($last+1 < $plain && $_[1]!~/Last>/) { printf ("%08X -> %02X$/", $last+1, 0); } printf ("%08X -> %02X$/", $plain, $general); $last = $plain; $lastvle = $general; } printf ("%08X -> %02X$/", $last+1, 0); print "$/#END$/"; ./bin/kmap/0000755000175000017500000000000010724001346012532 5ustar henrichhenrich./bin/kmap/Gujarati.kmap.pl0000644000175000017500000000504007670120450015567 0ustar henrichhenrich#!/usr/bin/perl -w %consonants = ( "k" => "0x0a95", "kh" => "0x0a96", "g" => "0x0a97", "gh" => "0x0a98", "N^" => "0x0a99", "~N" => "0x0a99", "c" => "0x0a9a", "ch" => "0x0a9a", "chh" => "0x0a9b", "Ch" => "0x0a9b", "j" => "0x0a9c", "jh" => "0x0a9d", "~n" => "0x0a9e", "JN" => "0x0a9e", "T" => "0x0a9f", "Th" => "0x0aa0", "D" => "0x0aa1", "Dh" => "0x0aa2", "N" => "0x0aa3", "t" => "0x0aa4", "th" => "0x0aa5", "d" => "0x0aa6", "dh" => "0x0aa7", "n" => "0x0aa8", "p" => "0x0aaa", "ph" => "0x0aab", "b" => "0x0aac", "bh" => "0x0aad", "m" => "0x0aae", "y" => "0x0aaf", "r" => "0x0ab0", "l" => "0x0ab2", "L" => "0x0ab3", "ld" => "0x0ab3", "v" => "0x0ab5", "w" => "0x0ab5", "sh" => "0x0ab6", "shh" => "0x0ab7", "Sh" => "0x0ab7", "s" => "0x0ab8", "h" => "0x0ab9", "x" => "0x0a95 0x0acd 0x0ab7", "GY" => "0x0a9c 0x0acd 0x0a9e", "dny" => "0x0a9c 0x0acd 0x0a9e", ); %vowels = ( "" => " 0x0acd", "a" => "", "A" => " 0x0abe", "aa" => " 0x0abe", "i" => " 0x0abf", "I" => " 0x0ac0", "ii" => " 0x0ac0", "u" => " 0x0ac1", "U" => " 0x0ac2", "uu" => " 0x0ac2", "R^i" => " 0x0ac3", "RRi" => " 0x0ac3", "R^I" => " 0x0ac4", "RRI" => " 0x0ac4", "L^i" => " 0x0ae2", "LLi" => " 0x0ae2", "L^I" => " 0x0ae3", "LLI" => " 0x0ae3", "e" => " 0x0ac7", "ai" => " 0x0ac8", "A.c" => " 0x0ac9", "aa.c" => " 0x0ac9", "o" => " 0x0acb", "au" => " 0x0acc", ".h" => " 0x0acd 0x200c", ); print "// Gujarati kmap according to Itrans transliteration\n"; print "// by Miikka-Markus Alhonen 2002-01-26\n"; print "// 2003-06-04 upgraded to Unicode 4.0\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print < "0x0a15", "kh" => "0x0a16", "g" => "0x0a17", "gh" => "0x0a18", "N^" => "0x0a19", "~N" => "0x0a19", "c" => "0x0a1a", "ch" => "0x0a1b", "Ch" => "0x0a1b", "j" => "0x0a1c", "jh" => "0x0a1d", "~n" => "0x0a1e", "JN" => "0x0a1e", "T" => "0x0a1f", "Th" => "0x0a20", "D" => "0x0a21", "Dh" => "0x0a22", "N" => "0x0a23", "t" => "0x0a24", "th" => "0x0a25", "d" => "0x0a26", "dh" => "0x0a27", "n" => "0x0a28", "p" => "0x0a2a", "ph" => "0x0a2b", "b" => "0x0a2c", "bh" => "0x0a2d", "m" => "0x0a2e", "y" => "0x0a2f", "r" => "0x0a30", "l" => "0x0a32", "L" => "0x0a33", "ld" => "0x0a33", "v" => "0x0a35", "w" => "0x0a35", "sh" => "0x0a36", "s" => "0x0a38", "h" => "0x0a39", "K" => "0x0a59", "G" => "0x0a5a", "z" => "0x0a5b", "J" => "0x0a5b", ".D" => "0x0a5c", "f" => "0x0a5e", "GY" => "0x0a1c 0x0a4d 0x0a1e", "dny" => "0x0a1c 0x0a4d 0x0a1e", ); %doubles = ( "k" => "k", "kh" => "k", "g" => "g", "gh" => "g", "c" => "c", "ch" => "c", "Ch" => "c", "j" => "j", "jh" => "j", "T" => "T", "Th" => "T", "D" => "D", "Dh" => "D", "t" => "t", "th" => "t", "d" => "d", "dh" => "d", "p" => "p", "ph" => "p", "b" => "b", "bh" => "b", "y" => "y", "r" => "r", "l" => "l", "v" => "v", "w" => "w", "s" => "s", ); %nasals = ( "k" => "N^", "kh" => "N^", "g" => "N^", "gh" => "N^", "N^" => "N^", "~N" => "N^", "c" => "~n", "ch" => "~n", "Ch" => "~n", "j" => "~n", "jh" => "~n", "~n" => "~n", "JN" => "~n", "T" => "N", "Th" => "N", "D" => "N", "Dh" => "N", "N" => "N", "t" => "n", "th" => "n", "d" => "n", "dh" => "n", "n" => "n", "p" => "m", "ph" => "m", "b" => "m", "bh" => "m", "m" => "m", "GY" => "~n", "dny" => "~n", ); %alt = ( "N^" => "~N", "~n" => "JN" ); %vowels = ( "" => " 0x0a4d", "a" => "", "A" => " 0x0a3e", "aa" => " 0x0a3e", "i" => " 0x0a3f", "I" => " 0x0a40", "ii" => " 0x0a40", "u" => " 0x0a41", "U" => " 0x0a42", "uu" => " 0x0a42", "e" => " 0x0a47", "ai" => " 0x0a48", "o" => " 0x0a4b", "au" => " 0x0a4c", ".h" => " 0x0a4d 0x200c", ); print "// Gurmukhi kmap according to Itrans transliteration\n"; print "// by Miikka-Markus Alhonen 2002-01-26\n"; print "// 2003-06-04 upgraded to Unicode 4.0\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print "\n// Double consonant + vowel/virama\n"; $mod = "0x0a71 "; foreach $cons (sort keys %doubles) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s%s=%s%s%s\",\n",$doubles{$cons},$cons,$vowel,$mod,$consonants{$cons},$vowels{$vowel}); } } print "\n// Nasal + consonant + vowel/virama\n"; $mod = "0x0a70 "; foreach $cons (sort keys %nasals) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s%s=%s%s%s\",\n",$nasals{$cons},$cons,$vowel,$mod,$consonants{$cons},$vowels{$vowel}); } if ($alt{$nasals{$cons}}) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s%s=%s%s%s\",\n",$alt{$nasals{$cons}},$cons,$vowel,$mod,$consonants{$cons},$vowels{$vowel}); } } } print < "0x0b15", "kh" => "0x0b16", "g" => "0x0b17", "gh" => "0x0b18", "N^" => "0x0b19", "~N" => "0x0b19", "c" => "0x0b1a", "ch" => "0x0b1a", "chh" => "0x0b1b", "Ch" => "0x0b1b", "j" => "0x0b1c", "jh" => "0x0b1d", "~n" => "0x0b1e", "JN" => "0x0b1e", "T" => "0x0b1f", "Th" => "0x0b20", "D" => "0x0b21", "Dh" => "0x0b22", "N" => "0x0b23", "t" => "0x0b24", "th" => "0x0b25", "d" => "0x0b26", "dh" => "0x0b27", "n" => "0x0b28", "p" => "0x0b2a", "ph" => "0x0b2b", "b" => "0x0b2c", "bh" => "0x0b2d", "m" => "0x0b2e", "y" => "0x0b2f", "r" => "0x0b30", "l" => "0x0b32", "L" => "0x0b33", "ld" => "0x0b33", "sh" => "0x0b36", "shh" => "0x0b37", "Sh" => "0x0b37", "s" => "0x0b38", "h" => "0x0b39", ".D" => "0x0b5c", ".Dh" => "0x0b5d", "Y" => "0x0b5f", "x" => "0x0b15 0x0b4d 0x0b37", "GY" => "0x0b1c 0x0b4d 0x0b1e", "dny" => "0x0b1c 0x0b4d 0x0b1e", ); %vowels = ( "" => " 0x0b4d", "a" => "", "A" => " 0x0b3e", "aa" => " 0x0b3e", "i" => " 0x0b3f", "I" => " 0x0b40", "ii" => " 0x0b40", "u" => " 0x0b41", "U" => " 0x0b42", "uu" => " 0x0b42", "R^i" => " 0x0b43", "RRi" => " 0x0b43", "e" => " 0x0b47", "ai" => " 0x0b48", "o" => " 0x0b4b", "au" => " 0x0b4c", ".h" => " 0x0b4d 0x200c", ); print "// Oriya kmap according to Itrans transliteration\n"; print "// by Miikka-Markus Alhonen 2002-01-26\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print < "0x0915", "kh" => "0x0916", "g" => "0x0917", "gh" => "0x0918", "N^" => "0x0919", "~N" => "0x0919", "c" => "0x091a", "ch" => "0x091a", "chh" => "0x091b", "Ch" => "0x091b", "j" => "0x091c", "jh" => "0x091d", "~n" => "0x091e", "JN" => "0x091e", "T" => "0x091f", "Th" => "0x0920", "D" => "0x0921", "Dh" => "0x0922", "N" => "0x0923", "t" => "0x0924", "th" => "0x0925", "d" => "0x0926", "dh" => "0x0927", "n" => "0x0928", "p" => "0x092a", "ph" => "0x092b", "b" => "0x092c", "bh" => "0x092d", "m" => "0x092e", "y" => "0x092f", "r" => "0x0930", "l" => "0x0932", "L" => "0x0933", "ld" => "0x0933", "v" => "0x0935", "w" => "0x0935", "sh" => "0x0936", "shh" => "0x0937", "Sh" => "0x0937", "s" => "0x0938", "h" => "0x0939", "q" => "0x0958", "K" => "0x0959", "G" => "0x095a", "z" => "0x095b", "J" => "0x095b", ".D" => "0x095c", ".Dh" => "0x095d", "f" => "0x095e", "Y" => "0x095f", "x" => "0x0915 0x094d 0x0937", "GY" => "0x091c 0x094d 0x091e", "dny" => "0x091c 0x094d 0x091e", ); %vowels = ( "" => " 0x094d", "a" => "", "A" => " 0x093e", "aa" => " 0x093e", "i" => " 0x093f", "I" => " 0x0940", "ii" => " 0x0940", "u" => " 0x0941", "U" => " 0x0942", "uu" => " 0x0942", "R^i" => " 0x0943", "RRi" => " 0x0943", "R^I" => " 0x0944", "RRI" => " 0x0944", "e" => " 0x0947", "ai" => " 0x0948", "A.c" => " 0x0949", "aa.c" => " 0x0949", "o" => " 0x094b", "au" => " 0x094c", ".h" => " 0x094d 0x200c", "L^i" => " 0x0962", "LLi" => " 0x0962", "L^I" => " 0x0963", "LLI" => " 0x0963", ); print "// Devanagari kmap according to Itrans transliteration\n"; print "// by Miikka-Markus Alhonen 2002-01-20\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print < "0x0995", "kh" => "0x0996", "g" => "0x0997", "gh" => "0x0998", "N^" => "0x0999", "~N" => "0x0999", "c" => "0x099a", "ch" => "0x099a", "chh" => "0x099b", "Ch" => "0x099b", "j" => "0x099c", "jh" => "0x099d", "~n" => "0x099e", "JN" => "0x099e", "T" => "0x099f", "Th" => "0x09a0", "D" => "0x09a1", "Dh" => "0x09a2", "N" => "0x09a3", "t" => "0x09a4", "th" => "0x09a5", "d" => "0x09a6", "dh" => "0x09a7", "n" => "0x09a8", "p" => "0x09aa", "ph" => "0x09ab", "b" => "0x09ac", "v" => "0x09ac", "bh" => "0x09ad", "m" => "0x09ae", "y" => "0x09af", "J" => "0x09af", "r" => "0x09b0", "l" => "0x09b2", "sh" => "0x09b6", "shh" => "0x09b7", "Sh" => "0x09b7", "s" => "0x09b8", "h" => "0x09b9", ".D" => "0x09dc", ".Dh" => "0x09dd", "Y" => "0x09df", "x" => "0x0995 0x09cd 0x09b7", "GY" => "0x099c 0x09cd 0x099e", "dny" => "0x099c 0x09cd 0x099e", ); %vowels = ( "" => " 0x09cd", "a" => "", "A" => " 0x09be", "aa" => " 0x09be", "i" => " 0x09bf", "I" => " 0x09c0", "ii" => " 0x09c0", "u" => " 0x09c1", "U" => " 0x09c2", "uu" => " 0x09c2", "R^i" => " 0x09c3", "RRi" => " 0x09c3", "R^I" => " 0x09c4", "RRI" => " 0x09c4", "e" => " 0x09c7", "ai" => " 0x09c8", "o" => " 0x09cb", "au" => " 0x09cc", ".h" => " 0x09cd 0x200c", "L^i" => " 0x09e2", "LLi" => " 0x09e2", "L^I" => " 0x09e3", "LLI" => " 0x09e3", ); print "// Bengali kmap according to Itrans transliteration\n"; print "// by Miikka-Markus Alhonen 2002-01-23\n"; print "// 2003-06-04 upgraded to Unicode 4.0\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print < "0x0c15", "kh" => "0x0c16", "g" => "0x0c17", "gh" => "0x0c18", "N^" => "0x0c19", "~N" => "0x0c19", "c" => "0x0c1a", "ch" => "0x0c1a", "chh" => "0x0c1b", "Ch" => "0x0c1b", "j" => "0x0c1c", "jh" => "0x0c1d", "~n" => "0x0c1e", "JN" => "0x0c1e", "T" => "0x0c1f", "Th" => "0x0c20", "D" => "0x0c21", "Dh" => "0x0c22", "N" => "0x0c23", "t" => "0x0c24", "th" => "0x0c25", "d" => "0x0c26", "dh" => "0x0c27", "n" => "0x0c28", "p" => "0x0c2a", "ph" => "0x0c2b", "b" => "0x0c2c", "bh" => "0x0c2d", "m" => "0x0c2e", "y" => "0x0c2f", "r" => "0x0c30", "R" => "0x0c31", "l" => "0x0c32", "L" => "0x0c33", "v" => "0x0c35", "w" => "0x0c35", "sh" => "0x0c36", "shh" => "0x0c37", "Sh" => "0x0c37", "s" => "0x0c38", "h" => "0x0c39", "x" => "0x0c15 0x0c4d 0x0c37", "GY" => "0x0c1c 0x0c4d 0x0c1e", "dny" => "0x0c1c 0x0c4d 0x0c1e", ); %vowels = ( "" => " 0x0c4d", "a" => "", "A" => " 0x0c3e", "aa" => " 0x0c3e", "i" => " 0x0c3f", "I" => " 0x0c40", "ii" => " 0x0c40", "u" => " 0x0c41", "U" => " 0x0c42", "uu" => " 0x0c42", "R^i" => " 0x0c43", "RRi" => " 0x0c43", "R^I" => " 0x0c44", "RRI" => " 0x0c44", "e" => " 0x0c46", "E" => " 0x0c47", "ai" => " 0x0c48", "o" => " 0x0c4a", "O" => " 0x0c4b", "au" => " 0x0c4c", ".h" => " 0x0c4d 0x200c", ); print "// Telugu kmap according to Itrans transliteration\n"; print "// by Miikka-Markus Alhonen 2002-02-17\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print < "0x0c95", "kh" => "0x0c96", "g" => "0x0c97", "gh" => "0x0c98", "N^" => "0x0c99", "~N" => "0x0c99", "c" => "0x0c9a", "ch" => "0x0c9a", "chh" => "0x0c9b", "Ch" => "0x0c9b", "j" => "0x0c9c", "jh" => "0x0c9d", "~n" => "0x0c9e", "JN" => "0x0c9e", "T" => "0x0c9f", "Th" => "0x0ca0", "D" => "0x0ca1", "Dh" => "0x0ca2", "N" => "0x0ca3", "t" => "0x0ca4", "th" => "0x0ca5", "d" => "0x0ca6", "dh" => "0x0ca7", "n" => "0x0ca8", "p" => "0x0caa", "ph" => "0x0cab", "b" => "0x0cac", "bh" => "0x0cad", "m" => "0x0cae", "y" => "0x0caf", "r" => "0x0cb0", "R" => "0x0cb1", "l" => "0x0cb2", "L" => "0x0cb3", "v" => "0x0cb5", "w" => "0x0cb5", "sh" => "0x0cb6", "shh" => "0x0cb7", "Sh" => "0x0cb7", "s" => "0x0cb8", "h" => "0x0cb9", "x" => "0x0c95 0x0ccd 0x0cb7", "GY" => "0x0c9c 0x0ccd 0x0c9e", "dny" => "0x0c9c 0x0ccd 0x0c9e", ); %vowels = ( "" => " 0x0ccd", "a" => "", "A" => " 0x0cbe", "aa" => " 0x0cbe", "i" => " 0x0cbf", "I" => " 0x0cc0", "ii" => " 0x0cc0", "u" => " 0x0cc1", "U" => " 0x0cc2", "uu" => " 0x0cc2", "R^i" => " 0x0cc3", "RRi" => " 0x0cc3", "R^I" => " 0x0cc4", "RRI" => " 0x0cc4", "e" => " 0x0cc6", "E" => " 0x0cc7", "ai" => " 0x0cc8", "o" => " 0x0cca", "O" => " 0x0ccb", "au" => " 0x0ccc", ".h" => " 0x0ccd 0x200c", ); print "// Kannada kmap according to Itrans transliteration\n"; print "// by Miikka-Markus Alhonen 2002-02-17\n"; print "// 2003-06-04 upgraded to Unicode 4.0\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print < "0x0d15", "kh" => "0x0d16", "g" => "0x0d17", "gh" => "0x0d18", "\\\"n" => "0x0d19", "c" => "0x0d1a", "ch" => "0x0d1b", "j" => "0x0d1c", "jh" => "0x0d1d", "~n" => "0x0d1e", ".t" => "0x0d1f", ".th" => "0x0d20", ".d" => "0x0d21", ".dh" => "0x0d22", ".n" => "0x0d23", "t" => "0x0d24", "th" => "0x0d25", "d" => "0x0d26", "dh" => "0x0d27", "n" => "0x0d28", "..n" => "0x0d28", "p" => "0x0d2a", "ph" => "0x0d2b", "f" => "0x0d2b", "b" => "0x0d2c", "bh" => "0x0d2d", "m" => "0x0d2e", "y" => "0x0d2f", "r" => "0x0d30", ".r" => "0x0d31", "..t" => "0x0d31", "l" => "0x0d32", ".l" => "0x0d33", "zh" => "0x0d34", "v" => "0x0d35", "sh" => "0x0d36", ".s" => "0x0d37", "s" => "0x0d38", "h" => "0x0d39", ); %vowels = ( "" => " 0x0d4d", "a" => "", "aa" => " 0x0d3e", "i" => " 0x0d3f", "ii" => " 0x0d40", "u" => " 0x0d41", "uu" => " 0x0d42", "R" => " 0x0d43", # "RR" => " 0x0d44", # not encoded in Unicode 3.1 "e" => " 0x0d46", "ee" => " 0x0d47", "ai" => " 0x0d48", "o" => " 0x0d4a", "oo" => " 0x0d4b", "au" => " 0x0d4c", "+" => " 0x0d4d 0x200c", # "L" => " 0x0d62", # not encoded in Unicode 3.1 # "LL" => " 0x0d63", # not encoded in Unicode 3.1 ); print "// Malayalam kmap according to Malayalam-TeX transliteration\n"; print "// by Miikka-Markus Alhonen 2002-02-12\n\n"; print "// Consonant + vowel/virama\n"; foreach $cons (sort keys %consonants) { foreach $vowel (sort keys %vowels) { printf ("\"%s%s=%s%s\",\n",$cons,$vowel,$consonants{$cons},$vowels{$vowel}); } } print <>=0x200c", "<<=0x200d", EOF ./bin/wininst.bat0000644000175000017500000000565011333725247014005 0ustar henrichhenrichecho off REM XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX set TOPLEVEL="C:\Build\Yudit\yudit-2.9.2" REM XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX REM REM You can create a package on windows: REM o Install Microsoft Windows SDK for Windows 7 and .NET (ISO) REM http://www.microsoft.com/downloads/details.aspx?FamilyID=71deb800-c591-4f97-a900-bea146e4fae1&displaylang=en REM o install UnxTools REM o http://sourceforge.net/projects/unxutils/ REM o set the path to /usr/local/wbin/ so that REM cp make rm REM o mkdir C:\Build\Yudit REM o cd C:\Build\Yudit REM o gunzip yudit-2.9.2.tar.gz REM o tar xf yudit-2.9.2.tar REM o cd yudit-2.9.2 REM o cp Makefile.in Makefile REM o make REM o bin\wininst REM o build package with iss using yudit32.iss REM cd "%TOPLEVEL%\bin" REM set INSTALLDIR="D:\usr\share\yudit" set INSTALLDIR="C:\Build\Yudit\Install" rm -rf %INSTALLDIR% mkdir "%INSTALLDIR%" mkdir "%INSTALLDIR%\bin" mkdir "%INSTALLDIR%\data" mkdir "%INSTALLDIR%\man" mkdir "%INSTALLDIR%\man\man1" mkdir "%INSTALLDIR%\fonts" mkdir "%INSTALLDIR%\syntax" mkdir "%INSTALLDIR%\config" mkdir "%INSTALLDIR%\src" copy /b "%TOPLEVEL%\mytool\mytool.exe" "%INSTALLDIR%\bin" copy /b "%TOPLEVEL%\mytool\mytool.1" "%INSTALLDIR%\man\man1" copy /b "%TOPLEVEL%\uniprint\uniprint.exe" "%INSTALLDIR%\bin" copy /b "%TOPLEVEL%\uniprint\uniprint.1" "%INSTALLDIR%\man\man1" copy /b "%TOPLEVEL%\uniconv\uniconv.exe" "%INSTALLDIR%\bin" copy /b "%TOPLEVEL%\uniconv\uniconv.1" "%INSTALLDIR%\man\man1" copy /b "%TOPLEVEL%\gui\yudit.exe" "%INSTALLDIR%\bin" copy /b "%TOPLEVEL%\fonts\README.TXT" "%INSTALLDIR%\fonts" copy /b "%TOPLEVEL%\fonts\yudit.ttf" "%INSTALLDIR%\fonts" copy /b "%TOPLEVEL%\fonts\yudit.hex" "%INSTALLDIR%\fonts" REM copy /b "%TOPLEVEL%\fonts\unifont.hex" "%INSTALLDIR%\fonts" REM copy /b "%TOPLEVEL%\fonts\markus9x18.bdf" "%INSTALLDIR%\fonts" REM copy /b "%TOPLEVEL%\fonts\markus18x18ja.bdf" "%INSTALLDIR%\fonts" cd "%TOPLEVEL%\gui" cp -Pr locale "%INSTALLDIR%" cd "%TOPLEVEL%" cp -Pr doc "%INSTALLDIR%" copy /b "README.TXT" "%INSTALLDIR%\doc" copy /b "COPYING.TXT" "%INSTALLDIR%\doc" copy /b "yuditw.properties" "%INSTALLDIR%\config\yudit.properties" cd "%TOPLEVEL%\syntax" copy /b *.* "%INSTALLDIR%\syntax" cd "%TOPLEVEL%\mytool\kmap" copy /b *.my "%INSTALLDIR%\data" copy /b *.kmap "%INSTALLDIR%\src" cd "%TOPLEVEL%\mytool\mys" copy /b *.my "%INSTALLDIR%\data" copy /b *.mys "%INSTALLDIR%\src" cd "%TOPLEVEL%\mytool\uni" copy /b *.my "%INSTALLDIR%\data" cd "%TOPLEVEL%\mytool\hwd" copy /b *.hwd "%INSTALLDIR%\data" cd "%TOPLEVEL%\bin" REM cd %TOPLEVEL% REM dir REM REM This is a replacement for YUDIT_DATA. On unix this is REM /usr/share/yudit REM -installdir is only for windows. for unix, yudit should be REM recompiled. REM copy /b \Yudit\Medium\raghu.ttf "%INSTALLDIR%\fonts" REM %TOPLEVEL%\mytool\mytool.exe -installdir "%INSTALLDIR%" ./bin/obselete/0000755000175000017500000000000010724001346013404 5ustar henrichhenrich./bin/obselete/addsjiserr.pl0000644000175000017500000000025707532460062016106 0ustar henrichhenrich#!/usr/bin/perl while (<>) { chomp; $l = $_; if (/^\d+-\d+-\d+\s+([0-9A-F]{2})([0-9A-F]{2}).*/) { $l .= sprintf ("%c%c", hex($1), hex($2)); } print "$l\n"; } ./bin/obselete/shiftutf8.pl0000644000175000017500000000237107532460062015677 0ustar henrichhenrich#!/usr/bin/perl # # EE00-E650 = 1968 # E650 E6FF EE00 if ($#ARGV != 2) { print STDERR "usage: shiftutf8 rangefrom rangeto new_from < filein > fileout$/"; exit (1); } $range_from = hex (shift); $range_to = hex(shift); $new_from = hex(shift); #print $range_from ."\n"; #exit (0); while (<>) { # read chars s/([\xc0-\xdf])([\x80-\xbf])/&utf8dec($1,$2)/ge; s/([\xe0-\xef])([\x80-\xbf])([\x80-\xbf])/&utf8dec($1,$2,$3)/ge; # now sgml # add number while (s/&#(\d+)\;/&sgmladd($1)/ge) {} while (s/&##(\d+)\;/&utf8enc($1)/ge) {} print; } exit (0); sub sgmladd { if ($_[0] >= $range_from && $_[0] <= $range_to) { return sprintf ("&##%u;", $_[0] + $new_from-$range_from); } return sprintf ("&##%u;", $_[0]); } sub utf8enc { $str = $_[0]; if ($_[0] >= 0x800) { $str = chr (0xe0 | ($_[0] >> 12)); $str .= chr (0x80 | (($_[0] >> 6) & 0x3f)); $str .= chr (0x80 | ($_[0] & 0x3f)); } elsif ($_[0] >= 0x80) { $str = chr (0xc0 | ($_[0] >> 6)); $str .= chr (0x80 | ($_[0] & 0x3f)); } else { $str .= chr ($str); } $str; } # # Works for UCS2 # sub utf8dec { $ret = 0x1f & unpack("C", $_[0]); for ($i=1; $i<=$#_; $i++) { $ret = ($ret << 6) + int (0x3f & unpack ("C", $_[$i])); } sprintf ("&#%u;", $ret); } ./bin/obselete/shifthex.pl0000644000175000017500000000122107532460062015566 0ustar henrichhenrich#!/usr/bin/perl # # EE00-E650 = 1968 # E650 E6FF EE00 if ($#ARGV != 2) { print STDERR "usage: shifthex rangefrom rangeto new_from < filein > fileout$/"; exit (1); } $range_from = hex (shift); $range_to = hex(shift); $new_from = hex(shift); while (<>) { # read chars s/([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])/&shifthex($1,$2,$3,$4)/ge; s/#SGC#//go; print; } exit (0); sub shifthex { $in = hex ($_[0]) * 16*16*16 + hex ($_[1]) *16*16 + hex ($_[2])*16 + hex ($_[3]); if ($in >= $range_from && $in <= $range_to) { $in = $in + $new_from-$range_from; } return sprintf ("#SGC#%02X#SGC#%02X", $in /256, $in % 256); } ./bin/arabickmap.pl0000755000175000017500000001013710237050260014234 0ustar henrichhenrich#!/usr/bin/perl # Generate Arabic kmap for Yudit from shape.pl # @full_date = localtime(time); $year = $full_date[5] + 1900; $mon = $full_date[4] + 1; $mday = $full_date[3]; $date = sprintf ("%4d-%02d-%02d", $year, $mon, $mday); print <) { chomp; split /~/; $h = $_[1]; $h =~ s/0x(.*)/$1/go; $h = hex ($h); $k = sprintf ("%08X", $h); print "\"$_[0]=$_[1]\", // " . &toUtf8 ($h) . " $_[2]\n"; $NAMES{$k} = $_[2]; $KEYS{$k} = $_[0]; } print <) { chomp; if (/(.*) -> [0-9A-F]+ [0-9A-F]+ [0-9A-F]+ [0-9A-F]+/) { $first = $1; @fspl = split(' ', $first); if ($#fspl < 0) { print STDERR "CAN not split $first \n"; next; } $isdefined=1; $allkey = "\""; $alleq = "="; $allcomm = ""; $allutf = ""; $space=""; # We care about ligatures only. next if ($#fspl <= 0); for (@fspl) { if (!defined ($KEYS{$_})) { # print STDERR "$_ in @fspl is not defined...\n"; $isdefined=0; last; } $defin = $NAMES{$_}; $defin =~ s/ARABIC LETTER //; $allkey .= $space; $allkey .= $KEYS{$_}; $allcomm .= $space; $allcomm .= $defin; $allutf .= &toUtf8 (hex($_)); $alleq .= $space; $alleq .= sprintf ("0x%04x", hex ($_)); $space=" "; } if ($isdefined == 1) { print $allkey . $alleq . "\", " . "// " . $allutf . " " . $allcomm . "\n"; } } } print <= 0x800) { $str = chr (0xe0 | ($_[0] >> 12)); $str .= chr (0x80 | (($_[0] >> 6) & 0x3f)); $str .= chr (0x80 | ($_[0] & 0x3f)); } elsif ($_[0] >= 0x80) { $str = chr (0xc0 | ($_[0] >> 6)); $str .= chr (0x80 | ($_[0] & 0x3f)); } else { $str .= chr ($str); } $str; } __END__ $~0x064C~ARABIC DAMMATAN~ %~0x064F~ARABIC DAMMA~ &~0x0651~ARABIC SHADDA~ '~0x064E~ARABIC FATHA~ *~0x0652~ARABIC SUKUN~ ,~0x060C~ARABIC COMMA~ -~0x0640~ARABIC TATWEEL~ 0x30~0x0660~ARABIC-INDIC DIGIT ZERO~ 0x31~0x0661~ARABIC-INDIC DIGIT ONE~ 0x32~0x0662~ARABIC-INDIC DIGIT TWO~ 0x33~0x0663~ARABIC-INDIC DIGIT THREE~ 0x34~0x0664~ARABIC-INDIC DIGIT FOUR~ 0x35~0x0665~ARABIC-INDIC DIGIT FIVE~ 0x36~0x0666~ARABIC-INDIC DIGIT SIX~ 0x37~0x0667~ARABIC-INDIC DIGIT SEVEN~ 0x38~0x0668~ARABIC-INDIC DIGIT EIGHT~ 0x39~0x0669~ARABIC-INDIC DIGIT NINE~ ;~0x061B~ARABIC SEMICOLON~ ?~0x061F~ARABIC QUESTION MARK~ @~0x0621~ARABIC LETTER HAMZA~ A~0x0670~ARABIC LETTER SUPERSCRIPT ALEF~ ^~0x064B~ARABIC FATHATAN~ _~0x064D~ARABIC KASRATAN~ `~0x0650~ARABIC KASRA~ a~0x0627~ARABIC LETTER ALEF~ aB~0x0625~ARABIC LETTER ALEF WITH HAMZA BELOW~ aH~0x0623~ARABIC LETTER ALEF WITH HAMZA ABOVE~ aM~0x0622~ARABIC LETTER ALEF WITH MADDA ABOVE~ b~0x0628~ARABIC LETTER BEH~ c~0x0635~ARABIC LETTER SAD~ d~0x062F~ARABIC LETTER DAL~ dD~0x0636~ARABIC LETTER DAD~ dK~0x0630~ARABIC LETTER THAL~ e~0x0639~ARABIC LETTER AIN~ f~0x0641~ARABIC LETTER FEH~ g~0x062C~ARABIC LETTER JEEM~ gF~0x06AF~ARABIC LETTER GAF~ h~0x0647~ARABIC LETTER HEH~ hH~0x0681~ARABIC LETTER HAH WITH HAMZA ABOVE~ hK~0x062D~ARABIC LETTER HAH~ i~0x063A~ARABIC LETTER GHAIN~ j~0x0649~ARABIC LETTER ALEF MAKSURA~ k~0x0643~ARABIC LETTER KAF~ l~0x0644~ARABIC LETTER LAM~ m~0x0645~ARABIC LETTER MEEM~ n~0x0646~ARABIC LETTER NOON~ p~0x067E~ARABIC LETTER PEH~ q~0x0642~ARABIC LETTER QAF~ r~0x0631~ARABIC LETTER REH~ s~0x0633~ARABIC LETTER SEEN~ S~0x0634~ARABIC LETTER SHEEN~ t~0x062A~ARABIC LETTER TEH~ tC~0x0686~ARABIC LETTER TCHEH~ tJ~0x0637~ARABIC LETTER TAH~ tK~0x062B~ARABIC LETTER THEH~ tM~0x0629~ARABIC LETTER TEH MARBUTA~ v~0x06A4~ARABIC LETTER VEH~ w~0x0648~ARABIC LETTER WAW~ wH~0x0624~ARABIC LETTER WAW WITH HAMZA ABOVE~ x~0x062E~ARABIC LETTER KHAH~ y~0x064A~ARABIC LETTER YEH~ yH~0x0626~ARABIC LETTER YEH WITH HAMZA ABOVE~ z~0x0632~ARABIC LETTER ZAIN~ zH~0x0638~ARABIC LETTER ZAH~ zJ~0x0698~ARABIC LETTER JEH~ ./bin/parsejisx0213.pl0000755000175000017500000000374507532460062014500 0ustar henrichhenrich#!/usr/bin/perl # Parse JIS0213-X.TXT # Gaspar Sinai # Tokyo 2002-04-09 if ($#ARGV <1) { die "usage: $0 {1,2} name [input-file like:JIS0213-1.TXT]"; } $FIELD=shift; $NAME=shift; print < 80000001 2B61 -> 80000002 2B62 -> 80000003 2B63 -> 80000004 2B64 -> 80000005 2B65 -> 80000010 2B66 -> 80000011 EOD } # # SJIS # if ($FIELD == 1) { print < 80000001 8681 -> 80000002 8682 -> 80000003 8683 -> 80000004 8684 -> 80000005 8685 -> 80000010 8686 -> 80000011 EOD } while (<>) { if (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $first = $1 if ($FIELD == 1); $first = $2 if ($FIELD == 2); printf ("%04X -> %08X %08X %08X %s\n", hex ($first), hex ($3), hex ($4), hex($5), $6); next; } if (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $first = $1 if ($FIELD == 1); $first = $2 if ($FIELD == 2); printf ("%04X -> %08X %08X %s\n", hex ($first), hex ($3), hex ($4), $5); next; } if (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $first = $1 if ($FIELD == 1); $first = $2 if ($FIELD == 2); printf ("%04X -> %08X %s\n", hex ($first), hex ($3), $4); next; } } exit (0); ./bin/autogen.pl0000755000175000017500000000611010217441734013610 0ustar henrichhenrich#!/usr/bin/perl # $PI=3.14159265358979323846; $SLICES32=32; $SLICES36=36; $SLICES24=24; $LENGTH=0xffff; $AUTOGEN_CPP="../stoolkit/SAutogen.cpp"; $AUTOGEN_H="../stoolkit/SAutogen.h"; die "can not open open $AUTOGEN_CPP" unless (open (C, "> $AUTOGEN_CPP")); die "can not open open $AUTOGEN_H" unless (open (H, "> $AUTOGEN_H")); print C < * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include EOD print H < * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SAutogen_h #define SAutogen_h #include EOD $SLICES=24; &printFile(); $SLICES=32; &printFile(); $SLICES=36; &printFile(); print H< int main() { char a[256]; char b[20]; char quotel; char quoter; char pcomma[256]; int scanned; int line = 0; while (fgets (a, 256, stdin)) { line++; if ((scanned = sscanf (a, "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c", "el, &b[0],&b[1],&b[2],&b[3],&b[4],&b[5],&b[6],&b[7],&b[8],&b[9], &b[10],&b[11],&b[12],&b[13],&b[14],&b[15],&b[16],&b[17],&b[18],&b[19], "er, pcomma)) >= 22 && line > 2) { fprintf (stdout, "\"%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\"%s\n", b[19],b[18],b[17],b[16],b[15],b[14],b[13],b[12],b[11],b[10], b[9],b[8],b[7],b[6],b[5],b[4],b[3],b[2],b[1],b[0], pcomma); } else { fprintf (stderr, "scanned=%d\n", scanned); fprintf (stdout, "%s", a); } } } ./bin/encsgml.pl0000755000175000017500000000056107532460062013603 0ustar henrichhenrich#!/usr/bin/perl while (<>) { chomp; s/([\xc0-\xdf])([\x80-\xbf])/&cn($1,$2)/ge; s/([\xe0-\xef])([\x80-\xbf])([\x80-\xbf])/&cn($1,$2,$3)/ge; print $_ . $/; } exit (0); # # Works for UCS2 # sub cn { $ret = 0x1f & unpack("C", $_[0]); for ($i=1; $i<=$#_; $i++) { $ret = ($ret << 6) + int (0x3f & unpack ("C", $_[$i])); } sprintf ("&#%u;", $ret); } ./bin/install-sh0000755000175000017500000002202110723144072013606 0ustar henrichhenrich#!/bin/sh # install - install a program, script, or datafile scriptversion=2005-05-14.22 # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. It can only install one file at a time, a restriction # shared with many OS's install programs. # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit="${DOITPROG-}" # put in absolute paths if you don't have them in your path; or use env. vars. mvprog="${MVPROG-mv}" cpprog="${CPPROG-cp}" chmodprog="${CHMODPROG-chmod}" chownprog="${CHOWNPROG-chown}" chgrpprog="${CHGRPPROG-chgrp}" stripprog="${STRIPPROG-strip}" rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" chmodcmd="$chmodprog 0755" chowncmd= chgrpcmd= stripcmd= rmcmd="$rmprog -f" mvcmd="$mvprog" src= dst= dir_arg= dstarg= no_target_directory= usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: -c (ignored) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. --help display this help and exit. --version display version info and exit. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test -n "$1"; do case $1 in -c) shift continue;; -d) dir_arg=true shift continue;; -g) chgrpcmd="$chgrpprog $2" shift shift continue;; --help) echo "$usage"; exit $?;; -m) chmodcmd="$chmodprog $2" shift shift continue;; -o) chowncmd="$chownprog $2" shift shift continue;; -s) stripcmd=$stripprog shift continue;; -t) dstarg=$2 shift shift continue;; -T) no_target_directory=true shift continue;; --version) echo "$0 $scriptversion"; exit $?;; *) # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. test -n "$dir_arg$dstarg" && break # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dstarg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dstarg" shift # fnord fi shift # arg dstarg=$arg done break;; esac done if test -z "$1"; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi for src do # Protect names starting with `-'. case $src in -*) src=./$src ;; esac if test -n "$dir_arg"; then dst=$src src= if test -d "$dst"; then mkdircmd=: chmodcmd= else mkdircmd=$mkdirprog fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dstarg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dstarg # Protect names starting with `-'. case $dst in -*) dst=./$dst ;; esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dstarg: Is a directory" >&2 exit 1 fi dst=$dst/`basename "$src"` fi fi # This sed command emulates the dirname command. dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` # Make sure that the destination directory exists. # Skip lots of stat calls in the usual case. if test ! -d "$dstdir"; then defaultIFS=' ' IFS="${IFS-$defaultIFS}" oIFS=$IFS # Some sh's can't handle IFS=/ for some reason. IFS='%' set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` shift IFS=$oIFS pathcomp= while test $# -ne 0 ; do pathcomp=$pathcomp$1 shift if test ! -d "$pathcomp"; then $mkdirprog "$pathcomp" # mkdir can fail with a `File exist' error in case several # install-sh are creating the directory concurrently. This # is OK. test -d "$pathcomp" || exit fi pathcomp=$pathcomp/ done fi if test -n "$dir_arg"; then $doit $mkdircmd "$dst" \ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } else dstfile=`basename "$dst"` # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 trap '(exit $?); exit' 1 2 13 15 # Copy the file name to the temp name. $doit $cpprog "$src" "$dsttmp" && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && # Now rename the file to the real destination. { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ || { # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { if test -f "$dstdir/$dstfile"; then $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ || { echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 (exit 1); exit 1 } else : fi } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" } } fi || { (exit 1); exit 1; } done # The final little trick to "correctly" pass the exit status to the exit trap. { (exit 0); exit 0 } # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: ./bin/MAPPINGS/0000755000175000017500000000000011326523651013027 5ustar henrichhenrich./bin/gb18030.pl0000755000175000017500000000712107532460062013136 0ustar henrichhenrich#!/usr/bin/perl # parsegba.pl - parse gba input, write mys output # GNU (C) Gaspar Sinai # Tokyo 2002-03-26 print < Tokyo 2002-03-26 COMM= COMM=Here is the algorithm to get GB 18030 codes from this COMM=garbage: COMM=If input unicode characters is less than 0x80 emit that code as single byte COMM=Search for closest lowest key that matches the unicode character: COMM= COMM=1) BMP COMM= 1a If value is greater than 0xffff output will be two bytes: COMM= value + (unicode_vle - closest_key) COMM= As always higher byte is emitted first. COMM= 1b If value is less than 0x8000 output will be four bytes: COMM= num = linear(value) + (unicode_vle - closest_key); COMM= num = nonlinear(num); COMM= COMM= function nonlinear (num) COMM= k3 = (num % 10)+0x30; num = num / 10; COMM= k2 = (num % 126)+0x81; num = num / 126; COMM= k1 = (num % 10)+0x30; num = num / 10; COMM= k0 = (num % 126)+0x81; COMM= return ((k0 << 24) + (k1 << 16) + (k2<<8) + k3); COMM= COMM= function linear(value): COMM= k0 = (value >> 24) & 0xff; // 0x81..0xfe COMM= k1 = (value >> 16) & 0xff; // 0x30..0x39 COMM= k2 = (value >> 8) & 0xff; // 0x81..0xfe COMM= k3 = (value >> 0) & 0xff; // 0x30..0x39 COMM= num = (k0-0x81); num = num * 10; COMM= num += (k1-0x30); num = num * 126; COMM= num += (k2-0x81); num = num * 10; COMM= num += (k3-0x30); COMM= return (num); COMM= COMM=2) NON-BMP (unicode_value between 0x10000..0x10FFFF) COMM= num = unicode_value - 0x10000 + 0x2E248; COMM= nonlinear (num); COMM= - 0x10000 should producce 0x90308130 COMM= - 0x10FFFF should be 0xE3329A35 #------------------------------------------------------ TYPE=0 SECTION=encode ENCODE=1 # # key 1 for 16 bit (16-bitunicode) # value 2 for 32 bit (4-byte-gb) values # KEY_WIDTH=1 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # EOD $lastvle = 0; while (<>) { chomp; next unless (/^([0-9A-F]{4})\s+([0-9A-F]{1,8})/); $key = hex ($1); $vle = hex ($2); if ($key == 0) { printf ("%04X -> %08X\n", $key, $vle); next; } elsif ($vle==0) { next; } elsif ($key < 0x80) { next; } elsif ($vle > 0xffff) { $lastvle = &incGB($lastvle); if ($vle != $lastvle) { printf ("%04X -> %08X\n", $key, $vle); } $lastvle = $vle; } elsif ($vle != ++$lastvle) { printf ("%04X -> %08X\n", $key, $vle); $lastvle = $vle; } } printf ("%04X -> %08X\n", 0xFFFF, 0x8431A439); # Can not fit - can be checked #printf ("%04X -> %08X\n", 0x10000, 0x90308130); #printf ("%04X -> %08X\n", 0x10FFFF, 0xE3329A35); exit (0); # # increment a GB code # sub incGB { my $n = &fromGB($_[0]); $n++; return (&toGB($n)); } # # Convert linear code to GB # sub toGB { my $k3 = ($_[0] % 10)+0x30; $_[0] = $_[0] / 10; my $k2 = ($_[0] % 126)+0x81; $_[0] = $_[0] / 126; my $k1 = ($_[0] % 10)+0x30; $_[0] = $_[0] / 10; my $k0 = ($_[0] % 126)+0x81; return (($k0 << 24) + ($k1 << 16) + ($k2<<8) + $k3); } # # Convert GB to linear code # sub fromGB { my $k0 = ($_[0] >> 24) & 0xff; my $k1 = ($_[0] >> 16) & 0xff; my $k2 = ($_[0] >> 8) & 0xff; my $k3 = ($_[0] >> 0) & 0xff; my $num; $num = ($k0-0x81); $num = $num * 10; $num += ($k1-0x30); $num = $num * 126; $num += ($k2-0x81); $num = $num * 10; $num += ($k3-0x30); return ($num); } ./bin/bidiclass.pl0000755000175000017500000000774611326525627014131 0ustar henrichhenrich#!/usr/bin/perl # Yudit Unicode Editor Source File # # Copyright (C) 2000 Gaspar Sinai # # This program 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 of the License, or # (at your option) any later version. # # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # This script makes a compressed precompose map. # Compressed means: for a range only the first one will be # encoded. # In order to run the script you need to get # ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt # as and input. # encode composing chars -> precomposed char # decode precomposed char -> composing chars %BiDiCategory = ( "XX", 0x00, # Unknown "L", 0x01, # Left-to-Right "LRE", 0x02, # Left-to-Right Embedding "LRO", 0x03, # Left-to-Right Override "R", 0x04, # Right-to-Left "AL", 0x05, # Right-to-Left Arabic "RLE", 0x06, # Right-to-Left Embedding "RLO", 0x07, # Right-to-Left Override # # /* weak */ "PDF", 0x08, # Pop Directional Format "EN", 0x09, # European Number "ES", 0x0A, # European Number Separator "ET", 0x0B, # European Number Terminator "AN", 0x0C, # Arabic Number "CS", 0x0D, # Common Number Separator "NSM", 0x0E, # Non-Spacing Mark "BN", 0x0F, # Boundary Neutral # # /* neutral */ "B", 0x10, # Paragraph Separator "S", 0x11, # Segment Separator "WS", 0x12, # Whitespace "ON", 0x13 # Other Neutrals ); @encodes = (); @decodes = (); @full_date = localtime(time); $year = $full_date[5] + 1900; $mon = $full_date[4] + 1; $mday = $full_date[3]; $date = sprintf ("%4d-%02d-%02d", $year, $mon, $mday); $name="precompose.my"; die "No version specified." if ($#ARGV == -1); $VERSION=shift; print <) { next if (split (';')) < 6; $plain = hex $_[0]; $general = $_[4]; if (!defined ($BiDiCategory {$general})) { $general = 0; } else { $general = $BiDiCategory {$general}; } if ($last+1 == $plain && $lastvle == $general) { $last++; next; } # hole # Ranges out of hole if ($last+1 < $plain && $_[1]!~/Last>/) { printf ("%08X -> %02X$/", $last+1, 0); } printf ("%08X -> %02X$/", $plain, $general); $last = $plain; $lastvle = $general; } printf ("%08X -> %02X$/", $last+1, 0); print "$/#END$/"; ./bin/angles.pl0000755000175000017500000001514507532460062013430 0ustar henrichhenrich#!/usr/bin/perl ## angles.pl - PERL5 script to determine table for angle32 ## JStroke 1.x - Japanese Kanji handwriting recognition technology demo. ## Copyright (C) 1997 Robert E. Wells ## http://wellscs.com/pilot ## mailto:robert@wellscs.com ## ## This program 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 ## of the License, or (at your option) any later version. ## ## This program 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 this program (gpl.html); if not, write to the Free Software ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ## ## Derived from prior work by Todd David Rudick on JavaDict and StrokeDic. ## Makes use of KANJIDIC data from Jim Breen of Monash University. ## Further credit details available at http://wellscs.com/pilot ## See readme.txt, changelo, and gpl.html for more information. ## ## Commentary: ## ## To run this perl script you need to acquire the following free software: ## ## 1. A PERL executable. See http://www.perl.com for information on ## downloading a copy of perl for your computer. ## ## You run it with a command line like this: ## ## perl angles.pl >angles.txt ## ## It generates a lot of printout in angles.txt, testing the table driven ## angle32 code against the PERL5 floating point trig library functions. ## ## This code was used to generate various "magic" angle and score values ## for use in JStroke 1.x. ## ## -rwells, 19970901. ## --------------------------------------------------------------------------- my $pi = atan2(1,1)*4; # See perl5 manual p146. # ----- test_ang32 ----------------------------------------------------------- sub test_ang32 { my ($ix, $iy) = @_; my $islope = !(-0.1<$iy&&$iy<0.1) ? int((100 * $ix) / $iy) : 'inf'; $i32th = ang32($ix, $iy); $check = int(((atan2($ix, $iy)+$pi*2) / ($pi*2)) * 32 + 0.5) % 32; printf("%2dX %2dY => %2d %2d, islope=%3s\n", $ix, $iy, $i32th, $check, $islope); } # ----- ang32 ---------------------------------------------------------------- # For given int $xdif and $ydif, calculate atan2 (the angle from origin) # in 32th's of a circle from 0 to 32, rather than radians. Note that it # returns 32 iff $xdif and $ydif are both zero, an ill-defined case. # Origin and direction are clockwise: # 0 => 12:00, 16 => 3:00, 32 => 6:00, 48 => 9:00. sub ang32 { my ($xdif, $ydif) = @_; my ($xneg, $yneg, $xyflip) = (0,0,0); my $xtmp; if ($xdif < -0.1) { $xdif = -$xdif; $xneg = 1; } if ($ydif < -0.1) { $ydif = -$ydif; $yneg = 1; } if (int($ydif) < int($xdif)) { $xtmp = $xdif; $xdif = $ydif; $ydif = $xtmp; $xyflip = 1; } if (-0.1 < $xdif && $xdif < 0.1) { if (-0.1 < $ydif && $ydif < 0.1) { return 32; } else { $i32th = 0; } } else { # The 4 comparison values were generated with the accompanying # perl script, then open coded here for speed and reasonable # space efficiency. The comparison operations (< or <=) were # chosen to make the results match those of atan2 in rounded double # precision floating point. -rwells, 970713. $islope = int ((100 * $xdif) / $ydif); if ($islope < 54) { #test #2, first test. if ($islope < 10) { #test #0, second test. $i32th = 0; } # got #0 after 2 tests. elsif ($islope < 31) { #test #1, third test. $i32th = 1; } # got #1 after 3 tests. else { $i32th = 2; } # got #2 after 3 tests. } elsif ($islope < 83) { #test #3, second test. $i32th = 3; } # got #3 after 2 tests. else { $i32th = 4; } # got #4 after 2 tests. } $i32th = ( 8 - $i32th) if ($xyflip); $i32th = (16 - $i32th) if ($yneg); $i32th = (32 - $i32th) if ($xneg); return $i32th % 32; } # ----- main ---------------------------------------------------------------- my $weight = 100; # To preserve precision in slope. my $angScale = 1000; my $sCost = int((($pi/60.0)*$angScale)+0.5); # Consider 0 = 3 O'Clock, 16 = 1:30 O'Clock, counter-clockwise. # In radians, 0 => 0 radians, 16 => $pi/4 radians. my $dRadMax = $pi/4; my $dRadConv = $dRadMax/(32/4); my $sCostConv = int(($dRadConv * $angScale) + 0.5); print "dRadMax=$dRadMax dRadConv=$dRadConv sCost=$sCost sCostConv=$sCostConv\n"; my ($i64th, $dRad, $dCos, $dSin, $dTan, $iCentered, $retcost); my $top64th = int(64/8); for ($i64th = 1; $i64th <= $top64th; $i64th++) { $dRad = $i64th * $dRadConv; $dDegrees = ($dRad / $pi) * 180.0; $dCos = cos($dRad); $dSin = sin($dRad); $dTan = $dSin / $dCos; $iCentered = int(($dTan * $weight) + 0.5); $retcost = int(($dRad * $angScale) + 0.5) + $sCost; $mycost = $i64th * $sCostConv + $sCost; $minCentered = $iCentered if ($i64th == 1); $maxCentered = $iCentered if ($i64th == $top64th); printf("%2d: i64th=%2d rads=%4.2f deg=%2.0f dTan=%4.2f icen=%8d cost=%3d mycost=%3d\n", int($i64th/2),$i64th, $dRad, $dDegrees, $dTan, $iCentered, $retcost, $mycost) if ($i64th % 2) == 1 || $i64th == $top64th; } $ratioCentered = $maxCentered / $minCentered; print "Centered ratio = $ratioCentered\n"; print "\nCIRCLE THE CLOCK\n"; test_ang32(0, 1); test_ang32(1, 1); test_ang32(1, 0); test_ang32(1, -1); test_ang32(0, -1); test_ang32(-1, -1); test_ang32(-1, 0); test_ang32(-1, 1); test_ang32(0, 1); print "\nDO THE HUNDRED at 12:00\n"; $iy = 100; for ($ix = 0; $ix <= 100; $ix++) { test_ang32($ix, $iy); } print "\nDO THE FIFTY at 01:30\n"; $ix = 50; for ($iy = 50; $iy >= 0; $iy--) { test_ang32($ix, $iy); } print "\nDO THE FIFTY at 03:00\n"; $ix = 50; for ($iy = 0; $iy >= -50; $iy--) { test_ang32($ix, $iy); } print "\nDO THE FIFTY at 04:30\n"; $iy = -50; for ($ix = 50; $ix >= 0; $ix--) { test_ang32($ix, $iy); } print "\nDO THE FIFTY at 06:00\n"; $iy = -50; for ($ix = 0; $ix >= -50; $ix--) { test_ang32($ix, $iy); } print "\nDO THE FIFTY at 07:30\n"; $ix = -50; for ($iy = -50; $iy <= 0; $iy++) { test_ang32($ix, $iy); } print "\nDO THE FIFTY at 09:00\n"; $ix = -50; for ($iy = 0; $iy <= 50; $iy++) { test_ang32($ix, $iy); } print "\nDO THE FIFTY at 10:30\n"; $iy = 50; for ($ix = -50; $ix <= 0; $ix++) { test_ang32($ix, $iy); } print "\nGOING NOWHERE\n"; test_ang32(int(0), int(0)); ./bin/SColorDefs.h0000644000175000017500000010613710434025606013771 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ typef struct SS_RGBStruct { char* name; * GNU Copyright (C) 2003 Gaspar Sinai double r; double g; double b; }; SS_RGBStruct rgb_colors[] = { snow, (double) 255, (double) 250, (double) 250, GhostWhite, (double) 248, (double) 248, (double) 255, WhiteSmoke, (double) 245, (double) 245, (double) 245, gainsboro, (double) 220, (double) 220, (double) 220, FloralWhite, (double) 255, (double) 250, (double) 240, OldLace, (double) 253, (double) 245, (double) 230, linen, (double) 250, (double) 240, (double) 230, AntiqueWhite, (double) 250, (double) 235, (double) 215, PapayaWhip, (double) 255, (double) 239, (double) 213, BlanchedAlmond, (double) 255, (double) 235, (double) 205, bisque, (double) 255, (double) 228, (double) 196, PeachPuff, (double) 255, (double) 218, (double) 185, NavajoWhite, (double) 255, (double) 222, (double) 173, moccasin, (double) 255, (double) 228, (double) 181, cornsilk, (double) 255, (double) 248, (double) 220, ivory, (double) 255, (double) 255, (double) 240, LemonChiffon, (double) 255, (double) 250, (double) 205, seashell, (double) 255, (double) 245, (double) 238, honeydew, (double) 240, (double) 255, (double) 240, MintCream, (double) 245, (double) 255, (double) 250, azure, (double) 240, (double) 255, (double) 255, AliceBlue, (double) 240, (double) 248, (double) 255, lavender, (double) 230, (double) 230, (double) 250, LavenderBlush, (double) 255, (double) 240, (double) 245, MistyRose, (double) 255, (double) 228, (double) 225, white, (double) 255, (double) 255, (double) 255, black, (double) 0, (double) 0, (double) 0, DarkSlateGray, (double) 47, (double) 79, (double) 79, DarkSlateGrey, (double) 47, (double) 79, (double) 79, DimGray, (double) 105, (double) 105, (double) 105, DimGrey, (double) 105, (double) 105, (double) 105, SlateGray, (double) 112, (double) 128, (double) 144, SlateGrey, (double) 112, (double) 128, (double) 144, LightSlateGray, (double) 119, (double) 136, (double) 153, LightSlateGrey, (double) 119, (double) 136, (double) 153, gray, (double) 190, (double) 190, (double) 190, grey, (double) 190, (double) 190, (double) 190, LightGrey, (double) 211, (double) 211, (double) 211, LightGray, (double) 211, (double) 211, (double) 211, MidnightBlue, (double) 25, (double) 25, (double) 112, navy, (double) 0, (double) 0, (double) 128, NavyBlue, (double) 0, (double) 0, (double) 128, CornflowerBlue, (double) 100, (double) 149, (double) 237, DarkSlateBlue, (double) 72, (double) 61, (double) 139, SlateBlue, (double) 106, (double) 90, (double) 205, MediumSlateBlue, (double) 123, (double) 104, (double) 238, LightSlateBlue, (double) 132, (double) 112, (double) 255, MediumBlue, (double) 0, (double) 0, (double) 205, RoyalBlue, (double) 65, (double) 105, (double) 225, blue, (double) 0, (double) 0, (double) 255, DodgerBlue, (double) 30, (double) 144, (double) 255, DeepSkyBlue, (double) 0, (double) 191, (double) 255, SkyBlue, (double) 135, (double) 206, (double) 235, LightSkyBlue, (double) 135, (double) 206, (double) 250, SteelBlue, (double) 70, (double) 130, (double) 180, LightSteelBlue, (double) 176, (double) 196, (double) 222, LightBlue, (double) 173, (double) 216, (double) 230, PowderBlue, (double) 176, (double) 224, (double) 230, PaleTurquoise, (double) 175, (double) 238, (double) 238, DarkTurquoise, (double) 0, (double) 206, (double) 209, MediumTurquoise, (double) 72, (double) 209, (double) 204, turquoise, (double) 64, (double) 224, (double) 208, cyan, (double) 0, (double) 255, (double) 255, LightCyan, (double) 224, (double) 255, (double) 255, CadetBlue, (double) 95, (double) 158, (double) 160, MediumAquamarine, (double) 102, (double) 205, (double) 170, aquamarine, (double) 127, (double) 255, (double) 212, DarkGreen, (double) 0, (double) 100, (double) 0, DarkOliveGreen, (double) 85, (double) 107, (double) 47, DarkSeaGreen, (double) 143, (double) 188, (double) 143, SeaGreen, (double) 46, (double) 139, (double) 87, MediumSeaGreen, (double) 60, (double) 179, (double) 113, LightSeaGreen, (double) 32, (double) 178, (double) 170, PaleGreen, (double) 152, (double) 251, (double) 152, SpringGreen, (double) 0, (double) 255, (double) 127, LawnGreen, (double) 124, (double) 252, (double) 0, green, (double) 0, (double) 255, (double) 0, chartreuse, (double) 127, (double) 255, (double) 0, MediumSpringGreen, (double) 0, (double) 250, (double) 154, GreenYellow, (double) 173, (double) 255, (double) 47, LimeGreen, (double) 50, (double) 205, (double) 50, YellowGreen, (double) 154, (double) 205, (double) 50, ForestGreen, (double) 34, (double) 139, (double) 34, OliveDrab, (double) 107, (double) 142, (double) 35, DarkKhaki, (double) 189, (double) 183, (double) 107, khaki, (double) 240, (double) 230, (double) 140, PaleGoldenrod, (double) 238, (double) 232, (double) 170, LightGoldenrodYellow, (double) 250, (double) 250, (double) 210, LightYellow, (double) 255, (double) 255, (double) 224, yellow, (double) 255, (double) 255, (double) 0, gold, (double) 255, (double) 215, (double) 0, LightGoldenrod, (double) 238, (double) 221, (double) 130, goldenrod, (double) 218, (double) 165, (double) 32, DarkGoldenrod, (double) 184, (double) 134, (double) 11, RosyBrown, (double) 188, (double) 143, (double) 143, IndianRed, (double) 205, (double) 92, (double) 92, SaddleBrown, (double) 139, (double) 69, (double) 19, sienna, (double) 160, (double) 82, (double) 45, peru, (double) 205, (double) 133, (double) 63, burlywood, (double) 222, (double) 184, (double) 135, beige, (double) 245, (double) 245, (double) 220, wheat, (double) 245, (double) 222, (double) 179, SandyBrown, (double) 244, (double) 164, (double) 96, tan, (double) 210, (double) 180, (double) 140, chocolate, (double) 210, (double) 105, (double) 30, firebrick, (double) 178, (double) 34, (double) 34, brown, (double) 165, (double) 42, (double) 42, DarkSalmon, (double) 233, (double) 150, (double) 122, salmon, (double) 250, (double) 128, (double) 114, LightSalmon, (double) 255, (double) 160, (double) 122, orange, (double) 255, (double) 165, (double) 0, DarkOrange, (double) 255, (double) 140, (double) 0, coral, (double) 255, (double) 127, (double) 80, LightCoral, (double) 240, (double) 128, (double) 128, tomato, (double) 255, (double) 99, (double) 71, OrangeRed, (double) 255, (double) 69, (double) 0, red, (double) 255, (double) 0, (double) 0, HotPink, (double) 255, (double) 105, (double) 180, DeepPink, (double) 255, (double) 20, (double) 147, pink, (double) 255, (double) 192, (double) 203, LightPink, (double) 255, (double) 182, (double) 193, PaleVioletRed, (double) 219, (double) 112, (double) 147, maroon, (double) 176, (double) 48, (double) 96, MediumVioletRed, (double) 199, (double) 21, (double) 133, VioletRed, (double) 208, (double) 32, (double) 144, magenta, (double) 255, (double) 0, (double) 255, violet, (double) 238, (double) 130, (double) 238, plum, (double) 221, (double) 160, (double) 221, orchid, (double) 218, (double) 112, (double) 214, MediumOrchid, (double) 186, (double) 85, (double) 211, DarkOrchid, (double) 153, (double) 50, (double) 204, DarkViolet, (double) 148, (double) 0, (double) 211, BlueViolet, (double) 138, (double) 43, (double) 226, purple, (double) 160, (double) 32, (double) 240, MediumPurple, (double) 147, (double) 112, (double) 219, thistle, (double) 216, (double) 191, (double) 216, snow1, (double) 255, (double) 250, (double) 250, snow2, (double) 238, (double) 233, (double) 233, snow3, (double) 205, (double) 201, (double) 201, snow4, (double) 139, (double) 137, (double) 137, seashell1, (double) 255, (double) 245, (double) 238, seashell2, (double) 238, (double) 229, (double) 222, seashell3, (double) 205, (double) 197, (double) 191, seashell4, (double) 139, (double) 134, (double) 130, AntiqueWhite1, (double) 255, (double) 239, (double) 219, AntiqueWhite2, (double) 238, (double) 223, (double) 204, AntiqueWhite3, (double) 205, (double) 192, (double) 176, AntiqueWhite4, (double) 139, (double) 131, (double) 120, bisque1, (double) 255, (double) 228, (double) 196, bisque2, (double) 238, (double) 213, (double) 183, bisque3, (double) 205, (double) 183, (double) 158, bisque4, (double) 139, (double) 125, (double) 107, PeachPuff1, (double) 255, (double) 218, (double) 185, PeachPuff2, (double) 238, (double) 203, (double) 173, PeachPuff3, (double) 205, (double) 175, (double) 149, PeachPuff4, (double) 139, (double) 119, (double) 101, NavajoWhite1, (double) 255, (double) 222, (double) 173, NavajoWhite2, (double) 238, (double) 207, (double) 161, NavajoWhite3, (double) 205, (double) 179, (double) 139, NavajoWhite4, (double) 139, (double) 121, (double) 94, LemonChiffon1, (double) 255, (double) 250, (double) 205, LemonChiffon2, (double) 238, (double) 233, (double) 191, LemonChiffon3, (double) 205, (double) 201, (double) 165, LemonChiffon4, (double) 139, (double) 137, (double) 112, cornsilk1, (double) 255, (double) 248, (double) 220, cornsilk2, (double) 238, (double) 232, (double) 205, cornsilk3, (double) 205, (double) 200, (double) 177, cornsilk4, (double) 139, (double) 136, (double) 120, ivory1, (double) 255, (double) 255, (double) 240, ivory2, (double) 238, (double) 238, (double) 224, ivory3, (double) 205, (double) 205, (double) 193, ivory4, (double) 139, (double) 139, (double) 131, honeydew1, (double) 240, (double) 255, (double) 240, honeydew2, (double) 224, (double) 238, (double) 224, honeydew3, (double) 193, (double) 205, (double) 193, honeydew4, (double) 131, (double) 139, (double) 131, LavenderBlush1, (double) 255, (double) 240, (double) 245, LavenderBlush2, (double) 238, (double) 224, (double) 229, LavenderBlush3, (double) 205, (double) 193, (double) 197, LavenderBlush4, (double) 139, (double) 131, (double) 134, MistyRose1, (double) 255, (double) 228, (double) 225, MistyRose2, (double) 238, (double) 213, (double) 210, MistyRose3, (double) 205, (double) 183, (double) 181, MistyRose4, (double) 139, (double) 125, (double) 123, azure1, (double) 240, (double) 255, (double) 255, azure2, (double) 224, (double) 238, (double) 238, azure3, (double) 193, (double) 205, (double) 205, azure4, (double) 131, (double) 139, (double) 139, SlateBlue1, (double) 131, (double) 111, (double) 255, SlateBlue2, (double) 122, (double) 103, (double) 238, SlateBlue3, (double) 105, (double) 89, (double) 205, SlateBlue4, (double) 71, (double) 60, (double) 139, RoyalBlue1, (double) 72, (double) 118, (double) 255, RoyalBlue2, (double) 67, (double) 110, (double) 238, RoyalBlue3, (double) 58, (double) 95, (double) 205, RoyalBlue4, (double) 39, (double) 64, (double) 139, blue1, (double) 0, (double) 0, (double) 255, blue2, (double) 0, (double) 0, (double) 238, blue3, (double) 0, (double) 0, (double) 205, blue4, (double) 0, (double) 0, (double) 139, DodgerBlue1, (double) 30, (double) 144, (double) 255, DodgerBlue2, (double) 28, (double) 134, (double) 238, DodgerBlue3, (double) 24, (double) 116, (double) 205, DodgerBlue4, (double) 16, (double) 78, (double) 139, SteelBlue1, (double) 99, (double) 184, (double) 255, SteelBlue2, (double) 92, (double) 172, (double) 238, SteelBlue3, (double) 79, (double) 148, (double) 205, SteelBlue4, (double) 54, (double) 100, (double) 139, DeepSkyBlue1, (double) 0, (double) 191, (double) 255, DeepSkyBlue2, (double) 0, (double) 178, (double) 238, DeepSkyBlue3, (double) 0, (double) 154, (double) 205, DeepSkyBlue4, (double) 0, (double) 104, (double) 139, SkyBlue1, (double) 135, (double) 206, (double) 255, SkyBlue2, (double) 126, (double) 192, (double) 238, SkyBlue3, (double) 108, (double) 166, (double) 205, SkyBlue4, (double) 74, (double) 112, (double) 139, LightSkyBlue1, (double) 176, (double) 226, (double) 255, LightSkyBlue2, (double) 164, (double) 211, (double) 238, LightSkyBlue3, (double) 141, (double) 182, (double) 205, LightSkyBlue4, (double) 96, (double) 123, (double) 139, SlateGray1, (double) 198, (double) 226, (double) 255, SlateGray2, (double) 185, (double) 211, (double) 238, SlateGray3, (double) 159, (double) 182, (double) 205, SlateGray4, (double) 108, (double) 123, (double) 139, LightSteelBlue1, (double) 202, (double) 225, (double) 255, LightSteelBlue2, (double) 188, (double) 210, (double) 238, LightSteelBlue3, (double) 162, (double) 181, (double) 205, LightSteelBlue4, (double) 110, (double) 123, (double) 139, LightBlue1, (double) 191, (double) 239, (double) 255, LightBlue2, (double) 178, (double) 223, (double) 238, LightBlue3, (double) 154, (double) 192, (double) 205, LightBlue4, (double) 104, (double) 131, (double) 139, LightCyan1, (double) 224, (double) 255, (double) 255, LightCyan2, (double) 209, (double) 238, (double) 238, LightCyan3, (double) 180, (double) 205, (double) 205, LightCyan4, (double) 122, (double) 139, (double) 139, PaleTurquoise1, (double) 187, (double) 255, (double) 255, PaleTurquoise2, (double) 174, (double) 238, (double) 238, PaleTurquoise3, (double) 150, (double) 205, (double) 205, PaleTurquoise4, (double) 102, (double) 139, (double) 139, CadetBlue1, (double) 152, (double) 245, (double) 255, CadetBlue2, (double) 142, (double) 229, (double) 238, CadetBlue3, (double) 122, (double) 197, (double) 205, CadetBlue4, (double) 83, (double) 134, (double) 139, turquoise1, (double) 0, (double) 245, (double) 255, turquoise2, (double) 0, (double) 229, (double) 238, turquoise3, (double) 0, (double) 197, (double) 205, turquoise4, (double) 0, (double) 134, (double) 139, cyan1, (double) 0, (double) 255, (double) 255, cyan2, (double) 0, (double) 238, (double) 238, cyan3, (double) 0, (double) 205, (double) 205, cyan4, (double) 0, (double) 139, (double) 139, DarkSlateGray1, (double) 151, (double) 255, (double) 255, DarkSlateGray2, (double) 141, (double) 238, (double) 238, DarkSlateGray3, (double) 121, (double) 205, (double) 205, DarkSlateGray4, (double) 82, (double) 139, (double) 139, aquamarine1, (double) 127, (double) 255, (double) 212, aquamarine2, (double) 118, (double) 238, (double) 198, aquamarine3, (double) 102, (double) 205, (double) 170, aquamarine4, (double) 69, (double) 139, (double) 116, DarkSeaGreen1, (double) 193, (double) 255, (double) 193, DarkSeaGreen2, (double) 180, (double) 238, (double) 180, DarkSeaGreen3, (double) 155, (double) 205, (double) 155, DarkSeaGreen4, (double) 105, (double) 139, (double) 105, SeaGreen1, (double) 84, (double) 255, (double) 159, SeaGreen2, (double) 78, (double) 238, (double) 148, SeaGreen3, (double) 67, (double) 205, (double) 128, SeaGreen4, (double) 46, (double) 139, (double) 87, PaleGreen1, (double) 154, (double) 255, (double) 154, PaleGreen2, (double) 144, (double) 238, (double) 144, PaleGreen3, (double) 124, (double) 205, (double) 124, PaleGreen4, (double) 84, (double) 139, (double) 84, SpringGreen1, (double) 0, (double) 255, (double) 127, SpringGreen2, (double) 0, (double) 238, (double) 118, SpringGreen3, (double) 0, (double) 205, (double) 102, SpringGreen4, (double) 0, (double) 139, (double) 69, green1, (double) 0, (double) 255, (double) 0, green2, (double) 0, (double) 238, (double) 0, green3, (double) 0, (double) 205, (double) 0, green4, (double) 0, (double) 139, (double) 0, chartreuse1, (double) 127, (double) 255, (double) 0, chartreuse2, (double) 118, (double) 238, (double) 0, chartreuse3, (double) 102, (double) 205, (double) 0, chartreuse4, (double) 69, (double) 139, (double) 0, OliveDrab1, (double) 192, (double) 255, (double) 62, OliveDrab2, (double) 179, (double) 238, (double) 58, OliveDrab3, (double) 154, (double) 205, (double) 50, OliveDrab4, (double) 105, (double) 139, (double) 34, DarkOliveGreen1, (double) 202, (double) 255, (double) 112, DarkOliveGreen2, (double) 188, (double) 238, (double) 104, DarkOliveGreen3, (double) 162, (double) 205, (double) 90, DarkOliveGreen4, (double) 110, (double) 139, (double) 61, khaki1, (double) 255, (double) 246, (double) 143, khaki2, (double) 238, (double) 230, (double) 133, khaki3, (double) 205, (double) 198, (double) 115, khaki4, (double) 139, (double) 134, (double) 78, LightGoldenrod1, (double) 255, (double) 236, (double) 139, LightGoldenrod2, (double) 238, (double) 220, (double) 130, LightGoldenrod3, (double) 205, (double) 190, (double) 112, LightGoldenrod4, (double) 139, (double) 129, (double) 76, LightYellow1, (double) 255, (double) 255, (double) 224, LightYellow2, (double) 238, (double) 238, (double) 209, LightYellow3, (double) 205, (double) 205, (double) 180, LightYellow4, (double) 139, (double) 139, (double) 122, yellow1, (double) 255, (double) 255, (double) 0, yellow2, (double) 238, (double) 238, (double) 0, yellow3, (double) 205, (double) 205, (double) 0, yellow4, (double) 139, (double) 139, (double) 0, gold1, (double) 255, (double) 215, (double) 0, gold2, (double) 238, (double) 201, (double) 0, gold3, (double) 205, (double) 173, (double) 0, gold4, (double) 139, (double) 117, (double) 0, goldenrod1, (double) 255, (double) 193, (double) 37, goldenrod2, (double) 238, (double) 180, (double) 34, goldenrod3, (double) 205, (double) 155, (double) 29, goldenrod4, (double) 139, (double) 105, (double) 20, DarkGoldenrod1, (double) 255, (double) 185, (double) 15, DarkGoldenrod2, (double) 238, (double) 173, (double) 14, DarkGoldenrod3, (double) 205, (double) 149, (double) 12, DarkGoldenrod4, (double) 139, (double) 101, (double) 8, RosyBrown1, (double) 255, (double) 193, (double) 193, RosyBrown2, (double) 238, (double) 180, (double) 180, RosyBrown3, (double) 205, (double) 155, (double) 155, RosyBrown4, (double) 139, (double) 105, (double) 105, IndianRed1, (double) 255, (double) 106, (double) 106, IndianRed2, (double) 238, (double) 99, (double) 99, IndianRed3, (double) 205, (double) 85, (double) 85, IndianRed4, (double) 139, (double) 58, (double) 58, sienna1, (double) 255, (double) 130, (double) 71, sienna2, (double) 238, (double) 121, (double) 66, sienna3, (double) 205, (double) 104, (double) 57, sienna4, (double) 139, (double) 71, (double) 38, burlywood1, (double) 255, (double) 211, (double) 155, burlywood2, (double) 238, (double) 197, (double) 145, burlywood3, (double) 205, (double) 170, (double) 125, burlywood4, (double) 139, (double) 115, (double) 85, wheat1, (double) 255, (double) 231, (double) 186, wheat2, (double) 238, (double) 216, (double) 174, wheat3, (double) 205, (double) 186, (double) 150, wheat4, (double) 139, (double) 126, (double) 102, tan1, (double) 255, (double) 165, (double) 79, tan2, (double) 238, (double) 154, (double) 73, tan3, (double) 205, (double) 133, (double) 63, tan4, (double) 139, (double) 90, (double) 43, chocolate1, (double) 255, (double) 127, (double) 36, chocolate2, (double) 238, (double) 118, (double) 33, chocolate3, (double) 205, (double) 102, (double) 29, chocolate4, (double) 139, (double) 69, (double) 19, firebrick1, (double) 255, (double) 48, (double) 48, firebrick2, (double) 238, (double) 44, (double) 44, firebrick3, (double) 205, (double) 38, (double) 38, firebrick4, (double) 139, (double) 26, (double) 26, brown1, (double) 255, (double) 64, (double) 64, brown2, (double) 238, (double) 59, (double) 59, brown3, (double) 205, (double) 51, (double) 51, brown4, (double) 139, (double) 35, (double) 35, salmon1, (double) 255, (double) 140, (double) 105, salmon2, (double) 238, (double) 130, (double) 98, salmon3, (double) 205, (double) 112, (double) 84, salmon4, (double) 139, (double) 76, (double) 57, LightSalmon1, (double) 255, (double) 160, (double) 122, LightSalmon2, (double) 238, (double) 149, (double) 114, LightSalmon3, (double) 205, (double) 129, (double) 98, LightSalmon4, (double) 139, (double) 87, (double) 66, orange1, (double) 255, (double) 165, (double) 0, orange2, (double) 238, (double) 154, (double) 0, orange3, (double) 205, (double) 133, (double) 0, orange4, (double) 139, (double) 90, (double) 0, DarkOrange1, (double) 255, (double) 127, (double) 0, DarkOrange2, (double) 238, (double) 118, (double) 0, DarkOrange3, (double) 205, (double) 102, (double) 0, DarkOrange4, (double) 139, (double) 69, (double) 0, coral1, (double) 255, (double) 114, (double) 86, coral2, (double) 238, (double) 106, (double) 80, coral3, (double) 205, (double) 91, (double) 69, coral4, (double) 139, (double) 62, (double) 47, tomato1, (double) 255, (double) 99, (double) 71, tomato2, (double) 238, (double) 92, (double) 66, tomato3, (double) 205, (double) 79, (double) 57, tomato4, (double) 139, (double) 54, (double) 38, OrangeRed1, (double) 255, (double) 69, (double) 0, OrangeRed2, (double) 238, (double) 64, (double) 0, OrangeRed3, (double) 205, (double) 55, (double) 0, OrangeRed4, (double) 139, (double) 37, (double) 0, red1, (double) 255, (double) 0, (double) 0, red2, (double) 238, (double) 0, (double) 0, red3, (double) 205, (double) 0, (double) 0, red4, (double) 139, (double) 0, (double) 0, DeepPink1, (double) 255, (double) 20, (double) 147, DeepPink2, (double) 238, (double) 18, (double) 137, DeepPink3, (double) 205, (double) 16, (double) 118, DeepPink4, (double) 139, (double) 10, (double) 80, HotPink1, (double) 255, (double) 110, (double) 180, HotPink2, (double) 238, (double) 106, (double) 167, HotPink3, (double) 205, (double) 96, (double) 144, HotPink4, (double) 139, (double) 58, (double) 98, pink1, (double) 255, (double) 181, (double) 197, pink2, (double) 238, (double) 169, (double) 184, pink3, (double) 205, (double) 145, (double) 158, pink4, (double) 139, (double) 99, (double) 108, LightPink1, (double) 255, (double) 174, (double) 185, LightPink2, (double) 238, (double) 162, (double) 173, LightPink3, (double) 205, (double) 140, (double) 149, LightPink4, (double) 139, (double) 95, (double) 101, PaleVioletRed1, (double) 255, (double) 130, (double) 171, PaleVioletRed2, (double) 238, (double) 121, (double) 159, PaleVioletRed3, (double) 205, (double) 104, (double) 137, PaleVioletRed4, (double) 139, (double) 71, (double) 93, maroon1, (double) 255, (double) 52, (double) 179, maroon2, (double) 238, (double) 48, (double) 167, maroon3, (double) 205, (double) 41, (double) 144, maroon4, (double) 139, (double) 28, (double) 98, VioletRed1, (double) 255, (double) 62, (double) 150, VioletRed2, (double) 238, (double) 58, (double) 140, VioletRed3, (double) 205, (double) 50, (double) 120, VioletRed4, (double) 139, (double) 34, (double) 82, magenta1, (double) 255, (double) 0, (double) 255, magenta2, (double) 238, (double) 0, (double) 238, magenta3, (double) 205, (double) 0, (double) 205, magenta4, (double) 139, (double) 0, (double) 139, orchid1, (double) 255, (double) 131, (double) 250, orchid2, (double) 238, (double) 122, (double) 233, orchid3, (double) 205, (double) 105, (double) 201, orchid4, (double) 139, (double) 71, (double) 137, plum1, (double) 255, (double) 187, (double) 255, plum2, (double) 238, (double) 174, (double) 238, plum3, (double) 205, (double) 150, (double) 205, plum4, (double) 139, (double) 102, (double) 139, MediumOrchid1, (double) 224, (double) 102, (double) 255, MediumOrchid2, (double) 209, (double) 95, (double) 238, MediumOrchid3, (double) 180, (double) 82, (double) 205, MediumOrchid4, (double) 122, (double) 55, (double) 139, DarkOrchid1, (double) 191, (double) 62, (double) 255, DarkOrchid2, (double) 178, (double) 58, (double) 238, DarkOrchid3, (double) 154, (double) 50, (double) 205, DarkOrchid4, (double) 104, (double) 34, (double) 139, purple1, (double) 155, (double) 48, (double) 255, purple2, (double) 145, (double) 44, (double) 238, purple3, (double) 125, (double) 38, (double) 205, purple4, (double) 85, (double) 26, (double) 139, MediumPurple1, (double) 171, (double) 130, (double) 255, MediumPurple2, (double) 159, (double) 121, (double) 238, MediumPurple3, (double) 137, (double) 104, (double) 205, MediumPurple4, (double) 93, (double) 71, (double) 139, thistle1, (double) 255, (double) 225, (double) 255, thistle2, (double) 238, (double) 210, (double) 238, thistle3, (double) 205, (double) 181, (double) 205, thistle4, (double) 139, (double) 123, (double) 139, gray0, (double) 0, (double) 0, (double) 0, grey0, (double) 0, (double) 0, (double) 0, gray1, (double) 3, (double) 3, (double) 3, grey1, (double) 3, (double) 3, (double) 3, gray2, (double) 5, (double) 5, (double) 5, grey2, (double) 5, (double) 5, (double) 5, gray3, (double) 8, (double) 8, (double) 8, grey3, (double) 8, (double) 8, (double) 8, gray4, (double) 10, (double) 10, (double) 10, grey4, (double) 10, (double) 10, (double) 10, gray5, (double) 13, (double) 13, (double) 13, grey5, (double) 13, (double) 13, (double) 13, gray6, (double) 15, (double) 15, (double) 15, grey6, (double) 15, (double) 15, (double) 15, gray7, (double) 18, (double) 18, (double) 18, grey7, (double) 18, (double) 18, (double) 18, gray8, (double) 20, (double) 20, (double) 20, grey8, (double) 20, (double) 20, (double) 20, gray9, (double) 23, (double) 23, (double) 23, grey9, (double) 23, (double) 23, (double) 23, gray10, (double) 26, (double) 26, (double) 26, grey10, (double) 26, (double) 26, (double) 26, gray11, (double) 28, (double) 28, (double) 28, grey11, (double) 28, (double) 28, (double) 28, gray12, (double) 31, (double) 31, (double) 31, grey12, (double) 31, (double) 31, (double) 31, gray13, (double) 33, (double) 33, (double) 33, grey13, (double) 33, (double) 33, (double) 33, gray14, (double) 36, (double) 36, (double) 36, grey14, (double) 36, (double) 36, (double) 36, gray15, (double) 38, (double) 38, (double) 38, grey15, (double) 38, (double) 38, (double) 38, gray16, (double) 41, (double) 41, (double) 41, grey16, (double) 41, (double) 41, (double) 41, gray17, (double) 43, (double) 43, (double) 43, grey17, (double) 43, (double) 43, (double) 43, gray18, (double) 46, (double) 46, (double) 46, grey18, (double) 46, (double) 46, (double) 46, gray19, (double) 48, (double) 48, (double) 48, grey19, (double) 48, (double) 48, (double) 48, gray20, (double) 51, (double) 51, (double) 51, grey20, (double) 51, (double) 51, (double) 51, gray21, (double) 54, (double) 54, (double) 54, grey21, (double) 54, (double) 54, (double) 54, gray22, (double) 56, (double) 56, (double) 56, grey22, (double) 56, (double) 56, (double) 56, gray23, (double) 59, (double) 59, (double) 59, grey23, (double) 59, (double) 59, (double) 59, gray24, (double) 61, (double) 61, (double) 61, grey24, (double) 61, (double) 61, (double) 61, gray25, (double) 64, (double) 64, (double) 64, grey25, (double) 64, (double) 64, (double) 64, gray26, (double) 66, (double) 66, (double) 66, grey26, (double) 66, (double) 66, (double) 66, gray27, (double) 69, (double) 69, (double) 69, grey27, (double) 69, (double) 69, (double) 69, gray28, (double) 71, (double) 71, (double) 71, grey28, (double) 71, (double) 71, (double) 71, gray29, (double) 74, (double) 74, (double) 74, grey29, (double) 74, (double) 74, (double) 74, gray30, (double) 77, (double) 77, (double) 77, grey30, (double) 77, (double) 77, (double) 77, gray31, (double) 79, (double) 79, (double) 79, grey31, (double) 79, (double) 79, (double) 79, gray32, (double) 82, (double) 82, (double) 82, grey32, (double) 82, (double) 82, (double) 82, gray33, (double) 84, (double) 84, (double) 84, grey33, (double) 84, (double) 84, (double) 84, gray34, (double) 87, (double) 87, (double) 87, grey34, (double) 87, (double) 87, (double) 87, gray35, (double) 89, (double) 89, (double) 89, grey35, (double) 89, (double) 89, (double) 89, gray36, (double) 92, (double) 92, (double) 92, grey36, (double) 92, (double) 92, (double) 92, gray37, (double) 94, (double) 94, (double) 94, grey37, (double) 94, (double) 94, (double) 94, gray38, (double) 97, (double) 97, (double) 97, grey38, (double) 97, (double) 97, (double) 97, gray39, (double) 99, (double) 99, (double) 99, grey39, (double) 99, (double) 99, (double) 99, gray40, (double) 102, (double) 102, (double) 102, grey40, (double) 102, (double) 102, (double) 102, gray41, (double) 105, (double) 105, (double) 105, grey41, (double) 105, (double) 105, (double) 105, gray42, (double) 107, (double) 107, (double) 107, grey42, (double) 107, (double) 107, (double) 107, gray43, (double) 110, (double) 110, (double) 110, grey43, (double) 110, (double) 110, (double) 110, gray44, (double) 112, (double) 112, (double) 112, grey44, (double) 112, (double) 112, (double) 112, gray45, (double) 115, (double) 115, (double) 115, grey45, (double) 115, (double) 115, (double) 115, gray46, (double) 117, (double) 117, (double) 117, grey46, (double) 117, (double) 117, (double) 117, gray47, (double) 120, (double) 120, (double) 120, grey47, (double) 120, (double) 120, (double) 120, gray48, (double) 122, (double) 122, (double) 122, grey48, (double) 122, (double) 122, (double) 122, gray49, (double) 125, (double) 125, (double) 125, grey49, (double) 125, (double) 125, (double) 125, gray50, (double) 127, (double) 127, (double) 127, grey50, (double) 127, (double) 127, (double) 127, gray51, (double) 130, (double) 130, (double) 130, grey51, (double) 130, (double) 130, (double) 130, gray52, (double) 133, (double) 133, (double) 133, grey52, (double) 133, (double) 133, (double) 133, gray53, (double) 135, (double) 135, (double) 135, grey53, (double) 135, (double) 135, (double) 135, gray54, (double) 138, (double) 138, (double) 138, grey54, (double) 138, (double) 138, (double) 138, gray55, (double) 140, (double) 140, (double) 140, grey55, (double) 140, (double) 140, (double) 140, gray56, (double) 143, (double) 143, (double) 143, grey56, (double) 143, (double) 143, (double) 143, gray57, (double) 145, (double) 145, (double) 145, grey57, (double) 145, (double) 145, (double) 145, gray58, (double) 148, (double) 148, (double) 148, grey58, (double) 148, (double) 148, (double) 148, gray59, (double) 150, (double) 150, (double) 150, grey59, (double) 150, (double) 150, (double) 150, gray60, (double) 153, (double) 153, (double) 153, grey60, (double) 153, (double) 153, (double) 153, gray61, (double) 156, (double) 156, (double) 156, grey61, (double) 156, (double) 156, (double) 156, gray62, (double) 158, (double) 158, (double) 158, grey62, (double) 158, (double) 158, (double) 158, gray63, (double) 161, (double) 161, (double) 161, grey63, (double) 161, (double) 161, (double) 161, gray64, (double) 163, (double) 163, (double) 163, grey64, (double) 163, (double) 163, (double) 163, gray65, (double) 166, (double) 166, (double) 166, grey65, (double) 166, (double) 166, (double) 166, gray66, (double) 168, (double) 168, (double) 168, grey66, (double) 168, (double) 168, (double) 168, gray67, (double) 171, (double) 171, (double) 171, grey67, (double) 171, (double) 171, (double) 171, gray68, (double) 173, (double) 173, (double) 173, grey68, (double) 173, (double) 173, (double) 173, gray69, (double) 176, (double) 176, (double) 176, grey69, (double) 176, (double) 176, (double) 176, gray70, (double) 179, (double) 179, (double) 179, grey70, (double) 179, (double) 179, (double) 179, gray71, (double) 181, (double) 181, (double) 181, grey71, (double) 181, (double) 181, (double) 181, gray72, (double) 184, (double) 184, (double) 184, grey72, (double) 184, (double) 184, (double) 184, gray73, (double) 186, (double) 186, (double) 186, grey73, (double) 186, (double) 186, (double) 186, gray74, (double) 189, (double) 189, (double) 189, grey74, (double) 189, (double) 189, (double) 189, gray75, (double) 191, (double) 191, (double) 191, grey75, (double) 191, (double) 191, (double) 191, gray76, (double) 194, (double) 194, (double) 194, grey76, (double) 194, (double) 194, (double) 194, gray77, (double) 196, (double) 196, (double) 196, grey77, (double) 196, (double) 196, (double) 196, gray78, (double) 199, (double) 199, (double) 199, grey78, (double) 199, (double) 199, (double) 199, gray79, (double) 201, (double) 201, (double) 201, grey79, (double) 201, (double) 201, (double) 201, gray80, (double) 204, (double) 204, (double) 204, grey80, (double) 204, (double) 204, (double) 204, gray81, (double) 207, (double) 207, (double) 207, grey81, (double) 207, (double) 207, (double) 207, gray82, (double) 209, (double) 209, (double) 209, grey82, (double) 209, (double) 209, (double) 209, gray83, (double) 212, (double) 212, (double) 212, grey83, (double) 212, (double) 212, (double) 212, gray84, (double) 214, (double) 214, (double) 214, grey84, (double) 214, (double) 214, (double) 214, gray85, (double) 217, (double) 217, (double) 217, grey85, (double) 217, (double) 217, (double) 217, gray86, (double) 219, (double) 219, (double) 219, grey86, (double) 219, (double) 219, (double) 219, gray87, (double) 222, (double) 222, (double) 222, grey87, (double) 222, (double) 222, (double) 222, gray88, (double) 224, (double) 224, (double) 224, grey88, (double) 224, (double) 224, (double) 224, gray89, (double) 227, (double) 227, (double) 227, grey89, (double) 227, (double) 227, (double) 227, gray90, (double) 229, (double) 229, (double) 229, grey90, (double) 229, (double) 229, (double) 229, gray91, (double) 232, (double) 232, (double) 232, grey91, (double) 232, (double) 232, (double) 232, gray92, (double) 235, (double) 235, (double) 235, grey92, (double) 235, (double) 235, (double) 235, gray93, (double) 237, (double) 237, (double) 237, grey93, (double) 237, (double) 237, (double) 237, gray94, (double) 240, (double) 240, (double) 240, grey94, (double) 240, (double) 240, (double) 240, gray95, (double) 242, (double) 242, (double) 242, grey95, (double) 242, (double) 242, (double) 242, gray96, (double) 245, (double) 245, (double) 245, grey96, (double) 245, (double) 245, (double) 245, gray97, (double) 247, (double) 247, (double) 247, grey97, (double) 247, (double) 247, (double) 247, gray98, (double) 250, (double) 250, (double) 250, grey98, (double) 250, (double) 250, (double) 250, gray99, (double) 252, (double) 252, (double) 252, grey99, (double) 252, (double) 252, (double) 252, gray100, (double) 255, (double) 255, (double) 255, grey100, (double) 255, (double) 255, (double) 255, DarkGrey, (double) 169, (double) 169, (double) 169, DarkGray, (double) 169, (double) 169, (double) 169, DarkBlue, (double) 0, (double) 0, (double) 139, DarkCyan, (double) 0, (double) 139, (double) 139, DarkMagenta, (double) 139, (double) 0, (double) 139, DarkRed, (double) 139, (double) 0, (double) 0, LightGreen, (double) 144, (double) 238, (double) 144, }; ./bin/decsgml.pl0000755000175000017500000000100107532460062013557 0ustar henrichhenrich#!/usr/bin/perl while (<>) { chomp; s/(.*META HTTP-EQUIV=\"CONTENT-TYPE\".*)iso-8859-1(.*)/$1utf-8$2/go; while (s/&#(\d+)\;/&sgml($1)/ge) { } print; print "\n"; } sub sgml { $str = $_[0]; if ($_[0] >= 0x800) { $str = chr (0xe0 | ($_[0] >> 12)); $str .= chr (0x80 | (($_[0] >> 6) & 0x3f)); $str .= chr (0x80 | ($_[0] & 0x3f)); } elsif ($_[0] >= 0x80) { $str = chr (0xc0 | ($_[0] >> 6)); $str .= chr (0x80 | ($_[0] & 0x3f)); } else { $str .= chr ($str); } $str; } ./bin/dumpfont.pl0000755000175000017500000000211707532460062014006 0ustar henrichhenrich#!/usr/bin/perl $SCALE_X = 1.0; $SCALE_Y = 1.0; #1. $TRANS_X = 10; #$TRANS_X = 240; $TRANS_X = 0; $TRANS_Y = 0; while (<>) { if (/\/\S \{ \%/) { print "SD_BEGIN_GLYPH, /*" . $_ . "*/"; } elsif (/closepath (\S+) (\S+) moveto/) { $x = $1; $y = $2; print " SD_CLOSE_PATH,\n"; print " SD_MOVE_TO, $x, $y,\n"; } elsif (/(\S+) (\S+) moveto/) { $x = $1/$SCALE_X+$TRANS_X; $y = $2/$SCALE_Y+$TRANS_Y; print " SD_MOVE_TO, $x, $y,\n"; } elsif (/closepath fill/) { print " SD_CLOSE_PATH,\n"; print "SD_END_GLYPH,\n"; } elsif (/closepath/) { print "SD_CLOSE_PATH,\n"; } elsif (/fill/) { print " w->stroke ();\n"; } elsif (/(\S+) (\S+) lineto/) { $x = $1/$SCALE_X+$TRANS_X; $y = $2/$SCALE_Y+$TRANS_Y; print " SD_LINE_TO, $x, $y,\n"; } elsif (/(\S+) (\S+) (\S+) (\S+) (\S+) (\S+) curveto/) { $x1 = $1/$SCALE_X+$TRANS_X; $y1 = $2/$SCALE_Y+$TRANS_Y; $x2 = $3/$SCALE_X+$TRANS_X; $y2 = $4/$SCALE_Y+$TRANS_Y; $x3 = $5/$SCALE_X+$TRANS_X; $y3 = $6/$SCALE_Y+$TRANS_Y; print " SD_CURVE_TO, $x1, $y1, $x2, $y2, $x3, $y3,\n"; } } ./bin/gbtest.pl0000755000175000017500000000146407532460062013446 0ustar henrichhenrich#!/usr/bin/perl $line = 16; for ($i=0; $i<0x10ffff/$line; $i++) { $char = sprintf ("U+%08X", $i*$line); $utf8 = ""; for ($j=0; $j<$line; $j++) { $utf8 .= sprintf ("U+%08X", $i*$line+$j); } $utf8 =~ s/U\+([0-9A-Fa-f]{4,8})/pack "U", hex $1/ge; die "can not open uniconv" unless (open (OUT, "| ./uniconv -encode gb-18030 -out /tmp/aa.txt")); print OUT $utf8; close (OUT); die "can not open uniconv" unless (open (IN, "./uniconv -decode gb-18030 -in /tmp/aa.txt |")); $check = ; close (IN); if ($i >= 0xd800 && $i <= 0xdfff) { if ($check eq $utf8) { print STDERR "Problem at $char not expected $utf8 got $check\n"; } } elsif ($check ne $utf8) { print STDERR "Problem at $char expected $utf8 got $check\n"; } print "$char\n" if (($i % 0x10)==0); } ./bin/recmat.pl0000755000175000017500000001244207532460062013427 0ustar henrichhenrich#!/usr/bin/perl # Make diff of 3 files # GNU (C) Gaspar Sinai # Tokyo 2002-04-10 $PLANE1="JISX0213-1.TXT"; $PLANE2="JISX0213-2.TXT"; $VERSION="Version 1.1"; # # SJIS is KEY # %JISMAP=(); %KUTENMAP=(); %UMAP=(); %ALLJ=(); %ALLU=(); &makeMap ($PLANE1); &makeMap ($PLANE2); # # NAME URL DELIMITER JIS SJIS UNICODE # @FILE1=("WAKABA", "jisx0213code-csv32.txt", "http://www.ksky.ne.jp/~smile4me/charcode/jisx0213code-csv_u32.lzh", ",", 4, 6, 7); # No JIS MAP. @FILE2=("IBM_GLY", "IBM1394toUCS4-GLY.txt", "http://www.cse.cuhk.edu.hk/~irg/irg/N807_TablesX0123-UCS.zip", " ", -1, 0, 1); # No JIS MAP. @FILE3=("IBM_IRV", "IBM1394toUCS4-IRV.txt", "http://www.cse.cuhk.edu.hk/~irg/irg/N807_TablesX0123-UCS.zip", " ", -1, 0, 1,); &makeCMP (@FILE1); &makeCMP (@FILE2); # Turned out to be the same. # &makeCMP (@FILE3); @KEYS = sort (keys (JISMAP)); $name1 = $FILE1[0]; $name2 = $FILE2[0]; $name3 = $FILE3[0]; print < and Gaspar Sinai . These two maps are totally unofficial, and they will not solve any problems mentioned by Tomohiro KUBOTA http://www.debian.or.jp/~kubota/unicode-symbols.html. It should also be noted that tone letters that are used in this mapping are mentioned mentioned in Section 7.8 (Modifier Letters). The rendering engine must render at least the following glyphs: U+02E9 U+02E5 # RISING (声調記号上昇調) in JIS X 0213 U+02E5 U+02E9 # FALLING (声調記号下降調) in JIS X 0213 ------------------------------------------------------------------ Further Unresolved Issues ------------------------------------------------------------------ 1) 0x83F6 0x2678 0x31F7 0x309A # 1-6-88 This character is a 'small' variant of 0x30D7. It will be the task of the display engine to position the small circle at the right position. Differences between unofficial mappings: EOD printf ("%-7.7s %-4.4s %-8.8s %-17.17s %-26.26s\n", "m-k-t", "SJIS", $name1, $name2,"LINUX"); print < Tokyo, $date EOD exit (0); sub makeCMP { ($name, $file, $url, $delim, $jis, $sjis, $uni) = @_; open (P1, "< $file") || die "Can not open $file"; while () { chomp; split ($delim); $sj = hex ($_[$sjis]); next if ($sj==0); $j = hex ($_[$jis]); $u = $_[$uni]; $ALLJ{$name}{$sj}=sprintf ("%04X", $j); if ($u =~ /........+........+......../) { $ALLU{$name}{$sj}=$u; } elsif ($u =~ /........+......../) { $ALLU{$name}{$sj}=$u; } else { $ALLU{$name}{$sj}=sprintf ("%08X", hex($u)); } } close (P1); } sub makeMap { open (P1, "<$_[0]") || die "Can not open $_[0]"; while () { chomp; next if (/UNASSIGNED .* JIS /); if (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=sprintf ("%08X+%08X+%08X", hex($3), hex($4), hex($5)); $KT=$6; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } elsif (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=sprintf ("%08X+%08X", hex($3), hex($4)); $KT=$5; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } elsif (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=sprintf ("%08X", hex($3)); $KT=$4; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } elsif (/^0x([0-9A-F]+)[ \t]+0x([0-9A-F]+)[ \t]+(.*)/) { $SJ=hex($1); $JISMAP{($SJ)}=sprintf ("%04X", hex($2)); $UMAP{($SJ)}=""; $KT=$3; $KT=$1 if ($KT=~/(\d+-\d+-\d+)/); $KUTENMAP{$SJ}=$KT; } } close (P1); } ./bin/rgb.pl0000755000175000017500000000105407532460062012723 0ustar henrichhenrich#!/usr/bin/perl die "can not open program" unless (open (PP, "showrgb |")); $DATE=`date`; $HOST=`hostname`; chomp ($DATE); chomp ($HOST); print <) { chomp (); next if (split != 4); $was= " { \"$_[3]\", $_[0], $_[1], $_[2] }"; printf ("%s,\n", $was); } printf (" { 0, 0, 0, 0 } \n"); close (PP); print < nul 2>&1 @if errorlevel 1 call :GetWindowsSdkDirHelper HKCU > nul 2>&1 @if errorlevel 1 echo WindowsSdkDir not found @exit /B 0 :GetWindowsSdkDirHelper @SET WindowsSdkDir= @for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows" /v "CurrentInstallFolder"') DO ( if "%%i"=="CurrentInstallFolder" ( SET "WindowsSdkDir=%%k" ) ) @if "%WindowsSdkDir%"=="" exit /B 1 @exit /B 0 :error_no_VSINSTALLDIR @echo ERROR: VSINSTALLDIR variable is not set. @goto end :error_no_VCINSTALLDIR @echo ERROR: VCINSTALLDIR variable is not set. @goto end :end ./testtext/0000755000175000017500000000000010724001350012711 5ustar henrichhenrich./testtext/devanagari.txt0000644000175000017500000000223507725620000015563 0ustar henrichhenrich9-1. Dependent+Independent Vowels: अि अु 9-2. Dead Consonants: त् 9-3. Conjunct Formations: ग्ध क्ष क्क र्ऋ र्‍ऋ 9-4. Preventing Conjunct Forms: क्‌ष 9-5. Half-Consonants: क्‍ष 9-6. Independent Half-Forms: ग्‍ 9-7. Consonant Forms: क क् क्‍ Rules:1. त् 2. र्क 3. र् ज् ञ र्ज्ञ 4. र् ग् घ र्ग्घ 5. ऱ्क र्‍क र्‍ऋ 6. ठ् र ठ्र 7. फ् र फ्र 8. त् र् त्र् । त्र् य त्र्य 9. क़् 10. काँ 11. ज् ञ ज्ञ । ट् ठ ट्ठ 12: स् त् र । स् त्र स्त्र । क्ष् य क्ष्य 13: क र क्र । फ र फ्र 14: र ◌ु रु र ◌ू रू 9-8. Rendering Order कि Rules: 15. त्रि Chaining रीसीकी bi.n बिं 9-3. Sample Half Ligature Forms क्ष्‍ ज्ञ्‍ त्त्त्‍ त्र्‍ श्र्‍ Complex tests: र्ड्रुँ र्क्रु र्क्की र्क्रै ./testtext/syriac.txt0000644000175000017500000000030510505130514014744 0ustar henrichhenrichSyriac Alaph U+0710 Tests EOW Final FJ: ܒܐ EOW Isolated FX: ܕܐ EOW Isolated FN: ܙܐ Isolated: ܐ Final: ܚܚܐܚ Arabic Joining: ٸٸٸ Rish + Seyame final: ܚܪ̈ Rish + Seyame isolated: ܪ̈./testtext/telugu.txt0000644000175000017500000000043107717370064015000 0ustar henrichhenrich1. Two below స్ట్ర 2. More marks స్తృ 3. Above కా క్ష్యా క్షిం 4. Below కౖ ర్య స్త్ర స్త్రా 5. Above below జై స్త్రా స్త్రై ర్యై 6. Right మెౕ క్కు ./testtext/marktobase.txt0000644000175000017500000000007707710423330015615 0ustar henrichhenrichŴŵ X̣̂x̣̂x̣̂ŖŗX̧ も゙も゚が゚ స్ట్ర ./testtext/test_khanda_ta.txt0000644000175000017500000000001210434313252016421 0ustar henrichhenrichৎকি ./testtext/test_ben_reph.txt0000644000175000017500000000001110434061124016266 0ustar henrichhenrichর্ৎ./testtext/malayalam.txt0000644000175000017500000000544707724055656015452 0ustar henrichhenrichc: consonant h: halant j: ZWJ (U+200D) n: ZWNJ (U+200C) 1 Chillakasharam chnc ch chc chjc ന്‌മ ന് ന്മ ന്‍മ ണ്‌മ ണ് ണ്മ ണ്‍മ ര്‌മ ര് ര്മ ര്‍മ ല്‌മ ല് ല്മ ല്‍മ ള്‌മ ള് ള്മ ള്‍മ 2 റ should have a chill form when followed by hj. It should render the same chill form as for ര. chc chjc റ്മ റ്‍മ ര്മ ര്‍മ കര്‍ണ്ണാടകം (with ര) = കറ്‍ണ്ണാടകം (with റ) They should be rendered the same way. 3 ch + ര should be rendered as c + RA-sign. വ h ര → വ്ര വ h ര j → വര്‍ വ h റ → വ്റ 4 െ (E-sign) Should come before base. ട h സ െ → ട്സെ 5. Font Test 5.1 Chillakasharams (U+0D31 is hard-coded in Yudit) c ണ ന ര റ ല ള ch ണ് ന് ര് റ് ല് ള് chj ണ്‍ ന്‍ ര്‍ റ്‍ ല്‍ ള്‍ chn ണ്‌ ന്‌ ര്‌ റ്‌ ല്‌ ള്‌ 5.2 Conjuncts (U+0D31 is hard-coded in Yudit) chc യ ര റ ള ല വ ണ ണ്യ ണ്ര ണ്റ ണ്ള ണ്ല ണ്വ ന ന്യ ന്ര ന്റ ന്ള ന്ല ന്വ ര ര്യ ര്ര ര്റ ര്ള ര്ല ര്വ ല ല്യ ല്ര ല്റ ല്ള ല്ല ല്വ ള ള്യ ള്ര ള്റ ള്ള ള്ല ള്വ 5.3 Chill forms (U+0D31 is hard-coded in Yudit) chjc യ ര റ ള ല വ ണ ണ്‍യ ണ്‍ര ണ്‍റ ണ്‍ള ണ്‍ല ണ്‍വ ന ന്‍യ ന്‍ര ന്‍റ ന്‍ള ന്‍ല ന്‍വ ര ര്‍യ ര്‍ര ര്‍റ ര്‍ള ര്‍ല ര്‍വ ല ല്‍യ ല്‍ര ല്‍റ ല്‍ള ല്‍ല ല്‍വ ള ള്‍‍യ ള്‍ര ള്‍റ ള്‍ള ള്‍ല ള്‍വ 5.4 Isolated forms chnc യ ര റ ള ല വ ണ ണ്‌യ ണ്‌ര ണ്‌റ ണ്‌ള ണ്‌ല ണ്‌വ ന ന്‌യ ന്‌ര ന്‌റ ണ്‌ള ന്‌ല ന്‌വ ര ര്‌യ ര്‌ര ര്‌റ ര്‌ള ര്‌ല ര്‌വ ല ല്‌യ ല്‌ര ല്‌റ ല്‌ള ല്‌ല ല്‌വ ള ള്‌യ ള്‌ര ള്‌റ ള്‌ള ള്‌ല ള്‌വ 6. Ra test kkra rkka kkro rkko .n.nro ക്ക്ര ര്ക്ക ക്ക്രൊ ര്ക്കൊ ണ്ണ്രൊ 7. ..T/R Test thnvhva thvhva thjvhvha റ്‌വ്വ റ്വ്വ റ്‍വ്വ ര്‌വ്വ ര്വ്വ ര്‍വ്വ 8. lla Test lla rlla llra llro klla ല്ല ര്ല്ല ല്ല്ര ല്ല്രൊ ക്ല്ല ./gui/0000755000175000017500000000000011334661073011625 5ustar henrichhenrich./gui/SYudit.cpp0000644000175000017500000020236311334376216013562 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gui/SYudit.h" #include "gui/Main.h" #include "stoolkit/SEncoder.h" #include "stoolkit/SIO.h" #include "stoolkit/STypes.h" #include "stoolkit/SIOStream.h" #include "swidget/SUniPrint.h" #include "swidget/SIconFactory.h" #include #include #include static SString translateHighlightMode (const SString& hl); static SString getPrintHelp (); static int getLineNumber (const SString& s); #define SGC_DOUBLE_BUFFER true /** * A caret that redraws itself differently for lr and rl text */ SYudit::SYudit (const SStringVector& args, const SProperties& props) { // No use to make this main window double buffered // because it almost only redraws its borders and that's it // This is done in SFrame. // setThisDoubleBuffered (false); SPanel::setAllDoubleBuffered (SGC_DOUBLE_BUFFER); // preparse args unsigned int i; for (i=1; isetFont (commandFont, commandFontSize); unsigned int commandHeight = command->getPreferredSize().height; command->setMultiline (false); command->setLineEndMark (false); messagebar = new SMessageBar (props); unsigned int msgbarHeight = messagebar->getPreferredSize().height; toolbar = new SToolBar (props); unsigned int toobarHeight = toolbar->getPreferredSize().height; toolbar->setLayout ( SLayout ( SLocation (2,0), SLocation (2998, toobarHeight+0), SLocation (0, 0), SLocation (100, 0) ) ); toolbar->setListener (this); messagelabel = new SMessageLabel (props); unsigned int messagelabeHeight = messagelabel->getPreferredSize().height; messagelabel->setLayout ( SLayout ( SLocation (2, 1998-messagelabeHeight), SLocation (2998, 1998), SLocation (0, 100), SLocation (100, 100) ) ); command->setLayout ( SLayout ( SLocation (2, 1998-commandHeight-messagelabeHeight), SLocation (2998, 1998-messagelabeHeight), SLocation (0, 100), SLocation (100, 100) ) ); messagebar->setLayout ( SLayout ( SLocation (2,1998-msgbarHeight-commandHeight-messagelabeHeight), SLocation (2998, 1998-commandHeight-messagelabeHeight), SLocation (0, 100), SLocation (100, 100) ) ); sliderLayout = SLayout ( SLocation (2978, toobarHeight+2), SLocation (2998, 1998 - commandHeight - msgbarHeight - messagelabeHeight), SLocation (100, 0), SLocation (100, 100) ); slider = new SSlider (); slider->setLayout (sliderLayout); /* on mac somehow it did not want to resize - force it */ slider->resize (SDimension (10, 200)); SString currentFont = toolbar->fonts[toolbar->currentFont]; SString currentFontSize = toolbar->fontsizes[toolbar->currentFontSize]; SString currentInput = toolbar->inputs[toolbar->currentInput]; SString currentParagraphSeparator = toolbar->paragraphBreaks[toolbar->currentParagraphSeparator]; editor = new STextEdit (); editor->addSyntaxListener (toolbar); currentFontSize.append ((char)0); double df; if (sscanf (currentFontSize.array(), "%lf", &df)==0 || df < 2.0) df = 2.0; editor->setFont (currentFont, df); editor->setMultiline (true); editor->setLineEndMark (true); editor->setDocumentEmbedding (toolbar->currentEmbedding); editorLayout = SLayout ( SLocation (2, toobarHeight+2), SLocation (2978, 1998 - commandHeight - msgbarHeight - messagelabeHeight), SLocation (0, 0), SLocation (100, 100) ); editor->setLayout (editorLayout); /*SGC */ SString inputStyle = originalProperties["yudit.editor.xinputs.style"]; /* allowed styles */ if (inputStyle=="preedit-over-status-under" || inputStyle == "preedit-under-status-under" || inputStyle=="preedit-over-status-over" || inputStyle == "preedit-root-status-root" ) { SProperties p; SColor cbg(originalProperties["yudit.background"]); SColor cfg(originalProperties["yudit.label.foreground"]); sprintf (fnc, "%lu,%lu", (unsigned long)cbg.getValue(), (unsigned long)cfg.getValue()); p.put ("InputClientColor", fnc); SColor sbg(originalProperties["yudit.background"]); SColor sfg(originalProperties["yudit.title.foreground"]); sprintf (fnc, "%lu,%lu", (unsigned long)sbg.getValue(), (unsigned long)sfg.getValue()); p.put ("InputStatusColor", fnc); editor->setXIMProperties (p); p.put ("InputStyle", inputStyle); editor->setXIMProperties (p); } else { fprintf (stderr, "Yudit: unkown yudit.editor.xinputs.style=%*.*s\n", SSARGS(inputStyle)); } /* showInputStatus has set up the xim properties for editor */ editor->setInputMethod (currentInput); if (currentInput.size() > 2) { if (currentInput != SS_KINPUT2_IM && currentInput != SS_WINDOWS_IM && currentInput[0] != 'x' && currentInput[1] != 'X') { command->setInputMethod (currentInput); } } if (props["yudit.editor.showbreak"]=="true") { editor->setLineEndMark (true); } else { editor->setLineEndMark (false); } if (props["yudit.editor.wordwrap"]=="true") { editor->setWordWrap (true); } else { editor->setWordWrap (false); } SSyntaxColors syn; syn.colors[(unsigned int) SSyntax::SD_NONE] = SColor ("cyan"); /* got rid of none. For errors and none we use the default fg. = props.getProperty ("yudit.editor.syntax.none.foreground", "green"); */ syn.colors[(unsigned int) SSyntax::SD_ERROR] = props.getProperty ("yudit.editor.syntax.error.foreground", "OrangeRed3"); syn.colors[(unsigned int) SSyntax::SD_NUMBER] = props.getProperty ("yudit.editor.syntax.number.foreground", "orange"); syn.colors[(unsigned int) SSyntax::SD_STRING] = props.getProperty ("yudit.editor.syntax.string.foreground", "magenta"); syn.colors[(unsigned int) SSyntax::SD_COMMENT] = props.getProperty ("yudit.editor.syntax.comment.foreground", "lightgray"); syn.colors[(unsigned int) SSyntax::SD_KEYWORD] = props.getProperty ("yudit.editor.syntax.token.foreground", "yellow"); syn.colors[(unsigned int) SSyntax::SD_VARIABLE] = props.getProperty ("yudit.editor.syntax.variable.foreground", "red"); syn.colors[(unsigned int) SSyntax::SD_DEFINE] = props.getProperty ("yudit.editor.syntax.define.foreground", "cyan"); syn.colors[(unsigned int) SSyntax::SD_CONTROL] = props.getProperty ("yudit.editor.syntax.control.foreground", "CornflowerBlue"); editor->setSyntaxColors (syn); const SString& hl = props["yudit.editor.syntax"]; SString mode = translateHighlightMode (hl); if (mode.size() >= 0) { editor->setSyntax (mode); } SEditor e(currentParagraphSeparator); editor->setEditor (e); messagebar->setFontSize(df); command->setEditor(SEditor()); add (slider); add (editor); add (command); add (toolbar); add (messagebar); add (messagelabel); setBackground (props["yudit.background"]); editor->setTextBackground (props["yudit.editor.background"]); editor->setForeground (props["yudit.editor.left.foreground"], props["yudit.editor.right.foreground"]); editor->setCaretForeground (props["yudit.editor.caret.left.foreground"], props["yudit.editor.caret.right.foreground"]); command->setTextBackground (props["yudit.command.background"]); command->setForeground (props["yudit.command.left.foreground"], props["yudit.command.right.foreground"]); command->setCaretForeground (props["yudit.command.caret.left.foreground"], props["yudit.command.caret.right.foreground"]); slider->setSliderBackground (props["yudit.slider.background"]); SDimension pw = toolbar->getPreferredSize(); /* get the dimension */ SDimension ms(props["yudit.default.geometry"]); //if (ms.width < pw.width + 10) ms.width = pw.width + 10; //if (ms.height < pw.height + 10) ms.width = pw.height + 10; if (ms.width < 150) ms.width = 150; if (ms.height < 100) ms.height = 100; resize (ms); setMinimumSize (SDimension (150, 100)); caretNow = STextIndex (0,0); messagebar->setRow(1); messagebar->setColumn (0); editor->setCursorIndex(SCursorIndex(0,0)); editor->addTextEditLS (this); command->addTextEditLS (this); command->setHistorySize(30); kmapDialog = 0; fileDialog = 0; highlightDialog = 0; textDialog = 0; #ifdef USE_WINAPI SToolBar::SFormatIndex ft=SToolBar::SS_FORMAT_DOS; #else SToolBar::SFormatIndex ft=SToolBar::SS_FORMAT_UNIX; #endif toolbar->setParagraphSeparator (ft, true); int lineNum = -1; if (args.size()) { SString comm ("open -yes "); SString enc ((lastencoding.size()==0)?SString("utf-8"):lastencoding); SString filename; bool help=false; unsigned int i; for (i=1; i 0) { lineNum = getLineNumber (args[i]); } else if (args[i] == SString("-e") && i+1 < args.size()) { i++; enc = args[i]; } else if (args[i] == SString("-help") || args[i] == SString("-h")) { help = true; } else if (args[i] == SString("-ndb") || args[i] == SString("-db")) { // already processed } else if (args[i] == SString("-us")) { SScriptProcessor::support(true); } else if (args[i] == SString("-nus")) { SScriptProcessor::support(false); } else if (args[i] == SString("-noinit")) { SScriptProcessor::doInit(false); } else if ((args[i] == SString("-d") || args[i] == SString("-geometry")) && i+1 < args.size()) { i++; ms = SDimension (args[i]); //if (ms.width < pw.width + 10) ms.width = pw.width + 10; //if (ms.height < pw.height + 10) ms.width = pw.height + 10; if (ms.width < 150) ms.width = 150; if (ms.height < 100) ms.width = 100; resize (ms); } else { filename = args[i]; break; } } if (help) { filename = SString("help"); command->putHistory (filename); } else { filename = composeFileNameCommand (comm, enc, completeFileName(filename)); /* now it comes handy - args starts with 1 */ unsigned int j; for (j=args.size(); j>i; j--) { SString ss = composeFileNameCommand (comm, enc, completeFileName (args[j-1])); command->putHistory (ss); } } SStringVector v; v.smartSplit (filename); load (v, filename); } toolbar->setFileName(currentFileName, lastencoding); toolbar->setHighlightName (editor->getHighlightName()); setFileTitle (); SIcon* icon = SIconFactory::getIcon("Yudit"); setApplicationImage (icon->getImage ()); //fprintf (stderr, "SYudit.cpp EDITOR FOCUS REQUEST\n"); setDropListener (this, SStringVector ("text/uri-list,text/plain")); showFreeHand (currentInput=="freehand"); editor->setFocus (); if (lineNum > 0) { editor->setCursorIndex(SCursorIndex((unsigned int)(lineNum-1), 0, true)); } } SYudit::~SYudit () { } bool SYudit::close (SPanel* comp) { if (textDialog != 0 && textDialog->isShown()) { textDialog->center(); return false; } bool ret = false; if (toolbar->modified) { createTextDialog (); ret = textDialog->getInput ( "Yudit: Exit", translate ("Unsaved changes.\nExit anyway?\n"), STextDialog::SS_QUESTION); if (ret) { saveProperties(); exit (0); } return false; } if (toolbar->printing) { createTextDialog (); ret = textDialog->getInput ( "Yudit: Exit", translate ("Pending printing job.\nExit anyway?\n"), SDialog::SS_QUESTION); if (ret) { saveProperties(); exit (0); } } saveProperties(); exit (0); } /** * Listening to toolbar. */ void SYudit::buttonPressed (void* src, int which, bool accel) { if (!toolbar->printing) messagelabel->setMessage(""); if (textDialog != 0 && textDialog->isShown()) return; SString currentFont = toolbar->fonts[toolbar->currentFont]; SString currentFontSize = toolbar->fontsizes[toolbar->currentFontSize]; SString currentInput = toolbar->inputs[toolbar->currentInput]; SString currentParagraphSeparator = toolbar->paragraphBreaks[toolbar->currentParagraphSeparator]; currentFontSize.append ((char)0); double df; SString pstr; SStringVector pstrVector; if (sscanf (currentFontSize.array(), "%lf", &df)==0 || df < 2.0) df = 2.0; bool ok = false; int dire = false; bool wasmodified = toolbar->modified; switch (which) { /* FIXME */ case SToolBar::SS_OPEN: if (!accel) { createFileDialog(); if (toolbar->modified) { createTextDialog(); ok = textDialog->getInput ( "Yudit: Open", translate ("Unsaved changes.\nOpen anyway?\n"), STextDialog::SS_QUESTION); if (!ok) { return; } } fileDialog->setFileName (currentFileName); fileDialog->setFileType (lastencoding); ok = fileDialog->getInput ("Yudit: Open", false, false); if (!ok) { return; } pstr.clear(); pstr.append ("open "); pstr.append ("-yes "); pstr.append ("-e "); pstr.append (fileDialog->getFileType()); pstr.append (" "); pstr.append (quoteFileName (fileDialog->getFileName())); command->setText (pstr); command->setCursorIndex (SCursorIndex(0,10000)); command->putHistory (pstr); pstrVector.smartSplit(pstr); load (pstrVector, pstr); return; } if (toolbar->modified) { messagelabel->setMessage (translate ("Unsaved changes. Enter discards!"), SMessageLabel::SS_ERR); SString str = composeFileNameCommand ("open -yes ", lastencoding, currentFileName); command->setText(str); command->setCursorIndex (SCursorIndex(0,10000)); } else { messagelabel->setMessage (translate ("open -yes -e encoding file"), SMessageLabel::SS_INFO); SString str = composeFileNameCommand ( "open ", lastencoding, currentFileName); command->setText(str); command->setCursorIndex (SCursorIndex(0,10000)); } command->setFocus(); break; case SToolBar::SS_SAVE: if (!accel) { createFileDialog(); fileDialog->setFileName (currentFileName); fileDialog->setFileType (lastencoding); pstr = fileDialog->getFileName(); ok = fileDialog->getInput ("Yudit: Save", false, false); if (!ok) { return; } if (pstr != fileDialog->getFileName() && newFileExists (fileDialog->getFileName())) { createTextDialog(); ok = textDialog->getInput ( "Yudit: Save", translate ("File exists.\nSave anyway?"), STextDialog::SS_QUESTION); if (!ok) { return; } } pstr.clear(); pstr.append ("save "); pstr.append ("-yes "); pstr.append ("-e "); pstr.append (fileDialog->getFileType()); pstr.append (" "); pstr.append (quoteFileName (fileDialog->getFileName())); command->setText (pstr); command->setCursorIndex (SCursorIndex(0,10000)); command->putHistory (pstr); pstrVector.smartSplit(pstr); save (pstrVector, pstr); return; } messagelabel->setMessage (translate ("save -e encoding file"), SMessageLabel::SS_INFO); { SString str = composeFileNameCommand ( "save ", lastencoding, currentFileName);; command->setText(str); command->setCursorIndex (SCursorIndex(0,10000)); } command->setFocus(); break; case SToolBar::SS_FIND: messagelabel->setMessage (translate ("find string"), SMessageLabel::SS_INFO); command->setText("find "); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); break; case SToolBar::SS_GOTO: messagelabel->setMessage (translate ("go line [column]"), SMessageLabel::SS_INFO); command->setText("go "); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); break; case SToolBar::SS_PRINT: messagelabel->setMessage (getPrintHelp (), SMessageLabel::SS_INFO); pstr.append ("print "); pstr.append (lastprinterOption); command->setText(pstr); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); break; case SToolBar::SS_PRINT_PREVIEW: messagelabel->setMessage (translate ("print -e program"), SMessageLabel::SS_INFO); pstr.append ("print "); pstr.append (lastpreviewOption); command->setText(pstr); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); break; case SToolBar::SS_UNDO: if (!editor->undo()) { messagelabel->setMessage (translate ("Nothing to undo."), SMessageLabel::SS_WARN); toolbar->setModified (false); } toolbar->setEmbedding(editor->getDocumentEmbedding(), false); break; case SToolBar::SS_REDO: if (!editor->redo()) { messagelabel->setMessage (translate ("Nothing to redo."), SMessageLabel::SS_WARN); } toolbar->setEmbedding(editor->getDocumentEmbedding(), false); break; case SToolBar::SS_DOCUMENT_EMBEDDING: editor->setDocumentEmbedding (toolbar->currentEmbedding); break; case SToolBar::SS_SET_OVERRIDE: /* change it back */ dire = editor->changeDirection (toolbar->overrideLR ? SS_DR_LO : SS_DR_RO); if (dire) { messagelabel->setMessage(""); } else { /* leave it back */ if (!wasmodified) toolbar->setModified (true); messagelabel->setMessage ( translate ("Direction of selected text has been set."), SMessageLabel::SS_INFO); } break; case SToolBar::SS_YIELD_EMBEDDING: dire = editor->changeDirection (toolbar->currentLR ? SS_DR_L : SS_DR_R); if (dire) { messagelabel->setMessage(""); } else { /* leave it back */ if (!wasmodified) toolbar->setModified (true); messagelabel->setMessage ( translate ("Direction of selected text has been re-set."), SMessageLabel::SS_INFO); } break; case SToolBar::SS_SET_EMBEDDING: /* change it back */ dire = editor->changeDirection (toolbar->embedLR ? SS_DR_LE : SS_DR_RE); if (dire) { messagelabel->setMessage(""); } else { /* leave it back */ if (!wasmodified) toolbar->setModified (true); messagelabel->setMessage ( translate ("Direction of selected text has been set."), SMessageLabel::SS_INFO); } break; case SToolBar::SS_MAGNIFY_PLUS: case SToolBar::SS_MAGNIFY_MINUS: messagebar->setFontSize(df); editor->setFontSize (df); if (freehand) freehand->setFontSize (df); break; case SToolBar::SS_FONT: editor->setFont (currentFont, df); if (freehand) freehand->setFont (currentFont, df); break; case SToolBar::SS_INPUT: if (!accel) { createKMapDialog (); ok = kmapDialog->getInput ("Yudit: KMap Setup", toolbar->inputs, toolbar->currentInput); if (!ok || kmapDialog->getSelectedKMap() < 0) break; toolbar->inputChanged(kmapDialog->getKMapList (), kmapDialog->getSelectedKMap()); currentInput = toolbar->inputs[toolbar->currentInput]; userProps.put ("yudit.editor.inputs", toolbar->inputs.join (",")); userProps.put ("yudit.editor.input", currentInput); saveProperties(); } editor->setInputMethod (currentInput); showFreeHand (currentInput=="freehand"); if (currentInput != SS_KINPUT2_IM && currentInput != SS_WINDOWS_IM && currentInput[0] != 'x' && currentInput[1] != 'X') { command->setInputMethod (currentInput); } else { command->setInputMethod ("straight"); } /* update glyph info */ caretMoved(); break; case SToolBar::SS_PARAGRAPH_BREAK: editor->setParagraphSeparator (currentParagraphSeparator, true); break; case SToolBar::SS_HIGHLIGHTING: if (!accel) { createHighlightDialog(); SString gotMode = editor->getHighlightName(); highlightDialog->setHighlightName (gotMode); ok = highlightDialog->getInput ("Yudit: Highlighting"); if (!ok) { return; } SString hlmode = highlightDialog->getHighlightName(); pstr.clear(); pstr.append ("syntax "); pstr.append (" "); //pstr.append (quoteFileName (hlmode)); pstr.append (hlmode); //command->setText (pstr); //command->setCursorIndex (SCursorIndex(0,10000)); if (setHighlight (hlmode)) { command->putHistory(pstr); } return; } else { SString gotMode = editor->getHighlightName(); SString cmd ("syntax"); cmd.append (" "); cmd.append (gotMode); command->setText (cmd); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); } break; default: break; } } bool SYudit::setHighlight (const SString& syntaxMode) { SString smode; if ((smode = translateHighlightMode (syntaxMode)) == "") { SString err = translate ("usage: "); err.append ("syntax none|simple|simple-dark|hunspell:en_US|..."); messagelabel->setMessage (err, SMessageLabel::SS_ERR); return false; } SString oldM = editor->getHighlightName (); editor->setSyntax (smode); SString gotMode = editor->getSyntaxName(); if (gotMode != smode && smode != "simple" && smode != "simple-dark" && smode != "none") { SString err = translate ("Can not set syntax: "); err.append (smode); messagelabel->setMessage (err, SMessageLabel::SS_ERR); editor->setSyntax (oldM); return false; } // dont display these toolbar->setHighlightName (editor->getHighlightName()); userProps.put ("yudit.editor.syntax", smode); return true; } void SYudit::buttonLeave (void* src, int which) { } void SYudit::buttonEnter (void* src, int which) { } /** * This is the STextEditLS */ void SYudit::textChanged (void *source) { if (source == editor) { if (!toolbar->printing) messagelabel->setMessage(""); toolbar->setModified (true); return; } } void SYudit::textEntered (void *source) { if (!toolbar->printing) messagelabel->setMessage(""); if (source != command) return; SString text = command->getText(); if (text.size()==0) { editor->setFocus(); return; } SStringVector cv; cv.smartSplit (text); if (cv.size()==2 && cv[0]=="quit" && cv[1] == "-yes") { exit (0); } if (cv.size()==1 && cv[0] == "quit") { if (toolbar->modified) { messagelabel->setMessage (translate ("Unsaved changes. Enter quits!"), SMessageLabel::SS_ERR); command->setText("quit -yes"); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); return; } if (toolbar->printing) { messagelabel->setMessage (translate ("Pending printing job. Enter quits!"), SMessageLabel::SS_ERR); command->setText("quit -yes"); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); return; } exit (0); } command->putHistory(text); if (cv.size()>0 && cv[0] == "print") { print (cv, text); return; } if ((cv.size()>0 && (cv[0] == "help" || cv[0] == "test" || helpStrings.get(cv[0]) != 0)) || (cv.size() > 1 && cv[0] == "howto")) { load (cv, text); return; } if (cv.size()>0 && (cv[0] == "open" || cv[0] == "load")) { load (cv, text); return; } if (cv.size()>0 && (cv[0] == "configure" || cv[0] == "config")) { load (cv, text); return; } if (cv.size()>0 && (cv[0] == "save" || cv[0] == "save")) { save (cv, text); return; } if (cv.size()>0 && cv[0] == "go") { goLineRow (cv, text); return; } if (cv.size()>0 && cv[0] == "find") { find (cv, text); return; } if (cv.size()>0 && cv[0] == "replace") { replace (cv, text); return; } if (cv.size() > 0 && cv[0] == "syntax") { SString smode; if (cv.size() != 2) { SString err = translate ("usage: "); err.append ("syntax none|simple|simple-dark|hunspell:en_US... "); messagelabel->setMessage (err, SMessageLabel::SS_ERR); return; } if (setHighlight (cv[1])) { editor->setFocus(); command->putHistory(text); } return; } if (cv.size() > 0 && cv[0] == "wordwrap") { if (cv.size() != 2 || (cv[1] != "true" && cv[1] != "false")) { SString err = translate ("usage: "); err.append ("wordwrap true|false"); messagelabel->setMessage (err, SMessageLabel::SS_ERR); return; } if (cv[1]=="true") { editor->setWordWrap (true); } else { editor->setWordWrap (false); } userProps.put ("yudit.editor.wordwrap", cv[1]); editor->setFocus(); command->putHistory(text); return; } SString mess ("syntax error: "); mess.append (SS_LB_LRE); mess.append ("'"); mess.append (text); mess.append ("'"); mess.append (SS_LB_PDF); messagelabel->setMessage (mess, SMessageLabel::SS_ERR); command->clear(); command->historyEnd(); //editor->setFocus(); } void SYudit::print (const SStringVector& args, const SString& str) { if (toolbar->printing) return; SString executable; SString printer; SString filename; SString hsize("10"); unsigned int i; bool shownl = false; bool islpr = false; double fontSize = messagebar->fontSize; SPrinter::SMedia media = SPrinter::A4; SPrinter::SOrientation orientation = SPrinter::PORTRAIT; for (i=1; i 1000.0) { fontSize = 1000.0; } if (fontSize < 1.0) { fontSize = 1.0; } } else if ((args[i] == "-out" || args[i] =="-o") && i+1 < args.size()) { i++; filename = completeFileName (args[i]); } else if ((args[i] == "-m" || args[i] =="-media") && i+1 < args.size()) { i++; if (args[i] == "A3") { media = SPrinter::A3; } else if (args[i] == "A4") { media = SPrinter::A4; } else if (args[i] == "A5") { media = SPrinter::A5; } else if (args[i] == "B4") { media = SPrinter::B4; } else if (args[i] == "B5") { media = SPrinter::B5; } else if (args[i] == "Executive") { media = SPrinter::Executive; } else if (args[i] == "Folio") { media = SPrinter::Folio; } else if (args[i] == "Ledger") { media = SPrinter::Ledger; } else if (args[i] == "Legal") { media = SPrinter::Legal; } else if (args[i] == "Letter") { media = SPrinter::Letter; } else if (args[i] == "Quarto") { media = SPrinter::Quarto; } else if (args[i] == "Statement") { media = SPrinter::Statement; } else if (args[i] == "Tabloid") { media = SPrinter::Tabloid; } else { media = SPrinter::A4; } } else if (args[i] == "-exec" && i+1 < args.size()) { i++; executable = args[i]; int ind = str.find("-exec"); if (ind > 0) { /* strlen ("-exec")*/ ind += 5; while (ind < (int) str.size() && (str[(unsigned int)ind] == ' ' || str[(unsigned int)ind] == '\t')) ind++; if (ind < (int) str.size()) { executable = SString (&str.array()[(unsigned int)ind], str.size()-(unsigned int)ind); i = args.size(); break; } } } else if (args[i] =="-e" && i+1 < args.size()) { /* strlen ("-e")*/ i++; executable = args[i]; int ind = str.find("-e"); if (ind > 0) { ind += 2; while (ind < (int) str.size() && (str[(unsigned int)ind] == ' ' || str[(unsigned int)ind] == '\t')) ind++; if (ind < (int) str.size()) { executable = SString (&str.array()[(unsigned int)ind], str.size()-(unsigned int)ind); i = args.size(); break; } } } else if (args[i] == "-break" || args[i] =="-b") { shownl = true; } else if (args[i] == "-L" || args[i] =="-landscape") { orientation = SPrinter::LANDSCAPE; } else { break; } } hsize.append ((char)0); double hsized=10.0; sscanf (hsize.array(), "%lf", &hsized); if (hsized < 2.0) hsized = 1.0; if (hsized > 100.0) hsized = 100.0; if (filename.size()==0 && executable.size()==0) { islpr = true; #ifdef USE_WINAPI executable = originalProperties["yudit.default.preview.command"]; executable.replaceAll("\\", "/"); executable.replaceAll("//", "/"); if (!addMytoolPrefix (&executable)) return; #else executable = "lpr"; #endif } if (i 0)) { messagelabel->setMessage (getPrintHelp(), SMessageLabel::SS_ERR); return; } SOutputStream os; if (executable.size()) { if (!islpr && !addMytoolPrefix (&executable)) return; if (printer.size()) { executable.append (" -P "); executable.append (printer); } //fprintf (stderr, "executable [%*.*s]\n", SSARGS (executable)); SPipe p(executable); os = p.getOutputStream(); if (!os.isOK()) { SString ems ("Can not execute: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (executable); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } } else { SFile f(filename); os = f.getOutputStream(); if (!os.isOK()) { SString ems ("Can not open: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (filename); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); } } SWriter writer(os); SString fontName = toolbar->fonts[toolbar->currentFont]; SPrinter p (writer, SPrinter::POSTSCRIPT, media, orientation); SUniPrint uniPrint(p, fontName, hsized, fontName, fontSize); SString text = editor->getSelectedText(); SString sel = currentFileName; if (text.size() == 0) { text = editor->getText(); } else { sel.append (" (excerpt)"); } uniPrint.setDocumentEmbedding (toolbar->currentEmbedding); uniPrint.setLineEndMark(shownl); uniPrint.setWordWrap (editor->getWordWrap()); toolbar->setPrinting(true); command->clear(); command->historyEnd(); editor->setFocus(); messagelabel->setMessage ( translate ("Printing..."), SMessageLabel::SS_NONE); if (!uniPrint.print (sel, text, true)) { toolbar->setPrinting (false); SString ems ("Printing failed on '"); ems.append (executable); ems.append (filename); ems.append ("'"); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } int pagecount = uniPrint.getPageCount(); char a[64]; if (pagecount >= 1) { SString tr(translate("Printed %d page(s).")); tr.append ((char)0); sprintf (a, tr.array(), pagecount); if (uniPrint.hasNative()) { SString ms ("Bitmap font printed (bad printing quality)."); ms.append (a); messagelabel->setMessage (ms, SMessageLabel::SS_WARN); } else { SString ms (a); messagelabel->setMessage (ms, SMessageLabel::SS_INFO); } } command->clear(); command->historyEnd(); SString op; for (i=strlen ("print "); isetPrinting (false); } void SYudit::load (const SStringVector& args, const SString& str) { caretIndex.put (currentFileName, caretNow); SString encode="utf-8"; bool hasyes = false; SString filename; unsigned int i; SString internal; for (i=1; i 0) { internal.append (lang); internal.append ("/"); } } internal.append ("FAQ.TXT"); i = args.size(); encode = "utf-8"; filename = internal; } if (args[0] =="howto" && args.size() >1) { internal = getPrefix(); internal.append ("/doc/"); SString lang = getLanguage(); if (helpStrings.get (args[0]) != 0) { lang = helpStrings[args[0]]; } if (lang.size()) { SString nd = internal; nd.append (lang); nd.append ("/"); nd.append ("HOWTO-"); nd.append (args[1]); nd.append (".txt"); SFile file (nd); if (file.size() > 0) { internal.append (lang); internal.append ("/"); } } internal.append ("HOWTO-"); internal.append (args[1]); internal.append (".txt"); i = args.size(); encode = "utf-8"; filename = internal; } if (args[0] =="test") { internal = getPrefix(); internal.append ("/doc/"); internal.append ("TestPage.txt"); i = args.size(); encode = "utf-8"; filename = internal; } if (args[0] =="configure" || args[0] =="config") { SString afile = currentFileName; currentFileName = "/dev/null"; /* trick to save properties */ saveProperties(); currentFileName = afile; SString internal = getHome();; internal.append ("/.yudit/yudit.properties"); i = args.size(); encode = "utf-8"; filename = internal; } if (filename.size()==0) { if (isetMessage (translate ("usage: open -e utf-8 -yes filename"), SMessageLabel::SS_ERR); return; } filename = currentFileName; } if (!hasyes && toolbar->modified) { messagelabel->setMessage (translate ("Unsaved changes. Try -yes option"), SMessageLabel::SS_ERR); return; } if (!hasyes && toolbar->printing) { messagelabel->setMessage (translate ("Pending printing job. Try -yes option"), SMessageLabel::SS_ERR); return; } SEncoder utf8("utf-8-s"); SEncoder enc(encode); if (!enc.isOK()) { SString ems = translate ("Unknown encoding: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (encode); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } SFile f(filename); SFileImage im = f.getFileImage(); if (f.size()<0 || im.size()<0 || im.array()==0) { if (hasyes) { lastencoding = encode; command->clear(); currentFileName = filename; toolbar->setFileName(currentFileName, lastencoding); setFileTitle (); editor->clear(); editor->setFocus(); toolbar->setModified(false); } SString ems = translate ("Can not read: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (filename); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } SString text (im.array(), f.size()); //fprintf (stderr, "BOTTLE\n"); SV_UCS4 ucs4 = enc.decode (text); //fprintf (stderr, "BOTTLE - END\n"); bool sft = false; #ifdef USE_WINAPI SToolBar::SFormatIndex ft=SToolBar::SS_FORMAT_DOS; #else SToolBar::SFormatIndex ft=SToolBar::SS_FORMAT_UNIX; #endif bool hadlinebreak = false; if (ucs4.size() || ucs4[ucs4.size()-1] == (SS_UCS4) '\r' || ucs4[ucs4.size()-1] == (SS_UCS4) '\n' || ucs4[ucs4.size()-1] == (SS_UCS4) 0x2029) { switch (ucs4[ucs4.size()-1]) { case '\n': ft = (ucs4.size()>1 && ucs4[ucs4.size()-2]=='\r') ? SToolBar::SS_FORMAT_DOS : SToolBar::SS_FORMAT_UNIX; hadlinebreak = true; break; case '\r': ft = SToolBar::SS_FORMAT_MAC; hadlinebreak = true; break; case 0x2029: ft = SToolBar::SS_FORMAT_PS; hadlinebreak = true; break; } } else { ft = SToolBar::SS_FORMAT_UNIX; } sft = (toolbar->currentParagraphSeparator != (unsigned int) ft); text = utf8.encode (ucs4); editor->clear(); editor->setText(text); editor->setCursorIndex(SCursorIndex(0,0)); SString ems = translate ("Opened: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (filename); ems.append ("'"); ems.append (SS_LB_PDF); ems.append ("."); if (sft) { ems.append (translate (" Line Break:")); ems.append (translate (toolbar->paragraphBreakStrings[ft])); } if (!hadlinebreak) { ems.append (translate(" Incomplete Last Line...")); } if (sft) { toolbar->setParagraphSeparator ((int) ft, false); SString currentParagraphSeparator = toolbar->paragraphBreaks[toolbar->currentParagraphSeparator]; editor->setParagraphSeparator (currentParagraphSeparator, false); } toolbar->setModified (false); editor->setFocus(); /*FIXME: load and set currentFileName */ lastencoding = encode; command->clear(); currentFileName = filename; toolbar->setFileName(currentFileName, lastencoding); setFileTitle (); messagelabel->setMessage (ems, sft ? SMessageLabel::SS_WARN : SMessageLabel::SS_INFO); const STextIndex* sindex = caretIndex.get (filename); if (sindex) { editor->setCursorIndex(SCursorIndex(sindex->line, sindex->index)); } editor->setFocus(); } void SYudit::save (const SStringVector& args, const SString& str) { SString encode="utf-8"; SString filename; unsigned int i; bool hasyes = false; for (i=1; isetMessage (translate ("usage: save -e utf-8 -yes filename"), SMessageLabel::SS_ERR); return; } filename = completeFileName (currentFileName); } if (!hasyes && newFileExists (filename)) { SString ems = translate ("File exists. Use -yes option."); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } SEncoder utf8("utf-8-s"); SEncoder enc(encode); if (!enc.isOK()) { SString ems = translate ("Unknown encoding: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (encode); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } SFile f(filename); SOutputStream os = f.getOutputStream(); if (!os.isOK()) { SString ems = translate ("Can not write: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (filename); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } SWriter writer(os); SString text = editor->getText(); SV_UCS4 ucs4 = utf8.decode (text); bool completed = false; if (ucs4.size() && ucs4[ucs4.size()-1] != (SS_UCS4) '\r' && ucs4[ucs4.size()-1] != (SS_UCS4) '\n' && ucs4[ucs4.size()-1] != (SS_UCS4) 0x2029) { completed = true; } text = enc.encode (ucs4); if ((text.size() > 0 && !writer.write (text)) || !writer.close()) { SString ems = translate ("Error while writing: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (filename); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } lastencoding = encode; currentFileName = filename; toolbar->setFileName(currentFileName, lastencoding); setFileTitle(); command->clear(); command->historyEnd(); SString ems = translate ("Wrote: "); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (filename); ems.append ("'"); ems.append (SS_LB_PDF); ems.append ("."); if (completed) ems.append (translate(" Incomplete Last Line...")); messagelabel->setMessage (ems, (completed) ? SMessageLabel::SS_WARN : SMessageLabel::SS_INFO); toolbar->setModified (false); editor->setFocus(); caretIndex.put (currentFileName, caretNow); } /** * move the cursor */ void SYudit::goLineRow (const SStringVector& args, const SString& str) { if (args.size () < 2 || args.size() > 3) { SString ems = translate ("usage: go line [column] "); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } SString l=args[1]; SString c; if (args.size()==3) c=args[2]; l.append ((char)0); c.append ((char)0); int li=0; int ci=0; sscanf (l.array(), "%d", &li); sscanf (c.array(), "%d", &ci); if (li <= 0) { editor->setCursorIndex(SCursorIndex(0, 0, true)); } else if (ci <= 0) { editor->setCursorIndex(SCursorIndex((unsigned int)(li-1), 0, true)); } else { editor->setCursorIndex(SCursorIndex((unsigned int)(li-1), (unsigned int) (ci-1), false)); } } /** * find text */ void SYudit::find (const SStringVector& args, const SString& str) { if (args.size () != 2) { SString ems = translate ("usage: find text"); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } if (!editor->find (args[1])) { SString ems = translate ("search string not found."); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (args[1]); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } } /** * replace text */ void SYudit::replace (const SStringVector& args, const SString& str) { if (args.size () != 3 || args[1].size()==0) { SString ems = translate ("usage: replace original new"); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); return; } if (!editor->replace (args[1], args[2])) { SString ems = translate ("search string not found."); ems.append (SS_LB_LRE); ems.append ("'"); ems.append (args[1]); ems.append ("'"); ems.append (SS_LB_PDF); messagelabel->setMessage (ems, SMessageLabel::SS_ERR); } return; } void SYudit::focusOutRequest (void *source) { if (source == editor) { command->setFocus(); } else { editor->setFocus(); } } void SYudit::focusChanged (void *source, bool in) { } void SYudit::caretMoved (void *source, unsigned int _line, unsigned int _column, bool _before) { if (source != editor) return; caretMoved(); } void SYudit::caretMoved () { STextIndex ti = editor->getCaretArrowFrom (); if (ti.line != caretNow.line) messagebar->setRow(ti.line+1); if (ti.index != caretNow.index) messagebar->setColumn (ti.index); if ((caretNow.line != ti.line || caretNow.index != ti.index) && !toolbar->printing) { messagelabel->setMessage(""); } caretNow = ti; toolbar->directionChanged (editor->isEmbedStateLR()); if (ti.index == 0) { messagebar->setGlyphInfo (0, SString()); } else { STextIndex tn (ti.line, ti.index-1); const SGlyph* g = editor->glyphAt(tn); SV_UCS4 chars; if (g!=0) { chars = g->getChars(); } messagebar->setGlyphInfo (g, editor->encode (chars)); } } /** * compose an escaped file name. */ SString SYudit::composeFileNameCommand (const SString& prefix, const SString &encoding, const SString& file) { SString ret (prefix); ret.append ("-e "); ret.append (encoding); ret.append (" "); ret.append (quoteFileName (file)); return SString(ret); } SString SYudit::quoteFileName (const SString& file) { SString ret; if (file.find(" ") < 0) { ret.append (file); } else if (file.find ("\"") < 0) { ret.append ("\""); ret.append (file); ret.append ("\""); } else { ret.append ("\'"); ret.append (file); ret.append ("\'"); } return SString(ret); } SString SYudit::completeFileName(const SString& _file) { /* home directory substitution ~/ */ SString file(_file); if (file.size() > 2 && file[0] == '~' && file[1]=='/') { file.remove (0, 2); SString homedir = getHome(); homedir.append ("/"); file.insert (0, homedir); } return SString(file); } /** * return false if it is not a new file or the file does not exist. */ bool SYudit::newFileExists (const SString& filename) { if (filename == currentFileName) return false; SFile f (filename); if (f.size() <0) return false; return true; } void SYudit::saveProperties () { /* do not save proeprties if it is being edited */ SString cfile = getHome();; cfile.append ("/.yudit/yudit.properties"); if (currentFileName == cfile) return; //userProps.put ("yudit.default.printer", lastprinterOption); //userProps.put ("yudit.default.previewer", lastpreviewOption); SString s; s = toolbar->fonts[toolbar->currentFont]; userProps.put ("yudit.editor.font", s); s = toolbar->inputs[toolbar->currentInput]; userProps.put ("yudit.editor.input", s); s = toolbar->fontsizes[toolbar->currentFontSize]; userProps.put ("yudit.editor.fontsize", s); s = ""; s.print ((unsigned int) getSize().width); s.append ("x"); s.print ((unsigned int) getSize().height); userProps.put ("yudit.default.geometry", s); if (freehand) { SString s = freehand->getConverter(); if (s.size()) { userProps.put ("yudit.freehand.converter", s); } } /* create a property file that has the original properties and * the ones that I changed. */ /* create a property list that has changes since last save */ SProperties changes; for (unsigned int i=0; ifind ("# Autosave will eliminate all comments and '\\' (line joiner) characters.") > 0) { SString a; a.append ("# From version 2.7.6 Yudit preserves comment lines\n"); a.append ("# that start with a '#' and preceed the property \n"); a.append ("# line they refer to. "); full.put ("yudit.background.#", a); } } if (!::saveProperties (configFile, full)) { SString str = translate ("Could not save preferences"); str.append (" "); str.append (configFile); messagelabel->setMessage (str, SMessageLabel::SS_ERR); fprintf (stderr, "Could not save properties into %*.*s.\n", SSARGS(configFile)); } } bool SYudit::dropped (void* p, const SString& mimetype, const SString& data) { if (textDialog != 0 && textDialog->isShown()) return false; //fprintf (stderr, "SYudit::dropped %*.*s [%*.*s]\n", SSARGS(mimetype), SSARGS(data)); SStringVector v (data, "\r\n"); SString file=v[0]; if (mimetype == "text/uri-list") { // FIX %XX SString ret; char* c = 0; char buff[3]; for (unsigned i=0; isetMessage (msg, SMessageLabel::SS_ERR); return false; } file.remove (0, strlen ("file:")); } if (fileDialog != 0 && fileDialog->isShown()) { fileDialog->center(); fileDialog->setFileName (file); return true; } SString cm ("open -e ");; cm.append (lastencoding); cm.append (" "); if (toolbar->modified) { messagelabel->setMessage (translate ("Unsaved changes. Enter discards!"), SMessageLabel::SS_ERR); cm.append ("-yes "); cm.append (quoteFileName (file)); command->setText(cm); command->setCursorIndex (SCursorIndex(0,10000)); command->setFocus(); } else { messagelabel->setMessage (translate ("open -yes -e encoding file"), SMessageLabel::SS_INFO); cm.append (quoteFileName (file)); command->setText(cm); command->setCursorIndex (SCursorIndex(0,10000)); command->putHistory(cm); SStringVector cv; cv.smartSplit (cm); load (cv, cm); } return true; } void SYudit::createFileDialog () // If needed { if (fileDialog) return; fileDialog = new SFileDialog(); fileDialog->setModal (this); fileDialog->setBackground (originalProperties["yudit.background"]); fileDialog->setLabelForeground (originalProperties["yudit.label.foreground"]); fileDialog->setTitleForeground (originalProperties["yudit.title.foreground"]); fileDialog->setSliderBackground (originalProperties["yudit.slider.background"]); SStringVector enc; if (originalProperties.get("yudit.editor.filetypes")) { //SString s = originalProperties["yudit.editor.filetypes"]; //fprintf (stderr, "Specified filetypes: %*.*s\n", SSARGS (s)); enc.append (SStringVector (originalProperties["yudit.editor.filetypes"])); } SBinHashtable ph; unsigned int ic=0; for (ic=0; icsetFont (font, fontSize); fileDialog->setFileTypes (addEnc); SIcon* icon = SIconFactory::getIcon("Yudit"); fileDialog->setApplicationImage (icon->getImage ()); } void SYudit::createHighlightDialog () // If needed { if (highlightDialog) return; highlightDialog = new SHighlightD(); highlightDialog->setModal (this); highlightDialog->setBackground (originalProperties["yudit.background"]); highlightDialog->setLabelForeground (originalProperties["yudit.label.foreground"]); highlightDialog->setTitleForeground (originalProperties["yudit.title.foreground"]); highlightDialog->setSliderBackground (originalProperties["yudit.slider.background"]); /* set the filetypes */ SString font = originalProperties["yudit.default.font"]; SString fontSizeString=originalProperties["yudit.default.fontsize"]; double fontSize=0; fontSizeString.append ((char)0); sscanf (fontSizeString.array(), "%lf", &fontSize); if (fontSize < 2.0) fontSize = 2.0; highlightDialog->setFont (font, fontSize); SIcon* icon = SIconFactory::getIcon("Yudit"); highlightDialog->setApplicationImage (icon->getImage ()); } void SYudit::createKMapDialog () { if (kmapDialog) return; kmapDialog = new SKMapDialog (); kmapDialog->setModal (this); kmapDialog->setXInputs (originalProperties["yudit.editor.xinputs"]); kmapDialog->setBackground (originalProperties["yudit.background"]); kmapDialog->setLabelForeground (originalProperties["yudit.label.foreground"]); kmapDialog->setTitleForeground (originalProperties["yudit.title.foreground"]); kmapDialog->setSliderBackground (originalProperties["yudit.slider.background"]); /* set the filetypes */ SString font = originalProperties["yudit.default.font"]; SString fontSizeString=originalProperties["yudit.default.fontsize"]; double fontSize=0; fontSizeString.append ((char)0); sscanf (fontSizeString.array(), "%lf", &fontSize); if (fontSize < 2.0) fontSize = 2.0; kmapDialog->setFont (font, fontSize); /* button size bug workaround */ SDimension dim = kmapDialog->getPreferredSize(); kmapDialog->resize(SDimension(dim.width+2, dim.height+2)); SIcon* icon = SIconFactory::getIcon("Yudit"); kmapDialog->setApplicationImage (icon->getImage ()); } void SYudit::createTextDialog () { if (textDialog) return; textDialog = new STextDialog(); textDialog->setModal (this); textDialog->setBackground (originalProperties["yudit.background"]); textDialog->setLabelForeground (originalProperties["yudit.label.foreground"]); textDialog->setTitleForeground (originalProperties["yudit.title.foreground"]); SString font = originalProperties["yudit.default.font"]; SString fontSizeString=originalProperties["yudit.default.fontsize"]; double fontSize=0; fontSizeString.append ((char)0); sscanf (fontSizeString.array(), "%lf", &fontSize); if (fontSize < 2.0) fontSize = 2.0; textDialog->setFont (font, fontSize); SIcon* icon = SIconFactory::getIcon("Yudit"); textDialog->setApplicationImage (icon->getImage ()); } /* * SFreeHandListener * FIXME: */ void SYudit::freeHandTextChanged (void* source, const SString& lookup) { if (lookup.size()==0) return; if (editor->isFocused ()) { editor->insertEditorText (lookup); } else if (command->isFocused()) { command->insertEditorText (lookup); } } void printl (const SLayout lo) { SLocation l = lo.getLocation(); SDimension d = lo.getDimension(); fprintf (stderr, "l= (%d,%d) d= (%u,%u) l2 =(%d,%d)\n", l.x, l.y, d.width, d.height, l.x + (int) d.width, l.y + d.height); } void SYudit::showFreeHand(bool is) { if (!(is ^ freeHandShown)) return; /* need to create */ bool newhand = (freehand==0); freeHandShown = is; if (freehand==0) { freehand = new SFreeHand (); freehand->setBackground (originalProperties["yudit.background"]); freehand->setLabelForeground (originalProperties["yudit.label.foreground"]); freehand->setForeground (originalProperties["yudit.title.foreground"]); freehand->setDrawingForeground (SColor("green"), SColor("yellow")); freehand->setDrawingBackground (SColor("black")); freehand->setConverter (originalProperties["yudit.freehand.converter"]); freehand->setSliderBackground ( originalProperties["yudit.slider.background"]); freehand->setFreeHandListener (this); SString font = originalProperties["yudit.default.font"]; SString fontSize=originalProperties["yudit.default.fontsize"]; double df=0; fontSize.append ((char)0); sscanf (fontSize.array(), "%lf", &df); if (fontSize < 2.0) df = 2.0; freehand->setButtonFont (font, df); font = toolbar->fonts[toolbar->currentFont]; fontSize = toolbar->fontsizes[toolbar->currentFontSize]; fontSize.append ((char)0); if (sscanf (fontSize.array(), "%lf", &df)==0 || df < 2.0) df = 2.0; freehand->setFont (font, df); freeHandHeight = freehand->getPreferredSize().height; } SLocation l = editorLayout.getLocation (); SDimension d = editorLayout.getDimension (); SLocation sl = sliderLayout.getLocation(); SDimension sd = sliderLayout.getDimension(); int hp = l.y + (int) d.height -(int)freeHandHeight; if (is) { editor->setLayout ( SLayout ( SLocation (l.x, l.y), SLocation (l.x+(int) d.width, hp), SLocation (0, 0), SLocation (100, 100) ) ); slider->setLayout (SLayout ( SLocation (sl.x, sl.y), SLocation (sl.x+(int)sd.width, hp), SLocation (100, 0), SLocation (100, 100) )); freehand->setLayout ( SLayout ( SLocation (l.x, hp), SLocation (sl.x + (int) sd.width, hp+(int)freeHandHeight), SLocation (0, 100), SLocation (100, 100) ) ); SLocation ml = freehand->getLayout().getLocation (layout, getSize()); SDimension md = freehand->getLayout().getDimension (layout, getSize()); } else { editor->setLayout (editorLayout); slider->setLayout (sliderLayout); /* move it away */ freehand->setLayout ( SLayout ( SLocation (l.x, -(int)hp -(int)freeHandHeight-1), SLocation (sl.x + (int) sd.width, -1), SLocation (0, 0), SLocation (0, 0) ) ); } if (newhand) { add (freehand); editor->setFocus(); } _resized (); } /** * Try to prefix executable with mytool -pipecmd. * @return false if mytool not found. */ bool SYudit::addMytoolPrefix (SString* executable) { if (executable->size()==0) return false; #ifdef USE_WINAPI SString pr = getPrefix(); pr.append ("/bin/mytool.exe"); SFile f (pr); if (f.size () <= 0) { SString message=translate ("Command not found: "); message.append (SS_LB_RLE); message.append ("'"); message.append (pr); message.append ("'"); message.append (SS_LB_PDF); messagelabel->setMessage (message, SMessageLabel::SS_ERR); return false; } #else SString pr = getPrefix(); pr.append ("/bin/mytool"); SFile f0 (pr); if (f0.size () <= 0) { pr = getPrefix(); SStringVector pv(pr, "/"); if (pv.size() > 1) { pv.truncate (pv.size()-2); } pr = pv.join ("/"); pr.insert (0, "/"); pr.append ("/bin/mytool"); SFile f0 (pr); if (f0.size () <= 0) { SString message=translate ("Command not found: "); message.append (SS_LB_LRE); message.append ("'"); message.append (pr); message.append ("'"); message.append (SS_LB_PDF); messagelabel->setMessage (message, SMessageLabel::SS_ERR); return false; } } #endif SStringVector v; v.smartSplit (*executable); if (!commandExists (v[0])) { SString message=translate ("Command not found: "); message.append (SS_LB_LRE); message.append ("'"); message.append (v[0]); message.append ("'"); message.append (SS_LB_PDF); messagelabel->setMessage (message, SMessageLabel::SS_ERR); return false; } pr.insert (0, "\""); pr.append ("\""); pr.append (" -pipecmd "); executable->insert (0, pr); return true; } /** * Set the title to current filename. */ void SYudit::setFileTitle () { SDir d; /* this will chop off filename */ d.cd (currentFileName); SString dn = d.getName (); SString fn; SStringVector v(currentFileName, "/"); if (v.size()) { fn.append (v[v.size()-1]); } SString t = fn; // FIXME: do we need the directory? dn = ""; if (dn.size () > 0) { t.append (" ("); t.append (dn); t.append (")"); } t.append (" Yudit-"); t.append (SD_YUDIT_VERSION); setTitle (t); } /** * Translate our string highlight mode to an integer * @return -1 if it can not be translated. */ static SString translateHighlightMode (const SString& hl) { if (hl == "none" || hl == "simple" || hl == "simple-dark") { return SString(hl); } if (SSyntax::isSupported (hl)) return SString(hl); return SString(""); } /** * \return negative on fail or the number if it is specified * as +NUMBER. */ static int getLineNumber (const SString& s) { if (s.size() < 2 || s.peek(0) != '+') return -1; int line = 0; for (unsigned int i=1; i= '0' && s.peek(i) <= '9') { if (line < 100000000) { line = line * 10; line += (s.peek(i) - '0'); } } else { return -1; } } return line; } static SString getPrintHelp () { SString pstr = translate ("usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]"); pstr.append (" [-m A4] [-L]"); return SString (pstr); } ./gui/Makefile0000644000175000017500000000466210727353464013304 0ustar henrichhenrichinclude ../Makefile.conf TARGETOBJS=SYudit.o SToolBar.o SMessageBar.o SMessageLabel.o \ SKMapPanel.o SKMapDialog.o SHighlightD.o TARGETDIR= MAINOBJ=Main.o MAIN=yudit LOCALES=$(wildcard locale/*) ifeq ($(SPLATFORM),WINDOWS) TARGET=gui.lib OBJS=$(subst .o,.obj,$(TARGETOBJS)) MAINOBJS=$(subst .o,.obj,$(MAINOBJ)) SLIBS=/libpath:../stoolkit stoolkit.lib SWINLIBS=/libpath:../swindow swindow.lib SWIDGETLIBS=/libpath:../swidget swidget.lib SGUILIBS=/libpath:../gui /subsystem:WINDOWS gui.lib MYLIBS=/link /subsystem:WINDOWS $(SGUILIBS) $(SWIDGETLIBS) $(SWINLIBS) $(SLIBS) $(SWINDOW_LIBS) $(ALL_LIBS) RESOURCE=yudit.res else TARGET=libgui.a OBJS=$(TARGETOBJS) MAINOBJS=$(MAINOBJ) SLIBS=-L../stoolkit -lstoolkit SWINLIBS=-L../swindow -lswindow SWIDGETLIBS=-L../swidget -lswidget SGUILIBS=-L../gui -lgui MYLIBS=$(SGUILIBS) $(SWIDGETLIBS) $(SWINLIBS) $(SLIBS) $(ALL_LIBS) RESOURCE= endif .PHONY: messages all: $(TARGET) $(MAIN) $(MAIN): $(TARGET) $(MAINOBJS) $(RESOURCE) $(LD) -o yudit $(MAINOBJS) $(RESOURCE) $(MYLIBS) # # This is a windows thing # yudit.res: rc /Fo $@ yudit.rc gui.lib: $(OBJS) $(AR)$@ $(subst swin32/,,$(OBJS)) libgui.a: $(OBJS) $(AR) $@ $(OBJS) $(RANLIB) $@ %.o:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .o,.cpp,$@) %.obj:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .obj,.cpp,$@) depend: $(CXX) -M $(CPPFLAGS) $(patsubst %.o,%.cpp,$(OBJS)) > .depend install: @for i in $(LOCALES); do \ if test ! -d $(DESTDIR)/$(datadir)/yudit/$$i/LC_MESSAGES; then \ mkdir -p $(DESTDIR)/$(datadir)/yudit/$$i/LC_MESSAGES; \ fi ; \ $(INSTALL_DATA) $$i/LC_MESSAGES/messages.[mp]o \ $(DESTDIR)/$(datadir)/yudit/$$i/LC_MESSAGES ; \ echo installing messages for $$i; \ done rm -f $(DESTDIR)/$(bindir)/yudit $(INSTALL_PROGRAM) $(MAIN) $(DESTDIR)/$(bindir) messages: @if [ $(MSGMERGE) != ":" ] ; then \ echo "start translating messages"; \ xgettext --c++ --keyword=translate ../swidget/*.cpp *.cpp; \ for i in $(LOCALES); do \ echo $$i/LC_MESSAGES/messages.po ; \ cd $$i/LC_MESSAGES ; touch messages.po; \ $(MSGMERGE) --width=100 --strict \ messages.po ../../../messages.po > messages.pod; \ if [ $$? != 0 ]; then \ cd ../../..; \ exit 1; \ fi; \ mv messages.pod messages.po; \ msgfmt -o messages.mo messages.po; \ cd ../../..; \ done ; \ echo "end translating messages" ; \ fi clean: rm -f *.o *.obj *.o *.exe $(TARGET) $(MAIN) ifeq (.depend, $(wildcard .depend)) include .depend endif ./gui/SHighlightD.cpp0000644000175000017500000002362010730217722014467 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gui/SHighlightD.h" #include "swidget/SIcon.h" #include "swidget/SIconFactory.h" #include "stoolkit/SUtil.h" #include "stoolkit/SEncoder.h" #include "stoolkit/syntax/SSyntax.h" /** * Remark: * Category Highlight * +-------+ +-------+ * | | | | * | | | | * | | | | * +-------+ +-------+ * Folder * OK Cancel */ SHighlightD::SHighlightD (void) { setFrameListener (this); isCancel = true; yesButton = new SButton (translate ("OK"), SIconFactory::getIcon("Yes")); yesButton->setAlignment (SD_Center); yesButton->setButtonListener (this); cancelButton = new SButton (translate ("Cancel"), SIconFactory::getIcon("Cancel")); cancelButton->setAlignment (SD_Center); cancelButton->setButtonListener (this); add (yesButton); add (cancelButton); categoryListBox = new SListBox(translate ("Category")); categoryListBox->setListListener (this); add (categoryListBox); highlightListBox = new SListBox(translate ("Highlighting")); highlightListBox->setListListener (this); add (highlightListBox); folderTitleLabel = new SLabel (translate ("Folder:")); add (folderTitleLabel); folderNameLabel = new SLabel ("FolderNameLabel"); add (folderNameLabel); remarkTitleLabel = new SLabel (translate ("Remark:")); add (remarkTitleLabel); remarkNameLabel = new SLabel (""); add (remarkNameLabel); recalc(); } void SHighlightD::setApplicationImage (const SImage& image) { getComponentWindow()->setApplicationImage (image); } SHighlightD::~SHighlightD () { } /** * recalcualte the geometry * it is based upon 300x200 layout. * preferredSize will be calculated here. */ void SHighlightD::recalc () { unsigned int bw = 1; if (yesButton->getPreferredSize().width > bw ) { bw = yesButton->getPreferredSize().width; } if (cancelButton->getPreferredSize().width > bw ) { bw = cancelButton->getPreferredSize().width; } unsigned int bh= cancelButton->getPreferredSize().height; yesButton->setLayout ( SLayout ( SLocation (5, 195-bh), SLocation ((int)bw + 5 , 195), SLocation (0, 100), SLocation (0, 100) ) ); cancelButton->setLayout ( SLayout ( SLocation (295-(int)bw, 195-bh), SLocation (295, 195), SLocation (100, 100), SLocation (100, 100) ) ); int currenty = 195-bh-5; SDimension fts = folderTitleLabel->getPreferredSize(); folderTitleLabel->setLayout ( SLayout ( SLocation (5, currenty-(int)fts.height), SLocation ((int)fts.width+5, currenty), SLocation (0, 100), SLocation (0, 100) ) ); SDimension fns = folderNameLabel->getPreferredSize(); folderNameLabel->setLayout ( SLayout ( SLocation ((int)fts.width+10, currenty-(int)fts.height), SLocation (295, currenty), SLocation (0, 100), SLocation (100, 100) ) ); currenty = currenty-fts.height-5; SDimension rts = remarkTitleLabel->getPreferredSize(); remarkTitleLabel->setLayout ( SLayout ( SLocation (5, 5), SLocation ((int)rts.width+5, (int)rts.height+5), SLocation (0, 0), SLocation (0, 0) ) ); SDimension rtn = remarkNameLabel->getPreferredSize(); remarkNameLabel->setLayout ( SLayout ( SLocation ((int)rts.width+10, 5), SLocation (295, (int)rts.height+5), SLocation (0, 0), SLocation (100, 0) ) ); int topY = rts.height+5+5; categoryListBox->setLayout ( SLayout ( SLocation (5, topY), SLocation (142, currenty), SLocation (0, 0), SLocation (50, 100) ) ); highlightListBox->setLayout ( SLayout ( SLocation (153, topY), SLocation (295, currenty), SLocation (50, 0), SLocation (100, 100) ) ); unsigned int listW = categoryListBox->getPreferredSize().width; if (highlightListBox->getPreferredSize().width > listW) { listW = highlightListBox->getPreferredSize().width; } if (yesButton->getPreferredSize().width > listW) { listW = yesButton->getPreferredSize().width; } if (cancelButton->getPreferredSize().width > listW) { listW = cancelButton->getPreferredSize().width; } unsigned int h = 5 + yesButton->getPreferredSize().height + 5 + folderTitleLabel->getPreferredSize().height + 5 + 5 * folderTitleLabel->getPreferredSize().height + 5 + remarkTitleLabel->getPreferredSize().height + 5; SDimension minimumSize = SDimension (20 + listW * 2, h); preferredSize = SDimension (350, 250); if (preferredSize.width < minimumSize.width) preferredSize.width = minimumSize.width; if (preferredSize.height < minimumSize.height) preferredSize.height = minimumSize.height; /* This was out layout... */ forceLayout (SLayout (SDimension (300,200))); /* But this one is the one that works */ setLayout (SLayout (preferredSize)); setMinimumSize (minimumSize); resize (preferredSize); } SString SHighlightD::getHighlightName () { if (currentCat == "simple") return currentHi; SString ret; ret.append (currentCat); ret.append (":"); ret.append (currentHi); return SString(ret); } bool SHighlightD::getInput (const SString& titleString) { setTitle (titleString); center(); isCancel = true; show(); wait(); hide(); return !isCancel; } // Populate Category void SHighlightD::populate () { SStringVector l = SSyntax::getCategories (); l.insert (0, "simple"); categoryListBox->setText (l); } // Populate Highlight in a category void SHighlightD::populate (const SString& cat) { SStringVector l = (cat == "simple") ? SStringVector("none,simple,simple-dark", ",") : SSyntax::getAvaliableList (cat); highlightListBox->setText (l); if (l.size()) { highlightListBox->selectItem (0); currentHi = l[0]; highlightChanged (); } else { currentHi = ""; highlightChanged (); } } /** * buttons call this */ void SHighlightD::buttonPressed (void* source, const SAccelerator* acc) { if (source == cancelButton) { isCancel = true; hide(); return; } if (source == yesButton) { isCancel = false; hide(); return; } } /** * STextListListener */ void SHighlightD::itemSelected (void* source, const SAccelerator* acc) { if (source == categoryListBox->textList) { SString s = categoryListBox->textList->getLastSelectedText(); currentCat = s; populate (s); highlightChanged (); return; } if (source == highlightListBox->textList) { SString s = highlightListBox->textList->getLastSelectedText(); currentHi = s; highlightChanged (); return; } } bool SHighlightD::close (SPanel* comp) { isCancel =true; hide(); return false; } /** * set the filename - cut off the dirpart */ void SHighlightD::setHighlightName (const SString& _hm) { SStringVector v (_hm, ":", true); SString cat = "simple"; SString h = "simple"; if (v.size() == 0) // never { h = "none"; } else if (v.size() == 1) { h = v[0]; } else { cat = v[0]; h = v[1]; } if (h=="") h = "none"; currentCat = cat; currentHi = h; populate (); populate (cat); categoryListBox->selectText (cat); highlightListBox->selectText (h); highlightChanged (); } void SHighlightD::highlightChanged () { SString s = currentCat; s.append (":"); s.append (currentHi); SString dir = SSyntax::getFolderFor (s); folderNameLabel->setText (dir); SString mf = SSyntax::getMissingFile (s); if (mf.size()) { SString s = translate ("Can not read: "); s.append (mf); remarkNameLabel->setText (s); } else { remarkNameLabel->setText (""); } } void SHighlightD::setTitleForeground (const SColor& fg) { yesButton->setForeground (fg); cancelButton->setForeground (fg); folderTitleLabel->setForeground (fg); remarkTitleLabel->setForeground (fg); categoryListBox->setLabelForeground (fg); highlightListBox->setLabelForeground (fg); } void SHighlightD::setLabelForeground (const SColor& fg) { folderNameLabel->setForeground (fg); remarkNameLabel->setForeground (fg); } void SHighlightD::setBackground (const SColor& bg) { SFrame::setBackground (bg); } void SHighlightD::setForeground (const SColor& fg) { SFrame::setForeground (fg); setLabelForeground (fg); setTitleForeground (fg); } void SHighlightD::setSliderBackground (const SColor& bg) { categoryListBox->setSliderBackground (bg); highlightListBox->setSliderBackground (bg); } void SHighlightD::setFont (const SString& font, double fontSize) { folderNameLabel->setFont (font, fontSize); folderTitleLabel->setFont (font, fontSize); yesButton->setFont (font, fontSize); cancelButton->setFont (font, fontSize); remarkTitleLabel->setFont (font, fontSize); remarkNameLabel->setFont (font, fontSize); categoryListBox->setFont (font, fontSize); highlightListBox->setFont (font, fontSize); recalc(); } void SHighlightD::setFontSize (double fontSize) { folderNameLabel->setFontSize (fontSize); folderTitleLabel->setFontSize (fontSize); yesButton->setFontSize (fontSize); cancelButton->setFontSize (fontSize); remarkTitleLabel->setFontSize (fontSize); remarkNameLabel->setFontSize (fontSize); categoryListBox->setFontSize (fontSize); highlightListBox->setFontSize (fontSize); recalc(); } ./gui/locale/0000755000175000017500000000000010724001346013055 5ustar henrichhenrich./gui/locale/sl/0000755000175000017500000000000010724001346013473 5ustar henrichhenrich./gui/locale/sl/LC_MESSAGES/0000755000175000017500000000000010733117073015265 5ustar henrichhenrich./gui/locale/sl/LC_MESSAGES/messages.mo0000644000175000017500000001422610733117073017436 0ustar henrichhenrichfL|     # 2 B I T ] i o w   + (    ! + E c i q }  1         ' + 7 : K \ _ h o #r " %    % 1 9 E !T v       !5 W _ c z         /@Vo"P,"H=k #?O ` j t  ,,>S[d!s( .!2J Zflq 3+34_$  5=B'V&~*$/% DORdt      'BSn!_Y!t\^ I;aB>?(X+/ HU 6.Z%EY=RK<*"]c@`4O$Sdf0')_5F8 L,b3CQ2!P:JWGA#9&VD- Te1M7N [ Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:ConvertersCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.8.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-11-11 22:10+0100 Last-Translator: Roman Maurer Language-Team: Slovenian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Prelom vrstice:Dostopne preslikave tipkNajboljša vrsta datotekeVečje(__Z__)Pojdi vNi moč ustvariti podane mape. Ni moč iti v podano mapo. Ni moč brati: Ni moč pisati: PrekličiKandidatiKategorijaZnaki:ZbrišiStolpec:PretvornikiTrenutna preslikava tipk:Trenutne preslikave tipkDOSUsmerjenoNastavljena je bila smer izbranega besedila.Nastavljena je bila smer izbranega besedila.Napaka pri pisanju: F-tipkaDatotekaVrsta datotekeDatoteka obstaja. Vseeno shranim?Datoteka obstaja. Uporabite izbiro -yes.Datoteka:Filter:Poišči(__Q__)MapaMapa:Mape je moč ustvariti le v trenutnem imeniku.PisavaVelikost pisave:Podatki o sestavljenem:Vnos s pisanjemPoudarjanjeDomovVhodVhod s tipkovnicePrelom vrsticeVrstica:PoglejMACUstvari mapoNeNičesar za ponoviti.Ničesar za razveljaviti.V reduOdprto: IzhodPSPotekajoče tiskalniško opravilo. Vseeno končam? Poteka tiskalniško opravilo. Enter konča!Poteka tiskalniško opravilo. Poskusite izbiro -yes.Predogled tiskanja(__w__)Predogled tiskanja(__w__) (opravilo)Natisnjenih strani: %d.Tiskanje...Opomba:Prikaži skriteM__a__njšePodana mapa že obstaja. Zamahi:UnixNeznano kodiranje: Neshranjene spremembe. Vseeno končam? Neshranjene spremembe. Vseeno odprem? Neshranjene spremembe. Enter jih zanemari!Neshranjene spremembe. Enter konča!Neshranjene spremembe. Poskusite z izbiro -yes.Podane mape ni moč ustvariti Zapisano: DaSmer bese__d__ilaPojdi na(__G__)Poudarjanje(__H__)__O__dpriTiskaj(__P__)Tiskaj(__P__) (opravilo)Ponovi(__R__)__S__hrani__S__hrani (treba)Razveljavi(__U__)najdi nizpojdi v vrstico [stolpec]niso najdeniopen -yes -e encoding fileprint -e programsave -e kodiranje datotekaiskalnega niza ni moč najti.nepodprt text/uri: raba: raba: find besediloraba: go vrstica [stolpec] raba: open -e utf-8 -yes datotekaraba: print [-o datoteka] [-p tiskalnik] [-e program] [-break] [-hsize velikost-pisave-v-glavi]raba: replace izvirni noviraba: save -e utf-8 -yes datoteka./gui/locale/sl/LC_MESSAGES/messages.po0000644000175000017500000014737510733117073017455 0ustar henrichhenrich# SLOVENIAN TRANSLATION OF YUDIT GUI. # Copyright (C) 2001 Free Software Foundation, Inc. # Roman Maurer , 2001. # msgid "" msgstr "" "Project-Id-Version: yudit 2.8.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-11-11 22:10+0100\n" "Last-Translator: Roman Maurer \n" "Language-Team: Slovenian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Da" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Ne" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "V redu" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Prekliči" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Prikaži skrite" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Domov" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Pojdi v" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Ustvari mapo" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Mapa" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Datoteka" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Vrsta datoteke" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Datoteka:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Mapa:" # # File: ../swidget/SFileDialog.cpp, le: 102 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Filter:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Najboljša vrsta datoteke" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Podane mape\n" "ni moč ustvariti\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Mape je moč ustvariti\n" "le v trenutnem imeniku." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Podana mapa\n" "že obstaja.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Ni moč ustvariti\n" "podane mape.\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Ni moč iti\n" "v podano mapo.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Vnos s pisanjem" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Zamahi:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Pretvorniki" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Poglej" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Zbriši" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Usmerjeno" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Kandidati" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "niso najdeni" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "Kategorija" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "Poudarjanje" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "Opomba:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Ni moč brati: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Trenutna preslikava tipk:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Znaki:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Dostopne preslikave tipk" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-tipka" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Trenutne preslikave tipk" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Vhod s tipkovnice" # # e: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Izhod" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Podatki o sestavljenem:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Velikost pisave:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Vrstica:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Stolpec:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "__O__dpri" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Poišči(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Pojdi na(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "__S__hrani (treba)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "__S__hrani" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Tiskaj(__P__) (opravilo)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Tiskaj(__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Predogled tiskanja(__w__) (opravilo)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Predogled tiskanja(__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Razveljavi(__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Ponovi(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Smer bese__d__ila" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "M__a__njše" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Večje(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "Poudarjanje(__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Pisava" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Vhod" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Prelom vrstice" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Neshranjene spremembe.\n" "Vseeno končam?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Potekajoče tiskalniško opravilo.\n" "Vseeno končam?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Neshranjene spremembe.\n" "Vseeno odprem?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Neshranjene spremembe. Enter jih zanemari!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e encoding file" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Datoteka obstaja.\n" "Vseeno shranim?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e kodiranje datoteka" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "najdi niz" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "pojdi v vrstico [stolpec]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Ničesar za razveljaviti." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Ničesar za ponoviti." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Nastavljena je bila smer izbranega besedila." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Nastavljena je bila smer izbranega besedila." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "raba: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Ni moč brati: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Neshranjene spremembe. Enter konča!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Poteka tiskalniško opravilo. Enter konča!" # # Yudit.cpp, line: 787 # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Tiskanje..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Natisnjenih strani: %d." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "raba: open -e utf-8 -yes datoteka" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Neshranjene spremembe. Poskusite z izbiro -yes." # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Poteka tiskalniško opravilo. Poskusite izbiro -yes." # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Neznano kodiranje: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Odprto: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " Prelom vrstice:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr " Končana zadnja vrstica." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "raba: save -e utf-8 -yes datoteka" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Datoteka obstaja. Uporabite izbiro -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Ni moč pisati: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Napaka pri pisanju: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Zapisano: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "raba: go vrstica [stolpec] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "raba: find besedilo" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "iskalnega niza ni moč najti." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "raba: replace izvirni novi" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "nepodprt text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 #, fuzzy msgid "Command not found: " msgstr "Ni moč brati: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "raba: print [-o datoteka] [-p tiskalnik] [-e program] [-break] [-hsize velikost-pisave-v-glavi]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o datoteka -p tiskalnik -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "Insert" #~ msgstr "Vstavi" ./gui/locale/sr/0000755000175000017500000000000010724001346013501 5ustar henrichhenrich./gui/locale/sr/LC_MESSAGES/0000755000175000017500000000000010733117073015273 5ustar henrichhenrich./gui/locale/sr/LC_MESSAGES/messages.mo0000644000175000017500000002022010733117073017433 0ustar henrichhenrichl|0 1 J W g v          4 ? Z h v z + (       9 W ] e q x 1          + . ? P S \ c #f " %     % - 9 !H j s x    !)KSWn    )3N_u"PK"gX,(*Bm~@@%!8Zi|  ,>=XnuEK9*R}IDH Zhyf )@\mt}&( BN _jRoBT,ZK-!%G5X  %JL:e:L8(at/y-50f{)% ".8g)0! +-5Y5$ 5Z aRMU=%) 3<'5F;#*e]$AXY >PQgc-?`N[j1SLhf^O+,7 lVGE4(CJ@!BWb:iH2Kk0DZ 6&/Td._9I "8\ Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2007-12-13 18:11+0200 Last-Translator: Страхиња Радић Language-Team: српски MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Непотпун последњи ред... Прелом реда:Доступне мапеНајбоља врста датотекеВеће (__Z__)Пром. дир.Не могу да створим задату фасциклу Не могу да идем на задату фасциклу. Не могу да прочитам: Не могу да упишем: ПоништиКандидатиКатегоријаЗнакови:ОчистиКолона:Команда није пронађена: ПретварачиНисам могао да сачувам подешавањаТренутна мапа:Текуће мапеДОСУсмереноУсмерење изабраног текста је враћено.Усмерење изабраног текста је постављено.Уградња текста у документу (__T__)Грешка приликом уписа: F-тастерДатотекаВрста датотекеДатотека постоји. Желите ли да сачувате?Датотека постоји. Користите избор -yes.Датотека:Филтар:Нађи (__Q__)ФасциклаФасцикла:Фасцикле се могу стварати само у текућем директоријуму.ФонтВеличина фонта:Инфо. о лику:Рукописни уносИстицањеДомУносТастерски уносПрелом редаРед:ПотражиМекНаправи фасциклуНеНемам шта да поновим.Немам шта да опозовем.У редуОтворен: ИзлазПСПосао штампе на чекању. Желите ли да изађете? Посао штампе на чекању. Enter завршава!Посао штампе на чекању. Пробајте са избором -yesПреглед пред штампу (__W__)Преглед пред штампу (__W__) (посао на чекању)Одштампано(е) %d страна(е).Штампам...Напомена:Прикажи сакривенеМање (__A__)Задата фасцикла већ постоји. Потеза:УниксНепознато кодирање: Несачуване измене. Желите ли да изађете? Несачуване измене. Желите ли да отворите? Несачуване измене. Enter одбацује!Несачуване измене. Enter завршава!Несачуване измене. Пробајте са избором -yesНећу створити задату фасциклу Записано: ДаЗаобилажење усмерења (__D__)Заобилажење уградње (__E__)Иди на (__G__)Истицање (__H__)Отвори (__O__)Штампај (__P__)Штампај (__P__) (посао на чекању)Понови (__R__)Сачувај (__S__)Сачувај (__S__) (потребно)Опозови (__U__)Напусти уградњу (__Y__)find нискаgo ред [колона]није нађеноopen -yes -e кодирање датотекаprint -e програмsave -e кодирање датотекатражена ниска није нађена.неподржан text/uri: употреба: употреба: find текступотреба: go ред [колона] употреба: open -e utf-8 -yes датотекаупотреба: print [-o датотека] [-p штампач] [-e наредба] [-break] [-hsize величина-фонта-заглавља]употреба: replace првобитно новоупотреба: save -e utf-8 -yes датотека./gui/locale/sr/LC_MESSAGES/messages.po0000644000175000017500000015222510733117073017451 0ustar henrichhenrich# Српска локализација програма Јудит. # Copyright (C) 2003 Free Software Foundation, Inc. # Слободан Марковић , 2001. # Страхиња Радић , 2003. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2007-12-13 18:11+0200\n" "Last-Translator: Страхиња Радић \n" "Language-Team: српски \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Да" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Не" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "У реду" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Поништи" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Прикажи сакривене" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Дом" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Пром. дир." # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Направи фасциклу" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Фасцикла" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Датотека" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Врста датотеке" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Датотека:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Фасцикла:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Филтар:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Најбоља врста датотеке" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Нећу створити\n" "задату фасциклу\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Фасцикле се могу стварати\n" "само у текућем директоријуму." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Задата фасцикла\n" "већ постоји.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Не могу да створим\n" "задату фасциклу\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Не могу да идем\n" "на задату фасциклу.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Рукописни унос" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Потеза:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Претварачи" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Потражи" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Очисти" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Усмерено" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Кандидати" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "није нађено" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "Категорија" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "Истицање" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "Напомена:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Не могу да прочитам: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Тренутна мапа:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Знакови:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Доступне мапе" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-тастер" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Текуће мапе" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Тастерски унос" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Излаз" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Инфо. о лику:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Величина фонта:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Ред:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Колона:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Уникс" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "ДОС" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "Мек" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "ПС" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Отвори (__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Нађи (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Иди на (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Сачувај (__S__) (потребно)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Сачувај (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Штампај (__P__) (посао на чекању)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Штампај (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Преглед пред штампу (__W__) (посао на чекању)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Преглед пред штампу (__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Опозови (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Понови (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Уградња текста у документу (__T__)" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Заобилажење усмерења (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Заобилажење уградње (__E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Напусти уградњу (__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Мање (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Веће (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "Истицање (__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Фонт" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Унос" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Прелом реда" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Несачуване измене.\n" "Желите ли да изађете?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Посао штампе на чекању.\n" "Желите ли да изађете?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Несачуване измене.\n" "Желите ли да отворите?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Несачуване измене. Enter одбацује!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e кодирање датотека" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Датотека постоји.\n" "Желите ли да сачувате?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e кодирање датотека" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find ниска" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go ред [колона]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e програм" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Немам шта да опозовем." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Немам шта да поновим." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Усмерење изабраног текста је постављено." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Усмерење изабраног текста је враћено." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "употреба: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Не могу да прочитам: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Несачуване измене. Enter завршава!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Посао штампе на чекању. Enter завршава!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Штампам..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Одштампано(е) %d страна(е)." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "употреба: open -e utf-8 -yes датотека" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Несачуване измене. Пробајте са избором -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Посао штампе на чекању. Пробајте са избором -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Непознато кодирање: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Отворен: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " Прелом реда:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr " Непотпун последњи ред..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "употреба: save -e utf-8 -yes датотека" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Датотека постоји. Користите избор -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Не могу да упишем: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Грешка приликом уписа: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Записано: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "употреба: go ред [колона] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "употреба: find текст" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "тражена ниска није нађена." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "употреба: replace првобитно ново" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Нисам могао да сачувам подешавања" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "неподржан text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Команда није пронађена: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "употреба: print [-o датотека] [-p штампач] [-e наредба] [-break] [-hsize величина-фонта-заглавља]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o датотека -p штампач -break" ./gui/locale/hi/0000755000175000017500000000000010724001346013455 5ustar henrichhenrich./gui/locale/hi/LC_MESSAGES/0000755000175000017500000000000010733117072015246 5ustar henrichhenrich./gui/locale/hi/LC_MESSAGES/messages.mo0000644000175000017500000002000510733117072017407 0ustar henrichhenrich^   # ) Jkz  ( 0 6 ; E _ }    1       " * . : = N _ b k r #u " %    ( 4 @ !O q z      !0 R Z ^ u          * @ Y p x  " P "29U'5!TXt!$. J W1eF O(m `f* zm }" %  *%4 ZQgK#;N`Qyo,3L,.J%y![0)F`pVe(yoRx (/G0_'-I!0 R^t83' 24g&3Ef&1EQ6 T-(KA!0 Y$I&.8FHX=WD>?J[S%5NB"<OC ZG2RM \L^]@ 4+U1V,';9#*/3): P7E Line Break:Best File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesClearColumn:Command not found: ConvertersCould not save preferencesDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit-2.5.2.beta23 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2000-01-20 9:35+IST Last-Translator: Sanjay Khatri Language-Team: None MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 पंक्ति समाप्त: श्रेष्ठ फाइल प्रकारबड़ा करें (__Z__)cd करेंवताया गया फोल्डर बना नहीं सकतें वताये गये फोल्डर में नहीं जा सकते नहीं पढ़ सके:नहीं लिख सकते:रद्द करेंप्रत्याशीसाफ़कॉलम:निर्देश नहीं मिला: परिवर्तकपसन्द सुरक्षित नहीं रख सकेडॉसनिर्देशितचयनित मूल-पाठ की दिशा तय कर ली।लिखते में गलती: F-Keyफाइलफाइल प्रकारफाइल मौजूद हैं फिर भी सुरक्षित रखें।फाइल मौजूद हैं. -yes विकल्प का प्रयोग करेंफाइल:फिल्टर:खोजें (__Q__)फोल्डरफोल्डर:केवल चालू निर्देशिका में फोल्डर बना सकते हैं।फॉन्टफ़ॉन्ट आकार:Glyph सूचक:हस्तलिपी आगतघरआगतपंक्ति समाप्तलाइन:खोजनामैकफोल्डर बनायेंनहींदुबारा करने के लिए कुछ नहीं हैंअकृत करने के लिए कुछ नहीं हैंसब सहीं हैंखोल लिया:निर्गमPSछपाई के काम बाकी हैं फिर भी बाहर आयें छपाई के काम बाकी हैं। Enter दबाने से बाहर आ जाएगें!छपाई के काम बाकी हैं। -yes विकल्प प्रयास करेंछपाई पूर्वदर्शन (__w__)छपाई पूर्वदर्शन (__w__) (बाकी काम)%d पृष्ठ छाप लियेंछपाइ चल रहीं हैं....गुप्त दिखायेंछोटा करें (__A__)बताया गया फोल्डर पहले से मौजूद हैं प्रहारयूनिक्सअज्ञात कूटनियम:असुरक्षित परिवर्तन फिर भी बाहर आयें असुरक्षित परिवर्तन फिर भी खोलें असुरक्षित परिवर्तन। Enter से निकल जाएगें!असुरक्षित परिवर्तन। Enter दबाने से बाहर आ जाएगें!असुरक्षित परिवर्तन। -yes विकल्प प्रयास करेंबताया गया फोल्डर नहीं बना सकते लिख लिया: हाँमूल-पाठ दिशा (__D__)जायें (__G__)खोलें (__O__)छापें (__P__)छापें (__P__) (बाकी काम)दुबारा करें (__R__)सुरक्षित रखें (__S__)सुरक्षित रखें (__S__) (आवश्क हैं)अकृत करें (__U__)find stringgo line[कॉलम]नहीं मिलाopen -yes -e कूटनियम फाइलनामprint -e programsave -e कूटनियम फाइलनामsearch string नहीं मिलानिरवलंबित मूल-पाठ: अनुप्रयोग: अनुप्रयोग: find textअनुप्रयोग: go line [कॉलम]अनुप्रयोग: open -e utf-8 -yes फाइलनामअनुप्रयोग: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]अनुप्रयोग: replace original newअनुप्रयोग: save -e utf-8 -yes फाइलनाम./gui/locale/hi/LC_MESSAGES/messages.po0000644000175000017500000015325410733117072017427 0ustar henrichhenrich# Yudit Unicode Text Editor. # Copyright (C) Sanjay Khatri. # Sanjay Khatri , 2002. # msgid "" msgstr "" "Project-Id-Version: yudit-2.5.2.beta23\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2000-01-20 9:35+IST\n" "Last-Translator: Sanjay Khatri \n" "Language-Team: None \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "हाँ" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "नहीं" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "सब सहीं हैं" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "रद्द करें" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "गुप्त दिखायें" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "घर" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "cd करें" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "फोल्डर बनायें" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "फोल्डर" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "फाइल" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "फाइल प्रकार" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "फाइल:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "फोल्डर:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "फिल्टर:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "श्रेष्ठ फाइल प्रकार" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "बताया गया फोल्डर\n" "नहीं बना सकते\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "केवल चालू निर्देशिका में\n" "फोल्डर बना सकते हैं।" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "बताया गया फोल्डर\n" "पहले से मौजूद हैं\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "वताया गया फोल्डर\n" "बना नहीं सकतें\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "वताये गये फोल्डर\n" "में नहीं जा सकते\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "हस्तलिपी आगत" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "प्रहार" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "परिवर्तक" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "खोजना" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "साफ़" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "निर्देशित" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "प्रत्याशी" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "नहीं मिला" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "नहीं पढ़ सके:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-Key" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "निर्गम" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Glyph सूचक:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "फ़ॉन्ट आकार:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "लाइन:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "कॉलम:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "यूनिक्स" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "डॉस" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "मैक" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "खोलें (__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "खोजें (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "जायें (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "सुरक्षित रखें (__S__) (आवश्क हैं)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "सुरक्षित रखें (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "छापें (__P__) (बाकी काम)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "छापें (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "छपाई पूर्वदर्शन (__w__) (बाकी काम)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "छपाई पूर्वदर्शन (__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "अकृत करें (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "दुबारा करें (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "मूल-पाठ दिशा (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "छोटा करें (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "बड़ा करें (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "फॉन्ट" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "आगत" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "पंक्ति समाप्त" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "असुरक्षित परिवर्तन\n" "फिर भी बाहर आयें\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "छपाई के काम बाकी हैं\n" "फिर भी बाहर आयें\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "असुरक्षित परिवर्तन\n" "फिर भी खोलें\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "असुरक्षित परिवर्तन। Enter से निकल जाएगें!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e कूटनियम फाइलनाम" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "फाइल मौजूद हैं\n" "फिर भी सुरक्षित रखें।" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e कूटनियम फाइलनाम" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find string" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go line[कॉलम]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "अकृत करने के लिए कुछ नहीं हैं" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "दुबारा करने के लिए कुछ नहीं हैं" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "चयनित मूल-पाठ की दिशा तय कर ली।" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "चयनित मूल-पाठ की दिशा तय कर ली।" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "अनुप्रयोग: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "नहीं पढ़ सके:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "असुरक्षित परिवर्तन। Enter दबाने से बाहर आ जाएगें!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "छपाई के काम बाकी हैं। Enter दबाने से बाहर आ जाएगें!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "छपाइ चल रहीं हैं...." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d पृष्ठ छाप लियें" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "अनुप्रयोग: open -e utf-8 -yes फाइलनाम" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "असुरक्षित परिवर्तन। -yes विकल्प प्रयास करें" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "छपाई के काम बाकी हैं। -yes विकल्प प्रयास करें" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "अज्ञात कूटनियम:" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "खोल लिया:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "पंक्ति समाप्त: " # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "अंतिम पंक्ति पूरी कर ली" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "अनुप्रयोग: save -e utf-8 -yes फाइलनाम" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "फाइल मौजूद हैं. -yes विकल्प का प्रयोग करें" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "नहीं लिख सकते:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "लिखते में गलती: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "लिख लिया: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "अनुप्रयोग: go line [कॉलम]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "अनुप्रयोग: find text" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "search string नहीं मिला" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "अनुप्रयोग: replace original new" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "पसन्द सुरक्षित नहीं रख सके" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "निरवलंबित मूल-पाठ: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "निर्देश नहीं मिला: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "अनुप्रयोग: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o file -p printer -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/de/0000755000175000017500000000000010724001346013445 5ustar henrichhenrich./gui/locale/de/LC_MESSAGES/0000755000175000017500000000000010733117072015236 5ustar henrichhenrich./gui/locale/de/LC_MESSAGES/messages.mo0000644000175000017500000001402210733117072017401 0ustar henrichhenricha$,8 9FV es y      # . I W e (n         1 M R ] i {           # " %A g y    !    9 X y !      , 5 > P Y e v         "$PG"Q)8JZ j(u+    %- E O p~-$%= DQX<`     +0Gf it.|+.,J c mx .,5U!t)   #) 9E]y  '2F%b:'&A>%3O$E:79V[INZ2( ^J1P!D\6LR. )8 H4`<0* ;',QT+UM5S @]"K WaY=_/F&#BGXC?- Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:Unknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-02-20 13:00+0100 Last-Translator: Mike Fabian Language-Team: Thomas Wohlfarth MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 Zeilenumbruch:Verfügbare KMapsBester DateitypGrößer(__Z__)Wechsle zuKann angegebenen Ordner nicht erstellen Kann nicht in angegebenen Ordner wechseln. Kann nicht lesen:Kann nicht schreiben:AbbrechenVorschlagKategorieBuchstaben:LöschenSpalte:Befehl nicht gefunden: KonverterKann Einstellungen nicht sichernAktuelle KMapAktuelle KMapsRichtungRichtung des gewählten Textes wurde gesetzt.Fehler beim Schreiben:F-TasteDateiDateitypDatei existiert! Trotzdem speichern?Datei vorhanden. Verwende -yes OptionDatei:Finde(__Q__)OrdnerOrdner:Ordner können nur im aktuellen Verzeichnis erstellt werden.FontFont-Größe:Zeichen-Info:HandschifteingabeHervorhebungHeimatverzeichnisEingabeEingabeZeilenumbruchZeile:SuchenErstelle OrdnerNeinNichts zu wiederholen.Nichts rückgängig zu machen.OKGeöffnet:AusgabeAnstehender Druckauftrag! Trotzdem verlassen? Anstehender Druckauftrag. beendet!Anstehender Druckauftrag. Versuche -yes OptionDrucke Vorschau(__W__)Drucke Vorschau (__W__ anstehender Auftrag)Habe %d Seiten gedruckt.Drucke...Bemerkung:Zeige VersteckteKleiner (__A__)Angegebener Ordner existiert. StrichzahlUnbekannte Kodierung:Ungesicherte Änderungen! Trotzdem verlassen? Ungesicherte Änderungen! Trotzdem öffnen? Ungesichert. verwirft!Ungesichert. beendet!Ungesichert. Versuche -yes OptionWerde angegebenen Ordner nicht erstellen Schrieb:Ja__G__ehe zu__H__ervorhebungÖffne(__O__)Drucke(__P__)Drucke (__P__ anstehender Auftrag)Wiede__r__holen__S__ichere__S__ichere (benötigt)Rückgängig machen (__U__)find Zeichenfolgego Zeile [Spalte]nicht gefundenopen -yes -e Kodierung Dateiprint -e Programmsave -e Kodierung DateiSuchtext nicht gefunden.nicht unterstützter Text:Gebrauch: Gebrauch: find TextGebrauch: go Zeile [Spalte]Gebrauch: open -e utf8 -yes DateinameGebrauch: print [-o Datei] [-p Drucker] [-e exec] [-break]Gebrauch: replace alter_Text neuer_TextGebrauch: save -e utf-8 -yes Dateiname./gui/locale/de/LC_MESSAGES/messages.po0000644000175000017500000014662410733117072017422 0ustar henrichhenrich# Yudit Unicode Editor # Deutsche Anpassung # Copyright (C) 2002 Thomas Wohlfarth # Thomas Wohlfarth # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-02-20 13:00+0100\n" "Last-Translator: Mike Fabian \n" "Language-Team: Thomas Wohlfarth \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Ja" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Nein" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "OK" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Abbrechen" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Zeige Versteckte" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Heimatverzeichnis" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Wechsle zu" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Erstelle Ordner" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Ordner" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Datei" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Dateityp" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Datei:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Ordner:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Bester Dateityp" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Werde angegebenen\n" "Ordner nicht erstellen\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Ordner können nur im aktuellen\n" "Verzeichnis erstellt werden." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Angegebener\n" "Ordner existiert.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Kann angegebenen\n" "Ordner nicht erstellen\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Kann nicht in angegebenen\n" "Ordner wechseln.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Handschifteingabe" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Strichzahl" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Konverter" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Suchen" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Löschen" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Richtung" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Vorschlag" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "nicht gefunden" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "Kategorie" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "Hervorhebung" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "Bemerkung:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Kann nicht lesen:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Aktuelle KMap" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Buchstaben:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Verfügbare KMaps" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-Taste" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Aktuelle KMaps" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Eingabe" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Ausgabe" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Zeichen-Info:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Font-Größe:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Zeile:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Spalte:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Öffne(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Finde(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "__G__ehe zu" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "__S__ichere (benötigt)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "__S__ichere" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Drucke (__P__ anstehender Auftrag)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Drucke(__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Drucke Vorschau (__W__ anstehender Auftrag)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Drucke Vorschau(__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Rückgängig machen (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Wiede__r__holen" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Kleiner (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Größer(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "__H__ervorhebung" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Font" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Eingabe" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Zeilenumbruch" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Ungesicherte Änderungen!\n" "Trotzdem verlassen?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Anstehender Druckauftrag!\n" "Trotzdem verlassen?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Ungesicherte Änderungen!\n" "Trotzdem öffnen?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Ungesichert. verwirft!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e Kodierung Datei" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Datei existiert!\n" "Trotzdem speichern?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e Kodierung Datei" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find Zeichenfolge" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go Zeile [Spalte]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e Programm" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Nichts rückgängig zu machen." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Nichts zu wiederholen." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Richtung des gewählten Textes wurde gesetzt." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "Richtung des gewählten Textes wurde gesetzt." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "Gebrauch: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Kann nicht lesen:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Ungesichert. beendet!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Anstehender Druckauftrag. beendet!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Drucke..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Habe %d Seiten gedruckt." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "Gebrauch: open -e utf8 -yes Dateiname" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Ungesichert. Versuche -yes Option" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Anstehender Druckauftrag. Versuche -yes Option" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Unbekannte Kodierung:" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Geöffnet:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Zeilenumbruch:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr " Letzte Zeile ergänzt." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "Gebrauch: save -e utf-8 -yes Dateiname" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Datei vorhanden. Verwende -yes Option" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Kann nicht schreiben:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Fehler beim Schreiben:" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Schrieb:" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "Gebrauch: go Zeile [Spalte]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "Gebrauch: find Text" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "Suchtext nicht gefunden." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "Gebrauch: replace alter_Text neuer_Text" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Kann Einstellungen nicht sichern" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "nicht unterstützter Text:" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Befehl nicht gefunden: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "Gebrauch: print [-o Datei] [-p Drucker] [-e exec] [-break]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o Datei -p Drucker -break" ./gui/locale/uk/0000755000175000017500000000000010724001346013474 5ustar henrichhenrich./gui/locale/uk/LC_MESSAGES/0000755000175000017500000000000010733117073015266 5ustar henrichhenrich./gui/locale/uk/LC_MESSAGES/messages.mo0000644000175000017500000001674310733117073017445 0ustar henrichhenrichb,<H IVf u       * 5 P ^ l p (y          & 1. ` e p |             # "+ %N t    !    $ C b !       $ - ? H T e o        "P6"H!($Jo .F"! Dex &1"(!KmtH+=,Aj  k cn% * 0 <IZz+% pU]0D@u+#!7 Y e%pQOO8E?!(H^x * 0Q(g#,*&-E>sEf@_BC?&4P%F<9 ;W\J+_[3( bL2.Q"G]86S/ ):O I5aT1* =M,RUYN7BK!A#^ XZ>`0V'$DHE@- Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-02-21 11:28+09:00 Last-Translator: Solotskyy Mykola Language-Team: Ukrainian MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8-bit Кінець рядка:Існуючі розкладкиНайкращий тип файлуЗбільшити (__Z__)Перейти в каталогНе можу створити каталог Не можу перейти до вказаного каталогу Не можу прочитати: Не можу записати: СкасуватиЗнайденоСимвол:ОчиститиСтовпчик:Команду не знайдено: КонверториНе можу зберегти установкиПоточна розкладка:Вибрані розкладкиДОСНаправленийНапрямок вибраного тексту встановлено.Помилка під час запису: F-клавішаФайлТип файлуФайл вже існує. Все-таки записати?Файл вже існує. Застосуйте опцію -yes.Файл:Фільтр:Шукати(__Q__)КаталогКаталог:Каталоги можуть створюватися тільки в поточному каталозі.ШрифтРозмір шрифта:Іформація про гліфи:Рукописний ввідДодомуРозкладкаВводиться з клавіатуриКінець рядкаРядок:ШукатиМакінтошСтворити каталогНіНемає чого повторювати.Нема куди відходити.ГараздПрочитано: РезультатПараграф UnicodeЛишилася робота в черзі на друк. Все-таки закінчити програму? Робота в черзі на друк. - вихід з редактора!Лишилися робота в черзі на друк. Спробуйте опцію -yesПерегляд перед друком (__w__)Перегляд перед друком (в черзі) (__w__)Надруковано %d сторінок.Друкується...Показувати схованеЗменшити (__A__)Цей каталог вже є. Риски:ЮніксНевідоме кодування: Зміни не були збережені. Все-таки закінчити? Зміни не були збережені. Все-таки відкрити? Зміни не збережені. - вихід з редактора!Незбережені зміни. Спробуйте опцію -yesВказаний каталог не буде створено Записано: ТакНапрям друку (__D__)Перейти(__G__)Прочитати(__O__)Друк (__P__)Друк (в черзі) (__P__)Повтор (__R__)Записати (__S__)Записати (потрібно)(__S__)Відкат (__U__)шукати рядокgo рядок [стовпчик]не знайденоopen -yes -e кодування файлprint -e програмаsave -e кодування файлтакий рядок не знайдено.text/uri не підтримується: Формат команди: Формат команди: find текстФормат команди: go рядок [стовпчик] Формат команди: open -e utf-8 -yes назва_файлуФормат команди: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]Формат команди: replace поточний новийФормат команди: save -e utf-8 -yes ім'я_файлу./gui/locale/uk/LC_MESSAGES/messages.po0000644000175000017500000015306510733117073017447 0ustar henrichhenrich# Yudit 2.5.2 # Copyright (C) 2002 Free Software Foundation, Inc. # Dmytro Kovalov # Solotskyy Mykola # msgid "" msgstr "" "Project-Id-Version: yudit \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-02-21 11:28+09:00\n" "Last-Translator: Solotskyy Mykola \n" "Language-Team: Ukrainian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8-bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Так" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Ні" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "Гаразд" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Скасувати" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Показувати сховане" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Додому" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Перейти в каталог" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Створити каталог" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Каталог" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Файл" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Тип файлу" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Файл:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Каталог:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Фільтр:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Найкращий тип файлу" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Вказаний каталог\n" "не буде створено\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Каталоги можуть створюватися\n" "тільки в поточному каталозі." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Цей каталог\n" "вже є.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Не можу створити\n" "каталог\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Не можу перейти\n" "до вказаного каталогу\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Рукописний ввід" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Риски:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Конвертори" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Шукати" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Очистити" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Направлений" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Знайдено" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "не знайдено" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Не можу прочитати: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Поточна розкладка:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Символ:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Існуючі розкладки" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-клавіша" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Вибрані розкладки" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Вводиться з клавіатури" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Результат" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Іформація про гліфи:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Розмір шрифта:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Рядок:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Стовпчик:" # # From yudit FAQ: # # Q4: What is that [Line Break] on the right hand side that is mostly # showing "Unix"? # A4: The line end marks are: # UNIX='\n' - Unix line break # DOS='\r\n' - DOS line break # MAC='\r' - MAC line break # LS = U+2028 - Unicode line separator # PS = U+2029 - Unicode paragraph separator # In Yudit you can mix these - you can create a file that has DOS # and Unix lines for instance. But you should avoid mixing them if # possible. # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Юнікс" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "ДОС" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "Макінтош" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "Параграф Unicode" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Прочитати(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Шукати(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Перейти(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Записати (потрібно)(__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Записати (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Друк (в черзі) (__P__)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Друк (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Перегляд перед друком (в черзі) (__w__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Перегляд перед друком (__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Відкат (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Повтор (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Напрям друку (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Зменшити (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Збільшити (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Шрифт" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Розкладка" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Кінець рядка" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Зміни не були збережені.\n" "Все-таки закінчити?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Лишилася робота в черзі на друк.\n" "Все-таки закінчити програму?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Зміни не були збережені.\n" "Все-таки відкрити?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e кодування файл" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Файл вже існує.\n" "Все-таки записати?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e кодування файл" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "шукати рядок" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go рядок [стовпчик]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e програма" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Нема куди відходити." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Немає чого повторювати." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Напрямок вибраного тексту встановлено." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "Напрямок вибраного тексту встановлено." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "Формат команди: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Не можу прочитати: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Зміни не збережені. - вихід з редактора!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Робота в черзі на друк. - вихід з редактора!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Друкується..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Надруковано %d сторінок." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "Формат команди: open -e utf-8 -yes назва_файлу" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Незбережені зміни. Спробуйте опцію -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Лишилися робота в черзі на друк. Спробуйте опцію -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Невідоме кодування: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Прочитано: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Кінець рядка:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "Останній рядок доповнено." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "Формат команди: save -e utf-8 -yes ім'я_файлу" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Файл вже існує. Застосуйте опцію -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Не можу записати: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Помилка під час запису: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Записано: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "Формат команди: go рядок [стовпчик] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "Формат команди: find текст" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "такий рядок не знайдено." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "Формат команди: replace поточний новий" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Не можу зберегти установки" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "text/uri не підтримується: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Команду не знайдено: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "Формат команди: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o файл -p принтер -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "Кінець рядка Unicode" ./gui/locale/yi/0000755000175000017500000000000010724001346013476 5ustar henrichhenrich./gui/locale/yi/LC_MESSAGES/0000755000175000017500000000000010733117073015270 5ustar henrichhenrich./gui/locale/yi/LC_MESSAGES/messages.mo0000644000175000017500000001660010733117073017437 0ustar henrichhenrich`( )6F Uc i      * 8 (A j          1 D I T ` r w }         # " %+ Q c   !     : [ y !       + 4 = O X d u         "#PF"O&+<&h$CDSn  ='@)hH,"Aaj>z>*;_L --4;Ri$'% C4Jx@'O,|? $01@b=OG1GyC(!Df{9/? \j9,@P-o*GD*U?<2I$C96 8UZG*]Y1' `J0O!B[5Q- (7MF3V_R/) :K+PSTL4HX >"\ %N;^.D&#@EWA=, Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:ConvertersCould not save preferencesCurrent KMap:Current KMapsDirectedDirection of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:Unknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-11-11 15:00+0100 Last-Translator: Raphael Finkel Language-Team: Raphael Finkel MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 שורה ענדונגפּאַסיקע קלאַװיִאַטורןפּאַסיקסטער מין טעקע(__Z__) גרעסער אַרײַן אין פּאַפּקעקען ניט באַשאַפֿן געזאָגטע פּאַפּקע קען ניט אַרײַן אין געזאָגטע פּאַפּקע קען ניט לײענעןקען ניט שרײַבןפֿאַרבטלקאַנדידאַטןאותיותזײַ מבֿטלשפּאַלירטראַנספֿאָרמירערניט געקענט אָפּהיטן פּרעפֿערענצןאיצטיקע קלאַװיִאַטוראיצטיקע קלאַװיִאַטורןמיט ריכטונגריכטונג פֿון סעלעקטירטן טעקסט באַשטעלטדאָקומענט טעקסט ײַנבאַקפֿעלער בײַם שרײַבןפֿונקציע קלאַװישטעקעמין טעקעטעקע געפֿינט זיך שױן. שרײַב סײַ-װי? ברירה-yesטעקע געפֿינט זיך שױן. ניץ טעקעגרענעצונג(__Q__) געפֿין פּאַפּקעפּאַפּקעקען בלױז באַשאַפֿן אַ פּאַפּקע אין איצטיקן פּאַפּקעשריפֿטגרײס פֿון שריפֿטבוכשטאַב אינפֿאָרמאַציעהאַנטשריפֿט אַרײַנשרײַבהײםאַרײַנשרײַבאַרײַנשרײַבשורה ענדונגשורהזוךבאַשאַף אַ פּאַפּקענײןגאָרניט װידערצומאַכןגאָרניט אַװעקצוטאָןגוטגעעפֿנטאַרױסשרײַבהײנגנדיקע דרוק-אַרבעט. ענדיק סײַ-װי? הענגנדיקע דרוק-אַרבעט. װאַרפֿט אַװעק!Enter ברירה-yesהענגנדיקע דרוק-אַרבעט. ניץ (__W__) זע אײדער געדרוקט (__W__) זע אײדער געדרוקט ‫(הענגנדיקע אַרבעט)‬ זײַטן געדרוקט%dדרוקנדיק ...װײַז באַהאַלטענע(__A__) קלענער געזאָגטע פּאַפּקע געפֿינט זיך שױן שטרײכןאומבאַקאַנט קאָדיר סיסטעםניט געשריבן אין טעקע. ענדיק סײַ-װי? ניט געשריבן אין טעקע. עפֿן סײַ-װי? ניט-געשריבענע ענדערונגען װאַרפֿט זײ אַװעק! װאַרפֿט אַװעק!enterניט געשריבן אין טעקע. ברירה-yesניט-געשריבענע ענדערונגען. ניץ װעל ניט באַשאַפֿן געזאָגטע פּאַפּקע געשריבןיאָ(__D__) פֿאַרקער ריכטונג פֿאַרקער אײַנבאַק(__G__) גײ אין (__O__) עפֿן (__P__) דרוק (__P__) דרוק ‫(הײנגנדיקע אַרבעט)‬ (__R__) װידער טו (__S__) שרײַב טעקע (__S__) שרײַב טעקע ‫(נױטיק)‬ (__U__) מאַך אַװעק findצײכן go שורה [שפּאַליר]ניט בנמצהopen -yes -e קאָד טעקעprint -e פּראָגראַםsave -e קאָד טעקעניט געפֿונען דעם געזוכטן טעקסטניט געקענטצו ניצן: צו ניצן: find טעקסטצו ניצן: go שורה [שפּאַליר]צו ניצן: open -e utf-8 -yes טעקעצו ניצן: print [-o טעקע] [-p דרוקער] [-e exec] [-break]צו ניצן: replace אַלטער-טעקסט נײַער-טעקסטצו ניצן: save -e utf-8 -yes טעקע./gui/locale/yi/LC_MESSAGES/messages.po0000644000175000017500000015144010733117073017444 0ustar henrichhenrich# Yudit Unicode Editor # Contibuted to Yudit by Raphael Finkel # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-11-11 15:00+0100\n" "Last-Translator: Raphael Finkel \n" "Language-Team: Raphael Finkel \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "יאָ" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "נײן" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "גוט" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "פֿאַרבטל" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "װײַז באַהאַלטענע" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "הײם" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "אַרײַן אין פּאַפּקע" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "באַשאַף אַ פּאַפּקע" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "פּאַפּקע" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "טעקע" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "מין טעקע" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "טעקע" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "פּאַפּקע" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "גרענעצונג" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "פּאַסיקסטער מין טעקע" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "װעל ניט באַשאַפֿן געזאָגטע פּאַפּקע\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "קען בלױז באַשאַפֿן אַ פּאַפּקע אין\n" "איצטיקן פּאַפּקע" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "געזאָגטע פּאַפּקע געפֿינט זיך שױן\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "קען ניט באַשאַפֿן געזאָגטע פּאַפּקע\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "קען ניט אַרײַן אין געזאָגטע פּאַפּקע\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "האַנטשריפֿט אַרײַנשרײַב" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "שטרײכן" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "טראַנספֿאָרמירער" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "זוך" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "זײַ מבֿטל" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "מיט ריכטונג" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "קאַנדידאַטן" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "ניט בנמצה" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "קען ניט לײענען" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "איצטיקע קלאַװיִאַטור" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "אותיות" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "פּאַסיקע קלאַװיִאַטורן" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "פֿונקציע קלאַװיש" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "איצטיקע קלאַװיִאַטורן" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "אַרײַנשרײַב" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "אַרױסשרײַב" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "בוכשטאַב אינפֿאָרמאַציע" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "גרײס פֿון שריפֿט" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "שורה" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "שפּאַליר" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "(__O__) עפֿן " # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "(__Q__) געפֿין " # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "(__G__) גײ אין " # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "(__S__) שרײַב טעקע ‫(נױטיק)‬ " # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "(__S__) שרײַב טעקע " # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "(__P__) דרוק ‫(הײנגנדיקע אַרבעט)‬ " # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "(__P__) דרוק " # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "(__W__) זע אײדער געדרוקט ‫(הענגנדיקע אַרבעט)‬ " # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "(__W__) זע אײדער געדרוקט " # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "(__U__) מאַך אַװעק " # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "(__R__) װידער טו " # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "דאָקומענט טעקסט ײַנבאַק" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "(__D__) פֿאַרקער ריכטונג " # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "פֿאַרקער אײַנבאַק" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "(__A__) קלענער " # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "(__Z__) גרעסער " # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "שריפֿט" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "אַרײַנשרײַב" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "שורה ענדונג" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "ניט געשריבן אין טעקע. ענדיק סײַ-װי?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "הײנגנדיקע דרוק-אַרבעט. ענדיק סײַ-װי?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "ניט געשריבן אין טעקע. עפֿן סײַ-װי?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "" "ניט-געשריבענע ענדערונגען\n" " װאַרפֿט זײ אַװעק!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e קאָד טעקע" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "טעקע געפֿינט זיך שױן. שרײַב סײַ-װי?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e קאָד טעקע" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "findצײכן " # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go שורה [שפּאַליר]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e פּראָגראַם" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "גאָרניט אַװעקצוטאָן" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "גאָרניט װידערצומאַכן" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "ריכטונג פֿון סעלעקטירטן טעקסט באַשטעלט" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "ריכטונג פֿון סעלעקטירטן טעקסט באַשטעלט" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "צו ניצן: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "קען ניט לײענען" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr " װאַרפֿט אַװעק!enterניט געשריבן אין טעקע. " # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "" "הענגנדיקע דרוק-אַרבעט.\n" " װאַרפֿט אַװעק!Enter" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "דרוקנדיק ..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr " זײַטן געדרוקט%d" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "צו ניצן: open -e utf-8 -yes טעקע" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr " ברירה-yesניט-געשריבענע ענדערונגען. ניץ " # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr " ברירה-yesהענגנדיקע דרוק-אַרבעט. ניץ " # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "אומבאַקאַנט קאָדיר סיסטעם" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "געעפֿנט" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "שורה ענדונג" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "דערגענצט די לעצטע שורה." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "צו ניצן: save -e utf-8 -yes טעקע" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr " ברירה-yesטעקע געפֿינט זיך שױן. ניץ " # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "קען ניט שרײַבן" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "פֿעלער בײַם שרײַבן" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "געשריבן" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "צו ניצן: go שורה [שפּאַליר]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "צו ניצן: find טעקסט" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "ניט געפֿונען דעם געזוכטן טעקסט" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "צו ניצן: replace אַלטער-טעקסט נײַער-טעקסט" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "ניט געקענט אָפּהיטן פּרעפֿערענצן" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "ניט געקענט" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 #, fuzzy msgid "Command not found: " msgstr "באַפֿעל ניט געפֿונען" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "צו ניצן: print [-o טעקע] [-p דרוקער] [-e exec] [-break]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o טעקע -p דרוקער -break" ./gui/locale/ur/0000755000175000017500000000000010724001346013503 5ustar henrichhenrich./gui/locale/ur/LC_MESSAGES/0000755000175000017500000000000010733117073015275 5ustar henrichhenrich./gui/locale/ur/LC_MESSAGES/messages.mo0000644000175000017500000001704110733117073017444 0ustar henrichhenrichc4Lp q~      $ 0 6 > R ] x   (      - 3 ; G N 1V             % , #/ "S %v     ! + 4 9 L k  !    / 9 B L d m v       *2C"\P"?Ok&EI%o% &F1Y D21duGM;M]u]  %F er# ..M|>KXO!;&$?dC|(::I8LT 9_ ' /!Qe%y#, 83I3}!' 12_d*1Ya G:^@=bU*. FR; 5-W%CV<OI)"Z`>]3M$[c/'(\4D7 J+_2AN1!9HPTE?#8&SB, Q0K6L X Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: 2.6.4 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-10-04 09:17+0900 Last-Translator: S H A N Language-Team: S H A N MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 :‮لائین بریک‬‮موجودہ کی میپ‬‮بہترین فائیل قِسم‬‮بڑا‬(__Z__)‮وہاں جاییے‬‮دیا گیا فولڈر‬ ‮نہیں بنایاجاسکتا‬ ‮دیے گۓ فولڈر ‬ ‮تک نہیں جایا جاسک‍ا‬ ‮نھیں پڑھ سک‍ا‬‮لکھانہیں جاسک‍ا‬ ‮واپس‬‮چُنے ہوۓ‬:‮حروفِ تہجی‬‮صاف کر دو‬:‮ک‍الم‬‮ھدایت نہیں مل سکی!‬‮کنورٹر‬‮ترجیہات بچایء نہ جاسکیں‬:‮حالیہ کی میپ‬‮حالیہ کی میپس‬‮ڈوس‬‮بتایاگیا‬‮منتخب حروف ک‍ا رُخ پھیر دیاگیاہے۔‬‮لکھنے میں مسلہء پیش آگیا‬‮ف ـ کی‬‮فائیل‬‮فائیل کی قِسم‬‮فائیل پہلے سےموجود‬ ‮پھر بہی سیوز؟‬‮فائیل موجود۔ -SEY آپشن ک‍ا استعمال کیجیے‬:‮فائیل‬:‮فلٹر‬‮ڈھونڈو‬__Q__‮فولڈر‬:‮فولڈر‬‮فولڈر صرف اِس‬ ‮ڈایریکٹری میں بنائے جاسکتے ہیں‬‮رسمل خط‬:‮فونٹ سائیز‬:‮معلوماتِ حروف‬‮خطک‍ا اندراج‬‮اصل‬‮اندراج‬‮حرف ک‍ا اِندراج‬‮لاین بریک‬:‮لائین‬‮ڈھونڈو‬‮میک‬‮فولڈر بنائے‬‮نہیں‬‮ریڈو کرنے کو کچھ نھیں۔‬‮انڈو کرنے کو کچھ نھیں۔‬‮ٹھیک‬‮کھلا ہوا‬‮نتیجہ‬‮پی ایس‬‮پرنٹ مکمل کیے‬ ‮بغیر نک‍لنا؟‬ ‮اینٹر پرنٹ مکمل کیے بغیر باہر لے آۓ گا!‬‮پرنٹنگ جاب زیرِ التوا ہے -SEY آپشن استعمال کریں‬‮پرنٹ کی جھلک‬__w__‮پرنٹ کی جھلک‬__w__ (‮پنڈنگ جاب‬) ‮صفحات پرنٹڈ‬%d ‮پرنٹنگ۔۔۔‬‮چھپا ہوا دکھائیے‬‮چھوٹا‬(__A__)‮دیا گیا فولڈر‬ ‮پہلے سے موجود ہے‬ :‮لکھائی‬‮یونکس‬‮نامعلوم اینکوڈینگ:‬‮تبدیلی بچاۓ‬ ‮بغیرنک‍لنا؟‬ ‮تبدیلی بچاۓ‬ ‮بغیر کھولنا؟‬ ‮انٹر تبدیلیاں ضایع کر دے گا!‬‮اینٹر تبدیلیاں بچاۓ بغیر باہر لے آۓ گا!‬‮تبدیلیاں نہیں بچ سکیں ـSEY آپشن استعمال کریں‬‮منتخب فولڈر‬ ‮نہیں بن سکتا‬ ‮لکھا:‬ ‮جی‬ ‮لکھائی ک‍ا رُخ‬__D__‮جائیے‬__G__‮اوپن‬__‮O‬__‮پرنٹ‬__P__‮پرنٹ‬__P__ (‮پینڈنگ جاب‬)‮ریڈو‬__R__‮سیوز‬__S__‮سیوز‬__S__(‮ضروری‬)‮انڈو‬__U__‮جملہ ڈھونڈیے‬‮گو لائین [ک‍الم]‬‮نہیں ملا‬‮جی E اینکوڈینگ کھولیے‬print -e program‮جی E اینکوڈینگ سیوز کیجیے‬‮درک‍ار الفاظ نہیں مل سکے‬‮ بے سہارا‬text/uri: ‮استعمال‬: ‮استعمال‬: find text‮استعمال‬: go line [column] ‮استعمال‬: open -e utf-8 -yes filename‮استعمال‬: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]‮استعمال‬: replace original new‮استعمال‬: save -e utf-8 -yes filename./gui/locale/ur/LC_MESSAGES/messages.po0000644000175000017500000015201310733117073017446 0ustar henrichhenrich# Yudit Unicode Editor # Copyright (C) 2002 Free Software Foundation, Inc. # S H A N , 2002. # msgid "" msgstr "" "Project-Id-Version: 2.6.4\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-10-04 09:17+0900\n" "Last-Translator: S H A N \n" "Language-Team: S H A N \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "‮جی‬" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "‮نہیں‬" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "‮ٹھیک‬" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "‮واپس‬" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "‮چھپا ہوا دکھائیے‬" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "‮اصل‬" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "‮وہاں جاییے‬" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "‮فولڈر بنائے‬" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "‮فولڈر‬" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "‮فائیل‬" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "‮فائیل کی قِسم‬" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr ":‮فائیل‬" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr ":‮فولڈر‬" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr ":‮فلٹر‬" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "‮بہترین فائیل قِسم‬" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "‮منتخب فولڈر‬\n" "‮نہیں بن سکتا‬\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "‮فولڈر صرف اِس‬\n" "‮ڈایریکٹری میں بنائے جاسکتے ہیں‬" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "‮دیا گیا فولڈر‬\n" "‮پہلے سے موجود ہے‬\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "‮دیا گیا فولڈر‬\n" "‮نہیں بنایاجاسکتا‬\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "‮دیے گۓ فولڈر ‬\n" "‮تک نہیں جایا جاسک‍ا‬\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "‮خطک‍ا اندراج‬" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr ":‮لکھائی‬" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "‮کنورٹر‬" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "‮ڈھونڈو‬" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "‮صاف کر دو‬" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "‮بتایاگیا‬" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "‮چُنے ہوۓ‬" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "‮نہیں ملا‬" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "‮نھیں پڑھ سک‍ا‬" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr ":‮حالیہ کی میپ‬" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr ":‮حروفِ تہجی‬" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "‮موجودہ کی میپ‬" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "‮ف ـ کی‬" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "‮حالیہ کی میپس‬" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "‮حرف ک‍ا اِندراج‬" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "‮نتیجہ‬" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr ":‮معلوماتِ حروف‬" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr ":‮فونٹ سائیز‬" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr ":‮لائین‬" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr ":‮ک‍الم‬" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "‮یونکس‬" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "‮ڈوس‬" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "‮میک‬" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "‮پی ایس‬" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "‮اوپن‬__‮O‬__" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "‮ڈھونڈو‬__Q__" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "‮جائیے‬__G__" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "‮سیوز‬__S__(‮ضروری‬)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "‮سیوز‬__S__" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "‮پرنٹ‬__P__ (‮پینڈنگ جاب‬)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "‮پرنٹ‬__P__" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "‮پرنٹ کی جھلک‬__w__ (‮پنڈنگ جاب‬)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "‮پرنٹ کی جھلک‬__w__" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "‮انڈو‬__U__" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "‮ریڈو‬__R__" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr " ‮لکھائی ک‍ا رُخ‬__D__" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "‮چھوٹا‬(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "‮بڑا‬(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "‮رسمل خط‬" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "‮اندراج‬" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "‮لاین بریک‬" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "‮تبدیلی بچاۓ‬\n" "‮بغیرنک‍لنا؟‬\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "‮پرنٹ مکمل کیے‬\n" "‮بغیر نک‍لنا؟‬\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "‮تبدیلی بچاۓ‬\n" "‮بغیر کھولنا؟‬\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "‮انٹر تبدیلیاں ضایع کر دے گا!‬" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "‮جی E اینکوڈینگ کھولیے‬" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "‮فائیل پہلے سےموجود‬\n" "‮پھر بہی سیوز؟‬" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "‮جی E اینکوڈینگ سیوز کیجیے‬" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "‮جملہ ڈھونڈیے‬" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "‮گو لائین [ک‍الم]‬" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "‮انڈو کرنے کو کچھ نھیں۔‬" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "‮ریڈو کرنے کو کچھ نھیں۔‬" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "‮منتخب حروف ک‍ا رُخ پھیر دیاگیاہے۔‬" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "‮منتخب حروف ک‍ا رُخ پھیر دیاگیاہے۔‬" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "‮استعمال‬: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "‮نھیں پڑھ سک‍ا‬" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "‮اینٹر تبدیلیاں بچاۓ بغیر باہر لے آۓ گا!‬" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "‮اینٹر پرنٹ مکمل کیے بغیر باہر لے آۓ گا!‬" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "‮پرنٹنگ۔۔۔‬" # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr " ‮صفحات پرنٹڈ‬%d " # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "‮استعمال‬: open -e utf-8 -yes filename" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "‮تبدیلیاں نہیں بچ سکیں ـSEY آپشن استعمال کریں‬" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "‮پرنٹنگ جاب زیرِ التوا ہے -SEY آپشن استعمال کریں‬" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "‮نامعلوم اینکوڈینگ:‬" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "‮کھلا ہوا‬" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " :‮لائین بریک‬" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr " ‮آخری لائین مکمل ہو گیء‬" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "‮استعمال‬: save -e utf-8 -yes filename" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "‮فائیل موجود۔ -SEY آپشن ک‍ا استعمال کیجیے‬" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "‮لکھانہیں جاسک‍ا‬ " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "‮لکھنے میں مسلہء پیش آگیا‬" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "‮لکھا:‬ " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "‮استعمال‬: go line [column] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "‮استعمال‬: find text" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "‮درک‍ار الفاظ نہیں مل سکے‬" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "‮استعمال‬: replace original new" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "‮ترجیہات بچایء نہ جاسکیں‬" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "‮ بے سہارا‬text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "‮ھدایت نہیں مل سکی!‬" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "‮استعمال‬: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o file -p printer -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "‮ ایلس‬" ./gui/locale/mr/0000755000175000017500000000000010724001346013473 5ustar henrichhenrich./gui/locale/mr/LC_MESSAGES/0000755000175000017500000000000010733117073015265 5ustar henrichhenrich./gui/locale/mr/LC_MESSAGES/messages.mo0000644000175000017500000001761110733117073017437 0ustar henrichhenricha$,8 9FV es y     % @ N \ ` (i           1 P U ` l ~            # " %> d v   !     3 R s !       ' 9 B N _ i       "P(y"B"5:p Vc$W$|  55LN X(Aj p}^? <J^sy $E"Y|     ;>B "TWmq3L`$#I2E)[PTq+SdVV -,,HKu 8*c3t-2& 30Edf1ECC?&4P%G<9 ;W^K+`[3( aL2.Q"F\86S/ ):O J51* =M,RUVN7BT!A#] XZ>_0H'$DIYE@- Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit-2.7.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2003-09-16 +0530 Last-Translator: Swapnil Hajare Language-Team: Marathi MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 ओळ समाप्त:उपलब्ध केमॅपश्रेष्ठ फाइल प्रकारमोठं करा (__Z__)cd करासांगितलेला फोल्डर बनवू शकत नाही सांगितलेला फोल्डर मध्ये जाऊ शकत नाही नाही वाचु शकत:नाही लिहु शकत:रद्द कराप्रत्याशीअक्षरसाफ़कॉलम:निर्देश नाही मिळालापरिवर्तकपसन्द सुरक्षित नाही करता आलीकेमॅप केमॅप्सडॉसनिर्देशितनिवडलेल्या मूळ-पाठाची दिशा ठरवलीलिहिण्यात चुकिF-Keyफाइलफाइल प्रकारया नावाची फाइल आहे तरी सुरक्षित कराफाइल आहे -yes विकल्प वापराफाइल:फिल्टर:शोधा (__Q__)फोल्डरफोल्डर:फ़क्त चालू डिरेक्टरी मध्येच फोल्डर बनवता येते.फॉन्टफ़ॉन्ट आकार:Glyph सूचक:हस्तलिपी आगतघरआगतKey Inputओळ समाप्तलाइन:शोधणेमॅकफोल्डर बनवानाहीपरत करण्यास काही नाहीअकृत करण्यास काही नाहीओकेउघडलेली फ़ाइलनिर्गमPSछपाई चे काम बाकी हैं बाहर पडु का छपाई चे काम बाकी आहे Enter ने बाहर याछपाई चे काम बाकी हैं। -yes विकल्प वापरुन बघाछपाई पूर्वदर्शन (__w__)छपाई पूर्वदर्शन (__w__) (बाकी काम)%d पाने छापलीछपाई चालू आहेगुप्त फ़ाइल्स छोटं करा (__A__)सांगितलेला फोल्डर आधीच आहे प्रहारयूनिक्सअज्ञात कूटनियम:बदल सुरक्षित नाही बहेर पडु का ? बदल सुरक्षित नाही फ़ाईल उघडु का ? बदल सुरक्षित नाही .। Enter ने बदलांचा त्याग कराबदल सुरक्षित नाही Enter ने बाहर याबदल सुरक्षित नाही -yes विकल्प वापरुन बघासांगितलेला फोल्डर बनवू शकत नाही लिहिलेहोजा(__G__)उघडा(__O__)छपाई (__P__)छपाई (__P__) (बाकी काम)परत करा (__R__)सुरक्षित ठेवा(__S__)सुरक्षित ठेवा(__S__) (आवश्यक आहे)अकृत करा (__U__)string शोधाgo line[कॉलम]नाही मिळालेopen -yes -e कूटनियम फाइलनावprint -e programsave -e कूटनियम फाइलनावsearch string नाही मिळालीनिरवलंबित मूल-पाठ: अनुप्रयोग: find textअनुप्रयोग: go line [कॉलम]अनुप्रयोग: open -e utf-8 -yes फाइलनावअनुप्रयोग: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]अनुप्रयोग: replace original newअनुप्रयोग: save -e utf-8 -yes फाइलनाव./gui/locale/mr/LC_MESSAGES/messages.po0000644000175000017500000015275310733117073017451 0ustar henrichhenrich# Marathi po file for Yudit # Copyrights jitendra Shah 2003 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: yudit-2.7.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2003-09-16 +0530\n" "Last-Translator: Swapnil Hajare\n" "Language-Team: Marathi \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "हो" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "नाही" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "ओके" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "रद्द करा" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "गुप्त फ़ाइल्स " # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "घर" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "cd करा" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "फोल्डर बनवा" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "फोल्डर" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "फाइल" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "फाइल प्रकार" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "फाइल:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "फोल्डर:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "फिल्टर:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "श्रेष्ठ फाइल प्रकार" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "सांगितलेला फोल्डर\n" "बनवू शकत नाही\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "फ़क्त चालू डिरेक्टरी मध्येच\n" "फोल्डर बनवता येते." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "सांगितलेला फोल्डर\n" "आधीच आहे\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "सांगितलेला फोल्डर\n" "बनवू शकत नाही\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "सांगितलेला फोल्डर\n" "मध्ये जाऊ शकत नाही\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "हस्तलिपी आगत" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "प्रहार" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "परिवर्तक" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "शोधणे" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "साफ़" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "निर्देशित" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "प्रत्याशी" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "नाही मिळाले" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "नाही वाचु शकत:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "केमॅप " # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "अक्षर" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "उपलब्ध केमॅप" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-Key" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "केमॅप्स" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Key Input" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "निर्गम" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Glyph सूचक:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "फ़ॉन्ट आकार:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "लाइन:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "कॉलम:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "यूनिक्स" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "डॉस" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "मॅक" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "उघडा(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "शोधा (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "जा(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "सुरक्षित ठेवा(__S__) (आवश्यक आहे)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "सुरक्षित ठेवा(__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "छपाई (__P__) (बाकी काम)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "छपाई (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "छपाई पूर्वदर्शन (__w__) (बाकी काम)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "छपाई पूर्वदर्शन (__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "अकृत करा (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "परत करा (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 #, fuzzy msgid "__D__irection Override" msgstr "मूळ-पाठ दिशा (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "छोटं करा (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "मोठं करा (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "फॉन्ट" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "आगत" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "ओळ समाप्त" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "बदल सुरक्षित नाही\n" "बहेर पडु का ?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "छपाई चे काम बाकी हैं\n" "बाहर पडु का \n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "बदल सुरक्षित नाही \n" "फ़ाईल उघडु का ?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "बदल सुरक्षित नाही .। Enter ने बदलांचा त्याग करा" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e कूटनियम फाइलनाव" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "या नावाची फाइल आहे \n" "तरी सुरक्षित करा" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e कूटनियम फाइलनाव" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "string शोधा" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go line[कॉलम]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "अकृत करण्यास काही नाही" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "परत करण्यास काही नाही" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "निवडलेल्या मूळ-पाठाची दिशा ठरवली" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "निवडलेल्या मूळ-पाठाची दिशा ठरवली" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 #, fuzzy msgid "usage: " msgstr "अनुप्रयोग: find text" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "नाही वाचु शकत:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "बदल सुरक्षित नाही Enter ने बाहर या" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "छपाई चे काम बाकी आहे Enter ने बाहर या" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "छपाई चालू आहे" # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d पाने छापली" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "अनुप्रयोग: open -e utf-8 -yes फाइलनाव" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "बदल सुरक्षित नाही -yes विकल्प वापरुन बघा" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "छपाई चे काम बाकी हैं। -yes विकल्प वापरुन बघा" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "अज्ञात कूटनियम:" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "उघडलेली फ़ाइल" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "ओळ समाप्त:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "अंतिम ओळ पूर्ण केली" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "अनुप्रयोग: save -e utf-8 -yes फाइलनाव" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "फाइल आहे -yes विकल्प वापरा" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "नाही लिहु शकत:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "लिहिण्यात चुकि" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "लिहिले" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "अनुप्रयोग: go line [कॉलम]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "अनुप्रयोग: find text" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "search string नाही मिळाली" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "अनुप्रयोग: replace original new" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "पसन्द सुरक्षित नाही करता आली" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "निरवलंबित मूल-पाठ: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "निर्देश नाही मिळाला" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "अनुप्रयोग: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o file -p printer -break" # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/ta/0000755000175000017500000000000010724001346013461 5ustar henrichhenrich./gui/locale/ta/LC_MESSAGES/0000755000175000017500000000000010733117073015253 5ustar henrichhenrich./gui/locale/ta/LC_MESSAGES/messages.mo0000644000175000017500000002026210733117073017421 0ustar henrichhenrich^   %3 9 Z{       () R h n s }      1   , > C I S ^ d l p |      # " % ! 3 S g s  !       0 N !o           " 3 = V m u  "  " HJ=h;XkZ901$Di <b5]C *o0Cv3}),4;N"d   +;,A nxtd!1III'+1PJ3~o{[gG?C   -  <$In4:D $Rw6L7 5E 6{ U:]2-OE%5$ (M+3<JL!Y A*HBCN\Z)9RF&6SG[@0VQ P^KD 8WX1,?=#"'/47.> T;I Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundsearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-01-05 23:42-0600 Last-Translator: T. Vaseeharan > Language-Team: Tamil MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit வரி முறிவு:உள்ள விசையமைப்புக்கள்பொருத்தமான கோப்பு வகைபெருப்பிCD toகுறித்த அடைவை உருவாக்க முடியாது குறித்த அடைவிற்குச் செல்ல முடியவில்லை. வாசிக்க முடியவில்லை: எழுத முடியவில்லை: நீக்குபொருத்தமானவைஉருக்கள்:துடைநிரல்:கட்டளையைக் காணவில்லை: மாற்றிகள்விருப்பங்களைச் சேமிக்க முடியவில்லைநடப்பு விசையமைப்பு:நடப்பு விசையமைப்புக்கள்டாஸ்நெறிப்படுத்தியதெரிவுசெய்த உரையின் திசை அமைக்கப்பட்டதுஎழுதுகையிற் தவறு: F-விசைகோப்புகோப்பு வகைகோப்பு உள்ளது. சேமிக்கவா?கோப்பு உள்ளது. -yes விருப்பத்தைப் பாவிக்கவும்.கோப்பு:வடிகட்டி:கண்டுபிடிஅடைவுஅடைவு:அடைவுகளை நடப்பு அடைவில் மட்டுமே உருவாக்கலாம்.எழுத்துருஎழுத்துரு அளவு:எழுத்துத் தகவல்:கையெழுத்து உள்ளீடுஇல்லம்உள்ளீடுவிசை உள்ளீடுவரி முறிவுவரி:பார்மாக்அடைவு உருவாக்குஇல்லைமீளச்செய்ய ஏதுமில்லை.நீக்க ஏதுமில்லை.சரிதிறந்தது: வெளியீடுஅச்சுப்பணி நிறைவடையவில்லை. வெளிச்செல்லவா? அச்சுப்பணி இயங்குகிறது. வெளிச்செல்க!அச்சுப்பணி இயங்குகிறது. -yes விருப்பத்தைப் பாவிக்கவும்அச்சு முன்னோட்டம்அச்சு முன்னோட்டம் (பணியில்)%d பக்கம்(கள்) அச்சிடப்பட்டன.அச்சிடுகிறது...மறைந்தவை காட்டுசிறுப்பிகுறித்த அடைவு ஏற்கனவே உள்ளது. வரிகள்:யுனிக்ஸ்தெரியாத உருக்கணம்: சேமிக்கப்படா மாற்றங்கள் உள்ளன. வெளிச்செல்லவா? சேமிக்கப்படா மாற்றங்கள் உள்ளன. திறக்கவா? சேமிக்கப்படா மாற்றங்கள். கைவிடுக!சேமிக்கப்படா மாற்றங்கள். வெளிச்செல்க!சேமிக்கப்படா மாற்றங்கள். -yes விருப்பத்தைப் பாவிக்கவும்தந்த அடைவை உருவாக்காது எழுதியது: ஆம்உரைத் திசைசெல்திறஅச்சிடுஅச்சிடு (பணியில்)மீளச்செய்சேமிசேமி (அவசியம்)நீக்குசரத்தைக் கண்டுபிடிவரிக்குச் செல் [நிரல்]காணவில்லைதேடற்சரத்தைக் காணவில்லை.ஆதரவற்ற உரை/uri:பாவனை: பாவனை: உரை கண்டுபிடிபாவனை: வரிக்குச் செல் [நிரல்] பாவனை: оpen -e utf-8 -yes கோப்புபாவனை: replace பழைய புதியபாவனை: save -e utf-8 -yes கோப்பு./gui/locale/ta/LC_MESSAGES/messages.po0000644000175000017500000015345110733117073017433 0ustar henrichhenrich# Tamil GUI message for Yudit. # Copyright (C) YEAR Free Software Foundation, Inc. # Thuraiappah Vaseeharan , 2001. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-01-05 23:42-0600\n" "Last-Translator: T. Vaseeharan >\n" "Language-Team: Tamil \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "ஆம்" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "இல்லை" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "சரி" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "நீக்கு" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "மறைந்தவை காட்டு" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "இல்லம்" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "CD to" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "அடைவு உருவாக்கு" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "அடைவு" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "கோப்பு" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "கோப்பு வகை" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "கோப்பு:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "அடைவு:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "வடிகட்டி:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "பொருத்தமான கோப்பு வகை" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "தந்த அடைவை\n" "உருவாக்காது\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "அடைவுகளை நடப்பு அடைவில்\n" "மட்டுமே உருவாக்கலாம்." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "குறித்த அடைவு\n" "ஏற்கனவே உள்ளது.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "குறித்த அடைவை\n" "உருவாக்க முடியாது\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "குறித்த அடைவிற்குச்\n" "செல்ல முடியவில்லை.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "கையெழுத்து உள்ளீடு" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "வரிகள்:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "மாற்றிகள்" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "பார்" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "துடை" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "நெறிப்படுத்திய" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "பொருத்தமானவை" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "காணவில்லை" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "வாசிக்க முடியவில்லை: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "நடப்பு விசையமைப்பு:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "உருக்கள்:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "உள்ள விசையமைப்புக்கள்" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-விசை" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "நடப்பு விசையமைப்புக்கள்" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "விசை உள்ளீடு" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "வெளியீடு" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "எழுத்துத் தகவல்:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "எழுத்துரு அளவு:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "வரி:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "நிரல்:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "யுனிக்ஸ்" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "டாஸ்" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "மாக்" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "திற" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "கண்டுபிடி" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "செல்" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "சேமி (அவசியம்)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "சேமி" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "அச்சிடு (பணியில்)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "அச்சிடு" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "அச்சு முன்னோட்டம் (பணியில்)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "அச்சு முன்னோட்டம்" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "நீக்கு" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "மீளச்செய்" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "உரைத் திசை" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "சிறுப்பி" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "பெருப்பி" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "எழுத்துரு" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "உள்ளீடு" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "வரி முறிவு" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "சேமிக்கப்படா மாற்றங்கள் உள்ளன.\n" "வெளிச்செல்லவா?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "அச்சுப்பணி நிறைவடையவில்லை.\n" "வெளிச்செல்லவா?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "சேமிக்கப்படா மாற்றங்கள் உள்ளன.\n" "திறக்கவா?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "சேமிக்கப்படா மாற்றங்கள். கைவிடுக!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "கோப்பு உள்ளது.\n" "சேமிக்கவா?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "சரத்தைக் கண்டுபிடி" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "வரிக்குச் செல் [நிரல்]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "நீக்க ஏதுமில்லை." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "மீளச்செய்ய ஏதுமில்லை." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "தெரிவுசெய்த உரையின் திசை அமைக்கப்பட்டது" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "தெரிவுசெய்த உரையின் திசை அமைக்கப்பட்டது" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "பாவனை: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "வாசிக்க முடியவில்லை: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "சேமிக்கப்படா மாற்றங்கள். வெளிச்செல்க!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "அச்சுப்பணி இயங்குகிறது. வெளிச்செல்க!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "அச்சிடுகிறது..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d பக்கம்(கள்) அச்சிடப்பட்டன." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "பாவனை: оpen -e utf-8 -yes கோப்பு" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "சேமிக்கப்படா மாற்றங்கள். -yes விருப்பத்தைப் பாவிக்கவும்" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "அச்சுப்பணி இயங்குகிறது. -yes விருப்பத்தைப் பாவிக்கவும்" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "தெரியாத உருக்கணம்: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "திறந்தது: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "வரி முறிவு:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "இறுதி வரியை முடித்தது." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "பாவனை: save -e utf-8 -yes கோப்பு" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "கோப்பு உள்ளது. -yes விருப்பத்தைப் பாவிக்கவும்." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "எழுத முடியவில்லை: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "எழுதுகையிற் தவறு: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "எழுதியது: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "பாவனை: வரிக்குச் செல் [நிரல்] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "பாவனை: உரை கண்டுபிடி" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "தேடற்சரத்தைக் காணவில்லை." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "பாவனை: replace பழைய புதிய" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "விருப்பங்களைச் சேமிக்க முடியவில்லை" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "ஆதரவற்ற உரை/uri:" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "கட்டளையைக் காணவில்லை: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" ./gui/locale/es/0000755000175000017500000000000010724001346013464 5ustar henrichhenrich./gui/locale/es/LC_MESSAGES/0000755000175000017500000000000010733117072015255 5ustar henrichhenrich./gui/locale/es/LC_MESSAGES/messages.mo0000644000175000017500000001563610733117072017434 0ustar henrichhenrichh\    " C d s        + (> g          1 A F Q ] o t z           # " %/ U g   !     $ C d !       4=FXa u '"@Pc"H<Yj*+  6 ? JV^g }':7+cw)* %-76nu  $ #1U Yc jEtMDM6l##8?-x9A9"&\ * # /K^}% 1!R&t)_W*sIQS *YLPD 6$?.Na[c\E2@ Z%4d/+R),8`;A U:="#KVGbf '_W3T&^C]51M!907(eJ>O X<HBFhg- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: Yudit 2.7 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-11-12 23:30GMT+2 Last-Translator: Juan Rafael Fernández García Language-Team: Spanish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Última Línea incompleta...Salto de línea:Mapas de teclado disponiblesMejor tipo de ficheroMás grande (__Z__)CD aNo se puede crear la carpeta especificada No se puede abrir la carpeta especificada. Error de lectura: No se pudo escribir: CancelarCandidatosCaracteres:LimpiarColumna:Orden no encontrada: ConversoresNo se pudieron salvar las preferencias Mapa de teclado actual:Mapas de teclado actualesDOSDirigidoSe ha re-establecido la dirección del texto seleccionado.Se ha establecido la dirección del texto seleccionado.Incrustar __T__extoError de escritura: Tecla-FFicheroTipo de ficheroEl fichero ya existe. ¿Confirma guardar?El fichero ya existe. Use la opción -yes.Fichero:Filtro:Buscar (__Q__uery)CarpetaCarpeta:Sólo se pueden crear carpetas en el directorio actual.FuenteTamaño de Fuente:Información sobre el glifo:Escritura a manoInicioEntradaEntrada de TecladoSalto de líneaLínea:BuscarMACCrear carpetaNoNo hay modificaciones que recuperar.No hay modificaciones que deshacer.SíAbierto: SalidaSep.Parr.Hay un trabajo de impresión pendiente. ¿Confirma que quiere salir? Hay trabajos de impresión pendientes. ¡Si pulsa Intro saldrá del programa!Quedan trabajos de impresión pendientes. Pruebe con la opción -yesImprimir: Vista Previa (__W__)Imprimir: Vista (__W__) Previa (del trabajo pendiente)Imprimida(s) %d página(s)Imprimiendo...Mostrar ocultoMás pequeño (__A__)La carpeta especificada ya existe. Trazos:UnixCodificación desconocida: No ha salvado los cambios. ¿Confirma que quiere salir? No ha salvado los cambios. ¿Confirma abrir? No ha salvado los cambios. ¡Si pulsa Intro se perderán!No ha salvado los cambios. ¡Si pulsa Intro saldrá del programa!No se han salvado los cambios. Pruebe con la opción -yesNo se creará la carpeta especificada Escrito: SíForzar __D__irección del TextoForzar dirección de (__E__) incrustaciónIr A (__G__o To)Abrir (__O__pen)Im__P__rimirIm__P__rimir (el trabajo pendiente)__R__ecuperar modificaciónGuardar (__S__ave)Guardar modificaciones (__S__)Deshacer (__U__) modificaciónAbandonar (__Y__) incrustaciónbuscar cadena de textoir a línea [columna]no se encuentraopen -yes -e archivo_de_codificaciónprint -e programasave -e fichero de codificaciónno se encontró la cadena buscadatext/uri no aceptado por el programa: uso: uso: buscar textouso: go línea [columna] uso: open -e utf-8 -yes nombre_de_ficherouso: print [-o archivo] [-p impresora][-e exec] [-break] [-hsize tamaño-de-fuente-de-cabecera]uso: replace original nuevouso: save -e utf-8 -yes _nombre_de_fichero./gui/locale/es/LC_MESSAGES/messages.po0000644000175000017500000015030010733117072017423 0ustar henrichhenrich# Mensajes en español para yudit-2.7. # Copyright © 2002 Juan Rafael Fernández García # Juan Rafael Fernández García , 2002. # Permission is granted to freely copy and distribute # this file and modified versions, provided that this # header is not removed and modified versions are marked # as such. # # msgid "" msgstr "" "Project-Id-Version: Yudit 2.7\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-11-12 23:30GMT+2\n" "Last-Translator: Juan Rafael Fernández García \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Sí" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "No" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "Sí" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Cancelar" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Mostrar oculto" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Inicio" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "CD a" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Crear carpeta" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Carpeta" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Fichero" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Tipo de fichero" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Fichero:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Carpeta:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Filtro:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Mejor tipo de fichero" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "No se creará\n" "la carpeta especificada\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Sólo se pueden crear carpetas\n" "en el directorio actual." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "La carpeta especificada\n" "ya existe.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "No se puede crear\n" "la carpeta especificada\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "No se puede abrir\n" "la carpeta especificada.\n" # # Esto hay que verlo en su contexto # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Escritura a mano" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Trazos:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Conversores" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Buscar" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Limpiar" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Dirigido" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Candidatos" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "no se encuentra" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Error de lectura: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Mapa de teclado actual:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Caracteres:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Mapas de teclado disponibles" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "Tecla-F" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Mapas de teclado actuales" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Entrada de Teclado" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Salida" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Información sobre el glifo:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Tamaño de Fuente:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Línea:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Columna:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "Sep.Parr." # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Abrir (__O__pen)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Buscar (__Q__uery)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Ir A (__G__o To)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Guardar modificaciones (__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Guardar (__S__ave)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Im__P__rimir (el trabajo pendiente)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Im__P__rimir" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Imprimir: Vista (__W__) Previa (del trabajo pendiente)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Imprimir: Vista Previa (__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Deshacer (__U__) modificación" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "__R__ecuperar modificación" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Incrustar __T__exto" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Forzar __D__irección del Texto" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Forzar dirección de (__E__) incrustación" # # ¿Producir, permitir? # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Abandonar (__Y__) incrustación" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Más pequeño (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Más grande (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Fuente" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Entrada" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Salto de línea" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "No ha salvado los cambios.\n" "¿Confirma que quiere salir?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Hay un trabajo de impresión pendiente.\n" "¿Confirma que quiere salir?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "No ha salvado los cambios.\n" "¿Confirma abrir?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "No ha salvado los cambios. ¡Si pulsa Intro se perderán!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e archivo_de_codificación" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "El fichero ya existe.\n" "¿Confirma guardar?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e fichero de codificación" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "buscar cadena de texto" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "ir a línea [columna]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e programa" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "No hay modificaciones que deshacer." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "No hay modificaciones que recuperar." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Se ha establecido la dirección del texto seleccionado." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Se ha re-establecido la dirección del texto seleccionado." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "uso: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Error de lectura: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "No ha salvado los cambios. ¡Si pulsa Intro saldrá del programa!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Hay trabajos de impresión pendientes. ¡Si pulsa Intro saldrá del programa!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Imprimiendo..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Imprimida(s) %d página(s)" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "uso: open -e utf-8 -yes nombre_de_fichero" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "No se han salvado los cambios. Pruebe con la opción -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Quedan trabajos de impresión pendientes. Pruebe con la opción -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Codificación desconocida: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Abierto: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Salto de línea:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "Última Línea incompleta..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "uso: save -e utf-8 -yes _nombre_de_fichero" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "El fichero ya existe. Use la opción -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "No se pudo escribir: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Error de escritura: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Escrito: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "uso: go línea [columna] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "uso: buscar texto" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "no se encontró la cadena buscada" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "uso: replace original nuevo" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "No se pudieron salvar las preferencias " # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "text/uri no aceptado por el programa: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Orden no encontrada: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "uso: print [-o archivo] [-p impresora][-e exec] [-break] [-hsize tamaño-de-fuente-de-cabecera]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o archivo -p impresora -break" ./gui/locale/hu/0000755000175000017500000000000010724001346013471 5ustar henrichhenrich./gui/locale/hu/LC_MESSAGES/0000755000175000017500000000000010733117072015262 5ustar henrichhenrich./gui/locale/hu/LC_MESSAGES/messages.mo0000644000175000017500000001511310733117072017427 0ustar henrichhenrichkt ! : G W f t z        $ / = K O +X (       , 2 : F M 1U           % ( 1 8 #; "_ %       ! ? H M `   !  (,C Zdu ~  #4Jcz"P "<:_*%&L_p x   6/3c  $* 0P Vc v    -#+QC}" &3; J kw|!.  .'*V,;X n  #, EQj$X("`QLT<$( 2;&4E:")dX\#@W =OPfb,>_MZi0RKge]N*+6 kUFD3'BI? AVa9hG1Jj/CY 5%.Sc-^8H !7[ Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: 2.0 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-01-09 22:51+0900 Last-Translator: Gaspar Sinai Language-Team: Gaspar Sinai MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Az utolsó sor nem teljes.Sor tördelés:elérhető kmapoklegjobb típusnagyobb (__Z__)menjNem tudom a megadott mappát létrehozni! Nem tudok a megadott mappába menni! Nem tudom olvasni:Nem tudom írni:mégsemJelöltekkategóriabetűk:Töröloszlop:Nem találom a parancsot:Átalakítókjelenlegi kmap:jelenlegi kmapokDOSÍrányosA kiválaszott szöveg irányát alaphelyzetbe hoztam.A kiválaszott szöveg iránya megváltoztatva.szöveg beágyazás (__T__)Íráshiba:F-gombfájlfájl típusLétező fájl! Tényleg elmentsük?Létező fájl. A -yes opciót használja!fájl:szűrő:keres(__Q__)mappamappa:Mappát csak a jelenlegi helyen tudok csinálni.betűbetűméret:glif információ:Kézíráskiemeléshazabevitelbeviteltördeléssor:KeresMACmappát csinálnemNincs mit előcsinálni!Nincs mit visszacsinálni!rendbenMegnyitottam:kimenetPSNyomtatás közben vagyunk. Tényleg kilép? Nyomtatás közben vagyunk. Enterrel kilépNyomtatás még nem fejeződött be. Próbálkozz a -yes opcióval!nyomtatás previe(__w__) nyomtatás previe(__w__) (foglalt)%d oldalt nyomtattam.Most nyomtatok...megjegyzés:rejtettkisebb (__A__)A megadott mappa már létezik! VonásszámUnixA kódolás ismeretlen:Nincs elmentve. Tényleg kilép? Nincs elmentve! Tényleg nyissunk új fájlt? Nincs elmentve. Enter kitöröl!Nincs elmentve. Enterrel kilép!Nincs elmentve. Próbálkozz a -yes opcióval!Nem fogom a megadott mappát létrehozni! Írtam:igenszövegírány (__D__)beágyazás (__E__)pozicinál (__G__)kiemelés (__H__)megnyit (__O__)nyomtat (__P__)nyomtat (__P__) (foglalt)előcsinál (__R__)elment (__S__)elment (__S__) (szükséges)visszacsinál (__U__)bágyazás kikapcsolása (__Y__)find szöveghasználat: go sor [oszlop]nincs megopen -yes -e kódolás fájlprint -e programsave -e kódolás fájlNem találtam a keresett szöveget!nem támogatott text/urihasználat:használat: find szöveghasználat: go sor [oszlop]használat: open -e utf-8 -yes fájlhasználat: print [-o fájl] [-p nyomtató] [-e exec] [-break] [-hsize header-font-size]használat: replace régi újhasználat: save -e utf-8 -yes fájlnév./gui/locale/hu/LC_MESSAGES/messages.po0000644000175000017500000014735310733117072017446 0ustar henrichhenrich# Yudit unicode editor # Gaspar Sinai # Gaspar Sinai 2001-01-09 # msgid "" msgstr "" "Project-Id-Version: 2.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-01-09 22:51+0900\n" "Last-Translator: Gaspar Sinai \n" "Language-Team: Gaspar Sinai \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "igen" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "nem" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "rendben" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "mégsem" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "rejtett" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "haza" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "menj" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "mappát csinál" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "mappa" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "fájl" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "fájl típus" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "fájl:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "mappa:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "szűrő:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "legjobb típus" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Nem fogom a megadott\n" "mappát létrehozni!\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Mappát csak a jelenlegi\n" "helyen tudok csinálni." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "A megadott mappa\n" "már létezik!\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Nem tudom a megadott\n" "mappát létrehozni!\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Nem tudok a megadott\n" "mappába menni!\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Kézírás" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Vonásszám" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Átalakítók" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Keres" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Töröl" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Írányos" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Jelöltek" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "nincs meg" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "kategória" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "kiemelés" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "megjegyzés:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Nem tudom olvasni:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "jelenlegi kmap:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "betűk:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "elérhető kmapok" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-gomb" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "jelenlegi kmapok" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "bevitel" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "kimenet" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "glif információ:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "betűméret:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "sor:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "oszlop:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "megnyit (__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "keres(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "pozicinál (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "elment (__S__) (szükséges)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "elment (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "nyomtat (__P__) (foglalt)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "nyomtat (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "nyomtatás previe(__w__) (foglalt)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "nyomtatás previe(__w__) " # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "visszacsinál (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "előcsinál (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "szöveg beágyazás (__T__)" # # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "szövegírány (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "beágyazás (__E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "bágyazás kikapcsolása (__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "kisebb (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "nagyobb (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "kiemelés (__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "betű" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "bevitel" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "tördelés" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Nincs elmentve.\n" "Tényleg kilép?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Nyomtatás közben vagyunk.\n" "Tényleg kilép?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Nincs elmentve!\n" "Tényleg nyissunk új fájlt?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Nincs elmentve. Enter kitöröl!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e kódolás fájl" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Létező fájl!\n" "Tényleg elmentsük?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e kódolás fájl" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find szöveg" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "használat: go sor [oszlop]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Nincs mit visszacsinálni!" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Nincs mit előcsinálni!" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "A kiválaszott szöveg iránya megváltoztatva." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "A kiválaszott szöveg irányát alaphelyzetbe hoztam." # # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "használat:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Nem tudom olvasni:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Nincs elmentve. Enterrel kilép!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Nyomtatás közben vagyunk. Enterrel kilép" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Most nyomtatok..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d oldalt nyomtattam." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "használat: open -e utf-8 -yes fájl" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Nincs elmentve. Próbálkozz a -yes opcióval!" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Nyomtatás még nem fejeződött be. Próbálkozz a -yes opcióval!" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "A kódolás ismeretlen:" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Megnyitottam:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Sor tördelés:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "Az utolsó sor nem teljes." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "használat: save -e utf-8 -yes fájlnév" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Létező fájl. A -yes opciót használja!" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Nem tudom írni:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Íráshiba:" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Írtam:" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "használat: go sor [oszlop]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "használat: find szöveg" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "Nem találtam a keresett szöveget!" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "használat: replace régi új" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "nem támogatott text/uri" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Nem találom a parancsot:" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "használat: print [-o fájl] [-p nyomtató] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o fájl -p nyomtató -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "Insert" #~ msgstr "Beszúr" ./gui/locale/zh_CN/0000755000175000017500000000000010724001346014056 5ustar henrichhenrich./gui/locale/zh_CN/LC_MESSAGES/0000755000175000017500000000000010733117073015650 5ustar henrichhenrich./gui/locale/zh_CN/LC_MESSAGES/messages.mo0000644000175000017500000001376710733117073020032 0ustar henrichhenrichb,<H IVf u       * 5 C Q U (^          1 E J U a s x ~           # " %3 Y k   !     ( G h !      ! * 3 E N Z k u       "P<"     7Xhx     !-4 ;+H't    1 / < FP W dnuy 2-0>o%# #26>i--0 5 Vcg|# 6'@h!y! (`>.(B>%3P$F;8 :W\J*_[2' L1-Q!E]/75S. (9OI4aT0) <M+RbVN6AK @"^ XZ=`UG&#CHYD?, Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.4.8 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-11-23 15:11+0800 Last-Translator: 周金念 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 换行:可用的输入法预设文件类型放大(__Z__)转到目录无法建立 指定的文件夹 无法转到 指定的文件夹 无法读取:无法写入:取消选字区字符编号:清除字数:无法读取:参照档当前输入法:输入法DOS笔划方向选定文字的方向已设定。写入时发生错误:F- 键文件文件类型文件已存在。 是否确定要替换?文件已存在。使用 -yes 选项。文件:类别:查找 (__Q__)文件夹文件夹:文件夹只可以在 当前的目录下建立。字体字号大小:字符编号:手写输入根目录输入法输入换行方式行数:校对MAC建立文件夹否没有操作可重复。没有操作可还原。确定已打开:输出PS有待打印的文件。 是否确定要退出? 有待打印的文件。按输入键退出!有待打印的文件。尝试使用 -yes 选项打印预览 (__W__)打印预览(待打印文件) (__W__)已打印 %d 页。正在打印...切换隐藏文件缩小 (__A__)指定的文件夹 已经存在。 笔划:Unix不详的编码:改变的尚未保存。 是否确定要退出? 改变的尚未保存。 是否确定打开另一个文件? 改变的尚未保存。按回车键放弃!改变的尚未保存。按回车键退出!改变的尚未保存。尝试使用 -yes 选项不能建立 指定的文件夹 已写入:是文字方向 (__D__)转到 (__G__)打开 (__O__)打印 (__P__)打印(待打印文件) (__P__)重复 (__R__)保存 (__S__)保存 (已改变的)(__S__)还原 (__U__)查找文字串go 行数 [字数]找不到open -yes -e 编码类别 文件名称打印 -e 程序save -e 编码类别 文件名称找不到要查找的字符串。不支持的 text/uri:用法: 用法:find 字符串用法:go 行数 [字数]用法:open -e utf-8 -yes 文件名称用法:print [-o 文件名称] [-p 打印机] [-e 执行] [-break] [-hsize 标题字号大小]用法:replace 原文字串 新的文字串用法:save -e utf-8 -yes 文件名称./gui/locale/zh_CN/LC_MESSAGES/messages.po0000644000175000017500000014656210733117073020035 0ustar henrichhenrich# Simplified chinese translation of yudit. # Copyright (C) 2006 Free Software Foundation, Inc. # , 2006. # msgid "" msgstr "" "Project-Id-Version: yudit 2.4.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-11-23 15:11+0800\n" "Last-Translator: 周金念\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "是" # # File: ../swidget/SDialog.cpp, line: 39 # File: ../swidget/SDialog.cpp, line: 62 # File: ../swidget/SDialog.cpp, line: 66 # File: ../swidget/SDialog.cpp, line: 70 # File: ../swidget/SDialog.cpp, line: 74 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "否" # # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "确定" # # File: ../swidget/SDialog.cpp, line: 78 # File: ../swidget/SFileDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "取消" # # File: ../swidget/SFileDialog.cpp, line: 45 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "切换隐藏文件" # # File: ../swidget/SFileDialog.cpp, line: 50 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "根目录" # # File: ../swidget/SFileDialog.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "转到目录" # # File: ../swidget/SFileDialog.cpp, line: 68 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "建立文件夹" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "文件夹" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "文件" # # File: ../swidget/SFileDialog.cpp, line: 85 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "文件类型" # # File: ../swidget/SFileDialog.cpp, line: 90 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "文件:" # # File: ../swidget/SFileDialog.cpp, line: 98 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "文件夹:" # # File: ../swidget/SFileDialog.cpp, line: 103 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "类别:" # # File: ../swidget/SFileDialog.cpp, line: 113 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "预设文件类型" # # File: ../swidget/SFileDialog.cpp, line: 504 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "不能建立\n" "指定的文件夹\n" # # File: ../swidget/SFileDialog.cpp, line: 511 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "文件夹只可以在\n" "当前的目录下建立。" # # File: ../swidget/SFileDialog.cpp, line: 518 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "指定的文件夹\n" "已经存在。\n" # # File: ../swidget/SFileDialog.cpp, line: 529 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "无法建立\n" "指定的文件夹\n" # # File: ../swidget/SFileDialog.cpp, line: 545 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "无法转到\n" "指定的文件夹\n" # # File: ../swidget/SFreeHand.cpp, line: 49 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "手写输入" # # File: ../swidget/SFreeHand.cpp, line: 53 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "笔划:" # # File: ../swidget/SFreeHand.cpp, line: 62 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "参照档" # # File: ../swidget/SFreeHand.cpp, line: 72 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "校对" # # File: ../swidget/SFreeHand.cpp, line: 78 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "清除" # # File: ../swidget/SFreeHand.cpp, line: 85 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "笔划方向" # # File: ../swidget/SFreeHand.cpp, line: 91 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "选字区" # # File: ../swidget/SFreeHand.cpp, line: 151 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "找不到" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "无法读取:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "当前输入法:" # # File: SKMapPanel.cpp, line: 36 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "字符编号:" # # File: SKMapPanel.cpp, line: 38 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "可用的输入法" # # File: SKMapPanel.cpp, line: 43 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F- 键" # # File: SKMapPanel.cpp, line: 44 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "输入法" # # File: SKMapPanel.cpp, line: 48 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "输入" # # File: SKMapPanel.cpp, line: 49 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "输出" # # File: SMessageBar.cpp, line: 50 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "字符编号:" # # File: SMessageBar.cpp, line: 60 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "字号大小:" # # File: SMessageBar.cpp, line: 70 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "行数:" # # File: SMessageBar.cpp, line: 80 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "字数:" # # File: SToolBar.cpp, line: 85 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 87 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 89 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 91 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 473 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "打开 (__O__)" # # File: SToolBar.cpp, line: 474 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "查找 (__Q__)" # # File: SToolBar.cpp, line: 475 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "转到 (__G__)" # # File: SToolBar.cpp, line: 479 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "保存 (已改变的)(__S__)" # # File: SToolBar.cpp, line: 483 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "保存 (__S__)" # # File: SToolBar.cpp, line: 489 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "打印(待打印文件) (__P__)" # # File: SToolBar.cpp, line: 493 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "打印 (__P__)" # # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "打印预览(待打印文件) (__W__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "打印预览 (__W__)" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "还原 (__U__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "重复 (__R__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "文字方向 (__D__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 510 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "缩小 (__A__)" # # File: SToolBar.cpp, line: 511 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "放大(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "字体" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "输入法" # # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "换行方式" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "改变的尚未保存。\n" "是否确定要退出?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "有待打印的文件。\n" "是否确定要退出?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "改变的尚未保存。\n" "是否确定打开另一个文件?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1790 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "改变的尚未保存。按回车键放弃!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1799 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e 编码类别 文件名称" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "文件已存在。\n" "是否确定要替换?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e 编码类别 文件名称" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "查找文字串" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go 行数 [字数]" # # File: SYudit.cpp, line: 595 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "打印 -e 程序" # # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "没有操作可还原。" # # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "没有操作可重复。" # # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 667 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "选定文字的方向已设定。" # # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "选定文字的方向已重设。" # # File: SYudit.cpp, line: 832 # File: SYudit.cpp, line: 847 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "用法: " # # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "无法读取:" # # File: SYudit.cpp, line: 766 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "改变的尚未保存。按回车键退出!" # # File: SYudit.cpp, line: 775 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "有待打印的文件。按输入键退出!" # # File: SYudit.cpp, line: 1037 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "正在打印..." # # File: SYudit.cpp, line: 1053 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "已打印 %d 页。" # # File: SYudit.cpp, line: 1206 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "用法:open -e utf-8 -yes 文件名称" # # File: SYudit.cpp, line: 1214 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "改变的尚未保存。尝试使用 -yes 选项" # # File: SYudit.cpp, line: 1220 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "有待打印的文件。尝试使用 -yes 选项" # # File: SYudit.cpp, line: 1229 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "不详的编码:" # # File: SYudit.cpp, line: 1305 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "已打开:" # # File: SYudit.cpp, line: 1314 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " 换行:" # # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr " 已完成到最后一行。" # # File: SYudit.cpp, line: 1379 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "用法:save -e utf-8 -yes 文件名称" # # File: SYudit.cpp, line: 1388 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "文件已存在。使用 -yes 选项。" # # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "无法写入:" # # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "写入时发生错误:" # # File: SYudit.cpp, line: 1448 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "已写入:" # # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "用法:go 行数 [字数]" # # File: SYudit.cpp, line: 1507 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "用法:find 字符串" # # File: SYudit.cpp, line: 1513 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "找不到要查找的字符串。" # # File: SYudit.cpp, line: 1532 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "用法:replace 原文字串 新的文字串" # # File: SYudit.cpp, line: 1747 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1768 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "不支持的 text/uri:" # # File: SYudit.cpp, line: 2098 # File: SYudit.cpp, line: 2125 # File: SYudit.cpp, line: 2140 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "无法读取:" # # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "用法:print [-o 文件名称] [-p 打印机] [-e 执行] [-break] [-hsize 标题字号大小]" # # # # # # # # # # # File: SYudit.cpp, line: 586 #~ msgid "print -o file -p printer -break" #~ msgstr "打印 -o 文件 -p 打印机 -break" ./gui/locale/bn/0000755000175000017500000000000010724001346013454 5ustar henrichhenrich./gui/locale/bn/LC_MESSAGES/0000755000175000017500000000000010733117072015245 5ustar henrichhenrich./gui/locale/bn/LC_MESSAGES/messages.mo0000644000175000017500000002211510733117072017412 0ustar henrichhenrichh\    " C d s        + (> g          1 A F Q ] o t z           # " %/ U g   !     $ C d !       4=FXa u '"@Pc"15%[)s5 YWM%((7H _Fi9/,3 `"jbPFA5 alV )-"5O i w%0i\pLzia<Y9bT N[-tbXr^nTT$ =AG=2 3 &N 7u M @ !N"6m"" "&"F#mK#O#C $IQS *YLPD 6$?.Na[c\E2@ Z%4d/+R),8`;A U:="#KVGbf '_W3T&^C]51M!907(eJ>O X<HBFhg- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: Yudit2.6.4 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-10-13 18:15+0530 Last-Translator: FULL NAME Language-Team: LANGUAGE MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 অসম্পূর্ণ শেষ লাইন...লাইন ভংগ উপলব্ধ কী-ম্যাপশ্রেষ্ঠ ফাইল প্রকারবড় কর [__Z__]CD করউল্লিখিত ফোল্ডার বানাতে পারছি না উল্লিখিত ফোল্ডার-এ যেতে পারছি না পড়তে পারছি না :লিখতে পারছি না: খারিজ্ করসম্ভাব্য অক্ষরঅক্ষর:সাফ্ করোকলমএই আদেশ খুঁজে পাওয়া যায় নি: পরিবর্তকপছন্দ সঞ্চয় করা যায়নিবর্তমান কি-ম্যাপ্বর্তমান কি-ম্যাপডস্দিশা অনুযায়ীচয়ণিত পাঠের দিশা পুনর্বহাল করা হয়েছেচয়নিত পাঠের দিশা ঠিক করা হয়েছেসম্পুর্ণ পাঠের অনুপোতন [__T__]লেখার সময় ভুল হয়েছে: F-কিফাইলফাইল প্রকারফাইল আগে থেকেই আছে। তবুও সঞ্চিত করবো?ফাইল আগে থেকেই আছে, -yes বিকল্প ব্যবহার করুনফাইল:ছাঁকনীখোঁজো [__Q__]ফোল্ডারফোল্ডার:কেবল বর্তমান নির্দেশিকাতে ফোল্ডার বাননো যাবে ।ফন্ট্ফন্ট্ আকারহরফ সূচকহাতে লেখা প্রবেশ ঘরপ্রবেশকি প্রবেশলাইন অন্তলাইন:দেখোম্যাকফোল্ডার বানাওনাআবার করার কিছু নেইবাতিল করার মত কোনো পুর্ববর্তী কার্য নেইঠিক আছেখোলা হয়েছে: ফলPSছাপা বাকি আছে তবুও বাহির হবে? ছাপার কাজ বাকি আছে, এন্টার মারলে বন্ধ হয়ে যাবে !ছাপার কাজ বাকি আছে, -yes বিকল্প চেষ্টা করুনমুদ্রন প্রাগ্দর্শক [__w__]মুদ্রন প্রাগ্দর্শক(বাকি কার্য){__w__]%d পৃষ্ঠা ছাপা হয়ে গেছেছাপা চলছে....গুপ্ত দেখাওছোটো করো [__A__]উল্লিখিত ফোল্ডার আগে থেকেই আছে আঁচড়ইউনিক্স্অজানা এন্‌কোডিং :পরিবর্তন সঞ্চিত হয়নি! তবুও বাহির হবে? পরিবর্তন সঞ্চিত হয়নি তবুও খুলবে? পরিবর্তন সঞ্চিত নেই, এন্টার মারলে চলে যাবে !পরিবর্তন সঞ্চিত হয়নি, এন্টার মারলে বন্ধ হয়ে যাবে !পরিবর্তন সঞ্চিত নেই, -yes বিকল্প চেষ্টা করুননির্দিষ্ট ফোল্ডার তৈরী করবে না লেখা হয়ে গেছে:হাঁলিখন দিশা পরিবর্তন কর [__D__]অনুপোতন পরিবর্তন কর [__E__]যাও[__G__]খোলো[__O__]ছাপো[__P__]ছাপো(বাকি কার্য) [__P__]আবার কর[__R__]সঞ্চিত রাখো[__S__]সঞ্চিত রাখো(জরুরী)[__S__]পুর্ববর্তী কার্য বাতিল কর [__U__]অনুপোতন পুনর্বহাল কর [__Y__]find শব্দgo লাইন [কলম]পাওয়া যায়নিopen -yes -e ফাইল প্রকার ফাইল নামprint -e programsave -e ফাইল প্রকার ফাইল নামযে কথা খুঁজেছি, তা পাওয়া যায়নিলিখন (text/uri) এর সহয়া নেইব্যবহার: ব্যবহার: find textব্যবহার go line [column]ব্যবহার: open -e utf-8 -yes ফাইলের নামব্যবহার: print [-o ফাইল] [-p ছাপক] [-e exec] [-break] [-hsize header-font-size]ব্যবহার: replace মূল শব্দ নতুন শব্দব্যবহার: save -e utf-8 -yes ফাইল্ নাম./gui/locale/bn/LC_MESSAGES/messages.po0000644000175000017500000015566310733117072017434 0ustar henrichhenrich# bengali messages # Copyright (C) 2002 Free Software Foundation, Inc. # Dr Anirban Mitra , 2002. # msgid "" msgstr "" "Project-Id-Version: Yudit2.6.4\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-10-13 18:15+0530\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "হাঁ" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "না" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "ঠিক আছে" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "খারিজ্ কর" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "গুপ্ত দেখাও" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "ঘর" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "CD কর" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "ফোল্ডার বানাও" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "ফোল্ডার" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "ফাইল" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "ফাইল প্রকার" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "ফাইল:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "ফোল্ডার:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "ছাঁকনী" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "শ্রেষ্ঠ ফাইল প্রকার" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "নির্দিষ্ট ফোল্ডার \n" "তৈরী করবে না\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "কেবল বর্তমান নির্দেশিকাতে \n" "ফোল্ডার বাননো যাবে ।" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "উল্লিখিত ফোল্ডার\n" "আগে থেকেই আছে \n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "উল্লিখিত ফোল্ডার\n" "বানাতে পারছি না\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "উল্লিখিত ফোল্ডার-এ\n" "যেতে পারছি না\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "হাতে লেখা প্রবেশ " # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "আঁচড়" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "পরিবর্তক" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "দেখো" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "সাফ্ করো" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "দিশা অনুযায়ী" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "সম্ভাব্য অক্ষর" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "পাওয়া যায়নি" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "পড়তে পারছি না :" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "বর্তমান কি-ম্যাপ্" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "অক্ষর:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "উপলব্ধ কী-ম্যাপ" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-কি" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "বর্তমান কি-ম্যাপ" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "কি প্রবেশ" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "ফল" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "হরফ সূচক" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "ফন্ট্ আকার" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "লাইন:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "কলম" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "ইউনিক্স্" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "ডস্" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "ম্যাক" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "খোলো[__O__]" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "খোঁজো [__Q__]" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "যাও[__G__]" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "সঞ্চিত রাখো(জরুরী)[__S__]" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "সঞ্চিত রাখো[__S__]" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "ছাপো(বাকি কার্য) [__P__]" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "ছাপো[__P__]" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "মুদ্রন প্রাগ্দর্শক(বাকি কার্য){__w__]" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "মুদ্রন প্রাগ্দর্শক [__w__]" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "পুর্ববর্তী কার্য বাতিল কর [__U__]" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "আবার কর[__R__]" # # This sets the embedding of the Document # Left-, Rright- or no-embedding. # The text will be alignem to the left/right or depending on # the implicit initial paragraph directionality both. # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "সম্পুর্ণ পাঠের অনুপোতন [__T__]" # # # This starts an LRO / PDF or RLO /PDF explicit text embedding with # The implicit directionality of the embeeded characters is overridden. # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "লিখন দিশা পরিবর্তন কর [__D__]" # # # This starts an LRE / PDF or RLE /PDF explicit text embedding # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "অনুপোতন পরিবর্তন কর [__E__]" # # # This resets embedding of selected text, or gets out of # current embedding. # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "অনুপোতন পুনর্বহাল কর [__Y__]" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "ছোটো করো [__A__]" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "বড় কর [__Z__]" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "ফন্ট্" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "প্রবেশ" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "লাইন অন্ত" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "পরিবর্তন সঞ্চিত হয়নি!\n" "তবুও বাহির হবে?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "ছাপা বাকি আছে\n" "তবুও বাহির হবে?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "পরিবর্তন সঞ্চিত হয়নি \n" "তবুও খুলবে?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "পরিবর্তন সঞ্চিত নেই, এন্টার মারলে চলে যাবে !" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e ফাইল প্রকার ফাইল নাম" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "ফাইল আগে থেকেই আছে।\n" "তবুও সঞ্চিত করবো?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e ফাইল প্রকার ফাইল নাম" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find শব্দ" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go লাইন [কলম]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "বাতিল করার মত কোনো পুর্ববর্তী কার্য নেই" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "আবার করার কিছু নেই" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "চয়নিত পাঠের দিশা ঠিক করা হয়েছে" # # # This is printed when a selected text has beed converted with a # Yield Embedding button. # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "চয়ণিত পাঠের দিশা পুনর্বহাল করা হয়েছে" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "ব্যবহার: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "পড়তে পারছি না :" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "পরিবর্তন সঞ্চিত হয়নি, এন্টার মারলে বন্ধ হয়ে যাবে !" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "ছাপার কাজ বাকি আছে, এন্টার মারলে বন্ধ হয়ে যাবে !" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "ছাপা চলছে...." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d পৃষ্ঠা ছাপা হয়ে গেছে" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "ব্যবহার: open -e utf-8 -yes ফাইলের নাম" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "পরিবর্তন সঞ্চিত নেই, -yes বিকল্প চেষ্টা করুন" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "ছাপার কাজ বাকি আছে, -yes বিকল্প চেষ্টা করুন" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "অজানা এন্‌কোডিং :" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "খোলা হয়েছে: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "লাইন ভংগ " # # # This is printed when the last line in the saved text file does # not have a proper line-ending character. # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "অসম্পূর্ণ শেষ লাইন..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "ব্যবহার: save -e utf-8 -yes ফাইল্ নাম" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "ফাইল আগে থেকেই আছে, -yes বিকল্প ব্যবহার করুন" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "লিখতে পারছি না: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "লেখার সময় ভুল হয়েছে: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "লেখা হয়ে গেছে:" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "ব্যবহার go line [column]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "ব্যবহার: find text" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "যে কথা খুঁজেছি, তা পাওয়া যায়নি" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "ব্যবহার: replace মূল শব্দ নতুন শব্দ" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "পছন্দ সঞ্চয় করা যায়নি" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "লিখন (text/uri) এর সহয়া নেই" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "এই আদেশ খুঁজে পাওয়া যায় নি: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "ব্যবহার: print [-o ফাইল] [-p ছাপক] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o ফাইল -p প্রিন্টার্ -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/fi/0000755000175000017500000000000010724001346013453 5ustar henrichhenrich./gui/locale/fi/LC_MESSAGES/0000755000175000017500000000000010733117072015244 5ustar henrichhenrich./gui/locale/fi/LC_MESSAGES/messages.mo0000644000175000017500000001510510733117072017412 0ustar henrichhenrichh\    " C d s        + (> g          1 A F Q ] o t z           # " %/ U g   !     $ C d !       4=FXa u '"@Pc"^#R v#*C KV^dl " 5#6Q iu~1.     8#\ es   %--0+^' -HPU4n1=2.Fu  (!8 Zdy !! .9O)ja$)IQS *YLPD 6$?.Na[c\E2@ Z%4d/+R),8`;A U:="#KVGbf '_W3T&^C]51M!907(eJ>O X<HBFhg- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: 2.7 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE Last-Translator: Miikka-Markus Alhonen Language-Team: Tigatieto Oy MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 Viimeinen rivi epätäydellinen... Rivinvaihto:Saatavilla olevat KMap:itParas tiedostotyyppiSuurempi(__Z__)Vaihda hakemistoaEn pysty luomaan hakemistoa En pysty siirtymään hakemistoon. En pysty lukemaan: En pysty kirjoittamaan: PeruutaEhdotelmatMerkit:PyyhiSarake:Käskyä ei löydy: MuuntimetEn pystynyt tallentamaan asetuksiaNykyinen KMap:Nykyiset KMap:itDOSSuunnattuValitun tekstin suunta on palautettu alkuperäiseksi.Valitun tekstin suunta on asetettu.Koko dokumen__t__in suuntaVirhe kirjoitettaessa: F-näppäinTiedostoTiedostotyyppiTiedosto on jo olemassa. Kirjoitetaanko päälle?Tiedosto on jo olemassa. Käytä optiota -yes.Tiedosto:Suodatin:Etsi(__Q__)HakemistoHakemisto:Hakemistoja voidaan luoda vain nykyisessä hakemistossa.KirjasinKirjasinkoko:Tietoa merkistä:KäsinkirjoitusKotihakemistoSyöteNäppäinsyöteRivinvaihtoRivi:EtsiMACLuo hakemistoEiEi mitään palautettavaa.Ei mitään kumottavaa.OKAvattu: TulostePSTulostustyö kesken. Lopetetaanko kuitenkin? Tulostustyö kesken. Enterillä lopetetaan!Tulostustyö kesken. Koeta optiota -yesEsikatselu(__W__)Esikatselu(__W__) (työ kesken)Tulostettu %d sivu(a).Tulostetaan...Näytä piilotetutPienempi(__A__)Hakemisto on jo olemassa. Vetoja:UnixTuntematon koodaustapa: Tallentamattomia muutoksia. Lopetetaanko kuitenkin? Tallentamattomia muutoksia. Avataanko kuitenkin? Tallentamattomia muutoksia. Enterillä hylätään muutokset!Tallentamattomia muutoksia. Enterillä lopetetaan!Tallentamattomia muutoksia. Koeta optiota -yesEn pysty luomaan hakemistoa Kirjoitettu: KylläVaih__d__a suuntaaUpota t__e__kstiäMene riville(__G__)Avaa(__O__)Tulosta(__P__)Tulosta(__P__) (työ kesken)Palauta(__R__)Tallenna(__S__)Tallenna(__S__) (muutoksia tehty)K__u__moaPoista upotus(__Y__)find merkkijonogo rivi [sarake]ei löytynytopen -yes -e koodaustapa tiedostoprint -e ohjelmasave -e koodaustapa tiedostoHaettua merkkijonoa ei löytynyt.ei-tuettu text/uri: käyttö: käyttö: find tekstikäyttö: go rivi [sarake]käyttö: open -e utf-8 -yes tiedostonimikäyttö: print [-o tiedosto] [-p tulostin] [-e käynnistä] [-break] [-hsize otsikon_fonttikoko]käyttö: replace alkuperäinen uusikäyttö: save -e utf-8 -yes tiedostonimi./gui/locale/fi/LC_MESSAGES/messages.po0000644000175000017500000014731310733117072017424 0ustar henrichhenrich# Yudit Unicode Editor # Copyright (C) 2002 Free Software Foundation, Inc. # Miikka-Markus Alhonen , 2002. # msgid "" msgstr "" "Project-Id-Version: 2.7\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Miikka-Markus Alhonen \n" "Language-Team: Tigatieto Oy \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Kyllä" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Ei" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "OK" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Peruuta" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Näytä piilotetut" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Kotihakemisto" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Vaihda hakemistoa" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Luo hakemisto" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Hakemisto" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Tiedosto" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Tiedostotyyppi" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Tiedosto:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Hakemisto:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Suodatin:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Paras tiedostotyyppi" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "En pysty luomaan\n" "hakemistoa\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Hakemistoja voidaan luoda\n" "vain nykyisessä hakemistossa." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Hakemisto on jo\n" "olemassa.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "En pysty luomaan\n" "hakemistoa\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "En pysty siirtymään\n" "hakemistoon.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Käsinkirjoitus" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Vetoja:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Muuntimet" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Etsi" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Pyyhi" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Suunnattu" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Ehdotelmat" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "ei löytynyt" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "En pysty lukemaan: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Nykyinen KMap:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Merkit:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Saatavilla olevat KMap:it" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-näppäin" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Nykyiset KMap:it" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Näppäinsyöte" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Tuloste" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Tietoa merkistä:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Kirjasinkoko:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Rivi:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Sarake:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Avaa(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Etsi(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Mene riville(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Tallenna(__S__) (muutoksia tehty)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Tallenna(__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Tulosta(__P__) (työ kesken)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Tulosta(__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Esikatselu(__W__) (työ kesken)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Esikatselu(__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "K__u__moa" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Palauta(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Koko dokumen__t__in suunta" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Vaih__d__a suuntaa" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Upota t__e__kstiä" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Poista upotus(__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Pienempi(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Suurempi(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Kirjasin" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Syöte" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Rivinvaihto" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Tallentamattomia muutoksia.\n" "Lopetetaanko kuitenkin?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Tulostustyö kesken.\n" "Lopetetaanko kuitenkin?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Tallentamattomia muutoksia.\n" "Avataanko kuitenkin?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Tallentamattomia muutoksia. Enterillä hylätään muutokset!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e koodaustapa tiedosto" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Tiedosto on jo olemassa.\n" "Kirjoitetaanko päälle?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e koodaustapa tiedosto" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find merkkijono" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go rivi [sarake]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e ohjelma" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Ei mitään kumottavaa." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Ei mitään palautettavaa." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Valitun tekstin suunta on asetettu." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Valitun tekstin suunta on palautettu alkuperäiseksi." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "käyttö: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "En pysty lukemaan: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Tallentamattomia muutoksia. Enterillä lopetetaan!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Tulostustyö kesken. Enterillä lopetetaan!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Tulostetaan..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Tulostettu %d sivu(a)." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "käyttö: open -e utf-8 -yes tiedostonimi" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Tallentamattomia muutoksia. Koeta optiota -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Tulostustyö kesken. Koeta optiota -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Tuntematon koodaustapa: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Avattu: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " Rivinvaihto:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr " Viimeinen rivi epätäydellinen..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "käyttö: save -e utf-8 -yes tiedostonimi" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Tiedosto on jo olemassa. Käytä optiota -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "En pysty kirjoittamaan: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Virhe kirjoitettaessa: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Kirjoitettu: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "käyttö: go rivi [sarake]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "käyttö: find teksti" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "Haettua merkkijonoa ei löytynyt." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "käyttö: replace alkuperäinen uusi" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "En pystynyt tallentamaan asetuksia" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "ei-tuettu text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Käskyä ei löydy: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "käyttö: print [-o tiedosto] [-p tulostin] [-e käynnistä] [-break] [-hsize otsikon_fonttikoko]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o tiedosto -p tulostin -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/pl/0000755000175000017500000000000010724001346013470 5ustar henrichhenrich./gui/locale/pl/LC_MESSAGES/0000755000175000017500000000000010733117073015262 5ustar henrichhenrich./gui/locale/pl/LC_MESSAGES/messages.mo0000644000175000017500000001517610733117073017440 0ustar henrichhenrichjl   . = K Q r         ! / = A (J s          1 M R ] i {             # "% %H n     !    & E d  !      *; DNfox  )@HY"rP"D% jx  &(4J Q ^h oy  " -C[_ d&n&0# 8 ES ku~   . &;'b*  1@E1Z1'&+ &9 `k'o" " ' 4>Tc"' 4 R^{)l"1)TePKS;#'1:%3D9!(["?VW <NOa+=^LYh/QcJfd\M)*5 jTEC2&AH>@U_`8gF0Ii.BX 4$-Rb,]7G  6Z Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: Yudit 2.8.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-11-19 13:24GMT+2 Last-Translator: Paweł Zawiła-Niedźwiecki Language-Team: Polish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Koniec linii:Dostępne mapowania klawiaturyAutomatyczny wybór kodowaniaPowięks__z__Wejdź doNie mogę utworzyć podanego katalogu Nie mogę wejść do podanego katalogu. Nie można odczytać: Nie można zapisać: AnulujMożliwościKategoriaZnaki:WyczyśćKolumna:Nieznane polecenie: KonwerteryNie mogę zapisać opcji Bieżące mapowanie klawiatury:Bieżące mapowania klawiaturyDOSSkierowanyKierunek tekstu został ustawiony.Rozmieszczenie tekstuBłąd podczas zapisu: F-xPlikKodowaniePlik istnieje. Czy na pweno nadpisać?Plik istnieje. Spróbuj z opcją -yes.Plik:Filtr:Szukaj (__Q__)KatalogKatalog:Katalogi mogą być tworzone tylko w bieżącym.CzcionkaWielkość czcionki:Numer znaku:Pismo ręcznePodświetlenie składniPoczątekWejścieWejścieKoniec liniLinia:SzukajMACUtwórz katalogNieNie ma zmian do powtórzenia.Nie ma zmian do cofnięcia.OKOtwarte: WyjściePSTrwa drukowanie. Czy na pewno chcesz wyjść? Zadania drukowania zostaną przerwane!Trwa drukowanie. Spróbuj z opcją -yesPodgląd __W__ydrukuPodgląd __W__ydruku (bieżącego zadania)Wydrukowano %d stronDrukowanie...Uwaga:Pokaż ukryteZmniejsz (__A__)Podany katalog nie istnieje. Naciśnięcia:UnixNieznane kodowanie: Niezapisane zmiany. Czy na pewno chcesz wyjść? Niezapisane zmiany. Czy na pewno otworzyć nowy? Niezapisane zmiany zostaną zapomniane!Niezapisane zmiany zostaną porzucone!Nie zapisane zmiany. Spróbuj z opcją -yesPodany katalog nie zostanie utworzony Zapisano: TakZmień globalny kierunek tekstu (__D__)Zmień lokalny ki__e__runek tekstuIdź do (__G__)Podświetlenie składni(__H__)__O__twórzDrukuj (__P__)Drukuj (__P__) (bieżące zadanie)Powtó__r__zZapi__s__Zapi__s__ (potrzebny)Cofnij (__U__)Prz__y__wróć kierunek tekstuznajdź ciąg znakówgo linia [kolumna]nie znalezionyopen -yes -e kodowanie nazwa_plikuprint -e programsave -e kodowanie nazwa_plikunie odnaleziono podanego ciągu znakównieobsługiwany tekst/adres: składnia: skłania: find ciąg_znakówskładnia: go linia [kolumna] składnia: open -e utf-8 -yes nazwa_plikuskładnia: print [-o nazwa_pliku] [-p drukarka][-e program] [-break] [-hsize wielkość_czcionki_nagłówka]składnia: replace oryginalny nowyskładnia: save -e utf-8 -yes nazwa_pliku./gui/locale/pl/LC_MESSAGES/messages.po0000644000175000017500000014746210733117073017447 0ustar henrichhenrich# Tłumaczenia na język polski do yudit-2.5. # Copyright © 2002 Free Software Foundation, Inc. # Paweł Zawiła-Niedźwiecki # # # msgid "" msgstr "" "Project-Id-Version: Yudit 2.8.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-11-19 13:24GMT+2\n" "Last-Translator: Paweł Zawiła-Niedźwiecki \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Tak" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Nie" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "OK" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Anuluj" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Pokaż ukryte" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Początek" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Wejdź do" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Utwórz katalog" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Katalog" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Plik" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Kodowanie" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Plik:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Katalog:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Filtr:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Automatyczny wybór kodowania" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Podany katalog\n" "nie zostanie utworzony\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Katalogi mogą być tworzone\n" "tylko w bieżącym." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Podany katalog\n" "nie istnieje.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Nie mogę utworzyć\n" "podanego katalogu\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Nie mogę wejść do\n" "podanego katalogu.\n" # # Esto hay que verlo en su contexto # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Pismo ręczne" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Naciśnięcia:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Konwertery" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Szukaj" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Wyczyść" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Skierowany" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Możliwości" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "nie znaleziony" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "Kategoria" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "Podświetlenie składni" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "Uwaga:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Nie można odczytać: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Bieżące mapowanie klawiatury:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Znaki:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Dostępne mapowania klawiatury" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-x" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Bieżące mapowania klawiatury" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Wejście" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Wyjście" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Numer znaku:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Wielkość czcionki:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Linia:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Kolumna:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "__O__twórz" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Szukaj (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Idź do (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Zapi__s__ (potrzebny)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Zapi__s__" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Drukuj (__P__) (bieżące zadanie)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Drukuj (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Podgląd __W__ydruku (bieżącego zadania)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Podgląd __W__ydruku" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Cofnij (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Powtó__r__z" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Rozmieszczenie tekstu" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Zmień globalny kierunek tekstu (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Zmień lokalny ki__e__runek tekstu" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Prz__y__wróć kierunek tekstu" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Zmniejsz (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Powięks__z__" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "Podświetlenie składni(__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Czcionka" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Wejście" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Koniec lini" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Niezapisane zmiany.\n" "Czy na pewno chcesz wyjść?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Trwa drukowanie.\n" "Czy na pewno chcesz wyjść?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Niezapisane zmiany.\n" "Czy na pewno otworzyć nowy?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Niezapisane zmiany zostaną zapomniane!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e kodowanie nazwa_pliku" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Plik istnieje.\n" "Czy na pweno nadpisać?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e kodowanie nazwa_pliku" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "znajdź ciąg znaków" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go linia [kolumna]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Nie ma zmian do cofnięcia." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Nie ma zmian do powtórzenia." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Kierunek tekstu został ustawiony." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "Kierunek tekstu został ustawiony." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "składnia: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Nie można odczytać: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Niezapisane zmiany zostaną porzucone!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Zadania drukowania zostaną przerwane!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Drukowanie..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Wydrukowano %d stron" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "składnia: open -e utf-8 -yes nazwa_pliku" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Nie zapisane zmiany. Spróbuj z opcją -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Trwa drukowanie. Spróbuj z opcją -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Nieznane kodowanie: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Otwarte: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Koniec linii:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "Zakończona ostatnia linia." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "składnia: save -e utf-8 -yes nazwa_pliku" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Plik istnieje. Spróbuj z opcją -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Nie można zapisać: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Błąd podczas zapisu: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Zapisano: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "składnia: go linia [kolumna] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "skłania: find ciąg_znaków" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "nie odnaleziono podanego ciągu znaków" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "składnia: replace oryginalny nowy" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Nie mogę zapisać opcji " # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "nieobsługiwany tekst/adres: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Nieznane polecenie: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "składnia: print [-o nazwa_pliku] [-p drukarka][-e program] [-break] [-hsize " "wielkość_czcionki_nagłówka]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o plik -p drukarka -break" # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "Sep.Lin." ./gui/locale/mn/0000755000175000017500000000000010724001346013467 5ustar henrichhenrich./gui/locale/mn/LC_MESSAGES/0000755000175000017500000000000010733117073015261 5ustar henrichhenrich./gui/locale/mn/LC_MESSAGES/messages.mo0000644000175000017500000001771310733117073017436 0ustar henrichhenrichh\    " C d s        + (> g          1 A F Q ] o t z           # " %/ U g   !     $ C d !       4=FXa u '"@Pc"T5H~." 6 8A'z'   $E4^-,SHW9. I1K{  UKa|" .878p  eE2bx9$3X!s. *dbvNH(iq) &.Cr &#9Q&a&!'-$R!d+8v/b8IQS *YLPD 6$?.Na[c\E2@ Z%4d/+R),8`;A U:="#KVGbf '_W3T&^C]51M!907(eJ>O X<HBFhg- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2003-03-02 12:49--800 Last-Translator: Natsagdorj Shagdar Language-Team: LANGUAGE MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Сүүлийн мөр бүрэн биш байна...Мөрийн төгсгөл:Боломжтой Товчны хуваарьТохирох файл төрөлТомсгоОчих замЗаасан санг үүсгэж чадсангүй Заасан сан луу очиж чадсангүй. Уншиж чадахгүй байна:Бичиж чадахгүй байна:БолихСанал болгосонТэмдэгтүүд:АрилгахБагана:Тушаал олдсонгүй:ХувиргууруудТохиргоог хадгалж чадсангүйОдоогийн Товчны Хуваарь:Одоогийн Товчны хуваарьDOSЧиглэсэнСонгосон текстийн чиглэлийг дахин өөрчилсөн.Сонгосон текстийн чиглэлийг өөрчилсөн.Текст бичиг баримт байрлуулалтБичих явцад алдаа гарлаа:F-ТовчФайлФайл төрөлИйм файл байна. Үргэлжлүүлж хадгалах уу?Файл өмнө нь байна. -yes сонголттой хэрэглэФайл:Шүүлт:ХайхСанСан:Сангууд зөвхөн одоогийн сан дотор үүсэж болно.Үсгийн маягҮсгийн хэмжээ:Үсгийн мэдээлэл:Гар бичмэл оруулахЭхлэлОруулалтОруулалтМөрний төгсгөлМөр:ХайхMACСан үүсгэҮгүйДахиж үйлдэх үйлдэл алга байнаБуцаж үйлдэх үйлдэл алга байнаОКНээсэн:ГаралтPSХэвлэх явцыг боловсруулж байна. Үргэлжлүүлэн гарах уу? Хэвлэх явц бэлтгэгдэж байна. Гарах уу!Хэвлэх явцыг бэлтгэж байна. -yes сонголтоор дахин оролдХэвлэх ХарагдацХэвлэх Харагдац (бэлтгэж байна)%d хуудас хэвлэгдлээХэвлэж байна...Нуугдсаныг харуулБагасгаЗаасан сан өмнө нь байна. Зураас:UnixМэдэгдэхгүй хувиргалт:Өөрчлөлт хадгалагдаагүй байна. Үргэлжлүүлэн гарах уу? Өөрчлөлт хадгалагдаагүй байна. Үргэлжлүүлэн нээх үү? Өөрчлөлт хадгалагдаагүй байна. Зогсоох уу!Хадгалагдаагүй өөрлөлт байна. Гарах уу!Хадгалагдаагүй өөрчлөлт байна. -yes сонголтоор дахин оролдЗаасан санг үүсгэхгүй Бичсэн:ТиймЧиглэл өөрчилж бичихНийлүүлэлт өөрчилж бичихБайрлалд ОчихФайл НээхХэвлэХэвлэ (бэлтгэж байна)Дахиж үйлдэхХадгалахХадгалах (хэрэгтэй)Үйлдлээ буцаахЭнгийн бичихмөр олохмөрөнд [баганад] очихолдсонгүйopen -yes -e хувиргах файлprint -e програмsave -e хувиргах файлХайсан мөр олдсонгүй.Танигдахгүй текст байна:хэрэглээ:хэрэглээ: find Текстхэрэглээ: go мөр [багана] хэрэглээ: open -e utf-8 -yes файлын нэрхэрэглээ: print [-o файл] [-p хэвлэгч] [-e exec] [-break] [-hsize header-үсгийн-хэмжээ]хэрэглээ: replace анхных шинэхэрэглээ: save -e utf-8 -yes файлын нэр./gui/locale/mn/LC_MESSAGES/messages.po0000644000175000017500000015173710733117073017446 0ustar henrichhenrich# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2003-03-02 12:49--800\n" "Last-Translator: Natsagdorj Shagdar \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Тийм" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Үгүй" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "ОК" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Болих" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Нуугдсаныг харуул" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Эхлэл" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Очих зам" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Сан үүсгэ" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Сан" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Файл" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Файл төрөл" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Файл:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Сан:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Шүүлт:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Тохирох файл төрөл" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Заасан санг\n" "үүсгэхгүй\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Сангууд зөвхөн одоогийн\n" "сан дотор үүсэж болно." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Заасан сан\n" "өмнө нь байна.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Заасан санг\n" "үүсгэж чадсангүй\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Заасан сан луу\n" "очиж чадсангүй.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Гар бичмэл оруулах" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Зураас:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Хувиргуурууд" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Хайх" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Арилгах" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Чиглэсэн" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Санал болгосон" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "олдсонгүй" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Уншиж чадахгүй байна:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Одоогийн Товчны Хуваарь:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Тэмдэгтүүд:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Боломжтой Товчны хуваарь" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-Товч" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Одоогийн Товчны хуваарь" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Оруулалт" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Гаралт" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Үсгийн мэдээлэл:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Үсгийн хэмжээ:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Мөр:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Багана:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Файл Нээх" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Хайх" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Байрлалд Очих" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Хадгалах (хэрэгтэй)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Хадгалах" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Хэвлэ (бэлтгэж байна)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Хэвлэ" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Хэвлэх Харагдац (бэлтгэж байна)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Хэвлэх Харагдац" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Үйлдлээ буцаах" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Дахиж үйлдэх" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Текст бичиг баримт байрлуулалт" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Чиглэл өөрчилж бичих" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Нийлүүлэлт өөрчилж бичих" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Энгийн бичих" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Багасга" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Томсго" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Үсгийн маяг" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Оруулалт" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Мөрний төгсгөл" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Өөрчлөлт хадгалагдаагүй байна.\n" "Үргэлжлүүлэн гарах уу?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Хэвлэх явцыг боловсруулж байна.\n" "Үргэлжлүүлэн гарах уу?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Өөрчлөлт хадгалагдаагүй байна.\n" "Үргэлжлүүлэн нээх үү?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Өөрчлөлт хадгалагдаагүй байна. Зогсоох уу!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e хувиргах файл" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Ийм файл байна.\n" "Үргэлжлүүлж хадгалах уу?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e хувиргах файл" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "мөр олох" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "мөрөнд [баганад] очих" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e програм" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Буцаж үйлдэх үйлдэл алга байна" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Дахиж үйлдэх үйлдэл алга байна" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Сонгосон текстийн чиглэлийг өөрчилсөн." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Сонгосон текстийн чиглэлийг дахин өөрчилсөн." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "хэрэглээ:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Уншиж чадахгүй байна:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Хадгалагдаагүй өөрлөлт байна. Гарах уу!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Хэвлэх явц бэлтгэгдэж байна. Гарах уу!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Хэвлэж байна..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d хуудас хэвлэгдлээ" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "хэрэглээ: open -e utf-8 -yes файлын нэр" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Хадгалагдаагүй өөрчлөлт байна. -yes сонголтоор дахин оролд" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Хэвлэх явцыг бэлтгэж байна. -yes сонголтоор дахин оролд" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Мэдэгдэхгүй хувиргалт:" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Нээсэн:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Мөрийн төгсгөл:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "Сүүлийн мөр бүрэн биш байна..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "хэрэглээ: save -e utf-8 -yes файлын нэр" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Файл өмнө нь байна. -yes сонголттой хэрэглэ" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Бичиж чадахгүй байна:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Бичих явцад алдаа гарлаа:" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Бичсэн:" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "хэрэглээ: go мөр [багана] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "хэрэглээ: find Текст" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "Хайсан мөр олдсонгүй." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "хэрэглээ: replace анхных шинэ" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Тохиргоог хадгалж чадсангүй" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "Танигдахгүй текст байна:" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Тушаал олдсонгүй:" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "хэрэглээ: print [-o файл] [-p хэвлэгч] [-e exec] [-break] [-hsize header-үсгийн-хэмжээ]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o файл -p хэвлэгч -break" ./gui/locale/gu/0000755000175000017500000000000010724001346013470 5ustar henrichhenrich./gui/locale/gu/LC_MESSAGES/0000755000175000017500000000000010733117072015261 5ustar henrichhenrich./gui/locale/gu/LC_MESSAGES/messages.mo0000644000175000017500000002215510733117072017432 0ustar henrichhenrichfL|     # 2 B I T ` f n    (   , 2 7 A [ y    1      " ( 0 4 @ C T e h q x #{ " %    . : F !U w       !6 X ` d {         %/J[q"PG"cI!%/!H jYwZ*,'W%%,LH [JQ+ ` Ij ! t '+.K h#v " @[q i:uWpr=:!5\!W  -6d{ifiw:Y !4(=]5N!G $i = ; =!F!6c!!#!!!3"=;"y"5"T"G$#hl#N#H$$\d H;aA>eX+/!GT< 6.Z&D Y=NJ*#]c?`4O%W^f0()_5E8 K,b3BP2":IRVF@$9'UC- S1L7M [Q Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit-2.7.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2003-09-16 9:35+IST Last-Translator: Vibha Sinojia Language-Team: Gujarati MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 લીટી સમાપ્ત: પ્રાપ્ય કેમૅપઉત્તમ ફાઇલ પ્રકારમોટું કરો (__Z__)cd કરોદર્શાવેલ ફોલ્ડર બનાવી શકાતું નથી દર્શાવેલ ફોલ્ડર માં જઇ શકાતું નથી વાંચી શકાતુ નથી:લખી શકાતું નથી:રદ્દ કરોઉમેદવારઅક્ષરસ્વચ્છઊભી હરોળ(કૉલમ):આદેશ મળતો નથી: પરિવર્તક(બદલનાર)વરીયતાનો સંગ્રહ થઇ શક્યો નથીચાલુ કેમૅપચાલુ કેમૅપડૉસનિર્દેશીતપસંદ કરેલ લેખની દિશા નક્કી થઇ ગઇ છેદસ્તાવેજ લેખ સ્થાપીત કરો (__T__)લખતી વખતે ક્ષતી: એફ-ચાવીફાઇલફાઇલ પ્રકારફાઇલ હાજર છે તેમ છતાં સંગ્રહ કરવો છે?ફાઇલ હાજર છે. -yes વિકલ્પ વાપરોફાઇલ:ગરણી(ફિલ્ટર):શોધો (__Q__)ફોલ્ડરફોલ્ડર:ફક્ત ચાલુ ડિરેક્ટરી મા ફોલ્ડર બનાવી શકાય છેફોન્ટફોન્ટ સાઇઝ:લીપી(Glyph) માહીતી:હસ્તલેખીત ઇનપુટઘરઇનપુટચાવી ઇનપુટલીટી પુર્ણલીટી:શોધવું(જોવું)મૈકફોલ્ડર બનાવોનહીંફરીથી કરવા માટે કંઇજ નથીકરેલું કામ રદ્દ કરવા માટે કંઇજ નથી બરાબરખોલેલુ:આઉટપુટપીએસપ્રીન્ટ નું કામ બાકી છે તેમ છતાં બહાર આવવા માગો છો? પ્રીન્ટ નુ કામ બાકી છે . Enter માંથી બહાર આવોપ્રીન્ટ નુ કામ બાકી છે -yes વિકલ્પ દ્વારા ચકાસોપ્રિન્ટ(છાપ્યા) પહેલાનો દેખાવ (__w__)પ્રિન્ટ(છાપ્યા) પહેલાનો દેખાવ (__w__) (બાકી કામ)%d પાના પ્રિન્ટ થઇ ગયા છેપ્રિન્ટ થઇ રહ્યું છે....ગુપ્ત રાખેલુ દેખાડોનાનું કરો (__A__)દર્શાવેલ ફોલ્ડર પહેલાથી હાજર છે પ્રહાર:યુનિક્ષઅજ્ઞાત એનકૉડીંગ :પરીવર્તન સંગ્રાયેલ નથી તેમ છતાં બહાર આવવા માગો છો? પરીવર્તન સંગ્રાયેલ નથી તેમ છતાં ખોલવા માગો છો? પરીવર્તન સંગ્રાયેલ નથી. Enter માથી બહાર આવોપરીવર્તન સંગ્રહીત નથી. Enter માંથી બહાર આવોપરીવર્તન સંગ્રહીત નથી. -yes વિકલ્પ દ્વારા ચકાસોદર્શાવેલ ફોલ્ડર બનાવી શકાશે નહીં લખેલું: હાદિશા ઓવરરાઇડ કરો (__D__)સ્થાપીત ઓવરરાઇડ કરો (__E__)જાઓ (__G__)ખોલો (__O__)પ્રિન્ટ કરો(છાપો) (__P__)પ્રિન્ટ કરો(છાપો) (__P__) (બાકી કામ)ફરીથી કરો (__R__)સંગ્રહ કરો (__S__)સંગ્રહ કરો (__S__) (જરુરી છે)કરેલું કામ રદ્દ કરો (__U__)સ્થાપીત સ્વીકાર કરો (__Y__)વાક્ય શોધોલીટી પર જાઓ [ઉભી હરોળ]મળતું નથીopen -yes -e encoding ફાઇલ print -e programsave -e encoding ફાઇલશોધ વાક્ય મળતું નથીલેખ/યુઆરઆઇ ને આધાર નથી : પ્રયોગ(રીત): પ્રયોગ(રીત): લેખ શોધોપ્રયોગ(રીત):લીટી પર જાઓ [ઉભી હરોળ]પ્રયોગ(રીત): open -e utf-8 -yes ફાઇલનામપ્રયોગ(રીત): print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]પ્રયોગ(રીત): મુળભુત નવાને બદલોપ્રયોગ(રીત) : save -e utf-8 -yes ફાઇલનામ./gui/locale/gu/LC_MESSAGES/messages.po0000644000175000017500000015466510733117072017451 0ustar henrichhenrich# Gujarati po file for Yudit. # Copyright (C) Jitendra Shah 2003 # msgid "" msgstr "" "Project-Id-Version: yudit-2.7.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2003-09-16 9:35+IST\n" "Last-Translator: Vibha Sinojia \n" "Language-Team: Gujarati \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "હા" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "નહીં" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "બરાબર" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "રદ્દ કરો" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "ગુપ્ત રાખેલુ દેખાડો" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "ઘર" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "cd કરો" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "ફોલ્ડર બનાવો" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "ફોલ્ડર" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "ફાઇલ" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "ફાઇલ પ્રકાર" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "ફાઇલ:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "ફોલ્ડર:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "ગરણી(ફિલ્ટર):" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "ઉત્તમ ફાઇલ પ્રકાર" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "દર્શાવેલ ફોલ્ડર\n" "બનાવી શકાશે નહીં\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "ફક્ત ચાલુ ડિરેક્ટરી મા \n" "ફોલ્ડર બનાવી શકાય છે" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "દર્શાવેલ ફોલ્ડર \n" "પહેલાથી હાજર છે\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "દર્શાવેલ ફોલ્ડર\n" "બનાવી શકાતું નથી\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "દર્શાવેલ ફોલ્ડર\n" "માં જઇ શકાતું નથી\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "હસ્તલેખીત ઇનપુટ" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "પ્રહાર:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "પરિવર્તક(બદલનાર)" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "શોધવું(જોવું)" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "સ્વચ્છ" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "નિર્દેશીત" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "ઉમેદવાર" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "મળતું નથી" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "વાંચી શકાતુ નથી:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "ચાલુ કેમૅપ" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "અક્ષર" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "પ્રાપ્ય કેમૅપ" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "એફ-ચાવી" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "ચાલુ કેમૅપ" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "ચાવી ઇનપુટ" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "આઉટપુટ" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "લીપી(Glyph) માહીતી:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "ફોન્ટ સાઇઝ:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "લીટી:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "ઊભી હરોળ(કૉલમ):" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "યુનિક્ષ" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "ડૉસ" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "મૈક" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "પીએસ" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "ખોલો (__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "શોધો (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "જાઓ (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "સંગ્રહ કરો (__S__) (જરુરી છે)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "સંગ્રહ કરો (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "પ્રિન્ટ કરો(છાપો) (__P__) (બાકી કામ)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "પ્રિન્ટ કરો(છાપો) (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "પ્રિન્ટ(છાપ્યા) પહેલાનો દેખાવ (__w__) (બાકી કામ)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "પ્રિન્ટ(છાપ્યા) પહેલાનો દેખાવ (__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "કરેલું કામ રદ્દ કરો (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "ફરીથી કરો (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "દસ્તાવેજ લેખ સ્થાપીત કરો (__T__)" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "દિશા ઓવરરાઇડ કરો (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "સ્થાપીત ઓવરરાઇડ કરો (__E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "સ્થાપીત સ્વીકાર કરો (__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "નાનું કરો (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "મોટું કરો (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "ફોન્ટ" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "ઇનપુટ" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "લીટી પુર્ણ" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "પરીવર્તન સંગ્રાયેલ નથી\n" "તેમ છતાં બહાર આવવા માગો છો?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "પ્રીન્ટ નું કામ બાકી છે\n" "તેમ છતાં બહાર આવવા માગો છો?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "પરીવર્તન સંગ્રાયેલ નથી\n" "તેમ છતાં ખોલવા માગો છો?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "પરીવર્તન સંગ્રાયેલ નથી. Enter માથી બહાર આવો" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e encoding ફાઇલ " # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "ફાઇલ હાજર છે \n" "તેમ છતાં સંગ્રહ કરવો છે?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e encoding ફાઇલ" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "વાક્ય શોધો" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "લીટી પર જાઓ [ઉભી હરોળ]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "કરેલું કામ રદ્દ કરવા માટે કંઇજ નથી " # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "ફરીથી કરવા માટે કંઇજ નથી" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "પસંદ કરેલ લેખની દિશા નક્કી થઇ ગઇ છે" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "પસંદ કરેલ લેખની દિશા ફરીથી નક્કી થઇ ગઇ છે" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "પ્રયોગ(રીત): " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "વાંચી શકાતુ નથી:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "પરીવર્તન સંગ્રહીત નથી. Enter માંથી બહાર આવો" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "પ્રીન્ટ નુ કામ બાકી છે . Enter માંથી બહાર આવો" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "પ્રિન્ટ થઇ રહ્યું છે...." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d પાના પ્રિન્ટ થઇ ગયા છે" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "પ્રયોગ(રીત): open -e utf-8 -yes ફાઇલનામ" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "પરીવર્તન સંગ્રહીત નથી. -yes વિકલ્પ દ્વારા ચકાસો" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "પ્રીન્ટ નુ કામ બાકી છે -yes વિકલ્પ દ્વારા ચકાસો" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "અજ્ઞાત એનકૉડીંગ :" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "ખોલેલુ:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "લીટી સમાપ્ત: " # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "છેલ્લી લીટી અપુર્ણ છે" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "પ્રયોગ(રીત) : save -e utf-8 -yes ફાઇલનામ" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "ફાઇલ હાજર છે. -yes વિકલ્પ વાપરો" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "લખી શકાતું નથી:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "લખતી વખતે ક્ષતી: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "લખેલું: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "પ્રયોગ(રીત):લીટી પર જાઓ [ઉભી હરોળ]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "પ્રયોગ(રીત): લેખ શોધો" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "શોધ વાક્ય મળતું નથી" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "પ્રયોગ(રીત): મુળભુત નવાને બદલો" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "વરીયતાનો સંગ્રહ થઇ શક્યો નથી" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "લેખ/યુઆરઆઇ ને આધાર નથી : " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "આદેશ મળતો નથી: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "પ્રયોગ(રીત): print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o file -p printer -break" # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/vi/0000755000175000017500000000000010724001346013473 5ustar henrichhenrich./gui/locale/vi/LC_MESSAGES/0000755000175000017500000000000010733117073015265 5ustar henrichhenrich./gui/locale/vi/LC_MESSAGES/messages.mo0000644000175000017500000001375710733117073017446 0ustar henrichhenrichb,<H IVf u       * 5 P ^ l p (y          & 1. ` e p |             # "+ %N t    !    $ C d !       & / A J V g q        "P8") &5,>-k  $AYpt$ !! ) 6 @=K       %;Q T _i(l'( ,8J&\ 1")#(M v     +=P `n *#VN*C?&4P%F<9 ;W\J+_[3( bL2.Q"E]86S/ ):O I5aT1* =M,RUVN7BK!A#^ Z>`0G'$DHYX@- Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: 2.6 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-05-12 07:34+0900 Last-Translator: hoan Language-Team: hoan MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8-bit xuống dòng:Phím_mã cóTệp loại Tối_ưuTolên (__Z__)CD tớikhông_tạo được Thưmục đã_chọn Không tới được thưmục đã_chọn. Không đọc được: Không viết được:Bỏứng_tuyển Ký_tự:XóaCột:không thấy lịnh:Đổi_dạngKhông lưu được các ưa chọnPhím_mã hiện_tại:Phím_mã hiện_tạiDOSHướng_tớiHướng gõ văn bản đã đặt.Lỗi khi đang viết: Phím-FTệpLoại TệpTệp đã có. cứ Lưu trữ ?Tệp đã có.chọn -yes.Tệp:Lọc: Tìm (__Q__)ThưmụcThưmục:Thưmục có thể tạo chỉ trong thưmục đang_dùng.FontCỡ font:họa Glyph báo_cáo:vào bằng viết_taycửaHộNhậpvàoNhấn Phímxuống dòngDòng:Xét_bảngMACTạo Thưmụckhôngkhông gì làm lạikhông gì gỡ lạiOKđã mở:Mã_đápPSchuỗi In đang chờ. Cứ thoát ra? Đuôi in đang chờ.Vào Ra!Đuôi in đang chờ.Thử chọn -yesquan_sát In (__W__)quan_sát In (__W__) (đang đuôi_chờđã in %d trang.Đang in...Hiện tệp_kínNhỏ_đi (__A__)Thưmục đã_chọn đã_có rồi. Gõ_phím: Unixkhông_có mã_hoá này:thayđổi chưa lưu_trữ. cứ thoát không? thayđổi chưa lưu.Vào Thoái!chưa lưu thay đổi.Vào Ra!Thay đổi chưa lưu.Thử chọn -yes Sẽ không tạo thưmục đã_chọn đã viết: cóVăn_bản Hướng-đi (__D__)Tới (__G__)Mở (__O__)In (__P__)In(__P__) (đang đuôi_chờ)Làmlại (__R__)Lưu (__S__)Lưu_trữ(__S__) (phải có)Gỡlại (__U__)find xâu_ký_tựgo dòng[cột]không thấyopen -yes -e mãhoá tệpprint -e programsave -e mãhoá tệptìm không thấy xâukhông chạy text/uri: xử_dùng: xử_dùng: find textxử_dụng: go dòng [cột] xử_dụng: open -e utf-8 -yes tên_tệpxử_dụng: print [-o tệp] [-p máy_in] [-e exec] [-break] [-hcỡ header-cỡ-fontxử_dụng: replace cũ mớixử_dụng: save -e utf-8 -yes tên_tệp./gui/locale/vi/LC_MESSAGES/messages.po0000644000175000017500000014674010733117073017450 0ustar henrichhenrich# Vietnamese Translations for Yudit Unicode Editor # GNU Copyright (C) # msgid "" msgstr "" "Project-Id-Version: 2.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-05-12 07:34+0900\n" "Last-Translator: hoan \n" "Language-Team: hoan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "có" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "không" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "OK" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Bỏ" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Hiện tệp_kín" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "cửaHộ" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "CD tới" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Tạo Thưmục" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Thưmục" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Tệp" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Loại Tệp" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Tệp:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Thưmục:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Lọc: " # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Tệp loại Tối_ưu" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Sẽ không tạo\n" "thưmục đã_chọn\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Thưmục có thể tạo \n" "chỉ trong thưmục đang_dùng." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Thưmục đã_chọn\n" "đã_có rồi.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "không_tạo được\n" "Thưmục đã_chọn\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Không tới được\n" "thưmục đã_chọn.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "vào bằng viết_tay" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Gõ_phím: " # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Đổi_dạng" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Xét_bảng" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Xóa" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Hướng_tới" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "ứng_tuyển" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "không thấy" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Không đọc được: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Phím_mã hiện_tại:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr " Ký_tự:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Phím_mã có" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "Phím-F" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Phím_mã hiện_tại" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Nhấn Phím" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Mã_đáp" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "họa Glyph báo_cáo:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Cỡ font:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Dòng:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Cột:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Mở (__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Tìm (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Tới (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Lưu_trữ(__S__) (phải có)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Lưu (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "In(__P__) (đang đuôi_chờ)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "In (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "quan_sát In (__W__) (đang đuôi_chờ" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "quan_sát In (__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Gỡlại (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Làmlại (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Văn_bản Hướng-đi (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Nhỏ_đi (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Tolên (__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Font" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Nhậpvào" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "xuống dòng" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "thayđổi chưa lưu_trữ.\n" "cứ thoát không?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "chuỗi In đang chờ.\n" "Cứ thoát ra?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 #, fuzzy msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "thayđổi chưa lưu_trữ.\n" "cứ mở không?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "thayđổi chưa lưu.Vào Thoái!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e mãhoá tệp" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Tệp đã có.\n" "cứ Lưu trữ ?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e mãhoá tệp" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find xâu_ký_tự" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go dòng[cột]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "không gì gỡ lại" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "không gì làm lại" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Hướng gõ văn bản đã đặt." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "Hướng gõ văn bản đã đặt." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "xử_dùng: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Không đọc được: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "chưa lưu thay đổi.Vào Ra!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Đuôi in đang chờ.Vào Ra!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Đang in..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "đã in %d trang." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "xử_dụng: open -e utf-8 -yes tên_tệp" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Thay đổi chưa lưu.Thử chọn -yes " # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Đuôi in đang chờ.Thử chọn -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "không_có mã_hoá này:" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "đã mở:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "xuống dòng:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr "kếtthúc dòng cuối" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "xử_dụng: save -e utf-8 -yes tên_tệp" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Tệp đã có.chọn -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Không viết được:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Lỗi khi đang viết: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "đã viết: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "xử_dụng: go dòng [cột] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "xử_dùng: find text" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "tìm không thấy xâu" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "xử_dụng: replace cũ mới" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Không lưu được các ưa chọn" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "không chạy text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "không thấy lịnh:" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "xử_dụng: print [-o tệp] [-p máy_in] [-e exec] [-break] [-hcỡ header-cỡ-font" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o file -p printer -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/pa/0000755000175000017500000000000010724001346013455 5ustar henrichhenrich./gui/locale/pa/LC_MESSAGES/0000755000175000017500000000000010733117073015247 5ustar henrichhenrich./gui/locale/pa/LC_MESSAGES/messages.mo0000644000175000017500000002114010733117073017411 0ustar henrichhenrichh\    " C d s        + (> g          1 A F Q ] o t z           # " %/ U g   !     $ C d !       4=FXa u '"@Pc"J6>u)L ZZ((<K _.kR# #/ S/]iX#P7t AA/q ^ -Mm     *M4@%sf39a!6@X# M,>!Q_sUf)S!Nu  ( 52Bu(& 7 "T w ' @  !( !8I!-![!& ",3"IQS *YLPD 6$?.Na[c\E2@ Z%4d/+R),8`;A U:="#KVGbf '_W3T&^C]51M!907(eJ>O X<HBFhg- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: 2.0 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2003-07-27 18:10-0500 Last-Translator: Madhusudan Singh Language-Team: Madhusudan Singh MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ਅਖੀਰਲੀ ਲੀਕ ਅੱਧਵਾਟੇ ...ਲੀਕ ਟੁੱਟ :ਹਾਜ਼ਰ ਕੇਨਖਸ਼ੇਨੇੜਦੀ ਫ਼ਾਈਲ ਠੇਪੀਕੱਦ ਵਧਾਓ ਹਿੱਸਾ ਬਦਲੋਸੁੱਝਾਇਆ ਹਿੱਸਾ ਨਹੀਂ ਬਣਾ ਸਕਦੇ ਸੁੱਝਾਇਆ ਹਿੱਸੇ ਵਿੱਚ ਆਪੜ ਨਹੀਂ ਸਕਦੇ। ਪੜ੍ਹ ਨਹੀਂ ਸਕਦੇ :ਲਿੱਖ ਨਹੀਂ ਸਕਦੇ : ਰੱਦ ਕਰੋਮੁਮਕਨ ਚੀਜਾਂਅੱਖਰ :ਸਫ਼ਾ ਕਰੋਥੰਮ :ਹਿਦਾਇਤ ਨਹੀਂ ਲੱਭੀ : ਤਰਜਮਾ ਕਾਰਕਤੁਹਾਡੀਆਂ ਫ਼ਰਮਾਇਸ਼ਾਂ ਬਚਾ ਨਹੀਂ ਸਕੇਹਾਲ ਦਾ ਕੇਨਖਸ਼ਾਹਾਲ ਦੇ ਕੇਨਖਸ਼ੇਡੌਸਹਿਦਾਇਤ ਦਿੱਤਾ ਹੋਇਆਸੁੱਝਾਏ ਮੂਲ ਦੀ ਸੇਧ ਮੁੜ ਕੇ ਜਮਾ ਦਿੱਤੀ ਗਾਈ ਏ।ਸੁੱਝਾਏ ਮੂਲ ਦੀ ਸੇਧ ਜਮਾ ਦਿੱਤੀ ਗਾਈ ਏ।ਦਸਤਵੇਜ਼ ਦਾ ਮੂਲਲਿੱਖਦਿਆਂ ਟਪਲਾ ਲੱਗਿਆ :ਐਫ਼ - ਘੁੰਡੀਫ਼ਾਈਲ ਫ਼ਾਈਲ ਠੇਪੀਫ਼ਾਈਲ ਹਾਜ਼ਰ ਏ। ਉਂਜ ਈ ਬਚਾਈਏ ?ਫ਼ਾਈਲ ਹਾਜ਼ਰ ਏ। -yes ਚੋਣ ਵਰਤੋ। ਫ਼ਾਈਲ : ਪੋਣੀ : ਲੱਭੋਹਿੱਸਾਹਿੱਸਾ : ਹਿੱਸਾ ਹਾਲ ਦੇ ਹਿੱਸੇ ਵਿੱਚ ਈ ਬਣ ਸਕਦਾ ਏ। ਫ਼ੌਂਟਫ਼ੌਂਟ ਦਾ ਕੱਦ :ਅੱਖਰ ਦੀ ਸੂਹ :ਖਤੀ ਕਾਰਵਾਈ ਪਹਿਲਾ ਧਿਰਇਨਪੁਟਘੁੰਡੀ ਇਨਪੁਟਲੀਕ ਟੁੱਟਲੀਕ :ਕੋਸ਼ਮੈਕਹਿੱਸਾ ਬਣਾਓ ਨਾਂਦੁਬਾਰਾ ਕਰਨ ਲਈ ਕੁੱਝ ਨਹੀਂ ਹੈਗਾ।ਮਿਟਾਣ ਲਈ ਕੁੱਝ ਨਹੀਂ ਹੈਗਾ।ਠੀਕ ਏ ਖੋਲਿਆ :ਨਤੀਜਾਪਿੱਛੋਂ ਸੁੱਝਿਆਛਾਪੇ ਦਾ ਕੰਮ ਅਜੇ ਅੱਧਵਾਟੇ ਹੈ। ਉਂਜ ਈ ਨਿਕਲ ਜਾਈਏ ? ਛਾਪੇ ਦਾ ਕੰਮ ਅਜੇ ਅੱਧਵਾਟੇ ਹੈ। ਐਂਟਰ ਦੀ ਘੁੰਡੀ ਨਾਲ ਬਾਹਰ ਨਿਕਲ ਜਾਵੋਗੇ !ਛਾਪੇ ਦਾ ਕੰਮ ਅਜੇ ਅੱਧਵਾਟੇ ਹੈ। -yes ਚੋਣ ਅਜਮਾਓਛਾਪਣ ਤੋਂ ਪਹਿਲਾਂ ਵਿਖਾਓਛਾਪਣ ਤੋਂ ਪਹਿਲਾਂ ਵਿਖਾਓ ( ਖੱਟੇ ਪਿਆ ਕੰੰਮ )%d ਸਫ਼ੇ ਛਾਪੇ ਗਏਛਾਪੇ ਦਾ ਕੰਮ ਹੁੰਦਾ ਪਿਆ ਏ ...ਛੁੱਪਿਆ ਵਿਖਾਓ ਕੱਦ ਥੋੜਾ ਕਰੋਸੁੱਝਾਇਆ ਹਿੱਸਾ ਅੱਗੇ ਈ ਹਾਜ਼ਰ ਐ। ਲੇਂਡੇ :ਯੁਨਿਕਸਅਣਪਛਾਤਾ ਮੂਲ :ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। ਉਂਜ ਈ ਨਿਕਲ ਜਾਈਏ ? ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। ਉਂਜ ਈ ਖੋਲੀਏ ? ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। ਐਂਟਰ ਘੁੰਡੀ ਨਾਲ ਰੱਦ !ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। ਐਂਟਰ ਦੀ ਘੁੰਡੀ ਨਾਲ ਬਾਹਰ ਨਿਕਲ ਜਾਵੋਗੇ !ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। -yes ਚੋਣ ਅਜਮਾਓਸੁੱਝਾਇਆ ਹਿੱਸਾ ਨਹੀਂ ਬਣਾਵਾਂਗੇ ਲਿੱਖਿਆ :ਆਹੋਸੇਧ ਜਮਾਓਮੂਲ ਜਮਾਓਉੱਥੇ ਜਾਓਖੋਲੋਛਾਪੋਛਾਪੋ (ਖੱਟੇ ਪਿਆ ਕੰੰਮ)ਦੁਬਾਰਾ ਕਰੋਕੰਮ ਬਚਾਓਕੰਮ ਬਚਾਓ (ਲਾਜ਼ਮੀ)ਮਿਟਾਓਮੂਲ ਛੱਡੋਲੜੀ ਲੱਭੋਲੀਕ ਤੇ ਜਾਓ [ਥੰਮ]ਲੱਭਿਆ ਨਹੀਂਖੋਲੋ -yes -e encoding fileਛਾਪੋ -e programਕੰਮ ਬਚਾਓ -e encoding fileਲੱਭਨ ਵਾਲੀ ਲੜੀ ਨਹੀਂ ਲੱਭੀ।ਗੈਰ ਮੂਲ :ਵਰਤੋਂ :ਵਰਤੋਂ : ਮੂਲ ਲੱਭੋਵਰਤੋਂ : ਲੀਕ ਤੇ ਜਾਓ [ਥੰਮ]ਵਰਤੋਂ : open -e utf-8 -yes filenameਵਰਤੋਂ : print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]ਵਰਤੋਂ : replace original newਵਰਤੋਂ: save -e utf-8 -yes filename./gui/locale/pa/LC_MESSAGES/messages.po0000644000175000017500000015312010733117073017420 0ustar henrichhenrich# Yudit unicode editor # Gaspar Sinai # Gaspar Sinai 2001-01-09 # msgid "" msgstr "" "Project-Id-Version: 2.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2003-07-27 18:10-0500\n" "Last-Translator: Madhusudan Singh \n" "Language-Team: Madhusudan Singh \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "ਆਹੋ" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "ਨਾਂ" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "ਠੀਕ ਏ " # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr " ਰੱਦ ਕਰੋ" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "ਛੁੱਪਿਆ ਵਿਖਾਓ " # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr " ਪਹਿਲਾ ਧਿਰ" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr " ਹਿੱਸਾ ਬਦਲੋ" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "ਹਿੱਸਾ ਬਣਾਓ " # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "ਹਿੱਸਾ" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "ਫ਼ਾਈਲ" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr " ਫ਼ਾਈਲ ਠੇਪੀ" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "ਫ਼ਾਈਲ : " # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "ਹਿੱਸਾ : " # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "ਪੋਣੀ : " # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "ਨੇੜਦੀ ਫ਼ਾਈਲ ਠੇਪੀ" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "ਸੁੱਝਾਇਆ ਹਿੱਸਾ \n" "ਨਹੀਂ ਬਣਾਵਾਂਗੇ \n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "ਹਿੱਸਾ ਹਾਲ ਦੇ ਹਿੱਸੇ \n" "ਵਿੱਚ ਈ ਬਣ ਸਕਦਾ ਏ। " # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "ਸੁੱਝਾਇਆ ਹਿੱਸਾ \n" "ਅੱਗੇ ਈ ਹਾਜ਼ਰ ਐ। \n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "ਸੁੱਝਾਇਆ ਹਿੱਸਾ \n" "ਨਹੀਂ ਬਣਾ ਸਕਦੇ \n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "ਸੁੱਝਾਇਆ ਹਿੱਸੇ\n" "ਵਿੱਚ ਆਪੜ ਨਹੀਂ ਸਕਦੇ।\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "ਖਤੀ ਕਾਰਵਾਈ" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "ਲੇਂਡੇ :" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr " ਤਰਜਮਾ ਕਾਰਕ" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "ਕੋਸ਼" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "ਸਫ਼ਾ ਕਰੋ" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "ਹਿਦਾਇਤ ਦਿੱਤਾ ਹੋਇਆ" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "ਮੁਮਕਨ ਚੀਜਾਂ" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "ਲੱਭਿਆ ਨਹੀਂ" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "ਪੜ੍ਹ ਨਹੀਂ ਸਕਦੇ :" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "ਹਾਲ ਦਾ ਕੇਨਖਸ਼ਾ" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "ਅੱਖਰ :" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "ਹਾਜ਼ਰ ਕੇਨਖਸ਼ੇ" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "ਐਫ਼ - ਘੁੰਡੀ" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "ਹਾਲ ਦੇ ਕੇਨਖਸ਼ੇ" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "ਘੁੰਡੀ ਇਨਪੁਟ" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "ਨਤੀਜਾ" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "ਅੱਖਰ ਦੀ ਸੂਹ :" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "ਫ਼ੌਂਟ ਦਾ ਕੱਦ :" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "ਲੀਕ :" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "ਥੰਮ :" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "ਯੁਨਿਕਸ" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "ਡੌਸ" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "ਮੈਕ" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "ਪਿੱਛੋਂ ਸੁੱਝਿਆ" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "ਖੋਲੋ" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "ਲੱਭੋ" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "ਉੱਥੇ ਜਾਓ" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "ਕੰਮ ਬਚਾਓ (ਲਾਜ਼ਮੀ)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "ਕੰਮ ਬਚਾਓ" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "ਛਾਪੋ (ਖੱਟੇ ਪਿਆ ਕੰੰਮ)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "ਛਾਪੋ" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "ਛਾਪਣ ਤੋਂ ਪਹਿਲਾਂ ਵਿਖਾਓ ( ਖੱਟੇ ਪਿਆ ਕੰੰਮ )" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "ਛਾਪਣ ਤੋਂ ਪਹਿਲਾਂ ਵਿਖਾਓ" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "ਮਿਟਾਓ" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "ਦੁਬਾਰਾ ਕਰੋ" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "ਦਸਤਵੇਜ਼ ਦਾ ਮੂਲ" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "ਸੇਧ ਜਮਾਓ" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "ਮੂਲ ਜਮਾਓ" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "ਮੂਲ ਛੱਡੋ" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "ਕੱਦ ਥੋੜਾ ਕਰੋ" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "ਕੱਦ ਵਧਾਓ" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "ਫ਼ੌਂਟ" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "ਇਨਪੁਟ" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "ਲੀਕ ਟੁੱਟ" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। \n" "ਉਂਜ ਈ ਨਿਕਲ ਜਾਈਏ ?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "ਛਾਪੇ ਦਾ ਕੰਮ ਅਜੇ ਅੱਧਵਾਟੇ ਹੈ। \n" "ਉਂਜ ਈ ਨਿਕਲ ਜਾਈਏ ?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। \n" "ਉਂਜ ਈ ਖੋਲੀਏ ?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। ਐਂਟਰ ਘੁੰਡੀ ਨਾਲ ਰੱਦ !" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "ਖੋਲੋ -yes -e encoding file" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "ਫ਼ਾਈਲ ਹਾਜ਼ਰ ਏ। \n" "ਉਂਜ ਈ ਬਚਾਈਏ ?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "ਕੰਮ ਬਚਾਓ -e encoding file" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "ਲੜੀ ਲੱਭੋ" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "ਲੀਕ ਤੇ ਜਾਓ [ਥੰਮ]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "ਛਾਪੋ -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "ਮਿਟਾਣ ਲਈ ਕੁੱਝ ਨਹੀਂ ਹੈਗਾ।" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "ਦੁਬਾਰਾ ਕਰਨ ਲਈ ਕੁੱਝ ਨਹੀਂ ਹੈਗਾ।" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "ਸੁੱਝਾਏ ਮੂਲ ਦੀ ਸੇਧ ਜਮਾ ਦਿੱਤੀ ਗਾਈ ਏ।" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "ਸੁੱਝਾਏ ਮੂਲ ਦੀ ਸੇਧ ਮੁੜ ਕੇ ਜਮਾ ਦਿੱਤੀ ਗਾਈ ਏ।" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "ਵਰਤੋਂ :" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "ਪੜ੍ਹ ਨਹੀਂ ਸਕਦੇ :" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। ਐਂਟਰ ਦੀ ਘੁੰਡੀ ਨਾਲ ਬਾਹਰ ਨਿਕਲ ਜਾਵੋਗੇ !" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "ਛਾਪੇ ਦਾ ਕੰਮ ਅਜੇ ਅੱਧਵਾਟੇ ਹੈ। ਐਂਟਰ ਦੀ ਘੁੰਡੀ ਨਾਲ ਬਾਹਰ ਨਿਕਲ ਜਾਵੋਗੇ !" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "ਛਾਪੇ ਦਾ ਕੰਮ ਹੁੰਦਾ ਪਿਆ ਏ ..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d ਸਫ਼ੇ ਛਾਪੇ ਗਏ" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "ਵਰਤੋਂ : open -e utf-8 -yes filename" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "ਕੰਮ ਅਜੇ ਬਚਾਇਆ ਨਹੀਂ। -yes ਚੋਣ ਅਜਮਾਓ" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "ਛਾਪੇ ਦਾ ਕੰਮ ਅਜੇ ਅੱਧਵਾਟੇ ਹੈ। -yes ਚੋਣ ਅਜਮਾਓ" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "ਅਣਪਛਾਤਾ ਮੂਲ :" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "ਖੋਲਿਆ :" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "ਲੀਕ ਟੁੱਟ :" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "ਅਖੀਰਲੀ ਲੀਕ ਅੱਧਵਾਟੇ ..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "ਵਰਤੋਂ: save -e utf-8 -yes filename" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "ਫ਼ਾਈਲ ਹਾਜ਼ਰ ਏ। -yes ਚੋਣ ਵਰਤੋ। " # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "ਲਿੱਖ ਨਹੀਂ ਸਕਦੇ :" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "ਲਿੱਖਦਿਆਂ ਟਪਲਾ ਲੱਗਿਆ :" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "ਲਿੱਖਿਆ :" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "ਵਰਤੋਂ : ਲੀਕ ਤੇ ਜਾਓ [ਥੰਮ]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "ਵਰਤੋਂ : ਮੂਲ ਲੱਭੋ" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "ਲੱਭਨ ਵਾਲੀ ਲੜੀ ਨਹੀਂ ਲੱਭੀ।" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "ਵਰਤੋਂ : replace original new" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "ਤੁਹਾਡੀਆਂ ਫ਼ਰਮਾਇਸ਼ਾਂ ਬਚਾ ਨਹੀਂ ਸਕੇ" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "ਗੈਰ ਮੂਲ :" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "ਹਿਦਾਇਤ ਨਹੀਂ ਲੱਭੀ :" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "ਵਰਤੋਂ : print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "ਛਾਪੋ -o file -p printer -break" ./gui/locale/az/0000755000175000017500000000000010724001346013467 5ustar henrichhenrich./gui/locale/az/LC_MESSAGES/0000755000175000017500000000000010733117072015260 5ustar henrichhenrich./gui/locale/az/LC_MESSAGES/messages.mo0000644000175000017500000001443710733117072017435 0ustar henrichhenricha$,8 9FV es y       - 1 (: c y        1 ! & 1 = O T Z d o u }        # " % 5 G g {  !      # D b !         ! * 6 G Q l }      " Pi"B+ >$L)q     )-%<!b  *:  $+D3x~ !A F R\A_1E26i' ?<C82C%0 Vbh  !  6B^o&0 tQ'0A=$2O#E:7 9V[I)^Z1& K0,P D\.64R- '8NH3`S/( ;L*QaUM5@J?!] WY<_TF%"BGXC>+ Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:ConvertersCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-02-07 12:57+0200 Last-Translator: Vasif İsmailoglu > Language-Team: Azerbaijani Turkish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8 bit Sətir Qırılması: Mövcud "KMap"lǝrƏn Uyğun Fayl NövüƏn Böyük(__Z__)Qovluğa keçBildirilən qovluq yaradıla bilmir Bildirdiyiniz qovluğa keçə bilmirəm. Oxuya bilmirəm: Yaza bilmirəm: Ləğv etNamizədlərXarakterlər:TəmizləSütün:ÇeviricilərHazırkı KMap:Hazırkı "KMap"lǝrDOSİstiqamiətliSeçili mǝtnin istiqamiəti quruldu.Yazılma sırasında xəta oldü F-DüymǝsiFaylFayl NövüFayl mövcud deyil. Yenə də qeyd edimmi?Fayl onsuz da vardır. -yes seçənəyindən istifadə et.Fayl:Süzgəc:Axtar(__Q__)QovluqQovluq:Qovluqlar sadəcə olaraq hazırkı cərgədə yaradıla bilərlər.YazıYazı Böyüklüyü:Glif Haqqında:Əlyazma GirişiEvGirişDüymǝ GirişiSətir QırmasıSətir:AxtarMACQovluq yaratXeyrGeri alınacaq gediş yoxdur.Ediləcək bir vəzifə yoxdur.OlduAçıldı: ÇıxışPSGözləyən çap etmə sərəncamı var. Yenə də çıxım mı? Gözləyən çap etmə vazifəsi var. Çıxa bas!Gözləyən çap etmə sərəncamı var. -yes seçənəyini sınayınÇap Etmə Nümayişi(__w__)Çap Etmə Nümayişi(__w__) (sıradakı vəzifə)%d səhifə çap edildıÇap Edilir...Gizliləri GöstərƏn Kiçik(__A__)Bildirdiyiniz qovluq onsuz da vardır. Sətirlər:UnixNaməlum kodlama: Qeyd edilməmiş dəyişikliklər var. Yenə də çıxım mı? Qeyd edilməmiş dəyişikliklər var. Yenə də açımmı? Qeyd edilməmiş dəyişikliklər var. İmtina etə bas!Qeyd edilməmiş dəyişikliklər var. Çıxa bas!Qeyd edilməmiş dəyişikliklər var. -yes seçənəyini sınayınBildirilən qovluğu yaratmayacağam Yazıldı: BəliMətn İstiqaməti(__D__)__G__etAç(__O__)Ça__p__ EtÇa__p__ Et (sıradakı vəzifə)Yenidən Et(__R__)Qeyd Et(__S__)Qeyd Et(__S__) (lazımdır)Geri Al(__U__)kəlməni axtarsətrə get [sütün]tapılmadıopen -yer -e kodlama faylıprint -e proqramsave -e kodlama faylıaxtarılan kəlmə tapılmadı.dəstəklənməyən mətn/uri: istifadə qaydası: istifadə qaydası: find nextistifadə qaydası: go line [sütün] istifadə qaydası: open -e utf-8 -yes fayl adıistifadə qaydası: print [-o fayl] [-p çapedici] [-e icra] [-fasilə] [-hsize başlıq-yazı-növü-böyüklüyü]istifadə qaydası: əvəz_et əsl yeniistifadə qaydası: save -e utf-8 -yes fayl adı./gui/locale/az/LC_MESSAGES/messages.po0000644000175000017500000014757510733117072017452 0ustar henrichhenrich# Yudit 2.3 üçün Azərbaycan türkcəsi tərcüməsi. # Copyright (C) YEAR Free Software Foundation, Inc. # Vasif İsmayıloǧlu MD , 2001. # msgid "" msgstr "" "Project-Id-Version: yudit 2.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-02-07 12:57+0200\n" "Last-Translator: Vasif İsmailoglu >\n" "Language-Team: Azerbaijani Turkish\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8 bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Bəli" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Xeyr" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "Oldu" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Ləğv et" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Gizliləri Göstər" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Ev" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Qovluğa keç" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Qovluq yarat" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Qovluq" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Fayl" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Fayl Növü" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Fayl:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Qovluq:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Süzgəc:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Ən Uyğun Fayl Növü" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Bildirilən qovluğu\n" "yaratmayacağam\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Qovluqlar sadəcə olaraq\n" "hazırkı cərgədə yaradıla bilərlər." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Bildirdiyiniz qovluq\n" "onsuz da vardır.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Bildirilən qovluq\n" "yaradıla bilmir\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Bildirdiyiniz qovluğa\n" "keçə bilmirəm.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Əlyazma Girişi" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Sətirlər:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Çeviricilər" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Axtar" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Təmizlə" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "İstiqamiətli" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Namizədlər" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "tapılmadı" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Oxuya bilmirəm: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Hazırkı KMap:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Xarakterlər:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Mövcud \"KMap\"lǝr" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-Düymǝsi" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Hazırkı \"KMap\"lǝr" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Düymǝ Girişi" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Çıxış" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Glif Haqqında:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Yazı Böyüklüyü:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Sətir:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Sütün:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Aç(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Axtar(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "__G__et" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Qeyd Et(__S__) (lazımdır)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Qeyd Et(__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Ça__p__ Et (sıradakı vəzifə)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Ça__p__ Et" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Çap Etmə Nümayişi(__w__) (sıradakı vəzifə)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Çap Etmə Nümayişi(__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Geri Al(__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Yenidən Et(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Mətn İstiqaməti(__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Ən Kiçik(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Ən Böyük(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Yazı" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Giriş" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Sətir Qırması" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Qeyd edilməmiş dəyişikliklər var.\n" "Yenə də çıxım mı?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Gözləyən çap etmə sərəncamı var.\n" "Yenə də çıxım mı?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Qeyd edilməmiş dəyişikliklər var.\n" "Yenə də açımmı?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Qeyd edilməmiş dəyişikliklər var. İmtina etə bas!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yer -e kodlama faylı" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Fayl mövcud deyil.\n" "Yenə də qeyd edimmi?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e kodlama faylı" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "kəlməni axtar" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "sətrə get [sütün]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e proqram" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Ediləcək bir vəzifə yoxdur." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Geri alınacaq gediş yoxdur." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Seçili mǝtnin istiqamiəti quruldu." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "Seçili mǝtnin istiqamiəti quruldu." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "istifadə qaydası: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Oxuya bilmirəm: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Qeyd edilməmiş dəyişikliklər var. Çıxa bas!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Gözləyən çap etmə vazifəsi var. Çıxa bas!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Çap Edilir..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d səhifə çap edildı" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "istifadə qaydası: open -e utf-8 -yes fayl adı" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Qeyd edilməmiş dəyişikliklər var. -yes seçənəyini sınayın" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Gözləyən çap etmə sərəncamı var. -yes seçənəyini sınayın" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Naməlum kodlama: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Açıldı: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Sətir Qırılması: " # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr " Axırıncı sətiri bitir." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "istifadə qaydası: save -e utf-8 -yes fayl adı" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Fayl onsuz da vardır. -yes seçənəyindən istifadə et." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Yaza bilmirəm: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Yazılma sırasında xəta oldü " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Yazıldı: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "istifadə qaydası: go line [sütün] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "istifadə qaydası: find next" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "axtarılan kəlmə tapılmadı." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "istifadə qaydası: əvəz_et əsl yeni" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "dəstəklənməyən mətn/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 #, fuzzy msgid "Command not found: " msgstr "Oxuya bilmirəm: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "istifadə qaydası: print [-o fayl] [-p çapedici] [-e icra] [-fasilə] [-hsize başlıq-yazı-növü-" "böyüklüyü]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o fayl -p çapedici -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/ga/0000755000175000017500000000000010724001346013444 5ustar henrichhenrich./gui/locale/ga/LC_MESSAGES/0000755000175000017500000000000010733117072015235 5ustar henrichhenrich./gui/locale/ga/LC_MESSAGES/messages.mo0000644000175000017500000001562110733117072017406 0ustar henrichhenrichl|0 1 J W g v          4 ? Z h v z + (       9 W ] e q x 1          + . ? P S \ c #f " %     % - 9 !H j s x    !)KSWn    )3N_u"PK"g?(3 D.O5~    9'D ly *&   &077G3   B. 3 ?Lgpv~ 9.S<, 1"8[#l =6-+)Y8'  %3 CN]{  3B\y "Q&G"naRMU=%) 3<'5F;#*e]$AXY >PQgc-?`N[j1SLhf^O+,7 lVGE4(CJ@!BWb:iH2Kk0DZ 6&/Td._9I "8\ Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.8.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2003-12-16 19:55-0500 Last-Translator: Kevin Patrick Scannell Language-Team: Irish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Is neamhiomlán an líne dheireanach... Scoilt idir línte:KMapanna ar fáilCineál Comhaid Is FearrNíos Mó(__Z__)`CD' chuigNí féidir an fillteán ainmnithe a chruthú Ní féidir a dhul go dtí an fhillteáin ainmnithe. Ní féidir a léamh: Ní féidir a scríobh: CealaighIarrthóiríCatagóirCarachtair:GlanColún:Ní bhfuarthas an t-ordú: TiontairíNíorbh fhéidir airíonna a shábháilKMap Reatha:KMapanna ReathaDOSStiúrthaAthshocraíodh treo don téacs roghnaithe.Socraíodh treo don téacs roghnaithe.Leabú __T__éacs don CháipéisEarráid agus ag scríobh: F-EochairComhadCineál ComhaidTá an comhad ann cheana féin. Sábháil ar aon chaoi?Tá an comhad ann cheana. Úsáid an rogha `-yes'.Comhad:Scagaire:Cuardaigh(__Q__)FillteánFillteán:Ní féidir fillteáin a chruthú lasmuigh den chomhadlann reatha.ClóClómhéid:Eolas Glife:Ionchur ScríbhneoireachtaAibhsiúBaileIonchurIonchur EochrachScoilt idir línteLíne:CuardachMACCruthaigh FillteánNí heaFaic le hathdhéanamh.Faic le cur ar ceal.CeartOscailte: AschurPSTá jab priontála ar siúl. Éirigh amach ar aon chaoi? Tá jab priontála ar siúl. Iontráil quits!Tá jab priontála ar siúl. Bain triail as an rogha `-yes'Réamhamharc PriontálaRéamhamharc Priontála(__w__): jab ar siúlPriontáladh %d leathanach.Ag priontáil...Nóta:Taispeáin comhaid atá i bhfolachNíos Lú(__A__)Tá an chomhadlann seo ann cheana. Stríoca:UnixIonchódú anaithnid: Tá athruithe gan sábháil ann. Éirigh amach ar aon chaoi? Tá athruithe gan sábháil ann. Oscail ar aon chaoi? Athruithe gan sábháil. Iontráil discards!Athruithe gan sábháil. Iontráil quits!Athruithe gan sábháil. Bain triail as an rogha `-yes'Ní chruthófar an fillteán ainmnithe Scríobhadh: Is seaSáraigh Treo(__D__)Sáraigh Leabú(__E__)Téigh __G__oAibhsiú(__H__)__O__scail__P__riontáil__P__riontáil (jab ar siúl)Athdhéan(__R__)__S__ábháil__S__ábháil (riachtanach)C__U__ir ar neamhníTáirg leabú(__Y__)teaghrán a chuardachgo líne [colún]ar iarraidhopen -yes -e ionchódú comhadprint -e clársave -e ionchódú comhadNí bhfuarthas an teaghrán.níl an téacs/uri ar fáil: úsáid: úsáid: find téacsúsáid: go líne [colún] úsáid: open -e utf-8 -yes comhadúsáid: print [-o comhad] [-p clódóir] [-e clár] [-break] [-hsize clómhéid]úsáid: replace bunthéacs nuathéacsúsáid: save -e utf-8 -yes comhad./gui/locale/ga/LC_MESSAGES/messages.po0000644000175000017500000014740510733117072017417 0ustar henrichhenrich# Irish translations for yudit. # Copyright (C) 2003 Free Software Foundation, Inc. # Kevin Patrick Scannell , 2003. # msgid "" msgstr "" "Project-Id-Version: yudit 2.8.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2003-12-16 19:55-0500\n" "Last-Translator: Kevin Patrick Scannell \n" "Language-Team: Irish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Is sea" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Ní hea" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "Ceart" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Cealaigh" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Taispeáin comhaid atá i bhfolach" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Baile" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "`CD' chuig" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Cruthaigh Fillteán" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Fillteán" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Comhad" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Cineál Comhaid" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Comhad:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Fillteán:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Scagaire:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Cineál Comhaid Is Fearr" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Ní chruthófar an\n" "fillteán ainmnithe\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Ní féidir fillteáin a chruthú\n" "lasmuigh den chomhadlann reatha." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Tá an chomhadlann\n" "seo ann cheana.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Ní féidir an fillteán\n" "ainmnithe a chruthú\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Ní féidir a dhul go dtí\n" "an fhillteáin ainmnithe.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Ionchur Scríbhneoireachta" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Stríoca:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Tiontairí" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Cuardach" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Glan" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Stiúrtha" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Iarrthóirí" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "ar iarraidh" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "Catagóir" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "Aibhsiú" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "Nóta:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Ní féidir a léamh: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "KMap Reatha:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Carachtair:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "KMapanna ar fáil" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-Eochair" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "KMapanna Reatha" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Ionchur Eochrach" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Aschur" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Eolas Glife:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Clómhéid:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Líne:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Colún:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "__O__scail" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Cuardaigh(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Téigh __G__o" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "__S__ábháil (riachtanach)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "__S__ábháil" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "__P__riontáil (jab ar siúl)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "__P__riontáil" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Réamhamharc Priontála(__w__): jab ar siúl" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Réamhamharc Priontála" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "C__U__ir ar neamhní" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Athdhéan(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Leabú __T__éacs don Cháipéis" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Sáraigh Treo(__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Sáraigh Leabú(__E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Táirg leabú(__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Níos Lú(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Níos Mó(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "Aibhsiú(__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Cló" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Ionchur" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Scoilt idir línte" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Tá athruithe gan sábháil ann.\n" "Éirigh amach ar aon chaoi?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Tá jab priontála ar siúl.\n" "Éirigh amach ar aon chaoi?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Tá athruithe gan sábháil ann.\n" "Oscail ar aon chaoi?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Athruithe gan sábháil. Iontráil discards!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e ionchódú comhad" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Tá an comhad ann cheana féin.\n" "Sábháil ar aon chaoi?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e ionchódú comhad" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "teaghrán a chuardach" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go líne [colún]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e clár" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Faic le cur ar ceal." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Faic le hathdhéanamh." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Socraíodh treo don téacs roghnaithe." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Athshocraíodh treo don téacs roghnaithe." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "úsáid: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Ní féidir a léamh: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Athruithe gan sábháil. Iontráil quits!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Tá jab priontála ar siúl. Iontráil quits!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Ag priontáil..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Priontáladh %d leathanach." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "úsáid: open -e utf-8 -yes comhad" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Athruithe gan sábháil. Bain triail as an rogha `-yes'" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Tá jab priontála ar siúl. Bain triail as an rogha `-yes'" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Ionchódú anaithnid: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Oscailte: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " Scoilt idir línte:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr " Is neamhiomlán an líne dheireanach..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "úsáid: save -e utf-8 -yes comhad" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Tá an comhad ann cheana. Úsáid an rogha `-yes'." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Ní féidir a scríobh: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Earráid agus ag scríobh: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Scríobhadh: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "úsáid: go líne [colún] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "úsáid: find téacs" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "Ní bhfuarthas an teaghrán." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "úsáid: replace bunthéacs nuathéacs" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Níorbh fhéidir airíonna a shábháil" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "níl an téacs/uri ar fáil: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Ní bhfuarthas an t-ordú: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "úsáid: print [-o comhad] [-p clódóir] [-e clár] [-break] [-hsize clómhéid]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o comhad -p clódóir -break" ./gui/locale/ja/0000755000175000017500000000000010724001346013447 5ustar henrichhenrich./gui/locale/ja/LC_MESSAGES/0000755000175000017500000000000010733117072015240 5ustar henrichhenrich./gui/locale/ja/LC_MESSAGES/messages.mo0000644000175000017500000001600010733117072017401 0ustar henrichhenrichid   ' 7 F T u         % ) +2 (^           ' 1/ a f q }            # "4 %W }     !   " 5 T s  !    /9J S]u~   8OWh"P":4!o)5.!Hjz '   < <H  L2    GW^n~   &- @M,P!}5'! <FNU/f84-&-T85  7Q h v ,*Bm%% +&bR+^OJR:#'39%2C8!(bVZ">U ;MNd`0[<]KXg.PIecL)*4 iSDB1&@T=?_7fE/Hh-AW G$,Qa+\6F  5Y Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)Can not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: 2.0 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-01-09 22:51+0900 Last-Translator: Gaspar Sinai Language-Team: Gaspar Sinai MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 最後に改行が必要です。 改行使用可能KMAP一番のタイプ大きく(__Z__)フォルダが 作成出来ません。 指定されたフォルダに CD 出来ません。 読めないファイル:ファイルが書けません:キャンセル候補カテゴリー文字:消去列コマンドは見つかりません。変換種類現在のKMAP使用中のKMAPDOS書き方向指定したテキストの方向は解除されました。指定したテキストの方向は設定されました。アラインメント (__T__)保存中のエラーF-ボタンファイルファイル種類ファイルが既に存在しています。 本当に保存しますか?ファイルが存在しています。-yes を使いましょう。ファイルが存在しています。-yes オプションを使って下さい!ファイル:フィルタ検索(__Q__)フォルダフォルダフォルダを現在の フォルダでしか作成 出来ません。書体書体サイズ文字情報:手書き入力ハイライト入力KEY入力行選択行検索MAC新しいフォルダいいえ最後まで戻りました。最初まで戻りました。了解開きました:文字出力PS印刷中。 本当に終了しますか? 印刷中。改行は強制終了印刷中。-yes オプションを使いましょう印刷プレビュー(__w__)印刷プレビュー(印刷中)(__w__)%d ページを印刷しました印刷中備考:隠し小さく(__A__)フォルダが既に 存在しています。 画数Unix悪いエンコード保存して下さい。 本当に終了しますか? 保存して下さい。本当に開きますか? 保存して下さい。改行は強制終了保存して下さい。改行は強制終了保存必要。-yes オプションを使いましょう指定されたフォルダを 作成しません。 保存成功:はい方向(__D__)テキスト埋め込み (__E__)行と列に行く(__G__)ハイライト(__H__)開く(__O__)印刷(__P__)印刷 (印刷中)(__P__)やり直し(__R__)保存(__S__)保存 (必要)(__S__)元に戻す(__U__)埋め込み解除 (__Y__)文字列検索使用:go 行 [列]見つかりませんopen -yes -e エンコード ファイルprint -e コマンドsave -e エンコード ファイル検索に失敗しました。サポートしていない text/uri:使用:使用:find 文字列使用:go 行 [列]使用:open -e utf-8 -yes ファイル名使用:print [-o file] [-p プリンター] [-e コマンド] [-break] [-hsize header-font-size]使用:replace 元 新しい使用:save -e utf-8 -yes ファイル名./gui/locale/ja/LC_MESSAGES/messages.po0000644000175000017500000014775710733117072017434 0ustar henrichhenrich# Yudit unicode editor # Gaspar Sinai # Gaspar Sinai 2001-01-09 msgid "" msgstr "" "Project-Id-Version: 2.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-01-09 22:51+0900\n" "Last-Translator: Gaspar Sinai \n" "Language-Team: Gaspar Sinai \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "はい" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "いいえ" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "了解" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "キャンセル" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "隠し" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "新しいフォルダ" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "フォルダ" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "ファイル" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "ファイル種類" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "ファイル:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "フォルダ" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "フィルタ" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "一番のタイプ" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "指定されたフォルダを\n" "作成しません。\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "フォルダを現在の\n" "フォルダでしか作成\n" "出来ません。" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "フォルダが既に\n" "存在しています。\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "フォルダが\n" "作成出来ません。\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "指定されたフォルダに\n" "CD 出来ません。\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "手書き入力" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "画数" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "変換種類" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "検索" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "消去" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "書き方向" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "候補" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "見つかりません" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "カテゴリー" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "ハイライト" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "備考:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "読めないファイル:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "現在のKMAP" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "文字:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "使用可能KMAP" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-ボタン" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "使用中のKMAP" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "KEY入力" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "文字出力" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "文字情報:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "書体サイズ" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "行" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "列" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "開く(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "検索(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "行と列に行く(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "保存 (必要)(__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "保存(__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "印刷 (印刷中)(__P__)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "印刷(__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "印刷プレビュー(印刷中)(__w__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "印刷プレビュー(__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "元に戻す(__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "やり直し(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "アラインメント (__T__)" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "方向(__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "テキスト埋め込み (__E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "埋め込み解除 (__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "小さく(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "大きく(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "ハイライト(__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "書体" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "入力" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "行選択" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "保存して下さい。\n" "本当に終了しますか?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "印刷中。\n" "本当に終了しますか?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "保存して下さい。本当に開きますか?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "保存して下さい。改行は強制終了" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e エンコード ファイル" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "ファイルが既に存在しています。\n" "本当に保存しますか?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e エンコード ファイル" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "文字列検索" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "使用:go 行 [列]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e コマンド" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "最初まで戻りました。" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "最後まで戻りました。" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "指定したテキストの方向は設定されました。" # # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "指定したテキストの方向は解除されました。" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "使用:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "読めないファイル:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "保存して下さい。改行は強制終了" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "印刷中。改行は強制終了" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "印刷中" # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d ページを印刷しました" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "使用:open -e utf-8 -yes ファイル名" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "保存必要。-yes オプションを使いましょう" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "印刷中。-yes オプションを使いましょう" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "悪いエンコード" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "開きました:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " 改行" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "最後に改行が必要です。" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "使用:save -e utf-8 -yes ファイル名" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "" "ファイルが存在しています。-yes を使いましょう。ファイルが存在しています。-yes オプションを使って下" "さい!" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "ファイルが書けません:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "保存中のエラー" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "保存成功:" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "使用:go 行 [列]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "使用:find 文字列" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "検索に失敗しました。" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "使用:replace 元 新しい" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "サポートしていない text/uri:" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "コマンドは見つかりません。" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "使用:print [-o file] [-p プリンター] [-e コマンド] [-break] [-hsize header-font-size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o ファイル -p プリンター -break" ./gui/locale/ru/0000755000175000017500000000000010724001346013503 5ustar henrichhenrich./gui/locale/ru/LC_MESSAGES/0000755000175000017500000000000010733117073015275 5ustar henrichhenrich./gui/locale/ru/LC_MESSAGES/messages.mo0000644000175000017500000002261510733117073017447 0ustar henrichhenrichl|0 1 J W g v          4 ? Z h v z + (       9 W ] e q x 1          + . ? P S \ c #f " %     % - 9 !H j s x    !)KSWn    )3N_u"PK"g?R%7]r 4J.32b$:3"n%!]H>L8LS  v ju $, Q _j{" ~-a5@g'@h?  6&]y1p@:{vc w  (  D =!#[!0!!g!4":F""7""2"#+8#d#.#W#C $N$Z$CI%aRMU=%) 3<'5F;#*e]$AXY >PQgc-?`N[j1SLhf^O+,7 lVGE4(CJ@!BWb:iH2Kk0DZ 6&/Td._9I "8\ Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: Yudit-2.8.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-02-21 11:28+09:00 Last-Translator: Vyacheslav Dikonov Language-Team: Russian MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8-bit В последней строке недостаёт символа конца...Конец строки: Доступные раскладкиВыбрать UTF-8Крупнее (__Ctrl/Alt+Z__)Перейти в каталогНевозможно создать каталог. Невозможно перейти в указанный каталог. Невозможно открыть файл: Невозможно сохранить файл: ОтменитьВариантыКатегорияКод:ОчиститьСтолбец:Команда не найдена: РаспознаваниеНевозможно сохранить настройкиТекущая раскладка:Выбранные раскладкиДОСНаправление линийИменение направления выделенного текста отменено.Задано направление выделенного текста.Задать общее направление текста (__Ctrl/Alt+T__)Ошибка записи: КлавишаФайлТип файлаФайл существует. Перезаписать?Файл существует. Используйте параметр -yes.Файл:Фильтр:Поиск (__Ctrl/Alt+Q__)КаталогКаталог:Новые каталоги можно создавать только внутри текущего каталога.ШрифтРазмер шрифта:Код символа:Рукописный вводПодсветкаДомашний каталогРаскладкаВвод с клавиатурыСимвол конца строкиСтрока:НайтиМакинтошСоздать каталогНетПовтор невозможен.Откат невозможен.ОКОткрыт файл: РезультатПараграф UnicodeСоздаётся задание на печать. Завершить работу программы немедленно? Идёт фоновая печать. Нажатие означает немедленный выход из редактора!Идёт фоновая печать. Попробуйте добавить параметр -yesПредварительный просмотр (__Ctrl/Alt+W__)Предварительный просмотр (идёт фоновая печать) (__Ctrl/Alt+W__)Напечатано %d страниц.Идёт печать...Примечание:Скрытые файлыМельче (__Ctrl/Alt+A__)Указанный каталог уже существует. Линий:ЮниксНеизвестная кодовая таблица: Внесённые в текст изменения не были сохранены. Завершить работу программы с потерей данных? Внесённые в текст изменения не были сохранены. Открыть новый файл с потерей изменений в старом? После нажатия клавиши несохранённые изменения будут утеряны!Изменения не были сохранены. Нажатие означает немедленный выход из редактора!Изменения не были сохранены. Попробуйте добавить параметр -yesУказанный каталог не будет создан. Сохранён файл: ДаРазвернуть выделенный текст в противоположную сторону (__Ctrl/Alt+D__)Сменить направление выделенной части текста (__Ctrl/Alt+E__)Переход (__Ctrl/Alt+G__)Подсветка(__H__)Открыть файл (__Ctrl/Alt+O__)Печать (__Ctrl/Alt+P__)Печать (идёт фоновая печать) (__Ctrl/Alt+P__)Повтор (__Ctrl/Alt+R__)Сохранить (__Ctrl/Alt+S__)Сохранить (нужно) (__Ctrl/Alt+S__)Откат (__Ctrl/Alt+U__)Отменить смену направления выделенного текста (__Ctrl/Alt+Y__)find <текст>go <номер строки> [<номер столбца>]не найденоopen -yes -e <кодовая таблица> <файл>print -e <команда>save -e <кодовая таблица> <файл>Текст не найден:неподдерживаемый text/uri: Формат команды: Формат команды: find <текст>Формат команды: go <номер строки> [<номер столбца>]Формат команды: open -e utf-8 -yes <имя файла>Формат команды: print [-o <файл>] [-p <принтер>] [-e <команда>] [-break] [-hsize <размер шрифта заголовка>]Формат команды: replace <исходный текст> <новый текст>Формат команды: save -e utf-8 -yes <имя файла>./gui/locale/ru/LC_MESSAGES/messages.po0000644000175000017500000015562210733117073017457 0ustar henrichhenrich# Yudit 2.7 # Copyright (C) 2002 Free Software Foundation, Inc. # Диконов Вячеслав (Vyacheslav Dikonov) # msgid "" msgstr "" "Project-Id-Version: Yudit-2.8.2 \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-02-21 11:28+09:00\n" "Last-Translator: Vyacheslav Dikonov \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8-bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Да" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Нет" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "ОК" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Отменить" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Скрытые файлы" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Домашний каталог" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Перейти в каталог" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Создать каталог" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Каталог" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Файл" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Тип файла" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Файл:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Каталог:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Фильтр:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Выбрать UTF-8" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Указанный каталог\n" "не будет создан.\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Новые каталоги можно создавать\n" "только внутри текущего каталога." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Указанный каталог\n" "уже существует.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Невозможно создать\n" "каталог.\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Невозможно перейти\n" "в указанный каталог.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Рукописный ввод" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Линий:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Распознавание" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Найти" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Очистить" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Направление линий" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Варианты" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "не найдено" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "Категория" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "Подсветка" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "Примечание:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Невозможно открыть файл: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Текущая раскладка:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Код:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Доступные раскладки" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "Клавиша" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Выбранные раскладки" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Ввод с клавиатуры" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Результат" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Код символа:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Размер шрифта:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Строка:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Столбец:" # # From yudit FAQ: # # Q4: What is that [Line Break] on the right hand side that is mostly # showing "Unix"? # A4: The line end marks are: # UNIX='\n' - Unix line break # DOS='\r\n' - DOS line break # MAC='\r' - MAC line break # LS = U+2028 - Unicode line separator # PS = U+2029 - Unicode paragraph separator # In Yudit you can mix these - you can create a file that has DOS # and Unix lines for instance. But you should avoid mixing them if # possible. # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Юникс" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "ДОС" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "Макинтош" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "Параграф Unicode" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Открыть файл (__Ctrl/Alt+O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Поиск (__Ctrl/Alt+Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Переход (__Ctrl/Alt+G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Сохранить (нужно) (__Ctrl/Alt+S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Сохранить (__Ctrl/Alt+S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Печать (идёт фоновая печать) (__Ctrl/Alt+P__)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Печать (__Ctrl/Alt+P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Предварительный просмотр (идёт фоновая печать) (__Ctrl/Alt+W__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Предварительный просмотр (__Ctrl/Alt+W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Откат (__Ctrl/Alt+U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Повтор (__Ctrl/Alt+R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Задать общее направление текста (__Ctrl/Alt+T__)" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Развернуть выделенный текст в противоположную сторону (__Ctrl/Alt+D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Сменить направление выделенной части текста (__Ctrl/Alt+E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Отменить смену направления выделенного текста (__Ctrl/Alt+Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Мельче (__Ctrl/Alt+A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Крупнее (__Ctrl/Alt+Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "Подсветка(__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Шрифт" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Раскладка" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Символ конца строки" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Внесённые в текст изменения не были сохранены.\n" "Завершить работу программы с потерей данных?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Создаётся задание на печать.\n" "Завершить работу программы немедленно?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Внесённые в текст изменения не были сохранены.\n" "Открыть новый файл с потерей изменений в старом?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "После нажатия клавиши несохранённые изменения будут утеряны!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e <кодовая таблица> <файл>" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Файл существует.\n" "Перезаписать?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e <кодовая таблица> <файл>" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find <текст>" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go <номер строки> [<номер столбца>]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e <команда>" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Откат невозможен." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Повтор невозможен." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Задано направление выделенного текста." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Именение направления выделенного текста отменено." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "Формат команды: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Невозможно открыть файл: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Изменения не были сохранены. Нажатие означает немедленный выход из редактора!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Идёт фоновая печать. Нажатие означает немедленный выход из редактора!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Идёт печать..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Напечатано %d страниц." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "Формат команды: open -e utf-8 -yes <имя файла>" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Изменения не были сохранены. Попробуйте добавить параметр -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Идёт фоновая печать. Попробуйте добавить параметр -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Неизвестная кодовая таблица: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Открыт файл: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Конец строки: " # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "В последней строке недостаёт символа конца..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "Формат команды: save -e utf-8 -yes <имя файла>" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Файл существует. Используйте параметр -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Невозможно сохранить файл: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Ошибка записи: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Сохранён файл: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "Формат команды: go <номер строки> [<номер столбца>]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "Формат команды: find <текст>" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "Текст не найден:" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "Формат команды: replace <исходный текст> <новый текст>" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Невозможно сохранить настройки" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "неподдерживаемый text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Команда не найдена: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "Формат команды: print [-o <файл>] [-p <принтер>] [-e <команда>] [-break] [-hsize <размер шрифта " "заголовка>]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o <файл> -p <принтер> -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "Конец строки Unicode" ./gui/locale/el/0000755000175000017500000000000010724001346013455 5ustar henrichhenrich./gui/locale/el/LC_MESSAGES/0000755000175000017500000000000010733117072015246 5ustar henrichhenrich./gui/locale/el/LC_MESSAGES/messages.mo0000644000175000017500000002075510733117072017423 0ustar henrichhenrichh\    " C d s        + (> g          1 A F Q ] o t z           # " %/ U g   !     $ C d !       4=FXa u '"@Pc"C=7u,hQg($ %; P%\H b'_6-!%O uEX ; IWkz},#P#o! !#%I'P%x __2g1V,-#HMi)nacc^bk%P-)*Tgz9/)%>)d/I 6^ ) ; (!W1!;!'!IQS *YLPD 6$?.Na[c\E2@ Z%4d/+R),8`;A U:="#KVGbf '_W3T&^C]51M!907(eJ>O X<HBFhg- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: Yudit 2.7.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2003-02-11 10:11+0200 Last-Translator: Velonis Petros Language-Team: Greek MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ανεκπλήρωτη η Τελευταία Γραμμή... Αλλαγή Γραμμής:Διαθέσιμα KMapsΚαλύτερος Τύπος ΑρχείουΜεγαλύτερα(__Ζ__)CD σεΔεν είναι δυνατή η δημιουργία του συγκεκριμένου φακέλου Αδύνατη η πρόσβαση στο συγκεκριμένο φάκελο. Αδύνατο να διαβαστεί: Αδύνατο να γραφτεί: ΆκυροΥποψήφιοιΧαρακτήρες:ΚαθαρισμόςΣτήλη:Η εντολή δε βρέθηκε: ΜετατροπείςΑδύνατο να αποθηκευτούν οι προτιμήσειςΤρέχων KMap:Τωρινά KMapsDOSΚατευθυνόμενοΗ κατεύθυνση του επιλεγμένου κειμένου είναι η αρχική.Η κατεύθυνση του επιλεγμένου κειμένου έχει οριστεί.Εμπέδωση Εγγράφου __Κ__ειμένουΣφάλμα κατά την εγγραφή: Πλήκτρο ΛειτουργίαςΑρχείοΤύπος ΑρχείουΤο αρχείο υπάρχει ήδη. Να αποθηκευτεί;Το αρχείο υπάρχει, Χρησιμοποίησε την επιλογή -yes.Αρχείο:Φίλτρο:Εύρεση(__Q__)ΦάκελοςΦάκελος:Οι φακελοι μπορούν να δημιουργηθούν μόνο στο συγκεκριμένο κατάλογο.ΓραμματοσειράΜέγεθος Γραμματοσειράς:Στοιχεία Γλυφής:Χειρόγραφη ΕίσοδοςΑρχικός ΚατάλογοςΕίσοδοςΕίσοδος ΠλήκτρουΑλλαγή ΓραμμήςΓραμμή:ΑναζήτησηMacΔημιουργία ΦακέλουΌχιΤίποτα για επανάληψη.Τίποτα για αναίρεση.ΕντάξειΑνοίχθηκε: ΈξοδοςPSΕργασία για εκτύπωση σε αναμονή. Οπωσδήποτε έξοδος; Εργασία για εκτύπωση σε αναμονή.Το Enter εγκαταλείπει!Εργασία για εκτύπωση σε αναμονή. Δοκίμασε την επιλογή -yes__Π__ροεπισκόπιση Εκτύπωσης__Π__ροεπισκόπιση εκτύπωσης (εργασία σε αναμονή)Εκτυπώθηκαν %d σελίδα(ες).Εκτύπωση...Εμφάνιση ΚρυμμένωνΜικρότερα(__Α__)Ο συγκεκριμένος κατάλογος υπάρχει ήδη. Μονοκονδυλιές:UnixΆγνωστη κωδικοποίηση: Οι αλλαγές δεν έχουν αποθηκευτεί. Οπωσδήποτε έξοδος; Οι αλλαγές δεν έχουν αποθηκευτεί. Οπωσδήποτε άνοιγμα; Οι αλλαγές δεν έχουν αποθηκευτεί. Το Enter τις αποβάλλει!Οι αλλαγές δεν έχουν αποθηκευτεί. Το Enter εγκαταλείπει!Αλλαγές που δεν έχουν αποθηκευτεί. Δοκίμασε την επιλογή -yesΔε θα δημιουργηθεί ο συγκεκριμένος φάκελος Γράφτηκε: ΝαιΠαράκαμψη __Κ__ατεύθυνσηςΠαράκαμψη __Ε__μπέδωσης__Π__ήγαινεΆν__ο__ιγμα__Ε__κτύπωση__Ε__κτύπωση (εργασία σε αναμονή)__Ε__πανάληψη__Α__ποθήκευση__Α__ποθήκευση (απαραίτητη)__Α__ναίρεσηΕμπέδωση Α__π__όδοσηςεύρεση αλφαριθμητικούπήγαινε στη γραμμή [στήλη]δε βρέθηκεopen -yes -e encoding fileprint -e programsave -e encoding fileτο αλφαριθμητικό αναζήτησης δε βρέθηκε.Μη υποστηριζόμενο κείμενο/uri: χρήση: χρήση: εύρεση κειμένουχρήση: πήγαινε στη γραμμή [στήλη]χρήση: open -e -utf-8 -yes filenameχρήση: print [-o file] [-p printer] [-e exec] [-break] [-hsize header -font -size]χρήση: αντικατάσταση πρωτότυπουχρήση: save -e utf-8 -yes filename./gui/locale/el/LC_MESSAGES/messages.po0000644000175000017500000015322410733117072017424 0ustar henrichhenrich# Greek translation of Yudit # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Velonis Petros , 2002. # Patatas Iannos # Simos Xenitellis msgid "" msgstr "" "Project-Id-Version: Yudit 2.7.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2003-02-11 10:11+0200\n" "Last-Translator: Velonis Petros \n" "Language-Team: Greek \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Ναι" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Όχι" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "Εντάξει" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Άκυρο" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Εμφάνιση Κρυμμένων" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Αρχικός Κατάλογος" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "CD σε" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Δημιουργία Φακέλου" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Φάκελος" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Αρχείο" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Τύπος Αρχείου" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Αρχείο:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Φάκελος:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Φίλτρο:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Καλύτερος Τύπος Αρχείου" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Δε θα δημιουργηθεί\n" "ο συγκεκριμένος φάκελος\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Οι φακελοι μπορούν να δημιουργηθούν\n" "μόνο στο συγκεκριμένο κατάλογο." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Ο συγκεκριμένος κατάλογος\n" "υπάρχει ήδη.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Δεν είναι δυνατή η δημιουργία\n" "του συγκεκριμένου φακέλου\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Αδύνατη η πρόσβαση στο\n" "συγκεκριμένο φάκελο.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Χειρόγραφη Είσοδος" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Μονοκονδυλιές:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Μετατροπείς" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Αναζήτηση" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Καθαρισμός" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Κατευθυνόμενο" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Υποψήφιοι" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "δε βρέθηκε" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Αδύνατο να διαβαστεί: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Τρέχων KMap:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Χαρακτήρες:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Διαθέσιμα KMaps" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "Πλήκτρο Λειτουργίας" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Τωρινά KMaps" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Είσοδος Πλήκτρου" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Έξοδος" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Στοιχεία Γλυφής:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Μέγεθος Γραμματοσειράς:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Γραμμή:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Στήλη:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "Mac" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Άν__ο__ιγμα" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Εύρεση(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "__Π__ήγαινε" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "__Α__ποθήκευση (απαραίτητη)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "__Α__ποθήκευση" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "__Ε__κτύπωση (εργασία σε αναμονή)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "__Ε__κτύπωση" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "__Π__ροεπισκόπιση εκτύπωσης (εργασία σε αναμονή)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "__Π__ροεπισκόπιση Εκτύπωσης" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "__Α__ναίρεση" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "__Ε__πανάληψη" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Εμπέδωση Εγγράφου __Κ__ειμένου" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Παράκαμψη __Κ__ατεύθυνσης" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Παράκαμψη __Ε__μπέδωσης" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Εμπέδωση Α__π__όδοσης" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Μικρότερα(__Α__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Μεγαλύτερα(__Ζ__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Γραμματοσειρά" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Είσοδος" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Αλλαγή Γραμμής" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Οι αλλαγές δεν έχουν αποθηκευτεί.\n" "Οπωσδήποτε έξοδος;\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Εργασία για εκτύπωση σε αναμονή.\n" "Οπωσδήποτε έξοδος;\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Οι αλλαγές δεν έχουν αποθηκευτεί.\n" "Οπωσδήποτε άνοιγμα;\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Οι αλλαγές δεν έχουν αποθηκευτεί. Το Enter τις αποβάλλει!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e encoding file" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Το αρχείο υπάρχει ήδη.\n" "Να αποθηκευτεί;" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e encoding file" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "εύρεση αλφαριθμητικού" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "πήγαινε στη γραμμή [στήλη]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Τίποτα για αναίρεση." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Τίποτα για επανάληψη." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Η κατεύθυνση του επιλεγμένου κειμένου έχει οριστεί." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Η κατεύθυνση του επιλεγμένου κειμένου είναι η αρχική." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "χρήση: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Αδύνατο να διαβαστεί: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Οι αλλαγές δεν έχουν αποθηκευτεί. Το Enter εγκαταλείπει!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Εργασία για εκτύπωση σε αναμονή.Το Enter εγκαταλείπει!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Εκτύπωση..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Εκτυπώθηκαν %d σελίδα(ες)." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "χρήση: open -e -utf-8 -yes filename" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Αλλαγές που δεν έχουν αποθηκευτεί. Δοκίμασε την επιλογή -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Εργασία για εκτύπωση σε αναμονή. Δοκίμασε την επιλογή -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Άγνωστη κωδικοποίηση: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Ανοίχθηκε: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " Αλλαγή Γραμμής:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr " Ανεκπλήρωτη η Τελευταία Γραμμή..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "χρήση: save -e utf-8 -yes filename" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Το αρχείο υπάρχει, Χρησιμοποίησε την επιλογή -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Αδύνατο να γραφτεί: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Σφάλμα κατά την εγγραφή: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Γράφτηκε: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "χρήση: πήγαινε στη γραμμή [στήλη]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "χρήση: εύρεση κειμένου" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "το αλφαριθμητικό αναζήτησης δε βρέθηκε." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "χρήση: αντικατάσταση πρωτότυπου" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Αδύνατο να αποθηκευτούν οι προτιμήσεις" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "Μη υποστηριζόμενο κείμενο/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Η εντολή δε βρέθηκε: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "χρήση: print [-o file] [-p printer] [-e exec] [-break] [-hsize header -font -size]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o file -p printer -break" ./gui/locale/bg/0000755000175000017500000000000010724001346013445 5ustar henrichhenrich./gui/locale/bg/LC_MESSAGES/0000755000175000017500000000000010733117072015236 5ustar henrichhenrich./gui/locale/bg/LC_MESSAGES/messages.mo0000644000175000017500000002132510733117072017405 0ustar henrichhenrichm@ A Z g w       " + 7 = E Y d    + (   / 5 : D ^ |    1       ' 2 8 @ D P S d u x   # " %   * > J R ^ !m       -!Npx|   1= NXs"Pp"p6 Wm.PGH(C& $1D Wc x+G,JNS^JE%C is|UI 3 =K a lWx #)%)Od~"*$' LWhya|`J?+[-@U(e? %]!^Mj,TK8I%NFtAYu>\ ? K d $m   / ! !!1!*S!;~!!.j";"bSNV>&* 4=(6G<$+f^%BYZ ?QRhd.@aO\k TCig_P,-8 mWHF5)DKA"2Xc;jI3LlM1E[ 7'0Ue/`:J !#9] Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not set syntax: Can not write: CancelCandidatesCategoryCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHighlightingHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Remark:Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__H__ighlighting__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.8.2.beta29 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2007-12-09 22:32+0200 Last-Translator: Alexander Shopov Language-Team: Bulgarian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=2; plural=n != 1; Последният ред е незавършен…Край на ред:Налични кл. картиНай-подходящ вид на файлаУвеличаване(__Z__)Отиване в папкаПосочената папка не може да бъде създадена. Не може да се отиде в посочената папка. Не може да се прочете: Синтаксисът не може да бъде зададен: Не може да се запише: ОтмянаКандидатиКатегорияЗнаци:ИзчистванеКолона:Командата не е открита: КонверториНастройките не могат да бъдат запазениТекущ кл. карта:Текущи кл. картиDOSС посокаПосоката на избрания текст е зададена наново.Установена е посоката на избрания текст.Обща посока на текста в документа (__T__)Грешка при запис на: Ф. кл.ФайлВид на файлаФайлът съществува. Да се записва ли върху него?Файлът съществува. Използвайте опция -yesФайл:Филтър:Търсене(__Q__)ПапкаПапка:Нови папки могат да се създават само в текущата.ШрифтГолемина на шрифта:Информация за буквата:Ръкописно въвежданеОцветяванеДомашна папкаВъвежданеВъведеноКрай на редРед:ПроверкаMACСъздаване на папкаНеНяма нищо за повтаряне.Няма нищо за отмяна.ДобреОтворен: РезултатPSИма задача, която се печата. Да се спре ли програмата? Има задача за печат. С „Enter“ се излиза от програмата!Има задача за печат. Пробвайте с опция -yesПреглед преди печат(__W__)Преглед преди печат(печата се и предна задача)(__W__)Отпечатани са %d странициПечата се…Бележка:Показване на скрититеНамаляване(__A__)Посочената папка вече съществува. Щрихи:UnixНепознато кодиране: Промените не са запазени. Да се спре ли програмата? Промените не са запазени. Да се отвори ли друг файл? Промените не са запазени. „Enter“ ги отменя!Промените не са записани. С „Enter“ се излиза от програмата!Промените не са записани. Пробвайте с опция -yesПосочената папка няма да бъде създадена. Записан: ДаПосока на текста(__D__)Обръщане на посоката на избраното (__E__)Отиване(__G__)Оцветяване(__H__)Отваряне(__O__)Печат(__P__)Печат(печата се и предна задача)(__P__)Повторение(__R__)Запазване(__S__)Запазване — файлът е променян(__S__)Отмяна(__U__)Отмяна на обръщането на посоката на избраното (__Y__)find низgo ред [колона]нямаopen -yes -e кодиращ_файлprint -e програмаsave -e кодиращ_файлтърсеният низ не е открит.неподдържан text/uri: употреба: употреба: find текступотреба: go ред [колона]употреба: open -e utf-8 -yes име_на_файлаупотреба: print [-o файл] [-p принтер] [-e изпълнение] [-break] [-hsize големина_на_шрифта_на_горния_колонтитул]употреба: replace това с_товаупотреба: save -e utf-8 -yes име_на_файла./gui/locale/bg/LC_MESSAGES/messages.po0000644000175000017500000015267010733117072017420 0ustar henrichhenrich# Bulgarian translastion of yudit po-file. # Copyright (C) 2001, 2006, 2007 Free Software Foundation, Inc. # Alexander Shopov , 2001, 2006, 2007. # msgid "" msgstr "" "Project-Id-Version: yudit 2.8.2.beta29\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2007-12-09 22:32+0200\n" "Last-Translator: Alexander Shopov \n" "Language-Team: Bulgarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Да" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Не" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "Добре" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Отмяна" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Показване на скритите" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Домашна папка" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Отиване в папка" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Създаване на папка" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Папка" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Файл" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Вид на файла" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Файл:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Папка:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Филтър:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Най-подходящ вид на файла" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Посочената папка няма\n" "да бъде създадена.\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Нови папки могат да се\n" "създават само в текущата." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Посочената папка\n" "вече съществува.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Посочената папка не\n" "може да бъде създадена.\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Не може да се отиде\n" "в посочената папка.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Ръкописно въвеждане" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Щрихи:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Конвертори" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Проверка" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Изчистване" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "С посока" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Кандидати" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "няма" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "Категория" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "Оцветяване" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "Бележка:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Не може да се прочете: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Текущ кл. карта:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Знаци:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Налични кл. карти" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "Ф. кл." # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Текущи кл. карти" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Въведено" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Резултат" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Информация за буквата:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Големина на шрифта:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Ред:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Колона:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "Отваряне(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Търсене(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Отиване(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Запазване — файлът е променян(__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Запазване(__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Печат(печата се и предна задача)(__P__)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Печат(__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Преглед преди печат(печата се и предна задача)(__W__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Преглед преди печат(__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Отмяна(__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Повторение(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Обща посока на текста в документа (__T__)" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Посока на текста(__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Обръщане на посоката на избраното (__E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Отмяна на обръщането на посоката на избраното (__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Намаляване(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Увеличаване(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "Оцветяване(__H__)" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Шрифт" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Въвеждане" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Край на ред" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Промените не са запазени.\n" "Да се спре ли програмата?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Има задача, която се печата.\n" "Да се спре ли програмата?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Промените не са запазени.\n" "Да се отвори ли друг файл?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Промените не са запазени. „Enter“ ги отменя!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e кодиращ_файл" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Файлът съществува.\n" "Да се записва ли върху него?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e кодиращ_файл" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find низ" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go ред [колона]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e програма" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Няма нищо за отмяна." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Няма нищо за повтаряне." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Установена е посоката на избрания текст." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Посоката на избрания текст е зададена наново." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "употреба: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 msgid "Can not set syntax: " msgstr "Синтаксисът не може да бъде зададен: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Промените не са записани. С „Enter“ се излиза от програмата!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Има задача за печат. С „Enter“ се излиза от програмата!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Печата се…" # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Отпечатани са %d страници" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "употреба: open -e utf-8 -yes име_на_файла" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Промените не са записани. Пробвайте с опция -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Има задача за печат. Пробвайте с опция -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Непознато кодиране: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Отворен: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Край на ред:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "Последният ред е незавършен…" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "употреба: save -e utf-8 -yes име_на_файла" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Файлът съществува. Използвайте опция -yes" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Не може да се запише: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Грешка при запис на: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Записан: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "употреба: go ред [колона]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "употреба: find текст" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "търсеният низ не е открит." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "употреба: replace това с_това" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Настройките не могат да бъдат запазени" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "неподдържан text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Командата не е открита: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "употреба: print [-o файл] [-p принтер] [-e изпълнение] [-break] [-hsize " "големина_на_шрифта_на_горния_колонтитул]" ./gui/locale/zh/0000755000175000017500000000000010724001346013476 5ustar henrichhenrich./gui/locale/zh/LC_MESSAGES/0000755000175000017500000000000010733117073015270 5ustar henrichhenrich./gui/locale/zh/LC_MESSAGES/messages.mo0000644000175000017500000001400610733117073017435 0ustar henrichhenrichb,<H IVf u       * 5 C Q U (^          1 E J U a s x ~           # " %3 Y k   !     ( G h !      ! * 3 E N Z k u       "P<"L $ 4 A O \ }     ' +!8Zsz+'    1HO_ o |    /*M-x"#$ HRW/j8**-) W x  /< O'Y!  ('`P+(B>%3P$F;8 :W\J*_[2' L1-Q!E]/75S. (9OI4aT0) <M+RbVN6AK @"^ XZ=`UG&#CHYD?, Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.4.8 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-11-23 15:11+0800 Last-Translator: Joe Man Language-Team: Traditional Chinese MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 換行:可用輸入法預設編碼放大(__Z__)移至目錄無法建立 指定的資料夾 無法移至 指定的資料夾 無法讀取:無法寫入:取消選字區字元編號:清除字數:無法讀取:參照檔目前輸入法:輸入法DOS筆劃方向選定文字的方向已設定。寫入時發生錯誤:F- 鍵檔案編碼檔案已存在。 是否確定要取代?檔案已存在。使用 -yes 選項。檔案:類別:尋找 (__Q__)資料夾資料夾:資料夾只可以在 目前的目錄下建立。字型字型大小:字元編號:手寫輸入家目錄輸入法輸入換行方式行數:檢視MAC新增資料夾否沒有動作可重複。沒有動作可復原。確定已開啟:輸出PS有待印的文件。 是否確定要離開? 有待印的文件。按輸入鍵離開!有待印的文件。嘗試使用 -yes 選項預覽列印 (__W__)預覽列印(待印文件) (__W__)已列印 %d 頁。正在列印...切換隱藏檔案縮小 (__A__)指定的資料夾 已經存在。 筆劃:Unix不詳的編碼:變更尚未儲存。 是否確定要離開? 變更尚未儲存。 是否確定開啟另一檔案? 變更尚未儲存。按輸入鍵放棄!變更尚未儲存。按輸入鍵離開!變更尚未儲存。嘗試使用 -yes 選項不會建立 指定的資料夾 已寫入:是字串方向 (__D__)移至 (__G__)開啟 (__O__)列印 (__P__)列印(待印文件) (__P__)重複 (__R__)儲存 (__S__)儲存 (已變更)(__S__)復原 (__U__)尋找字串go 行數 [字數]找不到open -yes -e 編碼類別 檔案名稱print -e 程式save -e 編碼類別 檔案名稱找不到要尋找的字串。不支援的 text/uri:用法: 用法:find 字串用法:go 行數 [字數]用法:open -e utf-8 -yes 檔案名稱用法:print [-o 檔案名稱] [-p 印表機] [-e 執行] [-break] [-hsize 標題字型大小]用法:replace 原文字串 新的字串用法:save -e utf-8 -yes 檔案名稱./gui/locale/zh/LC_MESSAGES/messages.po0000644000175000017500000014677110733117073017457 0ustar henrichhenrich# Traditonal chinese translation of yudit. # Copyright (C) 2001 Free Software Foundation, Inc. # Joe Man , 2001. # msgid "" msgstr "" "Project-Id-Version: yudit 2.4.8\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-11-23 15:11+0800\n" "Last-Translator: Joe Man \n" "Language-Team: Traditional Chinese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "是" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "否" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "確定" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "取消" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "切換隱藏檔案" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "家目錄" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "移至目錄" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "新增資料夾" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "資料夾" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "檔案" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "編碼" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "檔案:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "資料夾:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "類別:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "預設編碼" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "不會建立\n" "指定的資料夾\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "資料夾只可以在\n" "目前的目錄下建立。" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "指定的資料夾\n" "已經存在。\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "無法建立\n" "指定的資料夾\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "無法移至\n" "指定的資料夾\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "手寫輸入" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "筆劃:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "參照檔" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "檢視" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "清除" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "筆劃方向" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "選字區" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "找不到" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "無法讀取:" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "目前輸入法:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "字元編號:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "可用輸入法" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F- 鍵" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "輸入法" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "輸入" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "輸出" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "字元編號:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "字型大小:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "行數:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "字數:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "開啟 (__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "尋找 (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "移至 (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "儲存 (已變更)(__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "儲存 (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "列印(待印文件) (__P__)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "列印 (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "預覽列印(待印文件) (__W__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "預覽列印 (__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "復原 (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "重複 (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "字串方向 (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "縮小 (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "放大(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "字型" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "輸入法" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "換行方式" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "變更尚未儲存。\n" "是否確定要離開?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "有待印的文件。\n" "是否確定要離開?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "變更尚未儲存。\n" "是否確定開啟另一檔案?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "變更尚未儲存。按輸入鍵放棄!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e 編碼類別 檔案名稱" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "檔案已存在。\n" "是否確定要取代?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e 編碼類別 檔案名稱" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "尋找字串" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go 行數 [字數]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e 程式" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "沒有動作可復原。" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "沒有動作可重複。" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "選定文字的方向已設定。" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "選定文字的方向已設定。" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "用法: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "無法讀取:" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "變更尚未儲存。按輸入鍵離開!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "有待印的文件。按輸入鍵離開!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "正在列印..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "已列印 %d 頁。" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "用法:open -e utf-8 -yes 檔案名稱" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "變更尚未儲存。嘗試使用 -yes 選項" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "有待印的文件。嘗試使用 -yes 選項" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "不詳的編碼:" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "已開啟:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " 換行:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr " 已完成到最後一行。" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "用法:save -e utf-8 -yes 檔案名稱" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "檔案已存在。使用 -yes 選項。" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "無法寫入:" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "寫入時發生錯誤:" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "已寫入:" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "用法:go 行數 [字數]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "用法:find 字串" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "找不到要尋找的字串。" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "用法:replace 原文字串 新的字串" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "不支援的 text/uri:" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "無法讀取:" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "用法:print [-o 檔案名稱] [-p 印表機] [-e 執行] [-break] [-hsize 標題字型大小]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "列印 -o 檔案 -p 印表機 -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/fr/0000755000175000017500000000000010724001346013464 5ustar henrichhenrich./gui/locale/fr/LC_MESSAGES/0000755000175000017500000000000010733117072015255 5ustar henrichhenrich./gui/locale/fr/LC_MESSAGES/messages.mo0000644000175000017500000001430110733117072017420 0ustar henrichhenrich`( )6F Uc i     # 1 (5 ^ t z        1  ! , 8 J O U _ j p x |       # " % - ? _ s   !       < Z !{          " . ? I d u      " Pa"}K-?/G1w   );LEP4* @JS b nH| !)1DLUYos , *"<Vo'650*f)3%"< L W d q}#6+O{ (f *r#@<$1N#D96 8UZH)]Y&O J0, C[.53Q- '7MG2_R/( :K*P`TL4?I>!\ VX;^SE%"AFWB=+ Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCurrent KMap:Current KMapsDOSDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.Opened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-02-18 20:00 Last-Translator: Olivier Faucheux Language-Team: LANGUAGE MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 Retour à la ligne :KMaps disponiblesMeilleur type de fichierPlus grand(__Z__)Va dansImpossible de créer le répertoire spécifié Impossible d'entrer dans le répertoire indiqué Ne peut être lu : Impossible d'écrire : AnnulerCandidatsCaractères :R.A.Z.Colonne :Ne peut être lu : ConvertisseursKMap en service :KMaps en serviceDOSLa direction d'écriture du texte sélectionné a été positionnée.Erreur pendant l'écriture de Touche de fonctionFichierType de fichierUn fichier existe déjà. Sauvegarder malgré tout ?Un fichier existe. Utilisez l'option -yes.Fichier :Filtre :Trouver(__Q__)RépertoireRépertoire :Les répertoires ne peuvent être crées que dans le répertoire courantPoliceTaille de police :Infos sur le symbole :Entrée à la sourisRépertoire personnelEntréeEntréeRetour à la ligneLigne :ChercherMACCréer un répertoireNonRien à refaire.Rien à annuler.Ouvert : SortiePSImpression en cours. Quitter malgré tout ? Impression en cours. Continuer ?Impression en cours. Essayez l'option -yesPrévisualisation (__w__)Prévisualisation (__w__)%d page(s) imprimée(s).Impression lancée...Affiche fichiers cachésPlus petit(__A__)Le répertoire indiqué existe déjà. Traits:UnixEncodage inconnu : Changements non enregistrés ! Quitter malgré tout ? Changements non enregistrés ! Ouvrir malgré tout ? Changements non enregistrés ! Continuer ?Changements non enregistrés. Continuer ?Changements non enregistrés. Essayez l'option -yesImpossible de créer le répertoire Ecrit : Oui__D__irection d'écritureAller à(__G__)__O__uvrirIm__p__rimerIm__p__rimer__R__efaireEnregistrer (__S__)Enregistrement (requis) (__S__)Annuler(__U__)find chaîne_de_caractèresgo ligne [colonne]aucune correspondanceopen -yes -e encodage fichierprint -e programmesave -e encodage fichierla chaîne cherchée n'a pu être trouvée.texte ou uri non supporté : utilisation : utilisation : find texteutilisation : go ligne [colonne]Utilisation : open -e utf-8 -yes fichierutilisation : print [-o fichier] [-p imprimante] [-e exécutable][-break] [-hsize taille_police_titre]utilisation : replace original remplaçantutilisation : save -e utf-8 fichier./gui/locale/fr/LC_MESSAGES/messages.po0000644000175000017500000014763710733117072017446 0ustar henrichhenrich# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # Olivier Faucheux (olivier.faucheux@etu.enseeiht.fr), 2001 # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-02-18 20:00\n" "Last-Translator: Olivier Faucheux \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Oui" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Non" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Annuler" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Affiche fichiers cachés" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Répertoire personnel" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Va dans" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Créer un répertoire" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Répertoire" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Fichier" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Type de fichier" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Fichier :" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Répertoire :" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Filtre :" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Meilleur type de fichier" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Impossible de \n" "créer le répertoire\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Les répertoires ne peuvent\n" "être crées que dans le répertoire\n" "courant" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Le répertoire indiqué\n" "existe déjà.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Impossible de créer\n" "le répertoire spécifié\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Impossible d'entrer\n" "dans le répertoire indiqué\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Entrée à la souris" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Traits:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Convertisseurs" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Chercher" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "R.A.Z." # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Candidats" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "aucune correspondance" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Ne peut être lu : " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "KMap en service :" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Caractères :" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "KMaps disponibles" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "Touche de fonction" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "KMaps en service" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Entrée" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Sortie" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Infos sur le symbole :" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Taille de police :" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Ligne :" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Colonne :" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "__O__uvrir" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Trouver(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Aller à(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Enregistrement (requis) (__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Enregistrer (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Im__p__rimer" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Im__p__rimer" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Prévisualisation (__w__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Prévisualisation (__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Annuler(__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "__R__efaire" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "__D__irection d'écriture" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Plus petit(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Plus grand(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Police" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Entrée" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Retour à la ligne" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Changements non enregistrés !\n" "Quitter malgré tout ?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Impression en cours.\n" "Quitter malgré tout ?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Changements non enregistrés !\n" "Ouvrir malgré tout ?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Changements non enregistrés ! Continuer ?" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e encodage fichier" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Un fichier existe déjà.\n" "Sauvegarder malgré tout ?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e encodage fichier" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find chaîne_de_caractères" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go ligne [colonne]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e programme" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Rien à annuler." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Rien à refaire." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "La direction d'écriture du texte sélectionné a été positionnée." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "La direction d'écriture du texte sélectionné a été positionnée." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "utilisation : " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Ne peut être lu : " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Changements non enregistrés. Continuer ?" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Impression en cours. Continuer ?" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Impression lancée..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d page(s) imprimée(s)." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "Utilisation : open -e utf-8 -yes fichier" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Changements non enregistrés. Essayez l'option -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Impression en cours. Essayez l'option -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Encodage inconnu : " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Ouvert : " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr " Retour à la ligne :" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 #, fuzzy msgid " Incomplete Last Line..." msgstr " Dernière ligne complétée." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "utilisation : save -e utf-8 fichier" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Un fichier existe. Utilisez l'option -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Impossible d'écrire : " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Erreur pendant l'écriture de " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Ecrit : " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "utilisation : go ligne [colonne]" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "utilisation : find texte" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "la chaîne cherchée n'a pu être trouvée." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "utilisation : replace original remplaçant" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "texte ou uri non supporté : " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Ne peut être lu : " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "utilisation : print [-o fichier] [-p imprimante] [-e exécutable][-break] [-hsize " "taille_police_titre]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o fichier -p imprimante -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "Insert" #~ msgstr "Insérer" ./gui/locale/ar/0000755000175000017500000000000010724001346013457 5ustar henrichhenrich./gui/locale/ar/LC_MESSAGES/0000755000175000017500000000000010733117072015250 5ustar henrichhenrich./gui/locale/ar/LC_MESSAGES/messages.mo0000644000175000017500000001647010733117072017424 0ustar henrichhenrich`() BO_ n|       # . < J N (W          1 > C N Z l q w           # " %, R d   !     ! @ a  !       # , > G S d n     " P D"`?%%(+TjHP$#$Hm|$*#+ O\Dk ' E<d] S^(v&/> Ta y**A,W3+++<,Y?SMr??L@=  0D \}&"/ ;FS&%?1=_o61C?&42Q%G<9;ZK+]Y3( M.R"F[086T/ ):P J5_U1* =N,S`WO7BL!A#\ X>^VH'$DIE@- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundsearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2001-12-09 23:25+GMT Last-Translator: FULL NAME Language-Team: Arabeyes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ‮السطر الأخير تام.‬‮: عودة السطر‬‮اللوحات الموجودة‬‮أفضل أنواع الملفات‬(__Z__)‮أكبر‬‮إذهب الى مجلد‬‮غير قادر على انشاء‬ ‮المجلد المعين‬ ‮غير قادر على الدخول في‬ ‮المجلد المعين.‬ ‮: لا أستطيع قراءة‬‮: لا أستطيع كتابة‬‮ألغي‬‮مرشحين‬‮: الحروف‬‮امسح‬‮: عمود‬‮: لا أستطيع قراءة‬‮المحولات‬‮: اللوحة المعمول بها‬‮اللوحات الحالية‬‮دوس‬‮مرشد‬‮تم تحديد اتجاه كتابة النص المختار.‬‮: خطئ عند كتابة‬‮المفاتيح الوضيفية‬‮ملف‬‮نوع الملف‬‮هذا الملف موجود.‬ ‮احفظ، رغم ذلك؟‬-yes ‮الملف موجود: استعمل الخيار‬‮: ملف‬‮: فلتر‬(__Q__)‮بحث‬‮مجلد‬‮: مجلد‬‮المجلدات‬ ‮ستنشأ‬ ‮في الدليل الجاري به العمل.‬‮خط‬‮: حجم الخط‬‮: معلومات عن الرموز‬‮اللجوء الى الفأرة‬‮الدليل الشخصي‬‮مدخل‬‮مدخل المفاتيح‬‮عودة السطر‬‮: سطر‬‮انظر فوق‬‮ماك‬‮أنشئ مجلد‬‮لا‬‮لا شيء قابل للإعادة.‬‮لا شيء قابل للإلغاء.‬‮موافق‬‮: تم فتح‬‮المخرج‬PS ‮الطبع جاري.‬ ‮الخروج، رغم ذلك؟‬ ‮الطبع جاري. هل أستمر؟‬-yes ‮الطبع جاري. جرب الخيار‬(__w__)‮معاينة قبل الطبع‬(__w__)‮معاينة قبل الطبع‬‮ صفحة (صفحات) مطبوعة‬%d‮جاري الطبع...‬‮أظهر الملفات المخبأة‬(__A__)‮أصغر‬‮المجلد المطلوب‬ ‮موجود أصلاً.‬ ‮: خطوط‬‮يونكس‬‮: محارف مجهولة‬‮التعديلات غير محفوظة.‬ ‮الخروج، رغم ذلك؟‬ ‮التعديلات غير محفوظة.‬ ‮فتح، رغم ذلك؟‬ ‮التعديلات غير محفوظة. هل استمر؟‬‮التعديلات غير محفوظة. هل أستمر؟‬-yes ‮جرب الخيار‬ ‮التعديلات غير محفوظة.‬‮لن يتم إنشاء‬ ‮المجلد المعين‬ ‮: تمت كتابة‬‮نعم‬(__D__)‮اتجاه النص‬(__G__)‮إذهب الى‬(__O__)‮فتح‬(__P__)‮طباعة‬(__P__)‮جاري الطبع‬(__R__)‮إعادة‬(__S__)‮حفظ‬‮(ضروري)‬ (__S__)‮حفظ‬(__U__)‮إلغاء‬‮ابحث عن السلسلة‬‮إذهب الى السطر] العمود[‬‮غير موجود‬‮لم يتم العثور على السلسلة المفقودة.‬‮: النص-iru غير مدعوم‬‮استعمال‬:‮استعمال: اجد النص‬‮استعمال: إذهب الى السطر ]العمود[‬open -e utf-8 -yes filename ‮استعمال:‬print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]‮ استعمال:‬‮استعمال: اعد الجديد الأصلي‬save -e utf-8 -yes filename ‮استعمال:‬./gui/locale/ar/LC_MESSAGES/messages.po0000644000175000017500000015146110733117072017427 0ustar henrichhenrich# Yudit, unicode editor‮يودت، كاتب يونكود ‬ # Copyright (C) YEAR Free Software Foundation, Inc. # Mohamed kebdani , 2001. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2001-12-09 23:25+GMT\n" "Last-Translator: FULL NAME \n" "Language-Team: Arabeyes \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "‮نعم‬" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "‮لا‬" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "‮موافق‬" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "‮ألغي‬" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "‮أظهر الملفات المخبأة‬" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "‮الدليل الشخصي‬" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "‮إذهب الى مجلد‬" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "‮أنشئ مجلد‬" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "‮مجلد‬" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "‮ملف‬" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "‮نوع الملف‬" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "‮: ملف‬" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "‮: مجلد‬" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "‮: فلتر‬" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "‮أفضل أنواع الملفات‬" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "‮لن يتم إنشاء‬\n" "‮المجلد المعين‬\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "‮المجلدات‬ ‮ستنشأ‬\n" "‮في الدليل الجاري به العمل.‬" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "‮المجلد المطلوب‬\n" "‮موجود أصلاً.‬\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "‮غير قادر على انشاء‬\n" "‮المجلد المعين‬\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "‮غير قادر على الدخول في‬\n" "‮المجلد المعين.‬\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "‮اللجوء الى الفأرة‬" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "‮: خطوط‬" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "‮المحولات‬" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "‮انظر فوق‬" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "‮امسح‬" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "‮مرشد‬" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "‮مرشحين‬" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "‮غير موجود‬" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "‮: لا أستطيع قراءة‬" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "‮: اللوحة المعمول بها‬" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "‮: الحروف‬" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "‮اللوحات الموجودة‬" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "‮المفاتيح الوضيفية‬" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "‮اللوحات الحالية‬" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "‮مدخل المفاتيح‬" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "‮المخرج‬" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "‮: معلومات عن الرموز‬" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "‮: حجم الخط‬" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "‮: سطر‬" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "‮: عمود‬" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "‮يونكس‬" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "‮دوس‬" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "‮ماك‬" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "(__O__)‮فتح‬" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "(__Q__)‮بحث‬" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "(__G__)‮إذهب الى‬" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "‮(ضروري)‬ (__S__)‮حفظ‬" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "(__S__)‮حفظ‬" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "(__P__)‮جاري الطبع‬" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "(__P__)‮طباعة‬" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "(__w__)‮معاينة قبل الطبع‬" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "(__w__)‮معاينة قبل الطبع‬" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "(__U__)‮إلغاء‬" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "(__R__)‮إعادة‬" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "(__D__)‮اتجاه النص‬" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "(__A__)‮أصغر‬" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "(__Z__)‮أكبر‬" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "‮خط‬" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "‮مدخل‬" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "‮عودة السطر‬" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "‮التعديلات غير محفوظة.‬\n" "‮الخروج، رغم ذلك؟‬\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" " ‮الطبع جاري.‬\n" "‮الخروج، رغم ذلك؟‬\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "‮التعديلات غير محفوظة.‬\n" "‮فتح، رغم ذلك؟‬\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "‮التعديلات غير محفوظة. هل استمر؟‬" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "‮هذا الملف موجود.‬ \n" "‮احفظ، رغم ذلك؟‬" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "‮ابحث عن السلسلة‬" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "‮إذهب الى السطر] العمود[‬" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "‮لا شيء قابل للإلغاء.‬" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "‮لا شيء قابل للإعادة.‬" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "‮تم تحديد اتجاه كتابة النص المختار.‬" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "‮تم تحديد اتجاه كتابة النص المختار.‬" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "‮استعمال‬:" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "‮: لا أستطيع قراءة‬" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "‮التعديلات غير محفوظة. هل أستمر؟‬" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "‮الطبع جاري. هل أستمر؟‬" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "‮جاري الطبع...‬" # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "‮ صفحة (صفحات) مطبوعة‬%d" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "open -e utf-8 -yes filename ‮استعمال:‬" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "-yes ‮جرب الخيار‬ ‮التعديلات غير محفوظة.‬" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "-yes ‮الطبع جاري. جرب الخيار‬" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "‮: محارف مجهولة‬" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "‮: تم فتح‬" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "‮: عودة السطر‬" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "‮السطر الأخير تام.‬" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "save -e utf-8 -yes filename ‮استعمال:‬" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "-yes ‮الملف موجود: استعمل الخيار‬" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "‮: لا أستطيع كتابة‬" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "‮: خطئ عند كتابة‬" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "‮: تمت كتابة‬" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "‮استعمال: إذهب الى السطر ]العمود[‬" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "‮استعمال: اجد النص‬" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "‮لم يتم العثور على السلسلة المفقودة.‬" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "‮استعمال: اعد الجديد الأصلي‬" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "‮: النص-iru غير مدعوم‬" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "‮: لا أستطيع قراءة‬" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]‮ استعمال:‬" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/cs/0000755000175000017500000000000010724001346013462 5ustar henrichhenrich./gui/locale/cs/LC_MESSAGES/0000755000175000017500000000000010733117072015253 5ustar henrichhenrich./gui/locale/cs/LC_MESSAGES/messages.mo0000644000175000017500000001475610733117072017434 0ustar henrichhenrichh\    " C d s        + (> g          1 A F Q ] o t z           # " %/ U g   !     $ C d !       4=FXa u '"@Pc"T"Hk~  &1 9D KU^ s #$/ DO V*b#   7" 3 ANTZn $)  ":!Y{%!',*D+o%&) /:>#]   +: LVv! $cB"$IQS *YLPD 6$?.Na[c\E2@ Z%4d/+R),8`;A U:="#KVGbf '_W3T&^C]51M!907(eJ>O X<HBFhg- Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been re-set.Direction of selected text has been set.Document __T__ext EmbeddingError while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__E__mbedding Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndo__Y__ield Embeddingfind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.7.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2003-02-03 08:25+0100 Last-Translator: Luboš Staněk Language-Team: čeština MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Generator: KBabel 0.9.6 Neukončená poslední řádka...Zalomení řádku:Dostupné KMapyNejvhodnější typ souboruVětší(__Z__)Do adresářeNelze vytvořit daný adresář Nelze přejít do daného adresáře. Nelze číst: Nelze zapisovat: ZrušitKandidátiZnaky:VyčistitSloupec:Příkaz nenalezen: PřevodníkyNelze uložit nastaveníAktuální KMapa:Aktuální KMapyDOSSměrovanýSměr vybraného textu byl obnoven.Směr vybraného textu byl nastaven.Směr __T__extu dokumentuChyba při zápisu: F-klávesaSouborTyp souboruSoubor již existuje. Chcete jej přepsat?Soubor existuje. Zkuste volbu -yes.Soubor:Filtr:Najít(__Q__)AdresářAdresář:Adresáře lze vytvářet jen v aktuálním adresáři.PísmoVelikost písma:Info o glyfu:Psaní rukouDomůVstupVstup z klávesniceZalomení řádkuŘádek:VyhledáníMACVytvořit adresářNeNeexistuje nic, co by šlo opakovat!Neexistuje nic, co by šlo vrátit zpět!OKOtevřen:VýstupPSProbíhá tisk. Přesto skončit? Probíhá tisk. Enter končí!Probíhá tisk. Zkuste volbu -yesNáhled tisku(__w__)Náhled tisku (probíhá tisk)(__w__)Vytištěno stránek %d.Probíhá tisk...Zobrazit skrytéMenší(__A__)Daný adresář již existuje. Čar:UnixNeznámé kódování: Změny nejsou uloženy. Přesto skončit? Změny nejsou uloženy. Přesto otevřít? Změny nejsou uloženy. Enter ruší!Změny nejsou uloženy. Enter končí!Změny nejsou uloženy. Zkuste volbu -yesNevytvoří daný adresář Zapsáno: AnoPředefinování směru(__D__)Předefinování vkládání(__E__)Jít na(__G__)__O__tevřítTisk(__P__)Tisk (probíhá tisk)(__P__)Opakovat(__R__)Uložit(__S__)Uložit (je třeba)(__S__)Zpět(__U__)Přepnout vkládání(__Y__)find řetězecgo line [sloupec]nenalezenopen -yes -e soubor kódováníprint -e programsave -e soubor kódováníhledaný řetězec nebyl nalezen.nepodporovaný text/uri: použití: použití: find textpoužití: go line [sloupec] použití: open -e utf-8 -yes souborpoužití: print [-o soubor] [-p tiskárna] [-e spustit] [-break] [-hsize velikost-fontu-záhlaví]použití: replace původní novýpoužití: save -e utf-8 -yes soubor./gui/locale/cs/LC_MESSAGES/messages.po0000644000175000017500000014703510733117072017434 0ustar henrichhenrich# Czech messages for Yudit Unicode Editor # Copyright (C) 2003 Free Software Foundation, Inc. # Copyright (C) 2002 Luboš Staněk # Luboš Staněk # # msgid "" msgstr "" "Project-Id-Version: yudit 2.7.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2003-02-03 08:25+0100\n" "Last-Translator: Luboš Staněk \n" "Language-Team: čeština \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 0.9.6\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "Ano" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "Ne" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "OK" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "Zrušit" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "Zobrazit skryté" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "Domů" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "Do adresáře" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "Vytvořit adresář" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "Adresář" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "Soubor" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "Typ souboru" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "Soubor:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "Adresář:" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "Filtr:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "Nejvhodnější typ souboru" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "Nevytvoří\n" "daný adresář\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "Adresáře lze vytvářet\n" "jen v aktuálním adresáři." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "Daný adresář\n" "již existuje.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "Nelze vytvořit\n" "daný adresář\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "Nelze přejít do\n" "daného adresáře.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "Psaní rukou" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "Čar:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "Převodníky" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "Vyhledání" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "Vyčistit" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "Směrovaný" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "Kandidáti" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "nenalezen" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "Nelze číst: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "Aktuální KMapa:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "Znaky:" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "Dostupné KMapy" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "F-klávesa" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "Aktuální KMapy" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "Vstup z klávesnice" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "Výstup" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "Info o glyfu:" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "Velikost písma:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "Řádek:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "Sloupec:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "Unix" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "DOS" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "MAC" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "__O__tevřít" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "Najít(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "Jít na(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "Uložit (je třeba)(__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "Uložit(__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "Tisk (probíhá tisk)(__P__)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "Tisk(__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "Náhled tisku (probíhá tisk)(__w__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "Náhled tisku(__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "Zpět(__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "Opakovat(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "Směr __T__extu dokumentu" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "Předefinování směru(__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "Předefinování vkládání(__E__)" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "Přepnout vkládání(__Y__)" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "Menší(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "Větší(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "Písmo" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "Vstup" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "Zalomení řádku" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "Změny nejsou uloženy.\n" "Přesto skončit?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "Probíhá tisk.\n" "Přesto skončit?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "Změny nejsou uloženy.\n" "Přesto otevřít?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "Změny nejsou uloženy. Enter ruší!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e soubor kódování" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "Soubor již existuje.\n" "Chcete jej přepsat?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e soubor kódování" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find řetězec" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go line [sloupec]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e program" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "Neexistuje nic, co by šlo vrátit zpět!" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "Neexistuje nic, co by šlo opakovat!" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "Směr vybraného textu byl nastaven." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "Směr vybraného textu byl obnoven." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "použití: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "Nelze číst: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "Změny nejsou uloženy. Enter končí!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "Probíhá tisk. Enter končí!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "Probíhá tisk..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "Vytištěno stránek %d." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "použití: open -e utf-8 -yes soubor" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "Změny nejsou uloženy. Zkuste volbu -yes" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "Probíhá tisk. Zkuste volbu -yes" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "Neznámé kódování: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "Otevřen:" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "Zalomení řádku:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr " Neukončená poslední řádka..." # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "použití: save -e utf-8 -yes soubor" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "Soubor existuje. Zkuste volbu -yes." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "Nelze zapisovat: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "Chyba při zápisu: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "Zapsáno: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "použití: go line [sloupec] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "použití: find text" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "hledaný řetězec nebyl nalezen." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "použití: replace původní nový" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "Nelze uložit nastavení" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "nepodporovaný text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "Příkaz nenalezen: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" "použití: print [-o soubor] [-p tiskárna] [-e spustit] [-break] [-hsize velikost-fontu-záhlaví]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o soubor -p tiskárna -break" ./gui/locale/am/0000755000175000017500000000000010724001346013452 5ustar henrichhenrich./gui/locale/am/LC_MESSAGES/0000755000175000017500000000000010733117072015243 5ustar henrichhenrich./gui/locale/am/LC_MESSAGES/messages.mo0000644000175000017500000001713610733117072017417 0ustar henrichhenrichd<\     + ; B M Y _ g {    (      8 V \ d p w 1           1 B E N U #X "| %     # !2 T ] b u   ! 5 = A X b k u         #<S[l"P"J82#  '714i      # B5O B=P akBH  += DQN#  "#0Tk{3=& :DXG]a+`W$  @4X *>ACVCG-&Te!l=$+)C(m&-(./W$)99#]<9$ZbU H;_A>cV+/!GS<6.X&D W=PJ*#[a?^4N%\d0()]5E8 K,`3BO2":IQCF @$9'T- R1L7M Y Incomplete Last Line... Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: yudit 2.6.2 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-10-03 19:17+EDT Last-Translator: Ge'ez Frontier Foundation Language-Team: Amharic MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit የመጨረሻው መስመር ተጠናቋል።መለያ መስመር፦የሚገኘው KMaps፦ጥሩው የፋይል ዓይነትተለቅ ያለ (__Z__) CD ወደመፍጠር አይቻልም የተጠቀሰው ዶሴ መሄድ አይቻልም የተጠቀሰው ዶሴ ማንበብ አልቻለም፦ መጻፍ አልተቻለም፦ ተወውእጩዎችፊደሎች፦ሰርዝዐምድ፦ማዘዣው አልተገኘም፦ ለዋጮችምርጫዎችን ማስቀመጥ አልተቻለምአሁን ያለው KMap፦አሁን ያለው KMapsዶስየተመራየተመረጠው ጽሑፍ አቅጣጫ ተስተካክሏል።በሚጻፍበት ወቅት ስህተት ተከስቷል፦ ኤፍ-ቁልፍፋይልየፋይሉ ዓይነትፋይሉ በፊትም ነበር. ለማንኛውም ይቀመጥ?ፋይሉ በፊትም ነበር። የ-yes ምርጫን ተጠቀሙ።ፋይል፦አጣራ፦ፈልግ (__Q__)ዶሴዶሴ፦ዶሴዎች ሊፈጠሩ ይችላሉ አሁን ባለው መመሪያ ብቻ።የፊደል ቅርጽየፊደል ቅርጽ መጠን፦የGlyph መረጃ፦የእጅ ጽሑፍ አስገባመጀመሪያአስገባ የሚገባው ዋናው ነገርመለያ መስመርመስመር፦ተመልከቱማክዶሴ አዘጋጅአይእንደገና የሚሰራ ምንም የለም።ወደ ነበረበት የሚመለስ ምንም የለም።እሺተከፍቷል፦ ውጤትPSበእንጥልጥል ያለ የሕትመት ተግባር። ለማንኛውም ውጣ? በእንጥልጥል ያለ የሕትመት ተግባር። መውጫዎችን አስገባ!በእንጥልጥል ያለ የሕትመት ተግባር። የ-yes ምርጫን ይሞክሩትቅድመ እይታውን አትም (__W__)ቅድመ እይታውን አትም (__W__) (በእንጥልጥል ያለ ተግባር)የታተሙ የ%d ገጽ(ጾች)።በማተም ላይ...የተደበቀውን አሳይአነስተኛ (__A__)የተጠቀሰው ዶሴ በፊትም ይገኛል ሠረዞች፦ዩኒክስያልታወቀ የሆሄያት ኮድ፦ ያልተቀመጡ ለውጦች። ለማንኛውም ውጣ? ያልተቀመጡ ለውጦች። ለማንኛውም ክፍት? ያልተቀመጡ ለውጦች። የተተውትን አስገባ!ያልተቀመጡ ለውጦች። መውጫዎችን አስገባ!ያልተቀመጡ ለውጦች። የ-yes ምርጫን ይሞክሩትአይፈጥርም የተጠቀሰው ዶሴ የተፃፈ፦ አዎየጽሑፍ አቅጣጫ (__D__)ወደ ሂድ (__G__)ክፈት (__O__)አትም (__P__)አትም (__P__) (በእንጥልጥል ያለ ተግባር)እንደገና አድርግ (__R__)አስቀምጥ (__S__)አስቀምጥ (__S__) (አስፈላጊ)ወደ ነበረበት መልስ (__U__)ሐረጉን ፈልግወደ መስመር [ዐምድ] ሂድአልተገኘምopen -yes -e የሆሄያት ኮድ ፋይልprint -e ፕሮግራምsave -e የሆሄያት ኮድ ፋይልየሐረጉን አሰሳ አልተገኘም።ያልተደገፈ ጽሁፉ/uri፦ አጠቃቀም፦አጠቃቀም፦ ጽሑፉን ፈልግአጠቃቀም፦ ወደ መስመር [ዐምድ] ሂዱአጠቃቀም፦ open -e utf-8 -yes የፋይል ስምአጠቃቀም፦ print [-o ፊይል] [-p ማተሚያ] [-e exec] [-break] [-hsize የአርዕስቱ-ፊደል-ዓይነት-መጠን]አጠቃቀም፦ የመጀመሪያው አዲሱ ይተካአጠቃቀም፦ save -e utf-8 -yes የፋይል ስም./gui/locale/am/LC_MESSAGES/messages.po0000644000175000017500000015211110733117072017413 0ustar henrichhenrich# Translations into the Amharic Language. # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the yudit package. # Ge'ez Frontier Foundation , 2002. # msgid "" msgstr "" "Project-Id-Version: yudit 2.6.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-10-03 19:17+EDT\n" "Last-Translator: Ge'ez Frontier Foundation \n" "Language-Team: Amharic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "አዎ" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "አይ" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "እሺ" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "ተወው" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "የተደበቀውን አሳይ" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "መጀመሪያ" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "CD ወደ" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "ዶሴ አዘጋጅ" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "ዶሴ" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "ፋይል" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "የፋይሉ ዓይነት" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "ፋይል፦" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "ዶሴ፦" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "አጣራ፦" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "ጥሩው የፋይል ዓይነት" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "አይፈጥርም\n" "የተጠቀሰው ዶሴ\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "ዶሴዎች ሊፈጠሩ ይችላሉ\n" "አሁን ባለው መመሪያ ብቻ።" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "የተጠቀሰው ዶሴ\n" "በፊትም ይገኛል\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "መፍጠር አይቻልም\n" "የተጠቀሰው ዶሴ\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "መሄድ አይቻልም\n" "የተጠቀሰው ዶሴ\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "የእጅ ጽሑፍ አስገባ" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "ሠረዞች፦" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "ለዋጮች" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "ተመልከቱ" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "ሰርዝ" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "የተመራ" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "እጩዎች" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "አልተገኘም" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "ማንበብ አልቻለም፦ " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "አሁን ያለው KMap፦" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "ፊደሎች፦" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "የሚገኘው KMaps፦" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "ኤፍ-ቁልፍ" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "አሁን ያለው KMaps" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "የሚገባው ዋናው ነገር" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "ውጤት" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "የGlyph መረጃ፦" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "የፊደል ቅርጽ መጠን፦" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "መስመር፦" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "ዐምድ፦" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "ዩኒክስ" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "ዶስ" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "ማክ" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "PS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "ክፈት (__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "ፈልግ (__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "ወደ ሂድ (__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "አስቀምጥ (__S__) (አስፈላጊ)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "አስቀምጥ (__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "አትም (__P__) (በእንጥልጥል ያለ ተግባር)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "አትም (__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "ቅድመ እይታውን አትም (__W__) (በእንጥልጥል ያለ ተግባር)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "ቅድመ እይታውን አትም (__W__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "ወደ ነበረበት መልስ (__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "እንደገና አድርግ (__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "የጽሑፍ አቅጣጫ (__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "አነስተኛ (__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "ተለቅ ያለ (__Z__) " # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "የፊደል ቅርጽ" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "አስገባ " # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "መለያ መስመር" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "ያልተቀመጡ ለውጦች።\n" "ለማንኛውም ውጣ?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "በእንጥልጥል ያለ የሕትመት ተግባር።\n" "ለማንኛውም ውጣ?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "ያልተቀመጡ ለውጦች።\n" "ለማንኛውም ክፍት?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "ያልተቀመጡ ለውጦች። የተተውትን አስገባ!" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e የሆሄያት ኮድ ፋይል" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "ፋይሉ በፊትም ነበር.\n" "ለማንኛውም ይቀመጥ?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e የሆሄያት ኮድ ፋይል" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "ሐረጉን ፈልግ" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "ወደ መስመር [ዐምድ] ሂድ" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e ፕሮግራም" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "ወደ ነበረበት የሚመለስ ምንም የለም።" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "እንደገና የሚሰራ ምንም የለም።" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "የተመረጠው ጽሑፍ አቅጣጫ ተስተካክሏል።" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "የተመረጠው ጽሑፍ አቅጣጫ ተስተካክሏል።" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "አጠቃቀም፦" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "ማንበብ አልቻለም፦ " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "ያልተቀመጡ ለውጦች። መውጫዎችን አስገባ!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "በእንጥልጥል ያለ የሕትመት ተግባር። መውጫዎችን አስገባ!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "በማተም ላይ..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "የታተሙ የ%d ገጽ(ጾች)።" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "አጠቃቀም፦ open -e utf-8 -yes የፋይል ስም" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "ያልተቀመጡ ለውጦች። የ-yes ምርጫን ይሞክሩት" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "በእንጥልጥል ያለ የሕትመት ተግባር። የ-yes ምርጫን ይሞክሩት" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "ያልታወቀ የሆሄያት ኮድ፦ " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "ተከፍቷል፦ " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "መለያ መስመር፦" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "የመጨረሻው መስመር ተጠናቋል።" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "አጠቃቀም፦ save -e utf-8 -yes የፋይል ስም" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "ፋይሉ በፊትም ነበር። የ-yes ምርጫን ተጠቀሙ።" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "መጻፍ አልተቻለም፦ " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "በሚጻፍበት ወቅት ስህተት ተከስቷል፦ " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "የተፃፈ፦ " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "አጠቃቀም፦ ወደ መስመር [ዐምድ] ሂዱ" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "አጠቃቀም፦ ጽሑፉን ፈልግ" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "የሐረጉን አሰሳ አልተገኘም።" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "አጠቃቀም፦ የመጀመሪያው አዲሱ ይተካ" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "ምርጫዎችን ማስቀመጥ አልተቻለም" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "ያልተደገፈ ጽሁፉ/uri፦ " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "ማዘዣው አልተገኘም፦ " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "አጠቃቀም፦ print [-o ፊይል] [-p ማተሚያ] [-e exec] [-break] [-hsize የአርዕስቱ-ፊደል-ዓይነት-መጠን]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o ፋይል -p ማተሚያ -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/ko/0000755000175000017500000000000010724001346013466 5ustar henrichhenrich./gui/locale/ko/LC_MESSAGES/0000755000175000017500000000000010733117073015260 5ustar henrichhenrich./gui/locale/ko/LC_MESSAGES/messages.mo0000644000175000017500000001522410733117073017430 0ustar henrichhenrichc4Lp q~      $ 0 6 > R ] x   (      - 3 ; G N 1V             % , #/ "S %v     ! + 4 9 L k  !    / 9 B L d m v       *2C"\P"9 IUi 06#&,S Zh o} ,   47 R]d=u>   ?$dkz   $!>E ao,r?5'1Y v / 2D"OgeVLt6  / =Ke z  !*L kw(a55(kYa G:^@=bU*. FR; 5-W%CV<OI)"Z`>]3M$[c/'(\4D7 J+_2AN1!9HPTE?#8&SB, Q0K6L X Line Break:Available KMapsBest File TypeBigger(__Z__)CD toCan not create specified folder Can not go to specified folder. Can not read: Can not write: CancelCandidatesCharacters:ClearColumn:Command not found: ConvertersCould not save preferencesCurrent KMap:Current KMapsDOSDirectedDirection of selected text has been set.Error while writing: F-KeyFileFile TypeFile exists. Save anyway?File exists. Use -yes option.File:Filter:Find(__Q__)FolderFolder:Folders can be created in current directory only.FontFont Size:Glyph Info:Handwriting InputHomeInputKey InputLine BreakLine:Look-upMACMake FolderNoNothing to redo.Nothing to undo.OKOpened: OutputPSPending printing job. Exit anyway? Pending printing job. Enter quits!Pending printing job. Try -yes optionPrint Previe__w__Print Previe__w__ (pending job)Printed %d page(s).Printing...Show HiddenSmaller(__A__)Specified folder already exists. Strokes:UnixUnknown encoding: Unsaved changes. Exit anyway? Unsaved changes. Open anyway? Unsaved changes. Enter discards!Unsaved changes. Enter quits!Unsaved changes. Try -yes optionWill not create specified folder Wrote: Yes__D__irection Override__G__o To__O__pen__P__rint__P__rint (pending job)__R__edo__S__ave__S__ave (needed)__U__ndofind stringgo line [column]not foundopen -yes -e encoding fileprint -e programsave -e encoding filesearch string not found.unsupported text/uri: usage: usage: find textusage: go line [column] usage: open -e utf-8 -yes filenameusage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]usage: replace original newusage: save -e utf-8 -yes filenameProject-Id-Version: 2.6 Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: 2002-04-30 18:41-0400 Last-Translator: Jungshik Shin Language-Team: Jungshik Shin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bt 줄 바꿈:쓸 수 있는 KMap가장 좋은 인코딩크게(__Z__)자료방 이동지정한 자료방을 만들 수 없습니다. 지정한 자료방으로 이동할 수 없습니다. 다음을 읽을 수 없습니다: 다음에 저장할 수 없습니다: 취소후보 글자글자새로 시작칸:찾을 수 없는 명령: 해석기선택 사항을 저장할 수 없습니다.현재 KMap:현재 KMap도스방향 고려선택한 부분의 방향성을 설정했습니다.저장 중 오류 발생: 기능 키문서문서 인코딩같은 이름의 문서가 존재합니다. 덮어 쓸까요?문서가 이미 존재합니다. -yes 옵션을 쓰십시오.문서:필터:찾기(__Q__)자료방자료방자료방은 현재 자료방에서만 만들 수 있습니다.글꼴글꼴 크기:글자 정보: 마우스로 그려서 입력홈입력키 입력줄 바꿈줄:찾기맥자료방 만들기아니오재실행할 명령이 없습니다.취소할 명령이 없습니다.확인다음을 열었습니다: 대응 글자FS인쇄중입니다. 그래도 끝낼까요? 인쇄 중입니다. Enter를 누르면 무조건 끝냅니다!인쇄 중입니다. -yes 옵션을 써 보십시오.인쇄 미리 보기(__w__)인쇄 미리 보기(인쇄 중)(__w__)%d쪽을 인쇄했습니다.인쇄 중...숨은 파일 보여주기작게(__A__)지정한 자료방은 이미 존재합니다. 획수:유닉스다음은 지원하지 않는 인코딩입니다: 저장하지 않은 내용이 있습니다. 그래도 끝낼까요? 저장하지 않은 내용이 있습니다. 그래도 새 문서를 열까요? 저장하지 않은 내용이 있습니다. Enter를 누르면 바꾼 내용을 잃어 버립니다 !저장하지 않은 내용이 있습니다. Enter를 누르면 무조건 끝냅니다!저장하지 않은 내용이 있습니다. -yes 옵션을 써 보십시오.지정한 자료방을 만들지 않을 것입니다. 저장 완료: 예방향(__D__)커서 이동(__G__)열기(__O__)인쇄(__P__)인쇄(인쇄 중)(__P__)다시 실행(__R__)저장(__S__)저장(필요)(__S__)실행 취소(__U__)find 문자열go 줄 [칸]후보 없음open -yes -e 인코딩 문서print -e 프로그램save -e 인코딩 문서찾는 문자열이 없습니다.지원하지 않는 text/uri: 사용법: 사용법: find 문자열사용법: go 줄 [칸] 사용법: open -e 인코딩 -yes 문서사용법: print [-o 문서] [-p 프린터] [-e 명령] [-break] [-hsize 머릿글 글꼴 크기]사용법: replace `바꿀 문자열' `새 문자열'사용법: save -e 인코딩 -yes 문서./gui/locale/ko/LC_MESSAGES/messages.po0000644000175000017500000015001410733117073017430 0ustar henrichhenrich# Yudit unicode editor # Gaspar Sinai # Gaspar Sinai 2001-01-09 msgid "" msgstr "" "Project-Id-Version: 2.6\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: 2002-04-30 18:41-0400\n" "Last-Translator: Jungshik Shin \n" "Language-Team: Jungshik Shin \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bt\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "예" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "아니오" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "확인" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "취소" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "숨은 파일 보여주기" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "홈" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "자료방 이동" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "자료방 만들기" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "자료방" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "문서" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "문서 인코딩" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "문서:" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "자료방" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "필터:" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "가장 좋은 인코딩" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" "지정한 자료방을\n" "만들지 않을 것입니다.\n" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" "자료방은 현재 자료방에서만\n" "만들 수 있습니다." # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" "지정한 자료방은\n" "이미 존재합니다.\n" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" "지정한 자료방을\n" "만들 수 없습니다.\n" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" "지정한 자료방으로\n" "이동할 수 없습니다.\n" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "마우스로 그려서 입력" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "획수:" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "해석기" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "찾기" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "새로 시작" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "방향 고려" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "후보 글자" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "후보 없음" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "다음을 읽을 수 없습니다: " # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "현재 KMap:" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "글자" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "쓸 수 있는 KMap" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "기능 키" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "현재 KMap" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "키 입력" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "대응 글자" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "글자 정보: " # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "글꼴 크기:" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "줄:" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "칸:" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "유닉스" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "도스" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "맥" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "FS" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "열기(__O__)" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "찾기(__Q__)" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "커서 이동(__G__)" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "저장(필요)(__S__)" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "저장(__S__)" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "인쇄(인쇄 중)(__P__)" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "인쇄(__P__)" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "인쇄 미리 보기(인쇄 중)(__w__)" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "인쇄 미리 보기(__w__)" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "실행 취소(__U__)" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "다시 실행(__R__)" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "방향(__D__)" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "작게(__A__)" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "크게(__Z__)" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "글꼴" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "입력" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "줄 바꿈" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" "저장하지 않은 내용이 있습니다.\n" "그래도 끝낼까요?\n" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" "인쇄중입니다.\n" "그래도 끝낼까요?\n" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" "저장하지 않은 내용이 있습니다.\n" "그래도 새 문서를 열까요?\n" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "저장하지 않은 내용이 있습니다. Enter를 누르면 바꾼 내용을 잃어 버립니다 !" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "open -yes -e 인코딩 문서" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" "같은 이름의 문서가 존재합니다.\n" "덮어 쓸까요?" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "save -e 인코딩 문서" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "find 문자열" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "go 줄 [칸]" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "print -e 프로그램" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "취소할 명령이 없습니다." # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "재실행할 명령이 없습니다." # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "선택한 부분의 방향성을 설정했습니다." # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 #, fuzzy msgid "Direction of selected text has been re-set." msgstr "선택한 부분의 방향성을 설정했습니다." # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "사용법: " # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 #, fuzzy msgid "Can not set syntax: " msgstr "다음을 읽을 수 없습니다: " # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "저장하지 않은 내용이 있습니다. Enter를 누르면 무조건 끝냅니다!" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "인쇄 중입니다. Enter를 누르면 무조건 끝냅니다!" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "인쇄 중..." # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "%d쪽을 인쇄했습니다." # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "사용법: open -e 인코딩 -yes 문서" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "저장하지 않은 내용이 있습니다. -yes 옵션을 써 보십시오." # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "인쇄 중입니다. -yes 옵션을 써 보십시오." # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "다음은 지원하지 않는 인코딩입니다: " # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "다음을 열었습니다: " # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "줄 바꿈:" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "사용법: save -e 인코딩 -yes 문서" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "문서가 이미 존재합니다. -yes 옵션을 쓰십시오." # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "다음에 저장할 수 없습니다: " # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "저장 중 오류 발생: " # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "저장 완료: " # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "사용법: go 줄 [칸] " # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "사용법: find 문자열" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "찾는 문자열이 없습니다." # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "사용법: replace `바꿀 문자열' `새 문자열'" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "선택 사항을 저장할 수 없습니다." # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "지원하지 않는 text/uri: " # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "찾을 수 없는 명령: " # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "사용법: print [-o 문서] [-p 프린터] [-e 명령] [-break] [-hsize 머릿글 글꼴 크기]" # # # # # # # # # # # #~ msgid "print -o file -p printer -break" #~ msgstr "print -o 문서 -p 프린터 -break" # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #~ msgid "LS" #~ msgstr "LS" ./gui/locale/en/0000755000175000017500000000000010724001346013457 5ustar henrichhenrich./gui/locale/en/LC_MESSAGES/0000755000175000017500000000000010733117072015250 5ustar henrichhenrich./gui/locale/en/LC_MESSAGES/messages.mo0000644000175000017500000000056010733117072017415 0ustar henrichhenrich$,869Project-Id-Version: PACKAGE VERSION Report-Msgid-Bugs-To: POT-Creation-Date: 2007-12-22 14:18+0900 PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE Last-Translator: FULL NAME Language-Team: LANGUAGE MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: utf-8 ./gui/locale/en/LC_MESSAGES/messages.po0000644000175000017500000014217110733117072017425 0ustar henrichhenrich# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: utf-8\n" # # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 # File: ../swidget/SDialog.cpp, line: 33 # File: ../swidget/SDialog.cpp, line: 72 msgid "Yes" msgstr "" # # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 # File: ../swidget/SDialog.cpp, line: 36 # File: ../swidget/SDialog.cpp, line: 59 # File: ../swidget/SDialog.cpp, line: 63 # File: ../swidget/SDialog.cpp, line: 67 # File: ../swidget/SDialog.cpp, line: 71 msgid "No" msgstr "" # # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 # File: ../swidget/SDialog.cpp, line: 60 # File: ../swidget/SDialog.cpp, line: 64 # File: ../swidget/SDialog.cpp, line: 68 # File: ../swidget/SDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 57 # File: SHighlightD.cpp, line: 44 msgid "OK" msgstr "" # # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 # File: ../swidget/SDialog.cpp, line: 75 # File: ../swidget/SFileDialog.cpp, line: 69 # File: SHighlightD.cpp, line: 48 msgid "Cancel" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 # File: ../swidget/SFileDialog.cpp, line: 42 msgid "Show Hidden" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 # File: ../swidget/SFileDialog.cpp, line: 47 msgid "Home" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 # File: ../swidget/SFileDialog.cpp, line: 61 msgid "CD to" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 # File: ../swidget/SFileDialog.cpp, line: 65 msgid "Make Folder" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 # File: ../swidget/SFileDialog.cpp, line: 76 msgid "Folder" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 # File: ../swidget/SFileDialog.cpp, line: 79 msgid "File" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 # File: ../swidget/SFileDialog.cpp, line: 82 msgid "File Type" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 # File: ../swidget/SFileDialog.cpp, line: 87 msgid "File:" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 # File: ../swidget/SFileDialog.cpp, line: 95 # File: SHighlightD.cpp, line: 64 msgid "Folder:" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 # File: ../swidget/SFileDialog.cpp, line: 100 msgid "Filter:" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 # File: ../swidget/SFileDialog.cpp, line: 110 msgid "Best File Type" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 # File: ../swidget/SFileDialog.cpp, line: 508 msgid "" "Will not create\n" "specified folder\n" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 # File: ../swidget/SFileDialog.cpp, line: 515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 # File: ../swidget/SFileDialog.cpp, line: 522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 # File: ../swidget/SFileDialog.cpp, line: 533 msgid "" "Can not create\n" "specified folder\n" msgstr "" # # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 # File: ../swidget/SFileDialog.cpp, line: 549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 # File: ../swidget/SFreeHand.cpp, line: 46 msgid "Handwriting Input" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 # File: ../swidget/SFreeHand.cpp, line: 50 msgid "Strokes:" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 # File: ../swidget/SFreeHand.cpp, line: 59 msgid "Converters" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 # File: ../swidget/SFreeHand.cpp, line: 69 msgid "Look-up" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 # File: ../swidget/SFreeHand.cpp, line: 75 msgid "Clear" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 # File: ../swidget/SFreeHand.cpp, line: 82 msgid "Directed" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 # File: ../swidget/SFreeHand.cpp, line: 88 msgid "Candidates" msgstr "" # # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 # File: ../swidget/SFreeHand.cpp, line: 148 msgid "not found" msgstr "" # # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 # File: SHighlightD.cpp, line: 55 msgid "Category" msgstr "" # # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 # File: SHighlightD.cpp, line: 59 msgid "Highlighting" msgstr "" # # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 # File: SHighlightD.cpp, line: 69 msgid "Remark:" msgstr "" # # File: SYudit.cpp, line: 1327 # File: SYudit.cpp, line: 1346 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1461 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1478 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1476 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1473 # File: SHighlightD.cpp, line: 371 # File: SYudit.cpp, line: 1498 msgid "Can not read: " msgstr "" # # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 # File: SKMapPanel.cpp, line: 30 msgid "Current KMap:" msgstr "" # # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 # File: SKMapPanel.cpp, line: 33 msgid "Characters:" msgstr "" # # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 # File: SKMapPanel.cpp, line: 35 msgid "Available KMaps" msgstr "" # # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 # File: SKMapPanel.cpp, line: 40 msgid "F-Key" msgstr "" # # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 # File: SKMapPanel.cpp, line: 41 msgid "Current KMaps" msgstr "" # # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 # File: SKMapPanel.cpp, line: 45 msgid "Key Input" msgstr "" # # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 # File: SKMapPanel.cpp, line: 46 msgid "Output" msgstr "" # # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 # File: SMessageBar.cpp, line: 47 msgid "Glyph Info:" msgstr "" # # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 # File: SMessageBar.cpp, line: 57 msgid "Font Size:" msgstr "" # # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 # File: SMessageBar.cpp, line: 67 msgid "Line:" msgstr "" # # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 # File: SMessageBar.cpp, line: 77 msgid "Column:" msgstr "" # # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 82 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 msgid "Unix" msgstr "" # # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 84 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 msgid "DOS" msgstr "" # # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 86 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 # File: SToolBar.cpp, line: 90 msgid "MAC" msgstr "" # # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 88 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 # File: SToolBar.cpp, line: 92 msgid "PS" msgstr "" # # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 470 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 498 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 msgid "__O__pen" msgstr "" # # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 471 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 msgid "Find(__Q__)" msgstr "" # # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 472 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 500 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 msgid "__G__o To" msgstr "" # # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 476 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 msgid "__S__ave (needed)" msgstr "" # # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 480 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 513 # File: SToolBar.cpp, line: 513 msgid "__S__ave" msgstr "" # # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 486 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 514 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 519 msgid "__P__rint (pending job)" msgstr "" # # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 490 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 518 # File: SToolBar.cpp, line: 519 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 msgid "__P__rint" msgstr "" # # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 495 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 523 # File: SToolBar.cpp, line: 524 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 528 msgid "Print Previe__w__ (pending job)" msgstr "" # # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 499 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 527 # File: SToolBar.cpp, line: 528 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 msgid "Print Previe__w__" msgstr "" # # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 501 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 529 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 msgid "__U__ndo" msgstr "" # # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 502 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 530 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 msgid "__R__edo" msgstr "" # # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 503 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 531 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 msgid "Document __T__ext Embedding" msgstr "" # # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 504 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 532 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 msgid "__D__irection Override" msgstr "" # # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 505 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 533 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 msgid "__E__mbedding Override" msgstr "" # # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 506 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 534 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 539 # File: SToolBar.cpp, line: 539 msgid "__Y__ield Embedding" msgstr "" # # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 507 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 535 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 540 # File: SToolBar.cpp, line: 540 msgid "Smaller(__A__)" msgstr "" # # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 508 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 536 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 msgid "Bigger(__Z__)" msgstr "" # # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 537 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 542 # File: SToolBar.cpp, line: 542 msgid "__H__ighlighting" msgstr "" # # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 509 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 538 # File: SToolBar.cpp, line: 545 # File: SToolBar.cpp, line: 549 # File: SToolBar.cpp, line: 549 msgid "Font" msgstr "" # # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 512 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 541 # File: SToolBar.cpp, line: 548 # File: SToolBar.cpp, line: 552 # File: SToolBar.cpp, line: 552 msgid "Input" msgstr "" # # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 515 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 544 # File: SToolBar.cpp, line: 551 # File: SToolBar.cpp, line: 555 # File: SToolBar.cpp, line: 555 msgid "Line Break" msgstr "" # # File: SYudit.cpp, line: 419 # File: SYudit.cpp, line: 438 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 497 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 501 # File: SYudit.cpp, line: 502 # File: SYudit.cpp, line: 502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" # # File: SYudit.cpp, line: 432 # File: SYudit.cpp, line: 451 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 510 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 515 # File: SYudit.cpp, line: 515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" # # File: SYudit.cpp, line: 476 # File: SYudit.cpp, line: 495 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 554 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 558 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" # # File: SYudit.cpp, line: 506 # File: SYudit.cpp, line: 1868 # File: SYudit.cpp, line: 525 # File: SYudit.cpp, line: 1887 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 584 # File: SYudit.cpp, line: 2008 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2025 # File: SYudit.cpp, line: 588 # File: SYudit.cpp, line: 2023 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2020 # File: SYudit.cpp, line: 589 # File: SYudit.cpp, line: 2045 msgid "Unsaved changes. Enter discards!" msgstr "" # # File: SYudit.cpp, line: 514 # File: SYudit.cpp, line: 1877 # File: SYudit.cpp, line: 533 # File: SYudit.cpp, line: 1896 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 592 # File: SYudit.cpp, line: 2017 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2034 # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 2032 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2029 # File: SYudit.cpp, line: 597 # File: SYudit.cpp, line: 2054 msgid "open -yes -e encoding file" msgstr "" # # File: SYudit.cpp, line: 540 # File: SYudit.cpp, line: 559 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 618 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 622 # File: SYudit.cpp, line: 623 # File: SYudit.cpp, line: 623 msgid "" "File exists.\n" "Save anyway?" msgstr "" # # File: SYudit.cpp, line: 561 # File: SYudit.cpp, line: 580 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 639 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 643 # File: SYudit.cpp, line: 644 # File: SYudit.cpp, line: 644 msgid "save -e encoding file" msgstr "" # # File: SYudit.cpp, line: 572 # File: SYudit.cpp, line: 591 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 650 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 654 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 655 msgid "find string" msgstr "" # # File: SYudit.cpp, line: 579 # File: SYudit.cpp, line: 598 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 657 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 661 # File: SYudit.cpp, line: 662 # File: SYudit.cpp, line: 662 msgid "go line [column]" msgstr "" # # File: SYudit.cpp, line: 596 # File: SYudit.cpp, line: 615 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 674 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 678 # File: SYudit.cpp, line: 677 # File: SYudit.cpp, line: 677 msgid "print -e program" msgstr "" # # File: SYudit.cpp, line: 607 # File: SYudit.cpp, line: 626 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 685 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 689 # File: SYudit.cpp, line: 688 # File: SYudit.cpp, line: 688 msgid "Nothing to undo." msgstr "" # # File: SYudit.cpp, line: 616 # File: SYudit.cpp, line: 635 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 694 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 698 # File: SYudit.cpp, line: 697 # File: SYudit.cpp, line: 697 msgid "Nothing to redo." msgstr "" # # File: SYudit.cpp, line: 636 # File: SYudit.cpp, line: 668 # File: SYudit.cpp, line: 655 # File: SYudit.cpp, line: 687 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 714 # File: SYudit.cpp, line: 746 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 718 # File: SYudit.cpp, line: 750 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 # File: SYudit.cpp, line: 717 # File: SYudit.cpp, line: 749 msgid "Direction of selected text has been set." msgstr "" # # File: SYudit.cpp, line: 651 # File: SYudit.cpp, line: 670 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 729 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 733 # File: SYudit.cpp, line: 732 # File: SYudit.cpp, line: 732 msgid "Direction of selected text has been re-set." msgstr "" # # File: SYudit.cpp, line: 833 # File: SYudit.cpp, line: 848 # File: SYudit.cpp, line: 852 # File: SYudit.cpp, line: 867 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 830 # File: SYudit.cpp, line: 965 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 982 # File: SYudit.cpp, line: 998 # File: SYudit.cpp, line: 845 # File: SYudit.cpp, line: 981 # File: SYudit.cpp, line: 997 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 # File: SYudit.cpp, line: 844 # File: SYudit.cpp, line: 980 # File: SYudit.cpp, line: 996 msgid "usage: " msgstr "" # # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 839 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 856 # File: SYudit.cpp, line: 855 # File: SYudit.cpp, line: 855 msgid "Can not set syntax: " msgstr "" # # File: SYudit.cpp, line: 767 # File: SYudit.cpp, line: 786 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 899 # File: SYudit.cpp, line: 916 # File: SYudit.cpp, line: 915 # File: SYudit.cpp, line: 914 # File: SYudit.cpp, line: 914 msgid "Unsaved changes. Enter quits!" msgstr "" # # File: SYudit.cpp, line: 776 # File: SYudit.cpp, line: 795 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 908 # File: SYudit.cpp, line: 925 # File: SYudit.cpp, line: 924 # File: SYudit.cpp, line: 923 # File: SYudit.cpp, line: 923 msgid "Pending printing job. Enter quits!" msgstr "" # # File: SYudit.cpp, line: 1108 # File: SYudit.cpp, line: 1127 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1241 # File: SYudit.cpp, line: 1258 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1254 # File: SYudit.cpp, line: 1279 msgid "Printing..." msgstr "" # # File: SYudit.cpp, line: 1124 # File: SYudit.cpp, line: 1143 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1257 # File: SYudit.cpp, line: 1274 # File: SYudit.cpp, line: 1273 # File: SYudit.cpp, line: 1270 # File: SYudit.cpp, line: 1295 #, c-format msgid "Printed %d page(s)." msgstr "" # # File: SYudit.cpp, line: 1277 # File: SYudit.cpp, line: 1296 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1410 # File: SYudit.cpp, line: 1427 # File: SYudit.cpp, line: 1426 # File: SYudit.cpp, line: 1423 # File: SYudit.cpp, line: 1448 msgid "usage: open -e utf-8 -yes filename" msgstr "" # # File: SYudit.cpp, line: 1285 # File: SYudit.cpp, line: 1304 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1418 # File: SYudit.cpp, line: 1435 # File: SYudit.cpp, line: 1434 # File: SYudit.cpp, line: 1431 # File: SYudit.cpp, line: 1456 msgid "Unsaved changes. Try -yes option" msgstr "" # # File: SYudit.cpp, line: 1291 # File: SYudit.cpp, line: 1310 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1424 # File: SYudit.cpp, line: 1441 # File: SYudit.cpp, line: 1440 # File: SYudit.cpp, line: 1437 # File: SYudit.cpp, line: 1462 msgid "Pending printing job. Try -yes option" msgstr "" # # File: SYudit.cpp, line: 1300 # File: SYudit.cpp, line: 1473 # File: SYudit.cpp, line: 1319 # File: SYudit.cpp, line: 1492 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1433 # File: SYudit.cpp, line: 1607 # File: SYudit.cpp, line: 1450 # File: SYudit.cpp, line: 1624 # File: SYudit.cpp, line: 1449 # File: SYudit.cpp, line: 1622 # File: SYudit.cpp, line: 1446 # File: SYudit.cpp, line: 1619 # File: SYudit.cpp, line: 1471 # File: SYudit.cpp, line: 1644 msgid "Unknown encoding: " msgstr "" # # File: SYudit.cpp, line: 1378 # File: SYudit.cpp, line: 1397 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1512 # File: SYudit.cpp, line: 1529 # File: SYudit.cpp, line: 1527 # File: SYudit.cpp, line: 1524 # File: SYudit.cpp, line: 1549 msgid "Opened: " msgstr "" # # File: SYudit.cpp, line: 1387 # File: SYudit.cpp, line: 1406 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1521 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1536 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1558 msgid " Line Break:" msgstr "" # # File: SYudit.cpp, line: 1392 # File: SYudit.cpp, line: 1533 # File: SYudit.cpp, line: 1411 # File: SYudit.cpp, line: 1552 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1667 # File: SYudit.cpp, line: 1543 # File: SYudit.cpp, line: 1684 # File: SYudit.cpp, line: 1541 # File: SYudit.cpp, line: 1682 # File: SYudit.cpp, line: 1538 # File: SYudit.cpp, line: 1679 # File: SYudit.cpp, line: 1563 # File: SYudit.cpp, line: 1704 msgid " Incomplete Last Line..." msgstr "" # # File: SYudit.cpp, line: 1455 # File: SYudit.cpp, line: 1474 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1589 # File: SYudit.cpp, line: 1606 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1601 # File: SYudit.cpp, line: 1626 msgid "usage: save -e utf-8 -yes filename" msgstr "" # # File: SYudit.cpp, line: 1464 # File: SYudit.cpp, line: 1483 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1598 # File: SYudit.cpp, line: 1615 # File: SYudit.cpp, line: 1613 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 msgid "File exists. Use -yes option." msgstr "" # # File: SYudit.cpp, line: 1486 # File: SYudit.cpp, line: 1505 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1620 # File: SYudit.cpp, line: 1637 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1632 # File: SYudit.cpp, line: 1657 msgid "Can not write: " msgstr "" # # File: SYudit.cpp, line: 1509 # File: SYudit.cpp, line: 1528 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1643 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1658 # File: SYudit.cpp, line: 1655 # File: SYudit.cpp, line: 1680 msgid "Error while writing: " msgstr "" # # File: SYudit.cpp, line: 1526 # File: SYudit.cpp, line: 1545 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1660 # File: SYudit.cpp, line: 1677 # File: SYudit.cpp, line: 1675 # File: SYudit.cpp, line: 1672 # File: SYudit.cpp, line: 1697 msgid "Wrote: " msgstr "" # # File: SYudit.cpp, line: 1549 # File: SYudit.cpp, line: 1568 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1683 # File: SYudit.cpp, line: 1700 # File: SYudit.cpp, line: 1698 # File: SYudit.cpp, line: 1695 # File: SYudit.cpp, line: 1720 msgid "usage: go line [column] " msgstr "" # # File: SYudit.cpp, line: 1585 # File: SYudit.cpp, line: 1604 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1719 # File: SYudit.cpp, line: 1736 # File: SYudit.cpp, line: 1734 # File: SYudit.cpp, line: 1731 # File: SYudit.cpp, line: 1756 msgid "usage: find text" msgstr "" # # File: SYudit.cpp, line: 1591 # File: SYudit.cpp, line: 1616 # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1635 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1725 # File: SYudit.cpp, line: 1750 # File: SYudit.cpp, line: 1742 # File: SYudit.cpp, line: 1767 # File: SYudit.cpp, line: 1740 # File: SYudit.cpp, line: 1765 # File: SYudit.cpp, line: 1737 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1762 # File: SYudit.cpp, line: 1787 msgid "search string not found." msgstr "" # # File: SYudit.cpp, line: 1610 # File: SYudit.cpp, line: 1629 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1744 # File: SYudit.cpp, line: 1761 # File: SYudit.cpp, line: 1759 # File: SYudit.cpp, line: 1756 # File: SYudit.cpp, line: 1781 msgid "usage: replace original new" msgstr "" # # File: SYudit.cpp, line: 1825 # File: SYudit.cpp, line: 1844 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1965 # File: SYudit.cpp, line: 1982 # File: SYudit.cpp, line: 1980 # File: SYudit.cpp, line: 1977 # File: SYudit.cpp, line: 2002 msgid "Could not save preferences" msgstr "" # # File: SYudit.cpp, line: 1846 # File: SYudit.cpp, line: 1865 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 1986 # File: SYudit.cpp, line: 2003 # File: SYudit.cpp, line: 2001 # File: SYudit.cpp, line: 1998 # File: SYudit.cpp, line: 2023 msgid "unsupported text/uri: " msgstr "" # # File: SYudit.cpp, line: 2185 # File: SYudit.cpp, line: 2212 # File: SYudit.cpp, line: 2227 # File: SYudit.cpp, line: 2204 # File: SYudit.cpp, line: 2231 # File: SYudit.cpp, line: 2246 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2350 # File: SYudit.cpp, line: 2377 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2367 # File: SYudit.cpp, line: 2394 # File: SYudit.cpp, line: 2409 # File: SYudit.cpp, line: 2365 # File: SYudit.cpp, line: 2392 # File: SYudit.cpp, line: 2407 # File: SYudit.cpp, line: 2362 # File: SYudit.cpp, line: 2389 # File: SYudit.cpp, line: 2404 # File: SYudit.cpp, line: 2387 # File: SYudit.cpp, line: 2414 # File: SYudit.cpp, line: 2429 msgid "Command not found: " msgstr "" # # File: SYudit.cpp, line: 587 # File: SYudit.cpp, line: 1048 # File: SYudit.cpp, line: 606 # File: SYudit.cpp, line: 1067 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 665 # File: SYudit.cpp, line: 1181 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1198 # File: SYudit.cpp, line: 669 # File: SYudit.cpp, line: 1197 # File: SYudit.cpp, line: 2496 # File: SYudit.cpp, line: 2521 msgid "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-size]" msgstr "" ./gui/SMessageBar.cpp0000644000175000017500000003077510434025610014470 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gui/SMessageBar.h" #include "gui/Main.h" #include "swidget/SIconFactory.h" #include "stoolkit/SCluster.h" #include "stoolkit/SCharClass.h" /** * a button panel is just a panel of labels. */ SMessageBar::SMessageBar (const SProperties props) { xmanagerCludge = true; SColor fg = SColor(props["yudit.label.foreground"]); SColor tfg = SColor(props["yudit.title.foreground"]); SString font = props["yudit.default.font"]; SString fontSizeString=props["yudit.default.fontsize"]; double fontSize=0; fontSizeString.append ((char)0); sscanf (fontSizeString.array(), "%lf", &fontSize); if (fontSize < 2.0) fontSize = 2.0; /* create the labels and set the preferred size */ SLabel *l; l = new SLabel (translate ("Glyph Info:")); l->setFont(font, fontSize); l->setForeground (tfg); labels[SS_GLYPH_TITLE] = l; l = new SLabel (""); l->setFont(font, fontSize); l->setForeground (fg); labels[SS_GLYPH_INFO] = l; l = new SLabel (translate ("Font Size:")); l->setFont(font, fontSize); l->setForeground (tfg); labels[SS_FONT_SIZE_TITLE] = l; l = new SLabel (""); l->setFont(font, fontSize); l->setForeground (fg); labels[SS_FONT_SIZE] = l; l = new SLabel (translate ("Line:")); l->setFont(font, fontSize); l->setForeground (tfg); labels[SS_ROW_TITLE] = l; l = new SLabel (""); l->setFont(font, fontSize); l->setForeground (fg); labels[SS_ROW] = l; l = new SLabel (translate ("Column:")); l->setFont(font, fontSize); l->setForeground (tfg); labels[SS_COLUMN_TITLE] = l; l = new SLabel (""); l->setFont(font, fontSize); l->setForeground (fg); labels[SS_COLUMN] = l; unsigned int p=0; unsigned int h=0; for (unsigned int i=0; i<(unsigned int) SS_MAX; i++) { unsigned int ww = 0; switch (i) { case SS_FONT_SIZE: ww = 50; break; case SS_ROW: ww = 50; break; case SS_COLUMN: ww = 50; break; case SS_GLYPH_INFO: ww = 600; break; default: ww = labels[i]->getPreferredSize().width; } unsigned int hh = labels[i]->getPreferredSize().height; labels[i]->resize(SDimension (ww, hh)); labels[i]->move(SLocation ((int)p, 0)); add (labels[i]); p+= ww +2; if (hh > h) h = hh; } preferredSize = SDimension (p, h); } /** * This routine was introduced to make this * usable on peecees with windows. * Seems like XManager has some bug that they don't * fix. On unix you could in fact get rid of this whole method. * The presiously set size got lost. I don't really know why XManager is so * popular.... */ void SMessageBar::resize(const SDimension& d) { SPanel::resize (d); /* we only need to do it once. */ if (!xmanagerCludge) { return; } xmanagerCludge = false; unsigned int p=0; unsigned int h=0; for (unsigned int i=0; i<(unsigned int) SS_MAX; i++) { unsigned int ww = 0; switch (i) { case SS_FONT_SIZE: ww = 50; break; case SS_ROW: ww = 50; break; case SS_COLUMN: ww = 50; break; case SS_GLYPH_INFO: ww = 600; break; default: ww = labels[i]->getPreferredSize().width; } unsigned int hh = labels[i]->getPreferredSize().height; labels[i]->resize(SDimension (ww, hh)); labels[i]->move(SLocation ((int)p, 0)); // Seems resize is enough to work around the bug. /* No need to labels[i]->move(SLocation ((int)p, 0)); */ p+= ww +2; if (hh > h) h = hh; } } SMessageBar::~SMessageBar () { } void SMessageBar::setRow (unsigned int row) { char a[64]; sprintf (a, "%u", row); SLabel* l = labels[SS_ROW]; l->setText (a); } void SMessageBar::setColumn (unsigned int column) { char a[64]; sprintf (a, "%u", column); SLabel* l = labels[SS_COLUMN]; l->setText (a); } void SMessageBar::setFontSize (double d) { char a[64]; sprintf (a, "%g", d); fontSize = d; SLabel* l = labels[SS_FONT_SIZE]; l->setText (a); } /** * This one draws a glyph info in the form of * compose [decomp1 decomp2] - if compose will be saved. * [compose] decomp1 decomp2 - if decomp1 decomp.. will be saved * above P:displayed is displayed presentation form is used. * @param g is the glyph * @encoded contains some extra info, when encoed with a keymap. */ void SMessageBar::setGlyphInfo (const SGlyph* g, const SString& encoded) { SUniMap shaper ("shape"); SLabel* l = labels[SS_GLYPH_INFO]; if (g==0) { l->setText(""); return; } bool savePrecomp = g->usePrecomp; SS_UCS4 precomp = g->getChar(); SS_UCS4 shape = g->getShapedChar(); SV_UCS4 decomp; SString trailer; unsigned int i; for (i=0; idecompSize(); i++) { decomp.append ((*g)[i]); } if (g->compSize()) { SV_UCS4 ca; for (i=0; icompSize(); i++) { ca.append (g->getCompArray()[i]); } trailer.append (" ; "); trailer.append (unicodeValueOf (ca)); } if (g->embedding > 0) { char a[10]; sprintf (a, "%u", (unsigned int) g->embedding); trailer.append (" e:"); trailer.append (a); if (g->getExplicitLevel()>0) { sprintf (a, "%u", g->getExplicitLevel()); trailer.append (g->isOverride() ? " xo:" : " xe:"); trailer.append (a); } } if (encoded.size()) { trailer.append (" |"); trailer.append (encoded); trailer.append ("|"); } SString compStr; if (precomp!=0) { unsigned int tp = g->getType(); /* too much info */ //if (tp < 0x1f && tp !=0) if (false) { compStr.append (ssCharClass[tp]); compStr.append (" "); } } SString decompStr; /* * shape:xxxx [decomp] * In this case we received the shape. We won't modify shape. * In this case the shape is * pre-determined and can not be changed */ if (savePrecomp && decomp.size() == 0 && precomp != 0 && shaper.isOK()) /* check if precomp can be a shape */ { SV_UCS4 ret; SV_UCS4 v; v.append (precomp); /* presentation form - get decomposition */ unsigned int n = shaper.lift (v, 0, true, &ret); if (ret.size() > 0) { decompStr.append ("["); decompStr.append (unicodeValueOf (ret)); decompStr.append ("]"); SV_UCS4 forms; n = shaper.lift (ret, 0, false, &forms); if (forms.size()==4) { for (unsigned int i=0; isetText(compStr); return; } } /* * [shape:xxxx] decomp * In this case the shape is * pre-determined and can not be changed */ if (g->currentShape!=SD_NOSHAPE && getLigatureScriptCode(shape)!= SD_BENGALI_BEGIN) { compStr.append ("["); compStr.append (getShapeCode ((unsigned int)g->currentShape)); /* shaped with presentation forms */ if (shape < 0x80000000) { compStr.append (":"); SV_UCS4 v;v.append (shape); compStr.append (unicodeValueOf (v)); } compStr.append ("]"); /* here shape can be a simgle comp or decomp */ if (savePrecomp) { SV_UCS4 v; v.append (precomp); /* decomposition is a signle char */ decompStr.append (unicodeValueOf (v)); /* precomposed glyph exists but and we use that, not compositon */ if (decomp.size() && ! (decomp.size()==1 && decomp[0] == precomp)) { decompStr.append (" ("); decompStr.append (unicodeValueOf (decomp)); decompStr.append (")"); } } else /* it is comp */ { /* precomposed glyph exists but we don't use it */ if (precomp && ! (decomp.size()==1 && decomp[0] == precomp)) { SV_UCS4 pc; pc.append (precomp); decompStr.append ("("); decompStr.append (unicodeValueOf (pc)); decompStr.append (") "); } decompStr.append (unicodeValueOf (decomp)); } compStr.append (" "); compStr.append (decompStr); compStr.append (trailer); l->setText(compStr); return; } /* * decomp .... * In this case the shape is * pre-determined and can not be changed */ if (precomp==0 && decomp.size() > 0) { if (g->getShapeArray()) { decompStr.append ("noshape:"); decompStr.append (unicodeValueOf (decomp)); } else if (g->isCluster()) { SV_UCS4 declust = g->getChars(); /* getChars returns the extra char */ if (g->compSize()) declust.truncate (declust.size()-g->compSize()); if (declust.size()==2 && declust[0] >= 0xd800 && declust[0] <= 0xdbff && declust[1] >= 0xdc00 && declust[0] <= 0xdfff) { decompStr.append ("[sgt:"); } else { decompStr.append ("[cluster:"); } decompStr.append (unicodeValueOf (decomp)); decompStr.append ("] "); decompStr.append (unicodeValueOf (declust)); } else /* xxxx xxxx */ { if (getLigatureScriptCode (decomp[0]) == SD_AS_LITERAL) { SV_UCS4 v; v.append (decomp[0] & 0xff); decompStr.append ("illegal:"); SString uv = unicodeValueOf (v); uv.remove (0); uv.remove (0); decompStr.append (uv); decomp.remove (0); decompStr.append (" ; "); } decompStr.append (unicodeValueOf (decomp)); } decompStr.append (trailer); l->setText(decompStr); return; } /** * [xxxx] decomp */ if (!savePrecomp) { compStr.append ("["); SS_UCS4 lig = precomp; if (g->isCluster()) { SString ligname ("ligature:"); const char* chr = getLigatureScript (precomp); if (chr) { ligname = SString(chr); if (getLigatureScriptCode (shape) == SD_BENGALI_BEGIN) { // for debugging bengali shaping // ligname.append ("-init"); } ligname.append (":"); lig = lig & 0xffff; } compStr.append (ligname); } SV_UCS4 v; v.append (lig); compStr.append (unicodeValueOf (v)); compStr.append ("] "); if (g->isCluster()) { // Too much info //compStr.append ("[cluster:"); //compStr.append (unicodeValueOf (decomp)); //compStr.append ("] "); /* getChars returns the extra char */ SV_UCS4 declust = g->getChars(); if (g->compSize()) declust.truncate (declust.size()-g->compSize()); compStr.append (unicodeValueOf (declust)); } else { compStr.append (unicodeValueOf (decomp)); } compStr.append (trailer); l->setText(compStr); return; } /** * xxxx [decomp] */ if (decomp.size() > 0) { if (g->getShapeArray()) decompStr.append ("noshape:"); SV_UCS4 v; v.append (precomp); compStr.append (unicodeValueOf (v)); decompStr.append ("["); decompStr.append (unicodeValueOf (decomp)); decompStr.append ("]"); compStr.append (" "); compStr.append (decompStr); compStr.append (trailer); l->setText(compStr); return; } /** * xxxx */ SV_UCS4 v; if (getLigatureScriptCode (precomp) == SD_AS_LITERAL) { v.append (precomp & 0xff); compStr.append ("illegal:"); SString uv = unicodeValueOf (v); uv.remove (0); uv.remove (0); compStr.append (uv); } else { v.append (precomp); compStr.append (unicodeValueOf (v)); } compStr.append (trailer); l->setText(compStr); return; } ./gui/SYudit.h0000644000175000017500000000751410726421151013221 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SYudit_h #define SYudit_h #include "stoolkit/SStringVector.h" #include "stoolkit/SProperties.h" #include "stoolkit/SProperties.h" #include "swidget/SFrame.h" #include "swidget/STextEdit.h" #include "swidget/SSlider.h" #include "swidget/SFileDialog.h" #include "swidget/STextDialog.h" #include "swidget/SFreeHand.h" #include "gui/SToolBar.h" #include "gui/SMessageBar.h" #include "gui/SMessageLabel.h" #include "gui/SKMapDialog.h" #include "gui/SHighlightD.h" /** * A caret that redraws itself differently for lr and rl text */ class SYudit : public SFrame, public SFrameListener, public SToolBarListener, public STextEditLS, public SDropListener, public SFreeHandListener { public: SYudit (const SStringVector& args, const SProperties& allprops); virtual ~SYudit (); protected: virtual bool close (SPanel* comp); virtual void buttonPressed (void* src, int which, bool accel); virtual void buttonLeave (void* src, int which); virtual void buttonEnter (void* src, int which); virtual void textChanged (void *source); virtual void textEntered (void *source); virtual void focusOutRequest (void *source); virtual void focusChanged (void *source, bool in); virtual void caretMoved (void *source, unsigned int line, unsigned int col, bool before); virtual void freeHandTextChanged (void* source, const SString& lookup); STextEdit* editor; STextEdit* command; SSlider* slider; SToolBar* toolbar; SMessageBar* messagebar; SMessageLabel* messagelabel; SFreeHand* freehand; bool freeHandShown; SFileDialog* fileDialog; SHighlightD* highlightDialog; STextDialog* textDialog; SKMapDialog* kmapDialog; STextIndex caretNow; SHashtable caretIndex; virtual bool dropped (void* p, const SString& mimetype, const SString& data); private: bool addMytoolPrefix (SString* executable); void showFreeHand(bool is); void createFileDialog(); void createTextDialog(); void createKMapDialog(); void createHighlightDialog(); void caretMoved (); SLayout editorLayout; SLayout sliderLayout; unsigned int freeHandHeight; SProperties originalProperties; SProperties helpStrings; void print (const SStringVector& args, const SString& str); void load (const SStringVector& args, const SString& str); void save (const SStringVector& args, const SString& str); void goLineRow (const SStringVector& args, const SString& str); void find (const SStringVector& args, const SString& str); void replace (const SStringVector& args, const SString& str); bool newFileExists (const SString& filename); SString composeFileNameCommand ( const SString& prefix, const SString& encoding, const SString& fileName); SString quoteFileName(const SString& file); SString completeFileName(const SString& file); bool setHighlight (const SString& syntax); void setFileTitle (); void saveProperties (); SString currentFileName; SString lastencoding; SString lastprinterOption; SString lastpreviewOption; SProperties userProps; SString configFile; }; #endif /* SYudit_h */ ./gui/SMessageLabel.h0000644000175000017500000000251710434025606014446 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SMessagLabel_h #define SMessagLabel_h #include "swidget/SPanel.h" #include "swidget/SLabel.h" class SMessageLabel : public SPanel { public: enum SMessageType { SS_ERR=0, SS_WARN=1, SS_INFO=2, SS_NONE=3 }; SMessageLabel (const SProperties props); virtual ~SMessageLabel (); void setMessage (const SString& msg, SMessageType info=SS_NONE); virtual void resize(const SDimension& d); protected: SMessageType currentMessageType; SLabel* messageTitleLabel; SLabel* messageLabel; bool xmanagerCludge; }; #endif /* SMessagLabel_h */ ./gui/SKMapPanel.cpp0000644000175000017500000002613010434025610014255 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gui/SKMapPanel.h" #include "swidget/SIconFactory.h" #include "stoolkit/SUtil.h" #include "stoolkit/SEncoder.h" SKMapPanel::SKMapPanel (void) { SPanel::forceLayout (SLayout (SDimension (2000, 3000))); selectedKMap = -1; titleLabel = new SLabel (translate ("Current KMap:")); add (titleLabel); currentLabel = new SLabel (""); sampleTitleLabel = new SLabel (translate ("Characters:")); sampleLabel = new SLabel (""); listBox = new SListBox(translate ("Available KMaps")); listBox->setListListener(this); replaceButton = new SButton ("", SIconFactory::getIcon("Right")); replaceButton->setButtonListener(this); SStringVector v; v.append (translate ("F-Key")); v.append (translate ("Current KMaps")); kmapTable = new STextTable (v); kmapTable->setListListener(this); SStringVector s; s.append (translate ("Key Input")); s.append (translate ("Output")); sample = new STextTable (s); sample->setListListener(this); add (currentLabel); add (sampleLabel); add (sampleTitleLabel); add (listBox); add (replaceButton); add (kmapTable); add (sample); SStringVector bext = SEncoder::external(); SBinHashtable ph; unsigned int ib; unsigned int ic; for (ib=0; ibsetText (allinputs); recalc(); } SKMapPanel::~SKMapPanel () { } void SKMapPanel::setList (const SStringVector& _kmapList, int selected) { if (_kmapList.size()==0) return; SStringVector key; selectedKMap = selected; kmapList = _kmapList; currentLabel->setText (kmapList[selected]); char s[64]; unsigned int i; for (i=0; isetText (t); kmapTable->selectItem (selected); getSample(); } void SKMapPanel::setFont (const SString& font, double fontSize) { titleLabel->setFont (font, fontSize); currentLabel->setFont (font, fontSize); sampleLabel->setFont (font, fontSize); sampleTitleLabel->setFont (font, fontSize); listBox->setFont (font, fontSize); replaceButton->setFont (font, fontSize); kmapTable->setFont (font, fontSize); sample->setFont (font, fontSize); recalc(); } void SKMapPanel::setFontSize (double fontSize) { titleLabel->setFontSize (fontSize); currentLabel->setFontSize (fontSize); sampleLabel->setFontSize (fontSize); sampleTitleLabel->setFontSize (fontSize); listBox->setFontSize (fontSize); replaceButton->setFontSize (fontSize); kmapTable->setFontSize (fontSize); sample->setFontSize (fontSize); recalc(); } void SKMapPanel::setBackground (const SColor& bg) { SPanel::setBackground(bg); } void SKMapPanel::setForeground (const SColor& fg) { kmapTable->setForeground (fg); sample->setForeground (fg); } const SStringVector& SKMapPanel::getKMapList() const { return kmapList; } int SKMapPanel::getSelectedKMap() const { return selectedKMap; } void SKMapPanel::buttonPressed (void* source, const SAccelerator* acc) { int ksel = selectedKMap; int lsel = listBox->textList->getLastSelected(); if (ksel < 0 || lsel < 0) { return; } SString si = listBox->textList->getLastSelectedText(); SStringVector l = kmapList; l.remove ((unsigned int) ksel); l.insert ((unsigned int) ksel, si); setList (l, ksel); } void SKMapPanel::itemSelected (void* source, const SAccelerator* acc) { if (source == kmapTable) { if (kmapTable->getLastSelected()>=0) { selectedKMap = kmapTable->getLastSelected(); currentLabel->setText (kmapList[(unsigned int)selectedKMap]); getSample (); } } else if (source == sample) { if (sample->getLastSelected()>=0) { sampleLabel->setText (unicodeValueOf(sampleList[ (unsigned int)sample->getLastSelected()])); } } } void SKMapPanel::setTitleForeground (const SColor& fg) { listBox->setForeground (fg); titleLabel->setForeground (fg); sampleTitleLabel->setForeground (fg); listBox->setLabelForeground (fg); kmapTable->setLabelForeground (fg); sample->setLabelForeground (fg); } void SKMapPanel::setSliderBackground (const SColor& bg) { listBox->setSliderBackground (bg); kmapTable->setSliderBackground (bg); sample->setSliderBackground (bg); } void SKMapPanel::setLabelForeground (const SColor& fg) { replaceButton->setForeground (fg); currentLabel->setForeground (fg); sampleLabel->setForeground (fg); } /** * recalculate the layout of components and set preferred size. * It calculates preferred size as well. */ void SKMapPanel::recalc() { SDimension tld = titleLabel->getPreferredSize(); SDimension lbd = listBox->getPreferredSize(); SDimension bd = replaceButton->getPreferredSize(); SDimension kd = kmapTable->getPreferredSize(); SDimension sd = sample->getPreferredSize(); unsigned int w = lbd.width + 2 + bd.width + 2 + kd.width + 2 + sd.width; unsigned int h = tld.height + 2 + lbd.height; if ((w*2)/4 + 10> h) h = (w*2)/4+ 10; preferredSize = SDimension (w, h); SDimension d = preferredSize; titleLabel->setLayout ( SLayout ( SLocation (0, 0), SLocation (tld.width, tld.height), SLocation (0, 0), SLocation (100, 0) ) ); currentLabel->setLayout ( SLayout ( SLocation (tld.width+2, 0), SLocation (d.width/2 - 2, tld.height), SLocation (0, 0), SLocation (50, 0) ) ); unsigned int tw = sampleTitleLabel->getPreferredSize().width; sampleTitleLabel->setLayout ( SLayout ( SLocation (d.width/2, 0), SLocation (d.width/2 + tw, tld.height), SLocation (50, 0), SLocation (50, 0) ) ); sampleLabel->setLayout ( SLayout ( SLocation (d.width/2 + tw + 2, 0), SLocation (d.width, tld.height), SLocation (50, 0), SLocation (100, 0) ) ); unsigned int cx = (lbd.width * d.width) / w; listBox->setLayout ( SLayout ( SLocation (0, tld.height+5), SLocation (cx, d.height-10), SLocation (0, 0), SLocation (33, 100) ) ); cx = cx + 2; replaceButton->setLayout ( SLayout ( SLocation (cx, d.height/2-10), SLocation (cx + bd.width, d.height/2 + bd.height-10), SLocation (33, 50), SLocation (33, 50) ) ); cx += bd.width + 2; kmapTable->setLayout ( SLayout ( SLocation (cx, tld.height+5), SLocation (cx + (kd.width * d.width)/w , d.height-10), SLocation (33, 0), SLocation (66, 100) ) ); cx += (kd.width * d.width)/w + 2; sample->setLayout ( SLayout ( SLocation (cx, tld.height+5), SLocation (cx + (sd.width * d.width)/w , d.height-10), SLocation (66, 0), SLocation (100, 100) ) ); /* save current */ SLayout goodlayout = layout; /* pretend we have this layout */ SPanel::forceLayout (preferredSize); /* accept old layout */ SPanel::setLayout (goodlayout); } void SKMapPanel::getSample() { if (selectedKMap < 0) return; SString map = kmapList[selectedKMap]; SStringTable t; SStringVector kv; SStringVector vv; bool more = true; if (map == "None" || map == "none") { /* nothing */ } else if (map.size()>1 && (map[0] == 'x' || map[0] == 'X') && (map[1] == '-')) { /* nothing */ } else if (map == "straight" || map == "x-none" || map == "x-utf-8" || map == "x-ascii") { char s[64]; for (unsigned int i=0; i<100 && i<128-32; i++) { s[0] = (char)(i+32); s[1] = 0; kv.append (s); vv.append (s); } } else { SEncoder enc (map); if (enc.isOK()) { more = (enc.getDecoderMap (&kv, &vv, 800) > 800); } } if (more) { kv.append (".."); vv.append (".."); } t.append (kv); t.append (vv); sampleList = vv; sample->setText (t); sampleLabel->setText (""); } /** * Set the xinputs in the form of: x-name-locale */ void SKMapPanel::setXInputs (const SStringVector& list) { SBinHashtable check; /* no support yet */ if (isWinAPI ()) return; //xinputs = SStringVector("x-utf-8,x-ascii"); xinputs.clear(); for (unsigned int i=0; isetText (v); } ./gui/messages.pod0000644000175000017500000000000007532460062014126 0ustar henrichhenrich./gui/SKMapDialog.h0000644000175000017500000000317310434025606014071 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SKMapDialog_h #define SKMapDialog_h #include "swidget/SDialog.h" #include "gui/SKMapPanel.h" #include "stoolkit/SStringVector.h" class SKMapDialog : public SDialog { public: SKMapDialog (void); virtual ~SKMapDialog (); bool getInput (const SString& title, const SStringVector& kmapList, int selected); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); void setXInputs (const SStringVector& list); virtual void setBackground (const SColor& bg); virtual void setForeground (const SColor& fg); virtual void setTitleForeground (const SColor& fg); virtual void setSliderBackground (const SColor& bg); void setLabelForeground (const SColor& fg); const SStringVector& getKMapList() const; int getSelectedKMap() const; protected: SStringVector xinputs; SKMapPanel* panel; }; #endif /* SKMapDialog_h */ ./gui/yudit.res0000644000175000017500000000743407532460062013506 0ustar henrichhenrich   (0`   &($$$&&&)))*++,,,///011222777888====>=>>>H>>DAAABBBEEEFFGBBHIIIJJJLMMSSSPPPUUUUU]WW_XX[YZZ[[[\\\___YY`ZZa\\c]]d^^e^^faaaabb``fdddaahcciddiddkeelggmggniiikkkhhmkklhhnjjommniipkkqnnqmmrllpmmtqqquuvwwwtttqqussxuuywwyvv{xxxz{{yy}zz}yy~zz~}}}{|$ٽj$ٹjٜ#ٜ ~(jޑ$jޑ Ю|$dd׭%::Ъ88˄2/Ƅ׿gmxd+%|Ɩd۽rVQFmUFI.n-~ƪ׫mlΟ22ʪжm#|8:"‘γl3ʽ~2"2ʜg}^lQƑdB"D5ƈ-n]]dZ2:-%+j]]ddgQ>8E:22B:%N~]v˄E:22BZgLFvl@@ۜB12ƀۜB1:bg@<> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SToolBar_h #define SToolBar_h #include "stoolkit/SProperties.h" #include "swidget/SPanel.h" #include "swidget/SButton.h" #include "swidget/SLabel.h" #include "stoolkit/SBinVector.h" #include "stoolkit/SCharClass.h" #include "stoolkit/SEvent.h" class SIconUpdater : public SEventTarget { public: SIconUpdater (SWindow* _w, SOpaqueLabel* label, int* currentEvent, int* displayEvent); ~SIconUpdater(); bool timeout (const SEventSource* s); void start (); private: int* currentEvent; int* displayEvent; STimer* eventTimer; SOpaqueLabel* label; SWindow* window; }; /** * A caret that redraws itself differently for lr and rl text */ class SToolBarListener { public: SToolBarListener(void); virtual ~SToolBarListener(); virtual void buttonPressed (void* src, int button, bool accel)=0; virtual void buttonEnter (void* src, int button); virtual void buttonLeave (void* src, int button); }; class SToolBar : public SPanel, public SButtonListener, public SSyntaxListener { public: enum SButtonIndex {SS_OPEN=0, SS_SAVE, SS_PRINT, SS_PRINT_PREVIEW, SS_FIND, SS_GOTO, SS_UNDO, SS_REDO, SS_DOCUMENT_EMBEDDING, SS_SET_OVERRIDE, SS_SET_EMBEDDING, SS_YIELD_EMBEDDING, SS_MAGNIFY_PLUS, SS_MAGNIFY_MINUS, SS_HIGHLIGHTING, SS_FONT, SS_INPUT, SS_PARAGRAPH_BREAK, SS_MAX }; SToolBar (const SProperties props); virtual ~SToolBar (); SButton* buttons[SS_MAX]; void setListener (SToolBarListener* listener); void setFileName (const SString& fileName, const SString& encoding); void setHighlightName (const SString& _fileType); void inputChanged (const SStringVector& _inputs, unsigned int _current); virtual void buttonPressed (void* source, const SAccelerator* accel); virtual void leaveWindow (void* source); virtual void enterWindow (void* source); virtual void redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height); virtual void resize(const SDimension & d); // SSyntaxListener virtual void syntaxChanged (SS_EventType _evnt); unsigned int currentFontSize; SStringVector fontsizes; unsigned int currentInput; SStringVector inputs; unsigned int currentFont; SStringVector fonts; enum SFormatIndex { SS_FORMAT_UNIX=0, SS_FORMAT_DOS, SS_FORMAT_MAC, SS_FORMAT_PS }; void setParagraphSeparator (int index, bool notify); void setEmbedding (SS_Embedding index, bool notify); SStringVector paragraphBreakStrings; unsigned int currentParagraphSeparator; SS_Embedding currentEmbedding; SStringVector paragraphBreaks; void directionChanged (bool islr); bool editorLR; void setModified (bool flag); void setPrinting (bool flag); bool overrideLR; bool embedLR; bool currentLR; bool modified; bool printing; private: SOpaqueLabel* title; SOpaqueLabel* titleEncoding; SLabel* tooltip; SStringVector displayInputs; SIconUpdater* iconUpdater; SString highlightName; void setFont (int index); void setFontSize (int index); void setInput (int index); void setButton (SButtonIndex index, const SString& txt, bool notify); void buildDisplayInputs(); SDimension getMaxSize(SButton* b, const SStringVector&l, const SString& str); void setFAccelerator (SButton* b, unsigned int se, bool ctrl); int getFAccelerator (const SAccelerator* accel); unsigned int preferredWidth; SToolBarListener* listener; bool xmanagerCludge; int currentEvent; int displayEvent; }; #endif /* SToolBar_h */ ./gui/SMessageBar.h0000644000175000017500000000274710434025606014140 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SMessageBar_h #define SMessageBar_h #include "swidget/SLabel.h" #include "stoolkit/SProperties.h" #include "stoolkit/STextData.h" class SMessageBar : public SPanel { public: enum SLabelIndex { SS_ROW_TITLE=0, SS_ROW, SS_COLUMN_TITLE, SS_COLUMN, SS_FONT_SIZE_TITLE, SS_FONT_SIZE, SS_GLYPH_TITLE, SS_GLYPH_INFO, SS_MAX }; SMessageBar (const SProperties props); virtual ~SMessageBar (); virtual void resize(const SDimension& d); void setRow (unsigned int row); void setColumn (unsigned int column); void setFontSize (double d); void setGlyphInfo (const SGlyph* g, const SString& encoded); double fontSize; private: SLabel* labels[SS_MAX]; bool xmanagerCludge; }; #endif /* SMessageBar_h */ ./gui/SKMapPanel.h0000644000175000017500000000424710434025606013734 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SKMapPanel_h #define SKMapPanel_h #include "swidget/STextTable.h" #include "swidget/SListBox.h" #include "swidget/SButton.h" #include "swidget/SLabel.h" #include "swidget/SPanel.h" class SKMapPanel : public SPanel, public SListListener, public SButtonListener { public: SKMapPanel (void); virtual ~SKMapPanel (); void setList (const SStringVector& kmapList, int selected); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); virtual void setBackground (const SColor& bg); virtual void setForeground (const SColor& fg); virtual void setTitleForeground (const SColor& fg); virtual void setSliderBackground (const SColor& bg); void setLabelForeground (const SColor& fg); void setXInputs (const SStringVector& list); const SStringVector& getKMapList() const; int getSelectedKMap() const; protected: SStringVector allinputs; SStringVector xinputs; SStringVector kmapList; SStringVector sampleList; int selectedKMap; SLabel* titleLabel; SLabel* currentLabel; SLabel* sampleTitleLabel; SLabel* sampleLabel; SListBox* listBox; SButton* replaceButton; STextTable* kmapTable; STextTable* sample; virtual void buttonPressed (void* source, const SAccelerator* acc); virtual void itemSelected (void* source, const SAccelerator* acc); void getSample(); void recalc(); }; #endif /* SKMapPanel_h */ ./gui/SKMapDialog.cpp0000644000175000017500000000505110434025610014414 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gui/SKMapDialog.h" SKMapDialog::SKMapDialog (void) : SDialog (new SKMapPanel()) { panel = (SKMapPanel*) dialogPanel; recalc(); } SKMapDialog::~SKMapDialog () { } bool SKMapDialog::getInput (const SString& title, const SStringVector& kmapList, int selected) { panel->setList (kmapList, selected); setTitle (title); recalc(); return SDialog::getInput (SDialog::SS_OK_CANCEL); } void SKMapDialog::setFont (const SString& font, double fontSize) { panel->setFont (font, fontSize); SDialog::setFont (font, fontSize); } void SKMapDialog::setFontSize (double fontSize) { panel->setFontSize (fontSize); SDialog::setFontSize (fontSize); } void SKMapDialog::setBackground (const SColor& bg) { SDialog::setBackground (bg); panel->setBackground (bg); } void SKMapDialog::setForeground (const SColor& fg) { SDialog::setForeground (fg); panel->setForeground (fg); } void SKMapDialog::setTitleForeground (const SColor& fg) { SDialog::setTitleForeground (fg); panel->setTitleForeground (fg); } void SKMapDialog::setSliderBackground (const SColor& bg) { panel->setSliderBackground (bg); } void SKMapDialog::setLabelForeground (const SColor& fg) { //SDialog::setLabelForeground (fg); panel->setLabelForeground (fg); } const SStringVector& SKMapDialog::getKMapList() const { return panel->getKMapList (); } int SKMapDialog::getSelectedKMap() const { return panel->getSelectedKMap (); } /** * Set XInputs that are coming with : * pair, where name is the name of the input method and * encoding is an optional locale setting. */ void SKMapDialog::setXInputs (const SStringVector& list) { SStringVector xinputs; for (unsigned int i=0; isetXInputs (xinputs); } ./gui/yudit.ico0000644000175000017500000000727607532460062013473 0ustar henrichhenrich00(0`   &($$$&&&)))*++,,,///011222777888====>=>>>H>>DAAABBBEEEFFGBBHIIIJJJLMMSSSPPPUUUUU]WW_XX[YZZ[[[\\\___YY`ZZa\\c]]d^^e^^faaaabb``fdddaahcciddiddkeelggmggniiikkkhhmkklhhnjjommniipkkqnnqmmrllpmmtqqquuvwwwtttqqussxuuywwyvv{xxxz{{yy}zz}yy~zz~}}}{|$ٽj$ٹjٜ#ٜ ~(jޑ$jޑ Ю|$dd׭%::Ъ88˄2/Ƅ׿gmxd+%|Ɩd۽rVQFmUFI.n-~ƪ׫mlΟ22ʪжm#|8:"‘γl3ʽ~2"2ʜg}^lQƑdB"D5ƈ-n]]dZ2:-%+j]]ddgQ>8E:22B:%N~]v˄E:22BZgLFvl@@ۜB12ƀۜB1:bg@<> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gui/SMessageLabel.h" #include "swidget/SIconFactory.h" #include "stoolkit/SUtil.h" SMessageLabel::SMessageLabel (const SProperties props) { xmanagerCludge = true; SString font = props["yudit.default.font"]; SString fontSizeString=props["yudit.default.fontsize"]; double fontSize=0; fontSizeString.append ((char)0); sscanf (fontSizeString.array(), "%lf", &fontSize); if (fontSize < 2.0) fontSize = 2.0; SColor fg = SColor(props["yudit.label.foreground"]); SColor tfg = SColor(props["yudit.title.foreground"]); SLabel* l; l = new SLabel ("", SIconFactory::getIcon("Inform")); l->setFont(font, fontSize); l->setForeground (tfg); SDimension dh = l->getPreferredSize(); l->move (SLocation (0, 0)); l->resize (dh); messageTitleLabel = l; l = new SLabel (""); l->setFont(font, fontSize); l->move (SLocation ((int)dh.width, 0)); l->resize (dh); messageLabel = l; add (messageTitleLabel); add (messageLabel); currentMessageType = SS_NONE; preferredSize = SDimension (dh.width + 100, dh.height); } SMessageLabel::~SMessageLabel () { } /** * This routine was introduced to make this * usable on peecees with windows. * Seems like XManager has some bug that they don't * fix. On unix you could in fact get rid of this whole method. * The presiously set size got lost. I don't really know why XManager is so * popular.... */ void SMessageLabel::resize(const SDimension& d) { SPanel::resize (d); /* we only need to do it once. */ if (!xmanagerCludge) { return; } xmanagerCludge = false; SDimension dh = messageTitleLabel->getPreferredSize(); messageTitleLabel->move (SLocation (0, 0)); messageTitleLabel->resize (dh); messageLabel->move (SLocation ((int)dh.width, 0)); messageLabel->resize (SDimension (d.width, dh.height)); messageTitleLabel->setIcon (0); } void SMessageLabel::setMessage (const SString& msg, SMessageType info) { messageLabel->setText (msg); messageLabel->resize (messageLabel->getPreferredSize()); if (info==currentMessageType) return; currentMessageType = info; switch (info) { case SS_ERR: messageTitleLabel->setIcon (SIconFactory::getIcon("Error")); //messageTitleLabel->setBackground (SColor("Black")); //messageTitleLabel->setLabelBackground (SColor("Red")); messageTitleLabel->setForeground (SColor("White")); break; case SS_WARN: messageTitleLabel->setIcon (SIconFactory::getIcon("Caution")); //messageTitleLabel->setBackground (SColor("Black")); //messageTitleLabel->setLabelBackground (SColor("Yellow")); messageTitleLabel->setForeground (SColor("Black")); break; case SS_INFO: messageTitleLabel->setIcon (SIconFactory::getIcon("Inform")); messageTitleLabel->setBackground (background); messageTitleLabel->setForeground (SColor("Black")); break; default: messageTitleLabel->setBackground (background); messageTitleLabel->setForeground (SColor("Black")); messageTitleLabel->setIcon (0); break; } } ./gui/SHighlightD.h0000644000175000017500000000474410726546564014160 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef SHighlightD_h #define SHighlightD_h #include "swidget/SFrame.h" #include "swidget/SBorder.h" #include "swidget/STextList.h" #include "swidget/STextEdit.h" #include "swidget/SButton.h" #include "swidget/SListBox.h" #include "swidget/STextEdit.h" #include "swidget/STextDialog.h" #include "swindow/SImage.h" #include class SHighlightD : public SFrame, public SListListener, public SButtonListener, public SFrameListener { public: SHighlightD (void); virtual ~SHighlightD (); bool getInput(const SString& title); void setFont (const SString& font, double fontSize=0.0); void setFontSize (double fontSize); virtual void setBackground (const SColor& bg); virtual void setForeground (const SColor& fg); virtual void setTitleForeground (const SColor& fg); virtual void setSliderBackground (const SColor& bg); virtual void setApplicationImage (const SImage& image); void setLabelForeground (const SColor& fg); void setHighlightName (const SString& filename); SString getHighlightName (); protected: // SButtonListener virtual void buttonPressed (void* source, const SAccelerator* acc); // SListListener virtual void itemSelected (void* source, const SAccelerator* acc); // SFrameListener virtual bool close (SPanel* comp); private: bool isCancel; void recalc (); void populate (); void populate (const SString& cat); void highlightChanged (); SListBox* categoryListBox; SListBox* highlightListBox; SLabel* remarkTitleLabel; SLabel* remarkNameLabel; SLabel* folderTitleLabel; SLabel* folderNameLabel; SButton* yesButton; SButton* cancelButton; SString currentCat; SString currentHi; }; #endif /* SHighlightD_h */ ./gui/messages.po0000644000175000017500000001663510733117072014004 0ustar henrichhenrich# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-12-22 14:18+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #: ../swidget/SDialog.cpp:33 ../swidget/SDialog.cpp:72 msgid "Yes" msgstr "" #: ../swidget/SDialog.cpp:36 ../swidget/SDialog.cpp:59 #: ../swidget/SDialog.cpp:63 ../swidget/SDialog.cpp:67 #: ../swidget/SDialog.cpp:71 msgid "No" msgstr "" #: ../swidget/SDialog.cpp:60 ../swidget/SDialog.cpp:64 #: ../swidget/SDialog.cpp:68 ../swidget/SDialog.cpp:76 #: ../swidget/SFileDialog.cpp:57 SHighlightD.cpp:44 msgid "OK" msgstr "" #: ../swidget/SDialog.cpp:75 ../swidget/SFileDialog.cpp:69 SHighlightD.cpp:48 msgid "Cancel" msgstr "" #: ../swidget/SFileDialog.cpp:42 msgid "Show Hidden" msgstr "" #: ../swidget/SFileDialog.cpp:47 msgid "Home" msgstr "" #: ../swidget/SFileDialog.cpp:61 msgid "CD to" msgstr "" #: ../swidget/SFileDialog.cpp:65 msgid "Make Folder" msgstr "" #: ../swidget/SFileDialog.cpp:76 msgid "Folder" msgstr "" #: ../swidget/SFileDialog.cpp:79 msgid "File" msgstr "" #: ../swidget/SFileDialog.cpp:82 msgid "File Type" msgstr "" #: ../swidget/SFileDialog.cpp:87 msgid "File:" msgstr "" #: ../swidget/SFileDialog.cpp:95 SHighlightD.cpp:64 msgid "Folder:" msgstr "" #: ../swidget/SFileDialog.cpp:100 msgid "Filter:" msgstr "" #: ../swidget/SFileDialog.cpp:110 msgid "Best File Type" msgstr "" #: ../swidget/SFileDialog.cpp:508 msgid "" "Will not create\n" "specified folder\n" msgstr "" #: ../swidget/SFileDialog.cpp:515 msgid "" "Folders can be created\n" "in current directory only." msgstr "" #: ../swidget/SFileDialog.cpp:522 msgid "" "Specified folder\n" "already exists.\n" msgstr "" #: ../swidget/SFileDialog.cpp:533 msgid "" "Can not create\n" "specified folder\n" msgstr "" #: ../swidget/SFileDialog.cpp:549 msgid "" "Can not go to\n" "specified folder.\n" msgstr "" #: ../swidget/SFreeHand.cpp:46 msgid "Handwriting Input" msgstr "" #: ../swidget/SFreeHand.cpp:50 msgid "Strokes:" msgstr "" #: ../swidget/SFreeHand.cpp:59 msgid "Converters" msgstr "" #: ../swidget/SFreeHand.cpp:69 msgid "Look-up" msgstr "" #: ../swidget/SFreeHand.cpp:75 msgid "Clear" msgstr "" #: ../swidget/SFreeHand.cpp:82 msgid "Directed" msgstr "" #: ../swidget/SFreeHand.cpp:88 msgid "Candidates" msgstr "" #: ../swidget/SFreeHand.cpp:148 msgid "not found" msgstr "" #: SHighlightD.cpp:55 msgid "Category" msgstr "" #: SHighlightD.cpp:59 msgid "Highlighting" msgstr "" #: SHighlightD.cpp:69 msgid "Remark:" msgstr "" #: SHighlightD.cpp:371 SYudit.cpp:1498 msgid "Can not read: " msgstr "" #: SKMapPanel.cpp:30 msgid "Current KMap:" msgstr "" #: SKMapPanel.cpp:33 msgid "Characters:" msgstr "" #: SKMapPanel.cpp:35 msgid "Available KMaps" msgstr "" #: SKMapPanel.cpp:40 msgid "F-Key" msgstr "" #: SKMapPanel.cpp:41 msgid "Current KMaps" msgstr "" #: SKMapPanel.cpp:45 msgid "Key Input" msgstr "" #: SKMapPanel.cpp:46 msgid "Output" msgstr "" #: SMessageBar.cpp:47 msgid "Glyph Info:" msgstr "" #: SMessageBar.cpp:57 msgid "Font Size:" msgstr "" #: SMessageBar.cpp:67 msgid "Line:" msgstr "" #: SMessageBar.cpp:77 msgid "Column:" msgstr "" #: SToolBar.cpp:86 msgid "Unix" msgstr "" #: SToolBar.cpp:88 msgid "DOS" msgstr "" #: SToolBar.cpp:90 msgid "MAC" msgstr "" #: SToolBar.cpp:92 msgid "PS" msgstr "" #: SToolBar.cpp:503 msgid "__O__pen" msgstr "" #: SToolBar.cpp:504 msgid "Find(__Q__)" msgstr "" #: SToolBar.cpp:505 msgid "__G__o To" msgstr "" #: SToolBar.cpp:509 msgid "__S__ave (needed)" msgstr "" #: SToolBar.cpp:513 msgid "__S__ave" msgstr "" #: SToolBar.cpp:519 msgid "__P__rint (pending job)" msgstr "" #: SToolBar.cpp:523 msgid "__P__rint" msgstr "" #: SToolBar.cpp:528 msgid "Print Previe__w__ (pending job)" msgstr "" #: SToolBar.cpp:532 msgid "Print Previe__w__" msgstr "" #: SToolBar.cpp:534 msgid "__U__ndo" msgstr "" #: SToolBar.cpp:535 msgid "__R__edo" msgstr "" #: SToolBar.cpp:536 msgid "Document __T__ext Embedding" msgstr "" #: SToolBar.cpp:537 msgid "__D__irection Override" msgstr "" #: SToolBar.cpp:538 msgid "__E__mbedding Override" msgstr "" #: SToolBar.cpp:539 msgid "__Y__ield Embedding" msgstr "" #: SToolBar.cpp:540 msgid "Smaller(__A__)" msgstr "" #: SToolBar.cpp:541 msgid "Bigger(__Z__)" msgstr "" #: SToolBar.cpp:542 msgid "__H__ighlighting" msgstr "" #: SToolBar.cpp:549 msgid "Font" msgstr "" #: SToolBar.cpp:552 msgid "Input" msgstr "" #: SToolBar.cpp:555 msgid "Line Break" msgstr "" #: SYudit.cpp:502 msgid "" "Unsaved changes.\n" "Exit anyway?\n" msgstr "" #: SYudit.cpp:515 msgid "" "Pending printing job.\n" "Exit anyway?\n" msgstr "" #: SYudit.cpp:559 msgid "" "Unsaved changes.\n" "Open anyway?\n" msgstr "" #: SYudit.cpp:589 SYudit.cpp:2045 msgid "Unsaved changes. Enter discards!" msgstr "" #: SYudit.cpp:597 SYudit.cpp:2054 msgid "open -yes -e encoding file" msgstr "" #: SYudit.cpp:623 msgid "" "File exists.\n" "Save anyway?" msgstr "" #: SYudit.cpp:644 msgid "save -e encoding file" msgstr "" #: SYudit.cpp:655 msgid "find string" msgstr "" #: SYudit.cpp:662 msgid "go line [column]" msgstr "" #: SYudit.cpp:677 msgid "print -e program" msgstr "" #: SYudit.cpp:688 msgid "Nothing to undo." msgstr "" #: SYudit.cpp:697 msgid "Nothing to redo." msgstr "" #: SYudit.cpp:717 SYudit.cpp:749 msgid "Direction of selected text has been set." msgstr "" #: SYudit.cpp:732 msgid "Direction of selected text has been re-set." msgstr "" #: SYudit.cpp:844 SYudit.cpp:980 SYudit.cpp:996 msgid "usage: " msgstr "" #: SYudit.cpp:855 msgid "Can not set syntax: " msgstr "" #: SYudit.cpp:914 msgid "Unsaved changes. Enter quits!" msgstr "" #: SYudit.cpp:923 msgid "Pending printing job. Enter quits!" msgstr "" #: SYudit.cpp:1279 msgid "Printing..." msgstr "" #: SYudit.cpp:1295 #, c-format msgid "Printed %d page(s)." msgstr "" #: SYudit.cpp:1448 msgid "usage: open -e utf-8 -yes filename" msgstr "" #: SYudit.cpp:1456 msgid "Unsaved changes. Try -yes option" msgstr "" #: SYudit.cpp:1462 msgid "Pending printing job. Try -yes option" msgstr "" #: SYudit.cpp:1471 SYudit.cpp:1644 msgid "Unknown encoding: " msgstr "" #: SYudit.cpp:1549 msgid "Opened: " msgstr "" #: SYudit.cpp:1558 msgid " Line Break:" msgstr "" #: SYudit.cpp:1563 SYudit.cpp:1704 msgid " Incomplete Last Line..." msgstr "" #: SYudit.cpp:1626 msgid "usage: save -e utf-8 -yes filename" msgstr "" #: SYudit.cpp:1635 msgid "File exists. Use -yes option." msgstr "" #: SYudit.cpp:1657 msgid "Can not write: " msgstr "" #: SYudit.cpp:1680 msgid "Error while writing: " msgstr "" #: SYudit.cpp:1697 msgid "Wrote: " msgstr "" #: SYudit.cpp:1720 msgid "usage: go line [column] " msgstr "" #: SYudit.cpp:1756 msgid "usage: find text" msgstr "" #: SYudit.cpp:1762 SYudit.cpp:1787 msgid "search string not found." msgstr "" #: SYudit.cpp:1781 msgid "usage: replace original new" msgstr "" #: SYudit.cpp:2002 msgid "Could not save preferences" msgstr "" #: SYudit.cpp:2023 msgid "unsupported text/uri: " msgstr "" #: SYudit.cpp:2387 SYudit.cpp:2414 SYudit.cpp:2429 msgid "Command not found: " msgstr "" #: SYudit.cpp:2521 msgid "" "usage: print [-o file] [-p printer] [-e exec] [-break] [-hsize header-font-" "size]" msgstr "" ./gui/SToolBar.cpp0000644000175000017500000006270610727516667014046 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gui/SToolBar.h" #include "gui/Main.h" #include "swidget/SIconFactory.h" SToolBarListener::SToolBarListener(void) { } SToolBarListener::~SToolBarListener() { } void SToolBarListener::buttonEnter (void* src, int button) { } void SToolBarListener::buttonLeave (void* src, int button) { } /** * a button panel is just a panel of buttons. */ SToolBar::SToolBar (const SProperties props) { currentEvent = (int) SD_PARSING_DONE; displayEvent = (int) SD_PARSING_DONE; iconUpdater = 0; xmanagerCludge = true; unsigned int i; listener = 0; modified = false; printing = false; editorLR = true; overrideLR = false; embedLR = false; currentLR = true; fonts = SStringVector (props["yudit.editor.fonts"]); if (fonts.size()==0) fonts.append ("default"); fontsizes = SStringVector (props["yudit.editor.fontsizes"]); if (fontsizes.size()==0) fontsizes.append ("16"); inputs = SStringVector (props["yudit.editor.inputs"]); buildDisplayInputs(); if (inputs.size()==0) inputs.append ("straight"); SString sf = props["yudit.editor.font"]; currentFont = 0; for (i=0;isetFont(font, fontSize); buttons[i]->setForeground (tfg); buttons[i]->setButtonListener (this); SDimension wp; switch (i) { case SS_PARAGRAPH_BREAK: wp = getMaxSize (buttons[i], paragraphBreakStrings, paragraphBreakStrings[currentParagraphSeparator]); break; case SS_FONT: wp = getMaxSize (buttons[i], fonts, fonts[currentFont]); break; /* too big. case SS_MAGNIFY_PLUS: case SS_MAGNIFY_MINUS: wp = getMaxSize (buttons[i], fontsizes); break; */ case SS_INPUT: wp = getMaxSize (buttons[i], displayInputs, displayInputs[currentInput]); break; default: wp = buttons[i]->getPreferredSize(); } buttons[i]->resize(wp); buttons[i]->move(SLocation ((int)p, wp.height)); add (buttons[i]); p+= wp.width + 2; if (wp.height > h) h = wp.height; } for (i=0; i<(unsigned int) SS_MAX; i++) { buttons[i]->move(SLocation (buttons[i]->getLocation().x, (int)h)); } preferredWidth = p; preferredSize = SDimension (p, 2*h); title = new SOpaqueLabel ("", SIconFactory::getIcon("Document")); title->setFont(font, fontSize); title->setForeground (fg); title->move (SLocation (0,0)); title->resize (SDimension (p, h)); titleEncoding = new SOpaqueLabel ("utf-8"); titleEncoding->setFont(font, fontSize); titleEncoding->setForeground (fg); titleEncoding->move (SLocation (0,0)); titleEncoding->resize (SDimension (p, h)); tooltip = new SLabel ("", SIconFactory::getIcon("Help")); tooltip->setFont(font, fontSize); //tooltip->setForeground (fg); /* when the overall background will be set this will get screwed up a bit. */ tooltip->setBackground (SColor("yellow").lighter()); add (tooltip); tooltip->resize (SDimension (p, h)); tooltip->move (SLocation (0, -2*(int)h)); add (title); add (titleEncoding); iconUpdater = new SIconUpdater (window, title, ¤tEvent, &displayEvent); CHECK_NEW (iconUpdater); } /** * The inputs and currentInput has changed. Re-make menu */ void SToolBar::inputChanged (const SStringVector& _inputs, unsigned int _current) { SButton* cb = buttons[SS_INPUT]; SDimension oldSize = cb->getSize(); /* move all buttons */ inputs = _inputs; currentInput = _current; buildDisplayInputs(); SDimension wp = getMaxSize (cb, displayInputs, displayInputs[currentInput]); int delta = (int) wp.width - (int) oldSize.width; unsigned int i; if (delta != 0) { cb->resize (SDimension ((int)oldSize.width + delta, oldSize.height)); for (i=1 + (unsigned int) SS_INPUT; i<(unsigned int) SS_MAX; i++) { buttons[i]->move( SLocation (buttons[i]->getLocation().x+delta, buttons[i]->getLocation().y)); } } cb->setText (displayInputs[currentInput]); } /** * To save display space we don't display the locale at * the end of the x-input-locale input methods. */ void SToolBar::buildDisplayInputs() { SStringVector plain; for (unsigned i=0; i2 && (s[0]=='x' || s[0]=='X') && s[1] == '-') { for (unsigned j=2; jredraw (true, title->getLocation().x, title->getLocation().y, title->getSize().width, title->getSize().height); window->redraw (true, titleEncoding->getLocation().x, titleEncoding->getLocation().y, titleEncoding->getSize().width, titleEncoding->getSize().height); SString fn; //fn.append ("["); fn.append (_encoding); //fn.append ("]"); titleEncoding->setText (fn); title->setText (_filename); SDimension td = title->getPreferredSize(); SDimension ted = titleEncoding->getPreferredSize(); unsigned int sx = (td.width + ted.width > getSize().width) ? 0 : (getSize().width - td.width - ted.width)/2; //titleEncoding->move (SLocation (sx,0)); titleEncoding->move (SLocation (0,0)); titleEncoding->resize (SDimension (ted.width, td.height)); title->move (SLocation (sx+(int)ted.width,0)); title->resize (SDimension (td)); window->redraw (true, title->getLocation().x, title->getLocation().y, title->getSize().width, title->getSize().height); window->redraw (true, titleEncoding->getLocation().x, titleEncoding->getLocation().y, titleEncoding->getSize().width, titleEncoding->getSize().height); } void SToolBar::resize(const SDimension & d) { SPanel::resize(d); window->redraw (true, title->getLocation().x, title->getLocation().y, title->getSize().width, title->getSize().height); window->redraw (true, titleEncoding->getLocation().x, titleEncoding->getLocation().y, titleEncoding->getSize().width, titleEncoding->getSize().height); SDimension td = title->getPreferredSize(); SDimension ted = titleEncoding->getPreferredSize(); unsigned int sx = (td.width + ted.width > getSize().width) ? 0 : (getSize().width - td.width - ted.width)/2; //titleEncoding->move (SLocation (sx,0)); titleEncoding->move (SLocation (0,0)); titleEncoding->resize (SDimension (ted.width, td.height)); title->move (SLocation (sx+(int)ted.width,0)); title->resize (SDimension (td)); window->redraw (true, title->getLocation().x, title->getLocation().y, title->getSize().width, title->getSize().height); window->redraw (true, titleEncoding->getLocation().x, titleEncoding->getLocation().y, titleEncoding->getSize().width, titleEncoding->getSize().height); /* we only need to do it once. */ if (!xmanagerCludge) { return; } xmanagerCludge = false; /** * This is XManager bug wrokaround. * We don't really need to resize these guys. */ for (unsigned int i=0; i<(unsigned int) SS_MAX; i++) { SDimension wp; switch (i) { case SS_PARAGRAPH_BREAK: wp = getMaxSize (buttons[i], paragraphBreakStrings, paragraphBreakStrings[currentParagraphSeparator]); break; case SS_FONT: wp = getMaxSize (buttons[i], fonts, fonts[currentFont]); break; case SS_INPUT: wp = getMaxSize (buttons[i], displayInputs, displayInputs[currentInput]); break; default: wp = buttons[i]->getPreferredSize(); } buttons[i]->resize(wp); } } void SToolBar::setListener (SToolBarListener* l) { listener = l; } void SToolBar::redraw(SWindow* w, int x, int y, unsigned int width ,unsigned int height) { SPanel::redraw(w, x, y, width, height); } void SToolBar::buttonPressed (void* source, const SAccelerator* accel) { for (unsigned int i=0; i<(unsigned int) SS_MAX; i++) { if (source == buttons[i]) { if (i == SS_SET_OVERRIDE) { if (listener) listener->buttonPressed (this, i, accel!=0); /* it is listener->buttonPressed that can change it */ break; } if (i == SS_SET_EMBEDDING) { if (listener) listener->buttonPressed (this, i, accel!=0); /* it is listener->buttonPressed that can change it */ break; } if (i == SS_YIELD_EMBEDDING) { if (listener) listener->buttonPressed (this, i, accel!=0); /* it is listener->buttonPressed that can change it */ break; } int indx = getFAccelerator (accel); switch (i) { case SS_DOCUMENT_EMBEDDING: indx = (((int)currentEmbedding)+1) % 3; setEmbedding ((SS_Embedding)indx, true); break; case SS_PARAGRAPH_BREAK: indx = (currentParagraphSeparator+1) % paragraphBreaks.size(); setParagraphSeparator (indx, true); break; case SS_INPUT: if (accel==0) { if (listener) listener->buttonPressed (this, i, false); return; } if (indx < 0 && inputs.size() > 1) { indx = currentInput; do { indx = (indx+1) % inputs.size(); if (inputs[(unsigned int)indx] != "None" && inputs[(unsigned int)indx] != "none") { break; } } while (indx != (int)currentInput); } setInput (indx); break; case SS_MAGNIFY_PLUS: if (currentFontSize+1==fontsizes.size()) break; setFontSize ((int)currentFontSize+1); break; case SS_MAGNIFY_MINUS: if (currentFontSize ==0) break; setFontSize ((int)currentFontSize-1); break; case SS_FONT: if (indx < 0 && fonts.size() > 1) { indx = currentFont; do { indx = (indx+1) % fonts.size(); if (fonts[(unsigned int)indx] != "None" && fonts[(unsigned int)indx] != "none") { break; } } while (indx != (int)currentFont); } setFont (indx); break; default: if (listener) listener->buttonPressed (this, i, accel!=0); } } } } void SToolBar::enterWindow (void* source) { for (unsigned int i=0; i<(unsigned int) SS_MAX; i++) { if (source == buttons[i]) { SString str; int max = -1; switch (i) { case SS_OPEN: str = translate ("__O__pen"); break; case SS_FIND: str = translate ("Find(__Q__)"); break; case SS_GOTO: str = translate ("__G__o To"); break; case SS_SAVE: if (modified) { str = translate ("__S__ave (needed)"); } else { str = translate ("__S__ave"); } break; case SS_PRINT: if (printing) { str = translate ("__P__rint (pending job)"); break; } else { str = translate ("__P__rint"); break; } case SS_PRINT_PREVIEW: if (printing) { str = translate ("Print Previe__w__ (pending job)"); break; } else { str = translate ("Print Previe__w__"); break; } case SS_UNDO: str = translate ("__U__ndo"); break; case SS_REDO: str = translate ("__R__edo"); break; case SS_DOCUMENT_EMBEDDING: str = translate ("Document __T__ext Embedding"); break; case SS_SET_OVERRIDE: str = translate ("__D__irection Override"); break; case SS_SET_EMBEDDING: str = translate ("__E__mbedding Override"); break; case SS_YIELD_EMBEDDING: str = translate ("__Y__ield Embedding"); break; case SS_MAGNIFY_MINUS: str = translate ("Smaller(__A__)"); break; case SS_MAGNIFY_PLUS: str = translate ("Bigger(__Z__)"); break; case SS_HIGHLIGHTING: str = translate ("__H__ighlighting"); if (highlightName != "") { str.append (" "); str.append (highlightName); } break; case SS_FONT: str = translate ("Font"); max = (int)fonts.size(); break; case SS_INPUT: str = translate ("Input"); max = (int)inputs.size(); break; case SS_PARAGRAPH_BREAK: str = translate ("Line Break"); break; default: break; } if (max > 0) { char aa[64]; if (max > 1) { sprintf (aa, "%s(__%sF1..F%d__)%s", SS_LB_LRE, (i==(unsigned int)SS_FONT) ? "shift-" : "", (max), SS_LB_PDF); } else { sprintf (aa, "%s(__%sF1__)%s", SS_LB_LRE, (i==(unsigned int)SS_FONT) ? "shift-" : "", SS_LB_PDF); } str.append (SString(aa)); } SLocation loc = buttons[i]->getLocation (); tooltip->setText (str); SDimension ld=tooltip->getPreferredSize(); SLocation lmax((int) getSize().width - (int)ld.width, 2); if (lmax.x < loc.x) loc.x = lmax.x; loc.y = 0; tooltip->move (loc); tooltip->resize (ld); tooltip->setBackground (SColor("black")); tooltip->setLabelBackground (SColor("yellow").lighter().lighter()); if (listener) listener->buttonLeave (this, i); } } } void SToolBar::leaveWindow (void* source) { for (unsigned int i=0; i<(unsigned int) SS_MAX; i++) { if (source == buttons[i]) { tooltip->setText (""); tooltip->move (SLocation (0, - 2 *(int)getSize().height)); if (listener) listener->buttonEnter (this, i); } } } /** * Assign the button all text in list and get the max size */ SDimension SToolBar::getMaxSize (SButton* b, const SStringVector&l, const SString& orig) { SDimension max; for (unsigned int i=0; isetText (l[i]); SDimension d = b->getPreferredSize(); if (d.width > max.width) max.width = d.width; if (d.height > max.height) max.height = d.height; } b->setText (orig); return SDimension (max); } /** * Make an F-key accelerator */ void SToolBar::setFAccelerator (SButton* b, unsigned int se, bool ctrl) { for (unsigned int i=0; iaddAccelerator (key, ctrl, false, false); if (ctrl) { b->addAccelerator (key, false, ctrl, false); b->addAccelerator (key, ctrl, ctrl, false); b->addAccelerator (key, false, false, ctrl); b->addAccelerator (key, ctrl, false, ctrl); b->addAccelerator (key, false, ctrl, ctrl); b->addAccelerator (key, ctrl, ctrl, ctrl); } } } /** * decode the F-Key */ int SToolBar::getFAccelerator (const SAccelerator* accel) { if (accel==0) return -1; int ret = -1; switch (accel->key) { case SWindowListener::Key_F1: ret = 0; break; case SWindowListener::Key_F2: ret = 1; break; case SWindowListener::Key_F3: ret = 2; break; case SWindowListener::Key_F4: ret = 3; break; case SWindowListener::Key_F5: ret = 4; break; case SWindowListener::Key_F6: ret = 5; break; case SWindowListener::Key_F7: ret = 6; break; case SWindowListener::Key_F8: ret = 7; break; case SWindowListener::Key_F9: ret = 8; break; case SWindowListener::Key_F10: ret = 9; break; case SWindowListener::Key_F11: ret = 10; break; case SWindowListener::Key_F12: ret = 11; break; default: break; } return ret; } void SToolBar::setFont (int index) { if (index < 0) return; if (index >= (int)fonts.size()) return; if (index == (int) currentFont) return; if (fonts[(unsigned int)index] == "none" || fonts[(unsigned int)index] == "None") return; currentFont = index; setButton (SS_FONT, fonts[currentFont], true); } void SToolBar::setFontSize (int index) { if (index < 0) return; if (index >= (int)fontsizes.size()) return; if (index == (int) currentFontSize) return; bool up = (index > (int)currentFontSize); currentFontSize = index; setButton (up ? SS_MAGNIFY_PLUS : SS_MAGNIFY_MINUS, fontsizes[currentFontSize], true); } void SToolBar::setInput (int index) { if (index < 0) return; if (index >= (int)inputs.size()) return; if (index == (int) currentInput) return; if (inputs[(unsigned int)index] == "none" || inputs[(unsigned int)index] == "None") return; currentInput = index; setButton (SS_INPUT, displayInputs[currentInput], true); } void SToolBar::setParagraphSeparator (int index, bool notify) { if (index < 0) return; if (index >= (int) paragraphBreaks.size()) return; if (index == (int) currentParagraphSeparator) return; currentParagraphSeparator = (unsigned int) index; setButton (SS_PARAGRAPH_BREAK, paragraphBreakStrings[currentParagraphSeparator], notify); } void SToolBar::setEmbedding (SS_Embedding index, bool notify) { if (index == currentEmbedding) return; currentEmbedding = index; setButton (SS_DOCUMENT_EMBEDDING, SString(), notify); } void SToolBar::setButton (SButtonIndex index, const SString& txt, bool notify) { switch (index) { case SS_DOCUMENT_EMBEDDING: case SS_PARAGRAPH_BREAK: case SS_INPUT: case SS_MAGNIFY_PLUS: case SS_MAGNIFY_MINUS: case SS_FONT: break; default: return; } SButton* b = buttons[index]; if (index == SS_PARAGRAPH_BREAK) { SIcon* icon = 0; switch (currentParagraphSeparator) { case SS_FORMAT_UNIX: icon = SIconFactory::getIcon("UNIX"); break; case SS_FORMAT_DOS: icon = SIconFactory::getIcon("DOS"); break; case SS_FORMAT_MAC: icon = SIconFactory::getIcon("MAC"); break; case SS_FORMAT_PS: icon = SIconFactory::getIcon("PS"); break; default: break; } b->setIcon (icon); } if (index == SS_DOCUMENT_EMBEDDING) { SIcon* icon = 0; switch (currentEmbedding) { case SS_EmbedNone: icon = SIconFactory::getIcon("EmbedNone"); break; case SS_EmbedLeft: icon = SIconFactory::getIcon("EmbedLeft"); break; case SS_EmbedRight: icon = SIconFactory::getIcon("EmbedRight"); break; default: break; } b->setIcon (icon); } if (index != SS_MAGNIFY_PLUS && index != SS_MAGNIFY_MINUS && index != SS_DOCUMENT_EMBEDDING) { b->setText (txt); } if (notify && listener) { listener->buttonPressed (this, (unsigned int) index, true); } } void SToolBar::setModified (bool flag) { if (flag == modified) return; modified = flag; if (modified) { //buttons[SS_SAVE]->setButtonBackground (SColor("#DF0049")); buttons[SS_SAVE]->setIcon (SIconFactory::getIcon("Save")); } else { //buttons[SS_SAVE]->setButtonBackground (background); buttons[SS_SAVE]->setIcon (SIconFactory::getIcon("SaveNotNeeded")); } } void SToolBar::setPrinting (bool flag) { if (flag == printing) return; printing = flag; if (printing) { buttons[SS_PRINT]->setButtonBackground (SColor("#DF0049")); buttons[SS_PRINT_PREVIEW]->setButtonBackground (SColor("#DF0049")); } else { buttons[SS_PRINT]->setButtonBackground (background); buttons[SS_PRINT_PREVIEW]->setButtonBackground (background); } } /** * The direction has changed in editor - redo ours. */ void SToolBar::directionChanged (bool lr) { if (overrideLR == lr) { buttons[SS_SET_OVERRIDE]->setIcon (SIconFactory::getIcon( !overrideLR ? "LRO" : "RLO")); } if (embedLR == lr) { buttons[SS_SET_EMBEDDING]->setIcon (SIconFactory::getIcon( !embedLR ? "LRE" : "RLE")); } if (currentLR != lr) { buttons[SS_YIELD_EMBEDDING]->setIcon (SIconFactory::getIcon( !currentLR ? "LR" : "RL")); } overrideLR = !lr; embedLR = !lr; currentLR = lr; } void SToolBar::syntaxChanged (SS_EventType _evnt) { currentEvent = (int)_evnt; if (currentEvent != displayEvent) iconUpdater->start (); } SIconUpdater::SIconUpdater (SWindow* _w, SOpaqueLabel* _label, int* _currentEvent, int* _displayEvent) { label = _label; window = _w; currentEvent = _currentEvent; displayEvent = _displayEvent; eventTimer = 0; } SIconUpdater::~SIconUpdater () { if (eventTimer) delete eventTimer; } void SIconUpdater::start () { if (eventTimer) return; eventTimer = STimer::newTimer(1000, this); } bool SIconUpdater::timeout (const SEventSource* s) { delete eventTimer; eventTimer = 0; if (*displayEvent == *currentEvent) { return false; } *displayEvent = *currentEvent; SSyntaxListener::SS_EventType _evnt = (SSyntaxListener::SS_EventType) *displayEvent; switch (_evnt) { case SSyntaxListener::SD_PARSING_STARTED: label->setIcon (SIconFactory::getIcon("DocumentXX")); break; case SSyntaxListener::SD_PARSING_DONE: label->setIcon (SIconFactory::getIcon("Document")); break; default: label->setIcon (SIconFactory::getIcon("DocumentCX")); break; } window->redraw (true, label->getLocation().x, label->getLocation().y, label->getSize().width, label->getSize().height); return false; } ./gui/Main.cpp0000644000175000017500000002663610727351317013234 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifdef USE_GETTEXT extern "C" { #include } #endif #include #include "gui/Main.h" #include "gui/SYudit.h" #include "stoolkit/SString.h" #include "stoolkit/SStringVector.h" #include "stoolkit/SProperties.h" #include "stoolkit/SIO.h" #include "stoolkit/SIOStream.h" #include "stoolkit/SUniMap.h" #include "stoolkit/SUtil.h" #include "swindow/SFontImpl.h" #include "stoolkit/syntax/SSyntax.h" #include "swindow/SAwt.h" #ifndef USE_WINAPI #include #include #include #endif int main (int argc, char* argv[]) { /* have to set the path before awt */ SUniMap::guessPath (); SSyntax::guessPath (); unsigned int i; unsigned int j; SString home = getHome(); SString yuditdir = getPrefix(); SString dotdir = home; dotdir.append ("/"); dotdir.append (".yudit"); SDir d (dotdir); if (!d.exists()) { if (d.create()) { fprintf (stderr, "yudit: created directory `%*.*s'\n", SSARGS (dotdir)); } else { fprintf (stderr, "yudit: can not create directory `%*.*s'\n", SSARGS (dotdir)); // don't exit on windows ! They won't know a thing. //exit (1); } } else if (!d.readable()) { fprintf (stderr, "yudit: Can not read directory `%*.*s'\n", SSARGS (dotdir)); } SString fontdir(dotdir); fontdir.append ("/"); fontdir.append ("fonts"); SDir dfont (fontdir); if (!dfont.exists()) { dfont.create (); } SString dotdata(dotdir); dotdata.append ("/"); dotdata.append ("data"); SDir ddotdata (dotdata); if (!ddotdata.exists()) { ddotdata.create (); } SString dotsyntax(dotdir); dotsyntax.append ("/"); dotsyntax.append ("syntax"); SDir ddotsyntax (dotsyntax); if (!ddotsyntax.exists()) { ddotsyntax.create (); } SStringVector args; SProperties properties; /** *----------------------------------------------------------------------- * The default configuration section this will always be here. *----------------------------------------------------------------------- */ //properties.put ("yudit.datapath", ); //properties.put ("yudit.fontpath", ); properties.put ("yudit.background", "gray50"); properties.put ("yudit.label.foreground", "moccasin"); properties.put ("yudit.title.foreground", "white"); properties.put ("yudit.default.font", "default"); properties.put ("yudit.default.fontsize", "16"); properties.put ("yudit.default.geometry", "765x510"); properties.put ("yudit.freehand.converter", "kanji"); properties.put ("yudit.editor.background", "black"); properties.put ("yudit.editor.left.foreground", "green"); properties.put ("yudit.editor.right.foreground", "yellow"); properties.put ("yudit.editor.caret.left.foreground", "red"); properties.put ("yudit.editor.caret.right.foreground", "red"); properties.put ("yudit.editor.showbreak", "true"); /* enable syntax simple for people with old config file */ properties.put ("yudit.editor.syntax", "simple"); /* don't enable wordwrap for people with old config file */ properties.put ("yudit.editor.wordwrap", "false"); /* do over-the spot xim */ properties.put ("yudit.editor.xinputs.style", "preedit-over-status-under"); properties.put ("yudit.command.background", "black"); properties.put ("yudit.command.left.foreground", "green"); properties.put ("yudit.command.right.foreground", "yellow"); properties.put ("yudit.command.caret.left.foreground", "red"); properties.put ("yudit.command.caret.right.foreground", "red"); properties.put ("yudit.slider.background", "#497986"); properties.put ("yudit.editor.fontsizes", "10,12,14,16,24,48"); properties.put ("yudit.editor.fonts", "default,TrueType,Bitmap"); #ifdef USE_WINAPI properties.put ("yudit.editor.inputs", "straight,unicode,WindowsIM,Hungarian,Hangul," "Kana,Mnemonic,Esperanto,Arabic,Hebrew," "Russian,HungarianRunes"); #else properties.put ("yudit.editor.inputs", "straight,unicode,kinput2,Hungarian,Hangul," "Kana,Mnemonic,Esperanto,Arabic,Hebrew," "Russian,HungarianRunes"); #endif if (isWinAPI()) { properties.put ("yudit.editor.xinputs", ""); } else { properties.put ("yudit.editor.xinputs", "utf-8:en_GB,utf-8:hu_HU,kinput2:ja_JP.eucJP,xcin:zh_TW.big5,Ami:ko_KR,xcin-zh_CN.GB2312:zh_CN.GB2312"); } properties.put ("yudit.editor.fontsize", "16"); properties.put ("yudit.editor.font", "default"); properties.put ("yudit.editor.input", "straight"); properties.put ("yudit.fonts", "default,TrueType,Bitmap"); properties.put ("yudit.font.TrueType", "arial.ttf,msgothic.ttf,gulim.ttf," "-*-*-*-*-*--*-*-*-*-*-*-iso8859-1," "cyberbit.ttf,yudit.ttf:cp-1250"); properties.put ("yudit.font.Bitmap", "-gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1,*-iso8859-1," "jisx0208.1983-0," "jisx0201.1976-0," "-sony-fixed-medium-r-normal--*-230-75-75-c-120-iso8859-1"); properties.put ("yudit.default.printer.options", ""); properties.put ("yudit.default.preview.command", "gv"); /** * override everything with system prop */ SString yuditconfig(yuditdir); yuditconfig.append ("/config/yudit.properties"); if (!loadProperties (yuditconfig, &properties)) { fprintf (stderr, "could not load `%*.*s'.\n", SSARGS(yuditconfig)); } else { //fprintf (stderr, "loaded `%*.*s'.\n", SSARGS(yuditconfig)); } /** * User defined properties */ SProperties userProperties; userProperties.put ("yudit.default.clipboard.encoding", "iso-2022-x11"); userProperties.put ("yudit.default.filetype", "utf-8"); SString userconfig (dotdir); userconfig.append ("/yudit.properties"); bool firsttime = false; if (!loadProperties (userconfig, &userProperties)) { firsttime = true; //fprintf (stderr, "could not load `%*.*s'(not an error).\n", // SSARGS(userconfig)); } else { //fprintf (stderr, "loaded `%*.*s'.\n", SSARGS(userconfig)); const SString *str = userProperties.get ("yudit.default.preview.command"); /* compatibility. remove this. */ if (str!=0) { const SString& ustr = *str; if (ustr.size() > 0 && ustr[0] == '-' && ustr[1] == 'e') { const SString& gvle = properties["yudit.default.preview.command"]; fprintf (stderr, "moving yudit.default.preview.command '%*.*s' to '%*.*s' (compatibility 2.5).\n", SSARGS(ustr), SSARGS(gvle)); fprintf (stderr, "To get rid of this message set your yudit.default.preview.command in %*.*s (like: gv).\n", SSARGS (userconfig)); userProperties.put ("yudit.default.preview.command", SString(gvle)); } } } SProperties allProperties(properties); userProperties.remove ("00HEADER.#"); userProperties.remove ("yudit.default.language.#"); // rewrite old user properties if (userProperties.get ("00HEADER.version.yudit") == 0 || userProperties["00HEADER.version.yudit"].compare (SD_YUDIT_VERSION) < 0) { // upgrade: our preferred geometry has changed. userProperties.put ("yudit.default.geometry", "765x510"); } allProperties.merge (userProperties); if (allProperties.get ("yudit.default.file")==0) { allProperties.put ("yudit.default.file", "untitled.utf8"); } /* you can not override this */ allProperties.put ("yudit.config", userconfig); SStringVector ve(allProperties["yudit.editor.fonts"]); SStringVector vy(allProperties["yudit.fonts"]); for (i=0; i1 && v[1].size()!=0) enc = v[1]; SFontImpl impl (v[0], enc); if (v.size()>2 && v[2].size()>0) { SStringVector pvect(v[2], ";"); SProperties props; for (unsigned int j=0; j0 && lang!=SString("default")) { /* no spaces */ setLanguage (lang); } else if (lang==SString("default")) { setLanguage (getSystemLanguage ("en")); } } SYudit *yudit = new SYudit (args, allProperties); #ifdef USE_WINAPI /* they have no concept of window managers */ yudit->center(); #endif yudit->show(); SEventHandler::start(); return 0; } ./gui/Main.h0000644000175000017500000000151710434025606012662 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef Main_h #define Main_h #include "stoolkit/SUtil.h" #endif /* Main_h */ ./Makefile.in0000644000175000017500000001433110725766717013126 0ustar henrichhenrichinclude Makefile.conf SUBDIRS=stoolkit swindow mytool swidget uniconv uniprint gui SUBDIRS_all:=$(foreach dir, $(SUBDIRS), $(dir)_all) SUBDIRS_clean:=$(foreach dir, $(SUBDIRS), $(dir)_clean) .PHONY: $(SUBDIRS_all) $(SUBDIRS_clean) all: $(SUBDIRS_all) @echo "M----------------------------------------------------" @echo "Everything is made. You can type 'make install' now." @echo "M----------------------------------------------------" $(SUBDIRS_all): $(MAKE) -C $(patsubst %_all,%,$@) all $(SUBDIRS_clean): $(MAKE) -C $(patsubst %_clean,%,$@) clean clean: $(SUBDIRS_clean) rm -f core */core */*/core rm -rf SunWS_cache */SunWS_cache */*/SunWS_cache rm -f *.pdb */*.pdb */*/*.pdb rm -f *.ilk */*.ilk */*/*.ilk rm -f *.opt */*.opt */*/*.opt rm -f */*.lib */*/*.lib veryclean: clean rm -f */.depend rm -f config.cache config.log config.status autom4te.cache rm -f Makefile distclean: veryclean depend: @for i in $(SUBDIRS); do \ cd $$i ; $(MAKE) depend; \ if [ $$? != 0 ]; then \ cd ..; \ exit 1; \ fi; \ cd ..; \ done install: @if test ! -d $(DESTDIR)/$(prefix) ;then mkdir -p $(DESTDIR)/$(prefix); fi @if test ! -d $(DESTDIR)/$(bindir) ;then mkdir -p $(DESTDIR)/$(bindir); fi @if test ! -d $(DESTDIR)/$(mandir); then mkdir -p $(DESTDIR)/$(mandir);fi @if test ! -d $(DESTDIR)/$(mandir)/man1; then mkdir -p $(DESTDIR)/$(mandir)/man1;fi @if test ! -d $(DESTDIR)/$(datadir) ; then mkdir -p $(DESTDIR)/$(datadir);fi @if test ! -d $(DESTDIR)/$(datadir)/yudit ; then mkdir -p $(DESTDIR)/$(datadir)/yudit;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/data ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/data;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/config ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/config;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/fonts ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/fonts;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/syntax ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/syntax;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/locale;then mkdir -p $(DESTDIR)/$(datadir)/yudit/locale;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/src;then mkdir -p $(DESTDIR)/$(datadir)/yudit/src;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/cs;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/cs;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/de;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/de;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/bg;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/bg;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/ja;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/ja;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/hu;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/hu;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/ko;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/ko;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/yi;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/yi;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/es;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/es;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/fi;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/fi;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/vi;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/vi;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/doc/zh;then mkdir -p $(DESTDIR)/$(datadir)/yudit/doc/zh;fi @for i in $(SUBDIRS); do \ cd $$i ; $(MAKE) install; \ if [ $$? != 0 ]; then \ cd ..; \ exit 1; \ fi; \ cd ..; \ done $(INSTALL_DATA) gnome-yudit.png $(DESTDIR)/$(datadir)/yudit/data $(INSTALL_DATA) yudit.properties $(DESTDIR)/$(datadir)/yudit/config $(INSTALL_DATA) doc/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) doc/cs/COPYING-DOCS $(DESTDIR)/$(datadir)/yudit/doc/cs/COPYING-DOCS $(INSTALL_DATA) doc/cs/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/cs/FAQ.TXT $(INSTALL_DATA) doc/cs/HOWTO-configure.txt $(DESTDIR)/$(datadir)/yudit/doc/cs/HOWTO-configure.txt $(INSTALL_DATA) doc/cs/HOWTO-keymap.txt $(DESTDIR)/$(datadir)/yudit/doc/cs/HOWTO-keymap.txt $(INSTALL_DATA) doc/cs/HOWTO-windows.txt $(DESTDIR)/$(datadir)/yudit/doc/cs/HOWTO-windows.txt $(INSTALL_DATA) doc/cs/CHANGELOG-DOCS.TXT $(DESTDIR)/$(datadir)/yudit/doc/cs/CHANGELOG-DOCS.TXT $(INSTALL_DATA) doc/cs/README-DOCS.TXT $(DESTDIR)/$(datadir)/yudit/doc/cs/README-DOCS.TXT $(INSTALL_DATA) doc/cs/TODO-DOCS.TXT $(DESTDIR)/$(datadir)/yudit/doc/cs/TODO-DOCS.TXT $(INSTALL_DATA) doc/de/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/de/FAQ.TXT $(INSTALL_DATA) doc/ja/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/ja/FAQ.TXT $(INSTALL_DATA) doc/hu/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/hu/FAQ.TXT $(INSTALL_DATA) doc/ko/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/ko/FAQ.TXT $(INSTALL_DATA) doc/yi/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/yi/FAQ.TXT $(INSTALL_DATA) doc/es/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/es/FAQ.TXT $(INSTALL_DATA) doc/fi/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/fi/FAQ.TXT $(INSTALL_DATA) doc/ru/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/ru/FAQ.TXT $(INSTALL_DATA) doc/zh/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/zh/FAQ.TXT $(INSTALL_DATA) doc/vi/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/vi/FAQ.TXT $(INSTALL_DATA) doc/bg/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/bg/FAQ.TXT $(INSTALL_DATA) doc/sr/FAQ.TXT $(DESTDIR)/$(datadir)/yudit/doc/sr/FAQ.TXT $(INSTALL_DATA) README.TXT $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) COPYING.TXT $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) doc/TestPage.txt $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) doc/my-format.txt $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) doc/UTF-8-test.txt $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) doc/UTF-8-demo.txt $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) doc/UTF-8-demo-README.txt $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) doc/HOWTO-*.txt $(DESTDIR)/$(datadir)/yudit/doc $(INSTALL_DATA) fonts/README.TXT $(DESTDIR)/$(datadir)/yudit/fonts $(INSTALL_DATA) fonts/yudit.ttf $(DESTDIR)/$(datadir)/yudit/fonts $(INSTALL_DATA) fonts/yudit.hex $(DESTDIR)/$(datadir)/yudit/fonts $(INSTALL_DATA) syntax/*.* $(DESTDIR)/$(datadir)/yudit/syntax @echo "---------------------------------------------------" @echo "Everything is installed. You can use @bindir@/yudit" @echo "Have fun!" @echo "Gaspar - gaspar@yudit.org." @echo "---------------------------------------------------" ./syntax/0000755000175000017500000000000011331202271012353 5ustar henrichhenrich./syntax/README.TXT0000644000175000017500000000214111331202150013703 0ustar henrichhenrichYudit Author: Gaspar Sinai Version: 2010-01-31 This directory contains files for the "Highlighting" functionatily in Yudit. With highlighting, characters can have different colors according to certain highlighting rules. One major addition to highlighting was the support of hunspell program. Hunspell is an external module that Yudit can use for spell checking. It was written by Nemeth Laszlo for Open Office (nemeth (at) OpenOffice.org). For Windows the yudit_syntax installer provides some sample (hu_HU en_US) files from the original web-site together with a pre-compiled library, that used the source from the original Hunspell web-site. For unix users I compiled a syntax-version.tar.gz tarball that contains the files that should go into ~/.yudit/syntax directory. Hunspell web-site (to complile hunspell.so): http://hunspell.sourceforge.net/ Dictionaries (.dic, .aff files) export CVSROOT=":pserver:anoncvs@anoncvs.services.openoffice.org:/cvs" cvs co dictionaries To see how highlighting works in Yudit, just type howto syntax in the editor command area. ./yudit.properties.in0000644000175000017500000002735411331173660014732 0ustar henrichhenrich# Yudit properties # # A property file for yudit. If a particular property is # both present in # # @prefix@/share/yudit/yudit.properties # # and in # # ~/.yudit/yudit.properties # # the latter will be used. # # Format: # property=value # property=listelement1,listelement2 # '\' is treated as a line joiner if it stands at the end of line. # # Caution # Entries should not contain any white space. # Lines that start with '#' are treated as comments of the # line below. # Comments are merged too. # The following properties will always have system comments: # # 00HEADER # yudit.default.language # 00HEADER= # # This is where the .my files are # yudit.datapath=@YUDIT_DATA@/data # # This is where the .ttf (True Type font) files are # yudit.fontpath=@YUDIT_DATA@/fonts,/usr/share/yudit/data # # This is where the .syn (Syntax Highlighting) files are # yudit.syntaxpath=@YUDIT_DATA@/syntax,/usr/share/yudit/syntax # The overall background. # new #yudit.editor.background=black yudit.background=gray50 # The overall foreground (text labels, e.t.c.) yudit.label.foreground=moccasin # The overall foreground (labels that have titles) yudit.title.foreground=white # The overall font, fontsize yudit.default.font=default yudit.default.fontsize=16 # # The size of the window # yudit.default.geometry=765x510 # This is the handwriting (freehand) input. you need 'kanji.hwd' for this. yudit.freehand.converter=kanji # # Put your language here. currently I have # am Amharic/Ethiopia # ar Arabic/ # az Azerbaijani Turkish # bn Bengali # bg Bulgaria/Bulgarian # de Germany/German # cs Czechia/Czech # en US/English # el Greece/Greek # es Spain/Spanish # fi Finland/Finnish # fr France/French # ga Irish # gu Gujarati # hi Hindi # hu Hungary/Hungarian # ja Japan/Japanese # ko Korea/Korean # mn Mongolia/Mongolian # mr Marathi # pa Punjabi # pl Polish/Poland # ru Russian/Russia # sl Slovenia/Slovenian # sr Yugoslavia/Serbian # ta Tamil # uk Ukrainian # ur Urdu/Pakistan # vi Vietnamese/Vietnam # yi Israel/Yiddish # zh Chinese/HongKong # zh_CN Chinese (Simplified) # # If you leave it empty English is used. # If you specify yudit.default.language=default, then LANG environment # variable is used. Be careful - you may not have the font! # yudit.default.language= # # Things will be put on X11 clipboard with this encoding. # This should be a compound text encoding. # yudit.default.clipboard.encoding=iso-2022-x11 # # The following always get updated and written to # ~/.yudit/yudit.properties # yudit.default.filetype=utf-8 yudit.default.printer.options= # # From version 2.5 -e will be passed to mytool -pipecmd # Which will create a tmp file and pass it to gv. # when gv exits the temporary file is deleted # On windows only preview/printing is available for now. # yudit.default.preview.command=gv # # Windows. # www.ghostgum.com.au #yudit.default.preview.command="C:/Ghostgum/gsview/gsview32.exe" # # The text edit area background. # # try yudit.editor.background=black #yudit.editor.background=white # # Syntax highlighter / spelling checker colors # # There is no # # yudit.editor.syntax.none.foreground # # For NONE and ERROR yudit.editor.left.foreground or # yudit.editor.right.foreground is used, For ERROR # it is underlined with yudit.editor.syntax.error.foreground # yudit.editor.syntax.error.foreground=red yudit.editor.syntax.number.foreground=orange yudit.editor.syntax.string.foreground=magenta yudit.editor.syntax.comment.foreground=lightgray yudit.editor.syntax.token.foreground=yellow yudit.editor.syntax.variable.foreground=red yudit.editor.syntax.define.foreground=cyan yudit.editor.syntax.control.foreground=CornflowerBlue # # Left and right indicate text directions # # This is also literal yudit.editor.left.foreground=green yudit.editor.right.foreground=yellow #yudit.editor.left.foreground=black #yudit.editor.right.foreground=blue yudit.editor.caret.left.foreground=red yudit.editor.caret.right.foreground=red # # This one is to show end of line. # yudit.editor.showbreak=true # # use true to turn word wrapping on # yudit.editor.wordwrap=false # # possible values for syntax hightlighting: # none - no highlighting # simple - numbers: orange, delimiter: blue # yudit.editor.syntax=simple # # The same for command area # yudit.command.background=black yudit.command.left.foreground=green yudit.command.right.foreground=yellow yudit.command.caret.left.foreground=red yudit.command.caret.right.foreground=red # # Slider color # yudit.slider.background=#497986 # # The fontsizes to choose from. # yudit.editor.fontsizes=10,12,13,14,15,16,18,20,24,48 # # The fonts. All of these should be defined in yudit.font. # yudit.editor.fonts=default,TrueType,Misc,Serif,SansSerif,Box,Full,Indic-F,Indic-M # # You can specify "..,None,.." here too. # As for x-utf-8: # en_GB makes sure you will have the iso8859-1 Compose locale. # For other compose rules, please specify the ones you need: # like hu_HU. Please note that only x-utf-8 can have many # different locales. yudit.editor.inputs=straight,unicode,kinput2,Hungarian,freehand,Hangul,\ Kana,Mnemonic,Esperanto,x-ibus:en_US.utf8,x-utf-8:hu_HU,HungarianRunes # # kinput2:ja_JP, for instance will appear as x-kinput2 to save room # but it will be used as x-kinput2-ja_JP # # IBUS: http://code.google.com/p/ibus/ # SCIM: http://www.scim-im.org/ # interxim: http://www.oksid.ch/interxim/index.html # yudit.editor.xinputs=ibus:en_US.utf8,SCIM:en_US.utf-8,interxim,utf-8:en_GB,utf-8:hu_HU,kinput2:ja_JP.eucJP,xcin:zh_TW.big5,Ami:ko_KR,xcin-zh_CN.GB2312:zh_CN.GB2312 # # The x input style for the editor window. # Available styles: # preedit-root-status-root # preedit-over-status-over # preedit-over-status-under # preedit-under-status-under # yudit.editor.xinputs.style=preedit-over-status-under yudit.editor.fontsize=18 yudit.editor.font=default yudit.editor.input=straight yudit.fonts=default,TrueType,Bitmap,Japanese,Courier,Times,Helvetica,Lucida,Misc # # The font definitions used by yudit.editor.fonts and yudit.fonts # Don't mess with 'default' font unless you have to. It is internally defined. # # - For convention always have one yudit.font.TrueType # - Fonts additionally can have an encoding specified, the # ':' character is used as a separator. # The following font hard-coded encoders will act as range selectors: # # indic: U+0900..U+0FFF # deva: U+0900..U+097F # beng: U+0980..U+09FF # guru: U+0A00..U+0A7F # gujr: U+0A80..U+0AFF # orya: U+0B00..U+0B7F # taml: U+0B80..U+0BFF # telu: U+0C00..U+0C7F # knda: U+0C80..U+0CFF # mlym: U+0D00..U+0D7F # sinh: U+0D80..U+0DFF # thai: U+0E00..U+0E7F # lao: U+0E80..U+0EFF # tibt: U+0F00..U+0FFF # jamo: U+1100..U+11FF # # - Fonts, in addition to encoding can have attributes specified. # currently used attributes: # # RL - Strictly Right-To-Left font # LR - Strictly Left-To-Right font # # If not specified it is used as LR or RL and for RL mirrored glyphs # it will get mirrored by software. # yudit.font.TrueType=arial.ttf,gulim.ttf,ogulim.ttf:mslvt,raghu.ttf,tsckanna.ttf:tscii,dc-font.ttf:mlym,MalOtf.ttf:mlym,code2000.ttf,code2001.ttf:unicode:RL,cyberbit.ttf,yudit.ttf # # For convention always have one yudit.font.Bitmap # yudit.font.Bitmap=\ -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1,*-iso8859-1,\ -sony-fixed-medium-r-normal--*-230-75-75-c-120-iso8859-1 # # Direct rendering if you have unifont.hex. # yudit.font.Unifont=unifont.hex,*-iso8859-1 yudit.font.Japanese=\ *-jisx0208.1983-0,\ *-jisx0201.1976-0,\ *-jisx0212.1990-0,\ -adobe-helvetica-medium-r-normal--*-*-*-*-*-*-iso8859-1 # # JIS X 0213 Font # http://www.mars.sphere.ne.jp/imamura/jisx0213.html # yudit.font.JP2000X=\ -gnu-unifont-medium-r-normal--16-160-75-75-p-80-iso10646-1,\ *-jisx0213.2000-1,*-jisx0213.2000-2,\ *-jisx0201.1976-0,\ -adobe-helvetica-medium-r-normal--*-*-*-*-*-*-iso8859-1 # # Serif.ttf is in fact a paid font DFMinchoPPro5-W5.ttf # yudit.font.Serif=Serif.ttf,times.ttf,cyberbit.ttf,yudit.ttf # # SansSerif.ttf is in fact a paid font DFGothicPPro5-W5.ttf # yudit.font.SansSerif=SansSerif.ttf,arialuni.ttf,yudit.ttf # # This is a package for full coverage of testpage # MuktiNarrow.ttf: # http://savannah.nongnu.org/download/freebangfont/MuktiNarrow-0.94.tar.bz2 # yudit.font.Full=hln.ttf,MuktiNarrow.ttf:beng,ani.ttf:beng,raghu.ttf:deva,dc-font.ttf:mlym,latha.ttf:taml,tunga.ttf:knda,tibt.ttf:tibt,TCRCYoutsoUnicode.ttf:tibt,raavi.ttf:guru,shruti.ttf:gujr,yudit.ttf,cyberbit.ttf,code2001.ttf,code2000.ttf,extendedWatanabeMincho.ttf:shift-jis-3 # # A fairly good set of free or almost free fonts. # As you might have noticed I used the selectors so that # they won't mix up with each other. OpenType script name # can be used for this purpose. # yudit.font.Indic-F=raghu.ttf:deva,bangla.ttf:beng,ani.ttf:beng,sampige.ttf:knda,pothana2000.ttf:telu,TCRCYoutsoUnicode.ttf:tibt,MalOtf.ttf:mlym,code2000.ttf,yudit.ttf # # A set of fonts that you usually can find on MS systems. # yudit.font.Indic-M=mangal.ttf:deva,vrinda.ttf:beng,tunga.ttf:knda,latha.ttf:taml,gautami.ttf:telu,raavi.ttf:guru,shruti.ttf:gujr,tibt.ttf:tibt,arialuni.ttf,yudit.ttf # # Get Courier, Helvetice and Times from Markus Kuhn's Unicode FAQ. # Fallback same with iso9959-1. # yudit.font.Helvetica=\ -adobe-helvetica-medium-r-normal--*-*-75-75-p-*-iso10646-1,\ -adobe-helvetica-*-iso8859-1 yudit.font.Times=\ -adobe-times-medium-r-normal--*-*-75-75-p-*-iso10646-1,\ -adobe-times-*-iso8859-1 # Some experiment with bold yudit.font.Courier=\ -adobe-courier-bold-r-normal--*-*-75-75-m-*-iso10646-1,\ -adobe-courier-*-iso8859-1 # Some experiment with bold yudit.font.Lucida=\ -*-lucidabright-demibold-r-normal--*-*-75-75-p-*-iso10646-1,\ -*-lucidabright-*-r-normal-*-iso8859-1 # http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz yudit.font.Bitmap=-gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1,*-iso8859-1,-sony-fixed-medium-r-normal--*-230-75-75-c-120-iso8859-1 # These size 18 fonts are in ucs-fonts.tar.gz. #yudit.font.Misc=-misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1,\ #-misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-2,\ #-misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 # # These size 18,13 fonts are in ucs-fonts.tar.gz - help yourself # wget http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz # wget http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts-asian.tar.gz # mkdir ucs-fonts; cd ucs-fonts # tar xfz ../ucs-fonts.tar.gz # tar xfz ../ucs-fonts-asian.tar.gz # xset fp+ `pwd` # yudit.font.Misc=-misc-fixed-medium-r-*--18-*-*-*-c-*-iso10646-1,\ -misc-fixed-medium-r-*-ja-18-*-*-*-c-*-iso10646-1,\ -misc-fixed-medium-r-*--18-*-*-*-c-*-iso10646p2-1,\ -misc-fixed-medium-r-*-ja-18-*-*-*-c-*-iso10646p2-1,\ -misc-fixed-medium-r-*--18-*-*-*-c-*-iso10646p2-2,\ -misc-fixed-medium-r-*-ja-18-*-*-*-c-*-iso10646p2-2,\ yudit.ttf:cp-1250 # http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz yudit.font.MiscBold=\ -misc-fixed-bold-r-normal--*-*-75-75-*-*-iso10646-1,\ -misc-fixed-bold-r-normal--*-*-75-75-*-*-iso8859-1\ # # Get a full list from uniconv -h. Only internal encoding are added, # The rest is appended from this list. # yudit.editor.filetypes=Devanagari,Bengali,Tamil,Hungarian,HungarianRunes,Hangul,Bulgarian,Russian,Russian-ISO-Translit,SGML,Yiddish,Troff,Chinese-CJ,DE-RU,GreekBible,Kana,Mnemonic,RU-translit,IS_AS,IS_BN,IS_DV,IS_GJ,IS_KN,IS_ML,IS_OR,IS_PJ,IS_RM,IS_TL,IS_TM yudit.command.font=default yudit.command.fontsize=18 # # This is a bitmap font, good for box drawing # This one has descent and can not be mixed in : # -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 # yudit.font.Box=unifont.hex,-misc-fixed-medium-r-*--18-120-100-100-c-90-iso10646-1 ./syntax64.iss0000644000175000017500000000177311334230040013253 0ustar henrichhenrich; Script generated by the Inno Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! [Setup] AppName=Yudit Basic Syntax Files AppVerName=Yudit Basic Syntax Files 1.5 OutputBaseFileName=syntax-1.5-1.x86_64 ArchitecturesAllowed=x64 ArchitecturesInstallIn64BitMode=x64 AppPublisher=Gaspar Sinai AppPublisherURL=http://www.yudit.org/ AppSupportURL=http://www.yudit.org/ AppUpdatesURL=http://www.yudit.org/ DefaultDirName={pf}\Yudit UsePreviousGroup=yes DefaultGroupName=Yudit DisableProgramGroupPage=yes InfoBeforeFile=C:\Build\Yudit\Thirdparty\syntax-1.5\syntax.txt DirExistsWarning=no ; uncomment the following line if you want your installation to run on NT 3.51 too. ; MinVersion=4,3.51 [Files] Source: "C:\Build\Yudit\Thirdparty\syntax-1.5\*.*"; DestDir: "{app}\syntax"; Flags: ignoreversion Source: "C:\Build\Yudit\Thirdparty\syntax-1.5\libhunspell-1.2.8.p1.x86_64.dll"; DestDir: "{app}\syntax"; DestName: "libhunspell.dll"; Flags: ignoreversion ./uniconv/0000755000175000017500000000000011334661333012521 5ustar henrichhenrich./uniconv/Makefile0000644000175000017500000000171307532460074014167 0ustar henrichhenrichinclude ../Makefile.conf MODULES=Main.o ifeq ($(SPLATFORM),WINDOWS) OBJS=$(subst .o,.obj,$(MODULES)) SLIBS=/libpath:../stoolkit stoolkit.lib SWINLIBS=/libpath:../swindow MYLIBS=/link /subsystem:CONSOLE $(SWINLIBS) $(SLIBS) $(ALL_LIBS) else OBJS=$(MODULES) SLIBS=-L../stoolkit -lstoolkit SWINLIBS=-L../swindow -lswindow MYLIBS=$(SWINLIBS) $(SLIBS) $(ALL_LIBS) endif .PHONY:all clean config all: uniconv uniconv: $(OBJS) $(LD) -o uniconv $(OBJS) $(MYLIBS) %.o:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .o,.cpp,$@) %.obj:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .obj,.cpp,$@) depend: $(CXX) -M $(CPPFLAGS) $(patsubst %.o,%.cpp,$(OBJS)) > .depend install: rm -f $(DESTDIR)/$(bindir)/uniconv $(INSTALL_PROGRAM) uniconv $(DESTDIR)/$(bindir) $(INSTALL_DATA) uniconv.1 $(DESTDIR)/$(mandir)/man1 clean: rm -f *.o *.obj uniconv uniconv.exe core $(SUBDIRS_clean): $(MAKE) -C $(patsubst %_clean,%,$@) clean ifeq (.depend, $(wildcard .depend)) include .depend endif ./uniconv/uniconv.10000644000175000017500000002113711334661333014270 0ustar henrichhenrich.\" @(#)uniconv 2.0 2000-05-18 .TH UNICONV 1 "Nov 5 1997" "LINUX COMMANDS" "LINUX COMMANDS" .SH NAME .LP uniconv \- convert text to native formats through unicode .SH SYNOPSIS .LP .B uniconv .BI "-out " output-file [ .BI "-decode " input-encoding ] [ .BI "-encode " output-encoding ] [ .I input-file ] [ .I -todos ] [ .I -fromdos ] [ .I -tomac ] [ .I -frommac ] .LP .SH DESCRIPTION .LP .B uniconv program decodes scripts with a certain encoding encodes them with some other encoding. The scipt is a 16,8 or 7 bit-byte stream. The converted text will be sent to the standard output, even in case of 16-bit encodings,unless the output file is specified by the .B -out option. .sp The .B -decode and .B -encode options are optional, the default converter is utf-8. The program reads the Unicode map helper files (*.my) from the default directory /usr/share/data. Simple 1-to-1 encodings can be added on the fly by adding a a my-file, or setting your yudit.datapath property in ~/.yudit/yudit.properties or /usr/share/yudit/config/yudit.properties. By default /usr/share/yudit/data is searched. My-files can be created by a program called The files can be converted between dos/unix/mac line-ending variants with .B "-fromdos, -frommac, -todos, -tomac" options. the default (not scpecified one) is Unix. .B makeumap. .LP .SH ENCODING If you received this program through the Yudit distribution, then as of today you can convert between the encodings below. .TP .BI "utf-8 " Yudit recommends this format for international information exchange. ASCII text will get through intact, while other unicode characters will get their 8th bit set and the length of the code will depend on how far away they are in the Unicode space. This is the only transformation format that can encode both 16-bit (ucs-2) and 31-bit (ucs-4) unicode. .TP .BI "utf-8-s " Hackers utf-8 format - it does not give an error message when a surrogate pair is decoded and it can encode a surrogate pair 'as is'. This is not a recommended encoding format although this format is used to encode/decode clipboard data, in order to preserve input. .TP .BI "utf-16 " Although 16 is bigger than 8 this is still a compromise required by OSes like Windows that can not handle ucs-4 - this encoding produces 16-bit unicode streams. In addition to BMP it can convert 16 planes using the Unicode Surrogate Area. This encoding can not convert anything above U+10FFFF (Plane 16). The input byte order is recognized by the first two characters BEM (byte-order-mark) U+FEFF. This format is used in Windows NT for documents like notepad .txt files. .TP .BI "utf-16-be " Big endian utf-16 converter. .TP .BI "utf-16-le " Littlen endian utf-16 converter. .TP .BI "utf-7 " This is the recommended format for international information exchange, when 7-bit can only be used. It can only handle 16-bit (utf-16) unicode, for ucs-4 (above U+10FFFF) you should use utf-8 encoding. .TP .BI "iso-8859-1 " This is the ISO 8859-1 character encoding format. It is also known as "Latin-1" encoding. .TP .BI "iso-8859-2 " This is the ISO 8859-2 character encoding format. It is also known as "Central European" encoding. .TP .BI "iso-8859-5 " This is the ISO 8859-5 character encoding format. It is also known as "Cyrillic" encoding. .TP .BI "iso-8859-7 " This is the ISO 8859-7 character encoding format. It is also known as "Greek" encoding. .TP .BI "iso-8859-9 " This is the ISO 8859-9 character encoding format. It is also known as "Turkish" encoding. .TP .BI "koi8-r " This is the KOI8-R character encoding format. It is mainly used in Russia. .TP .BI "cp-1251 " This is the CP1251 cyrillic character encoding format. It is mainly used in Microsoft Windows and some web sites. .TP .BI "iso-2022-jp " This is a Japanese character encoding format. It is a 7-bit encoding format. .TP .BI "iso-2022-jp-3 " This is a Japanese character encoding format. It is a 7-bit encoding format. It is base upon JIS X 0213 standard. .TP .BI "euc-jp " This is a Japanese character encoding format. It is an 8-bit encoding format. Mainly used in UNIX systems. .TP .BI "euc-jp-3 " The official name is EUC-JISX0213 - I just could not read this. This is a Japanese character encoding format. It is a 8-bit encoding format. It is base upon JIS X 0213 standard. .TP .BI "shift-jis " This is a Japanese character encoding format. It is an 8-bit encoding format. Mainly used in MSDOS/Windows. .TP .BI "shift-jis-3 " The official name is Shift_JISX0213 - I just could not read this. This is a Japanese character encoding format. It is an 8-bit encoding format. Mainly used in MSDOS/Windows. .TP .BI "iso-2022-jp " This is a Japanese 7-bit character encoding format. The iso-2022-jp email messages can be decoded/encoded are in this format. .TP .BI "iso-2022-x11 " This is a Japanese character encoding format. It is also known as "COMPOUND_TEXT" encoding for the X Window System. This is a 7-bit encoding format. It can be derived from the ISO 2022-JP format with some differences. .TP .BI "ksc-5601-x11 " This is a Korean character encoding format used by the X window system(COMPOUND_TEXT encoding) to encode Korean(KS X 1001) and US-ASCII. This is a 7bit encoding format compliant to ISO-2022 specification for encoding of multiple character sets. Please, note that this is DIFFERENT from ISO-2022-KR (defined in IETF RFC 1557). .TP .BI "euc-kr " This is an 8bit multibyte encoding for Korean. It encodes US-ASCII(7bit) in single byte range and characters in KS X 1001(formerly KS C 5601) in double byte range with MSB on(8bit). It's used in Unix and Internet. Korean version of MS-DOS, MacOS and MS-Windows use compatible (most cases, identical) variant of this encoding. .TP .BI "johab " This is a Korean encoding specified in KS X 1001(KS C 5601-1992), Annex 3 as a supplementary encoding. Widely used in Korean MS-DOS until mid-1990's. It can encode all Hangul syllables(11,172) of modern Korean as well as all the special symbols and Hanja (Chinese ideograms used in Korea) defined in KS X 1001. .TP .BI "uhc" A variant of EUC-KR used in Korean MS-Windows 95/98(proprietary encoding of Microsoft,CP949). Its character repertoire includes all modern syllables of Hangul,Korean script as well as all the special symbols and Hanja (Chinese ideograms used in Korea) defined in KS X 1001. .TP .BI "gb-18030 " This is a Chinese character encoding format based upon GB 18030. It encodes the whole U+0000..U+10FFFF range, while being compatible with gb-2312. .TP .BI "gb-2312-x11 " This is a Chinese character encoding format based upon GB 2312. It is a 7-bit encoding format. .TP .BI "gb-2312 " This is a Chinese character encoding format based upon GB 2312. It is an 8-bit encoding format. .TP .BI "big-5 " This is a Chinese character encoding format based upon BIG5 encoding. It is an 8-bit encoding format. .TP .BI "hz " This is a Chinese character encoding format based upon "Hanzi" encoding. It is a 7-bit encoding format. .TP .BI "viscii " This is a Vietnamese character encoding format. .TP .BI "ucs-2-be " This converts 16-bit unicode (ucs-2) streams. The format takes care of big-endian variant. Yudit does not recommend this format. .TP .BI "ucs-2-le " This converts 16-bit unicode (ucs-2) streams. The format takes care of little-endian variant. Yudit does not recommend this format. .TP .BI "ucs-2 " This converts 16-bit unicode (ucs-2) streams. The input byte order is recognized by the first two characters BEM (byte-order-mark) U+FEFF. Yudit does not recommend this format. .TP .BI "java " This converts \\uxxxx character escapes. When encoding, all characters above U+0080 will be escaped with a string like '\\u0080'. When decoding the same format is decoded but, in addition, utf-8 format is also recognized, so it can also be used to recover data accidentally saved with the wrong enconding. The U+10000..U+10FFFF area is converted to surrogates and vice versa. .TP .BI "java-s " This converts \\uxxxx character escapes. When encoding, all characters above U+0080 will be escaped with a string like '\\u0080'. When decoding the same format is decoded but, in addition, utf-8 format is also recognized, so it can also be used to recover data accidentally saved with the wrong enconding. Surrogates are not treated specially during conversion - this is why it is not a recommened conversion. .SH FILES .TP ~/.yudit/yudit.properties or /usr/share/yudit/config/yudit.properties can have yudit.datapath property. This is where the map files are kept. By default /usr/share/yudit/data is searched. .SH SEE ALSO .BR makeumap .SH AUTHOR .LP This program was written by gsinai@yudit.org (Gaspar Sinai), Tokyo, 2 January, 2001. ./uniconv/Main.cpp0000644000175000017500000001536211331220701014103 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include #include #include #include #include #include #include #include #include #include #include #define BUFFER_SIZE 512 static const char *version="uniconv version %s GNU(c) Gaspar Sinai\n"; static void usage (); #define SS_UNIX 0 #define SS_DOS 1 #define SS_MAC 2 /** * This is a stoolkit encoder/decoder * @author: Gaspar Sinai * @version: 2000-04-23 * This library is not multi-threaded. Therefor we need event handlers. */ int main (int argc, char *argv[]) { const char* ifile="-"; const char* ofile="-"; FILE* output=stdout; FILE* input=stdin; const char* iencoding="utf-8"; const char* oencoding="utf-8"; int fromd = SS_UNIX; int tod = SS_UNIX; SUniMap::guessPath(); int i; for (i=1; i0) { if (buff[len-1] == '\r') { crpending = 1; len--; if (!len) break; } SString s(buff, len); remaining.append(s); /* this will not work if last line does not have a proper ending */ while (true) { int found =-1; unsigned int i; for (i=0; i=0) break; } if (found < 0) break; unsigned int ind = found+delimiters[i].size(); SString a(remaining.array(), ind); lines.append (a); remaining.remove (0, ind); } for (unsigned k=0; k\n"); } ./uniconv/uniconv.1.in0000644000175000017500000002112311326515466014676 0ustar henrichhenrich.\" @(#)uniconv 2.0 2000-05-18 .TH UNICONV 1 "Nov 5 1997" "LINUX COMMANDS" "LINUX COMMANDS" .SH NAME .LP uniconv \- convert text to native formats through unicode .SH SYNOPSIS .LP .B uniconv .BI "-out " output-file [ .BI "-decode " input-encoding ] [ .BI "-encode " output-encoding ] [ .I input-file ] [ .I -todos ] [ .I -fromdos ] [ .I -tomac ] [ .I -frommac ] .LP .SH DESCRIPTION .LP .B uniconv program decodes scripts with a certain encoding encodes them with some other encoding. The scipt is a 16,8 or 7 bit-byte stream. The converted text will be sent to the standard output, even in case of 16-bit encodings,unless the output file is specified by the .B -out option. .sp The .B -decode and .B -encode options are optional, the default converter is utf-8. The program reads the Unicode map helper files (*.my) from the default directory @prefix@/share/data. Simple 1-to-1 encodings can be added on the fly by adding a a my-file, or setting your yudit.datapath property in ~/.yudit/yudit.properties or @YUDIT_DATA@/config/yudit.properties. By default @YUDIT_DATA@/data is searched. My-files can be created by a program called The files can be converted between dos/unix/mac line-ending variants with .B "-fromdos, -frommac, -todos, -tomac" options. the default (not scpecified one) is Unix. .B makeumap. .LP .SH ENCODING If you received this program through the Yudit distribution, then as of today you can convert between the encodings below. .TP .BI "utf-8 " Yudit recommends this format for international information exchange. ASCII text will get through intact, while other unicode characters will get their 8th bit set and the length of the code will depend on how far away they are in the Unicode space. This is the only transformation format that can encode both 16-bit (ucs-2) and 31-bit (ucs-4) unicode. .TP .BI "utf-8-s " Hackers utf-8 format - it does not give an error message when a surrogate pair is decoded and it can encode a surrogate pair 'as is'. This is not a recommended encoding format although this format is used to encode/decode clipboard data, in order to preserve input. .TP .BI "utf-16 " Although 16 is bigger than 8 this is still a compromise required by OSes like Windows that can not handle ucs-4 - this encoding produces 16-bit unicode streams. In addition to BMP it can convert 16 planes using the Unicode Surrogate Area. This encoding can not convert anything above U+10FFFF (Plane 16). The input byte order is recognized by the first two characters BEM (byte-order-mark) U+FEFF. This format is used in Windows NT for documents like notepad .txt files. .TP .BI "utf-16-be " Big endian utf-16 converter. .TP .BI "utf-16-le " Littlen endian utf-16 converter. .TP .BI "utf-7 " This is the recommended format for international information exchange, when 7-bit can only be used. It can only handle 16-bit (utf-16) unicode, for ucs-4 (above U+10FFFF) you should use utf-8 encoding. .TP .BI "iso-8859-1 " This is the ISO 8859-1 character encoding format. It is also known as "Latin-1" encoding. .TP .BI "iso-8859-2 " This is the ISO 8859-2 character encoding format. It is also known as "Central European" encoding. .TP .BI "iso-8859-5 " This is the ISO 8859-5 character encoding format. It is also known as "Cyrillic" encoding. .TP .BI "iso-8859-7 " This is the ISO 8859-7 character encoding format. It is also known as "Greek" encoding. .TP .BI "iso-8859-9 " This is the ISO 8859-9 character encoding format. It is also known as "Turkish" encoding. .TP .BI "koi8-r " This is the KOI8-R character encoding format. It is mainly used in Russia. .TP .BI "cp-1251 " This is the CP1251 cyrillic character encoding format. It is mainly used in Microsoft Windows and some web sites. .TP .BI "iso-2022-jp " This is a Japanese character encoding format. It is a 7-bit encoding format. .TP .BI "iso-2022-jp-3 " This is a Japanese character encoding format. It is a 7-bit encoding format. It is base upon JIS X 0213 standard. .TP .BI "euc-jp " This is a Japanese character encoding format. It is an 8-bit encoding format. Mainly used in UNIX systems. .TP .BI "euc-jp-3 " The official name is EUC-JISX0213 - I just could not read this. This is a Japanese character encoding format. It is a 8-bit encoding format. It is base upon JIS X 0213 standard. .TP .BI "shift-jis " This is a Japanese character encoding format. It is an 8-bit encoding format. Mainly used in MSDOS/Windows. .TP .BI "shift-jis-3 " The official name is Shift_JISX0213 - I just could not read this. This is a Japanese character encoding format. It is an 8-bit encoding format. Mainly used in MSDOS/Windows. .TP .BI "iso-2022-jp " This is a Japanese 7-bit character encoding format. The iso-2022-jp email messages can be decoded/encoded are in this format. .TP .BI "iso-2022-x11 " This is a Japanese character encoding format. It is also known as "COMPOUND_TEXT" encoding for the X Window System. This is a 7-bit encoding format. It can be derived from the ISO 2022-JP format with some differences. .TP .BI "ksc-5601-x11 " This is a Korean character encoding format used by the X window system(COMPOUND_TEXT encoding) to encode Korean(KS X 1001) and US-ASCII. This is a 7bit encoding format compliant to ISO-2022 specification for encoding of multiple character sets. Please, note that this is DIFFERENT from ISO-2022-KR (defined in IETF RFC 1557). .TP .BI "euc-kr " This is an 8bit multibyte encoding for Korean. It encodes US-ASCII(7bit) in single byte range and characters in KS X 1001(formerly KS C 5601) in double byte range with MSB on(8bit). It's used in Unix and Internet. Korean version of MS-DOS, MacOS and MS-Windows use compatible (most cases, identical) variant of this encoding. .TP .BI "johab " This is a Korean encoding specified in KS X 1001(KS C 5601-1992), Annex 3 as a supplementary encoding. Widely used in Korean MS-DOS until mid-1990's. It can encode all Hangul syllables(11,172) of modern Korean as well as all the special symbols and Hanja (Chinese ideograms used in Korea) defined in KS X 1001. .TP .BI "uhc" A variant of EUC-KR used in Korean MS-Windows 95/98(proprietary encoding of Microsoft,CP949). Its character repertoire includes all modern syllables of Hangul,Korean script as well as all the special symbols and Hanja (Chinese ideograms used in Korea) defined in KS X 1001. .TP .BI "gb-18030 " This is a Chinese character encoding format based upon GB 18030. It encodes the whole U+0000..U+10FFFF range, while being compatible with gb-2312. .TP .BI "gb-2312-x11 " This is a Chinese character encoding format based upon GB 2312. It is a 7-bit encoding format. .TP .BI "gb-2312 " This is a Chinese character encoding format based upon GB 2312. It is an 8-bit encoding format. .TP .BI "big-5 " This is a Chinese character encoding format based upon BIG5 encoding. It is an 8-bit encoding format. .TP .BI "hz " This is a Chinese character encoding format based upon "Hanzi" encoding. It is a 7-bit encoding format. .TP .BI "viscii " This is a Vietnamese character encoding format. .TP .BI "ucs-2-be " This converts 16-bit unicode (ucs-2) streams. The format takes care of big-endian variant. Yudit does not recommend this format. .TP .BI "ucs-2-le " This converts 16-bit unicode (ucs-2) streams. The format takes care of little-endian variant. Yudit does not recommend this format. .TP .BI "ucs-2 " This converts 16-bit unicode (ucs-2) streams. The input byte order is recognized by the first two characters BEM (byte-order-mark) U+FEFF. Yudit does not recommend this format. .TP .BI "java " This converts \\uxxxx character escapes. When encoding, all characters above U+0080 will be escaped with a string like '\\u0080'. When decoding the same format is decoded but, in addition, utf-8 format is also recognized, so it can also be used to recover data accidentally saved with the wrong enconding. The U+10000..U+10FFFF area is converted to surrogates and vice versa. .TP .BI "java-s " This converts \\uxxxx character escapes. When encoding, all characters above U+0080 will be escaped with a string like '\\u0080'. When decoding the same format is decoded but, in addition, utf-8 format is also recognized, so it can also be used to recover data accidentally saved with the wrong enconding. Surrogates are not treated specially during conversion - this is why it is not a recommened conversion. .SH FILES .TP ~/.yudit/yudit.properties or @YUDIT_DATA@/config/yudit.properties can have yudit.datapath property. This is where the map files are kept. By default @YUDIT_DATA@/data is searched. .SH SEE ALSO .BR makeumap .SH AUTHOR .LP This program was written by gsinai@yudit.org (Gaspar Sinai), Tokyo, 2 January, 2001. ./yudit-2.9.2.lsm0000644000175000017500000000175311333143320013355 0ustar henrichhenrichBegin3 Title: yudit Version: 2.9.2 Entered-date: 06MAR2010 Description: Yudit is a unicode text editor for the X Window System. It can do True Type font rendering, printing, transliterated keyboard input and handwriting recognition with no dependencies on external engines. Its conversion utilities can convert text between various encodings. Keyboard input maps can also act like text converters. There is no need for a pre-installed multi-lingual environment. Menus are translated into many languages. Keywords: X11, unicode, text editor Author: gaspar@yudit.org (Gaspar Sinai) Primary-site: metalab.unc.edu /pub/Linux/apps/editors/X 2700 kbytes yudit-2.9.2.tar.gz Alternate-site: http://www.yudit.org/ Platforms: X11,UNIX,Linux Copying-policy: GPL End ./configure.in0000644000175000017500000001523210730661705013356 0ustar henrichhenrich# configure.in version 2.5 # yudit package - Unicode Editor for the X Window System (and Linux) # # Author: gaspar@yudit.org (Gaspar Sinai) # GNU Copyright (C) 1997-2006 Gaspar Sinai # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License, version 2, # dated June 1991, by the Free Software Foundation. # # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # dnl Process this file with autoconf to produce a configure script. AC_INIT(gui/SYudit.h) AC_PREFIX_DEFAULT(/usr) dnl Checks for programs. AC_PROG_CXX AC_PROG_CXXCPP AC_PROG_CC dnl AC_PROG_INSTALL dnl Unfortunatelly hpux does not have mmap that is dnl considered good by configure dnl AC_FUNC_MMAP AC_PATH_XTRA AC_PATH_PROG(RANLIB, ranlib) if test x$RANLIB = x; then RANLIB=":" fi LPR_COMMAND="" LPR_CFLAGS="-DLPR_COMMAND=\\\"/bin/lpr\\\"" AC_PATH_PROG(LPR_COMMAND,lpr) if test x$LPR_COMMAND = x; then LPR_CFLAGS="-DLPR_COMMAND=\\\"/bin/lpr\\\"" else LPR_CFLAGS="-DLPR_COMMAND=\\\"${LPR_COMMAND}\\\"" fi AC_SUBST(LPR_CFLAGS) dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS(unistd.h) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_C_INLINE dnl Checks for library functions. AC_CHECK_FUNCS(strtol) AC_LANG_SAVE AC_LANG_C AC_MSG_CHECKING(long long ) HAVE_LONG_LONG= AC_TRY_COMPILE([#include ], [ u_int64_t a; ], [HAVE_LONG_LONG=-DHAVE_LONG_LONG]) AC_TRY_COMPILE([#include ], [ unsigned long long a; ], [HAVE_LONG_LONG=-DHAVE_LONG_LONG]) if test x$HAVE_LONG_LONG = x ; then AC_MSG_RESULT(no) else AC_MSG_RESULT(yes) fi AC_MSG_CHECKING(memmove ) NO_MEMMOVE="-DNO_MEMMOVE" AC_TRY_LINK([#include ], [ char*a; char*b; memmove(a,b,1); ], [NO_MEMMOVE=]) if test x$NO_MEMMOVE = x ; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi CPPFLAGS="$HAVE_LONG_LONG $NO_MEMMOVE $CPPFLAGS" AC_LANG_RESTORE AC_SUBST(HAVE_LONG_LONG) dnl-------------------- dnl Doe we need -ldl ? dnl-------------------- DL_FLAGS=-ldl AC_TRY_LINK([#include ], [ dlopen("", 0);] , [ DL_FLAGS= ]) dnl dnl check if it is real dnl if test x$DL_FLAGS = x-ldl then SAVELD=$LIBS LIBS="$SAVELD -ldl" AC_TRY_LINK([#include ], [ dlopen("", 0);] , [ DL_FLAGS=-ldl ], [ DL_FLAGS= ]) LIBS="$SAVELD $DL_FLAGS" fi dnl dnl solaris has this library outside libc dnl SOCKET_FLAGS=-lsocket AC_TRY_LINK([#include ], [ socket(1,1,1);] , [ SOCKET_FLAGS= ]) dnl dnl check if it is real dnl if test x$SOCKET_FLAGS = x-lsocket then SAVELD=$LIBS LIBS="$SAVELD -lsocket" AC_TRY_LINK([#include ], [ sockett(1,1,1);] , [ SOCKET_FLAGS=-lsocket ], [ SOCKET_FLAGS= ]) LIBS="$SAVELD $SOCKET_FLAGS" fi AC_MSG_CHECKING(libsocket ) if test x$SOCKET_FLAGS = x-lsocket then AC_MSG_RESULT(needed) else AC_MSG_RESULT(not needed) fi dnl dnl solaris has this library outside libc dnl AC_MSG_CHECKING(nsl ) NSL_FLAGS=-lnsl AC_TRY_LINK([#include ], [ gethostbyname("localhost");] , [ NSL_FLAGS= ]) dnl dnl check if it is real dnl if test x$NSL_FLAGS = x-nsl then SAVELD=$LIBS LIBS="$SAVELD -lnsl" AC_TRY_LINK([#include ], [ gethostbyname("localhost");] , [ NSL_FLAGS=-lnsl ], [ NSL_FLAGS= ]) LIBS="$SAVELD $NSL_FLAGS" fi if test x$NSL_FLAGS = x-nsl then AC_MSG_RESULT(needed) else AC_MSG_RESULT(not needed) fi dnl dnl People complained that gettext distribution does not have it. dnl MSGMERGE= AC_PATH_PROG(MSGMERGE, msgmerge) if test x$MSGMERGE = x; then MSGMERGE=":" fi dnl dnl finding xgettext to find the libs dnl version > 2.4 does not need it. dnl GETTEXT_CFLAGS= GETTEXT_LFLAGS= TOPDIR=`pwd` AC_SUBST(TOPDIR) AC_SUBST(MSGMERGE) AC_SUBST(GETTEXT_CFLAGS) AC_SUBST(GETTEXT_LFLAGS) AC_TRY_LINK([#include ], [ setlocale(LC_ALL,"C"); ] , [ HAVE_LOCALE=-DHAVE_LOCALE ], [ HAVE_LOCALE= ]) SAVELD=$LIBS SAVECFLAGS=$CLFAGS LIBS="$X_EXTRA_LIBS $X_LIBS -lX11 $LIBS" CLFAGS="$X_CFLAGS $CLFAGS" AC_TRY_LINK([#include extern char * XSetIMValues( #if NeedVarargsPrototypes XIM /* im */, ... #endif ); ], [ XSetIMValues (0, XNDestroyCallback , 0, 0); ] , [ HAVE_SET_IM_VALUES=-DHAVE_SET_IM_VALUES; NEED_SET_IM_VALUES_PROTO=-DNEED_SET_IM_VALUES_PROTO ], [ NEED_SET_IM_VALUES_PROTO= ]) if test x$HAVE_SET_IM_VALUES = x ; then AC_TRY_LINK([ #include ], [ XSetIMValues (0, XNDestroyCallback , 0, 0); ] , [ HAVE_SET_IM_VALUES=-DHAVE_SET_IM_VALUES ], [ HAVE_SET_IM_VALUES= ]) fi LIBS=$SAVELD CLFAGS=$SAVECFLAGS AC_SUBST(HAVE_LOCALE) AC_SUBST(HAVE_SET_IM_VALUES) AC_SUBST(NEED_SET_IM_VALUES_PROTO) AC_MSG_CHECKING(locale ) if test x$HAVE_LOCALE = x ; then AC_MSG_RESULT(no) else AC_MSG_RESULT(yes) fi if test x$no_x != xyes then AC_MSG_CHECKING(XSetIMValues ) if test x$HAVE_SET_IM_VALUES = x ; then AC_MSG_RESULT(no) else AC_MSG_RESULT(yes) fi fi # # Sorry guys this autoconf program is a monster - useful features are missing # cat > /tmp/gaspar$$.sh <<+ prefix=${prefix} if test ${prefix} = NONE then prefix=${ac_default_prefix} fi echo ${datadir}/yudit + YUDIT_DATA=`sh /tmp/gaspar$$.sh` /bin/rm -f /tmp/gaspar$$.sh # # Check if I can compile with cc # CAN_USE_CC="0" cat > /tmp/gaspar$$.cpp <<+ #include class A{ public: A(void) {}; ~A() {}; void print(void) { fprintf (stderr, "Hi\n"); } }; int main(int argc, char* argv[]) { A a; a.print(); // gcc 3.xx does not handle it without c++ A* aa = new A(); aa->print(); delete aa; try { throw A(); } catch (A& ea) {} return (0); } + AC_MSG_CHECKING(c++ or c compiler to use ) ${CC} -o /tmp/gaspar$$ /tmp/gaspar$$.cpp 2> /dev/null 1> /dev/null if test $? = 0 then CAN_USE_CC="1" AC_MSG_RESULT($CC) CXX=$CC else AC_MSG_RESULT($CXX) fi /bin/rm -f /tmp/gaspar$$ /tmp/gaspar$$.cpp AC_SUBST(YUDIT_DATA) if test x$no_x = xyes then USE_X11=-DUSE_X11=0 X11_LIB= else USE_X11=-DUSE_X11=1 X11_LIB=-lX11 fi AC_SUBST(USE_X11) AC_SUBST(X11_LIB) AC_OUTPUT(Makefile.conf uniconv/uniconv.1 uniprint/uniprint.1 yudit.properties doc/FAQ.TXT doc/vi/FAQ.TXT doc/de/FAQ.TXT doc/hu/FAQ.TXT doc/ko/FAQ.TXT doc/ja/FAQ.TXT doc/yi/FAQ.TXT doc/es/FAQ.TXT doc/fi/FAQ.TXT doc/ru/FAQ.TXT doc/te/FAQ.TXT doc/sr/FAQ.TXT doc/zh/FAQ.TXT doc/cs/FAQ.TXT doc/bg/FAQ.TXT doc/it/FAQ.TXT Makefile) ./history/0000755000175000017500000000000011053727222012537 5ustar henrichhenrich./history/NEWS-2.70000644000175000017500000000201707567425176013564 0ustar henrichhenrichVersion 2.7 of the Unicode Text Editor Yudit has been released. Download: -------- http://www.yudit.org/download.html Homepage: -------- http://www.yudit.org/ BiDi Documentation: ------------------ http://www.yudit.org/bidi/ Changes since version 2.6.4: --------------------------- o Added full Unicode compliant bidirectional text support o Added fallback to root xinput style if no suitable style is found o Received and added Polish gui translations, Persian.kmap, Sanskrit.kmap Inuktitut-ICI.kmap, Inuktitut-KBD.kmap, Chinese-Pinyin.kmap, Chinese-WB.kmap, ArmenianEastPhon.kmap o Speed Optimizations o OpenType GPOS support for composing characters o Better TAB control Other Notes: ----------- Even if you can not read bidirectional scripts, it will be useful to type this in the editor command area: howto bidi to get some ideas what bidi is, and how it works in Yudit. Even if you can not read RL scripts, RL words will be indicated in yellow (the default RL color). Enjoy! Gaspar 2002-11-23 ./history/CHANGELOG-2.6.2.TXT0000644000175000017500000000746607532721012015105 0ustar henrichhenrich2002-08-27 (Additions by Maarten van Gompel has been updated. o confirmed that alignment problem has been fixed on sparc. o added --without-x to compile with no x11 support o added yudit.hex that contains ohungarian.hex and part of unifont.hex 2002-05-27 o added 'nojamo' encoding to skip jamos. o removed stand-alone JAMO rendering for MSLVT 2002-05-24 o Added update messages.po from Daniel Yacob 2002-05-22 o Addded extensive Middle Korean patch from Jungshik Shin . o Single Jamo won't make a cluster now in stoolkit/SCluster.cpp. o Enabled single Jamo for mslvt in swindow/SFontTTF.cpp. now findJamoGlyphs() for a single jamos can be called in 2 different contexts: - cluser context: simply put glyphs one after the other. - stand-alone context: add spacing form negative with glyphs (SD_JAMO_V, SD_JAMO_T) o Applied changes of yudit.patch.2 from Jungshik Shin. 2002-05-20 o added patch for fonts with no opentype tables, like: http://titus.fkidg1.uni-frankfurt.de/unicode/tituut.asp 2002-05-19 o Applied Syriac OTF fixed from Miikka-Markus Alhonen o Addeed support for unifont syriacforms.hex and arabforms.hex with direct rendering. o Added software glyph mirroring to SUniFont.cpp and swindow/SFontBDF.cpp tested it with half-made oldhun.hex. o Added minor fix for precomposed Hangul for mslvt in SFontTTF.cpp o Added error message if open succeeds but mmap fails. 2002-05-18 o Added changes from Miikka-Markus Alhonen - bin/shape.pl syriac - fixes to translations gui/locale/vi/LC_MESSAGES/messages.po - fixes to translations gui/locale/am/LC_MESSAGES/messages.po o re-ran bin/shape.pl o using OTF feature codes for shapes 2002-05-16 o Added Urdu.kmap from Miikka-Markus.Alhonen@tigatieto.com 2002-05-14 o For purely experimental purpose I added U+302E and U+302F to jamos clusters. o Made patch4 for kanji handwriting data. 2002-05-13 o updated and added Vietnamese gui translations HOWTO-vietnamese.txt and vi/FAQ.TXT.in from Hoan o changed SShared buffer to double* to avoid alignment problems 2002-05-12 o added Vietnamese gui translations from Hoan . o hard-wired ogulim.ttf using mslvt.otp GNU copyright code from Jim-Hwan Cho 2002-05-11 o added patch1 - Koran menu translations and FAQ from Jungshik Shin o added patch2 - PPC Makefile changes o added Cherokee.kmap from Steve Juranich o added gui/locale/am/LC_MESSAGES/messages.po Amharic/Ethiopia from Daniel Yacob o added 'jamo' and 'hang' clusters for jamos and precomposed jamos. o added MidKorean.kmap converted from mid_kor.vim (Jungshik Shin) o made overstrike flag work for jamo fonts. o made SFontTTF.cpp look for ligatures without feature for 'jamo' and 'hang'. ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.6.TXT ./history/CHANGELOG-2.6.4.TXT0000644000175000017500000001474507554147162015121 0ustar henrichhenrich2002-10-19 o Added sample text from a verse from Anirban written by Rabindra Nath Tagore in "Gitanjali". o Fixed SFontTTF.cpp so that external map can be used for Yudit-ligature shapes. Need to do: automatic mechanism for OTF font: need an OTF font for that. o Ready for 2.6.4. 2002-10-18 o updated IS_RM.mys from Anirban. o appened IS_AS,IS_BN,IS_DV,IS_GJ,IS_KN,IS_ML,IS_OR,IS_PJ,IS_RM,IS_TL,IS_TM to yudit.editor.filetypes in yudit.properties.in and yuditw.properties o Makefile generates reverse maps for IS_*.mys now. 2002-10-17 o movoed mytool/uni/nastaliq.txt -> mytool/mys/nastaliq.mys o modified mytool/mys/nastaliq.mys to include 6 more mappings that are shapes of two ligatures: U+06A9 U+200D U+0627 U+06A9 U+200D U+0644 o still problem: nastaliq does not have U+0626. o created SParagraph and reorganized code: Now SParagraph contains: - split - shape - visual/logical Skipped implementing Reverse BiDi - release first. o Added ISCII transliteration maps and BUG.TXT report concerning them from Anirban Mitra" IS_AS.mys Assamese IS_BN.mys Bengali IS_DV.mys Devanagari IS_GJ.mys Gujarati IS_KN.mys Kannada IS_ML.mys Malaylam IS_OR.mys Oriya IS_PJ.mys Punjabi IS_RM.mys Roman Translitteration IS_TL.mys Telegu IS_TM.mys Tamil The alpp.isc and alpp.utf8 files are in tests/text. o added missing log to nastaliq.mys o Fixed a very bad core dump problem in SGlyph::addComposing. o Fixed a bad problem in Glyph::SGlyph 2002-10-16 o added stoolkit/SCharClass.h and stoolkit/SCharClass.cpp o removed hardcoding isNumber() and isDelimiter() from STextData.cpp o clicking on lineend changes only selected lineends. o split off SGlyph.cpp and SGlyph.h o fixed SGlyph == and !=, modified setting LS PS to use selected text. o make LS part of the line. o LS now works as LS and \n \r and \r\n as PS. 2002-10-15 o udded ur to .spec. o modified .iss to have proper lang for ur. 2002-10-14 o fixed one more overstrike problem reported by Mark. 2002-10-13 o made a nastaliq.txt and nastaliq.my map file to map nastali-unicode to real unicode. Use this with the font: md5sum nastaliq.ttf 25f564202072e46593b036bdf0f6a818 /home/gsinai/nastaliq.ttf Helped: S H A N , Miikka-Markus Alhonen o made a better fallback mechanizm for missing shaped glyphs. o added updated Bengali translations from "Anirban Mitra" o added a tests/ttfdump test program. o updated ani.ttf Bengali OTF font on web server download/fonts. o fixed composing bugs reported by Mark. 2002-10-12 o added HOWTO-tibetan.txt from Grisha Mokhin o updated doc/de/FAQ.TXT.in from Thomas Wohlfarth o added a huge 'cleanup' patch from Miikka o modified stoolkit/STextData.cpp to remove hard-coding and modified bin/shape.pl to have all the optional shaped ligatures. 2002-10-11 o made fallback on shaped ligatures better. o added new ligatures for URDU U+0643 U+0627 U+0643 U+0644 bin/shape.p, mytool/mys/shape.mys, stoolkit/STextData.cpp. o added a fallback to original charcter if not found and isolated. 2002-10-10 o fixed compile problem with beta11. o Added () in decomposed shapes. o As characters can be added to clusters on the fly, I removed the clustering flag from: Bengali.kmap Ben-Inscript.kmap Devanagari.kmap Dev-Inscript.kmap Dev-Phonetic.kmap Gujarati.kmap Guj-Inscript.kmap Gurmukhi.kmap Gur-Inscript.kmap Oriya.kmap Ori-Inscript.kmap Malayalam.kmap Mal-Inscript.kmap Telugu.kmap Tel-Inscript.kmap Kannada.kmap Kan-Inscript.kmap this left MiddleKorean as the only clustering kmap. o Set wordwrap false by default for users 2002-10-09 o updated yiddish FAQ from Raphael Finkel o updated Hebrew sample text from Mark E. Shoulson o updated == and != in SGlyph. o Fixed SIO.cpp so that it wont look for current directory if not necessary. o Simplified composing additions. o Fixed compising problems with Yudit Ligatures like U+0259 U+0300. o Fixed problem with Arabic diacritics like U+0627 U+0655 see arabcomp.txt. 2002-10-08 o fixed single character composition problem. o added Vietnamese FAQ updates from wangji o Made composing character inserts immediate and undoable. o Added -wrap option to uniprint (word wrap) o Made word wrapping also on printer o Moved Hebrew hatikvah.utf8 to test/text o Fixed find problem for uncomplete. 2002-10-07 o Fixed endselect problem. o Fixing delivery of keyrelease events. Still XIM is not good. This is needed for endselect: -> o Undo fixes o Composing characters can be applied to any cluster including precomposed and shaped characters. 2002-10-06 o Added fi/es FAQ and o Fixed line selection problem 2002-10-05 Added Urdu/Pakistan ur locale from S H A N Modified Amharic/Ethiopia am locale Daniel Yacob Modified command area history handling (multiple filenames) Addded Q17,18 (wordwrap and syntax highlighting) to HOWTO.txt. Fixed cursor movement bugs 2002-10-04 o added 0x7d '}' to highlight as a delimiter o changed delimiter color o modified Hebrew to Yiddish in doc/TestPage.txt as suggested by Mark E. Shoulson o added sample Hebrew contibuted by Mark E. Shoulson o added the following properties: yudit.editor.syntax yudit.editor.wordwrap updated doc/HOWTO-configure.txt 2002-09-03 o added patch1 (from Miikka-Markus Alhonen) - OpenType bugfixes. - Bengali kmap fixes. o Added bengali menu translations from Dr Anirban Mitra o Added modified Dev-Inscript.kmap (Sanjay Khatri) o Added modified Russian.kmap (Jernej Kovacic) o Added Ukrainian-translit.kmap Jernej Kovacic o Added modified SGML.kmap Jernej Kovacic o Added Romanian.kmap Horia Dumitrescu o Added Tibetan-Wylie.kmap Gregory Mokhin, o Added color highlighting word wrapping and other fixes: Maarten van Gompel ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.6.2.TXT ./history/CHANGELOG-2.7.6.TXT0000644000175000017500000002006707726216174015117 0ustar henrichhenrich2003-09-06 o beta53 declared stable: Yudit-2.7.6 2003-09-04 o Made 25cc work as if it were an indic consonant. o Updated mytool/uni/BLISSYMBLOICS.TXT 2003-09-03 o Fixed minor positioning problems with Devanagari. 2003-09-02 o updated sr messages contributed by Страхиња Радић 2003-09-01 o Added more fallback rendering. o Updated Serbian.kmap and doc/sr/FAQ.TXT.in contributed by Страхиња Радић 2003-08-30 o Added fix for U+0D32 (broken fonts). 2003-08-29 o Fixed minor problems with Malayalam o Modified default font: "yudit.hex,arabforms.hex,syriacforms.hex,unifont.hex," "markus9x18.bdf,markus18x18ja.bdf," "-*-*-medium-r-normal--16-*-*-*-c-*-iso8859-1," "-*-*-*-*-*--16-*-*-*-c-*-iso8859-1," "THOOLIUC.TTF:mlym," "ani.ttf:beng," "pothana2000.ttf:telu," "TCRCYoutsoUnicode.ttf:tibt," "mangal.ttf:deva,tunga.ttf:knda,code2000.ttf:taml," "raavi.ttf:guru,shruti.ttf:gujr," "arialuni.ttf,cyberbit.ttf," "code2000.ttf,code2001.ttf:unicode:RL,arial.ttf," "yudit.ttf" 2003-08-28 o Minor fixes (Bengali, Kannada, Telugu) 2003-08-24 o Improved yaphala (bengali) getCharClas needed to change too, to remove combining property from Bengali Halant. 2003-08-23 o added simple patch to fix Kannada. o allow all chaining contextual substitutions unconditionally. (Kannada vaa, ko) 2003-08-21 o Noticed an error with non-reph clusters starting with reph, corrected it. o Corrected reordering of malayalam post consonant ra+h. o Fixed Makefile. 2003-08-20 o Cleanup, creating document: docs/otfsupport.txt o Removed tests 2003-08-17 o Added more substitution types. 2003-08-16 o fixed a script searching bug in SFontOTF.cpp o fixed a small positioning problem 2003-08-15 o Added arabic-like shaping to Bengali to deal with Ra+Ya in the beginning of words. o for test added -noinit option to disable init feature (bengali) it is normal "init", not Ra+Ya o redefined what initial means: nothing stands before it. o More fixes to Ra+Ya 2003-08-13 o Fixed a coule of bugs in the new codebase. o Added CMreph and CMra. Removed VOc o Added better overhang recognition. o Added skip over marks. 2003-08-11 o Cleanup for LVT (Jamo) o Clean: Devanagari Bengali Gurmukhi Gujarati Telugu Thai Lao Tibetan Jamo 2003-08-10 o Moved code: Tibetan Lao and Thai went under the emulation. o Moved Gujarari to emulation. o Added Hangul JAMO according to MS otf spec - yet to see such a font. 2003-08-09 o Further cleaning of the code. Leaving absolute necessary SRendClass parameters before re-ordering and adding extras later. Test in rules.txt works fine - again. o Enabled ZWJ glyph substitution. 2003-08-08 o Tested with rules.txt, fixed a few bugs introduced another class for the new rendering routines. 2003-08-07 o reorganized classes, cleaned up things. Telugu and Devanagari moved to the new structure. o Cleaning up more code. 2003-08-06 o small bug fixed (uniscribe emulation-Devanagari). o enabled 3 consonant rule o renamed SFontEngine to ScriptProcessor. o Made SFontLookup interface to hide the actual font from ScriptProcessor. o Updated and cleaned up mytool/uni/indic.txt o Modified the default yudit.properties.in file to have some indic fonts by default. 2003-08-05 o added -nus option, and turned on us emulation by default for Devanagari and Telugu. o fixed minor bugs. Please read the interesting comment for MALAYALAM and TELUGU in SFontEngine.cpp::findBaseConsonant. o I can not find more bugs in Devanagari and Telugu. 2003-08-04 o Now Devanagari works with uniscribe emulation too. (with -us command-line option) o Updated Tibetan-Wylie.kmap HOWTO-tibetan.txt from Gregory Mokhin 2003-08-03 o Added Punjabi (pa) translations from Madhusudan Singh . o debugged ZWNJ ZWJ and reph/vatu with -us option (SFontEngine.cpp) o added -us option to uniprint. o Most things work in '-us' SFontEngine.cpp except things that are not supposed work. (eyelash - not documented in OTF) o added fix for eyelash. now I keep track of only one things: rphf,haln,half. I have not seen half in action. 2003-08-02 o Devanagari and Telu mostly works with -us option. 2003-07-31 o Started working on FontEngine.cpp for compatibility reasons. 2003-07-30 o Added experimental hardwire filters to be used with True Type fonts to filter-out ranges except: indic: U+0900..U+0FFF deva: U+0900..U+097F beng: U+0980..U+09FF guru: U+0A00..U+0A7F gujr: U+0A80..U+0AFF orya: U+0B00..U+0B7F taml: U+0B80..U+0BFF telu: U+0C00..U+0C7F knda: U+0C80..U+0CFF mlym: U+0D00..U+0D7F sinh: U+0D80..U+0DFF thai: U+0E00..U+0E7F lao: U+0E80..U+0EFF tibt: U+0F00..U+0FFF jamo: U+1100..U+11FF usage: fontname1.ttf:taml,fontname2.ttf:orya like: yudit.font.MSIndic=mangal.ttf:deva,tunga.ttf:knda,latha.ttf:taml,gautami.ttf:telu,raavi.ttf:guru,shruti.ttf:gujr,arialuni.ttf,yudit.ttf yudit.font.Indic=raghu.ttf:deva,ani.ttf:beng,pothana2000.ttf:telu,TCRCYoutsoUnicode.ttf:tibt,,code2000.ttf:taml,code2000.ttf:orya,dc-font.ttf:mlym This is strictly experimental and remains undocumented till I figure a better way to restrict fonts to ranges. o Fixed a possible bug in SFontOTF.cpp. 2003-07-29 o Fixed properties - now it saves comments in ~/.yudit/yuditrc gui/SYudit.cpp, stoolkit/SProperties.cpp stoolkit/SUtil.cpp , swidget/STextEdit.cpp o fixed ctrl in window/swin32/SWin32.cpp Added yudit.editor.xinputs.style: preedit-root-status-root preedit-over-status-over preedit-over-status-under preedit-under-status-under for win32. o fixed stoolkit/SString.cpp - fixed array overflow segfault. o fixed stoolkit/SParagraph.cpp - fixed array overflow segfault. o updated mytool/kmap/Dakelh.kmap from William J Poser 2003-07-28 o This line was missing in Yudit spec file: %{_datadir}/yudit/locale/el Thanks for the warning, Jean-Michel POURE ! o Changed swindow/SFontOTF.cpp: else if (tag==SString("liga")) to simply: else It logged in history/CHANGELOG-2.7.TXT too, and the remark said: lets' see what breaks. Well, Tamil broke as it has 'abvs' for si. Now Tamil is fixed back. Lets see what breaks now - i looked at the code and it should work fine. 2003-07-27 o Added Chained Contextual Substitution. o Fixed BUG From: Baiju M Date: Wed, 13 Nov 2002 13:29:53 +0400 (SCT) But single substitution is not working in Yudit, I tested raghu.ttf (Devanagari) font , there is some single substitution for vowel sign I (U093F), its not working, may be a bug. o Fixed 0C38 0C4D 0C1F 0C4D 0C30 Telugu rendering bug with pothana2000.ttf o Fixed speed problem for non-substituted clusters. o Fixed a bug when substitution starts. 2003-07-26 o Fixed position bug of marks (like in U+3082 U+309A) even for bitmap and non otf fonts. 2003-07-20 o behaves nicer on windows (does not spoil the screen). 2003-07-08 o Fixed install.sh to work under cygwin: From Frederic Wou" 2003-06-28 Started yudit-2.7.5.beta1. o applied yudit-2.7.5.patch1.txt to fix selection problem of unseen text. o updated Dakelh.kmap, Hanunoo.kmap William J Poser o Changes back ctrl-home and ctrl-end so that it wont select text. made it yudit-2.7.5.patch2.txt. o Fixed telugu rendering bug - that might help Tibetan too. The bug was reported by Chandra Kanth Chereddi and I found it in the bug database from Mikka Thu, 05 Jun 2003. This might help fix Tibetan rendering too. ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.7.5.TXT ./history/TODO-2.7.8.TXT0000644000175000017500000001246510434022300014352 0ustar henrichhenrich============================================================================== Bengali Khanda Ta In Bengali a dead consonant TA shows up as U+09CE BENGALI LETTER KHANDA TA in all contexts except where it is immediately followed by one of the consonants TA, THA, NA, BA, MA, YA, or RA. Khanda-Ta cannot bear a vowel matra or combine with a following consonant to form a conjunct aksara. It can form a conjunct aksara only with a preceding dead consonant RA, with the latter showing up as a REPH placed on the Khanda Ta. Previous versions of the Unicode Standard recommended that Khanda-Ta be encoded as TA + VIRAMA + ZWJ. Instead, the Khanda-Ta should be used explicitly in new text, but users are cautioned that instances of the old encoding may exist. ============================================================================== Date: 23 Apr 2004 09:01:11 -0000 From: Dr Anirban Mitra Hope you are in the process of developing the next version of Yudit. Your script processor is the best in Free software as far as Bengali (an other indic) script processing is concerned. It has helped us a lot in creating the first Bengali GNU/Linux distro called "Ankur Bangla LiveCD" . You will be happy to know that Yudit is included as third party software in the distro to help translator in translating the GUIs like GNOME & KDE in Bengali. 1. As per specification of Unicode 4.01 ra+ yaphala(ra + post-base form of ya) is to be separately coded from Ya+reph (above-base form of ra + ya) as below: ra+zwj+virama+ya > ra+yaphalaa ra+virama+ya > ya+reph The rendering has to be adjusted accordingly. 2. As per detailed discussion in unicode indic mailing list, The Khanda-Ta issue has been decided thus: Khanda-Ta will be accepted as a special type of Half form of ta that behaves like a halant form of ta. For example the cluster ta+virama+zwj+ka+matra-i will be rearranged as khanda-ta+matra-i+ka and not matra-i+khanda-ta+ka as being done now. 3. It has been a good idea to assign specific range to specific fonts so two fonts don't mix. But there is a problem with Devanagari Danda (x0964) & double danda (xo965) as well as vedic stress marks udatta ,anudatta etc. (x0951-0953). Though they are included in Devanagari block they are common punctuation mark for all indic language and they should be set to font of the character immidiately preceding the mark for aesthetic look. Now some personal request: 4. Please include MuktiNarrow.ttf available from http://savannah.nongnu.org/download/freebangfont/MuktiNarrow-0.94.tar.bz2 as the default Bengali font as it is good looking and is packaged as the default Bengali UI font for most GNU/Linux distros like Fedora, Debian, Mandrake as well as our AnkurBangla distro. ============================================================================== Date: Sun, 9 Nov 2003 22:09:17 +0100 From: eisvogel To: Gaspar Sinai Subject: Patch Yudit 2.7.6 / kmap / termination sequence & encoding Parts/Attachments: 1 Shown 32 lines Text 2 Shown 110 lines Text ---------------------------------------- Dear Gaspar, The files listed below proableby do have an encoding other than utf-8. When read those, a lot of 0xFFFD show up. mabye iso-8859-7: GreekBible.kmap GreekPolytonic.kmap maybe koi8-r: Russian-Translit-Nordic.kmap Russian-Translit-Slovene.kmap Ukrainian-Translit.kmap Eisvogel ============================================================================== Gaspar Sinai 2002-11-12 Need to enhance Lao: Requestor: Anthony Souphavanh font: http://laonux.muanglao.com/fonts/hongkadu.ttf Need to enhance Tibetan Requestor: Gregory Mokhin font: http://www.yudit.org/download/fonts/utibetan.ttf ============================================================================== Need kmap for Lao, Thai otherwise in theory they work In addition extra work may need to be done to peroperly support: o Sinhala o Khmer U+1780-U+17FF o Myanmar U+1000-U+109F o Tone letters 02E5..02EB Version 2.5 broke background printing. It shuld be restored. The problem is that all events are handled now in a job and when a job is executed the job is removed already. So event next does not call the updating job! Flickering should be eliminated by using off-screen rendering. Availability of on-screen rendering should be kept because of the low memory consumption. The following classes need cleanup: swindow/SX11* Make focus work on multiple panes, modal handling cleanup. Remove unncecessary code Handle colormap change. Add one big happy pixmap instead of creating many small ones (like in swindow/swin32/SWin32.cpp) Layered unicode support should be done in 3.0. A good reference: Metacode: http://www.cs.fit.edu/~satkin/docs/dissertation.pdf 3. Make a configuration screen A configuration screen would make Yudit more easy to use 4. Add an ability to specify more unicode ranges for fonts. (currently indic range is covered) 5. Adjusting of the line gaps as some fonts. 6. Make kmap list translatable. 7. Add more tables to: doc/otfsupport.txt ============================================================================== Gaspar Sinai gsinai@yudit.org Tokyo 2006-05-21 ./history/CHANGELOG-2.9.0.TXT0000644000175000017500000001210210733125740015070 0ustar henrichhenrich2007-12-21 - Added spell checking support for rovasiras (Hungarian Runes) - Prepared 2.9.0 release. 2007-12-15 - Added change to SHunspellPattern.cpp so that it compiles with g++ 2.96 - Added -ldl detection to configure.in - Added dylib is loaded now for __APPLE__ - Added -size parameter for printing from editor. - Added German from Mike Fabian 2007-12-14 - When printing from Editor window now prints only selected text if text is selected. - added canWrap to SGlyph.cpp so that STextView should use this instead of isDelimiter to decide on word wrap. 2007-12-13 - beta33 2007-12-12 - More information on printing from Yudit. - Windows ghostgun directory change in wuditw.properties - changed yudit.editor.syntax.error.foreground to red - Translation progres in history/translations.txt 2007-12-11 - Changed Highlighting(__H__) to __H__igghligting in all po files. - Display current highlighting mode in tooltip instead of main window. - Fixed redrwawing problems with small descent font. 2007-12-10 - Keyboard shortcut pastes syntax command in the command area instead of bringing up the dialog now. - ERROR and NONE now preserves default foreground color of original text. ERROR underlines it with the error foreground. - Fixed syntax none - Translation progres in history/translations.txt 2007-12-09 - Fixed generating too many glyphs problem when printing with bitmap fonts in direct mode. 2007-12-08 - Current geometry is now saved in config file, if changed - Made syntax selection dialog box. - Reporting errors when files are missing in syntax selection box. 2007-12-07 - Commented out forceful gaining of focus in SX11Impl.cpp because this could cause an infinite loop when the window is mapped and none of FocusIn even occures and none of the windows are ours. - Increased stoolkit/syntax/SSyntax.h: #define SD_UNIT_WORK_COUNT 200 - Line Separator can be inserted with (it will be orange now) - Form Feed can be inserted with (orange) - Form feed now prints correctly on printer - Created new glyphs for FF and LS 2007-12-06 - Added experimental support for hunspell spelling checker. - Changed selected background to DeepSkyBlue4. - Moved syntax colors in properties. 2007-12-03 - Made a framework around "syntax" keyword that could help to integrate external spell-checkers into Yudit. 2007-12-02 - Fixed Freehand drawing in doublebuffer mode. - Embedded now also have proper colors. - syntax still does not work well. 2007-12-01 - Updated swindow/swin32 to do double buffering for flickerless rendering. You can switch off double buffering with the command line switch via -ndb for both Unix/Linux and Windows. - added doc/HOWTO-build.txt 2007-11-30 - Creating double buffer only when rendering. - Changed installed to install mytool files in chunks 2007-11-29 - Added double buffering to avoid flicker -ndb command line option switches off double buffering in editor window 2007-11-28 - Updated install.sh from /usr/share/automake-1.9/ 2007-11-27 - Added stub that can be used for syntax highlighting in stoolkit/SSyntax.cpp and defined xml and properties highlight type gui/SYudit.cpp. This is still not ready, but the framework works so I though I might just add it. - Added timer to have a time-window to collect more keypress events and accumulate STextDataEvents. This will give time for the SSyntax.cpp to work on the highlighting. 2007-11-25 - Modified simple color highlighting to distinguish only Letters, Numbers and Others - Modified STextData to return size() == 1 if it is empty, because this makes more sense. 2007-11-23 - Give a more meaningful error message if DISPLAY is wrong. 2007-11-14 - Updated SGML.kmap 2007-11-08 - Added cp-1252.txt from John Wehle - Fixed SXInputMethod.cpp XGetWindowProperty to use unsigned char - Fixed SX11Impl.cpp XGetWindowProperty to use unsigned char 2007-10-28 - changed Hangul.mys so that Yi can be typed not only as Ei 'w 'i -> 0214 'W 'i -> 0214 to 'y 'i -> 0214 'Y 'i -> 0214 Changed 'E 'u 'i to 'Y 'i C759 -> 'E 'u 'i 'g C75A -> 'E 'u 'i 'g 'g ... 2007-07-22 - Fixed setlocale bug. - fixed SCIM input method in yudit.properties.in 2007-07-20 - Added Bulgarian-Translit.kmap keyboard map from Alex Izvorski aizvorski/gmail.com 2006-09-27 - Added Simplified Chinese (zh_CN) gui translations from John: vunzndi/vfemail.net, translated by Zhou Jinnian: zhoujinnian168/yahoo.com 2006-09-23 - Fixed syriac shaping bug in SFontTTF::substituteOTFGlyph. Now Syriac should work again with truetype otf fonts. 2006-09-07 - Capital letters have been added to Pali.kmap. 2006-08-26 - Added SCIM to default yudit.properties.in: yudit.editor.xinputs=SCIM,... - Fixed compiler warnings with gcc 4.1.0 2006-08-29 - Added Pali.kmap (original pali.kmap) from jon bressie box100/prodigy.net ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.8.1.TXT ./history/CHANGELOG-2.0.TXT0000644000175000017500000002756707532460062014750 0ustar henrichhenrich12 Jan 2001 Closed thsi changedlog and started a new one for 2.0 10 Jan 2001 - Feature freeze and test. - writing README announce html and FAQ.TXT 26 Dec 2000 STextEdit Works: - SEditor is pluggable the default has - kill line ^k - change input F1-F12 - change font ctrl-F1-F12 - Kinput2 works - Selecting text works Need to do - compund text converters for variants. - yinput converter - cut&paste - speed benchmark of rendering - decent scrollbar - history - undo to SEditor and some changes to STextEdit. 18 Dec 2000 Received a great cut&paste patch for 1.5 Bruno Haible made doc/goals.txt 22 Jun 2000 Cleanup and adding wingreek.my 03 May 2000 Mixed TTF and X11 font works. 27 May 2000 Rendering works. 15 May 2000 Added Spanish from Grzegorz Adam Hankiewicz and Juan Rafael Fernández García 25.March 2000 Added TIS_620.mys generated from TIS_620.bumap and Thai.kmap contributed by Theppitak Karoonboonyanan 4. Jan 2000 Removed flex dependencies: ================= modified configure.in modified Makefile.conf.in removed src/UParseLex.l removed src/UParser.cpp removed src/UParser.h removed src/UMapDefault.cpp New NMap featues (getEncodeWordSize, getDecodeWordSize) replaced: class UMap::encodeResultMax() class UMap::decodeResultMax() rearranged directories - help deleted obselete X11 - stripumap 3. Jan 2000 Finally I finished the NMap module. This will be the ultimate map. making UMap UInput flax and perl dependency obselete. With mytool and kmap and X11 maps are merged. Consequently I renamed KOI8_R.kmap to KOI8_R_KEY.kmap because it has some additional keys defined. All map files from data were moved to mytool. 7 Dec 1999 Removed everutyhing and started to rewrite Yudit from scratch in a no-matter-how-long-it-takes it-has-to-be-clean-and-reusable manner. The final goal is multi-palform yudit. 6. Dec 1999 Added menu translation da.utf8 from Birger Langkjer Added gnome/yudit.desktop yudit-trans.png yudit.png from Birger Langkjer 5. Dec 1999 Modified Danish.kmap Roman Czyborra@cs.tu-berlin.de modified by Birger Langkjer Added Polytonic.kmap Constantine Stathopoulos modified by Birger Langkjer Added GreekBible.kmap Constantine Stathopoulos modified by Birger Langkjer 1. Dec 1999 Checked the patch for 1.5 that was released soon after 1.5 30. Nov 1999 Just released 1.4. It was not compilable on solaris sparcworks due to some stupid errors. Fixed and planned to release 1.5 tonight. 27. Nov 1999 Finally null characters \u0000 work in yudit! ^@ inserts a null character. Insrted a couple of fixes for converters. 27. Nov 1999 freetype-1.1-62 makes yudit dump when exiting. compiling freetype-1.2 does not help. 25. Nov 1999 Added Avg.Width Add.Style to config parameters and menus (suggested by Markus). Added international time format to UPrint.cpp strftime (suggested by Thomas Wolff ) 24. Nov 1999 Currently 8 bit decoders/encoders do not convert anything below 0x80, now I changed it so that that range is 0x20..0x7f 24 Nov 1999 Jean Christophe ANDR=C9 French helpfiles makeumap.1 -n and -u options Testpage French additions Makefile to support all locales with wildcard Vietnamese kmap modifications but did not remane it VIQR 23 Nov 1999 0 characters from file are replaced by \u0000 escapes. Fixed U+03ffffff Introduced UTF8_TEXT format in X11 gui. Made long .h files for qt. 23 Nov 1999 Markus Kuhn do not display C0 characters, even if there are glyphs on these positions in the font in the SPACING font attribute: Condensed should read CharCell 23 Nov 1999 Christian Bucher in file:src/UPrint.cpp#374 fileBuffer = ( char *) mmap (0, fileBufferLen, PROT_READ, MAP_PRIVATE, fd, 0); ANSI C++ cannot cast void * in assignment 19 Aug 1999 added fr.utf8 Frech translations from Nguyen-Dai Quy 26 Jul 1999 defined(_AIX) in UXKinput.cpp to compile on powerpc-ibm-aix4.3.2.0 Philippe.Defert@cern.ch 19 Jul 1999 Added new Vietnamese VNtelex.kmap from Nguyen-Dai Quy 22 May 1999 Added Polish menu translations from: Gwidon S. Naskrent 16 May 1999 Added iso8859-3, iso8859-4 patches and XKB_iso8859-4.kmap from Ricardas Cepas (Ričardas Čepas) . Generated 8859_3, 8859_4 bumap files. 18 Apr 1999 Added Slovenian messages.po into the gui/src/sl.utf8 directory from Primoz Peterlin . 5 Apr 1999 Prepearing for release 1.3 24 Jan 1998 UWidget::endSelection bug fixed (uTextSizes==0) 24 Jan 1998 From Thomas Wohlfarth : Added translations from Stephen H.L. Wang: data/help/General-zh_TW.help.in data/help/Config-zh_TW.help.in Modified gui/src/zh_TW.utf8/messages.po 18 December 1998 From Thomas Wohlfarth : INSTALL.DE DE-RU.kmap LIESMICH.DE-RU gui/src/ru.utf8/messages.po gui/src/ja.utf8/messages.po gui/src/de.utf8/messages.po gui/src/zh_TW.utf8/messages.po gui/src/hu.utf8/messages.po data/help/Config-de.help.in - modified so that @prefix@ will be English because it will be overwritten by configure. help/General.help.in help/Config.help.in 15 December 1988 Eugene Crosser - KOI8_R.kmap 10 December 1988 Release 1.2 9 December 1988 Added German help pages from Thomas Wohlfarth 24 November 1988 Added German message.po from Thomas Wohlfarth Fixed "Not configured" text bug in MainWidget::translateMenu. 22 November 1988 Added Georgian.kmap, ArmenianEast.kmap, ArmenianWest.kmap from Mark Leisher 15 November 1988 Applied patch for UHC converter from Jungshik Shin 3 November 1998 Applied patch to help pages from Jungshik Shin 10 October 1998 Added Greek (monotonic) kmap file from Constantine Stathopoulos 7 September 1998 Fixed cut&paste JIS0212 from Kterm. 1 September 1998 Fixed JIS0212.bumap based on bug reports from Jim Breen. 25 August 1998 Added Italian translations from Pino Zollo 23 August 1998 Prepearing for release 1.1 23 August 1998 Added -e encoding option. 21 August 1998 Fixed serious bug in Translate 20 August 1998 Reorganized make so that qt and motif can be split off. 17 August 1998 Added fixes to compile on HPUX o removed check for MMAP. Apperantly I dont need such a sophisticated check From Wei-Lun Chao configure gives up on mmap in: data2 += (pagesize - ((int) data2 & (pagesize - 1))) & (pagesize - 1); if (data2 != mmap(data2, pagesize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_FIXED, fd, 0L)) exit(1); Added fixes to compile on FreeBSD o ranlib - thanks Ricardas Cepas Added fixes to compile on Irix o splitting library to split off X dependent part. 20 July 1988 Added new translations o zh_TW.utf8 from Wei-Lun Chao o Chinese-CJ.kmap from Wei-Lun Chao 10 July 1988 o added missing JAVA converter to menu. 17 May 1988 Major clean up of source code. Ready for release-1.0 8 May 1988 Added UNI converter. 7 May 1988 Added U+2028 (line separator) Added U+2029 (paragraph separator) 3 May 1998 Added CTEXT_KR converter (acutally renamed) Added JAVA converter Fixex printing bug with big font index (Gulim). 29 April 1998 Check added to deal with missing tupdate program in gettext. Still we need msgfmt. Added "last input" toggle i. Now you can toggle between the current and the last input map used. It works only in main edit window for now. 29 April 1998 Applied patches from Jungshik Shin to support JOHAB and UHC. Had to modify KSC5601 to have two forms KSC5601L and KSC5601R. This is necessary to distinguish lest and right encondings. Similarily the GB2312 was converted to GB2312L and GB2312R. Modified yuditrc.in to minimize the impact. 28 April 1998 Added a new format for kmap files. This can be used for Hangul and the built-in Unicode kmap. 21 April 1998 Added Esperanto and Mnenomic from Roman Czyborra 18 April 1998 Applied freetype-hint patch from Roman Czyborra Got kmaps from him: Danish.kmap German.kmap Polish.kmap Dutch.kmap Mnemonic.kmap SGML.kmap Mnemonic.kmap still had some problems. 9 April 1998 Received bug report and font maps from Jungshik Shin 7 April 1998 0.99 is out. First patch is out. Patch: uniconv -O 1 April 1998 Finished gui yudit. Need testing. Added -I and -O options to uniconv. 27 Mar 1998 Uniconv now handles -O and -I options. 24 Mar 1998 Added 10646 built-in umap for unicode fonts. 19 Mar 1998 Decided on gettext package. Had problems because libttf links this package and the libttf contained one that conflicted with that I had installed. Lost 7 days. (Could have written a new gettext package in 7 days...) 1 Mar 1998 Started writing gui with pure X 22 Feb 1998 Added new font mapping style that does not consume much memory and time. Added reusable FontMapCache 15 Feb 1998 New method to load fonts. Started gui tree. 9 Feb 1998 Changed class name to Yudit Release 0.97 9 Feb 1998 Added new file dialog. Motif file dialog did not work or dumped. Motif sucks bigtime. 7 Feb 1998 Added go to line Reorganized menubar 4 Feb 1998 Support for bumap (binary umap) through mmap. Added new korean map. Obselete one is OLD5601.bumap. 1 Feb 1998 Added Find/Replace. Added new options to configure script. 31 Jan 1998 KSC 5601 map was too old. The new unicode map has different codepoints. New optin -low for uniconv. 31 Jan 1998 converter class can handle 16 bit. The output input stream will change from 8bit to 16bit if a 16bit (encode-part) umap is used. 19 Jan 1998 Upgraded for freetype 1.0 12 Jan 1998 uniprint -E option fix 10 Jan 1998 Release yudit 0.95 10 Jan 1998 Change filename when "Save As..". 10 Jan 1998 Added Lituanian.kmap from Ricardas Cepas Also, as recommended I changed koi8-1 to koi8-r 10 Jan 1998 Make yudit recognize Debian style qt installation headers in /usr/X11R6/include/qt libs in /usr/X11R6/lib 10 Jan 1998 Make yudit compilable with egcs 1.0.1 8 Jan 1998 For motif 1.2 frame will be drawn with a title 5 Jan 1998 Conversion did not work properly because of some bugs in args. 17 Dec 1997 Added MSTXT for NT notepad or Word. Save whole buffer - not line-by-line Now HZ ~\n should work as well. Fixed config file checking bug. Clear selected text first when typing new string. 16 Dec 1997 Fix printing - if file starts of new lines only it would not print those. 16 Dec 1997 Move UCS2LE UCS2BE to UCS2Conv, modified uniprint and uniconv 7 Dec 1997 Fixed Home,End,Delete keys. 7 Dec 1997 Fixed uniconv UCS2LE UCS2BE 2 Dec 1997 Added postscript printing. 28 Nov 1997 Added True Type font rendering. 21 Nov 1997 Fixed rewind bug in config. file->clear(); ./history/CHANGELOG-2.5.4.TXT0000644000175000017500000000506607532460062015105 0ustar henrichhenrich2002-03-08 o Malayalam chillaksharam fixes o Fixed Old Hungarian Mirroring bug above EE80 2002-03-07 o Added iso-8859-16 iso-8859-15 converters. o Changed brackets in Yiddish FAQ and translations o Changed brackets in Arabic translations o Added a few comments in swindow/SFont.cpp 2002-03-06 Made changes to ZWNJ ZWJ handling in SFontTTF.cpp 2002-03-05 Old Hungarian code shift - todo SFont.cpp o transferred E650..E6FF to EE00 private area. o made 2 scripts: bin/shiftutf8.pl bin/shifthex.pl for the transfer o made mirroring algoritm better - any TTF can me mirrored now. o added koi8-u 2002-03-04 o Added Ukrainian Translations from Solotskyy Mykola o Updated Ukrainian kmaps (mys) 2002-03-02 o Updated German translations and FAQ from Thomas Wohlfarth o updated Old Hungarian kmap - AE K AS ATY capital letters are used now. 2002-02-28 o Added iso-8859-15 encoding support - gaspar o Updated fonts. 2002-02-27 o applied Kannada Telugu Miikka-Markus Alhonen. o added ncr decoder/encoder from Miikka-Markus Alhonen. o added koi8-c map from Miikka-Markus Alhonen. o made changes by Gaspar so that Old Hungarian keeps working even if some fonts re-define our unregistered/ousted/illegal characters in PUA. o added more findGlyph fixes to SFontTTF.cpp - Gaspar o merged rovtxt and rovstd - CMAP Type 0 is added to SFontTTF.cpp. 2002-02-26 Received patches from Miikka-Markus Alhonen: o added Kannada.kmap + pl o added Telugu.kmap + pl o added mirroring.my mirroring.txt mirroring.pl o added bidi-indic.patch - INDIC_CONSONANT_RA removed BiDi mirroring added. I made o The following kmaps were made type=clkmap Tel-Inscript.kmap, Telugu.kmap, Kan-Inscript.kmap, Kannada.kmap, Mal-Inscript.kmap, Ori-Inscript.kmap o OLD Hungarian Ligatures + Kmap in PUA. o HOWTO-rovasiras.txt (OLD Hungarian doc) o rovstd and rovtxt is separated for Old Hungarian font and text. o FIXED OR and NC ligatures 2002-02-24 Fixed font scaling problem (again:). Added new attribute for Old Hungarian rovasiras fonts (strictly RL/LR). 2002-02-23 Malayalam clustering kmap fix: -type ckmap was misssing. Now halant and ligatures are ok. 2002-02-21 I was a bit lazy I just: Added Ukr_Extended.mys Ukrainian.mys kmaps (!) from Dmytro Kovalov 2002-02-16 Added bin/Malayalam.kmap.pl malayalam.patch from Miikka-Markus.Alhonen@tigatieto.com 2.5.4.beta1. made ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.5.2.TXT ./history/CHANGELOG-2.7.5.TXT0000644000175000017500000001454007672571774015127 0ustar henrichhenrich2003-06-14 o Fixed ./tests/text/ipa.txt and http://www.yudit.org/pua/ (mate@furui.cs.titech.ac.jp) o Renamed 2.7.5.beta17 to 2.7.5 stable version o Final tests. o Fixed minor bug in swin32.cpp 2003-06-13 o Made it compilable on SUNWspro. Please manually edit Makefile.conf.in (or the generated Makefile.conf) to have AR as CC -xar -o (commented out in the file.) o Made distclean target in Makefile. 2003-06-10 o Added some rules so that it detects it better if c++ is needed and cc is not enough (gcc 3.x). (configure.in - gaspar) 2003-06-06 o Updated with Miikka's patch for Unicode 4.0. Changes are in: bin/kmap/Gujarati.kmap.pl bin/kmap/Bengali.kmap.pl bin/kmap/Gurmukhi.kmap.pl bin/kmap/Kannada.kmap.pl mytool/mys/bidiclass.mys mytool/mys/charclass.mys mytool/uni/indic.txt mytool/kmap/Gujarati.kmap mytool/kmap/Gurmukhi.kmap mytool/kmap/Bengali.kmap mytool/kmap/Kannada.kmap mytool/kmap/Urdu-Nastaliq.kmap o Added Dakelh.kmap from William J Poser o Updated Dakelh.kmap from William J Poser 2003-05-31 o Re-generated yudit.ttf with new comments 2003-05-27 o Updated Slavic.kmap o Added doc/sr/FAQ.TXT to Makefile. 2003-05-26 o Added Slavic.kmap Serbian.kmap FAQ.TXT.in and messages.po for Serbian by Strahinya Radich o Updated yudit.ttf, BlissSymbolics.kmap and mytool/uni/BLISSYMBOLICS.TXT by Ross Summerfield 2003-04-18 o Fixed "FF=0x093D", // DEVANAGARI SIGN AVAGRAHA in Devanagari-Phonetic.kmap (Michael Bunk) 2003-04-17 o Added workaround for postsccript printing locale bug reported by Michael Bunk 2003-04-11 o Added Telugu-Rts.kmap from Murali Nandula o Telugu font Pothana2000.ttf: http://www.kavya-nandanam.com/dload.htm 2003-04-02 o Added mytool/uni/BLISSYMBOLICS.TXT o Updated mytool/kmap/BlissSymbolics.kmap 2003-03-28 o Updated Latin.kmap from Glutexo 2003-03-23 o changed 0x37e=... to 0x37=... in mytool/kmap/Hangul3.kmap on the advice of Byunghyun Oh . 2003-03-19 o added CS.kmap from Zdenek Bernard 2003-03-16 o Added MarkToMark OTF substitution for Tibetan. o Tibetan ready for testing. 2003-03-09 o Updated Kaji.kmap.html and Kanji.kmap o Created storeMarkToBasePositions, need more positioning features. 2003-03-06 o Added kanji.kmap as Kanji.kmap from David Oftedal o Added DOCUMENTATION.html ad doc/Kaji.kmap.html from David Oftedal 2003-03-03 o new keymaps from David Oftedal Old English Futhorc.kmap -> Runic-Futhorc.kmap Elder Futhark.kmap -> Runic-Futhark.kmap The Hobbit Dwarf Runes.kmap -> Runic.kmap (removed Runes.kmap) o added bliss62yudit.kmap as BlissSymbolics.kmap from Ross Summerfield o Updated HOWTO-tibetan.txt with the one from Grisha Mokhin dated 6 Feb 2003. 2003-03-02 o Added GeorgianB.kmap ArabicBuck.kmap k_grigol.README (as doc/HOWTO-georgian.txt) from Ken Beesley o added selection patch from Maarten van Gompel (in tests/patches/proycoon.patch.txt). Still had some undo issue. o Added mn (Mongolian) menu translations and Mongolian.kmap from Natsagdorj Shagdar o Added Runes.kmap from David Oftedal 2003-02-28 o Added Kazakh-prefix.kmap from Sairan Kikkarin 2003-02-16 o Added modified Latin.kmap from Glutexo 2003-02-12 o Added Greek GUI translations from Velonis Petros 2003-02-11 o Added ArabicBuck.kmap and HOWTO-keymap4.txt (as HOWTO-keymap.txt) from Ken Beesley (Mail from Feb 6). o Added doc/cs and gui/locale/cs (Czech) contributed by Lubos Stanek o Added fix of gettext complaining about "" strings contributed by Lubos Stanek (patch5) 2003-01-29 o Added RuSlav.kmap from Sakari Aaltonen as Russian-Translit-Nordic.kmap 2003-01-28 o added Tibetan patch from Miika. patching file mytool/uni/indic.txt patching file stoolkit/SCluster.cpp patching file swindow/SFontTTF.cpp o Changed yudit.ttf (fontname is Yudit instead of Yudit Unicode) 2003-01-26 o replace Kana.kmap with a better one by Kazunobu Kuriyama o added HOWTO-keymap3.txt. After some editing this should replace HOWTO-keymap.txt. 2003-01-21 o added mytool/kmap/ArabicBuck.kmap from Kenneth R. Beesley o added HOWTO-keymap2.txt. After some editing this should replace HOWTO-keymap.txt. 2003-01-17 o applied SX11Impl.cpp.patch from Kazunobu Kuriyama to fix o problem in kinput2. 2003-01-13 o changed names of yudit.editor.xinputs.style preedit-over-status-over preedit-over-status-under preedit-under-status-under preedit-root-status-root 2003-01-12 o added over-the-spot-off input method (this is a non-standard name for XIMPreeditPosition | XIMStatusArea.) 2003-01-11 o added yudit.editor.xinputs.style property to yudit.properties. possible values: root,over-the-spot,off-the-spot 2003-01-07 o Fixed ArabicKeyboard.kmap 054f -> 064f 2003-01-05 o Create 2.7.5 tree from 2.7.2 o Applied SAMPA.patch - minor fixes to SAMPA.kmap 2.7.2.patch1 - DOS/PS/UNIX fix 2.7.2.patch2 - MAC lineformat 2.7.2.patch3 - pacth1,patch2 fix o 2.7.2.patch4 by Maarten van Gompel - selevting with shift and overtyping (keep pressing shift) fix o Added BengaliSona.kmap from Bijon B Shaha o Removed dependency on ws2_32.dll - this means it will work on Windows 95 o Added year 2003 to *.h and *.cpp files. o Added patch from Kazunobu Kuriyama to move the status to the bottom for kinput2 input. Still need to do the same for XInput. o kinput2 which shift-space now works both ways (in and out) ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.7.2.TXT ./history/NEWS.2.7.50000644000175000017500000000205407672515360013721 0ustar henrichhenrichVersion 2.7.5 of the Unicode Text Editor Yudit has been released. This version is mainly based on contributions/bugfixes from users. Download: -------- http://www.yudit.org/download.html Homepage: -------- http://www.yudit.org/ Changes since version 2.7.2: --------------------------- o Updated for Unicode 4.0 o Added entry level (not full) Tibetan support with some Open Type Fonts o Added yudit.editor.xinputs.style property to yudit.properties. possible values: root,over-the-spot,off-the-spot o New menu translations: Czech, Greek, Mongolian, Serbian (cyrillic) o New keymaps: Telugu-Rts, CS, Kazakh-prefix, Runes, Dakelh (Carrier syllabics), ArabicBuck, GeorgianB, BengaliSona, Slavic, Serbian, Kanji, o Added new configurable xinput styles: preedit-over-status-over, preedit-over-status-under, preedit-under-status-under, preedit-root-status-root o New Yudit specific Private Use Area assignment: mytool/uni/BLISSYMBOLICS.TXT (BlissSymbolics.kmap, yudit.ttf) o Bugfixes and hopefully not many new bugs :) Enjoy! Gaspar 2003-06-14 ./history/SS_Open.xpm0000644000175000017500000000134107532460064014577 0ustar henrichhenrich/* XPM */ static char* SS_Open[]={ "20 20 14 1", "k c #000000", "i c #eae793", "l c #808000", "f c #c7ba2b", "e c #948121", "j c #4b7b82", ". c None", "c c #48964a", "g c #849686", "a c #303030", "d c #008000", "# c #585858", "h c #004000", "b c #316632", "....................", ".........##.........", "........##a#........", "...######aba#.......", "..#aaaaaacdba#......", ".#aefffaccgdha#.....", ".#aeeiacdggdbha##jj.", ".#kaaabbbddbbbhaa##.", ".#klaaaaaddhaaaaak#.", ".#kleeeeabdhaeeeak#.", ".#kliiffabdhaffeak#.", ".#klifffabdhaffeak#.", ".#klifffabdhaffeak#.", ".#klifffaaaaaffeak#.", ".#kleeeeeeeeeeeeak#.", ".#klllllllllllllak#.", ".##kkkkkkkkkkkkkk##.", "..################j.", "....................", "...................."}; ./history/translations.txt0000644000175000017500000000345310733117216016026 0ustar henrichhenrichNeeded The following words need to be translated: # File: SHighlightD.cpp, line: 55 msgid "Category" # File: SHighlightD.cpp, line: 59 msgid "Highlighting" # File: SHighlightD.cpp, line: 69 msgid "Remark:" Update Received: pl Pawel Zawila-Niedzwiecki bg Alexander Shopov (full po file) ru Vyacheslav Dikonov sl Roman Maurer ga "Kevin Scannell" hu Gaspar ja Gaspar sr Страхиња Радић Mail Rejected: fr Olivier Faucheux ta T. Vaseeharan fi Miikka-Markus Alhonen gu Vibha Sinojia uk olotskyy Mykola zh_CN az Vasif İsmailoglu ko Jungshik Shin de Mike Fabian instead of Thomas Wohlfarth Pending az Vasif İsmailoglu bn Dr Anirban Mitra de Thomas Wohlfarth hi Sanjay Khatri mn Natsagdorj Shagdar pa Madhusudan Singh vi hoan zh Joe Man ar Arabeyes cs Luboš Staněk el Velonis Petros gu Vibha Sinojia mr Swapnil Hajare ur S H A N yi Raphael Finkel zh_CN Additinal: A17: (FAQ.TXT.in) ... If you type "howto syntax" in the editor command area a help file is displayed, which describes spell checker support too. Only hu ja en is translated. ./history/CHANGELOG-2.5.TXT0000644000175000017500000003426007532460062014741 0ustar henrichhenrich2001-12-13 Fixed delimiter-bug. Translated 2001-12-12 Added Finnish menu translations. Added yudit.ttf from Peter Soos. Prepeare release 2.5 within days. 2001-12-11 Fixed SFontTTF to take external encoding with :encoding. Added guide for platform/encoding. 2001-12-09 SIO.cpp fixes, printing fixes. yudit.default.preview.command should be removed for new 2.5 version in users' ~/.yudit/yudit.properties because no it takes only command for preview. 2001-12-08 Fixed shaping bug with first line in nextly read file having Arabic. Fixed tatweel (again :) Added some FIXME comments in isTransparent. Changed SIO.cpp quite a bit. 2001-12-06 Added sample for arabic, removed space from transparent chars 2001-12-05 Made a half-hearted attempt to implement the Unicode implementation of shaping - failed. Have check why. Old hack is used. Added experimental: 0644 0622 -> FEF5 0000 0000 FEF6 0644 0623 -> FEF7 0000 0000 FEF8 0644 0625 -> FEF9 0000 0000 FEFA 0644 0627 -> FEFB 0000 0000 FEFC This is only for experiment. STextData is glyph buffered! Added ArabicMono and ArabicComp 2001-12-04 Very basic without ligatures. Wow! Many thanks to Mohammed Elzubeir! MIK.my from Alexander Shopov 2001-12-03 patched category.txt. bumap does not handle 0!!! patched arabic, but it will be good only if I have new STextData. fixed undo, linetype. added Finnish FAQ. 2001-12-01 Added glyphinfo: noshape: for characters unshapable. Added delete/erase for YuditInput. Composed glyph fallback font drawing fix. (Draw one after the other , not on top of each other.) Small fixes to deshape and shape converters. Added composing Arabic kmap. 2001-11-29 -1 shape. SS_SHAPE_SINGLE in STextData.cpp should be defined if fails to work fixed a serious bug in setLayout. fixed history buffer. Further optimized code. What is left is moving border to panel, so that you can create Widgets wihtout fancy stuff. 2001-11-28 Shaping (Arabic) works. Windows port almost finished. Licence change. If combining glyph is not available for presentation form, I combine, similarily to overstrike. Except I write one glyph after the other. Fixed fontwidth problem for reverse glyphs, move problem for filedialog. 2001-11-23 Added chineese.po from Joe Man 2001-10-22 STextIndex.cpp: getShape, reShape and shape.my should be create and we have shaping. 2001-10-22 Mouse capture. Tital rewrite of resize and some window stuff. Improved X11 preformance. Label bug fixed (redraw-> clip missing) 2001-10-20 Rewriting setLayout to forceLayout. Not preferring setLayout any more. Made copying strictly adherent to GNU version 2. 2001-10-12 Added az Vasif Cabbarli es + new Spanish.kmap Juan Rafael Fernández García sl + fixes Roman Maurer Fixed: Speed problem on externap map based file types. SUniMap.cpp hacked. Imposed a limit of 10 characters for combining. Need a better SUniMap.cpp SBMap.cpp There is a bug in XManager PC X Server. Workaround added. 2001-10-10 Final touches, added one patch to kanji.hwd. Changes dimension to geometry in yudit.properties. Rearranges keys and removed one in SFraahand.cpp Added es,bg,fr,hu,ja re-polished hu,ha,sr for utf-8 Realease waits for translations. 2001-10-09 Added (in comments) yudit.editor.left.foreground=black yudit.editor.right.foreground=blue yudit.editor.background=black Added freehand (Handwriting Recognition) input method, that is internally supported. 2001-11-05 Fixed non-spacing mark problem introduced by glyph cacheing. Made progress in swidget/SFreeHand.cpp and stoolkit/SHWConverter.cpp Total redesign needed later. 2001-11-02 Fixed property loading. Empty newlines were ignored. Added a few transliterations as default. 2001-11-01 Fixed shift-jis converter bug. Fixed man page for uniprint Make stoolkit/hw for handwriting data 2001-10-31 Started on swidget/SHandPad 2001-10-30 Started on swidget/SDrawing 2001-10-28 Making certain methods inline in SString made binary twice as big. Rolled back SString inlines - they did not improve speed that much anyway. Fixed font issues, made new fontsizes. Fixed property comment '#' ends with '\' bug. Optimized memory usage of a Glyph. Now it takes much less memory. It also speeded up a bit when loading a file. Memory is still a concern. 2001-10-28 Optimizing code with gprof. Split off SHShared for hashtable because it abuses vectorSize. (Vectorsize refers to a non-continuous vector.) Fixed start-up slowness, (font was loaded twice, with size 16 too). Workingwith big files is still a problem. 2001-10-27 Updated doc/hu/FAQ.TXT.in Updated doc/ja/FAQ.TXT.in 2001-10-26 Prepearing for 2.4.8 release. Added yudit.editor.dimension to properties and the correspondig -d or -dimension command line option. need to update docs. Changed default font and dimension Changed mytool/uni/ISO002.TXT to allow for space used in iso-646.my -schumacher-clean-bold-r-normal--16-160-75-75-c-80-iso646.1991-irv so that [20] is not displayed anymore for this font. 2001-10-25 Removed yudit-2.4.patch6.txt Added yudit-2.4.patch7.txt gettext bug fix Added yudit-2.4.patch8.txt gettext makefile fix removed c++ library dependence Fixed spec and added a template of it to doc/yudit-spec-templace.txt Updated CHANGELOG.TXT 2001-10-24 Added yudit-2.4.patch6.txt gettext bug workaround Raplaced SGML.kmap by Jernej Kovacic Raplaced TeX.kmap by Jernej Kovacic 2001-10-05 Added TCVNkey.kmap Le.Hong.Boi@quantic.com.vn Added TCVNcombine.kmap Le.Hong.Boi@quantic.com.vn 2001-08-29 Added yudit-2.4.patch5.txt Added new yudit.spec replacing Miroslaw Prywata , from Bernhard Rosenkraenzer I've just tried to compile Yudit on a current Red Hat Linux system - the code itself works nicely, but the spec file is quite broken. It hardcodes %{prefix}/man (which doesn't exist on FHS compliant systems, such as RHL >= 7.0), doesn't build as normal user and contains all localizations unconditionally. 2001-08-23 Added CS-dead.kmap Added Czech.kmap Added Hungarian-prefix.kmap RU-javerty.kmap RU-translit.kmap SK.kmap from Radovan Garabík 2001-08-19 FAQ-fi.TXT from Miikka-Markus Alhonen 2001-08-16 Added yudit-2.4.patch4.txt by Dirk Bhagat I've downloaded and installed Yudit on Linux, yudit-2.4.tar.gz off the yudit.org website. There is a nasty typo where you call getpwuid using getpid() instead of getuid(). This makes yudit try to write files into random homedirs. If you run it as root, this is a root exploit, since someone could simply link a .yudit file to /etc/passwd and wait for the fun to begin. 2001-08-14 Added yudit-2.4.patch3.txt - Fixed misinformation. 2001-07-28 Added smeTeX.kmap from 2001-07-04 Added SR-Cyrillic.kmap Jernej Kovacic (jkovacic@email.si) 2001-07-03 Added yudit-2.4.patch2.txt from Miikka-Markus Alhonen There was a bug in Yudit 2.4 concerning certain TTF fonts. I was able to solve the problem after all (it wasn't a memory leak) and since there has been no new distribution (and not even a patch) of the programme after that time, I assume that this bug might still be there and I should inform you about it. Added messages-cz.po from Joe Man 2001-06-16 Modified TeX.kmap by Jernej Kovacic added ex-Yugoslav characters 2001-05-20 Added ASCII-IPA.kmap from immy Kaplowitz 2001-04-05 Added Russian-ISO-Translit.kmap from Thomas Henlich 2001-04-01 Added yudit-2.4.patch1.txt from Miikka-Markus Alhonen I fixed a nasty bug that has been irritating me for a while now. This bug occurs when keyboard input contains characters >= 0x80. So, when I for example press a key on my keyboard which generates 0xf6 (o umlaut), the editor interprets it as U+FFF6. If I have a kmap file where the 0xf6 is a part of a sequence, such as "0xf6_" to generate U+022B, the editor interprets it as U+FFFFFFF6. So, there is only a problem with signed and unsigned characters, which is fixed by applying the patch attached to this message. Added messages-fi.po from Miikka-Markus Alhonen 2001-03-30 Added FAQ-cz.TXT from Ondrej Karny Added Croatian.kmap from Thomas Henlich 2001-04-06 Added Russian-ISO-Translit.kmap from Thomas Henlich 2001-04-01 Added Finnish Message and Finnish FAQ, yudit-2.4.patch1 from Miikka-Markus Alhonen 2001-03-31 Added Croatian kmap from Thomas Henlich 2001-03-30 Added Azeri menu from Vasif Cabbarli Adeed Chineese menu translations and FAQ.txt from thomas.wohlfarth@usa.net 2001-03-23 Added prefix option to rpm - spec file provided by Miroslaw Prywata 2001-03-17 Renamed yudit-2.4.beta-8 yudit-2.4 moved yudit-2.4.beta-9 (arabic experiments) to yudit-2.5.beta-1 Release ready 2001-03-05 Added Spanish menu translations from Juan 2001-03-03 Added a brand new Belarusian.kmap from Alexander Mikhailian Make improvement in X11 bitmap font rendering: 66ms -> 24 ms by trimming extranous X11 traffic. Needed SObject destructor to fix memory leak. 2001-03-01 Added new sr-messages.po from Slobodan Added new de-messages.po from Thomas 2001-02-28 Added new yi-messages.po from Raphael. Added new fr-messages.po from Faucheux 2001-02-27 XKB_iso8859-4 kmap removed. Use iso-8859-2 The KOI-8 map will not be removed becuase it contains stuff ,, '' Added yudit-2.4.beta-3/mytool/uni/windows-1255.txt from Michael J. Radwin Applied yudit-2.3-3.diff profiling patch from Ondrej Karny read remarks in todo 2001-02-15 Fixed bug printing 0x1fa missing glyph (99) in broken arial.ttf Added Input Method selector dialog Added STextTable dialog Fixe Kana.kmap so that it would have \ instead of Applied all the pacthes for 2.3 from Ondrej Karny - font drawing bug - MAP_FAILED not defined on HP/UX Added Spanish (es) FAQ and translations from Juan Rafael Fernández García Added Bulgarian (bg) translations and Bulgarian samples to TestPage.txt from Alexander Shopov Added French (fr) translation from Olivier Faucheux Added Serbian (sr) translation from Slobodan Markovic 2001-02-12 empty replace added replace text "" 2001-02-11 Added yudit.command.font yudit.command.fontsize Slovenian translations (sl) from Roman Maurer made toolbar labels wider syntax focus changed enter now quits dialogs except question dialog. Fixed SBHashtable::cleanup() bug turned on cahcing in swindow/SFontImpl.cpp this should save some memory. Azeri translations updated 2001-02-10 Really found the timer bug. It vas in SBVector::find. Rearranged message bar. Return is ok in filemanager if pressed in filename input. Now if a text is selected, and direction is changed, the Selected text will change its direction. Updated updated German translations from Thomas Wohlfarth 2001-02-09 Fixed TTF bug Compiled on FreeBSD Renamed simple to stoolkit to make it compilable in FreeBSD Added stuff to make it complable on other platforms too. 2001-02-08 Added (Yiddish) yi/FAQ.TXT and locale yi from rfinkel@mail.csse.monash.edu.au (Raphael Finkel) 2001-02-07 Added X11 event handler for robustness Fixed TTF dump bug. Fixed SEventBSD (again)ing 2001-02-06 Remade SEventBSD SClient - it uses UniqueID. The "miracle" message should not appear now. (It failed when the timer was removed and the same memory block was allocated again. Added command line howto Started HOWTO-install.txt 2001-02-05 Devanagari By Sanjay Khatri Non-spacing multi-level compositions (gaspar) 2001-02-03 FileDialog and message dialog is 'usable'. Composition works - as compositions can work at all. Fixed "\"" escape bug. Removed saving file. 2001-02-02 Added 8859-9e.TXT received from "Vasif Cabbarli" Added Azeri.kmap received from "Vasif Cabbarli" Added az/messages.po mv Hellenic.kmap GreekPolytonic.kmap 2001-02-01 Added composing support (up to 2 characters - easy to extend Added Hellenic.kmap from Antonis Tsolomitis Removed Polytonic.kmap on request from Constantine cstath@irismedia.gr 2001-01-30 Received a lot of advice and a better Hebrew kmap from Raphael Finkel Created STexDataBD.cpp to mode the bidi part of textdata. Simplified text line split. 2001-01-23 Fixed caret background bug (not getting set) Started to write an SFiiler.cpp 2001-01-22 Added missing mytool/uni/gb-2312-l.my Added missing mytool/uni/gb-2312-r.my Added file encoding on top Made it slimmer Added to yudit.properties: yudit.label.foreground yudit.title.foreground yudit.default.font yudit.default.fontsize yudit.editor.showbreak found cordump bug that happenned when selecting sg and opening a new file. Added Hungarian and Japanese FAQ 2001-01-22 Added de/FAQ.TXT from Thomas Wohlfarth Added de/LC_MESSAGES/messages.po from Thomas. Updated doc/TestPage.txt from Thomas 2001-01-22 Applied patch from Ričardas Čepas (FreeBSD compile) 2001-01-21 Added Dnd protocol for old KDE (a mere hack) 2001-01-20 Added xdnd support. 2001-01-19 Applied patch 0-4 and updated version to 2.2 2000-01-12 Started a new CHANGELOG for yudit-2.0 ./history/CHANGELOG-2.7.8.TXT0000644000175000017500000000530710217771722015113 0ustar henrichhenrich2005-03-22 o 19:30 JST beta period ended. 2005-03-21 o added filename to title bar. o set application icon. 2005-03-09 o added doc/it/FAQ.TXT.in contributed by Marco Ciampa 2005-02-23 o Applied patch from Marcus Meissner for gcc4. (His other patch for InputMethod.cpp fixes already fixed items) 2004-12-17 o applied yudit-2.7.6-patch2.txt from John Lane john at turbolinux.co.jp. this fixes InputMethod.cpp last arg 0 (int to char*) on 64 bit intel. 2004-08-21 o uniprint and uniconv help message to be printed on stdout. 2004-08-02 o Added mytool/kmap/GreekAncient.kmap doc/HOWTO-greekancient.txt from Yves Codet 2004-07-09 o Added some Bangla TODO items from Dr Anirban Mitra. o Added Telugu FAQ into doc/te/FAQ.TXT.in from krsnadasakaviraju@yahoo.com. o Modified French kmap adding NO-BREAK SPACE RIGHT SINGLE QUOTATION MARK (APOSTROPHE) from Yves Codet o Modified Klingon.kmap adding KLINGON LETTERS N+GH for easy typing by "David L. Yeung" 2004-03-10 o Fixed Malayalam-Inscript.kmap: "0x3d=0x0D43", // MALAYALAM VOWEL SIGN VOCALIC R o Added Sanskrit-Translit.kmap from Horia Dumitrescu 2004-01-25 o Added SpanishPrefix.kmap from Jesús Marín 2004-01-04 o Added Irish (gui/local/ga) from Kevin Patrick Scannell 2003-12-09 o Updated Tibetan-Wylie.kmap from Gregory Mokhin o Added termination patches for mytool/kmap/Berbere-etendu.kmap mytool/kmap/Bulgarian.kmap mytool/kmap/Devanagari-Phonetic.kmap mytool/kmap/GrandLatin.kmap mytool/kmap/Gujarati-Inscript.kmap mytool/kmap/Oriya-Inscript.kmap mytool/kmap/Russian-Translit-German.kmap mytool/kmap/Russian-Translit-Slovene.kmap mytool/kmap/Telugu-Inscript.kmap from eisvogel 2003-11-23 o Added ArabTeX.kmap from Alberto Corbi Bellot 2003-11-05 o added CS-qwerty keymap from Michal Èihaø 2003-10-04 o applied kmap patch yudit-2.7.6.patch1.txt 2003-09-20 o Added new menu translations: mr Marathi Swapnil Hajare gu Gujarati Vibha Sinojia o Added jodakshar.hwd marathi.hwd roman.hwd handwrinting recognition files from Swapnil Hajare. All these have been received from: http://www.indictrans.org/ ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.7.6.TXT ./history/CHANGELOG-2.6.TXT0000644000175000017500000001057407532460064014746 0ustar henrichhenrich2002-04-27 Added direct rendering for iso10646 encoded bdf font files for platforms that do not have X11. Added bitpoints to SCanvas to avoid performance problems. 2002-04-26 Made direct rendering support for unifont.hex - it is just like another font in the list. It is good where there is not native font available. 2002-04-25 Changed locale name cz to zh this is the ISO 639 official code. Added map file for wadalab-gothic.ttf:shift-jis. Redefined SHORT -> SD_SHORT e.t.c in TTF modules because of clashes. Fixed broken font support in SFontTTF.cpp (watch both delta and glyphmap) 2002-04-24 Added cmap type 2 support for locally encoded fonts. Added Xlib Composing key support through x-utf-8:locales. 2002-04-22 Changed SGEngine.ttf/SGEngine.h to use nonzero winding rule for polygon fills. Fixed coredump problem on wada.ttf. 2002-04-19 Removed fallback XUtf8LookupStirng that was borrowed from xterm - could not make it work stand-alone (neede a lot of other things from xterm) - now using ascii fallback. Compile check on PowerBook 2400: TTF rendering bug fixed. 2002-04-16 Added JIS X 0213 to Hiragana.hwd and Katakana.hwd handwriting data. 2002-04-15 Added Japanese translation fixes from Jun P.FURUSE 2002-04-12 Updated for version 1.1 of JISX0213-1.TXT. Added x-input methods. 2002-04-11 Took Juliusz Chroboczek's XUtf8LookupStirng code from xterm. richard.tebb@convergys.com helped me find a bug with debugging through email. Cleaning swindow/SFontImpl.cpp. Adding XIM (half done) 2002-04-10 1.0 JISX0213 updates. use alias shift-jis-3 for Shift_JISX0213. Updated HOWTO-japanese according to shift-jis-3 alias. As there was not change in FAQ.TXT since 2.5 I modified 2.5 to 2.6 in all FAQ file translations. 2002-04-08 Updated doc/HOWTO-Japanese.txt. ksx-1001.my ksc-5601-r ksc-5601-l up-to-date. jis-0201.my jis-0208.my jis-0212.my - checked - using old one new: gb-gb-18030.my jis0213-1.my jis0213-2.my big-5.my gb-2312-l.my ksc-5601-l.my - supposed to be no change. Added shift-jis-3,euc-jp-3,iso-2022-jp-3 text converters. shift-jis-0213 is also an encoder/decoder map so it can be used as font map too. The official name of shift-jis-3 is Shift_JISX0213 and euc-jp-3 should be EUC-JISX0213. I just could not type these in. 2002-04-07 Built JIS0201.TXT JIS0212.TXT JIS0208.TXT Got JOHAB.TXT KSX1001.TXT KSC5601.TXT Build integrity chack needed for BIG5.TXT GB2312.TXT Need to type in: JIS0213-1.TXT JIS0213-2.TXT 2002-04-06 Retired ksc-5601-old.my Use: ksc-1001.my instead. 2002-04-04 Finished surrogate changes. See changes in man uniconv: o utf-16 o utf-16-le o utf-16-be o utf-8 o utf-8-s o java o java-s o utf-7 No visible surrogates execpt when using java-s, utf-8-s or cut&paste. 2002-04-03 Hacked surrogates into Yudit (Gaspar). Changed: o gui/SMessageBar.cpp o stoolkit/SCluster.cpp o swindow/SFontTTF.cpp - cmap table format 12 added Need composing support on clusters, and then we can move everything into clusters, as opposed to having everything in SGlyph. Added OldItalic experimental Plane 1 kmap o bin/olditalic.pl o mytool/mys/OldItalic.mys - produces UCS4 You can test plane1 with code2001.ttf. As code2001.ttf seems to have RL glyphs for OldItalic you need to specify code2001.ttf:unicode:RL in yudit.properties to get proper software glyph mirroring in both directions. (Added Old Italic to SFont.cpp) 2002-03-20 o Unicode 3.2 addition to shape.mys FDFC -> 0631 06CC 0627 0644 o Unicode 3.2 additions in mirroring.txt. o Unicode 3.2 additions to precompose.mys: 2ADC -> 2ADD 0338 <-> 2ADD 0338 -> 2ADC o Unicode 3.2 additions (mainly control characters): iso-8859-9.my iso-8859-8.my iso-8859-7.my iso-8859-6.my iso-8859-5.my iso-8859-4.my iso-8859-3.my iso-8859-2.my iso-8859-1.my iso-8859-16.my iso-8859-15.my cp-1251.my cp-1250.my 2002-03-27 o added patch1 - tcvn o added patch2 - Home-End o added patch3 - gb-18030 encoding o added SIO truncate o added addon: yudit-FAQ-Bulgarian-UTF-8.txt FAQ-2.5.4.es.TXT yudit-2.5.4-bg-messages.po Klingon.kmap yudit-2.5.4.es.po o got rid of loaded and saved messages on console ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.5.4.TXT ./history/yudit.spec-2.4.removed0000644000175000017500000000560407532460062016522 0ustar henrichhenrichName: yudit Version: 2.4 Release: 8 Group: Applications/Editors License: GPL Source: %{name}-%{version}.tar.gz Patch: http://yudit.org/download/yudit-2.4.patch1.txt Patch1: http://yudit.org/download/yudit-2.4.patch2.txt Patch2: http://yudit.org/download/yudit-2.4.patch3.txt Patch3: http://yudit.org/download/yudit-2.4.patch4.txt Patch4: http://yudit.org/download/yudit-2.4.patch5.txt Patch5: http://yudit.org/download/yudit-2.4.patch7.txt Patch6: http://yudit.org/download/yudit-2.4.patch8.txt Summary: Unicode Text Editor BuildRoot: /var/tmp/%{name}-%{version}-root Prefix: /usr %description Yudit is a unicode text editor for the X Window System. It does not need localized environment or unicode fonts. It supports simultanious processing of many languages, input methods, conversions for local character standards. This package includes X11 editor interface, shell conversion utilities and it also has support for postscript printing. GNU (C) Gaspar Sinai %prep %setup %patch -p1 -b .pl1 %patch1 -p0 -b .pl2 %patch2 -p1 -b .pl3 %patch3 -p1 -b .pl4 %patch4 -p1 -b .pl5 %patch5 -p1 -b .pl6 %patch6 -p1 -b .pl7 autoconf %configure %build make %install rm -fr $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT%{prefix} make DESTDIR=$RPM_BUILD_ROOT install mkdir -p $RPM_BUILD_ROOT/etc/X11/applnk/Editors $RPM_BUILD_ROOT/usr/share/pixmaps install -m 644 gnome-yudit.png $RPM_BUILD_ROOT/usr/share/pixmaps/yudit.png cat >$RPM_BUILD_ROOT/etc/X11/applnk/Editors/yudit.desktop < patch 1,2,3,4,5,7,8 - renamed yudit-2.4-destdir.patch to //yudit.org/download/yudit-2.4.patch5.txt - added 7,8 - renamed bz2 to gz in Source: - removed doc from being doc because yudit uses it. * Wed Aug 29 2001 Bernhard Rosenkraenzer 2.3-4 - Fix build as non-root - Add patches from yudit.org - Set prefix correctly - Use %%configure - Add docs - Add desktop file - Fix up specfile ./history/CHANGELOG-2.8.1.TXT0000644000175000017500000000467710474054120015105 0ustar henrichhenrich2006-07-29 - Updated for Unicode 5.0.0 (cd bin; make map) - Preparing yudit-2.8.1. 2006-05-22 - Made Yudit understand +LINENO command line option. - Further Khanda Ta fixes. Made bangla.ttf (all small lettters) from http://www.omicronlab.com/avrokeyboard/bangla-fonts/index.htm the default Bengali font. 2006-05-21 - Added MuktiNarrow.ttf as the default bengali font from http://savannah.nongnu.org/download/freebangfont/MuktiNarrow-0.94.tar.bz2 2006-05-09 - Added Bulgarian fixes from Alexander Shopov contact info yudit.properties.in bg/FAQ.TXT.in gui/locale/bg/LC_MESSAGES/messages.po mytool/uni/MIK.TXT - Updated configure script to behave nicer. 2006-04-20 - Fixed some minor spelling mistakes. 2006-04-19 - Added a more detailed error message when yudit is built without X11. (The command line tools are still working fine without X11.) - Made icons/SS_Open.xpm look nicer. 2006-04-09 - Updated yudit.iss truetype.iss bitmap.iss for latest Inno Setup compiler (isetup-5.1.6.exe): Changed: CopyMode: alwaysoverwrite To: Flags: ignoreversion 2006-04-07 - Fixed redrawing bug of highlighted text with bitmap font. 2006-03-27 - Added changes to compile with gcc 4.1. 2005-11-20 - Adding new changes to uniprint/Main.cpp swindow/SPostscript.cpp swindow/SPostscript.h swindow/SPrinter.h adding new media types from Daryoush Javan . 2005-11-19 - Added changes to swindow/SPostscript.cpp swindow/SPostscript.h swindow/SPrinter.h swindow/SUniPrint.cpp swindow/SUniPrint.h uniprint/uniprint.1.in uniprint/Main.cpp from Daryoush Javan . 2005-06-05 - Added Polish-slash.kmap from Krzysztof SUCHECKI 2005-05-07 - Updated for Unicode 4.1.0 - Fixed bin/arabickmap.pl - Added one more null pointer patch from Marcus Meissner into swindow/sx11/SXInputMethod.cpp 2005-05-05 - Updated Slavic.kmap and added Glagolitic.kmap from Страхиња Радић 2005-04-13 - Added baybayin HOWTO-baybayin.txt Baybayin.kmap from roel cantada 2005-03-28 - Added Devanagari-Velthuis.kmap from Anshuman Pandey ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.7.8.TXT ./history/CHANGELOG-2.5.2.TXT0000644000175000017500000001734107532460062015102 0ustar henrichhenrich2002-01-27 Applied the folowing patches from Miikka: final-indic.patch the-final.patch Added Gurmukhi.kmap.pl, Oriya.kmap.pl. Rettranslated messages, create Gurmukhi.kmap and Oriya.kmap. Created 2.5.2 ready for release. 2002-01-26 Added patch from Miikka-Markus Alhonen (Bengali Gurumukhi) amd Gyjarati yudit.default.language=default introduced. (See default yudit.properties) Exlude type getOTFLigatures introduced. getOTFLigatures (gchars, inlen, script, "!pstf,blwf,vatu", halant); It means all except pstf,blwf,vatu. Probably beta31 is the last beta. 2002-01-25 Changed SEncoder, SBEncoder, SB_Generic, SYuditInput. Now clustering kmap will render pre-matches. Button size bug work-around implemented. 2002-01-24 Applied patch from Miikka - OTF feature "pstf". Undid the ugly vatu hack for missing "vatu". Added 2002 GNU Copyright Comment Changed fallback font mapping hack. In reality the whole font mapiing should be changed in SFontTTF.cpp... Cleaned up SFontTTF.cpp - encoding search - surrogates paved. 2002-01-23 Added half-with yen sign (U+00A5) to Hungarian and Kana kmaps. Fixed shif-jis encoder half width yen. Updated Russian in TestPage.txt 2002-01-22 Change font height calculation routine. It will result in funnny line height if a mixture of ttf's are used, but at least they are displayed fully. Made yudit LANG environment aware if yudit.default.lang is not set, or set to "". Fixed TTF font scaling (using 75 dpi X11 resolution in SFontImpl.cpp) Cleaned up test page, added Hindi sample: "We will succeed, one day, we have complete faith in our hearts." Cleaned up Bulgarian in test page: "Night falls, Moon rises, Stars sprinkle the arc of sky The woods rustles, the wind blows, The mountains sing hero's song" Updated Raphael's email: raphael@cs.uky.edu 2002-01-21 Applied patch from Miikka. Added bug reports. Removed Dev-Phonetic.kmap 2002-01-20 Added Hindi translations from Sanjay Khatri Added Bengali patches from Miikka-Markus Alhonen Fixed eyelash for code2000 (it is a hack - no ligatures found) Fixed Bengali LEFT_RIGHT in SFontTTF.cpp and SCluster.cpp Added Bengali getHalant() in SCluster.cpp Need to add pango fixes for bengali... 2002-01-19 Fixed more bugs in X11Font.cpp. Make a new version of HOWTO-devanagari-txt Removed debug output in SFontTTF.cpp. 2002-01-18 Put more checking in SCluster.cpp. Put in more fixes for zero with pango fonts. Simply there is no way in X to tell if a font is zero width, not defined or it has a default font and TextExtents16 returns that size. 2002-01-17 Added SD_INDIC_MODIFIER support and pacthes from Miikka. I was hunting for eyelash ligature. I could not find it. Maybe we will release it without eyelash? I also fixed a couple of bugs. Removed SCluster.cpp::applyRules. 2002-01-16 Fixed support for pango x11 fonts (Devanagari and Tamil) Pango fonts: export CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome' cvs login cvs get pango-fonts; cd pango-fonts/indic/; make; xset fp+ `pwd` Further optimized findOTFLigatures code. Hacked vattu to code2000.ttf Added half forms to pango X11. 2002-01-15 Modified SFontTTF.cpp and SX11Font.cpp to make ligatures in a cleaner way. Still need to think how to support pango fonts better. SX11Font.cpp now supports multiple glyphs in a ligature. Changed fallback mechanizm for non-composing glyphs. Added nukta to SCluster.cpp. 2002-01-14 Moved OTF part away from SFtontTTF.cpp to SFontOTF.cpp Fixed a clustering kmap (type4) bug (Devanagari kmap type rut -reported by Miikka) 2002-01-13 Indic font link from Sanjay http://www.india-n-indian.com/indic.ttf Created vattu.txt to test vattu. I put in a hack to FontTTF::getOTFLigatures to get vattu forms - it seems vattu is reordered in the ligature table... I tried to fix the broken DegfaultLangSys table in indic.ttf but could not.... Still it does no ligatures. I will temporarily put all betas in http://www.yudit.org/indic/ 2002-01-12 At least rHK works. See last line in devanagari.txt 2002-01-11 Tried to fix ZWJ and ZWNJ. Prepreared for RA rules. devaganari.txt should have test cases. 2002-01-10 Added GrandLatin.kmap from Maarten van Gompel Addded higly experimental glyph-subdividing algorithm for ligature finding. It wont work only if one ligature refers to other. Also, RA rules are totally ignored. If this does not work we need to implement what OTF spec says. 2002-01-09 Fixed combining marks, added dynamic ligatures for Devanagari. Need font rendering by breaking ligatures into parts. 2002-01-08 Cluster.cpp was created to deal with clusters. Tamil-like clusters can be externallly coded .my files. Devanagari-like clusters can share the same logic that is hard-coded. indic.mys created for Devanagari-like clusters. Devanagari-like clusters can benefit from new kmap type type4: it will emit decoded data in clusters. Sample: Devanagary.kmap is created by copying the phonetic kmap. Still Devanagari is not fully ready. 2002-01-05 Added PANGO_LIGATUTE_HACK recognition for the simplest ligature definitions. -freetype-unitamil X11 font works. 2002-01-03 Removed duplicate code from SFontTTF.cpp. There is only one message that needs to be removed: 'OTF Ligature found'. Things are cleaned up. Ready for betas - depending on scripts. SGlyph::SGlyph::isYudit... methods fixed. 2002-01-02 Added Tamil.tiscii.pl from Vasee. Optimized SFontTTF.cpp. Still need to remove duplicate code in getLigature. 2002-01-01 Added fixes to GSUB SFontTTF.cpp from Vasee. Added Tamil.tscii.pl to generate maps for Tamil X11 tscii fonts. Removed Tamil.kmap.pl as Tamli.cluster.pl does makes Tamil.kmap too. Removed code2000.mys - we wont need external map unless font is non-standard or broken. 2001-12-30 Added Experimental OTF ligature detection. No need for code2000.mys. It still prints stuff needs optimization, needs testing with different fonts. I could not test CoverageFormat2 - I had no font. I dont know if unicode or rendering format is needed for ligatures. I had previously rendering format - I changed it for unicode order in STextData.h SS_LIGATURE_UNICODE_ORDER We need to experiment with this more. I found only 12 ligature in code2000 all for tamil. I can still get only a few working: ku kU etc. 2001-12-29 Added bin/indic/Gujarati.cluster.pl bin/indic/Oriya.cluster.pl bin/indic/Gurmukhi.cluster.pl bin/indic/Devanagari.cluster.pl from Miikka-Markus Alhonen. Moved tamil to 8006xxxx ligature. code200mys, Tamil.cluster.pl as suggested by Miikka-Markus Alhonen. Change names of indic sripts to match opentype specification. This way we can parse GSUB better. Added comma after each line in Tamil.kmap.pl 2001-12-28 Applied code2000.mys and Tamil.kmap.pl Tamil.cluster.pl from Thuraiappah Vaseeharan. 2001-12-23 Added README.TXT from Roman Maurer corrected surname in README.TXT - Serbian translator, Slobodan Marković 2001-12-22 Added yudit_for_windows.txt from Matt Fisher As you say, it is: "Intuitive....Even your s/mum/girl-friend/g can use it." Well, unless your s/mum/girl-friend/g is a Windows user. Renamed to doc/HOWTO-windows.txt 2001-12-21 Developing Tamil patch with Thuraiappah Vaseeharan . 2001-12-14 Added windows Device Patch. ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.5.TXT ./history/CHANGELOG-2.7.2.TXT0000644000175000017500000001237107575403500015103 0ustar henrichhenrich2002-12-09 o Removed some decoder-only maps from Keymap selection o updated tests/text/ipa.txt o On windows replaced kinput2 with WindowsIM o Removed winuser.h - accidental inclusion, sorry o added command 'configure' o updated doc/ru/FAQ.TXT.in o Tried to fix Windows pipe command for printing. tested on Win98 and WinXP with ghostgun. 2002-12-08 o Fixed some bugs in TTF character lookup 2002-12-07 o renamed OldHungarian.kmap to HungarianRunes.kmap o updated README.TXT o Vyacheslav Dikonov added: config/yudit.properties.alt1dark config/yudit.properties.alt1light o As Vyacheslav Dikonov suggested: mv Ben-Inscript.kmap Bengali-Inscript.kmap mv Dev-Inscript.kmap Devanagari-Inscript.kmap mv Dev-Phonetic.kmap Devanagari-Phonetic.kmap mv Guj-Inscript.kmap Gujarati-Inscript.kmap mv Gur-Inscript.kmap Gurmukhi-Inscript.kmap mv Kan-Inscript.kmap Kannada-Inscript.kmap mv Mal-Inscript.kmap Malayalam-Inscript.kmap mv Ori-Inscript.kmap Oriya-Inscript.kmap mv Tam-Inscript.kmap Tamil-Inscript.kmap mv Tel-Inscript.kmap Telugu-Inscript.kmap # Misc renamings mv smeTeX.kmap TeX-smeTeX.kmap1 mv SK.kmap Slovak-Programmer.kmap # Vietnamese soup (just make their names start with 'Vietnamese') mv TCVNcombine.kmap Vietnamese-TCVNcombine.kmap mv TCVNkey.kmap Vietnamese-TCVNkey.kmap mv VietnameseTelex.kmap Vietnamese-Telex1.kmap mv VNtelex.kmap Vietnamese-Telex2.kmap # Russian Soup (okroshka) # Translit hacky maps mv Russian-ISO-Translit.kmap Russian-ISO-Latinitsa.kmap # this transliteration is very strange and misleading mv Russian.kmap Russian-Translit-Slovene.kmap # from a Russian point of view mv RU-translit.kmap Russian-Translit.kmap mv Russian-javertz.kmap Russian-Translit-German.kmap # the character sequence is not "javertz". It is translit for Germans. mv RU-javerty.kmap Russian-JAVERTY.kmap # Standard keyboards mv RU-icuken-extended.kmap Russian-extended.kmap mv RU-icuken.kmap Russian.kmap # Where is the Ukrainian.kmap? - it is in mys - gaspar mv Ukrainian-translit.kmap Ukrainian-Translit.kmap o Added doc/ru/FAQ.TXT.in from Vyacheslav Dikonov 2002-12-06 o created SAMPA kmap. o created experimental tests/text/ipa.html for Hungarian o updated IS_AS.mys IS_BN.mys IS_DV.mys IS_GJ.mys IS_KN.mys IS_ML.mys IS_OR.mys IS_PJ.mys IS_RM.mys IS_TL.mys IS_TM.mys from Anirban Mitra o update doc/HOWTO-windows.txt from Anirban Mitra o update ani.ttf in http://www.yudit.org/download/fonts from Anirban Mitra 2002-12-05 o made a blind fix for TAB key to return a character on windows in swindow/swin32/SWin32.cpp. This needs testing... o updated TODO.TXT 2002-12-04 o Fixed OTF ligating problem in Tamil inttoduced by Korean JAMO support Fonts: http://groups.yahoo.com/group/tamilinix/files/unicode/fonts reported by Thuraiappah Vaseeharan o findGlyph will not go through all tables unless :unicode is precified. It will just try the best table. o For root input style do not set any IC values. 2002-12-03 o Added simple-dark syntax highlight for light background setup. o Small fixes to tests/text/ligatures.txt - should this be move to a howto document? o In getShape I changed getChar to getFirstChar to allow for composing shaping for certain characters. Mainly TATWEEL, and some Syriac chars, when composing marks apllied, now should shape properly. 2002-12-02 o Applied setlocale 'C' -> setlocale '' patch from Jean-Marc Lienher . (yudit-2.7.patch4.txt). o Added SD_COMBINING_LIGATURE cluster (that will only have unicode representation) for ligatures with combining mark. o Added addCombiningLigature to SCluster.cpp, this can be used for \u0644\u0650\u0623\u064e\u0628\u064a for instance, where the marks are in beetween the characters forming the ligature. 2002-12-01 o Fixed U+540D handwriting data in kanji.hwd 2002-11-30 o Create 2.7.2 tree from 2.7 o Applied 2.7.patch1 - redrawing protruding glyphs 2.7.patch2 - embedding/unmebedding selected text in DOS mode 2.7.patch3 - XCIN over the spot problem fix o Added kmaps from Bruno Cauchy Lefebvre o Berbere-conversion1.kmap o Berbere-etendu.kmap o Berbere-standard.kmap o Added HOWTO-berber.txt from Bruno Cauchy Lefebvre o Added kmaps from Vyacheslav Dikonov o RU-icuken-extended.kmap o RU-icuken.kmap o Added kmaps from Hamed Seyed-allaei o Farsi.kmap o mytool/kmap/ cleanup mv DE-RU.kmap Russian-javertz.kmap rm KOI8_R_KEY.kmap mv SR-Cyrillic.kmap Serbian.kmap mv CS-dead.kmap Czech-deadkeys.kmap o mytool/mys cleanup mv Ukr-extended.mys Ukrainian-extended.mys o removed "decode bad map zero matched" error message (Farsi.kmap does it). o added Russian menu translations from Vyacheslav Dikonov ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.7.TXT ./history/BUGS-2.7.8.TXT0000644000175000017500000001363207721537646014377 0ustar henrichhenrich============================================================================== From: Nelson H. F. Beebe Date: Thu, 27 Feb 2003 (1) The configure.in should not issue AC_PREFIX_DEFAULT(/usr) That overrides the GNU default of /usr/local, doesn't scale well at large sites (since /usr is machine specific, whereas /usr/local is generally shared across all machines of a common O/S and architecture), modifies vendor-provided directories, and requires root access for installation. (2) GNU make standards require targets check, mostlyclean, and distclean, but these are missing from Makefile.in. yudit has veryclean, which seems to do what distclean does. ============================================================================== From: Miikka-Markus Alhonen Date: Tue, 19 Nov 2002 08:54:13 +0200 (EET) * Open the attached file pgdn-problem.test with Code2000 size 48. Press PgDn. Nothing happens, since Yudit can't find a paragraph starting at that point, even though there are many paragraphs starting below. I think this has something to do with the fact that even pressing up and down arrows does not move from line to line, but from paragraph to paragraph. This is very inconvenient, especially as you can not move to the previous or the next line by pressing left or right arrow. I still think that doing the expected case in LTR documents, the opposite in RTL and looping cursor movement in mixed documents would be the best solution. If you don't want looping, you could always prevent this behaviour by preventing line-to-line movement all together when the next/previous line's directionality is *different* from the present one's. * For some cases, (de)composition needs to be done a couple of times through. There's for instance \ufb2c, which is defined to be the precomposed form of \ufb49\u05c1. OTOH, \ufb49 is the precomposed form of \u05e9\u05bc, so even the long sequence \u05e9\u05bc\u05c1 should result in the maximally precomposed glyph \ufb2c. ============================================================================== From Gaspar Sinai Date: 2002-10-18 IS_RM is a converter from ISCII to UTF-8 Roman transliteration and vice versa: uniconv -encode IS_DV -in hindi-tulasidas.txt | uniconv -decode IS_RM You might expect this as a converter between Unicode and Roman transliteration but it is not. This may not be a bug - I just thought you might want to know :) ============================================================================== Miikka-Markus Alhonen Wed, 09 Oct 2002 08:45:43 +0300 Still, what should be done eventually (not necessarily at this point), is normalization. If you have sequences like U+0061 U+0308 U+0323 and U+0061 U+0323 U+0308, they should look the same and even be matched by the same find expression etc. At the moment, however, they look the same, if you type the sequences one character at a time (such as with the "unicode" input). Then if you cut/paste or reload the sequences, they look different from each other as well as different from the original appearance, since now the first diacritic is combined with the base letter while the second is not, and the second diacritic is shown with the precomposed glyph. ============================================================================== Miikka-Markus Alhonen Sun, 6 Oct 2002 15:38:10 +0300 Write something in the editor window. Then minimize it and restore again. If the input focus has remained in the editor window all this time, the cursor isn't blinking anymore and keyboard presses have no effect. Tooltips still show up just right when you move the mouse on them. Then, if you press the mouse button on the editor window, you can start writing text again, but still the cursor does not blink. ============================================================================== Werner LEMBERG Mon Jan 01 00:00:00 1997 BTW, just found out that C-d doesn't erase a character but changes the writing direction. I wonder that nobody has ever complained about that! How can I change the number of lines `PgUp' and `PgDn' are using for scrolling? it is a *very* bad idea that yudit 2.1 installs into /usr and not /usr/local by default! Even more annoying, there is no `make uninstall' target to fix it... Gaspar: Workaround: ./configure --prefix=/usr/local ============================================================================== Gaspar Sinai 2002-02-22 ------------------------------------------------------------------------------ Indic in Yudit is not supposed to work well with Pango fonts. Please use True Type fonts. Devanagari and Tamil should have no (serious) problems with Pango X11 fonts, still Yudit has better support for True Type fonts with Open Type layout. ============================================================================== Miikka-Markus Alhonen 2002-01-21 ------------------------------------------------------------------------------ Yudit doesn't seem to know always, if changes have been made to the buffer or not. If one opens a file, deletes a character and then presses Undo, the file is in fact unchanged, even though Yudit doesn't know this (the Save icon remains red). If one presses a second Undo after this, the file becomes unchanged. Now, this is a problem e.g. in the following case: 1) open a file 2) delete a character 3) save 4) delete another character. Now Yudit thinks that the buffer becomes unchanged only after three undo's, i.e. 1) restore the last deleted character 2) restore the character before that 3) restore status "unchanged". So, even though the buffer was saved between the two deletions, Yudit thinks the buffer is unchanged only if it is exactly the same as when _first_ opened. For new buffers, this means that a buffer is unchanged only after it's made empty (!) by undoing, even while the buffer was saved several times in between... ./history/CHANGELOG-2.7.TXT0000644000175000017500000002054607567424606014761 0ustar henrichhenrich2002-11-21 o added document embedding to SUndo. o fallbackfont now does not have any descender now this should result in better box drawing with fonts with zero descent. o created a Box virtual font in default config for box drawing. o update embedding after undo/redo. o updated test pages o made a least-impact change on left-right cursor movement column storage. o code frozen for 2.7 at yudit-2.7.beta35. 2002-11-20 o updated doc/HOWTO-bidi.txt o renamed ArmenianEastEky.kmap to ArmenianEastPhon.kmap o fixed another line redrawing problem with expanding lines o added a bug report o created beta28 for windows. o Fixed a potential core dump bug in redo+STextData::remove o set 700x480 for default size. o Created http:://www.yudit.org/bidi and put it in doc/bidi o Received and added MadeWithYudit.png contibution: doc/bidi/images o Added patch to add Lao and Thai clusters from Miikka-Markus Alhonen o Added ZWSP U+200B support. o Setmodified added for embedding. 2002-11-19 o Added still unfinished LaoLRT.kmap. o Fixed another scrolling problem o Slider scrolling now moves cursor. o fixed file fitler problem o added HOWTO-bidi.txt patches o Updated HOWTO-bidi.txt with one more problem. o Updated messages.po from Pawel Zawila-Niedzwiecki o Added LAO to mytool/uni/indic.txt o Added THAI,LAO,TIBETAN to stoolkit/SCluster.cpp: getSouthIndicCluster(); o Added findSouthIndicGlyphs to swindow/SFontTTF.cpp so that it updates the positions 2002-11-18 o Added a few fixels more to redrawing to draw nicer diacritics o Fixed a minor scrolling problem o Composing updates now glyph info o Fixed annoying problem with cut&paste from keyboard. 2002-11-17 o added ArmenianEastKey.kmap from S.Hakim Hamdani o simplified setCaretVisibleVertical o FAQ.TXT.in minor changes o fixed glyph info core o Made SFontTTF::getOTFMarkToBase chunk for GPOS. o SFontOTF.cpp: SFontTTF::getOTFLigature should not this: /* process ligatures anyway */ if (tag==SString("liga")) be /* process ligatures anyway */ else if (tag==SString("liga")) Well, I modified it... Lets see what happens. o Added OpenType GPOS support for composing characters. needs a bit of tuning.... o Fixed a bug in GPOS and tested Lao rendering. 2002-11-16 o Totally forgot about BN. Now I added (in fact removed) it to bidi. o Added Inuktitut-ICI.kmap Inuktitut-KBD.kmap Chinese-Pinyin.kmap Chinese-WB.kmap from "Johnson, Howard" o Added extra glyph info about keystrokes requested by Howard Johnson. o Fixed bug - reset embedding before segment separator. o Updated NEWS and doc/HOWTO-bidi.txt. o Taking care of embedded find/replace 2002-11-15 o added tabulation control o ran tests. o added fix for IRIX (no int in sighandler) o added doc/notinstalled/biditest.txt o Fixed a possible security hole in implicit bidi. o Fixed FAQ.TXT.in which claimed version is 2.6.4 and deleted shaping support - it is already doing shaping. 2002-11-14 o made text endselect before startselect o Seems interxim wont work without XSetICValues (xic , XNFilterEvents , &xim_ev_mask , NULL); and ....XUtf8LookupString... if (cnt == 0 && (key & 0xFF000000) == 0x01000000) { SV_UCS4 ucs4; ucs4.append ((SS_UCS4)(key & 0x0ffffff)); SEncoder enc ("utf-8-s"); s = enc.encode (ucs4); status_return = 0; } but even now interxim keys are received in reverse order. o Added Devanagari translations (Anirban) o Added Spanish FAQ (Juan) o synced doc/FAX.TXT with FAQ.TXT o made ctrl y to work in text fields o Minor modifications to bidi: resret space to embedding level even for lines without a lineending (currently edited line) o Fixed horizontal scrolling in text fields. o Added one more small change to WhiteSpace handling. o Updated HOWTO-arabic.txt - very simplistic, needs revisions. o Fixed paste problem with LS o Added FAQ.TXT.in Raphael Finkel o Updated HOWTO-bidi.txt 2002-11-13 o Trying to add FAQ.TXT.in for doc/es - unresolved issues o Added gui/locale/es/LC_MESSAGES/messages.po o Added fallback to root style for XIM if no overthespot is available. o fixed a cursor positioning problem o Fixed embedding arrows problem o Fixed label bidi problem o Cleaned up messages.po (encoding and charset) o Fixed paragraph directionality change redrawing problem. o resurrected selecting with arrow ctrl, made minor changes to selection 2002-11-12 o Fixed more redrawing problems. o Updated gui/locale/yi/LC_MESSAGES/messages.po (Raphael Finkel ) o Added ZWJ ZWNJ RLM LRM as a visible glyph when editing. o Fixed one more redrawing problem. o Fixed cursor positioning bug when window is resized. o Updated IS_RM.mys from Anirban Mitra" o Made embedding fading available only in editing window, but not in labels o Fixed PS problem in files. o Solved label size bug. o Fixed Yield embedding on multiple lines. o Fixed cusror bugs. o Updated HOWTO-bidi.txt 2002-11-11 o Fixed a bug when newline is pressed in an embedding. o Updated doc/Yudit-bidi.txt o Updated highlight colours for embedded text. o Fixed some redrawing problems o Fixed Yield embedding on multiple lines - go to beginning of it. o Yielded RLO on TestPage.txt, Inserted LREs in titles. o Fixed slider overrun bug on font change o FIxed one more stubborn redrawing bug. o Added a bit more comments to Yudit-bidi.txt o find still has some redrawing problem but it works now. o Added setdocument embedding to SUniPrint.cpp 2002-11-10 o added shaded background for embedded characters. o fixed undo bug when selcted text is replaced with another text o fixe one bug in implicit bidi. 2002-11-09 o fixed a serious bug in SEmbedState. o I did not put int implicit directionality yet still I fixed a *lot* of bugs , explicit directionality should work now. o made Yield embedding work and made it very difficult to make bad embed constructs. o Only one work left: SBiDi.cpp: resovling weak and neutral. o Implicit BiDi is in place - some bugs are around. o Finally there are only bugs - no more features are planned for bidi. 2002-11-07 o Made glyph info work. o input mostly works. o FIxed shaping 2002-11-06 o cleaning. cursor positioning still needs fixing. o positioning mostly works. o cursor movement works now. 2002-11-05 o Added Sanskrit.kmap from Yves Codet o Added Polish menu translations from Pawel Zawila-Niedzwiecki o Rewrote doc/Yudit-bidi.txt for the new version o Reorganized updates. o improved selection o made toLogical(). Need to make better redrawing of changes, selections. o fixed a few bugs (selection, events) o Problems are exepected in SYuditInput - cursor changes. 2002-11-02 o Added nicer search o fixed mouse selection problem o fixed a few bugs o Added Yield embedding to go up one embedding level. 2002-10-30 o Added document embedding. o Optimized speed (not expanding unshown glyphs in Sparagraph) o Added new embedding change button. o removed shape encoder (it was not working well anyway) 2002-10-29 o Made better position for BiDi in STextView.cpp o Added a set embedding button: This will set the document embedding or if there is selected text, set the embedding of the selected text. 2002-10-26 o modified Bengali kmap o added persian kmap from Roozbeh Pournader 2002-10-25 o added cursor control for lr rl mixed documents 2002-10-24 o Created a better escape mechanism for illegal sequences (utf-8 only) o Added a new translation: Incomplete Last Line o removed last dependecny in SYuditInput.cpp: on STextData::insertGlyph ready to clean up STextData. 2002-10-22 o Revised redrawing code in STextView.cpp. 2002-10-20 o replaced category.txt (bin/generalCategory.pl) with a more compact and plane1 compatible category.mys and bin/category.pl o category became charclass o make a function: getCharClass (); to get the category efficiently. o added function getBiDiClass(); o added function getMirroredCharacter(); ------------------------------------------------------------------------------- Older changes are in history/CHANGELOG-2.6.4.TXT ./truetype.iss0000644000175000017500000000147711333143154013445 0ustar henrichhenrich; Script generated by the Inno Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! [Setup] AppName=Yudit True Type Fonts AppVerName=Yudit True Type Fonts 1.5 OutputBaseFileName=truetype-1.5-1 ArchitecturesInstallIn64BitMode=x64 AppPublisher=Gaspar Sinai AppPublisherURL=http://www.yudit.org/ AppSupportURL=http://www.yudit.org/ AppUpdatesURL=http://www.yudit.org/ DefaultDirName={pf}\Yudit UsePreviousGroup=yes DefaultGroupName=Yudit DisableProgramGroupPage=yes InfoBeforeFile=C:\Build\Yudit\Thirdparty\truetype-1.5\truetype.txt DirExistsWarning=no ; uncomment the following line if you want your installation to run on NT 3.51 too. ; MinVersion=4,3.51 [Files] Source: "C:\Build\Yudit\Thirdparty\truetype-1.5\*.*"; DestDir: "{app}\fonts"; Flags: ignoreversion ./syntax32.iss0000644000175000017500000000167011334230016013245 0ustar henrichhenrich; Script generated by the Inno Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! [Setup] AppName=Yudit Basic Syntax Files AppVerName=Yudit Basic Syntax Files 1.5 OutputBaseFileName=syntax-1.5-1.i586 AppPublisher=Gaspar Sinai AppPublisherURL=http://www.yudit.org/ AppSupportURL=http://www.yudit.org/ AppUpdatesURL=http://www.yudit.org/ DefaultDirName={pf}\Yudit UsePreviousGroup=yes DefaultGroupName=Yudit DisableProgramGroupPage=yes InfoBeforeFile=C:\Build\Yudit\Thirdparty\syntax-1.5\syntax.txt DirExistsWarning=no ; uncomment the following line if you want your installation to run on NT 3.51 too. ; MinVersion=4,3.51 [Files] Source: "C:\Build\Yudit\Thirdparty\syntax-1.5\*.*"; DestDir: "{app}\syntax"; Flags: ignoreversion Source: "C:\Build\Yudit\Thirdparty\syntax-1.5\libhunspell-1.2.8.p1.i586.dll"; DestDir: "{app}\syntax"; DestName: "libhunspell.dll"; Flags: ignoreversion ./yudit64.iss0000644000175000017500000002140011333734355013071 0ustar henrichhenrich; Script generated by the Inno Setup Script Wizard. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! ; ; When rolling out you need to sync: ; AppVerName: Yudit-{version} ; Current Version: {version} ; Install Directory: Yudit\{version}\Install Directory\ ; Inno Setup Compiler 5.3.7 ; http://www.jrsoftware.org/isdl.htm ; This script was generated/edited ; by Gaspar Sinai ; 2001-12-12 Tokyo [Setup] AppName=Yudit AppVerName=Yudit-2.9.2 OutputBaseFileName=yudit-2.9.2-1.x86_64 ArchitecturesAllowed=x64 ArchitecturesInstallIn64BitMode=x64 AppPublisher=Gaspar Sinai AppPublisherURL=http://www.yudit.org/ AppSupportURL=http://www.yudit.org/ AppUpdatesURL=http://www.yudit.org/ DefaultDirName={pf}\Yudit DefaultGroupName=Yudit UsePreviousGroup=yes DirExistsWarning=no LicenseFile=C:\Build\Yudit\Install\doc\Copying.txt InfoBeforeFile=C:\Build\Yudit\Install\doc\Readme.txt InfoAfterFile=C:\Build\Yudit\Install\doc\Faq.txt ; uncomment the following line if you want your installation to run on NT 3.51 too. ; MinVersion=4,3.51 [Tasks] Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"; MinVersion: 4,4 [Files] Source: "C:\Build\Yudit\Install\bin\yudit.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\bin\mytool.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\bin\uniconv.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\bin\uniprint.exe"; DestDir: "{app}\bin"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\data\*.*"; DestDir: "{app}\data"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\config\*.*"; DestDir: "{app}\config"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\syntax\*.*"; DestDir: "{app}\syntax"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\*.*"; DestDir: "{app}\doc"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\CHANGELOG-DOCS.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\COPYING-DOCS"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\FAQ.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\HOWTO-configure.txt"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\HOWTO-keymap.txt"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\HOWTO-windows.txt"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\README-DOCS.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\cs\TODO-DOCS.TXT"; DestDir: "{app}\doc\cs"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\de\FAQ.TXT"; DestDir: "{app}\doc\de"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\es\FAQ.TXT"; DestDir: "{app}\doc\es"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\fi\FAQ.TXT"; DestDir: "{app}\doc\fi"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\hu\FAQ.TXT"; DestDir: "{app}\doc\hu"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\it\FAQ.TXT"; DestDir: "{app}\doc\it"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\ja\FAQ.TXT"; DestDir: "{app}\doc\ja"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\ko\FAQ.TXT"; DestDir: "{app}\doc\ko"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\ru\FAQ.TXT"; DestDir: "{app}\doc\ru"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\sr\FAQ.TXT"; DestDir: "{app}\doc\sr"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\te\FAQ.TXT"; DestDir: "{app}\doc\te"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\vi\FAQ.TXT"; DestDir: "{app}\doc\vi"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\yi\FAQ.TXT"; DestDir: "{app}\doc\yi"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\doc\zh\FAQ.TXT"; DestDir: "{app}\doc\zh"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\fonts\*.*"; DestDir: "{app}\fonts"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\am\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\am\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ar\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ar\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\az\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\az\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\bg\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\bg\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\bn\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\bn\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\cs\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\cs\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\de\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\de\LC_MESSAGES"; Flags: ignoreversion ; English is just an example. It does not have any translations. Source: "C:\Build\Yudit\Install\locale\en\LC_MESSAGES\messages.po"; DestDir: "{app}\locale\en\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\el\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\el\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\es\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\es\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\fi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\fi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\fr\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\fr\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ga\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ga\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\gu\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\gu\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\hi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\hi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\hu\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\hu\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ja\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ja\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ko\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ko\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\mn\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\mn\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\mr\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\mr\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\pl\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\pl\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ru\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ru\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\sl\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\sl\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\sr\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\sr\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ta\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ta\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\uk\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\uk\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\ur\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\ur\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\vi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\vi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\yi\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\yi\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\zh\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\zh\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\locale\zh_CN\LC_MESSAGES\messages.mo"; DestDir: "{app}\locale\zh_CN\LC_MESSAGES"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\man\man1\*.*"; DestDir: "{app}\man\man1"; Flags: ignoreversion Source: "C:\Build\Yudit\Install\src\*.*"; DestDir: "{app}\src"; Flags: ignoreversion [Icons] Name: "{group}\Yudit"; Filename: "{app}\bin\yudit.exe" Name: "{userdesktop}\Yudit"; Filename: "{app}\bin\yudit.exe"; MinVersion: 4,4; Tasks: desktopicon [Registry] Root:HKLM; Subkey: "Software\Inui Yuko\Yudit\Current Version"; ValueName: ""; ValueType: string; ValueData: "2.9.2" Root:HKLM; Subkey: "Software\Inui Yuko\Yudit\2.9.2\Install Directory"; ValueName: ""; ValueType: string; ValueData: {app}; [Run] Filename: "{app}\bin\yudit.exe"; Description: "Launch Yudit"; Flags: nowait postinstall skipifsilent ./CHANGELOG.TXT0000644000175000017500000000537111334661133012734 0ustar henrichhenrich2010-02-11 - Fixed redrawing bug when XIM does not support status area. 2010-02-09 - Added modifications to work on Windows98SE again. - Fixed XDND url encoding bug. 2010-02-08 - Changed to use unicode on Windows platform for registry values. (Keys are still ansi) - Added ISO set to hunspell encoders. - Added iso-8859-13.my 2010-02-06 - Added HOME environment override determining HOME directgory. - Fixed file selection bug. - Added YUDIT_MYTOOL environment variable to override mytool in Makefiles that generate maps. This way you can cross compile for 64 bit in a 32 bit environment: YUDIT_MYTOOL=/path/to/32bit/mytool make 2010-02-05 - Added native unicode filename support for Windows. - Changed home folder from C:\HOME to "My Documents" on windows. 2010-02-02 - TEST Change utf8ToSystem and SystemToUtf8 fro unix. 2010-02-02 - Changed to use My Documents instead of C:\Home on Windows. 2010-01-30 - Fixed errors so that it compiles with Windows SDK (9.0) 2010-01-24 - Added re-resize because sometimes ConfigureNotify shows us that not the latest resize request got honoured. The change is in SPanel.cpp. 2010-01-23 - Added patch from Pedro Gimeno to fix converting bug DOS CRLF with uniconv. - modified charclass.pl bidiclass.pl precompose.pl mirroring.pl olditalic.pl shape.pl so that version can be easily specified from bin/Makefile. - Updated for Unicode 5.2.0 - got rid of hacked block in charclass.mys: 00010C00 -> 13 00010FFF -> 00 - got rif of hacked block in bidiclass.mys: 00010C00 -> 04 00010FFF -> 00 Need to find some other block to test rovasiras. beta5 out. Added ibus input to config. Changed xpm files to const to get rid of compiler warning Added parenthesis in SB_UTF8.cpp, SB_UHC.cpp, SB_Johab.cpp, SXInputMethod.cpp mytool/main.cpp fscanf return value fixes. ProcessFile.cpp STextEdit.cpp parethesis uniconv/Main.cpp string constant to ‘char*’ uniprint/Main.cpp string constant to ‘char*’ SYudit.cpp parethesis 2009-03-28 - Applied patch to make yudit compilable (again) on platform without X11. 2009-03-11 - Updated yudit-syntax.iss 2008-11-22 - Added http://bugzilla.novell.com/show_bug.cgi?id=445708 Mike Fabian's patch. 2008-08-23 - Made changes to PUA mytool/uni/ROVASIRAS.TXT - Made adjustments to yudit.ttf and yudit.hex - Reserverd 10C00 10FFF for RL script testing of Old Hungarian / Hungarian Rovas. - Ligature cluster of Old Hungarian with ZWJ (liga, rlig no script code) - Hosszu.mys experimental keymap - Added the following fonts to default fontset rovasSMP.ttf , ohunSMP.ttf. ./yudit-2.9.2.spec0000644000175000017500000003077411333167623013535 0ustar henrichhenrichName: yudit Version: 2.9.2 Release: 1 Group: Applications/Editors License: GPL Source: %{name}-%{version}.tar.gz Summary: Unicode Text Editor BuildRoot: /var/tmp/%{name}-%{version}-root Prefix: /usr %description Yudit is a unicode text editor for the X Window System. She can do True Type font rendering, printing, transliterated keyboard input and handwriting recognition with no dependencies on external engines. Her conversion utilities can convert text between various encodings. Keyboard input maps can also act like text converters. There is no need for a pre-installed multi-lingual environment. Menus are translated into many languages. GNU (C) 1997-2007 Gaspar Sinai %prep %setup %configure %build make %install rm -fr $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT%{prefix} make DESTDIR=$RPM_BUILD_ROOT install mkdir -p $RPM_BUILD_ROOT/etc/X11/applnk/Applications $RPM_BUILD_ROOT/usr/share/pixmaps install -m 644 gnome-yudit.png $RPM_BUILD_ROOT/usr/share/pixmaps/yudit.png cat >$RPM_BUILD_ROOT/etc/X11/applnk/Applications/yudit.desktop < - Changed to use My Documents instead of C:\Home on Windows. - Added HOME environment variable override to HOME directory. - Fixed file selection bug. * Sun Jan 31 2010 Gaspar sinai - Updated to Unicode 5.2.0 - Landscape printing bug fixed - DOS CRLF with uniconv bug fixed - Hungarian Runes (PUA) rovasiras glyph adjustments - Minor enhancements * Sun Dec 09 2007 Gaspar Sinai - Added support for hunspell spell checker via syntax mechanism - Added a new dialog for highlighting selection - Added support for form feed character during printing and editing. - Using double buffer to avoid flickering * Wed Nov 28 2007 Gaspar Sinai - added syntax directory * Wed Sep 27 2006 Gaspar Sinai - Fixed Syriac Rendering bug for OTF. - Added Simplified Chinese translation (zh_CN) * Sat Jul 29 2006 Gaspar Sinai - Updated for Unicode 5.0.0. * Sun May 21 2006 Gaspar Sinai - Changed my email address from gsinai@yudit.org to gaspar@yudit.org - Adding new media types from Daryoush Javan . - Fixed segmentation fault in swindow/sx11/SXInputMethod.cpp by Marcus Meissner - Added and updated several kmap and HOWO files. * Mon Mar 21 2005 Gaspar Sinai - Merged Marathi and Gujarati menu. - Merged jodakshar.hwd marathi.hwd roman.hwd handwrinting recognition files - Merged CS-qwerty keymap, SpanishPrefix.kmap, Sanskrit-Translit.kmap, GreekAncient.kmap - Updated Tibetan-Wylie.kmap - Merged Telugu, Italian FAQ - Merged HOWTO greekancient - Merged AMD 64 fixes to InputMethod.cpp. * Sat Sep 6 2003 Gaspar Sinai Release 2.7.6 Better positioning for complex (indic) scripts. Comments are preserved now in ~/.yudit/yudit.properties Fixed buffer overflow bugs in stoolkit/SString.cpp stoolkit/SParagraph.cpp Yudit -nus command line option turns off uniscribe emulation. Added Punjabi (pa) translations from Madhusudan Singh . Added more substitution types. The matrix is documented in doc/otfsupport.txt. The following font-range filters have been added: indic: U+0900..U+0FFF deva: U+0900..U+097F beng: U+0980..U+09FF guru: U+0A00..U+0A7F gujr: U+0A80..U+0AFF orya: U+0B00..U+0B7F taml: U+0B80..U+0BFF telu: U+0C00..U+0C7F knda: U+0C80..U+0CFF mlym: U+0D00..U+0D7F sinh: U+0D80..U+0DFF thai: U+0E00..U+0E7F lao: U+0E80..U+0EFF tibt: U+0F00..U+0FFF jamo: U+1100..U+11FF usage: ani.ttf:beng,raghu.ttf:deva * Sat Jun 14 2003 Gaspar Sinai Updated with Miikka's patch for Unicode 4.0. Added many patches and contributions Added entry level (not full) Tibetan support with some Open Type Fonts Added yudit.editor.xinputs.style property to yudit.properties. possible values: root,over-the-spot,off-the-spot New menu translations: Czech, Greek, Mongolian, Serbian (cyrillic) New keymaps: Telugu-Rts, CS, Kazakh-prefix, Runes, Dakelh (Carrier syllabics), ArabicBuck, GeorgianB, BengaliSona, Slavic, Serbian, Kanji, Added new configurable xinput styles: preedit-over-status-over, preedit-over-status-under, preedit-under-status-under, preedit-root-status-root NewYudit specific Private Use Area assignment: mytool/uni/BLISSYMBOLICS.TXT (BlissSymbolics.kmap, yudit.ttf) Bugfixes and hopefully not many new bugs :) Stable version 2.7.5 is ready * Mon Jan 14 2003 Gaspar Sinai o changed names of yudit.editor.xinputs.style preedit-over-status-over preedit-over-status-under preedit-under-status-under preedit-root-status-root * Sun Jan 11 2003 Gaspar Sinai Applied SAMPA.patch,patch1,patch2,patch3,patch4 Added BengaliSona.kmap Removed dependency on ws2_32.dll - this means it will work on Windows 95 Added yudit.editor.xinputs.style property to yudit.properties. possible values: root,over-the-spot,off-the-spot,over-the-spot-off * Sun Jan 5 2003 Kevin Patrick Scannell Added Irish (ga). * Sun Dec 1 2002 Gaspar Sinai Added kmap and Russian menu from Vyacheslav Dikonov Added berbere from Bruno Cauchy Lefebvre Added Farsi.kmap from Seyed-allaei Reorganized kmaps a bit Largefont redrawing fix Added 'C' locale -> '' local patch from Jean-Marc Lienher Added simple-dark syntax highlight for light background setup Made composing mark work within ligatures too, when shaped. Keymap cleanups OldHungarian keymap became HungarianRunes keymap. Fixed printing for WindowsXP+ghostscript (Window98 was ok) * Sun Nov 10 2002 Gaspar Sinai Added full, Unicode compliant bi-directional support Added Sanskrit.kmap from Yves Codet Added Polish gui translations from Pawel Zawila-Niedzwiecki Added Perian.kmap from Roozbeh Pournader Added ZWJ ZWNJ RLM LRM as a visible glyph when editing. Optimized code for speed Added Inuktitut-ICI.kmap, Inuktitut-KBD.kmap, Chinese-Pinyin.kmap, Chinese-WB.kmap from "Johnson, Howard" Added OpenType GPOS support for composing characters * Sat Oct 10 2002 Gaspar Sinai Added Urdu/Pakistan ur locale from S H A N Added new ligatures for URDU: U+06A9 U+0627 and U+06A9 U+0644 Modified Amharic/Ethiopia am locale Daniel Yacob Updated FAQs. Added better composing support. Undo/Redo for composing characters that are added on the fly. Removed clustering feature from several kmaps as cluster now can be built on the fly. IS_AS,IS_BN,IS_DV,IS_GJ,IS_KN,IS_ML,IS_OR,IS_PJ,IS_RM,IS_TL,IS_TM converters from Anirban. * Tue Sep 03 2002 Gaspar Sinai Applied patches and contibutions: Rendering fixes (Miikka-Markus Alhonen) Bengali menu (Anirban Mitra ) Color Highlighting, word wrapping and other fixes: Maarten van Gompel * Sun May 31 2002 Gaspar Sinai - OpenType font shaping support for shaped characters that are not among Ararbic presentation forms. This inlcudes quite a few Arabic and Syriac shapes. - Support for unifont syriacforms.hex and arabforms.hex files with direct font rendering. - Fixed crash on Sparc computers (alignment problem) - Koran menu and FAQ translations from Jungshik Shin - Amharic menu translations from Daniel Yacob - Cherokee.kmap from Steve Juranich - Added Vietnamese FAQ.TXT HOWTO-vietnamese.txt and message.po from Hoan - Added Urdu.kmap from Miikka-Markus.Alhonen@tigatieto.com * Wed Apr 25 2002 Gaspar Sinai - Unicode 3.2 changes - X Locale and Input Method Support - Added direct rendering for iso10646 encoded .bdf font files and unifont .hex files. It is useful on platforms that do not have X11. - Locale name for Chinese has been corrected to be zh (ISO639) - True Type cmap 12 (needed for plane1,2..) and X11 (iso10646p2-\d+) added - True Type cmap 2 with external converter added - True Type uses now nonzero winding rule now by default. - UTF-16 UTF-16-LE UTF-16-BE support. - New converters for utf-16 utf-16-le utf-16-be, gb-18030, Shift_JISX0213 (shift-jis-3), EUC-JISX0213 (euc-jp-3), ISO-2022-JP-3 (iso-2022-jp-3) - Old Italic software glyph mirroring added - Updated ksx-1001 (replacement for ksc-5601-old), ksc-5601-r ksc-5601-l - Updated HOWTO-Japanese.txt - JIS X 0213 X11 (jisx0213.2000-1,jisx0213.2000-2) font support - Shift_JISX0213 encoded True Type font support with shift-jis-3 converter * Sat Feb 28 2002 Gaspar Sinai - Malayalam support (Miikka-Markus Alhonen) - Kannada support (Miikka-Markus Alhonen) - Telugu support (Miikka-Markus Alhonen) - koi8-c support (Miikka-Markus Alhonen) - koi8-u support (Gaspar) - ncr converter (Miikka-Markus Alhonen) - rovas converter (Gaspar) - iso-8859-15 converter (Gaspar) - iso-8859-16 converter (Gaspar) - Mirrored characters (Miikka-Markus Alhonen-Gaspar) - Old Hungarian support with ligatures in Private Use Area (Gaspar) - Ukrainian kmap and translations (Solotskyy) * Wed Jan 26 2002 Gaspar Sinai - Pango X11 Ligature support - Devanagari support (Miikka-Markus Alhonen) - Bengali support (Miikka-Markus Alhonen) - Gujarati support (Miikka-Markus Alhonen) - Gurmukhi support (Miikka-Markus Alhonen) - Oriya support (Miikka-Markus Alhonen) - Hindi menu (Sanjay) * Wed Jan 02 2002 Gaspar Sinai - Tamil support (Vasee) - Added Hangul Jamos (Miikka-Markus Alhonen) - OpenType Ligature substitution support - Testing other Indic scripts. - Fixed bumap. * Tue Nov 27 2001 Gaspar Sinai - Prepearing for 2.5 with shaping (Arabic) support. - Changed (removed -e, added auto-tmpfile): yudit.default.preview.command=gv * Fri Nov 09 2001 Gaspar Sinai - Fixed shift-jis converter - Optimized speed - Fixed layout manager bugs, made it nicer. - Optimized memory usage (vut it by a factor of 2) - Added freehand (handwriting) input method. - Added hiragana and katakana handwriting data (hwd 2.0) generated by Yuko Inui * Thu Oct 25 2001 Gaspar Sinai patch 1,2,3,4,5,7,8 - renamed yudit-2.4-destdir.patch to //yudit.org/download/yudit-2.4.patch5.txt - added 7,8 - renamed bz2 to gz in Source: - removed doc from being doc because yudit uses it. * Wed Aug 29 2001 Bernhard Rosenkraenzer 2.3-4 - Fix build as non-root - Add patches from yudit.org - Set prefix correctly - Use %%configure - Add docs - Add desktop file - Fix up specfile ./XBUGS.TXT0000644000175000017500000000272407567556474012364 0ustar henrichhenrichXFree86-4.1.0-3 bugs ==================== 1. Prototype missing (can not compile c++ programs without it) extern char * XSetIMValues( #if NeedVarargsPrototypes XIM /* im */, ... #endif ); The function does exist in the X library itself. 2. In Xutf8LookupString BUFFER_SIZE can be max 64. After that pressing enter in any X Input Method will disable all character look-ups until method is closed (no need to kill the process). char buffer_return[BUFFER_SIZE]; int bytes_buffer = BUFFER_SIZE; int Xutf8LookupString(ic, event, buffer_return, bytes_buffer, keysym_return, status_return) XIC ic; XKeyPressedEvent *event; char *buffer_return; int bytes_buffer; KeySym *keysym_return; Status *status_return; Input Method Bugs ================= 1. X Input Method xcin and Ami can not be used on a dual-head screen 1. At least on my machine :(. Workaround: - I could start cin with -d option: export LC_ALL=zh_TW.big5; xcin -d :0.1 after I started one on :0.0. - I could start cin with -d option: export DISPLAY=:0.1; export LC_ALL=ko_KR.euckr; ami after I started and exited one on :0.0. - Alternatively can use Yudit's built-in Chinese or Korean input. - When I close a root input method (interxim) with closeIM code dumps in Xlib library. - When interxim root input method closes code dumps in XFilterEvent in Xlib library. ./TODO.TXT0000644000175000017500000000350510726731655012222 0ustar henrichhenrichTranslate these messages. # File: SHighlightD.cpp, line: 55 msgid "Category" # File: SHighlightD.cpp, line: 59 msgid "Highlighting" # File: SHighlightD.cpp, line: 69 msgid "Remark:" # File: SToolBar.cpp, line: 537 msgid "Highlighting(__H__)" As my TODO.TXT never wanted to go away I simply moved it to 'history' directory (version 2.7.8). This does not mean that there is nothing to do - it means that I have to much to do. This file lists changes that are expected to be fixed in a finite amount of time. 1. Syntax highlighting At least xml syntax highlighting should be added. 2. Better support for complex script Several scripts need better support. - Bengali - ra+ yaphala(ra + post-base form of ya) U+09B0 U+200D U+09CD U+09AF Ra+Yaphala (? A) U+09B0 U+200C U+09CD U+09AF Ra+Yaphala (? U) From: Gareth Hughes To: Gaspar Sinai Date: 2006-09-07 01:14:33 Hi Gaspar! I would like to tell you that I really enjoy using Yudit. I work with a lot of multilingual text, and so it's handy to have an editor that can switches input methods with me. I'm a Syriac student, but I've had trouble getting Syriac to work properly with Yudit — I think it might be the fault of the font or the user rather than Yudit. I'm using 2.7.6, which doesn't come with a font that can display the Syriac Unicode block. I fed Yudit the Meltho fonts (http://www.bethmardutho.org/meltho/), which then only display unjoined glyphs in the Yudit display (I've had this problem with other apps using Meltho fonts too — in OpenOffice it seems to be lack of ICU library support). I really would love to set up Yudit to work in Syriac with full contextual shaping. Could you suggest a font/config solution tat would get this happening for me? Thanks, Gareth. -- Gareth Hughes garzohugo@gmail.com public key ID: 0x9F32AF1E ./mail/0000755000175000017500000000000010724001346011754 5ustar henrichhenrich./mail/enhancement1.mail0000644000175000017500000000217707532460064015206 0ustar henrichhenrichFrom ???@??? 00:00:00 1997 +0000 Return-Path: Delivered-To: yuditorg-gsinai@yudit.org Received: (qmail 25001 invoked from network); 29 Jan 2001 23:00:00 -0000 Received: from tarma.csse.monash.edu.au (130.194.224.168) by mailserv2.iuinc.com with SMTP; 29 Jan 2001 23:00:00 -0000 Received: (from rfinkel@localhost) by tarma.csse.monash.edu.au (8.9.3+Sun/8.9.1) id JAA27593 for gsinai@yudit.org; Tue, 30 Jan 2001 09:59:56 +1100 (EST) Message-Id: <200101292259.JAA27593@tarma.csse.monash.edu.au> From: rfinkel@csse.monash.edu.au (Raphael Finkel) Date: Tue, 30 Jan 2001 09:59:56 -0500 X-Mailer: Mail User's Shell (7.2.6 beta(5) 10/07/98) To: Gaspar Sinai Subject: Re: yudit: fonts/languages Status: R X-Status: N Gaspar, Two questions on the the kmap files. 1. If I want a single stroke to generate two characters, what is the syntax? I am using something like this: "f=0x05E405BF", // HEBREW LETTER PE, HEBREW POINT RAFE but I'm not sure it's right. 2. Is there a way to stipulate control-key or alt-key combinations in the kmaps? There are a few I would like to include. Thanks. Raphael ./mail/HebrewR.kmap0000644000175000017500000000425207532460064014200 0ustar henrichhenrich// Hebrew.kmap for Yudit // 2001-01-30 Raphael Finkel raphael@cs.uky.edu // These are the Yiddish letters, according to the UYIP mapping convention "a=0x05D0 0x05b7", // HEBREW LETTER ALEF, HEBREW POINT PATAH "A=0x05D0", // HEBREW LETTER ALEF "B=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "b=0x05D1", // HEBREW LETTER BET "c=0x05E6", // HEBREW LETTER TSADI "C=0x05E5", // HEBREW LETTER FINAL TSADI "d=0x05D3", // HEBREW LETTER DALET "e=0x05E2", // HEBREW LETTER AYIN "E=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "f=0x05E4 0x05BF", // HEBREW LETTER PE, HEBREW POINT RAFE "F=0x05E3", // HEBREW LETTER FINAL PE "g=0x05D2", // HEBREW LETTER GIMEL "h=0x05D4", // HEBREW LETTER HE "H=0x05D7", // HEBREW LETTER HET "i=0x05D9", // HEBREW LETTER YOD "I=0x05D9 0x05B4", // HEBREW LETTER YOD, HEBREW POINT HIRIQ "j=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "J=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "k=0x05E7", // HEBREW LETTER QOF "K=0x05DB 0x05BC", // HEBREW LETTER KAF, HEBREW POINT DAGESH OR MAPIQ "l=0x05DC", // HEBREW LETTER LAMED "m=0x05DE", // HEBREW LETTER MEM "M=0x05DD", // HEBREW LETTER FINAL MEM "n=0x05E0", // HEBREW LETTER NUN "N=0x05DF", // HEBREW LETTER FINAL NUN "o=0x05D0 0x05B8", // HEBREW LETTER ALEF, HEBREW POINT QAMATS "O=0x05F1", // HEBREW LIGATURE YIDDISH VAV YOD "p=0x05E4 0x05BC", // HEBREW LETTER PE, HEBREW POINT DAGESH OR MAPIQ "q=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "r=0x05E8", // HEBREW LETTER RESH "s=0x05E1", // HEBREW LETTER SAMEKH "S=0x05EA", // HEBREW LETTER TAV "t=0x05D8", // HEBREW LETTER TET "T=0x05EA 0x05BC", // HEBREW LETTER TAV, HEBREW POINT DAGESH OR MAPIQ "u=0x05D5", // HEBREW LETTER VAV "U=0x05D5 0x05BC", // HEBREW LETTER VAV, HEBREW POINT DAGESH OR MAPIQ "v=0x05F0", // HEBREW LIGATURE YIDDISH DOUBLE VAV "V=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "w=0x05E9", // HEBREW LETTER SHIN "W=0x05E9 0x05C2", // HEBREW LETTER SHIN, HEBREW POINT SIN DOT "x=0x05DB", // HEBREW LETTER KAF "X=0x05DA", // HEBREW LETTER FINAL KAF "y=0x05D9", // HEBREW LETTER YOD "Y=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "z=0x05D6", // HEBREW LETTER ZAYIN ./mail/hebrew.mail0000644000175000017500000001011107532460064014077 0ustar henrichhenrichFrom ???@??? 00:00:00 1997 +0000 Return-Path: Delivered-To: yuditorg-gsinai@yudit.org Received: (qmail 28392 invoked from network); 30 Jan 2001 00:38:20 -0000 Received: from tarma.csse.monash.edu.au (130.194.224.168) by mailserv2.iuinc.com with SMTP; 30 Jan 2001 00:38:20 -0000 Received: (from rfinkel@localhost) by tarma.csse.monash.edu.au (8.9.3+Sun/8.9.1) id LAA29151 for gsinai@yudit.org; Tue, 30 Jan 2001 11:38:16 +1100 (EST) Message-Id: <200101300038.LAA29151@tarma.csse.monash.edu.au> From: rfinkel@csse.monash.edu.au (Raphael Finkel) Date: Tue, 30 Jan 2001 11:38:16 -0500 X-Mailer: Mail User's Shell (7.2.6 beta(5) 10/07/98) To: Gaspar Sinai Subject: Re: yudit: fonts/languages Status: R X-Status: N Gaspar, Sure enough, it is again a make problem. I guess I need a more recent version of gnu make. In the mytool/kmap directory, make was not expanding the list of files, so it wasn't making any .my files. I read the Makefile and found the right invocation to mytool. Yiddish now works! I was able to figure out how to get multiple unicode characters from a single keystroke (trial and error). In order to force Hebrew/Yiddish to use RTL encoding, should I surround each right-hand side in the .kmap file with the RTL .. POP codes? Or is there a better way to do that? When I intersperse RTL and LTR alphabets, is there any easy way to force the cursor to the right place in the text? It currently just remains where it was, which is sometimes, but not generally, correct. It would help if the key would at least move to the end of the text in the current direction. When I type , I get a single unicode character removed. If it is a combining character, I only get the combining mark removed. This is not intuitive when I use a single keystroke to generate several unicode characters at a time (all but the first are combining). Here is my Yiddish.kmap file: // Hebrew.kmap for Yudit // 2001-01-30 Raphael Finkel raphael@cs.uky.edu // These are the Yiddish letters, according to the UYIP mapping convention "a=0x05D0 0x05b7", // HEBREW LETTER ALEF, HEBREW POINT PATAH "A=0x05D0", // HEBREW LETTER ALEF "B=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "b=0x05D1", // HEBREW LETTER BET "c=0x05E6", // HEBREW LETTER TSADI "C=0x05E5", // HEBREW LETTER FINAL TSADI "d=0x05D3", // HEBREW LETTER DALET "e=0x05E2", // HEBREW LETTER AYIN "E=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "f=0x05E4 0x05BF", // HEBREW LETTER PE, HEBREW POINT RAFE "F=0x05E3", // HEBREW LETTER FINAL PE "g=0x05D2", // HEBREW LETTER GIMEL "h=0x05D4", // HEBREW LETTER HE "H=0x05D7", // HEBREW LETTER HET "i=0x05D9", // HEBREW LETTER YOD "I=0x05D9 0x05B4", // HEBREW LETTER YOD, HEBREW POINT HIRIQ "j=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "J=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "k=0x05E7", // HEBREW LETTER QOF "K=0x05DB 0x05BC", // HEBREW LETTER KAF, HEBREW POINT DAGESH OR MAPIQ "l=0x05DC", // HEBREW LETTER LAMED "m=0x05DE", // HEBREW LETTER MEM "M=0x05DD", // HEBREW LETTER FINAL MEM "n=0x05E0", // HEBREW LETTER NUN "N=0x05DF", // HEBREW LETTER FINAL NUN "o=0x05D0 0x05B8", // HEBREW LETTER ALEF, HEBREW POINT QAMATS "O=0x05F1", // HEBREW LIGATURE YIDDISH VAV YOD "p=0x05E4 0x05BC", // HEBREW LETTER PE, HEBREW POINT DAGESH OR MAPIQ "q=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "r=0x05E8", // HEBREW LETTER RESH "s=0x05E1", // HEBREW LETTER SAMEKH "S=0x05EA", // HEBREW LETTER TAV "t=0x05D8", // HEBREW LETTER TET "T=0x05EA 0x05BC", // HEBREW LETTER TAV, HEBREW POINT DAGESH OR MAPIQ "u=0x05D5", // HEBREW LETTER VAV "U=0x05D5 0x05BC", // HEBREW LETTER VAV, HEBREW POINT DAGESH OR MAPIQ "v=0x05F0", // HEBREW LIGATURE YIDDISH DOUBLE VAV "V=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "w=0x05E9", // HEBREW LETTER SHIN "W=0x05E9 0x05C2", // HEBREW LETTER SHIN, HEBREW POINT SIN DOT "x=0x05DB", // HEBREW LETTER KAF "X=0x05DA", // HEBREW LETTER FINAL KAF "y=0x05D9", // HEBREW LETTER YOD "Y=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "z=0x05D6", // HEBREW LETTER ZAYIN ./icons/0000755000175000017500000000000011326615652012157 5ustar henrichhenrich./icons/SS_DocumentCX.xpm0000644000175000017500000000124111326615366015323 0ustar henrichhenrich/* XPM */ static const char *SS_DocumentCX[]={ "20 20 9 1", "g c None", "# c #303030", ". c #585858", "f c #585c58", "d c #787878", "c c #989898", "a c #a0a0a0", "b c #c8ccc8", "e c #f8fcf8", "....................", ".##################.", ".#aaaaaaaaaaaaaaaa#.", ".#abcddecfc.dffdda#.", ".#abbddeccbcbcbdda#.", ".#aeeeeeeeeeeeeeea#.", ".#adccdcbecbcdcc#a#.", ".#adbcdcbecccddcca#.", ".#aeeeeeeeebbebeea#.", ".#adccdcbecdcc#cc#..", ".#adbcdcbebbcc#b#..g", ".#aeeeebeeeeeeb#..gg", ".#adbbccbbddbe#..ggg", ".#acdbbcdbddc#..gggg", ".#abeeebbeeb#..ggggg", ".#ab#deffcd#..gggggg", ".#abcbecbc#..ggggggg", ".#aaaaaaa#..gggggggg", ".########..ggggggggg", "..........gggggggggg"}; ./icons/SS_Find.xpm0000644000175000017500000000142411326615435014172 0ustar henrichhenrich/* XPM */ static const char* SS_Find[]={ "20 20 17 1", "i c #000000", "b c #808000", "h c #383c38", "d c #787878", "n c #a0a0a0", "e c #ffffc0", ". c None", "l c #c3c3c3", "a c #303030", "c c #c8ccc8", "# c #585858", "m c #808080", "k c #c7c7af", "o c #dcdcdc", "g c #989898", "f c #808480", "j c #c0c0c0", "....................", ".##################.", ".#aaaaaaaaaaaaaaaa#.", ".#abbbbbbbbbbbbbba#.", ".#abcdefaa#eegcdba#.", ".#abeefhehiheeeeba#.", ".#abggiiejiijdggba#.", ".#abcgjfejiikddgba#.", ".#abeeeeeeifeeeeba#.", ".#abgglleifkkgmgba#.", ".#abcgmenfkomgmcba#.", ".#abeeeejekkkkckba#.", ".#abccmeeeoloogdba#.", ".#abdcleih.ollccba#.", ".#abeeejiheeeeeeba#.", ".#abadeejeeeegdgba#.", ".#abbbbbbbbbbbbbba#.", ".#aaaaaaaaaaaaaaaa#.", ".##################.", "...................."}; ./icons/SS_MagnifyPlus.xpm0000644000175000017500000000135511326615553015554 0ustar henrichhenrich/* XPM */ static const char*SS_MagnifyPlus[]={ "20 20 14 1", "h c #000000", "c c #f8fcf8", "k c #ffa858", "i c #505050", "g c #c0ffff", ". c None", "f c #57888d", "b c #74b4bb", "j c #c05800", "a c #303030", "l c #ff8000", "# c #585858", "d c #9ef5ff", "e c #8ad8de", ".......#####........", ".....##aaaaa##......", "...##aabbbbbaa##....", "..#aabbccdddeeaa#...", "..#abdcccddddeea#...", ".#abdccddfbdddeea#..", ".#adccgddhiddddea#..", "#abccddddhiddddeaa#.", "#abcddfffhiffbdeba#.", "#abcddhhhhhhhiddfa#.", "#abdddbbbhibbbgefa#.", "#abddddddhidddeefa#.", ".#abdddddhidddefa#..", ".#abbddddfbddeffaa#.", "..#abddddddeebfaaah#", "..#aabbbdeeeffaajkka", "...##aabbbffaaajjllk", ".....##aaaaa##aajjlk", ".......#####.###ajjl", "...............#aajl"}; ./icons/SS_Clear.xpm0000644000175000017500000000117511326615350014337 0ustar henrichhenrich/* XPM */ static const char*SS_Clear[]={ "20 20 7 1", "c c #009b36", ". c None", "b c #00df49", "d c #303030", "a c #69ff9e", "# c #585858", "e c #004000", "....................", "....................", "..####........####..", "..#aab#......#aac#..", "..#cccb#....#abccd..", "..#dcccb#..#abccd#..", "...#dcccb##abccd#...", "....#dcccbbbccd#....", ".....#dccccccd#.....", "......#cccccd#......", "......#bccccc#......", ".....#abcccccb#.....", "....#abccd#cccb#....", "...#abccd##dcccb#...", "..#abccd#..#dcccb#..", "..#accd#....#dccce..", "..#ccd#......#dcce..", "..##d#........#ddd..", "....................", "...................."}; ./icons/SS_RL_XPM.xpm0000644000175000017500000000117711326615621014355 0ustar henrichhenrich/* XPM */ static const char *SS_RL_XPM[]={ "20 20 7 1", ". c None", "e c #002408", "d c #004810", "b c #007020", "c c #009430", "a c #303030", "# c #585858", "...........#aaa#....", "..........#abba#....", ".........#abcba#....", "........#abcba#.....", ".......#abcba#......", "......#abcba#.......", ".....#abcba#........", "....#abcba#.........", "...#abcba#..........", "..#adcca#...........", "...#abcce#..........", "....#abcce#.........", ".....#abcce#........", "......#abcca#.......", ".......#abcca#......", "........#abcca#.....", ".........#abcca#....", "..........#abba#....", "...........#aaa#....", "............#aa#...."}; ./icons/SS_Undo.xpm0000644000175000017500000000115611326615635014223 0ustar henrichhenrich/* XPM */ static const char *SS_Undo[]={ "20 20 6 1", ". c None", "b c #000000", "a c #585858", "c c #9b0036", "# c #a0a0a0", "d c #df0049", "....................", "....................", ".......##...##......", "......#aa#.#aa#.....", ".....#abba#abba#....", "....#abcbaabcba#....", "...#abcdbabcdba#####", "..#abcddbacddbaaaaa#", ".#abcdddccdddcccccba", "#abcdddddddddddddcba", "aabddddddddddddddcba", "abbcdddddddddddddcba", ".abbcddddcddccccccba", "..abbcddbbcdcbbbbbba", "...abbcdbbbccbbbbbba", "....abbcbbbbcbbaaaaa", ".....abbbaabbbaa....", "......abba.abba.....", ".......aa...aa......", "...................."}; ./icons/SS_Best.xpm0000644000175000017500000000115511326615313014203 0ustar henrichhenrich/* XPM */ static const char*SS_Best[]={ "20 20 6 1", ". c None", "d c #9b0036", "c c #df0049", "b c #ff699e", "a c #303030", "# c #585858", "....................", "....................", ".....###....###.....", "....#aaa#..#aaa#....", "...#abbba##abbba#...", "..#abbbbbaabbccba#..", ".#abbccccbbccccdda#.", ".#abcccccccccccdda#.", ".#abccccccccccddda#.", "..#dccccccccccddda#.", "..#adccccccccddda#..", "...#adccccccddda#...", "....#adccccddda#....", ".....#adcccdda#.....", "......#adcdda#......", ".......#adda#.......", "........#aa#........", ".........a#.........", "....................", "...................."}; ./icons/SS_Document.xpm0000644000175000017500000000122211326615377015071 0ustar henrichhenrich/* XPM */ static const char*SS_Document[]={ "20 20 8 1", "e c #f8fcf8", "d c #787878", "a c #a0a0a0", "# c #303030", "b c #c8ccc8", ". c #585858", "f c #585c58", "c c #989898", "....................", ".##################.", ".#aaaaaaaaaaaaaaaa#.", ".#abcddecfc#dffdda#.", ".#abbddeccbcbcbdda#.", ".#aeeeeeeeeeeeeeea#.", ".#adccdcbecbcdcc#a#.", ".#adbcdcbecccddcca#.", ".#aeeeeeeeebbebeea#.", ".#adccdcbecdcc#cca#.", ".#adbcdcbebbcc#bca#.", ".#aeeeebeeeeeebeba#.", ".#adbbccbbddbecdca#.", ".#acdbbcdbddcebbca#.", ".#abeeebbeebeeeeea#.", ".#ab#deffcdcecdcfa#.", ".#abcbecbcdbccdcca#.", ".#aaaaaaaaaaaaaaaa#.", ".##################.", "...................."}; ./icons/SS_Folder.xpm0000644000175000017500000000117611326615442014527 0ustar henrichhenrich/* XPM */ static const char*SS_Folder[]={ "20 20 7 1", "c c #eae793", "d c #c7ba2b", "a c #303030", "# c #585858", "e c #ad9d27", "b c #c7c77d", ". c None", "....................", "....................", "....................", "...######...........", "..#aaaaaa#..........", ".#abcccb#a########..", ".#acddddb#aaaaaaaa#.", ".#acdddddbbbbbbbba#.", ".#acddddddddddddea#.", ".#acddddddddddddea#.", ".#acddddddddddddea#.", ".#acddddddddddddea#.", ".#acddddddddddddea#.", ".#abddddddddddddea#.", ".#abeeeeeeeeeeeeea#.", ".#aaaaaaaaaaaaaaaa#.", "..################..", "....................", "....................", "...................."}; ./icons/SS_Home.xpm0000644000175000017500000000121311326615474014201 0ustar henrichhenrich/* XPM */ static const char*SS_Home[]={ "20 20 8 1", "c c #9b0036", "d c #df0049", "b c #ff699e", "# c #303030", "a c #585858", "f c #808080", ". c None", "e c #dcdcdc", "....................", ".........#a.........", "........#a#a........", ".......#abc#a.......", "......#abddc#a......", ".....#abdddcc#a.....", "....#abddddddc#a....", "...#abddddddddc#a...", "..#abddddddddddc#a..", ".#a###############a.", ".aaaaaaaaaaaaaaaaaa.", "...a#eeeeeeeeee#a...", "...a#effaeeffae#a...", "...a#efaaeefaae#a...", "...a#eeeeeeeeee#a...", "...a#eeeeeeeeee#a...", "...a#aaaaaaaaaa#a...", "...a############a...", "....................", "...................."}; ./icons/SS_Preview.xpm0000644000175000017500000000127511326615563014741 0ustar henrichhenrich/* XPM */ static const char* SS_Preview[]={ "20 20 11 1", "d c #f8fcf8", "c c #787878", "b c #a0a0a0", ". c None", "a c #303030", "g c #c8ccc8", "# c #585858", "h c #808080", "i c #585c58", "e c #400000", "f c #989898", "....................", "...########.........", "..#aaaaaaaa#........", "..#abbcd#efa#.......", "..#abccd#egfa#......", "..#adddd#eddda#.....", "..#adfcf#afgfca#....", "..#adfcf#aaaaaaaa...", "..#addddh#######a#..", "..#adfcfgdfcf###a#..", "..#adfcfgdggffada#..", "..#adddgddddddgda#..", "..#adgffggccgdfda#..", "..#adggfcgccfdgda#..", "..#adddggddgdddda#..", "..#adcdiifcfdfcda#..", "..#adgdfgfcgffcda#..", "..#aaaaaaaaaaaaaa#..", "...##############...", "...................."}; ./icons/SS_Goto.xpm0000644000175000017500000000131111326615454014216 0ustar henrichhenrich/* XPM */ static const char* SS_Goto[]={ "20 20 12 1", "j c #f8fcf8", "d c #ffffff", "g c #00823a", "i c #a0a0a0", "c c #ffffc0", ". c None", "b c #c3c3c3", "a c #303030", "h c #008000", "# c #585858", "f c #dcdcdc", "e c #ffdca8", "....................", ".##################.", ".#aaaaaaaaaaaaaaaa#.", ".#abccc#bdcc#bdcca#.", ".#abeee#beee#beeea#.", ".#abeee#beee#beeea#.", ".#abeef#beee#feeea#.", ".#a##############a#.", ".#abdcc#ghhg#bccca#.", ".#abeee#hggh#beeea#.", ".#abeee#hggh#beeea#.", ".#abeee#ghhg#beeea#.", ".#a##############a#.", ".#abccf#bddd#ijcca#.", ".#abeee#beee#beeea#.", ".#abeee#beee#beeea#.", ".#abeee#beee#beeea#.", ".#aaaaaaaaaaaaaaaa#.", ".##################.", "...................."}; ./icons/SS_MagnifyMinus.xpm0000644000175000017500000000137511326615547015731 0ustar henrichhenrich/* XPM */ static const char*SS_MagnifyMinus[]={ "20 20 15 1", "i c #000000", "d c #f8fcf8", "l c #ffa858", "j c #505050", "g c #c0ffff", "c c #4b7b82", ". c None", "h c #57888d", "b c #74b4bb", "k c #c05800", "a c #303030", "m c #ff8000", "# c #585858", "e c #9ef5ff", "f c #8ad8de", ".......#####........", ".....##aaaaa##......", "...##aabbbbbaa##c...", "..#aabbddeeeffaa#...", "..#abedddeeeeffa#...", ".#abeddeeeeeeeffa#..", ".#aeddgeeeeeeeefa#..", "#abddeeeeeeeeeefaa#.", "#abdeehhhhhhhhefba#.", "#abdeeiiiiiiijeeha#.", "#abeeebbbbbbbbgfha#.", "#abeeeeeeeeeeeffha#.", ".#abeeeeeeeeeefha#..", ".#abbeeeeeeeefhhaa#.", "..#abeeeeeeffbhaaaa#", "..#aabbbefffhhaaklla", "...##aabbbhhaaakkmml", ".....##aaaaa##aakkml", ".......#####.##aakkm", ".........ccc..##aakm"}; ./icons/SS_BestYupar.xpm0000644000175000017500000000123211326615322015220 0ustar henrichhenrich/* XPM */ static const char*SS_Best[]={ "20 20 9 1", "a c #000000", "d c #9b0036", "# c #4b7b82", ". c None", "b c #df0049", "g c #303030", "e c #ff699e", "f c #585858", "c c #808080", "........#a#.###bcdae", ".###...#abf#...#####", ".#######abgf########", ".######abbba########", ".#####abbbbba#######", "aaaggggbbbbbggggggaa", "abbbbbbbbbbbbbbbbbba", "#abbbbbbbbbbbbbbbga#", "#fabbbbbbbbbbbbbg###", "##faabbbbbbbbbba####", "####aabbbbbbbba#####", "####fabbbbbbbba####.", "####aabbbbbbbba###..", "####abbbbaabbbba#...", "###fabbaffaaabbba#..", "###fabaf####gaffa##.", ".##aaa########aa##..", ".#################..", ".######.###.######..", ".##.......##.####..."}; ./icons/SS_DocumentXM.xpm0000644000175000017500000000124111326615372015332 0ustar henrichhenrich/* XPM */ static const char *SS_DocumentXM[]={ "20 20 9 1", ". c None", "a c #303030", "# c #585858", "d c #585c58", "e c #787878", "c c #989898", "b c #a0a0a0", "f c #c8ccc8", "g c #f8fcf8", "..........##########", ".........##aaaaaaaa#", "........##abbbbbbba#", ".......##ac##ddeeba#", "......##acfcfcfeeba#", ".....##agggggggggba#", "....##acfgcfceccaba#", "...##aecfgccceeccba#", "..##aggggggffgfggba#", ".##accecfgceccaccba#", "##aefcecfgffccafcba#", "#abggggfggggggfgfba#", "#abeffccffeefgcecba#", "#abceffcefeecgffcba#", "#abfgggffggfgggggba#", "#abfaegddcecgcecdba#", "#abfcfgcfcefcceccba#", "#abbbbbbbbbbbbbbbba#", "#aaaaaaaaaaaaaaaaaa#", "####################"}; ./icons/SS_SaveNotNeeded.xpm0000644000175000017500000000115011326615625015773 0ustar henrichhenrich/* XPM */ static const char *SS_SaveNotNeeded[]={ "20 20 5 1", ". c None", "a c #000000", "b c #007120", "c c #009630", "# c #585858", "....................", ".......#####........", ".....##aaaaa##......", "....#aabbbbbaa#.....", "...#abbcccccbba#....", "..#abcccccccccba#...", "..#abcccccccccba#...", ".#abcccccccccccba#..", ".#abcccccccccccba#..", ".#abcccccccccccba#..", ".#abcccccccccccba#..", ".#abbcccccccccbaa#..", "..#abcccccccccba#...", "..#abbcccccccbaa#...", "...#abbbccbbbaa#....", "....#aabbbbaaa#.....", ".....##aaaaa###.....", ".......#####........", "....................", "...................."}; ./icons/SS_LBPS.xpm0000644000175000017500000000120411326615522014043 0ustar henrichhenrich/* XPM */ static const char *SS_LB_PS_XPM[] = { /* columns rows colors chars-per-pixel */ "20 20 3 1", " c None", ". c Black", "X c Black s s_80", /* pixels */ " ", " ", " ", " . ", " . ", " . ", " . ", " . ", " . ", " . ", " . ", " . ", " X . ", " X.. . ", " X........... ", " X.. ", " X ", " ", " ", " ", }; ./icons/SS_Font.xpm0000644000175000017500000000115611326615450014217 0ustar henrichhenrich/* XPM */ static const char* SS_Font[]={ "20 20 6 1", "d c #eae793", "c c #000000", "b c #ffffc0", ". c None", "a c #303030", "# c #585858", "....................", "..#################.", "..#aaaaaaaaaaaaaaa#.", "..#abbbbbbbbbbbbba#.", "..#abbbbbbabbbbbba#.", "..#abbbbbbcdbbbbba#.", "..#abbbbbcccdbbbba#.", "..#abbbbbccccbbbba#.", "..#abbbbcccccdbbba#.", "..#abbbdcdccccbbba#.", "..#abbbccbccccdbba#.", "..#abbdcdbdccccbba#.", "..#abbcccccccccdba#.", "..#abdcdbbbdccccba#.", "..#abccbbbbdccccda#.", "..#accccbbdcccccca#.", "..#abbbbbbbbbbbbba#.", "..#aaaaaaaaaaaaaaa#.", "..#################.", "...................."}; ./icons/SS_Yes.xpm0000644000175000017500000000123111326615641014045 0ustar henrichhenrich/* XPM */ static const char*SS_Yes[]={ "20 20 9 1", "g c #6c9665", "# c #a0a0a0", ". c None", "e c #48964a", "d c #849686", "c c #303030", "a c #585858", "b c #808080", "f c #316632", "....................", "....................", "..............#ab...", ".............#cacb..", "............#cadbcb.", "...........#cadeefa.", "..........#caddeffa.", ".........#cadeeffcb.", "..#aa#..#cadeeffca..", ".#aaac##cadeeffca...", ".aaddaccadeeffca....", ".aaeedaadeeffca.....", ".acfeeggeeffca......", "..acfeeeeffca.......", "...acffeffca........", "....acfffca.........", ".....acaca..........", "......aaa...........", "....................", "...................."}; ./icons/SS_Save.xpm0000644000175000017500000000113711326615631014207 0ustar henrichhenrich/* XPM */ static const char *SS_Save[]={ "20 20 5 1", ". c None", "a c #000000", "# c #585858", "b c #9b0036", "c c #df0049", "....................", ".......#####........", ".....##aaaaa##......", "....#aabbbbbaa#.....", "...#abbcccccbba#....", "..#abcccccccccba#...", "..#abcccccccccba#...", ".#abcccccccccccba#..", ".#abcccccccccccba#..", ".#abcccccccccccba#..", ".#abcccccccccccba#..", ".#abbcccccccccbba#..", "..#abcccccccccba#...", "..#abbcccccccbba#...", "...#abbbcccbbba#....", "....#aabbbbbaa#.....", ".....##aaaaa##......", ".......#####........", "....................", "...................."}; ./icons/SS_CreateFolder.xpm0000644000175000017500000000130111326615361015641 0ustar henrichhenrich/* XPM */ static const char*SS_CreateFolder[]={ "20 20 11 1", "f c #eae793", "c c #6187d2", "h c #c7ba2b", "# c #4b7b82", ". c None", "d c #303030", "a c #585858", "b c #76a4ff", "g c #b7c4e3", "i c #ad9d27", "e c #c7c77d", "....................", "....................", "............#aaa.aaa", "...aaaaaa...abcaacba", "..adddddda..acbbbbca", ".adefffeadaaaabggbaa", ".adfhhhheaddddbggba#", ".adfhhhhheeeebbbbbca", ".adfhhhhhhhhhbbhicba", ".adfhhhhhhhhhhhhidaa", ".adfhhhhhhhhhhhhida.", ".adfhhhhhhhhhhhhida.", ".adfhhhhhhhhhhhhida.", ".adehhhhhhhhhhhhida.", ".adeiiiiiiiiiiiiida.", ".adddddddddddddddda.", "..aaaaaaaaaaaaaaaa..", "....................", "....................", "...................."}; ./icons/SS_LRO_XPM.xpm0000644000175000017500000000116111326615537014473 0ustar henrichhenrich/* XPM */ static const char *SS_LRO_XPM[]={ "20 20 6 1", ". c None", "d c #004810", "b c #007020", "c c #009430", "a c #303030", "# c #585858", "....#aa#............", "....#aba#...........", "....#acba#..........", "....#accba#.........", "....#acccba#........", "....#accccba#.......", "....#acccccba#......", "....#accccccba#.....", "....#acccccccba#....", "....#accccccccda#...", "....#acccccccba#....", "....#accccccba#.....", "....#acccccba#......", "....#accccba#.......", "....#acccba#........", "....#accba#.........", "....#acba#..........", "....#aba#...........", "....#aa#............", "....#a#............."}; ./icons/SS_GreenLeft.xpm0000644000175000017500000000120211326615460015155 0ustar henrichhenrich/* XPM */ static const char *SS_GreenLeft[]={ "20 20 7 1", ". c None", "b c #000000", "c c #007120", "d c #009630", "a c #585858", "e c #808080", "# c #a0a0a0", "....................", "....................", "..........##........", ".........#aa#.......", "........#abba#......", ".......#abcba#......", "......#abcdba#####..", ".....#abdddbaaaae#..", "....#abddddccccba#..", "...#abdddddddddba#..", "...aabdddddddddba#..", "...abbcddddddddba#..", "....abbcdddccccba#..", ".....abbcdcbbbbba#..", "......abbccbbbbba#..", ".......abbcbbaaaa...", "........abbba#......", ".........abb#.......", "..........a#........", "...................."}; ./icons/SS_Print.xpm0000644000175000017500000000131211326615570014402 0ustar henrichhenrich/* XPM */ static const char* SS_Print[]={ "20 20 12 1", "i c #eae793", "e c #f8fcf8", "b c #000000", "d c #787878", "c c #a0a0a0", ". c None", "a c #303030", "g c #c8ccc8", "# c #585858", "j c #c7c77d", "f c #989898", "h c #81701d", "....................", "...########.........", "..##aaaaabb#........", "..#aacde#bfb#.......", "..#acdde#bgfb#......", "..#aeeee#beeeb#.....", "..#aefdf#bfgfdb#....", "..#aefdf#baaaaaba...", "..#aeeeee#####aaa#..", "..#aefdfgefdf###a#..", "..#aefdfgeggff##a#..", "..#aeeegeeeeeeeea#..", ".#ahaaaaaaaaaaaaa#..", ".#ahhhhhhhhhhhhhha#.", ".#ahiiiiiiiiiiiiha#.", ".#ahjjjjjjjjjjjjha#.", ".#ahhhhhhhhhhhhhha#.", "..#aaaaaaaaaaaaaa#..", "..################..", "...................."}; ./icons/SS_Open.xpm0000644000175000017500000000123311326615557014216 0ustar henrichhenrich/* XPM */ static const char *SS_Open[]={ "20 20 9 1", ". c None", "f c #000000", "b c #004000", "c c #008000", "a c #303030", "# c #585858", "d c #808000", "g c #c0c000", "e c #c7ba2b", "....................", ".........##.........", "........##a#........", "...######aba#.......", "..#aaaaaabcba#......", ".#adeeeabcccba#.....", ".#adeeabcccccba##...", ".#faaabbbbcbbbbaa##.", ".#fdaaaaabcbaaaaaf#.", ".#fdeeeeabcbaeedaf#.", ".#fdeeeeabcbaeedaf#.", ".#fdeeeeabcbaeedaf#.", ".#fdeeeeabbbaeedaf#.", ".#fdeeeeaaaaaeedaf#.", ".#fdeeeeeeeeeegdaf#.", ".#fdddddddddddddaf#.", ".##ffffffffffffff##.", "..################..", "....................", "...................."}; ./icons/SS_LBLS.xpm0000644000175000017500000000120411326615511014035 0ustar henrichhenrich/* XPM */ static const char *SS_LB_LS_XPM[] = { /* columns rows colors chars-per-pixel */ "20 20 3 1", " c None", ". c Black", "X c Black s s_80", /* pixels */ " ", " ", " ", " . ", " . ", " . ", " . ", " . ", " . ", " . ", " . ", " . ", " X . ", " X.. . ", " X........ ", " X.. ", " X ", " ", " ", " ", }; ./icons/SS_RLE_XPM.xpm0000644000175000017500000000120011326615605014447 0ustar henrichhenrich/* XPM */ static const char *SS_RLE_XPM[]={ "20 20 7 1", ". c None", "e c #002408", "d c #004810", "b c #007020", "c c #009430", "a c #303030", "# c #585858", "...........#aaa#....", "..........#abba#....", ".........#abcca#....", "........#abccca#....", ".......#abcccca#....", "......#abcbdcca#....", ".....#abcbaacca#....", "....#abcba#acca#....", "...#abcba#.acca#....", "..#adcca#..acca#....", "...#abcce#.acca#....", "....#abcce#acca#....", ".....#abcceacca#....", "......#abccacca#....", ".......#abcccca#....", "........#abccca#....", ".........#abcca#....", "..........#abba#....", "...........#aaa#....", "............#aa#...."}; ./icons/SS_LBMAC.xpm0000644000175000017500000000120511326615515014124 0ustar henrichhenrich/* XPM */ static const char *SS_LB_MAC_XPM[] = { /* columns rows colors chars-per-pixel */ "20 20 3 1", " c None", ". c Black", "X c Black s s_80", /* pixels */ " ", " ", " ", " ", " ", " ", " ", " ", " ", " . ", " . ", " . ", " X . ", " X.. . ", " X........ ", " X.. ", " X ", " ", " ", " ", }; ./icons/SS_GreenRight.xpm0000644000175000017500000000120311326615465015346 0ustar henrichhenrich/* XPM */ static const char *SS_GreenRight[]={ "20 20 7 1", ". c None", "b c #000000", "c c #007120", "d c #009630", "a c #585858", "e c #808080", "# c #a0a0a0", "....................", "....................", "........##..........", ".......#aa#.........", "......#abba#........", "......#abcba#.......", "..#####abdcba#......", "..#eaaaabdddba#.....", "..#abccccddddba#....", "..#abdddddddddba#...", "..#abdddddddddbaa...", "..#abddddddddcbba...", "..#abccccdddcbba....", "..#abbbbbcdcbba.....", "..#abbbbbccbba......", "...aaaabbcbba.......", "......#abbba........", ".......#bba.........", "........#a..........", "...................."}; ./icons/SS_Caution.xpm0000644000175000017500000000125511326615333014713 0ustar henrichhenrich/* XPM */ static const char*SS_Caution[]={ "20 20 10 1", "g c #000000", "b c #715704", "e c #ffc508", "h c #383c38", "d c #4b7b82", ". c None", "a c #303030", "# c #585858", "f c #9d7a05", "c c #ce9f06", ".......#####........", ".....##aaaaaa#......", "...##aabccccaa##d...", "..#aabceeeeecbaa#...", "..#aceeeeffeecba#...", ".#abeeeefggceecba#..", ".#aceeeefggceeeca#..", "#abeeeeecggeeeeeba#.", "#aceeeeeegfeeeeeca#.", "#aceeeeeegfeeeeeca#.", "#aceeeeeefceeeeeca#.", "#a#eeeeeeceeeeeeba#.", ".#aceeeeeeeeeeeea#..", ".#aceeeeegheeeeca#..", "..#aceeecgheeeba#...", "..#aacceeeeecbaa#...", "...##aacccccaa##....", ".....##aaaaa##......", ".......#####........", "...................."}; ./icons/SS_Right.xpm0000644000175000017500000000121511326615601014360 0ustar henrichhenrich/* XPM */ static const char* SS_Right[]={ "20 20 8 1", "# c #a0a0a0", "c c #225492", "d c #2b6cbb", "e c #3380de", "f c #3b93ff", "b c #000000", "a c #585858", ". c None", "....................", "....................", "........##..........", ".......#aa#.........", "......#abba#........", "......#abcba#.......", "......#abdcba#......", "......#abdedba#.....", "......#abefedba#....", "......#abeeeddba#...", "......#abdedddbaa...", "......#abddddcbba...", "......#abdddcbba....", "......#abddcbba.....", "......#abdcbba......", "......#abcbba.......", "......#abbba........", ".......#bba.........", "........#a..........", "...................."}; ./icons/SS_Inform.xpm0000644000175000017500000000117711326615501014543 0ustar henrichhenrich/* XPM */ static const char* SS_Inform[]={ "20 20 7 1", "b c #a0a0a0", ". c None", "e c #c3c3c3", "a c #303030", "# c #585858", "d c #808080", "c c #dcdcdc", ".......#####........", ".....##aaaaa##......", "...##aabbbbbaa##....", "..#aabcbbbbcbbaa#...", "..#abccbaaacccba#...", ".#abcccbaaaccccba#..", ".#abcccbaaaccccba#..", "#abbcccccccccccbba#.", "#abccccddddcccceba#.", "#abccccdaaacccceba#.", "#abccccdaaacccceba#.", "#abbcccdaaaccccbba#.", ".#abcccdaaaccceba#..", ".#abbccdaaaceceba#..", "..#abccdaaaceeea#...", "..#aabeecceeebaa#...", "...##aabbbbbaa##....", ".....##aaaaa##......", ".......#####........", "...................."}; ./icons/SS_Help.xpm0000644000175000017500000000117511326615470014204 0ustar henrichhenrich/* XPM */ static const char* SS_Help[]={ "20 20 7 1", "b c #c5b46e", "a c #000000", "e c #383c38", ". c None", "d c #84784a", "# c #585858", "c c #fce988", "....................", "..################..", ".##aaaaaaaaaaaaaa##.", ".#aabbbbbbbbbbbbaa#.", ".#abbcccdeedbccbba#.", ".#abcccdeceaecccba#.", ".#abcccaacbaabccba#.", ".#abcccbdcbaacccba#.", ".#abccccccdadcccba#.", ".#abccccccadccccba#.", ".#abcccccbdcccccba#.", ".#abcccccbccccccba#.", ".#abccccccccccccba#.", ".#abcccccaecccccba#.", ".#abccccbaecccccba#.", ".#abbccccbcccccbba#.", ".#abbbbbbbbbbbbbaa#.", ".#abaaaaaaaaaaaaa##.", ".#aa##############..", ".#a##..............."}; ./icons/SS_LBDOS.xpm0000644000175000017500000000120511326615505014150 0ustar henrichhenrich/* XPM */ static const char *SS_LB_DOS_XPM[] = { /* columns rows colors chars-per-pixel */ "20 20 3 1", " c None", ". c Black", "X c Black s s_80", /* pixels */ " ", " ", " ", " ", " ", " ", " ", " ", " ", " . . ", " . . ", " . . ", " X . . ", " X.. . . ", " X........... ", " X.. ", " X ", " ", " ", " ", }; ./icons/SS_Yudit_XPM.xpm0000644000175000017500000000611211326615646015137 0ustar henrichhenrich/* XPM */ static const char *SS_Yudit_XPM[] = { /* columns rows colors chars-per-pixel */ "48 48 36 1", " c black", ". c #061b08", "X c #0f1112", "o c #13130f", "O c gray9", "+ c #26140a", "@ c #281e14", "# c gray16", "$ c gray22", "% c #0f4816", "& c #443e3e", "* c #494848", "= c #585757", "- c #635c5c", "; c #696666", ": c #716c6c", "> c #7a7979", ", c #827f7f", "< c #898888", "1 c #918f8f", "2 c #93908f", "3 c #9a9a9a", "4 c #a09e9e", "5 c #a0a09f", "6 c #ababaa", "7 c #b2afaf", "8 c #b0b0af", "9 c #b6b5b5", "0 c #c0bebe", "q c #c0c0bf", "w c #c8c8c8", "e c #d0d0cf", "r c #d7d7d6", "t c #e7e7e7", "y c #f8f8f8", "u c None", /* pixels */ "uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu uuuuuuuuuuuuu", "uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu << uuuuuuuuuuuu", "uuuuuuuuuuuuuuuuuuuuuuuuuuuuu 1663Xuuuuuuuuuuuu", "uuuuuuuuuuuuuuuuuuuuuuuu #288888* uuuuuuuuuuu", "uuuuuuuuuuuuuuuuuuuu OO:38668988863 uuuuuuuuuuu", "uuuuuuuuuuuuuuuuuuuO3668999999987886#uuuuuuuuuuu", "uuuuuuuuuuuuuuuuuu e><56899868887888< uuuuuuuuuu", "uuuuuuuuuuuuuuuuu rt<;,56686666876667ouuuuuuuuuu", "uuuuuuuuuuuuuuuu 5rre=>13334333766666< uuuuuuuuu", "uuuuuuuuuuuuuuuuOrtre*:;-;;;;;;4666266ouuuuuuuuu", "uuuuuuuuuuuuuuu 6t6-*-;;;;;;;-->4<;-<6< uuuuuuuu", "uuuuuuuuuuuuuuu ;===;:>136666:--;;;--,4 uuuuuuuu", "uuuuuuuuuuuuuuu &,>>>><24664,;-=->24:-3> uuuuuuu", "uuuuuuuuuuuuuuuuO 1,23671:;;:=-6888663+uuuuuuu", "uuuuuuuuuuuuuuu 161 44676--,67,;X 9986> uuuuuu", "uuuuuuuuuu #28883o*7707:-700 161 9886@uuuuuu", "uuuuuu OO:386689988* 0qw X&X##39883Xq9996 uuuuu", "uuuuuO566899998998888 OO:5666889888* qqq9> uuuu", "uuuu r><568998668886O3668999999888863 wwwwwXuuuu", "uuu rt,;,5668666688 e><56899886688888#wwwww3 uuu", "uu 6rrw=>16666666 rt>;,4666666668866< wwwww#uuu", "uuOrtrr=>,,<<1666 5rrw=>366663<=*<6866Owwwww8 uu", "u 6t5;*->>-=-=;18Orttr=:1><;$OX *6686< eewww3 u", "u ;===;:>;;<5,--O6t6-*=#XXX XO# O36686Xeeeww1 u", "u *,>>>>>;36794-=;===== X&;<55O >8666< ee2O uu", "uuO13,<>>,67999>=*>>>>>=O =89999* $68866O8O uuu", "uu 9655<-399909<;#13,1,3* =99999< X38886< uu", "uu q9981->9qw00:-X865555; *00q996# ;99986# uu", "uu 0qq08-=4www3=> 099889> $qqqqq9; #999981# u", "uu 8wwww,,->1:,;9 0qq0995 #qwwqww3XX>;$5996 uu", "uu =reew6=:::;,we 8wwwww8OX8ewwww6# X #6q9> uuu", "uuu eere9,8eeerrr =reeweq#X6ee01=O #O #5qwOuuu", "uuu errr9,4rrrrrrr teeeee$ <5=O #-3q8$O3ww3 uu", "uuu wttr8,,190re69Xrrrree=XO #=3wreee65wwww#uu", "uuu >ttttq<:;;,:;;*9rtr<#X O*1wrrrereereewww9 u", "uuuuOttttttr0>,ttt& &<0rrrrrrrrrrreeewww5 ", "uuuu etytyttttrtrrr#ytt= *rttttrrrrrrrrrreeeww1 ", "uuuu 8ttyyyyyttttrr ryt= -yttttrrrrrrrrrrrre3O u", "uuuuu&tyyyyyytytttr 9yy= -ytttttrrrrrrtrrr8O uu", "uuuuu tyyyyyyyyytttr$yy>#,yyyytttrrrrrrr6O u", "uuuuu 8yyyyyyyyytttr yyyyyyyyyyttreeew5 u", "uuuuu >yyyyyyyyyyt3. qyyyyyyyyytrtr9yyyyyyyyytt5$X u", "uuuuuu qyyyyt6. yyyyyyyye1 uuuu", "uuuuuuu$yt9< wyyyyt6$ uuuuuuuu", "uuuuuuu uuuuu$ytw> uuuuuuuuuuuu", "uuuuuuuu uuuuuuuuuu uuuuuuuuuuuuuuuu", "uuuuuuuuuuuuuuuuuuuuuuu uuuuuuuuuuuuuuuuuuuuu" }; ./icons/SS_LBUNIX.xpm0000644000175000017500000000120611326615527014313 0ustar henrichhenrich/* XPM */ static const char *SS_LB_UNIX_XPM[] = { /* columns rows colors chars-per-pixel */ "20 20 3 1", " c None", ". c Black", "X c Black s s_80", /* pixels */ " ", " ", " ", " ", " ", " ", " ", " ", " ", " . ", " . ", " . ", " X . ", " X.. . ", " X........... ", " X.. ", " X ", " ", " ", " ", }; ./icons/SS_Error.xpm0000644000175000017500000000117511326615431014402 0ustar henrichhenrich/* XPM */ static const char*SS_Error[]={ "20 20 7 1", "e c #ffffff", "a c #000000", "b c #9b0036", ". c None", "c c #df0049", "d c #ff698e", "# c #585858", "....................", ".......#####........", ".....##aaaaa##......", "....#aabccccaa#.....", "...#abccdddcbba#....", "..#abcdddccccbba#...", "..#acddcccccccba#...", ".#accdeecceeccbba#..", ".#acddceeeecccbba#..", ".#acdccceecccccba#..", ".#acdcceeeecccbba#..", ".#accceecceeccbba#..", "..#acccccccccbba#...", "..#accccccccbbba#...", "...#accccbbbbba#....", "....#aabbbbbaa#.....", ".....##aaaaa##......", ".......######.......", "....................", "...................."}; ./icons/SS_CircleOn.xpm0000644000175000017500000000125611326615344015012 0ustar henrichhenrich/* XPM */ static const char*SS_CircleOn[]={ "20 20 10 1", "e c #ffffff", "g c #6c9665", "b c #a0a0a0", "# c #c3c3c3", "f c #849686", "c c #303030", "h c #008000", "a c #585858", "d c #808080", ". c None", "....................", "....................", "....................", "....................", ".......#aaaaa.......", "......bacccccad.....", ".....bac#eee#cad....", "....#aceefgfeeca#...", "....ac#eghhhhe#ca...", "....acefhhhhhfeca...", "....aceghhhhhgeca...", "....acefhhhhhfeca...", "....ac#eghhhge#ca...", "....#aceefgfeeca#...", ".....bac#eee#cad....", "......bacccccad.....", ".......#aaaaa#......", "....................", "....................", "...................."}; ./icons/SS_CircleOff.xpm0000644000175000017500000000120111326615340015132 0ustar henrichhenrich/* XPM */ static const char*SS_CircleOff[]={ "20 20 7 1", "e c #ffffff", "b c #a0a0a0", "# c #c3c3c3", "c c #303030", "a c #585858", "d c #808080", ". c None", "....................", "....................", "....................", "....................", ".......#aaaaa.......", "......bacccccad.....", ".....bac#eee#cad....", "....#aceeeeeeeca#...", "....ac#eeeeeee#ca...", "....aceeeeeeeeeca...", "....aceeeeeeeeeca...", "....aceeeeeeeeeca...", "....ac#eeeeeee#ca...", "....#aceeeeeeeca#...", ".....bac#eee#cad....", "......bacccccad.....", ".......#aaaaa#......", "....................", "....................", "...................."}; ./icons/SS_LRE_XPM.xpm0000644000175000017500000000120011326615533014447 0ustar henrichhenrich/* XPM */ static const char *SS_LRE_XPM[]={ "20 20 7 1", ". c None", "e c #002408", "b c #004810", "d c #007020", "c c #009430", "a c #303030", "# c #585858", "..#aaba#............", "..#accda#...........", "..#acccda#..........", "..#accccda#.........", "..#acccccda#........", "..#accaeccda#.......", "..#accaaeccda#......", "..#acca#aeccda#.....", "..#acca.#aeccda#....", "..#acca..#abccba#...", "..#acca.#aeccda#....", "..#acca#aeccda#.....", "..#accaaeccda#......", "..#accaeccda#.......", "..#acccccda#........", "..#accccda#.........", "..#acccda#..........", "..#accda#...........", "..#aaba#............", "..#aaa#............."}; ./icons/SS_LR_XPM.xpm0000644000175000017500000000116011326615543014350 0ustar henrichhenrich/* XPM */ static const char *SS_LR_XPM[]={ "20 20 6 1", ". c None", "b c #004810", "d c #007020", "c c #009430", "a c #303030", "# c #585858", "..#aaba#............", "..#accda#...........", "...#accda#..........", "....#accda#.........", ".....#accda#........", "......#accda#.......", ".......#accda#......", "........#accda#.....", ".........#accda#....", "..........#accba#...", ".........#accda#....", "........#accda#.....", ".......#accda#......", "......#accda#.......", ".....#accda#........", "....#accda#.........", "...aaccda#..........", "..#accda#...........", "..#aaba#............", "..#aaa#............."}; ./icons/SS_EmbedLeft.xpm0000644000175000017500000000116311326615414015136 0ustar henrichhenrich/* XPM */ static const char *SS_EmbedLeft[]={ "20 20 6 1", ". c None", "a c #000000", "b c #808080", "d c #a0a0a0", "# c #c3c3c3", "c c #ffffff", ".##############.....", ".#aaaaaaaaaaaab.....", ".#abbbbbbbbbbab.....", ".#abcccccccc#ab.....", ".#abcccccccc#ab.....", ".#ab#########ab.....", ".#aaaaaaaaaaaab.....", ".#abbbbbbabbbbb.....", ".#abcccc#ab.........", ".#abcccc#ab.........", ".#abcccc#ab.........", ".#ab#####ab########.", ".#aaaaaaaaaaaaaaaab.", ".#abbbbbbbbbbbbbbab.", ".#abcccccccccccc#ab.", ".#abcccccccccccc#ab.", ".#ab#############ab.", ".#aaaaaaaaaaaaaaaab.", "..ddddddddddddddddd.", "...................."}; ./icons/SS_Cancel.xpm0000644000175000017500000000117611326615326014502 0ustar henrichhenrich/* XPM */ static const char*SS_Cancel[]={ "20 20 7 1", "c c #9b0036", ". c None", "b c #df0049", "d c #303030", "a c #ff699e", "# c #585858", "e c #400000", "....................", "....................", "..####........####..", "..#aab#......#aac#..", "..#cccb#....#abccd..", "..#dcccb#..#abccd#..", "...#dcccb##abccd#...", "....#dcccbbbccd#....", ".....#dccccccd#.....", "......#cccccd#......", "......#bccccc#......", ".....#abcccccb#.....", "....#abccd#cccb#....", "...#abccd##dcccb#...", "..#abccd#..#dcccb#..", "..#accd#....#dccce..", "..#ccd#......#dcce..", "..##d#........#ddd..", "....................", "...................."}; ./icons/SS_DocumentXX.xpm0000644000175000017500000000124111326615404015341 0ustar henrichhenrich/* XPM */ static const char *SS_DocumentXX[]={ "20 20 9 1", ". c None", "a c #303030", "# c #585858", "e c #585c58", "d c #787878", "c c #989898", "b c #a0a0a0", "f c #c8ccc8", "g c #f8fcf8", "..........##########", ".........##aaaaaaaa#", "........##abbbbbbba#", ".......##ac#deeddba#", "......##acfcfcfddba#", ".....##agggggggggba#", "....##acfgcfcdccaba#", "...##adcfgcccddccba#", "..##aggggggffgfggba#", ".##accdcfgcdccacca##", "##adfcdcfgffccafa##.", "#abggggfggggggfa##..", "#abdffccffddfga##...", "#abcdffcdfddca##....", "#abfgggffggfa##.....", "#abfadgeecda##......", "#abfcfgcfca##.......", "#abbbbbbba##........", "#aaaaaaaa##.........", "##########.........."}; ./icons/SS_EmbedNone.xpm0000644000175000017500000000116311326615421015141 0ustar henrichhenrich/* XPM */ static const char *SS_EmbedNone[]={ "20 20 6 1", ". c None", "a c #000000", "b c #808080", "d c #a0a0a0", "# c #c3c3c3", "c c #ffffff", ".##############.....", ".#aaaaaaaaaaaab.....", ".#abbbbbbbbbbab.....", ".#abcccccccc#ab.....", ".#abcccccccc#ab.....", ".#ab#########abbbbd.", ".#aaaaaaaaaaaaaaaab.", ".#bbbbbbbabbbbbbbab.", "........#abccccc#ab.", "........#abccccc#ab.", "........#abccccc#ab.", ".########ab######ab.", ".#aaaaaaaaaaaaaaaab.", ".#abbbbbbbbbbbbabbb.", ".#abcccccccccc#ab...", ".#abcccccccccc#ab...", ".#ab###########ab...", ".#aaaaaaaaaaaaaab...", ".#ddddddddddddddd...", "...................."}; ./icons/SS_Redo.xpm0000644000175000017500000000117511326615574014212 0ustar henrichhenrich/* XPM */ static const char *SS_Redo[]={ "20 20 7 1", ". c None", "b c #000000", "c c #007120", "e c #009630", "a c #585858", "d c #808080", "# c #a0a0a0", "....................", "....................", "......##...##.......", ".....#aa#..aa#......", "....#abba#.bba#.....", "....#abcba#bcba#....", "#####abccbabccba#...", "#daaaabcecbbcecba#..", "#abccccceeccceecba#.", "#abceeeeeeeeeeeecba#", "#abceeeeeeeeeeeeebaa", "#abceeeeeeeeeeeecbba", "#abceeeeeecceeecbba.", "#abcccccecbbcecbba..", "#abbbbbccbbbccbba...", ".aaaabbcbbabcbba....", "....#abbba.bbba.....", ".....#bba..bba......", "......#a...#a.......", "...................."}; ./icons/SS_CreateDir.xpm0000644000175000017500000000104411326615354015152 0ustar henrichhenrich/* XPM */ static const char*SS_Yes[]={ "20 20 1 1", ". c #dcdcdc", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "....................", "...................."}; ./icons/SS_RLO_XPM.xpm0000644000175000017500000000120011326615611014456 0ustar henrichhenrich/* XPM */ static const char *SS_RLO_XPM[]={ "20 20 7 1", ". c None", "b c #002408", "e c #004810", "c c #007020", "d c #009430", "a c #303030", "# c #585858", "............#ab#....", "...........#aca#....", "..........#acda#....", ".........#acdda#....", "........#acddda#....", ".......#acdddda#....", "......#acddddda#....", ".....#acdddddda#....", "....#acddddddda#....", "...#aedddddddda#....", "....#acddddddda#....", ".....#acdddddda#....", "......#acddddda#....", ".......#acdddda#....", "........#acddda#....", ".........#acdda#....", "..........#acda#....", "...........#aca#....", "............#aa#....", ".............#a#...."}; ./icons/SS_EmbedRight.xpm0000644000175000017500000000116411326615425015324 0ustar henrichhenrich/* XPM */ static const char *SS_EmbedRight[]={ "20 20 6 1", ". c None", "a c #000000", "b c #808080", "d c #a0a0a0", "# c #c3c3c3", "c c #ffffff", ".....##############.", ".....#aaaaaaaaaaaab.", ".....#abbbbbbbbbbab.", ".....#abcccccccc#ab.", ".....#abcccccccc#ab.", ".....#ab#########ab.", ".....#aaaaaaaaaaaab.", "......bbbabbbbbbbab.", "........#abccccc#ab.", "........#abccccc#ab.", "........#abccccc#ab.", ".########ab######ab.", ".#aaaaaaaaaaaaaaaab.", ".#abbbbbbbbbbbbbbab.", ".#abcccccccccccc#ab.", ".#abcccccccccccc#ab.", ".#ab#############ab.", ".#aaaaaaaaaaaaaaaab.", ".#ddddddddddddddddd.", "...................."}; ./fonts/0000755000175000017500000000000011330767713012176 5ustar henrichhenrich./fonts/README.TXT0000644000175000017500000001535407643304606013544 0ustar henrichhenrichPut True Type fonts here. All font names are case sensitive. Please read the HOWTO-configure document to see how to configure yudit. In yudit command area you need to type howto configure for this. If you use yudit.properties that was shipped with yudit, you don't need to do anything else than put the following fonts here: For Virtual Font TrueType: arial.ttf kochi-gothic.ttf gulim.ttf cyberbit.ttf caslr.ttf fogcaslr.ttf Unfortunately I can not re-distribute them, you need to hunt them down. The font file yudit.ttf comes with yudit. The original font was contributed to yudit by Peter Soos . ftp://ftp.osb.hu/pub/misc/fonts/local/latin-2/README.L2 ftp://ftp.osb.hu/pub/misc/fonts/local/l2ttf004.zip I moved this cp-1250 encoded font to Unicode encoding and merged with rovstd.ttf rovas glyphs according to the mapping in mytool/uni/ROVAS.TXT. The original rovstd.ttf tfont that is encoded in Hungarian Rovas Standard encoding. It was made by Hosszu Gabor . It can be downloaded from: http://nimrud.eet.bme.hu/rovas/betuk/letoltes.htm Please use rovas encdoder when using the original font. rovstd.ttf:rovas:LR or rovstd.ttf:rovas rovstdjb.ttf:rovas:RL Update 2002-05-30 ================= Added yudit.hex that contains part of unifont.hex and rovas.hex for old Hungarian. unifont.hex: http://people.debian.org/~dvdeug/ rovas.hex: http://www.yudit.org/download/fonts/ rovas.hex is under GPL and it is contributed to unifont. It was made by Gaspar Sinai Tokyo, 2002-05-30. Gaspar Sinai 2002-05-30 Archives -------- Unifont: Unifont is the GNU Unifont created by Roman Czyborra It is currently maintained by David Starner , please go to his site for updates. What I have here is version dvdeug-2 from http://dvdeug.dhis.org/unifont.html. From yudit-2.5.beta14 this file can be rendered directly. You just need to add it like a ttf font - specifying unifont.hex as fontname. Gaspar Sinai 2002-04-26 From hosszu@Nimrud.eet.bme.hu Thu Feb 28 08:48:14 2002 Delivered-To: yuditorg-gsinai@yudit.org Received: from mail.yudit.org [206.245.164.55] by localhost with POP3 (fetchmail-5.9.6) for gsinai@localhost (single-drop); Thu, 28 Feb 2002 08:48:14 +0900 (JST) Received: (qmail 10328 invoked from network); 27 Feb 2002 16:32:03 -0000 Received: from nimrud.eet.bme.hu (152.66.72.97) by mailserv2.iuinc.com with SMTP; 27 Feb 2002 16:32:03 -0000 Received: from localhost (hosszu@localhost) by Nimrud.eet.bme.hu (8.11.6/8.11.6) with ESMTP id g1RGW7a07656 for ; Wed, 27 Feb 2002 17:32:07 +0100 Date: Wed, 27 Feb 2002 17:32:07 +0100 (CET) From: Hosszu Gabor To: Gaspar Sinai Subject: =?ISO-8859-2?Q?Enged=E9ly?= In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-2 Content-Transfer-Encoding: 8BIT Status: RO X-Status: X-Keywords: Kedves Gspr! > helyrl. A Binris Windows s Linux verzikba szeretnm beletenni > a rovstd.ttf s a rovstdjb.ttf fontokat, az engedlyeddel. Ezt tekintsk gy, hogy ezzel megadtam. Csak egy rdekel, hogy a rovstd.ttf-beli rovs karakterek mind belekerljenek, s persze gy, ahogyan llnak. Szia Gbor Honlap: http://nimrud.eet.bme.hu/hosszu Update 2003-04-04 Date: Wed, 2 Apr 2003 10:15:02 +1000 (EST) From: Ross Summerfield To: gsinai@yudit.org Cc: Symbols Net Subject: Re: Yudit font and keyboard stuff for Blissymbolics Parts/Attachments: 1 Shown 66 lines Text (charset: ISO-8859-1) 2 136 KB Application 3 5.7 KB Application 4 OK 171 lines Text 5 OK 374 lines Text ---------------------------------------- [ The following text is in the "iso-8859-1" character set. ] [ Your display is set for the "utf-8" character set. ] [ Some characters may be displayed incorrectly. ] Hi Gaspar, Sorry about the delay in responding. Symbols.net, about the font licence. He has responded just over a week ago (he, like myself, has been extremely busy himself of recent) and appears to be happy with GPL. On 3 Mar, Gaspar Sinai wrote: > Hi Ross, >> I have been working on a Unicode font set for Blissymbolics based on the >> Blissymbolics62 font set from www.symbols.net. I have inserted the font >> set in the Private Use area at 0xE000 to 0xE098. You may be interested >> in the modified Yudit.ttf, kmap and my files, which I have attached. I have made some corrections to the font set after much experimentation. I am still going through the testing, mostly to verify that all symbols required are present (essentially I am typing in a translation dictionary). The updates are attached. > > I have a few questions about Blissymbolics62: > > o Can I rename the keymap to BlissSymbolics.kmap? Certainly, although I would prefer if we stuck to the spelling of the font author, Charles Bliss, which is Blissymbolics (i.e. loose the additional 's'). > o How is this font licensed? If it can be distributed under the GNU > license I would like to ask you to do some work for me: please > document the PUA assignment. If there is an existing standard, please > try to make a map file. As stated above, I believe George is happy for his stuff to be considered GPL and as for my amendments, they would naturally follow suit. > > Please refer to the exsisting ROVASIRAS.TXT document in > http://www.yudit.org/download/pua/ > to see what I mean. There is also a postscript document in the same > directory. Will do and have done. As for standard names, there is none, but I have done my best to try to be consistent with Charles Bliss' names for the various fragments, if I can find references to them. Please see attached. > > Then, I can copy over the glyphs to the latest yudit.ttf > (the internal font name has changed), or if you volunteer for that too, > please take the attached font to do that. > > Of course if the font is not GNU licensed, forget this. > > o If you have a gnu unifont version (size 16 bitmap font) I can include > that in yudit.hex too, as Yudit can render GNU Unifont directly. No, unfortunately. I have a fair bit of work in front of me before I can get there yet (including learning how to make one). I will get on to that after I update my web page (maybe in the next week or two). > > Thank you very much for the contribution! No problems. Thank you for all your efforts on your editor! ./fonts/yudit.ttf0000644000175000017500000024105011053727006014046 0ustar henrichhenrich`GDEF  A NGPOSDvLuB GSUBA\OS/2c hVcmap  P:cvt &glyf,headP6hheaV $$hmtx27loca:= JmaxpuH name*post-,ffqo_<ĽVĽV | $$@qf /HPfEd@ | |; vDvD99^ssIwVXZ|K@r9A99sUss>sVssUsMsasSsU99prpsZoVVfV9m9;Vs9cV9XV\0V V V)999'6sYsJsPsFsK9sBsssDssH?9$s!(9/WsJsQ=A3dff,kf@*VVVVV999c9c9cVsJsJsJsKsK99sDsDsDdNss!VsJVsJfPfPfPGsFVsKVsK9<sBsUsss9csDR<V\?V\?V\?09$0#ssV)()()(s.(.:sllSGGsIsIm%\X, .0BQG,(7m~y|{}~n8(/33+2+l6< # r V1D8K` 'J@%][]1 NN$Q=BU=AVN8J##%,@<9<:84&!-&!o?4<!K#<Y;B%L $7%ULl ;+%!!.6UPS&" 26 !)-9N'?> NA9;],  ! VA/ %k V]6P/K  g/E!!!/" 2 U!cc(Q H  K9mnju[UCUVM ~ 17:>DHU[eq~    " & 0 :!"")/15=  169=AGPX^nx    & 0 9!""/15:@"sonljha_]UO< &srptlkeh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abwx~ifnmgjqcvuyz{|}oD`xPtkrdpu{O+++??Vo& 0^ #t0M -AUkh - D P 6 p   9 d { ?K^'c}%F{7JHf ,[)WBK=J&}5|W % i!!\!!"B"# #m#$$h$%%5%%%%&&&@&h&&&&''O''(<())?))*U*+v, ,--:---.\.//[////00<0f000001-1T11111122G2|22233$3344-4T4^4h4r4|4455-5x566A6z667767778>889.999:R:o::::; ;;R;;<<5Z>?a?@@Z@AtB-CCDDEEEEF)FRFGGLGyGGH!HaHHHI"IZIIIJJLJJKTKM^MNN#NYNNOPP5PTPPPPQQ1QSQRRS STTU'VRVVVW'WeXXEXXY@YYZZZ[[#[\9]](]N]c]u]]]^O^^`[aa9aaaabhccccd&de2ezefOfhhij@jjjjjkk4kCk\kvkkkkllmmmmn$n?nTnhnnnoZo~oppoqqq\q~qqqqqrr>rhrrs% NNrbv0w)-I^47632#"'&=%";276=4'&3 47632#"'&=%"32?6=4'&wON[ZYY9A----@C---.A"ONZ[\.78EYY:B--.-AC--.-Znnccdc9::8:9:;s nmcce2dc9:;:98:;X',HZ%#"'&5467&'&'=463267&676=4'&#" 32?36Xkjxkd!ϝ`_,0Reylu"#/0GHb M43FGRTVb22|TsGA?\\|єUw(|[EE44:J00^?#&%'5VKHHY_`13Z'53.0|Q`&'&=476?3ߕggM[v*<$ +Q^^]\[ KQ/#=4/=&'&'5&'3́** *w\MggQKHGEa@c'73'&=373673&''673&'#@.F m=@.y:qx7RI9vt1k8)C-181(3UKKU.r: %!5!3!!qqqn353'67676='(X2:pFE'M2!"*Ajm5!A)35393XU:467676;2#"'&3276='&'#"U6jiuZX9:"!54jkyTT}zUVTU}{K]ӁOWV0/XYXWxyywajwvi !#567673?jkTpq0t{ Ged`>8%!476767676767=4&#"'676 17 $SRUT{PO|}"$TU-, &"daa{snfkNNllTTT``102VB7326=4&#"#726754'&+"'67632#"'&VKKj~}6HrCCih!uvxee56fdIHDD}{x|bAB ed43YYa].^^rs !!533#ƴ5_JkU!&73276=4&#"'!!632#"'&UMLl[ZW+Ot~FEbbN?v\ƒopM9V&/&#"67632#"'&=76323276=4'&+"+HlUBS2 A]^h~;;ihno7''FGNrRRQRyzSi0M0=w:WXdc00wv@?w`a\US.-]\YXa5!#476767aM D@zzlThaS/D_.=4632#"'&=4673276=4'&"32?6=4&#"jnntu45mFG؆#BClhCBDEED:$$GISTS}UT(fpodLK)+bc$1gCBBB]bDDBBWZKIH('QS{UT{U3I732?67676='#"5432#"'&4'&#";26p??`S>>''5^_lGAB;w>==mll$T67'M禦XW__5Z[`b&5353Y&5353'67676='(X2:YpFE'M2!"*p;5 pr:!5!!5!:88^p; 5 5;5a?3253  aZQRwqLMցZW6i6iN&WP324hPOFHuu`tNH1*++oQ%#".=47>32739;2?676=4/&'&#"3 76?3##"'&'&'&547?6!;2#"'&'&3267676=4'&'&#"APQQXjRQrVMM;"5UrCBTUkkkjX3Wde{ݼCTdy>qa̶D*+ AAT7|:9#$$Bb>:954!K.-fz--\a<PXXlmWX~iA 99sr efɮ(NLKBCCedeF32(K! HGh3.++Y#3#!!&'3XݫA'3FDZ3E3!2#!27367676=4/&'&#!!273>76=4'&'&#!&gfr13hHH*+@@aa=6J% ""BAm_$BZ**LL,-c\RS5']^gVX01R4! !H77 677DP=<fv7#"'&/&=47676;2&/&+"32736<앓NNWW,<3`asq/.lrsqq1``䪫YY-JJQQFE]^Z+3!2#%!2767>=4'&'&#!Z|Zs::N<=IHii9TS1DNLKlNLaTU001D{{, 3!!!!!$+?  3!!!!P:fm>5%#"$/&=4756$32&/&'&#"3267Lm[[YZP۟IH'!00[[pa`=9#8CC~>?q::ֹ34\[0mAA&'((C@QÅ@@`8 33!3#!ZFM33F;a,7;26767=6=3#"'&'&=;8`Hj ,,a167Di2R:9!>B:+,=ed6 o6TSjR 33! !)*33!3!67!##$[F7_VXLF5  333#Fc/76!2#"'&'&73276=4'&'&#"c7DVWϢUUێ==[%#"'&=4?567676767367374'&#"+'>7632#&#327676=?'( /l/=,,rp'& 2/J-xA@<8''*H`--P=r1!#3632#"'3276=4'&'&#"-rbWW98 !l4UuVW+QvuVW('GFegq𕖝UfgiKL3cggP>+#"/&=47632&'&#"326<مruunn@@ZVURRjύA@XWj76baabF2!5#"'.=47>;233276=4&#"8ejjv45ԃbII1 UVutTS{yFE('CFee`aK>!1#"767632!32?6!&'&+"^+wxFYXoՇ-YbEFQ 8V{V+2V[Z  J%%0TCA2]33BhS+p>3#535476?632/"3#ACuK]55Q"#ql3C,-$#[bfBQ>2L;27676=#"'&=476763253#".'&=3276=4'&#"f 3Cs}DC vwx67jjz22nm_vQS}{UTVWzyTSXQ%221[4GFjgh<=*V??U``_`ccaa(336323#4&+"~uWW%&tgOGE..RS_z))FHx<533&Q:5373276=3#"h"863AJ{%$\Nd 333 #jvdz[733F&>>336?632632#4'&'#&#"#4'5&#"1RTju!~ʞ-.>nKJ,,dK?@&L00`Z'k0.IKx;<''NN>3367;2#4&'&#"#vaPO)&*65HqTT&""96OEjsln!!HID'>*7632#"=73276=4'&#"DzwvXYYZZY&vABeefgffi!>:3>32#"'&/3276=4'&'#"9hgh65::pp{\FE/QSvxVUSTsriQQFEGF&&9bbfffdHi>*#"=47676325332?6=4'&#",)U87iir!xqSTXWvuRQi9P.ABCaakkdc>33>32&#"=j?Z_>BB8//&oJ:'!#?`r?>S7;276754'&/&'&'&=4767676;2.#"+#"&?DEx|<;5#E%J()! 8)JIO|-- thx530NJXhed{=j9:23C=#&.$AAIG<<)H;=iP^))5".2"~VZ,,$*"%#"'&/&=#5373#;7P8a65&!34clL* &'!5#"'&/&'&=33276?6=3?{\RQ(( 87QRFE$$55Q7l-F)))*FG9& !3673l+*n&TXr&!37373#'K?75=)&nf|&3 3?3 #'JQ:(wu JY]!Q&'327676?37673#"'>)>"#'m(%!lB#0>>V3@g%l,(x~y8AkȲ?Y*)(&35#!5!?!(kDOdoXw^{9Q|R2767676=4767>73?3#"1;#"'#&'&'&=4'&'&'&' K01H82J8h"" V^n21!!\8a,>*+  2'd('G#=>KEE43:&%xBlr.-__2234RSZ?>"E( QY3Q~/Qr^"1+53276=47>7&'&= 4'5.+532;33rK12 #$9'U8h"" `Yr/0B_8^,?*+  1&d)(F">=J6U22 &%yEp'6[[.$ 'B644P*RZ?>"D(  W-Vu563232767#'&'+&/&#"Wi<{<+##?GF6?R;6uwO@n-x"4 (':<6456.#"&=47624'&"326=pPOp87pF#$f$##$3.LPppKO88pJ.&&#$.1$$H-J!%='76 7' ''7&=46276756=4&"ՋsiitGFtjjsG"L&֘wHHwnx~mwIIwny@rlL&,-3kfF#3#3SSSSQQd7326=4'&%&'&'&'5&=467&'&=4632&'&#"3#"'&6767=4/&'&'=>igr$<99' xiGȥii44Z\p$7=C##I*oL((/2npo1H&$34DQ#"--^F55hD2,J[32H!$$$` D9:<YXy01b<3-B]0;?AEqP-/;DHJVMNT__%30.:=>kT6-/.3@87`PC=n53353=Ajm5!A)-4632#"&=7276=4&"srQRsqm2212b21qnrRRoF2112AEd12AN%!5!!5!3!!!NP QRR^?h(!567674=4'&#"#676323267?=R1*)?:))-@?eiCA0KܺT<0yEC<**?b78::FBKu , hG+"'&'=4632326=4/&'&+5276=4'&#"'67632 UVO*!n'2V,=.O43!"6T?&$-@U\53iG%%gJJ0N1(*,//:*&XJ"/.-6>]2345n #5"inYFL####"&'.47>3!HI_.^d+9œ11*F`ck[ 73#"'72736754/&/4!SXHIQ? ^]&  *k V/K:9 u  h0!5;27>==4'=9&'&'#"'73; (  +# 5 9v % W. @ #3#3}999v::*(*h 58%##5!533# !5;27676==4'1&'&''733luxTlZZ( * &#$8!I7b0  3v * W/ (<h)-T%!56?6754'&#"#676;232767# !5;27676==4'1&'&''733=R1)*?:))-?@aiCA0Lۻ[YY@ * &#$8qyID<**?a88::F=Qt "b0  3v * W/ *h UX%##5!533# +"'&'=4632326=4'.+5276=4'&#"'67632ltxTl]ZbUVO*!n'2V8Z1 O43!"6T?&$-@U\53iG%%I7bgJJ0N1I///:*&XJ"/.-6>]234[<Y,#3#!!&'33XݫA'3FDZ Y,#3#!!&'#3#3XݫA'3dqFDZY#3#!!&'533533XݫA'3ʼFDZ , 3!!!!!3$+J?  3!!!!!53353$+? ,333FY, 33#3#bqFc,/376!2#"'&'&73276=4'&'&#"3c7DVWϢUUێ=7632#&#327676=3?'( /l/=,,rp'& 2/J-xA@<8''*H`--P=rJ=[b%#"'&=4?567676767367374'&#"+'>7632#&#327676=#3#?'( /l/=,,rp'& 2/J-xA@<8''*H`--P=rJ=[_c%#"'&=4?567676767367374'&#"+'>7632#&#327676=53353?'( /l/=,,rp'& 2/J-xA@<8''*H`--P=r#K!15#"767632!32?6!&'&+"3^+wxFYXoՇ-YbEFQ 8V{V+2…V[Z  J%%0TCA2]33BhS+p>0K!159#"767632!32?6!&'&+"53353^+wxFYXoՇ-YbEFQ 8V{V+2 V[Z  J%%0TCA2]33BhS+p>|.333ƴ&^ 33#3#ƴVq&TD'*.7632#"=73276=4'&#"3DzwvXYYZZYՅ&vABeefgffD'*17632#"=73276=4'&#"#3#DzwvXYYZZY;q&vABeefgff@D'*.27632#"=73276=4'&#"53353DzwvXYYZZY &vABeefgffN?g 53!5!53~8'+!5#"'&/&'&=33276?6=33?{\RQ(( 87QRFEܜ$$55Q7l-F)))*FG9'+/!5#"'&/&'&=33276?6=353353?{\RQ(( 87QRFE9$$55Q7l-F)))*FG9!Q!'327676?37673#"'3>)>"#'m(%!lB#0>>V3@$g%l,(x~y8AkȲ?Y*)CY#3#!!&'3"'&'33263XݫA'3{LMML{)*FQRFDZ}CCBBD!"@J=[k%#"'&=4?567676767367374'&#"+'>7632#&#327676=3"'&'3326?'( /l/=,,rp'& 2/J-xA@<8''*H`--P=r}CCBBD"!@` +#3#!!&'332?#"&=47=3XݫA'3:|'R>MZ0@?,cx)FDZVIDT-wxcXJo>=[u%#"'&=4?567676767367374'&#"+'>7632#&#327676=332?#"&=475MZ0@?,cx)S#$VUM>?'( /l/=,,rp'& 2/J-xA@<8''*H`--P=r^XKC**-wxcXfv,7;#"'&/&=47676;2&/&+"327363<앓NNWW,<3`asq/.lrsqq 1``䪫YY-JJQQFE]^P+/#"/&=47632&'&#"3263<مruunn@@ZVURRjύA@XWj76baabfv&7>#"'&/&=47676;2&/&+"3273673#3<앓NNWW,<3`asq/.lrsqqn1``䪫YY-JJQQFE]^4P+2#"/&=47632&'&#"32673#3<مruunn@@ZVURRjnύA@XWj76baabf[v7X#"'&/&=47676;2&/&+"3273673#"'72736754/&/<앓NNWW,<3`asq/.lrsqq4!SXHIQ? ^]&  *1``䪫YY-JJQQFE]^k V/K:9 u  Po>+L#"/&=47632&'&#"32673#"'72736754/&/<مruunn@@ZVURRjr4!SXIHQ? ^]&  *ύA@XWj76baab|k V/K:9 u  Z&+23!2#%!2767>=4'&'&#!73#3Z|Zs::N<=IHii9TS1DNLKlNnLaTU001D{{,oG0E53'67676=5#"'.=476?6;233276=4&#"6$$M-3 ejjv54ijbII1 UVutST{yc?>#D+"#FEFF('CFee`aZ<3#53!2#%!2767676=4'&/&'&#!!!\|Zs::GGăI9RQ2F'&&'<=MLlLaޢ"0Fsthg==Fp!:!5!533##5#"'.=47>;23276=4&#",Zejjv45ԃbII1UVutTS{yÄss=FE('Cfee`aV )3!!!!!%332?##"&=475$+p|'()>MZ0>@,cx)? UIC**-wxcXKV>!1N#"767632!32?6!&'&+"332?#"&=475^+wxFYXoՇ-YbEFQ 8V{V+2|'()>MZ0@?,cx)V[Z  J%%0TCA2]33BhS+p>UIC**-wxcX& 3!!!!!73#3$+n? |K!18#"767632!32?6!&'&+"73#3^+wxFYXoՇ-YbEFQ 8V{V+28nV[Z  J%%0TCA2]33BhS+p>z&33ƴ&8#"&=47624/5&"326=pPOp87pF!$f$##$30JPppIO88pH.$%#$,1$$H+<oi#37oiK*, 33!3B333F*53'6767=6=3!NY29hq'M1"*T53'67676=3$$M-3 c?>#D+"!!F+ 573!!Lf5{|ҭ 5737#>nnss), 333#3F#3367;2#4&'&#"#3vaPO)&*65HqTT&""96OEjsln!!HI, 333#73#3nF&3367;2#4&'&#"#73#3vaPO)&*65HqTTn&""96OEjsln!!HIc,/3776!2#"'&'&73276=4'&'&#"333c7DVWϢUUێ=7O`%#"=476763236?632!3267#"'&3276=4&#"%!4&'&#"Jdey::xxef4?cf{.Zc!*wviiG\]\WHI&'-K0,NwyS-b32CB:9X[77S@A3`npYY45Ļ`~jj01`aqaIp,NR,4;A,&7;3!23##&'&/&/#!2676=4/&+!73ff==edN'QOV54/*.,@''KL0('edsjk%$Lvq1CB u36=32&#"3=j?Z_>BB8//G&oJ:'!#?`r&&7>3!23##&'&/&/#!2676=4/&+!73#3ff==edN'QOV54/*.,@''KL0&n('edsjk%$Lvq1CB u36=32&#"73#3=j?Z_>BB8//Bn&oJ:'!#?`r\,ae73;276?654'&'&'&'&'&=467632&'&#"#"'&'&'5&=3\ 00c268?nUT**(']3Pi34~yy}|C"VW88Y=BB~džN'mFG, !!89EF23$22+6RQao2344g497;GH[L44j);[,45:ugf:;9:u=@AE>?SW7;276754'&/&'&'&=4767676;2.#"+#"&3?DEx|<;5#E%J()! 8)JIO|-- thx530NJXhed{-=j9:23C=#&.$AAIG<<)H;=iP^))5".2"~VZ,,\ea73;276?654'&'&'&'&'&=467632&'&#"#"'&'&'5&=73#"'72736754/&/\ 00c268?nUT**(']3Pi34~yy}|C"VW88Y=BB~džN'4!SXIHQ? ^]&  *mFG, !!89EF23$22+6RQao2344g497;GH[L44j);[,45:ugf:;9:u=@AEk V/K:9 u  ?o>Ss7;276754'&/&'&'&=4767676;2.#"+#"&73#"'72736754/&/?DEx|<;5#E%J()! 8)JIO|-- thx530NJXhed{4!SXIHQ? ^]&  *=j9:23C=#&.$AAIG<<)H;=iP^))5".2"~VZ,,k V/K:9 u  \&ah73;276?654'&'&'&'&'&=467632&'&#"#"'&'&'5&=73#3\ 00c268?nUT**(']3Pi34~yy}|C"VW88Y=BB~džN'3nmFG, !!89EF23$22+6RQao2344g497;GH[L44j);[,45:ugf:;9:u=@AE?SZ7;276754'&/&'&'&=4767676;2.#"+#"&73#3?DEx|<;5#E%J()! 8)JIO|-- thx530NJXhed{n=j9:23C=#&.$AAIG<<)H;=iP^))5".2"~VZ,,0!!5!!53'67676=ͧ2<  ʹIL3$*"1%#"'&/&=#5373#;753'676=P8a65&!Ϲ$%M,134clL* 4E>="E''90&!!5!!73#3_n |#653'67676=#"'&'&=#5373#;7E$$M-3 P8a66&!c?>#D+"!!44clL* "*C\3#"'&/&'&=332?6=4632#"'&'5&=3326=4'&#"`21ς9#$XW{\\lHI56jIK5 L +*@-+ ߀RSGFD[ZrOYZ11`acIj65IMj5 %/ @(-  ''>W!5#"'&/&'&=33276?6=34632#"'&'5&=3326=4'&#"?{\RQ(( 87QRFElHI56jIK5 L +*@-+ $$55Q7l-F)))*FG9:Ij56KMj5 %/ @(- '",*.23#"'&/&'&=332?6=333`21ς9#$XW{\\qy߀RSGFD[ZrOYZ11`a'+/!5#"'&/&'&=33276?6=3333?{\RQ(( 87QRFEyϜ$$55Q7l-F)))*FG9F !36?353353;!LIC\mMFvt), 3567!5!!3)TDY)ܴiEg(35#!5!?!3(kDOdoXܒw^{) 3567!5!!53)TDYeߴiEg(35#!5!?!53(kDOdoXߒw^{)& 3567!5!!73#3)TDYnδiEg|(35#!5!?!73#3(kDOdoXKnΒw^{.Q=%732767#7376767632&#"3##"&.#W)6::]R#f486̿zq0lkax-=#$&6jgr #3#XqT(73#3gn.}3"'&'3326{LMML{)*FQR}CCBBD"!@53 04632#"'&'5&=3326=4'5&#"lHI56jIK5 L +*@-+ :Ij56KMj5 %/ @(,  'Vm7332?##"&=4|'()>MZ0>@,cxUIC**-wxcX 4763232?6753#"/&"99Y=l;#6T@dB@g>?639+*96$-:333:yo[5!sʑ[5!ʑQ#54767A *[,6ѥ[\Z[cd76-=>/.>\H, # 3# ;9HD 3 #0Е@0!5!!!33##e|{yyJ/uTJ7o#"/&=47632o! . ! .-!!($# "&. !! +7979797979^/M432 #&'5;#!"'54732;:;; 2#FEFE2FE3-V'E87321479?KVbGDTGE3]'K?:411369>KUbHCZDFFE.042#&'="'54;; 2#SGC"FGaUI@o33146:>KWbEBGE:5efo:PHAEGDG0."'54;; 2#wFGaUI@o33146:>KWbEB.EGDGB/%/&/&6/76'&71122{KWbEBijikg%EGDGijhkXfkij(5"'54;:; 2#"'54;; 2#wFGaV'E87321479?JVbEDFGaUI@o33146:>KWbEBEFDGEGDGN 5 HXt||tp6 #%''&76'&'&76'&?761,31002350 %23/150/.22//x00//1412a33 &*120133121131K0476?632#"'&57326=4'&#"&!MGtQB>*%''HLqRg;8[Xx<<63X^48 ]UYV9?y%xx2$ED;bTQHK4478_ OMSUvA8?89Z**"MG@.1KJ12UR|RH@/%#+A\15ciX] (l00==\V:9 p+(YF../0\}IG%!BBBE5:@F`^[OJK 35!533#A>ht`tj,7,3276=4'&#"'!!6;2#"/&' 84O[A>?,zA^ah{MJy&,C&'&#"676;2#"'&=76323276=4'&+"7IB)>#"&JAG\Z++HJ_ddo\{MO537L?::;SY;< I$7"+UWA'"^]bSU*,rt -wEGwA:D<@EjgC==Aa25!#4756767aed0) /1UTdzcijp|('<R&'&547632#"'&=47673276=4'&#"32?6=4'&#"M('RRTR$'KW71]d__43E2/KD4/05EJ-2(31;UA;=<]\8<<74MoONONpH64 CH[XXX[dDDK.//*EF00//?#83698[\<<;;{$5F3276?676='='#"'&5476;2+"'&'4'&#"32765,,F:-&"'@FIUZ]YbWQ.,,.RWpwPP :;PWUV:9X%&0-LMM >$&]Zaa66edrx9=CA{o?@EEoe<>>:qHW #567673-KH?hSN"SH)*-,{0JHB}E*T1!476?6?67654/&#"'67632*S5.x><63Z^48 ]UYV9?y%x2$AB;aTQHK4478_ OMSUvA8?89Z,,"MG@.1KI12UR|SH@/%#+A\15ciX] ul00>=\V:9p+(YF...0\}IG%!BBBE5:@F`^[PJHKR 5!533#A>hHt`tj,m* &&6'776/&??6/&3d212311/13)2312102g2d24134`1/43')33 /.1238 '  P\px xxpp(%2#"54ijiihhk/ 2#"'54jkhijhk3  2#"'54ijiijhk3 2#"'54ijiijhk+ +2#"'=4432 #&'=ijg#FDFCijfkHDbV)">96413468E'V`HAO3z @2#"'&=4767"'5476?6?6754/&#"'#&'547632pq.#!!"v" $(!ENyGUEExxƷtwX"3pr "//!"IBZ^$6).zOKUcOJ 8w|QDNH28#'676=4'&#"#"'&=476323\/2 ,!".8/.@>& >?D ))!36LWQN- 2#"'542"'54$ijikgijhkXfkij%&76#?3'&'33E1400 %/?(q225/13F2123'/@(p2311&76?51'&5/ 44E3200*.@@. 113/C14F3223 +/??/ 311. )&76?/5'44E2300(p?/  )p115/d14F2123(q@.  )p3121* /#'&74?6 V=+&R&)0)!(-**(?/(;O); ,' ,- #)"( k  =%/&/&76/&?6WY"&,Lh'&=4?6;+"'+'&76?'/&/2+"'5432+'*+*+"'543!2+'+ "'543T '),- 11E1211(p@.,(p112/F7EFFGaUJ?o32478E'WaDEVFGaVJ?o413468@KW`EF?   14F1/41)pA.+ )p312/E?DGEGDGEGDG $H!"'5&3!'&/&76'&?17!2#!/&'&76?6VFHl$ &p4410G224144k"&'!lFHUk#& #m114011F2301m '&}FFl# 'p320.324414l!'%!&FGm$' $k4124G13G2223m %'}" 6D]x'&+32?6=4/&'&&?76"7547;2#"754;; 2#!"75432;; 2# .+*&  //44 H') 2d3E3oG7FEGF`VJ@n43146:>KVbGEGF3-VJ?o421479?KUbFE ! G/)41J%* 3d3F3GE>DGEGFGEGDG *S&'&'/&76'&??67!"743/&/&76'&?7!"763J"   3323F114033?,"& "JVHF@,# &#,?4414F1-4144k"&UHEH$   2323314323?-!& $HHG)>-# &#-@1423015414l!&HGrQ -'&?>7567/'&'&767335022n @.  6612224422o @.  2210a&'&?6##?&3/&76F554122n-  .@ 222.224422o+  /@ 32/+ E'&'&?6'&?17!"763'&/&6'&767?!"'5673m$& 4233G113323k"' THE +m$ '3d3G332323  !mUHFl#' 2133222223k"( GGk$ &3d3412223  !mEFT!:eq%'&76/#?#76#&/&=?6432 #&'5#"'=4324#"'5|231023K$&"  2220    '"GFGEGEG>GFGE44E2311H'$! 1130j#%11  !&!GE.-)&#"o   $'*,11GB;64GID"T !%%64W%Akw ?#6?6?#/76'&=4?6763;/#"'=7=4= 43=432#"'&'5<=7=4=4=432!2312   "".A23/05D    !&"GFGDGEG?HFGE=2310  " 0?2224D4"%/3   '"yFD2/+*&$ o "$')-/3G?64FAJE! T  "#'64,0 'Lu/&'&?6?6%2#%"'543'1/&76'&?1?"'=7?'&76'&''47276?6'&76'1/& '!m103220F1222m & kGH0~GH &#k5424G224234k! 'pGCm$  2312F32F3232' #FGl#' !n..11403313l"'&) &"k4123G11G1014l!& kEGEG &$l3200223223k" &p~HCm$  3214G333223( $FHl$& !k.&1400G5012k"&'UB $Fm!"'5&3!'&/&76'&761%/&'&761?6!2#?1?6/&76/&42?'&76/&/#"'5}DHm$  #k4333G114234  k#'&#n112333G2221& FEk!&&p2f32132/0l# 'nGGn  3134G12G1132m#& !kGF+DGl#  #n1233224323  m$&'#l2323F22G3321' EFk"&'p2d310G32/*m# &kHG(n  4223H102313k#& !nGE1! (5Q`|327=4#"27=4#""'5632#"'56;:; 2#;2+&'5"'56;:; 2#%#"'56;42#&'=\G@GEFFGEFFEFFF`V'E87331469?KVbEFGEE 9FF`V'E87321479?JVbFE9 FF{GCG<GEGFaVJ?8742145:>LVbGEIEGEEGEGcCGAGEGEGAEGGEbVL>:5412478?JVaHAD [ 6!'!"5DP MRQw QNSQZ 15H5#;!+53!2+"+"+"'5473!%!2#!"'54?6GGluIJBEgDE)7*F76/#/&76'&?6:$>  u#?@#5:>DHGIIKHHFD>:3$C?%#>;4:>DHGIKIJHGC@:7@="tE#   OC!Cit}}ukDD|F Bjt}tkA"#DJ'/&76/&/R<0 !&*!=?  00 3332/)n+ )oI&) +n2232'ZK66'&1&'?'&703G2d24144112d2 2231>6/&//?/&7z03G2141A. %r@/)2022&332300A. &r?/* /.31I,T'&76/&/'&?6/ ,&#00&*!>?  0/ <A,&<-0!&)Q!4("&*!>> 0/ ?B,&<0-0 'WMG1a.*,,a8$LV@ A'*&@"@VMy.3-+Xa6CM,B7fS+--38BLU;!;'*'!7  & \N@28'X#5`zLW?!=**(<"=s/$:'++- "M$Jn%'&761/7#?6035423)n )p141/22F2222*n)o333/'&76/57?6w214422I&*)n )o321122F1412I&) )o )o33319 '&761/1?#?6033322)no) )o331/33F1322*nn**o113/ f"+?6'"'&?6 %2#"74*( -/, %(#+ [\^ |V=R&;Y) (-+)*@X;$&);kZ\\\\ ](6?6?6'"'&?6 -.,  *&$  s1&='*&"X) &-,+(<;;$&);Z ]!+? 6#'&?6%2#"'54*( -!T +,+ [\[ sV;O"XCV-7'  *Y;,&&, jZ\Z\ k'&76'&#,1-,36 4(&-Ŋ-$%s%'&76='&7601134413.0333211\'&765'&76F!$+ے+$!Fn*9;#?<,176'&51C$")ޏ)!$CiNK+:<#!;9)96@6'&y.3.022024300WS  s'&'5&76%26)1.) 2%%.ƌ/')3F$16&7?675&/&?6'&/&6KLJKLHD!"22l1212c22dKLKKKJD"! 21k2221$ 12d@#"'= =<=432FEGDHD[F/  1G\HD@D%2#"'&=476"3276=4'&cddccbbcR9998SP9::9cdbcccfc9;OQ9::8PP:9M'"'&32+"'5&71; =DL͜YZZZEF'%UGGZ[ϚYXDE%&%$M=% 5!"'&7132!#/&'&767676?6G@fEI͝YZk*,2/41G2323%&##$&#GEWX-''0211E F3223&%#$N='!# '=47=676; 676/&76'1/&efGDYY4OM"'1400113214  ?fCD4YYm$,4333/-G4223  P%:LY32?6757'&/&/+??6'&+&'&'=76?6;#"74;;2#6'&7w     12222 ZP<;HFngepFE432233011v  0/232 :<FGDF33233322<$ EP^  676/73 7?6'&&/476?6;'#"?2';54'+"/=?&76';27;=4?;27;?6?54'3754'&'&/#97'+1=4732+'"'=454+"'56;'"'=454+"'=6;%!";)23256#;2754#!";)23275421.222212213}      c "$ 98ZT (0/121231##55jXS  5"B#jGEFG9FFFGEFE$"EE7EH&%zgGHF:FGFE&%zgF*14/222233141  cH982 12311413474XTk      $$$$>" >GD%%zgHE?EFGGD%%zgHAHAG<FGGGG$#?EFFFEFB$+>Na1#&'5432432 #&'5"'5432"'5"32=4'2#"=4?6FFGEGDFFGE0gnGDGEHDoegnGDHFMGEpeeo:PHF`6 /&7H54E|sjH11AF14E}sjA.3FU6'&73211?<|22003241?<{//30=&$2#"'&=476"3276=4'&߲ÅA$2#"'&=476"3276=4'&ÅU+R42'#"'=63'#"'5/&763/&/lEE00EEF0 !&*!=@! 20 =B-&0,-0 GEbUL>:533378E'V`HE '& HEa-++-B8BLU: =')'FF`V'E87331469?KVbED0/FEE,&<0 '*!>?  00 =?0-0&HBbUK?7412469E'UaIE04 14 DECE(& IEVMya-++--38BLU;";'*'LVbEFCEDkt~ulFEF>?xCFDEJ432#&'5JFEFEnGEaVK?:411478E'V`EB#'2+"+"+"'5473CGGmtIJBE"+ &A"7547;2#"754;; 2#!"75432;; 2#G7FEGF`VJ@n43146:>KVbGEGF3-VJ?o421479?KUbFE+E>DGEGFGEGDG$]2+"+"+"7543BGFmtIJBKWbEFCGEE?"74;2#HFoeepFEFFDF<"'54;:; 2#FGaV'E87321479?JVbEDEFDG9A"'54;2;2#FGP:nffoEDAEGEG<X"'567;:; 2#FDaU'E8742145:>LVbEFXDEDF:'-9632 '&=47?67/7/&'676'&?6 7|6B7-c {6+:zN]\J)%1Ay4H60O^y6(GEngeoHF$$= EGHFoegnGEEG>$#EGGG֋<0 ;FEGDGW\ J:);O^L ]'KI=)=ug%KG223( 0&7676'&76 '6'&?v32 ('12 13211|{11501212{11.-j32 $41 132/.{|41231041z3312&$AVr'!"1;2;2;24+2442#&'57#1#&/&=473432#&5?EFkuKVbGEHEFFHF3-VJ?o421479?KUbFEGErG><BCaV'E873146?KUbGE>DGEGFGGGEGGDGGGEbUK?641378E'VaEA !9DRk %#"'=454=4=4"75432;; 2#!"754;!"7547;2#"754;; 2#!+'&'&'5'76?6;#"7547;2 ?6'&?675/&/#"##&/&?;2#"=454=4=4327=&'+GEFEFGF3-VJ?o421479?KUbFEGFG7FEGF`VJ@n43146:>KVbGE .+)(<G7F2203{{2121  H 22F*FGGEG??GECk8=DGEGFG  ;E>DG2233{z1410 **,,  22DEEk8=$$e%&'&?63!3$76!$|11/.XV03!..1033""4K&'&76%3 76%$q1100[Y 0/=11305/;y! &'&76% 76%$y11//ZY0332m33141132!%4736#"'&'&'&=476 5EFZYљXYFF$%4%$rBG͜YXXYDEe%$K +@Ocl3274'&+27=454#""'54392#"'54;2;232;2#;2+&'5"'54;23;2;2#%#"'54;#"'=45454732FE8FFGFEFFGEFP:ofe5:9QHEF"%A 74FGP:nffo9QGFFFG##GEBFGG* ?FEngepPgHEGEGEGGGc<0 ;FEGFGEGFDz%%zgFE#*)#"'5!"'54324?6767632# GFeDEɉSQQNGFcrHFHEGW^vbb|XWGGi< (2#"'&=476"3276=4'&ı…XR&'&767676'&?676'&'&+220}zkh <R'&7'&76?676'&7?676'&"327654'&'2+"'&=476|+2.#<> +231vyii <=j*22+RUVTU~97(eggNHAW1+%6(1+)>yvx,%&=vwxxA?;$KF;2C%#"/&="'=454=4=4&?6'  uGE2100 {1200G(*+,v ECk8=LVbEFFFEE+EG?EGDGqHDbUK?7412469E'UaHE%"6W;2#!"'5673:;554;21 ! =%2 '&'&'&=4767676.!1Z@AJJ6B .DDGd#$%#eϚYZZY&ЙYYYXCGEFKEgd#$%#Z[XYYYϛ\ZK *;%/&'&=?6;#"747;2;2+%'&?76 &970IEP:oeepFA$>?#op!?>$ _& GFEE/F E%)B##E I | $!7 L3 {zb# $!7 3K 1z6F1C^x'"'&'5'47;#"747;:;2#76/# &?6%#/&&'&=?76;'&?6"74732;:; 2#,  D #= HDaUK@8631479?JVbFC:$>  u%>C$3:>DFHHKIIGHD>:5#??  #0#>< 4:>DHGIKIJHGC@:7@="HD3-V'E87321479?KUbFC E!A!FEDEtE#   OGCDku}}tiB!& ^F Cjt}tkA"#DFEDE%+#!"'543 =42!2# '&'&+~xqEF&%$%GGp{ab YDG$%GEfEFcee3I =432##"'564=4#"62#"'&'&'&=432#574=4#"#74324#"+"+"+'<5432%2+"+"+"+"+*+"'563j#$GHZYEG> BAGGКWZHF$ G> GH  HFGG67;?@C"#HGGHJIII&%IIHIHGFF" A>:74CA_$#EEњZ[EHD3 ZYDBeD3  53$5ÚBFHۑFGFFGDF(DF&G97&((U=#$=G$#>=GCFDGGGnffoHDIKGD&%hL@>%6%#&'=4=4=473GEBEHFBk8=~JIulFA~E,X7"=4=4=4==4=<=432#'=<=<=4==432tFD FCEFHH/,$!    '+2GCIG-&   '+1HHU42#&'=UGCGE:5egn:PHAP #&'54=4=454==432GDGF\Us3'=# ">Yv[YS+42#"'5SGEHFgPoffoGE& *;Yx;24+7#"=454=4=46=#"1;23%!"1;2;2;244'&127KGGFFGGEr9FEFKEFku>EEk8=GDEQ:, <$DBk8=~JI0LZx;27=4'&+#"=454=4=4'!";2;2;274#;24#!"1;2;2;24A!4FGGEGDGkuDE "'5432'&?6?6iji4123}GGE.F E$%B##E  0%#'&?;2;&?76"'56;2;2#$?# :0#~#op ??$EDn51epGF.% F_E>F&$A"#EEFFG!1'&767;#'/&76"'54;;2#u22 EZ22322222FGoffoFE/32 FN31//3211vDGDF( (6FW7"'&/&=42#&'5?6'&'& &76?66'&756?    uGE1122p2222 2@231131P v GEoffnFC1432T(22321[2141//,$P7#"#)*#"'&7676%2#"'547#"'=476?6754'&#"'&'547632 *gzf.+HY`G\][:8J,j:>cm8F99ab\`Ie'';>,-Z][\92HN@P*ajiA  VE   Mt&>D%3!###$$$$%&$&$$$#$$Do"@@  #p0$;:66H:$?   t%>B#3 !#"$$$$$%&%$$%#$$$D:5"@?  "q0&:;3:!D#$$$$$$&&%%$HHC@<4@?$    r D  #3>GH\ :&!&)8Og9ECE!tE#   =GDDk8=>@CDGGGHIIJIKIIHHGGG@=C %   \F!Bj8<=@BFFHGHHIIKHIDC@>;9kA"#D ,&   DEEF tE# = OGCCk9;?@CDGHHGIHJIKIIHHHGF@=tiF ' ^H!Gjs>@FHGHIHIKIKHI~zeA"#E   #;(EF"!CFM%!'&/&763!6&))& 0<-,#! %) '  7H^t/&76 &736?6'%+'&/&'=756?636/&76?%#;76767=75'&/&#!";!23)2327540011)320010&;; 14112.;=    FE%%zgG2341<(113203;;  2141.* <<  DFEF2Da|4?6?5432#&'=;2#&'5"'54;:;2#%+";36? ?6?6'&( =GEFF@3FFGaUJ@874135:>KVbFC()-- <0011|^"3676763#"/&'&'&75633276?&'&#"P-NGQR?B<//;FOBGLJ8ybaY[[Zz--*!<:!"#;01;),<9(';"#)R! ]YB>y %$31  [= u7 ! ' *))8M~ : 5$% aJ :.< AG %$##AWV 0/Gk '9) %$31  [=;h%$#+;WV 2/hk '$ #3 !#3㋋u30? #3 P[E#TO_ # # 3 {}>?8<EG4#'##4kI !##33I͋3;{ %#%53JDeQghDfLw/?'&'5&'=?6756?/74&/'?6756=R1A!/ -oa3Ww<1HO7*.1)[8/ FiYoqppXiijY  5-5-5  % Y1UT169q6tԨ'٨5Z %#%53&={Hzz{%#%5؋n #3ucr+t #53twuZn8r 5 5 9ri:y{l!## #'#3FL9/ppX ez4o&/&/&'&=4?6?6?4'&'&'676?/4?6??e60fUE4/c375#4*EM?300L5P+-<9-&6 7%$.7E84**H0=G  jĨulYY/)-iyy;494*13.&20r9 ~J1E2C))[PO>=1:,!1*46*=E6"14e  #3%%e%(ދdKMR2/&'&/&5?6?6?6?R3xl@&  )&3sd= O'  /#67Lg RKX7848cB3&$+&(K?s( jt=fV(2(&$%DB3467Dp+!#'&/&'&=47676?6?3΋A&P^\9>?G7a.3.(!KF6qHj,ry#?C8@SI 5$)*(/nsueOR1@'&'&32?6?#"'&'&/454676767632[<@CI8r (E;! <e '#1r{kJ "%HqD)7Y%lG3Y -3R;VU:97VW! F(F10" 0<5t1jc: ANf< Sj!534&'&#"+32?6?#"'#&/&/&'5/&'&=467676?673?;6736323$5(Z62"> +%* !o%#1>??>>+0& %&"695%%,\B!$pX--KH^D\E;6:<;_1 H]+xf/5AA<DU2?@_"GML/603 U/8I< !#5 53*7y N%e& &''7&46767'77'77%mmr{o,-J||Dkd|V'GIylc7NOv\~6$DX 'jL(>_e7/7>7?>?5774'&'67676?6?* KF4+75 TX*,T-/,UE@< 5 56,PGIk(4G@#/$6 \.Pc/*.$/40 %;=#w<"bK48xn](5R'-15 !# #3 3Җ.:$p8l !##3355lVV #53r|QDji7o#"/&=47632o! . ! .-!!($# "&. !! +3#3 #3 qG8rh # # 3 {w>?9;OH #33}pt{x ### 33h}9;;;99 %!###!5!33]X``|~?;:: !# #3 3SAsa6V V!%#%5V6#݇ʰQfdLUN R!## #'# 3 FL9/7cpXK !} %#"'&/"'+/&/#"'&'5732?6?6=?4'&'5&'&/&#"'676326767673632676767632&'&#"327674.'&/&'&'+&+"+32?676=93I`rbC5C3.G+'+V203j0*>fu_H44 u 7G"9" .%3+.$#~B9WQ56%>];0/GT99%?3U,())T9>~ ##4#//P !G8.+3"#-1(?oQZETNGG5I#"'&/##&/&'=#"'76?6767372?6?676?'35 >1cH`Aj@ rR78CA2Q21 ?S9 ^!NlZ]>o^S@'% NV[r9\H2h4q`L58.:N2...<()K#%#!5335ߋ%ۋ{ũd+#!53+26ʌ/u&3oq30#%# 33 %ۋV1TũOz%# # 3 3bA|ō{@=zr!m7BL#''7# 3'773'7UexA[hoei[~t5ijrG# # 3 3%G(Y|ō{@=qu7BLa_'# # 37'77by}>wwaeyk<Ehu%1# # 3 3' Hdȍ8EX:0G>9## #'7Бߤ?f4#'#55# ''4ЇBB9~0t1I  !##37%/ы/u;{QJO/&'&'&'&=?6?67%##333?QO$S1))"  #$0sd?B5&/' / ~O`?_ 4g~-:$+866 !cB4%3+&K?t(3;+F:hST(&#&EC :E':-CpFe !# #'57 7 'eԛ;4.[{,)qbMo(1'LeB_''5&'&/''&'5&='%6?'%6?57'4'&'6?676=H8C,43GD56*6CH8-GB$R-QH~JQH?F56 IZ5^!.*+.-++-=\9?KFFYNE2JVAX.CUK=Nu=x `GtOMJGcqj%'i0#  -=@4HO?;jq!#'7 3# #7'3'ɓ$SSË|n!ma P=U'&'&32?6?#"'&'&'&/547=675'# #3>?67632[<@C$!"r 'E;! <e '#1r{jK   _m܋^N6D)7Y%lG3Y -"#%;UV:96WV! F(G10" 0<5q#,->c:$>#?"9`2<[%  5-5-5 '% [A91UT16F=Y6cԨ'٨5bo!%'7''7'5-5-57'77% pr9rhLpT16hV6SOO|Ys5}}R~W٨YY<'  5-5-57'77% pr91UT16hV6SOԨ'٨YY<CG'&'&32?6?#"'&/5-5-5?6797632% [<@ 0QL9W ! <e '#1;21=NGT16BF6!'%l6F2W(TPg+ ! F(F10" 0<5@QG٨B~C   #'5'5 WEMmp m ##='5'3ɋM7X6hVnt[## /#3%[KDLvB=p6Y pXKR ## #'#3%R[FL8/j)OY!\rZj@qC%/'7&/&'=##'#?7'77'17qdjqT5\) _b)? MuV:b  5:+>x `GtOMJGA]Ձqj%'i0#  -=@4HO?;jqY'&'&32?6?#"'&'&'&/547=675'##'#3>?67632[<@C$!"r 'E;! <e '#1r{jK   __"5O+^N6D)7Y%lG3Y -"#%;UV:96WV! F(G10" 0<5q#,->c:$>#99`2<## #'#3FL9/p[8pXN X'''#"'&/+&//7/&/7&=&/7?676?27'&'5&'=./&'&+"+32?6767=6=owoy oX6AC'+ * 3j+j+_+5n`8 5i3$!98,FW$ P*35Z1(ZJ& 2*"K];KC4gp  -fq&gP*  (l 1.9j224^1 ^eS  -(DW|/ 480  ! A! 6:0B*A50*%.H<0:WM'u G 7GZg[[~PqMw@s7X[,  'L+$%!E-h\{jqqp.5<NG;S'zc}''#"'&'+&//7/&/7&=46?&'&'76?6767363267/&'&'#&+"+32='4'4'=/#"'&/32?67676=; oy oX6AC&, * 3j+j+ +"#H5M$/];0/GS;!,G"$?$3"$-1(Z8'`N*0-+NbEi2$4"K];KC4u7%[L -fq&gP* (l 1.9j224RM,54@z\1-Q 'F"8o-+(.7R-iq %"- 'B y=>caNW?> 12!8YOi?CBAw1#5&'&'&'=&=476?6?#'#5!w0$o=!B((65 4M..A,#ݻ)NU.HG=qi$)))(S)mqEHKRWRRC$A o4/&'&'&'='567676?#' YR* 6G2 &-*)( "7j+i>dk9XET@@<1+@Vc "#!!9b@@0),EKWs/%'&'&/&'5&/5=?'5676?%'=02'-!"-]>u[J1 -#F+(+(034:0+,9NW8RAG9B"0&%'2$1>\QH@/&/&'=&'&54=47676?6?'7%'H*0NSL/ @zW 9Q&_ ' 3kJv!8>lrIX-+'$PG#"!!< ^1R"85$'5H"MS2K08N%&/#'&'+/&5?'''&=4?#%YO$+)E"!p|ZG)*IHA@r9,3) {@3O'?:*.. N0}O'/&OCMqnp8\ M&$-AR,'H#LF@FMPG#"!!oAuU 4 !!J9  _!#'+"/&/7372?6756757654'5&/&/&/&'#&#7'7632;3 $Hm9698/7 #{)  ;E( 2& 2, pIb5R;&HpG JRt>#$D(xKC9 !WW1=<75VcrK&  NJ Zk?eA~gF!##533% g-_h>&''7&'&'='&'=/#5376?67'77'7=tE13 Zh!7XC=wo;5QK+!x x-}BIK?")%' U_y_;B%IHY #j/Birok8jX?'#/#535%73?K\#MxtkD!_}&Y//&'&3271?67567#"&'&'&'5'#537676?676?2p*4C$!"3 +E;!   ~# 16u?kJ# GpG'"%+5bZ * N -"#%Jt_-*/;:786WW! :[" ##335,(؋oN;q!# ##33 3 \6F7[>7r]>jmq # #3%q90=%|\B@%/'7/#4?7'77#'17ejq&#$K KMuU9b 5:. xBX_Cs%'()o:%u1*pj(#i1# '"B4HO= j.8 %# #37EKŌr':J#'57#37J?}"Cry@GK!SK~x-Y~DE3h  # #3%%+g`zZuhzqEN//&'&32?6767#"'&/&/7#332?632p*4C$"!3 +E;!   ~%#1ty?,<* ȥ3~ $7Y%lZ * N -"#&JxdP.9:<:5VW! :] ;xg/5BH_}'("W-# 3%%WT}z1(E(HkUʑϏ # #35[}OaL !#33!]~9}hy_ '#5'5_+*py/&/&'/&'#&'"'+/#'6?6?&/'676?6?5/476?'&+'"'7632?676736326?2'.''"4'&/&'&/&+"#1;27;?6?6?6=7?:$(,K ( 7*:A;!$"-E64C+'+V203t8 *;9#45%(2QH3(;9&25%KA3 T3>Hj56/;];0/GT9%827\ $  lEA 18-  *!!8!" )3#  ? <( # 3!!5 284%B/WE+)?( ?2GRS12% %B1)(n!3G_DD -#!  4H_BD |RyL" ! SQ #:L.9 SeCWF#*b%PNL>$E3(  "'3,TPE7**=BF,4# &  *&7f8FA<%RT9B''#5' ' ' 3 ' 'BQيQ;$Q;#Q;#;Q;QW~~"W!V1#WW V## # 373B^ydˁt<~lȥ  Hc3134&v9Q 4!## #3 33#  7銇#Ɍ/%[btgt^>H\'5&'&'5&'&=476?6?574'&'67>^ 2cQS_65+c,29IE=0+b3492dm2Z87/f[))('$!aW]]Vb:[YTzgg,',3.2%)dww ugIhRj0}@mnS9gR-# #3 3'&'&/-nÎ<Ae  U75MpDE{  L&!#%# #3 3 3/&Î<AO{QMpD]ũ@?aBOt !##33#55t؋ʋ6(6!22T!###33355*z֋z6   ##33 55ϋ[1D[h YM Hq/3/3>3?3     D/E3D%&/3#3$3  !"/33 3    /3H9//3   G/H3  H  E F HH !$%H"#H / 3  /3J01%53!#353!!!!!!!!!!!!##?6?6767!'ɔĄh\ \\'P\_ -\  -w}0a||\|rlurruJ xO `   B_79   Pb U?\ z        P b   Gaspar Sinai 2008-08-05 (Peter Soos, Ross Summerfield, George Sutton, Gabor Hosszu) Gaspar Sinai 2008-08-05 (Peter Soos, Ross Summerfield, George Sutton, Gabor Hosszu)YuditYuditLRLRFontMonger:YuditFontMonger:YuditYuditYuditYudit: V1.4Yudit: V1.4YuditYudit!d$  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abeghiklpstvy{|~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijglyph1glyph2glyph3 softhyphenAbreveabreveAogonekaogonek Ccircumflex ccircumflexDcarondcaronDcroatEogonekeogonekEcaronecaronc310c311LacutelacuteLcaronlcaronNacutenacuteNcaronncaron Ohungarumlaut ohungarumlautRacuteracuteRcaronrcaronSacutesacuteuni0162uni0163TcarontcaronUringuring Uhungarumlaut uhungarumlautZacutezacute Zdotaccent zdotaccent BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICS BLISSYMBOLICSuniEE00uniEE01uniEE02uniEE03uniEE04uniEE05uniEE06uniEE07uniEE08uniEE09uniEE0AuniEE0BuniEE0CuniEE0DuniEE0EuniEE0FuniEE10uniEE11uniEE12uniEE13uniEE14uniEE15uniEE16uniEE17uniEE18uniEE19uniEE1AuniEE1BuniEE1CuniEE1DuniEE1EuniEE1FuniEE20uniEE21uniEE22uniEE23uniEE24uniEE25uniEE26uniEE27uniEE28uniEE29uniEE2FuniEE31uniEE35uniEE3AuniEE3BuniEE3CuniEE3DuniEE40uniEE41uniEE42uniEE43uniEE44uniEE45uniEE46uniEE47uniEE48uniEE49uniEE4AuniEE4BuniEE4CuniEE4DuniEE4EuniEE4FuniEE50uniEE51uniEE52uniEE53uniEE54uniEE55uniEE56uniEE57uniEE58uniEE59uniEE5AuniEE5BuniEE5CuniEE5DuniEE5EuniEE5FuniEE60uniEE61uniEE62uniEE63uniEE64uniEE65uniEE66uniEE67uniEE68uniEE69uniEE6AuniEE6BuniEE6CuniEE6DuniEE6EuniEE6FuniEE70uniEE71uniEE72uniEE73uniEE74uniEE75uniEE76uniEE77uniEE78uniEE79uniEE7AuniEE7BuniEE7CuniEE7DuniEE7EuniEE7FuniEE80uniEE81uniEE82uniEE83uniEE84uniEE85uniEE86uniEE87uniEE88uniEE89uniEE8AuniEE8BuniEEEEglyph532glyph533 unencoded_3glyph535glyph536glyph537glyph538glyph539glyph540glyph541glyph542glyph543glyph544 F qrtu# :DFLTfracliga8  18, srt DFLT./fonts/yudit.hex0000644000175000017500000010116411053726775014052 0ustar henrichhenrich0020:00000000000000000000000000000000 0021:00000000101010101010100010100000 0022:00004444444400000000000000000000 0023:000000001212127E24247E4848480000 0024:00000000107C9290701C12927C100000 0025:000000006294946810102C52528C0000 0026:000000003844444438728A848C720000 0027:00001010101000000000000000000000 0028:00000008101020202020202010100800 0029:00000020101008080808080810102000 002A:00000000000010925438549210000000 002B:000000000000101010FE101010000000 002C:00000000000000000000000018080810 002D:0000000000000000007E000000000000 002E:00000000000000000000000018180000 002F:00000000020204080810102040400000 0030:00000000182442424242424224180000 0031:000000001030501010101010107C0000 0032:000000003C4242020C102040407E0000 0033:000000003C4242021C020242423C0000 0034:00000000040C142444447E0404040000 0035:000000007E4040407C020202423C0000 0036:000000001C2040407C424242423C0000 0037:000000007E0202040404080808080000 0038:000000003C4242423C424242423C0000 0039:000000003C4242423E02020204380000 003A:00000000000018180000001818000000 003B:00000000000018180000001808081000 003C:00000000000408102040201008040000 003D:000000000000007E0000007E00000000 003E:00000000004020100804081020400000 003F:000000003C4242020408080008080000 0040:000000001C224A565252524E201E0000 0041:0000000018242442427E424242420000 0042:000000007C4242427C424242427C0000 0043:000000003C42424040404042423C0000 0044:00000000784442424242424244780000 0045:000000007E4040407C404040407E0000 0046:000000007E4040407C40404040400000 0047:000000003C424240404E4242463A0000 0048:00000000424242427E42424242420000 0049:000000007C10101010101010107C0000 004A:000000003E0808080808088888700000 004B:00000000424448506060504844420000 004C:000000004040404040404040407E0000 004D:00000000424266665A5A424242420000 004E:0000000042626252524A4A4646420000 004F:000000003C42424242424242423C0000 0050:000000007C4242427C40404040400000 0051:0000000078848484848484B4CC780600 0052:000000007C4242427C48444442420000 0053:000000003C424240300C0242423C0000 0054:00000000FE1010101010101010100000 0055:000000004242424242424242423C0000 0056:00000000828282444444282810100000 0057:00000000424242425A5A666642420000 0058:00000000424224241818242442420000 0059:00000000828244442810101010100000 005A:000000007E02020408102040407E0000 005B:0000001C101010101010101010101C00 005C:00000000404020101008080402020000 005D:00000038080808080808080808083800 005E:00001824420000000000000000000000 005F:0000000000000000000000000000FE00 0060:00201008000000000000000000000000 0061:0000000000003C42023E4242463A0000 0062:0000004040405C6242424242625C0000 0063:0000000000003C4240404040423C0000 0064:0000000202023A4642424242463A0000 0065:0000000000003C42427E4040423C0000 0066:0000000C1010107C1010101010100000 0067:0000000000023A44444438203C42423C 0068:0000004040405C624242424242420000 0069:000000101000301010101010107C0000 006A:0000000404000C040404040404044830 006B:00000000404044485060504844420000 006C:000000003010101010101010107C0000 006D:000000000000EC929292929292920000 006E:0000000000005C624242424242420000 006F:0000000000003C4242424242423C0000 0070:0000000000005C6242424242625C4040 0071:0000000000003A4642424242463A0202 0072:0000000000005C624240404040400000 0073:0000000000003C4240300C02423C0000 0074:0000000010107C1010101010100C0000 0075:000000000000424242424242463A0000 0076:00000000000042424224242418180000 0077:000000000000829292929292926C0000 0078:00000000000042422418182442420000 0079:0000000000004242424242261A02023C 007A:0000000000007E0204081020407E0000 007B:00000018202010102020101020201800 007C:00001010101010101010101010101010 007D:00000030080810100808101008083000 007E:00000062928C00000000000000000000 007F:0000000000000000000073D04A104BD04A1073DE000000000000000000000000 0080:00000000000000000000719C4A5273D24252425C000000000000000000000000 0081:00000000000000000000499C4A527A5C4A504990000000000000000000000000 0082:0000000000000000000073924A52739E4A127212000000000000000000000000 0083:000000000000000000004B926A525B9E4A524B92000000000000000000000000 0084:0000000000000000000074B826A425A424A474B8000000000000000000000000 0085:000000000000000000004BD06A105BD04A104BDE000000000000000000000000 0086:0000000000000000000039CC4212319E08527392000000000000000000000000 0087:0000000000000000000079CC4212799E40527B92000000000000000000000000 0088:000000000000000000004B9C4920791849044938000000000000000000000000 0089:0000000000000000000025DC24843C8424842498000000000000000000000000 008A:0000000000000000000045CC4490448828841098000000000000000000000000 008B:00000000000000000000721C4A127212421243DC000000000000000000000000 008C:0000000000000000000072124A127212421243CC000000000000000000000000 008D:0000000000724A72524A000000000000 008E:0000000000000000000039DC4202318C0850739E000000000000000000000000 008F:0000000000000000000039DC4202318C0842739C000000000000000000000000 0090:0000000000000000000071CE4A104A0C4A0271DC000000000000000000000000 0091:0000000000000000000072444A4C72444244418E000000000000000000000000 0092:00000000000000000000725C4A42724C4250419E000000000000000000000000 0093:000000000000000000003B9C4120311809047138000000000000000000000000 0094:0000000000000000000039D24212421E421239D2000000000000000000000000 0095:00000000000000000000228836882AA822D82288000000000000000000000000 0096:000000000000000000003B8C4252339E0A127212000000000000000000000000 0097:000000000000000000007B8C42527B9E42127A12000000000000000000000000 0098:00000000000000000000398E4250324C0A42719C000000000000000000000000 0099:00000000000000000000339A442225A214A2639A000000000000000000000000 009A:0000000000000000000039DC420832080A0871DC000000000000000000000000 009B:0000000000000000000039DC4208418840483B9C000000000000000000000000 009C:00000000003E44241464000000000000 009D:0000000000000000000031CE4A1049904850338E000000000000000000000000 009E:00000000000000000000391025B0395021102110000000000000000000000000 009F:00000000000000000000338E4A507B904A104A0E000000000000000000000000 00A0:00000000000000000000000000000000 00A1:00000000101000101010101010100000 00A2:0000000010107C929090927C10100000 00A3:000000001C202020F82020207CC20000 00A4:000000000042243C24243C2442000000 00A5:0000000082442810FE10FE1010100000 00A6:00000000101010100000101010100000 00A7:000000003C42403C42423C02423C0000 00A8:24240000000000000000000000000000 00A9:000000003C4299A5A1A1A599423C0000 00AA:000038043C443C007C00000000000000 00AB:00000000001212242448242412120000 00AC:000000000000000000007E0202020000 00AD:0000000000000000007E000000000000 00AE:000000003C42B9A5A5B9A9A5423C0000 00AF:00007E00000000000000000000000000 00B0:10282810000000000000000000000000 00B1:00000000101010FE10101000FE000000 00B2:00003844043840407C00000000000000 00B3:00003844043804443800000000000000 00B4:00081020000000000000000000000000 00B5:0000000000000000444444446C544040 00B6:0000003E7A7A7A7A3A0A0A0A0A0A0E00 00B7:00000000000000001818000000000000 00B8:00000000000000000000000000000830 00B9:00000818280808080800000000000000 00BA:00003844444438007C00000000000000 00BB:00000000004848242412242448480000 00BC:00000000226224282812162A4E420000 00BD:000000002262242828141A22444E0000 00BE:00000000621224186812162A4E420000 00BF:000000000808000808304242423C0000 00C0:300C000018242442427E424242420000 00C1:0C30000018242442427E424242420000 00C2:1824000018242442427E424242420000 00C3:324C000018242442427E424242420000 00C4:2424000018242442427E424242420000 00C5:1824180018242442427E424242420000 00C6:000000003E509090FE909090909E0000 00C7:000000003C42424040404042423C0830 00C8:300C00007E4040407C404040407E0000 00C9:0C3000007E4040407C404040407E0000 00CA:182400007E4040407C404040407E0000 00CB:242400007E4040407C404040407E0000 00CC:300C00007C10101010101010107C0000 00CD:186000007C10101010101010107C0000 00CE:304800007C10101010101010107C0000 00CF:484800007C10101010101010107C0000 00D0:0000000078444242F242424244780000 00D1:324C000042626252524A4A4646420000 00D2:300C00003C42424242424242423C0000 00D3:0C3000003C42424242424242423C0000 00D4:182400003C42424242424242423C0000 00D5:324C00003C42424242424242423C0000 00D6:242400003C42424242424242423C0000 00D7:00000000000000422418244200000000 00D8:000000023A44464A4A525262225C4000 00D9:300C00004242424242424242423C0000 00DA:0C3000004242424242424242423C0000 00DB:182400004242424242424242423C0000 00DC:242400004242424242424242423C0000 00DD:18600000828244442810101010100000 00DE:00000040407844424244784040400000 00DF:00000000384444447C424242625C0000 00E0:0000300C00003C42023E4242463A0000 00E1:00000C3000003C42023E4242463A0000 00E2:0000182400003C42023E4242463A0000 00E3:0000324C00003C42023E4242463A0000 00E4:0000242400003C42023E4242463A0000 00E5:0018241800003C42023E4242463A0000 00E6:0000000000007C92127E9090927C0000 00E7:0000000000003C4240404040423C0830 00E8:0000300C00003C42427E4040423C0000 00E9:00000C3000003C42427E4040423C0000 00EA:0000182400003C42427E4040423C0000 00EB:0000242400003C42427E4040423C0000 00EC:000060180000301010101010107C0000 00ED:000018600000301010101010107C0000 00EE:000030480000301010101010107C0000 00EF:000048480000301010101010107C0000 00F0:0000320C1422023E42424242423C0000 00F1:0000324C00005C624242424242420000 00F2:0000300C00003C4242424242423C0000 00F3:00000C3000003C4242424242423C0000 00F4:0000182400003C4242424242423C0000 00F5:0000324C00003C4242424242423C0000 00F6:0000242400003C4242424242423C0000 00F7:0000000000001800007E000018000000 00F8:0000000000023C464A4A5252623C4000 00F9:0000300C0000424242424242463A0000 00FA:00000C300000424242424242463A0000 00FB:000018240000424242424242463A0000 00FC:000024240000424242424242463A0000 00FD:00000C3000004242424242261A02023C 00FE:00000000404078444444485060404040 00FF:0000242400004242424242261A02023C 0100:003C000018242442427E424242420000 0101:0000003C00003C42023E4242463A0000 0102:42423C0018242442427E424242420000 0103:0042423C00003C42023E4242463A0000 0104:000000003048488484FC848484840806 0105:0000000000007884047C84848C740806 0106:0C3000003C42424040404042423C0000 0107:00000C3000003C4240404040423C0000 0108:182400003C42424040404042423C0000 0109:0000182400003C4240404040423C0000 010A:101000003C42424040404042423C0000 010B:0000101000003C4240404040423C0000 010C:241800003C42424040404042423C0000 010D:0000241800003C4240404040423C0000 010E:48300000784442424242424244780000 010F:2418000202023A4642424242463A0000 0110:0000000078444242F242424244780000 0111:0000041E0404748C848484848C740000 0112:003C00007E4040407C404040407E0000 0113:0000003C00003C42427E4040423C0000 0114:42423C007E4040407C404040407E0000 0115:000042423C003C42427E4040423C0000 0116:101000007E4040407C404040407E0000 0117:0000101000003C42427E4040423C0000 0118:000000007E4040407C404040407E0806 0119:0000000000003C42427E4040423C100C 011A:241800007E4040407C404040407E0000 011B:0000241800003C42427E4040423C0000 011C:182400003C424240404E4242463A0000 011D:0000182400023A44444438203C42423C 011E:42423C003C424240404E4242463A0000 011F:0042423C00023A44444438203C42423C 0120:101000003C424240404E4242463A0000 0121:0000101000023A44444438203C42423C 0122:000000003C424240404E4242463A0830 0123:00000C1000023A44444438203C42423C 0124:18240000424242427E42424242420000 0125:3048004040405C624242424242420000 0126:000000004242FF42427E424242420000 0127:000040F040405C624242424242000000 0128:324C00003E08080808080808083E0000 0129:0000324C0000180808080808083E0000 012A:007800007C10101010101010107C0000 012B:000000780000301010101010107C0000 012C:42423C003E08080808080808083E0000 012D:000042423C00180808080808083E0000 012E:000000007C10101010101010107C100C 012F:000000101000301010101010107C100C 0130:101000007C10101010101010107C0000 0131:000000000000301010101010107C0000 0132:000000004242424242420202423C0000 0133:00004444000044444444444434044438 0134:182400003E0808080808088888700000 0135:00000C1200000C040404040404044830 0136:000000004244485060605048444220C0 0137:000000004040444850605048444220C0 0138:00000000000042444870704844420000 0139:186000004040404040404040407E0000 013A:186000003010101010101010107C0000 013B:000000004040404040404040407E0830 013C:000000003010101010101010107C1060 013D:241800004040404040404040407E0000 013E:483000003010101010101010107C0000 013F:000000004040404044444040407E0000 0140:000000003010101014141010107C0000 0141:000000004040485060C04040407E0000 0142:000000003010141830501010107C0000 0143:0C30000042626252524A4A4646420000 0144:00000C3000005C624242424242420000 0145:0000000042626252524A4A46464220C0 0146:0000000000005C6242424242424220C0 0147:2418000042626252524A4A4646420000 0148:0000241800005C624242424242420000 0149:0060202040005C624242424242420000 014A:000000005C62424242424242424C0000 014B:0000000000005C62424242424242020C 014C:003C00003C42424242424242423C0000 014D:0000003C00003C4242424242423C0000 014E:42423C003C42424242424242423C0000 014F:000042423C003C4242424242423C0000 0150:66880000788484848484848484780000 0151:00006688000078848484848484780000 0152:000000006E9090909C909090906E0000 0153:0000000000006C92929E9090926C0000 0154:0C3000007C4242427C48444442420000 0155:00000C3000005C624240404040400000 0156:000000007C4242427C484444424220C0 0157:0000000000005C6242404040404020C0 0158:241800007C4242427C48444442420000 0159:0000241800005C624240404040400000 015A:0C3000003C424240300C0242423C0000 015B:00000C3000003C4240300C42423C0000 015C:182400003C424240300C0242423C0000 015D:0000182400003C4240300C02423C0000 015E:000000003C424240300C0242423C0830 015F:0000000000003C4240300C02423C0830 0160:241800003C424240300C0242423C0000 0161:0000241800003C4240300C02423C0000 0162:00000000FE1010101010101010101060 0163:0000000010107C1010101010100C0830 0164:48300000FE1010101010101010100000 0165:2418000010107C1010101010100C0000 0166:00000000FE1010141830501010100000 0167:0000000010107C1014183050100C0000 0168:324C00004242424242424242423C0000 0169:0000324C0000424242424242463A0000 016A:003C00004242424242424242423C0000 016B:0000003C0000424242424242463A0000 016C:42423C004242424242424242423C0000 016D:0042423C0000424242424242463A0000 016E:182418004242424242424242423C0000 016F:000018241800424242424242463A0000 0170:66880000848484848484848484780000 0171:0000668800008484848484848C740000 0172:000000004242424242424242423C100C 0173:0000000000008484848484848C740806 0174:18240000424242425A5A666642420000 0175:000030480000829292929292926C0000 0176:30480000828244442810101010100000 0177:0000182400004242424242261A02023C 0178:48480000828244442810101010100000 0179:0C3000007E02020408102040407E0000 017A:00000C3000007E0204081020407E0000 017B:101000007E02020408102040407E0000 017C:0000101000007E0204081020407E0000 017D:241800007E02020408102040407E0000 017E:0000241800007E0204081020407E0000 017F:0000000C101010301010101010100000 0180:00000040F0405C6242424242625C0000 0181:000000007CA2A2223C222222223C0000 0182:000000007E4040407C424242427C0000 0183:000000007E40405C62424242625C0000 0184:00000000602020203C222222223C0000 0185:000000000000602020203C22223C0000 0186:000000003C42420202020242427C0000 0187:00000608788888808080808888700000 0188:00000000060878888080808088700000 0189:0000000078444242F242424244780000 018A:0000000078A4A2222222222224380000 018B:000000007E0202023E424242423E0000 018C:000000007E02023A46424242463A0000 018D:0000000000003C424242422418040438 018E:000000007E0202023E020202027E0000 018F:0000000018244202027E424224180000 0190:000000003C42424038404042423C0000 0191:000000003E2020203C2020202020C000 0192:0000000C1010107C1010101010106000 0193:000000067888888080B8888898680000 0194:00000000424242242418182424180000 0195:00000040404040724A4A4A4A4A440000 0196:000000007010101010101010100C0000 0197:000000007C1010107C101010107C0000 0198:00000000464A50506060504844420000 0199:00000030404044485060504844420000 019A:00000000301010107C101010107C0000 019B:00000000242810304818242442420000 019C:000000009292929292929292926E0000 019D:00000000222232322A2A26262222C000 019E:0000000000005C624242424242420202 019F:000000003C4242427E424242423C0000 01A0:000000023A4444444444444444380000 01A1:0000000000023A444444444444380000 01A2:00000000364A4A4A4A4A4A4A4A320202 01A3:000000000000364A4A4A4A4A4A320202 01A4:000000007CA2A2223C20202020200000 01A5:000000000006B8C888888888C8B08080 01A6:00000000E04078444478504844420000 01A7:000000003C4242020C304042423C0000 01A8:0000000000003C42020C3040423C0000 01A9:000000007E40201008081020407E0000 01AA:00000020505030101010101010100C00 01AB:0000000010107C1010101010100C0418 01AC:000000007E9090101010101010100000 01AD:0000000C1010107C10101010100C0000 01AE:00000000FE1010101010101010100C00 01AF:000002028C8888888888888888700000 01B0:0000000002028C888888888898680000 01B1:00000000422424424242424224180000 01B2:000000004C4242424242424448300000 01B3:0000000062A222141408080808080000 01B4:00000000000688888888884838080870 01B5:000000007E0204083C102040407E0000 01B6:0000000000007E04083C1020407E0000 01B7:000000007E0408101C020202463C0000 01B8:000000007E20100838404040623C0000 01B9:0000000000007C20100838404040423C 01BA:0000000000003E04081C02023C40423C 01BB:000000003C424204087E2040407E0000 01BC:000000007E2020203C020202423C0000 01BD:0000000000007E20203C0202423C0000 01BE:0000000010107C101018040444380000 01BF:0000000000005C624242444850604040 01C0:00000010101010101010101010100000 01C1:00000028282828282828282828280000 01C2:000000101010107C107C101010100000 01C3:00000000101010101010100010100000 01C4:0A040000CEA2A2A2A4A4A8A8A8CE0000 01C5:00000A04C0A0AEA2A2A4A4A8A8CE0000 01C6:00000A2420206EA2A2A4A4A8A86E0000 01C7:000000008E8282828282829292EC0000 01C8:00000002828086828282828282F20418 01C9:00000001612023212121212121F9020C 01CA:00000000969292D2D2B2B29A9A940000 01CB:000000029290D6D2D2B2B2B292922418 01CC:000000020200A6D29292929292922418 01CD:2418000018242442427E424242420000 01CE:0000241800003C42023E4242463A0000 01CF:483000007C10101010101010107C0000 01D0:000048300000301010101010107C0000 01D1:241800003C42424242424242423C0000 01D2:0000241800003C4242424242423C0000 01D3:241800004242424242424242423C0000 01D4:000024180000424242424242463A0000 01D5:3C0024004242424242424242423C0000 01D6:003C00242400424242424242463A0000 01D7:0C3000240042424242424242423C0000 01D8:0C3000242400424242424242463A0000 01D9:241800240042424242424242423C0000 01DA:241800242400424242424242463A0000 01DB:300C00240042424242424242423C0000 01DC:300C00242400424242424242463A0000 01DD:0000000000003C4202027E42423C0000 01DE:3C00240018242442427E424242420000 01DF:003C002424003C42023E4242463A0000 01E0:3C00180018242442427E424242420000 01E1:003C001010003C42023E4242463A0000 01E2:007800003E509090FE909090909E0000 01E3:0000007800007C92127E9090927C0000 01E4:0000000078848480809C849E847C0000 01E5:000000000004748888887040789E8478 01E6:241800003C424240404E4242463A0000 01E7:0000241800023A44444438203C42423C 01E8:24180000424448506060504844420000 01E9:48300000404044485060504844420000 01EA:000000003C42424242424242423C100C 01EB:0000000000003C4242424242423C100C 01EC:003C00003C42424242424242423C100C 01ED:0000003C00003C4242424242423C100C 01EE:241800007E0408101C020202463C0000 01EF:0000241800003E0408101C020202423C 01F0:0000120C00000C040404040404044830 01F1:00000000CEA2A2A2A4A4A8A8A8CE0000 01F2:00000000C0A0AEA2A2A4A4A8A8CE0000 01F3:0000002020206EA2A2A4A4A8A86E0000 01F4:0C3000003C424240404E4242463A0000 01F5:00000C3000023A44444438203C42423C 01F6:000000004848484A7A4A4A4A4A440000 01F7:000000005C6242424448506040404000 01F8:00300C0042626252524A4A4646420000 01F9:000000300C005C624242424242420000 01FA:0C30182418182424427E424242420000 01FB:0C3000182418003C42023E42463A0000 01FC:0C3000003E509090FE909090909E0000 01FD:00000C3000007C92127E9090927C0000 01FE:0C3000023A44464A4A525262225C4000 01FF:00000C3000023C464A4A5252623C4000 0200:CC22000018242442427E424242420000 0201:0000CC2200003C42023E4242463A0000 0202:3C42420018242442427E424242420000 0203:00003C4242003C42023E4242463A0000 0204:CC2200007E4040407C404040407E0000 0205:0000CC2200003C42427E4040423C0000 0206:3C4242007E4040407C404040407E0000 0207:00003C4242003C42427E4040423C0000 0208:CC2200003E08080808080808083E0000 0209:0000CC220000180808080808083E0000 020A:3C4242003E08080808080808083E0000 020B:00003C424200180808080808083E0000 020C:CC2200003C42424242424242423C0000 020D:0000CC2200003C4242424242423C0000 020E:3C4242003C42424242424242423C0000 020F:00003C4242003C4242424242423C0000 0210:CC2200007C4242427C48444442420000 0211:0000CC2200005C624240404040400000 0212:3C4242007C4242427C48444442420000 0213:00003C4242005C624240404040400000 0214:CC2200004242424242424242423C0000 0215:0000CC220000424242424242463A0000 0216:3C4242004242424242424242423C0000 0217:00003C424200424242424242463A0000 0218:000000003C424240300C0242423C0810 0219:0000000000003C4240300C02423C0810 021A:00000000FE1010101010101010100408 021B:0000000010107C1010101010100C2040 021C:000000003C4242020C340202023C0000 021D:0000000000003C42020C32020C300000 021E:00241800424242427E42424242420000 021F:002418004040405C6242424242420000 0220:000000005C6242424242424242420202 0222:0000000008244242243C4242423C0000 0223:00000000000024444830484444380000 0224:000000007E02020408102040407E0204 0225:0000000000007E0204081020407E0204 0226:1010000018242442427E424242420000 0227:0000101000003C42023E4242463A0000 0228:000000007E4040407C404040407E0830 0229:0000000000003C42427E4040423C0830 022A:3C0024003C42424242424242423C0000 022B:003C002424003C4242424242423C0000 022C:3C00324C003C424242424242423C0000 022D:003C00324C003C4242424242423C0000 022E:101000003C42424242424242423C0000 022F:0000101000003C4242424242423C0000 0230:3C0010003C42424242424242423C0000 0231:003C001010003C4242424242423C0000 0232:003E0000414122221408080808080000 0233:0000003C00004242424242261A02023C 0250:0000000000005C6242427C40423C0000 0251:0000000000003A46424242464A320000 0252:0000000000004C5262424242625C0000 0253:0000003840405C6242424242625C0000 0254:0000000000003C4202020202423C0000 0255:0000000000003C424040404C523C4000 0256:000000080808689888888888986A0400 0257:000000040A0868988888888898680000 0258:0000000000003C42427E0202423C0000 0259:0000000000003C4202027E42423C0000 025A:000000000000728C1868888888700000 025B:0000000000003C42403C4040423C0000 025C:0000000000003C42023C0202423C0000 025D:000000000000728C0870080888700000 025E:0000000000003C42425C4242423C0000 025F:000000000000180808083E0808089060 0260:0000000000046A988888889868088870 0261:0000000000003A46424242463A02423C 0262:0000000000003C4240404E42423E0000 0263:00000000000042424224241818242418 0264:00000000000042422424181824180000 0265:0000000000424242424242463A020202 0266:0000003840405C624242424242420000 0267:0000003840405C6242424242424A0400 0268:0000001010003010107C1010107C0000 0269:00000000000020202020202020180000 026A:0000000000007C1010101010107C0000 026B:00000000180808083A4C0808083E0000 026C:0000000018080838483E0808083E0000 026D:00000000301010101010101010140800 026E:0000000060203E2224282C2222FA120C 026F:000000000000929292929292926E0000 0270:000000000000929292929292926E0202 0271:000000000000EC929292929292820C00 0272:0000000000002C322222222222A24000 0273:000000000000B0C888888888888A0400 0274:000000000000424262524A4642420000 0275:0000000000003C42427E4242423C0000 0276:0000000000006E90909C9090906E0000 0277:0000000000007C8282929292926C0000 0278:0000000010107C9292929292927C1010 0279:000000000000020202020242463A0000 027A:000000000202020202020242463A0000 027B:000000000000080808080888986A0400 027C:0000000000005C624240404040404040 027D:0000000000005C624240404040502000 027E:0000000000003C424240404040400000 027F:0000000000003C424202020202020000 0280:0000000000007C42427C444242420000 0281:000000000000424242447C42427C0000 0282:0000000000003C4240300C02427C4030 0283:0000000C101010101010101010106000 0284:0000000C1010101010107C1010106000 0285:00000000000060101010101010100C00 0286:000000060808080808080808384E3000 0287:00000000601010101010107C10100000 0288:0000000010107C101010101010120C00 0289:000000000000444444FE44444C340000 028A:00000000000042244242424224180000 028B:0000000000004C424242424448300000 028C:00000000000018182424244242420000 028D:0000000000006C929292929292820000 028E:000000001E2040586442424242420000 028F:00000000000082824428101010100000 0290:000000000000F8101020204040F80806 0291:000000000000FC040810204C92FC2000 0292:0000000000003E0408101C020202423C 0293:0000000000003E0408101C0202324A3C 0294:000000003C4242020408080808080000 0295:000000003C4242402010101010100000 0296:000000000808080808040242423C0000 0297:0000000000003C42404040404040423C 0298:0000000000003C42425A5A42423C0000 0299:0000000000007C42427C4242427C0000 029A:0000000000003C42423A4242423C0000 029B:000000000000748A8080988888780000 029C:0000000000004444447C444444440000 029D:0000000404000C0404040404043E4830 029E:0000000000004222120A060A12220202 029F:000000000000404040404040407E0000 02A0:0000000000046A988888888898680808 02A1:000000003C4242020408083E08080000 02A2:000000003C4242402010107C10100000 02A3:0000002020207EA2A4A4A8A8B07E0000 02A4:0000002020207EA2A4A8ACA2A262120C 02A5:0000002020207EA2A4A8B0B4AA7C0800 02A6:000000004040EC5050484442423C0000 02A7:000000064848F8484848484848380830 02A8:000000004040EC52505050545A3C0800 02A9:00000000609080DCA2A2A2A2A2A20418 02AA:000000004040404E50504C42427C0000 02AB:00000000404040407E444850607E0000 02AC:000000829292926C00829292926C0000 02AD:000000007E42424200007E4242420000 02B0:00000000404058644444000000000000 02B1:00000038444058644444000000000000 02B2:00000004000404042418000000000000 02B3:00000000586440404000000000000000 02B4:000000000404044C3400000000000000 02B5:00000000080808986806000000000000 02B6:00000000444878444478000000000000 02B7:00000000445454280000000000000000 02B8:0000000044443C043800000000000000 02B9:00000000081020000000000000000000 02BA:00000000122448000000000000000000 02BB:00000000081010180000000000000000 02BC:00000000180808100000000000000000 02BD:00000000181010080000000000000000 02BE:00000030080404083000000000000000 02BF:0000000C102020100C00000000000000 02C0:0000003C4202021C1010000000000000 02C1:0000003C424040380808000000000000 02C2:00000004081020100804000000000000 02C3:00000020100804081020000000000000 02C4:00000000102844820000000000000000 02C5:00000000824428100000000000000000 02C6:00000000182400000000000000000000 02C7:00000000241800000000000000000000 02C8:00000010101010000000000000000000 02C9:000000003C0000000000000000000000 02CA:000000000C3000000000000000000000 02CB:00000000300C00000000000000000000 02CC:00000000000000000000000010101010 02CD:000000000000000000000000003C0000 02CE:00000000000000000000000000300C00 02CF:000000000000000000000000000C3000 02D0:00000000000000381000001038000000 02D1:00000000000000003810000000000000 02D2:00000000000030080404083000000000 02D3:0000000000000C102020100C00000000 02D4:00000000000000101010107C00000000 02D5:000000000000007C1010101000000000 02D6:0000000000000010107C101000000000 02D7:0000000000000000007C000000000000 02D8:000042423C0000000000000000000000 02D9:00001818000000000000000000000000 02DA:00001824180000000000000000000000 02DB:0000000000000000000000000000100C 02DC:0000324C000000000000000000000000 02DD:00006688000000000000000000000000 02DE:000000000000002060A21C0000000000 02DF:00000000422418244200000000000000 02E0:00000000442810282810000000000000 02E1:00003010101010380000000000000000 02E2:000000003C4038047800000000000000 02E3:00000000442810284400000000000000 02E4:00003C40403808000000000000000000 02E5:0000007C040404040404040404040000 02E6:00000004047C04040404040404040000 02E7:00000004040404047C04040404040000 02E8:00000004040404040404047C04040000 02E9:000000040404040404040404047C0000 02EA:000000000000000040404040407C0000 02EB:000000000000002020203C2020200000 02EC:00000000000000000000004428100000 02ED:00007E007E0000000000000000000000 02EE:00006622224400000000000000000000 EE00:00302824223E20202020202020202000 EE01:00302824222224283020202020202000 EE02:00828244442828101028284444828200 EE03:00103854921010101010101010101000 EE04:0082C2A2928A868282C2A2928A868200 EE05:00101010101010D03816101010101000 EE06:00824428102844444444281028448200 EE07:00442810284480808080442810284400 EE08:00002018204040808080404020182000 EE09:000000384482C6AA92AAC68244380000 EE0A:001010103828282824745454CA8A8A00 EE0B:00101010D0381610D038161010101000 EE0C:00008244281028448244281028448200 EE0D:001010D0381610101010101010101000 EE0E:0000C030181610101010101010101000 EE0F:0080C0A0908880808080808080808000 EE10:00101814121010101010109050301000 EE11:00101028284444828244442828101000 EE12:0010101038282828247454544AEAAA00 EE13:0000003844828282928A868244380000 EE14:00C0A0908890A0C0C0A0908890A0C000 EE15:00000810204040808080404020100800 EE16:00000E32424282828282824242320E00 EE17:00001824428080808080804224180000 EE18:00001824448E80808080804224180000 EE19:00824222120A06060A12122242428200 EE1A:004428102844808080804028324C0000 EE1B:00C0A09088C4A09088C4A09088848000 EE1C:008282C2A2928A868282828282828200 EE1D:00080808101010382828444444828200 EE1E:00001010101028282844444482828200 EE1F:00101010101010101010101010101000 EE20:0082848890A0C0808080808080808000 EE21:00929244442828101028284444929200 EE22:00A2A2545428281010282854548A8A00 EE23:0082C6AA9282828282828292AAC68200 EE24:008282C6C6AAAA9292AAAAC6C6828200 EE25:00020202020242724E42404040404000 EE26:0000827C4482828282828282447C8200 EE27:0082C6EEBA9282828282828282828200 EE28:0082C2A2928AC6A2928AC6A2928A8600 EE29:00929254543838101010101010101000 EE2F:00000000000000303000000000000000 EE31:00001010101010101010101010101000 EE35:00008282824444442828281010101000 EE3A:00008282444428381038284444828200 EE3B:00009292925454545438383810101000 EE3C:00009292545438381038385454929200 EE3D:0000929254543810FF10385454929200 EE40:008282C4C4A8A89090A8A8C4C4828200 EE41:00302824223E20A060302C2020202000 EE42:0030509078282828247454544AEAAA00 EE43:000000000000638C945208200820082008200820082008209452638C00000000 EE44:008282444428E8381E28284444828200 EE45:0000010011101110111029284544838201000100010001000100010001000000 EE46:000006080A081308228842487E28021802080208020802080208020802080000 EE47:000006100A201240228043107E20024002800300020002000200020002000000 EE48:000006080A08130822884248222812180A080608020802080208020802080000 EE49:0000208020C0112011100A080BF8040004000A000A0011001100208020800000 EE4A:008A8A44442A2A10102A2A44448A8A00 EE4B:0082824444292E101028284444828200 EE4C:008A8A44442A2A101028284444828200 EE4D:000020802080114011400A200A20040004000A200A2011401140208020800000 EE4E:00103854921010111214121112141800 EE4F:00103854921010103854929254381000 EE50:000020C030A028902488228421FC208020803080288024802280218020800000 EE51:0000410061845148493045204340414041406140514049204510430841040000 EE52:00000410063005500490041004103F1004100410041004900550063004100000 EE53:000003800C60783C482410101010701CD0161010101018303458638C00000000 EE54:0000183024484384010001000100010001000100010001000100010001000000 EE55:00181412392A2C28247454548A8A8A00 EE56:0000022001400080014002200200050005000880089014601420225022900000 EE57:00000200020002000500050005000C800BE00880144014401440222022200000 EE58:000002180224054004C004800880088008801480148014402240222422180000 EE59:00000000208011400B4004A00A601100208011000A0004000A00110020800000 EE5A:00008A442A102844824428102A448A00 EE5B:00008A442A1028448244281028448200 EE5C:00000000208011400A2004000A001100208011000A0004000A20114020800000 EE5D:0000C020382022242830202020202000 EE5E:00000000E088389020A030C02880248022802180208020802080208020800000 EE5F:001814123F282828247454544AEAAA00 EE60:00181412392A2C28247454544AEAAA00 EE61:00000220014000800140022002000500050008800890146014202A502A900000 EE62:000002180224054004C004800880088008801480148012402A40292429180000 EE63:0010121438282828247454544AEAAA00 EE64:0000078008401020302020102010E01CA0142010F03C9024186077B820100000 EE65:000C122242C2FE808080402010080000 EE66:00000204081038E638E638D608040200 EE67:0000279028503030186027902010E01CA0142010F03C9024186077B820100000 EE68:003C0C14244040808080404020100800 EE69:00000204081010F03C20101008040200 EE6A:000002040810F03C20F01C1008040200 EE6B:00008850205048808080404020100800 EE6C:0000020408103864A2A2543818040200 EE6D:00000810207C40808080404020100800 EE6E:0000000018202420422001200120012001A00160012001204220242018200000 EE6F:000020C020A021902288248428FC308020802080208020802080208020800000 EE70:00000000111010A0184014A01290110011001100109010A0104010A011100000 EE71:0000114010C0184014601250114010C010401040104010401040104010400000 EE72:0000000010601090110812001200120016001A00120012001108109010600000 EE73:000010421044184814501260114010C010401040104010401040104010401040 EE74:00004104418C6154512449044504430441044104410441244154418C41040000 EE75:0000181412112F282844444482828200 EE76:0000022001400080014002200200050005000880089010601020205020900000 EE77:00101814121028282844444482828200 EE78:000010101010282C2A5566568A828200 EE79:0000060005800A600A200A401180110011E020982088209040E0404040400000 EE7A:000000C0012006100E000C001400140014002400240022004210412040C00000 EE7B:000002000200058005600510088008E0089810401070104C2020202020200000 EE7C:00101112141828282844444482828200 EE7D:00004244485E60404040404040404000 EE7E:0010080C8A4828180808080808080800 EE7F:0000638C1C700820082010101010101010101010301850149832244843840000 EE80:0000101029284544038001001120295045880304010009201550238841040100 EE81:00002220222011500888088405FC020002000500088008801440222022200000 EE82:0000410063805540494041204120419041904148414849A455A4635241520000 EE83:0000410063805560491841044118416041804160411849045518636041800000 EE84:00001040304028A048A045100510020002004510451028A028A0104010400000 EE85:000041046384554449244114410C410441044104410449045504630441040000 EE86:00000038549292929292929254380000 EE87:00004180634055204910410841F8410041004100410041004100410041000000 EE88:000041846344552449144124414441C441244114410C41044104410441040000 EE89:000020C030A028902488228431FC288024802280318028802480228021800000 EE8A:000041046184514449244514630C510449044504630451044904450443040000 EE8B:00002088309028A024C022803180288024802280318028802480228021800000 EEEE:000000001FF811001FF011001FF011001FFC00040204222422243FE420380000 ./BUGS/0000755000175000017500000000000010724001346011572 5ustar henrichhenrich./configure0000755000175000017500000060532110730661710012754 0ustar henrichhenrich#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.59. # # Copyright (C) 2003 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` exec 6>&1 # # Initializations. # ac_default_prefix=/usr/local ac_config_libobj_dir=. cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= SHELL=${CONFIG_SHELL-/bin/sh} # Maximum number of lines to put in a shell here document. # This variable seems obsolete. It should probably be removed, and # only ac_max_sed_lines should be used. : ${ac_max_here_lines=38} # Identity of this package. PACKAGE_NAME= PACKAGE_TARNAME= PACKAGE_VERSION= PACKAGE_STRING= PACKAGE_BUGREPORT= ac_unique_file="gui/SYudit.h" ac_default_prefix=/usr # Factoring default headers for most tests. ac_includes_default="\ #include #if HAVE_SYS_TYPES_H # include #endif #if HAVE_SYS_STAT_H # include #endif #if STDC_HEADERS # include # include #else # if HAVE_STDLIB_H # include # endif #endif #if HAVE_STRING_H # if !STDC_HEADERS && HAVE_MEMORY_H # include # endif # include #endif #if HAVE_STRINGS_H # include #endif #if HAVE_INTTYPES_H # include #else # if HAVE_STDINT_H # include # endif #endif #if HAVE_UNISTD_H # include #endif" ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT CXXCPP CC CFLAGS ac_ct_CC CPP X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS RANLIB LPR_COMMAND LPR_CFLAGS EGREP HAVE_LONG_LONG MSGMERGE TOPDIR GETTEXT_CFLAGS GETTEXT_LFLAGS HAVE_LOCALE HAVE_SET_IM_VALUES NEED_SET_IM_VALUES_PROTO YUDIT_DATA USE_X11 X11_LIB LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. ac_init_help= ac_init_version=false # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datadir='${prefix}/share' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' infodir='${prefix}/info' mandir='${prefix}/man' ac_prev= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval "$ac_prev=\$ac_option" ac_prev= continue fi ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_option in -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad | --data | --dat | --da) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ | --da=*) datadir=$ac_optarg ;; -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` eval "enable_$ac_feature=no" ;; -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "enable_$ac_feature='$ac_optarg'" ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst \ | --locals | --local | --loca | --loc | --lo) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* \ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package| sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "with_$ac_package='$ac_optarg'" ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/-/_/g'` eval "with_$ac_package=no" ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) { echo "$as_me: error: unrecognized option: $ac_option Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` eval "$ac_envvar='$ac_optarg'" export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` { echo "$as_me: error: missing argument to $ac_option" >&2 { (exit 1); exit 1; }; } fi # Be sure to have absolute paths. for ac_var in exec_prefix prefix do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* | NONE | '' ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then its parent. ac_confdir=`(dirname "$0") 2>/dev/null || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$0" : 'X\(//\)[^/]' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$0" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` srcdir=$ac_confdir if test ! -r $srcdir/$ac_unique_file; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r $srcdir/$ac_unique_file; then if test "$ac_srcdir_defaulted" = yes; then { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 { (exit 1); exit 1; }; } else { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } fi fi (cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 { (exit 1); exit 1; }; } srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` ac_env_build_alias_set=${build_alias+set} ac_env_build_alias_value=$build_alias ac_cv_env_build_alias_set=${build_alias+set} ac_cv_env_build_alias_value=$build_alias ac_env_host_alias_set=${host_alias+set} ac_env_host_alias_value=$host_alias ac_cv_env_host_alias_set=${host_alias+set} ac_cv_env_host_alias_value=$host_alias ac_env_target_alias_set=${target_alias+set} ac_env_target_alias_value=$target_alias ac_cv_env_target_alias_set=${target_alias+set} ac_cv_env_target_alias_value=$target_alias ac_env_CXX_set=${CXX+set} ac_env_CXX_value=$CXX ac_cv_env_CXX_set=${CXX+set} ac_cv_env_CXX_value=$CXX ac_env_CXXFLAGS_set=${CXXFLAGS+set} ac_env_CXXFLAGS_value=$CXXFLAGS ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set} ac_cv_env_CXXFLAGS_value=$CXXFLAGS ac_env_LDFLAGS_set=${LDFLAGS+set} ac_env_LDFLAGS_value=$LDFLAGS ac_cv_env_LDFLAGS_set=${LDFLAGS+set} ac_cv_env_LDFLAGS_value=$LDFLAGS ac_env_CPPFLAGS_set=${CPPFLAGS+set} ac_env_CPPFLAGS_value=$CPPFLAGS ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} ac_cv_env_CPPFLAGS_value=$CPPFLAGS ac_env_CXXCPP_set=${CXXCPP+set} ac_env_CXXCPP_value=$CXXCPP ac_cv_env_CXXCPP_set=${CXXCPP+set} ac_cv_env_CXXCPP_value=$CXXCPP ac_env_CC_set=${CC+set} ac_env_CC_value=$CC ac_cv_env_CC_set=${CC+set} ac_cv_env_CC_value=$CC ac_env_CFLAGS_set=${CFLAGS+set} ac_env_CFLAGS_value=$CFLAGS ac_cv_env_CFLAGS_set=${CFLAGS+set} ac_cv_env_CFLAGS_value=$CFLAGS ac_env_CPP_set=${CPP+set} ac_env_CPP_value=$CPP ac_cv_env_CPP_set=${CPP+set} ac_cv_env_CPP_value=$CPP # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures this package to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] _ACEOF cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --datadir=DIR read-only architecture-independent data [PREFIX/share] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --infodir=DIR info documentation [PREFIX/info] --mandir=DIR man documentation [PREFIX/man] _ACEOF cat <<\_ACEOF X features: --x-includes=DIR X include files are in DIR --x-libraries=DIR X library files are in DIR _ACEOF fi if test -n "$ac_init_help"; then cat <<\_ACEOF Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-x use the X Window System Some influential environment variables: CXX C++ compiler command CXXFLAGS C++ compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CXXCPP C++ preprocessor CC C compiler command CFLAGS C compiler flags CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. _ACEOF fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. ac_popdir=`pwd` for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d $ac_dir || continue ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. if test -f $ac_srcdir/configure.gnu; then echo $SHELL $ac_srcdir/configure.gnu --help=recursive elif test -f $ac_srcdir/configure; then echo $SHELL $ac_srcdir/configure --help=recursive elif test -f $ac_srcdir/configure.ac || test -f $ac_srcdir/configure.in; then echo $ac_configure --help else echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi cd $ac_popdir done fi test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF Copyright (C) 2003 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit 0 fi exec 5>config.log cat >&5 <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by $as_me, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ _ACEOF { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` hostinfo = `(hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. echo "PATH: $as_dir" done } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_sep= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; 2) ac_configure_args1="$ac_configure_args1 '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" # Get rid of the leading space. ac_sep=" " ;; esac done done $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Be sure not to use single quotes in there, as some shells, # such as our DU 5.0 friend, will then `close' the trap. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX echo # The following way of writing the cache mishandles newlines in values, { (set) 2>&1 | case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } echo cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX echo for ac_var in $ac_subst_vars do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX ## ------------- ## ## Output files. ## ## ------------- ## _ASBOX echo for ac_var in $ac_subst_files do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo fi if test -s confdefs.h; then cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX echo sed "/^$/d" confdefs.h | sort echo fi test "$ac_signal" != 0 && echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 rm -f core *.core && rm -rf conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -rf conftest* confdefs.h # AIX cpp loses on an empty file, so make sure it contains at least a newline. echo >confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. if test -z "$CONFIG_SITE"; then if test "x$prefix" != xNONE; then CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" else CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" fi fi for ac_site_file in $CONFIG_SITE; do if test -r "$ac_site_file"; then { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special # files actually), so we avoid doing that. if test -f "$cache_file"; then { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . $cache_file;; *) . ./$cache_file;; esac fi else { echo "$as_me:$LINENO: creating cache $cache_file" >&5 echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in `(set) 2>&1 | sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val="\$ac_cv_env_${ac_var}_value" eval ac_new_val="\$ac_env_${ac_var}_value" case $ac_old_set,$ac_new_set in set,) { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} ac_cache_corrupted=: fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 echo "$as_me: error: changes in the environment can compromise the build" >&2;} { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=cc ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu if test -n "$ac_tool_prefix"; then for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CXX"; then ac_cv_prog_CXX="$CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then echo "$as_me:$LINENO: result: $CXX" >&5 echo "${ECHO_T}$CXX" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CXX"; then ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CXX="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 echo "${ECHO_T}$ac_ct_CXX" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$ac_ct_CXX" && break done test -n "$ac_ct_CXX" || ac_ct_CXX="g++" CXX=$ac_ct_CXX fi # Provide some information about the compiler. echo "$as_me:$LINENO:" \ "checking for C++ compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 (eval $ac_compiler --version &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 (eval $ac_compiler -v &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 (eval $ac_compiler -V &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5 echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 (eval $ac_link_default) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # Find the output, starting from the most likely. This scheme is # not robust to junk in `.', hence go to wildcards (a.*) only as a last # resort. # Be careful to initialize this variable, since it used to be cached. # Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. ac_cv_exeext= # b.out is created by i960 compilers. for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; conftest.$ac_ext ) # This is the source file. ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` # FIXME: I believe we export ac_cv_exeext for Libtool, # but it would be cool to find out if it's true. Does anybody # maintain Libtool? --akim. export ac_cv_exeext break;; * ) break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: C++ compiler cannot create executables See \`config.log' for more details." >&5 echo "$as_me: error: C++ compiler cannot create executables See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } fi ac_exeext=$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_file" >&5 echo "${ECHO_T}$ac_file" >&6 # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5 echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { echo "$as_me:$LINENO: error: cannot run C++ compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&5 echo "$as_me: error: cannot run C++ compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi fi fi echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $cross_compiling" >&5 echo "${ECHO_T}$cross_compiling" >&6 echo "$as_me:$LINENO: checking for suffix of executables" >&5 echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` export ac_cv_exeext break;; * ) break;; esac done else { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 echo "${ECHO_T}$ac_cv_exeext" >&6 rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT echo "$as_me:$LINENO: checking for suffix of object files" >&5 echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 echo "${ECHO_T}$ac_cv_objext" >&6 OBJEXT=$ac_cv_objext ac_objext=$OBJEXT echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 if test "${ac_cv_cxx_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 GXX=`test $ac_compiler_gnu = yes && echo yes` ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS CXXFLAGS="-g" echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cxx_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_prog_cxx_g=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS elif test $ac_cv_prog_cxx_g = yes; then if test "$GXX" = yes; then CXXFLAGS="-g -O2" else CXXFLAGS="-g" fi else if test "$GXX" = yes; then CXXFLAGS="-O2" else CXXFLAGS= fi fi for ac_declaration in \ '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ 'extern "C" void exit (int);' \ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration #include int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 continue fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then echo '#ifdef __cplusplus' >>confdefs.h echo $ac_declaration >>confdefs.h echo '#endif' >>confdefs.h fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=cc ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5 echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6 if test -z "$CXXCPP"; then if test "${ac_cv_prog_CXXCPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # Double quotes because CXXCPP needs to be expanded for CXXCPP in "$CXX -E" "/lib/cpp" do ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_cxx_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_cxx_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then break fi done ac_cv_prog_CXXCPP=$CXXCPP fi CXXCPP=$ac_cv_prog_CXXCPP else ac_cv_prog_CXXCPP=$CXXCPP fi echo "$as_me:$LINENO: result: $CXXCPP" >&5 echo "${ECHO_T}$CXXCPP" >&6 ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_cxx_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_cxx_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { echo "$as_me:$LINENO: error: C++ preprocessor \"$CXXCPP\" fails sanity check See \`config.log' for more details." >&5 echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$ac_ct_CC" && break done CC=$ac_ct_CC fi fi test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. echo "$as_me:$LINENO:" \ "checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 (eval $ac_compiler --version &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 (eval $ac_compiler -v &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 (eval $ac_compiler -V &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS CFLAGS="-g" echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_prog_cc_g=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 if test "${ac_cv_prog_cc_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std1 is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std1. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF # Don't try gcc -ansi; that turns off useful extensions and # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 # HP-UX 10.20 and later -Ae # HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC fi case "x$ac_cv_prog_cc_stdc" in x|xno) echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6 ;; *) echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 CC="$CC $ac_cv_prog_cc_stdc" ;; esac # Some people use a C++ compiler to compile C. Since we use `exit', # in C++ we need to declare it. In case someone uses the same compiler # for both compiling C and C++ we need to have the C++ compiler decide # the declaration of exit, since it's the most demanding environment. cat >conftest.$ac_ext <<_ACEOF #ifndef __cplusplus choke me #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ 'extern "C" void exit (int);' \ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration #include int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 continue fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then echo '#ifdef __cplusplus' >>confdefs.h echo $ac_declaration >>confdefs.h echo '#endif' >>confdefs.h fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test "${ac_cv_prog_CPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi echo "$as_me:$LINENO: result: $CPP" >&5 echo "${ECHO_T}$CPP" >&6 ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&5 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking for X" >&5 echo $ECHO_N "checking for X... $ECHO_C" >&6 # Check whether --with-x or --without-x was given. if test "${with_x+set}" = set; then withval="$with_x" fi; # $have_x is `yes', `no', `disabled', or empty when we do not yet know. if test "x$with_x" = xno; then # The user explicitly disabled X. have_x=disabled else if test "x$x_includes" != xNONE && test "x$x_libraries" != xNONE; then # Both variables are already set. have_x=yes else if test "${ac_cv_have_x+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # One or both of the vars are not set, and there is no cached value. ac_x_includes=no ac_x_libraries=no rm -fr conftest.dir if mkdir conftest.dir; then cd conftest.dir # Make sure to not put "make" in the Imakefile rules, since we grep it out. cat >Imakefile <<'_ACEOF' acfindx: @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"' _ACEOF if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then # GNU make sometimes prints "make[1]: Entering...", which would confuse us. eval `${MAKE-make} acfindx 2>/dev/null | grep -v make` # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. for ac_extension in a so sl; do if test ! -f $ac_im_usrlibdir/libX11.$ac_extension && test -f $ac_im_libdir/libX11.$ac_extension; then ac_im_usrlibdir=$ac_im_libdir; break fi done # Screen out bogus values from the imake configuration. They are # bogus both because they are the default anyway, and because # using them would break gcc on systems where it needs fixed includes. case $ac_im_incroot in /usr/include) ;; *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;; esac case $ac_im_usrlibdir in /usr/lib | /lib) ;; *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;; esac fi cd .. rm -fr conftest.dir fi # Standard set of common directories for X headers. # Check X11 before X11Rn because it is often a symlink to the current release. ac_x_header_dirs=' /usr/X11/include /usr/X11R6/include /usr/X11R5/include /usr/X11R4/include /usr/include/X11 /usr/include/X11R6 /usr/include/X11R5 /usr/include/X11R4 /usr/local/X11/include /usr/local/X11R6/include /usr/local/X11R5/include /usr/local/X11R4/include /usr/local/include/X11 /usr/local/include/X11R6 /usr/local/include/X11R5 /usr/local/include/X11R4 /usr/X386/include /usr/x386/include /usr/XFree86/include/X11 /usr/include /usr/local/include /usr/unsupported/include /usr/athena/include /usr/local/x11r5/include /usr/lpp/Xamples/include /usr/openwin/include /usr/openwin/share/include' if test "$ac_x_includes" = no; then # Guess where to find include files, by looking for Intrinsic.h. # First, try using that file with no special directory specified. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # We can compile using X headers with no special include directory. ac_x_includes= else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 for ac_dir in $ac_x_header_dirs; do if test -r "$ac_dir/X11/Intrinsic.h"; then ac_x_includes=$ac_dir break fi done fi rm -f conftest.err conftest.$ac_ext fi # $ac_x_includes = no if test "$ac_x_libraries" = no; then # Check for the libraries. # See if we find them without any special options. # Don't add to $LIBS permanently. ac_save_LIBS=$LIBS LIBS="-lXt $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { XtMalloc (0) ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then LIBS=$ac_save_LIBS # We can link X programs with no special library path. ac_x_libraries= else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 LIBS=$ac_save_LIBS for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g` do # Don't even attempt the hair of trying to link an X program! for ac_extension in a so sl; do if test -r $ac_dir/libXt.$ac_extension; then ac_x_libraries=$ac_dir break 2 fi done done fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi # $ac_x_libraries = no if test "$ac_x_includes" = no || test "$ac_x_libraries" = no; then # Didn't find X anywhere. Cache the known absence of X. ac_cv_have_x="have_x=no" else # Record where we found X for the cache. ac_cv_have_x="have_x=yes \ ac_x_includes=$ac_x_includes ac_x_libraries=$ac_x_libraries" fi fi fi eval "$ac_cv_have_x" fi # $with_x != no if test "$have_x" != yes; then echo "$as_me:$LINENO: result: $have_x" >&5 echo "${ECHO_T}$have_x" >&6 no_x=yes else # If each of the values was on the command line, it overrides each guess. test "x$x_includes" = xNONE && x_includes=$ac_x_includes test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries # Update the cache value to reflect the command line values. ac_cv_have_x="have_x=yes \ ac_x_includes=$x_includes ac_x_libraries=$x_libraries" echo "$as_me:$LINENO: result: libraries $x_libraries, headers $x_includes" >&5 echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6 fi if test "$no_x" = yes; then # Not all programs may use this symbol, but it does not hurt to define it. cat >>confdefs.h <<\_ACEOF #define X_DISPLAY_MISSING 1 _ACEOF X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS= else if test -n "$x_includes"; then X_CFLAGS="$X_CFLAGS -I$x_includes" fi # It would also be nice to do this for all -L options, not just this one. if test -n "$x_libraries"; then X_LIBS="$X_LIBS -L$x_libraries" # For Solaris; some versions of Sun CC require a space after -R and # others require no space. Words are not sufficient . . . . case `(uname -sr) 2>/dev/null` in "SunOS 5"*) echo "$as_me:$LINENO: checking whether -R must be followed by a space" >&5 echo $ECHO_N "checking whether -R must be followed by a space... $ECHO_C" >&6 ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_R_nospace=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_R_nospace=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test $ac_R_nospace = yes; then echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 X_LIBS="$X_LIBS -R$x_libraries" else LIBS="$ac_xsave_LIBS -R $x_libraries" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_R_space=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_R_space=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test $ac_R_space = yes; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 X_LIBS="$X_LIBS -R $x_libraries" else echo "$as_me:$LINENO: result: neither works" >&5 echo "${ECHO_T}neither works" >&6 fi fi LIBS=$ac_xsave_LIBS esac fi # Check for system-dependent libraries X programs must link with. # Do this before checking for the system-independent R6 libraries # (-lICE), since we may need -lsocket or whatever for X linking. if test "$ISC" = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet" else # Martyn Johnson says this is needed for Ultrix, if the X # libraries were built with DECnet support. And Karl Berry says # the Alpha needs dnet_stub (dnet does not exist). ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char XOpenDisplay (); int main () { XOpenDisplay (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 echo "$as_me:$LINENO: checking for dnet_ntoa in -ldnet" >&5 echo $ECHO_N "checking for dnet_ntoa in -ldnet... $ECHO_C" >&6 if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldnet $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char dnet_ntoa (); int main () { dnet_ntoa (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_dnet_dnet_ntoa=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_dnet_dnet_ntoa=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_dnet_dnet_ntoa" >&5 echo "${ECHO_T}$ac_cv_lib_dnet_dnet_ntoa" >&6 if test $ac_cv_lib_dnet_dnet_ntoa = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" fi if test $ac_cv_lib_dnet_dnet_ntoa = no; then echo "$as_me:$LINENO: checking for dnet_ntoa in -ldnet_stub" >&5 echo $ECHO_N "checking for dnet_ntoa in -ldnet_stub... $ECHO_C" >&6 if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldnet_stub $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char dnet_ntoa (); int main () { dnet_ntoa (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_dnet_stub_dnet_ntoa=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_dnet_stub_dnet_ntoa=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5 echo "${ECHO_T}$ac_cv_lib_dnet_stub_dnet_ntoa" >&6 if test $ac_cv_lib_dnet_stub_dnet_ntoa = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" fi fi fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$ac_xsave_LIBS" # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT, # to get the SysV transport functions. # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4) # needs -lnsl. # The nsl library prevents programs from opening the X display # on Irix 5.2, according to T.E. Dickey. # The functions gethostbyname, getservbyname, and inet_addr are # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking. echo "$as_me:$LINENO: checking for gethostbyname" >&5 echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6 if test "${ac_cv_func_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define gethostbyname to an innocuous variant, in case declares gethostbyname. For example, HP-UX 11i declares gettimeofday. */ #define gethostbyname innocuous_gethostbyname /* System header to define __stub macros and hopefully few prototypes, which can conflict with char gethostbyname (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef gethostbyname /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_gethostbyname) || defined (__stub___gethostbyname) choke me #else char (*f) () = gethostbyname; #endif #ifdef __cplusplus } #endif int main () { return f != gethostbyname; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6 if test $ac_cv_func_gethostbyname = no; then echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5 echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6 if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lnsl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); int main () { gethostbyname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_nsl_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_nsl_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6 if test $ac_cv_lib_nsl_gethostbyname = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" fi if test $ac_cv_lib_nsl_gethostbyname = no; then echo "$as_me:$LINENO: checking for gethostbyname in -lbsd" >&5 echo $ECHO_N "checking for gethostbyname in -lbsd... $ECHO_C" >&6 if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lbsd $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); int main () { gethostbyname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_bsd_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_bsd_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_bsd_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_lib_bsd_gethostbyname" >&6 if test $ac_cv_lib_bsd_gethostbyname = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd" fi fi fi # lieder@skyler.mavd.honeywell.com says without -lsocket, # socket/setsockopt and other routines are undefined under SCO ODT # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary # on later versions), says Simon Leinen: it contains gethostby* # variants that don't use the name server (or something). -lsocket # must be given before -lnsl if both are needed. We assume that # if connect needs -lnsl, so does gethostbyname. echo "$as_me:$LINENO: checking for connect" >&5 echo $ECHO_N "checking for connect... $ECHO_C" >&6 if test "${ac_cv_func_connect+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define connect to an innocuous variant, in case declares connect. For example, HP-UX 11i declares gettimeofday. */ #define connect innocuous_connect /* System header to define __stub macros and hopefully few prototypes, which can conflict with char connect (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef connect /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char connect (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_connect) || defined (__stub___connect) choke me #else char (*f) () = connect; #endif #ifdef __cplusplus } #endif int main () { return f != connect; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_connect=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_connect=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_connect" >&5 echo "${ECHO_T}$ac_cv_func_connect" >&6 if test $ac_cv_func_connect = no; then echo "$as_me:$LINENO: checking for connect in -lsocket" >&5 echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6 if test "${ac_cv_lib_socket_connect+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket $X_EXTRA_LIBS $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char connect (); int main () { connect (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_connect=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_connect=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_connect" >&5 echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6 if test $ac_cv_lib_socket_connect = yes; then X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" fi fi # Guillermo Gomez says -lposix is necessary on A/UX. echo "$as_me:$LINENO: checking for remove" >&5 echo $ECHO_N "checking for remove... $ECHO_C" >&6 if test "${ac_cv_func_remove+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define remove to an innocuous variant, in case declares remove. For example, HP-UX 11i declares gettimeofday. */ #define remove innocuous_remove /* System header to define __stub macros and hopefully few prototypes, which can conflict with char remove (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef remove /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char remove (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_remove) || defined (__stub___remove) choke me #else char (*f) () = remove; #endif #ifdef __cplusplus } #endif int main () { return f != remove; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_remove=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_remove=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_remove" >&5 echo "${ECHO_T}$ac_cv_func_remove" >&6 if test $ac_cv_func_remove = no; then echo "$as_me:$LINENO: checking for remove in -lposix" >&5 echo $ECHO_N "checking for remove in -lposix... $ECHO_C" >&6 if test "${ac_cv_lib_posix_remove+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lposix $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char remove (); int main () { remove (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_posix_remove=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_posix_remove=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_posix_remove" >&5 echo "${ECHO_T}$ac_cv_lib_posix_remove" >&6 if test $ac_cv_lib_posix_remove = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" fi fi # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. echo "$as_me:$LINENO: checking for shmat" >&5 echo $ECHO_N "checking for shmat... $ECHO_C" >&6 if test "${ac_cv_func_shmat+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define shmat to an innocuous variant, in case declares shmat. For example, HP-UX 11i declares gettimeofday. */ #define shmat innocuous_shmat /* System header to define __stub macros and hopefully few prototypes, which can conflict with char shmat (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef shmat /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char shmat (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_shmat) || defined (__stub___shmat) choke me #else char (*f) () = shmat; #endif #ifdef __cplusplus } #endif int main () { return f != shmat; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_shmat=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_shmat=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_shmat" >&5 echo "${ECHO_T}$ac_cv_func_shmat" >&6 if test $ac_cv_func_shmat = no; then echo "$as_me:$LINENO: checking for shmat in -lipc" >&5 echo $ECHO_N "checking for shmat in -lipc... $ECHO_C" >&6 if test "${ac_cv_lib_ipc_shmat+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lipc $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char shmat (); int main () { shmat (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_ipc_shmat=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_ipc_shmat=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_ipc_shmat" >&5 echo "${ECHO_T}$ac_cv_lib_ipc_shmat" >&6 if test $ac_cv_lib_ipc_shmat = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" fi fi fi # Check for libraries that X11R6 Xt/Xaw programs need. ac_save_LDFLAGS=$LDFLAGS test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries" # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to # check for ICE first), but we must link in the order -lSM -lICE or # we get undefined symbols. So assume we have SM if we have ICE. # These have to be linked with before -lX11, unlike the other # libraries we check for below, so use a different variable. # John Interrante, Karl Berry echo "$as_me:$LINENO: checking for IceConnectionNumber in -lICE" >&5 echo $ECHO_N "checking for IceConnectionNumber in -lICE... $ECHO_C" >&6 if test "${ac_cv_lib_ICE_IceConnectionNumber+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lICE $X_EXTRA_LIBS $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char IceConnectionNumber (); int main () { IceConnectionNumber (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_ICE_IceConnectionNumber=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_ICE_IceConnectionNumber=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5 echo "${ECHO_T}$ac_cv_lib_ICE_IceConnectionNumber" >&6 if test $ac_cv_lib_ICE_IceConnectionNumber = yes; then X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE" fi LDFLAGS=$ac_save_LDFLAGS fi # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $RANLIB in [\\/]* | ?:[\\/]*) ac_cv_path_RANLIB="$RANLIB" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_RANLIB="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done ;; esac fi RANLIB=$ac_cv_path_RANLIB if test -n "$RANLIB"; then echo "$as_me:$LINENO: result: $RANLIB" >&5 echo "${ECHO_T}$RANLIB" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test x$RANLIB = x; then RANLIB=":" fi LPR_COMMAND="" LPR_CFLAGS="-DLPR_COMMAND=\\\"/bin/lpr\\\"" # Extract the first word of "lpr", so it can be a program name with args. set dummy lpr; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_LPR_COMMAND+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $LPR_COMMAND in [\\/]* | ?:[\\/]*) ac_cv_path_LPR_COMMAND="$LPR_COMMAND" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_LPR_COMMAND="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done ;; esac fi LPR_COMMAND=$ac_cv_path_LPR_COMMAND if test -n "$LPR_COMMAND"; then echo "$as_me:$LINENO: result: $LPR_COMMAND" >&5 echo "${ECHO_T}$LPR_COMMAND" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test x$LPR_COMMAND = x; then LPR_CFLAGS="-DLPR_COMMAND=\\\"/bin/lpr\\\"" else LPR_CFLAGS="-DLPR_COMMAND=\\\"${LPR_COMMAND}\\\"" fi echo "$as_me:$LINENO: checking for egrep" >&5 echo $ECHO_N "checking for egrep... $ECHO_C" >&6 if test "${ac_cv_prog_egrep+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if echo a | (grep -E '(a|b)') >/dev/null 2>&1 then ac_cv_prog_egrep='grep -E' else ac_cv_prog_egrep='egrep' fi fi echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 echo "${ECHO_T}$ac_cv_prog_egrep" >&6 EGREP=$ac_cv_prog_egrep echo "$as_me:$LINENO: checking for ANSI C header files" >&5 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_header_stdc=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 echo "${ECHO_T}$ac_cv_header_stdc" >&6 if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 _ACEOF fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_Header=no" fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------------------ ## ## Report this to the AC_PACKAGE_NAME lists. ## ## ------------------------------------------ ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 if test "${ac_cv_c_const+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { /* FIXME: Include the comments suggested by Paul. */ #ifndef __cplusplus /* Ultrix mips cc rejects this. */ typedef int charset[2]; const charset x; /* SunOS 4.1.1 cc rejects this. */ char const *const *ccp; char **p; /* NEC SVR4.0.2 mips cc rejects this. */ struct point {int x, y;}; static struct point const zero = {0,0}; /* AIX XL C 1.02.0.0 rejects this. It does not let you subtract one const X* pointer from another in an arm of an if-expression whose if-part is not a constant expression */ const char *g = "string"; ccp = &g + (g ? g-g : 0); /* HPUX 7.0 cc rejects these. */ ++ccp; p = (char**) ccp; ccp = (char const *const *) p; { /* SCO 3.2v4 cc rejects this. */ char *t; char const *s = 0 ? (char *) 0 : (char const *) 0; *t++ = 0; } { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ int x[] = {25, 17}; const int *foo = &x[0]; ++foo; } { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ typedef const int *iptr; iptr p = 0; ++p; } { /* AIX XL C 1.02.0.0 rejects this saying "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ struct s { int j; const int *ap[3]; }; struct s *b; b->j = 5; } { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ const int foo = 10; } #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_const=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_c_const=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 echo "${ECHO_T}$ac_cv_c_const" >&6 if test $ac_cv_c_const = no; then cat >>confdefs.h <<\_ACEOF #define const _ACEOF fi echo "$as_me:$LINENO: checking for inline" >&5 echo $ECHO_N "checking for inline... $ECHO_C" >&6 if test "${ac_cv_c_inline+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifndef __cplusplus typedef int foo_t; static $ac_kw foo_t static_foo () {return 0; } $ac_kw foo_t foo () {return 0; } #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_inline=$ac_kw; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done fi echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 echo "${ECHO_T}$ac_cv_c_inline" >&6 case $ac_cv_c_inline in inline | yes) ;; *) case $ac_cv_c_inline in no) ac_val=;; *) ac_val=$ac_cv_c_inline;; esac cat >>confdefs.h <<_ACEOF #ifndef __cplusplus #define inline $ac_val #endif _ACEOF ;; esac for ac_func in strtol do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking long long " >&5 echo $ECHO_N "checking long long ... $ECHO_C" >&6 HAVE_LONG_LONG= cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { u_int64_t a; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then HAVE_LONG_LONG=-DHAVE_LONG_LONG else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { unsigned long long a; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then HAVE_LONG_LONG=-DHAVE_LONG_LONG else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test x$HAVE_LONG_LONG = x ; then echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 else echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 fi echo "$as_me:$LINENO: checking memmove " >&5 echo $ECHO_N "checking memmove ... $ECHO_C" >&6 NO_MEMMOVE="-DNO_MEMMOVE" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { char*a; char*b; memmove(a,b,1); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then NO_MEMMOVE= else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test x$NO_MEMMOVE = x ; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CPPFLAGS="$HAVE_LONG_LONG $NO_MEMMOVE $CPPFLAGS" ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu DL_FLAGS=-ldl cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { dlopen("", 0); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then DL_FLAGS= else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test x$DL_FLAGS = x-ldl then SAVELD=$LIBS LIBS="$SAVELD -ldl" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { dlopen("", 0); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then DL_FLAGS=-ldl else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 DL_FLAGS= fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$SAVELD $DL_FLAGS" fi SOCKET_FLAGS=-lsocket cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { socket(1,1,1); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then SOCKET_FLAGS= else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test x$SOCKET_FLAGS = x-lsocket then SAVELD=$LIBS LIBS="$SAVELD -lsocket" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { sockett(1,1,1); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then SOCKET_FLAGS=-lsocket else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 SOCKET_FLAGS= fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$SAVELD $SOCKET_FLAGS" fi echo "$as_me:$LINENO: checking libsocket " >&5 echo $ECHO_N "checking libsocket ... $ECHO_C" >&6 if test x$SOCKET_FLAGS = x-lsocket then echo "$as_me:$LINENO: result: needed" >&5 echo "${ECHO_T}needed" >&6 else echo "$as_me:$LINENO: result: not needed" >&5 echo "${ECHO_T}not needed" >&6 fi echo "$as_me:$LINENO: checking nsl " >&5 echo $ECHO_N "checking nsl ... $ECHO_C" >&6 NSL_FLAGS=-lnsl cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { gethostbyname("localhost"); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then NSL_FLAGS= else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test x$NSL_FLAGS = x-nsl then SAVELD=$LIBS LIBS="$SAVELD -lnsl" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { gethostbyname("localhost"); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then NSL_FLAGS=-lnsl else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 NSL_FLAGS= fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$SAVELD $NSL_FLAGS" fi if test x$NSL_FLAGS = x-nsl then echo "$as_me:$LINENO: result: needed" >&5 echo "${ECHO_T}needed" >&6 else echo "$as_me:$LINENO: result: not needed" >&5 echo "${ECHO_T}not needed" >&6 fi MSGMERGE= # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_MSGMERGE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $MSGMERGE in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done ;; esac fi MSGMERGE=$ac_cv_path_MSGMERGE if test -n "$MSGMERGE"; then echo "$as_me:$LINENO: result: $MSGMERGE" >&5 echo "${ECHO_T}$MSGMERGE" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test x$MSGMERGE = x; then MSGMERGE=":" fi GETTEXT_CFLAGS= GETTEXT_LFLAGS= TOPDIR=`pwd` cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { setlocale(LC_ALL,"C"); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then HAVE_LOCALE=-DHAVE_LOCALE else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 HAVE_LOCALE= fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext SAVELD=$LIBS SAVECFLAGS=$CLFAGS LIBS="$X_EXTRA_LIBS $X_LIBS -lX11 $LIBS" CLFAGS="$X_CFLAGS $CLFAGS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include extern char * XSetIMValues( #if NeedVarargsPrototypes XIM /* im */, ... #endif ); int main () { XSetIMValues (0, XNDestroyCallback , 0, 0); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then HAVE_SET_IM_VALUES=-DHAVE_SET_IM_VALUES; NEED_SET_IM_VALUES_PROTO=-DNEED_SET_IM_VALUES_PROTO else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 NEED_SET_IM_VALUES_PROTO= fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test x$HAVE_SET_IM_VALUES = x ; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { XSetIMValues (0, XNDestroyCallback , 0, 0); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then HAVE_SET_IM_VALUES=-DHAVE_SET_IM_VALUES else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 HAVE_SET_IM_VALUES= fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi LIBS=$SAVELD CLFAGS=$SAVECFLAGS echo "$as_me:$LINENO: checking locale " >&5 echo $ECHO_N "checking locale ... $ECHO_C" >&6 if test x$HAVE_LOCALE = x ; then echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 else echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 fi if test x$no_x != xyes then echo "$as_me:$LINENO: checking XSetIMValues " >&5 echo $ECHO_N "checking XSetIMValues ... $ECHO_C" >&6 if test x$HAVE_SET_IM_VALUES = x ; then echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 else echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 fi fi # # Sorry guys this autoconf program is a monster - useful features are missing # cat > /tmp/gaspar$$.sh <<+ prefix=${prefix} if test ${prefix} = NONE then prefix=${ac_default_prefix} fi echo ${datadir}/yudit + YUDIT_DATA=`sh /tmp/gaspar$$.sh` /bin/rm -f /tmp/gaspar$$.sh # # Check if I can compile with cc # CAN_USE_CC="0" cat > /tmp/gaspar$$.cpp <<+ #include class A{ public: A(void) {}; ~A() {}; void print(void) { fprintf (stderr, "Hi\n"); } }; int main(int argc, char* argv) { A a; a.print(); // gcc 3.xx does not handle it without c++ A* aa = new A(); aa->print(); delete aa; try { throw A(); } catch (A& ea) {} return (0); } + echo "$as_me:$LINENO: checking c++ or c compiler to use " >&5 echo $ECHO_N "checking c++ or c compiler to use ... $ECHO_C" >&6 ${CC} -o /tmp/gaspar$$ /tmp/gaspar$$.cpp 2> /dev/null 1> /dev/null if test $? = 0 then CAN_USE_CC="1" echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 CXX=$CC else echo "$as_me:$LINENO: result: $CXX" >&5 echo "${ECHO_T}$CXX" >&6 fi /bin/rm -f /tmp/gaspar$$ /tmp/gaspar$$.cpp if test x$no_x = xyes then USE_X11=-DUSE_X11=0 X11_LIB= else USE_X11=-DUSE_X11=1 X11_LIB=-lX11 fi ac_config_files="$ac_config_files Makefile.conf uniconv/uniconv.1 uniprint/uniprint.1 yudit.properties doc/FAQ.TXT doc/vi/FAQ.TXT doc/de/FAQ.TXT doc/hu/FAQ.TXT doc/ko/FAQ.TXT doc/ja/FAQ.TXT doc/yi/FAQ.TXT doc/es/FAQ.TXT doc/fi/FAQ.TXT doc/ru/FAQ.TXT doc/te/FAQ.TXT doc/sr/FAQ.TXT doc/zh/FAQ.TXT doc/cs/FAQ.TXT doc/bg/FAQ.TXT doc/it/FAQ.TXT Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, don't put newlines in cache variables' values. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. { (set) 2>&1 | case `(ac_space=' '; set | grep ac_space) 2>&1` in *ac_space=\ *) # `set' does not quote correctly, so add quotes (double-quote # substitution turns \\\\ into \\, and sed turns \\ into \). sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } | sed ' t clear : clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ : end' >>confcache if diff $cache_file confcache >/dev/null 2>&1; then :; else if test -w $cache_file; then test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" cat confcache >$cache_file else echo "not updating unwritable cache $cache_file" fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=/{ s/:*\$(srcdir):*/:/; s/:*\${srcdir}:*/:/; s/:*@srcdir@:*/:/; s/^\([^=]*=[ ]*\):*/\1/; s/:*$//; s/^[^=]*=[ ]*$//; }' fi # Transform confdefs.h into DEFS. # Protect against shell expansion while executing Makefile rules. # Protect against Makefile macro expansion. # # If the first sed substitution is executed (which looks for macros that # take arguments), then we branch to the quote section. Otherwise, # look for a macro that doesn't take arguments. cat >confdef2opt.sed <<\_ACEOF t clear : clear s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g t quote s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g t quote d : quote s,[ `~#$^&*(){}\\|;'"<>?],\\&,g s,\[,\\&,g s,\],\\&,g s,\$,$$,g p _ACEOF # We use echo to avoid assuming a particular line-breaking character. # The extra dot is to prevent the shell from consuming trailing # line-breaks from the sub-command output. A line-break within # single-quotes doesn't work because, if this script is created in a # platform that uses two characters for line-breaks (e.g., DOS), tr # would break. ac_LF_and_DOT=`echo; echo .` DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` rm -f confdef2opt.sed ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_i=`echo "$ac_i" | sed 's/\$U\././;s/\.o$//;s/\.obj$//'` # 2. Add them. ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs : ${CONFIG_STATUS=./config.status} ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >$CONFIG_STATUS <<_ACEOF #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH exec 6>&1 # Open the log real soon, to keep \$[0] and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. Logging --version etc. is OK. exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX } >&5 cat >&5 <<_CSEOF This file was extended by $as_me, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ _CSEOF echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 echo >&5 _ACEOF # Files that config.status was made for. if test -n "$ac_config_files"; then echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS fi if test -n "$ac_config_headers"; then echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS fi if test -n "$ac_config_links"; then echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS fi if test -n "$ac_config_commands"; then echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS fi cat >>$CONFIG_STATUS <<\_ACEOF ac_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. Usage: $0 [OPTIONS] [FILE]... -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE Configuration files: $config_files Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ config.status configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2003 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." srcdir=$srcdir _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # If no file are specified by the user, then we need to provide default # value. By we need to know if files were specified by the user. ac_need_defaults=: while test $# != 0 do case $1 in --*=*) ac_option=`expr "x$1" : 'x\([^=]*\)='` ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` ac_shift=: ;; -*) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; *) # This is not an option, so the user has probably given explicit # arguments. ac_option=$1 ac_need_defaults=false;; esac case $ac_option in # Handling of the options. _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --vers* | -V ) echo "$ac_cs_version"; exit 0 ;; --he | --h) # Conflict between --help and --header { { echo "$as_me:$LINENO: error: ambiguous option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; };; --help | --hel | -h ) echo "$ac_cs_usage"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift CONFIG_FILES="$CONFIG_FILES $ac_optarg" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; } ;; *) ac_config_targets="$ac_config_targets $1" ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF if \$ac_cs_recheck; then echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_config_target in $ac_config_targets do case "$ac_config_target" in # Handling of arguments. "Makefile.conf" ) CONFIG_FILES="$CONFIG_FILES Makefile.conf" ;; "uniconv/uniconv.1" ) CONFIG_FILES="$CONFIG_FILES uniconv/uniconv.1" ;; "uniprint/uniprint.1" ) CONFIG_FILES="$CONFIG_FILES uniprint/uniprint.1" ;; "yudit.properties" ) CONFIG_FILES="$CONFIG_FILES yudit.properties" ;; "doc/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/FAQ.TXT" ;; "doc/vi/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/vi/FAQ.TXT" ;; "doc/de/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/de/FAQ.TXT" ;; "doc/hu/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/hu/FAQ.TXT" ;; "doc/ko/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/ko/FAQ.TXT" ;; "doc/ja/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/ja/FAQ.TXT" ;; "doc/yi/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/yi/FAQ.TXT" ;; "doc/es/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/es/FAQ.TXT" ;; "doc/fi/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/fi/FAQ.TXT" ;; "doc/ru/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/ru/FAQ.TXT" ;; "doc/te/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/te/FAQ.TXT" ;; "doc/sr/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/sr/FAQ.TXT" ;; "doc/zh/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/zh/FAQ.TXT" ;; "doc/cs/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/cs/FAQ.TXT" ;; "doc/bg/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/bg/FAQ.TXT" ;; "doc/it/FAQ.TXT" ) CONFIG_FILES="$CONFIG_FILES doc/it/FAQ.TXT" ;; "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason to put it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Create a temporary directory, and hook for its removal unless debugging. $debug || { trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 trap '{ (exit 1); exit 1; }' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { tmp=./confstat$$-$RANDOM (umask 077 && mkdir $tmp) } || { echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } _ACEOF cat >>$CONFIG_STATUS <<_ACEOF # # CONFIG_FILES section. # # No need to generate the scripts if there are no CONFIG_FILES. # This happens for instance when ./config.status config.h if test -n "\$CONFIG_FILES"; then # Protect against being on the right side of a sed subst in config.status. sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF s,@SHELL@,$SHELL,;t t s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t s,@exec_prefix@,$exec_prefix,;t t s,@prefix@,$prefix,;t t s,@program_transform_name@,$program_transform_name,;t t s,@bindir@,$bindir,;t t s,@sbindir@,$sbindir,;t t s,@libexecdir@,$libexecdir,;t t s,@datadir@,$datadir,;t t s,@sysconfdir@,$sysconfdir,;t t s,@sharedstatedir@,$sharedstatedir,;t t s,@localstatedir@,$localstatedir,;t t s,@libdir@,$libdir,;t t s,@includedir@,$includedir,;t t s,@oldincludedir@,$oldincludedir,;t t s,@infodir@,$infodir,;t t s,@mandir@,$mandir,;t t s,@build_alias@,$build_alias,;t t s,@host_alias@,$host_alias,;t t s,@target_alias@,$target_alias,;t t s,@DEFS@,$DEFS,;t t s,@ECHO_C@,$ECHO_C,;t t s,@ECHO_N@,$ECHO_N,;t t s,@ECHO_T@,$ECHO_T,;t t s,@LIBS@,$LIBS,;t t s,@CXX@,$CXX,;t t s,@CXXFLAGS@,$CXXFLAGS,;t t s,@LDFLAGS@,$LDFLAGS,;t t s,@CPPFLAGS@,$CPPFLAGS,;t t s,@ac_ct_CXX@,$ac_ct_CXX,;t t s,@EXEEXT@,$EXEEXT,;t t s,@OBJEXT@,$OBJEXT,;t t s,@CXXCPP@,$CXXCPP,;t t s,@CC@,$CC,;t t s,@CFLAGS@,$CFLAGS,;t t s,@ac_ct_CC@,$ac_ct_CC,;t t s,@CPP@,$CPP,;t t s,@X_CFLAGS@,$X_CFLAGS,;t t s,@X_PRE_LIBS@,$X_PRE_LIBS,;t t s,@X_LIBS@,$X_LIBS,;t t s,@X_EXTRA_LIBS@,$X_EXTRA_LIBS,;t t s,@RANLIB@,$RANLIB,;t t s,@LPR_COMMAND@,$LPR_COMMAND,;t t s,@LPR_CFLAGS@,$LPR_CFLAGS,;t t s,@EGREP@,$EGREP,;t t s,@HAVE_LONG_LONG@,$HAVE_LONG_LONG,;t t s,@MSGMERGE@,$MSGMERGE,;t t s,@TOPDIR@,$TOPDIR,;t t s,@GETTEXT_CFLAGS@,$GETTEXT_CFLAGS,;t t s,@GETTEXT_LFLAGS@,$GETTEXT_LFLAGS,;t t s,@HAVE_LOCALE@,$HAVE_LOCALE,;t t s,@HAVE_SET_IM_VALUES@,$HAVE_SET_IM_VALUES,;t t s,@NEED_SET_IM_VALUES_PROTO@,$NEED_SET_IM_VALUES_PROTO,;t t s,@YUDIT_DATA@,$YUDIT_DATA,;t t s,@USE_X11@,$USE_X11,;t t s,@X11_LIB@,$X11_LIB,;t t s,@LIBOBJS@,$LIBOBJS,;t t s,@LTLIBOBJS@,$LTLIBOBJS,;t t CEOF _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # Split the substitutions into bite-sized pieces for seds with # small command number limits, like on Digital OSF/1 and HP-UX. ac_max_sed_lines=48 ac_sed_frag=1 # Number of current file. ac_beg=1 # First line for current file. ac_end=$ac_max_sed_lines # Line after last line for current file. ac_more_lines=: ac_sed_cmds= while $ac_more_lines; do if test $ac_beg -gt 1; then sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag else sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag fi if test ! -s $tmp/subs.frag; then ac_more_lines=false else # The purpose of the label and of the branching condition is to # speed up the sed processing (if there are no `@' at all, there # is no need to browse any of the substitutions). # These are the two extra sed commands mentioned above. (echo ':t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed if test -z "$ac_sed_cmds"; then ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" else ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" fi ac_sed_frag=`expr $ac_sed_frag + 1` ac_beg=$ac_end ac_end=`expr $ac_end + $ac_max_sed_lines` fi done if test -z "$ac_sed_cmds"; then ac_sed_cmds=cat fi fi # test -n "$CONFIG_FILES" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". case $ac_file in - | *:- | *:-:* ) # input from stdin cat >$tmp/stdin ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; * ) ac_file_in=$ac_file.in ;; esac # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. ac_dir=`(dirname "$ac_file") 2>/dev/null || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac if test x"$ac_file" != x-; then { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} rm -f "$ac_file" fi # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ if test x"$ac_file" = x-; then configure_input= else configure_input="$ac_file. " fi configure_input=$configure_input"Generated from `echo $ac_file_in | sed 's,.*/,,'` by configure." # First look for the input files in the build tree, otherwise in the # src tree. ac_file_inputs=`IFS=: for f in $ac_file_in; do case $f in -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo "$f";; *) # Relative if test -f "$f"; then # Build tree echo "$f" elif test -f "$srcdir/$f"; then # Source tree echo "$srcdir/$f" else # /dev/null tree { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; esac done` || { (exit 1); exit 1; } _ACEOF cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s,@configure_input@,$configure_input,;t t s,@srcdir@,$ac_srcdir,;t t s,@abs_srcdir@,$ac_abs_srcdir,;t t s,@top_srcdir@,$ac_top_srcdir,;t t s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t s,@builddir@,$ac_builddir,;t t s,@abs_builddir@,$ac_abs_builddir,;t t s,@top_builddir@,$ac_top_builddir,;t t s,@abs_top_builddir@,$ac_abs_top_builddir,;t t " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out rm -f $tmp/stdin if test x"$ac_file" != x-; then mv $tmp/out $ac_file else cat $tmp/out rm -f $tmp/out fi done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF { (exit 0); exit 0; } _ACEOF chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || { (exit 1); exit 1; } fi ./mytool/0000755000175000017500000000000011334661073012364 5ustar henrichhenrich./mytool/Makefile0000644000175000017500000000246311333154146014026 0ustar henrichhenrichinclude ../Makefile.conf MODULES=Main.o ProcessFile.o SUBDIRS=kmap mys uni hwd CPPFLAGS:=$(CPPFLAGS) -DHAVE_STRTOL ifeq ($(SPLATFORM),WINDOWS) OBJS=$(subst .o,.obj,$(MODULES)) SLIBS=/libpath:../stoolkit stoolkit.lib SWINLIBS=/libpath:../swindow MYLIBS=/link /subsystem:CONSOLE $(SWINLIBS) $(SLIBS) $(ALL_LIBS) else OBJS=$(MODULES) SLIBS=-L../stoolkit -lstoolkit SWINLIBS=-L../swindow -lswindow MYLIBS=$(SWINLIBS) $(SLIBS) $(ALL_LIBS) endif SUBDIRS_all:=$(foreach dir, $(SUBDIRS), $(dir)_all) SUBDIRS_clean:=$(foreach dir, $(SUBDIRS), $(dir)_clean) .PHONY:all clean config $(SUBDIRS_all) $(SUBDIRS_clean) all: mytool $(SUBDIRS_all) mytool: $(OBJS) $(LD) -o mytool $(OBJS) $(MYLIBS) %.o:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .o,.cpp,$@) %.obj:%.cpp $(CXX) -c $(CPPFLAGS) $(subst .obj,.cpp,$@) $(SUBDIRS_all): $(MAKE) -C $(patsubst %_all,%,$@) all clean: $(SUBDIRS_clean) rm -f *.o *.obj mytool mytool.exe depend: $(CXX) -M $(CPPFLAGS) $(patsubst %.o,%.cpp,$(OBJS)) > .depend install: rm -f $(DESTDIR)/$(bindir)/mytool @for i in $(SUBDIRS); do \ cd $$i; $(MAKE) install; cd ..; \ done $(INSTALL_PROGRAM) mytool $(DESTDIR)/$(bindir) $(INSTALL_DATA) mytool.1 $(DESTDIR)/$(mandir)/man1 $(SUBDIRS_clean): $(MAKE) -C $(patsubst %_clean,%,$@) clean ifeq (.depend, $(wildcard .depend)) include .depend endif ./mytool/hwd/0000755000175000017500000000000011333162373013144 5ustar henrichhenrich./mytool/hwd/kanji.hwd.patch10000644000175000017500000000114707532460064016132 0ustar henrichhenrich# # This is an utf-8 encoded patch file. # Fixes HI Handwriting Data # patch -p0 < this-file # Or on an installed tree (you don't need to recompile): # cd /usr/share/yudit/data # patch -p3 < this-file # # Gaspar Sinai # 2001-11-14 # *** kanji.hwd- Tue Nov 13 00:34:34 2001 --- kanji.hwd Tue Nov 13 00:35:08 2001 *************** *** 152,156 **** 04 日 BMFF|y4-b1! j4-b2! 04 反 FJFaC|a1-x2 - 04 比 FLAL 04 匹 FJLL 04 不 FABC --- 152,155 ---- *************** *** 172,175 **** --- 171,175 ---- 04 六 BFAC|x4-x3! 04 仂 ABMJ + 05 比 DBIAL 05 圧 FJFBF|b3-y4 05 以 BICAC ./mytool/hwd/Makefile0000644000175000017500000000256610723673260014621 0ustar henrichhenrich# Simple as that - we want utf-8 in our files. # # PLEASE READ documents in ../../doc/hwd # ====================================== # # Do not even try this unless you have yudit version 2.4.8beta7 or better # uniconv shift-jis was fixed there. # Gaspar Sinai # 2001-10-02 Tokyo # # http://www.kotnet.org/~skimo/kanji/gtkkanjipad-0.07.tar.gz # has strokedata.h and hanzidata.h. # I have them here too. include ../../Makefile.conf TARGET=kanji.hwd hanzi.hwd all: @echo "hwd is already made when packaged" really: $(TARGET) kanji.hwd: strokedata.h convert.pl perl convert.pl sjis $< > $@ patch -p0 < kanji.hwd.patch0 patch -p0 < kanji.hwd.patch1 patch -p0 < kanji.hwd.patch2 patch -p0 < kanji.hwd.patch3 patch -p0 < kanji.hwd.patch4 patch -p0 < kanji.hwd.patch5 hanzi.hwd: hanzidata.h convert.pl perl convert.pl gb $< > $@ reallyclean: rm -f kanji.hwd hanzi.hwd *.bak core clean: rm -f *.bak core install: @if test ! -d $(DESTDIR)/$(prefix) ; then mkdir -p $(DESTDIR)/$(prefix); fi @if test ! -d $(DESTDIR)/$(datadir) ; then mkdir -p $(DESTDIR)/$(datadir);fi @if test ! -d $(DESTDIR)/$(datadir)/yudit ; then mkdir -p $(DESTDIR)/$(datadir)/yudit;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/data ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/data;fi @echo installing hwd files... @$(INSTALL_DATA) *.hwd $(DESTDIR)/$(datadir)/yudit/data depend: ./mytool/hwd/kanji.hwd.patch20000644000175000017500000000077307532460064016137 0ustar henrichhenrich# # This is an utf-8 encoded patch file. # Fixes HI Handwriting Data # patch -p0 < this-file # Or on an installed tree (you don't need to recompile): # cd /usr/share/yudit/data # patch -p3 < this-file # # I added one more kanji. # Gaspar Sinai # 2001-11-14 # *** kanji.hwd- Tue Nov 13 00:34:34 2001 --- kanji.hwd Tue Nov 13 00:35:08 2001 *************** *** 534,537 **** --- 534,538 ---- 07 労 CCABFaMgJ 07 肛 JMFFFBF + 07 岑 BLBACFFa 08 宛 BBFaAFaCML 08 依 ABBFABiAK ./mytool/hwd/strokedata.h0000644000175000017500000017053010217441012015452 0ustar henrichhenrich/* -*- mode: C; c-file-style: "bsd"; tab-width: 4 -*- */ /* strokedata.h - character data included by bootdata.c. * JStroke 1.x - Japanese Kanji handwriting recognition technology demo. * GNU Copyright (C) 2003 Gaspar Sinai * Copyright (C) 1997 Robert E. Wells * http://wellscs.com/pilot * mailto:robert@wellscs.com * * This program 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 * of the License, or (at your option) any later version. * * This program 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 this program (gpl.html); if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * * See readme.txt, changelo, and gpl.html for more information. * * Commentary: * * The data in this file was generated via an earlier version of the * compact.pl perl script, from the StrokeDic.txt file from Todd Rudick. * Character data. This is a special header file that is included * in "bootdata.c" to create the Pilot database, but is also parsed * directly by a Perl script in KanjiPad to create its database. For this * reason, all lines with the first character '"' _must_ be character * data. In the future, maybe change KanjiPad to work from StrokeDic.txt * directly. owt 090497. * * ------------------------------------------------------------------------- */ #ifndef __STROKEDATA_H__ #define __STROKEDATA_H__ #ifdef FOR_STROKEDIC_CREATE_1 CharPtr LoadStrokeDicPtr(void) { return "A\210\352F\n" "A\211\263Faf\n" "B\213\343JFl\n" "B\216\265FL\n" "B\217\134FB|b1-y2\n" "B\220\154JC|y2-y1! x1-x2!\n" "B\222\232FB|b2-b1\n" "B\223\201MgJ|b2-y1\n" "B\223\361FF\n" "B\223\374AC|x1-x2! y1-y2!\n" "B\224\252AC|x2-x1! y1-y2\n" "B\226\224FaC\n" "B\227\271FaBg\n" "B\227\315MgJ|y1-y2\n" "C\211\272FBC|i3-x2\n" "C\212\261FFB\n" "C\212\333JFlC|x1-x2\n" "C\213\166AFaC|x3-x2\n" "C\213\171JFafaC\n" "C\213\174MFBmg\n" "C\214\310MFL\n" "C\214\373BMF\n" "C\215\110FBF|b2-b1 l3-l1\n" "C\215\313FBA\n" "C\216\117FFF\n" "C\216\122BLB\n" "C\216\155FBF|b1-y2 l1-l3\n" "C\216\161FaBgF\n" "C\216\331AMgC\n" "C\217\227AcJF\n" "C\217\254BAC\n" "C\217\343BFF\n" "C\217\344FJC|x2-x3\n" "C\220\156MgJC\n" "C\220\241FBC|x2-i3\n" "C\220\347AFB\n" "C\220\354JBB\n" "C\221\345FJC|x3-i2\n" "C\223\171FBF|b1-y2 l3-l1\n" "C\226\123BFL\n" "C\226\175JFlC|x3-x1\n" "C\226\234FMgJ\n" "C\226\347MgBL\n" "C\227\133AFaC|l1-l3\n" "C\227\136FBmgF\n" "D\210\344FFJB\n" "D\210\370MFBfbdB\n" "D\211\135FFAfC\n" "D\211\176BMBF\n" "D\211\244FBFF\n" "D\211\273ABAL\n" "D\211\316CAJC\n" "D\211\356ACJB\n" "D\212\240ACBB\n" "D\213\215AFFB|b1-y4\n" "D\213\245ACLB\n" "D\213\322AJFB|a1-x2\n" "D\213\346FACL\n" "D\214\207AFaJC\n" "D\214\216JMFF|j2-y4! j1-y4! x1-i1 j1-b4 j2-b4\n" "D\214\242FJCC|b1-b4\n" "D\214\263FFJL\n" "D\214\266AcAfCM\n" "D\214\313FMFJ\n" "D\214\334FBMF\n" "D\214\337AFFB|b4-b2\n" "D\214\366ACAfC\n" "D\215\105FaBgIL\n" "D\215\206BMFFbmg\n" "D\215\241ACFFa\n" "D\216\170FBFaC\n" "D\216\176BFBF\n" "D\216\201ABiFK\n" "D\216\332MFJC\n" "D\216\350AFFB|a1-x2\n" "D\217\241AJFB|x2-i1\n" "D\217\255BACA\n" "D\217\347BFaJFl\n" "D\220\123ALCC\n" "D\220\155ABFF\n" "D\220\205FaBAC\n" "D\220\330FLFjJ\n" "D\221\157FjCFjK\n" "D\221\276FJCC|b4-b1\n" "D\222\117JMCF\n" "D\222\206BMFB\n" "D\222\242MFBmgB\n" "D\223\126FFJC|l1-l2\n" "D\223\154CCFB\n" "D\223\324ALBL\n" "D\223\340BMJC\n" "D\223\372BMFF|y4-b1! j4-b2!\n" "D\224\275FJFaC|a1-x2\n" "D\224\344FLAL\n" "D\225\103FJLL\n" "D\225\163FABC\n" "D\225\166FFJC|b1-y3\n" "D\225\203ACJC\n" "D\225\247ABAfC\n" "D\225\252ACMgJ\n" "D\225\266BFJK|x3-x4!\n" "D\225\320JBFM\n" "D\225\373BFMgJ\n" "D\226\122ABFaCf\n" "D\226\122ABFaIcf\n" "D\226\321AFFL\n" "D\226\330FBAC\n" "D\226\346AMgAC\n" "D\226\357FJMgL\n" "D\227\106FJFaC|b1-y2 x2-x1\n" "D\227\134FaCFaBg\n" "D\230\132BFAC|x4-x3!\n" "D\230\274ABMJ\n" "E\210\263FJFBF|b3-y4\n" "E\210\310BICAC\n" "E\211\105JFBMF\n" "E\211\151CFbFaAC\n" "E\211\232MfBFLB\n" "E\211\233BMFJC|x5-i4\n" "E\211\301FjJBMF\n" "E\211\302FBMFB\n" "E\212\117JFjCBC\n" "E\212\216BMFFF|l5-l4 i1-x5! i5-i2!\n" "E\212\247FFBBB\n" "E\212\303FBBFF\n" "E\213\165ABFBF\n" "E\213\214BBMFF\n" "E\213\216FBFAfC\n" "E\213\220BFMFF\n" "E\213\312FBFFC\n" "E\213\345AMgBMF\n" "E\214\132BMFJL\n" "E\214\212BBFaAC\n" "E\214\272BFAcAfC\n" "E\214\303FBBMF\n" "E\214\367FBIFaJ\n" "E\215\111FBIFBmg|y3-j2\n" "E\215\114BFJAfC\n" "E\215\142BMFFB|b5-y3\n" "E\215\236ACCFacaCf\n" "E\215\266FJFBF|b4-b3\n" "E\215\373BMBBF|j1-y5\n" "E\216\104FBACL\n" "E\216\115BMBBF|y5-b1\n" "E\216\144ABFBF|y5-y3\n" "E\216\151MFBMF\n" "E\216\152BMFJC|x4-x5 y5-y3\n" "E\216\154BMJLF\n" "E\216\163BFBMB\n" "E\216\246FFBAC|l2-l1 y3-y1\n" "E\216\266BMFAL\n" "E\216\270AFFJC|y2-y4\n" "E\216\312BFaFBmgF\n" "E\216\345CFBFF\n" "E\216\372BMJCF\n" "E\216\373BBIFjC\n" "E\217\140CCIFB\n" "E\217\157BLBLB\n" "E\217\210AFaCJFl\n" "E\217\242MgJBMF\n" "E\220\113MFJJFl\n" "E\220\134BMFFB|y1-y5\n" "E\220\242FBBFL\n" "E\220\263FBFBF\n" "E\220\266AFBFF\n" "E\220\313AJFBC\n" "E\220\316FJBMF\n" "E\220\345ABBLB\n" "E\220\350BFBMF\n" "E\221\274ABMBL|y3-y5\n" "E\221\305FBIFB|j2-y3 y1-y2\n" "E\221\343ABFKC\n" "E\221\344AfCBMF\n" "E\222\241BFJFB\n" "E\223\143BMBFF|b3-y1\n" "E\223\172BcJFFjC\n" "E\223\176AFaCCC\n" "E\223\312FBMfLB\n" "E\223\362MFJAL\n" "E\224\222ABMFF\n" "E\224\274CAFFB\n" "E\224\306ACbAML\n" "E\224\347JFaBFaC\n" "E\225\113CALAC\n" "E\225\130BCFjAC\n" "E\225\164ABFBC\n" "E\225\172JFBMB\n" "E\225\245FBIAfC|j2-y3\n" "E\225\270FBMJC\n" "E\225\275FCAFB\n" "E\225\323MgJCFacaCf\n" "E\225\331AfCFJB\n" "E\225\352AcMCCF\n" "E\225\357AMgMFL\n" "E\226\153FBIAL\n" "E\226\173FBACF\n" "E\226\226FFBAC|l1-l2\n" "E\226\242FFBAC|l2-l1\n" "E\226\257MFBiFK\n" "E\226\265FaCFaBA\n" "E\226\274AFaBMF\n" "E\226\332BMFFF\n" "E\226\356AFFJC|b4-y2\n" "E\227\122BMBFF|y1-y3\n" "E\227\143AcAfCFjJ\n" "E\227\160JMFFB\n" "E\227\247BFCAF\n" "E\227\337ACCFaC\n" "E\227\337ACFMgB\n" "E\227\347BFaBCL\n" "F\210\265FBIJFafaK|j2-y3\n" "F\210\300BBFaBcJF\n" "F\210\337BFABiAC\n" "F\210\360FBBFFB\n" "F\210\363ABFFMB\n" "F\210\366BMFJCF\n" "F\211\106BBFaFFB\n" "F\211\110MCIMCI\n" "F\211\120ABMFFF|x3-x2\n" "F\211\230CCIFFBm\n" "F\211\274ABFJFjC\n" "F\211\357ACFFAfC\n" "F\211\361BMBMFF\n" "F\212\104FJBAJC\n" "F\212\145AFaCBMF\n" "F\212\276CCIFFB\n" "F\212\312AFFBLB\n" "F\212\351ACBFBF\n" "F\212\353AFaFJMgL\n" "F\212\367FBACJFl\n" "F\213\103AFFFkAC\n" "F\213\147FBFBMF\n" "F\213\170ABFBAC\n" "F\213\172BMFJFafaC\n" "F\213\200FBACFBmg\n" "F\213\244FBBFAC\n" "F\213\251BMFBFB\n" "F\213\302ABABiMB\n" "F\213\310BMBBFF\n" "F\214\131FFJBBB\n" "F\214\214ABMBBF\n" "F\214\217ABAFFB\n" "F\214\360BFACAC|b6-b1!\n" "F\214\365BCAFJL\n" "F\214\374ABMBMF\n" "F\215\100AJFBMF\n" "F\215\104BcJFFaBF\n" "F\215\106FBFAFabgF\n" "F\215\135CCIFBF\n" "F\215\154FBFAALbg\n" "F\215\163AABFFB\n" "F\215\207ACFBMF\n" "F\215\304FBMBFF\n" "F\215\335FJBFBF\n" "F\216\174ALBMFF\n" "F\216\200FAFaCAL\n" "F\216\205AcAfCBAC\n" "F\216\212FAfCFBF\n" "F\216\232BBFaFaBgF\n" "F\216\233FBFFBC\n" "F\216\237CIAFaJK\n" "F\216\247FABMBB\n" "F\216\250FBFFIB\n" "F\216\251ABMFFF|y5-y4\n" "F\216\256FFBIKC\n" "F\216\305FBBBFaCf\n" "F\216\305FBBBFaIcf\n" "F\216\347BBFaFBC\n" "F\216\351AFFBAC|b6-b1!\n" "F\217\102AJCBCB\n" "F\217\115AJMCBF\n" "F\217\133BFAfCJL\n" "F\217\173AMgBMFF\n" "F\217\204AcAcAcCFacaCf\n" "F\217\240FAJFBL\n" "F\217\257BFJFBF\n" "F\220\106AFaMBFL\n" "F\220\163MFJCCC\n" "F\220\166FkFBCFacaCf\n" "F\220\254JFMgKAC\n" "F\220\274FBMJLF\n" "F\220\343AFBBMF\n" "F\220\346AFBFJL\n" "F\221\123ACFBFF\n" "F\221\163BCIFBF\n" "F\221\201BMFFFB\n" "F\221\210AFaMFFB\n" "F\221\266FJBFaBgF\n" "F\221\275AFaCAFaC\n" "F\221\356BBFaAFL\n" "F\222\143BMFBCF\n" "F\222\156FBFMBL\n" "F\222\162CCIFbBL\n" "F\222\174AFBAFB\n" "F\222\207ABBMFB\n" "F\222\216BMFBIC\n" "F\222\233JCILAC\n" "F\222\322FBCCFacaCf\n" "F\223\140ABFFAfC\n" "F\223\146BMFFBF\n" "F\223\224BIJCFBg\n" "F\223\226BCAMFF\n" "F\223\257BMFBMF\n" "F\223\363FFFIKC\n" "F\223\367BMJCAC\n" "F\224\100BcJFBMF\n" "F\224\103ABAFBF\n" "F\224\116AFFBFB\n" "F\224\247JMFFJFl\n" "F\224\260ABFCAC\n" "F\224\277BMBJFlC\n" "F\224\334BcJFMFL\n" "F\225\123FABMFF\n" "F\225\232ABFJCC\n" "F\225\304CAFBAC\n" "F\226\132BACBFL\n" "F\226\160FBACBC\n" "F\226\210AFAfMBF\n" "F\226\222BFJBAC|b6-b1!\n" "F\226\317BFLAcJF\n" "F\227\114JFBMFF\n" "F\227\162CAFFFB\n" "F\227\231FBMFJC\n" "F\227\274FBMBLB\n" "F\227\361FJFaCBB\n" "F\227\362BACAMgJ\n" "F\230\152FBMFFF\n" "G\210\237FBMFBBF\n" "G\210\312ABBFCAF\n" "G\210\315BMFFJBF\n" "G\210\343FAFFJCL\n" "G\210\353FBFBFaAL\n" "G\211\236BFJALCC\n" "G\211\253CCIBMFB\n" "G\211\275ABFBMFB\n" "G\211\324FBBABAL\n" "G\211\344AFBIKAC\n" "G\211\365BACMFJC\n" "G\211\372FFJBKAC\n" "G\211\374MFLAFJK\n" "G\212\114BMFFFAC\n" "G\212\160AFaJMBFF\n" "G\212\256BBFaFFJL\n" "G\212\314JMFFFFB\n" "G\212\334ACFFaBMF\n" "G\212\362BLBFBFaC\n" "G\212\363ACAFBMB\n" "G\212\365MFLALCC\n" "G\213\104CCIAFFFk\n" "G\213\132FBIFBFaC|j2-y3\n" "G\213\160FBFAfCMgB\n" "G\213\201FBCIACC\n" "G\213\206BBFaJLJFl\n" "G\213\266ABgAFBFF\n" "G\213\307MFJMgBMF\n" "G\213\317FBIJMCI\n" "G\213\337AJFBCFacaCf\n" "G\213\341BMFACFM\n" "G\214\116MFFJBMF\n" "G\214\140FFJBAAA\n" "G\214\156AAcAfCBAC\n" "G\214\174FBBFFAfC\n" "G\214\175ABiMgBCFacaCf\n" "G\214\210CCIMFJC\n" "G\214\251BMFFFJL\n" "G\214\276CFFFBMF\n" "G\214\340BMFBmFAC\n" "G\215\102FBIBFJFl\n" "G\215\107BBFaFJAfC\n" "G\215\122FBIBFJFl|j2-y3\n" "G\215\125FBIAFJK\n" "G\215\130FBMFFJC\n" "G\215\216FBBMFJL\n" "G\215\220AFBFBMF\n" "G\215\242BMFBACF\n" "G\215\262ABFJFBF\n" "G\215\320AcAcAcCAJC\n" "G\215\336FBACFBA\n" "G\215\342FBIFJFaC\n" "G\215\343FaCaBFJFaC\n" "G\215\354ABAFBFF\n" "G\216\146ABMFBMF\n" "G\216\165FBFALCC\n" "G\216\204AFBACAfC|y6-y7 i6-x7!\n" "G\216\227ABBICJC\n" "G\216\231BBMFFJL\n" "G\216\320BFaBCFBF\n" "G\216\324FBMFFFB\n" "G\216\365FFFJFBC\n" "G\217\107AFBACJMmg\n" "G\217\132ABCFBFF\n" "G\217\211BFaBACMgA\n" "G\217\225BMFFIMgJ\n" "G\217\230BFJFaCFaBg\n" "G\217\260BFJFBAC\n" "G\217\264FBIBACA|j2-y3\n" "G\217\321BACBMFF\n" "G\217\360AFaCFBAC\n" "G\217\363BCIFJCC\n" "G\220\114ABBMFFB\n" "G\220\142BFBMFBF\n" "G\220\147ABMFFIA\n" "G\220\150BFCAFFB\n" "G\220\175BMCCACF\n" "G\220\201BMFAFaJK\n" "G\220\231FBACAAA\n" "G\220\272FBFMBFJ\n" "G\220\324FBFJBAC\n" "G\220\334FBIAJFB|j2-y3\n" "G\221\226FBFBFJC\n" "G\221\246MFFBiCMgB\n" "G\221\251FBMFBAC\n" "G\221\253BMFBFJC\n" "G\221\272FBACFBC\n" "G\221\303ACCAAcJF\n" "G\221\314ABFBACF\n" "G\221\316BFJCFBC\n" "G\221\360FBIMFJC|j2-y3\n" "G\221\362CCIJMFC\n" "G\222\101ABBMFFF\n" "G\222\112ACACBMF\n" "G\222\152BMBFFMgJ\n" "G\222\254BMBFFFBg\n" "G\222\276CCIBFaJL\n" "G\222\341ABABiFKF\n" "G\222\346BMFFBFF|y4-j2\n" "G\222\354AFBFFaFaCf\n" "G\222\355CAMFBmgBA\n" "G\223\167AcAFFaCMgJ\n" "G\223\212FBIJFlFaC|j2-y3\n" "G\223\244FBMFCAF\n" "G\223\337MFFJFaCdB\n" "G\224\101MFJBFaAC\n" "G\224\104BcJFAFBF\n" "G\224\105MgJCALCC\n" "G\224\143FBIMBFL|j2-y3\n" "G\224\204FBFBFaJL\n" "G\224\214ABABMFF\n" "G\224\236FBFFAFaC\n" "G\224\262FBIFJFaC|j2-y3\n" "G\224\272ABCAFFB\n" "G\224\273CAFFBBB\n" "G\224\333FABCBMF\n" "G\224\341FBIFBiAL|j2-y3\n" "G\224\354JMFFMBL\n" "G\224\366MFJAFFL\n" "G\225\175FBIFFJC|j2-y3\n" "G\225\272ABFBFAC\n" "G\225\312BMFMgABB\n" "G\225\324FJFaCCFacaCf\n" "G\225\341FBMFFBC\n" "G\226\106FBBBFMgJ\n" "G\226\115FFFJFaCdB\n" "G\226\126FBIBFFbgJ\n" "G\226\127BcJFBFFbgJ\n" "G\226\131BFLBLCC\n" "G\226\150FaCaBBFFbgJ\n" "G\226\166CCIJFlFaC\n" "G\226\230AFFlCCFacaCf\n" "G\226\255BcJFBACA\n" "G\226\337FMFJFJC\n" "G\226\360AABJFlFaC\n" "G\227\135ACFFBAC\n" "G\227\175FBIABiMB|j2-y3\n" "G\227\210FCAFBAC\n" "G\227\220AFBBMFL\n" "G\227\221ABiCJFbgBC\n" "G\227\230AFBACBB|y7-y6 x7-i6!\n" "G\227\242BMFFBFF|j2-y3\n" "G\227\307BMFFBiAC\n" "G\227\342CIACCFaC\n" "G\227\342CIACFMB\n" "G\227\343FJFMgJMgJ\n" "G\230\112CCABFaMgJ\n" "G\343\350JMFFFBF\n" "H\210\266BBFaAFaCML\n" "H\210\313ABBFABiAK\n" "H\210\317AFBACAcJF\n" "H\210\325BMFFAMgAA\n" "H\210\347BFAfCBMFF\n" "H\211\112FBMBCCCC\n" "H\211\152CCICFbgFaAC\n" "H\211\160FBBBMFJC\n" "H\211\204ABFBFFaFaC\n" "H\211\210CCIACBMF\n" "H\211\212CAJCCAJC\n" "H\211\221FBBJFaCML\n" "H\211\235AABCFBFF\n" "H\211\237FBIBMFFB|j2-y3\n" "H\211\242FJCLAFaJC\n" "H\211\243FJCLJLFaC\n" "H\211\252BMCAFBLB\n" "H\211\277ABFBMBBF\n" "H\211\300ABFBFFBF\n" "H\211\312BMFFFBAC|y5-y3\n" "H\211\315CCIFBMFB\n" "H\211\346FBMBFFLB\n" "H\211\350FBBFBFBA\n" "H\211\366ACBFaCFBF\n" "H\211\373FBIBMFFbgJ|j2-y3\n" "H\212\116BFAcAACMgJ\n" "H\212\147FBIBFJAfC|j2-y3\n" "H\212\167CCABFaFaBgF\n" "H\212\170ABFBFBLB\n" "H\212\257BBFaBMFMF\n" "H\212\335BLBFJFFB\n" "H\212\342BLBFJBMF\n" "H\212\357FJCFBMFB\n" "H\213\106BFaBCAJFB\n" "H\213\107AFBACFaBgF\n" "H\213\130BBFaBMFFF\n" "H\213\203CCIBFCAF\n" "H\213\217MFJFBBMF\n" "H\213\221FBIBFMFF|j2-y3\n" "H\213\222FBIJFjKJFl|j2-y3\n" "H\213\235BFBMFFaBgC\n" "H\213\236BFBMFBAC\n" "H\213\237ABFBBFAC\n" "H\213\246FBMJMJMJ\n" "H\213\254BLBFCAJC\n" "H\213\265CCIBMFJL\n" "H\213\340ACFFBCAF\n" "H\213\352FBBFBBMF\n" "H\213\357BMFFFFAC\n" "H\213\363BBFaJLFBF\n" "H\213\374MFJBLBLB\n" "H\214\141AABFaCFBF\n" "H\214\163FBBFaCFBF\n" "H\214\224CAFFJCMgJ\n" "H\214\250FMFJBMFF\n" "H\214\267MFLbgBFAcAfC\n" "H\214\304BMFACAFBg\n" "H\214\305BMFBBMFF\n" "H\214\325BFJFaFLJL\n" "H\214\370BFACJCMgJ\n" "H\215\113FBFCAFFB\n" "H\215\123FBIAMgBMF|j2-y3\n" "H\215\126BMFFABiMgB\n" "H\215\155BFBFBMFF\n" "H\215\217BFAcAACBB\n" "H\215\221BMFBFFCF\n" "H\215\251BMFFFBiAL\n" "H\215\310FMFFBAcJF\n" "H\215\343BcJFAfCBMF\n" "H\215\374MFJBMBBB\n" "H\216\121AfCFJCAAA\n" "H\216\147ABFBMFJC\n" "H\216\150FBMBACBB\n" "H\216\157BcJFBFBMB\n" "H\216\175FBACFBFjK\n" "H\216\203BFaBCBFBF\n" "H\216\210JMFFFBFaC\n" "H\216\226FBMFMFFB\n" "H\216\230ABFBFFBC\n" "H\216\241CCIAfCBMF\n" "H\216\300BBFaFFFJC\n" "H\216\311ACFBFBMF\n" "H\216\322FBFABMFF\n" "H\216\327FBFBAFaCdB\n" "H\216\341FBBJFBMF\n" "H\216\346FBFFIBFaC\n" "H\216\363ACCABFaFaC\n" "H\216\374JMFBFBMF\n" "H\217\100BBFaFFBAC\n" "H\217\146BFFBACFjK\n" "H\217\161FBACCCFacaCf\n" "H\217\212FMFJAJFB\n" "H\217\256BCABMBMF\n" "H\217\263FaBFFFFaAC\n" "H\217\265FBIFbgJBMF|j2-y3\n" "H\217\270BMFFAJFB\n" "H\217\274FBACACAfC\n" "H\217\300CCIMJBMF\n" "H\220\202AFFBBFBF\n" "H\220\206CAJCAFaJC\n" "H\220\225FBACFACL\n" "H\220\247AFFBMBBB\n" "H\220\251BcJFAFBFF\n" "H\220\252AABFBFBF\n" "H\220\253ACBAFBFF\n" "H\220\302FBFFBMFF\n" "H\220\304BFACJFFB\n" "H\220\314FBBFBMFF\n" "H\220\315FBACAJFB\n" "H\220\331FBIBLBLB|j2-y3\n" "H\221\152FaCdBBMFFF\n" "H\221\262BFACACFB\n" "H\221\354BFBMFFFB\n" "H\221\361FBIFJBMF|j2-y3\n" "H\222\123FBIBMFFF|j2-y3\n" "H\222\155AFFJCBMF\n" "H\222\210BBFaBMBFF\n" "H\222\211BMFBALCC\n" "H\222\212FBIBMBFF|j2-y3\n" "H\222\215CCICFBFF\n" "H\222\267BFFFFBiAC\n" "H\222\274FBBMFFFL\n" "H\222\330FBIFCAFB\n" "H\222\350BBFaFBFJC\n" "H\222\352BFJABiFCF\n" "H\222\357FBIABiFCF|j2-y3\n" "H\223\100ABiFCFFaCdB\n" "H\223\104CCIMFJAL\n" "H\223\111ABMFFAMgC\n" "H\223\122AFFJCCFacaCf\n" "H\223\124BMBBFFAC\n" "H\223\130BFJBFBMF\n" "H\223\214FBMFFBAC\n" "H\223\236FAfCFBIBB\n" "H\223\305FBFFAfMBF\n" "H\223\313BBFaJLFJK\n" "H\223\315MFJBMBFF\n" "H\223\373ACCAFaBgIL\n" "H\224\117ACFFaBLCC\n" "H\224\147CCIJFaBFaC\n" "H\224\161FBIFFFFB|j2-y3\n" "H\224\164FBACFABC\n" "H\224\217FBIABMFF|j2-y3\n" "H\224\221CCIABMFF\n" "H\224\227ABMFFCFacaCf\n" "H\224\302FBACFJFjK\n" "H\224\305JBFMFJFaC\n" "H\224\336AABJFaBFaC\n" "H\224\342FBIJFaBFaC|j2-y3\n" "H\224\345CCICJKCC\n" "H\224\361JFFIBFFF\n" "H\225\134FBFFABiAC\n" "H\225\143FBBBMBFF\n" "H\225\173BFJABFBC\n" "H\225\174ACBAFBMB\n" "H\225\215FaCdBABFBC\n" "H\225\216ABAFLMFB\n" "H\225\220FFBFBIKC\n" "H\225\236JMFFBMFaC\n" "H\225\246CCIMFBmgJB\n" "H\225\250AFBIAMgAA\n" "H\225\271ABCAFFJB\n" "H\225\300CAFBBCAF\n" "H\225\340BFBFBACA\n" "H\225\362FFFJCFFB\n" "H\225\363BBFaFBFFC\n" "H\225\370FBIAMgMFL|j2-y3\n" "H\225\372BFMgJAFJK\n" "H\226\100CCIFBFAfC\n" "H\226\101CCIAMMFL\n" "H\226\133FMFJBFMgJ\n" "H\226\142JMFFBFMgJ\n" "H\226\161AFBIAFJC\n" "H\226\172FJCFBFJB\n" "H\226\205BcJFFFBAC\n" "H\226\207FBACAFJK\n" "H\226\225FBIFFBAC|j2-y3\n" "H\226\241BMFFFBAC|a6-a3\n" "H\226\246BLBBMFFB\n" "H\226\275ACFBMFMB\n" "H\226\276BMFFJMFF\n" "H\226\306AFaBMBFJL\n" "H\226\316FBBJFKAC\n" "H\226\323BFLBMFFF\n" "H\226\345BMFFBMFF\n" "H\226\351BFABAFaCC\n" "H\226\373CCIBMBFF\n" "H\227\321FBACFBAC\n" "H\227\341ABFJFaCBB\n" "H\230\106CAJCFMFJ\n" "H\230\141AFBACBMF\n" "H\230\147FBACJFlFB\n" "H\237\251CCIBCAJL\n" "H\347\214BMBFFCFacaCf\n" "I\210\243BFBMFABiAC\n" "I\210\320JFFAcAFKAC\n" "I\210\327CAMMMACCC\n" "I\210\335BMBFFBMFF\n" "I\210\367BcJFBMFJCF\n" "I\211\146BMFFBMFJC\n" "I\211\150CCABFaFBAC\n" "I\211\165BFJCIJFlFaC\n" "I\211\256MFJFAfCFBF\n" "I\211\265AFFBFBIMB\n" "I\211\271BFCAFBMFF\n" "I\211\310AFBACCCFB\n" "I\211\313MgJBMFFBAC\n" "I\211\367ACBAFJfMJF\n" "I\212\103CCIAFBfFjJF\n" "I\212\105BMBFFACJB\n" "I\212\106FBiALABMFF\n" "I\212\137FBIFBMFFF\n" "I\212\166FBBFBMFFB\n" "I\212\207FBIAFBBMF|j2-y3\n" "I\212\210CCIAFBBMF\n" "I\212\245BFaFFJLFBC\n" "I\212\252CAFFJCMFL\n" "I\212\305AFFJBMFFF\n" "I\213\111AcAfCBACMFL\n" "I\213\117FBMFFFBJFl\n" "I\213\161BBFaAFaCBMF\n" "I\213\163BFJFaFLFFL\n" "I\213\164CAFLBJCFacaCf\n" "I\213\175AFaMFFALCC\n" "I\213\211AcAfCBACJFafaC\n" "I\213\212AcAfCBACBFB\n" "I\213\262FBIFCAFJC|j2-y3\n" "I\213\267ABgAFCAFJC\n" "I\214\122BFaFBMFFFB\n" "I\214\127ABAAcAfCBAC\n" "I\214\136FFJBBBFBF\n" "I\214\137FBFIMgJFJC\n" "I\214\166CFFFBMFFB|b8-y9\n" "I\214\232MFFFFBFaFaCf\n" "I\214\244FJBMFFFJB\n" "I\214\247BMFFFLBAC\n" "I\214\300FaCdBMFFBiAC\n" "I\214\307FaBgIAJBICK\n" "I\214\312MFBmgAJBICK\n" "I\214\314FBBMFACJK\n" "I\214\315FBACFBBMF\n" "I\214\343AABAcAfCJFaC\n" "I\214\362ABMFAFFJK\n" "I\214\372FJBMFFFaBgF\n" "I\215\120ACBFBMFFF\n" "I\215\127BMFFBCAJL\n" "I\215\136CCIFBBFAC\n" "I\215\143ABMFFFBFF\n" "I\215\147AcAfCBACFBF\n" "I\215\162FBBBFLJBL\n" "I\215\170BFACJCFaCdB\n" "I\215\201AFBACBMFF\n" "I\215\211FBIFBFAABmg|j2-y3\n" "I\215\246ACBMFFBiAC|a5-a3\n" "I\215\270FBACBMFFF|b5-b2\n" "I\215\273FJBMFBACA\n" "I\215\323FJBMFJFlFB\n" "I\215\347BMFCAFFJC\n" "I\215\355BCABMFFBB\n" "I\215\360BMFFAFMFF\n" "I\216\160CIAFaJCAcJF\n" "I\216\166BMBFFALCC\n" "I\216\167FBIALBMFF|j2-y3\n" "I\216\173BFJMgAFMBL\n" "I\216\235FBIFBFFBC|j2-y3\n" "I\216\272BBFaFAfCFBF\n" "I\216\353ABgABBFaFBC\n" "I\216\361CAFABMFFF\n" "I\217\105FBIACFBMF|j2-y3\n" "I\217\110AFBACCAJC\n" "I\217\114ABMFFFFJC\n" "I\217\137FaCFaBAFBAC\n" "I\217\144AFBMFFBFF\n" "I\217\152BFaBCBMFJL\n" "I\217\162ABAbCJLJFjC\n" "I\217\164FFFJCBMFF\n" "I\217\202AJFBBMFFF\n" "I\217\226ACFFBACFjC\n" "I\217\272BMFFMJBMF\n" "I\217\310BACABMFFF\n" "I\217\346AFFBBFBAC\n" "I\217\351FBIJFFbgCAC\n" "I\217\362CCIAFaMFFB\n" "I\220\110ACBMFFBiAC|b6-y1\n" "I\220\115ABCFFFBMF\n" "I\220\116ABMFFAFaFaC\n" "I\220\137BFaBCBMFFB\n" "I\220\162FBBFFFJLL\n" "I\220\203ABMFMFBMB\n" "I\220\210CABACJFlFB\n" "I\220\245BMFFFBFJC\n" "I\220\255FBFBIAFJC\n" "I\220\257BMFFAFBFF\n" "I\220\265AFBIAFBFF\n" "I\220\336BBFaJLALMgJ\n" "I\220\351BBFaFBMFFF\n" "I\220\352FBMFFBFBC\n" "I\220\362ABMFFBFaAC\n" "I\220\363CCIFFFKAC\n" "I\220\364CCIAFBFJL\n" "I\220\365CCIJFlFBAC\n" "I\221\117CAFBMFFBB\n" "I\221\143BFaBCBMFFF\n" "I\221\164FFFJCFFJC\n" "I\221\212FBACBMFFF|a5-a2\n" "I\221\220FBBBMFFFB\n" "I\221\221FBBBCIFBF\n" "I\221\227CAFFJCCFacaCf\n" "I\221\243ABBMFBFJK\n" "I\221\245BMFFFACBB\n" "I\221\255ABACACBMF\n" "I\221\317FABMBBFBC\n" "I\221\322AABFBFFBC\n" "I\221\323AfCBMFALCC\n" "I\221\331JMFFAfCBMF\n" "I\221\336MFFBiACCFacaCf\n" "I\222\120CCABMFFFB\n" "I\222\131BMBFJCAJC\n" "I\222\137JMFFBMFFF\n" "I\222\151ABFFFJFlFaC\n" "I\222\203FBBACFBAC\n" "I\222\213MFJCBMFFF\n" "I\222\214FBACCFBFF\n" "I\222\217FBMFBABiAC\n" "I\222\247FBIJCILAC|j2-y3\n" "I\222\272FBMFBACMgJ\n" "I\222\277FBFIACAAA\n" "I\222\303CCIMFFFFB\n" "I\222\307ABMFMFCFacaCf\n" "I\222\340BFBMFBFaFB\n" "I\222\345BFBMFFFAC\n" "I\222\351BFCABFaBMB\n" "I\222\371CFFFBMFFB|b9-b8\n" "I\223\137BFBMFACCC\n" "I\223\170BFJFBBFFaC\n" "I\223\173AcJFFaCALCC\n" "I\223\246JCILACCFacaCf\n" "I\223\264CCIBMFBMF\n" "I\223\273BLBBFFFBC\n" "I\223\275FFBBABMFL\n" "I\223\306ABgABMFBIC\n" "I\223\354FBBMCAFFB\n" "I\224\150CCIAJAJAC\n" "I\224\167FBIALBMFF\n" "I\224\170JMFFBFBMB\n" "I\224\250CAJCBMBFF\n" "I\224\255FaCACAFFJL\n" "I\224\332ABMBFFAFB\n" "I\224\362FkACBAJFkAC\n" "I\224\374CAFBFFFJC\n" "I\225\142AFBACBACA\n" "I\225\151BMFBMFBMF\n" "I\225\211AFaBMFFFAC\n" "I\225\213FBFBFACBC\n" "I\225\225FBFFBIFBC\n" "I\225\227JFkABMFBIC\n" "I\225\262CABACACMgJ\n" "I\225\277FBACFBMJC\n" "I\225\305FABMFFFAC\n" "I\225\317BFJBACAFaC\n" "I\225\326ABFBMFFJC\n" "I\225\333ABBMFFBAC\n" "I\226\105JMFFAMMFL\n" "I\226\136FBBFFFBAC\n" "I\226\140BMFFBMFFF\n" "I\226\176ACMgABMBBF\n" "I\226\300CAFBACCFacaCf\n" "I\226\312FABMBBFFF\n" "I\226\361AcAfCBACAMgC\n" "I\226\366FBACABiJMgB\n" "I\227\105FaCBMBFFMgJ\n" "I\227\110BAcAfCAcAfCLB\n" "I\227\123BFaBCJFBMF\n" "I\227\155CCICAFFFB\n" "I\227\166FBMBBFAcJF\n" "I\227\201CCIACACbMF\n" "I\227\245AABMFFFFB\n" "I\227\277CABACCCFB\n" "I\227\320FJBMFFBFF\n" "I\227\346FBFIACCFaC\n" "I\227\346FBFIACFMgB\n" "I\230\131BMFFBiCFaCdB\n" "I\237\253CCIAMgBMFF\n" "J\210\304BBFaAcJFFBAC\n" "J\210\365BMFBMFFFAC\n" "J\211\100FaCdBBBFaFFJL\n" "J\211\131CCIFBMFFBC\n" "J\211\166CAFACBMBBF\n" "J\211\170ACBCABMFJL\n" "J\211\203BBFaBMFFAcJF\n" "J\211\245ACAfCMCIMCI\n" "J\211\264ABFJCBMFFL\n" "J\211\266BMFJCFALCC\n" "J\211\304FABMFFFAFaC\n" "J\211\306BBFaFACbgAAAC\n" "J\211\327FBBABFBMFB\n" "J\211\330FBBFFBBFFB\n" "J\211\341BMFBICBFJK\n" "J\212\121BBFaFBFFBMF\n" "J\212\151FBACAFaCBMF\n" "J\212\152FBACBFAcAAC\n" "J\212\224FBACAFFBAC\n" "J\212\327FaCdBAFaBBMFF\n" "J\212\371MFFBiCFBFJL\n" "J\213\101BJMFFAFaBMF\n" "J\213\114CFFFBMFMFL\n" "J\213\116FBFBFACMFL\n" "J\213\121ACBMFFBiCJFl\n" "J\213\123ABMBFFJLAfC\n" "J\213\173BBFaBMFABMF\n" "J\213\223CCAFACAFFBg\n" "J\213\260FBIJFlCALCC\n" "J\213\261FBBFACBACC\n" "J\213\271JMFFAMgACLB\n" "J\213\272MgAMgAMgABMFF\n" "J\214\111FBMBBFFBAC\n" "J\214\113FaCFaCFaCFBAC\n" "J\214\120CFFFBMFJBB\n" "J\214\123MFFJBMFFaCdB\n" "J\214\142FBMFFBALCC\n" "J\214\220ABACFBMFJC\n" "J\214\223CAFMFFBBAC\n" "J\214\225ACFBMFJCBB\n" "J\214\254FBMFFFBFFB\n" "J\214\264FJABMFFBAC\n" "J\214\302ABBMFBBMFF\n" "J\214\311BFJFBMFFFB\n" "J\214\342BcJFBMFBmFAC\n" "J\214\345ACBFBMFBMF\n" "J\214\363ABBMFAFFJK\n" "J\215\132FBACBFACJK\n" "J\215\153FFFBACFFJB\n" "J\215\161AJMCBIBFJFl\n" "J\215\166FBFBMFFFAC\n" "J\215\176FaCdBAFaCFBFB\n" "J\215\202BFBMFBMBMF\n" "J\215\204BMCAFBLBBB\n" "J\215\234BMBFBFaBMFF\n" "J\215\252FBACMFFBiAC\n" "J\215\264BMFAfCALAFaC\n" "J\215\267CAFBFFAFBF\n" "J\215\300BFJACACFBF\n" "J\215\311BBFaBFCAFFB\n" "J\215\315FBFFBACKAC\n" "J\215\334BFACJFFBBB\n" "J\215\340BMFFFACFBA\n" "J\215\365FBBFaAcAfCBAC\n" "J\215\367FBACCCAAcJF\n" "J\216\105ACFBACJFlFaC\n" "J\216\126FBACFFFCAC\n" "J\216\134FFJCBMFBFC\n" "J\216\143FJFjCFFFCAC\n" "J\216\164ABMFMFFBMB\n" "J\216\206AcAfCBACABiFK\n" "J\216\211JMFFALBMFF\n" "J\216\236BMFFFBFFBC\n" "J\216\276BFJCIAFFJC\n" "J\216\313ABMFFIIFBC\n" "J\216\321AcAfCBACBACA\n" "J\216\330ABFBBFBMFF\n" "J\216\336FBMJLFFAMgC\n" "J\216\343MFBmgCIMFBmgCI\n" "J\216\352FJFjCAFFBAC\n" "J\216\354FBFIAFFBAC\n" "J\216\360CCIFBMJLFF\n" "J\217\103ABBAFACAAA\n" "J\217\135AABCAFBFAC\n" "J\217\171CIABAFBFFF\n" "J\217\175FJFjCAMgBMFF\n" "J\217\203AcAfCBACALBL\n" "J\217\221MFFFFBBMFF\n" "J\217\231AABACFFBAC\n" "J\217\234FaCdBACFFBAC\n" "J\217\252BBFaBCABMFF\n" "J\217\253BCIACCAFBC\n" "J\217\301CCIBCABMFF\n" "J\217\307BFJCIFBFBF\n" "J\217\313BFaBCCAFBFF\n" "J\217\314AFBACAFBAC\n" "J\217\316AFBAFBAFJC\n" "J\220\112FJFFBiACFBC\n" "J\220\117FJFFBiACBMF\n" "J\220\120BcJFFJFFBiAC\n" "J\220\125FBIFJFFBiAC|j2-y3\n" "J\220\127FBBCAFBMFF\n" "J\220\132CCIMFFBFaFaC\n" "J\220\136FBBMFFFFAC\n" "J\220\152ACFFBCAIFB\n" "J\220\167FaCdBFBMFFFB\n" "J\220\212BFBMFFABiAC\n" "J\220\244BFBMBFFAFjC\n" "J\220\300FBIAJFBCFacaCf\n" "J\220\307ABAFBFFFFaC\n" "J\220\310BFJFBBFBMB\n" "J\220\356FMFJMCIMCI\n" "J\220\360FBACACFBFF\n" "J\221\144AFBACBMFFF\n" "J\221\146FBFFAcAfCBAC\n" "J\221\161ACFMFFJBMF\n" "J\221\173FBIBMFFBFaC|j2-y3\n" "J\221\175FBIAFBMFFB|j2-y3\n" "J\221\242AFBFBMFCFacaCf\n" "J\221\247ABMFFFALCC\n" "J\221\254FBMFBACCFacaCf\n" "J\221\263BFaBACBMBFF\n" "J\221\267FaBgIAAcAfCBAC\n" "J\221\321FBBBFBFaBMB\n" "J\221\327FFFJCBCIAC\n" "J\221\365CFFFBMFAFL\n" "J\222\154ABFBBMFFFL\n" "J\222\160FBFFIBBLCC\n" "J\222\166FAfCFBIAFJK\n" "J\222\173BFAcAfCBMBFF\n" "J\222\200FACbgAAACCFacaCf\n" "J\222\201AFBACAFFJC\n" "J\222\275JMFFCAFFJC\n" "J\222\312FaCBMFFBCFacaCf\n" "J\222\353BFJAFBFFaFaCf\n" "J\222\374AJFFBMBCFacaCf\n" "J\223\116FBIAJFBBMF\n" "J\223\127MFJFBBFBiAC\n" "J\223\153AABFBFBFAC\n" "J\223\162ACFFBACCFacaCf\n" "J\223\174ABFAfCFBIBB\n" "J\223\175BCABFaBMFJL\n" "J\223\200CIFBMFFBAC\n" ; } #endif /* FOR_STROKEDIC_CREATE_1 */ #ifdef FOR_STROKEDIC_CREATE_2 CharPtr LoadStrokeDicPtr(void) { return "J\223\202BFJMFFBBMF\n" "J\223\207ABMFFFMgBLB\n" "J\223\215FBACJCILAC\n" "J\223\242CFFFBMFFBC\n" "J\223\247AFBACAMmgCFacaCf\n" "J\223\267JMFFBMFBMF\n" "J\223\301AFBIFBFFBC\n" "J\224\131ACBCCAACLB\n" "J\224\133AcAfCBACBMJC\n" "J\224\134AfCBMFFALAL\n" "J\224\152FJBMFJFaBFaC\n" "J\224\156BFBFFMgCCCC\n" "J\224\157ABJFFFBFFF\n" "J\224\172FBMJLFFMFL\n" "J\224\173ABBFCAFBMF\n" "J\224\176FBACAFLMBF\n" "J\224\307FBFIBJFBFF\n" "J\224\310BMBFFCAFFB\n" "J\224\312AJMCBIJFlFaC\n" "J\224\346BFJCIJFaBFaC\n" "J\224\351AFBACCALBC\n" "J\224\355BFaBACJFaBFaC\n" "J\225\120BcJFBFBMFBF\n" "J\225\125ABFBFFJBiAaC\n" "J\225\141BFJCIFBMJC\n" "J\225\154CCIABFBFAC\n" "J\225\161AFLMBFAFJK\n" "J\225\162CAFFJBFBiFlC\n" "J\225\202CCIACCAFaBgF\n" "J\225\264AcAfCBACACMgJ\n" "J\225\303FaCdBFBiALFBF\n" "J\225\327AFaBMBFJLMgJ\n" "J\225\337FBIFBMFFBC|j2-y3\n" "J\225\355ABBFFbgJJFJK\n" "J\225\356ABFFFJCFFB\n" "J\225\364BLBAFaCFFFB\n" "J\226\103FJBMFAMMFL\n" "J\226\125BFCAFBMFBB\n" "J\226\141AcAfCBACBFMgJ\n" "J\226\204FBIBMFFBFF\n" "J\226\254JMFFAJABAC\n" "J\226\260BMFFFMFBiFC\n" "J\226\272BcJFBMFFBiAC\n" "J\226\325FFFBACAFFL\n" "J\226\344AcAfCBACBFJK\n" "J\227\145BBFaACACBMF\n" "J\227\254CCIBFAfCJBL\n" "J\227\257ABiCMgJBMBFF\n" "J\227\263BFCAFBMFFL\n" "J\227\267BFMgJAFABAC\n" "J\227\317ABACFBMFBB\n" "J\227\334CCIFMFJFJC\n" "J\227\363FAFaCBBACCC\n" "J\227\366BFJBACALCC\n" "J\230\101FBMFFFBCFacaCf\n" "J\230\116BMFFBiCJMFF\n" "J\230\121CCIBMFFBiAC\n" "K\210\253FBMFBBFALCC\n" "K\210\262FBACBFCAFFB\n" "K\210\321MFJFFBACFBC\n" "K\210\331BMBFFFBBFAC\n" "K\210\332AFBACAFaCAFaC\n" "K\210\346FBIFBMFICAC\n" "K\210\355AFaBMBFJLCFacaCf\n" "K\211\101FaCdBACFMFFAfC\n" "K\211\164CCIBFABAFaCC\n" "K\211\251FBBFBMBFFAC\n" "K\211\331FBBBMFFFBAC\n" "K\211\335ABALBMFFFAC\n" "K\212\102FBACFFJBKJC\n" "K\212\125CCIFJFBFFBF\n" "K\212\153FBFAFaJMiJFlFaC\n" "K\212\163BFBMFFaBgIFaCdB\n" "K\212\174FBIFBFFBIBC|j2-y3\n" "K\212\205BMFBMFFAMgAL\n" "K\212\211CCIBMFFAMgAL\n" "K\212\243FBBMFFFBAFFaf\n" "K\212\250FBBFFFJLLMgJ\n" "K\212\263BMFBMFBALCC\n" "K\212\321LMBFBMFFFAC\n" "K\212\341BMFFFMFFBiAC\n" "K\212\356FBBFFFACFBF\n" "K\212\361BBFaFJCFBMFB\n" "K\213\113FFJCBMFFFJL\n" "K\213\124AFaBMFFBMFFL\n" "K\213\125ABCAMMMBCCC\n" "K\213\145FBBAMgCAFBAC\n" "K\213\162JMFFFBFAfCMgB\n" "K\213\176FBCIACCAFAC\n" "K\213\205FBFIFBCIACC\n" "K\213\225BFJFaFLBBCAF\n" "K\213\226CFFFBMFAFFB\n" "K\213\233AFaBMBFFACCC\n" "K\213\255MFBmgAfCBMFBIC\n" "K\213\263FBFAFaBgIAFAC\n" "K\213\275AcAfJMFFBiCFaCdB\n" "K\213\333FBBBMAFBACF\n" "K\213\364ABBMFFBMBFC\n" "K\214\100FBIMFJFLBLB|j2-y3\n" "K\214\133FMFJAFACBMF\n" "K\214\146FBIBMFFAMgAL|j2-y3\n" "K\214\153CCIACCAFFJC\n" "K\214\157AcAfCBACFaCFBF\n" "K\214\165CCABFaBMFBFC\n" "K\214\222ABMFFFFBFaFaC\n" "K\214\257FaCdBACFBMFJC\n" "K\214\273FBFIBMFFFJL\n" "K\215\116BFJMFFBCIAC\n" "K\215\124FBIBBFaJLFBF|j2-y3\n" "K\215\225BMFFBFFACCC\n" "K\215\240DLFABMFFFAC\n" "K\215\245BcJFABiFKBMFF\n" "K\215\254CCIBMFFFBiAL\n" "K\215\256AcAfCBACFBBFF\n" "K\215\305BMFFFBFFIFaC\n" "K\215\312ACCAFBACAAA\n" "K\215\314FBIACCAFBAC|j2-y3\n" "K\215\317CCIBFACJFFB\n" "K\215\325AFaCCFaCFFBAC\n" "K\215\326BFACJFFBACB\n" "K\215\327AcAfCBACBMBFF\n" "K\215\330FBBACCAFBAC\n" "K\215\350BLBFJCFBMFBg\n" "K\216\123ACBAfCFACAAA\n" "K\216\131BFCAFJAFBFF\n" "K\216\213BFaBCBMFFFJL\n" "K\216\267FBFCAFFBJFlC\n" "K\216\314FBIACFBFBMF|j2-y3\n" "K\216\315FBFJBBCAFJK\n" "K\216\316ACFFBACCCFB\n" "K\216\326BMFBICBBFaAL\n" "K\216\337ACAFBACMFJC\n" "K\216\342BBFaBFFBACFaC\n" "K\216\366FBIACCABFaFaC|j2-y3\n" "K\217\111AcAfCBACACaCCC\n" "K\217\113MCIMCIABMFF\n" "K\217\124JMFBFBMFCFacaCf\n" "K\217\141CCIBFBFCIAC\n" "K\217\150BBFaABFABMFF\n" "K\217\151CCIFBFBACFjK\n" "K\217\154MFFBCAFACJB\n" "K\217\160AABFBACCFFBg\n" "K\217\216BFJFBBFACCC\n" "K\217\244BFCABMJLBMF\n" "K\217\245BMFBMFFBMFF\n" "K\217\302CCIBFBFBACA\n" "K\217\315BFCAFBMFFFB\n" "K\217\320AcAfCBACMgJBMF\n" "K\217\327CFFFBMFACAfC\n" "K\217\350AFFBBFBACBB\n" "K\217\355BCABFaBMFBMB\n" "K\217\356ACBFBFFBMFF\n" "K\220\133CCIBFaJLFBAC\n" "K\220\141AcAfCBACBMFFB\n" "K\220\151ABAFBFFFCFacaCf\n" "K\220\204FBIABAFBFFF|j2-y3\n" "K\220\214FBMJLFFJFlFB\n" "K\220\222BLBBBFaFFBAC\n" "K\220\230FBIMFJFBBMF|j2-y3\n" "K\220\235BACABAFBFFF\n" "K\220\264CCIFBFFBMFF\n" "K\220\311ACBFBBFBMFF\n" "K\220\323FBFFBMFFFAC\n" "K\220\332FBIBFCAFAcJF|j2-y3\n" "K\220\335CFFFBMFJFlFaC\n" "K\220\341FBFaBCCCCMFF\n" "K\220\371BFMgJAFFaBFJC\n" "K\221\104AJMCBIACBMF\n" "K\221\133FBIFBBFBMFF|j2-y3\n" "K\221\145CAFBACBMFFF\n" "K\221\147AcAfCBACBMFFF\n" "K\221\174FBIMFFBFaBMB|j2-y3\n" "K\221\202FBMBBFFBMFF\n" "K\221\203CCABMFFFBAC\n" "K\221\213BBFaJLAfCALCC\n" "K\221\244ABBMFFFACBB\n" "K\221\260BFMgJACAFFJC\n" "K\221\334ABFCCBFABiAC\n" "K\221\337MFFBCIACCFacaCf\n" "K\221\346AFBAFBMFBmgBA\n" "K\222\105JMFFCABMFJL\n" "K\222\124FBIBFaJLFBAC|j2-y3\n" "K\222\127CCIBIJKBIJK\n" "K\222\146CAFBACLAJFB\n" "K\222\202BBFaJLFAfCFBF\n" "K\222\230FBBFBFABMFF\n" "K\222\240BMBBFFFFBiAC\n" "K\222\243MFBmgBFFFFBiAC\n" "K\222\244JMFBFBMFAAA\n" "K\222\255BMFFFJCILAC\n" "K\222\257JMFFBFFFBiAC\n" "K\222\270FBFABMFFFAC\n" "K\222\271ABMFFFMgCCCC\n" "K\222\302FaCdBFBMFFBAC\n" "K\222\336ACFFBCAIAMgC\n" "K\222\342ABBFBMFBFaFB\n" "K\222\343ABBFBMFFFAC\n" "K\223\112AFBAFBBMBFF\n" "K\223\131CCIAFJCBACC\n" "K\223\135FBMFFFBFFAfC\n" "K\223\163FBFABMFFFaCdB\n" "K\223\211ACBBFBMFFFB\n" "K\223\220CIAFaJCBMBBF\n" "K\223\251FaCdBAMAFFBLB\n" "K\223\256AFBMFFBFIMgJ\n" "K\223\260BCABFaBMFFBF\n" "K\223\276AABBMFFFFBC\n" "K\223\330JMFFFACbgAAAC\n" "K\223\356FBMFFFBAFaJC\n" "K\224\114ABgAFBBBMBFF\n" "K\224\123CAFBACBFBMF\n" "K\224\135JMFFCCAACLB\n" "K\224\153CCIJFaBFaCAfJF\n" "K\224\162FBIJFFFBFFF|j2-y3\n" "K\224\163BMFFFACAFJK\n" "K\224\174FBIBFCAFBMF\n" "K\224\206FaCdBBFCAFBMF\n" "K\224\225AJMCBIABMFF\n" "K\224\314BMFFFACFJFaC\n" "K\225\115AFBAFBMFFFB\n" "K\225\133FBMBBFFFBAC\n" "K\225\140FBIFBBBMBFF|j2-y3\n" "K\225\156ACMgABMFFFAC\n" "K\225\167BcJFMFFBFaBMB\n" "K\225\204AFBAFBABFBC\n" "K\225\224BFCAFBMFFaCdB\n" "K\225\233FBMFBMBFFBB\n" "K\225\302BMFFBMFFFBA\n" "K\225\316ABFMFJBMFBB\n" "K\225\366BLBJMFFJMFF\n" "K\226\107FBBBMFFJMFF\n" "K\226\113CFFFBMFBFMgA\n" "K\226\135BFLJMFFFBFF\n" "K\226\170FBIMFJBLBLB\n" "K\226\203BFJFBACFBAC\n" "K\226\247BBFaBALBCBLB\n" "K\226\261FaCFaBgAAFACMgJ\n" "K\226\322ABgCFaBgFBMBBF\n" "K\226\342BMFFBMFFBMF\n" "K\226\354BMFFBFIFaCFaBg\n" "K\226\363CFFFBMFMFJC\n" "K\227\102BMFABAFBFFF\n" "K\227\111ABBAFACALCC\n" "K\227\130AFFBBFBIFaCdB\n" "K\227\146BFJMFFBMFFB\n" "K\227\156CCIBBFaACBMF\n" "K\227\176ACACBMFAFaJC\n" "K\227\202MCIMCIBFCAF\n" "K\227\235FBFIBMFFBFF\n" "K\227\244FaCdBFBFALFBF\n" "K\227\246BFAcAfCCIACFB\n" "K\227\252BMBFFAFaCBMF\n" "K\227\261CAFBACBFCAF\n" "K\227\262FaCdBAFaCAFBFF\n" "K\227\301CCIBFBMFBAC\n" "K\227\302ABgACCAJFkFFB\n" "K\227\313FaCdBFBFALAFaC\n" "K\227\335BMBFFAcAfCBAC\n" "K\235\352JFMgKACBMBBF\n" "L\210\250FBBFaCACAFFJC\n" "L\210\254FBIMFJFAfCFBF|j2-y3\n" "L\210\314ABBMFBMFFBFB\n" "L\210\371ACBMFFBiCAFaJC\n" "L\211\121CCIBMBFBMBMF\n" "L\211\136BMFBMFFFBCFacaCf\n" "L\211\137FBFaBCCCCFFAfC\n" "L\211\143CCABFaBMFABMF\n" "L\211\154FBFIFBBBMFJC\n" "L\211\162CFFFBMFCMFaAC\n" "L\211\172FBFBFACBiFKAC\n" "L\211\207FBIACCAFFJFaC|j2-y3\n" "L\211\234ABMCAFBACFJC\n" "L\211\267CCIBMFFBMBBF\n" "L\211\305BcJFBBFaACbgAAAC\n" "L\211\337BMBFBMBMFCFacaCf\n" "L\211\352MgJBMFBMFFFAC\n" "L\212\107AcAfCBACACFFAfC\n" "L\212\112BMFFBMFFFFJB\n" "L\212\113FaCdBFBiALABMFF\n" "L\212\130AABFBFFBIFFB\n" "L\212\157CCABFaBMFFFJL\n" "L\212\204BBFaFBFFBMFBB\n" "L\212\246BBFaFBBFFACCC\n" "L\212\253BMFAFaBMJLFJC\n" "L\212\254FBIFBBFFFALL\n" "L\212\267FBIAFaBMJLFJC|j2-y3\n" "L\212\270FBFBFFIBAFJC\n" "L\212\273FBACBBFaBMFMF\n" "L\212\274FBFFFBACAFaJC\n" "L\212\324BMFFBMFFBMFF|l1-l5\n" "L\212\325BMFFBMFFFBAC\n" "L\212\354FBFBMFCAFBMF\n" "L\212\364AcAfCAcAfCFJCKAC\n" "L\212\366FBIBFaFBMFFFB|j2-y3\n" "L\212\372FBBFFFACJMFF\n" "L\212\373FBACFBBFFFAC\n" "L\213\115BMFBFBMFFFAC\n" "L\213\134FBBFFFACAFaJC\n" "L\213\151BMFFBFIMgAFJC\n" "L\213\213AcAfCBACACFBMF\n" "L\213\227BMFBFBIBFMFF\n" "L\213\305BMFFFBFBBFJL\n" "L\213\316FBBBMFBFFIMgJ\n" "L\213\325FBFIFBFFACFFa\n" "L\213\330AFBAFBJMFFMgJ\n" "L\213\366BMFFBMBICCFacaCf\n" "L\213\367FaCdBBMFFBMFFC\n" "L\214\150FBBAFmgBMFAFJC\n" "L\214\151BMFFBFBMFBAC\n" "L\214\171FBMFFFBFaCFBF\n" "L\214\213AcAfCBACFBFBMF\n" "L\214\227BMCAFFJCMFLF\n" "L\214\230BFBMFBFFaCFBF\n" "L\214\237FBACACFBMFJC\n" "L\214\270CCIJFFBMFCAC\n" "L\214\316CCIFBBMFJMFF\n" "L\214\331FMFJABBFBFFF\n" "L\214\344AABAFFBFBIMgB\n" "L\215\121ACBFBBBFLJBL\n" "L\215\140CCIFBBFACMFL\n" "L\215\144FJBMFFBMFFJC\n" "L\215\151AcAfCBACBFACJK\n" "L\215\200FBIFABMFFFAC\n" "L\215\274CFFFBMFAFBFF\n" "L\215\331FBFBFABiACKAC\n" "L\215\364AFBAFBFBMBAC\n" "L\216\120ACACACACACFB\n" "L\216\125FBBFBMFFAFJC\n" "L\216\207BFBIALAcAfCBAC\n" "L\216\214CFFFBMFMFBMF\n" "L\216\225BFBFCAFBACLB\n" "L\216\240CCICAFAcAfCAcAfC\n" "L\216\262FBMFFFBBMBFF\n" "L\216\274CCIBMFFBBCAF\n" "L\216\317FBFABMFFACCC\n" "L\217\101BFBMFBACFJLC\n" "L\217\117ABMBBFABAAAC\n" "L\217\127ABAFBFFFFBAC\n" "L\217\172AABAJFBBMFFF\n" "L\217\207JBBFABMFFFAC\n" "L\217\213BMFFFBFABMFF\n" "L\217\237JMFFCAFFJCFaJ\n" "L\217\266BCABFaBMFAFFBg\n" "L\217\273BMFFBMFFBMFF|y5-y1\n" "L\217\304CAJCFBFBBFJL\n" "L\217\305ABAFBFFFACCC\n" "L\217\311FJBMFBCABMFF\n" "L\217\317CAFBACBFJFBF\n" "L\217\330CFFFBMFFBFBF\n" "L\217\331CFFFBMFMgABMF\n" "L\217\333AFaBMBFACbgAAAC\n" "L\217\364BMBFFBFaBMFFF\n" "L\220\101FBACFBBMFFFL\n" "L\220\102FJFjCFBBMFFFL\n" "L\220\130FBACFBACFBAC\n" "L\220\146CFFFBMFACAAA\n" "L\220\161MFFFBIBMFFBC\n" "L\220\174FBMJLFFAFBFF\n" "L\220\213CAFACbgAAACCFacaCf\n" "L\220\217FaCdBAFBMFFCFacaCf\n" "L\220\260BMFFFBFFBMFF\n" "L\220\305AFBACCABMFJL\n" "L\220\342AcAfCBACAFaMBFL\n" "L\221\120CAFFFBCAFBMF\n" "L\221\122AFaCCFJCCACCC\n" "L\221\141FaBFBIFBMFBAC\n" "L\221\151CFFFBMFAJFBC\n" "L\221\156ACFMFFJBMFBB\n" "L\221\162FBBMFBMFFBiAC\n" "L\221\222FBBFAFaCALFJB\n" "L\221\225BCIFBFBFABiAC\n" "L\221\252CCIBMFFFACBB\n" "L\221\256MFJABMFBMBIC\n" "L\221\265FBICAFBMFFBB|j2-y3\n" "L\221\270CAFBMJLFFFBC\n" "L\221\302FaCdBJFBMFFFBF\n" "L\221\304ACBFJFBFBMFF\n" "L\221\326FFJCFFJCBMFF\n" "L\221\335ABFCCBMFFFAC\n" "L\221\340FaCdBCAFACbgAAAC\n" "L\222\102FBFCAFFFBCFacaCf\n" "L\222\111FBACJMFFJMFF\n" "L\222\132AFFJCFBMFCAF\n" "L\222\145MFBmgCCABMFFFB\n" "L\222\161AFFJCBMFBMFF\n" "L\222\170MFJCAFFFBCFacaCf\n" "L\222\205CAFBFFABMFFF\n" "L\222\231BMFFFACBBFaFB\n" "L\222\251FBBMFFFBJMFF\n" "L\222\264FBFBFACMgABMF\n" "L\222\311BFJCIFaCBMFFB\n" "L\222\313FBIBFaFACbgAAAC\n" "L\222\347FBIBMFFFBFJC\n" "L\222\361FBIBMFFFBFJC|j2-y3\n" "L\222\366AFBACBMFFBFF\n" "L\223\141MJFBBFACJFlFaC\n" "L\223\156CCIBFJFBBFFaC\n" "L\223\157FaCACAFBMFCAF\n" "L\223\203FBIFBBACFBMF\n" "L\223\213FBIFBBACFBMF|j2-y3\n" "L\223\217FBACFBMFFBAC\n" "L\223\222CCIBMFFBAFaAA\n" "L\223\227BFJCIFBMFCAF\n" "L\223\231AFBAFBFBFFBC\n" "L\223\232AFBAFBACFBMF\n" "L\223\233AFBAFBBMFBMF\n" "L\223\235AcAfCBACBFAfCJL\n" "L\223\266BFCAFBMFFBFF\n" "L\223\271CAFABMFFFCFacaCf\n" "L\223\335ACFFBCAIALBL\n" "L\224\160BFJFaCACAFFJL\n" "L\224\175BcJFFBBFFFBAC\n" "L\224\203BMBBFBMFFFAC\n" "L\224\216FBFBMFFBCFBC\n" "L\224\321ACBMFFBiCFJFaC\n" "L\224\323BMFFAFaBMBFJL\n" "L\224\324ACAFBACBMBFF\n" "L\224\330BFJBACBMFBIC\n" "L\224\337JFFFBFFFALCC\n" "L\224\340FMFJJFFIBFFF\n" "L\224\357MFBmgJBBMFFFAC\n" "L\224\365ABFBBFABMFFB\n" "L\225\135CFFFBMFFCAFB\n" "L\225\170BBFaFBMFBMBFF\n" "L\225\201CAFBBCAFBMFF\n" "L\225\234AABAFBMFFAFaC\n" "L\225\235BMBFBMFBMBFF\n" "L\225\265FBFaBCCCCACMgJ\n" "L\225\273FBIBMFFFJFagAA\n" "L\225\325FMFJBMFBBCFacaCf\n" "L\225\342BFaBACFBMFFBC\n" "L\225\345FBBBMFFFACMgJ\n" "L\225\361FBFCAFFBMgBFaC\n" "L\226\124ABBFCABFaBFFbgA\n" "L\226\130BMBBMFFBMFFF\n" "L\226\137FBACFFFJCFFB\n" "L\226\146ABiCMgJBMFFFAC\n" "L\226\236CCIFBBFBMBLB\n" "L\226\263AFFBBBBFACCC\n" "L\226\271BcJFFaBFJCBMFF\n" "L\226\371ACBACFBMFFBB\n" "L\227\120ABgACAFBMJLFF\n" "L\227\124BFaBACACACBMF\n" "L\227\126BFMgJAFFaBgFCFacaCf\n" "L\227\131FJAfCABAFBFFF\n" "L\227\147FBIBMFFFJFagAA|j2-y3\n" "L\227\150FBIACCAFFBLB|j2-y3\n" "L\227\164FBBFBBFLFBAC\n" "L\227\172FaCdBBMFFFAFagAA\n" "L\227\215AcAfCBACAFaCBMF\n" "L\227\216FBBCCIAFaCBMF\n" "L\227\222BLBJFkABMFBIC\n" "L\227\237BFJCIAFBACBB\n" "L\227\260FJBMFBFAfCJBL\n" "L\227\312BMFFFBMFFBFF\n" "L\227\333BMBFFCIACFBF\n" "L\227\364FAFaCBBBFABiAC\n" "L\230\114BFJBMFFBiCFaCbgB\n" "L\230\146FBMFIKACALCC\n" "L\230\160CCIBFJBACMFBmg\n" "L\230\162JMFFBBFaJFjCML\n" "M\210\244ACCABFaALCCAFaC\n" "M\210\303BMFFBFCAFBMFF\n" "M\210\323BFCAFBMFFALCC\n" "M\210\341BMFBMFFBFBCFacaCf\n" "M\211\200BMFBFBMFABACF\n" "M\211\214CAJCFBMBBFFBF\n" "M\211\216ABgAFBFBMFABiAC\n" "M\211\223FBFBMFABACCFacaCf\n" "M\211\224ACFFBCAIACBMF\n" "M\211\226FBIAFBMFBMBBF\n" "M\211\311BMFFMFBFFMFFaC\n" "M\211\320BFaBCBMBFBMBMF\n" "M\211\353FBFBAABAFBFFF\n" "M\211\360AFaJMBFFMgAAFFB\n" "M\211\362FBIABMBFFJLAfC\n" "M\212\123ACBMFFBiCFBFJL\n" "M\212\131CFFFBMFBFAcAAC\n" "M\212\162FBMFFFBBFACAC\n" "M\212\165FaCdBFBMFBMALFB\n" "M\212\171ABMFFCIACFBAC\n" "M\212\212CCIBMBFBFaBLFF\n" "M\212\214BFaBACBMFFAMgAL\n" "M\212\251AFFJBBFBFFFMgJ\n" "M\212\260BBFaFBBBMFFFAL\n" "M\212\262FBBMFFFBACFFB\n" "M\212\264JFFBMFKACALCC\n" "M\212\277CCIFBBBMFFFJC|y10-j7\n" "M\212\346FFJBiFABMFFFAC\n" "M\212\374BFAfCFBBBFFBAC\n" "M\213\140CAFBFFAFBIKAC\n" "M\213\154CFFFBMFFBFBMF\n" "M\213\306BBCAFCAFFFBAC\n" "M\213\311FBACFBMgBMFFaCF\n" "M\213\326FBACFBACFFBAC\n" "M\213\360BMFFBMBICALCC\n" "M\213\361BFJFaFLBMFBmFAC\n" "M\214\103FBBFBMFFBABAL\n" "M\214\121MFFJBMFCAFFFB\n" "M\214\130ABALFABMFFFAC\n" "M\214\147FBIABBFBFFFAFafag|j2-y3\n" "M\214\160AcAfCBACCAFBACL\n" "M\214\206ABJFjCFBFBFBAC\n" "M\214\231BcJFCAFMFFBBAC\n" "M\214\243FBBMCAFFBFJCC\n" "M\214\246AcAfCBACBMFBMFF\n" "M\214\255BMFBFBMFMFCFacaCf\n" "M\214\271CCIFJBBMFFBAC\n" "M\214\326CFFFBMFFJCFFBmg\n" "M\214\333FBFBMFCAIFBFaC\n" "M\214\351FBBFFFACFABMF\n" "M\215\141CCIFBBFFBMBFF\n" "M\215\172ACFFBCAIBFJAfC\n" "M\215\230JMFFFBMBBFAcJF\n" "M\215\302ABFBFFBMFFFAC\n" "M\215\303ABBLBABBFBFFF\n" "M\215\316BFBFJFFBACCAC\n" "M\215\332FBFFBMFFFBKAC\n" "M\215\337BMBBFJFFIBFFF\n" "M\215\357FBIBBFaJLAFBFF|j2-y3\n" "M\216\153BMFBMFBBMFBMF\n" "M\216\215CFFFBMFFBFFBC\n" "M\216\216CFFFBMFFFBIKC\n" "M\216\221CIAFaJCBMFFFAC\n" "M\216\224ACBMFFBiCMFBMF\n" "M\216\234CAFAcAfCAcAfCALCC\n" "M\216\253AFBBMFBFCAFFB\n" "M\217\104AFBACBAJCALCC\n" "M\217\126FBMJLFFAJCBCB\n" "M\217\200CCIABAFBFFFFB\n" "M\217\220BMBBFFBFABMFF\n" "M\217\235ABAFBMFFFAMAA\n" "M\217\247BCIACCAFBCFJC\n" "M\217\306BMFFMgABMFACCC\n" "M\217\332CFFFBMFCAFFFB\n" "M\217\366FBBFaBgFaAFFACCC\n" "M\217\374ACBMFFBiCAFBMB\n" "M\220\107AFaJMBFFBMFBIC\n" "M\220\121BBFaBCIMFFBFaFaC\n" "M\220\124ACBFBBMFFFFAC\n" "M\220\126BFCAFFBACAJFB\n" "M\220\207BMFFFAFFBBFBF\n" "M\220\224CAFBACAcJFAFJK\n" "M\220\250FBFJLFBIJFlCMgJ\n" "M\220\271FBFFIBBMFFBFF\n" "M\220\275CFFFBMFJFMKAC\n" "M\220\325BMFBFBIBFJBAC\n" "M\220\333FBIFBFFIBCAAC|j2-y3\n" "M\220\337AFBAFBMFFBiCMB\n" "M\220\355CCABMFFFBFKAC\n" "M\221\102JMFFABMFFBFaAC\n" "M\221\110BMFBFBIFFFKAC\n" "M\221\124BFaBCCCABMFFFB\n" "M\221\131CAFLBJJMFFFBF\n" "M\221\155ABCABMBFFBMFF\n" "M\221\172FBACBMFFFALCC\n" "M\221\257BMFFFACFFBKAC\n" "M\221\261AcAfCBACFBFBFaJL\n" "M\221\271FBIBMFBMFFFAC|j2-y3\n" "M\221\330CCIFBBBFBFaBMB\n" "M\221\352CCIBFCAFBMFFL\n" "M\222\121BMFFBBBMFFFJC\n" "M\222\147BMFFACCAFFJFaC\n" "M\222\163BFJCIAFFJCBMF\n" "M\222\164AFBACABAFBFFF\n" "M\222\165BMBBFFBBMFFFL\n" "M\222\176FBBBFAcAfCBMBFF\n" "M\222\260JMFFBMFFFJMgAA\n" "M\222\265BMFBFBIJCILAC\n" "M\222\300ABAFBFBMFFFAC\n" "M\222\370AJMCBIAFBFFaFjC\n" "M\223\123ACFFBCAIAFFJC\n" "M\223\144FBFaBCCCCBMFFL\n" "M\223\150CCIACFFBACFBF\n" "M\223\255ABAFBMFFBFIMJ\n" "M\223\302BFFBACFaCBMFFF\n" "M\224\137BMBBFFFJFFBiAC\n" "M\224\231CCIFBBBMFFFJC|j7-y9\n" "M\224\253ACFFBCAIFBACF\n" "M\224\300FBIAJMCBIAFlFaC|j2-y3\n" "M\224\317CAJCFABMFFFAC\n" "M\224\320ACMJFABMFFFAC\n" "M\224\367AABBLBFJBiAFJK\n" "M\225\237BFaBCFBMFBMBFF\n" "M\225\240JMFFAFBMFFAFaC\n" "M\225\346FBBBMFFFACFBF\n" "M\226\114BMBBFFFBMFCAF\n" "M\226\117ACBMFFBiCAMgMFL\n" "M\226\213FBBBMFFFACBMB\n" "M\226\262FBBBMBBFAFaAFaC\n" "M\226\277BMFFJMFFBMBBF\n" "M\226\305CCIFJFBAJCCAC\n" "M\227\137CCAFACCFFFBMF\n" "M\227\141FaCFaBgFABMFFFAC\n" "M\227\165FBBBBFaACACBMF\n" "M\227\207BFaBACBMFFFBAC\n" "M\227\213FBFaBCCCCBMBFF\n" "M\227\217FBMJLFFAFaCBMF\n" "M\227\240BFBMFFBFFABiAC\n" "M\227\270BFJFaFLBMBFFMgJ\n" "M\227\351ACFFBCAIACCFaC\n" "M\227\351ACFFBCAIACFMgB\n" "M\227\353FBFaBCCCCACCFaC\n" "M\227\353FBFaBCCCCACFMgB\n" "M\227\365BFJCAFMFFBBAC\n" "M\230\110BMFBFBIAFaCBMF\n" "M\230\117FBACCAFBACAcJF\n" "M\230\142CFFFBMFAFBBMF\n" "M\230\144BMFFFACJFBMFF\n" "M\350\361ACAfCFABMFFFAC\n" "N\210\273AcAfCBACFBFJLAFaC\n" "N\210\333AcAfCBACABAFBFFF\n" "N\210\356AFBACACCABBMFF\n" "N\211\102FaCdBACCAMFFAMCC\n" "N\211\167BFBFFMgBCCCMFJC\n" "N\211\211CCIBBFaFBMBFFAC\n" "N\211\307BBFaFBBMFFFACMgA\n" "N\211\314FBMFBFBMFBAFaJC\n" "N\211\323AFBAFBBMFBBMFF\n" "N\212\124FBACMFFBiCFBFJL\n" "N\212\164BMFFBMFFAFaCBMF\n" "N\212\265ACBLMBFBMFFFAC\n" "N\212\307AFBAFBBBFaBMFMF\n" "N\212\326BMFFBMFFCAFFJC\n" "N\212\370BFMgJAFFBBFFFAC\n" "N\213\136ALAFFJCFaCFaBFJC\n" "N\213\231CCIAFaBMBFFACCC\n" "N\213\253FBIBFCAFBMFFJL\n" "N\213\342ACFFBCAIMFFBiAC\n" "N\213\354BFBFFMgBCCCFJCL\n" "N\214\352CFFFBMFFBMFBMF\n" "N\214\353CFFFBMFBMFLbFAC\n" "N\215\134FBACFBBFFBMBFF\n" "N\215\152AcAfCBACBMCAFBLB\n" "N\215\171FBMJLFFFBFAFaBgF\n" "N\215\213BFBMFBFaFACbgAAAC\n" "N\215\222FBFBFaAFBACJFlFaC\n" "N\215\223FBMJLFFAFBFBMF\n" "N\215\226ABgACFFFBMFFJKC\n" "N\215\260FFAfCABMBFFJLAfC\n" "N\215\333FaCdBAFaCCFaCFFBgAC\n" "N\216\100BBFaAFaCCFaCFFBAC\n" "N\216\107JFlFBACABAFBFFF\n" "N\216\132AFBAFBBMFFFFJB\n" "N\216\137FBMJLFFAfCJLAFaC\n" "N\216\217CFFFBMFFBFALCC\n" "N\216\223BFBIALABAFBFFF\n" "N\216\245FJBMFCAFAcAfCAcAfC\n" "N\216\275CCIFBACACBCAAC\n" "N\216\325BFJFBBFACCCCFacaCf\n" "N\216\355AFBACAFBMFFBFF\n" "N\216\371FBFaBCCCCFABMBB\n" "N\217\145ACFFBCAIBFAfCJL\n" "N\217\155BFBMFFaBgIJFlCFBF\n" "N\217\156BFBMFFaBgIJFlACCC\n" "N\217\217AcAfCBACFBFABMFF\n" "N\217\262BFCAFBMFFFBAAA\n" "N\217\341FaCdBBFCAFBMFFFB\n" "N\220\270CAFBACFBFFBMFF\n" "N\220\273AFFBMBBBBFABiAC\n" "N\220\276FBIAJFBCFFFBMF\n" "N\220\303FBFFBMFFAFaMFFB\n" "N\220\340CFFFBMFCABMFJL\n" "N\221\113ACFFBCAIFFFKAC\n" "N\221\114ACFFBCAIAFBFJL\n" "N\221\121CCIFBMFFFBAJFB\n" "N\221\167MFJCABMBFFBMFF\n" "N\221\215AcAfCBACACAfCBLCC\n" "N\221\230FBMBBFFBMFFCFacaCf\n" "N\221\234ABAFaBMBFACbgAAAC\n" "N\221\235FBICABMBFFBMFF\n" "N\221\236ACBCABMBFFBMFF\n" "N\221\312BFBFFMgBCCCFJCC\n" "N\221\324AfCBMFFALALALCC\n" "N\222\104FJCABAFBFFFFBC\n" "N\222\133BFCAIBLBFABMBB\n" "N\222\204BcJFBFCABMFBBMF\n" "N\222\245AABBLBFBFIAFJK\n" "N\222\320CCIFBFFBMFFFAC\n" "N\223\105FBIBFCABMFBBMF|j2-y3\n" "N\223\110CCIBFCABMFBBMF\n" "N\223\272ACFFBCAIBMFBMF\n" "N\223\277AABFBBMBBFALCC\n" "N\223\307CFFFBMFFBFBFaJL\n" "N\224\106CFFFBMFMgACALCC\n" "N\224\112BBFaALCCBMBBFFB\n" "N\224\257BFFFFAfCAAAFJFaC\n" "N\224\261BMBBFCFFFBMFBB\n" "N\224\264BMFFBMFFABFKAC\n" "N\224\350FJBMFABMBFFAFB\n" "N\225\100ABMFFFBMBFFFJK\n" "N\225\131CCIFBMBBFFFBAC\n" "N\225\205BFJABFBCBMACAC\n" "N\225\241BFaBACACBMFFAFaC\n" "N\225\267BMFFBMFFFBFFIB\n" "N\225\311FBFIABMFFFABMF\n" "N\225\347FBBBMFFFJCBACC\n" "N\225\351FBBBMFFFACBMFF\n" "N\226\154ABBBCAFCAFFFJC\n" "N\226\156BMFFBFFACCCFBF\n" "N\226\214JMFFFBBBMFFFJC\n" "N\226\235ACBBMFFBMBBFFaC\n" "N\226\237CCIBMFFBMBBFFaC\n" "N\226\301ACFFBCAIAFaCBMF\n" "N\226\302BMFABMFFFMgABCC\n" "N\226\310AcAfCBACABMFFBMB\n" "N\226\315FBACFBBBMFFFJC\n" "N\226\324AcAfCBACBMCAFBFL\n" "N\227\125CFFFBMFAFBACAFafag\n" "N\227\154FBACCAFFFBCIAC\n" "N\227\170BMFBFBIFaCBMFFB\n" "N\227\273ABFJCCABMFFBAC\n" "N\227\314ACCFaCFABMFFFAC\n" "N\227\314ACFMgBFABMFFFAC\n" "N\227\316AcAfCBACMFFBCIAC\n" "N\227\357FJFBACFBACBMFF\n" "N\227\360FJFBACFBACBFBF\n" "N\227\373AcAfCBACFBMFFBAC\n" "N\230\122CCIMFJFBMBCCCC\n" "O\210\324MFJFFBACFBCALCC\n" "O\210\342BMFBFBMFFFACCFacaCf\n" "O\211\145BMFFBFBMFBACAAA\n" "O\211\163ACFFBCAICABMFJL\n" "O\211\171CFFFBMFBMFFAMgAL\n" "O\211\173BMFFBMFFCABMFJL\n" "O\211\217AcAfCBACMFFACbgAAAC\n" "O\211\241FBACFBBFBMBFFAC\n" "O\211\255ABBFCAFBMFFACCC\n" "O\211\322AFBACBBFaFACbgAAAC\n" "O\211\333CFFFBMFBMFFFBAC\n" "O\211\354ACBMFFBiCAFBAKAC\n" "O\212\155FJBMFBFaJBAFBFFF\n" "O\212\203CCIABFMFFAMgACCC\n" "O\212\275AFFJBBFBFFFAFaJK\n" "O\212\304BFBMFBFAFFBMBBF\n" "O\212\311AcAfCBACACCAFFJFaC\n" "O\212\355BMFBMFFJCBMFBMF\n" "O\212\360BcJFFBFBMFCAFBMF\n" "O\213\120BCAFJBiBFaFBMFFFB\n" "O\213\126ABCAFBFFAFBICAC\n" "O\213\131BFJFaFLBBCAIFKAC\n" "O\213\207BBFaALABMFFIAMFBmg\n" "O\213\331BMBMFBFFaCAcAfCBAC\n" "O\213\356BFBFFMgBCCCAMgBMF\n" "O\214\115AFBMFFBFIMgJACCC\n" "O\214\143BFJMBBFFaACfCCAFaC\n" "O\214\200BFJFaFLFACbgAAACBB\n" "O\214\202FBMFFFBAFlFaCAFFBg\n" "O\214\211CCIFBFFMgAAcAfCBAC\n" "O\214\240FBACAFFJBBFBFFF\n" "O\215\145AFBACBFBMFBMBMF\n" "O\216\102FBIBMFFFBFFIBFaC|j2-y3\n" "O\216\136FFJCFFJCBMFFFAC\n" "O\216\142FBMFFFBAJFBBMFF\n" "O\216\222BMFFFACBMFFAFcgCC\n" "O\216\277AJFBAJFBBMFFFAC\n" "O\216\357FBFBFACFBFFIBFaC\n" "O\217\201CCIBMFFBMgFFFBFF\n" "O\217\205CAFBMJLFFFBCCFacaCf\n" "O\217\224CFFFBMFFBFABMFF\n" "O\217\325AABAFBMFFBFIFFB\n" "O\217\334BCABFaBMFBMFFFAC\n" "O\217\372BMFMFJABMFBMBFC\n" "O\220\122BBFaACAFBACBMBFF\n" "O\220\153FBFaBCCCCFJFFBiAC\n" "O\220\237CCIFaCACAFBMFCAF\n" "O\220\277CFFFBMFFBFFBMFF\n" "O\220\366CCIFFJCFFJCBMFF\n" "O\220\374AcAfCBACABMFFBFaAC\n" "O\221\111MFLMFLFBBFACCFacaCf\n" "O\221\112FBMBBFFACMFLCFacaCf\n" "O\221\205FBACFBBMBBFBMFF\n" "O\221\240FBBJFBFBMFBFKAC\n" "O\221\370CFFFBMFFBBJFBMF\n" "O\222\116CFFFBMFABAFBFFF\n" "O\222\141CFFFBMFABFBFFaCaC\n" "O\222\153CFFFBMFCAJCCAJC\n" "O\222\222ACFFBCAIFFFJFBC\n" "O\222\223BFBFFMgBCCCCFBFF\n" "O\222\252CCIFBBMFFFBJMFF\n" "O\222\262CFFFBMFJMFBFBMF\n" "O\222\304FaCdBCAFACbgAAACFBF\n" "O\222\367AcAfCBACBFCABFaBMB\n" "O\223\107BFCABMFBBMFAFJK\n" "O\223\117AABBFAfCBMFFAFJK\n" "O\223\120FBIBFAfCBMFFAFJK|j2-y3\n" "O\223\234CAFBACBFJFbFFBMF\n" "O\223\245BMFBFBIBFaACBMFF\n" "O\223\261CAFABMFFFCFacaCfFBC\n" "O\223\352AcAfCBACBMFFBMFFL\n" "O\224\115FBFALFBIJFlCACCC\n" "O\224\171JFFIBFFFFBMFFFB\n" "O\224\205BMFFFACBFCAFBMF\n" "O\224\240AFBAFBFBACBMFFF\n" "O\224\315AFBAFBFBMFFFBMgL\n" "O\224\325AJMCBIJLFaCBMBBF\n" "O\224\353BMBBFAfCBMFFALAL\n" "O\225\127FBACFBMBBFFFBAC\n" "O\225\157BBFaFBACABMFFFAC\n" "O\225\176FBMFFBCBFMgJAFJK\n" "O\225\206BFJFaFLBMBFFBMFF\n" "O\225\212BMFFFACFFBFBIKC\n" "O\225\221AFFBBBBFAFaCFBFB\n" "O\225\254BMFFBFBBBMFFFAC\n" "O\225\255FBIFBFBBBMFFFAC\n" "O\225\256BACFBFBBBMFFFAC\n" "O\225\274BCABMBACAFACBMB\n" "O\225\276BCABMBACAFACFJB\n" "O\225\322AcAfCBACFMFJBMFBB\n" "O\225\334ACFBFBMFFBMFFBC\n" "O\225\344AFBACFBMFFBALCC\n" "O\226\112BFABBMFFBACABiAC\n" "O\226\134BMFFFBBFACBCIAC\n" "O\226\157FBIBBCAFCAFFFJC|j2-y3\n" "O\226\200BFJFBACFBACAFFBg\n" "O\226\243ABMBFFJLAfCFFBAC\n" "O\226\331BMFFBFIFJCCACCC\n" "O\227\112FABMFFBFaALCCAFaC\n" "O\227\161BBFaALCAFBFFACCC\n" "O\227\173CAFBFFACBMFFBiAC\n" "O\227\232MFJAABAFBMFFAFaC\n" "O\227\266BFJFaFLBMBFFALCC\n" "O\227\276BBFaFJCCABMFFBAC\n" "O\227\326FBMFFFBACFBMFBB\n" "O\227\354FBFaBCCCCFFBBCAF\n" "O\230\137CFFFBMFACFBMFBB\n" "P\210\334AcAfCBACBMFBMFFBFB\n" "P\211\161AABBMFBMFFBFBFFBg\n" "P\211\257ACBBFCAFBMFFACfCC\n" "P\211\270AFBACACCAMFFALCC\n" "P\211\363FBIFBBMBBFBFABiAC\n" "P\211\371ACBFBBMBBFBFABiAC\n" "P\212\154ABgAFBBABAFBFFFFaC\n" "P\212\266ACBJFFBMFCACACfCC\n" "P\212\322BMBBFFBMFABACCFacaCf\n" "P\212\331ACBMFFBiCBBFaBMFMF\n" "P\213\100FBACAcAfCAcAfCFJCKAC\n" "P\213\264FBACAFJCBMFBMBMF\n" "P\213\273ABFFBMFBMFMFFFAC\n" "P\213\303CIALAFFJCFaCFaBFJK\n" "P\214\117FBBAFBMFFBFFACCC\n" "P\214\145AFBBMFABMFFFALCC\n" "P\214\203CCIABMFFBFMgJAFJK\n" "P\214\233BBFaFBFFBMBBFALCC\n" "P\214\253BFBMFBFFaCBMFFFAC\n" "P\215\164AABAFaBMBFFFJCFFBg\n" "P\215\244ACCACbgAAMFFBiACFBF\n" "P\215\366ACFFBCAIFBBFBMFF\n" "P\216\220CFFFBMFCIAFaJCBMF\n" "P\216\362ABFAFaBCCCCFABMBB\n" "P\216\367FBACFBFBMFCAIFBC\n" "P\217\142CCABMBFFFBMFFJKC\n" "P\217\143AcAfCBACAABCAFBFJC\n" "P\217\353FBIBFACFBBFFABiAC\n" "P\217\354BcJFBFACFBBFFABiAC\n" "P\217\371ACFFBCAIBBFaFBFJC\n" "P\220\144FBBBFCAFFBACAJFB\n" "P\220\145BFCAFFBACBMFFFJL\n" "P\220\216ACFFBCAIAFFBBFBF\n" "P\220\256FBMFBACAFACFBFBF\n" "P\220\317AFBACFBFFBMFFFAC\n" "P\221\105FBBBFJMBBFFBmgACCC\n" "P\221\200FBIBMFBMFBMFFBAC|j2-y3\n" "P\221\367CCIBMBBFAMgBMFBIC\n" "P\222\144FBIBFBMBMFFBMFFF\n" "P\222\172AFBAFBFBIJFlCFBAC\n" "P\223\252FBMFCAIFABMFFFAC\n" "P\223\304AFBAFBBMBFFMgACCC\n" "P\223\334BMFFFBFaBCCCCFFAfC\n" "P\224\122CAJCJFjCCFJCCACCC\n" "P\224\132CCIBMBBFFFJFFBiAC\n" "P\224\226FBBCCIFBMFFBCFBC\n" "P\224\233AcAfCBACFBMFFBCFBC\n" "P\224\311AFAcMBFAFACAcAfCBAC\n" "P\224\360MFJBMFBFCAFFBCFacaCf\n" "P\225\231FBBBMFBFBIAFaCBMF\n" "P\225\261FJCABAFBFFFBMBFF\n" "P\225\307MFJBMFBFCAFFBFBF\n" "P\226\104AcAfCBACAFaCFFFBCFacaC\n" "P\226\143JMFFFBFBMFCAIAAA\n" "P\226\144CFFFBMFFBBFFFBAC\n" "P\226\201BFJFBACFBACFABMF\n" "P\226\362FBBABMFFCIACFBAC\n" "P\227\100CFFFBMFACFBMFFBB\n" "P\227\101FBMFFFBACFBMFFBB\n" "P\227\132FBMFBMJLFBBMFBIC\n" "P\227\151FBIBFAcAfJABAFBFFF\n" "P\227\167CFFFBMFACCAFFBLB\n" "P\227\212FBMFBACFABMFFFAC\n" "P\227\264FBCAFBMFFFLbFLFFF\n" "P\227\327FaCdBCAFBACAFaCFBFB\n" "P\227\352FBFFFBACMFFBCIAC\n" "P\230\102ACFFBCAIFBMFFBAC\n" "P\230\136ACFFBCAIMFFBCIAC\n" "Q\212\144BMFFBFJBACFBFJBAC\n" "Q\212\215FBMFFFBBBFaFBFFBMF\n" "Q\212\302FBFIBMBBFFBMFABAC\n" "Q\212\330FBBMFFFBBMFBMFFLB\n" "Q\213\133FBIALAFFJCFaCFaBFJC|j2-y3\n" "Q\213\135AFBICAFBFFAFBgICAC\n" "Q\213\270AFFJCAFACBMFBMBMF\n" "Q\213\336CFFFBMFFBBBMFBFFF\n" "Q\214\252CFFFBMFCAFMFFBBAC\n" "Q\214\256ACFFBCAIMFFFFBFaFaC\n" "Q\214\265CCAFJFBFBFFIBAFAC\n" "Q\215\165CFFFBMFFBBFFBMBFF\n" "Q\215\167BMFFFACFBBFFBMBFF\n" "Q\215\247ACCACbgAAMFFBiACALCC\n" "Q\216\103FBIBBFaAFaCCFaCFFBAC|j2-y3\n" "Q\216\323CFFFBMFABMFFFAFBC\n" "Q\216\335ACCABMBBFMFFBiCFBC\n" "Q\217\130FBMJLFFABMBFFJLAfC\n" "Q\217\153AcAfCBACBBFaABFABMFF\n" "Q\217\236ABBCABFaBMFBMFFFAC\n" "Q\217\312FJBMFABAFBFFFACCC\n" "Q\220\321AcAfCBACFBFFBMFFFAC\n" "Q\221\100AcAfCBACFBFBBCAIKAC\n" "Q\221\116AFaBMBFFBCCCCAFFFB\n" "Q\221\207CAJCBMFBMFBMFFBAC\n" "Q\221\232FBFaBCCCCFBACBMFFF\n" "Q\221\363CCIMFFMFFABAFBFFF\n" "Q\222\142ACFFBCAIABFFIAFlFaC\n" "Q\222\256FBFFIBFBBMBBFBLCC\n" "Q\223\243JMFFCAFFJCCFFFBMF\n" "Q\223\265BMFFFBFCAFBMFFBFF\n" "Q\225\160BFBFBACAFABMFFFAC\n" "Q\227\104ABFABMFFAFaALCCAFaC\n" "Q\227\203MCIMCIBMBFFFBBFAC\n" "Q\227\227BFBMFBFAFFBMFFFJL\n" "Q\227\303BFJCIFJCCABMFFBAC\n" "Q\227\344BLBACCFaCFABMFFFAC\n" "Q\227\344BLBACFMgBFABMFFFAC\n" "Q\227\356BFBFCAFBACLBACCFaC\n" "Q\227\356BFBFCAFBACLBACFMB\n" "Q\350\117ACFFBCAIBMBFBMBMF\n" "R\212\156AFBACFBBABBFBFFFFaC\n" "R\212\172BBFaJFaCBMFFABMFFFAC\n" "R\212\310AFBAFBBMFFBMFFBMFF\n" "R\212\317AFFJBBFBFFFBMFFFJL\n" "R\212\347BFCAFJAAAFABMFFFAC\n" "R\213\122FBBFFMgBCCCFJCFBMFB\n" "R\213\335BFaBACFBACFBACFFBAC\n" "R\214\260BMFFBBCAIFABMFFFAC\n" "R\214\261BFBFFMgBCCCACFBMFJC\n" "R\215\275ACFFBCAIBCABMFFFAC\n" "R\217\165BMFFFACCABFaJFjCFBFB\n" "R\220\104AcAfCBACBFCAFBMFFKAC\n" "R\220\105FBFFIBBFCAFBMFFKAC\n" "R\221\125AcAfCBACCAFFFBCAFBMF\n" "R\221\142FJBMFFBACFBACFaBFAC\n" "R\221\241BMFFFACCABMBFFBMFF\n" "R\221\325FBFBMBFFFBFBFACKAC\n" "R\221\350BMFFFBFACFABMFFFAC\n" "R\222\246AABBLBFBFFAFACALCC\n" "R\222\301ACFFBCAIFBBMFFFFAC\n" "R\223\254BMFFBMFFFBMFCAIFBC\n" "R\223\357FBBBMFFFJCABBFBFFF\n" "R\224\313FBBCCIACAFBACBMBFF\n" "R\225\210CFFFBMFCAFBBACBMFF\n" "R\225\242FBMBBFAABAFBMFFAFaC\n" "R\225\310BFJCIMFJBMFBFCAFFB\n" "R\225\353AFBAFBCCIFBMFFBFBC\n" "R\226\174ACAFBACBMBFFMCIMCI\n" "R\226\232FBBBMBAcAfCBACBMFBIC\n" "R\226\266FBFaBCCCCFaCFaBAFACMgJ\n" "R\226\374BFJCIACFBMCCAcAcALCC\n" "R\227\152BMFFMFFMFFABAFBFFF\n" "R\227\224CCIBFBMFBFAFFBMBBF\n" "R\227\243BFACLBBMAfCABBFBFFF\n" "R\227\306CAFBACBMFFFBMFFBFF\n" "R\227\325BFBMFBFAFBMFBMFBMF\n" "R\227\336CAFBACFJCFABMFFFAC\n" "S\211\103BFCAFBMFFBMFBMFFFAC\n" "S\212\350FJBBMFFBACFABMFFFAC\n" "S\213\276ACFFBCAIBFCAFBMFFJL\n" "S\214\112AcAfCBACBMFBMFBMFFBAC\n" "S\214\170FBBAMgBMFAFACCFFFBMF\n" "S\214\173ACCAFFJCABMFFFMgBCCC\n" "S\214\176AFaBMBFFBCCCBFBMFBAC\n" "S\216\243FACBMBACACACACFBFFC\n" "S\216\257CFFFBMFBFCAFBMFFKAC\n" "S\220\221BMBFBFaBMFFAFBMFFCFacaC\n" "S\220\243CCIFBMFBACFABMFFFAC\n" "S\221\224FBBCCIBMFBMFBMFFBAC\n" "S\221\237JMFFFBBJFBFBMFBFKJC\n" "S\224\145FBMBBFFBBFBMFFBJMFF\n" "S\224\232CAJCBMFFFBBFACBCIAC\n" "S\226\202BFJFBACFBACABMBFFAL\n" "S\227\205BMBBFAcAfCBACABAFBFFF\n" "S\227\355FBMCFBMCBFJMBBFABiAL\n" "T\213\143CFFFBMFCAFBFFAFBICAC\n" "T\213\243BFCAFBMFJBiBFCAFBMFJL\n" "T\213\277AcAfAMFFBiCFaCdBBFCAFBMFF\n" "T\214\234BMFFFLBACAAcAfCBACALCC\n" "T\214\354CFFFBMFFBBABAFBFFFFaC\n" "T\217\340ACFFBCAIBFCAFBMFFBFF\n" "T\217\367CFFFBMFBFACFBBFFABiAC\n" "T\217\370FBMJLFFBFACFBBFFABiAC\n" "T\220\320AFBAFBFFFBACFBBFBMFF\n" "T\223\253JMFFCAFFJCBFBFFMgACCC\n" "T\227\223FBACBMFFBMFFFBMFFBAC\n" "U\212\315AJMCBIBMBMFBFAFFBMBBF\n" "U\214\332FMFJABBFBFFFFABMFFFAC\n" "U\226\364BMFBFBIMFFMFFABAFBFFF\n" "U\230\111FBFaBCCCCBMFBFBIAFaCBMF\n" "V\213\301FBBAMgBMFAFACBFBFFMgACCC\n" "V\217\120BFCAFBMFFFBmFLFFFBFABiAC\n" "V\342\304AFBAFBBFCAFBMFFFBmFLFFF\n" "W\212\323ACFFBCAIBMBMFBFAFFBMBBF\n" ; } #endif /* FOR_STROKEDIC_CREATE_2 */ #endif /*__STROKEDATA_H__*/ /* ----- End of strokedata.h ---------------------------------------------- */ ./mytool/hwd/marathi.hwd0000644000175000017500000003373007732742746015323 0ustar henrichhenrich#HWD 2.0 DO NOT REMOVE THIS LINE # Swapnil Hajare # Marathi letters and numbers 01 ० 10-8-6-4-2-12 01 ० 12-2-4-6-8-10 01 १ 10-12-6 01 २ 4-6-8-5 01 ३ 4-7-4-8-5 01 ४ 5-7-2 01 ६ 8-6-8-5 01 ८ 8-6-5 01 इ 6-1-11-8-6-4-8-6 01 उ 5-7-4-7 01 घ 8-6-8-6-4-12-6 01 च 3-8-6-4-12-6 01 प 6-3-12-6 01 फ 6-3-12-6-12-3-6 01 व 10-8-6-4-3-12-6 01 ट 6-1-11-8-6-4 01 ठ 6-1-11-8-6-4-1 01 ड 6-1-11-8-6-4-5-8-9 01 ढ 6-1-11-8-6-4-6 01 त 12-3-12-6 01 थ 10-12-2-4-10-5-4-12-6 01 द 6-1-11-8-6-4-5 01 ध 2-12-10-3-8-6-4-12-6 01 क 10-8-6-4-3-12-6-12-2-6 01 ज 5-4-3-12-6 01 भ 10-12-6-8-9-3-12-6 01 म 6-8-9-3-12-6 01 न 5-7-9-3-12-6 01 य 4-6-8-6-4-12-6 01 र 4-6-8-5 01 ल 10-12-6-12-1-12-6 02 अ 4-7-4-7,3-12-6 02 ई 6-1-11-8-6-4-8-6,12-2-3 02 ऊ 5-7-4-7,2-4 02 ए 6-5-6,7 02 ख 4-6-8-5,10-8-6-4-3-12-6 02 ग 5-7-5,6 02 छ 8-6-8-6-4-7,6 02 झ 6-1-11-8-6-4-8-6,3-12-6 02 ब 10-8-6-4-3-12-6,5 02 ण 6-4-12,6 02 श 10-12-2-4-6-8-5,6 02 स 4-6-8-5,3-12-6 02 ष 6-3-12-6,5 02 ह 6-1-11-8-6-4,8-6 02 ळ 10-8-2-4-10,6 02 क्ष 10-12-2-8-6-5-6,6 02 ज्ञ 6,9-3-5-7-5 02 का 10-8-6-4-3-12-6-12-2-6,6 02 कु 10-8-6-4-3-12-6-12-2-6,4-6-8 02 कू 10-8-6-4-3-12-6-12-2-6,12-2 02 के 10-8-6-4-3-12-6-12-2-6,5 02 कं 10-8-6-4-3-12-6-12-2-6,10-8-6-4-2-12 02 घा 8-6-8-6-4-12-6,6 02 घु 8-6-8-6-4-12-6,4-6-8 02 घू 8-6-8-6-4-12-6,12-2 02 घे 8-6-8-6-4-12-6,5 02 घं 8-6-8-6-4-12-6,10-8-6-4-2-12 02 चा 3-8-6-4-12-6,6 02 चु 3-8-6-4-12-6,4-6-8 02 चू 3-8-6-4-12-6,12-2 02 चे 3-8-6-4-12-6,5 02 चं 3-8-6-4-12-6,10-8-6-4-2-12 02 ज़ा 5-4-3-12-6,6 02 ज़ु 5-4-3-12-6,4-6-8 02 ज़ू 5-4-3-12-6,12-2 02 ज़े 5-4-3-12-6,5 02 ज़ं 5-4-3-12-6,10-8-6-4-2-12 02 टा 6-1-11-8-6-4,6 02 ठा 6-1-11-8-6-4-1,6 02 डा 6-1-11-8-6-4-5-8-9,6 02 ढा 6-1-11-8-6-4-5,6 02 टु 6-1-11-8-6-4,4-6-8 02 टू 6-1-11-8-6-4,12-2 02 ठु 6-1-11-8-6-4-1,4-6-8 02 डु 6-1-11-8-6-4-5-8-9,4-6-8 02 ढु 6-1-11-8-6-4-5,4-6-8 02 ठू 6-1-11-8-6-4-1,12-2 02 डू 6-1-11-8-6-4-5-8-9,12-2 02 ढू 6-1-11-8-6-4-5,12-2 02 टे 6-1-11-8-6-4,5 02 ठे 6-1-11-8-6-4-1,5 02 डे 6-1-11-8-6-4-5-8-9,5 02 ढे 6-1-11-8-6-4-5,5 02 टं 6-1-11-8-6-4,10-8-6-4-2-12 02 ठं 6-1-11-8-6-4-1,10-8-6-4-2-12 02 डं 6-1-11-8-6-4-5-8-9,10-8-6-4-2-12 02 ढं 6-1-11-8-6-4-5,10-8-6-4-2-122 02 या 4-6-8-6-4-12-6,6 02 यु 4-6-8-6-4-12-6,4-6-8 02 यू 2-4-10-5-4-12-6,12-2 02 ये 4-6-8-6-4-12-6,5 02 यं 4-6-8-6-4-12-6,10-8-6-4-2-12 02 रा 4-6-8-5,6 02 रु 4-6-8-5,4-6-8 02 रू 4-6-8-5,12-2 02 रे 4-6-8-5,5 02 रं 4-6-8-5,10-8-6-4-2-12 02 ला 10-12-6-12-1-12-6,6 02 लु 10-12-6-12-1-12-6,4-6-8 02 लू 10-12-6-12-1-12-6,12-2 02 ले 10-12-6-12-1-12-6,5 02 लं 10-12-6-12-1-12-6,10-8-6-4-2-12 02 वा 10-8-6-4-3-12-6,6 02 वु 10-8-6-4-3-12-6,4-6-8 02 वू 10-8-6-4-3-12-6,12-2 02 वे 10-8-6-4-3-12-6,5 02 वं 10-8-6-4-3-12-6,10-8-6-4-2-12 02 ता 12-3-12-6,6 02 तु 12-3-12-6,4-6-8 02 तू 12-3-12-6,12-2 02 ते 12-3-12-6,5 02 तं 12-3-12-6,10-8-6-4-2-12 02 था 10-12-2-4-10-5-4-12-6,6 02 थु 10-12-2-4-10-5-4-12-6,4-6-8 02 थू 10-12-2-4-10-5-4-12-6,12-2 02 थे 10-12-2-4-10-5-4-12-6,5 02 थंं 10-12-2-4-10-5-4-12-6,10-8-6-4-2-12 02 द 6-1-11-8-6-4-5,6 02 दु 6-1-11-8-6-4-5,4-6-8 02 दू 6-1-11-8-6-4-5,12-2 02 दे 6-1-11-8-6-4-5,5 02 दं 6-1-11-8-6-4-5,10-8-6-4-2-12 02 धा 2-12-10-3-8-6-4-12-6,6 02 धु 2-12-10-3-8-6-4-12-6,4-6-8 02 धू 2-12-10-3-8-6-4-12-6,12-2 02 धे 2-12-10-3-8-6-4-12-6,5 02 धं 2-12-10-3-8-6-4-12-6,10-8-6-4-2-12 02 ना 5-7-9-3-12-6,6 02 नु 5-7-9-3-12-6,4-6-8 02 नू 5-7-9-3-12-6,12-2 02 ने 5-7-9-3-12-6,5 02 नं 5-7-9-3-12-6,10-8-6-4-2-12 02 पा 6-3-12-6,6 02 पु 6-3-12-6,4-6-8 02 पू 6-3-12-6,12-2 02 पे 6-3-12-6,5 02 पं 6-3-12-6,10-8-6-4-2-12 02 फा 6-3-12-6-12-3-6,6 02 फु 6-3-12-6-12-3-6,4-6-8 02 फू 6-3-12-6-12-3-6,12-2 02 फे 6-3-12-6-12-3-6,5 02 फं 6-3-12-6-12-3-6,10-8-6-4-2-12 02 भा 10-12-6-8-9-3-12-6,6 02 भु 10-12-6-8-9-3-12-6,4-6-8 02 भू 10-12-6-8-9-3-12-6,12-2 02 भे 10-12-6-8-9-3-12-6,5 02 भं 10-12-6-8-9-3-12-6,10-8-6-4-2-12 02 मा 6-8-9-3-12-6,6 02 मु 6-8-9-3-12-6,4-6-8 02 मू 6-8-9-3-12-6,12-2 02 मे 6-8-9-3-12-6,5 02 मं 6-8-9-3-12-6,10-8-6-4-2-12 03 आ 4-7-4-7,3-12-6,6 03 ऐ 6-5-6,7,5 03 अं 4-7-4-7,3-12-6,10-8-6-4-2-12 03 कि 10-8-6-4-3-12-6-12-2-6,6,10-12-2 03 की 10-8-6-4-3-12-6-12-2-6,6,10-12-2 03 कै 10-8-6-4-3-12-6-12-2-6,5,4 03 को 10-8-6-4-3-12-6-12-2-6,6,5 03 कः 10-8-6-4-3-12-6-12-2-6,10-8-6-4-2-12,10-8-6-4-2 03 ख़ा 4-6-8-5,10-8-6-4-3-12-6,6 03 ख़ु 4-6-8-5,10-8-6-4-3-12-6,4-6-8 03 ख़ू 4-6-8-5,10-8-6-4-3-12-6,12-2 03 ख़े 4-6-8-5,10-8-6-4-3-12-6,5 03 ख़ं 4-6-8-5,10-8-6-4-3-12-6,10-8-6-4-2-12 03 गा 5-7-5,6,6 03 गु 5-7-5,6,4-6-8 03 गू 5-7-5,6,12-2 03 गे 5-7-5,6,5 03 गं 5-7-5,6,10-8-6-4-2-12 03 घि 8-6-8-6-4-12-6,6,10-12-2 03 घी 8-6-8-6-4-12-6,6,10-12-2 03 घै 8-6-8-6-4-12-6,5,4 03 घो 8-6-8-6-4-12-6,6,5 03 घः 8-6-8-6-4-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 चि 3-8-6-4-12-6,6,10-12-2 03 ची 3-8-6-4-12-6,6,10-12-2 03 चै 3-8-6-4-12-6,5,4 03 चो 3-8-6-4-12-6,6,5 03 चः 3-8-6-4-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 छा 8-6-8-6-4-7,6,6 03 छु 8-6-8-6-4-7,6,4-6-8 03 छू 8-6-8-6-4-7,6,12-2 03 छे 8-6-8-6-4-7,6,5 03 छं 8-6-8-6-4-7,6,10-8-6-4-2-12 03 ज़ि 5-4-3-12-6,6,10-12-2 03 ज़ी 5-4-3-12-6,6,10-12-2 03 ज़ै 5-4-3-12-6,5,4 03 ज़ो 5-4-3-12-6,6,5 03 ज़ः 5-4-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 झा 6-1-11-8-6-4-8-6,3-12-6,6 03 झु 6-1-11-8-6-4-8-6,3-12-6,4-6-8 03 झू 6-1-11-8-6-4-8-6,3-12-6,12-2 03 झे 6-1-11-8-6-4-8-6,3-12-6,5 03 झं 6-1-11-8-6-4-8-6,3-12-6,10-8-6-4-2-12 03 टि 6-1-11-8-6-4,6,10-12-2 03 ठि 6-1-11-8-6-4-1,6,10-12-2 03 डि 6-1-11-8-6-4-5-8-9,6,10-12-2 03 ढि 6-1-11-8-6-4-5,6,10-12-2 03 टी 6-1-11-8-6-4,6,10-12-2 03 ठी 6-1-11-8-6-4-1,6,10-12-2 03 डी 6-1-11-8-6-4-5-8-9,6,10-12-2 03 ढी 6-1-11-8-6-4-5,6,10-12-2 03 टै 6-1-11-8-6-4,5,4 03 ठै 6-1-11-8-6-4-1,5,4 03 ढै 6-1-11-8-6-4-5,5,4 03 टो 6-1-11-8-6-4,6,5 03 ठो 6-1-11-8-6-4-1,6,5 03 डो 6-1-11-8-6-4-5-8-9,6,5 03 ढो 6-1-11-8-6-4-5,6,5 03 टः 6-1-11-8-6-4,10-8-6-4-2-12,10-8-6-4-2-12 03 ठः 6-1-11-8-6-4-1,10-8-6-4-2-12,10-8-6-4-2-12 03 डः 6-1-11-8-6-4-5-8-9,10-8-6-4-2-12,10-8-6-4-2-12 03 ढः 6-1-11-8-6-4-5,10-8-6-4-2-12,10-8-6-4-2-12 03 यि 4-6-8-6-4-12-6,6,10-12-2 03 यी 4-6-8-6-4-12-6,6,10-12-2 03 यै 4-6-8-6-4-12-6,5,4 03 यो 4-6-8-6-4-12-6,6 03 यः 4-6-8-6-4-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 रि 4-6-8-5,6,10-12-2 03 री 4-6-8-5,6,10-12-2 03 रै 4-6-8-5,5,4 03 रो 4-6-8-5,6,5 03 लै 10-12-6-12-1-12-6,5,4 03 लो 10-12-6-12-1-12-6,6,5 03 लः 10-12-6-12-1-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 वि 10-8-6-4-3-12-6,6,10-12-2 03 वी 10-8-6-4-3-12-6,6,10-12-2 03 वै 10-8-6-4-3-12-6,5,4 03 वो 10-8-6-4-3-12-6,6,5 03 वः 10-8-6-4-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 शा 10-12-2-4-6-8-5,6,6 03 शु 10-12-2-4-6-8-5,6,4-6-8 03 शू 10-12-2-4-6-8-5,6,12-2 03 शे 10-12-2-4-6-8-5,6,5 03 शं 10-12-2-4-6-8-5,6,10-8-6-4-2-12 03 षा 6-3-12-6,5,6 03 षु 6-3-12-6,5,4-6-8 03 षू 6-3-12-6,5,12-2 03 षे 6-3-12-6,5,5 03 षं 6-3-12-6,5,10-8-6-4-2-12 03 सा 4-6-8-5,3-12-6,6 03 सु 4-6-8-5,3-12-6,4-6-8 03 सू 4-6-8-5,3-12-6,12-2 03 से 4-6-8-5,3-12-6,5 03 सं 4-6-8-5,3-12-6,10-8-6-4-2-12 03 हा 6-1-11-8-6-4,8-6,6 03 हु 6-1-11-8-6-4,8-6,4-6-8 03 हू 6-1-11-8-6-4,8-6,12-2 03 हे 6-1-11-8-6-4,8-6,5 03 हं 6-1-11-8-6-4,8-6,10-8-6-4-2-12 03 ळा 10-8-2-4-10,6,6 03 ळु 10-8-2-4-10,6,4-6-8 03 ळू 10-8-2-4-10,6,12-2 03 ळे 10-8-2-4-10,6,5 03 ळं 10-8-2-4-10,6,10-8-6-4-2-12 03 क्षा 10-12-2-8-6-5-6,6,6 03 क्षु 10-12-2-8-6-5-6,6,4-6-8 03 क्षू 10-12-2-8-6-5-6,6,12-2 03 क्षे 10-12-2-8-6-5-6,6,5 03 क्षं 10-12-2-8-6-5-6,6,10-8-6-4-2-12 03 ज्ञा 6,9-3-5-7-5,6 03 ज्ञु 6,9-3-5-7-5,4-6-8 03 ज्ञू 6,9-3-5-7-5,12-2 03 ज्ञे 6,9-3-5-7-5,5 03 ज्ञं 6,9-3-5-7-5,10-8-6-4-2-12 03 ति 12-3-12-6,6,10-12-2 03 ती 12-3-12-6,6-10-12-2 03 तै 12-3-12-6,5,4 03 तो 12-3-12-6,6,5 03 तः 12-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 थि 10-12-2-4-10-5-4-12-6,6,10-12-2 03 थी 10-12-2-4-10-5-4-12-6,6-10-12-2 03 थै 10-12-2-4-10-5-4-12-6,5-4 03 थे 10-12-2-4-10-5-4-12-6,6-5 03 थः 10-12-2-4-10-5-4-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 णा 6-4-12,6,6 03 णू 6-4-12,6,12-2 03 णु 6-4-12,6,4-6-8 03 णे 6-4-12,6,5 03 णं 6-4-12,6,10-8-6-4-2-12 03 डि 6-1-11-8-6-4-5-8-9,6,10-12-2 03 डी 6-1-11-8-6-4-5-8-9,6,10-12-2 03 डै 6-1-11-8-6-4-5-8-9,5,4 03 डः 6-1-11-8-6-4-5-8-9,10-8-6-4-2-12,10-8-6-4-2-12 03 दि 6-1-11-8-6-4-5,6,10-12-2 03 दी 6-1-11-8-6-4-5,6,10-12-2 03 दै 6-1-11-8-6-4-5,5,4 03 दो 6-1-11-8-6-4-5,6,5 03 दः 6-1-11-8-6-4-5,10-8-6-4-2-12,10-8-6-4-2-12 03 धि 2-12-10-3-8-6-4-12-6,6,10-12-2 03 धी 2-12-10-3-8-6-4-12-6,6,10-12-2 03 धै 2-12-10-3-8-6-4-12-6,5,4 03 धो 2-12-10-3-8-6-4-12-6,6,5 03 धः 2-12-10-3-8-6-4-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 नि 5-7-9-3-12-6,6,10-12-2 03 नी 5-7-9-3-12-6,6,10-12-2 03 नै 5-7-9-3-12-6,5,4 03 नो 5-7-9-3-12-6,6,5 03 नः 5-7-9-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 पि 6-3-12-6,6,10-12-2 03 पी 6-3-12-6,6,10-12-2 03 पै 6-3-12-6,5,4 03 पो 6-3-12-6,6,5 03 पः 6-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 फि 6-3-12-6-12-3-6,6,10-12-2 03 फी 6-3-12-6-12-3-6,6,10-12-2 03 फै 6-3-12-6-12-3-6,5,4 03 फो 6-3-12-6-12-3-6,6,5 03 फः 6-3-12-6-12-3-6,10-8-6-4-2-12,10-8-6-4-2-12 03 बा 10-8-6-4-3-12-6,5,6 03 बु 10-8-6-4-3-12-6,5,4-6-8 03 बू 10-8-6-4-3-12-6,5,12-2 03 बे 10-8-6-4-3-12-6,5,5 03 बं 10-8-6-4-3-12-6,5,10-8-6-4-2-12 03 भि 10-12-6-8-9-3-12-6,6,10-12-2 03 भी 10-12-6-8-9-3-12-6,6,10-12-2 03 भै 10-12-6-8-9-3-12-6,5,4 03 भे 10-12-6-8-9-3-12-6,6,5 03 भः 10-12-6-8-9-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 03 मि 6-8-9-3-12-6,6,10-12-2 03 मी 6-8-9-3-12-6,6,10-12-2 03 मै 6-8-9-3-12-6,5,4 03 मो 6-8-9-3-12-6,6,5 03 मः 6-8-9-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 04 ओ 4-7-4-7,3-12-6,6,5 04 अः 4-7-4-7,3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 04 कौ 10-8-6-4-3-12-6-12-2-6,6,5,4 04 ख़ि 4-6-8-5,10-8-6-4-3-12-6,6,10-12-2 04 ख़ी 4-6-8-5,10-8-6-4-3-12-6,6,10-12-2 04 ख़ै 4-6-8-5,10-8-6-4-3-12-6,5-4 04 ख़ो 4-6-8-5,10-8-6-4-3-12-6,6,5 04 ख़ः 4-6-8-5,10-8-6-4-3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 04 गि 5-7-5,6,6,10-12-2 04 गी 5-7-5,6,6,10-12-2 04 गै 5-7-5,6,5,4 04 गो 5-7-5,6,6,5 04 गः 5-7-5,6,10-8-6-4-2-12,10-8-6-4-2-12 04 घौ 8-6-8-6-4-12-6,6,5,4 04 चौ 3-8-6-4-12-6,6,5,4 04 छि 8-6-8-6-4-7,6,6,10-12-2 04 छी 8-6-8-6-4-7,6,6,10-12-2 04 छो 8-6-8-6-4-7,6,6,5 04 छै 8-6-8-6-4-7,6,5,4 04 छः 8-6-8-6-4-7,6,10-8-6-4-2-12,10-8-6-4-2-12 04 ज़ौ 5-4-3-12-6,6,5,4 04 झि 6-1-11-8-6-4-8-6,3-12-6,6,10-12-2 04 झी 6-1-11-8-6-4-8-6,3-12-6,6,10-12-2 04 झै 6-1-11-8-6-4-8-6,3-12-6,5,4 04 झो 6-1-11-8-6-4-8-6,3-12-6,6,5 04 झः 6-1-11-8-6-4-8-6,3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 04 टौ 6-1-11-8-6-4,6,5,4 04 ठौ 6-1-11-8-6-4-1,6,5,4 04 डौ 6-1-11-8-6-4-5-8-9,6,5,4 04 ढौ 6-1-11-8-6-4-5,6,5,4 04 यौ 2-4-10-5-4-12-6,6,5,4 04 रौ 4-6-8-5,6,5,4 04 रः 4-6-8-5,10-8-6-4-2-12,10-8-6-4-2-12 04 लौ 10-12-6-12-1-12-6,6,5,4 04 वौ 10-8-6-4-3-12-6,6,5,4 04 शि 10-12-2-4-6-8-5,6,6,10-12-2 04 शी 10-12-2-4-6-8-5,6,6,10-12-2 04 शै 10-12-2-4-6-8-5,6,5,4 04 शो 10-12-2-4-6-8-5,6,6,5 04 शः 10-12-2-4-6-8-5,6,10-8-6-4-2-12,10-8-6-4-2-12 04 षि 6-3-12-6,5,6,10-12-2 04 षी 6-3-12-6,5,6,10-12-2 04 षै 6-3-12-6,5,5,4 04 षो 6-3-12-6,5,6,5 04 षः 6-3-12-6,5,10-8-6-4-2-12,10-8-6-4-2-12 04 सि 4-6-8-5,3-12-6,6,10-12-2 04 सी 4-6-8-5,3-12-6,6,10-12-2 04 सै 4-6-8-5,3-12-6,5,4 04 सो 4-6-8-5,3-12-6,6,5 04 सः 4-6-8-5,3-12-6,10-8-6-4-2-12,10-8-6-4-2-12 04 हि 6-1-11-8-6-4,8-6,6,10-12-2 04 ही 6-1-11-8-6-4,8-6,6,10-12-2 04 है 6-1-11-8-6-4,8-6,5,4 04 हो 6-1-11-8-6-4,8-6,6,5 04 हः 6-1-11-8-6-4,8-6,10-8-6-4-2-12,10-8-6-4-2-12 04 ळि 10-8-2-4-10,6,6,10-12-2 04 ळी 10-8-2-4-10,6,6,10-12-2 04 ळै 10-8-2-4-10,6,5,4 04 ळो 10-8-2-4-10,6,6,5 04 ळः 10-8-2-4-10,6,10-8-6-4-2-12,10-8-6-4-2-12 04 क्षि 10-12-2-8-6-5-6,6,6,10-12-2 04 क्षी 10-12-2-8-6-5-6,6,6,10-12-2 04 क्षै 10-12-2-8-6-5-6,6,5,4 04 क्षो 10-12-2-8-6-5-6,6,6,5 04 क्षः 10-12-2-8-6-5-6,6,10-8-6-4-2-12,10-8-6-4-2-12 04 ज्ञि 6,9-3-5-7-5,6,10-12-2 04 ज्ञी 6,9-3-5-7-5,6,10-12-2 04 ज्ञै 6,9-3-5-7-5,5,4 04 ज्ञो 6,9-3-5-7-5,6,5 04 ज्ञः 6,9-3-5-7-5,10-8-6-4-2-12,10-8-6-4-2-12 04 तौ 12-3-12-6,6,5,4 04 थौ 10-12-2-4-10-5-4-12-6,6-5-4 04 णी 6-4-12,6,6,10-12-2 04 णै 6-4-12,6,5,4 04 णौ 6-4-12,6,6,5 04 णः 6-4-12,6,10-8-6-4-2-12,10-8-6-4-2-12 04 डौ 6-1-11-8-6-4-5-8-9,6,5,4 04 दौ 6-1-11-8-6-4-5,6,5,4 04 धौ 2-12-10-3-8-6-4-12-6,6,5,4 04 नौ 5-7-9-3-12-6,6,5,4 04 पौ 6-3-12-6,6,5,4 04 फौ 6-3-12-6-12-3-6,6,5,4 04 बि 10-8-6-4-3-12-6,5,6,10-12-2 04 बी 10-8-6-4-3-12-6,5,10-12-2 04 बै 10-8-6-4-3-12-6,5,5,4 04 बो 10-8-6-4-3-12-6,5,6,5 04 बः 10-8-6-4-3-12-6,5,10-8-6-4-2-12,10-8-6-4-2-12 04 भौ 10-12-6-8-9-3-12-6,6,5,4 04 मौ 6-8-9-3-12-6,6,5,4 05 औ 4-7-4-7,3-12-6,6,5,4 05 ख़ौ 4-6-8-5,10-8-6-4-3-12-6,6,5,4 05 गौ 5-7-5,6,6,5,4 05 छौ 8-6-8-6-4-7,6,6,5,4 05 झौ 6-1-11-8-6-4-8-6,3-12-6,6,5,4 05 शौ 10-12-2-4-6-8-5,6,6,5,4 05 षौ 6-3-12-6,5,6,5,4 05 सौ 4-6-8-5,3-12-6,6,5,4 05 हौ 6-1-11-8-6-4,8-6,6,5,4 05 ळौ 10-8-2-4-10,6,6,5,4 05 क्षौ 10-12-2-8-6-5-6,6,6,5,4 05 ज्ञौ 6,9-3-5-7-5,6,5,4 05 णौ 6-4-12,6,6,5,4 05 बौ 10-8-6-4-3-12-6,5,6,5,4 ./mytool/hwd/jodakshar.hwd0000644000175000017500000002141607732742746015642 0ustar henrichhenrich#HWD 2.0 DO NOT REMOVE THIS LINE #Swapnil Hajare #Compund Letters in Devanagari 02 क्क 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6 02 च्च 3-8-6-4,3-8-6-4-12-6 02 ज्ज 5-4-3,5-4-3-12-6 02 ट्ट 6-1-11-8-6,6-1-11-8-6-4 02 ठ्ठ 6-1-11-8-6-4-1,6-1-11-8-6-4-1 02 ड्ड 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9 02 ढ्ढ 6-1-11-8-6-4-6,6-1-11-8-6-4-6 02 थ्थ 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6 02 द्द 6-1-11-8-6-4-5,6-1-11-8-6-4-5 02 ध्ध 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6 02 न्न 5-7-9-3-12,5-7-9-3-12-6 02 प्प 6-3,6-3-12-6 02 फ्फ 6-3-12-6-12-3,6-3-12-6-12-3-6 02 भ्भ 10-12-6-8-9-3,10-12-6-8-9-3-12-6 02 म्म 6-8-9-3,6-8-9-3-12-6 02 य्य 4-6-8-6-5,4-6-8-6-4-12-6 02 ल्ल 10-12-6-12-1,10-12-6-12-1-12-6 02 व्व 10-8-6-4,10-8-6-4-3-12-6 03 क्का 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,6 03 क्कु 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,4-6-8 03 क्कू 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,12-2 03 क्के 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,5 03 ग्ग 5-7-5,5-7-5,6 03 च्चा 3-8-6-4,3-8-6-4-12-6,6 03 च्चु 3-8-6-4,3-8-6-4-12-6,4-6-8 03 च्चू 3-8-6-4,3-8-6-4-12-6,12-2 03 च्चे 3-8-6-4,3-8-6-4-12-6,5 03 ज्जा 5-4-3,5-4-3-12-6,6 03 ज्जु 5-4-3,5-4-3-12-6,4-6-8 03 ज्जू 5-4-3,5-4-3-12-6,12-2 03 ज्जे 5-4-3,5-4-3-12-6,5 03 ट्टा 6-1-11-8-6,6-1-11-8-6-4,6 03 ट्टु 6-1-11-8-6,6-1-11-8-6-4,4-6-8 03 ट्टू 6-1-11-8-6,6-1-11-8-6-4,12-2 03 ट्टे 6-1-11-8-6,6-1-11-8-6-4,5 03 ठ्ठा 6-1-11-8-6-4-1,6-1-11-8-6-4-1,6 03 ठ्ठु 6-1-11-8-6-4-1,6-1-11-8-6-4-1,4-6-8 03 ठ्ठू 6-1-11-8-6-4-1,6-1-11-8-6-4-1,12-2 03 ठ्ठे 6-1-11-8-6-4-1,6-1-11-8-6-4-1,5 03 ड्डा 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9,6 03 ड्डु 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9,4-6-8 03 ड्डू 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9,12-2 03 ड्डे 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9,5 03 ढ्ढा 6-1-11-8-6-4-6,6-1-11-8-6-4-6,6 03 ढ्ढु 6-1-11-8-6-4-6,6-1-11-8-6-4-6,4-6-8 03 ढ्ढू 6-1-11-8-6-4-6,6-1-11-8-6-4-6,12-2 03 ढ्ढे 6-1-11-8-6-4-6,6-1-11-8-6-4-6,5 03 ण्ण 6-4-12,6-4-12,6 03 त्तु 12-3,12-3-12-6,4-6-8 03 त्तू 12-3,12-3-12-6,12-2 03 त्ते 12-3,12-3-12-6,5 03 थ्था 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6,6 03 थ्थु 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6,4-6-8 03 थ्थू 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6,12-2 03 थ्थे 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6,5 03 द्दा 6-1-11-8-6-4-5,6-1-11-8-6-4-5,6 03 द्दे 6-1-11-8-6-4-5,6-1-11-8-6-4-5,5 03 ध्धा 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,6 03 ध्धु 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,4-6-8 03 ध्धू 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,12-2 03 ध्धे 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,5 03 न्ना 5-7-9-3-12,5-7-9-3-12-6,6 03 प्पा 6-3,6-3-12-6,6 03 प्पु 6-3,6-3-12-6,4-6-8 03 प्पू 6-3,6-3-12-6,12-2 03 प्पे 6-3,6-3-12-6,5 03 फ्फा 6-3-12-6-12-3,6-3-12-6-12-3-6,6 03 फ्फु 6-3-12-6-12-3,6-3-12-6-12-3-6,4-6-8 03 फ्फू 6-3-12-6-12-3,6-3-12-6-12-3-6,12-2 03 फ्फे 6-3-12-6-12-3,6-3-12-6-12-3-6,5 03 भ्भा 10-12-6-8-9-3,10-12-6-8-9-3-12-6,6 03 भ्भु 10-12-6-8-9-3,10-12-6-8-9-3-12-6,4-6-8 03 भ्भू 10-12-6-8-9-3,10-12-6-8-9-3-12-6,12-2 03 भ्भे 10-12-6-8-9-3,10-12-6-8-9-3-12-6,5 03 म्मा 6-8-9-3,6-8-9-3-12-6,6 03 म्मु 6-8-9-3,6-8-9-3-12-6,4-6-8 03 म्मू 6-8-9-3,6-8-9-3-12-6,12-2 03 म्मे 6-8-9-3,6-8-9-3-12-6,5 03 य्या 4-6-8-6-5,4-6-8-6-4-12-6,6 03 य्यु 4-6-8-6-5,4-6-8-6-4-12-6,4-6-8 03 य्यू 4-6-8-6-5,4-6-8-6-4-12-6,12-2 03 य्ये 4-6-8-6-5,4-6-8-6-4-12-6,5 03 ल्ला 10-12-6-12-1,10-12-6-12-1-12-6,6 03 ल्लु 10-12-6-12-1,10-12-6-12-1-12-6,4-6-8 03 ल्लू 10-12-6-12-1,10-12-6-12-1-12-6,12-2 03 ल्ले 10-12-6-12-1,10-12-6-12-1-12-6,5 03 व्वा 10-8-6-4,10-8-6-4-3-12-6,6 03 व्वु 10-8-6-4,10-8-6-4-3-12-6,4-6-8 03 व्वू 10-8-6-4,10-8-6-4-3-12-6,12-2 03 व्वे 10-8-6-4,10-8-6-4-3-12-6,5 04 क्कि 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,6,10-12-2 04 क्की 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,6,10-12-2 04 क्कै 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,5,4 04 क्को 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,6,5 04 ख़्ख़ 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6 04 ग्गा 5-7-5,5-7-5,6,6 04 ग्गु 5-7-5,5-7-5,6,4-6-8 04 ग्गू 5-7-5,5-7-5,6,12-2 04 ग्गे 5-7-5,5-7-5,6,5 04 च्चि 3-8-6-4,3-8-6-4-12-6,10-12-2 04 च्ची 3-8-6-4,3-8-6-4-12-6,6,10-12-2 04 च्चो 3-8-6-4,3-8-6-4-12-6,6,5 04 ज्जि 5-4-3,5-4-3-12-6,6,10-12-2 04 ज्जी 5-4-3,5-4-3-12-6,6,10-12-2 04 ज्जै 5-4-3,5-4-3-12-6,5,4 04 ट्टि 6-1-11-8-6,6-1-11-8-6-4,6,10-12-2 04 ट्टी 6-1-11-8-6,6-1-11-8-6-4,6,10-12-2 04 ट्टो 6-1-11-8-6,6-1-11-8-6-4,6,5 04 ठ्ठि 6-1-11-8-6-4-1,6-1-11-8-6-4-1,6,10-12-2 04 ठ्ठी 6-1-11-8-6-4-1,6-1-11-8-6-4-1,6,10-12-2 04 ड्डि 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9,6,10-12-2 04 ड्डी 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9,6,10-12-2 04 ड्डो 6-1-11-8-6-4-5-8-9,6-1-11-8-6-4-5-8-9,6,5 04 ढ्ढि 6-1-11-8-6-4-6,6-1-11-8-6-4-6,6,10-12-2 04 ढ्ढी 6-1-11-8-6-4-6,6-1-11-8-6-4-6,6,10-12-2 04 ण्णा 6-4-12,6-4-12,6,6 04 ण्णे 6-4-12,6-4-12,6,5 04 त्तै 12-3,12-3-12-6,5,4 04 त्तो 12-3,12-3-12-6,6,5 04 थ्थि 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6,6,10-12-2 04 थ्थी 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6,6,10-12-2 04 द्दि 6-1-11-8-6-4-5,6-1-11-8-6-4-5,6,10-12-2 04 द्दी 6-1-11-8-6-4-5,6-1-11-8-6-4-5,6,10-12-2 04 द्दै 6-1-11-8-6-4-5,6-1-11-8-6-4-5,5,4 04 द्दो 6-1-11-8-6-4-5,6-1-11-8-6-4-5,6,5 04 ध्धि 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,6,10-12-2 04 ध्धी 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,12-12-2 04 ध्धै 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,5,4 04 ध्धो 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,6,5 04 न्नि 5-7-9-3-12,5-7-9-3-12-6,6,10-12-2 04 न्नी 5-7-9-3-12,5-7-9-3-12-6,6-10-12-2 04 प्पि 6-3,6-3-12-6,6,10-12-2 04 प्पी 6-3,6-3-12-6,6,10-12-2 04 प्पै 6-3,6-3-12-6,5,4 04 प्पो 6-3,6-3-12-6,6,5 04 फ्फि 6-3-12-6-12-3,6-3-12-6-12-3-6,6,10-12-2 04 फ्फी 6-3-12-6-12-3,6-3-12-6-12-3-6,6,10-12-2 04 फ्फो 6-3-12-6-12-3,6-3-12-6-12-3-6,6,5 04 ब्ब 10-8-6-4,5,10-8-6-4-12-6,5 04 भ्भि 10-12-6-8-9-3,10-12-6-8-9-3-12-6,6,10-12-2 04 भ्भी 10-12-6-8-9-3,10-12-6-8-9-3-12-6,6,10-12-2 04 भ्भो 10-12-6-8-9-3,10-12-6-8-9-3-12-6,6,5 04 म्मि 6-8-9-3,6-8-9-3-12-6,6,10-12-2 04 म्मी 6-8-9-3,6-8-9-3-12-6,6,10-12-2 04 म्मो 6-8-9-3,6-8-9-3-12-6,6,5 04 म्मै 6-8-9-3,6-8-9-3-12-6,5,4 04 य्यि 4-6-8-6-5,4-6-8-6-4-12-6,6,10-12-2 04 य्यी 4-6-8-6-5,4-6-8-6-4-12-6,6,10-12-2 04 य्यै 4-6-8-6-5,4-6-8-6-4-12-6,6,5,4 04 य्यो 4-6-8-6-5,4-6-8-6-4-12-6,6,5 04 ल्लि 10-12-6-12-1,10-12-6-12-1-12-6,6,10-12-2 04 ल्ली 10-12-6-12-1,10-12-6-12-1-12-6,6,10-12-2 04 ल्लो 10-12-6-12-1,10-12-6-12-1-12-6,6,5 04 व्वि 10-8-6-4,10-8-6-4-3-12-6,10-12-2 04 व्वी 10-8-6-4,10-8-6-4-3-12-6,10-12-2 04 व्वो 10-8-6-4,10-8-6-4-3-12-6,6,5 05 क्कौ 10-8-6-4-3-12-6-12-6-12-2,10-8-6-4-3-12-6-12-2-6,6,5,4 05 ख़्ख़ा 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,6 05 ख़्ख़ु 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,4-6-8 05 ख़्ख़ू 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,12-2 05 ख़्ख़े 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,5 05 ग्गि 5-7-5,5-7-5,6,6,10-12-2 05 ग्गी 5-7-5,5-7-5,6,6,10-12-2 05 ग्गै 5-7-5,5-7-5,6,5,4 05 ग्गो 5-7-5,5-7-5,6,6,5 05 त्तौ 12-3,12-3-12-6,6,5,4 05 थ्थौ 10-12-2-4-10-5-4,10-12-2-4-10-5-4-12-6,6,5,4 05 द्दो 6-1-11-8-6-4-5,6-1-11-8-6-4-5,6,5,4 05 ध्धौ 2-12-10-3-8-6-4,2-12-10-3-8-6-4-12-6,6,5,4 05 प्पौ 6-3,6-3-12-6,6,5,4 05 ब्बा 10-8-6-4,5,10-8-6-4-12-6,5,6 05 ब्बु 10-8-6-4,5,10-8-6-4-12-6,5,4-6-8 05 ब्बू 10-8-6-4,5,10-8-6-4-12-6,5,12-2 05 ब्बे 10-8-6-4,5,10-8-6-4-12-6,5,5 05 म्मौ 6-8-9-3,6-8-9-3-12-6,6,5,4 06 ख़्ख़ि 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,6,10-12-2 06 ख़्ख़ी 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,6,10-12-2 06 ख़्ख़ै 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,5,4 06 ख़्ख़ै 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,5,4 06 ख़्ख़ो 4-6-8-5,10-8-6,4-6-8-5,10-8-6-4-3-12-6,6,5 06 ब्बि 10-8-6-4,5,10-8-6-4-12-6,5,6,10-12-2 06 ब्बी 10-8-6-4,5,10-8-6-4-12-6,5,6,10-12-2 06 ब्बो 10-8-6-4,5,10-8-6-4-12-6,5,6,5 ./mytool/hwd/hanzi.hwd0000644000175000017500000001526007532460064014771 0ustar henrichhenrich#HWD 1.0 DO NOT REMOVE THIS LINE # Machine Generated, but editable file. # Memory Mappable Handwriting Data # Converted from hanzidata.h by convert.pl # # NOT RECOMMENDED FORMAT FOR HAND-MADE DATA # Gaspar Sinai # 2001-11-28 08:41:00 # # stroke character # count utf-8 Stroke Desc. # <---->[space]<---->[space]<----------------->[\n] # 2Bytes N bytes Variable Bytecount # # Strokes Desc # * This is from JStroke. (TDR) is Todd's JavaDict format. # * One stroke is a capital letter that might # be followed by a small letter, in case of curves. # * Capital and small letters have the same meaning: angle. # * Strokes are in order packed one after the other # # A or a TDR='1' CLK=07:30 DEG=225 # B or b TDR='2' CLK=06:00 DEG=180 # C or c TDR='3' CLK=04:30 DEG=135 # D or d TDR='4' CLK=09:00 DEG=270 # F or e TDR='6' CLK=03:00 DEG=090 # G or f TDR='7' CLK=10:30 DEG=315 # H or h TDR='8' CLK=12:00 DEG=360 # I or i TDR='9' CLK=01:30 DEG=045 # J or j TDR='x' down 06:00 then 07:30 # K or k TDR='y' down 06:00 then 04:30 # L or l TDR='c' down 06:00 then 03:00 # M or m TDR='b' across 03:00 then 06:00 # # Notes: # TDR is the JavaDict format. # JavaDict does not pack, it has spaces. # # After the last stroke there can be an extra filter. # Filters use window coordinate system so the upper # left corcer is the origo. Filter signals are # calcualted by substrating one location-or-length # from another. Filters start at '|'. Generally # <-sign> # If a filter is followed by '!' that makes the filter # # stronger. # Filter names: # # x1 stroke 0 x-start # y2 stroke 1 y-start # i1 stroke 0 x-end # j1 stroke 0 y-end # a1 stroke 0 x-middle # b1 stroke 0 y-middle # l3 stroke 2 length # - # ' ' new filter follows # '|' new filter set starts # 01 一 F 02 人 AC 02 儿 JL 02 二 FF 02 七 IL 02 八 AC 02 九 AFbfh 02 十 FB 02 了 FaBg 02 几 JFbf 02 丁 FBg 03 也 FbBBf 03 大 FAC 03 么 AAfC 03 习 FbCI 03 三 FFF 03 下 FBC 03 女 BcAF 03 子 FaBgF 03 个 ACB 03 口 BMF 03 工 FBF 03 小 BgAC 03 上 BFF 04 不 FABC 04 友 FAFaC 04 夫 FFAC 04 书 FbFbBC 04 车 FAfBF 04 王 FFBF 04 比 ABfABf 04 中 BFbFB 04 日 BFbFF 04 什 ABFB 04 气 AFFFk 04 少 BACA 04 五 FBFbF 04 见 BMAL 04 六 CFAC 04 认 CIbiAC 04 介 ACJB 04 文 CFBdC 04 互 FAfFaF 04 太 FACC 04 云 CFAfC 04 毛 AFFBf 04 公 ACAfC 04 从 ACAC 04 分 ACFbgA 04 以 BiCBaC 04 天 FFAC 04 巴 MBFBfh 04 午 AFFB 04 长 AFBiC 04 水 BgFaAC 05 他 ABFbBBf 05 叫 BFbFBfB 05 们 ABCBFb 05 对 FaCFBC 05 生 AFFBF 05 汉 CFIFaC 05 本 FBACF 05 外 AFaCBC 05 号 BMFFAfag 05 四 BMALF 05 用 JFbgFFB 05 去 FBFAfC 05 写 AFaFBfbgF 05 北 FBIAL 05 兰 CAFFF 05 电 BMFFL 05 古 FBBMF 05 卡 BFFBC 05 东 FAfBgAC 05 司 FbgFBMF 05 旧 BBMFF 05 白 ABMFF 05 打 FBgIFBg 05 加 FbgJBMF 05 半 CAFFB 05 务 AFaCFbgA 06 好 BcAFFaJF 06 吗 BFbFFbBfbF 06 妈 BcAFFbBfbF 06 她 BcAFFbBBf 06 忙 ACBCFBf 06 纸 AfAiIAbFC 06 那 FjFFJFbfbB 06 老 FBFAABf 06 师 BJFBFbB 06 地 FBIFbBBf 06 欢 FaCAFaAC 06 吸 BMFAFafaC 06 问 CBMBMF 06 在 FABFBF 06 多 AFaCAFaC 06 再 FBFbgFFB 06 先 AFBFJL 06 名 AFaCBMF 06 字 CAFaFaBgF 06 买 FaCCFAC 06 有 FABFjFF 06 行 AABFFBg 06 当 BCAMFF 06 杂 AFbfFBgAC 06 百 FABMFF 06 西 FBFbgJLF 06 衣 CFAFiAC 06 件 ABAFFB 06 红 AfAiIFBF 06 场 FBIFafbgAA 06 回 BMBMFF 06 华 ABABfhFB 06 页 FABMJC 06 同 BMgFBMF 06 色 AFaMBFBfh 06 后 AJFBMF 06 米 CAFBAC 06 休 ABFBAC 06 会 ACFFAfC 06 吃 BMFAFFafh 06 早 BMFFFB 07 你 ABAFaJAC 07 我 AFBFCAC 07 弟 CAFbFBfbBA 07 这 CFACCFafaF 07 报 FBgFFaBFaC 07 利 AFBACBB 07 时 BFbFFFBC 07 进 FFABCFafaF 07 迎 ABiFbgBCFafaF 07 坐 ACACFBF 07 层 MFAFFAfC 07 还 FABCCFafaF 07 词 CFFbgFBMF 07 识 CBBMFAC 07 来 FCAFBAC 07 男 BMFBFFbgA 07 作 ABAFBFF 07 没 CCIJFbfFaC 07 住 ABCFFBF 07 告 AFBFBMF 07 诉 CFbiAJFBC 07 系 AAfAfCBgAC 07 志 FBFACfCC 07 里 BMFFFBF 07 医 FAFFACL 07 邮 BMFBFFbfbB 07 局 MFJFbgBMF 07 听 BMFAJFB 07 两 FBFbgACAC 07 条 AFaCFBgAC 07 张 MFBfbgAFBiC 07 找 FBgIFBciAC 07 员 BMFBMJC 07 汶 CCCiCFAC 07 言 CFFFBMF 07 位 ABCFCAF 07 冷 CCiACCFaC 07 吧 BMFMBFBfh 07 走 FBFBFAC 07 饭 AFaBiAJFaC 07 花 FBBABABfh 07 每 AFBfFbgFCC 07 床 CFJFBAC 08 呢 BFbFFbFBABf 08 爸 ACACFbBFBfh 08 朋 JFbFFJFbFF 08 的 ABFbFFAFbC 08 国 BFbFFBFCF 08 学 CBABFaFaJF 08 图 BFbAFaCCCF 08 姓 BcAFAFFBF 08 舍 ACFFBBMF 08 画 FBMFBFLB 08 典 BMFBBFAC 08 现 FFBFBMAL 08 英 FBABMFBaC 08 法 CCIFBFAfC 08 店 CFABFBMF 08 绍 AfAiIFbgABMF 08 和 AFBACBMF 08 妹 BcAFFFBAC 08 姐 BcAFBMFFF 08 京 CFBMFBgAC 08 厕 FABMACBBg 08 所 AJMFAJFB 08 话 CIbiAFBBMF 08 波 CFIFaJBFaC 08 帕 BFbgBABMFF 08 卖 FBFaFFFAC 08 咖 BMFFbgJBMF 08 服 JFbFFFaBFaC 08 衬 CFaBACFBgC 08 衫 CFaBACAAA 08 经 AfAiIFaCFBF 08 刻 CFAfAACBBg 08 实 CAFaCCFAC 08 侨 ABAFACJB 08 事 FBMFMFFBg 08 表 FFBFABiAC 08 念 ACCFaABfhCC 08 杯 FBACFABC 09 很 AABFbFFBAC 09 是 BFbFFFBFAC 09 哪 BFbFFjFFJFbfbB 09 语 CBFBFbFBFbF 09 看 AFFABFbFFF 09 茶 FBAACFJAC 09 客 CAFaAFaCBMF 09 贵 BMFBFBMAC 09 院 MBCAFaFFAL 09 说 CIbiCABMFJL 09 孩 FaBgICFAfAAC 09 给 AfAiIACFBMF 09 信 ABCFFFBMF 09 相 FBACBMFFF 09 览 BBAFCBMAL 09 室 CAFaFAfCFBF 09 美 CAFFBFFAC 09 南 FABFbgCAFFB 09 穿 CAFaACFAfBgA 09 点 BFBMFACCC 09 差 CAFFFAFBF 09 钟 AFFFBiBMFB 09 前 CAFBFbgFFBBg 09 食 ACCMFFBiAC 09 觉 CCAAFaBMABfh 09 要 FBMBBFFAcBa 10 都 FBFABFbFFFbfbB 10 哥 FBFbFBFBFbFB 10 高 CFBFbFBFbBFbF 10 笔 AFCAFCAFFBf 10 谁 CBABCFFFBF 10 请 CBFFBFBFjFF 10 烟 CJACBMFFAC 10 留 ABiCFaABMFBF 10 啊 BMFFagBFBMFBg 10 家 CAFaFACbgAAAC 10 爱 ACCAAFaFAFaC 10 阅 CBFagCABMFJL 10 荷 FCAABFBMFBg 10 酒 CCIFBFbgJLFF 10 班 FFBIBJFFBF 10 剧 FaFJFBBMFBBg 10 借 ABFBBFBMFF 10 座 CFJACACFBF 10 课 CIbiBMFFFBAC 10 验 FbBfbFACFCCAF 10 海 CCCiAFBfFbgFCC 10 真 FABMFFFFAC 10 热 FBgIJFbchCACCC 10 起 FBFBFACMFBfh 10 候 ABBMFAFFAC 10 息 ABMFFFABfhCC 10 桔 FBACFBFBMF 10 瓶 CAFFJBFBiFbfhC 11 您 ABAFaJACABfhCC 11 宿 CBFaABFABMFF 11 常 BCAAFaBMFBFbgB 11 银 AFFFBiMFFBiAC 11 教 FBFAFaJFAFJC 11 敢 MFBBFFIAFJC 11 馆 AFaBiCAFaBMFMF 11 商 CFCABFbgACBMF 11 票 FBFbgJLFFFBgAC 11 授 FBgIACCACFaFaC 11 啡 BMFBFFFBFFF 11 啤 BMFABMFFJFB 11 晚 BMFFAFaBMFJBfh 11 理 FFBIBMFFBFF 11 绿 AfAiIMFFBgFIAC 11 黄 FBBFBMFBFAC 11 职 FBBFFIBMFAC 11 堂 BCAAFaBMFFBF 12 谢 CBABFbFFFAFBA 12 喝 BMFBMFFCFjCAL 12 喂 BMFBMFBFFBiAC 12 裙 CFaBACMFFJBMF 12 裤 CFaBACCFJFAfBF 12 鲁 FaABMFBFFBMFF 12 程 AFBACBMFFFBF 12 黑 BMCAFFBFABCC 12 等 AFCAFCFBFFBgC 12 喜 FBFBMFCAFBMF 13 想 FBACBMFFFACfCC 13 新 CFCAFFBgACAJFB 13 蓝 FBBBJJFCBMBBF 13 跟 BMFBFBFMFFBiAC 13 睡 BMFFFAFFBBFBF 13 路 BMFBFFBAFaCBMF 15 颜 CFCAJFAAAFABMJC 15 影 BMFFCFBMFBgACAAA 15 懂 ABCFBBAFBMFFFBF 15 题 BFbFFFBFACFABMJC ./mytool/hwd/katakana.hwd0000644000175000017500000000353407532460064015434 0ustar henrichhenrich#HWD 2.0 DO NOT REMOVE THIS LINE # Memory Mappable Handwriting Data Version 2 # This is the recommended file format for freehand. # Please read yudit document: # # /yudit/doc/README-FREEHAND.TXT # # for details. # # katakana.hwd # ============ # Inui Yuko 2001-11-07, Tokyo # Gaspar Sinai - added JIS X 0213 2002-04-18 # =========================== 01 ー 3 01 〜 2-4-2 01 ヘ 1-5 01 フ 3-7 01 レ 6-2 01 ノ 8 01 。 8-5-2-11 02 ソ 4,7 02 セ 2-8,6-3 02 ヤ 2-8,6-5 |y1-j2 02 ニ 3,3 02 コ 3-6,3 02 ラ 3,3-8 02 ン 4,2 02 ユ 3-6,3 |i2-i1 02 ュ 3-6,3 |i2-i1 02 カ 3-6-7,6-7 |y1-y2 02 ヵ 3-6-7,6-7 |y1-y2 02 ナ 3,7 02 ヌ 3-7-8,4 |j1-b2 02 マ 3-7-8,4 |j2-j1 02 ス 3-7-8,4 |y2-y1 02 ア 3-8,6-7 02 ァ 3-8,6-7 02 ワ 6,3-7 02 ト 6,4 02 ハ 7,4-5 02 ル 7,6-2 02 ク 8,3-8 02 メ 7-8,4 02 イ 8,6 02 ィ 8,6 02 ヒ 8,6-3 02 リ 6,7 02 ム 7-3,5 02 ヲ 3-7-8,3 02 ペ 1-5,7-5-1 02 プ 3-7,7-5-1 02 ㇷ゚ 3-7,7-5-1 03 ベ 1-5,5,5 03 ブ 3-7,5,5 03 オ 3,6,7 03 ォ 3,6,7 03 キ 2,2,5 03 モ 3,3,6-3 03 テ 3,3,6-7 03 エ 3,6,3 03 ヨ 3-6,3,3 03 ョ 3-6,3,3 03 サ 3,6,6 03 シ 4,4,2 03 ミ 4,4,4 03 ツ 5,5,8 03 ッ 5,5,8 03 ロ 6,3-6,3 03 ウ 6,6,3-7 03 ケ 7,3,6-7 03 ヶ 7,3,6-7 03 タ 8,3-8,4 03 チ 8-9,3,6-7 03 〒 3,3,6 03 パ 7,4-5,7-5-1 03 カ゚ 3-6-7,6-7,7-5-1 |y1-y2 03 ク゚ 8,3-8,7-5-1 03 コ゚ 3-6,3,7-5-1 03 セ゚ 2-8,6-3,7-5-1 03 ツ゚ 4,7,7-5-1 03 ト゚ 6,4,7-5-1 04 ピ 8,6-3,7-5-1 04 ビ 8,6-3,5,5 04 バ 7,4-5,5,5 04 ゾ 4,7,5,5 04 グ 8,3-8,5,5 04 ガ 3-6-7,6-7,5,5 |y1-y2 04 ホ 3,6,7,5 04 ネ 6,3-8,6,4 04 ゴ 3-6,3,5,5 04 ズ 3-7-8,4,5,5 |y2-y1 04 ゼ 2-8,6-3,5,5 04 ド 6,4,5,5 04 キ゚ 2,2,5,7-5-1 04 ケ゚ 7,3,6-7,7-5-1 05 ヴ 6,6,3-7,5,5 05 ゲ 7,3,6-7,5,5 05 ザ 3,6,6-7,5,5 05 ギ 2,2,5,5,5 05 ジ 4,4,2,5,5 05 ダ 8,3-8,4,5,5 05 ポ 3,6,7,5,7-5-1 05 デ 3,3,6-7,5,5 05 ヅ 5,5,8,5,5 05 ヂ 8-9,3,6-7,5,5 06 ボ 3,6,7,5,5,5 ./mytool/hwd/hiragana.hwd0000644000175000017500000000367707532460064015443 0ustar henrichhenrich#HWD 2.0 DO NOT REMOVE THIS LINE # Memory Mappable Handwriting Data Version 2 # This is the recommended file format for freehand. # Please read yudit document: # # /yudit/doc/README-FREEHAND.TXT # # for details. # # hiragana.hwd # ============ # Inui Yuko 2001-11-07, Tokyo # Gaspar Sinai - added JIS X 0213 2002-04-18 # =========================== 01 ー 3 01 〜 2-4-2 01 へ 2-4 01 ひ 2-7-6-12-4 01 ろ 3-7-2-7 01 つ 2-4-8 01 っ 2-4-8 01 る 3-7-4-8-2 01 そ 2-8-3-7-4 01 て 3-8-4 01 し 6-2 01 の 7-1-6 01 ん 7-2-5-2 01 く 8-4 01 。 8-5-2-11 02 そ 4,8-3-7-4 02 い 5,5 02 い 5-2,5 02 う 3,3-8 02 え 4,3-7-3 02 こ 3,4 02 く゚ 8-4,8-5-2-11 02 す 3,6-11-7 02 み 3-7-11-3,7 02 め 4,7-1-7 02 ぬ 4,7-1-7-5 02 と 5,8-4 02 よ 3,6-10-4 02 ょ 3,6-10-4 02 り 6,6-7 02 ゆ 6-2-4-9,6 02 ゅ 6-2-4-9,6 02 れ 6,3-7-2-5 02 わ 6,3-7-2-6 02 ね 6,3-7-2-7-6 02 ら 4,7-2-8 02 さ 3,5-9-4 02 ち 3,7-2-7 02 ぴ 2-7-6-12-4,8-5-2-11 02 ぺ 2-4,8-5-2-11 03 で 3-8-4,5,5 03 こ゚ 3,4,8-5-2-11 03 づ 2-4-8,5,5 03 べ 2-4,5,5 03 び 2-7-6-12-4,5,5 03 ぞ 2-8-3-7-4,5,5 03 じ 6-2,5,5 03 や 2-7,5,6 03 さ 3,5,4 03 ぐ 8-4,5,5 03 あ 3,6,7-2-5 03 お 3,6-2-4,4 03 ま 3,3,6-10-4 03 も 3,3,6-4-2 03 む 3,6-4-2,4 03 せ 3,6,6-4 03 に 6,3,4 03 は 6,3,6-10-4 03 け 6,3,6 03 か 3-7,6-7,5 03 き 3,3,5-9-4 03 ふ 4-5,6,5 03 な 3,7,4-6-10-4 03 を 2,7-3,8-3 04 か゚ 3-7,6-7,5,8-5-2-11 04 き゚ 3,3,5-9-4,8-5-2-11 04 け゚ 6,3,6,8-5-2-11 04 ご 3,4,5,5 04 ど 5,8-4,5,5 04 ぢ 3,7-2-7,5,5 04 ぞ 4,8-3-7-4,5,5 04 ず 3,6-11-7,5,5 04 ざ 3,5-9-4,5,5 04 な 3,7,4,6-10-4 04 た 3,7,3,4 04 き 3,3,5,4 04 ふ 4,5-8,6,5 04 ほ 6,3,3,6-10-4 04 ぶ 4-5,6,5,8-5-2-11 04 ぱ 6,3,6-10-4,8-5-2-11 05 ざ 3,5,4,5,5 05 ば 6,3,6-10-4,5,5 05 ぶ 4-5,6,5,5,5 05 げ 6,3,6,5,5 05 ぎ 3,3,5-9-4,5,5 05 ぽ 6,3,3,6-10-4,8-5-2-11 05 が 3-7,6-7,5,5,5 05 ぜ 3,6,6-4,5,5 05 ぷ 4,5-8,6,5,8-5-2-11 06 だ 3,7,3,4,5,5 06 ぼ 6,3,3,6-10-4,5,5 06 ぎ 3,3,5,4,5,5 06 ぶ 4,5-8,6,5,5,5 ./mytool/hwd/kanji.hwd.patch50000644000175000017500000000111207724354374016137 0ustar henrichhenrich# # This is an utf-8 encoded patch file. # Fixes MEI Handwriting Data # patch -p0 < this-file # Or on an installed tree (you don't need to recompile): # cd /usr/share/yudit/data # patch -p3 < this-file # # This is an Easter egg in yudit.hex and yudit.ttf :) # How would you read this in Japanese? # Gaspar Sinai # 2002-12-01 # *** kanji.hwd- Sun Dec 1 19:41:00 2002 --- kanji.hwd Sun Aug 31 20:05:22 2003 *************** *** 917,920 **** --- 917,921 ---- 09 郎 BMFFBiCFaCdB 09 洵 CCIAMgBMFF + 09  BFBFFMgBLB 10 皆 FBIALABMFF 10 案 BBFaAcJFFBAC ./mytool/hwd/kanji.hwd0000644000175000017500000012106007724353162014753 0ustar henrichhenrich#HWD 1.0 DO NOT REMOVE THIS LINE # Machine Generated, but editable file. # Memory Mappable Handwriting Data # Converted from strokedata.h by convert.pl # # NOT RECOMMENDED FORMAT FOR HAND-MADE DATA # Gaspar Sinai # 2002-12-01 19:40:59 # # stroke character # count utf-8 Stroke Desc. # <---->[space]<---->[space]<----------------->[¥n] # 2Bytes N bytes Variable Bytecount # # Strokes Desc # * This is from JStroke. (TDR) is Todd's JavaDict format. # * One stroke is a capital letter that might # be followed by a small letter, in case of curves. # * Capital and small letters have the same meaning: angle. # * Strokes are in order packed one after the other # # A or a TDR='1' CLK=07:30 DEG=225 # B or b TDR='2' CLK=06:00 DEG=180 # C or c TDR='3' CLK=04:30 DEG=135 # D or d TDR='4' CLK=09:00 DEG=270 # F or e TDR='6' CLK=03:00 DEG=090 # G or f TDR='7' CLK=10:30 DEG=315 # H or h TDR='8' CLK=12:00 DEG=360 # I or i TDR='9' CLK=01:30 DEG=045 # J or j TDR='x' down 06:00 then 07:30 # K or k TDR='y' down 06:00 then 04:30 # L or l TDR='c' down 06:00 then 03:00 # M or m TDR='b' across 03:00 then 06:00 # # Notes: # TDR is the JavaDict format. # JavaDict does not pack, it has spaces. # # After the last stroke there can be an extra filter. # Filters use window coordinate system so the upper # left corcer is the origo. Filter signals are # calcualted by substrating one location-or-length # from another. Filters start at '|'. Generally # <-sign> # If a filter is followed by '!' that makes the filter # # stronger. # Filter names: # # x1 stroke 0 x-start # y2 stroke 1 y-start # i1 stroke 0 x-end # j1 stroke 0 y-end # a1 stroke 0 x-middle # b1 stroke 0 y-middle # l3 stroke 2 length # - # ' ' new filter follows # '|' new filter set starts # 01 一 F 01 乙 Faf 02 九 JFl 02 七 FL 02 十 FB|b1-y2 02 人 JC|y2-y1! x1-x2! 02 丁 FB|b2-b1 02 刀 MgJ|b2-y1 02 二 FF 02 入 AC|x1-x2! y1-y2! 02 八 AC|x2-x1! y1-y2 02 又 FaC 02 了 FaBg 02 力 MgJ|y1-y2 03 下 FBC|i3-x2 03 干 FFB 03 丸 JFlC|x1-x2 03 久 AFaC|x3-x2 03 及 JFafaC 03 弓 MFBmg 03 己 MFL 03 口 BMF 03 工 FBF|b2-b1 l3-l1 03 才 FBA 03 三 FFF 03 山 BLB 03 士 FBF|b1-y2 l1-l3 03 子 FaBgF 03 勺 AMgC 03 女 AcJF 03 小 BAC 03 上 BFF 03 丈 FJC|x2-x3 03 刃 MgJC 03 寸 FBC|x2-i3 03 千 AFB 03 川 JBB 03 大 FJC|x3-i2 03 土 FBF|b1-y2 l3-l1 03 亡 BFL 03 凡 JFlC|x3-x1 03 万 FMgJ 03 也 MgBL 03 夕 AFaC|l1-l3 03 与 FBmgF 04 井 FFJB 04 引 MFBfbdB 04 云 FFAfC 04 円 BMBF 04 王 FBFF 04 化 ABAL 04 火 CAJC 04 介 ACJB 04 刈 ACBB 04 牛 AFFB|b1-y4 04 凶 ACLB 04 斤 AJFB|a1-x2 04 区 FACL 04 欠 AFaJC 04 月 JMFF|j2-y4! j1-y4! x1-i1 j1-b4 j2-b4 04 犬 FJCC|b1-b4 04 元 FFJL 04 幻 AcAfCM 04 戸 FMFJ 04 五 FBMF 04 午 AFFB|b4-b2 04 公 ACAfC 04 孔 FaBgIL 04 号 BMFFbmg 04 今 ACFFa 04 支 FBFaC 04 止 BFBF 04 氏 ABiFK 04 尺 MFJC 04 手 AFFB|a1-x2 04 升 AJFB|x2-i1 04 少 BACA 04 冗 BFaJFl 04 心 ALCC 04 仁 ABFF 04 水 BFaAC 04 切 FLFjJ 04 双 FjCFjK 04 太 FJCC|b4-b1 04 丹 JMCF 04 中 BMFB 04 弔 MFBmgB 04 天 FFJC|l1-l2 04 斗 CCFB 04 屯 ALBL 04 内 BMJC 04 日 BMFF|y4-b1! j4-b2! 04 反 FJFaC|a1-x2 04 匹 FJLL 04 不 FABC 04 夫 FFJC|b1-y3 04 父 ACJC 04 仏 ABAfC 04 分 ACMgJ 04 文 BFJK|x3-x4! 04 片 JBFM 04 方 BFMgJ 04 乏 ABFaCf 04 乏 ABFaIcf 04 毛 AFFL 04 木 FBAC 04 匁 AMgAC 04 厄 FJMgL 04 友 FJFaC|b1-y2 x2-x1 04 予 FaCFaBg 04 六 BFAC|x4-x3! 04 仂 ABMJ 05 比 DBIAL 05 圧 FJFBF|b3-y4 05 以 BICAC 05 右 JFBMF 05 永 CFbFaAC 05 凹 MfBFLB 05 央 BMFJC|x5-i4 05 加 FjJBMF 05 可 FBBMF 05 外 JFjCBC 05 且 BMFFF|l5-l4 i1-x5! i5-i2! 05 刊 FFBBB 05 甘 FBBFF 05 丘 ABFBF 05 旧 BBMFF 05 去 FBFAfC 05 巨 BFMFF 05 玉 FBFFC 05 句 AMgBMF 05 兄 BMFJL 05 穴 BBFaAC 05 玄 BFAcAfC 05 古 FBBMF 05 功 FBIFaJ 05 巧 FBIFBmg|y3-j2 05 広 BFJAfC 05 甲 BMFFB|b5-y3 05 込 ACCFacaCf 05 左 FJFBF|b4-b3 05 冊 BMBBF|j1-y5 05 札 FBACL 05 皿 BMBBF|y5-b1 05 仕 ABFBF|y5-y3 05 司 MFBMF 05 史 BMFJC|x4-x5 y5-y3 05 四 BMJLF 05 市 BFBMB 05 示 FFBAC|l2-l1 y3-y1 05 叱 BMFAL 05 失 AFFJC|y2-y4 05 写 BFaFBmgF 05 主 CFBFF 05 囚 BMJCF 05 収 BBIFjC 05 汁 CCIFB 05 出 BLBLB 05 処 AFaCJFl 05 召 MgJBMF 05 尻 MFJJFl 05 申 BMFFB|y1-y5 05 世 FBBFL 05 正 FBFBF 05 生 AFBFF 05 斥 AJFBC 05 石 FJBMF 05 仙 ABBLB 05 占 BFBMF 05 他 ABMBL|y3-y5 05 打 FBIFB|j2-y3 y1-y2 05 代 ABFKC 05 台 AfCBMF 05 庁 BFJFB 05 田 BMBFF|b3-y1 05 奴 BcJFFjC 05 冬 AFaCCC 05 凸 FBMfLB 05 尼 MFJAL 05 白 ABMFF 05 半 CAFFB 05 犯 ACbAML 05 皮 JFaBFaC 05 必 CAALC 05 氷 BCFjAC 05 付 ABFBC 05 布 JFBMB 05 払 FBIAfC|j2-y3 05 丙 FBMJC 05 平 FCAFB 05 辺 MgJCFacaCf 05 弁 AfCFJB 05 母 AcMCCF 05 包 AMgMFL 05 北 FBIAL 05 本 FBACF 05 末 FFBAC|l1-l2 05 未 FFBAC|l2-l1 05 民 MFBiFK 05 矛 FaCFaBA 05 目 BMFFF 05 矢 AFFJC|b4-y2 05 由 BMBFF|y1-y3 05 幼 AcAfCFjJ 05 用 JMFFB 05 立 BFCAF 05 令 ACCFaC 05 令 ACFMgB 05 礼 BFaBCL 06 名 AFaCBMF 06 扱 FBIJFafaK|j2-y3 06 安 BBFaBcJF 06 衣 BFABiAC 06 芋 FBBFFB 06 印 ABFFMB 06 因 BMFJCF 06 宇 BBFaFFB 06 羽 MCIMCI 06 臼 ABMFFF|x3-x2 06 汚 CCIFFBm 06 仮 ABFJFjC 06 会 ACFFAfC 06 回 BMBMFF 06 灰 FJBAJC 06 各 AFaCBMF 06 汗 CCIFFB 06 缶 AFFBLB 06 企 ACBFBF 06 危 AFaFJMgL 06 机 FBACJFl 06 気 AFFFkAC 06 吉 FBFBMF 06 休 ABFBAC 06 吸 BMFJFafaC 06 朽 FBACFBmg 06 共 FBBFAC 06 叫 BMFBFB 06 仰 ABABiMB 06 曲 BMBBFF 06 刑 FFJBBB 06 血 ABMBBF 06 件 ABAFFB 06 交 BFACAC|b6-b1! 06 光 BCAFJL 06 向 ABMBMF 06 后 AJFBMF 06 好 BcJFFaBF 06 孝 FBFAFabgF 06 江 CCIFBF 06 考 FBFAALbg 06 行 AABFFB 06 合 ACFBMF 06 再 FBMBFF 06 在 FJBFBF 06 旨 ALBMFF 06 死 FAFaCAL 06 糸 AcAfCBAC 06 至 FAfCFBF 06 字 BBFaFaBgF 06 寺 FBFFBC 06 次 CIAFaJK 06 而 FABMBB 06 耳 FBFFIB 06 自 ABMFFF|y5-y4 06 式 FFBIKC 06 芝 FBBBFaCf 06 芝 FBBBFaIcf 06 守 BBFaFBC 06 朱 AFFBAC|b6-b1! 06 州 AJCBCB 06 舟 AJMCBF 06 充 BFAfCJL 06 旬 AMgBMFF 06 巡 AcAcAcCFacaCf 06 匠 FAJFBL 06 庄 BFJFBF 06 色 AFaMBFL 06 尽 MFJCCC 06 迅 FkFBCFacaCf 06 成 JFMgKAC 06 西 FBMJLF 06 舌 AFBBMF 06 先 AFBFJL 06 全 ACFBFF 06 壮 BCIFBF 06 早 BMFFFB 06 争 AFaMFFB 06 存 FJBFaBgF 06 多 AFaCAFaC 06 宅 BBFaAFL 06 団 BMFBCF 06 地 FBFMBL 06 池 CCIFbBL 06 竹 AFBAFB 06 仲 ABBMFB 06 虫 BMFBIC 06 兆 JCILAC 06 辻 FBCCFacaCf 06 伝 ABFFAfC 06 吐 BMFFBF 06 灯 BIJCFBg 06 当 BCAMFF 06 同 BMFBMF 06 弐 FFFIKC 06 肉 BMJCAC 06 如 BcJFBMF 06 任 ABAFBF 06 年 AFFBFB 06 肌 JMFFJFl 06 伐 ABFCAC 06 帆 BMBJFlC 06 妃 BcJFMFL 06 百 FABMFF 06 伏 ABFJCC 06 米 CAFBAC 06 忙 BACBFL 06 朴 FBACBC 06 毎 AFAfMBF 06 亦 BFJBAC|b6-b1! 06 妄 BFLAcJF 06 有 JFBMFF 06 羊 CAFFFB 06 吏 FBMFJC 06 両 FBMBLB 06 列 FJFaCBB 06 劣 BACAMgJ 06 亘 FBMFFF 07 亜 FBMFBBF 07 位 ABBFCAF 07 囲 BMFFJBF 07 医 FAFFJCL 07 壱 FBFBFaAL 07 応 BFJALCC 07 沖 CCIBMFB 07 何 ABFBBMF 07 花 FBBABAL 07 我 AFBIKAC 07 快 BACMFJC 07 戒 FFJBKAC 07 改 MFLAFJK 07 貝 BMFFFAC 07 角 AFaJMBFF 07 完 BBFaFFJL 07 肝 JMFFFFB 07 含 ACFFaBMF 07 岐 BLBFBFaC 07 希 ACAFBMB 07 忌 MFLALCC 07 汽 CCIAFFFk 07 技 FBIFBFaC|j2-y3 07 却 FBFAfCMgB 07 求 FBCIACC 07 究 BBFaJLJFl 07 狂 ABgAFBFF 07 局 MFJMgBMF 07 均 FBIJMCI 07 近 AJFBCFacaCf 07 吟 BMFACFM 07 君 MFFJBMF 07 形 FFJBAAA 07 系 AAcAfCBAC 07 芸 FBBFFAfC 07 迎 ABiMgBCFacaCf 07 決 CCIMFJC 07 見 BMFFFJL 07 言 CFFFBMF 07 呉 BMFBmFAC 07 坑 FBIBFJFl 07 宏 BBFaFJAfC 07 抗 FBIBFJFl|j2-y3 07 攻 FBIAFJK 07 更 FBMFFJC 07 克 FBBMFJL 07 告 AFBFBMF 07 困 BMFBACF 07 佐 ABFJFBF 07 災 AcAcAcCAJC 07 材 FBACFBA 07 坂 FBIFJFaC 07 阪 FaCaBFJFaC 07 作 ABAFBFF 07 伺 ABMFBMF 07 志 FBFALCC 07 私 AFBACAfC|y6-y7 i6-x7! 07 似 ABBICJC 07 児 BBMFFJL 07 社 BFaBCFBF 07 車 FBMFFFB 07 寿 FFFJFBC 07 秀 AFBACJMmg 07 住 ABCFBFF 07 初 BFaBACMgA 07 助 BMFFIMgJ 07 序 BFJFaCFaBg 07 床 BFJFBAC 07 抄 FBIBACA|j2-y3 07 肖 BACBMFF 07 条 AFaCFBAC 07 状 BCIFJCC 07 伸 ABBMFFB 07 臣 BFBMFBF 07 身 ABMFFIA 07 辛 BFCAFFB 07 図 BMCCACF 07 吹 BMFAFaJK 07 杉 FBACAAA 07 声 FBFMBFJ 07 赤 FBFJBAC 07 折 FBIAJFB|j2-y3 07 走 FBFBFJC 07 即 MFFBiCMgB 07 束 FBMFBAC 07 足 BMFBFJC 07 村 FBACFBC 07 妥 ACCAAcJF 07 体 ABFBACF 07 対 BFJCFBC 07 択 FBIMFJC|j2-y3 07 沢 CCIJMFC 07 但 ABBMFFF 07 谷 ACACBMF 07 男 BMBFFMgJ 07 町 BMBFFFBg 07 沈 CCIBFaJL 07 低 ABABiFKF 07 呈 BMFFBFF|y4-j2 07 廷 AFBFFaFaCf 07 弟 CAMFBmgBA 07 努 AcAFFaCMgJ 07 投 FBIJFlFaC|j2-y3 07 豆 FBMFCAF 07 那 MFFJFaCdB 07 尿 MFJBFaAC 07 妊 BcJFAFBF 07 忍 MgJCALCC 07 把 FBIMBFL|j2-y3 07 売 FBFBFaJL 07 伯 ABABMFF 07 麦 FBFFAFaC 07 抜 FBIFJFaC|j2-y3 07 伴 ABCAFFB 07 判 CAFFBBB 07 否 FABCBMF 07 批 FBIFBiAL|j2-y3 07 肥 JMFFMBL 07 尾 MFJAFFL 07 扶 FBIFFJC|j2-y3 07 兵 ABFBFAC 07 別 BMFMgABB 07 返 FJFaCCFacaCf 07 甫 FBMFFBC 07 芳 FBBBFMgJ 07 邦 FFFJFaCdB 07 坊 FBIBFFbgJ 07 妨 BcJFBFFbgJ 07 忘 BFLBLCC 07 防 FaCaBBFFbgJ 07 没 CCIJFlFaC 07 迄 AFFlCCFacaCf 07 妙 BcJFBACA 07 戻 FMFJFJC 07 役 AABJFlFaC 07 余 ACFFBAC 07 抑 FBIABiMB|j2-y3 07 来 FCAFBAC 07 乱 AFBBMFL 07 卵 ABiCJFbgBC 07 利 AFBACBB|y7-y6 x7-i6! 07 里 BMFFBFF|j2-y3 07 良 BMFFBiAC 07 冷 CIACCFaC 07 冷 CIACFMB 07 励 FJFMgJMgJ 07 労 CCABFaMgJ 07 肛 JMFFFBF 07 岑 BLBACFFa 08 宛 BBFaAFaCML 08 依 ABBFABiAK 08 委 AFBACAcJF 08 易 BMFFAMgAA 08 育 BFAfCBMFF 08 雨 FBMBCCCC 08 泳 CCICFbgFaAC 08 英 FBBBMFJC 08 延 ABFBFFaFaC 08 沿 CCIACBMF 08 炎 CAJCCAJC 08 苑 FBBJFaCML 08 往 AABCFBFF 08 押 FBIBMFFB|j2-y3 08 欧 FJCLAFaJC 08 殴 FJCLJLFaC 08 岡 BMCAFBLB 08 価 ABFBMBBF 08 佳 ABFBFFBF 08 果 BMFFFBAC|y5-y3 08 河 CCIFBBMF 08 画 FBMBFFLB 08 芽 FBBFBFBA 08 怪 ACBFaCFBF 08 拐 FBIBMFFbgJ|j2-y3 08 劾 BFAcAACMgJ 08 拡 FBIBFJAfC|j2-y3 08 学 CCABFaFaBgF 08 岳 ABFBFBLB 08 官 BBFaBMFMF 08 岸 BLBFJFFB 08 岩 BLBFJBMF 08 奇 FJCFBBMF 08 祈 BFaBCAJFB 08 季 AFBACFaBgF 08 宜 BBFaBMFFF 08 泣 CCIBFCAF 08 居 MFJFBBMF 08 拒 FBIBFMFF|j2-y3 08 拠 FBIJFjKJFl|j2-y3 08 享 BFBMFFaBgC 08 京 BFBMFBAC 08 供 ABFBBFAC 08 協 FBMJMJMJ 08 峡 BLBFCAJC 08 況 CCIBMFJL 08 金 ACFFBCAF 08 苦 FBBFBBMF 08 具 BMFFFFAC 08 空 BBFaJLFBF 08 屈 MFJBLBLB 08 径 AABFaCFBF 08 茎 FBBFaCFBF 08 券 CAFFJCMgJ 08 肩 FMFJBMFF 08 弦 MFLbgBFAcAfC 08 呼 BMFACAFBg 08 固 BMFBBMFF 08 虎 BFJFaFLJL 08 効 BFACJCMgJ 08 幸 FBFCAFFB 08 拘 FBIAMgBMF|j2-y3 08 昂 BMFFABiMgB 08 肯 BFBFBMFF 08 刻 BFAcAACBB 08 国 BMFBFFCF 08 妻 FMFFBAcJF 08 阪 BcJFAfCBMF 08 刷 MFJBMBBB 08 参 AfCFJCAAA 08 使 ABFBMFJC 08 刺 FBMBACBB 08 姉 BcJFBFBMB 08 枝 FBACFBFjK 08 祉 BFaBCBFBF 08 肢 JMFFFBFaC 08 事 FBMFMFFB 08 侍 ABFBFFBC 08 治 CCIAfCBMF 08 実 BBFaFFFJC 08 舎 ACFBFBMF 08 者 FBFABMFF 08 邪 FBFBAFaCdB 08 若 FBBJFBMF 08 取 FBFFIBFaC 08 受 ACCABFaFaC 08 周 JMFBFBMF 08 宗 BBFaFFBAC 08 叔 BFFBACFjK 08 述 FBACCCFacaCf 08 所 FMFJAJFB 08 尚 BCABMBMF 08 承 FaBFFFFaAC 08 招 FBIFbgJBMF|j2-y3 08 昇 BMFFAJFB 08 松 FBACACAfC 08 沼 CCIMJBMF 08 垂 AFFBBFBF 08 炊 CAJCAFaJC 08 枢 FBACFACL 08 制 AFFBMBBB 08 姓 BcJFAFBFF 08 征 AABFBFBF 08 性 ACBAFBFF 08 青 FBFFBMFF 08 斉 BFACJFFB 08 昔 FBBFBMFF 08 析 FBACAJFB 08 拙 FBIBLBLB|j2-y3 08 阻 FaCdBBMFFF 08 卒 BFACACFB 08 卓 BFBMFFFB 08 拓 FBIFJBMF|j2-y3 08 担 FBIBMFFF|j2-y3 08 知 AFFJCBMF 08 宙 BBFaBMBFF 08 忠 BMFBALCC 08 抽 FBIBMBFF|j2-y3 08 注 CCICFBFF 08 長 BFFFFBiAC 08 直 FBBMFFFL 08 坪 FBIFCAFB 08 定 BBFaFBFJC 08 底 BFJABiFCF 08 抵 FBIABiFCF|j2-y3 08 邸 ABiFCFFaCdB 08 泥 CCIMFJAL 08 的 ABMFFAMgC 08 迭 AFFJCCFacaCf 08 典 BMBBFFAC 08 店 BFJBFBMF 08 東 FBMFFBAC 08 到 FAfCFBIBB 08 毒 FBFFAfMBF 08 突 BBFaJLFJK 08 届 MFJBMBFF 08 乳 ACCAFaBgIL 08 念 ACFFaBLCC 08 波 CCIJFaBFaC 08 拝 FBIFFFFB|j2-y3 08 杯 FBACFABC 08 拍 FBIABMFF|j2-y3 08 泊 CCIABMFF 08 迫 ABMFFCFacaCf 08 板 FBACFJFjK 08 版 JBFMFJFaC 08 彼 AABJFaBFaC 08 披 FBIJFaBFaC|j2-y3 08 泌 CCICJKCC 08 非 JFFIBFFF 08 表 FBFFABiAC 08 苗 FBBBMBFF 08 府 BFJABFBC 08 怖 ACBAFBMB 08 附 FaCdBABFBC 08 侮 ABAFLMBF 08 武 FFBFBIKC 08 服 JMFFBMFaC 08 沸 CCIMFBmgJB 08 物 AFBIAMgAA 08 併 ABCAFFJB 08 並 CAFBBCAF 08 歩 BFBFBACA 08 奉 FFFJCFFB 08 宝 BBFaFBFFC 08 抱 FBIAMgMFL|j2-y3 08 放 BFMgJAFJK 08 法 CCIFBFAfC 08 泡 CCIAMMFL 08 房 FMFJBFMgJ 08 肪 JMFFBFMgJ 08 牧 AFBIAFJC 08 奔 FJCFBFJB 08 妹 BcJFFFBAC 08 枚 FBACAFJK 08 抹 FBIFFBAC|j2-y3 08 味 BMFFFBAC|a6-a3 08 岬 BLBBMFFB 08 命 ACFBMFMB 08 明 BMFFJMFF 08 免 AFaBMBFJL 08 茂 FBBJFKAC 08 盲 BFLBMFFF 08 門 BMFFBMFF 08 夜 BFABAFaCC 08 油 CCIBMBFF 08 林 FBACFBAC 08 例 ABFJFaCBB 08 炉 CAJCFMFJ 08 和 AFBACBMF 08 枠 FBACJFlFB 08 洸 CCIBCAJL 08 迪 BMBFFCFacaCf 09 哀 BFBMFABiAC 09 昆 BMFFFBIAL 09 威 JFFAcAFKAC 09 為 CAMMMACCC 09 胃 BMBFFBMFF 09 姻 BcJFBMFJCF 09 映 BMFFBMFJC 09 栄 CCABFaFBAC 09 疫 BFJCIJFlFaC 09 屋 MFJFAfCFBF 09 卸 AFFBFBIMB 09 音 BFCAFBMFF 09 科 AFBACCCFB 09 架 MgJBMFFBAC 09 悔 ACBAFJfMJF 09 海 CCIAFBfFjJF 09 界 BMBFFACJB 09 垣 FBIFBMFFF 09 革 FBBFBMFFB 09 括 FBIAFBBMF|j2-y3 09 活 CCIAFBBMF 09 冠 BFaFFJLFBC 09 巻 CAFFJCMFL 09 看 AFFJBMFFF 09 紀 AcAfCBACMFL 09 軌 FBMFFFBJFl 09 客 BBFaAFaCBMF 09 虐 BFJFaFLFFL 09 逆 CAFLBJCFacaCf 09 急 AFaMFFALCC 09 級 AcAfCBACJFafaC 09 糾 AcAfCBACBFB 09 挟 FBIFCAFJC|j2-y3 09 狭 ABgAFCAFJC 09 軍 BFaFBMFFFB 09 係 ABAAcAfCBAC 09 型 FFJBBBFBF 09 契 FBFIMgJFJC 09 計 CFFFBMFFB|b8-y9 09 建 MFFFFBFaFaCf 09 研 FJBMFFFJB 09 県 BMFFFLBAC 09 限 FaCdBMFFBiAC 09 孤 FaBgIAJBICK 09 弧 MFBmgAJBICK 09 故 FBBMFACJK 09 枯 FBACFBBMF 09 後 AABAcAfCJFaC 09 侯 ABMFAFFJK 09 厚 FJBMFFFaBgF 09 恒 ACBFBMFFF 09 晃 BMFFBCAJL 09 洪 CCIFBBFAC 09 皇 ABMFFFBFF 09 紅 AcAfCBACFBF 09 荒 FBBBFLJBL 09 郊 BFACJCFaCdB 09 香 AFBACBMFF 09 拷 FBIFBFAABmg|j2-y3 09 恨 ACBMFFBiAC|a5-a3 09 査 FBACBMFFF|b5-b2 09 砂 FJBMFBACA 09 砕 FJBMFJFlFB 09 咲 BMFCAFFJC 09 削 BCABMFFBB 09 昨 BMFFAFMFF 09 姿 CIAFaJCAcJF 09 思 BMBFFALCC 09 指 FBIALBMFF|j2-y3 09 施 BFJMgAFMBL 09 持 FBIFBFFBC|j2-y3 09 室 BBFaFAfCFBF 09 狩 ABgABBFaFBC 09 首 CAFABMFFF 09 拾 FBIACFBMF|j2-y3 09 秋 AFBACCAJC 09 臭 ABMFFFFJC 09 柔 FaCFaBAFBAC 09 重 AFBMFFBFF 09 祝 BFaBCBMFJL 09 俊 ABAbCJLJFjC 09 春 FFFJCBMFF 09 盾 AJFBBMFFF 09 叙 ACFFBACFjC 09 昭 BMFFMJBMF 09 省 BACABMFFF 09 乗 AFFBBFBAC 09 城 FBIJFFbgCAC 09 浄 CCIAFaMFFB 09 食 ACBMFFBiAC|b6-y1 09 信 ABCFFFBMF 09 侵 ABMFFAFaFaC 09 神 BFaBCBMFFB 09 甚 FBBFFFJLL 09 帥 ABMFMFBMB 09 粋 CABACJFlFB 09 是 BMFFFBFJC 09 政 FBFBIAFJC 09 星 BMFFAFBFF 09 牲 AFBIAFBFF 09 窃 BBFaJLALMgJ 09 宣 BBFaFBMFFF 09 専 FBMFFBFBC 09 泉 ABMFFBFaAC 09 浅 CCIFFFKAC 09 洗 CCIAFBFJL 09 染 CCIJFlFBAC 09 前 CAFBMFFBB 09 祖 BFaBCBMFFF 09 奏 FFFJCFFJC 09 相 FBACBMFFF|a5-a2 09 草 FBBBMFFFB 09 荘 FBBBCIFBF 09 送 CAFFJCCFacaCf 09 促 ABBMFBFJK 09 則 BMFFFACBB 09 俗 ABACACBMF 09 耐 FABMBBFBC 09 待 AABFBFFBC 09 怠 AfCBMFALCC 09 胎 JMFFAfCBMF 09 退 MFFBiACCFacaCf 09 単 CCABMFFFB 09 炭 BMBFJCAJC 09 胆 JMFFBMFFF 09 段 ABFFFJFlFaC 09 茶 FBBACFBAC 09 昼 MFJCBMFFF 09 柱 FBACCFBFF 09 衷 FBMFBABiAC 09 挑 FBIJCILAC|j2-y3 09 勅 FBMFBACMgJ 09 珍 FBFIACAAA 09 津 CCIMFFFFB 09 追 ABMFMFCFacaCf 09 亭 BFBMFBFaFB 09 貞 BFBMFFFAC 09 帝 BFCABFaBMB 09 訂 CFFFBMFFB|b9-b8 09 点 BFBMFACCC 09 度 BFJFBBFFaC 09 怒 AcJFFaCALCC 09 逃 JCILACCFacaCf 09 洞 CCIBMFBMF 09 峠 BLBBFFFBC 09 匿 FFBBABMFL 09 独 ABgABMFBIC 09 南 FBBMCAFFB 09 派 CCIAJAJAC 09 背 FBIALBMFF 09 肺 JMFFBFBMB 09 畑 CAJCBMBFF 09 発 FaCACAFFJL 09 卑 ABMBFFAFB 09 飛 FkACBAJFkAC 09 美 CAFBFFFJC 09 秒 AFBACBACA 09 品 BMFBMFBMF 09 負 AFaBMFFFAC 09 赴 FBFBFACBC 09 封 FBFFBIFBC 09 風 JFkABMFBIC 09 粉 CABACACMgJ 09 柄 FBACFBMJC 09 頁 FABMFFFAC 09 変 BFJBACAFaC 09 便 ABFBMFFJC 09 保 ABBMFFBAC 09 胞 JMFFAMMFL 09 某 FBBFFFBAC 09 冒 BMFFBMFFF 09 盆 ACMgABMBBF 09 迷 CAFBACCFacaCf 09 面 FABMBBFFF 09 約 AcAfCBACAMgC 09 柳 FBACABiJMgB 09 勇 FaCBMBFFMgJ 09 幽 BAcAfCAcAfCLB 09 祐 BFaBCJFBMF 09 洋 CCICAFFFB 09 要 FBMBBFAcJF 09 浴 CCIACACbMF 09 律 AABMFFFFB 09 料 CABACCCFB 09 厘 FJBMFFBFF 09 玲 FBFIACCFaC 09 玲 FBFIACFMgB 09 郎 BMFFBiCFaCdB 09 洵 CCIAMgBMFF 09  BFBFFMgBLB 10 皆 FBIALABMFF 10 案 BBFaAcJFFBAC 10 員 BMFBMFFFAC 10 院 FaCdBBBFaFFJL 10 浦 CCIFBMFFBC 10 益 CAFACBMBBF 10 悦 ACBCABMFJL 10 宴 BBFaBMFFAcJF 10 翁 ACAfCMCIMCI 10 俺 ABFJCBMFFL 10 恩 BMFJCFALCC 10 夏 FABMFFFAFaC 10 家 BBFaFACbgAAAC 10 荷 FBBABFBBMF 10 華 FBBFFBBFFB 10 蚊 BMFBICBFJK 10 害 BBFaFBFFBMF 10 格 FBACAFaCBMF 10 核 FBACBFAcAAC 10 株 FBACAFFBAC 10 陥 FaCdBAFaBBMFF 10 既 MFFBiCFBFJL 10 帰 BJMFFAFaBMF 10 記 CFFFBMFMFL 10 起 FBFBFACMFL 10 飢 ACBMFFBiCJFl 10 鬼 ABMBFFJLAfC 10 宮 BBFaBMFABMF 10 挙 CCAFACAFFBg 10 恐 FBIJFlCALCC 10 恭 FBBFACBACC 10 胸 JMFFAMgACLB 10 脅 MgAMgAMgABMFF 10 栗 FBMBBFFBAC 10 桑 FaCFaCFaCFBAC 10 訓 CFFFBMFJBB 10 郡 MFFJBMFFaCdB 10 恵 FBMFFBALCC 10 倹 ABACFBMFJC 10 兼 CAFMFFBBAC 10 剣 ACFBMFJCBB 10 軒 FBMFFFBFFB 10 原 FJABMFFBAC 10 個 ABBMFBBMFF 10 庫 BFJFBMFFFB 10 娯 BcJFBMFBmFAC 10 悟 ACBFBMFBMF 10 候 ABBMFAFFJK 10 校 FBACBFACJK 10 耕 FFFBACFFJB 10 航 AJMCBIBFJFl 10 貢 FBFBMFFFAC 10 降 FaCdBAFaCFBFB 10 高 BFBMFBMBMF 10 剛 BMCAFBLBBB 10 骨 BMBFBFaBMFF 10 根 FBACMFFBiAC 10 唆 BMFAfCALAFaC 10 差 CAFBFFAFBF 10 座 BFJACACFBF 10 宰 BBFaBFCAFFB 10 栽 FBFFBACKAC 10 剤 BFACJFFBBB 10 財 BMFFFACFBA 10 索 FBBFaAcAfCBAC 10 桜 FBACCCAAcJF 10 殺 ACFBACJFlFaC 10 桟 FBACFFFCAC 10 蚕 FFJCBMFBFC 10 残 FJFjCFFFCAC 10 師 ABMFMFFBMB 10 紙 AcAfCBACABiFK 10 脂 JMFFALBMFF 10 時 BMFFFBFFBC 10 疾 BFJCIAFFJC 10 射 ABMFFIIFBC 10 紗 AcAfCBACBACA 10 借 ABFBBFBMFF 10 酌 FBMJLFFAMgC 10 弱 MFBmgCIMFBmgCI 10 殊 FJFjCAFFBAC 10 珠 FBFIAFFBAC 10 酒 CCIFBMJLFF 10 修 ABBAFACAAA 10 従 AABCAFBFAC 10 准 CIABAFBFFF 10 殉 FJFjCAMgBMFF 10 純 AcAfCBACALBL 10 書 MFFFFBBMFF 10 徐 AABACFFBAC 10 除 FaCdBACFFBAC 10 宵 BBFaBCABMFF 10 将 BCIACCAFBC 10 消 CCIBCABMFF 10 症 BFJCIFBFBF 10 祥 BFaBCCAFBFF 10 称 AFBACAFBAC 10 笑 AFBAFBAFJC 10 辱 FJFFBiACFBC 10 唇 FJFFBiACBMF 10 娠 BcJFFJFFBiAC 10 振 FBIFJFFBiAC|j2-y3 10 晋 FBBCAFBMFF 10 浸 CCIMFFBFaFaC 10 真 FBBMFFFFAC 10 針 ACFFBCAIFB 10 陣 FaCdBFBMFFFB 10 衰 BFBMFFABiAC 10 畝 BFBMBFFAFjC 10 逝 FBIAJFBCFacaCf 10 隻 ABAFBFFFFaC 10 席 BFJFBBFBMB 10 扇 FMFJMCIMCI 10 栓 FBACACFBFF 10 租 AFBACBMFFF 10 素 FBFFAcAfCBAC 10 倉 ACFMFFJBMF 10 捜 FBIBMFFBFaC|j2-y3 10 挿 FBIAFBMFFB|j2-y3 10 造 AFBFBMFCFacaCf 10 息 ABMFFFALCC 10 速 FBMFBACCFacaCf 10 袖 BFaBACBMBFF 10 孫 FaBgIAAcAfCBAC 10 帯 FBBBFBFaBMB 10 泰 FFFJCBCIAC 10 託 CFFFBMFAFL 10 値 ABFBBMFFFL 10 恥 FBFFIBBLCC 10 致 FAfCFBIAFJK 10 畜 BFAcAfCBMBFF 10 逐 FACbgAAACCFacaCf 10 秩 AFBACAFFJC 10 朕 JMFFCAFFJC 10 通 FaCBMFFBCFacaCf 10 庭 BFJAFBFFaFaCf 10 逓 AJFFBMBCFacaCf 10 哲 FBIAJFBBMF 10 展 MFJFBBFBiAC 10 徒 AABFBFBFAC 10 途 ACFFBACCFacaCf 10 倒 ABFAfCFBIBB 10 党 BCABFaBMFJL 10 凍 CIFBMFFBAC 10 唐 BFJMFFBBMF 10 島 ABMFFFMgBLB 10 桃 FBACJCILAC 10 討 CFFFBMFFBC 10 透 AFBACAMmgCFacaCf 10 胴 JMFFBMFBMF 10 特 AFBIFBFFBC 10 悩 ACBCCAACLB 10 納 AcAfCBACBMJC 10 能 AfCBMFFALAL 10 破 FJBMFJFaBFaC 10 馬 BFBFFMgCCCC 10 俳 ABJFFFBFFF 10 配 FBMJLFFMFL 10 倍 ABBFCAFBMF 10 梅 FBACAFLMBF 10 班 FBFIBJFBFF 10 畔 BMBFFCAFFB 10 般 AJMCBIJFlFaC 10 疲 BFJCIJFaBFaC 10 秘 AFBACCALBC 10 被 BFaBACJFaBFaC 10 姫 BcJFBFBMFBF 10 俵 ABFBFFJBiAaC 10 病 BFJCIFBMJC 10 浜 CCIABFBFAC 10 敏 AFLMBFAFJK 10 瓶 CAFFJBFBiFlC 10 浮 CCIACCAFaBgF 10 紛 AcAfCBACACMgJ 10 勉 AFaBMBFJLMgJ 10 捕 FBIFBMFFBC|j2-y3 10 倣 ABBFFbgJJFJK 10 俸 ABFFFJCFFB 10 峰 BLBAFaCFFFB 10 砲 FJBMFAMMFL 10 剖 BFCAFBMFBB 10 紡 AcAfCBACBFMgJ 10 埋 FBIBMFFBFF 10 脈 JMFFAJABAC 10 眠 BMFFFMFBiFC 10 娘 BcJFBMFFBiAC 10 耗 FFFBACAFFL 10 紋 AcAfCBACBFJK 10 容 BBFaACACBMF 10 流 CCIBFAfCJBL 10 留 ABiCMgJBMBFF 10 竜 BFCAFBMFFL 10 旅 BFMgJAFABAC 10 倫 ABACFBMFBB 10 涙 CCIFMFJFJC 10 烈 FAFaCBBACCC 10 恋 BFJBACALCC 10 連 FBMFFFBCFacaCf 10 朗 BMFFBiCJMFF 10 浪 CCIBMFFBiAC 11 陛 FaCdBFBIALFBF 11 悪 FBMFBBFALCC 11 梓 FBACBFCAFFB 11 尉 MFJFFBACFBC 11 異 BMBFFFBBFAC 11 移 AFBACAFaCAFaC 11 域 FBIFBMFICAC 11 逸 AFaBMBFJLCFacaCf 11 陰 FaCdBACFMFFAfC 11 液 CCIBFABAFaCC 11 黄 FBBFBMBFFAC 11 菓 FBBBMFFFBAC 11 貨 ABALBMFFFAC 11 械 FBACFFJBKJC 11 涯 CCIFJFBFFBF 11 殻 FBFAFaJMiJFlFaC 11 郭 BFBMFFaBgIFaCdB 11 掛 FBIFBFFBIBC|j2-y3 11 喝 BMFBMFFAMgAL 11 渇 CCIBMFFAMgAL 11 乾 FBBMFFFBAFFaf 11 勘 FBBFFFJLLMgJ 11 患 BMFBMFBALCC 11 貫 LMBFBMFFFAC 11 眼 BMFFFMFFBiAC 11 基 FBBFFFACFBF 11 寄 BBFaFJCFBMFB 11 規 FFJCBMFFFJL 11 亀 AFaBMFFBMFFL 11 偽 ABCAMMMBCCC 11 菊 FBBAMgCAFBAC 11 脚 JMFFFBFAfCMgB 11 救 FBCIACCAFAC 11 球 FBFIFBCIACC 11 虚 BFJFaFLBBCAF 11 許 CFFFBMFAFFB 11 魚 AFaBMBFFACCC 11 強 MFBmgAfCBMFBIC 11 教 FBFAFaBgIAFAC 11 郷 AcAfJMFFBiCFaCdB 11 菌 FBBBMAFBACF 11 偶 ABBMFFBMBFC 11 掘 FBIMFJFLBLB|j2-y3 11 啓 FMFJAFACBMF 11 掲 FBIBMFFAMgAL|j2-y3 11 渓 CCIACCAFFJC 11 経 AcAfCBACFaCFBF 11 蛍 CCABFaBMFBFC 11 健 ABMFFFFBFaFaC 11 険 FaCdBACFBMFJC 11 現 FBFIBMFFFJL 11 康 BFJMFFBCIAC 11 控 FBIBBFaJLFBF|j2-y3 11 黒 BMFFBFFACCC 11 頃 DLFABMFFFAC 11 婚 BcJFABiFKBMFF 11 混 CCIBMFFFBiAL 11 紺 AcAfCBACFBBFF 11 最 BMFFFBFFIFaC 11 彩 ACCAFBACAAA 11 採 FBIACCAFBAC|j2-y3 11 済 CCIBFACJFFB 11 祭 AFaCCFaCFFBAC 11 斎 BFACJFFBACB 11 細 AcAfCBACBMBFF 11 菜 FBBACCAFBAC 11 崎 BLBFJCFBMFBg 11 惨 ACBAfCFACAAA 11 産 BFCAFJAFBFF 11 視 BFaBCBMFFFJL 11 執 FBFCAFFBJFlC 11 捨 FBIACFBFBMF|j2-y3 11 赦 FBFJBBCAFJK 11 斜 ACFFBACCCFB 11 蛇 BMFBICBBFaAL 11 釈 ACAFBACMFJC 11 寂 BBFaBFFBACFaC 11 授 FBIACCABFaFaC|j2-y3 11 終 AcAfCBACACaCCC 11 習 MCIMCIABMFF 11 週 JMFBFBMFCFacaCf 11 渋 CCIBFBFCIAC 11 宿 BBFaABFABMFF 11 淑 CCIFBFBACFjK 11 粛 MFFBCAFACJB 11 術 AABFBACCFFBg 11 庶 BFJFBBFACCC 11 商 BFCABMJLBMF 11 唱 BMFBMFFBMFF 11 渉 CCIBFBFBACA 11 章 BFCAFBMFFFB 11 紹 AcAfCBACMgJBMF 11 訟 CFFFBMFACAfC 11 剰 AFFBBFBACBB 11 常 BCABFaBMFBMB 11 情 ACBFBFFBMFF 11 深 CCIBFaJLFBAC 11 紳 AcAfCBACBMFFB 11 進 ABAFBFFFCFacaCf 11 推 FBIABAFBFFF|j2-y3 11 酔 FBMJLFFJFlFB 11 崇 BLBBBFaFFBAC 11 据 FBIMFJFBBMF|j2-y3 11 雀 BACABAFBFFF 11 清 CCIFBFFBMFF 11 惜 ACBFBBFBMFF 11 責 FBFFBMFFFAC 11 接 FBIBFCAFAcJF|j2-y3 11 設 CFFFBMFJFlFaC 11 雪 FBFaBCCCCMFF 11 旋 BFMgJAFFaBFJC 11 船 AJMCBIACBMF 11 措 FBIFBBFBMFF|j2-y3 11 粗 CAFBACBMFFF 11 組 AcAfCBACBMFFF 11 掃 FBIMFFBFaBMB|j2-y3 11 曹 FBMBBFFBMFF 11 巣 CCABMFFFBAC 11 窓 BBFaJLAfCALCC 11 側 ABBMFFFACBB 11 族 BFMgJACAFFJC 11 袋 ABFCCBFABiAC 11 逮 MFFBCIACCFacaCf 11 第 AFBAFBMFBmgBA 11 脱 JMFFCABMFJL 11 探 FBIBFaJLFBAC|j2-y3 11 淡 CCIBIJKBIJK 11 断 CAFBACLAJFB 11 窒 BBFaJLFAfCFBF 11 著 FBBFBFABMFF 11 帳 BMBBFFFFBiAC 11 張 MFBmgBFFFFBiAC 11 彫 JMFBFBMFAAA 11 眺 BMFFFJCILAC 11 脹 JMFFBFFFBiAC 11 頂 FBFABMFFFAC 11 鳥 ABMFFFMgCCCC 11 陳 FaCdBFBMFFBAC 11 釣 ACFFBCAIAMgC 11 停 ABBFBMFBFaFB 11 偵 ABBFBMFFFAC 11 笛 AFBAFBBMBFF 11 添 CCIAFJCBACC 11 転 FBMFFFBFFAfC 11 都 FBFABMFFFaCdB 11 悼 ACBBFBMFFFB 11 盗 CIAFaJCBMBBF 11 陶 FaCdBAMAFFBLB 11 動 AFBMFFBFIMgJ 11 堂 BCABFaBMFFBF 11 得 AABBMFFFFBC 11 豚 JMFFFACbgAAAC 11 軟 FBMFFFBAFaJC 11 猫 ABgAFBBBMBFF 11 粘 CAFBACBFBMF 11 脳 JMFFCCAACLB 11 婆 CCIJFaBFaCAfJF 11 排 FBIJFFFBFFF|j2-y3 11 敗 BMFFFACAFJK 11 培 FBIBFCAFBMF 11 陪 FaCdBBFCAFBMF 11 舶 AJMCBIABMFF 11 販 BMFFFACFJFaC 11 筆 AFBAFBMFFFB 11 票 FBMBBFFFBAC 11 描 FBIFBBBMBFF|j2-y3 11 貧 ACMgABMFFFAC 11 婦 BcJFMFFBFaBMB 11 符 AFBAFBABFBC 11 部 BFCAFBMFFaCdB 11 副 FBMFBMBFFBB 11 閉 BMFFBMFFFBA 11 偏 ABFMFJBMFBB 11 崩 BLBJMFFJMFF 11 萌 FBBBMFFJMFF 11 訪 CFFFBMFBFMgA 11 望 BFLJMFFFBFF 11 堀 FBIMFJBLBLB 11 麻 BFJFBACFBAC 11 密 BBFaBALBCBLB 11 務 FaCFaBgAAFACMgJ 11 猛 ABgCFaBgFBMBBF 11 問 BMFFBMFFBMF 11 野 BMFFBFIFaCFaBg 11 訳 CFFFBMFMFJC 11 唯 BMFABAFBFFF 11 悠 ABBAFACALCC 11 郵 AFFBBFBIFaCdB 11 庸 BFJMFFBMFFB 11 溶 CCIBBFaACBMF 11 欲 ACACBMFAFaJC 11 翌 MCIMCIBFCAF 11 理 FBFIBMFFBFF 11 陸 FaCdBFBFALFBF 11 率 BFAcAfCCIACFB 11 略 BMBFFAFaCBMF 11 粒 CAFBACBFCAF 11 隆 FaCdBAFaCAFBFF 11 涼 CCIBFBMFBAC 11 猟 ABgACCAJFkFFB 11 陵 FaCdBFBFALAFaC 11 累 BMBFFAcAfCBAC 11 晝 JFMgKACBMBBF 12 葵 FBBFaCACAFFJC 12 握 FBIMFJFAfCFBF|j2-y3 12 偉 ABBMFBMFFBFB 12 飲 ACBMFFBiCAFaJC 12 渦 CCIBMBFBMBMF 12 運 BMFBMFFFBCFacaCf 12 雲 FBFaBCCCCFFAfC 12 営 CCABFaBMFABMF 12 瑛 FBFIFBBBMFJC 12 詠 CFFFBMFCMFaAC 12 越 FBFBFACBiFKAC 12 援 FBIACCAFFJFaC|j2-y3 12 奥 ABMCAFBACFJC 12 温 CCIBMFFBMBBF 12 嫁 BcJFBBFaACbgAAAC 12 過 BMBFBMBMFCFacaCf 12 賀 MgJBMFBMFFFAC 12 絵 AcAfCBACACFFAfC 12 開 BMFFBMFFFFJB 12 階 FaCdBFBiALABMFF 12 街 AABFBFFBIFFB 12 覚 CCABFaBMFFFJL 12 割 BBFaFBFFBMFBB 12 寒 BBFaFBBFFACCC 12 喚 BMFAFaBMJLFJC 12 堪 FBIFBBFFFALL 12 換 FBIAFaBMJLFJC|j2-y3 12 敢 FBFBFFIBAFJC 12 棺 FBACBBFaBMFMF 12 款 FBFFFBACAFaJC 12 間 BMFFBMFFBMFF|l1-l5 12 閑 BMFFBMFFFBAC 12 喜 FBFBMFCAFBMF 12 幾 AcAfCAcAfCFJCKAC 12 揮 FBIBFaFBMFFFB|j2-y3 12 期 FBBFFFACJMFF 12 棋 FBACFBBFFFAC 12 貴 BMFBFBMFFFAC 12 欺 FBBFFFACAFaJC 12 喫 BMFFBFIMgAFJC 12 給 AcAfCBACACFBMF 12 距 BMFBFBIBFMFF 12 暁 BMFFFBFBBFJL 12 勤 FBBBMFBFFIMgJ 12 琴 FBFIFBFFACFFa 12 筋 AFBAFBJMFFMgJ 12 遇 BMFFBMBICCFacaCf 12 隅 FaCdBBMFFBMFFC 12 敬 FBBAFmgBMFAFJC 12 景 BMFFBFBMFBAC 12 軽 FBMFFFBFaCFBF 12 結 AcAfCBACFBFBMF 12 圏 BMCAFFJCMFLF 12 堅 BFBMFBFFaCFBF 12 検 FBACACFBMFJC 12 減 CCIJFFBMFCAC 12 湖 CCIFBBMFJMFF 12 雇 FMFJABBFBFFF 12 御 AABAFFBFBIMgB 12 慌 ACBFBBBFLJBL 12 港 CCIFBBFACMFL 12 硬 FJBMFFBMFFJC 12 絞 AcAfCBACBFACJK 12 項 FBIFABMFFFAC 12 詐 CFFFBMFAFBFF 12 裁 FBFBFABiACKAC 12 策 AFBAFBFBMBAC 12 傘 ACACACACACFB 12 散 FBBFBMFFAFJC 12 紫 BFBIALAcAfCBAC 12 詞 CFFFBMFMFBMF 12 歯 BFBFCAFBACLB 12 滋 CCICAFAcAfCAcAfC 12 軸 FBMFFFBBMBFF 12 湿 CCIBMFFBBCAF 12 煮 FBFABMFFACCC 12 就 BFBMFBACFJLC 12 衆 ABMBBFABAAAC 12 集 ABAFBFFFFBAC 12 循 AABAJFBBMFFF 12 順 JBBFABMFFFAC 12 暑 BMFFFBFABMFF 12 勝 JMFFCAFFJCFaJ 12 掌 BCABFaBMFAFFBg 12 晶 BMFFBMFFBMFF|y5-y1 12 焼 CAJCFBFBBFJL 12 焦 ABAFBFFFACCC 12 硝 FJBMFBCABMFF 12 粧 CAFBACBFJFBF 12 証 CFFFBMFFBFBF 12 詔 CFFFBMFMgABMF 12 象 AFaBMBFACbgAAAC 12 畳 BMBFFBFaBMFFF 12 植 FBACFBBMFFFL 12 殖 FJFjCFBBMFFFL 12 森 FBACFBACFBAC 12 診 CFFFBMFACAAA 12 尋 MFFFBIBMFFBC 12 酢 FBMJLFFAFBFF 12 遂 CAFACbgAAACCFacaCf 12 随 FaCdBAFBMFFCFacaCf 12 晴 BMFFFBFFBMFF 12 税 AFBACCABMFJL 12 絶 AcAfCBACAFaMBFL 12 善 CAFFFBCAFBMF 12 然 AFaCCFJCCACCC 12 疎 FaBFBIFBMFBAC 12 訴 CFFFBMFAJFBC 12 創 ACFMFFJBMFBB 12 喪 FBBMFBMFFBiAC 12 葬 FBBFAFaCALFJB 12 装 BCIFBFBFABiAC 12 測 CCIBMFFFACBB 12 属 MFJABMFBMBIC 12 揃 FBICAFBMFFBB|j2-y3 12 尊 CAFBMJLFFFBC 12 堕 FaCdBJFBMFFFBF 12 惰 ACBFJFBFBMFF 12 替 FFJCFFJCBMFF 12 貸 ABFCCBMFFFAC 12 隊 FaCdBCAFACbgAAAC 12 達 FBFCAFFFBCFacaCf 12 棚 FBACJMFFJMFF 12 短 AFFJCFBMFCAF 12 弾 MFBmgCCABMFFFB 12 智 AFFJCBMFBMFF 12 遅 MFJCAFFFBCFacaCf 12 着 CAFBFFABMFFF 12 貯 BMFFFACBBFaFB 12 朝 FBBMFFFBJMFF 12 超 FBFBFACMgABMF 12 痛 BFJCIFaCBMFFB 12 塚 FBIBFaFACbgAAAC 12 堤 FBIBMFFFBFJC 12 提 FBIBMFFFBFJC|j2-y3 12 程 AFBACBMFFBFF 12 殿 MJFBBFACJFlFaC 12 渡 CCIBFJFBBFFaC 12 登 FaCACAFBMFCAF 12 塔 FBIFBBACFBMF 12 搭 FBIFBBACFBMF|j2-y3 12 棟 FBACFBMFFBAC 12 湯 CCIBMFFBAFaAA 12 痘 BFJCIFBMFCAF 12 等 AFBAFBFBFFBC 12 答 AFBAFBACFBMF 12 筒 AFBAFBBMFBMF 12 統 AcAfCBACBFAfCJL 12 童 BFCAFBMFFBFF 12 道 CAFABMFFFCFacaCf 12 鈍 ACFFBCAIALBL 12 廃 BFJFaCACAFFJL 12 媒 BcJFFBBFFFBAC 12 買 BMBBFBMFFFAC 12 博 FBFBMFFBCFBC 12 飯 ACBMFFBiCFJFaC 12 晩 BMFFAFaBMBFJL 12 番 ACAFBACBMBFF 12 蛮 BFJBACBMFBIC 12 悲 JFFFBFFFALCC 12 扉 FMFJJFFIBFFF 12 費 MFBmgJBBMFFFAC 12 備 ABFBBFABMFFB 12 評 CFFFBMFFCAFB 12 富 BBFaFBMFBMBFF 12 普 CAFBBCAFBMFF 12 復 AABAFBMFFAFaC 12 幅 BMBFBMFBMBFF 12 雰 FBFaBCCCCACMgJ 12 塀 FBIBMFFFJFagAA 12 遍 FMFJBMFBBCFacaCf 12 補 BFaBACFBMFFBC 12 募 FBBBMFFFACMgJ 12 報 FBFCAFFBMgBFaC 12 傍 ABBFCABFaBFFbgA 12 帽 BMBBMFFBMFFF 12 棒 FBACFFFJCFFB 12 貿 ABiCMgJBMFFFAC 12 満 CCIFBBFBMBLB 12 無 AFFBBBBFACCC 12 婿 BcJFFaBFJCBMFF 12 愉 ACBACFBMFFBB 12 猶 ABgACAFBMJLFF 12 裕 BFaBACACACBMF 12 遊 BFMgJAFFaBgFCFacaCf 12 雄 FJAfCABAFBFFF 12 揚 FBIBMFFFJFagAA|j2-y3 12 揺 FBIACCAFFBLB|j2-y3 12 葉 FBBFBBFLFBAC 12 陽 FaCdBBMFFFAFagAA 12 絡 AcAfCBACAFaCBMF 12 落 FBBCCIAFaCBMF 12 嵐 BLBJFkABMFBIC 12 痢 BFJCIAFBACBB 12 硫 FJBMFBFAfCJBL 12 量 BMFFFBMFFBFF 12 塁 BMBFFCIACFBF 12 裂 FAFaCBBBFABiAC 12 廊 BFJBMFFBiCFaCbgB 12 惑 FBMFIKACALCC 12 湾 CCIBFJBACMFBmg 12 腕 JMFFBBFaJFjCML 13 愛 ACCABFaALCCAFaC 13 暗 BMFFBFCAFBMFF 13 意 BFCAFBMFFALCC 13 違 BMFBMFFBFBCFacaCf 13 園 BMFBFBMFABACF 13 煙 CAJCFBMBBFFBF 13 猿 ABgAFBFBMFABiAC 13 遠 FBFBMFABACCFacaCf 13 鉛 ACFFBCAIACBMF 13 塩 FBIAFBMFBMBBF 13 暇 BMFFMFBFFMFFaC 13 禍 BFaBCBMBFBMBMF 13 雅 FBFBAABAFBFFF 13 解 AFaJMBFFMgAAFFB 13 塊 FBIABMBFFJLAfC 13 慨 ACBMFFBiCFBFJL 13 該 CFFFBMFBFAcAAC 13 較 FBMFFFBBFACAC 13 隔 FaCdBFBMFBMALFB 13 楽 ABMFFCIACFBAC 13 滑 CCIBMBFBFaBLFF 13 褐 BFaBACBMFFAMgAL 13 勧 AFFJBBFBFFFMgJ 13 寛 BBFaFBBBMFFFAL 13 幹 FBBMFFFBACFFB 13 感 JFFBMFKACALCC 13 漢 CCIFBBBMFFFJC|y10-j7 13 頑 FFJBiFABMFFFAC 13 棄 BFAfCFBBBFFBAC 13 義 CAFBFFAFBIKAC 13 詰 CFFFBMFFBFBMF 13 業 BBCAFCAFFFBAC 13 極 FBACFBMgBMFFaCF 13 禁 FBACFBACFFBAC 13 愚 BMFFBMBICALCC 13 虞 BFJFaFLBMFBmFAC 13 靴 FBBFBMFFBABAL 13 群 MFFJBMFCAFFFB 13 傾 ABALFABMFFFAC 13 携 FBIABBFBFFFAFafag|j2-y3 13 継 AcAfCBACCAFBACL 13 傑 ABJFjCFBFBFBAC 13 嫌 BcJFCAFMFFBBAC 13 献 FBBMCAFFBFJCC 13 絹 AcAfCBACBMFBMFF 13 遣 BMFBFBMFMFCFacaCf 13 源 CCIFJBBMFFBAC 13 誇 CFFFBMFFJCFFBmg 13 鼓 FBFBMFCAIFBFaC 13 碁 FBBFFFACFABMF 13 溝 CCIFBBFFBMBFF 13 鉱 ACFFBCAIBFJAfC 13 腰 JMFFFBMBBFAcJF 13 債 ABFBFFBMFFFAC 13 催 ABBLBABBFBFFF 13 歳 BFBFJFFBACCAC 13 載 FBFFBMFFFBKAC 13 罪 BMBBFJFFIBFFF 13 搾 FBIBBFaJLAFBFF|j2-y3 13 嗣 BMFBMFBBMFBMF 13 詩 CFFFBMFFBFFBC 13 試 CFFFBMFFFBIKC 13 資 CIAFaJCBMFFFAC 13 飼 ACBMFFBiCMFBMF 13 慈 CAFAcAfCAcAfCALCC 13 辞 AFBBMFBFCAFFB 13 愁 AFBACBAJCALCC 13 酬 FBMJLFFAJCBCB 13 準 CCIABAFBFFFFB 13 署 BMBBFFBFABMFF 13 傷 ABAFBMFFFAMAA 13 奨 BCIACCAFBCFJC 13 照 BMFFMgABMFACCC 13 詳 CFFFBMFCAFFFB 13 蒸 FBBFaBgFaAFFACCC 13 飾 ACBMFFBiCAFBMB 13 触 AFaJMBFFBMFBIC 13 寝 BBFaBCIMFFBFaFaC 13 慎 ACBFBBMFFFFAC 13 新 BFCAFFBACAJFB 13 睡 BMFFFAFFBBFBF 13 数 CAFBACAcJFAFJK 13 勢 FBFJLFBIJFlCMgJ 13 聖 FBFFIBBMFFBFF 13 誠 CFFFBMFJFMKAC 13 跡 BMFBFBIBFJBAC 13 摂 FBIFBFFIBCAAC|j2-y3 13 節 AFBAFBMFFBiCMB 13 戦 CCABMFFFBFKAC 13 腺 JMFFABMFFBFaAC 13 践 BMFBFBIFFFKAC 13 禅 BFaBCCCABMFFFB 13 塑 CAFLBJJMFFFBF 13 僧 ABCABMBFFBMFF 13 想 FBACBMFFFALCC 13 賊 BMFFFACFFBKAC 13 続 AcAfCBACFBFBFaJL 13 損 FBIBMFBMFFFAC|j2-y3 13 滞 CCIFBBBFBFaBMB 13 滝 CCIBFCAFBMFFL 13 嘆 BMFFBBBMFFFJC 13 暖 BMFFACCAFFJFaC 13 痴 BFJCIAFFJCBMF 13 稚 AFBACABAFBFFF 13 置 BMBBFFBBMFFFL 13 蓄 FBBBFAcAfCBMBFF 13 腸 JMFFBMFFFJMgAA 13 跳 BMFBFBIJCILAC 13 賃 ABAFBFBMFFFAC 13 艇 AJMCBIAFBFFaFjC 13 鉄 ACFFBCAIAFFJC 13 電 FBFaBCCCCBMFFL 13 塗 CCIACFFBACFBF 13 働 ABAFBMFFBFIMJ 13 督 BFFBACFaCBMFFF 13 農 BMBBFFFJFFBiAC 13 漠 CCIFBBBMFFFJC|j7-y9 13 鉢 ACFFBCAIFBACF 13 搬 FBIAJMCBIAFlFaC|j2-y3 13 煩 CAJCFABMFFFAC 13 頒 ACMJFABMFFFAC 13 微 AABBLBFJBiAFJK 13 福 BFaBCFBMFBMBFF 13 腹 JMFFAFBMFFAFaC 13 墓 FBBBMFFFACFBF 13 豊 BMBBFFFBMFCAF 13 飽 ACBMFFBiCAMgMFL 13 幕 FBBBMFFFACBMB 13 夢 FBBBMBBFAFaAFaC 13 盟 BMFFJMFFBMBBF 13 滅 CCIFJFBAJCCAC 13 誉 CCAFACCFFFBMF 13 預 FaCFaBgFABMFFFAC 13 蓉 FBBBBFaACACBMF 13 裸 BFaBACBMFFFBAC 13 雷 FBFaBCCCCBMBFF 13 酪 FBMJLFFAFaCBMF 13 裏 BFBMFFBFFABiAC 13 虜 BFJFaFLBMBFFMgJ 13 鈴 ACFFBCAIACCFaC 13 鈴 ACFFBCAIACFMgB 13 零 FBFaBCCCCACCFaC 13 零 FBFaBCCCCACFMgB 13 廉 BFJCAFMFFBBAC 13 路 BMFBFBIAFaCBMF 13 楼 FBACCAFBACAcJF 13 話 CFFFBMFAFBBMF 13 賄 BMFFFACJFBMFF 13 頌 ACAfCFABMFFFAC 14 綾 AcAfCBACFBFJLAFaC 14 維 AcAfCBACABAFBFFF 14 稲 AFBACACCABBMFF 14 隠 FaCdBACCAMFFAMCC 14 駅 BFBFFMgBCCCMFJC 14 演 CCIBBFaFBMBFFAC 14 寡 BBFaFBBMFFFACMgA 14 歌 FBMFBFBMFBAFaJC 14 箇 AFBAFBBMFBBMFF 14 概 FBACMFFBiCFBFJL 14 閣 BMFFBMFFAFaCBMF 14 慣 ACBLMBFBMFFFAC 14 管 AFBAFBBBFaBMFMF 14 関 BMFFBMFFCAFFJC 14 旗 BFMgJAFFBBFFFAC 14 疑 ALAFFJCFaCFaBFJC 14 漁 CCIAFaBMBFFACCC 14 境 FBIBFCAFBMFFJL 14 銀 ACFFBCAIMFFBiAC 14 駆 BFBFFMgBCCCFJCL 14 語 CFFFBMFFBMFBMF 14 誤 CFFFBMFBMFLbFAC 14 構 FBACFBBFFBMBFF 14 綱 AcAfCBACBMCAFBLB 14 酵 FBMJLFFFBFAFaBgF 14 豪 BFBMFBFaFACbgAAAC 14 穀 FBFBFaAFBACJFlFaC 14 酷 FBMJLFFAFBFBMF 14 獄 ABgACFFFBMFFJKC 14 魂 FFAfCABMBFFJLAfC 14 際 FaCdBAFaCCFaCFFBgAC 14 察 BBFaAFaCCFaCFFBAC 14 雑 JFlFBACABAFBFFF 14 算 AFBAFBBMFFFFJB 14 酸 FBMJLFFAfCJLAFaC 14 誌 CFFFBMFFBFALCC 14 雌 BFBIALABAFBFFF 14 磁 FJBMFCAFAcAfCAcAfC 14 漆 CCIFBACACBCAAC 14 遮 BFJFBBFACCCCFacaCf 14 種 AFBACAFBMFFBFF 14 需 FBFaBCCCCFABMBB 14 銃 ACFFBCAIBFAfCJL 14 塾 BFBMFFaBgIJFlCFBF 14 熟 BFBMFFaBgIJFlACCC 14 緒 AcAfCBACFBFABMFF 14 彰 BFCAFBMFFFBAAA 14 障 FaCdBBFCAFBMFFFB 14 精 CAFBACFBFFBMFF 14 製 AFFBMBBBBFABiAC 14 誓 FBIAJFBCFFFBMF 14 静 FBFFBMFFAFaMFFB 14 説 CFFFBMFCABMFJL 14 銭 ACFFBCAIFFFKAC 14 銑 ACFFBCAIAFBFJL 14 漸 CCIFBMFFFBAJFB 14 層 MFJCABMBFFBMFF 14 総 AcAfCBACACAfCBLCC 14 遭 FBMBBFFBMFFCFacaCf 14 像 ABAFaBMBFACbgAAAC 14 増 FBICABMBFFBMFF 14 憎 ACBCABMBFFBMFF 14 駄 BFBFFMgBCCCFJCC 14 態 AfCBMFFALALALCC 14 奪 FJCABAFBFFFFBC 14 端 BFCAIBLBFABMBB 14 嫡 BcJFBFCABMFBBMF 14 徴 AABBLBFBFIAFJK 14 漬 CCIFBFFBMFFFAC 14 摘 FBIBFCABMFBBMF|j2-y3 14 滴 CCIBFCABMFBBMF 14 銅 ACFFBCAIBMFBMF 14 徳 AABFBBMBBFALCC 14 読 CFFFBMFFBFBFaJL 14 認 CFFFBMFMgACALCC 14 寧 BBFaALCCBMBBFFB 14 髪 BFFFFAfCAAAFJFaC 14 罰 BMBBFCFFFBMFBB 14 閥 BMFFBMFFABFKAC 14 碑 FJBMFABMBFFAFB 14 鼻 ABMFFFBMBFFFJK 14 漂 CCIFBMBBFFFBAC 14 腐 BFJABFBCBMACAC 14 複 BFaBACACBMFFAFaC 14 聞 BMFFBMFFFBFFIB 14 碧 FBFIABMFFFABMF 14 慕 FBBBMFFFJCBACC 14 暮 FBBBMFFFACBMFF 14 僕 ABBBCAFCAFFFJC 14 墨 BMFFBFFACCCFBF 14 膜 JMFFFBBBMFFFJC 14 慢 ACBBMFFBMBBFFaC 14 漫 CCIBMFFBMBBFFaC 14 銘 ACFFBCAIAFaCBMF 14 鳴 BMFABMFFFMgABCC 14 綿 AcAfCBACABMFFBMB 14 模 FBACFBBBMFFFJC 14 網 AcAfCBACBMCAFBFL 14 誘 CFFFBMFAFBACAFafag 14 様 FBACCAFFFBCIAC 14 踊 BMFBFBIFaCBMFFB 14 僚 ABFJCCABMFFBAC 14 領 ACCFaCFABMFFFAC 14 領 ACFMgBFABMFFFAC 14 緑 AcAfCBACMFFBCIAC 14 暦 FJFBACFBACBMFF 14 歴 FJFBACFBACBFBF 14 練 AcAfCBACFBMFFBAC 14 漏 CCIMFJFBMBCCCC 15 慰 MFJFFBACFBCALCC 15 遺 BMFBFBMFFFACCFacaCf 15 影 BMFFBFBMFBACAAA 15 鋭 ACFFBCAICABMFJL 15 謁 CFFFBMFBMFFAMgAL 15 閲 BMFFBMFFCABMFJL 15 縁 AcAfCBACMFFACbgAAAC 15 横 FBACFBBFBMBFFAC 15 億 ABBFCAFBMFFACCC 15 稼 AFBACBBFaFACbgAAAC 15 課 CFFFBMFBMFFFBAC 15 餓 ACBMFFBiCAFBAKAC 15 確 FJBMFBFaJBAFBFFF 15 潟 CCIABFMFFAMgACCC 15 歓 AFFJBBFBFFFAFaJK 15 監 BFBMFBFAFFBMBBF 15 緩 AcAfCBACACCAFFJFaC 15 器 BMFBMFFJCBMFBMF 15 嬉 BcJFFBFBMFCAFBMF 15 輝 BCAFJBiBFaFBMFFFB 15 儀 ABCAFBFFAFBICAC 15 戯 BFJFaFLBBCAIFKAC 15 窮 BBFaALABMFFIAMFBmg 15 緊 BMBMFBFFaCAcAfCBAC 15 駒 BFBFFMgBCCCAMgBMF 15 勲 AFBMFFBFIMgJACCC 15 慶 BFJMBBFFaACfCCAFaC 15 劇 BFJFaFLFACbgAAACBB 15 撃 FBMFFFBAFlFaCAFFBg 15 潔 CCIFBFFMgAAcAfCBAC 15 権 FBACAFFJBBFBFFF 15 稿 AFBACBFBMFBMBMF 15 撮 FBIBMFFFBFFIBFaC|j2-y3 15 賛 FFJCFFJCBMFFFAC 15 暫 FBMFFFBAJFBBMFF 15 賜 BMFFFACBMFFAFcgCC 15 質 AJFBAJFBBMFFFAC 15 趣 FBFBFACFBFFIBFaC 15 潤 CCIBMFFBMgFFFBFF 15 遵 CAFBMJLFFFBCCFacaCf 15 諸 CFFFBMFFBFABMFF 15 衝 AABAFBMFFBFIFFB 15 賞 BCABFaBMFBMFFFAC 15 嘱 BMFMFJABMFBMBFC 15 審 BBFaACAFBACBMBFF 15 震 FBFaBCCCCFJFFBiAC 15 澄 CCIFaCACAFBMFCAF 15 請 CFFFBMFFBFFBMFF 15 潜 CCIFFJCFFJCBMFF 15 線 AcAfCBACABMFFBFaAC 15 選 MFLMFLFBBFACCFacaCf 15 遷 FBMBBFFACMFLCFacaCf 15 槽 FBACFBBMBBFBMFF 15 蔵 FBBJFBFBMFBFKAC 15 諾 CFFFBMFFBBJFBMF 15 誰 CFFFBMFABAFBFFF 15 誕 CFFFBMFABFBFFaCaC 15 談 CFFFBMFCAJCCAJC 15 鋳 ACFFBCAIFFFJFBC 15 駐 BFBFFMgBCCCCFBFF 15 潮 CCIFBBMFFFBJMFF 15 調 CFFFBMFJMFBFBMF 15 墜 FaCdBCAFACbgAAACFBF 15 締 AcAfCBACBFCABFaBMB 15 敵 BFCABMFBBMFAFJK 15 徹 AABBFAfCBMFFAFJK 15 撤 FBIBFAfCBMFFAFJK|j2-y3 15 糖 CAFBACBFJFbFFBMF 15 踏 BMFBFBIBFaACBMFF 15 導 CAFABMFFFCFacaCfFBC 15 縄 AcAfCBACBMFFBMFFL 15 熱 FBFALFBIJFlCACCC 15 輩 JFFIBFFFFBMFFFB 15 賠 BMFFFACBFCAFBMF 15 箱 AFBAFBFBACBMFFF 15 範 AFBAFBFBMFFFBMgL 15 盤 AJMCBIJLFaCBMBBF 15 罷 BMBBFAfCBMFFALAL 15 標 FBACFBMBBFFFBAC 15 賓 BBFaFBACABMFFFAC 15 敷 FBMFFBCBFMgJAFJK 15 膚 BFJFaFLBMBFFBMFF 15 賦 BMFFFACFFBFBIKC 15 舞 AFFBBBBFAFaCFBFB 15 噴 BMFFBFBBBMFFFAC 15 墳 FBIFBFBBBMFFFAC 15 憤 BACFBFBBBMFFFAC 15 幣 BCABMBACAFACBMB 15 弊 BCABMBACAFACFJB 15 編 AcAfCBACFMFJBMFBB 15 舗 ACFBFBMFFBMFFBC 15 穂 AFBACFBMFFBALCC 15 褒 BFABBMFFBACABiAC 15 暴 BMFFFBBFACBCIAC 15 撲 FBIBBCAFCAFFFJC|j2-y3 15 摩 BFJFBACFBACAFFBg 15 魅 ABMBFFJLAfCFFBAC 15 黙 BMFFBFIFJCCACCC 15 憂 FABMFFBFaALCCAFaC 15 窯 BBFaALCAFBFFACCC 15 養 CAFBFFACBMFFBiAC 15 履 MFJAABAFBMFFAFaC 15 慮 BFJFaFLBMBFFALCC 15 寮 BBFaFJCCABMFFBAC 15 輪 FBMFFFBACFBMFBB 15 霊 FBFaBCCCCFFBBCAF 15 論 CFFFBMFACFBMFBB 16 緯 AcAfCBACBMFBMFFBFB 16 衛 AABBMFBMFFBFBFFBg 16 憶 ACBBFCAFBMFFACfCC 16 穏 AFBACACCAMFFALCC 16 壊 FBIFBBMBBFBFABiAC 16 懐 ACBFBBMBBFBFABiAC 16 獲 ABgAFBBABAFBFFFFaC 16 憾 ACBJFFBMFCACACfCC 16 還 BMBBFFBMFABACCFacaCf 16 館 ACBMFFBiCBBFaBMFMF 16 機 FBACAcAfCAcAfCFJCKAC 16 橋 FBACAFJCBMFBMBMF 16 興 ABFFBMFBMFMFFFAC 16 凝 CIALAFFJCFaCFaBFJK 16 薫 FBBAFBMFFBFFACCC 16 憩 AFBBMFABMFFFALCC 16 激 CCIABMFFBFMgJAFJK 16 憲 BBFaFBFFBMBBFALCC 16 賢 BFBMFBFFaCBMFFFAC 16 衡 AABAFaBMBFFFJCFFBg 16 墾 ACCACbgAAMFFBiACFBF 16 錯 ACFFBCAIFBBFBMFF 16 諮 CFFFBMFCIAFaJCBMF 16 儒 ABFAFaBCCCCFABMBB 16 樹 FBACFBFBMFCAIFBC 16 獣 CCABMBFFFBMFFJKC 16 縦 AcAfCBACAABCAFBFJC 16 壌 FBIBFACFBBFFABiAC 16 嬢 BcJFBFACFBBFFABiAC 16 錠 ACFFBCAIBBFaFBFJC 16 薪 FBBBFCAFFBACAJFB 16 親 BFCAFFBACBMFFFJL 16 錘 ACFFBCAIAFFBBFBF 16 整 FBMFBACAFACFBFBF 16 積 AFBACFBFFBMFFFAC 16 薦 FBBBFJMBBFFBmgACCC 16 操 FBIBMFBMFBMFFBAC|j2-y3 16 濁 CCIBMBBFAMgBMFBIC 16 壇 FBIBFBMBMFFBMFFF 16 築 AFBAFBFBIJFlCFBAC 16 頭 FBMFCAIFABMFFFAC 16 篤 AFBAFBBMBFFMgACCC 16 曇 BMFFFBFaBCCCCFFAfC 16 燃 CAJCJFjCCFJCCACCC 16 濃 CCIBMBBFFFJFFBiAC 16 薄 FBBCCIFBMFFBCFBC 16 縛 AcAfCBACFBMFFBCFBC 16 繁 AFAcMBFAFACAcAfCBAC 16 避 MFJBMFBFCAFFBCFacaCf 16 蕗 FBBBMFBFBIAFaCBMF 16 奮 FJCABAFBFFFBMBFF 16 壁 MFJBMFBFCAFFBFBF 16 縫 AcAfCBACAFaCFFFBCFacaC 16 膨 JMFFFBFBMFCAIAAA 16 謀 CFFFBMFFBBFFFBAC 16 磨 BFJFBACFBACFABMF 16 薬 FBBABMFFCIACFBAC 16 諭 CFFFBMFACFBMFFBB 16 輸 FBMFFFBACFBMFFBB 16 融 FBMFBMJLFBBMFBIC 16 擁 FBIBFAcAfJABAFBFFF 16 謡 CFFFBMFACCAFFBLB 16 頼 FBMFBACFABMFFFAC 16 龍 FBCAFBMFFFLbFLFFF 16 隣 FaCdBCAFBACAFaCFBFB 16 隷 FBFFFBACMFFBCIAC 16 錬 ACFFBCAIFBMFFBAC 16 録 ACFFBCAIMFFBCIAC 17 嚇 BMFFBFJBACFBFJBAC 17 轄 FBMFFFBBBFaFBFFBMF 17 環 FBFIBMBBFFBMFABAC 17 韓 FBBMFFFBBMFBMFFLB 17 擬 FBIALAFFJCFaCFaBFJC|j2-y3 17 犠 AFBICAFBFFAFBgICAC 17 矯 AFFJCAFACBMFBMBMF 17 謹 CFFFBMFFBBBMFBFFF 17 謙 CFFFBMFCAFMFFBBAC 17 鍵 ACFFBCAIMFFFFBFaFaC 17 厳 CCAFJFBFBFFIBAFAC 17 講 CFFFBMFFBBFFBMBFF 17 購 BMFFFACFBBFFBMBFF 17 懇 ACCACbgAAMFFBiACALCC 17 擦 FBIBBFaAFaCCFaCFFBAC|j2-y3 17 謝 CFFFBMFABMFFFAFBC 17 爵 ACCABMBBFMFFBiCFBC 17 醜 FBMJLFFABMBFFJLAfC 17 縮 AcAfCBACBBFaABFABMFF 17 償 ABBCABFaBMFBMFFFAC 17 礁 FJBMFABAFBFFFACCC 17 績 AcAfCBACFBFFBMFFFAC 17 繊 AcAfCBACFBFBBCAIKAC 17 鮮 AFaBMBFFBCCCCAFFFB 17 燥 CAJCBMFBMFBMFFBAC 17 霜 FBFaBCCCCFBACBMFFF 17 濯 CCIMFFMFFABAFBFFF 17 鍛 ACFFBCAIABFFIAFlFaC 17 聴 FBFFIBFBBMBBFBLCC 17 謄 JMFFCAFFJCCFFFBMF 17 瞳 BMFFFBFCAFBMFFBFF 17 頻 BFBFBACAFABMFFFAC 17 優 ABFABMFFAFaALCCAFaC 17 翼 MCIMCIBMBFFFBBFAC 17 覧 BFBMFBFAFFBMFFFJL 17 療 BFJCIFJCCABMFFBAC 17 嶺 BLBACCFaCFABMFFFAC 17 嶺 BLBACFMgBFABMFFFAC 17 齢 BFBFCAFBACLBACCFaC 17 齢 BFBFCAFBACLBACFMB 17 鎔 ACFFBCAIBMBFBMBMF 18 穫 AFBACFBBABBFBFFFFaC 18 額 BBFaJFaCBMFFABMFFFAC 18 簡 AFBAFBBMFFBMFFBMFF 18 観 AFFJBBFBFFFBMFFFJL 18 顔 BFCAFJAAAFABMFFFAC 18 騎 FBBFFMgBCCCFJCFBMFB 18 襟 BFaBACFBACFBACFFBAC 18 顕 BMFFBBCAIFABMFFFAC 18 験 BFBFFMgBCCCACFBMFJC 18 鎖 ACFFBCAIBCABMFFFAC 18 瞬 BMFFFACCABFaJFjCFBFB 18 織 AcAfCBACBFCAFBMFFKAC 18 職 FBFFIBBFCAFBMFFKAC 18 繕 AcAfCBACCAFFFBCAFBMF 18 礎 FJBMFFBACFBACFaBFAC 18 贈 BMFFFACCABMBFFBMFF 18 戴 FBFBMBFFFBFBFACKAC 18 題 BMFFFBFACFABMFFFAC 18 懲 AABBLBFBFFAFACALCC 18 鎮 ACFFBCAIFBBMFFFFAC 18 闘 BMFFBMFFFBMFCAIFBC 18 難 FBBBMFFFJCABBFBFFF 18 藩 FBBCCIACAFBACBMBFF 18 譜 CFFFBMFCAFBBACBMFF 18 覆 FBMBBFAABAFBMFFAFaC 18 癖 BFJCIMFJBMFBFCAFFB 18 簿 AFBAFBCCIFBMFFBFBC 18 翻 ACAFBACBMBFFMCIMCI 18 繭 FBBBMBAcAfCBACBMFBIC 18 霧 FBFaBCCCCFaCFaBAFACMgJ 18 癒 BFJCIACFBMCCAcAcALCC 18 曜 BMFFMFFMFFABAFBFFF 18 濫 CCIBFBMFBFAFFBMBBF 18 離 BFACLBBMAfCABBFBFFF 18 糧 CAFBACBMFFFBMFFBFF 18 臨 BFBMFBFAFBMFBMFBMF 18 類 CAFBACFJCFABMFFFAC 19 韻 BFCAFBMFFBMFBMFFFAC 19 願 FJBBMFFBACFABMFFFAC 19 鏡 ACFFBCAIBFCAFBMFFJL 19 繰 AcAfCBACBMFBMFBMFFBAC 19 警 FBBAMgBMFAFACCFFFBMF 19 鶏 ACCAFFJCABMFFFMgBCCC 19 鯨 AFaBMBFFBCCCBFBMFBAC 19 璽 FACBMBACACACACFBFFC 19 識 CFFFBMFBFCAFBMFFKAC 19 髄 BMBFBFaBMFFAFBMFFCFacaC 19 瀬 CCIFBMFBACFABMFFFAC 19 藻 FBBCCIBMFBMFBMFFBAC 19 臓 JMFFFBBJFBFBMFBFKJC 19 覇 FBMBBFFBBFBMFFBJMFF 19 爆 CAJCBMFFFBBFACBCIAC 19 魔 BFJFBACFBACABMBFFAL 19 羅 BMBBFAcAfCBACABAFBFFF 19 麗 FBMCFBMCBFJMBBFABiAL 20 議 CFFFBMFCAFBFFAFBICAC 20 競 BFCAFBMFJBiBFCAFBMFJL 20 響 AcAfAMFFBiCFaCdBBFCAFBMFF 20 懸 BMFFFLBACAAcAfCBACALCC 20 護 CFFFBMFFBBABAFBFFFFaC 20 鐘 ACFFBCAIBFCAFBMFFBFF 20 譲 CFFFBMFBFACFBBFFABiAC 20 醸 FBMJLFFBFACFBBFFABiAC 20 籍 AFBAFBFFFBACFBBFBMFF 20 騰 JMFFCAFFJCBFBFFMgACCC 20 欄 FBACBMFFBMFFFBMFFBAC 21 艦 AJMCBIBMBMFBFAFFBMBBF 21 顧 FMFJABBFBFFFFABMFFFAC 21 躍 BMFBFBIMFFMFFABAFBFFF 21 露 FBFaBCCCCBMFBFBIAFaCBMF 22 驚 FBBAMgBMFAFACBFBFFMgACCC 22 襲 BFCAFBMFFFBmFLFFFBFABiAC 22 籠 AFBAFBBFCAFBMFFFBmFLFFF 23 鑑 ACFFBCAIBMBMFBFAFFBMBBF ./mytool/hwd/kanji.hwd.patch40000644000175000017500000000132207572363412016133 0ustar henrichhenrich# # This is an utf-8 encoded patch file. # Fixes MEI Handwriting Data # patch -p0 < this-file # Or on an installed tree (you don't need to recompile): # cd /usr/share/yudit/data # patch -p3 < this-file # # The writing was different than what I expected. # Am I wrong? Need to check with a dictionary sometime. # Gaspar Sinai # 2002-12-01 # *** kanji.hwd- Tue Aug 27 02:06:59 2002 --- kanji.hwd Sun Dec 1 19:38:07 2002 *************** *** 259,263 **** 05 民 MFBiFK 05 矛 FaCFaBA - 05 名 AFaBMF 05 目 BMFFF 05 矢 AFFJC|b4-y2 --- 259,262 ---- *************** *** 269,272 **** --- 268,272 ---- 05 令 ACFMgB 05 礼 BFaBCL + 06 名 AFaCBMF 06 扱 FBIJFafaK|j2-y3 06 安 BBFaBcJF ./mytool/hwd/hanzidata.h0000644000175000017500000002565310217441012015261 0ustar henrichhenrich "A\322\273F\n" # yi1 "B\310\313AC\n" # 37 ren "B\266\371JL\n" # r * GNU Copyright (C) 2003 Gaspar Sinai "B\266\376FF\n" # er4 "B\306\337IL\n" # qi1 "B\260\313AC\n" # ba1 "B\276\305AFbfh\n" # jiu3 122 "B\312\256FB\n" # shi2 "B\301\313FaBg\n" # le5 "B\274\270JFbf\n" # ji3 "B\266\241FBg\n" # ding1 90 "C\322\262FbBBf\n" # 9 ye "C\264\363FAC\n" # 23 dai "C\303\264AAfC\n" # 56 me "C\317\260FbCI\n" # xi2 "C\310\375FFF\n" # san1 "C\317\302FBC\n" # xia4 "C\305\256BcAF\n" # nu3 "C\327\323FaBgF\n" # zi5 "C\270\366ACB\n" # ge4 "C\277\332BMF\n" # kou3 "C\271\244FBF\n" # gong1 157 "C\320\241BgAC\n" # xiao3 "C\311\317BFF\n" # shang4 181(2) "D\262\273FABC\n" # 11 bu "D\323\321FAFaC\n" # 20 you "D\267\362FFAC\n" # 24 fu "D\312\351FbFbBC\n" # 28 shu "D\263\265FAfBF\n" # 29 che "D\315\365FFBF\n" # 45 wang "D\261\310ABfABf\n" # 46 bi "D\326\320BFbFB\n" # 49 zhong "D\310\325BFbFF\n" # 50 ri "D\312\262ABFB\n" # 55 shen "D\306\370AFFFk\n" # qi4 "D\311\331BACA\n" # shao3 "D\316\345FBFbF\n" # wu3 "D\274\373BMAL\n" # jian4 "D\301\371CFAC\n" # liu4 "D\310\317CIbiAC\n" # ren4 "D\275\351ACJB\n" # jie4 "D\316\304CFBdC\n" # wen2 "D\273\245FAfFaF\n" # hu4 "D\314\253FACC\n" # tai4 75 "D\324\306CFAfC\n" # yun2 91 "D\303\253AFFBf\n" # mao2 ? "D\271\253ACAfC\n" # gong1 178 "D\264\323ACAC\n" # cong2 193 "D\267\326ACFbgA\n" # fen1 207 "D\322\324BiCBaC\n" # yi3 213 "D\314\354FFAC\n" # tian1 225 "D\260\315MBFBfh\n" # ba1 ? "D\316\347AFFB\n" # wu3 232 "D\263\244AFBiC\n" # chang2 ? "D\313\256BgFaAC\n" # shui3 (19) "E\313\373ABFbBBf\n" # 6 ta ## "E\275\320BFbFBfB\n" # 8 jiao "E\303\307ABCBFb\n" # 15 men "E\266\324FaCFBC\n" # 27 dui "E\311\372AFFBF\n" # 42 sheng "E\272\272CFIFaC\n" # 43 han "E\261\276FBACF\n" # 51 ben "E\315\342AFaCBC\n" # wai4 "E\272\305BMFFAfag\n" # hao4 "E\313\304BMALF\n" # si4 "E\323\303JFbgFFB\n" # yong4 "E\310\245FBFAfC\n" # qu4 "E\320\264AFaFBfbgF\n" # xie3 "E\261\261FBIAL\n" # bei3 "E\300\274CAFFF\n" # lan2 73 "E\265\347BMFFL\n" # dian4 124 "E\271\305FBBMF\n" # gu3 134 "E\277\250BFFBC\n" # ka3 137 "E\266\253FAfBgAC\n" # dong1 152 "E\313\276FbgFBMF\n" # si1 179 "E\276\311BBMFF\n" # jiu4 179(2) "E\260\327ABMFF\n" # bai2 196 "E\264\362FBgIFBg\n" # da3 238 "E\274\323FbgJBMF\n" # jia1 "E\260\353CAFFB\n" # ban4 206 "E\316\361AFaCFbgA\n" # wu4 (19) "F\272\303BcAFFaJF\n" # hao3 "F\302\360BFbFFbBfbF\n" # 3 ma "F\302\350BcAFFbBfbF\n" # 7 ma "F\313\375BcAFFbBBf\n" # 10 ta "F\303\246ACBCFBf\n" # 13 mang "F\326\275AfAiIAbFC\n" # 32 zhi "F\304\307FjFFJFbfbB\n" # 34 na "F\300\317FBFAABf\n" # 39 lao "F\312\246BJFBFbB\n" # 40 shi "F\265\330FBIFbBBf\n" # di4 "F\273\266FaCAFaAC\n" # huan1 "F\316\374BMFAFafaC\n" # xi1 "F\316\312CBMBMF\n" # wen4 "F\324\332FABFBF\n" # zai4 "F\266\340AFaCAFaC\n" # duo1 "F\324\331FBFbgFFB\n" # zai4 "F\317\310AFBFJL\n" # xian1 "F\303\373AFaCBMF\n" # ming2 "F\327\326CAFaFaBgF\n" # zi4 "F\302\362FaCCFAC\n" # mai3 "F\323\320FABFjFF\n" # you3 "F\320\320AABFFBg\n" # hang2 "F\265\261BCAMFF\n" # dang1 "F\324\323AFbfFBgAC\n" # za2 "F\260\331FABMFF\n" # bai3 102 "F\316\367FBFbgJLF\n" # xi1 151 "F\322\302CFAFiAC\n" # yi1 184(2) "F\274\376ABAFFB\n" # jian4 192 "F\272\354AfAiIFBF\n" # hong2 200 "F\263\241FBIFafbgAA\n" # chang3 202 "F\273\330BMBMFF\n" # hui2 209 "F\273\252ABABfhFB\n" # hua2 239 "F\322\263FABMJC\n" # ye4 230 "F\315\254BMgFBMF\n" # tong2 ? "F\311\253AFaMBFBfh\n" # se4 ? "F\272\363AJFBMF\n" # hou4 214 "F\303\327CAFBAC\n" # mi3 ? "F\320\335ABFBAC\n" # xiu1 228 "F\273\341ACFFAfC\n" # hui4 236 "F\263\324BMFAFFafh\n" # chi1 240 "F\324\347BMFFFB\n" # zao3 ? "G\304\343ABAFaJAC\n" # ni3 "G\316\322AFBFCAC\n" # 4 wo "G\265\334CAFbFBfbBA\n" # 17 di "G\325\342CFACCFafaF\n" # 21 zhe "G\261\250FBgFFaBFaC\n" # 31 bao "G\300\373AFBACBB\n" # 47 li "G\312\261BFbFFFBC\n" # 48 shi "G\275\370FFABCFafaF\n" # jin4 "G\323\255ABiFbgBCFafaF\n" # ying2 "G\327\370ACACFBF\n" # zuo4 "G\262\343MFAFFAfC\n" # ceng2 "G\273\271FABCCFafaF\n" # huan2 "G\264\312CFFbgFBMF\n" # ci2 "G\312\266CBBMFAC\n" # shi5 "G\300\264FCAFBAC\n" # lai2 "G\304\320BMFBFFbgA\n" # nan2 "G\327\367ABAFBFF\n" # zuo4 "G\303\273CCIJFbfFaC\n" # mei2 "G\327\241ABCFFBF\n" # zhu4 "G\270\346AFBFBMF\n" # gao4 "G\313\337CFbiAJFBC\n" # su5 "G\317\265AAfAfCBgAC\n" # xi4 "G\326\276FBFACfCC\n" # zhi4 "G\300\357BMFFFBF\n" # li3 "G\322\275FAFFACL\n" # yi1 106 "G\323\312BMFBFFbfbB\n" # you2 149 "G\276\326MFJFbgBMF\n" # ju2 150 "G\314\375BMFAJFB\n" # ting1 180 "G\301\275FBFbgACAC\n" # liang3 178(2) "G\314\365AFaCFBgAC\n" # tiao2 191 "G\325\305MFBfbgAFBiC\n" # zhang1 194 "G\325\322FBgIFBciAC\n" # zhao3 195 "G\324\261BMFBMJC\n" # yuan2 "G\343\353CCCiCFAC\n" # wen4 "G\321\324CFFFBMF\n" # yan2 "G\316\273ABCFCAF\n" # wei4 204 "G\300\344CCiACCFaC\n" # leng3 ? "G\260\311BMFMBFBfh\n" # ba5 237 "G\327\337FBFBFAC\n" # zou3 222 "G\267\271AFaBiAJFaC\n" # fan4 224 "G\273\250FBBABABfh\n" # hua1 (19) "G\303\277AFBfFbgFCC\n" # mei3 226 "G\264\262CFJFBAC\n" # chuang2 227 "H\304\330BFbFFbFBABf\n" # 12 ne "H\260\326ACACFbBFBfh\n" # 18 ba "H\305\363JFbFFJFbFF\n" # 19 peng "H\265\304ABFbFFAFbC\n" # 25 de "H\271\372BFbFFBFCF\n" # 36 guo "H\321\247CBABFaFaJF\n" # 41 xue "H\315\274BFbAFaCCCF\n" # 53 tu "H\320\325BcAFAFFBF\n" # xing4 "H\311\341ACFFBBMF\n" # she4 "H\273\255FBMFBFLB\n" # hua4 "H\265\344BMFBBFAC\n" # dian3 "H\317\326FFBFBMAL\n" # xian4 "H\323\242FBABMFBaC\n" # ying1 "H\267\250CCIFBFAfC\n" # fa3 "H\265\352CFABFBMF\n" # dian4 "H\311\334AfAiIFbgABMF\n" # shao4 "H\272\315AFBACBMF\n" # he2 "H\303\303BcAFFFBAC\n" # mei4 "H\275\343BcAFBMFFF\n" # jie3 "H\276\251CFBMFBgAC\n" # jing1 "H\262\336FABMACBBg\n" # ce4 104 "H\313\371AJMFAJFB\n" # suo3 105 "H\273\260CIbiAFBBMF\n" # hua4 125 "H\262\250CFIFaJBFaC\n" # bo1 135 "H\305\301BFbgBABMFF\n" # pa4 136 "H\302\364FBFaFFFAC\n" # mai4 144 "H\277\247BMFFbgJBMF\n" # ka1 164 "H\267\376JFbFFFaBFaC\n" # fu2 186 "H\263\304CFaBACFBgC\n" # chen4 189 "H\311\300CFaBACAAA\n" # shan1 190 "H\276\255AfAiIFaCFBF\n" # jing1 ? "H\277\314CFAfAACBBg\n" # ke4 208 "H\312\265CAFaCCFAC\n" # shi2 ? "H\307\310ABAFACJB\n" # qiao2 ? "H\312\302FBMFMFFBg\n" # shi4 216 "H\261\355FFBFABiAC\n" # biao3 222A "H\304\356ACCFaABfhCC\n" # nian4 ? "H\261\255FBACFABC\n" # bei1 (19) "I\272\334AABFbFFBAC\n" # 5 hen "I\312\307BFbFFFBFAC\n" # 22 shi "I\304\304BFbFFjFFJFbfbB\n" # 35 na "I\323\357CBFBFbFBFbF\n" # 44 yu "I\277\264AFFABFbFFF\n" # 54 kan "I\262\350FBAACFJAC\n" # cha2 "I\277\315CAFaAFaCBMF\n" # ke4 "I\271\363BMFBFBMAC\n" # gui4 "I\324\272MBCAFaFFAL\n" # yuan4 "I\313\265CIbiCABMFJL\n" # shuo1 "I\272\242FaBgICFAfAAC\n" # hai2 "I\270\370AfAiIACFBMF\n" # gei3 "I\320\305ABCFFFBMF\n" # xin4 "I\317\340FBACBMFFF\n" # xiang1 "I\300\300BBAFCBMAL\n" # lan3 "I\312\322CAFaFAfCFBF\n" # shi4 "I\303\300CAFFBFFAC\n" # mei3 71 "I\304\317FABFbgCAFFB\n" # nan2 153 "I\264\251CAFaACFAfBgA\n" # chuan1 183(2) "I\265\343BFBMFACCC\n" # dian3 205 "I\262\356CAFFFAFBF\n" # cha4 210 "I\326\323AFFFBiBMFB\n" # zhong1 211 "I\307\260CAFBFbgFFBBg\n" # qian2 215 "I\312\263ACCMFFBiAC\n" # shi2 217 "I\276\365CCAAFaBMABfh\n" # jiao4 234 "I\322\252FBMBBFFAcBa\n" # yao4 235 "J\266\274FBFABFbFFFbfbB\n" # 14 dou "J\270\347FBFbFBFBFbFB\n" # 16 ge "J\270\337CFBFbFBFbBFbF\n" # 30 gao "J\261\312AFCAFCAFFBf\n" # 33 bi "J\313\255CBABCFFFBF\n" # 38 shei "J\307\353CBFFBFBFjFF\n" # qing3 "J\321\314CJACBMFFAC\n" # yan1 "J\301\364ABiCFaABMFBF\n" # liu2 "J\260\241BMFFagBFBMFBg\n" # a4 a1 ? 92 "J\274\322CAFaFACbgAAAC\n" # jia1 "J\260\256ACCAAFaFAFaC\n" # ai4 "J\324\304CBFagCABMFJL\n" # yue4 "J\272\311FCAABFBMFBg\n" # he2 72 "J\276\306CCIFBFbgJLFF\n" # jiu3 167 "J\260\340FFBIBJFFBF\n" # ban1 176(2) "J\276\347FaFJFBBMFBBg\n" # ju4 182(2) "J\275\350ABFBBFBMFF\n" # jie4 185 "J\327\371CFJACACFBF\n" # zuo4 203 "J\277\316CIbiBMFFFBAC\n" # ke4 212 "J\321\351FbBfbFACFCCAF\n" # yan4 ? "J\272\243CCCiAFBfFbgFCC\n" # hai3 "J\325\346FABMFFFFAC\n" # zhen1 ? "J\310\310FBgIJFbchCACCC\n" # re4 ? "J\306\360FBFBFACMFBfh\n" # qi3 220 "J\272\362ABBMFAFFAC\n" # hou4 223 "J\317\242ABMFFFABfhCC\n" # xi5 229 "J\275\333FBACFBFBMF\n" # ju2 (19) "J\306\277CAFFJBFBiFbfhC\n" # ping2 (19) "K\304\372ABAFaJACABfhCC\n" # nin2 "K\313\336CBFaABFABMFF\n" # su4 "K\263\243BCAAFaBMFBFbgB\n" # chang2 "K\322\370AFFFBiMFFBiAC\n" # yin2 "K\275\314FBFAFaJFAFJC\n" # jiao1/4 155 "K\270\322MFBBFFIAFJC\n" # gan3 "K\271\335AFaBiCAFaBMFMF\n" # guan3 "K\311\314CFCABFbgACBMF\b" # shang1 141 "K\306\261FBFbgJLFFFBgAC\n" # piao4 154 "K\312\332FBgIACCACFaFaC\n" # shou4 156 "K\267\310BMFBFFFBFFF\n" # fei1 165 "K\306\241BMFABMFFJFB\n" # pi2 166 "K\315\355BMFFAFaBMFJBfh\n" # wan3 180(2) "K\300\355FFBIBMFFBFF\n" # li3 "K\302\314AfAiIMFFBgFIAC\n" # l4 197 "K\273\306FBBFBMFBFAC\n" # huang2 201 "K\326\260FBBFFIBMFAC\n" # zhi2 ? "K\314\303BCAAFaBMFFBF\n" # tang2 218 "L\320\273CBABFbFFFAFBA\n" # 26 xie "L\272\310BMFBMFFCFjCAL\n" # he1 "L\316\271BMFBMFBFFBiAC\n" # wei4 "L\310\271CFaBACMFFJBMF\n" # qun2 187 "L\277\343CFaBACCFJFAfBF\n" # ku4 188 "L\302\263FaABMFBFFBMFF\n" # lu3 "L\263\314AFBACBMFFFBF\n" # cheng2 ? "L\272\332BMCAFFBFABCC\n" # hei1 "L\265\310AFCAFCFBFFBgC\n" # deng3 242 "L\317\262FBFBMFCAFBMF\n" # xi3 (19) "M\317\353FBACBMFFFACfCC\n" # xiang3 "M\320\302CFCAFFBgACAJFB\n" # xin1 "M\300\266FBBBJJFCBMBBF\n" # lan2 198 "M\270\372BMFBFBFMFFBiAC\n" # gen1 219 "M\313\257BMFFFAFFBBFBF\n" # shui4 233 "M\302\267BMFBFFBAFaCBMF\n" # lu4 241 "O\321\325CFCAJFAAAFABMJC\n" # yan2 ? "O\323\260BMFFCFBMFBgACAAA\n" # ying3 221 "O\266\256ABCFBBAFBMFFFBF\n" # dong3 ? "O\314\342BFbFFFBFACFABMJC\n" # ti2 231 ./mytool/hwd/roman.hwd0000644000175000017500000000245207732742746015007 0ustar henrichhenrich#HWD 2.0 DO NOT REMOVE THIS LINE # Swapnil Hajare # Roman Letters and Decimal Numbers 01 0 10-8-6-4-2-12 01 0 12-2-4-6-8-10 01 1 6 01 2 3-4-6-5 01 3 4-7-4-7 01 4 7-5-12-6 01 5 9-8-4-6-7 01 6 10-9-8-6-4-3-9 01 7 3-7 01 8 1-11-5-7-1 01 9 8-6-4-3-6-8 01 a 9-6-4-12-6 01 b 6-12-4-6 01 C 10-8-6-4-3 01 c 10-8-6-4-3 01 d 6-12-8-6 01 e 2-12-9-7-6 01 G 9-8-6-4-6 01 g 8-6-4-12-6-8 01 h 6-12-2-4 # this is for uppercase i 01 I 6 01 i 6 01 j 6-8 01 L 6-3 # this is for lowercase L 01 l 12-6 01 M 1-3-1-3 01 m 6-12-2-4-12-2-4 01 N 12-4-12 01 n 6-12-2-4 01 O 10-8-6-4-2-12 01 O 12-2-4-6-8-10 01 o 10-8-6-4-2-12 01 o 12-2-4-6-8-10 01 p 6-12-2-8 01 q 8-6-4-12-6-5 01 r 6-12-2 01 S 10-9-4-6-7 01 s 1-11-4-7 01 U 6-4-12 01 u 6-4-12-6 01 V 5-2 01 v 5-2 01 W 5-2-5-2 01 w 5-2-5-2 01 y 4-2-8 01 Z 3-7-5 01 z 3-7-5 ##################### 02 4 6,8-3 02 A 1-5,3 02 B 6,4-7-4-7 02 b 6,4-7 02 D 6,4-7-9 02 E 9-6-3,3 02 F 9-6,3 02 f 11-6,3 02 G 10-8-6-4-6,3 02 H 6,3-12-6 02 J 6-8,3 02 K 6,8-6 02 k 6,8-6 02 P 6,4-7 02 Q 10-8-6-4-2-12,5 02 Q 12-2-4-6-8-10,5 02 T 3,6 02 T 6,3 02 t 6-4,3 02 t 12-6 ,3 02 X 4,8 02 X 8,4 02 x 4,8 02 x 8,4 02 Y 4-2,6 02 y 4,7 ##################### 03 A 7,5,3 03 F 6,3,3 03 H 6,6,3 03 H 6,3,6 03 R 6,4-7,4 03 Y 4,8,6 ##################### 04 E 6,3,3,3 ##################### ./mytool/hwd/kanji.hwd.patch30000644000175000017500000000147107532460064016134 0ustar henrichhenrich# # This is an utf-8 encoded patch file. # Fixes SUI and HITU Handwriting Data # patch -p0 < this-file # Or on an installed tree (you don't need to recompile): # cd /usr/share/yudit/data # patch -p3 < this-file # # The writing order was different than what I expected. # Am I wrong? # Gaspar Sinai # 2002-05-14 # *** kanji.hwd- Wed Nov 28 08:40:59 2001 --- kanji.hwd Tue May 14 19:57:17 2002 *************** *** 139,143 **** 04 心 ALCC 04 仁 ABFF ! 04 水 FaBAC 04 切 FLFjJ 04 双 FjCFjK --- 139,143 ---- 04 心 ALCC 04 仁 ABFF ! 04 水 BFaAC 04 切 FLFjJ 04 双 FjCFjK *************** *** 242,246 **** 05 犯 ACbAML 05 皮 JFaBFaC ! 05 必 CALAC 05 氷 BCFjAC 05 付 ABFBC --- 242,246 ---- 05 犯 ACbAML 05 皮 JFaBFaC ! 05 必 CAALC 05 氷 BCFjAC 05 付 ABFBC ./mytool/hwd/kanji.hwd.patch00000644000175000017500000000473707532460064016141 0ustar henrichhenrich# # Fixed a few of 'em # Gaspar Sinai # 2001-11-12 # *** kanji.hwd- Tue Nov 13 00:34:34 2001 --- kanji.hwd Tue Nov 13 00:35:08 2001 *************** *** 179,183 **** 05 央 BMFJC|x5-i4 05 加 FjJBMF ! 05 可 FBMFB 05 外 JFjCBC 05 且 BMFFF|l5-l4 i1-x5! i5-i2! --- 179,183 ---- 05 央 BMFJC|x5-i4 05 加 FjJBMF ! 05 可 FBBMF 05 外 JFjCBC 05 且 BMFFF|l5-l4 i1-x5! i5-i2! *************** *** 393,397 **** 07 応 BFJALCC 07 沖 CCIBMFB ! 07 何 ABFBMFB 07 花 FBBABAL 07 我 AFBIKAC --- 393,397 ---- 07 応 BFJALCC 07 沖 CCIBMFB ! 07 何 ABFBBMF 07 花 FBBABAL 07 我 AFBIKAC *************** *** 554,558 **** 08 佳 ABFBFFBF 08 果 BMFFFBAC|y5-y3 ! 08 河 CCIFBMFB 08 画 FBMBFFLB 08 芽 FBBFBFBA --- 554,558 ---- 08 佳 ABFBFFBF 08 果 BMFFFBAC|y5-y3 ! 08 河 CCIFBBMF 08 画 FBMBFFLB 08 芽 FBBFBFBA *************** *** 566,570 **** 08 岸 BLBFJFFB 08 岩 BLBFJBMF ! 08 奇 FJCFBMFB 08 祈 BFaBCAJFB 08 季 AFBACFaBgF --- 566,570 ---- 08 岸 BLBFJFFB 08 岩 BLBFJBMF ! 08 奇 FJCFBBMF 08 祈 BFaBCAJFB 08 季 AFBACFaBgF *************** *** 600,604 **** 08 刻 BFAcAACBB 08 国 BMFBFFCF - 08 昆 BMFFFBiAL 08 妻 FMFFBAcJF 08 阪 BcJFAfCBMF --- 600,603 ---- *************** *** 690,694 **** 08 怖 ACBAFBMB 08 附 FaCdBABFBC ! 08 侮 ABAFLMFB 08 武 FFBFBIKC 08 服 JMFFBMFaC --- 689,693 ---- 08 怖 ACBAFBMB 08 附 FaCdBABFBC ! 08 侮 ABAFLMBF 08 武 FFBFBIKC 08 服 JMFFBMFaC *************** *** 729,732 **** --- 728,732 ---- 08 迪 BMBFFCFacaCf 09 哀 BFBMFABiAC + 09 昆 BMFFFBIAL 09 威 JFFAcAFKAC 09 為 CAMMMACCC *************** *** 744,748 **** 09 海 CCIAFBfFjJF 09 界 BMBFFACJB - 09 皆 FBiALABMFF 09 垣 FBIFBMFFF 09 革 FBBFBMFFB --- 744,747 ---- *************** *** 917,920 **** --- 916,920 ---- 09 郎 BMFFBiCFaCdB 09 洵 CCIAMgBMFF + 10 皆 FBIALABMFF 10 案 BBFaAcJFFBAC 10 員 BMFBMFFFAC *************** *** 929,933 **** 10 夏 FABMFFFAFaC 10 家 BBFaFACbgAAAC ! 10 荷 FBBABFBMFB 10 華 FBBFFBBFFB 10 蚊 BMFBICBFJK --- 929,933 ---- 10 夏 FABMFFFAFaC 10 家 BBFaFACbgAAAC ! 10 荷 FBBABFBBMF 10 華 FBBFFBBFFB 10 蚊 BMFBICBFJK *************** *** 1090,1094 **** 10 浮 CCIACCAFaBgF 10 紛 AcAfCBACACMgJ - 10 陛 FaCdBFBiALFBF 10 勉 AFaBMBFJLMgJ 10 捕 FBIFBMFFBC|j2-y3 --- 1090,1093 ---- *************** *** 1117,1120 **** --- 1116,1120 ---- 10 朗 BMFFBiCJMFF 10 浪 CCIBMFFBiAC + 11 陛 FaCdBFBIALFBF 11 悪 FBMFBBFALCC 11 梓 FBACBFCAFFB ./mytool/hwd/convert.pl0000644000175000017500000000625107532460064015171 0ustar henrichhenrich#!/usr/bin/perl # A converter to convert these include files to # something more readable. # Gaspar Sinai # Tokyo 2001-10-01 # uniconv was fixed from yudit-2.4.8.beta7 for shift-jis die "usage: $0 gb or sjis < filename" if ($#ARGV < 0 || ($ARGV[0] ne "gb" && $ARGV[0] ne "sjis")); $isgb = ($ARGV[0] eq "gb") ? 1 : 0; shift; $convopt = ($isgb==1) ? "gb-2312-x11" : "shift-jis"; $converter = "| uniconv -decode $convopt "; die "can not execute $converter" unless (open (UNICONV, $converter)); ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); $datenow = sprintf ("%04d-%02d-%02d %02d:%02d:%02d", $year+1900, $mon+1, $mday, $hour, $min, $sec); print UNICONV < # $datenow # # stroke character # count utf-8 Stroke Desc. # <---->[space]<---->[space]<----------------->[\\n] # 2Bytes N bytes Variable Bytecount # # Strokes Desc # * This is from JStroke. (TDR) is Todd's JavaDict format. # * One stroke is a capital letter that might # be followed by a small letter, in case of curves. # * Capital and small letters have the same meaning: angle. # * Strokes are in order packed one after the other # # A or a TDR='1' CLK=07:30 DEG=225 # B or b TDR='2' CLK=06:00 DEG=180 # C or c TDR='3' CLK=04:30 DEG=135 # D or d TDR='4' CLK=09:00 DEG=270 # F or e TDR='6' CLK=03:00 DEG=090 # G or f TDR='7' CLK=10:30 DEG=315 # H or h TDR='8' CLK=12:00 DEG=360 # I or i TDR='9' CLK=01:30 DEG=045 # J or j TDR='x' down 06:00 then 07:30 # K or k TDR='y' down 06:00 then 04:30 # L or l TDR='c' down 06:00 then 03:00 # M or m TDR='b' across 03:00 then 06:00 # # Notes: # TDR is the JavaDict format. # JavaDict does not pack, it has spaces. # # After the last stroke there can be an extra filter. # Filters use window coordinate system so the upper # left corcer is the origo. Filter signals are # calcualted by substrating one location-or-length # from another. Filters start at '|'. Generally # <-sign> # If a filter is followed by '!' that makes the filter # # stronger. # Filter names: # # x1 stroke 0 x-start # y2 stroke 1 y-start # i1 stroke 0 x-end # j1 stroke 0 y-end # a1 stroke 0 x-middle # b1 stroke 0 y-middle # l3 stroke 2 length # - # ' ' new filter follows # '|' new filter set starts # EOD $line = 0; while (<>) { $line++; if (!/^\s*\"/) { next; } $data = eval $_; if (!defined $data) { die "Could not parse line $line: $!"; } $first = substr($data,0,1); my ($c1, $c2) = unpack ("CC", substr($data,1,2)); $rest = substr($data,3,-1); $decoded = ""; if ($isgb==1){ $decoded = "\033\$(A" . chr($c1&0x7f) . chr($c2&0x7f) . "\033(B"; } else { $decoded = chr($c1) . chr($c2); } $fstr = sprintf ("%02d", ord($first)-ord('A')+1); $str = $fstr . " " . $decoded . " " . $rest . "\n"; print UNICONV $str; } close (UNICONV); exit (0); ./mytool/ProcessFile.cpp0000644000175000017500000005627311326624310015315 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "ProcessFile.h" #include "stoolkit/SBMap.h" #include "stoolkit/SString.h" #include "stoolkit/SIOStream.h" #include "stoolkit/SExcept.h" #include #include /* sscanf */ #include #if HAVE_STRTOL==0 #error This module needs strtol. #endif // We will process lines with this length #define LINE_LENGTH 1024 #define TOK_NAME "NAME=" #define TOK_COMM "COMM=" #define TOK_TYPE "TYPE=" #define TOK_ENCODE "ENCODE=" #define TOK_KEYW "KEY_WIDTH=" #define TOK_VALUEW "VALUE_WIDTH=" #define TOK_KEYL "KEY_LENGTH=" #define TOK_VALUEL "VALUE_LENGTH=" #define TOK_SECTION "SECTION=" #define TOK_MAX_SEGMENTS 5 // The maximum length of key and value. #define TOK_STATE_SIZE 32 /** * Prorcess a UNI file. Columns are separated by tabs or white spaces. * @param filename is the name of the iput file. * @param file is the input stream. It should be open, and it will not * be closed at the end. * @param keysize is 0 for 8bit and 1 for 16 bit keys * @param hilo is 1 if we need to or local codes with 0x8080 * -1 if we need to and local codes with 0x7f7f. * @param from is the column from which coding happen. * @parem to is the column where the coded value is * @param reverse is nonzero to show that a reverse map should be built * If reverse has been specified the role changes, so the same * from and to parameters result in a reverse (encoding) map. * @param comment will hold the comments if any. * @param name will be the name (if parsed) * @param type will be the type (if parsed) */ SBMapItemVector* processUNI (const char* filename, SInputStream& _fl, int nocomment, int keysize, int hilo, int from, int to, int reverse, char* comment, char*name, int* type) { int commentSize=0; int len; SBMapItemVector* retVle = new SBMapItemVector(); int i; int empty; int section=-1; char line [LINE_LENGTH+1]; char* chr; int lineNo =0; int keyw=keysize; int valuew=1; int keyl=0; int valuel=0; char sectName [LINE_LENGTH+1]; char newLine [LINE_LENGTH+24]; int sectCommSize; int posKey=0; int posVle=0; int parsedKey; int parsedVle; int lend; int status; strncpy (name, filename, 32); int count = 0; int pos; *type = 1; strcpy (sectName, name); sectCommSize =0; SStringVector ssl("\r\n,\n,\r"); SReader r(_fl, ssl); while (true) { SString ss; if (!r.read(&ss)) break; if (ss.size() <= 0) break; ssl.trim (&ss); char* cstring = ss.cString(); strncpy (line, cstring, LINE_LENGTH); lineNo++; line[LINE_LENGTH] = 0; len = strlen (line); empty = 1; pos = 0; posKey=-1; posVle=-1; for (i=0; i= MAX_COMMENT_SIZE) { continue; } if (commentSize==0) { strcpy (comment, &line[1]); } else { strcat (comment, "\n"); strcat (comment, &line[1]); } commentSize += len; } continue; } if (empty) continue; if (section == -1) { section =0; if (reverse) { retVle->maps[section] = new SBMapItem ( reverse, (const unsigned char*) sectName, (const unsigned char*) newLine, sectCommSize, valuew, keyw, valuel, keyl); } else { retVle->maps[section] = new SBMapItem ( reverse, (const unsigned char*) sectName, (const unsigned char*) newLine, sectCommSize, keyw, valuew, keyl, valuel); } retVle->count++; } count++; if (posKey==-1 || posVle==-1) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } if (line[posKey] == '0' && (line[posKey+1] == 'x' || line[posKey+1] == 'X')) { posKey++; posKey++; } if (line[posVle] == '0' && (line[posVle+1] == 'x' || line[posVle+1] == 'X')) { posVle++; posVle++; } parsedKey = strtol (&line[posKey], &chr, 16); if (hilo==1) { parsedKey |= ((keysize==0) ? 0x80 : 0x8080); } if (hilo==-1) { parsedKey &= 0x7f7f; } parsedVle = strtol (&line[posVle], &chr, 16); if ((keysize==0 && parsedKey > 255) || parsedKey > 0xffff || parsedKey < 0 || parsedVle > 0xffff || parsedVle < 0) { fprintf (stderr, "mytool: file %s at line %d has some errors - check -8 option!. key=%d, vle=%d\n", filename, lineNo, parsedKey, parsedVle); continue; } // Compose a new line - parsedKey parsedVle if (keysize==0) { if (reverse) { sprintf (newLine, "%04X -> %02X ", parsedVle, parsedKey); } else { sprintf (newLine, "%02X -> %04X ", parsedKey, parsedVle); } } else { if (reverse) { sprintf (newLine, "%04X -> %04X ", parsedVle, parsedKey); } else { sprintf (newLine, "%04X -> %04X ", parsedKey, parsedVle); } } if (!reverse && line[lend]=='#' && !nocomment) { strcat (newLine, &line[lend]); } //cerr << "ADD: " << newLine << "\n"; status = retVle->maps[section]->addLine ( (const unsigned char*) newLine, strlen (newLine), 0); if (status<0) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } } return retVle; } /** * Prorcess a MYS file. "local code -> unicode" * @param filename is the name of the iput file. * @param file is the input stream. It should be open, and it will not * be closed at the end. * @param reverse is nonzero to show that a reverse map should be built * If reverse has been specified the role changes, so the same * from and to parameters result in a reverse (encoding) map. * @param comment will hold the comments if any. * @param name will be the name (if parsed) * @param type will be the type (if parsed) */ SBMapItemVector* processMYS (const char* filename, SInputStream& _fl, int nocomment, int reverse, char* comment, char*name, int* type) { int commentSize=0; int len=0; SBMapItemVector* retVle = new SBMapItemVector(); int i=0; int empty; int section=-1; int keyw=0; int valuew=1; int keyl=0; int valuel=0; int count=0; char* chr=0; int lineNo=0; int status=0; int encode=0; char line [LINE_LENGTH+1]; char sectName [LINE_LENGTH+1]; char sectComm [LINE_LENGTH+1]; int sectCommSize=0; SStringVector ssl("\r\n,\n,\r"); SReader r(_fl, ssl); while (true) { SString ss; if (!r.read(&ss)) break; if (ss.size() <= 0) break; ssl.trim (&ss); char* cstring = ss.cString(); strncpy (line, cstring, LINE_LENGTH); lineNo++; line[LINE_LENGTH] = 0; len = strlen (line); empty = 1; for (i=0; i= MAX_COMMENT_SIZE) { continue; } if (commentSize==0) { strcpy (comment, &line[strlen(TOK_COMM)]); } else { strcat (comment, "\n"); strcat (comment, &line[strlen(TOK_COMM)]); } commentSize+=len-strlen(TOK_COMM) +1; continue; } if (section == -1 && strncmp (TOK_TYPE, line, strlen(TOK_TYPE)) == 0) { *type = strtol (&line[strlen(TOK_TYPE)], &chr, 16); continue; } // // Process the MapItems here. // if (strncmp (TOK_SECTION, line, strlen(TOK_SECTION)) == 0) { strcpy (sectName, &line[strlen(TOK_SECTION)]); keyw=0; valuew=1; keyl=0; valuel=0; encode = 0; section++; count=0; sectCommSize=0; continue; } if (section == -1) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } if (strncmp (TOK_COMM, line, strlen(TOK_COMM)) == 0) { if (nocomment || len + sectCommSize + 1 >= MAX_COMMENT_SIZE) { continue; } if (sectCommSize==0) { strcpy (sectComm, &line[strlen(TOK_COMM)]); } else { strcat (sectComm, "\n"); strcat (sectComm, &line[strlen(TOK_COMM)]); } sectCommSize+=len-strlen(TOK_COMM) +1; continue; } if (strncmp (TOK_KEYW, line, strlen(TOK_KEYW)) == 0) { keyw = strtol (&line[strlen(TOK_KEYW)], &chr, 16); if (count != 0 || keyw<0 || keyw>3) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } continue; } if (strncmp (TOK_VALUEW, line, strlen(TOK_VALUEW)) == 0) { valuew = strtol (&line[strlen(TOK_VALUEW)], &chr, 16); if (count != 0 || valuew<0 || valuew>3) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } continue; } if (strncmp (TOK_KEYL, line, strlen(TOK_KEYL)) == 0) { keyl = strtol (&line[strlen(TOK_KEYL)], &chr, 16); if (count != 0 || keyl<0 || keyl>3) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } continue; } if (strncmp (TOK_VALUEL, line, strlen(TOK_VALUEL)) == 0) { valuel = strtol (&line[strlen(TOK_VALUEL)], &chr, 16); if (count != 0 || valuel<0 || valuel>3) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } continue; } if (strncmp (TOK_ENCODE, line, strlen(TOK_ENCODE)) == 0) { encode = strtol (&line[strlen(TOK_ENCODE)], &chr, 16); if (count != 0 || encode<0 || encode>3) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } continue; } if (retVle->count >= MAX_NMAPS) { fprintf (stderr, "mytool: file %s has too many sections\n", filename); delete retVle; return 0; } // Finally if (count == 0) { if (reverse) encode = ! encode; if (reverse) { retVle->maps[section] = new SBMapItem ( encode, (const unsigned char*) sectName, (const unsigned char*) sectComm, sectCommSize, valuew, keyw, valuel, keyl); } else { retVle->maps[section] = new SBMapItem ( encode, (const unsigned char*) sectName, (const unsigned char*) sectComm, sectCommSize, keyw, valuew, keyl, valuel); } retVle->count++; } count++; status = retVle->maps[section]->addLine ( (const unsigned char*) line, strlen (line), reverse); if (status<0) { fprintf (stderr, "mytool: file %s at line %d has some errors.\n", filename, lineNo); continue; } } return retVle; } /** * Prorcess a KMAP file. "lcoal code = unicode" * This came from UInput.cpp making that code obselete. * @param filename is the name of the iput file. * @param file is the input stream. It should be open, and it will not * be closed at the end. * @param reverse is nonzero to show that a reverse map should be built * If reverse has been specified the role changes, so the same * from and to parameters result in a reverse (encoding) map. * @param comment will hold the comments if any. * @param name will be the name (if parsed) * @param type will be the type (if parsed) */ SBMapItemVector* processKMap (const char* filename, SInputStream& _fl, int nocomment, int reverse, char* comment, char*name, int* type) { char line [LINE_LENGTH+1]; char quoted [LINE_LENGTH+1]; int lineNo; int error; char *from, *to; int iscomment; int empty; int index; int i; int currentSegment; int segmentCount; char segments[TOK_MAX_SEGMENTS+1][LINE_LENGTH+1]; char segmentId[LINE_LENGTH+1]; int startingComment; int commentSize; int len; char* lineComment; int lineCommentSize; SBMapItemVector* retVle = 0; const char* segmentArray[TOK_MAX_SEGMENTS]; int getNewLine; lineNo = 0; error = 0; iscomment = 0; currentSegment = 0; segmentCount = 0; startingComment = 1; commentSize = 0; *type = 1; strncpy (name, filename, 32); SStringVector ssl("\r\n,\n,\r"); SReader r(_fl, ssl); while (true) { SString ss; if (!r.read(&ss)) break; if (ss.size() <= 0) break; ssl.trim (&ss); char* cstring = ss.cString(); strncpy (line, cstring, LINE_LENGTH); // stoolkit parser, only '//' comments are OK at the // beginning of the line line[LINE_LENGTH]=0; lineNo++; to = line; from= line; index = 0; getNewLine = 0; // Rewrite the buffer into the quoted array. // All // comments at the beginning are copied to comment. while (to[0] != 0) { if (iscomment) { if (to[0]=='*' && to[1] == '/') { to++; iscomment = 0; } to++; continue; } if (to[0]=='/' && to[1] == '*') { to++; to++; iscomment = 1; continue; } if (to[0]=='/' && to[1] == '/') { getNewLine = 1; len = strlen (to); if (startingComment) { if (nocomment || len + commentSize +1 > MAX_COMMENT_SIZE) { break; } if (commentSize==0) { strcpy (comment, &to[2]); } else { strcat (comment, "\n"); strcat (comment, &to[2]); } commentSize += len-2 +1; } break; } startingComment = 0; if (from == line && to[0] != '"') { to++; continue; } if (from == line && to[0] == '"') { to++; from = to; continue; } if (to[0] == '\\') { switch (to[1]) { case 't': quoted[index++] = '\t'; to++; break; case '\\': quoted[index++] = '\\'; to++; break; case '"': quoted[index++] = '"'; to++; break; case '0': case '1': case '2': case '3': if (to[2] < '0' || to[2] >'7' || to[3] < '0' || to[3] > '7') { quoted[index++] = '\\'; break; } quoted[index++] = ((to[1]-'0') << 6) + ((to[2]-'0') << 3) + to[3]-'0'; to++; to++; to++; break; } to++; continue; } if (to[0] == '"') { break; } quoted[index++] = to[0]; to++; } if (getNewLine==1) continue; if (index == 0) { if (from != line) { error=1; break; } continue; } quoted[index] = 0; // Ending comment lineComment = 0; lineCommentSize = 0; while (to[0]!=0) { if (to[0]=='/' && to[1] == '/') { lineComment = &to[2]; lineCommentSize = strlen (lineComment); break; } to++; } // Ugly but it works. if (TOK_MAX_SEGMENTS != 5) { error=1 ; break; } if (retVle == 0) { if (strstr (quoted, "=") == 0) { segmentCount = sscanf (quoted, "%[^+]+%[^+]+%[^+]+%[^+]+%[^+]+%[^+]", segments[0], segments[1], segments[2], segments[3], segments[4], segments[5]); if (segmentCount==0 && segmentCount > 5) { error=1; break; } segmentArray[0] = segments[0]; segmentArray[1] = segments[1]; segmentArray[2] = segments[2]; segmentArray[3] = segments[3]; segmentArray[4] = segments[4]; currentSegment = -1; retVle = new SBMapItemVector( (int) segmentCount, (const char**) &segmentArray[0], reverse); CHECK_NEW (retVle); continue; } else { currentSegment = 0; segmentCount = 0; segmentArray[0] = "Section1"; retVle = new SBMapItemVector( (int)1, (const char**) &segmentArray[0], reverse); CHECK_NEW (retVle); } } if (currentSegment==-1) { for (i=0; iaddKLine (currentSegment, quoted, (const unsigned char*) lineComment, lineCommentSize, reverse)<0) { error=1; break; } } if (error) { fprintf (stderr, "mytool: error- bad syntax in file '%s' at line %d\n", (filename==0?"unkown":filename), lineNo); delete retVle; return 0; } empty = 0; for (i=0; imaps[i]->codeSize==0) { if (segmentCount==0) { fprintf (stderr, "mytool: error- bad syntax in file '%s' at eof\n", (filename==0?"unkown":filename)); } else if (currentSegment!=-1) { fprintf (stderr, "mytool: bad syntax (missing end?) in file '%s' at eof\n", (filename==0?"unkown":filename)); } else { fprintf (stderr, "mytool: error- bad syntax in file '%s' at multipart '%s'\n", (filename==0?"unkown":filename), segments[i]); } delete retVle; return 0; } } return retVle; } SBMapItemVector::SBMapItemVector() { int i; for (i=0; i= TOK_STATE_SIZE) { fprintf (stderr, "error: kmap size exceeded %d .\n", TOK_STATE_SIZE); return 0; } // // adding number // if (to[0] >= '0' && to[0] <= '9') { base = 10; if (to[0] == '0') { to++; if (to[0] == 'x' || to[0] =='X') { base = 16; to++; } else { base = 8; } } value = (int) strtol ((const char*) to, &toOut, base); to = toOut; if (kcIndex==0) { key[(int)kcSize[0]] = (unsigned char) value; } else { code[kcSize[1]*2] = (((SS_WORD32)value>>8)&0xff); code[kcSize[1]*2+1] = value&0xff; } kcSize[kcIndex]++; continue; } // straight while (to[0] != 0) { if (to[0]==' ') { to++; break; } if (to[0]=='=') break; if (kcSize[kcIndex] >= TOK_STATE_SIZE) { fprintf (stderr, "error: kmap size exceeded %d .\n", TOK_STATE_SIZE); return 0; } value = to[0]; if (kcIndex==0) { key[(int)kcSize[0]] = (unsigned char) value; } else { code[kcSize[1]*2] = (((SS_WORD32)value>>8)&0xff); code[kcSize[1]*2+1] = value&0xff; } to++; kcSize[kcIndex]++; } } if (kcSize[1]==0) { fprintf (stderr, "error: kmap map is empty. \n"); return -1; } key[(int)kcSize[0]] = 0; code[kcSize[1]*2] = 0; // Now you can see the limitation of kmaps. No matchsize! if (_reverse) { // No comment. return maps[_index]->add (code, 2 * kcSize[1],2 * kcSize[1], key, kcSize[0], _comment, 0); } return maps[_index]->add (key, kcSize[0], kcSize[0], code, 2 * kcSize[1], _comment, _commentSize); } ./mytool/mytool.html0000644000175000017500000001621107532460064014600 0ustar henrichhenrich
        
               mytool  -  manipulate  map  files  for  yudit, uniconv and
               uniprint
        
        
        

        SYNOPSIS

               mytool [ -info ] [ -test ] [ -showkeys ]  [  -decode  ]  [
               -encode  ]  [ -strip ] [ -benchmark ] [ -name new-name ] [
               -comment new-comment ] [ -type new-type ] [ -write output-
               file  ]  [  -my  input-file  ] [ -mys input-file ] [ -rmys
               input-file ] [ -kmap input-file ] [ -rkmap input-file ]  [
               -uni:l,u  input-file [ -8 ] [ -high ] [ -low ] [ -runi:l,u
               input-file [ -8 ] [ -high ] [ -low ]  ]  [  -convert  out-
               file-format ]
        
        
        
        

        DESCRIPTION

               mytool  is a my map file manipulation program in the yudit
               distribution.  It can generates so-called binary nbit ( my
               )  map  file  that can map any sequences of bytes into any
               sequences of  bytes.  These  sequences  of  bytes  can  be
               grouped  into  1,2,4  and  8  bytes long words.  The input
               sequence length may be different from the matched sequence
               length.  'i  /  'n -> 'b specifies that the word 'in' pro
               duces 'b' but only the  'i  is  consumed  from  the  input
               buffer.
        
               It  can  also  generate a so-called binary umap file, that
               maps 8 or 16 bit single words into 16 bit single words and
               it contains the reverse map too.
        
               It  can  also  disassemble the input map and produce a mys
               source file.
        
               The input can be a binary umap file, a my file, mys file a
               uni  and a kmap file for yudit. It is recommended that all
               kmap files use the new mys format because  it  gives  more
               freedom to define the mapping.
        
               The    yudit    distribution   has   a   simple   document
               yudit/doc/my.doc on the binary map formats, and  a  source
               file example file yudit/mytool/my/example.mys please refer
               to this for more details.
        
        
        
        

        OPTIONS

               -info  prints out a small information on the current  map.
        
               -test  lets you test the map interactively.
        
               -showkeys
                      show alls the keys in the map file.
        
               -encode
                      disk  with the -write option The resulting my files
                      can contain state machines to speed-up  conversion.
                      A  state machine based my file can manifest 10%-70%
                      performance improvement, so it may be desirable for
                      encoding  fontmaps.   For fontmaps the bumap format
                      might be better suited where only one character and
                      not a sequence of characters need to be mapped.
        
               -decode
                      builds  a state machine in the decoding part of the
                      map file.
        
               -strip strips off the state machines from the  map  files.
                      The  -write  option can be used to save the new map
                      file.
        
               -benchmark
                      option performs a simple benchmark test on the  map
                      file,  to  compare  speed  of simple, state machine
                      based and binary map based map files.
        
               -nocomment
                      option strips all comments  from  an  input  source
                      file  of  format  mys  kmap uni.  It does not strip
                      comments from a binary file.
        
               -name new-name
                      assigns a name to the map file.
        
               -comment new-comment
                      assigns a comment to the map file.
        
        
               -type new-type
                      assigns a map file a distinctive type, that can  be
                      kmap or fontmap but it is only informative. Keymaps
                      can be used as fontmaps and vice versa.
        
               -write output-file
                      writes the data into an output file.  mytool  never
                      modifies   the  original  file.  All  modifications
                      should be explicitly saved with  the  this  option.
                      Never specify the same file for input and output.
        
               -my input-file
                      load a binary map file. Only one of this option can
                      be specified.
        
               -mys input-source-file
                      load a source file.
        
               -rmys input-source-file
        
        
               -kmap input-source-file
                      load a source file in kmap format.
        
               -rkmap input-source-file
                      load  a  source file and reverse it - make encoding
                      from  decoding and vice versa.
        
        
               -uni:l,u input-source-file
                      load a source file in  Unicode  Consortium  format.
                      This  format  has  the  local code in column l, and
                      unicode in column u. The numbering of columns start
                      from 0.
        
               -runi:l,u input-source-file
                      load a source file in Unicode Consortium format and
                      reverses it. Make encoding from decoding  and  vice
                      versa.
        
        
               -8     option  can be used with the -uni or -runi options.
                      It specifies that the input is 8  bit  and  not  16
                      bit.
        
               -high  option  can be used with the -uni or -runi options.
                      It specifies that the  key  should  be  or'ed  with
                      0x8080.
        
               -low   option  can be used with the -uni or -runi options.
                      It specifies that the key  should  be  and'ed  with
                      0x7f7f.
        
        
               -convert output-file-format
                      converts  the  map  file  to a format. It is useful
                      only when combined with -write otion.  The possible
                      formats  are  my  -binary,  mys -source, myc -my-c-
                      source,  umap  -umap-c-source,  bumap  -binary-umap
                      formats.   For maps where only a single 8 or 16 bit
                      local code  should be converted into 16 bit unicode
                      and  vice  versa,  the umap file formats are recom
                      mended.  The c-source files are  provided  so  that
                      you can inlucde a full map into the c program.
        
        
        

        DIAGNOSTICS

                 mytool prints out an error message and exits with a non-
               zero status on error.  If there is no error the exit  sta
               tus is zero.
        
        
        

        SEE ALSO

               This  program   was  written  by  gsinai@iname.com (Gaspar
               Sinai).
        
               Tokyo, 03 January, 2000.
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        

        Man(1) output converted with man2html
        ./mytool/uni/0000755000175000017500000000000011334661073013157 5ustar henrichhenrich./mytool/uni/iso-8859-3.my0000644000175000017500000000410407532460064015074 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-3Ncreated by mytool 2002-03-30  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~&$0^4{'%1_5|  l\  !m]  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/Makefile0000644000175000017500000001445611333714306014626 0ustar henrichhenrichinclude ../../Makefile.conf TARGETS=iso-8859-1.my \ iso-8859-2.my \ iso-8859-3.my \ iso-8859-4.my \ iso-8859-5.my \ iso-8859-6.my \ iso-8859-7.my \ iso-8859-8.my \ iso-8859-9.my \ iso-8859-13.my \ iso-8859-15.my \ iso-8859-16.my \ viscii.my \ tcvn.my \ wingreek.my \ cp-1252.my \ cp-1251.my \ cp-1250.my # # shift-jis.my is not used in converters - it is only here for fonts. # EASTASIAN= jis-0201.my \ jis-0208.my \ shift-jis.my \ jis-0212.my \ big-5.my \ gb-2312-l.my \ gb-2312-r.my \ ksc-5601-r.my \ ksc-5601-l.my \ ksx-1001.my\ # # We have the source code in this distribution for these maps # MTARGETS=koi8-r.my koi8-c.my koi8-u.my tcvn.my viscii.my windows-1255.my \ wingreek.my iso-646.my iso-8859e.my indic.my mik.my \ rovas.my mirroring.my cp-1252.my EASTASIAMAP=../../bin/MAPPINGS # # Make a bumap file... # If you want my write '-convert my' here. # #MYTOPT=-type fontmap -nocomment -comment "" -convert bumap MYTOPT=-type fontmap -nocomment -convert bumap ALL_TARGETS=$(MTARGETS) $(TARGETS) ALL_NAMES=$(basename $(ALL_TARGETS)) #MYTOPT= #MAPDIR=../../../MAPPINGS #MAPDIR=/software/unicode/codetables MAPDIR=. #MAPDIR=../../.. #------------------------------------------------------------------------------- .SUFFIXES: .umap .TXT all: $(MTARGETS) MYTOOL my: $(TARGETS) eastasian: $(EASTASIAN) TL=".----------------------------------------------------------------" MYTOOL: @echo $(TL) @echo "Most my-maps are in the distribution. If you have the MAPS from " @echo "The unicode Consortium in ../../MAPPINS, you can re-make your " @echo "own by typing 'make eastasian' or 'make my'" @echo $(TL) # # BINARY UMAPS in 'my' format # koi8-r.my: koi8-r.txt $(MYTOOL) $(MYTOPT) -name koi8-r -uni:0,1 $< -runi:0,1 $< -8 -write $@ koi8-c.my: koi8-c.txt $(MYTOOL) $(MYTOPT) -name koi8-c -uni:0,1 $< -runi:0,1 $< -8 -write $@ koi8-u.my: koi8-u.txt $(MYTOOL) $(MYTOPT) -name koi8-u -uni:0,1 $< -runi:0,1 $< -8 -write $@ viscii.my: viscii.txt $(MYTOOL) $(MYTOPT) -name viscii -uni:0,1 $< -runi:0,1 $< -8 -write $@ # # 8 bit long # rovas.my: ROVASIRAS.TXT $(MYTOOL) $(MYTOPT) -name rovas -uni:0,1 $< -runi:0,1 $< -8 -write $@ mirroring.my: mirroring.txt $(MYTOOL) $(MYTOPT) -name mirroring -uni:0,1 $< -runi:0,1 $< -write $@ tcvn.my: tcvn.txt $(MYTOOL) $(MYTOPT) -name tcvn -uni:0,1 $< -runi:0,1 $< -8 -write $@ wingreek.my: wingreek.txt $(MYTOOL) $(MYTOPT) -name wingreek -uni:0,1 $< -runi:0,1 $< -8 -write $@ windows-1255.my: windows-1255.txt $(MYTOOL) $(MYTOPT) -name windows-1255 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-646.my: ISO002.TXT $(MYTOOL) $(MYTOPT) -name iso-646 -uni:0,1 $< -runi:0,1 $< -8 -write $@ mik.my: MIK.TXT $(MYTOOL) $(MYTOPT) -name mik -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859e.my: 8859-9e.TXT $(MYTOOL) $(MYTOPT) -name iso-8859e -uni:0,1 $< -runi:0,1 $< -8 -write $@ indic.my: indic.txt $(MYTOOL) $(MYTOPT) -name indic -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-1.my: $(MAPDIR)/8859-1.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-1 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-2.my: $(MAPDIR)/8859-2.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-2 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-3.my: $(MAPDIR)/8859-3.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-3 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-4.my: $(MAPDIR)/8859-4.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-4 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-5.my: $(MAPDIR)/8859-5.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-5 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-6.my: $(MAPDIR)/8859-6.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-6 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-7.my: $(MAPDIR)/8859-7.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-7 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-8.my: $(MAPDIR)/8859-8.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-8 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-9.my: $(MAPDIR)/8859-9.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-9 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-13.my: $(MAPDIR)/8859-13.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-13 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-15.my: $(MAPDIR)/8859-15.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-15 -uni:0,1 $< -runi:0,1 $< -8 -write $@ iso-8859-16.my: $(MAPDIR)/8859-16.TXT $(MYTOOL) $(MYTOPT) -name iso-8859-16 -uni:0,1 $< -runi:0,1 $< -8 -write $@ cp-1252.my: cp-1252.txt $(MYTOOL) $(MYTOPT) -name cp-1252 -uni:0,1 $< -runi:0,1 $< -8 -write $@ cp-1251.my: $(MAPDIR)/CP1251.TXT $(MYTOOL) $(MYTOPT) -name cp-1251 -uni:0,1 $< -runi:0,1 $< -8 -write $@ cp-1250.my: $(MAPDIR)/CP1250.TXT $(MYTOOL) $(MYTOPT) -name cp-1250 -uni:0,1 $< -runi:0,1 $< -8 -write $@ jis-0201.my: $(EASTASIAMAP)/JIS0201.TXT $(MYTOOL) $(MYTOPT) -name jis-0201 -uni:0,1 $< -runi:0,1 $< -write $@ jis-0208.my: $(EASTASIAMAP)/JIS0208.TXT $(MYTOOL) $(MYTOPT) -name jis-0208 -uni:1,2 $< -runi:1,2 $< -write $@ shift-jis.my: $(EASTASIAMAP)/JIS0208.TXT $(MYTOOL) $(MYTOPT) -name shift-jis -uni:0,2 $< -runi:0,2 $< -write $@ jis-0212.my: $(EASTASIAMAP)/JIS0212.TXT $(MYTOOL) $(MYTOPT) -name jis-0212 -uni:0,1 $< -runi:0,1 $< -write $@ ksc-5601-r.my: $(EASTASIAMAP)/KSC5601.TXT $(MYTOOL) $(MYTOPT) -name ksc-5601-r -uni:0,1 $< -runi:0,1 $< -write $@ ksc-5601-l.my: $(EASTASIAMAP)/KSC5601.TXT $(MYTOOL) $(MYTOPT) -name ksc-5601-l -low -uni:0,1 $< -runi:0,1 $< -write $@ ksx-1001.my: $(EASTASIAMAP)/KSX1001.TXT $(MYTOOL) $(MYTOPT) -name ksx-1001 -uni:0,1 $< -runi:0,1 $< -write $@ big-5.my: BIG5.TXT $(MYTOOL) $(MYTOPT) -name big-5 -uni:0,1 $< -runi:0,1 $< -write $@ gb-2312-l.my: $(EASTASIAMAP)/GB2312.TXT $(MYTOOL) $(MYTOPT) -name gb-2312-l -uni:0,1 $< -runi:0,1 $< -write $@ gb-2312-r.my: $(EASTASIAMAP)/GB2312.TXT $(MYTOOL) $(MYTOPT) -name gb-2312-r -high -uni:0,1 $< -runi:0,1 $< -write $@ install: @if test ! -d $(prefix) ; then mkdir -p $(DESTDIR)/$(prefix); fi @if test ! -d $(datadir) ; then mkdir -p $(DESTDIR)/$(datadir);fi @if test ! -d $(datadir)/yudit ; then mkdir -p $(DESTDIR)/$(datadir)/yudit;fi @if test ! -d $(datadir)/yudit/data ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/data;fi @echo installing my files... @$(INSTALL_DATA) *.my $(DESTDIR)/$(datadir)/yudit/data depend: badcheck: @for map in $(ALL_NAMES); do \ echo -n Checking $$i ..; \ diff $$map.my ../../data/$$i.bumap; \ echo ..Done; \ done clean: rm -f $(MTARGETS) core veryclean: rm -f $(MTARGETS) *.my core ./mytool/uni/iso-8859-16.my0000644000175000017500000004203207532460064015162 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-16Ncreated by mytool 2002-03-30   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~A `ayz{ B} ~ RSx|CPZpDQ[q  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/gb-2312-r.my0000644000175000017500000044010207532460064014745 0ustar henrichhenrichYUDIT-UMAP 1.0gb-2312-rNcreated by mytool 2001-01-22000000 ^  &    0000 0 0 0 0 000000"6"'"("""*")""7"""%" #""+"."a"L"H"=""`"n"o"d"e""5"4&B&@ 2 3! 0!&&%%%%%%%%% ;!!!!0$$$$$$$$$$$$$$$$$$$$$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$`$a$b$c$d$e$f$g$h$i2 2!2"2#2$2%2&2'2(2)!`!a!b!c!d!e!f!g!h!i!j!k  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO+Mk11111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)%%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%KUJ?Wc(TU TvvL^UaހS*T ^l9ZT)lR~W_ql~|YKN_a$|N0\g\ up"QYIQO[T&Y+ew[ubvb^El{&OOg mnmy_u+bOe/Q^PtRoKY PNؖr6y[̋DYTVvVe9ivn^rugFgzvayebcQR8~\n/g`{v؁|dPz?TJTkLdb=uRri[h<N*T~h9߀f^W€?h]e;R`mOQl[_]l^b!QqRlrWg-YT{O0l[dYџSʚ7eE~VR.tRP[cNVb`*hQs[Q{P`pL/QI^tpW-xE_Rhnu;RSi_`mWOk"shScb`U$ubqm[^{RaLxW|'vQ`qLfC^L`Mppc%_`bVk`agSI`ff?yOplG~؃dfZZBmQmAm;Opkb`ї 'yxQW>Wg:uxz=y{eo!Y~ T gh؏|MS`%ulrSsZ~c$Q ]bQ[cOymRB`mN[[‹e_̖EY~~V gY9Os[RZ>u2PGzlZbcn]Qwݎ/OS`pRgcPCZP&w7Sw~de+bcPr5Q~WG̔QT\OzmZᚏUTSaT_ciwQahR X*RWNx w ^aw|b[bNpbp`Wwghx՘yXTSn4QKR;[UCW`sWQT-zz`P[TcbSbc[gTzw^Y8WcWW{wO_[k>S!{PrhFww6eQNv\zuYNAPa'nWdfcFVbbi^ӖWbU!JUfgeVZjhb{Qpo0capntir^ʐgmjc^RrbOlYjpmRNPm~x}/Q!Wd€|{lhi^QShr{ryotgN̜ySR)POOuz|lRtTOTޕp^`m^e[8`Kp~|Qh|oN$f~NdJPuq[叽ofNdc^eRpRst3gxN4mQۍATbsO6Qpuu\SNnt ixkuYRv$mAgQmKT{eoXvxvuTR$SNS^e*bTR(plTxWTjMOilUvx0bpo_mhx|{g OcgxWox9bybRt5kUd>uvS9uP\Al{POrGotyhdwb+TXNRWj ^sQt\OWalZFx4D|RVbQNƃa鄲Wg4Wfnmf1fpgk:hbYNQoglQvhYGkguf]PeyHyAw\N^OT/YQx Vhl_l}l㋫c`pm=rubfSC{~Nߌ&N~ԔRMo\cmE4X]Lk kIgT[TX7_:bjG9er`hewNTOd\OzRN`/zONyt4R䂹dy[lR{l"P>Sndftl0`Řw^tx7u3T{O8mZ ~y^l[ZvuaNnXuu%rrSG~wvRiW#^Y1ren\8qSAwbeN߆[SwO\NvY_y:XNgNb튓Rf/UVlNOʙpl^`C[Ƌe6bK[[cU.Sv&Q},ghkbSԂmuNfN[pqffr͟ \^g/hg_b zX^epo1`UR7 dTpu)^hbSr=l4wazT.wzxUgpedV6`ySNk{[UVO:OcTdžm~g*TsuOUOOMn-\ apSkvn)e~T;z3} UtcmzbeSgcl]T\NLla\KehT>T4kkfNcBSHO OW^b fdriRR`fqgxRwfpV;T8!rzz`o^ `Y`qpnlPrj^-N`ZUm|b~w~S#f\OrN SYTc(QHNٜ~T$T7m_&Zf>iss.Sz[wP~vSv{DnXNaye`TNy]jaPTa'x]RJTVm[mfS\[]h!Ux{eHiTNkGNSOcd:eQhSxall"\Q k#e__OEfes)`QtRW_bL^xgO`'YQDQSlyqOOg=Uŕy~Xb ZV{_đWSe^u\`d}nZ~~iU[`es vcw)~ڗt[fzt@Rq_e[o]kl[ Sb&-T@N+rY]YmTNq T pmvN%x\^plYDcwpYtvdG\'ez#YToi0VN6r7QN_ucNSfKYmNXS;c֔OO cY7WyNul[Y_]iP]NYwNzbf\yN_yƐ8uNak_NIvn㋮ _~΃5kVk4YTm[řn\9_Spj1Ztp^($%gG΍bv_qxlf TbOcu^͎ Tlml8`Ru(^}O`_\$u1rln8Ig SSOQɋS^|mNvi^aOYOސ>|a nnNZ1N\y[sW߂TGU\_ak2r񀲊mt[ӈ՘km3n QQCWScVTXWs?n܂a?`(bf~Ô\|g`NShQAЅt]fU[USx8gBh=Tp~[}QW(Tef^Clm|QgeoVj vpvq#bRl<`Xaf`bNUn#g-gw(hiTNMpdXe[zP:[wky|lve]-\U8hS`bzn[~jz_po3_ cmgVN^&N׀v4bf-b~luqgiQFSnbTmYsewux'Oguʗc/G5c#wA_rN`etbkce?^'uǐыge/T1w倢lANK~ǀLvi kbgP\SfScRRRR-R3R?R@RLR^RaR\R}RRRRQTNNNNNNNNONO"OdNO%O'O O+O^Oge8OZO]O_OWO2O=OvOtOOOOO~O{OO|OOOOOOOOOOOOP)PLOP,PP.P-OPP P%P(P~PCPUPHPNPlP{PPPPPQPPPPQQ Nl=OXOeOΟlF|tQn]əQYRS SQYQUNQVNnNy[4QQQQQQQQ‹Ëˋϋ΋ҋӋԋ֋؋ً܋ߋ  !%'*+./2356SiSz"!1*=]4]=]l][]o]]]k]K]J]i]t]]]s]]_s_w___________b_arrrrrrrrrrrrrrrrsrsrrsss!s ssss"s9s%s,s8s1sPsMsWs`slsos~Y%Y$Ycghijkltw}^^^^^^^^^^S^^^^^ꁺ____`_`___``___``5`&``` `)`+` `?`!`x`y`{`z`B`j`}````````````````a a&aa#`aaa+aJauaaaaaa_ݖ N,r?bl5lTl\lJllllllhliltlvlllllllllllllllllllm9m'm mCmHmmmmm+mMm.m5mmOmRmTm3mmommm^mmm\m`m|mcnmmmnmmnmmmnmn mn+nnnNnknn_nnSnTn2n%nDnnnno-nnnnnnnnnnnnoboFoGo$ono/o6oKoto*o o)ooooxoro|ozooooooooooopp#pp9p5pOp^[[[[[[u/d4[[0[GӏՏ & !56-/DQRPhXb[ft}_P_W_V_X\;T\P\Y[q\c\f_*_)_-t_<;\nYYYYYYYYYYYYYYYYZZYZYYYZ Z Z2Z4ZZ#ZZ@ZgZJZUZsssssssssssssss٘|t ssssstt*t[t&t%t(t0t.t,tttAt\tWtUtYtwtmt~tttttttttttttgLgSg^gHgigggjgsgggugggggwg|gh gh ggh ggggghggghggh2h3h`hahNhbhDhdhhhUhfhAhgh@h>hJhIh)hhhthwhhkhinhii hi$hi iiWhiiqi9i`iBi]iikiiixi4iiiiiificiyiiiiiiiiiiiiiij/ijjjeijDj>jjPj[j5jjyj=j(jXj|jjjjjs7sRkkkkkkkkkkkkmqrsuvxwyz|~b bbbb"b!b%b$b,tttuuue4eeef fgrfffpfff4f1f6f5f_fTfAfOfVfafWfwfffffffff236;=@EFHIGMUYljʉˉ̉ΉωЉrnrr]rfror~rrrrrrcc2cd?d؀kkkkkllll lllll!l)l$l*l2e5eUekrMrRrVr0bRg ۀ€Āـ̀g݀ gZ6,2HLStYZq`i|}mgXMZnՁg&ʁk$k7k9kCkFkYјҘӘ՘٘k_@k‰eQeeeeeeeeepppppppppppqqqq/q1qsq\qhqEqrqJqxqzqqqqqqqqqrr(plqqfqb>b=bCbHbIy;y@yFyIy[y\ySyZybyWy`yoygyzyyyyy__`<`]`Z`g`A`Y`c`aa a]aaaabllmwwxx xxxex-xxx9x:x;xx?B5DEFILNORSTVWXY[^_]abdefghijkloqrs:wwyyyyz]Gzzzzz9z7zQϙzpvvvvvttu, "()*+,216879:>ABDFGHIKLNQUWZ[\^cfghijklqmsuuuuuuuuuuuuuuuuuuuuuuuvuuuvvvv vv v%vvvvvv3vMv^vTv\vVvkvozzxzyzzzzzzzzzzdir}ƈɈΈ! 4+6Af{uvvw܀ "%&')(1 5CFMRiqxMTlnz|{ĆΆɆφЇކ߆؆ч #;%.>H41)7?"}~{`pLnSc|dYe҇Ƈ凬ˇӇчʇۇ !9<6BDEzz{{{{{ {+{{G{8{*{{.{1{ {%{${3{>{{X{Z{E{u{L{]{`{n{{{b{r{q{{{{{{{{{{{{{{{{{{{{{| {{||| ||*|&|8|A|@D!"#-/(+8;34>DIKOZ_h~؈߉^||eI||||||||||||||||nf|}w}}~G~sgmGIJPNOdbapio}~rtyU~Yič֍׍ڍލ΍ύۍƍ ,.#/:@95=1IABQRJpv|otxe։މډ܉>&S*-0> Ζwȓ>jʓ>kz#ĜŜƜǜʜ˜̜͜ΜϜМӜԜ՜ל؜ٜܜݜߜ|Xښ˚̚ћECGIHMQ .UTߚ#~;֞۞ܞݞߞ",/97=>D졧¦æĦŦƦǦȦɦʦ˦̦ͦΦϦЦҦӦԦզ֦צѧҧӧԧէ֧ا٧ڧۧܧݧާߧءġšɡȡߡá١ܡڡ٢ڢۢܢݢޢߢŢƢǢȢɢʢˢ̢͢΢ϢТѢҢӢԢբ֢עآ¢â©éĩũƩǩȩɩʩ˩̩ͩΩϩЩѩҩөԩթ֩שة٩ک۩ܩݩީߩ¤äĤŤƤǤȤɤʤˤ̤ͤΤϤФѤҤӤԤդ֤פؤ٤ڤۤܤݤޤߤ¥åĥťƥǥȥɥʥ˥̥ͥΥϥХѥҥӥԥե֥ץإ٥ڥۥܥݥޥߥŨƨǨȨɨʨ˨̨ͨΨϨШѨҨӨԨը֨רب٨ڨۨܨݨިߨһآؤרاҵԶ˿ةɥحѾؼ赤Ϊدرô֮էƹؿҲϰǬ¶ءڿƻ微بЩؽĶͤʲƽͳԴ̸Ǫ鼿Żɡΰα٣٤λס٢١Ӷ٦٥٬ٮ٫ʹ٩ֶ٨٪٧ٰȿ٭ٯٶٴٸ׷ٵٷٹٶٱٲٳ޸ٽٺıٿȺžٻپծֵټƫͣż͵dzϴɵɮƧأԪֳȹȫ˹˱ߵȽðڢдũڣԩڤұ׼ڡƾ͹ʺ䵶ۻ̻մɾٹˢȯɲ̿ܶǰнʣȰ칦۽Ŭ۾ۿѫļذϻƥҽʮǧئܰЭ׿߲ռ¬±شîӡΣȴжѹԭȥֲ漰˫ȡܱŵڹž߶ߵֻٰȶ̨߳ʷҶ˾̾߷ߴԸߺϼͬ߸߹ɶַ˱֨ⳳǺѽ߻߼߽߾Ż߿ԱǺζզӽǹҧްƷ۹찥ӴŶΨ৳ơɶžХι஺ϲɤм˻ҭجض԰ΧͼԲȦʥعݵ۳ַ̮̳ް׹̹ƺ¢ҹԫܤܣܥܡܢǵܧܦܩܨܪܫܯܬܭĹǽܮīʿ׳ҼϦҹ̫ز뺻ʧͷĿжۼηȽŮūױʼķʼίҦ¦欽ȢӤýϱɩ˵޿ִТ߼ѧثլذڹ涨˱ʵ嶻ܹܿԢįկѰξСؼٳҢʬᾡβƨʺмչɽ᫸ᰵẰϿdzոǶΡѲ޹Ȱв˧ʦϣ㲯ĵ֡ϯᡳñᢷĻᦴƽۻׯ®ӦҵӷӶͥӹ͢إŪ߮ʽ߱һǿ鵱¼ͮʱӰߺ໲ͽѭ΢߯־æ޻̬ŭ²˼Թˡ޶㡶ϢǡϤ㩺㭱㬵ϧΩҳ㫲ѵ߶㸳㶷ԸĽۿο㿺иųܲϷҽ޻ս¾巿в˰ǴǤִɨŤ糶ҳмץͶҿ̧ĨѺĴذ־׾а£ӵšȭ˩ٿƴקʰָֹֿ̢ЮӵŲͦͱ׽۰ƺ񻻵ڵҴ̽ڴ°ҾԮ§ɦЯҡ̯ˤժĦġߡƲ˺ߤײ˲׫ߢߣߥߦߧߨߪߩ֧߫߬߭Ч뷰ֳɢ븾ի쳰бն˹ʩյּѮ꺺ʱӳɹվϾůĺԻҷ˷ľδĩӶɱȨɼӲĴɰö֦ǹռܼڱijȾդջж˨У˸Φͩɣ嵵׮Ͱ÷еɭֲ׵ҬШ¥黰եȶģӣٳ̴ϭǷλŷЪǸֹ˲ѳֳŹĸÿعȱϱëձ뤺̺صå밷ˮ֭͡ϫѴ깯̭ɳûŽٲĭӹմйȪ﷨Ţݲע̩ӾкϴǢdzDz䫼Ũ㿣ԡͿӿɬҺõĵԨμտʪԴϪ̲Ư©ĮΫDZº̶ƻֲ¯Ȳž̿ھը˸ǻ̽ϩɺⱺȻɷúɿϨѬȼצ뼰үֵسˬƬţIJĵǣϬȮ״ݽʨ⨲ͲèԳ̡õ⻷ɺ巩觺ɪưȿƿ߰˦ɼеηű̽ƣ۾Ҽ䲡֢ӸȬ̺ʹƦ̵̱ȳѢװԻƤӯյμǵʢĿäֱʡüգѣ˯޲غϹޫƳ˲ͫհìʸ֪̰ʯɰש˶Ӳȷµ̼ڴݿĥʾףƱ»خݺ˽ͺϡ˰ڻѨͻխҤѴվͯЦӷʵͲɸǩ׭ƪ¨ճӾվ㿷ŴϵԼγɴڷֽƷŦϸ֯称ᆳ窰޽笻Ѥͳ篾м簼糴ά緱׺罼翼綶ĻƱԵƸǷɲӧٽȱ躱ǼȺԴҫˣŰҮְƸ߼ФǸ뿳֫緾ǰвθ̥ʤհطܸ֬ŧƢҸǻȰĤϥ족ӷҨ˴沰ͧɫܴܹܷܻܳܵܺܶâܼ֥ܽҽ«ܸܾҰоܿѿέɲԷ̦ɻӢƻïéݢãٻӫݡݣݥݤݦݧҩݩݶݱݴݰɯݮݷݯݸݬݹݳݭĪݨݪݫݲݵӨݺݻçݼݿ˲ݾݽƼήөӪظޤޣεǾޢެަޡޥީިާޭ޳ުޮ޶ޱ޲Ѧ޵ޯްн޴޹޸޷޻޺ź޼޽޿Ģ޾պ򮻢²ŰʭϺʴȹƵӼ֩ӬЫзѪ²˥Ԭ̻ϮװԣȹϿŽҪղƩڥƶϼڦڧڨѵѶکڪګϷþ֤ڬڭʶթڮߴڰگڱڲڳڴʫڵڶڷڸڹѯںڻڼڽھջڿ˵ŵ·̿˭ŵ׻̸ıȵгνβлҥǫ׽á̷Ǵ߹ԥò긺Ͱ˻ʷ̰ƶṺܴᷡóѺ޼ֻ¸޸ʹ׸׬ӮӳԸԽȤſֺԾϵȸ·Ѷӻ̤׾念̣ŲתԹꣷԯϽշDZɴǨѸӭ˽·ԶΥǵԱż׷ѡѷ͸ϵ;Ѷͨųҷմ߱ٵDzңаʺۢۡۥۣۧۤۨۦ֣۩ۭۮ۪۬۫Dzۯ۰۱۲۴۳۵۷۶۸۹ۺ̪ͪøȩҰ붤ǥҶ۳ƱԿվٹťǮǯܲǦíͭաϳ綠ҿﭳﲷпﻴêസ׶ĶͶþָ޾ʴȼբֹղ½¤ªİԺ¡϶ȸżӺ³ѩù˪ϼ¶ѥЬΤ躾ҳ˳˶Ԥ­ľƵӱնȧƮʳα¶ڹȲظܰԦѱ¿ʻפ溧ƭɧتκħ³𯼦ŸѻѼԧȵϺӥ¹´ǭĬؾػܱȣ磥£ãģţƣǣȣɣʣˣ̣ͣΣϣУѣңӣԣգ֣ףأ٣ڣۣܣݣޣߣ./mytool/uni/jis-0208.my0000644000175000017500000043701607532460064014717 0ustar henrichhenrichYUDIT-UMAP 1.0jis-0208Ncreated by mytool 2000-05-15!t!~000 000@>?00000N0000  \0 \ & %     00;=[]00 0 0 0 0 0000 ""`"f"g""4&B&@ 2 3! &&%%%%%%%%%%% ;0!!!!0"" """""*")"'"(!!""" "#"""a"R"j"k""=""5"+",!+ 0&o&m&j !%!"#$%&'()*+,-./0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZ0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO%%% %%%%%,%$%4%<%%%%%%%#%3%+%;%K% %/%(%7%?%%0%%%8%BNUZ?Tac(Y"uzP`cn%efhW'ebq[YІ{}b}b|[^c fhHǗgONO OMOPIVY7YZ\ `aapfipuOupy}}ÄcUzS;NNW߀xNXn8z2(/QASpTTVY_m-bpT S[p–So\zNxn&VUk;YSmftܕVBNKO SU[0_qf fhl8lm)t[vzN4[`muvʙ`iSQWX0YD[^`(cclopqqYqs?~vх`[XielZu%QY.Ye__bej*k'ksV,\l{Q\KahvraNYOSx`in)zON SNOUO=OOsRSV YZ[[yfggkLlpksyyz<{ۃwӇfV)NO\brYu;傽řNOVXJX^_`*``babbe9AffhmwppuLv}uQRYT[]ahimxˈWrmlWgΒRVT^bdhkSlWo"ooEtuvw z{|!}6f̌Qeә(N8T+\]svLw<\ TXOOSqUVhWYG[ [\^ ^~_cg:eeghhj_^0kll}uyH[cz}_w̏Z/__`hjtZxwN^NO|OPPQIQlRRRSSTTUWQWY}[T[][]]]^x^^^_`RaLbbce;ffCfgmh!hil_m*min/nu2vxlz?|}}}^}T*RLaʑuqx?M؝;R[RSTXboj_QKR;TJVz@w`sDo pu_`ښrۏkdNVWdXZZ`haffh9hmu}:nBNOPSU]o]]gltsxPWP^c+PPQgTX^Y[_ibMch=ksnp}rxx&yme}0܈ RdW(gPjQWB*X:iT]WxO\RJTd>f(ggz{V}"/h\{9SQR7[bddg-kvcLvfRN PS\q`dech_qsu#{~ۑxefkNNO:OR:SSUVXYYY[P\M^^+_`ce/[\eeegkbk{lsEyIy|}}+󉖊^ifnjܖ̘koNOtuxy: 3ꄔlP_X+z[NSWY1Z[`nou[{Prg\aJ~Q\chfeqny>}ʐnǐPR\:gSp|r5Lȓ+[_1`N;S[bKg1krsz.kRQSTj[cj9}VSTh[\1]Oabm2yy}B~MҁFrt/1KlƑNOOQESA_bglAn sc~&͒SY[my]~.|X~qQSO\f%wzQ_eiokmnodv}]uQRb@ffn^}rfRSYs^_`UdPQRS SGSTUFU1VYhYZ<[\\\\^^^_pbbbccwff f-fvg~hjj5lmn nXq d_xRbcdBb-z{}v INQHSCS`[\\]b&bGdhh4lmEmgo\qNq}ez{}~Jz9n΍xwRMUo8q6Qhy~U|VLXQ\cffiZruuyyVy|} }D4;a PRuSSP UXYOr=[\dS``c\cc?cdef]iioqNuvz|}}aIXlōpmPXaӅ5 OPtRGSs`ocIg_n,O\^e}SRQvc[X[k\ d gQ\NYY*lpQU>XY`bSg5iU@Ě(OSX[\^/_` aKb4flnހ΁Ԉ.ۛNSY'{,Lnp'SSUD[bXbblot"8o8QSSOFTYj1]zꏿhڌ7rHj=N9SXVWfbcekNmn[pwz{}=Ɔˊ[VX_>efjku7P$wW0_`efzl`uznE{u\z{QĐyz6Zw@N-N[_bft6x4ZFuO^bceWgovrL̀)MP WZhisqdrXjyw)O/ReSZbglv}{|6fo r~Q{xr{{Hj^auQu`QkbnvzOpb{OVzXY䖼O4R$SJSS^d,egl>lNrHrsuT~A,錩{đqic=fiujvxЅCS*SQT&Y^_|`bIbybekluvxy}w^j |8P\>_gkt5w ;gzS9u_f_<_ub{Feg llpx2~+ނ *JҘlNONPRVWJY^=__b?fgghQ}!~2T ,SPS\Xdg4rgwfzFRlkX^LYTg,QvdixTWYf'gkTi^UggRh]NOSbg+lO~mNabno+Tsg*E]{\[ƇnJzY|lw RY"q!r_wۗ'ai ZZQT T}fvߏYr]nQMh}}bdxj!Y[_ksv}Q2g(vgbR\$b;|~UO`} SN_QYr:6_%wS_y}3Vg󅮔Sa alvR8U/OQQ*RS[^}`acg gngms6s7u1yPՊJćYNOYN?P^|Y[^ccdfiJim nqu(zIɉ! e} a~bk2lmtmge}o#,TBojp2RZA^_gi|imjorbr{~KQmy2P-Tqkjā`gNNkhin~xU_ NNN*N1N6NzYUYPYNYZYXYbY`YgYlYiYxYYO^OYYYYYYYYZ%ZZZZ ZZ@ZlZIZ5Z6ZbZjZZZZZZZZZZZZZ[ [ [[2Z[*[6[>[C[E[@[Q[U[Z[[[e[i[p[s[u[xe[z[[[[[[[[[[[[[[[[[[\\\\ \\ \"\(\8\9\A\F\N\S\P\O[q\l\nNb\v\y\\\Y\\\\\\\\\\\\\]\] ]]]\]]]]]"]]]]L]R]N]K]l]s]v]]]]]]]]]]]]]]]]]]]]^ ^^^^^6^7^D^C^@^N^W^T^_^b^d^G^u^v^z^^^^^^^^^^^^^^^^^^^^^^^__ _]_\_ ___)_-_8_A_H_L_N_/_Q_V_W_Y_a_m_s_w____________________`_`!`````)``1```+`&``:`Z`A`j`w`_`J`F`M`c`C`d`B`l`k`Y`````````````````_````aMaa``a``aa!``a aaGa>a(a'aJa?acMdcOcccccvcccccckcicccccccccdd4ddd&d6edd(ddgdodvdNe*ddddddddddddddd ddbdde,ddddedeeee$e#e+e4e5e7e6e8uKeHeVeUeMeXe^e]erexeeeeeeeeeeeeeeeeegrf fegsf5f6f4ffOfDfIfAf^f]fdfgfhf_fbfpffffffffffffffffff?fffffgggg&g'8g.g?g6gAg8g7gFg^g`gYgcgdggpgg|gjgggggggggggggggggggggjhhFh)h@hMh2hNhh+hYhchwhhhhhhhhjhhthhhihh~ihihi"i&hi hhhhi6iihhi%hhhi(i*ii#i!hiyiwi\ixikiTi~ini9iti=iYi0iai^i]iijiiiiiiii[iiiiij.iiiiiiijjik iiijijijij jjj#jjDj jrj6jxjGjbjYjfjHj8j"jjjjjjjjjjjjjjjjjjjjkjkk1kk8k7vk9kGkCkIkPkYkTk[k_kakxkykkkkkkkkkkkkkkkkkkkkkkkkklllll$l#l^lUlbljllllll~lhlslllllllllllllllllmMm6m+m=m8mm5m3mm mcmmdmZmymYmmommnn mmmmmmmmmmmmmmmmmn-nnn.nnrn_n>n#nkn+nvnMnnCn:nNn$nnn8nnnnnnnnnnnnnnnnoAopLnnno?no1no2no>onoozoxooooo[oomoo|oXoooofooooooooooooooop p opppoppotpppp0p>p2pQpcppppppppppppq pqqqeqUqqfqbqLqVqlqqqqqqqqqqqqqqqqqqqqr rrr(r-r,r0r2r;rsNsOsWsjshspsxsus{szsssssssstttot%st2t:tUt?t_tYtAt\titptctjtvt~ttttttsttttttttttuuuu uu uuuu&u,uz7zCzWzIzazbzizpzyz}zzzzzzzzzzzzzzzzzzzzzzzzzz{{{ {{3{{{{5{({6{P{z{{M{ {L{E{u{e{t{g{p{q{l{n{{{{{{{{{{]{{{{{{{{{||{{|`|||{{|| {|#|'|*||7|+|=|L|C|T|O|@|P|X|_|d|V|e|l|u|||||||||||||||||||||;|||||}}}}} }E}K}.}2}?}5}F}s}V}N}r}h}n}O}c}}}[}}}}}}}}}}}~=}}}}}}}}}}}}}~~ ~#~!~~1~~ ~ ~"~F~f~;~5~9~C~7~2~:~g~]~V~^~Y~Z~y~j~i~|~{~}~}~~~~~~~~~~~~8:ELMNPQUTX_`higxq܀ !(?;JFRXZ_bhsrpvy}Qۀـ݀Āڀց )#/KF>SQqneft_Ɂ́сف؁ȁځ߁ )+83@YX]Z_dbhjk.qwx~߂҂ރ܃ ك5421@9PE/+#|su΃؄  " 8m*(ALONIV[Zk_lot}:A?HLNPUblxz|bȌڌ  N͍gmqsύڍ֍̍ۍˍߍ B504JGILPHYd`*cUvr|ƎŎȎˎێ  &3;9EB>LIFNW\bcdڏ!  '659OPQRI>VX^hovr}bHۑ20JVXceisrɑˑБ֑ߑۑ,^WEIdH?KPZϒD."#:5;\`|nV֓דؓÓݓГȓ6+5!:ARD[`b^j)puw}Z|~oÕ͕̕Օԕ֕ܕ!(./BLOKw\^]_frlΖ˖ɖ͉Mܗ Ֆ$*09=>DFHBI\`dfhRҗkqy|z×Ɨȗ˗ܗOzߗ 8$!7=FOKkopqtsĘØƘ !$ ,.=>BIEPKQRLUߙۙݙؙљ+7EB@C>UM[W_bedikjϚњӚԚޚߚ"#%'()*./2DCOMNQXtʛƛϛћқԛ:   .%$!0G2F>Z`gvx *&#DA?>FH]^dQPYrozĝƝϝٝӝuy}a̞ΞϞОԞܞޞݞv!,>JRTc_`afgljwrvX/iǐYtdQq!@!q!r!x!/"L!k!^!-"y!_!`&!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X'''!'"'#'$'%'&'(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'Q'R'S'T'U'V'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'W!>!=!B!F!G!H!I"w"x!E!D"s!l!m"(!n"r"+","*"-"M"N"O"_"P"`":";!]"e"g!g"\"J"K"A"@"i"j!h"h"f"b!b"a!e!f"c"d">"?"<"="]"^(!(,("(-(#(.($(/(&(1(%(0('(<(7(2()(>(9(4(((8(=(3(*(:(?(5(+(;(@(6"#"""%"$"'"&"!!~!{!}!|"~!z!y!j!i"v"u"t!!!"!#!7!9!:!;!R!S!T!U!V!W!X!Y!Z![")".!L!M!A$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s!+!,!5!6%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v!&!f;0>e2<ITM?P"1/3nP#@$RB5VJ:>gN>JBP$CfP%6zP&4]C0hP+256e8pLiV&MpF}4%55P,P-N;M=AhP/;vFsP21>8_8^0fOKOJ:30!P3P4P5K4P68r0gKr5|5}5~DbN<P7P8P9?M=:?NP>P<P=5X:#2pP;P:J);F;EB>P?IU@g!8P@PBBeNa0JPA2>6DCg7oPCG$4kPD0K8`4lIzH25Y2qPgEAGlPFH<Nb?-;G;w2@DQC"PJ0LDc=;:4M$BN2?PIM>PEPG:nPHU$PPPSPQ2BJ;PKPO8s;H4&PTPLNc;xPMPRPUPN6!0M6"2AU%KyIn8t?/N7JX78B%2d=SPYP^P\PWB/PZP]P[J]PX?.KsP_P`=$PmGPI6PhJp26PlPfPoAR8DG\`GPnE]Pc8v8uPaF~A4Q@QAH,8xO;QB6&JijQ{3dQuQsAOQwQv3D7`Q|N-QxQ}QzQyNO8y2CNt=uEX9eR"R#NeO+R%8zR$3/R&KVD<M&JYR'pUF0R(4*L3>!R)JgR-@*R*6PR+4+7.R.R/R0R1<[8{L^LhFwJqR2R3R5R7R6R82=KL:|R9AY>"6)R:H[R;R<R=R>I$6h0eF?R?==@iRAR@>#8aRCH>RDH\B4Bn6(FnC1GnKNRF@j75RGRH1,0u4mB(5QMqRK27RJ6*RLLqRMNR8|86RNRPRO?_191^RQRR87RS5n;2RTKt:55ZM'APH?<}=G$R\RZ2DBf<8;K1&3p9f;JR]R^5I3F9g5HD_1%F1L>9!MyEG8~7/Rg6cKJH]Rf4^RaRbRdRe5[?aJ-RcR_8cR`O$JrDh8b9pRhF]Rl<~:i31RyS%0vS$0%IJS"R|RwR}:HS&0wS/S'S(>%KiS-S,E/S.S+14:6?0S)EbS*0"S4M#>'S:S9S0BCS1BoS6>&S3Ld7<S7S8S5S;S2SASFSBS=SGA1SI9"S?C}SCS<4-4n3eSDS@7vSJSHAS5J6,SE6t1DSNSLT'SQSKSOSM;LSPSSSXSVSUC22ESRST>(13SW2^Sb>|S^S\S]S_1=A9SYSZ3zSa4oSdS`ScJ.FUH8SfSe3ESgSjSiShG9SkSlSnSmSpSsSqSoSrStSuSvSwSxQE<|;M2s0xCDSy:$0O?^Sz8G9qS|S{J`S}T!S~T"T#7w1`T$T&T%T(EZT)05:_7=COT*T+T-T.:d6QK7T,T/:A9#T3:%C3T0DZT4?bT2T57?T6T79$3@T9T:T;T8T1T<T=Kd>kT?T@T>TBG80hIVTC>}<9G]4p:kKYF27xBOTATDBDTETFTHDi4.t!1aJs>lEH:fTNJ=N]2tTJA:TMEcEIEdH9DM:ITI1vE6TKTG?PTO=N6-TPJhA}DFTRKOTSTXJ/TWTQTTTV:&JITYCE2u>mT[TZ9hT\T^T]T`TUTbTaT_;N?QATTc@<0mGdD[TeTdTfTgThTiJQTj2FTkM<30RI=HB?TlLkL4TnBgE7B@IWToTp1{<:Tq0PTrTs1b4qF`JtTwAUTv7@K[TuEeTyTxT{Tz1|T|>)T~C%T}J3=wE[U!9%U"G!H^LQG%U+58MEL/V,U#U&BEK8EJU'Ke:J>*U(;P;O098H@+0QU,U-U*184/U)LEI10(0y;Q0R0#U2U0L<U3U1U/?1U.JZ8dU7U8>+U4O,GLU6:'U9IXU:U5L;G^U;I2U7yULUEUBCdUAUCUDUFUG4rUIUHUJ>nUMD\1EUKUNUOURUPUQ;RUS9&UT;zB8UUUV;Z9'LR5(8IUW3XUXB9UYV#UZU[U\U^U_U`Bp1',2HUbMF=I-UrUs0SB:?RUtF3>.>/Uu@m>0UvUwL`Ux6F="UyUz<\?,Ft?THxG"6IU{5oU|6~FO20;SU}V"V!6}U~E8B0EKVGVFVEVAV@VDJxVKVHVJMrVIV??sVL:7VMVNVQVPVOEhV:VWVSVRVTVUVXNfVYVVVZ4`V[V]V\V^V_@n=#=dAc9):89*5pV`:98JVaL&GCVb9+4,C'6R;TI[HAVc4uVfD!VeVdVgDk?c;U@JBS5"D"VhVi>oK9VlVkVjI}VsKZVmVoKkVnVpH(VqJ>Vr43J?G/VtVu9,44Vv88MDM)4vVxD#9->1H_>2=xDlJyE99.I\VyEY:B8KDm0C=n9/MGVzV{GQV|NwO-V~V}3GW!W$W%W#I@>3W'W&W"W(W)W*W-W+W,W.1dDnW/7z2vG6W0F{J[W1O.W2J@W5P!P1<0FuW65]D$0zW7J&90CPDoLo898LW8W9W?W@EvWAWBWCW4W3WD7AI':LI7D&IKWE>41FWFWGLrH`WJ1}@,WIWH7BBTWNWLWKN'8e=yWMEL=>F@WQWPWOWR8fWSI|=[WTHyFAD'E0WU5+?4I,4wG&WV;VK:K;1~W[CiWX2wX-WZG0WYWW9zW]WcWiWaE\WfI]W`WeNg;WBUW^5^Wh@-1eWb2xWg61WdWjWlWvWtWqWpNxWr6291=zWyWkWoW_2zWsWuCQ:(28WmWxWw63B)3f7CWnWzW}X!<=X'DpW{X%2yX#X$W~X"8gM*451YX&G:0-HaW\X,X0LeX)EiX.>pX/FWOGX+X19{@K0TX*X(AZW|;4BFX=A[X8X5X6X?0UX36r0&46X;XCXBXGXHXFXIXAXEXJXKX@;|XDBV92X2?5XXJiXNXOXPXWXVK}47XT7E34XQN8XS0VXUXLXRXY7DXMM]M+X\X`A~NyXaX^X[XZX_J0F47FXbX]Xc7{21Xk48XiXj:)XhXfXeXlXdXn2{XpXoD(XsXqXg7|XrXvXuXwXtXxXyXzJjX|X{=?@.2f2|X}0?@LX~lCY!7aY"@oY#Y$5:Y%Y&Y'BW8MLaK<=jY(@pn=Hb55;Y0Y7>6Y1GDM^Y3Y4Y8EjY593@^YFH4BrHdZ-JzDqKuY;2!CjYDC4Y>YEY@YGYCYBGoY<2}Y:5qBsY6Y994@[>7YAGR5r3H3g?!YIYNYJ7}YO;"9i=&Y=;}YL;XYM0DYHD)5s64YK0':C?6DrHTYQA^B*;+YRYTYPJaD=A\J{9FhG1YWA]8YVY[GSYU7!3]Y]N+:NC5YZ@\95?d1fAqZ5Z9Z7Z8YpZ;Z:YxZZ@Z?ZA2~96J|@/8NZCZFIR5_ZEZDGTZG65ZIZH4:;6FX7I?tZJ@0E(I_ZKZLZMJ8U]@FIL:XHeHCEMNAZO:Z_>;L@:*0W@NZf@11G=UKf:r><@'ZeZcZdCk[&Zj;~98ZhZi?8Zg;/ZlZkZpZqZm3"ZnZoHUIa7JZr@2>=CR6GZsZw2KZtZvZu=kCH0EZxZyD*Nq;CJkK=["Z{Z~Z}Zz[!F^Z|[#=l[$MKGx[%['[([)6J1H99[*[+=qAbRXA>A=BX:GPr7nM-J~I~[,:sD?[-O/K>D+[.4|[/[0LZL$KvK\;%[2s[;EN[9B+[:>rL][<[=Mh[B9:GU[?ElZ^Zb5OGG[A>>HD[GHz[>[D[C@OKmNSKg2L;^OH[F?u[E[@8O[L[J2M[H[N[TBHJA[VI"[UGpK?4;@w=@DSM.[Q[P[R[O[W[M[K[S[IClLx?Tm8hM|[hDt3#:-[`[p3a[n[rEn4~\2LI[w4}[~K@\!\#\'[yC*Eo\+[|\(\"?9\,@3\*4=OP[v\&0X[xL:[}?"DG[s\%?z\/3q8!\1[z\0\)[{\-\.\?FN\$\;\=DXMLIv\8BJ\>A?\5\B\AFo\@Fj\D\76H\:=]G`\<6K\4\6\3O03Z\9\C35:g1]\TO1\W?:\V\U\R\F\c\E\X\P\K\H\I\Qt"\N9=DHAd\L\G\JMMKj\O\Y\a\Z\g\e\`\_DPAe\]\[\b\hHu\n\i\l\fCtI8\\\d>@LO\x\k8"2#3_\S>A\p\w]=]<]>2NC7]?4?]A]@]B]C]D;_@5:!IpJbOD;u:PNr]E]F;`]G]H]J]IKX=^CS]i]q]jBA5b]r7h5%]p]n]kM`D@FY]l]t]s7#2-:;]m]oKWBtKw]|]}2OJ(L}^!<#>B]x]~1h67]u]z@tGqHg]wK!]y^$^"]{K"GH5cE%Cm^%^#BY]v1KMN^0^/@v^,MlF6^&DE1L9?^)='^.^-^(^+3h^*GIN.>t@u^6^4IM^1^31:9@O23=IbMa3$?;^5^:>CM0^7^2^8N^EsFB361U^>^ANCMd^H^B^?NT^E=J^G^LEq^J^DC8^K^@^F^M0|^C^N?<=_J%:.^;^IE:@63i:Q>D^==B7L^<^R=m8:^a^[5tEO^V^_0/1229^XB,^O^Q9A^b^]^U^\L+^Z^^8P>EC9^TM/^W^PEr^S^YOQ<>K~^cH.^o8;=`^eN/9B^r0n^p^d^j^lMO^gE.^i^q^kLG^f<"^~3j^h^m^nBlBZ^v^|^zE)_#^w^x^`5yI:_<_?_B_;9jG(^9Mt_=_ABu_@_+oi_E_I_G_C_D_H_FIN_N_K_J_MFT_OCuBm@%_P_R_Q^u_SFg_T2PEt3%5d<^:RO'?f1j_V_U_YC:_\_W_[_ZE@0YNu_^1(_`___]_XK#_b_a1k_dJ2_cL5>GA3>FN{_j@y_f_k1l_iGa_e_h>HHQ_l`9`:8$HH`<>u`;68`=`?`>`@8Q`A6iA@9}`C`D`BHI`c`~`i8=5e`fM}N0Bv`h`jNV6WH|GJ`k`m`p`l`o8j1M`q?p`nN\`tt$`r`u`g`s:<`v`wM~`x`y`e`z4D<%`{`|`}1;a!I;a"4$a#a$a%a'a(a&ISa*a)a,a+a-a.a0a/9ya2a14E?SE<a3@8;:1ya4MQJca5EDM39C?=CKR4D.2ha6a7a<a:a9ZB3&a80ZH*HJN1a=a;C\@&H+I-a?N,7Ma@a>HVaAaB0[>vaGaDFmaC5&aJaEaFaIaHI%ABAA5?aKaLaMaOaN1VaWHhaQaSaU?>aVaT<@aPaRIB>IaYaXaZ<&:/Ewa[DKa]N!a\AiabadaeCTaca`a^a_aaahafagaiakalamanajapaoaqNEataras4bL~JJavauawaxa|ayaza{a}a~b!b"b#H/EPb$GrI4b%b&E*3'9Db'b(b);)b+b*b,b-Hib.b/sib0b1b2;.b3GVK_1N1Wb4b6b5Ep@9]9b7LAb84FHWb9b:b;L\LUD>Ajb==b>Jb@b?b>H}4G8)bFbC??L2bBbDbEbAbGbHD/4cCebIbJbM?gFDbNKSbKbLbQbPbObSbRbTbVbUJM=VNFbWF7bXbYb]b[b\bZb^b_b`baL7bbLpbcCNGj6kC;bd6:@Pbe:=bfbg8&:UbiEV:V5NK$GKEW9\bk>KN29E8'H#bmbo8kbnDvbq37blHj10:lORbpbrJK@Ybtbubs3Nb{bz<'b|bwb}bxHXbvbyc"c!Kab~0kc$c#>Lc%ACc'c&c(bhbjc*c)<(NiMI<:WExc2c3cI6XO=A5c42RDwJ!c55zc6c8c9G)c:c;c<6Y2SFE=(;dc==)2JICc>HkAEcAcBGi?Ac?Cac@>N0\5)cCDxcD@GL-I#cEcFCUNGcHcGwcS3OcU7j5fcV6ucW@|FM@`:ucXCbAkcZc\cYc[7"c]7&5gMRc_c`1.cc3vcbcacec^cfN)cgchTtcjcickclN5cmpo>Ocnco=WF8cpC(cqCPcxcyE+cz3^?ZIdc|Bhcwc{c}:{d&I.H&Ey6Zd%d#H5c~C^E{Ez:vd8d(d*d-d.d+d,d)d'd!JO2Ud5d2d7d6GsL';;d0d9d4d3d/d14IC=@}H"d>H$@ad;HOd?JSC[d:d<d=d@Qdjdhdfdndmdldkdodp@:dqdsdr8RA8duE|dtdvJ5Al9GdwNHdydzd{d|;ed}7O5j5*e!Ls9Hd~e$LfG<I3=ce#R:0e)=*8>AHe%e+e&7Pe.e27ke-e69JMm0e?0=LJe>6[HlAmNP=oeneH@~eDeIeKDyeNeJJT4KLK0^eMN}eL1oFleOeVePeWeSG{f;f<f?f@f=1)2'fBfCfDMb=,fFfE?ifGfHfI4e4MfJfKK]McMTO79MfNH)fk>SI*flfj4N8T;hHn8*KCfofm9N9O0i:hGY0_ftC@GXB[fvfrfufpfsK&8U0}fqfxfyF96;g&G=;i6<@HOFL.fw@T5Sfzf|f{f}C&G>D1g#g"f~?UIeg%g$9POSg5g)g*22gEg@gAgBB!gDgCgFgGgH?C2igINW<+=-;jCWgJgK11gLgMgNgOgP6=Z*gQ@egRh0G|Mih9hOhG?{5F6]hB2[>ThE:ZEQhJJnhA2Z8VI)hKh?hHhRhChDF:hIhFK(hL0`h@hNhMGkhTh_3~hbhPhUMnh^MUN*Cx3kIrhdF!01h]hYArhSh[h`G,0*hXhaIxh\hW>U=/<,LXIGhghphZ3w>xhehjAshfhmC_hnMVhc38hihlL,hohhhkK)O!hshzhrVi$Iyh}hVh|OOF"Isi+i1i2i%Gvi/i'i)i3i(i,1rFei-i0i&A&i*;'?E70LtLy=ri7i5ONi4Mui6i8i9ii@i?]1]"iEiDMvbj@j?jBjAiZjFjCjDjEjG7ljIjH=09T^'jJ=Q39jK1R>WjL9UjM0aI=jN?jjUjRCojSjP6^jOjV76B^j\jXB5jWjZjQj[j]HojYj^j`8SjT0Aj_:[NvjajbAuN"jcM5jdjeJdjf:@N#jkjl>XjjMgjgji@=?~jhjmJ#jojn3lK+jpj|jrjsjtjujyjzjxjvjqjwj{p72(j~6_j}k"k!k$k#k%=1k&k'k(@>MWk)J$GFk*k+8+5,k,;kGAk-3Pk.k0Mwk/?Fk1k2k34Qk4k5k6k73Qk8k9k:2r?(k;k<k=8@D{k>7W?VkAF$k@71k?Bw5-kBkC>Y7mkDK,@_5vLuAJkE?GCp>ZkFkIkJ:>BBkH>[I>kG;l1SkN7X;n;mOMkMkLA'5MOC3:>\kKkPkQkO8XM@;oG'kT@@CBM6kW8l@?kSkX8mkUkVkR@bFIC/2]Hp5CD4k[kYCL@A4RkZ?[NJO@k\kgD5kfkckkkdk`D|k_k]M!;pkak^ke=t8ABzKE1Z0bF%kikhFfkmkbklkn8,kj9Vyl$8nl%l&;>ZNl'l(=2l)l*l+l,l-C+l.l0l/F&l1K-l2l3l4l5FZ>]l69kP.l7l8I?l9lAl:l<l;l=KFl>l?l@lB3-DgIi:b9WIO2_HNlE4S@UlDlICyLclGlH5.lJGcB_HqE=lFKG2llLO(DBOE;qlKB1l\A(FxIPlO;?;r>^Ge8-lNlMIjm?m@m=mAmDmG<4mFmE7ZmH3SmJ:\mImRmLmNJemKmMmQmO51mPmSGZNX=4mTM"mVmUmYMAmX3mmWm\m[mZE2m]m^m_9l7%m`mamb?Imc<-mdmeR!Q~mfepmgC$?+G@mhJUDT9~C)1*Kx?W7^6aJVmimkmj2`FvmlGwE3mm=RmoLBm~mqmrDIB`AwF(mp5Umymvn%F)C`msD~ESmtmx?`GgDL@BmwB.B$mu0)O"mzBa=5?Jm|m{0om}I/n'F[?kCY6xn&M71?JW2an!n"n#n$F;C#0cn(n)t#B=n*1sAL8/MZn+E,Ax74n;n<It3TM96?ETn?n@nAE"nCnBFSnD=6<`G[Cq_nRnPnQnTnS>znUnVnWHP:S`9[KH6d=FF<A-ntnnnsLCD8nunrA,nynxnwK/={nzJ_1TIFCr5xn|9];,n{?m?no!o#>{o"o$6SIEa3yo0:?AyDJ3;o.o/DCo-o1o7o:o9E-o2o3o6o86@o;o5o4o?o@oAo>o=>bF*o<oEoCoDoBBxoFoGoI4UoHLzoToJoMoKoLoNoPoQoRoUoSoVoXoWD9LgoYA.oZJDo[3+1<4W4Vo\o]o^o_o`4X3U9^H6oboaoc1\ofoeodogoj0GoholokonomooF.opoqosorIlotou:eovowKIAK0$BKoxImo{oy9_oz8BJEo}p!o~p"1!?X=|4Yp#Gfp%1"p$DDNMF+o|N&81M[6yN47(Bbg!p&3,?o3Vp(p)p'7d:]>c1#NYp+n.p*p.p,p-p/p0Nlp1p2@IH;?}4gM:2m=88[p5p4;sp6p3;(p:j-RV?wp8N%Fq1+@c<6J71@NmMkp;EE<{p<p=?Lp>Nnp9p@pBpAp?pCpDAz2bpEL8pFpGO*[1pHpIpJpNpKpLpMpO@DLw@EpPHspQsSLLpRpSpT3WpV?YpW7$pXp\pZp[3spYp]p^0Hp_p`>dpa5GpdpcpbkqJ\pepfpgphpipj4ZpkplG#pn2;pqpp1$6AJGD::"9`=g?\psprMB4hHRF\?|NN7[pvpuKKF,1PpwptIQMjpxpyp{Bj3[3\pz4i824jE?N`8\p|p}p~q!q#q"Iwq$q%q&q'q)q(q*HtfL?)52q+q,R,];HS0{0;;tK0>~q-L_q.M\1B;Aq/2nq0q1q3q4q6q2q54[q7q8q9q:q;q=q<q?qBq>q@qAqC6BGOqGqHCZFkqIG}BL1X6n6oCsqN6p2oqMqKqLqJqXqOqPqQqRqTqS=YqUqW53qVA{83qYBMqZF-q[q`q^q]q_q\qbqaqd6Cqcqeqfqhqgqiqkqj9|qlqm3<qnqo?qqpqqqrqs9bqtquqvqwqxH1qzI&q{qyq}q|q~r!r"r#r$r%r&r'r(r)r*r+r,r-r.]5r/dx543!:2r1r0L%r3r4r2r5Kbr65{O%r7r90>r:J+r8r;r<r=r>r?Kn;-:zA/r@rCrArD8qrBrErFrGrK;*BdrLrIrHrJ7_rPrOrN03rZrVrWrSrYrU3bOLrXrTrRrQr\r_r^r]IIr[0sr`rb3orM17rdrcraC-KpNZrerfrgrhriD;rjH7rorkrlK1LDFPrprqF>rnrm2*ryrx1urvrurs3{rr<22)9cr|r{rzrwr}r~s%s$s&1-s!s"9tL9s#K2s+s's,s)s(7\s-s.s/s*rts0Das4s5s3s2s8s1s6s7s:s9s<s=s>OIs;Bk:ms?s@sAsBsC84sDsE?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO!QRSTUVWXYZ[\^_  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/ROVASIRAS.TXT0000644000175000017500000001551611053727065015143 0ustar henrichhenrich# ROVASIRAS.TXT (UTF-8) # URL: http://www.yudit.org/download/pua/ # This file maps Dr. Hosszu Gabor's rovstd.ttf # to a Unicode to Unicode Private Use Area. # # Note: files produced with this method may # not be portable, and may need to be # converted once Hungarian Runes get # included in Unicode. # # Author: Gaspar Sinai 2002-02-27 based upon # Hungarian Rovas Szabvany: # http://rovasirashonlap.tar.hu/ # # Original Unicode Proposal (1998) (Old Hungarian): # http://wwwold.dkuug.dk/JTC1/SC2/WG2/docs/n1686/n1686.htm # # Font: Dr. Hosszu Gabor # http://rovasirashonlap.tar.hu/ # # First Column: ROVSTD codes. # Second Column: Unicode PUA values. # # Revision History: # # 2002-12-07 # Updated from Old Hungarian to Hungarian Runes # Changed URL of   (Rovasiras Honlap). # # 2008-08-03 # Changed URL of   (Rovasiras Honlap). # # 2008-08-08 # Corrected a spelling mistake: IRT -> IIRT # 0x61 0xEE00 #  HUNGARIAN RUNIC LETTER A 0x41 0xEE01 #  HUNGARIAN RUNIC LETTER AA 0x62 0xEE02 #  HUNGARIAN RUNIC LETTER EB 0x63 0xEE03 #  HUNGARIAN RUNIC LETTER EC 0x43 0xEE04 #  HUNGARIAN RUNIC LETTER ECS 0x64 0xEE05 #  HUNGARIAN RUNIC LETTER ED # # From this point on we shifted 1 from original proposal # 0x48 0xEE06 #  HUNGARIAN RUNIC LETTER AE 0x65 0xEE07 #  HUNGARIAN RUNIC LETTER E 0x45 0xEE08 #  HUNGARIAN RUNIC LETTER EE 0x66 0xEE09 #  HUNGARIAN RUNIC LETTER EF 0x67 0xEE0A #  HUNGARIAN RUNIC LETTER EG 0x47 0xEE0B #  HUNGARIAN RUNIC LETTER EGY 0x68 0xEE0C #  HUNGARIAN RUNIC LETTER EH 0x69 0xEE0D #  HUNGARIAN RUNIC LETTER I 0x49 0xEE0E #  HUNGARIAN RUNIC LETTER II 0x6A 0xEE0F #  HUNGARIAN RUNIC LETTER EJ 0x4B 0xEE10 #  HUNGARIAN RUNIC LETTER AK 0x6B 0xEE11 #  HUNGARIAN RUNIC LETTER EK 0x6C 0xEE12 #  HUNGARIAN RUNIC LETTER EL 0x4C 0xEE13 #  HUNGARIAN RUNIC LETTER ELY 0x6D 0xEE14 #  HUNGARIAN RUNIC LETTER EM 0x6E 0xEE15 #  HUNGARIAN RUNIC LETTER EN 0x4E 0xEE16 #  HUNGARIAN RUNIC LETTER ENY 0x6F 0xEE17 #  HUNGARIAN RUNIC LETTER O 0x4F 0xEE18 #  HUNGARIAN RUNIC LETTER OO 0x71 0xEE19 #  HUNGARIAN RUNIC LETTER OE 0x51 0xEE1A #  HUNGARIAN RUNIC LETTER OEE 0x70 0xEE1B #  HUNGARIAN RUNIC LETTER EP 0x72 0xEE1C #  HUNGARIAN RUNIC LETTER ER 0x46 0xEE1D #  HUNGARIAN RUNIC LETTER AS # # From this point on we shifted 2 from original proposal # 0x73 0xEE1E #  HUNGARIAN RUNIC LETTER ES 0x53 0xEE1F #  HUNGARIAN RUNIC LETTER ESZ 0x74 0xEE20 #  HUNGARIAN RUNIC LETTER ET 0x78 0xEE21 #  HUNGARIAN RUNIC LETTER ATY # # From this point on we shifted 3 from original proposal # 0x54 0xEE22 #  HUNGARIAN RUNIC LETTER ETY 0x75 0xEE23 #  HUNGARIAN RUNIC LETTER U 0x55 0xEE24 #  HUNGARIAN RUNIC LETTER UU 0x77 0xEE25 #  HUNGARIAN RUNIC LETTER UE 0x57 0xEE26 #  HUNGARIAN RUNIC LETTER UEE 0x76 0xEE27 #  HUNGARIAN RUNIC LETTER EV 0x7A 0xEE28 #  HUNGARIAN RUNIC LETTER EZ 0x5A 0xEE29 #  HUNGARIAN RUNIC LETTER EZS # 0xBA 0xEE2F #  HUNGARIAN RUNIC SEPARATOR # # NUMBERS # 0x79 0xEE31 #  HUNGARIAN RUNIC NUMBER ONE 0x59 0xEE35 #  HUNGARIAN RUNIC NUMBER FIVE 0x58 0xEE3A #  HUNGARIAN RUNIC NUMBER TEN 0x56 0xEE3B #  HUNGARIAN RUNIC NUMBER FIFTY 0x42 0xEE3C #  HUNGARIAN RUNIC NUMBER ONE HUNDRED 0x4D 0xEE3D #  HUNGARIAN RUNIC NUMBER ONE THOUSAND # # LIGATURES # 0xD8 0xEE40 #  HUNGARIAN RUNIC LIGATURE AB 0xA5 0xEE41 #  HUNGARIAN RUNIC LIGATURE AD 0xAF 0xEE42 #  HUNGARIAN RUNIC LIGATURE AL 0x4A 0xEE43 #  HUNGARIAN RUNIC LIGATURE AMB 0xE1 0xEE44 #  HUNGARIAN RUNIC LIGATURE AND 0xC1 0xEE45 #  HUNGARIAN RUNIC LIGATURE ANT 0xE0 0xEE46 #  HUNGARIAN RUNIC LIGATURE AR 0xEC 0xEE47 #  HUNGARIAN RUNIC LIGATURE ATT 0xEB 0xEE48 #  HUNGARIAN RUNIC LIGATURE AAR 0xC2 0xEE49 #  HUNGARIAN RUNIC LIGATURE BA 0xDC 0xEE4A #  HUNGARIAN RUNIC LIGATURE BE 0xA1 0xEE4B #  HUNGARIAN RUNIC LIGATURE BET 0xDA 0xEE4C #  HUNGARIAN RUNIC LIGATURE BI 0xD3 0xEE4D #  HUNGARIAN RUNIC LIGATURE BO 0xB5 0xEE4E #  HUNGARIAN RUNIC LIGATURE CAK 0xF2 0xEE4F #  HUNGARIAN RUNIC LIGATURE CK 0xBF 0xEE50 #  HUNGARIAN RUNIC LIGATURE CSA 0xC7 0xEE51 #  HUNGARIAN RUNIC LIGATURE CSIN 0xCF 0xEE52 #  HUNGARIAN RUNIC LIGATURE DU 0xFB 0xEE53 #  HUNGARIAN RUNIC LIGATURE EMP 0xE9 0xEE54 #  HUNGARIAN RUNIC LIGATURE ENT 0xE5 0xEE55 #  HUNGARIAN RUNIC LIGATURE GA 0xCA 0xEE56 #  HUNGARIAN RUNIC LIGATURE GE 0xE6 0xEE57 #  HUNGARIAN RUNIC LIGATURE GI 0x8C 0xEE58 #  HUNGARIAN RUNIC LIGATURE GO 0x9F 0xEE59 #  HUNGARIAN RUNIC LIGATURE HA 0xDB 0xEE5A #  HUNGARIAN RUNIC LIGATURE HE 0x98 0xEE5B #  HUNGARIAN RUNIC LIGATURE HI 0xF3 0xEE5C #  HUNGARIAN RUNIC LIGATURE HO 0x85 0xEE5D #  HUNGARIAN RUNIC LIGATURE IT 0xCD 0xEE5E #  HUNGARIAN RUNIC LIGATURE IIRT 0xFF 0xEE5F #  HUNGARIAN RUNIC LIGATURE LA 0xCE 0xEE60 #  HUNGARIAN RUNIC LIGATURE LAA 0xC9 0xEE61 #  HUNGARIAN RUNIC LIGATURE LE 0xF9 0xEE62 #  HUNGARIAN RUNIC LIGATURE LO 0xD2 0xEE63 #  HUNGARIAN RUNIC LIGATURE LT 0xFC 0xEE64 #  HUNGARIAN RUNIC LIGATURE MB 0xC6 0xEE65 #  HUNGARIAN RUNIC LIGATURE NA 0x50 0xEE66 #  HUNGARIAN RUNIC LIGATURE NAP 0xED 0xEE67 #  HUNGARIAN RUNIC LIGATURE NB 0xF8 0xEE68 #  HUNGARIAN RUNIC LIGATURE NC 0xEF 0xEE69 #  HUNGARIAN RUNIC LIGATURE ND 0xD1 0xEE6A #  HUNGARIAN RUNIC LIGATURE NGY 0xA2 0xEE6B #  HUNGARIAN RUNIC LIGATURE NI 0xE2 0xEE6C #  HUNGARIAN RUNIC LIGATURE NK 0x9C 0xEE6D #  HUNGARIAN RUNIC LIGATURE NT 0xA9 0xEE6E #  HUNGARIAN RUNIC LIGATURE OR 0xE4 0xEE6F #  HUNGARIAN RUNIC LIGATURE RA 0xEE 0xEE70 #  HUNGARIAN RUNIC LIGATURE RE 0xC0 0xEE71 #  HUNGARIAN RUNIC LIGATURE RI 0xAE 0xEE72 #  HUNGARIAN RUNIC LIGATURE RO 0xC3 0xEE73 #  HUNGARIAN RUNIC LIGATURE RT 0xE7 0xEE74 #  HUNGARIAN RUNIC LIGATURE RU 0xAC 0xEE75 #  HUNGARIAN RUNIC LIGATURE SA 0xDF 0xEE76 #  HUNGARIAN RUNIC LIGATURE SE 0xA3 0xEE77 #  HUNGARIAN RUNIC LIGATURE SI 0x83 0xEE78 #  HUNGARIAN RUNIC LIGATURE SK 0xF1 0xEE79 #  HUNGARIAN RUNIC LIGATURE SM 0xC4 0xEE7A #  HUNGARIAN RUNIC LIGATURE SO 0xE3 0xEE7B #  HUNGARIAN RUNIC LIGATURE SP 0xE8 0xEE7C #  HUNGARIAN RUNIC LIGATURE ST 0xC5 0xEE7D #  HUNGARIAN RUNIC LIGATURE SZT 0xA8 0xEE7E #  HUNGARIAN RUNIC LIGATURE TI 0x52 0xEE7F #  HUNGARIAN RUNIC LIGATURE TPRU 0x44 0xEE80 #  HUNGARIAN RUNIC LIGATURE TPRUS 0xF4 0xEE81 #  HUNGARIAN RUNIC LIGATURE TYA 0xEA 0xEE82 #  HUNGARIAN RUNIC LIGATURE UL 0xAA 0xEE83 #  HUNGARIAN RUNIC LIGATURE UM 0x99 0xEE84 #  HUNGARIAN RUNIC LIGATURE UNK 0xCC 0xEE85 #  HUNGARIAN RUNIC LIGATURE UR 0xFA 0xEE86 #  HUNGARIAN RUNIC LIGATURE US 0xC8 0xEE87 #  HUNGARIAN RUNIC LIGATURE VA 0xD4 0xEE88 #  HUNGARIAN RUNIC LIGATURE VAAR 0xD9 0xEE89 #  HUNGARIAN RUNIC LIGATURE ZA 0xCB 0xEE8A #  HUNGARIAN RUNIC LIGATURE ZR 0xB8 0xEE8B #  HUNGARIAN RUNIC LIGATURE ZT # # reserved till EE9F # ./mytool/uni/mirroring.txt0000644000175000017500000001210211326531434015722 0ustar henrichhenrich# # generated by mirroring.pl 2010-01-23 # # from http://www.unicode.org/Public/5.2.0/uc/BidiMirroring.txt # 0x0028 0x0029 0x0029 0x0028 0x003C 0x003E 0x003E 0x003C 0x005B 0x005D 0x005D 0x005B 0x007B 0x007D 0x007D 0x007B 0x00AB 0x00BB 0x00BB 0x00AB 0x0F3A 0x0F3B 0x0F3B 0x0F3A 0x0F3C 0x0F3D 0x0F3D 0x0F3C 0x169B 0x169C 0x169C 0x169B 0x2039 0x203A 0x203A 0x2039 0x2045 0x2046 0x2046 0x2045 0x207D 0x207E 0x207E 0x207D 0x208D 0x208E 0x208E 0x208D 0x2208 0x220B 0x2209 0x220C 0x220A 0x220D 0x220B 0x2208 0x220C 0x2209 0x220D 0x220A 0x2215 0x29F5 0x223C 0x223D 0x223D 0x223C 0x2243 0x22CD 0x2252 0x2253 0x2253 0x2252 0x2254 0x2255 0x2255 0x2254 0x2264 0x2265 0x2265 0x2264 0x2266 0x2267 0x2267 0x2266 0x2268 0x2269 0x2269 0x2268 0x226A 0x226B 0x226B 0x226A 0x226E 0x226F 0x226F 0x226E 0x2270 0x2271 0x2271 0x2270 0x2272 0x2273 0x2273 0x2272 0x2274 0x2275 0x2275 0x2274 0x2276 0x2277 0x2277 0x2276 0x2278 0x2279 0x2279 0x2278 0x227A 0x227B 0x227B 0x227A 0x227C 0x227D 0x227D 0x227C 0x227E 0x227F 0x227F 0x227E 0x2280 0x2281 0x2281 0x2280 0x2282 0x2283 0x2283 0x2282 0x2284 0x2285 0x2285 0x2284 0x2286 0x2287 0x2287 0x2286 0x2288 0x2289 0x2289 0x2288 0x228A 0x228B 0x228B 0x228A 0x228F 0x2290 0x2290 0x228F 0x2291 0x2292 0x2292 0x2291 0x2298 0x29B8 0x22A2 0x22A3 0x22A3 0x22A2 0x22A6 0x2ADE 0x22A8 0x2AE4 0x22A9 0x2AE3 0x22AB 0x2AE5 0x22B0 0x22B1 0x22B1 0x22B0 0x22B2 0x22B3 0x22B3 0x22B2 0x22B4 0x22B5 0x22B5 0x22B4 0x22B6 0x22B7 0x22B7 0x22B6 0x22C9 0x22CA 0x22CA 0x22C9 0x22CB 0x22CC 0x22CC 0x22CB 0x22CD 0x2243 0x22D0 0x22D1 0x22D1 0x22D0 0x22D6 0x22D7 0x22D7 0x22D6 0x22D8 0x22D9 0x22D9 0x22D8 0x22DA 0x22DB 0x22DB 0x22DA 0x22DC 0x22DD 0x22DD 0x22DC 0x22DE 0x22DF 0x22DF 0x22DE 0x22E0 0x22E1 0x22E1 0x22E0 0x22E2 0x22E3 0x22E3 0x22E2 0x22E4 0x22E5 0x22E5 0x22E4 0x22E6 0x22E7 0x22E7 0x22E6 0x22E8 0x22E9 0x22E9 0x22E8 0x22EA 0x22EB 0x22EB 0x22EA 0x22EC 0x22ED 0x22ED 0x22EC 0x22F0 0x22F1 0x22F1 0x22F0 0x22F2 0x22FA 0x22F3 0x22FB 0x22F4 0x22FC 0x22F6 0x22FD 0x22F7 0x22FE 0x22FA 0x22F2 0x22FB 0x22F3 0x22FC 0x22F4 0x22FD 0x22F6 0x22FE 0x22F7 0x2308 0x2309 0x2309 0x2308 0x230A 0x230B 0x230B 0x230A 0x2329 0x232A 0x232A 0x2329 0x2768 0x2769 0x2769 0x2768 0x276A 0x276B 0x276B 0x276A 0x276C 0x276D 0x276D 0x276C 0x276E 0x276F 0x276F 0x276E 0x2770 0x2771 0x2771 0x2770 0x2772 0x2773 0x2773 0x2772 0x2774 0x2775 0x2775 0x2774 0x27C3 0x27C4 0x27C4 0x27C3 0x27C5 0x27C6 0x27C6 0x27C5 0x27C8 0x27C9 0x27C9 0x27C8 0x27D5 0x27D6 0x27D6 0x27D5 0x27DD 0x27DE 0x27DE 0x27DD 0x27E2 0x27E3 0x27E3 0x27E2 0x27E4 0x27E5 0x27E5 0x27E4 0x27E6 0x27E7 0x27E7 0x27E6 0x27E8 0x27E9 0x27E9 0x27E8 0x27EA 0x27EB 0x27EB 0x27EA 0x27EC 0x27ED 0x27ED 0x27EC 0x27EE 0x27EF 0x27EF 0x27EE 0x2983 0x2984 0x2984 0x2983 0x2985 0x2986 0x2986 0x2985 0x2987 0x2988 0x2988 0x2987 0x2989 0x298A 0x298A 0x2989 0x298B 0x298C 0x298C 0x298B 0x298D 0x2990 0x298E 0x298F 0x298F 0x298E 0x2990 0x298D 0x2991 0x2992 0x2992 0x2991 0x2993 0x2994 0x2994 0x2993 0x2995 0x2996 0x2996 0x2995 0x2997 0x2998 0x2998 0x2997 0x29B8 0x2298 0x29C0 0x29C1 0x29C1 0x29C0 0x29C4 0x29C5 0x29C5 0x29C4 0x29CF 0x29D0 0x29D0 0x29CF 0x29D1 0x29D2 0x29D2 0x29D1 0x29D4 0x29D5 0x29D5 0x29D4 0x29D8 0x29D9 0x29D9 0x29D8 0x29DA 0x29DB 0x29DB 0x29DA 0x29F5 0x2215 0x29F8 0x29F9 0x29F9 0x29F8 0x29FC 0x29FD 0x29FD 0x29FC 0x2A2B 0x2A2C 0x2A2C 0x2A2B 0x2A2D 0x2A2E 0x2A2E 0x2A2D 0x2A34 0x2A35 0x2A35 0x2A34 0x2A3C 0x2A3D 0x2A3D 0x2A3C 0x2A64 0x2A65 0x2A65 0x2A64 0x2A79 0x2A7A 0x2A7A 0x2A79 0x2A7D 0x2A7E 0x2A7E 0x2A7D 0x2A7F 0x2A80 0x2A80 0x2A7F 0x2A81 0x2A82 0x2A82 0x2A81 0x2A83 0x2A84 0x2A84 0x2A83 0x2A8B 0x2A8C 0x2A8C 0x2A8B 0x2A91 0x2A92 0x2A92 0x2A91 0x2A93 0x2A94 0x2A94 0x2A93 0x2A95 0x2A96 0x2A96 0x2A95 0x2A97 0x2A98 0x2A98 0x2A97 0x2A99 0x2A9A 0x2A9A 0x2A99 0x2A9B 0x2A9C 0x2A9C 0x2A9B 0x2AA1 0x2AA2 0x2AA2 0x2AA1 0x2AA6 0x2AA7 0x2AA7 0x2AA6 0x2AA8 0x2AA9 0x2AA9 0x2AA8 0x2AAA 0x2AAB 0x2AAB 0x2AAA 0x2AAC 0x2AAD 0x2AAD 0x2AAC 0x2AAF 0x2AB0 0x2AB0 0x2AAF 0x2AB3 0x2AB4 0x2AB4 0x2AB3 0x2ABB 0x2ABC 0x2ABC 0x2ABB 0x2ABD 0x2ABE 0x2ABE 0x2ABD 0x2ABF 0x2AC0 0x2AC0 0x2ABF 0x2AC1 0x2AC2 0x2AC2 0x2AC1 0x2AC3 0x2AC4 0x2AC4 0x2AC3 0x2AC5 0x2AC6 0x2AC6 0x2AC5 0x2ACD 0x2ACE 0x2ACE 0x2ACD 0x2ACF 0x2AD0 0x2AD0 0x2ACF 0x2AD1 0x2AD2 0x2AD2 0x2AD1 0x2AD3 0x2AD4 0x2AD4 0x2AD3 0x2AD5 0x2AD6 0x2AD6 0x2AD5 0x2ADE 0x22A6 0x2AE3 0x22A9 0x2AE4 0x22A8 0x2AE5 0x22AB 0x2AEC 0x2AED 0x2AED 0x2AEC 0x2AF7 0x2AF8 0x2AF8 0x2AF7 0x2AF9 0x2AFA 0x2AFA 0x2AF9 0x2E02 0x2E03 0x2E03 0x2E02 0x2E04 0x2E05 0x2E05 0x2E04 0x2E09 0x2E0A 0x2E0A 0x2E09 0x2E0C 0x2E0D 0x2E0D 0x2E0C 0x2E1C 0x2E1D 0x2E1D 0x2E1C 0x2E20 0x2E21 0x2E21 0x2E20 0x2E22 0x2E23 0x2E23 0x2E22 0x2E24 0x2E25 0x2E25 0x2E24 0x2E26 0x2E27 0x2E27 0x2E26 0x2E28 0x2E29 0x2E29 0x2E28 0x3008 0x3009 0x3009 0x3008 0x300A 0x300B 0x300B 0x300A 0x300C 0x300D 0x300D 0x300C 0x300E 0x300F 0x300F 0x300E 0x3010 0x3011 0x3011 0x3010 0x3014 0x3015 0x3015 0x3014 0x3016 0x3017 0x3017 0x3016 0x3018 0x3019 0x3019 0x3018 0x301A 0x301B 0x301B 0x301A 0xFE59 0xFE5A 0xFE5A 0xFE59 0xFE5B 0xFE5C 0xFE5C 0xFE5B 0xFE5D 0xFE5E 0xFE5E 0xFE5D 0xFE64 0xFE65 0xFE65 0xFE64 0xFF08 0xFF09 0xFF09 0xFF08 0xFF1C 0xFF1E 0xFF1E 0xFF1C 0xFF3B 0xFF3D 0xFF3D 0xFF3B 0xFF5B 0xFF5D 0xFF5D 0xFF5B 0xFF5F 0xFF60 0xFF60 0xFF5F 0xFF62 0xFF63 0xFF63 0xFF62 #END ./mytool/uni/jis-0201.my0000644000175000017500000020673607532460064014713 0ustar henrichhenrichYUDIT-UMAP 1.0jis-0201Ncreated by mytool 2000-05-15 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|} >abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}\~./mytool/uni/viscii.txt0000644000175000017500000003013207532460064015207 0ustar henrichhenrich# # Copyright 1996, 1997, 1998 Computing Research Labs, # New Mexico State University # # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), # to deal in the Software without restriction, including without limitation # the rights to use, copy, modify, merge, publish, distribute, sublicense, # and/or sell copies of the Software, and to permit persons to whom the # Software is furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT # OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR # THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # # VISCII 1.1 Vietnamese. Typed in by hand from the Viet-STD VISCII document # available on the net. # # Mark Leisher # 06 March 1998 # # Progfou # 1999-11-22 - corrected a typo (0x86 is SMALL not CAPITAL) # 0x00 0x0000 # 0x01 0x0001 # 0x02 0x1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE 0x03 0x0003 # 0x04 0x0004 # 0x05 0x1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE 0x06 0x1EAA # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE 0x07 0x0007 # 0x08 0x0008 # 0x09 0x0009 # 0x0A 0x000A # 0x0B 0x000B # 0x0C 0x000C # 0x0D 0x000D # 0x0E 0x000E # 0x0F 0x000F # 0x10 0x0010 # 0x11 0x0011 # 0x12 0x0012 # 0x13 0x0013 # 0x14 0x1EF6 # LATIN CAPITAL LETTER Y WITH HOOK ABOVE 0x15 0x0015 # 0x16 0x0016 # 0x17 0x0017 # 0x18 0x0018 # 0x19 0x1EF8 # LATIN CAPITAL LETTER Y WITH TILDE 0x1A 0x001A # 0x1B 0x001B # 0x1C 0x001C # 0x1D 0x001D # 0x1E 0x1EF4 # LATIN CAPITAL LETTER Y WITH DOT BELOW 0x1F 0x001F # 0x20 0x0020 # SPACE 0x21 0x0021 # EXCLAMATION MARK 0x22 0x0022 # QUOTATION MARK 0x23 0x0023 # NUMBER SIGN 0x24 0x0024 # DOLLAR SIGN 0x25 0x0025 # PERCENT SIGN 0x26 0x0026 # AMPERSAND 0x27 0x0027 # APOSTROPHE 0x28 0x0028 # LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK 0x2B 0x002B # PLUS SIGN 0x2C 0x002C # COMMA 0x2D 0x002D # HYPHEN-MINUS 0x2E 0x002E # FULL STOP 0x2F 0x002F # SOLIDUS 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE 0x3A 0x003A # COLON 0x3B 0x003B # SEMICOLON 0x3C 0x003C # LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN 0x3E 0x003E # GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK 0x40 0x0040 # COMMERCIAL AT 0x41 0x0041 # LATIN CAPITAL LETTER A 0x42 0x0042 # LATIN CAPITAL LETTER B 0x43 0x0043 # LATIN CAPITAL LETTER C 0x44 0x0044 # LATIN CAPITAL LETTER D 0x45 0x0045 # LATIN CAPITAL LETTER E 0x46 0x0046 # LATIN CAPITAL LETTER F 0x47 0x0047 # LATIN CAPITAL LETTER G 0x48 0x0048 # LATIN CAPITAL LETTER H 0x49 0x0049 # LATIN CAPITAL LETTER I 0x4A 0x004A # LATIN CAPITAL LETTER J 0x4B 0x004B # LATIN CAPITAL LETTER K 0x4C 0x004C # LATIN CAPITAL LETTER L 0x4D 0x004D # LATIN CAPITAL LETTER M 0x4E 0x004E # LATIN CAPITAL LETTER N 0x4F 0x004F # LATIN CAPITAL LETTER O 0x50 0x0050 # LATIN CAPITAL LETTER P 0x51 0x0051 # LATIN CAPITAL LETTER Q 0x52 0x0052 # LATIN CAPITAL LETTER R 0x53 0x0053 # LATIN CAPITAL LETTER S 0x54 0x0054 # LATIN CAPITAL LETTER T 0x55 0x0055 # LATIN CAPITAL LETTER U 0x56 0x0056 # LATIN CAPITAL LETTER V 0x57 0x0057 # LATIN CAPITAL LETTER W 0x58 0x0058 # LATIN CAPITAL LETTER X 0x59 0x0059 # LATIN CAPITAL LETTER Y 0x5A 0x005A # LATIN CAPITAL LETTER Z 0x5B 0x005B # LEFT SQUARE BRACKET 0x5C 0x005C # REVERSE SOLIDUS 0x5D 0x005D # RIGHT SQUARE BRACKET 0x5E 0x005E # CIRCUMFLEX ACCENT 0x5F 0x005F # LOW LINE 0x60 0x0060 # GRAVE ACCENT 0x61 0x0061 # LATIN SMALL LETTER A 0x62 0x0062 # LATIN SMALL LETTER B 0x63 0x0063 # LATIN SMALL LETTER C 0x64 0x0064 # LATIN SMALL LETTER D 0x65 0x0065 # LATIN SMALL LETTER E 0x66 0x0066 # LATIN SMALL LETTER F 0x67 0x0067 # LATIN SMALL LETTER G 0x68 0x0068 # LATIN SMALL LETTER H 0x69 0x0069 # LATIN SMALL LETTER I 0x6A 0x006A # LATIN SMALL LETTER J 0x6B 0x006B # LATIN SMALL LETTER K 0x6C 0x006C # LATIN SMALL LETTER L 0x6D 0x006D # LATIN SMALL LETTER M 0x6E 0x006E # LATIN SMALL LETTER N 0x6F 0x006F # LATIN SMALL LETTER O 0x70 0x0070 # LATIN SMALL LETTER P 0x71 0x0071 # LATIN SMALL LETTER Q 0x72 0x0072 # LATIN SMALL LETTER R 0x73 0x0073 # LATIN SMALL LETTER S 0x74 0x0074 # LATIN SMALL LETTER T 0x75 0x0075 # LATIN SMALL LETTER U 0x76 0x0076 # LATIN SMALL LETTER V 0x77 0x0077 # LATIN SMALL LETTER W 0x78 0x0078 # LATIN SMALL LETTER X 0x79 0x0079 # LATIN SMALL LETTER Y 0x7A 0x007A # LATIN SMALL LETTER Z 0x7B 0x007B # LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET 0x7E 0x007E # TILDE 0x7F 0x007F # 0x80 0x1EA0 # LATIN CAPITAL LETTER A WITH DOT BELOW 0x81 0x1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE 0x82 0x1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE 0x83 0x1EB6 # LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW 0x84 0x1EA4 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE 0x85 0x1EA6 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE 0x86 0x1EA8 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 0x87 0x1EAC # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW 0x88 0x1EBC # LATIN CAPITAL LETTER E WITH TILDE 0x89 0x1EB8 # LATIN CAPITAL LETTER E WITH DOT BELOW 0x8A 0x1EBE # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE 0x8B 0x1EC0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE 0x8C 0x1EC2 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 0x8D 0x1EC4 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE 0x8E 0x1EC6 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW 0x8F 0x1ED0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE 0x90 0x1ED2 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE 0x91 0x1ED4 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 0x92 0x1ED6 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE 0x93 0x1ED8 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW 0x94 0x1EE2 # LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW 0x95 0x1EDA # LATIN CAPITAL LETTER O WITH HORN AND ACUTE 0x96 0x1EDC # LATIN CAPITAL LETTER O WITH HORN AND GRAVE 0x97 0x1EDE # LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE 0x98 0x1ECA # LATIN CAPITAL LETTER I WITH DOT BELOW 0x99 0x1ECE # LATIN CAPITAL LETTER O WITH HOOK ABOVE 0x9A 0x1ECC # LATIN CAPITAL LETTER O WITH DOT BELOW 0x9B 0x1EC8 # LATIN CAPITAL LETTER I WITH HOOK ABOVE 0x9C 0x1EE6 # LATIN CAPITAL LETTER U WITH HOOK ABOVE 0x9D 0x0168 # LATIN CAPITAL LETTER U WITH TILDE 0x9E 0x1EE4 # LATIN CAPITAL LETTER U WITH DOT BELOW 0x9F 0x1EF2 # LATIN CAPITAL LETTER Y WITH GRAVE 0xA0 0x00D5 # LATIN CAPITAL LETTER O WITH TILDE 0xA1 0x1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE 0xA2 0x1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE 0xA3 0x1EB7 # LATIN SMALL LETTER A WITH BREVE AND DOT BELOW 0xA4 0x1EA5 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE 0xA5 0x1EA7 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE 0xA6 0x1EA9 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 0xA7 0x1EAD # LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW 0xA8 0x1EBD # LATIN SMALL LETTER E WITH TILDE 0xA9 0x1EB9 # LATIN SMALL LETTER E WITH DOT BELOW 0xAA 0x1EBF # LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE 0xAB 0x1EC1 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE 0xAC 0x1EC3 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 0xAD 0x1EC5 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE 0xAE 0x1EC7 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW 0xAF 0x1ED1 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE 0xB0 0x1ED3 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE 0xB1 0x1ED5 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 0xB2 0x1ED7 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE 0xB3 0x1EE0 # LATIN CAPITAL LETTER O WITH HORN AND TILDE 0xB4 0x01A0 # LATIN CAPITAL LETTER O WITH HORN 0xB5 0x1ED9 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW 0xB6 0x1EDD # LATIN SMALL LETTER O WITH HORN AND GRAVE 0xB7 0x1EDF # LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE 0xB8 0x1ECB # LATIN SMALL LETTER I WITH DOT BELOW 0xB9 0x1EF0 # LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW 0xBA 0x1EE8 # LATIN CAPITAL LETTER U WITH HORN AND ACUTE 0xBB 0x1EEA # LATIN CAPITAL LETTER U WITH HORN AND GRAVE 0xBC 0x1EEC # LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE 0xBD 0x01A1 # LATIN SMALL LETTER O WITH HORN 0xBE 0x1EDB # LATIN SMALL LETTER O WITH HORN AND ACUTE 0xBF 0x01AF # LATIN CAPITAL LETTER U WITH HORN 0xC0 0x00C0 # LATIN CAPITAL LETTER A WITH GRAVE 0xC1 0x00C1 # LATIN CAPITAL LETTER A WITH ACUTE 0xC2 0x00C2 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX 0xC3 0x00C3 # LATIN CAPITAL LETTER A WITH TILDE 0xC4 0x1EA2 # LATIN CAPITAL LETTER A WITH HOOK ABOVE 0xC5 0x0102 # LATIN CAPITAL LETTER A WITH BREVE 0xC6 0x1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE 0xC7 0x1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE 0xC8 0x00C8 # LATIN CAPITAL LETTER E WITH GRAVE 0xC9 0x00C9 # LATIN CAPITAL LETTER E WITH ACUTE 0xCA 0x00CA # LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0xCB 0x1EBA # LATIN CAPITAL LETTER E WITH HOOK ABOVE 0xCC 0x00CC # LATIN CAPITAL LETTER I WITH GRAVE 0xCD 0x00CD # LATIN CAPITAL LETTER I WITH ACUTE 0xCE 0x0128 # LATIN CAPITAL LETTER I WITH TILDE 0xCF 0x1EF3 # LATIN SMALL LETTER Y WITH GRAVE 0xD0 0x0110 # LATIN CAPITAL LETTER D WITH STROKE 0xD1 0x1EE9 # LATIN SMALL LETTER U WITH HORN AND ACUTE 0xD2 0x00D2 # LATIN CAPITAL LETTER O WITH GRAVE 0xD3 0x00D3 # LATIN CAPITAL LETTER O WITH ACUTE 0xD4 0x00D4 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0xD5 0x1EA1 # LATIN SMALL LETTER A WITH DOT BELOW 0xD6 0x1EF7 # LATIN SMALL LETTER Y WITH HOOK ABOVE 0xD7 0x1EEB # LATIN SMALL LETTER U WITH HORN AND GRAVE 0xD8 0x1EED # LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE 0xD9 0x00D9 # LATIN CAPITAL LETTER U WITH GRAVE 0xDA 0x00DA # LATIN CAPITAL LETTER U WITH ACUTE 0xDB 0x1EF9 # LATIN SMALL LETTER Y WITH TILDE 0xDC 0x1EF5 # LATIN SMALL LETTER Y WITH DOT BELOW 0xDD 0x00DD # LATIN CAPITAL LETTER Y WITH ACUTE 0xDE 0x1EE1 # LATIN SMALL LETTER O WITH HORN AND TILDE 0xDF 0x01B0 # LATIN SMALL LETTER U WITH HORN 0xE0 0x00E0 # LATIN SMALL LETTER A WITH GRAVE 0xE1 0x00E1 # LATIN SMALL LETTER A WITH ACUTE 0xE2 0x00E2 # LATIN SMALL LETTER A WITH CIRCUMFLEX 0xE3 0x00E3 # LATIN SMALL LETTER A WITH TILDE 0xE4 0x1EA3 # LATIN SMALL LETTER A WITH HOOK ABOVE 0xE5 0x0103 # LATIN SMALL LETTER A WITH BREVE 0xE6 0x1EEF # LATIN SMALL LETTER U WITH HORN AND TILDE 0xE7 0x1EAB # LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE 0xE8 0x00E8 # LATIN SMALL LETTER E WITH GRAVE 0xE9 0x00E9 # LATIN SMALL LETTER E WITH ACUTE 0xEA 0x00EA # LATIN SMALL LETTER E WITH CIRCUMFLEX 0xEB 0x1EBB # LATIN SMALL LETTER E WITH HOOK ABOVE 0xEC 0x00EC # LATIN SMALL LETTER I WITH GRAVE 0xED 0x00ED # LATIN SMALL LETTER I WITH ACUTE 0xEE 0x0129 # LATIN SMALL LETTER I WITH TILDE 0xEF 0x1EC9 # LATIN SMALL LETTER I WITH HOOK ABOVE 0xF0 0x0111 # LATIN SMALL LETTER D WITH STROKE 0xF1 0x1EF1 # LATIN SMALL LETTER U WITH HORN AND DOT BELOW 0xF2 0x00F2 # LATIN SMALL LETTER O WITH GRAVE 0xF3 0x00F3 # LATIN SMALL LETTER O WITH ACUTE 0xF4 0x00F4 # LATIN SMALL LETTER O WITH CIRCUMFLEX 0xF5 0x00F5 # LATIN SMALL LETTER O WITH TILDE 0xF6 0x1ECF # LATIN SMALL LETTER O WITH HOOK ABOVE 0xF7 0x1ECD # LATIN SMALL LETTER O WITH DOT BELOW 0xF8 0x1EE5 # LATIN SMALL LETTER U WITH DOT BELOW 0xF9 0x00F9 # LATIN SMALL LETTER U WITH GRAVE 0xFA 0x00FA # LATIN SMALL LETTER U WITH ACUTE 0xFB 0x0169 # LATIN SMALL LETTER U WITH TILDE 0xFC 0x1EE7 # LATIN SMALL LETTER U WITH HOOK ABOVE 0xFD 0x00FD # LATIN SMALL LETTER Y WITH ACUTE 0xFE 0x1EE3 # LATIN SMALL LETTER O WITH HORN AND DOT BELOW 0xFF 0x1EEE # LATIN CAPITAL LETTER U WITH HORN AND TILDE ./mytool/uni/ksx-1001.my0000644000175000017500000044225207532460064014725 0ustar henrichhenrichYUDIT-UMAP 1.0ksx-1001Ncreated by mytool 2002-04-07!}!~000 % &0 "%<"<    0000 0 0 0 0 0000"`"d"e""4 2 3!!+&B&@" "#"""a"R ;&&%%%%%%%%%%%!!!!!0"j"k""=""5"+","" """""*")"'"(!!""^".""! 0%%%%&d&`&a&e&g&c"%%%%%%%%%%%&h&&&& !!!!!!&m&i&j&l22!3!"33!!   !"#$%&'()*+,-./0123456789:;=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]1112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111!p!q!r!s!t!u!v!w!x!y!`!a!b!c!d!e!f!g!h!i%%% %%%%%,%$%4%<%%%%%%%#%3%+%;%K% %/%(%7%?%%0%%%8%B%%%%%%%% %%%!%"%&%'%)%*%-%.%1%2%5%6%9%:%=%>%@%A%C%D%E%F%G%H%I%J333!3333333333333333333333333333333333333333333333333333!&3333333333333333333333&2?ARfJ2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{$$$$$$$$$$$$$$$$$$$$$$$$$$$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n!S!T![!\!]!^'138@BSgKI2222222222 2 2 2 2 22222222222222$$$$$$$$$$$$$$$$$$$$$$$$$$$t$u$v$w$x$y$z${$|$}$~$$$$ t  0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO  $,-/0189<@KMTX\pqtwxzĬȬ̬լ׬  ),-458DEGIMOPTXaclĻȻлӻ $%')-0148@ACDEILMP]ļͼϼмѼռؼܼ $,@HILPXYdhԽսؽܽ DEHLNTUWYZ[`adhjpqstu{|}оѾԾ׾ؾ @ADHPQUſ̿ͿпԿܿ߿DEHLTUWXY`dfhpų̴̵̸̘̙̜̠̩̫̬̭̼ $(,9\`dlmoqx͈͔͕ͤͥͧͩ͘͜Ͱ  !$(0135XY\_`ahikmtux|΄΅·ΉΐΑΔΘΠΡΣΤΥάέ $,-/018TUX\degipqtxπυόϡϨϰ-458ahe9iouvv{U[WQ|P(S\E]bcnddn py[ݎ}EN~NPe]^aiWqTGu+N^Pgph@Q RRjwR`/PHacdhpLt/t{Pʼnܙ(R.`]bOQIS!X^fm8prs{P[SfckNVPXJX`*a'biЛA[}_NPTU[ ]]e*eNh!jKrvw}^NߏNʙUNNEN]NOQwRS@SSTVWuW[]^abeQggikPkklBnpxrstwwzv}  ߈b3dҚEןW \@ʗTzَ͐X\Hcz[_zyzP&R8RSwWbcrk mw7SsWhvg:jopm̙Kfwkx<SW-YNcisxEzz|us5RWGuG{`̒jXQKRKRbhiuPRRaeh9it~{K뉲9љI NYdfjt4yy~_ &O S`%bqlr}}fNQbw܀OOQvQUVhW;WWYYGY[\]]^~_beeggg^hhj_k:l#l}lmst&t*ttuxuxxyAyGyHyz{}}-OHw!$Qe}OvT bhTUQ: Za bbfqV cOczSW!gi`ns"u7#$%} &'rVZ()*+,NC-QgYHg.Ys^tdy_`lbc{[[R/Yt_)`012tY3456789:;<=>?@ABCoDE`FGfHI\?JKLMNOPQZ%g{}RSTUVWXY\r-RL]Pde,ko|C~͉dbɁ؈^gmjrttoO] _ QcueNPQiQhj|||oҏOQ7RTB^anb>ejoy*܈#bjRfkwpy+bBabe#o#qIt}o&#JQRRm pȈ^eko|>suNO6V_\]`s{-΀F4HaOoyR`ddjo^prv\2ouxy}ɓX_g'p't|`~Q!p(rbxʌŒڌNP[^eqvBwJ|'XZA\bjmov;}/~78KRegimAnpt t`uYv$xk,^Qmb.xOP+]m}*_aDhaRҀQQi^z}uOR)STU\e`gNhmlrrttbu|lyψ̑ЖTo~qtWgmt3x,z{ |ditjuxx虬T[^Uo NSMZ)]_Nabc=fifno+pcw,;E;Ubg+l jzNY__g}T+WYZ[f'ghkqdu㐁EL@[_lsvv߄ QQMQRhlww }}bnŅQT T}ffi'nvw‡iOQRY^=aUdxdyfgj!kkr_ratAw8wۀ(g(lrgvwfzFklY"g&SoXY^cf4gsn:s+zׂד(R]aab bdeiYkfkq!su]~Fj'aXPRT;UOelv} } ^RlriTsZ\>]K_L_g*hicneef ginx}!+*2P OcW_bcgonCqvÀ̀ڈ)MjO/Op^gh"v}v~D^aj qiqujd~ACO{OpQ^hl>lNlr{ălt:PRXdjtvVx9eS^_R%wINPQu\[^wff:ghpuuyzݏ' OX!X1[fnkemnzo}su+܉\OPSS\[_g yy/9;g,NvOYI\\\cghpqt+~+"ҜN NOPRVRoT&TWY+Zf[Z[u[^fbvewemnnr6{&|?6PQ@tܖDٜSRT)VtXYTYn_abnfl~qv||}gO[__b])g hx|~ClNPSS*SQYZb^`abIbyegikkkklht5uxxyy|}ဥ>ƒ芹l^۟;V[*_lejkm\opr]sӘ;al7XNMNNNO:Oy@y`y{}}r цLjߊP^܍fߞRJigjPR*\qeclUsu#u{x0Nwdkq^N kgIhnkcoN PPQUFUV[@\\^8^^^`hQjanXr=r@rvye{ԈsaޗX^tUlza}"rrruu%m{XX]^^_`UbceMfffhhrt^{n}n}r͟ YYm^-`ffsglPmo_wxƑ˓+NPQHU[ [bGe~en2q}ttDttvly}~Uz9ux%MSh\QiTlm)n+ ;-gRafk~ ]emqnWY[`'`bff_s)svw{lVreNRkrmz{9}0oSV/XQ[\\]b@cdf-hlmnppqu&uuv{{|+} }9,m4 a7O\lg_m|~[k]d \s[`g~mފ R7ppQxpOSUVWXZ[\\^%ab bKcde6exj9kl4mo1qrsxttv&wayzWz|}}~a)1څꈖ8Bl֗ӛSX~Y[p[moZqt!t]__`BehiojSkm5msvw{M}#@cbđb Se]]']it_hob҉6rNNXPRSGbf~i^OSV6YZ\8\N\M^_`Cef/fBggswy:ń͉fiUzW[_`obi kn\q{҇UXߘO8OOT{Z [aT3UXbXYgZ[`aeVefdhlZopqsR{}2\KlsDs:ntevzi~ Q@Xdtuvp͙Tn&tzzهxZI[[himcstt,x}UL.f_egljsP-ZkjwY]l]s%uOPQX/Y-YY[]bdddfjHqtdzz~G~^p‡ YÐRa~k2mt~%OPQRWX[^aBimngnqtbu(u,s8Ɏ NOQPvQ*SSS[[\$aaer[st@vyPyy}Ն^GꖅR_gef1h/q\z6 NjRkoqSK1NqQCSTWWWZZ[`(a?clm9nrnr0s?tWшE`ƖbXg^OMPIPSqW YZ\ apfn-r2tK}Äf?_[U˛ONsOQQjU/U[z[^|^}^``aa ce8g ggiaiblm'n8os6s7t\u1vR}8Պۊ0BJ>zIɓnX kӀQAYk\9odsגۀbp}hW`iaGkNYTm-pcl㐑QaɁOPQ[aadikuwdcpNNO Y7Y]__[`!r>supuy 3Q茽 p7vNNRSpTVY[__nn}j5mwNOZO~Xen8NXYY`AzOQeSDNRi[UNR:TYY[P[W[\`caHnpqnstux}+(ɊǖO\RVef(p|pr5}Lr[qhkozv\fo[{|*6NNS X4XXYl\^3^_5cfgVjjk o?rFsPtz|x߁烊l#ψݍwQTW([bMgPh=hn=np}~! KNr-{͓OGONQ2TY^bguinjlnrs*u{}5W[Ο_RT Z[dXeunrvzM{|M~>߃{+ʍd_iOCOzPQhQxRMRjXaX|Y`\\U^`b0hkloqNt u0u8uQvr{L{{{~n>I?"+ZkRb*bmYvdz{}vS`\^o8p|cdzvNNNP\PuTHY[^@^^_`c:e?etefvfxgihjkcl@mmnn^ppssu:w[xyz z}|}Gꌞ-Jؒf̓ V\R6RU|X$^_`choym{,ͅDd=LJOQFQRV2__kcdefAffghhioonqgqr*tw:yVyZyz z||}D~pT m;՜e|[X\ SRbsP'[_`akhmt.z.}B}~1k*5~OPWP]^c+jN;OOOPZY݀TjThUYO[]^f]g1gh*lm2nJopsu|L}},}ۊ;p31NRDz|OQQW[\fYj=mZnoq uoz"!u˙N-NFS}jiklAzXafbpuu~RINKSTW0W@_ccdoe/efzggkbl`lo,wx%yIyW}󂝂rvzz7~TwUUXuc/d"fIfKhmikm%nsthtu[uvwwy~ ~/:ю돰2csOSYZ^hNtuyz̏egWoW}ݏ/_aoNOPSU]o]k!kdx{IʐncId>w@z/jdoqttz|~|~ }LR9[dg-}.PSXyaXaYaezًP P!RuU1Z<^_pa4e^f f6fino2sv!z9YքPW[[_icx&}܅!ǑQg{VQY`UPRT\:a}bbdenv `_NSCUY)]dlmszw!QTU_do}M5P\lmuw|=|dyXY^cwrRuwk܌^ftm}˗QRCfmn}.^RRTabbhiiZj5pq&x]yyyz xՃIIbOVqwׇ[_gQSXZ[`ad`~=p%dP]gXbciixjnkvy˂)ύKۚ6 Nu\y]z{Q{~.ĎYtf%i?tCQg.QE_l]w`ST9V4Z6\1pZ퍣_PtNS`n,\dOP$U\^_`ehlmquuvazzI}}n􆩏əRRGRŘ퉪NgoO[glmxtx'ݓ|yz1_NTU>XY`bSbg6iU5@P,SSUDW|bXdfkgoot"t88TQVWf_HakNpXp}Yj+cw=XTd-i[^noiQLSY*` aKklpl{΂ԍƐdodeQNTWa_hvu{R}qXí*9PxYWYb*a]ryWaZF]bddgwlm>r,t6x4wۘR$WBgrHt㌩*QkScLOiU`eWlmrLrz_mopaOPObArG{}MWj^sg UT [^c^_ e=[OHSS STTW^`bbcUlmfux2ށ/ބa ^EffprOR}_jaSgSjotyhhyǘĚCTziSJ_|buvBS9_<_lsubu{FNO\c>myrϘ0NQDRW_blnppPpqstiJaQn_W`agfYJNNNT|XXY}\_'b6bHf fgkmimnVnooop]rt%tZtvy\|~ႦkN_twje`bwZZfmn>t?B_`{T_l^lm*p}y ;ST[j:pkuuyyqAt de+xxzkN8UYP[^{`ckafehSnqet}i%m;ns>AQ^L_`M`a0aLfCfDiln_nobqLtv{|'RWQS/V^_`b`affgjmoppsj~j4ԊRsr[jkTV[]eHefhmmr;uMOPSTT)w)x"%"R!$",)v(,(y(v(z"/(!("!?(*(-),)!)#!@)*)-)"($)$)%(&)&)'(()(())))0(/)/(+)+(.)."'"0"("+"*"-")%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x,',!,",#,$,%,&,(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,Q,R,S,T,U,V,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,W!*!.!/!0!1"S"T!%!&"6!G!H!X)y)z){)|)})~"f!I"5'$"`"e"b'Y!J(w(x({(|(}(~%0%1%2%3%4%5%6%7%8%9%!%"%#%$%%%&%'%(%)%*!g!h!f!i!j"U"X"V"Y"W"!"""#!S"$!T!t!u"3"2!n!p!D!P!+!|!}!{!z!r!s"1!E!q!-!o!V!A!U!B!C!l!m!x!y!v!w"A!Q!R(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f&!&,&"&-&#&H&G&.&$&B&A&/&&&F&E&1&%&D&C&0&'&<&I&J&7&K&L&2&)&>&M&N&9&O&P&4&(&Q&R&8&=&S&T&3&*&U&V&:&?&W&X&5&+&Y&Z&;&[&\&@&]&^&_&`&a&b&c&d&6"F!a!`"C"G"H"K"J"I"L!c!b":"9!e!d"8"7!_!^"B![!]!\"D"E!Z!Y"O"N"P"Q!O!N"<"="@";">"?"M"["\"]"Z!!!"!#!(!4!5!6!7!8!9!:!;!*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s+!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L"_(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L"^'I'J'K'L'M':';'\']'^'6'7'8'T'U'V'W'X'!'"'#'%'+','-'.'/'0'1'2'3'4'''(')'*'='>'e'f'g'h'a'b'c'?'@'A'B'C'D'E'F'G'H'N'O'P'Q'R'S'Z'["c'l'&'`'o"a'<'m'5'9'j'k'_"d'd'n'ilioKvRX2m[_2_>y;\tuds&]`a&Nx\0c*qiMz|/S!q+gQR,Nyq}^?{:y9NRc+k`NzKwe%JaTLja\c_-KkU/Vuex^@l#iMj'iv{;gioLPf^Ad,XLyqN_z$f2z{z=LHoMUUS"lQd'lRv1N{PQK?m$m(^Bvbm\\u`9TNt5S[V5l$dfqjKlK@lrPjyrl%P_gjPk\Q[i}L[WZaV6c_^C^DJ!nlS#n7xOjHn8q,q%iNy<eylj]VmBx%e:[XJ"QMnmlk^Ec`JIriUNv6NBVGc4q-jbWBs'MjknY2}%vUUbx5Luu5d-gkqUp;i5LIzUaTWV\A^Fzocaas\vN|[Dxq\deo\1UVsZKA[CYzSnz8}&kot&LJs(s[['v7OfprKZgRWCvph^e&egJ#L'jIx6z%q.oNKmv0oOiOw^NS\w[(Kx_!]auJi6glnnsp_?LKPAtR`:_@N`\R}jVvjJhic,sPJ$[x^GkpqVebLLK{jc_AVmiPn9UcQSeph4kCj*z|uvp<}T`;NCP:w:XswMd.T_Pgl}R.noUWjdx"MkW?{1Ml\2PlN}npLBPmews|n"Y3Xti7N.Y"XqTOe'URV)t"qWUXp=WPTPWOkj}k[m|EKB}UtHhjusy^SolS]Bo7gTJJY{z}V*txww\,WW_"N>Spp$alOgsKm)J>tovN^{P;U7nqt(\xK'ZN`fm%nr\yy\s\xrty|qP<[yW1K|p%K}UtMmJ%V+PBp>R=L$z6LMZzvOi8XuLNWMTQimJkYb}2c-VLY4a'nSPC}3UdOhmCP2N~Z(xP}VxQxR\S]b{y]Ac5m]NDK!]c|]y/R{O!d(t6l~c.gm}AZbX3]dpovqzpQuZO\T\&o?NO`YYVlTjKJ?U0OiqmLOdxdmWX}'j+v2Opy=ftK[sQiQs)P`iRZcbRv"atZdgUu?O"M/O#M0q~P#a/x#J&w;rj^HiS^I}^J@yjQNnTTRY#}(WYwNz>OVWpkaxE\z]Cy_go}ev#Y|})gnUeoPM1w"q2q1M2Z+J'cb{t\\Bp'f@Jmhkeh\Cm^SrLwNTg+KCa1w2SsSRu@_]nsgq}4rHsRntbSLQ_ji:YWuMqrzGYxTBve]Egrm_JK[zh5S&}5yIdb{=W$NENUVfe=^Mlsm`ll{>_kaxy>Ps`*hbbTR}e(YSS^t8w<\}hldgcwl(zqerPtR/\eP%q4|1Lx]FzQw_z(nu^Ngsw,kDma`+]GR3R?JL{?e}]eXMltPuhmPRYXvf[*w`XYt#t]oQY5m+c7n;M4`sjMluhnK)q/JMl)rk}oysfAlXm,jNh_^OR&gtQVfBccd0X4v%s^W%whhF{f]f\~XZZ,j0c8J*ayj1rlznnUytRl{{}p`=NcxF^._Ee>m-zjMnm&m.pm]!m/|xXkLyM5z)a]bUmO]"yJjhemSkiTazdLadhGN[\Uw5|spsN/q5oRhHkqKT`>cxji|2`tO`n%z*fCa2J+cdi;bVsrnVj2PvlYZKO(]#X[yNiUcQR<X,sLM{vVguhocyR;ssc{^PN0VwqYuA\Du;^Q\f^RmbnvjOpnc|S_Sta3a4tS_FiV[+v&c9kEt)M6RyZ-RcOQK\LzO]h)c;c:`Znw\3SuW&v5W[aUTj_#}_PwmTK*d[a{K"S`d?{@Z>dMV9o@a|v9_Gd1\g\hzVSvqZzrb}UOPxM_uKdpK+WDb~]ZZ.JnU9c!hcs+O)SwTqNdhreug.V:_ld@hdX5d\t9q6b^a5Moq'NeK]Ycs,Pyl+^Swiyua^Knc|HMpyv_pe?N?|am0}Qv;yOkZJAR8MqcS}ffmczp*yP|bx'aenygvjm|4uBW\pu]hSmu|Z?L{Szt$oWTC{c{m`-jn{3dBvgR]_L|Ie)`vv3a~KpjojpZ@x4krdCiWdqJoNW|JsaKDceKEj4i=WIk[m1LCw>|KxtY7sSsTwdwQX7N1JB{4KFpvUgjPLTK/t*i/uCiX]iqsU{^;t{}s}rw&]ITSL(ZALUYdzJecS<JpPDJPz+kkgxYeQWs$T{|czXsUO+ksU|STM|Yfbyb!kT`wd2L|{dt+P=Jqo8W@nz}tSc{BUh[.a6x7`?{C]jb"n&vhvu]JPb]&]kdyc/P|t|LJ,};}Gg2jQ_tQld^eCY&M<semUY:mg{5xl`gLYTFg%UuS>|{dr_uhxxmNG}vhXMXgVLZJc_vpGpFX:qttpuL|ejEjs][\W^}ryUGXPpHQ!Q"YTVhYJZ1XG\bsNutq9ZSvjOu}.JR_4W]z:n'u=xumhTaQ#aVyx[JKyTTY\n>wmRnafwy]mh[[3Qw`0TbvWWyX]M}r+M=xBr,J-J.O.cB\7[ZY;JsvSfxjujvvyO/JSJ/R0q:W3cCs}^Z^[o^bcn{_wWJNh[[q;iqz7PFL+n(KzyyL}S~dPrnTU_M|8QPrMwRJTUYX^MYn)v<L[pI||hIt~g|W^^\p,L~Maa:[oZ2Q%\8XvQ$Mb\jpwpJP>]\TVSVmPM!_5_xT!N2hJkucUuPu!Y'e+fKuqeEy#`[vkKqYju"WQQxjxjyZ3o_qoevn?bdP?z,uQg3i>rN[4|N]ng4W4w4M>ZiO0wYsfNYN*KHP'pKPGdE[`UZW'n@xvuRmiY<eFu#ZTb'{|q\JthzNiixbeP9TrQ&_N|tS*L,o`eePU[||fK~mj^1ycT"OvVPUjqnzKe!U1OmmkU2U<}bs-}[i0Q'}cN3}dzNJ0w'O1f"|6r-oas.\FYkh`a(UvO}^]YQdjrOw?bfb(cVmQiyV1^2`hS+k\_/JCn|}CkvO2YlY=X_T8k>]o]p]q]rY>{FO3n}d+ZEXlQ(b)^`2|~Q+Wz{HbWT#pxW(agS?odWEkb|gd"bhfP{hthett`^v4jRy{`BJdg7j}Y]Z4n*{i[KZ5q>S,{I_OS@cWof|Pi@uSl\w7j8Qy\Hj9q^W6O5Y(ln]*M"h.a=rQiAR|[5sgX~|Qm2t/{#|An+T%trnY{JMcX;e[xwvTW)KIfQpLX.ySU~Xr|ZkbXmVVQ`3|RkHSApMOwmRTX\IWq_;s%tMq?x1iz{KJUyTwJVH|hs=n~g~SBS6L-vzV2RXgXc%g9p-{Lk!T&{MU=q_v{^4UkeH{$T9^ad#W7xn^5VRyUg:kUUwoga>z.ViVng;lKU3N4{%anw({NX={}|iO6mGn,L]v'fzu$}\m3NIoha?z[Kcw){&\9q@mHoCV-}Nh!{tU'qvfSL^x2\k}6ejq`[L]MTHYmu%f{fT}HV!}?|So!g<QnfUir_0X`|:}/pN[aeIm4`CcXi{j(}7{'iB}wbY\lh"fp}x}yv?g'fWTsTIVzWra@[bfXg=pOs>b,u7`p}8chT'h|zRxoVSU4pPwpn3j:jSmI]+e,}!_Pl3_Qmmx8wzx+t`T:d3iZ^6Y?Y@VoYLZ*_eweL2_yW`T;}zL3[s_RNJnZdd{OO7nCNjb-WazuUIx,gYsiXmcDpqhe`znDY^k"k#|Bj;h+^bmoh#OqT<|jg>|rV4b.S7zLz\m5ach,h]oit=O8i[Q,ZGkIhL^7V\-bkV|JyTZtWL!O:u8YCPhcEkxr1O;S-haNl`4^c]wr2svv[W~x_wrP)fZu&Wb3^g\TMs8i!rrskpWOWO_h@hAOci"P*sAP+TdoqCn_VktYWfZ7]{]OX#ZYpXoDaXqTmrU[U\sDKWb6oq{USX]PpYK3U]M'P,Q:qDe3{uia}`|<Z"Z#R!Robm^iN\r5Pd]QaH[7_cm9qEsOW+a,cknGaIJzp{zapZLgZtL?NmU)zbPekVl__|wV^jK4o>L5O=orb7Lhp|V`qFb8k+K5XQtNswWFQ;w*mJWSXzvEQL]|_}ye`Jr}S0tsZIf^x:hPX{jUV#vFr[d|h2ZZr\{Vi2n-zc\nujf`p}W,uEn`[e]^Ypi#qyrD`Ki$b9c1|kM(L6p[f:M)sCaYo+gE`isET@U?].y|L@e"N8XRyVq*NQvG[k_~XawsWgT~Q<eOK6Z8MDV>b:OX`Lky}}WhKXibh:cGlMlNV?c'_V}hnav(]}x;hQyWNnlOi%VUMEm:Q=O>l;R1LiYDi|Q>l<e-w0LjSDV@V}a!^=v)Z$V$uFa"iFrEtiVlkSl=b\^kp\k?WNQ?u+y}J\MFr6]~L7[8PiN]k@}"xKjVq0[NwC[OK$x`{WkJ`!NMT\}XRvr7zvv*zwXft1hRJELkbnb;w-xasl^!d}cl]/]0K7hSa#R`p~i&Krms\Y`MwZ[9L.Z[MG]1X/c#Norsx3`Nu}klSE|lR[Tk^"efp0UDmtcmhBmuW|m;v+r8vHSfr]O?k,O@f(}iOA`_^l`"t?boYqqGK8y~[:ZuvlZ\zd`O]2f)ossmkzyfJ]U^J^_df}u,duicmKOdXS]3Tlr9_7KN{XPY]Rwtg\d%|#[;r:i}PJuVYEd4m'j=f~wDu-Y`J4xbOBl>e4MHnHgHMIy7qhYr[uJ5YFXIY+m<XT\Zb<|ml`R~iGf*bpz;u.{*l{l?|XTeyCnbWimv^mLlcnhTzx]4d5X0XUtjN9VaORP6N"snsx\LPK|$MJWT^#d`nIb]u~T,UQXpxCjWuWX?}@k-U*g(nJJgxcT]jX{Ymwe5P-qqb=cHYU_*[<xdqze6so{Za`Y,uk`6iHKOcI^nb>\oV%bqV~Y!X@\[m=_8j%W-symxuGaJkcr^xLjYSF[fu/Npi~{6brOrw9YsaKZ]Z9k{K9my``t@}<_1co`#}9p1MKm>U@cpmzidUmg]Tve7[gb?nKWtp]N+g^VVaLh3en\"`PU5U!{[yKKst%zHVWie{\}P{vZ%[=lbMwp^vI^oS1|nhCqHNqymrtd6u9\pcqh%r;^$ZLJicZ|YjZyDc${]oJhDULkWY-{+SYU"v^Zv`Qi(uyz/k|`jc2UEqcUnMLmYXAzlqkzY1J7SgxeS2b@r_Mey,MMn.V.Wjg`k.OY\Mm{^pWk^%_W[P[QU#p2\\Jhxf\Nj\[Ri3w[c(W.`aK:eQP\UAXJc)`$i)SG\]x.L8P.XrcJL/T-vQPLJFUBN:JGz0_Xu:ekot]5M*cr{wwP}:}av~Q@hEd8ahLARm[>`bzIaMJ8r`qI^qp_xDnL^rgIbsgacKcLOxo,}~|%z1_Y`RtZqJN#rv!kKq|sG`km|a[ne^uzSqKP/]9QCu1jFpav,uYpk]:r?wE["rvJ:wuKenf`SN%VXT/iISNtBKfq!k2q"k3p4KtT0s2{7ulngt2umOspbnNqLe8WucsOeOFs3dXOyOZzMfcrbunJ;c\NrVYn0teXB\PLnU`vJ}JXVtOV&\>[TWGr~qMbC\^\_o-f+y]j?o.tPNsf,N^UyctMPU8w}\)^v\*rci4R\ifcvgJPNZwJ<nhZ^rwb{L&Z;niuZw\ajNAT1}1f={-xgaNwbuoOGT2LoThnOwW`&VAa\pcqd\qV'tuqNrdP0loy:k5TmbDigk4j!x^wJ{wFOHaPnPitNtUMO[];N,ihT4dGu[zA^)TxowS3k7oxu\mL[UqOqPu2Y.U,bF}#{e_+buv-u3p5a%u]l"m}u4{8[#VJKYeTszk8`7Wlqle/UaWmQQaroy]W0XhK=yZxNyp`mc3t3jBrfp6[VkdrgWUT6yhWAeUijWLSibI|[M-L0j"dvP@p7n!WvbJbKzOk_VKt4mMdRj)d:s"MRvKqfmAh{bMSo5ziy&_=wGx}x|^+[hc]abQFvPkfZylG^xxic^NuzCeWlHsId;f.o6\?N=XCPOOzsJ`WQGi.h=zDbOzEy8\`{0X)e_y'vnvLbxlqZ`qRRLOKJ=]?vo^yz4U-qg^>\@QHQIx>KvTyubaSXix~OL}$NvzPLsf>v.UpQJ|>UqMiz5bPtwMTg#[%bQW"wcj&P!NZ{k[&[^Xej`X*e`V[oFxjdUNw`XWotmMfLtucdJ\ayH|?h'XDK>\.Wwph]@OM\sY0fid<jDdlde{xL;d=M\Yw]_mNYPe#yMM.ONv/}SkmV\e$U6V]yig$VcQKVdUr^zWxXjOUX}X+}K|\`(Us}YL#YySjuuoGSZZ=h(\/p#MU`)^,p:n1n2vMnRVF`es;eadKW#[BJ~OO0!0"0#0$0%0&0'0(0)0*0+0,0-0.0/000102030405060708090:0;0<0=0>0?0@0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~1!1"1#1$1%1&1'1(1)1*1+1,1-1.1/101112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~2!2"2#2$2%2&2'2(2)2*2+2,2-2.2/202122232425262728292:2;2<2=2>2?2@2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2|2}2~3!3"3#3$3%3&3'3(3)3*3+3,3-3.3/303132333435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3{3|3}3~4!4"4#4$4%4&4'4(4)4*4+4,4-4.4/404142434445464748494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|4}4~5!5"5#5$5%5&5'5(5)5*5+5,5-5.5/505152535455565758595:5;5<5=5>5?5@5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z5[5\5]5^5_5`5a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5{5|5}5~6!6"6#6$6%6&6'6(6)6*6+6,6-6.6/606162636465666768696:6;6<6=6>6?6@6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6[6\6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6{6|6}6~7!7"7#7$7%7&7'7(7)7*7+7,7-7.7/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z7[7\7]7^7_7`7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7{7|7}7~8!8"8#8$8%8&8'8(8)8*8+8,8-8.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z8[8\8]8^8_8`8a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}8~9!9"9#9$9%9&9'9(9)9*9+9,9-9.9/909192939495969798999:9;9<9=9>9?9@9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z9[9\9]9^9_9`9a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9{9|9}9~:!:":#:$:%:&:':(:):*:+:,:-:.:/:0:1:2:3:4:5:6:7:8:9:::;:<:=:>:?:@:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:[:\:]:^:_:`:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~;!;";#;$;%;&;';(;);*;+;,;-;.;/;0;1;2;3;4;5;6;7;8;9;:;;;<;=;>;?;@;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z;{;|;};~=?=@=A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=[=\=]=^=_=`=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z={=|=}=~>!>">#>$>%>&>'>(>)>*>+>,>->.>/>0>1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>|>}>~?!?"?#?$?%?&?'?(?)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;????@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?[?\?]?^?_?`?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?z?{?|?}?~@!@"@#@$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@@@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@{@|@}@~A!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A6A7A8A9A:A;A<A=A>A?A@AAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA[A\A]A^A_A`AaAbAcAdAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxAyAzA{A|A}A~B!B"B#B$B%B&B'B(B)B*B+B,B-B.B/B0B1B2B3B4B5B6B7B8B9B:B;BB?B@BABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZB[B\B]B^B_B`BaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzB{B|B}B~C!C"C#C$C%C&C'C(C)C*C+C,C-C.C/C0C1C2C3C4C5C6C7C8C9C:C;CC?C@CACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC[C\C]C^C_C`CaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzC{C|C}C~D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;DD?D@DADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD[D\D]D^D_D`DaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzD{D|D}D~E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E0E1E2E3E4E5E6E7E8E9E:E;E<E=E>E?E@EAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE[E\E]E^E_E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;FF?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G6G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;H<H=H>H?H@HAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~KPKVKgMOMhN-O{P"P8PPP]QTQUQXQ[Q\Q]Q^Q_Q`QbQcQdQeQfQhQiQjQkQmQoQpQrQvQzQ|Q}Q~R"R#R'R(R)R*R+R-R2R>RBRCRDRFRGRHRIRJRKRMRNRORPRQRRRSRTRURVRWRYRZR^R_RaRbRdReRfRgRhRiRjRkRpRqRrRsRtRuRwRxTfT|U%U+U.V8VMWKWd[E[d\%]%]U]t^|^~_3_a_h`qa-amcud!d)e.e1e2e9e;e#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[!,#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}"&!K!L!~#~!M#\./mytool/uni/iso-8859-1.my0000644000175000017500000000213207532460064015071 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-1Ncreated by mytool 2002-03-30  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/big-5.my0000644000175000017500000050245407532460064014445 0ustar henrichhenrichYUDIT-UMAP 1.0big-5Ncreated by mytool 2002-04-15@0 00 "0 & %PdRTUVW\ 1 34O 56[]78009:00;<0 0 =>00 ?@0 0 AB00CDYZ[\]^    00 5 2 ;0%%%%%&&%%%%%%2! >?IJMNKL_`a ""f"g"`""R"abcdef"<")"*"" ""33"+"."5"4&@&B&A& !!!!!!!!"%"#<0 !! ijk333333333QYQ[Q^Q]QaQcUt|%%%%%%%%%%%%%%%%<%4%,%$%%%%%% %%%%m%n%p%o%P%^%j%a%%%%%q%r%s!`!a!b!c!d!e!f!g!h!i0!0"0#0$0%0&0'0(0)SD!"#$%&'()*+,-./0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZ11111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)NNYNNNCN]NNNQ?QeQkQRRRSSAS\SN N NN N+N8QNENHN_N^NNQ@RRSCSSWXYY'Ys[P[Q[S[\\"\8\q]]]]]]^r^_ _bMNNN N-N0N9NK\9NNNNNNNNNNNNNNNQCQAQgQmQnQlQQRRRRRRSS9SHSGSES^SSSSXY)Y+Y*Y-[T\\$\:\o]^{^___bb6bKbNe/eeeeefgg(k kbkykkkll4pkr*r6r;rGrYr[rsNNNNNN;NMNONNNNNNNNNNNNQEQDQQQQQQR RRSSSSNSJSISaS`SoSnSSSSSSSSSSSSSSSSSSSSVVYY.Y1YtYv[U[\<]]]^^^s^|____b bSbTbRbQeeg.g,g*g+g-kcklll8lAl@l>rssttuuu(u)u0u1u2u3uv}vvvwwwy:yztzNNNRNSNiNNNNNO OO OO OOONNNNNNOO QIQGQFQHQhQqQQRRRRRRSS!S SpSqT TT T TTT TTT TTTTTVVVW3W0W(W-W,W/W)YYY7Y8YYxYY}YyYY[W[X[[[[[\\y]^^v^t____bb b bbcb[bXe6eeeeffg g=g4g1g5k!kdk{ll]lWlYl_l`lPlUlal[lMlNppr_r]v~z|s|6 3 nr~k@Lc!N2NOMOOOGOWO^O4O[OUO0OPOQO=O:O8OCOTOT&TNT'TFTCT3THTBTT)TJT9T;T8T.T5T6T TWPWOW;XY>YYYYYYYYYYYY[][\[Z[[[[[\,\@\A\?\>\\\\]^ ^^^^___d_b_w_y________bbbbbbbvbbmbb|b~bybsbbobbnbbbbe9e;e8efg_gNgOgPgQg\gVg^gIgFg`gSgWkeklBl^llllllljlzllpllhlll}llrl~ltllvllllpvp|p}pxrbrar`rrsu,u+u7u8vvwyyyzv|UoҊ7FUdpʏƏŏ]ᐑIƑ̖2.1*,N&NVNsNNNNNOoOOOsOOlOOOOOpOuOOiO{OO~OOOzQTQRQUQiQwQvQxQQR;R8R7R:R0R.R6RARRSRSTSSSQSfSwSxSySSSTsTuTTxTTT{TwTTTT|TTqTvTTTbThTT}TVWWwWjWiWaWfWdW|YYIYGYHYDYTYYYYYYYYYYYYYYYY[_[d[c[[[[[[\\H\E\F\\\\\\\^^^^^^^x^^^^^^_&_'_)____|_____```/`5``*``!`'`)`+`bbb?b>b@bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbe>eeefff fffffff fg g gmgggqggsgwggggogpggg~gguggg|gjgrk#kfkgkllllllllllllllllllllllllllllllllllpppppr,r-r8rHrgrirrrrrsssssu=uuuvvvvwwy>y@yAyyzzzyz|T NqRhˏΏԏѐǑѕw@?;DBR^NNNOOOOOOOOOOOOOOOOOOOOOOQWQQQRNRCRJRMRLRKRGRRRRS SWS{SSTTTTTTTTTTTTTTTTTTTTTTVWWWWWWWWYUYQYOYNYPYYYYYZYYYYZY[i[[[[[\\N\O\M\K\\]^^%^^}^^^__-_e_______``` `%``(`M`p`h`b`F`C`l`k`j`dbAbcc bbcbbcbbbbbbcce?eEeeef%f-f f'f/ff(f1f$fgggggggggggggggggggggggggkjkkkkkllm m2m*mAm%m m1mmm;m=m>m6mlm9m'm8m)m.m5mm+pppppppppr0rrrortrrrsssssssuu-uOuLuNuKuuuuuvxvvvvvvvwvvw w vvwwxxx x yFyIyHyGyyyyyzzzz|}}}}} }}}8 6րڀÀĀ̀ۀ΀ހ݁"ۂ ҂ׂ܂Ԃтނӂ߂Py{zMkԊts͎̏ʐΐÑKJ͕PKLMbi˗ۘߙNXNP P P#OP&P%OP)PPPc/cUcBcFcOcIc:cPc=c*c+c(cMcLeHeIeeefBfIfOfCfRfLfEfAfgggh!h8hHhFhSh9hBhTh)hhhLhQh=ghPh@hSfUFUjUfUDU^UaUCUJU1UVUOUUU/UdU8U.U\U,UcU3UAUWWW W WXX XWWWXX5WWY YbZ6ZAZIZfZjZ@ZwUUUUUU~UUUW X/X*X4X$X0X1X!XX XXY`ZwZZZZZ[s[q[[[[\ \ \1]L]P]4]G]^E^=^@^C^~^^^^_<_m___`````aa#`a```ah`a`a aabbIccccccccccccccccvcccdRcce^efebeceeefnfpftfvfoffzf~fwffgghhhhhihhhhhhhhhhi iihhinhk>k:k=kkkkl.l/l,n/n8nTn!n2ngnJn n%n#nn[nXn$nVnnn-n&non4nMn:n,nCnn>nnnnNncnDnrnin_qqq&q0q!q6qnqrLrrs6s%s4s)t:t*t3t"t%t5t6t4t/tt&t(u%u&ukujuuuuuuuv{v|vvvvwOwx]xlxoz zz zzzzzzz{I{V{F{P{R{T{M{K{O{Q||}^}P}h}U}+}n}r}a}f}b}p}sUՀ RUTKQN9F>LSt ń W ̃ʄ8܄ԃ߆[߆نԆۆІވWˆ;`U^a4a'a aa7b!b"dd>dd*d-d=d,dddd d6dddeleeffffffffgiimiZiwi`iTiui0iiJihiki^iSiyii]ici[kGkrkkkknnnnnnnnnnnnnnnnnnnnnnqNqYqiqdqIqgq\qlqfqLqeq^qFqhqVr:rRs7sEs?s>totZtUt_t^tAt?tYt[t\uvuxvuvuuuuuuvvw[wkwfw^wcwywjwlw\wewhwbwxxxxxxx|xxxyzyy,yzzz zzzzz{w{{`{n{g|||}}y}}}}[nijrVXqpxenskyzfGw=1ufkIl[<5acimF^\_ Y߈Ԉو܈؈݈ʈՈ҉krsfip|cqmbnly{>hbʌnjȌČ̌ōߍ掲 KJSBTAljiɒ7W8=@>[KdQ4IME9?Z͖˖ɖʖVtv  鞂 PPPPPPPPPPPPQbQRRS1SUVVVUVVV V VUVVVVUWWXuX~XXXXyXX}XY%Y"Y$YjYiZZZZZZZ[u[[[[[[[[[\ \b]]^[^c^U^W^T^^_ _F_p_aGa?aKawabaca_aZaXaub*ddXdTddxd_dzdQdgd4dmd{ereeefffiiiiiiiiiiiiiiiiiiikIkLl3o3onono)o>o o,ooo"nnoo1o8o2o#oo+o/oo*nonnnqqq}qqqr>rrsDsPtdtctjtptmuuv'v v v vvvww}wwaxxxxxxyyyz.z1zzzz{{{{u{{{{{{{|||}}}}}}}}}}}}}}}}}}}p߀^ZPKɄƄĄ˄ӄфʇ?;"%4U7)jӌьҍk`X\cY^b][uxwtx{|̖җ| AB󞼟;JQQPPPQQQ QQRRRRRRSV.V;V9V2V?V4V)VSVNVWVtV6V/V0XXXXXXXXYm[ Z[ Z[ [[[[[\d\e]]^b^_^a^^^^^^_H_q__avagana]aUaa|apaka~aaaaaaaaab.didodyddddddddddddddddddeuewexffffj#jijjjij!jj ijjijkPkNkkko?o|ooQofoToomo[oxonoozopodooXnooo`o_qqqqrVrsNsWtittt~tuv v)vv$v&v!v"vvvwwwwwxxxxxxxxz?z~F~7~2~C~+~=~1~E~A~4~9~H~5~?~/DqrposƁÁɁ q~gч҇Ƈȇˉ;6D8= A?sIKHJD>BE?}9M(uJeK~l[pZTʕ˕̕ȕƖ֗ӘF5;?Ϟޞܞݞ۟>KSVVXX[8_]ab3dddedddefg&jjjjjjjjk_kxkp p opoppqqqqswsuttuvVvXvRwwwwyyzazbz`zz|+|'|*||#|!|~T~U~^~Z~a~R~YHwv́ς υͅЅɅ(9,+PYcfd_UIMГԕ֕ЕՖܖٖۖޗ$MOLNS>?=.ONMʛɛțQ]`,Q3VXXX[^aaaaeeffjjjjppp(pppprr rXrsxsztttuuv_vawyyzkzi|>|?|8|=|7|@~k~m~y~i~j~s؅݅Յ `_V^A\XIZNOFY |rvlztTNѓߓÓȓܓݓ͓֓ؓדܖ*'aܗ^X[EI ֛۝arjlRVVVVVX[@[C[}[]aaeeefg'jp>p0p2rs{tvbvey&y*y,y+zz|L|C|M||~}~|~Lڂf  dplfo_k ˔0ęRQ+075 y/_caQ7Q8VVVY\l]aaeeefjkjkpLrrttviw|P~~-#"!jltw}_.35:82+892geWEC@>ϛTQ-%\fgQ×kUUMқI1>;ӝן4ljV]be#e+e*fktz|d|c|e~~~8?1c`dho\Z[WӚԚќTWV垟VXe,p^vqvrwP69bwjBHDƘp_"X_|}wr^kpc|l|n;rpq^֛#pdwڋwɚbe~Ŕ}~|wxTr(j1|r00000A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO$`$a$b$c$d$e$f$g$h$i$t$u$v$w$x$y$z${$|$}NBN\QSSNN NGNV \n_sNQNN.NNNNQRSlSW YY,\]ekklr?N1Ng9g8g;g:g?gOgORO_OAOXO-O3O?OaQQRRR!RRS ScSrSST0T7T*TTTETTT%TT=TOTAT(T$TGVVVWAWEWLWIWKWRYY@YYYYYYYYYY[[\(\*\\\\\\\\\\]^ ^^^^^^___x_v______________`_b:bbbbbbbqb{bzbpbbbwb}brbte7eeeeegEgGgYgUgLgHg]gMgZgKklllxlglkllllqlolillmllllflslel{lptpzrcrrrrrrrsssssu:u9uuvy=4xɏ0(/-N3OO|OO}OOOvOtOOOwOLOOjOOyOOxOOOOOOOOkOnQQQR5R2R3RFR1RS S SuuvvvvvwwwwwwyBy?yzxz{z|u|5 ‚ÂpomnVҏˏӏ͏֏Տא9=<:COOOOOOOOOOOOOOOOOOORDRIRRS=S|SSSSTTTTTTà TTTTTTTTpTTTTrTTWWWWWWWWWWWWWWWXY YSYYYZYYYYYYYYYYYYYYYYY[\L\\\\\\\\\\\\\\\\\\\\]^!^"^#^ ^$^^^^^^__._V_`7`9`T`r`^`E`S`G`I`[`L`@`B`_`$`D`X`f`nbBbCbc c bccbbcc bbcccbcbbeAeCeef6f!f2f5ff&f"f3f+f:ff4f9f.ggggggggggggggggggggggggggggggggggggggggggk(kkkkkkl l!m(m4m-mm9/%3-DQ%V?A&"BN*ZMZ9ZLZpZiZGZQZVZBZ\[r[n[[\Y]] ]]] ] ](] ]&]%]]0]]#]].^>^4^^^^^_6_8___`````````````````````c2ceccc}ccccccccocccnccuccmcc|cc;ccxcccccpeSefefaf[fYf\fbghyhhhhmhnhhiVhohhhhuhthhhwhh|hkhrhhhqh~hhhhhhhxh{hhhh}k6k3k7k8kkkkkl*mmmmntmmmmmmnmmmmmmmmmmmmmmmmmmmmmmmmmmmpq pqpq pqpqppqqqppq qqr~r{r|rssssss srssssssttsttssst t studucuuuuuuuvvvw9w/w-w1w2w4w3w=w%w;w5xHxRxIxMxJxLx&xExPydygyiyjycykyayyyyyzzz{5{G{4{%{0{"{${3{{*{{1{+{-{/{2{8{{#||||}5}=}8}6}:}E},})}A}G}>}?}J};}(cɀGCH%-,!'"83:42tzstu}~vYV†ņȆ̆ÆR։ىՊ0',9;\]}}{y؎ގݎ܎׎$  !ԐVXZSUz|mkqoj噗PPPPPPPPPPPhPPPPQ_QSSSSUUUUUwVEUUUUUUUUUU}UUUUUUW X)X7XXX'X#X(WXHX%XXX3X?X6X.X9X8X-X,X;YaZZZZzZZZxZZ|ZZZZZ7ZZZZZZZ{Z}ZZZZZ[[[[[[[\ \0]7]C]k]A]K]?]5]Q]N]U]3]:]R]=]1]Y]B]9]I]8]<]2]6]@]E^D^A_X___``````a`a aa`a````aaaa`aa bJccccccccdcccccccdaccccccccccccccce2egejede\eheeeeeeeef|flf{ffqfyfjfrgi hihi*hhhihhhhhiihhihiiphihhihhhhhi i ihhhhhhhihhii%hk9k;k?k?ef׀QOPԁCJROG=M:<=?u;σ#ƃȃヿ݃؃˃΃փɄ ބƒՃǃуÃă׃ۃ؆ӆچ݆܆׆шHVU׈ɉ݉ډۊNM9Y@WXDERHQJLO_؍Ӎ͍Ǎ֍܍ύՍٍȍ׍Ŏ-4/,ad_b` %& '${~–ȖÖlpnNNNPPPPPPPPPPPPPPPPPQRzRxR{R|UUUUUUUUUUUUUUUUUUUUUUUWXSXhXdXOXMXIXoXUXNX]XYXeX[X=XcXqXZZZZZZZZZZZZZZZZZZZZ[[[\\3]q]c]J]e]r]l]^]h]g]b]^O^N^J^M^K^^^^^_@__`aIaJa+aEa6a2a.aFa/aOa)a@b hb#b%b$cccddd d d$d3dCdddd9d7d"d#d d&d0d(dAd5d/d dd@d%d'd cdd.d!deoeefffffffffxg ifi_i8iNibiqi?iEiji9iBiWiYiziHiIi5ili3i=iehixi4iii@ioiDiviXiAitiLi;iKi7i\iOiQi2iRi/i{iF 2*-<:15B&'8$0뉝芫=hiՌό׍   # "$!zrysvzy}~-X}z~{Ηٙ͘ǚ>?`a_PQQ0PQQPPQ Q PQ RRRRVHVBVLV5VAVJVIVFVXVZV@V3V=V,V>V8V*V:WXXXXXXXXXXZZZZZ[Z[Z[[[[\g]]]]]]]]]]]]^i^]^`^\}^^^_I_aaayaaaaaaaaaaaaaafab-dndpddddddddddddhddevezeye{eefffffffjjjiijiij iiijjij'iijiij@jiij iij jjj%jij&jijkQkkkkllkloAo&o~oooooooboOooZoovolooUoroRoPoWooo]ooaoko}ogooSooiooocowojo{qqqqqqqqqqqqqqqqqrrsXsRs^s_s`s]s[sasZsYsbtttttt}ttt|tyuuu~v%vvvvv#vv(vvvvvwwwwxxxxxxxxxxxyyyyyykvz9zzz{{{{{{{{{||||}}}}}}~}}}}}}}vdgOSRPNQ$;)  '+ *(.1& 0 /bVcdwsXT[RaZQ^mjPN_]olzn\eO{ubgiZ   ϊƊӊъԊՊ׊Ŋ؊Êٌ>Mߌٌڌ݌獠 #%$.&',$ #spogk/+)*2&.ВÒĒْϒߒؒגݒ̒’ʒȒΒ͒Ւɒޒђƒ|ӗZЗϘ&)( 'ܙ͙ϙәԙΙəؙ֙˙י̚FCgtqfvuphdlӟQQQQQQS4SVpV`VnVsVfVcVmVrV^VwWWXXXXXXXX[[[[![[[[[([[ [[]]]]]]]]]]]]]^g^h^f^o^^^^^_K_aaaaaaaaaaaaddddddddddde3ee|effffffffffg#j4jfjIjgj2jhj>j]jmjvj[jQj(jZj;j?jAjjjdjPjOjTjojij`j[qNnuUg`f]Telcedy&0-.'1")#/,݋ߊȊފln3>8@E6<=A0?6.52974vy{356'z8<#F- ˓%4$)95* ͕ԗ 5/2$')皹3|~{z}% )"՞֞=Q&Q%Q"Q$Q Q)RVVVVVVV~VVVXXXX[-[%[2[#[,['[&[/[.[{[[]^l^j__aaaaaaaaaddddddeeeefjjjjjjjjjjjjjjjjjjjjjjjk[kl ooooooooooooooqqqqqqqsssnsotttttttttuuuuuvCvHvIvGvvwwwwwwwwwxxyxxxyxxyyyz\z[zVzXzTzZzzz||{|{{|{| {|| ||{{|{{|| |~-~<~B~3H~8~*~I~@~G~)~L~0~;~6~D~:E~},ā́ʁŁǁ[Z\{w|zxWyvhŇɇLJ̇ćʇއ53<>AR7B " OprqooNMSPLGC@~8dVG|X\vIPQ`mLjyWUROqw{a^cgNYǕɕÕŕ ՗ԗADJIEC%+,*32/-10H3Ag6./180EBC>7@=-Ȟڞ$#"TQ1Q-Q.VVVVVVYp[<\i\j]^m^naaaaaaaaaadeddeedeefffjjjjjjjjjjjk^kl pp p ppppopop&oop rqqrqsvttttttttuuv\vdvYvPvSvWvZvvvwwxy yyy yyyyyz_||)|| ||-||&|(|"|%|0~\~P~V~c~X~b~_~Q~`~W~SuсЂ_^ƅŅDžą˅΅ȅŅ҆$iۇ߇ԇ܇Ӈ؇㇤ׇو݉SKOLFPQI*'#305G/<>1%7&6.$;=:Bu\b`WV^eg[Za]iTFGHK(:;>ҕӕіז]–ߖؖݗ#"%חٗ֗ؗPQRA<:  ܛ)5JLKǛƛÛӛě\SOJ[KYVLWRT_XZߟ%+*)(LUQ4Q5RRSVVVVVVXXXY[=[>[?]^p_aeee e e eeeefjjjjjjjjjjjjjk`kl pp'p pp+p!p"p#p)pp$pp*r r rrrrrrrrttttuv`wwwwyyy!yyyyzgzh|3|<|9|,|;||~v~u~x~p~w~o~z~r~t~hKJxׁՂdacمڅׅ؅߅܅хޅ  bZ[Wa\X]YPHJ@SVTKUQBRWCwv mxsjo{RQOPS@?ޓǓϓ“ړГ̓ٓʓԓՓēΓғ}ڕۖ)+,(&ݗޗߘ\Y]WHGC%$" '#›  7ޛԛכܛٛ՛ڝwqx}ktupis{oyh-@AMVWXS7VVVX[E]]^^__aeeeeefffjjjjjjjjp02.3vtsEdcbU]W^ėŘVY RXPJMKUYLNžО876COqpnoVV[N\me-ffkp_pap]p`r#ttwy8yy|j~mC875K”khiFCGǗ^՛Ycgfb^` FtuvVe.ekkkkpbr&rwwy9|i|k|~~~~FGHyz|{nmoqsIr_hnm  Gx{zyWpf|o<Ôtxvu`tsqu phpe|j>=?ɗKst̙adfg$Hbkr'Lih.r)Kyvukzpipj~IFGDXPDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsdzDZDzǴǵǶǷǸǹǺǻǼǽǾǿVXELKJKۡڡءwxz{|}utsrq~bcdefghiponmlkjvy@BCƤqrmnuvyzijEefâĢŢƢǢȢɢʢƥƦƧƨƩƪƫƬƭƮƯưƱƲƳƴƵƶƷƸƹƺƻƼƽƾƿƢƣ@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ǡǢǣǤǥǦǧǨǩǪǫǬǭǮǯǰơtuvwxyz{|}~UVPQRTWSO@BCEVTWUFOMBA@CXPc˱YDd@D[G\EGFAAE^]KܱܲFƤGH_QȫE`ɨʫFG֤ܳHRTSJKLMIPjfiQahNOHegɰɺɮɲɱɵɹɶɳɫɻɸɯɬɴɷɭfBgD[`hdG]˽Cb^ZeEH@FcAi\_a˿˨̨˨˹˸˼ި˳˵ۨ˶ɨ˻˴˷˺Ĩʨ˾˲ŨVJIQ]KYPXTݫ[NWMURZO\SLH׭խɭӭݰ̭˭[֭խԭȭح̭í٭Эŭ٭ӭcW\bUYRVgQfXSO]PNZ`a[^M_dLTe^W_UXY]SRʳƳQ\ZTVʶܷܽƶܺöܴܾܼܸܻܹܿܵܶ񹲹vwux_lkIaSRJIKߨ^YޢZ¢\[`]^JK@LNTUAj`_߰UaޭVBɼMNkΨha@LZijBYWXMNbɾZkFɿDEɽGClmnPOSQRШcӫhdgfebѰikjlϳɶABZ@ABDCO\[HUVTWoplkijnmɰӳҶնֶCDEyUcVĤ]^Iqm̰cbPƥ_Cl`¦KJXoEаΰϤQdͤɤȥcbmnRedrWgfLMsYZoDtuppdeFFXhSeΤqOfjytonuslzmixwvkrq{pSYU[ŦXNQTPWZORV\~{g|[]upʥ}_aʤhxtv\mvsdnowljkqʡ^rʣfczbʦei`ʢyOPIKMLEADIRܩCFHQMSJީGB@NHKxt}rCOyEBwJ|Ls~{@FGzvuDND@BCACFB@GԡEDAwԧ|Ԣv{zԥԨsԩٰ~ԦԪtԤux}ްܰױyԣqrj׳uxq޳䵽n۳v{ofsmyݳ߳zlrthwgipӶܶ޶Ͷֶ߶˶ڶۢ_͹UQK¹TNPS˹IƹLJOHɹMRGMGDGSTJBLRFIHHCEKAkONP@EBACD@QF{}~z|P`VQAY@XWZmonI}|_^Ǧ]yʩʨwzʧxTHIEFԬԫ|IHGkgYnobfdcȦea`}ʪʫʭ{ʮʬ~|ʯY[Z@XWV\AUTZX^UY[]WVQRS\PSRWNQPTXGJOUIJԺVMHLԱԯԽԿԴԼԾԹԲئ԰ԷԭԵԳư̰ԻԶKԸԮءتةآؤبأإ}زرخKثح~ذدسجا]c_fW׹\U[dZ`eV^bhXagYYKWVMRNQ\[JPZOLXMOJLNPIKSRabcB[h_iSZʰB`YLܤi~pgh]۹jѤӤ[ԥqijʱaC_`^ZabMNOشݹj]ԤkѦloͦn̦qpmkʶʹʸʵʳʴʻʷʲʺgoOHpSDKfEdLPcQJMriTRnlIkGFjhqmeNogcsblpVvdfmqurknhjite\b[`PU_\aQ[TRcSWXZY]^d԰@CDBAذ@ػظؽBGCضADغطعؾؼEؿصB@CD@FAABEnzpvkyx|utm{orwqlsUaXWZ\_VT][Y_^c^`b`WVUXQRZS\[TYT\]ClmnեӦrssUutV]eEGF}^prsvtuwʼʽWXvxzw{yȫūǫɫfwhgc_`bdafeJIHGKFҴIKԴHJHIJ~᡹fмged]d_oxigNMLLM׹ɤp\tԦy|KqʾʿشNLruY~Z}xͫ˫̮jhkij^PQOᢼhiaKswvzçȧhb]ec\ilg`fad[_k^jΫΤΪΣΥ}{άΩyΧΨΦ|z΢~ΡέonlknposqpήrmlmqrSRTXAZV^[UCWB\]YD@QROݴOPSVNPUTCRDMQᦹegkhcbljjmdikfaf`e^hdic_gjbrDE`rqt{ʨ_utWvwxίSy]x|nmoγΰαβδtsvubFac`UEVWTZ\E[YXᴹqompnlmklnnz~ۦ}FۥմXyzΧθηιζκ׮yuwwxxvεGJKHgfdeIhZ[\]_aHGY`^ἹẹỼpsṼrtqtuossqprofFGU{λ|I}ݤަqrspμzzyiLjM]buvtstνkJUͫ{mCnl^vLէԧwvuξܫޫ߫}|{OorpNuqPtsa_`KdLcwxwu@HI{ҧতӧѦxyا̢̯~̮̩̪̭̬éȩ̣|̨̥̰̦ͫ{ʫ˩ķ̌z̫}̡̤οѡ˫īɫϮ~}|쮡~뮦ﮥѮvѤѦѨSѬѣxQѮRѥѩѫѪѭѧyѢwzU^d|e`V~TbeIc]a{dYbWX[_\fcZ}ko@QmDqeFSilGHNsTJOC^UrAP]pNMtEjBKMRgLPh\phlnk[j_Z@qXimOfgAWYVoμ}GF|źEԺCD媼znӼ{ͺHyBz~y~x婼墼xv}w姼夼|{z~|y{}VgjihaJbAt|ڧ̱ϩѯur`atvuֺI嬼W̲ѩЩҫѰvQ~}릪覩ӧݧܧ̷̾ܩ̴̸̶̳̺̼̻̹̿̽ߩթԩ̵کݩ۫ڬA@ѱC߫BEѲDѾѴfѷѺ}ѽѿѸѵѶ̮Ѽѻî®®ѳg˱yurզwա̱{jգiբs±hxեqtդRoxnl~ıw|pmzvTSkdzjYgw}kn|\ml~Uyi_phqfec]ѹVݷW{yXox`[a^p|ݱݶݪlݻiz{bkݤnoݥݲݸjdݣ}ݺݨݩ~ݴݫݵݭeٷhfݹݰݬݡSݯmݧݦgcݳݮݢQLKObR庼T孼NPUJ崼弼Z帺M廼ؾ驾־髾۾鮾YX^\]Zk[BEFDGlCNdMLKceurFGĮէֱձαѱԱvʹuxswtqݼV彼żHyݽޤرz{rW祸H|s_éIѮ۱ըݱ}~ݾYXJIO^J饹ͩ@ĩ˩̩ǩPMSKNQLORЮɮ֮լիխޱժծթ٧٢٥٨٦٣١٤yݿvwu{´xtz\Z[ȼļǾ鳾`nKmQRfPѬTѱ٩|릳ҪBAخҮկzagCGBE@AA@FDWԪCMNFXHܪSתIتVQOڪJPDR֪UELTGK[\iVLbJ[EeRADQa`FX_`cZKSfYamVXCjc]@lgIkPHd\T^bGZYO_UWh]NMB^WU߮ݮ֮ޮۮ߮ٮմյչվսհɱDZձղ±˱ճͱպռշջնտδٽӴ٫մٳǴ٭дɴٻٶѴٰٵٯٱٺҴٷٴŴʹô٬ټپ٪Ӵٲٹٸٮط񷬷ոշʷͷѷڷ~ٿ跥巢߷JH^FX}_B]GUd][@ZoQamI^KYgDkaMCWh`eSfEPLN`_nObTcljAVibR\޼Լڼʼμ׼ϼҼ龾׾ݾؾ־ϾEAHIDJ@GCFBchibfegdQNWVTOrPqSpXRMoLVUUhYZTXSWvVYdڴݴܴpceqdKjYwBZ[nѾk\eofpߴfghLlZ_qgijݼ`CHrhsiդjBAC@@AAB@kM[¥]a~IJ^tklD߲BrɡɤɣťĨDɢ@ŦE[YLQSLMUROQVZXZKM\TWEG^UNJYVHICOP[]PNS\WR]FTKXDjzqKbeBmovhfguGpnsJuycIMO@lk}rux|AF~wi_d`N{taL|ϡϤwϧϪϬtv{Iϥϭ{sd~Ϣxz}}pϨϫzmxϩo^H|wvnϣyqrϦy~LCU[WJMFGJV_E@NBOYDhHHEfZgaSb\ecITAG`FQCiPKKX]eRPG[UGDgdXcNOIE@QYBD^F\SHFJhb_]faR`AEWVTLKCMAZIMDJCUVHDBSKQWAGEBCOLT@FGFEPNR@a`F_IJh^CȷRHKcjbW˷iULYeTMPZdGQ[ɷNESgVlXfOʼD]\⪺}⤺nwmⰺqs⯺uS}o⮺u~⬺||vtzwx⵺z⹺~pyx{t⧺sr{yvDNMYKOFRTC^W[`UILH_aV\JEAZB@XQP]GI@AHCOBDFEDJGFEB@ANCQSYWZRVU[TXPqopmnsrx_ey\vsgwt^abcf]udh`]j`kh_\^bedg[icfiaxyWelѤA^_b_`aXZURTVSPWQYϯϳ϶ϲϱϴϵϮϰwxyPLnv{QlrkuqMOzjmst|pNmNPLXJWiH[RlSVZOTjkYMI[QUKHIeOYbXL`^_Jc\ZK]aMdpwyޡkzޢ}m~lxޣq|ovrnѷطַӷ۷uN{st⼺gdpjlfnmkqhocebriJQUSKILMHUVGVQOLPNRRMNOPKTSWXT\b`^a]_wtuvlmzkji{ljkyƤRݤnbϷ}ϸϹfPޤ|gBȨedc`[ϺϽϻϼҢҡ~S]^o\_RpQkjhilަޥީިާȺstYZr}qpnolɥɦCDfbaegcfgd_Ͼ]deab\^c`¬ϿҨҥҧXWUҤҩTVҦgңҪbfenyhcmtsadurq`ipwTvsVuoqtrUxSޭެުޮޫʺްޯ˼vu~}{zwxy|_\]W[a`^decyx~ámnmzƯYvjɧEljkhhimkgjfilh¬̬үЬǬҴҫҶҮҹҺҬҸҵҳҷ_]ұҭҰһҲ^Z\xmklstp{uroynwzqy[xwv|~ڡ`ڧکڢZڦڥ[abڨX}{ڣz_|ڤڪY^\]W޷޻ޱ޼޲޳޽޺޸޹޵޴޾޶κԷ槽@bA椼ifegfZcX\[dhYmzjhknlgBEu@oFâD{ACGvtãsnnҼҽ}޿]ä{o`Ҿҿ~ګ׺i^_ropqIH|wޥcdΥFjiڬХѥҥklnmrpqˬʬ`dcba{zfeڮڭŷ殽Bjsæå|sٺoptϬЬͬݬhinlůkjeįmƯfg֢֡|~֤֣}ڶkjڰhڳlڴmڱgiڵڲگǷͷ˷ۺߺܺ氽ECHI洽F毽G涽Dlksmro`qabpntwuvM¡N}O~LPJçxèoKp~}noզGqmҬӬ֦˯o֥ڸqڷpսJxQqpuprKtRr߬ج̯qrs֧ڹs׷ʽLducySsبnxwvy۬uvְدwtֱֲ֪֭֮֩֫֬֨֯ڼھںڻڿڽtݷCںθFD߸E޸AB@NQO漽MP}~vzywfgex{|h@{A|z~}U¤¥¢£T{éyztwuvf٬ڨoxĵuGB|x͡z|~}{|ֹzگݯy寥}~{ֳִֵֶַָֺֻȵv˲w̵xNQMLHOPJKITXVɽSʽUR½YƽWjlikFECDVGZW¦[]\XYê~}z}yq{|~rtsrͣ͢诧毦鯬ּֽ־ֿRSTA׺պCB@mHI_^§ëšɨVݨrqpͤĪIJ}ڵ|z׵{ٵyAZX@W\[YIHDGF^_[]Z\pErqnoJ`ª¨©íìHsͥƪͦ@ɲ~D]^CBJۺKLa`sK«¬uѥAݵEMv˪ͧBC@BDGEFCHAӲܲղβײز浧ᵥ޵⵫㵭aPSGLFcJHbONKMIR_Q]XNPUTWRQSY[VOi\ٽbceֺ`hdfgv׽jſt꽿xQy긿w꼿{꾿zONLPMͿucag°ed²j±kh®ib¯­flòðñîïóxwyţŢXYm~ͨEFDGHIIOMKLNJ޲赯VdTeUfa^`_kaȿ|}WSXTVRU³z{A@tͩLJKZSYRXV¯UTȯůɯQPWϲֲӲٲزײͲl쵻εh]_ae[Yj`d\XWbZ^kifgcrjxtxeubwfvpcqshgdlimynokpyurvltswqnzrm{o~ٿֿԿ׿_Yia]dg\e`Zhc^b[fnt¹w´µovqº·m¶su¸rp÷øôõúö~}ġB@BAloj»ĢCIɨuM`[_]^\@ijnohkgm@pz|}ùDϪ˪ONbaBCAsmlnrq~㿪yxûýüPedcDop~CAB{|}俫kz{¼½lģҬ̯QӭARS@BTfӯЯA@qsͪCUhgCBDFGEtuE㢻Dpomnq|¿¾ťŤw¸vFɩئͫvwwtvyu{zxxѪͭӪժͰͬШ|ͯͮ[GH]WZcaIgLd\YIbDeV_FK`OMXJ^NEfدjޯlkinHomٯNEGHPLJMQFOKIQOJߡNKŵPMGL̵ĵwu{sߢxr{}v~|~yxy}|tzLHM㧻J㤻KIADC@B󿱿txzwvusry}~þĤEŦCDئRN{SܭPTUVOhpWP|ުRQEߵߣRͱiQrqWTVSUXYZߦߧߥߨߤSJFIKHGĥF}}X[AJKMNLˢˣ{ˡ|zy}~~jͶ͵ͷͼͲƪê͹Ϳʹͺ;͸Ūͽͻުͳb\daqt]kV`ceТwUСYWRo~svХf}^xФuy|mУ{lp_ZSXTgnӥ[zAӨvӣ}ӲӪ~өx|ӵӭӤӳtӬsӫr\Ӧz{ӡuӯӮӶӴӰӧӢwӱy^`ey]houbi@wrnj\aYfcsdzlkZ_pvA[gmxqtl`}۪ۧhۣiwst]ۤۡu۬pۯnzrۭkdocaۥjۨ۩صݵٵ~vf^ۢ۫e۰qmѵ|xֵܵ޵ӵyg{bۦۮ_ݸUߵ߿ָߪ߲Ƹ߶߱߫߹߸߼߾޸߰ߴڸ߻ߺ߬߭߷߳߯߮`ʻXŻ[㾻Y㼻Z]aU^WԻVTc\㽻bл_stgfbvuߩ_c]pawZXdniOm߽[RU{\SQNe`hx|WkoTyLrVjP^Yl}zqMI@CEAGLFUOFJTQDHBVSPWMKNS@ERDAMOQIPBRJGUHTKLVCN~ÿħĩĦĪĬĭīĨJKIGHLEFGOhӸӷ@B|{길~XZYWǪЩЧЦikjШӿA°FӼӽCӻHӾӹGDӺEBLץKר׫HF~שקפ׬׭ׯװ}Eעס׮GףIDצMJתۿ۴۽۱۶ۺ۸۲۵۳۾ۼ۷۹ۻ긺ø鸻j޻eܻgh׻mջilfd窽稻k硽秽糽纽翽禽罽礽dakge`o\hi_^lb]cn[mj¿fY]Zag\pj_kfm^`nXldch[bieoĮįBEACDQON@PFMZnЪGlЫױNЬЮЭmذIӰJNܰMհKLPײU³T׸R׳S׿׻׽׷׾O׺׹׵׼״׶QǵϸǸĸʸɸtBAv@nprqsλoɽͽ˽ǽĽȻup|wyquxƿ{stzrvrqwstuxvİIKHJŨRŧHIKJPnŵWVеCFEDy{zıTS[ЯoCA@BDIGH}|}IJLUũLqrабpTRQXPYݰVSWUO_Y̳^`Z[X˳]ɳ\DFضEIڵ޶CB@GAH߸Ҹ޸׸ܸӸPMEJQGOKNLFLx{NM}OKyۻ|z~wJֽ۽ݽս몽ؽڽۿ~Ϳٿ멿뢿뤿ۿؽ밿뮿ѿֿ~AO@BCķĵĸĴĶij@NMPQAV[ŪXWZYCB@A@MNgmRPDDްZaTSvbHVUWQRݽ޿FEˤ\[IYZX벿Gst]^hfcgedJLQSRUOKMTPN[TSU߽븿HIJĺĹRBS\ūŬEBji\]빽вvu_XWV_b`ae^fcdVLNKMTowسlk`[^Yl]\_Zhonpmrikgjqs[aYbX]c`_^W\ZAC@EBFDƿ뽿뿿ſEA@CBDROSQPTļľĽĻCEVDUaŭ`Ů^]bcF_\QPOpn`UyxcabmܳnCAEFLHJBIKDGb@acuwv{xtyz|gfdeMNIJKLH@Gʿ̿οFGHIXYWVZXYWFdůeHGd@|GdA[˦˥ϪΪжд|г~{}еzjgnilhekmfpzv~w|roq}uxty{sMeOgiNfjhGࣹO~PEJࢹCBMLKIN}DFHRCASDBQPOоEѿҿݨUoRSQT˪˧ˬ˨˩˫תԪимйлнпокqprзlVWTnSYXk\R[PZUm৹QਹRnqimljpkhoYHJVWUQGZTFIXտKLM]\[\ZfŰut@As_a]`o^psUTSsuƻŻtra^_M`[\JK]LڿOPNR_Q^Ŀ]HIC]qoVqBxvzDywCB@CAmljbqeovnyuciwhxzkrswutfrvtsdgp೹aWYeZ\f[dஹbู^ʹcƹ`˹Xg]Ź_xz̻䦻~|䫻䥻y{wv䴻}䣾RZUgPOVeTqcdN裾Xtysowuhb}W~xmkfn{jzSv|rlQpYiDACB@@CEEBAD`YTc[eU_aWX]bjgk^Zhj\dfiSVscqalhrbetmpid`okugnBf@DACafOhIdjNJK`gMeL_cb^iűmplnoijgkhŲųKMLNJDSRT_U^VruthsrpqwDxv{EF}zy|{~{hջ׻ӻ覾[詾\MKIJFFNHLGnlmwxEGFPmlkɪXVYWˮ˰˯˭۪@ܪƭíEF~|}IHKJG}ܣܢ|~ܡҹjkԹiڻGHOIoAGLܤܦܥnom۹lPJptqusyBܨܧٹspعrֹq佻]譾^_设`QNKPSLROMwvx~}z{|HISnQRoŴŵqEGFWCtQRDaS⭲MܩܫܪڹuvŻƻ豾cb貾dVUTTA@}{~|y@zJKpŷŶOPHiCBqrWDXALMTQNܬz|޹wx{y˻輾g軾e[fYZU[YXVZWEJFIHGDBECF@AQNOPrVUtsŸI`Xܭͻ达hGBuRStsuHOܮ~}λ迻i\kjľla_^]`\K^]_NLMRKQTSPOJHICDXWUTYvŹwWvVwaYPU`WVL湤幣ȾnqsʾrξtpƾmocfdcihgbbaedZ^[]\Y_b`a@XcMEF`^]ca\Z[_bx~y[Z}|Y{Xz}~{Żx|yzźRSJvjkzluejmfdkNfde\żbIhvwnqpoghfegOPGgihŽTUVKcxiJ{rپzyiSRQ^]Lճ|޾{}xvwsytru|j{z~jmltosqpnkCBDAuXWUTJKIHloVmsqkvjrnut`_ſpžZ\_[`YW]X^MZ\[yxwzstܯ}~okplmnz{~|vy}EFwYZ[MxOPNL}{|x~zwyabdcindgkreosjcmlqphbfNOa]^`_ba|{x|}PQGQSRecҳT»tdHurqLJKI\fvwd}uܰxRe~췹]gy^|{zM}fԻN~hijTSgjihsetJJWY[_`cdghklopstwx{|ơǡʡˡȡɡ\MOQRST}~̡͡ΡޡߡLMNICH]^ϡAСDAGFաס֡HIϢТѢҢӢԢբ֢עآ٢ڢۢܢݢޢߢB@ABCaUbN./mytool/uni/cp-1252.txt0000644000175000017500000002271010715055310014704 0ustar henrichhenrich# Microsoft Windows Codepage : 1252 # # converted from this webpage: # http://microsoft.com/globaldev/reference/sbcs/1252.htm # # by John Wehle # on 2007-11-02 # 0x00 0x0000 # NULL 0x01 0x0001 # START OF HEADING 0x02 0x0002 # START OF TEXT 0x03 0x0003 # END OF TEXT 0x04 0x0004 # END OF TRANSMISSION 0x05 0x0005 # ENQUIRY 0x06 0x0006 # ACKNOWLEDGE 0x07 0x0007 # BELL 0x08 0x0008 # BACKSPACE 0x09 0x0009 # HORIZONTAL TABULATION 0x0A 0x000A # LINE FEED 0x0B 0x000B # VERTICAL TABULATION 0x0C 0x000C # FORM FEED 0x0D 0x000D # CARRIAGE RETURN 0x0E 0x000E # SHIFT OUT 0x0F 0x000F # SHIFT IN 0x10 0x0010 # DATA LINK ESCAPE 0x11 0x0011 # DEVICE CONTROL ONE 0x12 0x0012 # DEVICE CONTROL TWO 0x13 0x0013 # DEVICE CONTROL THREE 0x14 0x0014 # DEVICE CONTROL FOUR 0x15 0x0015 # NEGATIVE ACKNOWLEDGE 0x16 0x0016 # SYNCHRONOUS IDLE 0x17 0x0017 # END OF TRANSMISSION BLOCK 0x18 0x0018 # CANCEL 0x19 0x0019 # END OF MEDIUM 0x1A 0x001A # SUBSTITUTE 0x1B 0x001B # ESCAPE 0x1C 0x001C # FILE SEPARATOR 0x1D 0x001D # GROUP SEPARATOR 0x1E 0x001E # RECORD SEPARATOR 0x1F 0x001F # UNIT SEPARATOR 0x20 0x0020 # SPACE 0x21 0x0021 # EXCLAMATION MARK 0x22 0x0022 # QUOTATION MARK 0x23 0x0023 # NUMBER SIGN 0x24 0x0024 # DOLLAR SIGN 0x25 0x0025 # PERCENT SIGN 0x26 0x0026 # AMPERSAND 0x27 0x0027 # APOSTROPHE 0x28 0x0028 # LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK 0x2B 0x002B # PLUS SIGN 0x2C 0x002C # COMMA 0x2D 0x002D # HYPHEN-MINUS 0x2E 0x002E # FULL STOP 0x2F 0x002F # SOLIDUS 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE 0x3A 0x003A # COLON 0x3B 0x003B # SEMICOLON 0x3C 0x003C # LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN 0x3E 0x003E # GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK 0x40 0x0040 # COMMERCIAL AT 0x41 0x0041 # LATIN CAPITAL LETTER A 0x42 0x0042 # LATIN CAPITAL LETTER B 0x43 0x0043 # LATIN CAPITAL LETTER C 0x44 0x0044 # LATIN CAPITAL LETTER D 0x45 0x0045 # LATIN CAPITAL LETTER E 0x46 0x0046 # LATIN CAPITAL LETTER F 0x47 0x0047 # LATIN CAPITAL LETTER G 0x48 0x0048 # LATIN CAPITAL LETTER H 0x49 0x0049 # LATIN CAPITAL LETTER I 0x4A 0x004A # LATIN CAPITAL LETTER J 0x4B 0x004B # LATIN CAPITAL LETTER K 0x4C 0x004C # LATIN CAPITAL LETTER L 0x4D 0x004D # LATIN CAPITAL LETTER M 0x4E 0x004E # LATIN CAPITAL LETTER N 0x4F 0x004F # LATIN CAPITAL LETTER O 0x50 0x0050 # LATIN CAPITAL LETTER P 0x51 0x0051 # LATIN CAPITAL LETTER Q 0x52 0x0052 # LATIN CAPITAL LETTER R 0x53 0x0053 # LATIN CAPITAL LETTER S 0x54 0x0054 # LATIN CAPITAL LETTER T 0x55 0x0055 # LATIN CAPITAL LETTER U 0x56 0x0056 # LATIN CAPITAL LETTER V 0x57 0x0057 # LATIN CAPITAL LETTER W 0x58 0x0058 # LATIN CAPITAL LETTER X 0x59 0x0059 # LATIN CAPITAL LETTER Y 0x5A 0x005A # LATIN CAPITAL LETTER Z 0x5B 0x005B # LEFT SQUARE BRACKET 0x5C 0x005C # REVERSE SOLIDUS 0x5D 0x005D # RIGHT SQUARE BRACKET 0x5E 0x005E # CIRCUMFLEX ACCENT 0x5F 0x005F # LOW LINE 0x60 0x0060 # GRAVE ACCENT 0x61 0x0061 # LATIN SMALL LETTER A 0x62 0x0062 # LATIN SMALL LETTER B 0x63 0x0063 # LATIN SMALL LETTER C 0x64 0x0064 # LATIN SMALL LETTER D 0x65 0x0065 # LATIN SMALL LETTER E 0x66 0x0066 # LATIN SMALL LETTER F 0x67 0x0067 # LATIN SMALL LETTER G 0x68 0x0068 # LATIN SMALL LETTER H 0x69 0x0069 # LATIN SMALL LETTER I 0x6A 0x006A # LATIN SMALL LETTER J 0x6B 0x006B # LATIN SMALL LETTER K 0x6C 0x006C # LATIN SMALL LETTER L 0x6D 0x006D # LATIN SMALL LETTER M 0x6E 0x006E # LATIN SMALL LETTER N 0x6F 0x006F # LATIN SMALL LETTER O 0x70 0x0070 # LATIN SMALL LETTER P 0x71 0x0071 # LATIN SMALL LETTER Q 0x72 0x0072 # LATIN SMALL LETTER R 0x73 0x0073 # LATIN SMALL LETTER S 0x74 0x0074 # LATIN SMALL LETTER T 0x75 0x0075 # LATIN SMALL LETTER U 0x76 0x0076 # LATIN SMALL LETTER V 0x77 0x0077 # LATIN SMALL LETTER W 0x78 0x0078 # LATIN SMALL LETTER X 0x79 0x0079 # LATIN SMALL LETTER Y 0x7A 0x007A # LATIN SMALL LETTER Z 0x7B 0x007B # LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET 0x7E 0x007E # TILDE 0x7F 0x007F # DELETE 0x80 0x20AC # EURO SIGN 0x82 0x201A # SINGLE LOW-9 QUOTATION MARK 0x83 0x0192 # LATIN SMALL LETTER F WITH HOOK 0x84 0x201E # DOUBLE LOW-9 QUOTATION MARK 0x85 0x2026 # HORIZONTAL ELLIPSIS 0x86 0x2020 # DAGGER 0x87 0x2021 # DOUBLE DAGGER 0x88 0x02C6 # MODIFIER LETTER CIRCUMFLEX ACCENT 0x89 0x2030 # PER MILLE SIGN 0x8A 0x0160 # LATIN CAPITAL S WITH CARON 0x8B 0x2039 # SINGLE LEFT-POINTING ANGLE QUOTATION MARK 0x8C 0x0152 # LATIN CAPITAL LIGATURE OE 0x8E 0x017D # LATIN CAPITAL Z WITH CARON 0x91 0x2018 # LEFT SINGLE QUOTATION MARK 0x92 0x2019 # RIGHT SINGLE QUOTATION MARK 0x93 0x201C # LEFT DOUBLE QUOTATION MARK 0x94 0x201D # RIGHT DOUBLE QUOTATION MARK 0x95 0x2022 # BULLET 0x96 0x2013 # EN DASH 0x97 0x2014 # EM DASH 0x98 0x02DC # SMALL TILDE 0x99 0x2122 # TRADE MARK SIGN 0x9A 0x0161 # LATIN SMALL S WITH CARON 0x9B 0x203A # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 0x9C 0x0153 # LATIN SMALL LIGATURE OE 0x9E 0x017E # LATIN SMALL Z WITH CARON 0x9F 0x0178 # LATIN CAPTIAL LETTER Y WITH DIAERESIS 0xA0 0x00A0 # NO-BREAK SPACE 0xA1 0x00A1 # INVERTED EXCLAMATION MARK 0xA2 0x00A2 # CENT SIGN 0xA3 0x00A3 # POUND SIGN 0xA4 0x00A4 # CURRENCY SIGN 0xA5 0x00A5 # YEN SIGN 0xA6 0x00A6 # BROKEN BAR 0xA7 0x00A7 # SECTION SIGN 0xA8 0x00A8 # DIAERESIS 0xA9 0x00A9 # COPYRIGHT SIGN 0xAA 0x00AA # FEMININE ORDINAL INDICATOR 0xAB 0x00AB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK 0xAC 0x00AC # NOT SIGN 0xAD 0x00AD # SOFT HYPHEN 0xAE 0x00AE # REGISTERED SIGN 0xAF 0x00AF # MACRON 0xB0 0x00B0 # DEGREE SIGN 0xB1 0x00B1 # PLUS-MINUS SIGN 0xB2 0x00B2 # SUPERSCRIPT TWO 0xB3 0x00B3 # SUPERSCRIPT THREE 0xB4 0x00B4 # ACUTE ACCENT 0xB5 0x00B5 # MICRO SIGN 0xB6 0x00B6 # PILCROW SIGN 0xB7 0x00B7 # MIDDLE DOT 0xB8 0x00B8 # CEDILLA 0xB9 0x00B9 # SUPERSCRIPT ONE 0xBA 0x00BA # MASCULINE ORDINAL INDICATOR 0xBB 0x00BB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK 0xBC 0x00BC # VULGAR FRACTION ONE QUARTER 0xBD 0x00BD # VULGAR FRACTION ONE HALF 0xBE 0x00BE # VULGAR FRACTION THREE QUARTERS 0xBF 0x00BF # INVERTED QUESTION MARK 0xC0 0x00C0 # LATIN CAPITAL LETTER A WITH GRAVE 0xC1 0x00C1 # LATIN CAPITAL LETTER A WITH ACUTE 0xC2 0x00C2 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX 0xC3 0x00C3 # LATIN CAPITAL LETTER A WITH TILDE 0xC4 0x00C4 # LATIN CAPITAL LETTER A WITH DIAERESIS 0xC5 0x00C5 # LATIN CAPITAL LETTER A WITH RING ABOVE 0xC6 0x00C6 # LATIN CAPITAL LIGATURE AE 0xC7 0x00C7 # LATIN CAPITAL LETTER C WITH CEDILLA 0xC8 0x00C8 # LATIN CAPITAL LETTER E WITH GRAVE 0xC9 0x00C9 # LATIN CAPITAL LETTER E WITH ACUTE 0xCA 0x00CA # LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0xCB 0x00CB # LATIN CAPITAL LETTER E WITH DIAERESIS 0xCC 0x00CC # LATIN CAPITAL LETTER I WITH GRAVE 0xCD 0x00CD # LATIN CAPITAL LETTER I WITH ACUTE 0xCE 0x00CE # LATIN CAPITAL LETTER I WITH CIRCUMFLEX 0xCF 0x00CF # LATIN CAPITAL LETTER I WITH DIAERESIS 0xD0 0x00D0 # LATIN CAPITAL LETTER ETH 0xD1 0x00D1 # LATIN CAPITAL LETTER N WITH TILDE 0xD2 0x00D2 # LATIN CAPITAL LETTER O WITH GRAVE 0xD3 0x00D3 # LATIN CAPITAL LETTER O WITH ACUTE 0xD4 0x00D4 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0xD5 0x00D5 # LATIN CAPITAL LETTER O WITH TILDE 0xD6 0x00D6 # LATIN CAPITAL LETTER O WITH DIAERESIS 0xD7 0x00D7 # MULTIPLICATION SIGN 0xD8 0x00D8 # LATIN CAPITAL LETTER O WITH STROKE 0xD9 0x00D9 # LATIN CAPITAL LETTER U WITH GRAVE 0xDA 0x00DA # LATIN CAPITAL LETTER U WITH ACUTE 0xDB 0x00DB # LATIN CAPITAL LETTER U WITH CIRCUMFLEX 0xDC 0x00DC # LATIN CAPITAL LETTER U WITH DIAERESIS 0xDD 0x00DD # LATIN CAPITAL LETTER Y WITH ACUTE 0xDE 0x00DE # LATIN CAPITAL LETTER THORN 0xDF 0x00DF # LATIN SMALL LETTER SHARP S 0xE0 0x00E0 # LATIN SMALL LETTER A WITH GRAVE 0xE1 0x00E1 # LATIN SMALL LETTER A WITH ACUTE 0xE2 0x00E2 # LATIN SMALL LETTER A WITH CIRCUMFLEX 0xE3 0x00E3 # LATIN SMALL LETTER A WITH TILDE 0xE4 0x00E4 # LATIN SMALL LETTER A WITH DIAERESIS 0xE5 0x00E5 # LATIN SMALL LETTER A WITH RING ABOVE 0xE6 0x00E6 # LATIN SMALL LIGATURE AE 0xE7 0x00E7 # LATIN SMALL LETTER C WITH CEDILLA 0xE8 0x00E8 # LATIN SMALL LETTER E WITH GRAVE 0xE9 0x00E9 # LATIN SMALL LETTER E WITH ACUTE 0xEA 0x00EA # LATIN SMALL LETTER E WITH CIRCUMFLEX 0xEB 0x00EB # LATIN SMALL LETTER E WITH DIAERESIS 0xEC 0x00EC # LATIN SMALL LETTER I WITH GRAVE 0xED 0x00ED # LATIN SMALL LETTER I WITH ACUTE 0xEE 0x00EE # LATIN SMALL LETTER I WITH CIRCUMFLEX 0xEF 0x00EF # LATIN SMALL LETTER I WITH DIAERESIS 0xF0 0x00F0 # LATIN SMALL LETTER ETH 0xF1 0x00F1 # LATIN SMALL LETTER N WITH TILDE 0xF2 0x00F2 # LATIN SMALL LETTER O WITH GRAVE 0xF3 0x00F3 # LATIN SMALL LETTER O WITH ACUTE 0xF4 0x00F4 # LATIN SMALL LETTER O WITH CIRCUMFLEX 0xF5 0x00F5 # LATIN SMALL LETTER O WITH TILDE 0xF6 0x00F6 # LATIN SMALL LETTER O WITH DIAERESIS 0xF7 0x00F7 # DIVISION SIGN 0xF8 0x00F8 # LATIN SMALL LETTER O WITH STROKE 0xF9 0x00F9 # LATIN SMALL LETTER U WITH GRAVE 0xFA 0x00FA # LATIN SMALL LETTER U WITH ACUTE 0xFB 0x00FB # LATIN SMALL LETTER U WITH CIRCUMFLEX 0xFC 0x00FC # LATIN SMALL LETTER U WITH DIAERESIS 0xFD 0x00FD # LATIN SMALL LETTER Y WITH ACUTE 0xFE 0x00FE # LATIN SMALL LETTER THORN 0xFF 0x00FF # LATIN SMALL LETTER Y WITH DIAERESIS ./mytool/uni/iso-8859-4.my0000644000175000017500000000411207532460064015074 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-4Ncreated by mytool 2002-03-30  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~8V(;`"f}W)<a#gJ~K. *EL6rhj/ +FM7sik  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/ksc-5601-l.my0000644000175000017500000047555207532460064015154 0ustar henrichhenrichYUDIT-UMAP 1.0ksc-5601-lNcreated by mytool 2002-04-07}~VWYZ[]^_`abcdefghijklmnorsuvy{|}~¬ìŬƬǬɬʬˬͬάϬЬѬҬӬԬ֬ج٬ڬ۬ܬݬެ߬ YZ[\]^_`bdefghijknoqrwxyz~­íŭƭǭɭʭ˭̭ͭέϭҭԭխ֭׭ح٭ڭۭݭޭ߭=>?BDGHIKOQRSUWXYZ[^bcdfgjkmnoqrstuvwz~®îŮƮǮȮɮʮˮήҮӮԮծ֮׮ڮۮݮޮ߮$%&'()*+./1356789:;>@DEFGJKLMNOQRSTUVWXYZ[^_`abcfghijklmnopqrstuvwxz{|}~  !"#$%&')*+,-./0123456789:;<=>?@ABCFGIKMOPQRVXZ[\^_`abcdefghijklmnopqrstuvwxyz{~  !"&')*+-./01236:;<=>?BCEFGIJKLMNORSVWYZ[]^_abcdefghijklmnopqrstuvwz{}~ֱױرٱڱ۱ޱ !"#$%&'()*+,-./012356789:;=>?@ABCDEFGHIJKLMNOPQRSTUVWYZ[]^_abcdefgjklmn²òIJŲƲDzʲ˲ͲβϲѲӲԲղֲײڲܲ޲߲  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSWYZ]`abc³óƳdzɳʳͳϳѳҳӳֳسڳܳ޳߳ !"#$%&'*,-./012356789:;<=>?@ABCD´ôŴƴǴɴʴ˴̴ʹδϴѴҴӴԴִ״شٴڴ۴޴ߴ klmnopqrstuvwxyz{|}~µõŵƵǵȵɵʵ˵εҵӵԵյֵ׵ٵڵ۵ܵݵ޵ߵ;<=>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`abcefgijklmnopqrstuvwxyz{|}~¶  !"#$%&'*+-.1234567:<=>?@ABCEFGIJKMNOPQRSVWXYZ[\]^_abcefgijklmnortvwxyz{~޷߷  !"#&')*+-./01236:;<=>?ABCEFGHIJKLMNOPRTUVWXYZ[^_abcefghijknprstuvwyz{}~¸ĸƸǸȸɸʸ˸͸θϸѸҸӸոָ׸ظٸڸ۸ܸ޸ !"#$%&'()*+,-./0123456789:;>?ABCEFGHIJKMNPRSTUVW¹ùĹŹƹǹʹ˹͹ӹԹչֹ׹ڹܹ߹  !"#$%&'()*+,-./01234567:;=>?ACDEFºúźƺǺɺʺ˺̺ͺκϺкѺҺӺԺպֺ׺ںۺܺݺ޺ߺ !"#$%&'rstuvwxyz{|}~»ûŻƻǻɻʻ˻̻ͻλϻѻһԻջֻ׻ػٻڻۻܻݻ޻߻Z[\^_`abcdefghijklmnopqrstuvwxyz{|}~¼üżƼǼȼɼʼ˼̼μҼӼԼּ׼ټڼۼݼ޼߼:;<=>?ABCDEFGJKMNOQRSTUVWZ[\]^_`abcefgijklmnopqrstuvwxyz{|}~½ýĽŽƽǽȽɽʽ˽̽ͽνϽнѾ !"#$%&'()*+,-./0123456789:;<=>?@ABCFGIJKMOPQRSVX\]^_bcefgiklmnorvwxyz~  !"#$%&'()*+,-./0123456789:;<=>?BCEFGIJKLMNORSTVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~¿ÿĿƿǿȿɿʿ˿οϿѿҿӿտֿ׿ؿٿڿۿݿ޿  !"#$%&'()*+,-./0123456789:;=>?z{|}~ !"%()*+.|}~ !"#ghijknoqrsuvwxyz{~€‚ƒ„…†‡Š‹ŒŽ‘’“”•–—™šœžŸ ¡¢£¦§©ª«®¯°±²³¶¸º»¼½¾¿ NOPQRSTUVWXYZ[\]^_`abcdefgjkmnoqstuvwz{~ÀÁÂÃÅÆÇÉÊËÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ !"#%&'()*+-./12356789:;>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`abcfgijkmnopqrsvwxz{|}~āĂ㥹ĆćĈĉĊċČčĎďĐđĒēĕĖėĘęĚěĝĞğĠġĢģĤĥĦħĨĩ  !"#$%&'*+-./1234567:<>?@ABCFGKOPQRVZ[\_bcefgijklmnorvwxyz{~ŁłŃŅņňʼnŊŋŎŐŒœŔ  !"#&')*+/1268:<=>?BCEFGIJKLMNORVWXYZ[^_abcdefghijkmnprstuvwz{}~ƁƂƃƄƅƆƇƊƌƎƏƐƑƒƓƖƗƙƚƛƝƞƟƠơƢƣƦ "#%&')*+,-./24689:;>?ABCEFGHIKNPYZ[]^_abcdefgijlmnopqrsvwyz{ǀǁǂdžNjnjǍǏǒǓǕǙǛǜǝǞǟǢǧǨǩǪǫǮǯDZDzdzǵǶǷ !"#%&'()*+.02345679:;=>?ABCDEFGJKNOPQRSUVWXYZ[\]^_`abcdefghijklmnorsuvwy{|}~ȂȄȈȉȊȎȏȐȑȒȓȕȖȗȘșȚțȜȞȠȢȣȤ 000 % &0 "%<"<    0000 0 0 0 0 0000"`"d"e""4 2 3!!+&B&@" "#"""a"R ;&&%%%%%%%%%%%!!!!!0"j"k""=""5"+","" """""*")"'"(HIJKLMNORSUVWYZ[\]^_bdefghijkmno!!""^".""! 0%%%%&d&`&a&e&g&c"%%%%%%%%%%%&h&&&& !!!!!!&m&i&j&l22!3!"33!! 56789:;<=>?@ABCDEFGɯɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿ  !"#$%&'()*+,-./0123456789:;=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]&'(*+,-./0123456789:;<=>?@ABCDEF1112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111ʇʈʉʊʋʌʍʎʏʐʑʒʓʔʕʖʗʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧ!p!q!r!s!t!u!v!w!x!y!`!a!b!c!d!e!f!g!h!iijʅʆ %%% %%%%%,%$%4%<%%%%%%%#%3%+%;%K% %/%(%7%?%%0%%%8%B%%%%%%%% %%%!%"%&%'%)%*%-%.%1%2%5%6%9%:%=%>%@%A%C%D%E%F%G%H%I%JEFGJKMNOQRSTUVWZ[\^_`abcefghijkl333!3333333333333333333333333333333333333333333333333333!&33333333333333333333339:;<=>?@BCDˤ˥˦˧˨˩˪˫ˬ˭ˮ˯˰˱˲˳˴˵˶˷˹˺˻˼˽˾˿&2?ARfJ2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{$$$$$$$$$$$$$$$$$$$$$$$$$$$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n!S!T![!\!]!^  #$'138@BSgKI2222222222 2 2 2 2 22222222222222$$$$$$$$$$$$$$$$$$$$$$$$$$$t$u$v$w$x$y$z${$|$}$~$$$$ t  stvwxyz{|}~̀́̂̃̄̅̆̇̈̉̊̋̌̍̎̏̐̑̒̓0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~000000000000000000000klmnoqr00000000000000000000000000000000000000000000000000000000000000000000000000000000000000?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_ !"#$%&'()*+,-./ 012345Q6789:;<=>?@ABCDEFGHIJKLMNO5678:;<=>ͣͦͨͪͫͬͭͮͯ͢͠͡ͱͲͳʹ͵Ͷͷ͸͹ͺͻͼͽ;Ϳabcefghijknprstuvwyz{|}~͇͉͍͎̀́͂̓̈́͆͊͋͌ͅ͏͓͖͙͚͐͑͒͗͛͟͝͞ "#%&')*+nopqrsvwyz{}~΀΁΂΃ΆΈΊ΋Ό΍ΎΏΒΓΕΖΗΙ,-./246789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWZ[]^bcdefgjl  $,-/0189<@KMTX\pqtwxzĬȬ̬լ׬EFGHIJKLMNOPQRSVWYZ[]^_`abcfhjkl  ),-458DEGIMOPTXaclĻȻлӻ $%')-0148@ACDEILMP]ļͼϼмѼռؼܼ $,@HILPXYdhԽսؽܽ DEHLNTUWYZ[`adJKLMNOPQRSTUVWXYZ[\]^_`abcdefghihjpqstu{|}оѾԾ׾ؾ @ADHPQUſ̿ͿпԿܿ߿?ABCEFGHIJKNPRSTUVWZ[]^_abc  !$(01357<=@DJLMOQRSTUVWX\`hktux|}~ǃDŽDžLJLjljNJǎǐǑǔǖǗǘǚǠǡǣǤǥǦǬǭǰǴǼǽǿ ըթժիլխծկհձղճմյնշոչպջռսվտ $,-/18<@HILMTpqtxzȀȁȃȅȆȇȋȌȍȔȝȟȡȨȼȽ ,4PQTX`aclpt|ɈɉɌɐɘəɛɝ!"#%&'()*+,./01234567:; )LMPT\]_`ah}ʄʘʼʽ !AHILPXY]dxy˜˸ !"'(),.089;ցւքֆևֈ։֊֋֎֏֑֖֛֢֣֤֥֦֧֪֚֒֓֕֗֘֙֜֞֠֩<=>DEHLTUWXY`dfhpų̴̵̸̘̙̜̠̩̫̬̭̼ $(,9\`dlmoqx͈͔͕ͤͥͧͩ͘͜Ͱ  !$(0135 XY\_`ahikmtux|΄΅·ΉΐΑΔΘΠΡΣΤΥάέ $,-/018TUX\degipqtxπυόϡϨϰ-458<_bdfghjkmnoqrsuvwxyz{~׀ׂ׃ׅׄ׆ׇ׊׋DEGIPTX`lmpt|}ЁФХШЬдезй 0148:@ACDELMPT\]_ahl|фшѠѡѤѨѰѱѳѵѺѼ ,-04<=?AH\dҀҁ҄҈ҐґҕҜҠҤҬұҸҹҼҿ  !%(),089;<=DE|}ӀӄӌӍӏӐӑӘәӜӠӨөӫӭӴӸӼ@D\`dmoxy|ԀԂԈԉԋԍԔԩ <=@DLMOQXY\`ehikmtux|ՄՅՇՈՉՐե $-89<@EHIKMQTUX\gipqtփօ֌֍֐ְֹֻ֔֝֟֡֨֬ ()+-458ahe9iouvv{U[WQ|P(S\E]bcnddn py[ݎ}EN~NPe]^aiWqTGu+N^Pgph@Q RRjwR`/PHacdhpLt/t{Pʼnܙ(R.`]bOQIS!X^fm8prs{P[SfckNVPXJX`*a'biЛA[}_NPTU[ ]]e*eNh!jKrvw}^NߏNʙUNNEN]NOQwRS@SSTVWuW[]^abeQggikPkklBnpxrstwwzv}  ߈b3dҚEןW \@ʗTzَ͐X\Hcz[_zyzP&R8RSwWbcrk mw7SsWhvg:jopm̙Kfwkx<SW-YNcisxEzz|us5RWGuG{`̒jXQKRKRbhiuPRRaeh9it~{K뉲9љI NYdfjt4yy~_ &O S`%bqlr}}fNQbw܀OOQvQUVhW;WWYYGY[\]]^~_beeggg^hhj_k:l#l}lmst&t*ttuxuxxyAyGyHyz{}}-OHw!$Qe}OvT bhTUQ: Za bbfqV cOczSW!gi`ns"u7#$%} &'rVZ()*+,NC-QgYHg.Ys^tdy_`lbc{[[R/Yt_)`012tY3456789:;<=>?@ABCoDE`FGfHI\?JKLMNOPQZ%g{}RSTUVWXY\r-RL]Pde,ko|C~͉dbɁ؈^gmjrttoO] _ QcueNPQiQhj|||oҏOQ7RTB^anb>ejoy*܈#bjRfkwpy+bBabe#o#qIt}o&#JQRRm pȈ^eko|>suNO6V_\]`s{-΀F4HaOoyR`ddjo^prv\2ouxy}ɓX_g'p't|`~Q!p(rbxʌŒڌNP[^eqvBwJ|'XZA\bjmov;}/~78KRegimAnpt t`uYv$xk,^Qmb.xOP+]m}*_aDhaRҀQQi^z}uOR)STU\e`gNhmlrrttbu|lyψ̑ЖTo~qtWgmt3x,z{ |ditjuxx虬T[^Uo NSMZ)]_Nabc=fifno+pcw,;E;Ubg+l jzNY__g}T+WYZ[f'ghkqdu㐁EL@[_lsvv߄ QQMQRhlww }}bnQT T}ffi'nvw‡iOQRY^=aUdxdyfgj!kkr_ratAw8wۀ(g(lrgvwfzFklY"g&SoXY^cf4gsn:s+zׂד(R]aab bdeiYkfkq!su]~Fj'aXPRT;UOelv} } ^RlriTsZ\>]K_L_g*hicneef ginx}!+*2P OcW_bcgonCqvÀ̀ڈ)MjO/Op^gh"v}v~D^aj qiqujd~ACO{OpQ^hl>lNlr{ălt:PRXdjtvVx9eS^_R%wINPQu\[^wff:ghpuuyzݏ' OX!X1[fnkemnzo}su+܉\OPSS\[_g yy/9;g,NvOYI\\\cghpqt+~+"ҜN NOPRVRoT&TWY+Zf[Z[u[^fbvewemnnr6{&|?6PQ@tܖDٜSRT)VtXYTYn_abnfl~qv||}gO[__b])g hx|~ClNPSS*SQYZb^`abIbyegikkkklht5uxxyy|}ဥ>ƒ芹l^۟;V[*_lejkm\opr]sӘ;al7XNMNNNO:Oy@y`y{}}r цLjߊP^܍fߞRJigjPR*\qeclUsu#u{x0Nwdkq^N kgIhnkcoN PPQUFUV[@\\^8^^^`hQjanXr=r@rvye{ԈsaޗX^tUlza}"rrruu%m{XX]^^_`UbceMfffhhrt^{n}n}r͟ YYm^-`ffsglPmo_wxƑ˓+NPQHU[ [bGe~en2q}ttDttvly}~Uz9ux%MSh\QiTlm)n+ ;-gRafk~ ]emqnWY[`'`bff_s)svw{lVreNRkrmz{9}0oSV/XQ[\\]b@cdf-hlmnppqu&uuv{{|+} }9,m4 a7O\lg_m|~[k]d \s[`g~mފ R7ppQxpOSUVWXZ[\\^%ab bKcde6exj9kl4mo1qrsxttv&wayzWz|}}~a)1څꈖ8Bl֗ӛSX~Y[p[moZqt!t]__`BehiojSkm5msvw{M}#@cbđb Se]]']it_hob҉6rNNXPRSGbf~i^OSV6YZ\8\N\M^_`Cef/fBggswy:ń͉fiUzW[_`obi kn\q{҇UXߘO8OOT{Z [aT3UXbXYgZ[`aeVefdhlZopqsR{}2\KlsDs:ntevzi~ Q@Xdtuvp͙Tn&tzzهxZI[[himcstt,x}UL.f_egljsP-ZkjwY]l]s%uOPQX/Y-YY[]bdddfjHqtdzz~G~^p‡ YÐRa~k2mt~%OPQRWX[^aBimngnqtbu(u,s8Ɏ NOQPvQ*SSS[[\$aaer[st@vyPyy}Ն^GꖅR_gef1h/q\z6 NjRkoqSK1NqQCSTWWWZZ[`(a?clm9nrnr0s?tWшE`ƖbXg^OMPIPSqW YZ\ apfn-r2tK}Äf?_[U˛ONsOQQjU/U[z[^|^}^``aa ce8g ggiaiblm'n8os6s7t\u1vR}8Պۊ0BJ>zIɓnX kӀQAYk\9odsגۀbp}hW`iaGkNYTm-pcl㐑QaɁOPQ[aadikuwdcpNNO Y7Y]__[`!r>supuy 3Q茽 p7vNNRSpTVY[__nn}j5mwNOZO~Xen8NXYY`AzOQeSDNRi[UNR:TYY[P[W[\`caHnpqnstux}+(ɊǖO\RVef(p|pr5}Lr[qhkozv\fo[{|*6NNS X4XXYl\^3^_5cfgVjjk o?rFsPtz|x߁烊l#ψݍwQTW([bMgPh=hn=np}~! KNr-{͓OGONQ2TY^bguinjlnrs*u{}5W[Ο_RT Z[dXeunrvzM{|M~>߃{+ʍd_iOCOzPQhQxRMRjXaX|Y`\\U^`b0hkloqNt u0u8uQvr{L{{{~n>I?"+ZkRb*bmYvdz{}vS`\^o8p|cdzvNNNP\PuTHY[^@^^_`c:e?etefvfxgihjkcl@mmnn^ppssu:w[xyz z}|}Gꌞ-Jؒf̓ V\R6RU|X$^_`choym{,ͅDd=LJOQFQRV2__kcdefAffghhioonqgqr*tw:yVyZyz z||}D~pT m;՜e|[X\ SRbsP'[_`akhmt.z.}B}~1k*5~OPWP]^c+jN;OOOPZY݀TjThUYO[]^f]g1gh*lm2nJopsu|L}},}ۊ;p31NRDz|OQQW[\fYj=mZnoq uoz"!u˙N-NFS}jiklAzXafbpuu~RINKSTW0W@_ccdoe/efzggkbl`lo,wx%yIyW}󂝂rvzz7~TwUUXuc/d"fIfKhmikm%nsthtu[uvwwy~ ~/:ю돰2csOSYZ^hNtuyz̏egWoW}ݏ/_aoNOPSU]o]k!kdx{IʐncId>w@z/jdoqttz|~|~ }LR9[dg-}.PSXyaXaYaezًP P!RuU1Z<^_pa4e^f f6fino2sv!z9YքPW[[_icx&}܅!ǑQg{VQY`UPRT\:a}bbdenv `_NSCUY)]dlmszw!QTU_do}M5P\lmuw|=|dyXY^cwrRuwk܌^ftm}˗QRCfmn}.^RRTabbhiiZj5pq&x]yyyz xՃIIbOVqwׇ[_gQSXZ[`ad`~=p%dP]gXbciixjnkvy˂)ύKۚ6 Nu\y]z{Q{~.ĎYtf%i?tCQg.QE_l]w`ST9V4Z6\1pZ퍣_PtNS`n,\dOP$U\^_`ehlmquuvazzI}}n􆩏əRRGRŘ퉪NgoO[glmxtx'ݓ|yz1_NTU>XY`bSbg6iU5@P,SSUDW|bXdfkgoot"t88TQVWf_HakNpXp}Yj+cw=XTd-i[^noiQLSY*` aKklpl{΂ԍƐdodeQNTWa_hvu{R}qXí*9PxYWYb*a]ryWaZF]bddgwlm>r,t6x4wۘR$WBgrHt㌩*QkScLOiU`eWlmrLrz_mopaOPObArG{}MWj^sg UT [^c^_ e=[OHSS STTW^`bbcUlmfux2ށ/ބa ^EffprOR}_jaSgSjotyhhyǘĚCTziSJ_|buvBS9_<_lsubu{FNO\c>myrϘ0NQDRW_blnppPpqstiJaQn_W`agfYJNNNT|XXY}\_'b6bHf fgkmimnVnooop]rt%tZtvy\|~ႦkN_twje`bwZZfmn>t?B_`{T_l^lm*p}y ;ST[j:pkuuyyqAt de+xxzkN8UYP[^{`ckafehSnqet}i%m;ns>AQ^L_`M`a0aLfCfDiln_nobqLtv{|'RWQS/V^_`b`affgjmoppsj~j4ԊRsr[jkTV[]eHefhmmr;uMOPSTT)w)x"%"R!$",)v(,(y(v(z"/(!("!?(*(-),)!)#!@)*)-)"($)$)%(&)&)'(()(())))0(/)/(+)+(.)."'"0"("+"*"-")%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x,',!,",#,$,%,&,(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,Q,R,S,T,U,V,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,W!*!.!/!0!1"S"T!%!&"6!G!H!X)y)z){)|)})~"f!I"5'$"`"e"b'Y!J(w(x({(|(}(~%0%1%2%3%4%5%6%7%8%9%!%"%#%$%%%&%'%(%)%*!g!h!f!i!j"U"X"V"Y"W"!"""#!S"$!T!t!u"3"2!n!p!D!P!+!|!}!{!z!r!s"1!E!q!-!o!V!A!U!B!C!l!m!x!y!v!w"A!Q!R(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f&!&,&"&-&#&H&G&.&$&B&A&/&&&F&E&1&%&D&C&0&'&<&I&J&7&K&L&2&)&>&M&N&9&O&P&4&(&Q&R&8&=&S&T&3&*&U&V&:&?&W&X&5&+&Y&Z&;&[&\&@&]&^&_&`&a&b&c&d&6"F!a!`"C"G"H"K"J"I"L!c!b":"9!e!d"8"7!_!^"B![!]!\"D"E!Z!Y"O"N"P"Q!O!N"<"="@";">"?"M"["\"]"Z!!!"!#!(!4!5!6!7!8!9!:!;!*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s+!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v$!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L"_(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L"^'I'J'K'L'M':';'\']'^'6'7'8'T'U'V'W'X'!'"'#'%'+','-'.'/'0'1'2'3'4'''(')'*'='>'e'f'g'h'a'b'c'?'@'A'B'C'D'E'F'G'H'N'O'P'Q'R'S'Z'["c'l'&'`'o"a'<'m'5'9'j'k'_"d'd'n'ilioKvRX2m[_2_>y;\tuds&]`a&Nx\0c*qiMz|/S!q+gQR,Nyq}^?{:y9NRc+k`NzKwe%JaTLja\c_-KkU/Vuex^@l#iMj'iv{;gioLPf^Ad,XLyqN_z$f2z{z=LHoMUUS"lQd'lRv1N{PQK?m$m(^Bvbm\\u`9TNt5S[V5l$dfqjKlK@lrPjyrl%P_gjPk\Q[i}L[WZaV6c_^C^DJ!nlS#n7xOjHn8q,q%iNy<eylj]VmBx%e:[XJ"QMnmlk^Ec`JIriUNv6NBVGc4q-jbWBs'MjknY2}%vUUbx5Luu5d-gkqUp;i5LIzUaTWV\A^Fzocaas\vN|[Dxq\deo\1UVsZKA[CYzSnz8}&kot&LJs(s[['v7OfprKZgRWCvph^e&egJ#L'jIx6z%q.oNKmv0oOiOw^NS\w[(Kx_!]auJi6glnnsp_?LKPAtR`:_@N`\R}jVvjJhic,sPJ$[x^GkpqVebLLK{jc_AVmiPn9UcQSeph4kCj*z|uvp<}T`;NCP:w:XswMd.T_Pgl}R.noUWjdx"MkW?{1Ml\2PlN}npLBPmews|n"Y3Xti7N.Y"XqTOe'URV)t"qWUXp=WPTPWOkj}k[m|EKB}UtHhjusy^SolS]Bo7gTJJY{z}V*txww\,WW_"N>Spp$alOgsKm)J>tovN^{P;U7nqt(\xK'ZN`fm%nr\yy\s\xrty|qP<[yW1K|p%K}UtMmJ%V+PBp>R=L$z6LMZzvOi8XuLNWMTQimJkYb}2c-VLY4a'nSPC}3UdOhmCP2N~Z(xP}VxQxR\S]b{y]Ac5m]NDK!]c|]y/R{O!d(t6l~c.gm}AZbX3]dpovqzpQuZO\T\&o?NO`YYVlTjKJ?U0OiqmLOdxdmWX}'j+v2Opy=ftK[sQiQs)P`iRZcbRv"atZdgUu?O"M/O#M0q~P#a/x#J&w;rj^HiS^I}^J@yjQNnTTRY#}(WYwNz>OVWpkaxE\z]Cy_go}ev#Y|})gnUeoPM1w"q2q1M2Z+J'cb{t\\Bp'f@Jmhkeh\Cm^SrLwNTg+KCa1w2SsSRu@_]nsgq}4rHsRntbSLQ_ji:YWuMqrzGYxTBve]Egrm_JK[zh5S&}5yIdb{=W$NENUVfe=^Mlsm`ll{>_kaxy>Ps`*hbbTR}e(YSS^t8w<\}hldgcwl(zqerPtR/\eP%q4|1Lx]FzQw_z(nu^Ngsw,kDma`+]GR3R?JL{?e}]eXMltPuhmPRYXvf[*w`XYt#t]oQY5m+c7n;M4`sjMluhnK)q/JMl)rk}oysfAlXm,jNh_^OR&gtQVfBccd0X4v%s^W%whhF{f]f\~XZZ,j0c8J*ayj1rlznnUytRl{{}p`=NcxF^._Ee>m-zjMnm&m.pm]!m/|xXkLyM5z)a]bUmO]"yJjhemSkiTazdLadhGN[\Uw5|spsN/q5oRhHkqKT`>cxji|2`tO`n%z*fCa2J+cdi;bVsrnVj2PvlYZKO(]#X[yNiUcQR<X,sLM{vVguhocyR;ssc{^PN0VwqYuA\Du;^Q\f^RmbnvjOpnc|S_Sta3a4tS_FiV[+v&c9kEt)M6RyZ-RcOQK\LzO]h)c;c:`Znw\3SuW&v5W[aUTj_#}_PwmTK*d[a{K"S`d?{@Z>dMV9o@a|v9_Gd1\g\hzVSvqZzrb}UOPxM_uKdpK+WDb~]ZZ.JnU9c!hcs+O)SwTqNdhreug.V:_ld@hdX5d\t9q6b^a5Moq'NeK]Ycs,Pyl+^Swiyua^Knc|HMpyv_pe?N?|am0}Qv;yOkZJAR8MqcS}ffmczp*yP|bx'aenygvjm|4uBW\pu]hSmu|Z?L{Szt$oWTC{c{m`-jn{3dBvgR]_L|Ie)`vv3a~KpjojpZ@x4krdCiWdqJoNW|JsaKDceKEj4i=WIk[m1LCw>|KxtY7sSsTwdwQX7N1JB{4KFpvUgjPLTK/t*i/uCiX]iqsU{^;t{}s}rw&]ITSL(ZALUYdzJecS<JpPDJPz+kkgxYeQWs$T{|czXsUO+ksU|STM|Yfbyb!kT`wd2L|{dt+P=Jqo8W@nz}tSc{BUh[.a6x7`?{C]jb"n&vhvu]JPb]&]kdyc/P|t|LJ,};}Gg2jQ_tQld^eCY&M<semUY:mg{5xl`gLYTFg%UuS>|{dr_uhxxmNG}vhXMXgVLZJc_vpGpFX:qttpuL|ejEjs][\W^}ryUGXPpHQ!Q"YTVhYJZ1XG\bsNutq9ZSvjOu}.JR_4W]z:n'u=xumhTaQ#aVyx[JKyTTY\n>wmRnafwy]mh[[3Qw`0TbvWWyX]M}r+M=xBr,J-J.O.cB\7[ZY;JsvSfxjujvvyO/JSJ/R0q:W3cCs}^Z^[o^bcn{_wWJNh[[q;iqz7PFL+n(KzyyL}S~dPrnTU_M|8QPrMwRJTUYX^MYn)v<L[pI||hIt~g|W^^\p,L~Maa:[oZ2Q%\8XvQ$Mb\jpwpJP>]\TVSVmPM!_5_xT!N2hJkucUuPu!Y'e+fKuqeEy#`[vkKqYju"WQQxjxjyZ3o_qoevn?bdP?z,uQg3i>rN[4|N]ng4W4w4M>ZiO0wYsfNYN*KHP'pKPGdE[`UZW'n@xvuRmiY<eFu#ZTb'{|q\JthzNiixbeP9TrQ&_N|tS*L,o`eePU[||fK~mj^1ycT"OvVPUjqnzKe!U1OmmkU2U<}bs-}[i0Q'}cN3}dzNJ0w'O1f"|6r-oas.\FYkh`a(UvO}^]YQdjrOw?bfb(cVmQiyV1^2`hS+k\_/JCn|}CkvO2YlY=X_T8k>]o]p]q]rY>{FO3n}d+ZEXlQ(b)^`2|~Q+Wz{HbWT#pxW(agS?odWEkb|gd"bhfP{hthett`^v4jRy{`BJdg7j}Y]Z4n*{i[KZ5q>S,{I_OS@cWof|Pi@uSl\w7j8Qy\Hj9q^W6O5Y(ln]*M"h.a=rQiAR|[5sgX~|Qm2t/{#|An+T%trnY{JMcX;e[xwvTW)KIfQpLX.ySU~Xr|ZkbXmVVQ`3|RkHSApMOwmRTX\IWq_;s%tMq?x1iz{KJUyTwJVH|hs=n~g~SBS6L-vzV2RXgXc%g9p-{Lk!T&{MU=q_v{^4UkeH{$T9^ad#W7xn^5VRyUg:kUUwoga>z.ViVng;lKU3N4{%anw({NX={}|iO6mGn,L]v'fzu$}\m3NIoha?z[Kcw){&\9q@mHoCV-}Nh!{tU'qvfSL^x2\k}6ejq`[L]MTHYmu%f{fT}HV!}?|So!g<QnfUir_0X`|:}/pN[aeIm4`CcXi{j(}7{'iB}wbY\lh"fp}x}yv?g'fWTsTIVzWra@[bfXg=pOs>b,u7`p}8chT'h|zRxoVSU4pPwpn3j:jSmI]+e,}!_Pl3_Qmmx8wzx+t`T:d3iZ^6Y?Y@VoYLZ*_eweL2_yW`T;}zL3[s_RNJnZdd{OO7nCNjb-WazuUIx,gYsiXmcDpqhe`znDY^k"k#|Bj;h+^bmoh#OqT<|jg>|rV4b.S7zLz\m5ach,h]oit=O8i[Q,ZGkIhL^7V\-bkV|JyTZtWL!O:u8YCPhcEkxr1O;S-haNl`4^c]wr2svv[W~x_wrP)fZu&Wb3^g\TMs8i!rrskpWOWO_h@hAOci"P*sAP+TdoqCn_VktYWfZ7]{]OX#ZYpXoDaXqTmrU[U\sDKWb6oq{USX]PpYK3U]M'P,Q:qDe3{uia}`|<Z"Z#R!Robm^iN\r5Pd]QaH[7_cm9qEsOW+a,cknGaIJzp{zapZLgZtL?NmU)zbPekVl__|wV^jK4o>L5O=orb7Lhp|V`qFb8k+K5XQtNswWFQ;w*mJWSXzvEQL]|_}ye`Jr}S0tsZIf^x:hPX{jUV#vFr[d|h2ZZr\{Vi2n-zc\nujf`p}W,uEn`[e]^Ypi#qyrD`Ki$b9c1|kM(L6p[f:M)sCaYo+gE`isET@U?].y|L@e"N8XRyVq*NQvG[k_~XawsWgT~Q<eOK6Z8MDV>b:OX`Lky}}WhKXibh:cGlMlNV?c'_V}hnav(]}x;hQyWNnlOi%VUMEm:Q=O>l;R1LiYDi|Q>l<e-w0LjSDV@V}a!^=v)Z$V$uFa"iFrEtiVlkSl=b\^kp\k?WNQ?u+y}J\MFr6]~L7[8PiN]k@}"xKjVq0[NwC[OK$x`{WkJ`!NMT\}XRvr7zvv*zwXft1hRJELkbnb;w-xasl^!d}cl]/]0K7hSa#R`p~i&Krms\Y`MwZ[9L.Z[MG]1X/c#Norsx3`Nu}klSE|lR[Tk^"efp0UDmtcmhBmuW|m;v+r8vHSfr]O?k,O@f(}iOA`_^l`"t?boYqqGK8y~[:ZuvlZ\zd`O]2f)ossmkzyfJ]U^J^_df}u,duicmKOdXS]3Tlr9_7KN{XPY]Rwtg\d%|#[;r:i}PJuVYEd4m'j=f~wDu-Y`J4xbOBl>e4MHnHgHMIy7qhYr[uJ5YFXIY+m<XT\Zb<|ml`R~iGf*bpz;u.{*l{l?|XTeyCnbWimv^mLlcnhTzx]4d5X0XUtjN9VaORP6N"snsx\LPK|$MJWT^#d`nIb]u~T,UQXpxCjWuWX?}@k-U*g(nJJgxcT]jX{Ymwe5P-qqb=cHYU_*[<xdqze6so{Za`Y,uk`6iHKOcI^nb>\oV%bqV~Y!X@\[m=_8j%W-symxuGaJkcr^xLjYSF[fu/Npi~{6brOrw9YsaKZ]Z9k{K9my``t@}<_1co`#}9p1MKm>U@cpmzidUmg]Tve7[gb?nKWtp]N+g^VVaLh3en\"`PU5U!{[yKKst%zHVWie{\}P{vZ%[=lbMwp^vI^oS1|nhCqHNqymrtd6u9\pcqh%r;^$ZLJicZ|YjZyDc${]oJhDULkWY-{+SYU"v^Zv`Qi(uyz/k|`jc2UEqcUnMLmYXAzlqkzY1J7SgxeS2b@r_Mey,MMn.V.Wjg`k.OY\Mm{^pWk^%_W[P[QU#p2\\Jhxf\Nj\[Ri3w[c(W.`aK:eQP\UAXJc)`$i)SG\]x.L8P.XrcJL/T-vQPLJFUBN:JGz0_Xu:ekot]5M*cr{wwP}:}av~Q@hEd8ahLARm[>`bzIaMJ8r`qI^qp_xDnL^rgIbsgacKcLOxo,}~|%z1_Y`RtZqJN#rv!kKq|sG`km|a[ne^uzSqKP/]9QCu1jFpav,uYpk]:r?wE["rvJ:wuKenf`SN%VXT/iISNtBKfq!k2q"k3p4KtT0s2{7ulngt2umOspbnNqLe8WucsOeOFs3dXOyOZzMfcrbunJ;c\NrVYn0teXB\PLnU`vJ}JXVtOV&\>[TWGr~qMbC\^\_o-f+y]j?o.tPNsf,N^UyctMPU8w}\)^v\*rci4R\ifcvgJPNZwJ<nhZ^rwb{L&Z;niuZw\ajNAT1}1f={-xgaNwbuoOGT2LoThnOwW`&VAa\pcqd\qV'tuqNrdP0loy:k5TmbDigk4j!x^wJ{wFOHaPnPitNtUMO[];N,ihT4dGu[zA^)TxowS3k7oxu\mL[UqOqPu2Y.U,bF}#{e_+buv-u3p5a%u]l"m}u4{8[#VJKYeTszk8`7Wlqle/UaWmQQaroy]W0XhK=yZxNyp`mc3t3jBrfp6[VkdrgWUT6yhWAeUijWLSibI|[M-L0j"dvP@p7n!WvbJbKzOk_VKt4mMdRj)d:s"MRvKqfmAh{bMSo5ziy&_=wGx}x|^+[hc]abQFvPkfZylG^xxic^NuzCeWlHsId;f.o6\?N=XCPOOzsJ`WQGi.h=zDbOzEy8\`{0X)e_y'vnvLbxlqZ`qRRLOKJ=]?vo^yz4U-qg^>\@QHQIx>KvTyubaSXix~OL}$NvzPLsf>v.UpQJ|>UqMiz5bPtwMTg#[%bQW"wcj&P!NZ{k[&[^Xej`X*e`V[oFxjdUNw`XWotmMfLtucdJ\ayH|?h'XDK>\.Wwph]@OM\sY0fid<jDdlde{xL;d=M\Yw]_mNYPe#yMM.ONv/}SkmV\e$U6V]yig$VcQKVdUr^zWxXjOUX}X+}K|\`(Us}YL#YySjuuoGSZZ=h(\/p#MU`)^,p:n1n2vMnRVF`es;eadKW#[BJ~OO0!0"AB0#CD0$0%0&0'EFGHI0(0)0*0+0,0-0.0/J0001020304KL05MNO06PQRSTUV0708W090:0;XYZabc0<0=de0>fgh0?ijklmnopqr0@s0Atuvwxy0Bz0C0D     0E0F0G0H0I0J !"0K0L#0M0N0O0P$%0Q0R0S0T&'(0U)*+0V,-./0120W0X30Y0Z0[4567890\0]0^:0_;<0`0a=>?@ABC0b0cD0d0e0fEFG0gHI0hJKL0iMNO0jPQRSTUVW0kX0lYZ[\]^_`0m0nab0ocd0p0qe0rf0sgh0t0u0vi0wj0x0yklmno0z0{pq0|rst0}u0~vwxyz1!1"{1#|1$}~ABCD1%EFG1&HIJ1'KLMNOPQR1(ST1)1*UVWXYZ1+1,ab1-cde1.fghijkl1/10m11n12opqrst13uvw14xyz1516 17    18191:1;1<1=1>1?1@1A1B1C1D 1E1F!"1G#$%1H&'()*+,-./01I1J1234561K789:;<=>?@ABCDEFGH1LIJKLMNOP1M1NQR1OSTU1PVWXYZ[\1Q1R]1S^_`abcde1Tfgh1Uijk1Vlmnopqrstuvwxyz{|}~1W1XAB1YCD1Z1[1\EFGHIJ1]1^K1_L1`MNOPQR1aSTUVWXYZabcdefghijklmnopqrs1b1ctu1dvw1e1fx1gyz1h1i1j1k1l1m 1n1o1p 1q   1r1s1t1u1v1w1x1y1z1{1|1} !"#$%1~2!&2"2#2$'()*+,2%2&-./0122'3456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a2(2)2*b2+cde2,fghijkl2-2.m2/2021nopqrs2223tu24vwxyz{|}~AB25CD26E27FGHIJK28LMN29OPQ2:RSTUVWXYZa2;2<bcde2=fg2>hijklmnopqrstuvwxyz2?2@  2A 2B 2C 2D2E2F2G2H2I2J2K2L !"#$%&'()*2M2N+,-./02O2P123456789:;<=>?@ABC2QDEFGHI2RJKL2SMNO2TPQRSTUV2U2VWXY2WZ[\]^_2X`abcdefghijklmnopqrstuvwxyz2Y2Z{|2[}~A2\BCDEFG2]2^2_H2`I2a2bJKLMN2cOPQRSTU2dVWXYZabcdef2e2fghijkl2g2hmn2iopq2jrstuvwx2k2lyz2m2n  2o   2p2q2r2s !"#$%&'()*+,-./01234567892t2u:;2v<2w=2x>2y?@AB2z2{2|C2}D2~EFG3!HIJKLMNOPQRSTUVWXYZ[\]^_`abcde3"3#fg3$hij3%klmnopq3&3'r3(s3)tuvwxy3*3+3,z3-{|3.3/3031}~ABC3233D3435363738E39F3:3;3<GH3=IJK3>LMNOPQR3?3@S3A3B3CTUVWXY3D3EZa3Fbcd3Gefghijk3Hlmno3Ipqrstuvwxyz     3J3K3L3M3N3O3P 3Q3R!3S3T3U"#$%&3V3W3X'(3Y)*+3Z,-./0123[3\33]3^3_4567893`3a:;3b<=>3c?@ABCDE3d3eFG3f3gHI3hJKL3iMNO3jPQRSTUVWXYZ[\]^_`abcdef3k3lgh3mijk3nl3omnopq3p3qr3rs3stuvw3t3u3vxyz3w{|}3x~ABCDEFGHIJ3yKLMNOPQRSTUVWXYZabcdefghijklmnopqrs3ztuv3{wxy3|z3}3~4!     4"4#4$4%4&4'4( !"#$4)4*%&4+'(4,4-)*+,-./4.4/0401412345674289:;<=>?@ABCDEFGHIJ43KLMNOPQ44RSTUVWXYZ[\]^_`abcdefghijkl45mno46pqr47stuvwxy4849z{|}~ABCDE4:4;FGHIJK4<LMNOPQR4=4>STU4?VWXYZa4@4Abc4Bdef4C4D4Eghijk4F4Gl4Hm4I4Jnop4Kq4Lrst4Muvw4Nxyz     4O4P4Q4R4S4T4U4V4W !4X"4Y4Z4[#4\$%4]4^4_4`4a&'(4b4c4d)4e4f4g4h4i*+,4j4k4l-.4m/014n23456784o4p94q4r4s:;<=>?4t@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuv4u4v4ww4xxy4y4zz4{4|{|}~4}4~ A5! B5" C5# D E5$ F5%5& G H5' I J K5( L M N O P Q R5)5* S5+5,5- T U V W X Y5. Z a b5/ c d e50 f g h i j k l m n o p5152 q r s t u v53 w x y54 z                 5556  57  5859 5: 5;   5<5= 5> !5? "5@ #5A $ %5B & ' (5C ) * +5D , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = >5E ? @ A B C D E F G H I J K L M N O P Q5F R S T U V W X5G Y Z [5H \ ] ^5I _ ` a b c d e5J5K f5L g h i j k l m n5M o p q r s t u v w x y z { | } ~ A B C D E F G H I J K5N5O L M5P N O P5Q Q R S T U V W5R5S X5T Y5U Z a b c d e5V f g h i j k l m n o p q r s t u v w x5W y z     5X               5Y      5Z ! "5[ # $ %5\ & ' ( ) * + , -5] .5^ /5_ 0 1 2 3 4 55` 6 7 85a 9 : ;5b < = > ? @ A B5c C D E F5d G H I J K L5e5f M N5g O P5h5i Q5j R S T U V5k5l W5m X5n Y Z [ \ ] ^5o _ ` a b c d e f g h i j k l m n o p q r s t u v w x y5p5q z {5r | }5s5t ~ A B C D E F5u5v G5w5x5y5z H I J K L5{5| M N5} O P Q5~ R S T U V W X6!6" Y6#6$6% Z a b c d6&6'6( e f6) g h i6* j k l m n o p6+6, q6-6.6/ r s t u v w x y z                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 56061 6 762 8 9 :63 ;6465 < = > ?6667 @68696: A B C D E6;6<6= F G6> H I J6? K L M N O P Q6@6A R6B6C6D S T U V W X6E Y Z [ \ ] ^ _ ` a b c d e f g h i j k6F l m n o p q r s t u v w x y z { | } ~ A B C D E F G H I J K L M N O P6G6H Q R6I S T U6J V W X Y Z a b c d e f g6K h i j k l m6L n o p q r s t6M u v w x y z         6N                   ! " # $ % & ' (6O ) * +6P , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^6Q6R _ `6S a b c6T d e f g h i6U6V j k l m6W n o p q r s t u v w x y z { | } ~ A B C D E F G H I J K L M N O P Q6X R S T U V W X Y Z a b c d e f g h i j k l m n o p q r6Y s t u6Z v w x6[ y z     6\6]   6^                   ! " # $ % & ' ( ) *6_6` + ,6a - .6b6c / 0 1 2 3 4 56d6e 66f 7 8 9 : ; < = >6g ? @ A6h B C D6i E F G H I J K6j6k L M N O P Q R S T U6l V W X6m Y Z [6n \ ] ^ _ ` a b6o6p c6q d6r e f g h i j6s6t k l6u m n o6v p q r s t u v6w6x w6y6z6{6| x y z6}6~7!7" { |7# } ~A7$BCDEFGH7%7&I7'7(7)JKLMNO7*7+PQ7,RSTUVWXYZabcde7-f7.ghijklmnopqrstuvwxyz     7/7071727374757677 78797:!"7;#$%7<&'()*+,7=7>-7?.7@/012347A7B567C7897D:;<=>?@7E7FA7G7H7IBCDEFG7JHIJ7KKLMNOPQRSTUV7LW7MXYZ[\]^_7N7O`a7Pbcd7Qefghijk7R7Sl7Tm7Unopqrs7Vtuv7Wwxyz{|}~ABCDEFGH7XIJKLMNOPQRSTUVWXYZabcdefgh7Yijklmno7Zpqr7[stu7\vwxyz7]7^7_7`  7a   7b7c7d7e7f 7g7h!"7i#$%7j&'()*+,7k7l-7m.7n/012347o56789:;<=>?@ABCDEFG7pHIJKLMN7qOPQRSTUVWXYZ[\]^_`abcdefghi7r7sjk7tlmn7uopqrstu7vvw7wx7xyz{|}~7y7zAB7{CDE7|FGHIJKL7}7~M8!N8"OPQRST8#8$UV8%WXY8&Zabcdef8'8(g8)h8*8+ij8,8-klmnopqrstuvwxyz     8.8/808182838485 !8687"#88$898:8;8<8=%&'()8>8?*8@+8A8B,-8C.8D8E8F/08G1238H456789:8I8J;8K8L8M8N<=>?@8O8PABCDEF8QGHIJKLMNOPQR8RSTUVWXYZ[\]^_`abcdefghijklmnopqrst8S8Tuv8Uwxy8Vz8W{|}~A8X8YB8ZC8[8\DEFG8]8^8_HI8`JKL8aMNOPQRS8b8cT8d8e8fUVWXYZ8g8hab8icde8jfghijklmno8k8l8mp8nqrst8ouvwxyz     8p8q8r8s8t8u8v8w 8x!8y"#$%&'8z()*8{+,-./01234567898|8}:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[8~\]^9!_`a9"bcdefghi9#j9$k9%lmnopq9&rst9'uvw9(xyz{|}~A9)B9*CDEFGHIJ9+9,9-K9.LM9/909192NOPQR9394S95T96UVW97X9899YZa9:bcd9;efghijkl9<m9=nopqrstu9>vwxyz     9?9@9A !"#$%&'()*+,-./9B0129C3459D6789:;<9E=>9F?@ABCDEF9GGHI9HJKL9IMNOPQRS9JTU9KVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy9L9Mz{9N|}9O9P~9QABCDE9R9SF9T9U9VG9WH9XIJ9Y9Z9[9\9]KL9^9_9`9a9bMNOP9c9dQ9eR9fSTU9gVW9h9iXY9jZab9kcdefghi9l9mj9n9o9pklm9qno9r9spq9trstuvwxyz9u      !"#$%&'()9v9w*+9x,-9y9z.9{/01239|9}49~5:!:"6789::#:$;<:%=>:&:'?@ABCDE:(:)F:*:+:,GHIJKL:-:.MN:/OPQ:0RSTUVWXY:1Z:2:3:4[\]:5^_:6`ab:7cdefghijklmnopqrstuvwxy:8:9::z:;{|}:<~ABCDEF:=:>G:?H:@IJKLMN:AOPQ:BRSTUVWXYZabcdef:Cghijklm:Dnopqrstuvwxyz:E     :F:G:H:I:J:K !"#:L$%&:M'()*+,-./0123456789:;<=:N:O>?:P@A:Q:R:S:TBCDEF:U:VG:WH:XIJK:Y:ZL:[MNOPQRS:\TUVWXYZ[\]^:]_`abcde:^fghijklmnopqrstuvwxyz{|}~AB:_:`CD:aEFG:bHIJKLMNOPQRS:cTUVWXY:dZab:ecde:ffghijkl:gmn:ho:ipqrstu:j:kvw:lxyz:m:n:o:p      !"#$%&'()*+,:q:r-.:s/01:t2:u34567:v:w8:x9:y:z:{:;<=:|:}>?:~@AB;!C;"DEFGH;#;$I;%;&;'JKLMN;(;);*OP;+QRS;,TUVWXYZ;-;.[;/;0;1\]^_`a;2;3bcdefghijklmno;4pqrstuvwxyz{|}~ABCDEFGHIJKLMNOPQRSTUVWX;5;6YZ;7ab;8;9cdefghi;:jk;;;<;=lmnopq;>rstuvwxyz   ;?  ;@;A;B;C ;D;E;F!"#$%&'()*+,-./0123456789:;<=>?@AB;G;HCD;IEFG;JHIJKLMN;K;LOPQ;MRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ABCDEFGHIJKLMNOPQ;NRSTUVWXYZabcdefghijklmnopqr;Ostuvwxyz    ;P ;Q;R;S;T;U ;V!;W"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{;X|}~ABCDEFGHIJKLMNOPQ;YRSTUVW;ZXYZ;[abc;\defghij;];^klmnopqrstuvwxyz     ;_;`;a;b !";c;d#;e$;f%&'()*;g;h+;i;j,-;k;l;m;n./012;o;p3;q;r;s456;t78;u;v9:;w;<=;x>?@ABCD;y;zE;{;|;}FGHIJK;~HIJ?@ABCD56789:=?=@;=A<=B=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^=C=D_`=Eab=F=Gcdefgh=H=I=Ji=Kj=Lklmn=Mo=N=Op=P=Qqrs=Rtuvwxyz=S=T{|=U=V}~ABC=W=X=YDE=ZFGH=[IJKLMNO=\=]PQ=^=_RSTUVWXYZabcdefghijklmnopqr=`stuvwxyz     =a=b=c=d =e!"#$%=f=g&'=h=i()*+,-=j./0=k123=l456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef=mghijklmnopqrstuvwxyz{|}=n=o~A=pBC=q=rD=sEFGHI=t=uJKL=vMNOPQR=w=xST=yUVWXYZabcdefghi=zjklmnop={qrstuvwxyz =|    =}=~>!>"># !"#$%&'>$()*+,-./0123456789:;<=>?@AB>%>&CD>'EFG>(HIJKLMN>)>*OPQ>+RSTUVW>,XYZ[\]^_`abcdefghij>-klmnopq>.rstuvwxyz{|}~ABCDEFGHIJKLMN>/OPQ>0RSTUVWXYZabcdefghijklmnopqrstuvwxyz >1    >2>3>4>5>6>7>8>9 !"#>:$%&>;'()><*+,-./0>=123456789:;>>>?<=>@>?@>AABCDEFG>B>CH>DI>EJKLMNO>F>GPQ>H>I>JR>K>L>MSTUV>N>O>PW>Q>R>SXYZ>T>U[>V>W\]>X^_`>Yabcdefg>Z>[h>\>]>^ijklmn>_>`op>aqrs>btu>cvwxy>d>ez>f{>g|}~>hA>i>jBCD>kEFG>lHIJKLMNO>mPQRSTUVWXY>n>oZa>p>qb>r>s>t>ucdefg>v>w>x>y>z>{>|h>}i>~j?!?"kl?#mno?$pqrstuv?%?&w?'x?(yz?)?*?+?,?- ?.?/    ?0?1?2?3?4?5?6?7?8?9?:?;??? !"#$%?@?A&'?B()*?C?D?E+?F,-?G?H?I.?J/?K0?L1234?M?N56?O789?P:;<=>?@?Q?RA?S?T?UBCDEFG?V?WHI?XJKLMNOPQRST?YUV?ZW?[XYZ[\]?\?]^_?^`ab?_cdefghi?`?aj?bk?clmnopq?d?ers?ftuv?gwxyz{|}?h?i~?jA?kBCDEFG?l?mHI?nJKL?o?p?qMNOPQ?r?sR?tS?uTUVWXY?v?wZa?xbcd?yefghijk?z?{lm?|?}nopqrs?~@!tu@"vwx@#yz@$@%@&     @'@(@)@*@+@,@-@. !"@/@0#$@1%&'@2()*+,-.@3@4/@50@61@72345@8@967@:89:@;;<=>?@<@@=@>A@?B@@@A@B@C@D@E@F@GCDE@HFGH@IIJKLMNO@JPQ@KRSTUVWXY@L@MZ[@N\]^@O@P@Q_`ab@R@S@Tc@U@V@W@Xdef@Yg@Z@[hi@\j@]@^@_k@`lmnop@a@bq@c@d@e@frstuv@g@hwx@iyz{@j|}~ A B C D@k@l E@m@n@o F G H I J K@p@q L M@r N@s O@t P Q R S T U V@u W X Y Z@v a b c d e f@w g h i@x j k l@y m n o p q r s t u v w x y z     @z@{  @|  @} @~   A!A" A# A$A%     A&A'  A(   A)    ! " #A*A+ $A, %A- & ' ( ) * +A. , - .A/ / 0 1A0 2 3 4 5 6 7 8A1A2 9 :A3A4 ; < = > ? @A5 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [A6A7 \ ]A8 ^ _ `A9 aA: b c d e fA;A< gA= hA>A?A@ i j kAAABAC l m n o p qAD r s t u v w x yAE zAF {AG | } ~!A!B!CAH!D!E!F!G!H!I!J!K!L!M!N!O!P!Q!R!S!T!U!VAIAJ!W!X!Y!Z!a!bAK!c!d!eAL!f!g!hAM!i!j!k!l!m!n!oANAO!pAP!qAQ!r!s!t!u!v!wARAS!x!yAT!z!!!!!!!!! ! ! ! ! !!AU!!!!!!AVAW!!AX!!!AYAZA[!!!!!A\A]! A^"AA_"B"C"D"E"F"GA`"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"Y"ZAa"a"b"c"d"e"f"gAb"h"i"j"k"l"m"n"o"p"q"r"s"t"u"v"w"x"y"z""""""""AcAd" " Ae" " " Af"""""""AgAh"Ai""""""""Aj""" Ak#A#B#CAl#D#E#F#G#H#I#JAm#K#L#M#N#O#P#Q#R#S#T#UAnAo#V#WAp#X#Y#ZAq#a#b#c#d#e#f#gArAs#hAt#iAu#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z######### # # # # ####AvAw##Ax##AyAz#A{#####A|A}#A~#B!B"##B#B$# B%B&$A$BB'$CB($DB)$E$FB*$G$H$I$JB+B,$KB-B.B/$L$M$N$O$P$QB0B1$R$SB2$T$U$VB3$W$X$Y$Z$a$b$cB4B5$dB6B7B8$e$f$g$h$i$jB9$k$l$mB:$n$o$p$q$r$s$t$u$v$w$x$y$z$$$B;$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$ %A%B%C%D%EB%H%I%JB?%K%L%M%N%O%P%QB@BA%RBBBCBD%S%T%U%V%W%XBE%Y%Z%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%rBF%s%t%u%v%w%xBG%y%z%%%%%%%%% % % % % %%%%BH%%%%%%%%%%%%%%% &A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&TBIBJ&U&VBK&W&X&YBL&Z&a&b&c&d&e&fBMBN&gBO&hBP&iBQ&j&k&l&mBRBS&n&o&p&q&r&sBT&t&u&v&w&x&y&z&&&&BU&&&&& & & BV& & &&&&&&&&&&&&&&&&&BW&& 'A'B'C'D'EBX'F'G'HBY'I'J'KBZ'L'M'N'O'P'Q'RB[B\'S'T'U'V'W'X'Y'Z'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'wB]'x'y'z'''B^B_''B`'''Ba' ' ' ' ' ''BbBc'''Bd''''''Be'''''''' (A(B(C(D(E(F(G(H(I(J(KBfBg(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(sBh(t(u(v(w(x(y(z((((((((( ( ( ( ( (((((((Bi(((((((((((( )A)B)C)D)E)F)G)H)I)J)K)L)M)N)OBj)P)Q)R)S)T)U)V)W)X)Y)Z)a)b)c)dBk)e)fBl)gBm)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z))))))))) ) ) ) ) ))BnBo))Bp)))Bq)))))))BrBs)))BtBu)) *A*BBvBwBx*C*DBy*EBz*FB{*G*H*I*J*K*L*MB|B}*NB~C!C"C#*O*P*Q*R*SC$C%*T*UC&*V*W*XC'*Y*Z*a*b*c*d*eC(C)*fC*C+C,*g*h*i*j*k*lC-*m*n*oC.*pC/*qC0*r*s*t*u*v*w*xC1*y*z**C2******* * * * * ******************* +A+B+C+DC3C4+E+FC5+G+H+IC6+J+K+L+M+N+O+PC7C8+QC9C:C;+R+S+T+U+V+WC+Z+a+bC?+c+d+e+f+g+h+iC@CA+jCB+kCC+l+m+n+o+p+qCD+r+s+tCE+u+v+w+x+y+z+++++++++ CF+ + + + +++CG+++CH+++++++++++++ ,A,B,CCI,D,E,F,G,H,ICJCK,J,KCL,L,M,NCM,O,P,Q,R,S,T,UCNCO,VCP,WCQ,X,Y,Z,a,b,cCR,d,e,fCS,g,h,iCT,j,k,l,m,n,o,p,q,r,s,t,uCU,v,w,x,y,z,,,,,,,,, , , , , ,,,,,,,,,,,,,,,,CV,,, CW-A-B-CCX-D-E-F-G-H-I-JCYCZ-KC[-LC\-M-N-O-P-Q-RC]-S-T-U-V-W-X-Y-Z-a-b-c-d-e-f-gC^-h-i-j-k-l-m-n-o-p-q-rC_C`-s-tCa-u-v-wCb-x-y-z----CcCd-Ce-Cf--- - - - Cg- ------------------Ch- .A.B.C.D.E.FCi.G.H.ICj.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.a.b.c.d.e.fCk.g.h.iCl.j.k.lCm.m.n.o.p.q.r.sCnCo.tCp.uCq.v.w.x.y.z.Cr...Cs...Ct.. . . . . .Cu....Cv......CwCx..Cy...Cz... /A/B/C/DC{C|/EC}/FC~/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/a/b/c/d/e/f/g/h/i/j/k/l/m/nD!D"/o/pD#/q/rD$D%D&/s/t/u/v/w/xD'D(/yD)/zD*//////D+D,//D-/ / / D./ / /////D/D0/D1/D2//////D3D4//D5///D6/ 0A0B0C0D0E0FD7D80GD9D:D;0H0I0J0K0L0MD0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z000000000 0 0 0 0 0D?D@00DA00DBDC0000000DDDE0DFDGDH000000 DIDJ1A1BDK1C1D1EDL1F1G1H1I1J1K1LDMDN1MDO1NDP1O1P1Q1R1S1TDQ1U1V1WDR1X1Y1ZDS1a1b1c1d1e1f1gDTDU1hDVDWDX1i1j1k1l1m1nDY1o1p1q1r1s1t1u1v1w1x1y1z111111111 1 1 1 1 11DZD[11D\111D]1111111D^D_1D`1Da111 2A2B2CDbDc2D2EDd2F2G2HDe2I2J2K2L2M2N2ODf2P2Q2R2SDg2T2U2V2W2X2YDh2Z2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2sDi2t2u2v2w2x2yDj2z222222Dk222 2 2 2 2 222222222222Dl2222222 3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3TDmDn3U3VDo3W3X3YDp3Z3a3b3c3d3e3fDqDr3gDs3hDt3i3j3k3l3m3nDu3o3p3qDv3r3s3tDw3u3v3w3x3y3z333333Dx333 3 3 3 Dy3 3333333333333333333 Dz4A4B4C4D4E4FD{D|4G4HD}4I4J4KD~4L4M4N4O4P4Q4RE!E"4SE#4TE$4U4V4W4X4Y4ZE%4a4b4cE&4d4e4fE'4g4h4i4j4k4l4mE(4n4o4p4q4r4s4t4u4v4w4xE)E*4y4zE+444E,444444 4 E-E.4 4 4 E/4444444444444444444 5A5B5C5D5E5F5G5H5I5J5K5L5M5N5OE0E15P5QE25R5S5TE35U5V5W5X5Y5Z5aE4E55bE65cE75d5e5f5g5h5iE8E95j5kE:5l5m5nE;E<5o5p5q5r5s5tE=E>5uE?E@EA5v5w5x5y5z5EBEC55ED555EE555 5 5 5 5 EFEG5EHEIEJ555555EK555555555555 6A6B6C6D6E6F6G6HEL6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6pEMEN6q6rEO6s6t6uEP6vEQ6w6x6y6z6ERES6ETEUEV666666EWEX6 6 EY6 6 6 EZ6666666E[E\6E]6E^666666E_666E`6 7A7B7C7D7E7F7G7H7I7J7K7L7M7NEa7O7P7Q7R7S7T7UEb7V7W7XEc7Y7Z7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7uEdEe7v7wEf7x7y7zEg7777777EhEi7Ej7 Ek7 7 7 7 El7Em777En777777777777777 8A8B8C8D8E8F8G8HEo8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z8a8b8c8d8e8f8g8h8iEp8j8k8lEq8m8n8o8p8q8r8s8t8u8v8w8x8y8zEr8Es888888Et88 8 8 8 8 8888888888888888888 9A9BEuEv9C9DEw9E9F9GEx9H9I9J9K9L9M9NEyEz9OE{9PE|9Q9R9S9T9U9VE}9W9X9Y9Z9a9b9c9d9e9f9g9h9i9j9k9l9m9n9oE~9p9q9r9s9t9u9vF!9w9x9y9z999999999 9 9 9 9 9999999999F"F#99F$999F%9999 :A:B:CF&F':D:E:FF(:G:H:I:J:K:LF):M:N:OF*:P:Q:RF+:S:T:U:V:W:X:YF,:Z:a:b:cF-:d:e:f:g:h:iF.F/:j:kF0:l:mF1F2:nF3:o:p:q:r:sF4F5:tF6:u:v:w:x:y:z::F7:::F8:::F9: : : : : ::F:F;::::::::::F:::F?:: ;A;B;C;D;EF@FA;FFB;GFC;H;I;J;K;L;MFDFEFF;NFG;O;P;QFH;RFI;S;T;U;V;WFJFK;XFLFMFN;Y;Z;aFO;b;cFPFQ;d;eFR;f;g;hFS;i;j;k;l;m;n;oFTFU;pFVFWFX;q;r;s;t;u;vFYFZ;w;x;y;z;;;;;;;;; ; ; ; ; ;;;;;;;;;;;;;;;;;;; A>B>C>D>E>F>G>HG#>I>J>KG$>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>a>b>c>d>e>f>g>hG%>i>j>kG&>l>m>nG'>o>p>q>r>s>t>u>vG(>wG)>x>y>z>>>>>G*G+>>G,>> G-G.> G/> > > >>G0G1>G2>G3>>>>>>G4>>>>>>>>> ?A?B?C?D?E?F?G?H?I?J?KG5?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?sG6?t?u?vG7?w?x?yG8?z??????G9??G:? ? ? ? ? ???G;???G??G?? G@@A@B@C@D@E@FGA@G@H@IGB@J@K@LGC@M@N@O@P@Q@R@SGDGE@TGF@U@V@W@X@Y@Z@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@@@@GGGH@@GI@@@ GJ@ @ @ @ @@@GKGL@GM@GN@@@@@@GOGP@@GQ@@@GR@@@ AAGSABACGTGUADGVAEGWAFAGAHAIAJAKGXGYALAMGZANAOAPG[AQARASATAUAVAWG\G]AXG^G_G`AYAZAaAbAcAdGaAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxGbAyAzAAAAAAAAA A A A A AAAAAAAAAAAAAAAAAAA GcGdBABBGeBCBDBEGfBFGgBGBHBIBJBKGhGiBLGjBMGkBNBOBPBQBRBSGlGmBTBUGnBVBWBXGoBYBZBaBbBcBdBeGpGqBfGrBgGsBhBiBjBkBlBmGtGuBnBoGvBpBqBrGwBsBtBuBvBwBxByGxGyBzGzG{G|BBBBBBG}BBB G~B B B H!B BBBBBBBH"BBBBBBBBBBH#H$BB H%CACBCCH&CDCECFCGH'CHCIH(H)CJH*CKH+CLCMCNH,COCPH-H.CQCRH/CSCTCUH0CVCWCXCYCZCaCbCcCdCeH1CfH2CgChCiCjCkClH3H4CmCnH5CoCpCqCrCsCtCuCvCwCxCyCzCCH6CH7CCCCCC H8H9C C H:C C CH;CCCCCCCCHCCCCCCH?CC DAH@DBDCDDHADEDFDGDHDIDJDKDLHBDMHCDNDODPDQDRDSDTDUHDHEDVDWHFDXDYDZHGDaDbDcDdHHDeDfHIDgDhHJDiHKDjDkDlDmDnDoHLDpDqDrHMDsDtDuHNDvDwDxDyDzDDHODDDDHPDDD D D D HQHRD DHSDDDHTDDDDDDDDDDDDHUDDD EAEBECHVHWEDEEHXEFEGEHHYEIEJEKELEMENEOHZH[EPH\EQH]ERESETEUEVEWH^H_EXEYH`EZEaEbHaEcEdEeEfEgEhEiHbEjEkHcElHdEmEnEoEpEqErHeHfEsEtHgEuHhHiHjHkEvEwExEyEzEHlHmEHnEHoEEEHpEEHqE E E HrE E EHsEEEEEEEHtHuEEEHvEEEEEEHwHxEE HyFAFBFCHzFDFEFFFGFHFIFJH{H|FKH}FLH~FMFNFOFPFQFRKPKVKgMOMhN-O{P"P8PPP]QTQUQXQ[Q\Q]Q^Q_Q`QbQcQdQeQfQhQiQjQkQmQoQpQrQvQzQ|Q}Q~R"R#R'R(R)R*R+R-R2R>RBRCRDRFRGRHRIRJRKRMRNRORPRQRRRSRTRURVRWRYRZR^R_RaRbRdReRfRgRhRiRjRkRpRqRrRsRtRuRwRxTfT|U%U+U.V8VMWKWd[E[d\%]%]U]t^|^~_3_a_h`qa-amcud!d)e.e1e2e9e;e#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[!,#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}"&!K!L!~#~!M#\./mytool/uni/shift-jis.my0000644000175000017500000051634207532460064015443 0ustar henrichhenrichYUDIT-UMAP 1.0shift-jisNcreated by mytool 2002-04-25@000 000@>?00000N0000  \0 \ & %     00;=[]00 0 0 0 0 0000 ""`"f"g""4&B&@ 2 3! &&%%%%%%%%%%% ;0!!!!0"" """""*")"'"(!!""" "#"""a"R"j"k""=""5"+",!+ 0&o&m&j !%!"#$%&'()*+,-./0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZ0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO%%% %%%%%,%$%4%<%%%%%%%#%3%+%;%K% %/%(%7%?%%0%%%8%BNUZ?Tac(Y"uzP`cn%efhW'ebq[YІ{}b}b|[^c fhHǗgONO OMOPIVY7YZ\ `aapfipuOupy}}ÄcUzS;NNW߀xNXn8z2(/QASpTTVY_m-bpT S[p–So\zNxn&VUk;YSmftܕVBNKO SU[0_qf fhl8lm)t[vzN4[`muvʙ`iSQWX0YD[^`(cclopqqYqs?~vх`[XielZu%QY.Ye__bej*k'ksV,\l{Q\KahvraNYOSx`in)zON SNOUO=OOsRSV YZ[[yfggkLlpksyyz<{ۃwӇfV)NO\brYu;傽řNOVXJX^_`*``babbe9AffhmwppuLv}uQRYT[]ahimxˈWrmlWgΒRVT^bdhkSlWo"ooEtuvw z{|!}6f̌Qeә(N8T+\]svLw<\ TXOOSqUVhWYG[ [\^ ^~_cg:eeghhj_^0kll}uyH[cz}_w̏Z/__`hjtZxwN^NO|OPPQIQlRRRSSTTUWQWY}[T[][]]]^x^^^_`RaLbbce;ffCfgmh!hil_m*min/nu2vxlz?|}}}^}T*RLaʑuqx?M؝;R[RSTXboj_QKR;TJVz@w`sDo pu_`ښrۏkdNVWdXZZ`haffh9hmu}:nBNOPSU]o]]gltsxPWP^c+PPQgTX^Y[_ibMch=ksnp}rxx&yme}0܈ RdW(gPjQWB*X:iT]WxO\RJTd>f(ggz{V}"/h\{9SQR7[bddg-kvcLvfRN PS\q`dech_qsu#{~ۑxefkNNO:OR:SSUVXYYY[P\M^^+_`ce/[\eeegkbk{lsEyIy|}}+󉖊^ifnjܖ̘koNOtuxy: 3ꄔlP_X+z[NSWY1Z[`nou[{Prg\aJ~Q\chfeqny>}ʐnǐPR\:gSp|r5Lȓ+[_1`N;S[bKg1krsz.kRQSTj[cj9}VSTh[\1]Oabm2yy}B~MҁFrt/1KlƑNOOQESA_bglAn sc~&͒SY[my]~.|X~qQSO\f%wzQ_eiokmnodv}]uQRb@ffn^}rfRSYs^_`UdPQRS SGSTUFU1VYhYZ<[\\\\^^^_pbbbccwff f-fvg~hjj5lmn nXq d_xRbcdBb-z{}v INQHSCS`[\\]b&bGdhh4lmEmgo\qNq}ez{}~Jz9n΍xwRMUo8q6Qhy~U|VLXQ\cffiZruuyyVy|} }D4;a PRuSSP UXYOr=[\dS``c\cc?cdef]iioqNuvz|}}aIXlōpmPXaӅ5 OPtRGSs`ocIg_n,O\^e}SRQvc[X[k\ d gQ\NYY*lpQU>XY`bSg5iU@Ě(OSX[\^/_` aKb4flnހ΁Ԉ.ۛNSY'{,Lnp'SSUD[bXbblot"8o8QSSOFTYj1]zꏿhڌ7rHj=N9SXVWfbcekNmn[pwz{}=Ɔˊ[VX_>efjku7P$wW0_`efzl`uznE{u\z{Qyz6Zw@N-N[_bft6x4ZFuO^bceWgovrL̀)MP WZhisqdrXjyw)O/ReSZbglv}{|6fo r~Q{xr{{Hj^auQu`QkbnvzOpb{OVzXY䖼O4R$SJSS^d,egl>lNrHrsuT~A,錩{đqic=fiujvxЅCS*SQT&Y^_|`bIbybekluvxy}w^j |8P\>_gkt5w ;gzS9u_f_<_ub{Feg llpx2~+ނ *JҘlNONPRVWJY^=__b?fgghQ}!~2T ,SPS\Xdg4rgwfzFRlkX^LYTg,QvdixTWYf'gkTi^UggRh]NOSbg+lO~mNabno+Tsg*E]{\[ƇnJzY|lw RY"q!r_wۗ'ai ZZQT T}fvߏYr]nQMh}}bdxj!Y[_ksv}Q2g(vgbR\$b;|~UO`} SN_QYr:6_%wS_y}3Vg󅮔Sa alvR8U/OQQ*RS[^}`acg gngms6s7u1yPՊJćYNOYN?P^|Y[^ccdfiJim nqu(zIɉ! e} a~bk2lmtmge}o#,TBojp2RZA^_gi|imjorbr{~KQmy2P-Tqkjā`gNNkhin~xU_ NNN*N1N6NzYUYPYNYZYXYbY`YgYlYiYxYYO^OYYYYYYYYZ%ZZZZ ZZ@ZlZIZ5Z6ZbZjZZZZZZZZZZZZZ[ [ [[2Z[*[6[>[C[E[@[Q[U[Z[[[e[i[p[s[u[xe[z[[[[[[[[[[[[[[[[[[\\\\ \\ \"\(\8\9\A\F\N\S\P\O[q\l\nNb\v\y\\\Y\\\\\\\\\\\\\]\] ]]]\]]]]]"]]]]L]R]N]K]l]s]v]]]]]]]]]]]]]]]]]]]]^ ^^^^^6^7^D^C^@^N^W^T^_^b^d^G^u^v^z^^^^^^^^^^^^^^^^^^^^^^^__ _]_\_ ___)_-_8_A_H_L_N_/_Q_V_W_Y_a_m_s_w____________________`_`!`````)``1```+`&``:`Z`A`j`w`_`J`F`M`c`C`d`B`l`k`Y`````````````````_````aMaa``a``aa!``a aaGa>a(a'aJa?acMdcOcccccvcccccckcicccccccccdd4ddd&d6edd(ddgdodvdNe*ddddddddddddddd ddbdde,ddddedeeee$e#e+e4e5e7e6e8uKeHeVeUeMeXe^e]erexeeeeeeeeeeeeeeeeegrf fegsf5f6f4ffOfDfIfAf^f]fdfgfhf_fbfpffffffffffffffffff?fffffgggg&g'8g.g?g6gAg8g7gFg^g`gYgcgdggpgg|gjgggggggggggggggggggggjhhFh)h@hMh2hNhh+hYhchwhhhhhhhhjhhthhhihh~ihihi"i&hi hhhhi6iihhi%hhhi(i*ii#i!hiyiwi\ixikiTi~ini9iti=iYi0iai^i]iijiiiiiiii[iiiiij.iiiiiiijjik iiijijijij jjj#jjDj jrj6jxjGjbjYjfjHj8j"jjjjjjjjjjjjjjjjjjjjkjkk1kk8k7vk9kGkCkIkPkYkTk[k_kakxkykkkkkkkkkkkkkkkkkkkkkkkkklllll$l#l^lUlbljllllll~lhlslllllllllllllllllmMm6m+m=m8mm5m3mm mcmmdmZmymYmmommnn mmmmmmmmmmmmmmmmmn-nnn.nnrn_n>n#nkn+nvnMnnCn:nNn$nnn8nnnnnnnnnnnnnnnnoAopLnnno?no1no2no>onoozoxooooo[oomoo|oXoooofooooooooooooooop p opppoppotpppp0p>p2pQpcppppppppppppq pqqqeqUqqfqbqLqVqlqqqqqqqqqqqqqqqqqqqqr rrr(r-r,r0r2r;rsNsOsWsjshspsxsus{szsssssssstttot%st2t:tUt?t_tYtAt\titptctjtvt~ttttttsttttttttttuuuu uu uuuu&u,uz7zCzWzIzazbzizpzyz}zzzzzzzzzzzzzzzzzzzzzzzzzz{{{ {{3{{{{5{({6{P{z{{M{ {L{E{u{e{t{g{p{q{l{n{{{{{{{{{{]{{{{{{{{{||{{|`|||{{|| {|#|'|*||7|+|=|L|C|T|O|@|P|X|_|d|V|e|l|u|||||||||||||||||||||;|||||}}}}} }E}K}.}2}?}5}F}s}V}N}r}h}n}O}c}}}[}}}}}}}}}}}~=}}}}}}}}}}}}}~~ ~#~!~~1~~ ~ ~"~F~f~;~5~9~C~7~2~:~g~]~V~^~Y~Z~y~j~i~|~{~}~}~~~~~~~~~~~~8:ELMNPQUTX_`higxq܀ !(?;JFRXZ_bhsrpvy}Qۀـ݀Āڀց )#/KF>SQqneft_Ɂ́сف؁ȁځ߁ )+83@YX]Z_dbhjk.qwx~߂҂ރ܃ ك5421@9PE/+#|su΃؄  " 8m*(ALONIV[Zk_lot}:A?HLNPUblxz|bȌڌ  N͍gmqsύڍ֍̍ۍˍߍ B504JGILPHYd`*cUvr|ƎŎȎˎێ  &3;9EB>LIFNW\bcdڏ!  '659OPQRI>VX^hovr}bHۑ20JVXceisrɑˑБ֑ߑۑ,^WEIdH?KPZϒD."#:5;\`|nV֓דؓÓݓГȓ6+5!:ARD[`b^j)puw}Z|~oÕ͕̕Օԕ֕ܕ!(./BLOKw\^]_frlΖ˖ɖ͉Mܗ Ֆ$*09=>DFHBI\`dfhRҗkqy|z×Ɨȗ˗ܗOzߗ 8$!7=FOKkopqtsĘØƘ !$ ,.=>BIEPKQRLUߙۙݙؙљ+7EB@C>UM[W_bedikjϚњӚԚޚߚ"#%'()*./2DCOMNQXtʛƛϛћқԛ:   .%$!0G2F>Z`gvx *&#DA?>FH]^dQPYrozĝƝϝٝӝuy}a̞ΞϞОԞܞޞݞv!,>JRTc_`afgljwrvX/iǐYtdQq_N}L~ƒÃăŃƃǃȃɃʃ˃̃̓΃Ѓу҃ӃԃՃF@ABCDEGHIJKLMNOPQRSTUVWXYZ[\]^_`pqrstuwxyz{|}~v]\aefghdc݁ށ|假ȁɁ@ABVXYZqrstuvwxyzkl`‚ÂĂłƂǂȂɂʂ˂̂͂΂ςЂт҂ӂԂՂւׂ؂قڂۂ܂݂ނ߂JKTU@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~E[RS꒚O㉺s^NuےO嘥TvVRh昩T\]܈jiS喒lYmwedtW߈Cˆފꕚx`LfAʒZC]ØōƛCј͌gDNWrܘۘMݘCoUq{|l㌑Ϙ`ΘUTP×bBXC@AlDEHFmGIKJVMNLQPORSDUTWVXYZ[[ƓeZ\}]S_`ZaTbc~fegh`ijknlmyopq~ustrvwxyyz꣋{}}~Mʉon؊Yh䙍홎OUܔ虛ncwJNuE噫MkxC\ߙڑ싦PmTƉKpɉΙ~X}QyFofbpËْ@ڙ؉‘䎶jEiheg݉D@fNiܙߙz݌CĖaB@]PDCiAENFGLKNMJSOHISBYXOPUR[VWTZQ`ea\fPhA^b[슅c_igridcmkpjnlkorwutQqsRv}{|~\XxydXdlc͐}ޚy\nVBR^C_Wu|xꟉgYhUomn՚ϚҚdښܚӚߚmpsᐺ딄ϚĚ[OǏgVvΚޕt_zDz@DA@ܖDJWdBEWiFGonKLIWHÕPpQORPNPMVWSKkUXwYT}ZQ[_\ś^]kda`bcefhgildjmnqopqrEstuyFGǛvwwxyz{}~FvG@舶Xq鎺G{Qeh⛃ЖxQ@ǛJːRΎ˛ёqAڐKsAǛ͉rWjwRZx㛴sRśěÛɛכޛۛBHIțߖbJFsztыAX蕝y햋NK􌶗cHLXM{xNfpLf@CDB_FEAGHILJKMNUOPMQTU|VOo팷WX^YJeZ[\]_`abSRc`FʕVjdeefihgamkjlk]ponqrzsOtJSKEuuYZzwyOxv|{|vӜ}}P~pbIxYߜ{fҜySĜz䜷DĜǜ‘ԍQT̜͜dSшԜʜМ׌c|J؜e荧匜^ʜ@ABCYDEF[G绔˝HKILJM}NQZOVPc}RSWTRe❫ZcS]d_fba[YUXS`qg@hminAE\kwlgjUҝp}Jqso{̝~xPv|{uzrt@||̒TyT[wdf͝}~`KghrgETQPdBohi^FC[xUq~ݔsŋǝUhG~ʝ|kl͎ҐώafzV{ѝԗٝڊU|{VՐftE莞WWNAiqɝgÝb\A@BCjDFGHȉgXIJ֑]\֍LK񒽞LN]MNO{DQpSVURTWǍޑZmXY۞[\aYt^ܝnf`f]cbʎ}ged_ki˞gmsuAt^_Mpoqnvljrhč`̓ȉhIxZz}ji{jy|~ˌKjVO~[旜BǞ_IXoAŞk^ힾžƞ|OyT|PYɞ̍\Ƒl͞ߞW⏾͞~Mk@ɞh@wKGFEBDCIELHJMQNORSTU~WVY\Ԋ\[]V^`_abc~cΗdefgihw}cjlBkmnopqsrtiuEkvaBwxꖈşyz|{~}CXi`🇍]rDןBv@AgDןjmk^FhlY_Q\CZOUtƟҟiWˈ[~ǓYϏŸakЏًnԟ݈Q֑͟ύ`؟XNΓp팹anMHBYRAQ@NIRKHkEDMGFLCOPUTVYbSWQZX][^aZG\`_JdhfbcgemmjilnoqprsD܍FutxY{vzy_}G~|wBRFonMRzWCݕઑu୕Дஔv௉Sq]_ƋĒKT͒LPQωblX]䗝ԋՔilZ@ZABCDFGErIHKJLMONQPr[RYSpTcRb\jUV[YXEW\Z{L^l_]`afcbEidehgDa`^jklnmuvprt]usoqaxwyz|{ᅒs}~oᢔSᤓIFcHM᱔u~mv᳓XᵖĔἔŌ^̖ruߖmZ⋸uԋmCjv{dVOqmA@CBDbFEGIHJV_FSPOcLNj_MKI[QRh\TSВTUWXHYZ[׉ѓÏG\Hȕb]d`a`^_HbcBdetgfiljҌmkemsoωnnpqrntuvލwy{xzA|Eq~M}↗⏏vG[^|J}y⤕M➒}͉Z\⽕zUєӗԐ̌HeSl㊟WfnI@gC[RBэhAfaFݍGaIЍHIgDJEoMQLUiROPNKGWTVSpXea[_Zbfj\dY]^]ٔΏgchjmiҊlknuovrtqwpcDks{~|z`}x@qJDUyJ[㚓Z㫍ߌrul㭜r㸌QA`HK|sVl͎̎k^ޒEW攣]IҎbmnx_wEE\ƘerE]BAtDCorTHIGFJBNOKLMpUQGPSRcVWVXZ^[Y^\]d_`acbefgbhLvijPklmnopqrs܊CwMtquwǔvDxzy|{}~䅐FH䎔mcF|䒗c꒗p䗉֊s䟒t`r䮔ep،ԕH“ĖGʈӗtⓟבKߕNf葓~uWꖪH@U@ԎBCnJPQDNFHRGKLOEEIFdOVTmSUWX[YZM\a`Abh]_^PAdcefgsi|jklqrm\naopztwsuvx`ua{^|}~gIwXIZIayOsȏpXqtˈ\΋UٗT琻JA@CBDPEFGvHeIJKK`LoMONePQRSTUVpWXYGZ[\]vu`_P^LabcKidfehigٕ]frmwllkFlbYjopn_FsaUvrwtuqNbzxkyz_{懒~|@}慏dy抍u揗w擕T朕x桋c㿏]QJL涕^eLvnݔÊѐǒƋMȔ\fʘGdڑGo͎^qЍwԑӊqNzHHxH@DABCJEGIFLRKMNQPOSRUTVWYXgZ[]^_\`aORb]cfedygrihqkmjlpnPorySsAutx`wv{zyQ|}~Dh燒CJ_ӒҍHIv}犉猔R獏qޑ琋t磓r瘐痑畈ATiNِx礗V^Չ碓Bky穓K竑JIℊWM@xYSsXsAUޔz|ǗVy_X΍юחd؋B܊jt݊bnSzgeLKNse|K@BACdB^EDFtKbGHLJIOZMNLPVYXLQRUWZTS^_`]\[dbcaefhgsiljkmopqtruwvxMyzJ[{|}~֊t}{hj虍~蚌@wA袒˓蜗zG@褊Ku襌ۏB讗ǔYW貎GJᎴ_뗋d軐kIPrҊvxCfB쉹CŒ{aГzjopz{猰^@BACDEFHGIHQJKZOLM{a`NOPRSUQTVWXYZ\[^a]_`bcde]nfgyhʉwmljkiwnopqsrxtvRuxyz}|~{[ETS@鮖D鸕LNI~ӊkhوˉVߒLPDCEL@ABQJFKHG{LMNIOSTRQWPUVYX[\]hZ^_`abcdefghki[jlmnpqo˖sotuvwҖxzy{|}~Cl@VꔗsIij{CD^OPQRSTUVWXFGH`abcdefghijklmnopqrstuvwxymnOQMobpP./mytool/uni/iso-8859-6.my0000644000175000017500000000567007532460064015110 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-6Ncreated by mytool 2002-03-30  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:@ABCDEFGHIJKLMNOPQR  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/iso-8859-9.my0000644000175000017500000000313007532460064015100 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-9Ncreated by mytool 2002-03-30  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~0^1_  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/gb-2312-l.my0000644000175000017500000044010207532460064014737 0ustar henrichhenrichYUDIT-UMAP 1.0gb-2312-lNcreated by mytool 2001-01-22!w!~000000 ^  &    0000 0 0 0 0 000000"6"'"("""*")""7"""%" #""+"."a"L"H"=""`"n"o"d"e""5"4&B&@ 2 3! 0!&&%%%%%%%%% ;!!!!0$$$$$$$$$$$$$$$$$$$$$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$`$a$b$c$d$e$f$g$h$i2 2!2"2#2$2%2&2'2(2)!`!a!b!c!d!e!f!g!h!i!j!k  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNO+Mk11111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)%%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%KUJ?Wc(TU TvvL^UaހS*T ^l9ZT)lR~W_ql~|YKN_a$|N0\g\ up"QYIQO[T&Y+ew[ubvb^El{&OOg mnmy_u+bOe/Q^PtRoKY PNؖr6y[̋DYTVvVe9ivn^rugFgzvayebcQR8~\n/g`{v؁|dPz?TJTkLdb=uRri[h<N*T~h9߀f^W€?h]e;R`mOQl[_]l^b!QqRlrWg-YT{O0l[dYџSʚ7eE~VR.tRP[cNVb`*hQs[Q{P`pL/QI^tpW-xE_Rhnu;RSi_`mWOk"shScb`U$ubqm[^{RaLxW|'vQ`qLfC^L`Mppc%_`bVk`agSI`ff?yOplG~؃dfZZBmQmAm;Opkb`ї 'yxQW>Wg:uxz=y{eo!Y~ T gh؏|MS`%ulrSsZ~c$Q ]bQ[cOymRB`mN[[‹e_̖EY~~V gY9Os[RZ>u2PGzlZbcn]Qwݎ/OS`pRgcPCZP&w7Sw~de+bcPr5Q~WG̔QT\OzmZᚏUTSaT_ciwQahR X*RWNx w ^aw|b[bNpbp`Wwghx՘yXTSn4QKR;[UCW`sWQT-zz`P[TcbSbc[gTzw^Y8WcWW{wO_[k>S!{PrhFww6eQNv\zuYNAPa'nWdfcFVbbi^ӖWbU!JUfgeVZjhb{Qpo0capntir^ʐgmjc^RrbOlYjpmRNPm~x}/Q!Wd€|{lhi^QShr{ryotgN̜ySR)POOuz|lRtTOTޕp^`m^e[8`Kp~|Qh|oN$f~NdJPuq[叽ofNdc^eRpRst3gxN4mQۍATbsO6Qpuu\SNnt ixkuYRv$mAgQmKT{eoXvxvuTR$SNS^e*bTR(plTxWTjMOilUvx0bpo_mhx|{g OcgxWox9bybRt5kUd>uvS9uP\Al{POrGotyhdwb+TXNRWj ^sQt\OWalZFx4D|RVbQNƃa鄲Wg4Wfnmf1fpgk:hbYNQoglQvhYGkguf]PeyHyAw\N^OT/YQx Vhl_l}l㋫c`pm=rubfSC{~Nߌ&N~ԔRMo\cmE4X]Lk kIgT[TX7_:bjG9er`hewNTOd\OzRN`/zONyt4R䂹dy[lR{l"P>Sndftl0`Řw^tx7u3T{O8mZ ~y^l[ZvuaNnXuu%rrSG~wvRiW#^Y1ren\8qSAwbeN߆[SwO\NvY_y:XNgNb튓Rf/UVlNOʙpl^`C[Ƌe6bK[[cU.Sv&Q},ghkbSԂmuNfN[pqffr͟ \^g/hg_b zX^epo1`UR7 dTpu)^hbSr=l4wazT.wzxUgpedV6`ySNk{[UVO:OcTdžm~g*TsuOUOOMn-\ apSkvn)e~T;z3} UtcmzbeSgcl]T\NLla\KehT>T4kkfNcBSHO OW^b fdriRR`fqgxRwfpV;T8!rzz`o^ `Y`qpnlPrj^-N`ZUm|b~w~S#f\OrN SYTc(QHNٜ~T$T7m_&Zf>iss.Sz[wP~vSv{DnXNaye`TNy]jaPTa'x]RJTVm[mfS\[]h!Ux{eHiTNkGNSOcd:eQhSxall"\Q k#e__OEfes)`QtRW_bL^xgO`'YQDQSlyqOOg=Uŕy~Xb ZV{_đWSe^u\`d}nZ~~iU[`es vcw)~ڗt[fzt@Rq_e[o]kl[ Sb&-T@N+rY]YmTNq T pmvN%x\^plYDcwpYtvdG\'ez#YToi0VN6r7QN_ucNSfKYmNXS;c֔OO cY7WyNul[Y_]iP]NYwNzbf\yN_yƐ8uNak_NIvn㋮ _~΃5kVk4YTm[řn\9_Spj1Ztp^($%gG΍bv_qxlf TbOcu^͎ Tlml8`Ru(^}O`_\$u1rln8Ig SSOQɋS^|mNvi^aOYOސ>|a nnNZ1N\y[sW߂TGU\_ak2r񀲊mt[ӈ՘km3n QQCWScVTXWs?n܂a?`(bf~Ô\|g`NShQAЅt]fU[USx8gBh=Tp~[}QW(Tef^Clm|QgeoVj vpvq#bRl<`Xaf`bNUn#g-gw(hiTNMpdXe[zP:[wky|lve]-\U8hS`bzn[~jz_po3_ cmgVN^&N׀v4bf-b~luqgiQFSnbTmYsewux'Oguʗc/G5c#wA_rN`etbkce?^'uǐыge/T1w倢lANK~ǀLvi kbgP\SfScRRRR-R3R?R@RLR^RaR\R}RRRRQTNNNNNNNNONO"OdNO%O'O O+O^Oge8OZO]O_OWO2O=OvOtOOOOO~O{OO|OOOOOOOOOOOOP)PLOP,PP.P-OPP P%P(P~PCPUPHPNPlP{PPPPPQPPPPQQ Nl=OXOeOΟlF|tQn]əQYRS SQYQUNQVNnNy[4QQQQQQQQ‹Ëˋϋ΋ҋӋԋ֋؋ً܋ߋ  !%'*+./2356SiSz"!1*=]4]=]l][]o]]]k]K]J]i]t]]]s]]_s_w___________b_arrrrrrrrrrrrrrrrsrsrrsss!s ssss"s9s%s,s8s1sPsMsWs`slsos~Y%Y$Ycghijkltw}^^^^^^^^^^S^^^^^ꁺ____`_`___``___``5`&``` `)`+` `?`!`x`y`{`z`B`j`}````````````````a a&aa#`aaa+aJauaaaaaa_ݖ N,r?bl5lTl\lJllllllhliltlvlllllllllllllllllllm9m'm mCmHmmmmm+mMm.m5mmOmRmTm3mmommm^mmm\m`m|mcnmmmnmmnmmmnmn mn+nnnNnknn_nnSnTn2n%nDnnnno-nnnnnnnnnnnnoboFoGo$ono/o6oKoto*o o)ooooxoro|ozooooooooooopp#pp9p5pOp^[[[[[[u/d4[[0[GӏՏ & !56-/DQRPhXb[ft}_P_W_V_X\;T\P\Y[q\c\f_*_)_-t_<;\nYYYYYYYYYYYYYYYYZZYZYYYZ Z Z2Z4ZZ#ZZ@ZgZJZUZsssssssssssssss٘|t ssssstt*t[t&t%t(t0t.t,tttAt\tWtUtYtwtmt~tttttttttttttgLgSg^gHgigggjgsgggugggggwg|gh gh ggh ggggghggghggh2h3h`hahNhbhDhdhhhUhfhAhgh@h>hJhIh)hhhthwhhkhinhii hi$hi iiWhiiqi9i`iBi]iikiiixi4iiiiiificiyiiiiiiiiiiiiiij/ijjjeijDj>jjPj[j5jjyj=j(jXj|jjjjjs7sRkkkkkkkkkkkkmqrsuvxwyz|~b bbbb"b!b%b$b,tttuuue4eeef fgrfffpfff4f1f6f5f_fTfAfOfVfafWfwfffffffff236;=@EFHIGMUYljʉˉ̉ΉωЉrnrr]rfror~rrrrrrcc2cd?d؀kkkkkllll lllll!l)l$l*l2e5eUekrMrRrVr0bRg ۀ€Āـ̀g݀ gZ6,2HLStYZq`i|}mgXMZnՁg&ʁk$k7k9kCkFkYјҘӘ՘٘k_@k‰eQeeeeeeeeepppppppppppqqqq/q1qsq\qhqEqrqJqxqzqqqqqqqqqrr(plqqfqb>b=bCbHbIy;y@yFyIy[y\ySyZybyWy`yoygyzyyyyy__`<`]`Z`g`A`Y`c`aa a]aaaabllmwwxx xxxex-xxx9x:x;xx?B5DEFILNORSTVWXY[^_]abdefghijkloqrs:wwyyyyz]Gzzzzz9z7zQϙzpvvvvvttu, "()*+,216879:>ABDFGHIKLNQUWZ[\^cfghijklqmsuuuuuuuuuuuuuuuuuuuuuuuvuuuvvvv vv v%vvvvvv3vMv^vTv\vVvkvozzxzyzzzzzzzzzzdir}ƈɈΈ! 4+6Af{uvvw܀ "%&')(1 5CFMRiqxMTlnz|{ĆΆɆφЇކ߆؆ч #;%.>H41)7?"}~{`pLnSc|dYe҇Ƈ凬ˇӇчʇۇ !9<6BDEzz{{{{{ {+{{G{8{*{{.{1{ {%{${3{>{{X{Z{E{u{L{]{`{n{{{b{r{q{{{{{{{{{{{{{{{{{{{{{| {{||| ||*|&|8|A|@D!"#-/(+8;34>DIKOZ_h~؈߉^||eI||||||||||||||||nf|}w}}~G~sgmGIJPNOdbapio}~rtyU~Yič֍׍ڍލ΍ύۍƍ ,.#/:@95=1IABQRJpv|otxe։މډ܉>&S*-0> Ζwȓ>jʓ>kz#ĜŜƜǜʜ˜̜͜ΜϜМӜԜ՜ל؜ٜܜݜߜ|Xښ˚̚ћECGIHMQ .UTߚ#~;֞۞ܞݞߞ",/97=>D!h!l!'!c!@!A($("(((&(:(,(*(0(.!B(4(2(9(!(%('()(-(1(#(+(/(3(5(6(7(8!&!%&!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X'''!'"'#'$'%'&'(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'Q'R'S'T'U'V'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'W!*!,!.!/!0!1!-!k!d!e!y!f!m"q"r"s"t"u"v"w"x"y"z"{"|!{!|!z!}!J!G!F!L!X!^!O!N!D!E!I!H!R!S!`!_!C!K!W!V!U!Y!T!\!]!Z![!Q!M!P"Y"Z"["\"]"^"_"`"a"b"E"F"G"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"1"2"3"4"5"6"7"8"9":";"<"=">"?"@"A"B"C"D)$)%)&)')()))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o!v!u!x!w!t!s!p!r!q!o!n!b!a!!!"!#!(!)!4!5!6!7!8!9!:!;!>!?!~!2!3!$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v!$(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i"e"f"g"h"i"j"k"l"m"nR;6!F_MrUIH}IOOBX"2;SkX$3sW(GRX'J@Gp1{R54T6+K?X)6*A=QOI%X-8vQ>c\VP7a4.AYX<Mh5$N*Vw@v>YX/DK>CX1C4ReV.NZU':u7&@VF9ERGG9T3KRRX?>EFrR2O0OgJiX@BrBRHiG,AKShUyJB6~X!SZ?wTF;%XANe>.X(QGP)X=YoMv?:=;:%R`2z:`D6Om>)M$AAGWYqYtHKXiRZJ2HJXlXjXF=vFM3pXk=q=iHT4SBX2VWPJKK{UL86OIYZXpG*Xn4zAnRTXmRGXoCGQvVYXrXu<~<[HN7]7BFsXxRANicY=Y:03YBYD16Y?59>sLH:rRPYC=h3+YE>kYFY;D_Y>YAY@U.V5GcYH$HkH+0K9+AyYb@<929XPK1xFd>_5dWHQx|E)9ZZ#T)Z$Y{6,7k1yY|3e>v?vR1@d63Y~Y}>;F`W?-;K5J[IPWM90<3v;w[J:/Td565sXVHP7VGPXW?/[;XXPL;.k>APAuTr8U443uI>EPEY@{1pXY9N5=XZVFK"H/I24L?L9tX[X\6ggJ#[?@x>"@M[@JF2*SBCcQ+[B@U[C?1D<GZ[DYhIW94NpTH0|4RPYYi^KYkX0;/113WXNTQ=3?oO;XP7KXQF%GxR=XRDdJ.G'X&I}Ng;\0k;*P-10WdW?5%BtDO2)271e_2UmP6ZaGd3'6rL|@z@wQ9QaXG2^@e:qXHT-OaXIXJOC3x>GXK[LH%OXH~2NSV2f<0SQK+747"JeH!J\1dPpEQ[E5~?Z9E>dAm_6_5V;=PUY0H6#?IL(_3J7SRXOR6:EK>L>_75p_4Su3T8w_::O<*5uM,C{:s@tMBOr_8OEB@_9Bp>}A_MLRw7M_A_D7q0I6V7T:,L}?TK1FtV(_ENb33N|45NG:pNaQ=_@4t3J8f_;DE_<_=_>E;_?_BT1_CG:NXDX_J_OV\_I_ZN6:G_N_HE^Ik:tC|>W_F_MEXU&:M>LS=8@Vd_G9>?'A|_K_L_P_[_e_W_VWI_c_dekR'_R?)T[?H_TOL_]QJ_^0'F7_S:e6_M[9~TU__Ol0%_g_QQF_U_X_Y_\;)_`_a_b_f_hS48gE6_jIZA(DD?^OxU\_n28:__l[AQdKt4=0&_qLF_r_m_i_k_o_p;=_s_t;#J[N(`'3*`&`!_~MY_|_z?PWDIL_x0!_}_{`"`(7HF!I6@2_uE>XD_yDv`#`$`%P%`4Ld`1?&`/N9`+IF@.`.:m:0`)_v`3`84-`9O2:H`0Pz`,T{_wEg`-Sw`6`7`DPa`<`I`J`>`*I$`A`2JH`C`5NKKC`M`F`B`K`:`?`@`E`G`H`L`;KT`U`V`R`Py7;[PL.?2;5Wx?S?i3J{\-IJD9G=\.TvPfD+6U[T1Z[U[V:>H@J?HIW3Iy?G:xR<b:4&1884ODYgO&MbYm6`R99;b9b74sLlL+7rX2Qk:;J'M7RD?dBhHQe{6JjIof76pCdSif4f5H"f=f9FEMqf;f<;if>f:@7S$f?ItfCfDPvC=CDfBfAfGO1ktfJfE<^I)<5OSfHfIfNfPfQfK5UfLfOD[fFfMfRfTfSfUYxfVfWWSf]f^?WTPWV4fKofZXCWNP"COf_<>9Bf[Q':"BOX+Jkenf\7uHfDue2D~K|e3U,SnJX02KNMj:je5e4WZ9YVf6(MpRK1&J53hIs?MP{JRe6;BO\9,TW:&QgO|4g6TKBQ05<JY7bId=+N>WpP!IY6{fXIPfY3"^LSH^MR"^N>M^OJ,R|3_ejDa>!N2Dr>VF(2c>SG|Lk=lN]J:FAelP<U9emJtM@BEeoBDepexMMI=RYa(SlKjFqa,a'a)a*a/2ma+8Za-a.a05:a1a3a8QRa6a5Aka7T@a2a:06a4?ya9a;a>a<VEO?a=a?BM6kSxGM7e>~a@aAaG3gFi4^QBaHaFaEaCaB1@U8aDaKaLaJozaSaRG6aIaNaPaTaQaMaOaUaVaWaXaZa[N!g]4(V]Q2329$Ws>^9.NW2n[O<:RQKH0MOoYc=m1RJP2<K'7+J&O#`xUJ`{`zEAL{A1`yVc2/VD5[4xV!O/0o`|a!3#`}`~C1C]a"7y;Oa#D;a$a%a&418IF=Dj2"PRg[;CSWSD9cbOW/Gl1S42bQPrB.bP?bS&5WbR5jCm8}8.ES7ObTbS6HWyM%bXbVJ|?5S9bUbWA.@Hb[bZ@*ANb\b]b^[HQSM"=(^CX%?*[MRlFzE*^D1W_.J=_19-R}8%:k3Z5\UECVOR;!eseretMdHu5/G?evl0ef9i51B64}a_:\a`;2BIaaPlM=ab5CEGacadSyaeQ-afN"ag5Bah;UPDb`1XRdbaM|C&cCVRbgbhSGbl?lbmbe3@DnbnPC:vbi7^;3L,KKbdbfbjbkbwbtTubsE-UzEB2@bobrA/K<5!by<1bqPTT9bu9VbvGSbpW\m!bxm%b~JQA5;P?V:cK!m&m#m";Vm'Ptm$:^6wc!62Lq9'O"G!?R6qbzb{b}b|DUc"SAc'GDO$c):7c(;Zc#c$c*c&NrSF;<TCDzm(P|c%Cuc-1/c2*Mo;sLhc/c1O'c.N);]5k>e2R3M19c+2Q5,9_6hOkc7;LHGPJc83nm)SzSdm*c9Rbc5S^8Pc3c67_c4@"c:T84Hc;;EIwIeD=m+B};[?.N?c<?61oTwc>m-c?:)m,c=c@:66.P80Cm.m/@AcAE3cB\2m08jNlj'PgJyHVO73INR=dc^;rj(U=F]j)j*j,j+j.j-=Xj/B>4A4w;'lfle7?Ky1blgIHlhliJV^P2ETzFK0G4rHSMP?8?[G$V4@)^QI(QoE$0g36HE0b7vEz6sUR3P<<3->q0QRVJcW%M666?9U[8'EW^R?YBUG@;$1(EjE{L'1'5VD(^SQ:3iCr7wVt5#2pD4Di@-^T0hEDA`9U>\MX0NMO^V>PW>^UUP0]DbB#h26@LKp]^_47=]^`DmOF5`6^JZ5t^eUF^aLMF~EER4>rBSL=38=S?XMFQZ4k^d^]^gj~B0^bV@5'2t^h^r^m^qH`Wa^oChLa2eR>^n^kNU4'?+>>=R^iT.^^^j@?^l2s8iB'=A^u^x2+4$4jI&^vKQ8c^w^z^yLB0a4ne:P/2kk!^tIc^s0ZR!1wL/^pK$U*^{4]D&^}C~D!_!AL^|>oF23EHvK:^~_$W237ACGK2%4iW+Dl_"_#_%:3_&@^IC2YGf_'G\_(k"KS_*_)2AEJ_+T\HA_,>p_-V'j7k6JUX|8D9%7EU~9JP'tM5PCt>Hk70==LA21V3(8RI"6Xk8>4J}GCU{7sNDU+1sl30_l567AOuzP1UeNS=o3b8+U6m=6OK9PB7=l6J)ETl9l8BCl7P}l:l;Wel<l=FlN^IV@%j;2}Cw;hRWNtj?j<jCPGS34:CAWrUQJGjEjDjGjFVgOTjK;N=zINjLI9O~jJTNjMjOMmjIjNNn;^3?FU>0NzGg>'jPVGA@T]jQO>jRJnE/05jTjSt_D:1)e_jUJojVjWFXjXjYT;GzR78|jB2\B|TxLfWnTBSPkCEs7~kTK7k^@JM{3/FZk|D>N4D)1>T}JuVlFS6d;zP`I1TSH(8Kh>I<h;@nPS2D4eh<UH6Eh=Jx8\Lu@4Qnh?hB:<1-=\j=hChFhKhLKI0e<+99hAMwhJNvUmAVhDC69{V&hHJ`Tfh@hEhGG97chI?]hRhWhU<\HahOhThV9qhXWuD{h\2ihQi?iAAqH6i=iBiCi3i6;1i@X91H1O1QE~1PC+U1k$:AL:k%k'k(k&k)k+k*k,JOX5CqC%Fxk-DJk.k/k07U7zk1Gbk3:$Qu01k2k45*BHGhk5K.c_S@Y[M!V-GsY`;c::cbO+c`IG:9Q4caHj9/=-3XN[L@chciMtL-<3cjckPZF{7ZG_RJNVcdclIr3AcgFccem3cfI3Ef95C;ccE=A$BY2Wcm;&D-cp>Zc{cu:S7PSMVNUS9AU4QXP9GvH*24CZcnc|co7(cwct7:E"cvE]2(F|D`W"@acyczc}L)csS>1Cm4cqcrcxP:FCTsc~=`d'd&Qsd#d)HwO4d(d.Be64=rd":id*d,6}V^d2d-d!;nM]G"EIAwd$G3=,==d%WG2bd+;lQMLmm5GeT(dKWUdB=%dESfdIIxd>SeG~6IT|23dWNBdMN<8[dV?JSNClEHdXMDdOdTdU:~OfU?dRdPdNMeJ*@#=&dS8HdgT4d[AodiRgd_d`O*K]dZdQdeH\dcDgdbda3|dh5aWLdf;,WRLOkxdd9vVMdYd\Bzd^BK@DBP1uL25NdoF/FaduB)@lQ]dnD.dmdvdtB~d]dpJ~UDdqQzdkdldrN+EKG1B:djAJL631d{dsdzd}d|3N3:dwdydxEl@=The"0De$e#<$e%e!d~1te(e)e&e'e*FYe+e-e,e/e.9`e0e1;plaCp5F;RAiTn>DWFTV2Sl>jAB/46QW34H2?;l@VKl?lAlE>fL?EZ><lF1~lDU(5clBA63clCK8@CL~ARlH:f@SVrQL?>73IUlG;bLL=}HHO)MiEk7iQI:8lIlJ;@lKlb1:7Y=9lLQflMH;lQlS;MlWlXldH<AGl\Q`l[Tol][Fl^1,l_l`W&E@k<0.>t88R/0V5yX3K,c]F,0fEFk9k:k;Q@E#jrD2D5@NjsDANojpjtI|G#LXN~jujvO,@gjw6?jxjyjzj{jqH.ak78alamW4anaoSLaq?qap5R17asar:|at97>QD|:]=Fauaw6@OAJ(avUxS|axa|ayaz@ja~b!@Ga{a}b%ATb#b(2~b"CM2Bb'b&b$b)b+PIVmC(b,OWb.:oi`b-b*;+T3b0b/iab1b2b3L!b4b5P~BJSqMug`ga>ABjgdgcMfC5gb;7OVAagighgt2#gjgfglgkI:Udge7)gggngsVigmgrgq0`guGr@E@mApgpgvKvh"h!WAgzgyg{gwg~g}g|AUGYE}ECGmh#h&h%h':wgxh$HpI*h)9eQ~h(h*h-h.A'h/h0h,h4h+h1h5h2h3h7h69Op,p-F00jH?M_NMj1j2F?4Ij3Ug]yj4j5j68J_0IuLpIzI{SCK&8&p.1Be8LoSINp^E1p]Qqp`0L=jR_p_4/7hpfpeF#papb4CpcUnL[>R<2phpgpd2!V"S8>7H,pjQwVL:[pi6;M4F&A!pkpnpmpppl;>poL5pr3U1Tpsptpv4apqpwpzpxpup}pyp|p~q!NAq$q#Avp{J]4q1qL1q&q'q,UNq)H3q"q+q(q%q*0)q-q/q1q0q.Q"q2q39o5G0W0YTm5D=T;Jp'8^p(0(p)Mnp*p+F$VeqdqeCsS[VQEhS/RfnA0;U5QN<`:P?x8G5AELJ"CKnBD?6"mlC$V1O`moEN6\J!mmmpmqC<?4mnmtmrUfC_msmvU#Q#muCPmw?t>lmxLwQ[WEUvm|m{mymzm}>&K/n!6=n"D@m~=^2G6Cn%X:n#n&Ci3rn'n$O9n(Bwn)n*^+F3GFVu5IK2n+M+n,U0n-vD[G4#C,qfJ8RSV*or>X=Cos6L0+J/m6m7Ny7/?sm8BkI0m9Fv?3mEiFFIiTRmAmBmCmE@y4!9hmPmQmJmONxK6mLmMOumRArS2mKH7lj@qIglkFnllFmlmlpWflslqlnloW#IqKnltlrOilvF1<@lu5;;vlwYw={B;lxly8#lzl{l|SmX.@kG]:LPcK=M:8Q1|GoVV?FCkouCXWbow3SGXQmVHoxov;}3F=URF;`O!o|o{oy3LITK0o~0^VIo}3mvUNHp"p!5>?Gnq6q7?U4)q8M;GTU-q9q:GOR$VOq;=Q40>=4\NQ?_q=?zq<q?q>q@qAA~A"JzU>>:>9UB?"M/q5=_6KVqsCsD8MsFsG0JsEsIKqsKP&1JsHsO5QsWsRsTsS7{1?sNsJ5ZsPsQsUsMt&t%<.CWYa@`tLWQ7[tNA#FI4VU3tPtOtQKZtRTAV`7`A8A;tS>,4btTtU>+tVt[tWtZ:}tXtY8bLGt\2ZCSTc?7t]E4tiO5NIKXKw=tWO@[Putjtktlwc71tmWktnfy>@fz:lf{OKf|T<<6f}f~-g*0sH^=ag+HFg,;f8xQ$g-Bg>x=JM3g.g/>nPeKgLPg?<)g@gAg66PgBgCgD;:5^BF1`gET5gF8?gHgG7lgI2xgJgKgLgMgNgOgPS'KugQgRgSgTIIgUgVgWgXgY=IgZs>8WH1s?s@sA9^MxXh:1B^n77#n9n80Un;UVWoVCn=Jpn<n>n@n?QrG<C@8aAgtFP_tGO[H:tHtItJtKYz8~eqSpt`NL3aq4RntaOhtbGL5T4dtdtctetftg:20?th7-RmR+@O?[qy4Oqzm2m1K`R^KAUXHb@_kFkG09?OkES}kHkI7NkBkDIvVWUMP2kON8kP5(13kRL%EVkSkQE_kNJ$kU0{:zX7qckJkKkLkMkVf@kY?hRHkWk\8lkX=:PX07k]D\V,4`Bv<9kZk[T`FjDTk_E'Yu21kd=Ekbkc8,MQkekaA3F"Lskf@0R8kg8/8-khG;MskjkkkmPHkrknkqHyQ|klki89OYDekokpLZMH0rkvku228`kw1lLED$O%kyl"ErkzIEb_k~MNl!1[S7R\k}k{3<j0WTt+3tVAVBUi>Jt'R(t(t)t*>KS_I`IasBJfLrb6K4NhV[t-t.t/t2:=t30ct0t1="2Ut6t76f20OOt44,t5t8t9M't:t;t<KRt=t>t?t^A<7R0E\GP>\A;(7<\L\F\?G[Q?\@\J\PN-\B\C\H\I2T\QKUT7\[\_L&\fCg\\?A\Y0z96\e\S\D\VHt?`I;1=S"\Z\UF;\^WBC/76GQC)\b\X\k\T\]>%\W\`\c\d\x\a]"\g#\t2]\sU>z:J]J]E]?2K]C]K2$]U]>FP]P]TAb7F]N]O]D]=]MLQ]I]BCHF]z]|]~^"0*1N^,^&=6Ho^!^%^)^(^'^-TL^3^*^.@Y1!^6^1^2Q&^5^/^0P=^4Jm^9^8^7^;=e2XCj^:E:^<LY7*Te^=^?D"^A^>^@U:^Br.;"B2E0BGr/PiS]k=3fr0r1J-:gr3r5r4KdO:r2J4ROBlNCr80vr7r>2OQAr:rujijjjkjljmjnjo=Gu{u}u~u|=bv!4%v"v#l2QTYjv$n:U2S~L\JDe@v%>/F)Z%wV$Z,Z-F@WgJ6U)K_UoZ.V_4JZ0Z/RkZ1Z2Z3JTZ4J+Z5Z63OVoZ7;05.Z8Z99nQ/RhZ:8COj2oZ;Z<=kN\SoZ=NsZ>SU;eZ?K5KPZ@GkVnZAE56AZB7L?NZCZDK-ZE5wZFABW;ZGL8RjD1ZH5};QZIP3ZJZKN=ZLZMZN2wZQZOQhZPCUZRZSZTZUP;R%0yZVG+ZW=wC!ZXZYC}L7ZZZ[@>FWZ\Z]G4Z^Z_9H;m69txtyMcu9k`Os;?:@T%aYut1*2ruuuw:QuvC2uyux14Uj8:912FTpOM0\UK;uVJ77L0F61a9:V|9a7!uDuL0O5xuIuJE\uEuFuGuK>`uH8zuPuS?g9ruauXL_u[2HWYuYuZu\ubu`u_u]uau^udueLce?58ucuhL#ufugu>1Du?5E2dului6Wumujuk4ZTjun3yuouqupurusIm9*G{6cLIj&35T~9lPyimW*inBVHm:dioipiqVairisiuitiviwGaixTXiy=Nizi{=Oi|8(A>i}12;T9ui~j!j"j#7x<-Jd`NT/O=U7j$U^j%PA9<4G1Y@11f1g1h3=HheA1_AI4oG(SXFyQ89}BuS-TK=|eB75eC;9Ub=xT6N%A,3YLveFeDeHeJeG5OFH5|eEJveICT1E<#W7MKKMJJLSeLeKDfQ!Q7eMePM8VpeO5]M>eQ6:M(9dJE3QKYTleR7jeNeU4~eVeSeTR]B_1FSb6]KleWSv1i6teZeXeY5@REe\e^e]G2R#e[TbUZe`Wqea1\Q{ebedeceeRX5Kg_ZuZxZvZwZzPODG0nP0ZySJ:*["GqZ|Z{I[Z}[!W^Z~AZ[%St['[$[(=<@I[#[&V#[)[-[.[,:B?$[+[*TG2?[/9y[03;5&6<[16u[21I[4[3[5[7[6[8[9[:SOtzGuWCEdt|t}t{>FPo7STML*u"u!:(t~KVu$@R3jM*u%u#=4u(u)=MC8?aKau*u&u'Dpu,4<Wm4Wu+u.u-u/PQCQH)u0u1u2u3u4u5u7u6u82ISTJM@oVXR0A?=p8*{NY93nVnUnXnWE%nYnZG.n[G/n\2'n]n^n_n`naWjnbnco?N}o@B`48W6=uOGoCoAoBoD6'<|>bCLoEoFoGoOoHoIoJGBoq6MoKoLoM6FC>oNoPoQoRUroSDwoTDxoUoV8d0woWoXoYoZo[o\o]o^>5oao_o`obocAModoeofogohoiojokol@XomA-onooopOb3$CEcEIAcF1UNJ43HrcGOPcH8>25e7G??CRCfXL8o=yQ%0Pw0w1P,00w2w3w4GJ>Ow7w61^w5w8w9N$HM:+h8h9h:>BRtTOIXR36%Gjq|OnK3PkgoMg9K6Yq}0dKLq~T$B-AlFD>1r!b?b@bA79R{=$JN1%KGbB6|HDbC=H1}bD6vbEDYbFOZ9]bG@!bH2vbIAsbJbKBxbLbMbNJWX8YeOcp%\0BmT&MTQ13[G}25B?f`J;fafb>TfcW$MUfe<]fdfffgBn=>fhBf:'fifj3RQi?%fkFoflfmfnF-foI'fpfqfre9fsftBbfufvVhfwfx9Gw;w:w>w<:!w?w@wBwAwDwCwEwFwGKh8_wTwUwVwXwZwWw[wYWWw\w]w^w_w`[KX*ew9m?};jwIFGwHwJwLwKwMN:wND'ScvOB3vPvQvRvSvTvV1+vWvXvYvZv[v\v]v^OJv_v`vavbvcvd@pvevfvgvhvivjvkvlvmvnvovpvqvrvsvt>(vuvvvwvxHzvyvzv{v|v}v~w!w"w#w$w%w&w'w(1nw)w*w+w,w-A[w.w/Dqp/<&p0CyE8Q;p1p2p3p4p5Q<Qlp7p6T'MRp8p:p9p;p<8kp=:hp>p?>ip@6lpApBpCpDH5pEpFpGEtpHpIpJw=pKpLpMpNpO:WpPpQpRpSpTpUpVpXS%pWpYu:B9wdwewfwgwhB4wjwkBstptoBiwawb;FYdJr@hp$:ZG-D,wlwmwnwpwowqwtwswrwuwvmimjmkv<v=v>6&X>9DX;\1Jswwwxwyw{wz1Gw|w}w~Fkl43]v3v4Adv5v6v7v8v9v:H#v;Az9(mh9jY_#!#"##!g#%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}!+!i!j#~#$./mytool/uni/ksc-5601-r.my0000644000175000017500000053475207532460064015160 0ustar henrichhenrichYUDIT-UMAP 1.0ksc-5601-rNcreated by mytool 2002-04-07A !"#%&'()*+.234567:;=>?ABCDEFGHIJLNOPQRSUVWYZ[]^_`abcdefghijklmnorsuvy{|}~¬ìŬƬǬɬʬˬͬάϬЬѬҬӬԬ֬ج٬ڬ۬ܬݬެ߬ !"#$%&'(*+./0123679:;=>?@ABCFHJKLMNOQRSUVWYZ[\]^_`bdefghijknoqrwxyz~­íŭƭǭɭʭ˭̭ͭέϭҭԭխ֭׭ح٭ڭۭݭޭ߭  !"#$%&'()*+,-./23569;<=>?BDGHIKOQRSUWXYZ[^bcdfgjkmnoqrstuvwz~®îŮƮǮȮɮʮˮήҮӮԮծ֮׮ڮۮݮޮ߮  !"#$%&'()*+./1356789:;>@DEFGJKLMNOQRSTUVWXYZ[^_`abcfghijklmnopqrstuvwxz{|}~¯ïįůƯʯ̯ϯЯѯүӯկ֯ׯدٯگۯݯޯ߯  !"#$%&')*+,-./0123456789:;<=>?@ABCFGIKMOPQRVXZ[\^_`abcdefghijklmnopqrstuvwxyz{~°ðưʰ˰̰ͰΰϰӰհְװٰڰ۰ܰݰް߰  !"&')*+-./01236:;<=>?BCEFGIJKLMNORSVWYZ[]^_abcdefghijklmnopqrstuvwz{}~±ñıűƱDZȱɱʱ˱ͱαϱѱұӱֱױرٱڱ۱ޱ !"#$%&'()*+,-./012356789:;=>?@ABCDEFGHIJKLMNOPQRSTUVWYZ[]^_abcdefgjklmnopqrsvwxyz{}~²òIJŲƲDzʲ˲ͲβϲѲӲԲղֲײڲܲ޲߲  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSWYZ]`abcfhjlmorsuvwyz{|}~³óƳdzɳʳͳϳѳҳӳֳسڳܳ޳߳ !"#$%&'*,-./012356789:;<=>?@ABCDEFGHIJKLMNORSUVWYZ[\]^_bdfghijkmnopqrstuvwxyz{|}~´ôŴƴǴɴʴ˴̴ʹδϴѴҴӴԴִ״شٴڴ۴޴ߴ  !"#&+,-./235679:;<=>?BFGHIJNOQRSUVWXYZ[^bcdefghijklmnopqrstuvwxyz{|}~µõŵƵǵȵɵʵ˵εҵӵԵյֵ׵ٵڵ۵ܵݵ޵ߵ  !"#$&'()*+-./012356789:;<=>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`abcefgijklmnopqrstuvwxyz{|}~¶öĶŶƶǶȶɶʶ˶̶Ͷζ϶жѶҶӶնֶ׶ضٶڶ۶ܶ޶߶  !"#$%&'*+-.1234567:<=>?@ABCEFGIJKMNOPQRSVWXYZ[\]^_abcefgijklmnortvwxyz{~·÷ķŷƷȷʷ˷̷ͷηϷзѷҷӷԷշַ׷طٷڷ۷ܷ޷߷  !"#&')*+-./01236:;<=>?ABCEFGHIJKLMNOPRTUVWXYZ[^_abcefghijknprstuvwyz{}~¸ĸƸǸȸɸʸ˸͸θϸѸҸӸոָ׸ظٸڸ۸ܸ޸ !"#$%&'()*+,-./0123456789:;>?ABCEFGHIJKMNPRSTUVWZ[]^_abcdefgjlnopqrsvwyz{}~¹ùĹŹƹǹʹ˹͹ӹԹչֹ׹ڹܹ߹  !"#$%&'()*+,-./01234567:;=>?ACDEFGJLOPQRVWYZ[]^_`abcfjklmnorsuvwyz{|}~ºúźƺǺɺʺ˺̺ͺκϺкѺҺӺԺպֺ׺ںۺܺݺ޺ߺ !"#$%&'(*,-./012379:?@ABCFHJKLNQRSUVWYZ[\]^_`bdefghijkmnopqrstuvwxyz{|}~»ûŻƻǻɻʻ˻̻ͻλϻѻһԻջֻ׻ػٻڻۻܻݻ޻߻  !"#&(*+,./235679:;<=>?BFGHJKNOQRSTUVWXYZ[\^_`abcdefghijklmnopqrstuvwxyz{|}~¼üżƼǼȼɼʼ˼̼μҼӼԼּ׼ټڼۼݼ޼߼  !"#%&'()*+-./0123456789:;<=>?ABCDEFGJKMNOQRSTUVWZ[\]^_`abcefgijklmnopqrstuvwxyz{|}~½ýĽŽƽǽȽɽʽ˽̽ͽνϽнѽҽӽֽ׽ٽڽ۽ݽ޽߽  !"#$%&'()*+,-./0123456789:;<=>?@ABCFGIJKMOPQRSVX\]^_bcefgiklmnorvwxyz~¾þľžƾǾȾɾʾ˾̾;ξϾҾվ־پھ۾ܾݾ޾߾  !"#$%&'()*+,-./0123456789:;<=>?BCEFGIJKLMNORSTVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~¿ÿĿƿǿȿɿʿ˿οϿѿҿӿտֿ׿ؿٿڿۿݿ޿  !"#$%&'()*+,-./0123456789:;=>?@ABCDEFGHIJKLMNOPRSTUVWYZ[]^_abcdefgjklmnopqrstuvwxyz{|}~ !"%()*+.23457:;=>?ABCDEFGJNOPQRSVWYZ[]^_`abcfjklmnoqrsuvwyz{|}~ !"#$%&'*,.0356789:;<=>?@ABCDEFGIJKLMNORSUVWYZ[\]^_abcdfghijknoqrsuvwxyz{~€‚ƒ„…†‡Š‹ŒŽ‘’“”•–—™šœžŸ ¡¢£¦§©ª«®¯°±²³¶¸º»¼½¾¿  !"#&'*+,-./0123456789:;<=>?@ABCDFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgjkmnoqstuvwz{~ÀÁÂÃÅÆÇÉÊËÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ  !"#%&'()*+-./12356789:;>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`abcfgijkmnopqrsvwxz{|}~āĂ㥹ĆćĈĉĊċČčĎďĐđĒēĕĖėĘęĚěĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıIJijĴĵĶķĹĺĻĽľĿ  !"#$%&'*+-./1234567:<>?@ABCFGKOPQRVZ[\_bcefgijklmnorvwxyz{~ŁłŃŅņňʼnŊŋŎŐŒœŔŖřŚśŝŞşšŢţŤťŦŧŨŪūŬŭŮůŰűŲųŶŷźſ  !"#&')*+/1268:<=>?BCEFGIJKLMNORVWXYZ[^_abcdefghijkmnprstuvwz{}~ƁƂƃƄƅƆƇƊƌƎƏƐƑƒƓƖƗƙƚƛƝƞƟƠơƢƣƦƨƪƫƬƭƮƯƲƳƵƶƷƻƼƽƾƿ "#%&')*+,-./24689:;>?ABCEFGHIKNPYZ[]^_abcdefgijlmnopqrsvwyz{ǀǁǂdžNjnjǍǏǒǓǕǙǛǜǝǞǟǢǧǨǩǪǫǮǯDZDzdzǵǶǷǸǹǺǻǾ !"#%&'()*+.02345679:;=>?ABCDEFGJKNOPQRSUVWXYZ[\]^_`abcdefghijklmnorsuvwy{|}~ȂȄȈȉȊȎȏȐȑȒȓȕȖȗȘșȚțȜȞȠȢȣȤȥȦȧȩȪȫȬȭȮȯȰȱȲȳȴȵȶȷȸȹȺȻȾȿ 000 % &0 "%<"<    0000 0 0 0 0 0000"`"d"e""4 2 3!!+&B&@" "#"""a"R ;&&%%%%%%%%%%%!!!!!0"j"k""=""5"+","" """""*")"'"( !"#$%&'()*+-./012356789:;<=>?@ABCDEFGHIJKLMNORSUVWYZ[\]^_bdefghijkmno!!""^".""! 0%%%%&d&`&a&e&g&c"%%%%%%%%%%%&h&&&& !!!!!!&m&i&j&l22!3!"33!! qrsuvwxyz{}~ɀɁɂɃɄɅɆɇɊɋɍɎɏɑɒɓɔɕɖɗɚɜɞɟɠɡɢɣɤɥɦɧɨɩɪɫɬɭɮɯɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿ  !"#$%&'()*+,-./0123456789:;=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]  !"#$%&'(*+,-./0123456789:;<=>?@ABCDEF1112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111GHIJKNOQRSUVWXYZ[^bcdefgijklmnopqrstuvwxyz{|~ʀʁʂʃʅʆʇʈʉʊʋʌʍʎʏʐʑʒʓʔʕʖʗʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧ!p!q!r!s!t!u!v!w!x!y!`!a!b!c!d!e!f!g!h!iʨʩʪʫʬʭʮʯʰʱʲʳʴʵʶʷʸʹʺʻʾʿ %%% %%%%%,%$%4%<%%%%%%%#%3%+%;%K% %/%(%7%?%%0%%%8%B%%%%%%%% %%%!%"%&%'%)%*%-%.%1%2%5%6%9%:%=%>%@%A%C%D%E%F%G%H%I%J "#$%&'()*+,-./0123456789:;<=>?@BCDEFGJKMNOQRSTUVWZ[\^_`abcefghijkl333!3333333333333333333333333333333333333333333333333333!&3333333333333333333333mnopqrstuvwz{|}~ˀˁ˂˃˄˅ˆˇˈˉˊˋˌˍˎˏːˑ˒˓˔˕˖˗˘˙˚˛˝˞˟ˠˡˢˣˤ˥˦˧˨˩˪˫ˬ˭ˮ˯˰˱˲˳˴˵˶˷˹˺˻˼˽˾˿&2?ARfJ2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{$$$$$$$$$$$$$$$$$$$$$$$$$$$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n!S!T![!\!]!^  #$'138@BSgKI2222222222 2 2 2 2 22222222222222$$$$$$$$$$$$$$$$$$$$$$$$$$$t$u$v$w$x$y$z${$|$}$~$$$$ t  %&*+-/1234567:?@ABCFGIJKMNOPQRSVZ[\]^_abcegijklmnoqrstvwxyz{|}~̀́̂̃̄̅̆̇̈̉̊̋̌̍̎̏̐̑̒̓0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~000000000000000000000̶̷̡̢̧̛̖̗̝̞̟̣̤̥̦̪̮̯̰̱̲̳̹̺̻̔̽̾̿̕̚00000000000000000000000000000000000000000000000000000000000000000000000000000000000000  !"#%&')*+-./012345678:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_ !"#$%&'()*+,-./012345Q6789:;<=>?@ABCDEFGHIJKLMNOabcefghijknprstuvwyz{|}~͇͉͍͎̀́͂̓̈́͆͊͋͌ͅ͏͓͖͙͚͐͑͒͗͛ͣͦͨͪͫͬͭͮͯ͟͢͝͞͠͡ͱͲͳʹ͵Ͷͷ͸͹ͺͻͼͽ;Ϳ "#%&')*+,-./246789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWZ[]^bcdefgjlnopqrsvwyz{}~΀΁΂΃ΆΈΊ΋Ό΍ΎΏΒΓΕΖΗΙΚΛΜΝΞΟ΢ΦΧΨΩΪΫήίΰαβγδεζηθικλμνξο  $,-/0189<@KMTX\pqtwxzĬȬ̬լ׬ !"#%&'()*+.2345679:;<=>?@ABCDEFGHIJKLMNOPQRSVWYZ[]^_`abcfhjkl  ),-458?@ABCFHJKLMNOQRSUVWYZ[\]^_abcdefghijknoqrsuvwxyz{~ЀЂЃЄЅІЇЈЉЊЋЌЍЎЏАБВГД߱  4?BFGHIJKNOQRSUVWXYZ[^`bcdefgijkm@ACDEKLMPT\]_`aĵ̵͵ϵеѵص%,4HdhԶ(),/089;DHLTU`dhpqsu|}nopqrstuvwxyz{}~рстухцчщъыьэюяѐёђѓєѕіїјљњћќѝўџѢѣѥѦѧѩѪѫѬѭѮѯѲѴѶѷѸѹѻѽѾѿϷǷɷ $%(,45789@DQS\]`dlmoqx|øŸ̸иԸݸ߸ <=@DLOQXY\`hi  !"#$%&'()kmtux|ȹɹ̹ιϹйѹҹعٹ۹ݹ޹89<@BHIKMNSTUX\deghipqtxĺȺغٺ*+./12356789:;>@BCDEFGIJKLMNOPQRSTUVWXYZ[]^_`abcefghijklmnopqrstuvwxyz{|}~҂҃҅҆҇҉ҊҋҌ  )+4568;<=>DEGIMOPTXaclĻȻлӻ $%')-0148@ACDEILMP]ҍҎҏҒғҔҖҗҘҙҚқҝҞҟҡҢңҥҦҧҨҩҪҫҭҮүҰҲҳҴҵҶҷҺһҽҾļͼϼмѼռؼܼ $,@HILPXYdhԽսؽܽ DEHLNTUWYZ[`ad "#$&'*+-./1234567:>?@ABCFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghihjpqstu{|}оѾԾ׾ؾ @ADHPQUſ̿ͿпԿܿ߿?ABCEFGHIJKLMNOPQRSTUVWXYZ[]^_abcefghijklnpqrstuvwz{}~ԁԃԄԅԆԇԊԌԎԏԐԑԒԓԕԖԗԘԙԚԛԜԝ4<=HdehltuyĀĔĜĸļ (),089;=DEHIJLMNSTUWXY]^`adhpqstu|}ŀńŇŌōŏőŕŗŘŜŠũŴŵŸŹŻżŽžԞԟԠԡԢԣԤԥԦԧԨԪԫԬԭԮԯ԰ԱԲԳԴԵԶԷԸԹԺԻԼԽԾԿ $%(,-.034579;@ADHPQSTU\]`loqxy|ƀƈƉƋƍƔƕƘƜƤƥƧƩưƱƴƸƹƺ  !"#$%&'()*+,-./0123456789:;>?ABCEFGHIJKNPRSTUVWZ[]^_abc  !$(01357<=@DJLMOQRSTUVWX\`hktux|}~ǃDŽDžLJLjljNJǎǐǑǔǖǗǘǚǠǡǣǤǥǦǬǭǰǴǼǽǿ dfgjlnopqrsvwyz{}~ՀՁՂՃՆՊՋՌՍՎՏՑՒՓՔՕՖ՗՘ՙ՚՛՜՝՞՟ՠաբգդզէըթժիլխծկհձղճմյնշոչպջռսվտ $,-/18<@HILMTpqtxzȀȁȃȅȆȇȋȌȍȔȝȟȡȨȼȽ ,4PQTX`aclpt|ɈɉɌɐɘəɛɝ !"#%&'()*+,./01234567:; )LMPT\]_`ah}ʄʘʼʽ !AHILPXY]dxy˜˸ !"'(),.089;=>?ABCDFGJLNOPRSVWYZ[]^_`abcdefhjklmnorsuvwxyz{|}~րցւքֆևֈ։֊֋֎֏֑֖֛֢֣֤֥֦֧֪֚֒֓֕֗֘֙֜֞֠֩<=>DEHLTUWXY`dfhpų̴̵̸̘̙̜̠̩̫̬̭̼ $(,9\`dlmoqx͈͔͕ͤͥͧͩ͘͜Ͱ  !$(0135ֱֲֳִֵֶַָֺּֽ֭֮֫֯־ֿ XY\_`ahikmtux|΄΅·ΉΐΑΔΘΠΡΣΤΥάέ $,-/018TUX\degipqtxπυόϡϨϰ-458<!"#$%&'*,./0123679:;=>?@ABCEFHJKLMNORSUZ[\]^_bdfghjkmnoqrsuvwxyz{~׀ׂ׃ׅׄ׆ׇ׊׋DEGIPTX`lmpt|}ЁФХШЬдезй 0148:@ACDELMPT\]_ahl|фшѠѡѤѨѰѱѳѵѺѼ ,-04<=?AH\׍׎׏בגדהוזחךלמןנסעףdҀҁ҄҈ҐґҕҜҠҤҬұҸҹҼҿ  !%(),089;<=DE|}ӀӄӌӍӏӐӑӘәӜӠӨөӫӭӴӸӼ@D\`dmoxy|ԀԂԈԉԋԍԔԩ <=@DLMOQXY\`ehikmtux|ՄՅՇՈՉՐե $-89<@EHIKMQTUX\gipqtփօ֌֍֐ְֹֻ֔֝֟֡֨֬ ()+-458ahe9iouvv{U[WQ|P(S\E]bcnddn py[ݎ}EN~NPe]^aiWqTGu+N^Pgph@Q RRjwR`/PHacdhpLt/t{Pʼnܙ(R.`]bOQIS!X^fm8prs{P[SfckNVPXJX`*a'biЛA[}_NPTU[ ]]e*eNh!jKrvw}^NߏNʙUNNEN]NOQwRS@SSTVWuW[]^abeQggikPkklBnpxrstwwzv}  ߈b3dҚEןW \@ʗTzَ͐X\Hcz[_zyzP&R8RSwWbcrk mw7SsWhvg:jopm̙Kfwkx<SW-YNcisxEzz|us5RWGuG{`̒jXQKRKRbhiuPRRaeh9it~{K뉲9љI NYdfjt4yy~_ &O S`%bqlr}}fNQbw܀OOQvQUVhW;WWYYGY[\]]^~_beeggg^hhj_k:l#l}lmst&t*ttuxuxxyAyGyHyz{}}-OHw!$Qe}OvT bhTUQ: Za bbfqV cOczSW!gi`ns"u7#$%} &'rVZ()*+,NC-QgYHg.Ys^tdy_`lbc{[[R/Yt_)`012tY3456789:;<=>?@ABCoDE`FGfHI\?JKLMNOPQZ%g{}RSTUVWXY\r-RL]Pde,ko|C~͉dbɁ؈^gmjrttoO] _ QcueNPQiQhj|||oҏOQ7RTB^anb>ejoy*܈#bjRfkwpy+bBabe#o#qIt}o&#JQRRm pȈ^eko|>suNO6V_\]`s{-΀F4HaOoyR`ddjo^prv\2ouxy}ɓX_g'p't|`~Q!p(rbxʌŒڌNP[^eqvBwJ|'XZA\bjmov;}/~78KRegimAnpt t`uYv$xk,^Qmb.xOP+]m}*_aDhaRҀQQi^z}uOR)STU\e`gNhmlrrttbu|lyψ̑ЖTo~qtWgmt3x,z{ |ditjuxx虬T[^Uo NSMZ)]_Nabc=fifno+pcw,;E;Ubg+l jzNY__g}T+WYZ[f'ghkqdu㐁EL@[_lsvv߄ QQMQRhlww }}bnQT T}ffi'nvw‡iOQRY^=aUdxdyfgj!kkr_ratAw8wۀ(g(lrgvwfzFklY"g&SoXY^cf4gsn:s+zׂד(R]aab bdeiYkfkq!su]~Fj'aXPRT;UOelv} } ^RlriTsZ\>]K_L_g*hicneef ginx}!+*2P OcW_bcgonCqvÀ̀ڈ)MjO/Op^gh"v}v~D^aj qiqujd~ACO{OpQ^hl>lNlr{ălt:PRXdjtvVx9eS^_R%wINPQu\[^wff:ghpuuyzݏ' OX!X1[fnkemnzo}su+܉\OPSS\[_g yy/9;g,NvOYI\\\cghpqt+~+"ҜN NOPRVRoT&TWY+Zf[Z[u[^fbvewemnnr6{&|?6PQ@tܖDٜSRT)VtXYTYn_abnfl~qv||}gO[__b])g hx|~ClNPSS*SQYZb^`abIbyegikkkklht5uxxyy|}ဥ>ƒ芹l^۟;V[*_lejkm\opr]sӘ;al7XNMNNNO:Oy@y`y{}}r цLjߊP^܍fߞRJigjPR*\qeclUsu#u{x0Nwdkq^N kgIhnkcoN PPQUFUV[@\\^8^^^`hQjanXr=r@rvye{ԈsaޗX^tUlza}"rrruu%m{XX]^^_`UbceMfffhhrt^{n}n}r͟ YYm^-`ffsglPmo_wxƑ˓+NPQHU[ [bGe~en2q}ttDttvly}~Uz9ux%MSh\QiTlm)n+ ;-gRafk~ ]emqnWY[`'`bff_s)svw{lVreNRkrmz{9}0oSV/XQ[\\]b@cdf-hlmnppqu&uuv{{|+} }9,m4 a7O\lg_m|~[k]d \s[`g~mފ R7ppQxpOSUVWXZ[\\^%ab bKcde6exj9kl4mo1qrsxttv&wayzWz|}}~a)1څꈖ8Bl֗ӛSX~Y[p[moZqt!t]__`BehiojSkm5msvw{M}#@cbđb Se]]']it_hob҉6rNNXPRSGbf~i^OSV6YZ\8\N\M^_`Cef/fBggswy:ń͉fiUzW[_`obi kn\q{҇UXߘO8OOT{Z [aT3UXbXYgZ[`aeVefdhlZopqsR{}2\KlsDs:ntevzi~ Q@Xdtuvp͙Tn&tzzهxZI[[himcstt,x}UL.f_egljsP-ZkjwY]l]s%uOPQX/Y-YY[]bdddfjHqtdzz~G~^p‡ YÐRa~k2mt~%OPQRWX[^aBimngnqtbu(u,s8Ɏ NOQPvQ*SSS[[\$aaer[st@vyPyy}Ն^GꖅR_gef1h/q\z6 NjRkoqSK1NqQCSTWWWZZ[`(a?clm9nrnr0s?tWшE`ƖbXg^OMPIPSqW YZ\ apfn-r2tK}Äf?_[U˛ONsOQQjU/U[z[^|^}^``aa ce8g ggiaiblm'n8os6s7t\u1vR}8Պۊ0BJ>zIɓnX kӀQAYk\9odsגۀbp}hW`iaGkNYTm-pcl㐑QaɁOPQ[aadikuwdcpNNO Y7Y]__[`!r>supuy 3Q茽 p7vNNRSpTVY[__nn}j5mwNOZO~Xen8NXYY`AzOQeSDNRi[UNR:TYY[P[W[\`caHnpqnstux}+(ɊǖO\RVef(p|pr5}Lr[qhkozv\fo[{|*6NNS X4XXYl\^3^_5cfgVjjk o?rFsPtz|x߁烊l#ψݍwQTW([bMgPh=hn=np}~! KNr-{͓OGONQ2TY^bguinjlnrs*u{}5W[Ο_RT Z[dXeunrvzM{|M~>߃{+ʍd_iOCOzPQhQxRMRjXaX|Y`\\U^`b0hkloqNt u0u8uQvr{L{{{~n>I?"+ZkRb*bmYvdz{}vS`\^o8p|cdzvNNNP\PuTHY[^@^^_`c:e?etefvfxgihjkcl@mmnn^ppssu:w[xyz z}|}Gꌞ-Jؒf̓ V\R6RU|X$^_`choym{,ͅDd=LJOQFQRV2__kcdefAffghhioonqgqr*tw:yVyZyz z||}D~pT m;՜e|[X\ SRbsP'[_`akhmt.z.}B}~1k*5~OPWP]^c+jN;OOOPZY݀TjThUYO[]^f]g1gh*lm2nJopsu|L}},}ۊ;p31NRDz|OQQW[\fYj=mZnoq uoz"!u˙N-NFS}jiklAzXafbpuu~RINKSTW0W@_ccdoe/efzggkbl`lo,wx%yIyW}󂝂rvzz7~TwUUXuc/d"fIfKhmikm%nsthtu[uvwwy~ ~/:ю돰2csOSYZ^hNtuyz̏egWoW}ݏ/_aoNOPSU]o]k!kdx{IʐncId>w@z/jdoqttz|~|~ }LR9[dg-}.PSXyaXaYaezًP P!RuU1Z<^_pa4e^f f6fino2sv!z9YքPW[[_icx&}܅!ǑQg{VQY`UPRT\:a}bbdenv `_NSCUY)]dlmszw!QTU_do}M5P\lmuw|=|dyXY^cwrRuwk܌^ftm}˗QRCfmn}.^RRTabbhiiZj5pq&x]yyyz xՃIIbOVqwׇ[_gQSXZ[`ad`~=p%dP]gXbciixjnkvy˂)ύKۚ6 Nu\y]z{Q{~.ĎYtf%i?tCQg.QE_l]w`ST9V4Z6\1pZ퍣_PtNS`n,\dOP$U\^_`ehlmquuvazzI}}n􆩏əRRGRŘ퉪NgoO[glmxtx'ݓ|yz1_NTU>XY`bSbg6iU5@P,SSUDW|bXdfkgoot"t88TQVWf_HakNpXp}Yj+cw=XTd-i[^noiQLSY*` aKklpl{΂ԍƐdodeQNTWa_hvu{R}qXí*9PxYWYb*a]ryWaZF]bddgwlm>r,t6x4wۘR$WBgrHt㌩*QkScLOiU`eWlmrLrz_mopaOPObArG{}MWj^sg UT [^c^_ e=[OHSS STTW^`bbcUlmfux2ށ/ބa ^EffprOR}_jaSgSjotyhhyǘĚCTziSJ_|buvBS9_<_lsubu{FNO\c>myrϘ0NQDRW_blnppPpqstiJaQn_W`agfYJNNNT|XXY}\_'b6bHf fgkmimnVnooop]rt%tZtvy\|~ႦkN_twje`bwZZfmn>t?B_`{T_l^lm*p}y ;ST[j:pkuuyyqAt de+xxzkN8UYP[^{`ckafehSnqet}i%m;ns>AQ^L_`M`a0aLfCfDiln_nobqLtv{|'RWQS/V^_`b`affgjmoppsj~j4ԊRsr[jkTV[]eHefhmmr;uMOPSTT # http://www.symbols.net/blissre.htm # and Ross Summerfield # http://www.hyperquantum.com.au/bliss/ # # Mailing list: # None yet # Files: # ftp://ftp.hyperquantum.com.au/bliss/ # # First Column: BLISSYMBOLICS65 codes. # Second Column: Unicode PUA values. # Updates: # None # # Fixed space characters: 0x20 0xE000 #  BLISSYMBOLICS DOUBLE SPACE 0x6F 0xE001 #  BLISSYMBOLICS WHOLE SPACE 0x70 0xE002 #  BLISSYMBOLICS HALF SPACE 0x5B 0xE003 #  BLISSYMBOLICS QUARTER SPACE 0x5D 0xE004 #  BLISSYMBOLICS EIGHTH SPACE 0x5D 0xE005 #  BLISSYMBOLICS SIXTEENTH SPACE # Combining characters (Class 0): 0x7D 0xE006 #  BLISSYMBOLICS OWNERSHIP 0xD7 0xE007 #  BLISSYMBOLICS PLUS 0x68 0xE008 #  BLISSYMBOLICS MINUS 0x64 0xE009 #  BLISSYMBOLICS MANY 0x66 0xE00A #  BLISSYMBOLICS MULTIPLE 0x6D 0xE00B #  BLISSYMBOLICS PLURAL 0xD4 0xE00C #  BLISSYMBOLICS DIVIDE 0xD5 0xE00D #  BLISSYMBOLICS EQUALS 0xCE 0xE00E #  BLISSYMBOLICS RELATION SMALL LESS 0xEC 0xE00F #  BLISSYMBOLICS RELATION LESS 0x30 0xE010 #  BLISSYMBOLICS ZERO 0x31 0xE011 #  BLISSYMBOLICS ONE 0x32 0xE012 #  BLISSYMBOLICS TWO 0x33 0xE013 #  BLISSYMBOLICS THREE 0x34 0xE014 #  BLISSYMBOLICS FOUR 0x35 0xE015 #  BLISSYMBOLICS FIVE 0x36 0xE016 #  BLISSYMBOLICS SIX 0x37 0xE017 #  BLISSYMBOLICS SEVEN 0x38 0xE018 #  BLISSYMBOLICS EIGHT 0x39 0xE019 #  BLISSYMBOLICS NINE 0xCA 0xE01A #  BLISSYMBOLICS SHIFT ONE 0xCB 0xE01B #  BLISSYMBOLICS SHIFT TWO 0xCC 0xE01C #  BLISSYMBOLICS SHIFT THREE 0xCD 0xE01D #  BLISSYMBOLICS SHIFT FOUR 0xEF 0xE01E #  BLISSYMBOLICS RELATION GREATER 0xCF 0xE01F #  BLISSYMBOLICS RELATION SMALL GREATER 0x2D 0xE020 #  BLISSYMBOLICS PERIOD 0x7B 0xE021 #  BLISSYMBOLICS LOW SKY PERIOD 0xF9 0xE022 #  BLISSYMBOLICS LOWER SKY PERIOD 0xFF 0xE023 #  BLISSYMBOLICS UPPER GROUND PERIOD 0x21 0xE024 #  BLISSYMBOLICS INTENSITY 0x3F 0xE025 #  BLISSYMBOLICS QUESTION 0xC9 0xE026 #  BLISSYMBOLICS COMMA 0x3A 0xE027 #  BLISSYMBOLICS COLON 0xAB 0xE028 #  BLISSYMBOLICS GROUND BACK POINTER 0xBB 0xE029 #  BLISSYMBOLICS MID BACK POINTER 0xA6 0xE02A #  BLISSYMBOLICS SKY BACK POINTER 0x76 0xE02B #  BLISSYMBOLICS PASSIVE INDICATOR 0x63 0xE02C #  BLISSYMBOLICS ACTIVE INDICATOR 0xBD 0xE02D #  BLISSYMBOLICS GROUND FORWARD POINTER 0xE1 0xE02E #  BLISSYMBOLICS DISAGREEMENT 0x57 0xE02F #  BLISSYMBOLICS REVERSE 0xC4 0xE030 #  BLISSYMBOLICS TO AND FRO 0x51 0xE031 #  BLISSYMBOLICS PROGRESS 0xE9 0xE032 #  BLISSYMBOLICS AGREEMENT 0xA1 0xE033 #  BLISSYMBOLICS SKY FORWARD POINTER 0x4A 0xE034 #  BLISSYMBOLICS MID FORWARD POINTER 0xB7 0xE035 #  BLISSYMBOLICS COMPETITION 0x52 0xE036 #  BLISSYMBOLICS DOWN 0x45 0xE037 #  BLISSYMBOLICS UP 0xB0 0xE038 #  BLISSYMBOLICS SEPARATION 0xF3 0xE039 #  BLISSYMBOLICS GATHERING 0x4B 0xE03A #  BLISSYMBOLICS THING 0x2C 0xE03B #  BLISSYMBOLICS MATERIAL THING 0x54 0xE03C #  BLISSYMBOLICS HIDDEN THING 0x58 0xE03D #  BLISSYMBOLICS ACTION 0x44 0xE03E #  BLISSYMBOLICS ACTIVITY 0x7A 0xE03F #  BLISSYMBOLICS PHYSICAL ACTION 0xA5 0xE040 #  BLISSYMBOLICS SKY ACTION 0xA3 0xE041 #  BLISSYMBOLICS MID ACTION 0xA2 0xE042 #  BLISSYMBOLICS GROUND ACTION 0x7C 0xE043 #  BLISSYMBOLICS WORK 0x59 0xE044 #  BLISSYMBOLICS EVALUATION 0xB5 0xE045 #  BLISSYMBOLICS GROUND EVALUATION 0xF1 0xE046 #  BLISSYMBOLICS MID EVALUATION 0xAA 0xE047 #  BLISSYMBOLICS SKY EVALUATION 0x62 0xE048 #  BLISSYMBOLICS PRE HUMAN EVALUATION 0x78 0xE049 #  BLISSYMBOLICS HUMAN EVALUATION 0x6E 0xE04A #  BLISSYMBOLICS POST HUMAN EVALUATION 0x2E 0xE04B #  BLISSYMBOLICS PAST TENSE 0x3C 0xE04C #  BLISSYMBOLICS AGO 0x42 0xE04D #  BLISSYMBOLICS PAST 0x56 0xE04E #  BLISSYMBOLICS FUTURE 0x3E 0xE04F #  BLISSYMBOLICS HENCE 0x2F 0xE050 #  BLISSYMBOLICS FUTURE TENSE 0xFA 0xE051 #  BLISSYMBOLICS EITHER 0x27 0xE052 #  BLISSYMBOLICS QUOTE 0x5C 0xE053 #  BLISSYMBOLICS DEGREES 0x4E 0xE054 #  BLISSYMBOLICS MONTH 0xBA 0xE055 #  BLISSYMBOLICS TURN 0xF7 0xE056 #  BLISSYMBOLICS JUMP 0xF2 0xE057 #  BLISSYMBOLICS ELECTRICITY 0xBF 0xE058 #  BLISSYMBOLICS ENVELOPE 0xEB 0xE059 #  BLISSYMBOLICS MUSIC 0x6B 0xE05A #  BLISSYMBOLICS DESTRUCTION 0xE7 0xE05B #  BLISSYMBOLICS MID DESTRUCTION 0x5E 0xE05C #  BLISSYMBOLICS UPPER CIRCLE 0x67 0xE05D #  BLISSYMBOLICS LOWER CIRCLE 0x74 0xE05E #  BLISSYMBOLICS MALE 0x79 0xE05F #  BLISSYMBOLICS FEMALE 0x72 0xE060 #  BLISSYMBOLICS INDIVIDUAL 0x47 0xE061 #  BLISSYMBOLICS IT 0x28 0xE062 #  BLISSYMBOLICS GROUND 0x46 0xE063 #  BLISSYMBOLICS MID PLANE 0x29 0xE064 #  BLISSYMBOLICS SKY 0x6C 0xE065 #  BLISSYMBOLICS HALF GROUND 0xED 0xE066 #  BLISSYMBOLICS LOWER HALF GROUND 0x48 0xE067 #  BLISSYMBOLICS UPPER HALF GROUND 0x43 0xE068 #  BLISSYMBOLICS LOWER HALF SKY 0x73 0xE069 #  BLISSYMBOLICS HALF SKY 0x24 0xE06A #  BLISSYMBOLICS WHEEL 0xE0 0xE06B #  BLISSYMBOLICS TRANSPORT 0xFD 0xE06C #  BLISSYMBOLICS EVENING 0x75 0xE06D #  BLISSYMBOLICS PROTECTION 0x3D 0xE06E #  BLISSYMBOLICS HALF OPEN 0xF6 0xE06F #  BLISSYMBOLICS STAIRS 0x55 0xE070 #  BLISSYMBOLICS CHAIR 0x49 0xE071 #  BLISSYMBOLICS TABLE 0xE6 0xE072 #  BLISSYMBOLICS BED 0x7E 0xE073 #  BLISSYMBOLICS FIRE 0x4D 0xE074 #  BLISSYMBOLICS GROUND WATER 0x40 0xE075 #  BLISSYMBOLICS MID WATER 0xDF 0xE076 #  BLISSYMBOLICS SKY WATER 0x53 0xE077 #  BLISSYMBOLICS HOLD 0xFB 0xE078 #  BLISSYMBOLICS FLAG 0x65 0xE079 #  BLISSYMBOLICS WINGS 0x41 0xE07A #  BLISSYMBOLICS MOUTH 0x25 0xE07B #  BLISSYMBOLICS EAR 0x26 0xE07C #  BLISSYMBOLICS LANGUAGE 0x4C 0xE07D #  BLISSYMBOLICS HAND 0xFE 0xE07E #  BLISSYMBOLICS RIGHT HAND 0x50 0xE07F #  BLISSYMBOLICS ARM 0xD1 0xE080 #  BLISSYMBOLICS HEAD 0xDC 0xE081 #  BLISSYMBOLICS NOSE 0xD8 0xE082 #  BLISSYMBOLICS HAIR 0xE3 0xE083 #  BLISSYMBOLICS WISKER 0x4F 0xE084 #  BLISSYMBOLICS WALK 0xB6 0xE085 #  BLISSYMBOLICS TREE TOP 0xC7 0xE086 #  BLISSYMBOLICS ROOTS 0xAC 0xE087 #  BLISSYMBOLICS GRASS 0xC5 0xE088 #  BLISSYMBOLICS UPPER GRASS 0xF0 0xE089 #  BLISSYMBOLICS STEM 0xF8 0xE08A #  BLISSYMBOLICS BELOW GROUND STEM 0x6A 0xE08B #  BLISSYMBOLICS PEN 0xD3 0xE08C #  BLISSYMBOLICS MID PEN 0x69 0xE08D #  BLISSYMBOLICS EMOTION 0x71 0xE08E #  BLISSYMBOLICS EMOTION ID 0x77 0xE08F #  BLISSYMBOLICS CONSCIENCE 0xE5 0xE090 #  BLISSYMBOLICS SUPER EGO 0x60 0xE091 #  BLISSYMBOLICS LOVE 0xA7 0xE092 #  BLISSYMBOLICS PRETENTIOUS 0x61 0xE093 #  BLISSYMBOLICS LOCATION 0xEE 0xE094 #  BLISSYMBOLICS SPLIT LOCATION 0x2B 0xE095 #  BLISSYMBOLICS MID LOCATION 0x3B 0xE096 #  BLISSYMBOLICS SMALL MID LOCATION 0xD6 0xE097 #  BLISSYMBOLICS UPPER LOCATION 0x22 0xE098 #  BLISSYMBOLICS OPEN 0xC0 0xE099 #  BLISSYMBOLICS CLOSE 0x23 0xE09A #  BLISSYMBOLICS ROOM 0x2A 0xE09B #  BLISSYMBOLICS THIS 0x5F 0xE09C #  BLISSYMBOLICS THAT 0x5A 0xE09D #  BLISSYMBOLICS OPPOSITE MEANING 0xA4 0xE09E #  BLISSYMBOLICS METAPHOR 0xEA 0xE09F #  BLISSYMBOLICS HELP 0xBC 0xE0A0 #  BLISSYMBOLICS NEED 0xE8 0xE0A1 #  BLISSYMBOLICS BREAK 0xB1 0xE0A2 #  BLISSYMBOLICS ILLNESS 0xF4 0xE0A3 #  BLISSYMBOLICS NATURAL 0xFC 0xE0A4 #  BLISSYMBOLICS SUPRA NATURAL 0xE4 0xE0A5 #  BLISSYMBOLICS SPIRIT 0xE2 0xE0A6 #  BLISSYMBOLICS MAKE 0xC6 0xE0A7 #  BLISSYMBOLICS STONE 0xB2 0xE0A8 #  BLISSYMBOLICS YOKE 0xDB 0xE0A9 #  BLISSYMBOLICS HORNS 0xF5 0xE0AA #  BLISSYMBOLICS CLAW 0xD9 0xE0AB #  BLISSYMBOLICS TAIL 0xDD 0xE0AC #  BLISSYMBOLICS UPPER HALF CIRCLE 0xDE 0xE0AD #  BLISSYMBOLICS LOWER HALF CIRCLE 0xDA 0xE0AE #  BLISSYMBOLICS TOP LOWER HALF CIRCLE 0xD0 0xE0AF #  BLISSYMBOLICS RESERVED # # reserved till E0AF # ./mytool/uni/8859-9e.TXT0000644000175000017500000000675007532460064014522 0ustar henrichhenrich# Received from "Vasif Cabbarli" # 2001-02-01 # Map made by Pablo Saratxaga # made by above mentioned friend for # Azerbaijani language. iso-8859-9e not introduced by ISO. 0x00 0x0000 0x01 0x0001 0x02 0x0002 0x03 0x0003 0x04 0x0004 0x05 0x0005 0x06 0x0006 0x07 0x0007 0x08 0x0008 0x09 0x0009 0x0A 0x000A 0x0B 0x000B 0x0C 0x000C 0x0D 0x000D 0x0E 0x000E 0x0F 0x000F 0x10 0x0010 0x11 0x0011 0x12 0x0012 0x13 0x0013 0x14 0x0014 0x15 0x0015 0x16 0x0016 0x17 0x0017 0x18 0x0018 0x19 0x0019 0x1A 0x001A 0x1B 0x001B 0x1C 0x001C 0x1D 0x001D 0x1E 0x001E 0x1F 0x001F 0x20 0x0020 0x21 0x0021 0x22 0x0022 0x23 0x0023 0x24 0x0024 0x25 0x0025 0x26 0x0026 0x27 0x0027 0x28 0x0028 0x29 0x0029 0x2A 0x002A 0x2B 0x002B 0x2C 0x002C 0x2D 0x002D 0x2E 0x002E 0x2F 0x002F 0x30 0x0030 0x31 0x0031 0x32 0x0032 0x33 0x0033 0x34 0x0034 0x35 0x0035 0x36 0x0036 0x37 0x0037 0x38 0x0038 0x39 0x0039 0x3A 0x003A 0x3B 0x003B 0x3C 0x003C 0x3D 0x003D 0x3E 0x003E 0x3F 0x003F 0x40 0x0040 0x41 0x0041 0x42 0x0042 0x43 0x0043 0x44 0x0044 0x45 0x0045 0x46 0x0046 0x47 0x0047 0x48 0x0048 0x49 0x0049 0x4A 0x004A 0x4B 0x004B 0x4C 0x004C 0x4D 0x004D 0x4E 0x004E 0x4F 0x004F 0x50 0x0050 0x51 0x0051 0x52 0x0052 0x53 0x0053 0x54 0x0054 0x55 0x0055 0x56 0x0056 0x57 0x0057 0x58 0x0058 0x59 0x0059 0x5A 0x005A 0x5B 0x005B 0x5C 0x005C 0x5D 0x005D 0x5E 0x005E 0x5F 0x005F 0x60 0x0060 0x61 0x0061 0x62 0x0062 0x63 0x0063 0x64 0x0064 0x65 0x0065 0x66 0x0066 0x67 0x0067 0x68 0x0068 0x69 0x0069 0x6A 0x006A 0x6B 0x006B 0x6C 0x006C 0x6D 0x006D 0x6E 0x006E 0x6F 0x006F 0x70 0x0070 0x71 0x0071 0x72 0x0072 0x73 0x0073 0x74 0x0074 0x75 0x0075 0x76 0x0076 0x77 0x0077 0x78 0x0078 0x79 0x0079 0x7A 0x007A 0x7B 0x007B 0x7C 0x007C 0x7D 0x007D 0x7E 0x007E 0x7F 0x007F 0x80 0x0080 0x81 0x0081 0x82 0x0082 0x83 0x0083 0x84 0x0084 0x85 0x0085 0x86 0x0086 0x87 0x0087 0x88 0x0088 0x89 0x0089 0x8A 0x008A 0x8B 0x008B 0x8C 0x008C 0x8D 0x008D 0x8E 0x008E 0x8F 0x008F 0x90 0x0090 0x91 0x0091 0x92 0x0092 0x93 0x0093 0x94 0x0094 0x95 0x0095 0x96 0x0096 0x97 0x0097 0x98 0x0098 0x99 0x0099 0x9A 0x009A 0x9B 0x009B 0x9C 0x009C 0x9D 0x009D 0x9E 0x009E 0x9F 0x009F 0xA0 0x00A0 0xA1 0x017D 0xA2 0x00A2 0xA3 0x00A3 0xA4 0x20AC 0xA5 0x00A5 0xA6 0x012C 0xA7 0x00A7 0xA8 0x016C 0xA9 0x00A9 0xAA 0x01E6 0xAB 0x00AB 0xAC 0x014A 0xAD 0x00AD 0xAE 0x00AE 0xAF 0x01D1 0xB0 0x00B0 0xB1 0x017E 0xB2 0x00B2 0xB3 0x00B3 0xB4 0x00B4 0xB5 0x00B5 0xB6 0x012D 0xB7 0x00B7 0xB8 0x016D 0xB9 0x00B9 0xBA 0x01E7 0xBB 0x00BB 0xBC 0x014B 0xBD 0x00BD 0xBE 0x0178 0xBF 0x01D2 0xC0 0x00C0 0xC1 0x00C1 0xC2 0x00C2 0xC3 0x00C3 0xC4 0x00C4 0xC5 0x00C5 0xC6 0x018F 0xC7 0x00C7 0xC8 0x00C8 0xC9 0x00C9 0xCA 0x00CA 0xCB 0x00CB 0xCC 0x00CC 0xCD 0x00CD 0xCE 0x00CE 0xCF 0x00CF 0xD0 0x011E 0xD1 0x00D1 0xD2 0x00D2 0xD3 0x00D3 0xD4 0x00D4 0xD5 0x00D5 0xD6 0x00D6 0xD7 0x00DD 0xD8 0x019F 0xD9 0x00D9 0xDA 0x00DA 0xDB 0x00DB 0xDC 0x00DC 0xDD 0x0130 0xDE 0x015E 0xDF 0x00DF 0xE0 0x00E0 0xE1 0x00E1 0xE2 0x00E2 0xE3 0x00E3 0xE4 0x00E4 0xE5 0x00E5 0xE6 0x0259 0xE7 0x00E7 0xE8 0x00E8 0xE9 0x00E9 0xEA 0x00EA 0xEB 0x00EB 0xEC 0x00EC 0xED 0x00ED 0xEE 0x00EE 0xEF 0x00EF 0xF0 0x011F 0xF1 0x00F1 0xF2 0x00F2 0xF3 0x00F3 0xF4 0x00F4 0xF5 0x00F5 0xF6 0x00F6 0xF7 0x00FD 0xF8 0x0275 0xF9 0x00F9 0xFA 0x00FA 0xFB 0x00FB 0xFC 0x00FC 0xFD 0x0131 0xFE 0x015F 0xFF 0x00FF ./mytool/uni/ISO002.TXT0000644000175000017500000001406407532460064014443 0ustar henrichhenrich# # Copyright 2000 epixtech, inc. # # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), # to deal in the Software without restriction, including without limitation # the rights to use, copy, modify, merge, publish, distribute, sublicense, # and/or sell copies of the Software, and to permit persons to whom the # Software is furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # epixtech, Inc. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # # ISO 646(IRV) Basic Latin Set to Unicode 3.0 mapping table. # # ISO Name: ISO 646 International Reference Version Graphic Set # ISO registration number: 002 # ISO 2022 Escape Sequence Final Character: 4/0 # Origination: ISO 646 - 1973 # Number of characters in set: 94 # # # Wayne Schneider # 01 November 2000 # Modified by Gaspar Sinai to allow 0x20 (space) # $Id: ISO002.TXT,v 1.1 2000/11/03 14:40:23 mleisher Exp $ # 0x20 0x0020 # SPACE 0x21 0x0021 # EXCLAMATION MARK / EXCLAMATION MARK 0x22 0x0022 # QUOTATION MARK, DIARESIS / QUOTATION MARK 0x23 0x0023 # NUMBER SIGN / NUMBER SIGN 0x24 0x00A4 # CURRENCY SIGN / CURRENCY SIGN 0x25 0x0025 # PER CENT SIGN / PERCENT SIGN 0x26 0x0026 # AMPERSAND / AMPERSAND 0x27 0x0027 # APOSTROPHE, ACUTE ACCENT / APOSTROPHE 0x28 0x0028 # LEFT PARENTHESIS / LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS / RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK / ASTERISK 0x2B 0x002B # PLUS SIGN / PLUS SIGN 0x2C 0x002C # COMMA, CEDILLA / COMMA 0x2D 0x002D # HYPHEN (MINUS SIGN) / HYPHEN-MINUS 0x2E 0x002E # FULL STOP (PERIOD) / FULL STOP 0x2F 0x002F # SOLIDUS / SOLIDUS 0x30 0x0030 # DIGIT ZERO / DIGIT ZERO 0x31 0x0031 # DIGIT ONE / DIGIT ONE 0x32 0x0032 # DIGIT TWO / DIGIT TWO 0x33 0x0033 # DIGIT THREE / DIGIT THREE 0x34 0x0034 # DIGIT FOUR / DIGIT FOUR 0x35 0x0035 # DIGIT FIVE / DIGIT FIVE 0x36 0x0036 # DIGIT SIX / DIGIT SIX 0x37 0x0037 # DIGIT SEVEN / DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT / DIGIT EIGHT 0x39 0x0039 # DIGIT NINE / DIGIT NINE 0x3A 0x003A # COLON / COLON 0x3B 0x003B # SEMI-COLON / SEMICOLON 0x3C 0x003C # LESS THAN SIGN / LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN / EQUALS SIGN 0x3E 0x003E # GREATER THAN SIGN / GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK / QUESTION MARK 0x40 0x0040 # COMMERCIAL AT / COMMERCIAL AT 0x41 0x0041 # CAPITAL LETTER A / LATIN CAPITAL LETTER A 0x42 0x0042 # CAPITAL LETTER B / LATIN CAPITAL LETTER B 0x43 0x0043 # CAPITAL LETTER C / LATIN CAPITAL LETTER C 0x44 0x0044 # CAPITAL LETTER D / LATIN CAPITAL LETTER D 0x45 0x0045 # CAPITAL LETTER E / LATIN CAPITAL LETTER E 0x46 0x0046 # CAPITAL LETTER F / LATIN CAPITAL LETTER F 0x47 0x0047 # CAPITAL LETTER G / LATIN CAPITAL LETTER G 0x48 0x0048 # CAPITAL LETTER H / LATIN CAPITAL LETTER H 0x49 0x0049 # CAPITAL LETTER I / LATIN CAPITAL LETTER I 0x4A 0x004A # CAPITAL LETTER J / LATIN CAPITAL LETTER J 0x4B 0x004B # CAPITAL LETTER K / LATIN CAPITAL LETTER K 0x4C 0x004C # CAPITAL LETTER L / LATIN CAPITAL LETTER L 0x4D 0x004D # CAPITAL LETTER M / LATIN CAPITAL LETTER M 0x4E 0x004E # CAPITAL LETTER N / LATIN CAPITAL LETTER N 0x4F 0x004F # CAPITAL LETTER O / LATIN CAPITAL LETTER O 0x50 0x0050 # CAPITAL LETTER P / LATIN CAPITAL LETTER P 0x51 0x0051 # CAPITAL LETTER Q / LATIN CAPITAL LETTER Q 0x52 0x0052 # CAPITAL LETTER R / LATIN CAPITAL LETTER R 0x53 0x0053 # CAPITAL LETTER S / LATIN CAPITAL LETTER S 0x54 0x0054 # CAPITAL LETTER T / LATIN CAPITAL LETTER T 0x55 0x0055 # CAPITAL LETTER U / LATIN CAPITAL LETTER U 0x56 0x0056 # CAPITAL LETTER V / LATIN CAPITAL LETTER V 0x57 0x0057 # CAPITAL LETTER W / LATIN CAPITAL LETTER W 0x58 0x0058 # CAPITAL LETTER X / LATIN CAPITAL LETTER X 0x59 0x0059 # CAPITAL LETTER Y / LATIN CAPITAL LETTER Y 0x5A 0x005A # CAPITAL LETTER Z / LATIN CAPITAL LETTER Z 0x5B 0x005B # LEFT SQUARE BRACKET / LEFT SQUARE BRACKET 0x5C 0x005C # REVERSE SOLIDUS / REVERSE SOLIDUS 0x5D 0x005D # RIGHT SQUARE BRACKET / RIGHT SQUARE BRACKET 0x5E 0x005E # UPWARD ARROW HEAD, CIRCUMFLEX ACCENT / CIRCUMFLEX ACCENT 0x5F 0x005F # UNDERLINE / LOW LINE 0x60 0x0060 # GRAVE ACCENT / GRAVE ACCENT 0x61 0x0061 # SMALL LETTER A / LATIN SMALL LETTER A 0x62 0x0062 # SMALL LETTER B / LATIN SMALL LETTER B 0x63 0x0063 # SMALL LETTER C / LATIN SMALL LETTER C 0x64 0x0064 # SMALL LETTER D / LATIN SMALL LETTER D 0x65 0x0065 # SMALL LETTER E / LATIN SMALL LETTER E 0x66 0x0066 # SMALL LETTER F / LATIN SMALL LETTER F 0x67 0x0067 # SMALL LETTER G / LATIN SMALL LETTER G 0x68 0x0068 # SMALL LETTER H / LATIN SMALL LETTER H 0x69 0x0069 # SMALL LETTER I / LATIN SMALL LETTER I 0x6A 0x006A # SMALL LETTER J / LATIN SMALL LETTER J 0x6B 0x006B # SMALL LETTER K / LATIN SMALL LETTER K 0x6C 0x006C # SMALL LETTER L / LATIN SMALL LETTER L 0x6D 0x006D # SMALL LETTER M / LATIN SMALL LETTER M 0x6E 0x006E # SMALL LETTER N / LATIN SMALL LETTER N 0x6F 0x006F # SMALL LETTER O / LATIN SMALL LETTER O 0x70 0x0070 # SMALL LETTER P / LATIN SMALL LETTER P 0x71 0x0071 # SMALL LETTER Q / LATIN SMALL LETTER Q 0x72 0x0072 # SMALL LETTER R / LATIN SMALL LETTER R 0x73 0x0073 # SMALL LETTER S / LATIN SMALL LETTER S 0x74 0x0074 # SMALL LETTER T / LATIN SMALL LETTER T 0x75 0x0075 # SMALL LETTER U / LATIN SMALL LETTER U 0x76 0x0076 # SMALL LETTER V / LATIN SMALL LETTER V 0x77 0x0077 # SMALL LETTER W / LATIN SMALL LETTER W 0x78 0x0078 # SMALL LETTER X / LATIN SMALL LETTER X 0x79 0x0079 # SMALL LETTER Y / LATIN SMALL LETTER Y 0x7A 0x007A # SMALL LETTER Z / LATIN SMALL LETTER Z 0x7B 0x007B # LEFT CURLY BRACKET / LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE / VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET / RIGHT CURLY BRACKET 0x7E 0x203E # OVERLINE / OVERLINE ./mytool/uni/windows-1255.txt0000644000175000017500000001716507532460064016020 0ustar henrichhenrich# Hebrew with vowels # Microsoft Windows Codepage : 1255 (Hebrew) # also known as windows-1255 or SI 1311-1 # # converted from this webpage: # http://microsoft.com/globaldev/reference/sbcs/1255.htm # # by Michael Radwin # on 2001-02-26 # 0x00 0x0000 # NULL 0x01 0x0001 # START OF HEADING 0x02 0x0002 # START OF TEXT 0x03 0x0003 # END OF TEXT 0x04 0x0004 # END OF TRANSMISSION 0x05 0x0005 # ENQUIRY 0x06 0x0006 # ACKNOWLEDGE 0x07 0x0007 # BELL 0x08 0x0008 # BACKSPACE 0x09 0x0009 # HORIZONTAL TABULATION 0x0A 0x000A # LINE FEED 0x0B 0x000B # VERTICAL TABULATION 0x0C 0x000C # FORM FEED 0x0D 0x000D # CARRIAGE RETURN 0x0E 0x000E # SHIFT OUT 0x0F 0x000F # SHIFT IN 0x10 0x0010 # DATA LINK ESCAPE 0x11 0x0011 # DEVICE CONTROL ONE 0x12 0x0012 # DEVICE CONTROL TWO 0x13 0x0013 # DEVICE CONTROL THREE 0x14 0x0014 # DEVICE CONTROL FOUR 0x15 0x0015 # NEGATIVE ACKNOWLEDGE 0x16 0x0016 # SYNCHRONOUS IDLE 0x17 0x0017 # END OF TRANSMISSION BLOCK 0x18 0x0018 # CANCEL 0x19 0x0019 # END OF MEDIUM 0x1A 0x001A # SUBSTITUTE 0x1B 0x001B # ESCAPE 0x1C 0x001C # FILE SEPARATOR 0x1D 0x001D # GROUP SEPARATOR 0x1E 0x001E # RECORD SEPARATOR 0x1F 0x001F # UNIT SEPARATOR 0x20 0x0020 # SPACE 0x21 0x0021 # EXCLAMATION MARK 0x22 0x0022 # QUOTATION MARK 0x23 0x0023 # NUMBER SIGN 0x24 0x0024 # DOLLAR SIGN 0x25 0x0025 # PERCENT SIGN 0x26 0x0026 # AMPERSAND 0x27 0x0027 # APOSTROPHE 0x28 0x0028 # LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK 0x2B 0x002B # PLUS SIGN 0x2C 0x002C # COMMA 0x2D 0x002D # HYPHEN-MINUS 0x2E 0x002E # FULL STOP 0x2F 0x002F # SOLIDUS 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE 0x3A 0x003A # COLON 0x3B 0x003B # SEMICOLON 0x3C 0x003C # LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN 0x3E 0x003E # GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK 0x40 0x0040 # COMMERCIAL AT 0x41 0x0041 # LATIN CAPITAL LETTER A 0x42 0x0042 # LATIN CAPITAL LETTER B 0x43 0x0043 # LATIN CAPITAL LETTER C 0x44 0x0044 # LATIN CAPITAL LETTER D 0x45 0x0045 # LATIN CAPITAL LETTER E 0x46 0x0046 # LATIN CAPITAL LETTER F 0x47 0x0047 # LATIN CAPITAL LETTER G 0x48 0x0048 # LATIN CAPITAL LETTER H 0x49 0x0049 # LATIN CAPITAL LETTER I 0x4A 0x004A # LATIN CAPITAL LETTER J 0x4B 0x004B # LATIN CAPITAL LETTER K 0x4C 0x004C # LATIN CAPITAL LETTER L 0x4D 0x004D # LATIN CAPITAL LETTER M 0x4E 0x004E # LATIN CAPITAL LETTER N 0x4F 0x004F # LATIN CAPITAL LETTER O 0x50 0x0050 # LATIN CAPITAL LETTER P 0x51 0x0051 # LATIN CAPITAL LETTER Q 0x52 0x0052 # LATIN CAPITAL LETTER R 0x53 0x0053 # LATIN CAPITAL LETTER S 0x54 0x0054 # LATIN CAPITAL LETTER T 0x55 0x0055 # LATIN CAPITAL LETTER U 0x56 0x0056 # LATIN CAPITAL LETTER V 0x57 0x0057 # LATIN CAPITAL LETTER W 0x58 0x0058 # LATIN CAPITAL LETTER X 0x59 0x0059 # LATIN CAPITAL LETTER Y 0x5A 0x005A # LATIN CAPITAL LETTER Z 0x5B 0x005B # LEFT SQUARE BRACKET 0x5C 0x005C # REVERSE SOLIDUS 0x5D 0x005D # RIGHT SQUARE BRACKET 0x5E 0x005E # CIRCUMFLEX ACCENT 0x5F 0x005F # LOW LINE 0x60 0x0060 # GRAVE ACCENT 0x61 0x0061 # LATIN SMALL LETTER A 0x62 0x0062 # LATIN SMALL LETTER B 0x63 0x0063 # LATIN SMALL LETTER C 0x64 0x0064 # LATIN SMALL LETTER D 0x65 0x0065 # LATIN SMALL LETTER E 0x66 0x0066 # LATIN SMALL LETTER F 0x67 0x0067 # LATIN SMALL LETTER G 0x68 0x0068 # LATIN SMALL LETTER H 0x69 0x0069 # LATIN SMALL LETTER I 0x6A 0x006A # LATIN SMALL LETTER J 0x6B 0x006B # LATIN SMALL LETTER K 0x6C 0x006C # LATIN SMALL LETTER L 0x6D 0x006D # LATIN SMALL LETTER M 0x6E 0x006E # LATIN SMALL LETTER N 0x6F 0x006F # LATIN SMALL LETTER O 0x70 0x0070 # LATIN SMALL LETTER P 0x71 0x0071 # LATIN SMALL LETTER Q 0x72 0x0072 # LATIN SMALL LETTER R 0x73 0x0073 # LATIN SMALL LETTER S 0x74 0x0074 # LATIN SMALL LETTER T 0x75 0x0075 # LATIN SMALL LETTER U 0x76 0x0076 # LATIN SMALL LETTER V 0x77 0x0077 # LATIN SMALL LETTER W 0x78 0x0078 # LATIN SMALL LETTER X 0x79 0x0079 # LATIN SMALL LETTER Y 0x7A 0x007A # LATIN SMALL LETTER Z 0x7B 0x007B # LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET 0x7E 0x007E # TILDE 0x7F 0x007F # DELETE 0x80 0x20AC # EURO SIGN 0x82 0x201A # SINGLE LOW-9 QUOTATION MARK 0x83 0x0192 # LATIN SMALL LETTER F WITH HOOK 0x84 0x201E # DOUBLE LOW-9 QUOTATION MARK 0x85 0x2026 # HORIZONTAL ELLIPSIS 0x86 0x2020 # DAGGER 0x87 0x2021 # DOUBLE DAGGER 0x88 0x02C6 # MODIFIER LETTER CIRCUMFLEX ACCENT 0x89 0x2030 # PER MILLE SIGN 0x8B 0x2039 # SINGLE LEFT-POINTING ANGLE QUOTATION MARK 0x91 0x2018 # LEFT SINGLE QUOTATION MARK 0x92 0x2019 # RIGHT SINGLE QUOTATION MARK 0x93 0x201C # LEFT DOUBLE QUOTATION MARK 0x94 0x201D # RIGHT DOUBLE QUOTATION MARK 0x95 0x2022 # BULLET 0x96 0x2013 # EN DASH 0x97 0x2014 # EM DASH 0x98 0x02DC # SMALL TILDE 0x99 0x2122 # TRADE MARK SIGN 0x9B 0x203A # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 0xA0 0x00A0 # NO-BREAK SPACE 0xA1 0x00A1 # INVERTED EXCLAMATION MARK 0xA2 0x00A2 # CENT SIGN 0xA3 0x00A3 # POUND SIGN 0xA4 0x20AA # NEW SHEQEL SIGN 0xA5 0x00A5 # YEN SIGN 0xA6 0x00A6 # BROKEN BAR 0xA7 0x00A7 # SECTION SIGN 0xA8 0x00A8 # DIAERESIS 0xA9 0x00A9 # COPYRIGHT SIGN 0xAA 0x00D7 # MULTIPLICATION SIGN 0xAB 0x00AB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK 0xAC 0x00AC # NOT SIGN 0xAD 0x00AD # SOFT HYPHEN 0xAE 0x00AE # REGISTERED SIGN 0xAF 0x00AF # MACRON 0xB0 0x00B0 # DEGREE SIGN 0xB1 0x00B1 # PLUS-MINUS SIGN 0xB2 0x00B2 # SUPERSCRIPT TWO 0xB3 0x00B3 # SUPERSCRIPT THREE 0xB4 0x00B4 # ACUTE ACCENT 0xB5 0x00B5 # MICRO SIGN 0xB6 0x00B6 # PILCROW SIGN 0xB7 0x00B7 # MIDDLE DOT 0xB8 0x00B8 # CEDILLA 0xB9 0x00B9 # SUPERSCRIPT ONE 0xBA 0x00F7 # DIVISION SIGN 0xBB 0x00BB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK 0xBC 0x00BC # VULGAR FRACTION ONE QUARTER 0xBD 0x00BD # VULGAR FRACTION ONE HALF 0xBE 0x00BE # VULGAR FRACTION THREE QUARTERS 0xBF 0x00BF # INVERTED QUESTION MARK 0xC0 0x05B0 # HEBREW POINT SHEVA 0xC1 0x05B1 # HEBREW POINT HATAF SEGOL 0xC2 0x05B2 # HEBREW POINT HATAF PATAH 0xC3 0x05B3 # HEBREW POINT HATAF QAMATS 0xC4 0x05B4 # HEBREW POINT HIRIQ 0xC5 0x05B5 # HEBREW POINT TSERE 0xC6 0x05B6 # HEBREW POINT SEGOL 0xC7 0x05B7 # HEBREW POINT PATAH 0xC8 0x05B8 # HEBREW POINT QAMATS 0xC9 0x05B9 # HEBREW POINT HOLAM 0xCB 0x05BB # HEBREW POINT QUBUTS 0xCC 0x05BC # HEBREW POINT DAGESH OR MAPIQ 0xCD 0x05BD # HEBREW POINT METEG 0xCE 0x05BE # HEBREW PUNCTUATION MAQAF 0xCF 0x05BF # HEBREW POINT RAFE 0xD0 0x05C0 # HEBREW PUNCTUATION PASEQ 0xD1 0x05C1 # HEBREW POINT SHIN DOT 0xD2 0x05C2 # HEBREW POINT SIN DOT 0xD3 0x05C3 # HEBREW PUNCTUATION SOF PASUQ 0xD4 0x05F0 # HEBREW LIGATURE YIDDISH DOUBLE VAV 0xD5 0x05F1 # HEBREW LIGATURE YIDDISH VAV YOD 0xD6 0x05F2 # HEBREW LIGATURE YIDDISH DOUBLE YOD 0xD7 0x05F3 # HEBREW PUNCTUATION GERESH 0xD8 0x05F4 # HEBREW PUNCTUATION GERSHAYIM 0xE0 0x05D0 # HEBREW LETTER ALEF 0xE1 0x05D1 # HEBREW LETTER BET 0xE2 0x05D2 # HEBREW LETTER GIMEL 0xE3 0x05D3 # HEBREW LETTER DALET 0xE4 0x05D4 # HEBREW LETTER HE 0xE5 0x05D5 # HEBREW LETTER VAV 0xE6 0x05D6 # HEBREW LETTER ZAYIN 0xE7 0x05D7 # HEBREW LETTER HET 0xE8 0x05D8 # HEBREW LETTER TET 0xE9 0x05D9 # HEBREW LETTER YOD 0xEA 0x05DA # HEBREW LETTER FINAL KAF 0xEB 0x05DB # HEBREW LETTER KAF 0xEC 0x05DC # HEBREW LETTER LAMED 0xED 0x05DD # HEBREW LETTER FINAL MEM 0xEE 0x05DE # HEBREW LETTER MEM 0xEF 0x05DF # HEBREW LETTER FINAL NUN 0xF0 0x05E0 # HEBREW LETTER NUN 0xF1 0x05E1 # HEBREW LETTER SAMEKH 0xF2 0x05E2 # HEBREW LETTER AYIN 0xF3 0x05E3 # HEBREW LETTER FINAL PE 0xF4 0x05E4 # HEBREW LETTER PE 0xF5 0x05E5 # HEBREW LETTER FINAL TSADI 0xF6 0x05E6 # HEBREW LETTER TSADI 0xF7 0x05E7 # HEBREW LETTER QOF 0xF8 0x05E8 # HEBREW LETTER RESH 0xF9 0x05E9 # HEBREW LETTER SHIN 0xFA 0x05EA # HEBREW LETTER TAV 0xFD 0x200E # LEFT-TO-RIGHT MARK 0xFE 0x200F # RIGHT-TO-LEFT MARK ./mytool/uni/koi8-c.txt0000644000175000017500000001271307532460064015020 0ustar henrichhenrich# # This file was originally generated by program from rfc1489 # # Additional characters for Old Russian (KOI8-C) according to # http://www.geocities.com/CapeCanaveral/Lab/5735/1/koi8-extended.html # by Miikka-Markus Alhonen 2002-02-26 # 0x80 0x2500 # FORMS LIGHT HORIZONTAL 0x81 0x2502 # FORMS LIGHT VERTICAL 0x82 0x250c # FORMS LIGHT DOWN AND RIGHT 0x83 0x2510 # FORMS LIGHT DOWN AND LEFT 0x84 0x2514 # FORMS LIGHT UP AND RIGHT 0x85 0x2518 # FORMS LIGHT UP AND LEFT 0x86 0x251c # FORMS LIGHT VERTICAL AND RIGHT 0x87 0x2524 # FORMS LIGHT VERTICAL AND LEFT 0x88 0x252c # FORMS LIGHT DOWN AND HORIZONTAL 0x89 0x2534 # FORMS LIGHT UP AND HORIZONTAL 0x8a 0x253c # FORMS LIGHT VERTICAL AND HORIZONTAL 0x8b 0x2580 # UPPER HALF BLOCK 0x8c 0x2584 # LOWER HALF BLOCK 0x8d 0x2588 # FULL BLOCK 0x8e 0x258c # LEFT HALF BLOCK 0x8f 0x2590 # RIGHT HALF BLOCK 0x90 0x2591 # LIGHT SHADE 0x91 0x2592 # MEDIUM SHADE 0x92 0x2593 # DARK SHADE 0x93 0x2320 # TOP HALF INTEGRAL 0x94 0x25a0 # BLACK SMALL SQUARE 0x95 0x2219 # BULLET OPERATOR 0x96 0x221a # SQUARE ROOT 0x97 0x2248 # ALMOST EQUAL TO 0x98 0x2264 # LESS THAN OR EQUAL TO 0x99 0x2265 # GREATER THAN OR EQUAL TO 0x9a 0x00a0 # NON-BREAKING SPACE 0x9b 0x2321 # BOTTOM HALF INTEGRAL 0x9c 0x00b0 # DEGREE SIGN 0x9d 0x00b2 # SUPERSCRIPT DIGIT TWO 0x9e 0x00b7 # MIDDLE DOT 0x9f 0x00f7 # DIVISION SIGN 0xa0 0x2550 # FORMS DOUBLE HORIZONTAL 0xa1 0x0475 # CYRILLIC SMALL LETTER IZHITSA 0xa2 0x0463 # CYRILLIC SMALL LETTER YAT 0xa3 0x0451 # CYRILLIC SMALL LETTER IO 0xa4 0x2553 # FORMS DOWN DOUBLE AND RIGHT SINGLE 0xa5 0x2554 # FORMS DOUBLE DOWN AND RIGHT 0xa6 0x0456 # CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I 0xa7 0x2556 # FORMS DOWN DOUBLE AND LEFT SINGLE 0xa8 0x2557 # FORMS DOUBLE DOWN AND LEFT 0xa9 0x2558 # FORMS UP SINGLE AND RIGHT DOUBLE 0xaa 0x2559 # FORMS UP DOUBLE AND RIGHT SINGLE 0xab 0x255a # FORMS DOUBLE UP AND RIGHT 0xac 0x0473 # CYRILLIC SMALL LETTER FITA 0xad 0x255c # FORMS UP DOUBLE AND LEFT SINGLE 0xae 0x255d # FORMS DOUBLE UP AND LEFT 0xaf 0x255e # FORMS VERTICAL SINGLE AND RIGHT DOUBLE 0xb0 0x255f # FORMS VERTICAL DOUBLE AND RIGHT SINGLE 0xb1 0x0474 # CYRILLIC CAPITAL LETTER IZHITSA 0xb2 0x0462 # CYRILLIC CAPITAL LETTER YAT 0xb3 0x0401 # CYRILLIC CAPITAL LETTER IO 0xb4 0x2562 # FORMS VERTICAL DOUBLE AND LEFT SINGLE 0xb5 0x2563 # FORMS DOUBLE VERTICAL AND LEFT 0xb6 0x0406 # CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I 0xb7 0x2565 # FORMS DOWN DOUBLE AND HORIZONTAL SINGLE 0xb8 0x2566 # FORMS DOUBLE DOWN AND HORIZONTAL 0xb9 0x2567 # FORMS UP SINGLE AND HORIZONTAL DOUBLE 0xba 0x2568 # FORMS UP DOUBLE AND HORIZONTAL SINGLE 0xbb 0x2569 # FORMS DOUBLE UP AND HORIZONTAL 0xbc 0x0472 # CYRILLIC CAPITAL LETTER FITA 0xbd 0x256b # FORMS VERTICAL DOUBLE AND HORIZONTAL SINGLE 0xbe 0x256c # FORMS DOUBLE VERTICAL AND HORIZONTAL 0xbf 0x00a9 # COPYRIGHT SIGN 0xc0 0x044e # CYRILLIC SMALL LETTER IU 0xc1 0x0430 # CYRILLIC SMALL LETTER A 0xc2 0x0431 # CYRILLIC SMALL LETTER BE 0xc3 0x0446 # CYRILLIC SMALL LETTER TSE 0xc4 0x0434 # CYRILLIC SMALL LETTER DE 0xc5 0x0435 # CYRILLIC SMALL LETTER IE 0xc6 0x0444 # CYRILLIC SMALL LETTER EF 0xc7 0x0433 # CYRILLIC SMALL LETTER GE 0xc8 0x0445 # CYRILLIC SMALL LETTER KHA 0xc9 0x0438 # CYRILLIC SMALL LETTER II 0xca 0x0439 # CYRILLIC SMALL LETTER SHORT II 0xcb 0x043a # CYRILLIC SMALL LETTER KA 0xcc 0x043b # CYRILLIC SMALL LETTER EL 0xcd 0x043c # CYRILLIC SMALL LETTER EM 0xce 0x043d # CYRILLIC SMALL LETTER EN 0xcf 0x043e # CYRILLIC SMALL LETTER O 0xd0 0x043f # CYRILLIC SMALL LETTER PE 0xd1 0x044f # CYRILLIC SMALL LETTER IA 0xd2 0x0440 # CYRILLIC SMALL LETTER ER 0xd3 0x0441 # CYRILLIC SMALL LETTER ES 0xd4 0x0442 # CYRILLIC SMALL LETTER TE 0xd5 0x0443 # CYRILLIC SMALL LETTER U 0xd6 0x0436 # CYRILLIC SMALL LETTER ZHE 0xd7 0x0432 # CYRILLIC SMALL LETTER VE 0xd8 0x044c # CYRILLIC SMALL LETTER SOFT SIGN 0xd9 0x044b # CYRILLIC SMALL LETTER YERI 0xda 0x0437 # CYRILLIC SMALL LETTER ZE 0xdb 0x0448 # CYRILLIC SMALL LETTER SHA 0xdc 0x044d # CYRILLIC SMALL LETTER REVERSED E 0xdd 0x0449 # CYRILLIC SMALL LETTER SHCHA 0xde 0x0447 # CYRILLIC SMALL LETTER CHE 0xdf 0x044a # CYRILLIC SMALL LETTER HARD SIGN 0xe0 0x042e # CYRILLIC CAPITAL LETTER IU 0xe1 0x0410 # CYRILLIC CAPITAL LETTER A 0xe2 0x0411 # CYRILLIC CAPITAL LETTER BE 0xe3 0x0426 # CYRILLIC CAPITAL LETTER TSE 0xe4 0x0414 # CYRILLIC CAPITAL LETTER DE 0xe5 0x0415 # CYRILLIC CAPITAL LETTER IE 0xe6 0x0424 # CYRILLIC CAPITAL LETTER EF 0xe7 0x0413 # CYRILLIC CAPITAL LETTER GE 0xe8 0x0425 # CYRILLIC CAPITAL LETTER KHA 0xe9 0x0418 # CYRILLIC CAPITAL LETTER II 0xea 0x0419 # CYRILLIC CAPITAL LETTER SHORT II 0xeb 0x041a # CYRILLIC CAPITAL LETTER KA 0xec 0x041b # CYRILLIC CAPITAL LETTER EL 0xed 0x041c # CYRILLIC CAPITAL LETTER EM 0xee 0x041d # CYRILLIC CAPITAL LETTER EN 0xef 0x041e # CYRILLIC CAPITAL LETTER O 0xf0 0x041f # CYRILLIC CAPITAL LETTER PE 0xf1 0x042f # CYRILLIC CAPITAL LETTER IA 0xf2 0x0420 # CYRILLIC CAPITAL LETTER ER 0xf3 0x0421 # CYRILLIC CAPITAL LETTER ES 0xf4 0x0422 # CYRILLIC CAPITAL LETTER TE 0xf5 0x0423 # CYRILLIC CAPITAL LETTER U 0xf6 0x0416 # CYRILLIC CAPITAL LETTER ZHE 0xf7 0x0412 # CYRILLIC CAPITAL LETTER VE 0xf8 0x042c # CYRILLIC CAPITAL LETTER SOFT SIGN 0xf9 0x042b # CYRILLIC CAPITAL LETTER YERI 0xfa 0x0417 # CYRILLIC CAPITAL LETTER ZE 0xfb 0x0428 # CYRILLIC CAPITAL LETTER SHA 0xfc 0x042d # CYRILLIC CAPITAL LETTER REVERSED E 0xfd 0x0429 # CYRILLIC CAPITAL LETTER SHCHA 0xfe 0x0427 # CYRILLIC CAPITAL LETTER CHE 0xff 0x042a # CYRILLIC CAPITAL LETTER HARD SIGN ./mytool/uni/jis-0212.my0000644000175000017500000027405607532460064014715 0ustar henrichhenrichYUDIT-UMAP 1.0jis-0212Ncreated by mytool 2000-05-15"m!~~!"!    RSTUVWXYZ[\^_&2A?JRf'138B@IKSg  " $0*.(469=;CGEPLTXVZ\`^dblpjrnhtxvy}{   !%+/)57:><DHFQMUYW[]a_ecmqksoiuwz~|NNNN NNN#N$N(N+N.N/N0N5N@NANDNGNQNZN\NcNhNiNtNuNyNNNNNNNNNNNNNNNNNNNNNNOOOOO O OOOOOO.O1O`O3O5O7O9O;O>O@OBOHOIOKOLOROTOVOXO_OcOjOlOnOqOwOxOyOzO}O~OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPP P PPPPPPPPPP"P'P.P0P2P3P5P@PAPBPEPFPJPLPNPQPRPSPWPYP_P`PbPcPfPgPjPmPpPqP;PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQ Q Q QPQQQQQQQQ#Q'Q(Q,Q-Q/Q1Q3Q4Q5Q8Q9QBQJQOQSQUQWQXQ_QdQfQ~QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRR"R(R1R2R5RSBSLSKSYS[SaScSeSlSmSrSyS~SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTT!T'T(T*T/T1T4T5TCTDTGTMTOT^TbTdTfTgTiTkTmTnTtTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUU U U UUU*U+U2U5U6U;UW?WEWFWLWMWRWbWeWgWhWkWmWnWoWpWqWsWtWuWwWyWzW{W|W~WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXX WX X XXXX X&X'X-X2X9X?XIXLXMXOXPXUX_XaXdXgXhXxX|XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXYYY Y YYYAYY!Y#Y$Y(Y/Y0Y3Y5Y6Y?YCYFYRYSYYY[Y]Y^Y_YaYcYkYmYoYrYuYvYyY{Y|YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYZZZ Z ZZZZZ#Z$Z'Z(Z*Z-Z0ZDZEZGZHZLZPZUZ^ZcZeZgZmZwZzZ{Z~ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[[[[[4[[[[![%[-[8[A[K[L[R[V[^[h[n[o[|[}[~[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[\ \\\\#\&\)\+\,\.\0\2\5\6\Y\Z\\\b\c\g\h\i\m\p\t\u\z\{\|\}\\\\\\\\\\\\\\\\\\\\\\\\\]]] ]]+]#]$]&]']1]4]9]=]?]B]C]F]H]U]Q]Y]J]_]`]a]b]d]j]m]p]y]z]~]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]^^^ ^^^^^^ ^.^(^2^5^>^K^P^I^Q^V^X^[^\^^^h^j^k^l^m^n^p^^^^^^^^^^^^^^^^^^^^^^^^^^_________!_"_#_$_(_+_,_._0_4_6_;_=_?_@_D_E_G_M_P_T_X_[_`_c_d_g_o_r_t_u_x_z_}_~________________________________________`` ` ```````$`-`3`5`@`G`H`I`L`Q`T`V`W`]`a`g`q`~``````````````````````````````````````````aaa a aaaaaaaaaaa"a*a+a0a1a5a6a7a9aAaEaFaIa^a`alaraxa{a|aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbb b"b#b'b)b+b9b=bBbCbDbFbLbPbQbRbTbVbZb\bdbmbobsbzb}bbbbbbbbbbbbbbbbbbbbbbccc c c ccccc)c*c-c5c6c9cgEgGgHgLgTgUg]gfglgngtgvg{gggggggggggggggggggggggggggggggggghRhhhhh(h'h,h-h/h0h1h3h;h?hDhEhJhLhUhWhXh[hkhnhohphqhrhuhyhzh{h|hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhii i iiiiii1i3i5i8i;iBiEiIiNiWi[icidieifihiiilipiqirizi{iiiiiiiiiiiiiiiiiiiiiiiiiiiiiijjjjjjjjj j$j(j0j2j4j7j;j>j?jEjFjIjJjNjPjQjRjUjVj[jdjgjjjqjsj~jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkkkkk kkkkkkk$k(k+k,k/k5k6k;k?kFkJkMkRkVkXk]k`kgkkknkpkuk}k~kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkllll l llllll&l'l(l,l.l3l5l6l:l;l?lJlKlMlOlRlTlYl[l\lklmloltlvlxlyl{llllllllllllllllllllllllllllllllmmm mmmmmm&m'm(lgm.m/m1m9mu?u@uCuGuHuNuPuRuWu^u_uauouquyuzu{u|u}u~uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuvvvvvvv v vvvvvvvvvvv#v%v&v)v-v2v3v5v8v9v:vwBwEwFwJwMwNwOwRwVwWw\w^w_w`wbwdwgwjwlwpwrwswtwzw}wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwxxx x xxxx!x"x#x-x.x0x5x7xCxDxGxHxLxNxRx\x^x`xaxcxdxhxjxnxzx~xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyxxxxxyy yyyyyy y%y'y)y-y1y4y5y;y=y?yDyEyFyJyKyOyQyTyXy[y\ygyiykyryyy{y|y~yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyzzzz z z zzzzz!z'z+z-z/z0z4z5z8z9z:zDzEzGzHzLzUzVzYz\z]z_z`zezgzjzmzuzxz~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz{{{{#{'{){*{+{-{.{/{0{1{4{={?{@{A{G{N{U{`{d{f{i{j{m{o{r{s{w{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||| | | ||||| |%|&|(|,|1|3|4|6|9|:|F|J|U|Q|R|S|Y|Z|[|\|]|^|a|c|g|i|m|n|p|r|y|||}|||||||||||||||||||||||||||||||}}}} }}}}}}}}#}&}*}-}1}<}=}>}@}A}G}H}M}Q}S}W}Y}Z}\}]}e}g}j}p}x}z}{}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}}}}}}}}}}~~~~~~~~ ~'~(~,~-~/~3~6~?~D~E~G~N~P~R~X~_~a~b~e~k~n~o~s~x~~~~~~~~~~~~~<;=>?CDGORS[\]acdefmq}~  $&,.04579:<>@D`dfmquȀ̀πҀԀՀ׀؀  $',05:@CEMX]adeoqr{ȇɇʇ·Շևهڇ܇߇ (-.025:@BEFIORWZ[\abcknpsuz{|}ԉՉ։׉؉ "$&+,/57=>@CEGIMNSVWX\]aeguvwyz{~ÊƊȊɊʊъӊԊՊ׊݊ߊ  -07EGIKOQSTWX[]Ycdfhimsuv{~ŌƌɌˌό֌Ռٌ݌ eilnōƍǍȍʍ΍эԍՍ׍ٍ  !"#&'136789=@AKMNOT[\]^abilmopqyz{ÎĎǎώюԎ܎ !#%'(,-.4567:@ACGOQRSTUX]^eƏʏˏ͏ЏҏӏՏ ()/*,-347?CDL[]bfglpty̐ÐĐŐǐȐՐאِؐܐݐߐҐ  %"#')./14679:<=CGHOSWYZ[adgmtyz{‘Ñőӑԑבّڑޑ #$%&(./035689:<>@BCFGJMNOQXY\]`aeghinopuvwxy{|}’ÒŒƒǒȒ˒̒͒ΒВӒՒגْؒܒݒߒ !$%')*3467GHIPQRUWXZ^degijmopqstvz}ēœƓǓɓʓ˓͓̓ӓٓܓޓߓ ./1234;?=CEHJLUY\_achkmnoqrxy~ƕȕɕ˕Еѕҕӕٕڕݕޕߕ"$%&,13789:<=ARTVWXant{|~ʖ]ؖږݖޖߖ !"#(13ACJNOUWXZ[cgjnsvwx{}ėŗǗɗʗ̗͗ΗЗїԗחؗٗݗޗۗ   #&+./0235%>DGJQRSVWYZbcefjl˜ŘȘ̘"&'+123459:;<@AFGHMNTXY[\^_`Ùəәԙٙڙܙޙ  "#$'-.3568GADJKLNQTV]ÚƚȚΚКҚ՚֚ךۚܚ  &+-34579:=HKLUVW[^acefhjklmnsuwxyǛțΛЛכ؛ݛߛ "#&'()*1567=ACDEIJNOPSTVX[]^_cij\khnpruw{ /0234:+>)$)D*G+G*E+E*F+F*D)E)&)F*H+H*I+I)G*J+J*L+L*K+K)))I)()H*M+M*O+O*N+N)J)+)K*W+W*V+V)-)M*Y+Y*[+[*Z+Z*\+\*]+]*_+_*^+^*a+a*`+`)/)O*l+l*i+i*f+f*k+k*h+h*j+j*q+q*t+t*s*u+u*w+w*v+v*&+&*C+C*U+U*g+g*p+p*m+m*o+o*n+n+9"0"/"2"6"5"3"8"9&a&b&c&d&g&i&l&v&e&j&q&r&s&t&{&x&u&z&w&y&|'B'C'D'E'F'G'H'I'J'K'L'M'N'r's't'u'v'w'x'y'z'{'|'}'~"q"o0!0"0#0$0%0&0'0(0)0*0+0,0-0.0/000102030405060708090:0;0<0=0>0?0@0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0_0q0r0s0t0u0v0w0x0y0z0{0|0}0~1!1"1#1$1%1&1'1(1)1*1+1,1-1.1/101112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1v1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1w1x1y1z1{1|1}1~2!2"2#2$2%2&2'2(2)2*2+2,2-2.2/202122232425262728292:2;2<2=2>2?2@2A2B2C2D2E2Q2F2G2H2I2J2K2L2M2N2O2P2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2|2}2~3!3"3#3$3%3&3'3(3)3*3+3,3-3.3/303132333435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3{3|3}3~4!4"4#4$4%4&4'4(4)4*4+4,4-4.4/404142434445464847494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|4}4~5!5"5#5$5%5&5'5(5)5*5+5,5-5.5/505152535455565758595:5;5<5=5>5?5@5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z5[5\5]5^5_5`5a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5{5|5}5~6!6"6#6$6%6&6'6(6)6*6+6,6-6.6/606162636465666768696:6;6<6=6>6?6@6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6[6\6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6p6q6n6o6r6s6t6u6v6w6x6y6z6{6}6~6|7!7"7#7$7%7&7'7(7)7*7+7,7-7.7/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7`7X7Y7Z7[7\7]7^7_7a7b7c7d7e7f7g7h7i7j7k7l7m7~7n7o7p7q7r7s7t7u7v7w7x7y7z7{7|7}8!8"8#8$8%8&8'8(8)8*8+8,8-8.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8P8Q8O8R8S8T8U8V8W8X8Y8Z8[8\8]8^8_8`8a8b8c8d8e8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}8~9!9"9#9$9%9&9'9(9)9*9+9,9-9.9/909192939495969798999:9;9<9=9>9?9@9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z9[9\9]9^9_9`9a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9{9|9}9~:!:":#:$:%:&:':(:):*:+:,:-:.:/:0:1:3:4:5:6:7:8:2:9:::;:<:=:>:?:@:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:[:\:]:^:_:`:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~;!;";#;$;%;&;';(;);*;+;,;-;.;/;0;1;2;3;4;5;6;7;8;9;:;;;=;<;>;?;@;A;B;C;D;E;G;H;I;J;F;K;L;M;N;O;P;Q;R;S;W;U;T;V;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;rft;s;t;u;v;w;x;z;y;{;|;};~=?=@=A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=[=\=]=^=_=`=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z={=|=}=~>!>">#>$>%>&>'>(>)>*>+>,>->.>/>0>1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>~>|>}?!?"?#?$?%?&?'?(?)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;?<?=?>???@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?[?\?]?^?_?`?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?z?{?|?}?~@!@"@#@$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@@@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@{@|@}@~A!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A6A7A8A9A:A;A<A=A>A?A@AAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA[A\A]A^A_A`AaAbAcAdAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxAyAzA{A|A}A~B!B"B#B$B%B&B'B(B)B*B+B,B-B.B0B/B1B2B3B4B5B7B6B8B9B:B;B<B=B>B@BABBBDBEBGBHBIBJBLBCBFBKBMBNBOBPBQBRBSBTBUBVBWBXBYBZB[B\B]B^B_B`BaBbBcBdBeBfBgBhBiBjBkBlBmB?BnBoBpBqBrBsBtBuBvBwBxByBzB{B|B}B~C!C"C#C$C%C&C'C(C)C*C+C,C-C.C/C0C1C2C3C4C5C6C7C9C:C;C<C=C>C?C@CACBCCCDCECFCGCHC8CJCKCLCMCOCNCPCQCRCSCTCUCVCWCXCYCZC[CIC\C]C^C_C`CaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzC{C|C}C~D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD[D\D]D^D_D`DaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzD{D|D}D~E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E0E1E2E3E4E5E6E7E8E9E:E;E<E=E>E?E@EAEBECEDEEEFEGEHEIEJEKEMELENEOEPEQERESETEUEVEWEXEYEZE[E\E]E^E_E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;FF?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`G6FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;HH?H@HAHBHCHDHEHFHGHHHIHJHKHLHSHMHNHOHPHQHRHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~I!I"I#I$I%I&I'I(I)I*I+I,I-I.I/I0I1I2I3I4I5I6I7I8I9I:I;I<IAI=I>I?I@IBICIDIEIFIGIHIIIJIKILIMINIOIPIQIRISITIUIVIWIXIYIZI[I\I]I^I_I`IaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI{I|I}I~J!J"J#J$J%J&J'J(J)J*J+J,J-J.J/J0J1J2J3J4J5J6J7J8J9J:J;J<J=J>J?J@JAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ[J\J]J^J_J`JaJbJcJdJeJfJgJhJiJjJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJ{J|J}J~K!K"K#K$K%K&K'K(K)K*K+K,K-K.K/K0K1K2K3K4K5K6K7K8K9K:K;K<K=K>K?K@KAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK[K\K]K^K_K`KaKbKcKdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzK{K|K}K~L!L"L#L$L%L&L'L(L)L*L+L,L-L.L/L0L1L2L3L4L5L6L7L8L9L:L;L<L=L>L?L@LALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL[L\L]L^L_L`LaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzL{L|L}L~M!M"M#M$M%M&M'M(M)M*M+M,M-M.M/M0M1M2M3M4M5M6M7M8M9M:M;M<M=M>M?M@MAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM[M\M]M^M_M`MaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzM{M|M}M~N!N"N$N%N&N'N(N)N#N*N+N,N-N.N/N0N1N2N3N4N5N6N7N8N9N:N;N<N=N>N?N@NANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN[N\N]N^N_N`NaNbNcNdNeNfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNwNxNyNzN{N|N}N~O!O"O#O$O%O&O'O(O)O*O+O,O-O.O/O0O1O2O3O4O5O6O7O8O9O:O;O<O=O>O?O@OAOBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYOZO[O\O]O^O_O`OaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOtOuOvOsOwOxOyOzO{O|O}O~P!P"P#P$P%P&P'P(P)P*P+P,P.P/P0P1P-P2P3P4P5P7P8P9P:P;P6P<P=P>P?P@PAPBPCPDPEPFPGPHPIPJPKPLPMPNPOPPPQPRPSPTPUPVPWPXPYPZP[P\P]P^P_P`PaPbPcPdPePfPgPhPiPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyPzP{P|P}P~Q!Q"Q#Q$Q%Q&Q'Q(Q)Q*Q+Q,Q-Q.Q/Q0Q1Q2Q3Q4Q5Q6Q7Q8Q9Q:Q;QQ?Q@QAQBQCQDQEQFQGQHQIQJQKQLQMQNQOQPQQQRQSQTQUQVQWQXQYQZQ[Q\Q]Q^Q_Q`QaQbQcQdQeQfQgQhQiQjQkQlQmQnQoQpQqQrQsQtQuQvQwQxQyQzQ{Q|Q}Q~R!R"R#R$R%R&R'R(R)R*R+R,R-R.R/R0R1R2R3R4R5R6R7R8R9R:R;R<R=R>R?R@RARBRCRDRERFRGRHRIRJRKRLRMRNRORPRQRRRSRTRURVRWRXRYRZR[R\R]R^R_R`RaRbRcRdReRfRgRhRiRjRkRlRmRnRoRpRqRrRsRtRvRwRxRuRyRzR{R|R}R~S!S"S#S$S%S&S'S(S)S*S+S,S-S.S/S0S1S2S3S4S5S6S7S8S9S:S;SS?S@SASBSCSDSESFSGSHSISJSKSLSMSNSOSPSQSRSSSTSUSVSWSXSYSZS[S\S]S^S_S`SaSbScSdSeSfSgShSiSjSkSlSmSnSoSpSqSrSsStSuSvSwSxSySzS{S|S}S~T!T"T#T$T%T&T'T(T)T*T+T,T-T.T/T0T1T2T4T5T6T7T8T9T:T;T<T=T>T3T?T@TATBTCTDTETFTGTHTITJTKTLTMTNTOTPTQTRTSTTTUTVTWTXTYTZT[T\T]T^T_T`TaTbTcTdTeTfTgThTiTjTlTkTmTnToTpTqTrTsTtTuTvTwTxTyTzT{T|T}T~U!U"U#U$U%U&U'U(U)U*U+U,U-U.U/U0U1U2U3U4U5U6U7U8U9U:U;U<U=U>U?U@UAUBUCUDUEUFUGUHUIUJUKULUMUNUOUPUQURUSUTUUUVUWUXUYUZU[U\U]U^U_U`UaUbUcUdUeUfUgUhUiUjUkUlUmUnUoUpUqUrUsUtUuUvUwUxUyUzU{U|U}U~V!V"V#V$V%V&V'V(V)V*V+V,V-V.V/V0V1V2V3V4V5V6V7V8V9V:V;V<V=V>V?V@VAVBVCVDVEVGVHVIVJVKVFVLVMVNVOVPVQVRVSVTVVVWVXVUVYVZV[V\V]V^V_V`VaVbVcVdVeVfVgVhViVjVkVlVmVnVoVpVqVrVsVtVuVvVwVxVyVzV{V|V}V~W!W"W#W$W%W&W'W(W)W*W+W,W-W.W/W0W1W2W3W4W5W6W7W8W9W:W;W<W=W>W?W@WAWBWCWDWEWFWGWHWIWJWKWLWMWNWOWPWQWRWSWTWUWVWWWXWYWZW[W\W]W^W_W`WaWbWdWeWfWgWhWiWjWkWlWmWnWoWpWqWrWsWtWuWvWwWxWyX>WcWzW{W|W}W~X!X"X#X$X%X&X'X(X)X*X+X,X-X.X/X0X1X2X3XLX4X5X6X7X8X9X:X;X<X=X?X@XAXBXCXDXEXFXGXHXIXJXKXMXNXOXPXQXRXSXTXUXVXWXXXYXZX[X\X]X^X_X`XaXbXcXdXeXfXgXhXiXjXkXlXmXnXoXpXqXrXsXtXuXvXwXxXyXzX{X|X}X~Y!Y"Y#Y$Y%Y&Y'Y(Y*Y+Y,Y-Y.Y/Y0Y1Y2Y3Y4Y5Y6Y7Y8Y9Y:Y;Y<Y)Y=Y>Y?Y@YAYBYCYDYEYFYGYHYIYJYKYLYMYNYOYPYQYRYSYTYUYVYWYXYYYZY[Y\Y]Y^Y_Y`YaYbYcYdYeYfYtYgYhYiYjYkYlYmYnYoYpYqYrYsYuYvYwYxYyYzY{Y|Y}Y~Z!Z"Z#Z$Z%Z&Z'Z(Z)Z*Z+Z,Z-Z.Z/Z0Z1Z2Z3Z4Z5Z68fZ7Z8Z9Z:Z;ZZ?Z@ZAZBZCZDZEZFZGZHZIZJZKZmZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZ[Z\Z]Z^Z_Z`ZaZbZcZdZeZfZgZhZiZjZkZlZnZoZpZqZrZsZtZuZvZwZxZyZzZ{Z|Z}Z~[!["[#[$[%[&['[([)[*[+[,[-[.[/[0[1[2[3[4[5[6[7[8[9[:[;[<[=[>[?[@[A[B[C[D[E[F[G[H[I[J[K[L[M[N[O[P[Q[R[S[T[U[V[W[X[Y[Z[[[\[][^[_[`[a[b[c[d[e[f[g[h[i[j[k[l[m[n[p[q[r[s[o[t[u[v[w[x[y[z[{[|[}[~\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\0\1\2\3\4\5\6\7\8\9\:\;\<\=\>\?\@\A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z\[\\\]\^\_\`\a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z\{\|\}\~]!]"]#]$]%]&]'](])]*]+],]-].]/]0]1]2]3]4]5]6]7]8]9]:];]<]=]>]?]@]A]B]C]D]E]F]G]H]I]J]K]L]M]N]O]P]Q]R]S]T]U]V]W]X]Y]Z][]\]]]^]_]`]a]b]c]d]e]f]g]h]i]j]k]l]m]n]o]p]q]r]s]t]u]v]w]x]y]z]{]|]}]~^!^"^#^$^%^&^'^(^)^*^+^,^-^.^/^0^1^2^3^4^5^6^7^8^9^?^:^;^<^=^>^@^A^B^C^D^E^F^G^H^I^N^J^K^L^M^O^P^Q^R^S^T^U^V^W^X^Y^Z^[^\^]^^^_^`^a^b^c^d^e^f^g^h^i^j^k^l^m^n^o^r^p^q^s^t^u^v^w^x^y^z^{^|^}^~_!_"_#_$_%_&_'_(_)_*_+_,_-_._/_0_2_1_3_4_5_6_7_8_9_:_;_<_=_>_?_@_A_B_C_D_E_F_G_H_I_J_K_L_M_N_O_P_Q_R_S_T_U_V_W_X_Y_Z_[_\_]_o_^___`_a_b_c_d_e_f_g_h_i_j_k_l_m_n_p_q_r_s_t_u_v_w_x_y_z_{_|_}_~`!`"`#`$`%`&`'`(`)`*`+`,`-`.`/`0`1`2`3`4`5`6`7`8`9`:`;`<`=`>`?`@`A`B`C`D`E`F`G`H`I`J`K`L`M`N`O`P`Q`R`S`T`U`V`W`X`Y`Z`[`\`]`d`^`_```a`b`c`e`f`g`h`i`j`k`l`m`n`o`p`q`r`s`t`u`v`w`x`y`z`{`|`}`~a!a"a#a$a%a&a'a(a)a*a+a,a-a.a/a0a1a2a3a4a5a6a7a8a9a:a;a<a=a>a?a@aAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaPaQaRaTaUaVaSaWaXaYaZa[a\a]a^a_a`aaabacadaeafagahaiajakalamanaoapaqarasatauavawaxayaza{a}a~b!b"b#b$a|b-b%b&b'b(b)b*b+b,b/b0b1b2b.b3b4b5b6b7b8b9b:b;b<b=b>b?b@bAbBbCbEbFbDbGbHbIbJbKbLbMbNbObPbQbRbSbTbUbVbWbXbYbZb[b\b]b^b_b`babbbcbdbebfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzb{b|b}b~c!c"c#c$c%c&c'c(c)c*c+c,c-c.c/c0c1c2c3c4c5c6c7c8c9c:c;cc?c@cAcBcCcDcEcFcGcHcIcJcKcLcMcNcOcPcQcRcScTcUcVcWcXcYcZc[c\c]c^c_c`cacbcccdcecfcgchcicjckclcmcncocpcqcrcsctcucvcwcxcyczc{c|c}c~d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;dd?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~e!e"e#e$e%e&e'e(e)e*e+e,e-e.e/e0e1e2e3e4e5e;e6e7e8e9e:e<e=e>e?e@eAeBeCeDeEeFeGeHeIeJeKeLeMeOePeNeQeReSeTeUeVeWeXeYeZe[e\e]e^e_e`eaebecedeeefehegeiejekelemeneoepeqereseteuevewexeyeze|e{e}e~f!f"f#f$f%f&f'f(f)f*f+f,f-f.f/f0f1f2f3f4f5f6f7f8f9f:f;ff?f@fAfBfCfDfEfFfGfHfIfJfKfLfMfNfOfPfQfRfSfTfUfVfWfXfYfZf[f\f]f^f_f`fafbfcfdfefffgfhfifjfkflfmfnfofpfqfrfsfufvfwfxfyfzf{f|f}f~g!g"g#g$g%g&g'g(g)g*g+g,g-g.g/g0g1g2g3g4g5g6g7g8g9g:g;gg?g@gAgBgCgDgEgFgGgHgIgJgKgLgMgNgOgPgQgRgSgTgUgVgWgXgYgZg[g\g]g^g_g`gagbgcgdgegfgjggghgigkglgmgngogpgqgrgsgtgvgwgxgygugzg{g|g}h(g~h!h"h#h$h%h&h'h)h*h+h,h-h.h/h0h1h2h3h4h5h6h7h8h9h:h;h<h=h>h?h@hAhBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh[h\h]h^h_h`hahbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwhxhyhzh{h|h}h~i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;ii?i@iAiBiCiDiEiFiGiHiIiJiLiMiKiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~j!j"j#j$j%j&j'j(j)j*j+j,j-j.j/j0j1j2j3j4j5j6j7j8j9j:j;j<j=j>j?j@jAjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVjWjXjYjZj[j\j]j^j_j`jajbjcjdjejfjgjhjijjjkjljmjnjojpjqjrjsjtjujvjwjxjyjzj{j|j}j~k!k"k#k$k%k&k'k(k)k*k+k,k-k.k/k0k1k2k3k4k5k6k7k8k9k:k;k<k=k>k?k@kAkBkCkDkEkFkGkHkIkPkJkKkLkMkRkNkOkQkSkTkUkVkWkXkYkZk[k\k^k]k_k`kakbkckdkekfkgkhkikjkkkmknkoklkpkqkrksktkvkukwkxkykzk{k|k}k~l!l"l#l$l%l&l'l(l)l*l+l,l-l.l/l0l1l2l3l4l5l6l7l8l9l:l;ll?l@lAlBlClDlElFlGlHlIlJlKlLlNlOlMlPlQlRlSlTlUlVlWlXlYlZl[l\l]l^l_l`lalblcldlelflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzl{l|l}l~m!m"m#m$m%m&m'm(m)m*m+m,m-m.m/m0m1m2m3m4m5m6m7m8m9m:m;mm?m@mAmBmCmDmEmFmGmHmImJmKmLmMmNmOmPmQmRmSmTmUmVmWmXmYmZm[m\m]m^m_m`mambmc./mytool/uni/iso-8859-13.my0000644000175000017500000004162611333714316015163 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-13Ncreated by mytool 2010-02-08   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  V W. y"6*;`CELrAZj{}/ z#7+<aDFMsB[k|~   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/iso-8859-2.my0000644000175000017500000000411207532460064015072 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-2Ncreated by mytool 2002-03-30  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~A=Z`^dy}{B>[a_ez~|T9 CGPXnpbU: DHQYoqc  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/cp-1250.my0000644000175000017500000004262007532460064014523 0ustar henrichhenrichYUDIT-UMAP 1.0cp-1250Ncreated by mytool 2002-03-30!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~   & ! 0` 9Zd}y     "  !"a :[e~zA^{B_=>|T9 CGPXnpbU: DHQYoqc  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/cp-1251.my0000644000175000017500000003201007532460064014514 0ustar henrichhenrichYUDIT-UMAP 1.0cp-1251Ncreated by mytool 2002-03-30!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ S  & ! 0 9   R     "  !"Y :Z\[_^VQ!TXUW !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/wingreek.txt0000644000175000017500000002621507532460064015543 0ustar henrichhenrich#======================================================================= # FTP file name: WINGREEK.TXT # # Contents: Map for WinGreek polytonic character set # to Unicode 2.1 # # Contacts: Constantine Stathopoulos (cstath@irismedia.gr) # # Changes: # # # Format: # ------- # # Three tab-separated columns; # '#' begins a comment which continues to the end of the line. # Column #1 is the WinGreek code (in hex as 0xNN) # Column #2 is the corresponding Unicode (in hex as 0xNNNN) # Column #3 is a comment containing the Unicode name # ################## 0x20 0x0020 # SPACE #FIXME 0x21 # ARROW SW 0x22 0x03E0 # SMALL SAMPI 0x23 0x03DC # SMALL DIGAMMA 0x24 0x03DA # SMALL STIGMA #FIXME 0x25 # SMALL LETTER QOPPA 0x26 0x03DE # NUMERAL STIGMA 0x27 0x1FBF # PSILI (APOSTROPHE/KORONIS) 0x28 0x0028 # LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK #FIXME 0x2B # SEGNO 0x2C 0x002C # COMMA 0x2D 0x002D # HYPHEN-MINUS 0x2E 0x002E # FULL STOP 0x2F 0x1FFD # OXIA (GREEK NUMERAL SIGN/DEXIA KERAIA) 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE 0x3A 0x0387 # ANO TELEIA 0x3B 0x037E # EROTIMATIKO 0x3C 0x003C # LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN 0x3E 0x003E # GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK 0x40 0x00A8 # DIALYTIKA 0x41 0x0391 # GREEK CAPITAL LETTER ALPHA 0x42 0x0392 # GREEK CAPITAL LETTER BETA 0x43 0x03A7 # GREEK CAPITAL LETTER CHI 0x44 0x0394 # GREEK CAPITAL LETTER DELTA 0x45 0x0395 # GREEK CAPITAL LETTER EPSILON 0x46 0x03A6 # GREEK CAPITAL LETTER PHI 0x47 0x0393 # GREEK CAPITAL LETTER GAMMA 0x48 0x0397 # GREEK CAPITAL LETTER ETA 0x49 0x0399 # GREEK CAPITAL LETTER IOTA 0x4A 0x1FF3 # GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI 0x4B 0x039A # GREEK CAPITAL LETTER KAPPA 0x4C 0x039B # GREEK CAPITAL LETTER LAMBDA 0x4D 0x039C # GREEK CAPITAL LETTER MU 0x4E 0x039D # GREEK CAPITAL LETTER NU 0x4F 0x039F # GREEK CAPITAL LETTER OMIKRON 0x50 0x03A0 # GREEK CAPITAL LETTER PI 0x51 0x0398 # GREEK CAPITAL LETTER THETA 0x52 0x03A1 # GREEK CAPITAL LETTER RHO 0x53 0x03A3 # GREEK CAPITAL LETTER SIGMA 0x54 0x03A4 # GREEK CAPITAL LETTER TAU 0x55 0x03A5 # GREEK CAPITAL LETTER UPSILON 0x56 0x1FC3 # GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI 0x57 0x03A9 # GREEK CAPITAL LETTER OMEGA 0x58 0x039E # GREEK CAPITAL LETTER XI 0x59 0x03A8 # GREEK CAPITAL LETTER PSI 0x5A 0x0396 # GREEK CAPITAL LETTER ZETA 0x5B 0x005B # LEFT SQUARE BRACKET 0x5C 0x1FEF # VARIA 0x5D 0x005D # RIGHT SQUARE BRACKET 0x5E 0x1FC0 # PERISPOMENI 0x5F 0x005F # LOW LINE 0x60 0x1FFE # DASIA 0x61 0x03B1 # GREEK SMALL LETTER ALPHA 0x62 0x03B2 # GREEK SMALL LETTER BETA 0x63 0x03C7 # GREEK SMALL LETTER CHI 0x64 0x03B4 # GREEK SMALL LETTER DELTA 0x65 0x03B5 # GREEK SMALL LETTER EPSILON 0x66 0x03C6 # GREEK SMALL LETTER PHI 0x67 0x03B3 # GREEK SMALL LETTER GAMMA 0x68 0x03B7 # GREEK SMALL LETTER ETA 0x69 0x03B9 # GREEK SMALL LETTER IOTA 0x6A 0x03C2 # GREEK SMALL LETTER FINAL SIGMA 0x6B 0x03BA # GREEK SMALL LETTER KAPPA 0x6C 0x03BB # GREEK SMALL LETTER LAMBDA 0x6D 0x03BC # GREEK SMALL LETTER MU 0x6E 0x03BD # GREEK SMALL LETTER NU 0x6F 0x03BF # GREEK SMALL LETTER OMIKRON 0x70 0x03C0 # GREEK SMALL LETTER PI 0x71 0x03B8 # GREEK SMALL LETTER THETA 0x72 0x03C1 # GREEK SMALL LETTER RHO 0x73 0x03C3 # GREEK SMALL LETTER SIGMA 0x74 0x03C4 # GREEK SMALL LETTER TAU 0x75 0x03C5 # GREEK SMALL LETTER UPSILON 0x76 0x1FB3 # GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI 0x77 0x03C9 # GREEK SMALL LETTER OMEGA 0x78 0x03BE # GREEK SMALL LETTER XI 0x79 0x03C8 # GREEK SMALL LETTER PSI 0x7A 0x03B6 # GREEK SMALL LETTER ZETA 0x7B 0x007B # LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET 0x7E 0x007E # TILDE #FIXME 0x7F # 0x80 0x00C4 # LEFT QUOTATION MARKS 0x81 0x00B9 # RIGT QUOTATION MARKS 0x82 0x0021 # EXCLAMATION MARK 0x83 0x1F31 # GREEK SMALL LETTER IOTA WITH DASIA 0x84 0x1F30 # GREEK SMALL LETTER IOTA WITH PSILI 0x85 0x1F77 # GREEK SMALL LETTER IOTA WTH OXIA 0x86 0x1F35 # GREEK SMALL LETTER IOTA WITH DASIA AND OXIA 0x87 0x1F34 # GREEK SMALL LETTER IOTA WITH PSILI AND OXIA 0x88 0x1F76 # GREEK SMALL LETTER IOTA WITH VARIA 0x89 0x1F33 # GREEK SMALL LETTER IOTA WITH DASIA AND VARIA 0x8A 0x1F32 # GREEK SMALL LETTER IOTA WITH PSILI AND VARIA 0x8B 0x1FD6 # GREEK SMALL LETTER IOTA WITH PERISPOMENI 0x8C 0x1F37 # GREEK SMALL LETTER IOTA WITH PERISPOMENI AND DASIA 0x8D 0x1F36 # GREEK SMALL LETTER IOTA WITH PERISPOMENI AND PSILI 0x8E 0x03CA # GREEK SMALL LETTER IOTA WITH DIALYTIKA 0x8F 0x1FD3 # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA 0x90 0x1FD2 # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA 0x91 0x1FDF # PERISPOMENI AND DASIA 0x92 0x1FCF # PERISPOMENI AND PSILI 0x93 0x1FDE # DASIA AND OXIA 0x94 0x1FCE # PSILI AND OXIA 0x95 0x1FDD # DASIA AND VARIA 0x96 0x1FCD # PSILI AND VARIA 0x97 0x1FEE # DIALYTIKA AND OXIA 0x98 0x1F11 # GREEK SMALL LETTER EPSILON WITH DASIA 0x99 0x1F10 # GREEK SMALL LETTER EPSILON WITH PSILI 0x9A 0x1F73 # GREEK SMALL LETTER EPSILON WITH OXIA 0x9B 0x1F15 # GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA 0x9C 0x1F14 # GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA 0x9D 0x1F72 # GREEK SMALL LETTER EPSILON WITH VARIA 0x9E 0x1F13 # GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA 0x9F 0x1F12 # GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA #FIXME 0xA0 # 0xA1 0x1F01 # GREEK SMALL LETTER ALPHA WITH DASIA 0xA2 0x1F00 # GREEK SMALL LETTER ALPHA WITH PSILI 0xA3 0x1F71 # GREEK SMALL LETTER ALPHA WITH OXIA 0xA4 0x1F05 # GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA 0xA5 0x1F04 # GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA 0xA6 0x1F70 # GREEK SMALL LETTER ALPHA WITH VARIA 0xA7 0x1F03 # GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA 0xA8 0x1F02 # GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA 0xA9 0x1FB6 # GREEK SMALL LETTER ALPHA WITH PERISPOMENI 0xAA 0x1F07 # GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND DASIA 0xAB 0x1F06 # GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND PSILI 0xAC 0x1F81 # GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI 0xAD 0x1F80 # GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI 0xAE 0x1FB4 # GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI 0xAF 0x1F85 # GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI 0xB0 0x1F84 # GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI 0xB1 0x1FB2 # GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI 0xB2 0x1F83 # GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI 0xB3 0x1F82 # GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI 0xB4 0x1FB7 # GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI 0xB5 0x1F87 # GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI 0xB6 0x1F86 # GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI 0xB7 0x1FE5 # GREEK SMALL LETTER RHO WITH DASIA 0xB8 0x1FE4 # GREEK SMALL LETTER RHO WITH PSILI 0XB9 0x1F21 # GREEK SMALL LETTER ETA WITH DASIA 0xBA 0x1F20 # GREEK SMALL LETTER ETA WITH PSILI 0xBB 0x1F75 # GREEK SMALL LETTER ETA WITH OXIA 0xBC 0x1F25 # GREEK SMALL LETTER ETA WITH DASIA AND OXIA 0xBD 0x1F24 # GREEK SMALL LETTER ETA WITH PSILI AND OXIA 0xBE 0x1F74 # GREEK SMALL LETTER ETA WITH VARIA 0xBF 0x1F23 # GREEK SMALL LETTER ETA WITH DASIA AND VARIA 0xC0 0x1F22 # GREEK SMALL LETTER ETA WITH PSILI AND VARIA 0xC1 0x1FC6 # GREEK SMALL LETTER ETA WITH PERISPOMENI 0xC2 0x1F27 # GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI 0xC3 0x1F26 # GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI 0xC4 0x037A # YPOGEGRAMMENI 0xC5 0x1F91 # GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI 0xC6 0x1F90 # GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI 0xC7 0x1FC4 # GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI 0xC8 0x1F95 # GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI 0xC9 0x1F94 # GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI 0xCA 0x1FC2 # GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI 0xCB 0x1F93 # GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI 0xCC 0x1F92 # GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI 0xCD 0x1FC7 # GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI 0xCE 0x1F97 # GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI 0xCF 0x1F96 # GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI 0xD0 0x1F41 # GREEK SMALL LETTER OMIKRON WITH DASIA 0xD1 0x1F40 # GREEK SMALL LETTER OMIKRON WITH PSILI 0xD2 0x1F79 # GREEK SMALL LETTER OMIKRON WITH OXIA 0xD3 0x1F45 # GREEK SMALL LETTER OMIKRON WITH DASIA AND OXIA 0xD4 0x1F44 # GREEK SMALL LETTER OMIKRON WITH PSILI AND OXIA 0xD5 0x1F78 # GREEK SMALL LETTER OMIKRON WITH VARIA 0xD6 0x1F43 # GREEK SMALL LETTER OMIKRON WITH DASIA AND VARIA 0xD7 0x1F32 # GREEK SMALL LETTER OMIKRON WITH PSILI AND VARIA 0xD8 0x1F51 # GREEK SMALL LETTER UPSILON WITH DASIA 0xD9 0x1F50 # GREEK SMALL LETTER UPSILON WITH PSILI 0xDA 0x1F7B # GREEK SMALL LETTER UPSILON WITH OXIA 0xDB 0x1F55 # GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA 0xDC 0x1F54 # GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA 0xDD 0x1F7A # GREEK SMALL LETTER UPSILON WITH VARIA 0xDE 0x1F53 # GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA 0xDF 0x1F52 # GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA 0xE0 0x1FE6 # GREEK SMALL LETTER UPSILON WITH PERISPOMENI 0xE1 0x1F57 # GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI 0xE2 0x1F56 # GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI 0xE3 0x03CB # GREEK SMALL LETTER UPSILON WITH DIALYTIKA 0xE4 0x1FE3 # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA 0xE5 0x1FE2 # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA 0xE6 0x1F61 # GREEK SMALL LETTER OMEGA WITH DASIA 0xE7 0x1F60 # GREEK SMALL LETTER OMEGA WITH PSILI 0xE8 0x1F7D # GREEK SMALL LETTER OMEGA WITH OXIA 0xE9 0x1F65 # GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA 0xEA 0x1F64 # GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA 0xEB 0x1F7C # GREEK SMALL LETTER OMEGA WITH VARIA 0xEC 0x1F63 # GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA 0xED 0x1F62 # GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA 0xEE 0x1FF6 # GREEK SMALL LETTER OMEGA WITH PERISPOMENI 0xEF 0x1F67 # GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI 0xF0 0x1F66 # GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI 0xF1 0x1FA1 # GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI 0xF2 0x1FA0 # GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI 0xF3 0x1FF4 # GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI 0xF4 0x1FA5 # GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI 0xF5 0x1FA4 # GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI 0xF6 0x1FF2 # GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI 0xF7 0x1FA3 # GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI 0xF8 0x1FA2 # GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI 0xF9 0x1FF7 # GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI 0xFA 0x1FA7 # GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI 0xFB 0x1FA6 # GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI #FIXME 0xFC # GREEK SMALL LETTER EPSILON WITH PERISPOMENI #FIXME 0xFD # GREEK SMALL LETTER OMIKRON WITH PERISPOMENI 0xFE 0x1FED # GREEK DIALYTIKA WITH VARIA 0xFF 0x0375 # GREEK LOWER NUMERAL SIGN/ARISTERI KERAIA ./mytool/uni/indic.txt0000644000175000017500000004073110434052502015002 0ustar henrichhenrich# file; indic.txt # Yudit Unciode Editor Map File. # # Hand-Made Indic Character Properties. # Most of these are typed in by # Miikka-Markus Alhonen # # Changes: # 2006-06-21 Introduces new category: CONSONANT_DEAD # U+09CE BENGALI LETTER KHANDA TA as CONSONANT_DEAD # This is our only dead consonant at the moment. # 2003-08-26 Malayalam # 0x0F 0x0D32 -> 0x01 0x0D32 (rollback) # 0x0F 0x0D31 -> 0x01 0x0D31 # 2003-08-05 Split Consonants into two groups: # 0x01 CONSONANT_BELLOW_BASE # 0x0F CONSONANT_BASE # 0x10 CONSONANT_POST_BASE # instead of just # 0x01 CONSONANT # 2003-08-13 # 0x01 0x0D32 -> 0x0F 0x0D32 (it is not below base - conjunct) # 0x04 0x0B56 -> 0x06 0x0B56 # 0x06 0x0B57 # FIXME: # Thai, Lao and Tibetan is not updated, they are all # Also some exntries tagged by FIXME need to be fixed in this file. # set to 0x0F. # #------------------------------------------------------------------------------ # The following codes are used: #------------------------------------------------------------------------------ # 0x01 CONSONANT_BELLOW_BASE # 0x02 HALANT # 0x03 INDEP_VOWEL # 0x04 LEFT_VOWEL # 0x05 RIGHT_VOWEL # 0x06 TOP_VOWEL # 0x07 BOTTOM_VOWEL # 0x08 SIGN # 0x09 ZWJ - not used in this file # 0x0A ZWNJ - not used in this file # 0x0C NUKTA # 0x0D MODIFIER # 0x0E LEFT_RIGHT_VOWEL # 0x0F CONSONANT_BASE # 0x10 CONSONANT_POST_BASE # 0x11 CONSONANT_DEAD #------------------------------------------------------------------------------ # Consonant Placeholder 0x0F 0x25CC #------------------------------------------------------------------------------ # Devanagari #------------------------------------------------------------------------------ 0x0D 0x0901 0x0D 0x0902 0x0D 0x0903 0x03 0x0904 0x03 0x0905 0x03 0x0906 0x03 0x0907 0x03 0x0908 0x03 0x0909 0x03 0x090A 0x03 0x090B 0x03 0x090C 0x03 0x090D 0x03 0x090E 0x03 0x090F 0x03 0x0910 0x03 0x0911 0x03 0x0912 0x03 0x0913 0x03 0x0914 0x0F 0x0915 0x0F 0x0916 0x0F 0x0917 0x0F 0x0918 0x0F 0x0919 0x0F 0x091A 0x0F 0x091B 0x0F 0x091C 0x0F 0x091D 0x0F 0x091E 0x0F 0x091F 0x0F 0x0920 0x0F 0x0921 0x0F 0x0922 0x0F 0x0923 0x0F 0x0924 0x0F 0x0925 0x0F 0x0926 0x0F 0x0927 0x0F 0x0928 0x0F 0x0929 0x0F 0x092A 0x0F 0x092B 0x0F 0x092C 0x0F 0x092D 0x0F 0x092E 0x0F 0x092F 0x01 0x0930 0x0F 0x0931 0x0F 0x0932 0x0F 0x0933 0x0F 0x0934 0x0F 0x0935 0x0F 0x0936 0x0F 0x0937 0x0F 0x0938 0x0F 0x0939 0x0C 0x093C 0x08 0x093D 0x05 0x093E 0x04 0x093F 0x05 0x0940 0x07 0x0941 0x07 0x0942 0x07 0x0943 0x07 0x0944 0x06 0x0945 0x06 0x0946 0x06 0x0947 0x06 0x0948 0x05 0x0949 0x05 0x094A 0x05 0x094B 0x05 0x094C 0x02 0x094D 0x08 0x0950 0x08 0x0951 0x08 0x0952 0x08 0x0953 0x08 0x0954 0x0F 0x0958 0x0F 0x0959 0x0F 0x095A 0x0F 0x095B 0x0F 0x095C 0x0F 0x095D 0x0F 0x095E 0x0F 0x095F 0x03 0x0960 0x03 0x0961 0x07 0x0962 0x07 0x0963 0x09 0x200D 0x0A 0x200C #------------------------------------------------------------------------------ # Bengali #------------------------------------------------------------------------------ 0x0D 0x0981 0x0D 0x0982 0x0D 0x0983 0x03 0x0985 0x03 0x0986 0x03 0x0987 0x03 0x0988 0x03 0x0989 0x03 0x098A 0x03 0x098B 0x03 0x098C 0x03 0x098F 0x03 0x0990 0x03 0x0993 0x03 0x0994 0x0F 0x0995 0x0F 0x0996 0x0F 0x0997 0x0F 0x0998 0x0F 0x0999 0x0F 0x099A 0x0F 0x099B 0x0F 0x099C 0x0F 0x099D 0x0F 0x099E 0x0F 0x099F 0x0F 0x09A0 0x0F 0x09A1 0x0F 0x09A2 0x0F 0x09A3 0x0F 0x09A4 0x0F 0x09A5 0x0F 0x09A6 0x0F 0x09A7 0x0F 0x09A8 0x0F 0x09AA 0x0F 0x09AB 0x01 0x09AC 0x0F 0x09AD 0x0F 0x09AE 0x10 0x09AF 0x01 0x09B0 0x0F 0x09B2 0x0F 0x09B6 0x0F 0x09B7 0x0F 0x09B8 0x0F 0x09B9 0x0C 0x09BC 0x08 0x09BD 0x05 0x09BE 0x04 0x09BF 0x05 0x09C0 0x07 0x09C1 0x07 0x09C2 0x07 0x09C3 0x07 0x09C4 0x04 0x09C7 0x04 0x09C8 0x0E 0x09CB 0x0E 0x09CC 0x02 0x09CD # KHANDA TA 0x11 0x09CE 0x0F 0x09DC 0x0F 0x09DD 0x0F 0x09DF 0x03 0x09E0 0x03 0x09E1 0x07 0x09E2 0x07 0x09E3 #FIXME: 0x09F0 is Other prop is None 0x0F 0x09F0 #FIXME: 0x09F1 is Other prop is None 0x0F 0x09F1 #------------------------------------------------------------------------------ # Gurmukhi #------------------------------------------------------------------------------ 0x0D 0x0A01 0x0D 0x0A02 0x0D 0x0A03 0x03 0x0A05 0x03 0x0A06 0x03 0x0A07 0x03 0x0A08 0x03 0x0A09 0x03 0x0A0A 0x03 0x0A0F 0x03 0x0A10 0x03 0x0A13 0x03 0x0A14 0x0F 0x0A15 0x0F 0x0A16 0x0F 0x0A17 0x0F 0x0A18 0x0F 0x0A19 0x0F 0x0A1A 0x0F 0x0A1B 0x0F 0x0A1C 0x0F 0x0A1D 0x0F 0x0A1E 0x0F 0x0A1F 0x0F 0x0A20 0x0F 0x0A21 0x0F 0x0A22 0x0F 0x0A23 0x0F 0x0A24 0x0F 0x0A25 0x0F 0x0A26 0x0F 0x0A27 0x0F 0x0A28 0x0F 0x0A2A 0x0F 0x0A2B 0x0F 0x0A2C 0x0F 0x0A2D 0x0F 0x0A2E 0x10 0x0A2F 0x01 0x0A30 0x0F 0x0A32 0x0F 0x0A33 0x01 0x0A35 0x0F 0x0A36 0x0F 0x0A38 0x0F 0x0A39 0x0C 0x0A3C 0x05 0x0A3E 0x04 0x0A3F 0x05 0x0A40 0x07 0x0A41 0x07 0x0A42 0x06 0x0A47 0x06 0x0A48 0x06 0x0A4B 0x06 0x0A4C 0x02 0x0A4D 0x0F 0x0A59 0x0F 0x0A5A 0x0F 0x0A5B 0x0F 0x0A5C 0x0F 0x0A5E 0x0D 0x0A70 0x0D 0x0A71 0x03 0x0A72 0x03 0x0A73 0x08 0x0A74 #------------------------------------------------------------------------------ # Gujarati #------------------------------------------------------------------------------ 0x0D 0x0A81 0x0D 0x0A82 0x0D 0x0A83 0x03 0x0A85 0x03 0x0A86 0x03 0x0A87 0x03 0x0A88 0x03 0x0A89 0x03 0x0A8A 0x03 0x0A8B 0x03 0x0A8C 0x03 0x0A8D 0x03 0x0A8F 0x03 0x0A90 0x03 0x0A91 0x03 0x0A93 0x03 0x0A94 0x0F 0x0A95 0x0F 0x0A96 0x0F 0x0A97 0x0F 0x0A98 0x0F 0x0A99 0x0F 0x0A9A 0x0F 0x0A9B 0x0F 0x0A9C 0x0F 0x0A9D 0x0F 0x0A9E 0x0F 0x0A9F 0x0F 0x0AA0 0x0F 0x0AA1 0x0F 0x0AA2 0x0F 0x0AA3 0x0F 0x0AA4 0x0F 0x0AA5 0x0F 0x0AA6 0x0F 0x0AA7 0x0F 0x0AA8 0x0F 0x0AAA 0x0F 0x0AAB 0x0F 0x0AAC 0x0F 0x0AAD 0x0F 0x0AAE 0x0F 0x0AAF 0x01 0x0AB0 0x0F 0x0AB2 0x0F 0x0AB3 0x0F 0x0AB5 0x0F 0x0AB6 0x0F 0x0AB7 0x0F 0x0AB8 0x0F 0x0AB9 0x0C 0x0ABC 0x08 0x0ABD 0x05 0x0ABE 0x04 0x0ABF 0x05 0x0AC0 0x07 0x0AC1 0x07 0x0AC2 0x07 0x0AC3 0x07 0x0AC4 0x06 0x0AC5 0x06 0x0AC7 0x06 0x0AC8 0x05 0x0AC9 0x05 0x0ACB 0x05 0x0ACC 0x02 0x0ACD 0x08 0x0AD0 #FIXME: 0x0AE0 is Other prop is None 0x0F 0x0AE0 #FIXME: 0x0AE1 is Other prop is None 0x0F 0x0AE1 0x07 0x0AE2 0x07 0x0AE3 #------------------------------------------------------------------------------ # Oriya #------------------------------------------------------------------------------ 0x0D 0x0B01 0x0D 0x0B02 0x0D 0x0B03 0x03 0x0B05 0x03 0x0B06 0x03 0x0B07 0x03 0x0B08 0x03 0x0B09 0x03 0x0B0A 0x03 0x0B0B 0x03 0x0B0C 0x03 0x0B0F 0x03 0x0B10 0x03 0x0B13 0x03 0x0B14 0x0F 0x0B15 0x0F 0x0B16 0x0F 0x0B17 0x0F 0x0B18 0x0F 0x0B19 0x0F 0x0B1A 0x0F 0x0B1B 0x0F 0x0B1C 0x0F 0x0B1D 0x0F 0x0B1E 0x0F 0x0B1F 0x0F 0x0B20 0x0F 0x0B21 0x0F 0x0B22 0x0F 0x0B23 0x01 0x0B24 0x0F 0x0B25 0x0F 0x0B26 0x0F 0x0B27 0x01 0x0B28 0x0F 0x0B2A 0x0F 0x0B2B 0x01 0x0B2C 0x01 0x0B2D 0x01 0x0B2E 0x10 0x0B2F 0x01 0x0B30 0x01 0x0B32 0x01 0x0B33 #FIXME: 0x0B35 is Invalid prop is None 0x0F 0x0B35 0x0F 0x0B36 0x0F 0x0B37 0x0F 0x0B38 0x0F 0x0B39 0x0C 0x0B3C 0x08 0x0B3D 0x05 0x0B3E 0x06 0x0B3F 0x05 0x0B40 0x07 0x0B41 0x07 0x0B42 0x07 0x0B43 0x04 0x0B47 0x04 0x0B48 0x0E 0x0B4B 0x0E 0x0B4C 0x02 0x0B4D 0x06 0x0B56 0x06 0x0B57 0x0F 0x0B5C 0x0F 0x0B5D 0x0F 0x0B5F 0x03 0x0B60 0x03 0x0B61 #FIXME: 0x0B71 is Other prop is None 0x0F 0x0B71 #------------------------------------------------------------------------------ # Telugu #------------------------------------------------------------------------------ 0x0D 0x0C01 0x0D 0x0C02 0x0D 0x0C03 0x03 0x0C05 0x03 0x0C06 0x03 0x0C07 0x03 0x0C08 0x03 0x0C09 0x03 0x0C0A 0x03 0x0C0B 0x03 0x0C0C 0x03 0x0C0E 0x03 0x0C0F 0x03 0x0C10 0x03 0x0C12 0x03 0x0C13 0x03 0x0C14 0x01 0x0C15 0x01 0x0C16 0x01 0x0C17 0x01 0x0C18 0x01 0x0C19 0x01 0x0C1A 0x01 0x0C1B 0x01 0x0C1C 0x01 0x0C1D 0x01 0x0C1E 0x01 0x0C1F 0x01 0x0C20 0x01 0x0C21 0x01 0x0C22 0x01 0x0C23 0x01 0x0C24 0x01 0x0C25 0x01 0x0C26 0x01 0x0C27 0x01 0x0C28 0x01 0x0C2A 0x01 0x0C2B 0x01 0x0C2C 0x01 0x0C2D 0x01 0x0C2E 0x01 0x0C2F 0x01 0x0C30 0x0F 0x0C31 0x01 0x0C32 0x01 0x0C33 0x01 0x0C35 0x01 0x0C36 0x01 0x0C37 0x01 0x0C38 0x01 0x0C39 0x06 0x0C3E 0x06 0x0C3F 0x06 0x0C40 0x05 0x0C41 0x05 0x0C42 0x05 0x0C43 0x05 0x0C44 0x06 0x0C46 0x06 0x0C47 0x06 0x0C48 # TOP & BOTTOM 0x06 0x0C4A 0x06 0x0C4B 0x06 0x0C4C 0x02 0x0C4D 0x07 0x0C56 0x03 0x0C60 0x03 0x0C61 #------------------------------------------------------------------------------ # Kannada #------------------------------------------------------------------------------ 0x0D 0x0C82 0x0D 0x0C83 0x03 0x0C85 0x03 0x0C86 0x03 0x0C87 0x03 0x0C88 0x03 0x0C89 0x03 0x0C8A 0x03 0x0C8B 0x03 0x0C8C 0x03 0x0C8E 0x03 0x0C8F 0x03 0x0C90 0x03 0x0C92 0x03 0x0C93 0x03 0x0C94 0x01 0x0C95 0x01 0x0C96 0x01 0x0C97 0x01 0x0C98 0x01 0x0C99 0x01 0x0C9A 0x01 0x0C9B 0x01 0x0C9C 0x01 0x0C9D 0x01 0x0C9E 0x01 0x0C9F 0x01 0x0CA0 0x01 0x0CA1 0x01 0x0CA2 0x01 0x0CA3 0x01 0x0CA4 0x01 0x0CA5 0x01 0x0CA6 0x01 0x0CA7 0x01 0x0CA8 0x01 0x0CAA 0x01 0x0CAB 0x01 0x0CAC 0x01 0x0CAD 0x01 0x0CAE 0x01 0x0CAF 0x01 0x0CB0 0x0F 0x0CB1 0x01 0x0CB2 0x01 0x0CB3 0x01 0x0CB5 0x01 0x0CB6 0x01 0x0CB7 0x01 0x0CB8 0x01 0x0CB9 0x0C 0x0CBC 0x08 0x0CBD 0x05 0x0CBE 0x06 0x0CBF 0x05 0x0CC0 # TOP & RIGHT 0x05 0x0CC1 0x05 0x0CC2 0x05 0x0CC3 0x05 0x0CC4 0x06 0x0CC6 0x05 0x0CC7 # TOP & RIGHT 0x05 0x0CC8 # TOP & RIGHT 0x05 0x0CCA # TOP & RIGHT 0x05 0x0CCB # TOP & RIGHT 0x06 0x0CCC 0x02 0x0CCD 0x05 0x0CD5 0x05 0x0CD6 0x0F 0x0CDE 0x03 0x0CE0 0x03 0x0CE1 #------------------------------------------------------------------------------ # Malayalam #------------------------------------------------------------------------------ 0x0D 0x0D02 0x0D 0x0D03 0x03 0x0D05 0x03 0x0D06 0x03 0x0D07 0x03 0x0D08 0x03 0x0D09 0x03 0x0D0A 0x03 0x0D0B 0x03 0x0D0C 0x03 0x0D0E 0x03 0x0D0F 0x03 0x0D10 0x03 0x0D12 0x03 0x0D13 0x03 0x0D14 0x0F 0x0D15 0x0F 0x0D16 0x0F 0x0D17 0x0F 0x0D18 0x0F 0x0D19 0x0F 0x0D1A 0x0F 0x0D1B 0x0F 0x0D1C 0x0F 0x0D1D 0x0F 0x0D1E 0x0F 0x0D1F 0x0F 0x0D20 0x0F 0x0D21 0x0F 0x0D22 0x0F 0x0D23 0x0F 0x0D24 0x0F 0x0D25 0x0F 0x0D26 0x0F 0x0D27 0x0F 0x0D28 0x0F 0x0D2A 0x0F 0x0D2B 0x0F 0x0D2C 0x0F 0x0D2D 0x0F 0x0D2E 0x10 0x0D2F 0x10 0x0D30 0x01 0x0D31 0x01 0x0D32 0x0F 0x0D33 0x0F 0x0D34 0x10 0x0D35 0x0F 0x0D36 0x0F 0x0D37 0x0F 0x0D38 0x0F 0x0D39 0x05 0x0D3E 0x05 0x0D3F 0x05 0x0D40 0x05 0x0D41 0x05 0x0D42 0x05 0x0D43 0x04 0x0D46 0x04 0x0D47 0x04 0x0D48 0x0E 0x0D4A 0x0E 0x0D4B 0x0E 0x0D4C 0x02 0x0D4D 0x03 0x0D60 0x03 0x0D61 #------------------------------------------------------------------------------ # Thai #------------------------------------------------------------------------------ 0x01 0x0E01 0x01 0x0E02 0x01 0x0E03 0x01 0x0E04 0x01 0x0E05 0x01 0x0E06 0x01 0x0E07 0x01 0x0E08 0x01 0x0E09 0x01 0x0E0A 0x01 0x0E0B 0x01 0x0E0C 0x01 0x0E0D 0x01 0x0E0E 0x01 0x0E0F 0x01 0x0E10 0x01 0x0E11 0x01 0x0E12 0x01 0x0E13 0x01 0x0E14 0x01 0x0E15 0x01 0x0E16 0x01 0x0E17 0x01 0x0E18 0x01 0x0E19 0x01 0x0E1A 0x01 0x0E1B 0x01 0x0E1C 0x01 0x0E1D 0x01 0x0E1E 0x01 0x0E1F 0x01 0x0E20 0x01 0x0E21 0x01 0x0E22 0x01 0x0E23 0x03 0x0E24 0x01 0x0E25 0x03 0x0E26 0x01 0x0E27 0x01 0x0E28 0x01 0x0E29 0x01 0x0E2A 0x01 0x0E2B 0x01 0x0E2C 0x01 0x0E2D # used as a right vowel as well, but need not behave so 0x01 0x0E2E 0x08 0x0E2F 0x03 0x0E30 # actually a right vowel or a modifier, but need not behave so 0x06 0x0E31 0x03 0x0E32 # actually a right vowel, but need not behave so 0x05 0x0E33 # TOP & RIGHT 0x06 0x0E34 0x06 0x0E35 0x06 0x0E36 0x06 0x0E37 0x07 0x0E38 0x07 0x0E39 0x07 0x0E3A # actually a halant, but need not behave so 0x08 0x0E3F 0x03 0x0E40 # actually a left vowel, but need not behave so 0x03 0x0E41 # actually a left vowel, but need not behave so 0x03 0x0E42 # actually a left vowel, but need not behave so 0x03 0x0E43 # actually a left vowel, but need not behave so 0x03 0x0E44 # actually a left vowel, but need not behave so 0x03 0x0E45 # actually a modifier, but need not behave so 0x08 0x0E46 0x06 0x0E47 0x06 0x0E48 0x06 0x0E49 0x06 0x0E4A 0x06 0x0E4B 0x06 0x0E4C 0x06 0x0E4D 0x06 0x0E4E 0x08 0x0E4F 0x08 0x0E50 0x08 0x0E51 0x08 0x0E52 0x08 0x0E53 0x08 0x0E54 0x08 0x0E55 0x08 0x0E56 0x08 0x0E57 0x08 0x0E58 0x08 0x0E59 0x08 0x0E5A 0x08 0x0E5B #------------------------------------------------------------------------------ # Lao #------------------------------------------------------------------------------ 0x01 0x0E81 0x01 0x0E82 0x01 0x0E84 0x01 0x0E87 0x01 0x0E88 0x01 0x0E8A 0x01 0x0E8D 0x01 0x0E94 0x01 0x0E95 0x01 0x0E96 0x01 0x0E97 0x01 0x0E99 0x01 0x0E9A 0x01 0x0E9B 0x01 0x0E9C 0x01 0x0E9D 0x01 0x0E9E 0x01 0x0E9F 0x01 0x0EA1 0x01 0x0EA2 0x01 0x0EA3 0x01 0x0EA5 0x01 0x0EA7 0x01 0x0EAA 0x01 0x0EAB 0x01 0x0EAD 0x01 0x0EAE 0x08 0x0EAF 0x03 0x0EB0 # actually a right vowel or a modifier, but need not behave so 0x06 0x0EB1 0x03 0x0EB2 # actually a right vowel, but need not behave so 0x05 0x0EB3 # TOP & RIGHT 0x06 0x0EB4 0x06 0x0EB5 0x06 0x0EB6 0x06 0x0EB7 0x07 0x0EB8 0x07 0x0EB9 0x06 0x0EBB 0x0C 0x0EBC # actually a subjoined consonant, but behaves like nukta 0x01 0x0EBD # actually a right-joined consonant, but need not behave so 0x03 0x0EC0 # actually a left vowel, but need not behave so 0x03 0x0EC1 # actually a left vowel, but need not behave so 0x03 0x0EC2 # actually a left vowel, but need not behave so 0x03 0x0EC3 # actually a left vowel, but need not behave so 0x03 0x0EC4 # actually a left vowel, but need not behave so 0x08 0x0EC6 0x06 0x0EC8 0x06 0x0EC9 0x06 0x0ECA 0x06 0x0ECB 0x06 0x0ECC 0x06 0x0ECD 0x08 0x0ED0 0x08 0x0ED1 0x08 0x0ED2 0x08 0x0ED3 0x08 0x0ED4 0x08 0x0ED5 0x08 0x0ED6 0x08 0x0ED7 0x08 0x0ED8 0x08 0x0ED9 0x01 0x0EDC # actually a ligature, but behaves like a consonant 0x01 0x0EDD # actually a ligature, but behaves like a consonant #------------------------------------------------------------------------------ # Tibetan #------------------------------------------------------------------------------ 0x08 0x0F00 0x08 0x0F01 0x08 0x0F02 0x08 0x0F03 0x08 0x0F04 0x08 0x0F05 0x08 0x0F06 0x08 0x0F07 0x08 0x0F08 0x08 0x0F09 0x08 0x0F0A 0x08 0x0F0B 0x08 0x0F0C 0x08 0x0F0D 0x08 0x0F0E 0x08 0x0F0F 0x08 0x0F10 0x08 0x0F11 0x08 0x0F12 0x08 0x0F13 0x08 0x0F14 0x08 0x0F15 0x08 0x0F16 0x08 0x0F17 0x08 0x0F1A 0x08 0x0F1B 0x08 0x0F1C 0x08 0x0F1D 0x08 0x0F1E 0x08 0x0F1F 0x08 0x0F34 0x07 0x0F35 0x08 0x0F36 0x07 0x0F37 0x08 0x0F38 0x06 0x0F39 0x08 0x0F3A 0x08 0x0F3B 0x08 0x0F3C 0x08 0x0F3D 0x01 0x0F40 0x01 0x0F41 0x01 0x0F42 0x01 0x0F43 0x01 0x0F44 0x01 0x0F45 0x01 0x0F46 0x01 0x0F47 0x01 0x0F49 0x01 0x0F4A 0x01 0x0F4B 0x01 0x0F4C 0x01 0x0F4D 0x01 0x0F4E 0x01 0x0F4F 0x01 0x0F50 0x01 0x0F51 0x01 0x0F52 0x01 0x0F53 0x01 0x0F54 0x01 0x0F55 0x01 0x0F56 0x01 0x0F57 0x01 0x0F58 0x01 0x0F59 0x01 0x0F5A 0x01 0x0F5B 0x01 0x0F5C 0x01 0x0F5D 0x01 0x0F5E 0x01 0x0F5F 0x01 0x0F60 0x01 0x0F61 0x01 0x0F62 0x01 0x0F63 0x01 0x0F64 0x01 0x0F65 0x01 0x0F66 0x01 0x0F67 0x01 0x0F68 0x01 0x0F69 0x01 0x0F6A 0x07 0x0F71 0x06 0x0F72 0x06 0x0F73 # TOP & BOTTOM 0x07 0x0F74 0x07 0x0F75 0x06 0x0F76 # TOP & BOTTOM 0x06 0x0F77 # TOP & BOTTOM 0x06 0x0F78 # TOP & BOTTOM 0x06 0x0F79 # TOP & BOTTOM 0x06 0x0F7A 0x06 0x0F7B 0x06 0x0F7C 0x06 0x0F7D 0x06 0x0F7E 0x05 0x0F7F 0x06 0x0F80 0x06 0x0F81 # TOP & BOTTOM 0x06 0x0F82 0x06 0x0F83 0x07 0x0F84 0x08 0x0F85 0x06 0x0F86 0x06 0x0F87 0x08 0x0F88 0x08 0x0F89 0x08 0x0F8A 0x08 0x0F8B 0x06 0x0F90 0x06 0x0F91 0x06 0x0F92 0x06 0x0F93 0x06 0x0F94 0x06 0x0F95 0x06 0x0F96 0x06 0x0F97 0x06 0x0F99 0x06 0x0F9A 0x06 0x0F9B 0x06 0x0F9C 0x06 0x0F9D 0x06 0x0F9E 0x06 0x0F9F 0x06 0x0FA0 0x06 0x0FA1 0x06 0x0FA2 0x06 0x0FA3 0x06 0x0FA4 0x06 0x0FA5 0x06 0x0FA6 0x06 0x0FA7 0x06 0x0FA8 0x06 0x0FA9 0x06 0x0FAA 0x06 0x0FAB 0x06 0x0FAC 0x06 0x0FAD 0x06 0x0FAE 0x06 0x0FAF 0x06 0x0FB0 0x06 0x0FB1 0x06 0x0FB2 0x06 0x0FB3 0x06 0x0FB4 0x06 0x0FB5 0x06 0x0FB6 0x06 0x0FB7 0x06 0x0FB8 0x06 0x0FB9 0x06 0x0FBA 0x06 0x0FBB 0x06 0x0FBC 0x08 0x0FBE 0x08 0x0FBF 0x08 0x0FC0 0x08 0x0FC1 0x08 0x0FC2 0x08 0x0FC3 0x08 0x0FC4 0x08 0x0FC5 0x08 0x0FC6 0x08 0x0FC7 0x08 0x0FC8 0x08 0x0FC9 0x08 0x0FCA 0x08 0x0FCB 0x08 0x0FCC 0x08 0x0FCF # END ./mytool/uni/8859-13.TXT0000644000175000017500000002453407246705245014435 0ustar henrichhenrich# # Name: ISO/IEC 8859-13:1998 to Unicode # Unicode version: 3.0 # Table version: 1.0 # Table format: Format A # Date: 1999 July 27 # Authors: Ken Whistler # # Copyright (c) 1998 - 1999 Unicode, Inc. All Rights reserved. # # This file is provided as-is by Unicode, Inc. (The Unicode Consortium). # No claims are made as to fitness for any particular purpose. No # warranties of any kind are expressed or implied. The recipient # agrees to determine applicability of information provided. If this # file has been provided on optical media by Unicode, Inc., the sole # remedy for any claim will be exchange of defective media within 90 # days of receipt. # # Unicode, Inc. hereby grants the right to freely use the information # supplied in this file in the creation of products supporting the # Unicode Standard, and to make copies of this file in any form for # internal or external distribution as long as this notice remains # attached. # # General notes: # # This table contains the data the Unicode Consortium has on how # ISO/IEC 8859-13:1998 characters map into Unicode. # # Format: Three tab-separated columns # Column #1 is the ISO/IEC 8859-13 code (in hex as 0xXX) # Column #2 is the Unicode (in hex as 0xXXXX) # Column #3 the Unicode name (follows a comment sign, '#') # # The entries are in ISO/IEC 8859-13 order. # # Updated versions of this file may be found in: # # # Any comments or problems, contact # Please note that is an archival address; # notices will be checked, but do not expect an immediate response. # 0x00 0x0000 # NULL 0x01 0x0001 # START OF HEADING 0x02 0x0002 # START OF TEXT 0x03 0x0003 # END OF TEXT 0x04 0x0004 # END OF TRANSMISSION 0x05 0x0005 # ENQUIRY 0x06 0x0006 # ACKNOWLEDGE 0x07 0x0007 # BELL 0x08 0x0008 # BACKSPACE 0x09 0x0009 # HORIZONTAL TABULATION 0x0A 0x000A # LINE FEED 0x0B 0x000B # VERTICAL TABULATION 0x0C 0x000C # FORM FEED 0x0D 0x000D # CARRIAGE RETURN 0x0E 0x000E # SHIFT OUT 0x0F 0x000F # SHIFT IN 0x10 0x0010 # DATA LINK ESCAPE 0x11 0x0011 # DEVICE CONTROL ONE 0x12 0x0012 # DEVICE CONTROL TWO 0x13 0x0013 # DEVICE CONTROL THREE 0x14 0x0014 # DEVICE CONTROL FOUR 0x15 0x0015 # NEGATIVE ACKNOWLEDGE 0x16 0x0016 # SYNCHRONOUS IDLE 0x17 0x0017 # END OF TRANSMISSION BLOCK 0x18 0x0018 # CANCEL 0x19 0x0019 # END OF MEDIUM 0x1A 0x001A # SUBSTITUTE 0x1B 0x001B # ESCAPE 0x1C 0x001C # FILE SEPARATOR 0x1D 0x001D # GROUP SEPARATOR 0x1E 0x001E # RECORD SEPARATOR 0x1F 0x001F # UNIT SEPARATOR 0x20 0x0020 # SPACE 0x21 0x0021 # EXCLAMATION MARK 0x22 0x0022 # QUOTATION MARK 0x23 0x0023 # NUMBER SIGN 0x24 0x0024 # DOLLAR SIGN 0x25 0x0025 # PERCENT SIGN 0x26 0x0026 # AMPERSAND 0x27 0x0027 # APOSTROPHE 0x28 0x0028 # LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK 0x2B 0x002B # PLUS SIGN 0x2C 0x002C # COMMA 0x2D 0x002D # HYPHEN-MINUS 0x2E 0x002E # FULL STOP 0x2F 0x002F # SOLIDUS 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE 0x3A 0x003A # COLON 0x3B 0x003B # SEMICOLON 0x3C 0x003C # LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN 0x3E 0x003E # GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK 0x40 0x0040 # COMMERCIAL AT 0x41 0x0041 # LATIN CAPITAL LETTER A 0x42 0x0042 # LATIN CAPITAL LETTER B 0x43 0x0043 # LATIN CAPITAL LETTER C 0x44 0x0044 # LATIN CAPITAL LETTER D 0x45 0x0045 # LATIN CAPITAL LETTER E 0x46 0x0046 # LATIN CAPITAL LETTER F 0x47 0x0047 # LATIN CAPITAL LETTER G 0x48 0x0048 # LATIN CAPITAL LETTER H 0x49 0x0049 # LATIN CAPITAL LETTER I 0x4A 0x004A # LATIN CAPITAL LETTER J 0x4B 0x004B # LATIN CAPITAL LETTER K 0x4C 0x004C # LATIN CAPITAL LETTER L 0x4D 0x004D # LATIN CAPITAL LETTER M 0x4E 0x004E # LATIN CAPITAL LETTER N 0x4F 0x004F # LATIN CAPITAL LETTER O 0x50 0x0050 # LATIN CAPITAL LETTER P 0x51 0x0051 # LATIN CAPITAL LETTER Q 0x52 0x0052 # LATIN CAPITAL LETTER R 0x53 0x0053 # LATIN CAPITAL LETTER S 0x54 0x0054 # LATIN CAPITAL LETTER T 0x55 0x0055 # LATIN CAPITAL LETTER U 0x56 0x0056 # LATIN CAPITAL LETTER V 0x57 0x0057 # LATIN CAPITAL LETTER W 0x58 0x0058 # LATIN CAPITAL LETTER X 0x59 0x0059 # LATIN CAPITAL LETTER Y 0x5A 0x005A # LATIN CAPITAL LETTER Z 0x5B 0x005B # LEFT SQUARE BRACKET 0x5C 0x005C # REVERSE SOLIDUS 0x5D 0x005D # RIGHT SQUARE BRACKET 0x5E 0x005E # CIRCUMFLEX ACCENT 0x5F 0x005F # LOW LINE 0x60 0x0060 # GRAVE ACCENT 0x61 0x0061 # LATIN SMALL LETTER A 0x62 0x0062 # LATIN SMALL LETTER B 0x63 0x0063 # LATIN SMALL LETTER C 0x64 0x0064 # LATIN SMALL LETTER D 0x65 0x0065 # LATIN SMALL LETTER E 0x66 0x0066 # LATIN SMALL LETTER F 0x67 0x0067 # LATIN SMALL LETTER G 0x68 0x0068 # LATIN SMALL LETTER H 0x69 0x0069 # LATIN SMALL LETTER I 0x6A 0x006A # LATIN SMALL LETTER J 0x6B 0x006B # LATIN SMALL LETTER K 0x6C 0x006C # LATIN SMALL LETTER L 0x6D 0x006D # LATIN SMALL LETTER M 0x6E 0x006E # LATIN SMALL LETTER N 0x6F 0x006F # LATIN SMALL LETTER O 0x70 0x0070 # LATIN SMALL LETTER P 0x71 0x0071 # LATIN SMALL LETTER Q 0x72 0x0072 # LATIN SMALL LETTER R 0x73 0x0073 # LATIN SMALL LETTER S 0x74 0x0074 # LATIN SMALL LETTER T 0x75 0x0075 # LATIN SMALL LETTER U 0x76 0x0076 # LATIN SMALL LETTER V 0x77 0x0077 # LATIN SMALL LETTER W 0x78 0x0078 # LATIN SMALL LETTER X 0x79 0x0079 # LATIN SMALL LETTER Y 0x7A 0x007A # LATIN SMALL LETTER Z 0x7B 0x007B # LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET 0x7E 0x007E # TILDE 0x7F 0x007F # DELETE 0x80 0x0080 # 0x81 0x0081 # 0x82 0x0082 # 0x83 0x0083 # 0x84 0x0084 # 0x85 0x0085 # 0x86 0x0086 # 0x87 0x0087 # 0x88 0x0088 # 0x89 0x0089 # 0x8A 0x008A # 0x8B 0x008B # 0x8C 0x008C # 0x8D 0x008D # 0x8E 0x008E # 0x8F 0x008F # 0x90 0x0090 # 0x91 0x0091 # 0x92 0x0092 # 0x93 0x0093 # 0x94 0x0094 # 0x95 0x0095 # 0x96 0x0096 # 0x97 0x0097 # 0x98 0x0098 # 0x99 0x0099 # 0x9A 0x009A # 0x9B 0x009B # 0x9C 0x009C # 0x9D 0x009D # 0x9E 0x009E # 0x9F 0x009F # 0xA0 0x00A0 # NO-BREAK SPACE 0xA1 0x201D # RIGHT DOUBLE QUOTATION MARK 0xA2 0x00A2 # CENT SIGN 0xA3 0x00A3 # POUND SIGN 0xA4 0x00A4 # CURRENCY SIGN 0xA5 0x201E # DOUBLE LOW-9 QUOTATION MARK 0xA6 0x00A6 # BROKEN BAR 0xA7 0x00A7 # SECTION SIGN 0xA8 0x00D8 # LATIN CAPITAL LETTER O WITH STROKE 0xA9 0x00A9 # COPYRIGHT SIGN 0xAA 0x0156 # LATIN CAPITAL LETTER R WITH CEDILLA 0xAB 0x00AB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK 0xAC 0x00AC # NOT SIGN 0xAD 0x00AD # SOFT HYPHEN 0xAE 0x00AE # REGISTERED SIGN 0xAF 0x00C6 # LATIN CAPITAL LETTER AE 0xB0 0x00B0 # DEGREE SIGN 0xB1 0x00B1 # PLUS-MINUS SIGN 0xB2 0x00B2 # SUPERSCRIPT TWO 0xB3 0x00B3 # SUPERSCRIPT THREE 0xB4 0x201C # LEFT DOUBLE QUOTATION MARK 0xB5 0x00B5 # MICRO SIGN 0xB6 0x00B6 # PILCROW SIGN 0xB7 0x00B7 # MIDDLE DOT 0xB8 0x00F8 # LATIN SMALL LETTER O WITH STROKE 0xB9 0x00B9 # SUPERSCRIPT ONE 0xBA 0x0157 # LATIN SMALL LETTER R WITH CEDILLA 0xBB 0x00BB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK 0xBC 0x00BC # VULGAR FRACTION ONE QUARTER 0xBD 0x00BD # VULGAR FRACTION ONE HALF 0xBE 0x00BE # VULGAR FRACTION THREE QUARTERS 0xBF 0x00E6 # LATIN SMALL LETTER AE 0xC0 0x0104 # LATIN CAPITAL LETTER A WITH OGONEK 0xC1 0x012E # LATIN CAPITAL LETTER I WITH OGONEK 0xC2 0x0100 # LATIN CAPITAL LETTER A WITH MACRON 0xC3 0x0106 # LATIN CAPITAL LETTER C WITH ACUTE 0xC4 0x00C4 # LATIN CAPITAL LETTER A WITH DIAERESIS 0xC5 0x00C5 # LATIN CAPITAL LETTER A WITH RING ABOVE 0xC6 0x0118 # LATIN CAPITAL LETTER E WITH OGONEK 0xC7 0x0112 # LATIN CAPITAL LETTER E WITH MACRON 0xC8 0x010C # LATIN CAPITAL LETTER C WITH CARON 0xC9 0x00C9 # LATIN CAPITAL LETTER E WITH ACUTE 0xCA 0x0179 # LATIN CAPITAL LETTER Z WITH ACUTE 0xCB 0x0116 # LATIN CAPITAL LETTER E WITH DOT ABOVE 0xCC 0x0122 # LATIN CAPITAL LETTER G WITH CEDILLA 0xCD 0x0136 # LATIN CAPITAL LETTER K WITH CEDILLA 0xCE 0x012A # LATIN CAPITAL LETTER I WITH MACRON 0xCF 0x013B # LATIN CAPITAL LETTER L WITH CEDILLA 0xD0 0x0160 # LATIN CAPITAL LETTER S WITH CARON 0xD1 0x0143 # LATIN CAPITAL LETTER N WITH ACUTE 0xD2 0x0145 # LATIN CAPITAL LETTER N WITH CEDILLA 0xD3 0x00D3 # LATIN CAPITAL LETTER O WITH ACUTE 0xD4 0x014C # LATIN CAPITAL LETTER O WITH MACRON 0xD5 0x00D5 # LATIN CAPITAL LETTER O WITH TILDE 0xD6 0x00D6 # LATIN CAPITAL LETTER O WITH DIAERESIS 0xD7 0x00D7 # MULTIPLICATION SIGN 0xD8 0x0172 # LATIN CAPITAL LETTER U WITH OGONEK 0xD9 0x0141 # LATIN CAPITAL LETTER L WITH STROKE 0xDA 0x015A # LATIN CAPITAL LETTER S WITH ACUTE 0xDB 0x016A # LATIN CAPITAL LETTER U WITH MACRON 0xDC 0x00DC # LATIN CAPITAL LETTER U WITH DIAERESIS 0xDD 0x017B # LATIN CAPITAL LETTER Z WITH DOT ABOVE 0xDE 0x017D # LATIN CAPITAL LETTER Z WITH CARON 0xDF 0x00DF # LATIN SMALL LETTER SHARP S (German) 0xE0 0x0105 # LATIN SMALL LETTER A WITH OGONEK 0xE1 0x012F # LATIN SMALL LETTER I WITH OGONEK 0xE2 0x0101 # LATIN SMALL LETTER A WITH MACRON 0xE3 0x0107 # LATIN SMALL LETTER C WITH ACUTE 0xE4 0x00E4 # LATIN SMALL LETTER A WITH DIAERESIS 0xE5 0x00E5 # LATIN SMALL LETTER A WITH RING ABOVE 0xE6 0x0119 # LATIN SMALL LETTER E WITH OGONEK 0xE7 0x0113 # LATIN SMALL LETTER E WITH MACRON 0xE8 0x010D # LATIN SMALL LETTER C WITH CARON 0xE9 0x00E9 # LATIN SMALL LETTER E WITH ACUTE 0xEA 0x017A # LATIN SMALL LETTER Z WITH ACUTE 0xEB 0x0117 # LATIN SMALL LETTER E WITH DOT ABOVE 0xEC 0x0123 # LATIN SMALL LETTER G WITH CEDILLA 0xED 0x0137 # LATIN SMALL LETTER K WITH CEDILLA 0xEE 0x012B # LATIN SMALL LETTER I WITH MACRON 0xEF 0x013C # LATIN SMALL LETTER L WITH CEDILLA 0xF0 0x0161 # LATIN SMALL LETTER S WITH CARON 0xF1 0x0144 # LATIN SMALL LETTER N WITH ACUTE 0xF2 0x0146 # LATIN SMALL LETTER N WITH CEDILLA 0xF3 0x00F3 # LATIN SMALL LETTER O WITH ACUTE 0xF4 0x014D # LATIN SMALL LETTER O WITH MACRON 0xF5 0x00F5 # LATIN SMALL LETTER O WITH TILDE 0xF6 0x00F6 # LATIN SMALL LETTER O WITH DIAERESIS 0xF7 0x00F7 # DIVISION SIGN 0xF8 0x0173 # LATIN SMALL LETTER U WITH OGONEK 0xF9 0x0142 # LATIN SMALL LETTER L WITH STROKE 0xFA 0x015B # LATIN SMALL LETTER S WITH ACUTE 0xFB 0x016B # LATIN SMALL LETTER U WITH MACRON 0xFC 0x00FC # LATIN SMALL LETTER U WITH DIAERESIS 0xFD 0x017C # LATIN SMALL LETTER Z WITH DOT ABOVE 0xFE 0x017E # LATIN SMALL LETTER Z WITH CARON 0xFF 0x2019 # RIGHT SINGLE QUOTATION MARK ./mytool/uni/iso-8859-7.my0000644000175000017500000003356607532460064015116 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-7Ncreated by mytool 2002-03-30   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/koi8-u.txt0000644000175000017500000001306207532460064015040 0ustar henrichhenrich# # This file was originally generated by program from RFC-2319 # # Additional characters for Old Russian (KOI8-U) according to # http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2319.html # by Gaspar Sinai 2002-03-05 # 0x80 0x2500 # BOX DRAWINGS LIGHT HORIZONTAL 0x81 0x2502 # BOX DRAWINGS LIGHT VERTICAL 0x82 0x250C # BOX DRAWINGS LIGHT DOWN AND RIGHT 0x83 0x2510 # BOX DRAWINGS LIGHT DOWN AND LEFT 0x84 0x2514 # BOX DRAWINGS LIGHT 0xP AND RIGHT 0x85 0x2518 # BOX DRAWINGS LIGHT 0xP AND LEFT 0x86 0x251C # BOX DRAWINGS LIGHT VERTICAL AND RIGHT 0x87 0x2524 # BOX DRAWINGS LIGHT VERTICAL AND LEFT 0x88 0x252C # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL 0x89 0x2534 # BOX DRAWINGS LIGHT 0xP AND HORIZONTAL 0x8A 0x253C # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL 0x8B 0x2580 # 0xPPER HALF BLOCK 0x8C 0x2584 # LOWER HALF BLOCK 0x8D 0x2588 # FULL BLOCK 0x8E 0x258C # LEFT HALF BLOCK 0x8F 0x2590 # RIGHT HALF BLOCK 0x90 0x2591 # LIGHT SHADE 0x91 0x2592 # MEDIUM SHADE 0x92 0x2593 # DARK SHADE 0x93 0x2320 # TOP HALF INTEGRAL 0x94 0x25A0 # BLACK SQUARE 0x95 0x2219 # BULLET OPERATOR 0x96 0x221A # SQUARE ROOT 0x97 0x2248 # ALMOST EQUAL TO 0x98 0x2264 # LESS THAN OR EQUAL TO 0x99 0x2265 # GREATER THAN OR EQUAL TO 0x9A 0x00A0 # NO-BREAK SPACE 0x9B 0x2321 # BOTTOM HALF INTEGRAL 0x9C 0x00B0 # DEGREE SIGN 0x9D 0x00B2 # SUPERSCRIPT TWO 0x9E 0x00B7 # MIDDLE DOT 0x9F 0x00F7 # DIVISION SIGN 0xA0 0x2550 # BOX DRAWINGS DOUBLE HORIZONTAL 0xA1 0x2551 # BOX DRAWINGS DOUBLE VERTICAL 0xA2 0x2552 # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE 0xA3 0x0451 # CYRILLIC SMALL LETTER IO 0xA4 0x0454 # CYRILLIC SMALL LETTER 0xKRAINIAN IE 0xA5 0x2554 # BOX DRAWINGS DOUBLE DOWN AND RIGHT 0xA6 0x0456 # CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I 0xA7 0x0457 # CYRILLIC SMALL LETTER YI (UKRAINIAN) 0xA8 0x2557 # BOX DRAWINGS DOUBLE DOWN AND LEFT 0xA9 0x2558 # BOX DRAWINGS 0xP SINGLE AND RIGHT DOUBLE 0xAA 0x2559 # BOX DRAWINGS 0xP DOUBLE AND RIGHT SINGLE 0xAB 0x255A # BOX DRAWINGS DOUBLE 0xP AND RIGHT 0xAC 0x255B # BOX DRAWINGS 0xP SINGLE AND LEFT DOUBLE 0xAD 0x0491 # CYRILLIC SMALL LETTER GHE WITH 0xPTURN 0xAE 0x255D # BOX DRAWINGS DOUBLE 0xP AND LEFT 0xAF 0x255E # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE 0xB0 0x255F # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE 0xB1 0x2560 # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT 0xB2 0x2561 # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE 0xB3 0x0401 # CYRILLIC CAPITAL LETTER IO 0xB4 0x0403 # CYRILLIC CAPITAL LETTER 0xKRAINIAN IE 0xB5 0x2563 # BOX DRAWINGS DOUBLE VERTICAL AND LEFT 0xB6 0x0406 # CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I 0xB7 0x0407 # CYRILLIC CAPITAL LETTER YI (UKRAINIAN) 0xB8 0x2566 # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL 0xB9 0x2567 # BOX DRAWINGS 0xP SINGLE AND 0xBA 0x2568 # BOX DRAWINGS 0xP DOUBLE AND HORIZONTAL SINGLE 0xBB 0x2569 # BOX DRAWINGS DOUBLE 0xP AND HORIZONTAL 0xBC 0x256A # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE 0xBD 0x0490 # CYRILLIC CAPITAL LETTER GHE WITH 0xPTURN 0xBE 0x256C # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL 0xBF 0x00A9 # COPYRIGHT SIGN 0xC0 0x044E # CYRILLIC SMALL LETTER YU 0xC1 0x0430 # CYRILLIC SMALL LETTER A 0xC2 0x0431 # CYRILLIC SMALL LETTER BE 0xC3 0x0446 # CYRILLIC SMALL LETTER TSE 0xC4 0x0434 # CYRILLIC SMALL LETTER DE 0xC5 0x0435 # CYRILLIC SMALL LETTER IE 0xC6 0x0444 # CYRILLIC SMALL LETTER EF 0xC7 0x0433 # CYRILLIC SMALL LETTER GHE 0xC8 0x0445 # CYRILLIC SMALL LETTER KHA 0xC9 0x0438 # CYRILLIC SMALL LETTER I 0xCA 0x0439 # CYRILLIC SMALL LETTER SHORT I 0xCB 0x043A # CYRILLIC SMALL LETTER KA 0xCC 0x043B # CYRILLIC SMALL LETTER EL 0xCD 0x043C # CYRILLIC SMALL LETTER EM 0xCE 0x043D # CYRILLIC SMALL LETTER EN 0xCF 0x043E # CYRILLIC SMALL LETTER O 0xD0 0x043F # CYRILLIC SMALL LETTER PE 0xD1 0x044F # CYRILLIC SMALL LETTER YA 0xD2 0x0440 # CYRILLIC SMALL LETTER ER 0xD3 0x0441 # CYRILLIC SMALL LETTER ES 0xD4 0x0442 # CYRILLIC SMALL LETTER TE 0xD5 0x0443 # CYRILLIC SMALL LETTER 0x 0xD6 0x0436 # CYRILLIC SMALL LETTER ZHE 0xD7 0x0432 # CYRILLIC SMALL LETTER VE 0xD8 0x044C # CYRILLIC SMALL LETTER SOFT SIGN 0xD9 0x044B # CYRILLIC SMALL LETTER YERU 0xDA 0x0437 # CYRILLIC SMALL LETTER ZE 0xDB 0x0448 # CYRILLIC SMALL LETTER SHA 0xDC 0x044D # CYRILLIC SMALL LETTER E 0xDD 0x0449 # CYRILLIC SMALL LETTER SHCHA 0xDE 0x0447 # CYRILLIC SMALL LETTER CHE 0xDF 0x044A # CYRILLIC SMALL LETTER HARD SIGN 0xE0 0x042E # CYRILLIC CAPITAL LETTER YU 0xE1 0x0410 # CYRILLIC CAPITAL LETTER A 0xE2 0x0411 # CYRILLIC CAPITAL LETTER BE 0xE3 0x0426 # CYRILLIC CAPITAL LETTER TSE 0xE4 0x0414 # CYRILLIC CAPITAL LETTER DE 0xE5 0x0415 # CYRILLIC CAPITAL LETTER IE 0xE6 0x0424 # CYRILLIC CAPITAL LETTER EF 0xE7 0x0413 # CYRILLIC CAPITAL LETTER GHE 0xE8 0x0425 # CYRILLIC CAPITAL LETTER KHA 0xE9 0x0418 # CYRILLIC CAPITAL LETTER I 0xEA 0x0419 # CYRILLIC CAPITAL LETTER SHORT I 0xEB 0x041A # CYRILLIC CAPITAL LETTER KA 0xEC 0x041B # CYRILLIC CAPITAL LETTER EL 0xED 0x041C # CYRILLIC CAPITAL LETTER EM 0xEE 0x041D # CYRILLIC CAPITAL LETTER EN 0xEF 0x041E # CYRILLIC CAPITAL LETTER O 0xF0 0x041F # CYRILLIC CAPITAL LETTER PE 0xF1 0x042F # CYRILLIC CAPITAL LETTER YA 0xF2 0x0420 # CYRILLIC CAPITAL LETTER ER 0xF3 0x0421 # CYRILLIC CAPITAL LETTER ES 0xF4 0x0422 # CYRILLIC CAPITAL LETTER TE 0xF5 0x0423 # CYRILLIC CAPITAL LETTER 0x 0xF6 0x0416 # CYRILLIC CAPITAL LETTER ZHE 0xF7 0x0412 # CYRILLIC CAPITAL LETTER VE 0xF8 0x042C # CYRILLIC CAPITAL LETTER SOFT SIGN 0xF9 0x042B # CYRILLIC CAPITAL LETTER YERU 0xFA 0x0417 # CYRILLIC CAPITAL LETTER ZE 0xFB 0x0428 # CYRILLIC CAPITAL LETTER SHA 0xFC 0x042D # CYRILLIC CAPITAL LETTER E 0xFD 0x0429 # CYRILLIC CAPITAL LETTER SHCHA 0xFE 0x0427 # CYRILLIC CAPITAL LETTER CHE 0xFF 0x042A # CYRILLIC CAPITAL LETTER HARD SIGN ./mytool/uni/iso-8859-15.my0000644000175000017500000004203207532460064015161 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-15Ncreated by mytool 2002-03-30   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ `a}~RSx  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/MIK.TXT0000644000175000017500000002447210430071110014170 0ustar henrichhenrich######################################################################################### # # Bulgarian MIK codepage # Made by Alexander Shopov # Based on CP437, resynced with GNU libc implementation # For more info: # http://en.wikipedia.org/wiki/MIK_Code_page # and: # http://sources.redhat.com/bugzilla/show_bug.cgi?id=2625 # # Bulgarian MIK codepage in TXT for Yudit mys format # Copyright (C) <2001><2006> # # This program 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 of the License, or # (at your option) any later version. # # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA # # # ######################################################################################### # BUMAP can not handle 0 # 0x00 0x0000 0x00 0x0000 # NULL (NUL) 0x01 0x0001 # START OF HEADING (SOH) 0x02 0x0002 # START OF TEXT (STX) 0x03 0x0003 # END OF TEXT (ETX) 0x04 0x0004 # END OF TRANSMISSION (EOT) 0x05 0x0005 # ENQUIRY (ENQ) 0x06 0x0006 # ACKNOWLEDGE (ACK) 0x07 0x0007 # BELL (BEL) 0x08 0x0008 # BACKSPACE (BS) 0x09 0x0009 # CHARACTER TABULATION (HT) 0x0A 0x000A # LINE FEED (LF) 0x0B 0x000B # LINE TABULATION (VT) 0x0C 0x000C # FORM FEED (FF) 0x0D 0x000D # CARRIAGE RETURN (CR) 0x0E 0x000E # SHIFT OUT (SO) 0x0F 0x000F # SHIFT IN (SI) 0x10 0x0010 # DATALINK ESCAPE (DLE) 0x11 0x0011 # DEVICE CONTROL ONE (DC1) 0x12 0x0012 # DEVICE CONTROL TWO (DC2) 0x13 0x0013 # DEVICE CONTROL THREE (DC3) 0x14 0x0014 # DEVICE CONTROL FOUR (DC4) 0x15 0x0015 # NEGATIVE ACKNOWLEDGE (NAK) 0x16 0x0016 # SYNCHRONOUS IDLE (SYN) 0x17 0x0017 # END OF TRANSMISSION BLOCK (ETB) 0x18 0x0018 # CANCEL (CAN) 0x19 0x0019 # END OF MEDIUM (EM) 0x1A 0x001A # SUBSTITUTE (SUB) 0x1B 0x001B # ESCAPE (ESC) 0x1C 0x001C # FILE SEPARATOR (IS4) 0x1D 0x001D # GROUP SEPARATOR (IS3) 0x1E 0x001E # RECORD SEPARATOR (IS2) 0x1F 0x001F # UNIT SEPARATOR (IS1) 0x20 0x0020 # SPACE 0x21 0x0021 # EXCLAMATION MARK 0x22 0x0022 # QUOTATION MARK 0x23 0x0023 # NUMBER SIGN 0x24 0x0024 # DOLLAR SIGN 0x25 0x0025 # PERCENT SIGN 0x26 0x0026 # AMPERSAND 0x27 0x0027 # APOSTROPHE 0x28 0x0028 # LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK 0x2B 0x002B # PLUS SIGN 0x2C 0x002C # COMMA 0x2D 0x002D # HYPHEN-MINUS 0x2E 0x002E # FULL STOP 0x2F 0x002F # SOLIDUS 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE 0x3A 0x003A # COLON 0x3B 0x003B # SEMICOLON 0x3C 0x003C # LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN 0x3E 0x003E # GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK 0x40 0x0040 # COMMERCIAL AT 0x41 0x0041 # LATIN CAPITAL LETTER A 0x42 0x0042 # LATIN CAPITAL LETTER B 0x43 0x0043 # LATIN CAPITAL LETTER C 0x44 0x0044 # LATIN CAPITAL LETTER D 0x45 0x0045 # LATIN CAPITAL LETTER E 0x46 0x0046 # LATIN CAPITAL LETTER F 0x47 0x0047 # LATIN CAPITAL LETTER G 0x48 0x0048 # LATIN CAPITAL LETTER H 0x49 0x0049 # LATIN CAPITAL LETTER I 0x4A 0x004A # LATIN CAPITAL LETTER J 0x4B 0x004B # LATIN CAPITAL LETTER K 0x4C 0x004C # LATIN CAPITAL LETTER L 0x4D 0x004D # LATIN CAPITAL LETTER M 0x4E 0x004E # LATIN CAPITAL LETTER N 0x4F 0x004F # LATIN CAPITAL LETTER O 0x50 0x0050 # LATIN CAPITAL LETTER P 0x51 0x0051 # LATIN CAPITAL LETTER Q 0x52 0x0052 # LATIN CAPITAL LETTER R 0x53 0x0053 # LATIN CAPITAL LETTER S 0x54 0x0054 # LATIN CAPITAL LETTER T 0x55 0x0055 # LATIN CAPITAL LETTER U 0x56 0x0056 # LATIN CAPITAL LETTER V 0x57 0x0057 # LATIN CAPITAL LETTER W 0x58 0x0058 # LATIN CAPITAL LETTER X 0x59 0x0059 # LATIN CAPITAL LETTER Y 0x5A 0x005A # LATIN CAPITAL LETTER Z 0x5B 0x005B # LEFT SQUARE BRACKET 0x5C 0x005C # REVERSE SOLIDUS 0x5D 0x005D # RIGHT SQUARE BRACKET 0x5E 0x005E # CIRCUMFLEX ACCENT 0x5F 0x005F # LOW LINE 0x60 0x0060 # GRAVE ACCENT 0x61 0x0061 # LATIN SMALL LETTER A 0x62 0x0062 # LATIN SMALL LETTER B 0x63 0x0063 # LATIN SMALL LETTER C 0x64 0x0064 # LATIN SMALL LETTER D 0x65 0x0065 # LATIN SMALL LETTER E 0x66 0x0066 # LATIN SMALL LETTER F 0x67 0x0067 # LATIN SMALL LETTER G 0x68 0x0068 # LATIN SMALL LETTER H 0x69 0x0069 # LATIN SMALL LETTER I 0x6A 0x006A # LATIN SMALL LETTER J 0x6B 0x006B # LATIN SMALL LETTER K 0x6C 0x006C # LATIN SMALL LETTER L 0x6D 0x006D # LATIN SMALL LETTER M 0x6E 0x006E # LATIN SMALL LETTER N 0x6F 0x006F # LATIN SMALL LETTER O 0x70 0x0070 # LATIN SMALL LETTER P 0x71 0x0071 # LATIN SMALL LETTER Q 0x72 0x0072 # LATIN SMALL LETTER R 0x73 0x0073 # LATIN SMALL LETTER S 0x74 0x0074 # LATIN SMALL LETTER T 0x75 0x0075 # LATIN SMALL LETTER U 0x76 0x0076 # LATIN SMALL LETTER V 0x77 0x0077 # LATIN SMALL LETTER W 0x78 0x0078 # LATIN SMALL LETTER X 0x79 0x0079 # LATIN SMALL LETTER Y 0x7A 0x007A # LATIN SMALL LETTER Z 0x7B 0x007B # LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET 0x7E 0x007E # TILDE 0x7F 0x007F # DELETE (DEL) 0x80 0x0410 # CYRILLIC CAPITAL LETTER A 0x81 0x0411 # CYRILLIC CAPITAL LETTER BE 0x82 0x0412 # CYRILLIC CAPITAL LETTER VE 0x83 0x0413 # CYRILLIC CAPITAL LETTER GHE 0x84 0x0414 # CYRILLIC CAPITAL LETTER DE 0x85 0x0415 # CYRILLIC CAPITAL LETTER IE 0x86 0x0416 # CYRILLIC CAPITAL LETTER ZHE 0x87 0x0417 # CYRILLIC CAPITAL LETTER ZE 0x88 0x0418 # CYRILLIC CAPITAL LETTER I 0x89 0x0419 # CYRILLIC CAPITAL LETTER SHORT I 0x8A 0x041A # CYRILLIC CAPITAL LETTER KA 0x8B 0x041B # CYRILLIC CAPITAL LETTER EL 0x8C 0x041C # CYRILLIC CAPITAL LETTER EM 0x8D 0x041D # CYRILLIC CAPITAL LETTER EN 0x8E 0x041E # CYRILLIC CAPITAL LETTER O 0x8F 0x041F # CYRILLIC CAPITAL LETTER PE 0x90 0x0420 # CYRILLIC CAPITAL LETTER ER 0x91 0x0421 # CYRILLIC CAPITAL LETTER ES 0x92 0x0422 # CYRILLIC CAPITAL LETTER TE 0x93 0x0423 # CYRILLIC CAPITAL LETTER U 0x94 0x0424 # CYRILLIC CAPITAL LETTER EF 0x95 0x0425 # CYRILLIC CAPITAL LETTER HA 0x96 0x0426 # CYRILLIC CAPITAL LETTER TSE 0x97 0x0427 # CYRILLIC CAPITAL LETTER CHE 0x98 0x0428 # CYRILLIC CAPITAL LETTER SHA 0x99 0x0429 # CYRILLIC CAPITAL LETTER SHCHA 0x9A 0x042A # CYRILLIC CAPITAL LETTER HARD SIGN 0x9B 0x042B # CYRILLIC CAPITAL LETTER YERU 0x9C 0x042C # CYRILLIC CAPITAL LETTER SOFT SIGN 0x9D 0x042D # CYRILLIC CAPITAL LETTER E 0x9E 0x042E # CYRILLIC CAPITAL LETTER YU 0x9F 0x042F # CYRILLIC CAPITAL LETTER YA 0xA0 0x0430 # CYRILLIC SMALL LETTER A 0xA1 0x0431 # CYRILLIC SMALL LETTER BE 0xA2 0x0432 # CYRILLIC SMALL LETTER VE 0xA3 0x0433 # CYRILLIC SMALL LETTER GHE 0xA4 0x0434 # CYRILLIC SMALL LETTER DE 0xA5 0x0435 # CYRILLIC SMALL LETTER IE 0xA6 0x0436 # CYRILLIC SMALL LETTER ZHE 0xA7 0x0437 # CYRILLIC SMALL LETTER ZE 0xA8 0x0438 # CYRILLIC SMALL LETTER I 0xA9 0x0439 # CYRILLIC SMALL LETTER SHORT I 0xAA 0x043A # CYRILLIC SMALL LETTER KA 0xAB 0x043B # CYRILLIC SMALL LETTER EL 0xAC 0x043C # CYRILLIC SMALL LETTER EM 0xAD 0x043D # CYRILLIC SMALL LETTER EN 0xAE 0x043E # CYRILLIC SMALL LETTER O 0xAF 0x043F # CYRILLIC SMALL LETTER PE 0xB0 0x0440 # CYRILLIC SMALL LETTER ER 0xB1 0x0441 # CYRILLIC SMALL LETTER ES 0xB2 0x0442 # CYRILLIC SMALL LETTER TE 0xB3 0x0443 # CYRILLIC SMALL LETTER U 0xB4 0x0444 # CYRILLIC SMALL LETTER EF 0xB5 0x0445 # CYRILLIC SMALL LETTER HA 0xB6 0x0446 # CYRILLIC SMALL LETTER TSE 0xB7 0x0447 # CYRILLIC SMALL LETTER CHE 0xB8 0x0448 # CYRILLIC SMALL LETTER SHA 0xB9 0x0449 # CYRILLIC SMALL LETTER SHCHA 0xBA 0x044A # CYRILLIC SMALL LETTER HARD SIGN 0xBB 0x044B # CYRILLIC SMALL LETTER YERU 0xBC 0x044C # CYRILLIC SMALL LETTER SOFT SIGN 0xBD 0x044D # CYRILLIC SMALL LETTER E 0xBE 0x044E # CYRILLIC SMALL LETTER YU 0xBF 0x044F # CYRILLIC SMALL LETTER YA 0xC0 0x2514 # BOX DRAWINGS LIGHT UP AND RIGHT 0xC1 0x2534 # BOX DRAWINGS LIGHT UP AND HORIZONTAL 0xC2 0x252C # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL 0xC3 0x251C # BOX DRAWINGS LIGHT VERTICAL AND RIGHT 0xC4 0x2500 # BOX DRAWINGS LIGHT HORIZONTAL 0xC5 0x253C # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL 0xC6 0x2563 # BOX DRAWINGS DOUBLE VERTICAL AND LEFT 0xC7 0x2551 # BOX DRAWINGS DOUBLE VERTICAL 0xC8 0x255A # BOX DRAWINGS DOUBLE UP AND RIGHT 0xC9 0x2554 # BOX DRAWINGS DOUBLE DOWN AND RIGHT 0xCA 0x2569 # BOX DRAWINGS DOUBLE UP AND HORIZONTAL 0xCB 0x2566 # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL 0xCC 0x2560 # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT 0xCD 0x2550 # BOX DRAWINGS DOUBLE HORIZONTAL 0xCE 0x256C # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL 0xCF 0x2510 # BOX DRAWINGS LIGHT DOWN AND LEFT 0xD0 0x2591 # LIGHT SHADE 0xD1 0x2592 # MEDIUM SHADE 0xD2 0x2593 # DARK SHADE 0xD3 0x2502 # BOX DRAWINGS LIGHT VERTICAL 0xD4 0x2524 # BOX DRAWINGS LIGHT VERTICAL AND LEFT 0xD5 0x2116 # NUMERO SIGN 0xD6 0x00A7 # SECTION SIGN 0xD7 0x2557 # BOX DRAWINGS DOUBLE DOWN AND LEFT 0xD8 0x255D # BOX DRAWINGS DOUBLE UP AND LEFT 0xD9 0x2518 # BOX DRAWINGS LIGHT UP AND LEFT 0xDA 0x250C # BOX DRAWINGS LIGHT DOWN AND RIGHT 0xDB 0x2588 # FULL BLOCK 0xDC 0x2584 # LOWER HALF BLOCK 0xDD 0x258C # LEFT HALF BLOCK 0xDE 0x2590 # RIGHT HALF BLOCK 0xDF 0x2580 # UPPER HALF BLOCK 0xE0 0x03B1 # GREEK SMALL LETTER ALPHA 0xE1 0x00DF # LATIN SMALL LETTER SHARP S 0xE2 0x0393 # GREEK CAPITAL LETTER GAMMA 0xE3 0x03C0 # GREEK SMALL LETTER PI 0xE4 0x03A3 # GREEK CAPITAL LETTER SIGMA 0xE5 0x03C3 # GREEK SMALL LETTER SIGMA 0xE6 0x00B5 # MICRO SIGN 0xE7 0x03C4 # GREEK SMALL LETTER TAU 0xE8 0x03A6 # GREEK CAPITAL LETTER PHI 0xE9 0x0398 # GREEK CAPITAL LETTER THETA 0xEA 0x03A9 # GREEK CAPITAL LETTER OMEGA 0xEB 0x03B4 # GREEK SMALL LETTER DELTA 0xEC 0x221E # INFINITY 0xED 0x03C6 # GREEK SMALL LETTER PHI 0xEE 0x03B5 # GREEK SMALL LETTER EPSILON 0xEF 0x2229 # INTERSECTION 0xF0 0x2261 # IDENTICAL TO 0xF1 0x00B1 # PLUS-MINUS SIGN 0xF2 0x2265 # GREATER-THAN OR EQUAL TO 0xF3 0x2264 # LESS-THAN OR EQUAL TO 0xF4 0x2320 # TOP HALF INTEGRAL 0xF5 0x2321 # BOTTOM HALF INTEGRAL 0xF6 0x00F7 # DIVISION SIGN 0xF7 0x2248 # ALMOST EQUAL TO 0xF8 0x00B0 # DEGREE SIGN 0xF9 0x2219 # BULLET OPERATOR 0xFA 0x00B7 # MIDDLE DOT 0xFB 0x221A # SQUARE ROOT 0xFC 0x207F # SUPERSCRIPT LATIN SMALL LETTER N 0xFD 0x00B2 # SUPERSCRIPT TWO 0xFE 0x25A0 # BLACK SQUARE 0xFF 0x00A0 # NO-BREAK SPACE ./mytool/uni/iso-8859-8.my0000644000175000017500000004101007532460064015076 0ustar henrichhenrichYUDIT-UMAP 1.0iso-8859-8Ncreated by mytool 2002-03-30   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~./mytool/uni/koi8-r.txt0000644000175000017500000001243307532460064015036 0ustar henrichhenrich# # This file was generated by program from rfc1489 # 0x80 0x2500 # FORMS LIGHT HORIZONTAL 0x81 0x2502 # FORMS LIGHT VERTICAL 0x82 0x250c # FORMS LIGHT DOWN AND RIGHT 0x83 0x2510 # FORMS LIGHT DOWN AND LEFT 0x84 0x2514 # FORMS LIGHT UP AND RIGHT 0x85 0x2518 # FORMS LIGHT UP AND LEFT 0x86 0x251c # FORMS LIGHT VERTICAL AND RIGHT 0x87 0x2524 # FORMS LIGHT VERTICAL AND LEFT 0x88 0x252c # FORMS LIGHT DOWN AND HORIZONTAL 0x89 0x2534 # FORMS LIGHT UP AND HORIZONTAL 0x8a 0x253c # FORMS LIGHT VERTICAL AND HORIZONTAL 0x8b 0x2580 # UPPER HALF BLOCK 0x8c 0x2584 # LOWER HALF BLOCK 0x8d 0x2588 # FULL BLOCK 0x8e 0x258c # LEFT HALF BLOCK 0x8f 0x2590 # RIGHT HALF BLOCK 0x90 0x2591 # LIGHT SHADE 0x91 0x2592 # MEDIUM SHADE 0x92 0x2593 # DARK SHADE 0x93 0x2320 # TOP HALF INTEGRAL 0x94 0x25a0 # BLACK SMALL SQUARE 0x95 0x2219 # BULLET OPERATOR 0x96 0x221a # SQUARE ROOT 0x97 0x2248 # ALMOST EQUAL TO 0x98 0x2264 # LESS THAN OR EQUAL TO 0x99 0x2265 # GREATER THAN OR EQUAL TO 0x9a 0x00a0 # NON-BREAKING SPACE 0x9b 0x2321 # BOTTOM HALF INTEGRAL 0x9c 0x00b0 # DEGREE SIGN 0x9d 0x00b2 # SUPERSCRIPT DIGIT TWO 0x9e 0x00b7 # MIDDLE DOT 0x9f 0x00f7 # DIVISION SIGN 0xa0 0x2550 # FORMS DOUBLE HORIZONTAL 0xa1 0x2551 # FORMS DOUBLE VERTICAL 0xa2 0x2552 # FORMS DOWN SINGLE AND RIGHT DOUBLE 0xa3 0x0451 # CYRILLIC SMALL LETTER IO 0xa4 0x2553 # FORMS DOWN DOUBLE AND RIGHT SINGLE 0xa5 0x2554 # FORMS DOUBLE DOWN AND RIGHT 0xa6 0x2555 # FORMS DOWN SINGLE AND LEFT DOUBLE 0xa7 0x2556 # FORMS DOWN DOUBLE AND LEFT SINGLE 0xa8 0x2557 # FORMS DOUBLE DOWN AND LEFT 0xa9 0x2558 # FORMS UP SINGLE AND RIGHT DOUBLE 0xaa 0x2559 # FORMS UP DOUBLE AND RIGHT SINGLE 0xab 0x255a # FORMS DOUBLE UP AND RIGHT 0xac 0x255b # FORMS UP SINGLE AND LEFT DOUBLE 0xad 0x255c # FORMS UP DOUBLE AND LEFT SINGLE 0xae 0x255d # FORMS DOUBLE UP AND LEFT 0xaf 0x255e # FORMS VERTICAL SINGLE AND RIGHT DOUBLE 0xb0 0x255f # FORMS VERTICAL DOUBLE AND RIGHT SINGLE 0xb1 0x2560 # FORMS DOUBLE VERTICAL AND RIGHT 0xb2 0x2561 # FORMS VERTICAL SINGLE AND LEFT DOUBLE 0xb3 0x0401 # CYRILLIC CAPITAL LETTER IO 0xb4 0x2562 # FORMS VERTICAL DOUBLE AND LEFT SINGLE 0xb5 0x2563 # FORMS DOUBLE VERTICAL AND LEFT 0xb6 0x2564 # FORMS DOWN SINGLE AND HORIZONTAL DOUBLE 0xb7 0x2565 # FORMS DOWN DOUBLE AND HORIZONTAL SINGLE 0xb8 0x2566 # FORMS DOUBLE DOWN AND HORIZONTAL 0xb9 0x2567 # FORMS UP SINGLE AND HORIZONTAL DOUBLE 0xba 0x2568 # FORMS UP DOUBLE AND HORIZONTAL SINGLE 0xbb 0x2569 # FORMS DOUBLE UP AND HORIZONTAL 0xbc 0x256a # FORMS VERTICAL SINGLE AND HORIZONTAL DOUBLE 0xbd 0x256b # FORMS VERTICAL DOUBLE AND HORIZONTAL SINGLE 0xbe 0x256c # FORMS DOUBLE VERTICAL AND HORIZONTAL 0xbf 0x00a9 # COPYRIGHT SIGN 0xc0 0x044e # CYRILLIC SMALL LETTER IU 0xc1 0x0430 # CYRILLIC SMALL LETTER A 0xc2 0x0431 # CYRILLIC SMALL LETTER BE 0xc3 0x0446 # CYRILLIC SMALL LETTER TSE 0xc4 0x0434 # CYRILLIC SMALL LETTER DE 0xc5 0x0435 # CYRILLIC SMALL LETTER IE 0xc6 0x0444 # CYRILLIC SMALL LETTER EF 0xc7 0x0433 # CYRILLIC SMALL LETTER GE 0xc8 0x0445 # CYRILLIC SMALL LETTER KHA 0xc9 0x0438 # CYRILLIC SMALL LETTER II 0xca 0x0439 # CYRILLIC SMALL LETTER SHORT II 0xcb 0x043a # CYRILLIC SMALL LETTER KA 0xcc 0x043b # CYRILLIC SMALL LETTER EL 0xcd 0x043c # CYRILLIC SMALL LETTER EM 0xce 0x043d # CYRILLIC SMALL LETTER EN 0xcf 0x043e # CYRILLIC SMALL LETTER O 0xd0 0x043f # CYRILLIC SMALL LETTER PE 0xd1 0x044f # CYRILLIC SMALL LETTER IA 0xd2 0x0440 # CYRILLIC SMALL LETTER ER 0xd3 0x0441 # CYRILLIC SMALL LETTER ES 0xd4 0x0442 # CYRILLIC SMALL LETTER TE 0xd5 0x0443 # CYRILLIC SMALL LETTER U 0xd6 0x0436 # CYRILLIC SMALL LETTER ZHE 0xd7 0x0432 # CYRILLIC SMALL LETTER VE 0xd8 0x044c # CYRILLIC SMALL LETTER SOFT SIGN 0xd9 0x044b # CYRILLIC SMALL LETTER YERI 0xda 0x0437 # CYRILLIC SMALL LETTER ZE 0xdb 0x0448 # CYRILLIC SMALL LETTER SHA 0xdc 0x044d # CYRILLIC SMALL LETTER REVERSED E 0xdd 0x0449 # CYRILLIC SMALL LETTER SHCHA 0xde 0x0447 # CYRILLIC SMALL LETTER CHE 0xdf 0x044a # CYRILLIC SMALL LETTER HARD SIGN 0xe0 0x042e # CYRILLIC CAPITAL LETTER IU 0xe1 0x0410 # CYRILLIC CAPITAL LETTER A 0xe2 0x0411 # CYRILLIC CAPITAL LETTER BE 0xe3 0x0426 # CYRILLIC CAPITAL LETTER TSE 0xe4 0x0414 # CYRILLIC CAPITAL LETTER DE 0xe5 0x0415 # CYRILLIC CAPITAL LETTER IE 0xe6 0x0424 # CYRILLIC CAPITAL LETTER EF 0xe7 0x0413 # CYRILLIC CAPITAL LETTER GE 0xe8 0x0425 # CYRILLIC CAPITAL LETTER KHA 0xe9 0x0418 # CYRILLIC CAPITAL LETTER II 0xea 0x0419 # CYRILLIC CAPITAL LETTER SHORT II 0xeb 0x041a # CYRILLIC CAPITAL LETTER KA 0xec 0x041b # CYRILLIC CAPITAL LETTER EL 0xed 0x041c # CYRILLIC CAPITAL LETTER EM 0xee 0x041d # CYRILLIC CAPITAL LETTER EN 0xef 0x041e # CYRILLIC CAPITAL LETTER O 0xf0 0x041f # CYRILLIC CAPITAL LETTER PE 0xf1 0x042f # CYRILLIC CAPITAL LETTER IA 0xf2 0x0420 # CYRILLIC CAPITAL LETTER ER 0xf3 0x0421 # CYRILLIC CAPITAL LETTER ES 0xf4 0x0422 # CYRILLIC CAPITAL LETTER TE 0xf5 0x0423 # CYRILLIC CAPITAL LETTER U 0xf6 0x0416 # CYRILLIC CAPITAL LETTER ZHE 0xf7 0x0412 # CYRILLIC CAPITAL LETTER VE 0xf8 0x042c # CYRILLIC CAPITAL LETTER SOFT SIGN 0xf9 0x042b # CYRILLIC CAPITAL LETTER YERI 0xfa 0x0417 # CYRILLIC CAPITAL LETTER ZE 0xfb 0x0428 # CYRILLIC CAPITAL LETTER SHA 0xfc 0x042d # CYRILLIC CAPITAL LETTER REVERSED E 0xfd 0x0429 # CYRILLIC CAPITAL LETTER SHCHA 0xfe 0x0427 # CYRILLIC CAPITAL LETTER CHE 0xff 0x042a # CYRILLIC CAPITAL LETTER HARD SIGN ./mytool/uni/tcvn.txt0000644000175000017500000002720707532460064014704 0ustar henrichhenrich# Day la map file giua TCVN-5712 va Unicode (UTF8) # Toi phai lam no bang tay, that khung khiep :-( # Nguyen Thanh Bien # Khong can map 0x00 0x0000 !!!!! 0x01 0x00DA # LATIN CAPITAL LETTER U WITH ACUTE 0x02 0x1EE4 # LATIN CAPITAL LETTER U WITH DOT BELOW 0x03 0x0003 # END OF TEXT (ETX) 0x04 0x1EEA # LATIN CAPITAL LETTER U WITH HORN AND GRAVE 0x05 0x1EEC # LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE 0x06 0x1EEE # LATIN CAPITAL LETTER U WITH HORN AND TILDE 0x07 0x0007 # BELL (BEL) 0x08 0x0008 # BACKSPACE (BS) 0x09 0x0009 # CHARACTER TABULATION (HT) 0x0A 0x000A # LINE FEED (LF) 0x0B 0x000B # LINE TABULATION (VT) 0x0C 0x000C # FORM FEED (FF) 0x0D 0x000D # CARRIAGE RETURN (CR) 0x0E 0x000E # SHIFT OUT (SO) 0x0F 0x000F # SHIFT IN (SI) 0x10 0x0010 # DATALINK ESCAPE (DLE) 0x11 0x1EE8 # LATIN CAPITAL LETTER U WITH HORN AND ACUTE 0x12 0x1EF0 # LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW 0x13 0x1EF2 # LATIN CAPITAL LETTER Y WITH GRAVE 0x14 0x1EF6 # LATIN CAPITAL LETTER Y WITH HOOK ABOVE 0x15 0x1EF8 # LATIN CAPITAL LETTER Y WITH TILDE 0x16 0x00DD # LATIN CAPITAL LETTER Y WITH ACUTE 0x17 0x1EF4 # LATIN CAPITAL LETTER Y WITH DOT BELOW 0x18 0x0018 # CANCEL (CAN) 0x19 0x0019 # END OF MEDIUM (EM) 0x1A 0x001A # SUBSTITUTE (SUB) 0x1B 0x001B # ESCAPE (ESC) 0x1C 0x001C # FILE SEPARATOR (IS4) 0x1D 0x001D # GROUP SEPARATOR (IS3) 0x1E 0x001E # RECORD SEPARATOR (IS2) 0x1F 0x001F # UNIT SEPARATOR (IS1) 0x20 0x0020 # SPACE 0x21 0x0021 # EXCLAMATION MARK 0x22 0x0022 # QUOTATION MARK 0x23 0x0023 # NUMBER SIGN 0x24 0x0024 # DOLLAR SIGN 0x25 0x0025 # PERCENT SIGN 0x26 0x0026 # AMPERSAND 0x27 0x0027 # APOSTROPHE 0x28 0x0028 # LEFT PARENTHESIS 0x29 0x0029 # RIGHT PARENTHESIS 0x2A 0x002A # ASTERISK 0x2B 0x002B # PLUS SIGN 0x2C 0x002C # COMMA 0x2D 0x002D # HYPHEN-MINUS 0x2E 0x002E # FULL STOP 0x2F 0x002F # SOLIDUS 0x30 0x0030 # DIGIT ZERO 0x31 0x0031 # DIGIT ONE 0x32 0x0032 # DIGIT TWO 0x33 0x0033 # DIGIT THREE 0x34 0x0034 # DIGIT FOUR 0x35 0x0035 # DIGIT FIVE 0x36 0x0036 # DIGIT SIX 0x37 0x0037 # DIGIT SEVEN 0x38 0x0038 # DIGIT EIGHT 0x39 0x0039 # DIGIT NINE 0x3A 0x003A # COLON 0x3B 0x003B # SEMICOLON 0x3C 0x003C # LESS-THAN SIGN 0x3D 0x003D # EQUALS SIGN 0x3E 0x003E # GREATER-THAN SIGN 0x3F 0x003F # QUESTION MARK 0x40 0x0040 # COMMERCIAL AT 0x41 0x0041 # LATIN CAPITAL LETTER A 0x42 0x0042 # LATIN CAPITAL LETTER B 0x43 0x0043 # LATIN CAPITAL LETTER C 0x44 0x0044 # LATIN CAPITAL LETTER D 0x45 0x0045 # LATIN CAPITAL LETTER E 0x46 0x0046 # LATIN CAPITAL LETTER F 0x47 0x0047 # LATIN CAPITAL LETTER G 0x48 0x0048 # LATIN CAPITAL LETTER H 0x49 0x0049 # LATIN CAPITAL LETTER I 0x4A 0x004A # LATIN CAPITAL LETTER J 0x4B 0x004B # LATIN CAPITAL LETTER K 0x4C 0x004C # LATIN CAPITAL LETTER L 0x4D 0x004D # LATIN CAPITAL LETTER M 0x4E 0x004E # LATIN CAPITAL LETTER N 0x4F 0x004F # LATIN CAPITAL LETTER O 0x50 0x0050 # LATIN CAPITAL LETTER P 0x51 0x0051 # LATIN CAPITAL LETTER Q 0x52 0x0052 # LATIN CAPITAL LETTER R 0x53 0x0053 # LATIN CAPITAL LETTER S 0x54 0x0054 # LATIN CAPITAL LETTER T 0x55 0x0055 # LATIN CAPITAL LETTER U 0x56 0x0056 # LATIN CAPITAL LETTER V 0x57 0x0057 # LATIN CAPITAL LETTER W 0x58 0x0058 # LATIN CAPITAL LETTER X 0x59 0x0059 # LATIN CAPITAL LETTER Y 0x5A 0x005A # LATIN CAPITAL LETTER Z 0x5B 0x005B # LEFT SQUARE BRACKET 0x5C 0x005C # REVERSE SOLIDUS 0x5D 0x005D # RIGHT SQUARE BRACKET 0x5E 0x005E # CIRCUMFLEX ACCENT 0x5F 0x005F # LOW LINE 0x60 0x0060 # GRAVE ACCENT 0x61 0x0061 # LATIN SMALL LETTER A 0x62 0x0062 # LATIN SMALL LETTER B 0x63 0x0063 # LATIN SMALL LETTER C 0x64 0x0064 # LATIN SMALL LETTER D 0x65 0x0065 # LATIN SMALL LETTER E 0x66 0x0066 # LATIN SMALL LETTER F 0x67 0x0067 # LATIN SMALL LETTER G 0x68 0x0068 # LATIN SMALL LETTER H 0x69 0x0069 # LATIN SMALL LETTER I 0x6A 0x006A # LATIN SMALL LETTER J 0x6B 0x006B # LATIN SMALL LETTER K 0x6C 0x006C # LATIN SMALL LETTER L 0x6D 0x006D # LATIN SMALL LETTER M 0x6E 0x006E # LATIN SMALL LETTER N 0x6F 0x006F # LATIN SMALL LETTER O 0x70 0x0070 # LATIN SMALL LETTER P 0x71 0x0071 # LATIN SMALL LETTER Q 0x72 0x0072 # LATIN SMALL LETTER R 0x73 0x0073 # LATIN SMALL LETTER S 0x74 0x0074 # LATIN SMALL LETTER T 0x75 0x0075 # LATIN SMALL LETTER U 0x76 0x0076 # LATIN SMALL LETTER V 0x77 0x0077 # LATIN SMALL LETTER W 0x78 0x0078 # LATIN SMALL LETTER X 0x79 0x0079 # LATIN SMALL LETTER Y 0x7A 0x007A # LATIN SMALL LETTER Z 0x7B 0x007B # LEFT CURLY BRACKET 0x7C 0x007C # VERTICAL LINE 0x7D 0x007D # RIGHT CURLY BRACKET 0x7E 0x007E # TILDE 0x7F 0x007F # DELETE (DEL) 0x80 0x00C0 # LATIN CAPITAL LETTER A WITH GRAVE 0x81 0x1EA2 # LATIN CAPITAL LETTER A WITH HOOK ABOVE 0x82 0x00C3 # LATIN CAPITAL LETTER A WITH TILDE 0x83 0x00C1 # LATIN CAPITAL LETTER A WITH ACUTE 0x84 0x1EA0 # LATIN CAPITAL LETTER A WITH DOT BELOW 0x85 0x1EB6 # LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW 0x86 0x1EAC # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW 0x87 0x00C8 # LATIN CAPITAL LETTER E WITH GRAVE 0x88 0x1EBA # LATIN CAPITAL LETTER E WITH HOOK ABOVE 0x89 0x1EBC # LATIN CAPITAL LETTER E WITH TILDE 0x8A 0x00C9 # LATIN CAPITAL LETTER E WITH ACUTE 0x8B 0x1EB8 # LATIN CAPITAL LETTER E WITH DOT BELOW 0x8C 0x1EC6 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW 0x8D 0x00CC # LATIN CAPITAL LETTER I WITH GRAVE 0x8E 0x1EC8 # LATIN CAPITAL LETTER I WITH HOOK ABOVE 0x8F 0x0128 # LATIN CAPITAL LETTER I WITH TILDE 0x90 0x00CD # LATIN CAPITAL LETTER I WITH ACUTE 0x91 0x1ECA # LATIN CAPITAL LETTER I WITH DOT BELOW 0x92 0x00D2 # LATIN CAPITAL LETTER O WITH GRAVE 0x93 0x1ECE # LATIN CAPITAL LETTER O WITH HOOK ABOVE 0x94 0x00D5 # LATIN CAPITAL LETTER O WITH TILDE 0x95 0x00D3 # LATIN CAPITAL LETTER O WITH ACUTE 0x96 0x1ECC # LATIN CAPITAL LETTER O WITH DOT BELOW 0x97 0x1ED8 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW 0x98 0x1EDC # LATIN CAPITAL LETTER O WITH HORN AND GRAVE 0x99 0x1EDE # LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE 0x9A 0x1EE0 # LATIN CAPITAL LETTER O WITH HORN AND TILDE 0x9B 0x1EDA # LATIN CAPITAL LETTER O WITH HORN AND ACUTE 0x9C 0x1EE2 # LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW 0x9D 0x00D9 # LATIN CAPITAL LETTER U WITH GRAVE 0x9E 0x1EE6 # LATIN CAPITAL LETTER U WITH HOOK ABOVE 0x9F 0x0168 # LATIN CAPITAL LETTER U WITH TILDE 0xA0 0x00A0 # NO-BREAK SPACE 0xA1 0x0102 # LATIN CAPITAL LETTER A WITH BREVE 0xA2 0x00C2 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX 0xA3 0x00CA # LATIN CAPITAL LETTER E WITH CIRCUMFLEX 0xA4 0x00D4 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX 0xA5 0x01A0 # LATIN CAPITAL LETTER O WITH HOOK 0xA6 0x01AF # LATIN CAPITAL LETTER U WITH HORN 0xA7 0x0110 # LATIN CAPITAL LETTER D WITH STROKE 0xA8 0x0103 # LATIN SMALL LETTER A WITH BREVE 0xA9 0x00E2 # LATIN SMALL LETTER A WITH CIRCUMFLEX 0xAA 0x00EA # LATIN SMALL LETTER E WITH CIRCUMFLEX 0xAB 0x00F4 # LATIN SMALL LETTER O WITH CIRCUMFLEX 0xAC 0x01A1 # LATIN SMALL LETTER O WITH HOOK 0xAD 0x01B0 # LATIN SMALL LETTER U WITH HORN 0xAE 0x0111 # LATIN SMALL LETTER D WITH STROKE 0xAF 0x1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE 0xB0 0x0300 # COMBINING GRAVE ACCENT 0xB1 0x0309 # COMBINING HOOK ABOVE 0xB2 0x0303 # COMBINING TILDE 0xB3 0x0301 # COMBINING ACUTE ACCENT 0xB4 0x0323 # COMBINING DOT BELOW 0xB5 0x00E0 # LATIN SMALL LETTER A WITH GRAVE 0xB6 0x1EA3 # LATIN SMALL LETTER A WITH HOOK ABOVE 0xB7 0x00E3 # LATIN SMALL LETTER A WITH TILDE 0xB8 0x00E1 # LATIN SMALL LETTER A WITH ACUTE 0xB9 0x1EA1 # LATIN SMALL LETTER A WITH DOT BELOW 0xBA 0x1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE 0xBB 0x1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE 0xBC 0x1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE 0xBD 0x1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE 0xBE 0x1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE 0xBF 0x1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE 0xC0 0x1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE 0xC1 0x1EA6 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE 0xC2 0x1EA8 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 0xC3 0x1EAA # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE 0xC4 0x1EA4 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE 0xC5 0x1EC0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE 0xC6 0x1EB7 # LATIN SMALL LETTER A WITH BREVE AND DOT BELOW 0xC7 0x1EA7 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE 0xC8 0x1EA9 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 0xC9 0x1EAB # LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE 0xCA 0x1EA5 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE 0xCB 0x1EAD # LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW 0xCC 0x00E8 # LATIN SMALL LETTER E WITH GRAVE 0xCD 0x1EC2 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 0xCE 0x1EBB # LATIN SMALL LETTER E WITH HOOK ABOVE 0xCF 0x1EBD # LATIN SMALL LETTER E WITH TILDE 0xD0 0x00E9 # LATIN SMALL LETTER E WITH ACUTE 0xD1 0x1EB9 # LATIN SMALL LETTER E WITH DOT BELOW 0xD2 0x1EC1 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE 0xD3 0x1EC3 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 0xD4 0x1EC5 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE 0xD5 0x1EBF # LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE 0xD6 0x1EC7 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW 0xD7 0x00EC # LATIN SMALL LETTER I WITH GRAVE 0xD8 0x1EC9 # LATIN SMALL LETTER I WITH HOOK ABOVE 0xD9 0x1EC4 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE 0xDA 0x1EBE # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE 0xDB 0x1ED2 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE 0xDC 0x0129 # LATIN SMALL LETTER I WITH TILDE 0xDD 0x00ED # LATIN SMALL LETTER I WITH ACUTE 0xDE 0x1ECB # LATIN SMALL LETTER I WITH DOT BELOW 0xDF 0x00F2 # LATIN SMALL LETTER O WITH GRAVE 0xE0 0x1ED4 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 0xE1 0x1ECF # LATIN SMALL LETTER O WITH HOOK ABOVE 0xE2 0x00F5 # LATIN SMALL LETTER O WITH TILDE 0xE3 0x00F3 # LATIN SMALL LETTER O WITH ACUTE 0xE4 0x1ECD # LATIN SMALL LETTER O WITH DOT BELOW 0xE5 0x1ED3 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE 0xE6 0x1ED5 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 0xE7 0x1ED7 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE 0xE8 0x1ED1 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE 0xE9 0x1ED9 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW 0xEA 0x1EDD # LATIN SMALL LETTER O WITH HORN AND GRAVE 0xEB 0x1EDF # LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE 0xEC 0x1EE1 # LATIN SMALL LETTER O WITH HORN AND TILDE 0xED 0x1EDB # LATIN SMALL LETTER O WITH HORN AND ACUTE 0xEE 0x1EE3 # LATIN SMALL LETTER O WITH HORN AND DOT BELOW 0xEF 0x00F9 # LATIN SMALL LETTER U WITH GRAVE 0xF0 0x1ED6 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE 0xF1 0x1EE7 # LATIN SMALL LETTER U WITH HOOK ABOVE 0xF2 0x0169 # LATIN SMALL LETTER U WITH TILDE 0xF3 0x00FA # LATIN SMALL LETTER U WITH ACUTE 0xF4 0x1EE5 # LATIN SMALL LETTER U WITH DOT BELOW 0xF5 0x1EEB # LATIN SMALL LETTER U WITH HORN AND GRAVE 0xF6 0x1EED # LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE 0xF7 0x1EEF # LATIN SMALL LETTER U WITH HORN AND TILDE 0xF8 0x1EE9 # LATIN SMALL LETTER U WITH HORN AND ACUTE 0xF9 0x1EF1 # LATIN SMALL LETTER U WITH HORN AND DOT BELOW 0xFA 0x1EF3 # LATIN SMALL LETTER Y WITH GRAVE 0xFB 0x1EF7 # LATIN SMALL LETTER Y WITH HOOK ABOVE 0xFC 0x1EF9 # LATIN SMALL LETTER Y WITH TILDE 0xFD 0x00FD # LATIN SMALL LETTER Y WITH ACUTE 0xFE 0x1EF5 # LATIN SMALL LETTER Y WITH DOT BELOW 0xFF 0x1ED0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE ./mytool/uni/category.patch1.txt0000644000175000017500000000166307532460064016724 0ustar henrichhenrichThis patch sould be applied after autogeneration of mytool/uni/category.txt. Miikka: 0B83 (Tamil visarga) should be changed from "Mc" (0x05) to "Lo" (0x13), as specified in http://www.unicode.org/unicode/uni2errata/UnicodeErrata.html 2001-01-10 *** category.txt- Thu Jan 3 15:39:22 2002 --- category.txt Thu Jan 10 09:29:39 2002 *************** *** 1,4 **** --- 1,6 ---- # # generated by ./generalCategory.pl 2001-12-03 + # Patches applied after autogeneration: + # category.pacth1.txt 2002-01-10 reported by Miikka # # from ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt *************** *** 2110,2114 **** 0x1E 0x0B70 0x04 0x0B82 ! 0x05 0x0B83 0x13 0x0B85 0x13 0x0B86 --- 2112,2119 ---- 0x1E 0x0B70 0x04 0x0B82 ! # 0B83 (Tamil visarga) should be changed from "Mc" (0x05) to ! # "Lo" (0x13), as specified in ! #http://www.unicode.org/unicode/uni2errata/UnicodeErrata.html ! 0x13 0x0B83 0x13 0x0B85 0x13 0x0B86 ./mytool/mys/0000755000175000017500000000000011334661073013174 5ustar henrichhenrich./mytool/mys/jis-0213-2.mys0000644000175000017500000017722507574146574015272 0ustar henrichhenrichNAME=jis-0213-2.mys TYPE=0 SECTION=decode ENCODE=0 KEY_WIDTH=1 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 2121 -> 00020089 # 2-1-1 2122 -> 00004E02 # 2-1-2 2123 -> 00004E0F # 2-1-3 2124 -> 00004E12 # 2-1-4 2125 -> 00004E29 # 2-1-5 2126 -> 00004E2B # 2-1-6 2127 -> 00004E2E # 2-1-7 2128 -> 00004E40 # 2-1-8 2129 -> 00004E47 # 2-1-9 212A -> 00004E48 # 2-1-10 212B -> 000200A2 # 2-1-11 212C -> 00004E51 # 2-1-12 212D -> 00003406 # 2-1-13 212E -> 000200A4 # 2-1-14 212F -> 00004E5A # 2-1-15 2130 -> 00004E69 # 2-1-16 2131 -> 00004E9D # 2-1-17 2132 -> 0000342C # 2-1-18 2133 -> 0000342E # 2-1-19 2134 -> 00004EB9 # 2-1-20 2135 -> 00004EBB # 2-1-21 2136 -> 000201A2 # 2-1-22 2137 -> 00004EBC # 2-1-23 2138 -> 00004EC3 # 2-1-24 2139 -> 00004EC8 # 2-1-25 213A -> 00004ED0 # 2-1-26 213B -> 00004EEB # 2-1-27 213C -> 00004EDA # 2-1-28 213D -> 00004EF1 # 2-1-29 213E -> 00004EF5 # 2-1-30 213F -> 00004F00 # 2-1-31 2140 -> 00004F16 # 2-1-32 2141 -> 00004F64 # 2-1-33 2142 -> 00004F37 # 2-1-34 2143 -> 00004F3E # 2-1-35 2144 -> 00004F54 # 2-1-36 2145 -> 00004F58 # 2-1-37 2146 -> 00020213 # 2-1-38 2147 -> 00004F77 # 2-1-39 2148 -> 00004F78 # 2-1-40 2149 -> 00004F7A # 2-1-41 214A -> 00004F7D # 2-1-42 214B -> 00004F82 # 2-1-43 214C -> 00004F85 # 2-1-44 214D -> 00004F92 # 2-1-45 214E -> 00004F9A # 2-1-46 214F -> 00004FE6 # 2-1-47 2150 -> 00004FB2 # 2-1-48 2151 -> 00004FBE # 2-1-49 2152 -> 00004FC5 # 2-1-50 2153 -> 00004FCB # 2-1-51 2154 -> 00004FCF # 2-1-52 2155 -> 00004FD2 # 2-1-53 2156 -> 0000346A # 2-1-54 2157 -> 00004FF2 # 2-1-55 2158 -> 00005000 # 2-1-56 2159 -> 00005010 # 2-1-57 215A -> 00005013 # 2-1-58 215B -> 0000501C # 2-1-59 215C -> 0000501E # 2-1-60 215D -> 00005022 # 2-1-61 215E -> 00003468 # 2-1-62 215F -> 00005042 # 2-1-63 2160 -> 00005046 # 2-1-64 2161 -> 0000504E # 2-1-65 2162 -> 00005053 # 2-1-66 2163 -> 00005057 # 2-1-67 2164 -> 00005063 # 2-1-68 2165 -> 00005066 # 2-1-69 2166 -> 0000506A # 2-1-70 2167 -> 00005070 # 2-1-71 2168 -> 000050A3 # 2-1-72 2169 -> 00005088 # 2-1-73 216A -> 00005092 # 2-1-74 216B -> 00005093 # 2-1-75 216C -> 00005095 # 2-1-76 216D -> 00005096 # 2-1-77 216E -> 0000509C # 2-1-78 216F -> 000050AA # 2-1-79 2170 -> 0002032B # 2-1-80 2171 -> 000050B1 # 2-1-81 2172 -> 000050BA # 2-1-82 2173 -> 000050BB # 2-1-83 2174 -> 000050C4 # 2-1-84 2175 -> 000050C7 # 2-1-85 2176 -> 000050F3 # 2-1-86 2177 -> 00020381 # 2-1-87 2178 -> 000050CE # 2-1-88 2179 -> 00020371 # 2-1-89 217A -> 000050D4 # 2-1-90 217B -> 000050D9 # 2-1-91 217C -> 000050E1 # 2-1-92 217D -> 000050E9 # 2-1-93 217E -> 00003492 # 2-1-94 2321 -> 00005108 # 2-3-1 2322 -> 000203F9 # 2-3-2 2323 -> 00005117 # 2-3-3 2324 -> 0000511B # 2-3-4 2325 -> 0002044A # 2-3-5 2326 -> 00005160 # 2-3-6 2327 -> 00020509 # 2-3-7 2328 -> 00005173 # 2-3-8 2329 -> 00005183 # 2-3-9 232A -> 0000518B # 2-3-10 232B -> 000034BC # 2-3-11 232C -> 00005198 # 2-3-12 232D -> 000051A3 # 2-3-13 232E -> 000051AD # 2-3-14 232F -> 000034C7 # 2-3-15 2330 -> 000051BC # 2-3-16 2331 -> 000205D6 # 2-3-17 2332 -> 00020628 # 2-3-18 2333 -> 000051F3 # 2-3-19 2334 -> 000051F4 # 2-3-20 2335 -> 00005202 # 2-3-21 2336 -> 00005212 # 2-3-22 2337 -> 00005216 # 2-3-23 2338 -> 0002074F # 2-3-24 2339 -> 00005255 # 2-3-25 233A -> 0000525C # 2-3-26 233B -> 0000526C # 2-3-27 233C -> 00005277 # 2-3-28 233D -> 00005284 # 2-3-29 233E -> 00005282 # 2-3-30 233F -> 00020807 # 2-3-31 2340 -> 00005298 # 2-3-32 2341 -> 0002083A # 2-3-33 2342 -> 000052A4 # 2-3-34 2343 -> 000052A6 # 2-3-35 2344 -> 000052AF # 2-3-36 2345 -> 000052BA # 2-3-37 2346 -> 000052BB # 2-3-38 2347 -> 000052CA # 2-3-39 2348 -> 0000351F # 2-3-40 2349 -> 000052D1 # 2-3-41 234A -> 000208B9 # 2-3-42 234B -> 000052F7 # 2-3-43 234C -> 0000530A # 2-3-44 234D -> 0000530B # 2-3-45 234E -> 00005324 # 2-3-46 234F -> 00005335 # 2-3-47 2350 -> 0000533E # 2-3-48 2351 -> 00005342 # 2-3-49 2352 -> 0002097C # 2-3-50 2353 -> 0002099D # 2-3-51 2354 -> 00005367 # 2-3-52 2355 -> 0000536C # 2-3-53 2356 -> 0000537A # 2-3-54 2357 -> 000053A4 # 2-3-55 2358 -> 000053B4 # 2-3-56 2359 -> 00020AD3 # 2-3-57 235A -> 000053B7 # 2-3-58 235B -> 000053C0 # 2-3-59 235C -> 00020B1D # 2-3-60 235D -> 0000355D # 2-3-61 235E -> 0000355E # 2-3-62 235F -> 000053D5 # 2-3-63 2360 -> 000053DA # 2-3-64 2361 -> 00003563 # 2-3-65 2362 -> 000053F4 # 2-3-66 2363 -> 000053F5 # 2-3-67 2364 -> 00005455 # 2-3-68 2365 -> 00005424 # 2-3-69 2366 -> 00005428 # 2-3-70 2367 -> 0000356E # 2-3-71 2368 -> 00005443 # 2-3-72 2369 -> 00005462 # 2-3-73 236A -> 00005466 # 2-3-74 236B -> 0000546C # 2-3-75 236C -> 0000548A # 2-3-76 236D -> 0000548D # 2-3-77 236E -> 00005495 # 2-3-78 236F -> 000054A0 # 2-3-79 2370 -> 000054A6 # 2-3-80 2371 -> 000054AD # 2-3-81 2372 -> 000054AE # 2-3-82 2373 -> 000054B7 # 2-3-83 2374 -> 000054BA # 2-3-84 2375 -> 000054BF # 2-3-85 2376 -> 000054C3 # 2-3-86 2377 -> 00020D45 # 2-3-87 2378 -> 000054EC # 2-3-88 2379 -> 000054EF # 2-3-89 237A -> 000054F1 # 2-3-90 237B -> 000054F3 # 2-3-91 237C -> 00005500 # 2-3-92 237D -> 00005501 # 2-3-93 237E -> 00005509 # 2-3-94 2421 -> 0000553C # 2-4-1 2422 -> 00005541 # 2-4-2 2423 -> 000035A6 # 2-4-3 2424 -> 00005547 # 2-4-4 2425 -> 0000554A # 2-4-5 2426 -> 000035A8 # 2-4-6 2427 -> 00005560 # 2-4-7 2428 -> 00005561 # 2-4-8 2429 -> 00005564 # 2-4-9 242A -> 00020DE1 # 2-4-10 242B -> 0000557D # 2-4-11 242C -> 00005582 # 2-4-12 242D -> 00005588 # 2-4-13 242E -> 00005591 # 2-4-14 242F -> 000035C5 # 2-4-15 2430 -> 000055D2 # 2-4-16 2431 -> 00020E95 # 2-4-17 2432 -> 00020E6D # 2-4-18 2433 -> 000055BF # 2-4-19 2434 -> 000055C9 # 2-4-20 2435 -> 000055CC # 2-4-21 2436 -> 000055D1 # 2-4-22 2437 -> 000055DD # 2-4-23 2438 -> 000035DA # 2-4-24 2439 -> 000055E2 # 2-4-25 243A -> 00020E64 # 2-4-26 243B -> 000055E9 # 2-4-27 243C -> 00005628 # 2-4-28 243D -> 00020F5F # 2-4-29 243E -> 00005607 # 2-4-30 243F -> 00005610 # 2-4-31 2440 -> 00005630 # 2-4-32 2441 -> 00005637 # 2-4-33 2442 -> 000035F4 # 2-4-34 2443 -> 0000563D # 2-4-35 2444 -> 0000563F # 2-4-36 2445 -> 00005640 # 2-4-37 2446 -> 00005647 # 2-4-38 2447 -> 0000565E # 2-4-39 2448 -> 00005660 # 2-4-40 2449 -> 0000566D # 2-4-41 244A -> 00003605 # 2-4-42 244B -> 00005688 # 2-4-43 244C -> 0000568C # 2-4-44 244D -> 00005695 # 2-4-45 244E -> 0000569A # 2-4-46 244F -> 0000569D # 2-4-47 2450 -> 000056A8 # 2-4-48 2451 -> 000056AD # 2-4-49 2452 -> 000056B2 # 2-4-50 2453 -> 000056C5 # 2-4-51 2454 -> 000056CD # 2-4-52 2455 -> 000056DF # 2-4-53 2456 -> 000056E8 # 2-4-54 2457 -> 000056F6 # 2-4-55 2458 -> 000056F7 # 2-4-56 2459 -> 00021201 # 2-4-57 245A -> 00005715 # 2-4-58 245B -> 00005723 # 2-4-59 245C -> 00021255 # 2-4-60 245D -> 00005729 # 2-4-61 245E -> 0002127B # 2-4-62 245F -> 00005745 # 2-4-63 2460 -> 00005746 # 2-4-64 2461 -> 0000574C # 2-4-65 2462 -> 0000574D # 2-4-66 2463 -> 00021274 # 2-4-67 2464 -> 00005768 # 2-4-68 2465 -> 0000576F # 2-4-69 2466 -> 00005773 # 2-4-70 2467 -> 00005774 # 2-4-71 2468 -> 00005775 # 2-4-72 2469 -> 0000577B # 2-4-73 246A -> 000212E4 # 2-4-74 246B -> 000212D7 # 2-4-75 246C -> 000057AC # 2-4-76 246D -> 0000579A # 2-4-77 246E -> 0000579D # 2-4-78 246F -> 0000579E # 2-4-79 2470 -> 000057A8 # 2-4-80 2471 -> 000057D7 # 2-4-81 2472 -> 000212FD # 2-4-82 2473 -> 000057CC # 2-4-83 2474 -> 00021336 # 2-4-84 2475 -> 00021344 # 2-4-85 2476 -> 000057DE # 2-4-86 2477 -> 000057E6 # 2-4-87 2478 -> 000057F0 # 2-4-88 2479 -> 0000364A # 2-4-89 247A -> 000057F8 # 2-4-90 247B -> 000057FB # 2-4-91 247C -> 000057FD # 2-4-92 247D -> 00005804 # 2-4-93 247E -> 0000581E # 2-4-94 2521 -> 00005820 # 2-5-1 2522 -> 00005827 # 2-5-2 2523 -> 00005832 # 2-5-3 2524 -> 00005839 # 2-5-4 2525 -> 000213C4 # 2-5-5 2526 -> 00005849 # 2-5-6 2527 -> 0000584C # 2-5-7 2528 -> 00005867 # 2-5-8 2529 -> 0000588A # 2-5-9 252A -> 0000588B # 2-5-10 252B -> 0000588D # 2-5-11 252C -> 0000588F # 2-5-12 252D -> 00005890 # 2-5-13 252E -> 00005894 # 2-5-14 252F -> 0000589D # 2-5-15 2530 -> 000058AA # 2-5-16 2531 -> 000058B1 # 2-5-17 2532 -> 0002146D # 2-5-18 2533 -> 000058C3 # 2-5-19 2534 -> 000058CD # 2-5-20 2535 -> 000058E2 # 2-5-21 2536 -> 000058F3 # 2-5-22 2537 -> 000058F4 # 2-5-23 2538 -> 00005905 # 2-5-24 2539 -> 00005906 # 2-5-25 253A -> 0000590B # 2-5-26 253B -> 0000590D # 2-5-27 253C -> 00005914 # 2-5-28 253D -> 00005924 # 2-5-29 253E -> 000215D7 # 2-5-30 253F -> 00003691 # 2-5-31 2540 -> 0000593D # 2-5-32 2541 -> 00003699 # 2-5-33 2542 -> 00005946 # 2-5-34 2543 -> 00003696 # 2-5-35 2544 -> 00026C29 # 2-5-36 2545 -> 0000595B # 2-5-37 2546 -> 0000595F # 2-5-38 2547 -> 00021647 # 2-5-39 2548 -> 00005975 # 2-5-40 2549 -> 00005976 # 2-5-41 254A -> 0000597C # 2-5-42 254B -> 0000599F # 2-5-43 254C -> 000059AE # 2-5-44 254D -> 000059BC # 2-5-45 254E -> 000059C8 # 2-5-46 254F -> 000059CD # 2-5-47 2550 -> 000059DE # 2-5-48 2551 -> 000059E3 # 2-5-49 2552 -> 000059E4 # 2-5-50 2553 -> 000059E7 # 2-5-51 2554 -> 000059EE # 2-5-52 2555 -> 00021706 # 2-5-53 2556 -> 00021742 # 2-5-54 2557 -> 000036CF # 2-5-55 2558 -> 00005A0C # 2-5-56 2559 -> 00005A0D # 2-5-57 255A -> 00005A17 # 2-5-58 255B -> 00005A27 # 2-5-59 255C -> 00005A2D # 2-5-60 255D -> 00005A55 # 2-5-61 255E -> 00005A65 # 2-5-62 255F -> 00005A7A # 2-5-63 2560 -> 00005A8B # 2-5-64 2561 -> 00005A9C # 2-5-65 2562 -> 00005A9F # 2-5-66 2563 -> 00005AA0 # 2-5-67 2564 -> 00005AA2 # 2-5-68 2565 -> 00005AB1 # 2-5-69 2566 -> 00005AB3 # 2-5-70 2567 -> 00005AB5 # 2-5-71 2568 -> 00005ABA # 2-5-72 2569 -> 00005ABF # 2-5-73 256A -> 00005ADA # 2-5-74 256B -> 00005ADC # 2-5-75 256C -> 00005AE0 # 2-5-76 256D -> 00005AE5 # 2-5-77 256E -> 00005AF0 # 2-5-78 256F -> 00005AEE # 2-5-79 2570 -> 00005AF5 # 2-5-80 2571 -> 00005B00 # 2-5-81 2572 -> 00005B08 # 2-5-82 2573 -> 00005B17 # 2-5-83 2574 -> 00005B34 # 2-5-84 2575 -> 00005B2D # 2-5-85 2576 -> 00005B4C # 2-5-86 2577 -> 00005B52 # 2-5-87 2578 -> 00005B68 # 2-5-88 2579 -> 00005B6F # 2-5-89 257A -> 00005B7C # 2-5-90 257B -> 00005B7F # 2-5-91 257C -> 00005B81 # 2-5-92 257D -> 00005B84 # 2-5-93 257E -> 000219C3 # 2-5-94 2821 -> 00005B96 # 2-8-1 2822 -> 00005BAC # 2-8-2 2823 -> 00003761 # 2-8-3 2824 -> 00005BC0 # 2-8-4 2825 -> 00003762 # 2-8-5 2826 -> 00005BCE # 2-8-6 2827 -> 00005BD6 # 2-8-7 2828 -> 0000376C # 2-8-8 2829 -> 0000376B # 2-8-9 282A -> 00005BF1 # 2-8-10 282B -> 00005BFD # 2-8-11 282C -> 00003775 # 2-8-12 282D -> 00005C03 # 2-8-13 282E -> 00005C29 # 2-8-14 282F -> 00005C30 # 2-8-15 2830 -> 00021C56 # 2-8-16 2831 -> 00005C5F # 2-8-17 2832 -> 00005C63 # 2-8-18 2833 -> 00005C67 # 2-8-19 2834 -> 00005C68 # 2-8-20 2835 -> 00005C69 # 2-8-21 2836 -> 00005C70 # 2-8-22 2837 -> 00021D2D # 2-8-23 2838 -> 00021D45 # 2-8-24 2839 -> 00005C7C # 2-8-25 283A -> 00021D78 # 2-8-26 283B -> 00021D62 # 2-8-27 283C -> 00005C88 # 2-8-28 283D -> 00005C8A # 2-8-29 283E -> 000037C1 # 2-8-30 283F -> 00021DA1 # 2-8-31 2840 -> 00021D9C # 2-8-32 2841 -> 00005CA0 # 2-8-33 2842 -> 00005CA2 # 2-8-34 2843 -> 00005CA6 # 2-8-35 2844 -> 00005CA7 # 2-8-36 2845 -> 00021D92 # 2-8-37 2846 -> 00005CAD # 2-8-38 2847 -> 00005CB5 # 2-8-39 2848 -> 00021DB7 # 2-8-40 2849 -> 00005CC9 # 2-8-41 284A -> 00021DE0 # 2-8-42 284B -> 00021E33 # 2-8-43 284C -> 00005D06 # 2-8-44 284D -> 00005D10 # 2-8-45 284E -> 00005D2B # 2-8-46 284F -> 00005D1D # 2-8-47 2850 -> 00005D20 # 2-8-48 2851 -> 00005D24 # 2-8-49 2852 -> 00005D26 # 2-8-50 2853 -> 00005D31 # 2-8-51 2854 -> 00005D39 # 2-8-52 2855 -> 00005D42 # 2-8-53 2856 -> 000037E8 # 2-8-54 2857 -> 00005D61 # 2-8-55 2858 -> 00005D6A # 2-8-56 2859 -> 000037F4 # 2-8-57 285A -> 00005D70 # 2-8-58 285B -> 00021F1E # 2-8-59 285C -> 000037FD # 2-8-60 285D -> 00005D88 # 2-8-61 285E -> 00003800 # 2-8-62 285F -> 00005D92 # 2-8-63 2860 -> 00005D94 # 2-8-64 2861 -> 00005D97 # 2-8-65 2862 -> 00005D99 # 2-8-66 2863 -> 00005DB0 # 2-8-67 2864 -> 00005DB2 # 2-8-68 2865 -> 00005DB4 # 2-8-69 2866 -> 00021F76 # 2-8-70 2867 -> 00005DB9 # 2-8-71 2868 -> 00005DD1 # 2-8-72 2869 -> 00005DD7 # 2-8-73 286A -> 00005DD8 # 2-8-74 286B -> 00005DE0 # 2-8-75 286C -> 00021FFA # 2-8-76 286D -> 00005DE4 # 2-8-77 286E -> 00005DE9 # 2-8-78 286F -> 0000382F # 2-8-79 2870 -> 00005E00 # 2-8-80 2871 -> 00003836 # 2-8-81 2872 -> 00005E12 # 2-8-82 2873 -> 00005E15 # 2-8-83 2874 -> 00003840 # 2-8-84 2875 -> 00005E1F # 2-8-85 2876 -> 00005E2E # 2-8-86 2877 -> 00005E3E # 2-8-87 2878 -> 00005E49 # 2-8-88 2879 -> 0000385C # 2-8-89 287A -> 00005E56 # 2-8-90 287B -> 00003861 # 2-8-91 287C -> 00005E6B # 2-8-92 287D -> 00005E6C # 2-8-93 287E -> 00005E6D # 2-8-94 2C21 -> 00005E6E # 2-12-1 2C22 -> 0002217B # 2-12-2 2C23 -> 00005EA5 # 2-12-3 2C24 -> 00005EAA # 2-12-4 2C25 -> 00005EAC # 2-12-5 2C26 -> 00005EB9 # 2-12-6 2C27 -> 00005EBF # 2-12-7 2C28 -> 00005EC6 # 2-12-8 2C29 -> 00005ED2 # 2-12-9 2C2A -> 00005ED9 # 2-12-10 2C2B -> 0002231E # 2-12-11 2C2C -> 00005EFD # 2-12-12 2C2D -> 00005F08 # 2-12-13 2C2E -> 00005F0E # 2-12-14 2C2F -> 00005F1C # 2-12-15 2C30 -> 000223AD # 2-12-16 2C31 -> 00005F1E # 2-12-17 2C32 -> 00005F47 # 2-12-18 2C33 -> 00005F63 # 2-12-19 2C34 -> 00005F72 # 2-12-20 2C35 -> 00005F7E # 2-12-21 2C36 -> 00005F8F # 2-12-22 2C37 -> 00005FA2 # 2-12-23 2C38 -> 00005FA4 # 2-12-24 2C39 -> 00005FB8 # 2-12-25 2C3A -> 00005FC4 # 2-12-26 2C3B -> 000038FA # 2-12-27 2C3C -> 00005FC7 # 2-12-28 2C3D -> 00005FCB # 2-12-29 2C3E -> 00005FD2 # 2-12-30 2C3F -> 00005FD3 # 2-12-31 2C40 -> 00005FD4 # 2-12-32 2C41 -> 00005FE2 # 2-12-33 2C42 -> 00005FEE # 2-12-34 2C43 -> 00005FEF # 2-12-35 2C44 -> 00005FF3 # 2-12-36 2C45 -> 00005FFC # 2-12-37 2C46 -> 00003917 # 2-12-38 2C47 -> 00006017 # 2-12-39 2C48 -> 00006022 # 2-12-40 2C49 -> 00006024 # 2-12-41 2C4A -> 0000391A # 2-12-42 2C4B -> 0000604C # 2-12-43 2C4C -> 0000607F # 2-12-44 2C4D -> 0000608A # 2-12-45 2C4E -> 00006095 # 2-12-46 2C4F -> 000060A8 # 2-12-47 2C50 -> 000226F3 # 2-12-48 2C51 -> 000060B0 # 2-12-49 2C52 -> 000060B1 # 2-12-50 2C53 -> 000060BE # 2-12-51 2C54 -> 000060C8 # 2-12-52 2C55 -> 000060D9 # 2-12-53 2C56 -> 000060DB # 2-12-54 2C57 -> 000060EE # 2-12-55 2C58 -> 000060F2 # 2-12-56 2C59 -> 000060F5 # 2-12-57 2C5A -> 00006110 # 2-12-58 2C5B -> 00006112 # 2-12-59 2C5C -> 00006113 # 2-12-60 2C5D -> 00006119 # 2-12-61 2C5E -> 0000611E # 2-12-62 2C5F -> 0000613A # 2-12-63 2C60 -> 0000396F # 2-12-64 2C61 -> 00006141 # 2-12-65 2C62 -> 00006146 # 2-12-66 2C63 -> 00006160 # 2-12-67 2C64 -> 0000617C # 2-12-68 2C65 -> 0002285B # 2-12-69 2C66 -> 00006192 # 2-12-70 2C67 -> 00006193 # 2-12-71 2C68 -> 00006197 # 2-12-72 2C69 -> 00006198 # 2-12-73 2C6A -> 000061A5 # 2-12-74 2C6B -> 000061A8 # 2-12-75 2C6C -> 000061AD # 2-12-76 2C6D -> 000228AB # 2-12-77 2C6E -> 000061D5 # 2-12-78 2C6F -> 000061DD # 2-12-79 2C70 -> 000061DF # 2-12-80 2C71 -> 000061F5 # 2-12-81 2C72 -> 0002298F # 2-12-82 2C73 -> 00006215 # 2-12-83 2C74 -> 00006223 # 2-12-84 2C75 -> 00006229 # 2-12-85 2C76 -> 00006246 # 2-12-86 2C77 -> 0000624C # 2-12-87 2C78 -> 00006251 # 2-12-88 2C79 -> 00006252 # 2-12-89 2C7A -> 00006261 # 2-12-90 2C7B -> 00006264 # 2-12-91 2C7C -> 0000627B # 2-12-92 2C7D -> 0000626D # 2-12-93 2C7E -> 00006273 # 2-12-94 2D21 -> 00006299 # 2-13-1 2D22 -> 000062A6 # 2-13-2 2D23 -> 000062D5 # 2-13-3 2D24 -> 00022AB8 # 2-13-4 2D25 -> 000062FD # 2-13-5 2D26 -> 00006303 # 2-13-6 2D27 -> 0000630D # 2-13-7 2D28 -> 00006310 # 2-13-8 2D29 -> 00022B4F # 2-13-9 2D2A -> 00022B50 # 2-13-10 2D2B -> 00006332 # 2-13-11 2D2C -> 00006335 # 2-13-12 2D2D -> 0000633B # 2-13-13 2D2E -> 0000633C # 2-13-14 2D2F -> 00006341 # 2-13-15 2D30 -> 00006344 # 2-13-16 2D31 -> 0000634E # 2-13-17 2D32 -> 00022B46 # 2-13-18 2D33 -> 00006359 # 2-13-19 2D34 -> 00022C1D # 2-13-20 2D35 -> 00022BA6 # 2-13-21 2D36 -> 0000636C # 2-13-22 2D37 -> 00006384 # 2-13-23 2D38 -> 00006399 # 2-13-24 2D39 -> 00022C24 # 2-13-25 2D3A -> 00006394 # 2-13-26 2D3B -> 000063BD # 2-13-27 2D3C -> 000063F7 # 2-13-28 2D3D -> 000063D4 # 2-13-29 2D3E -> 000063D5 # 2-13-30 2D3F -> 000063DC # 2-13-31 2D40 -> 000063E0 # 2-13-32 2D41 -> 000063EB # 2-13-33 2D42 -> 000063EC # 2-13-34 2D43 -> 000063F2 # 2-13-35 2D44 -> 00006409 # 2-13-36 2D45 -> 0000641E # 2-13-37 2D46 -> 00006425 # 2-13-38 2D47 -> 00006429 # 2-13-39 2D48 -> 0000642F # 2-13-40 2D49 -> 0000645A # 2-13-41 2D4A -> 0000645B # 2-13-42 2D4B -> 0000645D # 2-13-43 2D4C -> 00006473 # 2-13-44 2D4D -> 0000647D # 2-13-45 2D4E -> 00006487 # 2-13-46 2D4F -> 00006491 # 2-13-47 2D50 -> 0000649D # 2-13-48 2D51 -> 0000649F # 2-13-49 2D52 -> 000064CB # 2-13-50 2D53 -> 000064CC # 2-13-51 2D54 -> 000064D5 # 2-13-52 2D55 -> 000064D7 # 2-13-53 2D56 -> 00022DE1 # 2-13-54 2D57 -> 000064E4 # 2-13-55 2D58 -> 000064E5 # 2-13-56 2D59 -> 000064FF # 2-13-57 2D5A -> 00006504 # 2-13-58 2D5B -> 00003A6E # 2-13-59 2D5C -> 0000650F # 2-13-60 2D5D -> 00006514 # 2-13-61 2D5E -> 00006516 # 2-13-62 2D5F -> 00003A73 # 2-13-63 2D60 -> 0000651E # 2-13-64 2D61 -> 00006532 # 2-13-65 2D62 -> 00006544 # 2-13-66 2D63 -> 00006554 # 2-13-67 2D64 -> 0000656B # 2-13-68 2D65 -> 0000657A # 2-13-69 2D66 -> 00006581 # 2-13-70 2D67 -> 00006584 # 2-13-71 2D68 -> 00006585 # 2-13-72 2D69 -> 0000658A # 2-13-73 2D6A -> 000065B2 # 2-13-74 2D6B -> 000065B5 # 2-13-75 2D6C -> 000065B8 # 2-13-76 2D6D -> 000065BF # 2-13-77 2D6E -> 000065C2 # 2-13-78 2D6F -> 000065C9 # 2-13-79 2D70 -> 000065D4 # 2-13-80 2D71 -> 00003AD6 # 2-13-81 2D72 -> 000065F2 # 2-13-82 2D73 -> 000065F9 # 2-13-83 2D74 -> 000065FC # 2-13-84 2D75 -> 00006604 # 2-13-85 2D76 -> 00006608 # 2-13-86 2D77 -> 00006621 # 2-13-87 2D78 -> 0000662A # 2-13-88 2D79 -> 00006645 # 2-13-89 2D7A -> 00006651 # 2-13-90 2D7B -> 0000664E # 2-13-91 2D7C -> 00003AEA # 2-13-92 2D7D -> 000231C3 # 2-13-93 2D7E -> 00006657 # 2-13-94 2E21 -> 0000665B # 2-14-1 2E22 -> 00006663 # 2-14-2 2E23 -> 000231F5 # 2-14-3 2E24 -> 000231B6 # 2-14-4 2E25 -> 0000666A # 2-14-5 2E26 -> 0000666B # 2-14-6 2E27 -> 0000666C # 2-14-7 2E28 -> 0000666D # 2-14-8 2E29 -> 0000667B # 2-14-9 2E2A -> 00006680 # 2-14-10 2E2B -> 00006690 # 2-14-11 2E2C -> 00006692 # 2-14-12 2E2D -> 00006699 # 2-14-13 2E2E -> 00003B0E # 2-14-14 2E2F -> 000066AD # 2-14-15 2E30 -> 000066B1 # 2-14-16 2E31 -> 000066B5 # 2-14-17 2E32 -> 00003B1A # 2-14-18 2E33 -> 000066BF # 2-14-19 2E34 -> 00003B1C # 2-14-20 2E35 -> 000066EC # 2-14-21 2E36 -> 00003AD7 # 2-14-22 2E37 -> 00006701 # 2-14-23 2E38 -> 00006705 # 2-14-24 2E39 -> 00006712 # 2-14-25 2E3A -> 00023372 # 2-14-26 2E3B -> 00006719 # 2-14-27 2E3C -> 000233D3 # 2-14-28 2E3D -> 000233D2 # 2-14-29 2E3E -> 0000674C # 2-14-30 2E3F -> 0000674D # 2-14-31 2E40 -> 00006754 # 2-14-32 2E41 -> 0000675D # 2-14-33 2E42 -> 000233D0 # 2-14-34 2E43 -> 000233E4 # 2-14-35 2E44 -> 000233D5 # 2-14-36 2E45 -> 00006774 # 2-14-37 2E46 -> 00006776 # 2-14-38 2E47 -> 000233DA # 2-14-39 2E48 -> 00006792 # 2-14-40 2E49 -> 000233DF # 2-14-41 2E4A -> 00008363 # 2-14-42 2E4B -> 00006810 # 2-14-43 2E4C -> 000067B0 # 2-14-44 2E4D -> 000067B2 # 2-14-45 2E4E -> 000067C3 # 2-14-46 2E4F -> 000067C8 # 2-14-47 2E50 -> 000067D2 # 2-14-48 2E51 -> 000067D9 # 2-14-49 2E52 -> 000067DB # 2-14-50 2E53 -> 000067F0 # 2-14-51 2E54 -> 000067F7 # 2-14-52 2E55 -> 0002344A # 2-14-53 2E56 -> 00023451 # 2-14-54 2E57 -> 0002344B # 2-14-55 2E58 -> 00006818 # 2-14-56 2E59 -> 0000681F # 2-14-57 2E5A -> 0000682D # 2-14-58 2E5B -> 00023465 # 2-14-59 2E5C -> 00006833 # 2-14-60 2E5D -> 0000683B # 2-14-61 2E5E -> 0000683E # 2-14-62 2E5F -> 00006844 # 2-14-63 2E60 -> 00006845 # 2-14-64 2E61 -> 00006849 # 2-14-65 2E62 -> 0000684C # 2-14-66 2E63 -> 00006855 # 2-14-67 2E64 -> 00006857 # 2-14-68 2E65 -> 00003B77 # 2-14-69 2E66 -> 0000686B # 2-14-70 2E67 -> 0000686E # 2-14-71 2E68 -> 0000687A # 2-14-72 2E69 -> 0000687C # 2-14-73 2E6A -> 00006882 # 2-14-74 2E6B -> 00006890 # 2-14-75 2E6C -> 00006896 # 2-14-76 2E6D -> 00003B6D # 2-14-77 2E6E -> 00006898 # 2-14-78 2E6F -> 00006899 # 2-14-79 2E70 -> 0000689A # 2-14-80 2E71 -> 0000689C # 2-14-81 2E72 -> 000068AA # 2-14-82 2E73 -> 000068AB # 2-14-83 2E74 -> 000068B4 # 2-14-84 2E75 -> 000068BB # 2-14-85 2E76 -> 000068FB # 2-14-86 2E77 -> 000234E4 # 2-14-87 2E78 -> 0002355A # 2-14-88 2E79 -> 0000FA13 # 2-14-89 2E7A -> 000068C3 # 2-14-90 2E7B -> 000068C5 # 2-14-91 2E7C -> 000068CC # 2-14-92 2E7D -> 000068CF # 2-14-93 2E7E -> 000068D6 # 2-14-94 2F21 -> 000068D9 # 2-15-1 2F22 -> 000068E4 # 2-15-2 2F23 -> 000068E5 # 2-15-3 2F24 -> 000068EC # 2-15-4 2F25 -> 000068F7 # 2-15-5 2F26 -> 00006903 # 2-15-6 2F27 -> 00006907 # 2-15-7 2F28 -> 00003B87 # 2-15-8 2F29 -> 00003B88 # 2-15-9 2F2A -> 00023594 # 2-15-10 2F2B -> 0000693B # 2-15-11 2F2C -> 00003B8D # 2-15-12 2F2D -> 00006946 # 2-15-13 2F2E -> 00006969 # 2-15-14 2F2F -> 0000696C # 2-15-15 2F30 -> 00006972 # 2-15-16 2F31 -> 0000697A # 2-15-17 2F32 -> 0000697F # 2-15-18 2F33 -> 00006992 # 2-15-19 2F34 -> 00003BA4 # 2-15-20 2F35 -> 00006996 # 2-15-21 2F36 -> 00006998 # 2-15-22 2F37 -> 000069A6 # 2-15-23 2F38 -> 000069B0 # 2-15-24 2F39 -> 000069B7 # 2-15-25 2F3A -> 000069BA # 2-15-26 2F3B -> 000069BC # 2-15-27 2F3C -> 000069C0 # 2-15-28 2F3D -> 000069D1 # 2-15-29 2F3E -> 000069D6 # 2-15-30 2F3F -> 00023639 # 2-15-31 2F40 -> 00023647 # 2-15-32 2F41 -> 00006A30 # 2-15-33 2F42 -> 00023638 # 2-15-34 2F43 -> 0002363A # 2-15-35 2F44 -> 000069E3 # 2-15-36 2F45 -> 000069EE # 2-15-37 2F46 -> 000069EF # 2-15-38 2F47 -> 000069F3 # 2-15-39 2F48 -> 00003BCD # 2-15-40 2F49 -> 000069F4 # 2-15-41 2F4A -> 000069FE # 2-15-42 2F4B -> 00006A11 # 2-15-43 2F4C -> 00006A1A # 2-15-44 2F4D -> 00006A1D # 2-15-45 2F4E -> 0002371C # 2-15-46 2F4F -> 00006A32 # 2-15-47 2F50 -> 00006A33 # 2-15-48 2F51 -> 00006A34 # 2-15-49 2F52 -> 00006A3F # 2-15-50 2F53 -> 00006A46 # 2-15-51 2F54 -> 00006A49 # 2-15-52 2F55 -> 00006A7A # 2-15-53 2F56 -> 00006A4E # 2-15-54 2F57 -> 00006A52 # 2-15-55 2F58 -> 00006A64 # 2-15-56 2F59 -> 0002370C # 2-15-57 2F5A -> 00006A7E # 2-15-58 2F5B -> 00006A83 # 2-15-59 2F5C -> 00006A8B # 2-15-60 2F5D -> 00003BF0 # 2-15-61 2F5E -> 00006A91 # 2-15-62 2F5F -> 00006A9F # 2-15-63 2F60 -> 00006AA1 # 2-15-64 2F61 -> 00023764 # 2-15-65 2F62 -> 00006AAB # 2-15-66 2F63 -> 00006ABD # 2-15-67 2F64 -> 00006AC6 # 2-15-68 2F65 -> 00006AD4 # 2-15-69 2F66 -> 00006AD0 # 2-15-70 2F67 -> 00006ADC # 2-15-71 2F68 -> 00006ADD # 2-15-72 2F69 -> 000237FF # 2-15-73 2F6A -> 000237E7 # 2-15-74 2F6B -> 00006AEC # 2-15-75 2F6C -> 00006AF1 # 2-15-76 2F6D -> 00006AF2 # 2-15-77 2F6E -> 00006AF3 # 2-15-78 2F6F -> 00006AFD # 2-15-79 2F70 -> 00023824 # 2-15-80 2F71 -> 00006B0B # 2-15-81 2F72 -> 00006B0F # 2-15-82 2F73 -> 00006B10 # 2-15-83 2F74 -> 00006B11 # 2-15-84 2F75 -> 0002383D # 2-15-85 2F76 -> 00006B17 # 2-15-86 2F77 -> 00003C26 # 2-15-87 2F78 -> 00006B2F # 2-15-88 2F79 -> 00006B4A # 2-15-89 2F7A -> 00006B58 # 2-15-90 2F7B -> 00006B6C # 2-15-91 2F7C -> 00006B75 # 2-15-92 2F7D -> 00006B7A # 2-15-93 2F7E -> 00006B81 # 2-15-94 6E21 -> 00006B9B # 2-78-1 6E22 -> 00006BAE # 2-78-2 6E23 -> 00023A98 # 2-78-3 6E24 -> 00006BBD # 2-78-4 6E25 -> 00006BBE # 2-78-5 6E26 -> 00006BC7 # 2-78-6 6E27 -> 00006BC8 # 2-78-7 6E28 -> 00006BC9 # 2-78-8 6E29 -> 00006BDA # 2-78-9 6E2A -> 00006BE6 # 2-78-10 6E2B -> 00006BE7 # 2-78-11 6E2C -> 00006BEE # 2-78-12 6E2D -> 00006BF1 # 2-78-13 6E2E -> 00006C02 # 2-78-14 6E2F -> 00006C0A # 2-78-15 6E30 -> 00006C0E # 2-78-16 6E31 -> 00006C35 # 2-78-17 6E32 -> 00006C36 # 2-78-18 6E33 -> 00006C3A # 2-78-19 6E34 -> 00023C7F # 2-78-20 6E35 -> 00006C3F # 2-78-21 6E36 -> 00006C4D # 2-78-22 6E37 -> 00006C5B # 2-78-23 6E38 -> 00006C6D # 2-78-24 6E39 -> 00006C84 # 2-78-25 6E3A -> 00006C89 # 2-78-26 6E3B -> 00003CC3 # 2-78-27 6E3C -> 00006C94 # 2-78-28 6E3D -> 00006C95 # 2-78-29 6E3E -> 00006C97 # 2-78-30 6E3F -> 00006CAD # 2-78-31 6E40 -> 00006CC2 # 2-78-32 6E41 -> 00006CD0 # 2-78-33 6E42 -> 00003CD2 # 2-78-34 6E43 -> 00006CD6 # 2-78-35 6E44 -> 00006CDA # 2-78-36 6E45 -> 00006CDC # 2-78-37 6E46 -> 00006CE9 # 2-78-38 6E47 -> 00006CEC # 2-78-39 6E48 -> 00006CED # 2-78-40 6E49 -> 00023D00 # 2-78-41 6E4A -> 00006D00 # 2-78-42 6E4B -> 00006D0A # 2-78-43 6E4C -> 00006D24 # 2-78-44 6E4D -> 00006D26 # 2-78-45 6E4E -> 00006D27 # 2-78-46 6E4F -> 00006C67 # 2-78-47 6E50 -> 00006D2F # 2-78-48 6E51 -> 00006D3C # 2-78-49 6E52 -> 00006D5B # 2-78-50 6E53 -> 00006D5E # 2-78-51 6E54 -> 00006D60 # 2-78-52 6E55 -> 00006D70 # 2-78-53 6E56 -> 00006D80 # 2-78-54 6E57 -> 00006D81 # 2-78-55 6E58 -> 00006D8A # 2-78-56 6E59 -> 00006D8D # 2-78-57 6E5A -> 00006D91 # 2-78-58 6E5B -> 00006D98 # 2-78-59 6E5C -> 00023D40 # 2-78-60 6E5D -> 00006E17 # 2-78-61 6E5E -> 00023DFA # 2-78-62 6E5F -> 00023DF9 # 2-78-63 6E60 -> 00023DD3 # 2-78-64 6E61 -> 00006DAB # 2-78-65 6E62 -> 00006DAE # 2-78-66 6E63 -> 00006DB4 # 2-78-67 6E64 -> 00006DC2 # 2-78-68 6E65 -> 00006D34 # 2-78-69 6E66 -> 00006DC8 # 2-78-70 6E67 -> 00006DCE # 2-78-71 6E68 -> 00006DCF # 2-78-72 6E69 -> 00006DD0 # 2-78-73 6E6A -> 00006DDF # 2-78-74 6E6B -> 00006DE9 # 2-78-75 6E6C -> 00006DF6 # 2-78-76 6E6D -> 00006E36 # 2-78-77 6E6E -> 00006E1E # 2-78-78 6E6F -> 00006E22 # 2-78-79 6E70 -> 00006E27 # 2-78-80 6E71 -> 00003D11 # 2-78-81 6E72 -> 00006E32 # 2-78-82 6E73 -> 00006E3C # 2-78-83 6E74 -> 00006E48 # 2-78-84 6E75 -> 00006E49 # 2-78-85 6E76 -> 00006E4B # 2-78-86 6E77 -> 00006E4C # 2-78-87 6E78 -> 00006E4F # 2-78-88 6E79 -> 00006E51 # 2-78-89 6E7A -> 00006E53 # 2-78-90 6E7B -> 00006E54 # 2-78-91 6E7C -> 00006E57 # 2-78-92 6E7D -> 00006E63 # 2-78-93 6E7E -> 00003D1E # 2-78-94 6F21 -> 00006E93 # 2-79-1 6F22 -> 00006EA7 # 2-79-2 6F23 -> 00006EB4 # 2-79-3 6F24 -> 00006EBF # 2-79-4 6F25 -> 00006EC3 # 2-79-5 6F26 -> 00006ECA # 2-79-6 6F27 -> 00006ED9 # 2-79-7 6F28 -> 00006F35 # 2-79-8 6F29 -> 00006EEB # 2-79-9 6F2A -> 00006EF9 # 2-79-10 6F2B -> 00006EFB # 2-79-11 6F2C -> 00006F0A # 2-79-12 6F2D -> 00006F0C # 2-79-13 6F2E -> 00006F18 # 2-79-14 6F2F -> 00006F25 # 2-79-15 6F30 -> 00006F36 # 2-79-16 6F31 -> 00006F3C # 2-79-17 6F32 -> 00023F7E # 2-79-18 6F33 -> 00006F52 # 2-79-19 6F34 -> 00006F57 # 2-79-20 6F35 -> 00006F5A # 2-79-21 6F36 -> 00006F60 # 2-79-22 6F37 -> 00006F68 # 2-79-23 6F38 -> 00006F98 # 2-79-24 6F39 -> 00006F7D # 2-79-25 6F3A -> 00006F90 # 2-79-26 6F3B -> 00006F96 # 2-79-27 6F3C -> 00006FBE # 2-79-28 6F3D -> 00006F9F # 2-79-29 6F3E -> 00006FA5 # 2-79-30 6F3F -> 00006FAF # 2-79-31 6F40 -> 00003D64 # 2-79-32 6F41 -> 00006FB5 # 2-79-33 6F42 -> 00006FC8 # 2-79-34 6F43 -> 00006FC9 # 2-79-35 6F44 -> 00006FDA # 2-79-36 6F45 -> 00006FDE # 2-79-37 6F46 -> 00006FE9 # 2-79-38 6F47 -> 00024096 # 2-79-39 6F48 -> 00006FFC # 2-79-40 6F49 -> 00007000 # 2-79-41 6F4A -> 00007007 # 2-79-42 6F4B -> 0000700A # 2-79-43 6F4C -> 00007023 # 2-79-44 6F4D -> 00024103 # 2-79-45 6F4E -> 00007039 # 2-79-46 6F4F -> 0000703A # 2-79-47 6F50 -> 0000703C # 2-79-48 6F51 -> 00007043 # 2-79-49 6F52 -> 00007047 # 2-79-50 6F53 -> 0000704B # 2-79-51 6F54 -> 00003D9A # 2-79-52 6F55 -> 00007054 # 2-79-53 6F56 -> 00007065 # 2-79-54 6F57 -> 00007069 # 2-79-55 6F58 -> 0000706C # 2-79-56 6F59 -> 0000706E # 2-79-57 6F5A -> 00007076 # 2-79-58 6F5B -> 0000707E # 2-79-59 6F5C -> 00007081 # 2-79-60 6F5D -> 00007086 # 2-79-61 6F5E -> 00007095 # 2-79-62 6F5F -> 00007097 # 2-79-63 6F60 -> 000070BB # 2-79-64 6F61 -> 000241C6 # 2-79-65 6F62 -> 0000709F # 2-79-66 6F63 -> 000070B1 # 2-79-67 6F64 -> 000241FE # 2-79-68 6F65 -> 000070EC # 2-79-69 6F66 -> 000070CA # 2-79-70 6F67 -> 000070D1 # 2-79-71 6F68 -> 000070D3 # 2-79-72 6F69 -> 000070DC # 2-79-73 6F6A -> 00007103 # 2-79-74 6F6B -> 00007104 # 2-79-75 6F6C -> 00007106 # 2-79-76 6F6D -> 00007107 # 2-79-77 6F6E -> 00007108 # 2-79-78 6F6F -> 0000710C # 2-79-79 6F70 -> 00003DC0 # 2-79-80 6F71 -> 0000712F # 2-79-81 6F72 -> 00007131 # 2-79-82 6F73 -> 00007150 # 2-79-83 6F74 -> 0000714A # 2-79-84 6F75 -> 00007153 # 2-79-85 6F76 -> 0000715E # 2-79-86 6F77 -> 00003DD4 # 2-79-87 6F78 -> 00007196 # 2-79-88 6F79 -> 00007180 # 2-79-89 6F7A -> 0000719B # 2-79-90 6F7B -> 000071A0 # 2-79-91 6F7C -> 000071A2 # 2-79-92 6F7D -> 000071AE # 2-79-93 6F7E -> 000071AF # 2-79-94 7021 -> 000071B3 # 2-80-1 7022 -> 000243BC # 2-80-2 7023 -> 000071CB # 2-80-3 7024 -> 000071D3 # 2-80-4 7025 -> 000071D9 # 2-80-5 7026 -> 000071DC # 2-80-6 7027 -> 00007207 # 2-80-7 7028 -> 00003E05 # 2-80-8 7029 -> 0000FA49 # 2-80-9 702A -> 0000722B # 2-80-10 702B -> 00007234 # 2-80-11 702C -> 00007238 # 2-80-12 702D -> 00007239 # 2-80-13 702E -> 00004E2C # 2-80-14 702F -> 00007242 # 2-80-15 7030 -> 00007253 # 2-80-16 7031 -> 00007257 # 2-80-17 7032 -> 00007263 # 2-80-18 7033 -> 00024629 # 2-80-19 7034 -> 0000726E # 2-80-20 7035 -> 0000726F # 2-80-21 7036 -> 00007278 # 2-80-22 7037 -> 0000727F # 2-80-23 7038 -> 0000728E # 2-80-24 7039 -> 000246A5 # 2-80-25 703A -> 000072AD # 2-80-26 703B -> 000072AE # 2-80-27 703C -> 000072B0 # 2-80-28 703D -> 000072B1 # 2-80-29 703E -> 000072C1 # 2-80-30 703F -> 00003E60 # 2-80-31 7040 -> 000072CC # 2-80-32 7041 -> 00003E66 # 2-80-33 7042 -> 00003E68 # 2-80-34 7043 -> 000072F3 # 2-80-35 7044 -> 000072FA # 2-80-36 7045 -> 00007307 # 2-80-37 7046 -> 00007312 # 2-80-38 7047 -> 00007318 # 2-80-39 7048 -> 00007319 # 2-80-40 7049 -> 00003E83 # 2-80-41 704A -> 00007339 # 2-80-42 704B -> 0000732C # 2-80-43 704C -> 00007331 # 2-80-44 704D -> 00007333 # 2-80-45 704E -> 0000733D # 2-80-46 704F -> 00007352 # 2-80-47 7050 -> 00003E94 # 2-80-48 7051 -> 0000736B # 2-80-49 7052 -> 0000736C # 2-80-50 7053 -> 00024896 # 2-80-51 7054 -> 0000736E # 2-80-52 7055 -> 0000736F # 2-80-53 7056 -> 00007371 # 2-80-54 7057 -> 00007377 # 2-80-55 7058 -> 00007381 # 2-80-56 7059 -> 00007385 # 2-80-57 705A -> 0000738A # 2-80-58 705B -> 00007394 # 2-80-59 705C -> 00007398 # 2-80-60 705D -> 0000739C # 2-80-61 705E -> 0000739E # 2-80-62 705F -> 000073A5 # 2-80-63 7060 -> 000073A8 # 2-80-64 7061 -> 000073B5 # 2-80-65 7062 -> 000073B7 # 2-80-66 7063 -> 000073B9 # 2-80-67 7064 -> 000073BC # 2-80-68 7065 -> 000073BF # 2-80-69 7066 -> 000073C5 # 2-80-70 7067 -> 000073CB # 2-80-71 7068 -> 000073E1 # 2-80-72 7069 -> 000073E7 # 2-80-73 706A -> 000073F9 # 2-80-74 706B -> 00007413 # 2-80-75 706C -> 000073FA # 2-80-76 706D -> 00007401 # 2-80-77 706E -> 00007424 # 2-80-78 706F -> 00007431 # 2-80-79 7070 -> 00007439 # 2-80-80 7071 -> 00007453 # 2-80-81 7072 -> 00007440 # 2-80-82 7073 -> 00007443 # 2-80-83 7074 -> 0000744D # 2-80-84 7075 -> 00007452 # 2-80-85 7076 -> 0000745D # 2-80-86 7077 -> 00007471 # 2-80-87 7078 -> 00007481 # 2-80-88 7079 -> 00007485 # 2-80-89 707A -> 00007488 # 2-80-90 707B -> 00024A4D # 2-80-91 707C -> 00007492 # 2-80-92 707D -> 00007497 # 2-80-93 707E -> 00007499 # 2-80-94 7121 -> 000074A0 # 2-81-1 7122 -> 000074A1 # 2-81-2 7123 -> 000074A5 # 2-81-3 7124 -> 000074AA # 2-81-4 7125 -> 000074AB # 2-81-5 7126 -> 000074B9 # 2-81-6 7127 -> 000074BB # 2-81-7 7128 -> 000074BA # 2-81-8 7129 -> 000074D6 # 2-81-9 712A -> 000074D8 # 2-81-10 712B -> 000074DE # 2-81-11 712C -> 000074EF # 2-81-12 712D -> 000074EB # 2-81-13 712E -> 00024B56 # 2-81-14 712F -> 000074FA # 2-81-15 7130 -> 00024B6F # 2-81-16 7131 -> 00007520 # 2-81-17 7132 -> 00007524 # 2-81-18 7133 -> 0000752A # 2-81-19 7134 -> 00003F57 # 2-81-20 7135 -> 00024C16 # 2-81-21 7136 -> 0000753D # 2-81-22 7137 -> 0000753E # 2-81-23 7138 -> 00007540 # 2-81-24 7139 -> 00007548 # 2-81-25 713A -> 0000754E # 2-81-26 713B -> 00007550 # 2-81-27 713C -> 00007552 # 2-81-28 713D -> 0000756C # 2-81-29 713E -> 00007572 # 2-81-30 713F -> 00007571 # 2-81-31 7140 -> 0000757A # 2-81-32 7141 -> 0000757D # 2-81-33 7142 -> 0000757E # 2-81-34 7143 -> 00007581 # 2-81-35 7144 -> 00024D14 # 2-81-36 7145 -> 0000758C # 2-81-37 7146 -> 00003F75 # 2-81-38 7147 -> 000075A2 # 2-81-39 7148 -> 00003F77 # 2-81-40 7149 -> 000075B0 # 2-81-41 714A -> 000075B7 # 2-81-42 714B -> 000075BF # 2-81-43 714C -> 000075C0 # 2-81-44 714D -> 000075C6 # 2-81-45 714E -> 000075CF # 2-81-46 714F -> 000075D3 # 2-81-47 7150 -> 000075DD # 2-81-48 7151 -> 000075DF # 2-81-49 7152 -> 000075E0 # 2-81-50 7153 -> 000075E7 # 2-81-51 7154 -> 000075EC # 2-81-52 7155 -> 000075EE # 2-81-53 7156 -> 000075F1 # 2-81-54 7157 -> 000075F9 # 2-81-55 7158 -> 00007603 # 2-81-56 7159 -> 00007618 # 2-81-57 715A -> 00007607 # 2-81-58 715B -> 0000760F # 2-81-59 715C -> 00003FAE # 2-81-60 715D -> 00024E0E # 2-81-61 715E -> 00007613 # 2-81-62 715F -> 0000761B # 2-81-63 7160 -> 0000761C # 2-81-64 7161 -> 00024E37 # 2-81-65 7162 -> 00007625 # 2-81-66 7163 -> 00007628 # 2-81-67 7164 -> 0000763C # 2-81-68 7165 -> 00007633 # 2-81-69 7166 -> 00024E6A # 2-81-70 7167 -> 00003FC9 # 2-81-71 7168 -> 00007641 # 2-81-72 7169 -> 00024E8B # 2-81-73 716A -> 00007649 # 2-81-74 716B -> 00007655 # 2-81-75 716C -> 00003FD7 # 2-81-76 716D -> 0000766E # 2-81-77 716E -> 00007695 # 2-81-78 716F -> 0000769C # 2-81-79 7170 -> 000076A1 # 2-81-80 7171 -> 000076A0 # 2-81-81 7172 -> 000076A7 # 2-81-82 7173 -> 000076A8 # 2-81-83 7174 -> 000076AF # 2-81-84 7175 -> 0002504A # 2-81-85 7176 -> 000076C9 # 2-81-86 7177 -> 00025055 # 2-81-87 7178 -> 000076E8 # 2-81-88 7179 -> 000076EC # 2-81-89 717A -> 00025122 # 2-81-90 717B -> 00007717 # 2-81-91 717C -> 0000771A # 2-81-92 717D -> 0000772D # 2-81-93 717E -> 00007735 # 2-81-94 7221 -> 000251A9 # 2-82-1 7222 -> 00004039 # 2-82-2 7223 -> 000251E5 # 2-82-3 7224 -> 000251CD # 2-82-4 7225 -> 00007758 # 2-82-5 7226 -> 00007760 # 2-82-6 7227 -> 0000776A # 2-82-7 7228 -> 0002521E # 2-82-8 7229 -> 00007772 # 2-82-9 722A -> 0000777C # 2-82-10 722B -> 0000777D # 2-82-11 722C -> 0002524C # 2-82-12 722D -> 00004058 # 2-82-13 722E -> 0000779A # 2-82-14 722F -> 0000779F # 2-82-15 7230 -> 000077A2 # 2-82-16 7231 -> 000077A4 # 2-82-17 7232 -> 000077A9 # 2-82-18 7233 -> 000077DE # 2-82-19 7234 -> 000077DF # 2-82-20 7235 -> 000077E4 # 2-82-21 7236 -> 000077E6 # 2-82-22 7237 -> 000077EA # 2-82-23 7238 -> 000077EC # 2-82-24 7239 -> 00004093 # 2-82-25 723A -> 000077F0 # 2-82-26 723B -> 000077F4 # 2-82-27 723C -> 000077FB # 2-82-28 723D -> 0002542E # 2-82-29 723E -> 00007805 # 2-82-30 723F -> 00007806 # 2-82-31 7240 -> 00007809 # 2-82-32 7241 -> 0000780D # 2-82-33 7242 -> 00007819 # 2-82-34 7243 -> 00007821 # 2-82-35 7244 -> 0000782C # 2-82-36 7245 -> 00007847 # 2-82-37 7246 -> 00007864 # 2-82-38 7247 -> 0000786A # 2-82-39 7248 -> 000254D9 # 2-82-40 7249 -> 0000788A # 2-82-41 724A -> 00007894 # 2-82-42 724B -> 000078A4 # 2-82-43 724C -> 0000789D # 2-82-44 724D -> 0000789E # 2-82-45 724E -> 0000789F # 2-82-46 724F -> 000078BB # 2-82-47 7250 -> 000078C8 # 2-82-48 7251 -> 000078CC # 2-82-49 7252 -> 000078CE # 2-82-50 7253 -> 000078D5 # 2-82-51 7254 -> 000078E0 # 2-82-52 7255 -> 000078E1 # 2-82-53 7256 -> 000078E6 # 2-82-54 7257 -> 000078F9 # 2-82-55 7258 -> 000078FA # 2-82-56 7259 -> 000078FB # 2-82-57 725A -> 000078FE # 2-82-58 725B -> 000255A7 # 2-82-59 725C -> 00007910 # 2-82-60 725D -> 0000791B # 2-82-61 725E -> 00007930 # 2-82-62 725F -> 00007925 # 2-82-63 7260 -> 0000793B # 2-82-64 7261 -> 0000794A # 2-82-65 7262 -> 00007958 # 2-82-66 7263 -> 0000795B # 2-82-67 7264 -> 00004105 # 2-82-68 7265 -> 00007967 # 2-82-69 7266 -> 00007972 # 2-82-70 7267 -> 00007994 # 2-82-71 7268 -> 00007995 # 2-82-72 7269 -> 00007996 # 2-82-73 726A -> 0000799B # 2-82-74 726B -> 000079A1 # 2-82-75 726C -> 000079A9 # 2-82-76 726D -> 000079B4 # 2-82-77 726E -> 000079BB # 2-82-78 726F -> 000079C2 # 2-82-79 7270 -> 000079C7 # 2-82-80 7271 -> 000079CC # 2-82-81 7272 -> 000079CD # 2-82-82 7273 -> 000079D6 # 2-82-83 7274 -> 00004148 # 2-82-84 7275 -> 000257A9 # 2-82-85 7276 -> 000257B4 # 2-82-86 7277 -> 0000414F # 2-82-87 7278 -> 00007A0A # 2-82-88 7279 -> 00007A11 # 2-82-89 727A -> 00007A15 # 2-82-90 727B -> 00007A1B # 2-82-91 727C -> 00007A1E # 2-82-92 727D -> 00004163 # 2-82-93 727E -> 00007A2D # 2-82-94 7321 -> 00007A38 # 2-83-1 7322 -> 00007A47 # 2-83-2 7323 -> 00007A4C # 2-83-3 7324 -> 00007A56 # 2-83-4 7325 -> 00007A59 # 2-83-5 7326 -> 00007A5C # 2-83-6 7327 -> 00007A5F # 2-83-7 7328 -> 00007A60 # 2-83-8 7329 -> 00007A67 # 2-83-9 732A -> 00007A6A # 2-83-10 732B -> 00007A75 # 2-83-11 732C -> 00007A78 # 2-83-12 732D -> 00007A82 # 2-83-13 732E -> 00007A8A # 2-83-14 732F -> 00007A90 # 2-83-15 7330 -> 00007AA3 # 2-83-16 7331 -> 00007AAC # 2-83-17 7332 -> 000259D4 # 2-83-18 7333 -> 000041B4 # 2-83-19 7334 -> 00007AB9 # 2-83-20 7335 -> 00007ABC # 2-83-21 7336 -> 00007ABE # 2-83-22 7337 -> 000041BF # 2-83-23 7338 -> 00007ACC # 2-83-24 7339 -> 00007AD1 # 2-83-25 733A -> 00007AE7 # 2-83-26 733B -> 00007AE8 # 2-83-27 733C -> 00007AF4 # 2-83-28 733D -> 00025AE4 # 2-83-29 733E -> 00025AE3 # 2-83-30 733F -> 00007B07 # 2-83-31 7340 -> 00025AF1 # 2-83-32 7341 -> 00007B3D # 2-83-33 7342 -> 00007B27 # 2-83-34 7343 -> 00007B2A # 2-83-35 7344 -> 00007B2E # 2-83-36 7345 -> 00007B2F # 2-83-37 7346 -> 00007B31 # 2-83-38 7347 -> 000041E6 # 2-83-39 7348 -> 000041F3 # 2-83-40 7349 -> 00007B7F # 2-83-41 734A -> 00007B41 # 2-83-42 734B -> 000041EE # 2-83-43 734C -> 00007B55 # 2-83-44 734D -> 00007B79 # 2-83-45 734E -> 00007B64 # 2-83-46 734F -> 00007B66 # 2-83-47 7350 -> 00007B69 # 2-83-48 7351 -> 00007B73 # 2-83-49 7352 -> 00025BB2 # 2-83-50 7353 -> 00004207 # 2-83-51 7354 -> 00007B90 # 2-83-52 7355 -> 00007B91 # 2-83-53 7356 -> 00007B9B # 2-83-54 7357 -> 0000420E # 2-83-55 7358 -> 00007BAF # 2-83-56 7359 -> 00007BB5 # 2-83-57 735A -> 00007BBC # 2-83-58 735B -> 00007BC5 # 2-83-59 735C -> 00007BCA # 2-83-60 735D -> 00025C4B # 2-83-61 735E -> 00025C64 # 2-83-62 735F -> 00007BD4 # 2-83-63 7360 -> 00007BD6 # 2-83-64 7361 -> 00007BDA # 2-83-65 7362 -> 00007BEA # 2-83-66 7363 -> 00007BF0 # 2-83-67 7364 -> 00007C03 # 2-83-68 7365 -> 00007C0B # 2-83-69 7366 -> 00007C0E # 2-83-70 7367 -> 00007C0F # 2-83-71 7368 -> 00007C26 # 2-83-72 7369 -> 00007C45 # 2-83-73 736A -> 00007C4A # 2-83-74 736B -> 00007C51 # 2-83-75 736C -> 00007C57 # 2-83-76 736D -> 00007C5E # 2-83-77 736E -> 00007C61 # 2-83-78 736F -> 00007C69 # 2-83-79 7370 -> 00007C6E # 2-83-80 7371 -> 00007C6F # 2-83-81 7372 -> 00007C70 # 2-83-82 7373 -> 00025E2E # 2-83-83 7374 -> 00025E56 # 2-83-84 7375 -> 00025E65 # 2-83-85 7376 -> 00007CA6 # 2-83-86 7377 -> 00025E62 # 2-83-87 7378 -> 00007CB6 # 2-83-88 7379 -> 00007CB7 # 2-83-89 737A -> 00007CBF # 2-83-90 737B -> 00025ED8 # 2-83-91 737C -> 00007CC4 # 2-83-92 737D -> 00025EC2 # 2-83-93 737E -> 00007CC8 # 2-83-94 7421 -> 00007CCD # 2-84-1 7422 -> 00025EE8 # 2-84-2 7423 -> 00007CD7 # 2-84-3 7424 -> 00025F23 # 2-84-4 7425 -> 00007CE6 # 2-84-5 7426 -> 00007CEB # 2-84-6 7427 -> 00025F5C # 2-84-7 7428 -> 00007CF5 # 2-84-8 7429 -> 00007D03 # 2-84-9 742A -> 00007D09 # 2-84-10 742B -> 000042C6 # 2-84-11 742C -> 00007D12 # 2-84-12 742D -> 00007D1E # 2-84-13 742E -> 00025FE0 # 2-84-14 742F -> 00025FD4 # 2-84-15 7430 -> 00007D3D # 2-84-16 7431 -> 00007D3E # 2-84-17 7432 -> 00007D40 # 2-84-18 7433 -> 00007D47 # 2-84-19 7434 -> 0002600C # 2-84-20 7435 -> 00025FFB # 2-84-21 7436 -> 000042D6 # 2-84-22 7437 -> 00007D59 # 2-84-23 7438 -> 00007D5A # 2-84-24 7439 -> 00007D6A # 2-84-25 743A -> 00007D70 # 2-84-26 743B -> 000042DD # 2-84-27 743C -> 00007D7F # 2-84-28 743D -> 00026017 # 2-84-29 743E -> 00007D86 # 2-84-30 743F -> 00007D88 # 2-84-31 7440 -> 00007D8C # 2-84-32 7441 -> 00007D97 # 2-84-33 7442 -> 00026060 # 2-84-34 7443 -> 00007D9D # 2-84-35 7444 -> 00007DA7 # 2-84-36 7445 -> 00007DAA # 2-84-37 7446 -> 00007DB6 # 2-84-38 7447 -> 00007DB7 # 2-84-39 7448 -> 00007DC0 # 2-84-40 7449 -> 00007DD7 # 2-84-41 744A -> 00007DD9 # 2-84-42 744B -> 00007DE6 # 2-84-43 744C -> 00007DF1 # 2-84-44 744D -> 00007DF9 # 2-84-45 744E -> 00004302 # 2-84-46 744F -> 000260ED # 2-84-47 7450 -> 0000FA58 # 2-84-48 7451 -> 00007E10 # 2-84-49 7452 -> 00007E17 # 2-84-50 7453 -> 00007E1D # 2-84-51 7454 -> 00007E20 # 2-84-52 7455 -> 00007E27 # 2-84-53 7456 -> 00007E2C # 2-84-54 7457 -> 00007E45 # 2-84-55 7458 -> 00007E73 # 2-84-56 7459 -> 00007E75 # 2-84-57 745A -> 00007E7E # 2-84-58 745B -> 00007E86 # 2-84-59 745C -> 00007E87 # 2-84-60 745D -> 0000432B # 2-84-61 745E -> 00007E91 # 2-84-62 745F -> 00007E98 # 2-84-63 7460 -> 00007E9A # 2-84-64 7461 -> 00004343 # 2-84-65 7462 -> 00007F3C # 2-84-66 7463 -> 00007F3B # 2-84-67 7464 -> 00007F3E # 2-84-68 7465 -> 00007F43 # 2-84-69 7466 -> 00007F44 # 2-84-70 7467 -> 00007F4F # 2-84-71 7468 -> 000034C1 # 2-84-72 7469 -> 00026270 # 2-84-73 746A -> 00007F52 # 2-84-74 746B -> 00026286 # 2-84-75 746C -> 00007F61 # 2-84-76 746D -> 00007F63 # 2-84-77 746E -> 00007F64 # 2-84-78 746F -> 00007F6D # 2-84-79 7470 -> 00007F7D # 2-84-80 7471 -> 00007F7E # 2-84-81 7472 -> 0002634C # 2-84-82 7473 -> 00007F90 # 2-84-83 7474 -> 0000517B # 2-84-84 7475 -> 00023D0E # 2-84-85 7476 -> 00007F96 # 2-84-86 7477 -> 00007F9C # 2-84-87 7478 -> 00007FAD # 2-84-88 7479 -> 00026402 # 2-84-89 747A -> 00007FC3 # 2-84-90 747B -> 00007FCF # 2-84-91 747C -> 00007FE3 # 2-84-92 747D -> 00007FE5 # 2-84-93 747E -> 00007FEF # 2-84-94 7521 -> 00007FF2 # 2-85-1 7522 -> 00008002 # 2-85-2 7523 -> 0000800A # 2-85-3 7524 -> 00008008 # 2-85-4 7525 -> 0000800E # 2-85-5 7526 -> 00008011 # 2-85-6 7527 -> 00008016 # 2-85-7 7528 -> 00008024 # 2-85-8 7529 -> 0000802C # 2-85-9 752A -> 00008030 # 2-85-10 752B -> 00008043 # 2-85-11 752C -> 00008066 # 2-85-12 752D -> 00008071 # 2-85-13 752E -> 00008075 # 2-85-14 752F -> 0000807B # 2-85-15 7530 -> 00008099 # 2-85-16 7531 -> 0000809C # 2-85-17 7532 -> 000080A4 # 2-85-18 7533 -> 000080A7 # 2-85-19 7534 -> 000080B8 # 2-85-20 7535 -> 0002667E # 2-85-21 7536 -> 000080C5 # 2-85-22 7537 -> 000080D5 # 2-85-23 7538 -> 000080D8 # 2-85-24 7539 -> 000080E6 # 2-85-25 753A -> 000266B0 # 2-85-26 753B -> 0000810D # 2-85-27 753C -> 000080F5 # 2-85-28 753D -> 000080FB # 2-85-29 753E -> 000043EE # 2-85-30 753F -> 00008135 # 2-85-31 7540 -> 00008116 # 2-85-32 7541 -> 0000811E # 2-85-33 7542 -> 000043F0 # 2-85-34 7543 -> 00008124 # 2-85-35 7544 -> 00008127 # 2-85-36 7545 -> 0000812C # 2-85-37 7546 -> 0002671D # 2-85-38 7547 -> 0000813D # 2-85-39 7548 -> 00004408 # 2-85-40 7549 -> 00008169 # 2-85-41 754A -> 00004417 # 2-85-42 754B -> 00008181 # 2-85-43 754C -> 0000441C # 2-85-44 754D -> 00008184 # 2-85-45 754E -> 00008185 # 2-85-46 754F -> 00004422 # 2-85-47 7550 -> 00008198 # 2-85-48 7551 -> 000081B2 # 2-85-49 7552 -> 000081C1 # 2-85-50 7553 -> 000081C3 # 2-85-51 7554 -> 000081D6 # 2-85-52 7555 -> 000081DB # 2-85-53 7556 -> 000268DD # 2-85-54 7557 -> 000081E4 # 2-85-55 7558 -> 000268EA # 2-85-56 7559 -> 000081EC # 2-85-57 755A -> 00026951 # 2-85-58 755B -> 000081FD # 2-85-59 755C -> 000081FF # 2-85-60 755D -> 0002696F # 2-85-61 755E -> 00008204 # 2-85-62 755F -> 000269DD # 2-85-63 7560 -> 00008219 # 2-85-64 7561 -> 00008221 # 2-85-65 7562 -> 00008222 # 2-85-66 7563 -> 00026A1E # 2-85-67 7564 -> 00008232 # 2-85-68 7565 -> 00008234 # 2-85-69 7566 -> 0000823C # 2-85-70 7567 -> 00008246 # 2-85-71 7568 -> 00008249 # 2-85-72 7569 -> 00008245 # 2-85-73 756A -> 00026A58 # 2-85-74 756B -> 0000824B # 2-85-75 756C -> 00004476 # 2-85-76 756D -> 0000824F # 2-85-77 756E -> 0000447A # 2-85-78 756F -> 00008257 # 2-85-79 7570 -> 00026A8C # 2-85-80 7571 -> 0000825C # 2-85-81 7572 -> 00008263 # 2-85-82 7573 -> 00026AB7 # 2-85-83 7574 -> 0000FA5D # 2-85-84 7575 -> 0000FA5E # 2-85-85 7576 -> 00008279 # 2-85-86 7577 -> 00004491 # 2-85-87 7578 -> 0000827D # 2-85-88 7579 -> 0000827F # 2-85-89 757A -> 00008283 # 2-85-90 757B -> 0000828A # 2-85-91 757C -> 00008293 # 2-85-92 757D -> 000082A7 # 2-85-93 757E -> 000082A8 # 2-85-94 7621 -> 000082B2 # 2-86-1 7622 -> 000082B4 # 2-86-2 7623 -> 000082BA # 2-86-3 7624 -> 000082BC # 2-86-4 7625 -> 000082E2 # 2-86-5 7626 -> 000082E8 # 2-86-6 7627 -> 000082F7 # 2-86-7 7628 -> 00008307 # 2-86-8 7629 -> 00008308 # 2-86-9 762A -> 0000830C # 2-86-10 762B -> 00008354 # 2-86-11 762C -> 0000831B # 2-86-12 762D -> 0000831D # 2-86-13 762E -> 00008330 # 2-86-14 762F -> 0000833C # 2-86-15 7630 -> 00008344 # 2-86-16 7631 -> 00008357 # 2-86-17 7632 -> 000044BE # 2-86-18 7633 -> 0000837F # 2-86-19 7634 -> 000044D4 # 2-86-20 7635 -> 000044B3 # 2-86-21 7636 -> 0000838D # 2-86-22 7637 -> 00008394 # 2-86-23 7638 -> 00008395 # 2-86-24 7639 -> 0000839B # 2-86-25 763A -> 0000839D # 2-86-26 763B -> 000083C9 # 2-86-27 763C -> 000083D0 # 2-86-28 763D -> 000083D4 # 2-86-29 763E -> 000083DD # 2-86-30 763F -> 000083E5 # 2-86-31 7640 -> 000083F9 # 2-86-32 7641 -> 0000840F # 2-86-33 7642 -> 00008411 # 2-86-34 7643 -> 00008415 # 2-86-35 7644 -> 00026C73 # 2-86-36 7645 -> 00008417 # 2-86-37 7646 -> 00008439 # 2-86-38 7647 -> 0000844A # 2-86-39 7648 -> 0000844F # 2-86-40 7649 -> 00008451 # 2-86-41 764A -> 00008452 # 2-86-42 764B -> 00008459 # 2-86-43 764C -> 0000845A # 2-86-44 764D -> 0000845C # 2-86-45 764E -> 00026CDD # 2-86-46 764F -> 00008465 # 2-86-47 7650 -> 00008476 # 2-86-48 7651 -> 00008478 # 2-86-49 7652 -> 0000847C # 2-86-50 7653 -> 00008481 # 2-86-51 7654 -> 0000450D # 2-86-52 7655 -> 000084DC # 2-86-53 7656 -> 00008497 # 2-86-54 7657 -> 000084A6 # 2-86-55 7658 -> 000084BE # 2-86-56 7659 -> 00004508 # 2-86-57 765A -> 000084CE # 2-86-58 765B -> 000084CF # 2-86-59 765C -> 000084D3 # 2-86-60 765D -> 00026E65 # 2-86-61 765E -> 000084E7 # 2-86-62 765F -> 000084EA # 2-86-63 7660 -> 000084EF # 2-86-64 7661 -> 000084F0 # 2-86-65 7662 -> 000084F1 # 2-86-66 7663 -> 000084FA # 2-86-67 7664 -> 000084FD # 2-86-68 7665 -> 0000850C # 2-86-69 7666 -> 0000851B # 2-86-70 7667 -> 00008524 # 2-86-71 7668 -> 00008525 # 2-86-72 7669 -> 0000852B # 2-86-73 766A -> 00008534 # 2-86-74 766B -> 0000854F # 2-86-75 766C -> 0000856F # 2-86-76 766D -> 00004525 # 2-86-77 766E -> 00004543 # 2-86-78 766F -> 0000853E # 2-86-79 7670 -> 00008551 # 2-86-80 7671 -> 00008553 # 2-86-81 7672 -> 0000855E # 2-86-82 7673 -> 00008561 # 2-86-83 7674 -> 00008562 # 2-86-84 7675 -> 00026F94 # 2-86-85 7676 -> 0000857B # 2-86-86 7677 -> 0000857D # 2-86-87 7678 -> 0000857F # 2-86-88 7679 -> 00008581 # 2-86-89 767A -> 00008586 # 2-86-90 767B -> 00008593 # 2-86-91 767C -> 0000859D # 2-86-92 767D -> 0000859F # 2-86-93 767E -> 00026FF8 # 2-86-94 7721 -> 00026FF6 # 2-87-1 7722 -> 00026FF7 # 2-87-2 7723 -> 000085B7 # 2-87-3 7724 -> 000085BC # 2-87-4 7725 -> 000085C7 # 2-87-5 7726 -> 000085CA # 2-87-6 7727 -> 000085D8 # 2-87-7 7728 -> 000085D9 # 2-87-8 7729 -> 000085DF # 2-87-9 772A -> 000085E1 # 2-87-10 772B -> 000085E6 # 2-87-11 772C -> 000085F6 # 2-87-12 772D -> 00008600 # 2-87-13 772E -> 00008611 # 2-87-14 772F -> 0000861E # 2-87-15 7730 -> 00008621 # 2-87-16 7731 -> 00008624 # 2-87-17 7732 -> 00008627 # 2-87-18 7733 -> 0002710D # 2-87-19 7734 -> 00008639 # 2-87-20 7735 -> 0000863C # 2-87-21 7736 -> 00027139 # 2-87-22 7737 -> 00008640 # 2-87-23 7738 -> 0000FA20 # 2-87-24 7739 -> 00008653 # 2-87-25 773A -> 00008656 # 2-87-26 773B -> 0000866F # 2-87-27 773C -> 00008677 # 2-87-28 773D -> 0000867A # 2-87-29 773E -> 00008687 # 2-87-30 773F -> 00008689 # 2-87-31 7740 -> 0000868D # 2-87-32 7741 -> 00008691 # 2-87-33 7742 -> 0000869C # 2-87-34 7743 -> 0000869D # 2-87-35 7744 -> 000086A8 # 2-87-36 7745 -> 0000FA21 # 2-87-37 7746 -> 000086B1 # 2-87-38 7747 -> 000086B3 # 2-87-39 7748 -> 000086C1 # 2-87-40 7749 -> 000086C3 # 2-87-41 774A -> 000086D1 # 2-87-42 774B -> 000086D5 # 2-87-43 774C -> 000086D7 # 2-87-44 774D -> 000086E3 # 2-87-45 774E -> 000086E6 # 2-87-46 774F -> 000045B8 # 2-87-47 7750 -> 00008705 # 2-87-48 7751 -> 00008707 # 2-87-49 7752 -> 0000870E # 2-87-50 7753 -> 00008710 # 2-87-51 7754 -> 00008713 # 2-87-52 7755 -> 00008719 # 2-87-53 7756 -> 0000871F # 2-87-54 7757 -> 00008721 # 2-87-55 7758 -> 00008723 # 2-87-56 7759 -> 00008731 # 2-87-57 775A -> 0000873A # 2-87-58 775B -> 0000873E # 2-87-59 775C -> 00008740 # 2-87-60 775D -> 00008743 # 2-87-61 775E -> 00008751 # 2-87-62 775F -> 00008758 # 2-87-63 7760 -> 00008764 # 2-87-64 7761 -> 00008765 # 2-87-65 7762 -> 00008772 # 2-87-66 7763 -> 0000877C # 2-87-67 7764 -> 000273DB # 2-87-68 7765 -> 000273DA # 2-87-69 7766 -> 000087A7 # 2-87-70 7767 -> 00008789 # 2-87-71 7768 -> 0000878B # 2-87-72 7769 -> 00008793 # 2-87-73 776A -> 000087A0 # 2-87-74 776B -> 000273FE # 2-87-75 776C -> 000045E5 # 2-87-76 776D -> 000087BE # 2-87-77 776E -> 00027410 # 2-87-78 776F -> 000087C1 # 2-87-79 7770 -> 000087CE # 2-87-80 7771 -> 000087F5 # 2-87-81 7772 -> 000087DF # 2-87-82 7773 -> 00027449 # 2-87-83 7774 -> 000087E3 # 2-87-84 7775 -> 000087E5 # 2-87-85 7776 -> 000087E6 # 2-87-86 7777 -> 000087EA # 2-87-87 7778 -> 000087EB # 2-87-88 7779 -> 000087ED # 2-87-89 777A -> 00008801 # 2-87-90 777B -> 00008803 # 2-87-91 777C -> 0000880B # 2-87-92 777D -> 00008813 # 2-87-93 777E -> 00008828 # 2-87-94 7821 -> 0000882E # 2-88-1 7822 -> 00008832 # 2-88-2 7823 -> 0000883C # 2-88-3 7824 -> 0000460F # 2-88-4 7825 -> 0000884A # 2-88-5 7826 -> 00008858 # 2-88-6 7827 -> 0000885F # 2-88-7 7828 -> 00008864 # 2-88-8 7829 -> 00027615 # 2-88-9 782A -> 00027614 # 2-88-10 782B -> 00008869 # 2-88-11 782C -> 00027631 # 2-88-12 782D -> 0000886F # 2-88-13 782E -> 000088A0 # 2-88-14 782F -> 000088BC # 2-88-15 7830 -> 000088BD # 2-88-16 7831 -> 000088BE # 2-88-17 7832 -> 000088C0 # 2-88-18 7833 -> 000088D2 # 2-88-19 7834 -> 00027693 # 2-88-20 7835 -> 000088D1 # 2-88-21 7836 -> 000088D3 # 2-88-22 7837 -> 000088DB # 2-88-23 7838 -> 000088F0 # 2-88-24 7839 -> 000088F1 # 2-88-25 783A -> 00004641 # 2-88-26 783B -> 00008901 # 2-88-27 783C -> 0002770E # 2-88-28 783D -> 00008937 # 2-88-29 783E -> 00027723 # 2-88-30 783F -> 00008942 # 2-88-31 7840 -> 00008945 # 2-88-32 7841 -> 00008949 # 2-88-33 7842 -> 00027752 # 2-88-34 7843 -> 00004665 # 2-88-35 7844 -> 00008962 # 2-88-36 7845 -> 00008980 # 2-88-37 7846 -> 00008989 # 2-88-38 7847 -> 00008990 # 2-88-39 7848 -> 0000899F # 2-88-40 7849 -> 000089B0 # 2-88-41 784A -> 000089B7 # 2-88-42 784B -> 000089D6 # 2-88-43 784C -> 000089D8 # 2-88-44 784D -> 000089EB # 2-88-45 784E -> 000046A1 # 2-88-46 784F -> 000089F1 # 2-88-47 7850 -> 000089F3 # 2-88-48 7851 -> 000089FD # 2-88-49 7852 -> 000089FF # 2-88-50 7853 -> 000046AF # 2-88-51 7854 -> 00008A11 # 2-88-52 7855 -> 00008A14 # 2-88-53 7856 -> 00027985 # 2-88-54 7857 -> 00008A21 # 2-88-55 7858 -> 00008A35 # 2-88-56 7859 -> 00008A3E # 2-88-57 785A -> 00008A45 # 2-88-58 785B -> 00008A4D # 2-88-59 785C -> 00008A58 # 2-88-60 785D -> 00008AAE # 2-88-61 785E -> 00008A90 # 2-88-62 785F -> 00008AB7 # 2-88-63 7860 -> 00008ABE # 2-88-64 7861 -> 00008AD7 # 2-88-65 7862 -> 00008AFC # 2-88-66 7863 -> 00027A84 # 2-88-67 7864 -> 00008B0A # 2-88-68 7865 -> 00008B05 # 2-88-69 7866 -> 00008B0D # 2-88-70 7867 -> 00008B1C # 2-88-71 7868 -> 00008B1F # 2-88-72 7869 -> 00008B2D # 2-88-73 786A -> 00008B43 # 2-88-74 786B -> 0000470C # 2-88-75 786C -> 00008B51 # 2-88-76 786D -> 00008B5E # 2-88-77 786E -> 00008B76 # 2-88-78 786F -> 00008B7F # 2-88-79 7870 -> 00008B81 # 2-88-80 7871 -> 00008B8B # 2-88-81 7872 -> 00008B94 # 2-88-82 7873 -> 00008B95 # 2-88-83 7874 -> 00008B9C # 2-88-84 7875 -> 00008B9E # 2-88-85 7876 -> 00008C39 # 2-88-86 7877 -> 00027BB3 # 2-88-87 7878 -> 00008C3D # 2-88-88 7879 -> 00027BBE # 2-88-89 787A -> 00027BC7 # 2-88-90 787B -> 00008C45 # 2-88-91 787C -> 00008C47 # 2-88-92 787D -> 00008C4F # 2-88-93 787E -> 00008C54 # 2-88-94 7921 -> 00008C57 # 2-89-1 7922 -> 00008C69 # 2-89-2 7923 -> 00008C6D # 2-89-3 7924 -> 00008C73 # 2-89-4 7925 -> 00027CB8 # 2-89-5 7926 -> 00008C93 # 2-89-6 7927 -> 00008C92 # 2-89-7 7928 -> 00008C99 # 2-89-8 7929 -> 00004764 # 2-89-9 792A -> 00008C9B # 2-89-10 792B -> 00008CA4 # 2-89-11 792C -> 00008CD6 # 2-89-12 792D -> 00008CD5 # 2-89-13 792E -> 00008CD9 # 2-89-14 792F -> 00027DA0 # 2-89-15 7930 -> 00008CF0 # 2-89-16 7931 -> 00008CF1 # 2-89-17 7932 -> 00027E10 # 2-89-18 7933 -> 00008D09 # 2-89-19 7934 -> 00008D0E # 2-89-20 7935 -> 00008D6C # 2-89-21 7936 -> 00008D84 # 2-89-22 7937 -> 00008D95 # 2-89-23 7938 -> 00008DA6 # 2-89-24 7939 -> 00027FB7 # 2-89-25 793A -> 00008DC6 # 2-89-26 793B -> 00008DC8 # 2-89-27 793C -> 00008DD9 # 2-89-28 793D -> 00008DEC # 2-89-29 793E -> 00008E0C # 2-89-30 793F -> 000047FD # 2-89-31 7940 -> 00008DFD # 2-89-32 7941 -> 00008E06 # 2-89-33 7942 -> 0002808A # 2-89-34 7943 -> 00008E14 # 2-89-35 7944 -> 00008E16 # 2-89-36 7945 -> 00008E21 # 2-89-37 7946 -> 00008E22 # 2-89-38 7947 -> 00008E27 # 2-89-39 7948 -> 000280BB # 2-89-40 7949 -> 00004816 # 2-89-41 794A -> 00008E36 # 2-89-42 794B -> 00008E39 # 2-89-43 794C -> 00008E4B # 2-89-44 794D -> 00008E54 # 2-89-45 794E -> 00008E62 # 2-89-46 794F -> 00008E6C # 2-89-47 7950 -> 00008E6D # 2-89-48 7951 -> 00008E6F # 2-89-49 7952 -> 00008E98 # 2-89-50 7953 -> 00008E9E # 2-89-51 7954 -> 00008EAE # 2-89-52 7955 -> 00008EB3 # 2-89-53 7956 -> 00008EB5 # 2-89-54 7957 -> 00008EB6 # 2-89-55 7958 -> 00008EBB # 2-89-56 7959 -> 00028282 # 2-89-57 795A -> 00008ED1 # 2-89-58 795B -> 00008ED4 # 2-89-59 795C -> 0000484E # 2-89-60 795D -> 00008EF9 # 2-89-61 795E -> 000282F3 # 2-89-62 795F -> 00008F00 # 2-89-63 7960 -> 00008F08 # 2-89-64 7961 -> 00008F17 # 2-89-65 7962 -> 00008F2B # 2-89-66 7963 -> 00008F40 # 2-89-67 7964 -> 00008F4A # 2-89-68 7965 -> 00008F58 # 2-89-69 7966 -> 0002840C # 2-89-70 7967 -> 00008FA4 # 2-89-71 7968 -> 00008FB4 # 2-89-72 7969 -> 0000FA66 # 2-89-73 796A -> 00008FB6 # 2-89-74 796B -> 00028455 # 2-89-75 796C -> 00008FC1 # 2-89-76 796D -> 00008FC6 # 2-89-77 796E -> 0000FA24 # 2-89-78 796F -> 00008FCA # 2-89-79 7970 -> 00008FCD # 2-89-80 7971 -> 00008FD3 # 2-89-81 7972 -> 00008FD5 # 2-89-82 7973 -> 00008FE0 # 2-89-83 7974 -> 00008FF1 # 2-89-84 7975 -> 00008FF5 # 2-89-85 7976 -> 00008FFB # 2-89-86 7977 -> 00009002 # 2-89-87 7978 -> 0000900C # 2-89-88 7979 -> 00009037 # 2-89-89 797A -> 0002856B # 2-89-90 797B -> 00009043 # 2-89-91 797C -> 00009044 # 2-89-92 797D -> 0000905D # 2-89-93 797E -> 000285C8 # 2-89-94 7A21 -> 000285C9 # 2-90-1 7A22 -> 00009085 # 2-90-2 7A23 -> 0000908C # 2-90-3 7A24 -> 00009090 # 2-90-4 7A25 -> 0000961D # 2-90-5 7A26 -> 000090A1 # 2-90-6 7A27 -> 000048B5 # 2-90-7 7A28 -> 000090B0 # 2-90-8 7A29 -> 000090B6 # 2-90-9 7A2A -> 000090C3 # 2-90-10 7A2B -> 000090C8 # 2-90-11 7A2C -> 000286D7 # 2-90-12 7A2D -> 000090DC # 2-90-13 7A2E -> 000090DF # 2-90-14 7A2F -> 000286FA # 2-90-15 7A30 -> 000090F6 # 2-90-16 7A31 -> 000090F2 # 2-90-17 7A32 -> 00009100 # 2-90-18 7A33 -> 000090EB # 2-90-19 7A34 -> 000090FE # 2-90-20 7A35 -> 000090FF # 2-90-21 7A36 -> 00009104 # 2-90-22 7A37 -> 00009106 # 2-90-23 7A38 -> 00009118 # 2-90-24 7A39 -> 0000911C # 2-90-25 7A3A -> 0000911E # 2-90-26 7A3B -> 00009137 # 2-90-27 7A3C -> 00009139 # 2-90-28 7A3D -> 0000913A # 2-90-29 7A3E -> 00009146 # 2-90-30 7A3F -> 00009147 # 2-90-31 7A40 -> 00009157 # 2-90-32 7A41 -> 00009159 # 2-90-33 7A42 -> 00009161 # 2-90-34 7A43 -> 00009164 # 2-90-35 7A44 -> 00009174 # 2-90-36 7A45 -> 00009179 # 2-90-37 7A46 -> 00009185 # 2-90-38 7A47 -> 0000918E # 2-90-39 7A48 -> 000091A8 # 2-90-40 7A49 -> 000091AE # 2-90-41 7A4A -> 000091B3 # 2-90-42 7A4B -> 000091B6 # 2-90-43 7A4C -> 000091C3 # 2-90-44 7A4D -> 000091C4 # 2-90-45 7A4E -> 000091DA # 2-90-46 7A4F -> 00028949 # 2-90-47 7A50 -> 00028946 # 2-90-48 7A51 -> 000091EC # 2-90-49 7A52 -> 000091EE # 2-90-50 7A53 -> 00009201 # 2-90-51 7A54 -> 0000920A # 2-90-52 7A55 -> 00009216 # 2-90-53 7A56 -> 00009217 # 2-90-54 7A57 -> 0002896B # 2-90-55 7A58 -> 00009233 # 2-90-56 7A59 -> 00009242 # 2-90-57 7A5A -> 00009247 # 2-90-58 7A5B -> 0000924A # 2-90-59 7A5C -> 0000924E # 2-90-60 7A5D -> 00009251 # 2-90-61 7A5E -> 00009256 # 2-90-62 7A5F -> 00009259 # 2-90-63 7A60 -> 00009260 # 2-90-64 7A61 -> 00009261 # 2-90-65 7A62 -> 00009265 # 2-90-66 7A63 -> 00009267 # 2-90-67 7A64 -> 00009268 # 2-90-68 7A65 -> 00028987 # 2-90-69 7A66 -> 00028988 # 2-90-70 7A67 -> 0000927C # 2-90-71 7A68 -> 0000927D # 2-90-72 7A69 -> 0000927F # 2-90-73 7A6A -> 00009289 # 2-90-74 7A6B -> 0000928D # 2-90-75 7A6C -> 00009297 # 2-90-76 7A6D -> 00009299 # 2-90-77 7A6E -> 0000929F # 2-90-78 7A6F -> 000092A7 # 2-90-79 7A70 -> 000092AB # 2-90-80 7A71 -> 000289BA # 2-90-81 7A72 -> 000289BB # 2-90-82 7A73 -> 000092B2 # 2-90-83 7A74 -> 000092BF # 2-90-84 7A75 -> 000092C0 # 2-90-85 7A76 -> 000092C6 # 2-90-86 7A77 -> 000092CE # 2-90-87 7A78 -> 000092D0 # 2-90-88 7A79 -> 000092D7 # 2-90-89 7A7A -> 000092D9 # 2-90-90 7A7B -> 000092E5 # 2-90-91 7A7C -> 000092E7 # 2-90-92 7A7D -> 00009311 # 2-90-93 7A7E -> 00028A1E # 2-90-94 7B21 -> 00028A29 # 2-91-1 7B22 -> 000092F7 # 2-91-2 7B23 -> 000092F9 # 2-91-3 7B24 -> 000092FB # 2-91-4 7B25 -> 00009302 # 2-91-5 7B26 -> 0000930D # 2-91-6 7B27 -> 00009315 # 2-91-7 7B28 -> 0000931D # 2-91-8 7B29 -> 0000931E # 2-91-9 7B2A -> 00009327 # 2-91-10 7B2B -> 00009329 # 2-91-11 7B2C -> 00028A71 # 2-91-12 7B2D -> 00028A43 # 2-91-13 7B2E -> 00009347 # 2-91-14 7B2F -> 00009351 # 2-91-15 7B30 -> 00009357 # 2-91-16 7B31 -> 0000935A # 2-91-17 7B32 -> 0000936B # 2-91-18 7B33 -> 00009371 # 2-91-19 7B34 -> 00009373 # 2-91-20 7B35 -> 000093A1 # 2-91-21 7B36 -> 00028A99 # 2-91-22 7B37 -> 00028ACD # 2-91-23 7B38 -> 00009388 # 2-91-24 7B39 -> 0000938B # 2-91-25 7B3A -> 0000938F # 2-91-26 7B3B -> 0000939E # 2-91-27 7B3C -> 000093F5 # 2-91-28 7B3D -> 00028AE4 # 2-91-29 7B3E -> 00028ADD # 2-91-30 7B3F -> 000093F1 # 2-91-31 7B40 -> 000093C1 # 2-91-32 7B41 -> 000093C7 # 2-91-33 7B42 -> 000093DC # 2-91-34 7B43 -> 000093E2 # 2-91-35 7B44 -> 000093E7 # 2-91-36 7B45 -> 00009409 # 2-91-37 7B46 -> 0000940F # 2-91-38 7B47 -> 00009416 # 2-91-39 7B48 -> 00009417 # 2-91-40 7B49 -> 000093FB # 2-91-41 7B4A -> 00009432 # 2-91-42 7B4B -> 00009434 # 2-91-43 7B4C -> 0000943B # 2-91-44 7B4D -> 00009445 # 2-91-45 7B4E -> 00028BC1 # 2-91-46 7B4F -> 00028BEF # 2-91-47 7B50 -> 0000946D # 2-91-48 7B51 -> 0000946F # 2-91-49 7B52 -> 00009578 # 2-91-50 7B53 -> 00009579 # 2-91-51 7B54 -> 00009586 # 2-91-52 7B55 -> 0000958C # 2-91-53 7B56 -> 0000958D # 2-91-54 7B57 -> 00028D10 # 2-91-55 7B58 -> 000095AB # 2-91-56 7B59 -> 000095B4 # 2-91-57 7B5A -> 00028D71 # 2-91-58 7B5B -> 000095C8 # 2-91-59 7B5C -> 00028DFB # 2-91-60 7B5D -> 00028E1F # 2-91-61 7B5E -> 0000962C # 2-91-62 7B5F -> 00009633 # 2-91-63 7B60 -> 00009634 # 2-91-64 7B61 -> 00028E36 # 2-91-65 7B62 -> 0000963C # 2-91-66 7B63 -> 00009641 # 2-91-67 7B64 -> 00009661 # 2-91-68 7B65 -> 00028E89 # 2-91-69 7B66 -> 00009682 # 2-91-70 7B67 -> 00028EEB # 2-91-71 7B68 -> 0000969A # 2-91-72 7B69 -> 00028F32 # 2-91-73 7B6A -> 000049E7 # 2-91-74 7B6B -> 000096A9 # 2-91-75 7B6C -> 000096AF # 2-91-76 7B6D -> 000096B3 # 2-91-77 7B6E -> 000096BA # 2-91-78 7B6F -> 000096BD # 2-91-79 7B70 -> 000049FA # 2-91-80 7B71 -> 00028FF8 # 2-91-81 7B72 -> 000096D8 # 2-91-82 7B73 -> 000096DA # 2-91-83 7B74 -> 000096DD # 2-91-84 7B75 -> 00004A04 # 2-91-85 7B76 -> 00009714 # 2-91-86 7B77 -> 00009723 # 2-91-87 7B78 -> 00004A29 # 2-91-88 7B79 -> 00009736 # 2-91-89 7B7A -> 00009741 # 2-91-90 7B7B -> 00009747 # 2-91-91 7B7C -> 00009755 # 2-91-92 7B7D -> 00009757 # 2-91-93 7B7E -> 0000975B # 2-91-94 7C21 -> 0000976A # 2-92-1 7C22 -> 000292A0 # 2-92-2 7C23 -> 000292B1 # 2-92-3 7C24 -> 00009796 # 2-92-4 7C25 -> 0000979A # 2-92-5 7C26 -> 0000979E # 2-92-6 7C27 -> 000097A2 # 2-92-7 7C28 -> 000097B1 # 2-92-8 7C29 -> 000097B2 # 2-92-9 7C2A -> 000097BE # 2-92-10 7C2B -> 000097CC # 2-92-11 7C2C -> 000097D1 # 2-92-12 7C2D -> 000097D4 # 2-92-13 7C2E -> 000097D8 # 2-92-14 7C2F -> 000097D9 # 2-92-15 7C30 -> 000097E1 # 2-92-16 7C31 -> 000097F1 # 2-92-17 7C32 -> 00009804 # 2-92-18 7C33 -> 0000980D # 2-92-19 7C34 -> 0000980E # 2-92-20 7C35 -> 00009814 # 2-92-21 7C36 -> 00009816 # 2-92-22 7C37 -> 00004ABC # 2-92-23 7C38 -> 00029490 # 2-92-24 7C39 -> 00009823 # 2-92-25 7C3A -> 00009832 # 2-92-26 7C3B -> 00009833 # 2-92-27 7C3C -> 00009825 # 2-92-28 7C3D -> 00009847 # 2-92-29 7C3E -> 00009866 # 2-92-30 7C3F -> 000098AB # 2-92-31 7C40 -> 000098AD # 2-92-32 7C41 -> 000098B0 # 2-92-33 7C42 -> 000295CF # 2-92-34 7C43 -> 000098B7 # 2-92-35 7C44 -> 000098B8 # 2-92-36 7C45 -> 000098BB # 2-92-37 7C46 -> 000098BC # 2-92-38 7C47 -> 000098BF # 2-92-39 7C48 -> 000098C2 # 2-92-40 7C49 -> 000098C7 # 2-92-41 7C4A -> 000098CB # 2-92-42 7C4B -> 000098E0 # 2-92-43 7C4C -> 0002967F # 2-92-44 7C4D -> 000098E1 # 2-92-45 7C4E -> 000098E3 # 2-92-46 7C4F -> 000098E5 # 2-92-47 7C50 -> 000098EA # 2-92-48 7C51 -> 000098F0 # 2-92-49 7C52 -> 000098F1 # 2-92-50 7C53 -> 000098F3 # 2-92-51 7C54 -> 00009908 # 2-92-52 7C55 -> 00004B3B # 2-92-53 7C56 -> 000296F0 # 2-92-54 7C57 -> 00009916 # 2-92-55 7C58 -> 00009917 # 2-92-56 7C59 -> 00029719 # 2-92-57 7C5A -> 0000991A # 2-92-58 7C5B -> 0000991B # 2-92-59 7C5C -> 0000991C # 2-92-60 7C5D -> 00029750 # 2-92-61 7C5E -> 00009931 # 2-92-62 7C5F -> 00009932 # 2-92-63 7C60 -> 00009933 # 2-92-64 7C61 -> 0000993A # 2-92-65 7C62 -> 0000993B # 2-92-66 7C63 -> 0000993C # 2-92-67 7C64 -> 00009940 # 2-92-68 7C65 -> 00009941 # 2-92-69 7C66 -> 00009946 # 2-92-70 7C67 -> 0000994D # 2-92-71 7C68 -> 0000994E # 2-92-72 7C69 -> 0000995C # 2-92-73 7C6A -> 0000995F # 2-92-74 7C6B -> 00009960 # 2-92-75 7C6C -> 000099A3 # 2-92-76 7C6D -> 000099A6 # 2-92-77 7C6E -> 000099B9 # 2-92-78 7C6F -> 000099BD # 2-92-79 7C70 -> 000099BF # 2-92-80 7C71 -> 000099C3 # 2-92-81 7C72 -> 000099C9 # 2-92-82 7C73 -> 000099D4 # 2-92-83 7C74 -> 000099D9 # 2-92-84 7C75 -> 000099DE # 2-92-85 7C76 -> 000298C6 # 2-92-86 7C77 -> 000099F0 # 2-92-87 7C78 -> 000099F9 # 2-92-88 7C79 -> 000099FC # 2-92-89 7C7A -> 00009A0A # 2-92-90 7C7B -> 00009A11 # 2-92-91 7C7C -> 00009A16 # 2-92-92 7C7D -> 00009A1A # 2-92-93 7C7E -> 00009A20 # 2-92-94 7D21 -> 00009A31 # 2-93-1 7D22 -> 00009A36 # 2-93-2 7D23 -> 00009A44 # 2-93-3 7D24 -> 00009A4C # 2-93-4 7D25 -> 00009A58 # 2-93-5 7D26 -> 00004BC2 # 2-93-6 7D27 -> 00009AAF # 2-93-7 7D28 -> 00004BCA # 2-93-8 7D29 -> 00009AB7 # 2-93-9 7D2A -> 00004BD2 # 2-93-10 7D2B -> 00009AB9 # 2-93-11 7D2C -> 00029A72 # 2-93-12 7D2D -> 00009AC6 # 2-93-13 7D2E -> 00009AD0 # 2-93-14 7D2F -> 00009AD2 # 2-93-15 7D30 -> 00009AD5 # 2-93-16 7D31 -> 00004BE8 # 2-93-17 7D32 -> 00009ADC # 2-93-18 7D33 -> 00009AE0 # 2-93-19 7D34 -> 00009AE5 # 2-93-20 7D35 -> 00009AE9 # 2-93-21 7D36 -> 00009B03 # 2-93-22 7D37 -> 00009B0C # 2-93-23 7D38 -> 00009B10 # 2-93-24 7D39 -> 00009B12 # 2-93-25 7D3A -> 00009B16 # 2-93-26 7D3B -> 00009B1C # 2-93-27 7D3C -> 00009B2B # 2-93-28 7D3D -> 00009B33 # 2-93-29 7D3E -> 00009B3D # 2-93-30 7D3F -> 00004C20 # 2-93-31 7D40 -> 00009B4B # 2-93-32 7D41 -> 00009B63 # 2-93-33 7D42 -> 00009B65 # 2-93-34 7D43 -> 00009B6B # 2-93-35 7D44 -> 00009B6C # 2-93-36 7D45 -> 00009B73 # 2-93-37 7D46 -> 00009B76 # 2-93-38 7D47 -> 00009B77 # 2-93-39 7D48 -> 00009BA6 # 2-93-40 7D49 -> 00009BAC # 2-93-41 7D4A -> 00009BB1 # 2-93-42 7D4B -> 00029DDB # 2-93-43 7D4C -> 00029E3D # 2-93-44 7D4D -> 00009BB2 # 2-93-45 7D4E -> 00009BB8 # 2-93-46 7D4F -> 00009BBE # 2-93-47 7D50 -> 00009BC7 # 2-93-48 7D51 -> 00009BF3 # 2-93-49 7D52 -> 00009BD8 # 2-93-50 7D53 -> 00009BDD # 2-93-51 7D54 -> 00009BE7 # 2-93-52 7D55 -> 00009BEA # 2-93-53 7D56 -> 00009BEB # 2-93-54 7D57 -> 00009BEF # 2-93-55 7D58 -> 00009BEE # 2-93-56 7D59 -> 00029E15 # 2-93-57 7D5A -> 00009BFA # 2-93-58 7D5B -> 00029E8A # 2-93-59 7D5C -> 00009BF7 # 2-93-60 7D5D -> 00029E49 # 2-93-61 7D5E -> 00009C16 # 2-93-62 7D5F -> 00009C18 # 2-93-63 7D60 -> 00009C19 # 2-93-64 7D61 -> 00009C1A # 2-93-65 7D62 -> 00009C1D # 2-93-66 7D63 -> 00009C22 # 2-93-67 7D64 -> 00009C27 # 2-93-68 7D65 -> 00009C29 # 2-93-69 7D66 -> 00009C2A # 2-93-70 7D67 -> 00029EC4 # 2-93-71 7D68 -> 00009C31 # 2-93-72 7D69 -> 00009C36 # 2-93-73 7D6A -> 00009C37 # 2-93-74 7D6B -> 00009C45 # 2-93-75 7D6C -> 00009C5C # 2-93-76 7D6D -> 00029EE9 # 2-93-77 7D6E -> 00009C49 # 2-93-78 7D6F -> 00009C4A # 2-93-79 7D70 -> 00029EDB # 2-93-80 7D71 -> 00009C54 # 2-93-81 7D72 -> 00009C58 # 2-93-82 7D73 -> 00009C5B # 2-93-83 7D74 -> 00009C5D # 2-93-84 7D75 -> 00009C5F # 2-93-85 7D76 -> 00009C69 # 2-93-86 7D77 -> 00009C6A # 2-93-87 7D78 -> 00009C6B # 2-93-88 7D79 -> 00009C6D # 2-93-89 7D7A -> 00009C6E # 2-93-90 7D7B -> 00009C70 # 2-93-91 7D7C -> 00009C72 # 2-93-92 7D7D -> 00009C75 # 2-93-93 7D7E -> 00009C7A # 2-93-94 7E21 -> 00009CE6 # 2-94-1 7E22 -> 00009CF2 # 2-94-2 7E23 -> 00009D0B # 2-94-3 7E24 -> 00009D02 # 2-94-4 7E25 -> 00029FCE # 2-94-5 7E26 -> 00009D11 # 2-94-6 7E27 -> 00009D17 # 2-94-7 7E28 -> 00009D18 # 2-94-8 7E29 -> 0002A02F # 2-94-9 7E2A -> 00004CC4 # 2-94-10 7E2B -> 0002A01A # 2-94-11 7E2C -> 00009D32 # 2-94-12 7E2D -> 00004CD1 # 2-94-13 7E2E -> 00009D42 # 2-94-14 7E2F -> 00009D4A # 2-94-15 7E30 -> 00009D5F # 2-94-16 7E31 -> 00009D62 # 2-94-17 7E32 -> 0002A0F9 # 2-94-18 7E33 -> 00009D69 # 2-94-19 7E34 -> 00009D6B # 2-94-20 7E35 -> 0002A082 # 2-94-21 7E36 -> 00009D73 # 2-94-22 7E37 -> 00009D76 # 2-94-23 7E38 -> 00009D77 # 2-94-24 7E39 -> 00009D7E # 2-94-25 7E3A -> 00009D84 # 2-94-26 7E3B -> 00009D8D # 2-94-27 7E3C -> 00009D99 # 2-94-28 7E3D -> 00009DA1 # 2-94-29 7E3E -> 00009DBF # 2-94-30 7E3F -> 00009DB5 # 2-94-31 7E40 -> 00009DB9 # 2-94-32 7E41 -> 00009DBD # 2-94-33 7E42 -> 00009DC3 # 2-94-34 7E43 -> 00009DC7 # 2-94-35 7E44 -> 00009DC9 # 2-94-36 7E45 -> 00009DD6 # 2-94-37 7E46 -> 00009DDA # 2-94-38 7E47 -> 00009DDF # 2-94-39 7E48 -> 00009DE0 # 2-94-40 7E49 -> 00009DE3 # 2-94-41 7E4A -> 00009DF4 # 2-94-42 7E4B -> 00004D07 # 2-94-43 7E4C -> 00009E0A # 2-94-44 7E4D -> 00009E02 # 2-94-45 7E4E -> 00009E0D # 2-94-46 7E4F -> 00009E19 # 2-94-47 7E50 -> 00009E1C # 2-94-48 7E51 -> 00009E1D # 2-94-49 7E52 -> 00009E7B # 2-94-50 7E53 -> 00022218 # 2-94-51 7E54 -> 00009E80 # 2-94-52 7E55 -> 00009E85 # 2-94-53 7E56 -> 00009E9B # 2-94-54 7E57 -> 00009EA8 # 2-94-55 7E58 -> 0002A38C # 2-94-56 7E59 -> 00009EBD # 2-94-57 7E5A -> 0002A437 # 2-94-58 7E5B -> 00009EDF # 2-94-59 7E5C -> 00009EE7 # 2-94-60 7E5D -> 00009EEE # 2-94-61 7E5E -> 00009EFF # 2-94-62 7E5F -> 00009F02 # 2-94-63 7E60 -> 00004D77 # 2-94-64 7E61 -> 00009F03 # 2-94-65 7E62 -> 00009F17 # 2-94-66 7E63 -> 00009F19 # 2-94-67 7E64 -> 00009F2F # 2-94-68 7E65 -> 00009F37 # 2-94-69 7E66 -> 00009F3A # 2-94-70 7E67 -> 00009F3D # 2-94-71 7E68 -> 00009F41 # 2-94-72 7E69 -> 00009F45 # 2-94-73 7E6A -> 00009F46 # 2-94-74 7E6B -> 00009F53 # 2-94-75 7E6C -> 00009F55 # 2-94-76 7E6D -> 00009F58 # 2-94-77 7E6E -> 0002A5F1 # 2-94-78 7E6F -> 00009F5D # 2-94-79 7E70 -> 0002A602 # 2-94-80 7E71 -> 00009F69 # 2-94-81 7E72 -> 0002A61A # 2-94-82 7E73 -> 00009F6D # 2-94-83 7E74 -> 00009F70 # 2-94-84 7E75 -> 00009F75 # 2-94-85 7E76 -> 0002A6B2 # 2-94-86 ./mytool/mys/Makefile0000644000175000017500000000672511333154601014637 0ustar henrichhenrichinclude ../../Makefile.conf #------------------------------------------------------------------------------- .SUFFIXES: .o .cpp .h .mys .my SRC_MAPS=$(basename $(notdir $(wildcard *.mys))) OUT_MAPS=$(addsuffix .my,$(SRC_MAPS)) # # Contains private, unofficial JIS0213-1.TXT JIS0213-2.TXT # needed for jis-0213-1.mys, jis-0213-2.mys, shift-jis-3.mys # JIS0213_1=../../../JISX0213-1.TXT JIS0213_2=../../../JISX0213-2.TXT TARGET = $(OUT_MAPS) %.o:%.cpp $(CXX) -c $(ALL_CFLAGS) -o $@ $< all: $(TARGET) %.my:%.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< OldItalic.my:OldItalic.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< Hosszu.my:Hosszu.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_AS.my:IS_AS.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_BN.my:IS_BN.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_DV.my:IS_DV.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_GJ.my:IS_GJ.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_KN.my:IS_KN.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_ML.my:IS_ML.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_OR.my:IS_OR.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_PJ.my:IS_PJ.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_RM.my:IS_RM.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_TL.my:IS_TL.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< IS_TM.my:IS_TM.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< tscii.my:tscii.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< nastaliq.my:nastaliq.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< # Make all jis-0213-1.mys, jis-0213-2.mys, shift-jis-3.mys # This is usually already made. jisx0213: perl ../../bin/parsejisx0213.pl 2 jis-0213-1.mys $(JIS0213_1) > jis-0213-1.mys perl ../../bin/parsejisx0213.pl 2 jis-0213-2.mys $(JIS0213_2) > jis-0213-2.mys perl ../../bin/parsejisx0213.pl 1 shift-jis-3.mys $(JIS0213_1) $(JIS0213_2) > shift-jis-3.mys jis-0213-1.my:jis-0213-1.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< jis-0213-2.my:jis-0213-2.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< shift-jis-3.my:shift-jis-3.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< gb-18030.my:gb-18030.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< charclass.my:charclass.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< bidiclass.my:bidiclass.mys @echo "Making $@ ..." $(MYTOOL) -convert my -write $@ -mys $< -rmys $< clean: rm -f *.my *.o *.bak core message.txt depend: install: $(TARGET) @if test ! -d $(DESTDIR)/$(prefix) ; then mkdir -p $(DESTDIR)/$(prefix); fi @if test ! -d $(DESTDIR)/$(datadir) ; then mkdir -p $(DESTDIR)/$(datadir); fi @if test ! -d $(DESTDIR)/$(datadir)/yudit ; then mkdir -p $(DESTDIR)/$(datadir)/yudit;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/data ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/data;fi @echo installing my files... @$(INSTALL_DATA) *.my $(DESTDIR)/$(datadir)/yudit/data ifeq (.depend, $(wildcard .depend)) include .depend endif ./mytool/mys/precompose.mys0000644000175000017500000205276511326531434016121 0ustar henrichhenrich# # generated by precompose.pl 2010-01-23 # decoder # NAME=precompose.my COMM=autogenerated by precompose.pl 2010-01-23 from COMM=ftp://ftp.unicode.org/Public/5.2.0/uc/UnicodeData.txt TYPE=0 SECTION=decompose ENCODE=0 KEY_WIDTH=1 VALUE_WIDTH=1 KEY_LENGTH=0 VALUE_LENGTH=0 00C0 -> 0041 0300 00C1 -> 0041 0301 00C2 -> 0041 0302 00C3 -> 0041 0303 00C4 -> 0041 0308 00C5 -> 0041 030A 00C7 -> 0043 0327 00C8 -> 0045 0300 00C9 -> 0045 0301 00CA -> 0045 0302 00CB -> 0045 0308 00CC -> 0049 0300 00CD -> 0049 0301 00CE -> 0049 0302 00CF -> 0049 0308 00D1 -> 004E 0303 00D2 -> 004F 0300 00D3 -> 004F 0301 00D4 -> 004F 0302 00D5 -> 004F 0303 00D6 -> 004F 0308 00D9 -> 0055 0300 00DA -> 0055 0301 00DB -> 0055 0302 00DC -> 0055 0308 00DD -> 0059 0301 00E0 -> 0061 0300 00E1 -> 0061 0301 00E2 -> 0061 0302 00E3 -> 0061 0303 00E4 -> 0061 0308 00E5 -> 0061 030A 00E7 -> 0063 0327 00E8 -> 0065 0300 00E9 -> 0065 0301 00EA -> 0065 0302 00EB -> 0065 0308 00EC -> 0069 0300 00ED -> 0069 0301 00EE -> 0069 0302 00EF -> 0069 0308 00F1 -> 006E 0303 00F2 -> 006F 0300 00F3 -> 006F 0301 00F4 -> 006F 0302 00F5 -> 006F 0303 00F6 -> 006F 0308 00F9 -> 0075 0300 00FA -> 0075 0301 00FB -> 0075 0302 00FC -> 0075 0308 00FD -> 0079 0301 00FF -> 0079 0308 0100 -> 0041 0304 0101 -> 0061 0304 0102 -> 0041 0306 0103 -> 0061 0306 0104 -> 0041 0328 0105 -> 0061 0328 0106 -> 0043 0301 0107 -> 0063 0301 0108 -> 0043 0302 0109 -> 0063 0302 010A -> 0043 0307 010B -> 0063 0307 010C -> 0043 030C 010D -> 0063 030C 010E -> 0044 030C 010F -> 0064 030C 0112 -> 0045 0304 0113 -> 0065 0304 0114 -> 0045 0306 0115 -> 0065 0306 0116 -> 0045 0307 0117 -> 0065 0307 0118 -> 0045 0328 0119 -> 0065 0328 011A -> 0045 030C 011B -> 0065 030C 011C -> 0047 0302 011D -> 0067 0302 011E -> 0047 0306 011F -> 0067 0306 0120 -> 0047 0307 0121 -> 0067 0307 0122 -> 0047 0327 0123 -> 0067 0327 0124 -> 0048 0302 0125 -> 0068 0302 0128 -> 0049 0303 0129 -> 0069 0303 012A -> 0049 0304 012B -> 0069 0304 012C -> 0049 0306 012D -> 0069 0306 012E -> 0049 0328 012F -> 0069 0328 0130 -> 0049 0307 0134 -> 004A 0302 0135 -> 006A 0302 0136 -> 004B 0327 0137 -> 006B 0327 0139 -> 004C 0301 013A -> 006C 0301 013B -> 004C 0327 013C -> 006C 0327 013D -> 004C 030C 013E -> 006C 030C 0143 -> 004E 0301 0144 -> 006E 0301 0145 -> 004E 0327 0146 -> 006E 0327 0147 -> 004E 030C 0148 -> 006E 030C 014C -> 004F 0304 014D -> 006F 0304 014E -> 004F 0306 014F -> 006F 0306 0150 -> 004F 030B 0151 -> 006F 030B 0154 -> 0052 0301 0155 -> 0072 0301 0156 -> 0052 0327 0157 -> 0072 0327 0158 -> 0052 030C 0159 -> 0072 030C 015A -> 0053 0301 015B -> 0073 0301 015C -> 0053 0302 015D -> 0073 0302 015E -> 0053 0327 015F -> 0073 0327 0160 -> 0053 030C 0161 -> 0073 030C 0162 -> 0054 0327 0163 -> 0074 0327 0164 -> 0054 030C 0165 -> 0074 030C 0168 -> 0055 0303 0169 -> 0075 0303 016A -> 0055 0304 016B -> 0075 0304 016C -> 0055 0306 016D -> 0075 0306 016E -> 0055 030A 016F -> 0075 030A 0170 -> 0055 030B 0171 -> 0075 030B 0172 -> 0055 0328 0173 -> 0075 0328 0174 -> 0057 0302 0175 -> 0077 0302 0176 -> 0059 0302 0177 -> 0079 0302 0178 -> 0059 0308 0179 -> 005A 0301 017A -> 007A 0301 017B -> 005A 0307 017C -> 007A 0307 017D -> 005A 030C 017E -> 007A 030C 01A0 -> 004F 031B 01A1 -> 006F 031B 01AF -> 0055 031B 01B0 -> 0075 031B 01CD -> 0041 030C 01CE -> 0061 030C 01CF -> 0049 030C 01D0 -> 0069 030C 01D1 -> 004F 030C 01D2 -> 006F 030C 01D3 -> 0055 030C 01D4 -> 0075 030C 01D5 -> 00DC 0304 01D6 -> 00FC 0304 01D7 -> 00DC 0301 01D8 -> 00FC 0301 01D9 -> 00DC 030C 01DA -> 00FC 030C 01DB -> 00DC 0300 01DC -> 00FC 0300 01DE -> 00C4 0304 01DF -> 00E4 0304 01E0 -> 0226 0304 01E1 -> 0227 0304 01E2 -> 00C6 0304 01E3 -> 00E6 0304 01E6 -> 0047 030C 01E7 -> 0067 030C 01E8 -> 004B 030C 01E9 -> 006B 030C 01EA -> 004F 0328 01EB -> 006F 0328 01EC -> 01EA 0304 01ED -> 01EB 0304 01EE -> 01B7 030C 01EF -> 0292 030C 01F0 -> 006A 030C 01F4 -> 0047 0301 01F5 -> 0067 0301 01F8 -> 004E 0300 01F9 -> 006E 0300 01FA -> 00C5 0301 01FB -> 00E5 0301 01FC -> 00C6 0301 01FD -> 00E6 0301 01FE -> 00D8 0301 01FF -> 00F8 0301 0200 -> 0041 030F 0201 -> 0061 030F 0202 -> 0041 0311 0203 -> 0061 0311 0204 -> 0045 030F 0205 -> 0065 030F 0206 -> 0045 0311 0207 -> 0065 0311 0208 -> 0049 030F 0209 -> 0069 030F 020A -> 0049 0311 020B -> 0069 0311 020C -> 004F 030F 020D -> 006F 030F 020E -> 004F 0311 020F -> 006F 0311 0210 -> 0052 030F 0211 -> 0072 030F 0212 -> 0052 0311 0213 -> 0072 0311 0214 -> 0055 030F 0215 -> 0075 030F 0216 -> 0055 0311 0217 -> 0075 0311 0218 -> 0053 0326 0219 -> 0073 0326 021A -> 0054 0326 021B -> 0074 0326 021E -> 0048 030C 021F -> 0068 030C 0226 -> 0041 0307 0227 -> 0061 0307 0228 -> 0045 0327 0229 -> 0065 0327 022A -> 00D6 0304 022B -> 00F6 0304 022C -> 00D5 0304 022D -> 00F5 0304 022E -> 004F 0307 022F -> 006F 0307 0230 -> 022E 0304 0231 -> 022F 0304 0232 -> 0059 0304 0233 -> 0079 0304 0344 -> 0308 0301 0385 -> 00A8 0301 0386 -> 0391 0301 0388 -> 0395 0301 0389 -> 0397 0301 038A -> 0399 0301 038C -> 039F 0301 038E -> 03A5 0301 038F -> 03A9 0301 0390 -> 03CA 0301 03AA -> 0399 0308 03AB -> 03A5 0308 03AC -> 03B1 0301 03AD -> 03B5 0301 03AE -> 03B7 0301 03AF -> 03B9 0301 03B0 -> 03CB 0301 03CA -> 03B9 0308 03CB -> 03C5 0308 03CC -> 03BF 0301 03CD -> 03C5 0301 03CE -> 03C9 0301 03D3 -> 03D2 0301 03D4 -> 03D2 0308 0400 -> 0415 0300 0401 -> 0415 0308 0403 -> 0413 0301 0407 -> 0406 0308 040C -> 041A 0301 040D -> 0418 0300 040E -> 0423 0306 0419 -> 0418 0306 0439 -> 0438 0306 0450 -> 0435 0300 0451 -> 0435 0308 0453 -> 0433 0301 0457 -> 0456 0308 045C -> 043A 0301 045D -> 0438 0300 045E -> 0443 0306 0476 -> 0474 030F 0477 -> 0475 030F 04C1 -> 0416 0306 04C2 -> 0436 0306 04D0 -> 0410 0306 04D1 -> 0430 0306 04D2 -> 0410 0308 04D3 -> 0430 0308 04D6 -> 0415 0306 04D7 -> 0435 0306 04DA -> 04D8 0308 04DB -> 04D9 0308 04DC -> 0416 0308 04DD -> 0436 0308 04DE -> 0417 0308 04DF -> 0437 0308 04E2 -> 0418 0304 04E3 -> 0438 0304 04E4 -> 0418 0308 04E5 -> 0438 0308 04E6 -> 041E 0308 04E7 -> 043E 0308 04EA -> 04E8 0308 04EB -> 04E9 0308 04EC -> 042D 0308 04ED -> 044D 0308 04EE -> 0423 0304 04EF -> 0443 0304 04F0 -> 0423 0308 04F1 -> 0443 0308 04F2 -> 0423 030B 04F3 -> 0443 030B 04F4 -> 0427 0308 04F5 -> 0447 0308 04F8 -> 042B 0308 04F9 -> 044B 0308 0622 -> 0627 0653 0623 -> 0627 0654 0624 -> 0648 0654 0625 -> 0627 0655 0626 -> 064A 0654 06C0 -> 06D5 0654 06C2 -> 06C1 0654 06D3 -> 06D2 0654 0929 -> 0928 093C 0931 -> 0930 093C 0934 -> 0933 093C 0958 -> 0915 093C 0959 -> 0916 093C 095A -> 0917 093C 095B -> 091C 093C 095C -> 0921 093C 095D -> 0922 093C 095E -> 092B 093C 095F -> 092F 093C 09CB -> 09C7 09BE 09CC -> 09C7 09D7 09DC -> 09A1 09BC 09DD -> 09A2 09BC 09DF -> 09AF 09BC 0A33 -> 0A32 0A3C 0A36 -> 0A38 0A3C 0A59 -> 0A16 0A3C 0A5A -> 0A17 0A3C 0A5B -> 0A1C 0A3C 0A5E -> 0A2B 0A3C 0B48 -> 0B47 0B56 0B4B -> 0B47 0B3E 0B4C -> 0B47 0B57 0B5C -> 0B21 0B3C 0B5D -> 0B22 0B3C 0B94 -> 0B92 0BD7 0BCA -> 0BC6 0BBE 0BCB -> 0BC7 0BBE 0BCC -> 0BC6 0BD7 0C48 -> 0C46 0C56 0CC0 -> 0CBF 0CD5 0CC7 -> 0CC6 0CD5 0CC8 -> 0CC6 0CD6 0CCA -> 0CC6 0CC2 0CCB -> 0CCA 0CD5 0D4A -> 0D46 0D3E 0D4B -> 0D47 0D3E 0D4C -> 0D46 0D57 0DDA -> 0DD9 0DCA 0DDC -> 0DD9 0DCF 0DDD -> 0DDC 0DCA 0DDE -> 0DD9 0DDF 0F43 -> 0F42 0FB7 0F4D -> 0F4C 0FB7 0F52 -> 0F51 0FB7 0F57 -> 0F56 0FB7 0F5C -> 0F5B 0FB7 0F69 -> 0F40 0FB5 0F73 -> 0F71 0F72 0F75 -> 0F71 0F74 0F76 -> 0FB2 0F80 0F78 -> 0FB3 0F80 0F81 -> 0F71 0F80 0F93 -> 0F92 0FB7 0F9D -> 0F9C 0FB7 0FA2 -> 0FA1 0FB7 0FA7 -> 0FA6 0FB7 0FAC -> 0FAB 0FB7 0FB9 -> 0F90 0FB5 1026 -> 1025 102E 1B06 -> 1B05 1B35 1B08 -> 1B07 1B35 1B0A -> 1B09 1B35 1B0C -> 1B0B 1B35 1B0E -> 1B0D 1B35 1B12 -> 1B11 1B35 1B3B -> 1B3A 1B35 1B3D -> 1B3C 1B35 1B40 -> 1B3E 1B35 1B41 -> 1B3F 1B35 1B43 -> 1B42 1B35 1E00 -> 0041 0325 1E01 -> 0061 0325 1E02 -> 0042 0307 1E03 -> 0062 0307 1E04 -> 0042 0323 1E05 -> 0062 0323 1E06 -> 0042 0331 1E07 -> 0062 0331 1E08 -> 00C7 0301 1E09 -> 00E7 0301 1E0A -> 0044 0307 1E0B -> 0064 0307 1E0C -> 0044 0323 1E0D -> 0064 0323 1E0E -> 0044 0331 1E0F -> 0064 0331 1E10 -> 0044 0327 1E11 -> 0064 0327 1E12 -> 0044 032D 1E13 -> 0064 032D 1E14 -> 0112 0300 1E15 -> 0113 0300 1E16 -> 0112 0301 1E17 -> 0113 0301 1E18 -> 0045 032D 1E19 -> 0065 032D 1E1A -> 0045 0330 1E1B -> 0065 0330 1E1C -> 0228 0306 1E1D -> 0229 0306 1E1E -> 0046 0307 1E1F -> 0066 0307 1E20 -> 0047 0304 1E21 -> 0067 0304 1E22 -> 0048 0307 1E23 -> 0068 0307 1E24 -> 0048 0323 1E25 -> 0068 0323 1E26 -> 0048 0308 1E27 -> 0068 0308 1E28 -> 0048 0327 1E29 -> 0068 0327 1E2A -> 0048 032E 1E2B -> 0068 032E 1E2C -> 0049 0330 1E2D -> 0069 0330 1E2E -> 00CF 0301 1E2F -> 00EF 0301 1E30 -> 004B 0301 1E31 -> 006B 0301 1E32 -> 004B 0323 1E33 -> 006B 0323 1E34 -> 004B 0331 1E35 -> 006B 0331 1E36 -> 004C 0323 1E37 -> 006C 0323 1E38 -> 1E36 0304 1E39 -> 1E37 0304 1E3A -> 004C 0331 1E3B -> 006C 0331 1E3C -> 004C 032D 1E3D -> 006C 032D 1E3E -> 004D 0301 1E3F -> 006D 0301 1E40 -> 004D 0307 1E41 -> 006D 0307 1E42 -> 004D 0323 1E43 -> 006D 0323 1E44 -> 004E 0307 1E45 -> 006E 0307 1E46 -> 004E 0323 1E47 -> 006E 0323 1E48 -> 004E 0331 1E49 -> 006E 0331 1E4A -> 004E 032D 1E4B -> 006E 032D 1E4C -> 00D5 0301 1E4D -> 00F5 0301 1E4E -> 00D5 0308 1E4F -> 00F5 0308 1E50 -> 014C 0300 1E51 -> 014D 0300 1E52 -> 014C 0301 1E53 -> 014D 0301 1E54 -> 0050 0301 1E55 -> 0070 0301 1E56 -> 0050 0307 1E57 -> 0070 0307 1E58 -> 0052 0307 1E59 -> 0072 0307 1E5A -> 0052 0323 1E5B -> 0072 0323 1E5C -> 1E5A 0304 1E5D -> 1E5B 0304 1E5E -> 0052 0331 1E5F -> 0072 0331 1E60 -> 0053 0307 1E61 -> 0073 0307 1E62 -> 0053 0323 1E63 -> 0073 0323 1E64 -> 015A 0307 1E65 -> 015B 0307 1E66 -> 0160 0307 1E67 -> 0161 0307 1E68 -> 1E62 0307 1E69 -> 1E63 0307 1E6A -> 0054 0307 1E6B -> 0074 0307 1E6C -> 0054 0323 1E6D -> 0074 0323 1E6E -> 0054 0331 1E6F -> 0074 0331 1E70 -> 0054 032D 1E71 -> 0074 032D 1E72 -> 0055 0324 1E73 -> 0075 0324 1E74 -> 0055 0330 1E75 -> 0075 0330 1E76 -> 0055 032D 1E77 -> 0075 032D 1E78 -> 0168 0301 1E79 -> 0169 0301 1E7A -> 016A 0308 1E7B -> 016B 0308 1E7C -> 0056 0303 1E7D -> 0076 0303 1E7E -> 0056 0323 1E7F -> 0076 0323 1E80 -> 0057 0300 1E81 -> 0077 0300 1E82 -> 0057 0301 1E83 -> 0077 0301 1E84 -> 0057 0308 1E85 -> 0077 0308 1E86 -> 0057 0307 1E87 -> 0077 0307 1E88 -> 0057 0323 1E89 -> 0077 0323 1E8A -> 0058 0307 1E8B -> 0078 0307 1E8C -> 0058 0308 1E8D -> 0078 0308 1E8E -> 0059 0307 1E8F -> 0079 0307 1E90 -> 005A 0302 1E91 -> 007A 0302 1E92 -> 005A 0323 1E93 -> 007A 0323 1E94 -> 005A 0331 1E95 -> 007A 0331 1E96 -> 0068 0331 1E97 -> 0074 0308 1E98 -> 0077 030A 1E99 -> 0079 030A 1E9B -> 017F 0307 1EA0 -> 0041 0323 1EA1 -> 0061 0323 1EA2 -> 0041 0309 1EA3 -> 0061 0309 1EA4 -> 00C2 0301 1EA5 -> 00E2 0301 1EA6 -> 00C2 0300 1EA7 -> 00E2 0300 1EA8 -> 00C2 0309 1EA9 -> 00E2 0309 1EAA -> 00C2 0303 1EAB -> 00E2 0303 1EAC -> 1EA0 0302 1EAD -> 1EA1 0302 1EAE -> 0102 0301 1EAF -> 0103 0301 1EB0 -> 0102 0300 1EB1 -> 0103 0300 1EB2 -> 0102 0309 1EB3 -> 0103 0309 1EB4 -> 0102 0303 1EB5 -> 0103 0303 1EB6 -> 1EA0 0306 1EB7 -> 1EA1 0306 1EB8 -> 0045 0323 1EB9 -> 0065 0323 1EBA -> 0045 0309 1EBB -> 0065 0309 1EBC -> 0045 0303 1EBD -> 0065 0303 1EBE -> 00CA 0301 1EBF -> 00EA 0301 1EC0 -> 00CA 0300 1EC1 -> 00EA 0300 1EC2 -> 00CA 0309 1EC3 -> 00EA 0309 1EC4 -> 00CA 0303 1EC5 -> 00EA 0303 1EC6 -> 1EB8 0302 1EC7 -> 1EB9 0302 1EC8 -> 0049 0309 1EC9 -> 0069 0309 1ECA -> 0049 0323 1ECB -> 0069 0323 1ECC -> 004F 0323 1ECD -> 006F 0323 1ECE -> 004F 0309 1ECF -> 006F 0309 1ED0 -> 00D4 0301 1ED1 -> 00F4 0301 1ED2 -> 00D4 0300 1ED3 -> 00F4 0300 1ED4 -> 00D4 0309 1ED5 -> 00F4 0309 1ED6 -> 00D4 0303 1ED7 -> 00F4 0303 1ED8 -> 1ECC 0302 1ED9 -> 1ECD 0302 1EDA -> 01A0 0301 1EDB -> 01A1 0301 1EDC -> 01A0 0300 1EDD -> 01A1 0300 1EDE -> 01A0 0309 1EDF -> 01A1 0309 1EE0 -> 01A0 0303 1EE1 -> 01A1 0303 1EE2 -> 01A0 0323 1EE3 -> 01A1 0323 1EE4 -> 0055 0323 1EE5 -> 0075 0323 1EE6 -> 0055 0309 1EE7 -> 0075 0309 1EE8 -> 01AF 0301 1EE9 -> 01B0 0301 1EEA -> 01AF 0300 1EEB -> 01B0 0300 1EEC -> 01AF 0309 1EED -> 01B0 0309 1EEE -> 01AF 0303 1EEF -> 01B0 0303 1EF0 -> 01AF 0323 1EF1 -> 01B0 0323 1EF2 -> 0059 0300 1EF3 -> 0079 0300 1EF4 -> 0059 0323 1EF5 -> 0079 0323 1EF6 -> 0059 0309 1EF7 -> 0079 0309 1EF8 -> 0059 0303 1EF9 -> 0079 0303 1F00 -> 03B1 0313 1F01 -> 03B1 0314 1F02 -> 1F00 0300 1F03 -> 1F01 0300 1F04 -> 1F00 0301 1F05 -> 1F01 0301 1F06 -> 1F00 0342 1F07 -> 1F01 0342 1F08 -> 0391 0313 1F09 -> 0391 0314 1F0A -> 1F08 0300 1F0B -> 1F09 0300 1F0C -> 1F08 0301 1F0D -> 1F09 0301 1F0E -> 1F08 0342 1F0F -> 1F09 0342 1F10 -> 03B5 0313 1F11 -> 03B5 0314 1F12 -> 1F10 0300 1F13 -> 1F11 0300 1F14 -> 1F10 0301 1F15 -> 1F11 0301 1F18 -> 0395 0313 1F19 -> 0395 0314 1F1A -> 1F18 0300 1F1B -> 1F19 0300 1F1C -> 1F18 0301 1F1D -> 1F19 0301 1F20 -> 03B7 0313 1F21 -> 03B7 0314 1F22 -> 1F20 0300 1F23 -> 1F21 0300 1F24 -> 1F20 0301 1F25 -> 1F21 0301 1F26 -> 1F20 0342 1F27 -> 1F21 0342 1F28 -> 0397 0313 1F29 -> 0397 0314 1F2A -> 1F28 0300 1F2B -> 1F29 0300 1F2C -> 1F28 0301 1F2D -> 1F29 0301 1F2E -> 1F28 0342 1F2F -> 1F29 0342 1F30 -> 03B9 0313 1F31 -> 03B9 0314 1F32 -> 1F30 0300 1F33 -> 1F31 0300 1F34 -> 1F30 0301 1F35 -> 1F31 0301 1F36 -> 1F30 0342 1F37 -> 1F31 0342 1F38 -> 0399 0313 1F39 -> 0399 0314 1F3A -> 1F38 0300 1F3B -> 1F39 0300 1F3C -> 1F38 0301 1F3D -> 1F39 0301 1F3E -> 1F38 0342 1F3F -> 1F39 0342 1F40 -> 03BF 0313 1F41 -> 03BF 0314 1F42 -> 1F40 0300 1F43 -> 1F41 0300 1F44 -> 1F40 0301 1F45 -> 1F41 0301 1F48 -> 039F 0313 1F49 -> 039F 0314 1F4A -> 1F48 0300 1F4B -> 1F49 0300 1F4C -> 1F48 0301 1F4D -> 1F49 0301 1F50 -> 03C5 0313 1F51 -> 03C5 0314 1F52 -> 1F50 0300 1F53 -> 1F51 0300 1F54 -> 1F50 0301 1F55 -> 1F51 0301 1F56 -> 1F50 0342 1F57 -> 1F51 0342 1F59 -> 03A5 0314 1F5B -> 1F59 0300 1F5D -> 1F59 0301 1F5F -> 1F59 0342 1F60 -> 03C9 0313 1F61 -> 03C9 0314 1F62 -> 1F60 0300 1F63 -> 1F61 0300 1F64 -> 1F60 0301 1F65 -> 1F61 0301 1F66 -> 1F60 0342 1F67 -> 1F61 0342 1F68 -> 03A9 0313 1F69 -> 03A9 0314 1F6A -> 1F68 0300 1F6B -> 1F69 0300 1F6C -> 1F68 0301 1F6D -> 1F69 0301 1F6E -> 1F68 0342 1F6F -> 1F69 0342 1F70 -> 03B1 0300 1F72 -> 03B5 0300 1F74 -> 03B7 0300 1F76 -> 03B9 0300 1F78 -> 03BF 0300 1F7A -> 03C5 0300 1F7C -> 03C9 0300 1F80 -> 1F00 0345 1F81 -> 1F01 0345 1F82 -> 1F02 0345 1F83 -> 1F03 0345 1F84 -> 1F04 0345 1F85 -> 1F05 0345 1F86 -> 1F06 0345 1F87 -> 1F07 0345 1F88 -> 1F08 0345 1F89 -> 1F09 0345 1F8A -> 1F0A 0345 1F8B -> 1F0B 0345 1F8C -> 1F0C 0345 1F8D -> 1F0D 0345 1F8E -> 1F0E 0345 1F8F -> 1F0F 0345 1F90 -> 1F20 0345 1F91 -> 1F21 0345 1F92 -> 1F22 0345 1F93 -> 1F23 0345 1F94 -> 1F24 0345 1F95 -> 1F25 0345 1F96 -> 1F26 0345 1F97 -> 1F27 0345 1F98 -> 1F28 0345 1F99 -> 1F29 0345 1F9A -> 1F2A 0345 1F9B -> 1F2B 0345 1F9C -> 1F2C 0345 1F9D -> 1F2D 0345 1F9E -> 1F2E 0345 1F9F -> 1F2F 0345 1FA0 -> 1F60 0345 1FA1 -> 1F61 0345 1FA2 -> 1F62 0345 1FA3 -> 1F63 0345 1FA4 -> 1F64 0345 1FA5 -> 1F65 0345 1FA6 -> 1F66 0345 1FA7 -> 1F67 0345 1FA8 -> 1F68 0345 1FA9 -> 1F69 0345 1FAA -> 1F6A 0345 1FAB -> 1F6B 0345 1FAC -> 1F6C 0345 1FAD -> 1F6D 0345 1FAE -> 1F6E 0345 1FAF -> 1F6F 0345 1FB0 -> 03B1 0306 1FB1 -> 03B1 0304 1FB2 -> 1F70 0345 1FB3 -> 03B1 0345 1FB4 -> 03AC 0345 1FB6 -> 03B1 0342 1FB7 -> 1FB6 0345 1FB8 -> 0391 0306 1FB9 -> 0391 0304 1FBA -> 0391 0300 1FBC -> 0391 0345 1FC1 -> 00A8 0342 1FC2 -> 1F74 0345 1FC3 -> 03B7 0345 1FC4 -> 03AE 0345 1FC6 -> 03B7 0342 1FC7 -> 1FC6 0345 1FC8 -> 0395 0300 1FCA -> 0397 0300 1FCC -> 0397 0345 1FCD -> 1FBF 0300 1FCE -> 1FBF 0301 1FCF -> 1FBF 0342 1FD0 -> 03B9 0306 1FD1 -> 03B9 0304 1FD2 -> 03CA 0300 1FD6 -> 03B9 0342 1FD7 -> 03CA 0342 1FD8 -> 0399 0306 1FD9 -> 0399 0304 1FDA -> 0399 0300 1FDD -> 1FFE 0300 1FDE -> 1FFE 0301 1FDF -> 1FFE 0342 1FE0 -> 03C5 0306 1FE1 -> 03C5 0304 1FE2 -> 03CB 0300 1FE4 -> 03C1 0313 1FE5 -> 03C1 0314 1FE6 -> 03C5 0342 1FE7 -> 03CB 0342 1FE8 -> 03A5 0306 1FE9 -> 03A5 0304 1FEA -> 03A5 0300 1FEC -> 03A1 0314 1FED -> 00A8 0300 1FF2 -> 1F7C 0345 1FF3 -> 03C9 0345 1FF4 -> 03CE 0345 1FF6 -> 03C9 0342 1FF7 -> 1FF6 0345 1FF8 -> 039F 0300 1FFA -> 03A9 0300 1FFC -> 03A9 0345 219A -> 2190 0338 219B -> 2192 0338 21AE -> 2194 0338 21CD -> 21D0 0338 21CE -> 21D4 0338 21CF -> 21D2 0338 2204 -> 2203 0338 2209 -> 2208 0338 220C -> 220B 0338 2224 -> 2223 0338 2226 -> 2225 0338 2241 -> 223C 0338 2244 -> 2243 0338 2247 -> 2245 0338 2249 -> 2248 0338 2260 -> 003D 0338 2262 -> 2261 0338 226D -> 224D 0338 226E -> 003C 0338 226F -> 003E 0338 2270 -> 2264 0338 2271 -> 2265 0338 2274 -> 2272 0338 2275 -> 2273 0338 2278 -> 2276 0338 2279 -> 2277 0338 2280 -> 227A 0338 2281 -> 227B 0338 2284 -> 2282 0338 2285 -> 2283 0338 2288 -> 2286 0338 2289 -> 2287 0338 22AC -> 22A2 0338 22AD -> 22A8 0338 22AE -> 22A9 0338 22AF -> 22AB 0338 22E0 -> 227C 0338 22E1 -> 227D 0338 22E2 -> 2291 0338 22E3 -> 2292 0338 22EA -> 22B2 0338 22EB -> 22B3 0338 22EC -> 22B4 0338 22ED -> 22B5 0338 2ADC -> 2ADD 0338 304C -> 304B 3099 304E -> 304D 3099 3050 -> 304F 3099 3052 -> 3051 3099 3054 -> 3053 3099 3056 -> 3055 3099 3058 -> 3057 3099 305A -> 3059 3099 305C -> 305B 3099 305E -> 305D 3099 3060 -> 305F 3099 3062 -> 3061 3099 3065 -> 3064 3099 3067 -> 3066 3099 3069 -> 3068 3099 3070 -> 306F 3099 3071 -> 306F 309A 3073 -> 3072 3099 3074 -> 3072 309A 3076 -> 3075 3099 3077 -> 3075 309A 3079 -> 3078 3099 307A -> 3078 309A 307C -> 307B 3099 307D -> 307B 309A 3094 -> 3046 3099 309E -> 309D 3099 30AC -> 30AB 3099 30AE -> 30AD 3099 30B0 -> 30AF 3099 30B2 -> 30B1 3099 30B4 -> 30B3 3099 30B6 -> 30B5 3099 30B8 -> 30B7 3099 30BA -> 30B9 3099 30BC -> 30BB 3099 30BE -> 30BD 3099 30C0 -> 30BF 3099 30C2 -> 30C1 3099 30C5 -> 30C4 3099 30C7 -> 30C6 3099 30C9 -> 30C8 3099 30D0 -> 30CF 3099 30D1 -> 30CF 309A 30D3 -> 30D2 3099 30D4 -> 30D2 309A 30D6 -> 30D5 3099 30D7 -> 30D5 309A 30D9 -> 30D8 3099 30DA -> 30D8 309A 30DC -> 30DB 3099 30DD -> 30DB 309A 30F4 -> 30A6 3099 30F7 -> 30EF 3099 30F8 -> 30F0 3099 30F9 -> 30F1 3099 30FA -> 30F2 3099 30FE -> 30FD 3099 FB1D -> 05D9 05B4 FB1F -> 05F2 05B7 FB2A -> 05E9 05C1 FB2B -> 05E9 05C2 FB2C -> FB49 05C1 FB2D -> FB49 05C2 FB2E -> 05D0 05B7 FB2F -> 05D0 05B8 FB30 -> 05D0 05BC FB31 -> 05D1 05BC FB32 -> 05D2 05BC FB33 -> 05D3 05BC FB34 -> 05D4 05BC FB35 -> 05D5 05BC FB36 -> 05D6 05BC FB38 -> 05D8 05BC FB39 -> 05D9 05BC FB3A -> 05DA 05BC FB3B -> 05DB 05BC FB3C -> 05DC 05BC FB3E -> 05DE 05BC FB40 -> 05E0 05BC FB41 -> 05E1 05BC FB43 -> 05E3 05BC FB44 -> 05E4 05BC FB46 -> 05E6 05BC FB47 -> 05E7 05BC FB48 -> 05E8 05BC FB49 -> 05E9 05BC FB4A -> 05EA 05BC FB4B -> 05D5 05B9 FB4C -> 05D1 05BF FB4D -> 05DB 05BF FB4E -> 05E4 05BF AC00 -> 1100 1161 AC01 -> 1100 1161 11A8 AC02 -> 1100 1161 11A9 AC03 -> 1100 1161 11AA AC04 -> 1100 1161 11AB AC05 -> 1100 1161 11AC AC06 -> 1100 1161 11AD AC07 -> 1100 1161 11AE AC08 -> 1100 1161 11AF AC09 -> 1100 1161 11B0 AC0A -> 1100 1161 11B1 AC0B -> 1100 1161 11B2 AC0C -> 1100 1161 11B3 AC0D -> 1100 1161 11B4 AC0E -> 1100 1161 11B5 AC0F -> 1100 1161 11B6 AC10 -> 1100 1161 11B7 AC11 -> 1100 1161 11B8 AC12 -> 1100 1161 11B9 AC13 -> 1100 1161 11BA AC14 -> 1100 1161 11BB AC15 -> 1100 1161 11BC AC16 -> 1100 1161 11BD AC17 -> 1100 1161 11BE AC18 -> 1100 1161 11BF AC19 -> 1100 1161 11C0 AC1A -> 1100 1161 11C1 AC1B -> 1100 1161 11C2 AC1C -> 1100 1162 AC1D -> 1100 1162 11A8 AC1E -> 1100 1162 11A9 AC1F -> 1100 1162 11AA AC20 -> 1100 1162 11AB AC21 -> 1100 1162 11AC AC22 -> 1100 1162 11AD AC23 -> 1100 1162 11AE AC24 -> 1100 1162 11AF AC25 -> 1100 1162 11B0 AC26 -> 1100 1162 11B1 AC27 -> 1100 1162 11B2 AC28 -> 1100 1162 11B3 AC29 -> 1100 1162 11B4 AC2A -> 1100 1162 11B5 AC2B -> 1100 1162 11B6 AC2C -> 1100 1162 11B7 AC2D -> 1100 1162 11B8 AC2E -> 1100 1162 11B9 AC2F -> 1100 1162 11BA AC30 -> 1100 1162 11BB AC31 -> 1100 1162 11BC AC32 -> 1100 1162 11BD AC33 -> 1100 1162 11BE AC34 -> 1100 1162 11BF AC35 -> 1100 1162 11C0 AC36 -> 1100 1162 11C1 AC37 -> 1100 1162 11C2 AC38 -> 1100 1163 AC39 -> 1100 1163 11A8 AC3A -> 1100 1163 11A9 AC3B -> 1100 1163 11AA AC3C -> 1100 1163 11AB AC3D -> 1100 1163 11AC AC3E -> 1100 1163 11AD AC3F -> 1100 1163 11AE AC40 -> 1100 1163 11AF AC41 -> 1100 1163 11B0 AC42 -> 1100 1163 11B1 AC43 -> 1100 1163 11B2 AC44 -> 1100 1163 11B3 AC45 -> 1100 1163 11B4 AC46 -> 1100 1163 11B5 AC47 -> 1100 1163 11B6 AC48 -> 1100 1163 11B7 AC49 -> 1100 1163 11B8 AC4A -> 1100 1163 11B9 AC4B -> 1100 1163 11BA AC4C -> 1100 1163 11BB AC4D -> 1100 1163 11BC AC4E -> 1100 1163 11BD AC4F -> 1100 1163 11BE AC50 -> 1100 1163 11BF AC51 -> 1100 1163 11C0 AC52 -> 1100 1163 11C1 AC53 -> 1100 1163 11C2 AC54 -> 1100 1164 AC55 -> 1100 1164 11A8 AC56 -> 1100 1164 11A9 AC57 -> 1100 1164 11AA AC58 -> 1100 1164 11AB AC59 -> 1100 1164 11AC AC5A -> 1100 1164 11AD AC5B -> 1100 1164 11AE AC5C -> 1100 1164 11AF AC5D -> 1100 1164 11B0 AC5E -> 1100 1164 11B1 AC5F -> 1100 1164 11B2 AC60 -> 1100 1164 11B3 AC61 -> 1100 1164 11B4 AC62 -> 1100 1164 11B5 AC63 -> 1100 1164 11B6 AC64 -> 1100 1164 11B7 AC65 -> 1100 1164 11B8 AC66 -> 1100 1164 11B9 AC67 -> 1100 1164 11BA AC68 -> 1100 1164 11BB AC69 -> 1100 1164 11BC AC6A -> 1100 1164 11BD AC6B -> 1100 1164 11BE AC6C -> 1100 1164 11BF AC6D -> 1100 1164 11C0 AC6E -> 1100 1164 11C1 AC6F -> 1100 1164 11C2 AC70 -> 1100 1165 AC71 -> 1100 1165 11A8 AC72 -> 1100 1165 11A9 AC73 -> 1100 1165 11AA AC74 -> 1100 1165 11AB AC75 -> 1100 1165 11AC AC76 -> 1100 1165 11AD AC77 -> 1100 1165 11AE AC78 -> 1100 1165 11AF AC79 -> 1100 1165 11B0 AC7A -> 1100 1165 11B1 AC7B -> 1100 1165 11B2 AC7C -> 1100 1165 11B3 AC7D -> 1100 1165 11B4 AC7E -> 1100 1165 11B5 AC7F -> 1100 1165 11B6 AC80 -> 1100 1165 11B7 AC81 -> 1100 1165 11B8 AC82 -> 1100 1165 11B9 AC83 -> 1100 1165 11BA AC84 -> 1100 1165 11BB AC85 -> 1100 1165 11BC AC86 -> 1100 1165 11BD AC87 -> 1100 1165 11BE AC88 -> 1100 1165 11BF AC89 -> 1100 1165 11C0 AC8A -> 1100 1165 11C1 AC8B -> 1100 1165 11C2 AC8C -> 1100 1166 AC8D -> 1100 1166 11A8 AC8E -> 1100 1166 11A9 AC8F -> 1100 1166 11AA AC90 -> 1100 1166 11AB AC91 -> 1100 1166 11AC AC92 -> 1100 1166 11AD AC93 -> 1100 1166 11AE AC94 -> 1100 1166 11AF AC95 -> 1100 1166 11B0 AC96 -> 1100 1166 11B1 AC97 -> 1100 1166 11B2 AC98 -> 1100 1166 11B3 AC99 -> 1100 1166 11B4 AC9A -> 1100 1166 11B5 AC9B -> 1100 1166 11B6 AC9C -> 1100 1166 11B7 AC9D -> 1100 1166 11B8 AC9E -> 1100 1166 11B9 AC9F -> 1100 1166 11BA ACA0 -> 1100 1166 11BB ACA1 -> 1100 1166 11BC ACA2 -> 1100 1166 11BD ACA3 -> 1100 1166 11BE ACA4 -> 1100 1166 11BF ACA5 -> 1100 1166 11C0 ACA6 -> 1100 1166 11C1 ACA7 -> 1100 1166 11C2 ACA8 -> 1100 1167 ACA9 -> 1100 1167 11A8 ACAA -> 1100 1167 11A9 ACAB -> 1100 1167 11AA ACAC -> 1100 1167 11AB ACAD -> 1100 1167 11AC ACAE -> 1100 1167 11AD ACAF -> 1100 1167 11AE ACB0 -> 1100 1167 11AF ACB1 -> 1100 1167 11B0 ACB2 -> 1100 1167 11B1 ACB3 -> 1100 1167 11B2 ACB4 -> 1100 1167 11B3 ACB5 -> 1100 1167 11B4 ACB6 -> 1100 1167 11B5 ACB7 -> 1100 1167 11B6 ACB8 -> 1100 1167 11B7 ACB9 -> 1100 1167 11B8 ACBA -> 1100 1167 11B9 ACBB -> 1100 1167 11BA ACBC -> 1100 1167 11BB ACBD -> 1100 1167 11BC ACBE -> 1100 1167 11BD ACBF -> 1100 1167 11BE ACC0 -> 1100 1167 11BF ACC1 -> 1100 1167 11C0 ACC2 -> 1100 1167 11C1 ACC3 -> 1100 1167 11C2 ACC4 -> 1100 1168 ACC5 -> 1100 1168 11A8 ACC6 -> 1100 1168 11A9 ACC7 -> 1100 1168 11AA ACC8 -> 1100 1168 11AB ACC9 -> 1100 1168 11AC ACCA -> 1100 1168 11AD ACCB -> 1100 1168 11AE ACCC -> 1100 1168 11AF ACCD -> 1100 1168 11B0 ACCE -> 1100 1168 11B1 ACCF -> 1100 1168 11B2 ACD0 -> 1100 1168 11B3 ACD1 -> 1100 1168 11B4 ACD2 -> 1100 1168 11B5 ACD3 -> 1100 1168 11B6 ACD4 -> 1100 1168 11B7 ACD5 -> 1100 1168 11B8 ACD6 -> 1100 1168 11B9 ACD7 -> 1100 1168 11BA ACD8 -> 1100 1168 11BB ACD9 -> 1100 1168 11BC ACDA -> 1100 1168 11BD ACDB -> 1100 1168 11BE ACDC -> 1100 1168 11BF ACDD -> 1100 1168 11C0 ACDE -> 1100 1168 11C1 ACDF -> 1100 1168 11C2 ACE0 -> 1100 1169 ACE1 -> 1100 1169 11A8 ACE2 -> 1100 1169 11A9 ACE3 -> 1100 1169 11AA ACE4 -> 1100 1169 11AB ACE5 -> 1100 1169 11AC ACE6 -> 1100 1169 11AD ACE7 -> 1100 1169 11AE ACE8 -> 1100 1169 11AF ACE9 -> 1100 1169 11B0 ACEA -> 1100 1169 11B1 ACEB -> 1100 1169 11B2 ACEC -> 1100 1169 11B3 ACED -> 1100 1169 11B4 ACEE -> 1100 1169 11B5 ACEF -> 1100 1169 11B6 ACF0 -> 1100 1169 11B7 ACF1 -> 1100 1169 11B8 ACF2 -> 1100 1169 11B9 ACF3 -> 1100 1169 11BA ACF4 -> 1100 1169 11BB ACF5 -> 1100 1169 11BC ACF6 -> 1100 1169 11BD ACF7 -> 1100 1169 11BE ACF8 -> 1100 1169 11BF ACF9 -> 1100 1169 11C0 ACFA -> 1100 1169 11C1 ACFB -> 1100 1169 11C2 ACFC -> 1100 116A ACFD -> 1100 116A 11A8 ACFE -> 1100 116A 11A9 ACFF -> 1100 116A 11AA AD00 -> 1100 116A 11AB AD01 -> 1100 116A 11AC AD02 -> 1100 116A 11AD AD03 -> 1100 116A 11AE AD04 -> 1100 116A 11AF AD05 -> 1100 116A 11B0 AD06 -> 1100 116A 11B1 AD07 -> 1100 116A 11B2 AD08 -> 1100 116A 11B3 AD09 -> 1100 116A 11B4 AD0A -> 1100 116A 11B5 AD0B -> 1100 116A 11B6 AD0C -> 1100 116A 11B7 AD0D -> 1100 116A 11B8 AD0E -> 1100 116A 11B9 AD0F -> 1100 116A 11BA AD10 -> 1100 116A 11BB AD11 -> 1100 116A 11BC AD12 -> 1100 116A 11BD AD13 -> 1100 116A 11BE AD14 -> 1100 116A 11BF AD15 -> 1100 116A 11C0 AD16 -> 1100 116A 11C1 AD17 -> 1100 116A 11C2 AD18 -> 1100 116B AD19 -> 1100 116B 11A8 AD1A -> 1100 116B 11A9 AD1B -> 1100 116B 11AA AD1C -> 1100 116B 11AB AD1D -> 1100 116B 11AC AD1E -> 1100 116B 11AD AD1F -> 1100 116B 11AE AD20 -> 1100 116B 11AF AD21 -> 1100 116B 11B0 AD22 -> 1100 116B 11B1 AD23 -> 1100 116B 11B2 AD24 -> 1100 116B 11B3 AD25 -> 1100 116B 11B4 AD26 -> 1100 116B 11B5 AD27 -> 1100 116B 11B6 AD28 -> 1100 116B 11B7 AD29 -> 1100 116B 11B8 AD2A -> 1100 116B 11B9 AD2B -> 1100 116B 11BA AD2C -> 1100 116B 11BB AD2D -> 1100 116B 11BC AD2E -> 1100 116B 11BD AD2F -> 1100 116B 11BE AD30 -> 1100 116B 11BF AD31 -> 1100 116B 11C0 AD32 -> 1100 116B 11C1 AD33 -> 1100 116B 11C2 AD34 -> 1100 116C AD35 -> 1100 116C 11A8 AD36 -> 1100 116C 11A9 AD37 -> 1100 116C 11AA AD38 -> 1100 116C 11AB AD39 -> 1100 116C 11AC AD3A -> 1100 116C 11AD AD3B -> 1100 116C 11AE AD3C -> 1100 116C 11AF AD3D -> 1100 116C 11B0 AD3E -> 1100 116C 11B1 AD3F -> 1100 116C 11B2 AD40 -> 1100 116C 11B3 AD41 -> 1100 116C 11B4 AD42 -> 1100 116C 11B5 AD43 -> 1100 116C 11B6 AD44 -> 1100 116C 11B7 AD45 -> 1100 116C 11B8 AD46 -> 1100 116C 11B9 AD47 -> 1100 116C 11BA AD48 -> 1100 116C 11BB AD49 -> 1100 116C 11BC AD4A -> 1100 116C 11BD AD4B -> 1100 116C 11BE AD4C -> 1100 116C 11BF AD4D -> 1100 116C 11C0 AD4E -> 1100 116C 11C1 AD4F -> 1100 116C 11C2 AD50 -> 1100 116D AD51 -> 1100 116D 11A8 AD52 -> 1100 116D 11A9 AD53 -> 1100 116D 11AA AD54 -> 1100 116D 11AB AD55 -> 1100 116D 11AC AD56 -> 1100 116D 11AD AD57 -> 1100 116D 11AE AD58 -> 1100 116D 11AF AD59 -> 1100 116D 11B0 AD5A -> 1100 116D 11B1 AD5B -> 1100 116D 11B2 AD5C -> 1100 116D 11B3 AD5D -> 1100 116D 11B4 AD5E -> 1100 116D 11B5 AD5F -> 1100 116D 11B6 AD60 -> 1100 116D 11B7 AD61 -> 1100 116D 11B8 AD62 -> 1100 116D 11B9 AD63 -> 1100 116D 11BA AD64 -> 1100 116D 11BB AD65 -> 1100 116D 11BC AD66 -> 1100 116D 11BD AD67 -> 1100 116D 11BE AD68 -> 1100 116D 11BF AD69 -> 1100 116D 11C0 AD6A -> 1100 116D 11C1 AD6B -> 1100 116D 11C2 AD6C -> 1100 116E AD6D -> 1100 116E 11A8 AD6E -> 1100 116E 11A9 AD6F -> 1100 116E 11AA AD70 -> 1100 116E 11AB AD71 -> 1100 116E 11AC AD72 -> 1100 116E 11AD AD73 -> 1100 116E 11AE AD74 -> 1100 116E 11AF AD75 -> 1100 116E 11B0 AD76 -> 1100 116E 11B1 AD77 -> 1100 116E 11B2 AD78 -> 1100 116E 11B3 AD79 -> 1100 116E 11B4 AD7A -> 1100 116E 11B5 AD7B -> 1100 116E 11B6 AD7C -> 1100 116E 11B7 AD7D -> 1100 116E 11B8 AD7E -> 1100 116E 11B9 AD7F -> 1100 116E 11BA AD80 -> 1100 116E 11BB AD81 -> 1100 116E 11BC AD82 -> 1100 116E 11BD AD83 -> 1100 116E 11BE AD84 -> 1100 116E 11BF AD85 -> 1100 116E 11C0 AD86 -> 1100 116E 11C1 AD87 -> 1100 116E 11C2 AD88 -> 1100 116F AD89 -> 1100 116F 11A8 AD8A -> 1100 116F 11A9 AD8B -> 1100 116F 11AA AD8C -> 1100 116F 11AB AD8D -> 1100 116F 11AC AD8E -> 1100 116F 11AD AD8F -> 1100 116F 11AE AD90 -> 1100 116F 11AF AD91 -> 1100 116F 11B0 AD92 -> 1100 116F 11B1 AD93 -> 1100 116F 11B2 AD94 -> 1100 116F 11B3 AD95 -> 1100 116F 11B4 AD96 -> 1100 116F 11B5 AD97 -> 1100 116F 11B6 AD98 -> 1100 116F 11B7 AD99 -> 1100 116F 11B8 AD9A -> 1100 116F 11B9 AD9B -> 1100 116F 11BA AD9C -> 1100 116F 11BB AD9D -> 1100 116F 11BC AD9E -> 1100 116F 11BD AD9F -> 1100 116F 11BE ADA0 -> 1100 116F 11BF ADA1 -> 1100 116F 11C0 ADA2 -> 1100 116F 11C1 ADA3 -> 1100 116F 11C2 ADA4 -> 1100 1170 ADA5 -> 1100 1170 11A8 ADA6 -> 1100 1170 11A9 ADA7 -> 1100 1170 11AA ADA8 -> 1100 1170 11AB ADA9 -> 1100 1170 11AC ADAA -> 1100 1170 11AD ADAB -> 1100 1170 11AE ADAC -> 1100 1170 11AF ADAD -> 1100 1170 11B0 ADAE -> 1100 1170 11B1 ADAF -> 1100 1170 11B2 ADB0 -> 1100 1170 11B3 ADB1 -> 1100 1170 11B4 ADB2 -> 1100 1170 11B5 ADB3 -> 1100 1170 11B6 ADB4 -> 1100 1170 11B7 ADB5 -> 1100 1170 11B8 ADB6 -> 1100 1170 11B9 ADB7 -> 1100 1170 11BA ADB8 -> 1100 1170 11BB ADB9 -> 1100 1170 11BC ADBA -> 1100 1170 11BD ADBB -> 1100 1170 11BE ADBC -> 1100 1170 11BF ADBD -> 1100 1170 11C0 ADBE -> 1100 1170 11C1 ADBF -> 1100 1170 11C2 ADC0 -> 1100 1171 ADC1 -> 1100 1171 11A8 ADC2 -> 1100 1171 11A9 ADC3 -> 1100 1171 11AA ADC4 -> 1100 1171 11AB ADC5 -> 1100 1171 11AC ADC6 -> 1100 1171 11AD ADC7 -> 1100 1171 11AE ADC8 -> 1100 1171 11AF ADC9 -> 1100 1171 11B0 ADCA -> 1100 1171 11B1 ADCB -> 1100 1171 11B2 ADCC -> 1100 1171 11B3 ADCD -> 1100 1171 11B4 ADCE -> 1100 1171 11B5 ADCF -> 1100 1171 11B6 ADD0 -> 1100 1171 11B7 ADD1 -> 1100 1171 11B8 ADD2 -> 1100 1171 11B9 ADD3 -> 1100 1171 11BA ADD4 -> 1100 1171 11BB ADD5 -> 1100 1171 11BC ADD6 -> 1100 1171 11BD ADD7 -> 1100 1171 11BE ADD8 -> 1100 1171 11BF ADD9 -> 1100 1171 11C0 ADDA -> 1100 1171 11C1 ADDB -> 1100 1171 11C2 ADDC -> 1100 1172 ADDD -> 1100 1172 11A8 ADDE -> 1100 1172 11A9 ADDF -> 1100 1172 11AA ADE0 -> 1100 1172 11AB ADE1 -> 1100 1172 11AC ADE2 -> 1100 1172 11AD ADE3 -> 1100 1172 11AE ADE4 -> 1100 1172 11AF ADE5 -> 1100 1172 11B0 ADE6 -> 1100 1172 11B1 ADE7 -> 1100 1172 11B2 ADE8 -> 1100 1172 11B3 ADE9 -> 1100 1172 11B4 ADEA -> 1100 1172 11B5 ADEB -> 1100 1172 11B6 ADEC -> 1100 1172 11B7 ADED -> 1100 1172 11B8 ADEE -> 1100 1172 11B9 ADEF -> 1100 1172 11BA ADF0 -> 1100 1172 11BB ADF1 -> 1100 1172 11BC ADF2 -> 1100 1172 11BD ADF3 -> 1100 1172 11BE ADF4 -> 1100 1172 11BF ADF5 -> 1100 1172 11C0 ADF6 -> 1100 1172 11C1 ADF7 -> 1100 1172 11C2 ADF8 -> 1100 1173 ADF9 -> 1100 1173 11A8 ADFA -> 1100 1173 11A9 ADFB -> 1100 1173 11AA ADFC -> 1100 1173 11AB ADFD -> 1100 1173 11AC ADFE -> 1100 1173 11AD ADFF -> 1100 1173 11AE AE00 -> 1100 1173 11AF AE01 -> 1100 1173 11B0 AE02 -> 1100 1173 11B1 AE03 -> 1100 1173 11B2 AE04 -> 1100 1173 11B3 AE05 -> 1100 1173 11B4 AE06 -> 1100 1173 11B5 AE07 -> 1100 1173 11B6 AE08 -> 1100 1173 11B7 AE09 -> 1100 1173 11B8 AE0A -> 1100 1173 11B9 AE0B -> 1100 1173 11BA AE0C -> 1100 1173 11BB AE0D -> 1100 1173 11BC AE0E -> 1100 1173 11BD AE0F -> 1100 1173 11BE AE10 -> 1100 1173 11BF AE11 -> 1100 1173 11C0 AE12 -> 1100 1173 11C1 AE13 -> 1100 1173 11C2 AE14 -> 1100 1174 AE15 -> 1100 1174 11A8 AE16 -> 1100 1174 11A9 AE17 -> 1100 1174 11AA AE18 -> 1100 1174 11AB AE19 -> 1100 1174 11AC AE1A -> 1100 1174 11AD AE1B -> 1100 1174 11AE AE1C -> 1100 1174 11AF AE1D -> 1100 1174 11B0 AE1E -> 1100 1174 11B1 AE1F -> 1100 1174 11B2 AE20 -> 1100 1174 11B3 AE21 -> 1100 1174 11B4 AE22 -> 1100 1174 11B5 AE23 -> 1100 1174 11B6 AE24 -> 1100 1174 11B7 AE25 -> 1100 1174 11B8 AE26 -> 1100 1174 11B9 AE27 -> 1100 1174 11BA AE28 -> 1100 1174 11BB AE29 -> 1100 1174 11BC AE2A -> 1100 1174 11BD AE2B -> 1100 1174 11BE AE2C -> 1100 1174 11BF AE2D -> 1100 1174 11C0 AE2E -> 1100 1174 11C1 AE2F -> 1100 1174 11C2 AE30 -> 1100 1175 AE31 -> 1100 1175 11A8 AE32 -> 1100 1175 11A9 AE33 -> 1100 1175 11AA AE34 -> 1100 1175 11AB AE35 -> 1100 1175 11AC AE36 -> 1100 1175 11AD AE37 -> 1100 1175 11AE AE38 -> 1100 1175 11AF AE39 -> 1100 1175 11B0 AE3A -> 1100 1175 11B1 AE3B -> 1100 1175 11B2 AE3C -> 1100 1175 11B3 AE3D -> 1100 1175 11B4 AE3E -> 1100 1175 11B5 AE3F -> 1100 1175 11B6 AE40 -> 1100 1175 11B7 AE41 -> 1100 1175 11B8 AE42 -> 1100 1175 11B9 AE43 -> 1100 1175 11BA AE44 -> 1100 1175 11BB AE45 -> 1100 1175 11BC AE46 -> 1100 1175 11BD AE47 -> 1100 1175 11BE AE48 -> 1100 1175 11BF AE49 -> 1100 1175 11C0 AE4A -> 1100 1175 11C1 AE4B -> 1100 1175 11C2 AE4C -> 1101 1161 AE4D -> 1101 1161 11A8 AE4E -> 1101 1161 11A9 AE4F -> 1101 1161 11AA AE50 -> 1101 1161 11AB AE51 -> 1101 1161 11AC AE52 -> 1101 1161 11AD AE53 -> 1101 1161 11AE AE54 -> 1101 1161 11AF AE55 -> 1101 1161 11B0 AE56 -> 1101 1161 11B1 AE57 -> 1101 1161 11B2 AE58 -> 1101 1161 11B3 AE59 -> 1101 1161 11B4 AE5A -> 1101 1161 11B5 AE5B -> 1101 1161 11B6 AE5C -> 1101 1161 11B7 AE5D -> 1101 1161 11B8 AE5E -> 1101 1161 11B9 AE5F -> 1101 1161 11BA AE60 -> 1101 1161 11BB AE61 -> 1101 1161 11BC AE62 -> 1101 1161 11BD AE63 -> 1101 1161 11BE AE64 -> 1101 1161 11BF AE65 -> 1101 1161 11C0 AE66 -> 1101 1161 11C1 AE67 -> 1101 1161 11C2 AE68 -> 1101 1162 AE69 -> 1101 1162 11A8 AE6A -> 1101 1162 11A9 AE6B -> 1101 1162 11AA AE6C -> 1101 1162 11AB AE6D -> 1101 1162 11AC AE6E -> 1101 1162 11AD AE6F -> 1101 1162 11AE AE70 -> 1101 1162 11AF AE71 -> 1101 1162 11B0 AE72 -> 1101 1162 11B1 AE73 -> 1101 1162 11B2 AE74 -> 1101 1162 11B3 AE75 -> 1101 1162 11B4 AE76 -> 1101 1162 11B5 AE77 -> 1101 1162 11B6 AE78 -> 1101 1162 11B7 AE79 -> 1101 1162 11B8 AE7A -> 1101 1162 11B9 AE7B -> 1101 1162 11BA AE7C -> 1101 1162 11BB AE7D -> 1101 1162 11BC AE7E -> 1101 1162 11BD AE7F -> 1101 1162 11BE AE80 -> 1101 1162 11BF AE81 -> 1101 1162 11C0 AE82 -> 1101 1162 11C1 AE83 -> 1101 1162 11C2 AE84 -> 1101 1163 AE85 -> 1101 1163 11A8 AE86 -> 1101 1163 11A9 AE87 -> 1101 1163 11AA AE88 -> 1101 1163 11AB AE89 -> 1101 1163 11AC AE8A -> 1101 1163 11AD AE8B -> 1101 1163 11AE AE8C -> 1101 1163 11AF AE8D -> 1101 1163 11B0 AE8E -> 1101 1163 11B1 AE8F -> 1101 1163 11B2 AE90 -> 1101 1163 11B3 AE91 -> 1101 1163 11B4 AE92 -> 1101 1163 11B5 AE93 -> 1101 1163 11B6 AE94 -> 1101 1163 11B7 AE95 -> 1101 1163 11B8 AE96 -> 1101 1163 11B9 AE97 -> 1101 1163 11BA AE98 -> 1101 1163 11BB AE99 -> 1101 1163 11BC AE9A -> 1101 1163 11BD AE9B -> 1101 1163 11BE AE9C -> 1101 1163 11BF AE9D -> 1101 1163 11C0 AE9E -> 1101 1163 11C1 AE9F -> 1101 1163 11C2 AEA0 -> 1101 1164 AEA1 -> 1101 1164 11A8 AEA2 -> 1101 1164 11A9 AEA3 -> 1101 1164 11AA AEA4 -> 1101 1164 11AB AEA5 -> 1101 1164 11AC AEA6 -> 1101 1164 11AD AEA7 -> 1101 1164 11AE AEA8 -> 1101 1164 11AF AEA9 -> 1101 1164 11B0 AEAA -> 1101 1164 11B1 AEAB -> 1101 1164 11B2 AEAC -> 1101 1164 11B3 AEAD -> 1101 1164 11B4 AEAE -> 1101 1164 11B5 AEAF -> 1101 1164 11B6 AEB0 -> 1101 1164 11B7 AEB1 -> 1101 1164 11B8 AEB2 -> 1101 1164 11B9 AEB3 -> 1101 1164 11BA AEB4 -> 1101 1164 11BB AEB5 -> 1101 1164 11BC AEB6 -> 1101 1164 11BD AEB7 -> 1101 1164 11BE AEB8 -> 1101 1164 11BF AEB9 -> 1101 1164 11C0 AEBA -> 1101 1164 11C1 AEBB -> 1101 1164 11C2 AEBC -> 1101 1165 AEBD -> 1101 1165 11A8 AEBE -> 1101 1165 11A9 AEBF -> 1101 1165 11AA AEC0 -> 1101 1165 11AB AEC1 -> 1101 1165 11AC AEC2 -> 1101 1165 11AD AEC3 -> 1101 1165 11AE AEC4 -> 1101 1165 11AF AEC5 -> 1101 1165 11B0 AEC6 -> 1101 1165 11B1 AEC7 -> 1101 1165 11B2 AEC8 -> 1101 1165 11B3 AEC9 -> 1101 1165 11B4 AECA -> 1101 1165 11B5 AECB -> 1101 1165 11B6 AECC -> 1101 1165 11B7 AECD -> 1101 1165 11B8 AECE -> 1101 1165 11B9 AECF -> 1101 1165 11BA AED0 -> 1101 1165 11BB AED1 -> 1101 1165 11BC AED2 -> 1101 1165 11BD AED3 -> 1101 1165 11BE AED4 -> 1101 1165 11BF AED5 -> 1101 1165 11C0 AED6 -> 1101 1165 11C1 AED7 -> 1101 1165 11C2 AED8 -> 1101 1166 AED9 -> 1101 1166 11A8 AEDA -> 1101 1166 11A9 AEDB -> 1101 1166 11AA AEDC -> 1101 1166 11AB AEDD -> 1101 1166 11AC AEDE -> 1101 1166 11AD AEDF -> 1101 1166 11AE AEE0 -> 1101 1166 11AF AEE1 -> 1101 1166 11B0 AEE2 -> 1101 1166 11B1 AEE3 -> 1101 1166 11B2 AEE4 -> 1101 1166 11B3 AEE5 -> 1101 1166 11B4 AEE6 -> 1101 1166 11B5 AEE7 -> 1101 1166 11B6 AEE8 -> 1101 1166 11B7 AEE9 -> 1101 1166 11B8 AEEA -> 1101 1166 11B9 AEEB -> 1101 1166 11BA AEEC -> 1101 1166 11BB AEED -> 1101 1166 11BC AEEE -> 1101 1166 11BD AEEF -> 1101 1166 11BE AEF0 -> 1101 1166 11BF AEF1 -> 1101 1166 11C0 AEF2 -> 1101 1166 11C1 AEF3 -> 1101 1166 11C2 AEF4 -> 1101 1167 AEF5 -> 1101 1167 11A8 AEF6 -> 1101 1167 11A9 AEF7 -> 1101 1167 11AA AEF8 -> 1101 1167 11AB AEF9 -> 1101 1167 11AC AEFA -> 1101 1167 11AD AEFB -> 1101 1167 11AE AEFC -> 1101 1167 11AF AEFD -> 1101 1167 11B0 AEFE -> 1101 1167 11B1 AEFF -> 1101 1167 11B2 AF00 -> 1101 1167 11B3 AF01 -> 1101 1167 11B4 AF02 -> 1101 1167 11B5 AF03 -> 1101 1167 11B6 AF04 -> 1101 1167 11B7 AF05 -> 1101 1167 11B8 AF06 -> 1101 1167 11B9 AF07 -> 1101 1167 11BA AF08 -> 1101 1167 11BB AF09 -> 1101 1167 11BC AF0A -> 1101 1167 11BD AF0B -> 1101 1167 11BE AF0C -> 1101 1167 11BF AF0D -> 1101 1167 11C0 AF0E -> 1101 1167 11C1 AF0F -> 1101 1167 11C2 AF10 -> 1101 1168 AF11 -> 1101 1168 11A8 AF12 -> 1101 1168 11A9 AF13 -> 1101 1168 11AA AF14 -> 1101 1168 11AB AF15 -> 1101 1168 11AC AF16 -> 1101 1168 11AD AF17 -> 1101 1168 11AE AF18 -> 1101 1168 11AF AF19 -> 1101 1168 11B0 AF1A -> 1101 1168 11B1 AF1B -> 1101 1168 11B2 AF1C -> 1101 1168 11B3 AF1D -> 1101 1168 11B4 AF1E -> 1101 1168 11B5 AF1F -> 1101 1168 11B6 AF20 -> 1101 1168 11B7 AF21 -> 1101 1168 11B8 AF22 -> 1101 1168 11B9 AF23 -> 1101 1168 11BA AF24 -> 1101 1168 11BB AF25 -> 1101 1168 11BC AF26 -> 1101 1168 11BD AF27 -> 1101 1168 11BE AF28 -> 1101 1168 11BF AF29 -> 1101 1168 11C0 AF2A -> 1101 1168 11C1 AF2B -> 1101 1168 11C2 AF2C -> 1101 1169 AF2D -> 1101 1169 11A8 AF2E -> 1101 1169 11A9 AF2F -> 1101 1169 11AA AF30 -> 1101 1169 11AB AF31 -> 1101 1169 11AC AF32 -> 1101 1169 11AD AF33 -> 1101 1169 11AE AF34 -> 1101 1169 11AF AF35 -> 1101 1169 11B0 AF36 -> 1101 1169 11B1 AF37 -> 1101 1169 11B2 AF38 -> 1101 1169 11B3 AF39 -> 1101 1169 11B4 AF3A -> 1101 1169 11B5 AF3B -> 1101 1169 11B6 AF3C -> 1101 1169 11B7 AF3D -> 1101 1169 11B8 AF3E -> 1101 1169 11B9 AF3F -> 1101 1169 11BA AF40 -> 1101 1169 11BB AF41 -> 1101 1169 11BC AF42 -> 1101 1169 11BD AF43 -> 1101 1169 11BE AF44 -> 1101 1169 11BF AF45 -> 1101 1169 11C0 AF46 -> 1101 1169 11C1 AF47 -> 1101 1169 11C2 AF48 -> 1101 116A AF49 -> 1101 116A 11A8 AF4A -> 1101 116A 11A9 AF4B -> 1101 116A 11AA AF4C -> 1101 116A 11AB AF4D -> 1101 116A 11AC AF4E -> 1101 116A 11AD AF4F -> 1101 116A 11AE AF50 -> 1101 116A 11AF AF51 -> 1101 116A 11B0 AF52 -> 1101 116A 11B1 AF53 -> 1101 116A 11B2 AF54 -> 1101 116A 11B3 AF55 -> 1101 116A 11B4 AF56 -> 1101 116A 11B5 AF57 -> 1101 116A 11B6 AF58 -> 1101 116A 11B7 AF59 -> 1101 116A 11B8 AF5A -> 1101 116A 11B9 AF5B -> 1101 116A 11BA AF5C -> 1101 116A 11BB AF5D -> 1101 116A 11BC AF5E -> 1101 116A 11BD AF5F -> 1101 116A 11BE AF60 -> 1101 116A 11BF AF61 -> 1101 116A 11C0 AF62 -> 1101 116A 11C1 AF63 -> 1101 116A 11C2 AF64 -> 1101 116B AF65 -> 1101 116B 11A8 AF66 -> 1101 116B 11A9 AF67 -> 1101 116B 11AA AF68 -> 1101 116B 11AB AF69 -> 1101 116B 11AC AF6A -> 1101 116B 11AD AF6B -> 1101 116B 11AE AF6C -> 1101 116B 11AF AF6D -> 1101 116B 11B0 AF6E -> 1101 116B 11B1 AF6F -> 1101 116B 11B2 AF70 -> 1101 116B 11B3 AF71 -> 1101 116B 11B4 AF72 -> 1101 116B 11B5 AF73 -> 1101 116B 11B6 AF74 -> 1101 116B 11B7 AF75 -> 1101 116B 11B8 AF76 -> 1101 116B 11B9 AF77 -> 1101 116B 11BA AF78 -> 1101 116B 11BB AF79 -> 1101 116B 11BC AF7A -> 1101 116B 11BD AF7B -> 1101 116B 11BE AF7C -> 1101 116B 11BF AF7D -> 1101 116B 11C0 AF7E -> 1101 116B 11C1 AF7F -> 1101 116B 11C2 AF80 -> 1101 116C AF81 -> 1101 116C 11A8 AF82 -> 1101 116C 11A9 AF83 -> 1101 116C 11AA AF84 -> 1101 116C 11AB AF85 -> 1101 116C 11AC AF86 -> 1101 116C 11AD AF87 -> 1101 116C 11AE AF88 -> 1101 116C 11AF AF89 -> 1101 116C 11B0 AF8A -> 1101 116C 11B1 AF8B -> 1101 116C 11B2 AF8C -> 1101 116C 11B3 AF8D -> 1101 116C 11B4 AF8E -> 1101 116C 11B5 AF8F -> 1101 116C 11B6 AF90 -> 1101 116C 11B7 AF91 -> 1101 116C 11B8 AF92 -> 1101 116C 11B9 AF93 -> 1101 116C 11BA AF94 -> 1101 116C 11BB AF95 -> 1101 116C 11BC AF96 -> 1101 116C 11BD AF97 -> 1101 116C 11BE AF98 -> 1101 116C 11BF AF99 -> 1101 116C 11C0 AF9A -> 1101 116C 11C1 AF9B -> 1101 116C 11C2 AF9C -> 1101 116D AF9D -> 1101 116D 11A8 AF9E -> 1101 116D 11A9 AF9F -> 1101 116D 11AA AFA0 -> 1101 116D 11AB AFA1 -> 1101 116D 11AC AFA2 -> 1101 116D 11AD AFA3 -> 1101 116D 11AE AFA4 -> 1101 116D 11AF AFA5 -> 1101 116D 11B0 AFA6 -> 1101 116D 11B1 AFA7 -> 1101 116D 11B2 AFA8 -> 1101 116D 11B3 AFA9 -> 1101 116D 11B4 AFAA -> 1101 116D 11B5 AFAB -> 1101 116D 11B6 AFAC -> 1101 116D 11B7 AFAD -> 1101 116D 11B8 AFAE -> 1101 116D 11B9 AFAF -> 1101 116D 11BA AFB0 -> 1101 116D 11BB AFB1 -> 1101 116D 11BC AFB2 -> 1101 116D 11BD AFB3 -> 1101 116D 11BE AFB4 -> 1101 116D 11BF AFB5 -> 1101 116D 11C0 AFB6 -> 1101 116D 11C1 AFB7 -> 1101 116D 11C2 AFB8 -> 1101 116E AFB9 -> 1101 116E 11A8 AFBA -> 1101 116E 11A9 AFBB -> 1101 116E 11AA AFBC -> 1101 116E 11AB AFBD -> 1101 116E 11AC AFBE -> 1101 116E 11AD AFBF -> 1101 116E 11AE AFC0 -> 1101 116E 11AF AFC1 -> 1101 116E 11B0 AFC2 -> 1101 116E 11B1 AFC3 -> 1101 116E 11B2 AFC4 -> 1101 116E 11B3 AFC5 -> 1101 116E 11B4 AFC6 -> 1101 116E 11B5 AFC7 -> 1101 116E 11B6 AFC8 -> 1101 116E 11B7 AFC9 -> 1101 116E 11B8 AFCA -> 1101 116E 11B9 AFCB -> 1101 116E 11BA AFCC -> 1101 116E 11BB AFCD -> 1101 116E 11BC AFCE -> 1101 116E 11BD AFCF -> 1101 116E 11BE AFD0 -> 1101 116E 11BF AFD1 -> 1101 116E 11C0 AFD2 -> 1101 116E 11C1 AFD3 -> 1101 116E 11C2 AFD4 -> 1101 116F AFD5 -> 1101 116F 11A8 AFD6 -> 1101 116F 11A9 AFD7 -> 1101 116F 11AA AFD8 -> 1101 116F 11AB AFD9 -> 1101 116F 11AC AFDA -> 1101 116F 11AD AFDB -> 1101 116F 11AE AFDC -> 1101 116F 11AF AFDD -> 1101 116F 11B0 AFDE -> 1101 116F 11B1 AFDF -> 1101 116F 11B2 AFE0 -> 1101 116F 11B3 AFE1 -> 1101 116F 11B4 AFE2 -> 1101 116F 11B5 AFE3 -> 1101 116F 11B6 AFE4 -> 1101 116F 11B7 AFE5 -> 1101 116F 11B8 AFE6 -> 1101 116F 11B9 AFE7 -> 1101 116F 11BA AFE8 -> 1101 116F 11BB AFE9 -> 1101 116F 11BC AFEA -> 1101 116F 11BD AFEB -> 1101 116F 11BE AFEC -> 1101 116F 11BF AFED -> 1101 116F 11C0 AFEE -> 1101 116F 11C1 AFEF -> 1101 116F 11C2 AFF0 -> 1101 1170 AFF1 -> 1101 1170 11A8 AFF2 -> 1101 1170 11A9 AFF3 -> 1101 1170 11AA AFF4 -> 1101 1170 11AB AFF5 -> 1101 1170 11AC AFF6 -> 1101 1170 11AD AFF7 -> 1101 1170 11AE AFF8 -> 1101 1170 11AF AFF9 -> 1101 1170 11B0 AFFA -> 1101 1170 11B1 AFFB -> 1101 1170 11B2 AFFC -> 1101 1170 11B3 AFFD -> 1101 1170 11B4 AFFE -> 1101 1170 11B5 AFFF -> 1101 1170 11B6 B000 -> 1101 1170 11B7 B001 -> 1101 1170 11B8 B002 -> 1101 1170 11B9 B003 -> 1101 1170 11BA B004 -> 1101 1170 11BB B005 -> 1101 1170 11BC B006 -> 1101 1170 11BD B007 -> 1101 1170 11BE B008 -> 1101 1170 11BF B009 -> 1101 1170 11C0 B00A -> 1101 1170 11C1 B00B -> 1101 1170 11C2 B00C -> 1101 1171 B00D -> 1101 1171 11A8 B00E -> 1101 1171 11A9 B00F -> 1101 1171 11AA B010 -> 1101 1171 11AB B011 -> 1101 1171 11AC B012 -> 1101 1171 11AD B013 -> 1101 1171 11AE B014 -> 1101 1171 11AF B015 -> 1101 1171 11B0 B016 -> 1101 1171 11B1 B017 -> 1101 1171 11B2 B018 -> 1101 1171 11B3 B019 -> 1101 1171 11B4 B01A -> 1101 1171 11B5 B01B -> 1101 1171 11B6 B01C -> 1101 1171 11B7 B01D -> 1101 1171 11B8 B01E -> 1101 1171 11B9 B01F -> 1101 1171 11BA B020 -> 1101 1171 11BB B021 -> 1101 1171 11BC B022 -> 1101 1171 11BD B023 -> 1101 1171 11BE B024 -> 1101 1171 11BF B025 -> 1101 1171 11C0 B026 -> 1101 1171 11C1 B027 -> 1101 1171 11C2 B028 -> 1101 1172 B029 -> 1101 1172 11A8 B02A -> 1101 1172 11A9 B02B -> 1101 1172 11AA B02C -> 1101 1172 11AB B02D -> 1101 1172 11AC B02E -> 1101 1172 11AD B02F -> 1101 1172 11AE B030 -> 1101 1172 11AF B031 -> 1101 1172 11B0 B032 -> 1101 1172 11B1 B033 -> 1101 1172 11B2 B034 -> 1101 1172 11B3 B035 -> 1101 1172 11B4 B036 -> 1101 1172 11B5 B037 -> 1101 1172 11B6 B038 -> 1101 1172 11B7 B039 -> 1101 1172 11B8 B03A -> 1101 1172 11B9 B03B -> 1101 1172 11BA B03C -> 1101 1172 11BB B03D -> 1101 1172 11BC B03E -> 1101 1172 11BD B03F -> 1101 1172 11BE B040 -> 1101 1172 11BF B041 -> 1101 1172 11C0 B042 -> 1101 1172 11C1 B043 -> 1101 1172 11C2 B044 -> 1101 1173 B045 -> 1101 1173 11A8 B046 -> 1101 1173 11A9 B047 -> 1101 1173 11AA B048 -> 1101 1173 11AB B049 -> 1101 1173 11AC B04A -> 1101 1173 11AD B04B -> 1101 1173 11AE B04C -> 1101 1173 11AF B04D -> 1101 1173 11B0 B04E -> 1101 1173 11B1 B04F -> 1101 1173 11B2 B050 -> 1101 1173 11B3 B051 -> 1101 1173 11B4 B052 -> 1101 1173 11B5 B053 -> 1101 1173 11B6 B054 -> 1101 1173 11B7 B055 -> 1101 1173 11B8 B056 -> 1101 1173 11B9 B057 -> 1101 1173 11BA B058 -> 1101 1173 11BB B059 -> 1101 1173 11BC B05A -> 1101 1173 11BD B05B -> 1101 1173 11BE B05C -> 1101 1173 11BF B05D -> 1101 1173 11C0 B05E -> 1101 1173 11C1 B05F -> 1101 1173 11C2 B060 -> 1101 1174 B061 -> 1101 1174 11A8 B062 -> 1101 1174 11A9 B063 -> 1101 1174 11AA B064 -> 1101 1174 11AB B065 -> 1101 1174 11AC B066 -> 1101 1174 11AD B067 -> 1101 1174 11AE B068 -> 1101 1174 11AF B069 -> 1101 1174 11B0 B06A -> 1101 1174 11B1 B06B -> 1101 1174 11B2 B06C -> 1101 1174 11B3 B06D -> 1101 1174 11B4 B06E -> 1101 1174 11B5 B06F -> 1101 1174 11B6 B070 -> 1101 1174 11B7 B071 -> 1101 1174 11B8 B072 -> 1101 1174 11B9 B073 -> 1101 1174 11BA B074 -> 1101 1174 11BB B075 -> 1101 1174 11BC B076 -> 1101 1174 11BD B077 -> 1101 1174 11BE B078 -> 1101 1174 11BF B079 -> 1101 1174 11C0 B07A -> 1101 1174 11C1 B07B -> 1101 1174 11C2 B07C -> 1101 1175 B07D -> 1101 1175 11A8 B07E -> 1101 1175 11A9 B07F -> 1101 1175 11AA B080 -> 1101 1175 11AB B081 -> 1101 1175 11AC B082 -> 1101 1175 11AD B083 -> 1101 1175 11AE B084 -> 1101 1175 11AF B085 -> 1101 1175 11B0 B086 -> 1101 1175 11B1 B087 -> 1101 1175 11B2 B088 -> 1101 1175 11B3 B089 -> 1101 1175 11B4 B08A -> 1101 1175 11B5 B08B -> 1101 1175 11B6 B08C -> 1101 1175 11B7 B08D -> 1101 1175 11B8 B08E -> 1101 1175 11B9 B08F -> 1101 1175 11BA B090 -> 1101 1175 11BB B091 -> 1101 1175 11BC B092 -> 1101 1175 11BD B093 -> 1101 1175 11BE B094 -> 1101 1175 11BF B095 -> 1101 1175 11C0 B096 -> 1101 1175 11C1 B097 -> 1101 1175 11C2 B098 -> 1102 1161 B099 -> 1102 1161 11A8 B09A -> 1102 1161 11A9 B09B -> 1102 1161 11AA B09C -> 1102 1161 11AB B09D -> 1102 1161 11AC B09E -> 1102 1161 11AD B09F -> 1102 1161 11AE B0A0 -> 1102 1161 11AF B0A1 -> 1102 1161 11B0 B0A2 -> 1102 1161 11B1 B0A3 -> 1102 1161 11B2 B0A4 -> 1102 1161 11B3 B0A5 -> 1102 1161 11B4 B0A6 -> 1102 1161 11B5 B0A7 -> 1102 1161 11B6 B0A8 -> 1102 1161 11B7 B0A9 -> 1102 1161 11B8 B0AA -> 1102 1161 11B9 B0AB -> 1102 1161 11BA B0AC -> 1102 1161 11BB B0AD -> 1102 1161 11BC B0AE -> 1102 1161 11BD B0AF -> 1102 1161 11BE B0B0 -> 1102 1161 11BF B0B1 -> 1102 1161 11C0 B0B2 -> 1102 1161 11C1 B0B3 -> 1102 1161 11C2 B0B4 -> 1102 1162 B0B5 -> 1102 1162 11A8 B0B6 -> 1102 1162 11A9 B0B7 -> 1102 1162 11AA B0B8 -> 1102 1162 11AB B0B9 -> 1102 1162 11AC B0BA -> 1102 1162 11AD B0BB -> 1102 1162 11AE B0BC -> 1102 1162 11AF B0BD -> 1102 1162 11B0 B0BE -> 1102 1162 11B1 B0BF -> 1102 1162 11B2 B0C0 -> 1102 1162 11B3 B0C1 -> 1102 1162 11B4 B0C2 -> 1102 1162 11B5 B0C3 -> 1102 1162 11B6 B0C4 -> 1102 1162 11B7 B0C5 -> 1102 1162 11B8 B0C6 -> 1102 1162 11B9 B0C7 -> 1102 1162 11BA B0C8 -> 1102 1162 11BB B0C9 -> 1102 1162 11BC B0CA -> 1102 1162 11BD B0CB -> 1102 1162 11BE B0CC -> 1102 1162 11BF B0CD -> 1102 1162 11C0 B0CE -> 1102 1162 11C1 B0CF -> 1102 1162 11C2 B0D0 -> 1102 1163 B0D1 -> 1102 1163 11A8 B0D2 -> 1102 1163 11A9 B0D3 -> 1102 1163 11AA B0D4 -> 1102 1163 11AB B0D5 -> 1102 1163 11AC B0D6 -> 1102 1163 11AD B0D7 -> 1102 1163 11AE B0D8 -> 1102 1163 11AF B0D9 -> 1102 1163 11B0 B0DA -> 1102 1163 11B1 B0DB -> 1102 1163 11B2 B0DC -> 1102 1163 11B3 B0DD -> 1102 1163 11B4 B0DE -> 1102 1163 11B5 B0DF -> 1102 1163 11B6 B0E0 -> 1102 1163 11B7 B0E1 -> 1102 1163 11B8 B0E2 -> 1102 1163 11B9 B0E3 -> 1102 1163 11BA B0E4 -> 1102 1163 11BB B0E5 -> 1102 1163 11BC B0E6 -> 1102 1163 11BD B0E7 -> 1102 1163 11BE B0E8 -> 1102 1163 11BF B0E9 -> 1102 1163 11C0 B0EA -> 1102 1163 11C1 B0EB -> 1102 1163 11C2 B0EC -> 1102 1164 B0ED -> 1102 1164 11A8 B0EE -> 1102 1164 11A9 B0EF -> 1102 1164 11AA B0F0 -> 1102 1164 11AB B0F1 -> 1102 1164 11AC B0F2 -> 1102 1164 11AD B0F3 -> 1102 1164 11AE B0F4 -> 1102 1164 11AF B0F5 -> 1102 1164 11B0 B0F6 -> 1102 1164 11B1 B0F7 -> 1102 1164 11B2 B0F8 -> 1102 1164 11B3 B0F9 -> 1102 1164 11B4 B0FA -> 1102 1164 11B5 B0FB -> 1102 1164 11B6 B0FC -> 1102 1164 11B7 B0FD -> 1102 1164 11B8 B0FE -> 1102 1164 11B9 B0FF -> 1102 1164 11BA B100 -> 1102 1164 11BB B101 -> 1102 1164 11BC B102 -> 1102 1164 11BD B103 -> 1102 1164 11BE B104 -> 1102 1164 11BF B105 -> 1102 1164 11C0 B106 -> 1102 1164 11C1 B107 -> 1102 1164 11C2 B108 -> 1102 1165 B109 -> 1102 1165 11A8 B10A -> 1102 1165 11A9 B10B -> 1102 1165 11AA B10C -> 1102 1165 11AB B10D -> 1102 1165 11AC B10E -> 1102 1165 11AD B10F -> 1102 1165 11AE B110 -> 1102 1165 11AF B111 -> 1102 1165 11B0 B112 -> 1102 1165 11B1 B113 -> 1102 1165 11B2 B114 -> 1102 1165 11B3 B115 -> 1102 1165 11B4 B116 -> 1102 1165 11B5 B117 -> 1102 1165 11B6 B118 -> 1102 1165 11B7 B119 -> 1102 1165 11B8 B11A -> 1102 1165 11B9 B11B -> 1102 1165 11BA B11C -> 1102 1165 11BB B11D -> 1102 1165 11BC B11E -> 1102 1165 11BD B11F -> 1102 1165 11BE B120 -> 1102 1165 11BF B121 -> 1102 1165 11C0 B122 -> 1102 1165 11C1 B123 -> 1102 1165 11C2 B124 -> 1102 1166 B125 -> 1102 1166 11A8 B126 -> 1102 1166 11A9 B127 -> 1102 1166 11AA B128 -> 1102 1166 11AB B129 -> 1102 1166 11AC B12A -> 1102 1166 11AD B12B -> 1102 1166 11AE B12C -> 1102 1166 11AF B12D -> 1102 1166 11B0 B12E -> 1102 1166 11B1 B12F -> 1102 1166 11B2 B130 -> 1102 1166 11B3 B131 -> 1102 1166 11B4 B132 -> 1102 1166 11B5 B133 -> 1102 1166 11B6 B134 -> 1102 1166 11B7 B135 -> 1102 1166 11B8 B136 -> 1102 1166 11B9 B137 -> 1102 1166 11BA B138 -> 1102 1166 11BB B139 -> 1102 1166 11BC B13A -> 1102 1166 11BD B13B -> 1102 1166 11BE B13C -> 1102 1166 11BF B13D -> 1102 1166 11C0 B13E -> 1102 1166 11C1 B13F -> 1102 1166 11C2 B140 -> 1102 1167 B141 -> 1102 1167 11A8 B142 -> 1102 1167 11A9 B143 -> 1102 1167 11AA B144 -> 1102 1167 11AB B145 -> 1102 1167 11AC B146 -> 1102 1167 11AD B147 -> 1102 1167 11AE B148 -> 1102 1167 11AF B149 -> 1102 1167 11B0 B14A -> 1102 1167 11B1 B14B -> 1102 1167 11B2 B14C -> 1102 1167 11B3 B14D -> 1102 1167 11B4 B14E -> 1102 1167 11B5 B14F -> 1102 1167 11B6 B150 -> 1102 1167 11B7 B151 -> 1102 1167 11B8 B152 -> 1102 1167 11B9 B153 -> 1102 1167 11BA B154 -> 1102 1167 11BB B155 -> 1102 1167 11BC B156 -> 1102 1167 11BD B157 -> 1102 1167 11BE B158 -> 1102 1167 11BF B159 -> 1102 1167 11C0 B15A -> 1102 1167 11C1 B15B -> 1102 1167 11C2 B15C -> 1102 1168 B15D -> 1102 1168 11A8 B15E -> 1102 1168 11A9 B15F -> 1102 1168 11AA B160 -> 1102 1168 11AB B161 -> 1102 1168 11AC B162 -> 1102 1168 11AD B163 -> 1102 1168 11AE B164 -> 1102 1168 11AF B165 -> 1102 1168 11B0 B166 -> 1102 1168 11B1 B167 -> 1102 1168 11B2 B168 -> 1102 1168 11B3 B169 -> 1102 1168 11B4 B16A -> 1102 1168 11B5 B16B -> 1102 1168 11B6 B16C -> 1102 1168 11B7 B16D -> 1102 1168 11B8 B16E -> 1102 1168 11B9 B16F -> 1102 1168 11BA B170 -> 1102 1168 11BB B171 -> 1102 1168 11BC B172 -> 1102 1168 11BD B173 -> 1102 1168 11BE B174 -> 1102 1168 11BF B175 -> 1102 1168 11C0 B176 -> 1102 1168 11C1 B177 -> 1102 1168 11C2 B178 -> 1102 1169 B179 -> 1102 1169 11A8 B17A -> 1102 1169 11A9 B17B -> 1102 1169 11AA B17C -> 1102 1169 11AB B17D -> 1102 1169 11AC B17E -> 1102 1169 11AD B17F -> 1102 1169 11AE B180 -> 1102 1169 11AF B181 -> 1102 1169 11B0 B182 -> 1102 1169 11B1 B183 -> 1102 1169 11B2 B184 -> 1102 1169 11B3 B185 -> 1102 1169 11B4 B186 -> 1102 1169 11B5 B187 -> 1102 1169 11B6 B188 -> 1102 1169 11B7 B189 -> 1102 1169 11B8 B18A -> 1102 1169 11B9 B18B -> 1102 1169 11BA B18C -> 1102 1169 11BB B18D -> 1102 1169 11BC B18E -> 1102 1169 11BD B18F -> 1102 1169 11BE B190 -> 1102 1169 11BF B191 -> 1102 1169 11C0 B192 -> 1102 1169 11C1 B193 -> 1102 1169 11C2 B194 -> 1102 116A B195 -> 1102 116A 11A8 B196 -> 1102 116A 11A9 B197 -> 1102 116A 11AA B198 -> 1102 116A 11AB B199 -> 1102 116A 11AC B19A -> 1102 116A 11AD B19B -> 1102 116A 11AE B19C -> 1102 116A 11AF B19D -> 1102 116A 11B0 B19E -> 1102 116A 11B1 B19F -> 1102 116A 11B2 B1A0 -> 1102 116A 11B3 B1A1 -> 1102 116A 11B4 B1A2 -> 1102 116A 11B5 B1A3 -> 1102 116A 11B6 B1A4 -> 1102 116A 11B7 B1A5 -> 1102 116A 11B8 B1A6 -> 1102 116A 11B9 B1A7 -> 1102 116A 11BA B1A8 -> 1102 116A 11BB B1A9 -> 1102 116A 11BC B1AA -> 1102 116A 11BD B1AB -> 1102 116A 11BE B1AC -> 1102 116A 11BF B1AD -> 1102 116A 11C0 B1AE -> 1102 116A 11C1 B1AF -> 1102 116A 11C2 B1B0 -> 1102 116B B1B1 -> 1102 116B 11A8 B1B2 -> 1102 116B 11A9 B1B3 -> 1102 116B 11AA B1B4 -> 1102 116B 11AB B1B5 -> 1102 116B 11AC B1B6 -> 1102 116B 11AD B1B7 -> 1102 116B 11AE B1B8 -> 1102 116B 11AF B1B9 -> 1102 116B 11B0 B1BA -> 1102 116B 11B1 B1BB -> 1102 116B 11B2 B1BC -> 1102 116B 11B3 B1BD -> 1102 116B 11B4 B1BE -> 1102 116B 11B5 B1BF -> 1102 116B 11B6 B1C0 -> 1102 116B 11B7 B1C1 -> 1102 116B 11B8 B1C2 -> 1102 116B 11B9 B1C3 -> 1102 116B 11BA B1C4 -> 1102 116B 11BB B1C5 -> 1102 116B 11BC B1C6 -> 1102 116B 11BD B1C7 -> 1102 116B 11BE B1C8 -> 1102 116B 11BF B1C9 -> 1102 116B 11C0 B1CA -> 1102 116B 11C1 B1CB -> 1102 116B 11C2 B1CC -> 1102 116C B1CD -> 1102 116C 11A8 B1CE -> 1102 116C 11A9 B1CF -> 1102 116C 11AA B1D0 -> 1102 116C 11AB B1D1 -> 1102 116C 11AC B1D2 -> 1102 116C 11AD B1D3 -> 1102 116C 11AE B1D4 -> 1102 116C 11AF B1D5 -> 1102 116C 11B0 B1D6 -> 1102 116C 11B1 B1D7 -> 1102 116C 11B2 B1D8 -> 1102 116C 11B3 B1D9 -> 1102 116C 11B4 B1DA -> 1102 116C 11B5 B1DB -> 1102 116C 11B6 B1DC -> 1102 116C 11B7 B1DD -> 1102 116C 11B8 B1DE -> 1102 116C 11B9 B1DF -> 1102 116C 11BA B1E0 -> 1102 116C 11BB B1E1 -> 1102 116C 11BC B1E2 -> 1102 116C 11BD B1E3 -> 1102 116C 11BE B1E4 -> 1102 116C 11BF B1E5 -> 1102 116C 11C0 B1E6 -> 1102 116C 11C1 B1E7 -> 1102 116C 11C2 B1E8 -> 1102 116D B1E9 -> 1102 116D 11A8 B1EA -> 1102 116D 11A9 B1EB -> 1102 116D 11AA B1EC -> 1102 116D 11AB B1ED -> 1102 116D 11AC B1EE -> 1102 116D 11AD B1EF -> 1102 116D 11AE B1F0 -> 1102 116D 11AF B1F1 -> 1102 116D 11B0 B1F2 -> 1102 116D 11B1 B1F3 -> 1102 116D 11B2 B1F4 -> 1102 116D 11B3 B1F5 -> 1102 116D 11B4 B1F6 -> 1102 116D 11B5 B1F7 -> 1102 116D 11B6 B1F8 -> 1102 116D 11B7 B1F9 -> 1102 116D 11B8 B1FA -> 1102 116D 11B9 B1FB -> 1102 116D 11BA B1FC -> 1102 116D 11BB B1FD -> 1102 116D 11BC B1FE -> 1102 116D 11BD B1FF -> 1102 116D 11BE B200 -> 1102 116D 11BF B201 -> 1102 116D 11C0 B202 -> 1102 116D 11C1 B203 -> 1102 116D 11C2 B204 -> 1102 116E B205 -> 1102 116E 11A8 B206 -> 1102 116E 11A9 B207 -> 1102 116E 11AA B208 -> 1102 116E 11AB B209 -> 1102 116E 11AC B20A -> 1102 116E 11AD B20B -> 1102 116E 11AE B20C -> 1102 116E 11AF B20D -> 1102 116E 11B0 B20E -> 1102 116E 11B1 B20F -> 1102 116E 11B2 B210 -> 1102 116E 11B3 B211 -> 1102 116E 11B4 B212 -> 1102 116E 11B5 B213 -> 1102 116E 11B6 B214 -> 1102 116E 11B7 B215 -> 1102 116E 11B8 B216 -> 1102 116E 11B9 B217 -> 1102 116E 11BA B218 -> 1102 116E 11BB B219 -> 1102 116E 11BC B21A -> 1102 116E 11BD B21B -> 1102 116E 11BE B21C -> 1102 116E 11BF B21D -> 1102 116E 11C0 B21E -> 1102 116E 11C1 B21F -> 1102 116E 11C2 B220 -> 1102 116F B221 -> 1102 116F 11A8 B222 -> 1102 116F 11A9 B223 -> 1102 116F 11AA B224 -> 1102 116F 11AB B225 -> 1102 116F 11AC B226 -> 1102 116F 11AD B227 -> 1102 116F 11AE B228 -> 1102 116F 11AF B229 -> 1102 116F 11B0 B22A -> 1102 116F 11B1 B22B -> 1102 116F 11B2 B22C -> 1102 116F 11B3 B22D -> 1102 116F 11B4 B22E -> 1102 116F 11B5 B22F -> 1102 116F 11B6 B230 -> 1102 116F 11B7 B231 -> 1102 116F 11B8 B232 -> 1102 116F 11B9 B233 -> 1102 116F 11BA B234 -> 1102 116F 11BB B235 -> 1102 116F 11BC B236 -> 1102 116F 11BD B237 -> 1102 116F 11BE B238 -> 1102 116F 11BF B239 -> 1102 116F 11C0 B23A -> 1102 116F 11C1 B23B -> 1102 116F 11C2 B23C -> 1102 1170 B23D -> 1102 1170 11A8 B23E -> 1102 1170 11A9 B23F -> 1102 1170 11AA B240 -> 1102 1170 11AB B241 -> 1102 1170 11AC B242 -> 1102 1170 11AD B243 -> 1102 1170 11AE B244 -> 1102 1170 11AF B245 -> 1102 1170 11B0 B246 -> 1102 1170 11B1 B247 -> 1102 1170 11B2 B248 -> 1102 1170 11B3 B249 -> 1102 1170 11B4 B24A -> 1102 1170 11B5 B24B -> 1102 1170 11B6 B24C -> 1102 1170 11B7 B24D -> 1102 1170 11B8 B24E -> 1102 1170 11B9 B24F -> 1102 1170 11BA B250 -> 1102 1170 11BB B251 -> 1102 1170 11BC B252 -> 1102 1170 11BD B253 -> 1102 1170 11BE B254 -> 1102 1170 11BF B255 -> 1102 1170 11C0 B256 -> 1102 1170 11C1 B257 -> 1102 1170 11C2 B258 -> 1102 1171 B259 -> 1102 1171 11A8 B25A -> 1102 1171 11A9 B25B -> 1102 1171 11AA B25C -> 1102 1171 11AB B25D -> 1102 1171 11AC B25E -> 1102 1171 11AD B25F -> 1102 1171 11AE B260 -> 1102 1171 11AF B261 -> 1102 1171 11B0 B262 -> 1102 1171 11B1 B263 -> 1102 1171 11B2 B264 -> 1102 1171 11B3 B265 -> 1102 1171 11B4 B266 -> 1102 1171 11B5 B267 -> 1102 1171 11B6 B268 -> 1102 1171 11B7 B269 -> 1102 1171 11B8 B26A -> 1102 1171 11B9 B26B -> 1102 1171 11BA B26C -> 1102 1171 11BB B26D -> 1102 1171 11BC B26E -> 1102 1171 11BD B26F -> 1102 1171 11BE B270 -> 1102 1171 11BF B271 -> 1102 1171 11C0 B272 -> 1102 1171 11C1 B273 -> 1102 1171 11C2 B274 -> 1102 1172 B275 -> 1102 1172 11A8 B276 -> 1102 1172 11A9 B277 -> 1102 1172 11AA B278 -> 1102 1172 11AB B279 -> 1102 1172 11AC B27A -> 1102 1172 11AD B27B -> 1102 1172 11AE B27C -> 1102 1172 11AF B27D -> 1102 1172 11B0 B27E -> 1102 1172 11B1 B27F -> 1102 1172 11B2 B280 -> 1102 1172 11B3 B281 -> 1102 1172 11B4 B282 -> 1102 1172 11B5 B283 -> 1102 1172 11B6 B284 -> 1102 1172 11B7 B285 -> 1102 1172 11B8 B286 -> 1102 1172 11B9 B287 -> 1102 1172 11BA B288 -> 1102 1172 11BB B289 -> 1102 1172 11BC B28A -> 1102 1172 11BD B28B -> 1102 1172 11BE B28C -> 1102 1172 11BF B28D -> 1102 1172 11C0 B28E -> 1102 1172 11C1 B28F -> 1102 1172 11C2 B290 -> 1102 1173 B291 -> 1102 1173 11A8 B292 -> 1102 1173 11A9 B293 -> 1102 1173 11AA B294 -> 1102 1173 11AB B295 -> 1102 1173 11AC B296 -> 1102 1173 11AD B297 -> 1102 1173 11AE B298 -> 1102 1173 11AF B299 -> 1102 1173 11B0 B29A -> 1102 1173 11B1 B29B -> 1102 1173 11B2 B29C -> 1102 1173 11B3 B29D -> 1102 1173 11B4 B29E -> 1102 1173 11B5 B29F -> 1102 1173 11B6 B2A0 -> 1102 1173 11B7 B2A1 -> 1102 1173 11B8 B2A2 -> 1102 1173 11B9 B2A3 -> 1102 1173 11BA B2A4 -> 1102 1173 11BB B2A5 -> 1102 1173 11BC B2A6 -> 1102 1173 11BD B2A7 -> 1102 1173 11BE B2A8 -> 1102 1173 11BF B2A9 -> 1102 1173 11C0 B2AA -> 1102 1173 11C1 B2AB -> 1102 1173 11C2 B2AC -> 1102 1174 B2AD -> 1102 1174 11A8 B2AE -> 1102 1174 11A9 B2AF -> 1102 1174 11AA B2B0 -> 1102 1174 11AB B2B1 -> 1102 1174 11AC B2B2 -> 1102 1174 11AD B2B3 -> 1102 1174 11AE B2B4 -> 1102 1174 11AF B2B5 -> 1102 1174 11B0 B2B6 -> 1102 1174 11B1 B2B7 -> 1102 1174 11B2 B2B8 -> 1102 1174 11B3 B2B9 -> 1102 1174 11B4 B2BA -> 1102 1174 11B5 B2BB -> 1102 1174 11B6 B2BC -> 1102 1174 11B7 B2BD -> 1102 1174 11B8 B2BE -> 1102 1174 11B9 B2BF -> 1102 1174 11BA B2C0 -> 1102 1174 11BB B2C1 -> 1102 1174 11BC B2C2 -> 1102 1174 11BD B2C3 -> 1102 1174 11BE B2C4 -> 1102 1174 11BF B2C5 -> 1102 1174 11C0 B2C6 -> 1102 1174 11C1 B2C7 -> 1102 1174 11C2 B2C8 -> 1102 1175 B2C9 -> 1102 1175 11A8 B2CA -> 1102 1175 11A9 B2CB -> 1102 1175 11AA B2CC -> 1102 1175 11AB B2CD -> 1102 1175 11AC B2CE -> 1102 1175 11AD B2CF -> 1102 1175 11AE B2D0 -> 1102 1175 11AF B2D1 -> 1102 1175 11B0 B2D2 -> 1102 1175 11B1 B2D3 -> 1102 1175 11B2 B2D4 -> 1102 1175 11B3 B2D5 -> 1102 1175 11B4 B2D6 -> 1102 1175 11B5 B2D7 -> 1102 1175 11B6 B2D8 -> 1102 1175 11B7 B2D9 -> 1102 1175 11B8 B2DA -> 1102 1175 11B9 B2DB -> 1102 1175 11BA B2DC -> 1102 1175 11BB B2DD -> 1102 1175 11BC B2DE -> 1102 1175 11BD B2DF -> 1102 1175 11BE B2E0 -> 1102 1175 11BF B2E1 -> 1102 1175 11C0 B2E2 -> 1102 1175 11C1 B2E3 -> 1102 1175 11C2 B2E4 -> 1103 1161 B2E5 -> 1103 1161 11A8 B2E6 -> 1103 1161 11A9 B2E7 -> 1103 1161 11AA B2E8 -> 1103 1161 11AB B2E9 -> 1103 1161 11AC B2EA -> 1103 1161 11AD B2EB -> 1103 1161 11AE B2EC -> 1103 1161 11AF B2ED -> 1103 1161 11B0 B2EE -> 1103 1161 11B1 B2EF -> 1103 1161 11B2 B2F0 -> 1103 1161 11B3 B2F1 -> 1103 1161 11B4 B2F2 -> 1103 1161 11B5 B2F3 -> 1103 1161 11B6 B2F4 -> 1103 1161 11B7 B2F5 -> 1103 1161 11B8 B2F6 -> 1103 1161 11B9 B2F7 -> 1103 1161 11BA B2F8 -> 1103 1161 11BB B2F9 -> 1103 1161 11BC B2FA -> 1103 1161 11BD B2FB -> 1103 1161 11BE B2FC -> 1103 1161 11BF B2FD -> 1103 1161 11C0 B2FE -> 1103 1161 11C1 B2FF -> 1103 1161 11C2 B300 -> 1103 1162 B301 -> 1103 1162 11A8 B302 -> 1103 1162 11A9 B303 -> 1103 1162 11AA B304 -> 1103 1162 11AB B305 -> 1103 1162 11AC B306 -> 1103 1162 11AD B307 -> 1103 1162 11AE B308 -> 1103 1162 11AF B309 -> 1103 1162 11B0 B30A -> 1103 1162 11B1 B30B -> 1103 1162 11B2 B30C -> 1103 1162 11B3 B30D -> 1103 1162 11B4 B30E -> 1103 1162 11B5 B30F -> 1103 1162 11B6 B310 -> 1103 1162 11B7 B311 -> 1103 1162 11B8 B312 -> 1103 1162 11B9 B313 -> 1103 1162 11BA B314 -> 1103 1162 11BB B315 -> 1103 1162 11BC B316 -> 1103 1162 11BD B317 -> 1103 1162 11BE B318 -> 1103 1162 11BF B319 -> 1103 1162 11C0 B31A -> 1103 1162 11C1 B31B -> 1103 1162 11C2 B31C -> 1103 1163 B31D -> 1103 1163 11A8 B31E -> 1103 1163 11A9 B31F -> 1103 1163 11AA B320 -> 1103 1163 11AB B321 -> 1103 1163 11AC B322 -> 1103 1163 11AD B323 -> 1103 1163 11AE B324 -> 1103 1163 11AF B325 -> 1103 1163 11B0 B326 -> 1103 1163 11B1 B327 -> 1103 1163 11B2 B328 -> 1103 1163 11B3 B329 -> 1103 1163 11B4 B32A -> 1103 1163 11B5 B32B -> 1103 1163 11B6 B32C -> 1103 1163 11B7 B32D -> 1103 1163 11B8 B32E -> 1103 1163 11B9 B32F -> 1103 1163 11BA B330 -> 1103 1163 11BB B331 -> 1103 1163 11BC B332 -> 1103 1163 11BD B333 -> 1103 1163 11BE B334 -> 1103 1163 11BF B335 -> 1103 1163 11C0 B336 -> 1103 1163 11C1 B337 -> 1103 1163 11C2 B338 -> 1103 1164 B339 -> 1103 1164 11A8 B33A -> 1103 1164 11A9 B33B -> 1103 1164 11AA B33C -> 1103 1164 11AB B33D -> 1103 1164 11AC B33E -> 1103 1164 11AD B33F -> 1103 1164 11AE B340 -> 1103 1164 11AF B341 -> 1103 1164 11B0 B342 -> 1103 1164 11B1 B343 -> 1103 1164 11B2 B344 -> 1103 1164 11B3 B345 -> 1103 1164 11B4 B346 -> 1103 1164 11B5 B347 -> 1103 1164 11B6 B348 -> 1103 1164 11B7 B349 -> 1103 1164 11B8 B34A -> 1103 1164 11B9 B34B -> 1103 1164 11BA B34C -> 1103 1164 11BB B34D -> 1103 1164 11BC B34E -> 1103 1164 11BD B34F -> 1103 1164 11BE B350 -> 1103 1164 11BF B351 -> 1103 1164 11C0 B352 -> 1103 1164 11C1 B353 -> 1103 1164 11C2 B354 -> 1103 1165 B355 -> 1103 1165 11A8 B356 -> 1103 1165 11A9 B357 -> 1103 1165 11AA B358 -> 1103 1165 11AB B359 -> 1103 1165 11AC B35A -> 1103 1165 11AD B35B -> 1103 1165 11AE B35C -> 1103 1165 11AF B35D -> 1103 1165 11B0 B35E -> 1103 1165 11B1 B35F -> 1103 1165 11B2 B360 -> 1103 1165 11B3 B361 -> 1103 1165 11B4 B362 -> 1103 1165 11B5 B363 -> 1103 1165 11B6 B364 -> 1103 1165 11B7 B365 -> 1103 1165 11B8 B366 -> 1103 1165 11B9 B367 -> 1103 1165 11BA B368 -> 1103 1165 11BB B369 -> 1103 1165 11BC B36A -> 1103 1165 11BD B36B -> 1103 1165 11BE B36C -> 1103 1165 11BF B36D -> 1103 1165 11C0 B36E -> 1103 1165 11C1 B36F -> 1103 1165 11C2 B370 -> 1103 1166 B371 -> 1103 1166 11A8 B372 -> 1103 1166 11A9 B373 -> 1103 1166 11AA B374 -> 1103 1166 11AB B375 -> 1103 1166 11AC B376 -> 1103 1166 11AD B377 -> 1103 1166 11AE B378 -> 1103 1166 11AF B379 -> 1103 1166 11B0 B37A -> 1103 1166 11B1 B37B -> 1103 1166 11B2 B37C -> 1103 1166 11B3 B37D -> 1103 1166 11B4 B37E -> 1103 1166 11B5 B37F -> 1103 1166 11B6 B380 -> 1103 1166 11B7 B381 -> 1103 1166 11B8 B382 -> 1103 1166 11B9 B383 -> 1103 1166 11BA B384 -> 1103 1166 11BB B385 -> 1103 1166 11BC B386 -> 1103 1166 11BD B387 -> 1103 1166 11BE B388 -> 1103 1166 11BF B389 -> 1103 1166 11C0 B38A -> 1103 1166 11C1 B38B -> 1103 1166 11C2 B38C -> 1103 1167 B38D -> 1103 1167 11A8 B38E -> 1103 1167 11A9 B38F -> 1103 1167 11AA B390 -> 1103 1167 11AB B391 -> 1103 1167 11AC B392 -> 1103 1167 11AD B393 -> 1103 1167 11AE B394 -> 1103 1167 11AF B395 -> 1103 1167 11B0 B396 -> 1103 1167 11B1 B397 -> 1103 1167 11B2 B398 -> 1103 1167 11B3 B399 -> 1103 1167 11B4 B39A -> 1103 1167 11B5 B39B -> 1103 1167 11B6 B39C -> 1103 1167 11B7 B39D -> 1103 1167 11B8 B39E -> 1103 1167 11B9 B39F -> 1103 1167 11BA B3A0 -> 1103 1167 11BB B3A1 -> 1103 1167 11BC B3A2 -> 1103 1167 11BD B3A3 -> 1103 1167 11BE B3A4 -> 1103 1167 11BF B3A5 -> 1103 1167 11C0 B3A6 -> 1103 1167 11C1 B3A7 -> 1103 1167 11C2 B3A8 -> 1103 1168 B3A9 -> 1103 1168 11A8 B3AA -> 1103 1168 11A9 B3AB -> 1103 1168 11AA B3AC -> 1103 1168 11AB B3AD -> 1103 1168 11AC B3AE -> 1103 1168 11AD B3AF -> 1103 1168 11AE B3B0 -> 1103 1168 11AF B3B1 -> 1103 1168 11B0 B3B2 -> 1103 1168 11B1 B3B3 -> 1103 1168 11B2 B3B4 -> 1103 1168 11B3 B3B5 -> 1103 1168 11B4 B3B6 -> 1103 1168 11B5 B3B7 -> 1103 1168 11B6 B3B8 -> 1103 1168 11B7 B3B9 -> 1103 1168 11B8 B3BA -> 1103 1168 11B9 B3BB -> 1103 1168 11BA B3BC -> 1103 1168 11BB B3BD -> 1103 1168 11BC B3BE -> 1103 1168 11BD B3BF -> 1103 1168 11BE B3C0 -> 1103 1168 11BF B3C1 -> 1103 1168 11C0 B3C2 -> 1103 1168 11C1 B3C3 -> 1103 1168 11C2 B3C4 -> 1103 1169 B3C5 -> 1103 1169 11A8 B3C6 -> 1103 1169 11A9 B3C7 -> 1103 1169 11AA B3C8 -> 1103 1169 11AB B3C9 -> 1103 1169 11AC B3CA -> 1103 1169 11AD B3CB -> 1103 1169 11AE B3CC -> 1103 1169 11AF B3CD -> 1103 1169 11B0 B3CE -> 1103 1169 11B1 B3CF -> 1103 1169 11B2 B3D0 -> 1103 1169 11B3 B3D1 -> 1103 1169 11B4 B3D2 -> 1103 1169 11B5 B3D3 -> 1103 1169 11B6 B3D4 -> 1103 1169 11B7 B3D5 -> 1103 1169 11B8 B3D6 -> 1103 1169 11B9 B3D7 -> 1103 1169 11BA B3D8 -> 1103 1169 11BB B3D9 -> 1103 1169 11BC B3DA -> 1103 1169 11BD B3DB -> 1103 1169 11BE B3DC -> 1103 1169 11BF B3DD -> 1103 1169 11C0 B3DE -> 1103 1169 11C1 B3DF -> 1103 1169 11C2 B3E0 -> 1103 116A B3E1 -> 1103 116A 11A8 B3E2 -> 1103 116A 11A9 B3E3 -> 1103 116A 11AA B3E4 -> 1103 116A 11AB B3E5 -> 1103 116A 11AC B3E6 -> 1103 116A 11AD B3E7 -> 1103 116A 11AE B3E8 -> 1103 116A 11AF B3E9 -> 1103 116A 11B0 B3EA -> 1103 116A 11B1 B3EB -> 1103 116A 11B2 B3EC -> 1103 116A 11B3 B3ED -> 1103 116A 11B4 B3EE -> 1103 116A 11B5 B3EF -> 1103 116A 11B6 B3F0 -> 1103 116A 11B7 B3F1 -> 1103 116A 11B8 B3F2 -> 1103 116A 11B9 B3F3 -> 1103 116A 11BA B3F4 -> 1103 116A 11BB B3F5 -> 1103 116A 11BC B3F6 -> 1103 116A 11BD B3F7 -> 1103 116A 11BE B3F8 -> 1103 116A 11BF B3F9 -> 1103 116A 11C0 B3FA -> 1103 116A 11C1 B3FB -> 1103 116A 11C2 B3FC -> 1103 116B B3FD -> 1103 116B 11A8 B3FE -> 1103 116B 11A9 B3FF -> 1103 116B 11AA B400 -> 1103 116B 11AB B401 -> 1103 116B 11AC B402 -> 1103 116B 11AD B403 -> 1103 116B 11AE B404 -> 1103 116B 11AF B405 -> 1103 116B 11B0 B406 -> 1103 116B 11B1 B407 -> 1103 116B 11B2 B408 -> 1103 116B 11B3 B409 -> 1103 116B 11B4 B40A -> 1103 116B 11B5 B40B -> 1103 116B 11B6 B40C -> 1103 116B 11B7 B40D -> 1103 116B 11B8 B40E -> 1103 116B 11B9 B40F -> 1103 116B 11BA B410 -> 1103 116B 11BB B411 -> 1103 116B 11BC B412 -> 1103 116B 11BD B413 -> 1103 116B 11BE B414 -> 1103 116B 11BF B415 -> 1103 116B 11C0 B416 -> 1103 116B 11C1 B417 -> 1103 116B 11C2 B418 -> 1103 116C B419 -> 1103 116C 11A8 B41A -> 1103 116C 11A9 B41B -> 1103 116C 11AA B41C -> 1103 116C 11AB B41D -> 1103 116C 11AC B41E -> 1103 116C 11AD B41F -> 1103 116C 11AE B420 -> 1103 116C 11AF B421 -> 1103 116C 11B0 B422 -> 1103 116C 11B1 B423 -> 1103 116C 11B2 B424 -> 1103 116C 11B3 B425 -> 1103 116C 11B4 B426 -> 1103 116C 11B5 B427 -> 1103 116C 11B6 B428 -> 1103 116C 11B7 B429 -> 1103 116C 11B8 B42A -> 1103 116C 11B9 B42B -> 1103 116C 11BA B42C -> 1103 116C 11BB B42D -> 1103 116C 11BC B42E -> 1103 116C 11BD B42F -> 1103 116C 11BE B430 -> 1103 116C 11BF B431 -> 1103 116C 11C0 B432 -> 1103 116C 11C1 B433 -> 1103 116C 11C2 B434 -> 1103 116D B435 -> 1103 116D 11A8 B436 -> 1103 116D 11A9 B437 -> 1103 116D 11AA B438 -> 1103 116D 11AB B439 -> 1103 116D 11AC B43A -> 1103 116D 11AD B43B -> 1103 116D 11AE B43C -> 1103 116D 11AF B43D -> 1103 116D 11B0 B43E -> 1103 116D 11B1 B43F -> 1103 116D 11B2 B440 -> 1103 116D 11B3 B441 -> 1103 116D 11B4 B442 -> 1103 116D 11B5 B443 -> 1103 116D 11B6 B444 -> 1103 116D 11B7 B445 -> 1103 116D 11B8 B446 -> 1103 116D 11B9 B447 -> 1103 116D 11BA B448 -> 1103 116D 11BB B449 -> 1103 116D 11BC B44A -> 1103 116D 11BD B44B -> 1103 116D 11BE B44C -> 1103 116D 11BF B44D -> 1103 116D 11C0 B44E -> 1103 116D 11C1 B44F -> 1103 116D 11C2 B450 -> 1103 116E B451 -> 1103 116E 11A8 B452 -> 1103 116E 11A9 B453 -> 1103 116E 11AA B454 -> 1103 116E 11AB B455 -> 1103 116E 11AC B456 -> 1103 116E 11AD B457 -> 1103 116E 11AE B458 -> 1103 116E 11AF B459 -> 1103 116E 11B0 B45A -> 1103 116E 11B1 B45B -> 1103 116E 11B2 B45C -> 1103 116E 11B3 B45D -> 1103 116E 11B4 B45E -> 1103 116E 11B5 B45F -> 1103 116E 11B6 B460 -> 1103 116E 11B7 B461 -> 1103 116E 11B8 B462 -> 1103 116E 11B9 B463 -> 1103 116E 11BA B464 -> 1103 116E 11BB B465 -> 1103 116E 11BC B466 -> 1103 116E 11BD B467 -> 1103 116E 11BE B468 -> 1103 116E 11BF B469 -> 1103 116E 11C0 B46A -> 1103 116E 11C1 B46B -> 1103 116E 11C2 B46C -> 1103 116F B46D -> 1103 116F 11A8 B46E -> 1103 116F 11A9 B46F -> 1103 116F 11AA B470 -> 1103 116F 11AB B471 -> 1103 116F 11AC B472 -> 1103 116F 11AD B473 -> 1103 116F 11AE B474 -> 1103 116F 11AF B475 -> 1103 116F 11B0 B476 -> 1103 116F 11B1 B477 -> 1103 116F 11B2 B478 -> 1103 116F 11B3 B479 -> 1103 116F 11B4 B47A -> 1103 116F 11B5 B47B -> 1103 116F 11B6 B47C -> 1103 116F 11B7 B47D -> 1103 116F 11B8 B47E -> 1103 116F 11B9 B47F -> 1103 116F 11BA B480 -> 1103 116F 11BB B481 -> 1103 116F 11BC B482 -> 1103 116F 11BD B483 -> 1103 116F 11BE B484 -> 1103 116F 11BF B485 -> 1103 116F 11C0 B486 -> 1103 116F 11C1 B487 -> 1103 116F 11C2 B488 -> 1103 1170 B489 -> 1103 1170 11A8 B48A -> 1103 1170 11A9 B48B -> 1103 1170 11AA B48C -> 1103 1170 11AB B48D -> 1103 1170 11AC B48E -> 1103 1170 11AD B48F -> 1103 1170 11AE B490 -> 1103 1170 11AF B491 -> 1103 1170 11B0 B492 -> 1103 1170 11B1 B493 -> 1103 1170 11B2 B494 -> 1103 1170 11B3 B495 -> 1103 1170 11B4 B496 -> 1103 1170 11B5 B497 -> 1103 1170 11B6 B498 -> 1103 1170 11B7 B499 -> 1103 1170 11B8 B49A -> 1103 1170 11B9 B49B -> 1103 1170 11BA B49C -> 1103 1170 11BB B49D -> 1103 1170 11BC B49E -> 1103 1170 11BD B49F -> 1103 1170 11BE B4A0 -> 1103 1170 11BF B4A1 -> 1103 1170 11C0 B4A2 -> 1103 1170 11C1 B4A3 -> 1103 1170 11C2 B4A4 -> 1103 1171 B4A5 -> 1103 1171 11A8 B4A6 -> 1103 1171 11A9 B4A7 -> 1103 1171 11AA B4A8 -> 1103 1171 11AB B4A9 -> 1103 1171 11AC B4AA -> 1103 1171 11AD B4AB -> 1103 1171 11AE B4AC -> 1103 1171 11AF B4AD -> 1103 1171 11B0 B4AE -> 1103 1171 11B1 B4AF -> 1103 1171 11B2 B4B0 -> 1103 1171 11B3 B4B1 -> 1103 1171 11B4 B4B2 -> 1103 1171 11B5 B4B3 -> 1103 1171 11B6 B4B4 -> 1103 1171 11B7 B4B5 -> 1103 1171 11B8 B4B6 -> 1103 1171 11B9 B4B7 -> 1103 1171 11BA B4B8 -> 1103 1171 11BB B4B9 -> 1103 1171 11BC B4BA -> 1103 1171 11BD B4BB -> 1103 1171 11BE B4BC -> 1103 1171 11BF B4BD -> 1103 1171 11C0 B4BE -> 1103 1171 11C1 B4BF -> 1103 1171 11C2 B4C0 -> 1103 1172 B4C1 -> 1103 1172 11A8 B4C2 -> 1103 1172 11A9 B4C3 -> 1103 1172 11AA B4C4 -> 1103 1172 11AB B4C5 -> 1103 1172 11AC B4C6 -> 1103 1172 11AD B4C7 -> 1103 1172 11AE B4C8 -> 1103 1172 11AF B4C9 -> 1103 1172 11B0 B4CA -> 1103 1172 11B1 B4CB -> 1103 1172 11B2 B4CC -> 1103 1172 11B3 B4CD -> 1103 1172 11B4 B4CE -> 1103 1172 11B5 B4CF -> 1103 1172 11B6 B4D0 -> 1103 1172 11B7 B4D1 -> 1103 1172 11B8 B4D2 -> 1103 1172 11B9 B4D3 -> 1103 1172 11BA B4D4 -> 1103 1172 11BB B4D5 -> 1103 1172 11BC B4D6 -> 1103 1172 11BD B4D7 -> 1103 1172 11BE B4D8 -> 1103 1172 11BF B4D9 -> 1103 1172 11C0 B4DA -> 1103 1172 11C1 B4DB -> 1103 1172 11C2 B4DC -> 1103 1173 B4DD -> 1103 1173 11A8 B4DE -> 1103 1173 11A9 B4DF -> 1103 1173 11AA B4E0 -> 1103 1173 11AB B4E1 -> 1103 1173 11AC B4E2 -> 1103 1173 11AD B4E3 -> 1103 1173 11AE B4E4 -> 1103 1173 11AF B4E5 -> 1103 1173 11B0 B4E6 -> 1103 1173 11B1 B4E7 -> 1103 1173 11B2 B4E8 -> 1103 1173 11B3 B4E9 -> 1103 1173 11B4 B4EA -> 1103 1173 11B5 B4EB -> 1103 1173 11B6 B4EC -> 1103 1173 11B7 B4ED -> 1103 1173 11B8 B4EE -> 1103 1173 11B9 B4EF -> 1103 1173 11BA B4F0 -> 1103 1173 11BB B4F1 -> 1103 1173 11BC B4F2 -> 1103 1173 11BD B4F3 -> 1103 1173 11BE B4F4 -> 1103 1173 11BF B4F5 -> 1103 1173 11C0 B4F6 -> 1103 1173 11C1 B4F7 -> 1103 1173 11C2 B4F8 -> 1103 1174 B4F9 -> 1103 1174 11A8 B4FA -> 1103 1174 11A9 B4FB -> 1103 1174 11AA B4FC -> 1103 1174 11AB B4FD -> 1103 1174 11AC B4FE -> 1103 1174 11AD B4FF -> 1103 1174 11AE B500 -> 1103 1174 11AF B501 -> 1103 1174 11B0 B502 -> 1103 1174 11B1 B503 -> 1103 1174 11B2 B504 -> 1103 1174 11B3 B505 -> 1103 1174 11B4 B506 -> 1103 1174 11B5 B507 -> 1103 1174 11B6 B508 -> 1103 1174 11B7 B509 -> 1103 1174 11B8 B50A -> 1103 1174 11B9 B50B -> 1103 1174 11BA B50C -> 1103 1174 11BB B50D -> 1103 1174 11BC B50E -> 1103 1174 11BD B50F -> 1103 1174 11BE B510 -> 1103 1174 11BF B511 -> 1103 1174 11C0 B512 -> 1103 1174 11C1 B513 -> 1103 1174 11C2 B514 -> 1103 1175 B515 -> 1103 1175 11A8 B516 -> 1103 1175 11A9 B517 -> 1103 1175 11AA B518 -> 1103 1175 11AB B519 -> 1103 1175 11AC B51A -> 1103 1175 11AD B51B -> 1103 1175 11AE B51C -> 1103 1175 11AF B51D -> 1103 1175 11B0 B51E -> 1103 1175 11B1 B51F -> 1103 1175 11B2 B520 -> 1103 1175 11B3 B521 -> 1103 1175 11B4 B522 -> 1103 1175 11B5 B523 -> 1103 1175 11B6 B524 -> 1103 1175 11B7 B525 -> 1103 1175 11B8 B526 -> 1103 1175 11B9 B527 -> 1103 1175 11BA B528 -> 1103 1175 11BB B529 -> 1103 1175 11BC B52A -> 1103 1175 11BD B52B -> 1103 1175 11BE B52C -> 1103 1175 11BF B52D -> 1103 1175 11C0 B52E -> 1103 1175 11C1 B52F -> 1103 1175 11C2 B530 -> 1104 1161 B531 -> 1104 1161 11A8 B532 -> 1104 1161 11A9 B533 -> 1104 1161 11AA B534 -> 1104 1161 11AB B535 -> 1104 1161 11AC B536 -> 1104 1161 11AD B537 -> 1104 1161 11AE B538 -> 1104 1161 11AF B539 -> 1104 1161 11B0 B53A -> 1104 1161 11B1 B53B -> 1104 1161 11B2 B53C -> 1104 1161 11B3 B53D -> 1104 1161 11B4 B53E -> 1104 1161 11B5 B53F -> 1104 1161 11B6 B540 -> 1104 1161 11B7 B541 -> 1104 1161 11B8 B542 -> 1104 1161 11B9 B543 -> 1104 1161 11BA B544 -> 1104 1161 11BB B545 -> 1104 1161 11BC B546 -> 1104 1161 11BD B547 -> 1104 1161 11BE B548 -> 1104 1161 11BF B549 -> 1104 1161 11C0 B54A -> 1104 1161 11C1 B54B -> 1104 1161 11C2 B54C -> 1104 1162 B54D -> 1104 1162 11A8 B54E -> 1104 1162 11A9 B54F -> 1104 1162 11AA B550 -> 1104 1162 11AB B551 -> 1104 1162 11AC B552 -> 1104 1162 11AD B553 -> 1104 1162 11AE B554 -> 1104 1162 11AF B555 -> 1104 1162 11B0 B556 -> 1104 1162 11B1 B557 -> 1104 1162 11B2 B558 -> 1104 1162 11B3 B559 -> 1104 1162 11B4 B55A -> 1104 1162 11B5 B55B -> 1104 1162 11B6 B55C -> 1104 1162 11B7 B55D -> 1104 1162 11B8 B55E -> 1104 1162 11B9 B55F -> 1104 1162 11BA B560 -> 1104 1162 11BB B561 -> 1104 1162 11BC B562 -> 1104 1162 11BD B563 -> 1104 1162 11BE B564 -> 1104 1162 11BF B565 -> 1104 1162 11C0 B566 -> 1104 1162 11C1 B567 -> 1104 1162 11C2 B568 -> 1104 1163 B569 -> 1104 1163 11A8 B56A -> 1104 1163 11A9 B56B -> 1104 1163 11AA B56C -> 1104 1163 11AB B56D -> 1104 1163 11AC B56E -> 1104 1163 11AD B56F -> 1104 1163 11AE B570 -> 1104 1163 11AF B571 -> 1104 1163 11B0 B572 -> 1104 1163 11B1 B573 -> 1104 1163 11B2 B574 -> 1104 1163 11B3 B575 -> 1104 1163 11B4 B576 -> 1104 1163 11B5 B577 -> 1104 1163 11B6 B578 -> 1104 1163 11B7 B579 -> 1104 1163 11B8 B57A -> 1104 1163 11B9 B57B -> 1104 1163 11BA B57C -> 1104 1163 11BB B57D -> 1104 1163 11BC B57E -> 1104 1163 11BD B57F -> 1104 1163 11BE B580 -> 1104 1163 11BF B581 -> 1104 1163 11C0 B582 -> 1104 1163 11C1 B583 -> 1104 1163 11C2 B584 -> 1104 1164 B585 -> 1104 1164 11A8 B586 -> 1104 1164 11A9 B587 -> 1104 1164 11AA B588 -> 1104 1164 11AB B589 -> 1104 1164 11AC B58A -> 1104 1164 11AD B58B -> 1104 1164 11AE B58C -> 1104 1164 11AF B58D -> 1104 1164 11B0 B58E -> 1104 1164 11B1 B58F -> 1104 1164 11B2 B590 -> 1104 1164 11B3 B591 -> 1104 1164 11B4 B592 -> 1104 1164 11B5 B593 -> 1104 1164 11B6 B594 -> 1104 1164 11B7 B595 -> 1104 1164 11B8 B596 -> 1104 1164 11B9 B597 -> 1104 1164 11BA B598 -> 1104 1164 11BB B599 -> 1104 1164 11BC B59A -> 1104 1164 11BD B59B -> 1104 1164 11BE B59C -> 1104 1164 11BF B59D -> 1104 1164 11C0 B59E -> 1104 1164 11C1 B59F -> 1104 1164 11C2 B5A0 -> 1104 1165 B5A1 -> 1104 1165 11A8 B5A2 -> 1104 1165 11A9 B5A3 -> 1104 1165 11AA B5A4 -> 1104 1165 11AB B5A5 -> 1104 1165 11AC B5A6 -> 1104 1165 11AD B5A7 -> 1104 1165 11AE B5A8 -> 1104 1165 11AF B5A9 -> 1104 1165 11B0 B5AA -> 1104 1165 11B1 B5AB -> 1104 1165 11B2 B5AC -> 1104 1165 11B3 B5AD -> 1104 1165 11B4 B5AE -> 1104 1165 11B5 B5AF -> 1104 1165 11B6 B5B0 -> 1104 1165 11B7 B5B1 -> 1104 1165 11B8 B5B2 -> 1104 1165 11B9 B5B3 -> 1104 1165 11BA B5B4 -> 1104 1165 11BB B5B5 -> 1104 1165 11BC B5B6 -> 1104 1165 11BD B5B7 -> 1104 1165 11BE B5B8 -> 1104 1165 11BF B5B9 -> 1104 1165 11C0 B5BA -> 1104 1165 11C1 B5BB -> 1104 1165 11C2 B5BC -> 1104 1166 B5BD -> 1104 1166 11A8 B5BE -> 1104 1166 11A9 B5BF -> 1104 1166 11AA B5C0 -> 1104 1166 11AB B5C1 -> 1104 1166 11AC B5C2 -> 1104 1166 11AD B5C3 -> 1104 1166 11AE B5C4 -> 1104 1166 11AF B5C5 -> 1104 1166 11B0 B5C6 -> 1104 1166 11B1 B5C7 -> 1104 1166 11B2 B5C8 -> 1104 1166 11B3 B5C9 -> 1104 1166 11B4 B5CA -> 1104 1166 11B5 B5CB -> 1104 1166 11B6 B5CC -> 1104 1166 11B7 B5CD -> 1104 1166 11B8 B5CE -> 1104 1166 11B9 B5CF -> 1104 1166 11BA B5D0 -> 1104 1166 11BB B5D1 -> 1104 1166 11BC B5D2 -> 1104 1166 11BD B5D3 -> 1104 1166 11BE B5D4 -> 1104 1166 11BF B5D5 -> 1104 1166 11C0 B5D6 -> 1104 1166 11C1 B5D7 -> 1104 1166 11C2 B5D8 -> 1104 1167 B5D9 -> 1104 1167 11A8 B5DA -> 1104 1167 11A9 B5DB -> 1104 1167 11AA B5DC -> 1104 1167 11AB B5DD -> 1104 1167 11AC B5DE -> 1104 1167 11AD B5DF -> 1104 1167 11AE B5E0 -> 1104 1167 11AF B5E1 -> 1104 1167 11B0 B5E2 -> 1104 1167 11B1 B5E3 -> 1104 1167 11B2 B5E4 -> 1104 1167 11B3 B5E5 -> 1104 1167 11B4 B5E6 -> 1104 1167 11B5 B5E7 -> 1104 1167 11B6 B5E8 -> 1104 1167 11B7 B5E9 -> 1104 1167 11B8 B5EA -> 1104 1167 11B9 B5EB -> 1104 1167 11BA B5EC -> 1104 1167 11BB B5ED -> 1104 1167 11BC B5EE -> 1104 1167 11BD B5EF -> 1104 1167 11BE B5F0 -> 1104 1167 11BF B5F1 -> 1104 1167 11C0 B5F2 -> 1104 1167 11C1 B5F3 -> 1104 1167 11C2 B5F4 -> 1104 1168 B5F5 -> 1104 1168 11A8 B5F6 -> 1104 1168 11A9 B5F7 -> 1104 1168 11AA B5F8 -> 1104 1168 11AB B5F9 -> 1104 1168 11AC B5FA -> 1104 1168 11AD B5FB -> 1104 1168 11AE B5FC -> 1104 1168 11AF B5FD -> 1104 1168 11B0 B5FE -> 1104 1168 11B1 B5FF -> 1104 1168 11B2 B600 -> 1104 1168 11B3 B601 -> 1104 1168 11B4 B602 -> 1104 1168 11B5 B603 -> 1104 1168 11B6 B604 -> 1104 1168 11B7 B605 -> 1104 1168 11B8 B606 -> 1104 1168 11B9 B607 -> 1104 1168 11BA B608 -> 1104 1168 11BB B609 -> 1104 1168 11BC B60A -> 1104 1168 11BD B60B -> 1104 1168 11BE B60C -> 1104 1168 11BF B60D -> 1104 1168 11C0 B60E -> 1104 1168 11C1 B60F -> 1104 1168 11C2 B610 -> 1104 1169 B611 -> 1104 1169 11A8 B612 -> 1104 1169 11A9 B613 -> 1104 1169 11AA B614 -> 1104 1169 11AB B615 -> 1104 1169 11AC B616 -> 1104 1169 11AD B617 -> 1104 1169 11AE B618 -> 1104 1169 11AF B619 -> 1104 1169 11B0 B61A -> 1104 1169 11B1 B61B -> 1104 1169 11B2 B61C -> 1104 1169 11B3 B61D -> 1104 1169 11B4 B61E -> 1104 1169 11B5 B61F -> 1104 1169 11B6 B620 -> 1104 1169 11B7 B621 -> 1104 1169 11B8 B622 -> 1104 1169 11B9 B623 -> 1104 1169 11BA B624 -> 1104 1169 11BB B625 -> 1104 1169 11BC B626 -> 1104 1169 11BD B627 -> 1104 1169 11BE B628 -> 1104 1169 11BF B629 -> 1104 1169 11C0 B62A -> 1104 1169 11C1 B62B -> 1104 1169 11C2 B62C -> 1104 116A B62D -> 1104 116A 11A8 B62E -> 1104 116A 11A9 B62F -> 1104 116A 11AA B630 -> 1104 116A 11AB B631 -> 1104 116A 11AC B632 -> 1104 116A 11AD B633 -> 1104 116A 11AE B634 -> 1104 116A 11AF B635 -> 1104 116A 11B0 B636 -> 1104 116A 11B1 B637 -> 1104 116A 11B2 B638 -> 1104 116A 11B3 B639 -> 1104 116A 11B4 B63A -> 1104 116A 11B5 B63B -> 1104 116A 11B6 B63C -> 1104 116A 11B7 B63D -> 1104 116A 11B8 B63E -> 1104 116A 11B9 B63F -> 1104 116A 11BA B640 -> 1104 116A 11BB B641 -> 1104 116A 11BC B642 -> 1104 116A 11BD B643 -> 1104 116A 11BE B644 -> 1104 116A 11BF B645 -> 1104 116A 11C0 B646 -> 1104 116A 11C1 B647 -> 1104 116A 11C2 B648 -> 1104 116B B649 -> 1104 116B 11A8 B64A -> 1104 116B 11A9 B64B -> 1104 116B 11AA B64C -> 1104 116B 11AB B64D -> 1104 116B 11AC B64E -> 1104 116B 11AD B64F -> 1104 116B 11AE B650 -> 1104 116B 11AF B651 -> 1104 116B 11B0 B652 -> 1104 116B 11B1 B653 -> 1104 116B 11B2 B654 -> 1104 116B 11B3 B655 -> 1104 116B 11B4 B656 -> 1104 116B 11B5 B657 -> 1104 116B 11B6 B658 -> 1104 116B 11B7 B659 -> 1104 116B 11B8 B65A -> 1104 116B 11B9 B65B -> 1104 116B 11BA B65C -> 1104 116B 11BB B65D -> 1104 116B 11BC B65E -> 1104 116B 11BD B65F -> 1104 116B 11BE B660 -> 1104 116B 11BF B661 -> 1104 116B 11C0 B662 -> 1104 116B 11C1 B663 -> 1104 116B 11C2 B664 -> 1104 116C B665 -> 1104 116C 11A8 B666 -> 1104 116C 11A9 B667 -> 1104 116C 11AA B668 -> 1104 116C 11AB B669 -> 1104 116C 11AC B66A -> 1104 116C 11AD B66B -> 1104 116C 11AE B66C -> 1104 116C 11AF B66D -> 1104 116C 11B0 B66E -> 1104 116C 11B1 B66F -> 1104 116C 11B2 B670 -> 1104 116C 11B3 B671 -> 1104 116C 11B4 B672 -> 1104 116C 11B5 B673 -> 1104 116C 11B6 B674 -> 1104 116C 11B7 B675 -> 1104 116C 11B8 B676 -> 1104 116C 11B9 B677 -> 1104 116C 11BA B678 -> 1104 116C 11BB B679 -> 1104 116C 11BC B67A -> 1104 116C 11BD B67B -> 1104 116C 11BE B67C -> 1104 116C 11BF B67D -> 1104 116C 11C0 B67E -> 1104 116C 11C1 B67F -> 1104 116C 11C2 B680 -> 1104 116D B681 -> 1104 116D 11A8 B682 -> 1104 116D 11A9 B683 -> 1104 116D 11AA B684 -> 1104 116D 11AB B685 -> 1104 116D 11AC B686 -> 1104 116D 11AD B687 -> 1104 116D 11AE B688 -> 1104 116D 11AF B689 -> 1104 116D 11B0 B68A -> 1104 116D 11B1 B68B -> 1104 116D 11B2 B68C -> 1104 116D 11B3 B68D -> 1104 116D 11B4 B68E -> 1104 116D 11B5 B68F -> 1104 116D 11B6 B690 -> 1104 116D 11B7 B691 -> 1104 116D 11B8 B692 -> 1104 116D 11B9 B693 -> 1104 116D 11BA B694 -> 1104 116D 11BB B695 -> 1104 116D 11BC B696 -> 1104 116D 11BD B697 -> 1104 116D 11BE B698 -> 1104 116D 11BF B699 -> 1104 116D 11C0 B69A -> 1104 116D 11C1 B69B -> 1104 116D 11C2 B69C -> 1104 116E B69D -> 1104 116E 11A8 B69E -> 1104 116E 11A9 B69F -> 1104 116E 11AA B6A0 -> 1104 116E 11AB B6A1 -> 1104 116E 11AC B6A2 -> 1104 116E 11AD B6A3 -> 1104 116E 11AE B6A4 -> 1104 116E 11AF B6A5 -> 1104 116E 11B0 B6A6 -> 1104 116E 11B1 B6A7 -> 1104 116E 11B2 B6A8 -> 1104 116E 11B3 B6A9 -> 1104 116E 11B4 B6AA -> 1104 116E 11B5 B6AB -> 1104 116E 11B6 B6AC -> 1104 116E 11B7 B6AD -> 1104 116E 11B8 B6AE -> 1104 116E 11B9 B6AF -> 1104 116E 11BA B6B0 -> 1104 116E 11BB B6B1 -> 1104 116E 11BC B6B2 -> 1104 116E 11BD B6B3 -> 1104 116E 11BE B6B4 -> 1104 116E 11BF B6B5 -> 1104 116E 11C0 B6B6 -> 1104 116E 11C1 B6B7 -> 1104 116E 11C2 B6B8 -> 1104 116F B6B9 -> 1104 116F 11A8 B6BA -> 1104 116F 11A9 B6BB -> 1104 116F 11AA B6BC -> 1104 116F 11AB B6BD -> 1104 116F 11AC B6BE -> 1104 116F 11AD B6BF -> 1104 116F 11AE B6C0 -> 1104 116F 11AF B6C1 -> 1104 116F 11B0 B6C2 -> 1104 116F 11B1 B6C3 -> 1104 116F 11B2 B6C4 -> 1104 116F 11B3 B6C5 -> 1104 116F 11B4 B6C6 -> 1104 116F 11B5 B6C7 -> 1104 116F 11B6 B6C8 -> 1104 116F 11B7 B6C9 -> 1104 116F 11B8 B6CA -> 1104 116F 11B9 B6CB -> 1104 116F 11BA B6CC -> 1104 116F 11BB B6CD -> 1104 116F 11BC B6CE -> 1104 116F 11BD B6CF -> 1104 116F 11BE B6D0 -> 1104 116F 11BF B6D1 -> 1104 116F 11C0 B6D2 -> 1104 116F 11C1 B6D3 -> 1104 116F 11C2 B6D4 -> 1104 1170 B6D5 -> 1104 1170 11A8 B6D6 -> 1104 1170 11A9 B6D7 -> 1104 1170 11AA B6D8 -> 1104 1170 11AB B6D9 -> 1104 1170 11AC B6DA -> 1104 1170 11AD B6DB -> 1104 1170 11AE B6DC -> 1104 1170 11AF B6DD -> 1104 1170 11B0 B6DE -> 1104 1170 11B1 B6DF -> 1104 1170 11B2 B6E0 -> 1104 1170 11B3 B6E1 -> 1104 1170 11B4 B6E2 -> 1104 1170 11B5 B6E3 -> 1104 1170 11B6 B6E4 -> 1104 1170 11B7 B6E5 -> 1104 1170 11B8 B6E6 -> 1104 1170 11B9 B6E7 -> 1104 1170 11BA B6E8 -> 1104 1170 11BB B6E9 -> 1104 1170 11BC B6EA -> 1104 1170 11BD B6EB -> 1104 1170 11BE B6EC -> 1104 1170 11BF B6ED -> 1104 1170 11C0 B6EE -> 1104 1170 11C1 B6EF -> 1104 1170 11C2 B6F0 -> 1104 1171 B6F1 -> 1104 1171 11A8 B6F2 -> 1104 1171 11A9 B6F3 -> 1104 1171 11AA B6F4 -> 1104 1171 11AB B6F5 -> 1104 1171 11AC B6F6 -> 1104 1171 11AD B6F7 -> 1104 1171 11AE B6F8 -> 1104 1171 11AF B6F9 -> 1104 1171 11B0 B6FA -> 1104 1171 11B1 B6FB -> 1104 1171 11B2 B6FC -> 1104 1171 11B3 B6FD -> 1104 1171 11B4 B6FE -> 1104 1171 11B5 B6FF -> 1104 1171 11B6 B700 -> 1104 1171 11B7 B701 -> 1104 1171 11B8 B702 -> 1104 1171 11B9 B703 -> 1104 1171 11BA B704 -> 1104 1171 11BB B705 -> 1104 1171 11BC B706 -> 1104 1171 11BD B707 -> 1104 1171 11BE B708 -> 1104 1171 11BF B709 -> 1104 1171 11C0 B70A -> 1104 1171 11C1 B70B -> 1104 1171 11C2 B70C -> 1104 1172 B70D -> 1104 1172 11A8 B70E -> 1104 1172 11A9 B70F -> 1104 1172 11AA B710 -> 1104 1172 11AB B711 -> 1104 1172 11AC B712 -> 1104 1172 11AD B713 -> 1104 1172 11AE B714 -> 1104 1172 11AF B715 -> 1104 1172 11B0 B716 -> 1104 1172 11B1 B717 -> 1104 1172 11B2 B718 -> 1104 1172 11B3 B719 -> 1104 1172 11B4 B71A -> 1104 1172 11B5 B71B -> 1104 1172 11B6 B71C -> 1104 1172 11B7 B71D -> 1104 1172 11B8 B71E -> 1104 1172 11B9 B71F -> 1104 1172 11BA B720 -> 1104 1172 11BB B721 -> 1104 1172 11BC B722 -> 1104 1172 11BD B723 -> 1104 1172 11BE B724 -> 1104 1172 11BF B725 -> 1104 1172 11C0 B726 -> 1104 1172 11C1 B727 -> 1104 1172 11C2 B728 -> 1104 1173 B729 -> 1104 1173 11A8 B72A -> 1104 1173 11A9 B72B -> 1104 1173 11AA B72C -> 1104 1173 11AB B72D -> 1104 1173 11AC B72E -> 1104 1173 11AD B72F -> 1104 1173 11AE B730 -> 1104 1173 11AF B731 -> 1104 1173 11B0 B732 -> 1104 1173 11B1 B733 -> 1104 1173 11B2 B734 -> 1104 1173 11B3 B735 -> 1104 1173 11B4 B736 -> 1104 1173 11B5 B737 -> 1104 1173 11B6 B738 -> 1104 1173 11B7 B739 -> 1104 1173 11B8 B73A -> 1104 1173 11B9 B73B -> 1104 1173 11BA B73C -> 1104 1173 11BB B73D -> 1104 1173 11BC B73E -> 1104 1173 11BD B73F -> 1104 1173 11BE B740 -> 1104 1173 11BF B741 -> 1104 1173 11C0 B742 -> 1104 1173 11C1 B743 -> 1104 1173 11C2 B744 -> 1104 1174 B745 -> 1104 1174 11A8 B746 -> 1104 1174 11A9 B747 -> 1104 1174 11AA B748 -> 1104 1174 11AB B749 -> 1104 1174 11AC B74A -> 1104 1174 11AD B74B -> 1104 1174 11AE B74C -> 1104 1174 11AF B74D -> 1104 1174 11B0 B74E -> 1104 1174 11B1 B74F -> 1104 1174 11B2 B750 -> 1104 1174 11B3 B751 -> 1104 1174 11B4 B752 -> 1104 1174 11B5 B753 -> 1104 1174 11B6 B754 -> 1104 1174 11B7 B755 -> 1104 1174 11B8 B756 -> 1104 1174 11B9 B757 -> 1104 1174 11BA B758 -> 1104 1174 11BB B759 -> 1104 1174 11BC B75A -> 1104 1174 11BD B75B -> 1104 1174 11BE B75C -> 1104 1174 11BF B75D -> 1104 1174 11C0 B75E -> 1104 1174 11C1 B75F -> 1104 1174 11C2 B760 -> 1104 1175 B761 -> 1104 1175 11A8 B762 -> 1104 1175 11A9 B763 -> 1104 1175 11AA B764 -> 1104 1175 11AB B765 -> 1104 1175 11AC B766 -> 1104 1175 11AD B767 -> 1104 1175 11AE B768 -> 1104 1175 11AF B769 -> 1104 1175 11B0 B76A -> 1104 1175 11B1 B76B -> 1104 1175 11B2 B76C -> 1104 1175 11B3 B76D -> 1104 1175 11B4 B76E -> 1104 1175 11B5 B76F -> 1104 1175 11B6 B770 -> 1104 1175 11B7 B771 -> 1104 1175 11B8 B772 -> 1104 1175 11B9 B773 -> 1104 1175 11BA B774 -> 1104 1175 11BB B775 -> 1104 1175 11BC B776 -> 1104 1175 11BD B777 -> 1104 1175 11BE B778 -> 1104 1175 11BF B779 -> 1104 1175 11C0 B77A -> 1104 1175 11C1 B77B -> 1104 1175 11C2 B77C -> 1105 1161 B77D -> 1105 1161 11A8 B77E -> 1105 1161 11A9 B77F -> 1105 1161 11AA B780 -> 1105 1161 11AB B781 -> 1105 1161 11AC B782 -> 1105 1161 11AD B783 -> 1105 1161 11AE B784 -> 1105 1161 11AF B785 -> 1105 1161 11B0 B786 -> 1105 1161 11B1 B787 -> 1105 1161 11B2 B788 -> 1105 1161 11B3 B789 -> 1105 1161 11B4 B78A -> 1105 1161 11B5 B78B -> 1105 1161 11B6 B78C -> 1105 1161 11B7 B78D -> 1105 1161 11B8 B78E -> 1105 1161 11B9 B78F -> 1105 1161 11BA B790 -> 1105 1161 11BB B791 -> 1105 1161 11BC B792 -> 1105 1161 11BD B793 -> 1105 1161 11BE B794 -> 1105 1161 11BF B795 -> 1105 1161 11C0 B796 -> 1105 1161 11C1 B797 -> 1105 1161 11C2 B798 -> 1105 1162 B799 -> 1105 1162 11A8 B79A -> 1105 1162 11A9 B79B -> 1105 1162 11AA B79C -> 1105 1162 11AB B79D -> 1105 1162 11AC B79E -> 1105 1162 11AD B79F -> 1105 1162 11AE B7A0 -> 1105 1162 11AF B7A1 -> 1105 1162 11B0 B7A2 -> 1105 1162 11B1 B7A3 -> 1105 1162 11B2 B7A4 -> 1105 1162 11B3 B7A5 -> 1105 1162 11B4 B7A6 -> 1105 1162 11B5 B7A7 -> 1105 1162 11B6 B7A8 -> 1105 1162 11B7 B7A9 -> 1105 1162 11B8 B7AA -> 1105 1162 11B9 B7AB -> 1105 1162 11BA B7AC -> 1105 1162 11BB B7AD -> 1105 1162 11BC B7AE -> 1105 1162 11BD B7AF -> 1105 1162 11BE B7B0 -> 1105 1162 11BF B7B1 -> 1105 1162 11C0 B7B2 -> 1105 1162 11C1 B7B3 -> 1105 1162 11C2 B7B4 -> 1105 1163 B7B5 -> 1105 1163 11A8 B7B6 -> 1105 1163 11A9 B7B7 -> 1105 1163 11AA B7B8 -> 1105 1163 11AB B7B9 -> 1105 1163 11AC B7BA -> 1105 1163 11AD B7BB -> 1105 1163 11AE B7BC -> 1105 1163 11AF B7BD -> 1105 1163 11B0 B7BE -> 1105 1163 11B1 B7BF -> 1105 1163 11B2 B7C0 -> 1105 1163 11B3 B7C1 -> 1105 1163 11B4 B7C2 -> 1105 1163 11B5 B7C3 -> 1105 1163 11B6 B7C4 -> 1105 1163 11B7 B7C5 -> 1105 1163 11B8 B7C6 -> 1105 1163 11B9 B7C7 -> 1105 1163 11BA B7C8 -> 1105 1163 11BB B7C9 -> 1105 1163 11BC B7CA -> 1105 1163 11BD B7CB -> 1105 1163 11BE B7CC -> 1105 1163 11BF B7CD -> 1105 1163 11C0 B7CE -> 1105 1163 11C1 B7CF -> 1105 1163 11C2 B7D0 -> 1105 1164 B7D1 -> 1105 1164 11A8 B7D2 -> 1105 1164 11A9 B7D3 -> 1105 1164 11AA B7D4 -> 1105 1164 11AB B7D5 -> 1105 1164 11AC B7D6 -> 1105 1164 11AD B7D7 -> 1105 1164 11AE B7D8 -> 1105 1164 11AF B7D9 -> 1105 1164 11B0 B7DA -> 1105 1164 11B1 B7DB -> 1105 1164 11B2 B7DC -> 1105 1164 11B3 B7DD -> 1105 1164 11B4 B7DE -> 1105 1164 11B5 B7DF -> 1105 1164 11B6 B7E0 -> 1105 1164 11B7 B7E1 -> 1105 1164 11B8 B7E2 -> 1105 1164 11B9 B7E3 -> 1105 1164 11BA B7E4 -> 1105 1164 11BB B7E5 -> 1105 1164 11BC B7E6 -> 1105 1164 11BD B7E7 -> 1105 1164 11BE B7E8 -> 1105 1164 11BF B7E9 -> 1105 1164 11C0 B7EA -> 1105 1164 11C1 B7EB -> 1105 1164 11C2 B7EC -> 1105 1165 B7ED -> 1105 1165 11A8 B7EE -> 1105 1165 11A9 B7EF -> 1105 1165 11AA B7F0 -> 1105 1165 11AB B7F1 -> 1105 1165 11AC B7F2 -> 1105 1165 11AD B7F3 -> 1105 1165 11AE B7F4 -> 1105 1165 11AF B7F5 -> 1105 1165 11B0 B7F6 -> 1105 1165 11B1 B7F7 -> 1105 1165 11B2 B7F8 -> 1105 1165 11B3 B7F9 -> 1105 1165 11B4 B7FA -> 1105 1165 11B5 B7FB -> 1105 1165 11B6 B7FC -> 1105 1165 11B7 B7FD -> 1105 1165 11B8 B7FE -> 1105 1165 11B9 B7FF -> 1105 1165 11BA B800 -> 1105 1165 11BB B801 -> 1105 1165 11BC B802 -> 1105 1165 11BD B803 -> 1105 1165 11BE B804 -> 1105 1165 11BF B805 -> 1105 1165 11C0 B806 -> 1105 1165 11C1 B807 -> 1105 1165 11C2 B808 -> 1105 1166 B809 -> 1105 1166 11A8 B80A -> 1105 1166 11A9 B80B -> 1105 1166 11AA B80C -> 1105 1166 11AB B80D -> 1105 1166 11AC B80E -> 1105 1166 11AD B80F -> 1105 1166 11AE B810 -> 1105 1166 11AF B811 -> 1105 1166 11B0 B812 -> 1105 1166 11B1 B813 -> 1105 1166 11B2 B814 -> 1105 1166 11B3 B815 -> 1105 1166 11B4 B816 -> 1105 1166 11B5 B817 -> 1105 1166 11B6 B818 -> 1105 1166 11B7 B819 -> 1105 1166 11B8 B81A -> 1105 1166 11B9 B81B -> 1105 1166 11BA B81C -> 1105 1166 11BB B81D -> 1105 1166 11BC B81E -> 1105 1166 11BD B81F -> 1105 1166 11BE B820 -> 1105 1166 11BF B821 -> 1105 1166 11C0 B822 -> 1105 1166 11C1 B823 -> 1105 1166 11C2 B824 -> 1105 1167 B825 -> 1105 1167 11A8 B826 -> 1105 1167 11A9 B827 -> 1105 1167 11AA B828 -> 1105 1167 11AB B829 -> 1105 1167 11AC B82A -> 1105 1167 11AD B82B -> 1105 1167 11AE B82C -> 1105 1167 11AF B82D -> 1105 1167 11B0 B82E -> 1105 1167 11B1 B82F -> 1105 1167 11B2 B830 -> 1105 1167 11B3 B831 -> 1105 1167 11B4 B832 -> 1105 1167 11B5 B833 -> 1105 1167 11B6 B834 -> 1105 1167 11B7 B835 -> 1105 1167 11B8 B836 -> 1105 1167 11B9 B837 -> 1105 1167 11BA B838 -> 1105 1167 11BB B839 -> 1105 1167 11BC B83A -> 1105 1167 11BD B83B -> 1105 1167 11BE B83C -> 1105 1167 11BF B83D -> 1105 1167 11C0 B83E -> 1105 1167 11C1 B83F -> 1105 1167 11C2 B840 -> 1105 1168 B841 -> 1105 1168 11A8 B842 -> 1105 1168 11A9 B843 -> 1105 1168 11AA B844 -> 1105 1168 11AB B845 -> 1105 1168 11AC B846 -> 1105 1168 11AD B847 -> 1105 1168 11AE B848 -> 1105 1168 11AF B849 -> 1105 1168 11B0 B84A -> 1105 1168 11B1 B84B -> 1105 1168 11B2 B84C -> 1105 1168 11B3 B84D -> 1105 1168 11B4 B84E -> 1105 1168 11B5 B84F -> 1105 1168 11B6 B850 -> 1105 1168 11B7 B851 -> 1105 1168 11B8 B852 -> 1105 1168 11B9 B853 -> 1105 1168 11BA B854 -> 1105 1168 11BB B855 -> 1105 1168 11BC B856 -> 1105 1168 11BD B857 -> 1105 1168 11BE B858 -> 1105 1168 11BF B859 -> 1105 1168 11C0 B85A -> 1105 1168 11C1 B85B -> 1105 1168 11C2 B85C -> 1105 1169 B85D -> 1105 1169 11A8 B85E -> 1105 1169 11A9 B85F -> 1105 1169 11AA B860 -> 1105 1169 11AB B861 -> 1105 1169 11AC B862 -> 1105 1169 11AD B863 -> 1105 1169 11AE B864 -> 1105 1169 11AF B865 -> 1105 1169 11B0 B866 -> 1105 1169 11B1 B867 -> 1105 1169 11B2 B868 -> 1105 1169 11B3 B869 -> 1105 1169 11B4 B86A -> 1105 1169 11B5 B86B -> 1105 1169 11B6 B86C -> 1105 1169 11B7 B86D -> 1105 1169 11B8 B86E -> 1105 1169 11B9 B86F -> 1105 1169 11BA B870 -> 1105 1169 11BB B871 -> 1105 1169 11BC B872 -> 1105 1169 11BD B873 -> 1105 1169 11BE B874 -> 1105 1169 11BF B875 -> 1105 1169 11C0 B876 -> 1105 1169 11C1 B877 -> 1105 1169 11C2 B878 -> 1105 116A B879 -> 1105 116A 11A8 B87A -> 1105 116A 11A9 B87B -> 1105 116A 11AA B87C -> 1105 116A 11AB B87D -> 1105 116A 11AC B87E -> 1105 116A 11AD B87F -> 1105 116A 11AE B880 -> 1105 116A 11AF B881 -> 1105 116A 11B0 B882 -> 1105 116A 11B1 B883 -> 1105 116A 11B2 B884 -> 1105 116A 11B3 B885 -> 1105 116A 11B4 B886 -> 1105 116A 11B5 B887 -> 1105 116A 11B6 B888 -> 1105 116A 11B7 B889 -> 1105 116A 11B8 B88A -> 1105 116A 11B9 B88B -> 1105 116A 11BA B88C -> 1105 116A 11BB B88D -> 1105 116A 11BC B88E -> 1105 116A 11BD B88F -> 1105 116A 11BE B890 -> 1105 116A 11BF B891 -> 1105 116A 11C0 B892 -> 1105 116A 11C1 B893 -> 1105 116A 11C2 B894 -> 1105 116B B895 -> 1105 116B 11A8 B896 -> 1105 116B 11A9 B897 -> 1105 116B 11AA B898 -> 1105 116B 11AB B899 -> 1105 116B 11AC B89A -> 1105 116B 11AD B89B -> 1105 116B 11AE B89C -> 1105 116B 11AF B89D -> 1105 116B 11B0 B89E -> 1105 116B 11B1 B89F -> 1105 116B 11B2 B8A0 -> 1105 116B 11B3 B8A1 -> 1105 116B 11B4 B8A2 -> 1105 116B 11B5 B8A3 -> 1105 116B 11B6 B8A4 -> 1105 116B 11B7 B8A5 -> 1105 116B 11B8 B8A6 -> 1105 116B 11B9 B8A7 -> 1105 116B 11BA B8A8 -> 1105 116B 11BB B8A9 -> 1105 116B 11BC B8AA -> 1105 116B 11BD B8AB -> 1105 116B 11BE B8AC -> 1105 116B 11BF B8AD -> 1105 116B 11C0 B8AE -> 1105 116B 11C1 B8AF -> 1105 116B 11C2 B8B0 -> 1105 116C B8B1 -> 1105 116C 11A8 B8B2 -> 1105 116C 11A9 B8B3 -> 1105 116C 11AA B8B4 -> 1105 116C 11AB B8B5 -> 1105 116C 11AC B8B6 -> 1105 116C 11AD B8B7 -> 1105 116C 11AE B8B8 -> 1105 116C 11AF B8B9 -> 1105 116C 11B0 B8BA -> 1105 116C 11B1 B8BB -> 1105 116C 11B2 B8BC -> 1105 116C 11B3 B8BD -> 1105 116C 11B4 B8BE -> 1105 116C 11B5 B8BF -> 1105 116C 11B6 B8C0 -> 1105 116C 11B7 B8C1 -> 1105 116C 11B8 B8C2 -> 1105 116C 11B9 B8C3 -> 1105 116C 11BA B8C4 -> 1105 116C 11BB B8C5 -> 1105 116C 11BC B8C6 -> 1105 116C 11BD B8C7 -> 1105 116C 11BE B8C8 -> 1105 116C 11BF B8C9 -> 1105 116C 11C0 B8CA -> 1105 116C 11C1 B8CB -> 1105 116C 11C2 B8CC -> 1105 116D B8CD -> 1105 116D 11A8 B8CE -> 1105 116D 11A9 B8CF -> 1105 116D 11AA B8D0 -> 1105 116D 11AB B8D1 -> 1105 116D 11AC B8D2 -> 1105 116D 11AD B8D3 -> 1105 116D 11AE B8D4 -> 1105 116D 11AF B8D5 -> 1105 116D 11B0 B8D6 -> 1105 116D 11B1 B8D7 -> 1105 116D 11B2 B8D8 -> 1105 116D 11B3 B8D9 -> 1105 116D 11B4 B8DA -> 1105 116D 11B5 B8DB -> 1105 116D 11B6 B8DC -> 1105 116D 11B7 B8DD -> 1105 116D 11B8 B8DE -> 1105 116D 11B9 B8DF -> 1105 116D 11BA B8E0 -> 1105 116D 11BB B8E1 -> 1105 116D 11BC B8E2 -> 1105 116D 11BD B8E3 -> 1105 116D 11BE B8E4 -> 1105 116D 11BF B8E5 -> 1105 116D 11C0 B8E6 -> 1105 116D 11C1 B8E7 -> 1105 116D 11C2 B8E8 -> 1105 116E B8E9 -> 1105 116E 11A8 B8EA -> 1105 116E 11A9 B8EB -> 1105 116E 11AA B8EC -> 1105 116E 11AB B8ED -> 1105 116E 11AC B8EE -> 1105 116E 11AD B8EF -> 1105 116E 11AE B8F0 -> 1105 116E 11AF B8F1 -> 1105 116E 11B0 B8F2 -> 1105 116E 11B1 B8F3 -> 1105 116E 11B2 B8F4 -> 1105 116E 11B3 B8F5 -> 1105 116E 11B4 B8F6 -> 1105 116E 11B5 B8F7 -> 1105 116E 11B6 B8F8 -> 1105 116E 11B7 B8F9 -> 1105 116E 11B8 B8FA -> 1105 116E 11B9 B8FB -> 1105 116E 11BA B8FC -> 1105 116E 11BB B8FD -> 1105 116E 11BC B8FE -> 1105 116E 11BD B8FF -> 1105 116E 11BE B900 -> 1105 116E 11BF B901 -> 1105 116E 11C0 B902 -> 1105 116E 11C1 B903 -> 1105 116E 11C2 B904 -> 1105 116F B905 -> 1105 116F 11A8 B906 -> 1105 116F 11A9 B907 -> 1105 116F 11AA B908 -> 1105 116F 11AB B909 -> 1105 116F 11AC B90A -> 1105 116F 11AD B90B -> 1105 116F 11AE B90C -> 1105 116F 11AF B90D -> 1105 116F 11B0 B90E -> 1105 116F 11B1 B90F -> 1105 116F 11B2 B910 -> 1105 116F 11B3 B911 -> 1105 116F 11B4 B912 -> 1105 116F 11B5 B913 -> 1105 116F 11B6 B914 -> 1105 116F 11B7 B915 -> 1105 116F 11B8 B916 -> 1105 116F 11B9 B917 -> 1105 116F 11BA B918 -> 1105 116F 11BB B919 -> 1105 116F 11BC B91A -> 1105 116F 11BD B91B -> 1105 116F 11BE B91C -> 1105 116F 11BF B91D -> 1105 116F 11C0 B91E -> 1105 116F 11C1 B91F -> 1105 116F 11C2 B920 -> 1105 1170 B921 -> 1105 1170 11A8 B922 -> 1105 1170 11A9 B923 -> 1105 1170 11AA B924 -> 1105 1170 11AB B925 -> 1105 1170 11AC B926 -> 1105 1170 11AD B927 -> 1105 1170 11AE B928 -> 1105 1170 11AF B929 -> 1105 1170 11B0 B92A -> 1105 1170 11B1 B92B -> 1105 1170 11B2 B92C -> 1105 1170 11B3 B92D -> 1105 1170 11B4 B92E -> 1105 1170 11B5 B92F -> 1105 1170 11B6 B930 -> 1105 1170 11B7 B931 -> 1105 1170 11B8 B932 -> 1105 1170 11B9 B933 -> 1105 1170 11BA B934 -> 1105 1170 11BB B935 -> 1105 1170 11BC B936 -> 1105 1170 11BD B937 -> 1105 1170 11BE B938 -> 1105 1170 11BF B939 -> 1105 1170 11C0 B93A -> 1105 1170 11C1 B93B -> 1105 1170 11C2 B93C -> 1105 1171 B93D -> 1105 1171 11A8 B93E -> 1105 1171 11A9 B93F -> 1105 1171 11AA B940 -> 1105 1171 11AB B941 -> 1105 1171 11AC B942 -> 1105 1171 11AD B943 -> 1105 1171 11AE B944 -> 1105 1171 11AF B945 -> 1105 1171 11B0 B946 -> 1105 1171 11B1 B947 -> 1105 1171 11B2 B948 -> 1105 1171 11B3 B949 -> 1105 1171 11B4 B94A -> 1105 1171 11B5 B94B -> 1105 1171 11B6 B94C -> 1105 1171 11B7 B94D -> 1105 1171 11B8 B94E -> 1105 1171 11B9 B94F -> 1105 1171 11BA B950 -> 1105 1171 11BB B951 -> 1105 1171 11BC B952 -> 1105 1171 11BD B953 -> 1105 1171 11BE B954 -> 1105 1171 11BF B955 -> 1105 1171 11C0 B956 -> 1105 1171 11C1 B957 -> 1105 1171 11C2 B958 -> 1105 1172 B959 -> 1105 1172 11A8 B95A -> 1105 1172 11A9 B95B -> 1105 1172 11AA B95C -> 1105 1172 11AB B95D -> 1105 1172 11AC B95E -> 1105 1172 11AD B95F -> 1105 1172 11AE B960 -> 1105 1172 11AF B961 -> 1105 1172 11B0 B962 -> 1105 1172 11B1 B963 -> 1105 1172 11B2 B964 -> 1105 1172 11B3 B965 -> 1105 1172 11B4 B966 -> 1105 1172 11B5 B967 -> 1105 1172 11B6 B968 -> 1105 1172 11B7 B969 -> 1105 1172 11B8 B96A -> 1105 1172 11B9 B96B -> 1105 1172 11BA B96C -> 1105 1172 11BB B96D -> 1105 1172 11BC B96E -> 1105 1172 11BD B96F -> 1105 1172 11BE B970 -> 1105 1172 11BF B971 -> 1105 1172 11C0 B972 -> 1105 1172 11C1 B973 -> 1105 1172 11C2 B974 -> 1105 1173 B975 -> 1105 1173 11A8 B976 -> 1105 1173 11A9 B977 -> 1105 1173 11AA B978 -> 1105 1173 11AB B979 -> 1105 1173 11AC B97A -> 1105 1173 11AD B97B -> 1105 1173 11AE B97C -> 1105 1173 11AF B97D -> 1105 1173 11B0 B97E -> 1105 1173 11B1 B97F -> 1105 1173 11B2 B980 -> 1105 1173 11B3 B981 -> 1105 1173 11B4 B982 -> 1105 1173 11B5 B983 -> 1105 1173 11B6 B984 -> 1105 1173 11B7 B985 -> 1105 1173 11B8 B986 -> 1105 1173 11B9 B987 -> 1105 1173 11BA B988 -> 1105 1173 11BB B989 -> 1105 1173 11BC B98A -> 1105 1173 11BD B98B -> 1105 1173 11BE B98C -> 1105 1173 11BF B98D -> 1105 1173 11C0 B98E -> 1105 1173 11C1 B98F -> 1105 1173 11C2 B990 -> 1105 1174 B991 -> 1105 1174 11A8 B992 -> 1105 1174 11A9 B993 -> 1105 1174 11AA B994 -> 1105 1174 11AB B995 -> 1105 1174 11AC B996 -> 1105 1174 11AD B997 -> 1105 1174 11AE B998 -> 1105 1174 11AF B999 -> 1105 1174 11B0 B99A -> 1105 1174 11B1 B99B -> 1105 1174 11B2 B99C -> 1105 1174 11B3 B99D -> 1105 1174 11B4 B99E -> 1105 1174 11B5 B99F -> 1105 1174 11B6 B9A0 -> 1105 1174 11B7 B9A1 -> 1105 1174 11B8 B9A2 -> 1105 1174 11B9 B9A3 -> 1105 1174 11BA B9A4 -> 1105 1174 11BB B9A5 -> 1105 1174 11BC B9A6 -> 1105 1174 11BD B9A7 -> 1105 1174 11BE B9A8 -> 1105 1174 11BF B9A9 -> 1105 1174 11C0 B9AA -> 1105 1174 11C1 B9AB -> 1105 1174 11C2 B9AC -> 1105 1175 B9AD -> 1105 1175 11A8 B9AE -> 1105 1175 11A9 B9AF -> 1105 1175 11AA B9B0 -> 1105 1175 11AB B9B1 -> 1105 1175 11AC B9B2 -> 1105 1175 11AD B9B3 -> 1105 1175 11AE B9B4 -> 1105 1175 11AF B9B5 -> 1105 1175 11B0 B9B6 -> 1105 1175 11B1 B9B7 -> 1105 1175 11B2 B9B8 -> 1105 1175 11B3 B9B9 -> 1105 1175 11B4 B9BA -> 1105 1175 11B5 B9BB -> 1105 1175 11B6 B9BC -> 1105 1175 11B7 B9BD -> 1105 1175 11B8 B9BE -> 1105 1175 11B9 B9BF -> 1105 1175 11BA B9C0 -> 1105 1175 11BB B9C1 -> 1105 1175 11BC B9C2 -> 1105 1175 11BD B9C3 -> 1105 1175 11BE B9C4 -> 1105 1175 11BF B9C5 -> 1105 1175 11C0 B9C6 -> 1105 1175 11C1 B9C7 -> 1105 1175 11C2 B9C8 -> 1106 1161 B9C9 -> 1106 1161 11A8 B9CA -> 1106 1161 11A9 B9CB -> 1106 1161 11AA B9CC -> 1106 1161 11AB B9CD -> 1106 1161 11AC B9CE -> 1106 1161 11AD B9CF -> 1106 1161 11AE B9D0 -> 1106 1161 11AF B9D1 -> 1106 1161 11B0 B9D2 -> 1106 1161 11B1 B9D3 -> 1106 1161 11B2 B9D4 -> 1106 1161 11B3 B9D5 -> 1106 1161 11B4 B9D6 -> 1106 1161 11B5 B9D7 -> 1106 1161 11B6 B9D8 -> 1106 1161 11B7 B9D9 -> 1106 1161 11B8 B9DA -> 1106 1161 11B9 B9DB -> 1106 1161 11BA B9DC -> 1106 1161 11BB B9DD -> 1106 1161 11BC B9DE -> 1106 1161 11BD B9DF -> 1106 1161 11BE B9E0 -> 1106 1161 11BF B9E1 -> 1106 1161 11C0 B9E2 -> 1106 1161 11C1 B9E3 -> 1106 1161 11C2 B9E4 -> 1106 1162 B9E5 -> 1106 1162 11A8 B9E6 -> 1106 1162 11A9 B9E7 -> 1106 1162 11AA B9E8 -> 1106 1162 11AB B9E9 -> 1106 1162 11AC B9EA -> 1106 1162 11AD B9EB -> 1106 1162 11AE B9EC -> 1106 1162 11AF B9ED -> 1106 1162 11B0 B9EE -> 1106 1162 11B1 B9EF -> 1106 1162 11B2 B9F0 -> 1106 1162 11B3 B9F1 -> 1106 1162 11B4 B9F2 -> 1106 1162 11B5 B9F3 -> 1106 1162 11B6 B9F4 -> 1106 1162 11B7 B9F5 -> 1106 1162 11B8 B9F6 -> 1106 1162 11B9 B9F7 -> 1106 1162 11BA B9F8 -> 1106 1162 11BB B9F9 -> 1106 1162 11BC B9FA -> 1106 1162 11BD B9FB -> 1106 1162 11BE B9FC -> 1106 1162 11BF B9FD -> 1106 1162 11C0 B9FE -> 1106 1162 11C1 B9FF -> 1106 1162 11C2 BA00 -> 1106 1163 BA01 -> 1106 1163 11A8 BA02 -> 1106 1163 11A9 BA03 -> 1106 1163 11AA BA04 -> 1106 1163 11AB BA05 -> 1106 1163 11AC BA06 -> 1106 1163 11AD BA07 -> 1106 1163 11AE BA08 -> 1106 1163 11AF BA09 -> 1106 1163 11B0 BA0A -> 1106 1163 11B1 BA0B -> 1106 1163 11B2 BA0C -> 1106 1163 11B3 BA0D -> 1106 1163 11B4 BA0E -> 1106 1163 11B5 BA0F -> 1106 1163 11B6 BA10 -> 1106 1163 11B7 BA11 -> 1106 1163 11B8 BA12 -> 1106 1163 11B9 BA13 -> 1106 1163 11BA BA14 -> 1106 1163 11BB BA15 -> 1106 1163 11BC BA16 -> 1106 1163 11BD BA17 -> 1106 1163 11BE BA18 -> 1106 1163 11BF BA19 -> 1106 1163 11C0 BA1A -> 1106 1163 11C1 BA1B -> 1106 1163 11C2 BA1C -> 1106 1164 BA1D -> 1106 1164 11A8 BA1E -> 1106 1164 11A9 BA1F -> 1106 1164 11AA BA20 -> 1106 1164 11AB BA21 -> 1106 1164 11AC BA22 -> 1106 1164 11AD BA23 -> 1106 1164 11AE BA24 -> 1106 1164 11AF BA25 -> 1106 1164 11B0 BA26 -> 1106 1164 11B1 BA27 -> 1106 1164 11B2 BA28 -> 1106 1164 11B3 BA29 -> 1106 1164 11B4 BA2A -> 1106 1164 11B5 BA2B -> 1106 1164 11B6 BA2C -> 1106 1164 11B7 BA2D -> 1106 1164 11B8 BA2E -> 1106 1164 11B9 BA2F -> 1106 1164 11BA BA30 -> 1106 1164 11BB BA31 -> 1106 1164 11BC BA32 -> 1106 1164 11BD BA33 -> 1106 1164 11BE BA34 -> 1106 1164 11BF BA35 -> 1106 1164 11C0 BA36 -> 1106 1164 11C1 BA37 -> 1106 1164 11C2 BA38 -> 1106 1165 BA39 -> 1106 1165 11A8 BA3A -> 1106 1165 11A9 BA3B -> 1106 1165 11AA BA3C -> 1106 1165 11AB BA3D -> 1106 1165 11AC BA3E -> 1106 1165 11AD BA3F -> 1106 1165 11AE BA40 -> 1106 1165 11AF BA41 -> 1106 1165 11B0 BA42 -> 1106 1165 11B1 BA43 -> 1106 1165 11B2 BA44 -> 1106 1165 11B3 BA45 -> 1106 1165 11B4 BA46 -> 1106 1165 11B5 BA47 -> 1106 1165 11B6 BA48 -> 1106 1165 11B7 BA49 -> 1106 1165 11B8 BA4A -> 1106 1165 11B9 BA4B -> 1106 1165 11BA BA4C -> 1106 1165 11BB BA4D -> 1106 1165 11BC BA4E -> 1106 1165 11BD BA4F -> 1106 1165 11BE BA50 -> 1106 1165 11BF BA51 -> 1106 1165 11C0 BA52 -> 1106 1165 11C1 BA53 -> 1106 1165 11C2 BA54 -> 1106 1166 BA55 -> 1106 1166 11A8 BA56 -> 1106 1166 11A9 BA57 -> 1106 1166 11AA BA58 -> 1106 1166 11AB BA59 -> 1106 1166 11AC BA5A -> 1106 1166 11AD BA5B -> 1106 1166 11AE BA5C -> 1106 1166 11AF BA5D -> 1106 1166 11B0 BA5E -> 1106 1166 11B1 BA5F -> 1106 1166 11B2 BA60 -> 1106 1166 11B3 BA61 -> 1106 1166 11B4 BA62 -> 1106 1166 11B5 BA63 -> 1106 1166 11B6 BA64 -> 1106 1166 11B7 BA65 -> 1106 1166 11B8 BA66 -> 1106 1166 11B9 BA67 -> 1106 1166 11BA BA68 -> 1106 1166 11BB BA69 -> 1106 1166 11BC BA6A -> 1106 1166 11BD BA6B -> 1106 1166 11BE BA6C -> 1106 1166 11BF BA6D -> 1106 1166 11C0 BA6E -> 1106 1166 11C1 BA6F -> 1106 1166 11C2 BA70 -> 1106 1167 BA71 -> 1106 1167 11A8 BA72 -> 1106 1167 11A9 BA73 -> 1106 1167 11AA BA74 -> 1106 1167 11AB BA75 -> 1106 1167 11AC BA76 -> 1106 1167 11AD BA77 -> 1106 1167 11AE BA78 -> 1106 1167 11AF BA79 -> 1106 1167 11B0 BA7A -> 1106 1167 11B1 BA7B -> 1106 1167 11B2 BA7C -> 1106 1167 11B3 BA7D -> 1106 1167 11B4 BA7E -> 1106 1167 11B5 BA7F -> 1106 1167 11B6 BA80 -> 1106 1167 11B7 BA81 -> 1106 1167 11B8 BA82 -> 1106 1167 11B9 BA83 -> 1106 1167 11BA BA84 -> 1106 1167 11BB BA85 -> 1106 1167 11BC BA86 -> 1106 1167 11BD BA87 -> 1106 1167 11BE BA88 -> 1106 1167 11BF BA89 -> 1106 1167 11C0 BA8A -> 1106 1167 11C1 BA8B -> 1106 1167 11C2 BA8C -> 1106 1168 BA8D -> 1106 1168 11A8 BA8E -> 1106 1168 11A9 BA8F -> 1106 1168 11AA BA90 -> 1106 1168 11AB BA91 -> 1106 1168 11AC BA92 -> 1106 1168 11AD BA93 -> 1106 1168 11AE BA94 -> 1106 1168 11AF BA95 -> 1106 1168 11B0 BA96 -> 1106 1168 11B1 BA97 -> 1106 1168 11B2 BA98 -> 1106 1168 11B3 BA99 -> 1106 1168 11B4 BA9A -> 1106 1168 11B5 BA9B -> 1106 1168 11B6 BA9C -> 1106 1168 11B7 BA9D -> 1106 1168 11B8 BA9E -> 1106 1168 11B9 BA9F -> 1106 1168 11BA BAA0 -> 1106 1168 11BB BAA1 -> 1106 1168 11BC BAA2 -> 1106 1168 11BD BAA3 -> 1106 1168 11BE BAA4 -> 1106 1168 11BF BAA5 -> 1106 1168 11C0 BAA6 -> 1106 1168 11C1 BAA7 -> 1106 1168 11C2 BAA8 -> 1106 1169 BAA9 -> 1106 1169 11A8 BAAA -> 1106 1169 11A9 BAAB -> 1106 1169 11AA BAAC -> 1106 1169 11AB BAAD -> 1106 1169 11AC BAAE -> 1106 1169 11AD BAAF -> 1106 1169 11AE BAB0 -> 1106 1169 11AF BAB1 -> 1106 1169 11B0 BAB2 -> 1106 1169 11B1 BAB3 -> 1106 1169 11B2 BAB4 -> 1106 1169 11B3 BAB5 -> 1106 1169 11B4 BAB6 -> 1106 1169 11B5 BAB7 -> 1106 1169 11B6 BAB8 -> 1106 1169 11B7 BAB9 -> 1106 1169 11B8 BABA -> 1106 1169 11B9 BABB -> 1106 1169 11BA BABC -> 1106 1169 11BB BABD -> 1106 1169 11BC BABE -> 1106 1169 11BD BABF -> 1106 1169 11BE BAC0 -> 1106 1169 11BF BAC1 -> 1106 1169 11C0 BAC2 -> 1106 1169 11C1 BAC3 -> 1106 1169 11C2 BAC4 -> 1106 116A BAC5 -> 1106 116A 11A8 BAC6 -> 1106 116A 11A9 BAC7 -> 1106 116A 11AA BAC8 -> 1106 116A 11AB BAC9 -> 1106 116A 11AC BACA -> 1106 116A 11AD BACB -> 1106 116A 11AE BACC -> 1106 116A 11AF BACD -> 1106 116A 11B0 BACE -> 1106 116A 11B1 BACF -> 1106 116A 11B2 BAD0 -> 1106 116A 11B3 BAD1 -> 1106 116A 11B4 BAD2 -> 1106 116A 11B5 BAD3 -> 1106 116A 11B6 BAD4 -> 1106 116A 11B7 BAD5 -> 1106 116A 11B8 BAD6 -> 1106 116A 11B9 BAD7 -> 1106 116A 11BA BAD8 -> 1106 116A 11BB BAD9 -> 1106 116A 11BC BADA -> 1106 116A 11BD BADB -> 1106 116A 11BE BADC -> 1106 116A 11BF BADD -> 1106 116A 11C0 BADE -> 1106 116A 11C1 BADF -> 1106 116A 11C2 BAE0 -> 1106 116B BAE1 -> 1106 116B 11A8 BAE2 -> 1106 116B 11A9 BAE3 -> 1106 116B 11AA BAE4 -> 1106 116B 11AB BAE5 -> 1106 116B 11AC BAE6 -> 1106 116B 11AD BAE7 -> 1106 116B 11AE BAE8 -> 1106 116B 11AF BAE9 -> 1106 116B 11B0 BAEA -> 1106 116B 11B1 BAEB -> 1106 116B 11B2 BAEC -> 1106 116B 11B3 BAED -> 1106 116B 11B4 BAEE -> 1106 116B 11B5 BAEF -> 1106 116B 11B6 BAF0 -> 1106 116B 11B7 BAF1 -> 1106 116B 11B8 BAF2 -> 1106 116B 11B9 BAF3 -> 1106 116B 11BA BAF4 -> 1106 116B 11BB BAF5 -> 1106 116B 11BC BAF6 -> 1106 116B 11BD BAF7 -> 1106 116B 11BE BAF8 -> 1106 116B 11BF BAF9 -> 1106 116B 11C0 BAFA -> 1106 116B 11C1 BAFB -> 1106 116B 11C2 BAFC -> 1106 116C BAFD -> 1106 116C 11A8 BAFE -> 1106 116C 11A9 BAFF -> 1106 116C 11AA BB00 -> 1106 116C 11AB BB01 -> 1106 116C 11AC BB02 -> 1106 116C 11AD BB03 -> 1106 116C 11AE BB04 -> 1106 116C 11AF BB05 -> 1106 116C 11B0 BB06 -> 1106 116C 11B1 BB07 -> 1106 116C 11B2 BB08 -> 1106 116C 11B3 BB09 -> 1106 116C 11B4 BB0A -> 1106 116C 11B5 BB0B -> 1106 116C 11B6 BB0C -> 1106 116C 11B7 BB0D -> 1106 116C 11B8 BB0E -> 1106 116C 11B9 BB0F -> 1106 116C 11BA BB10 -> 1106 116C 11BB BB11 -> 1106 116C 11BC BB12 -> 1106 116C 11BD BB13 -> 1106 116C 11BE BB14 -> 1106 116C 11BF BB15 -> 1106 116C 11C0 BB16 -> 1106 116C 11C1 BB17 -> 1106 116C 11C2 BB18 -> 1106 116D BB19 -> 1106 116D 11A8 BB1A -> 1106 116D 11A9 BB1B -> 1106 116D 11AA BB1C -> 1106 116D 11AB BB1D -> 1106 116D 11AC BB1E -> 1106 116D 11AD BB1F -> 1106 116D 11AE BB20 -> 1106 116D 11AF BB21 -> 1106 116D 11B0 BB22 -> 1106 116D 11B1 BB23 -> 1106 116D 11B2 BB24 -> 1106 116D 11B3 BB25 -> 1106 116D 11B4 BB26 -> 1106 116D 11B5 BB27 -> 1106 116D 11B6 BB28 -> 1106 116D 11B7 BB29 -> 1106 116D 11B8 BB2A -> 1106 116D 11B9 BB2B -> 1106 116D 11BA BB2C -> 1106 116D 11BB BB2D -> 1106 116D 11BC BB2E -> 1106 116D 11BD BB2F -> 1106 116D 11BE BB30 -> 1106 116D 11BF BB31 -> 1106 116D 11C0 BB32 -> 1106 116D 11C1 BB33 -> 1106 116D 11C2 BB34 -> 1106 116E BB35 -> 1106 116E 11A8 BB36 -> 1106 116E 11A9 BB37 -> 1106 116E 11AA BB38 -> 1106 116E 11AB BB39 -> 1106 116E 11AC BB3A -> 1106 116E 11AD BB3B -> 1106 116E 11AE BB3C -> 1106 116E 11AF BB3D -> 1106 116E 11B0 BB3E -> 1106 116E 11B1 BB3F -> 1106 116E 11B2 BB40 -> 1106 116E 11B3 BB41 -> 1106 116E 11B4 BB42 -> 1106 116E 11B5 BB43 -> 1106 116E 11B6 BB44 -> 1106 116E 11B7 BB45 -> 1106 116E 11B8 BB46 -> 1106 116E 11B9 BB47 -> 1106 116E 11BA BB48 -> 1106 116E 11BB BB49 -> 1106 116E 11BC BB4A -> 1106 116E 11BD BB4B -> 1106 116E 11BE BB4C -> 1106 116E 11BF BB4D -> 1106 116E 11C0 BB4E -> 1106 116E 11C1 BB4F -> 1106 116E 11C2 BB50 -> 1106 116F BB51 -> 1106 116F 11A8 BB52 -> 1106 116F 11A9 BB53 -> 1106 116F 11AA BB54 -> 1106 116F 11AB BB55 -> 1106 116F 11AC BB56 -> 1106 116F 11AD BB57 -> 1106 116F 11AE BB58 -> 1106 116F 11AF BB59 -> 1106 116F 11B0 BB5A -> 1106 116F 11B1 BB5B -> 1106 116F 11B2 BB5C -> 1106 116F 11B3 BB5D -> 1106 116F 11B4 BB5E -> 1106 116F 11B5 BB5F -> 1106 116F 11B6 BB60 -> 1106 116F 11B7 BB61 -> 1106 116F 11B8 BB62 -> 1106 116F 11B9 BB63 -> 1106 116F 11BA BB64 -> 1106 116F 11BB BB65 -> 1106 116F 11BC BB66 -> 1106 116F 11BD BB67 -> 1106 116F 11BE BB68 -> 1106 116F 11BF BB69 -> 1106 116F 11C0 BB6A -> 1106 116F 11C1 BB6B -> 1106 116F 11C2 BB6C -> 1106 1170 BB6D -> 1106 1170 11A8 BB6E -> 1106 1170 11A9 BB6F -> 1106 1170 11AA BB70 -> 1106 1170 11AB BB71 -> 1106 1170 11AC BB72 -> 1106 1170 11AD BB73 -> 1106 1170 11AE BB74 -> 1106 1170 11AF BB75 -> 1106 1170 11B0 BB76 -> 1106 1170 11B1 BB77 -> 1106 1170 11B2 BB78 -> 1106 1170 11B3 BB79 -> 1106 1170 11B4 BB7A -> 1106 1170 11B5 BB7B -> 1106 1170 11B6 BB7C -> 1106 1170 11B7 BB7D -> 1106 1170 11B8 BB7E -> 1106 1170 11B9 BB7F -> 1106 1170 11BA BB80 -> 1106 1170 11BB BB81 -> 1106 1170 11BC BB82 -> 1106 1170 11BD BB83 -> 1106 1170 11BE BB84 -> 1106 1170 11BF BB85 -> 1106 1170 11C0 BB86 -> 1106 1170 11C1 BB87 -> 1106 1170 11C2 BB88 -> 1106 1171 BB89 -> 1106 1171 11A8 BB8A -> 1106 1171 11A9 BB8B -> 1106 1171 11AA BB8C -> 1106 1171 11AB BB8D -> 1106 1171 11AC BB8E -> 1106 1171 11AD BB8F -> 1106 1171 11AE BB90 -> 1106 1171 11AF BB91 -> 1106 1171 11B0 BB92 -> 1106 1171 11B1 BB93 -> 1106 1171 11B2 BB94 -> 1106 1171 11B3 BB95 -> 1106 1171 11B4 BB96 -> 1106 1171 11B5 BB97 -> 1106 1171 11B6 BB98 -> 1106 1171 11B7 BB99 -> 1106 1171 11B8 BB9A -> 1106 1171 11B9 BB9B -> 1106 1171 11BA BB9C -> 1106 1171 11BB BB9D -> 1106 1171 11BC BB9E -> 1106 1171 11BD BB9F -> 1106 1171 11BE BBA0 -> 1106 1171 11BF BBA1 -> 1106 1171 11C0 BBA2 -> 1106 1171 11C1 BBA3 -> 1106 1171 11C2 BBA4 -> 1106 1172 BBA5 -> 1106 1172 11A8 BBA6 -> 1106 1172 11A9 BBA7 -> 1106 1172 11AA BBA8 -> 1106 1172 11AB BBA9 -> 1106 1172 11AC BBAA -> 1106 1172 11AD BBAB -> 1106 1172 11AE BBAC -> 1106 1172 11AF BBAD -> 1106 1172 11B0 BBAE -> 1106 1172 11B1 BBAF -> 1106 1172 11B2 BBB0 -> 1106 1172 11B3 BBB1 -> 1106 1172 11B4 BBB2 -> 1106 1172 11B5 BBB3 -> 1106 1172 11B6 BBB4 -> 1106 1172 11B7 BBB5 -> 1106 1172 11B8 BBB6 -> 1106 1172 11B9 BBB7 -> 1106 1172 11BA BBB8 -> 1106 1172 11BB BBB9 -> 1106 1172 11BC BBBA -> 1106 1172 11BD BBBB -> 1106 1172 11BE BBBC -> 1106 1172 11BF BBBD -> 1106 1172 11C0 BBBE -> 1106 1172 11C1 BBBF -> 1106 1172 11C2 BBC0 -> 1106 1173 BBC1 -> 1106 1173 11A8 BBC2 -> 1106 1173 11A9 BBC3 -> 1106 1173 11AA BBC4 -> 1106 1173 11AB BBC5 -> 1106 1173 11AC BBC6 -> 1106 1173 11AD BBC7 -> 1106 1173 11AE BBC8 -> 1106 1173 11AF BBC9 -> 1106 1173 11B0 BBCA -> 1106 1173 11B1 BBCB -> 1106 1173 11B2 BBCC -> 1106 1173 11B3 BBCD -> 1106 1173 11B4 BBCE -> 1106 1173 11B5 BBCF -> 1106 1173 11B6 BBD0 -> 1106 1173 11B7 BBD1 -> 1106 1173 11B8 BBD2 -> 1106 1173 11B9 BBD3 -> 1106 1173 11BA BBD4 -> 1106 1173 11BB BBD5 -> 1106 1173 11BC BBD6 -> 1106 1173 11BD BBD7 -> 1106 1173 11BE BBD8 -> 1106 1173 11BF BBD9 -> 1106 1173 11C0 BBDA -> 1106 1173 11C1 BBDB -> 1106 1173 11C2 BBDC -> 1106 1174 BBDD -> 1106 1174 11A8 BBDE -> 1106 1174 11A9 BBDF -> 1106 1174 11AA BBE0 -> 1106 1174 11AB BBE1 -> 1106 1174 11AC BBE2 -> 1106 1174 11AD BBE3 -> 1106 1174 11AE BBE4 -> 1106 1174 11AF BBE5 -> 1106 1174 11B0 BBE6 -> 1106 1174 11B1 BBE7 -> 1106 1174 11B2 BBE8 -> 1106 1174 11B3 BBE9 -> 1106 1174 11B4 BBEA -> 1106 1174 11B5 BBEB -> 1106 1174 11B6 BBEC -> 1106 1174 11B7 BBED -> 1106 1174 11B8 BBEE -> 1106 1174 11B9 BBEF -> 1106 1174 11BA BBF0 -> 1106 1174 11BB BBF1 -> 1106 1174 11BC BBF2 -> 1106 1174 11BD BBF3 -> 1106 1174 11BE BBF4 -> 1106 1174 11BF BBF5 -> 1106 1174 11C0 BBF6 -> 1106 1174 11C1 BBF7 -> 1106 1174 11C2 BBF8 -> 1106 1175 BBF9 -> 1106 1175 11A8 BBFA -> 1106 1175 11A9 BBFB -> 1106 1175 11AA BBFC -> 1106 1175 11AB BBFD -> 1106 1175 11AC BBFE -> 1106 1175 11AD BBFF -> 1106 1175 11AE BC00 -> 1106 1175 11AF BC01 -> 1106 1175 11B0 BC02 -> 1106 1175 11B1 BC03 -> 1106 1175 11B2 BC04 -> 1106 1175 11B3 BC05 -> 1106 1175 11B4 BC06 -> 1106 1175 11B5 BC07 -> 1106 1175 11B6 BC08 -> 1106 1175 11B7 BC09 -> 1106 1175 11B8 BC0A -> 1106 1175 11B9 BC0B -> 1106 1175 11BA BC0C -> 1106 1175 11BB BC0D -> 1106 1175 11BC BC0E -> 1106 1175 11BD BC0F -> 1106 1175 11BE BC10 -> 1106 1175 11BF BC11 -> 1106 1175 11C0 BC12 -> 1106 1175 11C1 BC13 -> 1106 1175 11C2 BC14 -> 1107 1161 BC15 -> 1107 1161 11A8 BC16 -> 1107 1161 11A9 BC17 -> 1107 1161 11AA BC18 -> 1107 1161 11AB BC19 -> 1107 1161 11AC BC1A -> 1107 1161 11AD BC1B -> 1107 1161 11AE BC1C -> 1107 1161 11AF BC1D -> 1107 1161 11B0 BC1E -> 1107 1161 11B1 BC1F -> 1107 1161 11B2 BC20 -> 1107 1161 11B3 BC21 -> 1107 1161 11B4 BC22 -> 1107 1161 11B5 BC23 -> 1107 1161 11B6 BC24 -> 1107 1161 11B7 BC25 -> 1107 1161 11B8 BC26 -> 1107 1161 11B9 BC27 -> 1107 1161 11BA BC28 -> 1107 1161 11BB BC29 -> 1107 1161 11BC BC2A -> 1107 1161 11BD BC2B -> 1107 1161 11BE BC2C -> 1107 1161 11BF BC2D -> 1107 1161 11C0 BC2E -> 1107 1161 11C1 BC2F -> 1107 1161 11C2 BC30 -> 1107 1162 BC31 -> 1107 1162 11A8 BC32 -> 1107 1162 11A9 BC33 -> 1107 1162 11AA BC34 -> 1107 1162 11AB BC35 -> 1107 1162 11AC BC36 -> 1107 1162 11AD BC37 -> 1107 1162 11AE BC38 -> 1107 1162 11AF BC39 -> 1107 1162 11B0 BC3A -> 1107 1162 11B1 BC3B -> 1107 1162 11B2 BC3C -> 1107 1162 11B3 BC3D -> 1107 1162 11B4 BC3E -> 1107 1162 11B5 BC3F -> 1107 1162 11B6 BC40 -> 1107 1162 11B7 BC41 -> 1107 1162 11B8 BC42 -> 1107 1162 11B9 BC43 -> 1107 1162 11BA BC44 -> 1107 1162 11BB BC45 -> 1107 1162 11BC BC46 -> 1107 1162 11BD BC47 -> 1107 1162 11BE BC48 -> 1107 1162 11BF BC49 -> 1107 1162 11C0 BC4A -> 1107 1162 11C1 BC4B -> 1107 1162 11C2 BC4C -> 1107 1163 BC4D -> 1107 1163 11A8 BC4E -> 1107 1163 11A9 BC4F -> 1107 1163 11AA BC50 -> 1107 1163 11AB BC51 -> 1107 1163 11AC BC52 -> 1107 1163 11AD BC53 -> 1107 1163 11AE BC54 -> 1107 1163 11AF BC55 -> 1107 1163 11B0 BC56 -> 1107 1163 11B1 BC57 -> 1107 1163 11B2 BC58 -> 1107 1163 11B3 BC59 -> 1107 1163 11B4 BC5A -> 1107 1163 11B5 BC5B -> 1107 1163 11B6 BC5C -> 1107 1163 11B7 BC5D -> 1107 1163 11B8 BC5E -> 1107 1163 11B9 BC5F -> 1107 1163 11BA BC60 -> 1107 1163 11BB BC61 -> 1107 1163 11BC BC62 -> 1107 1163 11BD BC63 -> 1107 1163 11BE BC64 -> 1107 1163 11BF BC65 -> 1107 1163 11C0 BC66 -> 1107 1163 11C1 BC67 -> 1107 1163 11C2 BC68 -> 1107 1164 BC69 -> 1107 1164 11A8 BC6A -> 1107 1164 11A9 BC6B -> 1107 1164 11AA BC6C -> 1107 1164 11AB BC6D -> 1107 1164 11AC BC6E -> 1107 1164 11AD BC6F -> 1107 1164 11AE BC70 -> 1107 1164 11AF BC71 -> 1107 1164 11B0 BC72 -> 1107 1164 11B1 BC73 -> 1107 1164 11B2 BC74 -> 1107 1164 11B3 BC75 -> 1107 1164 11B4 BC76 -> 1107 1164 11B5 BC77 -> 1107 1164 11B6 BC78 -> 1107 1164 11B7 BC79 -> 1107 1164 11B8 BC7A -> 1107 1164 11B9 BC7B -> 1107 1164 11BA BC7C -> 1107 1164 11BB BC7D -> 1107 1164 11BC BC7E -> 1107 1164 11BD BC7F -> 1107 1164 11BE BC80 -> 1107 1164 11BF BC81 -> 1107 1164 11C0 BC82 -> 1107 1164 11C1 BC83 -> 1107 1164 11C2 BC84 -> 1107 1165 BC85 -> 1107 1165 11A8 BC86 -> 1107 1165 11A9 BC87 -> 1107 1165 11AA BC88 -> 1107 1165 11AB BC89 -> 1107 1165 11AC BC8A -> 1107 1165 11AD BC8B -> 1107 1165 11AE BC8C -> 1107 1165 11AF BC8D -> 1107 1165 11B0 BC8E -> 1107 1165 11B1 BC8F -> 1107 1165 11B2 BC90 -> 1107 1165 11B3 BC91 -> 1107 1165 11B4 BC92 -> 1107 1165 11B5 BC93 -> 1107 1165 11B6 BC94 -> 1107 1165 11B7 BC95 -> 1107 1165 11B8 BC96 -> 1107 1165 11B9 BC97 -> 1107 1165 11BA BC98 -> 1107 1165 11BB BC99 -> 1107 1165 11BC BC9A -> 1107 1165 11BD BC9B -> 1107 1165 11BE BC9C -> 1107 1165 11BF BC9D -> 1107 1165 11C0 BC9E -> 1107 1165 11C1 BC9F -> 1107 1165 11C2 BCA0 -> 1107 1166 BCA1 -> 1107 1166 11A8 BCA2 -> 1107 1166 11A9 BCA3 -> 1107 1166 11AA BCA4 -> 1107 1166 11AB BCA5 -> 1107 1166 11AC BCA6 -> 1107 1166 11AD BCA7 -> 1107 1166 11AE BCA8 -> 1107 1166 11AF BCA9 -> 1107 1166 11B0 BCAA -> 1107 1166 11B1 BCAB -> 1107 1166 11B2 BCAC -> 1107 1166 11B3 BCAD -> 1107 1166 11B4 BCAE -> 1107 1166 11B5 BCAF -> 1107 1166 11B6 BCB0 -> 1107 1166 11B7 BCB1 -> 1107 1166 11B8 BCB2 -> 1107 1166 11B9 BCB3 -> 1107 1166 11BA BCB4 -> 1107 1166 11BB BCB5 -> 1107 1166 11BC BCB6 -> 1107 1166 11BD BCB7 -> 1107 1166 11BE BCB8 -> 1107 1166 11BF BCB9 -> 1107 1166 11C0 BCBA -> 1107 1166 11C1 BCBB -> 1107 1166 11C2 BCBC -> 1107 1167 BCBD -> 1107 1167 11A8 BCBE -> 1107 1167 11A9 BCBF -> 1107 1167 11AA BCC0 -> 1107 1167 11AB BCC1 -> 1107 1167 11AC BCC2 -> 1107 1167 11AD BCC3 -> 1107 1167 11AE BCC4 -> 1107 1167 11AF BCC5 -> 1107 1167 11B0 BCC6 -> 1107 1167 11B1 BCC7 -> 1107 1167 11B2 BCC8 -> 1107 1167 11B3 BCC9 -> 1107 1167 11B4 BCCA -> 1107 1167 11B5 BCCB -> 1107 1167 11B6 BCCC -> 1107 1167 11B7 BCCD -> 1107 1167 11B8 BCCE -> 1107 1167 11B9 BCCF -> 1107 1167 11BA BCD0 -> 1107 1167 11BB BCD1 -> 1107 1167 11BC BCD2 -> 1107 1167 11BD BCD3 -> 1107 1167 11BE BCD4 -> 1107 1167 11BF BCD5 -> 1107 1167 11C0 BCD6 -> 1107 1167 11C1 BCD7 -> 1107 1167 11C2 BCD8 -> 1107 1168 BCD9 -> 1107 1168 11A8 BCDA -> 1107 1168 11A9 BCDB -> 1107 1168 11AA BCDC -> 1107 1168 11AB BCDD -> 1107 1168 11AC BCDE -> 1107 1168 11AD BCDF -> 1107 1168 11AE BCE0 -> 1107 1168 11AF BCE1 -> 1107 1168 11B0 BCE2 -> 1107 1168 11B1 BCE3 -> 1107 1168 11B2 BCE4 -> 1107 1168 11B3 BCE5 -> 1107 1168 11B4 BCE6 -> 1107 1168 11B5 BCE7 -> 1107 1168 11B6 BCE8 -> 1107 1168 11B7 BCE9 -> 1107 1168 11B8 BCEA -> 1107 1168 11B9 BCEB -> 1107 1168 11BA BCEC -> 1107 1168 11BB BCED -> 1107 1168 11BC BCEE -> 1107 1168 11BD BCEF -> 1107 1168 11BE BCF0 -> 1107 1168 11BF BCF1 -> 1107 1168 11C0 BCF2 -> 1107 1168 11C1 BCF3 -> 1107 1168 11C2 BCF4 -> 1107 1169 BCF5 -> 1107 1169 11A8 BCF6 -> 1107 1169 11A9 BCF7 -> 1107 1169 11AA BCF8 -> 1107 1169 11AB BCF9 -> 1107 1169 11AC BCFA -> 1107 1169 11AD BCFB -> 1107 1169 11AE BCFC -> 1107 1169 11AF BCFD -> 1107 1169 11B0 BCFE -> 1107 1169 11B1 BCFF -> 1107 1169 11B2 BD00 -> 1107 1169 11B3 BD01 -> 1107 1169 11B4 BD02 -> 1107 1169 11B5 BD03 -> 1107 1169 11B6 BD04 -> 1107 1169 11B7 BD05 -> 1107 1169 11B8 BD06 -> 1107 1169 11B9 BD07 -> 1107 1169 11BA BD08 -> 1107 1169 11BB BD09 -> 1107 1169 11BC BD0A -> 1107 1169 11BD BD0B -> 1107 1169 11BE BD0C -> 1107 1169 11BF BD0D -> 1107 1169 11C0 BD0E -> 1107 1169 11C1 BD0F -> 1107 1169 11C2 BD10 -> 1107 116A BD11 -> 1107 116A 11A8 BD12 -> 1107 116A 11A9 BD13 -> 1107 116A 11AA BD14 -> 1107 116A 11AB BD15 -> 1107 116A 11AC BD16 -> 1107 116A 11AD BD17 -> 1107 116A 11AE BD18 -> 1107 116A 11AF BD19 -> 1107 116A 11B0 BD1A -> 1107 116A 11B1 BD1B -> 1107 116A 11B2 BD1C -> 1107 116A 11B3 BD1D -> 1107 116A 11B4 BD1E -> 1107 116A 11B5 BD1F -> 1107 116A 11B6 BD20 -> 1107 116A 11B7 BD21 -> 1107 116A 11B8 BD22 -> 1107 116A 11B9 BD23 -> 1107 116A 11BA BD24 -> 1107 116A 11BB BD25 -> 1107 116A 11BC BD26 -> 1107 116A 11BD BD27 -> 1107 116A 11BE BD28 -> 1107 116A 11BF BD29 -> 1107 116A 11C0 BD2A -> 1107 116A 11C1 BD2B -> 1107 116A 11C2 BD2C -> 1107 116B BD2D -> 1107 116B 11A8 BD2E -> 1107 116B 11A9 BD2F -> 1107 116B 11AA BD30 -> 1107 116B 11AB BD31 -> 1107 116B 11AC BD32 -> 1107 116B 11AD BD33 -> 1107 116B 11AE BD34 -> 1107 116B 11AF BD35 -> 1107 116B 11B0 BD36 -> 1107 116B 11B1 BD37 -> 1107 116B 11B2 BD38 -> 1107 116B 11B3 BD39 -> 1107 116B 11B4 BD3A -> 1107 116B 11B5 BD3B -> 1107 116B 11B6 BD3C -> 1107 116B 11B7 BD3D -> 1107 116B 11B8 BD3E -> 1107 116B 11B9 BD3F -> 1107 116B 11BA BD40 -> 1107 116B 11BB BD41 -> 1107 116B 11BC BD42 -> 1107 116B 11BD BD43 -> 1107 116B 11BE BD44 -> 1107 116B 11BF BD45 -> 1107 116B 11C0 BD46 -> 1107 116B 11C1 BD47 -> 1107 116B 11C2 BD48 -> 1107 116C BD49 -> 1107 116C 11A8 BD4A -> 1107 116C 11A9 BD4B -> 1107 116C 11AA BD4C -> 1107 116C 11AB BD4D -> 1107 116C 11AC BD4E -> 1107 116C 11AD BD4F -> 1107 116C 11AE BD50 -> 1107 116C 11AF BD51 -> 1107 116C 11B0 BD52 -> 1107 116C 11B1 BD53 -> 1107 116C 11B2 BD54 -> 1107 116C 11B3 BD55 -> 1107 116C 11B4 BD56 -> 1107 116C 11B5 BD57 -> 1107 116C 11B6 BD58 -> 1107 116C 11B7 BD59 -> 1107 116C 11B8 BD5A -> 1107 116C 11B9 BD5B -> 1107 116C 11BA BD5C -> 1107 116C 11BB BD5D -> 1107 116C 11BC BD5E -> 1107 116C 11BD BD5F -> 1107 116C 11BE BD60 -> 1107 116C 11BF BD61 -> 1107 116C 11C0 BD62 -> 1107 116C 11C1 BD63 -> 1107 116C 11C2 BD64 -> 1107 116D BD65 -> 1107 116D 11A8 BD66 -> 1107 116D 11A9 BD67 -> 1107 116D 11AA BD68 -> 1107 116D 11AB BD69 -> 1107 116D 11AC BD6A -> 1107 116D 11AD BD6B -> 1107 116D 11AE BD6C -> 1107 116D 11AF BD6D -> 1107 116D 11B0 BD6E -> 1107 116D 11B1 BD6F -> 1107 116D 11B2 BD70 -> 1107 116D 11B3 BD71 -> 1107 116D 11B4 BD72 -> 1107 116D 11B5 BD73 -> 1107 116D 11B6 BD74 -> 1107 116D 11B7 BD75 -> 1107 116D 11B8 BD76 -> 1107 116D 11B9 BD77 -> 1107 116D 11BA BD78 -> 1107 116D 11BB BD79 -> 1107 116D 11BC BD7A -> 1107 116D 11BD BD7B -> 1107 116D 11BE BD7C -> 1107 116D 11BF BD7D -> 1107 116D 11C0 BD7E -> 1107 116D 11C1 BD7F -> 1107 116D 11C2 BD80 -> 1107 116E BD81 -> 1107 116E 11A8 BD82 -> 1107 116E 11A9 BD83 -> 1107 116E 11AA BD84 -> 1107 116E 11AB BD85 -> 1107 116E 11AC BD86 -> 1107 116E 11AD BD87 -> 1107 116E 11AE BD88 -> 1107 116E 11AF BD89 -> 1107 116E 11B0 BD8A -> 1107 116E 11B1 BD8B -> 1107 116E 11B2 BD8C -> 1107 116E 11B3 BD8D -> 1107 116E 11B4 BD8E -> 1107 116E 11B5 BD8F -> 1107 116E 11B6 BD90 -> 1107 116E 11B7 BD91 -> 1107 116E 11B8 BD92 -> 1107 116E 11B9 BD93 -> 1107 116E 11BA BD94 -> 1107 116E 11BB BD95 -> 1107 116E 11BC BD96 -> 1107 116E 11BD BD97 -> 1107 116E 11BE BD98 -> 1107 116E 11BF BD99 -> 1107 116E 11C0 BD9A -> 1107 116E 11C1 BD9B -> 1107 116E 11C2 BD9C -> 1107 116F BD9D -> 1107 116F 11A8 BD9E -> 1107 116F 11A9 BD9F -> 1107 116F 11AA BDA0 -> 1107 116F 11AB BDA1 -> 1107 116F 11AC BDA2 -> 1107 116F 11AD BDA3 -> 1107 116F 11AE BDA4 -> 1107 116F 11AF BDA5 -> 1107 116F 11B0 BDA6 -> 1107 116F 11B1 BDA7 -> 1107 116F 11B2 BDA8 -> 1107 116F 11B3 BDA9 -> 1107 116F 11B4 BDAA -> 1107 116F 11B5 BDAB -> 1107 116F 11B6 BDAC -> 1107 116F 11B7 BDAD -> 1107 116F 11B8 BDAE -> 1107 116F 11B9 BDAF -> 1107 116F 11BA BDB0 -> 1107 116F 11BB BDB1 -> 1107 116F 11BC BDB2 -> 1107 116F 11BD BDB3 -> 1107 116F 11BE BDB4 -> 1107 116F 11BF BDB5 -> 1107 116F 11C0 BDB6 -> 1107 116F 11C1 BDB7 -> 1107 116F 11C2 BDB8 -> 1107 1170 BDB9 -> 1107 1170 11A8 BDBA -> 1107 1170 11A9 BDBB -> 1107 1170 11AA BDBC -> 1107 1170 11AB BDBD -> 1107 1170 11AC BDBE -> 1107 1170 11AD BDBF -> 1107 1170 11AE BDC0 -> 1107 1170 11AF BDC1 -> 1107 1170 11B0 BDC2 -> 1107 1170 11B1 BDC3 -> 1107 1170 11B2 BDC4 -> 1107 1170 11B3 BDC5 -> 1107 1170 11B4 BDC6 -> 1107 1170 11B5 BDC7 -> 1107 1170 11B6 BDC8 -> 1107 1170 11B7 BDC9 -> 1107 1170 11B8 BDCA -> 1107 1170 11B9 BDCB -> 1107 1170 11BA BDCC -> 1107 1170 11BB BDCD -> 1107 1170 11BC BDCE -> 1107 1170 11BD BDCF -> 1107 1170 11BE BDD0 -> 1107 1170 11BF BDD1 -> 1107 1170 11C0 BDD2 -> 1107 1170 11C1 BDD3 -> 1107 1170 11C2 BDD4 -> 1107 1171 BDD5 -> 1107 1171 11A8 BDD6 -> 1107 1171 11A9 BDD7 -> 1107 1171 11AA BDD8 -> 1107 1171 11AB BDD9 -> 1107 1171 11AC BDDA -> 1107 1171 11AD BDDB -> 1107 1171 11AE BDDC -> 1107 1171 11AF BDDD -> 1107 1171 11B0 BDDE -> 1107 1171 11B1 BDDF -> 1107 1171 11B2 BDE0 -> 1107 1171 11B3 BDE1 -> 1107 1171 11B4 BDE2 -> 1107 1171 11B5 BDE3 -> 1107 1171 11B6 BDE4 -> 1107 1171 11B7 BDE5 -> 1107 1171 11B8 BDE6 -> 1107 1171 11B9 BDE7 -> 1107 1171 11BA BDE8 -> 1107 1171 11BB BDE9 -> 1107 1171 11BC BDEA -> 1107 1171 11BD BDEB -> 1107 1171 11BE BDEC -> 1107 1171 11BF BDED -> 1107 1171 11C0 BDEE -> 1107 1171 11C1 BDEF -> 1107 1171 11C2 BDF0 -> 1107 1172 BDF1 -> 1107 1172 11A8 BDF2 -> 1107 1172 11A9 BDF3 -> 1107 1172 11AA BDF4 -> 1107 1172 11AB BDF5 -> 1107 1172 11AC BDF6 -> 1107 1172 11AD BDF7 -> 1107 1172 11AE BDF8 -> 1107 1172 11AF BDF9 -> 1107 1172 11B0 BDFA -> 1107 1172 11B1 BDFB -> 1107 1172 11B2 BDFC -> 1107 1172 11B3 BDFD -> 1107 1172 11B4 BDFE -> 1107 1172 11B5 BDFF -> 1107 1172 11B6 BE00 -> 1107 1172 11B7 BE01 -> 1107 1172 11B8 BE02 -> 1107 1172 11B9 BE03 -> 1107 1172 11BA BE04 -> 1107 1172 11BB BE05 -> 1107 1172 11BC BE06 -> 1107 1172 11BD BE07 -> 1107 1172 11BE BE08 -> 1107 1172 11BF BE09 -> 1107 1172 11C0 BE0A -> 1107 1172 11C1 BE0B -> 1107 1172 11C2 BE0C -> 1107 1173 BE0D -> 1107 1173 11A8 BE0E -> 1107 1173 11A9 BE0F -> 1107 1173 11AA BE10 -> 1107 1173 11AB BE11 -> 1107 1173 11AC BE12 -> 1107 1173 11AD BE13 -> 1107 1173 11AE BE14 -> 1107 1173 11AF BE15 -> 1107 1173 11B0 BE16 -> 1107 1173 11B1 BE17 -> 1107 1173 11B2 BE18 -> 1107 1173 11B3 BE19 -> 1107 1173 11B4 BE1A -> 1107 1173 11B5 BE1B -> 1107 1173 11B6 BE1C -> 1107 1173 11B7 BE1D -> 1107 1173 11B8 BE1E -> 1107 1173 11B9 BE1F -> 1107 1173 11BA BE20 -> 1107 1173 11BB BE21 -> 1107 1173 11BC BE22 -> 1107 1173 11BD BE23 -> 1107 1173 11BE BE24 -> 1107 1173 11BF BE25 -> 1107 1173 11C0 BE26 -> 1107 1173 11C1 BE27 -> 1107 1173 11C2 BE28 -> 1107 1174 BE29 -> 1107 1174 11A8 BE2A -> 1107 1174 11A9 BE2B -> 1107 1174 11AA BE2C -> 1107 1174 11AB BE2D -> 1107 1174 11AC BE2E -> 1107 1174 11AD BE2F -> 1107 1174 11AE BE30 -> 1107 1174 11AF BE31 -> 1107 1174 11B0 BE32 -> 1107 1174 11B1 BE33 -> 1107 1174 11B2 BE34 -> 1107 1174 11B3 BE35 -> 1107 1174 11B4 BE36 -> 1107 1174 11B5 BE37 -> 1107 1174 11B6 BE38 -> 1107 1174 11B7 BE39 -> 1107 1174 11B8 BE3A -> 1107 1174 11B9 BE3B -> 1107 1174 11BA BE3C -> 1107 1174 11BB BE3D -> 1107 1174 11BC BE3E -> 1107 1174 11BD BE3F -> 1107 1174 11BE BE40 -> 1107 1174 11BF BE41 -> 1107 1174 11C0 BE42 -> 1107 1174 11C1 BE43 -> 1107 1174 11C2 BE44 -> 1107 1175 BE45 -> 1107 1175 11A8 BE46 -> 1107 1175 11A9 BE47 -> 1107 1175 11AA BE48 -> 1107 1175 11AB BE49 -> 1107 1175 11AC BE4A -> 1107 1175 11AD BE4B -> 1107 1175 11AE BE4C -> 1107 1175 11AF BE4D -> 1107 1175 11B0 BE4E -> 1107 1175 11B1 BE4F -> 1107 1175 11B2 BE50 -> 1107 1175 11B3 BE51 -> 1107 1175 11B4 BE52 -> 1107 1175 11B5 BE53 -> 1107 1175 11B6 BE54 -> 1107 1175 11B7 BE55 -> 1107 1175 11B8 BE56 -> 1107 1175 11B9 BE57 -> 1107 1175 11BA BE58 -> 1107 1175 11BB BE59 -> 1107 1175 11BC BE5A -> 1107 1175 11BD BE5B -> 1107 1175 11BE BE5C -> 1107 1175 11BF BE5D -> 1107 1175 11C0 BE5E -> 1107 1175 11C1 BE5F -> 1107 1175 11C2 BE60 -> 1108 1161 BE61 -> 1108 1161 11A8 BE62 -> 1108 1161 11A9 BE63 -> 1108 1161 11AA BE64 -> 1108 1161 11AB BE65 -> 1108 1161 11AC BE66 -> 1108 1161 11AD BE67 -> 1108 1161 11AE BE68 -> 1108 1161 11AF BE69 -> 1108 1161 11B0 BE6A -> 1108 1161 11B1 BE6B -> 1108 1161 11B2 BE6C -> 1108 1161 11B3 BE6D -> 1108 1161 11B4 BE6E -> 1108 1161 11B5 BE6F -> 1108 1161 11B6 BE70 -> 1108 1161 11B7 BE71 -> 1108 1161 11B8 BE72 -> 1108 1161 11B9 BE73 -> 1108 1161 11BA BE74 -> 1108 1161 11BB BE75 -> 1108 1161 11BC BE76 -> 1108 1161 11BD BE77 -> 1108 1161 11BE BE78 -> 1108 1161 11BF BE79 -> 1108 1161 11C0 BE7A -> 1108 1161 11C1 BE7B -> 1108 1161 11C2 BE7C -> 1108 1162 BE7D -> 1108 1162 11A8 BE7E -> 1108 1162 11A9 BE7F -> 1108 1162 11AA BE80 -> 1108 1162 11AB BE81 -> 1108 1162 11AC BE82 -> 1108 1162 11AD BE83 -> 1108 1162 11AE BE84 -> 1108 1162 11AF BE85 -> 1108 1162 11B0 BE86 -> 1108 1162 11B1 BE87 -> 1108 1162 11B2 BE88 -> 1108 1162 11B3 BE89 -> 1108 1162 11B4 BE8A -> 1108 1162 11B5 BE8B -> 1108 1162 11B6 BE8C -> 1108 1162 11B7 BE8D -> 1108 1162 11B8 BE8E -> 1108 1162 11B9 BE8F -> 1108 1162 11BA BE90 -> 1108 1162 11BB BE91 -> 1108 1162 11BC BE92 -> 1108 1162 11BD BE93 -> 1108 1162 11BE BE94 -> 1108 1162 11BF BE95 -> 1108 1162 11C0 BE96 -> 1108 1162 11C1 BE97 -> 1108 1162 11C2 BE98 -> 1108 1163 BE99 -> 1108 1163 11A8 BE9A -> 1108 1163 11A9 BE9B -> 1108 1163 11AA BE9C -> 1108 1163 11AB BE9D -> 1108 1163 11AC BE9E -> 1108 1163 11AD BE9F -> 1108 1163 11AE BEA0 -> 1108 1163 11AF BEA1 -> 1108 1163 11B0 BEA2 -> 1108 1163 11B1 BEA3 -> 1108 1163 11B2 BEA4 -> 1108 1163 11B3 BEA5 -> 1108 1163 11B4 BEA6 -> 1108 1163 11B5 BEA7 -> 1108 1163 11B6 BEA8 -> 1108 1163 11B7 BEA9 -> 1108 1163 11B8 BEAA -> 1108 1163 11B9 BEAB -> 1108 1163 11BA BEAC -> 1108 1163 11BB BEAD -> 1108 1163 11BC BEAE -> 1108 1163 11BD BEAF -> 1108 1163 11BE BEB0 -> 1108 1163 11BF BEB1 -> 1108 1163 11C0 BEB2 -> 1108 1163 11C1 BEB3 -> 1108 1163 11C2 BEB4 -> 1108 1164 BEB5 -> 1108 1164 11A8 BEB6 -> 1108 1164 11A9 BEB7 -> 1108 1164 11AA BEB8 -> 1108 1164 11AB BEB9 -> 1108 1164 11AC BEBA -> 1108 1164 11AD BEBB -> 1108 1164 11AE BEBC -> 1108 1164 11AF BEBD -> 1108 1164 11B0 BEBE -> 1108 1164 11B1 BEBF -> 1108 1164 11B2 BEC0 -> 1108 1164 11B3 BEC1 -> 1108 1164 11B4 BEC2 -> 1108 1164 11B5 BEC3 -> 1108 1164 11B6 BEC4 -> 1108 1164 11B7 BEC5 -> 1108 1164 11B8 BEC6 -> 1108 1164 11B9 BEC7 -> 1108 1164 11BA BEC8 -> 1108 1164 11BB BEC9 -> 1108 1164 11BC BECA -> 1108 1164 11BD BECB -> 1108 1164 11BE BECC -> 1108 1164 11BF BECD -> 1108 1164 11C0 BECE -> 1108 1164 11C1 BECF -> 1108 1164 11C2 BED0 -> 1108 1165 BED1 -> 1108 1165 11A8 BED2 -> 1108 1165 11A9 BED3 -> 1108 1165 11AA BED4 -> 1108 1165 11AB BED5 -> 1108 1165 11AC BED6 -> 1108 1165 11AD BED7 -> 1108 1165 11AE BED8 -> 1108 1165 11AF BED9 -> 1108 1165 11B0 BEDA -> 1108 1165 11B1 BEDB -> 1108 1165 11B2 BEDC -> 1108 1165 11B3 BEDD -> 1108 1165 11B4 BEDE -> 1108 1165 11B5 BEDF -> 1108 1165 11B6 BEE0 -> 1108 1165 11B7 BEE1 -> 1108 1165 11B8 BEE2 -> 1108 1165 11B9 BEE3 -> 1108 1165 11BA BEE4 -> 1108 1165 11BB BEE5 -> 1108 1165 11BC BEE6 -> 1108 1165 11BD BEE7 -> 1108 1165 11BE BEE8 -> 1108 1165 11BF BEE9 -> 1108 1165 11C0 BEEA -> 1108 1165 11C1 BEEB -> 1108 1165 11C2 BEEC -> 1108 1166 BEED -> 1108 1166 11A8 BEEE -> 1108 1166 11A9 BEEF -> 1108 1166 11AA BEF0 -> 1108 1166 11AB BEF1 -> 1108 1166 11AC BEF2 -> 1108 1166 11AD BEF3 -> 1108 1166 11AE BEF4 -> 1108 1166 11AF BEF5 -> 1108 1166 11B0 BEF6 -> 1108 1166 11B1 BEF7 -> 1108 1166 11B2 BEF8 -> 1108 1166 11B3 BEF9 -> 1108 1166 11B4 BEFA -> 1108 1166 11B5 BEFB -> 1108 1166 11B6 BEFC -> 1108 1166 11B7 BEFD -> 1108 1166 11B8 BEFE -> 1108 1166 11B9 BEFF -> 1108 1166 11BA BF00 -> 1108 1166 11BB BF01 -> 1108 1166 11BC BF02 -> 1108 1166 11BD BF03 -> 1108 1166 11BE BF04 -> 1108 1166 11BF BF05 -> 1108 1166 11C0 BF06 -> 1108 1166 11C1 BF07 -> 1108 1166 11C2 BF08 -> 1108 1167 BF09 -> 1108 1167 11A8 BF0A -> 1108 1167 11A9 BF0B -> 1108 1167 11AA BF0C -> 1108 1167 11AB BF0D -> 1108 1167 11AC BF0E -> 1108 1167 11AD BF0F -> 1108 1167 11AE BF10 -> 1108 1167 11AF BF11 -> 1108 1167 11B0 BF12 -> 1108 1167 11B1 BF13 -> 1108 1167 11B2 BF14 -> 1108 1167 11B3 BF15 -> 1108 1167 11B4 BF16 -> 1108 1167 11B5 BF17 -> 1108 1167 11B6 BF18 -> 1108 1167 11B7 BF19 -> 1108 1167 11B8 BF1A -> 1108 1167 11B9 BF1B -> 1108 1167 11BA BF1C -> 1108 1167 11BB BF1D -> 1108 1167 11BC BF1E -> 1108 1167 11BD BF1F -> 1108 1167 11BE BF20 -> 1108 1167 11BF BF21 -> 1108 1167 11C0 BF22 -> 1108 1167 11C1 BF23 -> 1108 1167 11C2 BF24 -> 1108 1168 BF25 -> 1108 1168 11A8 BF26 -> 1108 1168 11A9 BF27 -> 1108 1168 11AA BF28 -> 1108 1168 11AB BF29 -> 1108 1168 11AC BF2A -> 1108 1168 11AD BF2B -> 1108 1168 11AE BF2C -> 1108 1168 11AF BF2D -> 1108 1168 11B0 BF2E -> 1108 1168 11B1 BF2F -> 1108 1168 11B2 BF30 -> 1108 1168 11B3 BF31 -> 1108 1168 11B4 BF32 -> 1108 1168 11B5 BF33 -> 1108 1168 11B6 BF34 -> 1108 1168 11B7 BF35 -> 1108 1168 11B8 BF36 -> 1108 1168 11B9 BF37 -> 1108 1168 11BA BF38 -> 1108 1168 11BB BF39 -> 1108 1168 11BC BF3A -> 1108 1168 11BD BF3B -> 1108 1168 11BE BF3C -> 1108 1168 11BF BF3D -> 1108 1168 11C0 BF3E -> 1108 1168 11C1 BF3F -> 1108 1168 11C2 BF40 -> 1108 1169 BF41 -> 1108 1169 11A8 BF42 -> 1108 1169 11A9 BF43 -> 1108 1169 11AA BF44 -> 1108 1169 11AB BF45 -> 1108 1169 11AC BF46 -> 1108 1169 11AD BF47 -> 1108 1169 11AE BF48 -> 1108 1169 11AF BF49 -> 1108 1169 11B0 BF4A -> 1108 1169 11B1 BF4B -> 1108 1169 11B2 BF4C -> 1108 1169 11B3 BF4D -> 1108 1169 11B4 BF4E -> 1108 1169 11B5 BF4F -> 1108 1169 11B6 BF50 -> 1108 1169 11B7 BF51 -> 1108 1169 11B8 BF52 -> 1108 1169 11B9 BF53 -> 1108 1169 11BA BF54 -> 1108 1169 11BB BF55 -> 1108 1169 11BC BF56 -> 1108 1169 11BD BF57 -> 1108 1169 11BE BF58 -> 1108 1169 11BF BF59 -> 1108 1169 11C0 BF5A -> 1108 1169 11C1 BF5B -> 1108 1169 11C2 BF5C -> 1108 116A BF5D -> 1108 116A 11A8 BF5E -> 1108 116A 11A9 BF5F -> 1108 116A 11AA BF60 -> 1108 116A 11AB BF61 -> 1108 116A 11AC BF62 -> 1108 116A 11AD BF63 -> 1108 116A 11AE BF64 -> 1108 116A 11AF BF65 -> 1108 116A 11B0 BF66 -> 1108 116A 11B1 BF67 -> 1108 116A 11B2 BF68 -> 1108 116A 11B3 BF69 -> 1108 116A 11B4 BF6A -> 1108 116A 11B5 BF6B -> 1108 116A 11B6 BF6C -> 1108 116A 11B7 BF6D -> 1108 116A 11B8 BF6E -> 1108 116A 11B9 BF6F -> 1108 116A 11BA BF70 -> 1108 116A 11BB BF71 -> 1108 116A 11BC BF72 -> 1108 116A 11BD BF73 -> 1108 116A 11BE BF74 -> 1108 116A 11BF BF75 -> 1108 116A 11C0 BF76 -> 1108 116A 11C1 BF77 -> 1108 116A 11C2 BF78 -> 1108 116B BF79 -> 1108 116B 11A8 BF7A -> 1108 116B 11A9 BF7B -> 1108 116B 11AA BF7C -> 1108 116B 11AB BF7D -> 1108 116B 11AC BF7E -> 1108 116B 11AD BF7F -> 1108 116B 11AE BF80 -> 1108 116B 11AF BF81 -> 1108 116B 11B0 BF82 -> 1108 116B 11B1 BF83 -> 1108 116B 11B2 BF84 -> 1108 116B 11B3 BF85 -> 1108 116B 11B4 BF86 -> 1108 116B 11B5 BF87 -> 1108 116B 11B6 BF88 -> 1108 116B 11B7 BF89 -> 1108 116B 11B8 BF8A -> 1108 116B 11B9 BF8B -> 1108 116B 11BA BF8C -> 1108 116B 11BB BF8D -> 1108 116B 11BC BF8E -> 1108 116B 11BD BF8F -> 1108 116B 11BE BF90 -> 1108 116B 11BF BF91 -> 1108 116B 11C0 BF92 -> 1108 116B 11C1 BF93 -> 1108 116B 11C2 BF94 -> 1108 116C BF95 -> 1108 116C 11A8 BF96 -> 1108 116C 11A9 BF97 -> 1108 116C 11AA BF98 -> 1108 116C 11AB BF99 -> 1108 116C 11AC BF9A -> 1108 116C 11AD BF9B -> 1108 116C 11AE BF9C -> 1108 116C 11AF BF9D -> 1108 116C 11B0 BF9E -> 1108 116C 11B1 BF9F -> 1108 116C 11B2 BFA0 -> 1108 116C 11B3 BFA1 -> 1108 116C 11B4 BFA2 -> 1108 116C 11B5 BFA3 -> 1108 116C 11B6 BFA4 -> 1108 116C 11B7 BFA5 -> 1108 116C 11B8 BFA6 -> 1108 116C 11B9 BFA7 -> 1108 116C 11BA BFA8 -> 1108 116C 11BB BFA9 -> 1108 116C 11BC BFAA -> 1108 116C 11BD BFAB -> 1108 116C 11BE BFAC -> 1108 116C 11BF BFAD -> 1108 116C 11C0 BFAE -> 1108 116C 11C1 BFAF -> 1108 116C 11C2 BFB0 -> 1108 116D BFB1 -> 1108 116D 11A8 BFB2 -> 1108 116D 11A9 BFB3 -> 1108 116D 11AA BFB4 -> 1108 116D 11AB BFB5 -> 1108 116D 11AC BFB6 -> 1108 116D 11AD BFB7 -> 1108 116D 11AE BFB8 -> 1108 116D 11AF BFB9 -> 1108 116D 11B0 BFBA -> 1108 116D 11B1 BFBB -> 1108 116D 11B2 BFBC -> 1108 116D 11B3 BFBD -> 1108 116D 11B4 BFBE -> 1108 116D 11B5 BFBF -> 1108 116D 11B6 BFC0 -> 1108 116D 11B7 BFC1 -> 1108 116D 11B8 BFC2 -> 1108 116D 11B9 BFC3 -> 1108 116D 11BA BFC4 -> 1108 116D 11BB BFC5 -> 1108 116D 11BC BFC6 -> 1108 116D 11BD BFC7 -> 1108 116D 11BE BFC8 -> 1108 116D 11BF BFC9 -> 1108 116D 11C0 BFCA -> 1108 116D 11C1 BFCB -> 1108 116D 11C2 BFCC -> 1108 116E BFCD -> 1108 116E 11A8 BFCE -> 1108 116E 11A9 BFCF -> 1108 116E 11AA BFD0 -> 1108 116E 11AB BFD1 -> 1108 116E 11AC BFD2 -> 1108 116E 11AD BFD3 -> 1108 116E 11AE BFD4 -> 1108 116E 11AF BFD5 -> 1108 116E 11B0 BFD6 -> 1108 116E 11B1 BFD7 -> 1108 116E 11B2 BFD8 -> 1108 116E 11B3 BFD9 -> 1108 116E 11B4 BFDA -> 1108 116E 11B5 BFDB -> 1108 116E 11B6 BFDC -> 1108 116E 11B7 BFDD -> 1108 116E 11B8 BFDE -> 1108 116E 11B9 BFDF -> 1108 116E 11BA BFE0 -> 1108 116E 11BB BFE1 -> 1108 116E 11BC BFE2 -> 1108 116E 11BD BFE3 -> 1108 116E 11BE BFE4 -> 1108 116E 11BF BFE5 -> 1108 116E 11C0 BFE6 -> 1108 116E 11C1 BFE7 -> 1108 116E 11C2 BFE8 -> 1108 116F BFE9 -> 1108 116F 11A8 BFEA -> 1108 116F 11A9 BFEB -> 1108 116F 11AA BFEC -> 1108 116F 11AB BFED -> 1108 116F 11AC BFEE -> 1108 116F 11AD BFEF -> 1108 116F 11AE BFF0 -> 1108 116F 11AF BFF1 -> 1108 116F 11B0 BFF2 -> 1108 116F 11B1 BFF3 -> 1108 116F 11B2 BFF4 -> 1108 116F 11B3 BFF5 -> 1108 116F 11B4 BFF6 -> 1108 116F 11B5 BFF7 -> 1108 116F 11B6 BFF8 -> 1108 116F 11B7 BFF9 -> 1108 116F 11B8 BFFA -> 1108 116F 11B9 BFFB -> 1108 116F 11BA BFFC -> 1108 116F 11BB BFFD -> 1108 116F 11BC BFFE -> 1108 116F 11BD BFFF -> 1108 116F 11BE C000 -> 1108 116F 11BF C001 -> 1108 116F 11C0 C002 -> 1108 116F 11C1 C003 -> 1108 116F 11C2 C004 -> 1108 1170 C005 -> 1108 1170 11A8 C006 -> 1108 1170 11A9 C007 -> 1108 1170 11AA C008 -> 1108 1170 11AB C009 -> 1108 1170 11AC C00A -> 1108 1170 11AD C00B -> 1108 1170 11AE C00C -> 1108 1170 11AF C00D -> 1108 1170 11B0 C00E -> 1108 1170 11B1 C00F -> 1108 1170 11B2 C010 -> 1108 1170 11B3 C011 -> 1108 1170 11B4 C012 -> 1108 1170 11B5 C013 -> 1108 1170 11B6 C014 -> 1108 1170 11B7 C015 -> 1108 1170 11B8 C016 -> 1108 1170 11B9 C017 -> 1108 1170 11BA C018 -> 1108 1170 11BB C019 -> 1108 1170 11BC C01A -> 1108 1170 11BD C01B -> 1108 1170 11BE C01C -> 1108 1170 11BF C01D -> 1108 1170 11C0 C01E -> 1108 1170 11C1 C01F -> 1108 1170 11C2 C020 -> 1108 1171 C021 -> 1108 1171 11A8 C022 -> 1108 1171 11A9 C023 -> 1108 1171 11AA C024 -> 1108 1171 11AB C025 -> 1108 1171 11AC C026 -> 1108 1171 11AD C027 -> 1108 1171 11AE C028 -> 1108 1171 11AF C029 -> 1108 1171 11B0 C02A -> 1108 1171 11B1 C02B -> 1108 1171 11B2 C02C -> 1108 1171 11B3 C02D -> 1108 1171 11B4 C02E -> 1108 1171 11B5 C02F -> 1108 1171 11B6 C030 -> 1108 1171 11B7 C031 -> 1108 1171 11B8 C032 -> 1108 1171 11B9 C033 -> 1108 1171 11BA C034 -> 1108 1171 11BB C035 -> 1108 1171 11BC C036 -> 1108 1171 11BD C037 -> 1108 1171 11BE C038 -> 1108 1171 11BF C039 -> 1108 1171 11C0 C03A -> 1108 1171 11C1 C03B -> 1108 1171 11C2 C03C -> 1108 1172 C03D -> 1108 1172 11A8 C03E -> 1108 1172 11A9 C03F -> 1108 1172 11AA C040 -> 1108 1172 11AB C041 -> 1108 1172 11AC C042 -> 1108 1172 11AD C043 -> 1108 1172 11AE C044 -> 1108 1172 11AF C045 -> 1108 1172 11B0 C046 -> 1108 1172 11B1 C047 -> 1108 1172 11B2 C048 -> 1108 1172 11B3 C049 -> 1108 1172 11B4 C04A -> 1108 1172 11B5 C04B -> 1108 1172 11B6 C04C -> 1108 1172 11B7 C04D -> 1108 1172 11B8 C04E -> 1108 1172 11B9 C04F -> 1108 1172 11BA C050 -> 1108 1172 11BB C051 -> 1108 1172 11BC C052 -> 1108 1172 11BD C053 -> 1108 1172 11BE C054 -> 1108 1172 11BF C055 -> 1108 1172 11C0 C056 -> 1108 1172 11C1 C057 -> 1108 1172 11C2 C058 -> 1108 1173 C059 -> 1108 1173 11A8 C05A -> 1108 1173 11A9 C05B -> 1108 1173 11AA C05C -> 1108 1173 11AB C05D -> 1108 1173 11AC C05E -> 1108 1173 11AD C05F -> 1108 1173 11AE C060 -> 1108 1173 11AF C061 -> 1108 1173 11B0 C062 -> 1108 1173 11B1 C063 -> 1108 1173 11B2 C064 -> 1108 1173 11B3 C065 -> 1108 1173 11B4 C066 -> 1108 1173 11B5 C067 -> 1108 1173 11B6 C068 -> 1108 1173 11B7 C069 -> 1108 1173 11B8 C06A -> 1108 1173 11B9 C06B -> 1108 1173 11BA C06C -> 1108 1173 11BB C06D -> 1108 1173 11BC C06E -> 1108 1173 11BD C06F -> 1108 1173 11BE C070 -> 1108 1173 11BF C071 -> 1108 1173 11C0 C072 -> 1108 1173 11C1 C073 -> 1108 1173 11C2 C074 -> 1108 1174 C075 -> 1108 1174 11A8 C076 -> 1108 1174 11A9 C077 -> 1108 1174 11AA C078 -> 1108 1174 11AB C079 -> 1108 1174 11AC C07A -> 1108 1174 11AD C07B -> 1108 1174 11AE C07C -> 1108 1174 11AF C07D -> 1108 1174 11B0 C07E -> 1108 1174 11B1 C07F -> 1108 1174 11B2 C080 -> 1108 1174 11B3 C081 -> 1108 1174 11B4 C082 -> 1108 1174 11B5 C083 -> 1108 1174 11B6 C084 -> 1108 1174 11B7 C085 -> 1108 1174 11B8 C086 -> 1108 1174 11B9 C087 -> 1108 1174 11BA C088 -> 1108 1174 11BB C089 -> 1108 1174 11BC C08A -> 1108 1174 11BD C08B -> 1108 1174 11BE C08C -> 1108 1174 11BF C08D -> 1108 1174 11C0 C08E -> 1108 1174 11C1 C08F -> 1108 1174 11C2 C090 -> 1108 1175 C091 -> 1108 1175 11A8 C092 -> 1108 1175 11A9 C093 -> 1108 1175 11AA C094 -> 1108 1175 11AB C095 -> 1108 1175 11AC C096 -> 1108 1175 11AD C097 -> 1108 1175 11AE C098 -> 1108 1175 11AF C099 -> 1108 1175 11B0 C09A -> 1108 1175 11B1 C09B -> 1108 1175 11B2 C09C -> 1108 1175 11B3 C09D -> 1108 1175 11B4 C09E -> 1108 1175 11B5 C09F -> 1108 1175 11B6 C0A0 -> 1108 1175 11B7 C0A1 -> 1108 1175 11B8 C0A2 -> 1108 1175 11B9 C0A3 -> 1108 1175 11BA C0A4 -> 1108 1175 11BB C0A5 -> 1108 1175 11BC C0A6 -> 1108 1175 11BD C0A7 -> 1108 1175 11BE C0A8 -> 1108 1175 11BF C0A9 -> 1108 1175 11C0 C0AA -> 1108 1175 11C1 C0AB -> 1108 1175 11C2 C0AC -> 1109 1161 C0AD -> 1109 1161 11A8 C0AE -> 1109 1161 11A9 C0AF -> 1109 1161 11AA C0B0 -> 1109 1161 11AB C0B1 -> 1109 1161 11AC C0B2 -> 1109 1161 11AD C0B3 -> 1109 1161 11AE C0B4 -> 1109 1161 11AF C0B5 -> 1109 1161 11B0 C0B6 -> 1109 1161 11B1 C0B7 -> 1109 1161 11B2 C0B8 -> 1109 1161 11B3 C0B9 -> 1109 1161 11B4 C0BA -> 1109 1161 11B5 C0BB -> 1109 1161 11B6 C0BC -> 1109 1161 11B7 C0BD -> 1109 1161 11B8 C0BE -> 1109 1161 11B9 C0BF -> 1109 1161 11BA C0C0 -> 1109 1161 11BB C0C1 -> 1109 1161 11BC C0C2 -> 1109 1161 11BD C0C3 -> 1109 1161 11BE C0C4 -> 1109 1161 11BF C0C5 -> 1109 1161 11C0 C0C6 -> 1109 1161 11C1 C0C7 -> 1109 1161 11C2 C0C8 -> 1109 1162 C0C9 -> 1109 1162 11A8 C0CA -> 1109 1162 11A9 C0CB -> 1109 1162 11AA C0CC -> 1109 1162 11AB C0CD -> 1109 1162 11AC C0CE -> 1109 1162 11AD C0CF -> 1109 1162 11AE C0D0 -> 1109 1162 11AF C0D1 -> 1109 1162 11B0 C0D2 -> 1109 1162 11B1 C0D3 -> 1109 1162 11B2 C0D4 -> 1109 1162 11B3 C0D5 -> 1109 1162 11B4 C0D6 -> 1109 1162 11B5 C0D7 -> 1109 1162 11B6 C0D8 -> 1109 1162 11B7 C0D9 -> 1109 1162 11B8 C0DA -> 1109 1162 11B9 C0DB -> 1109 1162 11BA C0DC -> 1109 1162 11BB C0DD -> 1109 1162 11BC C0DE -> 1109 1162 11BD C0DF -> 1109 1162 11BE C0E0 -> 1109 1162 11BF C0E1 -> 1109 1162 11C0 C0E2 -> 1109 1162 11C1 C0E3 -> 1109 1162 11C2 C0E4 -> 1109 1163 C0E5 -> 1109 1163 11A8 C0E6 -> 1109 1163 11A9 C0E7 -> 1109 1163 11AA C0E8 -> 1109 1163 11AB C0E9 -> 1109 1163 11AC C0EA -> 1109 1163 11AD C0EB -> 1109 1163 11AE C0EC -> 1109 1163 11AF C0ED -> 1109 1163 11B0 C0EE -> 1109 1163 11B1 C0EF -> 1109 1163 11B2 C0F0 -> 1109 1163 11B3 C0F1 -> 1109 1163 11B4 C0F2 -> 1109 1163 11B5 C0F3 -> 1109 1163 11B6 C0F4 -> 1109 1163 11B7 C0F5 -> 1109 1163 11B8 C0F6 -> 1109 1163 11B9 C0F7 -> 1109 1163 11BA C0F8 -> 1109 1163 11BB C0F9 -> 1109 1163 11BC C0FA -> 1109 1163 11BD C0FB -> 1109 1163 11BE C0FC -> 1109 1163 11BF C0FD -> 1109 1163 11C0 C0FE -> 1109 1163 11C1 C0FF -> 1109 1163 11C2 C100 -> 1109 1164 C101 -> 1109 1164 11A8 C102 -> 1109 1164 11A9 C103 -> 1109 1164 11AA C104 -> 1109 1164 11AB C105 -> 1109 1164 11AC C106 -> 1109 1164 11AD C107 -> 1109 1164 11AE C108 -> 1109 1164 11AF C109 -> 1109 1164 11B0 C10A -> 1109 1164 11B1 C10B -> 1109 1164 11B2 C10C -> 1109 1164 11B3 C10D -> 1109 1164 11B4 C10E -> 1109 1164 11B5 C10F -> 1109 1164 11B6 C110 -> 1109 1164 11B7 C111 -> 1109 1164 11B8 C112 -> 1109 1164 11B9 C113 -> 1109 1164 11BA C114 -> 1109 1164 11BB C115 -> 1109 1164 11BC C116 -> 1109 1164 11BD C117 -> 1109 1164 11BE C118 -> 1109 1164 11BF C119 -> 1109 1164 11C0 C11A -> 1109 1164 11C1 C11B -> 1109 1164 11C2 C11C -> 1109 1165 C11D -> 1109 1165 11A8 C11E -> 1109 1165 11A9 C11F -> 1109 1165 11AA C120 -> 1109 1165 11AB C121 -> 1109 1165 11AC C122 -> 1109 1165 11AD C123 -> 1109 1165 11AE C124 -> 1109 1165 11AF C125 -> 1109 1165 11B0 C126 -> 1109 1165 11B1 C127 -> 1109 1165 11B2 C128 -> 1109 1165 11B3 C129 -> 1109 1165 11B4 C12A -> 1109 1165 11B5 C12B -> 1109 1165 11B6 C12C -> 1109 1165 11B7 C12D -> 1109 1165 11B8 C12E -> 1109 1165 11B9 C12F -> 1109 1165 11BA C130 -> 1109 1165 11BB C131 -> 1109 1165 11BC C132 -> 1109 1165 11BD C133 -> 1109 1165 11BE C134 -> 1109 1165 11BF C135 -> 1109 1165 11C0 C136 -> 1109 1165 11C1 C137 -> 1109 1165 11C2 C138 -> 1109 1166 C139 -> 1109 1166 11A8 C13A -> 1109 1166 11A9 C13B -> 1109 1166 11AA C13C -> 1109 1166 11AB C13D -> 1109 1166 11AC C13E -> 1109 1166 11AD C13F -> 1109 1166 11AE C140 -> 1109 1166 11AF C141 -> 1109 1166 11B0 C142 -> 1109 1166 11B1 C143 -> 1109 1166 11B2 C144 -> 1109 1166 11B3 C145 -> 1109 1166 11B4 C146 -> 1109 1166 11B5 C147 -> 1109 1166 11B6 C148 -> 1109 1166 11B7 C149 -> 1109 1166 11B8 C14A -> 1109 1166 11B9 C14B -> 1109 1166 11BA C14C -> 1109 1166 11BB C14D -> 1109 1166 11BC C14E -> 1109 1166 11BD C14F -> 1109 1166 11BE C150 -> 1109 1166 11BF C151 -> 1109 1166 11C0 C152 -> 1109 1166 11C1 C153 -> 1109 1166 11C2 C154 -> 1109 1167 C155 -> 1109 1167 11A8 C156 -> 1109 1167 11A9 C157 -> 1109 1167 11AA C158 -> 1109 1167 11AB C159 -> 1109 1167 11AC C15A -> 1109 1167 11AD C15B -> 1109 1167 11AE C15C -> 1109 1167 11AF C15D -> 1109 1167 11B0 C15E -> 1109 1167 11B1 C15F -> 1109 1167 11B2 C160 -> 1109 1167 11B3 C161 -> 1109 1167 11B4 C162 -> 1109 1167 11B5 C163 -> 1109 1167 11B6 C164 -> 1109 1167 11B7 C165 -> 1109 1167 11B8 C166 -> 1109 1167 11B9 C167 -> 1109 1167 11BA C168 -> 1109 1167 11BB C169 -> 1109 1167 11BC C16A -> 1109 1167 11BD C16B -> 1109 1167 11BE C16C -> 1109 1167 11BF C16D -> 1109 1167 11C0 C16E -> 1109 1167 11C1 C16F -> 1109 1167 11C2 C170 -> 1109 1168 C171 -> 1109 1168 11A8 C172 -> 1109 1168 11A9 C173 -> 1109 1168 11AA C174 -> 1109 1168 11AB C175 -> 1109 1168 11AC C176 -> 1109 1168 11AD C177 -> 1109 1168 11AE C178 -> 1109 1168 11AF C179 -> 1109 1168 11B0 C17A -> 1109 1168 11B1 C17B -> 1109 1168 11B2 C17C -> 1109 1168 11B3 C17D -> 1109 1168 11B4 C17E -> 1109 1168 11B5 C17F -> 1109 1168 11B6 C180 -> 1109 1168 11B7 C181 -> 1109 1168 11B8 C182 -> 1109 1168 11B9 C183 -> 1109 1168 11BA C184 -> 1109 1168 11BB C185 -> 1109 1168 11BC C186 -> 1109 1168 11BD C187 -> 1109 1168 11BE C188 -> 1109 1168 11BF C189 -> 1109 1168 11C0 C18A -> 1109 1168 11C1 C18B -> 1109 1168 11C2 C18C -> 1109 1169 C18D -> 1109 1169 11A8 C18E -> 1109 1169 11A9 C18F -> 1109 1169 11AA C190 -> 1109 1169 11AB C191 -> 1109 1169 11AC C192 -> 1109 1169 11AD C193 -> 1109 1169 11AE C194 -> 1109 1169 11AF C195 -> 1109 1169 11B0 C196 -> 1109 1169 11B1 C197 -> 1109 1169 11B2 C198 -> 1109 1169 11B3 C199 -> 1109 1169 11B4 C19A -> 1109 1169 11B5 C19B -> 1109 1169 11B6 C19C -> 1109 1169 11B7 C19D -> 1109 1169 11B8 C19E -> 1109 1169 11B9 C19F -> 1109 1169 11BA C1A0 -> 1109 1169 11BB C1A1 -> 1109 1169 11BC C1A2 -> 1109 1169 11BD C1A3 -> 1109 1169 11BE C1A4 -> 1109 1169 11BF C1A5 -> 1109 1169 11C0 C1A6 -> 1109 1169 11C1 C1A7 -> 1109 1169 11C2 C1A8 -> 1109 116A C1A9 -> 1109 116A 11A8 C1AA -> 1109 116A 11A9 C1AB -> 1109 116A 11AA C1AC -> 1109 116A 11AB C1AD -> 1109 116A 11AC C1AE -> 1109 116A 11AD C1AF -> 1109 116A 11AE C1B0 -> 1109 116A 11AF C1B1 -> 1109 116A 11B0 C1B2 -> 1109 116A 11B1 C1B3 -> 1109 116A 11B2 C1B4 -> 1109 116A 11B3 C1B5 -> 1109 116A 11B4 C1B6 -> 1109 116A 11B5 C1B7 -> 1109 116A 11B6 C1B8 -> 1109 116A 11B7 C1B9 -> 1109 116A 11B8 C1BA -> 1109 116A 11B9 C1BB -> 1109 116A 11BA C1BC -> 1109 116A 11BB C1BD -> 1109 116A 11BC C1BE -> 1109 116A 11BD C1BF -> 1109 116A 11BE C1C0 -> 1109 116A 11BF C1C1 -> 1109 116A 11C0 C1C2 -> 1109 116A 11C1 C1C3 -> 1109 116A 11C2 C1C4 -> 1109 116B C1C5 -> 1109 116B 11A8 C1C6 -> 1109 116B 11A9 C1C7 -> 1109 116B 11AA C1C8 -> 1109 116B 11AB C1C9 -> 1109 116B 11AC C1CA -> 1109 116B 11AD C1CB -> 1109 116B 11AE C1CC -> 1109 116B 11AF C1CD -> 1109 116B 11B0 C1CE -> 1109 116B 11B1 C1CF -> 1109 116B 11B2 C1D0 -> 1109 116B 11B3 C1D1 -> 1109 116B 11B4 C1D2 -> 1109 116B 11B5 C1D3 -> 1109 116B 11B6 C1D4 -> 1109 116B 11B7 C1D5 -> 1109 116B 11B8 C1D6 -> 1109 116B 11B9 C1D7 -> 1109 116B 11BA C1D8 -> 1109 116B 11BB C1D9 -> 1109 116B 11BC C1DA -> 1109 116B 11BD C1DB -> 1109 116B 11BE C1DC -> 1109 116B 11BF C1DD -> 1109 116B 11C0 C1DE -> 1109 116B 11C1 C1DF -> 1109 116B 11C2 C1E0 -> 1109 116C C1E1 -> 1109 116C 11A8 C1E2 -> 1109 116C 11A9 C1E3 -> 1109 116C 11AA C1E4 -> 1109 116C 11AB C1E5 -> 1109 116C 11AC C1E6 -> 1109 116C 11AD C1E7 -> 1109 116C 11AE C1E8 -> 1109 116C 11AF C1E9 -> 1109 116C 11B0 C1EA -> 1109 116C 11B1 C1EB -> 1109 116C 11B2 C1EC -> 1109 116C 11B3 C1ED -> 1109 116C 11B4 C1EE -> 1109 116C 11B5 C1EF -> 1109 116C 11B6 C1F0 -> 1109 116C 11B7 C1F1 -> 1109 116C 11B8 C1F2 -> 1109 116C 11B9 C1F3 -> 1109 116C 11BA C1F4 -> 1109 116C 11BB C1F5 -> 1109 116C 11BC C1F6 -> 1109 116C 11BD C1F7 -> 1109 116C 11BE C1F8 -> 1109 116C 11BF C1F9 -> 1109 116C 11C0 C1FA -> 1109 116C 11C1 C1FB -> 1109 116C 11C2 C1FC -> 1109 116D C1FD -> 1109 116D 11A8 C1FE -> 1109 116D 11A9 C1FF -> 1109 116D 11AA C200 -> 1109 116D 11AB C201 -> 1109 116D 11AC C202 -> 1109 116D 11AD C203 -> 1109 116D 11AE C204 -> 1109 116D 11AF C205 -> 1109 116D 11B0 C206 -> 1109 116D 11B1 C207 -> 1109 116D 11B2 C208 -> 1109 116D 11B3 C209 -> 1109 116D 11B4 C20A -> 1109 116D 11B5 C20B -> 1109 116D 11B6 C20C -> 1109 116D 11B7 C20D -> 1109 116D 11B8 C20E -> 1109 116D 11B9 C20F -> 1109 116D 11BA C210 -> 1109 116D 11BB C211 -> 1109 116D 11BC C212 -> 1109 116D 11BD C213 -> 1109 116D 11BE C214 -> 1109 116D 11BF C215 -> 1109 116D 11C0 C216 -> 1109 116D 11C1 C217 -> 1109 116D 11C2 C218 -> 1109 116E C219 -> 1109 116E 11A8 C21A -> 1109 116E 11A9 C21B -> 1109 116E 11AA C21C -> 1109 116E 11AB C21D -> 1109 116E 11AC C21E -> 1109 116E 11AD C21F -> 1109 116E 11AE C220 -> 1109 116E 11AF C221 -> 1109 116E 11B0 C222 -> 1109 116E 11B1 C223 -> 1109 116E 11B2 C224 -> 1109 116E 11B3 C225 -> 1109 116E 11B4 C226 -> 1109 116E 11B5 C227 -> 1109 116E 11B6 C228 -> 1109 116E 11B7 C229 -> 1109 116E 11B8 C22A -> 1109 116E 11B9 C22B -> 1109 116E 11BA C22C -> 1109 116E 11BB C22D -> 1109 116E 11BC C22E -> 1109 116E 11BD C22F -> 1109 116E 11BE C230 -> 1109 116E 11BF C231 -> 1109 116E 11C0 C232 -> 1109 116E 11C1 C233 -> 1109 116E 11C2 C234 -> 1109 116F C235 -> 1109 116F 11A8 C236 -> 1109 116F 11A9 C237 -> 1109 116F 11AA C238 -> 1109 116F 11AB C239 -> 1109 116F 11AC C23A -> 1109 116F 11AD C23B -> 1109 116F 11AE C23C -> 1109 116F 11AF C23D -> 1109 116F 11B0 C23E -> 1109 116F 11B1 C23F -> 1109 116F 11B2 C240 -> 1109 116F 11B3 C241 -> 1109 116F 11B4 C242 -> 1109 116F 11B5 C243 -> 1109 116F 11B6 C244 -> 1109 116F 11B7 C245 -> 1109 116F 11B8 C246 -> 1109 116F 11B9 C247 -> 1109 116F 11BA C248 -> 1109 116F 11BB C249 -> 1109 116F 11BC C24A -> 1109 116F 11BD C24B -> 1109 116F 11BE C24C -> 1109 116F 11BF C24D -> 1109 116F 11C0 C24E -> 1109 116F 11C1 C24F -> 1109 116F 11C2 C250 -> 1109 1170 C251 -> 1109 1170 11A8 C252 -> 1109 1170 11A9 C253 -> 1109 1170 11AA C254 -> 1109 1170 11AB C255 -> 1109 1170 11AC C256 -> 1109 1170 11AD C257 -> 1109 1170 11AE C258 -> 1109 1170 11AF C259 -> 1109 1170 11B0 C25A -> 1109 1170 11B1 C25B -> 1109 1170 11B2 C25C -> 1109 1170 11B3 C25D -> 1109 1170 11B4 C25E -> 1109 1170 11B5 C25F -> 1109 1170 11B6 C260 -> 1109 1170 11B7 C261 -> 1109 1170 11B8 C262 -> 1109 1170 11B9 C263 -> 1109 1170 11BA C264 -> 1109 1170 11BB C265 -> 1109 1170 11BC C266 -> 1109 1170 11BD C267 -> 1109 1170 11BE C268 -> 1109 1170 11BF C269 -> 1109 1170 11C0 C26A -> 1109 1170 11C1 C26B -> 1109 1170 11C2 C26C -> 1109 1171 C26D -> 1109 1171 11A8 C26E -> 1109 1171 11A9 C26F -> 1109 1171 11AA C270 -> 1109 1171 11AB C271 -> 1109 1171 11AC C272 -> 1109 1171 11AD C273 -> 1109 1171 11AE C274 -> 1109 1171 11AF C275 -> 1109 1171 11B0 C276 -> 1109 1171 11B1 C277 -> 1109 1171 11B2 C278 -> 1109 1171 11B3 C279 -> 1109 1171 11B4 C27A -> 1109 1171 11B5 C27B -> 1109 1171 11B6 C27C -> 1109 1171 11B7 C27D -> 1109 1171 11B8 C27E -> 1109 1171 11B9 C27F -> 1109 1171 11BA C280 -> 1109 1171 11BB C281 -> 1109 1171 11BC C282 -> 1109 1171 11BD C283 -> 1109 1171 11BE C284 -> 1109 1171 11BF C285 -> 1109 1171 11C0 C286 -> 1109 1171 11C1 C287 -> 1109 1171 11C2 C288 -> 1109 1172 C289 -> 1109 1172 11A8 C28A -> 1109 1172 11A9 C28B -> 1109 1172 11AA C28C -> 1109 1172 11AB C28D -> 1109 1172 11AC C28E -> 1109 1172 11AD C28F -> 1109 1172 11AE C290 -> 1109 1172 11AF C291 -> 1109 1172 11B0 C292 -> 1109 1172 11B1 C293 -> 1109 1172 11B2 C294 -> 1109 1172 11B3 C295 -> 1109 1172 11B4 C296 -> 1109 1172 11B5 C297 -> 1109 1172 11B6 C298 -> 1109 1172 11B7 C299 -> 1109 1172 11B8 C29A -> 1109 1172 11B9 C29B -> 1109 1172 11BA C29C -> 1109 1172 11BB C29D -> 1109 1172 11BC C29E -> 1109 1172 11BD C29F -> 1109 1172 11BE C2A0 -> 1109 1172 11BF C2A1 -> 1109 1172 11C0 C2A2 -> 1109 1172 11C1 C2A3 -> 1109 1172 11C2 C2A4 -> 1109 1173 C2A5 -> 1109 1173 11A8 C2A6 -> 1109 1173 11A9 C2A7 -> 1109 1173 11AA C2A8 -> 1109 1173 11AB C2A9 -> 1109 1173 11AC C2AA -> 1109 1173 11AD C2AB -> 1109 1173 11AE C2AC -> 1109 1173 11AF C2AD -> 1109 1173 11B0 C2AE -> 1109 1173 11B1 C2AF -> 1109 1173 11B2 C2B0 -> 1109 1173 11B3 C2B1 -> 1109 1173 11B4 C2B2 -> 1109 1173 11B5 C2B3 -> 1109 1173 11B6 C2B4 -> 1109 1173 11B7 C2B5 -> 1109 1173 11B8 C2B6 -> 1109 1173 11B9 C2B7 -> 1109 1173 11BA C2B8 -> 1109 1173 11BB C2B9 -> 1109 1173 11BC C2BA -> 1109 1173 11BD C2BB -> 1109 1173 11BE C2BC -> 1109 1173 11BF C2BD -> 1109 1173 11C0 C2BE -> 1109 1173 11C1 C2BF -> 1109 1173 11C2 C2C0 -> 1109 1174 C2C1 -> 1109 1174 11A8 C2C2 -> 1109 1174 11A9 C2C3 -> 1109 1174 11AA C2C4 -> 1109 1174 11AB C2C5 -> 1109 1174 11AC C2C6 -> 1109 1174 11AD C2C7 -> 1109 1174 11AE C2C8 -> 1109 1174 11AF C2C9 -> 1109 1174 11B0 C2CA -> 1109 1174 11B1 C2CB -> 1109 1174 11B2 C2CC -> 1109 1174 11B3 C2CD -> 1109 1174 11B4 C2CE -> 1109 1174 11B5 C2CF -> 1109 1174 11B6 C2D0 -> 1109 1174 11B7 C2D1 -> 1109 1174 11B8 C2D2 -> 1109 1174 11B9 C2D3 -> 1109 1174 11BA C2D4 -> 1109 1174 11BB C2D5 -> 1109 1174 11BC C2D6 -> 1109 1174 11BD C2D7 -> 1109 1174 11BE C2D8 -> 1109 1174 11BF C2D9 -> 1109 1174 11C0 C2DA -> 1109 1174 11C1 C2DB -> 1109 1174 11C2 C2DC -> 1109 1175 C2DD -> 1109 1175 11A8 C2DE -> 1109 1175 11A9 C2DF -> 1109 1175 11AA C2E0 -> 1109 1175 11AB C2E1 -> 1109 1175 11AC C2E2 -> 1109 1175 11AD C2E3 -> 1109 1175 11AE C2E4 -> 1109 1175 11AF C2E5 -> 1109 1175 11B0 C2E6 -> 1109 1175 11B1 C2E7 -> 1109 1175 11B2 C2E8 -> 1109 1175 11B3 C2E9 -> 1109 1175 11B4 C2EA -> 1109 1175 11B5 C2EB -> 1109 1175 11B6 C2EC -> 1109 1175 11B7 C2ED -> 1109 1175 11B8 C2EE -> 1109 1175 11B9 C2EF -> 1109 1175 11BA C2F0 -> 1109 1175 11BB C2F1 -> 1109 1175 11BC C2F2 -> 1109 1175 11BD C2F3 -> 1109 1175 11BE C2F4 -> 1109 1175 11BF C2F5 -> 1109 1175 11C0 C2F6 -> 1109 1175 11C1 C2F7 -> 1109 1175 11C2 C2F8 -> 110A 1161 C2F9 -> 110A 1161 11A8 C2FA -> 110A 1161 11A9 C2FB -> 110A 1161 11AA C2FC -> 110A 1161 11AB C2FD -> 110A 1161 11AC C2FE -> 110A 1161 11AD C2FF -> 110A 1161 11AE C300 -> 110A 1161 11AF C301 -> 110A 1161 11B0 C302 -> 110A 1161 11B1 C303 -> 110A 1161 11B2 C304 -> 110A 1161 11B3 C305 -> 110A 1161 11B4 C306 -> 110A 1161 11B5 C307 -> 110A 1161 11B6 C308 -> 110A 1161 11B7 C309 -> 110A 1161 11B8 C30A -> 110A 1161 11B9 C30B -> 110A 1161 11BA C30C -> 110A 1161 11BB C30D -> 110A 1161 11BC C30E -> 110A 1161 11BD C30F -> 110A 1161 11BE C310 -> 110A 1161 11BF C311 -> 110A 1161 11C0 C312 -> 110A 1161 11C1 C313 -> 110A 1161 11C2 C314 -> 110A 1162 C315 -> 110A 1162 11A8 C316 -> 110A 1162 11A9 C317 -> 110A 1162 11AA C318 -> 110A 1162 11AB C319 -> 110A 1162 11AC C31A -> 110A 1162 11AD C31B -> 110A 1162 11AE C31C -> 110A 1162 11AF C31D -> 110A 1162 11B0 C31E -> 110A 1162 11B1 C31F -> 110A 1162 11B2 C320 -> 110A 1162 11B3 C321 -> 110A 1162 11B4 C322 -> 110A 1162 11B5 C323 -> 110A 1162 11B6 C324 -> 110A 1162 11B7 C325 -> 110A 1162 11B8 C326 -> 110A 1162 11B9 C327 -> 110A 1162 11BA C328 -> 110A 1162 11BB C329 -> 110A 1162 11BC C32A -> 110A 1162 11BD C32B -> 110A 1162 11BE C32C -> 110A 1162 11BF C32D -> 110A 1162 11C0 C32E -> 110A 1162 11C1 C32F -> 110A 1162 11C2 C330 -> 110A 1163 C331 -> 110A 1163 11A8 C332 -> 110A 1163 11A9 C333 -> 110A 1163 11AA C334 -> 110A 1163 11AB C335 -> 110A 1163 11AC C336 -> 110A 1163 11AD C337 -> 110A 1163 11AE C338 -> 110A 1163 11AF C339 -> 110A 1163 11B0 C33A -> 110A 1163 11B1 C33B -> 110A 1163 11B2 C33C -> 110A 1163 11B3 C33D -> 110A 1163 11B4 C33E -> 110A 1163 11B5 C33F -> 110A 1163 11B6 C340 -> 110A 1163 11B7 C341 -> 110A 1163 11B8 C342 -> 110A 1163 11B9 C343 -> 110A 1163 11BA C344 -> 110A 1163 11BB C345 -> 110A 1163 11BC C346 -> 110A 1163 11BD C347 -> 110A 1163 11BE C348 -> 110A 1163 11BF C349 -> 110A 1163 11C0 C34A -> 110A 1163 11C1 C34B -> 110A 1163 11C2 C34C -> 110A 1164 C34D -> 110A 1164 11A8 C34E -> 110A 1164 11A9 C34F -> 110A 1164 11AA C350 -> 110A 1164 11AB C351 -> 110A 1164 11AC C352 -> 110A 1164 11AD C353 -> 110A 1164 11AE C354 -> 110A 1164 11AF C355 -> 110A 1164 11B0 C356 -> 110A 1164 11B1 C357 -> 110A 1164 11B2 C358 -> 110A 1164 11B3 C359 -> 110A 1164 11B4 C35A -> 110A 1164 11B5 C35B -> 110A 1164 11B6 C35C -> 110A 1164 11B7 C35D -> 110A 1164 11B8 C35E -> 110A 1164 11B9 C35F -> 110A 1164 11BA C360 -> 110A 1164 11BB C361 -> 110A 1164 11BC C362 -> 110A 1164 11BD C363 -> 110A 1164 11BE C364 -> 110A 1164 11BF C365 -> 110A 1164 11C0 C366 -> 110A 1164 11C1 C367 -> 110A 1164 11C2 C368 -> 110A 1165 C369 -> 110A 1165 11A8 C36A -> 110A 1165 11A9 C36B -> 110A 1165 11AA C36C -> 110A 1165 11AB C36D -> 110A 1165 11AC C36E -> 110A 1165 11AD C36F -> 110A 1165 11AE C370 -> 110A 1165 11AF C371 -> 110A 1165 11B0 C372 -> 110A 1165 11B1 C373 -> 110A 1165 11B2 C374 -> 110A 1165 11B3 C375 -> 110A 1165 11B4 C376 -> 110A 1165 11B5 C377 -> 110A 1165 11B6 C378 -> 110A 1165 11B7 C379 -> 110A 1165 11B8 C37A -> 110A 1165 11B9 C37B -> 110A 1165 11BA C37C -> 110A 1165 11BB C37D -> 110A 1165 11BC C37E -> 110A 1165 11BD C37F -> 110A 1165 11BE C380 -> 110A 1165 11BF C381 -> 110A 1165 11C0 C382 -> 110A 1165 11C1 C383 -> 110A 1165 11C2 C384 -> 110A 1166 C385 -> 110A 1166 11A8 C386 -> 110A 1166 11A9 C387 -> 110A 1166 11AA C388 -> 110A 1166 11AB C389 -> 110A 1166 11AC C38A -> 110A 1166 11AD C38B -> 110A 1166 11AE C38C -> 110A 1166 11AF C38D -> 110A 1166 11B0 C38E -> 110A 1166 11B1 C38F -> 110A 1166 11B2 C390 -> 110A 1166 11B3 C391 -> 110A 1166 11B4 C392 -> 110A 1166 11B5 C393 -> 110A 1166 11B6 C394 -> 110A 1166 11B7 C395 -> 110A 1166 11B8 C396 -> 110A 1166 11B9 C397 -> 110A 1166 11BA C398 -> 110A 1166 11BB C399 -> 110A 1166 11BC C39A -> 110A 1166 11BD C39B -> 110A 1166 11BE C39C -> 110A 1166 11BF C39D -> 110A 1166 11C0 C39E -> 110A 1166 11C1 C39F -> 110A 1166 11C2 C3A0 -> 110A 1167 C3A1 -> 110A 1167 11A8 C3A2 -> 110A 1167 11A9 C3A3 -> 110A 1167 11AA C3A4 -> 110A 1167 11AB C3A5 -> 110A 1167 11AC C3A6 -> 110A 1167 11AD C3A7 -> 110A 1167 11AE C3A8 -> 110A 1167 11AF C3A9 -> 110A 1167 11B0 C3AA -> 110A 1167 11B1 C3AB -> 110A 1167 11B2 C3AC -> 110A 1167 11B3 C3AD -> 110A 1167 11B4 C3AE -> 110A 1167 11B5 C3AF -> 110A 1167 11B6 C3B0 -> 110A 1167 11B7 C3B1 -> 110A 1167 11B8 C3B2 -> 110A 1167 11B9 C3B3 -> 110A 1167 11BA C3B4 -> 110A 1167 11BB C3B5 -> 110A 1167 11BC C3B6 -> 110A 1167 11BD C3B7 -> 110A 1167 11BE C3B8 -> 110A 1167 11BF C3B9 -> 110A 1167 11C0 C3BA -> 110A 1167 11C1 C3BB -> 110A 1167 11C2 C3BC -> 110A 1168 C3BD -> 110A 1168 11A8 C3BE -> 110A 1168 11A9 C3BF -> 110A 1168 11AA C3C0 -> 110A 1168 11AB C3C1 -> 110A 1168 11AC C3C2 -> 110A 1168 11AD C3C3 -> 110A 1168 11AE C3C4 -> 110A 1168 11AF C3C5 -> 110A 1168 11B0 C3C6 -> 110A 1168 11B1 C3C7 -> 110A 1168 11B2 C3C8 -> 110A 1168 11B3 C3C9 -> 110A 1168 11B4 C3CA -> 110A 1168 11B5 C3CB -> 110A 1168 11B6 C3CC -> 110A 1168 11B7 C3CD -> 110A 1168 11B8 C3CE -> 110A 1168 11B9 C3CF -> 110A 1168 11BA C3D0 -> 110A 1168 11BB C3D1 -> 110A 1168 11BC C3D2 -> 110A 1168 11BD C3D3 -> 110A 1168 11BE C3D4 -> 110A 1168 11BF C3D5 -> 110A 1168 11C0 C3D6 -> 110A 1168 11C1 C3D7 -> 110A 1168 11C2 C3D8 -> 110A 1169 C3D9 -> 110A 1169 11A8 C3DA -> 110A 1169 11A9 C3DB -> 110A 1169 11AA C3DC -> 110A 1169 11AB C3DD -> 110A 1169 11AC C3DE -> 110A 1169 11AD C3DF -> 110A 1169 11AE C3E0 -> 110A 1169 11AF C3E1 -> 110A 1169 11B0 C3E2 -> 110A 1169 11B1 C3E3 -> 110A 1169 11B2 C3E4 -> 110A 1169 11B3 C3E5 -> 110A 1169 11B4 C3E6 -> 110A 1169 11B5 C3E7 -> 110A 1169 11B6 C3E8 -> 110A 1169 11B7 C3E9 -> 110A 1169 11B8 C3EA -> 110A 1169 11B9 C3EB -> 110A 1169 11BA C3EC -> 110A 1169 11BB C3ED -> 110A 1169 11BC C3EE -> 110A 1169 11BD C3EF -> 110A 1169 11BE C3F0 -> 110A 1169 11BF C3F1 -> 110A 1169 11C0 C3F2 -> 110A 1169 11C1 C3F3 -> 110A 1169 11C2 C3F4 -> 110A 116A C3F5 -> 110A 116A 11A8 C3F6 -> 110A 116A 11A9 C3F7 -> 110A 116A 11AA C3F8 -> 110A 116A 11AB C3F9 -> 110A 116A 11AC C3FA -> 110A 116A 11AD C3FB -> 110A 116A 11AE C3FC -> 110A 116A 11AF C3FD -> 110A 116A 11B0 C3FE -> 110A 116A 11B1 C3FF -> 110A 116A 11B2 C400 -> 110A 116A 11B3 C401 -> 110A 116A 11B4 C402 -> 110A 116A 11B5 C403 -> 110A 116A 11B6 C404 -> 110A 116A 11B7 C405 -> 110A 116A 11B8 C406 -> 110A 116A 11B9 C407 -> 110A 116A 11BA C408 -> 110A 116A 11BB C409 -> 110A 116A 11BC C40A -> 110A 116A 11BD C40B -> 110A 116A 11BE C40C -> 110A 116A 11BF C40D -> 110A 116A 11C0 C40E -> 110A 116A 11C1 C40F -> 110A 116A 11C2 C410 -> 110A 116B C411 -> 110A 116B 11A8 C412 -> 110A 116B 11A9 C413 -> 110A 116B 11AA C414 -> 110A 116B 11AB C415 -> 110A 116B 11AC C416 -> 110A 116B 11AD C417 -> 110A 116B 11AE C418 -> 110A 116B 11AF C419 -> 110A 116B 11B0 C41A -> 110A 116B 11B1 C41B -> 110A 116B 11B2 C41C -> 110A 116B 11B3 C41D -> 110A 116B 11B4 C41E -> 110A 116B 11B5 C41F -> 110A 116B 11B6 C420 -> 110A 116B 11B7 C421 -> 110A 116B 11B8 C422 -> 110A 116B 11B9 C423 -> 110A 116B 11BA C424 -> 110A 116B 11BB C425 -> 110A 116B 11BC C426 -> 110A 116B 11BD C427 -> 110A 116B 11BE C428 -> 110A 116B 11BF C429 -> 110A 116B 11C0 C42A -> 110A 116B 11C1 C42B -> 110A 116B 11C2 C42C -> 110A 116C C42D -> 110A 116C 11A8 C42E -> 110A 116C 11A9 C42F -> 110A 116C 11AA C430 -> 110A 116C 11AB C431 -> 110A 116C 11AC C432 -> 110A 116C 11AD C433 -> 110A 116C 11AE C434 -> 110A 116C 11AF C435 -> 110A 116C 11B0 C436 -> 110A 116C 11B1 C437 -> 110A 116C 11B2 C438 -> 110A 116C 11B3 C439 -> 110A 116C 11B4 C43A -> 110A 116C 11B5 C43B -> 110A 116C 11B6 C43C -> 110A 116C 11B7 C43D -> 110A 116C 11B8 C43E -> 110A 116C 11B9 C43F -> 110A 116C 11BA C440 -> 110A 116C 11BB C441 -> 110A 116C 11BC C442 -> 110A 116C 11BD C443 -> 110A 116C 11BE C444 -> 110A 116C 11BF C445 -> 110A 116C 11C0 C446 -> 110A 116C 11C1 C447 -> 110A 116C 11C2 C448 -> 110A 116D C449 -> 110A 116D 11A8 C44A -> 110A 116D 11A9 C44B -> 110A 116D 11AA C44C -> 110A 116D 11AB C44D -> 110A 116D 11AC C44E -> 110A 116D 11AD C44F -> 110A 116D 11AE C450 -> 110A 116D 11AF C451 -> 110A 116D 11B0 C452 -> 110A 116D 11B1 C453 -> 110A 116D 11B2 C454 -> 110A 116D 11B3 C455 -> 110A 116D 11B4 C456 -> 110A 116D 11B5 C457 -> 110A 116D 11B6 C458 -> 110A 116D 11B7 C459 -> 110A 116D 11B8 C45A -> 110A 116D 11B9 C45B -> 110A 116D 11BA C45C -> 110A 116D 11BB C45D -> 110A 116D 11BC C45E -> 110A 116D 11BD C45F -> 110A 116D 11BE C460 -> 110A 116D 11BF C461 -> 110A 116D 11C0 C462 -> 110A 116D 11C1 C463 -> 110A 116D 11C2 C464 -> 110A 116E C465 -> 110A 116E 11A8 C466 -> 110A 116E 11A9 C467 -> 110A 116E 11AA C468 -> 110A 116E 11AB C469 -> 110A 116E 11AC C46A -> 110A 116E 11AD C46B -> 110A 116E 11AE C46C -> 110A 116E 11AF C46D -> 110A 116E 11B0 C46E -> 110A 116E 11B1 C46F -> 110A 116E 11B2 C470 -> 110A 116E 11B3 C471 -> 110A 116E 11B4 C472 -> 110A 116E 11B5 C473 -> 110A 116E 11B6 C474 -> 110A 116E 11B7 C475 -> 110A 116E 11B8 C476 -> 110A 116E 11B9 C477 -> 110A 116E 11BA C478 -> 110A 116E 11BB C479 -> 110A 116E 11BC C47A -> 110A 116E 11BD C47B -> 110A 116E 11BE C47C -> 110A 116E 11BF C47D -> 110A 116E 11C0 C47E -> 110A 116E 11C1 C47F -> 110A 116E 11C2 C480 -> 110A 116F C481 -> 110A 116F 11A8 C482 -> 110A 116F 11A9 C483 -> 110A 116F 11AA C484 -> 110A 116F 11AB C485 -> 110A 116F 11AC C486 -> 110A 116F 11AD C487 -> 110A 116F 11AE C488 -> 110A 116F 11AF C489 -> 110A 116F 11B0 C48A -> 110A 116F 11B1 C48B -> 110A 116F 11B2 C48C -> 110A 116F 11B3 C48D -> 110A 116F 11B4 C48E -> 110A 116F 11B5 C48F -> 110A 116F 11B6 C490 -> 110A 116F 11B7 C491 -> 110A 116F 11B8 C492 -> 110A 116F 11B9 C493 -> 110A 116F 11BA C494 -> 110A 116F 11BB C495 -> 110A 116F 11BC C496 -> 110A 116F 11BD C497 -> 110A 116F 11BE C498 -> 110A 116F 11BF C499 -> 110A 116F 11C0 C49A -> 110A 116F 11C1 C49B -> 110A 116F 11C2 C49C -> 110A 1170 C49D -> 110A 1170 11A8 C49E -> 110A 1170 11A9 C49F -> 110A 1170 11AA C4A0 -> 110A 1170 11AB C4A1 -> 110A 1170 11AC C4A2 -> 110A 1170 11AD C4A3 -> 110A 1170 11AE C4A4 -> 110A 1170 11AF C4A5 -> 110A 1170 11B0 C4A6 -> 110A 1170 11B1 C4A7 -> 110A 1170 11B2 C4A8 -> 110A 1170 11B3 C4A9 -> 110A 1170 11B4 C4AA -> 110A 1170 11B5 C4AB -> 110A 1170 11B6 C4AC -> 110A 1170 11B7 C4AD -> 110A 1170 11B8 C4AE -> 110A 1170 11B9 C4AF -> 110A 1170 11BA C4B0 -> 110A 1170 11BB C4B1 -> 110A 1170 11BC C4B2 -> 110A 1170 11BD C4B3 -> 110A 1170 11BE C4B4 -> 110A 1170 11BF C4B5 -> 110A 1170 11C0 C4B6 -> 110A 1170 11C1 C4B7 -> 110A 1170 11C2 C4B8 -> 110A 1171 C4B9 -> 110A 1171 11A8 C4BA -> 110A 1171 11A9 C4BB -> 110A 1171 11AA C4BC -> 110A 1171 11AB C4BD -> 110A 1171 11AC C4BE -> 110A 1171 11AD C4BF -> 110A 1171 11AE C4C0 -> 110A 1171 11AF C4C1 -> 110A 1171 11B0 C4C2 -> 110A 1171 11B1 C4C3 -> 110A 1171 11B2 C4C4 -> 110A 1171 11B3 C4C5 -> 110A 1171 11B4 C4C6 -> 110A 1171 11B5 C4C7 -> 110A 1171 11B6 C4C8 -> 110A 1171 11B7 C4C9 -> 110A 1171 11B8 C4CA -> 110A 1171 11B9 C4CB -> 110A 1171 11BA C4CC -> 110A 1171 11BB C4CD -> 110A 1171 11BC C4CE -> 110A 1171 11BD C4CF -> 110A 1171 11BE C4D0 -> 110A 1171 11BF C4D1 -> 110A 1171 11C0 C4D2 -> 110A 1171 11C1 C4D3 -> 110A 1171 11C2 C4D4 -> 110A 1172 C4D5 -> 110A 1172 11A8 C4D6 -> 110A 1172 11A9 C4D7 -> 110A 1172 11AA C4D8 -> 110A 1172 11AB C4D9 -> 110A 1172 11AC C4DA -> 110A 1172 11AD C4DB -> 110A 1172 11AE C4DC -> 110A 1172 11AF C4DD -> 110A 1172 11B0 C4DE -> 110A 1172 11B1 C4DF -> 110A 1172 11B2 C4E0 -> 110A 1172 11B3 C4E1 -> 110A 1172 11B4 C4E2 -> 110A 1172 11B5 C4E3 -> 110A 1172 11B6 C4E4 -> 110A 1172 11B7 C4E5 -> 110A 1172 11B8 C4E6 -> 110A 1172 11B9 C4E7 -> 110A 1172 11BA C4E8 -> 110A 1172 11BB C4E9 -> 110A 1172 11BC C4EA -> 110A 1172 11BD C4EB -> 110A 1172 11BE C4EC -> 110A 1172 11BF C4ED -> 110A 1172 11C0 C4EE -> 110A 1172 11C1 C4EF -> 110A 1172 11C2 C4F0 -> 110A 1173 C4F1 -> 110A 1173 11A8 C4F2 -> 110A 1173 11A9 C4F3 -> 110A 1173 11AA C4F4 -> 110A 1173 11AB C4F5 -> 110A 1173 11AC C4F6 -> 110A 1173 11AD C4F7 -> 110A 1173 11AE C4F8 -> 110A 1173 11AF C4F9 -> 110A 1173 11B0 C4FA -> 110A 1173 11B1 C4FB -> 110A 1173 11B2 C4FC -> 110A 1173 11B3 C4FD -> 110A 1173 11B4 C4FE -> 110A 1173 11B5 C4FF -> 110A 1173 11B6 C500 -> 110A 1173 11B7 C501 -> 110A 1173 11B8 C502 -> 110A 1173 11B9 C503 -> 110A 1173 11BA C504 -> 110A 1173 11BB C505 -> 110A 1173 11BC C506 -> 110A 1173 11BD C507 -> 110A 1173 11BE C508 -> 110A 1173 11BF C509 -> 110A 1173 11C0 C50A -> 110A 1173 11C1 C50B -> 110A 1173 11C2 C50C -> 110A 1174 C50D -> 110A 1174 11A8 C50E -> 110A 1174 11A9 C50F -> 110A 1174 11AA C510 -> 110A 1174 11AB C511 -> 110A 1174 11AC C512 -> 110A 1174 11AD C513 -> 110A 1174 11AE C514 -> 110A 1174 11AF C515 -> 110A 1174 11B0 C516 -> 110A 1174 11B1 C517 -> 110A 1174 11B2 C518 -> 110A 1174 11B3 C519 -> 110A 1174 11B4 C51A -> 110A 1174 11B5 C51B -> 110A 1174 11B6 C51C -> 110A 1174 11B7 C51D -> 110A 1174 11B8 C51E -> 110A 1174 11B9 C51F -> 110A 1174 11BA C520 -> 110A 1174 11BB C521 -> 110A 1174 11BC C522 -> 110A 1174 11BD C523 -> 110A 1174 11BE C524 -> 110A 1174 11BF C525 -> 110A 1174 11C0 C526 -> 110A 1174 11C1 C527 -> 110A 1174 11C2 C528 -> 110A 1175 C529 -> 110A 1175 11A8 C52A -> 110A 1175 11A9 C52B -> 110A 1175 11AA C52C -> 110A 1175 11AB C52D -> 110A 1175 11AC C52E -> 110A 1175 11AD C52F -> 110A 1175 11AE C530 -> 110A 1175 11AF C531 -> 110A 1175 11B0 C532 -> 110A 1175 11B1 C533 -> 110A 1175 11B2 C534 -> 110A 1175 11B3 C535 -> 110A 1175 11B4 C536 -> 110A 1175 11B5 C537 -> 110A 1175 11B6 C538 -> 110A 1175 11B7 C539 -> 110A 1175 11B8 C53A -> 110A 1175 11B9 C53B -> 110A 1175 11BA C53C -> 110A 1175 11BB C53D -> 110A 1175 11BC C53E -> 110A 1175 11BD C53F -> 110A 1175 11BE C540 -> 110A 1175 11BF C541 -> 110A 1175 11C0 C542 -> 110A 1175 11C1 C543 -> 110A 1175 11C2 C544 -> 110B 1161 C545 -> 110B 1161 11A8 C546 -> 110B 1161 11A9 C547 -> 110B 1161 11AA C548 -> 110B 1161 11AB C549 -> 110B 1161 11AC C54A -> 110B 1161 11AD C54B -> 110B 1161 11AE C54C -> 110B 1161 11AF C54D -> 110B 1161 11B0 C54E -> 110B 1161 11B1 C54F -> 110B 1161 11B2 C550 -> 110B 1161 11B3 C551 -> 110B 1161 11B4 C552 -> 110B 1161 11B5 C553 -> 110B 1161 11B6 C554 -> 110B 1161 11B7 C555 -> 110B 1161 11B8 C556 -> 110B 1161 11B9 C557 -> 110B 1161 11BA C558 -> 110B 1161 11BB C559 -> 110B 1161 11BC C55A -> 110B 1161 11BD C55B -> 110B 1161 11BE C55C -> 110B 1161 11BF C55D -> 110B 1161 11C0 C55E -> 110B 1161 11C1 C55F -> 110B 1161 11C2 C560 -> 110B 1162 C561 -> 110B 1162 11A8 C562 -> 110B 1162 11A9 C563 -> 110B 1162 11AA C564 -> 110B 1162 11AB C565 -> 110B 1162 11AC C566 -> 110B 1162 11AD C567 -> 110B 1162 11AE C568 -> 110B 1162 11AF C569 -> 110B 1162 11B0 C56A -> 110B 1162 11B1 C56B -> 110B 1162 11B2 C56C -> 110B 1162 11B3 C56D -> 110B 1162 11B4 C56E -> 110B 1162 11B5 C56F -> 110B 1162 11B6 C570 -> 110B 1162 11B7 C571 -> 110B 1162 11B8 C572 -> 110B 1162 11B9 C573 -> 110B 1162 11BA C574 -> 110B 1162 11BB C575 -> 110B 1162 11BC C576 -> 110B 1162 11BD C577 -> 110B 1162 11BE C578 -> 110B 1162 11BF C579 -> 110B 1162 11C0 C57A -> 110B 1162 11C1 C57B -> 110B 1162 11C2 C57C -> 110B 1163 C57D -> 110B 1163 11A8 C57E -> 110B 1163 11A9 C57F -> 110B 1163 11AA C580 -> 110B 1163 11AB C581 -> 110B 1163 11AC C582 -> 110B 1163 11AD C583 -> 110B 1163 11AE C584 -> 110B 1163 11AF C585 -> 110B 1163 11B0 C586 -> 110B 1163 11B1 C587 -> 110B 1163 11B2 C588 -> 110B 1163 11B3 C589 -> 110B 1163 11B4 C58A -> 110B 1163 11B5 C58B -> 110B 1163 11B6 C58C -> 110B 1163 11B7 C58D -> 110B 1163 11B8 C58E -> 110B 1163 11B9 C58F -> 110B 1163 11BA C590 -> 110B 1163 11BB C591 -> 110B 1163 11BC C592 -> 110B 1163 11BD C593 -> 110B 1163 11BE C594 -> 110B 1163 11BF C595 -> 110B 1163 11C0 C596 -> 110B 1163 11C1 C597 -> 110B 1163 11C2 C598 -> 110B 1164 C599 -> 110B 1164 11A8 C59A -> 110B 1164 11A9 C59B -> 110B 1164 11AA C59C -> 110B 1164 11AB C59D -> 110B 1164 11AC C59E -> 110B 1164 11AD C59F -> 110B 1164 11AE C5A0 -> 110B 1164 11AF C5A1 -> 110B 1164 11B0 C5A2 -> 110B 1164 11B1 C5A3 -> 110B 1164 11B2 C5A4 -> 110B 1164 11B3 C5A5 -> 110B 1164 11B4 C5A6 -> 110B 1164 11B5 C5A7 -> 110B 1164 11B6 C5A8 -> 110B 1164 11B7 C5A9 -> 110B 1164 11B8 C5AA -> 110B 1164 11B9 C5AB -> 110B 1164 11BA C5AC -> 110B 1164 11BB C5AD -> 110B 1164 11BC C5AE -> 110B 1164 11BD C5AF -> 110B 1164 11BE C5B0 -> 110B 1164 11BF C5B1 -> 110B 1164 11C0 C5B2 -> 110B 1164 11C1 C5B3 -> 110B 1164 11C2 C5B4 -> 110B 1165 C5B5 -> 110B 1165 11A8 C5B6 -> 110B 1165 11A9 C5B7 -> 110B 1165 11AA C5B8 -> 110B 1165 11AB C5B9 -> 110B 1165 11AC C5BA -> 110B 1165 11AD C5BB -> 110B 1165 11AE C5BC -> 110B 1165 11AF C5BD -> 110B 1165 11B0 C5BE -> 110B 1165 11B1 C5BF -> 110B 1165 11B2 C5C0 -> 110B 1165 11B3 C5C1 -> 110B 1165 11B4 C5C2 -> 110B 1165 11B5 C5C3 -> 110B 1165 11B6 C5C4 -> 110B 1165 11B7 C5C5 -> 110B 1165 11B8 C5C6 -> 110B 1165 11B9 C5C7 -> 110B 1165 11BA C5C8 -> 110B 1165 11BB C5C9 -> 110B 1165 11BC C5CA -> 110B 1165 11BD C5CB -> 110B 1165 11BE C5CC -> 110B 1165 11BF C5CD -> 110B 1165 11C0 C5CE -> 110B 1165 11C1 C5CF -> 110B 1165 11C2 C5D0 -> 110B 1166 C5D1 -> 110B 1166 11A8 C5D2 -> 110B 1166 11A9 C5D3 -> 110B 1166 11AA C5D4 -> 110B 1166 11AB C5D5 -> 110B 1166 11AC C5D6 -> 110B 1166 11AD C5D7 -> 110B 1166 11AE C5D8 -> 110B 1166 11AF C5D9 -> 110B 1166 11B0 C5DA -> 110B 1166 11B1 C5DB -> 110B 1166 11B2 C5DC -> 110B 1166 11B3 C5DD -> 110B 1166 11B4 C5DE -> 110B 1166 11B5 C5DF -> 110B 1166 11B6 C5E0 -> 110B 1166 11B7 C5E1 -> 110B 1166 11B8 C5E2 -> 110B 1166 11B9 C5E3 -> 110B 1166 11BA C5E4 -> 110B 1166 11BB C5E5 -> 110B 1166 11BC C5E6 -> 110B 1166 11BD C5E7 -> 110B 1166 11BE C5E8 -> 110B 1166 11BF C5E9 -> 110B 1166 11C0 C5EA -> 110B 1166 11C1 C5EB -> 110B 1166 11C2 C5EC -> 110B 1167 C5ED -> 110B 1167 11A8 C5EE -> 110B 1167 11A9 C5EF -> 110B 1167 11AA C5F0 -> 110B 1167 11AB C5F1 -> 110B 1167 11AC C5F2 -> 110B 1167 11AD C5F3 -> 110B 1167 11AE C5F4 -> 110B 1167 11AF C5F5 -> 110B 1167 11B0 C5F6 -> 110B 1167 11B1 C5F7 -> 110B 1167 11B2 C5F8 -> 110B 1167 11B3 C5F9 -> 110B 1167 11B4 C5FA -> 110B 1167 11B5 C5FB -> 110B 1167 11B6 C5FC -> 110B 1167 11B7 C5FD -> 110B 1167 11B8 C5FE -> 110B 1167 11B9 C5FF -> 110B 1167 11BA C600 -> 110B 1167 11BB C601 -> 110B 1167 11BC C602 -> 110B 1167 11BD C603 -> 110B 1167 11BE C604 -> 110B 1167 11BF C605 -> 110B 1167 11C0 C606 -> 110B 1167 11C1 C607 -> 110B 1167 11C2 C608 -> 110B 1168 C609 -> 110B 1168 11A8 C60A -> 110B 1168 11A9 C60B -> 110B 1168 11AA C60C -> 110B 1168 11AB C60D -> 110B 1168 11AC C60E -> 110B 1168 11AD C60F -> 110B 1168 11AE C610 -> 110B 1168 11AF C611 -> 110B 1168 11B0 C612 -> 110B 1168 11B1 C613 -> 110B 1168 11B2 C614 -> 110B 1168 11B3 C615 -> 110B 1168 11B4 C616 -> 110B 1168 11B5 C617 -> 110B 1168 11B6 C618 -> 110B 1168 11B7 C619 -> 110B 1168 11B8 C61A -> 110B 1168 11B9 C61B -> 110B 1168 11BA C61C -> 110B 1168 11BB C61D -> 110B 1168 11BC C61E -> 110B 1168 11BD C61F -> 110B 1168 11BE C620 -> 110B 1168 11BF C621 -> 110B 1168 11C0 C622 -> 110B 1168 11C1 C623 -> 110B 1168 11C2 C624 -> 110B 1169 C625 -> 110B 1169 11A8 C626 -> 110B 1169 11A9 C627 -> 110B 1169 11AA C628 -> 110B 1169 11AB C629 -> 110B 1169 11AC C62A -> 110B 1169 11AD C62B -> 110B 1169 11AE C62C -> 110B 1169 11AF C62D -> 110B 1169 11B0 C62E -> 110B 1169 11B1 C62F -> 110B 1169 11B2 C630 -> 110B 1169 11B3 C631 -> 110B 1169 11B4 C632 -> 110B 1169 11B5 C633 -> 110B 1169 11B6 C634 -> 110B 1169 11B7 C635 -> 110B 1169 11B8 C636 -> 110B 1169 11B9 C637 -> 110B 1169 11BA C638 -> 110B 1169 11BB C639 -> 110B 1169 11BC C63A -> 110B 1169 11BD C63B -> 110B 1169 11BE C63C -> 110B 1169 11BF C63D -> 110B 1169 11C0 C63E -> 110B 1169 11C1 C63F -> 110B 1169 11C2 C640 -> 110B 116A C641 -> 110B 116A 11A8 C642 -> 110B 116A 11A9 C643 -> 110B 116A 11AA C644 -> 110B 116A 11AB C645 -> 110B 116A 11AC C646 -> 110B 116A 11AD C647 -> 110B 116A 11AE C648 -> 110B 116A 11AF C649 -> 110B 116A 11B0 C64A -> 110B 116A 11B1 C64B -> 110B 116A 11B2 C64C -> 110B 116A 11B3 C64D -> 110B 116A 11B4 C64E -> 110B 116A 11B5 C64F -> 110B 116A 11B6 C650 -> 110B 116A 11B7 C651 -> 110B 116A 11B8 C652 -> 110B 116A 11B9 C653 -> 110B 116A 11BA C654 -> 110B 116A 11BB C655 -> 110B 116A 11BC C656 -> 110B 116A 11BD C657 -> 110B 116A 11BE C658 -> 110B 116A 11BF C659 -> 110B 116A 11C0 C65A -> 110B 116A 11C1 C65B -> 110B 116A 11C2 C65C -> 110B 116B C65D -> 110B 116B 11A8 C65E -> 110B 116B 11A9 C65F -> 110B 116B 11AA C660 -> 110B 116B 11AB C661 -> 110B 116B 11AC C662 -> 110B 116B 11AD C663 -> 110B 116B 11AE C664 -> 110B 116B 11AF C665 -> 110B 116B 11B0 C666 -> 110B 116B 11B1 C667 -> 110B 116B 11B2 C668 -> 110B 116B 11B3 C669 -> 110B 116B 11B4 C66A -> 110B 116B 11B5 C66B -> 110B 116B 11B6 C66C -> 110B 116B 11B7 C66D -> 110B 116B 11B8 C66E -> 110B 116B 11B9 C66F -> 110B 116B 11BA C670 -> 110B 116B 11BB C671 -> 110B 116B 11BC C672 -> 110B 116B 11BD C673 -> 110B 116B 11BE C674 -> 110B 116B 11BF C675 -> 110B 116B 11C0 C676 -> 110B 116B 11C1 C677 -> 110B 116B 11C2 C678 -> 110B 116C C679 -> 110B 116C 11A8 C67A -> 110B 116C 11A9 C67B -> 110B 116C 11AA C67C -> 110B 116C 11AB C67D -> 110B 116C 11AC C67E -> 110B 116C 11AD C67F -> 110B 116C 11AE C680 -> 110B 116C 11AF C681 -> 110B 116C 11B0 C682 -> 110B 116C 11B1 C683 -> 110B 116C 11B2 C684 -> 110B 116C 11B3 C685 -> 110B 116C 11B4 C686 -> 110B 116C 11B5 C687 -> 110B 116C 11B6 C688 -> 110B 116C 11B7 C689 -> 110B 116C 11B8 C68A -> 110B 116C 11B9 C68B -> 110B 116C 11BA C68C -> 110B 116C 11BB C68D -> 110B 116C 11BC C68E -> 110B 116C 11BD C68F -> 110B 116C 11BE C690 -> 110B 116C 11BF C691 -> 110B 116C 11C0 C692 -> 110B 116C 11C1 C693 -> 110B 116C 11C2 C694 -> 110B 116D C695 -> 110B 116D 11A8 C696 -> 110B 116D 11A9 C697 -> 110B 116D 11AA C698 -> 110B 116D 11AB C699 -> 110B 116D 11AC C69A -> 110B 116D 11AD C69B -> 110B 116D 11AE C69C -> 110B 116D 11AF C69D -> 110B 116D 11B0 C69E -> 110B 116D 11B1 C69F -> 110B 116D 11B2 C6A0 -> 110B 116D 11B3 C6A1 -> 110B 116D 11B4 C6A2 -> 110B 116D 11B5 C6A3 -> 110B 116D 11B6 C6A4 -> 110B 116D 11B7 C6A5 -> 110B 116D 11B8 C6A6 -> 110B 116D 11B9 C6A7 -> 110B 116D 11BA C6A8 -> 110B 116D 11BB C6A9 -> 110B 116D 11BC C6AA -> 110B 116D 11BD C6AB -> 110B 116D 11BE C6AC -> 110B 116D 11BF C6AD -> 110B 116D 11C0 C6AE -> 110B 116D 11C1 C6AF -> 110B 116D 11C2 C6B0 -> 110B 116E C6B1 -> 110B 116E 11A8 C6B2 -> 110B 116E 11A9 C6B3 -> 110B 116E 11AA C6B4 -> 110B 116E 11AB C6B5 -> 110B 116E 11AC C6B6 -> 110B 116E 11AD C6B7 -> 110B 116E 11AE C6B8 -> 110B 116E 11AF C6B9 -> 110B 116E 11B0 C6BA -> 110B 116E 11B1 C6BB -> 110B 116E 11B2 C6BC -> 110B 116E 11B3 C6BD -> 110B 116E 11B4 C6BE -> 110B 116E 11B5 C6BF -> 110B 116E 11B6 C6C0 -> 110B 116E 11B7 C6C1 -> 110B 116E 11B8 C6C2 -> 110B 116E 11B9 C6C3 -> 110B 116E 11BA C6C4 -> 110B 116E 11BB C6C5 -> 110B 116E 11BC C6C6 -> 110B 116E 11BD C6C7 -> 110B 116E 11BE C6C8 -> 110B 116E 11BF C6C9 -> 110B 116E 11C0 C6CA -> 110B 116E 11C1 C6CB -> 110B 116E 11C2 C6CC -> 110B 116F C6CD -> 110B 116F 11A8 C6CE -> 110B 116F 11A9 C6CF -> 110B 116F 11AA C6D0 -> 110B 116F 11AB C6D1 -> 110B 116F 11AC C6D2 -> 110B 116F 11AD C6D3 -> 110B 116F 11AE C6D4 -> 110B 116F 11AF C6D5 -> 110B 116F 11B0 C6D6 -> 110B 116F 11B1 C6D7 -> 110B 116F 11B2 C6D8 -> 110B 116F 11B3 C6D9 -> 110B 116F 11B4 C6DA -> 110B 116F 11B5 C6DB -> 110B 116F 11B6 C6DC -> 110B 116F 11B7 C6DD -> 110B 116F 11B8 C6DE -> 110B 116F 11B9 C6DF -> 110B 116F 11BA C6E0 -> 110B 116F 11BB C6E1 -> 110B 116F 11BC C6E2 -> 110B 116F 11BD C6E3 -> 110B 116F 11BE C6E4 -> 110B 116F 11BF C6E5 -> 110B 116F 11C0 C6E6 -> 110B 116F 11C1 C6E7 -> 110B 116F 11C2 C6E8 -> 110B 1170 C6E9 -> 110B 1170 11A8 C6EA -> 110B 1170 11A9 C6EB -> 110B 1170 11AA C6EC -> 110B 1170 11AB C6ED -> 110B 1170 11AC C6EE -> 110B 1170 11AD C6EF -> 110B 1170 11AE C6F0 -> 110B 1170 11AF C6F1 -> 110B 1170 11B0 C6F2 -> 110B 1170 11B1 C6F3 -> 110B 1170 11B2 C6F4 -> 110B 1170 11B3 C6F5 -> 110B 1170 11B4 C6F6 -> 110B 1170 11B5 C6F7 -> 110B 1170 11B6 C6F8 -> 110B 1170 11B7 C6F9 -> 110B 1170 11B8 C6FA -> 110B 1170 11B9 C6FB -> 110B 1170 11BA C6FC -> 110B 1170 11BB C6FD -> 110B 1170 11BC C6FE -> 110B 1170 11BD C6FF -> 110B 1170 11BE C700 -> 110B 1170 11BF C701 -> 110B 1170 11C0 C702 -> 110B 1170 11C1 C703 -> 110B 1170 11C2 C704 -> 110B 1171 C705 -> 110B 1171 11A8 C706 -> 110B 1171 11A9 C707 -> 110B 1171 11AA C708 -> 110B 1171 11AB C709 -> 110B 1171 11AC C70A -> 110B 1171 11AD C70B -> 110B 1171 11AE C70C -> 110B 1171 11AF C70D -> 110B 1171 11B0 C70E -> 110B 1171 11B1 C70F -> 110B 1171 11B2 C710 -> 110B 1171 11B3 C711 -> 110B 1171 11B4 C712 -> 110B 1171 11B5 C713 -> 110B 1171 11B6 C714 -> 110B 1171 11B7 C715 -> 110B 1171 11B8 C716 -> 110B 1171 11B9 C717 -> 110B 1171 11BA C718 -> 110B 1171 11BB C719 -> 110B 1171 11BC C71A -> 110B 1171 11BD C71B -> 110B 1171 11BE C71C -> 110B 1171 11BF C71D -> 110B 1171 11C0 C71E -> 110B 1171 11C1 C71F -> 110B 1171 11C2 C720 -> 110B 1172 C721 -> 110B 1172 11A8 C722 -> 110B 1172 11A9 C723 -> 110B 1172 11AA C724 -> 110B 1172 11AB C725 -> 110B 1172 11AC C726 -> 110B 1172 11AD C727 -> 110B 1172 11AE C728 -> 110B 1172 11AF C729 -> 110B 1172 11B0 C72A -> 110B 1172 11B1 C72B -> 110B 1172 11B2 C72C -> 110B 1172 11B3 C72D -> 110B 1172 11B4 C72E -> 110B 1172 11B5 C72F -> 110B 1172 11B6 C730 -> 110B 1172 11B7 C731 -> 110B 1172 11B8 C732 -> 110B 1172 11B9 C733 -> 110B 1172 11BA C734 -> 110B 1172 11BB C735 -> 110B 1172 11BC C736 -> 110B 1172 11BD C737 -> 110B 1172 11BE C738 -> 110B 1172 11BF C739 -> 110B 1172 11C0 C73A -> 110B 1172 11C1 C73B -> 110B 1172 11C2 C73C -> 110B 1173 C73D -> 110B 1173 11A8 C73E -> 110B 1173 11A9 C73F -> 110B 1173 11AA C740 -> 110B 1173 11AB C741 -> 110B 1173 11AC C742 -> 110B 1173 11AD C743 -> 110B 1173 11AE C744 -> 110B 1173 11AF C745 -> 110B 1173 11B0 C746 -> 110B 1173 11B1 C747 -> 110B 1173 11B2 C748 -> 110B 1173 11B3 C749 -> 110B 1173 11B4 C74A -> 110B 1173 11B5 C74B -> 110B 1173 11B6 C74C -> 110B 1173 11B7 C74D -> 110B 1173 11B8 C74E -> 110B 1173 11B9 C74F -> 110B 1173 11BA C750 -> 110B 1173 11BB C751 -> 110B 1173 11BC C752 -> 110B 1173 11BD C753 -> 110B 1173 11BE C754 -> 110B 1173 11BF C755 -> 110B 1173 11C0 C756 -> 110B 1173 11C1 C757 -> 110B 1173 11C2 C758 -> 110B 1174 C759 -> 110B 1174 11A8 C75A -> 110B 1174 11A9 C75B -> 110B 1174 11AA C75C -> 110B 1174 11AB C75D -> 110B 1174 11AC C75E -> 110B 1174 11AD C75F -> 110B 1174 11AE C760 -> 110B 1174 11AF C761 -> 110B 1174 11B0 C762 -> 110B 1174 11B1 C763 -> 110B 1174 11B2 C764 -> 110B 1174 11B3 C765 -> 110B 1174 11B4 C766 -> 110B 1174 11B5 C767 -> 110B 1174 11B6 C768 -> 110B 1174 11B7 C769 -> 110B 1174 11B8 C76A -> 110B 1174 11B9 C76B -> 110B 1174 11BA C76C -> 110B 1174 11BB C76D -> 110B 1174 11BC C76E -> 110B 1174 11BD C76F -> 110B 1174 11BE C770 -> 110B 1174 11BF C771 -> 110B 1174 11C0 C772 -> 110B 1174 11C1 C773 -> 110B 1174 11C2 C774 -> 110B 1175 C775 -> 110B 1175 11A8 C776 -> 110B 1175 11A9 C777 -> 110B 1175 11AA C778 -> 110B 1175 11AB C779 -> 110B 1175 11AC C77A -> 110B 1175 11AD C77B -> 110B 1175 11AE C77C -> 110B 1175 11AF C77D -> 110B 1175 11B0 C77E -> 110B 1175 11B1 C77F -> 110B 1175 11B2 C780 -> 110B 1175 11B3 C781 -> 110B 1175 11B4 C782 -> 110B 1175 11B5 C783 -> 110B 1175 11B6 C784 -> 110B 1175 11B7 C785 -> 110B 1175 11B8 C786 -> 110B 1175 11B9 C787 -> 110B 1175 11BA C788 -> 110B 1175 11BB C789 -> 110B 1175 11BC C78A -> 110B 1175 11BD C78B -> 110B 1175 11BE C78C -> 110B 1175 11BF C78D -> 110B 1175 11C0 C78E -> 110B 1175 11C1 C78F -> 110B 1175 11C2 C790 -> 110C 1161 C791 -> 110C 1161 11A8 C792 -> 110C 1161 11A9 C793 -> 110C 1161 11AA C794 -> 110C 1161 11AB C795 -> 110C 1161 11AC C796 -> 110C 1161 11AD C797 -> 110C 1161 11AE C798 -> 110C 1161 11AF C799 -> 110C 1161 11B0 C79A -> 110C 1161 11B1 C79B -> 110C 1161 11B2 C79C -> 110C 1161 11B3 C79D -> 110C 1161 11B4 C79E -> 110C 1161 11B5 C79F -> 110C 1161 11B6 C7A0 -> 110C 1161 11B7 C7A1 -> 110C 1161 11B8 C7A2 -> 110C 1161 11B9 C7A3 -> 110C 1161 11BA C7A4 -> 110C 1161 11BB C7A5 -> 110C 1161 11BC C7A6 -> 110C 1161 11BD C7A7 -> 110C 1161 11BE C7A8 -> 110C 1161 11BF C7A9 -> 110C 1161 11C0 C7AA -> 110C 1161 11C1 C7AB -> 110C 1161 11C2 C7AC -> 110C 1162 C7AD -> 110C 1162 11A8 C7AE -> 110C 1162 11A9 C7AF -> 110C 1162 11AA C7B0 -> 110C 1162 11AB C7B1 -> 110C 1162 11AC C7B2 -> 110C 1162 11AD C7B3 -> 110C 1162 11AE C7B4 -> 110C 1162 11AF C7B5 -> 110C 1162 11B0 C7B6 -> 110C 1162 11B1 C7B7 -> 110C 1162 11B2 C7B8 -> 110C 1162 11B3 C7B9 -> 110C 1162 11B4 C7BA -> 110C 1162 11B5 C7BB -> 110C 1162 11B6 C7BC -> 110C 1162 11B7 C7BD -> 110C 1162 11B8 C7BE -> 110C 1162 11B9 C7BF -> 110C 1162 11BA C7C0 -> 110C 1162 11BB C7C1 -> 110C 1162 11BC C7C2 -> 110C 1162 11BD C7C3 -> 110C 1162 11BE C7C4 -> 110C 1162 11BF C7C5 -> 110C 1162 11C0 C7C6 -> 110C 1162 11C1 C7C7 -> 110C 1162 11C2 C7C8 -> 110C 1163 C7C9 -> 110C 1163 11A8 C7CA -> 110C 1163 11A9 C7CB -> 110C 1163 11AA C7CC -> 110C 1163 11AB C7CD -> 110C 1163 11AC C7CE -> 110C 1163 11AD C7CF -> 110C 1163 11AE C7D0 -> 110C 1163 11AF C7D1 -> 110C 1163 11B0 C7D2 -> 110C 1163 11B1 C7D3 -> 110C 1163 11B2 C7D4 -> 110C 1163 11B3 C7D5 -> 110C 1163 11B4 C7D6 -> 110C 1163 11B5 C7D7 -> 110C 1163 11B6 C7D8 -> 110C 1163 11B7 C7D9 -> 110C 1163 11B8 C7DA -> 110C 1163 11B9 C7DB -> 110C 1163 11BA C7DC -> 110C 1163 11BB C7DD -> 110C 1163 11BC C7DE -> 110C 1163 11BD C7DF -> 110C 1163 11BE C7E0 -> 110C 1163 11BF C7E1 -> 110C 1163 11C0 C7E2 -> 110C 1163 11C1 C7E3 -> 110C 1163 11C2 C7E4 -> 110C 1164 C7E5 -> 110C 1164 11A8 C7E6 -> 110C 1164 11A9 C7E7 -> 110C 1164 11AA C7E8 -> 110C 1164 11AB C7E9 -> 110C 1164 11AC C7EA -> 110C 1164 11AD C7EB -> 110C 1164 11AE C7EC -> 110C 1164 11AF C7ED -> 110C 1164 11B0 C7EE -> 110C 1164 11B1 C7EF -> 110C 1164 11B2 C7F0 -> 110C 1164 11B3 C7F1 -> 110C 1164 11B4 C7F2 -> 110C 1164 11B5 C7F3 -> 110C 1164 11B6 C7F4 -> 110C 1164 11B7 C7F5 -> 110C 1164 11B8 C7F6 -> 110C 1164 11B9 C7F7 -> 110C 1164 11BA C7F8 -> 110C 1164 11BB C7F9 -> 110C 1164 11BC C7FA -> 110C 1164 11BD C7FB -> 110C 1164 11BE C7FC -> 110C 1164 11BF C7FD -> 110C 1164 11C0 C7FE -> 110C 1164 11C1 C7FF -> 110C 1164 11C2 C800 -> 110C 1165 C801 -> 110C 1165 11A8 C802 -> 110C 1165 11A9 C803 -> 110C 1165 11AA C804 -> 110C 1165 11AB C805 -> 110C 1165 11AC C806 -> 110C 1165 11AD C807 -> 110C 1165 11AE C808 -> 110C 1165 11AF C809 -> 110C 1165 11B0 C80A -> 110C 1165 11B1 C80B -> 110C 1165 11B2 C80C -> 110C 1165 11B3 C80D -> 110C 1165 11B4 C80E -> 110C 1165 11B5 C80F -> 110C 1165 11B6 C810 -> 110C 1165 11B7 C811 -> 110C 1165 11B8 C812 -> 110C 1165 11B9 C813 -> 110C 1165 11BA C814 -> 110C 1165 11BB C815 -> 110C 1165 11BC C816 -> 110C 1165 11BD C817 -> 110C 1165 11BE C818 -> 110C 1165 11BF C819 -> 110C 1165 11C0 C81A -> 110C 1165 11C1 C81B -> 110C 1165 11C2 C81C -> 110C 1166 C81D -> 110C 1166 11A8 C81E -> 110C 1166 11A9 C81F -> 110C 1166 11AA C820 -> 110C 1166 11AB C821 -> 110C 1166 11AC C822 -> 110C 1166 11AD C823 -> 110C 1166 11AE C824 -> 110C 1166 11AF C825 -> 110C 1166 11B0 C826 -> 110C 1166 11B1 C827 -> 110C 1166 11B2 C828 -> 110C 1166 11B3 C829 -> 110C 1166 11B4 C82A -> 110C 1166 11B5 C82B -> 110C 1166 11B6 C82C -> 110C 1166 11B7 C82D -> 110C 1166 11B8 C82E -> 110C 1166 11B9 C82F -> 110C 1166 11BA C830 -> 110C 1166 11BB C831 -> 110C 1166 11BC C832 -> 110C 1166 11BD C833 -> 110C 1166 11BE C834 -> 110C 1166 11BF C835 -> 110C 1166 11C0 C836 -> 110C 1166 11C1 C837 -> 110C 1166 11C2 C838 -> 110C 1167 C839 -> 110C 1167 11A8 C83A -> 110C 1167 11A9 C83B -> 110C 1167 11AA C83C -> 110C 1167 11AB C83D -> 110C 1167 11AC C83E -> 110C 1167 11AD C83F -> 110C 1167 11AE C840 -> 110C 1167 11AF C841 -> 110C 1167 11B0 C842 -> 110C 1167 11B1 C843 -> 110C 1167 11B2 C844 -> 110C 1167 11B3 C845 -> 110C 1167 11B4 C846 -> 110C 1167 11B5 C847 -> 110C 1167 11B6 C848 -> 110C 1167 11B7 C849 -> 110C 1167 11B8 C84A -> 110C 1167 11B9 C84B -> 110C 1167 11BA C84C -> 110C 1167 11BB C84D -> 110C 1167 11BC C84E -> 110C 1167 11BD C84F -> 110C 1167 11BE C850 -> 110C 1167 11BF C851 -> 110C 1167 11C0 C852 -> 110C 1167 11C1 C853 -> 110C 1167 11C2 C854 -> 110C 1168 C855 -> 110C 1168 11A8 C856 -> 110C 1168 11A9 C857 -> 110C 1168 11AA C858 -> 110C 1168 11AB C859 -> 110C 1168 11AC C85A -> 110C 1168 11AD C85B -> 110C 1168 11AE C85C -> 110C 1168 11AF C85D -> 110C 1168 11B0 C85E -> 110C 1168 11B1 C85F -> 110C 1168 11B2 C860 -> 110C 1168 11B3 C861 -> 110C 1168 11B4 C862 -> 110C 1168 11B5 C863 -> 110C 1168 11B6 C864 -> 110C 1168 11B7 C865 -> 110C 1168 11B8 C866 -> 110C 1168 11B9 C867 -> 110C 1168 11BA C868 -> 110C 1168 11BB C869 -> 110C 1168 11BC C86A -> 110C 1168 11BD C86B -> 110C 1168 11BE C86C -> 110C 1168 11BF C86D -> 110C 1168 11C0 C86E -> 110C 1168 11C1 C86F -> 110C 1168 11C2 C870 -> 110C 1169 C871 -> 110C 1169 11A8 C872 -> 110C 1169 11A9 C873 -> 110C 1169 11AA C874 -> 110C 1169 11AB C875 -> 110C 1169 11AC C876 -> 110C 1169 11AD C877 -> 110C 1169 11AE C878 -> 110C 1169 11AF C879 -> 110C 1169 11B0 C87A -> 110C 1169 11B1 C87B -> 110C 1169 11B2 C87C -> 110C 1169 11B3 C87D -> 110C 1169 11B4 C87E -> 110C 1169 11B5 C87F -> 110C 1169 11B6 C880 -> 110C 1169 11B7 C881 -> 110C 1169 11B8 C882 -> 110C 1169 11B9 C883 -> 110C 1169 11BA C884 -> 110C 1169 11BB C885 -> 110C 1169 11BC C886 -> 110C 1169 11BD C887 -> 110C 1169 11BE C888 -> 110C 1169 11BF C889 -> 110C 1169 11C0 C88A -> 110C 1169 11C1 C88B -> 110C 1169 11C2 C88C -> 110C 116A C88D -> 110C 116A 11A8 C88E -> 110C 116A 11A9 C88F -> 110C 116A 11AA C890 -> 110C 116A 11AB C891 -> 110C 116A 11AC C892 -> 110C 116A 11AD C893 -> 110C 116A 11AE C894 -> 110C 116A 11AF C895 -> 110C 116A 11B0 C896 -> 110C 116A 11B1 C897 -> 110C 116A 11B2 C898 -> 110C 116A 11B3 C899 -> 110C 116A 11B4 C89A -> 110C 116A 11B5 C89B -> 110C 116A 11B6 C89C -> 110C 116A 11B7 C89D -> 110C 116A 11B8 C89E -> 110C 116A 11B9 C89F -> 110C 116A 11BA C8A0 -> 110C 116A 11BB C8A1 -> 110C 116A 11BC C8A2 -> 110C 116A 11BD C8A3 -> 110C 116A 11BE C8A4 -> 110C 116A 11BF C8A5 -> 110C 116A 11C0 C8A6 -> 110C 116A 11C1 C8A7 -> 110C 116A 11C2 C8A8 -> 110C 116B C8A9 -> 110C 116B 11A8 C8AA -> 110C 116B 11A9 C8AB -> 110C 116B 11AA C8AC -> 110C 116B 11AB C8AD -> 110C 116B 11AC C8AE -> 110C 116B 11AD C8AF -> 110C 116B 11AE C8B0 -> 110C 116B 11AF C8B1 -> 110C 116B 11B0 C8B2 -> 110C 116B 11B1 C8B3 -> 110C 116B 11B2 C8B4 -> 110C 116B 11B3 C8B5 -> 110C 116B 11B4 C8B6 -> 110C 116B 11B5 C8B7 -> 110C 116B 11B6 C8B8 -> 110C 116B 11B7 C8B9 -> 110C 116B 11B8 C8BA -> 110C 116B 11B9 C8BB -> 110C 116B 11BA C8BC -> 110C 116B 11BB C8BD -> 110C 116B 11BC C8BE -> 110C 116B 11BD C8BF -> 110C 116B 11BE C8C0 -> 110C 116B 11BF C8C1 -> 110C 116B 11C0 C8C2 -> 110C 116B 11C1 C8C3 -> 110C 116B 11C2 C8C4 -> 110C 116C C8C5 -> 110C 116C 11A8 C8C6 -> 110C 116C 11A9 C8C7 -> 110C 116C 11AA C8C8 -> 110C 116C 11AB C8C9 -> 110C 116C 11AC C8CA -> 110C 116C 11AD C8CB -> 110C 116C 11AE C8CC -> 110C 116C 11AF C8CD -> 110C 116C 11B0 C8CE -> 110C 116C 11B1 C8CF -> 110C 116C 11B2 C8D0 -> 110C 116C 11B3 C8D1 -> 110C 116C 11B4 C8D2 -> 110C 116C 11B5 C8D3 -> 110C 116C 11B6 C8D4 -> 110C 116C 11B7 C8D5 -> 110C 116C 11B8 C8D6 -> 110C 116C 11B9 C8D7 -> 110C 116C 11BA C8D8 -> 110C 116C 11BB C8D9 -> 110C 116C 11BC C8DA -> 110C 116C 11BD C8DB -> 110C 116C 11BE C8DC -> 110C 116C 11BF C8DD -> 110C 116C 11C0 C8DE -> 110C 116C 11C1 C8DF -> 110C 116C 11C2 C8E0 -> 110C 116D C8E1 -> 110C 116D 11A8 C8E2 -> 110C 116D 11A9 C8E3 -> 110C 116D 11AA C8E4 -> 110C 116D 11AB C8E5 -> 110C 116D 11AC C8E6 -> 110C 116D 11AD C8E7 -> 110C 116D 11AE C8E8 -> 110C 116D 11AF C8E9 -> 110C 116D 11B0 C8EA -> 110C 116D 11B1 C8EB -> 110C 116D 11B2 C8EC -> 110C 116D 11B3 C8ED -> 110C 116D 11B4 C8EE -> 110C 116D 11B5 C8EF -> 110C 116D 11B6 C8F0 -> 110C 116D 11B7 C8F1 -> 110C 116D 11B8 C8F2 -> 110C 116D 11B9 C8F3 -> 110C 116D 11BA C8F4 -> 110C 116D 11BB C8F5 -> 110C 116D 11BC C8F6 -> 110C 116D 11BD C8F7 -> 110C 116D 11BE C8F8 -> 110C 116D 11BF C8F9 -> 110C 116D 11C0 C8FA -> 110C 116D 11C1 C8FB -> 110C 116D 11C2 C8FC -> 110C 116E C8FD -> 110C 116E 11A8 C8FE -> 110C 116E 11A9 C8FF -> 110C 116E 11AA C900 -> 110C 116E 11AB C901 -> 110C 116E 11AC C902 -> 110C 116E 11AD C903 -> 110C 116E 11AE C904 -> 110C 116E 11AF C905 -> 110C 116E 11B0 C906 -> 110C 116E 11B1 C907 -> 110C 116E 11B2 C908 -> 110C 116E 11B3 C909 -> 110C 116E 11B4 C90A -> 110C 116E 11B5 C90B -> 110C 116E 11B6 C90C -> 110C 116E 11B7 C90D -> 110C 116E 11B8 C90E -> 110C 116E 11B9 C90F -> 110C 116E 11BA C910 -> 110C 116E 11BB C911 -> 110C 116E 11BC C912 -> 110C 116E 11BD C913 -> 110C 116E 11BE C914 -> 110C 116E 11BF C915 -> 110C 116E 11C0 C916 -> 110C 116E 11C1 C917 -> 110C 116E 11C2 C918 -> 110C 116F C919 -> 110C 116F 11A8 C91A -> 110C 116F 11A9 C91B -> 110C 116F 11AA C91C -> 110C 116F 11AB C91D -> 110C 116F 11AC C91E -> 110C 116F 11AD C91F -> 110C 116F 11AE C920 -> 110C 116F 11AF C921 -> 110C 116F 11B0 C922 -> 110C 116F 11B1 C923 -> 110C 116F 11B2 C924 -> 110C 116F 11B3 C925 -> 110C 116F 11B4 C926 -> 110C 116F 11B5 C927 -> 110C 116F 11B6 C928 -> 110C 116F 11B7 C929 -> 110C 116F 11B8 C92A -> 110C 116F 11B9 C92B -> 110C 116F 11BA C92C -> 110C 116F 11BB C92D -> 110C 116F 11BC C92E -> 110C 116F 11BD C92F -> 110C 116F 11BE C930 -> 110C 116F 11BF C931 -> 110C 116F 11C0 C932 -> 110C 116F 11C1 C933 -> 110C 116F 11C2 C934 -> 110C 1170 C935 -> 110C 1170 11A8 C936 -> 110C 1170 11A9 C937 -> 110C 1170 11AA C938 -> 110C 1170 11AB C939 -> 110C 1170 11AC C93A -> 110C 1170 11AD C93B -> 110C 1170 11AE C93C -> 110C 1170 11AF C93D -> 110C 1170 11B0 C93E -> 110C 1170 11B1 C93F -> 110C 1170 11B2 C940 -> 110C 1170 11B3 C941 -> 110C 1170 11B4 C942 -> 110C 1170 11B5 C943 -> 110C 1170 11B6 C944 -> 110C 1170 11B7 C945 -> 110C 1170 11B8 C946 -> 110C 1170 11B9 C947 -> 110C 1170 11BA C948 -> 110C 1170 11BB C949 -> 110C 1170 11BC C94A -> 110C 1170 11BD C94B -> 110C 1170 11BE C94C -> 110C 1170 11BF C94D -> 110C 1170 11C0 C94E -> 110C 1170 11C1 C94F -> 110C 1170 11C2 C950 -> 110C 1171 C951 -> 110C 1171 11A8 C952 -> 110C 1171 11A9 C953 -> 110C 1171 11AA C954 -> 110C 1171 11AB C955 -> 110C 1171 11AC C956 -> 110C 1171 11AD C957 -> 110C 1171 11AE C958 -> 110C 1171 11AF C959 -> 110C 1171 11B0 C95A -> 110C 1171 11B1 C95B -> 110C 1171 11B2 C95C -> 110C 1171 11B3 C95D -> 110C 1171 11B4 C95E -> 110C 1171 11B5 C95F -> 110C 1171 11B6 C960 -> 110C 1171 11B7 C961 -> 110C 1171 11B8 C962 -> 110C 1171 11B9 C963 -> 110C 1171 11BA C964 -> 110C 1171 11BB C965 -> 110C 1171 11BC C966 -> 110C 1171 11BD C967 -> 110C 1171 11BE C968 -> 110C 1171 11BF C969 -> 110C 1171 11C0 C96A -> 110C 1171 11C1 C96B -> 110C 1171 11C2 C96C -> 110C 1172 C96D -> 110C 1172 11A8 C96E -> 110C 1172 11A9 C96F -> 110C 1172 11AA C970 -> 110C 1172 11AB C971 -> 110C 1172 11AC C972 -> 110C 1172 11AD C973 -> 110C 1172 11AE C974 -> 110C 1172 11AF C975 -> 110C 1172 11B0 C976 -> 110C 1172 11B1 C977 -> 110C 1172 11B2 C978 -> 110C 1172 11B3 C979 -> 110C 1172 11B4 C97A -> 110C 1172 11B5 C97B -> 110C 1172 11B6 C97C -> 110C 1172 11B7 C97D -> 110C 1172 11B8 C97E -> 110C 1172 11B9 C97F -> 110C 1172 11BA C980 -> 110C 1172 11BB C981 -> 110C 1172 11BC C982 -> 110C 1172 11BD C983 -> 110C 1172 11BE C984 -> 110C 1172 11BF C985 -> 110C 1172 11C0 C986 -> 110C 1172 11C1 C987 -> 110C 1172 11C2 C988 -> 110C 1173 C989 -> 110C 1173 11A8 C98A -> 110C 1173 11A9 C98B -> 110C 1173 11AA C98C -> 110C 1173 11AB C98D -> 110C 1173 11AC C98E -> 110C 1173 11AD C98F -> 110C 1173 11AE C990 -> 110C 1173 11AF C991 -> 110C 1173 11B0 C992 -> 110C 1173 11B1 C993 -> 110C 1173 11B2 C994 -> 110C 1173 11B3 C995 -> 110C 1173 11B4 C996 -> 110C 1173 11B5 C997 -> 110C 1173 11B6 C998 -> 110C 1173 11B7 C999 -> 110C 1173 11B8 C99A -> 110C 1173 11B9 C99B -> 110C 1173 11BA C99C -> 110C 1173 11BB C99D -> 110C 1173 11BC C99E -> 110C 1173 11BD C99F -> 110C 1173 11BE C9A0 -> 110C 1173 11BF C9A1 -> 110C 1173 11C0 C9A2 -> 110C 1173 11C1 C9A3 -> 110C 1173 11C2 C9A4 -> 110C 1174 C9A5 -> 110C 1174 11A8 C9A6 -> 110C 1174 11A9 C9A7 -> 110C 1174 11AA C9A8 -> 110C 1174 11AB C9A9 -> 110C 1174 11AC C9AA -> 110C 1174 11AD C9AB -> 110C 1174 11AE C9AC -> 110C 1174 11AF C9AD -> 110C 1174 11B0 C9AE -> 110C 1174 11B1 C9AF -> 110C 1174 11B2 C9B0 -> 110C 1174 11B3 C9B1 -> 110C 1174 11B4 C9B2 -> 110C 1174 11B5 C9B3 -> 110C 1174 11B6 C9B4 -> 110C 1174 11B7 C9B5 -> 110C 1174 11B8 C9B6 -> 110C 1174 11B9 C9B7 -> 110C 1174 11BA C9B8 -> 110C 1174 11BB C9B9 -> 110C 1174 11BC C9BA -> 110C 1174 11BD C9BB -> 110C 1174 11BE C9BC -> 110C 1174 11BF C9BD -> 110C 1174 11C0 C9BE -> 110C 1174 11C1 C9BF -> 110C 1174 11C2 C9C0 -> 110C 1175 C9C1 -> 110C 1175 11A8 C9C2 -> 110C 1175 11A9 C9C3 -> 110C 1175 11AA C9C4 -> 110C 1175 11AB C9C5 -> 110C 1175 11AC C9C6 -> 110C 1175 11AD C9C7 -> 110C 1175 11AE C9C8 -> 110C 1175 11AF C9C9 -> 110C 1175 11B0 C9CA -> 110C 1175 11B1 C9CB -> 110C 1175 11B2 C9CC -> 110C 1175 11B3 C9CD -> 110C 1175 11B4 C9CE -> 110C 1175 11B5 C9CF -> 110C 1175 11B6 C9D0 -> 110C 1175 11B7 C9D1 -> 110C 1175 11B8 C9D2 -> 110C 1175 11B9 C9D3 -> 110C 1175 11BA C9D4 -> 110C 1175 11BB C9D5 -> 110C 1175 11BC C9D6 -> 110C 1175 11BD C9D7 -> 110C 1175 11BE C9D8 -> 110C 1175 11BF C9D9 -> 110C 1175 11C0 C9DA -> 110C 1175 11C1 C9DB -> 110C 1175 11C2 C9DC -> 110D 1161 C9DD -> 110D 1161 11A8 C9DE -> 110D 1161 11A9 C9DF -> 110D 1161 11AA C9E0 -> 110D 1161 11AB C9E1 -> 110D 1161 11AC C9E2 -> 110D 1161 11AD C9E3 -> 110D 1161 11AE C9E4 -> 110D 1161 11AF C9E5 -> 110D 1161 11B0 C9E6 -> 110D 1161 11B1 C9E7 -> 110D 1161 11B2 C9E8 -> 110D 1161 11B3 C9E9 -> 110D 1161 11B4 C9EA -> 110D 1161 11B5 C9EB -> 110D 1161 11B6 C9EC -> 110D 1161 11B7 C9ED -> 110D 1161 11B8 C9EE -> 110D 1161 11B9 C9EF -> 110D 1161 11BA C9F0 -> 110D 1161 11BB C9F1 -> 110D 1161 11BC C9F2 -> 110D 1161 11BD C9F3 -> 110D 1161 11BE C9F4 -> 110D 1161 11BF C9F5 -> 110D 1161 11C0 C9F6 -> 110D 1161 11C1 C9F7 -> 110D 1161 11C2 C9F8 -> 110D 1162 C9F9 -> 110D 1162 11A8 C9FA -> 110D 1162 11A9 C9FB -> 110D 1162 11AA C9FC -> 110D 1162 11AB C9FD -> 110D 1162 11AC C9FE -> 110D 1162 11AD C9FF -> 110D 1162 11AE CA00 -> 110D 1162 11AF CA01 -> 110D 1162 11B0 CA02 -> 110D 1162 11B1 CA03 -> 110D 1162 11B2 CA04 -> 110D 1162 11B3 CA05 -> 110D 1162 11B4 CA06 -> 110D 1162 11B5 CA07 -> 110D 1162 11B6 CA08 -> 110D 1162 11B7 CA09 -> 110D 1162 11B8 CA0A -> 110D 1162 11B9 CA0B -> 110D 1162 11BA CA0C -> 110D 1162 11BB CA0D -> 110D 1162 11BC CA0E -> 110D 1162 11BD CA0F -> 110D 1162 11BE CA10 -> 110D 1162 11BF CA11 -> 110D 1162 11C0 CA12 -> 110D 1162 11C1 CA13 -> 110D 1162 11C2 CA14 -> 110D 1163 CA15 -> 110D 1163 11A8 CA16 -> 110D 1163 11A9 CA17 -> 110D 1163 11AA CA18 -> 110D 1163 11AB CA19 -> 110D 1163 11AC CA1A -> 110D 1163 11AD CA1B -> 110D 1163 11AE CA1C -> 110D 1163 11AF CA1D -> 110D 1163 11B0 CA1E -> 110D 1163 11B1 CA1F -> 110D 1163 11B2 CA20 -> 110D 1163 11B3 CA21 -> 110D 1163 11B4 CA22 -> 110D 1163 11B5 CA23 -> 110D 1163 11B6 CA24 -> 110D 1163 11B7 CA25 -> 110D 1163 11B8 CA26 -> 110D 1163 11B9 CA27 -> 110D 1163 11BA CA28 -> 110D 1163 11BB CA29 -> 110D 1163 11BC CA2A -> 110D 1163 11BD CA2B -> 110D 1163 11BE CA2C -> 110D 1163 11BF CA2D -> 110D 1163 11C0 CA2E -> 110D 1163 11C1 CA2F -> 110D 1163 11C2 CA30 -> 110D 1164 CA31 -> 110D 1164 11A8 CA32 -> 110D 1164 11A9 CA33 -> 110D 1164 11AA CA34 -> 110D 1164 11AB CA35 -> 110D 1164 11AC CA36 -> 110D 1164 11AD CA37 -> 110D 1164 11AE CA38 -> 110D 1164 11AF CA39 -> 110D 1164 11B0 CA3A -> 110D 1164 11B1 CA3B -> 110D 1164 11B2 CA3C -> 110D 1164 11B3 CA3D -> 110D 1164 11B4 CA3E -> 110D 1164 11B5 CA3F -> 110D 1164 11B6 CA40 -> 110D 1164 11B7 CA41 -> 110D 1164 11B8 CA42 -> 110D 1164 11B9 CA43 -> 110D 1164 11BA CA44 -> 110D 1164 11BB CA45 -> 110D 1164 11BC CA46 -> 110D 1164 11BD CA47 -> 110D 1164 11BE CA48 -> 110D 1164 11BF CA49 -> 110D 1164 11C0 CA4A -> 110D 1164 11C1 CA4B -> 110D 1164 11C2 CA4C -> 110D 1165 CA4D -> 110D 1165 11A8 CA4E -> 110D 1165 11A9 CA4F -> 110D 1165 11AA CA50 -> 110D 1165 11AB CA51 -> 110D 1165 11AC CA52 -> 110D 1165 11AD CA53 -> 110D 1165 11AE CA54 -> 110D 1165 11AF CA55 -> 110D 1165 11B0 CA56 -> 110D 1165 11B1 CA57 -> 110D 1165 11B2 CA58 -> 110D 1165 11B3 CA59 -> 110D 1165 11B4 CA5A -> 110D 1165 11B5 CA5B -> 110D 1165 11B6 CA5C -> 110D 1165 11B7 CA5D -> 110D 1165 11B8 CA5E -> 110D 1165 11B9 CA5F -> 110D 1165 11BA CA60 -> 110D 1165 11BB CA61 -> 110D 1165 11BC CA62 -> 110D 1165 11BD CA63 -> 110D 1165 11BE CA64 -> 110D 1165 11BF CA65 -> 110D 1165 11C0 CA66 -> 110D 1165 11C1 CA67 -> 110D 1165 11C2 CA68 -> 110D 1166 CA69 -> 110D 1166 11A8 CA6A -> 110D 1166 11A9 CA6B -> 110D 1166 11AA CA6C -> 110D 1166 11AB CA6D -> 110D 1166 11AC CA6E -> 110D 1166 11AD CA6F -> 110D 1166 11AE CA70 -> 110D 1166 11AF CA71 -> 110D 1166 11B0 CA72 -> 110D 1166 11B1 CA73 -> 110D 1166 11B2 CA74 -> 110D 1166 11B3 CA75 -> 110D 1166 11B4 CA76 -> 110D 1166 11B5 CA77 -> 110D 1166 11B6 CA78 -> 110D 1166 11B7 CA79 -> 110D 1166 11B8 CA7A -> 110D 1166 11B9 CA7B -> 110D 1166 11BA CA7C -> 110D 1166 11BB CA7D -> 110D 1166 11BC CA7E -> 110D 1166 11BD CA7F -> 110D 1166 11BE CA80 -> 110D 1166 11BF CA81 -> 110D 1166 11C0 CA82 -> 110D 1166 11C1 CA83 -> 110D 1166 11C2 CA84 -> 110D 1167 CA85 -> 110D 1167 11A8 CA86 -> 110D 1167 11A9 CA87 -> 110D 1167 11AA CA88 -> 110D 1167 11AB CA89 -> 110D 1167 11AC CA8A -> 110D 1167 11AD CA8B -> 110D 1167 11AE CA8C -> 110D 1167 11AF CA8D -> 110D 1167 11B0 CA8E -> 110D 1167 11B1 CA8F -> 110D 1167 11B2 CA90 -> 110D 1167 11B3 CA91 -> 110D 1167 11B4 CA92 -> 110D 1167 11B5 CA93 -> 110D 1167 11B6 CA94 -> 110D 1167 11B7 CA95 -> 110D 1167 11B8 CA96 -> 110D 1167 11B9 CA97 -> 110D 1167 11BA CA98 -> 110D 1167 11BB CA99 -> 110D 1167 11BC CA9A -> 110D 1167 11BD CA9B -> 110D 1167 11BE CA9C -> 110D 1167 11BF CA9D -> 110D 1167 11C0 CA9E -> 110D 1167 11C1 CA9F -> 110D 1167 11C2 CAA0 -> 110D 1168 CAA1 -> 110D 1168 11A8 CAA2 -> 110D 1168 11A9 CAA3 -> 110D 1168 11AA CAA4 -> 110D 1168 11AB CAA5 -> 110D 1168 11AC CAA6 -> 110D 1168 11AD CAA7 -> 110D 1168 11AE CAA8 -> 110D 1168 11AF CAA9 -> 110D 1168 11B0 CAAA -> 110D 1168 11B1 CAAB -> 110D 1168 11B2 CAAC -> 110D 1168 11B3 CAAD -> 110D 1168 11B4 CAAE -> 110D 1168 11B5 CAAF -> 110D 1168 11B6 CAB0 -> 110D 1168 11B7 CAB1 -> 110D 1168 11B8 CAB2 -> 110D 1168 11B9 CAB3 -> 110D 1168 11BA CAB4 -> 110D 1168 11BB CAB5 -> 110D 1168 11BC CAB6 -> 110D 1168 11BD CAB7 -> 110D 1168 11BE CAB8 -> 110D 1168 11BF CAB9 -> 110D 1168 11C0 CABA -> 110D 1168 11C1 CABB -> 110D 1168 11C2 CABC -> 110D 1169 CABD -> 110D 1169 11A8 CABE -> 110D 1169 11A9 CABF -> 110D 1169 11AA CAC0 -> 110D 1169 11AB CAC1 -> 110D 1169 11AC CAC2 -> 110D 1169 11AD CAC3 -> 110D 1169 11AE CAC4 -> 110D 1169 11AF CAC5 -> 110D 1169 11B0 CAC6 -> 110D 1169 11B1 CAC7 -> 110D 1169 11B2 CAC8 -> 110D 1169 11B3 CAC9 -> 110D 1169 11B4 CACA -> 110D 1169 11B5 CACB -> 110D 1169 11B6 CACC -> 110D 1169 11B7 CACD -> 110D 1169 11B8 CACE -> 110D 1169 11B9 CACF -> 110D 1169 11BA CAD0 -> 110D 1169 11BB CAD1 -> 110D 1169 11BC CAD2 -> 110D 1169 11BD CAD3 -> 110D 1169 11BE CAD4 -> 110D 1169 11BF CAD5 -> 110D 1169 11C0 CAD6 -> 110D 1169 11C1 CAD7 -> 110D 1169 11C2 CAD8 -> 110D 116A CAD9 -> 110D 116A 11A8 CADA -> 110D 116A 11A9 CADB -> 110D 116A 11AA CADC -> 110D 116A 11AB CADD -> 110D 116A 11AC CADE -> 110D 116A 11AD CADF -> 110D 116A 11AE CAE0 -> 110D 116A 11AF CAE1 -> 110D 116A 11B0 CAE2 -> 110D 116A 11B1 CAE3 -> 110D 116A 11B2 CAE4 -> 110D 116A 11B3 CAE5 -> 110D 116A 11B4 CAE6 -> 110D 116A 11B5 CAE7 -> 110D 116A 11B6 CAE8 -> 110D 116A 11B7 CAE9 -> 110D 116A 11B8 CAEA -> 110D 116A 11B9 CAEB -> 110D 116A 11BA CAEC -> 110D 116A 11BB CAED -> 110D 116A 11BC CAEE -> 110D 116A 11BD CAEF -> 110D 116A 11BE CAF0 -> 110D 116A 11BF CAF1 -> 110D 116A 11C0 CAF2 -> 110D 116A 11C1 CAF3 -> 110D 116A 11C2 CAF4 -> 110D 116B CAF5 -> 110D 116B 11A8 CAF6 -> 110D 116B 11A9 CAF7 -> 110D 116B 11AA CAF8 -> 110D 116B 11AB CAF9 -> 110D 116B 11AC CAFA -> 110D 116B 11AD CAFB -> 110D 116B 11AE CAFC -> 110D 116B 11AF CAFD -> 110D 116B 11B0 CAFE -> 110D 116B 11B1 CAFF -> 110D 116B 11B2 CB00 -> 110D 116B 11B3 CB01 -> 110D 116B 11B4 CB02 -> 110D 116B 11B5 CB03 -> 110D 116B 11B6 CB04 -> 110D 116B 11B7 CB05 -> 110D 116B 11B8 CB06 -> 110D 116B 11B9 CB07 -> 110D 116B 11BA CB08 -> 110D 116B 11BB CB09 -> 110D 116B 11BC CB0A -> 110D 116B 11BD CB0B -> 110D 116B 11BE CB0C -> 110D 116B 11BF CB0D -> 110D 116B 11C0 CB0E -> 110D 116B 11C1 CB0F -> 110D 116B 11C2 CB10 -> 110D 116C CB11 -> 110D 116C 11A8 CB12 -> 110D 116C 11A9 CB13 -> 110D 116C 11AA CB14 -> 110D 116C 11AB CB15 -> 110D 116C 11AC CB16 -> 110D 116C 11AD CB17 -> 110D 116C 11AE CB18 -> 110D 116C 11AF CB19 -> 110D 116C 11B0 CB1A -> 110D 116C 11B1 CB1B -> 110D 116C 11B2 CB1C -> 110D 116C 11B3 CB1D -> 110D 116C 11B4 CB1E -> 110D 116C 11B5 CB1F -> 110D 116C 11B6 CB20 -> 110D 116C 11B7 CB21 -> 110D 116C 11B8 CB22 -> 110D 116C 11B9 CB23 -> 110D 116C 11BA CB24 -> 110D 116C 11BB CB25 -> 110D 116C 11BC CB26 -> 110D 116C 11BD CB27 -> 110D 116C 11BE CB28 -> 110D 116C 11BF CB29 -> 110D 116C 11C0 CB2A -> 110D 116C 11C1 CB2B -> 110D 116C 11C2 CB2C -> 110D 116D CB2D -> 110D 116D 11A8 CB2E -> 110D 116D 11A9 CB2F -> 110D 116D 11AA CB30 -> 110D 116D 11AB CB31 -> 110D 116D 11AC CB32 -> 110D 116D 11AD CB33 -> 110D 116D 11AE CB34 -> 110D 116D 11AF CB35 -> 110D 116D 11B0 CB36 -> 110D 116D 11B1 CB37 -> 110D 116D 11B2 CB38 -> 110D 116D 11B3 CB39 -> 110D 116D 11B4 CB3A -> 110D 116D 11B5 CB3B -> 110D 116D 11B6 CB3C -> 110D 116D 11B7 CB3D -> 110D 116D 11B8 CB3E -> 110D 116D 11B9 CB3F -> 110D 116D 11BA CB40 -> 110D 116D 11BB CB41 -> 110D 116D 11BC CB42 -> 110D 116D 11BD CB43 -> 110D 116D 11BE CB44 -> 110D 116D 11BF CB45 -> 110D 116D 11C0 CB46 -> 110D 116D 11C1 CB47 -> 110D 116D 11C2 CB48 -> 110D 116E CB49 -> 110D 116E 11A8 CB4A -> 110D 116E 11A9 CB4B -> 110D 116E 11AA CB4C -> 110D 116E 11AB CB4D -> 110D 116E 11AC CB4E -> 110D 116E 11AD CB4F -> 110D 116E 11AE CB50 -> 110D 116E 11AF CB51 -> 110D 116E 11B0 CB52 -> 110D 116E 11B1 CB53 -> 110D 116E 11B2 CB54 -> 110D 116E 11B3 CB55 -> 110D 116E 11B4 CB56 -> 110D 116E 11B5 CB57 -> 110D 116E 11B6 CB58 -> 110D 116E 11B7 CB59 -> 110D 116E 11B8 CB5A -> 110D 116E 11B9 CB5B -> 110D 116E 11BA CB5C -> 110D 116E 11BB CB5D -> 110D 116E 11BC CB5E -> 110D 116E 11BD CB5F -> 110D 116E 11BE CB60 -> 110D 116E 11BF CB61 -> 110D 116E 11C0 CB62 -> 110D 116E 11C1 CB63 -> 110D 116E 11C2 CB64 -> 110D 116F CB65 -> 110D 116F 11A8 CB66 -> 110D 116F 11A9 CB67 -> 110D 116F 11AA CB68 -> 110D 116F 11AB CB69 -> 110D 116F 11AC CB6A -> 110D 116F 11AD CB6B -> 110D 116F 11AE CB6C -> 110D 116F 11AF CB6D -> 110D 116F 11B0 CB6E -> 110D 116F 11B1 CB6F -> 110D 116F 11B2 CB70 -> 110D 116F 11B3 CB71 -> 110D 116F 11B4 CB72 -> 110D 116F 11B5 CB73 -> 110D 116F 11B6 CB74 -> 110D 116F 11B7 CB75 -> 110D 116F 11B8 CB76 -> 110D 116F 11B9 CB77 -> 110D 116F 11BA CB78 -> 110D 116F 11BB CB79 -> 110D 116F 11BC CB7A -> 110D 116F 11BD CB7B -> 110D 116F 11BE CB7C -> 110D 116F 11BF CB7D -> 110D 116F 11C0 CB7E -> 110D 116F 11C1 CB7F -> 110D 116F 11C2 CB80 -> 110D 1170 CB81 -> 110D 1170 11A8 CB82 -> 110D 1170 11A9 CB83 -> 110D 1170 11AA CB84 -> 110D 1170 11AB CB85 -> 110D 1170 11AC CB86 -> 110D 1170 11AD CB87 -> 110D 1170 11AE CB88 -> 110D 1170 11AF CB89 -> 110D 1170 11B0 CB8A -> 110D 1170 11B1 CB8B -> 110D 1170 11B2 CB8C -> 110D 1170 11B3 CB8D -> 110D 1170 11B4 CB8E -> 110D 1170 11B5 CB8F -> 110D 1170 11B6 CB90 -> 110D 1170 11B7 CB91 -> 110D 1170 11B8 CB92 -> 110D 1170 11B9 CB93 -> 110D 1170 11BA CB94 -> 110D 1170 11BB CB95 -> 110D 1170 11BC CB96 -> 110D 1170 11BD CB97 -> 110D 1170 11BE CB98 -> 110D 1170 11BF CB99 -> 110D 1170 11C0 CB9A -> 110D 1170 11C1 CB9B -> 110D 1170 11C2 CB9C -> 110D 1171 CB9D -> 110D 1171 11A8 CB9E -> 110D 1171 11A9 CB9F -> 110D 1171 11AA CBA0 -> 110D 1171 11AB CBA1 -> 110D 1171 11AC CBA2 -> 110D 1171 11AD CBA3 -> 110D 1171 11AE CBA4 -> 110D 1171 11AF CBA5 -> 110D 1171 11B0 CBA6 -> 110D 1171 11B1 CBA7 -> 110D 1171 11B2 CBA8 -> 110D 1171 11B3 CBA9 -> 110D 1171 11B4 CBAA -> 110D 1171 11B5 CBAB -> 110D 1171 11B6 CBAC -> 110D 1171 11B7 CBAD -> 110D 1171 11B8 CBAE -> 110D 1171 11B9 CBAF -> 110D 1171 11BA CBB0 -> 110D 1171 11BB CBB1 -> 110D 1171 11BC CBB2 -> 110D 1171 11BD CBB3 -> 110D 1171 11BE CBB4 -> 110D 1171 11BF CBB5 -> 110D 1171 11C0 CBB6 -> 110D 1171 11C1 CBB7 -> 110D 1171 11C2 CBB8 -> 110D 1172 CBB9 -> 110D 1172 11A8 CBBA -> 110D 1172 11A9 CBBB -> 110D 1172 11AA CBBC -> 110D 1172 11AB CBBD -> 110D 1172 11AC CBBE -> 110D 1172 11AD CBBF -> 110D 1172 11AE CBC0 -> 110D 1172 11AF CBC1 -> 110D 1172 11B0 CBC2 -> 110D 1172 11B1 CBC3 -> 110D 1172 11B2 CBC4 -> 110D 1172 11B3 CBC5 -> 110D 1172 11B4 CBC6 -> 110D 1172 11B5 CBC7 -> 110D 1172 11B6 CBC8 -> 110D 1172 11B7 CBC9 -> 110D 1172 11B8 CBCA -> 110D 1172 11B9 CBCB -> 110D 1172 11BA CBCC -> 110D 1172 11BB CBCD -> 110D 1172 11BC CBCE -> 110D 1172 11BD CBCF -> 110D 1172 11BE CBD0 -> 110D 1172 11BF CBD1 -> 110D 1172 11C0 CBD2 -> 110D 1172 11C1 CBD3 -> 110D 1172 11C2 CBD4 -> 110D 1173 CBD5 -> 110D 1173 11A8 CBD6 -> 110D 1173 11A9 CBD7 -> 110D 1173 11AA CBD8 -> 110D 1173 11AB CBD9 -> 110D 1173 11AC CBDA -> 110D 1173 11AD CBDB -> 110D 1173 11AE CBDC -> 110D 1173 11AF CBDD -> 110D 1173 11B0 CBDE -> 110D 1173 11B1 CBDF -> 110D 1173 11B2 CBE0 -> 110D 1173 11B3 CBE1 -> 110D 1173 11B4 CBE2 -> 110D 1173 11B5 CBE3 -> 110D 1173 11B6 CBE4 -> 110D 1173 11B7 CBE5 -> 110D 1173 11B8 CBE6 -> 110D 1173 11B9 CBE7 -> 110D 1173 11BA CBE8 -> 110D 1173 11BB CBE9 -> 110D 1173 11BC CBEA -> 110D 1173 11BD CBEB -> 110D 1173 11BE CBEC -> 110D 1173 11BF CBED -> 110D 1173 11C0 CBEE -> 110D 1173 11C1 CBEF -> 110D 1173 11C2 CBF0 -> 110D 1174 CBF1 -> 110D 1174 11A8 CBF2 -> 110D 1174 11A9 CBF3 -> 110D 1174 11AA CBF4 -> 110D 1174 11AB CBF5 -> 110D 1174 11AC CBF6 -> 110D 1174 11AD CBF7 -> 110D 1174 11AE CBF8 -> 110D 1174 11AF CBF9 -> 110D 1174 11B0 CBFA -> 110D 1174 11B1 CBFB -> 110D 1174 11B2 CBFC -> 110D 1174 11B3 CBFD -> 110D 1174 11B4 CBFE -> 110D 1174 11B5 CBFF -> 110D 1174 11B6 CC00 -> 110D 1174 11B7 CC01 -> 110D 1174 11B8 CC02 -> 110D 1174 11B9 CC03 -> 110D 1174 11BA CC04 -> 110D 1174 11BB CC05 -> 110D 1174 11BC CC06 -> 110D 1174 11BD CC07 -> 110D 1174 11BE CC08 -> 110D 1174 11BF CC09 -> 110D 1174 11C0 CC0A -> 110D 1174 11C1 CC0B -> 110D 1174 11C2 CC0C -> 110D 1175 CC0D -> 110D 1175 11A8 CC0E -> 110D 1175 11A9 CC0F -> 110D 1175 11AA CC10 -> 110D 1175 11AB CC11 -> 110D 1175 11AC CC12 -> 110D 1175 11AD CC13 -> 110D 1175 11AE CC14 -> 110D 1175 11AF CC15 -> 110D 1175 11B0 CC16 -> 110D 1175 11B1 CC17 -> 110D 1175 11B2 CC18 -> 110D 1175 11B3 CC19 -> 110D 1175 11B4 CC1A -> 110D 1175 11B5 CC1B -> 110D 1175 11B6 CC1C -> 110D 1175 11B7 CC1D -> 110D 1175 11B8 CC1E -> 110D 1175 11B9 CC1F -> 110D 1175 11BA CC20 -> 110D 1175 11BB CC21 -> 110D 1175 11BC CC22 -> 110D 1175 11BD CC23 -> 110D 1175 11BE CC24 -> 110D 1175 11BF CC25 -> 110D 1175 11C0 CC26 -> 110D 1175 11C1 CC27 -> 110D 1175 11C2 CC28 -> 110E 1161 CC29 -> 110E 1161 11A8 CC2A -> 110E 1161 11A9 CC2B -> 110E 1161 11AA CC2C -> 110E 1161 11AB CC2D -> 110E 1161 11AC CC2E -> 110E 1161 11AD CC2F -> 110E 1161 11AE CC30 -> 110E 1161 11AF CC31 -> 110E 1161 11B0 CC32 -> 110E 1161 11B1 CC33 -> 110E 1161 11B2 CC34 -> 110E 1161 11B3 CC35 -> 110E 1161 11B4 CC36 -> 110E 1161 11B5 CC37 -> 110E 1161 11B6 CC38 -> 110E 1161 11B7 CC39 -> 110E 1161 11B8 CC3A -> 110E 1161 11B9 CC3B -> 110E 1161 11BA CC3C -> 110E 1161 11BB CC3D -> 110E 1161 11BC CC3E -> 110E 1161 11BD CC3F -> 110E 1161 11BE CC40 -> 110E 1161 11BF CC41 -> 110E 1161 11C0 CC42 -> 110E 1161 11C1 CC43 -> 110E 1161 11C2 CC44 -> 110E 1162 CC45 -> 110E 1162 11A8 CC46 -> 110E 1162 11A9 CC47 -> 110E 1162 11AA CC48 -> 110E 1162 11AB CC49 -> 110E 1162 11AC CC4A -> 110E 1162 11AD CC4B -> 110E 1162 11AE CC4C -> 110E 1162 11AF CC4D -> 110E 1162 11B0 CC4E -> 110E 1162 11B1 CC4F -> 110E 1162 11B2 CC50 -> 110E 1162 11B3 CC51 -> 110E 1162 11B4 CC52 -> 110E 1162 11B5 CC53 -> 110E 1162 11B6 CC54 -> 110E 1162 11B7 CC55 -> 110E 1162 11B8 CC56 -> 110E 1162 11B9 CC57 -> 110E 1162 11BA CC58 -> 110E 1162 11BB CC59 -> 110E 1162 11BC CC5A -> 110E 1162 11BD CC5B -> 110E 1162 11BE CC5C -> 110E 1162 11BF CC5D -> 110E 1162 11C0 CC5E -> 110E 1162 11C1 CC5F -> 110E 1162 11C2 CC60 -> 110E 1163 CC61 -> 110E 1163 11A8 CC62 -> 110E 1163 11A9 CC63 -> 110E 1163 11AA CC64 -> 110E 1163 11AB CC65 -> 110E 1163 11AC CC66 -> 110E 1163 11AD CC67 -> 110E 1163 11AE CC68 -> 110E 1163 11AF CC69 -> 110E 1163 11B0 CC6A -> 110E 1163 11B1 CC6B -> 110E 1163 11B2 CC6C -> 110E 1163 11B3 CC6D -> 110E 1163 11B4 CC6E -> 110E 1163 11B5 CC6F -> 110E 1163 11B6 CC70 -> 110E 1163 11B7 CC71 -> 110E 1163 11B8 CC72 -> 110E 1163 11B9 CC73 -> 110E 1163 11BA CC74 -> 110E 1163 11BB CC75 -> 110E 1163 11BC CC76 -> 110E 1163 11BD CC77 -> 110E 1163 11BE CC78 -> 110E 1163 11BF CC79 -> 110E 1163 11C0 CC7A -> 110E 1163 11C1 CC7B -> 110E 1163 11C2 CC7C -> 110E 1164 CC7D -> 110E 1164 11A8 CC7E -> 110E 1164 11A9 CC7F -> 110E 1164 11AA CC80 -> 110E 1164 11AB CC81 -> 110E 1164 11AC CC82 -> 110E 1164 11AD CC83 -> 110E 1164 11AE CC84 -> 110E 1164 11AF CC85 -> 110E 1164 11B0 CC86 -> 110E 1164 11B1 CC87 -> 110E 1164 11B2 CC88 -> 110E 1164 11B3 CC89 -> 110E 1164 11B4 CC8A -> 110E 1164 11B5 CC8B -> 110E 1164 11B6 CC8C -> 110E 1164 11B7 CC8D -> 110E 1164 11B8 CC8E -> 110E 1164 11B9 CC8F -> 110E 1164 11BA CC90 -> 110E 1164 11BB CC91 -> 110E 1164 11BC CC92 -> 110E 1164 11BD CC93 -> 110E 1164 11BE CC94 -> 110E 1164 11BF CC95 -> 110E 1164 11C0 CC96 -> 110E 1164 11C1 CC97 -> 110E 1164 11C2 CC98 -> 110E 1165 CC99 -> 110E 1165 11A8 CC9A -> 110E 1165 11A9 CC9B -> 110E 1165 11AA CC9C -> 110E 1165 11AB CC9D -> 110E 1165 11AC CC9E -> 110E 1165 11AD CC9F -> 110E 1165 11AE CCA0 -> 110E 1165 11AF CCA1 -> 110E 1165 11B0 CCA2 -> 110E 1165 11B1 CCA3 -> 110E 1165 11B2 CCA4 -> 110E 1165 11B3 CCA5 -> 110E 1165 11B4 CCA6 -> 110E 1165 11B5 CCA7 -> 110E 1165 11B6 CCA8 -> 110E 1165 11B7 CCA9 -> 110E 1165 11B8 CCAA -> 110E 1165 11B9 CCAB -> 110E 1165 11BA CCAC -> 110E 1165 11BB CCAD -> 110E 1165 11BC CCAE -> 110E 1165 11BD CCAF -> 110E 1165 11BE CCB0 -> 110E 1165 11BF CCB1 -> 110E 1165 11C0 CCB2 -> 110E 1165 11C1 CCB3 -> 110E 1165 11C2 CCB4 -> 110E 1166 CCB5 -> 110E 1166 11A8 CCB6 -> 110E 1166 11A9 CCB7 -> 110E 1166 11AA CCB8 -> 110E 1166 11AB CCB9 -> 110E 1166 11AC CCBA -> 110E 1166 11AD CCBB -> 110E 1166 11AE CCBC -> 110E 1166 11AF CCBD -> 110E 1166 11B0 CCBE -> 110E 1166 11B1 CCBF -> 110E 1166 11B2 CCC0 -> 110E 1166 11B3 CCC1 -> 110E 1166 11B4 CCC2 -> 110E 1166 11B5 CCC3 -> 110E 1166 11B6 CCC4 -> 110E 1166 11B7 CCC5 -> 110E 1166 11B8 CCC6 -> 110E 1166 11B9 CCC7 -> 110E 1166 11BA CCC8 -> 110E 1166 11BB CCC9 -> 110E 1166 11BC CCCA -> 110E 1166 11BD CCCB -> 110E 1166 11BE CCCC -> 110E 1166 11BF CCCD -> 110E 1166 11C0 CCCE -> 110E 1166 11C1 CCCF -> 110E 1166 11C2 CCD0 -> 110E 1167 CCD1 -> 110E 1167 11A8 CCD2 -> 110E 1167 11A9 CCD3 -> 110E 1167 11AA CCD4 -> 110E 1167 11AB CCD5 -> 110E 1167 11AC CCD6 -> 110E 1167 11AD CCD7 -> 110E 1167 11AE CCD8 -> 110E 1167 11AF CCD9 -> 110E 1167 11B0 CCDA -> 110E 1167 11B1 CCDB -> 110E 1167 11B2 CCDC -> 110E 1167 11B3 CCDD -> 110E 1167 11B4 CCDE -> 110E 1167 11B5 CCDF -> 110E 1167 11B6 CCE0 -> 110E 1167 11B7 CCE1 -> 110E 1167 11B8 CCE2 -> 110E 1167 11B9 CCE3 -> 110E 1167 11BA CCE4 -> 110E 1167 11BB CCE5 -> 110E 1167 11BC CCE6 -> 110E 1167 11BD CCE7 -> 110E 1167 11BE CCE8 -> 110E 1167 11BF CCE9 -> 110E 1167 11C0 CCEA -> 110E 1167 11C1 CCEB -> 110E 1167 11C2 CCEC -> 110E 1168 CCED -> 110E 1168 11A8 CCEE -> 110E 1168 11A9 CCEF -> 110E 1168 11AA CCF0 -> 110E 1168 11AB CCF1 -> 110E 1168 11AC CCF2 -> 110E 1168 11AD CCF3 -> 110E 1168 11AE CCF4 -> 110E 1168 11AF CCF5 -> 110E 1168 11B0 CCF6 -> 110E 1168 11B1 CCF7 -> 110E 1168 11B2 CCF8 -> 110E 1168 11B3 CCF9 -> 110E 1168 11B4 CCFA -> 110E 1168 11B5 CCFB -> 110E 1168 11B6 CCFC -> 110E 1168 11B7 CCFD -> 110E 1168 11B8 CCFE -> 110E 1168 11B9 CCFF -> 110E 1168 11BA CD00 -> 110E 1168 11BB CD01 -> 110E 1168 11BC CD02 -> 110E 1168 11BD CD03 -> 110E 1168 11BE CD04 -> 110E 1168 11BF CD05 -> 110E 1168 11C0 CD06 -> 110E 1168 11C1 CD07 -> 110E 1168 11C2 CD08 -> 110E 1169 CD09 -> 110E 1169 11A8 CD0A -> 110E 1169 11A9 CD0B -> 110E 1169 11AA CD0C -> 110E 1169 11AB CD0D -> 110E 1169 11AC CD0E -> 110E 1169 11AD CD0F -> 110E 1169 11AE CD10 -> 110E 1169 11AF CD11 -> 110E 1169 11B0 CD12 -> 110E 1169 11B1 CD13 -> 110E 1169 11B2 CD14 -> 110E 1169 11B3 CD15 -> 110E 1169 11B4 CD16 -> 110E 1169 11B5 CD17 -> 110E 1169 11B6 CD18 -> 110E 1169 11B7 CD19 -> 110E 1169 11B8 CD1A -> 110E 1169 11B9 CD1B -> 110E 1169 11BA CD1C -> 110E 1169 11BB CD1D -> 110E 1169 11BC CD1E -> 110E 1169 11BD CD1F -> 110E 1169 11BE CD20 -> 110E 1169 11BF CD21 -> 110E 1169 11C0 CD22 -> 110E 1169 11C1 CD23 -> 110E 1169 11C2 CD24 -> 110E 116A CD25 -> 110E 116A 11A8 CD26 -> 110E 116A 11A9 CD27 -> 110E 116A 11AA CD28 -> 110E 116A 11AB CD29 -> 110E 116A 11AC CD2A -> 110E 116A 11AD CD2B -> 110E 116A 11AE CD2C -> 110E 116A 11AF CD2D -> 110E 116A 11B0 CD2E -> 110E 116A 11B1 CD2F -> 110E 116A 11B2 CD30 -> 110E 116A 11B3 CD31 -> 110E 116A 11B4 CD32 -> 110E 116A 11B5 CD33 -> 110E 116A 11B6 CD34 -> 110E 116A 11B7 CD35 -> 110E 116A 11B8 CD36 -> 110E 116A 11B9 CD37 -> 110E 116A 11BA CD38 -> 110E 116A 11BB CD39 -> 110E 116A 11BC CD3A -> 110E 116A 11BD CD3B -> 110E 116A 11BE CD3C -> 110E 116A 11BF CD3D -> 110E 116A 11C0 CD3E -> 110E 116A 11C1 CD3F -> 110E 116A 11C2 CD40 -> 110E 116B CD41 -> 110E 116B 11A8 CD42 -> 110E 116B 11A9 CD43 -> 110E 116B 11AA CD44 -> 110E 116B 11AB CD45 -> 110E 116B 11AC CD46 -> 110E 116B 11AD CD47 -> 110E 116B 11AE CD48 -> 110E 116B 11AF CD49 -> 110E 116B 11B0 CD4A -> 110E 116B 11B1 CD4B -> 110E 116B 11B2 CD4C -> 110E 116B 11B3 CD4D -> 110E 116B 11B4 CD4E -> 110E 116B 11B5 CD4F -> 110E 116B 11B6 CD50 -> 110E 116B 11B7 CD51 -> 110E 116B 11B8 CD52 -> 110E 116B 11B9 CD53 -> 110E 116B 11BA CD54 -> 110E 116B 11BB CD55 -> 110E 116B 11BC CD56 -> 110E 116B 11BD CD57 -> 110E 116B 11BE CD58 -> 110E 116B 11BF CD59 -> 110E 116B 11C0 CD5A -> 110E 116B 11C1 CD5B -> 110E 116B 11C2 CD5C -> 110E 116C CD5D -> 110E 116C 11A8 CD5E -> 110E 116C 11A9 CD5F -> 110E 116C 11AA CD60 -> 110E 116C 11AB CD61 -> 110E 116C 11AC CD62 -> 110E 116C 11AD CD63 -> 110E 116C 11AE CD64 -> 110E 116C 11AF CD65 -> 110E 116C 11B0 CD66 -> 110E 116C 11B1 CD67 -> 110E 116C 11B2 CD68 -> 110E 116C 11B3 CD69 -> 110E 116C 11B4 CD6A -> 110E 116C 11B5 CD6B -> 110E 116C 11B6 CD6C -> 110E 116C 11B7 CD6D -> 110E 116C 11B8 CD6E -> 110E 116C 11B9 CD6F -> 110E 116C 11BA CD70 -> 110E 116C 11BB CD71 -> 110E 116C 11BC CD72 -> 110E 116C 11BD CD73 -> 110E 116C 11BE CD74 -> 110E 116C 11BF CD75 -> 110E 116C 11C0 CD76 -> 110E 116C 11C1 CD77 -> 110E 116C 11C2 CD78 -> 110E 116D CD79 -> 110E 116D 11A8 CD7A -> 110E 116D 11A9 CD7B -> 110E 116D 11AA CD7C -> 110E 116D 11AB CD7D -> 110E 116D 11AC CD7E -> 110E 116D 11AD CD7F -> 110E 116D 11AE CD80 -> 110E 116D 11AF CD81 -> 110E 116D 11B0 CD82 -> 110E 116D 11B1 CD83 -> 110E 116D 11B2 CD84 -> 110E 116D 11B3 CD85 -> 110E 116D 11B4 CD86 -> 110E 116D 11B5 CD87 -> 110E 116D 11B6 CD88 -> 110E 116D 11B7 CD89 -> 110E 116D 11B8 CD8A -> 110E 116D 11B9 CD8B -> 110E 116D 11BA CD8C -> 110E 116D 11BB CD8D -> 110E 116D 11BC CD8E -> 110E 116D 11BD CD8F -> 110E 116D 11BE CD90 -> 110E 116D 11BF CD91 -> 110E 116D 11C0 CD92 -> 110E 116D 11C1 CD93 -> 110E 116D 11C2 CD94 -> 110E 116E CD95 -> 110E 116E 11A8 CD96 -> 110E 116E 11A9 CD97 -> 110E 116E 11AA CD98 -> 110E 116E 11AB CD99 -> 110E 116E 11AC CD9A -> 110E 116E 11AD CD9B -> 110E 116E 11AE CD9C -> 110E 116E 11AF CD9D -> 110E 116E 11B0 CD9E -> 110E 116E 11B1 CD9F -> 110E 116E 11B2 CDA0 -> 110E 116E 11B3 CDA1 -> 110E 116E 11B4 CDA2 -> 110E 116E 11B5 CDA3 -> 110E 116E 11B6 CDA4 -> 110E 116E 11B7 CDA5 -> 110E 116E 11B8 CDA6 -> 110E 116E 11B9 CDA7 -> 110E 116E 11BA CDA8 -> 110E 116E 11BB CDA9 -> 110E 116E 11BC CDAA -> 110E 116E 11BD CDAB -> 110E 116E 11BE CDAC -> 110E 116E 11BF CDAD -> 110E 116E 11C0 CDAE -> 110E 116E 11C1 CDAF -> 110E 116E 11C2 CDB0 -> 110E 116F CDB1 -> 110E 116F 11A8 CDB2 -> 110E 116F 11A9 CDB3 -> 110E 116F 11AA CDB4 -> 110E 116F 11AB CDB5 -> 110E 116F 11AC CDB6 -> 110E 116F 11AD CDB7 -> 110E 116F 11AE CDB8 -> 110E 116F 11AF CDB9 -> 110E 116F 11B0 CDBA -> 110E 116F 11B1 CDBB -> 110E 116F 11B2 CDBC -> 110E 116F 11B3 CDBD -> 110E 116F 11B4 CDBE -> 110E 116F 11B5 CDBF -> 110E 116F 11B6 CDC0 -> 110E 116F 11B7 CDC1 -> 110E 116F 11B8 CDC2 -> 110E 116F 11B9 CDC3 -> 110E 116F 11BA CDC4 -> 110E 116F 11BB CDC5 -> 110E 116F 11BC CDC6 -> 110E 116F 11BD CDC7 -> 110E 116F 11BE CDC8 -> 110E 116F 11BF CDC9 -> 110E 116F 11C0 CDCA -> 110E 116F 11C1 CDCB -> 110E 116F 11C2 CDCC -> 110E 1170 CDCD -> 110E 1170 11A8 CDCE -> 110E 1170 11A9 CDCF -> 110E 1170 11AA CDD0 -> 110E 1170 11AB CDD1 -> 110E 1170 11AC CDD2 -> 110E 1170 11AD CDD3 -> 110E 1170 11AE CDD4 -> 110E 1170 11AF CDD5 -> 110E 1170 11B0 CDD6 -> 110E 1170 11B1 CDD7 -> 110E 1170 11B2 CDD8 -> 110E 1170 11B3 CDD9 -> 110E 1170 11B4 CDDA -> 110E 1170 11B5 CDDB -> 110E 1170 11B6 CDDC -> 110E 1170 11B7 CDDD -> 110E 1170 11B8 CDDE -> 110E 1170 11B9 CDDF -> 110E 1170 11BA CDE0 -> 110E 1170 11BB CDE1 -> 110E 1170 11BC CDE2 -> 110E 1170 11BD CDE3 -> 110E 1170 11BE CDE4 -> 110E 1170 11BF CDE5 -> 110E 1170 11C0 CDE6 -> 110E 1170 11C1 CDE7 -> 110E 1170 11C2 CDE8 -> 110E 1171 CDE9 -> 110E 1171 11A8 CDEA -> 110E 1171 11A9 CDEB -> 110E 1171 11AA CDEC -> 110E 1171 11AB CDED -> 110E 1171 11AC CDEE -> 110E 1171 11AD CDEF -> 110E 1171 11AE CDF0 -> 110E 1171 11AF CDF1 -> 110E 1171 11B0 CDF2 -> 110E 1171 11B1 CDF3 -> 110E 1171 11B2 CDF4 -> 110E 1171 11B3 CDF5 -> 110E 1171 11B4 CDF6 -> 110E 1171 11B5 CDF7 -> 110E 1171 11B6 CDF8 -> 110E 1171 11B7 CDF9 -> 110E 1171 11B8 CDFA -> 110E 1171 11B9 CDFB -> 110E 1171 11BA CDFC -> 110E 1171 11BB CDFD -> 110E 1171 11BC CDFE -> 110E 1171 11BD CDFF -> 110E 1171 11BE CE00 -> 110E 1171 11BF CE01 -> 110E 1171 11C0 CE02 -> 110E 1171 11C1 CE03 -> 110E 1171 11C2 CE04 -> 110E 1172 CE05 -> 110E 1172 11A8 CE06 -> 110E 1172 11A9 CE07 -> 110E 1172 11AA CE08 -> 110E 1172 11AB CE09 -> 110E 1172 11AC CE0A -> 110E 1172 11AD CE0B -> 110E 1172 11AE CE0C -> 110E 1172 11AF CE0D -> 110E 1172 11B0 CE0E -> 110E 1172 11B1 CE0F -> 110E 1172 11B2 CE10 -> 110E 1172 11B3 CE11 -> 110E 1172 11B4 CE12 -> 110E 1172 11B5 CE13 -> 110E 1172 11B6 CE14 -> 110E 1172 11B7 CE15 -> 110E 1172 11B8 CE16 -> 110E 1172 11B9 CE17 -> 110E 1172 11BA CE18 -> 110E 1172 11BB CE19 -> 110E 1172 11BC CE1A -> 110E 1172 11BD CE1B -> 110E 1172 11BE CE1C -> 110E 1172 11BF CE1D -> 110E 1172 11C0 CE1E -> 110E 1172 11C1 CE1F -> 110E 1172 11C2 CE20 -> 110E 1173 CE21 -> 110E 1173 11A8 CE22 -> 110E 1173 11A9 CE23 -> 110E 1173 11AA CE24 -> 110E 1173 11AB CE25 -> 110E 1173 11AC CE26 -> 110E 1173 11AD CE27 -> 110E 1173 11AE CE28 -> 110E 1173 11AF CE29 -> 110E 1173 11B0 CE2A -> 110E 1173 11B1 CE2B -> 110E 1173 11B2 CE2C -> 110E 1173 11B3 CE2D -> 110E 1173 11B4 CE2E -> 110E 1173 11B5 CE2F -> 110E 1173 11B6 CE30 -> 110E 1173 11B7 CE31 -> 110E 1173 11B8 CE32 -> 110E 1173 11B9 CE33 -> 110E 1173 11BA CE34 -> 110E 1173 11BB CE35 -> 110E 1173 11BC CE36 -> 110E 1173 11BD CE37 -> 110E 1173 11BE CE38 -> 110E 1173 11BF CE39 -> 110E 1173 11C0 CE3A -> 110E 1173 11C1 CE3B -> 110E 1173 11C2 CE3C -> 110E 1174 CE3D -> 110E 1174 11A8 CE3E -> 110E 1174 11A9 CE3F -> 110E 1174 11AA CE40 -> 110E 1174 11AB CE41 -> 110E 1174 11AC CE42 -> 110E 1174 11AD CE43 -> 110E 1174 11AE CE44 -> 110E 1174 11AF CE45 -> 110E 1174 11B0 CE46 -> 110E 1174 11B1 CE47 -> 110E 1174 11B2 CE48 -> 110E 1174 11B3 CE49 -> 110E 1174 11B4 CE4A -> 110E 1174 11B5 CE4B -> 110E 1174 11B6 CE4C -> 110E 1174 11B7 CE4D -> 110E 1174 11B8 CE4E -> 110E 1174 11B9 CE4F -> 110E 1174 11BA CE50 -> 110E 1174 11BB CE51 -> 110E 1174 11BC CE52 -> 110E 1174 11BD CE53 -> 110E 1174 11BE CE54 -> 110E 1174 11BF CE55 -> 110E 1174 11C0 CE56 -> 110E 1174 11C1 CE57 -> 110E 1174 11C2 CE58 -> 110E 1175 CE59 -> 110E 1175 11A8 CE5A -> 110E 1175 11A9 CE5B -> 110E 1175 11AA CE5C -> 110E 1175 11AB CE5D -> 110E 1175 11AC CE5E -> 110E 1175 11AD CE5F -> 110E 1175 11AE CE60 -> 110E 1175 11AF CE61 -> 110E 1175 11B0 CE62 -> 110E 1175 11B1 CE63 -> 110E 1175 11B2 CE64 -> 110E 1175 11B3 CE65 -> 110E 1175 11B4 CE66 -> 110E 1175 11B5 CE67 -> 110E 1175 11B6 CE68 -> 110E 1175 11B7 CE69 -> 110E 1175 11B8 CE6A -> 110E 1175 11B9 CE6B -> 110E 1175 11BA CE6C -> 110E 1175 11BB CE6D -> 110E 1175 11BC CE6E -> 110E 1175 11BD CE6F -> 110E 1175 11BE CE70 -> 110E 1175 11BF CE71 -> 110E 1175 11C0 CE72 -> 110E 1175 11C1 CE73 -> 110E 1175 11C2 CE74 -> 110F 1161 CE75 -> 110F 1161 11A8 CE76 -> 110F 1161 11A9 CE77 -> 110F 1161 11AA CE78 -> 110F 1161 11AB CE79 -> 110F 1161 11AC CE7A -> 110F 1161 11AD CE7B -> 110F 1161 11AE CE7C -> 110F 1161 11AF CE7D -> 110F 1161 11B0 CE7E -> 110F 1161 11B1 CE7F -> 110F 1161 11B2 CE80 -> 110F 1161 11B3 CE81 -> 110F 1161 11B4 CE82 -> 110F 1161 11B5 CE83 -> 110F 1161 11B6 CE84 -> 110F 1161 11B7 CE85 -> 110F 1161 11B8 CE86 -> 110F 1161 11B9 CE87 -> 110F 1161 11BA CE88 -> 110F 1161 11BB CE89 -> 110F 1161 11BC CE8A -> 110F 1161 11BD CE8B -> 110F 1161 11BE CE8C -> 110F 1161 11BF CE8D -> 110F 1161 11C0 CE8E -> 110F 1161 11C1 CE8F -> 110F 1161 11C2 CE90 -> 110F 1162 CE91 -> 110F 1162 11A8 CE92 -> 110F 1162 11A9 CE93 -> 110F 1162 11AA CE94 -> 110F 1162 11AB CE95 -> 110F 1162 11AC CE96 -> 110F 1162 11AD CE97 -> 110F 1162 11AE CE98 -> 110F 1162 11AF CE99 -> 110F 1162 11B0 CE9A -> 110F 1162 11B1 CE9B -> 110F 1162 11B2 CE9C -> 110F 1162 11B3 CE9D -> 110F 1162 11B4 CE9E -> 110F 1162 11B5 CE9F -> 110F 1162 11B6 CEA0 -> 110F 1162 11B7 CEA1 -> 110F 1162 11B8 CEA2 -> 110F 1162 11B9 CEA3 -> 110F 1162 11BA CEA4 -> 110F 1162 11BB CEA5 -> 110F 1162 11BC CEA6 -> 110F 1162 11BD CEA7 -> 110F 1162 11BE CEA8 -> 110F 1162 11BF CEA9 -> 110F 1162 11C0 CEAA -> 110F 1162 11C1 CEAB -> 110F 1162 11C2 CEAC -> 110F 1163 CEAD -> 110F 1163 11A8 CEAE -> 110F 1163 11A9 CEAF -> 110F 1163 11AA CEB0 -> 110F 1163 11AB CEB1 -> 110F 1163 11AC CEB2 -> 110F 1163 11AD CEB3 -> 110F 1163 11AE CEB4 -> 110F 1163 11AF CEB5 -> 110F 1163 11B0 CEB6 -> 110F 1163 11B1 CEB7 -> 110F 1163 11B2 CEB8 -> 110F 1163 11B3 CEB9 -> 110F 1163 11B4 CEBA -> 110F 1163 11B5 CEBB -> 110F 1163 11B6 CEBC -> 110F 1163 11B7 CEBD -> 110F 1163 11B8 CEBE -> 110F 1163 11B9 CEBF -> 110F 1163 11BA CEC0 -> 110F 1163 11BB CEC1 -> 110F 1163 11BC CEC2 -> 110F 1163 11BD CEC3 -> 110F 1163 11BE CEC4 -> 110F 1163 11BF CEC5 -> 110F 1163 11C0 CEC6 -> 110F 1163 11C1 CEC7 -> 110F 1163 11C2 CEC8 -> 110F 1164 CEC9 -> 110F 1164 11A8 CECA -> 110F 1164 11A9 CECB -> 110F 1164 11AA CECC -> 110F 1164 11AB CECD -> 110F 1164 11AC CECE -> 110F 1164 11AD CECF -> 110F 1164 11AE CED0 -> 110F 1164 11AF CED1 -> 110F 1164 11B0 CED2 -> 110F 1164 11B1 CED3 -> 110F 1164 11B2 CED4 -> 110F 1164 11B3 CED5 -> 110F 1164 11B4 CED6 -> 110F 1164 11B5 CED7 -> 110F 1164 11B6 CED8 -> 110F 1164 11B7 CED9 -> 110F 1164 11B8 CEDA -> 110F 1164 11B9 CEDB -> 110F 1164 11BA CEDC -> 110F 1164 11BB CEDD -> 110F 1164 11BC CEDE -> 110F 1164 11BD CEDF -> 110F 1164 11BE CEE0 -> 110F 1164 11BF CEE1 -> 110F 1164 11C0 CEE2 -> 110F 1164 11C1 CEE3 -> 110F 1164 11C2 CEE4 -> 110F 1165 CEE5 -> 110F 1165 11A8 CEE6 -> 110F 1165 11A9 CEE7 -> 110F 1165 11AA CEE8 -> 110F 1165 11AB CEE9 -> 110F 1165 11AC CEEA -> 110F 1165 11AD CEEB -> 110F 1165 11AE CEEC -> 110F 1165 11AF CEED -> 110F 1165 11B0 CEEE -> 110F 1165 11B1 CEEF -> 110F 1165 11B2 CEF0 -> 110F 1165 11B3 CEF1 -> 110F 1165 11B4 CEF2 -> 110F 1165 11B5 CEF3 -> 110F 1165 11B6 CEF4 -> 110F 1165 11B7 CEF5 -> 110F 1165 11B8 CEF6 -> 110F 1165 11B9 CEF7 -> 110F 1165 11BA CEF8 -> 110F 1165 11BB CEF9 -> 110F 1165 11BC CEFA -> 110F 1165 11BD CEFB -> 110F 1165 11BE CEFC -> 110F 1165 11BF CEFD -> 110F 1165 11C0 CEFE -> 110F 1165 11C1 CEFF -> 110F 1165 11C2 CF00 -> 110F 1166 CF01 -> 110F 1166 11A8 CF02 -> 110F 1166 11A9 CF03 -> 110F 1166 11AA CF04 -> 110F 1166 11AB CF05 -> 110F 1166 11AC CF06 -> 110F 1166 11AD CF07 -> 110F 1166 11AE CF08 -> 110F 1166 11AF CF09 -> 110F 1166 11B0 CF0A -> 110F 1166 11B1 CF0B -> 110F 1166 11B2 CF0C -> 110F 1166 11B3 CF0D -> 110F 1166 11B4 CF0E -> 110F 1166 11B5 CF0F -> 110F 1166 11B6 CF10 -> 110F 1166 11B7 CF11 -> 110F 1166 11B8 CF12 -> 110F 1166 11B9 CF13 -> 110F 1166 11BA CF14 -> 110F 1166 11BB CF15 -> 110F 1166 11BC CF16 -> 110F 1166 11BD CF17 -> 110F 1166 11BE CF18 -> 110F 1166 11BF CF19 -> 110F 1166 11C0 CF1A -> 110F 1166 11C1 CF1B -> 110F 1166 11C2 CF1C -> 110F 1167 CF1D -> 110F 1167 11A8 CF1E -> 110F 1167 11A9 CF1F -> 110F 1167 11AA CF20 -> 110F 1167 11AB CF21 -> 110F 1167 11AC CF22 -> 110F 1167 11AD CF23 -> 110F 1167 11AE CF24 -> 110F 1167 11AF CF25 -> 110F 1167 11B0 CF26 -> 110F 1167 11B1 CF27 -> 110F 1167 11B2 CF28 -> 110F 1167 11B3 CF29 -> 110F 1167 11B4 CF2A -> 110F 1167 11B5 CF2B -> 110F 1167 11B6 CF2C -> 110F 1167 11B7 CF2D -> 110F 1167 11B8 CF2E -> 110F 1167 11B9 CF2F -> 110F 1167 11BA CF30 -> 110F 1167 11BB CF31 -> 110F 1167 11BC CF32 -> 110F 1167 11BD CF33 -> 110F 1167 11BE CF34 -> 110F 1167 11BF CF35 -> 110F 1167 11C0 CF36 -> 110F 1167 11C1 CF37 -> 110F 1167 11C2 CF38 -> 110F 1168 CF39 -> 110F 1168 11A8 CF3A -> 110F 1168 11A9 CF3B -> 110F 1168 11AA CF3C -> 110F 1168 11AB CF3D -> 110F 1168 11AC CF3E -> 110F 1168 11AD CF3F -> 110F 1168 11AE CF40 -> 110F 1168 11AF CF41 -> 110F 1168 11B0 CF42 -> 110F 1168 11B1 CF43 -> 110F 1168 11B2 CF44 -> 110F 1168 11B3 CF45 -> 110F 1168 11B4 CF46 -> 110F 1168 11B5 CF47 -> 110F 1168 11B6 CF48 -> 110F 1168 11B7 CF49 -> 110F 1168 11B8 CF4A -> 110F 1168 11B9 CF4B -> 110F 1168 11BA CF4C -> 110F 1168 11BB CF4D -> 110F 1168 11BC CF4E -> 110F 1168 11BD CF4F -> 110F 1168 11BE CF50 -> 110F 1168 11BF CF51 -> 110F 1168 11C0 CF52 -> 110F 1168 11C1 CF53 -> 110F 1168 11C2 CF54 -> 110F 1169 CF55 -> 110F 1169 11A8 CF56 -> 110F 1169 11A9 CF57 -> 110F 1169 11AA CF58 -> 110F 1169 11AB CF59 -> 110F 1169 11AC CF5A -> 110F 1169 11AD CF5B -> 110F 1169 11AE CF5C -> 110F 1169 11AF CF5D -> 110F 1169 11B0 CF5E -> 110F 1169 11B1 CF5F -> 110F 1169 11B2 CF60 -> 110F 1169 11B3 CF61 -> 110F 1169 11B4 CF62 -> 110F 1169 11B5 CF63 -> 110F 1169 11B6 CF64 -> 110F 1169 11B7 CF65 -> 110F 1169 11B8 CF66 -> 110F 1169 11B9 CF67 -> 110F 1169 11BA CF68 -> 110F 1169 11BB CF69 -> 110F 1169 11BC CF6A -> 110F 1169 11BD CF6B -> 110F 1169 11BE CF6C -> 110F 1169 11BF CF6D -> 110F 1169 11C0 CF6E -> 110F 1169 11C1 CF6F -> 110F 1169 11C2 CF70 -> 110F 116A CF71 -> 110F 116A 11A8 CF72 -> 110F 116A 11A9 CF73 -> 110F 116A 11AA CF74 -> 110F 116A 11AB CF75 -> 110F 116A 11AC CF76 -> 110F 116A 11AD CF77 -> 110F 116A 11AE CF78 -> 110F 116A 11AF CF79 -> 110F 116A 11B0 CF7A -> 110F 116A 11B1 CF7B -> 110F 116A 11B2 CF7C -> 110F 116A 11B3 CF7D -> 110F 116A 11B4 CF7E -> 110F 116A 11B5 CF7F -> 110F 116A 11B6 CF80 -> 110F 116A 11B7 CF81 -> 110F 116A 11B8 CF82 -> 110F 116A 11B9 CF83 -> 110F 116A 11BA CF84 -> 110F 116A 11BB CF85 -> 110F 116A 11BC CF86 -> 110F 116A 11BD CF87 -> 110F 116A 11BE CF88 -> 110F 116A 11BF CF89 -> 110F 116A 11C0 CF8A -> 110F 116A 11C1 CF8B -> 110F 116A 11C2 CF8C -> 110F 116B CF8D -> 110F 116B 11A8 CF8E -> 110F 116B 11A9 CF8F -> 110F 116B 11AA CF90 -> 110F 116B 11AB CF91 -> 110F 116B 11AC CF92 -> 110F 116B 11AD CF93 -> 110F 116B 11AE CF94 -> 110F 116B 11AF CF95 -> 110F 116B 11B0 CF96 -> 110F 116B 11B1 CF97 -> 110F 116B 11B2 CF98 -> 110F 116B 11B3 CF99 -> 110F 116B 11B4 CF9A -> 110F 116B 11B5 CF9B -> 110F 116B 11B6 CF9C -> 110F 116B 11B7 CF9D -> 110F 116B 11B8 CF9E -> 110F 116B 11B9 CF9F -> 110F 116B 11BA CFA0 -> 110F 116B 11BB CFA1 -> 110F 116B 11BC CFA2 -> 110F 116B 11BD CFA3 -> 110F 116B 11BE CFA4 -> 110F 116B 11BF CFA5 -> 110F 116B 11C0 CFA6 -> 110F 116B 11C1 CFA7 -> 110F 116B 11C2 CFA8 -> 110F 116C CFA9 -> 110F 116C 11A8 CFAA -> 110F 116C 11A9 CFAB -> 110F 116C 11AA CFAC -> 110F 116C 11AB CFAD -> 110F 116C 11AC CFAE -> 110F 116C 11AD CFAF -> 110F 116C 11AE CFB0 -> 110F 116C 11AF CFB1 -> 110F 116C 11B0 CFB2 -> 110F 116C 11B1 CFB3 -> 110F 116C 11B2 CFB4 -> 110F 116C 11B3 CFB5 -> 110F 116C 11B4 CFB6 -> 110F 116C 11B5 CFB7 -> 110F 116C 11B6 CFB8 -> 110F 116C 11B7 CFB9 -> 110F 116C 11B8 CFBA -> 110F 116C 11B9 CFBB -> 110F 116C 11BA CFBC -> 110F 116C 11BB CFBD -> 110F 116C 11BC CFBE -> 110F 116C 11BD CFBF -> 110F 116C 11BE CFC0 -> 110F 116C 11BF CFC1 -> 110F 116C 11C0 CFC2 -> 110F 116C 11C1 CFC3 -> 110F 116C 11C2 CFC4 -> 110F 116D CFC5 -> 110F 116D 11A8 CFC6 -> 110F 116D 11A9 CFC7 -> 110F 116D 11AA CFC8 -> 110F 116D 11AB CFC9 -> 110F 116D 11AC CFCA -> 110F 116D 11AD CFCB -> 110F 116D 11AE CFCC -> 110F 116D 11AF CFCD -> 110F 116D 11B0 CFCE -> 110F 116D 11B1 CFCF -> 110F 116D 11B2 CFD0 -> 110F 116D 11B3 CFD1 -> 110F 116D 11B4 CFD2 -> 110F 116D 11B5 CFD3 -> 110F 116D 11B6 CFD4 -> 110F 116D 11B7 CFD5 -> 110F 116D 11B8 CFD6 -> 110F 116D 11B9 CFD7 -> 110F 116D 11BA CFD8 -> 110F 116D 11BB CFD9 -> 110F 116D 11BC CFDA -> 110F 116D 11BD CFDB -> 110F 116D 11BE CFDC -> 110F 116D 11BF CFDD -> 110F 116D 11C0 CFDE -> 110F 116D 11C1 CFDF -> 110F 116D 11C2 CFE0 -> 110F 116E CFE1 -> 110F 116E 11A8 CFE2 -> 110F 116E 11A9 CFE3 -> 110F 116E 11AA CFE4 -> 110F 116E 11AB CFE5 -> 110F 116E 11AC CFE6 -> 110F 116E 11AD CFE7 -> 110F 116E 11AE CFE8 -> 110F 116E 11AF CFE9 -> 110F 116E 11B0 CFEA -> 110F 116E 11B1 CFEB -> 110F 116E 11B2 CFEC -> 110F 116E 11B3 CFED -> 110F 116E 11B4 CFEE -> 110F 116E 11B5 CFEF -> 110F 116E 11B6 CFF0 -> 110F 116E 11B7 CFF1 -> 110F 116E 11B8 CFF2 -> 110F 116E 11B9 CFF3 -> 110F 116E 11BA CFF4 -> 110F 116E 11BB CFF5 -> 110F 116E 11BC CFF6 -> 110F 116E 11BD CFF7 -> 110F 116E 11BE CFF8 -> 110F 116E 11BF CFF9 -> 110F 116E 11C0 CFFA -> 110F 116E 11C1 CFFB -> 110F 116E 11C2 CFFC -> 110F 116F CFFD -> 110F 116F 11A8 CFFE -> 110F 116F 11A9 CFFF -> 110F 116F 11AA D000 -> 110F 116F 11AB D001 -> 110F 116F 11AC D002 -> 110F 116F 11AD D003 -> 110F 116F 11AE D004 -> 110F 116F 11AF D005 -> 110F 116F 11B0 D006 -> 110F 116F 11B1 D007 -> 110F 116F 11B2 D008 -> 110F 116F 11B3 D009 -> 110F 116F 11B4 D00A -> 110F 116F 11B5 D00B -> 110F 116F 11B6 D00C -> 110F 116F 11B7 D00D -> 110F 116F 11B8 D00E -> 110F 116F 11B9 D00F -> 110F 116F 11BA D010 -> 110F 116F 11BB D011 -> 110F 116F 11BC D012 -> 110F 116F 11BD D013 -> 110F 116F 11BE D014 -> 110F 116F 11BF D015 -> 110F 116F 11C0 D016 -> 110F 116F 11C1 D017 -> 110F 116F 11C2 D018 -> 110F 1170 D019 -> 110F 1170 11A8 D01A -> 110F 1170 11A9 D01B -> 110F 1170 11AA D01C -> 110F 1170 11AB D01D -> 110F 1170 11AC D01E -> 110F 1170 11AD D01F -> 110F 1170 11AE D020 -> 110F 1170 11AF D021 -> 110F 1170 11B0 D022 -> 110F 1170 11B1 D023 -> 110F 1170 11B2 D024 -> 110F 1170 11B3 D025 -> 110F 1170 11B4 D026 -> 110F 1170 11B5 D027 -> 110F 1170 11B6 D028 -> 110F 1170 11B7 D029 -> 110F 1170 11B8 D02A -> 110F 1170 11B9 D02B -> 110F 1170 11BA D02C -> 110F 1170 11BB D02D -> 110F 1170 11BC D02E -> 110F 1170 11BD D02F -> 110F 1170 11BE D030 -> 110F 1170 11BF D031 -> 110F 1170 11C0 D032 -> 110F 1170 11C1 D033 -> 110F 1170 11C2 D034 -> 110F 1171 D035 -> 110F 1171 11A8 D036 -> 110F 1171 11A9 D037 -> 110F 1171 11AA D038 -> 110F 1171 11AB D039 -> 110F 1171 11AC D03A -> 110F 1171 11AD D03B -> 110F 1171 11AE D03C -> 110F 1171 11AF D03D -> 110F 1171 11B0 D03E -> 110F 1171 11B1 D03F -> 110F 1171 11B2 D040 -> 110F 1171 11B3 D041 -> 110F 1171 11B4 D042 -> 110F 1171 11B5 D043 -> 110F 1171 11B6 D044 -> 110F 1171 11B7 D045 -> 110F 1171 11B8 D046 -> 110F 1171 11B9 D047 -> 110F 1171 11BA D048 -> 110F 1171 11BB D049 -> 110F 1171 11BC D04A -> 110F 1171 11BD D04B -> 110F 1171 11BE D04C -> 110F 1171 11BF D04D -> 110F 1171 11C0 D04E -> 110F 1171 11C1 D04F -> 110F 1171 11C2 D050 -> 110F 1172 D051 -> 110F 1172 11A8 D052 -> 110F 1172 11A9 D053 -> 110F 1172 11AA D054 -> 110F 1172 11AB D055 -> 110F 1172 11AC D056 -> 110F 1172 11AD D057 -> 110F 1172 11AE D058 -> 110F 1172 11AF D059 -> 110F 1172 11B0 D05A -> 110F 1172 11B1 D05B -> 110F 1172 11B2 D05C -> 110F 1172 11B3 D05D -> 110F 1172 11B4 D05E -> 110F 1172 11B5 D05F -> 110F 1172 11B6 D060 -> 110F 1172 11B7 D061 -> 110F 1172 11B8 D062 -> 110F 1172 11B9 D063 -> 110F 1172 11BA D064 -> 110F 1172 11BB D065 -> 110F 1172 11BC D066 -> 110F 1172 11BD D067 -> 110F 1172 11BE D068 -> 110F 1172 11BF D069 -> 110F 1172 11C0 D06A -> 110F 1172 11C1 D06B -> 110F 1172 11C2 D06C -> 110F 1173 D06D -> 110F 1173 11A8 D06E -> 110F 1173 11A9 D06F -> 110F 1173 11AA D070 -> 110F 1173 11AB D071 -> 110F 1173 11AC D072 -> 110F 1173 11AD D073 -> 110F 1173 11AE D074 -> 110F 1173 11AF D075 -> 110F 1173 11B0 D076 -> 110F 1173 11B1 D077 -> 110F 1173 11B2 D078 -> 110F 1173 11B3 D079 -> 110F 1173 11B4 D07A -> 110F 1173 11B5 D07B -> 110F 1173 11B6 D07C -> 110F 1173 11B7 D07D -> 110F 1173 11B8 D07E -> 110F 1173 11B9 D07F -> 110F 1173 11BA D080 -> 110F 1173 11BB D081 -> 110F 1173 11BC D082 -> 110F 1173 11BD D083 -> 110F 1173 11BE D084 -> 110F 1173 11BF D085 -> 110F 1173 11C0 D086 -> 110F 1173 11C1 D087 -> 110F 1173 11C2 D088 -> 110F 1174 D089 -> 110F 1174 11A8 D08A -> 110F 1174 11A9 D08B -> 110F 1174 11AA D08C -> 110F 1174 11AB D08D -> 110F 1174 11AC D08E -> 110F 1174 11AD D08F -> 110F 1174 11AE D090 -> 110F 1174 11AF D091 -> 110F 1174 11B0 D092 -> 110F 1174 11B1 D093 -> 110F 1174 11B2 D094 -> 110F 1174 11B3 D095 -> 110F 1174 11B4 D096 -> 110F 1174 11B5 D097 -> 110F 1174 11B6 D098 -> 110F 1174 11B7 D099 -> 110F 1174 11B8 D09A -> 110F 1174 11B9 D09B -> 110F 1174 11BA D09C -> 110F 1174 11BB D09D -> 110F 1174 11BC D09E -> 110F 1174 11BD D09F -> 110F 1174 11BE D0A0 -> 110F 1174 11BF D0A1 -> 110F 1174 11C0 D0A2 -> 110F 1174 11C1 D0A3 -> 110F 1174 11C2 D0A4 -> 110F 1175 D0A5 -> 110F 1175 11A8 D0A6 -> 110F 1175 11A9 D0A7 -> 110F 1175 11AA D0A8 -> 110F 1175 11AB D0A9 -> 110F 1175 11AC D0AA -> 110F 1175 11AD D0AB -> 110F 1175 11AE D0AC -> 110F 1175 11AF D0AD -> 110F 1175 11B0 D0AE -> 110F 1175 11B1 D0AF -> 110F 1175 11B2 D0B0 -> 110F 1175 11B3 D0B1 -> 110F 1175 11B4 D0B2 -> 110F 1175 11B5 D0B3 -> 110F 1175 11B6 D0B4 -> 110F 1175 11B7 D0B5 -> 110F 1175 11B8 D0B6 -> 110F 1175 11B9 D0B7 -> 110F 1175 11BA D0B8 -> 110F 1175 11BB D0B9 -> 110F 1175 11BC D0BA -> 110F 1175 11BD D0BB -> 110F 1175 11BE D0BC -> 110F 1175 11BF D0BD -> 110F 1175 11C0 D0BE -> 110F 1175 11C1 D0BF -> 110F 1175 11C2 D0C0 -> 1110 1161 D0C1 -> 1110 1161 11A8 D0C2 -> 1110 1161 11A9 D0C3 -> 1110 1161 11AA D0C4 -> 1110 1161 11AB D0C5 -> 1110 1161 11AC D0C6 -> 1110 1161 11AD D0C7 -> 1110 1161 11AE D0C8 -> 1110 1161 11AF D0C9 -> 1110 1161 11B0 D0CA -> 1110 1161 11B1 D0CB -> 1110 1161 11B2 D0CC -> 1110 1161 11B3 D0CD -> 1110 1161 11B4 D0CE -> 1110 1161 11B5 D0CF -> 1110 1161 11B6 D0D0 -> 1110 1161 11B7 D0D1 -> 1110 1161 11B8 D0D2 -> 1110 1161 11B9 D0D3 -> 1110 1161 11BA D0D4 -> 1110 1161 11BB D0D5 -> 1110 1161 11BC D0D6 -> 1110 1161 11BD D0D7 -> 1110 1161 11BE D0D8 -> 1110 1161 11BF D0D9 -> 1110 1161 11C0 D0DA -> 1110 1161 11C1 D0DB -> 1110 1161 11C2 D0DC -> 1110 1162 D0DD -> 1110 1162 11A8 D0DE -> 1110 1162 11A9 D0DF -> 1110 1162 11AA D0E0 -> 1110 1162 11AB D0E1 -> 1110 1162 11AC D0E2 -> 1110 1162 11AD D0E3 -> 1110 1162 11AE D0E4 -> 1110 1162 11AF D0E5 -> 1110 1162 11B0 D0E6 -> 1110 1162 11B1 D0E7 -> 1110 1162 11B2 D0E8 -> 1110 1162 11B3 D0E9 -> 1110 1162 11B4 D0EA -> 1110 1162 11B5 D0EB -> 1110 1162 11B6 D0EC -> 1110 1162 11B7 D0ED -> 1110 1162 11B8 D0EE -> 1110 1162 11B9 D0EF -> 1110 1162 11BA D0F0 -> 1110 1162 11BB D0F1 -> 1110 1162 11BC D0F2 -> 1110 1162 11BD D0F3 -> 1110 1162 11BE D0F4 -> 1110 1162 11BF D0F5 -> 1110 1162 11C0 D0F6 -> 1110 1162 11C1 D0F7 -> 1110 1162 11C2 D0F8 -> 1110 1163 D0F9 -> 1110 1163 11A8 D0FA -> 1110 1163 11A9 D0FB -> 1110 1163 11AA D0FC -> 1110 1163 11AB D0FD -> 1110 1163 11AC D0FE -> 1110 1163 11AD D0FF -> 1110 1163 11AE D100 -> 1110 1163 11AF D101 -> 1110 1163 11B0 D102 -> 1110 1163 11B1 D103 -> 1110 1163 11B2 D104 -> 1110 1163 11B3 D105 -> 1110 1163 11B4 D106 -> 1110 1163 11B5 D107 -> 1110 1163 11B6 D108 -> 1110 1163 11B7 D109 -> 1110 1163 11B8 D10A -> 1110 1163 11B9 D10B -> 1110 1163 11BA D10C -> 1110 1163 11BB D10D -> 1110 1163 11BC D10E -> 1110 1163 11BD D10F -> 1110 1163 11BE D110 -> 1110 1163 11BF D111 -> 1110 1163 11C0 D112 -> 1110 1163 11C1 D113 -> 1110 1163 11C2 D114 -> 1110 1164 D115 -> 1110 1164 11A8 D116 -> 1110 1164 11A9 D117 -> 1110 1164 11AA D118 -> 1110 1164 11AB D119 -> 1110 1164 11AC D11A -> 1110 1164 11AD D11B -> 1110 1164 11AE D11C -> 1110 1164 11AF D11D -> 1110 1164 11B0 D11E -> 1110 1164 11B1 D11F -> 1110 1164 11B2 D120 -> 1110 1164 11B3 D121 -> 1110 1164 11B4 D122 -> 1110 1164 11B5 D123 -> 1110 1164 11B6 D124 -> 1110 1164 11B7 D125 -> 1110 1164 11B8 D126 -> 1110 1164 11B9 D127 -> 1110 1164 11BA D128 -> 1110 1164 11BB D129 -> 1110 1164 11BC D12A -> 1110 1164 11BD D12B -> 1110 1164 11BE D12C -> 1110 1164 11BF D12D -> 1110 1164 11C0 D12E -> 1110 1164 11C1 D12F -> 1110 1164 11C2 D130 -> 1110 1165 D131 -> 1110 1165 11A8 D132 -> 1110 1165 11A9 D133 -> 1110 1165 11AA D134 -> 1110 1165 11AB D135 -> 1110 1165 11AC D136 -> 1110 1165 11AD D137 -> 1110 1165 11AE D138 -> 1110 1165 11AF D139 -> 1110 1165 11B0 D13A -> 1110 1165 11B1 D13B -> 1110 1165 11B2 D13C -> 1110 1165 11B3 D13D -> 1110 1165 11B4 D13E -> 1110 1165 11B5 D13F -> 1110 1165 11B6 D140 -> 1110 1165 11B7 D141 -> 1110 1165 11B8 D142 -> 1110 1165 11B9 D143 -> 1110 1165 11BA D144 -> 1110 1165 11BB D145 -> 1110 1165 11BC D146 -> 1110 1165 11BD D147 -> 1110 1165 11BE D148 -> 1110 1165 11BF D149 -> 1110 1165 11C0 D14A -> 1110 1165 11C1 D14B -> 1110 1165 11C2 D14C -> 1110 1166 D14D -> 1110 1166 11A8 D14E -> 1110 1166 11A9 D14F -> 1110 1166 11AA D150 -> 1110 1166 11AB D151 -> 1110 1166 11AC D152 -> 1110 1166 11AD D153 -> 1110 1166 11AE D154 -> 1110 1166 11AF D155 -> 1110 1166 11B0 D156 -> 1110 1166 11B1 D157 -> 1110 1166 11B2 D158 -> 1110 1166 11B3 D159 -> 1110 1166 11B4 D15A -> 1110 1166 11B5 D15B -> 1110 1166 11B6 D15C -> 1110 1166 11B7 D15D -> 1110 1166 11B8 D15E -> 1110 1166 11B9 D15F -> 1110 1166 11BA D160 -> 1110 1166 11BB D161 -> 1110 1166 11BC D162 -> 1110 1166 11BD D163 -> 1110 1166 11BE D164 -> 1110 1166 11BF D165 -> 1110 1166 11C0 D166 -> 1110 1166 11C1 D167 -> 1110 1166 11C2 D168 -> 1110 1167 D169 -> 1110 1167 11A8 D16A -> 1110 1167 11A9 D16B -> 1110 1167 11AA D16C -> 1110 1167 11AB D16D -> 1110 1167 11AC D16E -> 1110 1167 11AD D16F -> 1110 1167 11AE D170 -> 1110 1167 11AF D171 -> 1110 1167 11B0 D172 -> 1110 1167 11B1 D173 -> 1110 1167 11B2 D174 -> 1110 1167 11B3 D175 -> 1110 1167 11B4 D176 -> 1110 1167 11B5 D177 -> 1110 1167 11B6 D178 -> 1110 1167 11B7 D179 -> 1110 1167 11B8 D17A -> 1110 1167 11B9 D17B -> 1110 1167 11BA D17C -> 1110 1167 11BB D17D -> 1110 1167 11BC D17E -> 1110 1167 11BD D17F -> 1110 1167 11BE D180 -> 1110 1167 11BF D181 -> 1110 1167 11C0 D182 -> 1110 1167 11C1 D183 -> 1110 1167 11C2 D184 -> 1110 1168 D185 -> 1110 1168 11A8 D186 -> 1110 1168 11A9 D187 -> 1110 1168 11AA D188 -> 1110 1168 11AB D189 -> 1110 1168 11AC D18A -> 1110 1168 11AD D18B -> 1110 1168 11AE D18C -> 1110 1168 11AF D18D -> 1110 1168 11B0 D18E -> 1110 1168 11B1 D18F -> 1110 1168 11B2 D190 -> 1110 1168 11B3 D191 -> 1110 1168 11B4 D192 -> 1110 1168 11B5 D193 -> 1110 1168 11B6 D194 -> 1110 1168 11B7 D195 -> 1110 1168 11B8 D196 -> 1110 1168 11B9 D197 -> 1110 1168 11BA D198 -> 1110 1168 11BB D199 -> 1110 1168 11BC D19A -> 1110 1168 11BD D19B -> 1110 1168 11BE D19C -> 1110 1168 11BF D19D -> 1110 1168 11C0 D19E -> 1110 1168 11C1 D19F -> 1110 1168 11C2 D1A0 -> 1110 1169 D1A1 -> 1110 1169 11A8 D1A2 -> 1110 1169 11A9 D1A3 -> 1110 1169 11AA D1A4 -> 1110 1169 11AB D1A5 -> 1110 1169 11AC D1A6 -> 1110 1169 11AD D1A7 -> 1110 1169 11AE D1A8 -> 1110 1169 11AF D1A9 -> 1110 1169 11B0 D1AA -> 1110 1169 11B1 D1AB -> 1110 1169 11B2 D1AC -> 1110 1169 11B3 D1AD -> 1110 1169 11B4 D1AE -> 1110 1169 11B5 D1AF -> 1110 1169 11B6 D1B0 -> 1110 1169 11B7 D1B1 -> 1110 1169 11B8 D1B2 -> 1110 1169 11B9 D1B3 -> 1110 1169 11BA D1B4 -> 1110 1169 11BB D1B5 -> 1110 1169 11BC D1B6 -> 1110 1169 11BD D1B7 -> 1110 1169 11BE D1B8 -> 1110 1169 11BF D1B9 -> 1110 1169 11C0 D1BA -> 1110 1169 11C1 D1BB -> 1110 1169 11C2 D1BC -> 1110 116A D1BD -> 1110 116A 11A8 D1BE -> 1110 116A 11A9 D1BF -> 1110 116A 11AA D1C0 -> 1110 116A 11AB D1C1 -> 1110 116A 11AC D1C2 -> 1110 116A 11AD D1C3 -> 1110 116A 11AE D1C4 -> 1110 116A 11AF D1C5 -> 1110 116A 11B0 D1C6 -> 1110 116A 11B1 D1C7 -> 1110 116A 11B2 D1C8 -> 1110 116A 11B3 D1C9 -> 1110 116A 11B4 D1CA -> 1110 116A 11B5 D1CB -> 1110 116A 11B6 D1CC -> 1110 116A 11B7 D1CD -> 1110 116A 11B8 D1CE -> 1110 116A 11B9 D1CF -> 1110 116A 11BA D1D0 -> 1110 116A 11BB D1D1 -> 1110 116A 11BC D1D2 -> 1110 116A 11BD D1D3 -> 1110 116A 11BE D1D4 -> 1110 116A 11BF D1D5 -> 1110 116A 11C0 D1D6 -> 1110 116A 11C1 D1D7 -> 1110 116A 11C2 D1D8 -> 1110 116B D1D9 -> 1110 116B 11A8 D1DA -> 1110 116B 11A9 D1DB -> 1110 116B 11AA D1DC -> 1110 116B 11AB D1DD -> 1110 116B 11AC D1DE -> 1110 116B 11AD D1DF -> 1110 116B 11AE D1E0 -> 1110 116B 11AF D1E1 -> 1110 116B 11B0 D1E2 -> 1110 116B 11B1 D1E3 -> 1110 116B 11B2 D1E4 -> 1110 116B 11B3 D1E5 -> 1110 116B 11B4 D1E6 -> 1110 116B 11B5 D1E7 -> 1110 116B 11B6 D1E8 -> 1110 116B 11B7 D1E9 -> 1110 116B 11B8 D1EA -> 1110 116B 11B9 D1EB -> 1110 116B 11BA D1EC -> 1110 116B 11BB D1ED -> 1110 116B 11BC D1EE -> 1110 116B 11BD D1EF -> 1110 116B 11BE D1F0 -> 1110 116B 11BF D1F1 -> 1110 116B 11C0 D1F2 -> 1110 116B 11C1 D1F3 -> 1110 116B 11C2 D1F4 -> 1110 116C D1F5 -> 1110 116C 11A8 D1F6 -> 1110 116C 11A9 D1F7 -> 1110 116C 11AA D1F8 -> 1110 116C 11AB D1F9 -> 1110 116C 11AC D1FA -> 1110 116C 11AD D1FB -> 1110 116C 11AE D1FC -> 1110 116C 11AF D1FD -> 1110 116C 11B0 D1FE -> 1110 116C 11B1 D1FF -> 1110 116C 11B2 D200 -> 1110 116C 11B3 D201 -> 1110 116C 11B4 D202 -> 1110 116C 11B5 D203 -> 1110 116C 11B6 D204 -> 1110 116C 11B7 D205 -> 1110 116C 11B8 D206 -> 1110 116C 11B9 D207 -> 1110 116C 11BA D208 -> 1110 116C 11BB D209 -> 1110 116C 11BC D20A -> 1110 116C 11BD D20B -> 1110 116C 11BE D20C -> 1110 116C 11BF D20D -> 1110 116C 11C0 D20E -> 1110 116C 11C1 D20F -> 1110 116C 11C2 D210 -> 1110 116D D211 -> 1110 116D 11A8 D212 -> 1110 116D 11A9 D213 -> 1110 116D 11AA D214 -> 1110 116D 11AB D215 -> 1110 116D 11AC D216 -> 1110 116D 11AD D217 -> 1110 116D 11AE D218 -> 1110 116D 11AF D219 -> 1110 116D 11B0 D21A -> 1110 116D 11B1 D21B -> 1110 116D 11B2 D21C -> 1110 116D 11B3 D21D -> 1110 116D 11B4 D21E -> 1110 116D 11B5 D21F -> 1110 116D 11B6 D220 -> 1110 116D 11B7 D221 -> 1110 116D 11B8 D222 -> 1110 116D 11B9 D223 -> 1110 116D 11BA D224 -> 1110 116D 11BB D225 -> 1110 116D 11BC D226 -> 1110 116D 11BD D227 -> 1110 116D 11BE D228 -> 1110 116D 11BF D229 -> 1110 116D 11C0 D22A -> 1110 116D 11C1 D22B -> 1110 116D 11C2 D22C -> 1110 116E D22D -> 1110 116E 11A8 D22E -> 1110 116E 11A9 D22F -> 1110 116E 11AA D230 -> 1110 116E 11AB D231 -> 1110 116E 11AC D232 -> 1110 116E 11AD D233 -> 1110 116E 11AE D234 -> 1110 116E 11AF D235 -> 1110 116E 11B0 D236 -> 1110 116E 11B1 D237 -> 1110 116E 11B2 D238 -> 1110 116E 11B3 D239 -> 1110 116E 11B4 D23A -> 1110 116E 11B5 D23B -> 1110 116E 11B6 D23C -> 1110 116E 11B7 D23D -> 1110 116E 11B8 D23E -> 1110 116E 11B9 D23F -> 1110 116E 11BA D240 -> 1110 116E 11BB D241 -> 1110 116E 11BC D242 -> 1110 116E 11BD D243 -> 1110 116E 11BE D244 -> 1110 116E 11BF D245 -> 1110 116E 11C0 D246 -> 1110 116E 11C1 D247 -> 1110 116E 11C2 D248 -> 1110 116F D249 -> 1110 116F 11A8 D24A -> 1110 116F 11A9 D24B -> 1110 116F 11AA D24C -> 1110 116F 11AB D24D -> 1110 116F 11AC D24E -> 1110 116F 11AD D24F -> 1110 116F 11AE D250 -> 1110 116F 11AF D251 -> 1110 116F 11B0 D252 -> 1110 116F 11B1 D253 -> 1110 116F 11B2 D254 -> 1110 116F 11B3 D255 -> 1110 116F 11B4 D256 -> 1110 116F 11B5 D257 -> 1110 116F 11B6 D258 -> 1110 116F 11B7 D259 -> 1110 116F 11B8 D25A -> 1110 116F 11B9 D25B -> 1110 116F 11BA D25C -> 1110 116F 11BB D25D -> 1110 116F 11BC D25E -> 1110 116F 11BD D25F -> 1110 116F 11BE D260 -> 1110 116F 11BF D261 -> 1110 116F 11C0 D262 -> 1110 116F 11C1 D263 -> 1110 116F 11C2 D264 -> 1110 1170 D265 -> 1110 1170 11A8 D266 -> 1110 1170 11A9 D267 -> 1110 1170 11AA D268 -> 1110 1170 11AB D269 -> 1110 1170 11AC D26A -> 1110 1170 11AD D26B -> 1110 1170 11AE D26C -> 1110 1170 11AF D26D -> 1110 1170 11B0 D26E -> 1110 1170 11B1 D26F -> 1110 1170 11B2 D270 -> 1110 1170 11B3 D271 -> 1110 1170 11B4 D272 -> 1110 1170 11B5 D273 -> 1110 1170 11B6 D274 -> 1110 1170 11B7 D275 -> 1110 1170 11B8 D276 -> 1110 1170 11B9 D277 -> 1110 1170 11BA D278 -> 1110 1170 11BB D279 -> 1110 1170 11BC D27A -> 1110 1170 11BD D27B -> 1110 1170 11BE D27C -> 1110 1170 11BF D27D -> 1110 1170 11C0 D27E -> 1110 1170 11C1 D27F -> 1110 1170 11C2 D280 -> 1110 1171 D281 -> 1110 1171 11A8 D282 -> 1110 1171 11A9 D283 -> 1110 1171 11AA D284 -> 1110 1171 11AB D285 -> 1110 1171 11AC D286 -> 1110 1171 11AD D287 -> 1110 1171 11AE D288 -> 1110 1171 11AF D289 -> 1110 1171 11B0 D28A -> 1110 1171 11B1 D28B -> 1110 1171 11B2 D28C -> 1110 1171 11B3 D28D -> 1110 1171 11B4 D28E -> 1110 1171 11B5 D28F -> 1110 1171 11B6 D290 -> 1110 1171 11B7 D291 -> 1110 1171 11B8 D292 -> 1110 1171 11B9 D293 -> 1110 1171 11BA D294 -> 1110 1171 11BB D295 -> 1110 1171 11BC D296 -> 1110 1171 11BD D297 -> 1110 1171 11BE D298 -> 1110 1171 11BF D299 -> 1110 1171 11C0 D29A -> 1110 1171 11C1 D29B -> 1110 1171 11C2 D29C -> 1110 1172 D29D -> 1110 1172 11A8 D29E -> 1110 1172 11A9 D29F -> 1110 1172 11AA D2A0 -> 1110 1172 11AB D2A1 -> 1110 1172 11AC D2A2 -> 1110 1172 11AD D2A3 -> 1110 1172 11AE D2A4 -> 1110 1172 11AF D2A5 -> 1110 1172 11B0 D2A6 -> 1110 1172 11B1 D2A7 -> 1110 1172 11B2 D2A8 -> 1110 1172 11B3 D2A9 -> 1110 1172 11B4 D2AA -> 1110 1172 11B5 D2AB -> 1110 1172 11B6 D2AC -> 1110 1172 11B7 D2AD -> 1110 1172 11B8 D2AE -> 1110 1172 11B9 D2AF -> 1110 1172 11BA D2B0 -> 1110 1172 11BB D2B1 -> 1110 1172 11BC D2B2 -> 1110 1172 11BD D2B3 -> 1110 1172 11BE D2B4 -> 1110 1172 11BF D2B5 -> 1110 1172 11C0 D2B6 -> 1110 1172 11C1 D2B7 -> 1110 1172 11C2 D2B8 -> 1110 1173 D2B9 -> 1110 1173 11A8 D2BA -> 1110 1173 11A9 D2BB -> 1110 1173 11AA D2BC -> 1110 1173 11AB D2BD -> 1110 1173 11AC D2BE -> 1110 1173 11AD D2BF -> 1110 1173 11AE D2C0 -> 1110 1173 11AF D2C1 -> 1110 1173 11B0 D2C2 -> 1110 1173 11B1 D2C3 -> 1110 1173 11B2 D2C4 -> 1110 1173 11B3 D2C5 -> 1110 1173 11B4 D2C6 -> 1110 1173 11B5 D2C7 -> 1110 1173 11B6 D2C8 -> 1110 1173 11B7 D2C9 -> 1110 1173 11B8 D2CA -> 1110 1173 11B9 D2CB -> 1110 1173 11BA D2CC -> 1110 1173 11BB D2CD -> 1110 1173 11BC D2CE -> 1110 1173 11BD D2CF -> 1110 1173 11BE D2D0 -> 1110 1173 11BF D2D1 -> 1110 1173 11C0 D2D2 -> 1110 1173 11C1 D2D3 -> 1110 1173 11C2 D2D4 -> 1110 1174 D2D5 -> 1110 1174 11A8 D2D6 -> 1110 1174 11A9 D2D7 -> 1110 1174 11AA D2D8 -> 1110 1174 11AB D2D9 -> 1110 1174 11AC D2DA -> 1110 1174 11AD D2DB -> 1110 1174 11AE D2DC -> 1110 1174 11AF D2DD -> 1110 1174 11B0 D2DE -> 1110 1174 11B1 D2DF -> 1110 1174 11B2 D2E0 -> 1110 1174 11B3 D2E1 -> 1110 1174 11B4 D2E2 -> 1110 1174 11B5 D2E3 -> 1110 1174 11B6 D2E4 -> 1110 1174 11B7 D2E5 -> 1110 1174 11B8 D2E6 -> 1110 1174 11B9 D2E7 -> 1110 1174 11BA D2E8 -> 1110 1174 11BB D2E9 -> 1110 1174 11BC D2EA -> 1110 1174 11BD D2EB -> 1110 1174 11BE D2EC -> 1110 1174 11BF D2ED -> 1110 1174 11C0 D2EE -> 1110 1174 11C1 D2EF -> 1110 1174 11C2 D2F0 -> 1110 1175 D2F1 -> 1110 1175 11A8 D2F2 -> 1110 1175 11A9 D2F3 -> 1110 1175 11AA D2F4 -> 1110 1175 11AB D2F5 -> 1110 1175 11AC D2F6 -> 1110 1175 11AD D2F7 -> 1110 1175 11AE D2F8 -> 1110 1175 11AF D2F9 -> 1110 1175 11B0 D2FA -> 1110 1175 11B1 D2FB -> 1110 1175 11B2 D2FC -> 1110 1175 11B3 D2FD -> 1110 1175 11B4 D2FE -> 1110 1175 11B5 D2FF -> 1110 1175 11B6 D300 -> 1110 1175 11B7 D301 -> 1110 1175 11B8 D302 -> 1110 1175 11B9 D303 -> 1110 1175 11BA D304 -> 1110 1175 11BB D305 -> 1110 1175 11BC D306 -> 1110 1175 11BD D307 -> 1110 1175 11BE D308 -> 1110 1175 11BF D309 -> 1110 1175 11C0 D30A -> 1110 1175 11C1 D30B -> 1110 1175 11C2 D30C -> 1111 1161 D30D -> 1111 1161 11A8 D30E -> 1111 1161 11A9 D30F -> 1111 1161 11AA D310 -> 1111 1161 11AB D311 -> 1111 1161 11AC D312 -> 1111 1161 11AD D313 -> 1111 1161 11AE D314 -> 1111 1161 11AF D315 -> 1111 1161 11B0 D316 -> 1111 1161 11B1 D317 -> 1111 1161 11B2 D318 -> 1111 1161 11B3 D319 -> 1111 1161 11B4 D31A -> 1111 1161 11B5 D31B -> 1111 1161 11B6 D31C -> 1111 1161 11B7 D31D -> 1111 1161 11B8 D31E -> 1111 1161 11B9 D31F -> 1111 1161 11BA D320 -> 1111 1161 11BB D321 -> 1111 1161 11BC D322 -> 1111 1161 11BD D323 -> 1111 1161 11BE D324 -> 1111 1161 11BF D325 -> 1111 1161 11C0 D326 -> 1111 1161 11C1 D327 -> 1111 1161 11C2 D328 -> 1111 1162 D329 -> 1111 1162 11A8 D32A -> 1111 1162 11A9 D32B -> 1111 1162 11AA D32C -> 1111 1162 11AB D32D -> 1111 1162 11AC D32E -> 1111 1162 11AD D32F -> 1111 1162 11AE D330 -> 1111 1162 11AF D331 -> 1111 1162 11B0 D332 -> 1111 1162 11B1 D333 -> 1111 1162 11B2 D334 -> 1111 1162 11B3 D335 -> 1111 1162 11B4 D336 -> 1111 1162 11B5 D337 -> 1111 1162 11B6 D338 -> 1111 1162 11B7 D339 -> 1111 1162 11B8 D33A -> 1111 1162 11B9 D33B -> 1111 1162 11BA D33C -> 1111 1162 11BB D33D -> 1111 1162 11BC D33E -> 1111 1162 11BD D33F -> 1111 1162 11BE D340 -> 1111 1162 11BF D341 -> 1111 1162 11C0 D342 -> 1111 1162 11C1 D343 -> 1111 1162 11C2 D344 -> 1111 1163 D345 -> 1111 1163 11A8 D346 -> 1111 1163 11A9 D347 -> 1111 1163 11AA D348 -> 1111 1163 11AB D349 -> 1111 1163 11AC D34A -> 1111 1163 11AD D34B -> 1111 1163 11AE D34C -> 1111 1163 11AF D34D -> 1111 1163 11B0 D34E -> 1111 1163 11B1 D34F -> 1111 1163 11B2 D350 -> 1111 1163 11B3 D351 -> 1111 1163 11B4 D352 -> 1111 1163 11B5 D353 -> 1111 1163 11B6 D354 -> 1111 1163 11B7 D355 -> 1111 1163 11B8 D356 -> 1111 1163 11B9 D357 -> 1111 1163 11BA D358 -> 1111 1163 11BB D359 -> 1111 1163 11BC D35A -> 1111 1163 11BD D35B -> 1111 1163 11BE D35C -> 1111 1163 11BF D35D -> 1111 1163 11C0 D35E -> 1111 1163 11C1 D35F -> 1111 1163 11C2 D360 -> 1111 1164 D361 -> 1111 1164 11A8 D362 -> 1111 1164 11A9 D363 -> 1111 1164 11AA D364 -> 1111 1164 11AB D365 -> 1111 1164 11AC D366 -> 1111 1164 11AD D367 -> 1111 1164 11AE D368 -> 1111 1164 11AF D369 -> 1111 1164 11B0 D36A -> 1111 1164 11B1 D36B -> 1111 1164 11B2 D36C -> 1111 1164 11B3 D36D -> 1111 1164 11B4 D36E -> 1111 1164 11B5 D36F -> 1111 1164 11B6 D370 -> 1111 1164 11B7 D371 -> 1111 1164 11B8 D372 -> 1111 1164 11B9 D373 -> 1111 1164 11BA D374 -> 1111 1164 11BB D375 -> 1111 1164 11BC D376 -> 1111 1164 11BD D377 -> 1111 1164 11BE D378 -> 1111 1164 11BF D379 -> 1111 1164 11C0 D37A -> 1111 1164 11C1 D37B -> 1111 1164 11C2 D37C -> 1111 1165 D37D -> 1111 1165 11A8 D37E -> 1111 1165 11A9 D37F -> 1111 1165 11AA D380 -> 1111 1165 11AB D381 -> 1111 1165 11AC D382 -> 1111 1165 11AD D383 -> 1111 1165 11AE D384 -> 1111 1165 11AF D385 -> 1111 1165 11B0 D386 -> 1111 1165 11B1 D387 -> 1111 1165 11B2 D388 -> 1111 1165 11B3 D389 -> 1111 1165 11B4 D38A -> 1111 1165 11B5 D38B -> 1111 1165 11B6 D38C -> 1111 1165 11B7 D38D -> 1111 1165 11B8 D38E -> 1111 1165 11B9 D38F -> 1111 1165 11BA D390 -> 1111 1165 11BB D391 -> 1111 1165 11BC D392 -> 1111 1165 11BD D393 -> 1111 1165 11BE D394 -> 1111 1165 11BF D395 -> 1111 1165 11C0 D396 -> 1111 1165 11C1 D397 -> 1111 1165 11C2 D398 -> 1111 1166 D399 -> 1111 1166 11A8 D39A -> 1111 1166 11A9 D39B -> 1111 1166 11AA D39C -> 1111 1166 11AB D39D -> 1111 1166 11AC D39E -> 1111 1166 11AD D39F -> 1111 1166 11AE D3A0 -> 1111 1166 11AF D3A1 -> 1111 1166 11B0 D3A2 -> 1111 1166 11B1 D3A3 -> 1111 1166 11B2 D3A4 -> 1111 1166 11B3 D3A5 -> 1111 1166 11B4 D3A6 -> 1111 1166 11B5 D3A7 -> 1111 1166 11B6 D3A8 -> 1111 1166 11B7 D3A9 -> 1111 1166 11B8 D3AA -> 1111 1166 11B9 D3AB -> 1111 1166 11BA D3AC -> 1111 1166 11BB D3AD -> 1111 1166 11BC D3AE -> 1111 1166 11BD D3AF -> 1111 1166 11BE D3B0 -> 1111 1166 11BF D3B1 -> 1111 1166 11C0 D3B2 -> 1111 1166 11C1 D3B3 -> 1111 1166 11C2 D3B4 -> 1111 1167 D3B5 -> 1111 1167 11A8 D3B6 -> 1111 1167 11A9 D3B7 -> 1111 1167 11AA D3B8 -> 1111 1167 11AB D3B9 -> 1111 1167 11AC D3BA -> 1111 1167 11AD D3BB -> 1111 1167 11AE D3BC -> 1111 1167 11AF D3BD -> 1111 1167 11B0 D3BE -> 1111 1167 11B1 D3BF -> 1111 1167 11B2 D3C0 -> 1111 1167 11B3 D3C1 -> 1111 1167 11B4 D3C2 -> 1111 1167 11B5 D3C3 -> 1111 1167 11B6 D3C4 -> 1111 1167 11B7 D3C5 -> 1111 1167 11B8 D3C6 -> 1111 1167 11B9 D3C7 -> 1111 1167 11BA D3C8 -> 1111 1167 11BB D3C9 -> 1111 1167 11BC D3CA -> 1111 1167 11BD D3CB -> 1111 1167 11BE D3CC -> 1111 1167 11BF D3CD -> 1111 1167 11C0 D3CE -> 1111 1167 11C1 D3CF -> 1111 1167 11C2 D3D0 -> 1111 1168 D3D1 -> 1111 1168 11A8 D3D2 -> 1111 1168 11A9 D3D3 -> 1111 1168 11AA D3D4 -> 1111 1168 11AB D3D5 -> 1111 1168 11AC D3D6 -> 1111 1168 11AD D3D7 -> 1111 1168 11AE D3D8 -> 1111 1168 11AF D3D9 -> 1111 1168 11B0 D3DA -> 1111 1168 11B1 D3DB -> 1111 1168 11B2 D3DC -> 1111 1168 11B3 D3DD -> 1111 1168 11B4 D3DE -> 1111 1168 11B5 D3DF -> 1111 1168 11B6 D3E0 -> 1111 1168 11B7 D3E1 -> 1111 1168 11B8 D3E2 -> 1111 1168 11B9 D3E3 -> 1111 1168 11BA D3E4 -> 1111 1168 11BB D3E5 -> 1111 1168 11BC D3E6 -> 1111 1168 11BD D3E7 -> 1111 1168 11BE D3E8 -> 1111 1168 11BF D3E9 -> 1111 1168 11C0 D3EA -> 1111 1168 11C1 D3EB -> 1111 1168 11C2 D3EC -> 1111 1169 D3ED -> 1111 1169 11A8 D3EE -> 1111 1169 11A9 D3EF -> 1111 1169 11AA D3F0 -> 1111 1169 11AB D3F1 -> 1111 1169 11AC D3F2 -> 1111 1169 11AD D3F3 -> 1111 1169 11AE D3F4 -> 1111 1169 11AF D3F5 -> 1111 1169 11B0 D3F6 -> 1111 1169 11B1 D3F7 -> 1111 1169 11B2 D3F8 -> 1111 1169 11B3 D3F9 -> 1111 1169 11B4 D3FA -> 1111 1169 11B5 D3FB -> 1111 1169 11B6 D3FC -> 1111 1169 11B7 D3FD -> 1111 1169 11B8 D3FE -> 1111 1169 11B9 D3FF -> 1111 1169 11BA D400 -> 1111 1169 11BB D401 -> 1111 1169 11BC D402 -> 1111 1169 11BD D403 -> 1111 1169 11BE D404 -> 1111 1169 11BF D405 -> 1111 1169 11C0 D406 -> 1111 1169 11C1 D407 -> 1111 1169 11C2 D408 -> 1111 116A D409 -> 1111 116A 11A8 D40A -> 1111 116A 11A9 D40B -> 1111 116A 11AA D40C -> 1111 116A 11AB D40D -> 1111 116A 11AC D40E -> 1111 116A 11AD D40F -> 1111 116A 11AE D410 -> 1111 116A 11AF D411 -> 1111 116A 11B0 D412 -> 1111 116A 11B1 D413 -> 1111 116A 11B2 D414 -> 1111 116A 11B3 D415 -> 1111 116A 11B4 D416 -> 1111 116A 11B5 D417 -> 1111 116A 11B6 D418 -> 1111 116A 11B7 D419 -> 1111 116A 11B8 D41A -> 1111 116A 11B9 D41B -> 1111 116A 11BA D41C -> 1111 116A 11BB D41D -> 1111 116A 11BC D41E -> 1111 116A 11BD D41F -> 1111 116A 11BE D420 -> 1111 116A 11BF D421 -> 1111 116A 11C0 D422 -> 1111 116A 11C1 D423 -> 1111 116A 11C2 D424 -> 1111 116B D425 -> 1111 116B 11A8 D426 -> 1111 116B 11A9 D427 -> 1111 116B 11AA D428 -> 1111 116B 11AB D429 -> 1111 116B 11AC D42A -> 1111 116B 11AD D42B -> 1111 116B 11AE D42C -> 1111 116B 11AF D42D -> 1111 116B 11B0 D42E -> 1111 116B 11B1 D42F -> 1111 116B 11B2 D430 -> 1111 116B 11B3 D431 -> 1111 116B 11B4 D432 -> 1111 116B 11B5 D433 -> 1111 116B 11B6 D434 -> 1111 116B 11B7 D435 -> 1111 116B 11B8 D436 -> 1111 116B 11B9 D437 -> 1111 116B 11BA D438 -> 1111 116B 11BB D439 -> 1111 116B 11BC D43A -> 1111 116B 11BD D43B -> 1111 116B 11BE D43C -> 1111 116B 11BF D43D -> 1111 116B 11C0 D43E -> 1111 116B 11C1 D43F -> 1111 116B 11C2 D440 -> 1111 116C D441 -> 1111 116C 11A8 D442 -> 1111 116C 11A9 D443 -> 1111 116C 11AA D444 -> 1111 116C 11AB D445 -> 1111 116C 11AC D446 -> 1111 116C 11AD D447 -> 1111 116C 11AE D448 -> 1111 116C 11AF D449 -> 1111 116C 11B0 D44A -> 1111 116C 11B1 D44B -> 1111 116C 11B2 D44C -> 1111 116C 11B3 D44D -> 1111 116C 11B4 D44E -> 1111 116C 11B5 D44F -> 1111 116C 11B6 D450 -> 1111 116C 11B7 D451 -> 1111 116C 11B8 D452 -> 1111 116C 11B9 D453 -> 1111 116C 11BA D454 -> 1111 116C 11BB D455 -> 1111 116C 11BC D456 -> 1111 116C 11BD D457 -> 1111 116C 11BE D458 -> 1111 116C 11BF D459 -> 1111 116C 11C0 D45A -> 1111 116C 11C1 D45B -> 1111 116C 11C2 D45C -> 1111 116D D45D -> 1111 116D 11A8 D45E -> 1111 116D 11A9 D45F -> 1111 116D 11AA D460 -> 1111 116D 11AB D461 -> 1111 116D 11AC D462 -> 1111 116D 11AD D463 -> 1111 116D 11AE D464 -> 1111 116D 11AF D465 -> 1111 116D 11B0 D466 -> 1111 116D 11B1 D467 -> 1111 116D 11B2 D468 -> 1111 116D 11B3 D469 -> 1111 116D 11B4 D46A -> 1111 116D 11B5 D46B -> 1111 116D 11B6 D46C -> 1111 116D 11B7 D46D -> 1111 116D 11B8 D46E -> 1111 116D 11B9 D46F -> 1111 116D 11BA D470 -> 1111 116D 11BB D471 -> 1111 116D 11BC D472 -> 1111 116D 11BD D473 -> 1111 116D 11BE D474 -> 1111 116D 11BF D475 -> 1111 116D 11C0 D476 -> 1111 116D 11C1 D477 -> 1111 116D 11C2 D478 -> 1111 116E D479 -> 1111 116E 11A8 D47A -> 1111 116E 11A9 D47B -> 1111 116E 11AA D47C -> 1111 116E 11AB D47D -> 1111 116E 11AC D47E -> 1111 116E 11AD D47F -> 1111 116E 11AE D480 -> 1111 116E 11AF D481 -> 1111 116E 11B0 D482 -> 1111 116E 11B1 D483 -> 1111 116E 11B2 D484 -> 1111 116E 11B3 D485 -> 1111 116E 11B4 D486 -> 1111 116E 11B5 D487 -> 1111 116E 11B6 D488 -> 1111 116E 11B7 D489 -> 1111 116E 11B8 D48A -> 1111 116E 11B9 D48B -> 1111 116E 11BA D48C -> 1111 116E 11BB D48D -> 1111 116E 11BC D48E -> 1111 116E 11BD D48F -> 1111 116E 11BE D490 -> 1111 116E 11BF D491 -> 1111 116E 11C0 D492 -> 1111 116E 11C1 D493 -> 1111 116E 11C2 D494 -> 1111 116F D495 -> 1111 116F 11A8 D496 -> 1111 116F 11A9 D497 -> 1111 116F 11AA D498 -> 1111 116F 11AB D499 -> 1111 116F 11AC D49A -> 1111 116F 11AD D49B -> 1111 116F 11AE D49C -> 1111 116F 11AF D49D -> 1111 116F 11B0 D49E -> 1111 116F 11B1 D49F -> 1111 116F 11B2 D4A0 -> 1111 116F 11B3 D4A1 -> 1111 116F 11B4 D4A2 -> 1111 116F 11B5 D4A3 -> 1111 116F 11B6 D4A4 -> 1111 116F 11B7 D4A5 -> 1111 116F 11B8 D4A6 -> 1111 116F 11B9 D4A7 -> 1111 116F 11BA D4A8 -> 1111 116F 11BB D4A9 -> 1111 116F 11BC D4AA -> 1111 116F 11BD D4AB -> 1111 116F 11BE D4AC -> 1111 116F 11BF D4AD -> 1111 116F 11C0 D4AE -> 1111 116F 11C1 D4AF -> 1111 116F 11C2 D4B0 -> 1111 1170 D4B1 -> 1111 1170 11A8 D4B2 -> 1111 1170 11A9 D4B3 -> 1111 1170 11AA D4B4 -> 1111 1170 11AB D4B5 -> 1111 1170 11AC D4B6 -> 1111 1170 11AD D4B7 -> 1111 1170 11AE D4B8 -> 1111 1170 11AF D4B9 -> 1111 1170 11B0 D4BA -> 1111 1170 11B1 D4BB -> 1111 1170 11B2 D4BC -> 1111 1170 11B3 D4BD -> 1111 1170 11B4 D4BE -> 1111 1170 11B5 D4BF -> 1111 1170 11B6 D4C0 -> 1111 1170 11B7 D4C1 -> 1111 1170 11B8 D4C2 -> 1111 1170 11B9 D4C3 -> 1111 1170 11BA D4C4 -> 1111 1170 11BB D4C5 -> 1111 1170 11BC D4C6 -> 1111 1170 11BD D4C7 -> 1111 1170 11BE D4C8 -> 1111 1170 11BF D4C9 -> 1111 1170 11C0 D4CA -> 1111 1170 11C1 D4CB -> 1111 1170 11C2 D4CC -> 1111 1171 D4CD -> 1111 1171 11A8 D4CE -> 1111 1171 11A9 D4CF -> 1111 1171 11AA D4D0 -> 1111 1171 11AB D4D1 -> 1111 1171 11AC D4D2 -> 1111 1171 11AD D4D3 -> 1111 1171 11AE D4D4 -> 1111 1171 11AF D4D5 -> 1111 1171 11B0 D4D6 -> 1111 1171 11B1 D4D7 -> 1111 1171 11B2 D4D8 -> 1111 1171 11B3 D4D9 -> 1111 1171 11B4 D4DA -> 1111 1171 11B5 D4DB -> 1111 1171 11B6 D4DC -> 1111 1171 11B7 D4DD -> 1111 1171 11B8 D4DE -> 1111 1171 11B9 D4DF -> 1111 1171 11BA D4E0 -> 1111 1171 11BB D4E1 -> 1111 1171 11BC D4E2 -> 1111 1171 11BD D4E3 -> 1111 1171 11BE D4E4 -> 1111 1171 11BF D4E5 -> 1111 1171 11C0 D4E6 -> 1111 1171 11C1 D4E7 -> 1111 1171 11C2 D4E8 -> 1111 1172 D4E9 -> 1111 1172 11A8 D4EA -> 1111 1172 11A9 D4EB -> 1111 1172 11AA D4EC -> 1111 1172 11AB D4ED -> 1111 1172 11AC D4EE -> 1111 1172 11AD D4EF -> 1111 1172 11AE D4F0 -> 1111 1172 11AF D4F1 -> 1111 1172 11B0 D4F2 -> 1111 1172 11B1 D4F3 -> 1111 1172 11B2 D4F4 -> 1111 1172 11B3 D4F5 -> 1111 1172 11B4 D4F6 -> 1111 1172 11B5 D4F7 -> 1111 1172 11B6 D4F8 -> 1111 1172 11B7 D4F9 -> 1111 1172 11B8 D4FA -> 1111 1172 11B9 D4FB -> 1111 1172 11BA D4FC -> 1111 1172 11BB D4FD -> 1111 1172 11BC D4FE -> 1111 1172 11BD D4FF -> 1111 1172 11BE D500 -> 1111 1172 11BF D501 -> 1111 1172 11C0 D502 -> 1111 1172 11C1 D503 -> 1111 1172 11C2 D504 -> 1111 1173 D505 -> 1111 1173 11A8 D506 -> 1111 1173 11A9 D507 -> 1111 1173 11AA D508 -> 1111 1173 11AB D509 -> 1111 1173 11AC D50A -> 1111 1173 11AD D50B -> 1111 1173 11AE D50C -> 1111 1173 11AF D50D -> 1111 1173 11B0 D50E -> 1111 1173 11B1 D50F -> 1111 1173 11B2 D510 -> 1111 1173 11B3 D511 -> 1111 1173 11B4 D512 -> 1111 1173 11B5 D513 -> 1111 1173 11B6 D514 -> 1111 1173 11B7 D515 -> 1111 1173 11B8 D516 -> 1111 1173 11B9 D517 -> 1111 1173 11BA D518 -> 1111 1173 11BB D519 -> 1111 1173 11BC D51A -> 1111 1173 11BD D51B -> 1111 1173 11BE D51C -> 1111 1173 11BF D51D -> 1111 1173 11C0 D51E -> 1111 1173 11C1 D51F -> 1111 1173 11C2 D520 -> 1111 1174 D521 -> 1111 1174 11A8 D522 -> 1111 1174 11A9 D523 -> 1111 1174 11AA D524 -> 1111 1174 11AB D525 -> 1111 1174 11AC D526 -> 1111 1174 11AD D527 -> 1111 1174 11AE D528 -> 1111 1174 11AF D529 -> 1111 1174 11B0 D52A -> 1111 1174 11B1 D52B -> 1111 1174 11B2 D52C -> 1111 1174 11B3 D52D -> 1111 1174 11B4 D52E -> 1111 1174 11B5 D52F -> 1111 1174 11B6 D530 -> 1111 1174 11B7 D531 -> 1111 1174 11B8 D532 -> 1111 1174 11B9 D533 -> 1111 1174 11BA D534 -> 1111 1174 11BB D535 -> 1111 1174 11BC D536 -> 1111 1174 11BD D537 -> 1111 1174 11BE D538 -> 1111 1174 11BF D539 -> 1111 1174 11C0 D53A -> 1111 1174 11C1 D53B -> 1111 1174 11C2 D53C -> 1111 1175 D53D -> 1111 1175 11A8 D53E -> 1111 1175 11A9 D53F -> 1111 1175 11AA D540 -> 1111 1175 11AB D541 -> 1111 1175 11AC D542 -> 1111 1175 11AD D543 -> 1111 1175 11AE D544 -> 1111 1175 11AF D545 -> 1111 1175 11B0 D546 -> 1111 1175 11B1 D547 -> 1111 1175 11B2 D548 -> 1111 1175 11B3 D549 -> 1111 1175 11B4 D54A -> 1111 1175 11B5 D54B -> 1111 1175 11B6 D54C -> 1111 1175 11B7 D54D -> 1111 1175 11B8 D54E -> 1111 1175 11B9 D54F -> 1111 1175 11BA D550 -> 1111 1175 11BB D551 -> 1111 1175 11BC D552 -> 1111 1175 11BD D553 -> 1111 1175 11BE D554 -> 1111 1175 11BF D555 -> 1111 1175 11C0 D556 -> 1111 1175 11C1 D557 -> 1111 1175 11C2 D558 -> 1112 1161 D559 -> 1112 1161 11A8 D55A -> 1112 1161 11A9 D55B -> 1112 1161 11AA D55C -> 1112 1161 11AB D55D -> 1112 1161 11AC D55E -> 1112 1161 11AD D55F -> 1112 1161 11AE D560 -> 1112 1161 11AF D561 -> 1112 1161 11B0 D562 -> 1112 1161 11B1 D563 -> 1112 1161 11B2 D564 -> 1112 1161 11B3 D565 -> 1112 1161 11B4 D566 -> 1112 1161 11B5 D567 -> 1112 1161 11B6 D568 -> 1112 1161 11B7 D569 -> 1112 1161 11B8 D56A -> 1112 1161 11B9 D56B -> 1112 1161 11BA D56C -> 1112 1161 11BB D56D -> 1112 1161 11BC D56E -> 1112 1161 11BD D56F -> 1112 1161 11BE D570 -> 1112 1161 11BF D571 -> 1112 1161 11C0 D572 -> 1112 1161 11C1 D573 -> 1112 1161 11C2 D574 -> 1112 1162 D575 -> 1112 1162 11A8 D576 -> 1112 1162 11A9 D577 -> 1112 1162 11AA D578 -> 1112 1162 11AB D579 -> 1112 1162 11AC D57A -> 1112 1162 11AD D57B -> 1112 1162 11AE D57C -> 1112 1162 11AF D57D -> 1112 1162 11B0 D57E -> 1112 1162 11B1 D57F -> 1112 1162 11B2 D580 -> 1112 1162 11B3 D581 -> 1112 1162 11B4 D582 -> 1112 1162 11B5 D583 -> 1112 1162 11B6 D584 -> 1112 1162 11B7 D585 -> 1112 1162 11B8 D586 -> 1112 1162 11B9 D587 -> 1112 1162 11BA D588 -> 1112 1162 11BB D589 -> 1112 1162 11BC D58A -> 1112 1162 11BD D58B -> 1112 1162 11BE D58C -> 1112 1162 11BF D58D -> 1112 1162 11C0 D58E -> 1112 1162 11C1 D58F -> 1112 1162 11C2 D590 -> 1112 1163 D591 -> 1112 1163 11A8 D592 -> 1112 1163 11A9 D593 -> 1112 1163 11AA D594 -> 1112 1163 11AB D595 -> 1112 1163 11AC D596 -> 1112 1163 11AD D597 -> 1112 1163 11AE D598 -> 1112 1163 11AF D599 -> 1112 1163 11B0 D59A -> 1112 1163 11B1 D59B -> 1112 1163 11B2 D59C -> 1112 1163 11B3 D59D -> 1112 1163 11B4 D59E -> 1112 1163 11B5 D59F -> 1112 1163 11B6 D5A0 -> 1112 1163 11B7 D5A1 -> 1112 1163 11B8 D5A2 -> 1112 1163 11B9 D5A3 -> 1112 1163 11BA D5A4 -> 1112 1163 11BB D5A5 -> 1112 1163 11BC D5A6 -> 1112 1163 11BD D5A7 -> 1112 1163 11BE D5A8 -> 1112 1163 11BF D5A9 -> 1112 1163 11C0 D5AA -> 1112 1163 11C1 D5AB -> 1112 1163 11C2 D5AC -> 1112 1164 D5AD -> 1112 1164 11A8 D5AE -> 1112 1164 11A9 D5AF -> 1112 1164 11AA D5B0 -> 1112 1164 11AB D5B1 -> 1112 1164 11AC D5B2 -> 1112 1164 11AD D5B3 -> 1112 1164 11AE D5B4 -> 1112 1164 11AF D5B5 -> 1112 1164 11B0 D5B6 -> 1112 1164 11B1 D5B7 -> 1112 1164 11B2 D5B8 -> 1112 1164 11B3 D5B9 -> 1112 1164 11B4 D5BA -> 1112 1164 11B5 D5BB -> 1112 1164 11B6 D5BC -> 1112 1164 11B7 D5BD -> 1112 1164 11B8 D5BE -> 1112 1164 11B9 D5BF -> 1112 1164 11BA D5C0 -> 1112 1164 11BB D5C1 -> 1112 1164 11BC D5C2 -> 1112 1164 11BD D5C3 -> 1112 1164 11BE D5C4 -> 1112 1164 11BF D5C5 -> 1112 1164 11C0 D5C6 -> 1112 1164 11C1 D5C7 -> 1112 1164 11C2 D5C8 -> 1112 1165 D5C9 -> 1112 1165 11A8 D5CA -> 1112 1165 11A9 D5CB -> 1112 1165 11AA D5CC -> 1112 1165 11AB D5CD -> 1112 1165 11AC D5CE -> 1112 1165 11AD D5CF -> 1112 1165 11AE D5D0 -> 1112 1165 11AF D5D1 -> 1112 1165 11B0 D5D2 -> 1112 1165 11B1 D5D3 -> 1112 1165 11B2 D5D4 -> 1112 1165 11B3 D5D5 -> 1112 1165 11B4 D5D6 -> 1112 1165 11B5 D5D7 -> 1112 1165 11B6 D5D8 -> 1112 1165 11B7 D5D9 -> 1112 1165 11B8 D5DA -> 1112 1165 11B9 D5DB -> 1112 1165 11BA D5DC -> 1112 1165 11BB D5DD -> 1112 1165 11BC D5DE -> 1112 1165 11BD D5DF -> 1112 1165 11BE D5E0 -> 1112 1165 11BF D5E1 -> 1112 1165 11C0 D5E2 -> 1112 1165 11C1 D5E3 -> 1112 1165 11C2 D5E4 -> 1112 1166 D5E5 -> 1112 1166 11A8 D5E6 -> 1112 1166 11A9 D5E7 -> 1112 1166 11AA D5E8 -> 1112 1166 11AB D5E9 -> 1112 1166 11AC D5EA -> 1112 1166 11AD D5EB -> 1112 1166 11AE D5EC -> 1112 1166 11AF D5ED -> 1112 1166 11B0 D5EE -> 1112 1166 11B1 D5EF -> 1112 1166 11B2 D5F0 -> 1112 1166 11B3 D5F1 -> 1112 1166 11B4 D5F2 -> 1112 1166 11B5 D5F3 -> 1112 1166 11B6 D5F4 -> 1112 1166 11B7 D5F5 -> 1112 1166 11B8 D5F6 -> 1112 1166 11B9 D5F7 -> 1112 1166 11BA D5F8 -> 1112 1166 11BB D5F9 -> 1112 1166 11BC D5FA -> 1112 1166 11BD D5FB -> 1112 1166 11BE D5FC -> 1112 1166 11BF D5FD -> 1112 1166 11C0 D5FE -> 1112 1166 11C1 D5FF -> 1112 1166 11C2 D600 -> 1112 1167 D601 -> 1112 1167 11A8 D602 -> 1112 1167 11A9 D603 -> 1112 1167 11AA D604 -> 1112 1167 11AB D605 -> 1112 1167 11AC D606 -> 1112 1167 11AD D607 -> 1112 1167 11AE D608 -> 1112 1167 11AF D609 -> 1112 1167 11B0 D60A -> 1112 1167 11B1 D60B -> 1112 1167 11B2 D60C -> 1112 1167 11B3 D60D -> 1112 1167 11B4 D60E -> 1112 1167 11B5 D60F -> 1112 1167 11B6 D610 -> 1112 1167 11B7 D611 -> 1112 1167 11B8 D612 -> 1112 1167 11B9 D613 -> 1112 1167 11BA D614 -> 1112 1167 11BB D615 -> 1112 1167 11BC D616 -> 1112 1167 11BD D617 -> 1112 1167 11BE D618 -> 1112 1167 11BF D619 -> 1112 1167 11C0 D61A -> 1112 1167 11C1 D61B -> 1112 1167 11C2 D61C -> 1112 1168 D61D -> 1112 1168 11A8 D61E -> 1112 1168 11A9 D61F -> 1112 1168 11AA D620 -> 1112 1168 11AB D621 -> 1112 1168 11AC D622 -> 1112 1168 11AD D623 -> 1112 1168 11AE D624 -> 1112 1168 11AF D625 -> 1112 1168 11B0 D626 -> 1112 1168 11B1 D627 -> 1112 1168 11B2 D628 -> 1112 1168 11B3 D629 -> 1112 1168 11B4 D62A -> 1112 1168 11B5 D62B -> 1112 1168 11B6 D62C -> 1112 1168 11B7 D62D -> 1112 1168 11B8 D62E -> 1112 1168 11B9 D62F -> 1112 1168 11BA D630 -> 1112 1168 11BB D631 -> 1112 1168 11BC D632 -> 1112 1168 11BD D633 -> 1112 1168 11BE D634 -> 1112 1168 11BF D635 -> 1112 1168 11C0 D636 -> 1112 1168 11C1 D637 -> 1112 1168 11C2 D638 -> 1112 1169 D639 -> 1112 1169 11A8 D63A -> 1112 1169 11A9 D63B -> 1112 1169 11AA D63C -> 1112 1169 11AB D63D -> 1112 1169 11AC D63E -> 1112 1169 11AD D63F -> 1112 1169 11AE D640 -> 1112 1169 11AF D641 -> 1112 1169 11B0 D642 -> 1112 1169 11B1 D643 -> 1112 1169 11B2 D644 -> 1112 1169 11B3 D645 -> 1112 1169 11B4 D646 -> 1112 1169 11B5 D647 -> 1112 1169 11B6 D648 -> 1112 1169 11B7 D649 -> 1112 1169 11B8 D64A -> 1112 1169 11B9 D64B -> 1112 1169 11BA D64C -> 1112 1169 11BB D64D -> 1112 1169 11BC D64E -> 1112 1169 11BD D64F -> 1112 1169 11BE D650 -> 1112 1169 11BF D651 -> 1112 1169 11C0 D652 -> 1112 1169 11C1 D653 -> 1112 1169 11C2 D654 -> 1112 116A D655 -> 1112 116A 11A8 D656 -> 1112 116A 11A9 D657 -> 1112 116A 11AA D658 -> 1112 116A 11AB D659 -> 1112 116A 11AC D65A -> 1112 116A 11AD D65B -> 1112 116A 11AE D65C -> 1112 116A 11AF D65D -> 1112 116A 11B0 D65E -> 1112 116A 11B1 D65F -> 1112 116A 11B2 D660 -> 1112 116A 11B3 D661 -> 1112 116A 11B4 D662 -> 1112 116A 11B5 D663 -> 1112 116A 11B6 D664 -> 1112 116A 11B7 D665 -> 1112 116A 11B8 D666 -> 1112 116A 11B9 D667 -> 1112 116A 11BA D668 -> 1112 116A 11BB D669 -> 1112 116A 11BC D66A -> 1112 116A 11BD D66B -> 1112 116A 11BE D66C -> 1112 116A 11BF D66D -> 1112 116A 11C0 D66E -> 1112 116A 11C1 D66F -> 1112 116A 11C2 D670 -> 1112 116B D671 -> 1112 116B 11A8 D672 -> 1112 116B 11A9 D673 -> 1112 116B 11AA D674 -> 1112 116B 11AB D675 -> 1112 116B 11AC D676 -> 1112 116B 11AD D677 -> 1112 116B 11AE D678 -> 1112 116B 11AF D679 -> 1112 116B 11B0 D67A -> 1112 116B 11B1 D67B -> 1112 116B 11B2 D67C -> 1112 116B 11B3 D67D -> 1112 116B 11B4 D67E -> 1112 116B 11B5 D67F -> 1112 116B 11B6 D680 -> 1112 116B 11B7 D681 -> 1112 116B 11B8 D682 -> 1112 116B 11B9 D683 -> 1112 116B 11BA D684 -> 1112 116B 11BB D685 -> 1112 116B 11BC D686 -> 1112 116B 11BD D687 -> 1112 116B 11BE D688 -> 1112 116B 11BF D689 -> 1112 116B 11C0 D68A -> 1112 116B 11C1 D68B -> 1112 116B 11C2 D68C -> 1112 116C D68D -> 1112 116C 11A8 D68E -> 1112 116C 11A9 D68F -> 1112 116C 11AA D690 -> 1112 116C 11AB D691 -> 1112 116C 11AC D692 -> 1112 116C 11AD D693 -> 1112 116C 11AE D694 -> 1112 116C 11AF D695 -> 1112 116C 11B0 D696 -> 1112 116C 11B1 D697 -> 1112 116C 11B2 D698 -> 1112 116C 11B3 D699 -> 1112 116C 11B4 D69A -> 1112 116C 11B5 D69B -> 1112 116C 11B6 D69C -> 1112 116C 11B7 D69D -> 1112 116C 11B8 D69E -> 1112 116C 11B9 D69F -> 1112 116C 11BA D6A0 -> 1112 116C 11BB D6A1 -> 1112 116C 11BC D6A2 -> 1112 116C 11BD D6A3 -> 1112 116C 11BE D6A4 -> 1112 116C 11BF D6A5 -> 1112 116C 11C0 D6A6 -> 1112 116C 11C1 D6A7 -> 1112 116C 11C2 D6A8 -> 1112 116D D6A9 -> 1112 116D 11A8 D6AA -> 1112 116D 11A9 D6AB -> 1112 116D 11AA D6AC -> 1112 116D 11AB D6AD -> 1112 116D 11AC D6AE -> 1112 116D 11AD D6AF -> 1112 116D 11AE D6B0 -> 1112 116D 11AF D6B1 -> 1112 116D 11B0 D6B2 -> 1112 116D 11B1 D6B3 -> 1112 116D 11B2 D6B4 -> 1112 116D 11B3 D6B5 -> 1112 116D 11B4 D6B6 -> 1112 116D 11B5 D6B7 -> 1112 116D 11B6 D6B8 -> 1112 116D 11B7 D6B9 -> 1112 116D 11B8 D6BA -> 1112 116D 11B9 D6BB -> 1112 116D 11BA D6BC -> 1112 116D 11BB D6BD -> 1112 116D 11BC D6BE -> 1112 116D 11BD D6BF -> 1112 116D 11BE D6C0 -> 1112 116D 11BF D6C1 -> 1112 116D 11C0 D6C2 -> 1112 116D 11C1 D6C3 -> 1112 116D 11C2 D6C4 -> 1112 116E D6C5 -> 1112 116E 11A8 D6C6 -> 1112 116E 11A9 D6C7 -> 1112 116E 11AA D6C8 -> 1112 116E 11AB D6C9 -> 1112 116E 11AC D6CA -> 1112 116E 11AD D6CB -> 1112 116E 11AE D6CC -> 1112 116E 11AF D6CD -> 1112 116E 11B0 D6CE -> 1112 116E 11B1 D6CF -> 1112 116E 11B2 D6D0 -> 1112 116E 11B3 D6D1 -> 1112 116E 11B4 D6D2 -> 1112 116E 11B5 D6D3 -> 1112 116E 11B6 D6D4 -> 1112 116E 11B7 D6D5 -> 1112 116E 11B8 D6D6 -> 1112 116E 11B9 D6D7 -> 1112 116E 11BA D6D8 -> 1112 116E 11BB D6D9 -> 1112 116E 11BC D6DA -> 1112 116E 11BD D6DB -> 1112 116E 11BE D6DC -> 1112 116E 11BF D6DD -> 1112 116E 11C0 D6DE -> 1112 116E 11C1 D6DF -> 1112 116E 11C2 D6E0 -> 1112 116F D6E1 -> 1112 116F 11A8 D6E2 -> 1112 116F 11A9 D6E3 -> 1112 116F 11AA D6E4 -> 1112 116F 11AB D6E5 -> 1112 116F 11AC D6E6 -> 1112 116F 11AD D6E7 -> 1112 116F 11AE D6E8 -> 1112 116F 11AF D6E9 -> 1112 116F 11B0 D6EA -> 1112 116F 11B1 D6EB -> 1112 116F 11B2 D6EC -> 1112 116F 11B3 D6ED -> 1112 116F 11B4 D6EE -> 1112 116F 11B5 D6EF -> 1112 116F 11B6 D6F0 -> 1112 116F 11B7 D6F1 -> 1112 116F 11B8 D6F2 -> 1112 116F 11B9 D6F3 -> 1112 116F 11BA D6F4 -> 1112 116F 11BB D6F5 -> 1112 116F 11BC D6F6 -> 1112 116F 11BD D6F7 -> 1112 116F 11BE D6F8 -> 1112 116F 11BF D6F9 -> 1112 116F 11C0 D6FA -> 1112 116F 11C1 D6FB -> 1112 116F 11C2 D6FC -> 1112 1170 D6FD -> 1112 1170 11A8 D6FE -> 1112 1170 11A9 D6FF -> 1112 1170 11AA D700 -> 1112 1170 11AB D701 -> 1112 1170 11AC D702 -> 1112 1170 11AD D703 -> 1112 1170 11AE D704 -> 1112 1170 11AF D705 -> 1112 1170 11B0 D706 -> 1112 1170 11B1 D707 -> 1112 1170 11B2 D708 -> 1112 1170 11B3 D709 -> 1112 1170 11B4 D70A -> 1112 1170 11B5 D70B -> 1112 1170 11B6 D70C -> 1112 1170 11B7 D70D -> 1112 1170 11B8 D70E -> 1112 1170 11B9 D70F -> 1112 1170 11BA D710 -> 1112 1170 11BB D711 -> 1112 1170 11BC D712 -> 1112 1170 11BD D713 -> 1112 1170 11BE D714 -> 1112 1170 11BF D715 -> 1112 1170 11C0 D716 -> 1112 1170 11C1 D717 -> 1112 1170 11C2 D718 -> 1112 1171 D719 -> 1112 1171 11A8 D71A -> 1112 1171 11A9 D71B -> 1112 1171 11AA D71C -> 1112 1171 11AB D71D -> 1112 1171 11AC D71E -> 1112 1171 11AD D71F -> 1112 1171 11AE D720 -> 1112 1171 11AF D721 -> 1112 1171 11B0 D722 -> 1112 1171 11B1 D723 -> 1112 1171 11B2 D724 -> 1112 1171 11B3 D725 -> 1112 1171 11B4 D726 -> 1112 1171 11B5 D727 -> 1112 1171 11B6 D728 -> 1112 1171 11B7 D729 -> 1112 1171 11B8 D72A -> 1112 1171 11B9 D72B -> 1112 1171 11BA D72C -> 1112 1171 11BB D72D -> 1112 1171 11BC D72E -> 1112 1171 11BD D72F -> 1112 1171 11BE D730 -> 1112 1171 11BF D731 -> 1112 1171 11C0 D732 -> 1112 1171 11C1 D733 -> 1112 1171 11C2 D734 -> 1112 1172 D735 -> 1112 1172 11A8 D736 -> 1112 1172 11A9 D737 -> 1112 1172 11AA D738 -> 1112 1172 11AB D739 -> 1112 1172 11AC D73A -> 1112 1172 11AD D73B -> 1112 1172 11AE D73C -> 1112 1172 11AF D73D -> 1112 1172 11B0 D73E -> 1112 1172 11B1 D73F -> 1112 1172 11B2 D740 -> 1112 1172 11B3 D741 -> 1112 1172 11B4 D742 -> 1112 1172 11B5 D743 -> 1112 1172 11B6 D744 -> 1112 1172 11B7 D745 -> 1112 1172 11B8 D746 -> 1112 1172 11B9 D747 -> 1112 1172 11BA D748 -> 1112 1172 11BB D749 -> 1112 1172 11BC D74A -> 1112 1172 11BD D74B -> 1112 1172 11BE D74C -> 1112 1172 11BF D74D -> 1112 1172 11C0 D74E -> 1112 1172 11C1 D74F -> 1112 1172 11C2 D750 -> 1112 1173 D751 -> 1112 1173 11A8 D752 -> 1112 1173 11A9 D753 -> 1112 1173 11AA D754 -> 1112 1173 11AB D755 -> 1112 1173 11AC D756 -> 1112 1173 11AD D757 -> 1112 1173 11AE D758 -> 1112 1173 11AF D759 -> 1112 1173 11B0 D75A -> 1112 1173 11B1 D75B -> 1112 1173 11B2 D75C -> 1112 1173 11B3 D75D -> 1112 1173 11B4 D75E -> 1112 1173 11B5 D75F -> 1112 1173 11B6 D760 -> 1112 1173 11B7 D761 -> 1112 1173 11B8 D762 -> 1112 1173 11B9 D763 -> 1112 1173 11BA D764 -> 1112 1173 11BB D765 -> 1112 1173 11BC D766 -> 1112 1173 11BD D767 -> 1112 1173 11BE D768 -> 1112 1173 11BF D769 -> 1112 1173 11C0 D76A -> 1112 1173 11C1 D76B -> 1112 1173 11C2 D76C -> 1112 1174 D76D -> 1112 1174 11A8 D76E -> 1112 1174 11A9 D76F -> 1112 1174 11AA D770 -> 1112 1174 11AB D771 -> 1112 1174 11AC D772 -> 1112 1174 11AD D773 -> 1112 1174 11AE D774 -> 1112 1174 11AF D775 -> 1112 1174 11B0 D776 -> 1112 1174 11B1 D777 -> 1112 1174 11B2 D778 -> 1112 1174 11B3 D779 -> 1112 1174 11B4 D77A -> 1112 1174 11B5 D77B -> 1112 1174 11B6 D77C -> 1112 1174 11B7 D77D -> 1112 1174 11B8 D77E -> 1112 1174 11B9 D77F -> 1112 1174 11BA D780 -> 1112 1174 11BB D781 -> 1112 1174 11BC D782 -> 1112 1174 11BD D783 -> 1112 1174 11BE D784 -> 1112 1174 11BF D785 -> 1112 1174 11C0 D786 -> 1112 1174 11C1 D787 -> 1112 1174 11C2 D788 -> 1112 1175 D789 -> 1112 1175 11A8 D78A -> 1112 1175 11A9 D78B -> 1112 1175 11AA D78C -> 1112 1175 11AB D78D -> 1112 1175 11AC D78E -> 1112 1175 11AD D78F -> 1112 1175 11AE D790 -> 1112 1175 11AF D791 -> 1112 1175 11B0 D792 -> 1112 1175 11B1 D793 -> 1112 1175 11B2 D794 -> 1112 1175 11B3 D795 -> 1112 1175 11B4 D796 -> 1112 1175 11B5 D797 -> 1112 1175 11B6 D798 -> 1112 1175 11B7 D799 -> 1112 1175 11B8 D79A -> 1112 1175 11B9 D79B -> 1112 1175 11BA D79C -> 1112 1175 11BB D79D -> 1112 1175 11BC D79E -> 1112 1175 11BD D79F -> 1112 1175 11BE D7A0 -> 1112 1175 11BF D7A1 -> 1112 1175 11C0 D7A2 -> 1112 1175 11C1 D7A3 -> 1112 1175 11C2 # # encoder # SECTION=compose ENCODE=1 KEY_WIDTH=1 VALUE_WIDTH=1 KEY_LENGTH=0 VALUE_LENGTH=0 0041 0300 -> 00C0 0041 0301 -> 00C1 0041 0302 -> 00C2 0041 0303 -> 00C3 0041 0308 -> 00C4 0041 030A -> 00C5 0043 0327 -> 00C7 0045 0300 -> 00C8 0045 0301 -> 00C9 0045 0302 -> 00CA 0045 0308 -> 00CB 0049 0300 -> 00CC 0049 0301 -> 00CD 0049 0302 -> 00CE 0049 0308 -> 00CF 004E 0303 -> 00D1 004F 0300 -> 00D2 004F 0301 -> 00D3 004F 0302 -> 00D4 004F 0303 -> 00D5 004F 0308 -> 00D6 0055 0300 -> 00D9 0055 0301 -> 00DA 0055 0302 -> 00DB 0055 0308 -> 00DC 0059 0301 -> 00DD 0061 0300 -> 00E0 0061 0301 -> 00E1 0061 0302 -> 00E2 0061 0303 -> 00E3 0061 0308 -> 00E4 0061 030A -> 00E5 0063 0327 -> 00E7 0065 0300 -> 00E8 0065 0301 -> 00E9 0065 0302 -> 00EA 0065 0308 -> 00EB 0069 0300 -> 00EC 0069 0301 -> 00ED 0069 0302 -> 00EE 0069 0308 -> 00EF 006E 0303 -> 00F1 006F 0300 -> 00F2 006F 0301 -> 00F3 006F 0302 -> 00F4 006F 0303 -> 00F5 006F 0308 -> 00F6 0075 0300 -> 00F9 0075 0301 -> 00FA 0075 0302 -> 00FB 0075 0308 -> 00FC 0079 0301 -> 00FD 0079 0308 -> 00FF 0041 0304 -> 0100 0061 0304 -> 0101 0041 0306 -> 0102 0061 0306 -> 0103 0041 0328 -> 0104 0061 0328 -> 0105 0043 0301 -> 0106 0063 0301 -> 0107 0043 0302 -> 0108 0063 0302 -> 0109 0043 0307 -> 010A 0063 0307 -> 010B 0043 030C -> 010C 0063 030C -> 010D 0044 030C -> 010E 0064 030C -> 010F 0045 0304 -> 0112 0065 0304 -> 0113 0045 0306 -> 0114 0065 0306 -> 0115 0045 0307 -> 0116 0065 0307 -> 0117 0045 0328 -> 0118 0065 0328 -> 0119 0045 030C -> 011A 0065 030C -> 011B 0047 0302 -> 011C 0067 0302 -> 011D 0047 0306 -> 011E 0067 0306 -> 011F 0047 0307 -> 0120 0067 0307 -> 0121 0047 0327 -> 0122 0067 0327 -> 0123 0048 0302 -> 0124 0068 0302 -> 0125 0049 0303 -> 0128 0069 0303 -> 0129 0049 0304 -> 012A 0069 0304 -> 012B 0049 0306 -> 012C 0069 0306 -> 012D 0049 0328 -> 012E 0069 0328 -> 012F 0049 0307 -> 0130 004A 0302 -> 0134 006A 0302 -> 0135 004B 0327 -> 0136 006B 0327 -> 0137 004C 0301 -> 0139 006C 0301 -> 013A 004C 0327 -> 013B 006C 0327 -> 013C 004C 030C -> 013D 006C 030C -> 013E 004E 0301 -> 0143 006E 0301 -> 0144 004E 0327 -> 0145 006E 0327 -> 0146 004E 030C -> 0147 006E 030C -> 0148 004F 0304 -> 014C 006F 0304 -> 014D 004F 0306 -> 014E 006F 0306 -> 014F 004F 030B -> 0150 006F 030B -> 0151 0052 0301 -> 0154 0072 0301 -> 0155 0052 0327 -> 0156 0072 0327 -> 0157 0052 030C -> 0158 0072 030C -> 0159 0053 0301 -> 015A 0073 0301 -> 015B 0053 0302 -> 015C 0073 0302 -> 015D 0053 0327 -> 015E 0073 0327 -> 015F 0053 030C -> 0160 0073 030C -> 0161 0054 0327 -> 0162 0074 0327 -> 0163 0054 030C -> 0164 0074 030C -> 0165 0055 0303 -> 0168 0075 0303 -> 0169 0055 0304 -> 016A 0075 0304 -> 016B 0055 0306 -> 016C 0075 0306 -> 016D 0055 030A -> 016E 0075 030A -> 016F 0055 030B -> 0170 0075 030B -> 0171 0055 0328 -> 0172 0075 0328 -> 0173 0057 0302 -> 0174 0077 0302 -> 0175 0059 0302 -> 0176 0079 0302 -> 0177 0059 0308 -> 0178 005A 0301 -> 0179 007A 0301 -> 017A 005A 0307 -> 017B 007A 0307 -> 017C 005A 030C -> 017D 007A 030C -> 017E 004F 031B -> 01A0 006F 031B -> 01A1 0055 031B -> 01AF 0075 031B -> 01B0 0041 030C -> 01CD 0061 030C -> 01CE 0049 030C -> 01CF 0069 030C -> 01D0 004F 030C -> 01D1 006F 030C -> 01D2 0055 030C -> 01D3 0075 030C -> 01D4 00DC 0304 -> 01D5 00FC 0304 -> 01D6 00DC 0301 -> 01D7 00FC 0301 -> 01D8 00DC 030C -> 01D9 00FC 030C -> 01DA 00DC 0300 -> 01DB 00FC 0300 -> 01DC 00C4 0304 -> 01DE 00E4 0304 -> 01DF 0226 0304 -> 01E0 0227 0304 -> 01E1 00C6 0304 -> 01E2 00E6 0304 -> 01E3 0047 030C -> 01E6 0067 030C -> 01E7 004B 030C -> 01E8 006B 030C -> 01E9 004F 0328 -> 01EA 006F 0328 -> 01EB 01EA 0304 -> 01EC 01EB 0304 -> 01ED 01B7 030C -> 01EE 0292 030C -> 01EF 006A 030C -> 01F0 0047 0301 -> 01F4 0067 0301 -> 01F5 004E 0300 -> 01F8 006E 0300 -> 01F9 00C5 0301 -> 01FA 00E5 0301 -> 01FB 00C6 0301 -> 01FC 00E6 0301 -> 01FD 00D8 0301 -> 01FE 00F8 0301 -> 01FF 0041 030F -> 0200 0061 030F -> 0201 0041 0311 -> 0202 0061 0311 -> 0203 0045 030F -> 0204 0065 030F -> 0205 0045 0311 -> 0206 0065 0311 -> 0207 0049 030F -> 0208 0069 030F -> 0209 0049 0311 -> 020A 0069 0311 -> 020B 004F 030F -> 020C 006F 030F -> 020D 004F 0311 -> 020E 006F 0311 -> 020F 0052 030F -> 0210 0072 030F -> 0211 0052 0311 -> 0212 0072 0311 -> 0213 0055 030F -> 0214 0075 030F -> 0215 0055 0311 -> 0216 0075 0311 -> 0217 0053 0326 -> 0218 0073 0326 -> 0219 0054 0326 -> 021A 0074 0326 -> 021B 0048 030C -> 021E 0068 030C -> 021F 0041 0307 -> 0226 0061 0307 -> 0227 0045 0327 -> 0228 0065 0327 -> 0229 00D6 0304 -> 022A 00F6 0304 -> 022B 00D5 0304 -> 022C 00F5 0304 -> 022D 004F 0307 -> 022E 006F 0307 -> 022F 022E 0304 -> 0230 022F 0304 -> 0231 0059 0304 -> 0232 0079 0304 -> 0233 0308 0301 -> 0344 00A8 0301 -> 0385 0391 0301 -> 0386 0395 0301 -> 0388 0397 0301 -> 0389 0399 0301 -> 038A 039F 0301 -> 038C 03A5 0301 -> 038E 03A9 0301 -> 038F 03CA 0301 -> 0390 0399 0308 -> 03AA 03A5 0308 -> 03AB 03B1 0301 -> 03AC 03B5 0301 -> 03AD 03B7 0301 -> 03AE 03B9 0301 -> 03AF 03CB 0301 -> 03B0 03B9 0308 -> 03CA 03C5 0308 -> 03CB 03BF 0301 -> 03CC 03C5 0301 -> 03CD 03C9 0301 -> 03CE 03D2 0301 -> 03D3 03D2 0308 -> 03D4 0415 0300 -> 0400 0415 0308 -> 0401 0413 0301 -> 0403 0406 0308 -> 0407 041A 0301 -> 040C 0418 0300 -> 040D 0423 0306 -> 040E 0418 0306 -> 0419 0438 0306 -> 0439 0435 0300 -> 0450 0435 0308 -> 0451 0433 0301 -> 0453 0456 0308 -> 0457 043A 0301 -> 045C 0438 0300 -> 045D 0443 0306 -> 045E 0474 030F -> 0476 0475 030F -> 0477 0416 0306 -> 04C1 0436 0306 -> 04C2 0410 0306 -> 04D0 0430 0306 -> 04D1 0410 0308 -> 04D2 0430 0308 -> 04D3 0415 0306 -> 04D6 0435 0306 -> 04D7 04D8 0308 -> 04DA 04D9 0308 -> 04DB 0416 0308 -> 04DC 0436 0308 -> 04DD 0417 0308 -> 04DE 0437 0308 -> 04DF 0418 0304 -> 04E2 0438 0304 -> 04E3 0418 0308 -> 04E4 0438 0308 -> 04E5 041E 0308 -> 04E6 043E 0308 -> 04E7 04E8 0308 -> 04EA 04E9 0308 -> 04EB 042D 0308 -> 04EC 044D 0308 -> 04ED 0423 0304 -> 04EE 0443 0304 -> 04EF 0423 0308 -> 04F0 0443 0308 -> 04F1 0423 030B -> 04F2 0443 030B -> 04F3 0427 0308 -> 04F4 0447 0308 -> 04F5 042B 0308 -> 04F8 044B 0308 -> 04F9 0627 0653 -> 0622 0627 0654 -> 0623 0648 0654 -> 0624 0627 0655 -> 0625 064A 0654 -> 0626 06D5 0654 -> 06C0 06C1 0654 -> 06C2 06D2 0654 -> 06D3 0928 093C -> 0929 0930 093C -> 0931 0933 093C -> 0934 0915 093C -> 0958 0916 093C -> 0959 0917 093C -> 095A 091C 093C -> 095B 0921 093C -> 095C 0922 093C -> 095D 092B 093C -> 095E 092F 093C -> 095F 09C7 09BE -> 09CB 09C7 09D7 -> 09CC 09A1 09BC -> 09DC 09A2 09BC -> 09DD 09AF 09BC -> 09DF 0A32 0A3C -> 0A33 0A38 0A3C -> 0A36 0A16 0A3C -> 0A59 0A17 0A3C -> 0A5A 0A1C 0A3C -> 0A5B 0A2B 0A3C -> 0A5E 0B47 0B56 -> 0B48 0B47 0B3E -> 0B4B 0B47 0B57 -> 0B4C 0B21 0B3C -> 0B5C 0B22 0B3C -> 0B5D 0B92 0BD7 -> 0B94 0BC6 0BBE -> 0BCA 0BC7 0BBE -> 0BCB 0BC6 0BD7 -> 0BCC 0C46 0C56 -> 0C48 0CBF 0CD5 -> 0CC0 0CC6 0CD5 -> 0CC7 0CC6 0CD6 -> 0CC8 0CC6 0CC2 -> 0CCA 0CCA 0CD5 -> 0CCB 0D46 0D3E -> 0D4A 0D47 0D3E -> 0D4B 0D46 0D57 -> 0D4C 0DD9 0DCA -> 0DDA 0DD9 0DCF -> 0DDC 0DDC 0DCA -> 0DDD 0DD9 0DDF -> 0DDE 0F42 0FB7 -> 0F43 0F4C 0FB7 -> 0F4D 0F51 0FB7 -> 0F52 0F56 0FB7 -> 0F57 0F5B 0FB7 -> 0F5C 0F40 0FB5 -> 0F69 0F71 0F72 -> 0F73 0F71 0F74 -> 0F75 0FB2 0F80 -> 0F76 0FB3 0F80 -> 0F78 0F71 0F80 -> 0F81 0F92 0FB7 -> 0F93 0F9C 0FB7 -> 0F9D 0FA1 0FB7 -> 0FA2 0FA6 0FB7 -> 0FA7 0FAB 0FB7 -> 0FAC 0F90 0FB5 -> 0FB9 1025 102E -> 1026 1B05 1B35 -> 1B06 1B07 1B35 -> 1B08 1B09 1B35 -> 1B0A 1B0B 1B35 -> 1B0C 1B0D 1B35 -> 1B0E 1B11 1B35 -> 1B12 1B3A 1B35 -> 1B3B 1B3C 1B35 -> 1B3D 1B3E 1B35 -> 1B40 1B3F 1B35 -> 1B41 1B42 1B35 -> 1B43 0041 0325 -> 1E00 0061 0325 -> 1E01 0042 0307 -> 1E02 0062 0307 -> 1E03 0042 0323 -> 1E04 0062 0323 -> 1E05 0042 0331 -> 1E06 0062 0331 -> 1E07 00C7 0301 -> 1E08 00E7 0301 -> 1E09 0044 0307 -> 1E0A 0064 0307 -> 1E0B 0044 0323 -> 1E0C 0064 0323 -> 1E0D 0044 0331 -> 1E0E 0064 0331 -> 1E0F 0044 0327 -> 1E10 0064 0327 -> 1E11 0044 032D -> 1E12 0064 032D -> 1E13 0112 0300 -> 1E14 0113 0300 -> 1E15 0112 0301 -> 1E16 0113 0301 -> 1E17 0045 032D -> 1E18 0065 032D -> 1E19 0045 0330 -> 1E1A 0065 0330 -> 1E1B 0228 0306 -> 1E1C 0229 0306 -> 1E1D 0046 0307 -> 1E1E 0066 0307 -> 1E1F 0047 0304 -> 1E20 0067 0304 -> 1E21 0048 0307 -> 1E22 0068 0307 -> 1E23 0048 0323 -> 1E24 0068 0323 -> 1E25 0048 0308 -> 1E26 0068 0308 -> 1E27 0048 0327 -> 1E28 0068 0327 -> 1E29 0048 032E -> 1E2A 0068 032E -> 1E2B 0049 0330 -> 1E2C 0069 0330 -> 1E2D 00CF 0301 -> 1E2E 00EF 0301 -> 1E2F 004B 0301 -> 1E30 006B 0301 -> 1E31 004B 0323 -> 1E32 006B 0323 -> 1E33 004B 0331 -> 1E34 006B 0331 -> 1E35 004C 0323 -> 1E36 006C 0323 -> 1E37 1E36 0304 -> 1E38 1E37 0304 -> 1E39 004C 0331 -> 1E3A 006C 0331 -> 1E3B 004C 032D -> 1E3C 006C 032D -> 1E3D 004D 0301 -> 1E3E 006D 0301 -> 1E3F 004D 0307 -> 1E40 006D 0307 -> 1E41 004D 0323 -> 1E42 006D 0323 -> 1E43 004E 0307 -> 1E44 006E 0307 -> 1E45 004E 0323 -> 1E46 006E 0323 -> 1E47 004E 0331 -> 1E48 006E 0331 -> 1E49 004E 032D -> 1E4A 006E 032D -> 1E4B 00D5 0301 -> 1E4C 00F5 0301 -> 1E4D 00D5 0308 -> 1E4E 00F5 0308 -> 1E4F 014C 0300 -> 1E50 014D 0300 -> 1E51 014C 0301 -> 1E52 014D 0301 -> 1E53 0050 0301 -> 1E54 0070 0301 -> 1E55 0050 0307 -> 1E56 0070 0307 -> 1E57 0052 0307 -> 1E58 0072 0307 -> 1E59 0052 0323 -> 1E5A 0072 0323 -> 1E5B 1E5A 0304 -> 1E5C 1E5B 0304 -> 1E5D 0052 0331 -> 1E5E 0072 0331 -> 1E5F 0053 0307 -> 1E60 0073 0307 -> 1E61 0053 0323 -> 1E62 0073 0323 -> 1E63 015A 0307 -> 1E64 015B 0307 -> 1E65 0160 0307 -> 1E66 0161 0307 -> 1E67 1E62 0307 -> 1E68 1E63 0307 -> 1E69 0054 0307 -> 1E6A 0074 0307 -> 1E6B 0054 0323 -> 1E6C 0074 0323 -> 1E6D 0054 0331 -> 1E6E 0074 0331 -> 1E6F 0054 032D -> 1E70 0074 032D -> 1E71 0055 0324 -> 1E72 0075 0324 -> 1E73 0055 0330 -> 1E74 0075 0330 -> 1E75 0055 032D -> 1E76 0075 032D -> 1E77 0168 0301 -> 1E78 0169 0301 -> 1E79 016A 0308 -> 1E7A 016B 0308 -> 1E7B 0056 0303 -> 1E7C 0076 0303 -> 1E7D 0056 0323 -> 1E7E 0076 0323 -> 1E7F 0057 0300 -> 1E80 0077 0300 -> 1E81 0057 0301 -> 1E82 0077 0301 -> 1E83 0057 0308 -> 1E84 0077 0308 -> 1E85 0057 0307 -> 1E86 0077 0307 -> 1E87 0057 0323 -> 1E88 0077 0323 -> 1E89 0058 0307 -> 1E8A 0078 0307 -> 1E8B 0058 0308 -> 1E8C 0078 0308 -> 1E8D 0059 0307 -> 1E8E 0079 0307 -> 1E8F 005A 0302 -> 1E90 007A 0302 -> 1E91 005A 0323 -> 1E92 007A 0323 -> 1E93 005A 0331 -> 1E94 007A 0331 -> 1E95 0068 0331 -> 1E96 0074 0308 -> 1E97 0077 030A -> 1E98 0079 030A -> 1E99 017F 0307 -> 1E9B 0041 0323 -> 1EA0 0061 0323 -> 1EA1 0041 0309 -> 1EA2 0061 0309 -> 1EA3 00C2 0301 -> 1EA4 00E2 0301 -> 1EA5 00C2 0300 -> 1EA6 00E2 0300 -> 1EA7 00C2 0309 -> 1EA8 00E2 0309 -> 1EA9 00C2 0303 -> 1EAA 00E2 0303 -> 1EAB 1EA0 0302 -> 1EAC 1EA1 0302 -> 1EAD 0102 0301 -> 1EAE 0103 0301 -> 1EAF 0102 0300 -> 1EB0 0103 0300 -> 1EB1 0102 0309 -> 1EB2 0103 0309 -> 1EB3 0102 0303 -> 1EB4 0103 0303 -> 1EB5 1EA0 0306 -> 1EB6 1EA1 0306 -> 1EB7 0045 0323 -> 1EB8 0065 0323 -> 1EB9 0045 0309 -> 1EBA 0065 0309 -> 1EBB 0045 0303 -> 1EBC 0065 0303 -> 1EBD 00CA 0301 -> 1EBE 00EA 0301 -> 1EBF 00CA 0300 -> 1EC0 00EA 0300 -> 1EC1 00CA 0309 -> 1EC2 00EA 0309 -> 1EC3 00CA 0303 -> 1EC4 00EA 0303 -> 1EC5 1EB8 0302 -> 1EC6 1EB9 0302 -> 1EC7 0049 0309 -> 1EC8 0069 0309 -> 1EC9 0049 0323 -> 1ECA 0069 0323 -> 1ECB 004F 0323 -> 1ECC 006F 0323 -> 1ECD 004F 0309 -> 1ECE 006F 0309 -> 1ECF 00D4 0301 -> 1ED0 00F4 0301 -> 1ED1 00D4 0300 -> 1ED2 00F4 0300 -> 1ED3 00D4 0309 -> 1ED4 00F4 0309 -> 1ED5 00D4 0303 -> 1ED6 00F4 0303 -> 1ED7 1ECC 0302 -> 1ED8 1ECD 0302 -> 1ED9 01A0 0301 -> 1EDA 01A1 0301 -> 1EDB 01A0 0300 -> 1EDC 01A1 0300 -> 1EDD 01A0 0309 -> 1EDE 01A1 0309 -> 1EDF 01A0 0303 -> 1EE0 01A1 0303 -> 1EE1 01A0 0323 -> 1EE2 01A1 0323 -> 1EE3 0055 0323 -> 1EE4 0075 0323 -> 1EE5 0055 0309 -> 1EE6 0075 0309 -> 1EE7 01AF 0301 -> 1EE8 01B0 0301 -> 1EE9 01AF 0300 -> 1EEA 01B0 0300 -> 1EEB 01AF 0309 -> 1EEC 01B0 0309 -> 1EED 01AF 0303 -> 1EEE 01B0 0303 -> 1EEF 01AF 0323 -> 1EF0 01B0 0323 -> 1EF1 0059 0300 -> 1EF2 0079 0300 -> 1EF3 0059 0323 -> 1EF4 0079 0323 -> 1EF5 0059 0309 -> 1EF6 0079 0309 -> 1EF7 0059 0303 -> 1EF8 0079 0303 -> 1EF9 03B1 0313 -> 1F00 03B1 0314 -> 1F01 1F00 0300 -> 1F02 1F01 0300 -> 1F03 1F00 0301 -> 1F04 1F01 0301 -> 1F05 1F00 0342 -> 1F06 1F01 0342 -> 1F07 0391 0313 -> 1F08 0391 0314 -> 1F09 1F08 0300 -> 1F0A 1F09 0300 -> 1F0B 1F08 0301 -> 1F0C 1F09 0301 -> 1F0D 1F08 0342 -> 1F0E 1F09 0342 -> 1F0F 03B5 0313 -> 1F10 03B5 0314 -> 1F11 1F10 0300 -> 1F12 1F11 0300 -> 1F13 1F10 0301 -> 1F14 1F11 0301 -> 1F15 0395 0313 -> 1F18 0395 0314 -> 1F19 1F18 0300 -> 1F1A 1F19 0300 -> 1F1B 1F18 0301 -> 1F1C 1F19 0301 -> 1F1D 03B7 0313 -> 1F20 03B7 0314 -> 1F21 1F20 0300 -> 1F22 1F21 0300 -> 1F23 1F20 0301 -> 1F24 1F21 0301 -> 1F25 1F20 0342 -> 1F26 1F21 0342 -> 1F27 0397 0313 -> 1F28 0397 0314 -> 1F29 1F28 0300 -> 1F2A 1F29 0300 -> 1F2B 1F28 0301 -> 1F2C 1F29 0301 -> 1F2D 1F28 0342 -> 1F2E 1F29 0342 -> 1F2F 03B9 0313 -> 1F30 03B9 0314 -> 1F31 1F30 0300 -> 1F32 1F31 0300 -> 1F33 1F30 0301 -> 1F34 1F31 0301 -> 1F35 1F30 0342 -> 1F36 1F31 0342 -> 1F37 0399 0313 -> 1F38 0399 0314 -> 1F39 1F38 0300 -> 1F3A 1F39 0300 -> 1F3B 1F38 0301 -> 1F3C 1F39 0301 -> 1F3D 1F38 0342 -> 1F3E 1F39 0342 -> 1F3F 03BF 0313 -> 1F40 03BF 0314 -> 1F41 1F40 0300 -> 1F42 1F41 0300 -> 1F43 1F40 0301 -> 1F44 1F41 0301 -> 1F45 039F 0313 -> 1F48 039F 0314 -> 1F49 1F48 0300 -> 1F4A 1F49 0300 -> 1F4B 1F48 0301 -> 1F4C 1F49 0301 -> 1F4D 03C5 0313 -> 1F50 03C5 0314 -> 1F51 1F50 0300 -> 1F52 1F51 0300 -> 1F53 1F50 0301 -> 1F54 1F51 0301 -> 1F55 1F50 0342 -> 1F56 1F51 0342 -> 1F57 03A5 0314 -> 1F59 1F59 0300 -> 1F5B 1F59 0301 -> 1F5D 1F59 0342 -> 1F5F 03C9 0313 -> 1F60 03C9 0314 -> 1F61 1F60 0300 -> 1F62 1F61 0300 -> 1F63 1F60 0301 -> 1F64 1F61 0301 -> 1F65 1F60 0342 -> 1F66 1F61 0342 -> 1F67 03A9 0313 -> 1F68 03A9 0314 -> 1F69 1F68 0300 -> 1F6A 1F69 0300 -> 1F6B 1F68 0301 -> 1F6C 1F69 0301 -> 1F6D 1F68 0342 -> 1F6E 1F69 0342 -> 1F6F 03B1 0300 -> 1F70 03B5 0300 -> 1F72 03B7 0300 -> 1F74 03B9 0300 -> 1F76 03BF 0300 -> 1F78 03C5 0300 -> 1F7A 03C9 0300 -> 1F7C 1F00 0345 -> 1F80 1F01 0345 -> 1F81 1F02 0345 -> 1F82 1F03 0345 -> 1F83 1F04 0345 -> 1F84 1F05 0345 -> 1F85 1F06 0345 -> 1F86 1F07 0345 -> 1F87 1F08 0345 -> 1F88 1F09 0345 -> 1F89 1F0A 0345 -> 1F8A 1F0B 0345 -> 1F8B 1F0C 0345 -> 1F8C 1F0D 0345 -> 1F8D 1F0E 0345 -> 1F8E 1F0F 0345 -> 1F8F 1F20 0345 -> 1F90 1F21 0345 -> 1F91 1F22 0345 -> 1F92 1F23 0345 -> 1F93 1F24 0345 -> 1F94 1F25 0345 -> 1F95 1F26 0345 -> 1F96 1F27 0345 -> 1F97 1F28 0345 -> 1F98 1F29 0345 -> 1F99 1F2A 0345 -> 1F9A 1F2B 0345 -> 1F9B 1F2C 0345 -> 1F9C 1F2D 0345 -> 1F9D 1F2E 0345 -> 1F9E 1F2F 0345 -> 1F9F 1F60 0345 -> 1FA0 1F61 0345 -> 1FA1 1F62 0345 -> 1FA2 1F63 0345 -> 1FA3 1F64 0345 -> 1FA4 1F65 0345 -> 1FA5 1F66 0345 -> 1FA6 1F67 0345 -> 1FA7 1F68 0345 -> 1FA8 1F69 0345 -> 1FA9 1F6A 0345 -> 1FAA 1F6B 0345 -> 1FAB 1F6C 0345 -> 1FAC 1F6D 0345 -> 1FAD 1F6E 0345 -> 1FAE 1F6F 0345 -> 1FAF 03B1 0306 -> 1FB0 03B1 0304 -> 1FB1 1F70 0345 -> 1FB2 03B1 0345 -> 1FB3 03AC 0345 -> 1FB4 03B1 0342 -> 1FB6 1FB6 0345 -> 1FB7 0391 0306 -> 1FB8 0391 0304 -> 1FB9 0391 0300 -> 1FBA 0391 0345 -> 1FBC 00A8 0342 -> 1FC1 1F74 0345 -> 1FC2 03B7 0345 -> 1FC3 03AE 0345 -> 1FC4 03B7 0342 -> 1FC6 1FC6 0345 -> 1FC7 0395 0300 -> 1FC8 0397 0300 -> 1FCA 0397 0345 -> 1FCC 1FBF 0300 -> 1FCD 1FBF 0301 -> 1FCE 1FBF 0342 -> 1FCF 03B9 0306 -> 1FD0 03B9 0304 -> 1FD1 03CA 0300 -> 1FD2 03B9 0342 -> 1FD6 03CA 0342 -> 1FD7 0399 0306 -> 1FD8 0399 0304 -> 1FD9 0399 0300 -> 1FDA 1FFE 0300 -> 1FDD 1FFE 0301 -> 1FDE 1FFE 0342 -> 1FDF 03C5 0306 -> 1FE0 03C5 0304 -> 1FE1 03CB 0300 -> 1FE2 03C1 0313 -> 1FE4 03C1 0314 -> 1FE5 03C5 0342 -> 1FE6 03CB 0342 -> 1FE7 03A5 0306 -> 1FE8 03A5 0304 -> 1FE9 03A5 0300 -> 1FEA 03A1 0314 -> 1FEC 00A8 0300 -> 1FED 1F7C 0345 -> 1FF2 03C9 0345 -> 1FF3 03CE 0345 -> 1FF4 03C9 0342 -> 1FF6 1FF6 0345 -> 1FF7 039F 0300 -> 1FF8 03A9 0300 -> 1FFA 03A9 0345 -> 1FFC 2190 0338 -> 219A 2192 0338 -> 219B 2194 0338 -> 21AE 21D0 0338 -> 21CD 21D4 0338 -> 21CE 21D2 0338 -> 21CF 2203 0338 -> 2204 2208 0338 -> 2209 220B 0338 -> 220C 2223 0338 -> 2224 2225 0338 -> 2226 223C 0338 -> 2241 2243 0338 -> 2244 2245 0338 -> 2247 2248 0338 -> 2249 003D 0338 -> 2260 2261 0338 -> 2262 224D 0338 -> 226D 003C 0338 -> 226E 003E 0338 -> 226F 2264 0338 -> 2270 2265 0338 -> 2271 2272 0338 -> 2274 2273 0338 -> 2275 2276 0338 -> 2278 2277 0338 -> 2279 227A 0338 -> 2280 227B 0338 -> 2281 2282 0338 -> 2284 2283 0338 -> 2285 2286 0338 -> 2288 2287 0338 -> 2289 22A2 0338 -> 22AC 22A8 0338 -> 22AD 22A9 0338 -> 22AE 22AB 0338 -> 22AF 227C 0338 -> 22E0 227D 0338 -> 22E1 2291 0338 -> 22E2 2292 0338 -> 22E3 22B2 0338 -> 22EA 22B3 0338 -> 22EB 22B4 0338 -> 22EC 22B5 0338 -> 22ED 2ADD 0338 -> 2ADC 304B 3099 -> 304C 304D 3099 -> 304E 304F 3099 -> 3050 3051 3099 -> 3052 3053 3099 -> 3054 3055 3099 -> 3056 3057 3099 -> 3058 3059 3099 -> 305A 305B 3099 -> 305C 305D 3099 -> 305E 305F 3099 -> 3060 3061 3099 -> 3062 3064 3099 -> 3065 3066 3099 -> 3067 3068 3099 -> 3069 306F 3099 -> 3070 306F 309A -> 3071 3072 3099 -> 3073 3072 309A -> 3074 3075 3099 -> 3076 3075 309A -> 3077 3078 3099 -> 3079 3078 309A -> 307A 307B 3099 -> 307C 307B 309A -> 307D 3046 3099 -> 3094 309D 3099 -> 309E 30AB 3099 -> 30AC 30AD 3099 -> 30AE 30AF 3099 -> 30B0 30B1 3099 -> 30B2 30B3 3099 -> 30B4 30B5 3099 -> 30B6 30B7 3099 -> 30B8 30B9 3099 -> 30BA 30BB 3099 -> 30BC 30BD 3099 -> 30BE 30BF 3099 -> 30C0 30C1 3099 -> 30C2 30C4 3099 -> 30C5 30C6 3099 -> 30C7 30C8 3099 -> 30C9 30CF 3099 -> 30D0 30CF 309A -> 30D1 30D2 3099 -> 30D3 30D2 309A -> 30D4 30D5 3099 -> 30D6 30D5 309A -> 30D7 30D8 3099 -> 30D9 30D8 309A -> 30DA 30DB 3099 -> 30DC 30DB 309A -> 30DD 30A6 3099 -> 30F4 30EF 3099 -> 30F7 30F0 3099 -> 30F8 30F1 3099 -> 30F9 30F2 3099 -> 30FA 30FD 3099 -> 30FE 05D9 05B4 -> FB1D 05F2 05B7 -> FB1F 05E9 05C1 -> FB2A 05E9 05C2 -> FB2B FB49 05C1 -> FB2C FB49 05C2 -> FB2D 05D0 05B7 -> FB2E 05D0 05B8 -> FB2F 05D0 05BC -> FB30 05D1 05BC -> FB31 05D2 05BC -> FB32 05D3 05BC -> FB33 05D4 05BC -> FB34 05D5 05BC -> FB35 05D6 05BC -> FB36 05D8 05BC -> FB38 05D9 05BC -> FB39 05DA 05BC -> FB3A 05DB 05BC -> FB3B 05DC 05BC -> FB3C 05DE 05BC -> FB3E 05E0 05BC -> FB40 05E1 05BC -> FB41 05E3 05BC -> FB43 05E4 05BC -> FB44 05E6 05BC -> FB46 05E7 05BC -> FB47 05E8 05BC -> FB48 05E9 05BC -> FB49 05EA 05BC -> FB4A 05D5 05B9 -> FB4B 05D1 05BF -> FB4C 05DB 05BF -> FB4D 05E4 05BF -> FB4E 1100 1161 -> AC00 1100 1161 11A8 -> AC01 1100 1161 11A9 -> AC02 1100 1161 11AA -> AC03 1100 1161 11AB -> AC04 1100 1161 11AC -> AC05 1100 1161 11AD -> AC06 1100 1161 11AE -> AC07 1100 1161 11AF -> AC08 1100 1161 11B0 -> AC09 1100 1161 11B1 -> AC0A 1100 1161 11B2 -> AC0B 1100 1161 11B3 -> AC0C 1100 1161 11B4 -> AC0D 1100 1161 11B5 -> AC0E 1100 1161 11B6 -> AC0F 1100 1161 11B7 -> AC10 1100 1161 11B8 -> AC11 1100 1161 11B9 -> AC12 1100 1161 11BA -> AC13 1100 1161 11BB -> AC14 1100 1161 11BC -> AC15 1100 1161 11BD -> AC16 1100 1161 11BE -> AC17 1100 1161 11BF -> AC18 1100 1161 11C0 -> AC19 1100 1161 11C1 -> AC1A 1100 1161 11C2 -> AC1B 1100 1162 -> AC1C 1100 1162 11A8 -> AC1D 1100 1162 11A9 -> AC1E 1100 1162 11AA -> AC1F 1100 1162 11AB -> AC20 1100 1162 11AC -> AC21 1100 1162 11AD -> AC22 1100 1162 11AE -> AC23 1100 1162 11AF -> AC24 1100 1162 11B0 -> AC25 1100 1162 11B1 -> AC26 1100 1162 11B2 -> AC27 1100 1162 11B3 -> AC28 1100 1162 11B4 -> AC29 1100 1162 11B5 -> AC2A 1100 1162 11B6 -> AC2B 1100 1162 11B7 -> AC2C 1100 1162 11B8 -> AC2D 1100 1162 11B9 -> AC2E 1100 1162 11BA -> AC2F 1100 1162 11BB -> AC30 1100 1162 11BC -> AC31 1100 1162 11BD -> AC32 1100 1162 11BE -> AC33 1100 1162 11BF -> AC34 1100 1162 11C0 -> AC35 1100 1162 11C1 -> AC36 1100 1162 11C2 -> AC37 1100 1163 -> AC38 1100 1163 11A8 -> AC39 1100 1163 11A9 -> AC3A 1100 1163 11AA -> AC3B 1100 1163 11AB -> AC3C 1100 1163 11AC -> AC3D 1100 1163 11AD -> AC3E 1100 1163 11AE -> AC3F 1100 1163 11AF -> AC40 1100 1163 11B0 -> AC41 1100 1163 11B1 -> AC42 1100 1163 11B2 -> AC43 1100 1163 11B3 -> AC44 1100 1163 11B4 -> AC45 1100 1163 11B5 -> AC46 1100 1163 11B6 -> AC47 1100 1163 11B7 -> AC48 1100 1163 11B8 -> AC49 1100 1163 11B9 -> AC4A 1100 1163 11BA -> AC4B 1100 1163 11BB -> AC4C 1100 1163 11BC -> AC4D 1100 1163 11BD -> AC4E 1100 1163 11BE -> AC4F 1100 1163 11BF -> AC50 1100 1163 11C0 -> AC51 1100 1163 11C1 -> AC52 1100 1163 11C2 -> AC53 1100 1164 -> AC54 1100 1164 11A8 -> AC55 1100 1164 11A9 -> AC56 1100 1164 11AA -> AC57 1100 1164 11AB -> AC58 1100 1164 11AC -> AC59 1100 1164 11AD -> AC5A 1100 1164 11AE -> AC5B 1100 1164 11AF -> AC5C 1100 1164 11B0 -> AC5D 1100 1164 11B1 -> AC5E 1100 1164 11B2 -> AC5F 1100 1164 11B3 -> AC60 1100 1164 11B4 -> AC61 1100 1164 11B5 -> AC62 1100 1164 11B6 -> AC63 1100 1164 11B7 -> AC64 1100 1164 11B8 -> AC65 1100 1164 11B9 -> AC66 1100 1164 11BA -> AC67 1100 1164 11BB -> AC68 1100 1164 11BC -> AC69 1100 1164 11BD -> AC6A 1100 1164 11BE -> AC6B 1100 1164 11BF -> AC6C 1100 1164 11C0 -> AC6D 1100 1164 11C1 -> AC6E 1100 1164 11C2 -> AC6F 1100 1165 -> AC70 1100 1165 11A8 -> AC71 1100 1165 11A9 -> AC72 1100 1165 11AA -> AC73 1100 1165 11AB -> AC74 1100 1165 11AC -> AC75 1100 1165 11AD -> AC76 1100 1165 11AE -> AC77 1100 1165 11AF -> AC78 1100 1165 11B0 -> AC79 1100 1165 11B1 -> AC7A 1100 1165 11B2 -> AC7B 1100 1165 11B3 -> AC7C 1100 1165 11B4 -> AC7D 1100 1165 11B5 -> AC7E 1100 1165 11B6 -> AC7F 1100 1165 11B7 -> AC80 1100 1165 11B8 -> AC81 1100 1165 11B9 -> AC82 1100 1165 11BA -> AC83 1100 1165 11BB -> AC84 1100 1165 11BC -> AC85 1100 1165 11BD -> AC86 1100 1165 11BE -> AC87 1100 1165 11BF -> AC88 1100 1165 11C0 -> AC89 1100 1165 11C1 -> AC8A 1100 1165 11C2 -> AC8B 1100 1166 -> AC8C 1100 1166 11A8 -> AC8D 1100 1166 11A9 -> AC8E 1100 1166 11AA -> AC8F 1100 1166 11AB -> AC90 1100 1166 11AC -> AC91 1100 1166 11AD -> AC92 1100 1166 11AE -> AC93 1100 1166 11AF -> AC94 1100 1166 11B0 -> AC95 1100 1166 11B1 -> AC96 1100 1166 11B2 -> AC97 1100 1166 11B3 -> AC98 1100 1166 11B4 -> AC99 1100 1166 11B5 -> AC9A 1100 1166 11B6 -> AC9B 1100 1166 11B7 -> AC9C 1100 1166 11B8 -> AC9D 1100 1166 11B9 -> AC9E 1100 1166 11BA -> AC9F 1100 1166 11BB -> ACA0 1100 1166 11BC -> ACA1 1100 1166 11BD -> ACA2 1100 1166 11BE -> ACA3 1100 1166 11BF -> ACA4 1100 1166 11C0 -> ACA5 1100 1166 11C1 -> ACA6 1100 1166 11C2 -> ACA7 1100 1167 -> ACA8 1100 1167 11A8 -> ACA9 1100 1167 11A9 -> ACAA 1100 1167 11AA -> ACAB 1100 1167 11AB -> ACAC 1100 1167 11AC -> ACAD 1100 1167 11AD -> ACAE 1100 1167 11AE -> ACAF 1100 1167 11AF -> ACB0 1100 1167 11B0 -> ACB1 1100 1167 11B1 -> ACB2 1100 1167 11B2 -> ACB3 1100 1167 11B3 -> ACB4 1100 1167 11B4 -> ACB5 1100 1167 11B5 -> ACB6 1100 1167 11B6 -> ACB7 1100 1167 11B7 -> ACB8 1100 1167 11B8 -> ACB9 1100 1167 11B9 -> ACBA 1100 1167 11BA -> ACBB 1100 1167 11BB -> ACBC 1100 1167 11BC -> ACBD 1100 1167 11BD -> ACBE 1100 1167 11BE -> ACBF 1100 1167 11BF -> ACC0 1100 1167 11C0 -> ACC1 1100 1167 11C1 -> ACC2 1100 1167 11C2 -> ACC3 1100 1168 -> ACC4 1100 1168 11A8 -> ACC5 1100 1168 11A9 -> ACC6 1100 1168 11AA -> ACC7 1100 1168 11AB -> ACC8 1100 1168 11AC -> ACC9 1100 1168 11AD -> ACCA 1100 1168 11AE -> ACCB 1100 1168 11AF -> ACCC 1100 1168 11B0 -> ACCD 1100 1168 11B1 -> ACCE 1100 1168 11B2 -> ACCF 1100 1168 11B3 -> ACD0 1100 1168 11B4 -> ACD1 1100 1168 11B5 -> ACD2 1100 1168 11B6 -> ACD3 1100 1168 11B7 -> ACD4 1100 1168 11B8 -> ACD5 1100 1168 11B9 -> ACD6 1100 1168 11BA -> ACD7 1100 1168 11BB -> ACD8 1100 1168 11BC -> ACD9 1100 1168 11BD -> ACDA 1100 1168 11BE -> ACDB 1100 1168 11BF -> ACDC 1100 1168 11C0 -> ACDD 1100 1168 11C1 -> ACDE 1100 1168 11C2 -> ACDF 1100 1169 -> ACE0 1100 1169 11A8 -> ACE1 1100 1169 11A9 -> ACE2 1100 1169 11AA -> ACE3 1100 1169 11AB -> ACE4 1100 1169 11AC -> ACE5 1100 1169 11AD -> ACE6 1100 1169 11AE -> ACE7 1100 1169 11AF -> ACE8 1100 1169 11B0 -> ACE9 1100 1169 11B1 -> ACEA 1100 1169 11B2 -> ACEB 1100 1169 11B3 -> ACEC 1100 1169 11B4 -> ACED 1100 1169 11B5 -> ACEE 1100 1169 11B6 -> ACEF 1100 1169 11B7 -> ACF0 1100 1169 11B8 -> ACF1 1100 1169 11B9 -> ACF2 1100 1169 11BA -> ACF3 1100 1169 11BB -> ACF4 1100 1169 11BC -> ACF5 1100 1169 11BD -> ACF6 1100 1169 11BE -> ACF7 1100 1169 11BF -> ACF8 1100 1169 11C0 -> ACF9 1100 1169 11C1 -> ACFA 1100 1169 11C2 -> ACFB 1100 116A -> ACFC 1100 116A 11A8 -> ACFD 1100 116A 11A9 -> ACFE 1100 116A 11AA -> ACFF 1100 116A 11AB -> AD00 1100 116A 11AC -> AD01 1100 116A 11AD -> AD02 1100 116A 11AE -> AD03 1100 116A 11AF -> AD04 1100 116A 11B0 -> AD05 1100 116A 11B1 -> AD06 1100 116A 11B2 -> AD07 1100 116A 11B3 -> AD08 1100 116A 11B4 -> AD09 1100 116A 11B5 -> AD0A 1100 116A 11B6 -> AD0B 1100 116A 11B7 -> AD0C 1100 116A 11B8 -> AD0D 1100 116A 11B9 -> AD0E 1100 116A 11BA -> AD0F 1100 116A 11BB -> AD10 1100 116A 11BC -> AD11 1100 116A 11BD -> AD12 1100 116A 11BE -> AD13 1100 116A 11BF -> AD14 1100 116A 11C0 -> AD15 1100 116A 11C1 -> AD16 1100 116A 11C2 -> AD17 1100 116B -> AD18 1100 116B 11A8 -> AD19 1100 116B 11A9 -> AD1A 1100 116B 11AA -> AD1B 1100 116B 11AB -> AD1C 1100 116B 11AC -> AD1D 1100 116B 11AD -> AD1E 1100 116B 11AE -> AD1F 1100 116B 11AF -> AD20 1100 116B 11B0 -> AD21 1100 116B 11B1 -> AD22 1100 116B 11B2 -> AD23 1100 116B 11B3 -> AD24 1100 116B 11B4 -> AD25 1100 116B 11B5 -> AD26 1100 116B 11B6 -> AD27 1100 116B 11B7 -> AD28 1100 116B 11B8 -> AD29 1100 116B 11B9 -> AD2A 1100 116B 11BA -> AD2B 1100 116B 11BB -> AD2C 1100 116B 11BC -> AD2D 1100 116B 11BD -> AD2E 1100 116B 11BE -> AD2F 1100 116B 11BF -> AD30 1100 116B 11C0 -> AD31 1100 116B 11C1 -> AD32 1100 116B 11C2 -> AD33 1100 116C -> AD34 1100 116C 11A8 -> AD35 1100 116C 11A9 -> AD36 1100 116C 11AA -> AD37 1100 116C 11AB -> AD38 1100 116C 11AC -> AD39 1100 116C 11AD -> AD3A 1100 116C 11AE -> AD3B 1100 116C 11AF -> AD3C 1100 116C 11B0 -> AD3D 1100 116C 11B1 -> AD3E 1100 116C 11B2 -> AD3F 1100 116C 11B3 -> AD40 1100 116C 11B4 -> AD41 1100 116C 11B5 -> AD42 1100 116C 11B6 -> AD43 1100 116C 11B7 -> AD44 1100 116C 11B8 -> AD45 1100 116C 11B9 -> AD46 1100 116C 11BA -> AD47 1100 116C 11BB -> AD48 1100 116C 11BC -> AD49 1100 116C 11BD -> AD4A 1100 116C 11BE -> AD4B 1100 116C 11BF -> AD4C 1100 116C 11C0 -> AD4D 1100 116C 11C1 -> AD4E 1100 116C 11C2 -> AD4F 1100 116D -> AD50 1100 116D 11A8 -> AD51 1100 116D 11A9 -> AD52 1100 116D 11AA -> AD53 1100 116D 11AB -> AD54 1100 116D 11AC -> AD55 1100 116D 11AD -> AD56 1100 116D 11AE -> AD57 1100 116D 11AF -> AD58 1100 116D 11B0 -> AD59 1100 116D 11B1 -> AD5A 1100 116D 11B2 -> AD5B 1100 116D 11B3 -> AD5C 1100 116D 11B4 -> AD5D 1100 116D 11B5 -> AD5E 1100 116D 11B6 -> AD5F 1100 116D 11B7 -> AD60 1100 116D 11B8 -> AD61 1100 116D 11B9 -> AD62 1100 116D 11BA -> AD63 1100 116D 11BB -> AD64 1100 116D 11BC -> AD65 1100 116D 11BD -> AD66 1100 116D 11BE -> AD67 1100 116D 11BF -> AD68 1100 116D 11C0 -> AD69 1100 116D 11C1 -> AD6A 1100 116D 11C2 -> AD6B 1100 116E -> AD6C 1100 116E 11A8 -> AD6D 1100 116E 11A9 -> AD6E 1100 116E 11AA -> AD6F 1100 116E 11AB -> AD70 1100 116E 11AC -> AD71 1100 116E 11AD -> AD72 1100 116E 11AE -> AD73 1100 116E 11AF -> AD74 1100 116E 11B0 -> AD75 1100 116E 11B1 -> AD76 1100 116E 11B2 -> AD77 1100 116E 11B3 -> AD78 1100 116E 11B4 -> AD79 1100 116E 11B5 -> AD7A 1100 116E 11B6 -> AD7B 1100 116E 11B7 -> AD7C 1100 116E 11B8 -> AD7D 1100 116E 11B9 -> AD7E 1100 116E 11BA -> AD7F 1100 116E 11BB -> AD80 1100 116E 11BC -> AD81 1100 116E 11BD -> AD82 1100 116E 11BE -> AD83 1100 116E 11BF -> AD84 1100 116E 11C0 -> AD85 1100 116E 11C1 -> AD86 1100 116E 11C2 -> AD87 1100 116F -> AD88 1100 116F 11A8 -> AD89 1100 116F 11A9 -> AD8A 1100 116F 11AA -> AD8B 1100 116F 11AB -> AD8C 1100 116F 11AC -> AD8D 1100 116F 11AD -> AD8E 1100 116F 11AE -> AD8F 1100 116F 11AF -> AD90 1100 116F 11B0 -> AD91 1100 116F 11B1 -> AD92 1100 116F 11B2 -> AD93 1100 116F 11B3 -> AD94 1100 116F 11B4 -> AD95 1100 116F 11B5 -> AD96 1100 116F 11B6 -> AD97 1100 116F 11B7 -> AD98 1100 116F 11B8 -> AD99 1100 116F 11B9 -> AD9A 1100 116F 11BA -> AD9B 1100 116F 11BB -> AD9C 1100 116F 11BC -> AD9D 1100 116F 11BD -> AD9E 1100 116F 11BE -> AD9F 1100 116F 11BF -> ADA0 1100 116F 11C0 -> ADA1 1100 116F 11C1 -> ADA2 1100 116F 11C2 -> ADA3 1100 1170 -> ADA4 1100 1170 11A8 -> ADA5 1100 1170 11A9 -> ADA6 1100 1170 11AA -> ADA7 1100 1170 11AB -> ADA8 1100 1170 11AC -> ADA9 1100 1170 11AD -> ADAA 1100 1170 11AE -> ADAB 1100 1170 11AF -> ADAC 1100 1170 11B0 -> ADAD 1100 1170 11B1 -> ADAE 1100 1170 11B2 -> ADAF 1100 1170 11B3 -> ADB0 1100 1170 11B4 -> ADB1 1100 1170 11B5 -> ADB2 1100 1170 11B6 -> ADB3 1100 1170 11B7 -> ADB4 1100 1170 11B8 -> ADB5 1100 1170 11B9 -> ADB6 1100 1170 11BA -> ADB7 1100 1170 11BB -> ADB8 1100 1170 11BC -> ADB9 1100 1170 11BD -> ADBA 1100 1170 11BE -> ADBB 1100 1170 11BF -> ADBC 1100 1170 11C0 -> ADBD 1100 1170 11C1 -> ADBE 1100 1170 11C2 -> ADBF 1100 1171 -> ADC0 1100 1171 11A8 -> ADC1 1100 1171 11A9 -> ADC2 1100 1171 11AA -> ADC3 1100 1171 11AB -> ADC4 1100 1171 11AC -> ADC5 1100 1171 11AD -> ADC6 1100 1171 11AE -> ADC7 1100 1171 11AF -> ADC8 1100 1171 11B0 -> ADC9 1100 1171 11B1 -> ADCA 1100 1171 11B2 -> ADCB 1100 1171 11B3 -> ADCC 1100 1171 11B4 -> ADCD 1100 1171 11B5 -> ADCE 1100 1171 11B6 -> ADCF 1100 1171 11B7 -> ADD0 1100 1171 11B8 -> ADD1 1100 1171 11B9 -> ADD2 1100 1171 11BA -> ADD3 1100 1171 11BB -> ADD4 1100 1171 11BC -> ADD5 1100 1171 11BD -> ADD6 1100 1171 11BE -> ADD7 1100 1171 11BF -> ADD8 1100 1171 11C0 -> ADD9 1100 1171 11C1 -> ADDA 1100 1171 11C2 -> ADDB 1100 1172 -> ADDC 1100 1172 11A8 -> ADDD 1100 1172 11A9 -> ADDE 1100 1172 11AA -> ADDF 1100 1172 11AB -> ADE0 1100 1172 11AC -> ADE1 1100 1172 11AD -> ADE2 1100 1172 11AE -> ADE3 1100 1172 11AF -> ADE4 1100 1172 11B0 -> ADE5 1100 1172 11B1 -> ADE6 1100 1172 11B2 -> ADE7 1100 1172 11B3 -> ADE8 1100 1172 11B4 -> ADE9 1100 1172 11B5 -> ADEA 1100 1172 11B6 -> ADEB 1100 1172 11B7 -> ADEC 1100 1172 11B8 -> ADED 1100 1172 11B9 -> ADEE 1100 1172 11BA -> ADEF 1100 1172 11BB -> ADF0 1100 1172 11BC -> ADF1 1100 1172 11BD -> ADF2 1100 1172 11BE -> ADF3 1100 1172 11BF -> ADF4 1100 1172 11C0 -> ADF5 1100 1172 11C1 -> ADF6 1100 1172 11C2 -> ADF7 1100 1173 -> ADF8 1100 1173 11A8 -> ADF9 1100 1173 11A9 -> ADFA 1100 1173 11AA -> ADFB 1100 1173 11AB -> ADFC 1100 1173 11AC -> ADFD 1100 1173 11AD -> ADFE 1100 1173 11AE -> ADFF 1100 1173 11AF -> AE00 1100 1173 11B0 -> AE01 1100 1173 11B1 -> AE02 1100 1173 11B2 -> AE03 1100 1173 11B3 -> AE04 1100 1173 11B4 -> AE05 1100 1173 11B5 -> AE06 1100 1173 11B6 -> AE07 1100 1173 11B7 -> AE08 1100 1173 11B8 -> AE09 1100 1173 11B9 -> AE0A 1100 1173 11BA -> AE0B 1100 1173 11BB -> AE0C 1100 1173 11BC -> AE0D 1100 1173 11BD -> AE0E 1100 1173 11BE -> AE0F 1100 1173 11BF -> AE10 1100 1173 11C0 -> AE11 1100 1173 11C1 -> AE12 1100 1173 11C2 -> AE13 1100 1174 -> AE14 1100 1174 11A8 -> AE15 1100 1174 11A9 -> AE16 1100 1174 11AA -> AE17 1100 1174 11AB -> AE18 1100 1174 11AC -> AE19 1100 1174 11AD -> AE1A 1100 1174 11AE -> AE1B 1100 1174 11AF -> AE1C 1100 1174 11B0 -> AE1D 1100 1174 11B1 -> AE1E 1100 1174 11B2 -> AE1F 1100 1174 11B3 -> AE20 1100 1174 11B4 -> AE21 1100 1174 11B5 -> AE22 1100 1174 11B6 -> AE23 1100 1174 11B7 -> AE24 1100 1174 11B8 -> AE25 1100 1174 11B9 -> AE26 1100 1174 11BA -> AE27 1100 1174 11BB -> AE28 1100 1174 11BC -> AE29 1100 1174 11BD -> AE2A 1100 1174 11BE -> AE2B 1100 1174 11BF -> AE2C 1100 1174 11C0 -> AE2D 1100 1174 11C1 -> AE2E 1100 1174 11C2 -> AE2F 1100 1175 -> AE30 1100 1175 11A8 -> AE31 1100 1175 11A9 -> AE32 1100 1175 11AA -> AE33 1100 1175 11AB -> AE34 1100 1175 11AC -> AE35 1100 1175 11AD -> AE36 1100 1175 11AE -> AE37 1100 1175 11AF -> AE38 1100 1175 11B0 -> AE39 1100 1175 11B1 -> AE3A 1100 1175 11B2 -> AE3B 1100 1175 11B3 -> AE3C 1100 1175 11B4 -> AE3D 1100 1175 11B5 -> AE3E 1100 1175 11B6 -> AE3F 1100 1175 11B7 -> AE40 1100 1175 11B8 -> AE41 1100 1175 11B9 -> AE42 1100 1175 11BA -> AE43 1100 1175 11BB -> AE44 1100 1175 11BC -> AE45 1100 1175 11BD -> AE46 1100 1175 11BE -> AE47 1100 1175 11BF -> AE48 1100 1175 11C0 -> AE49 1100 1175 11C1 -> AE4A 1100 1175 11C2 -> AE4B 1101 1161 -> AE4C 1101 1161 11A8 -> AE4D 1101 1161 11A9 -> AE4E 1101 1161 11AA -> AE4F 1101 1161 11AB -> AE50 1101 1161 11AC -> AE51 1101 1161 11AD -> AE52 1101 1161 11AE -> AE53 1101 1161 11AF -> AE54 1101 1161 11B0 -> AE55 1101 1161 11B1 -> AE56 1101 1161 11B2 -> AE57 1101 1161 11B3 -> AE58 1101 1161 11B4 -> AE59 1101 1161 11B5 -> AE5A 1101 1161 11B6 -> AE5B 1101 1161 11B7 -> AE5C 1101 1161 11B8 -> AE5D 1101 1161 11B9 -> AE5E 1101 1161 11BA -> AE5F 1101 1161 11BB -> AE60 1101 1161 11BC -> AE61 1101 1161 11BD -> AE62 1101 1161 11BE -> AE63 1101 1161 11BF -> AE64 1101 1161 11C0 -> AE65 1101 1161 11C1 -> AE66 1101 1161 11C2 -> AE67 1101 1162 -> AE68 1101 1162 11A8 -> AE69 1101 1162 11A9 -> AE6A 1101 1162 11AA -> AE6B 1101 1162 11AB -> AE6C 1101 1162 11AC -> AE6D 1101 1162 11AD -> AE6E 1101 1162 11AE -> AE6F 1101 1162 11AF -> AE70 1101 1162 11B0 -> AE71 1101 1162 11B1 -> AE72 1101 1162 11B2 -> AE73 1101 1162 11B3 -> AE74 1101 1162 11B4 -> AE75 1101 1162 11B5 -> AE76 1101 1162 11B6 -> AE77 1101 1162 11B7 -> AE78 1101 1162 11B8 -> AE79 1101 1162 11B9 -> AE7A 1101 1162 11BA -> AE7B 1101 1162 11BB -> AE7C 1101 1162 11BC -> AE7D 1101 1162 11BD -> AE7E 1101 1162 11BE -> AE7F 1101 1162 11BF -> AE80 1101 1162 11C0 -> AE81 1101 1162 11C1 -> AE82 1101 1162 11C2 -> AE83 1101 1163 -> AE84 1101 1163 11A8 -> AE85 1101 1163 11A9 -> AE86 1101 1163 11AA -> AE87 1101 1163 11AB -> AE88 1101 1163 11AC -> AE89 1101 1163 11AD -> AE8A 1101 1163 11AE -> AE8B 1101 1163 11AF -> AE8C 1101 1163 11B0 -> AE8D 1101 1163 11B1 -> AE8E 1101 1163 11B2 -> AE8F 1101 1163 11B3 -> AE90 1101 1163 11B4 -> AE91 1101 1163 11B5 -> AE92 1101 1163 11B6 -> AE93 1101 1163 11B7 -> AE94 1101 1163 11B8 -> AE95 1101 1163 11B9 -> AE96 1101 1163 11BA -> AE97 1101 1163 11BB -> AE98 1101 1163 11BC -> AE99 1101 1163 11BD -> AE9A 1101 1163 11BE -> AE9B 1101 1163 11BF -> AE9C 1101 1163 11C0 -> AE9D 1101 1163 11C1 -> AE9E 1101 1163 11C2 -> AE9F 1101 1164 -> AEA0 1101 1164 11A8 -> AEA1 1101 1164 11A9 -> AEA2 1101 1164 11AA -> AEA3 1101 1164 11AB -> AEA4 1101 1164 11AC -> AEA5 1101 1164 11AD -> AEA6 1101 1164 11AE -> AEA7 1101 1164 11AF -> AEA8 1101 1164 11B0 -> AEA9 1101 1164 11B1 -> AEAA 1101 1164 11B2 -> AEAB 1101 1164 11B3 -> AEAC 1101 1164 11B4 -> AEAD 1101 1164 11B5 -> AEAE 1101 1164 11B6 -> AEAF 1101 1164 11B7 -> AEB0 1101 1164 11B8 -> AEB1 1101 1164 11B9 -> AEB2 1101 1164 11BA -> AEB3 1101 1164 11BB -> AEB4 1101 1164 11BC -> AEB5 1101 1164 11BD -> AEB6 1101 1164 11BE -> AEB7 1101 1164 11BF -> AEB8 1101 1164 11C0 -> AEB9 1101 1164 11C1 -> AEBA 1101 1164 11C2 -> AEBB 1101 1165 -> AEBC 1101 1165 11A8 -> AEBD 1101 1165 11A9 -> AEBE 1101 1165 11AA -> AEBF 1101 1165 11AB -> AEC0 1101 1165 11AC -> AEC1 1101 1165 11AD -> AEC2 1101 1165 11AE -> AEC3 1101 1165 11AF -> AEC4 1101 1165 11B0 -> AEC5 1101 1165 11B1 -> AEC6 1101 1165 11B2 -> AEC7 1101 1165 11B3 -> AEC8 1101 1165 11B4 -> AEC9 1101 1165 11B5 -> AECA 1101 1165 11B6 -> AECB 1101 1165 11B7 -> AECC 1101 1165 11B8 -> AECD 1101 1165 11B9 -> AECE 1101 1165 11BA -> AECF 1101 1165 11BB -> AED0 1101 1165 11BC -> AED1 1101 1165 11BD -> AED2 1101 1165 11BE -> AED3 1101 1165 11BF -> AED4 1101 1165 11C0 -> AED5 1101 1165 11C1 -> AED6 1101 1165 11C2 -> AED7 1101 1166 -> AED8 1101 1166 11A8 -> AED9 1101 1166 11A9 -> AEDA 1101 1166 11AA -> AEDB 1101 1166 11AB -> AEDC 1101 1166 11AC -> AEDD 1101 1166 11AD -> AEDE 1101 1166 11AE -> AEDF 1101 1166 11AF -> AEE0 1101 1166 11B0 -> AEE1 1101 1166 11B1 -> AEE2 1101 1166 11B2 -> AEE3 1101 1166 11B3 -> AEE4 1101 1166 11B4 -> AEE5 1101 1166 11B5 -> AEE6 1101 1166 11B6 -> AEE7 1101 1166 11B7 -> AEE8 1101 1166 11B8 -> AEE9 1101 1166 11B9 -> AEEA 1101 1166 11BA -> AEEB 1101 1166 11BB -> AEEC 1101 1166 11BC -> AEED 1101 1166 11BD -> AEEE 1101 1166 11BE -> AEEF 1101 1166 11BF -> AEF0 1101 1166 11C0 -> AEF1 1101 1166 11C1 -> AEF2 1101 1166 11C2 -> AEF3 1101 1167 -> AEF4 1101 1167 11A8 -> AEF5 1101 1167 11A9 -> AEF6 1101 1167 11AA -> AEF7 1101 1167 11AB -> AEF8 1101 1167 11AC -> AEF9 1101 1167 11AD -> AEFA 1101 1167 11AE -> AEFB 1101 1167 11AF -> AEFC 1101 1167 11B0 -> AEFD 1101 1167 11B1 -> AEFE 1101 1167 11B2 -> AEFF 1101 1167 11B3 -> AF00 1101 1167 11B4 -> AF01 1101 1167 11B5 -> AF02 1101 1167 11B6 -> AF03 1101 1167 11B7 -> AF04 1101 1167 11B8 -> AF05 1101 1167 11B9 -> AF06 1101 1167 11BA -> AF07 1101 1167 11BB -> AF08 1101 1167 11BC -> AF09 1101 1167 11BD -> AF0A 1101 1167 11BE -> AF0B 1101 1167 11BF -> AF0C 1101 1167 11C0 -> AF0D 1101 1167 11C1 -> AF0E 1101 1167 11C2 -> AF0F 1101 1168 -> AF10 1101 1168 11A8 -> AF11 1101 1168 11A9 -> AF12 1101 1168 11AA -> AF13 1101 1168 11AB -> AF14 1101 1168 11AC -> AF15 1101 1168 11AD -> AF16 1101 1168 11AE -> AF17 1101 1168 11AF -> AF18 1101 1168 11B0 -> AF19 1101 1168 11B1 -> AF1A 1101 1168 11B2 -> AF1B 1101 1168 11B3 -> AF1C 1101 1168 11B4 -> AF1D 1101 1168 11B5 -> AF1E 1101 1168 11B6 -> AF1F 1101 1168 11B7 -> AF20 1101 1168 11B8 -> AF21 1101 1168 11B9 -> AF22 1101 1168 11BA -> AF23 1101 1168 11BB -> AF24 1101 1168 11BC -> AF25 1101 1168 11BD -> AF26 1101 1168 11BE -> AF27 1101 1168 11BF -> AF28 1101 1168 11C0 -> AF29 1101 1168 11C1 -> AF2A 1101 1168 11C2 -> AF2B 1101 1169 -> AF2C 1101 1169 11A8 -> AF2D 1101 1169 11A9 -> AF2E 1101 1169 11AA -> AF2F 1101 1169 11AB -> AF30 1101 1169 11AC -> AF31 1101 1169 11AD -> AF32 1101 1169 11AE -> AF33 1101 1169 11AF -> AF34 1101 1169 11B0 -> AF35 1101 1169 11B1 -> AF36 1101 1169 11B2 -> AF37 1101 1169 11B3 -> AF38 1101 1169 11B4 -> AF39 1101 1169 11B5 -> AF3A 1101 1169 11B6 -> AF3B 1101 1169 11B7 -> AF3C 1101 1169 11B8 -> AF3D 1101 1169 11B9 -> AF3E 1101 1169 11BA -> AF3F 1101 1169 11BB -> AF40 1101 1169 11BC -> AF41 1101 1169 11BD -> AF42 1101 1169 11BE -> AF43 1101 1169 11BF -> AF44 1101 1169 11C0 -> AF45 1101 1169 11C1 -> AF46 1101 1169 11C2 -> AF47 1101 116A -> AF48 1101 116A 11A8 -> AF49 1101 116A 11A9 -> AF4A 1101 116A 11AA -> AF4B 1101 116A 11AB -> AF4C 1101 116A 11AC -> AF4D 1101 116A 11AD -> AF4E 1101 116A 11AE -> AF4F 1101 116A 11AF -> AF50 1101 116A 11B0 -> AF51 1101 116A 11B1 -> AF52 1101 116A 11B2 -> AF53 1101 116A 11B3 -> AF54 1101 116A 11B4 -> AF55 1101 116A 11B5 -> AF56 1101 116A 11B6 -> AF57 1101 116A 11B7 -> AF58 1101 116A 11B8 -> AF59 1101 116A 11B9 -> AF5A 1101 116A 11BA -> AF5B 1101 116A 11BB -> AF5C 1101 116A 11BC -> AF5D 1101 116A 11BD -> AF5E 1101 116A 11BE -> AF5F 1101 116A 11BF -> AF60 1101 116A 11C0 -> AF61 1101 116A 11C1 -> AF62 1101 116A 11C2 -> AF63 1101 116B -> AF64 1101 116B 11A8 -> AF65 1101 116B 11A9 -> AF66 1101 116B 11AA -> AF67 1101 116B 11AB -> AF68 1101 116B 11AC -> AF69 1101 116B 11AD -> AF6A 1101 116B 11AE -> AF6B 1101 116B 11AF -> AF6C 1101 116B 11B0 -> AF6D 1101 116B 11B1 -> AF6E 1101 116B 11B2 -> AF6F 1101 116B 11B3 -> AF70 1101 116B 11B4 -> AF71 1101 116B 11B5 -> AF72 1101 116B 11B6 -> AF73 1101 116B 11B7 -> AF74 1101 116B 11B8 -> AF75 1101 116B 11B9 -> AF76 1101 116B 11BA -> AF77 1101 116B 11BB -> AF78 1101 116B 11BC -> AF79 1101 116B 11BD -> AF7A 1101 116B 11BE -> AF7B 1101 116B 11BF -> AF7C 1101 116B 11C0 -> AF7D 1101 116B 11C1 -> AF7E 1101 116B 11C2 -> AF7F 1101 116C -> AF80 1101 116C 11A8 -> AF81 1101 116C 11A9 -> AF82 1101 116C 11AA -> AF83 1101 116C 11AB -> AF84 1101 116C 11AC -> AF85 1101 116C 11AD -> AF86 1101 116C 11AE -> AF87 1101 116C 11AF -> AF88 1101 116C 11B0 -> AF89 1101 116C 11B1 -> AF8A 1101 116C 11B2 -> AF8B 1101 116C 11B3 -> AF8C 1101 116C 11B4 -> AF8D 1101 116C 11B5 -> AF8E 1101 116C 11B6 -> AF8F 1101 116C 11B7 -> AF90 1101 116C 11B8 -> AF91 1101 116C 11B9 -> AF92 1101 116C 11BA -> AF93 1101 116C 11BB -> AF94 1101 116C 11BC -> AF95 1101 116C 11BD -> AF96 1101 116C 11BE -> AF97 1101 116C 11BF -> AF98 1101 116C 11C0 -> AF99 1101 116C 11C1 -> AF9A 1101 116C 11C2 -> AF9B 1101 116D -> AF9C 1101 116D 11A8 -> AF9D 1101 116D 11A9 -> AF9E 1101 116D 11AA -> AF9F 1101 116D 11AB -> AFA0 1101 116D 11AC -> AFA1 1101 116D 11AD -> AFA2 1101 116D 11AE -> AFA3 1101 116D 11AF -> AFA4 1101 116D 11B0 -> AFA5 1101 116D 11B1 -> AFA6 1101 116D 11B2 -> AFA7 1101 116D 11B3 -> AFA8 1101 116D 11B4 -> AFA9 1101 116D 11B5 -> AFAA 1101 116D 11B6 -> AFAB 1101 116D 11B7 -> AFAC 1101 116D 11B8 -> AFAD 1101 116D 11B9 -> AFAE 1101 116D 11BA -> AFAF 1101 116D 11BB -> AFB0 1101 116D 11BC -> AFB1 1101 116D 11BD -> AFB2 1101 116D 11BE -> AFB3 1101 116D 11BF -> AFB4 1101 116D 11C0 -> AFB5 1101 116D 11C1 -> AFB6 1101 116D 11C2 -> AFB7 1101 116E -> AFB8 1101 116E 11A8 -> AFB9 1101 116E 11A9 -> AFBA 1101 116E 11AA -> AFBB 1101 116E 11AB -> AFBC 1101 116E 11AC -> AFBD 1101 116E 11AD -> AFBE 1101 116E 11AE -> AFBF 1101 116E 11AF -> AFC0 1101 116E 11B0 -> AFC1 1101 116E 11B1 -> AFC2 1101 116E 11B2 -> AFC3 1101 116E 11B3 -> AFC4 1101 116E 11B4 -> AFC5 1101 116E 11B5 -> AFC6 1101 116E 11B6 -> AFC7 1101 116E 11B7 -> AFC8 1101 116E 11B8 -> AFC9 1101 116E 11B9 -> AFCA 1101 116E 11BA -> AFCB 1101 116E 11BB -> AFCC 1101 116E 11BC -> AFCD 1101 116E 11BD -> AFCE 1101 116E 11BE -> AFCF 1101 116E 11BF -> AFD0 1101 116E 11C0 -> AFD1 1101 116E 11C1 -> AFD2 1101 116E 11C2 -> AFD3 1101 116F -> AFD4 1101 116F 11A8 -> AFD5 1101 116F 11A9 -> AFD6 1101 116F 11AA -> AFD7 1101 116F 11AB -> AFD8 1101 116F 11AC -> AFD9 1101 116F 11AD -> AFDA 1101 116F 11AE -> AFDB 1101 116F 11AF -> AFDC 1101 116F 11B0 -> AFDD 1101 116F 11B1 -> AFDE 1101 116F 11B2 -> AFDF 1101 116F 11B3 -> AFE0 1101 116F 11B4 -> AFE1 1101 116F 11B5 -> AFE2 1101 116F 11B6 -> AFE3 1101 116F 11B7 -> AFE4 1101 116F 11B8 -> AFE5 1101 116F 11B9 -> AFE6 1101 116F 11BA -> AFE7 1101 116F 11BB -> AFE8 1101 116F 11BC -> AFE9 1101 116F 11BD -> AFEA 1101 116F 11BE -> AFEB 1101 116F 11BF -> AFEC 1101 116F 11C0 -> AFED 1101 116F 11C1 -> AFEE 1101 116F 11C2 -> AFEF 1101 1170 -> AFF0 1101 1170 11A8 -> AFF1 1101 1170 11A9 -> AFF2 1101 1170 11AA -> AFF3 1101 1170 11AB -> AFF4 1101 1170 11AC -> AFF5 1101 1170 11AD -> AFF6 1101 1170 11AE -> AFF7 1101 1170 11AF -> AFF8 1101 1170 11B0 -> AFF9 1101 1170 11B1 -> AFFA 1101 1170 11B2 -> AFFB 1101 1170 11B3 -> AFFC 1101 1170 11B4 -> AFFD 1101 1170 11B5 -> AFFE 1101 1170 11B6 -> AFFF 1101 1170 11B7 -> B000 1101 1170 11B8 -> B001 1101 1170 11B9 -> B002 1101 1170 11BA -> B003 1101 1170 11BB -> B004 1101 1170 11BC -> B005 1101 1170 11BD -> B006 1101 1170 11BE -> B007 1101 1170 11BF -> B008 1101 1170 11C0 -> B009 1101 1170 11C1 -> B00A 1101 1170 11C2 -> B00B 1101 1171 -> B00C 1101 1171 11A8 -> B00D 1101 1171 11A9 -> B00E 1101 1171 11AA -> B00F 1101 1171 11AB -> B010 1101 1171 11AC -> B011 1101 1171 11AD -> B012 1101 1171 11AE -> B013 1101 1171 11AF -> B014 1101 1171 11B0 -> B015 1101 1171 11B1 -> B016 1101 1171 11B2 -> B017 1101 1171 11B3 -> B018 1101 1171 11B4 -> B019 1101 1171 11B5 -> B01A 1101 1171 11B6 -> B01B 1101 1171 11B7 -> B01C 1101 1171 11B8 -> B01D 1101 1171 11B9 -> B01E 1101 1171 11BA -> B01F 1101 1171 11BB -> B020 1101 1171 11BC -> B021 1101 1171 11BD -> B022 1101 1171 11BE -> B023 1101 1171 11BF -> B024 1101 1171 11C0 -> B025 1101 1171 11C1 -> B026 1101 1171 11C2 -> B027 1101 1172 -> B028 1101 1172 11A8 -> B029 1101 1172 11A9 -> B02A 1101 1172 11AA -> B02B 1101 1172 11AB -> B02C 1101 1172 11AC -> B02D 1101 1172 11AD -> B02E 1101 1172 11AE -> B02F 1101 1172 11AF -> B030 1101 1172 11B0 -> B031 1101 1172 11B1 -> B032 1101 1172 11B2 -> B033 1101 1172 11B3 -> B034 1101 1172 11B4 -> B035 1101 1172 11B5 -> B036 1101 1172 11B6 -> B037 1101 1172 11B7 -> B038 1101 1172 11B8 -> B039 1101 1172 11B9 -> B03A 1101 1172 11BA -> B03B 1101 1172 11BB -> B03C 1101 1172 11BC -> B03D 1101 1172 11BD -> B03E 1101 1172 11BE -> B03F 1101 1172 11BF -> B040 1101 1172 11C0 -> B041 1101 1172 11C1 -> B042 1101 1172 11C2 -> B043 1101 1173 -> B044 1101 1173 11A8 -> B045 1101 1173 11A9 -> B046 1101 1173 11AA -> B047 1101 1173 11AB -> B048 1101 1173 11AC -> B049 1101 1173 11AD -> B04A 1101 1173 11AE -> B04B 1101 1173 11AF -> B04C 1101 1173 11B0 -> B04D 1101 1173 11B1 -> B04E 1101 1173 11B2 -> B04F 1101 1173 11B3 -> B050 1101 1173 11B4 -> B051 1101 1173 11B5 -> B052 1101 1173 11B6 -> B053 1101 1173 11B7 -> B054 1101 1173 11B8 -> B055 1101 1173 11B9 -> B056 1101 1173 11BA -> B057 1101 1173 11BB -> B058 1101 1173 11BC -> B059 1101 1173 11BD -> B05A 1101 1173 11BE -> B05B 1101 1173 11BF -> B05C 1101 1173 11C0 -> B05D 1101 1173 11C1 -> B05E 1101 1173 11C2 -> B05F 1101 1174 -> B060 1101 1174 11A8 -> B061 1101 1174 11A9 -> B062 1101 1174 11AA -> B063 1101 1174 11AB -> B064 1101 1174 11AC -> B065 1101 1174 11AD -> B066 1101 1174 11AE -> B067 1101 1174 11AF -> B068 1101 1174 11B0 -> B069 1101 1174 11B1 -> B06A 1101 1174 11B2 -> B06B 1101 1174 11B3 -> B06C 1101 1174 11B4 -> B06D 1101 1174 11B5 -> B06E 1101 1174 11B6 -> B06F 1101 1174 11B7 -> B070 1101 1174 11B8 -> B071 1101 1174 11B9 -> B072 1101 1174 11BA -> B073 1101 1174 11BB -> B074 1101 1174 11BC -> B075 1101 1174 11BD -> B076 1101 1174 11BE -> B077 1101 1174 11BF -> B078 1101 1174 11C0 -> B079 1101 1174 11C1 -> B07A 1101 1174 11C2 -> B07B 1101 1175 -> B07C 1101 1175 11A8 -> B07D 1101 1175 11A9 -> B07E 1101 1175 11AA -> B07F 1101 1175 11AB -> B080 1101 1175 11AC -> B081 1101 1175 11AD -> B082 1101 1175 11AE -> B083 1101 1175 11AF -> B084 1101 1175 11B0 -> B085 1101 1175 11B1 -> B086 1101 1175 11B2 -> B087 1101 1175 11B3 -> B088 1101 1175 11B4 -> B089 1101 1175 11B5 -> B08A 1101 1175 11B6 -> B08B 1101 1175 11B7 -> B08C 1101 1175 11B8 -> B08D 1101 1175 11B9 -> B08E 1101 1175 11BA -> B08F 1101 1175 11BB -> B090 1101 1175 11BC -> B091 1101 1175 11BD -> B092 1101 1175 11BE -> B093 1101 1175 11BF -> B094 1101 1175 11C0 -> B095 1101 1175 11C1 -> B096 1101 1175 11C2 -> B097 1102 1161 -> B098 1102 1161 11A8 -> B099 1102 1161 11A9 -> B09A 1102 1161 11AA -> B09B 1102 1161 11AB -> B09C 1102 1161 11AC -> B09D 1102 1161 11AD -> B09E 1102 1161 11AE -> B09F 1102 1161 11AF -> B0A0 1102 1161 11B0 -> B0A1 1102 1161 11B1 -> B0A2 1102 1161 11B2 -> B0A3 1102 1161 11B3 -> B0A4 1102 1161 11B4 -> B0A5 1102 1161 11B5 -> B0A6 1102 1161 11B6 -> B0A7 1102 1161 11B7 -> B0A8 1102 1161 11B8 -> B0A9 1102 1161 11B9 -> B0AA 1102 1161 11BA -> B0AB 1102 1161 11BB -> B0AC 1102 1161 11BC -> B0AD 1102 1161 11BD -> B0AE 1102 1161 11BE -> B0AF 1102 1161 11BF -> B0B0 1102 1161 11C0 -> B0B1 1102 1161 11C1 -> B0B2 1102 1161 11C2 -> B0B3 1102 1162 -> B0B4 1102 1162 11A8 -> B0B5 1102 1162 11A9 -> B0B6 1102 1162 11AA -> B0B7 1102 1162 11AB -> B0B8 1102 1162 11AC -> B0B9 1102 1162 11AD -> B0BA 1102 1162 11AE -> B0BB 1102 1162 11AF -> B0BC 1102 1162 11B0 -> B0BD 1102 1162 11B1 -> B0BE 1102 1162 11B2 -> B0BF 1102 1162 11B3 -> B0C0 1102 1162 11B4 -> B0C1 1102 1162 11B5 -> B0C2 1102 1162 11B6 -> B0C3 1102 1162 11B7 -> B0C4 1102 1162 11B8 -> B0C5 1102 1162 11B9 -> B0C6 1102 1162 11BA -> B0C7 1102 1162 11BB -> B0C8 1102 1162 11BC -> B0C9 1102 1162 11BD -> B0CA 1102 1162 11BE -> B0CB 1102 1162 11BF -> B0CC 1102 1162 11C0 -> B0CD 1102 1162 11C1 -> B0CE 1102 1162 11C2 -> B0CF 1102 1163 -> B0D0 1102 1163 11A8 -> B0D1 1102 1163 11A9 -> B0D2 1102 1163 11AA -> B0D3 1102 1163 11AB -> B0D4 1102 1163 11AC -> B0D5 1102 1163 11AD -> B0D6 1102 1163 11AE -> B0D7 1102 1163 11AF -> B0D8 1102 1163 11B0 -> B0D9 1102 1163 11B1 -> B0DA 1102 1163 11B2 -> B0DB 1102 1163 11B3 -> B0DC 1102 1163 11B4 -> B0DD 1102 1163 11B5 -> B0DE 1102 1163 11B6 -> B0DF 1102 1163 11B7 -> B0E0 1102 1163 11B8 -> B0E1 1102 1163 11B9 -> B0E2 1102 1163 11BA -> B0E3 1102 1163 11BB -> B0E4 1102 1163 11BC -> B0E5 1102 1163 11BD -> B0E6 1102 1163 11BE -> B0E7 1102 1163 11BF -> B0E8 1102 1163 11C0 -> B0E9 1102 1163 11C1 -> B0EA 1102 1163 11C2 -> B0EB 1102 1164 -> B0EC 1102 1164 11A8 -> B0ED 1102 1164 11A9 -> B0EE 1102 1164 11AA -> B0EF 1102 1164 11AB -> B0F0 1102 1164 11AC -> B0F1 1102 1164 11AD -> B0F2 1102 1164 11AE -> B0F3 1102 1164 11AF -> B0F4 1102 1164 11B0 -> B0F5 1102 1164 11B1 -> B0F6 1102 1164 11B2 -> B0F7 1102 1164 11B3 -> B0F8 1102 1164 11B4 -> B0F9 1102 1164 11B5 -> B0FA 1102 1164 11B6 -> B0FB 1102 1164 11B7 -> B0FC 1102 1164 11B8 -> B0FD 1102 1164 11B9 -> B0FE 1102 1164 11BA -> B0FF 1102 1164 11BB -> B100 1102 1164 11BC -> B101 1102 1164 11BD -> B102 1102 1164 11BE -> B103 1102 1164 11BF -> B104 1102 1164 11C0 -> B105 1102 1164 11C1 -> B106 1102 1164 11C2 -> B107 1102 1165 -> B108 1102 1165 11A8 -> B109 1102 1165 11A9 -> B10A 1102 1165 11AA -> B10B 1102 1165 11AB -> B10C 1102 1165 11AC -> B10D 1102 1165 11AD -> B10E 1102 1165 11AE -> B10F 1102 1165 11AF -> B110 1102 1165 11B0 -> B111 1102 1165 11B1 -> B112 1102 1165 11B2 -> B113 1102 1165 11B3 -> B114 1102 1165 11B4 -> B115 1102 1165 11B5 -> B116 1102 1165 11B6 -> B117 1102 1165 11B7 -> B118 1102 1165 11B8 -> B119 1102 1165 11B9 -> B11A 1102 1165 11BA -> B11B 1102 1165 11BB -> B11C 1102 1165 11BC -> B11D 1102 1165 11BD -> B11E 1102 1165 11BE -> B11F 1102 1165 11BF -> B120 1102 1165 11C0 -> B121 1102 1165 11C1 -> B122 1102 1165 11C2 -> B123 1102 1166 -> B124 1102 1166 11A8 -> B125 1102 1166 11A9 -> B126 1102 1166 11AA -> B127 1102 1166 11AB -> B128 1102 1166 11AC -> B129 1102 1166 11AD -> B12A 1102 1166 11AE -> B12B 1102 1166 11AF -> B12C 1102 1166 11B0 -> B12D 1102 1166 11B1 -> B12E 1102 1166 11B2 -> B12F 1102 1166 11B3 -> B130 1102 1166 11B4 -> B131 1102 1166 11B5 -> B132 1102 1166 11B6 -> B133 1102 1166 11B7 -> B134 1102 1166 11B8 -> B135 1102 1166 11B9 -> B136 1102 1166 11BA -> B137 1102 1166 11BB -> B138 1102 1166 11BC -> B139 1102 1166 11BD -> B13A 1102 1166 11BE -> B13B 1102 1166 11BF -> B13C 1102 1166 11C0 -> B13D 1102 1166 11C1 -> B13E 1102 1166 11C2 -> B13F 1102 1167 -> B140 1102 1167 11A8 -> B141 1102 1167 11A9 -> B142 1102 1167 11AA -> B143 1102 1167 11AB -> B144 1102 1167 11AC -> B145 1102 1167 11AD -> B146 1102 1167 11AE -> B147 1102 1167 11AF -> B148 1102 1167 11B0 -> B149 1102 1167 11B1 -> B14A 1102 1167 11B2 -> B14B 1102 1167 11B3 -> B14C 1102 1167 11B4 -> B14D 1102 1167 11B5 -> B14E 1102 1167 11B6 -> B14F 1102 1167 11B7 -> B150 1102 1167 11B8 -> B151 1102 1167 11B9 -> B152 1102 1167 11BA -> B153 1102 1167 11BB -> B154 1102 1167 11BC -> B155 1102 1167 11BD -> B156 1102 1167 11BE -> B157 1102 1167 11BF -> B158 1102 1167 11C0 -> B159 1102 1167 11C1 -> B15A 1102 1167 11C2 -> B15B 1102 1168 -> B15C 1102 1168 11A8 -> B15D 1102 1168 11A9 -> B15E 1102 1168 11AA -> B15F 1102 1168 11AB -> B160 1102 1168 11AC -> B161 1102 1168 11AD -> B162 1102 1168 11AE -> B163 1102 1168 11AF -> B164 1102 1168 11B0 -> B165 1102 1168 11B1 -> B166 1102 1168 11B2 -> B167 1102 1168 11B3 -> B168 1102 1168 11B4 -> B169 1102 1168 11B5 -> B16A 1102 1168 11B6 -> B16B 1102 1168 11B7 -> B16C 1102 1168 11B8 -> B16D 1102 1168 11B9 -> B16E 1102 1168 11BA -> B16F 1102 1168 11BB -> B170 1102 1168 11BC -> B171 1102 1168 11BD -> B172 1102 1168 11BE -> B173 1102 1168 11BF -> B174 1102 1168 11C0 -> B175 1102 1168 11C1 -> B176 1102 1168 11C2 -> B177 1102 1169 -> B178 1102 1169 11A8 -> B179 1102 1169 11A9 -> B17A 1102 1169 11AA -> B17B 1102 1169 11AB -> B17C 1102 1169 11AC -> B17D 1102 1169 11AD -> B17E 1102 1169 11AE -> B17F 1102 1169 11AF -> B180 1102 1169 11B0 -> B181 1102 1169 11B1 -> B182 1102 1169 11B2 -> B183 1102 1169 11B3 -> B184 1102 1169 11B4 -> B185 1102 1169 11B5 -> B186 1102 1169 11B6 -> B187 1102 1169 11B7 -> B188 1102 1169 11B8 -> B189 1102 1169 11B9 -> B18A 1102 1169 11BA -> B18B 1102 1169 11BB -> B18C 1102 1169 11BC -> B18D 1102 1169 11BD -> B18E 1102 1169 11BE -> B18F 1102 1169 11BF -> B190 1102 1169 11C0 -> B191 1102 1169 11C1 -> B192 1102 1169 11C2 -> B193 1102 116A -> B194 1102 116A 11A8 -> B195 1102 116A 11A9 -> B196 1102 116A 11AA -> B197 1102 116A 11AB -> B198 1102 116A 11AC -> B199 1102 116A 11AD -> B19A 1102 116A 11AE -> B19B 1102 116A 11AF -> B19C 1102 116A 11B0 -> B19D 1102 116A 11B1 -> B19E 1102 116A 11B2 -> B19F 1102 116A 11B3 -> B1A0 1102 116A 11B4 -> B1A1 1102 116A 11B5 -> B1A2 1102 116A 11B6 -> B1A3 1102 116A 11B7 -> B1A4 1102 116A 11B8 -> B1A5 1102 116A 11B9 -> B1A6 1102 116A 11BA -> B1A7 1102 116A 11BB -> B1A8 1102 116A 11BC -> B1A9 1102 116A 11BD -> B1AA 1102 116A 11BE -> B1AB 1102 116A 11BF -> B1AC 1102 116A 11C0 -> B1AD 1102 116A 11C1 -> B1AE 1102 116A 11C2 -> B1AF 1102 116B -> B1B0 1102 116B 11A8 -> B1B1 1102 116B 11A9 -> B1B2 1102 116B 11AA -> B1B3 1102 116B 11AB -> B1B4 1102 116B 11AC -> B1B5 1102 116B 11AD -> B1B6 1102 116B 11AE -> B1B7 1102 116B 11AF -> B1B8 1102 116B 11B0 -> B1B9 1102 116B 11B1 -> B1BA 1102 116B 11B2 -> B1BB 1102 116B 11B3 -> B1BC 1102 116B 11B4 -> B1BD 1102 116B 11B5 -> B1BE 1102 116B 11B6 -> B1BF 1102 116B 11B7 -> B1C0 1102 116B 11B8 -> B1C1 1102 116B 11B9 -> B1C2 1102 116B 11BA -> B1C3 1102 116B 11BB -> B1C4 1102 116B 11BC -> B1C5 1102 116B 11BD -> B1C6 1102 116B 11BE -> B1C7 1102 116B 11BF -> B1C8 1102 116B 11C0 -> B1C9 1102 116B 11C1 -> B1CA 1102 116B 11C2 -> B1CB 1102 116C -> B1CC 1102 116C 11A8 -> B1CD 1102 116C 11A9 -> B1CE 1102 116C 11AA -> B1CF 1102 116C 11AB -> B1D0 1102 116C 11AC -> B1D1 1102 116C 11AD -> B1D2 1102 116C 11AE -> B1D3 1102 116C 11AF -> B1D4 1102 116C 11B0 -> B1D5 1102 116C 11B1 -> B1D6 1102 116C 11B2 -> B1D7 1102 116C 11B3 -> B1D8 1102 116C 11B4 -> B1D9 1102 116C 11B5 -> B1DA 1102 116C 11B6 -> B1DB 1102 116C 11B7 -> B1DC 1102 116C 11B8 -> B1DD 1102 116C 11B9 -> B1DE 1102 116C 11BA -> B1DF 1102 116C 11BB -> B1E0 1102 116C 11BC -> B1E1 1102 116C 11BD -> B1E2 1102 116C 11BE -> B1E3 1102 116C 11BF -> B1E4 1102 116C 11C0 -> B1E5 1102 116C 11C1 -> B1E6 1102 116C 11C2 -> B1E7 1102 116D -> B1E8 1102 116D 11A8 -> B1E9 1102 116D 11A9 -> B1EA 1102 116D 11AA -> B1EB 1102 116D 11AB -> B1EC 1102 116D 11AC -> B1ED 1102 116D 11AD -> B1EE 1102 116D 11AE -> B1EF 1102 116D 11AF -> B1F0 1102 116D 11B0 -> B1F1 1102 116D 11B1 -> B1F2 1102 116D 11B2 -> B1F3 1102 116D 11B3 -> B1F4 1102 116D 11B4 -> B1F5 1102 116D 11B5 -> B1F6 1102 116D 11B6 -> B1F7 1102 116D 11B7 -> B1F8 1102 116D 11B8 -> B1F9 1102 116D 11B9 -> B1FA 1102 116D 11BA -> B1FB 1102 116D 11BB -> B1FC 1102 116D 11BC -> B1FD 1102 116D 11BD -> B1FE 1102 116D 11BE -> B1FF 1102 116D 11BF -> B200 1102 116D 11C0 -> B201 1102 116D 11C1 -> B202 1102 116D 11C2 -> B203 1102 116E -> B204 1102 116E 11A8 -> B205 1102 116E 11A9 -> B206 1102 116E 11AA -> B207 1102 116E 11AB -> B208 1102 116E 11AC -> B209 1102 116E 11AD -> B20A 1102 116E 11AE -> B20B 1102 116E 11AF -> B20C 1102 116E 11B0 -> B20D 1102 116E 11B1 -> B20E 1102 116E 11B2 -> B20F 1102 116E 11B3 -> B210 1102 116E 11B4 -> B211 1102 116E 11B5 -> B212 1102 116E 11B6 -> B213 1102 116E 11B7 -> B214 1102 116E 11B8 -> B215 1102 116E 11B9 -> B216 1102 116E 11BA -> B217 1102 116E 11BB -> B218 1102 116E 11BC -> B219 1102 116E 11BD -> B21A 1102 116E 11BE -> B21B 1102 116E 11BF -> B21C 1102 116E 11C0 -> B21D 1102 116E 11C1 -> B21E 1102 116E 11C2 -> B21F 1102 116F -> B220 1102 116F 11A8 -> B221 1102 116F 11A9 -> B222 1102 116F 11AA -> B223 1102 116F 11AB -> B224 1102 116F 11AC -> B225 1102 116F 11AD -> B226 1102 116F 11AE -> B227 1102 116F 11AF -> B228 1102 116F 11B0 -> B229 1102 116F 11B1 -> B22A 1102 116F 11B2 -> B22B 1102 116F 11B3 -> B22C 1102 116F 11B4 -> B22D 1102 116F 11B5 -> B22E 1102 116F 11B6 -> B22F 1102 116F 11B7 -> B230 1102 116F 11B8 -> B231 1102 116F 11B9 -> B232 1102 116F 11BA -> B233 1102 116F 11BB -> B234 1102 116F 11BC -> B235 1102 116F 11BD -> B236 1102 116F 11BE -> B237 1102 116F 11BF -> B238 1102 116F 11C0 -> B239 1102 116F 11C1 -> B23A 1102 116F 11C2 -> B23B 1102 1170 -> B23C 1102 1170 11A8 -> B23D 1102 1170 11A9 -> B23E 1102 1170 11AA -> B23F 1102 1170 11AB -> B240 1102 1170 11AC -> B241 1102 1170 11AD -> B242 1102 1170 11AE -> B243 1102 1170 11AF -> B244 1102 1170 11B0 -> B245 1102 1170 11B1 -> B246 1102 1170 11B2 -> B247 1102 1170 11B3 -> B248 1102 1170 11B4 -> B249 1102 1170 11B5 -> B24A 1102 1170 11B6 -> B24B 1102 1170 11B7 -> B24C 1102 1170 11B8 -> B24D 1102 1170 11B9 -> B24E 1102 1170 11BA -> B24F 1102 1170 11BB -> B250 1102 1170 11BC -> B251 1102 1170 11BD -> B252 1102 1170 11BE -> B253 1102 1170 11BF -> B254 1102 1170 11C0 -> B255 1102 1170 11C1 -> B256 1102 1170 11C2 -> B257 1102 1171 -> B258 1102 1171 11A8 -> B259 1102 1171 11A9 -> B25A 1102 1171 11AA -> B25B 1102 1171 11AB -> B25C 1102 1171 11AC -> B25D 1102 1171 11AD -> B25E 1102 1171 11AE -> B25F 1102 1171 11AF -> B260 1102 1171 11B0 -> B261 1102 1171 11B1 -> B262 1102 1171 11B2 -> B263 1102 1171 11B3 -> B264 1102 1171 11B4 -> B265 1102 1171 11B5 -> B266 1102 1171 11B6 -> B267 1102 1171 11B7 -> B268 1102 1171 11B8 -> B269 1102 1171 11B9 -> B26A 1102 1171 11BA -> B26B 1102 1171 11BB -> B26C 1102 1171 11BC -> B26D 1102 1171 11BD -> B26E 1102 1171 11BE -> B26F 1102 1171 11BF -> B270 1102 1171 11C0 -> B271 1102 1171 11C1 -> B272 1102 1171 11C2 -> B273 1102 1172 -> B274 1102 1172 11A8 -> B275 1102 1172 11A9 -> B276 1102 1172 11AA -> B277 1102 1172 11AB -> B278 1102 1172 11AC -> B279 1102 1172 11AD -> B27A 1102 1172 11AE -> B27B 1102 1172 11AF -> B27C 1102 1172 11B0 -> B27D 1102 1172 11B1 -> B27E 1102 1172 11B2 -> B27F 1102 1172 11B3 -> B280 1102 1172 11B4 -> B281 1102 1172 11B5 -> B282 1102 1172 11B6 -> B283 1102 1172 11B7 -> B284 1102 1172 11B8 -> B285 1102 1172 11B9 -> B286 1102 1172 11BA -> B287 1102 1172 11BB -> B288 1102 1172 11BC -> B289 1102 1172 11BD -> B28A 1102 1172 11BE -> B28B 1102 1172 11BF -> B28C 1102 1172 11C0 -> B28D 1102 1172 11C1 -> B28E 1102 1172 11C2 -> B28F 1102 1173 -> B290 1102 1173 11A8 -> B291 1102 1173 11A9 -> B292 1102 1173 11AA -> B293 1102 1173 11AB -> B294 1102 1173 11AC -> B295 1102 1173 11AD -> B296 1102 1173 11AE -> B297 1102 1173 11AF -> B298 1102 1173 11B0 -> B299 1102 1173 11B1 -> B29A 1102 1173 11B2 -> B29B 1102 1173 11B3 -> B29C 1102 1173 11B4 -> B29D 1102 1173 11B5 -> B29E 1102 1173 11B6 -> B29F 1102 1173 11B7 -> B2A0 1102 1173 11B8 -> B2A1 1102 1173 11B9 -> B2A2 1102 1173 11BA -> B2A3 1102 1173 11BB -> B2A4 1102 1173 11BC -> B2A5 1102 1173 11BD -> B2A6 1102 1173 11BE -> B2A7 1102 1173 11BF -> B2A8 1102 1173 11C0 -> B2A9 1102 1173 11C1 -> B2AA 1102 1173 11C2 -> B2AB 1102 1174 -> B2AC 1102 1174 11A8 -> B2AD 1102 1174 11A9 -> B2AE 1102 1174 11AA -> B2AF 1102 1174 11AB -> B2B0 1102 1174 11AC -> B2B1 1102 1174 11AD -> B2B2 1102 1174 11AE -> B2B3 1102 1174 11AF -> B2B4 1102 1174 11B0 -> B2B5 1102 1174 11B1 -> B2B6 1102 1174 11B2 -> B2B7 1102 1174 11B3 -> B2B8 1102 1174 11B4 -> B2B9 1102 1174 11B5 -> B2BA 1102 1174 11B6 -> B2BB 1102 1174 11B7 -> B2BC 1102 1174 11B8 -> B2BD 1102 1174 11B9 -> B2BE 1102 1174 11BA -> B2BF 1102 1174 11BB -> B2C0 1102 1174 11BC -> B2C1 1102 1174 11BD -> B2C2 1102 1174 11BE -> B2C3 1102 1174 11BF -> B2C4 1102 1174 11C0 -> B2C5 1102 1174 11C1 -> B2C6 1102 1174 11C2 -> B2C7 1102 1175 -> B2C8 1102 1175 11A8 -> B2C9 1102 1175 11A9 -> B2CA 1102 1175 11AA -> B2CB 1102 1175 11AB -> B2CC 1102 1175 11AC -> B2CD 1102 1175 11AD -> B2CE 1102 1175 11AE -> B2CF 1102 1175 11AF -> B2D0 1102 1175 11B0 -> B2D1 1102 1175 11B1 -> B2D2 1102 1175 11B2 -> B2D3 1102 1175 11B3 -> B2D4 1102 1175 11B4 -> B2D5 1102 1175 11B5 -> B2D6 1102 1175 11B6 -> B2D7 1102 1175 11B7 -> B2D8 1102 1175 11B8 -> B2D9 1102 1175 11B9 -> B2DA 1102 1175 11BA -> B2DB 1102 1175 11BB -> B2DC 1102 1175 11BC -> B2DD 1102 1175 11BD -> B2DE 1102 1175 11BE -> B2DF 1102 1175 11BF -> B2E0 1102 1175 11C0 -> B2E1 1102 1175 11C1 -> B2E2 1102 1175 11C2 -> B2E3 1103 1161 -> B2E4 1103 1161 11A8 -> B2E5 1103 1161 11A9 -> B2E6 1103 1161 11AA -> B2E7 1103 1161 11AB -> B2E8 1103 1161 11AC -> B2E9 1103 1161 11AD -> B2EA 1103 1161 11AE -> B2EB 1103 1161 11AF -> B2EC 1103 1161 11B0 -> B2ED 1103 1161 11B1 -> B2EE 1103 1161 11B2 -> B2EF 1103 1161 11B3 -> B2F0 1103 1161 11B4 -> B2F1 1103 1161 11B5 -> B2F2 1103 1161 11B6 -> B2F3 1103 1161 11B7 -> B2F4 1103 1161 11B8 -> B2F5 1103 1161 11B9 -> B2F6 1103 1161 11BA -> B2F7 1103 1161 11BB -> B2F8 1103 1161 11BC -> B2F9 1103 1161 11BD -> B2FA 1103 1161 11BE -> B2FB 1103 1161 11BF -> B2FC 1103 1161 11C0 -> B2FD 1103 1161 11C1 -> B2FE 1103 1161 11C2 -> B2FF 1103 1162 -> B300 1103 1162 11A8 -> B301 1103 1162 11A9 -> B302 1103 1162 11AA -> B303 1103 1162 11AB -> B304 1103 1162 11AC -> B305 1103 1162 11AD -> B306 1103 1162 11AE -> B307 1103 1162 11AF -> B308 1103 1162 11B0 -> B309 1103 1162 11B1 -> B30A 1103 1162 11B2 -> B30B 1103 1162 11B3 -> B30C 1103 1162 11B4 -> B30D 1103 1162 11B5 -> B30E 1103 1162 11B6 -> B30F 1103 1162 11B7 -> B310 1103 1162 11B8 -> B311 1103 1162 11B9 -> B312 1103 1162 11BA -> B313 1103 1162 11BB -> B314 1103 1162 11BC -> B315 1103 1162 11BD -> B316 1103 1162 11BE -> B317 1103 1162 11BF -> B318 1103 1162 11C0 -> B319 1103 1162 11C1 -> B31A 1103 1162 11C2 -> B31B 1103 1163 -> B31C 1103 1163 11A8 -> B31D 1103 1163 11A9 -> B31E 1103 1163 11AA -> B31F 1103 1163 11AB -> B320 1103 1163 11AC -> B321 1103 1163 11AD -> B322 1103 1163 11AE -> B323 1103 1163 11AF -> B324 1103 1163 11B0 -> B325 1103 1163 11B1 -> B326 1103 1163 11B2 -> B327 1103 1163 11B3 -> B328 1103 1163 11B4 -> B329 1103 1163 11B5 -> B32A 1103 1163 11B6 -> B32B 1103 1163 11B7 -> B32C 1103 1163 11B8 -> B32D 1103 1163 11B9 -> B32E 1103 1163 11BA -> B32F 1103 1163 11BB -> B330 1103 1163 11BC -> B331 1103 1163 11BD -> B332 1103 1163 11BE -> B333 1103 1163 11BF -> B334 1103 1163 11C0 -> B335 1103 1163 11C1 -> B336 1103 1163 11C2 -> B337 1103 1164 -> B338 1103 1164 11A8 -> B339 1103 1164 11A9 -> B33A 1103 1164 11AA -> B33B 1103 1164 11AB -> B33C 1103 1164 11AC -> B33D 1103 1164 11AD -> B33E 1103 1164 11AE -> B33F 1103 1164 11AF -> B340 1103 1164 11B0 -> B341 1103 1164 11B1 -> B342 1103 1164 11B2 -> B343 1103 1164 11B3 -> B344 1103 1164 11B4 -> B345 1103 1164 11B5 -> B346 1103 1164 11B6 -> B347 1103 1164 11B7 -> B348 1103 1164 11B8 -> B349 1103 1164 11B9 -> B34A 1103 1164 11BA -> B34B 1103 1164 11BB -> B34C 1103 1164 11BC -> B34D 1103 1164 11BD -> B34E 1103 1164 11BE -> B34F 1103 1164 11BF -> B350 1103 1164 11C0 -> B351 1103 1164 11C1 -> B352 1103 1164 11C2 -> B353 1103 1165 -> B354 1103 1165 11A8 -> B355 1103 1165 11A9 -> B356 1103 1165 11AA -> B357 1103 1165 11AB -> B358 1103 1165 11AC -> B359 1103 1165 11AD -> B35A 1103 1165 11AE -> B35B 1103 1165 11AF -> B35C 1103 1165 11B0 -> B35D 1103 1165 11B1 -> B35E 1103 1165 11B2 -> B35F 1103 1165 11B3 -> B360 1103 1165 11B4 -> B361 1103 1165 11B5 -> B362 1103 1165 11B6 -> B363 1103 1165 11B7 -> B364 1103 1165 11B8 -> B365 1103 1165 11B9 -> B366 1103 1165 11BA -> B367 1103 1165 11BB -> B368 1103 1165 11BC -> B369 1103 1165 11BD -> B36A 1103 1165 11BE -> B36B 1103 1165 11BF -> B36C 1103 1165 11C0 -> B36D 1103 1165 11C1 -> B36E 1103 1165 11C2 -> B36F 1103 1166 -> B370 1103 1166 11A8 -> B371 1103 1166 11A9 -> B372 1103 1166 11AA -> B373 1103 1166 11AB -> B374 1103 1166 11AC -> B375 1103 1166 11AD -> B376 1103 1166 11AE -> B377 1103 1166 11AF -> B378 1103 1166 11B0 -> B379 1103 1166 11B1 -> B37A 1103 1166 11B2 -> B37B 1103 1166 11B3 -> B37C 1103 1166 11B4 -> B37D 1103 1166 11B5 -> B37E 1103 1166 11B6 -> B37F 1103 1166 11B7 -> B380 1103 1166 11B8 -> B381 1103 1166 11B9 -> B382 1103 1166 11BA -> B383 1103 1166 11BB -> B384 1103 1166 11BC -> B385 1103 1166 11BD -> B386 1103 1166 11BE -> B387 1103 1166 11BF -> B388 1103 1166 11C0 -> B389 1103 1166 11C1 -> B38A 1103 1166 11C2 -> B38B 1103 1167 -> B38C 1103 1167 11A8 -> B38D 1103 1167 11A9 -> B38E 1103 1167 11AA -> B38F 1103 1167 11AB -> B390 1103 1167 11AC -> B391 1103 1167 11AD -> B392 1103 1167 11AE -> B393 1103 1167 11AF -> B394 1103 1167 11B0 -> B395 1103 1167 11B1 -> B396 1103 1167 11B2 -> B397 1103 1167 11B3 -> B398 1103 1167 11B4 -> B399 1103 1167 11B5 -> B39A 1103 1167 11B6 -> B39B 1103 1167 11B7 -> B39C 1103 1167 11B8 -> B39D 1103 1167 11B9 -> B39E 1103 1167 11BA -> B39F 1103 1167 11BB -> B3A0 1103 1167 11BC -> B3A1 1103 1167 11BD -> B3A2 1103 1167 11BE -> B3A3 1103 1167 11BF -> B3A4 1103 1167 11C0 -> B3A5 1103 1167 11C1 -> B3A6 1103 1167 11C2 -> B3A7 1103 1168 -> B3A8 1103 1168 11A8 -> B3A9 1103 1168 11A9 -> B3AA 1103 1168 11AA -> B3AB 1103 1168 11AB -> B3AC 1103 1168 11AC -> B3AD 1103 1168 11AD -> B3AE 1103 1168 11AE -> B3AF 1103 1168 11AF -> B3B0 1103 1168 11B0 -> B3B1 1103 1168 11B1 -> B3B2 1103 1168 11B2 -> B3B3 1103 1168 11B3 -> B3B4 1103 1168 11B4 -> B3B5 1103 1168 11B5 -> B3B6 1103 1168 11B6 -> B3B7 1103 1168 11B7 -> B3B8 1103 1168 11B8 -> B3B9 1103 1168 11B9 -> B3BA 1103 1168 11BA -> B3BB 1103 1168 11BB -> B3BC 1103 1168 11BC -> B3BD 1103 1168 11BD -> B3BE 1103 1168 11BE -> B3BF 1103 1168 11BF -> B3C0 1103 1168 11C0 -> B3C1 1103 1168 11C1 -> B3C2 1103 1168 11C2 -> B3C3 1103 1169 -> B3C4 1103 1169 11A8 -> B3C5 1103 1169 11A9 -> B3C6 1103 1169 11AA -> B3C7 1103 1169 11AB -> B3C8 1103 1169 11AC -> B3C9 1103 1169 11AD -> B3CA 1103 1169 11AE -> B3CB 1103 1169 11AF -> B3CC 1103 1169 11B0 -> B3CD 1103 1169 11B1 -> B3CE 1103 1169 11B2 -> B3CF 1103 1169 11B3 -> B3D0 1103 1169 11B4 -> B3D1 1103 1169 11B5 -> B3D2 1103 1169 11B6 -> B3D3 1103 1169 11B7 -> B3D4 1103 1169 11B8 -> B3D5 1103 1169 11B9 -> B3D6 1103 1169 11BA -> B3D7 1103 1169 11BB -> B3D8 1103 1169 11BC -> B3D9 1103 1169 11BD -> B3DA 1103 1169 11BE -> B3DB 1103 1169 11BF -> B3DC 1103 1169 11C0 -> B3DD 1103 1169 11C1 -> B3DE 1103 1169 11C2 -> B3DF 1103 116A -> B3E0 1103 116A 11A8 -> B3E1 1103 116A 11A9 -> B3E2 1103 116A 11AA -> B3E3 1103 116A 11AB -> B3E4 1103 116A 11AC -> B3E5 1103 116A 11AD -> B3E6 1103 116A 11AE -> B3E7 1103 116A 11AF -> B3E8 1103 116A 11B0 -> B3E9 1103 116A 11B1 -> B3EA 1103 116A 11B2 -> B3EB 1103 116A 11B3 -> B3EC 1103 116A 11B4 -> B3ED 1103 116A 11B5 -> B3EE 1103 116A 11B6 -> B3EF 1103 116A 11B7 -> B3F0 1103 116A 11B8 -> B3F1 1103 116A 11B9 -> B3F2 1103 116A 11BA -> B3F3 1103 116A 11BB -> B3F4 1103 116A 11BC -> B3F5 1103 116A 11BD -> B3F6 1103 116A 11BE -> B3F7 1103 116A 11BF -> B3F8 1103 116A 11C0 -> B3F9 1103 116A 11C1 -> B3FA 1103 116A 11C2 -> B3FB 1103 116B -> B3FC 1103 116B 11A8 -> B3FD 1103 116B 11A9 -> B3FE 1103 116B 11AA -> B3FF 1103 116B 11AB -> B400 1103 116B 11AC -> B401 1103 116B 11AD -> B402 1103 116B 11AE -> B403 1103 116B 11AF -> B404 1103 116B 11B0 -> B405 1103 116B 11B1 -> B406 1103 116B 11B2 -> B407 1103 116B 11B3 -> B408 1103 116B 11B4 -> B409 1103 116B 11B5 -> B40A 1103 116B 11B6 -> B40B 1103 116B 11B7 -> B40C 1103 116B 11B8 -> B40D 1103 116B 11B9 -> B40E 1103 116B 11BA -> B40F 1103 116B 11BB -> B410 1103 116B 11BC -> B411 1103 116B 11BD -> B412 1103 116B 11BE -> B413 1103 116B 11BF -> B414 1103 116B 11C0 -> B415 1103 116B 11C1 -> B416 1103 116B 11C2 -> B417 1103 116C -> B418 1103 116C 11A8 -> B419 1103 116C 11A9 -> B41A 1103 116C 11AA -> B41B 1103 116C 11AB -> B41C 1103 116C 11AC -> B41D 1103 116C 11AD -> B41E 1103 116C 11AE -> B41F 1103 116C 11AF -> B420 1103 116C 11B0 -> B421 1103 116C 11B1 -> B422 1103 116C 11B2 -> B423 1103 116C 11B3 -> B424 1103 116C 11B4 -> B425 1103 116C 11B5 -> B426 1103 116C 11B6 -> B427 1103 116C 11B7 -> B428 1103 116C 11B8 -> B429 1103 116C 11B9 -> B42A 1103 116C 11BA -> B42B 1103 116C 11BB -> B42C 1103 116C 11BC -> B42D 1103 116C 11BD -> B42E 1103 116C 11BE -> B42F 1103 116C 11BF -> B430 1103 116C 11C0 -> B431 1103 116C 11C1 -> B432 1103 116C 11C2 -> B433 1103 116D -> B434 1103 116D 11A8 -> B435 1103 116D 11A9 -> B436 1103 116D 11AA -> B437 1103 116D 11AB -> B438 1103 116D 11AC -> B439 1103 116D 11AD -> B43A 1103 116D 11AE -> B43B 1103 116D 11AF -> B43C 1103 116D 11B0 -> B43D 1103 116D 11B1 -> B43E 1103 116D 11B2 -> B43F 1103 116D 11B3 -> B440 1103 116D 11B4 -> B441 1103 116D 11B5 -> B442 1103 116D 11B6 -> B443 1103 116D 11B7 -> B444 1103 116D 11B8 -> B445 1103 116D 11B9 -> B446 1103 116D 11BA -> B447 1103 116D 11BB -> B448 1103 116D 11BC -> B449 1103 116D 11BD -> B44A 1103 116D 11BE -> B44B 1103 116D 11BF -> B44C 1103 116D 11C0 -> B44D 1103 116D 11C1 -> B44E 1103 116D 11C2 -> B44F 1103 116E -> B450 1103 116E 11A8 -> B451 1103 116E 11A9 -> B452 1103 116E 11AA -> B453 1103 116E 11AB -> B454 1103 116E 11AC -> B455 1103 116E 11AD -> B456 1103 116E 11AE -> B457 1103 116E 11AF -> B458 1103 116E 11B0 -> B459 1103 116E 11B1 -> B45A 1103 116E 11B2 -> B45B 1103 116E 11B3 -> B45C 1103 116E 11B4 -> B45D 1103 116E 11B5 -> B45E 1103 116E 11B6 -> B45F 1103 116E 11B7 -> B460 1103 116E 11B8 -> B461 1103 116E 11B9 -> B462 1103 116E 11BA -> B463 1103 116E 11BB -> B464 1103 116E 11BC -> B465 1103 116E 11BD -> B466 1103 116E 11BE -> B467 1103 116E 11BF -> B468 1103 116E 11C0 -> B469 1103 116E 11C1 -> B46A 1103 116E 11C2 -> B46B 1103 116F -> B46C 1103 116F 11A8 -> B46D 1103 116F 11A9 -> B46E 1103 116F 11AA -> B46F 1103 116F 11AB -> B470 1103 116F 11AC -> B471 1103 116F 11AD -> B472 1103 116F 11AE -> B473 1103 116F 11AF -> B474 1103 116F 11B0 -> B475 1103 116F 11B1 -> B476 1103 116F 11B2 -> B477 1103 116F 11B3 -> B478 1103 116F 11B4 -> B479 1103 116F 11B5 -> B47A 1103 116F 11B6 -> B47B 1103 116F 11B7 -> B47C 1103 116F 11B8 -> B47D 1103 116F 11B9 -> B47E 1103 116F 11BA -> B47F 1103 116F 11BB -> B480 1103 116F 11BC -> B481 1103 116F 11BD -> B482 1103 116F 11BE -> B483 1103 116F 11BF -> B484 1103 116F 11C0 -> B485 1103 116F 11C1 -> B486 1103 116F 11C2 -> B487 1103 1170 -> B488 1103 1170 11A8 -> B489 1103 1170 11A9 -> B48A 1103 1170 11AA -> B48B 1103 1170 11AB -> B48C 1103 1170 11AC -> B48D 1103 1170 11AD -> B48E 1103 1170 11AE -> B48F 1103 1170 11AF -> B490 1103 1170 11B0 -> B491 1103 1170 11B1 -> B492 1103 1170 11B2 -> B493 1103 1170 11B3 -> B494 1103 1170 11B4 -> B495 1103 1170 11B5 -> B496 1103 1170 11B6 -> B497 1103 1170 11B7 -> B498 1103 1170 11B8 -> B499 1103 1170 11B9 -> B49A 1103 1170 11BA -> B49B 1103 1170 11BB -> B49C 1103 1170 11BC -> B49D 1103 1170 11BD -> B49E 1103 1170 11BE -> B49F 1103 1170 11BF -> B4A0 1103 1170 11C0 -> B4A1 1103 1170 11C1 -> B4A2 1103 1170 11C2 -> B4A3 1103 1171 -> B4A4 1103 1171 11A8 -> B4A5 1103 1171 11A9 -> B4A6 1103 1171 11AA -> B4A7 1103 1171 11AB -> B4A8 1103 1171 11AC -> B4A9 1103 1171 11AD -> B4AA 1103 1171 11AE -> B4AB 1103 1171 11AF -> B4AC 1103 1171 11B0 -> B4AD 1103 1171 11B1 -> B4AE 1103 1171 11B2 -> B4AF 1103 1171 11B3 -> B4B0 1103 1171 11B4 -> B4B1 1103 1171 11B5 -> B4B2 1103 1171 11B6 -> B4B3 1103 1171 11B7 -> B4B4 1103 1171 11B8 -> B4B5 1103 1171 11B9 -> B4B6 1103 1171 11BA -> B4B7 1103 1171 11BB -> B4B8 1103 1171 11BC -> B4B9 1103 1171 11BD -> B4BA 1103 1171 11BE -> B4BB 1103 1171 11BF -> B4BC 1103 1171 11C0 -> B4BD 1103 1171 11C1 -> B4BE 1103 1171 11C2 -> B4BF 1103 1172 -> B4C0 1103 1172 11A8 -> B4C1 1103 1172 11A9 -> B4C2 1103 1172 11AA -> B4C3 1103 1172 11AB -> B4C4 1103 1172 11AC -> B4C5 1103 1172 11AD -> B4C6 1103 1172 11AE -> B4C7 1103 1172 11AF -> B4C8 1103 1172 11B0 -> B4C9 1103 1172 11B1 -> B4CA 1103 1172 11B2 -> B4CB 1103 1172 11B3 -> B4CC 1103 1172 11B4 -> B4CD 1103 1172 11B5 -> B4CE 1103 1172 11B6 -> B4CF 1103 1172 11B7 -> B4D0 1103 1172 11B8 -> B4D1 1103 1172 11B9 -> B4D2 1103 1172 11BA -> B4D3 1103 1172 11BB -> B4D4 1103 1172 11BC -> B4D5 1103 1172 11BD -> B4D6 1103 1172 11BE -> B4D7 1103 1172 11BF -> B4D8 1103 1172 11C0 -> B4D9 1103 1172 11C1 -> B4DA 1103 1172 11C2 -> B4DB 1103 1173 -> B4DC 1103 1173 11A8 -> B4DD 1103 1173 11A9 -> B4DE 1103 1173 11AA -> B4DF 1103 1173 11AB -> B4E0 1103 1173 11AC -> B4E1 1103 1173 11AD -> B4E2 1103 1173 11AE -> B4E3 1103 1173 11AF -> B4E4 1103 1173 11B0 -> B4E5 1103 1173 11B1 -> B4E6 1103 1173 11B2 -> B4E7 1103 1173 11B3 -> B4E8 1103 1173 11B4 -> B4E9 1103 1173 11B5 -> B4EA 1103 1173 11B6 -> B4EB 1103 1173 11B7 -> B4EC 1103 1173 11B8 -> B4ED 1103 1173 11B9 -> B4EE 1103 1173 11BA -> B4EF 1103 1173 11BB -> B4F0 1103 1173 11BC -> B4F1 1103 1173 11BD -> B4F2 1103 1173 11BE -> B4F3 1103 1173 11BF -> B4F4 1103 1173 11C0 -> B4F5 1103 1173 11C1 -> B4F6 1103 1173 11C2 -> B4F7 1103 1174 -> B4F8 1103 1174 11A8 -> B4F9 1103 1174 11A9 -> B4FA 1103 1174 11AA -> B4FB 1103 1174 11AB -> B4FC 1103 1174 11AC -> B4FD 1103 1174 11AD -> B4FE 1103 1174 11AE -> B4FF 1103 1174 11AF -> B500 1103 1174 11B0 -> B501 1103 1174 11B1 -> B502 1103 1174 11B2 -> B503 1103 1174 11B3 -> B504 1103 1174 11B4 -> B505 1103 1174 11B5 -> B506 1103 1174 11B6 -> B507 1103 1174 11B7 -> B508 1103 1174 11B8 -> B509 1103 1174 11B9 -> B50A 1103 1174 11BA -> B50B 1103 1174 11BB -> B50C 1103 1174 11BC -> B50D 1103 1174 11BD -> B50E 1103 1174 11BE -> B50F 1103 1174 11BF -> B510 1103 1174 11C0 -> B511 1103 1174 11C1 -> B512 1103 1174 11C2 -> B513 1103 1175 -> B514 1103 1175 11A8 -> B515 1103 1175 11A9 -> B516 1103 1175 11AA -> B517 1103 1175 11AB -> B518 1103 1175 11AC -> B519 1103 1175 11AD -> B51A 1103 1175 11AE -> B51B 1103 1175 11AF -> B51C 1103 1175 11B0 -> B51D 1103 1175 11B1 -> B51E 1103 1175 11B2 -> B51F 1103 1175 11B3 -> B520 1103 1175 11B4 -> B521 1103 1175 11B5 -> B522 1103 1175 11B6 -> B523 1103 1175 11B7 -> B524 1103 1175 11B8 -> B525 1103 1175 11B9 -> B526 1103 1175 11BA -> B527 1103 1175 11BB -> B528 1103 1175 11BC -> B529 1103 1175 11BD -> B52A 1103 1175 11BE -> B52B 1103 1175 11BF -> B52C 1103 1175 11C0 -> B52D 1103 1175 11C1 -> B52E 1103 1175 11C2 -> B52F 1104 1161 -> B530 1104 1161 11A8 -> B531 1104 1161 11A9 -> B532 1104 1161 11AA -> B533 1104 1161 11AB -> B534 1104 1161 11AC -> B535 1104 1161 11AD -> B536 1104 1161 11AE -> B537 1104 1161 11AF -> B538 1104 1161 11B0 -> B539 1104 1161 11B1 -> B53A 1104 1161 11B2 -> B53B 1104 1161 11B3 -> B53C 1104 1161 11B4 -> B53D 1104 1161 11B5 -> B53E 1104 1161 11B6 -> B53F 1104 1161 11B7 -> B540 1104 1161 11B8 -> B541 1104 1161 11B9 -> B542 1104 1161 11BA -> B543 1104 1161 11BB -> B544 1104 1161 11BC -> B545 1104 1161 11BD -> B546 1104 1161 11BE -> B547 1104 1161 11BF -> B548 1104 1161 11C0 -> B549 1104 1161 11C1 -> B54A 1104 1161 11C2 -> B54B 1104 1162 -> B54C 1104 1162 11A8 -> B54D 1104 1162 11A9 -> B54E 1104 1162 11AA -> B54F 1104 1162 11AB -> B550 1104 1162 11AC -> B551 1104 1162 11AD -> B552 1104 1162 11AE -> B553 1104 1162 11AF -> B554 1104 1162 11B0 -> B555 1104 1162 11B1 -> B556 1104 1162 11B2 -> B557 1104 1162 11B3 -> B558 1104 1162 11B4 -> B559 1104 1162 11B5 -> B55A 1104 1162 11B6 -> B55B 1104 1162 11B7 -> B55C 1104 1162 11B8 -> B55D 1104 1162 11B9 -> B55E 1104 1162 11BA -> B55F 1104 1162 11BB -> B560 1104 1162 11BC -> B561 1104 1162 11BD -> B562 1104 1162 11BE -> B563 1104 1162 11BF -> B564 1104 1162 11C0 -> B565 1104 1162 11C1 -> B566 1104 1162 11C2 -> B567 1104 1163 -> B568 1104 1163 11A8 -> B569 1104 1163 11A9 -> B56A 1104 1163 11AA -> B56B 1104 1163 11AB -> B56C 1104 1163 11AC -> B56D 1104 1163 11AD -> B56E 1104 1163 11AE -> B56F 1104 1163 11AF -> B570 1104 1163 11B0 -> B571 1104 1163 11B1 -> B572 1104 1163 11B2 -> B573 1104 1163 11B3 -> B574 1104 1163 11B4 -> B575 1104 1163 11B5 -> B576 1104 1163 11B6 -> B577 1104 1163 11B7 -> B578 1104 1163 11B8 -> B579 1104 1163 11B9 -> B57A 1104 1163 11BA -> B57B 1104 1163 11BB -> B57C 1104 1163 11BC -> B57D 1104 1163 11BD -> B57E 1104 1163 11BE -> B57F 1104 1163 11BF -> B580 1104 1163 11C0 -> B581 1104 1163 11C1 -> B582 1104 1163 11C2 -> B583 1104 1164 -> B584 1104 1164 11A8 -> B585 1104 1164 11A9 -> B586 1104 1164 11AA -> B587 1104 1164 11AB -> B588 1104 1164 11AC -> B589 1104 1164 11AD -> B58A 1104 1164 11AE -> B58B 1104 1164 11AF -> B58C 1104 1164 11B0 -> B58D 1104 1164 11B1 -> B58E 1104 1164 11B2 -> B58F 1104 1164 11B3 -> B590 1104 1164 11B4 -> B591 1104 1164 11B5 -> B592 1104 1164 11B6 -> B593 1104 1164 11B7 -> B594 1104 1164 11B8 -> B595 1104 1164 11B9 -> B596 1104 1164 11BA -> B597 1104 1164 11BB -> B598 1104 1164 11BC -> B599 1104 1164 11BD -> B59A 1104 1164 11BE -> B59B 1104 1164 11BF -> B59C 1104 1164 11C0 -> B59D 1104 1164 11C1 -> B59E 1104 1164 11C2 -> B59F 1104 1165 -> B5A0 1104 1165 11A8 -> B5A1 1104 1165 11A9 -> B5A2 1104 1165 11AA -> B5A3 1104 1165 11AB -> B5A4 1104 1165 11AC -> B5A5 1104 1165 11AD -> B5A6 1104 1165 11AE -> B5A7 1104 1165 11AF -> B5A8 1104 1165 11B0 -> B5A9 1104 1165 11B1 -> B5AA 1104 1165 11B2 -> B5AB 1104 1165 11B3 -> B5AC 1104 1165 11B4 -> B5AD 1104 1165 11B5 -> B5AE 1104 1165 11B6 -> B5AF 1104 1165 11B7 -> B5B0 1104 1165 11B8 -> B5B1 1104 1165 11B9 -> B5B2 1104 1165 11BA -> B5B3 1104 1165 11BB -> B5B4 1104 1165 11BC -> B5B5 1104 1165 11BD -> B5B6 1104 1165 11BE -> B5B7 1104 1165 11BF -> B5B8 1104 1165 11C0 -> B5B9 1104 1165 11C1 -> B5BA 1104 1165 11C2 -> B5BB 1104 1166 -> B5BC 1104 1166 11A8 -> B5BD 1104 1166 11A9 -> B5BE 1104 1166 11AA -> B5BF 1104 1166 11AB -> B5C0 1104 1166 11AC -> B5C1 1104 1166 11AD -> B5C2 1104 1166 11AE -> B5C3 1104 1166 11AF -> B5C4 1104 1166 11B0 -> B5C5 1104 1166 11B1 -> B5C6 1104 1166 11B2 -> B5C7 1104 1166 11B3 -> B5C8 1104 1166 11B4 -> B5C9 1104 1166 11B5 -> B5CA 1104 1166 11B6 -> B5CB 1104 1166 11B7 -> B5CC 1104 1166 11B8 -> B5CD 1104 1166 11B9 -> B5CE 1104 1166 11BA -> B5CF 1104 1166 11BB -> B5D0 1104 1166 11BC -> B5D1 1104 1166 11BD -> B5D2 1104 1166 11BE -> B5D3 1104 1166 11BF -> B5D4 1104 1166 11C0 -> B5D5 1104 1166 11C1 -> B5D6 1104 1166 11C2 -> B5D7 1104 1167 -> B5D8 1104 1167 11A8 -> B5D9 1104 1167 11A9 -> B5DA 1104 1167 11AA -> B5DB 1104 1167 11AB -> B5DC 1104 1167 11AC -> B5DD 1104 1167 11AD -> B5DE 1104 1167 11AE -> B5DF 1104 1167 11AF -> B5E0 1104 1167 11B0 -> B5E1 1104 1167 11B1 -> B5E2 1104 1167 11B2 -> B5E3 1104 1167 11B3 -> B5E4 1104 1167 11B4 -> B5E5 1104 1167 11B5 -> B5E6 1104 1167 11B6 -> B5E7 1104 1167 11B7 -> B5E8 1104 1167 11B8 -> B5E9 1104 1167 11B9 -> B5EA 1104 1167 11BA -> B5EB 1104 1167 11BB -> B5EC 1104 1167 11BC -> B5ED 1104 1167 11BD -> B5EE 1104 1167 11BE -> B5EF 1104 1167 11BF -> B5F0 1104 1167 11C0 -> B5F1 1104 1167 11C1 -> B5F2 1104 1167 11C2 -> B5F3 1104 1168 -> B5F4 1104 1168 11A8 -> B5F5 1104 1168 11A9 -> B5F6 1104 1168 11AA -> B5F7 1104 1168 11AB -> B5F8 1104 1168 11AC -> B5F9 1104 1168 11AD -> B5FA 1104 1168 11AE -> B5FB 1104 1168 11AF -> B5FC 1104 1168 11B0 -> B5FD 1104 1168 11B1 -> B5FE 1104 1168 11B2 -> B5FF 1104 1168 11B3 -> B600 1104 1168 11B4 -> B601 1104 1168 11B5 -> B602 1104 1168 11B6 -> B603 1104 1168 11B7 -> B604 1104 1168 11B8 -> B605 1104 1168 11B9 -> B606 1104 1168 11BA -> B607 1104 1168 11BB -> B608 1104 1168 11BC -> B609 1104 1168 11BD -> B60A 1104 1168 11BE -> B60B 1104 1168 11BF -> B60C 1104 1168 11C0 -> B60D 1104 1168 11C1 -> B60E 1104 1168 11C2 -> B60F 1104 1169 -> B610 1104 1169 11A8 -> B611 1104 1169 11A9 -> B612 1104 1169 11AA -> B613 1104 1169 11AB -> B614 1104 1169 11AC -> B615 1104 1169 11AD -> B616 1104 1169 11AE -> B617 1104 1169 11AF -> B618 1104 1169 11B0 -> B619 1104 1169 11B1 -> B61A 1104 1169 11B2 -> B61B 1104 1169 11B3 -> B61C 1104 1169 11B4 -> B61D 1104 1169 11B5 -> B61E 1104 1169 11B6 -> B61F 1104 1169 11B7 -> B620 1104 1169 11B8 -> B621 1104 1169 11B9 -> B622 1104 1169 11BA -> B623 1104 1169 11BB -> B624 1104 1169 11BC -> B625 1104 1169 11BD -> B626 1104 1169 11BE -> B627 1104 1169 11BF -> B628 1104 1169 11C0 -> B629 1104 1169 11C1 -> B62A 1104 1169 11C2 -> B62B 1104 116A -> B62C 1104 116A 11A8 -> B62D 1104 116A 11A9 -> B62E 1104 116A 11AA -> B62F 1104 116A 11AB -> B630 1104 116A 11AC -> B631 1104 116A 11AD -> B632 1104 116A 11AE -> B633 1104 116A 11AF -> B634 1104 116A 11B0 -> B635 1104 116A 11B1 -> B636 1104 116A 11B2 -> B637 1104 116A 11B3 -> B638 1104 116A 11B4 -> B639 1104 116A 11B5 -> B63A 1104 116A 11B6 -> B63B 1104 116A 11B7 -> B63C 1104 116A 11B8 -> B63D 1104 116A 11B9 -> B63E 1104 116A 11BA -> B63F 1104 116A 11BB -> B640 1104 116A 11BC -> B641 1104 116A 11BD -> B642 1104 116A 11BE -> B643 1104 116A 11BF -> B644 1104 116A 11C0 -> B645 1104 116A 11C1 -> B646 1104 116A 11C2 -> B647 1104 116B -> B648 1104 116B 11A8 -> B649 1104 116B 11A9 -> B64A 1104 116B 11AA -> B64B 1104 116B 11AB -> B64C 1104 116B 11AC -> B64D 1104 116B 11AD -> B64E 1104 116B 11AE -> B64F 1104 116B 11AF -> B650 1104 116B 11B0 -> B651 1104 116B 11B1 -> B652 1104 116B 11B2 -> B653 1104 116B 11B3 -> B654 1104 116B 11B4 -> B655 1104 116B 11B5 -> B656 1104 116B 11B6 -> B657 1104 116B 11B7 -> B658 1104 116B 11B8 -> B659 1104 116B 11B9 -> B65A 1104 116B 11BA -> B65B 1104 116B 11BB -> B65C 1104 116B 11BC -> B65D 1104 116B 11BD -> B65E 1104 116B 11BE -> B65F 1104 116B 11BF -> B660 1104 116B 11C0 -> B661 1104 116B 11C1 -> B662 1104 116B 11C2 -> B663 1104 116C -> B664 1104 116C 11A8 -> B665 1104 116C 11A9 -> B666 1104 116C 11AA -> B667 1104 116C 11AB -> B668 1104 116C 11AC -> B669 1104 116C 11AD -> B66A 1104 116C 11AE -> B66B 1104 116C 11AF -> B66C 1104 116C 11B0 -> B66D 1104 116C 11B1 -> B66E 1104 116C 11B2 -> B66F 1104 116C 11B3 -> B670 1104 116C 11B4 -> B671 1104 116C 11B5 -> B672 1104 116C 11B6 -> B673 1104 116C 11B7 -> B674 1104 116C 11B8 -> B675 1104 116C 11B9 -> B676 1104 116C 11BA -> B677 1104 116C 11BB -> B678 1104 116C 11BC -> B679 1104 116C 11BD -> B67A 1104 116C 11BE -> B67B 1104 116C 11BF -> B67C 1104 116C 11C0 -> B67D 1104 116C 11C1 -> B67E 1104 116C 11C2 -> B67F 1104 116D -> B680 1104 116D 11A8 -> B681 1104 116D 11A9 -> B682 1104 116D 11AA -> B683 1104 116D 11AB -> B684 1104 116D 11AC -> B685 1104 116D 11AD -> B686 1104 116D 11AE -> B687 1104 116D 11AF -> B688 1104 116D 11B0 -> B689 1104 116D 11B1 -> B68A 1104 116D 11B2 -> B68B 1104 116D 11B3 -> B68C 1104 116D 11B4 -> B68D 1104 116D 11B5 -> B68E 1104 116D 11B6 -> B68F 1104 116D 11B7 -> B690 1104 116D 11B8 -> B691 1104 116D 11B9 -> B692 1104 116D 11BA -> B693 1104 116D 11BB -> B694 1104 116D 11BC -> B695 1104 116D 11BD -> B696 1104 116D 11BE -> B697 1104 116D 11BF -> B698 1104 116D 11C0 -> B699 1104 116D 11C1 -> B69A 1104 116D 11C2 -> B69B 1104 116E -> B69C 1104 116E 11A8 -> B69D 1104 116E 11A9 -> B69E 1104 116E 11AA -> B69F 1104 116E 11AB -> B6A0 1104 116E 11AC -> B6A1 1104 116E 11AD -> B6A2 1104 116E 11AE -> B6A3 1104 116E 11AF -> B6A4 1104 116E 11B0 -> B6A5 1104 116E 11B1 -> B6A6 1104 116E 11B2 -> B6A7 1104 116E 11B3 -> B6A8 1104 116E 11B4 -> B6A9 1104 116E 11B5 -> B6AA 1104 116E 11B6 -> B6AB 1104 116E 11B7 -> B6AC 1104 116E 11B8 -> B6AD 1104 116E 11B9 -> B6AE 1104 116E 11BA -> B6AF 1104 116E 11BB -> B6B0 1104 116E 11BC -> B6B1 1104 116E 11BD -> B6B2 1104 116E 11BE -> B6B3 1104 116E 11BF -> B6B4 1104 116E 11C0 -> B6B5 1104 116E 11C1 -> B6B6 1104 116E 11C2 -> B6B7 1104 116F -> B6B8 1104 116F 11A8 -> B6B9 1104 116F 11A9 -> B6BA 1104 116F 11AA -> B6BB 1104 116F 11AB -> B6BC 1104 116F 11AC -> B6BD 1104 116F 11AD -> B6BE 1104 116F 11AE -> B6BF 1104 116F 11AF -> B6C0 1104 116F 11B0 -> B6C1 1104 116F 11B1 -> B6C2 1104 116F 11B2 -> B6C3 1104 116F 11B3 -> B6C4 1104 116F 11B4 -> B6C5 1104 116F 11B5 -> B6C6 1104 116F 11B6 -> B6C7 1104 116F 11B7 -> B6C8 1104 116F 11B8 -> B6C9 1104 116F 11B9 -> B6CA 1104 116F 11BA -> B6CB 1104 116F 11BB -> B6CC 1104 116F 11BC -> B6CD 1104 116F 11BD -> B6CE 1104 116F 11BE -> B6CF 1104 116F 11BF -> B6D0 1104 116F 11C0 -> B6D1 1104 116F 11C1 -> B6D2 1104 116F 11C2 -> B6D3 1104 1170 -> B6D4 1104 1170 11A8 -> B6D5 1104 1170 11A9 -> B6D6 1104 1170 11AA -> B6D7 1104 1170 11AB -> B6D8 1104 1170 11AC -> B6D9 1104 1170 11AD -> B6DA 1104 1170 11AE -> B6DB 1104 1170 11AF -> B6DC 1104 1170 11B0 -> B6DD 1104 1170 11B1 -> B6DE 1104 1170 11B2 -> B6DF 1104 1170 11B3 -> B6E0 1104 1170 11B4 -> B6E1 1104 1170 11B5 -> B6E2 1104 1170 11B6 -> B6E3 1104 1170 11B7 -> B6E4 1104 1170 11B8 -> B6E5 1104 1170 11B9 -> B6E6 1104 1170 11BA -> B6E7 1104 1170 11BB -> B6E8 1104 1170 11BC -> B6E9 1104 1170 11BD -> B6EA 1104 1170 11BE -> B6EB 1104 1170 11BF -> B6EC 1104 1170 11C0 -> B6ED 1104 1170 11C1 -> B6EE 1104 1170 11C2 -> B6EF 1104 1171 -> B6F0 1104 1171 11A8 -> B6F1 1104 1171 11A9 -> B6F2 1104 1171 11AA -> B6F3 1104 1171 11AB -> B6F4 1104 1171 11AC -> B6F5 1104 1171 11AD -> B6F6 1104 1171 11AE -> B6F7 1104 1171 11AF -> B6F8 1104 1171 11B0 -> B6F9 1104 1171 11B1 -> B6FA 1104 1171 11B2 -> B6FB 1104 1171 11B3 -> B6FC 1104 1171 11B4 -> B6FD 1104 1171 11B5 -> B6FE 1104 1171 11B6 -> B6FF 1104 1171 11B7 -> B700 1104 1171 11B8 -> B701 1104 1171 11B9 -> B702 1104 1171 11BA -> B703 1104 1171 11BB -> B704 1104 1171 11BC -> B705 1104 1171 11BD -> B706 1104 1171 11BE -> B707 1104 1171 11BF -> B708 1104 1171 11C0 -> B709 1104 1171 11C1 -> B70A 1104 1171 11C2 -> B70B 1104 1172 -> B70C 1104 1172 11A8 -> B70D 1104 1172 11A9 -> B70E 1104 1172 11AA -> B70F 1104 1172 11AB -> B710 1104 1172 11AC -> B711 1104 1172 11AD -> B712 1104 1172 11AE -> B713 1104 1172 11AF -> B714 1104 1172 11B0 -> B715 1104 1172 11B1 -> B716 1104 1172 11B2 -> B717 1104 1172 11B3 -> B718 1104 1172 11B4 -> B719 1104 1172 11B5 -> B71A 1104 1172 11B6 -> B71B 1104 1172 11B7 -> B71C 1104 1172 11B8 -> B71D 1104 1172 11B9 -> B71E 1104 1172 11BA -> B71F 1104 1172 11BB -> B720 1104 1172 11BC -> B721 1104 1172 11BD -> B722 1104 1172 11BE -> B723 1104 1172 11BF -> B724 1104 1172 11C0 -> B725 1104 1172 11C1 -> B726 1104 1172 11C2 -> B727 1104 1173 -> B728 1104 1173 11A8 -> B729 1104 1173 11A9 -> B72A 1104 1173 11AA -> B72B 1104 1173 11AB -> B72C 1104 1173 11AC -> B72D 1104 1173 11AD -> B72E 1104 1173 11AE -> B72F 1104 1173 11AF -> B730 1104 1173 11B0 -> B731 1104 1173 11B1 -> B732 1104 1173 11B2 -> B733 1104 1173 11B3 -> B734 1104 1173 11B4 -> B735 1104 1173 11B5 -> B736 1104 1173 11B6 -> B737 1104 1173 11B7 -> B738 1104 1173 11B8 -> B739 1104 1173 11B9 -> B73A 1104 1173 11BA -> B73B 1104 1173 11BB -> B73C 1104 1173 11BC -> B73D 1104 1173 11BD -> B73E 1104 1173 11BE -> B73F 1104 1173 11BF -> B740 1104 1173 11C0 -> B741 1104 1173 11C1 -> B742 1104 1173 11C2 -> B743 1104 1174 -> B744 1104 1174 11A8 -> B745 1104 1174 11A9 -> B746 1104 1174 11AA -> B747 1104 1174 11AB -> B748 1104 1174 11AC -> B749 1104 1174 11AD -> B74A 1104 1174 11AE -> B74B 1104 1174 11AF -> B74C 1104 1174 11B0 -> B74D 1104 1174 11B1 -> B74E 1104 1174 11B2 -> B74F 1104 1174 11B3 -> B750 1104 1174 11B4 -> B751 1104 1174 11B5 -> B752 1104 1174 11B6 -> B753 1104 1174 11B7 -> B754 1104 1174 11B8 -> B755 1104 1174 11B9 -> B756 1104 1174 11BA -> B757 1104 1174 11BB -> B758 1104 1174 11BC -> B759 1104 1174 11BD -> B75A 1104 1174 11BE -> B75B 1104 1174 11BF -> B75C 1104 1174 11C0 -> B75D 1104 1174 11C1 -> B75E 1104 1174 11C2 -> B75F 1104 1175 -> B760 1104 1175 11A8 -> B761 1104 1175 11A9 -> B762 1104 1175 11AA -> B763 1104 1175 11AB -> B764 1104 1175 11AC -> B765 1104 1175 11AD -> B766 1104 1175 11AE -> B767 1104 1175 11AF -> B768 1104 1175 11B0 -> B769 1104 1175 11B1 -> B76A 1104 1175 11B2 -> B76B 1104 1175 11B3 -> B76C 1104 1175 11B4 -> B76D 1104 1175 11B5 -> B76E 1104 1175 11B6 -> B76F 1104 1175 11B7 -> B770 1104 1175 11B8 -> B771 1104 1175 11B9 -> B772 1104 1175 11BA -> B773 1104 1175 11BB -> B774 1104 1175 11BC -> B775 1104 1175 11BD -> B776 1104 1175 11BE -> B777 1104 1175 11BF -> B778 1104 1175 11C0 -> B779 1104 1175 11C1 -> B77A 1104 1175 11C2 -> B77B 1105 1161 -> B77C 1105 1161 11A8 -> B77D 1105 1161 11A9 -> B77E 1105 1161 11AA -> B77F 1105 1161 11AB -> B780 1105 1161 11AC -> B781 1105 1161 11AD -> B782 1105 1161 11AE -> B783 1105 1161 11AF -> B784 1105 1161 11B0 -> B785 1105 1161 11B1 -> B786 1105 1161 11B2 -> B787 1105 1161 11B3 -> B788 1105 1161 11B4 -> B789 1105 1161 11B5 -> B78A 1105 1161 11B6 -> B78B 1105 1161 11B7 -> B78C 1105 1161 11B8 -> B78D 1105 1161 11B9 -> B78E 1105 1161 11BA -> B78F 1105 1161 11BB -> B790 1105 1161 11BC -> B791 1105 1161 11BD -> B792 1105 1161 11BE -> B793 1105 1161 11BF -> B794 1105 1161 11C0 -> B795 1105 1161 11C1 -> B796 1105 1161 11C2 -> B797 1105 1162 -> B798 1105 1162 11A8 -> B799 1105 1162 11A9 -> B79A 1105 1162 11AA -> B79B 1105 1162 11AB -> B79C 1105 1162 11AC -> B79D 1105 1162 11AD -> B79E 1105 1162 11AE -> B79F 1105 1162 11AF -> B7A0 1105 1162 11B0 -> B7A1 1105 1162 11B1 -> B7A2 1105 1162 11B2 -> B7A3 1105 1162 11B3 -> B7A4 1105 1162 11B4 -> B7A5 1105 1162 11B5 -> B7A6 1105 1162 11B6 -> B7A7 1105 1162 11B7 -> B7A8 1105 1162 11B8 -> B7A9 1105 1162 11B9 -> B7AA 1105 1162 11BA -> B7AB 1105 1162 11BB -> B7AC 1105 1162 11BC -> B7AD 1105 1162 11BD -> B7AE 1105 1162 11BE -> B7AF 1105 1162 11BF -> B7B0 1105 1162 11C0 -> B7B1 1105 1162 11C1 -> B7B2 1105 1162 11C2 -> B7B3 1105 1163 -> B7B4 1105 1163 11A8 -> B7B5 1105 1163 11A9 -> B7B6 1105 1163 11AA -> B7B7 1105 1163 11AB -> B7B8 1105 1163 11AC -> B7B9 1105 1163 11AD -> B7BA 1105 1163 11AE -> B7BB 1105 1163 11AF -> B7BC 1105 1163 11B0 -> B7BD 1105 1163 11B1 -> B7BE 1105 1163 11B2 -> B7BF 1105 1163 11B3 -> B7C0 1105 1163 11B4 -> B7C1 1105 1163 11B5 -> B7C2 1105 1163 11B6 -> B7C3 1105 1163 11B7 -> B7C4 1105 1163 11B8 -> B7C5 1105 1163 11B9 -> B7C6 1105 1163 11BA -> B7C7 1105 1163 11BB -> B7C8 1105 1163 11BC -> B7C9 1105 1163 11BD -> B7CA 1105 1163 11BE -> B7CB 1105 1163 11BF -> B7CC 1105 1163 11C0 -> B7CD 1105 1163 11C1 -> B7CE 1105 1163 11C2 -> B7CF 1105 1164 -> B7D0 1105 1164 11A8 -> B7D1 1105 1164 11A9 -> B7D2 1105 1164 11AA -> B7D3 1105 1164 11AB -> B7D4 1105 1164 11AC -> B7D5 1105 1164 11AD -> B7D6 1105 1164 11AE -> B7D7 1105 1164 11AF -> B7D8 1105 1164 11B0 -> B7D9 1105 1164 11B1 -> B7DA 1105 1164 11B2 -> B7DB 1105 1164 11B3 -> B7DC 1105 1164 11B4 -> B7DD 1105 1164 11B5 -> B7DE 1105 1164 11B6 -> B7DF 1105 1164 11B7 -> B7E0 1105 1164 11B8 -> B7E1 1105 1164 11B9 -> B7E2 1105 1164 11BA -> B7E3 1105 1164 11BB -> B7E4 1105 1164 11BC -> B7E5 1105 1164 11BD -> B7E6 1105 1164 11BE -> B7E7 1105 1164 11BF -> B7E8 1105 1164 11C0 -> B7E9 1105 1164 11C1 -> B7EA 1105 1164 11C2 -> B7EB 1105 1165 -> B7EC 1105 1165 11A8 -> B7ED 1105 1165 11A9 -> B7EE 1105 1165 11AA -> B7EF 1105 1165 11AB -> B7F0 1105 1165 11AC -> B7F1 1105 1165 11AD -> B7F2 1105 1165 11AE -> B7F3 1105 1165 11AF -> B7F4 1105 1165 11B0 -> B7F5 1105 1165 11B1 -> B7F6 1105 1165 11B2 -> B7F7 1105 1165 11B3 -> B7F8 1105 1165 11B4 -> B7F9 1105 1165 11B5 -> B7FA 1105 1165 11B6 -> B7FB 1105 1165 11B7 -> B7FC 1105 1165 11B8 -> B7FD 1105 1165 11B9 -> B7FE 1105 1165 11BA -> B7FF 1105 1165 11BB -> B800 1105 1165 11BC -> B801 1105 1165 11BD -> B802 1105 1165 11BE -> B803 1105 1165 11BF -> B804 1105 1165 11C0 -> B805 1105 1165 11C1 -> B806 1105 1165 11C2 -> B807 1105 1166 -> B808 1105 1166 11A8 -> B809 1105 1166 11A9 -> B80A 1105 1166 11AA -> B80B 1105 1166 11AB -> B80C 1105 1166 11AC -> B80D 1105 1166 11AD -> B80E 1105 1166 11AE -> B80F 1105 1166 11AF -> B810 1105 1166 11B0 -> B811 1105 1166 11B1 -> B812 1105 1166 11B2 -> B813 1105 1166 11B3 -> B814 1105 1166 11B4 -> B815 1105 1166 11B5 -> B816 1105 1166 11B6 -> B817 1105 1166 11B7 -> B818 1105 1166 11B8 -> B819 1105 1166 11B9 -> B81A 1105 1166 11BA -> B81B 1105 1166 11BB -> B81C 1105 1166 11BC -> B81D 1105 1166 11BD -> B81E 1105 1166 11BE -> B81F 1105 1166 11BF -> B820 1105 1166 11C0 -> B821 1105 1166 11C1 -> B822 1105 1166 11C2 -> B823 1105 1167 -> B824 1105 1167 11A8 -> B825 1105 1167 11A9 -> B826 1105 1167 11AA -> B827 1105 1167 11AB -> B828 1105 1167 11AC -> B829 1105 1167 11AD -> B82A 1105 1167 11AE -> B82B 1105 1167 11AF -> B82C 1105 1167 11B0 -> B82D 1105 1167 11B1 -> B82E 1105 1167 11B2 -> B82F 1105 1167 11B3 -> B830 1105 1167 11B4 -> B831 1105 1167 11B5 -> B832 1105 1167 11B6 -> B833 1105 1167 11B7 -> B834 1105 1167 11B8 -> B835 1105 1167 11B9 -> B836 1105 1167 11BA -> B837 1105 1167 11BB -> B838 1105 1167 11BC -> B839 1105 1167 11BD -> B83A 1105 1167 11BE -> B83B 1105 1167 11BF -> B83C 1105 1167 11C0 -> B83D 1105 1167 11C1 -> B83E 1105 1167 11C2 -> B83F 1105 1168 -> B840 1105 1168 11A8 -> B841 1105 1168 11A9 -> B842 1105 1168 11AA -> B843 1105 1168 11AB -> B844 1105 1168 11AC -> B845 1105 1168 11AD -> B846 1105 1168 11AE -> B847 1105 1168 11AF -> B848 1105 1168 11B0 -> B849 1105 1168 11B1 -> B84A 1105 1168 11B2 -> B84B 1105 1168 11B3 -> B84C 1105 1168 11B4 -> B84D 1105 1168 11B5 -> B84E 1105 1168 11B6 -> B84F 1105 1168 11B7 -> B850 1105 1168 11B8 -> B851 1105 1168 11B9 -> B852 1105 1168 11BA -> B853 1105 1168 11BB -> B854 1105 1168 11BC -> B855 1105 1168 11BD -> B856 1105 1168 11BE -> B857 1105 1168 11BF -> B858 1105 1168 11C0 -> B859 1105 1168 11C1 -> B85A 1105 1168 11C2 -> B85B 1105 1169 -> B85C 1105 1169 11A8 -> B85D 1105 1169 11A9 -> B85E 1105 1169 11AA -> B85F 1105 1169 11AB -> B860 1105 1169 11AC -> B861 1105 1169 11AD -> B862 1105 1169 11AE -> B863 1105 1169 11AF -> B864 1105 1169 11B0 -> B865 1105 1169 11B1 -> B866 1105 1169 11B2 -> B867 1105 1169 11B3 -> B868 1105 1169 11B4 -> B869 1105 1169 11B5 -> B86A 1105 1169 11B6 -> B86B 1105 1169 11B7 -> B86C 1105 1169 11B8 -> B86D 1105 1169 11B9 -> B86E 1105 1169 11BA -> B86F 1105 1169 11BB -> B870 1105 1169 11BC -> B871 1105 1169 11BD -> B872 1105 1169 11BE -> B873 1105 1169 11BF -> B874 1105 1169 11C0 -> B875 1105 1169 11C1 -> B876 1105 1169 11C2 -> B877 1105 116A -> B878 1105 116A 11A8 -> B879 1105 116A 11A9 -> B87A 1105 116A 11AA -> B87B 1105 116A 11AB -> B87C 1105 116A 11AC -> B87D 1105 116A 11AD -> B87E 1105 116A 11AE -> B87F 1105 116A 11AF -> B880 1105 116A 11B0 -> B881 1105 116A 11B1 -> B882 1105 116A 11B2 -> B883 1105 116A 11B3 -> B884 1105 116A 11B4 -> B885 1105 116A 11B5 -> B886 1105 116A 11B6 -> B887 1105 116A 11B7 -> B888 1105 116A 11B8 -> B889 1105 116A 11B9 -> B88A 1105 116A 11BA -> B88B 1105 116A 11BB -> B88C 1105 116A 11BC -> B88D 1105 116A 11BD -> B88E 1105 116A 11BE -> B88F 1105 116A 11BF -> B890 1105 116A 11C0 -> B891 1105 116A 11C1 -> B892 1105 116A 11C2 -> B893 1105 116B -> B894 1105 116B 11A8 -> B895 1105 116B 11A9 -> B896 1105 116B 11AA -> B897 1105 116B 11AB -> B898 1105 116B 11AC -> B899 1105 116B 11AD -> B89A 1105 116B 11AE -> B89B 1105 116B 11AF -> B89C 1105 116B 11B0 -> B89D 1105 116B 11B1 -> B89E 1105 116B 11B2 -> B89F 1105 116B 11B3 -> B8A0 1105 116B 11B4 -> B8A1 1105 116B 11B5 -> B8A2 1105 116B 11B6 -> B8A3 1105 116B 11B7 -> B8A4 1105 116B 11B8 -> B8A5 1105 116B 11B9 -> B8A6 1105 116B 11BA -> B8A7 1105 116B 11BB -> B8A8 1105 116B 11BC -> B8A9 1105 116B 11BD -> B8AA 1105 116B 11BE -> B8AB 1105 116B 11BF -> B8AC 1105 116B 11C0 -> B8AD 1105 116B 11C1 -> B8AE 1105 116B 11C2 -> B8AF 1105 116C -> B8B0 1105 116C 11A8 -> B8B1 1105 116C 11A9 -> B8B2 1105 116C 11AA -> B8B3 1105 116C 11AB -> B8B4 1105 116C 11AC -> B8B5 1105 116C 11AD -> B8B6 1105 116C 11AE -> B8B7 1105 116C 11AF -> B8B8 1105 116C 11B0 -> B8B9 1105 116C 11B1 -> B8BA 1105 116C 11B2 -> B8BB 1105 116C 11B3 -> B8BC 1105 116C 11B4 -> B8BD 1105 116C 11B5 -> B8BE 1105 116C 11B6 -> B8BF 1105 116C 11B7 -> B8C0 1105 116C 11B8 -> B8C1 1105 116C 11B9 -> B8C2 1105 116C 11BA -> B8C3 1105 116C 11BB -> B8C4 1105 116C 11BC -> B8C5 1105 116C 11BD -> B8C6 1105 116C 11BE -> B8C7 1105 116C 11BF -> B8C8 1105 116C 11C0 -> B8C9 1105 116C 11C1 -> B8CA 1105 116C 11C2 -> B8CB 1105 116D -> B8CC 1105 116D 11A8 -> B8CD 1105 116D 11A9 -> B8CE 1105 116D 11AA -> B8CF 1105 116D 11AB -> B8D0 1105 116D 11AC -> B8D1 1105 116D 11AD -> B8D2 1105 116D 11AE -> B8D3 1105 116D 11AF -> B8D4 1105 116D 11B0 -> B8D5 1105 116D 11B1 -> B8D6 1105 116D 11B2 -> B8D7 1105 116D 11B3 -> B8D8 1105 116D 11B4 -> B8D9 1105 116D 11B5 -> B8DA 1105 116D 11B6 -> B8DB 1105 116D 11B7 -> B8DC 1105 116D 11B8 -> B8DD 1105 116D 11B9 -> B8DE 1105 116D 11BA -> B8DF 1105 116D 11BB -> B8E0 1105 116D 11BC -> B8E1 1105 116D 11BD -> B8E2 1105 116D 11BE -> B8E3 1105 116D 11BF -> B8E4 1105 116D 11C0 -> B8E5 1105 116D 11C1 -> B8E6 1105 116D 11C2 -> B8E7 1105 116E -> B8E8 1105 116E 11A8 -> B8E9 1105 116E 11A9 -> B8EA 1105 116E 11AA -> B8EB 1105 116E 11AB -> B8EC 1105 116E 11AC -> B8ED 1105 116E 11AD -> B8EE 1105 116E 11AE -> B8EF 1105 116E 11AF -> B8F0 1105 116E 11B0 -> B8F1 1105 116E 11B1 -> B8F2 1105 116E 11B2 -> B8F3 1105 116E 11B3 -> B8F4 1105 116E 11B4 -> B8F5 1105 116E 11B5 -> B8F6 1105 116E 11B6 -> B8F7 1105 116E 11B7 -> B8F8 1105 116E 11B8 -> B8F9 1105 116E 11B9 -> B8FA 1105 116E 11BA -> B8FB 1105 116E 11BB -> B8FC 1105 116E 11BC -> B8FD 1105 116E 11BD -> B8FE 1105 116E 11BE -> B8FF 1105 116E 11BF -> B900 1105 116E 11C0 -> B901 1105 116E 11C1 -> B902 1105 116E 11C2 -> B903 1105 116F -> B904 1105 116F 11A8 -> B905 1105 116F 11A9 -> B906 1105 116F 11AA -> B907 1105 116F 11AB -> B908 1105 116F 11AC -> B909 1105 116F 11AD -> B90A 1105 116F 11AE -> B90B 1105 116F 11AF -> B90C 1105 116F 11B0 -> B90D 1105 116F 11B1 -> B90E 1105 116F 11B2 -> B90F 1105 116F 11B3 -> B910 1105 116F 11B4 -> B911 1105 116F 11B5 -> B912 1105 116F 11B6 -> B913 1105 116F 11B7 -> B914 1105 116F 11B8 -> B915 1105 116F 11B9 -> B916 1105 116F 11BA -> B917 1105 116F 11BB -> B918 1105 116F 11BC -> B919 1105 116F 11BD -> B91A 1105 116F 11BE -> B91B 1105 116F 11BF -> B91C 1105 116F 11C0 -> B91D 1105 116F 11C1 -> B91E 1105 116F 11C2 -> B91F 1105 1170 -> B920 1105 1170 11A8 -> B921 1105 1170 11A9 -> B922 1105 1170 11AA -> B923 1105 1170 11AB -> B924 1105 1170 11AC -> B925 1105 1170 11AD -> B926 1105 1170 11AE -> B927 1105 1170 11AF -> B928 1105 1170 11B0 -> B929 1105 1170 11B1 -> B92A 1105 1170 11B2 -> B92B 1105 1170 11B3 -> B92C 1105 1170 11B4 -> B92D 1105 1170 11B5 -> B92E 1105 1170 11B6 -> B92F 1105 1170 11B7 -> B930 1105 1170 11B8 -> B931 1105 1170 11B9 -> B932 1105 1170 11BA -> B933 1105 1170 11BB -> B934 1105 1170 11BC -> B935 1105 1170 11BD -> B936 1105 1170 11BE -> B937 1105 1170 11BF -> B938 1105 1170 11C0 -> B939 1105 1170 11C1 -> B93A 1105 1170 11C2 -> B93B 1105 1171 -> B93C 1105 1171 11A8 -> B93D 1105 1171 11A9 -> B93E 1105 1171 11AA -> B93F 1105 1171 11AB -> B940 1105 1171 11AC -> B941 1105 1171 11AD -> B942 1105 1171 11AE -> B943 1105 1171 11AF -> B944 1105 1171 11B0 -> B945 1105 1171 11B1 -> B946 1105 1171 11B2 -> B947 1105 1171 11B3 -> B948 1105 1171 11B4 -> B949 1105 1171 11B5 -> B94A 1105 1171 11B6 -> B94B 1105 1171 11B7 -> B94C 1105 1171 11B8 -> B94D 1105 1171 11B9 -> B94E 1105 1171 11BA -> B94F 1105 1171 11BB -> B950 1105 1171 11BC -> B951 1105 1171 11BD -> B952 1105 1171 11BE -> B953 1105 1171 11BF -> B954 1105 1171 11C0 -> B955 1105 1171 11C1 -> B956 1105 1171 11C2 -> B957 1105 1172 -> B958 1105 1172 11A8 -> B959 1105 1172 11A9 -> B95A 1105 1172 11AA -> B95B 1105 1172 11AB -> B95C 1105 1172 11AC -> B95D 1105 1172 11AD -> B95E 1105 1172 11AE -> B95F 1105 1172 11AF -> B960 1105 1172 11B0 -> B961 1105 1172 11B1 -> B962 1105 1172 11B2 -> B963 1105 1172 11B3 -> B964 1105 1172 11B4 -> B965 1105 1172 11B5 -> B966 1105 1172 11B6 -> B967 1105 1172 11B7 -> B968 1105 1172 11B8 -> B969 1105 1172 11B9 -> B96A 1105 1172 11BA -> B96B 1105 1172 11BB -> B96C 1105 1172 11BC -> B96D 1105 1172 11BD -> B96E 1105 1172 11BE -> B96F 1105 1172 11BF -> B970 1105 1172 11C0 -> B971 1105 1172 11C1 -> B972 1105 1172 11C2 -> B973 1105 1173 -> B974 1105 1173 11A8 -> B975 1105 1173 11A9 -> B976 1105 1173 11AA -> B977 1105 1173 11AB -> B978 1105 1173 11AC -> B979 1105 1173 11AD -> B97A 1105 1173 11AE -> B97B 1105 1173 11AF -> B97C 1105 1173 11B0 -> B97D 1105 1173 11B1 -> B97E 1105 1173 11B2 -> B97F 1105 1173 11B3 -> B980 1105 1173 11B4 -> B981 1105 1173 11B5 -> B982 1105 1173 11B6 -> B983 1105 1173 11B7 -> B984 1105 1173 11B8 -> B985 1105 1173 11B9 -> B986 1105 1173 11BA -> B987 1105 1173 11BB -> B988 1105 1173 11BC -> B989 1105 1173 11BD -> B98A 1105 1173 11BE -> B98B 1105 1173 11BF -> B98C 1105 1173 11C0 -> B98D 1105 1173 11C1 -> B98E 1105 1173 11C2 -> B98F 1105 1174 -> B990 1105 1174 11A8 -> B991 1105 1174 11A9 -> B992 1105 1174 11AA -> B993 1105 1174 11AB -> B994 1105 1174 11AC -> B995 1105 1174 11AD -> B996 1105 1174 11AE -> B997 1105 1174 11AF -> B998 1105 1174 11B0 -> B999 1105 1174 11B1 -> B99A 1105 1174 11B2 -> B99B 1105 1174 11B3 -> B99C 1105 1174 11B4 -> B99D 1105 1174 11B5 -> B99E 1105 1174 11B6 -> B99F 1105 1174 11B7 -> B9A0 1105 1174 11B8 -> B9A1 1105 1174 11B9 -> B9A2 1105 1174 11BA -> B9A3 1105 1174 11BB -> B9A4 1105 1174 11BC -> B9A5 1105 1174 11BD -> B9A6 1105 1174 11BE -> B9A7 1105 1174 11BF -> B9A8 1105 1174 11C0 -> B9A9 1105 1174 11C1 -> B9AA 1105 1174 11C2 -> B9AB 1105 1175 -> B9AC 1105 1175 11A8 -> B9AD 1105 1175 11A9 -> B9AE 1105 1175 11AA -> B9AF 1105 1175 11AB -> B9B0 1105 1175 11AC -> B9B1 1105 1175 11AD -> B9B2 1105 1175 11AE -> B9B3 1105 1175 11AF -> B9B4 1105 1175 11B0 -> B9B5 1105 1175 11B1 -> B9B6 1105 1175 11B2 -> B9B7 1105 1175 11B3 -> B9B8 1105 1175 11B4 -> B9B9 1105 1175 11B5 -> B9BA 1105 1175 11B6 -> B9BB 1105 1175 11B7 -> B9BC 1105 1175 11B8 -> B9BD 1105 1175 11B9 -> B9BE 1105 1175 11BA -> B9BF 1105 1175 11BB -> B9C0 1105 1175 11BC -> B9C1 1105 1175 11BD -> B9C2 1105 1175 11BE -> B9C3 1105 1175 11BF -> B9C4 1105 1175 11C0 -> B9C5 1105 1175 11C1 -> B9C6 1105 1175 11C2 -> B9C7 1106 1161 -> B9C8 1106 1161 11A8 -> B9C9 1106 1161 11A9 -> B9CA 1106 1161 11AA -> B9CB 1106 1161 11AB -> B9CC 1106 1161 11AC -> B9CD 1106 1161 11AD -> B9CE 1106 1161 11AE -> B9CF 1106 1161 11AF -> B9D0 1106 1161 11B0 -> B9D1 1106 1161 11B1 -> B9D2 1106 1161 11B2 -> B9D3 1106 1161 11B3 -> B9D4 1106 1161 11B4 -> B9D5 1106 1161 11B5 -> B9D6 1106 1161 11B6 -> B9D7 1106 1161 11B7 -> B9D8 1106 1161 11B8 -> B9D9 1106 1161 11B9 -> B9DA 1106 1161 11BA -> B9DB 1106 1161 11BB -> B9DC 1106 1161 11BC -> B9DD 1106 1161 11BD -> B9DE 1106 1161 11BE -> B9DF 1106 1161 11BF -> B9E0 1106 1161 11C0 -> B9E1 1106 1161 11C1 -> B9E2 1106 1161 11C2 -> B9E3 1106 1162 -> B9E4 1106 1162 11A8 -> B9E5 1106 1162 11A9 -> B9E6 1106 1162 11AA -> B9E7 1106 1162 11AB -> B9E8 1106 1162 11AC -> B9E9 1106 1162 11AD -> B9EA 1106 1162 11AE -> B9EB 1106 1162 11AF -> B9EC 1106 1162 11B0 -> B9ED 1106 1162 11B1 -> B9EE 1106 1162 11B2 -> B9EF 1106 1162 11B3 -> B9F0 1106 1162 11B4 -> B9F1 1106 1162 11B5 -> B9F2 1106 1162 11B6 -> B9F3 1106 1162 11B7 -> B9F4 1106 1162 11B8 -> B9F5 1106 1162 11B9 -> B9F6 1106 1162 11BA -> B9F7 1106 1162 11BB -> B9F8 1106 1162 11BC -> B9F9 1106 1162 11BD -> B9FA 1106 1162 11BE -> B9FB 1106 1162 11BF -> B9FC 1106 1162 11C0 -> B9FD 1106 1162 11C1 -> B9FE 1106 1162 11C2 -> B9FF 1106 1163 -> BA00 1106 1163 11A8 -> BA01 1106 1163 11A9 -> BA02 1106 1163 11AA -> BA03 1106 1163 11AB -> BA04 1106 1163 11AC -> BA05 1106 1163 11AD -> BA06 1106 1163 11AE -> BA07 1106 1163 11AF -> BA08 1106 1163 11B0 -> BA09 1106 1163 11B1 -> BA0A 1106 1163 11B2 -> BA0B 1106 1163 11B3 -> BA0C 1106 1163 11B4 -> BA0D 1106 1163 11B5 -> BA0E 1106 1163 11B6 -> BA0F 1106 1163 11B7 -> BA10 1106 1163 11B8 -> BA11 1106 1163 11B9 -> BA12 1106 1163 11BA -> BA13 1106 1163 11BB -> BA14 1106 1163 11BC -> BA15 1106 1163 11BD -> BA16 1106 1163 11BE -> BA17 1106 1163 11BF -> BA18 1106 1163 11C0 -> BA19 1106 1163 11C1 -> BA1A 1106 1163 11C2 -> BA1B 1106 1164 -> BA1C 1106 1164 11A8 -> BA1D 1106 1164 11A9 -> BA1E 1106 1164 11AA -> BA1F 1106 1164 11AB -> BA20 1106 1164 11AC -> BA21 1106 1164 11AD -> BA22 1106 1164 11AE -> BA23 1106 1164 11AF -> BA24 1106 1164 11B0 -> BA25 1106 1164 11B1 -> BA26 1106 1164 11B2 -> BA27 1106 1164 11B3 -> BA28 1106 1164 11B4 -> BA29 1106 1164 11B5 -> BA2A 1106 1164 11B6 -> BA2B 1106 1164 11B7 -> BA2C 1106 1164 11B8 -> BA2D 1106 1164 11B9 -> BA2E 1106 1164 11BA -> BA2F 1106 1164 11BB -> BA30 1106 1164 11BC -> BA31 1106 1164 11BD -> BA32 1106 1164 11BE -> BA33 1106 1164 11BF -> BA34 1106 1164 11C0 -> BA35 1106 1164 11C1 -> BA36 1106 1164 11C2 -> BA37 1106 1165 -> BA38 1106 1165 11A8 -> BA39 1106 1165 11A9 -> BA3A 1106 1165 11AA -> BA3B 1106 1165 11AB -> BA3C 1106 1165 11AC -> BA3D 1106 1165 11AD -> BA3E 1106 1165 11AE -> BA3F 1106 1165 11AF -> BA40 1106 1165 11B0 -> BA41 1106 1165 11B1 -> BA42 1106 1165 11B2 -> BA43 1106 1165 11B3 -> BA44 1106 1165 11B4 -> BA45 1106 1165 11B5 -> BA46 1106 1165 11B6 -> BA47 1106 1165 11B7 -> BA48 1106 1165 11B8 -> BA49 1106 1165 11B9 -> BA4A 1106 1165 11BA -> BA4B 1106 1165 11BB -> BA4C 1106 1165 11BC -> BA4D 1106 1165 11BD -> BA4E 1106 1165 11BE -> BA4F 1106 1165 11BF -> BA50 1106 1165 11C0 -> BA51 1106 1165 11C1 -> BA52 1106 1165 11C2 -> BA53 1106 1166 -> BA54 1106 1166 11A8 -> BA55 1106 1166 11A9 -> BA56 1106 1166 11AA -> BA57 1106 1166 11AB -> BA58 1106 1166 11AC -> BA59 1106 1166 11AD -> BA5A 1106 1166 11AE -> BA5B 1106 1166 11AF -> BA5C 1106 1166 11B0 -> BA5D 1106 1166 11B1 -> BA5E 1106 1166 11B2 -> BA5F 1106 1166 11B3 -> BA60 1106 1166 11B4 -> BA61 1106 1166 11B5 -> BA62 1106 1166 11B6 -> BA63 1106 1166 11B7 -> BA64 1106 1166 11B8 -> BA65 1106 1166 11B9 -> BA66 1106 1166 11BA -> BA67 1106 1166 11BB -> BA68 1106 1166 11BC -> BA69 1106 1166 11BD -> BA6A 1106 1166 11BE -> BA6B 1106 1166 11BF -> BA6C 1106 1166 11C0 -> BA6D 1106 1166 11C1 -> BA6E 1106 1166 11C2 -> BA6F 1106 1167 -> BA70 1106 1167 11A8 -> BA71 1106 1167 11A9 -> BA72 1106 1167 11AA -> BA73 1106 1167 11AB -> BA74 1106 1167 11AC -> BA75 1106 1167 11AD -> BA76 1106 1167 11AE -> BA77 1106 1167 11AF -> BA78 1106 1167 11B0 -> BA79 1106 1167 11B1 -> BA7A 1106 1167 11B2 -> BA7B 1106 1167 11B3 -> BA7C 1106 1167 11B4 -> BA7D 1106 1167 11B5 -> BA7E 1106 1167 11B6 -> BA7F 1106 1167 11B7 -> BA80 1106 1167 11B8 -> BA81 1106 1167 11B9 -> BA82 1106 1167 11BA -> BA83 1106 1167 11BB -> BA84 1106 1167 11BC -> BA85 1106 1167 11BD -> BA86 1106 1167 11BE -> BA87 1106 1167 11BF -> BA88 1106 1167 11C0 -> BA89 1106 1167 11C1 -> BA8A 1106 1167 11C2 -> BA8B 1106 1168 -> BA8C 1106 1168 11A8 -> BA8D 1106 1168 11A9 -> BA8E 1106 1168 11AA -> BA8F 1106 1168 11AB -> BA90 1106 1168 11AC -> BA91 1106 1168 11AD -> BA92 1106 1168 11AE -> BA93 1106 1168 11AF -> BA94 1106 1168 11B0 -> BA95 1106 1168 11B1 -> BA96 1106 1168 11B2 -> BA97 1106 1168 11B3 -> BA98 1106 1168 11B4 -> BA99 1106 1168 11B5 -> BA9A 1106 1168 11B6 -> BA9B 1106 1168 11B7 -> BA9C 1106 1168 11B8 -> BA9D 1106 1168 11B9 -> BA9E 1106 1168 11BA -> BA9F 1106 1168 11BB -> BAA0 1106 1168 11BC -> BAA1 1106 1168 11BD -> BAA2 1106 1168 11BE -> BAA3 1106 1168 11BF -> BAA4 1106 1168 11C0 -> BAA5 1106 1168 11C1 -> BAA6 1106 1168 11C2 -> BAA7 1106 1169 -> BAA8 1106 1169 11A8 -> BAA9 1106 1169 11A9 -> BAAA 1106 1169 11AA -> BAAB 1106 1169 11AB -> BAAC 1106 1169 11AC -> BAAD 1106 1169 11AD -> BAAE 1106 1169 11AE -> BAAF 1106 1169 11AF -> BAB0 1106 1169 11B0 -> BAB1 1106 1169 11B1 -> BAB2 1106 1169 11B2 -> BAB3 1106 1169 11B3 -> BAB4 1106 1169 11B4 -> BAB5 1106 1169 11B5 -> BAB6 1106 1169 11B6 -> BAB7 1106 1169 11B7 -> BAB8 1106 1169 11B8 -> BAB9 1106 1169 11B9 -> BABA 1106 1169 11BA -> BABB 1106 1169 11BB -> BABC 1106 1169 11BC -> BABD 1106 1169 11BD -> BABE 1106 1169 11BE -> BABF 1106 1169 11BF -> BAC0 1106 1169 11C0 -> BAC1 1106 1169 11C1 -> BAC2 1106 1169 11C2 -> BAC3 1106 116A -> BAC4 1106 116A 11A8 -> BAC5 1106 116A 11A9 -> BAC6 1106 116A 11AA -> BAC7 1106 116A 11AB -> BAC8 1106 116A 11AC -> BAC9 1106 116A 11AD -> BACA 1106 116A 11AE -> BACB 1106 116A 11AF -> BACC 1106 116A 11B0 -> BACD 1106 116A 11B1 -> BACE 1106 116A 11B2 -> BACF 1106 116A 11B3 -> BAD0 1106 116A 11B4 -> BAD1 1106 116A 11B5 -> BAD2 1106 116A 11B6 -> BAD3 1106 116A 11B7 -> BAD4 1106 116A 11B8 -> BAD5 1106 116A 11B9 -> BAD6 1106 116A 11BA -> BAD7 1106 116A 11BB -> BAD8 1106 116A 11BC -> BAD9 1106 116A 11BD -> BADA 1106 116A 11BE -> BADB 1106 116A 11BF -> BADC 1106 116A 11C0 -> BADD 1106 116A 11C1 -> BADE 1106 116A 11C2 -> BADF 1106 116B -> BAE0 1106 116B 11A8 -> BAE1 1106 116B 11A9 -> BAE2 1106 116B 11AA -> BAE3 1106 116B 11AB -> BAE4 1106 116B 11AC -> BAE5 1106 116B 11AD -> BAE6 1106 116B 11AE -> BAE7 1106 116B 11AF -> BAE8 1106 116B 11B0 -> BAE9 1106 116B 11B1 -> BAEA 1106 116B 11B2 -> BAEB 1106 116B 11B3 -> BAEC 1106 116B 11B4 -> BAED 1106 116B 11B5 -> BAEE 1106 116B 11B6 -> BAEF 1106 116B 11B7 -> BAF0 1106 116B 11B8 -> BAF1 1106 116B 11B9 -> BAF2 1106 116B 11BA -> BAF3 1106 116B 11BB -> BAF4 1106 116B 11BC -> BAF5 1106 116B 11BD -> BAF6 1106 116B 11BE -> BAF7 1106 116B 11BF -> BAF8 1106 116B 11C0 -> BAF9 1106 116B 11C1 -> BAFA 1106 116B 11C2 -> BAFB 1106 116C -> BAFC 1106 116C 11A8 -> BAFD 1106 116C 11A9 -> BAFE 1106 116C 11AA -> BAFF 1106 116C 11AB -> BB00 1106 116C 11AC -> BB01 1106 116C 11AD -> BB02 1106 116C 11AE -> BB03 1106 116C 11AF -> BB04 1106 116C 11B0 -> BB05 1106 116C 11B1 -> BB06 1106 116C 11B2 -> BB07 1106 116C 11B3 -> BB08 1106 116C 11B4 -> BB09 1106 116C 11B5 -> BB0A 1106 116C 11B6 -> BB0B 1106 116C 11B7 -> BB0C 1106 116C 11B8 -> BB0D 1106 116C 11B9 -> BB0E 1106 116C 11BA -> BB0F 1106 116C 11BB -> BB10 1106 116C 11BC -> BB11 1106 116C 11BD -> BB12 1106 116C 11BE -> BB13 1106 116C 11BF -> BB14 1106 116C 11C0 -> BB15 1106 116C 11C1 -> BB16 1106 116C 11C2 -> BB17 1106 116D -> BB18 1106 116D 11A8 -> BB19 1106 116D 11A9 -> BB1A 1106 116D 11AA -> BB1B 1106 116D 11AB -> BB1C 1106 116D 11AC -> BB1D 1106 116D 11AD -> BB1E 1106 116D 11AE -> BB1F 1106 116D 11AF -> BB20 1106 116D 11B0 -> BB21 1106 116D 11B1 -> BB22 1106 116D 11B2 -> BB23 1106 116D 11B3 -> BB24 1106 116D 11B4 -> BB25 1106 116D 11B5 -> BB26 1106 116D 11B6 -> BB27 1106 116D 11B7 -> BB28 1106 116D 11B8 -> BB29 1106 116D 11B9 -> BB2A 1106 116D 11BA -> BB2B 1106 116D 11BB -> BB2C 1106 116D 11BC -> BB2D 1106 116D 11BD -> BB2E 1106 116D 11BE -> BB2F 1106 116D 11BF -> BB30 1106 116D 11C0 -> BB31 1106 116D 11C1 -> BB32 1106 116D 11C2 -> BB33 1106 116E -> BB34 1106 116E 11A8 -> BB35 1106 116E 11A9 -> BB36 1106 116E 11AA -> BB37 1106 116E 11AB -> BB38 1106 116E 11AC -> BB39 1106 116E 11AD -> BB3A 1106 116E 11AE -> BB3B 1106 116E 11AF -> BB3C 1106 116E 11B0 -> BB3D 1106 116E 11B1 -> BB3E 1106 116E 11B2 -> BB3F 1106 116E 11B3 -> BB40 1106 116E 11B4 -> BB41 1106 116E 11B5 -> BB42 1106 116E 11B6 -> BB43 1106 116E 11B7 -> BB44 1106 116E 11B8 -> BB45 1106 116E 11B9 -> BB46 1106 116E 11BA -> BB47 1106 116E 11BB -> BB48 1106 116E 11BC -> BB49 1106 116E 11BD -> BB4A 1106 116E 11BE -> BB4B 1106 116E 11BF -> BB4C 1106 116E 11C0 -> BB4D 1106 116E 11C1 -> BB4E 1106 116E 11C2 -> BB4F 1106 116F -> BB50 1106 116F 11A8 -> BB51 1106 116F 11A9 -> BB52 1106 116F 11AA -> BB53 1106 116F 11AB -> BB54 1106 116F 11AC -> BB55 1106 116F 11AD -> BB56 1106 116F 11AE -> BB57 1106 116F 11AF -> BB58 1106 116F 11B0 -> BB59 1106 116F 11B1 -> BB5A 1106 116F 11B2 -> BB5B 1106 116F 11B3 -> BB5C 1106 116F 11B4 -> BB5D 1106 116F 11B5 -> BB5E 1106 116F 11B6 -> BB5F 1106 116F 11B7 -> BB60 1106 116F 11B8 -> BB61 1106 116F 11B9 -> BB62 1106 116F 11BA -> BB63 1106 116F 11BB -> BB64 1106 116F 11BC -> BB65 1106 116F 11BD -> BB66 1106 116F 11BE -> BB67 1106 116F 11BF -> BB68 1106 116F 11C0 -> BB69 1106 116F 11C1 -> BB6A 1106 116F 11C2 -> BB6B 1106 1170 -> BB6C 1106 1170 11A8 -> BB6D 1106 1170 11A9 -> BB6E 1106 1170 11AA -> BB6F 1106 1170 11AB -> BB70 1106 1170 11AC -> BB71 1106 1170 11AD -> BB72 1106 1170 11AE -> BB73 1106 1170 11AF -> BB74 1106 1170 11B0 -> BB75 1106 1170 11B1 -> BB76 1106 1170 11B2 -> BB77 1106 1170 11B3 -> BB78 1106 1170 11B4 -> BB79 1106 1170 11B5 -> BB7A 1106 1170 11B6 -> BB7B 1106 1170 11B7 -> BB7C 1106 1170 11B8 -> BB7D 1106 1170 11B9 -> BB7E 1106 1170 11BA -> BB7F 1106 1170 11BB -> BB80 1106 1170 11BC -> BB81 1106 1170 11BD -> BB82 1106 1170 11BE -> BB83 1106 1170 11BF -> BB84 1106 1170 11C0 -> BB85 1106 1170 11C1 -> BB86 1106 1170 11C2 -> BB87 1106 1171 -> BB88 1106 1171 11A8 -> BB89 1106 1171 11A9 -> BB8A 1106 1171 11AA -> BB8B 1106 1171 11AB -> BB8C 1106 1171 11AC -> BB8D 1106 1171 11AD -> BB8E 1106 1171 11AE -> BB8F 1106 1171 11AF -> BB90 1106 1171 11B0 -> BB91 1106 1171 11B1 -> BB92 1106 1171 11B2 -> BB93 1106 1171 11B3 -> BB94 1106 1171 11B4 -> BB95 1106 1171 11B5 -> BB96 1106 1171 11B6 -> BB97 1106 1171 11B7 -> BB98 1106 1171 11B8 -> BB99 1106 1171 11B9 -> BB9A 1106 1171 11BA -> BB9B 1106 1171 11BB -> BB9C 1106 1171 11BC -> BB9D 1106 1171 11BD -> BB9E 1106 1171 11BE -> BB9F 1106 1171 11BF -> BBA0 1106 1171 11C0 -> BBA1 1106 1171 11C1 -> BBA2 1106 1171 11C2 -> BBA3 1106 1172 -> BBA4 1106 1172 11A8 -> BBA5 1106 1172 11A9 -> BBA6 1106 1172 11AA -> BBA7 1106 1172 11AB -> BBA8 1106 1172 11AC -> BBA9 1106 1172 11AD -> BBAA 1106 1172 11AE -> BBAB 1106 1172 11AF -> BBAC 1106 1172 11B0 -> BBAD 1106 1172 11B1 -> BBAE 1106 1172 11B2 -> BBAF 1106 1172 11B3 -> BBB0 1106 1172 11B4 -> BBB1 1106 1172 11B5 -> BBB2 1106 1172 11B6 -> BBB3 1106 1172 11B7 -> BBB4 1106 1172 11B8 -> BBB5 1106 1172 11B9 -> BBB6 1106 1172 11BA -> BBB7 1106 1172 11BB -> BBB8 1106 1172 11BC -> BBB9 1106 1172 11BD -> BBBA 1106 1172 11BE -> BBBB 1106 1172 11BF -> BBBC 1106 1172 11C0 -> BBBD 1106 1172 11C1 -> BBBE 1106 1172 11C2 -> BBBF 1106 1173 -> BBC0 1106 1173 11A8 -> BBC1 1106 1173 11A9 -> BBC2 1106 1173 11AA -> BBC3 1106 1173 11AB -> BBC4 1106 1173 11AC -> BBC5 1106 1173 11AD -> BBC6 1106 1173 11AE -> BBC7 1106 1173 11AF -> BBC8 1106 1173 11B0 -> BBC9 1106 1173 11B1 -> BBCA 1106 1173 11B2 -> BBCB 1106 1173 11B3 -> BBCC 1106 1173 11B4 -> BBCD 1106 1173 11B5 -> BBCE 1106 1173 11B6 -> BBCF 1106 1173 11B7 -> BBD0 1106 1173 11B8 -> BBD1 1106 1173 11B9 -> BBD2 1106 1173 11BA -> BBD3 1106 1173 11BB -> BBD4 1106 1173 11BC -> BBD5 1106 1173 11BD -> BBD6 1106 1173 11BE -> BBD7 1106 1173 11BF -> BBD8 1106 1173 11C0 -> BBD9 1106 1173 11C1 -> BBDA 1106 1173 11C2 -> BBDB 1106 1174 -> BBDC 1106 1174 11A8 -> BBDD 1106 1174 11A9 -> BBDE 1106 1174 11AA -> BBDF 1106 1174 11AB -> BBE0 1106 1174 11AC -> BBE1 1106 1174 11AD -> BBE2 1106 1174 11AE -> BBE3 1106 1174 11AF -> BBE4 1106 1174 11B0 -> BBE5 1106 1174 11B1 -> BBE6 1106 1174 11B2 -> BBE7 1106 1174 11B3 -> BBE8 1106 1174 11B4 -> BBE9 1106 1174 11B5 -> BBEA 1106 1174 11B6 -> BBEB 1106 1174 11B7 -> BBEC 1106 1174 11B8 -> BBED 1106 1174 11B9 -> BBEE 1106 1174 11BA -> BBEF 1106 1174 11BB -> BBF0 1106 1174 11BC -> BBF1 1106 1174 11BD -> BBF2 1106 1174 11BE -> BBF3 1106 1174 11BF -> BBF4 1106 1174 11C0 -> BBF5 1106 1174 11C1 -> BBF6 1106 1174 11C2 -> BBF7 1106 1175 -> BBF8 1106 1175 11A8 -> BBF9 1106 1175 11A9 -> BBFA 1106 1175 11AA -> BBFB 1106 1175 11AB -> BBFC 1106 1175 11AC -> BBFD 1106 1175 11AD -> BBFE 1106 1175 11AE -> BBFF 1106 1175 11AF -> BC00 1106 1175 11B0 -> BC01 1106 1175 11B1 -> BC02 1106 1175 11B2 -> BC03 1106 1175 11B3 -> BC04 1106 1175 11B4 -> BC05 1106 1175 11B5 -> BC06 1106 1175 11B6 -> BC07 1106 1175 11B7 -> BC08 1106 1175 11B8 -> BC09 1106 1175 11B9 -> BC0A 1106 1175 11BA -> BC0B 1106 1175 11BB -> BC0C 1106 1175 11BC -> BC0D 1106 1175 11BD -> BC0E 1106 1175 11BE -> BC0F 1106 1175 11BF -> BC10 1106 1175 11C0 -> BC11 1106 1175 11C1 -> BC12 1106 1175 11C2 -> BC13 1107 1161 -> BC14 1107 1161 11A8 -> BC15 1107 1161 11A9 -> BC16 1107 1161 11AA -> BC17 1107 1161 11AB -> BC18 1107 1161 11AC -> BC19 1107 1161 11AD -> BC1A 1107 1161 11AE -> BC1B 1107 1161 11AF -> BC1C 1107 1161 11B0 -> BC1D 1107 1161 11B1 -> BC1E 1107 1161 11B2 -> BC1F 1107 1161 11B3 -> BC20 1107 1161 11B4 -> BC21 1107 1161 11B5 -> BC22 1107 1161 11B6 -> BC23 1107 1161 11B7 -> BC24 1107 1161 11B8 -> BC25 1107 1161 11B9 -> BC26 1107 1161 11BA -> BC27 1107 1161 11BB -> BC28 1107 1161 11BC -> BC29 1107 1161 11BD -> BC2A 1107 1161 11BE -> BC2B 1107 1161 11BF -> BC2C 1107 1161 11C0 -> BC2D 1107 1161 11C1 -> BC2E 1107 1161 11C2 -> BC2F 1107 1162 -> BC30 1107 1162 11A8 -> BC31 1107 1162 11A9 -> BC32 1107 1162 11AA -> BC33 1107 1162 11AB -> BC34 1107 1162 11AC -> BC35 1107 1162 11AD -> BC36 1107 1162 11AE -> BC37 1107 1162 11AF -> BC38 1107 1162 11B0 -> BC39 1107 1162 11B1 -> BC3A 1107 1162 11B2 -> BC3B 1107 1162 11B3 -> BC3C 1107 1162 11B4 -> BC3D 1107 1162 11B5 -> BC3E 1107 1162 11B6 -> BC3F 1107 1162 11B7 -> BC40 1107 1162 11B8 -> BC41 1107 1162 11B9 -> BC42 1107 1162 11BA -> BC43 1107 1162 11BB -> BC44 1107 1162 11BC -> BC45 1107 1162 11BD -> BC46 1107 1162 11BE -> BC47 1107 1162 11BF -> BC48 1107 1162 11C0 -> BC49 1107 1162 11C1 -> BC4A 1107 1162 11C2 -> BC4B 1107 1163 -> BC4C 1107 1163 11A8 -> BC4D 1107 1163 11A9 -> BC4E 1107 1163 11AA -> BC4F 1107 1163 11AB -> BC50 1107 1163 11AC -> BC51 1107 1163 11AD -> BC52 1107 1163 11AE -> BC53 1107 1163 11AF -> BC54 1107 1163 11B0 -> BC55 1107 1163 11B1 -> BC56 1107 1163 11B2 -> BC57 1107 1163 11B3 -> BC58 1107 1163 11B4 -> BC59 1107 1163 11B5 -> BC5A 1107 1163 11B6 -> BC5B 1107 1163 11B7 -> BC5C 1107 1163 11B8 -> BC5D 1107 1163 11B9 -> BC5E 1107 1163 11BA -> BC5F 1107 1163 11BB -> BC60 1107 1163 11BC -> BC61 1107 1163 11BD -> BC62 1107 1163 11BE -> BC63 1107 1163 11BF -> BC64 1107 1163 11C0 -> BC65 1107 1163 11C1 -> BC66 1107 1163 11C2 -> BC67 1107 1164 -> BC68 1107 1164 11A8 -> BC69 1107 1164 11A9 -> BC6A 1107 1164 11AA -> BC6B 1107 1164 11AB -> BC6C 1107 1164 11AC -> BC6D 1107 1164 11AD -> BC6E 1107 1164 11AE -> BC6F 1107 1164 11AF -> BC70 1107 1164 11B0 -> BC71 1107 1164 11B1 -> BC72 1107 1164 11B2 -> BC73 1107 1164 11B3 -> BC74 1107 1164 11B4 -> BC75 1107 1164 11B5 -> BC76 1107 1164 11B6 -> BC77 1107 1164 11B7 -> BC78 1107 1164 11B8 -> BC79 1107 1164 11B9 -> BC7A 1107 1164 11BA -> BC7B 1107 1164 11BB -> BC7C 1107 1164 11BC -> BC7D 1107 1164 11BD -> BC7E 1107 1164 11BE -> BC7F 1107 1164 11BF -> BC80 1107 1164 11C0 -> BC81 1107 1164 11C1 -> BC82 1107 1164 11C2 -> BC83 1107 1165 -> BC84 1107 1165 11A8 -> BC85 1107 1165 11A9 -> BC86 1107 1165 11AA -> BC87 1107 1165 11AB -> BC88 1107 1165 11AC -> BC89 1107 1165 11AD -> BC8A 1107 1165 11AE -> BC8B 1107 1165 11AF -> BC8C 1107 1165 11B0 -> BC8D 1107 1165 11B1 -> BC8E 1107 1165 11B2 -> BC8F 1107 1165 11B3 -> BC90 1107 1165 11B4 -> BC91 1107 1165 11B5 -> BC92 1107 1165 11B6 -> BC93 1107 1165 11B7 -> BC94 1107 1165 11B8 -> BC95 1107 1165 11B9 -> BC96 1107 1165 11BA -> BC97 1107 1165 11BB -> BC98 1107 1165 11BC -> BC99 1107 1165 11BD -> BC9A 1107 1165 11BE -> BC9B 1107 1165 11BF -> BC9C 1107 1165 11C0 -> BC9D 1107 1165 11C1 -> BC9E 1107 1165 11C2 -> BC9F 1107 1166 -> BCA0 1107 1166 11A8 -> BCA1 1107 1166 11A9 -> BCA2 1107 1166 11AA -> BCA3 1107 1166 11AB -> BCA4 1107 1166 11AC -> BCA5 1107 1166 11AD -> BCA6 1107 1166 11AE -> BCA7 1107 1166 11AF -> BCA8 1107 1166 11B0 -> BCA9 1107 1166 11B1 -> BCAA 1107 1166 11B2 -> BCAB 1107 1166 11B3 -> BCAC 1107 1166 11B4 -> BCAD 1107 1166 11B5 -> BCAE 1107 1166 11B6 -> BCAF 1107 1166 11B7 -> BCB0 1107 1166 11B8 -> BCB1 1107 1166 11B9 -> BCB2 1107 1166 11BA -> BCB3 1107 1166 11BB -> BCB4 1107 1166 11BC -> BCB5 1107 1166 11BD -> BCB6 1107 1166 11BE -> BCB7 1107 1166 11BF -> BCB8 1107 1166 11C0 -> BCB9 1107 1166 11C1 -> BCBA 1107 1166 11C2 -> BCBB 1107 1167 -> BCBC 1107 1167 11A8 -> BCBD 1107 1167 11A9 -> BCBE 1107 1167 11AA -> BCBF 1107 1167 11AB -> BCC0 1107 1167 11AC -> BCC1 1107 1167 11AD -> BCC2 1107 1167 11AE -> BCC3 1107 1167 11AF -> BCC4 1107 1167 11B0 -> BCC5 1107 1167 11B1 -> BCC6 1107 1167 11B2 -> BCC7 1107 1167 11B3 -> BCC8 1107 1167 11B4 -> BCC9 1107 1167 11B5 -> BCCA 1107 1167 11B6 -> BCCB 1107 1167 11B7 -> BCCC 1107 1167 11B8 -> BCCD 1107 1167 11B9 -> BCCE 1107 1167 11BA -> BCCF 1107 1167 11BB -> BCD0 1107 1167 11BC -> BCD1 1107 1167 11BD -> BCD2 1107 1167 11BE -> BCD3 1107 1167 11BF -> BCD4 1107 1167 11C0 -> BCD5 1107 1167 11C1 -> BCD6 1107 1167 11C2 -> BCD7 1107 1168 -> BCD8 1107 1168 11A8 -> BCD9 1107 1168 11A9 -> BCDA 1107 1168 11AA -> BCDB 1107 1168 11AB -> BCDC 1107 1168 11AC -> BCDD 1107 1168 11AD -> BCDE 1107 1168 11AE -> BCDF 1107 1168 11AF -> BCE0 1107 1168 11B0 -> BCE1 1107 1168 11B1 -> BCE2 1107 1168 11B2 -> BCE3 1107 1168 11B3 -> BCE4 1107 1168 11B4 -> BCE5 1107 1168 11B5 -> BCE6 1107 1168 11B6 -> BCE7 1107 1168 11B7 -> BCE8 1107 1168 11B8 -> BCE9 1107 1168 11B9 -> BCEA 1107 1168 11BA -> BCEB 1107 1168 11BB -> BCEC 1107 1168 11BC -> BCED 1107 1168 11BD -> BCEE 1107 1168 11BE -> BCEF 1107 1168 11BF -> BCF0 1107 1168 11C0 -> BCF1 1107 1168 11C1 -> BCF2 1107 1168 11C2 -> BCF3 1107 1169 -> BCF4 1107 1169 11A8 -> BCF5 1107 1169 11A9 -> BCF6 1107 1169 11AA -> BCF7 1107 1169 11AB -> BCF8 1107 1169 11AC -> BCF9 1107 1169 11AD -> BCFA 1107 1169 11AE -> BCFB 1107 1169 11AF -> BCFC 1107 1169 11B0 -> BCFD 1107 1169 11B1 -> BCFE 1107 1169 11B2 -> BCFF 1107 1169 11B3 -> BD00 1107 1169 11B4 -> BD01 1107 1169 11B5 -> BD02 1107 1169 11B6 -> BD03 1107 1169 11B7 -> BD04 1107 1169 11B8 -> BD05 1107 1169 11B9 -> BD06 1107 1169 11BA -> BD07 1107 1169 11BB -> BD08 1107 1169 11BC -> BD09 1107 1169 11BD -> BD0A 1107 1169 11BE -> BD0B 1107 1169 11BF -> BD0C 1107 1169 11C0 -> BD0D 1107 1169 11C1 -> BD0E 1107 1169 11C2 -> BD0F 1107 116A -> BD10 1107 116A 11A8 -> BD11 1107 116A 11A9 -> BD12 1107 116A 11AA -> BD13 1107 116A 11AB -> BD14 1107 116A 11AC -> BD15 1107 116A 11AD -> BD16 1107 116A 11AE -> BD17 1107 116A 11AF -> BD18 1107 116A 11B0 -> BD19 1107 116A 11B1 -> BD1A 1107 116A 11B2 -> BD1B 1107 116A 11B3 -> BD1C 1107 116A 11B4 -> BD1D 1107 116A 11B5 -> BD1E 1107 116A 11B6 -> BD1F 1107 116A 11B7 -> BD20 1107 116A 11B8 -> BD21 1107 116A 11B9 -> BD22 1107 116A 11BA -> BD23 1107 116A 11BB -> BD24 1107 116A 11BC -> BD25 1107 116A 11BD -> BD26 1107 116A 11BE -> BD27 1107 116A 11BF -> BD28 1107 116A 11C0 -> BD29 1107 116A 11C1 -> BD2A 1107 116A 11C2 -> BD2B 1107 116B -> BD2C 1107 116B 11A8 -> BD2D 1107 116B 11A9 -> BD2E 1107 116B 11AA -> BD2F 1107 116B 11AB -> BD30 1107 116B 11AC -> BD31 1107 116B 11AD -> BD32 1107 116B 11AE -> BD33 1107 116B 11AF -> BD34 1107 116B 11B0 -> BD35 1107 116B 11B1 -> BD36 1107 116B 11B2 -> BD37 1107 116B 11B3 -> BD38 1107 116B 11B4 -> BD39 1107 116B 11B5 -> BD3A 1107 116B 11B6 -> BD3B 1107 116B 11B7 -> BD3C 1107 116B 11B8 -> BD3D 1107 116B 11B9 -> BD3E 1107 116B 11BA -> BD3F 1107 116B 11BB -> BD40 1107 116B 11BC -> BD41 1107 116B 11BD -> BD42 1107 116B 11BE -> BD43 1107 116B 11BF -> BD44 1107 116B 11C0 -> BD45 1107 116B 11C1 -> BD46 1107 116B 11C2 -> BD47 1107 116C -> BD48 1107 116C 11A8 -> BD49 1107 116C 11A9 -> BD4A 1107 116C 11AA -> BD4B 1107 116C 11AB -> BD4C 1107 116C 11AC -> BD4D 1107 116C 11AD -> BD4E 1107 116C 11AE -> BD4F 1107 116C 11AF -> BD50 1107 116C 11B0 -> BD51 1107 116C 11B1 -> BD52 1107 116C 11B2 -> BD53 1107 116C 11B3 -> BD54 1107 116C 11B4 -> BD55 1107 116C 11B5 -> BD56 1107 116C 11B6 -> BD57 1107 116C 11B7 -> BD58 1107 116C 11B8 -> BD59 1107 116C 11B9 -> BD5A 1107 116C 11BA -> BD5B 1107 116C 11BB -> BD5C 1107 116C 11BC -> BD5D 1107 116C 11BD -> BD5E 1107 116C 11BE -> BD5F 1107 116C 11BF -> BD60 1107 116C 11C0 -> BD61 1107 116C 11C1 -> BD62 1107 116C 11C2 -> BD63 1107 116D -> BD64 1107 116D 11A8 -> BD65 1107 116D 11A9 -> BD66 1107 116D 11AA -> BD67 1107 116D 11AB -> BD68 1107 116D 11AC -> BD69 1107 116D 11AD -> BD6A 1107 116D 11AE -> BD6B 1107 116D 11AF -> BD6C 1107 116D 11B0 -> BD6D 1107 116D 11B1 -> BD6E 1107 116D 11B2 -> BD6F 1107 116D 11B3 -> BD70 1107 116D 11B4 -> BD71 1107 116D 11B5 -> BD72 1107 116D 11B6 -> BD73 1107 116D 11B7 -> BD74 1107 116D 11B8 -> BD75 1107 116D 11B9 -> BD76 1107 116D 11BA -> BD77 1107 116D 11BB -> BD78 1107 116D 11BC -> BD79 1107 116D 11BD -> BD7A 1107 116D 11BE -> BD7B 1107 116D 11BF -> BD7C 1107 116D 11C0 -> BD7D 1107 116D 11C1 -> BD7E 1107 116D 11C2 -> BD7F 1107 116E -> BD80 1107 116E 11A8 -> BD81 1107 116E 11A9 -> BD82 1107 116E 11AA -> BD83 1107 116E 11AB -> BD84 1107 116E 11AC -> BD85 1107 116E 11AD -> BD86 1107 116E 11AE -> BD87 1107 116E 11AF -> BD88 1107 116E 11B0 -> BD89 1107 116E 11B1 -> BD8A 1107 116E 11B2 -> BD8B 1107 116E 11B3 -> BD8C 1107 116E 11B4 -> BD8D 1107 116E 11B5 -> BD8E 1107 116E 11B6 -> BD8F 1107 116E 11B7 -> BD90 1107 116E 11B8 -> BD91 1107 116E 11B9 -> BD92 1107 116E 11BA -> BD93 1107 116E 11BB -> BD94 1107 116E 11BC -> BD95 1107 116E 11BD -> BD96 1107 116E 11BE -> BD97 1107 116E 11BF -> BD98 1107 116E 11C0 -> BD99 1107 116E 11C1 -> BD9A 1107 116E 11C2 -> BD9B 1107 116F -> BD9C 1107 116F 11A8 -> BD9D 1107 116F 11A9 -> BD9E 1107 116F 11AA -> BD9F 1107 116F 11AB -> BDA0 1107 116F 11AC -> BDA1 1107 116F 11AD -> BDA2 1107 116F 11AE -> BDA3 1107 116F 11AF -> BDA4 1107 116F 11B0 -> BDA5 1107 116F 11B1 -> BDA6 1107 116F 11B2 -> BDA7 1107 116F 11B3 -> BDA8 1107 116F 11B4 -> BDA9 1107 116F 11B5 -> BDAA 1107 116F 11B6 -> BDAB 1107 116F 11B7 -> BDAC 1107 116F 11B8 -> BDAD 1107 116F 11B9 -> BDAE 1107 116F 11BA -> BDAF 1107 116F 11BB -> BDB0 1107 116F 11BC -> BDB1 1107 116F 11BD -> BDB2 1107 116F 11BE -> BDB3 1107 116F 11BF -> BDB4 1107 116F 11C0 -> BDB5 1107 116F 11C1 -> BDB6 1107 116F 11C2 -> BDB7 1107 1170 -> BDB8 1107 1170 11A8 -> BDB9 1107 1170 11A9 -> BDBA 1107 1170 11AA -> BDBB 1107 1170 11AB -> BDBC 1107 1170 11AC -> BDBD 1107 1170 11AD -> BDBE 1107 1170 11AE -> BDBF 1107 1170 11AF -> BDC0 1107 1170 11B0 -> BDC1 1107 1170 11B1 -> BDC2 1107 1170 11B2 -> BDC3 1107 1170 11B3 -> BDC4 1107 1170 11B4 -> BDC5 1107 1170 11B5 -> BDC6 1107 1170 11B6 -> BDC7 1107 1170 11B7 -> BDC8 1107 1170 11B8 -> BDC9 1107 1170 11B9 -> BDCA 1107 1170 11BA -> BDCB 1107 1170 11BB -> BDCC 1107 1170 11BC -> BDCD 1107 1170 11BD -> BDCE 1107 1170 11BE -> BDCF 1107 1170 11BF -> BDD0 1107 1170 11C0 -> BDD1 1107 1170 11C1 -> BDD2 1107 1170 11C2 -> BDD3 1107 1171 -> BDD4 1107 1171 11A8 -> BDD5 1107 1171 11A9 -> BDD6 1107 1171 11AA -> BDD7 1107 1171 11AB -> BDD8 1107 1171 11AC -> BDD9 1107 1171 11AD -> BDDA 1107 1171 11AE -> BDDB 1107 1171 11AF -> BDDC 1107 1171 11B0 -> BDDD 1107 1171 11B1 -> BDDE 1107 1171 11B2 -> BDDF 1107 1171 11B3 -> BDE0 1107 1171 11B4 -> BDE1 1107 1171 11B5 -> BDE2 1107 1171 11B6 -> BDE3 1107 1171 11B7 -> BDE4 1107 1171 11B8 -> BDE5 1107 1171 11B9 -> BDE6 1107 1171 11BA -> BDE7 1107 1171 11BB -> BDE8 1107 1171 11BC -> BDE9 1107 1171 11BD -> BDEA 1107 1171 11BE -> BDEB 1107 1171 11BF -> BDEC 1107 1171 11C0 -> BDED 1107 1171 11C1 -> BDEE 1107 1171 11C2 -> BDEF 1107 1172 -> BDF0 1107 1172 11A8 -> BDF1 1107 1172 11A9 -> BDF2 1107 1172 11AA -> BDF3 1107 1172 11AB -> BDF4 1107 1172 11AC -> BDF5 1107 1172 11AD -> BDF6 1107 1172 11AE -> BDF7 1107 1172 11AF -> BDF8 1107 1172 11B0 -> BDF9 1107 1172 11B1 -> BDFA 1107 1172 11B2 -> BDFB 1107 1172 11B3 -> BDFC 1107 1172 11B4 -> BDFD 1107 1172 11B5 -> BDFE 1107 1172 11B6 -> BDFF 1107 1172 11B7 -> BE00 1107 1172 11B8 -> BE01 1107 1172 11B9 -> BE02 1107 1172 11BA -> BE03 1107 1172 11BB -> BE04 1107 1172 11BC -> BE05 1107 1172 11BD -> BE06 1107 1172 11BE -> BE07 1107 1172 11BF -> BE08 1107 1172 11C0 -> BE09 1107 1172 11C1 -> BE0A 1107 1172 11C2 -> BE0B 1107 1173 -> BE0C 1107 1173 11A8 -> BE0D 1107 1173 11A9 -> BE0E 1107 1173 11AA -> BE0F 1107 1173 11AB -> BE10 1107 1173 11AC -> BE11 1107 1173 11AD -> BE12 1107 1173 11AE -> BE13 1107 1173 11AF -> BE14 1107 1173 11B0 -> BE15 1107 1173 11B1 -> BE16 1107 1173 11B2 -> BE17 1107 1173 11B3 -> BE18 1107 1173 11B4 -> BE19 1107 1173 11B5 -> BE1A 1107 1173 11B6 -> BE1B 1107 1173 11B7 -> BE1C 1107 1173 11B8 -> BE1D 1107 1173 11B9 -> BE1E 1107 1173 11BA -> BE1F 1107 1173 11BB -> BE20 1107 1173 11BC -> BE21 1107 1173 11BD -> BE22 1107 1173 11BE -> BE23 1107 1173 11BF -> BE24 1107 1173 11C0 -> BE25 1107 1173 11C1 -> BE26 1107 1173 11C2 -> BE27 1107 1174 -> BE28 1107 1174 11A8 -> BE29 1107 1174 11A9 -> BE2A 1107 1174 11AA -> BE2B 1107 1174 11AB -> BE2C 1107 1174 11AC -> BE2D 1107 1174 11AD -> BE2E 1107 1174 11AE -> BE2F 1107 1174 11AF -> BE30 1107 1174 11B0 -> BE31 1107 1174 11B1 -> BE32 1107 1174 11B2 -> BE33 1107 1174 11B3 -> BE34 1107 1174 11B4 -> BE35 1107 1174 11B5 -> BE36 1107 1174 11B6 -> BE37 1107 1174 11B7 -> BE38 1107 1174 11B8 -> BE39 1107 1174 11B9 -> BE3A 1107 1174 11BA -> BE3B 1107 1174 11BB -> BE3C 1107 1174 11BC -> BE3D 1107 1174 11BD -> BE3E 1107 1174 11BE -> BE3F 1107 1174 11BF -> BE40 1107 1174 11C0 -> BE41 1107 1174 11C1 -> BE42 1107 1174 11C2 -> BE43 1107 1175 -> BE44 1107 1175 11A8 -> BE45 1107 1175 11A9 -> BE46 1107 1175 11AA -> BE47 1107 1175 11AB -> BE48 1107 1175 11AC -> BE49 1107 1175 11AD -> BE4A 1107 1175 11AE -> BE4B 1107 1175 11AF -> BE4C 1107 1175 11B0 -> BE4D 1107 1175 11B1 -> BE4E 1107 1175 11B2 -> BE4F 1107 1175 11B3 -> BE50 1107 1175 11B4 -> BE51 1107 1175 11B5 -> BE52 1107 1175 11B6 -> BE53 1107 1175 11B7 -> BE54 1107 1175 11B8 -> BE55 1107 1175 11B9 -> BE56 1107 1175 11BA -> BE57 1107 1175 11BB -> BE58 1107 1175 11BC -> BE59 1107 1175 11BD -> BE5A 1107 1175 11BE -> BE5B 1107 1175 11BF -> BE5C 1107 1175 11C0 -> BE5D 1107 1175 11C1 -> BE5E 1107 1175 11C2 -> BE5F 1108 1161 -> BE60 1108 1161 11A8 -> BE61 1108 1161 11A9 -> BE62 1108 1161 11AA -> BE63 1108 1161 11AB -> BE64 1108 1161 11AC -> BE65 1108 1161 11AD -> BE66 1108 1161 11AE -> BE67 1108 1161 11AF -> BE68 1108 1161 11B0 -> BE69 1108 1161 11B1 -> BE6A 1108 1161 11B2 -> BE6B 1108 1161 11B3 -> BE6C 1108 1161 11B4 -> BE6D 1108 1161 11B5 -> BE6E 1108 1161 11B6 -> BE6F 1108 1161 11B7 -> BE70 1108 1161 11B8 -> BE71 1108 1161 11B9 -> BE72 1108 1161 11BA -> BE73 1108 1161 11BB -> BE74 1108 1161 11BC -> BE75 1108 1161 11BD -> BE76 1108 1161 11BE -> BE77 1108 1161 11BF -> BE78 1108 1161 11C0 -> BE79 1108 1161 11C1 -> BE7A 1108 1161 11C2 -> BE7B 1108 1162 -> BE7C 1108 1162 11A8 -> BE7D 1108 1162 11A9 -> BE7E 1108 1162 11AA -> BE7F 1108 1162 11AB -> BE80 1108 1162 11AC -> BE81 1108 1162 11AD -> BE82 1108 1162 11AE -> BE83 1108 1162 11AF -> BE84 1108 1162 11B0 -> BE85 1108 1162 11B1 -> BE86 1108 1162 11B2 -> BE87 1108 1162 11B3 -> BE88 1108 1162 11B4 -> BE89 1108 1162 11B5 -> BE8A 1108 1162 11B6 -> BE8B 1108 1162 11B7 -> BE8C 1108 1162 11B8 -> BE8D 1108 1162 11B9 -> BE8E 1108 1162 11BA -> BE8F 1108 1162 11BB -> BE90 1108 1162 11BC -> BE91 1108 1162 11BD -> BE92 1108 1162 11BE -> BE93 1108 1162 11BF -> BE94 1108 1162 11C0 -> BE95 1108 1162 11C1 -> BE96 1108 1162 11C2 -> BE97 1108 1163 -> BE98 1108 1163 11A8 -> BE99 1108 1163 11A9 -> BE9A 1108 1163 11AA -> BE9B 1108 1163 11AB -> BE9C 1108 1163 11AC -> BE9D 1108 1163 11AD -> BE9E 1108 1163 11AE -> BE9F 1108 1163 11AF -> BEA0 1108 1163 11B0 -> BEA1 1108 1163 11B1 -> BEA2 1108 1163 11B2 -> BEA3 1108 1163 11B3 -> BEA4 1108 1163 11B4 -> BEA5 1108 1163 11B5 -> BEA6 1108 1163 11B6 -> BEA7 1108 1163 11B7 -> BEA8 1108 1163 11B8 -> BEA9 1108 1163 11B9 -> BEAA 1108 1163 11BA -> BEAB 1108 1163 11BB -> BEAC 1108 1163 11BC -> BEAD 1108 1163 11BD -> BEAE 1108 1163 11BE -> BEAF 1108 1163 11BF -> BEB0 1108 1163 11C0 -> BEB1 1108 1163 11C1 -> BEB2 1108 1163 11C2 -> BEB3 1108 1164 -> BEB4 1108 1164 11A8 -> BEB5 1108 1164 11A9 -> BEB6 1108 1164 11AA -> BEB7 1108 1164 11AB -> BEB8 1108 1164 11AC -> BEB9 1108 1164 11AD -> BEBA 1108 1164 11AE -> BEBB 1108 1164 11AF -> BEBC 1108 1164 11B0 -> BEBD 1108 1164 11B1 -> BEBE 1108 1164 11B2 -> BEBF 1108 1164 11B3 -> BEC0 1108 1164 11B4 -> BEC1 1108 1164 11B5 -> BEC2 1108 1164 11B6 -> BEC3 1108 1164 11B7 -> BEC4 1108 1164 11B8 -> BEC5 1108 1164 11B9 -> BEC6 1108 1164 11BA -> BEC7 1108 1164 11BB -> BEC8 1108 1164 11BC -> BEC9 1108 1164 11BD -> BECA 1108 1164 11BE -> BECB 1108 1164 11BF -> BECC 1108 1164 11C0 -> BECD 1108 1164 11C1 -> BECE 1108 1164 11C2 -> BECF 1108 1165 -> BED0 1108 1165 11A8 -> BED1 1108 1165 11A9 -> BED2 1108 1165 11AA -> BED3 1108 1165 11AB -> BED4 1108 1165 11AC -> BED5 1108 1165 11AD -> BED6 1108 1165 11AE -> BED7 1108 1165 11AF -> BED8 1108 1165 11B0 -> BED9 1108 1165 11B1 -> BEDA 1108 1165 11B2 -> BEDB 1108 1165 11B3 -> BEDC 1108 1165 11B4 -> BEDD 1108 1165 11B5 -> BEDE 1108 1165 11B6 -> BEDF 1108 1165 11B7 -> BEE0 1108 1165 11B8 -> BEE1 1108 1165 11B9 -> BEE2 1108 1165 11BA -> BEE3 1108 1165 11BB -> BEE4 1108 1165 11BC -> BEE5 1108 1165 11BD -> BEE6 1108 1165 11BE -> BEE7 1108 1165 11BF -> BEE8 1108 1165 11C0 -> BEE9 1108 1165 11C1 -> BEEA 1108 1165 11C2 -> BEEB 1108 1166 -> BEEC 1108 1166 11A8 -> BEED 1108 1166 11A9 -> BEEE 1108 1166 11AA -> BEEF 1108 1166 11AB -> BEF0 1108 1166 11AC -> BEF1 1108 1166 11AD -> BEF2 1108 1166 11AE -> BEF3 1108 1166 11AF -> BEF4 1108 1166 11B0 -> BEF5 1108 1166 11B1 -> BEF6 1108 1166 11B2 -> BEF7 1108 1166 11B3 -> BEF8 1108 1166 11B4 -> BEF9 1108 1166 11B5 -> BEFA 1108 1166 11B6 -> BEFB 1108 1166 11B7 -> BEFC 1108 1166 11B8 -> BEFD 1108 1166 11B9 -> BEFE 1108 1166 11BA -> BEFF 1108 1166 11BB -> BF00 1108 1166 11BC -> BF01 1108 1166 11BD -> BF02 1108 1166 11BE -> BF03 1108 1166 11BF -> BF04 1108 1166 11C0 -> BF05 1108 1166 11C1 -> BF06 1108 1166 11C2 -> BF07 1108 1167 -> BF08 1108 1167 11A8 -> BF09 1108 1167 11A9 -> BF0A 1108 1167 11AA -> BF0B 1108 1167 11AB -> BF0C 1108 1167 11AC -> BF0D 1108 1167 11AD -> BF0E 1108 1167 11AE -> BF0F 1108 1167 11AF -> BF10 1108 1167 11B0 -> BF11 1108 1167 11B1 -> BF12 1108 1167 11B2 -> BF13 1108 1167 11B3 -> BF14 1108 1167 11B4 -> BF15 1108 1167 11B5 -> BF16 1108 1167 11B6 -> BF17 1108 1167 11B7 -> BF18 1108 1167 11B8 -> BF19 1108 1167 11B9 -> BF1A 1108 1167 11BA -> BF1B 1108 1167 11BB -> BF1C 1108 1167 11BC -> BF1D 1108 1167 11BD -> BF1E 1108 1167 11BE -> BF1F 1108 1167 11BF -> BF20 1108 1167 11C0 -> BF21 1108 1167 11C1 -> BF22 1108 1167 11C2 -> BF23 1108 1168 -> BF24 1108 1168 11A8 -> BF25 1108 1168 11A9 -> BF26 1108 1168 11AA -> BF27 1108 1168 11AB -> BF28 1108 1168 11AC -> BF29 1108 1168 11AD -> BF2A 1108 1168 11AE -> BF2B 1108 1168 11AF -> BF2C 1108 1168 11B0 -> BF2D 1108 1168 11B1 -> BF2E 1108 1168 11B2 -> BF2F 1108 1168 11B3 -> BF30 1108 1168 11B4 -> BF31 1108 1168 11B5 -> BF32 1108 1168 11B6 -> BF33 1108 1168 11B7 -> BF34 1108 1168 11B8 -> BF35 1108 1168 11B9 -> BF36 1108 1168 11BA -> BF37 1108 1168 11BB -> BF38 1108 1168 11BC -> BF39 1108 1168 11BD -> BF3A 1108 1168 11BE -> BF3B 1108 1168 11BF -> BF3C 1108 1168 11C0 -> BF3D 1108 1168 11C1 -> BF3E 1108 1168 11C2 -> BF3F 1108 1169 -> BF40 1108 1169 11A8 -> BF41 1108 1169 11A9 -> BF42 1108 1169 11AA -> BF43 1108 1169 11AB -> BF44 1108 1169 11AC -> BF45 1108 1169 11AD -> BF46 1108 1169 11AE -> BF47 1108 1169 11AF -> BF48 1108 1169 11B0 -> BF49 1108 1169 11B1 -> BF4A 1108 1169 11B2 -> BF4B 1108 1169 11B3 -> BF4C 1108 1169 11B4 -> BF4D 1108 1169 11B5 -> BF4E 1108 1169 11B6 -> BF4F 1108 1169 11B7 -> BF50 1108 1169 11B8 -> BF51 1108 1169 11B9 -> BF52 1108 1169 11BA -> BF53 1108 1169 11BB -> BF54 1108 1169 11BC -> BF55 1108 1169 11BD -> BF56 1108 1169 11BE -> BF57 1108 1169 11BF -> BF58 1108 1169 11C0 -> BF59 1108 1169 11C1 -> BF5A 1108 1169 11C2 -> BF5B 1108 116A -> BF5C 1108 116A 11A8 -> BF5D 1108 116A 11A9 -> BF5E 1108 116A 11AA -> BF5F 1108 116A 11AB -> BF60 1108 116A 11AC -> BF61 1108 116A 11AD -> BF62 1108 116A 11AE -> BF63 1108 116A 11AF -> BF64 1108 116A 11B0 -> BF65 1108 116A 11B1 -> BF66 1108 116A 11B2 -> BF67 1108 116A 11B3 -> BF68 1108 116A 11B4 -> BF69 1108 116A 11B5 -> BF6A 1108 116A 11B6 -> BF6B 1108 116A 11B7 -> BF6C 1108 116A 11B8 -> BF6D 1108 116A 11B9 -> BF6E 1108 116A 11BA -> BF6F 1108 116A 11BB -> BF70 1108 116A 11BC -> BF71 1108 116A 11BD -> BF72 1108 116A 11BE -> BF73 1108 116A 11BF -> BF74 1108 116A 11C0 -> BF75 1108 116A 11C1 -> BF76 1108 116A 11C2 -> BF77 1108 116B -> BF78 1108 116B 11A8 -> BF79 1108 116B 11A9 -> BF7A 1108 116B 11AA -> BF7B 1108 116B 11AB -> BF7C 1108 116B 11AC -> BF7D 1108 116B 11AD -> BF7E 1108 116B 11AE -> BF7F 1108 116B 11AF -> BF80 1108 116B 11B0 -> BF81 1108 116B 11B1 -> BF82 1108 116B 11B2 -> BF83 1108 116B 11B3 -> BF84 1108 116B 11B4 -> BF85 1108 116B 11B5 -> BF86 1108 116B 11B6 -> BF87 1108 116B 11B7 -> BF88 1108 116B 11B8 -> BF89 1108 116B 11B9 -> BF8A 1108 116B 11BA -> BF8B 1108 116B 11BB -> BF8C 1108 116B 11BC -> BF8D 1108 116B 11BD -> BF8E 1108 116B 11BE -> BF8F 1108 116B 11BF -> BF90 1108 116B 11C0 -> BF91 1108 116B 11C1 -> BF92 1108 116B 11C2 -> BF93 1108 116C -> BF94 1108 116C 11A8 -> BF95 1108 116C 11A9 -> BF96 1108 116C 11AA -> BF97 1108 116C 11AB -> BF98 1108 116C 11AC -> BF99 1108 116C 11AD -> BF9A 1108 116C 11AE -> BF9B 1108 116C 11AF -> BF9C 1108 116C 11B0 -> BF9D 1108 116C 11B1 -> BF9E 1108 116C 11B2 -> BF9F 1108 116C 11B3 -> BFA0 1108 116C 11B4 -> BFA1 1108 116C 11B5 -> BFA2 1108 116C 11B6 -> BFA3 1108 116C 11B7 -> BFA4 1108 116C 11B8 -> BFA5 1108 116C 11B9 -> BFA6 1108 116C 11BA -> BFA7 1108 116C 11BB -> BFA8 1108 116C 11BC -> BFA9 1108 116C 11BD -> BFAA 1108 116C 11BE -> BFAB 1108 116C 11BF -> BFAC 1108 116C 11C0 -> BFAD 1108 116C 11C1 -> BFAE 1108 116C 11C2 -> BFAF 1108 116D -> BFB0 1108 116D 11A8 -> BFB1 1108 116D 11A9 -> BFB2 1108 116D 11AA -> BFB3 1108 116D 11AB -> BFB4 1108 116D 11AC -> BFB5 1108 116D 11AD -> BFB6 1108 116D 11AE -> BFB7 1108 116D 11AF -> BFB8 1108 116D 11B0 -> BFB9 1108 116D 11B1 -> BFBA 1108 116D 11B2 -> BFBB 1108 116D 11B3 -> BFBC 1108 116D 11B4 -> BFBD 1108 116D 11B5 -> BFBE 1108 116D 11B6 -> BFBF 1108 116D 11B7 -> BFC0 1108 116D 11B8 -> BFC1 1108 116D 11B9 -> BFC2 1108 116D 11BA -> BFC3 1108 116D 11BB -> BFC4 1108 116D 11BC -> BFC5 1108 116D 11BD -> BFC6 1108 116D 11BE -> BFC7 1108 116D 11BF -> BFC8 1108 116D 11C0 -> BFC9 1108 116D 11C1 -> BFCA 1108 116D 11C2 -> BFCB 1108 116E -> BFCC 1108 116E 11A8 -> BFCD 1108 116E 11A9 -> BFCE 1108 116E 11AA -> BFCF 1108 116E 11AB -> BFD0 1108 116E 11AC -> BFD1 1108 116E 11AD -> BFD2 1108 116E 11AE -> BFD3 1108 116E 11AF -> BFD4 1108 116E 11B0 -> BFD5 1108 116E 11B1 -> BFD6 1108 116E 11B2 -> BFD7 1108 116E 11B3 -> BFD8 1108 116E 11B4 -> BFD9 1108 116E 11B5 -> BFDA 1108 116E 11B6 -> BFDB 1108 116E 11B7 -> BFDC 1108 116E 11B8 -> BFDD 1108 116E 11B9 -> BFDE 1108 116E 11BA -> BFDF 1108 116E 11BB -> BFE0 1108 116E 11BC -> BFE1 1108 116E 11BD -> BFE2 1108 116E 11BE -> BFE3 1108 116E 11BF -> BFE4 1108 116E 11C0 -> BFE5 1108 116E 11C1 -> BFE6 1108 116E 11C2 -> BFE7 1108 116F -> BFE8 1108 116F 11A8 -> BFE9 1108 116F 11A9 -> BFEA 1108 116F 11AA -> BFEB 1108 116F 11AB -> BFEC 1108 116F 11AC -> BFED 1108 116F 11AD -> BFEE 1108 116F 11AE -> BFEF 1108 116F 11AF -> BFF0 1108 116F 11B0 -> BFF1 1108 116F 11B1 -> BFF2 1108 116F 11B2 -> BFF3 1108 116F 11B3 -> BFF4 1108 116F 11B4 -> BFF5 1108 116F 11B5 -> BFF6 1108 116F 11B6 -> BFF7 1108 116F 11B7 -> BFF8 1108 116F 11B8 -> BFF9 1108 116F 11B9 -> BFFA 1108 116F 11BA -> BFFB 1108 116F 11BB -> BFFC 1108 116F 11BC -> BFFD 1108 116F 11BD -> BFFE 1108 116F 11BE -> BFFF 1108 116F 11BF -> C000 1108 116F 11C0 -> C001 1108 116F 11C1 -> C002 1108 116F 11C2 -> C003 1108 1170 -> C004 1108 1170 11A8 -> C005 1108 1170 11A9 -> C006 1108 1170 11AA -> C007 1108 1170 11AB -> C008 1108 1170 11AC -> C009 1108 1170 11AD -> C00A 1108 1170 11AE -> C00B 1108 1170 11AF -> C00C 1108 1170 11B0 -> C00D 1108 1170 11B1 -> C00E 1108 1170 11B2 -> C00F 1108 1170 11B3 -> C010 1108 1170 11B4 -> C011 1108 1170 11B5 -> C012 1108 1170 11B6 -> C013 1108 1170 11B7 -> C014 1108 1170 11B8 -> C015 1108 1170 11B9 -> C016 1108 1170 11BA -> C017 1108 1170 11BB -> C018 1108 1170 11BC -> C019 1108 1170 11BD -> C01A 1108 1170 11BE -> C01B 1108 1170 11BF -> C01C 1108 1170 11C0 -> C01D 1108 1170 11C1 -> C01E 1108 1170 11C2 -> C01F 1108 1171 -> C020 1108 1171 11A8 -> C021 1108 1171 11A9 -> C022 1108 1171 11AA -> C023 1108 1171 11AB -> C024 1108 1171 11AC -> C025 1108 1171 11AD -> C026 1108 1171 11AE -> C027 1108 1171 11AF -> C028 1108 1171 11B0 -> C029 1108 1171 11B1 -> C02A 1108 1171 11B2 -> C02B 1108 1171 11B3 -> C02C 1108 1171 11B4 -> C02D 1108 1171 11B5 -> C02E 1108 1171 11B6 -> C02F 1108 1171 11B7 -> C030 1108 1171 11B8 -> C031 1108 1171 11B9 -> C032 1108 1171 11BA -> C033 1108 1171 11BB -> C034 1108 1171 11BC -> C035 1108 1171 11BD -> C036 1108 1171 11BE -> C037 1108 1171 11BF -> C038 1108 1171 11C0 -> C039 1108 1171 11C1 -> C03A 1108 1171 11C2 -> C03B 1108 1172 -> C03C 1108 1172 11A8 -> C03D 1108 1172 11A9 -> C03E 1108 1172 11AA -> C03F 1108 1172 11AB -> C040 1108 1172 11AC -> C041 1108 1172 11AD -> C042 1108 1172 11AE -> C043 1108 1172 11AF -> C044 1108 1172 11B0 -> C045 1108 1172 11B1 -> C046 1108 1172 11B2 -> C047 1108 1172 11B3 -> C048 1108 1172 11B4 -> C049 1108 1172 11B5 -> C04A 1108 1172 11B6 -> C04B 1108 1172 11B7 -> C04C 1108 1172 11B8 -> C04D 1108 1172 11B9 -> C04E 1108 1172 11BA -> C04F 1108 1172 11BB -> C050 1108 1172 11BC -> C051 1108 1172 11BD -> C052 1108 1172 11BE -> C053 1108 1172 11BF -> C054 1108 1172 11C0 -> C055 1108 1172 11C1 -> C056 1108 1172 11C2 -> C057 1108 1173 -> C058 1108 1173 11A8 -> C059 1108 1173 11A9 -> C05A 1108 1173 11AA -> C05B 1108 1173 11AB -> C05C 1108 1173 11AC -> C05D 1108 1173 11AD -> C05E 1108 1173 11AE -> C05F 1108 1173 11AF -> C060 1108 1173 11B0 -> C061 1108 1173 11B1 -> C062 1108 1173 11B2 -> C063 1108 1173 11B3 -> C064 1108 1173 11B4 -> C065 1108 1173 11B5 -> C066 1108 1173 11B6 -> C067 1108 1173 11B7 -> C068 1108 1173 11B8 -> C069 1108 1173 11B9 -> C06A 1108 1173 11BA -> C06B 1108 1173 11BB -> C06C 1108 1173 11BC -> C06D 1108 1173 11BD -> C06E 1108 1173 11BE -> C06F 1108 1173 11BF -> C070 1108 1173 11C0 -> C071 1108 1173 11C1 -> C072 1108 1173 11C2 -> C073 1108 1174 -> C074 1108 1174 11A8 -> C075 1108 1174 11A9 -> C076 1108 1174 11AA -> C077 1108 1174 11AB -> C078 1108 1174 11AC -> C079 1108 1174 11AD -> C07A 1108 1174 11AE -> C07B 1108 1174 11AF -> C07C 1108 1174 11B0 -> C07D 1108 1174 11B1 -> C07E 1108 1174 11B2 -> C07F 1108 1174 11B3 -> C080 1108 1174 11B4 -> C081 1108 1174 11B5 -> C082 1108 1174 11B6 -> C083 1108 1174 11B7 -> C084 1108 1174 11B8 -> C085 1108 1174 11B9 -> C086 1108 1174 11BA -> C087 1108 1174 11BB -> C088 1108 1174 11BC -> C089 1108 1174 11BD -> C08A 1108 1174 11BE -> C08B 1108 1174 11BF -> C08C 1108 1174 11C0 -> C08D 1108 1174 11C1 -> C08E 1108 1174 11C2 -> C08F 1108 1175 -> C090 1108 1175 11A8 -> C091 1108 1175 11A9 -> C092 1108 1175 11AA -> C093 1108 1175 11AB -> C094 1108 1175 11AC -> C095 1108 1175 11AD -> C096 1108 1175 11AE -> C097 1108 1175 11AF -> C098 1108 1175 11B0 -> C099 1108 1175 11B1 -> C09A 1108 1175 11B2 -> C09B 1108 1175 11B3 -> C09C 1108 1175 11B4 -> C09D 1108 1175 11B5 -> C09E 1108 1175 11B6 -> C09F 1108 1175 11B7 -> C0A0 1108 1175 11B8 -> C0A1 1108 1175 11B9 -> C0A2 1108 1175 11BA -> C0A3 1108 1175 11BB -> C0A4 1108 1175 11BC -> C0A5 1108 1175 11BD -> C0A6 1108 1175 11BE -> C0A7 1108 1175 11BF -> C0A8 1108 1175 11C0 -> C0A9 1108 1175 11C1 -> C0AA 1108 1175 11C2 -> C0AB 1109 1161 -> C0AC 1109 1161 11A8 -> C0AD 1109 1161 11A9 -> C0AE 1109 1161 11AA -> C0AF 1109 1161 11AB -> C0B0 1109 1161 11AC -> C0B1 1109 1161 11AD -> C0B2 1109 1161 11AE -> C0B3 1109 1161 11AF -> C0B4 1109 1161 11B0 -> C0B5 1109 1161 11B1 -> C0B6 1109 1161 11B2 -> C0B7 1109 1161 11B3 -> C0B8 1109 1161 11B4 -> C0B9 1109 1161 11B5 -> C0BA 1109 1161 11B6 -> C0BB 1109 1161 11B7 -> C0BC 1109 1161 11B8 -> C0BD 1109 1161 11B9 -> C0BE 1109 1161 11BA -> C0BF 1109 1161 11BB -> C0C0 1109 1161 11BC -> C0C1 1109 1161 11BD -> C0C2 1109 1161 11BE -> C0C3 1109 1161 11BF -> C0C4 1109 1161 11C0 -> C0C5 1109 1161 11C1 -> C0C6 1109 1161 11C2 -> C0C7 1109 1162 -> C0C8 1109 1162 11A8 -> C0C9 1109 1162 11A9 -> C0CA 1109 1162 11AA -> C0CB 1109 1162 11AB -> C0CC 1109 1162 11AC -> C0CD 1109 1162 11AD -> C0CE 1109 1162 11AE -> C0CF 1109 1162 11AF -> C0D0 1109 1162 11B0 -> C0D1 1109 1162 11B1 -> C0D2 1109 1162 11B2 -> C0D3 1109 1162 11B3 -> C0D4 1109 1162 11B4 -> C0D5 1109 1162 11B5 -> C0D6 1109 1162 11B6 -> C0D7 1109 1162 11B7 -> C0D8 1109 1162 11B8 -> C0D9 1109 1162 11B9 -> C0DA 1109 1162 11BA -> C0DB 1109 1162 11BB -> C0DC 1109 1162 11BC -> C0DD 1109 1162 11BD -> C0DE 1109 1162 11BE -> C0DF 1109 1162 11BF -> C0E0 1109 1162 11C0 -> C0E1 1109 1162 11C1 -> C0E2 1109 1162 11C2 -> C0E3 1109 1163 -> C0E4 1109 1163 11A8 -> C0E5 1109 1163 11A9 -> C0E6 1109 1163 11AA -> C0E7 1109 1163 11AB -> C0E8 1109 1163 11AC -> C0E9 1109 1163 11AD -> C0EA 1109 1163 11AE -> C0EB 1109 1163 11AF -> C0EC 1109 1163 11B0 -> C0ED 1109 1163 11B1 -> C0EE 1109 1163 11B2 -> C0EF 1109 1163 11B3 -> C0F0 1109 1163 11B4 -> C0F1 1109 1163 11B5 -> C0F2 1109 1163 11B6 -> C0F3 1109 1163 11B7 -> C0F4 1109 1163 11B8 -> C0F5 1109 1163 11B9 -> C0F6 1109 1163 11BA -> C0F7 1109 1163 11BB -> C0F8 1109 1163 11BC -> C0F9 1109 1163 11BD -> C0FA 1109 1163 11BE -> C0FB 1109 1163 11BF -> C0FC 1109 1163 11C0 -> C0FD 1109 1163 11C1 -> C0FE 1109 1163 11C2 -> C0FF 1109 1164 -> C100 1109 1164 11A8 -> C101 1109 1164 11A9 -> C102 1109 1164 11AA -> C103 1109 1164 11AB -> C104 1109 1164 11AC -> C105 1109 1164 11AD -> C106 1109 1164 11AE -> C107 1109 1164 11AF -> C108 1109 1164 11B0 -> C109 1109 1164 11B1 -> C10A 1109 1164 11B2 -> C10B 1109 1164 11B3 -> C10C 1109 1164 11B4 -> C10D 1109 1164 11B5 -> C10E 1109 1164 11B6 -> C10F 1109 1164 11B7 -> C110 1109 1164 11B8 -> C111 1109 1164 11B9 -> C112 1109 1164 11BA -> C113 1109 1164 11BB -> C114 1109 1164 11BC -> C115 1109 1164 11BD -> C116 1109 1164 11BE -> C117 1109 1164 11BF -> C118 1109 1164 11C0 -> C119 1109 1164 11C1 -> C11A 1109 1164 11C2 -> C11B 1109 1165 -> C11C 1109 1165 11A8 -> C11D 1109 1165 11A9 -> C11E 1109 1165 11AA -> C11F 1109 1165 11AB -> C120 1109 1165 11AC -> C121 1109 1165 11AD -> C122 1109 1165 11AE -> C123 1109 1165 11AF -> C124 1109 1165 11B0 -> C125 1109 1165 11B1 -> C126 1109 1165 11B2 -> C127 1109 1165 11B3 -> C128 1109 1165 11B4 -> C129 1109 1165 11B5 -> C12A 1109 1165 11B6 -> C12B 1109 1165 11B7 -> C12C 1109 1165 11B8 -> C12D 1109 1165 11B9 -> C12E 1109 1165 11BA -> C12F 1109 1165 11BB -> C130 1109 1165 11BC -> C131 1109 1165 11BD -> C132 1109 1165 11BE -> C133 1109 1165 11BF -> C134 1109 1165 11C0 -> C135 1109 1165 11C1 -> C136 1109 1165 11C2 -> C137 1109 1166 -> C138 1109 1166 11A8 -> C139 1109 1166 11A9 -> C13A 1109 1166 11AA -> C13B 1109 1166 11AB -> C13C 1109 1166 11AC -> C13D 1109 1166 11AD -> C13E 1109 1166 11AE -> C13F 1109 1166 11AF -> C140 1109 1166 11B0 -> C141 1109 1166 11B1 -> C142 1109 1166 11B2 -> C143 1109 1166 11B3 -> C144 1109 1166 11B4 -> C145 1109 1166 11B5 -> C146 1109 1166 11B6 -> C147 1109 1166 11B7 -> C148 1109 1166 11B8 -> C149 1109 1166 11B9 -> C14A 1109 1166 11BA -> C14B 1109 1166 11BB -> C14C 1109 1166 11BC -> C14D 1109 1166 11BD -> C14E 1109 1166 11BE -> C14F 1109 1166 11BF -> C150 1109 1166 11C0 -> C151 1109 1166 11C1 -> C152 1109 1166 11C2 -> C153 1109 1167 -> C154 1109 1167 11A8 -> C155 1109 1167 11A9 -> C156 1109 1167 11AA -> C157 1109 1167 11AB -> C158 1109 1167 11AC -> C159 1109 1167 11AD -> C15A 1109 1167 11AE -> C15B 1109 1167 11AF -> C15C 1109 1167 11B0 -> C15D 1109 1167 11B1 -> C15E 1109 1167 11B2 -> C15F 1109 1167 11B3 -> C160 1109 1167 11B4 -> C161 1109 1167 11B5 -> C162 1109 1167 11B6 -> C163 1109 1167 11B7 -> C164 1109 1167 11B8 -> C165 1109 1167 11B9 -> C166 1109 1167 11BA -> C167 1109 1167 11BB -> C168 1109 1167 11BC -> C169 1109 1167 11BD -> C16A 1109 1167 11BE -> C16B 1109 1167 11BF -> C16C 1109 1167 11C0 -> C16D 1109 1167 11C1 -> C16E 1109 1167 11C2 -> C16F 1109 1168 -> C170 1109 1168 11A8 -> C171 1109 1168 11A9 -> C172 1109 1168 11AA -> C173 1109 1168 11AB -> C174 1109 1168 11AC -> C175 1109 1168 11AD -> C176 1109 1168 11AE -> C177 1109 1168 11AF -> C178 1109 1168 11B0 -> C179 1109 1168 11B1 -> C17A 1109 1168 11B2 -> C17B 1109 1168 11B3 -> C17C 1109 1168 11B4 -> C17D 1109 1168 11B5 -> C17E 1109 1168 11B6 -> C17F 1109 1168 11B7 -> C180 1109 1168 11B8 -> C181 1109 1168 11B9 -> C182 1109 1168 11BA -> C183 1109 1168 11BB -> C184 1109 1168 11BC -> C185 1109 1168 11BD -> C186 1109 1168 11BE -> C187 1109 1168 11BF -> C188 1109 1168 11C0 -> C189 1109 1168 11C1 -> C18A 1109 1168 11C2 -> C18B 1109 1169 -> C18C 1109 1169 11A8 -> C18D 1109 1169 11A9 -> C18E 1109 1169 11AA -> C18F 1109 1169 11AB -> C190 1109 1169 11AC -> C191 1109 1169 11AD -> C192 1109 1169 11AE -> C193 1109 1169 11AF -> C194 1109 1169 11B0 -> C195 1109 1169 11B1 -> C196 1109 1169 11B2 -> C197 1109 1169 11B3 -> C198 1109 1169 11B4 -> C199 1109 1169 11B5 -> C19A 1109 1169 11B6 -> C19B 1109 1169 11B7 -> C19C 1109 1169 11B8 -> C19D 1109 1169 11B9 -> C19E 1109 1169 11BA -> C19F 1109 1169 11BB -> C1A0 1109 1169 11BC -> C1A1 1109 1169 11BD -> C1A2 1109 1169 11BE -> C1A3 1109 1169 11BF -> C1A4 1109 1169 11C0 -> C1A5 1109 1169 11C1 -> C1A6 1109 1169 11C2 -> C1A7 1109 116A -> C1A8 1109 116A 11A8 -> C1A9 1109 116A 11A9 -> C1AA 1109 116A 11AA -> C1AB 1109 116A 11AB -> C1AC 1109 116A 11AC -> C1AD 1109 116A 11AD -> C1AE 1109 116A 11AE -> C1AF 1109 116A 11AF -> C1B0 1109 116A 11B0 -> C1B1 1109 116A 11B1 -> C1B2 1109 116A 11B2 -> C1B3 1109 116A 11B3 -> C1B4 1109 116A 11B4 -> C1B5 1109 116A 11B5 -> C1B6 1109 116A 11B6 -> C1B7 1109 116A 11B7 -> C1B8 1109 116A 11B8 -> C1B9 1109 116A 11B9 -> C1BA 1109 116A 11BA -> C1BB 1109 116A 11BB -> C1BC 1109 116A 11BC -> C1BD 1109 116A 11BD -> C1BE 1109 116A 11BE -> C1BF 1109 116A 11BF -> C1C0 1109 116A 11C0 -> C1C1 1109 116A 11C1 -> C1C2 1109 116A 11C2 -> C1C3 1109 116B -> C1C4 1109 116B 11A8 -> C1C5 1109 116B 11A9 -> C1C6 1109 116B 11AA -> C1C7 1109 116B 11AB -> C1C8 1109 116B 11AC -> C1C9 1109 116B 11AD -> C1CA 1109 116B 11AE -> C1CB 1109 116B 11AF -> C1CC 1109 116B 11B0 -> C1CD 1109 116B 11B1 -> C1CE 1109 116B 11B2 -> C1CF 1109 116B 11B3 -> C1D0 1109 116B 11B4 -> C1D1 1109 116B 11B5 -> C1D2 1109 116B 11B6 -> C1D3 1109 116B 11B7 -> C1D4 1109 116B 11B8 -> C1D5 1109 116B 11B9 -> C1D6 1109 116B 11BA -> C1D7 1109 116B 11BB -> C1D8 1109 116B 11BC -> C1D9 1109 116B 11BD -> C1DA 1109 116B 11BE -> C1DB 1109 116B 11BF -> C1DC 1109 116B 11C0 -> C1DD 1109 116B 11C1 -> C1DE 1109 116B 11C2 -> C1DF 1109 116C -> C1E0 1109 116C 11A8 -> C1E1 1109 116C 11A9 -> C1E2 1109 116C 11AA -> C1E3 1109 116C 11AB -> C1E4 1109 116C 11AC -> C1E5 1109 116C 11AD -> C1E6 1109 116C 11AE -> C1E7 1109 116C 11AF -> C1E8 1109 116C 11B0 -> C1E9 1109 116C 11B1 -> C1EA 1109 116C 11B2 -> C1EB 1109 116C 11B3 -> C1EC 1109 116C 11B4 -> C1ED 1109 116C 11B5 -> C1EE 1109 116C 11B6 -> C1EF 1109 116C 11B7 -> C1F0 1109 116C 11B8 -> C1F1 1109 116C 11B9 -> C1F2 1109 116C 11BA -> C1F3 1109 116C 11BB -> C1F4 1109 116C 11BC -> C1F5 1109 116C 11BD -> C1F6 1109 116C 11BE -> C1F7 1109 116C 11BF -> C1F8 1109 116C 11C0 -> C1F9 1109 116C 11C1 -> C1FA 1109 116C 11C2 -> C1FB 1109 116D -> C1FC 1109 116D 11A8 -> C1FD 1109 116D 11A9 -> C1FE 1109 116D 11AA -> C1FF 1109 116D 11AB -> C200 1109 116D 11AC -> C201 1109 116D 11AD -> C202 1109 116D 11AE -> C203 1109 116D 11AF -> C204 1109 116D 11B0 -> C205 1109 116D 11B1 -> C206 1109 116D 11B2 -> C207 1109 116D 11B3 -> C208 1109 116D 11B4 -> C209 1109 116D 11B5 -> C20A 1109 116D 11B6 -> C20B 1109 116D 11B7 -> C20C 1109 116D 11B8 -> C20D 1109 116D 11B9 -> C20E 1109 116D 11BA -> C20F 1109 116D 11BB -> C210 1109 116D 11BC -> C211 1109 116D 11BD -> C212 1109 116D 11BE -> C213 1109 116D 11BF -> C214 1109 116D 11C0 -> C215 1109 116D 11C1 -> C216 1109 116D 11C2 -> C217 1109 116E -> C218 1109 116E 11A8 -> C219 1109 116E 11A9 -> C21A 1109 116E 11AA -> C21B 1109 116E 11AB -> C21C 1109 116E 11AC -> C21D 1109 116E 11AD -> C21E 1109 116E 11AE -> C21F 1109 116E 11AF -> C220 1109 116E 11B0 -> C221 1109 116E 11B1 -> C222 1109 116E 11B2 -> C223 1109 116E 11B3 -> C224 1109 116E 11B4 -> C225 1109 116E 11B5 -> C226 1109 116E 11B6 -> C227 1109 116E 11B7 -> C228 1109 116E 11B8 -> C229 1109 116E 11B9 -> C22A 1109 116E 11BA -> C22B 1109 116E 11BB -> C22C 1109 116E 11BC -> C22D 1109 116E 11BD -> C22E 1109 116E 11BE -> C22F 1109 116E 11BF -> C230 1109 116E 11C0 -> C231 1109 116E 11C1 -> C232 1109 116E 11C2 -> C233 1109 116F -> C234 1109 116F 11A8 -> C235 1109 116F 11A9 -> C236 1109 116F 11AA -> C237 1109 116F 11AB -> C238 1109 116F 11AC -> C239 1109 116F 11AD -> C23A 1109 116F 11AE -> C23B 1109 116F 11AF -> C23C 1109 116F 11B0 -> C23D 1109 116F 11B1 -> C23E 1109 116F 11B2 -> C23F 1109 116F 11B3 -> C240 1109 116F 11B4 -> C241 1109 116F 11B5 -> C242 1109 116F 11B6 -> C243 1109 116F 11B7 -> C244 1109 116F 11B8 -> C245 1109 116F 11B9 -> C246 1109 116F 11BA -> C247 1109 116F 11BB -> C248 1109 116F 11BC -> C249 1109 116F 11BD -> C24A 1109 116F 11BE -> C24B 1109 116F 11BF -> C24C 1109 116F 11C0 -> C24D 1109 116F 11C1 -> C24E 1109 116F 11C2 -> C24F 1109 1170 -> C250 1109 1170 11A8 -> C251 1109 1170 11A9 -> C252 1109 1170 11AA -> C253 1109 1170 11AB -> C254 1109 1170 11AC -> C255 1109 1170 11AD -> C256 1109 1170 11AE -> C257 1109 1170 11AF -> C258 1109 1170 11B0 -> C259 1109 1170 11B1 -> C25A 1109 1170 11B2 -> C25B 1109 1170 11B3 -> C25C 1109 1170 11B4 -> C25D 1109 1170 11B5 -> C25E 1109 1170 11B6 -> C25F 1109 1170 11B7 -> C260 1109 1170 11B8 -> C261 1109 1170 11B9 -> C262 1109 1170 11BA -> C263 1109 1170 11BB -> C264 1109 1170 11BC -> C265 1109 1170 11BD -> C266 1109 1170 11BE -> C267 1109 1170 11BF -> C268 1109 1170 11C0 -> C269 1109 1170 11C1 -> C26A 1109 1170 11C2 -> C26B 1109 1171 -> C26C 1109 1171 11A8 -> C26D 1109 1171 11A9 -> C26E 1109 1171 11AA -> C26F 1109 1171 11AB -> C270 1109 1171 11AC -> C271 1109 1171 11AD -> C272 1109 1171 11AE -> C273 1109 1171 11AF -> C274 1109 1171 11B0 -> C275 1109 1171 11B1 -> C276 1109 1171 11B2 -> C277 1109 1171 11B3 -> C278 1109 1171 11B4 -> C279 1109 1171 11B5 -> C27A 1109 1171 11B6 -> C27B 1109 1171 11B7 -> C27C 1109 1171 11B8 -> C27D 1109 1171 11B9 -> C27E 1109 1171 11BA -> C27F 1109 1171 11BB -> C280 1109 1171 11BC -> C281 1109 1171 11BD -> C282 1109 1171 11BE -> C283 1109 1171 11BF -> C284 1109 1171 11C0 -> C285 1109 1171 11C1 -> C286 1109 1171 11C2 -> C287 1109 1172 -> C288 1109 1172 11A8 -> C289 1109 1172 11A9 -> C28A 1109 1172 11AA -> C28B 1109 1172 11AB -> C28C 1109 1172 11AC -> C28D 1109 1172 11AD -> C28E 1109 1172 11AE -> C28F 1109 1172 11AF -> C290 1109 1172 11B0 -> C291 1109 1172 11B1 -> C292 1109 1172 11B2 -> C293 1109 1172 11B3 -> C294 1109 1172 11B4 -> C295 1109 1172 11B5 -> C296 1109 1172 11B6 -> C297 1109 1172 11B7 -> C298 1109 1172 11B8 -> C299 1109 1172 11B9 -> C29A 1109 1172 11BA -> C29B 1109 1172 11BB -> C29C 1109 1172 11BC -> C29D 1109 1172 11BD -> C29E 1109 1172 11BE -> C29F 1109 1172 11BF -> C2A0 1109 1172 11C0 -> C2A1 1109 1172 11C1 -> C2A2 1109 1172 11C2 -> C2A3 1109 1173 -> C2A4 1109 1173 11A8 -> C2A5 1109 1173 11A9 -> C2A6 1109 1173 11AA -> C2A7 1109 1173 11AB -> C2A8 1109 1173 11AC -> C2A9 1109 1173 11AD -> C2AA 1109 1173 11AE -> C2AB 1109 1173 11AF -> C2AC 1109 1173 11B0 -> C2AD 1109 1173 11B1 -> C2AE 1109 1173 11B2 -> C2AF 1109 1173 11B3 -> C2B0 1109 1173 11B4 -> C2B1 1109 1173 11B5 -> C2B2 1109 1173 11B6 -> C2B3 1109 1173 11B7 -> C2B4 1109 1173 11B8 -> C2B5 1109 1173 11B9 -> C2B6 1109 1173 11BA -> C2B7 1109 1173 11BB -> C2B8 1109 1173 11BC -> C2B9 1109 1173 11BD -> C2BA 1109 1173 11BE -> C2BB 1109 1173 11BF -> C2BC 1109 1173 11C0 -> C2BD 1109 1173 11C1 -> C2BE 1109 1173 11C2 -> C2BF 1109 1174 -> C2C0 1109 1174 11A8 -> C2C1 1109 1174 11A9 -> C2C2 1109 1174 11AA -> C2C3 1109 1174 11AB -> C2C4 1109 1174 11AC -> C2C5 1109 1174 11AD -> C2C6 1109 1174 11AE -> C2C7 1109 1174 11AF -> C2C8 1109 1174 11B0 -> C2C9 1109 1174 11B1 -> C2CA 1109 1174 11B2 -> C2CB 1109 1174 11B3 -> C2CC 1109 1174 11B4 -> C2CD 1109 1174 11B5 -> C2CE 1109 1174 11B6 -> C2CF 1109 1174 11B7 -> C2D0 1109 1174 11B8 -> C2D1 1109 1174 11B9 -> C2D2 1109 1174 11BA -> C2D3 1109 1174 11BB -> C2D4 1109 1174 11BC -> C2D5 1109 1174 11BD -> C2D6 1109 1174 11BE -> C2D7 1109 1174 11BF -> C2D8 1109 1174 11C0 -> C2D9 1109 1174 11C1 -> C2DA 1109 1174 11C2 -> C2DB 1109 1175 -> C2DC 1109 1175 11A8 -> C2DD 1109 1175 11A9 -> C2DE 1109 1175 11AA -> C2DF 1109 1175 11AB -> C2E0 1109 1175 11AC -> C2E1 1109 1175 11AD -> C2E2 1109 1175 11AE -> C2E3 1109 1175 11AF -> C2E4 1109 1175 11B0 -> C2E5 1109 1175 11B1 -> C2E6 1109 1175 11B2 -> C2E7 1109 1175 11B3 -> C2E8 1109 1175 11B4 -> C2E9 1109 1175 11B5 -> C2EA 1109 1175 11B6 -> C2EB 1109 1175 11B7 -> C2EC 1109 1175 11B8 -> C2ED 1109 1175 11B9 -> C2EE 1109 1175 11BA -> C2EF 1109 1175 11BB -> C2F0 1109 1175 11BC -> C2F1 1109 1175 11BD -> C2F2 1109 1175 11BE -> C2F3 1109 1175 11BF -> C2F4 1109 1175 11C0 -> C2F5 1109 1175 11C1 -> C2F6 1109 1175 11C2 -> C2F7 110A 1161 -> C2F8 110A 1161 11A8 -> C2F9 110A 1161 11A9 -> C2FA 110A 1161 11AA -> C2FB 110A 1161 11AB -> C2FC 110A 1161 11AC -> C2FD 110A 1161 11AD -> C2FE 110A 1161 11AE -> C2FF 110A 1161 11AF -> C300 110A 1161 11B0 -> C301 110A 1161 11B1 -> C302 110A 1161 11B2 -> C303 110A 1161 11B3 -> C304 110A 1161 11B4 -> C305 110A 1161 11B5 -> C306 110A 1161 11B6 -> C307 110A 1161 11B7 -> C308 110A 1161 11B8 -> C309 110A 1161 11B9 -> C30A 110A 1161 11BA -> C30B 110A 1161 11BB -> C30C 110A 1161 11BC -> C30D 110A 1161 11BD -> C30E 110A 1161 11BE -> C30F 110A 1161 11BF -> C310 110A 1161 11C0 -> C311 110A 1161 11C1 -> C312 110A 1161 11C2 -> C313 110A 1162 -> C314 110A 1162 11A8 -> C315 110A 1162 11A9 -> C316 110A 1162 11AA -> C317 110A 1162 11AB -> C318 110A 1162 11AC -> C319 110A 1162 11AD -> C31A 110A 1162 11AE -> C31B 110A 1162 11AF -> C31C 110A 1162 11B0 -> C31D 110A 1162 11B1 -> C31E 110A 1162 11B2 -> C31F 110A 1162 11B3 -> C320 110A 1162 11B4 -> C321 110A 1162 11B5 -> C322 110A 1162 11B6 -> C323 110A 1162 11B7 -> C324 110A 1162 11B8 -> C325 110A 1162 11B9 -> C326 110A 1162 11BA -> C327 110A 1162 11BB -> C328 110A 1162 11BC -> C329 110A 1162 11BD -> C32A 110A 1162 11BE -> C32B 110A 1162 11BF -> C32C 110A 1162 11C0 -> C32D 110A 1162 11C1 -> C32E 110A 1162 11C2 -> C32F 110A 1163 -> C330 110A 1163 11A8 -> C331 110A 1163 11A9 -> C332 110A 1163 11AA -> C333 110A 1163 11AB -> C334 110A 1163 11AC -> C335 110A 1163 11AD -> C336 110A 1163 11AE -> C337 110A 1163 11AF -> C338 110A 1163 11B0 -> C339 110A 1163 11B1 -> C33A 110A 1163 11B2 -> C33B 110A 1163 11B3 -> C33C 110A 1163 11B4 -> C33D 110A 1163 11B5 -> C33E 110A 1163 11B6 -> C33F 110A 1163 11B7 -> C340 110A 1163 11B8 -> C341 110A 1163 11B9 -> C342 110A 1163 11BA -> C343 110A 1163 11BB -> C344 110A 1163 11BC -> C345 110A 1163 11BD -> C346 110A 1163 11BE -> C347 110A 1163 11BF -> C348 110A 1163 11C0 -> C349 110A 1163 11C1 -> C34A 110A 1163 11C2 -> C34B 110A 1164 -> C34C 110A 1164 11A8 -> C34D 110A 1164 11A9 -> C34E 110A 1164 11AA -> C34F 110A 1164 11AB -> C350 110A 1164 11AC -> C351 110A 1164 11AD -> C352 110A 1164 11AE -> C353 110A 1164 11AF -> C354 110A 1164 11B0 -> C355 110A 1164 11B1 -> C356 110A 1164 11B2 -> C357 110A 1164 11B3 -> C358 110A 1164 11B4 -> C359 110A 1164 11B5 -> C35A 110A 1164 11B6 -> C35B 110A 1164 11B7 -> C35C 110A 1164 11B8 -> C35D 110A 1164 11B9 -> C35E 110A 1164 11BA -> C35F 110A 1164 11BB -> C360 110A 1164 11BC -> C361 110A 1164 11BD -> C362 110A 1164 11BE -> C363 110A 1164 11BF -> C364 110A 1164 11C0 -> C365 110A 1164 11C1 -> C366 110A 1164 11C2 -> C367 110A 1165 -> C368 110A 1165 11A8 -> C369 110A 1165 11A9 -> C36A 110A 1165 11AA -> C36B 110A 1165 11AB -> C36C 110A 1165 11AC -> C36D 110A 1165 11AD -> C36E 110A 1165 11AE -> C36F 110A 1165 11AF -> C370 110A 1165 11B0 -> C371 110A 1165 11B1 -> C372 110A 1165 11B2 -> C373 110A 1165 11B3 -> C374 110A 1165 11B4 -> C375 110A 1165 11B5 -> C376 110A 1165 11B6 -> C377 110A 1165 11B7 -> C378 110A 1165 11B8 -> C379 110A 1165 11B9 -> C37A 110A 1165 11BA -> C37B 110A 1165 11BB -> C37C 110A 1165 11BC -> C37D 110A 1165 11BD -> C37E 110A 1165 11BE -> C37F 110A 1165 11BF -> C380 110A 1165 11C0 -> C381 110A 1165 11C1 -> C382 110A 1165 11C2 -> C383 110A 1166 -> C384 110A 1166 11A8 -> C385 110A 1166 11A9 -> C386 110A 1166 11AA -> C387 110A 1166 11AB -> C388 110A 1166 11AC -> C389 110A 1166 11AD -> C38A 110A 1166 11AE -> C38B 110A 1166 11AF -> C38C 110A 1166 11B0 -> C38D 110A 1166 11B1 -> C38E 110A 1166 11B2 -> C38F 110A 1166 11B3 -> C390 110A 1166 11B4 -> C391 110A 1166 11B5 -> C392 110A 1166 11B6 -> C393 110A 1166 11B7 -> C394 110A 1166 11B8 -> C395 110A 1166 11B9 -> C396 110A 1166 11BA -> C397 110A 1166 11BB -> C398 110A 1166 11BC -> C399 110A 1166 11BD -> C39A 110A 1166 11BE -> C39B 110A 1166 11BF -> C39C 110A 1166 11C0 -> C39D 110A 1166 11C1 -> C39E 110A 1166 11C2 -> C39F 110A 1167 -> C3A0 110A 1167 11A8 -> C3A1 110A 1167 11A9 -> C3A2 110A 1167 11AA -> C3A3 110A 1167 11AB -> C3A4 110A 1167 11AC -> C3A5 110A 1167 11AD -> C3A6 110A 1167 11AE -> C3A7 110A 1167 11AF -> C3A8 110A 1167 11B0 -> C3A9 110A 1167 11B1 -> C3AA 110A 1167 11B2 -> C3AB 110A 1167 11B3 -> C3AC 110A 1167 11B4 -> C3AD 110A 1167 11B5 -> C3AE 110A 1167 11B6 -> C3AF 110A 1167 11B7 -> C3B0 110A 1167 11B8 -> C3B1 110A 1167 11B9 -> C3B2 110A 1167 11BA -> C3B3 110A 1167 11BB -> C3B4 110A 1167 11BC -> C3B5 110A 1167 11BD -> C3B6 110A 1167 11BE -> C3B7 110A 1167 11BF -> C3B8 110A 1167 11C0 -> C3B9 110A 1167 11C1 -> C3BA 110A 1167 11C2 -> C3BB 110A 1168 -> C3BC 110A 1168 11A8 -> C3BD 110A 1168 11A9 -> C3BE 110A 1168 11AA -> C3BF 110A 1168 11AB -> C3C0 110A 1168 11AC -> C3C1 110A 1168 11AD -> C3C2 110A 1168 11AE -> C3C3 110A 1168 11AF -> C3C4 110A 1168 11B0 -> C3C5 110A 1168 11B1 -> C3C6 110A 1168 11B2 -> C3C7 110A 1168 11B3 -> C3C8 110A 1168 11B4 -> C3C9 110A 1168 11B5 -> C3CA 110A 1168 11B6 -> C3CB 110A 1168 11B7 -> C3CC 110A 1168 11B8 -> C3CD 110A 1168 11B9 -> C3CE 110A 1168 11BA -> C3CF 110A 1168 11BB -> C3D0 110A 1168 11BC -> C3D1 110A 1168 11BD -> C3D2 110A 1168 11BE -> C3D3 110A 1168 11BF -> C3D4 110A 1168 11C0 -> C3D5 110A 1168 11C1 -> C3D6 110A 1168 11C2 -> C3D7 110A 1169 -> C3D8 110A 1169 11A8 -> C3D9 110A 1169 11A9 -> C3DA 110A 1169 11AA -> C3DB 110A 1169 11AB -> C3DC 110A 1169 11AC -> C3DD 110A 1169 11AD -> C3DE 110A 1169 11AE -> C3DF 110A 1169 11AF -> C3E0 110A 1169 11B0 -> C3E1 110A 1169 11B1 -> C3E2 110A 1169 11B2 -> C3E3 110A 1169 11B3 -> C3E4 110A 1169 11B4 -> C3E5 110A 1169 11B5 -> C3E6 110A 1169 11B6 -> C3E7 110A 1169 11B7 -> C3E8 110A 1169 11B8 -> C3E9 110A 1169 11B9 -> C3EA 110A 1169 11BA -> C3EB 110A 1169 11BB -> C3EC 110A 1169 11BC -> C3ED 110A 1169 11BD -> C3EE 110A 1169 11BE -> C3EF 110A 1169 11BF -> C3F0 110A 1169 11C0 -> C3F1 110A 1169 11C1 -> C3F2 110A 1169 11C2 -> C3F3 110A 116A -> C3F4 110A 116A 11A8 -> C3F5 110A 116A 11A9 -> C3F6 110A 116A 11AA -> C3F7 110A 116A 11AB -> C3F8 110A 116A 11AC -> C3F9 110A 116A 11AD -> C3FA 110A 116A 11AE -> C3FB 110A 116A 11AF -> C3FC 110A 116A 11B0 -> C3FD 110A 116A 11B1 -> C3FE 110A 116A 11B2 -> C3FF 110A 116A 11B3 -> C400 110A 116A 11B4 -> C401 110A 116A 11B5 -> C402 110A 116A 11B6 -> C403 110A 116A 11B7 -> C404 110A 116A 11B8 -> C405 110A 116A 11B9 -> C406 110A 116A 11BA -> C407 110A 116A 11BB -> C408 110A 116A 11BC -> C409 110A 116A 11BD -> C40A 110A 116A 11BE -> C40B 110A 116A 11BF -> C40C 110A 116A 11C0 -> C40D 110A 116A 11C1 -> C40E 110A 116A 11C2 -> C40F 110A 116B -> C410 110A 116B 11A8 -> C411 110A 116B 11A9 -> C412 110A 116B 11AA -> C413 110A 116B 11AB -> C414 110A 116B 11AC -> C415 110A 116B 11AD -> C416 110A 116B 11AE -> C417 110A 116B 11AF -> C418 110A 116B 11B0 -> C419 110A 116B 11B1 -> C41A 110A 116B 11B2 -> C41B 110A 116B 11B3 -> C41C 110A 116B 11B4 -> C41D 110A 116B 11B5 -> C41E 110A 116B 11B6 -> C41F 110A 116B 11B7 -> C420 110A 116B 11B8 -> C421 110A 116B 11B9 -> C422 110A 116B 11BA -> C423 110A 116B 11BB -> C424 110A 116B 11BC -> C425 110A 116B 11BD -> C426 110A 116B 11BE -> C427 110A 116B 11BF -> C428 110A 116B 11C0 -> C429 110A 116B 11C1 -> C42A 110A 116B 11C2 -> C42B 110A 116C -> C42C 110A 116C 11A8 -> C42D 110A 116C 11A9 -> C42E 110A 116C 11AA -> C42F 110A 116C 11AB -> C430 110A 116C 11AC -> C431 110A 116C 11AD -> C432 110A 116C 11AE -> C433 110A 116C 11AF -> C434 110A 116C 11B0 -> C435 110A 116C 11B1 -> C436 110A 116C 11B2 -> C437 110A 116C 11B3 -> C438 110A 116C 11B4 -> C439 110A 116C 11B5 -> C43A 110A 116C 11B6 -> C43B 110A 116C 11B7 -> C43C 110A 116C 11B8 -> C43D 110A 116C 11B9 -> C43E 110A 116C 11BA -> C43F 110A 116C 11BB -> C440 110A 116C 11BC -> C441 110A 116C 11BD -> C442 110A 116C 11BE -> C443 110A 116C 11BF -> C444 110A 116C 11C0 -> C445 110A 116C 11C1 -> C446 110A 116C 11C2 -> C447 110A 116D -> C448 110A 116D 11A8 -> C449 110A 116D 11A9 -> C44A 110A 116D 11AA -> C44B 110A 116D 11AB -> C44C 110A 116D 11AC -> C44D 110A 116D 11AD -> C44E 110A 116D 11AE -> C44F 110A 116D 11AF -> C450 110A 116D 11B0 -> C451 110A 116D 11B1 -> C452 110A 116D 11B2 -> C453 110A 116D 11B3 -> C454 110A 116D 11B4 -> C455 110A 116D 11B5 -> C456 110A 116D 11B6 -> C457 110A 116D 11B7 -> C458 110A 116D 11B8 -> C459 110A 116D 11B9 -> C45A 110A 116D 11BA -> C45B 110A 116D 11BB -> C45C 110A 116D 11BC -> C45D 110A 116D 11BD -> C45E 110A 116D 11BE -> C45F 110A 116D 11BF -> C460 110A 116D 11C0 -> C461 110A 116D 11C1 -> C462 110A 116D 11C2 -> C463 110A 116E -> C464 110A 116E 11A8 -> C465 110A 116E 11A9 -> C466 110A 116E 11AA -> C467 110A 116E 11AB -> C468 110A 116E 11AC -> C469 110A 116E 11AD -> C46A 110A 116E 11AE -> C46B 110A 116E 11AF -> C46C 110A 116E 11B0 -> C46D 110A 116E 11B1 -> C46E 110A 116E 11B2 -> C46F 110A 116E 11B3 -> C470 110A 116E 11B4 -> C471 110A 116E 11B5 -> C472 110A 116E 11B6 -> C473 110A 116E 11B7 -> C474 110A 116E 11B8 -> C475 110A 116E 11B9 -> C476 110A 116E 11BA -> C477 110A 116E 11BB -> C478 110A 116E 11BC -> C479 110A 116E 11BD -> C47A 110A 116E 11BE -> C47B 110A 116E 11BF -> C47C 110A 116E 11C0 -> C47D 110A 116E 11C1 -> C47E 110A 116E 11C2 -> C47F 110A 116F -> C480 110A 116F 11A8 -> C481 110A 116F 11A9 -> C482 110A 116F 11AA -> C483 110A 116F 11AB -> C484 110A 116F 11AC -> C485 110A 116F 11AD -> C486 110A 116F 11AE -> C487 110A 116F 11AF -> C488 110A 116F 11B0 -> C489 110A 116F 11B1 -> C48A 110A 116F 11B2 -> C48B 110A 116F 11B3 -> C48C 110A 116F 11B4 -> C48D 110A 116F 11B5 -> C48E 110A 116F 11B6 -> C48F 110A 116F 11B7 -> C490 110A 116F 11B8 -> C491 110A 116F 11B9 -> C492 110A 116F 11BA -> C493 110A 116F 11BB -> C494 110A 116F 11BC -> C495 110A 116F 11BD -> C496 110A 116F 11BE -> C497 110A 116F 11BF -> C498 110A 116F 11C0 -> C499 110A 116F 11C1 -> C49A 110A 116F 11C2 -> C49B 110A 1170 -> C49C 110A 1170 11A8 -> C49D 110A 1170 11A9 -> C49E 110A 1170 11AA -> C49F 110A 1170 11AB -> C4A0 110A 1170 11AC -> C4A1 110A 1170 11AD -> C4A2 110A 1170 11AE -> C4A3 110A 1170 11AF -> C4A4 110A 1170 11B0 -> C4A5 110A 1170 11B1 -> C4A6 110A 1170 11B2 -> C4A7 110A 1170 11B3 -> C4A8 110A 1170 11B4 -> C4A9 110A 1170 11B5 -> C4AA 110A 1170 11B6 -> C4AB 110A 1170 11B7 -> C4AC 110A 1170 11B8 -> C4AD 110A 1170 11B9 -> C4AE 110A 1170 11BA -> C4AF 110A 1170 11BB -> C4B0 110A 1170 11BC -> C4B1 110A 1170 11BD -> C4B2 110A 1170 11BE -> C4B3 110A 1170 11BF -> C4B4 110A 1170 11C0 -> C4B5 110A 1170 11C1 -> C4B6 110A 1170 11C2 -> C4B7 110A 1171 -> C4B8 110A 1171 11A8 -> C4B9 110A 1171 11A9 -> C4BA 110A 1171 11AA -> C4BB 110A 1171 11AB -> C4BC 110A 1171 11AC -> C4BD 110A 1171 11AD -> C4BE 110A 1171 11AE -> C4BF 110A 1171 11AF -> C4C0 110A 1171 11B0 -> C4C1 110A 1171 11B1 -> C4C2 110A 1171 11B2 -> C4C3 110A 1171 11B3 -> C4C4 110A 1171 11B4 -> C4C5 110A 1171 11B5 -> C4C6 110A 1171 11B6 -> C4C7 110A 1171 11B7 -> C4C8 110A 1171 11B8 -> C4C9 110A 1171 11B9 -> C4CA 110A 1171 11BA -> C4CB 110A 1171 11BB -> C4CC 110A 1171 11BC -> C4CD 110A 1171 11BD -> C4CE 110A 1171 11BE -> C4CF 110A 1171 11BF -> C4D0 110A 1171 11C0 -> C4D1 110A 1171 11C1 -> C4D2 110A 1171 11C2 -> C4D3 110A 1172 -> C4D4 110A 1172 11A8 -> C4D5 110A 1172 11A9 -> C4D6 110A 1172 11AA -> C4D7 110A 1172 11AB -> C4D8 110A 1172 11AC -> C4D9 110A 1172 11AD -> C4DA 110A 1172 11AE -> C4DB 110A 1172 11AF -> C4DC 110A 1172 11B0 -> C4DD 110A 1172 11B1 -> C4DE 110A 1172 11B2 -> C4DF 110A 1172 11B3 -> C4E0 110A 1172 11B4 -> C4E1 110A 1172 11B5 -> C4E2 110A 1172 11B6 -> C4E3 110A 1172 11B7 -> C4E4 110A 1172 11B8 -> C4E5 110A 1172 11B9 -> C4E6 110A 1172 11BA -> C4E7 110A 1172 11BB -> C4E8 110A 1172 11BC -> C4E9 110A 1172 11BD -> C4EA 110A 1172 11BE -> C4EB 110A 1172 11BF -> C4EC 110A 1172 11C0 -> C4ED 110A 1172 11C1 -> C4EE 110A 1172 11C2 -> C4EF 110A 1173 -> C4F0 110A 1173 11A8 -> C4F1 110A 1173 11A9 -> C4F2 110A 1173 11AA -> C4F3 110A 1173 11AB -> C4F4 110A 1173 11AC -> C4F5 110A 1173 11AD -> C4F6 110A 1173 11AE -> C4F7 110A 1173 11AF -> C4F8 110A 1173 11B0 -> C4F9 110A 1173 11B1 -> C4FA 110A 1173 11B2 -> C4FB 110A 1173 11B3 -> C4FC 110A 1173 11B4 -> C4FD 110A 1173 11B5 -> C4FE 110A 1173 11B6 -> C4FF 110A 1173 11B7 -> C500 110A 1173 11B8 -> C501 110A 1173 11B9 -> C502 110A 1173 11BA -> C503 110A 1173 11BB -> C504 110A 1173 11BC -> C505 110A 1173 11BD -> C506 110A 1173 11BE -> C507 110A 1173 11BF -> C508 110A 1173 11C0 -> C509 110A 1173 11C1 -> C50A 110A 1173 11C2 -> C50B 110A 1174 -> C50C 110A 1174 11A8 -> C50D 110A 1174 11A9 -> C50E 110A 1174 11AA -> C50F 110A 1174 11AB -> C510 110A 1174 11AC -> C511 110A 1174 11AD -> C512 110A 1174 11AE -> C513 110A 1174 11AF -> C514 110A 1174 11B0 -> C515 110A 1174 11B1 -> C516 110A 1174 11B2 -> C517 110A 1174 11B3 -> C518 110A 1174 11B4 -> C519 110A 1174 11B5 -> C51A 110A 1174 11B6 -> C51B 110A 1174 11B7 -> C51C 110A 1174 11B8 -> C51D 110A 1174 11B9 -> C51E 110A 1174 11BA -> C51F 110A 1174 11BB -> C520 110A 1174 11BC -> C521 110A 1174 11BD -> C522 110A 1174 11BE -> C523 110A 1174 11BF -> C524 110A 1174 11C0 -> C525 110A 1174 11C1 -> C526 110A 1174 11C2 -> C527 110A 1175 -> C528 110A 1175 11A8 -> C529 110A 1175 11A9 -> C52A 110A 1175 11AA -> C52B 110A 1175 11AB -> C52C 110A 1175 11AC -> C52D 110A 1175 11AD -> C52E 110A 1175 11AE -> C52F 110A 1175 11AF -> C530 110A 1175 11B0 -> C531 110A 1175 11B1 -> C532 110A 1175 11B2 -> C533 110A 1175 11B3 -> C534 110A 1175 11B4 -> C535 110A 1175 11B5 -> C536 110A 1175 11B6 -> C537 110A 1175 11B7 -> C538 110A 1175 11B8 -> C539 110A 1175 11B9 -> C53A 110A 1175 11BA -> C53B 110A 1175 11BB -> C53C 110A 1175 11BC -> C53D 110A 1175 11BD -> C53E 110A 1175 11BE -> C53F 110A 1175 11BF -> C540 110A 1175 11C0 -> C541 110A 1175 11C1 -> C542 110A 1175 11C2 -> C543 110B 1161 -> C544 110B 1161 11A8 -> C545 110B 1161 11A9 -> C546 110B 1161 11AA -> C547 110B 1161 11AB -> C548 110B 1161 11AC -> C549 110B 1161 11AD -> C54A 110B 1161 11AE -> C54B 110B 1161 11AF -> C54C 110B 1161 11B0 -> C54D 110B 1161 11B1 -> C54E 110B 1161 11B2 -> C54F 110B 1161 11B3 -> C550 110B 1161 11B4 -> C551 110B 1161 11B5 -> C552 110B 1161 11B6 -> C553 110B 1161 11B7 -> C554 110B 1161 11B8 -> C555 110B 1161 11B9 -> C556 110B 1161 11BA -> C557 110B 1161 11BB -> C558 110B 1161 11BC -> C559 110B 1161 11BD -> C55A 110B 1161 11BE -> C55B 110B 1161 11BF -> C55C 110B 1161 11C0 -> C55D 110B 1161 11C1 -> C55E 110B 1161 11C2 -> C55F 110B 1162 -> C560 110B 1162 11A8 -> C561 110B 1162 11A9 -> C562 110B 1162 11AA -> C563 110B 1162 11AB -> C564 110B 1162 11AC -> C565 110B 1162 11AD -> C566 110B 1162 11AE -> C567 110B 1162 11AF -> C568 110B 1162 11B0 -> C569 110B 1162 11B1 -> C56A 110B 1162 11B2 -> C56B 110B 1162 11B3 -> C56C 110B 1162 11B4 -> C56D 110B 1162 11B5 -> C56E 110B 1162 11B6 -> C56F 110B 1162 11B7 -> C570 110B 1162 11B8 -> C571 110B 1162 11B9 -> C572 110B 1162 11BA -> C573 110B 1162 11BB -> C574 110B 1162 11BC -> C575 110B 1162 11BD -> C576 110B 1162 11BE -> C577 110B 1162 11BF -> C578 110B 1162 11C0 -> C579 110B 1162 11C1 -> C57A 110B 1162 11C2 -> C57B 110B 1163 -> C57C 110B 1163 11A8 -> C57D 110B 1163 11A9 -> C57E 110B 1163 11AA -> C57F 110B 1163 11AB -> C580 110B 1163 11AC -> C581 110B 1163 11AD -> C582 110B 1163 11AE -> C583 110B 1163 11AF -> C584 110B 1163 11B0 -> C585 110B 1163 11B1 -> C586 110B 1163 11B2 -> C587 110B 1163 11B3 -> C588 110B 1163 11B4 -> C589 110B 1163 11B5 -> C58A 110B 1163 11B6 -> C58B 110B 1163 11B7 -> C58C 110B 1163 11B8 -> C58D 110B 1163 11B9 -> C58E 110B 1163 11BA -> C58F 110B 1163 11BB -> C590 110B 1163 11BC -> C591 110B 1163 11BD -> C592 110B 1163 11BE -> C593 110B 1163 11BF -> C594 110B 1163 11C0 -> C595 110B 1163 11C1 -> C596 110B 1163 11C2 -> C597 110B 1164 -> C598 110B 1164 11A8 -> C599 110B 1164 11A9 -> C59A 110B 1164 11AA -> C59B 110B 1164 11AB -> C59C 110B 1164 11AC -> C59D 110B 1164 11AD -> C59E 110B 1164 11AE -> C59F 110B 1164 11AF -> C5A0 110B 1164 11B0 -> C5A1 110B 1164 11B1 -> C5A2 110B 1164 11B2 -> C5A3 110B 1164 11B3 -> C5A4 110B 1164 11B4 -> C5A5 110B 1164 11B5 -> C5A6 110B 1164 11B6 -> C5A7 110B 1164 11B7 -> C5A8 110B 1164 11B8 -> C5A9 110B 1164 11B9 -> C5AA 110B 1164 11BA -> C5AB 110B 1164 11BB -> C5AC 110B 1164 11BC -> C5AD 110B 1164 11BD -> C5AE 110B 1164 11BE -> C5AF 110B 1164 11BF -> C5B0 110B 1164 11C0 -> C5B1 110B 1164 11C1 -> C5B2 110B 1164 11C2 -> C5B3 110B 1165 -> C5B4 110B 1165 11A8 -> C5B5 110B 1165 11A9 -> C5B6 110B 1165 11AA -> C5B7 110B 1165 11AB -> C5B8 110B 1165 11AC -> C5B9 110B 1165 11AD -> C5BA 110B 1165 11AE -> C5BB 110B 1165 11AF -> C5BC 110B 1165 11B0 -> C5BD 110B 1165 11B1 -> C5BE 110B 1165 11B2 -> C5BF 110B 1165 11B3 -> C5C0 110B 1165 11B4 -> C5C1 110B 1165 11B5 -> C5C2 110B 1165 11B6 -> C5C3 110B 1165 11B7 -> C5C4 110B 1165 11B8 -> C5C5 110B 1165 11B9 -> C5C6 110B 1165 11BA -> C5C7 110B 1165 11BB -> C5C8 110B 1165 11BC -> C5C9 110B 1165 11BD -> C5CA 110B 1165 11BE -> C5CB 110B 1165 11BF -> C5CC 110B 1165 11C0 -> C5CD 110B 1165 11C1 -> C5CE 110B 1165 11C2 -> C5CF 110B 1166 -> C5D0 110B 1166 11A8 -> C5D1 110B 1166 11A9 -> C5D2 110B 1166 11AA -> C5D3 110B 1166 11AB -> C5D4 110B 1166 11AC -> C5D5 110B 1166 11AD -> C5D6 110B 1166 11AE -> C5D7 110B 1166 11AF -> C5D8 110B 1166 11B0 -> C5D9 110B 1166 11B1 -> C5DA 110B 1166 11B2 -> C5DB 110B 1166 11B3 -> C5DC 110B 1166 11B4 -> C5DD 110B 1166 11B5 -> C5DE 110B 1166 11B6 -> C5DF 110B 1166 11B7 -> C5E0 110B 1166 11B8 -> C5E1 110B 1166 11B9 -> C5E2 110B 1166 11BA -> C5E3 110B 1166 11BB -> C5E4 110B 1166 11BC -> C5E5 110B 1166 11BD -> C5E6 110B 1166 11BE -> C5E7 110B 1166 11BF -> C5E8 110B 1166 11C0 -> C5E9 110B 1166 11C1 -> C5EA 110B 1166 11C2 -> C5EB 110B 1167 -> C5EC 110B 1167 11A8 -> C5ED 110B 1167 11A9 -> C5EE 110B 1167 11AA -> C5EF 110B 1167 11AB -> C5F0 110B 1167 11AC -> C5F1 110B 1167 11AD -> C5F2 110B 1167 11AE -> C5F3 110B 1167 11AF -> C5F4 110B 1167 11B0 -> C5F5 110B 1167 11B1 -> C5F6 110B 1167 11B2 -> C5F7 110B 1167 11B3 -> C5F8 110B 1167 11B4 -> C5F9 110B 1167 11B5 -> C5FA 110B 1167 11B6 -> C5FB 110B 1167 11B7 -> C5FC 110B 1167 11B8 -> C5FD 110B 1167 11B9 -> C5FE 110B 1167 11BA -> C5FF 110B 1167 11BB -> C600 110B 1167 11BC -> C601 110B 1167 11BD -> C602 110B 1167 11BE -> C603 110B 1167 11BF -> C604 110B 1167 11C0 -> C605 110B 1167 11C1 -> C606 110B 1167 11C2 -> C607 110B 1168 -> C608 110B 1168 11A8 -> C609 110B 1168 11A9 -> C60A 110B 1168 11AA -> C60B 110B 1168 11AB -> C60C 110B 1168 11AC -> C60D 110B 1168 11AD -> C60E 110B 1168 11AE -> C60F 110B 1168 11AF -> C610 110B 1168 11B0 -> C611 110B 1168 11B1 -> C612 110B 1168 11B2 -> C613 110B 1168 11B3 -> C614 110B 1168 11B4 -> C615 110B 1168 11B5 -> C616 110B 1168 11B6 -> C617 110B 1168 11B7 -> C618 110B 1168 11B8 -> C619 110B 1168 11B9 -> C61A 110B 1168 11BA -> C61B 110B 1168 11BB -> C61C 110B 1168 11BC -> C61D 110B 1168 11BD -> C61E 110B 1168 11BE -> C61F 110B 1168 11BF -> C620 110B 1168 11C0 -> C621 110B 1168 11C1 -> C622 110B 1168 11C2 -> C623 110B 1169 -> C624 110B 1169 11A8 -> C625 110B 1169 11A9 -> C626 110B 1169 11AA -> C627 110B 1169 11AB -> C628 110B 1169 11AC -> C629 110B 1169 11AD -> C62A 110B 1169 11AE -> C62B 110B 1169 11AF -> C62C 110B 1169 11B0 -> C62D 110B 1169 11B1 -> C62E 110B 1169 11B2 -> C62F 110B 1169 11B3 -> C630 110B 1169 11B4 -> C631 110B 1169 11B5 -> C632 110B 1169 11B6 -> C633 110B 1169 11B7 -> C634 110B 1169 11B8 -> C635 110B 1169 11B9 -> C636 110B 1169 11BA -> C637 110B 1169 11BB -> C638 110B 1169 11BC -> C639 110B 1169 11BD -> C63A 110B 1169 11BE -> C63B 110B 1169 11BF -> C63C 110B 1169 11C0 -> C63D 110B 1169 11C1 -> C63E 110B 1169 11C2 -> C63F 110B 116A -> C640 110B 116A 11A8 -> C641 110B 116A 11A9 -> C642 110B 116A 11AA -> C643 110B 116A 11AB -> C644 110B 116A 11AC -> C645 110B 116A 11AD -> C646 110B 116A 11AE -> C647 110B 116A 11AF -> C648 110B 116A 11B0 -> C649 110B 116A 11B1 -> C64A 110B 116A 11B2 -> C64B 110B 116A 11B3 -> C64C 110B 116A 11B4 -> C64D 110B 116A 11B5 -> C64E 110B 116A 11B6 -> C64F 110B 116A 11B7 -> C650 110B 116A 11B8 -> C651 110B 116A 11B9 -> C652 110B 116A 11BA -> C653 110B 116A 11BB -> C654 110B 116A 11BC -> C655 110B 116A 11BD -> C656 110B 116A 11BE -> C657 110B 116A 11BF -> C658 110B 116A 11C0 -> C659 110B 116A 11C1 -> C65A 110B 116A 11C2 -> C65B 110B 116B -> C65C 110B 116B 11A8 -> C65D 110B 116B 11A9 -> C65E 110B 116B 11AA -> C65F 110B 116B 11AB -> C660 110B 116B 11AC -> C661 110B 116B 11AD -> C662 110B 116B 11AE -> C663 110B 116B 11AF -> C664 110B 116B 11B0 -> C665 110B 116B 11B1 -> C666 110B 116B 11B2 -> C667 110B 116B 11B3 -> C668 110B 116B 11B4 -> C669 110B 116B 11B5 -> C66A 110B 116B 11B6 -> C66B 110B 116B 11B7 -> C66C 110B 116B 11B8 -> C66D 110B 116B 11B9 -> C66E 110B 116B 11BA -> C66F 110B 116B 11BB -> C670 110B 116B 11BC -> C671 110B 116B 11BD -> C672 110B 116B 11BE -> C673 110B 116B 11BF -> C674 110B 116B 11C0 -> C675 110B 116B 11C1 -> C676 110B 116B 11C2 -> C677 110B 116C -> C678 110B 116C 11A8 -> C679 110B 116C 11A9 -> C67A 110B 116C 11AA -> C67B 110B 116C 11AB -> C67C 110B 116C 11AC -> C67D 110B 116C 11AD -> C67E 110B 116C 11AE -> C67F 110B 116C 11AF -> C680 110B 116C 11B0 -> C681 110B 116C 11B1 -> C682 110B 116C 11B2 -> C683 110B 116C 11B3 -> C684 110B 116C 11B4 -> C685 110B 116C 11B5 -> C686 110B 116C 11B6 -> C687 110B 116C 11B7 -> C688 110B 116C 11B8 -> C689 110B 116C 11B9 -> C68A 110B 116C 11BA -> C68B 110B 116C 11BB -> C68C 110B 116C 11BC -> C68D 110B 116C 11BD -> C68E 110B 116C 11BE -> C68F 110B 116C 11BF -> C690 110B 116C 11C0 -> C691 110B 116C 11C1 -> C692 110B 116C 11C2 -> C693 110B 116D -> C694 110B 116D 11A8 -> C695 110B 116D 11A9 -> C696 110B 116D 11AA -> C697 110B 116D 11AB -> C698 110B 116D 11AC -> C699 110B 116D 11AD -> C69A 110B 116D 11AE -> C69B 110B 116D 11AF -> C69C 110B 116D 11B0 -> C69D 110B 116D 11B1 -> C69E 110B 116D 11B2 -> C69F 110B 116D 11B3 -> C6A0 110B 116D 11B4 -> C6A1 110B 116D 11B5 -> C6A2 110B 116D 11B6 -> C6A3 110B 116D 11B7 -> C6A4 110B 116D 11B8 -> C6A5 110B 116D 11B9 -> C6A6 110B 116D 11BA -> C6A7 110B 116D 11BB -> C6A8 110B 116D 11BC -> C6A9 110B 116D 11BD -> C6AA 110B 116D 11BE -> C6AB 110B 116D 11BF -> C6AC 110B 116D 11C0 -> C6AD 110B 116D 11C1 -> C6AE 110B 116D 11C2 -> C6AF 110B 116E -> C6B0 110B 116E 11A8 -> C6B1 110B 116E 11A9 -> C6B2 110B 116E 11AA -> C6B3 110B 116E 11AB -> C6B4 110B 116E 11AC -> C6B5 110B 116E 11AD -> C6B6 110B 116E 11AE -> C6B7 110B 116E 11AF -> C6B8 110B 116E 11B0 -> C6B9 110B 116E 11B1 -> C6BA 110B 116E 11B2 -> C6BB 110B 116E 11B3 -> C6BC 110B 116E 11B4 -> C6BD 110B 116E 11B5 -> C6BE 110B 116E 11B6 -> C6BF 110B 116E 11B7 -> C6C0 110B 116E 11B8 -> C6C1 110B 116E 11B9 -> C6C2 110B 116E 11BA -> C6C3 110B 116E 11BB -> C6C4 110B 116E 11BC -> C6C5 110B 116E 11BD -> C6C6 110B 116E 11BE -> C6C7 110B 116E 11BF -> C6C8 110B 116E 11C0 -> C6C9 110B 116E 11C1 -> C6CA 110B 116E 11C2 -> C6CB 110B 116F -> C6CC 110B 116F 11A8 -> C6CD 110B 116F 11A9 -> C6CE 110B 116F 11AA -> C6CF 110B 116F 11AB -> C6D0 110B 116F 11AC -> C6D1 110B 116F 11AD -> C6D2 110B 116F 11AE -> C6D3 110B 116F 11AF -> C6D4 110B 116F 11B0 -> C6D5 110B 116F 11B1 -> C6D6 110B 116F 11B2 -> C6D7 110B 116F 11B3 -> C6D8 110B 116F 11B4 -> C6D9 110B 116F 11B5 -> C6DA 110B 116F 11B6 -> C6DB 110B 116F 11B7 -> C6DC 110B 116F 11B8 -> C6DD 110B 116F 11B9 -> C6DE 110B 116F 11BA -> C6DF 110B 116F 11BB -> C6E0 110B 116F 11BC -> C6E1 110B 116F 11BD -> C6E2 110B 116F 11BE -> C6E3 110B 116F 11BF -> C6E4 110B 116F 11C0 -> C6E5 110B 116F 11C1 -> C6E6 110B 116F 11C2 -> C6E7 110B 1170 -> C6E8 110B 1170 11A8 -> C6E9 110B 1170 11A9 -> C6EA 110B 1170 11AA -> C6EB 110B 1170 11AB -> C6EC 110B 1170 11AC -> C6ED 110B 1170 11AD -> C6EE 110B 1170 11AE -> C6EF 110B 1170 11AF -> C6F0 110B 1170 11B0 -> C6F1 110B 1170 11B1 -> C6F2 110B 1170 11B2 -> C6F3 110B 1170 11B3 -> C6F4 110B 1170 11B4 -> C6F5 110B 1170 11B5 -> C6F6 110B 1170 11B6 -> C6F7 110B 1170 11B7 -> C6F8 110B 1170 11B8 -> C6F9 110B 1170 11B9 -> C6FA 110B 1170 11BA -> C6FB 110B 1170 11BB -> C6FC 110B 1170 11BC -> C6FD 110B 1170 11BD -> C6FE 110B 1170 11BE -> C6FF 110B 1170 11BF -> C700 110B 1170 11C0 -> C701 110B 1170 11C1 -> C702 110B 1170 11C2 -> C703 110B 1171 -> C704 110B 1171 11A8 -> C705 110B 1171 11A9 -> C706 110B 1171 11AA -> C707 110B 1171 11AB -> C708 110B 1171 11AC -> C709 110B 1171 11AD -> C70A 110B 1171 11AE -> C70B 110B 1171 11AF -> C70C 110B 1171 11B0 -> C70D 110B 1171 11B1 -> C70E 110B 1171 11B2 -> C70F 110B 1171 11B3 -> C710 110B 1171 11B4 -> C711 110B 1171 11B5 -> C712 110B 1171 11B6 -> C713 110B 1171 11B7 -> C714 110B 1171 11B8 -> C715 110B 1171 11B9 -> C716 110B 1171 11BA -> C717 110B 1171 11BB -> C718 110B 1171 11BC -> C719 110B 1171 11BD -> C71A 110B 1171 11BE -> C71B 110B 1171 11BF -> C71C 110B 1171 11C0 -> C71D 110B 1171 11C1 -> C71E 110B 1171 11C2 -> C71F 110B 1172 -> C720 110B 1172 11A8 -> C721 110B 1172 11A9 -> C722 110B 1172 11AA -> C723 110B 1172 11AB -> C724 110B 1172 11AC -> C725 110B 1172 11AD -> C726 110B 1172 11AE -> C727 110B 1172 11AF -> C728 110B 1172 11B0 -> C729 110B 1172 11B1 -> C72A 110B 1172 11B2 -> C72B 110B 1172 11B3 -> C72C 110B 1172 11B4 -> C72D 110B 1172 11B5 -> C72E 110B 1172 11B6 -> C72F 110B 1172 11B7 -> C730 110B 1172 11B8 -> C731 110B 1172 11B9 -> C732 110B 1172 11BA -> C733 110B 1172 11BB -> C734 110B 1172 11BC -> C735 110B 1172 11BD -> C736 110B 1172 11BE -> C737 110B 1172 11BF -> C738 110B 1172 11C0 -> C739 110B 1172 11C1 -> C73A 110B 1172 11C2 -> C73B 110B 1173 -> C73C 110B 1173 11A8 -> C73D 110B 1173 11A9 -> C73E 110B 1173 11AA -> C73F 110B 1173 11AB -> C740 110B 1173 11AC -> C741 110B 1173 11AD -> C742 110B 1173 11AE -> C743 110B 1173 11AF -> C744 110B 1173 11B0 -> C745 110B 1173 11B1 -> C746 110B 1173 11B2 -> C747 110B 1173 11B3 -> C748 110B 1173 11B4 -> C749 110B 1173 11B5 -> C74A 110B 1173 11B6 -> C74B 110B 1173 11B7 -> C74C 110B 1173 11B8 -> C74D 110B 1173 11B9 -> C74E 110B 1173 11BA -> C74F 110B 1173 11BB -> C750 110B 1173 11BC -> C751 110B 1173 11BD -> C752 110B 1173 11BE -> C753 110B 1173 11BF -> C754 110B 1173 11C0 -> C755 110B 1173 11C1 -> C756 110B 1173 11C2 -> C757 110B 1174 -> C758 110B 1174 11A8 -> C759 110B 1174 11A9 -> C75A 110B 1174 11AA -> C75B 110B 1174 11AB -> C75C 110B 1174 11AC -> C75D 110B 1174 11AD -> C75E 110B 1174 11AE -> C75F 110B 1174 11AF -> C760 110B 1174 11B0 -> C761 110B 1174 11B1 -> C762 110B 1174 11B2 -> C763 110B 1174 11B3 -> C764 110B 1174 11B4 -> C765 110B 1174 11B5 -> C766 110B 1174 11B6 -> C767 110B 1174 11B7 -> C768 110B 1174 11B8 -> C769 110B 1174 11B9 -> C76A 110B 1174 11BA -> C76B 110B 1174 11BB -> C76C 110B 1174 11BC -> C76D 110B 1174 11BD -> C76E 110B 1174 11BE -> C76F 110B 1174 11BF -> C770 110B 1174 11C0 -> C771 110B 1174 11C1 -> C772 110B 1174 11C2 -> C773 110B 1175 -> C774 110B 1175 11A8 -> C775 110B 1175 11A9 -> C776 110B 1175 11AA -> C777 110B 1175 11AB -> C778 110B 1175 11AC -> C779 110B 1175 11AD -> C77A 110B 1175 11AE -> C77B 110B 1175 11AF -> C77C 110B 1175 11B0 -> C77D 110B 1175 11B1 -> C77E 110B 1175 11B2 -> C77F 110B 1175 11B3 -> C780 110B 1175 11B4 -> C781 110B 1175 11B5 -> C782 110B 1175 11B6 -> C783 110B 1175 11B7 -> C784 110B 1175 11B8 -> C785 110B 1175 11B9 -> C786 110B 1175 11BA -> C787 110B 1175 11BB -> C788 110B 1175 11BC -> C789 110B 1175 11BD -> C78A 110B 1175 11BE -> C78B 110B 1175 11BF -> C78C 110B 1175 11C0 -> C78D 110B 1175 11C1 -> C78E 110B 1175 11C2 -> C78F 110C 1161 -> C790 110C 1161 11A8 -> C791 110C 1161 11A9 -> C792 110C 1161 11AA -> C793 110C 1161 11AB -> C794 110C 1161 11AC -> C795 110C 1161 11AD -> C796 110C 1161 11AE -> C797 110C 1161 11AF -> C798 110C 1161 11B0 -> C799 110C 1161 11B1 -> C79A 110C 1161 11B2 -> C79B 110C 1161 11B3 -> C79C 110C 1161 11B4 -> C79D 110C 1161 11B5 -> C79E 110C 1161 11B6 -> C79F 110C 1161 11B7 -> C7A0 110C 1161 11B8 -> C7A1 110C 1161 11B9 -> C7A2 110C 1161 11BA -> C7A3 110C 1161 11BB -> C7A4 110C 1161 11BC -> C7A5 110C 1161 11BD -> C7A6 110C 1161 11BE -> C7A7 110C 1161 11BF -> C7A8 110C 1161 11C0 -> C7A9 110C 1161 11C1 -> C7AA 110C 1161 11C2 -> C7AB 110C 1162 -> C7AC 110C 1162 11A8 -> C7AD 110C 1162 11A9 -> C7AE 110C 1162 11AA -> C7AF 110C 1162 11AB -> C7B0 110C 1162 11AC -> C7B1 110C 1162 11AD -> C7B2 110C 1162 11AE -> C7B3 110C 1162 11AF -> C7B4 110C 1162 11B0 -> C7B5 110C 1162 11B1 -> C7B6 110C 1162 11B2 -> C7B7 110C 1162 11B3 -> C7B8 110C 1162 11B4 -> C7B9 110C 1162 11B5 -> C7BA 110C 1162 11B6 -> C7BB 110C 1162 11B7 -> C7BC 110C 1162 11B8 -> C7BD 110C 1162 11B9 -> C7BE 110C 1162 11BA -> C7BF 110C 1162 11BB -> C7C0 110C 1162 11BC -> C7C1 110C 1162 11BD -> C7C2 110C 1162 11BE -> C7C3 110C 1162 11BF -> C7C4 110C 1162 11C0 -> C7C5 110C 1162 11C1 -> C7C6 110C 1162 11C2 -> C7C7 110C 1163 -> C7C8 110C 1163 11A8 -> C7C9 110C 1163 11A9 -> C7CA 110C 1163 11AA -> C7CB 110C 1163 11AB -> C7CC 110C 1163 11AC -> C7CD 110C 1163 11AD -> C7CE 110C 1163 11AE -> C7CF 110C 1163 11AF -> C7D0 110C 1163 11B0 -> C7D1 110C 1163 11B1 -> C7D2 110C 1163 11B2 -> C7D3 110C 1163 11B3 -> C7D4 110C 1163 11B4 -> C7D5 110C 1163 11B5 -> C7D6 110C 1163 11B6 -> C7D7 110C 1163 11B7 -> C7D8 110C 1163 11B8 -> C7D9 110C 1163 11B9 -> C7DA 110C 1163 11BA -> C7DB 110C 1163 11BB -> C7DC 110C 1163 11BC -> C7DD 110C 1163 11BD -> C7DE 110C 1163 11BE -> C7DF 110C 1163 11BF -> C7E0 110C 1163 11C0 -> C7E1 110C 1163 11C1 -> C7E2 110C 1163 11C2 -> C7E3 110C 1164 -> C7E4 110C 1164 11A8 -> C7E5 110C 1164 11A9 -> C7E6 110C 1164 11AA -> C7E7 110C 1164 11AB -> C7E8 110C 1164 11AC -> C7E9 110C 1164 11AD -> C7EA 110C 1164 11AE -> C7EB 110C 1164 11AF -> C7EC 110C 1164 11B0 -> C7ED 110C 1164 11B1 -> C7EE 110C 1164 11B2 -> C7EF 110C 1164 11B3 -> C7F0 110C 1164 11B4 -> C7F1 110C 1164 11B5 -> C7F2 110C 1164 11B6 -> C7F3 110C 1164 11B7 -> C7F4 110C 1164 11B8 -> C7F5 110C 1164 11B9 -> C7F6 110C 1164 11BA -> C7F7 110C 1164 11BB -> C7F8 110C 1164 11BC -> C7F9 110C 1164 11BD -> C7FA 110C 1164 11BE -> C7FB 110C 1164 11BF -> C7FC 110C 1164 11C0 -> C7FD 110C 1164 11C1 -> C7FE 110C 1164 11C2 -> C7FF 110C 1165 -> C800 110C 1165 11A8 -> C801 110C 1165 11A9 -> C802 110C 1165 11AA -> C803 110C 1165 11AB -> C804 110C 1165 11AC -> C805 110C 1165 11AD -> C806 110C 1165 11AE -> C807 110C 1165 11AF -> C808 110C 1165 11B0 -> C809 110C 1165 11B1 -> C80A 110C 1165 11B2 -> C80B 110C 1165 11B3 -> C80C 110C 1165 11B4 -> C80D 110C 1165 11B5 -> C80E 110C 1165 11B6 -> C80F 110C 1165 11B7 -> C810 110C 1165 11B8 -> C811 110C 1165 11B9 -> C812 110C 1165 11BA -> C813 110C 1165 11BB -> C814 110C 1165 11BC -> C815 110C 1165 11BD -> C816 110C 1165 11BE -> C817 110C 1165 11BF -> C818 110C 1165 11C0 -> C819 110C 1165 11C1 -> C81A 110C 1165 11C2 -> C81B 110C 1166 -> C81C 110C 1166 11A8 -> C81D 110C 1166 11A9 -> C81E 110C 1166 11AA -> C81F 110C 1166 11AB -> C820 110C 1166 11AC -> C821 110C 1166 11AD -> C822 110C 1166 11AE -> C823 110C 1166 11AF -> C824 110C 1166 11B0 -> C825 110C 1166 11B1 -> C826 110C 1166 11B2 -> C827 110C 1166 11B3 -> C828 110C 1166 11B4 -> C829 110C 1166 11B5 -> C82A 110C 1166 11B6 -> C82B 110C 1166 11B7 -> C82C 110C 1166 11B8 -> C82D 110C 1166 11B9 -> C82E 110C 1166 11BA -> C82F 110C 1166 11BB -> C830 110C 1166 11BC -> C831 110C 1166 11BD -> C832 110C 1166 11BE -> C833 110C 1166 11BF -> C834 110C 1166 11C0 -> C835 110C 1166 11C1 -> C836 110C 1166 11C2 -> C837 110C 1167 -> C838 110C 1167 11A8 -> C839 110C 1167 11A9 -> C83A 110C 1167 11AA -> C83B 110C 1167 11AB -> C83C 110C 1167 11AC -> C83D 110C 1167 11AD -> C83E 110C 1167 11AE -> C83F 110C 1167 11AF -> C840 110C 1167 11B0 -> C841 110C 1167 11B1 -> C842 110C 1167 11B2 -> C843 110C 1167 11B3 -> C844 110C 1167 11B4 -> C845 110C 1167 11B5 -> C846 110C 1167 11B6 -> C847 110C 1167 11B7 -> C848 110C 1167 11B8 -> C849 110C 1167 11B9 -> C84A 110C 1167 11BA -> C84B 110C 1167 11BB -> C84C 110C 1167 11BC -> C84D 110C 1167 11BD -> C84E 110C 1167 11BE -> C84F 110C 1167 11BF -> C850 110C 1167 11C0 -> C851 110C 1167 11C1 -> C852 110C 1167 11C2 -> C853 110C 1168 -> C854 110C 1168 11A8 -> C855 110C 1168 11A9 -> C856 110C 1168 11AA -> C857 110C 1168 11AB -> C858 110C 1168 11AC -> C859 110C 1168 11AD -> C85A 110C 1168 11AE -> C85B 110C 1168 11AF -> C85C 110C 1168 11B0 -> C85D 110C 1168 11B1 -> C85E 110C 1168 11B2 -> C85F 110C 1168 11B3 -> C860 110C 1168 11B4 -> C861 110C 1168 11B5 -> C862 110C 1168 11B6 -> C863 110C 1168 11B7 -> C864 110C 1168 11B8 -> C865 110C 1168 11B9 -> C866 110C 1168 11BA -> C867 110C 1168 11BB -> C868 110C 1168 11BC -> C869 110C 1168 11BD -> C86A 110C 1168 11BE -> C86B 110C 1168 11BF -> C86C 110C 1168 11C0 -> C86D 110C 1168 11C1 -> C86E 110C 1168 11C2 -> C86F 110C 1169 -> C870 110C 1169 11A8 -> C871 110C 1169 11A9 -> C872 110C 1169 11AA -> C873 110C 1169 11AB -> C874 110C 1169 11AC -> C875 110C 1169 11AD -> C876 110C 1169 11AE -> C877 110C 1169 11AF -> C878 110C 1169 11B0 -> C879 110C 1169 11B1 -> C87A 110C 1169 11B2 -> C87B 110C 1169 11B3 -> C87C 110C 1169 11B4 -> C87D 110C 1169 11B5 -> C87E 110C 1169 11B6 -> C87F 110C 1169 11B7 -> C880 110C 1169 11B8 -> C881 110C 1169 11B9 -> C882 110C 1169 11BA -> C883 110C 1169 11BB -> C884 110C 1169 11BC -> C885 110C 1169 11BD -> C886 110C 1169 11BE -> C887 110C 1169 11BF -> C888 110C 1169 11C0 -> C889 110C 1169 11C1 -> C88A 110C 1169 11C2 -> C88B 110C 116A -> C88C 110C 116A 11A8 -> C88D 110C 116A 11A9 -> C88E 110C 116A 11AA -> C88F 110C 116A 11AB -> C890 110C 116A 11AC -> C891 110C 116A 11AD -> C892 110C 116A 11AE -> C893 110C 116A 11AF -> C894 110C 116A 11B0 -> C895 110C 116A 11B1 -> C896 110C 116A 11B2 -> C897 110C 116A 11B3 -> C898 110C 116A 11B4 -> C899 110C 116A 11B5 -> C89A 110C 116A 11B6 -> C89B 110C 116A 11B7 -> C89C 110C 116A 11B8 -> C89D 110C 116A 11B9 -> C89E 110C 116A 11BA -> C89F 110C 116A 11BB -> C8A0 110C 116A 11BC -> C8A1 110C 116A 11BD -> C8A2 110C 116A 11BE -> C8A3 110C 116A 11BF -> C8A4 110C 116A 11C0 -> C8A5 110C 116A 11C1 -> C8A6 110C 116A 11C2 -> C8A7 110C 116B -> C8A8 110C 116B 11A8 -> C8A9 110C 116B 11A9 -> C8AA 110C 116B 11AA -> C8AB 110C 116B 11AB -> C8AC 110C 116B 11AC -> C8AD 110C 116B 11AD -> C8AE 110C 116B 11AE -> C8AF 110C 116B 11AF -> C8B0 110C 116B 11B0 -> C8B1 110C 116B 11B1 -> C8B2 110C 116B 11B2 -> C8B3 110C 116B 11B3 -> C8B4 110C 116B 11B4 -> C8B5 110C 116B 11B5 -> C8B6 110C 116B 11B6 -> C8B7 110C 116B 11B7 -> C8B8 110C 116B 11B8 -> C8B9 110C 116B 11B9 -> C8BA 110C 116B 11BA -> C8BB 110C 116B 11BB -> C8BC 110C 116B 11BC -> C8BD 110C 116B 11BD -> C8BE 110C 116B 11BE -> C8BF 110C 116B 11BF -> C8C0 110C 116B 11C0 -> C8C1 110C 116B 11C1 -> C8C2 110C 116B 11C2 -> C8C3 110C 116C -> C8C4 110C 116C 11A8 -> C8C5 110C 116C 11A9 -> C8C6 110C 116C 11AA -> C8C7 110C 116C 11AB -> C8C8 110C 116C 11AC -> C8C9 110C 116C 11AD -> C8CA 110C 116C 11AE -> C8CB 110C 116C 11AF -> C8CC 110C 116C 11B0 -> C8CD 110C 116C 11B1 -> C8CE 110C 116C 11B2 -> C8CF 110C 116C 11B3 -> C8D0 110C 116C 11B4 -> C8D1 110C 116C 11B5 -> C8D2 110C 116C 11B6 -> C8D3 110C 116C 11B7 -> C8D4 110C 116C 11B8 -> C8D5 110C 116C 11B9 -> C8D6 110C 116C 11BA -> C8D7 110C 116C 11BB -> C8D8 110C 116C 11BC -> C8D9 110C 116C 11BD -> C8DA 110C 116C 11BE -> C8DB 110C 116C 11BF -> C8DC 110C 116C 11C0 -> C8DD 110C 116C 11C1 -> C8DE 110C 116C 11C2 -> C8DF 110C 116D -> C8E0 110C 116D 11A8 -> C8E1 110C 116D 11A9 -> C8E2 110C 116D 11AA -> C8E3 110C 116D 11AB -> C8E4 110C 116D 11AC -> C8E5 110C 116D 11AD -> C8E6 110C 116D 11AE -> C8E7 110C 116D 11AF -> C8E8 110C 116D 11B0 -> C8E9 110C 116D 11B1 -> C8EA 110C 116D 11B2 -> C8EB 110C 116D 11B3 -> C8EC 110C 116D 11B4 -> C8ED 110C 116D 11B5 -> C8EE 110C 116D 11B6 -> C8EF 110C 116D 11B7 -> C8F0 110C 116D 11B8 -> C8F1 110C 116D 11B9 -> C8F2 110C 116D 11BA -> C8F3 110C 116D 11BB -> C8F4 110C 116D 11BC -> C8F5 110C 116D 11BD -> C8F6 110C 116D 11BE -> C8F7 110C 116D 11BF -> C8F8 110C 116D 11C0 -> C8F9 110C 116D 11C1 -> C8FA 110C 116D 11C2 -> C8FB 110C 116E -> C8FC 110C 116E 11A8 -> C8FD 110C 116E 11A9 -> C8FE 110C 116E 11AA -> C8FF 110C 116E 11AB -> C900 110C 116E 11AC -> C901 110C 116E 11AD -> C902 110C 116E 11AE -> C903 110C 116E 11AF -> C904 110C 116E 11B0 -> C905 110C 116E 11B1 -> C906 110C 116E 11B2 -> C907 110C 116E 11B3 -> C908 110C 116E 11B4 -> C909 110C 116E 11B5 -> C90A 110C 116E 11B6 -> C90B 110C 116E 11B7 -> C90C 110C 116E 11B8 -> C90D 110C 116E 11B9 -> C90E 110C 116E 11BA -> C90F 110C 116E 11BB -> C910 110C 116E 11BC -> C911 110C 116E 11BD -> C912 110C 116E 11BE -> C913 110C 116E 11BF -> C914 110C 116E 11C0 -> C915 110C 116E 11C1 -> C916 110C 116E 11C2 -> C917 110C 116F -> C918 110C 116F 11A8 -> C919 110C 116F 11A9 -> C91A 110C 116F 11AA -> C91B 110C 116F 11AB -> C91C 110C 116F 11AC -> C91D 110C 116F 11AD -> C91E 110C 116F 11AE -> C91F 110C 116F 11AF -> C920 110C 116F 11B0 -> C921 110C 116F 11B1 -> C922 110C 116F 11B2 -> C923 110C 116F 11B3 -> C924 110C 116F 11B4 -> C925 110C 116F 11B5 -> C926 110C 116F 11B6 -> C927 110C 116F 11B7 -> C928 110C 116F 11B8 -> C929 110C 116F 11B9 -> C92A 110C 116F 11BA -> C92B 110C 116F 11BB -> C92C 110C 116F 11BC -> C92D 110C 116F 11BD -> C92E 110C 116F 11BE -> C92F 110C 116F 11BF -> C930 110C 116F 11C0 -> C931 110C 116F 11C1 -> C932 110C 116F 11C2 -> C933 110C 1170 -> C934 110C 1170 11A8 -> C935 110C 1170 11A9 -> C936 110C 1170 11AA -> C937 110C 1170 11AB -> C938 110C 1170 11AC -> C939 110C 1170 11AD -> C93A 110C 1170 11AE -> C93B 110C 1170 11AF -> C93C 110C 1170 11B0 -> C93D 110C 1170 11B1 -> C93E 110C 1170 11B2 -> C93F 110C 1170 11B3 -> C940 110C 1170 11B4 -> C941 110C 1170 11B5 -> C942 110C 1170 11B6 -> C943 110C 1170 11B7 -> C944 110C 1170 11B8 -> C945 110C 1170 11B9 -> C946 110C 1170 11BA -> C947 110C 1170 11BB -> C948 110C 1170 11BC -> C949 110C 1170 11BD -> C94A 110C 1170 11BE -> C94B 110C 1170 11BF -> C94C 110C 1170 11C0 -> C94D 110C 1170 11C1 -> C94E 110C 1170 11C2 -> C94F 110C 1171 -> C950 110C 1171 11A8 -> C951 110C 1171 11A9 -> C952 110C 1171 11AA -> C953 110C 1171 11AB -> C954 110C 1171 11AC -> C955 110C 1171 11AD -> C956 110C 1171 11AE -> C957 110C 1171 11AF -> C958 110C 1171 11B0 -> C959 110C 1171 11B1 -> C95A 110C 1171 11B2 -> C95B 110C 1171 11B3 -> C95C 110C 1171 11B4 -> C95D 110C 1171 11B5 -> C95E 110C 1171 11B6 -> C95F 110C 1171 11B7 -> C960 110C 1171 11B8 -> C961 110C 1171 11B9 -> C962 110C 1171 11BA -> C963 110C 1171 11BB -> C964 110C 1171 11BC -> C965 110C 1171 11BD -> C966 110C 1171 11BE -> C967 110C 1171 11BF -> C968 110C 1171 11C0 -> C969 110C 1171 11C1 -> C96A 110C 1171 11C2 -> C96B 110C 1172 -> C96C 110C 1172 11A8 -> C96D 110C 1172 11A9 -> C96E 110C 1172 11AA -> C96F 110C 1172 11AB -> C970 110C 1172 11AC -> C971 110C 1172 11AD -> C972 110C 1172 11AE -> C973 110C 1172 11AF -> C974 110C 1172 11B0 -> C975 110C 1172 11B1 -> C976 110C 1172 11B2 -> C977 110C 1172 11B3 -> C978 110C 1172 11B4 -> C979 110C 1172 11B5 -> C97A 110C 1172 11B6 -> C97B 110C 1172 11B7 -> C97C 110C 1172 11B8 -> C97D 110C 1172 11B9 -> C97E 110C 1172 11BA -> C97F 110C 1172 11BB -> C980 110C 1172 11BC -> C981 110C 1172 11BD -> C982 110C 1172 11BE -> C983 110C 1172 11BF -> C984 110C 1172 11C0 -> C985 110C 1172 11C1 -> C986 110C 1172 11C2 -> C987 110C 1173 -> C988 110C 1173 11A8 -> C989 110C 1173 11A9 -> C98A 110C 1173 11AA -> C98B 110C 1173 11AB -> C98C 110C 1173 11AC -> C98D 110C 1173 11AD -> C98E 110C 1173 11AE -> C98F 110C 1173 11AF -> C990 110C 1173 11B0 -> C991 110C 1173 11B1 -> C992 110C 1173 11B2 -> C993 110C 1173 11B3 -> C994 110C 1173 11B4 -> C995 110C 1173 11B5 -> C996 110C 1173 11B6 -> C997 110C 1173 11B7 -> C998 110C 1173 11B8 -> C999 110C 1173 11B9 -> C99A 110C 1173 11BA -> C99B 110C 1173 11BB -> C99C 110C 1173 11BC -> C99D 110C 1173 11BD -> C99E 110C 1173 11BE -> C99F 110C 1173 11BF -> C9A0 110C 1173 11C0 -> C9A1 110C 1173 11C1 -> C9A2 110C 1173 11C2 -> C9A3 110C 1174 -> C9A4 110C 1174 11A8 -> C9A5 110C 1174 11A9 -> C9A6 110C 1174 11AA -> C9A7 110C 1174 11AB -> C9A8 110C 1174 11AC -> C9A9 110C 1174 11AD -> C9AA 110C 1174 11AE -> C9AB 110C 1174 11AF -> C9AC 110C 1174 11B0 -> C9AD 110C 1174 11B1 -> C9AE 110C 1174 11B2 -> C9AF 110C 1174 11B3 -> C9B0 110C 1174 11B4 -> C9B1 110C 1174 11B5 -> C9B2 110C 1174 11B6 -> C9B3 110C 1174 11B7 -> C9B4 110C 1174 11B8 -> C9B5 110C 1174 11B9 -> C9B6 110C 1174 11BA -> C9B7 110C 1174 11BB -> C9B8 110C 1174 11BC -> C9B9 110C 1174 11BD -> C9BA 110C 1174 11BE -> C9BB 110C 1174 11BF -> C9BC 110C 1174 11C0 -> C9BD 110C 1174 11C1 -> C9BE 110C 1174 11C2 -> C9BF 110C 1175 -> C9C0 110C 1175 11A8 -> C9C1 110C 1175 11A9 -> C9C2 110C 1175 11AA -> C9C3 110C 1175 11AB -> C9C4 110C 1175 11AC -> C9C5 110C 1175 11AD -> C9C6 110C 1175 11AE -> C9C7 110C 1175 11AF -> C9C8 110C 1175 11B0 -> C9C9 110C 1175 11B1 -> C9CA 110C 1175 11B2 -> C9CB 110C 1175 11B3 -> C9CC 110C 1175 11B4 -> C9CD 110C 1175 11B5 -> C9CE 110C 1175 11B6 -> C9CF 110C 1175 11B7 -> C9D0 110C 1175 11B8 -> C9D1 110C 1175 11B9 -> C9D2 110C 1175 11BA -> C9D3 110C 1175 11BB -> C9D4 110C 1175 11BC -> C9D5 110C 1175 11BD -> C9D6 110C 1175 11BE -> C9D7 110C 1175 11BF -> C9D8 110C 1175 11C0 -> C9D9 110C 1175 11C1 -> C9DA 110C 1175 11C2 -> C9DB 110D 1161 -> C9DC 110D 1161 11A8 -> C9DD 110D 1161 11A9 -> C9DE 110D 1161 11AA -> C9DF 110D 1161 11AB -> C9E0 110D 1161 11AC -> C9E1 110D 1161 11AD -> C9E2 110D 1161 11AE -> C9E3 110D 1161 11AF -> C9E4 110D 1161 11B0 -> C9E5 110D 1161 11B1 -> C9E6 110D 1161 11B2 -> C9E7 110D 1161 11B3 -> C9E8 110D 1161 11B4 -> C9E9 110D 1161 11B5 -> C9EA 110D 1161 11B6 -> C9EB 110D 1161 11B7 -> C9EC 110D 1161 11B8 -> C9ED 110D 1161 11B9 -> C9EE 110D 1161 11BA -> C9EF 110D 1161 11BB -> C9F0 110D 1161 11BC -> C9F1 110D 1161 11BD -> C9F2 110D 1161 11BE -> C9F3 110D 1161 11BF -> C9F4 110D 1161 11C0 -> C9F5 110D 1161 11C1 -> C9F6 110D 1161 11C2 -> C9F7 110D 1162 -> C9F8 110D 1162 11A8 -> C9F9 110D 1162 11A9 -> C9FA 110D 1162 11AA -> C9FB 110D 1162 11AB -> C9FC 110D 1162 11AC -> C9FD 110D 1162 11AD -> C9FE 110D 1162 11AE -> C9FF 110D 1162 11AF -> CA00 110D 1162 11B0 -> CA01 110D 1162 11B1 -> CA02 110D 1162 11B2 -> CA03 110D 1162 11B3 -> CA04 110D 1162 11B4 -> CA05 110D 1162 11B5 -> CA06 110D 1162 11B6 -> CA07 110D 1162 11B7 -> CA08 110D 1162 11B8 -> CA09 110D 1162 11B9 -> CA0A 110D 1162 11BA -> CA0B 110D 1162 11BB -> CA0C 110D 1162 11BC -> CA0D 110D 1162 11BD -> CA0E 110D 1162 11BE -> CA0F 110D 1162 11BF -> CA10 110D 1162 11C0 -> CA11 110D 1162 11C1 -> CA12 110D 1162 11C2 -> CA13 110D 1163 -> CA14 110D 1163 11A8 -> CA15 110D 1163 11A9 -> CA16 110D 1163 11AA -> CA17 110D 1163 11AB -> CA18 110D 1163 11AC -> CA19 110D 1163 11AD -> CA1A 110D 1163 11AE -> CA1B 110D 1163 11AF -> CA1C 110D 1163 11B0 -> CA1D 110D 1163 11B1 -> CA1E 110D 1163 11B2 -> CA1F 110D 1163 11B3 -> CA20 110D 1163 11B4 -> CA21 110D 1163 11B5 -> CA22 110D 1163 11B6 -> CA23 110D 1163 11B7 -> CA24 110D 1163 11B8 -> CA25 110D 1163 11B9 -> CA26 110D 1163 11BA -> CA27 110D 1163 11BB -> CA28 110D 1163 11BC -> CA29 110D 1163 11BD -> CA2A 110D 1163 11BE -> CA2B 110D 1163 11BF -> CA2C 110D 1163 11C0 -> CA2D 110D 1163 11C1 -> CA2E 110D 1163 11C2 -> CA2F 110D 1164 -> CA30 110D 1164 11A8 -> CA31 110D 1164 11A9 -> CA32 110D 1164 11AA -> CA33 110D 1164 11AB -> CA34 110D 1164 11AC -> CA35 110D 1164 11AD -> CA36 110D 1164 11AE -> CA37 110D 1164 11AF -> CA38 110D 1164 11B0 -> CA39 110D 1164 11B1 -> CA3A 110D 1164 11B2 -> CA3B 110D 1164 11B3 -> CA3C 110D 1164 11B4 -> CA3D 110D 1164 11B5 -> CA3E 110D 1164 11B6 -> CA3F 110D 1164 11B7 -> CA40 110D 1164 11B8 -> CA41 110D 1164 11B9 -> CA42 110D 1164 11BA -> CA43 110D 1164 11BB -> CA44 110D 1164 11BC -> CA45 110D 1164 11BD -> CA46 110D 1164 11BE -> CA47 110D 1164 11BF -> CA48 110D 1164 11C0 -> CA49 110D 1164 11C1 -> CA4A 110D 1164 11C2 -> CA4B 110D 1165 -> CA4C 110D 1165 11A8 -> CA4D 110D 1165 11A9 -> CA4E 110D 1165 11AA -> CA4F 110D 1165 11AB -> CA50 110D 1165 11AC -> CA51 110D 1165 11AD -> CA52 110D 1165 11AE -> CA53 110D 1165 11AF -> CA54 110D 1165 11B0 -> CA55 110D 1165 11B1 -> CA56 110D 1165 11B2 -> CA57 110D 1165 11B3 -> CA58 110D 1165 11B4 -> CA59 110D 1165 11B5 -> CA5A 110D 1165 11B6 -> CA5B 110D 1165 11B7 -> CA5C 110D 1165 11B8 -> CA5D 110D 1165 11B9 -> CA5E 110D 1165 11BA -> CA5F 110D 1165 11BB -> CA60 110D 1165 11BC -> CA61 110D 1165 11BD -> CA62 110D 1165 11BE -> CA63 110D 1165 11BF -> CA64 110D 1165 11C0 -> CA65 110D 1165 11C1 -> CA66 110D 1165 11C2 -> CA67 110D 1166 -> CA68 110D 1166 11A8 -> CA69 110D 1166 11A9 -> CA6A 110D 1166 11AA -> CA6B 110D 1166 11AB -> CA6C 110D 1166 11AC -> CA6D 110D 1166 11AD -> CA6E 110D 1166 11AE -> CA6F 110D 1166 11AF -> CA70 110D 1166 11B0 -> CA71 110D 1166 11B1 -> CA72 110D 1166 11B2 -> CA73 110D 1166 11B3 -> CA74 110D 1166 11B4 -> CA75 110D 1166 11B5 -> CA76 110D 1166 11B6 -> CA77 110D 1166 11B7 -> CA78 110D 1166 11B8 -> CA79 110D 1166 11B9 -> CA7A 110D 1166 11BA -> CA7B 110D 1166 11BB -> CA7C 110D 1166 11BC -> CA7D 110D 1166 11BD -> CA7E 110D 1166 11BE -> CA7F 110D 1166 11BF -> CA80 110D 1166 11C0 -> CA81 110D 1166 11C1 -> CA82 110D 1166 11C2 -> CA83 110D 1167 -> CA84 110D 1167 11A8 -> CA85 110D 1167 11A9 -> CA86 110D 1167 11AA -> CA87 110D 1167 11AB -> CA88 110D 1167 11AC -> CA89 110D 1167 11AD -> CA8A 110D 1167 11AE -> CA8B 110D 1167 11AF -> CA8C 110D 1167 11B0 -> CA8D 110D 1167 11B1 -> CA8E 110D 1167 11B2 -> CA8F 110D 1167 11B3 -> CA90 110D 1167 11B4 -> CA91 110D 1167 11B5 -> CA92 110D 1167 11B6 -> CA93 110D 1167 11B7 -> CA94 110D 1167 11B8 -> CA95 110D 1167 11B9 -> CA96 110D 1167 11BA -> CA97 110D 1167 11BB -> CA98 110D 1167 11BC -> CA99 110D 1167 11BD -> CA9A 110D 1167 11BE -> CA9B 110D 1167 11BF -> CA9C 110D 1167 11C0 -> CA9D 110D 1167 11C1 -> CA9E 110D 1167 11C2 -> CA9F 110D 1168 -> CAA0 110D 1168 11A8 -> CAA1 110D 1168 11A9 -> CAA2 110D 1168 11AA -> CAA3 110D 1168 11AB -> CAA4 110D 1168 11AC -> CAA5 110D 1168 11AD -> CAA6 110D 1168 11AE -> CAA7 110D 1168 11AF -> CAA8 110D 1168 11B0 -> CAA9 110D 1168 11B1 -> CAAA 110D 1168 11B2 -> CAAB 110D 1168 11B3 -> CAAC 110D 1168 11B4 -> CAAD 110D 1168 11B5 -> CAAE 110D 1168 11B6 -> CAAF 110D 1168 11B7 -> CAB0 110D 1168 11B8 -> CAB1 110D 1168 11B9 -> CAB2 110D 1168 11BA -> CAB3 110D 1168 11BB -> CAB4 110D 1168 11BC -> CAB5 110D 1168 11BD -> CAB6 110D 1168 11BE -> CAB7 110D 1168 11BF -> CAB8 110D 1168 11C0 -> CAB9 110D 1168 11C1 -> CABA 110D 1168 11C2 -> CABB 110D 1169 -> CABC 110D 1169 11A8 -> CABD 110D 1169 11A9 -> CABE 110D 1169 11AA -> CABF 110D 1169 11AB -> CAC0 110D 1169 11AC -> CAC1 110D 1169 11AD -> CAC2 110D 1169 11AE -> CAC3 110D 1169 11AF -> CAC4 110D 1169 11B0 -> CAC5 110D 1169 11B1 -> CAC6 110D 1169 11B2 -> CAC7 110D 1169 11B3 -> CAC8 110D 1169 11B4 -> CAC9 110D 1169 11B5 -> CACA 110D 1169 11B6 -> CACB 110D 1169 11B7 -> CACC 110D 1169 11B8 -> CACD 110D 1169 11B9 -> CACE 110D 1169 11BA -> CACF 110D 1169 11BB -> CAD0 110D 1169 11BC -> CAD1 110D 1169 11BD -> CAD2 110D 1169 11BE -> CAD3 110D 1169 11BF -> CAD4 110D 1169 11C0 -> CAD5 110D 1169 11C1 -> CAD6 110D 1169 11C2 -> CAD7 110D 116A -> CAD8 110D 116A 11A8 -> CAD9 110D 116A 11A9 -> CADA 110D 116A 11AA -> CADB 110D 116A 11AB -> CADC 110D 116A 11AC -> CADD 110D 116A 11AD -> CADE 110D 116A 11AE -> CADF 110D 116A 11AF -> CAE0 110D 116A 11B0 -> CAE1 110D 116A 11B1 -> CAE2 110D 116A 11B2 -> CAE3 110D 116A 11B3 -> CAE4 110D 116A 11B4 -> CAE5 110D 116A 11B5 -> CAE6 110D 116A 11B6 -> CAE7 110D 116A 11B7 -> CAE8 110D 116A 11B8 -> CAE9 110D 116A 11B9 -> CAEA 110D 116A 11BA -> CAEB 110D 116A 11BB -> CAEC 110D 116A 11BC -> CAED 110D 116A 11BD -> CAEE 110D 116A 11BE -> CAEF 110D 116A 11BF -> CAF0 110D 116A 11C0 -> CAF1 110D 116A 11C1 -> CAF2 110D 116A 11C2 -> CAF3 110D 116B -> CAF4 110D 116B 11A8 -> CAF5 110D 116B 11A9 -> CAF6 110D 116B 11AA -> CAF7 110D 116B 11AB -> CAF8 110D 116B 11AC -> CAF9 110D 116B 11AD -> CAFA 110D 116B 11AE -> CAFB 110D 116B 11AF -> CAFC 110D 116B 11B0 -> CAFD 110D 116B 11B1 -> CAFE 110D 116B 11B2 -> CAFF 110D 116B 11B3 -> CB00 110D 116B 11B4 -> CB01 110D 116B 11B5 -> CB02 110D 116B 11B6 -> CB03 110D 116B 11B7 -> CB04 110D 116B 11B8 -> CB05 110D 116B 11B9 -> CB06 110D 116B 11BA -> CB07 110D 116B 11BB -> CB08 110D 116B 11BC -> CB09 110D 116B 11BD -> CB0A 110D 116B 11BE -> CB0B 110D 116B 11BF -> CB0C 110D 116B 11C0 -> CB0D 110D 116B 11C1 -> CB0E 110D 116B 11C2 -> CB0F 110D 116C -> CB10 110D 116C 11A8 -> CB11 110D 116C 11A9 -> CB12 110D 116C 11AA -> CB13 110D 116C 11AB -> CB14 110D 116C 11AC -> CB15 110D 116C 11AD -> CB16 110D 116C 11AE -> CB17 110D 116C 11AF -> CB18 110D 116C 11B0 -> CB19 110D 116C 11B1 -> CB1A 110D 116C 11B2 -> CB1B 110D 116C 11B3 -> CB1C 110D 116C 11B4 -> CB1D 110D 116C 11B5 -> CB1E 110D 116C 11B6 -> CB1F 110D 116C 11B7 -> CB20 110D 116C 11B8 -> CB21 110D 116C 11B9 -> CB22 110D 116C 11BA -> CB23 110D 116C 11BB -> CB24 110D 116C 11BC -> CB25 110D 116C 11BD -> CB26 110D 116C 11BE -> CB27 110D 116C 11BF -> CB28 110D 116C 11C0 -> CB29 110D 116C 11C1 -> CB2A 110D 116C 11C2 -> CB2B 110D 116D -> CB2C 110D 116D 11A8 -> CB2D 110D 116D 11A9 -> CB2E 110D 116D 11AA -> CB2F 110D 116D 11AB -> CB30 110D 116D 11AC -> CB31 110D 116D 11AD -> CB32 110D 116D 11AE -> CB33 110D 116D 11AF -> CB34 110D 116D 11B0 -> CB35 110D 116D 11B1 -> CB36 110D 116D 11B2 -> CB37 110D 116D 11B3 -> CB38 110D 116D 11B4 -> CB39 110D 116D 11B5 -> CB3A 110D 116D 11B6 -> CB3B 110D 116D 11B7 -> CB3C 110D 116D 11B8 -> CB3D 110D 116D 11B9 -> CB3E 110D 116D 11BA -> CB3F 110D 116D 11BB -> CB40 110D 116D 11BC -> CB41 110D 116D 11BD -> CB42 110D 116D 11BE -> CB43 110D 116D 11BF -> CB44 110D 116D 11C0 -> CB45 110D 116D 11C1 -> CB46 110D 116D 11C2 -> CB47 110D 116E -> CB48 110D 116E 11A8 -> CB49 110D 116E 11A9 -> CB4A 110D 116E 11AA -> CB4B 110D 116E 11AB -> CB4C 110D 116E 11AC -> CB4D 110D 116E 11AD -> CB4E 110D 116E 11AE -> CB4F 110D 116E 11AF -> CB50 110D 116E 11B0 -> CB51 110D 116E 11B1 -> CB52 110D 116E 11B2 -> CB53 110D 116E 11B3 -> CB54 110D 116E 11B4 -> CB55 110D 116E 11B5 -> CB56 110D 116E 11B6 -> CB57 110D 116E 11B7 -> CB58 110D 116E 11B8 -> CB59 110D 116E 11B9 -> CB5A 110D 116E 11BA -> CB5B 110D 116E 11BB -> CB5C 110D 116E 11BC -> CB5D 110D 116E 11BD -> CB5E 110D 116E 11BE -> CB5F 110D 116E 11BF -> CB60 110D 116E 11C0 -> CB61 110D 116E 11C1 -> CB62 110D 116E 11C2 -> CB63 110D 116F -> CB64 110D 116F 11A8 -> CB65 110D 116F 11A9 -> CB66 110D 116F 11AA -> CB67 110D 116F 11AB -> CB68 110D 116F 11AC -> CB69 110D 116F 11AD -> CB6A 110D 116F 11AE -> CB6B 110D 116F 11AF -> CB6C 110D 116F 11B0 -> CB6D 110D 116F 11B1 -> CB6E 110D 116F 11B2 -> CB6F 110D 116F 11B3 -> CB70 110D 116F 11B4 -> CB71 110D 116F 11B5 -> CB72 110D 116F 11B6 -> CB73 110D 116F 11B7 -> CB74 110D 116F 11B8 -> CB75 110D 116F 11B9 -> CB76 110D 116F 11BA -> CB77 110D 116F 11BB -> CB78 110D 116F 11BC -> CB79 110D 116F 11BD -> CB7A 110D 116F 11BE -> CB7B 110D 116F 11BF -> CB7C 110D 116F 11C0 -> CB7D 110D 116F 11C1 -> CB7E 110D 116F 11C2 -> CB7F 110D 1170 -> CB80 110D 1170 11A8 -> CB81 110D 1170 11A9 -> CB82 110D 1170 11AA -> CB83 110D 1170 11AB -> CB84 110D 1170 11AC -> CB85 110D 1170 11AD -> CB86 110D 1170 11AE -> CB87 110D 1170 11AF -> CB88 110D 1170 11B0 -> CB89 110D 1170 11B1 -> CB8A 110D 1170 11B2 -> CB8B 110D 1170 11B3 -> CB8C 110D 1170 11B4 -> CB8D 110D 1170 11B5 -> CB8E 110D 1170 11B6 -> CB8F 110D 1170 11B7 -> CB90 110D 1170 11B8 -> CB91 110D 1170 11B9 -> CB92 110D 1170 11BA -> CB93 110D 1170 11BB -> CB94 110D 1170 11BC -> CB95 110D 1170 11BD -> CB96 110D 1170 11BE -> CB97 110D 1170 11BF -> CB98 110D 1170 11C0 -> CB99 110D 1170 11C1 -> CB9A 110D 1170 11C2 -> CB9B 110D 1171 -> CB9C 110D 1171 11A8 -> CB9D 110D 1171 11A9 -> CB9E 110D 1171 11AA -> CB9F 110D 1171 11AB -> CBA0 110D 1171 11AC -> CBA1 110D 1171 11AD -> CBA2 110D 1171 11AE -> CBA3 110D 1171 11AF -> CBA4 110D 1171 11B0 -> CBA5 110D 1171 11B1 -> CBA6 110D 1171 11B2 -> CBA7 110D 1171 11B3 -> CBA8 110D 1171 11B4 -> CBA9 110D 1171 11B5 -> CBAA 110D 1171 11B6 -> CBAB 110D 1171 11B7 -> CBAC 110D 1171 11B8 -> CBAD 110D 1171 11B9 -> CBAE 110D 1171 11BA -> CBAF 110D 1171 11BB -> CBB0 110D 1171 11BC -> CBB1 110D 1171 11BD -> CBB2 110D 1171 11BE -> CBB3 110D 1171 11BF -> CBB4 110D 1171 11C0 -> CBB5 110D 1171 11C1 -> CBB6 110D 1171 11C2 -> CBB7 110D 1172 -> CBB8 110D 1172 11A8 -> CBB9 110D 1172 11A9 -> CBBA 110D 1172 11AA -> CBBB 110D 1172 11AB -> CBBC 110D 1172 11AC -> CBBD 110D 1172 11AD -> CBBE 110D 1172 11AE -> CBBF 110D 1172 11AF -> CBC0 110D 1172 11B0 -> CBC1 110D 1172 11B1 -> CBC2 110D 1172 11B2 -> CBC3 110D 1172 11B3 -> CBC4 110D 1172 11B4 -> CBC5 110D 1172 11B5 -> CBC6 110D 1172 11B6 -> CBC7 110D 1172 11B7 -> CBC8 110D 1172 11B8 -> CBC9 110D 1172 11B9 -> CBCA 110D 1172 11BA -> CBCB 110D 1172 11BB -> CBCC 110D 1172 11BC -> CBCD 110D 1172 11BD -> CBCE 110D 1172 11BE -> CBCF 110D 1172 11BF -> CBD0 110D 1172 11C0 -> CBD1 110D 1172 11C1 -> CBD2 110D 1172 11C2 -> CBD3 110D 1173 -> CBD4 110D 1173 11A8 -> CBD5 110D 1173 11A9 -> CBD6 110D 1173 11AA -> CBD7 110D 1173 11AB -> CBD8 110D 1173 11AC -> CBD9 110D 1173 11AD -> CBDA 110D 1173 11AE -> CBDB 110D 1173 11AF -> CBDC 110D 1173 11B0 -> CBDD 110D 1173 11B1 -> CBDE 110D 1173 11B2 -> CBDF 110D 1173 11B3 -> CBE0 110D 1173 11B4 -> CBE1 110D 1173 11B5 -> CBE2 110D 1173 11B6 -> CBE3 110D 1173 11B7 -> CBE4 110D 1173 11B8 -> CBE5 110D 1173 11B9 -> CBE6 110D 1173 11BA -> CBE7 110D 1173 11BB -> CBE8 110D 1173 11BC -> CBE9 110D 1173 11BD -> CBEA 110D 1173 11BE -> CBEB 110D 1173 11BF -> CBEC 110D 1173 11C0 -> CBED 110D 1173 11C1 -> CBEE 110D 1173 11C2 -> CBEF 110D 1174 -> CBF0 110D 1174 11A8 -> CBF1 110D 1174 11A9 -> CBF2 110D 1174 11AA -> CBF3 110D 1174 11AB -> CBF4 110D 1174 11AC -> CBF5 110D 1174 11AD -> CBF6 110D 1174 11AE -> CBF7 110D 1174 11AF -> CBF8 110D 1174 11B0 -> CBF9 110D 1174 11B1 -> CBFA 110D 1174 11B2 -> CBFB 110D 1174 11B3 -> CBFC 110D 1174 11B4 -> CBFD 110D 1174 11B5 -> CBFE 110D 1174 11B6 -> CBFF 110D 1174 11B7 -> CC00 110D 1174 11B8 -> CC01 110D 1174 11B9 -> CC02 110D 1174 11BA -> CC03 110D 1174 11BB -> CC04 110D 1174 11BC -> CC05 110D 1174 11BD -> CC06 110D 1174 11BE -> CC07 110D 1174 11BF -> CC08 110D 1174 11C0 -> CC09 110D 1174 11C1 -> CC0A 110D 1174 11C2 -> CC0B 110D 1175 -> CC0C 110D 1175 11A8 -> CC0D 110D 1175 11A9 -> CC0E 110D 1175 11AA -> CC0F 110D 1175 11AB -> CC10 110D 1175 11AC -> CC11 110D 1175 11AD -> CC12 110D 1175 11AE -> CC13 110D 1175 11AF -> CC14 110D 1175 11B0 -> CC15 110D 1175 11B1 -> CC16 110D 1175 11B2 -> CC17 110D 1175 11B3 -> CC18 110D 1175 11B4 -> CC19 110D 1175 11B5 -> CC1A 110D 1175 11B6 -> CC1B 110D 1175 11B7 -> CC1C 110D 1175 11B8 -> CC1D 110D 1175 11B9 -> CC1E 110D 1175 11BA -> CC1F 110D 1175 11BB -> CC20 110D 1175 11BC -> CC21 110D 1175 11BD -> CC22 110D 1175 11BE -> CC23 110D 1175 11BF -> CC24 110D 1175 11C0 -> CC25 110D 1175 11C1 -> CC26 110D 1175 11C2 -> CC27 110E 1161 -> CC28 110E 1161 11A8 -> CC29 110E 1161 11A9 -> CC2A 110E 1161 11AA -> CC2B 110E 1161 11AB -> CC2C 110E 1161 11AC -> CC2D 110E 1161 11AD -> CC2E 110E 1161 11AE -> CC2F 110E 1161 11AF -> CC30 110E 1161 11B0 -> CC31 110E 1161 11B1 -> CC32 110E 1161 11B2 -> CC33 110E 1161 11B3 -> CC34 110E 1161 11B4 -> CC35 110E 1161 11B5 -> CC36 110E 1161 11B6 -> CC37 110E 1161 11B7 -> CC38 110E 1161 11B8 -> CC39 110E 1161 11B9 -> CC3A 110E 1161 11BA -> CC3B 110E 1161 11BB -> CC3C 110E 1161 11BC -> CC3D 110E 1161 11BD -> CC3E 110E 1161 11BE -> CC3F 110E 1161 11BF -> CC40 110E 1161 11C0 -> CC41 110E 1161 11C1 -> CC42 110E 1161 11C2 -> CC43 110E 1162 -> CC44 110E 1162 11A8 -> CC45 110E 1162 11A9 -> CC46 110E 1162 11AA -> CC47 110E 1162 11AB -> CC48 110E 1162 11AC -> CC49 110E 1162 11AD -> CC4A 110E 1162 11AE -> CC4B 110E 1162 11AF -> CC4C 110E 1162 11B0 -> CC4D 110E 1162 11B1 -> CC4E 110E 1162 11B2 -> CC4F 110E 1162 11B3 -> CC50 110E 1162 11B4 -> CC51 110E 1162 11B5 -> CC52 110E 1162 11B6 -> CC53 110E 1162 11B7 -> CC54 110E 1162 11B8 -> CC55 110E 1162 11B9 -> CC56 110E 1162 11BA -> CC57 110E 1162 11BB -> CC58 110E 1162 11BC -> CC59 110E 1162 11BD -> CC5A 110E 1162 11BE -> CC5B 110E 1162 11BF -> CC5C 110E 1162 11C0 -> CC5D 110E 1162 11C1 -> CC5E 110E 1162 11C2 -> CC5F 110E 1163 -> CC60 110E 1163 11A8 -> CC61 110E 1163 11A9 -> CC62 110E 1163 11AA -> CC63 110E 1163 11AB -> CC64 110E 1163 11AC -> CC65 110E 1163 11AD -> CC66 110E 1163 11AE -> CC67 110E 1163 11AF -> CC68 110E 1163 11B0 -> CC69 110E 1163 11B1 -> CC6A 110E 1163 11B2 -> CC6B 110E 1163 11B3 -> CC6C 110E 1163 11B4 -> CC6D 110E 1163 11B5 -> CC6E 110E 1163 11B6 -> CC6F 110E 1163 11B7 -> CC70 110E 1163 11B8 -> CC71 110E 1163 11B9 -> CC72 110E 1163 11BA -> CC73 110E 1163 11BB -> CC74 110E 1163 11BC -> CC75 110E 1163 11BD -> CC76 110E 1163 11BE -> CC77 110E 1163 11BF -> CC78 110E 1163 11C0 -> CC79 110E 1163 11C1 -> CC7A 110E 1163 11C2 -> CC7B 110E 1164 -> CC7C 110E 1164 11A8 -> CC7D 110E 1164 11A9 -> CC7E 110E 1164 11AA -> CC7F 110E 1164 11AB -> CC80 110E 1164 11AC -> CC81 110E 1164 11AD -> CC82 110E 1164 11AE -> CC83 110E 1164 11AF -> CC84 110E 1164 11B0 -> CC85 110E 1164 11B1 -> CC86 110E 1164 11B2 -> CC87 110E 1164 11B3 -> CC88 110E 1164 11B4 -> CC89 110E 1164 11B5 -> CC8A 110E 1164 11B6 -> CC8B 110E 1164 11B7 -> CC8C 110E 1164 11B8 -> CC8D 110E 1164 11B9 -> CC8E 110E 1164 11BA -> CC8F 110E 1164 11BB -> CC90 110E 1164 11BC -> CC91 110E 1164 11BD -> CC92 110E 1164 11BE -> CC93 110E 1164 11BF -> CC94 110E 1164 11C0 -> CC95 110E 1164 11C1 -> CC96 110E 1164 11C2 -> CC97 110E 1165 -> CC98 110E 1165 11A8 -> CC99 110E 1165 11A9 -> CC9A 110E 1165 11AA -> CC9B 110E 1165 11AB -> CC9C 110E 1165 11AC -> CC9D 110E 1165 11AD -> CC9E 110E 1165 11AE -> CC9F 110E 1165 11AF -> CCA0 110E 1165 11B0 -> CCA1 110E 1165 11B1 -> CCA2 110E 1165 11B2 -> CCA3 110E 1165 11B3 -> CCA4 110E 1165 11B4 -> CCA5 110E 1165 11B5 -> CCA6 110E 1165 11B6 -> CCA7 110E 1165 11B7 -> CCA8 110E 1165 11B8 -> CCA9 110E 1165 11B9 -> CCAA 110E 1165 11BA -> CCAB 110E 1165 11BB -> CCAC 110E 1165 11BC -> CCAD 110E 1165 11BD -> CCAE 110E 1165 11BE -> CCAF 110E 1165 11BF -> CCB0 110E 1165 11C0 -> CCB1 110E 1165 11C1 -> CCB2 110E 1165 11C2 -> CCB3 110E 1166 -> CCB4 110E 1166 11A8 -> CCB5 110E 1166 11A9 -> CCB6 110E 1166 11AA -> CCB7 110E 1166 11AB -> CCB8 110E 1166 11AC -> CCB9 110E 1166 11AD -> CCBA 110E 1166 11AE -> CCBB 110E 1166 11AF -> CCBC 110E 1166 11B0 -> CCBD 110E 1166 11B1 -> CCBE 110E 1166 11B2 -> CCBF 110E 1166 11B3 -> CCC0 110E 1166 11B4 -> CCC1 110E 1166 11B5 -> CCC2 110E 1166 11B6 -> CCC3 110E 1166 11B7 -> CCC4 110E 1166 11B8 -> CCC5 110E 1166 11B9 -> CCC6 110E 1166 11BA -> CCC7 110E 1166 11BB -> CCC8 110E 1166 11BC -> CCC9 110E 1166 11BD -> CCCA 110E 1166 11BE -> CCCB 110E 1166 11BF -> CCCC 110E 1166 11C0 -> CCCD 110E 1166 11C1 -> CCCE 110E 1166 11C2 -> CCCF 110E 1167 -> CCD0 110E 1167 11A8 -> CCD1 110E 1167 11A9 -> CCD2 110E 1167 11AA -> CCD3 110E 1167 11AB -> CCD4 110E 1167 11AC -> CCD5 110E 1167 11AD -> CCD6 110E 1167 11AE -> CCD7 110E 1167 11AF -> CCD8 110E 1167 11B0 -> CCD9 110E 1167 11B1 -> CCDA 110E 1167 11B2 -> CCDB 110E 1167 11B3 -> CCDC 110E 1167 11B4 -> CCDD 110E 1167 11B5 -> CCDE 110E 1167 11B6 -> CCDF 110E 1167 11B7 -> CCE0 110E 1167 11B8 -> CCE1 110E 1167 11B9 -> CCE2 110E 1167 11BA -> CCE3 110E 1167 11BB -> CCE4 110E 1167 11BC -> CCE5 110E 1167 11BD -> CCE6 110E 1167 11BE -> CCE7 110E 1167 11BF -> CCE8 110E 1167 11C0 -> CCE9 110E 1167 11C1 -> CCEA 110E 1167 11C2 -> CCEB 110E 1168 -> CCEC 110E 1168 11A8 -> CCED 110E 1168 11A9 -> CCEE 110E 1168 11AA -> CCEF 110E 1168 11AB -> CCF0 110E 1168 11AC -> CCF1 110E 1168 11AD -> CCF2 110E 1168 11AE -> CCF3 110E 1168 11AF -> CCF4 110E 1168 11B0 -> CCF5 110E 1168 11B1 -> CCF6 110E 1168 11B2 -> CCF7 110E 1168 11B3 -> CCF8 110E 1168 11B4 -> CCF9 110E 1168 11B5 -> CCFA 110E 1168 11B6 -> CCFB 110E 1168 11B7 -> CCFC 110E 1168 11B8 -> CCFD 110E 1168 11B9 -> CCFE 110E 1168 11BA -> CCFF 110E 1168 11BB -> CD00 110E 1168 11BC -> CD01 110E 1168 11BD -> CD02 110E 1168 11BE -> CD03 110E 1168 11BF -> CD04 110E 1168 11C0 -> CD05 110E 1168 11C1 -> CD06 110E 1168 11C2 -> CD07 110E 1169 -> CD08 110E 1169 11A8 -> CD09 110E 1169 11A9 -> CD0A 110E 1169 11AA -> CD0B 110E 1169 11AB -> CD0C 110E 1169 11AC -> CD0D 110E 1169 11AD -> CD0E 110E 1169 11AE -> CD0F 110E 1169 11AF -> CD10 110E 1169 11B0 -> CD11 110E 1169 11B1 -> CD12 110E 1169 11B2 -> CD13 110E 1169 11B3 -> CD14 110E 1169 11B4 -> CD15 110E 1169 11B5 -> CD16 110E 1169 11B6 -> CD17 110E 1169 11B7 -> CD18 110E 1169 11B8 -> CD19 110E 1169 11B9 -> CD1A 110E 1169 11BA -> CD1B 110E 1169 11BB -> CD1C 110E 1169 11BC -> CD1D 110E 1169 11BD -> CD1E 110E 1169 11BE -> CD1F 110E 1169 11BF -> CD20 110E 1169 11C0 -> CD21 110E 1169 11C1 -> CD22 110E 1169 11C2 -> CD23 110E 116A -> CD24 110E 116A 11A8 -> CD25 110E 116A 11A9 -> CD26 110E 116A 11AA -> CD27 110E 116A 11AB -> CD28 110E 116A 11AC -> CD29 110E 116A 11AD -> CD2A 110E 116A 11AE -> CD2B 110E 116A 11AF -> CD2C 110E 116A 11B0 -> CD2D 110E 116A 11B1 -> CD2E 110E 116A 11B2 -> CD2F 110E 116A 11B3 -> CD30 110E 116A 11B4 -> CD31 110E 116A 11B5 -> CD32 110E 116A 11B6 -> CD33 110E 116A 11B7 -> CD34 110E 116A 11B8 -> CD35 110E 116A 11B9 -> CD36 110E 116A 11BA -> CD37 110E 116A 11BB -> CD38 110E 116A 11BC -> CD39 110E 116A 11BD -> CD3A 110E 116A 11BE -> CD3B 110E 116A 11BF -> CD3C 110E 116A 11C0 -> CD3D 110E 116A 11C1 -> CD3E 110E 116A 11C2 -> CD3F 110E 116B -> CD40 110E 116B 11A8 -> CD41 110E 116B 11A9 -> CD42 110E 116B 11AA -> CD43 110E 116B 11AB -> CD44 110E 116B 11AC -> CD45 110E 116B 11AD -> CD46 110E 116B 11AE -> CD47 110E 116B 11AF -> CD48 110E 116B 11B0 -> CD49 110E 116B 11B1 -> CD4A 110E 116B 11B2 -> CD4B 110E 116B 11B3 -> CD4C 110E 116B 11B4 -> CD4D 110E 116B 11B5 -> CD4E 110E 116B 11B6 -> CD4F 110E 116B 11B7 -> CD50 110E 116B 11B8 -> CD51 110E 116B 11B9 -> CD52 110E 116B 11BA -> CD53 110E 116B 11BB -> CD54 110E 116B 11BC -> CD55 110E 116B 11BD -> CD56 110E 116B 11BE -> CD57 110E 116B 11BF -> CD58 110E 116B 11C0 -> CD59 110E 116B 11C1 -> CD5A 110E 116B 11C2 -> CD5B 110E 116C -> CD5C 110E 116C 11A8 -> CD5D 110E 116C 11A9 -> CD5E 110E 116C 11AA -> CD5F 110E 116C 11AB -> CD60 110E 116C 11AC -> CD61 110E 116C 11AD -> CD62 110E 116C 11AE -> CD63 110E 116C 11AF -> CD64 110E 116C 11B0 -> CD65 110E 116C 11B1 -> CD66 110E 116C 11B2 -> CD67 110E 116C 11B3 -> CD68 110E 116C 11B4 -> CD69 110E 116C 11B5 -> CD6A 110E 116C 11B6 -> CD6B 110E 116C 11B7 -> CD6C 110E 116C 11B8 -> CD6D 110E 116C 11B9 -> CD6E 110E 116C 11BA -> CD6F 110E 116C 11BB -> CD70 110E 116C 11BC -> CD71 110E 116C 11BD -> CD72 110E 116C 11BE -> CD73 110E 116C 11BF -> CD74 110E 116C 11C0 -> CD75 110E 116C 11C1 -> CD76 110E 116C 11C2 -> CD77 110E 116D -> CD78 110E 116D 11A8 -> CD79 110E 116D 11A9 -> CD7A 110E 116D 11AA -> CD7B 110E 116D 11AB -> CD7C 110E 116D 11AC -> CD7D 110E 116D 11AD -> CD7E 110E 116D 11AE -> CD7F 110E 116D 11AF -> CD80 110E 116D 11B0 -> CD81 110E 116D 11B1 -> CD82 110E 116D 11B2 -> CD83 110E 116D 11B3 -> CD84 110E 116D 11B4 -> CD85 110E 116D 11B5 -> CD86 110E 116D 11B6 -> CD87 110E 116D 11B7 -> CD88 110E 116D 11B8 -> CD89 110E 116D 11B9 -> CD8A 110E 116D 11BA -> CD8B 110E 116D 11BB -> CD8C 110E 116D 11BC -> CD8D 110E 116D 11BD -> CD8E 110E 116D 11BE -> CD8F 110E 116D 11BF -> CD90 110E 116D 11C0 -> CD91 110E 116D 11C1 -> CD92 110E 116D 11C2 -> CD93 110E 116E -> CD94 110E 116E 11A8 -> CD95 110E 116E 11A9 -> CD96 110E 116E 11AA -> CD97 110E 116E 11AB -> CD98 110E 116E 11AC -> CD99 110E 116E 11AD -> CD9A 110E 116E 11AE -> CD9B 110E 116E 11AF -> CD9C 110E 116E 11B0 -> CD9D 110E 116E 11B1 -> CD9E 110E 116E 11B2 -> CD9F 110E 116E 11B3 -> CDA0 110E 116E 11B4 -> CDA1 110E 116E 11B5 -> CDA2 110E 116E 11B6 -> CDA3 110E 116E 11B7 -> CDA4 110E 116E 11B8 -> CDA5 110E 116E 11B9 -> CDA6 110E 116E 11BA -> CDA7 110E 116E 11BB -> CDA8 110E 116E 11BC -> CDA9 110E 116E 11BD -> CDAA 110E 116E 11BE -> CDAB 110E 116E 11BF -> CDAC 110E 116E 11C0 -> CDAD 110E 116E 11C1 -> CDAE 110E 116E 11C2 -> CDAF 110E 116F -> CDB0 110E 116F 11A8 -> CDB1 110E 116F 11A9 -> CDB2 110E 116F 11AA -> CDB3 110E 116F 11AB -> CDB4 110E 116F 11AC -> CDB5 110E 116F 11AD -> CDB6 110E 116F 11AE -> CDB7 110E 116F 11AF -> CDB8 110E 116F 11B0 -> CDB9 110E 116F 11B1 -> CDBA 110E 116F 11B2 -> CDBB 110E 116F 11B3 -> CDBC 110E 116F 11B4 -> CDBD 110E 116F 11B5 -> CDBE 110E 116F 11B6 -> CDBF 110E 116F 11B7 -> CDC0 110E 116F 11B8 -> CDC1 110E 116F 11B9 -> CDC2 110E 116F 11BA -> CDC3 110E 116F 11BB -> CDC4 110E 116F 11BC -> CDC5 110E 116F 11BD -> CDC6 110E 116F 11BE -> CDC7 110E 116F 11BF -> CDC8 110E 116F 11C0 -> CDC9 110E 116F 11C1 -> CDCA 110E 116F 11C2 -> CDCB 110E 1170 -> CDCC 110E 1170 11A8 -> CDCD 110E 1170 11A9 -> CDCE 110E 1170 11AA -> CDCF 110E 1170 11AB -> CDD0 110E 1170 11AC -> CDD1 110E 1170 11AD -> CDD2 110E 1170 11AE -> CDD3 110E 1170 11AF -> CDD4 110E 1170 11B0 -> CDD5 110E 1170 11B1 -> CDD6 110E 1170 11B2 -> CDD7 110E 1170 11B3 -> CDD8 110E 1170 11B4 -> CDD9 110E 1170 11B5 -> CDDA 110E 1170 11B6 -> CDDB 110E 1170 11B7 -> CDDC 110E 1170 11B8 -> CDDD 110E 1170 11B9 -> CDDE 110E 1170 11BA -> CDDF 110E 1170 11BB -> CDE0 110E 1170 11BC -> CDE1 110E 1170 11BD -> CDE2 110E 1170 11BE -> CDE3 110E 1170 11BF -> CDE4 110E 1170 11C0 -> CDE5 110E 1170 11C1 -> CDE6 110E 1170 11C2 -> CDE7 110E 1171 -> CDE8 110E 1171 11A8 -> CDE9 110E 1171 11A9 -> CDEA 110E 1171 11AA -> CDEB 110E 1171 11AB -> CDEC 110E 1171 11AC -> CDED 110E 1171 11AD -> CDEE 110E 1171 11AE -> CDEF 110E 1171 11AF -> CDF0 110E 1171 11B0 -> CDF1 110E 1171 11B1 -> CDF2 110E 1171 11B2 -> CDF3 110E 1171 11B3 -> CDF4 110E 1171 11B4 -> CDF5 110E 1171 11B5 -> CDF6 110E 1171 11B6 -> CDF7 110E 1171 11B7 -> CDF8 110E 1171 11B8 -> CDF9 110E 1171 11B9 -> CDFA 110E 1171 11BA -> CDFB 110E 1171 11BB -> CDFC 110E 1171 11BC -> CDFD 110E 1171 11BD -> CDFE 110E 1171 11BE -> CDFF 110E 1171 11BF -> CE00 110E 1171 11C0 -> CE01 110E 1171 11C1 -> CE02 110E 1171 11C2 -> CE03 110E 1172 -> CE04 110E 1172 11A8 -> CE05 110E 1172 11A9 -> CE06 110E 1172 11AA -> CE07 110E 1172 11AB -> CE08 110E 1172 11AC -> CE09 110E 1172 11AD -> CE0A 110E 1172 11AE -> CE0B 110E 1172 11AF -> CE0C 110E 1172 11B0 -> CE0D 110E 1172 11B1 -> CE0E 110E 1172 11B2 -> CE0F 110E 1172 11B3 -> CE10 110E 1172 11B4 -> CE11 110E 1172 11B5 -> CE12 110E 1172 11B6 -> CE13 110E 1172 11B7 -> CE14 110E 1172 11B8 -> CE15 110E 1172 11B9 -> CE16 110E 1172 11BA -> CE17 110E 1172 11BB -> CE18 110E 1172 11BC -> CE19 110E 1172 11BD -> CE1A 110E 1172 11BE -> CE1B 110E 1172 11BF -> CE1C 110E 1172 11C0 -> CE1D 110E 1172 11C1 -> CE1E 110E 1172 11C2 -> CE1F 110E 1173 -> CE20 110E 1173 11A8 -> CE21 110E 1173 11A9 -> CE22 110E 1173 11AA -> CE23 110E 1173 11AB -> CE24 110E 1173 11AC -> CE25 110E 1173 11AD -> CE26 110E 1173 11AE -> CE27 110E 1173 11AF -> CE28 110E 1173 11B0 -> CE29 110E 1173 11B1 -> CE2A 110E 1173 11B2 -> CE2B 110E 1173 11B3 -> CE2C 110E 1173 11B4 -> CE2D 110E 1173 11B5 -> CE2E 110E 1173 11B6 -> CE2F 110E 1173 11B7 -> CE30 110E 1173 11B8 -> CE31 110E 1173 11B9 -> CE32 110E 1173 11BA -> CE33 110E 1173 11BB -> CE34 110E 1173 11BC -> CE35 110E 1173 11BD -> CE36 110E 1173 11BE -> CE37 110E 1173 11BF -> CE38 110E 1173 11C0 -> CE39 110E 1173 11C1 -> CE3A 110E 1173 11C2 -> CE3B 110E 1174 -> CE3C 110E 1174 11A8 -> CE3D 110E 1174 11A9 -> CE3E 110E 1174 11AA -> CE3F 110E 1174 11AB -> CE40 110E 1174 11AC -> CE41 110E 1174 11AD -> CE42 110E 1174 11AE -> CE43 110E 1174 11AF -> CE44 110E 1174 11B0 -> CE45 110E 1174 11B1 -> CE46 110E 1174 11B2 -> CE47 110E 1174 11B3 -> CE48 110E 1174 11B4 -> CE49 110E 1174 11B5 -> CE4A 110E 1174 11B6 -> CE4B 110E 1174 11B7 -> CE4C 110E 1174 11B8 -> CE4D 110E 1174 11B9 -> CE4E 110E 1174 11BA -> CE4F 110E 1174 11BB -> CE50 110E 1174 11BC -> CE51 110E 1174 11BD -> CE52 110E 1174 11BE -> CE53 110E 1174 11BF -> CE54 110E 1174 11C0 -> CE55 110E 1174 11C1 -> CE56 110E 1174 11C2 -> CE57 110E 1175 -> CE58 110E 1175 11A8 -> CE59 110E 1175 11A9 -> CE5A 110E 1175 11AA -> CE5B 110E 1175 11AB -> CE5C 110E 1175 11AC -> CE5D 110E 1175 11AD -> CE5E 110E 1175 11AE -> CE5F 110E 1175 11AF -> CE60 110E 1175 11B0 -> CE61 110E 1175 11B1 -> CE62 110E 1175 11B2 -> CE63 110E 1175 11B3 -> CE64 110E 1175 11B4 -> CE65 110E 1175 11B5 -> CE66 110E 1175 11B6 -> CE67 110E 1175 11B7 -> CE68 110E 1175 11B8 -> CE69 110E 1175 11B9 -> CE6A 110E 1175 11BA -> CE6B 110E 1175 11BB -> CE6C 110E 1175 11BC -> CE6D 110E 1175 11BD -> CE6E 110E 1175 11BE -> CE6F 110E 1175 11BF -> CE70 110E 1175 11C0 -> CE71 110E 1175 11C1 -> CE72 110E 1175 11C2 -> CE73 110F 1161 -> CE74 110F 1161 11A8 -> CE75 110F 1161 11A9 -> CE76 110F 1161 11AA -> CE77 110F 1161 11AB -> CE78 110F 1161 11AC -> CE79 110F 1161 11AD -> CE7A 110F 1161 11AE -> CE7B 110F 1161 11AF -> CE7C 110F 1161 11B0 -> CE7D 110F 1161 11B1 -> CE7E 110F 1161 11B2 -> CE7F 110F 1161 11B3 -> CE80 110F 1161 11B4 -> CE81 110F 1161 11B5 -> CE82 110F 1161 11B6 -> CE83 110F 1161 11B7 -> CE84 110F 1161 11B8 -> CE85 110F 1161 11B9 -> CE86 110F 1161 11BA -> CE87 110F 1161 11BB -> CE88 110F 1161 11BC -> CE89 110F 1161 11BD -> CE8A 110F 1161 11BE -> CE8B 110F 1161 11BF -> CE8C 110F 1161 11C0 -> CE8D 110F 1161 11C1 -> CE8E 110F 1161 11C2 -> CE8F 110F 1162 -> CE90 110F 1162 11A8 -> CE91 110F 1162 11A9 -> CE92 110F 1162 11AA -> CE93 110F 1162 11AB -> CE94 110F 1162 11AC -> CE95 110F 1162 11AD -> CE96 110F 1162 11AE -> CE97 110F 1162 11AF -> CE98 110F 1162 11B0 -> CE99 110F 1162 11B1 -> CE9A 110F 1162 11B2 -> CE9B 110F 1162 11B3 -> CE9C 110F 1162 11B4 -> CE9D 110F 1162 11B5 -> CE9E 110F 1162 11B6 -> CE9F 110F 1162 11B7 -> CEA0 110F 1162 11B8 -> CEA1 110F 1162 11B9 -> CEA2 110F 1162 11BA -> CEA3 110F 1162 11BB -> CEA4 110F 1162 11BC -> CEA5 110F 1162 11BD -> CEA6 110F 1162 11BE -> CEA7 110F 1162 11BF -> CEA8 110F 1162 11C0 -> CEA9 110F 1162 11C1 -> CEAA 110F 1162 11C2 -> CEAB 110F 1163 -> CEAC 110F 1163 11A8 -> CEAD 110F 1163 11A9 -> CEAE 110F 1163 11AA -> CEAF 110F 1163 11AB -> CEB0 110F 1163 11AC -> CEB1 110F 1163 11AD -> CEB2 110F 1163 11AE -> CEB3 110F 1163 11AF -> CEB4 110F 1163 11B0 -> CEB5 110F 1163 11B1 -> CEB6 110F 1163 11B2 -> CEB7 110F 1163 11B3 -> CEB8 110F 1163 11B4 -> CEB9 110F 1163 11B5 -> CEBA 110F 1163 11B6 -> CEBB 110F 1163 11B7 -> CEBC 110F 1163 11B8 -> CEBD 110F 1163 11B9 -> CEBE 110F 1163 11BA -> CEBF 110F 1163 11BB -> CEC0 110F 1163 11BC -> CEC1 110F 1163 11BD -> CEC2 110F 1163 11BE -> CEC3 110F 1163 11BF -> CEC4 110F 1163 11C0 -> CEC5 110F 1163 11C1 -> CEC6 110F 1163 11C2 -> CEC7 110F 1164 -> CEC8 110F 1164 11A8 -> CEC9 110F 1164 11A9 -> CECA 110F 1164 11AA -> CECB 110F 1164 11AB -> CECC 110F 1164 11AC -> CECD 110F 1164 11AD -> CECE 110F 1164 11AE -> CECF 110F 1164 11AF -> CED0 110F 1164 11B0 -> CED1 110F 1164 11B1 -> CED2 110F 1164 11B2 -> CED3 110F 1164 11B3 -> CED4 110F 1164 11B4 -> CED5 110F 1164 11B5 -> CED6 110F 1164 11B6 -> CED7 110F 1164 11B7 -> CED8 110F 1164 11B8 -> CED9 110F 1164 11B9 -> CEDA 110F 1164 11BA -> CEDB 110F 1164 11BB -> CEDC 110F 1164 11BC -> CEDD 110F 1164 11BD -> CEDE 110F 1164 11BE -> CEDF 110F 1164 11BF -> CEE0 110F 1164 11C0 -> CEE1 110F 1164 11C1 -> CEE2 110F 1164 11C2 -> CEE3 110F 1165 -> CEE4 110F 1165 11A8 -> CEE5 110F 1165 11A9 -> CEE6 110F 1165 11AA -> CEE7 110F 1165 11AB -> CEE8 110F 1165 11AC -> CEE9 110F 1165 11AD -> CEEA 110F 1165 11AE -> CEEB 110F 1165 11AF -> CEEC 110F 1165 11B0 -> CEED 110F 1165 11B1 -> CEEE 110F 1165 11B2 -> CEEF 110F 1165 11B3 -> CEF0 110F 1165 11B4 -> CEF1 110F 1165 11B5 -> CEF2 110F 1165 11B6 -> CEF3 110F 1165 11B7 -> CEF4 110F 1165 11B8 -> CEF5 110F 1165 11B9 -> CEF6 110F 1165 11BA -> CEF7 110F 1165 11BB -> CEF8 110F 1165 11BC -> CEF9 110F 1165 11BD -> CEFA 110F 1165 11BE -> CEFB 110F 1165 11BF -> CEFC 110F 1165 11C0 -> CEFD 110F 1165 11C1 -> CEFE 110F 1165 11C2 -> CEFF 110F 1166 -> CF00 110F 1166 11A8 -> CF01 110F 1166 11A9 -> CF02 110F 1166 11AA -> CF03 110F 1166 11AB -> CF04 110F 1166 11AC -> CF05 110F 1166 11AD -> CF06 110F 1166 11AE -> CF07 110F 1166 11AF -> CF08 110F 1166 11B0 -> CF09 110F 1166 11B1 -> CF0A 110F 1166 11B2 -> CF0B 110F 1166 11B3 -> CF0C 110F 1166 11B4 -> CF0D 110F 1166 11B5 -> CF0E 110F 1166 11B6 -> CF0F 110F 1166 11B7 -> CF10 110F 1166 11B8 -> CF11 110F 1166 11B9 -> CF12 110F 1166 11BA -> CF13 110F 1166 11BB -> CF14 110F 1166 11BC -> CF15 110F 1166 11BD -> CF16 110F 1166 11BE -> CF17 110F 1166 11BF -> CF18 110F 1166 11C0 -> CF19 110F 1166 11C1 -> CF1A 110F 1166 11C2 -> CF1B 110F 1167 -> CF1C 110F 1167 11A8 -> CF1D 110F 1167 11A9 -> CF1E 110F 1167 11AA -> CF1F 110F 1167 11AB -> CF20 110F 1167 11AC -> CF21 110F 1167 11AD -> CF22 110F 1167 11AE -> CF23 110F 1167 11AF -> CF24 110F 1167 11B0 -> CF25 110F 1167 11B1 -> CF26 110F 1167 11B2 -> CF27 110F 1167 11B3 -> CF28 110F 1167 11B4 -> CF29 110F 1167 11B5 -> CF2A 110F 1167 11B6 -> CF2B 110F 1167 11B7 -> CF2C 110F 1167 11B8 -> CF2D 110F 1167 11B9 -> CF2E 110F 1167 11BA -> CF2F 110F 1167 11BB -> CF30 110F 1167 11BC -> CF31 110F 1167 11BD -> CF32 110F 1167 11BE -> CF33 110F 1167 11BF -> CF34 110F 1167 11C0 -> CF35 110F 1167 11C1 -> CF36 110F 1167 11C2 -> CF37 110F 1168 -> CF38 110F 1168 11A8 -> CF39 110F 1168 11A9 -> CF3A 110F 1168 11AA -> CF3B 110F 1168 11AB -> CF3C 110F 1168 11AC -> CF3D 110F 1168 11AD -> CF3E 110F 1168 11AE -> CF3F 110F 1168 11AF -> CF40 110F 1168 11B0 -> CF41 110F 1168 11B1 -> CF42 110F 1168 11B2 -> CF43 110F 1168 11B3 -> CF44 110F 1168 11B4 -> CF45 110F 1168 11B5 -> CF46 110F 1168 11B6 -> CF47 110F 1168 11B7 -> CF48 110F 1168 11B8 -> CF49 110F 1168 11B9 -> CF4A 110F 1168 11BA -> CF4B 110F 1168 11BB -> CF4C 110F 1168 11BC -> CF4D 110F 1168 11BD -> CF4E 110F 1168 11BE -> CF4F 110F 1168 11BF -> CF50 110F 1168 11C0 -> CF51 110F 1168 11C1 -> CF52 110F 1168 11C2 -> CF53 110F 1169 -> CF54 110F 1169 11A8 -> CF55 110F 1169 11A9 -> CF56 110F 1169 11AA -> CF57 110F 1169 11AB -> CF58 110F 1169 11AC -> CF59 110F 1169 11AD -> CF5A 110F 1169 11AE -> CF5B 110F 1169 11AF -> CF5C 110F 1169 11B0 -> CF5D 110F 1169 11B1 -> CF5E 110F 1169 11B2 -> CF5F 110F 1169 11B3 -> CF60 110F 1169 11B4 -> CF61 110F 1169 11B5 -> CF62 110F 1169 11B6 -> CF63 110F 1169 11B7 -> CF64 110F 1169 11B8 -> CF65 110F 1169 11B9 -> CF66 110F 1169 11BA -> CF67 110F 1169 11BB -> CF68 110F 1169 11BC -> CF69 110F 1169 11BD -> CF6A 110F 1169 11BE -> CF6B 110F 1169 11BF -> CF6C 110F 1169 11C0 -> CF6D 110F 1169 11C1 -> CF6E 110F 1169 11C2 -> CF6F 110F 116A -> CF70 110F 116A 11A8 -> CF71 110F 116A 11A9 -> CF72 110F 116A 11AA -> CF73 110F 116A 11AB -> CF74 110F 116A 11AC -> CF75 110F 116A 11AD -> CF76 110F 116A 11AE -> CF77 110F 116A 11AF -> CF78 110F 116A 11B0 -> CF79 110F 116A 11B1 -> CF7A 110F 116A 11B2 -> CF7B 110F 116A 11B3 -> CF7C 110F 116A 11B4 -> CF7D 110F 116A 11B5 -> CF7E 110F 116A 11B6 -> CF7F 110F 116A 11B7 -> CF80 110F 116A 11B8 -> CF81 110F 116A 11B9 -> CF82 110F 116A 11BA -> CF83 110F 116A 11BB -> CF84 110F 116A 11BC -> CF85 110F 116A 11BD -> CF86 110F 116A 11BE -> CF87 110F 116A 11BF -> CF88 110F 116A 11C0 -> CF89 110F 116A 11C1 -> CF8A 110F 116A 11C2 -> CF8B 110F 116B -> CF8C 110F 116B 11A8 -> CF8D 110F 116B 11A9 -> CF8E 110F 116B 11AA -> CF8F 110F 116B 11AB -> CF90 110F 116B 11AC -> CF91 110F 116B 11AD -> CF92 110F 116B 11AE -> CF93 110F 116B 11AF -> CF94 110F 116B 11B0 -> CF95 110F 116B 11B1 -> CF96 110F 116B 11B2 -> CF97 110F 116B 11B3 -> CF98 110F 116B 11B4 -> CF99 110F 116B 11B5 -> CF9A 110F 116B 11B6 -> CF9B 110F 116B 11B7 -> CF9C 110F 116B 11B8 -> CF9D 110F 116B 11B9 -> CF9E 110F 116B 11BA -> CF9F 110F 116B 11BB -> CFA0 110F 116B 11BC -> CFA1 110F 116B 11BD -> CFA2 110F 116B 11BE -> CFA3 110F 116B 11BF -> CFA4 110F 116B 11C0 -> CFA5 110F 116B 11C1 -> CFA6 110F 116B 11C2 -> CFA7 110F 116C -> CFA8 110F 116C 11A8 -> CFA9 110F 116C 11A9 -> CFAA 110F 116C 11AA -> CFAB 110F 116C 11AB -> CFAC 110F 116C 11AC -> CFAD 110F 116C 11AD -> CFAE 110F 116C 11AE -> CFAF 110F 116C 11AF -> CFB0 110F 116C 11B0 -> CFB1 110F 116C 11B1 -> CFB2 110F 116C 11B2 -> CFB3 110F 116C 11B3 -> CFB4 110F 116C 11B4 -> CFB5 110F 116C 11B5 -> CFB6 110F 116C 11B6 -> CFB7 110F 116C 11B7 -> CFB8 110F 116C 11B8 -> CFB9 110F 116C 11B9 -> CFBA 110F 116C 11BA -> CFBB 110F 116C 11BB -> CFBC 110F 116C 11BC -> CFBD 110F 116C 11BD -> CFBE 110F 116C 11BE -> CFBF 110F 116C 11BF -> CFC0 110F 116C 11C0 -> CFC1 110F 116C 11C1 -> CFC2 110F 116C 11C2 -> CFC3 110F 116D -> CFC4 110F 116D 11A8 -> CFC5 110F 116D 11A9 -> CFC6 110F 116D 11AA -> CFC7 110F 116D 11AB -> CFC8 110F 116D 11AC -> CFC9 110F 116D 11AD -> CFCA 110F 116D 11AE -> CFCB 110F 116D 11AF -> CFCC 110F 116D 11B0 -> CFCD 110F 116D 11B1 -> CFCE 110F 116D 11B2 -> CFCF 110F 116D 11B3 -> CFD0 110F 116D 11B4 -> CFD1 110F 116D 11B5 -> CFD2 110F 116D 11B6 -> CFD3 110F 116D 11B7 -> CFD4 110F 116D 11B8 -> CFD5 110F 116D 11B9 -> CFD6 110F 116D 11BA -> CFD7 110F 116D 11BB -> CFD8 110F 116D 11BC -> CFD9 110F 116D 11BD -> CFDA 110F 116D 11BE -> CFDB 110F 116D 11BF -> CFDC 110F 116D 11C0 -> CFDD 110F 116D 11C1 -> CFDE 110F 116D 11C2 -> CFDF 110F 116E -> CFE0 110F 116E 11A8 -> CFE1 110F 116E 11A9 -> CFE2 110F 116E 11AA -> CFE3 110F 116E 11AB -> CFE4 110F 116E 11AC -> CFE5 110F 116E 11AD -> CFE6 110F 116E 11AE -> CFE7 110F 116E 11AF -> CFE8 110F 116E 11B0 -> CFE9 110F 116E 11B1 -> CFEA 110F 116E 11B2 -> CFEB 110F 116E 11B3 -> CFEC 110F 116E 11B4 -> CFED 110F 116E 11B5 -> CFEE 110F 116E 11B6 -> CFEF 110F 116E 11B7 -> CFF0 110F 116E 11B8 -> CFF1 110F 116E 11B9 -> CFF2 110F 116E 11BA -> CFF3 110F 116E 11BB -> CFF4 110F 116E 11BC -> CFF5 110F 116E 11BD -> CFF6 110F 116E 11BE -> CFF7 110F 116E 11BF -> CFF8 110F 116E 11C0 -> CFF9 110F 116E 11C1 -> CFFA 110F 116E 11C2 -> CFFB 110F 116F -> CFFC 110F 116F 11A8 -> CFFD 110F 116F 11A9 -> CFFE 110F 116F 11AA -> CFFF 110F 116F 11AB -> D000 110F 116F 11AC -> D001 110F 116F 11AD -> D002 110F 116F 11AE -> D003 110F 116F 11AF -> D004 110F 116F 11B0 -> D005 110F 116F 11B1 -> D006 110F 116F 11B2 -> D007 110F 116F 11B3 -> D008 110F 116F 11B4 -> D009 110F 116F 11B5 -> D00A 110F 116F 11B6 -> D00B 110F 116F 11B7 -> D00C 110F 116F 11B8 -> D00D 110F 116F 11B9 -> D00E 110F 116F 11BA -> D00F 110F 116F 11BB -> D010 110F 116F 11BC -> D011 110F 116F 11BD -> D012 110F 116F 11BE -> D013 110F 116F 11BF -> D014 110F 116F 11C0 -> D015 110F 116F 11C1 -> D016 110F 116F 11C2 -> D017 110F 1170 -> D018 110F 1170 11A8 -> D019 110F 1170 11A9 -> D01A 110F 1170 11AA -> D01B 110F 1170 11AB -> D01C 110F 1170 11AC -> D01D 110F 1170 11AD -> D01E 110F 1170 11AE -> D01F 110F 1170 11AF -> D020 110F 1170 11B0 -> D021 110F 1170 11B1 -> D022 110F 1170 11B2 -> D023 110F 1170 11B3 -> D024 110F 1170 11B4 -> D025 110F 1170 11B5 -> D026 110F 1170 11B6 -> D027 110F 1170 11B7 -> D028 110F 1170 11B8 -> D029 110F 1170 11B9 -> D02A 110F 1170 11BA -> D02B 110F 1170 11BB -> D02C 110F 1170 11BC -> D02D 110F 1170 11BD -> D02E 110F 1170 11BE -> D02F 110F 1170 11BF -> D030 110F 1170 11C0 -> D031 110F 1170 11C1 -> D032 110F 1170 11C2 -> D033 110F 1171 -> D034 110F 1171 11A8 -> D035 110F 1171 11A9 -> D036 110F 1171 11AA -> D037 110F 1171 11AB -> D038 110F 1171 11AC -> D039 110F 1171 11AD -> D03A 110F 1171 11AE -> D03B 110F 1171 11AF -> D03C 110F 1171 11B0 -> D03D 110F 1171 11B1 -> D03E 110F 1171 11B2 -> D03F 110F 1171 11B3 -> D040 110F 1171 11B4 -> D041 110F 1171 11B5 -> D042 110F 1171 11B6 -> D043 110F 1171 11B7 -> D044 110F 1171 11B8 -> D045 110F 1171 11B9 -> D046 110F 1171 11BA -> D047 110F 1171 11BB -> D048 110F 1171 11BC -> D049 110F 1171 11BD -> D04A 110F 1171 11BE -> D04B 110F 1171 11BF -> D04C 110F 1171 11C0 -> D04D 110F 1171 11C1 -> D04E 110F 1171 11C2 -> D04F 110F 1172 -> D050 110F 1172 11A8 -> D051 110F 1172 11A9 -> D052 110F 1172 11AA -> D053 110F 1172 11AB -> D054 110F 1172 11AC -> D055 110F 1172 11AD -> D056 110F 1172 11AE -> D057 110F 1172 11AF -> D058 110F 1172 11B0 -> D059 110F 1172 11B1 -> D05A 110F 1172 11B2 -> D05B 110F 1172 11B3 -> D05C 110F 1172 11B4 -> D05D 110F 1172 11B5 -> D05E 110F 1172 11B6 -> D05F 110F 1172 11B7 -> D060 110F 1172 11B8 -> D061 110F 1172 11B9 -> D062 110F 1172 11BA -> D063 110F 1172 11BB -> D064 110F 1172 11BC -> D065 110F 1172 11BD -> D066 110F 1172 11BE -> D067 110F 1172 11BF -> D068 110F 1172 11C0 -> D069 110F 1172 11C1 -> D06A 110F 1172 11C2 -> D06B 110F 1173 -> D06C 110F 1173 11A8 -> D06D 110F 1173 11A9 -> D06E 110F 1173 11AA -> D06F 110F 1173 11AB -> D070 110F 1173 11AC -> D071 110F 1173 11AD -> D072 110F 1173 11AE -> D073 110F 1173 11AF -> D074 110F 1173 11B0 -> D075 110F 1173 11B1 -> D076 110F 1173 11B2 -> D077 110F 1173 11B3 -> D078 110F 1173 11B4 -> D079 110F 1173 11B5 -> D07A 110F 1173 11B6 -> D07B 110F 1173 11B7 -> D07C 110F 1173 11B8 -> D07D 110F 1173 11B9 -> D07E 110F 1173 11BA -> D07F 110F 1173 11BB -> D080 110F 1173 11BC -> D081 110F 1173 11BD -> D082 110F 1173 11BE -> D083 110F 1173 11BF -> D084 110F 1173 11C0 -> D085 110F 1173 11C1 -> D086 110F 1173 11C2 -> D087 110F 1174 -> D088 110F 1174 11A8 -> D089 110F 1174 11A9 -> D08A 110F 1174 11AA -> D08B 110F 1174 11AB -> D08C 110F 1174 11AC -> D08D 110F 1174 11AD -> D08E 110F 1174 11AE -> D08F 110F 1174 11AF -> D090 110F 1174 11B0 -> D091 110F 1174 11B1 -> D092 110F 1174 11B2 -> D093 110F 1174 11B3 -> D094 110F 1174 11B4 -> D095 110F 1174 11B5 -> D096 110F 1174 11B6 -> D097 110F 1174 11B7 -> D098 110F 1174 11B8 -> D099 110F 1174 11B9 -> D09A 110F 1174 11BA -> D09B 110F 1174 11BB -> D09C 110F 1174 11BC -> D09D 110F 1174 11BD -> D09E 110F 1174 11BE -> D09F 110F 1174 11BF -> D0A0 110F 1174 11C0 -> D0A1 110F 1174 11C1 -> D0A2 110F 1174 11C2 -> D0A3 110F 1175 -> D0A4 110F 1175 11A8 -> D0A5 110F 1175 11A9 -> D0A6 110F 1175 11AA -> D0A7 110F 1175 11AB -> D0A8 110F 1175 11AC -> D0A9 110F 1175 11AD -> D0AA 110F 1175 11AE -> D0AB 110F 1175 11AF -> D0AC 110F 1175 11B0 -> D0AD 110F 1175 11B1 -> D0AE 110F 1175 11B2 -> D0AF 110F 1175 11B3 -> D0B0 110F 1175 11B4 -> D0B1 110F 1175 11B5 -> D0B2 110F 1175 11B6 -> D0B3 110F 1175 11B7 -> D0B4 110F 1175 11B8 -> D0B5 110F 1175 11B9 -> D0B6 110F 1175 11BA -> D0B7 110F 1175 11BB -> D0B8 110F 1175 11BC -> D0B9 110F 1175 11BD -> D0BA 110F 1175 11BE -> D0BB 110F 1175 11BF -> D0BC 110F 1175 11C0 -> D0BD 110F 1175 11C1 -> D0BE 110F 1175 11C2 -> D0BF 1110 1161 -> D0C0 1110 1161 11A8 -> D0C1 1110 1161 11A9 -> D0C2 1110 1161 11AA -> D0C3 1110 1161 11AB -> D0C4 1110 1161 11AC -> D0C5 1110 1161 11AD -> D0C6 1110 1161 11AE -> D0C7 1110 1161 11AF -> D0C8 1110 1161 11B0 -> D0C9 1110 1161 11B1 -> D0CA 1110 1161 11B2 -> D0CB 1110 1161 11B3 -> D0CC 1110 1161 11B4 -> D0CD 1110 1161 11B5 -> D0CE 1110 1161 11B6 -> D0CF 1110 1161 11B7 -> D0D0 1110 1161 11B8 -> D0D1 1110 1161 11B9 -> D0D2 1110 1161 11BA -> D0D3 1110 1161 11BB -> D0D4 1110 1161 11BC -> D0D5 1110 1161 11BD -> D0D6 1110 1161 11BE -> D0D7 1110 1161 11BF -> D0D8 1110 1161 11C0 -> D0D9 1110 1161 11C1 -> D0DA 1110 1161 11C2 -> D0DB 1110 1162 -> D0DC 1110 1162 11A8 -> D0DD 1110 1162 11A9 -> D0DE 1110 1162 11AA -> D0DF 1110 1162 11AB -> D0E0 1110 1162 11AC -> D0E1 1110 1162 11AD -> D0E2 1110 1162 11AE -> D0E3 1110 1162 11AF -> D0E4 1110 1162 11B0 -> D0E5 1110 1162 11B1 -> D0E6 1110 1162 11B2 -> D0E7 1110 1162 11B3 -> D0E8 1110 1162 11B4 -> D0E9 1110 1162 11B5 -> D0EA 1110 1162 11B6 -> D0EB 1110 1162 11B7 -> D0EC 1110 1162 11B8 -> D0ED 1110 1162 11B9 -> D0EE 1110 1162 11BA -> D0EF 1110 1162 11BB -> D0F0 1110 1162 11BC -> D0F1 1110 1162 11BD -> D0F2 1110 1162 11BE -> D0F3 1110 1162 11BF -> D0F4 1110 1162 11C0 -> D0F5 1110 1162 11C1 -> D0F6 1110 1162 11C2 -> D0F7 1110 1163 -> D0F8 1110 1163 11A8 -> D0F9 1110 1163 11A9 -> D0FA 1110 1163 11AA -> D0FB 1110 1163 11AB -> D0FC 1110 1163 11AC -> D0FD 1110 1163 11AD -> D0FE 1110 1163 11AE -> D0FF 1110 1163 11AF -> D100 1110 1163 11B0 -> D101 1110 1163 11B1 -> D102 1110 1163 11B2 -> D103 1110 1163 11B3 -> D104 1110 1163 11B4 -> D105 1110 1163 11B5 -> D106 1110 1163 11B6 -> D107 1110 1163 11B7 -> D108 1110 1163 11B8 -> D109 1110 1163 11B9 -> D10A 1110 1163 11BA -> D10B 1110 1163 11BB -> D10C 1110 1163 11BC -> D10D 1110 1163 11BD -> D10E 1110 1163 11BE -> D10F 1110 1163 11BF -> D110 1110 1163 11C0 -> D111 1110 1163 11C1 -> D112 1110 1163 11C2 -> D113 1110 1164 -> D114 1110 1164 11A8 -> D115 1110 1164 11A9 -> D116 1110 1164 11AA -> D117 1110 1164 11AB -> D118 1110 1164 11AC -> D119 1110 1164 11AD -> D11A 1110 1164 11AE -> D11B 1110 1164 11AF -> D11C 1110 1164 11B0 -> D11D 1110 1164 11B1 -> D11E 1110 1164 11B2 -> D11F 1110 1164 11B3 -> D120 1110 1164 11B4 -> D121 1110 1164 11B5 -> D122 1110 1164 11B6 -> D123 1110 1164 11B7 -> D124 1110 1164 11B8 -> D125 1110 1164 11B9 -> D126 1110 1164 11BA -> D127 1110 1164 11BB -> D128 1110 1164 11BC -> D129 1110 1164 11BD -> D12A 1110 1164 11BE -> D12B 1110 1164 11BF -> D12C 1110 1164 11C0 -> D12D 1110 1164 11C1 -> D12E 1110 1164 11C2 -> D12F 1110 1165 -> D130 1110 1165 11A8 -> D131 1110 1165 11A9 -> D132 1110 1165 11AA -> D133 1110 1165 11AB -> D134 1110 1165 11AC -> D135 1110 1165 11AD -> D136 1110 1165 11AE -> D137 1110 1165 11AF -> D138 1110 1165 11B0 -> D139 1110 1165 11B1 -> D13A 1110 1165 11B2 -> D13B 1110 1165 11B3 -> D13C 1110 1165 11B4 -> D13D 1110 1165 11B5 -> D13E 1110 1165 11B6 -> D13F 1110 1165 11B7 -> D140 1110 1165 11B8 -> D141 1110 1165 11B9 -> D142 1110 1165 11BA -> D143 1110 1165 11BB -> D144 1110 1165 11BC -> D145 1110 1165 11BD -> D146 1110 1165 11BE -> D147 1110 1165 11BF -> D148 1110 1165 11C0 -> D149 1110 1165 11C1 -> D14A 1110 1165 11C2 -> D14B 1110 1166 -> D14C 1110 1166 11A8 -> D14D 1110 1166 11A9 -> D14E 1110 1166 11AA -> D14F 1110 1166 11AB -> D150 1110 1166 11AC -> D151 1110 1166 11AD -> D152 1110 1166 11AE -> D153 1110 1166 11AF -> D154 1110 1166 11B0 -> D155 1110 1166 11B1 -> D156 1110 1166 11B2 -> D157 1110 1166 11B3 -> D158 1110 1166 11B4 -> D159 1110 1166 11B5 -> D15A 1110 1166 11B6 -> D15B 1110 1166 11B7 -> D15C 1110 1166 11B8 -> D15D 1110 1166 11B9 -> D15E 1110 1166 11BA -> D15F 1110 1166 11BB -> D160 1110 1166 11BC -> D161 1110 1166 11BD -> D162 1110 1166 11BE -> D163 1110 1166 11BF -> D164 1110 1166 11C0 -> D165 1110 1166 11C1 -> D166 1110 1166 11C2 -> D167 1110 1167 -> D168 1110 1167 11A8 -> D169 1110 1167 11A9 -> D16A 1110 1167 11AA -> D16B 1110 1167 11AB -> D16C 1110 1167 11AC -> D16D 1110 1167 11AD -> D16E 1110 1167 11AE -> D16F 1110 1167 11AF -> D170 1110 1167 11B0 -> D171 1110 1167 11B1 -> D172 1110 1167 11B2 -> D173 1110 1167 11B3 -> D174 1110 1167 11B4 -> D175 1110 1167 11B5 -> D176 1110 1167 11B6 -> D177 1110 1167 11B7 -> D178 1110 1167 11B8 -> D179 1110 1167 11B9 -> D17A 1110 1167 11BA -> D17B 1110 1167 11BB -> D17C 1110 1167 11BC -> D17D 1110 1167 11BD -> D17E 1110 1167 11BE -> D17F 1110 1167 11BF -> D180 1110 1167 11C0 -> D181 1110 1167 11C1 -> D182 1110 1167 11C2 -> D183 1110 1168 -> D184 1110 1168 11A8 -> D185 1110 1168 11A9 -> D186 1110 1168 11AA -> D187 1110 1168 11AB -> D188 1110 1168 11AC -> D189 1110 1168 11AD -> D18A 1110 1168 11AE -> D18B 1110 1168 11AF -> D18C 1110 1168 11B0 -> D18D 1110 1168 11B1 -> D18E 1110 1168 11B2 -> D18F 1110 1168 11B3 -> D190 1110 1168 11B4 -> D191 1110 1168 11B5 -> D192 1110 1168 11B6 -> D193 1110 1168 11B7 -> D194 1110 1168 11B8 -> D195 1110 1168 11B9 -> D196 1110 1168 11BA -> D197 1110 1168 11BB -> D198 1110 1168 11BC -> D199 1110 1168 11BD -> D19A 1110 1168 11BE -> D19B 1110 1168 11BF -> D19C 1110 1168 11C0 -> D19D 1110 1168 11C1 -> D19E 1110 1168 11C2 -> D19F 1110 1169 -> D1A0 1110 1169 11A8 -> D1A1 1110 1169 11A9 -> D1A2 1110 1169 11AA -> D1A3 1110 1169 11AB -> D1A4 1110 1169 11AC -> D1A5 1110 1169 11AD -> D1A6 1110 1169 11AE -> D1A7 1110 1169 11AF -> D1A8 1110 1169 11B0 -> D1A9 1110 1169 11B1 -> D1AA 1110 1169 11B2 -> D1AB 1110 1169 11B3 -> D1AC 1110 1169 11B4 -> D1AD 1110 1169 11B5 -> D1AE 1110 1169 11B6 -> D1AF 1110 1169 11B7 -> D1B0 1110 1169 11B8 -> D1B1 1110 1169 11B9 -> D1B2 1110 1169 11BA -> D1B3 1110 1169 11BB -> D1B4 1110 1169 11BC -> D1B5 1110 1169 11BD -> D1B6 1110 1169 11BE -> D1B7 1110 1169 11BF -> D1B8 1110 1169 11C0 -> D1B9 1110 1169 11C1 -> D1BA 1110 1169 11C2 -> D1BB 1110 116A -> D1BC 1110 116A 11A8 -> D1BD 1110 116A 11A9 -> D1BE 1110 116A 11AA -> D1BF 1110 116A 11AB -> D1C0 1110 116A 11AC -> D1C1 1110 116A 11AD -> D1C2 1110 116A 11AE -> D1C3 1110 116A 11AF -> D1C4 1110 116A 11B0 -> D1C5 1110 116A 11B1 -> D1C6 1110 116A 11B2 -> D1C7 1110 116A 11B3 -> D1C8 1110 116A 11B4 -> D1C9 1110 116A 11B5 -> D1CA 1110 116A 11B6 -> D1CB 1110 116A 11B7 -> D1CC 1110 116A 11B8 -> D1CD 1110 116A 11B9 -> D1CE 1110 116A 11BA -> D1CF 1110 116A 11BB -> D1D0 1110 116A 11BC -> D1D1 1110 116A 11BD -> D1D2 1110 116A 11BE -> D1D3 1110 116A 11BF -> D1D4 1110 116A 11C0 -> D1D5 1110 116A 11C1 -> D1D6 1110 116A 11C2 -> D1D7 1110 116B -> D1D8 1110 116B 11A8 -> D1D9 1110 116B 11A9 -> D1DA 1110 116B 11AA -> D1DB 1110 116B 11AB -> D1DC 1110 116B 11AC -> D1DD 1110 116B 11AD -> D1DE 1110 116B 11AE -> D1DF 1110 116B 11AF -> D1E0 1110 116B 11B0 -> D1E1 1110 116B 11B1 -> D1E2 1110 116B 11B2 -> D1E3 1110 116B 11B3 -> D1E4 1110 116B 11B4 -> D1E5 1110 116B 11B5 -> D1E6 1110 116B 11B6 -> D1E7 1110 116B 11B7 -> D1E8 1110 116B 11B8 -> D1E9 1110 116B 11B9 -> D1EA 1110 116B 11BA -> D1EB 1110 116B 11BB -> D1EC 1110 116B 11BC -> D1ED 1110 116B 11BD -> D1EE 1110 116B 11BE -> D1EF 1110 116B 11BF -> D1F0 1110 116B 11C0 -> D1F1 1110 116B 11C1 -> D1F2 1110 116B 11C2 -> D1F3 1110 116C -> D1F4 1110 116C 11A8 -> D1F5 1110 116C 11A9 -> D1F6 1110 116C 11AA -> D1F7 1110 116C 11AB -> D1F8 1110 116C 11AC -> D1F9 1110 116C 11AD -> D1FA 1110 116C 11AE -> D1FB 1110 116C 11AF -> D1FC 1110 116C 11B0 -> D1FD 1110 116C 11B1 -> D1FE 1110 116C 11B2 -> D1FF 1110 116C 11B3 -> D200 1110 116C 11B4 -> D201 1110 116C 11B5 -> D202 1110 116C 11B6 -> D203 1110 116C 11B7 -> D204 1110 116C 11B8 -> D205 1110 116C 11B9 -> D206 1110 116C 11BA -> D207 1110 116C 11BB -> D208 1110 116C 11BC -> D209 1110 116C 11BD -> D20A 1110 116C 11BE -> D20B 1110 116C 11BF -> D20C 1110 116C 11C0 -> D20D 1110 116C 11C1 -> D20E 1110 116C 11C2 -> D20F 1110 116D -> D210 1110 116D 11A8 -> D211 1110 116D 11A9 -> D212 1110 116D 11AA -> D213 1110 116D 11AB -> D214 1110 116D 11AC -> D215 1110 116D 11AD -> D216 1110 116D 11AE -> D217 1110 116D 11AF -> D218 1110 116D 11B0 -> D219 1110 116D 11B1 -> D21A 1110 116D 11B2 -> D21B 1110 116D 11B3 -> D21C 1110 116D 11B4 -> D21D 1110 116D 11B5 -> D21E 1110 116D 11B6 -> D21F 1110 116D 11B7 -> D220 1110 116D 11B8 -> D221 1110 116D 11B9 -> D222 1110 116D 11BA -> D223 1110 116D 11BB -> D224 1110 116D 11BC -> D225 1110 116D 11BD -> D226 1110 116D 11BE -> D227 1110 116D 11BF -> D228 1110 116D 11C0 -> D229 1110 116D 11C1 -> D22A 1110 116D 11C2 -> D22B 1110 116E -> D22C 1110 116E 11A8 -> D22D 1110 116E 11A9 -> D22E 1110 116E 11AA -> D22F 1110 116E 11AB -> D230 1110 116E 11AC -> D231 1110 116E 11AD -> D232 1110 116E 11AE -> D233 1110 116E 11AF -> D234 1110 116E 11B0 -> D235 1110 116E 11B1 -> D236 1110 116E 11B2 -> D237 1110 116E 11B3 -> D238 1110 116E 11B4 -> D239 1110 116E 11B5 -> D23A 1110 116E 11B6 -> D23B 1110 116E 11B7 -> D23C 1110 116E 11B8 -> D23D 1110 116E 11B9 -> D23E 1110 116E 11BA -> D23F 1110 116E 11BB -> D240 1110 116E 11BC -> D241 1110 116E 11BD -> D242 1110 116E 11BE -> D243 1110 116E 11BF -> D244 1110 116E 11C0 -> D245 1110 116E 11C1 -> D246 1110 116E 11C2 -> D247 1110 116F -> D248 1110 116F 11A8 -> D249 1110 116F 11A9 -> D24A 1110 116F 11AA -> D24B 1110 116F 11AB -> D24C 1110 116F 11AC -> D24D 1110 116F 11AD -> D24E 1110 116F 11AE -> D24F 1110 116F 11AF -> D250 1110 116F 11B0 -> D251 1110 116F 11B1 -> D252 1110 116F 11B2 -> D253 1110 116F 11B3 -> D254 1110 116F 11B4 -> D255 1110 116F 11B5 -> D256 1110 116F 11B6 -> D257 1110 116F 11B7 -> D258 1110 116F 11B8 -> D259 1110 116F 11B9 -> D25A 1110 116F 11BA -> D25B 1110 116F 11BB -> D25C 1110 116F 11BC -> D25D 1110 116F 11BD -> D25E 1110 116F 11BE -> D25F 1110 116F 11BF -> D260 1110 116F 11C0 -> D261 1110 116F 11C1 -> D262 1110 116F 11C2 -> D263 1110 1170 -> D264 1110 1170 11A8 -> D265 1110 1170 11A9 -> D266 1110 1170 11AA -> D267 1110 1170 11AB -> D268 1110 1170 11AC -> D269 1110 1170 11AD -> D26A 1110 1170 11AE -> D26B 1110 1170 11AF -> D26C 1110 1170 11B0 -> D26D 1110 1170 11B1 -> D26E 1110 1170 11B2 -> D26F 1110 1170 11B3 -> D270 1110 1170 11B4 -> D271 1110 1170 11B5 -> D272 1110 1170 11B6 -> D273 1110 1170 11B7 -> D274 1110 1170 11B8 -> D275 1110 1170 11B9 -> D276 1110 1170 11BA -> D277 1110 1170 11BB -> D278 1110 1170 11BC -> D279 1110 1170 11BD -> D27A 1110 1170 11BE -> D27B 1110 1170 11BF -> D27C 1110 1170 11C0 -> D27D 1110 1170 11C1 -> D27E 1110 1170 11C2 -> D27F 1110 1171 -> D280 1110 1171 11A8 -> D281 1110 1171 11A9 -> D282 1110 1171 11AA -> D283 1110 1171 11AB -> D284 1110 1171 11AC -> D285 1110 1171 11AD -> D286 1110 1171 11AE -> D287 1110 1171 11AF -> D288 1110 1171 11B0 -> D289 1110 1171 11B1 -> D28A 1110 1171 11B2 -> D28B 1110 1171 11B3 -> D28C 1110 1171 11B4 -> D28D 1110 1171 11B5 -> D28E 1110 1171 11B6 -> D28F 1110 1171 11B7 -> D290 1110 1171 11B8 -> D291 1110 1171 11B9 -> D292 1110 1171 11BA -> D293 1110 1171 11BB -> D294 1110 1171 11BC -> D295 1110 1171 11BD -> D296 1110 1171 11BE -> D297 1110 1171 11BF -> D298 1110 1171 11C0 -> D299 1110 1171 11C1 -> D29A 1110 1171 11C2 -> D29B 1110 1172 -> D29C 1110 1172 11A8 -> D29D 1110 1172 11A9 -> D29E 1110 1172 11AA -> D29F 1110 1172 11AB -> D2A0 1110 1172 11AC -> D2A1 1110 1172 11AD -> D2A2 1110 1172 11AE -> D2A3 1110 1172 11AF -> D2A4 1110 1172 11B0 -> D2A5 1110 1172 11B1 -> D2A6 1110 1172 11B2 -> D2A7 1110 1172 11B3 -> D2A8 1110 1172 11B4 -> D2A9 1110 1172 11B5 -> D2AA 1110 1172 11B6 -> D2AB 1110 1172 11B7 -> D2AC 1110 1172 11B8 -> D2AD 1110 1172 11B9 -> D2AE 1110 1172 11BA -> D2AF 1110 1172 11BB -> D2B0 1110 1172 11BC -> D2B1 1110 1172 11BD -> D2B2 1110 1172 11BE -> D2B3 1110 1172 11BF -> D2B4 1110 1172 11C0 -> D2B5 1110 1172 11C1 -> D2B6 1110 1172 11C2 -> D2B7 1110 1173 -> D2B8 1110 1173 11A8 -> D2B9 1110 1173 11A9 -> D2BA 1110 1173 11AA -> D2BB 1110 1173 11AB -> D2BC 1110 1173 11AC -> D2BD 1110 1173 11AD -> D2BE 1110 1173 11AE -> D2BF 1110 1173 11AF -> D2C0 1110 1173 11B0 -> D2C1 1110 1173 11B1 -> D2C2 1110 1173 11B2 -> D2C3 1110 1173 11B3 -> D2C4 1110 1173 11B4 -> D2C5 1110 1173 11B5 -> D2C6 1110 1173 11B6 -> D2C7 1110 1173 11B7 -> D2C8 1110 1173 11B8 -> D2C9 1110 1173 11B9 -> D2CA 1110 1173 11BA -> D2CB 1110 1173 11BB -> D2CC 1110 1173 11BC -> D2CD 1110 1173 11BD -> D2CE 1110 1173 11BE -> D2CF 1110 1173 11BF -> D2D0 1110 1173 11C0 -> D2D1 1110 1173 11C1 -> D2D2 1110 1173 11C2 -> D2D3 1110 1174 -> D2D4 1110 1174 11A8 -> D2D5 1110 1174 11A9 -> D2D6 1110 1174 11AA -> D2D7 1110 1174 11AB -> D2D8 1110 1174 11AC -> D2D9 1110 1174 11AD -> D2DA 1110 1174 11AE -> D2DB 1110 1174 11AF -> D2DC 1110 1174 11B0 -> D2DD 1110 1174 11B1 -> D2DE 1110 1174 11B2 -> D2DF 1110 1174 11B3 -> D2E0 1110 1174 11B4 -> D2E1 1110 1174 11B5 -> D2E2 1110 1174 11B6 -> D2E3 1110 1174 11B7 -> D2E4 1110 1174 11B8 -> D2E5 1110 1174 11B9 -> D2E6 1110 1174 11BA -> D2E7 1110 1174 11BB -> D2E8 1110 1174 11BC -> D2E9 1110 1174 11BD -> D2EA 1110 1174 11BE -> D2EB 1110 1174 11BF -> D2EC 1110 1174 11C0 -> D2ED 1110 1174 11C1 -> D2EE 1110 1174 11C2 -> D2EF 1110 1175 -> D2F0 1110 1175 11A8 -> D2F1 1110 1175 11A9 -> D2F2 1110 1175 11AA -> D2F3 1110 1175 11AB -> D2F4 1110 1175 11AC -> D2F5 1110 1175 11AD -> D2F6 1110 1175 11AE -> D2F7 1110 1175 11AF -> D2F8 1110 1175 11B0 -> D2F9 1110 1175 11B1 -> D2FA 1110 1175 11B2 -> D2FB 1110 1175 11B3 -> D2FC 1110 1175 11B4 -> D2FD 1110 1175 11B5 -> D2FE 1110 1175 11B6 -> D2FF 1110 1175 11B7 -> D300 1110 1175 11B8 -> D301 1110 1175 11B9 -> D302 1110 1175 11BA -> D303 1110 1175 11BB -> D304 1110 1175 11BC -> D305 1110 1175 11BD -> D306 1110 1175 11BE -> D307 1110 1175 11BF -> D308 1110 1175 11C0 -> D309 1110 1175 11C1 -> D30A 1110 1175 11C2 -> D30B 1111 1161 -> D30C 1111 1161 11A8 -> D30D 1111 1161 11A9 -> D30E 1111 1161 11AA -> D30F 1111 1161 11AB -> D310 1111 1161 11AC -> D311 1111 1161 11AD -> D312 1111 1161 11AE -> D313 1111 1161 11AF -> D314 1111 1161 11B0 -> D315 1111 1161 11B1 -> D316 1111 1161 11B2 -> D317 1111 1161 11B3 -> D318 1111 1161 11B4 -> D319 1111 1161 11B5 -> D31A 1111 1161 11B6 -> D31B 1111 1161 11B7 -> D31C 1111 1161 11B8 -> D31D 1111 1161 11B9 -> D31E 1111 1161 11BA -> D31F 1111 1161 11BB -> D320 1111 1161 11BC -> D321 1111 1161 11BD -> D322 1111 1161 11BE -> D323 1111 1161 11BF -> D324 1111 1161 11C0 -> D325 1111 1161 11C1 -> D326 1111 1161 11C2 -> D327 1111 1162 -> D328 1111 1162 11A8 -> D329 1111 1162 11A9 -> D32A 1111 1162 11AA -> D32B 1111 1162 11AB -> D32C 1111 1162 11AC -> D32D 1111 1162 11AD -> D32E 1111 1162 11AE -> D32F 1111 1162 11AF -> D330 1111 1162 11B0 -> D331 1111 1162 11B1 -> D332 1111 1162 11B2 -> D333 1111 1162 11B3 -> D334 1111 1162 11B4 -> D335 1111 1162 11B5 -> D336 1111 1162 11B6 -> D337 1111 1162 11B7 -> D338 1111 1162 11B8 -> D339 1111 1162 11B9 -> D33A 1111 1162 11BA -> D33B 1111 1162 11BB -> D33C 1111 1162 11BC -> D33D 1111 1162 11BD -> D33E 1111 1162 11BE -> D33F 1111 1162 11BF -> D340 1111 1162 11C0 -> D341 1111 1162 11C1 -> D342 1111 1162 11C2 -> D343 1111 1163 -> D344 1111 1163 11A8 -> D345 1111 1163 11A9 -> D346 1111 1163 11AA -> D347 1111 1163 11AB -> D348 1111 1163 11AC -> D349 1111 1163 11AD -> D34A 1111 1163 11AE -> D34B 1111 1163 11AF -> D34C 1111 1163 11B0 -> D34D 1111 1163 11B1 -> D34E 1111 1163 11B2 -> D34F 1111 1163 11B3 -> D350 1111 1163 11B4 -> D351 1111 1163 11B5 -> D352 1111 1163 11B6 -> D353 1111 1163 11B7 -> D354 1111 1163 11B8 -> D355 1111 1163 11B9 -> D356 1111 1163 11BA -> D357 1111 1163 11BB -> D358 1111 1163 11BC -> D359 1111 1163 11BD -> D35A 1111 1163 11BE -> D35B 1111 1163 11BF -> D35C 1111 1163 11C0 -> D35D 1111 1163 11C1 -> D35E 1111 1163 11C2 -> D35F 1111 1164 -> D360 1111 1164 11A8 -> D361 1111 1164 11A9 -> D362 1111 1164 11AA -> D363 1111 1164 11AB -> D364 1111 1164 11AC -> D365 1111 1164 11AD -> D366 1111 1164 11AE -> D367 1111 1164 11AF -> D368 1111 1164 11B0 -> D369 1111 1164 11B1 -> D36A 1111 1164 11B2 -> D36B 1111 1164 11B3 -> D36C 1111 1164 11B4 -> D36D 1111 1164 11B5 -> D36E 1111 1164 11B6 -> D36F 1111 1164 11B7 -> D370 1111 1164 11B8 -> D371 1111 1164 11B9 -> D372 1111 1164 11BA -> D373 1111 1164 11BB -> D374 1111 1164 11BC -> D375 1111 1164 11BD -> D376 1111 1164 11BE -> D377 1111 1164 11BF -> D378 1111 1164 11C0 -> D379 1111 1164 11C1 -> D37A 1111 1164 11C2 -> D37B 1111 1165 -> D37C 1111 1165 11A8 -> D37D 1111 1165 11A9 -> D37E 1111 1165 11AA -> D37F 1111 1165 11AB -> D380 1111 1165 11AC -> D381 1111 1165 11AD -> D382 1111 1165 11AE -> D383 1111 1165 11AF -> D384 1111 1165 11B0 -> D385 1111 1165 11B1 -> D386 1111 1165 11B2 -> D387 1111 1165 11B3 -> D388 1111 1165 11B4 -> D389 1111 1165 11B5 -> D38A 1111 1165 11B6 -> D38B 1111 1165 11B7 -> D38C 1111 1165 11B8 -> D38D 1111 1165 11B9 -> D38E 1111 1165 11BA -> D38F 1111 1165 11BB -> D390 1111 1165 11BC -> D391 1111 1165 11BD -> D392 1111 1165 11BE -> D393 1111 1165 11BF -> D394 1111 1165 11C0 -> D395 1111 1165 11C1 -> D396 1111 1165 11C2 -> D397 1111 1166 -> D398 1111 1166 11A8 -> D399 1111 1166 11A9 -> D39A 1111 1166 11AA -> D39B 1111 1166 11AB -> D39C 1111 1166 11AC -> D39D 1111 1166 11AD -> D39E 1111 1166 11AE -> D39F 1111 1166 11AF -> D3A0 1111 1166 11B0 -> D3A1 1111 1166 11B1 -> D3A2 1111 1166 11B2 -> D3A3 1111 1166 11B3 -> D3A4 1111 1166 11B4 -> D3A5 1111 1166 11B5 -> D3A6 1111 1166 11B6 -> D3A7 1111 1166 11B7 -> D3A8 1111 1166 11B8 -> D3A9 1111 1166 11B9 -> D3AA 1111 1166 11BA -> D3AB 1111 1166 11BB -> D3AC 1111 1166 11BC -> D3AD 1111 1166 11BD -> D3AE 1111 1166 11BE -> D3AF 1111 1166 11BF -> D3B0 1111 1166 11C0 -> D3B1 1111 1166 11C1 -> D3B2 1111 1166 11C2 -> D3B3 1111 1167 -> D3B4 1111 1167 11A8 -> D3B5 1111 1167 11A9 -> D3B6 1111 1167 11AA -> D3B7 1111 1167 11AB -> D3B8 1111 1167 11AC -> D3B9 1111 1167 11AD -> D3BA 1111 1167 11AE -> D3BB 1111 1167 11AF -> D3BC 1111 1167 11B0 -> D3BD 1111 1167 11B1 -> D3BE 1111 1167 11B2 -> D3BF 1111 1167 11B3 -> D3C0 1111 1167 11B4 -> D3C1 1111 1167 11B5 -> D3C2 1111 1167 11B6 -> D3C3 1111 1167 11B7 -> D3C4 1111 1167 11B8 -> D3C5 1111 1167 11B9 -> D3C6 1111 1167 11BA -> D3C7 1111 1167 11BB -> D3C8 1111 1167 11BC -> D3C9 1111 1167 11BD -> D3CA 1111 1167 11BE -> D3CB 1111 1167 11BF -> D3CC 1111 1167 11C0 -> D3CD 1111 1167 11C1 -> D3CE 1111 1167 11C2 -> D3CF 1111 1168 -> D3D0 1111 1168 11A8 -> D3D1 1111 1168 11A9 -> D3D2 1111 1168 11AA -> D3D3 1111 1168 11AB -> D3D4 1111 1168 11AC -> D3D5 1111 1168 11AD -> D3D6 1111 1168 11AE -> D3D7 1111 1168 11AF -> D3D8 1111 1168 11B0 -> D3D9 1111 1168 11B1 -> D3DA 1111 1168 11B2 -> D3DB 1111 1168 11B3 -> D3DC 1111 1168 11B4 -> D3DD 1111 1168 11B5 -> D3DE 1111 1168 11B6 -> D3DF 1111 1168 11B7 -> D3E0 1111 1168 11B8 -> D3E1 1111 1168 11B9 -> D3E2 1111 1168 11BA -> D3E3 1111 1168 11BB -> D3E4 1111 1168 11BC -> D3E5 1111 1168 11BD -> D3E6 1111 1168 11BE -> D3E7 1111 1168 11BF -> D3E8 1111 1168 11C0 -> D3E9 1111 1168 11C1 -> D3EA 1111 1168 11C2 -> D3EB 1111 1169 -> D3EC 1111 1169 11A8 -> D3ED 1111 1169 11A9 -> D3EE 1111 1169 11AA -> D3EF 1111 1169 11AB -> D3F0 1111 1169 11AC -> D3F1 1111 1169 11AD -> D3F2 1111 1169 11AE -> D3F3 1111 1169 11AF -> D3F4 1111 1169 11B0 -> D3F5 1111 1169 11B1 -> D3F6 1111 1169 11B2 -> D3F7 1111 1169 11B3 -> D3F8 1111 1169 11B4 -> D3F9 1111 1169 11B5 -> D3FA 1111 1169 11B6 -> D3FB 1111 1169 11B7 -> D3FC 1111 1169 11B8 -> D3FD 1111 1169 11B9 -> D3FE 1111 1169 11BA -> D3FF 1111 1169 11BB -> D400 1111 1169 11BC -> D401 1111 1169 11BD -> D402 1111 1169 11BE -> D403 1111 1169 11BF -> D404 1111 1169 11C0 -> D405 1111 1169 11C1 -> D406 1111 1169 11C2 -> D407 1111 116A -> D408 1111 116A 11A8 -> D409 1111 116A 11A9 -> D40A 1111 116A 11AA -> D40B 1111 116A 11AB -> D40C 1111 116A 11AC -> D40D 1111 116A 11AD -> D40E 1111 116A 11AE -> D40F 1111 116A 11AF -> D410 1111 116A 11B0 -> D411 1111 116A 11B1 -> D412 1111 116A 11B2 -> D413 1111 116A 11B3 -> D414 1111 116A 11B4 -> D415 1111 116A 11B5 -> D416 1111 116A 11B6 -> D417 1111 116A 11B7 -> D418 1111 116A 11B8 -> D419 1111 116A 11B9 -> D41A 1111 116A 11BA -> D41B 1111 116A 11BB -> D41C 1111 116A 11BC -> D41D 1111 116A 11BD -> D41E 1111 116A 11BE -> D41F 1111 116A 11BF -> D420 1111 116A 11C0 -> D421 1111 116A 11C1 -> D422 1111 116A 11C2 -> D423 1111 116B -> D424 1111 116B 11A8 -> D425 1111 116B 11A9 -> D426 1111 116B 11AA -> D427 1111 116B 11AB -> D428 1111 116B 11AC -> D429 1111 116B 11AD -> D42A 1111 116B 11AE -> D42B 1111 116B 11AF -> D42C 1111 116B 11B0 -> D42D 1111 116B 11B1 -> D42E 1111 116B 11B2 -> D42F 1111 116B 11B3 -> D430 1111 116B 11B4 -> D431 1111 116B 11B5 -> D432 1111 116B 11B6 -> D433 1111 116B 11B7 -> D434 1111 116B 11B8 -> D435 1111 116B 11B9 -> D436 1111 116B 11BA -> D437 1111 116B 11BB -> D438 1111 116B 11BC -> D439 1111 116B 11BD -> D43A 1111 116B 11BE -> D43B 1111 116B 11BF -> D43C 1111 116B 11C0 -> D43D 1111 116B 11C1 -> D43E 1111 116B 11C2 -> D43F 1111 116C -> D440 1111 116C 11A8 -> D441 1111 116C 11A9 -> D442 1111 116C 11AA -> D443 1111 116C 11AB -> D444 1111 116C 11AC -> D445 1111 116C 11AD -> D446 1111 116C 11AE -> D447 1111 116C 11AF -> D448 1111 116C 11B0 -> D449 1111 116C 11B1 -> D44A 1111 116C 11B2 -> D44B 1111 116C 11B3 -> D44C 1111 116C 11B4 -> D44D 1111 116C 11B5 -> D44E 1111 116C 11B6 -> D44F 1111 116C 11B7 -> D450 1111 116C 11B8 -> D451 1111 116C 11B9 -> D452 1111 116C 11BA -> D453 1111 116C 11BB -> D454 1111 116C 11BC -> D455 1111 116C 11BD -> D456 1111 116C 11BE -> D457 1111 116C 11BF -> D458 1111 116C 11C0 -> D459 1111 116C 11C1 -> D45A 1111 116C 11C2 -> D45B 1111 116D -> D45C 1111 116D 11A8 -> D45D 1111 116D 11A9 -> D45E 1111 116D 11AA -> D45F 1111 116D 11AB -> D460 1111 116D 11AC -> D461 1111 116D 11AD -> D462 1111 116D 11AE -> D463 1111 116D 11AF -> D464 1111 116D 11B0 -> D465 1111 116D 11B1 -> D466 1111 116D 11B2 -> D467 1111 116D 11B3 -> D468 1111 116D 11B4 -> D469 1111 116D 11B5 -> D46A 1111 116D 11B6 -> D46B 1111 116D 11B7 -> D46C 1111 116D 11B8 -> D46D 1111 116D 11B9 -> D46E 1111 116D 11BA -> D46F 1111 116D 11BB -> D470 1111 116D 11BC -> D471 1111 116D 11BD -> D472 1111 116D 11BE -> D473 1111 116D 11BF -> D474 1111 116D 11C0 -> D475 1111 116D 11C1 -> D476 1111 116D 11C2 -> D477 1111 116E -> D478 1111 116E 11A8 -> D479 1111 116E 11A9 -> D47A 1111 116E 11AA -> D47B 1111 116E 11AB -> D47C 1111 116E 11AC -> D47D 1111 116E 11AD -> D47E 1111 116E 11AE -> D47F 1111 116E 11AF -> D480 1111 116E 11B0 -> D481 1111 116E 11B1 -> D482 1111 116E 11B2 -> D483 1111 116E 11B3 -> D484 1111 116E 11B4 -> D485 1111 116E 11B5 -> D486 1111 116E 11B6 -> D487 1111 116E 11B7 -> D488 1111 116E 11B8 -> D489 1111 116E 11B9 -> D48A 1111 116E 11BA -> D48B 1111 116E 11BB -> D48C 1111 116E 11BC -> D48D 1111 116E 11BD -> D48E 1111 116E 11BE -> D48F 1111 116E 11BF -> D490 1111 116E 11C0 -> D491 1111 116E 11C1 -> D492 1111 116E 11C2 -> D493 1111 116F -> D494 1111 116F 11A8 -> D495 1111 116F 11A9 -> D496 1111 116F 11AA -> D497 1111 116F 11AB -> D498 1111 116F 11AC -> D499 1111 116F 11AD -> D49A 1111 116F 11AE -> D49B 1111 116F 11AF -> D49C 1111 116F 11B0 -> D49D 1111 116F 11B1 -> D49E 1111 116F 11B2 -> D49F 1111 116F 11B3 -> D4A0 1111 116F 11B4 -> D4A1 1111 116F 11B5 -> D4A2 1111 116F 11B6 -> D4A3 1111 116F 11B7 -> D4A4 1111 116F 11B8 -> D4A5 1111 116F 11B9 -> D4A6 1111 116F 11BA -> D4A7 1111 116F 11BB -> D4A8 1111 116F 11BC -> D4A9 1111 116F 11BD -> D4AA 1111 116F 11BE -> D4AB 1111 116F 11BF -> D4AC 1111 116F 11C0 -> D4AD 1111 116F 11C1 -> D4AE 1111 116F 11C2 -> D4AF 1111 1170 -> D4B0 1111 1170 11A8 -> D4B1 1111 1170 11A9 -> D4B2 1111 1170 11AA -> D4B3 1111 1170 11AB -> D4B4 1111 1170 11AC -> D4B5 1111 1170 11AD -> D4B6 1111 1170 11AE -> D4B7 1111 1170 11AF -> D4B8 1111 1170 11B0 -> D4B9 1111 1170 11B1 -> D4BA 1111 1170 11B2 -> D4BB 1111 1170 11B3 -> D4BC 1111 1170 11B4 -> D4BD 1111 1170 11B5 -> D4BE 1111 1170 11B6 -> D4BF 1111 1170 11B7 -> D4C0 1111 1170 11B8 -> D4C1 1111 1170 11B9 -> D4C2 1111 1170 11BA -> D4C3 1111 1170 11BB -> D4C4 1111 1170 11BC -> D4C5 1111 1170 11BD -> D4C6 1111 1170 11BE -> D4C7 1111 1170 11BF -> D4C8 1111 1170 11C0 -> D4C9 1111 1170 11C1 -> D4CA 1111 1170 11C2 -> D4CB 1111 1171 -> D4CC 1111 1171 11A8 -> D4CD 1111 1171 11A9 -> D4CE 1111 1171 11AA -> D4CF 1111 1171 11AB -> D4D0 1111 1171 11AC -> D4D1 1111 1171 11AD -> D4D2 1111 1171 11AE -> D4D3 1111 1171 11AF -> D4D4 1111 1171 11B0 -> D4D5 1111 1171 11B1 -> D4D6 1111 1171 11B2 -> D4D7 1111 1171 11B3 -> D4D8 1111 1171 11B4 -> D4D9 1111 1171 11B5 -> D4DA 1111 1171 11B6 -> D4DB 1111 1171 11B7 -> D4DC 1111 1171 11B8 -> D4DD 1111 1171 11B9 -> D4DE 1111 1171 11BA -> D4DF 1111 1171 11BB -> D4E0 1111 1171 11BC -> D4E1 1111 1171 11BD -> D4E2 1111 1171 11BE -> D4E3 1111 1171 11BF -> D4E4 1111 1171 11C0 -> D4E5 1111 1171 11C1 -> D4E6 1111 1171 11C2 -> D4E7 1111 1172 -> D4E8 1111 1172 11A8 -> D4E9 1111 1172 11A9 -> D4EA 1111 1172 11AA -> D4EB 1111 1172 11AB -> D4EC 1111 1172 11AC -> D4ED 1111 1172 11AD -> D4EE 1111 1172 11AE -> D4EF 1111 1172 11AF -> D4F0 1111 1172 11B0 -> D4F1 1111 1172 11B1 -> D4F2 1111 1172 11B2 -> D4F3 1111 1172 11B3 -> D4F4 1111 1172 11B4 -> D4F5 1111 1172 11B5 -> D4F6 1111 1172 11B6 -> D4F7 1111 1172 11B7 -> D4F8 1111 1172 11B8 -> D4F9 1111 1172 11B9 -> D4FA 1111 1172 11BA -> D4FB 1111 1172 11BB -> D4FC 1111 1172 11BC -> D4FD 1111 1172 11BD -> D4FE 1111 1172 11BE -> D4FF 1111 1172 11BF -> D500 1111 1172 11C0 -> D501 1111 1172 11C1 -> D502 1111 1172 11C2 -> D503 1111 1173 -> D504 1111 1173 11A8 -> D505 1111 1173 11A9 -> D506 1111 1173 11AA -> D507 1111 1173 11AB -> D508 1111 1173 11AC -> D509 1111 1173 11AD -> D50A 1111 1173 11AE -> D50B 1111 1173 11AF -> D50C 1111 1173 11B0 -> D50D 1111 1173 11B1 -> D50E 1111 1173 11B2 -> D50F 1111 1173 11B3 -> D510 1111 1173 11B4 -> D511 1111 1173 11B5 -> D512 1111 1173 11B6 -> D513 1111 1173 11B7 -> D514 1111 1173 11B8 -> D515 1111 1173 11B9 -> D516 1111 1173 11BA -> D517 1111 1173 11BB -> D518 1111 1173 11BC -> D519 1111 1173 11BD -> D51A 1111 1173 11BE -> D51B 1111 1173 11BF -> D51C 1111 1173 11C0 -> D51D 1111 1173 11C1 -> D51E 1111 1173 11C2 -> D51F 1111 1174 -> D520 1111 1174 11A8 -> D521 1111 1174 11A9 -> D522 1111 1174 11AA -> D523 1111 1174 11AB -> D524 1111 1174 11AC -> D525 1111 1174 11AD -> D526 1111 1174 11AE -> D527 1111 1174 11AF -> D528 1111 1174 11B0 -> D529 1111 1174 11B1 -> D52A 1111 1174 11B2 -> D52B 1111 1174 11B3 -> D52C 1111 1174 11B4 -> D52D 1111 1174 11B5 -> D52E 1111 1174 11B6 -> D52F 1111 1174 11B7 -> D530 1111 1174 11B8 -> D531 1111 1174 11B9 -> D532 1111 1174 11BA -> D533 1111 1174 11BB -> D534 1111 1174 11BC -> D535 1111 1174 11BD -> D536 1111 1174 11BE -> D537 1111 1174 11BF -> D538 1111 1174 11C0 -> D539 1111 1174 11C1 -> D53A 1111 1174 11C2 -> D53B 1111 1175 -> D53C 1111 1175 11A8 -> D53D 1111 1175 11A9 -> D53E 1111 1175 11AA -> D53F 1111 1175 11AB -> D540 1111 1175 11AC -> D541 1111 1175 11AD -> D542 1111 1175 11AE -> D543 1111 1175 11AF -> D544 1111 1175 11B0 -> D545 1111 1175 11B1 -> D546 1111 1175 11B2 -> D547 1111 1175 11B3 -> D548 1111 1175 11B4 -> D549 1111 1175 11B5 -> D54A 1111 1175 11B6 -> D54B 1111 1175 11B7 -> D54C 1111 1175 11B8 -> D54D 1111 1175 11B9 -> D54E 1111 1175 11BA -> D54F 1111 1175 11BB -> D550 1111 1175 11BC -> D551 1111 1175 11BD -> D552 1111 1175 11BE -> D553 1111 1175 11BF -> D554 1111 1175 11C0 -> D555 1111 1175 11C1 -> D556 1111 1175 11C2 -> D557 1112 1161 -> D558 1112 1161 11A8 -> D559 1112 1161 11A9 -> D55A 1112 1161 11AA -> D55B 1112 1161 11AB -> D55C 1112 1161 11AC -> D55D 1112 1161 11AD -> D55E 1112 1161 11AE -> D55F 1112 1161 11AF -> D560 1112 1161 11B0 -> D561 1112 1161 11B1 -> D562 1112 1161 11B2 -> D563 1112 1161 11B3 -> D564 1112 1161 11B4 -> D565 1112 1161 11B5 -> D566 1112 1161 11B6 -> D567 1112 1161 11B7 -> D568 1112 1161 11B8 -> D569 1112 1161 11B9 -> D56A 1112 1161 11BA -> D56B 1112 1161 11BB -> D56C 1112 1161 11BC -> D56D 1112 1161 11BD -> D56E 1112 1161 11BE -> D56F 1112 1161 11BF -> D570 1112 1161 11C0 -> D571 1112 1161 11C1 -> D572 1112 1161 11C2 -> D573 1112 1162 -> D574 1112 1162 11A8 -> D575 1112 1162 11A9 -> D576 1112 1162 11AA -> D577 1112 1162 11AB -> D578 1112 1162 11AC -> D579 1112 1162 11AD -> D57A 1112 1162 11AE -> D57B 1112 1162 11AF -> D57C 1112 1162 11B0 -> D57D 1112 1162 11B1 -> D57E 1112 1162 11B2 -> D57F 1112 1162 11B3 -> D580 1112 1162 11B4 -> D581 1112 1162 11B5 -> D582 1112 1162 11B6 -> D583 1112 1162 11B7 -> D584 1112 1162 11B8 -> D585 1112 1162 11B9 -> D586 1112 1162 11BA -> D587 1112 1162 11BB -> D588 1112 1162 11BC -> D589 1112 1162 11BD -> D58A 1112 1162 11BE -> D58B 1112 1162 11BF -> D58C 1112 1162 11C0 -> D58D 1112 1162 11C1 -> D58E 1112 1162 11C2 -> D58F 1112 1163 -> D590 1112 1163 11A8 -> D591 1112 1163 11A9 -> D592 1112 1163 11AA -> D593 1112 1163 11AB -> D594 1112 1163 11AC -> D595 1112 1163 11AD -> D596 1112 1163 11AE -> D597 1112 1163 11AF -> D598 1112 1163 11B0 -> D599 1112 1163 11B1 -> D59A 1112 1163 11B2 -> D59B 1112 1163 11B3 -> D59C 1112 1163 11B4 -> D59D 1112 1163 11B5 -> D59E 1112 1163 11B6 -> D59F 1112 1163 11B7 -> D5A0 1112 1163 11B8 -> D5A1 1112 1163 11B9 -> D5A2 1112 1163 11BA -> D5A3 1112 1163 11BB -> D5A4 1112 1163 11BC -> D5A5 1112 1163 11BD -> D5A6 1112 1163 11BE -> D5A7 1112 1163 11BF -> D5A8 1112 1163 11C0 -> D5A9 1112 1163 11C1 -> D5AA 1112 1163 11C2 -> D5AB 1112 1164 -> D5AC 1112 1164 11A8 -> D5AD 1112 1164 11A9 -> D5AE 1112 1164 11AA -> D5AF 1112 1164 11AB -> D5B0 1112 1164 11AC -> D5B1 1112 1164 11AD -> D5B2 1112 1164 11AE -> D5B3 1112 1164 11AF -> D5B4 1112 1164 11B0 -> D5B5 1112 1164 11B1 -> D5B6 1112 1164 11B2 -> D5B7 1112 1164 11B3 -> D5B8 1112 1164 11B4 -> D5B9 1112 1164 11B5 -> D5BA 1112 1164 11B6 -> D5BB 1112 1164 11B7 -> D5BC 1112 1164 11B8 -> D5BD 1112 1164 11B9 -> D5BE 1112 1164 11BA -> D5BF 1112 1164 11BB -> D5C0 1112 1164 11BC -> D5C1 1112 1164 11BD -> D5C2 1112 1164 11BE -> D5C3 1112 1164 11BF -> D5C4 1112 1164 11C0 -> D5C5 1112 1164 11C1 -> D5C6 1112 1164 11C2 -> D5C7 1112 1165 -> D5C8 1112 1165 11A8 -> D5C9 1112 1165 11A9 -> D5CA 1112 1165 11AA -> D5CB 1112 1165 11AB -> D5CC 1112 1165 11AC -> D5CD 1112 1165 11AD -> D5CE 1112 1165 11AE -> D5CF 1112 1165 11AF -> D5D0 1112 1165 11B0 -> D5D1 1112 1165 11B1 -> D5D2 1112 1165 11B2 -> D5D3 1112 1165 11B3 -> D5D4 1112 1165 11B4 -> D5D5 1112 1165 11B5 -> D5D6 1112 1165 11B6 -> D5D7 1112 1165 11B7 -> D5D8 1112 1165 11B8 -> D5D9 1112 1165 11B9 -> D5DA 1112 1165 11BA -> D5DB 1112 1165 11BB -> D5DC 1112 1165 11BC -> D5DD 1112 1165 11BD -> D5DE 1112 1165 11BE -> D5DF 1112 1165 11BF -> D5E0 1112 1165 11C0 -> D5E1 1112 1165 11C1 -> D5E2 1112 1165 11C2 -> D5E3 1112 1166 -> D5E4 1112 1166 11A8 -> D5E5 1112 1166 11A9 -> D5E6 1112 1166 11AA -> D5E7 1112 1166 11AB -> D5E8 1112 1166 11AC -> D5E9 1112 1166 11AD -> D5EA 1112 1166 11AE -> D5EB 1112 1166 11AF -> D5EC 1112 1166 11B0 -> D5ED 1112 1166 11B1 -> D5EE 1112 1166 11B2 -> D5EF 1112 1166 11B3 -> D5F0 1112 1166 11B4 -> D5F1 1112 1166 11B5 -> D5F2 1112 1166 11B6 -> D5F3 1112 1166 11B7 -> D5F4 1112 1166 11B8 -> D5F5 1112 1166 11B9 -> D5F6 1112 1166 11BA -> D5F7 1112 1166 11BB -> D5F8 1112 1166 11BC -> D5F9 1112 1166 11BD -> D5FA 1112 1166 11BE -> D5FB 1112 1166 11BF -> D5FC 1112 1166 11C0 -> D5FD 1112 1166 11C1 -> D5FE 1112 1166 11C2 -> D5FF 1112 1167 -> D600 1112 1167 11A8 -> D601 1112 1167 11A9 -> D602 1112 1167 11AA -> D603 1112 1167 11AB -> D604 1112 1167 11AC -> D605 1112 1167 11AD -> D606 1112 1167 11AE -> D607 1112 1167 11AF -> D608 1112 1167 11B0 -> D609 1112 1167 11B1 -> D60A 1112 1167 11B2 -> D60B 1112 1167 11B3 -> D60C 1112 1167 11B4 -> D60D 1112 1167 11B5 -> D60E 1112 1167 11B6 -> D60F 1112 1167 11B7 -> D610 1112 1167 11B8 -> D611 1112 1167 11B9 -> D612 1112 1167 11BA -> D613 1112 1167 11BB -> D614 1112 1167 11BC -> D615 1112 1167 11BD -> D616 1112 1167 11BE -> D617 1112 1167 11BF -> D618 1112 1167 11C0 -> D619 1112 1167 11C1 -> D61A 1112 1167 11C2 -> D61B 1112 1168 -> D61C 1112 1168 11A8 -> D61D 1112 1168 11A9 -> D61E 1112 1168 11AA -> D61F 1112 1168 11AB -> D620 1112 1168 11AC -> D621 1112 1168 11AD -> D622 1112 1168 11AE -> D623 1112 1168 11AF -> D624 1112 1168 11B0 -> D625 1112 1168 11B1 -> D626 1112 1168 11B2 -> D627 1112 1168 11B3 -> D628 1112 1168 11B4 -> D629 1112 1168 11B5 -> D62A 1112 1168 11B6 -> D62B 1112 1168 11B7 -> D62C 1112 1168 11B8 -> D62D 1112 1168 11B9 -> D62E 1112 1168 11BA -> D62F 1112 1168 11BB -> D630 1112 1168 11BC -> D631 1112 1168 11BD -> D632 1112 1168 11BE -> D633 1112 1168 11BF -> D634 1112 1168 11C0 -> D635 1112 1168 11C1 -> D636 1112 1168 11C2 -> D637 1112 1169 -> D638 1112 1169 11A8 -> D639 1112 1169 11A9 -> D63A 1112 1169 11AA -> D63B 1112 1169 11AB -> D63C 1112 1169 11AC -> D63D 1112 1169 11AD -> D63E 1112 1169 11AE -> D63F 1112 1169 11AF -> D640 1112 1169 11B0 -> D641 1112 1169 11B1 -> D642 1112 1169 11B2 -> D643 1112 1169 11B3 -> D644 1112 1169 11B4 -> D645 1112 1169 11B5 -> D646 1112 1169 11B6 -> D647 1112 1169 11B7 -> D648 1112 1169 11B8 -> D649 1112 1169 11B9 -> D64A 1112 1169 11BA -> D64B 1112 1169 11BB -> D64C 1112 1169 11BC -> D64D 1112 1169 11BD -> D64E 1112 1169 11BE -> D64F 1112 1169 11BF -> D650 1112 1169 11C0 -> D651 1112 1169 11C1 -> D652 1112 1169 11C2 -> D653 1112 116A -> D654 1112 116A 11A8 -> D655 1112 116A 11A9 -> D656 1112 116A 11AA -> D657 1112 116A 11AB -> D658 1112 116A 11AC -> D659 1112 116A 11AD -> D65A 1112 116A 11AE -> D65B 1112 116A 11AF -> D65C 1112 116A 11B0 -> D65D 1112 116A 11B1 -> D65E 1112 116A 11B2 -> D65F 1112 116A 11B3 -> D660 1112 116A 11B4 -> D661 1112 116A 11B5 -> D662 1112 116A 11B6 -> D663 1112 116A 11B7 -> D664 1112 116A 11B8 -> D665 1112 116A 11B9 -> D666 1112 116A 11BA -> D667 1112 116A 11BB -> D668 1112 116A 11BC -> D669 1112 116A 11BD -> D66A 1112 116A 11BE -> D66B 1112 116A 11BF -> D66C 1112 116A 11C0 -> D66D 1112 116A 11C1 -> D66E 1112 116A 11C2 -> D66F 1112 116B -> D670 1112 116B 11A8 -> D671 1112 116B 11A9 -> D672 1112 116B 11AA -> D673 1112 116B 11AB -> D674 1112 116B 11AC -> D675 1112 116B 11AD -> D676 1112 116B 11AE -> D677 1112 116B 11AF -> D678 1112 116B 11B0 -> D679 1112 116B 11B1 -> D67A 1112 116B 11B2 -> D67B 1112 116B 11B3 -> D67C 1112 116B 11B4 -> D67D 1112 116B 11B5 -> D67E 1112 116B 11B6 -> D67F 1112 116B 11B7 -> D680 1112 116B 11B8 -> D681 1112 116B 11B9 -> D682 1112 116B 11BA -> D683 1112 116B 11BB -> D684 1112 116B 11BC -> D685 1112 116B 11BD -> D686 1112 116B 11BE -> D687 1112 116B 11BF -> D688 1112 116B 11C0 -> D689 1112 116B 11C1 -> D68A 1112 116B 11C2 -> D68B 1112 116C -> D68C 1112 116C 11A8 -> D68D 1112 116C 11A9 -> D68E 1112 116C 11AA -> D68F 1112 116C 11AB -> D690 1112 116C 11AC -> D691 1112 116C 11AD -> D692 1112 116C 11AE -> D693 1112 116C 11AF -> D694 1112 116C 11B0 -> D695 1112 116C 11B1 -> D696 1112 116C 11B2 -> D697 1112 116C 11B3 -> D698 1112 116C 11B4 -> D699 1112 116C 11B5 -> D69A 1112 116C 11B6 -> D69B 1112 116C 11B7 -> D69C 1112 116C 11B8 -> D69D 1112 116C 11B9 -> D69E 1112 116C 11BA -> D69F 1112 116C 11BB -> D6A0 1112 116C 11BC -> D6A1 1112 116C 11BD -> D6A2 1112 116C 11BE -> D6A3 1112 116C 11BF -> D6A4 1112 116C 11C0 -> D6A5 1112 116C 11C1 -> D6A6 1112 116C 11C2 -> D6A7 1112 116D -> D6A8 1112 116D 11A8 -> D6A9 1112 116D 11A9 -> D6AA 1112 116D 11AA -> D6AB 1112 116D 11AB -> D6AC 1112 116D 11AC -> D6AD 1112 116D 11AD -> D6AE 1112 116D 11AE -> D6AF 1112 116D 11AF -> D6B0 1112 116D 11B0 -> D6B1 1112 116D 11B1 -> D6B2 1112 116D 11B2 -> D6B3 1112 116D 11B3 -> D6B4 1112 116D 11B4 -> D6B5 1112 116D 11B5 -> D6B6 1112 116D 11B6 -> D6B7 1112 116D 11B7 -> D6B8 1112 116D 11B8 -> D6B9 1112 116D 11B9 -> D6BA 1112 116D 11BA -> D6BB 1112 116D 11BB -> D6BC 1112 116D 11BC -> D6BD 1112 116D 11BD -> D6BE 1112 116D 11BE -> D6BF 1112 116D 11BF -> D6C0 1112 116D 11C0 -> D6C1 1112 116D 11C1 -> D6C2 1112 116D 11C2 -> D6C3 1112 116E -> D6C4 1112 116E 11A8 -> D6C5 1112 116E 11A9 -> D6C6 1112 116E 11AA -> D6C7 1112 116E 11AB -> D6C8 1112 116E 11AC -> D6C9 1112 116E 11AD -> D6CA 1112 116E 11AE -> D6CB 1112 116E 11AF -> D6CC 1112 116E 11B0 -> D6CD 1112 116E 11B1 -> D6CE 1112 116E 11B2 -> D6CF 1112 116E 11B3 -> D6D0 1112 116E 11B4 -> D6D1 1112 116E 11B5 -> D6D2 1112 116E 11B6 -> D6D3 1112 116E 11B7 -> D6D4 1112 116E 11B8 -> D6D5 1112 116E 11B9 -> D6D6 1112 116E 11BA -> D6D7 1112 116E 11BB -> D6D8 1112 116E 11BC -> D6D9 1112 116E 11BD -> D6DA 1112 116E 11BE -> D6DB 1112 116E 11BF -> D6DC 1112 116E 11C0 -> D6DD 1112 116E 11C1 -> D6DE 1112 116E 11C2 -> D6DF 1112 116F -> D6E0 1112 116F 11A8 -> D6E1 1112 116F 11A9 -> D6E2 1112 116F 11AA -> D6E3 1112 116F 11AB -> D6E4 1112 116F 11AC -> D6E5 1112 116F 11AD -> D6E6 1112 116F 11AE -> D6E7 1112 116F 11AF -> D6E8 1112 116F 11B0 -> D6E9 1112 116F 11B1 -> D6EA 1112 116F 11B2 -> D6EB 1112 116F 11B3 -> D6EC 1112 116F 11B4 -> D6ED 1112 116F 11B5 -> D6EE 1112 116F 11B6 -> D6EF 1112 116F 11B7 -> D6F0 1112 116F 11B8 -> D6F1 1112 116F 11B9 -> D6F2 1112 116F 11BA -> D6F3 1112 116F 11BB -> D6F4 1112 116F 11BC -> D6F5 1112 116F 11BD -> D6F6 1112 116F 11BE -> D6F7 1112 116F 11BF -> D6F8 1112 116F 11C0 -> D6F9 1112 116F 11C1 -> D6FA 1112 116F 11C2 -> D6FB 1112 1170 -> D6FC 1112 1170 11A8 -> D6FD 1112 1170 11A9 -> D6FE 1112 1170 11AA -> D6FF 1112 1170 11AB -> D700 1112 1170 11AC -> D701 1112 1170 11AD -> D702 1112 1170 11AE -> D703 1112 1170 11AF -> D704 1112 1170 11B0 -> D705 1112 1170 11B1 -> D706 1112 1170 11B2 -> D707 1112 1170 11B3 -> D708 1112 1170 11B4 -> D709 1112 1170 11B5 -> D70A 1112 1170 11B6 -> D70B 1112 1170 11B7 -> D70C 1112 1170 11B8 -> D70D 1112 1170 11B9 -> D70E 1112 1170 11BA -> D70F 1112 1170 11BB -> D710 1112 1170 11BC -> D711 1112 1170 11BD -> D712 1112 1170 11BE -> D713 1112 1170 11BF -> D714 1112 1170 11C0 -> D715 1112 1170 11C1 -> D716 1112 1170 11C2 -> D717 1112 1171 -> D718 1112 1171 11A8 -> D719 1112 1171 11A9 -> D71A 1112 1171 11AA -> D71B 1112 1171 11AB -> D71C 1112 1171 11AC -> D71D 1112 1171 11AD -> D71E 1112 1171 11AE -> D71F 1112 1171 11AF -> D720 1112 1171 11B0 -> D721 1112 1171 11B1 -> D722 1112 1171 11B2 -> D723 1112 1171 11B3 -> D724 1112 1171 11B4 -> D725 1112 1171 11B5 -> D726 1112 1171 11B6 -> D727 1112 1171 11B7 -> D728 1112 1171 11B8 -> D729 1112 1171 11B9 -> D72A 1112 1171 11BA -> D72B 1112 1171 11BB -> D72C 1112 1171 11BC -> D72D 1112 1171 11BD -> D72E 1112 1171 11BE -> D72F 1112 1171 11BF -> D730 1112 1171 11C0 -> D731 1112 1171 11C1 -> D732 1112 1171 11C2 -> D733 1112 1172 -> D734 1112 1172 11A8 -> D735 1112 1172 11A9 -> D736 1112 1172 11AA -> D737 1112 1172 11AB -> D738 1112 1172 11AC -> D739 1112 1172 11AD -> D73A 1112 1172 11AE -> D73B 1112 1172 11AF -> D73C 1112 1172 11B0 -> D73D 1112 1172 11B1 -> D73E 1112 1172 11B2 -> D73F 1112 1172 11B3 -> D740 1112 1172 11B4 -> D741 1112 1172 11B5 -> D742 1112 1172 11B6 -> D743 1112 1172 11B7 -> D744 1112 1172 11B8 -> D745 1112 1172 11B9 -> D746 1112 1172 11BA -> D747 1112 1172 11BB -> D748 1112 1172 11BC -> D749 1112 1172 11BD -> D74A 1112 1172 11BE -> D74B 1112 1172 11BF -> D74C 1112 1172 11C0 -> D74D 1112 1172 11C1 -> D74E 1112 1172 11C2 -> D74F 1112 1173 -> D750 1112 1173 11A8 -> D751 1112 1173 11A9 -> D752 1112 1173 11AA -> D753 1112 1173 11AB -> D754 1112 1173 11AC -> D755 1112 1173 11AD -> D756 1112 1173 11AE -> D757 1112 1173 11AF -> D758 1112 1173 11B0 -> D759 1112 1173 11B1 -> D75A 1112 1173 11B2 -> D75B 1112 1173 11B3 -> D75C 1112 1173 11B4 -> D75D 1112 1173 11B5 -> D75E 1112 1173 11B6 -> D75F 1112 1173 11B7 -> D760 1112 1173 11B8 -> D761 1112 1173 11B9 -> D762 1112 1173 11BA -> D763 1112 1173 11BB -> D764 1112 1173 11BC -> D765 1112 1173 11BD -> D766 1112 1173 11BE -> D767 1112 1173 11BF -> D768 1112 1173 11C0 -> D769 1112 1173 11C1 -> D76A 1112 1173 11C2 -> D76B 1112 1174 -> D76C 1112 1174 11A8 -> D76D 1112 1174 11A9 -> D76E 1112 1174 11AA -> D76F 1112 1174 11AB -> D770 1112 1174 11AC -> D771 1112 1174 11AD -> D772 1112 1174 11AE -> D773 1112 1174 11AF -> D774 1112 1174 11B0 -> D775 1112 1174 11B1 -> D776 1112 1174 11B2 -> D777 1112 1174 11B3 -> D778 1112 1174 11B4 -> D779 1112 1174 11B5 -> D77A 1112 1174 11B6 -> D77B 1112 1174 11B7 -> D77C 1112 1174 11B8 -> D77D 1112 1174 11B9 -> D77E 1112 1174 11BA -> D77F 1112 1174 11BB -> D780 1112 1174 11BC -> D781 1112 1174 11BD -> D782 1112 1174 11BE -> D783 1112 1174 11BF -> D784 1112 1174 11C0 -> D785 1112 1174 11C1 -> D786 1112 1174 11C2 -> D787 1112 1175 -> D788 1112 1175 11A8 -> D789 1112 1175 11A9 -> D78A 1112 1175 11AA -> D78B 1112 1175 11AB -> D78C 1112 1175 11AC -> D78D 1112 1175 11AD -> D78E 1112 1175 11AE -> D78F 1112 1175 11AF -> D790 1112 1175 11B0 -> D791 1112 1175 11B1 -> D792 1112 1175 11B2 -> D793 1112 1175 11B3 -> D794 1112 1175 11B4 -> D795 1112 1175 11B5 -> D796 1112 1175 11B6 -> D797 1112 1175 11B7 -> D798 1112 1175 11B8 -> D799 1112 1175 11B9 -> D79A 1112 1175 11BA -> D79B 1112 1175 11BB -> D79C 1112 1175 11BC -> D79D 1112 1175 11BD -> D79E 1112 1175 11BE -> D79F 1112 1175 11BF -> D7A0 1112 1175 11C0 -> D7A1 1112 1175 11C1 -> D7A2 1112 1175 11C2 -> D7A3 #END ./mytool/mys/Ukrainian.mys0000644000175000017500000002134207574146574015670 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME= Ukrainian.kmap COMM= Ukrainian input table COMM= Created with Yudit for Yudit COMM= By 2002/02/13 Dmytro Kovalov COMM= Follows DSTU 3470-90 „Державний Стандарт України“ on keyboard layout COMM= othewise known as "typewriter" setting. COMM= COMM= Based on Byelorussian map by Alexander Mikhailian COMM= Created with emacs and yudit for yudit. COMM= Additions and improvements are welcome COMM= 0. Quotation marks and special symbols popular with Cyrillic COMM= Old slavonic, Russian and COMM= Byelorussian removed from map. --DK COMM= Left only special quotation marks. # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Section1 ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 '' -> 0454 # є = CYRILLIC SMALL LETTER UKRAINIAN IE ', -> 0431 # б = CYRILLIC SMALL LETTER BE '" -> 0404 # Є = CYRILLIC CAPITAL LETTER UKRAINIAN IE '. -> 044E # ю = CYRILLIC SMALL LETTER YU ': -> 0416 # Ж = CYRILLIC CAPITAL LETTER ZHE '; -> 0436 # ж = CYRILLIC SMALL LETTER ZHE '< -> 0411 # Б = CYRILLIC CAPITAL LETTER BE '> -> 042E # Ю = CYRILLIC CAPITAL LETTER YU 'A -> 0424 # Ф = CYRILLIC CAPITAL LETTER EF 'B -> 0406 # І = CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I 'C -> 0421 # С = CYRILLIC CAPITAL LETTER ES 'D -> 0412 # В = CYRILLIC CAPITAL LETTER VE 'E -> 0423 # У = CYRILLIC CAPITAL LETTER U 'F -> 0410 # А = CYRILLIC CAPITAL LETTER A 'G -> 041F # П = CYRILLIC CAPITAL LETTER PE 'H -> 0420 # Р = CYRILLIC CAPITAL LETTER ER 'I -> 0428 # Ш = CYRILLIC CAPITAL LETTER SHA '? -> 0407 # Ї = CYRILLIC CAPITAL LETTER YI 'J -> 041E # О = CYRILLIC CAPITAL LETTER O 'K -> 041B # Л = CYRILLIC CAPITAL LETTER EL 'L -> 0414 # Д = CYRILLIC CAPITAL LETTER DE 'M -> 042C # Ь = CYRILLIC CAPITAL LETTER SOFT SIGN 'N -> 0422 # Т = CYRILLIC CAPITAL LETTER TE 'O -> 0429 # Щ = CYRILLIC CAPITAL LETTER SHCHA 'P -> 0417 # З = CYRILLIC CAPITAL LETTER ZE 'Q -> 0419 # Й = CYRILLIC CAPITAL LETTER SHORT I 'R -> 041A # К = CYRILLIC CAPITAL LETTER KA 'S -> 0418 # И = CYRILLIC CAPITAL LETTER I 'T -> 0415 # Е = CYRILLIC CAPITAL LETTER IE 'U -> 0413 # Г = CYRILLIC CAPITAL LETTER GHE 'V -> 041C # М = CYRILLIC CAPITAL LETTER EM 'W -> 0426 # Ц = CYRILLIC CAPITAL LETTER TSE 'X -> 0427 # Ч = CYRILLIC CAPITAL LETTER CHE 'Y -> 041D # Н = CYRILLIC CAPITAL LETTER EN 'Z -> 042F # Я = CYRILLIC CAPITAL LETTER YA '[ -> 0445 # х = CYRILLIC SMALL LETTER HA '} -> 0490 # Ґ = CYRILLIC CAPITAL LETTER GHE WITH UPTURN '] -> 0491 # ґ = CYRILLIC SMALL LETTER GHE WITH UPTURN 'a -> 0444 # ф = CYRILLIC SMALL LETTER EF 'b -> 0456 # і = CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I 'c -> 0441 # с = CYRILLIC SMALL LETTER ES 'd -> 0432 # в = CYRILLIC SMALL LETTER VE 'e -> 0443 # у = CYRILLIC SMALL LETTER U 'f -> 0430 # а = CYRILLIC SMALL LETTER A 'g -> 043F # п = CYRILLIC SMALL LETTER PE 'h -> 0440 # р = CYRILLIC SMALL LETTER ER 'i -> 0448 # ш = CYRILLIC SMALL LETTER SHA '/ -> 0457 # ї = CYRILLIC SMALL LETTER YI 'j -> 043E # о = CYRILLIC SMALL LETTER O 'k -> 043B # л = CYRILLIC SMALL LETTER EL 'l -> 0434 # д = CYRILLIC SMALL LETTER DE 'm -> 044C # ь = CYRILLIC SMALL LETTER SOFT SIGN 'n -> 0442 # т = CYRILLIC SMALL LETTER TE 'o -> 0449 # щ = CYRILLIC SMALL LETTER SHCHA 'p -> 0437 # з = CYRILLIC SMALL LETTER ZE 'q -> 0439 # й = CYRILLIC SMALL LETTER SHORT I 'r -> 043A # к = CYRILLIC SMALL LETTER KA 's -> 0438 # и = CYRILLIC SMALL LETTER I 't -> 0435 # е = CYRILLIC SMALL LETTER IE 'u -> 0433 # г = CYRILLIC SMALL LETTER GHE 'v -> 043C # м = CYRILLIC SMALL LETTER EM 'w -> 0446 # ц = CYRILLIC SMALL LETTER TSE 'x -> 0447 # ч = CYRILLIC SMALL LETTER CHE 'y -> 043D # н = CYRILLIC SMALL LETTER EN 'z -> 044F # я = CYRILLIC SMALL LETTER YA 7B -> 0425 # Х = CYRILLIC CAPITAL LETTER HA # ---------------------------------------------- # TTF font doesn't have this one #'` -> 02BC # ʼ = MODIFIER LETTER APOSTROPHE '` -> 0027 # APOSTROPHE # ---------------------------------------- # Punctuation marks # according to DSTU typed without Shift # ---------------------------------------- '1 -> 0021 # ! = EXCLAMATION MARK '2 -> 002D # - = HIPHEN-MINUS '3 -> 002F # / = SOLIDUS (SLASH) '4 -> 003A # : = COLON '5 -> 003B # ; = SEMICOLON '6 -> 002C # , = COMMA '7 -> 002E # . = FULL STOP '8 -> 005F # _ = LOW LINE '9 -> 003F # ? = QUESTION MARK '0 -> 0025 # % = PERCENT SIGN '\ -> 0028 # ( = LEFT PARENTHESIS '= -> 201E # „ = DOUBLE LOW-9 QUOTATION MARK = '\ -> 005C # \ = REVERSE SOLIDUS '_ -> 002B # + = PLUS SIGN '+ -> 201D # ” = RIGHT DOUBLE QUOTATION MARK '| -> 0029 # ) = RIGHT PARENTHESIS 7C -> 002F # / = SOLIDUS '~ -> 0022 # " = QUOTATION MARK '< '< -> 00AB # « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = '> '> -> 00BB # » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = '- '- -> 2015 # ― = HORIZONTAL BAR = QUOTATION DASH '- '` -> 2011 # ‑ = NON BREAKING HYPHEN # ------------------------------------------------------------ # Digits - with SHIFT # ------------------------------------------------------------ ') -> 0030 # 0 = DIGIT ZERO '! -> 0031 # 1 = DIGIT ONE '@ -> 0032 # 2 = DIGIT TWO '# -> 0033 # 3 = DIGIT THREE '$ -> 0034 # 4 = DIGIT FOUR '% -> 0035 # 5 = DIGIT FIVE '^ -> 0036 # 6 = DIGIT SIX '& -> 0037 # 7 = DIGIT SEVEN '* -> 0038 # 8 = DIGIT EIGHT '( -> 0039 # 9 = DIGIT NINE # ------------------------------ # SYMBOLS # ------------------------------ ': '( -> 2639 # ? = WHITE FROWNING FACE ': ') -> 263A # ? = WHITE SMILING FACE 'C ') -> 00A9 # © = COPYRIGHT SIGN 'C '- -> 00A4 # ¤ = CURRENCY SIGN 'E '- -> 20AC # € = EURO SIGN 'L '- -> 00A3 # £ = POUND SIGN 'x ') -> 2022 # • = BULLET 'N 'o -> 2116 # № = NUMERO SIGN '* '* -> 002A # * = ASTERISK '? '! -> 2048 # ⁈ = QUESTION EXCLAMATION MARK '$ '$ -> 00A7 # § = SECTION SIGN #--------------- NEW SECTION ------------- SECTION=Section1 ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0021 -> '! 0022 -> '@ 0025 -> '% 0027 -> 7D 0027 -> '] 0028 -> '( 0029 -> ') 002A -> '* 002B -> '+ 002C -> '? 002D -> '- 002E -> '/ 002F -> 7C 0030 -> '0 0031 -> '1 0032 -> '2 0033 -> '3 0034 -> '4 0035 -> '5 0036 -> '6 0037 -> '7 0038 -> '8 0039 -> '9 003A -> '^ 003B -> '$ 003D -> '0 003F -> '& 005C -> '\ 005F -> '_ 00A3 -> 'L '- 00A4 -> 'C '- 00A9 -> 'C ') 00AB -> '< '< 00BB -> '> '> 0401 -> 7E 0402 -> 'D '- 0403 -> 'G '' 0404 -> 'E '> 0405 -> 'Z '> 0406 -> 'B 0407 -> 'I ': 0408 -> 'J '< 0409 -> 'L '> 040A -> 'N '> 040B -> 'C '' 040C -> 'K '' 040E -> 'O 040F -> 'D '> 0410 -> 'F 0411 -> '< 0412 -> 'D 0413 -> 'U 0414 -> 'L 0415 -> 'T 0416 -> ': 0417 -> 'P 0418 -> 'I '/ 0419 -> 'Q 041A -> 'R 041B -> 'K 041C -> 'V 041D -> 'Y 041E -> 'J 041F -> 'G 0420 -> 'H 0421 -> 'C 0422 -> 'N 0423 -> 'E 0424 -> 'A 0425 -> 7B 0426 -> 'W 0427 -> 'X 0428 -> 'I 042B -> 'S 042C -> 'M 042D -> '" 042E -> '> 042F -> 'Z 0430 -> 'f 0431 -> ', 0432 -> 'd 0433 -> 'u 0434 -> 'l 0435 -> 't 0436 -> '; 0437 -> 'p 0438 -> 'i '/ 0439 -> 'q 043A -> 'r 043B -> 'k 043C -> 'v 043D -> 'y 043E -> 'j 043F -> 'g 0440 -> 'h 0441 -> 'c 0442 -> 'n 0443 -> 'e 0444 -> 'a 0445 -> '[ 0446 -> 'w 0447 -> 'x 0448 -> 'i 044B -> 's 044C -> 'm 044D -> '' 044E -> '. 044F -> 7A 0451 -> '` 0452 -> 'd '- 0453 -> 'g '' 0454 -> 'e '> 0455 -> 7A '> 0456 -> 'b 0457 -> 'i ': 0458 -> 'j '< 0459 -> 'l '> 045B -> 'c '' 045C -> 'k '' 045E -> 'o 045F -> 'd '> 0462 -> 'E '< 0463 -> 'e '< 046A -> 'A '< 046B -> 'a '< 0472 -> 'F '` 0473 -> 'f '` 0474 -> 'Y '` 0475 -> 'y '` 0490 -> 'G '` 0491 -> 'g '` 201C -> '` '` 201E -> ', ', 2022 -> 'x ') 20AC -> 'E '- 2116 -> 23 2639 -> ': '( 263A -> ': ') ./mytool/mys/gb-18030.mys0000644000175000017500000054643307574146574015025 0ustar henrichhenrichNAME=gb18030.my #------------------------------------------------------ COMM=Map sparse Unicode to GB18030 (2000-NOV) and back COMM=It only has the synchronization points where COMM=output could be calculated by linear increment. COMM=Gaspar Sinai Tokyo 2002-03-26 COMM= COMM=Here is the algorithm to get GB 18030 codes from this COMM=garbage: COMM=If input unicode characters is less than 0x80 emit that code as single byte COMM=Search for closest lowest key that matches the unicode character: COMM= COMM=1) BMP COMM= 1a If value is greater than 0xffff output will be two bytes: COMM= value + (unicode_vle - closest_key) COMM= As always higher byte is emitted first. COMM= 1b If value is less than 0x8000 output will be four bytes: COMM= num = linear(value) + (unicode_vle - closest_key); COMM= num = nonlinear(num); COMM= COMM= function nonlinear (num) COMM= k3 = (num % 10)+0x30; num = num / 10; COMM= k2 = (num % 126)+0x81; num = num / 126; COMM= k1 = (num % 10)+0x30; num = num / 10; COMM= k0 = (num % 126)+0x81; COMM= return ((k0 << 24) + (k1 << 16) + (k2<<8) + k3); COMM= COMM= function linear(value): COMM= k0 = (value >> 24) & 0xff; // 0x81..0xfe COMM= k1 = (value >> 16) & 0xff; // 0x30..0x39 COMM= k2 = (value >> 8) & 0xff; // 0x81..0xfe COMM= k3 = (value >> 0) & 0xff; // 0x30..0x39 COMM= num = (k0-0x81); num = num * 10; COMM= num += (k1-0x30); num = num * 126; COMM= num += (k2-0x81); num = num * 10; COMM= num += (k3-0x30); COMM= return (num); COMM= COMM=2) NON-BMP (unicode_value between 0x10000..0x10FFFF) COMM= num = unicode_value - 0x10000 + 0x2E248; COMM= nonlinear (num); COMM= - 0x10000 should producce 0x90308130 COMM= - 0x10FFFF should be 0xE3329A35 #------------------------------------------------------ TYPE=0 SECTION=encode ENCODE=1 # # key 1 for 16 bit (16-bitunicode) # value 2 for 32 bit (4-byte-gb) values # KEY_WIDTH=1 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # 0000 -> 00000000 0080 -> 81308130 00A4 -> 0000A1E8 00A5 -> 81308436 00A7 -> 0000A1EC 00A8 -> 0000A1A7 00A9 -> 81308438 00B0 -> 0000A1E3 00B1 -> 0000A1C0 00B2 -> 81308535 00B7 -> 0000A1A4 00B8 -> 81308630 00D7 -> 0000A1C1 00D8 -> 81308931 00E0 -> 0000A8A4 00E1 -> 0000A8A2 00E2 -> 81308939 00E8 -> 0000A8A8 00E9 -> 0000A8A6 00EA -> 0000A8BA 00EB -> 81308A35 00EC -> 0000A8AC 00ED -> 0000A8AA 00EE -> 81308A36 00F2 -> 0000A8B0 00F3 -> 0000A8AE 00F4 -> 81308B30 00F7 -> 0000A1C2 00F8 -> 81308B33 00F9 -> 0000A8B4 00FA -> 0000A8B2 00FB -> 81308B34 00FC -> 0000A8B9 00FD -> 81308B35 0101 -> 0000A8A1 0102 -> 81308B39 0113 -> 0000A8A5 0114 -> 81308D36 011B -> 0000A8A7 011C -> 81308E33 012B -> 0000A8A9 012C -> 81308F38 0144 -> 0000A8BD 0145 -> 81309232 0148 -> 0000A8BE 0149 -> 81309235 014D -> 0000A8AD 014E -> 81309239 016B -> 0000A8B1 016C -> 81309538 01CE -> 0000A8A3 01CF -> 81309F36 01D0 -> 0000A8AB 01D1 -> 81309F37 01D2 -> 0000A8AF 01D3 -> 81309F38 01D4 -> 0000A8B3 01D5 -> 81309F39 01D6 -> 0000A8B5 01D7 -> 8130A030 01D8 -> 0000A8B6 01D9 -> 8130A031 01DA -> 0000A8B7 01DB -> 8130A032 01DC -> 0000A8B8 01DD -> 8130A033 01F9 -> 0000A8BF 01FA -> 8130A331 0251 -> 0000A8BB 0252 -> 8130AB38 0261 -> 0000A8C0 0262 -> 8130AD33 02C7 -> 0000A1A6 02C8 -> 8130B734 02C9 -> 0000A1A5 02CA -> 0000A840 02CC -> 8130B735 02D9 -> 0000A842 02DA -> 8130B838 0391 -> 0000A6A1 03A2 -> 8130CB31 03A3 -> 0000A6B2 03AA -> 8130CB32 03B1 -> 0000A6C1 03C2 -> 8130CB39 03C3 -> 0000A6D2 03CA -> 8130CC30 0401 -> 0000A7A7 0402 -> 8130D135 0410 -> 0000A7A1 0416 -> 0000A7A8 0430 -> 0000A7D1 0436 -> 0000A7D8 0450 -> 8130D239 0451 -> 0000A7D7 0452 -> 8130D330 2010 -> 0000A95C 2011 -> 8136A532 2013 -> 0000A843 2014 -> 0000A1AA 2015 -> 0000A844 2016 -> 0000A1AC 2017 -> 8136A534 2018 -> 0000A1AE 201A -> 8136A535 201C -> 0000A1B0 201E -> 8136A537 2025 -> 0000A845 2026 -> 0000A1AD 2027 -> 8136A634 2030 -> 0000A1EB 2031 -> 8136A733 2032 -> 0000A1E4 2034 -> 8136A734 2035 -> 0000A846 2036 -> 8136A735 203B -> 0000A1F9 203C -> 8136A830 20AC -> 0000A2E3 20AD -> 8136B332 2103 -> 0000A1E6 2104 -> 8136BB38 2105 -> 0000A847 2106 -> 8136BB39 2109 -> 0000A848 210A -> 8136BC32 2116 -> 0000A1ED 2117 -> 8136BD34 2121 -> 0000A959 2122 -> 8136BE34 2160 -> 0000A2F1 216C -> 8136C436 2170 -> 0000A2A1 217A -> 8136C530 2190 -> 0000A1FB 2192 -> 0000A1FA 2193 -> 0000A1FD 2194 -> 8136C732 2196 -> 0000A849 219A -> 8136C734 2208 -> 0000A1CA 2209 -> 8136D234 220F -> 0000A1C7 2210 -> 8136D330 2211 -> 0000A1C6 2212 -> 8136D331 2215 -> 0000A84D 2216 -> 8136D334 221A -> 0000A1CC 221B -> 8136D338 221D -> 0000A1D8 221E -> 0000A1DE 221F -> 0000A84E 2220 -> 0000A1CF 2221 -> 8136D430 2223 -> 0000A84F 2224 -> 8136D432 2225 -> 0000A1CE 2226 -> 8136D433 2227 -> 0000A1C4 2229 -> 0000A1C9 222A -> 0000A1C8 222B -> 0000A1D2 222C -> 8136D434 222E -> 0000A1D3 222F -> 8136D436 2234 -> 0000A1E0 2235 -> 0000A1DF 2236 -> 0000A1C3 2237 -> 0000A1CB 2238 -> 8136D531 223D -> 0000A1D7 223E -> 8136D536 2248 -> 0000A1D6 2249 -> 8136D636 224C -> 0000A1D5 224D -> 8136D639 2252 -> 0000A850 2253 -> 8136D734 2260 -> 0000A1D9 2261 -> 0000A1D4 2262 -> 8136D837 2264 -> 0000A1DC 2266 -> 0000A851 2268 -> 8136D839 226E -> 0000A1DA 2270 -> 8136D935 2295 -> 0000A892 2296 -> 8136DD32 2299 -> 0000A1D1 229A -> 8136DD35 22A5 -> 0000A1CD 22A6 -> 8136DE36 22BF -> 0000A853 22C0 -> 8136E131 2312 -> 0000A1D0 2313 -> 8136E933 2460 -> 0000A2D9 246A -> 81378C36 2474 -> 0000A2C5 2488 -> 0000A2B1 249C -> 81378D36 2500 -> 0000A9A4 254C -> 81379736 2550 -> 0000A854 2574 -> 81379830 2581 -> 0000A878 2588 -> 0000A880 2590 -> 81379933 2593 -> 0000A888 2596 -> 81379936 25A0 -> 0000A1F6 25A1 -> 0000A1F5 25A2 -> 81379A36 25B2 -> 0000A1F8 25B3 -> 0000A1F7 25B4 -> 81379C32 25BC -> 0000A88B 25BE -> 81379D30 25C6 -> 0000A1F4 25C7 -> 0000A1F3 25C8 -> 81379D38 25CB -> 0000A1F0 25CC -> 81379E31 25CE -> 0000A1F2 25CF -> 0000A1F1 25D0 -> 81379E33 25E2 -> 0000A88D 25E6 -> 8137A031 2605 -> 0000A1EF 2606 -> 0000A1EE 2607 -> 8137A332 2609 -> 0000A891 260A -> 8137A334 2640 -> 0000A1E2 2641 -> 8137A838 2642 -> 0000A1E1 2643 -> 8137A839 2E81 -> 0000FE50 2E82 -> 8138FD39 2E84 -> 0000FE54 2E85 -> 8138FE31 2E88 -> 0000FE57 2E89 -> 8138FE34 2E8B -> 0000FE58 2E8C -> 0000FE5D 2E8D -> 8138FE36 2E97 -> 0000FE5E 2E98 -> 81398136 2EA7 -> 0000FE6B 2EA8 -> 81398331 2EAA -> 0000FE6E 2EAB -> 81398333 2EAE -> 0000FE71 2EAF -> 81398336 2EB3 -> 0000FE73 2EB4 -> 81398430 2EB6 -> 0000FE74 2EB8 -> 81398432 2EBB -> 0000FE79 2EBC -> 81398435 2ECA -> 0000FE84 2ECB -> 81398539 2FF0 -> 0000A98A 2FFC -> 8139A332 3000 -> 0000A1A1 3003 -> 0000A1A8 3004 -> 8139A336 3005 -> 0000A1A9 3006 -> 0000A965 3007 -> 0000A996 3008 -> 0000A1B4 3010 -> 0000A1BE 3012 -> 0000A893 3013 -> 0000A1FE 3014 -> 0000A1B2 3016 -> 0000A1BC 3018 -> 8139A337 301D -> 0000A894 301F -> 8139A432 3021 -> 0000A940 302A -> 8139A434 303E -> 0000A989 303F -> 8139A634 3041 -> 0000A4A1 3094 -> 8139A636 309B -> 0000A961 309D -> 0000A966 309F -> 8139A733 30A1 -> 0000A5A1 30F7 -> 8139A735 30FC -> 0000A960 30FD -> 0000A963 30FF -> 8139A830 3105 -> 0000A8C5 312A -> 8139A836 3220 -> 0000A2E5 322A -> 8139C132 3231 -> 0000A95A 3232 -> 8139C139 32A3 -> 0000A949 32A4 -> 8139CD32 338E -> 0000A94A 3390 -> 8139E436 339C -> 0000A94C 339F -> 8139E538 33A1 -> 0000A94F 33A2 -> 8139E630 33C4 -> 0000A950 33C5 -> 8139E934 33CE -> 0000A951 33CF -> 8139EA33 33D1 -> 0000A952 33D3 -> 8139EA35 33D5 -> 0000A954 33D6 -> 8139EA37 3447 -> 0000FE56 3448 -> 8139F630 3473 -> 0000FE55 3474 -> 8139FA33 359E -> 0000FE5A 359F -> 82309A31 360E -> 0000FE5C 360F -> 8230A532 361A -> 0000FE5B 361B -> 8230A633 3918 -> 0000FE60 3919 -> 8230F238 396E -> 0000FE5F 396F -> 8230FB33 39CF -> 0000FE62 39D0 -> 0000FE65 39D1 -> 82318639 39DF -> 0000FE63 39E0 -> 82318833 3A73 -> 0000FE64 3A74 -> 82319730 3B4E -> 0000FE68 3B4F -> 8231AC38 3C6E -> 0000FE69 3C6F -> 8231C935 3CE0 -> 0000FE6A 3CE1 -> 8231D438 4056 -> 0000FE6F 4057 -> 8232AF33 415F -> 0000FE70 4160 -> 8232C937 4337 -> 0000FE72 4338 -> 8232F838 43AC -> 0000FE78 43AD -> 82338634 43B1 -> 0000FE77 43B2 -> 82338638 43DD -> 0000FE7A 43DE -> 82338B31 44D6 -> 0000FE7B 44D7 -> 8233A339 464C -> 0000FE7D 464D -> 8233C932 4661 -> 0000FE7C 4662 -> 8233CB32 4723 -> 0000FE80 4724 -> 8233DE35 4729 -> 0000FE81 472A -> 8233DF30 477C -> 0000FE82 477D -> 8233E732 478D -> 0000FE83 478E -> 8233E838 4947 -> 0000FE85 4948 -> 82349639 497A -> 0000FE86 497B -> 82349B39 497D -> 0000FE87 497E -> 82349C31 4982 -> 0000FE88 4984 -> 82349C35 4985 -> 0000FE8A 4987 -> 82349C36 499B -> 0000FE8D 499C -> 82349E36 499F -> 0000FE8C 49A0 -> 82349E39 49B6 -> 0000FE8F 49B7 -> 0000FE8E 49B8 -> 8234A131 4C77 -> 0000FE96 4C78 -> 8234E734 4C9F -> 0000FE93 4CA2 -> 0000FE97 4CA3 -> 0000FE92 4CA4 -> 8234EB33 4D13 -> 0000FE98 4D1A -> 8234F634 4DAE -> 0000FE9F 4DAF -> 82358732 4E00 -> 0000D2BB 4E01 -> 0000B6A1 4E02 -> 00008140 4E03 -> 0000C6DF 4E04 -> 00008141 4E07 -> 0000CDF2 4E08 -> 0000D5C9 4E09 -> 0000C8FD 4E0A -> 0000C9CF 4E0B -> 0000CFC2 4E0C -> 0000D8A2 4E0D -> 0000B2BB 4E0E -> 0000D3EB 4E0F -> 00008144 4E10 -> 0000D8A4 4E11 -> 0000B3F3 4E12 -> 00008145 4E13 -> 0000D7A8 4E14 -> 0000C7D2 4E15 -> 0000D8A7 4E16 -> 0000CAC0 4E17 -> 00008146 4E18 -> 0000C7F0 4E19 -> 0000B1FB 4E1A -> 0000D2B5 4E1B -> 0000B4D4 4E1C -> 0000B6AB 4E1D -> 0000CBBF 4E1E -> 0000D8A9 4E1F -> 00008147 4E22 -> 0000B6AA 4E23 -> 0000814A 4E24 -> 0000C1BD 4E25 -> 0000D1CF 4E26 -> 0000814B 4E27 -> 0000C9A5 4E28 -> 0000D8AD 4E29 -> 0000814C 4E2A -> 0000B8F6 4E2B -> 0000D1BE 4E2C -> 0000E3DC 4E2D -> 0000D6D0 4E2E -> 0000814D 4E30 -> 0000B7E1 4E31 -> 0000814F 4E32 -> 0000B4AE 4E33 -> 00008150 4E34 -> 0000C1D9 4E35 -> 00008151 4E36 -> 0000D8BC 4E37 -> 00008152 4E38 -> 0000CDE8 4E39 -> 0000B5A4 4E3A -> 0000CEAA 4E3B -> 0000D6F7 4E3C -> 00008153 4E3D -> 0000C0F6 4E3E -> 0000BED9 4E3F -> 0000D8AF 4E40 -> 00008154 4E43 -> 0000C4CB 4E44 -> 00008157 4E45 -> 0000BEC3 4E46 -> 00008158 4E47 -> 0000D8B1 4E48 -> 0000C3B4 4E49 -> 0000D2E5 4E4A -> 00008159 4E4B -> 0000D6AE 4E4C -> 0000CEDA 4E4D -> 0000D5A7 4E4E -> 0000BAF5 4E4F -> 0000B7A6 4E50 -> 0000C0D6 4E51 -> 0000815A 4E52 -> 0000C6B9 4E53 -> 0000C5D2 4E54 -> 0000C7C7 4E55 -> 0000815B 4E56 -> 0000B9D4 4E57 -> 0000815C 4E58 -> 0000B3CB 4E59 -> 0000D2D2 4E5A -> 0000815D 4E5C -> 0000D8BF 4E5D -> 0000BEC5 4E5E -> 0000C6F2 4E5F -> 0000D2B2 4E60 -> 0000CFB0 4E61 -> 0000CFE7 4E62 -> 0000815F 4E66 -> 0000CAE9 4E67 -> 00008163 4E69 -> 0000D8C0 4E6A -> 00008165 4E70 -> 0000C2F2 4E71 -> 0000C2D2 4E72 -> 0000816B 4E73 -> 0000C8E9 4E74 -> 0000816C 4E7E -> 0000C7AC 4E7F -> 00008176 4E86 -> 0000C1CB 4E87 -> 0000817D 4E88 -> 0000D3E8 4E89 -> 0000D5F9 4E8A -> 0000817E 4E8B -> 0000CAC2 4E8C -> 0000B6FE 4E8D -> 0000D8A1 4E8E -> 0000D3DA 4E8F -> 0000BFF7 4E90 -> 00008180 4E91 -> 0000D4C6 4E92 -> 0000BBA5 4E93 -> 0000D8C1 4E94 -> 0000CEE5 4E95 -> 0000BEAE 4E96 -> 00008181 4E98 -> 0000D8A8 4E99 -> 00008183 4E9A -> 0000D1C7 4E9B -> 0000D0A9 4E9C -> 00008184 4E9F -> 0000D8BD 4EA0 -> 0000D9EF 4EA1 -> 0000CDF6 4EA2 -> 0000BFBA 4EA3 -> 00008187 4EA4 -> 0000BDBB 4EA5 -> 0000BAA5 4EA6 -> 0000D2E0 4EA7 -> 0000B2FA 4EA8 -> 0000BAE0 4EA9 -> 0000C4B6 4EAA -> 00008188 4EAB -> 0000CFED 4EAC -> 0000BEA9 4EAD -> 0000CDA4 4EAE -> 0000C1C1 4EAF -> 00008189 4EB2 -> 0000C7D7 4EB3 -> 0000D9F1 4EB4 -> 0000818C 4EB5 -> 0000D9F4 4EB6 -> 0000818D 4EBA -> 0000C8CB 4EBB -> 0000D8E9 4EBC -> 00008191 4EBF -> 0000D2DA 4EC0 -> 0000CAB2 4EC1 -> 0000C8CA 4EC2 -> 0000D8EC 4EC3 -> 0000D8EA 4EC4 -> 0000D8C6 4EC5 -> 0000BDF6 4EC6 -> 0000C6CD 4EC7 -> 0000B3F0 4EC8 -> 00008194 4EC9 -> 0000D8EB 4ECA -> 0000BDF1 4ECB -> 0000BDE9 4ECC -> 00008195 4ECD -> 0000C8D4 4ECE -> 0000B4D3 4ECF -> 00008196 4ED1 -> 0000C2D8 4ED2 -> 00008198 4ED3 -> 0000B2D6 4ED4 -> 0000D7D0 4ED5 -> 0000CACB 4ED6 -> 0000CBFB 4ED7 -> 0000D5CC 4ED8 -> 0000B8B6 4ED9 -> 0000CFC9 4EDA -> 00008199 4EDD -> 0000D9DA 4EDE -> 0000D8F0 4EDF -> 0000C7AA 4EE0 -> 0000819C 4EE1 -> 0000D8EE 4EE2 -> 0000819D 4EE3 -> 0000B4FA 4EE4 -> 0000C1EE 4EE5 -> 0000D2D4 4EE6 -> 0000819E 4EE8 -> 0000D8ED 4EE9 -> 000081A0 4EEA -> 0000D2C7 4EEB -> 0000D8EF 4EEC -> 0000C3C7 4EED -> 000081A1 4EF0 -> 0000D1F6 4EF1 -> 000081A4 4EF2 -> 0000D6D9 4EF3 -> 0000D8F2 4EF4 -> 000081A5 4EF5 -> 0000D8F5 4EF6 -> 0000BCFE 4EF7 -> 0000BCDB 4EF8 -> 000081A6 4EFB -> 0000C8CE 4EFC -> 000081A9 4EFD -> 0000B7DD 4EFE -> 000081AA 4EFF -> 0000B7C2 4F00 -> 000081AB 4F01 -> 0000C6F3 4F02 -> 000081AC 4F09 -> 0000D8F8 4F0A -> 0000D2C1 4F0B -> 000081B3 4F0D -> 0000CEE9 4F0E -> 0000BCBF 4F0F -> 0000B7FC 4F10 -> 0000B7A5 4F11 -> 0000D0DD 4F12 -> 000081B5 4F17 -> 0000D6DA 4F18 -> 0000D3C5 4F19 -> 0000BBEF 4F1A -> 0000BBE1 4F1B -> 0000D8F1 4F1C -> 000081BA 4F1E -> 0000C9A1 4F1F -> 0000CEB0 4F20 -> 0000B4AB 4F21 -> 000081BC 4F22 -> 0000D8F3 4F23 -> 000081BD 4F24 -> 0000C9CB 4F25 -> 0000D8F6 4F26 -> 0000C2D7 4F27 -> 0000D8F7 4F28 -> 000081BE 4F2A -> 0000CEB1 4F2B -> 0000D8F9 4F2C -> 000081C0 4F2F -> 0000B2AE 4F30 -> 0000B9C0 4F31 -> 000081C3 4F32 -> 0000D9A3 4F33 -> 000081C4 4F34 -> 0000B0E9 4F35 -> 000081C5 4F36 -> 0000C1E6 4F37 -> 000081C6 4F38 -> 0000C9EC 4F39 -> 000081C7 4F3A -> 0000CBC5 4F3B -> 000081C8 4F3C -> 0000CBC6 4F3D -> 0000D9A4 4F3E -> 000081C9 4F43 -> 0000B5E8 4F44 -> 000081CE 4F46 -> 0000B5AB 4F47 -> 000081D0 4F4D -> 0000CEBB 4F4E -> 0000B5CD 4F4F -> 0000D7A1 4F50 -> 0000D7F4 4F51 -> 0000D3D3 4F52 -> 000081D6 4F53 -> 0000CCE5 4F54 -> 000081D7 4F55 -> 0000BACE 4F56 -> 000081D8 4F57 -> 0000D9A2 4F58 -> 0000D9DC 4F59 -> 0000D3E0 4F5A -> 0000D8FD 4F5B -> 0000B7F0 4F5C -> 0000D7F7 4F5D -> 0000D8FE 4F5E -> 0000D8FA 4F5F -> 0000D9A1 4F60 -> 0000C4E3 4F61 -> 000081D9 4F63 -> 0000D3B6 4F64 -> 0000D8F4 4F65 -> 0000D9DD 4F66 -> 000081DB 4F67 -> 0000D8FB 4F68 -> 000081DC 4F69 -> 0000C5E5 4F6A -> 000081DD 4F6C -> 0000C0D0 4F6D -> 000081DF 4F6F -> 0000D1F0 4F70 -> 0000B0DB 4F71 -> 000081E1 4F73 -> 0000BCD1 4F74 -> 0000D9A6 4F75 -> 000081E3 4F76 -> 0000D9A5 4F77 -> 000081E4 4F7B -> 0000D9AC 4F7C -> 0000D9AE 4F7D -> 000081E8 4F7E -> 0000D9AB 4F7F -> 0000CAB9 4F80 -> 000081E9 4F83 -> 0000D9A9 4F84 -> 0000D6B6 4F85 -> 000081EC 4F88 -> 0000B3DE 4F89 -> 0000D9A8 4F8A -> 000081EF 4F8B -> 0000C0FD 4F8C -> 000081F0 4F8D -> 0000CACC 4F8E -> 000081F1 4F8F -> 0000D9AA 4F90 -> 000081F2 4F91 -> 0000D9A7 4F92 -> 000081F3 4F94 -> 0000D9B0 4F95 -> 000081F5 4F97 -> 0000B6B1 4F98 -> 000081F7 4F9B -> 0000B9A9 4F9C -> 000081FA 4F9D -> 0000D2C0 4F9E -> 000081FB 4FA0 -> 0000CFC0 4FA1 -> 000081FD 4FA3 -> 0000C2C2 4FA4 -> 00008240 4FA5 -> 0000BDC4 4FA6 -> 0000D5EC 4FA7 -> 0000B2E0 4FA8 -> 0000C7C8 4FA9 -> 0000BFEB 4FAA -> 0000D9AD 4FAB -> 00008241 4FAC -> 0000D9AF 4FAD -> 00008242 4FAE -> 0000CEEA 4FAF -> 0000BAEE 4FB0 -> 00008243 4FB5 -> 0000C7D6 4FB6 -> 00008248 4FBF -> 0000B1E3 4FC0 -> 00008251 4FC3 -> 0000B4D9 4FC4 -> 0000B6ED 4FC5 -> 0000D9B4 4FC6 -> 00008254 4FCA -> 0000BFA1 4FCB -> 00008258 4FCE -> 0000D9DE 4FCF -> 0000C7CE 4FD0 -> 0000C0FE 4FD1 -> 0000D9B8 4FD2 -> 0000825B 4FD7 -> 0000CBD7 4FD8 -> 0000B7FD 4FD9 -> 00008260 4FDA -> 0000D9B5 4FDB -> 00008261 4FDC -> 0000D9B7 4FDD -> 0000B1A3 4FDE -> 0000D3E1 4FDF -> 0000D9B9 4FE0 -> 00008262 4FE1 -> 0000D0C5 4FE2 -> 00008263 4FE3 -> 0000D9B6 4FE4 -> 00008264 4FE6 -> 0000D9B1 4FE7 -> 00008266 4FE8 -> 0000D9B2 4FE9 -> 0000C1A9 4FEA -> 0000D9B3 4FEB -> 00008267 4FED -> 0000BCF3 4FEE -> 0000D0DE 4FEF -> 0000B8A9 4FF0 -> 00008269 4FF1 -> 0000BEE3 4FF2 -> 0000826A 4FF3 -> 0000D9BD 4FF4 -> 0000826B 4FF8 -> 0000D9BA 4FF9 -> 0000826F 4FFA -> 0000B0B3 4FFB -> 00008270 4FFE -> 0000D9C2 4FFF -> 00008273 500B -> 00008280 500C -> 0000D9C4 500D -> 0000B1B6 500E -> 00008281 500F -> 0000D9BF 5010 -> 00008282 5012 -> 0000B5B9 5013 -> 00008284 5014 -> 0000BEF3 5015 -> 00008285 5018 -> 0000CCC8 5019 -> 0000BAF2 501A -> 0000D2D0 501B -> 00008288 501C -> 0000D9C3 501D -> 00008289 501F -> 0000BDE8 5020 -> 0000828B 5021 -> 0000B3AB 5022 -> 0000828C 5025 -> 0000D9C5 5026 -> 0000BEEB 5027 -> 0000828F 5028 -> 0000D9C6 5029 -> 0000D9BB 502A -> 0000C4DF 502B -> 00008290 502C -> 0000D9BE 502D -> 0000D9C1 502E -> 0000D9C0 502F -> 00008291 503A -> 0000D5AE 503B -> 0000829C 503C -> 0000D6B5 503D -> 0000829D 503E -> 0000C7E3 503F -> 0000829E 5043 -> 0000D9C8 5044 -> 000082A2 5047 -> 0000BCD9 5048 -> 0000D9CA 5049 -> 000082A5 504C -> 0000D9BC 504D -> 000082A8 504E -> 0000D9CB 504F -> 0000C6AB 5050 -> 000082A9 5055 -> 0000D9C9 5056 -> 000082AE 505A -> 0000D7F6 505B -> 000082B2 505C -> 0000CDA3 505D -> 000082B3 5065 -> 0000BDA1 5066 -> 000082BB 506C -> 0000D9CC 506D -> 000082C1 5076 -> 0000C5BC 5077 -> 0000CDB5 5078 -> 000082CA 507B -> 0000D9CD 507C -> 000082CD 507E -> 0000D9C7 507F -> 0000B3A5 5080 -> 0000BFFE 5081 -> 000082CF 5085 -> 0000B8B5 5086 -> 000082D3 5088 -> 0000C0FC 5089 -> 000082D5 508D -> 0000B0F8 508E -> 000082D9 50A3 -> 0000B4F6 50A4 -> 000082EE 50A5 -> 0000D9CE 50A6 -> 000082EF 50A7 -> 0000D9CF 50A8 -> 0000B4A2 50A9 -> 0000D9D0 50AA -> 000082F0 50AC -> 0000B4DF 50AD -> 000082F2 50B2 -> 0000B0C1 50B3 -> 000082F7 50BA -> 0000D9D1 50BB -> 0000C9B5 50BC -> 000082FE 50BD -> 00008340 50CF -> 0000CFF1 50D0 -> 00008352 50D6 -> 0000D9D2 50D7 -> 00008358 50DA -> 0000C1C5 50DB -> 0000835B 50E6 -> 0000D9D6 50E7 -> 0000C9AE 50E8 -> 00008366 50EC -> 0000D9D5 50ED -> 0000D9D4 50EE -> 0000D9D7 50EF -> 0000836A 50F3 -> 0000CBDB 50F4 -> 0000836E 50F5 -> 0000BDA9 50F6 -> 0000836F 50FB -> 0000C6A7 50FC -> 00008374 5106 -> 0000D9D3 5107 -> 0000D9D8 5108 -> 0000837E 5109 -> 00008380 510B -> 0000D9D9 510C -> 00008382 5112 -> 0000C8E5 5113 -> 00008388 5121 -> 0000C0DC 5122 -> 00008396 513F -> 0000B6F9 5140 -> 0000D8A3 5141 -> 0000D4CA 5142 -> 000083B3 5143 -> 0000D4AA 5144 -> 0000D0D6 5145 -> 0000B3E4 5146 -> 0000D5D7 5147 -> 000083B4 5148 -> 0000CFC8 5149 -> 0000B9E2 514A -> 000083B5 514B -> 0000BFCB 514C -> 000083B6 514D -> 0000C3E2 514E -> 000083B7 5151 -> 0000B6D2 5152 -> 000083BA 5154 -> 0000CDC3 5155 -> 0000D9EE 5156 -> 0000D9F0 5157 -> 000083BC 515A -> 0000B5B3 515B -> 000083BF 515C -> 0000B6B5 515D -> 000083C0 5162 -> 0000BEA4 5163 -> 000083C5 5165 -> 0000C8EB 5166 -> 000083C7 5168 -> 0000C8AB 5169 -> 000083C9 516B -> 0000B0CB 516C -> 0000B9AB 516D -> 0000C1F9 516E -> 0000D9E2 516F -> 000083CB 5170 -> 0000C0BC 5171 -> 0000B9B2 5172 -> 000083CC 5173 -> 0000B9D8 5174 -> 0000D0CB 5175 -> 0000B1F8 5176 -> 0000C6E4 5177 -> 0000BEDF 5178 -> 0000B5E4 5179 -> 0000D7C8 517A -> 000083CD 517B -> 0000D1F8 517C -> 0000BCE6 517D -> 0000CADE 517E -> 000083CE 5180 -> 0000BCBD 5181 -> 0000D9E6 5182 -> 0000D8E7 5183 -> 000083D0 5185 -> 0000C4DA 5186 -> 000083D2 5188 -> 0000B8D4 5189 -> 0000C8BD 518A -> 000083D4 518C -> 0000B2E1 518D -> 0000D4D9 518E -> 000083D6 5192 -> 0000C3B0 5193 -> 000083DA 5195 -> 0000C3E1 5196 -> 0000DAA2 5197 -> 0000C8DF 5198 -> 000083DC 5199 -> 0000D0B4 519A -> 000083DD 519B -> 0000BEFC 519C -> 0000C5A9 519D -> 000083DE 51A0 -> 0000B9DA 51A1 -> 000083E1 51A2 -> 0000DAA3 51A3 -> 000083E2 51A4 -> 0000D4A9 51A5 -> 0000DAA4 51A6 -> 000083E3 51AB -> 0000D9FB 51AC -> 0000B6AC 51AD -> 000083E8 51AF -> 0000B7EB 51B0 -> 0000B1F9 51B1 -> 0000D9FC 51B2 -> 0000B3E5 51B3 -> 0000BEF6 51B4 -> 000083EA 51B5 -> 0000BFF6 51B6 -> 0000D2B1 51B7 -> 0000C0E4 51B8 -> 000083EB 51BB -> 0000B6B3 51BC -> 0000D9FE 51BD -> 0000D9FD 51BE -> 000083EE 51C0 -> 0000BEBB 51C1 -> 000083F0 51C4 -> 0000C6E0 51C5 -> 000083F3 51C6 -> 0000D7BC 51C7 -> 0000DAA1 51C8 -> 000083F4 51C9 -> 0000C1B9 51CA -> 000083F5 51CB -> 0000B5F2 51CC -> 0000C1E8 51CD -> 000083F6 51CF -> 0000BCF5 51D0 -> 000083F8 51D1 -> 0000B4D5 51D2 -> 000083F9 51D8 -> 00008440 51DB -> 0000C1DD 51DC -> 00008443 51DD -> 0000C4FD 51DE -> 00008444 51E0 -> 0000BCB8 51E1 -> 0000B7B2 51E2 -> 00008446 51E4 -> 0000B7EF 51E5 -> 00008448 51EB -> 0000D9EC 51EC -> 0000844E 51ED -> 0000C6BE 51EE -> 0000844F 51EF -> 0000BFAD 51F0 -> 0000BBCB 51F1 -> 00008450 51F3 -> 0000B5CA 51F4 -> 00008452 51F5 -> 0000DBC9 51F6 -> 0000D0D7 51F7 -> 00008453 51F8 -> 0000CDB9 51F9 -> 0000B0BC 51FA -> 0000B3F6 51FB -> 0000BBF7 51FC -> 0000DBCA 51FD -> 0000BAAF 51FE -> 00008454 51FF -> 0000D4E4 5200 -> 0000B5B6 5201 -> 0000B5F3 5202 -> 0000D8D6 5203 -> 0000C8D0 5204 -> 00008455 5206 -> 0000B7D6 5207 -> 0000C7D0 5208 -> 0000D8D7 5209 -> 00008457 520A -> 0000BFAF 520B -> 00008458 520D -> 0000DBBB 520E -> 0000D8D8 520F -> 0000845A 5211 -> 0000D0CC 5212 -> 0000BBAE 5213 -> 0000845C 5216 -> 0000EBBE 5217 -> 0000C1D0 5218 -> 0000C1F5 5219 -> 0000D4F2 521A -> 0000B8D5 521B -> 0000B4B4 521C -> 0000845F 521D -> 0000B3F5 521E -> 00008460 5220 -> 0000C9BE 5221 -> 00008462 5224 -> 0000C5D0 5225 -> 00008465 5228 -> 0000C5D9 5229 -> 0000C0FB 522A -> 00008468 522B -> 0000B1F0 522C -> 00008469 522D -> 0000D8D9 522E -> 0000B9CE 522F -> 0000846A 5230 -> 0000B5BD 5231 -> 0000846B 5233 -> 0000D8DA 5234 -> 0000846D 5236 -> 0000D6C6 5237 -> 0000CBA2 5238 -> 0000C8AF 5239 -> 0000C9B2 523A -> 0000B4CC 523B -> 0000BFCC 523C -> 0000846F 523D -> 0000B9F4 523E -> 00008470 523F -> 0000D8DB 5241 -> 0000B6E7 5242 -> 0000BCC1 5243 -> 0000CCEA 5244 -> 00008471 524A -> 0000CFF7 524B -> 00008477 524C -> 0000D8DD 524D -> 0000C7B0 524E -> 00008478 5250 -> 0000B9D0 5251 -> 0000BDA3 5252 -> 0000847A 5254 -> 0000CCDE 5255 -> 0000847C 5256 -> 0000C6CA 5257 -> 0000847D 5259 -> 00008480 525C -> 0000D8E0 525D -> 00008483 525E -> 0000D8DE 525F -> 00008484 5261 -> 0000D8DF 5262 -> 00008486 5265 -> 0000B0FE 5266 -> 00008489 5267 -> 0000BEE7 5268 -> 0000848A 5269 -> 0000CAA3 526A -> 0000BCF4 526B -> 0000848B 526F -> 0000B8B1 5270 -> 0000848F 5272 -> 0000B8EE 5273 -> 00008491 527D -> 0000D8E2 527E -> 0000849B 527F -> 0000BDCB 5280 -> 0000849C 5281 -> 0000D8E4 5282 -> 0000D8E3 5283 -> 0000849D 5288 -> 0000C5FC 5289 -> 000084A2 5290 -> 0000D8E5 5291 -> 000084A9 5293 -> 0000D8E6 5294 -> 000084AB 529B -> 0000C1A6 529C -> 000084B2 529D -> 0000C8B0 529E -> 0000B0EC 529F -> 0000B9A6 52A0 -> 0000BCD3 52A1 -> 0000CEF1 52A2 -> 0000DBBD 52A3 -> 0000C1D3 52A4 -> 000084B3 52A8 -> 0000B6AF 52A9 -> 0000D6FA 52AA -> 0000C5AC 52AB -> 0000BDD9 52AC -> 0000DBBE 52AE -> 000084B7 52B1 -> 0000C0F8 52B2 -> 0000BEA2 52B3 -> 0000C0CD 52B4 -> 000084BA 52BE -> 0000DBC0 52BF -> 0000CAC6 52C0 -> 000084C4 52C3 -> 0000B2AA 52C4 -> 000084C7 52C7 -> 0000D3C2 52C8 -> 000084CA 52C9 -> 0000C3E3 52CA -> 000084CB 52CB -> 0000D1AB 52CC -> 000084CC 52D0 -> 0000DBC2 52D1 -> 000084D0 52D2 -> 0000C0D5 52D3 -> 000084D1 52D6 -> 0000DBC3 52D7 -> 000084D4 52D8 -> 0000BFB1 52D9 -> 000084D5 52DF -> 0000C4BC 52E0 -> 000084DB 52E4 -> 0000C7DA 52E5 -> 000084DF 52F0 -> 0000DBC4 52F1 -> 000084EA 52F9 -> 0000D9E8 52FA -> 0000C9D7 52FB -> 000084F2 52FE -> 0000B9B4 52FF -> 0000CEF0 5300 -> 0000D4C8 5301 -> 000084F5 5305 -> 0000B0FC 5306 -> 0000B4D2 5307 -> 000084F9 5308 -> 0000D0D9 5309 -> 000084FA 530D -> 0000D9E9 530E -> 000084FE 530F -> 0000DECB 5310 -> 0000D9EB 5311 -> 00008540 5315 -> 0000D8B0 5316 -> 0000BBAF 5317 -> 0000B1B1 5318 -> 00008544 5319 -> 0000B3D7 531A -> 0000D8CE 531B -> 00008545 531D -> 0000D4D1 531E -> 00008547 5320 -> 0000BDB3 5321 -> 0000BFEF 5322 -> 00008549 5323 -> 0000CFBB 5324 -> 0000854A 5326 -> 0000D8D0 5327 -> 0000854C 532A -> 0000B7CB 532B -> 0000854F 532E -> 0000D8D1 532F -> 00008552 5339 -> 0000C6A5 533A -> 0000C7F8 533B -> 0000D2BD 533C -> 0000855C 533E -> 0000D8D2 533F -> 0000C4E4 5340 -> 0000855E 5341 -> 0000CAAE 5342 -> 0000855F 5343 -> 0000C7A7 5344 -> 00008560 5345 -> 0000D8A6 5346 -> 00008561 5347 -> 0000C9FD 5348 -> 0000CEE7 5349 -> 0000BBDC 534A -> 0000B0EB 534B -> 00008562 534E -> 0000BBAA 534F -> 0000D0AD 5350 -> 00008565 5351 -> 0000B1B0 5352 -> 0000D7E4 5353 -> 0000D7BF 5354 -> 00008566 5355 -> 0000B5A5 5356 -> 0000C2F4 5357 -> 0000C4CF 5358 -> 00008567 535A -> 0000B2A9 535B -> 00008569 535C -> 0000B2B7 535D -> 0000856A 535E -> 0000B1E5 535F -> 0000DFB2 5360 -> 0000D5BC 5361 -> 0000BFA8 5362 -> 0000C2AC 5363 -> 0000D8D5 5364 -> 0000C2B1 5365 -> 0000856B 5366 -> 0000D8D4 5367 -> 0000CED4 5368 -> 0000856C 5369 -> 0000DAE0 536A -> 0000856D 536B -> 0000CEC0 536C -> 0000856E 536E -> 0000D8B4 536F -> 0000C3AE 5370 -> 0000D3A1 5371 -> 0000CEA3 5372 -> 00008570 5373 -> 0000BCB4 5374 -> 0000C8B4 5375 -> 0000C2D1 5376 -> 00008571 5377 -> 0000BEED 5378 -> 0000D0B6 5379 -> 00008572 537A -> 0000DAE1 537B -> 00008573 537F -> 0000C7E4 5380 -> 00008577 5382 -> 0000B3A7 5383 -> 00008579 5384 -> 0000B6F2 5385 -> 0000CCFC 5386 -> 0000C0FA 5387 -> 0000857A 5389 -> 0000C0F7 538A -> 0000857C 538B -> 0000D1B9 538C -> 0000D1E1 538D -> 0000D8C7 538E -> 0000857D 5390 -> 00008580 5395 -> 0000B2DE 5396 -> 00008585 5398 -> 0000C0E5 5399 -> 00008587 539A -> 0000BAF1 539B -> 00008588 539D -> 0000D8C8 539E -> 0000858A 539F -> 0000D4AD 53A0 -> 0000858B 53A2 -> 0000CFE1 53A3 -> 0000D8C9 53A4 -> 0000858D 53A5 -> 0000D8CA 53A6 -> 0000CFC3 53A7 -> 0000858E 53A8 -> 0000B3F8 53A9 -> 0000BEC7 53AA -> 0000858F 53AE -> 0000D8CB 53AF -> 00008593 53B6 -> 0000DBCC 53B7 -> 0000859A 53BB -> 0000C8A5 53BC -> 0000859E 53BF -> 0000CFD8 53C0 -> 000085A1 53C1 -> 0000C8FE 53C2 -> 0000B2CE 53C3 -> 000085A2 53C8 -> 0000D3D6 53C9 -> 0000B2E6 53CA -> 0000BCB0 53CB -> 0000D3D1 53CC -> 0000CBAB 53CD -> 0000B7B4 53CE -> 000085A7 53D1 -> 0000B7A2 53D2 -> 000085AA 53D4 -> 0000CAE5 53D5 -> 000085AC 53D6 -> 0000C8A1 53D7 -> 0000CADC 53D8 -> 0000B1E4 53D9 -> 0000D0F0 53DA -> 000085AD 53DB -> 0000C5D1 53DC -> 000085AE 53DF -> 0000DBC5 53E0 -> 0000B5FE 53E1 -> 000085B1 53E3 -> 0000BFDA 53E4 -> 0000B9C5 53E5 -> 0000BEE4 53E6 -> 0000C1ED 53E7 -> 000085B3 53E8 -> 0000DFB6 53E9 -> 0000DFB5 53EA -> 0000D6BB 53EB -> 0000BDD0 53EC -> 0000D5D9 53ED -> 0000B0C8 53EE -> 0000B6A3 53EF -> 0000BFC9 53F0 -> 0000CCA8 53F1 -> 0000DFB3 53F2 -> 0000CAB7 53F3 -> 0000D3D2 53F4 -> 000085B4 53F5 -> 0000D8CF 53F6 -> 0000D2B6 53F7 -> 0000BAC5 53F8 -> 0000CBBE 53F9 -> 0000CCBE 53FA -> 000085B5 53FB -> 0000DFB7 53FC -> 0000B5F0 53FD -> 0000DFB4 53FE -> 000085B6 5401 -> 0000D3F5 5402 -> 000085B9 5403 -> 0000B3D4 5404 -> 0000B8F7 5405 -> 000085BA 5406 -> 0000DFBA 5407 -> 000085BB 5408 -> 0000BACF 5409 -> 0000BCAA 540A -> 0000B5F5 540B -> 000085BC 540C -> 0000CDAC 540D -> 0000C3FB 540E -> 0000BAF3 540F -> 0000C0F4 5410 -> 0000CDC2 5411 -> 0000CFF2 5412 -> 0000DFB8 5413 -> 0000CFC5 5414 -> 000085BD 5415 -> 0000C2C0 5416 -> 0000DFB9 5417 -> 0000C2F0 5418 -> 000085BE 541B -> 0000BEFD 541C -> 000085C1 541D -> 0000C1DF 541E -> 0000CDCC 541F -> 0000D2F7 5420 -> 0000B7CD 5421 -> 0000DFC1 5422 -> 000085C2 5423 -> 0000DFC4 5424 -> 000085C3 5426 -> 0000B7F1 5427 -> 0000B0C9 5428 -> 0000B6D6 5429 -> 0000B7D4 542A -> 000085C5 542B -> 0000BAAC 542C -> 0000CCFD 542D -> 0000BFD4 542E -> 0000CBB1 542F -> 0000C6F4 5430 -> 000085C6 5431 -> 0000D6A8 5432 -> 0000DFC5 5433 -> 000085C7 5434 -> 0000CEE2 5435 -> 0000B3B3 5436 -> 000085C8 5438 -> 0000CEFC 5439 -> 0000B4B5 543A -> 000085CA 543B -> 0000CEC7 543C -> 0000BAF0 543D -> 000085CB 543E -> 0000CEE1 543F -> 000085CC 5440 -> 0000D1BD 5441 -> 000085CD 5443 -> 0000DFC0 5444 -> 000085CF 5446 -> 0000B4F4 5447 -> 000085D1 5448 -> 0000B3CA 5449 -> 000085D2 544A -> 0000B8E6 544B -> 0000DFBB 544C -> 000085D3 5450 -> 0000C4C5 5451 -> 000085D7 5452 -> 0000DFBC 5455 -> 0000C5BB 5456 -> 0000DFBF 5457 -> 0000DFC2 5458 -> 0000D4B1 5459 -> 0000DFC3 545A -> 000085D8 545B -> 0000C7BA 545C -> 0000CED8 545D -> 000085D9 5462 -> 0000C4D8 5463 -> 000085DE 5464 -> 0000DFCA 5465 -> 000085DF 5466 -> 0000DFCF 5467 -> 000085E0 5468 -> 0000D6DC 5469 -> 000085E1 5471 -> 0000DFC9 5472 -> 0000DFDA 5473 -> 0000CEB6 5474 -> 000085E9 5475 -> 0000BAC7 5476 -> 0000DFCE 5477 -> 0000DFC8 5478 -> 0000C5DE 5479 -> 000085EA 547B -> 0000C9EB 547C -> 0000BAF4 547D -> 0000C3FC 547E -> 000085EC 5480 -> 0000BED7 5481 -> 000085EE 5482 -> 0000DFC6 5483 -> 000085EF 5484 -> 0000DFCD 5485 -> 000085F0 5486 -> 0000C5D8 5487 -> 000085F1 548B -> 0000D5A6 548C -> 0000BACD 548D -> 000085F5 548E -> 0000BECC 548F -> 0000D3BD 5490 -> 0000B8C0 5491 -> 000085F6 5492 -> 0000D6E4 5493 -> 000085F7 5494 -> 0000DFC7 5495 -> 0000B9BE 5496 -> 0000BFA7 5497 -> 000085F8 5499 -> 0000C1FC 549A -> 0000DFCB 549C -> 000085FA 549D -> 0000DFD0 549E -> 000085FB 54A2 -> 00008640 54A3 -> 0000DFDB 54A4 -> 0000DFE5 54A5 -> 00008641 54A6 -> 0000DFD7 54A7 -> 0000DFD6 54A8 -> 0000D7C9 54A9 -> 0000DFE3 54AB -> 0000E5EB 54AC -> 0000D2A7 54AD -> 0000DFD2 54AE -> 00008642 54AF -> 0000BFA9 54B0 -> 00008643 54B1 -> 0000D4DB 54B2 -> 00008644 54B3 -> 0000BFC8 54B4 -> 0000DFD4 54B5 -> 00008645 54B8 -> 0000CFCC 54B9 -> 00008648 54BB -> 0000DFDD 54BC -> 0000864A 54BD -> 0000D1CA 54BE -> 0000864B 54BF -> 0000DFDE 54C0 -> 0000B0A7 54C1 -> 0000C6B7 54C2 -> 0000DFD3 54C3 -> 0000864C 54C4 -> 0000BAE5 54C5 -> 0000864D 54C6 -> 0000B6DF 54C7 -> 0000CDDB 54C8 -> 0000B9FE 54C9 -> 0000D4D5 54CA -> 0000864E 54CC -> 0000DFDF 54CD -> 0000CFEC 54CE -> 0000B0A5 54CF -> 0000DFE7 54D0 -> 0000DFD1 54D1 -> 0000D1C6 54D2 -> 0000DFD5 54D3 -> 0000DFD8 54D5 -> 0000DFDC 54D6 -> 00008650 54D7 -> 0000BBA9 54D8 -> 00008651 54D9 -> 0000DFE0 54DB -> 00008652 54DC -> 0000DFE2 54DD -> 0000DFE6 54DE -> 0000DFE8 54DF -> 0000D3B4 54E0 -> 00008653 54E5 -> 0000B8E7 54E6 -> 0000C5B6 54E7 -> 0000DFEA 54E8 -> 0000C9DA 54E9 -> 0000C1A8 54EA -> 0000C4C4 54EB -> 00008658 54ED -> 0000BFDE 54EE -> 0000CFF8 54EF -> 0000865A 54F2 -> 0000D5DC 54F3 -> 0000DFEE 54F4 -> 0000865D 54FA -> 0000B2B8 54FB -> 00008663 54FC -> 0000BADF 54FD -> 0000DFEC 54FE -> 00008664 54FF -> 0000DBC1 5500 -> 00008665 5501 -> 0000D1E4 5502 -> 00008666 5506 -> 0000CBF4 5507 -> 0000B4BD 5508 -> 0000866A 5509 -> 0000B0A6 550A -> 0000866B 550F -> 0000DFF1 5510 -> 0000CCC6 5511 -> 0000DFF2 5512 -> 00008670 5514 -> 0000DFED 5515 -> 00008672 551B -> 0000DFE9 551C -> 00008678 5520 -> 0000DFEB 5521 -> 0000867C 5522 -> 0000DFEF 5524 -> 0000BBBD 5525 -> 0000867D 5527 -> 0000DFF3 5528 -> 00008680 552A -> 0000DFF4 552B -> 00008682 552C -> 0000BBA3 552D -> 00008683 552E -> 0000CADB 552F -> 0000CEA8 5530 -> 0000E0A7 5531 -> 0000B3AA 5532 -> 00008684 5533 -> 0000E0A6 5534 -> 00008685 5537 -> 0000E0A1 5538 -> 00008688 553C -> 0000DFFE 553D -> 0000868C 553E -> 0000CDD9 553F -> 0000DFFC 5540 -> 0000868D 5541 -> 0000DFFA 5542 -> 0000868E 5543 -> 0000BFD0 5544 -> 0000D7C4 5545 -> 0000868F 5546 -> 0000C9CC 5547 -> 00008690 5549 -> 0000DFF8 554A -> 0000B0A1 554B -> 00008692 5550 -> 0000DFFD 5551 -> 00008697 5555 -> 0000DFFB 5556 -> 0000E0A2 5557 -> 0000869B 555C -> 0000E0A8 555D -> 000086A0 5561 -> 0000B7C8 5562 -> 000086A4 5564 -> 0000C6A1 5565 -> 0000C9B6 5566 -> 0000C0B2 5567 -> 0000DFF5 5568 -> 000086A6 556A -> 0000C5BE 556B -> 000086A8 556C -> 0000D8C4 556D -> 0000DFF9 556E -> 0000C4F6 556F -> 000086A9 5575 -> 0000E0A3 5578 -> 0000D0A5 5579 -> 000086AF 557B -> 0000E0B4 557C -> 0000CCE4 557D -> 000086B1 557E -> 0000E0B1 557F -> 000086B2 5580 -> 0000BFA6 5581 -> 0000E0AF 5582 -> 0000CEB9 5583 -> 0000E0AB 5584 -> 0000C9C6 5585 -> 000086B3 5587 -> 0000C0AE 5588 -> 0000E0AE 5589 -> 0000BAED 558A -> 0000BAB0 558B -> 0000E0A9 558C -> 000086B5 558F -> 0000DFF6 5590 -> 000086B8 5591 -> 0000E0B3 5592 -> 000086B9 5594 -> 0000E0B8 5595 -> 000086BB 5598 -> 0000B4AD 5599 -> 0000E0B9 559A -> 000086BE 559C -> 0000CFB2 559D -> 0000BAC8 559E -> 000086C0 559F -> 0000E0B0 55A0 -> 000086C1 55A7 -> 0000D0FA 55A8 -> 000086C8 55B1 -> 0000E0AC 55B2 -> 000086D1 55B3 -> 0000D4FB 55B4 -> 000086D2 55B5 -> 0000DFF7 55B6 -> 000086D3 55B7 -> 0000C5E7 55B8 -> 000086D4 55B9 -> 0000E0AD 55BA -> 000086D5 55BB -> 0000D3F7 55BC -> 000086D6 55BD -> 0000E0B6 55BF -> 000086D7 55C4 -> 0000E0C4 55C5 -> 0000D0E1 55C6 -> 000086DC 55C9 -> 0000E0BC 55CA -> 000086DF 55CC -> 0000E0C9 55CE -> 000086E1 55D1 -> 0000E0BE 55D2 -> 0000E0AA 55D3 -> 0000C9A4 55D4 -> 0000E0C1 55D5 -> 000086E4 55D6 -> 0000E0B2 55D7 -> 000086E5 55DC -> 0000CAC8 55DD -> 0000E0C3 55DE -> 000086EA 55DF -> 0000E0B5 55E0 -> 000086EB 55E1 -> 0000CECB 55E2 -> 000086EC 55E3 -> 0000CBC3 55E4 -> 0000E0CD 55E5 -> 0000E0C6 55E6 -> 0000E0C2 55E7 -> 000086ED 55E8 -> 0000E0CB 55E9 -> 000086EE 55EA -> 0000E0BA 55EB -> 0000E0BF 55ED -> 000086EF 55EF -> 0000E0C5 55F0 -> 000086F1 55F2 -> 0000E0C7 55F4 -> 000086F3 55F5 -> 0000E0CC 55F6 -> 000086F4 55F7 -> 0000E0BB 55F8 -> 000086F5 55FD -> 0000CBD4 55FE -> 0000E0D5 55FF -> 000086FA 5600 -> 0000E0D6 5601 -> 0000E0D2 5602 -> 000086FB 5606 -> 00008740 5608 -> 0000E0D0 5609 -> 0000BCCE 560A -> 00008742 560C -> 0000E0D1 560D -> 00008744 560E -> 0000B8C2 560F -> 0000D8C5 5610 -> 00008745 5618 -> 0000D0EA 5619 -> 0000874D 561B -> 0000C2EF 561C -> 0000874F 561E -> 0000E0CF 561F -> 0000E0BD 5620 -> 00008751 5623 -> 0000E0D4 5624 -> 0000E0D3 5625 -> 00008754 5627 -> 0000E0D7 5628 -> 00008756 562C -> 0000E0DC 562D -> 0000E0D8 562E -> 0000875A 5631 -> 0000D6F6 5632 -> 0000B3B0 5633 -> 0000875D 5634 -> 0000D7EC 5635 -> 0000875E 5636 -> 0000CBBB 5637 -> 0000875F 5639 -> 0000E0DA 563A -> 00008761 563B -> 0000CEFB 563C -> 00008762 563F -> 0000BAD9 5640 -> 00008765 564C -> 0000E0E1 564D -> 0000E0DD 564E -> 0000D2AD 564F -> 00008771 5654 -> 0000E0E2 5655 -> 00008776 5657 -> 0000E0DB 5658 -> 0000E0D9 5659 -> 0000E0DF 565A -> 00008778 565C -> 0000E0E0 565D -> 0000877A 5662 -> 0000E0DE 5663 -> 00008780 5664 -> 0000E0E4 5665 -> 00008781 5668 -> 0000C6F7 5669 -> 0000D8AC 566A -> 0000D4EB 566B -> 0000E0E6 566C -> 0000CAC9 566D -> 00008784 5671 -> 0000E0E5 5672 -> 00008788 5676 -> 0000B8C1 5677 -> 0000878C 567B -> 0000E0E7 567D -> 00008790 5685 -> 0000E0E9 5686 -> 0000E0E3 5687 -> 00008798 568E -> 0000BABF 568F -> 0000CCE7 5690 -> 0000879F 5693 -> 0000E0EA 5694 -> 000087A2 56A3 -> 0000CFF9 56A4 -> 000087B1 56AF -> 0000E0EB 56B0 -> 000087BC 56B7 -> 0000C8C2 56B8 -> 000087C3 56BC -> 0000BDC0 56BD -> 000087C7 56CA -> 0000C4D2 56CB -> 000087D4 56D4 -> 0000E0EC 56D5 -> 000087DD 56D7 -> 0000E0ED 56D8 -> 000087DF 56DA -> 0000C7F4 56DB -> 0000CBC4 56DC -> 000087E1 56DD -> 0000E0EE 56DE -> 0000BBD8 56DF -> 0000D8B6 56E0 -> 0000D2F2 56E1 -> 0000E0EF 56E2 -> 0000CDC5 56E3 -> 000087E2 56E4 -> 0000B6DA 56E5 -> 000087E3 56EB -> 0000E0F1 56EC -> 000087E9 56ED -> 0000D4B0 56EE -> 000087EA 56F0 -> 0000C0A7 56F1 -> 0000B4D1 56F2 -> 000087EC 56F4 -> 0000CEA7 56F5 -> 0000E0F0 56F6 -> 000087EE 56F9 -> 0000E0F2 56FA -> 0000B9CC 56FB -> 000087F1 56FD -> 0000B9FA 56FE -> 0000CDBC 56FF -> 0000E0F3 5700 -> 000087F3 5703 -> 0000C6D4 5704 -> 0000E0F4 5705 -> 000087F6 5706 -> 0000D4B2 5707 -> 000087F7 5708 -> 0000C8A6 5709 -> 0000E0F6 570A -> 0000E0F5 570B -> 000087F8 5712 -> 00008840 571C -> 0000E0F7 571D -> 0000884A 571F -> 0000CDC1 5720 -> 0000884C 5723 -> 0000CAA5 5724 -> 0000884F 5728 -> 0000D4DA 5729 -> 0000DBD7 572A -> 0000DBD9 572B -> 00008853 572C -> 0000DBD8 572D -> 0000B9E7 572E -> 0000DBDC 5730 -> 0000B5D8 5731 -> 00008854 5733 -> 0000DBDA 5734 -> 00008856 5739 -> 0000DBDB 573A -> 0000B3A1 573B -> 0000DBDF 573C -> 0000885B 573E -> 0000BBF8 573F -> 0000885D 5740 -> 0000D6B7 5741 -> 0000885E 5742 -> 0000DBE0 5743 -> 0000885F 5747 -> 0000BEF9 5748 -> 00008863 574A -> 0000B7BB 574B -> 00008865 574C -> 0000DBD0 574D -> 0000CCAE 574E -> 0000BFB2 574F -> 0000BBB5 5750 -> 0000D7F8 5751 -> 0000BFD3 5752 -> 00008866 5757 -> 0000BFE9 5758 -> 0000886B 575A -> 0000BCE1 575B -> 0000CCB3 575C -> 0000DBDE 575D -> 0000B0D3 575E -> 0000CEEB 575F -> 0000B7D8 5760 -> 0000D7B9 5761 -> 0000C6C2 5762 -> 0000886D 5764 -> 0000C0A4 5765 -> 0000886F 5766 -> 0000CCB9 5767 -> 00008870 5768 -> 0000DBE7 5769 -> 0000DBE1 576A -> 0000C6BA 576B -> 0000DBE3 576C -> 00008871 576D -> 0000DBE8 576E -> 00008872 576F -> 0000C5F7 5770 -> 00008873 5773 -> 0000DBEA 5774 -> 00008876 5776 -> 0000DBE9 5777 -> 0000BFC0 5778 -> 00008878 577B -> 0000DBE6 577C -> 0000DBE5 577D -> 0000887B 5781 -> 00008880 5782 -> 0000B4B9 5783 -> 0000C0AC 5784 -> 0000C2A2 5785 -> 0000DBE2 5786 -> 0000DBE4 5787 -> 00008881 578B -> 0000D0CD 578C -> 0000DBED 578D -> 00008885 5792 -> 0000C0DD 5793 -> 0000DBF2 5794 -> 0000888A 579B -> 0000B6E2 579C -> 00008891 57A0 -> 0000DBF3 57A1 -> 0000DBD2 57A2 -> 0000B9B8 57A3 -> 0000D4AB 57A4 -> 0000DBEC 57A5 -> 00008895 57A6 -> 0000BFD1 57A7 -> 0000DBF0 57A8 -> 00008896 57A9 -> 0000DBD1 57AA -> 00008897 57AB -> 0000B5E6 57AC -> 00008898 57AD -> 0000DBEB 57AE -> 0000BFE5 57AF -> 00008899 57B2 -> 0000DBEE 57B3 -> 0000889C 57B4 -> 0000DBF1 57B5 -> 0000889D 57B8 -> 0000DBF9 57B9 -> 000088A0 57C2 -> 0000B9A1 57C3 -> 0000B0A3 57C4 -> 000088A9 57CB -> 0000C2F1 57CC -> 000088B0 57CE -> 0000B3C7 57CF -> 0000DBEF 57D0 -> 000088B2 57D2 -> 0000DBF8 57D3 -> 000088B4 57D4 -> 0000C6D2 57D5 -> 0000DBF4 57D6 -> 000088B5 57D8 -> 0000DBF5 57D9 -> 0000DBF7 57DA -> 0000DBF6 57DB -> 000088B7 57DD -> 0000DBFE 57DE -> 000088B9 57DF -> 0000D3F2 57E0 -> 0000B2BA 57E1 -> 000088BA 57E4 -> 0000DBFD 57E5 -> 000088BD 57ED -> 0000DCA4 57EE -> 000088C5 57EF -> 0000DBFB 57F0 -> 000088C6 57F4 -> 0000DBFA 57F5 -> 000088CA 57F8 -> 0000DBFC 57F9 -> 0000C5E0 57FA -> 0000BBF9 57FB -> 000088CD 57FD -> 0000DCA3 57FE -> 000088CF 5800 -> 0000DCA5 5801 -> 000088D1 5802 -> 0000CCC3 5803 -> 000088D2 5806 -> 0000B6D1 5807 -> 0000DDC0 5808 -> 000088D5 580B -> 0000DCA1 580C -> 000088D8 580D -> 0000DCA2 580E -> 000088D9 5811 -> 0000C7B5 5812 -> 000088DC 5815 -> 0000B6E9 5816 -> 000088DF 5819 -> 0000DCA7 581A -> 000088E2 581E -> 0000DCA6 581F -> 000088E6 5820 -> 0000DCA9 5821 -> 0000B1A4 5822 -> 000088E7 5824 -> 0000B5CC 5825 -> 000088E9 582A -> 0000BFB0 582B -> 000088EE 5830 -> 0000D1DF 5831 -> 000088F3 5835 -> 0000B6C2 5836 -> 000088F7 583E -> 00008940 5844 -> 0000DCA8 5845 -> 00008946 584C -> 0000CBFA 584D -> 0000EBF3 584E -> 0000894D 5851 -> 0000CBDC 5852 -> 00008950 5854 -> 0000CBFE 5855 -> 00008952 5858 -> 0000CCC1 5859 -> 00008955 585E -> 0000C8FB 585F -> 0000895A 5865 -> 0000DCAA 5866 -> 00008960 586B -> 0000CCEE 586C -> 0000DCAB 586D -> 00008965 587E -> 0000DBD3 587F -> 00008976 5880 -> 0000DCAF 5881 -> 0000DCAC 5882 -> 00008977 5883 -> 0000BEB3 5884 -> 00008978 5885 -> 0000CAFB 5886 -> 00008979 5889 -> 0000DCAD 588A -> 0000897C 588D -> 00008980 5892 -> 0000C9CA 5893 -> 0000C4B9 5894 -> 00008985 5899 -> 0000C7BD 589A -> 0000DCAE 589B -> 0000898A 589E -> 0000D4F6 589F -> 0000D0E6 58A0 -> 0000898D 58A8 -> 0000C4AB 58A9 -> 0000B6D5 58AA -> 00008995 58BC -> 0000DBD4 58BD -> 000089A7 58C1 -> 0000B1DA 58C2 -> 000089AB 58C5 -> 0000DBD5 58C6 -> 000089AE 58D1 -> 0000DBD6 58D2 -> 000089B9 58D5 -> 0000BABE 58D6 -> 000089BC 58E4 -> 0000C8C0 58E5 -> 000089CA 58EB -> 0000CABF 58EC -> 0000C8C9 58ED -> 000089D0 58EE -> 0000D7B3 58EF -> 000089D1 58F0 -> 0000C9F9 58F1 -> 000089D2 58F3 -> 0000BFC7 58F4 -> 000089D4 58F6 -> 0000BAF8 58F7 -> 000089D6 58F9 -> 0000D2BC 58FA -> 000089D8 5902 -> 0000E2BA 5903 -> 000089E0 5904 -> 0000B4A6 5905 -> 000089E1 5907 -> 0000B1B8 5908 -> 000089E3 590D -> 0000B8B4 590E -> 000089E8 590F -> 0000CFC4 5910 -> 000089E9 5914 -> 0000D9E7 5915 -> 0000CFA6 5916 -> 0000CDE2 5917 -> 000089ED 5919 -> 0000D9ED 591A -> 0000B6E0 591B -> 000089EF 591C -> 0000D2B9 591D -> 000089F0 591F -> 0000B9BB 5920 -> 000089F2 5924 -> 0000E2B9 5925 -> 0000E2B7 5926 -> 000089F6 5927 -> 0000B4F3 5928 -> 000089F7 5929 -> 0000CCEC 592A -> 0000CCAB 592B -> 0000B7F2 592C -> 000089F8 592D -> 0000D8B2 592E -> 0000D1EB 592F -> 0000BABB 5930 -> 000089F9 5931 -> 0000CAA7 5932 -> 000089FA 5934 -> 0000CDB7 5935 -> 000089FC 5937 -> 0000D2C4 5938 -> 0000BFE4 5939 -> 0000BCD0 593A -> 0000B6E1 593B -> 000089FE 593C -> 0000DEC5 593D -> 00008A40 5941 -> 0000DEC6 5942 -> 0000DBBC 5943 -> 00008A44 5944 -> 0000D1D9 5945 -> 00008A45 5947 -> 0000C6E6 5948 -> 0000C4CE 5949 -> 0000B7EE 594A -> 00008A47 594B -> 0000B7DC 594C -> 00008A48 594E -> 0000BFFC 594F -> 0000D7E0 5950 -> 00008A4A 5951 -> 0000C6F5 5952 -> 00008A4B 5954 -> 0000B1BC 5955 -> 0000DEC8 5956 -> 0000BDB1 5957 -> 0000CCD7 5958 -> 0000DECA 5959 -> 00008A4D 595A -> 0000DEC9 595B -> 00008A4E 5960 -> 0000B5EC 5961 -> 00008A53 5962 -> 0000C9DD 5963 -> 00008A54 5965 -> 0000B0C2 5966 -> 00008A56 5973 -> 0000C5AE 5974 -> 0000C5AB 5975 -> 00008A63 5976 -> 0000C4CC 5977 -> 00008A64 5978 -> 0000BCE9 5979 -> 0000CBFD 597A -> 00008A65 597D -> 0000BAC3 597E -> 00008A68 5981 -> 0000E5F9 5982 -> 0000C8E7 5983 -> 0000E5FA 5984 -> 0000CDFD 5985 -> 00008A6B 5986 -> 0000D7B1 5987 -> 0000B8BE 5988 -> 0000C2E8 5989 -> 00008A6C 598A -> 0000C8D1 598B -> 00008A6D 598D -> 0000E5FB 598E -> 00008A6F 5992 -> 0000B6CA 5993 -> 0000BCCB 5994 -> 00008A73 5996 -> 0000D1FD 5997 -> 0000E6A1 5998 -> 00008A75 5999 -> 0000C3EE 599A -> 00008A76 599E -> 0000E6A4 599F -> 00008A7A 59A3 -> 0000E5FE 59A4 -> 0000E6A5 59A5 -> 0000CDD7 59A6 -> 00008A7E 59A7 -> 00008A80 59A8 -> 0000B7C1 59A9 -> 0000E5FC 59AB -> 0000E6A3 59AC -> 00008A81 59AE -> 0000C4DD 59AF -> 0000E6A8 59B0 -> 00008A83 59B2 -> 0000E6A7 59B3 -> 00008A85 59B9 -> 0000C3C3 59BA -> 00008A8B 59BB -> 0000C6DE 59BC -> 00008A8C 59BE -> 0000E6AA 59BF -> 00008A8E 59C6 -> 0000C4B7 59C7 -> 00008A95 59CA -> 0000E6A2 59CB -> 0000CABC 59CC -> 00008A98 59D0 -> 0000BDE3 59D1 -> 0000B9C3 59D2 -> 0000E6A6 59D3 -> 0000D0D5 59D4 -> 0000CEAF 59D5 -> 00008A9C 59D7 -> 0000E6A9 59D8 -> 0000E6B0 59D9 -> 00008A9E 59DA -> 0000D2A6 59DB -> 00008A9F 59DC -> 0000BDAA 59DD -> 0000E6AD 59DE -> 00008AA0 59E3 -> 0000E6AF 59E4 -> 00008AA5 59E5 -> 0000C0D1 59E6 -> 00008AA6 59E8 -> 0000D2CC 59E9 -> 00008AA8 59EC -> 0000BCA7 59ED -> 00008AAB 59F9 -> 0000E6B1 59FA -> 00008AB7 59FB -> 0000D2F6 59FC -> 00008AB8 59FF -> 0000D7CB 5A00 -> 00008ABB 5A01 -> 0000CDFE 5A02 -> 00008ABC 5A03 -> 0000CDDE 5A04 -> 0000C2A6 5A05 -> 0000E6AB 5A07 -> 0000BDBF 5A08 -> 0000E6AE 5A09 -> 0000E6B3 5A0A -> 00008ABD 5A0C -> 0000E6B2 5A0D -> 00008ABF 5A11 -> 0000E6B6 5A12 -> 00008AC3 5A13 -> 0000E6B8 5A14 -> 00008AC4 5A18 -> 0000C4EF 5A19 -> 00008AC8 5A1C -> 0000C4C8 5A1D -> 00008ACB 5A1F -> 0000BEEA 5A20 -> 0000C9EF 5A21 -> 00008ACD 5A23 -> 0000E6B7 5A24 -> 00008ACF 5A25 -> 0000B6F0 5A26 -> 00008AD0 5A29 -> 0000C3E4 5A2A -> 00008AD3 5A31 -> 0000D3E9 5A32 -> 0000E6B4 5A33 -> 00008ADA 5A34 -> 0000E6B5 5A35 -> 00008ADB 5A36 -> 0000C8A2 5A37 -> 00008ADC 5A3C -> 0000E6BD 5A3D -> 00008AE1 5A40 -> 0000E6B9 5A41 -> 00008AE4 5A46 -> 0000C6C5 5A47 -> 00008AE9 5A49 -> 0000CDF1 5A4A -> 0000E6BB 5A4B -> 00008AEB 5A55 -> 0000E6BC 5A56 -> 00008AF5 5A5A -> 0000BBE9 5A5B -> 00008AF9 5A61 -> 00008B40 5A62 -> 0000E6BE 5A63 -> 00008B41 5A67 -> 0000E6BA 5A68 -> 00008B45 5A6A -> 0000C0B7 5A6B -> 00008B47 5A74 -> 0000D3A4 5A75 -> 0000E6BF 5A76 -> 0000C9F4 5A77 -> 0000E6C3 5A78 -> 00008B50 5A7A -> 0000E6C4 5A7B -> 00008B52 5A7F -> 0000D0F6 5A80 -> 00008B56 5A92 -> 0000C3BD 5A93 -> 00008B68 5A9A -> 0000C3C4 5A9B -> 0000E6C2 5A9C -> 00008B6F 5AAA -> 0000E6C1 5AAB -> 00008B7D 5AAD -> 00008B80 5AB2 -> 0000E6C7 5AB3 -> 0000CFB1 5AB4 -> 00008B85 5AB5 -> 0000EBF4 5AB6 -> 00008B86 5AB8 -> 0000E6CA 5AB9 -> 00008B88 5ABE -> 0000E6C5 5ABF -> 00008B8D 5AC1 -> 0000BCDE 5AC2 -> 0000C9A9 5AC3 -> 00008B8F 5AC9 -> 0000BCB5 5ACA -> 00008B95 5ACC -> 0000CFD3 5ACD -> 00008B97 5AD2 -> 0000E6C8 5AD3 -> 00008B9C 5AD4 -> 0000E6C9 5AD5 -> 00008B9D 5AD6 -> 0000E6CE 5AD7 -> 00008B9E 5AD8 -> 0000E6D0 5AD9 -> 00008B9F 5ADC -> 0000E6D1 5ADD -> 00008BA2 5AE0 -> 0000E6CB 5AE1 -> 0000B5D5 5AE2 -> 00008BA5 5AE3 -> 0000E6CC 5AE4 -> 00008BA6 5AE6 -> 0000E6CF 5AE7 -> 00008BA8 5AE9 -> 0000C4DB 5AEA -> 00008BAA 5AEB -> 0000E6C6 5AEC -> 00008BAB 5AF1 -> 0000E6CD 5AF2 -> 00008BB0 5B09 -> 0000E6D2 5B0A -> 00008BC7 5B16 -> 0000E6D4 5B17 -> 0000E6D3 5B18 -> 00008BD3 5B32 -> 0000E6D5 5B33 -> 00008BED 5B34 -> 0000D9F8 5B35 -> 00008BEE 5B37 -> 0000E6D6 5B38 -> 00008BF0 5B40 -> 0000E6D7 5B41 -> 00008BF8 5B48 -> 00008C40 5B50 -> 0000D7D3 5B51 -> 0000E6DD 5B52 -> 00008C48 5B53 -> 0000E6DE 5B54 -> 0000BFD7 5B55 -> 0000D4D0 5B56 -> 00008C49 5B57 -> 0000D7D6 5B58 -> 0000B4E6 5B59 -> 0000CBEF 5B5A -> 0000E6DA 5B5B -> 0000D8C3 5B5C -> 0000D7CE 5B5D -> 0000D0A2 5B5E -> 00008C4A 5B5F -> 0000C3CF 5B60 -> 00008C4B 5B62 -> 0000E6DF 5B63 -> 0000BCBE 5B64 -> 0000B9C2 5B65 -> 0000E6DB 5B66 -> 0000D1A7 5B67 -> 00008C4D 5B69 -> 0000BAA2 5B6A -> 0000C2CF 5B6B -> 00008C4F 5B6C -> 0000D8AB 5B6D -> 00008C50 5B70 -> 0000CAEB 5B71 -> 0000E5EE 5B72 -> 00008C53 5B73 -> 0000E6DC 5B74 -> 00008C54 5B75 -> 0000B7F5 5B76 -> 00008C55 5B7A -> 0000C8E6 5B7B -> 00008C59 5B7D -> 0000C4F5 5B7E -> 00008C5B 5B80 -> 0000E5B2 5B81 -> 0000C4FE 5B82 -> 00008C5D 5B83 -> 0000CBFC 5B84 -> 0000E5B3 5B85 -> 0000D5AC 5B86 -> 00008C5E 5B87 -> 0000D3EE 5B88 -> 0000CAD8 5B89 -> 0000B0B2 5B8A -> 00008C5F 5B8B -> 0000CBCE 5B8C -> 0000CDEA 5B8D -> 00008C60 5B8F -> 0000BAEA 5B90 -> 00008C62 5B93 -> 0000E5B5 5B94 -> 00008C65 5B95 -> 0000E5B4 5B96 -> 00008C66 5B97 -> 0000D7DA 5B98 -> 0000B9D9 5B99 -> 0000D6E6 5B9A -> 0000B6A8 5B9B -> 0000CDF0 5B9C -> 0000D2CB 5B9D -> 0000B1A6 5B9E -> 0000CAB5 5B9F -> 00008C67 5BA0 -> 0000B3E8 5BA1 -> 0000C9F3 5BA2 -> 0000BFCD 5BA3 -> 0000D0FB 5BA4 -> 0000CAD2 5BA5 -> 0000E5B6 5BA6 -> 0000BBC2 5BA7 -> 00008C68 5BAA -> 0000CFDC 5BAB -> 0000B9AC 5BAC -> 00008C6B 5BB0 -> 0000D4D7 5BB1 -> 00008C6F 5BB3 -> 0000BAA6 5BB4 -> 0000D1E7 5BB5 -> 0000CFFC 5BB6 -> 0000BCD2 5BB7 -> 00008C71 5BB8 -> 0000E5B7 5BB9 -> 0000C8DD 5BBA -> 00008C72 5BBD -> 0000BFED 5BBE -> 0000B1F6 5BBF -> 0000CBDE 5BC0 -> 00008C75 5BC2 -> 0000BCC5 5BC3 -> 00008C77 5BC4 -> 0000BCC4 5BC5 -> 0000D2FA 5BC6 -> 0000C3DC 5BC7 -> 0000BFDC 5BC8 -> 00008C78 5BCC -> 0000B8BB 5BCD -> 00008C7C 5BD0 -> 0000C3C2 5BD1 -> 00008C80 5BD2 -> 0000BAAE 5BD3 -> 0000D4A2 5BD4 -> 00008C81 5BDD -> 0000C7DE 5BDE -> 0000C4AF 5BDF -> 0000B2EC 5BE0 -> 00008C8A 5BE1 -> 0000B9D1 5BE2 -> 00008C8B 5BE4 -> 0000E5BB 5BE5 -> 0000C1C8 5BE6 -> 00008C8D 5BE8 -> 0000D5AF 5BE9 -> 00008C8F 5BEE -> 0000E5BC 5BEF -> 00008C94 5BF0 -> 0000E5BE 5BF1 -> 00008C95 5BF8 -> 0000B4E7 5BF9 -> 0000B6D4 5BFA -> 0000CBC2 5BFB -> 0000D1B0 5BFC -> 0000B5BC 5BFD -> 00008C9C 5BFF -> 0000CAD9 5C00 -> 00008C9E 5C01 -> 0000B7E2 5C02 -> 00008C9F 5C04 -> 0000C9E4 5C05 -> 00008CA1 5C06 -> 0000BDAB 5C07 -> 00008CA2 5C09 -> 0000CEBE 5C0A -> 0000D7F0 5C0B -> 00008CA4 5C0F -> 0000D0A1 5C10 -> 00008CA8 5C11 -> 0000C9D9 5C12 -> 00008CA9 5C14 -> 0000B6FB 5C15 -> 0000E6D8 5C16 -> 0000BCE2 5C17 -> 00008CAB 5C18 -> 0000B3BE 5C19 -> 00008CAC 5C1A -> 0000C9D0 5C1B -> 00008CAD 5C1C -> 0000E6D9 5C1D -> 0000B3A2 5C1E -> 00008CAE 5C22 -> 0000DECC 5C23 -> 00008CB2 5C24 -> 0000D3C8 5C25 -> 0000DECD 5C26 -> 00008CB3 5C27 -> 0000D2A2 5C28 -> 00008CB4 5C2C -> 0000DECE 5C2D -> 00008CB8 5C31 -> 0000BECD 5C32 -> 00008CBC 5C34 -> 0000DECF 5C35 -> 00008CBE 5C38 -> 0000CAAC 5C39 -> 0000D2FC 5C3A -> 0000B3DF 5C3B -> 0000E5EA 5C3C -> 0000C4E1 5C3D -> 0000BEA1 5C3E -> 0000CEB2 5C3F -> 0000C4F2 5C40 -> 0000BED6 5C41 -> 0000C6A8 5C42 -> 0000B2E3 5C43 -> 00008CC1 5C45 -> 0000BED3 5C46 -> 00008CC3 5C48 -> 0000C7FC 5C49 -> 0000CCEB 5C4A -> 0000BDEC 5C4B -> 0000CEDD 5C4C -> 00008CC5 5C4E -> 0000CABA 5C4F -> 0000C6C1 5C50 -> 0000E5EC 5C51 -> 0000D0BC 5C52 -> 00008CC7 5C55 -> 0000D5B9 5C56 -> 00008CCA 5C59 -> 0000E5ED 5C5A -> 00008CCD 5C5E -> 0000CAF4 5C5F -> 00008CD1 5C60 -> 0000CDC0 5C61 -> 0000C2C5 5C62 -> 00008CD2 5C63 -> 0000E5EF 5C64 -> 00008CD3 5C65 -> 0000C2C4 5C66 -> 0000E5F0 5C67 -> 00008CD4 5C6E -> 0000E5F8 5C6F -> 0000CDCD 5C70 -> 00008CDB 5C71 -> 0000C9BD 5C72 -> 00008CDC 5C79 -> 0000D2D9 5C7A -> 0000E1A8 5C7B -> 00008CE3 5C7F -> 0000D3EC 5C80 -> 00008CE7 5C81 -> 0000CBEA 5C82 -> 0000C6F1 5C83 -> 00008CE8 5C88 -> 0000E1AC 5C89 -> 00008CED 5C8C -> 0000E1A7 5C8D -> 0000E1A9 5C8E -> 00008CF0 5C90 -> 0000E1AA 5C91 -> 0000E1AF 5C92 -> 00008CF2 5C94 -> 0000B2ED 5C95 -> 00008CF4 5C96 -> 0000E1AB 5C97 -> 0000B8DA 5C98 -> 0000E1AD 5C9A -> 0000E1B0 5C9B -> 0000B5BA 5C9C -> 0000E1B1 5C9D -> 00008CF5 5CA2 -> 0000E1B3 5CA3 -> 0000E1B8 5CA4 -> 00008CFA 5CA9 -> 0000D1D2 5CAA -> 00008D40 5CAB -> 0000E1B6 5CAC -> 0000E1B5 5CAD -> 0000C1EB 5CAE -> 00008D41 5CB1 -> 0000E1B7 5CB2 -> 00008D44 5CB3 -> 0000D4C0 5CB4 -> 00008D45 5CB5 -> 0000E1B2 5CB6 -> 00008D46 5CB7 -> 0000E1BA 5CB8 -> 0000B0B6 5CB9 -> 00008D47 5CBD -> 0000E1B4 5CBE -> 00008D4B 5CBF -> 0000BFF9 5CC0 -> 00008D4C 5CC1 -> 0000E1B9 5CC2 -> 00008D4D 5CC4 -> 0000E1BB 5CC5 -> 00008D4F 5CCB -> 0000E1BE 5CCC -> 00008D55 5CD2 -> 0000E1BC 5CD3 -> 00008D5B 5CD9 -> 0000D6C5 5CDA -> 00008D61 5CE1 -> 0000CFBF 5CE2 -> 00008D68 5CE4 -> 0000E1BD 5CE5 -> 0000E1BF 5CE6 -> 0000C2CD 5CE7 -> 00008D6A 5CE8 -> 0000B6EB 5CE9 -> 00008D6B 5CEA -> 0000D3F8 5CEB -> 00008D6C 5CED -> 0000C7CD 5CEE -> 00008D6E 5CF0 -> 0000B7E5 5CF1 -> 00008D70 5CFB -> 0000BEFE 5CFC -> 00008D7A 5D01 -> 00008D80 5D02 -> 0000E1C0 5D04 -> 00008D81 5D06 -> 0000E1C7 5D07 -> 0000B3E7 5D08 -> 00008D83 5D0E -> 0000C6E9 5D0F -> 00008D89 5D14 -> 0000B4DE 5D15 -> 00008D8E 5D16 -> 0000D1C2 5D17 -> 00008D8F 5D1B -> 0000E1C8 5D1C -> 00008D93 5D1E -> 0000E1C6 5D1F -> 00008D95 5D24 -> 0000E1C5 5D25 -> 00008D9A 5D26 -> 0000E1C3 5D27 -> 0000E1C2 5D28 -> 00008D9B 5D29 -> 0000B1C0 5D2A -> 00008D9C 5D2D -> 0000D5B8 5D2E -> 0000E1C4 5D2F -> 00008D9F 5D34 -> 0000E1CB 5D35 -> 00008DA4 5D3D -> 0000E1CC 5D3E -> 0000E1CA 5D3F -> 00008DAC 5D47 -> 0000EFFA 5D48 -> 00008DB4 5D4A -> 0000E1D3 5D4B -> 0000E1D2 5D4C -> 0000C7B6 5D4D -> 00008DB6 5D58 -> 0000E1C9 5D59 -> 00008DC1 5D5B -> 0000E1CE 5D5C -> 00008DC3 5D5D -> 0000E1D0 5D5E -> 00008DC4 5D69 -> 0000E1D4 5D6A -> 00008DCF 5D6B -> 0000E1D1 5D6C -> 0000E1CD 5D6D -> 00008DD0 5D6F -> 0000E1CF 5D70 -> 00008DD2 5D74 -> 0000E1D5 5D75 -> 00008DD6 5D82 -> 0000E1D6 5D83 -> 00008DE3 5D99 -> 0000E1D7 5D9A -> 00008DF9 5D9D -> 0000E1D8 5D9E -> 00008DFC 5DA1 -> 00008E40 5DB7 -> 0000E1DA 5DB8 -> 00008E56 5DC5 -> 0000E1DB 5DC6 -> 00008E63 5DCD -> 0000CEA1 5DCE -> 00008E6A 5DDB -> 0000E7DD 5DDC -> 00008E77 5DDD -> 0000B4A8 5DDE -> 0000D6DD 5DDF -> 00008E78 5DE1 -> 0000D1B2 5DE2 -> 0000B3B2 5DE3 -> 00008E7A 5DE5 -> 0000B9A4 5DE6 -> 0000D7F3 5DE7 -> 0000C7C9 5DE8 -> 0000BEDE 5DE9 -> 0000B9AE 5DEA -> 00008E7C 5DEB -> 0000CED7 5DEC -> 00008E7D 5DEE -> 0000B2EE 5DEF -> 0000DBCF 5DF0 -> 00008E80 5DF1 -> 0000BCBA 5DF2 -> 0000D2D1 5DF3 -> 0000CBC8 5DF4 -> 0000B0CD 5DF5 -> 00008E81 5DF7 -> 0000CFEF 5DF8 -> 00008E83 5DFD -> 0000D9E3 5DFE -> 0000BDED 5DFF -> 00008E88 5E01 -> 0000B1D2 5E02 -> 0000CAD0 5E03 -> 0000B2BC 5E04 -> 00008E8A 5E05 -> 0000CBA7 5E06 -> 0000B7AB 5E07 -> 00008E8B 5E08 -> 0000CAA6 5E09 -> 00008E8C 5E0C -> 0000CFA3 5E0D -> 00008E8F 5E0F -> 0000E0F8 5E10 -> 0000D5CA 5E11 -> 0000E0FB 5E12 -> 00008E91 5E14 -> 0000E0FA 5E15 -> 0000C5C1 5E16 -> 0000CCFB 5E17 -> 00008E93 5E18 -> 0000C1B1 5E19 -> 0000E0F9 5E1A -> 0000D6E3 5E1B -> 0000B2AF 5E1C -> 0000D6C4 5E1D -> 0000B5DB 5E1E -> 00008E94 5E26 -> 0000B4F8 5E27 -> 0000D6A1 5E28 -> 00008E9C 5E2D -> 0000CFAF 5E2E -> 0000B0EF 5E2F -> 00008EA1 5E31 -> 0000E0FC 5E32 -> 00008EA3 5E37 -> 0000E1A1 5E38 -> 0000B3A3 5E39 -> 00008EA8 5E3B -> 0000E0FD 5E3D -> 0000C3B1 5E3E -> 00008EAA 5E42 -> 0000C3DD 5E43 -> 00008EAE 5E44 -> 0000E1A2 5E45 -> 0000B7F9 5E46 -> 00008EAF 5E4C -> 0000BBCF 5E4D -> 00008EB5 5E54 -> 0000E1A3 5E55 -> 0000C4BB 5E56 -> 00008EBC 5E5B -> 0000E1A4 5E5C -> 00008EC1 5E5E -> 0000E1A5 5E5F -> 00008EC3 5E61 -> 0000E1A6 5E62 -> 0000B4B1 5E63 -> 00008EC5 5E72 -> 0000B8C9 5E73 -> 0000C6BD 5E74 -> 0000C4EA 5E75 -> 00008ED4 5E76 -> 0000B2A2 5E77 -> 00008ED5 5E78 -> 0000D0D2 5E79 -> 00008ED6 5E7A -> 0000E7DB 5E7B -> 0000BBC3 5E7C -> 0000D3D7 5E7D -> 0000D3C4 5E7E -> 00008ED7 5E7F -> 0000B9E3 5E80 -> 0000E2CF 5E81 -> 00008ED8 5E84 -> 0000D7AF 5E85 -> 00008EDB 5E86 -> 0000C7EC 5E87 -> 0000B1D3 5E88 -> 00008EDC 5E8A -> 0000B4B2 5E8B -> 0000E2D1 5E8C -> 00008EDE 5E8F -> 0000D0F2 5E90 -> 0000C2AE 5E91 -> 0000E2D0 5E92 -> 00008EE1 5E93 -> 0000BFE2 5E94 -> 0000D3A6 5E95 -> 0000B5D7 5E96 -> 0000E2D2 5E97 -> 0000B5EA 5E98 -> 00008EE2 5E99 -> 0000C3ED 5E9A -> 0000B8FD 5E9B -> 00008EE3 5E9C -> 0000B8AE 5E9D -> 00008EE4 5E9E -> 0000C5D3 5E9F -> 0000B7CF 5EA0 -> 0000E2D4 5EA1 -> 00008EE5 5EA5 -> 0000E2D3 5EA6 -> 0000B6C8 5EA7 -> 0000D7F9 5EA8 -> 00008EE9 5EAD -> 0000CDA5 5EAE -> 00008EEE 5EB3 -> 0000E2D8 5EB4 -> 00008EF3 5EB5 -> 0000E2D6 5EB6 -> 0000CAFC 5EB7 -> 0000BFB5 5EB8 -> 0000D3B9 5EB9 -> 0000E2D5 5EBA -> 00008EF4 5EBE -> 0000E2D7 5EBF -> 00008EF8 5EC6 -> 00008F40 5EC9 -> 0000C1AE 5ECA -> 0000C0C8 5ECB -> 00008F43 5ED1 -> 0000E2DB 5ED2 -> 0000E2DA 5ED3 -> 0000C0AA 5ED4 -> 00008F49 5ED6 -> 0000C1CE 5ED7 -> 00008F4B 5EDB -> 0000E2DC 5EDC -> 00008F4F 5EE8 -> 0000E2DD 5EE9 -> 00008F5B 5EEA -> 0000E2DE 5EEB -> 00008F5C 5EF4 -> 0000DBC8 5EF5 -> 00008F65 5EF6 -> 0000D1D3 5EF7 -> 0000CDA2 5EF8 -> 00008F66 5EFA -> 0000BDA8 5EFB -> 00008F68 5EFE -> 0000DEC3 5EFF -> 0000D8A5 5F00 -> 0000BFAA 5F01 -> 0000DBCD 5F02 -> 0000D2EC 5F03 -> 0000C6FA 5F04 -> 0000C5AA 5F05 -> 00008F6B 5F08 -> 0000DEC4 5F09 -> 00008F6E 5F0A -> 0000B1D7 5F0B -> 0000DFAE 5F0C -> 00008F6F 5F0F -> 0000CABD 5F10 -> 00008F72 5F11 -> 0000DFB1 5F12 -> 00008F73 5F13 -> 0000B9AD 5F14 -> 00008F74 5F15 -> 0000D2FD 5F16 -> 00008F75 5F17 -> 0000B8A5 5F18 -> 0000BAEB 5F19 -> 00008F76 5F1B -> 0000B3DA 5F1C -> 00008F78 5F1F -> 0000B5DC 5F20 -> 0000D5C5 5F21 -> 00008F7B 5F25 -> 0000C3D6 5F26 -> 0000CFD2 5F27 -> 0000BBA1 5F28 -> 00008F80 5F29 -> 0000E5F3 5F2A -> 0000E5F2 5F2B -> 00008F81 5F2D -> 0000E5F4 5F2E -> 00008F83 5F2F -> 0000CDE4 5F30 -> 00008F84 5F31 -> 0000C8F5 5F32 -> 00008F85 5F39 -> 0000B5AF 5F3A -> 0000C7BF 5F3B -> 00008F8C 5F3C -> 0000E5F6 5F3D -> 00008F8D 5F40 -> 0000ECB0 5F41 -> 00008F90 5F50 -> 0000E5E6 5F51 -> 00008F9F 5F52 -> 0000B9E9 5F53 -> 0000B5B1 5F54 -> 00008FA0 5F55 -> 0000C2BC 5F56 -> 0000E5E8 5F57 -> 0000E5E7 5F58 -> 0000E5E9 5F59 -> 00008FA1 5F5D -> 0000D2CD 5F5E -> 00008FA5 5F61 -> 0000E1EA 5F62 -> 0000D0CE 5F63 -> 00008FA8 5F64 -> 0000CDAE 5F65 -> 00008FA9 5F66 -> 0000D1E5 5F67 -> 00008FAA 5F69 -> 0000B2CA 5F6A -> 0000B1EB 5F6B -> 00008FAC 5F6C -> 0000B1F2 5F6D -> 0000C5ED 5F6E -> 00008FAD 5F70 -> 0000D5C3 5F71 -> 0000D3B0 5F72 -> 00008FAF 5F73 -> 0000E1DC 5F74 -> 00008FB0 5F77 -> 0000E1DD 5F78 -> 00008FB3 5F79 -> 0000D2DB 5F7A -> 00008FB4 5F7B -> 0000B3B9 5F7C -> 0000B1CB 5F7D -> 00008FB5 5F80 -> 0000CDF9 5F81 -> 0000D5F7 5F82 -> 0000E1DE 5F83 -> 00008FB8 5F84 -> 0000BEB6 5F85 -> 0000B4FD 5F86 -> 00008FB9 5F87 -> 0000E1DF 5F88 -> 0000BADC 5F89 -> 0000E1E0 5F8A -> 0000BBB2 5F8B -> 0000C2C9 5F8C -> 0000E1E1 5F8D -> 00008FBA 5F90 -> 0000D0EC 5F91 -> 00008FBD 5F92 -> 0000CDBD 5F93 -> 00008FBE 5F95 -> 0000E1E2 5F96 -> 00008FC0 5F97 -> 0000B5C3 5F98 -> 0000C5C7 5F99 -> 0000E1E3 5F9A -> 00008FC1 5F9C -> 0000E1E4 5F9D -> 00008FC3 5FA1 -> 0000D3F9 5FA2 -> 00008FC7 5FA8 -> 0000E1E5 5FA9 -> 00008FCD 5FAA -> 0000D1AD 5FAB -> 00008FCE 5FAD -> 0000E1E6 5FAE -> 0000CEA2 5FAF -> 00008FD0 5FB5 -> 0000E1E7 5FB6 -> 00008FD6 5FB7 -> 0000B5C2 5FB8 -> 00008FD7 5FBC -> 0000E1E8 5FBD -> 0000BBD5 5FBE -> 00008FDB 5FC3 -> 0000D0C4 5FC4 -> 0000E2E0 5FC5 -> 0000B1D8 5FC6 -> 0000D2E4 5FC7 -> 00008FE0 5FC9 -> 0000E2E1 5FCA -> 00008FE2 5FCC -> 0000BCC9 5FCD -> 0000C8CC 5FCE -> 00008FE4 5FCF -> 0000E2E3 5FD0 -> 0000ECFE 5FD1 -> 0000ECFD 5FD2 -> 0000DFAF 5FD3 -> 00008FE5 5FD6 -> 0000E2E2 5FD7 -> 0000D6BE 5FD8 -> 0000CDFC 5FD9 -> 0000C3A6 5FDA -> 00008FE8 5FDD -> 0000E3C3 5FDE -> 00008FEB 5FE0 -> 0000D6D2 5FE1 -> 0000E2E7 5FE2 -> 00008FED 5FE4 -> 0000E2E8 5FE5 -> 00008FEF 5FE7 -> 0000D3C7 5FE8 -> 00008FF1 5FEA -> 0000E2EC 5FEB -> 0000BFEC 5FEC -> 00008FF3 5FED -> 0000E2ED 5FEE -> 0000E2E5 5FEF -> 00008FF4 5FF1 -> 0000B3C0 5FF2 -> 00008FF6 5FF5 -> 0000C4EE 5FF6 -> 00008FF9 5FF8 -> 0000E2EE 5FF9 -> 00008FFB 5FFB -> 0000D0C3 5FFC -> 00008FFD 5FFD -> 0000BAF6 5FFE -> 0000E2E9 5FFF -> 0000B7DE 6000 -> 0000BBB3 6001 -> 0000CCAC 6002 -> 0000CBCB 6003 -> 0000E2E4 6004 -> 0000E2E6 6005 -> 0000E2EA 6007 -> 00008FFE 6008 -> 00009040 600A -> 0000E2F7 600B -> 00009042 600D -> 0000E2F4 600E -> 0000D4F5 600F -> 0000E2F3 6010 -> 00009044 6012 -> 0000C5AD 6013 -> 00009046 6014 -> 0000D5FA 6015 -> 0000C5C2 6016 -> 0000B2C0 6017 -> 00009047 6019 -> 0000E2EF 601A -> 00009049 601B -> 0000E2F2 601C -> 0000C1AF 601D -> 0000CBBC 601E -> 0000904A 6020 -> 0000B5A1 6021 -> 0000E2F9 6022 -> 0000904C 6025 -> 0000BCB1 6026 -> 0000E2F1 6027 -> 0000D0D4 6028 -> 0000D4B9 6029 -> 0000E2F5 602A -> 0000B9D6 602B -> 0000E2F6 602C -> 0000904F 602F -> 0000C7D3 6030 -> 00009052 6035 -> 0000E2F0 6036 -> 00009057 603B -> 0000D7DC 603C -> 0000EDA1 603D -> 0000905C 603F -> 0000E2F8 6040 -> 0000905E 6041 -> 0000EDA5 6042 -> 0000E2FE 6043 -> 0000CAD1 6044 -> 0000905F 604B -> 0000C1B5 604C -> 00009066 604D -> 0000BBD0 604E -> 00009067 6050 -> 0000BFD6 6051 -> 00009069 6052 -> 0000BAE3 6053 -> 0000906A 6055 -> 0000CBA1 6056 -> 0000906C 6059 -> 0000EDA6 605A -> 0000EDA3 605B -> 0000906F 605D -> 0000EDA2 605E -> 00009071 6062 -> 0000BBD6 6063 -> 0000EDA7 6064 -> 0000D0F4 6065 -> 00009075 6067 -> 0000EDA4 6068 -> 0000BADE 6069 -> 0000B6F7 606A -> 0000E3A1 606B -> 0000B6B2 606C -> 0000CCF1 606D -> 0000B9A7 606E -> 00009077 606F -> 0000CFA2 6070 -> 0000C7A1 6071 -> 00009078 6073 -> 0000BFD2 6074 -> 0000907A 6076 -> 0000B6F1 6077 -> 0000907C 6078 -> 0000E2FA 607A -> 0000E2FD 607B -> 0000E2FC 607C -> 0000C4D5 607D -> 0000E3A2 607E -> 0000907D 607F -> 0000D3C1 6080 -> 0000907E 6081 -> 00009080 6083 -> 0000E3A7 6084 -> 0000C7C4 6085 -> 00009082 6089 -> 0000CFA4 608A -> 00009086 608C -> 0000E3A9 608D -> 0000BAB7 608E -> 00009088 6092 -> 0000E3A8 6093 -> 0000908C 6094 -> 0000BBDA 6095 -> 0000908D 6096 -> 0000E3A3 6097 -> 0000908E 609A -> 0000E3A4 609B -> 0000E3AA 609C -> 00009091 609D -> 0000E3A6 609E -> 00009092 609F -> 0000CEF2 60A0 -> 0000D3C6 60A1 -> 00009093 60A3 -> 0000BBBC 60A4 -> 00009095 60A6 -> 0000D4C3 60A7 -> 00009097 60A8 -> 0000C4FA 60A9 -> 00009098 60AB -> 0000EDA8 60AC -> 0000D0FC 60AD -> 0000E3A5 60AE -> 0000909A 60AF -> 0000C3F5 60B0 -> 0000909B 60B1 -> 0000E3AD 60B2 -> 0000B1AF 60B3 -> 0000909C 60B4 -> 0000E3B2 60B5 -> 0000909D 60B8 -> 0000BCC2 60B9 -> 000090A0 60BB -> 0000E3AC 60BC -> 0000B5BF 60BD -> 000090A2 60C5 -> 0000C7E9 60C6 -> 0000E3B0 60C7 -> 000090AA 60CA -> 0000BEAA 60CB -> 0000CDEF 60CC -> 000090AD 60D1 -> 0000BBF3 60D2 -> 000090B2 60D5 -> 0000CCE8 60D6 -> 000090B5 60D8 -> 0000E3AF 60D9 -> 000090B7 60DA -> 0000E3B1 60DB -> 000090B8 60DC -> 0000CFA7 60DD -> 0000E3AE 60DE -> 000090B9 60DF -> 0000CEA9 60E0 -> 0000BBDD 60E1 -> 000090BA 60E6 -> 0000B5EB 60E7 -> 0000BEE5 60E8 -> 0000B2D2 60E9 -> 0000B3CD 60EA -> 000090BF 60EB -> 0000B1B9 60EC -> 0000E3AB 60ED -> 0000B2D1 60EE -> 0000B5AC 60EF -> 0000B9DF 60F0 -> 0000B6E8 60F1 -> 000090C0 60F3 -> 0000CFEB 60F4 -> 0000E3B7 60F5 -> 000090C2 60F6 -> 0000BBCC 60F7 -> 000090C3 60F9 -> 0000C8C7 60FA -> 0000D0CA 60FB -> 000090C5 6100 -> 0000E3B8 6101 -> 0000B3EE 6102 -> 000090CA 6106 -> 0000EDA9 6107 -> 000090CE 6108 -> 0000D3FA 6109 -> 0000D3E4 610A -> 000090CF 610D -> 0000EDAA 610E -> 0000E3B9 610F -> 0000D2E2 6110 -> 000090D2 6115 -> 0000E3B5 6116 -> 000090D7 611A -> 0000D3DE 611B -> 000090DB 611F -> 0000B8D0 6120 -> 0000E3B3 6121 -> 000090DF 6123 -> 0000E3B6 6124 -> 0000B7DF 6125 -> 000090E1 6126 -> 0000E3B4 6127 -> 0000C0A2 6128 -> 000090E2 612B -> 0000E3BA 612C -> 000090E5 613F -> 0000D4B8 6140 -> 000090F8 6147 -> 00009140 6148 -> 0000B4C8 6149 -> 00009141 614A -> 0000E3BB 614B -> 00009142 614C -> 0000BBC5 614D -> 00009143 614E -> 0000C9F7 614F -> 00009144 6151 -> 0000C9E5 6152 -> 00009146 6155 -> 0000C4BD 6156 -> 00009149 615D -> 0000EDAB 615E -> 00009150 6162 -> 0000C2FD 6163 -> 00009154 6167 -> 0000BBDB 6168 -> 0000BFAE 6169 -> 00009158 6170 -> 0000CEBF 6171 -> 0000915F 6175 -> 0000E3BC 6176 -> 00009163 6177 -> 0000BFB6 6178 -> 00009164 618B -> 0000B1EF 618C -> 00009177 618E -> 0000D4F7 618F -> 00009179 6194 -> 0000E3BE 6195 -> 0000917E 6196 -> 00009180 619D -> 0000EDAD 619E -> 00009187 61A7 -> 0000E3BF 61A8 -> 0000BAA9 61A9 -> 0000EDAC 61AA -> 00009190 61AC -> 0000E3BD 61AD -> 00009192 61B7 -> 0000E3C0 61B8 -> 0000919C 61BE -> 0000BAB6 61BF -> 000091A2 61C2 -> 0000B6AE 61C3 -> 000091A5 61C8 -> 0000D0B8 61C9 -> 000091AA 61CA -> 0000B0C3 61CB -> 0000EDAE 61CC -> 000091AB 61D1 -> 0000EDAF 61D2 -> 0000C0C1 61D3 -> 000091B0 61D4 -> 0000E3C1 61D5 -> 000091B1 61E6 -> 0000C5B3 61E7 -> 000091C2 61F5 -> 0000E3C2 61F6 -> 000091D0 61FF -> 0000DCB2 6200 -> 000091D9 6206 -> 0000EDB0 6207 -> 000091DF 6208 -> 0000B8EA 6209 -> 000091E0 620A -> 0000CEEC 620B -> 0000EAA7 620C -> 0000D0E7 620D -> 0000CAF9 620E -> 0000C8D6 620F -> 0000CFB7 6210 -> 0000B3C9 6211 -> 0000CED2 6212 -> 0000BDE4 6213 -> 000091E1 6215 -> 0000E3DE 6216 -> 0000BBF2 6217 -> 0000EAA8 6218 -> 0000D5BD 6219 -> 000091E3 621A -> 0000C6DD 621B -> 0000EAA9 621C -> 000091E4 621F -> 0000EAAA 6220 -> 000091E7 6221 -> 0000EAAC 6222 -> 0000EAAB 6223 -> 000091E8 6224 -> 0000EAAE 6225 -> 0000EAAD 6226 -> 000091E9 622A -> 0000BDD8 622B -> 000091ED 622C -> 0000EAAF 622D -> 000091EE 622E -> 0000C2BE 622F -> 000091EF 6233 -> 0000B4C1 6234 -> 0000B4F7 6235 -> 000091F3 6237 -> 0000BBA7 6238 -> 000091F5 623D -> 0000ECE6 623E -> 0000ECE5 623F -> 0000B7BF 6240 -> 0000CBF9 6241 -> 0000B1E2 6242 -> 000091FA 6243 -> 0000ECE7 6244 -> 000091FB 6247 -> 0000C9C8 6248 -> 0000ECE8 624A -> 000091FE 624B -> 0000CAD6 624C -> 0000DED0 624D -> 0000B2C5 624E -> 0000D4FA 624F -> 00009240 6251 -> 0000C6CB 6252 -> 0000B0C7 6253 -> 0000B4F2 6254 -> 0000C8D3 6255 -> 00009242 6258 -> 0000CDD0 6259 -> 00009245 625B -> 0000BFB8 625C -> 00009247 6263 -> 0000BFDB 6264 -> 0000924E 6266 -> 0000C7A4 6267 -> 0000D6B4 6268 -> 00009250 6269 -> 0000C0A9 626A -> 0000DED1 626B -> 0000C9A8 626C -> 0000D1EF 626D -> 0000C5A4 626E -> 0000B0E7 626F -> 0000B3B6 6270 -> 0000C8C5 6271 -> 00009251 6273 -> 0000B0E2 6274 -> 00009253 6276 -> 0000B7F6 6277 -> 00009255 6279 -> 0000C5FA 627A -> 00009257 627C -> 0000B6F3 627D -> 00009259 627E -> 0000D5D2 627F -> 0000B3D0 6280 -> 0000BCBC 6281 -> 0000925A 6284 -> 0000B3AD 6285 -> 0000925D 6289 -> 0000BEF1 628A -> 0000B0D1 628B -> 00009261 6291 -> 0000D2D6 6292 -> 0000CAE3 6293 -> 0000D7A5 6294 -> 00009267 6295 -> 0000CDB6 6296 -> 0000B6B6 6297 -> 0000BFB9 6298 -> 0000D5DB 6299 -> 00009268 629A -> 0000B8A7 629B -> 0000C5D7 629C -> 00009269 629F -> 0000DED2 62A0 -> 0000BFD9 62A1 -> 0000C2D5 62A2 -> 0000C7C0 62A3 -> 0000926C 62A4 -> 0000BBA4 62A5 -> 0000B1A8 62A6 -> 0000926D 62A8 -> 0000C5EA 62A9 -> 0000926F 62AB -> 0000C5FB 62AC -> 0000CCA7 62AD -> 00009271 62B1 -> 0000B1A7 62B2 -> 00009275 62B5 -> 0000B5D6 62B6 -> 00009278 62B9 -> 0000C4A8 62BA -> 0000927B 62BB -> 0000DED3 62BC -> 0000D1BA 62BD -> 0000B3E9 62BE -> 0000927C 62BF -> 0000C3F2 62C0 -> 0000927D 62C2 -> 0000B7F7 62C3 -> 00009280 62C4 -> 0000D6F4 62C5 -> 0000B5A3 62C6 -> 0000B2F0 62C7 -> 0000C4B4 62C8 -> 0000C4E9 62C9 -> 0000C0AD 62CA -> 0000DED4 62CB -> 00009281 62CC -> 0000B0E8 62CD -> 0000C5C4 62CE -> 0000C1E0 62CF -> 00009282 62D0 -> 0000B9D5 62D1 -> 00009283 62D2 -> 0000BEDC 62D3 -> 0000CDD8 62D4 -> 0000B0CE 62D5 -> 00009284 62D6 -> 0000CDCF 62D7 -> 0000DED6 62D8 -> 0000BED0 62D9 -> 0000D7BE 62DA -> 0000DED5 62DB -> 0000D5D0 62DC -> 0000B0DD 62DD -> 00009285 62DF -> 0000C4E2 62E0 -> 00009287 62E2 -> 0000C2A3 62E3 -> 0000BCF0 62E4 -> 00009289 62E5 -> 0000D3B5 62E6 -> 0000C0B9 62E7 -> 0000C5A1 62E8 -> 0000B2A6 62E9 -> 0000D4F1 62EA -> 0000928A 62EC -> 0000C0A8 62ED -> 0000CAC3 62EE -> 0000DED7 62EF -> 0000D5FC 62F0 -> 0000928C 62F1 -> 0000B9B0 62F2 -> 0000928D 62F3 -> 0000C8AD 62F4 -> 0000CBA9 62F5 -> 0000928E 62F6 -> 0000DED9 62F7 -> 0000BFBD 62F8 -> 0000928F 62FC -> 0000C6B4 62FD -> 0000D7A7 62FE -> 0000CAB0 62FF -> 0000C4C3 6300 -> 00009293 6301 -> 0000B3D6 6302 -> 0000B9D2 6303 -> 00009294 6307 -> 0000D6B8 6308 -> 0000EAFC 6309 -> 0000B0B4 630A -> 00009298 630E -> 0000BFE6 630F -> 0000929C 6311 -> 0000CCF4 6312 -> 0000929E 6316 -> 0000CDDA 6317 -> 000092A2 631A -> 0000D6BF 631B -> 0000C2CE 631C -> 000092A5 631D -> 0000CECE 631E -> 0000CCA2 631F -> 0000D0AE 6320 -> 0000C4D3 6321 -> 0000B5B2 6322 -> 0000DED8 6323 -> 0000D5F5 6324 -> 0000BCB7 6325 -> 0000BBD3 6326 -> 000092A6 6328 -> 0000B0A4 6329 -> 000092A8 632A -> 0000C5B2 632B -> 0000B4EC 632C -> 000092A9 632F -> 0000D5F1 6330 -> 000092AC 6332 -> 0000EAFD 6333 -> 000092AE 6339 -> 0000DEDA 633A -> 0000CDA6 633B -> 000092B4 633D -> 0000CDEC 633E -> 000092B6 6342 -> 0000CEE6 6343 -> 0000DEDC 6344 -> 000092BA 6345 -> 0000CDB1 6346 -> 0000C0A6 6347 -> 000092BB 6349 -> 0000D7BD 634A -> 000092BD 634B -> 0000DEDB 634C -> 0000B0C6 634D -> 0000BAB4 634E -> 0000C9D3 634F -> 0000C4F3 6350 -> 0000BEE8 6351 -> 000092BE 6355 -> 0000B2B6 6356 -> 000092C2 635E -> 0000C0CC 635F -> 0000CBF0 6360 -> 000092CA 6361 -> 0000BCF1 6362 -> 0000BBBB 6363 -> 0000B5B7 6364 -> 000092CB 6367 -> 0000C5F5 6368 -> 000092CE 6369 -> 0000DEE6 636A -> 000092CF 636D -> 0000DEE3 636E -> 0000BEDD 636F -> 000092D2 6371 -> 0000DEDF 6372 -> 000092D4 6376 -> 0000B4B7 6377 -> 0000BDDD 6378 -> 000092D8 637A -> 0000DEE0 637B -> 0000C4ED 637C -> 000092DA 6380 -> 0000CFC6 6381 -> 000092DE 6382 -> 0000B5E0 6383 -> 000092DF 6387 -> 0000B6DE 6388 -> 0000CADA 6389 -> 0000B5F4 638A -> 0000DEE5 638B -> 000092E3 638C -> 0000D5C6 638D -> 000092E4 638E -> 0000DEE1 638F -> 0000CCCD 6390 -> 0000C6FE 6391 -> 000092E5 6392 -> 0000C5C5 6393 -> 000092E6 6396 -> 0000D2B4 6397 -> 000092E9 6398 -> 0000BEF2 6399 -> 000092EA 63A0 -> 0000C2D3 63A1 -> 000092F1 63A2 -> 0000CCBD 63A3 -> 0000B3B8 63A4 -> 000092F2 63A5 -> 0000BDD3 63A6 -> 000092F3 63A7 -> 0000BFD8 63A8 -> 0000CDC6 63A9 -> 0000D1DA 63AA -> 0000B4EB 63AB -> 000092F4 63AC -> 0000DEE4 63AD -> 0000DEDD 63AE -> 0000DEE7 63AF -> 000092F5 63B0 -> 0000EAFE 63B1 -> 000092F6 63B3 -> 0000C2B0 63B4 -> 0000DEE2 63B5 -> 000092F8 63B7 -> 0000D6C0 63B8 -> 0000B5A7 63B9 -> 000092FA 63BA -> 0000B2F4 63BB -> 000092FB 63BC -> 0000DEE8 63BD -> 000092FC 63BE -> 0000DEF2 63BF -> 000092FD 63C1 -> 00009340 63C4 -> 0000DEED 63C5 -> 00009343 63C6 -> 0000DEF1 63C7 -> 00009344 63C9 -> 0000C8E0 63CA -> 00009346 63CD -> 0000D7E1 63CE -> 0000DEEF 63CF -> 0000C3E8 63D0 -> 0000CCE1 63D1 -> 00009349 63D2 -> 0000B2E5 63D3 -> 0000934A 63D6 -> 0000D2BE 63D7 -> 0000934D 63DE -> 0000DEEE 63DF -> 00009354 63E0 -> 0000DEEB 63E1 -> 0000CED5 63E2 -> 00009355 63E3 -> 0000B4A7 63E4 -> 00009356 63E9 -> 0000BFAB 63EA -> 0000BEBE 63EB -> 0000935B 63ED -> 0000BDD2 63EE -> 0000935D 63F2 -> 0000DEE9 63F3 -> 00009361 63F4 -> 0000D4AE 63F5 -> 00009362 63F6 -> 0000DEDE 63F7 -> 00009363 63F8 -> 0000DEEA 63F9 -> 00009364 63FD -> 0000C0BF 63FE -> 00009368 63FF -> 0000DEEC 6400 -> 0000B2F3 6401 -> 0000B8E9 6402 -> 0000C2A7 6403 -> 00009369 6405 -> 0000BDC1 6406 -> 0000936B 640B -> 0000DEF5 640C -> 0000DEF8 640D -> 00009370 640F -> 0000B2AB 6410 -> 0000B4A4 6411 -> 00009372 6413 -> 0000B4EA 6414 -> 0000C9A6 6415 -> 00009374 641B -> 0000DEF6 641C -> 0000CBD1 641D -> 0000937A 641E -> 0000B8E3 641F -> 0000937B 6420 -> 0000DEF7 6421 -> 0000DEFA 6422 -> 0000937C 6425 -> 00009380 6426 -> 0000DEF9 6427 -> 00009381 642A -> 0000CCC2 642B -> 00009384 642C -> 0000B0E1 642D -> 0000B4EE 642E -> 00009385 6434 -> 0000E5BA 6435 -> 0000938B 643A -> 0000D0AF 643B -> 00009390 643D -> 0000B2EB 643E -> 00009392 643F -> 0000EBA1 6440 -> 00009393 6441 -> 0000DEF4 6442 -> 00009394 6444 -> 0000C9E3 6445 -> 0000DEF3 6446 -> 0000B0DA 6447 -> 0000D2A1 6448 -> 0000B1F7 6449 -> 00009396 644A -> 0000CCAF 644B -> 00009397 6452 -> 0000DEF0 6453 -> 0000939E 6454 -> 0000CBA4 6455 -> 0000939F 6458 -> 0000D5AA 6459 -> 000093A2 645E -> 0000DEFB 645F -> 000093A7 6467 -> 0000B4DD 6468 -> 000093AF 6469 -> 0000C4A6 646A -> 000093B0 646D -> 0000DEFD 646E -> 000093B3 6478 -> 0000C3FE 6479 -> 0000C4A1 647A -> 0000DFA1 647B -> 000093BD 6482 -> 0000C1CC 6483 -> 000093C4 6484 -> 0000DEFC 6485 -> 0000BEEF 6486 -> 000093C5 6487 -> 0000C6B2 6488 -> 000093C6 6491 -> 0000B3C5 6492 -> 0000C8F6 6493 -> 000093CF 6495 -> 0000CBBA 6496 -> 0000DEFE 6497 -> 000093D1 6499 -> 0000DFA4 649A -> 000093D3 649E -> 0000D7B2 649F -> 000093D7 64A4 -> 0000B3B7 64A5 -> 000093DC 64A9 -> 0000C1C3 64AA -> 000093E0 64AC -> 0000C7CB 64AD -> 0000B2A5 64AE -> 0000B4E9 64AF -> 000093E2 64B0 -> 0000D7AB 64B1 -> 000093E3 64B5 -> 0000C4EC 64B6 -> 000093E7 64B7 -> 0000DFA2 64B9 -> 000093E8 64BA -> 0000DFA5 64BB -> 000093E9 64BC -> 0000BAB3 64BD -> 000093EA 64C0 -> 0000DFA6 64C1 -> 000093ED 64C2 -> 0000C0DE 64C3 -> 000093EE 64C5 -> 0000C9C3 64C6 -> 000093F0 64CD -> 0000B2D9 64CE -> 0000C7E6 64CF -> 000093F7 64D0 -> 0000DFA7 64D1 -> 000093F8 64D2 -> 0000C7DC 64D3 -> 000093F9 64D7 -> 0000DFA8 64D8 -> 0000EBA2 64D9 -> 000093FD 64DB -> 00009440 64DE -> 0000CBD3 64DF -> 00009443 64E2 -> 0000DFAA 64E3 -> 00009446 64E4 -> 0000DFA9 64E5 -> 00009447 64E6 -> 0000B2C1 64E7 -> 00009448 6500 -> 0000C5CA 6501 -> 00009461 6509 -> 0000DFAB 650A -> 00009469 6512 -> 0000D4DC 6513 -> 00009471 6518 -> 0000C8C1 6519 -> 00009476 6522 -> 00009480 6525 -> 0000DFAC 6526 -> 00009483 652B -> 0000BEF0 652C -> 00009488 652E -> 0000DFAD 652F -> 0000D6A7 6530 -> 0000948A 6534 -> 0000EAB7 6535 -> 0000EBB6 6536 -> 0000CAD5 6537 -> 0000948E 6538 -> 0000D8FC 6539 -> 0000B8C4 653A -> 0000948F 653B -> 0000B9A5 653C -> 00009490 653E -> 0000B7C5 653F -> 0000D5FE 6540 -> 00009492 6545 -> 0000B9CA 6546 -> 00009497 6548 -> 0000D0A7 6549 -> 0000F4CD 654A -> 00009499 654C -> 0000B5D0 654D -> 0000949B 654F -> 0000C3F4 6550 -> 0000949D 6551 -> 0000BEC8 6552 -> 0000949E 6555 -> 0000EBB7 6556 -> 0000B0BD 6557 -> 000094A1 6559 -> 0000BDCC 655A -> 000094A3 655B -> 0000C1B2 655C -> 000094A4 655D -> 0000B1D6 655E -> 0000B3A8 655F -> 000094A5 6562 -> 0000B8D2 6563 -> 0000C9A2 6564 -> 000094A8 6566 -> 0000B6D8 6567 -> 000094AA 656B -> 0000EBB8 656C -> 0000BEB4 656D -> 000094AE 6570 -> 0000CAFD 6571 -> 000094B1 6572 -> 0000C7C3 6573 -> 000094B2 6574 -> 0000D5FB 6575 -> 000094B3 6577 -> 0000B7F3 6578 -> 000094B5 6587 -> 0000CEC4 6588 -> 000094C4 658B -> 0000D5AB 658C -> 0000B1F3 658D -> 000094C7 6590 -> 0000ECB3 6591 -> 0000B0DF 6592 -> 000094CA 6593 -> 0000ECB5 6594 -> 000094CB 6597 -> 0000B6B7 6598 -> 000094CE 6599 -> 0000C1CF 659A -> 000094CF 659B -> 0000F5FA 659C -> 0000D0B1 659D -> 000094D0 659F -> 0000D5E5 65A0 -> 000094D2 65A1 -> 0000CED3 65A2 -> 000094D3 65A4 -> 0000BDEF 65A5 -> 0000B3E2 65A6 -> 000094D5 65A7 -> 0000B8AB 65A8 -> 000094D6 65A9 -> 0000D5B6 65AA -> 000094D7 65AB -> 0000EDBD 65AC -> 000094D8 65AD -> 0000B6CF 65AE -> 000094D9 65AF -> 0000CBB9 65B0 -> 0000D0C2 65B1 -> 000094DA 65B9 -> 0000B7BD 65BA -> 000094E2 65BC -> 0000ECB6 65BD -> 0000CAA9 65BE -> 000094E4 65C1 -> 0000C5D4 65C2 -> 000094E7 65C3 -> 0000ECB9 65C4 -> 0000ECB8 65C5 -> 0000C2C3 65C6 -> 0000ECB7 65C7 -> 000094E8 65CB -> 0000D0FD 65CC -> 0000ECBA 65CD -> 000094EC 65CE -> 0000ECBB 65CF -> 0000D7E5 65D0 -> 000094ED 65D2 -> 0000ECBC 65D3 -> 000094EF 65D6 -> 0000ECBD 65D7 -> 0000C6EC 65D8 -> 000094F2 65E0 -> 0000CEDE 65E1 -> 000094FA 65E2 -> 0000BCC8 65E3 -> 000094FB 65E5 -> 0000C8D5 65E6 -> 0000B5A9 65E7 -> 0000BEC9 65E8 -> 0000D6BC 65E9 -> 0000D4E7 65EA -> 000094FD 65EC -> 0000D1AE 65ED -> 0000D0F1 65EE -> 0000EAB8 65F1 -> 0000BAB5 65F2 -> 00009540 65F6 -> 0000CAB1 65F7 -> 0000BFF5 65F8 -> 00009544 65FA -> 0000CDFA 65FB -> 00009546 6600 -> 0000EAC0 6601 -> 0000954B 6602 -> 0000B0BA 6603 -> 0000EABE 6604 -> 0000954C 6606 -> 0000C0A5 6607 -> 0000954E 660A -> 0000EABB 660B -> 00009551 660C -> 0000B2FD 660D -> 00009552 660E -> 0000C3F7 660F -> 0000BBE8 6610 -> 00009553 6613 -> 0000D2D7 6614 -> 0000CEF4 6615 -> 0000EABF 6616 -> 00009556 6619 -> 0000EABC 661A -> 00009559 661D -> 0000EAC3 661E -> 0000955C 661F -> 0000D0C7 6620 -> 0000D3B3 6621 -> 0000955D 6625 -> 0000B4BA 6626 -> 00009561 6627 -> 0000C3C1 6628 -> 0000D7F2 6629 -> 00009562 662D -> 0000D5D1 662E -> 00009566 662F -> 0000CAC7 6630 -> 00009567 6631 -> 0000EAC5 6632 -> 00009568 6634 -> 0000EAC4 6635 -> 0000EAC7 6636 -> 0000EAC6 6637 -> 0000956A 663C -> 0000D6E7 663D -> 0000956F 663E -> 0000CFD4 663F -> 00009570 6641 -> 0000EACB 6642 -> 00009572 6643 -> 0000BBCE 6644 -> 00009573 664B -> 0000BDFA 664C -> 0000C9CE 664D -> 0000957A 664F -> 0000EACC 6650 -> 0000957C 6652 -> 0000C9B9 6653 -> 0000CFFE 6654 -> 0000EACA 6655 -> 0000D4CE 6656 -> 0000EACD 6657 -> 0000EACF 6658 -> 0000957E 6659 -> 00009580 665A -> 0000CDED 665B -> 00009581 665F -> 0000EAC9 6660 -> 00009585 6661 -> 0000EACE 6662 -> 00009586 6664 -> 0000CEEE 6665 -> 00009588 6666 -> 0000BBDE 6667 -> 00009589 6668 -> 0000B3BF 6669 -> 0000958A 666E -> 0000C6D5 666F -> 0000BEB0 6670 -> 0000CEFA 6671 -> 0000958F 6674 -> 0000C7E7 6675 -> 00009592 6676 -> 0000BEA7 6677 -> 0000EAD0 6678 -> 00009593 667A -> 0000D6C7 667B -> 00009595 667E -> 0000C1C0 667F -> 00009598 6682 -> 0000D4DD 6683 -> 0000959B 6684 -> 0000EAD1 6685 -> 0000959C 6687 -> 0000CFBE 6688 -> 0000959E 668C -> 0000EAD2 668D -> 000095A2 6691 -> 0000CAEE 6692 -> 000095A6 6696 -> 0000C5AF 6697 -> 0000B0B5 6698 -> 000095AA 669D -> 0000EAD4 669E -> 000095AF 66A7 -> 0000EAD3 66A8 -> 0000F4DF 66A9 -> 000095B8 66AE -> 0000C4BA 66AF -> 000095BD 66B4 -> 0000B1A9 66B5 -> 000095C2 66B9 -> 0000E5DF 66BA -> 000095C6 66BE -> 0000EAD5 66BF -> 000095CA 66D9 -> 0000CAEF 66DA -> 000095E4 66DB -> 0000EAD6 66DD -> 0000C6D8 66DE -> 000095E5 66E6 -> 0000EAD8 66E7 -> 000095ED 66E9 -> 0000EAD9 66EA -> 000095EF 66F0 -> 0000D4BB 66F1 -> 000095F5 66F2 -> 0000C7FA 66F3 -> 0000D2B7 66F4 -> 0000B8FC 66F5 -> 000095F6 66F7 -> 0000EAC2 66F8 -> 000095F8 66F9 -> 0000B2DC 66FA -> 000095F9 66FC -> 0000C2FC 66FD -> 000095FB 66FE -> 0000D4F8 66FF -> 0000CCE6 6700 -> 0000D7EE 6701 -> 000095FC 6704 -> 00009640 6708 -> 0000D4C2 6709 -> 0000D3D0 670A -> 0000EBC3 670B -> 0000C5F3 670C -> 00009644 670D -> 0000B7FE 670E -> 00009645 6710 -> 0000EBD4 6711 -> 00009647 6714 -> 0000CBB7 6715 -> 0000EBDE 6716 -> 0000964A 6717 -> 0000C0CA 6718 -> 0000964B 671B -> 0000CDFB 671C -> 0000964E 671D -> 0000B3AF 671E -> 0000964F 671F -> 0000C6DA 6720 -> 00009650 6726 -> 0000EBFC 6727 -> 00009656 6728 -> 0000C4BE 6729 -> 00009657 672A -> 0000CEB4 672B -> 0000C4A9 672C -> 0000B1BE 672D -> 0000D4FD 672E -> 00009658 672F -> 0000CAF5 6730 -> 00009659 6731 -> 0000D6EC 6732 -> 0000965A 6734 -> 0000C6D3 6735 -> 0000B6E4 6736 -> 0000965C 673A -> 0000BBFA 673B -> 00009660 673D -> 0000D0E0 673E -> 00009662 6740 -> 0000C9B1 6741 -> 00009664 6742 -> 0000D4D3 6743 -> 0000C8A8 6744 -> 00009665 6746 -> 0000B8CB 6747 -> 00009667 6748 -> 0000E8BE 6749 -> 0000C9BC 674A -> 00009668 674C -> 0000E8BB 674D -> 0000966A 674E -> 0000C0EE 674F -> 0000D0D3 6750 -> 0000B2C4 6751 -> 0000B4E5 6752 -> 0000966B 6753 -> 0000E8BC 6754 -> 0000966C 6756 -> 0000D5C8 6757 -> 0000966E 675C -> 0000B6C5 675D -> 00009673 675E -> 0000E8BD 675F -> 0000CAF8 6760 -> 0000B8DC 6761 -> 0000CCF5 6762 -> 00009674 6765 -> 0000C0B4 6766 -> 00009677 6768 -> 0000D1EE 6769 -> 0000E8BF 676A -> 0000E8C2 676B -> 00009679 676D -> 0000BABC 676E -> 0000967B 676F -> 0000B1AD 6770 -> 0000BDDC 6771 -> 0000967C 6772 -> 0000EABD 6773 -> 0000E8C3 6774 -> 0000967D 6775 -> 0000E8C6 6776 -> 0000967E 6777 -> 0000E8CB 6778 -> 00009680 677C -> 0000E8CC 677D -> 00009684 677E -> 0000CBC9 677F -> 0000B0E5 6780 -> 00009685 6781 -> 0000BCAB 6782 -> 00009686 6784 -> 0000B9B9 6785 -> 00009688 6787 -> 0000E8C1 6788 -> 0000968A 6789 -> 0000CDF7 678A -> 0000968B 678B -> 0000E8CA 678C -> 0000968C 6790 -> 0000CEF6 6791 -> 00009690 6795 -> 0000D5ED 6796 -> 00009694 6797 -> 0000C1D6 6798 -> 0000E8C4 6799 -> 00009695 679A -> 0000C3B6 679B -> 00009696 679C -> 0000B9FB 679D -> 0000D6A6 679E -> 0000E8C8 679F -> 00009697 67A2 -> 0000CAE0 67A3 -> 0000D4E6 67A4 -> 0000969A 67A5 -> 0000E8C0 67A6 -> 0000969B 67A7 -> 0000E8C5 67A8 -> 0000E8C7 67A9 -> 0000969C 67AA -> 0000C7B9 67AB -> 0000B7E3 67AC -> 0000969D 67AD -> 0000E8C9 67AE -> 0000969E 67AF -> 0000BFDD 67B0 -> 0000E8D2 67B1 -> 0000969F 67B3 -> 0000E8D7 67B4 -> 000096A1 67B5 -> 0000E8D5 67B6 -> 0000BCDC 67B7 -> 0000BCCF 67B8 -> 0000E8DB 67B9 -> 000096A2 67C1 -> 0000E8DE 67C2 -> 000096AA 67C3 -> 0000E8DA 67C4 -> 0000B1FA 67C5 -> 000096AB 67CF -> 0000B0D8 67D0 -> 0000C4B3 67D1 -> 0000B8CC 67D2 -> 0000C6E2 67D3 -> 0000C8BE 67D4 -> 0000C8E1 67D5 -> 000096B5 67D8 -> 0000E8CF 67D9 -> 0000E8D4 67DA -> 0000E8D6 67DB -> 000096B8 67DC -> 0000B9F1 67DD -> 0000E8D8 67DE -> 0000D7F5 67DF -> 000096B9 67E0 -> 0000C4FB 67E1 -> 000096BA 67E2 -> 0000E8DC 67E3 -> 000096BB 67E5 -> 0000B2E9 67E6 -> 000096BD 67E9 -> 0000E8D1 67EA -> 000096C0 67EC -> 0000BCED 67ED -> 000096C2 67EF -> 0000BFC2 67F0 -> 0000E8CD 67F1 -> 0000D6F9 67F2 -> 000096C4 67F3 -> 0000C1F8 67F4 -> 0000B2F1 67F5 -> 000096C5 67FD -> 0000E8DF 67FE -> 000096CD 67FF -> 0000CAC1 6800 -> 0000E8D9 6801 -> 000096CE 6805 -> 0000D5A4 6806 -> 000096D2 6807 -> 0000B1EA 6808 -> 0000D5BB 6809 -> 0000E8CE 680A -> 0000E8D0 680B -> 0000B6B0 680C -> 0000E8D3 680D -> 000096D3 680E -> 0000E8DD 680F -> 0000C0B8 6810 -> 000096D4 6811 -> 0000CAF7 6812 -> 000096D5 6813 -> 0000CBA8 6814 -> 000096D6 6816 -> 0000C6DC 6817 -> 0000C0F5 6818 -> 000096D8 681D -> 0000E8E9 681E -> 000096DD 6821 -> 0000D0A3 6822 -> 000096E0 6829 -> 0000E8F2 682A -> 0000D6EA 682B -> 000096E7 6832 -> 0000E8E0 6834 -> 000096EE 6837 -> 0000D1F9 6838 -> 0000BACB 6839 -> 0000B8F9 683A -> 000096F1 683C -> 0000B8F1 683D -> 0000D4D4 683E -> 0000E8EF 683F -> 000096F3 6840 -> 0000E8EE 6841 -> 0000E8EC 6842 -> 0000B9F0 6843 -> 0000CCD2 6844 -> 0000E8E6 6845 -> 0000CEA6 6846 -> 0000BFF2 6847 -> 000096F4 6848 -> 0000B0B8 6849 -> 0000E8F1 684A -> 0000E8F0 684B -> 000096F5 684C -> 0000D7C0 684D -> 000096F6 684E -> 0000E8E4 684F -> 000096F7 6850 -> 0000CDA9 6851 -> 0000C9A3 6852 -> 000096F8 6853 -> 0000BBB8 6854 -> 0000BDDB 6855 -> 0000E8EA 6856 -> 000096F9 685C -> 00009740 6860 -> 0000E8E2 6862 -> 0000E8E5 6863 -> 0000B5B5 6864 -> 0000E8E7 6865 -> 0000C7C5 6866 -> 0000E8EB 6867 -> 0000E8ED 6868 -> 0000BDB0 6869 -> 0000D7AE 686A -> 00009744 686B -> 0000E8F8 686C -> 00009745 6874 -> 0000E8F5 6875 -> 0000974D 6876 -> 0000CDB0 6877 -> 0000E8F6 6878 -> 0000974E 6881 -> 0000C1BA 6882 -> 00009757 6883 -> 0000E8E8 6884 -> 00009758 6885 -> 0000C3B7 6886 -> 0000B0F0 6887 -> 00009759 688F -> 0000E8F4 6890 -> 00009761 6893 -> 0000E8F7 6894 -> 00009764 6897 -> 0000B9A3 6898 -> 00009767 68A2 -> 0000C9D2 68A3 -> 00009771 68A6 -> 0000C3CE 68A7 -> 0000CEE0 68A8 -> 0000C0E6 68A9 -> 00009774 68AD -> 0000CBF3 68AE -> 00009778 68AF -> 0000CCDD 68B0 -> 0000D0B5 68B1 -> 00009779 68B3 -> 0000CAE1 68B4 -> 0000977B 68B5 -> 0000E8F3 68B6 -> 0000977C 68B9 -> 00009780 68C0 -> 0000BCEC 68C1 -> 00009787 68C2 -> 0000E8F9 68C3 -> 00009788 68C9 -> 0000C3DE 68CA -> 0000978E 68CB -> 0000C6E5 68CC -> 0000978F 68CD -> 0000B9F7 68CE -> 00009790 68D2 -> 0000B0F4 68D3 -> 00009794 68D5 -> 0000D7D8 68D6 -> 00009796 68D8 -> 0000BCAC 68D9 -> 00009798 68DA -> 0000C5EF 68DB -> 00009799 68E0 -> 0000CCC4 68E1 -> 0000979E 68E3 -> 0000E9A6 68E4 -> 000097A0 68EE -> 0000C9AD 68EF -> 000097AA 68F0 -> 0000E9A2 68F1 -> 0000C0E2 68F2 -> 000097AB 68F5 -> 0000BFC3 68F6 -> 000097AE 68F9 -> 0000E8FE 68FA -> 0000B9D7 68FB -> 000097B1 68FC -> 0000E8FB 68FD -> 000097B2 6901 -> 0000E9A4 6902 -> 000097B6 6905 -> 0000D2CE 6906 -> 000097B9 690B -> 0000E9A3 690C -> 000097BE 690D -> 0000D6B2 690E -> 0000D7B5 690F -> 000097BF 6910 -> 0000E9A7 6911 -> 000097C0 6912 -> 0000BDB7 6913 -> 000097C1 691F -> 0000E8FC 6921 -> 000097CD 6924 -> 0000E9A1 6925 -> 000097D0 692D -> 0000CDD6 692E -> 000097D8 6930 -> 0000D2AC 6931 -> 000097DA 6934 -> 0000E9B2 6935 -> 000097DD 6939 -> 0000E9A9 693A -> 000097E1 693D -> 0000B4AA 693E -> 000097E4 693F -> 0000B4BB 6940 -> 000097E5 6942 -> 0000E9AB 6943 -> 000097E7 6954 -> 0000D0A8 6955 -> 000097F8 6957 -> 0000E9A5 6958 -> 000097FA 695A -> 0000B3FE 695B -> 000097FC 695D -> 0000E9AC 695E -> 0000C0E3 695F -> 000097FE 6960 -> 0000E9AA 6961 -> 00009840 6963 -> 0000E9B9 6964 -> 00009842 6966 -> 0000E9B8 6967 -> 00009844 696B -> 0000E9AE 696C -> 00009848 696E -> 0000E8FA 696F -> 0000984A 6971 -> 0000E9A8 6972 -> 0000984C 6977 -> 0000BFAC 6978 -> 0000E9B1 6979 -> 0000E9BA 697A -> 00009851 697C -> 0000C2A5 697D -> 00009853 6980 -> 0000E9AF 6981 -> 00009856 6982 -> 0000B8C5 6983 -> 00009857 6984 -> 0000E9AD 6985 -> 00009858 6986 -> 0000D3DC 6987 -> 0000E9B4 6989 -> 0000E9B7 698A -> 00009859 698D -> 0000E9C7 698E -> 0000985C 6994 -> 0000C0C6 6995 -> 0000E9C5 6996 -> 00009862 6998 -> 0000E9B0 6999 -> 00009864 699B -> 0000E9BB 699C -> 0000B0F1 699D -> 00009866 69A7 -> 0000E9BC 69A8 -> 0000D5A5 69A9 -> 00009870 69AB -> 0000E9BE 69AC -> 00009872 69AD -> 0000E9BF 69AE -> 00009873 69B1 -> 0000E9C1 69B2 -> 00009876 69B4 -> 0000C1F1 69B5 -> 00009878 69B7 -> 0000C8B6 69B8 -> 0000987A 69BB -> 0000E9BD 69BC -> 0000987D 69BE -> 00009880 69C1 -> 0000E9C2 69C2 -> 00009883 69CA -> 0000E9C3 69CB -> 0000988B 69CC -> 0000E9B3 69CD -> 0000988C 69CE -> 0000E9B6 69CF -> 0000988D 69D0 -> 0000BBB1 69D1 -> 0000988E 69D4 -> 0000E9C0 69D5 -> 00009891 69DB -> 0000BCF7 69DC -> 00009897 69DF -> 0000E9C4 69E0 -> 0000E9C6 69E1 -> 0000989A 69ED -> 0000E9CA 69EE -> 000098A6 69F2 -> 0000E9CE 69F3 -> 000098AA 69FD -> 0000B2DB 69FE -> 000098B4 69FF -> 0000E9C8 6A00 -> 000098B5 6A0A -> 0000B7AE 6A0B -> 000098BF 6A17 -> 0000E9CB 6A19 -> 000098CB 6A1F -> 0000D5C1 6A20 -> 000098D1 6A21 -> 0000C4A3 6A22 -> 000098D2 6A28 -> 0000E9D8 6A29 -> 000098D8 6A2A -> 0000BAE1 6A2B -> 000098D9 6A2F -> 0000E9C9 6A30 -> 000098DD 6A31 -> 0000D3A3 6A32 -> 000098DE 6A35 -> 0000E9D4 6A36 -> 000098E1 6A3D -> 0000E9D7 6A3E -> 0000E9D0 6A3F -> 000098E8 6A44 -> 0000E9CF 6A45 -> 000098ED 6A47 -> 0000C7C1 6A48 -> 000098EF 6A50 -> 0000E9D2 6A51 -> 000098F7 6A58 -> 0000E9D9 6A59 -> 0000B3C8 6A5A -> 000098FE 6A5B -> 0000E9D3 6A5C -> 00009940 6A61 -> 0000CFF0 6A62 -> 00009945 6A65 -> 0000E9CD 6A66 -> 00009948 6A71 -> 0000B3F7 6A72 -> 00009953 6A79 -> 0000E9D6 6A7A -> 0000995A 6A7C -> 0000E9DA 6A7D -> 0000995C 6A80 -> 0000CCB4 6A81 -> 0000995F 6A84 -> 0000CFAD 6A85 -> 00009962 6A8E -> 0000E9D5 6A8F -> 0000996B 6A90 -> 0000E9DC 6A91 -> 0000E9DB 6A92 -> 0000996C 6A97 -> 0000E9DE 6A98 -> 00009971 6AA0 -> 0000E9D1 6AA1 -> 00009979 6AA7 -> 00009980 6AA9 -> 0000E9DD 6AAA -> 00009982 6AAB -> 0000E9DF 6AAC -> 0000C3CA 6AAD -> 00009983 6B20 -> 0000C7B7 6B21 -> 0000B4CE 6B22 -> 0000BBB6 6B23 -> 0000D0C0 6B24 -> 0000ECA3 6B25 -> 000099F6 6B27 -> 0000C5B7 6B28 -> 000099F8 6B2F -> 00009A40 6B32 -> 0000D3FB 6B33 -> 00009A43 6B37 -> 0000ECA4 6B38 -> 00009A47 6B39 -> 0000ECA5 6B3A -> 0000C6DB 6B3B -> 00009A48 6B3E -> 0000BFEE 6B3F -> 00009A4B 6B43 -> 0000ECA6 6B44 -> 00009A4F 6B46 -> 0000ECA7 6B47 -> 0000D0AA 6B48 -> 00009A51 6B49 -> 0000C7B8 6B4A -> 00009A52 6B4C -> 0000B8E8 6B4D -> 00009A54 6B59 -> 0000ECA8 6B5A -> 00009A60 6B62 -> 0000D6B9 6B63 -> 0000D5FD 6B64 -> 0000B4CB 6B65 -> 0000B2BD 6B66 -> 0000CEE4 6B67 -> 0000C6E7 6B68 -> 00009A68 6B6A -> 0000CDE1 6B6B -> 00009A6A 6B79 -> 0000B4F5 6B7A -> 00009A78 6B7B -> 0000CBC0 6B7C -> 0000BCDF 6B7D -> 00009A79 6B81 -> 0000E9E2 6B83 -> 0000D1EA 6B84 -> 0000E9E5 6B85 -> 00009A7D 6B86 -> 0000B4F9 6B87 -> 0000E9E4 6B88 -> 00009A7E 6B89 -> 0000D1B3 6B8A -> 0000CAE2 6B8B -> 0000B2D0 6B8C -> 00009A80 6B8D -> 0000E9E8 6B8E -> 00009A81 6B92 -> 0000E9E6 6B94 -> 00009A85 6B96 -> 0000D6B3 6B97 -> 00009A87 6B9A -> 0000E9E9 6B9C -> 00009A8A 6BA1 -> 0000E9EB 6BA2 -> 00009A8F 6BAA -> 0000E9EC 6BAB -> 00009A97 6BB3 -> 0000ECAF 6BB4 -> 0000C5B9 6BB5 -> 0000B6CE 6BB6 -> 00009A9F 6BB7 -> 0000D2F3 6BB8 -> 00009AA0 6BBF -> 0000B5EE 6BC0 -> 00009AA7 6BC1 -> 0000BBD9 6BC2 -> 0000ECB1 6BC3 -> 00009AA8 6BC5 -> 0000D2E3 6BC6 -> 00009AAA 6BCB -> 0000CEE3 6BCC -> 00009AAF 6BCD -> 0000C4B8 6BCE -> 00009AB0 6BCF -> 0000C3BF 6BD0 -> 00009AB1 6BD2 -> 0000B6BE 6BD3 -> 0000D8B9 6BD4 -> 0000B1C8 6BD5 -> 0000B1CF 6BD6 -> 0000B1D1 6BD7 -> 0000C5FE 6BD8 -> 00009AB3 6BD9 -> 0000B1D0 6BDA -> 00009AB4 6BDB -> 0000C3AB 6BDC -> 00009AB5 6BE1 -> 0000D5B1 6BE2 -> 00009ABA 6BEA -> 0000EBA4 6BEB -> 0000BAC1 6BEC -> 00009AC2 6BEF -> 0000CCBA 6BF0 -> 00009AC5 6BF3 -> 0000EBA5 6BF4 -> 00009AC8 6BF5 -> 0000EBA7 6BF6 -> 00009AC9 6BF9 -> 0000EBA8 6BFA -> 00009ACC 6BFD -> 0000EBA6 6BFE -> 00009ACF 6C05 -> 0000EBA9 6C06 -> 0000EBAB 6C07 -> 0000EBAA 6C08 -> 00009AD6 6C0D -> 0000EBAC 6C0E -> 00009ADB 6C0F -> 0000CACF 6C10 -> 0000D8B5 6C11 -> 0000C3F1 6C12 -> 00009ADC 6C13 -> 0000C3A5 6C14 -> 0000C6F8 6C15 -> 0000EBAD 6C16 -> 0000C4CA 6C17 -> 00009ADD 6C18 -> 0000EBAE 6C1B -> 0000B7D5 6C1C -> 00009ADE 6C1F -> 0000B7FA 6C20 -> 00009AE1 6C21 -> 0000EBB1 6C22 -> 0000C7E2 6C23 -> 00009AE2 6C24 -> 0000EBB3 6C25 -> 00009AE3 6C26 -> 0000BAA4 6C27 -> 0000D1F5 6C28 -> 0000B0B1 6C29 -> 0000EBB2 6C2A -> 0000EBB4 6C2B -> 00009AE4 6C2E -> 0000B5AA 6C2F -> 0000C2C8 6C30 -> 0000C7E8 6C31 -> 00009AE7 6C32 -> 0000EBB5 6C33 -> 00009AE8 6C34 -> 0000CBAE 6C35 -> 0000E3DF 6C36 -> 00009AE9 6C38 -> 0000D3C0 6C39 -> 00009AEB 6C3D -> 0000D9DB 6C3E -> 00009AEF 6C40 -> 0000CDA1 6C41 -> 0000D6AD 6C42 -> 0000C7F3 6C43 -> 00009AF1 6C46 -> 0000D9E0 6C47 -> 0000BBE3 6C48 -> 00009AF4 6C49 -> 0000BABA 6C4A -> 0000E3E2 6C4B -> 00009AF5 6C50 -> 0000CFAB 6C51 -> 00009AFA 6C54 -> 0000E3E0 6C55 -> 0000C9C7 6C56 -> 00009AFD 6C57 -> 0000BAB9 6C58 -> 00009AFE 6C59 -> 00009B40 6C5B -> 0000D1B4 6C5C -> 0000E3E1 6C5D -> 0000C8EA 6C5E -> 0000B9AF 6C5F -> 0000BDAD 6C60 -> 0000B3D8 6C61 -> 0000CEDB 6C62 -> 00009B42 6C64 -> 0000CCC0 6C65 -> 00009B44 6C68 -> 0000E3E8 6C6A -> 0000CDF4 6C6B -> 00009B47 6C70 -> 0000CCAD 6C71 -> 00009B4C 6C72 -> 0000BCB3 6C73 -> 00009B4D 6C74 -> 0000E3EA 6C75 -> 00009B4E 6C76 -> 0000E3EB 6C77 -> 00009B4F 6C79 -> 0000D0DA 6C7A -> 00009B51 6C7D -> 0000C6FB 6C7E -> 0000B7DA 6C7F -> 00009B54 6C81 -> 0000C7DF 6C82 -> 0000D2CA 6C83 -> 0000CED6 6C84 -> 00009B56 6C85 -> 0000E3E4 6C86 -> 0000E3EC 6C87 -> 00009B57 6C88 -> 0000C9F2 6C89 -> 0000B3C1 6C8A -> 00009B58 6C8C -> 0000E3E7 6C8D -> 00009B5A 6C8F -> 0000C6E3 6C90 -> 0000E3E5 6C91 -> 00009B5C 6C93 -> 0000EDB3 6C94 -> 0000E3E6 6C95 -> 00009B5E 6C99 -> 0000C9B3 6C9A -> 00009B62 6C9B -> 0000C5E6 6C9C -> 00009B63 6C9F -> 0000B9B5 6CA0 -> 00009B66 6CA1 -> 0000C3BB 6CA2 -> 00009B67 6CA3 -> 0000E3E3 6CA4 -> 0000C5BD 6CA5 -> 0000C1A4 6CA6 -> 0000C2D9 6CA7 -> 0000B2D7 6CA8 -> 00009B68 6CA9 -> 0000E3ED 6CAA -> 0000BBA6 6CAB -> 0000C4AD 6CAC -> 00009B69 6CAD -> 0000E3F0 6CAE -> 0000BEDA 6CAF -> 00009B6A 6CB1 -> 0000E3FB 6CB2 -> 0000E3F5 6CB3 -> 0000BAD3 6CB4 -> 00009B6C 6CB8 -> 0000B7D0 6CB9 -> 0000D3CD 6CBA -> 00009B70 6CBB -> 0000D6CE 6CBC -> 0000D5D3 6CBD -> 0000B9C1 6CBE -> 0000D5B4 6CBF -> 0000D1D8 6CC0 -> 00009B71 6CC4 -> 0000D0B9 6CC5 -> 0000C7F6 6CC6 -> 00009B75 6CC9 -> 0000C8AA 6CCA -> 0000B2B4 6CCB -> 00009B78 6CCC -> 0000C3DA 6CCD -> 00009B79 6CD0 -> 0000E3EE 6CD1 -> 00009B7C 6CD3 -> 0000E3FC 6CD4 -> 0000E3EF 6CD5 -> 0000B7A8 6CD6 -> 0000E3F7 6CD7 -> 0000E3F4 6CD8 -> 00009B7E 6CD9 -> 00009B80 6CDB -> 0000B7BA 6CDC -> 00009B82 6CDE -> 0000C5A2 6CDF -> 00009B84 6CE0 -> 0000E3F6 6CE1 -> 0000C5DD 6CE2 -> 0000B2A8 6CE3 -> 0000C6FC 6CE4 -> 00009B85 6CE5 -> 0000C4E0 6CE6 -> 00009B86 6CE8 -> 0000D7A2 6CE9 -> 00009B88 6CEA -> 0000C0E1 6CEB -> 0000E3F9 6CEC -> 00009B89 6CEE -> 0000E3FA 6CEF -> 0000E3FD 6CF0 -> 0000CCA9 6CF1 -> 0000E3F3 6CF2 -> 00009B8B 6CF3 -> 0000D3BE 6CF4 -> 00009B8C 6CF5 -> 0000B1C3 6CF6 -> 0000EDB4 6CF7 -> 0000E3F1 6CF9 -> 00009B8D 6CFA -> 0000E3F8 6CFB -> 0000D0BA 6CFC -> 0000C6C3 6CFD -> 0000D4F3 6CFE -> 0000E3FE 6CFF -> 00009B8E 6D01 -> 0000BDE0 6D02 -> 00009B90 6D04 -> 0000E4A7 6D05 -> 00009B92 6D07 -> 0000E4A6 6D08 -> 00009B94 6D0B -> 0000D1F3 6D0C -> 0000E4A3 6D0D -> 00009B97 6D0E -> 0000E4A9 6D0F -> 00009B98 6D12 -> 0000C8F7 6D13 -> 00009B9B 6D17 -> 0000CFB4 6D18 -> 00009B9F 6D19 -> 0000E4A8 6D1A -> 0000E4AE 6D1B -> 0000C2E5 6D1C -> 00009BA0 6D1E -> 0000B6B4 6D1F -> 00009BA2 6D25 -> 0000BDF2 6D26 -> 00009BA8 6D27 -> 0000E4A2 6D28 -> 00009BA9 6D2A -> 0000BAE9 6D2B -> 0000E4AA 6D2C -> 00009BAB 6D2E -> 0000E4AC 6D2F -> 00009BAD 6D31 -> 0000B6FD 6D32 -> 0000D6DE 6D33 -> 0000E4B2 6D34 -> 00009BAF 6D35 -> 0000E4AD 6D36 -> 00009BB0 6D39 -> 0000E4A1 6D3A -> 00009BB3 6D3B -> 0000BBEE 6D3C -> 0000CDDD 6D3D -> 0000C7A2 6D3E -> 0000C5C9 6D3F -> 00009BB4 6D41 -> 0000C1F7 6D42 -> 00009BB6 6D43 -> 0000E4A4 6D44 -> 00009BB7 6D45 -> 0000C7B3 6D46 -> 0000BDAC 6D47 -> 0000BDBD 6D48 -> 0000E4A5 6D49 -> 00009BB8 6D4A -> 0000D7C7 6D4B -> 0000B2E2 6D4C -> 00009BB9 6D4D -> 0000E4AB 6D4E -> 0000BCC3 6D4F -> 0000E4AF 6D50 -> 00009BBA 6D51 -> 0000BBEB 6D52 -> 0000E4B0 6D53 -> 0000C5A8 6D54 -> 0000E4B1 6D55 -> 00009BBB 6D59 -> 0000D5E3 6D5A -> 0000BFA3 6D5B -> 00009BBF 6D5C -> 0000E4BA 6D5D -> 00009BC0 6D5E -> 0000E4B7 6D5F -> 00009BC1 6D60 -> 0000E4BB 6D61 -> 00009BC2 6D63 -> 0000E4BD 6D64 -> 00009BC4 6D66 -> 0000C6D6 6D67 -> 00009BC6 6D69 -> 0000BAC6 6D6A -> 0000C0CB 6D6B -> 00009BC8 6D6E -> 0000B8A1 6D6F -> 0000E4B4 6D70 -> 00009BCB 6D74 -> 0000D4A1 6D75 -> 00009BCF 6D77 -> 0000BAA3 6D78 -> 0000BDFE 6D79 -> 00009BD1 6D7C -> 0000E4BC 6D7D -> 00009BD4 6D82 -> 0000CDBF 6D83 -> 00009BD9 6D85 -> 0000C4F9 6D86 -> 00009BDB 6D88 -> 0000CFFB 6D89 -> 0000C9E6 6D8A -> 00009BDD 6D8C -> 0000D3BF 6D8D -> 00009BDF 6D8E -> 0000CFD1 6D8F -> 00009BE0 6D91 -> 0000E4B3 6D92 -> 00009BE2 6D93 -> 0000E4B8 6D95 -> 0000CCE9 6D96 -> 00009BE3 6D9B -> 0000CCCE 6D9C -> 00009BE8 6D9D -> 0000C0D4 6D9E -> 0000E4B5 6D9F -> 0000C1B0 6DA0 -> 0000E4B6 6DA1 -> 0000CED0 6DA2 -> 00009BE9 6DA3 -> 0000BBC1 6DA4 -> 0000B5D3 6DA5 -> 00009BEA 6DA6 -> 0000C8F3 6DA7 -> 0000BDA7 6DA8 -> 0000D5C7 6DA9 -> 0000C9AC 6DAA -> 0000B8A2 6DAB -> 0000E4CA 6DAC -> 00009BEB 6DAE -> 0000E4CC 6DAF -> 0000D1C4 6DB0 -> 00009BED 6DB2 -> 0000D2BA 6DB3 -> 00009BEF 6DB5 -> 0000BAAD 6DB6 -> 00009BF1 6DB8 -> 0000BAD4 6DB9 -> 00009BF3 6DBF -> 0000E4C3 6DC0 -> 0000B5ED 6DC1 -> 00009BF9 6DC4 -> 0000D7CD 6DC5 -> 0000E4C0 6DC6 -> 0000CFFD 6DC7 -> 0000E4BF 6DC8 -> 00009BFC 6DCB -> 0000C1DC 6DCC -> 0000CCCA 6DCD -> 00009C40 6DD1 -> 0000CAE7 6DD2 -> 00009C44 6DD6 -> 0000C4D7 6DD7 -> 00009C48 6DD8 -> 0000CCD4 6DD9 -> 0000E4C8 6DDA -> 00009C49 6DDD -> 0000E4C7 6DDE -> 0000E4C1 6DDF -> 00009C4C 6DE0 -> 0000E4C4 6DE1 -> 0000B5AD 6DE2 -> 00009C4D 6DE4 -> 0000D3D9 6DE5 -> 00009C4F 6DE6 -> 0000E4C6 6DE7 -> 00009C50 6DEB -> 0000D2F9 6DEC -> 0000B4E3 6DED -> 00009C54 6DEE -> 0000BBB4 6DEF -> 00009C55 6DF1 -> 0000C9EE 6DF2 -> 00009C57 6DF3 -> 0000B4BE 6DF4 -> 00009C58 6DF7 -> 0000BBEC 6DF8 -> 00009C5B 6DF9 -> 0000D1CD 6DFA -> 00009C5C 6DFB -> 0000CCED 6DFC -> 0000EDB5 6DFD -> 00009C5D 6E05 -> 0000C7E5 6E06 -> 00009C65 6E0A -> 0000D4A8 6E0B -> 00009C69 6E0C -> 0000E4CB 6E0D -> 0000D7D5 6E0E -> 0000E4C2 6E0F -> 00009C6A 6E10 -> 0000BDA5 6E11 -> 0000E4C5 6E12 -> 00009C6B 6E14 -> 0000D3E6 6E15 -> 00009C6D 6E16 -> 0000E4C9 6E17 -> 0000C9F8 6E18 -> 00009C6E 6E1A -> 0000E4BE 6E1B -> 00009C70 6E1D -> 0000D3E5 6E1E -> 00009C72 6E20 -> 0000C7FE 6E21 -> 0000B6C9 6E22 -> 00009C74 6E23 -> 0000D4FC 6E24 -> 0000B2B3 6E25 -> 0000E4D7 6E26 -> 00009C75 6E29 -> 0000CEC2 6E2A -> 00009C78 6E2B -> 0000E4CD 6E2C -> 00009C79 6E2D -> 0000CEBC 6E2E -> 00009C7A 6E2F -> 0000B8DB 6E30 -> 00009C7B 6E32 -> 0000E4D6 6E33 -> 00009C7D 6E34 -> 0000BFCA 6E35 -> 00009C7E 6E36 -> 00009C80 6E38 -> 0000D3CE 6E39 -> 00009C82 6E3A -> 0000C3EC 6E3B -> 00009C83 6E43 -> 0000C5C8 6E44 -> 0000E4D8 6E45 -> 00009C8B 6E4D -> 0000CDC4 6E4E -> 0000E4CF 6E4F -> 00009C93 6E53 -> 0000E4D4 6E55 -> 00009C97 6E56 -> 0000BAFE 6E57 -> 00009C98 6E58 -> 0000CFE6 6E59 -> 00009C99 6E5B -> 0000D5BF 6E5C -> 00009C9B 6E5F -> 0000E4D2 6E60 -> 00009C9E 6E6B -> 0000E4D0 6E6C -> 00009CA9 6E6E -> 0000E4CE 6E6F -> 00009CAB 6E7E -> 0000CDE5 6E7F -> 0000CAAA 6E80 -> 00009CBA 6E83 -> 0000C0A3 6E84 -> 00009CBD 6E85 -> 0000BDA6 6E86 -> 0000E4D3 6E87 -> 00009CBE 6E89 -> 0000B8C8 6E8A -> 00009CC0 6E8F -> 0000E4E7 6E90 -> 0000D4B4 6E91 -> 00009CC5 6E98 -> 0000E4DB 6E99 -> 00009CCC 6E9C -> 0000C1EF 6E9D -> 00009CCF 6E9F -> 0000E4E9 6EA0 -> 00009CD1 6EA2 -> 0000D2E7 6EA3 -> 00009CD3 6EA5 -> 0000E4DF 6EA6 -> 00009CD5 6EA7 -> 0000E4E0 6EA8 -> 00009CD6 6EAA -> 0000CFAA 6EAB -> 00009CD8 6EAF -> 0000CBDD 6EB0 -> 00009CDC 6EB1 -> 0000E4DA 6EB2 -> 0000E4D1 6EB3 -> 00009CDD 6EB4 -> 0000E4E5 6EB5 -> 00009CDE 6EB6 -> 0000C8DC 6EB7 -> 0000E4E3 6EB8 -> 00009CDF 6EBA -> 0000C4E7 6EBB -> 0000E4E2 6EBC -> 00009CE1 6EBD -> 0000E4E1 6EBE -> 00009CE2 6EC1 -> 0000B3FC 6EC2 -> 0000E4E8 6EC3 -> 00009CE5 6EC7 -> 0000B5E1 6EC8 -> 00009CE9 6ECB -> 0000D7CC 6ECC -> 00009CEC 6ECF -> 0000E4E6 6ED0 -> 00009CEF 6ED1 -> 0000BBAC 6ED2 -> 00009CF0 6ED3 -> 0000D7D2 6ED4 -> 0000CCCF 6ED5 -> 0000EBF8 6ED6 -> 00009CF1 6ED7 -> 0000E4E4 6ED8 -> 00009CF2 6EDA -> 0000B9F6 6EDB -> 00009CF4 6EDE -> 0000D6CD 6EDF -> 0000E4D9 6EE0 -> 0000E4DC 6EE1 -> 0000C2FA 6EE2 -> 0000E4DE 6EE3 -> 00009CF7 6EE4 -> 0000C2CB 6EE5 -> 0000C0C4 6EE6 -> 0000C2D0 6EE7 -> 00009CF8 6EE8 -> 0000B1F5 6EE9 -> 0000CCB2 6EEA -> 00009CF9 6EF0 -> 00009D40 6EF4 -> 0000B5CE 6EF5 -> 00009D44 6EF9 -> 0000E4EF 6EFA -> 00009D48 6F02 -> 0000C6AF 6F03 -> 00009D50 6F06 -> 0000C6E1 6F07 -> 00009D53 6F09 -> 0000E4F5 6F0A -> 00009D55 6F0F -> 0000C2A9 6F10 -> 00009D5A 6F13 -> 0000C0EC 6F14 -> 0000D1DD 6F15 -> 0000E4EE 6F16 -> 00009D5D 6F20 -> 0000C4AE 6F21 -> 00009D67 6F24 -> 0000E4ED 6F25 -> 00009D6A 6F29 -> 0000E4F6 6F2A -> 0000E4F4 6F2B -> 0000C2FE 6F2C -> 00009D6E 6F2D -> 0000E4DD 6F2E -> 00009D6F 6F2F -> 0000E4F0 6F30 -> 00009D70 6F31 -> 0000CAFE 6F32 -> 00009D71 6F33 -> 0000D5C4 6F34 -> 00009D72 6F36 -> 0000E4F1 6F37 -> 00009D74 6F3E -> 0000D1FA 6F3F -> 00009D7B 6F43 -> 00009D80 6F46 -> 0000E4EB 6F48 -> 00009D83 6F4B -> 0000E4F2 6F4C -> 00009D86 6F4D -> 0000CEAB 6F4E -> 00009D87 6F58 -> 0000C5CB 6F59 -> 00009D91 6F5C -> 0000C7B1 6F5D -> 00009D94 6F5E -> 0000C2BA 6F5F -> 00009D95 6F62 -> 0000E4EA 6F63 -> 00009D98 6F66 -> 0000C1CA 6F67 -> 00009D9B 6F6D -> 0000CCB6 6F6E -> 0000B3B1 6F6F -> 00009DA1 6F72 -> 0000E4FB 6F73 -> 00009DA4 6F74 -> 0000E4F3 6F75 -> 00009DA5 6F78 -> 0000E4FA 6F79 -> 00009DA8 6F7A -> 0000E4FD 6F7B -> 00009DA9 6F7C -> 0000E4FC 6F7D -> 00009DAA 6F84 -> 0000B3CE 6F85 -> 00009DB1 6F88 -> 0000B3BA 6F89 -> 0000E4F7 6F8A -> 00009DB4 6F8C -> 0000E4F9 6F8D -> 0000E4F8 6F8E -> 0000C5EC 6F8F -> 00009DB6 6F9C -> 0000C0BD 6F9D -> 00009DC3 6FA1 -> 0000D4E8 6FA2 -> 00009DC7 6FA7 -> 0000E5A2 6FA8 -> 00009DCC 6FB3 -> 0000B0C4 6FB4 -> 00009DD7 6FB6 -> 0000E5A4 6FB7 -> 00009DD9 6FB9 -> 0000E5A3 6FBA -> 00009DDB 6FC0 -> 0000BCA4 6FC1 -> 00009DE1 6FC2 -> 0000E5A5 6FC3 -> 00009DE2 6FC9 -> 0000E5A1 6FCA -> 00009DE8 6FD1 -> 0000E4FE 6FD2 -> 0000B1F4 6FD3 -> 00009DEF 6FDE -> 0000E5A8 6FDF -> 00009DFA 6FE0 -> 0000E5A9 6FE1 -> 0000E5A6 6FE2 -> 00009DFB 6FE6 -> 00009E40 6FEE -> 0000E5A7 6FEF -> 0000E5AA 6FF0 -> 00009E48 7011 -> 0000C6D9 7012 -> 00009E69 701A -> 0000E5AB 701B -> 0000E5AD 701C -> 00009E71 7023 -> 0000E5AC 7024 -> 00009E78 702B -> 00009E80 7035 -> 0000E5AF 7036 -> 00009E8A 7039 -> 0000E5AE 703A -> 00009E8D 704C -> 0000B9E0 704D -> 00009E9F 704F -> 0000E5B0 7050 -> 00009EA1 705E -> 0000E5B1 705F -> 00009EAF 706B -> 0000BBF0 706C -> 0000ECE1 706D -> 0000C3F0 706E -> 00009EBB 706F -> 0000B5C6 7070 -> 0000BBD2 7071 -> 00009EBC 7075 -> 0000C1E9 7076 -> 0000D4EE 7077 -> 00009EC0 7078 -> 0000BEC4 7079 -> 00009EC1 707C -> 0000D7C6 707D -> 00009EC4 707E -> 0000D4D6 707F -> 0000B2D3 7080 -> 0000ECBE 7081 -> 00009EC5 7085 -> 0000EAC1 7086 -> 00009EC9 7089 -> 0000C2AF 708A -> 0000B4B6 708B -> 00009ECC 708E -> 0000D1D7 708F -> 00009ECF 7092 -> 0000B3B4 7093 -> 00009ED2 7094 -> 0000C8B2 7095 -> 0000BFBB 7096 -> 0000ECC0 7097 -> 00009ED3 7099 -> 0000D6CB 709A -> 00009ED5 709C -> 0000ECBF 709D -> 0000ECC1 709E -> 00009ED7 70AB -> 0000ECC5 70AC -> 0000BEE6 70AD -> 0000CCBF 70AE -> 0000C5DA 70AF -> 0000BEBC 70B0 -> 00009EE4 70B1 -> 0000ECC6 70B2 -> 00009EE5 70B3 -> 0000B1FE 70B4 -> 00009EE6 70B7 -> 0000ECC4 70B8 -> 0000D5A8 70B9 -> 0000B5E3 70BA -> 00009EE9 70BB -> 0000ECC2 70BC -> 0000C1B6 70BD -> 0000B3E3 70BE -> 00009EEA 70C0 -> 0000ECC3 70C1 -> 0000CBB8 70C2 -> 0000C0C3 70C3 -> 0000CCFE 70C4 -> 00009EEC 70C8 -> 0000C1D2 70C9 -> 00009EF0 70CA -> 0000ECC8 70CB -> 00009EF1 70D8 -> 0000BAE6 70D9 -> 0000C0D3 70DA -> 00009EFE 70DB -> 0000D6F2 70DC -> 00009F40 70DF -> 0000D1CC 70E0 -> 00009F43 70E4 -> 0000BFBE 70E5 -> 00009F47 70E6 -> 0000B7B3 70E7 -> 0000C9D5 70E8 -> 0000ECC7 70E9 -> 0000BBE2 70EA -> 00009F48 70EB -> 0000CCCC 70EC -> 0000BDFD 70ED -> 0000C8C8 70EE -> 00009F49 70EF -> 0000CFA9 70F0 -> 00009F4A 70F7 -> 0000CDE9 70F8 -> 00009F51 70F9 -> 0000C5EB 70FA -> 00009F52 70FD -> 0000B7E9 70FE -> 00009F55 7109 -> 0000D1C9 710A -> 0000BAB8 710B -> 00009F60 7110 -> 0000ECC9 7111 -> 00009F65 7113 -> 0000ECCA 7114 -> 00009F67 7115 -> 0000BBC0 7116 -> 0000ECCB 7117 -> 00009F68 7118 -> 0000ECE2 7119 -> 0000B1BA 711A -> 0000B7D9 711B -> 00009F69 7126 -> 0000BDB9 7127 -> 00009F74 712F -> 0000ECCC 7130 -> 0000D1E6 7131 -> 0000ECCD 7132 -> 00009F7C 7135 -> 00009F80 7136 -> 0000C8BB 7137 -> 00009F81 7145 -> 0000ECD1 7146 -> 00009F8F 714A -> 0000ECD3 714B -> 00009F93 714C -> 0000BBCD 714D -> 00009F94 714E -> 0000BCE5 714F -> 00009F95 715C -> 0000ECCF 715D -> 00009FA2 715E -> 0000C9B7 715F -> 00009FA3 7164 -> 0000C3BA 7165 -> 00009FA8 7166 -> 0000ECE3 7167 -> 0000D5D5 7168 -> 0000ECD0 7169 -> 00009FA9 716E -> 0000D6F3 716F -> 00009FAE 7172 -> 0000ECD2 7173 -> 0000ECCE 7174 -> 00009FB1 7178 -> 0000ECD4 7179 -> 00009FB5 717A -> 0000ECD5 717B -> 00009FB6 717D -> 0000C9BF 717E -> 00009FB8 7184 -> 0000CFA8 7185 -> 00009FBE 718A -> 0000D0DC 718B -> 00009FC3 718F -> 0000D1AC 7190 -> 00009FC7 7194 -> 0000C8DB 7195 -> 00009FCB 7198 -> 0000ECD6 7199 -> 0000CEF5 719A -> 00009FCE 719F -> 0000CAEC 71A0 -> 0000ECDA 71A1 -> 00009FD3 71A8 -> 0000ECD9 71A9 -> 00009FDA 71AC -> 0000B0BE 71AD -> 00009FDD 71B3 -> 0000ECD7 71B4 -> 00009FE3 71B5 -> 0000ECD8 71B6 -> 00009FE4 71B9 -> 0000ECE4 71BA -> 00009FE7 71C3 -> 0000C8BC 71C4 -> 00009FF0 71CE -> 0000C1C7 71CF -> 00009FFA 71D4 -> 0000ECDC 71D5 -> 0000D1E0 71D6 -> 0000A040 71E0 -> 0000ECDB 71E1 -> 0000A04A 71E5 -> 0000D4EF 71E6 -> 0000A04E 71E7 -> 0000ECDD 71E8 -> 0000A04F 71EE -> 0000DBC6 71EF -> 0000A055 71F9 -> 0000ECDE 71FA -> 0000A05F 7206 -> 0000B1AC 7207 -> 0000A06B 721B -> 0000A080 721D -> 0000ECDF 721E -> 0000A082 7228 -> 0000ECE0 7229 -> 0000A08C 722A -> 0000D7A6 722B -> 0000A08D 722C -> 0000C5C0 722D -> 0000A08E 7230 -> 0000EBBC 7231 -> 0000B0AE 7232 -> 0000A091 7235 -> 0000BEF4 7236 -> 0000B8B8 7237 -> 0000D2AF 7238 -> 0000B0D6 7239 -> 0000B5F9 723A -> 0000A094 723B -> 0000D8B3 723C -> 0000A095 723D -> 0000CBAC 723E -> 0000A096 723F -> 0000E3DD 7240 -> 0000A097 7247 -> 0000C6AC 7248 -> 0000B0E6 7249 -> 0000A09E 724C -> 0000C5C6 724D -> 0000EBB9 724E -> 0000A0A1 7252 -> 0000EBBA 7253 -> 0000A0A5 7256 -> 0000EBBB 7257 -> 0000A0A8 7259 -> 0000D1C0 725A -> 0000A0AA 725B -> 0000C5A3 725C -> 0000A0AB 725D -> 0000EAF2 725E -> 0000A0AC 725F -> 0000C4B2 7260 -> 0000A0AD 7261 -> 0000C4B5 7262 -> 0000C0CE 7263 -> 0000A0AE 7266 -> 0000EAF3 7267 -> 0000C4C1 7268 -> 0000A0B1 7269 -> 0000CEEF 726A -> 0000A0B2 726E -> 0000EAF0 726F -> 0000EAF4 7270 -> 0000A0B6 7272 -> 0000C9FC 7273 -> 0000A0B8 7275 -> 0000C7A3 7276 -> 0000A0BA 7279 -> 0000CCD8 727A -> 0000CEFE 727B -> 0000A0BD 727E -> 0000EAF5 7280 -> 0000CFAC 7281 -> 0000C0E7 7282 -> 0000A0C0 7284 -> 0000EAF7 7285 -> 0000A0C2 728A -> 0000B6BF 728B -> 0000EAF8 728C -> 0000A0C7 728D -> 0000EAF9 728E -> 0000A0C8 728F -> 0000EAFA 7290 -> 0000A0C9 7292 -> 0000EAFB 7293 -> 0000A0CB 729F -> 0000EAF1 72A0 -> 0000A0D7 72AC -> 0000C8AE 72AD -> 0000E1EB 72AE -> 0000A0E3 72AF -> 0000B7B8 72B0 -> 0000E1EC 72B1 -> 0000A0E4 72B4 -> 0000E1ED 72B5 -> 0000A0E7 72B6 -> 0000D7B4 72B7 -> 0000E1EE 72B9 -> 0000D3CC 72BA -> 0000A0E8 72C1 -> 0000E1F1 72C2 -> 0000BFF1 72C3 -> 0000E1F0 72C4 -> 0000B5D2 72C5 -> 0000A0EF 72C8 -> 0000B1B7 72C9 -> 0000A0F2 72CD -> 0000E1F3 72CE -> 0000E1F2 72CF -> 0000A0F6 72D0 -> 0000BAFC 72D1 -> 0000A0F7 72D2 -> 0000E1F4 72D3 -> 0000A0F8 72D7 -> 0000B9B7 72D8 -> 0000A0FC 72D9 -> 0000BED1 72DA -> 0000A0FD 72DC -> 0000AA40 72DE -> 0000C4FC 72DF -> 0000AA42 72E0 -> 0000BADD 72E1 -> 0000BDC6 72E2 -> 0000AA43 72E8 -> 0000E1F5 72E9 -> 0000E1F7 72EA -> 0000AA49 72EC -> 0000B6C0 72ED -> 0000CFC1 72EE -> 0000CAA8 72EF -> 0000E1F6 72F0 -> 0000D5F8 72F1 -> 0000D3FC 72F2 -> 0000E1F8 72F3 -> 0000E1FC 72F4 -> 0000E1F9 72F5 -> 0000AA4B 72F7 -> 0000E1FA 72F8 -> 0000C0EA 72F9 -> 0000AA4D 72FA -> 0000E1FE 72FB -> 0000E2A1 72FC -> 0000C0C7 72FD -> 0000AA4E 7301 -> 0000E1FB 7302 -> 0000AA52 7303 -> 0000E1FD 7304 -> 0000AA53 730A -> 0000E2A5 730B -> 0000AA59 730E -> 0000C1D4 730F -> 0000AA5C 7313 -> 0000E2A3 7314 -> 0000AA60 7315 -> 0000E2A8 7316 -> 0000B2FE 7317 -> 0000E2A2 7318 -> 0000AA61 731B -> 0000C3CD 731C -> 0000B2C2 731D -> 0000E2A7 731E -> 0000E2A6 731F -> 0000AA64 7321 -> 0000E2A4 7322 -> 0000E2A9 7323 -> 0000AA66 7325 -> 0000E2AB 7326 -> 0000AA68 7329 -> 0000D0C9 732A -> 0000D6ED 732B -> 0000C3A8 732C -> 0000E2AC 732D -> 0000AA6B 732E -> 0000CFD7 732F -> 0000AA6C 7331 -> 0000E2AE 7332 -> 0000AA6E 7334 -> 0000BAEF 7335 -> 0000AA70 7337 -> 0000E9E0 7338 -> 0000E2AD 7339 -> 0000E2AA 733A -> 0000AA72 733E -> 0000BBAB 733F -> 0000D4B3 7340 -> 0000AA76 7349 -> 0000AA80 734D -> 0000E2B0 734E -> 0000AA84 7350 -> 0000E2AF 7351 -> 0000AA86 7352 -> 0000E9E1 7353 -> 0000AA87 7357 -> 0000E2B1 7358 -> 0000AA8B 7360 -> 0000E2B2 7361 -> 0000AA93 736C -> 0000E2B3 736D -> 0000CCA1 736E -> 0000AA9E 736F -> 0000E2B4 7370 -> 0000AA9F 7372 -> 0000AB40 737E -> 0000E2B5 737F -> 0000AB4C 7384 -> 0000D0FE 7385 -> 0000AB51 7387 -> 0000C2CA 7388 -> 0000AB53 7389 -> 0000D3F1 738A -> 0000AB54 738B -> 0000CDF5 738C -> 0000AB55 738E -> 0000E7E0 738F -> 0000AB57 7391 -> 0000E7E1 7392 -> 0000AB59 7396 -> 0000BEC1 7397 -> 0000AB5D 739B -> 0000C2EA 739C -> 0000AB61 739F -> 0000E7E4 73A0 -> 0000AB64 73A2 -> 0000E7E3 73A3 -> 0000AB66 73A9 -> 0000CDE6 73AA -> 0000AB6C 73AB -> 0000C3B5 73AC -> 0000AB6D 73AE -> 0000E7E2 73AF -> 0000BBB7 73B0 -> 0000CFD6 73B1 -> 0000AB6F 73B2 -> 0000C1E1 73B3 -> 0000E7E9 73B4 -> 0000AB70 73B7 -> 0000E7E8 73B8 -> 0000AB73 73BA -> 0000E7F4 73BB -> 0000B2A3 73BC -> 0000AB75 73C0 -> 0000E7EA 73C1 -> 0000AB79 73C2 -> 0000E7E6 73C3 -> 0000AB7A 73C8 -> 0000E7EC 73C9 -> 0000E7EB 73CA -> 0000C9BA 73CB -> 0000AB80 73CD -> 0000D5E4 73CE -> 0000AB82 73CF -> 0000E7E5 73D0 -> 0000B7A9 73D1 -> 0000E7E7 73D2 -> 0000AB83 73D9 -> 0000E7EE 73DA -> 0000AB8A 73DE -> 0000E7F3 73DF -> 0000AB8E 73E0 -> 0000D6E9 73E1 -> 0000AB8F 73E5 -> 0000E7ED 73E6 -> 0000AB93 73E7 -> 0000E7F2 73E8 -> 0000AB94 73E9 -> 0000E7F1 73EA -> 0000AB95 73ED -> 0000B0E0 73EE -> 0000AB98 73F2 -> 0000E7F5 73F3 -> 0000AB9C 73F8 -> 0000AC40 7403 -> 0000C7F2 7404 -> 0000AC4B 7405 -> 0000C0C5 7406 -> 0000C0ED 7407 -> 0000AC4C 7409 -> 0000C1F0 740A -> 0000E7F0 740B -> 0000AC4E 740F -> 0000E7F6 7410 -> 0000CBF6 7411 -> 0000AC52 741A -> 0000E8A2 741B -> 0000E8A1 741C -> 0000AC5B 7422 -> 0000D7C1 7423 -> 0000AC61 7425 -> 0000E7FA 7426 -> 0000E7F9 7427 -> 0000AC63 7428 -> 0000E7FB 7429 -> 0000AC64 742A -> 0000E7F7 742B -> 0000AC65 742C -> 0000E7FE 742D -> 0000AC66 742E -> 0000E7FD 742F -> 0000AC67 7430 -> 0000E7FC 7431 -> 0000AC68 7433 -> 0000C1D5 7434 -> 0000C7D9 7435 -> 0000C5FD 7436 -> 0000C5C3 7437 -> 0000AC6A 743C -> 0000C7ED 743D -> 0000AC6F 7441 -> 0000E8A3 7442 -> 0000AC73 744E -> 0000AC80 7455 -> 0000E8A6 7456 -> 0000AC87 7457 -> 0000E8A5 7458 -> 0000AC88 7459 -> 0000E8A7 745A -> 0000BAF7 745B -> 0000E7F8 745C -> 0000E8A4 745D -> 0000AC89 745E -> 0000C8F0 745F -> 0000C9AA 7460 -> 0000AC8A 746D -> 0000E8A9 746E -> 0000AC97 7470 -> 0000B9E5 7471 -> 0000AC99 7476 -> 0000D1FE 7477 -> 0000E8A8 7478 -> 0000AC9E 747B -> 0000AD40 747E -> 0000E8AA 747F -> 0000AD43 7480 -> 0000E8AD 7482 -> 0000AD44 7483 -> 0000C1A7 7484 -> 0000AD45 7487 -> 0000E8AF 7488 -> 0000AD48 748B -> 0000E8B0 748C -> 0000AD4B 748E -> 0000E8AC 748F -> 0000AD4D 7490 -> 0000E8B4 7491 -> 0000AD4E 749C -> 0000E8AB 749D -> 0000AD59 749E -> 0000E8B1 749F -> 0000AD5A 74A7 -> 0000E8B5 74A8 -> 0000E8B2 74AA -> 0000AD62 74BA -> 0000E8B7 74BB -> 0000AD72 74C8 -> 0000AD80 74D2 -> 0000E8B6 74D3 -> 0000AD8A 74DC -> 0000B9CF 74DD -> 0000AD93 74DE -> 0000F0AC 74DF -> 0000AD94 74E0 -> 0000F0AD 74E1 -> 0000AD95 74E2 -> 0000C6B0 74E3 -> 0000B0EA 74E4 -> 0000C8BF 74E5 -> 0000AD96 74E6 -> 0000CDDF 74E7 -> 0000AD97 74EE -> 0000CECD 74EF -> 0000EAB1 74F0 -> 0000AD9E 74F3 -> 0000AE40 74F4 -> 0000EAB2 74F5 -> 0000AE41 74F6 -> 0000C6BF 74F7 -> 0000B4C9 74F8 -> 0000AE42 74FF -> 0000EAB3 7500 -> 0000AE49 7504 -> 0000D5E7 7505 -> 0000AE4D 750D -> 0000DDF9 750E -> 0000AE55 750F -> 0000EAB4 7510 -> 0000AE56 7511 -> 0000EAB5 7512 -> 0000AE57 7513 -> 0000EAB6 7514 -> 0000AE58 7518 -> 0000B8CA 7519 -> 0000DFB0 751A -> 0000C9F5 751B -> 0000AE5C 751C -> 0000CCF0 751D -> 0000AE5D 751F -> 0000C9FA 7520 -> 0000AE5F 7525 -> 0000C9FB 7526 -> 0000AE64 7528 -> 0000D3C3 7529 -> 0000CBA6 752A -> 0000AE66 752B -> 0000B8A6 752C -> 0000F0AE 752D -> 0000B1C2 752E -> 0000AE67 752F -> 0000E5B8 7530 -> 0000CCEF 7531 -> 0000D3C9 7532 -> 0000BCD7 7533 -> 0000C9EA 7534 -> 0000AE68 7535 -> 0000B5E7 7536 -> 0000AE69 7537 -> 0000C4D0 7538 -> 0000B5E9 7539 -> 0000AE6A 753A -> 0000EEAE 753B -> 0000BBAD 753C -> 0000AE6B 753E -> 0000E7DE 753F -> 0000AE6D 7540 -> 0000EEAF 7541 -> 0000AE6E 7545 -> 0000B3A9 7546 -> 0000AE72 7548 -> 0000EEB2 7549 -> 0000AE74 754B -> 0000EEB1 754C -> 0000BDE7 754D -> 0000AE76 754E -> 0000EEB0 754F -> 0000CEB7 7550 -> 0000AE77 7554 -> 0000C5CF 7555 -> 0000AE7B 7559 -> 0000C1F4 755A -> 0000DBCE 755B -> 0000EEB3 755C -> 0000D0F3 755D -> 0000AE80 7565 -> 0000C2D4 7566 -> 0000C6E8 7567 -> 0000AE88 756A -> 0000B7AC 756B -> 0000AE8B 7572 -> 0000EEB4 7573 -> 0000AE92 7574 -> 0000B3EB 7575 -> 0000AE93 7578 -> 0000BBFB 7579 -> 0000EEB5 757A -> 0000AE96 757F -> 0000E7DC 7580 -> 0000AE9B 7583 -> 0000EEB6 7584 -> 0000AE9E 7586 -> 0000BDAE 7587 -> 0000AEA0 7588 -> 0000AF40 758B -> 0000F1E2 758C -> 0000AF43 758F -> 0000CAE8 7590 -> 0000AF46 7591 -> 0000D2C9 7592 -> 0000F0DA 7593 -> 0000AF47 7594 -> 0000F0DB 7595 -> 0000AF48 7596 -> 0000F0DC 7597 -> 0000C1C6 7598 -> 0000AF49 7599 -> 0000B8ED 759A -> 0000BECE 759B -> 0000AF4A 759D -> 0000F0DE 759E -> 0000AF4C 759F -> 0000C5B1 75A0 -> 0000F0DD 75A1 -> 0000D1F1 75A2 -> 0000AF4D 75A3 -> 0000F0E0 75A4 -> 0000B0CC 75A5 -> 0000BDEA 75A6 -> 0000AF4E 75AB -> 0000D2DF 75AC -> 0000F0DF 75AD -> 0000AF53 75AE -> 0000B4AF 75AF -> 0000B7E8 75B0 -> 0000F0E6 75B1 -> 0000F0E5 75B2 -> 0000C6A3 75B3 -> 0000F0E1 75B5 -> 0000B4C3 75B6 -> 0000AF54 75B8 -> 0000F0E3 75B9 -> 0000D5EE 75BA -> 0000AF56 75BC -> 0000CCDB 75BD -> 0000BED2 75BE -> 0000BCB2 75BF -> 0000AF58 75C2 -> 0000F0E8 75C3 -> 0000F0E7 75C4 -> 0000F0E4 75C5 -> 0000B2A1 75C6 -> 0000AF5B 75C7 -> 0000D6A2 75C8 -> 0000D3B8 75C9 -> 0000BEB7 75CA -> 0000C8AC 75CB -> 0000AF5C 75CD -> 0000F0EA 75CE -> 0000AF5E 75D2 -> 0000D1F7 75D3 -> 0000AF62 75D4 -> 0000D6CC 75D5 -> 0000BADB 75D6 -> 0000F0E9 75D7 -> 0000AF63 75D8 -> 0000B6BB 75D9 -> 0000AF64 75DB -> 0000CDB4 75DC -> 0000AF66 75DE -> 0000C6A6 75DF -> 0000AF68 75E2 -> 0000C1A1 75E3 -> 0000F0EB 75E4 -> 0000F0EE 75E5 -> 0000AF6B 75E6 -> 0000F0ED 75E7 -> 0000F0F0 75E8 -> 0000F0EC 75E9 -> 0000AF6C 75EA -> 0000BBBE 75EB -> 0000F0EF 75EC -> 0000AF6D 75F0 -> 0000CCB5 75F1 -> 0000F0F2 75F2 -> 0000AF71 75F4 -> 0000B3D5 75F5 -> 0000AF73 75F9 -> 0000B1D4 75FA -> 0000AF77 75FC -> 0000F0F3 75FD -> 0000AF79 75FF -> 0000F0F4 7600 -> 0000F0F6 7601 -> 0000B4E1 7602 -> 0000AF7B 7603 -> 0000F0F1 7604 -> 0000AF7C 7605 -> 0000F0F7 7606 -> 0000AF7D 7608 -> 0000AF80 760A -> 0000F0FA 760B -> 0000AF82 760C -> 0000F0F8 760D -> 0000AF83 7610 -> 0000F0F5 7611 -> 0000AF86 7615 -> 0000F0FD 7616 -> 0000AF8A 7617 -> 0000F0F9 7618 -> 0000F0FC 7619 -> 0000F0FE 761A -> 0000AF8B 761B -> 0000F1A1 761C -> 0000AF8C 761F -> 0000CEC1 7620 -> 0000F1A4 7621 -> 0000AF8F 7622 -> 0000F1A3 7623 -> 0000AF90 7624 -> 0000C1F6 7625 -> 0000F0FB 7626 -> 0000CADD 7627 -> 0000AF91 7629 -> 0000B4F1 762A -> 0000B1F1 762B -> 0000CCB1 762C -> 0000AF93 762D -> 0000F1A6 762E -> 0000AF94 7630 -> 0000F1A7 7631 -> 0000AF96 7633 -> 0000F1AC 7634 -> 0000D5CE 7635 -> 0000F1A9 7636 -> 0000AF98 7638 -> 0000C8B3 7639 -> 0000AF9A 763C -> 0000F1A2 763D -> 0000AF9D 763E -> 0000F1AB 763F -> 0000F1A8 7640 -> 0000F1A5 7641 -> 0000AF9E 7643 -> 0000F1AA 7644 -> 0000AFA0 7645 -> 0000B040 764C -> 0000B0A9 764D -> 0000F1AD 764E -> 0000B047 7654 -> 0000F1AF 7655 -> 0000B04D 7656 -> 0000F1B1 7657 -> 0000B04E 765C -> 0000F1B0 765D -> 0000B053 765E -> 0000F1AE 765F -> 0000B054 7663 -> 0000D1A2 7664 -> 0000B058 766B -> 0000F1B2 766C -> 0000B05F 766F -> 0000F1B3 7670 -> 0000B062 7678 -> 0000B9EF 7679 -> 0000B06A 767B -> 0000B5C7 767C -> 0000B06C 767D -> 0000B0D7 767E -> 0000B0D9 767F -> 0000B06D 7682 -> 0000D4ED 7683 -> 0000B070 7684 -> 0000B5C4 7685 -> 0000B071 7686 -> 0000BDD4 7687 -> 0000BBCA 7688 -> 0000F0A7 7689 -> 0000B072 768B -> 0000B8DE 768C -> 0000B074 768E -> 0000F0A8 768F -> 0000B076 7691 -> 0000B0A8 7692 -> 0000B078 7693 -> 0000F0A9 7694 -> 0000B079 7696 -> 0000CDEE 7697 -> 0000B07B 7699 -> 0000F0AA 769A -> 0000B07D 769C -> 0000B080 76A4 -> 0000F0AB 76A5 -> 0000B088 76AE -> 0000C6A4 76AF -> 0000B091 76B1 -> 0000D6E5 76B2 -> 0000F1E4 76B3 -> 0000B093 76B4 -> 0000F1E5 76B5 -> 0000B094 76BF -> 0000C3F3 76C0 -> 0000B09E 76C2 -> 0000D3DB 76C3 -> 0000B0A0 76C4 -> 0000B140 76C5 -> 0000D6D1 76C6 -> 0000C5E8 76C7 -> 0000B141 76C8 -> 0000D3AF 76C9 -> 0000B142 76CA -> 0000D2E6 76CB -> 0000B143 76CD -> 0000EEC1 76CE -> 0000B0BB 76CF -> 0000D5B5 76D0 -> 0000D1CE 76D1 -> 0000BCE0 76D2 -> 0000BAD0 76D3 -> 0000B145 76D4 -> 0000BFF8 76D5 -> 0000B146 76D6 -> 0000B8C7 76D7 -> 0000B5C1 76D8 -> 0000C5CC 76D9 -> 0000B147 76DB -> 0000CAA2 76DC -> 0000B149 76DF -> 0000C3CB 76E0 -> 0000B14C 76E5 -> 0000EEC2 76E6 -> 0000B151 76EE -> 0000C4BF 76EF -> 0000B6A2 76F0 -> 0000B159 76F1 -> 0000EDEC 76F2 -> 0000C3A4 76F3 -> 0000B15A 76F4 -> 0000D6B1 76F5 -> 0000B15B 76F8 -> 0000CFE0 76F9 -> 0000EDEF 76FA -> 0000B15E 76FC -> 0000C5CE 76FD -> 0000B160 76FE -> 0000B6DC 76FF -> 0000B161 7701 -> 0000CAA1 7702 -> 0000B163 7704 -> 0000EDED 7705 -> 0000B165 7707 -> 0000EDF0 7709 -> 0000C3BC 770A -> 0000B167 770B -> 0000BFB4 770C -> 0000B168 770D -> 0000EDEE 770E -> 0000B169 7719 -> 0000EDF4 771A -> 0000EDF2 771B -> 0000B174 771F -> 0000D5E6 7720 -> 0000C3DF 7721 -> 0000B178 7722 -> 0000EDF3 7723 -> 0000B179 7726 -> 0000EDF6 7727 -> 0000B17C 7728 -> 0000D5A3 7729 -> 0000D1A3 772A -> 0000B17D 772C -> 0000B180 772D -> 0000EDF5 772E -> 0000B181 772F -> 0000C3D0 7730 -> 0000B182 7735 -> 0000EDF7 7736 -> 0000BFF4 7737 -> 0000BEEC 7738 -> 0000EDF8 7739 -> 0000B187 773A -> 0000CCF7 773B -> 0000B188 773C -> 0000D1DB 773D -> 0000B189 7740 -> 0000D7C5 7741 -> 0000D5F6 7742 -> 0000B18C 7743 -> 0000EDFC 7744 -> 0000B18D 7747 -> 0000EDFB 7748 -> 0000B190 7750 -> 0000EDF9 7752 -> 0000B198 775A -> 0000EDFD 775B -> 0000BEA6 775C -> 0000B1A0 775D -> 0000B240 7761 -> 0000CBAF 7762 -> 0000EEA1 7763 -> 0000B6BD 7764 -> 0000B244 7765 -> 0000EEA2 7766 -> 0000C4C0 7767 -> 0000B245 7768 -> 0000EDFE 7769 -> 0000B246 776B -> 0000BDDE 776C -> 0000B2C7 776D -> 0000B248 7779 -> 0000B6C3 777A -> 0000B254 777D -> 0000EEA5 777E -> 0000D8BA 777F -> 0000EEA3 7780 -> 0000EEA6 7781 -> 0000B257 7784 -> 0000C3E9 7785 -> 0000B3F2 7786 -> 0000B25A 778C -> 0000EEA7 778D -> 0000EEA4 778E -> 0000CFB9 778F -> 0000B260 7791 -> 0000EEA8 7792 -> 0000C2F7 7793 -> 0000B262 779F -> 0000EEA9 77A1 -> 0000B26E 77A2 -> 0000DEAB 77A3 -> 0000B26F 77A5 -> 0000C6B3 77A6 -> 0000B271 77A7 -> 0000C7C6 77A8 -> 0000B272 77A9 -> 0000D6F5 77AA -> 0000B5C9 77AB -> 0000B273 77AC -> 0000CBB2 77AD -> 0000B274 77B0 -> 0000EEAB 77B1 -> 0000B277 77B3 -> 0000CDAB 77B4 -> 0000B279 77B5 -> 0000EEAC 77B6 -> 0000B27A 77BB -> 0000D5B0 77BC -> 0000B280 77BD -> 0000EEAD 77BE -> 0000B281 77BF -> 0000F6C4 77C0 -> 0000B282 77CD -> 0000DBC7 77CE -> 0000B28F 77D7 -> 0000B4A3 77D8 -> 0000B298 77DB -> 0000C3AC 77DC -> 0000F1E6 77DD -> 0000B29B 77E2 -> 0000CAB8 77E3 -> 0000D2D3 77E4 -> 0000B2A0 77E5 -> 0000D6AA 77E6 -> 0000B340 77E7 -> 0000EFF2 77E8 -> 0000B341 77E9 -> 0000BED8 77EA -> 0000B342 77EB -> 0000BDC3 77EC -> 0000EFF3 77ED -> 0000B6CC 77EE -> 0000B0AB 77EF -> 0000B343 77F3 -> 0000CAAF 77F4 -> 0000B347 77F6 -> 0000EDB6 77F7 -> 0000B349 77F8 -> 0000EDB7 77F9 -> 0000B34A 77FD -> 0000CEF9 77FE -> 0000B7AF 77FF -> 0000BFF3 7800 -> 0000EDB8 7801 -> 0000C2EB 7802 -> 0000C9B0 7803 -> 0000B34E 7809 -> 0000EDB9 780A -> 0000B354 780C -> 0000C6F6 780D -> 0000BFB3 780E -> 0000B356 7811 -> 0000EDBC 7812 -> 0000C5F8 7813 -> 0000B359 7814 -> 0000D1D0 7815 -> 0000B35A 7816 -> 0000D7A9 7817 -> 0000EDBA 7819 -> 0000B35B 781A -> 0000D1E2 781B -> 0000B35C 781C -> 0000EDBF 781E -> 0000B35D 781F -> 0000EDC4 7820 -> 0000B35E 7823 -> 0000EDC8 7824 -> 0000B361 7825 -> 0000EDC6 7826 -> 0000EDCE 7827 -> 0000D5E8 7828 -> 0000B362 7829 -> 0000EDC9 782A -> 0000B363 782C -> 0000EDC7 782D -> 0000EDBE 782E -> 0000B365 7830 -> 0000C5E9 7831 -> 0000B367 7834 -> 0000C6C6 7835 -> 0000B36A 7837 -> 0000C9E9 7838 -> 0000D4D2 7839 -> 0000EDC1 783C -> 0000EDC5 783D -> 0000B36C 783E -> 0000C0F9 783F -> 0000B36D 7840 -> 0000B4A1 7841 -> 0000B36E 7845 -> 0000B9E8 7846 -> 0000B372 7847 -> 0000EDD0 7848 -> 0000B373 784C -> 0000EDD1 784D -> 0000B377 784E -> 0000EDCA 784F -> 0000B378 7850 -> 0000EDCF 7851 -> 0000B379 7852 -> 0000CEF8 7853 -> 0000B37A 7855 -> 0000CBB6 7856 -> 0000EDCC 7858 -> 0000B37C 785B -> 0000B380 785D -> 0000CFF5 785E -> 0000B382 786A -> 0000EDD2 786B -> 0000C1F2 786C -> 0000D3B2 786D -> 0000EDCB 786E -> 0000C8B7 786F -> 0000B38E 7877 -> 0000BCEF 7878 -> 0000B396 787C -> 0000C5F0 787D -> 0000B39A 7884 -> 0000B440 7887 -> 0000EDD6 7888 -> 0000B443 7889 -> 0000B5EF 788A -> 0000B444 788C -> 0000C2B5 788D -> 0000B0AD 788E -> 0000CBE9 788F -> 0000B446 7891 -> 0000B1AE 7892 -> 0000B448 7893 -> 0000EDD4 7894 -> 0000B449 7897 -> 0000CDEB 7898 -> 0000B5E2 7899 -> 0000B44C 789A -> 0000EDD5 789B -> 0000EDD3 789C -> 0000EDD7 789D -> 0000B44D 789F -> 0000B5FA 78A0 -> 0000B44F 78A1 -> 0000EDD8 78A2 -> 0000B450 78A3 -> 0000EDD9 78A4 -> 0000B451 78A5 -> 0000EDDC 78A6 -> 0000B452 78A7 -> 0000B1CC 78A8 -> 0000B453 78B0 -> 0000C5F6 78B1 -> 0000BCEE 78B2 -> 0000EDDA 78B3 -> 0000CCBC 78B4 -> 0000B2EA 78B5 -> 0000B45B 78B9 -> 0000EDDB 78BA -> 0000B45F 78BE -> 0000C4EB 78BF -> 0000B463 78C1 -> 0000B4C5 78C2 -> 0000B465 78C5 -> 0000B0F5 78C6 -> 0000B468 78C9 -> 0000EDDF 78CA -> 0000C0DA 78CB -> 0000B4E8 78CC -> 0000B46B 78D0 -> 0000C5CD 78D1 -> 0000B46F 78D4 -> 0000EDDD 78D5 -> 0000BFC4 78D6 -> 0000B472 78D9 -> 0000EDDE 78DA -> 0000B475 78E4 -> 0000B480 78E8 -> 0000C4A5 78E9 -> 0000B484 78EC -> 0000EDE0 78ED -> 0000B487 78F2 -> 0000EDE1 78F3 -> 0000B48C 78F4 -> 0000EDE3 78F5 -> 0000B48D 78F7 -> 0000C1D7 78F8 -> 0000B48F 78FA -> 0000BBC7 78FB -> 0000B491 7901 -> 0000BDB8 7902 -> 0000B497 7905 -> 0000EDE2 7906 -> 0000B49A 790D -> 0000B540 7913 -> 0000EDE4 7914 -> 0000B546 791E -> 0000EDE6 791F -> 0000B550 7924 -> 0000EDE5 7925 -> 0000B555 7934 -> 0000EDE7 7935 -> 0000B564 793A -> 0000CABE 793B -> 0000ECEA 793C -> 0000C0F1 793D -> 0000B569 793E -> 0000C9E7 793F -> 0000B56A 7940 -> 0000ECEB 7941 -> 0000C6EE 7942 -> 0000B56B 7946 -> 0000ECEC 7947 -> 0000B56F 7948 -> 0000C6ED 7949 -> 0000ECED 794A -> 0000B570 7953 -> 0000ECF0 7954 -> 0000B579 7956 -> 0000D7E6 7957 -> 0000ECF3 7958 -> 0000B57B 795A -> 0000ECF1 795B -> 0000ECEE 795D -> 0000D7A3 795E -> 0000C9F1 795F -> 0000CBEE 7960 -> 0000ECF4 7961 -> 0000B57D 7962 -> 0000ECF2 7963 -> 0000B57E 7964 -> 0000B580 7965 -> 0000CFE9 7966 -> 0000B581 7967 -> 0000ECF6 7968 -> 0000C6B1 7969 -> 0000B582 796D -> 0000BCC0 796E -> 0000B586 796F -> 0000ECF5 7970 -> 0000B587 7977 -> 0000B5BB 7978 -> 0000BBF6 7979 -> 0000B58E 797A -> 0000ECF7 797B -> 0000B58F 7980 -> 0000D9F7 7981 -> 0000BDFB 7982 -> 0000B594 7984 -> 0000C2BB 7985 -> 0000ECF8 7986 -> 0000B596 798A -> 0000ECF9 798B -> 0000B59A 798F -> 0000B8A3 7990 -> 0000B59E 7993 -> 0000B640 799A -> 0000ECFA 799B -> 0000B647 79A7 -> 0000ECFB 79A8 -> 0000B653 79B3 -> 0000ECFC 79B4 -> 0000B65E 79B9 -> 0000D3ED 79BA -> 0000D8AE 79BB -> 0000C0EB 79BC -> 0000B663 79BD -> 0000C7DD 79BE -> 0000BACC 79BF -> 0000B664 79C0 -> 0000D0E3 79C1 -> 0000CBBD 79C2 -> 0000B665 79C3 -> 0000CDBA 79C4 -> 0000B666 79C6 -> 0000B8D1 79C7 -> 0000B668 79C9 -> 0000B1FC 79CA -> 0000B66A 79CB -> 0000C7EF 79CC -> 0000B66B 79CD -> 0000D6D6 79CE -> 0000B66C 79D1 -> 0000BFC6 79D2 -> 0000C3EB 79D3 -> 0000B66F 79D5 -> 0000EFF5 79D6 -> 0000B671 79D8 -> 0000C3D8 79D9 -> 0000B673 79DF -> 0000D7E2 79E0 -> 0000B679 79E3 -> 0000EFF7 79E4 -> 0000B3D3 79E5 -> 0000B67C 79E6 -> 0000C7D8 79E7 -> 0000D1ED 79E8 -> 0000B67D 79E9 -> 0000D6C8 79EA -> 0000B67E 79EB -> 0000EFF8 79EC -> 0000B680 79ED -> 0000EFF6 79EE -> 0000B681 79EF -> 0000BBFD 79F0 -> 0000B3C6 79F1 -> 0000B682 79F8 -> 0000BDD5 79F9 -> 0000B689 79FB -> 0000D2C6 79FC -> 0000B68B 79FD -> 0000BBE0 79FE -> 0000B68C 7A00 -> 0000CFA1 7A01 -> 0000B68E 7A02 -> 0000EFFC 7A03 -> 0000EFFB 7A04 -> 0000B68F 7A06 -> 0000EFF9 7A07 -> 0000B691 7A0B -> 0000B3CC 7A0C -> 0000B695 7A0D -> 0000C9D4 7A0E -> 0000CBB0 7A0F -> 0000B696 7A14 -> 0000EFFE 7A15 -> 0000B69B 7A17 -> 0000B0DE 7A18 -> 0000B69D 7A1A -> 0000D6C9 7A1B -> 0000B69F 7A1D -> 0000B740 7A1E -> 0000EFFD 7A1F -> 0000B741 7A20 -> 0000B3ED 7A21 -> 0000B742 7A23 -> 0000F6D5 7A24 -> 0000B744 7A33 -> 0000CEC8 7A34 -> 0000B753 7A37 -> 0000F0A2 7A38 -> 0000B756 7A39 -> 0000F0A1 7A3A -> 0000B757 7A3B -> 0000B5BE 7A3C -> 0000BCDA 7A3D -> 0000BBFC 7A3E -> 0000B758 7A3F -> 0000B8E5 7A40 -> 0000B759 7A46 -> 0000C4C2 7A47 -> 0000B75F 7A51 -> 0000F0A3 7A52 -> 0000B769 7A57 -> 0000CBEB 7A58 -> 0000B76E 7A69 -> 0000B780 7A70 -> 0000F0A6 7A71 -> 0000B787 7A74 -> 0000D1A8 7A75 -> 0000B78A 7A76 -> 0000BEBF 7A77 -> 0000C7EE 7A78 -> 0000F1B6 7A7A -> 0000BFD5 7A7B -> 0000B78B 7A7F -> 0000B4A9 7A80 -> 0000F1B8 7A81 -> 0000CDBB 7A82 -> 0000B78F 7A83 -> 0000C7D4 7A84 -> 0000D5AD 7A85 -> 0000B790 7A86 -> 0000F1B9 7A87 -> 0000B791 7A88 -> 0000F1BA 7A89 -> 0000B792 7A8D -> 0000C7CF 7A8E -> 0000B796 7A91 -> 0000D2A4 7A92 -> 0000D6CF 7A93 -> 0000B799 7A95 -> 0000F1BB 7A96 -> 0000BDD1 7A97 -> 0000B4B0 7A98 -> 0000BEBD 7A99 -> 0000B79B 7A9C -> 0000B4DC 7A9D -> 0000CED1 7A9E -> 0000B79E 7A9F -> 0000BFDF 7AA0 -> 0000F1BD 7AA1 -> 0000B79F 7AA3 -> 0000B840 7AA5 -> 0000BFFA 7AA6 -> 0000F1BC 7AA7 -> 0000B842 7AA8 -> 0000F1BF 7AA9 -> 0000B843 7AAC -> 0000F1BE 7AAD -> 0000F1C0 7AAE -> 0000B846 7AB3 -> 0000F1C1 7AB4 -> 0000B84B 7ABF -> 0000C1FE 7AC0 -> 0000B856 7ACB -> 0000C1A2 7ACC -> 0000B861 7AD6 -> 0000CAFA 7AD7 -> 0000B86B 7AD9 -> 0000D5BE 7ADA -> 0000B86D 7ADE -> 0000BEBA 7ADF -> 0000BEB9 7AE0 -> 0000D5C2 7AE1 -> 0000B871 7AE3 -> 0000BFA2 7AE4 -> 0000B873 7AE5 -> 0000CDAF 7AE6 -> 0000F1B5 7AE7 -> 0000B874 7AED -> 0000BDDF 7AEE -> 0000B87A 7AEF -> 0000B6CB 7AF0 -> 0000B87B 7AF4 -> 0000B880 7AF9 -> 0000D6F1 7AFA -> 0000F3C3 7AFB -> 0000B885 7AFD -> 0000F3C4 7AFE -> 0000B887 7AFF -> 0000B8CD 7B00 -> 0000B888 7B03 -> 0000F3C6 7B05 -> 0000B88B 7B06 -> 0000B0CA 7B07 -> 0000B88C 7B08 -> 0000F3C5 7B09 -> 0000B88D 7B0A -> 0000F3C9 7B0B -> 0000CBF1 7B0C -> 0000B88E 7B0F -> 0000F3CB 7B10 -> 0000B891 7B11 -> 0000D0A6 7B12 -> 0000B892 7B14 -> 0000B1CA 7B15 -> 0000F3C8 7B16 -> 0000B894 7B19 -> 0000F3CF 7B1A -> 0000B897 7B1B -> 0000B5D1 7B1C -> 0000B898 7B1E -> 0000F3D7 7B1F -> 0000B89A 7B20 -> 0000F3D2 7B21 -> 0000B89B 7B24 -> 0000F3D4 7B25 -> 0000F3D3 7B26 -> 0000B7FB 7B27 -> 0000B89E 7B28 -> 0000B1BF 7B29 -> 0000B89F 7B2A -> 0000F3CE 7B2B -> 0000F3CA 7B2C -> 0000B5DA 7B2D -> 0000B8A0 7B2E -> 0000F3D0 7B2F -> 0000B940 7B31 -> 0000F3D1 7B32 -> 0000B942 7B33 -> 0000F3D5 7B34 -> 0000B943 7B38 -> 0000F3CD 7B39 -> 0000B947 7B3A -> 0000BCE3 7B3B -> 0000B948 7B3C -> 0000C1FD 7B3D -> 0000B949 7B3E -> 0000F3D6 7B3F -> 0000B94A 7B45 -> 0000F3DA 7B46 -> 0000B950 7B47 -> 0000F3CC 7B48 -> 0000B951 7B49 -> 0000B5C8 7B4A -> 0000B952 7B4B -> 0000BDEE 7B4C -> 0000F3DC 7B4D -> 0000B953 7B4F -> 0000B7A4 7B50 -> 0000BFF0 7B51 -> 0000D6FE 7B52 -> 0000CDB2 7B53 -> 0000B955 7B54 -> 0000B4F0 7B55 -> 0000B956 7B56 -> 0000B2DF 7B57 -> 0000B957 7B58 -> 0000F3D8 7B59 -> 0000B958 7B5A -> 0000F3D9 7B5B -> 0000C9B8 7B5C -> 0000B959 7B5D -> 0000F3DD 7B5E -> 0000B95A 7B60 -> 0000F3DE 7B61 -> 0000B95C 7B62 -> 0000F3E1 7B63 -> 0000B95D 7B6E -> 0000F3DF 7B6F -> 0000B968 7B71 -> 0000F3E3 7B72 -> 0000F3E2 7B73 -> 0000B96A 7B75 -> 0000F3DB 7B76 -> 0000B96C 7B77 -> 0000BFEA 7B78 -> 0000B96D 7B79 -> 0000B3EF 7B7A -> 0000B96E 7B7B -> 0000F3E0 7B7C -> 0000B96F 7B7E -> 0000C7A9 7B7F -> 0000B971 7B80 -> 0000BCF2 7B81 -> 0000B972 7B85 -> 0000F3EB 7B86 -> 0000B976 7B8D -> 0000B9BF 7B8E -> 0000B97D 7B90 -> 0000F3E4 7B91 -> 0000B980 7B94 -> 0000B2AD 7B95 -> 0000BBFE 7B96 -> 0000B983 7B97 -> 0000CBE3 7B98 -> 0000B984 7B9C -> 0000F3ED 7B9D -> 0000F3E9 7B9E -> 0000B988 7BA1 -> 0000B9DC 7BA2 -> 0000F3EE 7BA3 -> 0000B98B 7BA6 -> 0000F3E5 7BA8 -> 0000F3EA 7BA9 -> 0000C2E1 7BAA -> 0000F3EC 7BAB -> 0000F3EF 7BAC -> 0000F3E8 7BAD -> 0000BCFD 7BAE -> 0000B98E 7BB1 -> 0000CFE4 7BB2 -> 0000B991 7BB4 -> 0000F3F0 7BB5 -> 0000B993 7BB8 -> 0000F3E7 7BB9 -> 0000B996 7BC1 -> 0000F3F2 7BC2 -> 0000B99E 7BC5 -> 0000BA40 7BC6 -> 0000D7AD 7BC7 -> 0000C6AA 7BC8 -> 0000BA41 7BCC -> 0000F3F3 7BCD -> 0000BA45 7BD1 -> 0000F3F1 7BD2 -> 0000BA49 7BD3 -> 0000C2A8 7BD4 -> 0000BA4A 7BD9 -> 0000B8DD 7BDA -> 0000F3F5 7BDB -> 0000BA4F 7BDD -> 0000F3F4 7BDE -> 0000BA51 7BE1 -> 0000B4DB 7BE2 -> 0000BA54 7BE5 -> 0000F3F6 7BE7 -> 0000BA57 7BEA -> 0000F3F8 7BEB -> 0000BA5A 7BEE -> 0000C0BA 7BEF -> 0000BA5D 7BF1 -> 0000C0E9 7BF2 -> 0000BA5F 7BF7 -> 0000C5F1 7BF8 -> 0000BA64 7BFC -> 0000F3FB 7BFD -> 0000BA68 7BFE -> 0000F3FA 7BFF -> 0000BA69 7C07 -> 0000B4D8 7C08 -> 0000BA71 7C0B -> 0000F3FE 7C0C -> 0000F3F9 7C0D -> 0000BA74 7C0F -> 0000F3FC 7C10 -> 0000BA76 7C16 -> 0000F3FD 7C17 -> 0000BA7C 7C1A -> 0000BA80 7C1F -> 0000F4A1 7C20 -> 0000BA85 7C26 -> 0000F4A3 7C27 -> 0000BBC9 7C28 -> 0000BA8B 7C2A -> 0000F4A2 7C2B -> 0000BA8D 7C38 -> 0000F4A4 7C39 -> 0000BA9A 7C3F -> 0000B2BE 7C40 -> 0000F4A6 7C41 -> 0000F4A5 7C42 -> 0000BAA0 7C43 -> 0000BB40 7C4D -> 0000BCAE 7C4E -> 0000BB4A 7C73 -> 0000C3D7 7C74 -> 0000D9E1 7C75 -> 0000BB6F 7C7B -> 0000C0E0 7C7C -> 0000F4CC 7C7D -> 0000D7D1 7C7E -> 0000BB75 7C88 -> 0000BB80 7C89 -> 0000B7DB 7C8A -> 0000BB81 7C91 -> 0000F4CE 7C92 -> 0000C1A3 7C93 -> 0000BB88 7C95 -> 0000C6C9 7C96 -> 0000BB8A 7C97 -> 0000B4D6 7C98 -> 0000D5B3 7C99 -> 0000BB8B 7C9C -> 0000F4D0 7C9D -> 0000F4CF 7C9E -> 0000F4D1 7C9F -> 0000CBDA 7CA0 -> 0000BB8E 7CA2 -> 0000F4D2 7CA3 -> 0000BB90 7CA4 -> 0000D4C1 7CA5 -> 0000D6E0 7CA6 -> 0000BB91 7CAA -> 0000B7E0 7CAB -> 0000BB95 7CAE -> 0000C1B8 7CAF -> 0000BB98 7CB1 -> 0000C1BB 7CB2 -> 0000F4D3 7CB3 -> 0000BEAC 7CB4 -> 0000BB9A 7CB9 -> 0000B4E2 7CBA -> 0000BB9F 7CBC -> 0000F4D4 7CBE -> 0000BEAB 7CBF -> 0000BC40 7CC1 -> 0000F4D6 7CC2 -> 0000BC42 7CC5 -> 0000F4DB 7CC6 -> 0000BC45 7CC7 -> 0000F4D7 7CC8 -> 0000F4DA 7CC9 -> 0000BC46 7CCA -> 0000BAFD 7CCB -> 0000BC47 7CCC -> 0000F4D8 7CCE -> 0000BC48 7CD5 -> 0000B8E2 7CD6 -> 0000CCC7 7CD7 -> 0000F4DC 7CD8 -> 0000BC4F 7CD9 -> 0000B2DA 7CDA -> 0000BC50 7CDC -> 0000C3D3 7CDD -> 0000BC52 7CDF -> 0000D4E3 7CE0 -> 0000BFB7 7CE1 -> 0000BC54 7CE8 -> 0000F4DD 7CE9 -> 0000BC5B 7CEF -> 0000C5B4 7CF0 -> 0000BC61 7CF8 -> 0000F4E9 7CF9 -> 0000BC69 7CFB -> 0000CFB5 7CFC -> 0000BC6B 7D0A -> 0000CEC9 7D0B -> 0000BC79 7D11 -> 0000BC80 7D20 -> 0000CBD8 7D21 -> 0000BC8F 7D22 -> 0000CBF7 7D23 -> 0000BC90 7D27 -> 0000BDF4 7D28 -> 0000BC94 7D2B -> 0000D7CF 7D2C -> 0000BC97 7D2F -> 0000C0DB 7D30 -> 0000BC9A 7D37 -> 0000BD40 7D6E -> 0000D0F5 7D6F -> 0000BD77 7D77 -> 0000F4EA 7D78 -> 0000BD80 7D99 -> 0000BE40 7DA6 -> 0000F4EB 7DA7 -> 0000BE4D 7DAE -> 0000F4EC 7DAF -> 0000BE54 7DDA -> 0000BE80 7DFB -> 0000BF40 7E3A -> 0000BF80 7E3B -> 0000F7E3 7E3C -> 0000BF81 7E41 -> 0000B7B1 7E42 -> 0000BF86 7E47 -> 0000F4ED 7E48 -> 0000BF8B 7E5E -> 0000C040 7E82 -> 0000D7EB 7E83 -> 0000C064 7E9B -> 0000F4EE 7E9C -> 0000C07C 7E9F -> 0000E6F9 7EA0 -> 0000BEC0 7EA1 -> 0000E6FA 7EA2 -> 0000BAEC 7EA3 -> 0000E6FB 7EA4 -> 0000CFCB 7EA5 -> 0000E6FC 7EA6 -> 0000D4BC 7EA7 -> 0000BCB6 7EA8 -> 0000E6FD 7EAA -> 0000BCCD 7EAB -> 0000C8D2 7EAC -> 0000CEB3 7EAD -> 0000E7A1 7EAE -> 0000C080 7EAF -> 0000B4BF 7EB0 -> 0000E7A2 7EB1 -> 0000C9B4 7EB2 -> 0000B8D9 7EB3 -> 0000C4C9 7EB4 -> 0000C081 7EB5 -> 0000D7DD 7EB6 -> 0000C2DA 7EB7 -> 0000B7D7 7EB8 -> 0000D6BD 7EB9 -> 0000CEC6 7EBA -> 0000B7C4 7EBB -> 0000C082 7EBD -> 0000C5A6 7EBE -> 0000E7A3 7EBF -> 0000CFDF 7EC0 -> 0000E7A4 7EC3 -> 0000C1B7 7EC4 -> 0000D7E9 7EC5 -> 0000C9F0 7EC6 -> 0000CFB8 7EC7 -> 0000D6AF 7EC8 -> 0000D6D5 7EC9 -> 0000E7A7 7ECA -> 0000B0ED 7ECB -> 0000E7A8 7ECD -> 0000C9DC 7ECE -> 0000D2EF 7ECF -> 0000BEAD 7ED0 -> 0000E7AA 7ED1 -> 0000B0F3 7ED2 -> 0000C8DE 7ED3 -> 0000BDE1 7ED4 -> 0000E7AB 7ED5 -> 0000C8C6 7ED6 -> 0000C084 7ED7 -> 0000E7AC 7ED8 -> 0000BBE6 7ED9 -> 0000B8F8 7EDA -> 0000D1A4 7EDB -> 0000E7AD 7EDC -> 0000C2E7 7EDD -> 0000BEF8 7EDE -> 0000BDCA 7EDF -> 0000CDB3 7EE0 -> 0000E7AE 7EE2 -> 0000BEEE 7EE3 -> 0000D0E5 7EE4 -> 0000C085 7EE5 -> 0000CBE7 7EE6 -> 0000CCD0 7EE7 -> 0000BCCC 7EE8 -> 0000E7B0 7EE9 -> 0000BCA8 7EEA -> 0000D0F7 7EEB -> 0000E7B1 7EEC -> 0000C086 7EED -> 0000D0F8 7EEE -> 0000E7B2 7EF0 -> 0000B4C2 7EF1 -> 0000E7B4 7EF3 -> 0000C9FE 7EF4 -> 0000CEAC 7EF5 -> 0000C3E0 7EF6 -> 0000E7B7 7EF7 -> 0000B1C1 7EF8 -> 0000B3F1 7EF9 -> 0000C087 7EFA -> 0000E7B8 7EFC -> 0000D7DB 7EFD -> 0000D5C0 7EFE -> 0000E7BA 7EFF -> 0000C2CC 7F00 -> 0000D7BA 7F01 -> 0000E7BB 7F04 -> 0000BCEA 7F05 -> 0000C3E5 7F06 -> 0000C0C2 7F07 -> 0000E7BE 7F09 -> 0000BCA9 7F0A -> 0000C088 7F0B -> 0000E7C0 7F0D -> 0000E7B6 7F0E -> 0000B6D0 7F0F -> 0000E7C2 7F10 -> 0000C089 7F11 -> 0000E7C3 7F13 -> 0000BBBA 7F14 -> 0000B5DE 7F15 -> 0000C2C6 7F16 -> 0000B1E0 7F17 -> 0000E7C5 7F18 -> 0000D4B5 7F19 -> 0000E7C6 7F1A -> 0000B8BF 7F1B -> 0000E7C8 7F1C -> 0000E7C7 7F1D -> 0000B7EC 7F1E -> 0000C08A 7F1F -> 0000E7C9 7F20 -> 0000B2F8 7F21 -> 0000E7CA 7F28 -> 0000D3A7 7F29 -> 0000CBF5 7F2A -> 0000E7D1 7F2E -> 0000C9C9 7F2F -> 0000E7D5 7F34 -> 0000BDC9 7F35 -> 0000E7DA 7F36 -> 0000F3BE 7F37 -> 0000C08B 7F38 -> 0000B8D7 7F39 -> 0000C08C 7F3A -> 0000C8B1 7F3B -> 0000C08D 7F42 -> 0000F3BF 7F43 -> 0000C094 7F44 -> 0000F3C0 7F46 -> 0000C095 7F50 -> 0000B9DE 7F51 -> 0000CDF8 7F52 -> 0000C09F 7F54 -> 0000D8E8 7F55 -> 0000BAB1 7F56 -> 0000C140 7F57 -> 0000C2DE 7F58 -> 0000EEB7 7F59 -> 0000C141 7F5A -> 0000B7A3 7F5B -> 0000C142 7F5F -> 0000EEB9 7F60 -> 0000C146 7F61 -> 0000EEB8 7F62 -> 0000B0D5 7F63 -> 0000C147 7F68 -> 0000EEBB 7F69 -> 0000D5D6 7F6A -> 0000D7EF 7F6B -> 0000C14C 7F6E -> 0000D6C3 7F6F -> 0000C14F 7F71 -> 0000EEBD 7F72 -> 0000CAF0 7F73 -> 0000C151 7F74 -> 0000EEBC 7F75 -> 0000C152 7F79 -> 0000EEBE 7F7A -> 0000C156 7F7E -> 0000EEC0 7F7F -> 0000C15A 7F81 -> 0000EEBF 7F82 -> 0000C15C 7F8A -> 0000D1F2 7F8B -> 0000C164 7F8C -> 0000C7BC 7F8D -> 0000C165 7F8E -> 0000C3C0 7F8F -> 0000C166 7F94 -> 0000B8E1 7F95 -> 0000C16B 7F9A -> 0000C1E7 7F9B -> 0000C170 7F9D -> 0000F4C6 7F9E -> 0000D0DF 7F9F -> 0000F4C7 7FA0 -> 0000C172 7FA1 -> 0000CFDB 7FA2 -> 0000C173 7FA4 -> 0000C8BA 7FA5 -> 0000C175 7FA7 -> 0000F4C8 7FA8 -> 0000C177 7FAF -> 0000F4C9 7FB1 -> 0000C17E 7FB2 -> 0000F4CB 7FB3 -> 0000C180 7FB8 -> 0000D9FA 7FB9 -> 0000B8FE 7FBA -> 0000C185 7FBC -> 0000E5F1 7FBD -> 0000D3F0 7FBE -> 0000C187 7FBF -> 0000F4E0 7FC0 -> 0000C188 7FC1 -> 0000CECC 7FC2 -> 0000C189 7FC5 -> 0000B3E1 7FC6 -> 0000C18C 7FCA -> 0000F1B4 7FCB -> 0000C190 7FCC -> 0000D2EE 7FCD -> 0000C191 7FCE -> 0000F4E1 7FCF -> 0000C192 7FD4 -> 0000CFE8 7FD5 -> 0000F4E2 7FD6 -> 0000C197 7FD8 -> 0000C7CC 7FD9 -> 0000C199 7FDF -> 0000B5D4 7FE0 -> 0000B4E4 7FE1 -> 0000F4E4 7FE2 -> 0000C19F 7FE4 -> 0000C240 7FE5 -> 0000F4E3 7FE6 -> 0000F4E5 7FE7 -> 0000C241 7FE9 -> 0000F4E6 7FEA -> 0000C243 7FEE -> 0000F4E7 7FEF -> 0000C247 7FF0 -> 0000BAB2 7FF1 -> 0000B0BF 7FF2 -> 0000C248 7FF3 -> 0000F4E8 7FF4 -> 0000C249 7FFB -> 0000B7AD 7FFC -> 0000D2ED 7FFD -> 0000C250 8000 -> 0000D2AB 8001 -> 0000C0CF 8002 -> 0000C253 8003 -> 0000BFBC 8004 -> 0000EBA3 8005 -> 0000D5DF 8006 -> 0000EAC8 8007 -> 0000C254 800B -> 0000F1F3 800C -> 0000B6F8 800D -> 0000CBA3 800E -> 0000C258 8010 -> 0000C4CD 8011 -> 0000C25A 8012 -> 0000F1E7 8013 -> 0000C25B 8014 -> 0000F1E8 8015 -> 0000B8FB 8016 -> 0000F1E9 8017 -> 0000BAC4 8018 -> 0000D4C5 8019 -> 0000B0D2 801A -> 0000C25C 801C -> 0000F1EA 801D -> 0000C25E 8020 -> 0000F1EB 8021 -> 0000C261 8022 -> 0000F1EC 8023 -> 0000C262 8025 -> 0000F1ED 8028 -> 0000F1F1 8029 -> 0000F1F0 802A -> 0000C5D5 802B -> 0000C264 8031 -> 0000F1F2 8032 -> 0000C26A 8033 -> 0000B6FA 8034 -> 0000C26B 8035 -> 0000F1F4 8036 -> 0000D2AE 8037 -> 0000DEC7 8038 -> 0000CBCA 8039 -> 0000C26C 803B -> 0000B3DC 803C -> 0000C26E 803D -> 0000B5A2 803E -> 0000C26F 803F -> 0000B9A2 8040 -> 0000C270 8042 -> 0000C4F4 8043 -> 0000F1F5 8044 -> 0000C272 8046 -> 0000F1F6 8047 -> 0000C274 804A -> 0000C1C4 804B -> 0000C1FB 804C -> 0000D6B0 804D -> 0000F1F7 804E -> 0000C277 8052 -> 0000F1F8 8053 -> 0000C27B 8054 -> 0000C1AA 8055 -> 0000C27C 8058 -> 0000C6B8 8059 -> 0000C280 805A -> 0000BEDB 805B -> 0000C281 8069 -> 0000F1F9 806A -> 0000B4CF 806B -> 0000C28F 8071 -> 0000F1FA 8072 -> 0000C295 807E -> 0000C340 807F -> 0000EDB2 8080 -> 0000EDB1 8081 -> 0000C341 8083 -> 0000CBE0 8084 -> 0000D2DE 8085 -> 0000C343 8086 -> 0000CBC1 8087 -> 0000D5D8 8088 -> 0000C344 8089 -> 0000C8E2 808A -> 0000C345 808B -> 0000C0DF 808C -> 0000BCA1 808D -> 0000C346 8093 -> 0000EBC1 8094 -> 0000C34C 8096 -> 0000D0A4 8097 -> 0000C34E 8098 -> 0000D6E2 8099 -> 0000C34F 809A -> 0000B6C7 809B -> 0000B8D8 809C -> 0000EBC0 809D -> 0000B8CE 809E -> 0000C350 809F -> 0000EBBF 80A0 -> 0000B3A6 80A1 -> 0000B9C9 80A2 -> 0000D6AB 80A3 -> 0000C351 80A4 -> 0000B7F4 80A5 -> 0000B7CA 80A6 -> 0000C352 80A9 -> 0000BCE7 80AA -> 0000B7BE 80AB -> 0000EBC6 80AC -> 0000C355 80AD -> 0000EBC7 80AE -> 0000B0B9 80AF -> 0000BFCF 80B0 -> 0000C356 80B1 -> 0000EBC5 80B2 -> 0000D3FD 80B3 -> 0000C357 80B4 -> 0000EBC8 80B5 -> 0000C358 80B7 -> 0000EBC9 80B8 -> 0000C35A 80BA -> 0000B7CE 80BB -> 0000C35C 80BC -> 0000EBC2 80BD -> 0000EBC4 80BE -> 0000C9F6 80BF -> 0000D6D7 80C0 -> 0000D5CD 80C1 -> 0000D0B2 80C2 -> 0000EBCF 80C3 -> 0000CEB8 80C4 -> 0000EBD0 80C5 -> 0000C35D 80C6 -> 0000B5A8 80C7 -> 0000C35E 80CC -> 0000B1B3 80CD -> 0000EBD2 80CE -> 0000CCA5 80CF -> 0000C363 80D6 -> 0000C5D6 80D7 -> 0000EBD3 80D8 -> 0000C36A 80D9 -> 0000EBD1 80DA -> 0000C5DF 80DB -> 0000EBCE 80DC -> 0000CAA4 80DD -> 0000EBD5 80DE -> 0000B0FB 80DF -> 0000C36B 80E1 -> 0000BAFA 80E2 -> 0000C36D 80E4 -> 0000D8B7 80E5 -> 0000F1E3 80E6 -> 0000C36F 80E7 -> 0000EBCA 80EB -> 0000EBD6 80EC -> 0000E6C0 80ED -> 0000EBD9 80EE -> 0000C370 80EF -> 0000BFE8 80F0 -> 0000D2C8 80F1 -> 0000EBD7 80F2 -> 0000EBDC 80F3 -> 0000B8EC 80F4 -> 0000EBD8 80F5 -> 0000C371 80F6 -> 0000BDBA 80F7 -> 0000C372 80F8 -> 0000D0D8 80F9 -> 0000C373 80FA -> 0000B0B7 80FB -> 0000C374 80FC -> 0000EBDD 80FD -> 0000C4DC 80FE -> 0000C375 8102 -> 0000D6AC 8103 -> 0000C379 8106 -> 0000B4E0 8107 -> 0000C37C 8109 -> 0000C2F6 810A -> 0000BCB9 810B -> 0000C37E 810C -> 0000C380 810D -> 0000EBDA 810F -> 0000D4E0 8110 -> 0000C6EA 8111 -> 0000C4D4 8112 -> 0000EBDF 8113 -> 0000C5A7 8114 -> 0000D9F5 8115 -> 0000C381 8116 -> 0000B2B1 8117 -> 0000C382 8118 -> 0000EBE4 8119 -> 0000C383 811A -> 0000BDC5 811B -> 0000C384 811E -> 0000EBE2 811F -> 0000C387 812C -> 0000EBE3 812D -> 0000C394 812F -> 0000B8AC 8130 -> 0000C396 8131 -> 0000CDD1 8132 -> 0000EBE5 8133 -> 0000C397 8136 -> 0000EBE1 8137 -> 0000C39A 8138 -> 0000C1B3 8139 -> 0000C39B 813E -> 0000C6A2 813F -> 0000C3A0 8140 -> 0000C440 8146 -> 0000CCF3 8147 -> 0000C446 8148 -> 0000EBE6 8149 -> 0000C447 814A -> 0000C0B0 814B -> 0000D2B8 814C -> 0000EBE7 814D -> 0000C448 8150 -> 0000B8AF 8151 -> 0000B8AD 8152 -> 0000C44B 8153 -> 0000EBE8 8154 -> 0000C7BB 8155 -> 0000CDF3 8156 -> 0000C44C 8159 -> 0000EBEA 815B -> 0000C44F 8160 -> 0000EBED 8161 -> 0000C454 8165 -> 0000D0C8 8166 -> 0000C458 8167 -> 0000EBF2 8168 -> 0000C459 8169 -> 0000EBEE 816A -> 0000C45A 816D -> 0000EBF1 816E -> 0000C8F9 816F -> 0000C45D 8170 -> 0000D1FC 8171 -> 0000EBEC 8172 -> 0000C45E 8174 -> 0000EBE9 8175 -> 0000C460 8179 -> 0000B8B9 817A -> 0000CFD9 817B -> 0000C4E5 817C -> 0000EBEF 817E -> 0000CCDA 817F -> 0000CDC8 8180 -> 0000B0F2 8181 -> 0000C464 8182 -> 0000EBF6 8183 -> 0000C465 8188 -> 0000EBF5 8189 -> 0000C46A 818A -> 0000B2B2 818B -> 0000C46B 818F -> 0000B8E0 8190 -> 0000C46F 8191 -> 0000EBF7 8192 -> 0000C470 8198 -> 0000B1EC 8199 -> 0000C476 819B -> 0000CCC5 819C -> 0000C4A4 819D -> 0000CFA5 819E -> 0000C478 81A3 -> 0000EBF9 81A4 -> 0000C47D 81A6 -> 0000ECA2 81A7 -> 0000C480 81A8 -> 0000C5F2 81A9 -> 0000C481 81AA -> 0000EBFA 81AB -> 0000C482 81B3 -> 0000C9C5 81B4 -> 0000C48A 81BA -> 0000E2DF 81BB -> 0000EBFE 81BC -> 0000C490 81C0 -> 0000CDCE 81C1 -> 0000ECA1 81C2 -> 0000B1DB 81C3 -> 0000D3B7 81C4 -> 0000C494 81C6 -> 0000D2DC 81C7 -> 0000C496 81CA -> 0000EBFD 81CB -> 0000C499 81CC -> 0000EBFB 81CD -> 0000C49A 81D4 -> 0000C540 81E3 -> 0000B3BC 81E4 -> 0000C54F 81E7 -> 0000EAB0 81E8 -> 0000C552 81EA -> 0000D7D4 81EB -> 0000C554 81EC -> 0000F4AB 81ED -> 0000B3F4 81EE -> 0000C555 81F3 -> 0000D6C1 81F5 -> 0000C55A 81FB -> 0000D5E9 81FC -> 0000BECA 81FD -> 0000C560 81FE -> 0000F4A7 81FF -> 0000C561 8200 -> 0000D2A8 8201 -> 0000F4A8 8203 -> 0000C562 8204 -> 0000F4AA 8205 -> 0000BECB 8206 -> 0000D3DF 8207 -> 0000C563 820C -> 0000C9E0 820E -> 0000C568 8210 -> 0000F3C2 8211 -> 0000C56A 8212 -> 0000CAE6 8213 -> 0000C56B 8214 -> 0000CCF2 8215 -> 0000C56C 821B -> 0000E2B6 821C -> 0000CBB4 821D -> 0000C572 821E -> 0000CEE8 821F -> 0000D6DB 8220 -> 0000C573 8221 -> 0000F4AD 8224 -> 0000C574 8228 -> 0000F4B2 8229 -> 0000C578 822A -> 0000BABD 822B -> 0000F4B3 822C -> 0000B0E3 822D -> 0000F4B0 822E -> 0000C579 822F -> 0000F4B1 8230 -> 0000BDA2 8231 -> 0000B2D5 8232 -> 0000C57A 8233 -> 0000F4B6 8235 -> 0000B6E6 8236 -> 0000B2B0 8237 -> 0000CFCF 8238 -> 0000F4B4 8239 -> 0000B4AC 823A -> 0000C57B 823B -> 0000F4B5 823C -> 0000C57C 823E -> 0000F4B8 823F -> 0000C57E 8240 -> 0000C580 8244 -> 0000F4B9 8245 -> 0000C584 8247 -> 0000CDA7 8248 -> 0000C586 8249 -> 0000F4BA 824A -> 0000C587 824B -> 0000F4BB 824C -> 0000C588 824F -> 0000F4BC 8250 -> 0000C58B 8258 -> 0000CBD2 8259 -> 0000C593 825A -> 0000F4BD 825B -> 0000C594 825F -> 0000F4BE 8260 -> 0000C598 8268 -> 0000F4BF 8269 -> 0000C5A0 826A -> 0000C640 826E -> 0000F4DE 826F -> 0000C1BC 8270 -> 0000BCE8 8271 -> 0000C644 8272 -> 0000C9AB 8273 -> 0000D1DE 8274 -> 0000E5F5 8275 -> 0000C645 8279 -> 0000DCB3 827A -> 0000D2D5 827B -> 0000C649 827D -> 0000DCB4 827E -> 0000B0AC 827F -> 0000DCB5 8280 -> 0000C64B 8282 -> 0000BDDA 8283 -> 0000C64D 8284 -> 0000DCB9 8285 -> 0000C64E 8288 -> 0000D8C2 8289 -> 0000C651 828A -> 0000DCB7 828B -> 0000D3F3 828C -> 0000C652 828D -> 0000C9D6 828E -> 0000DCBA 828F -> 0000DCB6 8290 -> 0000C653 8291 -> 0000DCBB 8292 -> 0000C3A2 8293 -> 0000C654 8297 -> 0000DCBC 8298 -> 0000DCC5 8299 -> 0000DCBD 829A -> 0000C658 829C -> 0000CEDF 829D -> 0000D6A5 829E -> 0000C65A 829F -> 0000DCCF 82A0 -> 0000C65B 82A1 -> 0000DCCD 82A2 -> 0000C65C 82A4 -> 0000DCD2 82A5 -> 0000BDE6 82A6 -> 0000C2AB 82A7 -> 0000C65E 82A8 -> 0000DCB8 82A9 -> 0000DCCB 82AA -> 0000DCCE 82AB -> 0000DCBE 82AC -> 0000B7D2 82AD -> 0000B0C5 82AE -> 0000DCC7 82AF -> 0000D0BE 82B0 -> 0000DCC1 82B1 -> 0000BBA8 82B2 -> 0000C65F 82B3 -> 0000B7BC 82B4 -> 0000DCCC 82B5 -> 0000C660 82B7 -> 0000DCC6 82B8 -> 0000DCBF 82B9 -> 0000C7DB 82BA -> 0000C662 82BD -> 0000D1BF 82BE -> 0000DCC0 82BF -> 0000C665 82C1 -> 0000DCCA 82C2 -> 0000C667 82C4 -> 0000DCD0 82C5 -> 0000C669 82C7 -> 0000CEAD 82C8 -> 0000DCC2 82C9 -> 0000C66B 82CA -> 0000DCC3 82CB -> 0000DCC8 82CD -> 0000B2D4 82CE -> 0000DCD1 82CF -> 0000CBD5 82D0 -> 0000C66C 82D1 -> 0000D4B7 82D2 -> 0000DCDB 82D3 -> 0000DCDF 82D4 -> 0000CCA6 82D5 -> 0000DCE6 82D6 -> 0000C66D 82D7 -> 0000C3E7 82D8 -> 0000DCDC 82D9 -> 0000C66E 82DB -> 0000BFC1 82DC -> 0000DCD9 82DD -> 0000C670 82DE -> 0000B0FA 82DF -> 0000B9B6 82E0 -> 0000DCE5 82E1 -> 0000DCD3 82E2 -> 0000C671 82E3 -> 0000DCC4 82E4 -> 0000DCD6 82E5 -> 0000C8F4 82E6 -> 0000BFE0 82E7 -> 0000C672 82EB -> 0000C9BB 82EC -> 0000C676 82EF -> 0000B1BD 82F0 -> 0000C679 82F1 -> 0000D3A2 82F2 -> 0000C67A 82F4 -> 0000DCDA 82F5 -> 0000C67C 82F7 -> 0000DCD5 82F8 -> 0000C67E 82F9 -> 0000C6BB 82FA -> 0000C680 82FB -> 0000DCDE 82FC -> 0000C681 8301 -> 0000D7C2 8302 -> 0000C3AF 8303 -> 0000B7B6 8304 -> 0000C7D1 8305 -> 0000C3A9 8306 -> 0000DCE2 8307 -> 0000DCD8 8308 -> 0000DCEB 8309 -> 0000DCD4 830A -> 0000C686 830C -> 0000DCDD 830D -> 0000C688 830E -> 0000BEA5 830F -> 0000DCD7 8310 -> 0000C689 8311 -> 0000DCE0 8312 -> 0000C68A 8314 -> 0000DCE3 8316 -> 0000C68C 8317 -> 0000DCF8 8318 -> 0000C68D 831A -> 0000DCE1 831B -> 0000DDA2 831C -> 0000DCE7 831D -> 0000C68F 8327 -> 0000BCEB 8328 -> 0000B4C4 8329 -> 0000C699 832B -> 0000C3A3 832C -> 0000B2E7 832D -> 0000DCFA 832E -> 0000C69B 832F -> 0000DCF2 8330 -> 0000C69C 8331 -> 0000DCEF 8332 -> 0000C69D 8333 -> 0000DCFC 8334 -> 0000DCEE 8335 -> 0000D2F0 8336 -> 0000B2E8 8337 -> 0000C69E 8338 -> 0000C8D7 8339 -> 0000C8E3 833A -> 0000DCFB 833B -> 0000C69F 833C -> 0000DCED 833D -> 0000C6A0 833E -> 0000C740 8340 -> 0000DCF7 8341 -> 0000C742 8343 -> 0000DCF5 8344 -> 0000C744 8346 -> 0000BEA3 8347 -> 0000DCF4 8348 -> 0000C746 8349 -> 0000B2DD 834A -> 0000C747 834F -> 0000DCF3 8350 -> 0000BCF6 8351 -> 0000DCE8 8352 -> 0000BBC4 8353 -> 0000C74C 8354 -> 0000C0F3 8355 -> 0000C74D 835A -> 0000BCD4 835B -> 0000DCE9 835D -> 0000C752 835E -> 0000DCF1 835F -> 0000DCF6 8360 -> 0000DCF9 8361 -> 0000B5B4 8362 -> 0000C753 8363 -> 0000C8D9 8364 -> 0000BBE7 8365 -> 0000DCFE 8366 -> 0000DCFD 8367 -> 0000D3AB 8368 -> 0000DDA1 8369 -> 0000DDA3 836A -> 0000DDA5 836B -> 0000D2F1 836C -> 0000DDA4 836D -> 0000DDA6 836F -> 0000D2A9 8370 -> 0000C754 8377 -> 0000BAC9 8378 -> 0000DDA9 8379 -> 0000C75B 837B -> 0000DDB6 837C -> 0000DDB1 837D -> 0000DDB4 837E -> 0000C75D 8385 -> 0000DDB0 8386 -> 0000C6CE 8387 -> 0000C764 8389 -> 0000C0F2 838A -> 0000C766 838E -> 0000C9AF 838F -> 0000C76A 8392 -> 0000DCEC 8393 -> 0000DDAE 8394 -> 0000C76D 8398 -> 0000DDB7 8399 -> 0000C771 839B -> 0000DCF0 839C -> 0000DDAF 839D -> 0000C773 839E -> 0000DDB8 839F -> 0000C774 83A0 -> 0000DDAC 83A1 -> 0000C775 83A8 -> 0000DDB9 83A9 -> 0000DDB3 83AA -> 0000DDAD 83AB -> 0000C4AA 83AC -> 0000C77C 83AF -> 0000C780 83B0 -> 0000DDA8 83B1 -> 0000C0B3 83B2 -> 0000C1AB 83B3 -> 0000DDAA 83B5 -> 0000C781 83B6 -> 0000DDB2 83B7 -> 0000BBF1 83B8 -> 0000DDB5 83B9 -> 0000D3A8 83BA -> 0000DDBA 83BB -> 0000C782 83BC -> 0000DDBB 83BD -> 0000C3A7 83BE -> 0000C783 83C0 -> 0000DDD2 83C1 -> 0000DDBC 83C2 -> 0000C785 83C5 -> 0000DDD1 83C6 -> 0000C788 83C7 -> 0000B9BD 83C8 -> 0000C789 83CA -> 0000BED5 83CB -> 0000C78B 83CC -> 0000BEFA 83CD -> 0000C78C 83CF -> 0000BACA 83D0 -> 0000C78E 83D4 -> 0000DDCA 83D5 -> 0000C792 83D6 -> 0000DDC5 83D7 -> 0000C793 83D8 -> 0000DDBF 83D9 -> 0000C794 83DC -> 0000B2CB 83DD -> 0000DDC3 83DE -> 0000C797 83DF -> 0000DDCB 83E0 -> 0000B2A4 83E1 -> 0000DDD5 83E2 -> 0000C798 83E5 -> 0000DDBE 83E6 -> 0000C79B 83E9 -> 0000C6D0 83EA -> 0000DDD0 83EB -> 0000C79E 83EE -> 0000C840 83F0 -> 0000DDD4 83F1 -> 0000C1E2 83F2 -> 0000B7C6 83F3 -> 0000C842 83F8 -> 0000DDCE 83FA -> 0000C847 83FD -> 0000DDC4 83FE -> 0000C84A 8401 -> 0000DDBD 8402 -> 0000C84D 8403 -> 0000DDCD 8404 -> 0000CCD1 8405 -> 0000C84E 8406 -> 0000DDC9 8407 -> 0000C84F 840B -> 0000DDC2 840C -> 0000C3C8 840D -> 0000C6BC 840E -> 0000CEAE 840F -> 0000DDCC 8410 -> 0000C853 8411 -> 0000DDC8 8412 -> 0000C854 8418 -> 0000DDC1 8419 -> 0000C85A 841C -> 0000DDC6 841D -> 0000C2DC 841E -> 0000C85D 8424 -> 0000D3A9 8426 -> 0000DDD3 8427 -> 0000CFF4 8428 -> 0000C8F8 8429 -> 0000C863 8431 -> 0000DDE6 8432 -> 0000C86B 8438 -> 0000DDC7 8439 -> 0000C871 843C -> 0000DDE0 843D -> 0000C2E4 843E -> 0000C874 8446 -> 0000DDE1 8447 -> 0000C87C 844A -> 0000C880 8451 -> 0000DDD7 8452 -> 0000C887 8457 -> 0000D6F8 8458 -> 0000C88C 8459 -> 0000DDD9 845A -> 0000DDD8 845B -> 0000B8F0 845C -> 0000DDD6 845D -> 0000C88D 8461 -> 0000C6CF 8462 -> 0000C891 8463 -> 0000B6AD 8464 -> 0000C892 8469 -> 0000DDE2 846A -> 0000C897 846B -> 0000BAF9 846C -> 0000D4E1 846D -> 0000DDE7 846E -> 0000C898 8471 -> 0000B4D0 8472 -> 0000C89B 8473 -> 0000DDDA 8474 -> 0000C89C 8475 -> 0000BFFB 8476 -> 0000DDE3 8477 -> 0000C89D 8478 -> 0000DDDF 8479 -> 0000C89E 847A -> 0000DDDD 847B -> 0000C89F 847D -> 0000C940 8482 -> 0000B5D9 8483 -> 0000C945 8487 -> 0000DDDB 8489 -> 0000DDDE 848A -> 0000C949 848B -> 0000BDAF 848C -> 0000DDE4 848D -> 0000C94A 848E -> 0000DDE5 848F -> 0000C94B 8497 -> 0000DDF5 8498 -> 0000C953 8499 -> 0000C3C9 849A -> 0000C954 849C -> 0000CBE2 849D -> 0000C956 84A1 -> 0000DDF2 84A2 -> 0000C95A 84AF -> 0000D8E1 84B0 -> 0000C967 84B2 -> 0000C6D1 84B3 -> 0000C969 84B4 -> 0000DDF4 84B5 -> 0000C96A 84B8 -> 0000D5F4 84B9 -> 0000DDF3 84BA -> 0000DDF0 84BB -> 0000C96D 84BD -> 0000DDEC 84BE -> 0000C96F 84BF -> 0000DDEF 84C0 -> 0000C970 84C1 -> 0000DDE8 84C2 -> 0000C971 84C4 -> 0000D0EE 84C5 -> 0000C973 84C9 -> 0000C8D8 84CA -> 0000DDEE 84CB -> 0000C977 84CD -> 0000DDE9 84CE -> 0000C979 84D0 -> 0000DDEA 84D1 -> 0000CBF2 84D2 -> 0000C97B 84D3 -> 0000DDED 84D4 -> 0000C97C 84D6 -> 0000B1CD 84D7 -> 0000C97E 84D8 -> 0000C980 84DD -> 0000C0B6 84DE -> 0000C985 84DF -> 0000BCBB 84E0 -> 0000DDF1 84E1 -> 0000C986 84E3 -> 0000DDF7 84E4 -> 0000C988 84E5 -> 0000DDF6 84E6 -> 0000DDEB 84E7 -> 0000C989 84EC -> 0000C5EE 84ED -> 0000C98E 84F0 -> 0000DDFB 84F1 -> 0000C991 84FC -> 0000DEA4 84FD -> 0000C99C 84FF -> 0000DEA3 8500 -> 0000C99E 8503 -> 0000CA40 850C -> 0000DDF8 850D -> 0000CA49 8511 -> 0000C3EF 8512 -> 0000CA4D 8513 -> 0000C2FB 8514 -> 0000CA4E 8517 -> 0000D5E1 8518 -> 0000CA51 851A -> 0000CEB5 851B -> 0000CA53 851F -> 0000DDFD 8520 -> 0000CA57 8521 -> 0000B2CC 8522 -> 0000CA58 852B -> 0000C4E8 852C -> 0000CADF 852D -> 0000CA61 8537 -> 0000C7BE 8538 -> 0000DDFA 8539 -> 0000DDFC 853A -> 0000DDFE 853B -> 0000DEA2 853C -> 0000B0AA 853D -> 0000B1CE 853E -> 0000CA6B 8543 -> 0000DEAC 8544 -> 0000CA70 8548 -> 0000DEA6 8549 -> 0000BDB6 854A -> 0000C8EF 854B -> 0000CA74 8556 -> 0000DEA1 8557 -> 0000CA80 8559 -> 0000DEA5 855A -> 0000CA82 855E -> 0000DEA9 855F -> 0000CA86 8564 -> 0000DEA8 8565 -> 0000CA8B 8568 -> 0000DEA7 8569 -> 0000CA8E 8572 -> 0000DEAD 8573 -> 0000CA97 8574 -> 0000D4CC 8575 -> 0000CA98 8579 -> 0000DEB3 857A -> 0000DEAA 857B -> 0000DEAE 857C -> 0000CA9C 857E -> 0000C0D9 857F -> 0000CA9E 8582 -> 0000CB40 8584 -> 0000B1A1 8585 -> 0000DEB6 8586 -> 0000CB42 8587 -> 0000DEB1 8588 -> 0000CB43 858F -> 0000DEB2 8590 -> 0000CB4A 859B -> 0000D1A6 859C -> 0000DEB5 859D -> 0000CB55 85A4 -> 0000DEAF 85A5 -> 0000CB5C 85A8 -> 0000DEB0 85A9 -> 0000CB5F 85AA -> 0000D0BD 85AB -> 0000CB60 85AE -> 0000DEB4 85AF -> 0000CAED 85B0 -> 0000DEB9 85B1 -> 0000CB63 85B7 -> 0000DEB8 85B8 -> 0000CB69 85B9 -> 0000DEB7 85BA -> 0000CB6A 85C1 -> 0000DEBB 85C2 -> 0000CB71 85C9 -> 0000BDE5 85CA -> 0000CB78 85CF -> 0000B2D8 85D0 -> 0000C3EA 85D1 -> 0000CB7D 85D3 -> 0000DEBA 85D4 -> 0000CB80 85D5 -> 0000C5BA 85D6 -> 0000CB81 85DC -> 0000DEBC 85DD -> 0000CB87 85E4 -> 0000CCD9 85E5 -> 0000CB8E 85E9 -> 0000B7AA 85EA -> 0000CB92 85F9 -> 0000CC40 85FB -> 0000D4E5 85FC -> 0000CC42 85FF -> 0000DEBD 8600 -> 0000CC45 8605 -> 0000DEBF 8606 -> 0000CC4A 8611 -> 0000C4A2 8612 -> 0000CC55 8616 -> 0000DEC1 8617 -> 0000CC59 8627 -> 0000DEBE 8628 -> 0000CC69 8629 -> 0000DEC0 862A -> 0000CC6A 8638 -> 0000D5BA 8639 -> 0000CC78 863C -> 0000DEC2 863D -> 0000CC7B 8641 -> 0000CC80 864D -> 0000F2AE 864E -> 0000BBA2 864F -> 0000C2B2 8650 -> 0000C5B0 8651 -> 0000C2C7 8652 -> 0000CC8C 8654 -> 0000F2AF 8655 -> 0000CC8E 865A -> 0000D0E9 865B -> 0000CC93 865E -> 0000D3DD 865F -> 0000CC96 8662 -> 0000EBBD 8663 -> 0000CC99 866B -> 0000B3E6 866C -> 0000F2B0 866D -> 0000CD40 866E -> 0000F2B1 866F -> 0000CD41 8671 -> 0000CAAD 8672 -> 0000CD43 8679 -> 0000BAE7 867A -> 0000F2B3 867B -> 0000F2B5 867C -> 0000F2B4 867D -> 0000CBE4 867E -> 0000CFBA 867F -> 0000F2B2 8680 -> 0000CAB4 8681 -> 0000D2CF 8682 -> 0000C2EC 8683 -> 0000CD4A 868A -> 0000CEC3 868B -> 0000F2B8 868C -> 0000B0F6 868D -> 0000F2B7 868E -> 0000CD51 8693 -> 0000F2BE 8694 -> 0000CD56 8695 -> 0000B2CF 8696 -> 0000CD57 869C -> 0000D1C1 869D -> 0000F2BA 869E -> 0000CD5D 86A3 -> 0000F2BC 86A4 -> 0000D4E9 86A5 -> 0000CD62 86A7 -> 0000F2BB 86A8 -> 0000F2B6 86A9 -> 0000F2BF 86AA -> 0000F2BD 86AB -> 0000CD64 86AC -> 0000F2B9 86AD -> 0000CD65 86AF -> 0000F2C7 86B0 -> 0000F2C4 86B1 -> 0000F2C6 86B2 -> 0000CD67 86B4 -> 0000F2CA 86B5 -> 0000F2C2 86B6 -> 0000F2C0 86B7 -> 0000CD69 86BA -> 0000F2C5 86BB -> 0000CD6C 86C0 -> 0000D6FB 86C1 -> 0000CD71 86C4 -> 0000F2C1 86C5 -> 0000CD74 86C6 -> 0000C7F9 86C7 -> 0000C9DF 86C8 -> 0000CD75 86C9 -> 0000F2C8 86CA -> 0000B9C6 86CB -> 0000B5B0 86CC -> 0000CD76 86CE -> 0000F2C3 86CF -> 0000F2C9 86D0 -> 0000F2D0 86D1 -> 0000F2D6 86D2 -> 0000CD78 86D4 -> 0000BBD7 86D5 -> 0000CD7A 86D8 -> 0000F2D5 86D9 -> 0000CDDC 86DA -> 0000CD7D 86DB -> 0000D6EB 86DC -> 0000CD7E 86DD -> 0000CD80 86DE -> 0000F2D2 86DF -> 0000F2D4 86E0 -> 0000CD81 86E4 -> 0000B8F2 86E5 -> 0000CD85 86E9 -> 0000F2CB 86EA -> 0000CD89 86ED -> 0000F2CE 86EE -> 0000C2F9 86EF -> 0000CD8C 86F0 -> 0000D5DD 86F1 -> 0000F2CC 86F3 -> 0000F2CF 86F4 -> 0000F2D3 86F5 -> 0000CD8D 86F8 -> 0000F2D9 86F9 -> 0000D3BC 86FA -> 0000CD90 86FE -> 0000B6EA 86FF -> 0000CD94 8700 -> 0000CAF1 8701 -> 0000CD95 8702 -> 0000B7E4 8703 -> 0000F2D7 8704 -> 0000CD96 8707 -> 0000F2D8 8708 -> 0000F2DA 8709 -> 0000F2DD 870A -> 0000F2DB 870B -> 0000CD99 870D -> 0000F2DC 870E -> 0000CD9B 8712 -> 0000D1D1 8713 -> 0000F2D1 8714 -> 0000CD9F 8715 -> 0000CDC9 8716 -> 0000CDA0 8717 -> 0000CECF 8718 -> 0000D6A9 8719 -> 0000CE40 871A -> 0000F2E3 871B -> 0000CE41 871C -> 0000C3DB 871D -> 0000CE42 871E -> 0000F2E0 871F -> 0000CE43 8721 -> 0000C0AF 8722 -> 0000F2EC 8723 -> 0000F2DE 8724 -> 0000CE45 8725 -> 0000F2E1 8726 -> 0000CE46 8729 -> 0000F2E8 872A -> 0000CE49 872E -> 0000F2E2 872F -> 0000CE4D 8731 -> 0000F2E7 8732 -> 0000CE4F 8734 -> 0000F2E6 8735 -> 0000CE51 8737 -> 0000F2E9 8738 -> 0000CE53 873B -> 0000F2DF 873C -> 0000CE56 873E -> 0000F2E4 873F -> 0000F2EA 8740 -> 0000CE58 8747 -> 0000D3AC 8748 -> 0000F2E5 8749 -> 0000B2F5 874A -> 0000CE5F 874C -> 0000F2F2 874D -> 0000CE61 874E -> 0000D0AB 874F -> 0000CE62 8753 -> 0000F2F5 8754 -> 0000CE66 8757 -> 0000BBC8 8758 -> 0000CE69 8759 -> 0000F2F9 875A -> 0000CE6A 8760 -> 0000F2F0 8761 -> 0000CE70 8763 -> 0000F2F6 8764 -> 0000F2F8 8765 -> 0000F2FA 8766 -> 0000CE72 876E -> 0000F2F3 876F -> 0000CE7A 8770 -> 0000F2F1 8771 -> 0000CE7B 8774 -> 0000BAFB 8775 -> 0000CE7E 8776 -> 0000B5FB 8777 -> 0000CE80 877B -> 0000F2EF 877C -> 0000F2F7 877D -> 0000F2ED 877F -> 0000CE84 8782 -> 0000F2EB 8783 -> 0000F3A6 8784 -> 0000CE87 8785 -> 0000F3A3 8786 -> 0000CE88 8788 -> 0000F3A2 8789 -> 0000CE8A 878B -> 0000F2F4 878C -> 0000CE8C 878D -> 0000C8DA 878E -> 0000CE8D 8793 -> 0000F2FB 8794 -> 0000CE92 8797 -> 0000F3A5 8798 -> 0000CE95 879F -> 0000C3F8 87A0 -> 0000CE9C 87A5 -> 0000CF40 87A8 -> 0000F2FD 87A9 -> 0000CF43 87AB -> 0000F3A7 87AC -> 0000F3A9 87AD -> 0000F3A4 87AE -> 0000CF45 87AF -> 0000F2FC 87B0 -> 0000CF46 87B3 -> 0000F3AB 87B4 -> 0000CF49 87B5 -> 0000F3AA 87B6 -> 0000CF4A 87BA -> 0000C2DD 87BB -> 0000CF4E 87BD -> 0000F3AE 87BE -> 0000CF50 87C0 -> 0000F3B0 87C1 -> 0000CF52 87C6 -> 0000F3A1 87C7 -> 0000CF57 87CA -> 0000F3B1 87CB -> 0000F3AC 87CC -> 0000CF5A 87D1 -> 0000F3AF 87D2 -> 0000F2FE 87D3 -> 0000F3AD 87D4 -> 0000CF5F 87DB -> 0000F3B2 87DC -> 0000CF66 87E0 -> 0000F3B4 87E1 -> 0000CF6A 87E5 -> 0000F3A8 87E6 -> 0000CF6E 87EA -> 0000F3B3 87EB -> 0000CF72 87EE -> 0000F3B5 87EF -> 0000CF75 87F9 -> 0000D0B7 87FA -> 0000CF80 87FE -> 0000F3B8 87FF -> 0000CF84 8803 -> 0000D9F9 8804 -> 0000CF88 880A -> 0000F3B9 880B -> 0000CF8E 8813 -> 0000F3B7 8814 -> 0000CF96 8815 -> 0000C8E4 8816 -> 0000F3B6 8817 -> 0000CF97 881B -> 0000F3BA 881C -> 0000CF9B 8821 -> 0000F3BB 8822 -> 0000B4C0 8823 -> 0000CFA0 8824 -> 0000D040 8832 -> 0000EEC3 8833 -> 0000D04E 8839 -> 0000F3BC 883A -> 0000D054 883C -> 0000F3BD 883D -> 0000D056 8840 -> 0000D1AA 8841 -> 0000D059 8844 -> 0000F4AC 8845 -> 0000D0C6 8846 -> 0000D05C 884C -> 0000D0D0 884D -> 0000D1DC 884E -> 0000D062 8854 -> 0000CFCE 8855 -> 0000D068 8857 -> 0000BDD6 8858 -> 0000D06A 8859 -> 0000D1C3 885A -> 0000D06B 8861 -> 0000BAE2 8862 -> 0000E1E9 8863 -> 0000D2C2 8864 -> 0000F1C2 8865 -> 0000B2B9 8866 -> 0000D072 8868 -> 0000B1ED 8869 -> 0000F1C3 886A -> 0000D074 886B -> 0000C9C0 886C -> 0000B3C4 886D -> 0000D075 886E -> 0000D9F2 886F -> 0000D076 8870 -> 0000CBA5 8871 -> 0000D077 8872 -> 0000F1C4 8873 -> 0000D078 8877 -> 0000D6D4 8878 -> 0000D07C 887B -> 0000D080 887D -> 0000F1C5 887E -> 0000F4C0 887F -> 0000F1C6 8880 -> 0000D082 8881 -> 0000D4AC 8882 -> 0000F1C7 8883 -> 0000D083 8884 -> 0000B0C0 8885 -> 0000F4C1 8886 -> 0000D084 8888 -> 0000F4C2 8889 -> 0000D086 888B -> 0000B4FC 888C -> 0000D088 888D -> 0000C5DB 888E -> 0000D089 8892 -> 0000CCBB 8893 -> 0000D08D 8896 -> 0000D0E4 8897 -> 0000D090 889C -> 0000CDE0 889D -> 0000D095 88A2 -> 0000F1C8 88A3 -> 0000D09A 88A4 -> 0000D9F3 88A5 -> 0000D09B 88AB -> 0000B1BB 88AC -> 0000D140 88AD -> 0000CFAE 88AE -> 0000D141 88B1 -> 0000B8A4 88B2 -> 0000D144 88B7 -> 0000F1CA 88B8 -> 0000D149 88BC -> 0000F1CB 88BD -> 0000D14D 88C1 -> 0000B2C3 88C2 -> 0000C1D1 88C3 -> 0000D151 88C5 -> 0000D7B0 88C6 -> 0000F1C9 88C7 -> 0000D153 88C9 -> 0000F1CC 88CA -> 0000D155 88CE -> 0000F1CE 88CF -> 0000D159 88D2 -> 0000D9F6 88D3 -> 0000D15C 88D4 -> 0000D2E1 88D5 -> 0000D4A3 88D6 -> 0000D15D 88D8 -> 0000F4C3 88D9 -> 0000C8B9 88DA -> 0000D15F 88DF -> 0000F4C4 88E0 -> 0000D164 88E2 -> 0000F1CD 88E3 -> 0000F1CF 88E4 -> 0000BFE3 88E5 -> 0000F1D0 88E6 -> 0000D166 88E8 -> 0000F1D4 88E9 -> 0000D168 88F0 -> 0000F1D6 88F1 -> 0000F1D1 88F2 -> 0000D16F 88F3 -> 0000C9D1 88F4 -> 0000C5E1 88F5 -> 0000D170 88F8 -> 0000C2E3 88F9 -> 0000B9FC 88FA -> 0000D173 88FC -> 0000F1D3 88FD -> 0000D175 88FE -> 0000F1D5 88FF -> 0000D176 8902 -> 0000B9D3 8903 -> 0000D179 8909 -> 0000D180 890A -> 0000F1DB 890B -> 0000D181 8910 -> 0000BAD6 8911 -> 0000D186 8912 -> 0000B0FD 8913 -> 0000F1D9 8914 -> 0000D187 8919 -> 0000F1D8 891A -> 0000F1D2 891B -> 0000F1DA 891C -> 0000D18C 8921 -> 0000F1D7 8922 -> 0000D191 8925 -> 0000C8EC 8926 -> 0000D194 892A -> 0000CDCA 892B -> 0000F1DD 892C -> 0000D198 8930 -> 0000E5BD 8931 -> 0000D19C 8934 -> 0000F1DC 8935 -> 0000D19F 8936 -> 0000F1DE 8937 -> 0000D1A0 8938 -> 0000D240 8941 -> 0000F1DF 8942 -> 0000D249 8944 -> 0000CFE5 8945 -> 0000D24B 895E -> 0000F4C5 895F -> 0000BDF3 8960 -> 0000D264 8966 -> 0000F1E0 8967 -> 0000D26A 897B -> 0000F1E1 897C -> 0000D27E 897D -> 0000D280 897F -> 0000CEF7 8980 -> 0000D282 8981 -> 0000D2AA 8982 -> 0000D283 8983 -> 0000F1FB 8984 -> 0000D284 8986 -> 0000B8B2 8987 -> 0000D286 89A2 -> 0000D340 89C1 -> 0000BCFB 89C2 -> 0000B9DB 89C3 -> 0000D35F 89C4 -> 0000B9E6 89C5 -> 0000C3D9 89C6 -> 0000CAD3 89C7 -> 0000EAE8 89C8 -> 0000C0C0 89C9 -> 0000BEF5 89CA -> 0000EAE9 89CD -> 0000D360 89CE -> 0000EAEC 89D2 -> 0000BDC7 89D3 -> 0000D361 89D6 -> 0000F5FB 89D7 -> 0000D364 89DA -> 0000F5FD 89DB -> 0000D367 89DC -> 0000F5FE 89DD -> 0000D368 89DE -> 0000F5FC 89DF -> 0000D369 89E3 -> 0000BDE2 89E4 -> 0000D36D 89E5 -> 0000F6A1 89E6 -> 0000B4A5 89E7 -> 0000D36E 89EB -> 0000F6A2 89EC -> 0000D372 89EF -> 0000F6A3 89F0 -> 0000D375 89F3 -> 0000ECB2 89F4 -> 0000D378 89FB -> 0000D380 8A00 -> 0000D1D4 8A01 -> 0000D385 8A07 -> 0000D9EA 8A08 -> 0000D38B 8A1E -> 0000D440 8A3E -> 0000F6A4 8A3F -> 0000D460 8A48 -> 0000EEBA 8A49 -> 0000D469 8A5F -> 0000D480 8A79 -> 0000D5B2 8A7A -> 0000D49A 8A81 -> 0000D540 8A89 -> 0000D3FE 8A8A -> 0000CCDC 8A8B -> 0000D548 8A93 -> 0000CAC4 8A94 -> 0000D550 8AC3 -> 0000D580 8AE4 -> 0000D640 8B07 -> 0000E5C0 8B08 -> 0000D663 8B24 -> 0000D680 8B26 -> 0000F6A5 8B27 -> 0000D682 8B46 -> 0000D740 8B66 -> 0000BEAF 8B67 -> 0000D760 8B6C -> 0000C6A9 8B6D -> 0000D765 8B87 -> 0000D780 8BA0 -> 0000DAA5 8BA1 -> 0000BCC6 8BA2 -> 0000B6A9 8BA3 -> 0000B8BC 8BA4 -> 0000C8CF 8BA5 -> 0000BCA5 8BA6 -> 0000DAA6 8BA8 -> 0000CCD6 8BA9 -> 0000C8C3 8BAA -> 0000DAA8 8BAB -> 0000C6FD 8BAC -> 0000D799 8BAD -> 0000D1B5 8BAE -> 0000D2E9 8BAF -> 0000D1B6 8BB0 -> 0000BCC7 8BB1 -> 0000D79A 8BB2 -> 0000BDB2 8BB3 -> 0000BBE4 8BB4 -> 0000DAA9 8BB6 -> 0000D1C8 8BB7 -> 0000DAAB 8BB8 -> 0000D0ED 8BB9 -> 0000B6EF 8BBA -> 0000C2DB 8BBB -> 0000D79B 8BBC -> 0000CBCF 8BBD -> 0000B7ED 8BBE -> 0000C9E8 8BBF -> 0000B7C3 8BC0 -> 0000BEF7 8BC1 -> 0000D6A4 8BC2 -> 0000DAAC 8BC4 -> 0000C6C0 8BC5 -> 0000D7E7 8BC6 -> 0000CAB6 8BC7 -> 0000D79C 8BC8 -> 0000D5A9 8BC9 -> 0000CBDF 8BCA -> 0000D5EF 8BCB -> 0000DAAE 8BCC -> 0000D6DF 8BCD -> 0000B4CA 8BCE -> 0000DAB0 8BCF -> 0000DAAF 8BD0 -> 0000D79D 8BD1 -> 0000D2EB 8BD2 -> 0000DAB1 8BD5 -> 0000CAD4 8BD6 -> 0000DAB4 8BD7 -> 0000CAAB 8BD8 -> 0000DAB5 8BDA -> 0000B3CF 8BDB -> 0000D6EF 8BDC -> 0000DAB7 8BDD -> 0000BBB0 8BDE -> 0000B5AE 8BDF -> 0000DAB8 8BE1 -> 0000B9EE 8BE2 -> 0000D1AF 8BE3 -> 0000D2E8 8BE4 -> 0000DABA 8BE5 -> 0000B8C3 8BE6 -> 0000CFEA 8BE7 -> 0000B2EF 8BE8 -> 0000DABB 8BEA -> 0000D79E 8BEB -> 0000BDEB 8BEC -> 0000CEDC 8BED -> 0000D3EF 8BEE -> 0000DABD 8BEF -> 0000CEF3 8BF0 -> 0000DABE 8BF1 -> 0000D3D5 8BF2 -> 0000BBE5 8BF3 -> 0000DABF 8BF4 -> 0000CBB5 8BF5 -> 0000CBD0 8BF6 -> 0000DAC0 8BF7 -> 0000C7EB 8BF8 -> 0000D6EE 8BF9 -> 0000DAC1 8BFA -> 0000C5B5 8BFB -> 0000B6C1 8BFC -> 0000DAC2 8BFD -> 0000B7CC 8BFE -> 0000BFCE 8BFF -> 0000DAC3 8C01 -> 0000CBAD 8C02 -> 0000DAC5 8C03 -> 0000B5F7 8C04 -> 0000DAC6 8C05 -> 0000C1C2 8C06 -> 0000D7BB 8C07 -> 0000DAC7 8C08 -> 0000CCB8 8C09 -> 0000D79F 8C0A -> 0000D2EA 8C0B -> 0000C4B1 8C0C -> 0000DAC8 8C0D -> 0000B5FD 8C0E -> 0000BBD1 8C0F -> 0000DAC9 8C10 -> 0000D0B3 8C11 -> 0000DACA 8C13 -> 0000CEBD 8C14 -> 0000DACC 8C17 -> 0000B2F7 8C18 -> 0000DAD1 8C19 -> 0000DACF 8C1A -> 0000D1E8 8C1B -> 0000DAD0 8C1C -> 0000C3D5 8C1D -> 0000DAD2 8C1E -> 0000D7A0 8C1F -> 0000DAD3 8C22 -> 0000D0BB 8C23 -> 0000D2A5 8C24 -> 0000B0F9 8C25 -> 0000DAD6 8C26 -> 0000C7AB 8C27 -> 0000DAD7 8C28 -> 0000BDF7 8C29 -> 0000C3A1 8C2A -> 0000DAD8 8C2C -> 0000C3FD 8C2D -> 0000CCB7 8C2E -> 0000DADA 8C30 -> 0000C0BE 8C31 -> 0000C6D7 8C32 -> 0000DADC 8C34 -> 0000C7B4 8C35 -> 0000DADE 8C37 -> 0000B9C8 8C38 -> 0000D840 8C41 -> 0000BBED 8C42 -> 0000D849 8C46 -> 0000B6B9 8C47 -> 0000F4F8 8C48 -> 0000D84D 8C49 -> 0000F4F9 8C4A -> 0000D84E 8C4C -> 0000CDE3 8C4D -> 0000D850 8C55 -> 0000F5B9 8C56 -> 0000D858 8C5A -> 0000EBE0 8C5B -> 0000D85C 8C61 -> 0000CFF3 8C62 -> 0000BBBF 8C63 -> 0000D862 8C6A -> 0000BAC0 8C6B -> 0000D4A5 8C6C -> 0000D869 8C73 -> 0000E1D9 8C74 -> 0000D870 8C78 -> 0000F5F4 8C79 -> 0000B1AA 8C7A -> 0000B2F2 8C7B -> 0000D874 8C82 -> 0000F5F5 8C83 -> 0000D87B 8C85 -> 0000F5F7 8C86 -> 0000D87D 8C88 -> 0000D880 8C89 -> 0000BAD1 8C8A -> 0000F5F6 8C8B -> 0000D881 8C8C -> 0000C3B2 8C8D -> 0000D882 8C94 -> 0000F5F9 8C95 -> 0000D889 8C98 -> 0000F5F8 8C99 -> 0000D88C 8CAE -> 0000D940 8CED -> 0000D980 8D0E -> 0000DA40 8D1D -> 0000B1B4 8D1E -> 0000D5EA 8D1F -> 0000B8BA 8D20 -> 0000DA4F 8D21 -> 0000B9B1 8D22 -> 0000B2C6 8D23 -> 0000D4F0 8D24 -> 0000CFCD 8D25 -> 0000B0DC 8D26 -> 0000D5CB 8D27 -> 0000BBF5 8D28 -> 0000D6CA 8D29 -> 0000B7B7 8D2A -> 0000CCB0 8D2B -> 0000C6B6 8D2C -> 0000B1E1 8D2D -> 0000B9BA 8D2E -> 0000D6FC 8D2F -> 0000B9E1 8D30 -> 0000B7A1 8D31 -> 0000BCFA 8D32 -> 0000EADA 8D34 -> 0000CCF9 8D35 -> 0000B9F3 8D36 -> 0000EADC 8D37 -> 0000B4FB 8D38 -> 0000C3B3 8D39 -> 0000B7D1 8D3A -> 0000BAD8 8D3B -> 0000EADD 8D3C -> 0000D4F4 8D3D -> 0000EADE 8D3E -> 0000BCD6 8D3F -> 0000BBDF 8D40 -> 0000EADF 8D41 -> 0000C1DE 8D42 -> 0000C2B8 8D43 -> 0000D4DF 8D44 -> 0000D7CA 8D45 -> 0000EAE0 8D47 -> 0000EAE4 8D48 -> 0000EAE2 8D4A -> 0000C9DE 8D4B -> 0000B8B3 8D4C -> 0000B6C4 8D4D -> 0000EAE5 8D4E -> 0000CAEA 8D4F -> 0000C9CD 8D50 -> 0000B4CD 8D51 -> 0000DA50 8D53 -> 0000E2D9 8D54 -> 0000C5E2 8D55 -> 0000EAE6 8D56 -> 0000C0B5 8D57 -> 0000DA52 8D58 -> 0000D7B8 8D59 -> 0000EAE7 8D5A -> 0000D7AC 8D5B -> 0000C8FC 8D5C -> 0000D8D3 8D5D -> 0000D8CD 8D5E -> 0000D4DE 8D5F -> 0000DA53 8D60 -> 0000D4F9 8D61 -> 0000C9C4 8D62 -> 0000D3AE 8D63 -> 0000B8D3 8D64 -> 0000B3E0 8D65 -> 0000DA54 8D66 -> 0000C9E2 8D67 -> 0000F4F6 8D68 -> 0000DA55 8D6B -> 0000BAD5 8D6C -> 0000DA58 8D6D -> 0000F4F7 8D6E -> 0000DA59 8D70 -> 0000D7DF 8D71 -> 0000DA5B 8D73 -> 0000F4F1 8D74 -> 0000B8B0 8D75 -> 0000D5D4 8D76 -> 0000B8CF 8D77 -> 0000C6F0 8D78 -> 0000DA5D 8D81 -> 0000B3C3 8D82 -> 0000DA66 8D84 -> 0000F4F2 8D85 -> 0000B3AC 8D86 -> 0000DA68 8D8A -> 0000D4BD 8D8B -> 0000C7F7 8D8C -> 0000DA6C 8D91 -> 0000F4F4 8D92 -> 0000DA71 8D94 -> 0000F4F3 8D95 -> 0000DA73 8D9F -> 0000CCCB 8DA0 -> 0000DA7D 8DA2 -> 0000DA80 8DA3 -> 0000C8A4 8DA4 -> 0000DA81 8DB1 -> 0000F4F5 8DB2 -> 0000DA8E 8DB3 -> 0000D7E3 8DB4 -> 0000C5BF 8DB5 -> 0000F5C0 8DB6 -> 0000DA8F 8DB8 -> 0000F5BB 8DB9 -> 0000DA91 8DBA -> 0000F5C3 8DBB -> 0000DA92 8DBC -> 0000F5C2 8DBD -> 0000DA93 8DBE -> 0000D6BA 8DBF -> 0000F5C1 8DC0 -> 0000DA94 8DC3 -> 0000D4BE 8DC4 -> 0000F5C4 8DC5 -> 0000DA97 8DC6 -> 0000F5CC 8DC7 -> 0000DA98 8DCB -> 0000B0CF 8DCC -> 0000B5F8 8DCD -> 0000DA9C 8DCE -> 0000F5C9 8DD0 -> 0000DA9D 8DD1 -> 0000C5DC 8DD2 -> 0000DA9E 8DD5 -> 0000DB40 8DD6 -> 0000F5C5 8DD8 -> 0000DB41 8DDA -> 0000F5C7 8DDB -> 0000F5CB 8DDC -> 0000DB43 8DDD -> 0000BEE0 8DDE -> 0000F5C8 8DDF -> 0000B8FA 8DE0 -> 0000DB44 8DE3 -> 0000F5D0 8DE4 -> 0000F5D3 8DE5 -> 0000DB47 8DE8 -> 0000BFE7 8DE9 -> 0000DB4A 8DEA -> 0000B9F2 8DEB -> 0000F5BC 8DEC -> 0000F5CD 8DED -> 0000DB4B 8DEF -> 0000C2B7 8DF0 -> 0000DB4D 8DF3 -> 0000CCF8 8DF4 -> 0000DB50 8DF5 -> 0000BCF9 8DF6 -> 0000DB51 8DF7 -> 0000F5CE 8DF9 -> 0000F5D1 8DFA -> 0000B6E5 8DFB -> 0000F5D2 8DFC -> 0000DB52 8DFD -> 0000F5D5 8DFE -> 0000DB53 8E05 -> 0000F5BD 8E06 -> 0000DB5A 8E09 -> 0000F5D4 8E0A -> 0000D3BB 8E0B -> 0000DB5D 8E0C -> 0000B3EC 8E0D -> 0000DB5E 8E0F -> 0000CCA4 8E10 -> 0000DB60 8E14 -> 0000F5D6 8E15 -> 0000DB64 8E1D -> 0000F5D7 8E1E -> 0000BEE1 8E1F -> 0000F5D8 8E20 -> 0000DB6C 8E22 -> 0000CCDF 8E23 -> 0000F5DB 8E24 -> 0000DB6E 8E29 -> 0000B2C8 8E2A -> 0000D7D9 8E2B -> 0000DB73 8E2C -> 0000F5D9 8E2D -> 0000DB74 8E2E -> 0000F5DA 8E2F -> 0000F5DC 8E30 -> 0000DB75 8E31 -> 0000F5E2 8E32 -> 0000DB76 8E35 -> 0000F5E0 8E36 -> 0000DB79 8E39 -> 0000F5DF 8E3A -> 0000F5DD 8E3B -> 0000DB7C 8E3D -> 0000F5E1 8E3E -> 0000DB7E 8E3F -> 0000DB80 8E40 -> 0000F5DE 8E41 -> 0000F5E4 8E43 -> 0000DB81 8E44 -> 0000CCE3 8E45 -> 0000DB82 8E47 -> 0000E5BF 8E48 -> 0000B5B8 8E49 -> 0000F5E3 8E4A -> 0000F5E8 8E4B -> 0000CCA3 8E4C -> 0000DB84 8E51 -> 0000F5E6 8E53 -> 0000DB89 8E59 -> 0000F5BE 8E5A -> 0000DB8F 8E66 -> 0000B1C4 8E67 -> 0000DB9B 8E69 -> 0000F5BF 8E6A -> 0000DB9D 8E6C -> 0000B5C5 8E6D -> 0000B2E4 8E6E -> 0000DB9F 8E6F -> 0000F5EC 8E70 -> 0000F5E9 8E71 -> 0000DBA0 8E72 -> 0000B6D7 8E73 -> 0000DC40 8E74 -> 0000F5ED 8E75 -> 0000DC41 8E76 -> 0000F5EA 8E77 -> 0000DC42 8E7C -> 0000F5EB 8E7D -> 0000DC47 8E7F -> 0000B4DA 8E80 -> 0000DC49 8E81 -> 0000D4EA 8E82 -> 0000DC4A 8E85 -> 0000F5EE 8E86 -> 0000DC4D 8E87 -> 0000B3F9 8E88 -> 0000DC4E 8E8F -> 0000F5EF 8E90 -> 0000F5F1 8E91 -> 0000DC55 8E94 -> 0000F5F0 8E95 -> 0000DC58 8E9C -> 0000F5F2 8E9D -> 0000DC5F 8E9E -> 0000F5F3 8E9F -> 0000DC60 8EAB -> 0000C9ED 8EAC -> 0000B9AA 8EAD -> 0000DC6C 8EAF -> 0000C7FB 8EB0 -> 0000DC6E 8EB2 -> 0000B6E3 8EB3 -> 0000DC70 8EBA -> 0000CCC9 8EBB -> 0000DC77 8EC3 -> 0000DC80 8ECE -> 0000EAA6 8ECF -> 0000DC8B 8EE5 -> 0000DD40 8F24 -> 0000DD80 8F45 -> 0000DE40 8F66 -> 0000B3B5 8F67 -> 0000D4FE 8F68 -> 0000B9EC 8F69 -> 0000D0F9 8F6A -> 0000DE61 8F6B -> 0000E9ED 8F6C -> 0000D7AA 8F6D -> 0000E9EE 8F6E -> 0000C2D6 8F6F -> 0000C8ED 8F70 -> 0000BAE4 8F71 -> 0000E9EF 8F74 -> 0000D6E1 8F75 -> 0000E9F2 8F77 -> 0000E9F5 8F78 -> 0000E9F4 8F79 -> 0000E9F6 8F7B -> 0000C7E1 8F7C -> 0000E9F8 8F7D -> 0000D4D8 8F7E -> 0000E9F9 8F7F -> 0000BDCE 8F80 -> 0000DE62 8F81 -> 0000E9FA 8F83 -> 0000BDCF 8F84 -> 0000E9FC 8F85 -> 0000B8A8 8F86 -> 0000C1BE 8F87 -> 0000E9FD 8F88 -> 0000B1B2 8F89 -> 0000BBD4 8F8A -> 0000B9F5 8F8B -> 0000E9FE 8F8C -> 0000DE63 8F8D -> 0000EAA1 8F90 -> 0000B7F8 8F91 -> 0000BCAD 8F92 -> 0000DE64 8F93 -> 0000CAE4 8F94 -> 0000E0CE 8F95 -> 0000D4AF 8F96 -> 0000CFBD 8F97 -> 0000D5B7 8F98 -> 0000EAA4 8F99 -> 0000D5DE 8F9A -> 0000EAA5 8F9B -> 0000D0C1 8F9C -> 0000B9BC 8F9D -> 0000DE65 8F9E -> 0000B4C7 8F9F -> 0000B1D9 8FA0 -> 0000DE66 8FA3 -> 0000C0B1 8FA4 -> 0000DE69 8FA8 -> 0000B1E6 8FAA -> 0000DE6D 8FAB -> 0000B1E8 8FAC -> 0000DE6E 8FB0 -> 0000B3BD 8FB1 -> 0000C8E8 8FB2 -> 0000DE72 8FB6 -> 0000E5C1 8FB7 -> 0000DE76 8FB9 -> 0000B1DF 8FBA -> 0000DE78 8FBD -> 0000C1C9 8FBE -> 0000B4EF 8FBF -> 0000DE7B 8FC1 -> 0000C7A8 8FC2 -> 0000D3D8 8FC3 -> 0000DE7D 8FC4 -> 0000C6F9 8FC5 -> 0000D1B8 8FC6 -> 0000DE7E 8FC7 -> 0000B9FD 8FC8 -> 0000C2F5 8FC9 -> 0000DE80 8FCE -> 0000D3AD 8FCF -> 0000DE85 8FD0 -> 0000D4CB 8FD1 -> 0000BDFC 8FD2 -> 0000DE86 8FD3 -> 0000E5C2 8FD4 -> 0000B7B5 8FD5 -> 0000E5C3 8FD6 -> 0000DE87 8FD8 -> 0000BBB9 8FD9 -> 0000D5E2 8FDA -> 0000DE89 8FDB -> 0000BDF8 8FDC -> 0000D4B6 8FDD -> 0000CEA5 8FDE -> 0000C1AC 8FDF -> 0000B3D9 8FE0 -> 0000DE8A 8FE2 -> 0000CCF6 8FE3 -> 0000DE8C 8FE4 -> 0000E5C6 8FE5 -> 0000E5C4 8FE6 -> 0000E5C8 8FE7 -> 0000DE8D 8FE8 -> 0000E5CA 8FE9 -> 0000E5C7 8FEA -> 0000B5CF 8FEB -> 0000C6C8 8FEC -> 0000DE8E 8FED -> 0000B5FC 8FEE -> 0000E5C5 8FEF -> 0000DE8F 8FF0 -> 0000CAF6 8FF1 -> 0000DE90 8FF3 -> 0000E5C9 8FF4 -> 0000DE92 8FF7 -> 0000C3D4 8FF8 -> 0000B1C5 8FF9 -> 0000BCA3 8FFA -> 0000DE95 8FFD -> 0000D7B7 8FFE -> 0000DE98 9000 -> 0000CDCB 9001 -> 0000CBCD 9002 -> 0000CACA 9003 -> 0000CCD3 9004 -> 0000E5CC 9005 -> 0000E5CB 9006 -> 0000C4E6 9007 -> 0000DE9A 9009 -> 0000D1A1 900A -> 0000D1B7 900B -> 0000E5CD 900C -> 0000DE9C 900D -> 0000E5D0 900E -> 0000DE9D 900F -> 0000CDB8 9010 -> 0000D6F0 9011 -> 0000E5CF 9012 -> 0000B5DD 9013 -> 0000DE9E 9014 -> 0000CDBE 9015 -> 0000DE9F 9016 -> 0000E5D1 9017 -> 0000B6BA 9018 -> 0000DEA0 9019 -> 0000DF40 901A -> 0000CDA8 901B -> 0000B9E4 901C -> 0000DF41 901D -> 0000CAC5 901E -> 0000B3D1 901F -> 0000CBD9 9020 -> 0000D4EC 9021 -> 0000E5D2 9022 -> 0000B7EA 9023 -> 0000DF42 9026 -> 0000E5CE 9027 -> 0000DF45 902D -> 0000E5D5 902E -> 0000B4FE 902F -> 0000E5D6 9030 -> 0000DF4B 9035 -> 0000E5D3 9037 -> 0000DF50 9038 -> 0000D2DD 9039 -> 0000DF51 903B -> 0000C2DF 903C -> 0000B1C6 903D -> 0000DF53 903E -> 0000D3E2 903F -> 0000DF54 9041 -> 0000B6DD 9042 -> 0000CBEC 9043 -> 0000DF56 9044 -> 0000E5D7 9045 -> 0000DF57 9047 -> 0000D3F6 9048 -> 0000DF59 904D -> 0000B1E9 904E -> 0000DF5E 904F -> 0000B6F4 9050 -> 0000E5DA 9051 -> 0000E5D8 9053 -> 0000B5C0 9054 -> 0000DF5F 9057 -> 0000D2C5 9058 -> 0000E5DC 9059 -> 0000DF62 905B -> 0000E5DE 905C -> 0000DF64 9062 -> 0000E5DD 9063 -> 0000C7B2 9064 -> 0000DF6A 9065 -> 0000D2A3 9066 -> 0000DF6B 9068 -> 0000E5DB 9069 -> 0000DF6D 906D -> 0000D4E2 906E -> 0000D5DA 906F -> 0000DF71 9074 -> 0000E5E0 9075 -> 0000D7F1 9076 -> 0000DF76 907D -> 0000E5E1 907E -> 0000DF7D 907F -> 0000B1DC 9080 -> 0000D1FB 9081 -> 0000DF7E 9082 -> 0000E5E2 9083 -> 0000E5E4 9084 -> 0000DF80 9088 -> 0000E5E3 9089 -> 0000DF84 908B -> 0000E5E5 908C -> 0000DF86 9091 -> 0000D2D8 9092 -> 0000DF8B 9093 -> 0000B5CB 9094 -> 0000DF8C 9095 -> 0000E7DF 9096 -> 0000DF8D 9097 -> 0000DAF5 9098 -> 0000DF8E 9099 -> 0000DAF8 909A -> 0000DF8F 909B -> 0000DAF6 909C -> 0000DF90 909D -> 0000DAF7 909E -> 0000DF91 90A1 -> 0000DAFA 90A2 -> 0000D0CF 90A3 -> 0000C4C7 90A4 -> 0000DF94 90A6 -> 0000B0EE 90A7 -> 0000DF96 90AA -> 0000D0B0 90AB -> 0000DF99 90AC -> 0000DAF9 90AD -> 0000DF9A 90AE -> 0000D3CA 90AF -> 0000BAAA 90B0 -> 0000DBA2 90B1 -> 0000C7F1 90B2 -> 0000DF9B 90B3 -> 0000DAFC 90B4 -> 0000DAFB 90B5 -> 0000C9DB 90B6 -> 0000DAFD 90B7 -> 0000DF9C 90B8 -> 0000DBA1 90B9 -> 0000D7DE 90BA -> 0000DAFE 90BB -> 0000C1DA 90BC -> 0000DF9D 90BE -> 0000DBA5 90BF -> 0000DF9F 90C1 -> 0000D3F4 90C2 -> 0000E040 90C4 -> 0000DBA7 90C5 -> 0000DBA4 90C6 -> 0000E042 90C7 -> 0000DBA8 90C8 -> 0000E043 90CA -> 0000BDBC 90CB -> 0000E045 90CE -> 0000C0C9 90CF -> 0000DBA3 90D0 -> 0000DBA6 90D1 -> 0000D6A3 90D2 -> 0000E048 90D3 -> 0000DBA9 90D4 -> 0000E049 90D7 -> 0000DBAD 90D8 -> 0000E04C 90DB -> 0000DBAE 90DC -> 0000DBAC 90DD -> 0000BAC2 90DE -> 0000E04F 90E1 -> 0000BFA4 90E2 -> 0000DBAB 90E3 -> 0000E052 90E6 -> 0000DBAA 90E7 -> 0000D4C7 90E8 -> 0000B2BF 90E9 -> 0000E055 90EB -> 0000DBAF 90EC -> 0000E057 90ED -> 0000B9F9 90EE -> 0000E058 90EF -> 0000DBB0 90F0 -> 0000E059 90F4 -> 0000B3BB 90F5 -> 0000E05D 90F8 -> 0000B5A6 90F9 -> 0000E060 90FD -> 0000B6BC 90FE -> 0000DBB1 90FF -> 0000E064 9102 -> 0000B6F5 9103 -> 0000E067 9104 -> 0000DBB2 9105 -> 0000E068 9119 -> 0000B1C9 911A -> 0000E07C 911D -> 0000E080 911E -> 0000DBB4 911F -> 0000E081 9122 -> 0000DBB3 9123 -> 0000DBB5 9124 -> 0000E084 912F -> 0000DBB7 9130 -> 0000E08F 9131 -> 0000DBB6 9132 -> 0000E090 9139 -> 0000DBB8 913A -> 0000E097 9143 -> 0000DBB9 9144 -> 0000E0A0 9145 -> 0000E140 9146 -> 0000DBBA 9147 -> 0000E141 9149 -> 0000D3CF 914A -> 0000F4FA 914B -> 0000C7F5 914C -> 0000D7C3 914D -> 0000C5E4 914E -> 0000F4FC 9150 -> 0000F4FB 9151 -> 0000E143 9152 -> 0000BEC6 9153 -> 0000E144 9157 -> 0000D0EF 9158 -> 0000E148 915A -> 0000B7D3 915B -> 0000E14A 915D -> 0000D4CD 915E -> 0000CCAA 915F -> 0000E14C 9161 -> 0000F5A2 9162 -> 0000F5A1 9163 -> 0000BAA8 9164 -> 0000F4FE 9165 -> 0000CBD6 9166 -> 0000E14E 9169 -> 0000F5A4 916A -> 0000C0D2 916B -> 0000E151 916C -> 0000B3EA 916D -> 0000E152 916E -> 0000CDAA 916F -> 0000F5A5 9170 -> 0000F5A3 9171 -> 0000BDB4 9172 -> 0000F5A8 9173 -> 0000E153 9174 -> 0000F5A9 9175 -> 0000BDCD 9176 -> 0000C3B8 9177 -> 0000BFE1 9178 -> 0000CBE1 9179 -> 0000F5AA 917A -> 0000E154 917D -> 0000F5A6 917F -> 0000C4F0 9180 -> 0000E157 9185 -> 0000F5AC 9186 -> 0000E15C 9187 -> 0000B4BC 9188 -> 0000E15D 9189 -> 0000D7ED 918A -> 0000E15E 918B -> 0000B4D7 918C -> 0000F5AB 918D -> 0000F5AE 918E -> 0000E15F 9190 -> 0000F5AD 9191 -> 0000F5AF 9192 -> 0000D0D1 9193 -> 0000E161 919A -> 0000C3D1 919B -> 0000C8A9 919C -> 0000E168 91A2 -> 0000F5B0 91A4 -> 0000E16E 91AA -> 0000F5B2 91AB -> 0000E174 91AD -> 0000F5B3 91B0 -> 0000E176 91B4 -> 0000F5B7 91B5 -> 0000F5B6 91B6 -> 0000E17A 91BA -> 0000F5B8 91BB -> 0000E17E 91BC -> 0000E180 91C7 -> 0000B2C9 91C8 -> 0000E18B 91C9 -> 0000D3D4 91CA -> 0000CACD 91CB -> 0000E18C 91CC -> 0000C0EF 91CD -> 0000D6D8 91CE -> 0000D2B0 91CF -> 0000C1BF 91D0 -> 0000E18D 91D1 -> 0000BDF0 91D2 -> 0000E18E 91DC -> 0000B8AA 91DD -> 0000E198 91E6 -> 0000E240 9225 -> 0000E280 9246 -> 0000E340 9274 -> 0000BCF8 9275 -> 0000E36E 9286 -> 0000E380 928E -> 0000F6C6 928F -> 0000E388 92A8 -> 0000E440 92AE -> 0000F6C7 92AF -> 0000E446 92C8 -> 0000F6C8 92C9 -> 0000E45F 92E9 -> 0000E480 930A -> 0000E540 933E -> 0000F6C9 933F -> 0000E574 934A -> 0000E580 936A -> 0000F6CA 936B -> 0000E5A0 936C -> 0000E640 938F -> 0000F6CC 9390 -> 0000E663 93AC -> 0000E680 93CA -> 0000F6CB 93CB -> 0000E69E 93CE -> 0000E740 93D6 -> 0000F7E9 93D7 -> 0000E748 940E -> 0000E780 942F -> 0000E840 943E -> 0000F6CD 943F -> 0000E84F 946B -> 0000F6CE 946C -> 0000E87B 9470 -> 0000E880 9485 -> 0000EEC4 9488 -> 0000D5EB 9489 -> 0000B6A4 948A -> 0000EEC8 948B -> 0000EEC7 948C -> 0000EEC9 948E -> 0000C7A5 948F -> 0000EECB 9491 -> 0000E895 9492 -> 0000B7B0 9493 -> 0000B5F6 9494 -> 0000EECD 9495 -> 0000EECF 9496 -> 0000E896 9497 -> 0000EECE 9498 -> 0000E897 9499 -> 0000B8C6 949A -> 0000EED0 949D -> 0000B6DB 949E -> 0000B3AE 949F -> 0000D6D3 94A0 -> 0000C4C6 94A1 -> 0000B1B5 94A2 -> 0000B8D6 94A3 -> 0000EED3 94A5 -> 0000D4BF 94A6 -> 0000C7D5 94A7 -> 0000BEFB 94A8 -> 0000CED9 94A9 -> 0000B9B3 94AA -> 0000EED6 94AB -> 0000EED5 94AC -> 0000EED8 94AD -> 0000EED7 94AE -> 0000C5A5 94AF -> 0000EED9 94B1 -> 0000C7AE 94B2 -> 0000EEDB 94B3 -> 0000C7AF 94B4 -> 0000EEDC 94B5 -> 0000B2A7 94B6 -> 0000EEDD 94BB -> 0000D7EA 94BC -> 0000EEE2 94BE -> 0000BCD8 94BF -> 0000EEE4 94C0 -> 0000D3CB 94C1 -> 0000CCFA 94C2 -> 0000B2AC 94C3 -> 0000C1E5 94C4 -> 0000EEE5 94C5 -> 0000C7A6 94C6 -> 0000C3AD 94C7 -> 0000E898 94C8 -> 0000EEE6 94CF -> 0000E899 94D0 -> 0000EEED 94D3 -> 0000E89A 94D5 -> 0000EEF0 94D8 -> 0000EEF4 94D9 -> 0000EEF3 94DA -> 0000E89C 94DB -> 0000EEF5 94DC -> 0000CDAD 94DD -> 0000C2C1 94DE -> 0000EEF6 94E1 -> 0000D5A1 94E2 -> 0000EEF9 94E3 -> 0000CFB3 94E4 -> 0000EEFA 94E6 -> 0000E89D 94E7 -> 0000EEFC 94E9 -> 0000EFA1 94EA -> 0000EEFE 94EB -> 0000EFA2 94EC -> 0000B8F5 94ED -> 0000C3FA 94EE -> 0000EFA3 94F0 -> 0000BDC2 94F1 -> 0000D2BF 94F2 -> 0000B2F9 94F3 -> 0000EFA5 94F6 -> 0000D2F8 94F7 -> 0000EFA8 94F8 -> 0000D6FD 94F9 -> 0000EFA9 94FA -> 0000C6CC 94FB -> 0000E89E 94FC -> 0000EFAA 94FE -> 0000C1B4 94FF -> 0000EFAC 9500 -> 0000CFFA 9501 -> 0000CBF8 9502 -> 0000EFAE 9503 -> 0000EFAD 9504 -> 0000B3FA 9505 -> 0000B9F8 9506 -> 0000EFAF 9508 -> 0000D0E2 9509 -> 0000EFB1 950B -> 0000B7E6 950C -> 0000D0BF 950D -> 0000EFB3 9510 -> 0000C8F1 9511 -> 0000CCE0 9512 -> 0000EFB6 9517 -> 0000D5E0 9518 -> 0000EFBB 9519 -> 0000B4ED 951A -> 0000C3AA 951B -> 0000EFBC 951C -> 0000E89F 951D -> 0000EFBD 9520 -> 0000E8A0 9521 -> 0000CEFD 9522 -> 0000EFC0 9523 -> 0000C2E0 9524 -> 0000B4B8 9525 -> 0000D7B6 9526 -> 0000BDF5 9527 -> 0000E940 9528 -> 0000CFC7 9529 -> 0000EFC3 952A -> 0000EFC1 952C -> 0000EFC4 952D -> 0000B6A7 952E -> 0000BCFC 952F -> 0000BEE2 9530 -> 0000C3CC 9531 -> 0000EFC5 9533 -> 0000E941 9534 -> 0000EFC7 9535 -> 0000EFCF 9536 -> 0000EFC8 9539 -> 0000C7C2 953A -> 0000EFF1 953B -> 0000B6CD 953C -> 0000EFCB 953D -> 0000E942 953E -> 0000EFCC 9540 -> 0000B6C6 9541 -> 0000C3BE 9542 -> 0000EFCE 9543 -> 0000E943 9544 -> 0000EFD0 9547 -> 0000D5F2 9548 -> 0000E944 9549 -> 0000EFD3 954A -> 0000C4F7 954B -> 0000E945 954C -> 0000EFD4 954D -> 0000C4F8 954E -> 0000EFD5 9550 -> 0000B8E4 9551 -> 0000B0F7 9552 -> 0000EFD7 9555 -> 0000E946 9556 -> 0000EFDA 955A -> 0000E947 955B -> 0000EFDE 955C -> 0000BEB5 955D -> 0000EFE1 955E -> 0000EFDF 9560 -> 0000E948 9561 -> 0000EFE2 9563 -> 0000C1CD 9564 -> 0000EFE4 956D -> 0000C0D8 956E -> 0000E949 956F -> 0000EFED 9570 -> 0000C1AD 9571 -> 0000EFEE 9574 -> 0000E94A 9576 -> 0000CFE2 9577 -> 0000E94C 957F -> 0000B3A4 9580 -> 0000E954 95AB -> 0000E980 95CC -> 0000EA40 95E8 -> 0000C3C5 95E9 -> 0000E3C5 95EA -> 0000C9C1 95EB -> 0000E3C6 95EC -> 0000EA5C 95ED -> 0000B1D5 95EE -> 0000CECA 95EF -> 0000B4B3 95F0 -> 0000C8F2 95F1 -> 0000E3C7 95F2 -> 0000CFD0 95F3 -> 0000E3C8 95F4 -> 0000BCE4 95F5 -> 0000E3C9 95F7 -> 0000C3C6 95F8 -> 0000D5A2 95F9 -> 0000C4D6 95FA -> 0000B9EB 95FB -> 0000CEC5 95FC -> 0000E3CB 95FD -> 0000C3F6 95FE -> 0000E3CC 95FF -> 0000EA5D 9600 -> 0000B7A7 9601 -> 0000B8F3 9602 -> 0000BAD2 9603 -> 0000E3CD 9605 -> 0000D4C4 9606 -> 0000E3CF 9607 -> 0000EA5E 9608 -> 0000E3D0 9609 -> 0000D1CB 960A -> 0000E3D1 960E -> 0000D1D6 960F -> 0000E3D5 9610 -> 0000B2FB 9611 -> 0000C0BB 9612 -> 0000E3D6 9613 -> 0000EA5F 9614 -> 0000C0AB 9615 -> 0000E3D7 9618 -> 0000EA60 9619 -> 0000E3DA 961B -> 0000EA61 961C -> 0000B8B7 961D -> 0000DAE2 961E -> 0000EA62 961F -> 0000B6D3 9620 -> 0000EA63 9621 -> 0000DAE4 9622 -> 0000DAE3 9623 -> 0000EA64 962A -> 0000DAE6 962B -> 0000EA6B 962E -> 0000C8EE 962F -> 0000EA6E 9631 -> 0000DAE5 9632 -> 0000B7C0 9633 -> 0000D1F4 9634 -> 0000D2F5 9635 -> 0000D5F3 9636 -> 0000BDD7 9637 -> 0000EA70 963B -> 0000D7E8 963C -> 0000DAE8 963D -> 0000DAE7 963E -> 0000EA74 963F -> 0000B0A2 9640 -> 0000CDD3 9641 -> 0000EA75 9642 -> 0000DAE9 9643 -> 0000EA76 9644 -> 0000B8BD 9645 -> 0000BCCA 9646 -> 0000C2BD 9647 -> 0000C2A4 9648 -> 0000B3C2 9649 -> 0000DAEA 964A -> 0000EA77 964B -> 0000C2AA 964C -> 0000C4B0 964D -> 0000BDB5 964E -> 0000EA78 9650 -> 0000CFDE 9651 -> 0000EA7A 9654 -> 0000DAEB 9655 -> 0000C9C2 9656 -> 0000EA7D 9658 -> 0000EA80 965B -> 0000B1DD 965C -> 0000EA83 965F -> 0000DAEC 9660 -> 0000EA86 9661 -> 0000B6B8 9662 -> 0000D4BA 9663 -> 0000EA87 9664 -> 0000B3FD 9665 -> 0000EA88 9667 -> 0000DAED 9668 -> 0000D4C9 9669 -> 0000CFD5 966A -> 0000C5E3 966B -> 0000EA8A 966C -> 0000DAEE 966D -> 0000EA8B 9672 -> 0000DAEF 9673 -> 0000EA90 9674 -> 0000DAF0 9675 -> 0000C1EA 9676 -> 0000CCD5 9677 -> 0000CFDD 9678 -> 0000EA91 9685 -> 0000D3E7 9686 -> 0000C2A1 9687 -> 0000EA9E 9688 -> 0000DAF1 9689 -> 0000EA9F 968B -> 0000CBE5 968C -> 0000EB40 968D -> 0000DAF2 968E -> 0000EB41 968F -> 0000CBE6 9690 -> 0000D2FE 9691 -> 0000EB42 9694 -> 0000B8F4 9695 -> 0000EB45 9697 -> 0000DAF3 9698 -> 0000B0AF 9699 -> 0000CFB6 969A -> 0000EB47 969C -> 0000D5CF 969D -> 0000EB49 96A7 -> 0000CBED 96A8 -> 0000EB53 96B0 -> 0000DAF4 96B1 -> 0000EB5B 96B3 -> 0000E3C4 96B4 -> 0000EB5D 96B6 -> 0000C1A5 96B7 -> 0000EB5F 96B9 -> 0000F6BF 96BA -> 0000EB61 96BC -> 0000F6C0 96BE -> 0000C4D1 96BF -> 0000EB63 96C0 -> 0000C8B8 96C1 -> 0000D1E3 96C2 -> 0000EB64 96C4 -> 0000D0DB 96C5 -> 0000D1C5 96C6 -> 0000BCAF 96C7 -> 0000B9CD 96C8 -> 0000EB66 96C9 -> 0000EFF4 96CA -> 0000EB67 96CC -> 0000B4C6 96CD -> 0000D3BA 96CE -> 0000F6C2 96CF -> 0000B3FB 96D0 -> 0000EB69 96D2 -> 0000F6C3 96D3 -> 0000EB6B 96D5 -> 0000B5F1 96D6 -> 0000EB6D 96E0 -> 0000F6C5 96E1 -> 0000EB77 96E8 -> 0000D3EA 96E9 -> 0000F6A7 96EA -> 0000D1A9 96EB -> 0000EB7E 96EC -> 0000EB80 96EF -> 0000F6A9 96F0 -> 0000EB83 96F3 -> 0000F6A8 96F4 -> 0000EB86 96F6 -> 0000C1E3 96F7 -> 0000C0D7 96F8 -> 0000EB88 96F9 -> 0000B1A2 96FA -> 0000EB89 96FE -> 0000CEED 96FF -> 0000EB8D 9700 -> 0000D0E8 9701 -> 0000F6AB 9702 -> 0000EB8E 9704 -> 0000CFF6 9705 -> 0000EB90 9706 -> 0000F6AA 9707 -> 0000D5F0 9708 -> 0000F6AC 9709 -> 0000C3B9 970A -> 0000EB91 970D -> 0000BBF4 970E -> 0000F6AE 970F -> 0000F6AD 9710 -> 0000EB94 9713 -> 0000C4DE 9714 -> 0000EB97 9716 -> 0000C1D8 9717 -> 0000EB99 971C -> 0000CBAA 971D -> 0000EB9E 971E -> 0000CFBC 971F -> 0000EB9F 9721 -> 0000EC40 972A -> 0000F6AF 972B -> 0000EC49 972D -> 0000F6B0 972E -> 0000EC4B 9730 -> 0000F6B1 9731 -> 0000EC4D 9732 -> 0000C2B6 9733 -> 0000EC4E 9738 -> 0000B0D4 9739 -> 0000C5F9 973A -> 0000EC53 973E -> 0000F6B2 973F -> 0000EC57 9752 -> 0000C7E0 9753 -> 0000F6A6 9754 -> 0000EC6A 9756 -> 0000BEB8 9757 -> 0000EC6C 9759 -> 0000BEB2 975A -> 0000EC6E 975B -> 0000B5E5 975C -> 0000EC6F 975E -> 0000B7C7 975F -> 0000EC71 9760 -> 0000BFBF 9761 -> 0000C3D2 9762 -> 0000C3E6 9763 -> 0000EC72 9765 -> 0000D8CC 9766 -> 0000EC74 9769 -> 0000B8EF 976A -> 0000EC77 9772 -> 0000EC80 9773 -> 0000BDF9 9774 -> 0000D1A5 9775 -> 0000EC81 9776 -> 0000B0D0 9777 -> 0000EC82 977C -> 0000F7B0 977D -> 0000EC87 9785 -> 0000F7B1 9786 -> 0000EC8F 978B -> 0000D0AC 978C -> 0000EC94 978D -> 0000B0B0 978E -> 0000EC95 9791 -> 0000F7B2 9793 -> 0000EC98 9794 -> 0000F7B4 9795 -> 0000EC99 9798 -> 0000C7CA 9799 -> 0000EC9C 979E -> 0000ED40 97A0 -> 0000BECF 97A1 -> 0000ED42 97A3 -> 0000F7B7 97A4 -> 0000ED44 97AB -> 0000F7B6 97AC -> 0000ED4B 97AD -> 0000B1DE 97AE -> 0000ED4C 97AF -> 0000F7B5 97B0 -> 0000ED4D 97B2 -> 0000F7B8 97B3 -> 0000ED4F 97B4 -> 0000F7B9 97B5 -> 0000ED50 97E4 -> 0000ED80 97E6 -> 0000CEA4 97E7 -> 0000C8CD 97E8 -> 0000ED82 97E9 -> 0000BAAB 97EA -> 0000E8B8 97ED -> 0000BEC2 97EE -> 0000ED83 97F3 -> 0000D2F4 97F4 -> 0000ED88 97F5 -> 0000D4CF 97F6 -> 0000C9D8 97F7 -> 0000ED89 980F -> 0000EE40 984E -> 0000EE80 986F -> 0000EF40 9875 -> 0000D2B3 9876 -> 0000B6A5 9877 -> 0000C7EA 9878 -> 0000F1FC 9879 -> 0000CFEE 987A -> 0000CBB3 987B -> 0000D0EB 987C -> 0000E7EF 987D -> 0000CDE7 987E -> 0000B9CB 987F -> 0000B6D9 9880 -> 0000F1FD 9881 -> 0000B0E4 9882 -> 0000CBCC 9883 -> 0000F1FE 9884 -> 0000D4A4 9885 -> 0000C2AD 9886 -> 0000C1EC 9887 -> 0000C6C4 9888 -> 0000BEB1 9889 -> 0000F2A1 988A -> 0000BCD5 988B -> 0000EF46 988C -> 0000F2A2 988E -> 0000EF47 988F -> 0000F2A4 9890 -> 0000D2C3 9891 -> 0000C6B5 9892 -> 0000EF48 9893 -> 0000CDC7 9894 -> 0000F2A5 9895 -> 0000EF49 9896 -> 0000D3B1 9897 -> 0000BFC5 9898 -> 0000CCE2 9899 -> 0000EF4A 989A -> 0000F2A6 989C -> 0000D1D5 989D -> 0000B6EE 989E -> 0000F2A8 98A0 -> 0000B5DF 98A1 -> 0000F2AA 98A3 -> 0000EF4B 98A4 -> 0000B2FC 98A5 -> 0000F2AC 98A7 -> 0000C8A7 98A8 -> 0000EF4C 98CE -> 0000B7E7 98CF -> 0000EF72 98D1 -> 0000ECA9 98D4 -> 0000EF74 98D5 -> 0000ECAC 98D6 -> 0000EF75 98D8 -> 0000C6AE 98D9 -> 0000ECAD 98DB -> 0000EF77 98DE -> 0000B7C9 98DF -> 0000CAB3 98E0 -> 0000EF7A 98E5 -> 0000EF80 98E7 -> 0000E2B8 98E8 -> 0000F7CF 98E9 -> 0000EF82 9908 -> 0000F040 990D -> 0000F7D0 990E -> 0000F045 9910 -> 0000B2CD 9911 -> 0000F047 992E -> 0000F7D1 992F -> 0000F064 994A -> 0000F080 9954 -> 0000F7D3 9955 -> 0000F7D2 9956 -> 0000F08A 9963 -> 0000E2BB 9964 -> 0000F097 9965 -> 0000BCA2 9966 -> 0000F098 9967 -> 0000E2BC 996D -> 0000B7B9 996E -> 0000D2FB 996F -> 0000BDA4 9970 -> 0000CACE 9971 -> 0000B1A5 9972 -> 0000CBC7 9973 -> 0000F099 9974 -> 0000E2C2 9975 -> 0000B6FC 9976 -> 0000C8C4 9977 -> 0000E2C3 9978 -> 0000F09A 997A -> 0000BDC8 997B -> 0000F09C 997C -> 0000B1FD 997D -> 0000E2C4 997E -> 0000F09D 997F -> 0000B6F6 9980 -> 0000E2C5 9981 -> 0000C4D9 9982 -> 0000F09E 9984 -> 0000E2C6 9985 -> 0000CFDA 9986 -> 0000B9DD 9987 -> 0000E2C7 9988 -> 0000C0A1 9989 -> 0000F0A0 998A -> 0000E2C8 998B -> 0000B2F6 998C -> 0000F140 998D -> 0000E2C9 998E -> 0000F141 998F -> 0000C1F3 9990 -> 0000E2CA 9992 -> 0000C2F8 9993 -> 0000E2CC 9996 -> 0000CAD7 9997 -> 0000D8B8 9998 -> 0000D9E5 9999 -> 0000CFE3 999A -> 0000F142 99A5 -> 0000F0A5 99A6 -> 0000F14D 99A8 -> 0000DCB0 99A9 -> 0000F14F 99D9 -> 0000F180 99FA -> 0000F240 9A39 -> 0000F280 9A5A -> 0000F340 9A6C -> 0000C2ED 9A6D -> 0000D4A6 9A6E -> 0000CDD4 9A6F -> 0000D1B1 9A70 -> 0000B3DB 9A71 -> 0000C7FD 9A72 -> 0000F352 9A73 -> 0000B2B5 9A74 -> 0000C2BF 9A75 -> 0000E6E0 9A76 -> 0000CABB 9A77 -> 0000E6E1 9A79 -> 0000BED4 9A7A -> 0000E6E3 9A7B -> 0000D7A4 9A7C -> 0000CDD5 9A7D -> 0000E6E5 9A7E -> 0000BCDD 9A7F -> 0000E6E4 9A80 -> 0000E6E6 9A82 -> 0000C2EE 9A83 -> 0000F353 9A84 -> 0000BDBE 9A85 -> 0000E6E8 9A86 -> 0000C2E6 9A87 -> 0000BAA7 9A88 -> 0000E6E9 9A89 -> 0000F354 9A8A -> 0000E6EA 9A8B -> 0000B3D2 9A8C -> 0000D1E9 9A8D -> 0000F355 9A8F -> 0000BFA5 9A90 -> 0000E6EB 9A91 -> 0000C6EF 9A92 -> 0000E6EC 9A94 -> 0000F357 9A96 -> 0000E6EE 9A97 -> 0000C6AD 9A98 -> 0000E6EF 9A99 -> 0000F359 9A9A -> 0000C9A7 9A9B -> 0000E6F0 9A9E -> 0000E5B9 9A9F -> 0000E6F3 9AA1 -> 0000C2E2 9AA2 -> 0000E6F5 9AA4 -> 0000D6E8 9AA5 -> 0000E6F7 9AA6 -> 0000F35A 9AA7 -> 0000E6F8 9AA8 -> 0000B9C7 9AA9 -> 0000F35B 9AB0 -> 0000F7BB 9AB1 -> 0000F7BA 9AB2 -> 0000F362 9AB6 -> 0000F7BE 9AB7 -> 0000F7BC 9AB8 -> 0000BAA1 9AB9 -> 0000F366 9ABA -> 0000F7BF 9ABB -> 0000F367 9ABC -> 0000F7C0 9ABD -> 0000F368 9AC0 -> 0000F7C2 9AC1 -> 0000F7C1 9AC2 -> 0000F7C4 9AC3 -> 0000F36B 9AC5 -> 0000F7C3 9AC6 -> 0000F36D 9ACB -> 0000F7C5 9ACD -> 0000F372 9AD1 -> 0000F7C7 9AD2 -> 0000F376 9AD3 -> 0000CBE8 9AD4 -> 0000F377 9AD8 -> 0000B8DF 9AD9 -> 0000F37B 9ADD -> 0000F380 9ADF -> 0000F7D4 9AE0 -> 0000F382 9AE1 -> 0000F7D5 9AE2 -> 0000F383 9AE6 -> 0000F7D6 9AE7 -> 0000F387 9AEB -> 0000F7D8 9AEC -> 0000F38B 9AED -> 0000F7DA 9AEE -> 0000F38C 9AEF -> 0000F7D7 9AF0 -> 0000F38D 9AF9 -> 0000F7DB 9AFA -> 0000F396 9AFB -> 0000F7D9 9AFC -> 0000F397 9B03 -> 0000D7D7 9B04 -> 0000F39E 9B07 -> 0000F440 9B08 -> 0000F7DC 9B09 -> 0000F441 9B0F -> 0000F7DD 9B10 -> 0000F447 9B13 -> 0000F7DE 9B14 -> 0000F44A 9B1F -> 0000F7DF 9B20 -> 0000F455 9B23 -> 0000F7E0 9B24 -> 0000F458 9B2F -> 0000DBCB 9B30 -> 0000F463 9B32 -> 0000D8AA 9B33 -> 0000F465 9B3B -> 0000E5F7 9B3C -> 0000B9ED 9B3D -> 0000F46D 9B41 -> 0000BFFD 9B42 -> 0000BBEA 9B43 -> 0000F7C9 9B44 -> 0000C6C7 9B45 -> 0000F7C8 9B46 -> 0000F471 9B47 -> 0000F7CA 9B48 -> 0000F7CC 9B49 -> 0000F7CB 9B4A -> 0000F472 9B4D -> 0000F7CD 9B4E -> 0000F475 9B4F -> 0000CEBA 9B50 -> 0000F476 9B51 -> 0000F7CE 9B52 -> 0000F477 9B54 -> 0000C4A7 9B55 -> 0000F479 9B5B -> 0000F480 9B7C -> 0000F540 9BBB -> 0000F580 9BDC -> 0000F640 9C1B -> 0000F680 9C3C -> 0000F740 9C7B -> 0000F780 9C7C -> 0000D3E3 9C7D -> 0000F781 9C7F -> 0000F6CF 9C80 -> 0000F783 9C81 -> 0000C2B3 9C82 -> 0000F6D0 9C83 -> 0000F784 9C85 -> 0000F6D1 9C89 -> 0000F786 9C8B -> 0000F6D6 9C8C -> 0000F788 9C8D -> 0000B1AB 9C8E -> 0000F6D7 9C8F -> 0000F789 9C90 -> 0000F6D8 9C93 -> 0000F78A 9C94 -> 0000F6DB 9C96 -> 0000F78B 9C9A -> 0000F6DD 9C9C -> 0000CFCA 9C9D -> 0000F78F 9C9E -> 0000F6DF 9CA4 -> 0000C0F0 9CA5 -> 0000F6E5 9CAA -> 0000F790 9CAB -> 0000F6EA 9CAC -> 0000F791 9CAD -> 0000F6EB 9CAF -> 0000F792 9CB0 -> 0000F6ED 9CB8 -> 0000BEA8 9CB9 -> 0000F793 9CBA -> 0000F6F5 9CBE -> 0000F794 9CC3 -> 0000C8FA 9CC4 -> 0000F6F9 9CC8 -> 0000F799 9CCA -> 0000F6FD 9CCC -> 0000F7A1 9CD1 -> 0000F79B 9CD3 -> 0000F7A6 9CD6 -> 0000B1EE 9CD7 -> 0000F7A9 9CDA -> 0000F79D 9CDC -> 0000F7AC 9CDE -> 0000C1DB 9CDF -> 0000F7AE 9CE0 -> 0000F79F 9CE2 -> 0000F7AF 9CE3 -> 0000F840 9D22 -> 0000F880 9D43 -> 0000F940 9D82 -> 0000F980 9DA3 -> 0000FA40 9DE2 -> 0000FA80 9E03 -> 0000FB40 9E1F -> 0000C4F1 9E20 -> 0000F0AF 9E21 -> 0000BCA6 9E22 -> 0000F0B0 9E23 -> 0000C3F9 9E24 -> 0000FB5C 9E25 -> 0000C5B8 9E26 -> 0000D1BB 9E27 -> 0000FB5D 9E28 -> 0000F0B1 9E2D -> 0000D1BC 9E2E -> 0000FB5E 9E2F -> 0000D1EC 9E30 -> 0000FB5F 9E31 -> 0000F0B7 9E32 -> 0000F0B6 9E33 -> 0000D4A7 9E34 -> 0000FB60 9E35 -> 0000CDD2 9E36 -> 0000F0B8 9E37 -> 0000F0BA 9E38 -> 0000F0B9 9E39 -> 0000F0BB 9E3B -> 0000FB61 9E3D -> 0000B8EB 9E3E -> 0000F0BD 9E3F -> 0000BAE8 9E40 -> 0000FB63 9E41 -> 0000F0BE 9E43 -> 0000BEE9 9E44 -> 0000F0C0 9E45 -> 0000B6EC 9E46 -> 0000F0C1 9E4A -> 0000C8B5 9E4B -> 0000F0C5 9E4D -> 0000FB64 9E4E -> 0000F0C7 9E4F -> 0000C5F4 9E50 -> 0000FB65 9E51 -> 0000F0C8 9E52 -> 0000FB66 9E55 -> 0000F0C9 9E56 -> 0000FB69 9E57 -> 0000F0CA 9E58 -> 0000F7BD 9E59 -> 0000FB6A 9E5A -> 0000F0CB 9E5D -> 0000FB6B 9E5E -> 0000F0CE 9E5F -> 0000FB6C 9E63 -> 0000F0CF 9E64 -> 0000BAD7 9E65 -> 0000FB70 9E66 -> 0000F0D0 9E6D -> 0000F0D8 9E6E -> 0000FB71 9E70 -> 0000D3A5 9E71 -> 0000F0D7 9E72 -> 0000FB73 9E73 -> 0000F0D9 9E74 -> 0000FB74 9E7E -> 0000F5BA 9E7F -> 0000C2B9 9E80 -> 0000FB7E 9E81 -> 0000FB80 9E82 -> 0000F7E4 9E83 -> 0000FB81 9E87 -> 0000F7E5 9E89 -> 0000FB85 9E8B -> 0000F7E7 9E8C -> 0000FB87 9E92 -> 0000F7E8 9E93 -> 0000C2B4 9E94 -> 0000FB8D 9E9D -> 0000F7EA 9E9E -> 0000FB96 9E9F -> 0000F7EB 9EA0 -> 0000FB97 9EA6 -> 0000C2F3 9EA7 -> 0000FB9D 9EAB -> 0000FC40 9EB4 -> 0000F4F0 9EB5 -> 0000FC49 9EB8 -> 0000F4EF 9EB9 -> 0000FC4C 9EBB -> 0000C2E9 9EBC -> 0000FC4E 9EBD -> 0000F7E1 9EBF -> 0000FC4F 9EC4 -> 0000BBC6 9EC5 -> 0000FC54 9EC9 -> 0000D9E4 9ECA -> 0000FC58 9ECD -> 0000CAF2 9ECE -> 0000C0E8 9ECF -> 0000F0A4 9ED0 -> 0000FC5B 9ED1 -> 0000BADA 9ED2 -> 0000FC5C 9ED4 -> 0000C7AD 9ED5 -> 0000FC5E 9ED8 -> 0000C4AC 9ED9 -> 0000FC61 9EDB -> 0000F7EC 9EDE -> 0000FC63 9EDF -> 0000F7F0 9EE0 -> 0000F7EF 9EE1 -> 0000FC64 9EE2 -> 0000F7F1 9EE3 -> 0000FC65 9EE5 -> 0000F7F4 9EE6 -> 0000FC67 9EE7 -> 0000F7F3 9EE8 -> 0000FC68 9EE9 -> 0000F7F2 9EEA -> 0000F7F5 9EEB -> 0000FC69 9EEF -> 0000F7F6 9EF0 -> 0000FC6D 9EF9 -> 0000EDE9 9EFA -> 0000FC76 9EFB -> 0000EDEA 9EFD -> 0000FC77 9EFE -> 0000F6BC 9EFF -> 0000FC78 9F06 -> 0000FC80 9F0B -> 0000F6BD 9F0C -> 0000FC85 9F0D -> 0000F6BE 9F0E -> 0000B6A6 9F0F -> 0000FC86 9F10 -> 0000D8BE 9F11 -> 0000FC87 9F13 -> 0000B9C4 9F14 -> 0000FC89 9F17 -> 0000D8BB 9F18 -> 0000FC8C 9F19 -> 0000DCB1 9F1A -> 0000FC8D 9F20 -> 0000CAF3 9F21 -> 0000FC93 9F22 -> 0000F7F7 9F23 -> 0000FC94 9F2C -> 0000F7F8 9F2D -> 0000FC9D 9F2F -> 0000F7F9 9F30 -> 0000FC9F 9F32 -> 0000FD40 9F37 -> 0000F7FB 9F38 -> 0000FD45 9F39 -> 0000F7FA 9F3A -> 0000FD46 9F3B -> 0000B1C7 9F3C -> 0000FD47 9F3D -> 0000F7FC 9F3F -> 0000FD48 9F44 -> 0000F7FE 9F45 -> 0000FD4D 9F50 -> 0000C6EB 9F51 -> 0000ECB4 9F52 -> 0000FD58 9F79 -> 0000FD80 9F7F -> 0000B3DD 9F80 -> 0000F6B3 9F81 -> 0000FD86 9F83 -> 0000F6B4 9F84 -> 0000C1E4 9F85 -> 0000F6B5 9F8B -> 0000C8A3 9F8C -> 0000F6BB 9F8D -> 0000FD88 9F99 -> 0000C1FA 9F9A -> 0000B9A8 9F9B -> 0000EDE8 9F9C -> 0000FD94 9F9F -> 0000B9EA 9FA0 -> 0000D9DF 9FA1 -> 0000FD97 9FA6 -> 82358F33 E000 -> 0000AAA1 E05E -> 0000ABA1 E0BC -> 0000ACA1 E11A -> 0000ADA1 E178 -> 0000AEA1 E1D6 -> 0000AFA1 E234 -> 0000F8A1 E292 -> 0000F9A1 E2F0 -> 0000FAA1 E34E -> 0000FBA1 E3AC -> 0000FCA1 E40A -> 0000FDA1 E468 -> 0000FEA1 E4C6 -> 0000A140 E505 -> 0000A180 E526 -> 0000A240 E565 -> 0000A280 E586 -> 0000A340 E5C5 -> 0000A380 E5E6 -> 0000A440 E625 -> 0000A480 E646 -> 0000A540 E685 -> 0000A580 E6A6 -> 0000A640 E6E5 -> 0000A680 E706 -> 0000A740 E745 -> 0000A780 E766 -> 0000A2AB E76C -> 8336C739 E76D -> 0000A2E4 E76E -> 0000A2EF E770 -> 0000A2FD E772 -> 0000A4F4 E77D -> 0000A5F7 E785 -> 0000A6B9 E78D -> 0000A6D9 E794 -> 0000A6EC E796 -> 0000A6F3 E797 -> 0000A6F6 E7A0 -> 0000A7C2 E7AF -> 0000A7F2 E7BC -> 0000A896 E7C7 -> 0000A8BC E7C8 -> 8336C830 E7C9 -> 0000A8C1 E7CD -> 0000A8EA E7E2 -> 0000A958 E7E3 -> 0000A95B E7E4 -> 0000A95D E7E7 -> 8336C831 E7F4 -> 0000A997 E801 -> 0000A9F0 E810 -> 0000D7FA E815 -> 8336C934 E816 -> 0000FE51 E819 -> 8336C935 E81E -> 0000FE59 E81F -> 8336CA30 E826 -> 0000FE61 E827 -> 8336CA37 E82B -> 0000FE66 E82D -> 8336CB31 E831 -> 0000FE6C E833 -> 8336CB35 E83B -> 0000FE76 E83C -> 8336CC33 E843 -> 0000FE7E E844 -> 8336CD30 E854 -> 0000FE90 E856 -> 8336CE36 E864 -> 0000FEA0 E865 -> 8336D030 F92C -> 0000FD9C F92D -> 84308535 F979 -> 0000FD9D F97A -> 84308D31 F995 -> 0000FD9E F996 -> 84308F38 F9E7 -> 0000FD9F F9E8 -> 84309739 F9F1 -> 0000FDA0 F9F2 -> 84309838 FA0C -> 0000FE40 FA10 -> 84309B34 FA11 -> 0000FE44 FA12 -> 84309B35 FA13 -> 0000FE45 FA15 -> 84309B36 FA18 -> 0000FE47 FA19 -> 84309B39 FA1F -> 0000FE48 FA22 -> 84309C35 FA23 -> 0000FE4B FA25 -> 84309C36 FA27 -> 0000FE4D FA2A -> 84309C38 FE30 -> 0000A955 FE31 -> 0000A6F2 FE32 -> 84318538 FE33 -> 0000A6F4 FE35 -> 0000A6E0 FE37 -> 0000A6F0 FE39 -> 0000A6E2 FE3B -> 0000A6EE FE3D -> 0000A6E6 FE3F -> 0000A6E4 FE41 -> 0000A6E8 FE45 -> 84318539 FE49 -> 0000A968 FE53 -> 84318633 FE54 -> 0000A972 FE58 -> 84318634 FE59 -> 0000A976 FE62 -> 0000A980 FE67 -> 84318635 FE68 -> 0000A985 FE6C -> 84318636 FF01 -> 0000A3A1 FF04 -> 0000A1E7 FF05 -> 0000A3A5 FF5E -> 0000A1AB FF5F -> 84319535 FFE0 -> 0000A1E9 FFE2 -> 0000A956 FFE3 -> 0000A3FE FFE4 -> 0000A957 FFE5 -> 0000A3A4 FFE6 -> 8431A234 FFFF -> 8431A439 ./mytool/mys/IS_KN.mys0000644000175000017500000000715007574146574014653 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-KN COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0C81 A2 -> 0C82 A3 -> 0C83 A4 -> 0C85 A5 -> 0C86 A6 -> 0C87 A7 -> 0C88 A8 -> 0C89 A9 -> 0C8A AA -> 0C8B A6 E9 -> 0C8C AE -> 0C8D AB -> 0C8E AC -> 0C8F AD -> 0C90 B2 -> 0C91 AF -> 0C92 B0 -> 0C93 B1 -> 0C94 B3 -> 0C95 B4 -> 0C96 B5 -> 0C97 B6 -> 0C98 B7 -> 0C99 B8 -> 0C9A B9 -> 0C9B BA -> 0C9C BB -> 0C9D BC -> 0C9E BD -> 0C9F BE -> 0CA0 BF -> 0CA1 C0 -> 0CA2 C1 -> 0CA3 C2 -> 0CA4 C3 -> 0CA5 C4 -> 0CA6 C5 -> 0CA7 C6 -> 0CA8 C7 -> 0CA9 C8 -> 0CAA C9 -> 0CAB CA -> 0CAC CB -> 0CAD CC -> 0CAE CD -> 0CAF CF -> 0CB0 D0 -> 0CB1 D1 -> 0CB2 D2 -> 0CB3 D3 -> 0CB4 D4 -> 0CB5 D5 -> 0CB6 D6 -> 0CB7 D7 -> 0CB8 D8 -> 0CB9 E9 -> 0CBC EA E9 -> 0CBD DA -> 0CBE DB -> 0CBF DC -> 0CC0 DD -> 0CC1 DE -> 0CC2 DF -> 0CC3 DF E9 -> 0CC4 E3 -> 0CC5 E0 -> 0CC6 E1 -> 0CC7 E2 -> 0CC8 E7 -> 0CC9 E4 -> 0CCA E5 -> 0CCB E6 -> 0CCC E8 -> 0CCD E8 E8 -> 0CCD 200C E8 E9 -> 0CCD 200D A1 E9 -> 0CD0 B3 E9 -> 0CD8 B4 E9 -> 0CD9 B5 E9 -> 0CDA BA E9 -> 0CDB BF E9 -> 0CDC C0 E9 -> 0CDD C9 E9 -> 0CDE CE -> 0CDF AA E9 -> 0CE0 A7 E9 -> 0CE1 DB E9 -> 0CE2 DC E9 -> 0CE3 EA -> 0CE4 EA EA -> 0CE5 F1 -> 0CE6 F2 -> 0CE7 F3 -> 0CE8 F4 -> 0CE9 F5 -> 0CEA F6 -> 0CEB F7 -> 0CEC F8 -> 0CED F9 -> 0CEE FA -> 0CEF COMM=end of encoding ./mytool/mys/OldItalic.mys0000644000175000017500000000340311326531434015570 0ustar henrichhenrich# YUDIT-NtoN 1.0 NAME=OldItalic.kmap COMM= Generated from http://www.unicode.org/Public/5.2.0/uc/UnicodeData.txt COMM= Experimental OldItalic.mys COMM= Please give me a better map if you have any. COMM= Generated by olditalic.pl Gaspar Sinai COMM= GNU (C) 2002-04-03 COMM= This map will produce UCS4 characters. TYPE=00000001 SECTION=Section1 ENCODE=00 KEY_WIDTH=00 VALUE_WIDTH=02 KEY_LENGTH=00 VALUE_LENGTH=00 'a -> 00010300 # OLD ITALIC LETTER A 'b -> 00010301 # OLD ITALIC LETTER BE 'c -> 00010302 # OLD ITALIC LETTER KE 'd -> 00010303 # OLD ITALIC LETTER DE 'e -> 00010304 # OLD ITALIC LETTER E 'v -> 00010305 # OLD ITALIC LETTER VE 'z -> 00010306 # OLD ITALIC LETTER ZE 'h -> 00010307 # OLD ITALIC LETTER HE 'g -> 00010308 # OLD ITALIC LETTER THE 'i -> 00010309 # OLD ITALIC LETTER I 'j -> 0001030A # OLD ITALIC LETTER KA 'l -> 0001030B # OLD ITALIC LETTER EL 'm -> 0001030C # OLD ITALIC LETTER EM 'n -> 0001030D # OLD ITALIC LETTER EN 'e's'h -> 0001030E # OLD ITALIC LETTER ESH 'o -> 0001030F # OLD ITALIC LETTER O 'p -> 00010310 # OLD ITALIC LETTER PE 's'h -> 00010311 # OLD ITALIC LETTER SHE 'q -> 00010312 # OLD ITALIC LETTER KU 'r -> 00010313 # OLD ITALIC LETTER ER 's -> 00010314 # OLD ITALIC LETTER ES 't -> 00010315 # OLD ITALIC LETTER TE 'u -> 00010316 # OLD ITALIC LETTER U 'x -> 00010317 # OLD ITALIC LETTER EKS 'p'h -> 00010318 # OLD ITALIC LETTER PHE 'k -> 00010319 # OLD ITALIC LETTER KHE 'f -> 0001031A # OLD ITALIC LETTER EF 'r's -> 0001031B # OLD ITALIC LETTER ERS 'c'h -> 0001031C # OLD ITALIC LETTER CHE 'i'i -> 0001031D # OLD ITALIC LETTER II 'u'u -> 0001031E # OLD ITALIC LETTER UU '1 -> 00010320 # OLD ITALIC NUMERAL ONE '5 -> 00010321 # OLD ITALIC NUMERAL FIVE '1'0 -> 00010322 # OLD ITALIC NUMERAL TEN '5'0 -> 00010323 # OLD ITALIC NUMERAL FIFTY ./mytool/mys/shift-jis-3.mys0000644000175000017500000111536507574146574016021 0ustar henrichhenrichNAME=shift-jis-3.mys TYPE=0 SECTION=decode ENCODE=0 KEY_WIDTH=1 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # The following are not round trip compatible, but they are # needed for font mapping. This will not cause any problems # in conversion because converters are aware of this and # they call expandYuditLigatures routine in stoolkit/SCluster.cpp. # Y+0010 RISING LETTER # Y+0011 FALLING LETTER 8685 -> 80000010 8686 -> 80000011 # Generated by ./jiscompose.pl at 2002-04-15 # Add this to mytool/mys/shift-jis-3.mys 82F5 -> 80000040 82F6 -> 80000041 82F7 -> 80000042 82F8 -> 80000043 82F9 -> 80000044 8397 -> 80000045 8398 -> 80000046 8399 -> 80000047 839A -> 80000048 839B -> 80000049 839C -> 8000004A 839D -> 8000004B 839E -> 8000004C 83F6 -> 8000004D 8663 -> 8000004E 8667 -> 8000004F 8668 -> 80000050 8669 -> 80000051 866A -> 80000052 866B -> 80000053 866C -> 80000054 866D -> 80000055 866E -> 80000056 # END OF ./jiscompose.pl 8140 -> 00003000 # 1-1-1 8141 -> 00003001 # 1-1-2 8142 -> 00003002 # 1-1-3 8143 -> 0000FF0C # 1-1-4 8144 -> 0000FF0E # 1-1-5 8145 -> 000030FB # 1-1-6 8146 -> 0000FF1A # 1-1-7 8147 -> 0000FF1B # 1-1-8 8148 -> 0000FF1F # 1-1-9 8149 -> 0000FF01 # 1-1-10 814A -> 0000309B # 1-1-11 814B -> 0000309C # 1-1-12 814C -> 000000B4 # 1-1-13 814D -> 0000FF40 # 1-1-14 814E -> 000000A8 # 1-1-15 814F -> 0000FF3E # 1-1-16 8150 -> 0000FFE3 # 1-1-17 8151 -> 0000FF3F # 1-1-18 8152 -> 000030FD # 1-1-19 8153 -> 000030FE # 1-1-20 8154 -> 0000309D # 1-1-21 8155 -> 0000309E # 1-1-22 8156 -> 00003003 # 1-1-23 8157 -> 00004EDD # 1-1-24 8158 -> 00003005 # 1-1-25 8159 -> 00003006 # 1-1-26 815A -> 00003007 # 1-1-27 815B -> 000030FC # 1-1-28 815C -> 00002015 # 1-1-29 815D -> 00002010 # 1-1-30 815E -> 0000FF0F # 1-1-31 815F -> 0000FF3C # 1-1-32 8160 -> 0000301C # 1-1-33 8161 -> 00002016 # 1-1-34 8162 -> 0000FF5C # 1-1-35 8163 -> 00002026 # 1-1-36 8164 -> 00002025 # 1-1-37 8165 -> 00002018 # 1-1-38 8166 -> 00002019 # 1-1-39 8167 -> 0000201C # 1-1-40 8168 -> 0000201D # 1-1-41 8169 -> 0000FF08 # 1-1-42 816A -> 0000FF09 # 1-1-43 816B -> 00003014 # 1-1-44 816C -> 00003015 # 1-1-45 816D -> 0000FF3B # 1-1-46 816E -> 0000FF3D # 1-1-47 816F -> 0000FF5B # 1-1-48 8170 -> 0000FF5D # 1-1-49 8171 -> 00003008 # 1-1-50 8172 -> 00003009 # 1-1-51 8173 -> 0000300A # 1-1-52 8174 -> 0000300B # 1-1-53 8175 -> 0000300C # 1-1-54 8176 -> 0000300D # 1-1-55 8177 -> 0000300E # 1-1-56 8178 -> 0000300F # 1-1-57 8179 -> 00003010 # 1-1-58 817A -> 00003011 # 1-1-59 817B -> 0000FF0B # 1-1-60 817C -> 00002212 # 1-1-61 817D -> 000000B1 # 1-1-62 817E -> 000000D7 # 1-1-63 8180 -> 000000F7 # 1-1-64 8181 -> 0000FF1D # 1-1-65 8182 -> 00002260 # 1-1-66 8183 -> 0000FF1C # 1-1-67 8184 -> 0000FF1E # 1-1-68 8185 -> 00002266 # 1-1-69 8186 -> 00002267 # 1-1-70 8187 -> 0000221E # 1-1-71 8188 -> 00002234 # 1-1-72 8189 -> 00002642 # 1-1-73 818A -> 00002640 # 1-1-74 818B -> 000000B0 # 1-1-75 818C -> 00002032 # 1-1-76 818D -> 00002033 # 1-1-77 818E -> 00002103 # 1-1-78 818F -> 0000FFE5 # 1-1-79 8190 -> 0000FF04 # 1-1-80 8191 -> 000000A2 # 1-1-81 8192 -> 000000A3 # 1-1-82 8193 -> 0000FF05 # 1-1-83 8194 -> 0000FF03 # 1-1-84 8195 -> 0000FF06 # 1-1-85 8196 -> 0000FF0A # 1-1-86 8197 -> 0000FF20 # 1-1-87 8198 -> 000000A7 # 1-1-88 8199 -> 00002606 # 1-1-89 819A -> 00002605 # 1-1-90 819B -> 000025CB # 1-1-91 819C -> 000025CF # 1-1-92 819D -> 000025CE # 1-1-93 819E -> 000025C7 # 1-1-94 819F -> 000025C6 # 1-2-1 81A0 -> 000025A1 # 1-2-2 81A1 -> 000025A0 # 1-2-3 81A2 -> 000025B3 # 1-2-4 81A3 -> 000025B2 # 1-2-5 81A4 -> 000025BD # 1-2-6 81A5 -> 000025BC # 1-2-7 81A6 -> 0000203B # 1-2-8 81A7 -> 00003012 # 1-2-9 81A8 -> 00002192 # 1-2-10 81A9 -> 00002190 # 1-2-11 81AA -> 00002191 # 1-2-12 81AB -> 00002193 # 1-2-13 81AC -> 00003013 # 1-2-14 81AD -> 0000FF07 # 1-2-15 81AE -> 0000FF02 # 1-2-16 81AF -> 0000FF0D # 1-2-17 81B0 -> 0000FF5E # 1-2-18 81B1 -> 00003033 # 1-2-19 81B2 -> 00003034 # 1-2-20 81B3 -> 00003035 # 1-2-21 81B4 -> 0000303B # 1-2-22 81B5 -> 0000303C # 1-2-23 81B6 -> 000030FF # 1-2-24 81B7 -> 0000309F # 1-2-25 81B8 -> 00002208 # 1-2-26 81B9 -> 0000220B # 1-2-27 81BA -> 00002286 # 1-2-28 81BB -> 00002287 # 1-2-29 81BC -> 00002282 # 1-2-30 81BD -> 00002283 # 1-2-31 81BE -> 0000222A # 1-2-32 81BF -> 00002229 # 1-2-33 81C0 -> 00002284 # 1-2-34 81C1 -> 00002285 # 1-2-35 81C2 -> 0000228A # 1-2-36 81C3 -> 0000228B # 1-2-37 81C4 -> 00002209 # 1-2-38 81C5 -> 00002205 # 1-2-39 81C6 -> 00002305 # 1-2-40 81C7 -> 00002306 # 1-2-41 81C8 -> 00002227 # 1-2-42 81C9 -> 00002228 # 1-2-43 81CA -> 000000AC # 1-2-44 81CB -> 000021D2 # 1-2-45 81CC -> 000021D4 # 1-2-46 81CD -> 00002200 # 1-2-47 81CE -> 00002203 # 1-2-48 81CF -> 00002295 # 1-2-49 81D0 -> 00002296 # 1-2-50 81D1 -> 00002297 # 1-2-51 81D2 -> 00002225 # 1-2-52 81D3 -> 00002226 # 1-2-53 81D4 -> 0000FF5F # 1-2-54 81D5 -> 0000FF60 # 1-2-55 81D6 -> 00003018 # 1-2-56 81D7 -> 00003019 # 1-2-57 81D8 -> 00003016 # 1-2-58 81D9 -> 00003017 # 1-2-59 81DA -> 00002220 # 1-2-60 81DB -> 000022A5 # 1-2-61 81DC -> 00002312 # 1-2-62 81DD -> 00002202 # 1-2-63 81DE -> 00002207 # 1-2-64 81DF -> 00002261 # 1-2-65 81E0 -> 00002252 # 1-2-66 81E1 -> 0000226A # 1-2-67 81E2 -> 0000226B # 1-2-68 81E3 -> 0000221A # 1-2-69 81E4 -> 0000223D # 1-2-70 81E5 -> 0000221D # 1-2-71 81E6 -> 00002235 # 1-2-72 81E7 -> 0000222B # 1-2-73 81E8 -> 0000222C # 1-2-74 81E9 -> 00002262 # 1-2-75 81EA -> 00002243 # 1-2-76 81EB -> 00002245 # 1-2-77 81EC -> 00002248 # 1-2-78 81ED -> 00002276 # 1-2-79 81EE -> 00002277 # 1-2-80 81EF -> 00002194 # 1-2-81 81F0 -> 0000212B # 1-2-82 81F1 -> 00002030 # 1-2-83 81F2 -> 0000266F # 1-2-84 81F3 -> 0000266D # 1-2-85 81F4 -> 0000266A # 1-2-86 81F5 -> 00002020 # 1-2-87 81F6 -> 00002021 # 1-2-88 81F7 -> 000000B6 # 1-2-89 81F8 -> 0000266E # 1-2-90 81F9 -> 0000266B # 1-2-91 81FA -> 0000266C # 1-2-92 81FB -> 00002669 # 1-2-93 81FC -> 000025EF # 1-2-94 8240 -> 000025B7 # 1-3-1 8241 -> 000025B6 # 1-3-2 8242 -> 000025C1 # 1-3-3 8243 -> 000025C0 # 1-3-4 8244 -> 00002197 # 1-3-5 8245 -> 00002198 # 1-3-6 8246 -> 00002196 # 1-3-7 8247 -> 00002199 # 1-3-8 8248 -> 000021C4 # 1-3-9 8249 -> 000021E8 # 1-3-10 824A -> 000021E6 # 1-3-11 824B -> 000021E7 # 1-3-12 824C -> 000021E9 # 1-3-13 824D -> 00002934 # 1-3-14 824E -> 00002935 # 1-3-15 824F -> 0000FF10 # 1-3-16 8250 -> 0000FF11 # 1-3-17 8251 -> 0000FF12 # 1-3-18 8252 -> 0000FF13 # 1-3-19 8253 -> 0000FF14 # 1-3-20 8254 -> 0000FF15 # 1-3-21 8255 -> 0000FF16 # 1-3-22 8256 -> 0000FF17 # 1-3-23 8257 -> 0000FF18 # 1-3-24 8258 -> 0000FF19 # 1-3-25 8259 -> 00002299 # 1-3-26 825A -> 000025C9 # 1-3-27 825B -> 0000303D # 1-3-28 825C -> 0000FE46 # 1-3-29 825D -> 0000FE45 # 1-3-30 825E -> 000025E6 # 1-3-31 825F -> 00002022 # 1-3-32 8260 -> 0000FF21 # 1-3-33 8261 -> 0000FF22 # 1-3-34 8262 -> 0000FF23 # 1-3-35 8263 -> 0000FF24 # 1-3-36 8264 -> 0000FF25 # 1-3-37 8265 -> 0000FF26 # 1-3-38 8266 -> 0000FF27 # 1-3-39 8267 -> 0000FF28 # 1-3-40 8268 -> 0000FF29 # 1-3-41 8269 -> 0000FF2A # 1-3-42 826A -> 0000FF2B # 1-3-43 826B -> 0000FF2C # 1-3-44 826C -> 0000FF2D # 1-3-45 826D -> 0000FF2E # 1-3-46 826E -> 0000FF2F # 1-3-47 826F -> 0000FF30 # 1-3-48 8270 -> 0000FF31 # 1-3-49 8271 -> 0000FF32 # 1-3-50 8272 -> 0000FF33 # 1-3-51 8273 -> 0000FF34 # 1-3-52 8274 -> 0000FF35 # 1-3-53 8275 -> 0000FF36 # 1-3-54 8276 -> 0000FF37 # 1-3-55 8277 -> 0000FF38 # 1-3-56 8278 -> 0000FF39 # 1-3-57 8279 -> 0000FF3A # 1-3-58 827A -> 00002213 # 1-3-59 827B -> 00002135 # 1-3-60 827C -> 0000210F # 1-3-61 827D -> 000033CB # 1-3-62 827E -> 00002113 # 1-3-63 8280 -> 00002127 # 1-3-64 8281 -> 0000FF41 # 1-3-65 8282 -> 0000FF42 # 1-3-66 8283 -> 0000FF43 # 1-3-67 8284 -> 0000FF44 # 1-3-68 8285 -> 0000FF45 # 1-3-69 8286 -> 0000FF46 # 1-3-70 8287 -> 0000FF47 # 1-3-71 8288 -> 0000FF48 # 1-3-72 8289 -> 0000FF49 # 1-3-73 828A -> 0000FF4A # 1-3-74 828B -> 0000FF4B # 1-3-75 828C -> 0000FF4C # 1-3-76 828D -> 0000FF4D # 1-3-77 828E -> 0000FF4E # 1-3-78 828F -> 0000FF4F # 1-3-79 8290 -> 0000FF50 # 1-3-80 8291 -> 0000FF51 # 1-3-81 8292 -> 0000FF52 # 1-3-82 8293 -> 0000FF53 # 1-3-83 8294 -> 0000FF54 # 1-3-84 8295 -> 0000FF55 # 1-3-85 8296 -> 0000FF56 # 1-3-86 8297 -> 0000FF57 # 1-3-87 8298 -> 0000FF58 # 1-3-88 8299 -> 0000FF59 # 1-3-89 829A -> 0000FF5A # 1-3-90 829B -> 000030A0 # 1-3-91 829C -> 00002013 # 1-3-92 829D -> 000029FA # 1-3-93 829E -> 000029FB # 1-3-94 829F -> 00003041 # 1-4-1 82A0 -> 00003042 # 1-4-2 82A1 -> 00003043 # 1-4-3 82A2 -> 00003044 # 1-4-4 82A3 -> 00003045 # 1-4-5 82A4 -> 00003046 # 1-4-6 82A5 -> 00003047 # 1-4-7 82A6 -> 00003048 # 1-4-8 82A7 -> 00003049 # 1-4-9 82A8 -> 0000304A # 1-4-10 82A9 -> 0000304B # 1-4-11 82AA -> 0000304C # 1-4-12 82AB -> 0000304D # 1-4-13 82AC -> 0000304E # 1-4-14 82AD -> 0000304F # 1-4-15 82AE -> 00003050 # 1-4-16 82AF -> 00003051 # 1-4-17 82B0 -> 00003052 # 1-4-18 82B1 -> 00003053 # 1-4-19 82B2 -> 00003054 # 1-4-20 82B3 -> 00003055 # 1-4-21 82B4 -> 00003056 # 1-4-22 82B5 -> 00003057 # 1-4-23 82B6 -> 00003058 # 1-4-24 82B7 -> 00003059 # 1-4-25 82B8 -> 0000305A # 1-4-26 82B9 -> 0000305B # 1-4-27 82BA -> 0000305C # 1-4-28 82BB -> 0000305D # 1-4-29 82BC -> 0000305E # 1-4-30 82BD -> 0000305F # 1-4-31 82BE -> 00003060 # 1-4-32 82BF -> 00003061 # 1-4-33 82C0 -> 00003062 # 1-4-34 82C1 -> 00003063 # 1-4-35 82C2 -> 00003064 # 1-4-36 82C3 -> 00003065 # 1-4-37 82C4 -> 00003066 # 1-4-38 82C5 -> 00003067 # 1-4-39 82C6 -> 00003068 # 1-4-40 82C7 -> 00003069 # 1-4-41 82C8 -> 0000306A # 1-4-42 82C9 -> 0000306B # 1-4-43 82CA -> 0000306C # 1-4-44 82CB -> 0000306D # 1-4-45 82CC -> 0000306E # 1-4-46 82CD -> 0000306F # 1-4-47 82CE -> 00003070 # 1-4-48 82CF -> 00003071 # 1-4-49 82D0 -> 00003072 # 1-4-50 82D1 -> 00003073 # 1-4-51 82D2 -> 00003074 # 1-4-52 82D3 -> 00003075 # 1-4-53 82D4 -> 00003076 # 1-4-54 82D5 -> 00003077 # 1-4-55 82D6 -> 00003078 # 1-4-56 82D7 -> 00003079 # 1-4-57 82D8 -> 0000307A # 1-4-58 82D9 -> 0000307B # 1-4-59 82DA -> 0000307C # 1-4-60 82DB -> 0000307D # 1-4-61 82DC -> 0000307E # 1-4-62 82DD -> 0000307F # 1-4-63 82DE -> 00003080 # 1-4-64 82DF -> 00003081 # 1-4-65 82E0 -> 00003082 # 1-4-66 82E1 -> 00003083 # 1-4-67 82E2 -> 00003084 # 1-4-68 82E3 -> 00003085 # 1-4-69 82E4 -> 00003086 # 1-4-70 82E5 -> 00003087 # 1-4-71 82E6 -> 00003088 # 1-4-72 82E7 -> 00003089 # 1-4-73 82E8 -> 0000308A # 1-4-74 82E9 -> 0000308B # 1-4-75 82EA -> 0000308C # 1-4-76 82EB -> 0000308D # 1-4-77 82EC -> 0000308E # 1-4-78 82ED -> 0000308F # 1-4-79 82EE -> 00003090 # 1-4-80 82EF -> 00003091 # 1-4-81 82F0 -> 00003092 # 1-4-82 82F1 -> 00003093 # 1-4-83 82F2 -> 00003094 # 1-4-84 82F3 -> 00003095 # 1-4-85 82F4 -> 00003096 # 1-4-86 82F5 -> 0000304B 0000309A # 1-4-87 82F6 -> 0000304D 0000309A # 1-4-88 82F7 -> 0000304F 0000309A # 1-4-89 82F8 -> 00003051 0000309A # 1-4-90 82F9 -> 00003053 0000309A # 1-4-91 8340 -> 000030A1 # 1-5-1 8341 -> 000030A2 # 1-5-2 8342 -> 000030A3 # 1-5-3 8343 -> 000030A4 # 1-5-4 8344 -> 000030A5 # 1-5-5 8345 -> 000030A6 # 1-5-6 8346 -> 000030A7 # 1-5-7 8347 -> 000030A8 # 1-5-8 8348 -> 000030A9 # 1-5-9 8349 -> 000030AA # 1-5-10 834A -> 000030AB # 1-5-11 834B -> 000030AC # 1-5-12 834C -> 000030AD # 1-5-13 834D -> 000030AE # 1-5-14 834E -> 000030AF # 1-5-15 834F -> 000030B0 # 1-5-16 8350 -> 000030B1 # 1-5-17 8351 -> 000030B2 # 1-5-18 8352 -> 000030B3 # 1-5-19 8353 -> 000030B4 # 1-5-20 8354 -> 000030B5 # 1-5-21 8355 -> 000030B6 # 1-5-22 8356 -> 000030B7 # 1-5-23 8357 -> 000030B8 # 1-5-24 8358 -> 000030B9 # 1-5-25 8359 -> 000030BA # 1-5-26 835A -> 000030BB # 1-5-27 835B -> 000030BC # 1-5-28 835C -> 000030BD # 1-5-29 835D -> 000030BE # 1-5-30 835E -> 000030BF # 1-5-31 835F -> 000030C0 # 1-5-32 8360 -> 000030C1 # 1-5-33 8361 -> 000030C2 # 1-5-34 8362 -> 000030C3 # 1-5-35 8363 -> 000030C4 # 1-5-36 8364 -> 000030C5 # 1-5-37 8365 -> 000030C6 # 1-5-38 8366 -> 000030C7 # 1-5-39 8367 -> 000030C8 # 1-5-40 8368 -> 000030C9 # 1-5-41 8369 -> 000030CA # 1-5-42 836A -> 000030CB # 1-5-43 836B -> 000030CC # 1-5-44 836C -> 000030CD # 1-5-45 836D -> 000030CE # 1-5-46 836E -> 000030CF # 1-5-47 836F -> 000030D0 # 1-5-48 8370 -> 000030D1 # 1-5-49 8371 -> 000030D2 # 1-5-50 8372 -> 000030D3 # 1-5-51 8373 -> 000030D4 # 1-5-52 8374 -> 000030D5 # 1-5-53 8375 -> 000030D6 # 1-5-54 8376 -> 000030D7 # 1-5-55 8377 -> 000030D8 # 1-5-56 8378 -> 000030D9 # 1-5-57 8379 -> 000030DA # 1-5-58 837A -> 000030DB # 1-5-59 837B -> 000030DC # 1-5-60 837C -> 000030DD # 1-5-61 837D -> 000030DE # 1-5-62 837E -> 000030DF # 1-5-63 8380 -> 000030E0 # 1-5-64 8381 -> 000030E1 # 1-5-65 8382 -> 000030E2 # 1-5-66 8383 -> 000030E3 # 1-5-67 8384 -> 000030E4 # 1-5-68 8385 -> 000030E5 # 1-5-69 8386 -> 000030E6 # 1-5-70 8387 -> 000030E7 # 1-5-71 8388 -> 000030E8 # 1-5-72 8389 -> 000030E9 # 1-5-73 838A -> 000030EA # 1-5-74 838B -> 000030EB # 1-5-75 838C -> 000030EC # 1-5-76 838D -> 000030ED # 1-5-77 838E -> 000030EE # 1-5-78 838F -> 000030EF # 1-5-79 8390 -> 000030F0 # 1-5-80 8391 -> 000030F1 # 1-5-81 8392 -> 000030F2 # 1-5-82 8393 -> 000030F3 # 1-5-83 8394 -> 000030F4 # 1-5-84 8395 -> 000030F5 # 1-5-85 8396 -> 000030F6 # 1-5-86 8397 -> 000030AB 0000309A # 1-5-87 8398 -> 000030AD 0000309A # 1-5-88 8399 -> 000030AF 0000309A # 1-5-89 839A -> 000030B1 0000309A # 1-5-90 839B -> 000030B3 0000309A # 1-5-91 839C -> 000030BB 0000309A # 1-5-92 839D -> 000030C4 0000309A # 1-5-93 839E -> 000030C8 0000309A # 1-5-94 839F -> 00000391 # 1-6-1 83A0 -> 00000392 # 1-6-2 83A1 -> 00000393 # 1-6-3 83A2 -> 00000394 # 1-6-4 83A3 -> 00000395 # 1-6-5 83A4 -> 00000396 # 1-6-6 83A5 -> 00000397 # 1-6-7 83A6 -> 00000398 # 1-6-8 83A7 -> 00000399 # 1-6-9 83A8 -> 0000039A # 1-6-10 83A9 -> 0000039B # 1-6-11 83AA -> 0000039C # 1-6-12 83AB -> 0000039D # 1-6-13 83AC -> 0000039E # 1-6-14 83AD -> 0000039F # 1-6-15 83AE -> 000003A0 # 1-6-16 83AF -> 000003A1 # 1-6-17 83B0 -> 000003A3 # 1-6-18 83B1 -> 000003A4 # 1-6-19 83B2 -> 000003A5 # 1-6-20 83B3 -> 000003A6 # 1-6-21 83B4 -> 000003A7 # 1-6-22 83B5 -> 000003A8 # 1-6-23 83B6 -> 000003A9 # 1-6-24 83B7 -> 00002664 # 1-6-25 83B8 -> 00002660 # 1-6-26 83B9 -> 00002662 # 1-6-27 83BA -> 00002666 # 1-6-28 83BB -> 00002661 # 1-6-29 83BC -> 00002665 # 1-6-30 83BD -> 00002667 # 1-6-31 83BE -> 00002663 # 1-6-32 83BF -> 000003B1 # 1-6-33 83C0 -> 000003B2 # 1-6-34 83C1 -> 000003B3 # 1-6-35 83C2 -> 000003B4 # 1-6-36 83C3 -> 000003B5 # 1-6-37 83C4 -> 000003B6 # 1-6-38 83C5 -> 000003B7 # 1-6-39 83C6 -> 000003B8 # 1-6-40 83C7 -> 000003B9 # 1-6-41 83C8 -> 000003BA # 1-6-42 83C9 -> 000003BB # 1-6-43 83CA -> 000003BC # 1-6-44 83CB -> 000003BD # 1-6-45 83CC -> 000003BE # 1-6-46 83CD -> 000003BF # 1-6-47 83CE -> 000003C0 # 1-6-48 83CF -> 000003C1 # 1-6-49 83D0 -> 000003C3 # 1-6-50 83D1 -> 000003C4 # 1-6-51 83D2 -> 000003C5 # 1-6-52 83D3 -> 000003C6 # 1-6-53 83D4 -> 000003C7 # 1-6-54 83D5 -> 000003C8 # 1-6-55 83D6 -> 000003C9 # 1-6-56 83D7 -> 000003C2 # 1-6-57 83D8 -> 000024F5 # 1-6-58 83D9 -> 000024F6 # 1-6-59 83DA -> 000024F7 # 1-6-60 83DB -> 000024F8 # 1-6-61 83DC -> 000024F9 # 1-6-62 83DD -> 000024FA # 1-6-63 83DE -> 000024FB # 1-6-64 83DF -> 000024FC # 1-6-65 83E0 -> 000024FD # 1-6-66 83E1 -> 000024FE # 1-6-67 83E2 -> 00002616 # 1-6-68 83E3 -> 00002617 # 1-6-69 83E4 -> 00003020 # 1-6-70 83E5 -> 0000260E # 1-6-71 83E6 -> 00002600 # 1-6-72 83E7 -> 00002601 # 1-6-73 83E8 -> 00002602 # 1-6-74 83E9 -> 00002603 # 1-6-75 83EA -> 00002668 # 1-6-76 83EB -> 000025B1 # 1-6-77 83EC -> 000031F0 # 1-6-78 83ED -> 000031F1 # 1-6-79 83EE -> 000031F2 # 1-6-80 83EF -> 000031F3 # 1-6-81 83F0 -> 000031F4 # 1-6-82 83F1 -> 000031F5 # 1-6-83 83F2 -> 000031F6 # 1-6-84 83F3 -> 000031F7 # 1-6-85 83F4 -> 000031F8 # 1-6-86 83F5 -> 000031F9 # 1-6-87 83F6 -> 000031F7 0000309A # 1-6-88 83F7 -> 000031FA # 1-6-89 83F8 -> 000031FB # 1-6-90 83F9 -> 000031FC # 1-6-91 83FA -> 000031FD # 1-6-92 83FB -> 000031FE # 1-6-93 83FC -> 000031FF # 1-6-94 8440 -> 00000410 # 1-7-1 8441 -> 00000411 # 1-7-2 8442 -> 00000412 # 1-7-3 8443 -> 00000413 # 1-7-4 8444 -> 00000414 # 1-7-5 8445 -> 00000415 # 1-7-6 8446 -> 00000401 # 1-7-7 8447 -> 00000416 # 1-7-8 8448 -> 00000417 # 1-7-9 8449 -> 00000418 # 1-7-10 844A -> 00000419 # 1-7-11 844B -> 0000041A # 1-7-12 844C -> 0000041B # 1-7-13 844D -> 0000041C # 1-7-14 844E -> 0000041D # 1-7-15 844F -> 0000041E # 1-7-16 8450 -> 0000041F # 1-7-17 8451 -> 00000420 # 1-7-18 8452 -> 00000421 # 1-7-19 8453 -> 00000422 # 1-7-20 8454 -> 00000423 # 1-7-21 8455 -> 00000424 # 1-7-22 8456 -> 00000425 # 1-7-23 8457 -> 00000426 # 1-7-24 8458 -> 00000427 # 1-7-25 8459 -> 00000428 # 1-7-26 845A -> 00000429 # 1-7-27 845B -> 0000042A # 1-7-28 845C -> 0000042B # 1-7-29 845D -> 0000042C # 1-7-30 845E -> 0000042D # 1-7-31 845F -> 0000042E # 1-7-32 8460 -> 0000042F # 1-7-33 8461 -> 000023BE # 1-7-34 8462 -> 000023BF # 1-7-35 8463 -> 000023C0 # 1-7-36 8464 -> 000023C1 # 1-7-37 8465 -> 000023C2 # 1-7-38 8466 -> 000023C3 # 1-7-39 8467 -> 000023C4 # 1-7-40 8468 -> 000023C5 # 1-7-41 8469 -> 000023C6 # 1-7-42 846A -> 000023C7 # 1-7-43 846B -> 000023C8 # 1-7-44 846C -> 000023C9 # 1-7-45 846D -> 000023CA # 1-7-46 846E -> 000023CB # 1-7-47 846F -> 000023CC # 1-7-48 8470 -> 00000430 # 1-7-49 8471 -> 00000431 # 1-7-50 8472 -> 00000432 # 1-7-51 8473 -> 00000433 # 1-7-52 8474 -> 00000434 # 1-7-53 8475 -> 00000435 # 1-7-54 8476 -> 00000451 # 1-7-55 8477 -> 00000436 # 1-7-56 8478 -> 00000437 # 1-7-57 8479 -> 00000438 # 1-7-58 847A -> 00000439 # 1-7-59 847B -> 0000043A # 1-7-60 847C -> 0000043B # 1-7-61 847D -> 0000043C # 1-7-62 847E -> 0000043D # 1-7-63 8480 -> 0000043E # 1-7-64 8481 -> 0000043F # 1-7-65 8482 -> 00000440 # 1-7-66 8483 -> 00000441 # 1-7-67 8484 -> 00000442 # 1-7-68 8485 -> 00000443 # 1-7-69 8486 -> 00000444 # 1-7-70 8487 -> 00000445 # 1-7-71 8488 -> 00000446 # 1-7-72 8489 -> 00000447 # 1-7-73 848A -> 00000448 # 1-7-74 848B -> 00000449 # 1-7-75 848C -> 0000044A # 1-7-76 848D -> 0000044B # 1-7-77 848E -> 0000044C # 1-7-78 848F -> 0000044D # 1-7-79 8490 -> 0000044E # 1-7-80 8491 -> 0000044F # 1-7-81 8492 -> 000030F7 # 1-7-82 8493 -> 000030F8 # 1-7-83 8494 -> 000030F9 # 1-7-84 8495 -> 000030FA # 1-7-85 8496 -> 000022DA # 1-7-86 8497 -> 000022DB # 1-7-87 8498 -> 00002153 # 1-7-88 8499 -> 00002154 # 1-7-89 849A -> 00002155 # 1-7-90 849B -> 00002713 # 1-7-91 849C -> 00002318 # 1-7-92 849D -> 00002423 # 1-7-93 849E -> 000023CE # 1-7-94 849F -> 00002500 # 1-8-1 84A0 -> 00002502 # 1-8-2 84A1 -> 0000250C # 1-8-3 84A2 -> 00002510 # 1-8-4 84A3 -> 00002518 # 1-8-5 84A4 -> 00002514 # 1-8-6 84A5 -> 0000251C # 1-8-7 84A6 -> 0000252C # 1-8-8 84A7 -> 00002524 # 1-8-9 84A8 -> 00002534 # 1-8-10 84A9 -> 0000253C # 1-8-11 84AA -> 00002501 # 1-8-12 84AB -> 00002503 # 1-8-13 84AC -> 0000250F # 1-8-14 84AD -> 00002513 # 1-8-15 84AE -> 0000251B # 1-8-16 84AF -> 00002517 # 1-8-17 84B0 -> 00002523 # 1-8-18 84B1 -> 00002533 # 1-8-19 84B2 -> 0000252B # 1-8-20 84B3 -> 0000253B # 1-8-21 84B4 -> 0000254B # 1-8-22 84B5 -> 00002520 # 1-8-23 84B6 -> 0000252F # 1-8-24 84B7 -> 00002528 # 1-8-25 84B8 -> 00002537 # 1-8-26 84B9 -> 0000253F # 1-8-27 84BA -> 0000251D # 1-8-28 84BB -> 00002530 # 1-8-29 84BC -> 00002525 # 1-8-30 84BD -> 00002538 # 1-8-31 84BE -> 00002542 # 1-8-32 84BF -> 00003251 # 1-8-33 84C0 -> 00003252 # 1-8-34 84C1 -> 00003253 # 1-8-35 84C2 -> 00003254 # 1-8-36 84C3 -> 00003255 # 1-8-37 84C4 -> 00003256 # 1-8-38 84C5 -> 00003257 # 1-8-39 84C6 -> 00003258 # 1-8-40 84C7 -> 00003259 # 1-8-41 84C8 -> 0000325A # 1-8-42 84C9 -> 0000325B # 1-8-43 84CA -> 0000325C # 1-8-44 84CB -> 0000325D # 1-8-45 84CC -> 0000325E # 1-8-46 84CD -> 0000325F # 1-8-47 84CE -> 000032B1 # 1-8-48 84CF -> 000032B2 # 1-8-49 84D0 -> 000032B3 # 1-8-50 84D1 -> 000032B4 # 1-8-51 84D2 -> 000032B5 # 1-8-52 84D3 -> 000032B6 # 1-8-53 84D4 -> 000032B7 # 1-8-54 84D5 -> 000032B8 # 1-8-55 84D6 -> 000032B9 # 1-8-56 84D7 -> 000032BA # 1-8-57 84D8 -> 000032BB # 1-8-58 84D9 -> 000032BC # 1-8-59 84DA -> 000032BD # 1-8-60 84DB -> 000032BE # 1-8-61 84DC -> 000032BF # 1-8-62 84E5 -> 000025D0 # 1-8-71 84E6 -> 000025D1 # 1-8-72 84E7 -> 000025D2 # 1-8-73 84E8 -> 000025D3 # 1-8-74 84E9 -> 0000203C # 1-8-75 84EA -> 00002047 # 1-8-76 84EB -> 00002048 # 1-8-77 84EC -> 00002049 # 1-8-78 84ED -> 000001CD # 1-8-79 84EE -> 000001CE # 1-8-80 84EF -> 000001D0 # 1-8-81 84F0 -> 00001E3E # 1-8-82 84F1 -> 00001E3F # 1-8-83 84F2 -> 000001F8 # 1-8-84 84F3 -> 000001F9 # 1-8-85 84F4 -> 000001D1 # 1-8-86 84F5 -> 000001D2 # 1-8-87 84F6 -> 000001D4 # 1-8-88 84F7 -> 000001D6 # 1-8-89 84F8 -> 000001D8 # 1-8-90 84F9 -> 000001DA # 1-8-91 84FA -> 000001DC # 1-8-92 8540 -> 000020AC # 1-9-1 8541 -> 000000A0 # 1-9-2 8542 -> 000000A1 # 1-9-3 8543 -> 000000A4 # 1-9-4 8544 -> 000000A6 # 1-9-5 8545 -> 000000A9 # 1-9-6 8546 -> 000000AA # 1-9-7 8547 -> 000000AB # 1-9-8 8548 -> 000000AD # 1-9-9 8549 -> 000000AE # 1-9-10 854A -> 000000AF # 1-9-11 854B -> 000000B2 # 1-9-12 854C -> 000000B3 # 1-9-13 854D -> 000000B7 # 1-9-14 854E -> 000000B8 # 1-9-15 854F -> 000000B9 # 1-9-16 8550 -> 000000BA # 1-9-17 8551 -> 000000BB # 1-9-18 8552 -> 000000BC # 1-9-19 8553 -> 000000BD # 1-9-20 8554 -> 000000BE # 1-9-21 8555 -> 000000BF # 1-9-22 8556 -> 000000C0 # 1-9-23 8557 -> 000000C1 # 1-9-24 8558 -> 000000C2 # 1-9-25 8559 -> 000000C3 # 1-9-26 855A -> 000000C4 # 1-9-27 855B -> 000000C5 # 1-9-28 855C -> 000000C6 # 1-9-29 855D -> 000000C7 # 1-9-30 855E -> 000000C8 # 1-9-31 855F -> 000000C9 # 1-9-32 8560 -> 000000CA # 1-9-33 8561 -> 000000CB # 1-9-34 8562 -> 000000CC # 1-9-35 8563 -> 000000CD # 1-9-36 8564 -> 000000CE # 1-9-37 8565 -> 000000CF # 1-9-38 8566 -> 000000D0 # 1-9-39 8567 -> 000000D1 # 1-9-40 8568 -> 000000D2 # 1-9-41 8569 -> 000000D3 # 1-9-42 856A -> 000000D4 # 1-9-43 856B -> 000000D5 # 1-9-44 856C -> 000000D6 # 1-9-45 856D -> 000000D8 # 1-9-46 856E -> 000000D9 # 1-9-47 856F -> 000000DA # 1-9-48 8570 -> 000000DB # 1-9-49 8571 -> 000000DC # 1-9-50 8572 -> 000000DD # 1-9-51 8573 -> 000000DE # 1-9-52 8574 -> 000000DF # 1-9-53 8575 -> 000000E0 # 1-9-54 8576 -> 000000E1 # 1-9-55 8577 -> 000000E2 # 1-9-56 8578 -> 000000E3 # 1-9-57 8579 -> 000000E4 # 1-9-58 857A -> 000000E5 # 1-9-59 857B -> 000000E6 # 1-9-60 857C -> 000000E7 # 1-9-61 857D -> 000000E8 # 1-9-62 857E -> 000000E9 # 1-9-63 8580 -> 000000EA # 1-9-64 8581 -> 000000EB # 1-9-65 8582 -> 000000EC # 1-9-66 8583 -> 000000ED # 1-9-67 8584 -> 000000EE # 1-9-68 8585 -> 000000EF # 1-9-69 8586 -> 000000F0 # 1-9-70 8587 -> 000000F1 # 1-9-71 8588 -> 000000F2 # 1-9-72 8589 -> 000000F3 # 1-9-73 858A -> 000000F4 # 1-9-74 858B -> 000000F5 # 1-9-75 858C -> 000000F6 # 1-9-76 858D -> 000000F8 # 1-9-77 858E -> 000000F9 # 1-9-78 858F -> 000000FA # 1-9-79 8590 -> 000000FB # 1-9-80 8591 -> 000000FC # 1-9-81 8592 -> 000000FD # 1-9-82 8593 -> 000000FE # 1-9-83 8594 -> 000000FF # 1-9-84 8595 -> 00000100 # 1-9-85 8596 -> 0000012A # 1-9-86 8597 -> 0000016A # 1-9-87 8598 -> 00000112 # 1-9-88 8599 -> 0000014C # 1-9-89 859A -> 00000101 # 1-9-90 859B -> 0000012B # 1-9-91 859C -> 0000016B # 1-9-92 859D -> 00000113 # 1-9-93 859E -> 0000014D # 1-9-94 859F -> 00000104 # 1-10-1 85A0 -> 000002D8 # 1-10-2 85A1 -> 00000141 # 1-10-3 85A2 -> 0000013D # 1-10-4 85A3 -> 0000015A # 1-10-5 85A4 -> 00000160 # 1-10-6 85A5 -> 0000015E # 1-10-7 85A6 -> 00000164 # 1-10-8 85A7 -> 00000179 # 1-10-9 85A8 -> 0000017D # 1-10-10 85A9 -> 0000017B # 1-10-11 85AA -> 00000105 # 1-10-12 85AB -> 000002DB # 1-10-13 85AC -> 00000142 # 1-10-14 85AD -> 0000013E # 1-10-15 85AE -> 0000015B # 1-10-16 85AF -> 000002C7 # 1-10-17 85B0 -> 00000161 # 1-10-18 85B1 -> 0000015F # 1-10-19 85B2 -> 00000165 # 1-10-20 85B3 -> 0000017A # 1-10-21 85B4 -> 000002DD # 1-10-22 85B5 -> 0000017E # 1-10-23 85B6 -> 0000017C # 1-10-24 85B7 -> 00000154 # 1-10-25 85B8 -> 00000102 # 1-10-26 85B9 -> 00000139 # 1-10-27 85BA -> 00000106 # 1-10-28 85BB -> 0000010C # 1-10-29 85BC -> 00000118 # 1-10-30 85BD -> 0000011A # 1-10-31 85BE -> 0000010E # 1-10-32 85BF -> 00000143 # 1-10-33 85C0 -> 00000147 # 1-10-34 85C1 -> 00000150 # 1-10-35 85C2 -> 00000158 # 1-10-36 85C3 -> 0000016E # 1-10-37 85C4 -> 00000170 # 1-10-38 85C5 -> 00000162 # 1-10-39 85C6 -> 00000155 # 1-10-40 85C7 -> 00000103 # 1-10-41 85C8 -> 0000013A # 1-10-42 85C9 -> 00000107 # 1-10-43 85CA -> 0000010D # 1-10-44 85CB -> 00000119 # 1-10-45 85CC -> 0000011B # 1-10-46 85CD -> 0000010F # 1-10-47 85CE -> 00000111 # 1-10-48 85CF -> 00000144 # 1-10-49 85D0 -> 00000148 # 1-10-50 85D1 -> 00000151 # 1-10-51 85D2 -> 00000159 # 1-10-52 85D3 -> 0000016F # 1-10-53 85D4 -> 00000171 # 1-10-54 85D5 -> 00000163 # 1-10-55 85D6 -> 000002D9 # 1-10-56 85D7 -> 00000108 # 1-10-57 85D8 -> 0000011C # 1-10-58 85D9 -> 00000124 # 1-10-59 85DA -> 00000134 # 1-10-60 85DB -> 0000015C # 1-10-61 85DC -> 0000016C # 1-10-62 85DD -> 00000109 # 1-10-63 85DE -> 0000011D # 1-10-64 85DF -> 00000125 # 1-10-65 85E0 -> 00000135 # 1-10-66 85E1 -> 0000015D # 1-10-67 85E2 -> 0000016D # 1-10-68 85E3 -> 00000271 # 1-10-69 85E4 -> 0000028B # 1-10-70 85E5 -> 0000027E # 1-10-71 85E6 -> 00000283 # 1-10-72 85E7 -> 00000292 # 1-10-73 85E8 -> 0000026C # 1-10-74 85E9 -> 0000026E # 1-10-75 85EA -> 00000279 # 1-10-76 85EB -> 00000288 # 1-10-77 85EC -> 00000256 # 1-10-78 85ED -> 00000273 # 1-10-79 85EE -> 0000027D # 1-10-80 85EF -> 00000282 # 1-10-81 85F0 -> 00000290 # 1-10-82 85F1 -> 0000027B # 1-10-83 85F2 -> 0000026D # 1-10-84 85F3 -> 0000025F # 1-10-85 85F4 -> 00000272 # 1-10-86 85F5 -> 0000029D # 1-10-87 85F6 -> 0000028E # 1-10-88 85F7 -> 00000261 # 1-10-89 85F8 -> 0000014B # 1-10-90 85F9 -> 00000270 # 1-10-91 85FA -> 00000281 # 1-10-92 85FB -> 00000127 # 1-10-93 85FC -> 00000295 # 1-10-94 8640 -> 00000294 # 1-11-1 8641 -> 00000266 # 1-11-2 8642 -> 00000298 # 1-11-3 8643 -> 000001C2 # 1-11-4 8644 -> 00000253 # 1-11-5 8645 -> 00000257 # 1-11-6 8646 -> 00000284 # 1-11-7 8647 -> 00000260 # 1-11-8 8648 -> 00000193 # 1-11-9 8649 -> 00000153 # 1-11-10 864A -> 00000152 # 1-11-11 864B -> 00000268 # 1-11-12 864C -> 00000289 # 1-11-13 864D -> 00000258 # 1-11-14 864E -> 00000275 # 1-11-15 864F -> 00000259 # 1-11-16 8650 -> 0000025C # 1-11-17 8651 -> 0000025E # 1-11-18 8652 -> 00000250 # 1-11-19 8653 -> 0000026F # 1-11-20 8654 -> 0000028A # 1-11-21 8655 -> 00000264 # 1-11-22 8656 -> 0000028C # 1-11-23 8657 -> 00000254 # 1-11-24 8658 -> 00000251 # 1-11-25 8659 -> 00000252 # 1-11-26 865A -> 0000028D # 1-11-27 865B -> 00000265 # 1-11-28 865C -> 000002A2 # 1-11-29 865D -> 000002A1 # 1-11-30 865E -> 00000255 # 1-11-31 865F -> 00000291 # 1-11-32 8660 -> 0000027A # 1-11-33 8661 -> 00000267 # 1-11-34 8662 -> 0000025A # 1-11-35 8663 -> 000000E6 00000300 # 1-11-36 8664 -> 000001FD # 1-11-37 8665 -> 00001F70 # 1-11-38 8666 -> 00001F71 # 1-11-39 8667 -> 00000254 00000300 # 1-11-40 8668 -> 00000254 00000301 # 1-11-41 8669 -> 0000028C 00000300 # 1-11-42 866A -> 0000028C 00000301 # 1-11-43 866B -> 00000259 00000300 # 1-11-44 866C -> 00000259 00000301 # 1-11-45 866D -> 0000025A 00000300 # 1-11-46 866E -> 0000025A 00000301 # 1-11-47 866F -> 00001F72 # 1-11-48 8670 -> 00001F73 # 1-11-49 8671 -> 00000361 # 1-11-50 8672 -> 000002C8 # 1-11-51 8673 -> 000002CC # 1-11-52 8674 -> 000002D0 # 1-11-53 8675 -> 000002D1 # 1-11-54 8676 -> 00000306 # 1-11-55 8677 -> 0000203F # 1-11-56 8678 -> 0000030B # 1-11-57 8679 -> 00000301 # 1-11-58 867A -> 00000304 # 1-11-59 867B -> 00000300 # 1-11-60 867C -> 0000030F # 1-11-61 867D -> 0000030C # 1-11-62 867E -> 00000302 # 1-11-63 8680 -> 000002E5 # 1-11-64 8681 -> 000002E6 # 1-11-65 8682 -> 000002E7 # 1-11-66 8683 -> 000002E8 # 1-11-67 8684 -> 000002E9 # 1-11-68 8685 -> 000002E9 000002E5 # RISING 1-11-69 8686 -> 000002E5 000002E9 # FALLING 1-11-70 8687 -> 00000325 # 1-11-71 8688 -> 0000032C # 1-11-72 8689 -> 00000339 # 1-11-73 868A -> 0000031C # 1-11-74 868B -> 0000031F # 1-11-75 868C -> 00000320 # 1-11-76 868D -> 00000308 # 1-11-77 868E -> 0000033D # 1-11-78 868F -> 00000329 # 1-11-79 8690 -> 0000032F # 1-11-80 8691 -> 000002DE # 1-11-81 8692 -> 00000324 # 1-11-82 8693 -> 00000330 # 1-11-83 8694 -> 0000033C # 1-11-84 8695 -> 00000334 # 1-11-85 8696 -> 0000031D # 1-11-86 8697 -> 0000031E # 1-11-87 8698 -> 00000318 # 1-11-88 8699 -> 00000319 # 1-11-89 869A -> 0000032A # 1-11-90 869B -> 0000033A # 1-11-91 869C -> 0000033B # 1-11-92 869D -> 00000303 # 1-11-93 869E -> 0000031A # 1-11-94 869F -> 00002776 # 1-12-1 86A0 -> 00002777 # 1-12-2 86A1 -> 00002778 # 1-12-3 86A2 -> 00002779 # 1-12-4 86A3 -> 0000277A # 1-12-5 86A4 -> 0000277B # 1-12-6 86A5 -> 0000277C # 1-12-7 86A6 -> 0000277D # 1-12-8 86A7 -> 0000277E # 1-12-9 86A8 -> 0000277F # 1-12-10 86A9 -> 000024EB # 1-12-11 86AA -> 000024EC # 1-12-12 86AB -> 000024ED # 1-12-13 86AC -> 000024EE # 1-12-14 86AD -> 000024EF # 1-12-15 86AE -> 000024F0 # 1-12-16 86AF -> 000024F1 # 1-12-17 86B0 -> 000024F2 # 1-12-18 86B1 -> 000024F3 # 1-12-19 86B2 -> 000024F4 # 1-12-20 86B3 -> 00002170 # 1-12-21 86B4 -> 00002171 # 1-12-22 86B5 -> 00002172 # 1-12-23 86B6 -> 00002173 # 1-12-24 86B7 -> 00002174 # 1-12-25 86B8 -> 00002175 # 1-12-26 86B9 -> 00002176 # 1-12-27 86BA -> 00002177 # 1-12-28 86BB -> 00002178 # 1-12-29 86BC -> 00002179 # 1-12-30 86BD -> 0000217A # 1-12-31 86BE -> 0000217B # 1-12-32 86BF -> 000024D0 # 1-12-33 86C0 -> 000024D1 # 1-12-34 86C1 -> 000024D2 # 1-12-35 86C2 -> 000024D3 # 1-12-36 86C3 -> 000024D4 # 1-12-37 86C4 -> 000024D5 # 1-12-38 86C5 -> 000024D6 # 1-12-39 86C6 -> 000024D7 # 1-12-40 86C7 -> 000024D8 # 1-12-41 86C8 -> 000024D9 # 1-12-42 86C9 -> 000024DA # 1-12-43 86CA -> 000024DB # 1-12-44 86CB -> 000024DC # 1-12-45 86CC -> 000024DD # 1-12-46 86CD -> 000024DE # 1-12-47 86CE -> 000024DF # 1-12-48 86CF -> 000024E0 # 1-12-49 86D0 -> 000024E1 # 1-12-50 86D1 -> 000024E2 # 1-12-51 86D2 -> 000024E3 # 1-12-52 86D3 -> 000024E4 # 1-12-53 86D4 -> 000024E5 # 1-12-54 86D5 -> 000024E6 # 1-12-55 86D6 -> 000024E7 # 1-12-56 86D7 -> 000024E8 # 1-12-57 86D8 -> 000024E9 # 1-12-58 86D9 -> 000032D0 # 1-12-59 86DA -> 000032D1 # 1-12-60 86DB -> 000032D2 # 1-12-61 86DC -> 000032D3 # 1-12-62 86DD -> 000032D4 # 1-12-63 86DE -> 000032D5 # 1-12-64 86DF -> 000032D6 # 1-12-65 86E0 -> 000032D7 # 1-12-66 86E1 -> 000032D8 # 1-12-67 86E2 -> 000032D9 # 1-12-68 86E3 -> 000032DA # 1-12-69 86E4 -> 000032DB # 1-12-70 86E5 -> 000032DC # 1-12-71 86E6 -> 000032DD # 1-12-72 86E7 -> 000032DE # 1-12-73 86E8 -> 000032DF # 1-12-74 86E9 -> 000032E0 # 1-12-75 86EA -> 000032E1 # 1-12-76 86EB -> 000032E2 # 1-12-77 86EC -> 000032E3 # 1-12-78 86ED -> 000032FA # 1-12-79 86EE -> 000032E9 # 1-12-80 86EF -> 000032E5 # 1-12-81 86F0 -> 000032ED # 1-12-82 86F1 -> 000032EC # 1-12-83 86FB -> 00002051 # 1-12-93 86FC -> 00002042 # 1-12-94 8740 -> 00002460 # 1-13-1 8741 -> 00002461 # 1-13-2 8742 -> 00002462 # 1-13-3 8743 -> 00002463 # 1-13-4 8744 -> 00002464 # 1-13-5 8745 -> 00002465 # 1-13-6 8746 -> 00002466 # 1-13-7 8747 -> 00002467 # 1-13-8 8748 -> 00002468 # 1-13-9 8749 -> 00002469 # 1-13-10 874A -> 0000246A # 1-13-11 874B -> 0000246B # 1-13-12 874C -> 0000246C # 1-13-13 874D -> 0000246D # 1-13-14 874E -> 0000246E # 1-13-15 874F -> 0000246F # 1-13-16 8750 -> 00002470 # 1-13-17 8751 -> 00002471 # 1-13-18 8752 -> 00002472 # 1-13-19 8753 -> 00002473 # 1-13-20 8754 -> 00002160 # 1-13-21 8755 -> 00002161 # 1-13-22 8756 -> 00002162 # 1-13-23 8757 -> 00002163 # 1-13-24 8758 -> 00002164 # 1-13-25 8759 -> 00002165 # 1-13-26 875A -> 00002166 # 1-13-27 875B -> 00002167 # 1-13-28 875C -> 00002168 # 1-13-29 875D -> 00002169 # 1-13-30 875E -> 0000216A # 1-13-31 875F -> 00003349 # 1-13-32 8760 -> 00003314 # 1-13-33 8761 -> 00003322 # 1-13-34 8762 -> 0000334D # 1-13-35 8763 -> 00003318 # 1-13-36 8764 -> 00003327 # 1-13-37 8765 -> 00003303 # 1-13-38 8766 -> 00003336 # 1-13-39 8767 -> 00003351 # 1-13-40 8768 -> 00003357 # 1-13-41 8769 -> 0000330D # 1-13-42 876A -> 00003326 # 1-13-43 876B -> 00003323 # 1-13-44 876C -> 0000332B # 1-13-45 876D -> 0000334A # 1-13-46 876E -> 0000333B # 1-13-47 876F -> 0000339C # 1-13-48 8770 -> 0000339D # 1-13-49 8771 -> 0000339E # 1-13-50 8772 -> 0000338E # 1-13-51 8773 -> 0000338F # 1-13-52 8774 -> 000033C4 # 1-13-53 8775 -> 000033A1 # 1-13-54 8776 -> 0000216B # 1-13-55 877E -> 0000337B # 1-13-63 8780 -> 0000301D # 1-13-64 8781 -> 0000301F # 1-13-65 8782 -> 00002116 # 1-13-66 8783 -> 000033CD # 1-13-67 8784 -> 00002121 # 1-13-68 8785 -> 000032A4 # 1-13-69 8786 -> 000032A5 # 1-13-70 8787 -> 000032A6 # 1-13-71 8788 -> 000032A7 # 1-13-72 8789 -> 000032A8 # 1-13-73 878A -> 00003231 # 1-13-74 878B -> 00003232 # 1-13-75 878C -> 00003239 # 1-13-76 878D -> 0000337E # 1-13-77 878E -> 0000337D # 1-13-78 878F -> 0000337C # 1-13-79 8793 -> 0000222E # 1-13-83 8798 -> 0000221F # 1-13-88 8799 -> 000022BF # 1-13-89 879D -> 00002756 # 1-13-93 879E -> 0000261E # 1-13-94 87A0 -> 0002000B # 1-14-2 87A1 -> 00003402 # 1-14-3 87A2 -> 00004E28 # 1-14-4 87A3 -> 00004E2F # 1-14-5 87A4 -> 00004E30 # 1-14-6 87A5 -> 00004E8D # 1-14-7 87A6 -> 00004EE1 # 1-14-8 87A7 -> 00004EFD # 1-14-9 87A8 -> 00004EFF # 1-14-10 87A9 -> 00004F03 # 1-14-11 87AA -> 00004F0B # 1-14-12 87AB -> 00004F60 # 1-14-13 87AC -> 00004F48 # 1-14-14 87AD -> 00004F49 # 1-14-15 87AE -> 00004F56 # 1-14-16 87AF -> 00004F5F # 1-14-17 87B0 -> 00004F6A # 1-14-18 87B1 -> 00004F6C # 1-14-19 87B2 -> 00004F7E # 1-14-20 87B3 -> 00004F8A # 1-14-21 87B4 -> 00004F94 # 1-14-22 87B5 -> 00004F97 # 1-14-23 87B6 -> 0000FA30 # 1-14-24 87B7 -> 00004FC9 # 1-14-25 87B8 -> 00004FE0 # 1-14-26 87B9 -> 00005001 # 1-14-27 87BA -> 00005002 # 1-14-28 87BB -> 0000500E # 1-14-29 87BC -> 00005018 # 1-14-30 87BD -> 00005027 # 1-14-31 87BE -> 0000502E # 1-14-32 87BF -> 00005040 # 1-14-33 87C0 -> 0000503B # 1-14-34 87C1 -> 00005041 # 1-14-35 87C2 -> 00005094 # 1-14-36 87C3 -> 000050CC # 1-14-37 87C4 -> 000050F2 # 1-14-38 87C5 -> 000050D0 # 1-14-39 87C6 -> 000050E6 # 1-14-40 87C7 -> 0000FA31 # 1-14-41 87C8 -> 00005106 # 1-14-42 87C9 -> 00005103 # 1-14-43 87CA -> 0000510B # 1-14-44 87CB -> 0000511E # 1-14-45 87CC -> 00005135 # 1-14-46 87CD -> 0000514A # 1-14-47 87CE -> 0000FA32 # 1-14-48 87CF -> 00005155 # 1-14-49 87D0 -> 00005157 # 1-14-50 87D1 -> 000034B5 # 1-14-51 87D2 -> 0000519D # 1-14-52 87D3 -> 000051C3 # 1-14-53 87D4 -> 000051CA # 1-14-54 87D5 -> 000051DE # 1-14-55 87D6 -> 000051E2 # 1-14-56 87D7 -> 000051EE # 1-14-57 87D8 -> 00005201 # 1-14-58 87D9 -> 000034DB # 1-14-59 87DA -> 00005213 # 1-14-60 87DB -> 00005215 # 1-14-61 87DC -> 00005249 # 1-14-62 87DD -> 00005257 # 1-14-63 87DE -> 00005261 # 1-14-64 87DF -> 00005293 # 1-14-65 87E0 -> 000052C8 # 1-14-66 87E1 -> 0000FA33 # 1-14-67 87E2 -> 000052CC # 1-14-68 87E3 -> 000052D0 # 1-14-69 87E4 -> 000052D6 # 1-14-70 87E5 -> 000052DB # 1-14-71 87E6 -> 0000FA34 # 1-14-72 87E7 -> 000052F0 # 1-14-73 87E8 -> 000052FB # 1-14-74 87E9 -> 00005300 # 1-14-75 87EA -> 00005307 # 1-14-76 87EB -> 0000531C # 1-14-77 87EC -> 0000FA35 # 1-14-78 87ED -> 00005361 # 1-14-79 87EE -> 00005363 # 1-14-80 87EF -> 0000537D # 1-14-81 87F0 -> 00005393 # 1-14-82 87F1 -> 0000539D # 1-14-83 87F2 -> 000053B2 # 1-14-84 87F3 -> 00005412 # 1-14-85 87F4 -> 00005427 # 1-14-86 87F5 -> 0000544D # 1-14-87 87F6 -> 0000549C # 1-14-88 87F7 -> 0000546B # 1-14-89 87F8 -> 00005474 # 1-14-90 87F9 -> 0000547F # 1-14-91 87FA -> 00005488 # 1-14-92 87FB -> 00005496 # 1-14-93 87FC -> 000054A1 # 1-14-94 8840 -> 000054A9 # 1-15-1 8841 -> 000054C6 # 1-15-2 8842 -> 000054FF # 1-15-3 8843 -> 0000550E # 1-15-4 8844 -> 0000552B # 1-15-5 8845 -> 00005535 # 1-15-6 8846 -> 00005550 # 1-15-7 8847 -> 0000555E # 1-15-8 8848 -> 00005581 # 1-15-9 8849 -> 00005586 # 1-15-10 884A -> 0000558E # 1-15-11 884B -> 0000FA36 # 1-15-12 884C -> 000055AD # 1-15-13 884D -> 000055CE # 1-15-14 884E -> 0000FA37 # 1-15-15 884F -> 00005608 # 1-15-16 8850 -> 0000560E # 1-15-17 8851 -> 0000563B # 1-15-18 8852 -> 00005649 # 1-15-19 8853 -> 00005676 # 1-15-20 8854 -> 00005666 # 1-15-21 8855 -> 0000FA38 # 1-15-22 8856 -> 0000566F # 1-15-23 8857 -> 00005671 # 1-15-24 8858 -> 00005672 # 1-15-25 8859 -> 00005699 # 1-15-26 885A -> 0000569E # 1-15-27 885B -> 000056A9 # 1-15-28 885C -> 000056AC # 1-15-29 885D -> 000056B3 # 1-15-30 885E -> 000056C9 # 1-15-31 885F -> 000056CA # 1-15-32 8860 -> 0000570A # 1-15-33 8861 -> 0002123D # 1-15-34 8862 -> 00005721 # 1-15-35 8863 -> 0000572F # 1-15-36 8864 -> 00005733 # 1-15-37 8865 -> 00005734 # 1-15-38 8866 -> 00005770 # 1-15-39 8867 -> 00005777 # 1-15-40 8868 -> 0000577C # 1-15-41 8869 -> 0000579C # 1-15-42 886A -> 0000FA0F # 1-15-43 886B -> 0002131B # 1-15-44 886C -> 000057B8 # 1-15-45 886D -> 000057C7 # 1-15-46 886E -> 000057C8 # 1-15-47 886F -> 000057CF # 1-15-48 8870 -> 000057E4 # 1-15-49 8871 -> 000057ED # 1-15-50 8872 -> 000057F5 # 1-15-51 8873 -> 000057F6 # 1-15-52 8874 -> 000057FF # 1-15-53 8875 -> 00005809 # 1-15-54 8876 -> 0000FA10 # 1-15-55 8877 -> 00005861 # 1-15-56 8878 -> 00005864 # 1-15-57 8879 -> 0000FA39 # 1-15-58 887A -> 0000587C # 1-15-59 887B -> 00005889 # 1-15-60 887C -> 0000589E # 1-15-61 887D -> 0000FA3A # 1-15-62 887E -> 000058A9 # 1-15-63 8880 -> 0002146E # 1-15-64 8881 -> 000058D2 # 1-15-65 8882 -> 000058CE # 1-15-66 8883 -> 000058D4 # 1-15-67 8884 -> 000058DA # 1-15-68 8885 -> 000058E0 # 1-15-69 8886 -> 000058E9 # 1-15-70 8887 -> 0000590C # 1-15-71 8888 -> 00008641 # 1-15-72 8889 -> 0000595D # 1-15-73 888A -> 0000596D # 1-15-74 888B -> 0000598B # 1-15-75 888C -> 00005992 # 1-15-76 888D -> 000059A4 # 1-15-77 888E -> 000059C3 # 1-15-78 888F -> 000059D2 # 1-15-79 8890 -> 000059DD # 1-15-80 8891 -> 00005A13 # 1-15-81 8892 -> 00005A23 # 1-15-82 8893 -> 00005A67 # 1-15-83 8894 -> 00005A6D # 1-15-84 8895 -> 00005A77 # 1-15-85 8896 -> 00005A7E # 1-15-86 8897 -> 00005A84 # 1-15-87 8898 -> 00005A9E # 1-15-88 8899 -> 00005AA7 # 1-15-89 889A -> 00005AC4 # 1-15-90 889B -> 000218BD # 1-15-91 889C -> 00005B19 # 1-15-92 889D -> 00005B25 # 1-15-93 889F -> 00004E9C # 1-16-1 88A0 -> 00005516 # 1-16-2 88A1 -> 00005A03 # 1-16-3 88A2 -> 0000963F # 1-16-4 88A3 -> 000054C0 # 1-16-5 88A4 -> 0000611B # 1-16-6 88A5 -> 00006328 # 1-16-7 88A6 -> 000059F6 # 1-16-8 88A7 -> 00009022 # 1-16-9 88A8 -> 00008475 # 1-16-10 88A9 -> 0000831C # 1-16-11 88AA -> 00007A50 # 1-16-12 88AB -> 000060AA # 1-16-13 88AC -> 000063E1 # 1-16-14 88AD -> 00006E25 # 1-16-15 88AE -> 000065ED # 1-16-16 88AF -> 00008466 # 1-16-17 88B0 -> 000082A6 # 1-16-18 88B1 -> 00009BF5 # 1-16-19 88B2 -> 00006893 # 1-16-20 88B3 -> 00005727 # 1-16-21 88B4 -> 000065A1 # 1-16-22 88B5 -> 00006271 # 1-16-23 88B6 -> 00005B9B # 1-16-24 88B7 -> 000059D0 # 1-16-25 88B8 -> 0000867B # 1-16-26 88B9 -> 000098F4 # 1-16-27 88BA -> 00007D62 # 1-16-28 88BB -> 00007DBE # 1-16-29 88BC -> 00009B8E # 1-16-30 88BD -> 00006216 # 1-16-31 88BE -> 00007C9F # 1-16-32 88BF -> 000088B7 # 1-16-33 88C0 -> 00005B89 # 1-16-34 88C1 -> 00005EB5 # 1-16-35 88C2 -> 00006309 # 1-16-36 88C3 -> 00006697 # 1-16-37 88C4 -> 00006848 # 1-16-38 88C5 -> 000095C7 # 1-16-39 88C6 -> 0000978D # 1-16-40 88C7 -> 0000674F # 1-16-41 88C8 -> 00004EE5 # 1-16-42 88C9 -> 00004F0A # 1-16-43 88CA -> 00004F4D # 1-16-44 88CB -> 00004F9D # 1-16-45 88CC -> 00005049 # 1-16-46 88CD -> 000056F2 # 1-16-47 88CE -> 00005937 # 1-16-48 88CF -> 000059D4 # 1-16-49 88D0 -> 00005A01 # 1-16-50 88D1 -> 00005C09 # 1-16-51 88D2 -> 000060DF # 1-16-52 88D3 -> 0000610F # 1-16-53 88D4 -> 00006170 # 1-16-54 88D5 -> 00006613 # 1-16-55 88D6 -> 00006905 # 1-16-56 88D7 -> 000070BA # 1-16-57 88D8 -> 0000754F # 1-16-58 88D9 -> 00007570 # 1-16-59 88DA -> 000079FB # 1-16-60 88DB -> 00007DAD # 1-16-61 88DC -> 00007DEF # 1-16-62 88DD -> 000080C3 # 1-16-63 88DE -> 0000840E # 1-16-64 88DF -> 00008863 # 1-16-65 88E0 -> 00008B02 # 1-16-66 88E1 -> 00009055 # 1-16-67 88E2 -> 0000907A # 1-16-68 88E3 -> 0000533B # 1-16-69 88E4 -> 00004E95 # 1-16-70 88E5 -> 00004EA5 # 1-16-71 88E6 -> 000057DF # 1-16-72 88E7 -> 000080B2 # 1-16-73 88E8 -> 000090C1 # 1-16-74 88E9 -> 000078EF # 1-16-75 88EA -> 00004E00 # 1-16-76 88EB -> 000058F1 # 1-16-77 88EC -> 00006EA2 # 1-16-78 88ED -> 00009038 # 1-16-79 88EE -> 00007A32 # 1-16-80 88EF -> 00008328 # 1-16-81 88F0 -> 0000828B # 1-16-82 88F1 -> 00009C2F # 1-16-83 88F2 -> 00005141 # 1-16-84 88F3 -> 00005370 # 1-16-85 88F4 -> 000054BD # 1-16-86 88F5 -> 000054E1 # 1-16-87 88F6 -> 000056E0 # 1-16-88 88F7 -> 000059FB # 1-16-89 88F8 -> 00005F15 # 1-16-90 88F9 -> 000098F2 # 1-16-91 88FA -> 00006DEB # 1-16-92 88FB -> 000080E4 # 1-16-93 88FC -> 0000852D # 1-16-94 8940 -> 00009662 # 1-17-1 8941 -> 00009670 # 1-17-2 8942 -> 000096A0 # 1-17-3 8943 -> 000097FB # 1-17-4 8944 -> 0000540B # 1-17-5 8945 -> 000053F3 # 1-17-6 8946 -> 00005B87 # 1-17-7 8947 -> 000070CF # 1-17-8 8948 -> 00007FBD # 1-17-9 8949 -> 00008FC2 # 1-17-10 894A -> 000096E8 # 1-17-11 894B -> 0000536F # 1-17-12 894C -> 00009D5C # 1-17-13 894D -> 00007ABA # 1-17-14 894E -> 00004E11 # 1-17-15 894F -> 00007893 # 1-17-16 8950 -> 000081FC # 1-17-17 8951 -> 00006E26 # 1-17-18 8952 -> 00005618 # 1-17-19 8953 -> 00005504 # 1-17-20 8954 -> 00006B1D # 1-17-21 8955 -> 0000851A # 1-17-22 8956 -> 00009C3B # 1-17-23 8957 -> 000059E5 # 1-17-24 8958 -> 000053A9 # 1-17-25 8959 -> 00006D66 # 1-17-26 895A -> 000074DC # 1-17-27 895B -> 0000958F # 1-17-28 895C -> 00005642 # 1-17-29 895D -> 00004E91 # 1-17-30 895E -> 0000904B # 1-17-31 895F -> 000096F2 # 1-17-32 8960 -> 0000834F # 1-17-33 8961 -> 0000990C # 1-17-34 8962 -> 000053E1 # 1-17-35 8963 -> 000055B6 # 1-17-36 8964 -> 00005B30 # 1-17-37 8965 -> 00005F71 # 1-17-38 8966 -> 00006620 # 1-17-39 8967 -> 000066F3 # 1-17-40 8968 -> 00006804 # 1-17-41 8969 -> 00006C38 # 1-17-42 896A -> 00006CF3 # 1-17-43 896B -> 00006D29 # 1-17-44 896C -> 0000745B # 1-17-45 896D -> 000076C8 # 1-17-46 896E -> 00007A4E # 1-17-47 896F -> 00009834 # 1-17-48 8970 -> 000082F1 # 1-17-49 8971 -> 0000885B # 1-17-50 8972 -> 00008A60 # 1-17-51 8973 -> 000092ED # 1-17-52 8974 -> 00006DB2 # 1-17-53 8975 -> 000075AB # 1-17-54 8976 -> 000076CA # 1-17-55 8977 -> 000099C5 # 1-17-56 8978 -> 000060A6 # 1-17-57 8979 -> 00008B01 # 1-17-58 897A -> 00008D8A # 1-17-59 897B -> 000095B2 # 1-17-60 897C -> 0000698E # 1-17-61 897D -> 000053AD # 1-17-62 897E -> 00005186 # 1-17-63 8980 -> 00005712 # 1-17-64 8981 -> 00005830 # 1-17-65 8982 -> 00005944 # 1-17-66 8983 -> 00005BB4 # 1-17-67 8984 -> 00005EF6 # 1-17-68 8985 -> 00006028 # 1-17-69 8986 -> 000063A9 # 1-17-70 8987 -> 000063F4 # 1-17-71 8988 -> 00006CBF # 1-17-72 8989 -> 00006F14 # 1-17-73 898A -> 0000708E # 1-17-74 898B -> 00007114 # 1-17-75 898C -> 00007159 # 1-17-76 898D -> 000071D5 # 1-17-77 898E -> 0000733F # 1-17-78 898F -> 00007E01 # 1-17-79 8990 -> 00008276 # 1-17-80 8991 -> 000082D1 # 1-17-81 8992 -> 00008597 # 1-17-82 8993 -> 00009060 # 1-17-83 8994 -> 0000925B # 1-17-84 8995 -> 00009D1B # 1-17-85 8996 -> 00005869 # 1-17-86 8997 -> 000065BC # 1-17-87 8998 -> 00006C5A # 1-17-88 8999 -> 00007525 # 1-17-89 899A -> 000051F9 # 1-17-90 899B -> 0000592E # 1-17-91 899C -> 00005965 # 1-17-92 899D -> 00005F80 # 1-17-93 899E -> 00005FDC # 1-17-94 899F -> 000062BC # 1-18-1 89A0 -> 000065FA # 1-18-2 89A1 -> 00006A2A # 1-18-3 89A2 -> 00006B27 # 1-18-4 89A3 -> 00006BB4 # 1-18-5 89A4 -> 0000738B # 1-18-6 89A5 -> 00007FC1 # 1-18-7 89A6 -> 00008956 # 1-18-8 89A7 -> 00009D2C # 1-18-9 89A8 -> 00009D0E # 1-18-10 89A9 -> 00009EC4 # 1-18-11 89AA -> 00005CA1 # 1-18-12 89AB -> 00006C96 # 1-18-13 89AC -> 0000837B # 1-18-14 89AD -> 00005104 # 1-18-15 89AE -> 00005C4B # 1-18-16 89AF -> 000061B6 # 1-18-17 89B0 -> 000081C6 # 1-18-18 89B1 -> 00006876 # 1-18-19 89B2 -> 00007261 # 1-18-20 89B3 -> 00004E59 # 1-18-21 89B4 -> 00004FFA # 1-18-22 89B5 -> 00005378 # 1-18-23 89B6 -> 00006069 # 1-18-24 89B7 -> 00006E29 # 1-18-25 89B8 -> 00007A4F # 1-18-26 89B9 -> 000097F3 # 1-18-27 89BA -> 00004E0B # 1-18-28 89BB -> 00005316 # 1-18-29 89BC -> 00004EEE # 1-18-30 89BD -> 00004F55 # 1-18-31 89BE -> 00004F3D # 1-18-32 89BF -> 00004FA1 # 1-18-33 89C0 -> 00004F73 # 1-18-34 89C1 -> 000052A0 # 1-18-35 89C2 -> 000053EF # 1-18-36 89C3 -> 00005609 # 1-18-37 89C4 -> 0000590F # 1-18-38 89C5 -> 00005AC1 # 1-18-39 89C6 -> 00005BB6 # 1-18-40 89C7 -> 00005BE1 # 1-18-41 89C8 -> 000079D1 # 1-18-42 89C9 -> 00006687 # 1-18-43 89CA -> 0000679C # 1-18-44 89CB -> 000067B6 # 1-18-45 89CC -> 00006B4C # 1-18-46 89CD -> 00006CB3 # 1-18-47 89CE -> 0000706B # 1-18-48 89CF -> 000073C2 # 1-18-49 89D0 -> 0000798D # 1-18-50 89D1 -> 000079BE # 1-18-51 89D2 -> 00007A3C # 1-18-52 89D3 -> 00007B87 # 1-18-53 89D4 -> 000082B1 # 1-18-54 89D5 -> 000082DB # 1-18-55 89D6 -> 00008304 # 1-18-56 89D7 -> 00008377 # 1-18-57 89D8 -> 000083EF # 1-18-58 89D9 -> 000083D3 # 1-18-59 89DA -> 00008766 # 1-18-60 89DB -> 00008AB2 # 1-18-61 89DC -> 00005629 # 1-18-62 89DD -> 00008CA8 # 1-18-63 89DE -> 00008FE6 # 1-18-64 89DF -> 0000904E # 1-18-65 89E0 -> 0000971E # 1-18-66 89E1 -> 0000868A # 1-18-67 89E2 -> 00004FC4 # 1-18-68 89E3 -> 00005CE8 # 1-18-69 89E4 -> 00006211 # 1-18-70 89E5 -> 00007259 # 1-18-71 89E6 -> 0000753B # 1-18-72 89E7 -> 000081E5 # 1-18-73 89E8 -> 000082BD # 1-18-74 89E9 -> 000086FE # 1-18-75 89EA -> 00008CC0 # 1-18-76 89EB -> 000096C5 # 1-18-77 89EC -> 00009913 # 1-18-78 89ED -> 000099D5 # 1-18-79 89EE -> 00004ECB # 1-18-80 89EF -> 00004F1A # 1-18-81 89F0 -> 000089E3 # 1-18-82 89F1 -> 000056DE # 1-18-83 89F2 -> 0000584A # 1-18-84 89F3 -> 000058CA # 1-18-85 89F4 -> 00005EFB # 1-18-86 89F5 -> 00005FEB # 1-18-87 89F6 -> 0000602A # 1-18-88 89F7 -> 00006094 # 1-18-89 89F8 -> 00006062 # 1-18-90 89F9 -> 000061D0 # 1-18-91 89FA -> 00006212 # 1-18-92 89FB -> 000062D0 # 1-18-93 89FC -> 00006539 # 1-18-94 8A40 -> 00009B41 # 1-19-1 8A41 -> 00006666 # 1-19-2 8A42 -> 000068B0 # 1-19-3 8A43 -> 00006D77 # 1-19-4 8A44 -> 00007070 # 1-19-5 8A45 -> 0000754C # 1-19-6 8A46 -> 00007686 # 1-19-7 8A47 -> 00007D75 # 1-19-8 8A48 -> 000082A5 # 1-19-9 8A49 -> 000087F9 # 1-19-10 8A4A -> 0000958B # 1-19-11 8A4B -> 0000968E # 1-19-12 8A4C -> 00008C9D # 1-19-13 8A4D -> 000051F1 # 1-19-14 8A4E -> 000052BE # 1-19-15 8A4F -> 00005916 # 1-19-16 8A50 -> 000054B3 # 1-19-17 8A51 -> 00005BB3 # 1-19-18 8A52 -> 00005D16 # 1-19-19 8A53 -> 00006168 # 1-19-20 8A54 -> 00006982 # 1-19-21 8A55 -> 00006DAF # 1-19-22 8A56 -> 0000788D # 1-19-23 8A57 -> 000084CB # 1-19-24 8A58 -> 00008857 # 1-19-25 8A59 -> 00008A72 # 1-19-26 8A5A -> 000093A7 # 1-19-27 8A5B -> 00009AB8 # 1-19-28 8A5C -> 00006D6C # 1-19-29 8A5D -> 000099A8 # 1-19-30 8A5E -> 000086D9 # 1-19-31 8A5F -> 000057A3 # 1-19-32 8A60 -> 000067FF # 1-19-33 8A61 -> 000086CE # 1-19-34 8A62 -> 0000920E # 1-19-35 8A63 -> 00005283 # 1-19-36 8A64 -> 00005687 # 1-19-37 8A65 -> 00005404 # 1-19-38 8A66 -> 00005ED3 # 1-19-39 8A67 -> 000062E1 # 1-19-40 8A68 -> 000064B9 # 1-19-41 8A69 -> 0000683C # 1-19-42 8A6A -> 00006838 # 1-19-43 8A6B -> 00006BBB # 1-19-44 8A6C -> 00007372 # 1-19-45 8A6D -> 000078BA # 1-19-46 8A6E -> 00007A6B # 1-19-47 8A6F -> 0000899A # 1-19-48 8A70 -> 000089D2 # 1-19-49 8A71 -> 00008D6B # 1-19-50 8A72 -> 00008F03 # 1-19-51 8A73 -> 000090ED # 1-19-52 8A74 -> 000095A3 # 1-19-53 8A75 -> 00009694 # 1-19-54 8A76 -> 00009769 # 1-19-55 8A77 -> 00005B66 # 1-19-56 8A78 -> 00005CB3 # 1-19-57 8A79 -> 0000697D # 1-19-58 8A7A -> 0000984D # 1-19-59 8A7B -> 0000984E # 1-19-60 8A7C -> 0000639B # 1-19-61 8A7D -> 00007B20 # 1-19-62 8A7E -> 00006A2B # 1-19-63 8A80 -> 00006A7F # 1-19-64 8A81 -> 000068B6 # 1-19-65 8A82 -> 00009C0D # 1-19-66 8A83 -> 00006F5F # 1-19-67 8A84 -> 00005272 # 1-19-68 8A85 -> 0000559D # 1-19-69 8A86 -> 00006070 # 1-19-70 8A87 -> 000062EC # 1-19-71 8A88 -> 00006D3B # 1-19-72 8A89 -> 00006E07 # 1-19-73 8A8A -> 00006ED1 # 1-19-74 8A8B -> 0000845B # 1-19-75 8A8C -> 00008910 # 1-19-76 8A8D -> 00008F44 # 1-19-77 8A8E -> 00004E14 # 1-19-78 8A8F -> 00009C39 # 1-19-79 8A90 -> 000053F6 # 1-19-80 8A91 -> 0000691B # 1-19-81 8A92 -> 00006A3A # 1-19-82 8A93 -> 00009784 # 1-19-83 8A94 -> 0000682A # 1-19-84 8A95 -> 0000515C # 1-19-85 8A96 -> 00007AC3 # 1-19-86 8A97 -> 000084B2 # 1-19-87 8A98 -> 000091DC # 1-19-88 8A99 -> 0000938C # 1-19-89 8A9A -> 0000565B # 1-19-90 8A9B -> 00009D28 # 1-19-91 8A9C -> 00006822 # 1-19-92 8A9D -> 00008305 # 1-19-93 8A9E -> 00008431 # 1-19-94 8A9F -> 00007CA5 # 1-20-1 8AA0 -> 00005208 # 1-20-2 8AA1 -> 000082C5 # 1-20-3 8AA2 -> 000074E6 # 1-20-4 8AA3 -> 00004E7E # 1-20-5 8AA4 -> 00004F83 # 1-20-6 8AA5 -> 000051A0 # 1-20-7 8AA6 -> 00005BD2 # 1-20-8 8AA7 -> 0000520A # 1-20-9 8AA8 -> 000052D8 # 1-20-10 8AA9 -> 000052E7 # 1-20-11 8AAA -> 00005DFB # 1-20-12 8AAB -> 0000559A # 1-20-13 8AAC -> 0000582A # 1-20-14 8AAD -> 000059E6 # 1-20-15 8AAE -> 00005B8C # 1-20-16 8AAF -> 00005B98 # 1-20-17 8AB0 -> 00005BDB # 1-20-18 8AB1 -> 00005E72 # 1-20-19 8AB2 -> 00005E79 # 1-20-20 8AB3 -> 000060A3 # 1-20-21 8AB4 -> 0000611F # 1-20-22 8AB5 -> 00006163 # 1-20-23 8AB6 -> 000061BE # 1-20-24 8AB7 -> 000063DB # 1-20-25 8AB8 -> 00006562 # 1-20-26 8AB9 -> 000067D1 # 1-20-27 8ABA -> 00006853 # 1-20-28 8ABB -> 000068FA # 1-20-29 8ABC -> 00006B3E # 1-20-30 8ABD -> 00006B53 # 1-20-31 8ABE -> 00006C57 # 1-20-32 8ABF -> 00006F22 # 1-20-33 8AC0 -> 00006F97 # 1-20-34 8AC1 -> 00006F45 # 1-20-35 8AC2 -> 000074B0 # 1-20-36 8AC3 -> 00007518 # 1-20-37 8AC4 -> 000076E3 # 1-20-38 8AC5 -> 0000770B # 1-20-39 8AC6 -> 00007AFF # 1-20-40 8AC7 -> 00007BA1 # 1-20-41 8AC8 -> 00007C21 # 1-20-42 8AC9 -> 00007DE9 # 1-20-43 8ACA -> 00007F36 # 1-20-44 8ACB -> 00007FF0 # 1-20-45 8ACC -> 0000809D # 1-20-46 8ACD -> 00008266 # 1-20-47 8ACE -> 0000839E # 1-20-48 8ACF -> 000089B3 # 1-20-49 8AD0 -> 00008ACC # 1-20-50 8AD1 -> 00008CAB # 1-20-51 8AD2 -> 00009084 # 1-20-52 8AD3 -> 00009451 # 1-20-53 8AD4 -> 00009593 # 1-20-54 8AD5 -> 00009591 # 1-20-55 8AD6 -> 000095A2 # 1-20-56 8AD7 -> 00009665 # 1-20-57 8AD8 -> 000097D3 # 1-20-58 8AD9 -> 00009928 # 1-20-59 8ADA -> 00008218 # 1-20-60 8ADB -> 00004E38 # 1-20-61 8ADC -> 0000542B # 1-20-62 8ADD -> 00005CB8 # 1-20-63 8ADE -> 00005DCC # 1-20-64 8ADF -> 000073A9 # 1-20-65 8AE0 -> 0000764C # 1-20-66 8AE1 -> 0000773C # 1-20-67 8AE2 -> 00005CA9 # 1-20-68 8AE3 -> 00007FEB # 1-20-69 8AE4 -> 00008D0B # 1-20-70 8AE5 -> 000096C1 # 1-20-71 8AE6 -> 00009811 # 1-20-72 8AE7 -> 00009854 # 1-20-73 8AE8 -> 00009858 # 1-20-74 8AE9 -> 00004F01 # 1-20-75 8AEA -> 00004F0E # 1-20-76 8AEB -> 00005371 # 1-20-77 8AEC -> 0000559C # 1-20-78 8AED -> 00005668 # 1-20-79 8AEE -> 000057FA # 1-20-80 8AEF -> 00005947 # 1-20-81 8AF0 -> 00005B09 # 1-20-82 8AF1 -> 00005BC4 # 1-20-83 8AF2 -> 00005C90 # 1-20-84 8AF3 -> 00005E0C # 1-20-85 8AF4 -> 00005E7E # 1-20-86 8AF5 -> 00005FCC # 1-20-87 8AF6 -> 000063EE # 1-20-88 8AF7 -> 0000673A # 1-20-89 8AF8 -> 000065D7 # 1-20-90 8AF9 -> 000065E2 # 1-20-91 8AFA -> 0000671F # 1-20-92 8AFB -> 000068CB # 1-20-93 8AFC -> 000068C4 # 1-20-94 8B40 -> 00006A5F # 1-21-1 8B41 -> 00005E30 # 1-21-2 8B42 -> 00006BC5 # 1-21-3 8B43 -> 00006C17 # 1-21-4 8B44 -> 00006C7D # 1-21-5 8B45 -> 0000757F # 1-21-6 8B46 -> 00007948 # 1-21-7 8B47 -> 00005B63 # 1-21-8 8B48 -> 00007A00 # 1-21-9 8B49 -> 00007D00 # 1-21-10 8B4A -> 00005FBD # 1-21-11 8B4B -> 0000898F # 1-21-12 8B4C -> 00008A18 # 1-21-13 8B4D -> 00008CB4 # 1-21-14 8B4E -> 00008D77 # 1-21-15 8B4F -> 00008ECC # 1-21-16 8B50 -> 00008F1D # 1-21-17 8B51 -> 000098E2 # 1-21-18 8B52 -> 00009A0E # 1-21-19 8B53 -> 00009B3C # 1-21-20 8B54 -> 00004E80 # 1-21-21 8B55 -> 0000507D # 1-21-22 8B56 -> 00005100 # 1-21-23 8B57 -> 00005993 # 1-21-24 8B58 -> 00005B9C # 1-21-25 8B59 -> 0000622F # 1-21-26 8B5A -> 00006280 # 1-21-27 8B5B -> 000064EC # 1-21-28 8B5C -> 00006B3A # 1-21-29 8B5D -> 000072A0 # 1-21-30 8B5E -> 00007591 # 1-21-31 8B5F -> 00007947 # 1-21-32 8B60 -> 00007FA9 # 1-21-33 8B61 -> 000087FB # 1-21-34 8B62 -> 00008ABC # 1-21-35 8B63 -> 00008B70 # 1-21-36 8B64 -> 000063AC # 1-21-37 8B65 -> 000083CA # 1-21-38 8B66 -> 000097A0 # 1-21-39 8B67 -> 00005409 # 1-21-40 8B68 -> 00005403 # 1-21-41 8B69 -> 000055AB # 1-21-42 8B6A -> 00006854 # 1-21-43 8B6B -> 00006A58 # 1-21-44 8B6C -> 00008A70 # 1-21-45 8B6D -> 00007827 # 1-21-46 8B6E -> 00006775 # 1-21-47 8B6F -> 00009ECD # 1-21-48 8B70 -> 00005374 # 1-21-49 8B71 -> 00005BA2 # 1-21-50 8B72 -> 0000811A # 1-21-51 8B73 -> 00008650 # 1-21-52 8B74 -> 00009006 # 1-21-53 8B75 -> 00004E18 # 1-21-54 8B76 -> 00004E45 # 1-21-55 8B77 -> 00004EC7 # 1-21-56 8B78 -> 00004F11 # 1-21-57 8B79 -> 000053CA # 1-21-58 8B7A -> 00005438 # 1-21-59 8B7B -> 00005BAE # 1-21-60 8B7C -> 00005F13 # 1-21-61 8B7D -> 00006025 # 1-21-62 8B7E -> 00006551 # 1-21-63 8B80 -> 0000673D # 1-21-64 8B81 -> 00006C42 # 1-21-65 8B82 -> 00006C72 # 1-21-66 8B83 -> 00006CE3 # 1-21-67 8B84 -> 00007078 # 1-21-68 8B85 -> 00007403 # 1-21-69 8B86 -> 00007A76 # 1-21-70 8B87 -> 00007AAE # 1-21-71 8B88 -> 00007B08 # 1-21-72 8B89 -> 00007D1A # 1-21-73 8B8A -> 00007CFE # 1-21-74 8B8B -> 00007D66 # 1-21-75 8B8C -> 000065E7 # 1-21-76 8B8D -> 0000725B # 1-21-77 8B8E -> 000053BB # 1-21-78 8B8F -> 00005C45 # 1-21-79 8B90 -> 00005DE8 # 1-21-80 8B91 -> 000062D2 # 1-21-81 8B92 -> 000062E0 # 1-21-82 8B93 -> 00006319 # 1-21-83 8B94 -> 00006E20 # 1-21-84 8B95 -> 0000865A # 1-21-85 8B96 -> 00008A31 # 1-21-86 8B97 -> 00008DDD # 1-21-87 8B98 -> 000092F8 # 1-21-88 8B99 -> 00006F01 # 1-21-89 8B9A -> 000079A6 # 1-21-90 8B9B -> 00009B5A # 1-21-91 8B9C -> 00004EA8 # 1-21-92 8B9D -> 00004EAB # 1-21-93 8B9E -> 00004EAC # 1-21-94 8B9F -> 00004F9B # 1-22-1 8BA0 -> 00004FA0 # 1-22-2 8BA1 -> 000050D1 # 1-22-3 8BA2 -> 00005147 # 1-22-4 8BA3 -> 00007AF6 # 1-22-5 8BA4 -> 00005171 # 1-22-6 8BA5 -> 000051F6 # 1-22-7 8BA6 -> 00005354 # 1-22-8 8BA7 -> 00005321 # 1-22-9 8BA8 -> 0000537F # 1-22-10 8BA9 -> 000053EB # 1-22-11 8BAA -> 000055AC # 1-22-12 8BAB -> 00005883 # 1-22-13 8BAC -> 00005CE1 # 1-22-14 8BAD -> 00005F37 # 1-22-15 8BAE -> 00005F4A # 1-22-16 8BAF -> 0000602F # 1-22-17 8BB0 -> 00006050 # 1-22-18 8BB1 -> 0000606D # 1-22-19 8BB2 -> 0000631F # 1-22-20 8BB3 -> 00006559 # 1-22-21 8BB4 -> 00006A4B # 1-22-22 8BB5 -> 00006CC1 # 1-22-23 8BB6 -> 000072C2 # 1-22-24 8BB7 -> 000072ED # 1-22-25 8BB8 -> 000077EF # 1-22-26 8BB9 -> 000080F8 # 1-22-27 8BBA -> 00008105 # 1-22-28 8BBB -> 00008208 # 1-22-29 8BBC -> 0000854E # 1-22-30 8BBD -> 000090F7 # 1-22-31 8BBE -> 000093E1 # 1-22-32 8BBF -> 000097FF # 1-22-33 8BC0 -> 00009957 # 1-22-34 8BC1 -> 00009A5A # 1-22-35 8BC2 -> 00004EF0 # 1-22-36 8BC3 -> 000051DD # 1-22-37 8BC4 -> 00005C2D # 1-22-38 8BC5 -> 00006681 # 1-22-39 8BC6 -> 0000696D # 1-22-40 8BC7 -> 00005C40 # 1-22-41 8BC8 -> 000066F2 # 1-22-42 8BC9 -> 00006975 # 1-22-43 8BCA -> 00007389 # 1-22-44 8BCB -> 00006850 # 1-22-45 8BCC -> 00007C81 # 1-22-46 8BCD -> 000050C5 # 1-22-47 8BCE -> 000052E4 # 1-22-48 8BCF -> 00005747 # 1-22-49 8BD0 -> 00005DFE # 1-22-50 8BD1 -> 00009326 # 1-22-51 8BD2 -> 000065A4 # 1-22-52 8BD3 -> 00006B23 # 1-22-53 8BD4 -> 00006B3D # 1-22-54 8BD5 -> 00007434 # 1-22-55 8BD6 -> 00007981 # 1-22-56 8BD7 -> 000079BD # 1-22-57 8BD8 -> 00007B4B # 1-22-58 8BD9 -> 00007DCA # 1-22-59 8BDA -> 000082B9 # 1-22-60 8BDB -> 000083CC # 1-22-61 8BDC -> 0000887F # 1-22-62 8BDD -> 0000895F # 1-22-63 8BDE -> 00008B39 # 1-22-64 8BDF -> 00008FD1 # 1-22-65 8BE0 -> 000091D1 # 1-22-66 8BE1 -> 0000541F # 1-22-67 8BE2 -> 00009280 # 1-22-68 8BE3 -> 00004E5D # 1-22-69 8BE4 -> 00005036 # 1-22-70 8BE5 -> 000053E5 # 1-22-71 8BE6 -> 0000533A # 1-22-72 8BE7 -> 000072D7 # 1-22-73 8BE8 -> 00007396 # 1-22-74 8BE9 -> 000077E9 # 1-22-75 8BEA -> 000082E6 # 1-22-76 8BEB -> 00008EAF # 1-22-77 8BEC -> 000099C6 # 1-22-78 8BED -> 000099C8 # 1-22-79 8BEE -> 000099D2 # 1-22-80 8BEF -> 00005177 # 1-22-81 8BF0 -> 0000611A # 1-22-82 8BF1 -> 0000865E # 1-22-83 8BF2 -> 000055B0 # 1-22-84 8BF3 -> 00007A7A # 1-22-85 8BF4 -> 00005076 # 1-22-86 8BF5 -> 00005BD3 # 1-22-87 8BF6 -> 00009047 # 1-22-88 8BF7 -> 00009685 # 1-22-89 8BF8 -> 00004E32 # 1-22-90 8BF9 -> 00006ADB # 1-22-91 8BFA -> 000091E7 # 1-22-92 8BFB -> 00005C51 # 1-22-93 8BFC -> 00005C48 # 1-22-94 8C40 -> 00006398 # 1-23-1 8C41 -> 00007A9F # 1-23-2 8C42 -> 00006C93 # 1-23-3 8C43 -> 00009774 # 1-23-4 8C44 -> 00008F61 # 1-23-5 8C45 -> 00007AAA # 1-23-6 8C46 -> 0000718A # 1-23-7 8C47 -> 00009688 # 1-23-8 8C48 -> 00007C82 # 1-23-9 8C49 -> 00006817 # 1-23-10 8C4A -> 00007E70 # 1-23-11 8C4B -> 00006851 # 1-23-12 8C4C -> 0000936C # 1-23-13 8C4D -> 000052F2 # 1-23-14 8C4E -> 0000541B # 1-23-15 8C4F -> 000085AB # 1-23-16 8C50 -> 00008A13 # 1-23-17 8C51 -> 00007FA4 # 1-23-18 8C52 -> 00008ECD # 1-23-19 8C53 -> 000090E1 # 1-23-20 8C54 -> 00005366 # 1-23-21 8C55 -> 00008888 # 1-23-22 8C56 -> 00007941 # 1-23-23 8C57 -> 00004FC2 # 1-23-24 8C58 -> 000050BE # 1-23-25 8C59 -> 00005211 # 1-23-26 8C5A -> 00005144 # 1-23-27 8C5B -> 00005553 # 1-23-28 8C5C -> 0000572D # 1-23-29 8C5D -> 000073EA # 1-23-30 8C5E -> 0000578B # 1-23-31 8C5F -> 00005951 # 1-23-32 8C60 -> 00005F62 # 1-23-33 8C61 -> 00005F84 # 1-23-34 8C62 -> 00006075 # 1-23-35 8C63 -> 00006176 # 1-23-36 8C64 -> 00006167 # 1-23-37 8C65 -> 000061A9 # 1-23-38 8C66 -> 000063B2 # 1-23-39 8C67 -> 0000643A # 1-23-40 8C68 -> 0000656C # 1-23-41 8C69 -> 0000666F # 1-23-42 8C6A -> 00006842 # 1-23-43 8C6B -> 00006E13 # 1-23-44 8C6C -> 00007566 # 1-23-45 8C6D -> 00007A3D # 1-23-46 8C6E -> 00007CFB # 1-23-47 8C6F -> 00007D4C # 1-23-48 8C70 -> 00007D99 # 1-23-49 8C71 -> 00007E4B # 1-23-50 8C72 -> 00007F6B # 1-23-51 8C73 -> 0000830E # 1-23-52 8C74 -> 0000834A # 1-23-53 8C75 -> 000086CD # 1-23-54 8C76 -> 00008A08 # 1-23-55 8C77 -> 00008A63 # 1-23-56 8C78 -> 00008B66 # 1-23-57 8C79 -> 00008EFD # 1-23-58 8C7A -> 0000981A # 1-23-59 8C7B -> 00009D8F # 1-23-60 8C7C -> 000082B8 # 1-23-61 8C7D -> 00008FCE # 1-23-62 8C7E -> 00009BE8 # 1-23-63 8C80 -> 00005287 # 1-23-64 8C81 -> 0000621F # 1-23-65 8C82 -> 00006483 # 1-23-66 8C83 -> 00006FC0 # 1-23-67 8C84 -> 00009699 # 1-23-68 8C85 -> 00006841 # 1-23-69 8C86 -> 00005091 # 1-23-70 8C87 -> 00006B20 # 1-23-71 8C88 -> 00006C7A # 1-23-72 8C89 -> 00006F54 # 1-23-73 8C8A -> 00007A74 # 1-23-74 8C8B -> 00007D50 # 1-23-75 8C8C -> 00008840 # 1-23-76 8C8D -> 00008A23 # 1-23-77 8C8E -> 00006708 # 1-23-78 8C8F -> 00004EF6 # 1-23-79 8C90 -> 00005039 # 1-23-80 8C91 -> 00005026 # 1-23-81 8C92 -> 00005065 # 1-23-82 8C93 -> 0000517C # 1-23-83 8C94 -> 00005238 # 1-23-84 8C95 -> 00005263 # 1-23-85 8C96 -> 000055A7 # 1-23-86 8C97 -> 0000570F # 1-23-87 8C98 -> 00005805 # 1-23-88 8C99 -> 00005ACC # 1-23-89 8C9A -> 00005EFA # 1-23-90 8C9B -> 000061B2 # 1-23-91 8C9C -> 000061F8 # 1-23-92 8C9D -> 000062F3 # 1-23-93 8C9E -> 00006372 # 1-23-94 8C9F -> 0000691C # 1-24-1 8CA0 -> 00006A29 # 1-24-2 8CA1 -> 0000727D # 1-24-3 8CA2 -> 000072AC # 1-24-4 8CA3 -> 0000732E # 1-24-5 8CA4 -> 00007814 # 1-24-6 8CA5 -> 0000786F # 1-24-7 8CA6 -> 00007D79 # 1-24-8 8CA7 -> 0000770C # 1-24-9 8CA8 -> 000080A9 # 1-24-10 8CA9 -> 0000898B # 1-24-11 8CAA -> 00008B19 # 1-24-12 8CAB -> 00008CE2 # 1-24-13 8CAC -> 00008ED2 # 1-24-14 8CAD -> 00009063 # 1-24-15 8CAE -> 00009375 # 1-24-16 8CAF -> 0000967A # 1-24-17 8CB0 -> 00009855 # 1-24-18 8CB1 -> 00009A13 # 1-24-19 8CB2 -> 00009E78 # 1-24-20 8CB3 -> 00005143 # 1-24-21 8CB4 -> 0000539F # 1-24-22 8CB5 -> 000053B3 # 1-24-23 8CB6 -> 00005E7B # 1-24-24 8CB7 -> 00005F26 # 1-24-25 8CB8 -> 00006E1B # 1-24-26 8CB9 -> 00006E90 # 1-24-27 8CBA -> 00007384 # 1-24-28 8CBB -> 000073FE # 1-24-29 8CBC -> 00007D43 # 1-24-30 8CBD -> 00008237 # 1-24-31 8CBE -> 00008A00 # 1-24-32 8CBF -> 00008AFA # 1-24-33 8CC0 -> 00009650 # 1-24-34 8CC1 -> 00004E4E # 1-24-35 8CC2 -> 0000500B # 1-24-36 8CC3 -> 000053E4 # 1-24-37 8CC4 -> 0000547C # 1-24-38 8CC5 -> 000056FA # 1-24-39 8CC6 -> 000059D1 # 1-24-40 8CC7 -> 00005B64 # 1-24-41 8CC8 -> 00005DF1 # 1-24-42 8CC9 -> 00005EAB # 1-24-43 8CCA -> 00005F27 # 1-24-44 8CCB -> 00006238 # 1-24-45 8CCC -> 00006545 # 1-24-46 8CCD -> 000067AF # 1-24-47 8CCE -> 00006E56 # 1-24-48 8CCF -> 000072D0 # 1-24-49 8CD0 -> 00007CCA # 1-24-50 8CD1 -> 000088B4 # 1-24-51 8CD2 -> 000080A1 # 1-24-52 8CD3 -> 000080E1 # 1-24-53 8CD4 -> 000083F0 # 1-24-54 8CD5 -> 0000864E # 1-24-55 8CD6 -> 00008A87 # 1-24-56 8CD7 -> 00008DE8 # 1-24-57 8CD8 -> 00009237 # 1-24-58 8CD9 -> 000096C7 # 1-24-59 8CDA -> 00009867 # 1-24-60 8CDB -> 00009F13 # 1-24-61 8CDC -> 00004E94 # 1-24-62 8CDD -> 00004E92 # 1-24-63 8CDE -> 00004F0D # 1-24-64 8CDF -> 00005348 # 1-24-65 8CE0 -> 00005449 # 1-24-66 8CE1 -> 0000543E # 1-24-67 8CE2 -> 00005A2F # 1-24-68 8CE3 -> 00005F8C # 1-24-69 8CE4 -> 00005FA1 # 1-24-70 8CE5 -> 0000609F # 1-24-71 8CE6 -> 000068A7 # 1-24-72 8CE7 -> 00006A8E # 1-24-73 8CE8 -> 0000745A # 1-24-74 8CE9 -> 00007881 # 1-24-75 8CEA -> 00008A9E # 1-24-76 8CEB -> 00008AA4 # 1-24-77 8CEC -> 00008B77 # 1-24-78 8CED -> 00009190 # 1-24-79 8CEE -> 00004E5E # 1-24-80 8CEF -> 00009BC9 # 1-24-81 8CF0 -> 00004EA4 # 1-24-82 8CF1 -> 00004F7C # 1-24-83 8CF2 -> 00004FAF # 1-24-84 8CF3 -> 00005019 # 1-24-85 8CF4 -> 00005016 # 1-24-86 8CF5 -> 00005149 # 1-24-87 8CF6 -> 0000516C # 1-24-88 8CF7 -> 0000529F # 1-24-89 8CF8 -> 000052B9 # 1-24-90 8CF9 -> 000052FE # 1-24-91 8CFA -> 0000539A # 1-24-92 8CFB -> 000053E3 # 1-24-93 8CFC -> 00005411 # 1-24-94 8D40 -> 0000540E # 1-25-1 8D41 -> 00005589 # 1-25-2 8D42 -> 00005751 # 1-25-3 8D43 -> 000057A2 # 1-25-4 8D44 -> 0000597D # 1-25-5 8D45 -> 00005B54 # 1-25-6 8D46 -> 00005B5D # 1-25-7 8D47 -> 00005B8F # 1-25-8 8D48 -> 00005DE5 # 1-25-9 8D49 -> 00005DE7 # 1-25-10 8D4A -> 00005DF7 # 1-25-11 8D4B -> 00005E78 # 1-25-12 8D4C -> 00005E83 # 1-25-13 8D4D -> 00005E9A # 1-25-14 8D4E -> 00005EB7 # 1-25-15 8D4F -> 00005F18 # 1-25-16 8D50 -> 00006052 # 1-25-17 8D51 -> 0000614C # 1-25-18 8D52 -> 00006297 # 1-25-19 8D53 -> 000062D8 # 1-25-20 8D54 -> 000063A7 # 1-25-21 8D55 -> 0000653B # 1-25-22 8D56 -> 00006602 # 1-25-23 8D57 -> 00006643 # 1-25-24 8D58 -> 000066F4 # 1-25-25 8D59 -> 0000676D # 1-25-26 8D5A -> 00006821 # 1-25-27 8D5B -> 00006897 # 1-25-28 8D5C -> 000069CB # 1-25-29 8D5D -> 00006C5F # 1-25-30 8D5E -> 00006D2A # 1-25-31 8D5F -> 00006D69 # 1-25-32 8D60 -> 00006E2F # 1-25-33 8D61 -> 00006E9D # 1-25-34 8D62 -> 00007532 # 1-25-35 8D63 -> 00007687 # 1-25-36 8D64 -> 0000786C # 1-25-37 8D65 -> 00007A3F # 1-25-38 8D66 -> 00007CE0 # 1-25-39 8D67 -> 00007D05 # 1-25-40 8D68 -> 00007D18 # 1-25-41 8D69 -> 00007D5E # 1-25-42 8D6A -> 00007DB1 # 1-25-43 8D6B -> 00008015 # 1-25-44 8D6C -> 00008003 # 1-25-45 8D6D -> 000080AF # 1-25-46 8D6E -> 000080B1 # 1-25-47 8D6F -> 00008154 # 1-25-48 8D70 -> 0000818F # 1-25-49 8D71 -> 0000822A # 1-25-50 8D72 -> 00008352 # 1-25-51 8D73 -> 0000884C # 1-25-52 8D74 -> 00008861 # 1-25-53 8D75 -> 00008B1B # 1-25-54 8D76 -> 00008CA2 # 1-25-55 8D77 -> 00008CFC # 1-25-56 8D78 -> 000090CA # 1-25-57 8D79 -> 00009175 # 1-25-58 8D7A -> 00009271 # 1-25-59 8D7B -> 0000783F # 1-25-60 8D7C -> 000092FC # 1-25-61 8D7D -> 000095A4 # 1-25-62 8D7E -> 0000964D # 1-25-63 8D80 -> 00009805 # 1-25-64 8D81 -> 00009999 # 1-25-65 8D82 -> 00009AD8 # 1-25-66 8D83 -> 00009D3B # 1-25-67 8D84 -> 0000525B # 1-25-68 8D85 -> 000052AB # 1-25-69 8D86 -> 000053F7 # 1-25-70 8D87 -> 00005408 # 1-25-71 8D88 -> 000058D5 # 1-25-72 8D89 -> 000062F7 # 1-25-73 8D8A -> 00006FE0 # 1-25-74 8D8B -> 00008C6A # 1-25-75 8D8C -> 00008F5F # 1-25-76 8D8D -> 00009EB9 # 1-25-77 8D8E -> 0000514B # 1-25-78 8D8F -> 0000523B # 1-25-79 8D90 -> 0000544A # 1-25-80 8D91 -> 000056FD # 1-25-81 8D92 -> 00007A40 # 1-25-82 8D93 -> 00009177 # 1-25-83 8D94 -> 00009D60 # 1-25-84 8D95 -> 00009ED2 # 1-25-85 8D96 -> 00007344 # 1-25-86 8D97 -> 00006F09 # 1-25-87 8D98 -> 00008170 # 1-25-88 8D99 -> 00007511 # 1-25-89 8D9A -> 00005FFD # 1-25-90 8D9B -> 000060DA # 1-25-91 8D9C -> 00009AA8 # 1-25-92 8D9D -> 000072DB # 1-25-93 8D9E -> 00008FBC # 1-25-94 8D9F -> 00006B64 # 1-26-1 8DA0 -> 00009803 # 1-26-2 8DA1 -> 00004ECA # 1-26-3 8DA2 -> 000056F0 # 1-26-4 8DA3 -> 00005764 # 1-26-5 8DA4 -> 000058BE # 1-26-6 8DA5 -> 00005A5A # 1-26-7 8DA6 -> 00006068 # 1-26-8 8DA7 -> 000061C7 # 1-26-9 8DA8 -> 0000660F # 1-26-10 8DA9 -> 00006606 # 1-26-11 8DAA -> 00006839 # 1-26-12 8DAB -> 000068B1 # 1-26-13 8DAC -> 00006DF7 # 1-26-14 8DAD -> 000075D5 # 1-26-15 8DAE -> 00007D3A # 1-26-16 8DAF -> 0000826E # 1-26-17 8DB0 -> 00009B42 # 1-26-18 8DB1 -> 00004E9B # 1-26-19 8DB2 -> 00004F50 # 1-26-20 8DB3 -> 000053C9 # 1-26-21 8DB4 -> 00005506 # 1-26-22 8DB5 -> 00005D6F # 1-26-23 8DB6 -> 00005DE6 # 1-26-24 8DB7 -> 00005DEE # 1-26-25 8DB8 -> 000067FB # 1-26-26 8DB9 -> 00006C99 # 1-26-27 8DBA -> 00007473 # 1-26-28 8DBB -> 00007802 # 1-26-29 8DBC -> 00008A50 # 1-26-30 8DBD -> 00009396 # 1-26-31 8DBE -> 000088DF # 1-26-32 8DBF -> 00005750 # 1-26-33 8DC0 -> 00005EA7 # 1-26-34 8DC1 -> 0000632B # 1-26-35 8DC2 -> 000050B5 # 1-26-36 8DC3 -> 000050AC # 1-26-37 8DC4 -> 0000518D # 1-26-38 8DC5 -> 00006700 # 1-26-39 8DC6 -> 000054C9 # 1-26-40 8DC7 -> 0000585E # 1-26-41 8DC8 -> 000059BB # 1-26-42 8DC9 -> 00005BB0 # 1-26-43 8DCA -> 00005F69 # 1-26-44 8DCB -> 0000624D # 1-26-45 8DCC -> 000063A1 # 1-26-46 8DCD -> 0000683D # 1-26-47 8DCE -> 00006B73 # 1-26-48 8DCF -> 00006E08 # 1-26-49 8DD0 -> 0000707D # 1-26-50 8DD1 -> 000091C7 # 1-26-51 8DD2 -> 00007280 # 1-26-52 8DD3 -> 00007815 # 1-26-53 8DD4 -> 00007826 # 1-26-54 8DD5 -> 0000796D # 1-26-55 8DD6 -> 0000658E # 1-26-56 8DD7 -> 00007D30 # 1-26-57 8DD8 -> 000083DC # 1-26-58 8DD9 -> 000088C1 # 1-26-59 8DDA -> 00008F09 # 1-26-60 8DDB -> 0000969B # 1-26-61 8DDC -> 00005264 # 1-26-62 8DDD -> 00005728 # 1-26-63 8DDE -> 00006750 # 1-26-64 8DDF -> 00007F6A # 1-26-65 8DE0 -> 00008CA1 # 1-26-66 8DE1 -> 000051B4 # 1-26-67 8DE2 -> 00005742 # 1-26-68 8DE3 -> 0000962A # 1-26-69 8DE4 -> 0000583A # 1-26-70 8DE5 -> 0000698A # 1-26-71 8DE6 -> 000080B4 # 1-26-72 8DE7 -> 000054B2 # 1-26-73 8DE8 -> 00005D0E # 1-26-74 8DE9 -> 000057FC # 1-26-75 8DEA -> 00007895 # 1-26-76 8DEB -> 00009DFA # 1-26-77 8DEC -> 00004F5C # 1-26-78 8DED -> 0000524A # 1-26-79 8DEE -> 0000548B # 1-26-80 8DEF -> 0000643E # 1-26-81 8DF0 -> 00006628 # 1-26-82 8DF1 -> 00006714 # 1-26-83 8DF2 -> 000067F5 # 1-26-84 8DF3 -> 00007A84 # 1-26-85 8DF4 -> 00007B56 # 1-26-86 8DF5 -> 00007D22 # 1-26-87 8DF6 -> 0000932F # 1-26-88 8DF7 -> 0000685C # 1-26-89 8DF8 -> 00009BAD # 1-26-90 8DF9 -> 00007B39 # 1-26-91 8DFA -> 00005319 # 1-26-92 8DFB -> 0000518A # 1-26-93 8DFC -> 00005237 # 1-26-94 8E40 -> 00005BDF # 1-27-1 8E41 -> 000062F6 # 1-27-2 8E42 -> 000064AE # 1-27-3 8E43 -> 000064E6 # 1-27-4 8E44 -> 0000672D # 1-27-5 8E45 -> 00006BBA # 1-27-6 8E46 -> 000085A9 # 1-27-7 8E47 -> 000096D1 # 1-27-8 8E48 -> 00007690 # 1-27-9 8E49 -> 00009BD6 # 1-27-10 8E4A -> 0000634C # 1-27-11 8E4B -> 00009306 # 1-27-12 8E4C -> 00009BAB # 1-27-13 8E4D -> 000076BF # 1-27-14 8E4E -> 00006652 # 1-27-15 8E4F -> 00004E09 # 1-27-16 8E50 -> 00005098 # 1-27-17 8E51 -> 000053C2 # 1-27-18 8E52 -> 00005C71 # 1-27-19 8E53 -> 000060E8 # 1-27-20 8E54 -> 00006492 # 1-27-21 8E55 -> 00006563 # 1-27-22 8E56 -> 0000685F # 1-27-23 8E57 -> 000071E6 # 1-27-24 8E58 -> 000073CA # 1-27-25 8E59 -> 00007523 # 1-27-26 8E5A -> 00007B97 # 1-27-27 8E5B -> 00007E82 # 1-27-28 8E5C -> 00008695 # 1-27-29 8E5D -> 00008B83 # 1-27-30 8E5E -> 00008CDB # 1-27-31 8E5F -> 00009178 # 1-27-32 8E60 -> 00009910 # 1-27-33 8E61 -> 000065AC # 1-27-34 8E62 -> 000066AB # 1-27-35 8E63 -> 00006B8B # 1-27-36 8E64 -> 00004ED5 # 1-27-37 8E65 -> 00004ED4 # 1-27-38 8E66 -> 00004F3A # 1-27-39 8E67 -> 00004F7F # 1-27-40 8E68 -> 0000523A # 1-27-41 8E69 -> 000053F8 # 1-27-42 8E6A -> 000053F2 # 1-27-43 8E6B -> 000055E3 # 1-27-44 8E6C -> 000056DB # 1-27-45 8E6D -> 000058EB # 1-27-46 8E6E -> 000059CB # 1-27-47 8E6F -> 000059C9 # 1-27-48 8E70 -> 000059FF # 1-27-49 8E71 -> 00005B50 # 1-27-50 8E72 -> 00005C4D # 1-27-51 8E73 -> 00005E02 # 1-27-52 8E74 -> 00005E2B # 1-27-53 8E75 -> 00005FD7 # 1-27-54 8E76 -> 0000601D # 1-27-55 8E77 -> 00006307 # 1-27-56 8E78 -> 0000652F # 1-27-57 8E79 -> 00005B5C # 1-27-58 8E7A -> 000065AF # 1-27-59 8E7B -> 000065BD # 1-27-60 8E7C -> 000065E8 # 1-27-61 8E7D -> 0000679D # 1-27-62 8E7E -> 00006B62 # 1-27-63 8E80 -> 00006B7B # 1-27-64 8E81 -> 00006C0F # 1-27-65 8E82 -> 00007345 # 1-27-66 8E83 -> 00007949 # 1-27-67 8E84 -> 000079C1 # 1-27-68 8E85 -> 00007CF8 # 1-27-69 8E86 -> 00007D19 # 1-27-70 8E87 -> 00007D2B # 1-27-71 8E88 -> 000080A2 # 1-27-72 8E89 -> 00008102 # 1-27-73 8E8A -> 000081F3 # 1-27-74 8E8B -> 00008996 # 1-27-75 8E8C -> 00008A5E # 1-27-76 8E8D -> 00008A69 # 1-27-77 8E8E -> 00008A66 # 1-27-78 8E8F -> 00008A8C # 1-27-79 8E90 -> 00008AEE # 1-27-80 8E91 -> 00008CC7 # 1-27-81 8E92 -> 00008CDC # 1-27-82 8E93 -> 000096CC # 1-27-83 8E94 -> 000098FC # 1-27-84 8E95 -> 00006B6F # 1-27-85 8E96 -> 00004E8B # 1-27-86 8E97 -> 00004F3C # 1-27-87 8E98 -> 00004F8D # 1-27-88 8E99 -> 00005150 # 1-27-89 8E9A -> 00005B57 # 1-27-90 8E9B -> 00005BFA # 1-27-91 8E9C -> 00006148 # 1-27-92 8E9D -> 00006301 # 1-27-93 8E9E -> 00006642 # 1-27-94 8E9F -> 00006B21 # 1-28-1 8EA0 -> 00006ECB # 1-28-2 8EA1 -> 00006CBB # 1-28-3 8EA2 -> 0000723E # 1-28-4 8EA3 -> 000074BD # 1-28-5 8EA4 -> 000075D4 # 1-28-6 8EA5 -> 000078C1 # 1-28-7 8EA6 -> 0000793A # 1-28-8 8EA7 -> 0000800C # 1-28-9 8EA8 -> 00008033 # 1-28-10 8EA9 -> 000081EA # 1-28-11 8EAA -> 00008494 # 1-28-12 8EAB -> 00008F9E # 1-28-13 8EAC -> 00006C50 # 1-28-14 8EAD -> 00009E7F # 1-28-15 8EAE -> 00005F0F # 1-28-16 8EAF -> 00008B58 # 1-28-17 8EB0 -> 00009D2B # 1-28-18 8EB1 -> 00007AFA # 1-28-19 8EB2 -> 00008EF8 # 1-28-20 8EB3 -> 00005B8D # 1-28-21 8EB4 -> 000096EB # 1-28-22 8EB5 -> 00004E03 # 1-28-23 8EB6 -> 000053F1 # 1-28-24 8EB7 -> 000057F7 # 1-28-25 8EB8 -> 00005931 # 1-28-26 8EB9 -> 00005AC9 # 1-28-27 8EBA -> 00005BA4 # 1-28-28 8EBB -> 00006089 # 1-28-29 8EBC -> 00006E7F # 1-28-30 8EBD -> 00006F06 # 1-28-31 8EBE -> 000075BE # 1-28-32 8EBF -> 00008CEA # 1-28-33 8EC0 -> 00005B9F # 1-28-34 8EC1 -> 00008500 # 1-28-35 8EC2 -> 00007BE0 # 1-28-36 8EC3 -> 00005072 # 1-28-37 8EC4 -> 000067F4 # 1-28-38 8EC5 -> 0000829D # 1-28-39 8EC6 -> 00005C61 # 1-28-40 8EC7 -> 0000854A # 1-28-41 8EC8 -> 00007E1E # 1-28-42 8EC9 -> 0000820E # 1-28-43 8ECA -> 00005199 # 1-28-44 8ECB -> 00005C04 # 1-28-45 8ECC -> 00006368 # 1-28-46 8ECD -> 00008D66 # 1-28-47 8ECE -> 0000659C # 1-28-48 8ECF -> 0000716E # 1-28-49 8ED0 -> 0000793E # 1-28-50 8ED1 -> 00007D17 # 1-28-51 8ED2 -> 00008005 # 1-28-52 8ED3 -> 00008B1D # 1-28-53 8ED4 -> 00008ECA # 1-28-54 8ED5 -> 0000906E # 1-28-55 8ED6 -> 000086C7 # 1-28-56 8ED7 -> 000090AA # 1-28-57 8ED8 -> 0000501F # 1-28-58 8ED9 -> 000052FA # 1-28-59 8EDA -> 00005C3A # 1-28-60 8EDB -> 00006753 # 1-28-61 8EDC -> 0000707C # 1-28-62 8EDD -> 00007235 # 1-28-63 8EDE -> 0000914C # 1-28-64 8EDF -> 000091C8 # 1-28-65 8EE0 -> 0000932B # 1-28-66 8EE1 -> 000082E5 # 1-28-67 8EE2 -> 00005BC2 # 1-28-68 8EE3 -> 00005F31 # 1-28-69 8EE4 -> 000060F9 # 1-28-70 8EE5 -> 00004E3B # 1-28-71 8EE6 -> 000053D6 # 1-28-72 8EE7 -> 00005B88 # 1-28-73 8EE8 -> 0000624B # 1-28-74 8EE9 -> 00006731 # 1-28-75 8EEA -> 00006B8A # 1-28-76 8EEB -> 000072E9 # 1-28-77 8EEC -> 000073E0 # 1-28-78 8EED -> 00007A2E # 1-28-79 8EEE -> 0000816B # 1-28-80 8EEF -> 00008DA3 # 1-28-81 8EF0 -> 00009152 # 1-28-82 8EF1 -> 00009996 # 1-28-83 8EF2 -> 00005112 # 1-28-84 8EF3 -> 000053D7 # 1-28-85 8EF4 -> 0000546A # 1-28-86 8EF5 -> 00005BFF # 1-28-87 8EF6 -> 00006388 # 1-28-88 8EF7 -> 00006A39 # 1-28-89 8EF8 -> 00007DAC # 1-28-90 8EF9 -> 00009700 # 1-28-91 8EFA -> 000056DA # 1-28-92 8EFB -> 000053CE # 1-28-93 8EFC -> 00005468 # 1-28-94 8F40 -> 00005B97 # 1-29-1 8F41 -> 00005C31 # 1-29-2 8F42 -> 00005DDE # 1-29-3 8F43 -> 00004FEE # 1-29-4 8F44 -> 00006101 # 1-29-5 8F45 -> 000062FE # 1-29-6 8F46 -> 00006D32 # 1-29-7 8F47 -> 000079C0 # 1-29-8 8F48 -> 000079CB # 1-29-9 8F49 -> 00007D42 # 1-29-10 8F4A -> 00007E4D # 1-29-11 8F4B -> 00007FD2 # 1-29-12 8F4C -> 000081ED # 1-29-13 8F4D -> 0000821F # 1-29-14 8F4E -> 00008490 # 1-29-15 8F4F -> 00008846 # 1-29-16 8F50 -> 00008972 # 1-29-17 8F51 -> 00008B90 # 1-29-18 8F52 -> 00008E74 # 1-29-19 8F53 -> 00008F2F # 1-29-20 8F54 -> 00009031 # 1-29-21 8F55 -> 0000914B # 1-29-22 8F56 -> 0000916C # 1-29-23 8F57 -> 000096C6 # 1-29-24 8F58 -> 0000919C # 1-29-25 8F59 -> 00004EC0 # 1-29-26 8F5A -> 00004F4F # 1-29-27 8F5B -> 00005145 # 1-29-28 8F5C -> 00005341 # 1-29-29 8F5D -> 00005F93 # 1-29-30 8F5E -> 0000620E # 1-29-31 8F5F -> 000067D4 # 1-29-32 8F60 -> 00006C41 # 1-29-33 8F61 -> 00006E0B # 1-29-34 8F62 -> 00007363 # 1-29-35 8F63 -> 00007E26 # 1-29-36 8F64 -> 000091CD # 1-29-37 8F65 -> 00009283 # 1-29-38 8F66 -> 000053D4 # 1-29-39 8F67 -> 00005919 # 1-29-40 8F68 -> 00005BBF # 1-29-41 8F69 -> 00006DD1 # 1-29-42 8F6A -> 0000795D # 1-29-43 8F6B -> 00007E2E # 1-29-44 8F6C -> 00007C9B # 1-29-45 8F6D -> 0000587E # 1-29-46 8F6E -> 0000719F # 1-29-47 8F6F -> 000051FA # 1-29-48 8F70 -> 00008853 # 1-29-49 8F71 -> 00008FF0 # 1-29-50 8F72 -> 00004FCA # 1-29-51 8F73 -> 00005CFB # 1-29-52 8F74 -> 00006625 # 1-29-53 8F75 -> 000077AC # 1-29-54 8F76 -> 00007AE3 # 1-29-55 8F77 -> 0000821C # 1-29-56 8F78 -> 000099FF # 1-29-57 8F79 -> 000051C6 # 1-29-58 8F7A -> 00005FAA # 1-29-59 8F7B -> 000065EC # 1-29-60 8F7C -> 0000696F # 1-29-61 8F7D -> 00006B89 # 1-29-62 8F7E -> 00006DF3 # 1-29-63 8F80 -> 00006E96 # 1-29-64 8F81 -> 00006F64 # 1-29-65 8F82 -> 000076FE # 1-29-66 8F83 -> 00007D14 # 1-29-67 8F84 -> 00005DE1 # 1-29-68 8F85 -> 00009075 # 1-29-69 8F86 -> 00009187 # 1-29-70 8F87 -> 00009806 # 1-29-71 8F88 -> 000051E6 # 1-29-72 8F89 -> 0000521D # 1-29-73 8F8A -> 00006240 # 1-29-74 8F8B -> 00006691 # 1-29-75 8F8C -> 000066D9 # 1-29-76 8F8D -> 00006E1A # 1-29-77 8F8E -> 00005EB6 # 1-29-78 8F8F -> 00007DD2 # 1-29-79 8F90 -> 00007F72 # 1-29-80 8F91 -> 000066F8 # 1-29-81 8F92 -> 000085AF # 1-29-82 8F93 -> 000085F7 # 1-29-83 8F94 -> 00008AF8 # 1-29-84 8F95 -> 000052A9 # 1-29-85 8F96 -> 000053D9 # 1-29-86 8F97 -> 00005973 # 1-29-87 8F98 -> 00005E8F # 1-29-88 8F99 -> 00005F90 # 1-29-89 8F9A -> 00006055 # 1-29-90 8F9B -> 000092E4 # 1-29-91 8F9C -> 00009664 # 1-29-92 8F9D -> 000050B7 # 1-29-93 8F9E -> 0000511F # 1-29-94 8F9F -> 000052DD # 1-30-1 8FA0 -> 00005320 # 1-30-2 8FA1 -> 00005347 # 1-30-3 8FA2 -> 000053EC # 1-30-4 8FA3 -> 000054E8 # 1-30-5 8FA4 -> 00005546 # 1-30-6 8FA5 -> 00005531 # 1-30-7 8FA6 -> 00005617 # 1-30-8 8FA7 -> 00005968 # 1-30-9 8FA8 -> 000059BE # 1-30-10 8FA9 -> 00005A3C # 1-30-11 8FAA -> 00005BB5 # 1-30-12 8FAB -> 00005C06 # 1-30-13 8FAC -> 00005C0F # 1-30-14 8FAD -> 00005C11 # 1-30-15 8FAE -> 00005C1A # 1-30-16 8FAF -> 00005E84 # 1-30-17 8FB0 -> 00005E8A # 1-30-18 8FB1 -> 00005EE0 # 1-30-19 8FB2 -> 00005F70 # 1-30-20 8FB3 -> 0000627F # 1-30-21 8FB4 -> 00006284 # 1-30-22 8FB5 -> 000062DB # 1-30-23 8FB6 -> 0000638C # 1-30-24 8FB7 -> 00006377 # 1-30-25 8FB8 -> 00006607 # 1-30-26 8FB9 -> 0000660C # 1-30-27 8FBA -> 0000662D # 1-30-28 8FBB -> 00006676 # 1-30-29 8FBC -> 0000677E # 1-30-30 8FBD -> 000068A2 # 1-30-31 8FBE -> 00006A1F # 1-30-32 8FBF -> 00006A35 # 1-30-33 8FC0 -> 00006CBC # 1-30-34 8FC1 -> 00006D88 # 1-30-35 8FC2 -> 00006E09 # 1-30-36 8FC3 -> 00006E58 # 1-30-37 8FC4 -> 0000713C # 1-30-38 8FC5 -> 00007126 # 1-30-39 8FC6 -> 00007167 # 1-30-40 8FC7 -> 000075C7 # 1-30-41 8FC8 -> 00007701 # 1-30-42 8FC9 -> 0000785D # 1-30-43 8FCA -> 00007901 # 1-30-44 8FCB -> 00007965 # 1-30-45 8FCC -> 000079F0 # 1-30-46 8FCD -> 00007AE0 # 1-30-47 8FCE -> 00007B11 # 1-30-48 8FCF -> 00007CA7 # 1-30-49 8FD0 -> 00007D39 # 1-30-50 8FD1 -> 00008096 # 1-30-51 8FD2 -> 000083D6 # 1-30-52 8FD3 -> 0000848B # 1-30-53 8FD4 -> 00008549 # 1-30-54 8FD5 -> 0000885D # 1-30-55 8FD6 -> 000088F3 # 1-30-56 8FD7 -> 00008A1F # 1-30-57 8FD8 -> 00008A3C # 1-30-58 8FD9 -> 00008A54 # 1-30-59 8FDA -> 00008A73 # 1-30-60 8FDB -> 00008C61 # 1-30-61 8FDC -> 00008CDE # 1-30-62 8FDD -> 000091A4 # 1-30-63 8FDE -> 00009266 # 1-30-64 8FDF -> 0000937E # 1-30-65 8FE0 -> 00009418 # 1-30-66 8FE1 -> 0000969C # 1-30-67 8FE2 -> 00009798 # 1-30-68 8FE3 -> 00004E0A # 1-30-69 8FE4 -> 00004E08 # 1-30-70 8FE5 -> 00004E1E # 1-30-71 8FE6 -> 00004E57 # 1-30-72 8FE7 -> 00005197 # 1-30-73 8FE8 -> 00005270 # 1-30-74 8FE9 -> 000057CE # 1-30-75 8FEA -> 00005834 # 1-30-76 8FEB -> 000058CC # 1-30-77 8FEC -> 00005B22 # 1-30-78 8FED -> 00005E38 # 1-30-79 8FEE -> 000060C5 # 1-30-80 8FEF -> 000064FE # 1-30-81 8FF0 -> 00006761 # 1-30-82 8FF1 -> 00006756 # 1-30-83 8FF2 -> 00006D44 # 1-30-84 8FF3 -> 000072B6 # 1-30-85 8FF4 -> 00007573 # 1-30-86 8FF5 -> 00007A63 # 1-30-87 8FF6 -> 000084B8 # 1-30-88 8FF7 -> 00008B72 # 1-30-89 8FF8 -> 000091B8 # 1-30-90 8FF9 -> 00009320 # 1-30-91 8FFA -> 00005631 # 1-30-92 8FFB -> 000057F4 # 1-30-93 8FFC -> 000098FE # 1-30-94 9040 -> 000062ED # 1-31-1 9041 -> 0000690D # 1-31-2 9042 -> 00006B96 # 1-31-3 9043 -> 000071ED # 1-31-4 9044 -> 00007E54 # 1-31-5 9045 -> 00008077 # 1-31-6 9046 -> 00008272 # 1-31-7 9047 -> 000089E6 # 1-31-8 9048 -> 000098DF # 1-31-9 9049 -> 00008755 # 1-31-10 904A -> 00008FB1 # 1-31-11 904B -> 00005C3B # 1-31-12 904C -> 00004F38 # 1-31-13 904D -> 00004FE1 # 1-31-14 904E -> 00004FB5 # 1-31-15 904F -> 00005507 # 1-31-16 9050 -> 00005A20 # 1-31-17 9051 -> 00005BDD # 1-31-18 9052 -> 00005BE9 # 1-31-19 9053 -> 00005FC3 # 1-31-20 9054 -> 0000614E # 1-31-21 9055 -> 0000632F # 1-31-22 9056 -> 000065B0 # 1-31-23 9057 -> 0000664B # 1-31-24 9058 -> 000068EE # 1-31-25 9059 -> 0000699B # 1-31-26 905A -> 00006D78 # 1-31-27 905B -> 00006DF1 # 1-31-28 905C -> 00007533 # 1-31-29 905D -> 000075B9 # 1-31-30 905E -> 0000771F # 1-31-31 905F -> 0000795E # 1-31-32 9060 -> 000079E6 # 1-31-33 9061 -> 00007D33 # 1-31-34 9062 -> 000081E3 # 1-31-35 9063 -> 000082AF # 1-31-36 9064 -> 000085AA # 1-31-37 9065 -> 000089AA # 1-31-38 9066 -> 00008A3A # 1-31-39 9067 -> 00008EAB # 1-31-40 9068 -> 00008F9B # 1-31-41 9069 -> 00009032 # 1-31-42 906A -> 000091DD # 1-31-43 906B -> 00009707 # 1-31-44 906C -> 00004EBA # 1-31-45 906D -> 00004EC1 # 1-31-46 906E -> 00005203 # 1-31-47 906F -> 00005875 # 1-31-48 9070 -> 000058EC # 1-31-49 9071 -> 00005C0B # 1-31-50 9072 -> 0000751A # 1-31-51 9073 -> 00005C3D # 1-31-52 9074 -> 0000814E # 1-31-53 9075 -> 00008A0A # 1-31-54 9076 -> 00008FC5 # 1-31-55 9077 -> 00009663 # 1-31-56 9078 -> 0000976D # 1-31-57 9079 -> 00007B25 # 1-31-58 907A -> 00008ACF # 1-31-59 907B -> 00009808 # 1-31-60 907C -> 00009162 # 1-31-61 907D -> 000056F3 # 1-31-62 907E -> 000053A8 # 1-31-63 9080 -> 00009017 # 1-31-64 9081 -> 00005439 # 1-31-65 9082 -> 00005782 # 1-31-66 9083 -> 00005E25 # 1-31-67 9084 -> 000063A8 # 1-31-68 9085 -> 00006C34 # 1-31-69 9086 -> 0000708A # 1-31-70 9087 -> 00007761 # 1-31-71 9088 -> 00007C8B # 1-31-72 9089 -> 00007FE0 # 1-31-73 908A -> 00008870 # 1-31-74 908B -> 00009042 # 1-31-75 908C -> 00009154 # 1-31-76 908D -> 00009310 # 1-31-77 908E -> 00009318 # 1-31-78 908F -> 0000968F # 1-31-79 9090 -> 0000745E # 1-31-80 9091 -> 00009AC4 # 1-31-81 9092 -> 00005D07 # 1-31-82 9093 -> 00005D69 # 1-31-83 9094 -> 00006570 # 1-31-84 9095 -> 000067A2 # 1-31-85 9096 -> 00008DA8 # 1-31-86 9097 -> 000096DB # 1-31-87 9098 -> 0000636E # 1-31-88 9099 -> 00006749 # 1-31-89 909A -> 00006919 # 1-31-90 909B -> 000083C5 # 1-31-91 909C -> 00009817 # 1-31-92 909D -> 000096C0 # 1-31-93 909E -> 000088FE # 1-31-94 909F -> 00006F84 # 1-32-1 90A0 -> 0000647A # 1-32-2 90A1 -> 00005BF8 # 1-32-3 90A2 -> 00004E16 # 1-32-4 90A3 -> 0000702C # 1-32-5 90A4 -> 0000755D # 1-32-6 90A5 -> 0000662F # 1-32-7 90A6 -> 000051C4 # 1-32-8 90A7 -> 00005236 # 1-32-9 90A8 -> 000052E2 # 1-32-10 90A9 -> 000059D3 # 1-32-11 90AA -> 00005F81 # 1-32-12 90AB -> 00006027 # 1-32-13 90AC -> 00006210 # 1-32-14 90AD -> 0000653F # 1-32-15 90AE -> 00006574 # 1-32-16 90AF -> 0000661F # 1-32-17 90B0 -> 00006674 # 1-32-18 90B1 -> 000068F2 # 1-32-19 90B2 -> 00006816 # 1-32-20 90B3 -> 00006B63 # 1-32-21 90B4 -> 00006E05 # 1-32-22 90B5 -> 00007272 # 1-32-23 90B6 -> 0000751F # 1-32-24 90B7 -> 000076DB # 1-32-25 90B8 -> 00007CBE # 1-32-26 90B9 -> 00008056 # 1-32-27 90BA -> 000058F0 # 1-32-28 90BB -> 000088FD # 1-32-29 90BC -> 0000897F # 1-32-30 90BD -> 00008AA0 # 1-32-31 90BE -> 00008A93 # 1-32-32 90BF -> 00008ACB # 1-32-33 90C0 -> 0000901D # 1-32-34 90C1 -> 00009192 # 1-32-35 90C2 -> 00009752 # 1-32-36 90C3 -> 00009759 # 1-32-37 90C4 -> 00006589 # 1-32-38 90C5 -> 00007A0E # 1-32-39 90C6 -> 00008106 # 1-32-40 90C7 -> 000096BB # 1-32-41 90C8 -> 00005E2D # 1-32-42 90C9 -> 000060DC # 1-32-43 90CA -> 0000621A # 1-32-44 90CB -> 000065A5 # 1-32-45 90CC -> 00006614 # 1-32-46 90CD -> 00006790 # 1-32-47 90CE -> 000077F3 # 1-32-48 90CF -> 00007A4D # 1-32-49 90D0 -> 00007C4D # 1-32-50 90D1 -> 00007E3E # 1-32-51 90D2 -> 0000810A # 1-32-52 90D3 -> 00008CAC # 1-32-53 90D4 -> 00008D64 # 1-32-54 90D5 -> 00008DE1 # 1-32-55 90D6 -> 00008E5F # 1-32-56 90D7 -> 000078A9 # 1-32-57 90D8 -> 00005207 # 1-32-58 90D9 -> 000062D9 # 1-32-59 90DA -> 000063A5 # 1-32-60 90DB -> 00006442 # 1-32-61 90DC -> 00006298 # 1-32-62 90DD -> 00008A2D # 1-32-63 90DE -> 00007A83 # 1-32-64 90DF -> 00007BC0 # 1-32-65 90E0 -> 00008AAC # 1-32-66 90E1 -> 000096EA # 1-32-67 90E2 -> 00007D76 # 1-32-68 90E3 -> 0000820C # 1-32-69 90E4 -> 00008749 # 1-32-70 90E5 -> 00004ED9 # 1-32-71 90E6 -> 00005148 # 1-32-72 90E7 -> 00005343 # 1-32-73 90E8 -> 00005360 # 1-32-74 90E9 -> 00005BA3 # 1-32-75 90EA -> 00005C02 # 1-32-76 90EB -> 00005C16 # 1-32-77 90EC -> 00005DDD # 1-32-78 90ED -> 00006226 # 1-32-79 90EE -> 00006247 # 1-32-80 90EF -> 000064B0 # 1-32-81 90F0 -> 00006813 # 1-32-82 90F1 -> 00006834 # 1-32-83 90F2 -> 00006CC9 # 1-32-84 90F3 -> 00006D45 # 1-32-85 90F4 -> 00006D17 # 1-32-86 90F5 -> 000067D3 # 1-32-87 90F6 -> 00006F5C # 1-32-88 90F7 -> 0000714E # 1-32-89 90F8 -> 0000717D # 1-32-90 90F9 -> 000065CB # 1-32-91 90FA -> 00007A7F # 1-32-92 90FB -> 00007BAD # 1-32-93 90FC -> 00007DDA # 1-32-94 9140 -> 00007E4A # 1-33-1 9141 -> 00007FA8 # 1-33-2 9142 -> 0000817A # 1-33-3 9143 -> 0000821B # 1-33-4 9144 -> 00008239 # 1-33-5 9145 -> 000085A6 # 1-33-6 9146 -> 00008A6E # 1-33-7 9147 -> 00008CCE # 1-33-8 9148 -> 00008DF5 # 1-33-9 9149 -> 00009078 # 1-33-10 914A -> 00009077 # 1-33-11 914B -> 000092AD # 1-33-12 914C -> 00009291 # 1-33-13 914D -> 00009583 # 1-33-14 914E -> 00009BAE # 1-33-15 914F -> 0000524D # 1-33-16 9150 -> 00005584 # 1-33-17 9151 -> 00006F38 # 1-33-18 9152 -> 00007136 # 1-33-19 9153 -> 00005168 # 1-33-20 9154 -> 00007985 # 1-33-21 9155 -> 00007E55 # 1-33-22 9156 -> 000081B3 # 1-33-23 9157 -> 00007CCE # 1-33-24 9158 -> 0000564C # 1-33-25 9159 -> 00005851 # 1-33-26 915A -> 00005CA8 # 1-33-27 915B -> 000063AA # 1-33-28 915C -> 000066FE # 1-33-29 915D -> 000066FD # 1-33-30 915E -> 0000695A # 1-33-31 915F -> 000072D9 # 1-33-32 9160 -> 0000758F # 1-33-33 9161 -> 0000758E # 1-33-34 9162 -> 0000790E # 1-33-35 9163 -> 00007956 # 1-33-36 9164 -> 000079DF # 1-33-37 9165 -> 00007C97 # 1-33-38 9166 -> 00007D20 # 1-33-39 9167 -> 00007D44 # 1-33-40 9168 -> 00008607 # 1-33-41 9169 -> 00008A34 # 1-33-42 916A -> 0000963B # 1-33-43 916B -> 00009061 # 1-33-44 916C -> 00009F20 # 1-33-45 916D -> 000050E7 # 1-33-46 916E -> 00005275 # 1-33-47 916F -> 000053CC # 1-33-48 9170 -> 000053E2 # 1-33-49 9171 -> 00005009 # 1-33-50 9172 -> 000055AA # 1-33-51 9173 -> 000058EE # 1-33-52 9174 -> 0000594F # 1-33-53 9175 -> 0000723D # 1-33-54 9176 -> 00005B8B # 1-33-55 9177 -> 00005C64 # 1-33-56 9178 -> 0000531D # 1-33-57 9179 -> 000060E3 # 1-33-58 917A -> 000060F3 # 1-33-59 917B -> 0000635C # 1-33-60 917C -> 00006383 # 1-33-61 917D -> 0000633F # 1-33-62 917E -> 000063BB # 1-33-63 9180 -> 000064CD # 1-33-64 9181 -> 000065E9 # 1-33-65 9182 -> 000066F9 # 1-33-66 9183 -> 00005DE3 # 1-33-67 9184 -> 000069CD # 1-33-68 9185 -> 000069FD # 1-33-69 9186 -> 00006F15 # 1-33-70 9187 -> 000071E5 # 1-33-71 9188 -> 00004E89 # 1-33-72 9189 -> 000075E9 # 1-33-73 918A -> 000076F8 # 1-33-74 918B -> 00007A93 # 1-33-75 918C -> 00007CDF # 1-33-76 918D -> 00007DCF # 1-33-77 918E -> 00007D9C # 1-33-78 918F -> 00008061 # 1-33-79 9190 -> 00008349 # 1-33-80 9191 -> 00008358 # 1-33-81 9192 -> 0000846C # 1-33-82 9193 -> 000084BC # 1-33-83 9194 -> 000085FB # 1-33-84 9195 -> 000088C5 # 1-33-85 9196 -> 00008D70 # 1-33-86 9197 -> 00009001 # 1-33-87 9198 -> 0000906D # 1-33-88 9199 -> 00009397 # 1-33-89 919A -> 0000971C # 1-33-90 919B -> 00009A12 # 1-33-91 919C -> 000050CF # 1-33-92 919D -> 00005897 # 1-33-93 919E -> 0000618E # 1-33-94 919F -> 000081D3 # 1-34-1 91A0 -> 00008535 # 1-34-2 91A1 -> 00008D08 # 1-34-3 91A2 -> 00009020 # 1-34-4 91A3 -> 00004FC3 # 1-34-5 91A4 -> 00005074 # 1-34-6 91A5 -> 00005247 # 1-34-7 91A6 -> 00005373 # 1-34-8 91A7 -> 0000606F # 1-34-9 91A8 -> 00006349 # 1-34-10 91A9 -> 0000675F # 1-34-11 91AA -> 00006E2C # 1-34-12 91AB -> 00008DB3 # 1-34-13 91AC -> 0000901F # 1-34-14 91AD -> 00004FD7 # 1-34-15 91AE -> 00005C5E # 1-34-16 91AF -> 00008CCA # 1-34-17 91B0 -> 000065CF # 1-34-18 91B1 -> 00007D9A # 1-34-19 91B2 -> 00005352 # 1-34-20 91B3 -> 00008896 # 1-34-21 91B4 -> 00005176 # 1-34-22 91B5 -> 000063C3 # 1-34-23 91B6 -> 00005B58 # 1-34-24 91B7 -> 00005B6B # 1-34-25 91B8 -> 00005C0A # 1-34-26 91B9 -> 0000640D # 1-34-27 91BA -> 00006751 # 1-34-28 91BB -> 0000905C # 1-34-29 91BC -> 00004ED6 # 1-34-30 91BD -> 0000591A # 1-34-31 91BE -> 0000592A # 1-34-32 91BF -> 00006C70 # 1-34-33 91C0 -> 00008A51 # 1-34-34 91C1 -> 0000553E # 1-34-35 91C2 -> 00005815 # 1-34-36 91C3 -> 000059A5 # 1-34-37 91C4 -> 000060F0 # 1-34-38 91C5 -> 00006253 # 1-34-39 91C6 -> 000067C1 # 1-34-40 91C7 -> 00008235 # 1-34-41 91C8 -> 00006955 # 1-34-42 91C9 -> 00009640 # 1-34-43 91CA -> 000099C4 # 1-34-44 91CB -> 00009A28 # 1-34-45 91CC -> 00004F53 # 1-34-46 91CD -> 00005806 # 1-34-47 91CE -> 00005BFE # 1-34-48 91CF -> 00008010 # 1-34-49 91D0 -> 00005CB1 # 1-34-50 91D1 -> 00005E2F # 1-34-51 91D2 -> 00005F85 # 1-34-52 91D3 -> 00006020 # 1-34-53 91D4 -> 0000614B # 1-34-54 91D5 -> 00006234 # 1-34-55 91D6 -> 000066FF # 1-34-56 91D7 -> 00006CF0 # 1-34-57 91D8 -> 00006EDE # 1-34-58 91D9 -> 000080CE # 1-34-59 91DA -> 0000817F # 1-34-60 91DB -> 000082D4 # 1-34-61 91DC -> 0000888B # 1-34-62 91DD -> 00008CB8 # 1-34-63 91DE -> 00009000 # 1-34-64 91DF -> 0000902E # 1-34-65 91E0 -> 0000968A # 1-34-66 91E1 -> 00009EDB # 1-34-67 91E2 -> 00009BDB # 1-34-68 91E3 -> 00004EE3 # 1-34-69 91E4 -> 000053F0 # 1-34-70 91E5 -> 00005927 # 1-34-71 91E6 -> 00007B2C # 1-34-72 91E7 -> 0000918D # 1-34-73 91E8 -> 0000984C # 1-34-74 91E9 -> 00009DF9 # 1-34-75 91EA -> 00006EDD # 1-34-76 91EB -> 00007027 # 1-34-77 91EC -> 00005353 # 1-34-78 91ED -> 00005544 # 1-34-79 91EE -> 00005B85 # 1-34-80 91EF -> 00006258 # 1-34-81 91F0 -> 0000629E # 1-34-82 91F1 -> 000062D3 # 1-34-83 91F2 -> 00006CA2 # 1-34-84 91F3 -> 00006FEF # 1-34-85 91F4 -> 00007422 # 1-34-86 91F5 -> 00008A17 # 1-34-87 91F6 -> 00009438 # 1-34-88 91F7 -> 00006FC1 # 1-34-89 91F8 -> 00008AFE # 1-34-90 91F9 -> 00008338 # 1-34-91 91FA -> 000051E7 # 1-34-92 91FB -> 000086F8 # 1-34-93 91FC -> 000053EA # 1-34-94 9240 -> 000053E9 # 1-35-1 9241 -> 00004F46 # 1-35-2 9242 -> 00009054 # 1-35-3 9243 -> 00008FB0 # 1-35-4 9244 -> 0000596A # 1-35-5 9245 -> 00008131 # 1-35-6 9246 -> 00005DFD # 1-35-7 9247 -> 00007AEA # 1-35-8 9248 -> 00008FBF # 1-35-9 9249 -> 000068DA # 1-35-10 924A -> 00008C37 # 1-35-11 924B -> 000072F8 # 1-35-12 924C -> 00009C48 # 1-35-13 924D -> 00006A3D # 1-35-14 924E -> 00008AB0 # 1-35-15 924F -> 00004E39 # 1-35-16 9250 -> 00005358 # 1-35-17 9251 -> 00005606 # 1-35-18 9252 -> 00005766 # 1-35-19 9253 -> 000062C5 # 1-35-20 9254 -> 000063A2 # 1-35-21 9255 -> 000065E6 # 1-35-22 9256 -> 00006B4E # 1-35-23 9257 -> 00006DE1 # 1-35-24 9258 -> 00006E5B # 1-35-25 9259 -> 000070AD # 1-35-26 925A -> 000077ED # 1-35-27 925B -> 00007AEF # 1-35-28 925C -> 00007BAA # 1-35-29 925D -> 00007DBB # 1-35-30 925E -> 0000803D # 1-35-31 925F -> 000080C6 # 1-35-32 9260 -> 000086CB # 1-35-33 9261 -> 00008A95 # 1-35-34 9262 -> 0000935B # 1-35-35 9263 -> 000056E3 # 1-35-36 9264 -> 000058C7 # 1-35-37 9265 -> 00005F3E # 1-35-38 9266 -> 000065AD # 1-35-39 9267 -> 00006696 # 1-35-40 9268 -> 00006A80 # 1-35-41 9269 -> 00006BB5 # 1-35-42 926A -> 00007537 # 1-35-43 926B -> 00008AC7 # 1-35-44 926C -> 00005024 # 1-35-45 926D -> 000077E5 # 1-35-46 926E -> 00005730 # 1-35-47 926F -> 00005F1B # 1-35-48 9270 -> 00006065 # 1-35-49 9271 -> 0000667A # 1-35-50 9272 -> 00006C60 # 1-35-51 9273 -> 000075F4 # 1-35-52 9274 -> 00007A1A # 1-35-53 9275 -> 00007F6E # 1-35-54 9276 -> 000081F4 # 1-35-55 9277 -> 00008718 # 1-35-56 9278 -> 00009045 # 1-35-57 9279 -> 000099B3 # 1-35-58 927A -> 00007BC9 # 1-35-59 927B -> 0000755C # 1-35-60 927C -> 00007AF9 # 1-35-61 927D -> 00007B51 # 1-35-62 927E -> 000084C4 # 1-35-63 9280 -> 00009010 # 1-35-64 9281 -> 000079E9 # 1-35-65 9282 -> 00007A92 # 1-35-66 9283 -> 00008336 # 1-35-67 9284 -> 00005AE1 # 1-35-68 9285 -> 00007740 # 1-35-69 9286 -> 00004E2D # 1-35-70 9287 -> 00004EF2 # 1-35-71 9288 -> 00005B99 # 1-35-72 9289 -> 00005FE0 # 1-35-73 928A -> 000062BD # 1-35-74 928B -> 0000663C # 1-35-75 928C -> 000067F1 # 1-35-76 928D -> 00006CE8 # 1-35-77 928E -> 0000866B # 1-35-78 928F -> 00008877 # 1-35-79 9290 -> 00008A3B # 1-35-80 9291 -> 0000914E # 1-35-81 9292 -> 000092F3 # 1-35-82 9293 -> 000099D0 # 1-35-83 9294 -> 00006A17 # 1-35-84 9295 -> 00007026 # 1-35-85 9296 -> 0000732A # 1-35-86 9297 -> 000082E7 # 1-35-87 9298 -> 00008457 # 1-35-88 9299 -> 00008CAF # 1-35-89 929A -> 00004E01 # 1-35-90 929B -> 00005146 # 1-35-91 929C -> 000051CB # 1-35-92 929D -> 0000558B # 1-35-93 929E -> 00005BF5 # 1-35-94 929F -> 00005E16 # 1-36-1 92A0 -> 00005E33 # 1-36-2 92A1 -> 00005E81 # 1-36-3 92A2 -> 00005F14 # 1-36-4 92A3 -> 00005F35 # 1-36-5 92A4 -> 00005F6B # 1-36-6 92A5 -> 00005FB4 # 1-36-7 92A6 -> 000061F2 # 1-36-8 92A7 -> 00006311 # 1-36-9 92A8 -> 000066A2 # 1-36-10 92A9 -> 0000671D # 1-36-11 92AA -> 00006F6E # 1-36-12 92AB -> 00007252 # 1-36-13 92AC -> 0000753A # 1-36-14 92AD -> 0000773A # 1-36-15 92AE -> 00008074 # 1-36-16 92AF -> 00008139 # 1-36-17 92B0 -> 00008178 # 1-36-18 92B1 -> 00008776 # 1-36-19 92B2 -> 00008ABF # 1-36-20 92B3 -> 00008ADC # 1-36-21 92B4 -> 00008D85 # 1-36-22 92B5 -> 00008DF3 # 1-36-23 92B6 -> 0000929A # 1-36-24 92B7 -> 00009577 # 1-36-25 92B8 -> 00009802 # 1-36-26 92B9 -> 00009CE5 # 1-36-27 92BA -> 000052C5 # 1-36-28 92BB -> 00006357 # 1-36-29 92BC -> 000076F4 # 1-36-30 92BD -> 00006715 # 1-36-31 92BE -> 00006C88 # 1-36-32 92BF -> 000073CD # 1-36-33 92C0 -> 00008CC3 # 1-36-34 92C1 -> 000093AE # 1-36-35 92C2 -> 00009673 # 1-36-36 92C3 -> 00006D25 # 1-36-37 92C4 -> 0000589C # 1-36-38 92C5 -> 0000690E # 1-36-39 92C6 -> 000069CC # 1-36-40 92C7 -> 00008FFD # 1-36-41 92C8 -> 0000939A # 1-36-42 92C9 -> 000075DB # 1-36-43 92CA -> 0000901A # 1-36-44 92CB -> 0000585A # 1-36-45 92CC -> 00006802 # 1-36-46 92CD -> 000063B4 # 1-36-47 92CE -> 000069FB # 1-36-48 92CF -> 00004F43 # 1-36-49 92D0 -> 00006F2C # 1-36-50 92D1 -> 000067D8 # 1-36-51 92D2 -> 00008FBB # 1-36-52 92D3 -> 00008526 # 1-36-53 92D4 -> 00007DB4 # 1-36-54 92D5 -> 00009354 # 1-36-55 92D6 -> 0000693F # 1-36-56 92D7 -> 00006F70 # 1-36-57 92D8 -> 0000576A # 1-36-58 92D9 -> 000058F7 # 1-36-59 92DA -> 00005B2C # 1-36-60 92DB -> 00007D2C # 1-36-61 92DC -> 0000722A # 1-36-62 92DD -> 0000540A # 1-36-63 92DE -> 000091E3 # 1-36-64 92DF -> 00009DB4 # 1-36-65 92E0 -> 00004EAD # 1-36-66 92E1 -> 00004F4E # 1-36-67 92E2 -> 0000505C # 1-36-68 92E3 -> 00005075 # 1-36-69 92E4 -> 00005243 # 1-36-70 92E5 -> 00008C9E # 1-36-71 92E6 -> 00005448 # 1-36-72 92E7 -> 00005824 # 1-36-73 92E8 -> 00005B9A # 1-36-74 92E9 -> 00005E1D # 1-36-75 92EA -> 00005E95 # 1-36-76 92EB -> 00005EAD # 1-36-77 92EC -> 00005EF7 # 1-36-78 92ED -> 00005F1F # 1-36-79 92EE -> 0000608C # 1-36-80 92EF -> 000062B5 # 1-36-81 92F0 -> 0000633A # 1-36-82 92F1 -> 000063D0 # 1-36-83 92F2 -> 000068AF # 1-36-84 92F3 -> 00006C40 # 1-36-85 92F4 -> 00007887 # 1-36-86 92F5 -> 0000798E # 1-36-87 92F6 -> 00007A0B # 1-36-88 92F7 -> 00007DE0 # 1-36-89 92F8 -> 00008247 # 1-36-90 92F9 -> 00008A02 # 1-36-91 92FA -> 00008AE6 # 1-36-92 92FB -> 00008E44 # 1-36-93 92FC -> 00009013 # 1-36-94 9340 -> 000090B8 # 1-37-1 9341 -> 0000912D # 1-37-2 9342 -> 000091D8 # 1-37-3 9343 -> 00009F0E # 1-37-4 9344 -> 00006CE5 # 1-37-5 9345 -> 00006458 # 1-37-6 9346 -> 000064E2 # 1-37-7 9347 -> 00006575 # 1-37-8 9348 -> 00006EF4 # 1-37-9 9349 -> 00007684 # 1-37-10 934A -> 00007B1B # 1-37-11 934B -> 00009069 # 1-37-12 934C -> 000093D1 # 1-37-13 934D -> 00006EBA # 1-37-14 934E -> 000054F2 # 1-37-15 934F -> 00005FB9 # 1-37-16 9350 -> 000064A4 # 1-37-17 9351 -> 00008F4D # 1-37-18 9352 -> 00008FED # 1-37-19 9353 -> 00009244 # 1-37-20 9354 -> 00005178 # 1-37-21 9355 -> 0000586B # 1-37-22 9356 -> 00005929 # 1-37-23 9357 -> 00005C55 # 1-37-24 9358 -> 00005E97 # 1-37-25 9359 -> 00006DFB # 1-37-26 935A -> 00007E8F # 1-37-27 935B -> 0000751C # 1-37-28 935C -> 00008CBC # 1-37-29 935D -> 00008EE2 # 1-37-30 935E -> 0000985B # 1-37-31 935F -> 000070B9 # 1-37-32 9360 -> 00004F1D # 1-37-33 9361 -> 00006BBF # 1-37-34 9362 -> 00006FB1 # 1-37-35 9363 -> 00007530 # 1-37-36 9364 -> 000096FB # 1-37-37 9365 -> 0000514E # 1-37-38 9366 -> 00005410 # 1-37-39 9367 -> 00005835 # 1-37-40 9368 -> 00005857 # 1-37-41 9369 -> 000059AC # 1-37-42 936A -> 00005C60 # 1-37-43 936B -> 00005F92 # 1-37-44 936C -> 00006597 # 1-37-45 936D -> 0000675C # 1-37-46 936E -> 00006E21 # 1-37-47 936F -> 0000767B # 1-37-48 9370 -> 000083DF # 1-37-49 9371 -> 00008CED # 1-37-50 9372 -> 00009014 # 1-37-51 9373 -> 000090FD # 1-37-52 9374 -> 0000934D # 1-37-53 9375 -> 00007825 # 1-37-54 9376 -> 0000783A # 1-37-55 9377 -> 000052AA # 1-37-56 9378 -> 00005EA6 # 1-37-57 9379 -> 0000571F # 1-37-58 937A -> 00005974 # 1-37-59 937B -> 00006012 # 1-37-60 937C -> 00005012 # 1-37-61 937D -> 0000515A # 1-37-62 937E -> 000051AC # 1-37-63 9380 -> 000051CD # 1-37-64 9381 -> 00005200 # 1-37-65 9382 -> 00005510 # 1-37-66 9383 -> 00005854 # 1-37-67 9384 -> 00005858 # 1-37-68 9385 -> 00005957 # 1-37-69 9386 -> 00005B95 # 1-37-70 9387 -> 00005CF6 # 1-37-71 9388 -> 00005D8B # 1-37-72 9389 -> 000060BC # 1-37-73 938A -> 00006295 # 1-37-74 938B -> 0000642D # 1-37-75 938C -> 00006771 # 1-37-76 938D -> 00006843 # 1-37-77 938E -> 000068BC # 1-37-78 938F -> 000068DF # 1-37-79 9390 -> 000076D7 # 1-37-80 9391 -> 00006DD8 # 1-37-81 9392 -> 00006E6F # 1-37-82 9393 -> 00006D9B # 1-37-83 9394 -> 0000706F # 1-37-84 9395 -> 000071C8 # 1-37-85 9396 -> 00005F53 # 1-37-86 9397 -> 000075D8 # 1-37-87 9398 -> 00007977 # 1-37-88 9399 -> 00007B49 # 1-37-89 939A -> 00007B54 # 1-37-90 939B -> 00007B52 # 1-37-91 939C -> 00007CD6 # 1-37-92 939D -> 00007D71 # 1-37-93 939E -> 00005230 # 1-37-94 939F -> 00008463 # 1-38-1 93A0 -> 00008569 # 1-38-2 93A1 -> 000085E4 # 1-38-3 93A2 -> 00008A0E # 1-38-4 93A3 -> 00008B04 # 1-38-5 93A4 -> 00008C46 # 1-38-6 93A5 -> 00008E0F # 1-38-7 93A6 -> 00009003 # 1-38-8 93A7 -> 0000900F # 1-38-9 93A8 -> 00009419 # 1-38-10 93A9 -> 00009676 # 1-38-11 93AA -> 0000982D # 1-38-12 93AB -> 00009A30 # 1-38-13 93AC -> 000095D8 # 1-38-14 93AD -> 000050CD # 1-38-15 93AE -> 000052D5 # 1-38-16 93AF -> 0000540C # 1-38-17 93B0 -> 00005802 # 1-38-18 93B1 -> 00005C0E # 1-38-19 93B2 -> 000061A7 # 1-38-20 93B3 -> 0000649E # 1-38-21 93B4 -> 00006D1E # 1-38-22 93B5 -> 000077B3 # 1-38-23 93B6 -> 00007AE5 # 1-38-24 93B7 -> 000080F4 # 1-38-25 93B8 -> 00008404 # 1-38-26 93B9 -> 00009053 # 1-38-27 93BA -> 00009285 # 1-38-28 93BB -> 00005CE0 # 1-38-29 93BC -> 00009D07 # 1-38-30 93BD -> 0000533F # 1-38-31 93BE -> 00005F97 # 1-38-32 93BF -> 00005FB3 # 1-38-33 93C0 -> 00006D9C # 1-38-34 93C1 -> 00007279 # 1-38-35 93C2 -> 00007763 # 1-38-36 93C3 -> 000079BF # 1-38-37 93C4 -> 00007BE4 # 1-38-38 93C5 -> 00006BD2 # 1-38-39 93C6 -> 000072EC # 1-38-40 93C7 -> 00008AAD # 1-38-41 93C8 -> 00006803 # 1-38-42 93C9 -> 00006A61 # 1-38-43 93CA -> 000051F8 # 1-38-44 93CB -> 00007A81 # 1-38-45 93CC -> 00006934 # 1-38-46 93CD -> 00005C4A # 1-38-47 93CE -> 00009CF6 # 1-38-48 93CF -> 000082EB # 1-38-49 93D0 -> 00005BC5 # 1-38-50 93D1 -> 00009149 # 1-38-51 93D2 -> 0000701E # 1-38-52 93D3 -> 00005678 # 1-38-53 93D4 -> 00005C6F # 1-38-54 93D5 -> 000060C7 # 1-38-55 93D6 -> 00006566 # 1-38-56 93D7 -> 00006C8C # 1-38-57 93D8 -> 00008C5A # 1-38-58 93D9 -> 00009041 # 1-38-59 93DA -> 00009813 # 1-38-60 93DB -> 00005451 # 1-38-61 93DC -> 000066C7 # 1-38-62 93DD -> 0000920D # 1-38-63 93DE -> 00005948 # 1-38-64 93DF -> 000090A3 # 1-38-65 93E0 -> 00005185 # 1-38-66 93E1 -> 00004E4D # 1-38-67 93E2 -> 000051EA # 1-38-68 93E3 -> 00008599 # 1-38-69 93E4 -> 00008B0E # 1-38-70 93E5 -> 00007058 # 1-38-71 93E6 -> 0000637A # 1-38-72 93E7 -> 0000934B # 1-38-73 93E8 -> 00006962 # 1-38-74 93E9 -> 000099B4 # 1-38-75 93EA -> 00007E04 # 1-38-76 93EB -> 00007577 # 1-38-77 93EC -> 00005357 # 1-38-78 93ED -> 00006960 # 1-38-79 93EE -> 00008EDF # 1-38-80 93EF -> 000096E3 # 1-38-81 93F0 -> 00006C5D # 1-38-82 93F1 -> 00004E8C # 1-38-83 93F2 -> 00005C3C # 1-38-84 93F3 -> 00005F10 # 1-38-85 93F4 -> 00008FE9 # 1-38-86 93F5 -> 00005302 # 1-38-87 93F6 -> 00008CD1 # 1-38-88 93F7 -> 00008089 # 1-38-89 93F8 -> 00008679 # 1-38-90 93F9 -> 00005EFF # 1-38-91 93FA -> 000065E5 # 1-38-92 93FB -> 00004E73 # 1-38-93 93FC -> 00005165 # 1-38-94 9440 -> 00005982 # 1-39-1 9441 -> 00005C3F # 1-39-2 9442 -> 000097EE # 1-39-3 9443 -> 00004EFB # 1-39-4 9444 -> 0000598A # 1-39-5 9445 -> 00005FCD # 1-39-6 9446 -> 00008A8D # 1-39-7 9447 -> 00006FE1 # 1-39-8 9448 -> 000079B0 # 1-39-9 9449 -> 00007962 # 1-39-10 944A -> 00005BE7 # 1-39-11 944B -> 00008471 # 1-39-12 944C -> 0000732B # 1-39-13 944D -> 000071B1 # 1-39-14 944E -> 00005E74 # 1-39-15 944F -> 00005FF5 # 1-39-16 9450 -> 0000637B # 1-39-17 9451 -> 0000649A # 1-39-18 9452 -> 000071C3 # 1-39-19 9453 -> 00007C98 # 1-39-20 9454 -> 00004E43 # 1-39-21 9455 -> 00005EFC # 1-39-22 9456 -> 00004E4B # 1-39-23 9457 -> 000057DC # 1-39-24 9458 -> 000056A2 # 1-39-25 9459 -> 000060A9 # 1-39-26 945A -> 00006FC3 # 1-39-27 945B -> 00007D0D # 1-39-28 945C -> 000080FD # 1-39-29 945D -> 00008133 # 1-39-30 945E -> 000081BF # 1-39-31 945F -> 00008FB2 # 1-39-32 9460 -> 00008997 # 1-39-33 9461 -> 000086A4 # 1-39-34 9462 -> 00005DF4 # 1-39-35 9463 -> 0000628A # 1-39-36 9464 -> 000064AD # 1-39-37 9465 -> 00008987 # 1-39-38 9466 -> 00006777 # 1-39-39 9467 -> 00006CE2 # 1-39-40 9468 -> 00006D3E # 1-39-41 9469 -> 00007436 # 1-39-42 946A -> 00007834 # 1-39-43 946B -> 00005A46 # 1-39-44 946C -> 00007F75 # 1-39-45 946D -> 000082AD # 1-39-46 946E -> 000099AC # 1-39-47 946F -> 00004FF3 # 1-39-48 9470 -> 00005EC3 # 1-39-49 9471 -> 000062DD # 1-39-50 9472 -> 00006392 # 1-39-51 9473 -> 00006557 # 1-39-52 9474 -> 0000676F # 1-39-53 9475 -> 000076C3 # 1-39-54 9476 -> 0000724C # 1-39-55 9477 -> 000080CC # 1-39-56 9478 -> 000080BA # 1-39-57 9479 -> 00008F29 # 1-39-58 947A -> 0000914D # 1-39-59 947B -> 0000500D # 1-39-60 947C -> 000057F9 # 1-39-61 947D -> 00005A92 # 1-39-62 947E -> 00006885 # 1-39-63 9480 -> 00006973 # 1-39-64 9481 -> 00007164 # 1-39-65 9482 -> 000072FD # 1-39-66 9483 -> 00008CB7 # 1-39-67 9484 -> 000058F2 # 1-39-68 9485 -> 00008CE0 # 1-39-69 9486 -> 0000966A # 1-39-70 9487 -> 00009019 # 1-39-71 9488 -> 0000877F # 1-39-72 9489 -> 000079E4 # 1-39-73 948A -> 000077E7 # 1-39-74 948B -> 00008429 # 1-39-75 948C -> 00004F2F # 1-39-76 948D -> 00005265 # 1-39-77 948E -> 0000535A # 1-39-78 948F -> 000062CD # 1-39-79 9490 -> 000067CF # 1-39-80 9491 -> 00006CCA # 1-39-81 9492 -> 0000767D # 1-39-82 9493 -> 00007B94 # 1-39-83 9494 -> 00007C95 # 1-39-84 9495 -> 00008236 # 1-39-85 9496 -> 00008584 # 1-39-86 9497 -> 00008FEB # 1-39-87 9498 -> 000066DD # 1-39-88 9499 -> 00006F20 # 1-39-89 949A -> 00007206 # 1-39-90 949B -> 00007E1B # 1-39-91 949C -> 000083AB # 1-39-92 949D -> 000099C1 # 1-39-93 949E -> 00009EA6 # 1-39-94 949F -> 000051FD # 1-40-1 94A0 -> 00007BB1 # 1-40-2 94A1 -> 00007872 # 1-40-3 94A2 -> 00007BB8 # 1-40-4 94A3 -> 00008087 # 1-40-5 94A4 -> 00007B48 # 1-40-6 94A5 -> 00006AE8 # 1-40-7 94A6 -> 00005E61 # 1-40-8 94A7 -> 0000808C # 1-40-9 94A8 -> 00007551 # 1-40-10 94A9 -> 00007560 # 1-40-11 94AA -> 0000516B # 1-40-12 94AB -> 00009262 # 1-40-13 94AC -> 00006E8C # 1-40-14 94AD -> 0000767A # 1-40-15 94AE -> 00009197 # 1-40-16 94AF -> 00009AEA # 1-40-17 94B0 -> 00004F10 # 1-40-18 94B1 -> 00007F70 # 1-40-19 94B2 -> 0000629C # 1-40-20 94B3 -> 00007B4F # 1-40-21 94B4 -> 000095A5 # 1-40-22 94B5 -> 00009CE9 # 1-40-23 94B6 -> 0000567A # 1-40-24 94B7 -> 00005859 # 1-40-25 94B8 -> 000086E4 # 1-40-26 94B9 -> 000096BC # 1-40-27 94BA -> 00004F34 # 1-40-28 94BB -> 00005224 # 1-40-29 94BC -> 0000534A # 1-40-30 94BD -> 000053CD # 1-40-31 94BE -> 000053DB # 1-40-32 94BF -> 00005E06 # 1-40-33 94C0 -> 0000642C # 1-40-34 94C1 -> 00006591 # 1-40-35 94C2 -> 0000677F # 1-40-36 94C3 -> 00006C3E # 1-40-37 94C4 -> 00006C4E # 1-40-38 94C5 -> 00007248 # 1-40-39 94C6 -> 000072AF # 1-40-40 94C7 -> 000073ED # 1-40-41 94C8 -> 00007554 # 1-40-42 94C9 -> 00007E41 # 1-40-43 94CA -> 0000822C # 1-40-44 94CB -> 000085E9 # 1-40-45 94CC -> 00008CA9 # 1-40-46 94CD -> 00007BC4 # 1-40-47 94CE -> 000091C6 # 1-40-48 94CF -> 00007169 # 1-40-49 94D0 -> 00009812 # 1-40-50 94D1 -> 000098EF # 1-40-51 94D2 -> 0000633D # 1-40-52 94D3 -> 00006669 # 1-40-53 94D4 -> 0000756A # 1-40-54 94D5 -> 000076E4 # 1-40-55 94D6 -> 000078D0 # 1-40-56 94D7 -> 00008543 # 1-40-57 94D8 -> 000086EE # 1-40-58 94D9 -> 0000532A # 1-40-59 94DA -> 00005351 # 1-40-60 94DB -> 00005426 # 1-40-61 94DC -> 00005983 # 1-40-62 94DD -> 00005E87 # 1-40-63 94DE -> 00005F7C # 1-40-64 94DF -> 000060B2 # 1-40-65 94E0 -> 00006249 # 1-40-66 94E1 -> 00006279 # 1-40-67 94E2 -> 000062AB # 1-40-68 94E3 -> 00006590 # 1-40-69 94E4 -> 00006BD4 # 1-40-70 94E5 -> 00006CCC # 1-40-71 94E6 -> 000075B2 # 1-40-72 94E7 -> 000076AE # 1-40-73 94E8 -> 00007891 # 1-40-74 94E9 -> 000079D8 # 1-40-75 94EA -> 00007DCB # 1-40-76 94EB -> 00007F77 # 1-40-77 94EC -> 000080A5 # 1-40-78 94ED -> 000088AB # 1-40-79 94EE -> 00008AB9 # 1-40-80 94EF -> 00008CBB # 1-40-81 94F0 -> 0000907F # 1-40-82 94F1 -> 0000975E # 1-40-83 94F2 -> 000098DB # 1-40-84 94F3 -> 00006A0B # 1-40-85 94F4 -> 00007C38 # 1-40-86 94F5 -> 00005099 # 1-40-87 94F6 -> 00005C3E # 1-40-88 94F7 -> 00005FAE # 1-40-89 94F8 -> 00006787 # 1-40-90 94F9 -> 00006BD8 # 1-40-91 94FA -> 00007435 # 1-40-92 94FB -> 00007709 # 1-40-93 94FC -> 00007F8E # 1-40-94 9540 -> 00009F3B # 1-41-1 9541 -> 000067CA # 1-41-2 9542 -> 00007A17 # 1-41-3 9543 -> 00005339 # 1-41-4 9544 -> 0000758B # 1-41-5 9545 -> 00009AED # 1-41-6 9546 -> 00005F66 # 1-41-7 9547 -> 0000819D # 1-41-8 9548 -> 000083F1 # 1-41-9 9549 -> 00008098 # 1-41-10 954A -> 00005F3C # 1-41-11 954B -> 00005FC5 # 1-41-12 954C -> 00007562 # 1-41-13 954D -> 00007B46 # 1-41-14 954E -> 0000903C # 1-41-15 954F -> 00006867 # 1-41-16 9550 -> 000059EB # 1-41-17 9551 -> 00005A9B # 1-41-18 9552 -> 00007D10 # 1-41-19 9553 -> 0000767E # 1-41-20 9554 -> 00008B2C # 1-41-21 9555 -> 00004FF5 # 1-41-22 9556 -> 00005F6A # 1-41-23 9557 -> 00006A19 # 1-41-24 9558 -> 00006C37 # 1-41-25 9559 -> 00006F02 # 1-41-26 955A -> 000074E2 # 1-41-27 955B -> 00007968 # 1-41-28 955C -> 00008868 # 1-41-29 955D -> 00008A55 # 1-41-30 955E -> 00008C79 # 1-41-31 955F -> 00005EDF # 1-41-32 9560 -> 000063CF # 1-41-33 9561 -> 000075C5 # 1-41-34 9562 -> 000079D2 # 1-41-35 9563 -> 000082D7 # 1-41-36 9564 -> 00009328 # 1-41-37 9565 -> 000092F2 # 1-41-38 9566 -> 0000849C # 1-41-39 9567 -> 000086ED # 1-41-40 9568 -> 00009C2D # 1-41-41 9569 -> 000054C1 # 1-41-42 956A -> 00005F6C # 1-41-43 956B -> 0000658C # 1-41-44 956C -> 00006D5C # 1-41-45 956D -> 00007015 # 1-41-46 956E -> 00008CA7 # 1-41-47 956F -> 00008CD3 # 1-41-48 9570 -> 0000983B # 1-41-49 9571 -> 0000654F # 1-41-50 9572 -> 000074F6 # 1-41-51 9573 -> 00004E0D # 1-41-52 9574 -> 00004ED8 # 1-41-53 9575 -> 000057E0 # 1-41-54 9576 -> 0000592B # 1-41-55 9577 -> 00005A66 # 1-41-56 9578 -> 00005BCC # 1-41-57 9579 -> 000051A8 # 1-41-58 957A -> 00005E03 # 1-41-59 957B -> 00005E9C # 1-41-60 957C -> 00006016 # 1-41-61 957D -> 00006276 # 1-41-62 957E -> 00006577 # 1-41-63 9580 -> 000065A7 # 1-41-64 9581 -> 0000666E # 1-41-65 9582 -> 00006D6E # 1-41-66 9583 -> 00007236 # 1-41-67 9584 -> 00007B26 # 1-41-68 9585 -> 00008150 # 1-41-69 9586 -> 0000819A # 1-41-70 9587 -> 00008299 # 1-41-71 9588 -> 00008B5C # 1-41-72 9589 -> 00008CA0 # 1-41-73 958A -> 00008CE6 # 1-41-74 958B -> 00008D74 # 1-41-75 958C -> 0000961C # 1-41-76 958D -> 00009644 # 1-41-77 958E -> 00004FAE # 1-41-78 958F -> 000064AB # 1-41-79 9590 -> 00006B66 # 1-41-80 9591 -> 0000821E # 1-41-81 9592 -> 00008461 # 1-41-82 9593 -> 0000856A # 1-41-83 9594 -> 000090E8 # 1-41-84 9595 -> 00005C01 # 1-41-85 9596 -> 00006953 # 1-41-86 9597 -> 000098A8 # 1-41-87 9598 -> 0000847A # 1-41-88 9599 -> 00008557 # 1-41-89 959A -> 00004F0F # 1-41-90 959B -> 0000526F # 1-41-91 959C -> 00005FA9 # 1-41-92 959D -> 00005E45 # 1-41-93 959E -> 0000670D # 1-41-94 959F -> 0000798F # 1-42-1 95A0 -> 00008179 # 1-42-2 95A1 -> 00008907 # 1-42-3 95A2 -> 00008986 # 1-42-4 95A3 -> 00006DF5 # 1-42-5 95A4 -> 00005F17 # 1-42-6 95A5 -> 00006255 # 1-42-7 95A6 -> 00006CB8 # 1-42-8 95A7 -> 00004ECF # 1-42-9 95A8 -> 00007269 # 1-42-10 95A9 -> 00009B92 # 1-42-11 95AA -> 00005206 # 1-42-12 95AB -> 0000543B # 1-42-13 95AC -> 00005674 # 1-42-14 95AD -> 000058B3 # 1-42-15 95AE -> 000061A4 # 1-42-16 95AF -> 0000626E # 1-42-17 95B0 -> 0000711A # 1-42-18 95B1 -> 0000596E # 1-42-19 95B2 -> 00007C89 # 1-42-20 95B3 -> 00007CDE # 1-42-21 95B4 -> 00007D1B # 1-42-22 95B5 -> 000096F0 # 1-42-23 95B6 -> 00006587 # 1-42-24 95B7 -> 0000805E # 1-42-25 95B8 -> 00004E19 # 1-42-26 95B9 -> 00004F75 # 1-42-27 95BA -> 00005175 # 1-42-28 95BB -> 00005840 # 1-42-29 95BC -> 00005E63 # 1-42-30 95BD -> 00005E73 # 1-42-31 95BE -> 00005F0A # 1-42-32 95BF -> 000067C4 # 1-42-33 95C0 -> 00004E26 # 1-42-34 95C1 -> 0000853D # 1-42-35 95C2 -> 00009589 # 1-42-36 95C3 -> 0000965B # 1-42-37 95C4 -> 00007C73 # 1-42-38 95C5 -> 00009801 # 1-42-39 95C6 -> 000050FB # 1-42-40 95C7 -> 000058C1 # 1-42-41 95C8 -> 00007656 # 1-42-42 95C9 -> 000078A7 # 1-42-43 95CA -> 00005225 # 1-42-44 95CB -> 000077A5 # 1-42-45 95CC -> 00008511 # 1-42-46 95CD -> 00007B86 # 1-42-47 95CE -> 0000504F # 1-42-48 95CF -> 00005909 # 1-42-49 95D0 -> 00007247 # 1-42-50 95D1 -> 00007BC7 # 1-42-51 95D2 -> 00007DE8 # 1-42-52 95D3 -> 00008FBA # 1-42-53 95D4 -> 00008FD4 # 1-42-54 95D5 -> 0000904D # 1-42-55 95D6 -> 00004FBF # 1-42-56 95D7 -> 000052C9 # 1-42-57 95D8 -> 00005A29 # 1-42-58 95D9 -> 00005F01 # 1-42-59 95DA -> 000097AD # 1-42-60 95DB -> 00004FDD # 1-42-61 95DC -> 00008217 # 1-42-62 95DD -> 000092EA # 1-42-63 95DE -> 00005703 # 1-42-64 95DF -> 00006355 # 1-42-65 95E0 -> 00006B69 # 1-42-66 95E1 -> 0000752B # 1-42-67 95E2 -> 000088DC # 1-42-68 95E3 -> 00008F14 # 1-42-69 95E4 -> 00007A42 # 1-42-70 95E5 -> 000052DF # 1-42-71 95E6 -> 00005893 # 1-42-72 95E7 -> 00006155 # 1-42-73 95E8 -> 0000620A # 1-42-74 95E9 -> 000066AE # 1-42-75 95EA -> 00006BCD # 1-42-76 95EB -> 00007C3F # 1-42-77 95EC -> 000083E9 # 1-42-78 95ED -> 00005023 # 1-42-79 95EE -> 00004FF8 # 1-42-80 95EF -> 00005305 # 1-42-81 95F0 -> 00005446 # 1-42-82 95F1 -> 00005831 # 1-42-83 95F2 -> 00005949 # 1-42-84 95F3 -> 00005B9D # 1-42-85 95F4 -> 00005CF0 # 1-42-86 95F5 -> 00005CEF # 1-42-87 95F6 -> 00005D29 # 1-42-88 95F7 -> 00005E96 # 1-42-89 95F8 -> 000062B1 # 1-42-90 95F9 -> 00006367 # 1-42-91 95FA -> 0000653E # 1-42-92 95FB -> 000065B9 # 1-42-93 95FC -> 0000670B # 1-42-94 9640 -> 00006CD5 # 1-43-1 9641 -> 00006CE1 # 1-43-2 9642 -> 000070F9 # 1-43-3 9643 -> 00007832 # 1-43-4 9644 -> 00007E2B # 1-43-5 9645 -> 000080DE # 1-43-6 9646 -> 000082B3 # 1-43-7 9647 -> 0000840C # 1-43-8 9648 -> 000084EC # 1-43-9 9649 -> 00008702 # 1-43-10 964A -> 00008912 # 1-43-11 964B -> 00008A2A # 1-43-12 964C -> 00008C4A # 1-43-13 964D -> 000090A6 # 1-43-14 964E -> 000092D2 # 1-43-15 964F -> 000098FD # 1-43-16 9650 -> 00009CF3 # 1-43-17 9651 -> 00009D6C # 1-43-18 9652 -> 00004E4F # 1-43-19 9653 -> 00004EA1 # 1-43-20 9654 -> 0000508D # 1-43-21 9655 -> 00005256 # 1-43-22 9656 -> 0000574A # 1-43-23 9657 -> 000059A8 # 1-43-24 9658 -> 00005E3D # 1-43-25 9659 -> 00005FD8 # 1-43-26 965A -> 00005FD9 # 1-43-27 965B -> 0000623F # 1-43-28 965C -> 000066B4 # 1-43-29 965D -> 0000671B # 1-43-30 965E -> 000067D0 # 1-43-31 965F -> 000068D2 # 1-43-32 9660 -> 00005192 # 1-43-33 9661 -> 00007D21 # 1-43-34 9662 -> 000080AA # 1-43-35 9663 -> 000081A8 # 1-43-36 9664 -> 00008B00 # 1-43-37 9665 -> 00008C8C # 1-43-38 9666 -> 00008CBF # 1-43-39 9667 -> 0000927E # 1-43-40 9668 -> 00009632 # 1-43-41 9669 -> 00005420 # 1-43-42 966A -> 0000982C # 1-43-43 966B -> 00005317 # 1-43-44 966C -> 000050D5 # 1-43-45 966D -> 0000535C # 1-43-46 966E -> 000058A8 # 1-43-47 966F -> 000064B2 # 1-43-48 9670 -> 00006734 # 1-43-49 9671 -> 00007267 # 1-43-50 9672 -> 00007766 # 1-43-51 9673 -> 00007A46 # 1-43-52 9674 -> 000091E6 # 1-43-53 9675 -> 000052C3 # 1-43-54 9676 -> 00006CA1 # 1-43-55 9677 -> 00006B86 # 1-43-56 9678 -> 00005800 # 1-43-57 9679 -> 00005E4C # 1-43-58 967A -> 00005954 # 1-43-59 967B -> 0000672C # 1-43-60 967C -> 00007FFB # 1-43-61 967D -> 000051E1 # 1-43-62 967E -> 000076C6 # 1-43-63 9680 -> 00006469 # 1-43-64 9681 -> 000078E8 # 1-43-65 9682 -> 00009B54 # 1-43-66 9683 -> 00009EBB # 1-43-67 9684 -> 000057CB # 1-43-68 9685 -> 000059B9 # 1-43-69 9686 -> 00006627 # 1-43-70 9687 -> 0000679A # 1-43-71 9688 -> 00006BCE # 1-43-72 9689 -> 000054E9 # 1-43-73 968A -> 000069D9 # 1-43-74 968B -> 00005E55 # 1-43-75 968C -> 0000819C # 1-43-76 968D -> 00006795 # 1-43-77 968E -> 00009BAA # 1-43-78 968F -> 000067FE # 1-43-79 9690 -> 00009C52 # 1-43-80 9691 -> 0000685D # 1-43-81 9692 -> 00004EA6 # 1-43-82 9693 -> 00004FE3 # 1-43-83 9694 -> 000053C8 # 1-43-84 9695 -> 000062B9 # 1-43-85 9696 -> 0000672B # 1-43-86 9697 -> 00006CAB # 1-43-87 9698 -> 00008FC4 # 1-43-88 9699 -> 00004FAD # 1-43-89 969A -> 00007E6D # 1-43-90 969B -> 00009EBF # 1-43-91 969C -> 00004E07 # 1-43-92 969D -> 00006162 # 1-43-93 969E -> 00006E80 # 1-43-94 969F -> 00006F2B # 1-44-1 96A0 -> 00008513 # 1-44-2 96A1 -> 00005473 # 1-44-3 96A2 -> 0000672A # 1-44-4 96A3 -> 00009B45 # 1-44-5 96A4 -> 00005DF3 # 1-44-6 96A5 -> 00007B95 # 1-44-7 96A6 -> 00005CAC # 1-44-8 96A7 -> 00005BC6 # 1-44-9 96A8 -> 0000871C # 1-44-10 96A9 -> 00006E4A # 1-44-11 96AA -> 000084D1 # 1-44-12 96AB -> 00007A14 # 1-44-13 96AC -> 00008108 # 1-44-14 96AD -> 00005999 # 1-44-15 96AE -> 00007C8D # 1-44-16 96AF -> 00006C11 # 1-44-17 96B0 -> 00007720 # 1-44-18 96B1 -> 000052D9 # 1-44-19 96B2 -> 00005922 # 1-44-20 96B3 -> 00007121 # 1-44-21 96B4 -> 0000725F # 1-44-22 96B5 -> 000077DB # 1-44-23 96B6 -> 00009727 # 1-44-24 96B7 -> 00009D61 # 1-44-25 96B8 -> 0000690B # 1-44-26 96B9 -> 00005A7F # 1-44-27 96BA -> 00005A18 # 1-44-28 96BB -> 000051A5 # 1-44-29 96BC -> 0000540D # 1-44-30 96BD -> 0000547D # 1-44-31 96BE -> 0000660E # 1-44-32 96BF -> 000076DF # 1-44-33 96C0 -> 00008FF7 # 1-44-34 96C1 -> 00009298 # 1-44-35 96C2 -> 00009CF4 # 1-44-36 96C3 -> 000059EA # 1-44-37 96C4 -> 0000725D # 1-44-38 96C5 -> 00006EC5 # 1-44-39 96C6 -> 0000514D # 1-44-40 96C7 -> 000068C9 # 1-44-41 96C8 -> 00007DBF # 1-44-42 96C9 -> 00007DEC # 1-44-43 96CA -> 00009762 # 1-44-44 96CB -> 00009EBA # 1-44-45 96CC -> 00006478 # 1-44-46 96CD -> 00006A21 # 1-44-47 96CE -> 00008302 # 1-44-48 96CF -> 00005984 # 1-44-49 96D0 -> 00005B5F # 1-44-50 96D1 -> 00006BDB # 1-44-51 96D2 -> 0000731B # 1-44-52 96D3 -> 000076F2 # 1-44-53 96D4 -> 00007DB2 # 1-44-54 96D5 -> 00008017 # 1-44-55 96D6 -> 00008499 # 1-44-56 96D7 -> 00005132 # 1-44-57 96D8 -> 00006728 # 1-44-58 96D9 -> 00009ED9 # 1-44-59 96DA -> 000076EE # 1-44-60 96DB -> 00006762 # 1-44-61 96DC -> 000052FF # 1-44-62 96DD -> 00009905 # 1-44-63 96DE -> 00005C24 # 1-44-64 96DF -> 0000623B # 1-44-65 96E0 -> 00007C7E # 1-44-66 96E1 -> 00008CB0 # 1-44-67 96E2 -> 0000554F # 1-44-68 96E3 -> 000060B6 # 1-44-69 96E4 -> 00007D0B # 1-44-70 96E5 -> 00009580 # 1-44-71 96E6 -> 00005301 # 1-44-72 96E7 -> 00004E5F # 1-44-73 96E8 -> 000051B6 # 1-44-74 96E9 -> 0000591C # 1-44-75 96EA -> 0000723A # 1-44-76 96EB -> 00008036 # 1-44-77 96EC -> 000091CE # 1-44-78 96ED -> 00005F25 # 1-44-79 96EE -> 000077E2 # 1-44-80 96EF -> 00005384 # 1-44-81 96F0 -> 00005F79 # 1-44-82 96F1 -> 00007D04 # 1-44-83 96F2 -> 000085AC # 1-44-84 96F3 -> 00008A33 # 1-44-85 96F4 -> 00008E8D # 1-44-86 96F5 -> 00009756 # 1-44-87 96F6 -> 000067F3 # 1-44-88 96F7 -> 000085AE # 1-44-89 96F8 -> 00009453 # 1-44-90 96F9 -> 00006109 # 1-44-91 96FA -> 00006108 # 1-44-92 96FB -> 00006CB9 # 1-44-93 96FC -> 00007652 # 1-44-94 9740 -> 00008AED # 1-45-1 9741 -> 00008F38 # 1-45-2 9742 -> 0000552F # 1-45-3 9743 -> 00004F51 # 1-45-4 9744 -> 0000512A # 1-45-5 9745 -> 000052C7 # 1-45-6 9746 -> 000053CB # 1-45-7 9747 -> 00005BA5 # 1-45-8 9748 -> 00005E7D # 1-45-9 9749 -> 000060A0 # 1-45-10 974A -> 00006182 # 1-45-11 974B -> 000063D6 # 1-45-12 974C -> 00006709 # 1-45-13 974D -> 000067DA # 1-45-14 974E -> 00006E67 # 1-45-15 974F -> 00006D8C # 1-45-16 9750 -> 00007336 # 1-45-17 9751 -> 00007337 # 1-45-18 9752 -> 00007531 # 1-45-19 9753 -> 00007950 # 1-45-20 9754 -> 000088D5 # 1-45-21 9755 -> 00008A98 # 1-45-22 9756 -> 0000904A # 1-45-23 9757 -> 00009091 # 1-45-24 9758 -> 000090F5 # 1-45-25 9759 -> 000096C4 # 1-45-26 975A -> 0000878D # 1-45-27 975B -> 00005915 # 1-45-28 975C -> 00004E88 # 1-45-29 975D -> 00004F59 # 1-45-30 975E -> 00004E0E # 1-45-31 975F -> 00008A89 # 1-45-32 9760 -> 00008F3F # 1-45-33 9761 -> 00009810 # 1-45-34 9762 -> 000050AD # 1-45-35 9763 -> 00005E7C # 1-45-36 9764 -> 00005996 # 1-45-37 9765 -> 00005BB9 # 1-45-38 9766 -> 00005EB8 # 1-45-39 9767 -> 000063DA # 1-45-40 9768 -> 000063FA # 1-45-41 9769 -> 000064C1 # 1-45-42 976A -> 000066DC # 1-45-43 976B -> 0000694A # 1-45-44 976C -> 000069D8 # 1-45-45 976D -> 00006D0B # 1-45-46 976E -> 00006EB6 # 1-45-47 976F -> 00007194 # 1-45-48 9770 -> 00007528 # 1-45-49 9771 -> 00007AAF # 1-45-50 9772 -> 00007F8A # 1-45-51 9773 -> 00008000 # 1-45-52 9774 -> 00008449 # 1-45-53 9775 -> 000084C9 # 1-45-54 9776 -> 00008981 # 1-45-55 9777 -> 00008B21 # 1-45-56 9778 -> 00008E0A # 1-45-57 9779 -> 00009065 # 1-45-58 977A -> 0000967D # 1-45-59 977B -> 0000990A # 1-45-60 977C -> 0000617E # 1-45-61 977D -> 00006291 # 1-45-62 977E -> 00006B32 # 1-45-63 9780 -> 00006C83 # 1-45-64 9781 -> 00006D74 # 1-45-65 9782 -> 00007FCC # 1-45-66 9783 -> 00007FFC # 1-45-67 9784 -> 00006DC0 # 1-45-68 9785 -> 00007F85 # 1-45-69 9786 -> 000087BA # 1-45-70 9787 -> 000088F8 # 1-45-71 9788 -> 00006765 # 1-45-72 9789 -> 000083B1 # 1-45-73 978A -> 0000983C # 1-45-74 978B -> 000096F7 # 1-45-75 978C -> 00006D1B # 1-45-76 978D -> 00007D61 # 1-45-77 978E -> 0000843D # 1-45-78 978F -> 0000916A # 1-45-79 9790 -> 00004E71 # 1-45-80 9791 -> 00005375 # 1-45-81 9792 -> 00005D50 # 1-45-82 9793 -> 00006B04 # 1-45-83 9794 -> 00006FEB # 1-45-84 9795 -> 000085CD # 1-45-85 9796 -> 0000862D # 1-45-86 9797 -> 000089A7 # 1-45-87 9798 -> 00005229 # 1-45-88 9799 -> 0000540F # 1-45-89 979A -> 00005C65 # 1-45-90 979B -> 0000674E # 1-45-91 979C -> 000068A8 # 1-45-92 979D -> 00007406 # 1-45-93 979E -> 00007483 # 1-45-94 979F -> 000075E2 # 1-46-1 97A0 -> 000088CF # 1-46-2 97A1 -> 000088E1 # 1-46-3 97A2 -> 000091CC # 1-46-4 97A3 -> 000096E2 # 1-46-5 97A4 -> 00009678 # 1-46-6 97A5 -> 00005F8B # 1-46-7 97A6 -> 00007387 # 1-46-8 97A7 -> 00007ACB # 1-46-9 97A8 -> 0000844E # 1-46-10 97A9 -> 000063A0 # 1-46-11 97AA -> 00007565 # 1-46-12 97AB -> 00005289 # 1-46-13 97AC -> 00006D41 # 1-46-14 97AD -> 00006E9C # 1-46-15 97AE -> 00007409 # 1-46-16 97AF -> 00007559 # 1-46-17 97B0 -> 0000786B # 1-46-18 97B1 -> 00007C92 # 1-46-19 97B2 -> 00009686 # 1-46-20 97B3 -> 00007ADC # 1-46-21 97B4 -> 00009F8D # 1-46-22 97B5 -> 00004FB6 # 1-46-23 97B6 -> 0000616E # 1-46-24 97B7 -> 000065C5 # 1-46-25 97B8 -> 0000865C # 1-46-26 97B9 -> 00004E86 # 1-46-27 97BA -> 00004EAE # 1-46-28 97BB -> 000050DA # 1-46-29 97BC -> 00004E21 # 1-46-30 97BD -> 000051CC # 1-46-31 97BE -> 00005BEE # 1-46-32 97BF -> 00006599 # 1-46-33 97C0 -> 00006881 # 1-46-34 97C1 -> 00006DBC # 1-46-35 97C2 -> 0000731F # 1-46-36 97C3 -> 00007642 # 1-46-37 97C4 -> 000077AD # 1-46-38 97C5 -> 00007A1C # 1-46-39 97C6 -> 00007CE7 # 1-46-40 97C7 -> 0000826F # 1-46-41 97C8 -> 00008AD2 # 1-46-42 97C9 -> 0000907C # 1-46-43 97CA -> 000091CF # 1-46-44 97CB -> 00009675 # 1-46-45 97CC -> 00009818 # 1-46-46 97CD -> 0000529B # 1-46-47 97CE -> 00007DD1 # 1-46-48 97CF -> 0000502B # 1-46-49 97D0 -> 00005398 # 1-46-50 97D1 -> 00006797 # 1-46-51 97D2 -> 00006DCB # 1-46-52 97D3 -> 000071D0 # 1-46-53 97D4 -> 00007433 # 1-46-54 97D5 -> 000081E8 # 1-46-55 97D6 -> 00008F2A # 1-46-56 97D7 -> 000096A3 # 1-46-57 97D8 -> 00009C57 # 1-46-58 97D9 -> 00009E9F # 1-46-59 97DA -> 00007460 # 1-46-60 97DB -> 00005841 # 1-46-61 97DC -> 00006D99 # 1-46-62 97DD -> 00007D2F # 1-46-63 97DE -> 0000985E # 1-46-64 97DF -> 00004EE4 # 1-46-65 97E0 -> 00004F36 # 1-46-66 97E1 -> 00004F8B # 1-46-67 97E2 -> 000051B7 # 1-46-68 97E3 -> 000052B1 # 1-46-69 97E4 -> 00005DBA # 1-46-70 97E5 -> 0000601C # 1-46-71 97E6 -> 000073B2 # 1-46-72 97E7 -> 0000793C # 1-46-73 97E8 -> 000082D3 # 1-46-74 97E9 -> 00009234 # 1-46-75 97EA -> 000096B7 # 1-46-76 97EB -> 000096F6 # 1-46-77 97EC -> 0000970A # 1-46-78 97ED -> 00009E97 # 1-46-79 97EE -> 00009F62 # 1-46-80 97EF -> 000066A6 # 1-46-81 97F0 -> 00006B74 # 1-46-82 97F1 -> 00005217 # 1-46-83 97F2 -> 000052A3 # 1-46-84 97F3 -> 000070C8 # 1-46-85 97F4 -> 000088C2 # 1-46-86 97F5 -> 00005EC9 # 1-46-87 97F6 -> 0000604B # 1-46-88 97F7 -> 00006190 # 1-46-89 97F8 -> 00006F23 # 1-46-90 97F9 -> 00007149 # 1-46-91 97FA -> 00007C3E # 1-46-92 97FB -> 00007DF4 # 1-46-93 97FC -> 0000806F # 1-46-94 9840 -> 000084EE # 1-47-1 9841 -> 00009023 # 1-47-2 9842 -> 0000932C # 1-47-3 9843 -> 00005442 # 1-47-4 9844 -> 00009B6F # 1-47-5 9845 -> 00006AD3 # 1-47-6 9846 -> 00007089 # 1-47-7 9847 -> 00008CC2 # 1-47-8 9848 -> 00008DEF # 1-47-9 9849 -> 00009732 # 1-47-10 984A -> 000052B4 # 1-47-11 984B -> 00005A41 # 1-47-12 984C -> 00005ECA # 1-47-13 984D -> 00005F04 # 1-47-14 984E -> 00006717 # 1-47-15 984F -> 0000697C # 1-47-16 9850 -> 00006994 # 1-47-17 9851 -> 00006D6A # 1-47-18 9852 -> 00006F0F # 1-47-19 9853 -> 00007262 # 1-47-20 9854 -> 000072FC # 1-47-21 9855 -> 00007BED # 1-47-22 9856 -> 00008001 # 1-47-23 9857 -> 0000807E # 1-47-24 9858 -> 0000874B # 1-47-25 9859 -> 000090CE # 1-47-26 985A -> 0000516D # 1-47-27 985B -> 00009E93 # 1-47-28 985C -> 00007984 # 1-47-29 985D -> 0000808B # 1-47-30 985E -> 00009332 # 1-47-31 985F -> 00008AD6 # 1-47-32 9860 -> 0000502D # 1-47-33 9861 -> 0000548C # 1-47-34 9862 -> 00008A71 # 1-47-35 9863 -> 00006B6A # 1-47-36 9864 -> 00008CC4 # 1-47-37 9865 -> 00008107 # 1-47-38 9866 -> 000060D1 # 1-47-39 9867 -> 000067A0 # 1-47-40 9868 -> 00009DF2 # 1-47-41 9869 -> 00004E99 # 1-47-42 986A -> 00004E98 # 1-47-43 986B -> 00009C10 # 1-47-44 986C -> 00008A6B # 1-47-45 986D -> 000085C1 # 1-47-46 986E -> 00008568 # 1-47-47 986F -> 00006900 # 1-47-48 9870 -> 00006E7E # 1-47-49 9871 -> 00007897 # 1-47-50 9872 -> 00008155 # 1-47-51 9874 -> 00005B41 # 1-47-53 9875 -> 00005B56 # 1-47-54 9876 -> 00005B7D # 1-47-55 9877 -> 00005B93 # 1-47-56 9878 -> 00005BD8 # 1-47-57 9879 -> 00005BEC # 1-47-58 987A -> 00005C12 # 1-47-59 987B -> 00005C1E # 1-47-60 987C -> 00005C23 # 1-47-61 987D -> 00005C2B # 1-47-62 987E -> 0000378D # 1-47-63 9880 -> 00005C62 # 1-47-64 9881 -> 0000FA3B # 1-47-65 9882 -> 0000FA3C # 1-47-66 9883 -> 000216B4 # 1-47-67 9884 -> 00005C7A # 1-47-68 9885 -> 00005C8F # 1-47-69 9886 -> 00005C9F # 1-47-70 9887 -> 00005CA3 # 1-47-71 9888 -> 00005CAA # 1-47-72 9889 -> 00005CBA # 1-47-73 988A -> 00005CCB # 1-47-74 988B -> 00005CD0 # 1-47-75 988C -> 00005CD2 # 1-47-76 988D -> 00005CF4 # 1-47-77 988E -> 00021E34 # 1-47-78 988F -> 000037E2 # 1-47-79 9890 -> 00005D0D # 1-47-80 9891 -> 00005D27 # 1-47-81 9892 -> 0000FA11 # 1-47-82 9893 -> 00005D46 # 1-47-83 9894 -> 00005D47 # 1-47-84 9895 -> 00005D53 # 1-47-85 9896 -> 00005D4A # 1-47-86 9897 -> 00005D6D # 1-47-87 9898 -> 00005D81 # 1-47-88 9899 -> 00005DA0 # 1-47-89 989A -> 00005DA4 # 1-47-90 989B -> 00005DA7 # 1-47-91 989C -> 00005DB8 # 1-47-92 989D -> 00005DCB # 1-47-93 989F -> 00005F0C # 1-48-1 98A0 -> 00004E10 # 1-48-2 98A1 -> 00004E15 # 1-48-3 98A2 -> 00004E2A # 1-48-4 98A3 -> 00004E31 # 1-48-5 98A4 -> 00004E36 # 1-48-6 98A5 -> 00004E3C # 1-48-7 98A6 -> 00004E3F # 1-48-8 98A7 -> 00004E42 # 1-48-9 98A8 -> 00004E56 # 1-48-10 98A9 -> 00004E58 # 1-48-11 98AA -> 00004E82 # 1-48-12 98AB -> 00004E85 # 1-48-13 98AC -> 00008C6B # 1-48-14 98AD -> 00004E8A # 1-48-15 98AE -> 00008212 # 1-48-16 98AF -> 00005F0D # 1-48-17 98B0 -> 00004E8E # 1-48-18 98B1 -> 00004E9E # 1-48-19 98B2 -> 00004E9F # 1-48-20 98B3 -> 00004EA0 # 1-48-21 98B4 -> 00004EA2 # 1-48-22 98B5 -> 00004EB0 # 1-48-23 98B6 -> 00004EB3 # 1-48-24 98B7 -> 00004EB6 # 1-48-25 98B8 -> 00004ECE # 1-48-26 98B9 -> 00004ECD # 1-48-27 98BA -> 00004EC4 # 1-48-28 98BB -> 00004EC6 # 1-48-29 98BC -> 00004EC2 # 1-48-30 98BD -> 00004ED7 # 1-48-31 98BE -> 00004EDE # 1-48-32 98BF -> 00004EED # 1-48-33 98C0 -> 00004EDF # 1-48-34 98C1 -> 00004EF7 # 1-48-35 98C2 -> 00004F09 # 1-48-36 98C3 -> 00004F5A # 1-48-37 98C4 -> 00004F30 # 1-48-38 98C5 -> 00004F5B # 1-48-39 98C6 -> 00004F5D # 1-48-40 98C7 -> 00004F57 # 1-48-41 98C8 -> 00004F47 # 1-48-42 98C9 -> 00004F76 # 1-48-43 98CA -> 00004F88 # 1-48-44 98CB -> 00004F8F # 1-48-45 98CC -> 00004F98 # 1-48-46 98CD -> 00004F7B # 1-48-47 98CE -> 00004F69 # 1-48-48 98CF -> 00004F70 # 1-48-49 98D0 -> 00004F91 # 1-48-50 98D1 -> 00004F6F # 1-48-51 98D2 -> 00004F86 # 1-48-52 98D3 -> 00004F96 # 1-48-53 98D4 -> 00005118 # 1-48-54 98D5 -> 00004FD4 # 1-48-55 98D6 -> 00004FDF # 1-48-56 98D7 -> 00004FCE # 1-48-57 98D8 -> 00004FD8 # 1-48-58 98D9 -> 00004FDB # 1-48-59 98DA -> 00004FD1 # 1-48-60 98DB -> 00004FDA # 1-48-61 98DC -> 00004FD0 # 1-48-62 98DD -> 00004FE4 # 1-48-63 98DE -> 00004FE5 # 1-48-64 98DF -> 0000501A # 1-48-65 98E0 -> 00005028 # 1-48-66 98E1 -> 00005014 # 1-48-67 98E2 -> 0000502A # 1-48-68 98E3 -> 00005025 # 1-48-69 98E4 -> 00005005 # 1-48-70 98E5 -> 00004F1C # 1-48-71 98E6 -> 00004FF6 # 1-48-72 98E7 -> 00005021 # 1-48-73 98E8 -> 00005029 # 1-48-74 98E9 -> 0000502C # 1-48-75 98EA -> 00004FFE # 1-48-76 98EB -> 00004FEF # 1-48-77 98EC -> 00005011 # 1-48-78 98ED -> 00005006 # 1-48-79 98EE -> 00005043 # 1-48-80 98EF -> 00005047 # 1-48-81 98F0 -> 00006703 # 1-48-82 98F1 -> 00005055 # 1-48-83 98F2 -> 00005050 # 1-48-84 98F3 -> 00005048 # 1-48-85 98F4 -> 0000505A # 1-48-86 98F5 -> 00005056 # 1-48-87 98F6 -> 0000506C # 1-48-88 98F7 -> 00005078 # 1-48-89 98F8 -> 00005080 # 1-48-90 98F9 -> 0000509A # 1-48-91 98FA -> 00005085 # 1-48-92 98FB -> 000050B4 # 1-48-93 98FC -> 000050B2 # 1-48-94 9940 -> 000050C9 # 1-49-1 9941 -> 000050CA # 1-49-2 9942 -> 000050B3 # 1-49-3 9943 -> 000050C2 # 1-49-4 9944 -> 000050D6 # 1-49-5 9945 -> 000050DE # 1-49-6 9946 -> 000050E5 # 1-49-7 9947 -> 000050ED # 1-49-8 9948 -> 000050E3 # 1-49-9 9949 -> 000050EE # 1-49-10 994A -> 000050F9 # 1-49-11 994B -> 000050F5 # 1-49-12 994C -> 00005109 # 1-49-13 994D -> 00005101 # 1-49-14 994E -> 00005102 # 1-49-15 994F -> 00005116 # 1-49-16 9950 -> 00005115 # 1-49-17 9951 -> 00005114 # 1-49-18 9952 -> 0000511A # 1-49-19 9953 -> 00005121 # 1-49-20 9954 -> 0000513A # 1-49-21 9955 -> 00005137 # 1-49-22 9956 -> 0000513C # 1-49-23 9957 -> 0000513B # 1-49-24 9958 -> 0000513F # 1-49-25 9959 -> 00005140 # 1-49-26 995A -> 00005152 # 1-49-27 995B -> 0000514C # 1-49-28 995C -> 00005154 # 1-49-29 995D -> 00005162 # 1-49-30 995E -> 00007AF8 # 1-49-31 995F -> 00005169 # 1-49-32 9960 -> 0000516A # 1-49-33 9961 -> 0000516E # 1-49-34 9962 -> 00005180 # 1-49-35 9963 -> 00005182 # 1-49-36 9964 -> 000056D8 # 1-49-37 9965 -> 0000518C # 1-49-38 9966 -> 00005189 # 1-49-39 9967 -> 0000518F # 1-49-40 9968 -> 00005191 # 1-49-41 9969 -> 00005193 # 1-49-42 996A -> 00005195 # 1-49-43 996B -> 00005196 # 1-49-44 996C -> 000051A4 # 1-49-45 996D -> 000051A6 # 1-49-46 996E -> 000051A2 # 1-49-47 996F -> 000051A9 # 1-49-48 9970 -> 000051AA # 1-49-49 9971 -> 000051AB # 1-49-50 9972 -> 000051B3 # 1-49-51 9973 -> 000051B1 # 1-49-52 9974 -> 000051B2 # 1-49-53 9975 -> 000051B0 # 1-49-54 9976 -> 000051B5 # 1-49-55 9977 -> 000051BD # 1-49-56 9978 -> 000051C5 # 1-49-57 9979 -> 000051C9 # 1-49-58 997A -> 000051DB # 1-49-59 997B -> 000051E0 # 1-49-60 997C -> 00008655 # 1-49-61 997D -> 000051E9 # 1-49-62 997E -> 000051ED # 1-49-63 9980 -> 000051F0 # 1-49-64 9981 -> 000051F5 # 1-49-65 9982 -> 000051FE # 1-49-66 9983 -> 00005204 # 1-49-67 9984 -> 0000520B # 1-49-68 9985 -> 00005214 # 1-49-69 9986 -> 0000520E # 1-49-70 9987 -> 00005227 # 1-49-71 9988 -> 0000522A # 1-49-72 9989 -> 0000522E # 1-49-73 998A -> 00005233 # 1-49-74 998B -> 00005239 # 1-49-75 998C -> 0000524F # 1-49-76 998D -> 00005244 # 1-49-77 998E -> 0000524B # 1-49-78 998F -> 0000524C # 1-49-79 9990 -> 0000525E # 1-49-80 9991 -> 00005254 # 1-49-81 9992 -> 0000526A # 1-49-82 9993 -> 00005274 # 1-49-83 9994 -> 00005269 # 1-49-84 9995 -> 00005273 # 1-49-85 9996 -> 0000527F # 1-49-86 9997 -> 0000527D # 1-49-87 9998 -> 0000528D # 1-49-88 9999 -> 00005294 # 1-49-89 999A -> 00005292 # 1-49-90 999B -> 00005271 # 1-49-91 999C -> 00005288 # 1-49-92 999D -> 00005291 # 1-49-93 999E -> 00008FA8 # 1-49-94 999F -> 00008FA7 # 1-50-1 99A0 -> 000052AC # 1-50-2 99A1 -> 000052AD # 1-50-3 99A2 -> 000052BC # 1-50-4 99A3 -> 000052B5 # 1-50-5 99A4 -> 000052C1 # 1-50-6 99A5 -> 000052CD # 1-50-7 99A6 -> 000052D7 # 1-50-8 99A7 -> 000052DE # 1-50-9 99A8 -> 000052E3 # 1-50-10 99A9 -> 000052E6 # 1-50-11 99AA -> 000098ED # 1-50-12 99AB -> 000052E0 # 1-50-13 99AC -> 000052F3 # 1-50-14 99AD -> 000052F5 # 1-50-15 99AE -> 000052F8 # 1-50-16 99AF -> 000052F9 # 1-50-17 99B0 -> 00005306 # 1-50-18 99B1 -> 00005308 # 1-50-19 99B2 -> 00007538 # 1-50-20 99B3 -> 0000530D # 1-50-21 99B4 -> 00005310 # 1-50-22 99B5 -> 0000530F # 1-50-23 99B6 -> 00005315 # 1-50-24 99B7 -> 0000531A # 1-50-25 99B8 -> 00005323 # 1-50-26 99B9 -> 0000532F # 1-50-27 99BA -> 00005331 # 1-50-28 99BB -> 00005333 # 1-50-29 99BC -> 00005338 # 1-50-30 99BD -> 00005340 # 1-50-31 99BE -> 00005346 # 1-50-32 99BF -> 00005345 # 1-50-33 99C0 -> 00004E17 # 1-50-34 99C1 -> 00005349 # 1-50-35 99C2 -> 0000534D # 1-50-36 99C3 -> 000051D6 # 1-50-37 99C4 -> 0000535E # 1-50-38 99C5 -> 00005369 # 1-50-39 99C6 -> 0000536E # 1-50-40 99C7 -> 00005918 # 1-50-41 99C8 -> 0000537B # 1-50-42 99C9 -> 00005377 # 1-50-43 99CA -> 00005382 # 1-50-44 99CB -> 00005396 # 1-50-45 99CC -> 000053A0 # 1-50-46 99CD -> 000053A6 # 1-50-47 99CE -> 000053A5 # 1-50-48 99CF -> 000053AE # 1-50-49 99D0 -> 000053B0 # 1-50-50 99D1 -> 000053B6 # 1-50-51 99D2 -> 000053C3 # 1-50-52 99D3 -> 00007C12 # 1-50-53 99D4 -> 000096D9 # 1-50-54 99D5 -> 000053DF # 1-50-55 99D6 -> 000066FC # 1-50-56 99D7 -> 000071EE # 1-50-57 99D8 -> 000053EE # 1-50-58 99D9 -> 000053E8 # 1-50-59 99DA -> 000053ED # 1-50-60 99DB -> 000053FA # 1-50-61 99DC -> 00005401 # 1-50-62 99DD -> 0000543D # 1-50-63 99DE -> 00005440 # 1-50-64 99DF -> 0000542C # 1-50-65 99E0 -> 0000542D # 1-50-66 99E1 -> 0000543C # 1-50-67 99E2 -> 0000542E # 1-50-68 99E3 -> 00005436 # 1-50-69 99E4 -> 00005429 # 1-50-70 99E5 -> 0000541D # 1-50-71 99E6 -> 0000544E # 1-50-72 99E7 -> 0000548F # 1-50-73 99E8 -> 00005475 # 1-50-74 99E9 -> 0000548E # 1-50-75 99EA -> 0000545F # 1-50-76 99EB -> 00005471 # 1-50-77 99EC -> 00005477 # 1-50-78 99ED -> 00005470 # 1-50-79 99EE -> 00005492 # 1-50-80 99EF -> 0000547B # 1-50-81 99F0 -> 00005480 # 1-50-82 99F1 -> 00005476 # 1-50-83 99F2 -> 00005484 # 1-50-84 99F3 -> 00005490 # 1-50-85 99F4 -> 00005486 # 1-50-86 99F5 -> 000054C7 # 1-50-87 99F6 -> 000054A2 # 1-50-88 99F7 -> 000054B8 # 1-50-89 99F8 -> 000054A5 # 1-50-90 99F9 -> 000054AC # 1-50-91 99FA -> 000054C4 # 1-50-92 99FB -> 000054C8 # 1-50-93 99FC -> 000054A8 # 1-50-94 9A40 -> 000054AB # 1-51-1 9A41 -> 000054C2 # 1-51-2 9A42 -> 000054A4 # 1-51-3 9A43 -> 000054BE # 1-51-4 9A44 -> 000054BC # 1-51-5 9A45 -> 000054D8 # 1-51-6 9A46 -> 000054E5 # 1-51-7 9A47 -> 000054E6 # 1-51-8 9A48 -> 0000550F # 1-51-9 9A49 -> 00005514 # 1-51-10 9A4A -> 000054FD # 1-51-11 9A4B -> 000054EE # 1-51-12 9A4C -> 000054ED # 1-51-13 9A4D -> 000054FA # 1-51-14 9A4E -> 000054E2 # 1-51-15 9A4F -> 00005539 # 1-51-16 9A50 -> 00005540 # 1-51-17 9A51 -> 00005563 # 1-51-18 9A52 -> 0000554C # 1-51-19 9A53 -> 0000552E # 1-51-20 9A54 -> 0000555C # 1-51-21 9A55 -> 00005545 # 1-51-22 9A56 -> 00005556 # 1-51-23 9A57 -> 00005557 # 1-51-24 9A58 -> 00005538 # 1-51-25 9A59 -> 00005533 # 1-51-26 9A5A -> 0000555D # 1-51-27 9A5B -> 00005599 # 1-51-28 9A5C -> 00005580 # 1-51-29 9A5D -> 000054AF # 1-51-30 9A5E -> 0000558A # 1-51-31 9A5F -> 0000559F # 1-51-32 9A60 -> 0000557B # 1-51-33 9A61 -> 0000557E # 1-51-34 9A62 -> 00005598 # 1-51-35 9A63 -> 0000559E # 1-51-36 9A64 -> 000055AE # 1-51-37 9A65 -> 0000557C # 1-51-38 9A66 -> 00005583 # 1-51-39 9A67 -> 000055A9 # 1-51-40 9A68 -> 00005587 # 1-51-41 9A69 -> 000055A8 # 1-51-42 9A6A -> 000055DA # 1-51-43 9A6B -> 000055C5 # 1-51-44 9A6C -> 000055DF # 1-51-45 9A6D -> 000055C4 # 1-51-46 9A6E -> 000055DC # 1-51-47 9A6F -> 000055E4 # 1-51-48 9A70 -> 000055D4 # 1-51-49 9A71 -> 00005614 # 1-51-50 9A72 -> 000055F7 # 1-51-51 9A73 -> 00005616 # 1-51-52 9A74 -> 000055FE # 1-51-53 9A75 -> 000055FD # 1-51-54 9A76 -> 0000561B # 1-51-55 9A77 -> 000055F9 # 1-51-56 9A78 -> 0000564E # 1-51-57 9A79 -> 00005650 # 1-51-58 9A7A -> 000071DF # 1-51-59 9A7B -> 00005634 # 1-51-60 9A7C -> 00005636 # 1-51-61 9A7D -> 00005632 # 1-51-62 9A7E -> 00005638 # 1-51-63 9A80 -> 0000566B # 1-51-64 9A81 -> 00005664 # 1-51-65 9A82 -> 0000562F # 1-51-66 9A83 -> 0000566C # 1-51-67 9A84 -> 0000566A # 1-51-68 9A85 -> 00005686 # 1-51-69 9A86 -> 00005680 # 1-51-70 9A87 -> 0000568A # 1-51-71 9A88 -> 000056A0 # 1-51-72 9A89 -> 00005694 # 1-51-73 9A8A -> 0000568F # 1-51-74 9A8B -> 000056A5 # 1-51-75 9A8C -> 000056AE # 1-51-76 9A8D -> 000056B6 # 1-51-77 9A8E -> 000056B4 # 1-51-78 9A8F -> 000056C2 # 1-51-79 9A90 -> 000056BC # 1-51-80 9A91 -> 000056C1 # 1-51-81 9A92 -> 000056C3 # 1-51-82 9A93 -> 000056C0 # 1-51-83 9A94 -> 000056C8 # 1-51-84 9A95 -> 000056CE # 1-51-85 9A96 -> 000056D1 # 1-51-86 9A97 -> 000056D3 # 1-51-87 9A98 -> 000056D7 # 1-51-88 9A99 -> 000056EE # 1-51-89 9A9A -> 000056F9 # 1-51-90 9A9B -> 00005700 # 1-51-91 9A9C -> 000056FF # 1-51-92 9A9D -> 00005704 # 1-51-93 9A9E -> 00005709 # 1-51-94 9A9F -> 00005708 # 1-52-1 9AA0 -> 0000570B # 1-52-2 9AA1 -> 0000570D # 1-52-3 9AA2 -> 00005713 # 1-52-4 9AA3 -> 00005718 # 1-52-5 9AA4 -> 00005716 # 1-52-6 9AA5 -> 000055C7 # 1-52-7 9AA6 -> 0000571C # 1-52-8 9AA7 -> 00005726 # 1-52-9 9AA8 -> 00005737 # 1-52-10 9AA9 -> 00005738 # 1-52-11 9AAA -> 0000574E # 1-52-12 9AAB -> 0000573B # 1-52-13 9AAC -> 00005740 # 1-52-14 9AAD -> 0000574F # 1-52-15 9AAE -> 00005769 # 1-52-16 9AAF -> 000057C0 # 1-52-17 9AB0 -> 00005788 # 1-52-18 9AB1 -> 00005761 # 1-52-19 9AB2 -> 0000577F # 1-52-20 9AB3 -> 00005789 # 1-52-21 9AB4 -> 00005793 # 1-52-22 9AB5 -> 000057A0 # 1-52-23 9AB6 -> 000057B3 # 1-52-24 9AB7 -> 000057A4 # 1-52-25 9AB8 -> 000057AA # 1-52-26 9AB9 -> 000057B0 # 1-52-27 9ABA -> 000057C3 # 1-52-28 9ABB -> 000057C6 # 1-52-29 9ABC -> 000057D4 # 1-52-30 9ABD -> 000057D2 # 1-52-31 9ABE -> 000057D3 # 1-52-32 9ABF -> 0000580A # 1-52-33 9AC0 -> 000057D6 # 1-52-34 9AC1 -> 000057E3 # 1-52-35 9AC2 -> 0000580B # 1-52-36 9AC3 -> 00005819 # 1-52-37 9AC4 -> 0000581D # 1-52-38 9AC5 -> 00005872 # 1-52-39 9AC6 -> 00005821 # 1-52-40 9AC7 -> 00005862 # 1-52-41 9AC8 -> 0000584B # 1-52-42 9AC9 -> 00005870 # 1-52-43 9ACA -> 00006BC0 # 1-52-44 9ACB -> 00005852 # 1-52-45 9ACC -> 0000583D # 1-52-46 9ACD -> 00005879 # 1-52-47 9ACE -> 00005885 # 1-52-48 9ACF -> 000058B9 # 1-52-49 9AD0 -> 0000589F # 1-52-50 9AD1 -> 000058AB # 1-52-51 9AD2 -> 000058BA # 1-52-52 9AD3 -> 000058DE # 1-52-53 9AD4 -> 000058BB # 1-52-54 9AD5 -> 000058B8 # 1-52-55 9AD6 -> 000058AE # 1-52-56 9AD7 -> 000058C5 # 1-52-57 9AD8 -> 000058D3 # 1-52-58 9AD9 -> 000058D1 # 1-52-59 9ADA -> 000058D7 # 1-52-60 9ADB -> 000058D9 # 1-52-61 9ADC -> 000058D8 # 1-52-62 9ADD -> 000058E5 # 1-52-63 9ADE -> 000058DC # 1-52-64 9ADF -> 000058E4 # 1-52-65 9AE0 -> 000058DF # 1-52-66 9AE1 -> 000058EF # 1-52-67 9AE2 -> 000058FA # 1-52-68 9AE3 -> 000058F9 # 1-52-69 9AE4 -> 000058FB # 1-52-70 9AE5 -> 000058FC # 1-52-71 9AE6 -> 000058FD # 1-52-72 9AE7 -> 00005902 # 1-52-73 9AE8 -> 0000590A # 1-52-74 9AE9 -> 00005910 # 1-52-75 9AEA -> 0000591B # 1-52-76 9AEB -> 000068A6 # 1-52-77 9AEC -> 00005925 # 1-52-78 9AED -> 0000592C # 1-52-79 9AEE -> 0000592D # 1-52-80 9AEF -> 00005932 # 1-52-81 9AF0 -> 00005938 # 1-52-82 9AF1 -> 0000593E # 1-52-83 9AF2 -> 00007AD2 # 1-52-84 9AF3 -> 00005955 # 1-52-85 9AF4 -> 00005950 # 1-52-86 9AF5 -> 0000594E # 1-52-87 9AF6 -> 0000595A # 1-52-88 9AF7 -> 00005958 # 1-52-89 9AF8 -> 00005962 # 1-52-90 9AF9 -> 00005960 # 1-52-91 9AFA -> 00005967 # 1-52-92 9AFB -> 0000596C # 1-52-93 9AFC -> 00005969 # 1-52-94 9B40 -> 00005978 # 1-53-1 9B41 -> 00005981 # 1-53-2 9B42 -> 0000599D # 1-53-3 9B43 -> 00004F5E # 1-53-4 9B44 -> 00004FAB # 1-53-5 9B45 -> 000059A3 # 1-53-6 9B46 -> 000059B2 # 1-53-7 9B47 -> 000059C6 # 1-53-8 9B48 -> 000059E8 # 1-53-9 9B49 -> 000059DC # 1-53-10 9B4A -> 0000598D # 1-53-11 9B4B -> 000059D9 # 1-53-12 9B4C -> 000059DA # 1-53-13 9B4D -> 00005A25 # 1-53-14 9B4E -> 00005A1F # 1-53-15 9B4F -> 00005A11 # 1-53-16 9B50 -> 00005A1C # 1-53-17 9B51 -> 00005A09 # 1-53-18 9B52 -> 00005A1A # 1-53-19 9B53 -> 00005A40 # 1-53-20 9B54 -> 00005A6C # 1-53-21 9B55 -> 00005A49 # 1-53-22 9B56 -> 00005A35 # 1-53-23 9B57 -> 00005A36 # 1-53-24 9B58 -> 00005A62 # 1-53-25 9B59 -> 00005A6A # 1-53-26 9B5A -> 00005A9A # 1-53-27 9B5B -> 00005ABC # 1-53-28 9B5C -> 00005ABE # 1-53-29 9B5D -> 00005ACB # 1-53-30 9B5E -> 00005AC2 # 1-53-31 9B5F -> 00005ABD # 1-53-32 9B60 -> 00005AE3 # 1-53-33 9B61 -> 00005AD7 # 1-53-34 9B62 -> 00005AE6 # 1-53-35 9B63 -> 00005AE9 # 1-53-36 9B64 -> 00005AD6 # 1-53-37 9B65 -> 00005AFA # 1-53-38 9B66 -> 00005AFB # 1-53-39 9B67 -> 00005B0C # 1-53-40 9B68 -> 00005B0B # 1-53-41 9B69 -> 00005B16 # 1-53-42 9B6A -> 00005B32 # 1-53-43 9B6B -> 00005AD0 # 1-53-44 9B6C -> 00005B2A # 1-53-45 9B6D -> 00005B36 # 1-53-46 9B6E -> 00005B3E # 1-53-47 9B6F -> 00005B43 # 1-53-48 9B70 -> 00005B45 # 1-53-49 9B71 -> 00005B40 # 1-53-50 9B72 -> 00005B51 # 1-53-51 9B73 -> 00005B55 # 1-53-52 9B74 -> 00005B5A # 1-53-53 9B75 -> 00005B5B # 1-53-54 9B76 -> 00005B65 # 1-53-55 9B77 -> 00005B69 # 1-53-56 9B78 -> 00005B70 # 1-53-57 9B79 -> 00005B73 # 1-53-58 9B7A -> 00005B75 # 1-53-59 9B7B -> 00005B78 # 1-53-60 9B7C -> 00006588 # 1-53-61 9B7D -> 00005B7A # 1-53-62 9B7E -> 00005B80 # 1-53-63 9B80 -> 00005B83 # 1-53-64 9B81 -> 00005BA6 # 1-53-65 9B82 -> 00005BB8 # 1-53-66 9B83 -> 00005BC3 # 1-53-67 9B84 -> 00005BC7 # 1-53-68 9B85 -> 00005BC9 # 1-53-69 9B86 -> 00005BD4 # 1-53-70 9B87 -> 00005BD0 # 1-53-71 9B88 -> 00005BE4 # 1-53-72 9B89 -> 00005BE6 # 1-53-73 9B8A -> 00005BE2 # 1-53-74 9B8B -> 00005BDE # 1-53-75 9B8C -> 00005BE5 # 1-53-76 9B8D -> 00005BEB # 1-53-77 9B8E -> 00005BF0 # 1-53-78 9B8F -> 00005BF6 # 1-53-79 9B90 -> 00005BF3 # 1-53-80 9B91 -> 00005C05 # 1-53-81 9B92 -> 00005C07 # 1-53-82 9B93 -> 00005C08 # 1-53-83 9B94 -> 00005C0D # 1-53-84 9B95 -> 00005C13 # 1-53-85 9B96 -> 00005C20 # 1-53-86 9B97 -> 00005C22 # 1-53-87 9B98 -> 00005C28 # 1-53-88 9B99 -> 00005C38 # 1-53-89 9B9A -> 00005C39 # 1-53-90 9B9B -> 00005C41 # 1-53-91 9B9C -> 00005C46 # 1-53-92 9B9D -> 00005C4E # 1-53-93 9B9E -> 00005C53 # 1-53-94 9B9F -> 00005C50 # 1-54-1 9BA0 -> 00005C4F # 1-54-2 9BA1 -> 00005B71 # 1-54-3 9BA2 -> 00005C6C # 1-54-4 9BA3 -> 00005C6E # 1-54-5 9BA4 -> 00004E62 # 1-54-6 9BA5 -> 00005C76 # 1-54-7 9BA6 -> 00005C79 # 1-54-8 9BA7 -> 00005C8C # 1-54-9 9BA8 -> 00005C91 # 1-54-10 9BA9 -> 00005C94 # 1-54-11 9BAA -> 0000599B # 1-54-12 9BAB -> 00005CAB # 1-54-13 9BAC -> 00005CBB # 1-54-14 9BAD -> 00005CB6 # 1-54-15 9BAE -> 00005CBC # 1-54-16 9BAF -> 00005CB7 # 1-54-17 9BB0 -> 00005CC5 # 1-54-18 9BB1 -> 00005CBE # 1-54-19 9BB2 -> 00005CC7 # 1-54-20 9BB3 -> 00005CD9 # 1-54-21 9BB4 -> 00005CE9 # 1-54-22 9BB5 -> 00005CFD # 1-54-23 9BB6 -> 00005CFA # 1-54-24 9BB7 -> 00005CED # 1-54-25 9BB8 -> 00005D8C # 1-54-26 9BB9 -> 00005CEA # 1-54-27 9BBA -> 00005D0B # 1-54-28 9BBB -> 00005D15 # 1-54-29 9BBC -> 00005D17 # 1-54-30 9BBD -> 00005D5C # 1-54-31 9BBE -> 00005D1F # 1-54-32 9BBF -> 00005D1B # 1-54-33 9BC0 -> 00005D11 # 1-54-34 9BC1 -> 00005D14 # 1-54-35 9BC2 -> 00005D22 # 1-54-36 9BC3 -> 00005D1A # 1-54-37 9BC4 -> 00005D19 # 1-54-38 9BC5 -> 00005D18 # 1-54-39 9BC6 -> 00005D4C # 1-54-40 9BC7 -> 00005D52 # 1-54-41 9BC8 -> 00005D4E # 1-54-42 9BC9 -> 00005D4B # 1-54-43 9BCA -> 00005D6C # 1-54-44 9BCB -> 00005D73 # 1-54-45 9BCC -> 00005D76 # 1-54-46 9BCD -> 00005D87 # 1-54-47 9BCE -> 00005D84 # 1-54-48 9BCF -> 00005D82 # 1-54-49 9BD0 -> 00005DA2 # 1-54-50 9BD1 -> 00005D9D # 1-54-51 9BD2 -> 00005DAC # 1-54-52 9BD3 -> 00005DAE # 1-54-53 9BD4 -> 00005DBD # 1-54-54 9BD5 -> 00005D90 # 1-54-55 9BD6 -> 00005DB7 # 1-54-56 9BD7 -> 00005DBC # 1-54-57 9BD8 -> 00005DC9 # 1-54-58 9BD9 -> 00005DCD # 1-54-59 9BDA -> 00005DD3 # 1-54-60 9BDB -> 00005DD2 # 1-54-61 9BDC -> 00005DD6 # 1-54-62 9BDD -> 00005DDB # 1-54-63 9BDE -> 00005DEB # 1-54-64 9BDF -> 00005DF2 # 1-54-65 9BE0 -> 00005DF5 # 1-54-66 9BE1 -> 00005E0B # 1-54-67 9BE2 -> 00005E1A # 1-54-68 9BE3 -> 00005E19 # 1-54-69 9BE4 -> 00005E11 # 1-54-70 9BE5 -> 00005E1B # 1-54-71 9BE6 -> 00005E36 # 1-54-72 9BE7 -> 00005E37 # 1-54-73 9BE8 -> 00005E44 # 1-54-74 9BE9 -> 00005E43 # 1-54-75 9BEA -> 00005E40 # 1-54-76 9BEB -> 00005E4E # 1-54-77 9BEC -> 00005E57 # 1-54-78 9BED -> 00005E54 # 1-54-79 9BEE -> 00005E5F # 1-54-80 9BEF -> 00005E62 # 1-54-81 9BF0 -> 00005E64 # 1-54-82 9BF1 -> 00005E47 # 1-54-83 9BF2 -> 00005E75 # 1-54-84 9BF3 -> 00005E76 # 1-54-85 9BF4 -> 00005E7A # 1-54-86 9BF5 -> 00009EBC # 1-54-87 9BF6 -> 00005E7F # 1-54-88 9BF7 -> 00005EA0 # 1-54-89 9BF8 -> 00005EC1 # 1-54-90 9BF9 -> 00005EC2 # 1-54-91 9BFA -> 00005EC8 # 1-54-92 9BFB -> 00005ED0 # 1-54-93 9BFC -> 00005ECF # 1-54-94 9C40 -> 00005ED6 # 1-55-1 9C41 -> 00005EE3 # 1-55-2 9C42 -> 00005EDD # 1-55-3 9C43 -> 00005EDA # 1-55-4 9C44 -> 00005EDB # 1-55-5 9C45 -> 00005EE2 # 1-55-6 9C46 -> 00005EE1 # 1-55-7 9C47 -> 00005EE8 # 1-55-8 9C48 -> 00005EE9 # 1-55-9 9C49 -> 00005EEC # 1-55-10 9C4A -> 00005EF1 # 1-55-11 9C4B -> 00005EF3 # 1-55-12 9C4C -> 00005EF0 # 1-55-13 9C4D -> 00005EF4 # 1-55-14 9C4E -> 00005EF8 # 1-55-15 9C4F -> 00005EFE # 1-55-16 9C50 -> 00005F03 # 1-55-17 9C51 -> 00005F09 # 1-55-18 9C52 -> 00005F5D # 1-55-19 9C53 -> 00005F5C # 1-55-20 9C54 -> 00005F0B # 1-55-21 9C55 -> 00005F11 # 1-55-22 9C56 -> 00005F16 # 1-55-23 9C57 -> 00005F29 # 1-55-24 9C58 -> 00005F2D # 1-55-25 9C59 -> 00005F38 # 1-55-26 9C5A -> 00005F41 # 1-55-27 9C5B -> 00005F48 # 1-55-28 9C5C -> 00005F4C # 1-55-29 9C5D -> 00005F4E # 1-55-30 9C5E -> 00005F2F # 1-55-31 9C5F -> 00005F51 # 1-55-32 9C60 -> 00005F56 # 1-55-33 9C61 -> 00005F57 # 1-55-34 9C62 -> 00005F59 # 1-55-35 9C63 -> 00005F61 # 1-55-36 9C64 -> 00005F6D # 1-55-37 9C65 -> 00005F73 # 1-55-38 9C66 -> 00005F77 # 1-55-39 9C67 -> 00005F83 # 1-55-40 9C68 -> 00005F82 # 1-55-41 9C69 -> 00005F7F # 1-55-42 9C6A -> 00005F8A # 1-55-43 9C6B -> 00005F88 # 1-55-44 9C6C -> 00005F91 # 1-55-45 9C6D -> 00005F87 # 1-55-46 9C6E -> 00005F9E # 1-55-47 9C6F -> 00005F99 # 1-55-48 9C70 -> 00005F98 # 1-55-49 9C71 -> 00005FA0 # 1-55-50 9C72 -> 00005FA8 # 1-55-51 9C73 -> 00005FAD # 1-55-52 9C74 -> 00005FBC # 1-55-53 9C75 -> 00005FD6 # 1-55-54 9C76 -> 00005FFB # 1-55-55 9C77 -> 00005FE4 # 1-55-56 9C78 -> 00005FF8 # 1-55-57 9C79 -> 00005FF1 # 1-55-58 9C7A -> 00005FDD # 1-55-59 9C7B -> 000060B3 # 1-55-60 9C7C -> 00005FFF # 1-55-61 9C7D -> 00006021 # 1-55-62 9C7E -> 00006060 # 1-55-63 9C80 -> 00006019 # 1-55-64 9C81 -> 00006010 # 1-55-65 9C82 -> 00006029 # 1-55-66 9C83 -> 0000600E # 1-55-67 9C84 -> 00006031 # 1-55-68 9C85 -> 0000601B # 1-55-69 9C86 -> 00006015 # 1-55-70 9C87 -> 0000602B # 1-55-71 9C88 -> 00006026 # 1-55-72 9C89 -> 0000600F # 1-55-73 9C8A -> 0000603A # 1-55-74 9C8B -> 0000605A # 1-55-75 9C8C -> 00006041 # 1-55-76 9C8D -> 0000606A # 1-55-77 9C8E -> 00006077 # 1-55-78 9C8F -> 0000605F # 1-55-79 9C90 -> 0000604A # 1-55-80 9C91 -> 00006046 # 1-55-81 9C92 -> 0000604D # 1-55-82 9C93 -> 00006063 # 1-55-83 9C94 -> 00006043 # 1-55-84 9C95 -> 00006064 # 1-55-85 9C96 -> 00006042 # 1-55-86 9C97 -> 0000606C # 1-55-87 9C98 -> 0000606B # 1-55-88 9C99 -> 00006059 # 1-55-89 9C9A -> 00006081 # 1-55-90 9C9B -> 0000608D # 1-55-91 9C9C -> 000060E7 # 1-55-92 9C9D -> 00006083 # 1-55-93 9C9E -> 0000609A # 1-55-94 9C9F -> 00006084 # 1-56-1 9CA0 -> 0000609B # 1-56-2 9CA1 -> 00006096 # 1-56-3 9CA2 -> 00006097 # 1-56-4 9CA3 -> 00006092 # 1-56-5 9CA4 -> 000060A7 # 1-56-6 9CA5 -> 0000608B # 1-56-7 9CA6 -> 000060E1 # 1-56-8 9CA7 -> 000060B8 # 1-56-9 9CA8 -> 000060E0 # 1-56-10 9CA9 -> 000060D3 # 1-56-11 9CAA -> 000060B4 # 1-56-12 9CAB -> 00005FF0 # 1-56-13 9CAC -> 000060BD # 1-56-14 9CAD -> 000060C6 # 1-56-15 9CAE -> 000060B5 # 1-56-16 9CAF -> 000060D8 # 1-56-17 9CB0 -> 0000614D # 1-56-18 9CB1 -> 00006115 # 1-56-19 9CB2 -> 00006106 # 1-56-20 9CB3 -> 000060F6 # 1-56-21 9CB4 -> 000060F7 # 1-56-22 9CB5 -> 00006100 # 1-56-23 9CB6 -> 000060F4 # 1-56-24 9CB7 -> 000060FA # 1-56-25 9CB8 -> 00006103 # 1-56-26 9CB9 -> 00006121 # 1-56-27 9CBA -> 000060FB # 1-56-28 9CBB -> 000060F1 # 1-56-29 9CBC -> 0000610D # 1-56-30 9CBD -> 0000610E # 1-56-31 9CBE -> 00006147 # 1-56-32 9CBF -> 0000613E # 1-56-33 9CC0 -> 00006128 # 1-56-34 9CC1 -> 00006127 # 1-56-35 9CC2 -> 0000614A # 1-56-36 9CC3 -> 0000613F # 1-56-37 9CC4 -> 0000613C # 1-56-38 9CC5 -> 0000612C # 1-56-39 9CC6 -> 00006134 # 1-56-40 9CC7 -> 0000613D # 1-56-41 9CC8 -> 00006142 # 1-56-42 9CC9 -> 00006144 # 1-56-43 9CCA -> 00006173 # 1-56-44 9CCB -> 00006177 # 1-56-45 9CCC -> 00006158 # 1-56-46 9CCD -> 00006159 # 1-56-47 9CCE -> 0000615A # 1-56-48 9CCF -> 0000616B # 1-56-49 9CD0 -> 00006174 # 1-56-50 9CD1 -> 0000616F # 1-56-51 9CD2 -> 00006165 # 1-56-52 9CD3 -> 00006171 # 1-56-53 9CD4 -> 0000615F # 1-56-54 9CD5 -> 0000615D # 1-56-55 9CD6 -> 00006153 # 1-56-56 9CD7 -> 00006175 # 1-56-57 9CD8 -> 00006199 # 1-56-58 9CD9 -> 00006196 # 1-56-59 9CDA -> 00006187 # 1-56-60 9CDB -> 000061AC # 1-56-61 9CDC -> 00006194 # 1-56-62 9CDD -> 0000619A # 1-56-63 9CDE -> 0000618A # 1-56-64 9CDF -> 00006191 # 1-56-65 9CE0 -> 000061AB # 1-56-66 9CE1 -> 000061AE # 1-56-67 9CE2 -> 000061CC # 1-56-68 9CE3 -> 000061CA # 1-56-69 9CE4 -> 000061C9 # 1-56-70 9CE5 -> 000061F7 # 1-56-71 9CE6 -> 000061C8 # 1-56-72 9CE7 -> 000061C3 # 1-56-73 9CE8 -> 000061C6 # 1-56-74 9CE9 -> 000061BA # 1-56-75 9CEA -> 000061CB # 1-56-76 9CEB -> 00007F79 # 1-56-77 9CEC -> 000061CD # 1-56-78 9CED -> 000061E6 # 1-56-79 9CEE -> 000061E3 # 1-56-80 9CEF -> 000061F6 # 1-56-81 9CF0 -> 000061FA # 1-56-82 9CF1 -> 000061F4 # 1-56-83 9CF2 -> 000061FF # 1-56-84 9CF3 -> 000061FD # 1-56-85 9CF4 -> 000061FC # 1-56-86 9CF5 -> 000061FE # 1-56-87 9CF6 -> 00006200 # 1-56-88 9CF7 -> 00006208 # 1-56-89 9CF8 -> 00006209 # 1-56-90 9CF9 -> 0000620D # 1-56-91 9CFA -> 0000620C # 1-56-92 9CFB -> 00006214 # 1-56-93 9CFC -> 0000621B # 1-56-94 9D40 -> 0000621E # 1-57-1 9D41 -> 00006221 # 1-57-2 9D42 -> 0000622A # 1-57-3 9D43 -> 0000622E # 1-57-4 9D44 -> 00006230 # 1-57-5 9D45 -> 00006232 # 1-57-6 9D46 -> 00006233 # 1-57-7 9D47 -> 00006241 # 1-57-8 9D48 -> 0000624E # 1-57-9 9D49 -> 0000625E # 1-57-10 9D4A -> 00006263 # 1-57-11 9D4B -> 0000625B # 1-57-12 9D4C -> 00006260 # 1-57-13 9D4D -> 00006268 # 1-57-14 9D4E -> 0000627C # 1-57-15 9D4F -> 00006282 # 1-57-16 9D50 -> 00006289 # 1-57-17 9D51 -> 0000627E # 1-57-18 9D52 -> 00006292 # 1-57-19 9D53 -> 00006293 # 1-57-20 9D54 -> 00006296 # 1-57-21 9D55 -> 000062D4 # 1-57-22 9D56 -> 00006283 # 1-57-23 9D57 -> 00006294 # 1-57-24 9D58 -> 000062D7 # 1-57-25 9D59 -> 000062D1 # 1-57-26 9D5A -> 000062BB # 1-57-27 9D5B -> 000062CF # 1-57-28 9D5C -> 000062FF # 1-57-29 9D5D -> 000062C6 # 1-57-30 9D5E -> 000064D4 # 1-57-31 9D5F -> 000062C8 # 1-57-32 9D60 -> 000062DC # 1-57-33 9D61 -> 000062CC # 1-57-34 9D62 -> 000062CA # 1-57-35 9D63 -> 000062C2 # 1-57-36 9D64 -> 000062C7 # 1-57-37 9D65 -> 0000629B # 1-57-38 9D66 -> 000062C9 # 1-57-39 9D67 -> 0000630C # 1-57-40 9D68 -> 000062EE # 1-57-41 9D69 -> 000062F1 # 1-57-42 9D6A -> 00006327 # 1-57-43 9D6B -> 00006302 # 1-57-44 9D6C -> 00006308 # 1-57-45 9D6D -> 000062EF # 1-57-46 9D6E -> 000062F5 # 1-57-47 9D6F -> 00006350 # 1-57-48 9D70 -> 0000633E # 1-57-49 9D71 -> 0000634D # 1-57-50 9D72 -> 0000641C # 1-57-51 9D73 -> 0000634F # 1-57-52 9D74 -> 00006396 # 1-57-53 9D75 -> 0000638E # 1-57-54 9D76 -> 00006380 # 1-57-55 9D77 -> 000063AB # 1-57-56 9D78 -> 00006376 # 1-57-57 9D79 -> 000063A3 # 1-57-58 9D7A -> 0000638F # 1-57-59 9D7B -> 00006389 # 1-57-60 9D7C -> 0000639F # 1-57-61 9D7D -> 000063B5 # 1-57-62 9D7E -> 0000636B # 1-57-63 9D80 -> 00006369 # 1-57-64 9D81 -> 000063BE # 1-57-65 9D82 -> 000063E9 # 1-57-66 9D83 -> 000063C0 # 1-57-67 9D84 -> 000063C6 # 1-57-68 9D85 -> 000063E3 # 1-57-69 9D86 -> 000063C9 # 1-57-70 9D87 -> 000063D2 # 1-57-71 9D88 -> 000063F6 # 1-57-72 9D89 -> 000063C4 # 1-57-73 9D8A -> 00006416 # 1-57-74 9D8B -> 00006434 # 1-57-75 9D8C -> 00006406 # 1-57-76 9D8D -> 00006413 # 1-57-77 9D8E -> 00006426 # 1-57-78 9D8F -> 00006436 # 1-57-79 9D90 -> 0000651D # 1-57-80 9D91 -> 00006417 # 1-57-81 9D92 -> 00006428 # 1-57-82 9D93 -> 0000640F # 1-57-83 9D94 -> 00006467 # 1-57-84 9D95 -> 0000646F # 1-57-85 9D96 -> 00006476 # 1-57-86 9D97 -> 0000644E # 1-57-87 9D98 -> 0000652A # 1-57-88 9D99 -> 00006495 # 1-57-89 9D9A -> 00006493 # 1-57-90 9D9B -> 000064A5 # 1-57-91 9D9C -> 000064A9 # 1-57-92 9D9D -> 00006488 # 1-57-93 9D9E -> 000064BC # 1-57-94 9D9F -> 000064DA # 1-58-1 9DA0 -> 000064D2 # 1-58-2 9DA1 -> 000064C5 # 1-58-3 9DA2 -> 000064C7 # 1-58-4 9DA3 -> 000064BB # 1-58-5 9DA4 -> 000064D8 # 1-58-6 9DA5 -> 000064C2 # 1-58-7 9DA6 -> 000064F1 # 1-58-8 9DA7 -> 000064E7 # 1-58-9 9DA8 -> 00008209 # 1-58-10 9DA9 -> 000064E0 # 1-58-11 9DAA -> 000064E1 # 1-58-12 9DAB -> 000062AC # 1-58-13 9DAC -> 000064E3 # 1-58-14 9DAD -> 000064EF # 1-58-15 9DAE -> 0000652C # 1-58-16 9DAF -> 000064F6 # 1-58-17 9DB0 -> 000064F4 # 1-58-18 9DB1 -> 000064F2 # 1-58-19 9DB2 -> 000064FA # 1-58-20 9DB3 -> 00006500 # 1-58-21 9DB4 -> 000064FD # 1-58-22 9DB5 -> 00006518 # 1-58-23 9DB6 -> 0000651C # 1-58-24 9DB7 -> 00006505 # 1-58-25 9DB8 -> 00006524 # 1-58-26 9DB9 -> 00006523 # 1-58-27 9DBA -> 0000652B # 1-58-28 9DBB -> 00006534 # 1-58-29 9DBC -> 00006535 # 1-58-30 9DBD -> 00006537 # 1-58-31 9DBE -> 00006536 # 1-58-32 9DBF -> 00006538 # 1-58-33 9DC0 -> 0000754B # 1-58-34 9DC1 -> 00006548 # 1-58-35 9DC2 -> 00006556 # 1-58-36 9DC3 -> 00006555 # 1-58-37 9DC4 -> 0000654D # 1-58-38 9DC5 -> 00006558 # 1-58-39 9DC6 -> 0000655E # 1-58-40 9DC7 -> 0000655D # 1-58-41 9DC8 -> 00006572 # 1-58-42 9DC9 -> 00006578 # 1-58-43 9DCA -> 00006582 # 1-58-44 9DCB -> 00006583 # 1-58-45 9DCC -> 00008B8A # 1-58-46 9DCD -> 0000659B # 1-58-47 9DCE -> 0000659F # 1-58-48 9DCF -> 000065AB # 1-58-49 9DD0 -> 000065B7 # 1-58-50 9DD1 -> 000065C3 # 1-58-51 9DD2 -> 000065C6 # 1-58-52 9DD3 -> 000065C1 # 1-58-53 9DD4 -> 000065C4 # 1-58-54 9DD5 -> 000065CC # 1-58-55 9DD6 -> 000065D2 # 1-58-56 9DD7 -> 000065DB # 1-58-57 9DD8 -> 000065D9 # 1-58-58 9DD9 -> 000065E0 # 1-58-59 9DDA -> 000065E1 # 1-58-60 9DDB -> 000065F1 # 1-58-61 9DDC -> 00006772 # 1-58-62 9DDD -> 0000660A # 1-58-63 9DDE -> 00006603 # 1-58-64 9DDF -> 000065FB # 1-58-65 9DE0 -> 00006773 # 1-58-66 9DE1 -> 00006635 # 1-58-67 9DE2 -> 00006636 # 1-58-68 9DE3 -> 00006634 # 1-58-69 9DE4 -> 0000661C # 1-58-70 9DE5 -> 0000664F # 1-58-71 9DE6 -> 00006644 # 1-58-72 9DE7 -> 00006649 # 1-58-73 9DE8 -> 00006641 # 1-58-74 9DE9 -> 0000665E # 1-58-75 9DEA -> 0000665D # 1-58-76 9DEB -> 00006664 # 1-58-77 9DEC -> 00006667 # 1-58-78 9DED -> 00006668 # 1-58-79 9DEE -> 0000665F # 1-58-80 9DEF -> 00006662 # 1-58-81 9DF0 -> 00006670 # 1-58-82 9DF1 -> 00006683 # 1-58-83 9DF2 -> 00006688 # 1-58-84 9DF3 -> 0000668E # 1-58-85 9DF4 -> 00006689 # 1-58-86 9DF5 -> 00006684 # 1-58-87 9DF6 -> 00006698 # 1-58-88 9DF7 -> 0000669D # 1-58-89 9DF8 -> 000066C1 # 1-58-90 9DF9 -> 000066B9 # 1-58-91 9DFA -> 000066C9 # 1-58-92 9DFB -> 000066BE # 1-58-93 9DFC -> 000066BC # 1-58-94 9E40 -> 000066C4 # 1-59-1 9E41 -> 000066B8 # 1-59-2 9E42 -> 000066D6 # 1-59-3 9E43 -> 000066DA # 1-59-4 9E44 -> 000066E0 # 1-59-5 9E45 -> 0000663F # 1-59-6 9E46 -> 000066E6 # 1-59-7 9E47 -> 000066E9 # 1-59-8 9E48 -> 000066F0 # 1-59-9 9E49 -> 000066F5 # 1-59-10 9E4A -> 000066F7 # 1-59-11 9E4B -> 0000670F # 1-59-12 9E4C -> 00006716 # 1-59-13 9E4D -> 0000671E # 1-59-14 9E4E -> 00006726 # 1-59-15 9E4F -> 00006727 # 1-59-16 9E50 -> 00009738 # 1-59-17 9E51 -> 0000672E # 1-59-18 9E52 -> 0000673F # 1-59-19 9E53 -> 00006736 # 1-59-20 9E54 -> 00006741 # 1-59-21 9E55 -> 00006738 # 1-59-22 9E56 -> 00006737 # 1-59-23 9E57 -> 00006746 # 1-59-24 9E58 -> 0000675E # 1-59-25 9E59 -> 00006760 # 1-59-26 9E5A -> 00006759 # 1-59-27 9E5B -> 00006763 # 1-59-28 9E5C -> 00006764 # 1-59-29 9E5D -> 00006789 # 1-59-30 9E5E -> 00006770 # 1-59-31 9E5F -> 000067A9 # 1-59-32 9E60 -> 0000677C # 1-59-33 9E61 -> 0000676A # 1-59-34 9E62 -> 0000678C # 1-59-35 9E63 -> 0000678B # 1-59-36 9E64 -> 000067A6 # 1-59-37 9E65 -> 000067A1 # 1-59-38 9E66 -> 00006785 # 1-59-39 9E67 -> 000067B7 # 1-59-40 9E68 -> 000067EF # 1-59-41 9E69 -> 000067B4 # 1-59-42 9E6A -> 000067EC # 1-59-43 9E6B -> 000067B3 # 1-59-44 9E6C -> 000067E9 # 1-59-45 9E6D -> 000067B8 # 1-59-46 9E6E -> 000067E4 # 1-59-47 9E6F -> 000067DE # 1-59-48 9E70 -> 000067DD # 1-59-49 9E71 -> 000067E2 # 1-59-50 9E72 -> 000067EE # 1-59-51 9E73 -> 000067B9 # 1-59-52 9E74 -> 000067CE # 1-59-53 9E75 -> 000067C6 # 1-59-54 9E76 -> 000067E7 # 1-59-55 9E77 -> 00006A9C # 1-59-56 9E78 -> 0000681E # 1-59-57 9E79 -> 00006846 # 1-59-58 9E7A -> 00006829 # 1-59-59 9E7B -> 00006840 # 1-59-60 9E7C -> 0000684D # 1-59-61 9E7D -> 00006832 # 1-59-62 9E7E -> 0000684E # 1-59-63 9E80 -> 000068B3 # 1-59-64 9E81 -> 0000682B # 1-59-65 9E82 -> 00006859 # 1-59-66 9E83 -> 00006863 # 1-59-67 9E84 -> 00006877 # 1-59-68 9E85 -> 0000687F # 1-59-69 9E86 -> 0000689F # 1-59-70 9E87 -> 0000688F # 1-59-71 9E88 -> 000068AD # 1-59-72 9E89 -> 00006894 # 1-59-73 9E8A -> 0000689D # 1-59-74 9E8B -> 0000689B # 1-59-75 9E8C -> 00006883 # 1-59-76 9E8D -> 00006AAE # 1-59-77 9E8E -> 000068B9 # 1-59-78 9E8F -> 00006874 # 1-59-79 9E90 -> 000068B5 # 1-59-80 9E91 -> 000068A0 # 1-59-81 9E92 -> 000068BA # 1-59-82 9E93 -> 0000690F # 1-59-83 9E94 -> 0000688D # 1-59-84 9E95 -> 0000687E # 1-59-85 9E96 -> 00006901 # 1-59-86 9E97 -> 000068CA # 1-59-87 9E98 -> 00006908 # 1-59-88 9E99 -> 000068D8 # 1-59-89 9E9A -> 00006922 # 1-59-90 9E9B -> 00006926 # 1-59-91 9E9C -> 000068E1 # 1-59-92 9E9D -> 0000690C # 1-59-93 9E9E -> 000068CD # 1-59-94 9E9F -> 000068D4 # 1-60-1 9EA0 -> 000068E7 # 1-60-2 9EA1 -> 000068D5 # 1-60-3 9EA2 -> 00006936 # 1-60-4 9EA3 -> 00006912 # 1-60-5 9EA4 -> 00006904 # 1-60-6 9EA5 -> 000068D7 # 1-60-7 9EA6 -> 000068E3 # 1-60-8 9EA7 -> 00006925 # 1-60-9 9EA8 -> 000068F9 # 1-60-10 9EA9 -> 000068E0 # 1-60-11 9EAA -> 000068EF # 1-60-12 9EAB -> 00006928 # 1-60-13 9EAC -> 0000692A # 1-60-14 9EAD -> 0000691A # 1-60-15 9EAE -> 00006923 # 1-60-16 9EAF -> 00006921 # 1-60-17 9EB0 -> 000068C6 # 1-60-18 9EB1 -> 00006979 # 1-60-19 9EB2 -> 00006977 # 1-60-20 9EB3 -> 0000695C # 1-60-21 9EB4 -> 00006978 # 1-60-22 9EB5 -> 0000696B # 1-60-23 9EB6 -> 00006954 # 1-60-24 9EB7 -> 0000697E # 1-60-25 9EB8 -> 0000696E # 1-60-26 9EB9 -> 00006939 # 1-60-27 9EBA -> 00006974 # 1-60-28 9EBB -> 0000693D # 1-60-29 9EBC -> 00006959 # 1-60-30 9EBD -> 00006930 # 1-60-31 9EBE -> 00006961 # 1-60-32 9EBF -> 0000695E # 1-60-33 9EC0 -> 0000695D # 1-60-34 9EC1 -> 00006981 # 1-60-35 9EC2 -> 0000696A # 1-60-36 9EC3 -> 000069B2 # 1-60-37 9EC4 -> 000069AE # 1-60-38 9EC5 -> 000069D0 # 1-60-39 9EC6 -> 000069BF # 1-60-40 9EC7 -> 000069C1 # 1-60-41 9EC8 -> 000069D3 # 1-60-42 9EC9 -> 000069BE # 1-60-43 9ECA -> 000069CE # 1-60-44 9ECB -> 00005BE8 # 1-60-45 9ECC -> 000069CA # 1-60-46 9ECD -> 000069DD # 1-60-47 9ECE -> 000069BB # 1-60-48 9ECF -> 000069C3 # 1-60-49 9ED0 -> 000069A7 # 1-60-50 9ED1 -> 00006A2E # 1-60-51 9ED2 -> 00006991 # 1-60-52 9ED3 -> 000069A0 # 1-60-53 9ED4 -> 0000699C # 1-60-54 9ED5 -> 00006995 # 1-60-55 9ED6 -> 000069B4 # 1-60-56 9ED7 -> 000069DE # 1-60-57 9ED8 -> 000069E8 # 1-60-58 9ED9 -> 00006A02 # 1-60-59 9EDA -> 00006A1B # 1-60-60 9EDB -> 000069FF # 1-60-61 9EDC -> 00006B0A # 1-60-62 9EDD -> 000069F9 # 1-60-63 9EDE -> 000069F2 # 1-60-64 9EDF -> 000069E7 # 1-60-65 9EE0 -> 00006A05 # 1-60-66 9EE1 -> 000069B1 # 1-60-67 9EE2 -> 00006A1E # 1-60-68 9EE3 -> 000069ED # 1-60-69 9EE4 -> 00006A14 # 1-60-70 9EE5 -> 000069EB # 1-60-71 9EE6 -> 00006A0A # 1-60-72 9EE7 -> 00006A12 # 1-60-73 9EE8 -> 00006AC1 # 1-60-74 9EE9 -> 00006A23 # 1-60-75 9EEA -> 00006A13 # 1-60-76 9EEB -> 00006A44 # 1-60-77 9EEC -> 00006A0C # 1-60-78 9EED -> 00006A72 # 1-60-79 9EEE -> 00006A36 # 1-60-80 9EEF -> 00006A78 # 1-60-81 9EF0 -> 00006A47 # 1-60-82 9EF1 -> 00006A62 # 1-60-83 9EF2 -> 00006A59 # 1-60-84 9EF3 -> 00006A66 # 1-60-85 9EF4 -> 00006A48 # 1-60-86 9EF5 -> 00006A38 # 1-60-87 9EF6 -> 00006A22 # 1-60-88 9EF7 -> 00006A90 # 1-60-89 9EF8 -> 00006A8D # 1-60-90 9EF9 -> 00006AA0 # 1-60-91 9EFA -> 00006A84 # 1-60-92 9EFB -> 00006AA2 # 1-60-93 9EFC -> 00006AA3 # 1-60-94 9F40 -> 00006A97 # 1-61-1 9F41 -> 00008617 # 1-61-2 9F42 -> 00006ABB # 1-61-3 9F43 -> 00006AC3 # 1-61-4 9F44 -> 00006AC2 # 1-61-5 9F45 -> 00006AB8 # 1-61-6 9F46 -> 00006AB3 # 1-61-7 9F47 -> 00006AAC # 1-61-8 9F48 -> 00006ADE # 1-61-9 9F49 -> 00006AD1 # 1-61-10 9F4A -> 00006ADF # 1-61-11 9F4B -> 00006AAA # 1-61-12 9F4C -> 00006ADA # 1-61-13 9F4D -> 00006AEA # 1-61-14 9F4E -> 00006AFB # 1-61-15 9F4F -> 00006B05 # 1-61-16 9F50 -> 00008616 # 1-61-17 9F51 -> 00006AFA # 1-61-18 9F52 -> 00006B12 # 1-61-19 9F53 -> 00006B16 # 1-61-20 9F54 -> 00009B31 # 1-61-21 9F55 -> 00006B1F # 1-61-22 9F56 -> 00006B38 # 1-61-23 9F57 -> 00006B37 # 1-61-24 9F58 -> 000076DC # 1-61-25 9F59 -> 00006B39 # 1-61-26 9F5A -> 000098EE # 1-61-27 9F5B -> 00006B47 # 1-61-28 9F5C -> 00006B43 # 1-61-29 9F5D -> 00006B49 # 1-61-30 9F5E -> 00006B50 # 1-61-31 9F5F -> 00006B59 # 1-61-32 9F60 -> 00006B54 # 1-61-33 9F61 -> 00006B5B # 1-61-34 9F62 -> 00006B5F # 1-61-35 9F63 -> 00006B61 # 1-61-36 9F64 -> 00006B78 # 1-61-37 9F65 -> 00006B79 # 1-61-38 9F66 -> 00006B7F # 1-61-39 9F67 -> 00006B80 # 1-61-40 9F68 -> 00006B84 # 1-61-41 9F69 -> 00006B83 # 1-61-42 9F6A -> 00006B8D # 1-61-43 9F6B -> 00006B98 # 1-61-44 9F6C -> 00006B95 # 1-61-45 9F6D -> 00006B9E # 1-61-46 9F6E -> 00006BA4 # 1-61-47 9F6F -> 00006BAA # 1-61-48 9F70 -> 00006BAB # 1-61-49 9F71 -> 00006BAF # 1-61-50 9F72 -> 00006BB2 # 1-61-51 9F73 -> 00006BB1 # 1-61-52 9F74 -> 00006BB3 # 1-61-53 9F75 -> 00006BB7 # 1-61-54 9F76 -> 00006BBC # 1-61-55 9F77 -> 00006BC6 # 1-61-56 9F78 -> 00006BCB # 1-61-57 9F79 -> 00006BD3 # 1-61-58 9F7A -> 00006BDF # 1-61-59 9F7B -> 00006BEC # 1-61-60 9F7C -> 00006BEB # 1-61-61 9F7D -> 00006BF3 # 1-61-62 9F7E -> 00006BEF # 1-61-63 9F80 -> 00009EBE # 1-61-64 9F81 -> 00006C08 # 1-61-65 9F82 -> 00006C13 # 1-61-66 9F83 -> 00006C14 # 1-61-67 9F84 -> 00006C1B # 1-61-68 9F85 -> 00006C24 # 1-61-69 9F86 -> 00006C23 # 1-61-70 9F87 -> 00006C5E # 1-61-71 9F88 -> 00006C55 # 1-61-72 9F89 -> 00006C62 # 1-61-73 9F8A -> 00006C6A # 1-61-74 9F8B -> 00006C82 # 1-61-75 9F8C -> 00006C8D # 1-61-76 9F8D -> 00006C9A # 1-61-77 9F8E -> 00006C81 # 1-61-78 9F8F -> 00006C9B # 1-61-79 9F90 -> 00006C7E # 1-61-80 9F91 -> 00006C68 # 1-61-81 9F92 -> 00006C73 # 1-61-82 9F93 -> 00006C92 # 1-61-83 9F94 -> 00006C90 # 1-61-84 9F95 -> 00006CC4 # 1-61-85 9F96 -> 00006CF1 # 1-61-86 9F97 -> 00006CD3 # 1-61-87 9F98 -> 00006CBD # 1-61-88 9F99 -> 00006CD7 # 1-61-89 9F9A -> 00006CC5 # 1-61-90 9F9B -> 00006CDD # 1-61-91 9F9C -> 00006CAE # 1-61-92 9F9D -> 00006CB1 # 1-61-93 9F9E -> 00006CBE # 1-61-94 9F9F -> 00006CBA # 1-62-1 9FA0 -> 00006CDB # 1-62-2 9FA1 -> 00006CEF # 1-62-3 9FA2 -> 00006CD9 # 1-62-4 9FA3 -> 00006CEA # 1-62-5 9FA4 -> 00006D1F # 1-62-6 9FA5 -> 0000884D # 1-62-7 9FA6 -> 00006D36 # 1-62-8 9FA7 -> 00006D2B # 1-62-9 9FA8 -> 00006D3D # 1-62-10 9FA9 -> 00006D38 # 1-62-11 9FAA -> 00006D19 # 1-62-12 9FAB -> 00006D35 # 1-62-13 9FAC -> 00006D33 # 1-62-14 9FAD -> 00006D12 # 1-62-15 9FAE -> 00006D0C # 1-62-16 9FAF -> 00006D63 # 1-62-17 9FB0 -> 00006D93 # 1-62-18 9FB1 -> 00006D64 # 1-62-19 9FB2 -> 00006D5A # 1-62-20 9FB3 -> 00006D79 # 1-62-21 9FB4 -> 00006D59 # 1-62-22 9FB5 -> 00006D8E # 1-62-23 9FB6 -> 00006D95 # 1-62-24 9FB7 -> 00006FE4 # 1-62-25 9FB8 -> 00006D85 # 1-62-26 9FB9 -> 00006DF9 # 1-62-27 9FBA -> 00006E15 # 1-62-28 9FBB -> 00006E0A # 1-62-29 9FBC -> 00006DB5 # 1-62-30 9FBD -> 00006DC7 # 1-62-31 9FBE -> 00006DE6 # 1-62-32 9FBF -> 00006DB8 # 1-62-33 9FC0 -> 00006DC6 # 1-62-34 9FC1 -> 00006DEC # 1-62-35 9FC2 -> 00006DDE # 1-62-36 9FC3 -> 00006DCC # 1-62-37 9FC4 -> 00006DE8 # 1-62-38 9FC5 -> 00006DD2 # 1-62-39 9FC6 -> 00006DC5 # 1-62-40 9FC7 -> 00006DFA # 1-62-41 9FC8 -> 00006DD9 # 1-62-42 9FC9 -> 00006DE4 # 1-62-43 9FCA -> 00006DD5 # 1-62-44 9FCB -> 00006DEA # 1-62-45 9FCC -> 00006DEE # 1-62-46 9FCD -> 00006E2D # 1-62-47 9FCE -> 00006E6E # 1-62-48 9FCF -> 00006E2E # 1-62-49 9FD0 -> 00006E19 # 1-62-50 9FD1 -> 00006E72 # 1-62-51 9FD2 -> 00006E5F # 1-62-52 9FD3 -> 00006E3E # 1-62-53 9FD4 -> 00006E23 # 1-62-54 9FD5 -> 00006E6B # 1-62-55 9FD6 -> 00006E2B # 1-62-56 9FD7 -> 00006E76 # 1-62-57 9FD8 -> 00006E4D # 1-62-58 9FD9 -> 00006E1F # 1-62-59 9FDA -> 00006E43 # 1-62-60 9FDB -> 00006E3A # 1-62-61 9FDC -> 00006E4E # 1-62-62 9FDD -> 00006E24 # 1-62-63 9FDE -> 00006EFF # 1-62-64 9FDF -> 00006E1D # 1-62-65 9FE0 -> 00006E38 # 1-62-66 9FE1 -> 00006E82 # 1-62-67 9FE2 -> 00006EAA # 1-62-68 9FE3 -> 00006E98 # 1-62-69 9FE4 -> 00006EC9 # 1-62-70 9FE5 -> 00006EB7 # 1-62-71 9FE6 -> 00006ED3 # 1-62-72 9FE7 -> 00006EBD # 1-62-73 9FE8 -> 00006EAF # 1-62-74 9FE9 -> 00006EC4 # 1-62-75 9FEA -> 00006EB2 # 1-62-76 9FEB -> 00006ED4 # 1-62-77 9FEC -> 00006ED5 # 1-62-78 9FED -> 00006E8F # 1-62-79 9FEE -> 00006EA5 # 1-62-80 9FEF -> 00006EC2 # 1-62-81 9FF0 -> 00006E9F # 1-62-82 9FF1 -> 00006F41 # 1-62-83 9FF2 -> 00006F11 # 1-62-84 9FF3 -> 0000704C # 1-62-85 9FF4 -> 00006EEC # 1-62-86 9FF5 -> 00006EF8 # 1-62-87 9FF6 -> 00006EFE # 1-62-88 9FF7 -> 00006F3F # 1-62-89 9FF8 -> 00006EF2 # 1-62-90 9FF9 -> 00006F31 # 1-62-91 9FFA -> 00006EEF # 1-62-92 9FFB -> 00006F32 # 1-62-93 9FFC -> 00006ECC # 1-62-94 E040 -> 00006F3E # 1-63-1 E041 -> 00006F13 # 1-63-2 E042 -> 00006EF7 # 1-63-3 E043 -> 00006F86 # 1-63-4 E044 -> 00006F7A # 1-63-5 E045 -> 00006F78 # 1-63-6 E046 -> 00006F81 # 1-63-7 E047 -> 00006F80 # 1-63-8 E048 -> 00006F6F # 1-63-9 E049 -> 00006F5B # 1-63-10 E04A -> 00006FF3 # 1-63-11 E04B -> 00006F6D # 1-63-12 E04C -> 00006F82 # 1-63-13 E04D -> 00006F7C # 1-63-14 E04E -> 00006F58 # 1-63-15 E04F -> 00006F8E # 1-63-16 E050 -> 00006F91 # 1-63-17 E051 -> 00006FC2 # 1-63-18 E052 -> 00006F66 # 1-63-19 E053 -> 00006FB3 # 1-63-20 E054 -> 00006FA3 # 1-63-21 E055 -> 00006FA1 # 1-63-22 E056 -> 00006FA4 # 1-63-23 E057 -> 00006FB9 # 1-63-24 E058 -> 00006FC6 # 1-63-25 E059 -> 00006FAA # 1-63-26 E05A -> 00006FDF # 1-63-27 E05B -> 00006FD5 # 1-63-28 E05C -> 00006FEC # 1-63-29 E05D -> 00006FD4 # 1-63-30 E05E -> 00006FD8 # 1-63-31 E05F -> 00006FF1 # 1-63-32 E060 -> 00006FEE # 1-63-33 E061 -> 00006FDB # 1-63-34 E062 -> 00007009 # 1-63-35 E063 -> 0000700B # 1-63-36 E064 -> 00006FFA # 1-63-37 E065 -> 00007011 # 1-63-38 E066 -> 00007001 # 1-63-39 E067 -> 0000700F # 1-63-40 E068 -> 00006FFE # 1-63-41 E069 -> 0000701B # 1-63-42 E06A -> 0000701A # 1-63-43 E06B -> 00006F74 # 1-63-44 E06C -> 0000701D # 1-63-45 E06D -> 00007018 # 1-63-46 E06E -> 0000701F # 1-63-47 E06F -> 00007030 # 1-63-48 E070 -> 0000703E # 1-63-49 E071 -> 00007032 # 1-63-50 E072 -> 00007051 # 1-63-51 E073 -> 00007063 # 1-63-52 E074 -> 00007099 # 1-63-53 E075 -> 00007092 # 1-63-54 E076 -> 000070AF # 1-63-55 E077 -> 000070F1 # 1-63-56 E078 -> 000070AC # 1-63-57 E079 -> 000070B8 # 1-63-58 E07A -> 000070B3 # 1-63-59 E07B -> 000070AE # 1-63-60 E07C -> 000070DF # 1-63-61 E07D -> 000070CB # 1-63-62 E07E -> 000070DD # 1-63-63 E080 -> 000070D9 # 1-63-64 E081 -> 00007109 # 1-63-65 E082 -> 000070FD # 1-63-66 E083 -> 0000711C # 1-63-67 E084 -> 00007119 # 1-63-68 E085 -> 00007165 # 1-63-69 E086 -> 00007155 # 1-63-70 E087 -> 00007188 # 1-63-71 E088 -> 00007166 # 1-63-72 E089 -> 00007162 # 1-63-73 E08A -> 0000714C # 1-63-74 E08B -> 00007156 # 1-63-75 E08C -> 0000716C # 1-63-76 E08D -> 0000718F # 1-63-77 E08E -> 000071FB # 1-63-78 E08F -> 00007184 # 1-63-79 E090 -> 00007195 # 1-63-80 E091 -> 000071A8 # 1-63-81 E092 -> 000071AC # 1-63-82 E093 -> 000071D7 # 1-63-83 E094 -> 000071B9 # 1-63-84 E095 -> 000071BE # 1-63-85 E096 -> 000071D2 # 1-63-86 E097 -> 000071C9 # 1-63-87 E098 -> 000071D4 # 1-63-88 E099 -> 000071CE # 1-63-89 E09A -> 000071E0 # 1-63-90 E09B -> 000071EC # 1-63-91 E09C -> 000071E7 # 1-63-92 E09D -> 000071F5 # 1-63-93 E09E -> 000071FC # 1-63-94 E09F -> 000071F9 # 1-64-1 E0A0 -> 000071FF # 1-64-2 E0A1 -> 0000720D # 1-64-3 E0A2 -> 00007210 # 1-64-4 E0A3 -> 0000721B # 1-64-5 E0A4 -> 00007228 # 1-64-6 E0A5 -> 0000722D # 1-64-7 E0A6 -> 0000722C # 1-64-8 E0A7 -> 00007230 # 1-64-9 E0A8 -> 00007232 # 1-64-10 E0A9 -> 0000723B # 1-64-11 E0AA -> 0000723C # 1-64-12 E0AB -> 0000723F # 1-64-13 E0AC -> 00007240 # 1-64-14 E0AD -> 00007246 # 1-64-15 E0AE -> 0000724B # 1-64-16 E0AF -> 00007258 # 1-64-17 E0B0 -> 00007274 # 1-64-18 E0B1 -> 0000727E # 1-64-19 E0B2 -> 00007282 # 1-64-20 E0B3 -> 00007281 # 1-64-21 E0B4 -> 00007287 # 1-64-22 E0B5 -> 00007292 # 1-64-23 E0B6 -> 00007296 # 1-64-24 E0B7 -> 000072A2 # 1-64-25 E0B8 -> 000072A7 # 1-64-26 E0B9 -> 000072B9 # 1-64-27 E0BA -> 000072B2 # 1-64-28 E0BB -> 000072C3 # 1-64-29 E0BC -> 000072C6 # 1-64-30 E0BD -> 000072C4 # 1-64-31 E0BE -> 000072CE # 1-64-32 E0BF -> 000072D2 # 1-64-33 E0C0 -> 000072E2 # 1-64-34 E0C1 -> 000072E0 # 1-64-35 E0C2 -> 000072E1 # 1-64-36 E0C3 -> 000072F9 # 1-64-37 E0C4 -> 000072F7 # 1-64-38 E0C5 -> 0000500F # 1-64-39 E0C6 -> 00007317 # 1-64-40 E0C7 -> 0000730A # 1-64-41 E0C8 -> 0000731C # 1-64-42 E0C9 -> 00007316 # 1-64-43 E0CA -> 0000731D # 1-64-44 E0CB -> 00007334 # 1-64-45 E0CC -> 0000732F # 1-64-46 E0CD -> 00007329 # 1-64-47 E0CE -> 00007325 # 1-64-48 E0CF -> 0000733E # 1-64-49 E0D0 -> 0000734E # 1-64-50 E0D1 -> 0000734F # 1-64-51 E0D2 -> 00009ED8 # 1-64-52 E0D3 -> 00007357 # 1-64-53 E0D4 -> 0000736A # 1-64-54 E0D5 -> 00007368 # 1-64-55 E0D6 -> 00007370 # 1-64-56 E0D7 -> 00007378 # 1-64-57 E0D8 -> 00007375 # 1-64-58 E0D9 -> 0000737B # 1-64-59 E0DA -> 0000737A # 1-64-60 E0DB -> 000073C8 # 1-64-61 E0DC -> 000073B3 # 1-64-62 E0DD -> 000073CE # 1-64-63 E0DE -> 000073BB # 1-64-64 E0DF -> 000073C0 # 1-64-65 E0E0 -> 000073E5 # 1-64-66 E0E1 -> 000073EE # 1-64-67 E0E2 -> 000073DE # 1-64-68 E0E3 -> 000074A2 # 1-64-69 E0E4 -> 00007405 # 1-64-70 E0E5 -> 0000746F # 1-64-71 E0E6 -> 00007425 # 1-64-72 E0E7 -> 000073F8 # 1-64-73 E0E8 -> 00007432 # 1-64-74 E0E9 -> 0000743A # 1-64-75 E0EA -> 00007455 # 1-64-76 E0EB -> 0000743F # 1-64-77 E0EC -> 0000745F # 1-64-78 E0ED -> 00007459 # 1-64-79 E0EE -> 00007441 # 1-64-80 E0EF -> 0000745C # 1-64-81 E0F0 -> 00007469 # 1-64-82 E0F1 -> 00007470 # 1-64-83 E0F2 -> 00007463 # 1-64-84 E0F3 -> 0000746A # 1-64-85 E0F4 -> 00007476 # 1-64-86 E0F5 -> 0000747E # 1-64-87 E0F6 -> 0000748B # 1-64-88 E0F7 -> 0000749E # 1-64-89 E0F8 -> 000074A7 # 1-64-90 E0F9 -> 000074CA # 1-64-91 E0FA -> 000074CF # 1-64-92 E0FB -> 000074D4 # 1-64-93 E0FC -> 000073F1 # 1-64-94 E140 -> 000074E0 # 1-65-1 E141 -> 000074E3 # 1-65-2 E142 -> 000074E7 # 1-65-3 E143 -> 000074E9 # 1-65-4 E144 -> 000074EE # 1-65-5 E145 -> 000074F2 # 1-65-6 E146 -> 000074F0 # 1-65-7 E147 -> 000074F1 # 1-65-8 E148 -> 000074F8 # 1-65-9 E149 -> 000074F7 # 1-65-10 E14A -> 00007504 # 1-65-11 E14B -> 00007503 # 1-65-12 E14C -> 00007505 # 1-65-13 E14D -> 0000750C # 1-65-14 E14E -> 0000750E # 1-65-15 E14F -> 0000750D # 1-65-16 E150 -> 00007515 # 1-65-17 E151 -> 00007513 # 1-65-18 E152 -> 0000751E # 1-65-19 E153 -> 00007526 # 1-65-20 E154 -> 0000752C # 1-65-21 E155 -> 0000753C # 1-65-22 E156 -> 00007544 # 1-65-23 E157 -> 0000754D # 1-65-24 E158 -> 0000754A # 1-65-25 E159 -> 00007549 # 1-65-26 E15A -> 0000755B # 1-65-27 E15B -> 00007546 # 1-65-28 E15C -> 0000755A # 1-65-29 E15D -> 00007569 # 1-65-30 E15E -> 00007564 # 1-65-31 E15F -> 00007567 # 1-65-32 E160 -> 0000756B # 1-65-33 E161 -> 0000756D # 1-65-34 E162 -> 00007578 # 1-65-35 E163 -> 00007576 # 1-65-36 E164 -> 00007586 # 1-65-37 E165 -> 00007587 # 1-65-38 E166 -> 00007574 # 1-65-39 E167 -> 0000758A # 1-65-40 E168 -> 00007589 # 1-65-41 E169 -> 00007582 # 1-65-42 E16A -> 00007594 # 1-65-43 E16B -> 0000759A # 1-65-44 E16C -> 0000759D # 1-65-45 E16D -> 000075A5 # 1-65-46 E16E -> 000075A3 # 1-65-47 E16F -> 000075C2 # 1-65-48 E170 -> 000075B3 # 1-65-49 E171 -> 000075C3 # 1-65-50 E172 -> 000075B5 # 1-65-51 E173 -> 000075BD # 1-65-52 E174 -> 000075B8 # 1-65-53 E175 -> 000075BC # 1-65-54 E176 -> 000075B1 # 1-65-55 E177 -> 000075CD # 1-65-56 E178 -> 000075CA # 1-65-57 E179 -> 000075D2 # 1-65-58 E17A -> 000075D9 # 1-65-59 E17B -> 000075E3 # 1-65-60 E17C -> 000075DE # 1-65-61 E17D -> 000075FE # 1-65-62 E17E -> 000075FF # 1-65-63 E180 -> 000075FC # 1-65-64 E181 -> 00007601 # 1-65-65 E182 -> 000075F0 # 1-65-66 E183 -> 000075FA # 1-65-67 E184 -> 000075F2 # 1-65-68 E185 -> 000075F3 # 1-65-69 E186 -> 0000760B # 1-65-70 E187 -> 0000760D # 1-65-71 E188 -> 00007609 # 1-65-72 E189 -> 0000761F # 1-65-73 E18A -> 00007627 # 1-65-74 E18B -> 00007620 # 1-65-75 E18C -> 00007621 # 1-65-76 E18D -> 00007622 # 1-65-77 E18E -> 00007624 # 1-65-78 E18F -> 00007634 # 1-65-79 E190 -> 00007630 # 1-65-80 E191 -> 0000763B # 1-65-81 E192 -> 00007647 # 1-65-82 E193 -> 00007648 # 1-65-83 E194 -> 00007646 # 1-65-84 E195 -> 0000765C # 1-65-85 E196 -> 00007658 # 1-65-86 E197 -> 00007661 # 1-65-87 E198 -> 00007662 # 1-65-88 E199 -> 00007668 # 1-65-89 E19A -> 00007669 # 1-65-90 E19B -> 0000766A # 1-65-91 E19C -> 00007667 # 1-65-92 E19D -> 0000766C # 1-65-93 E19E -> 00007670 # 1-65-94 E19F -> 00007672 # 1-66-1 E1A0 -> 00007676 # 1-66-2 E1A1 -> 00007678 # 1-66-3 E1A2 -> 0000767C # 1-66-4 E1A3 -> 00007680 # 1-66-5 E1A4 -> 00007683 # 1-66-6 E1A5 -> 00007688 # 1-66-7 E1A6 -> 0000768B # 1-66-8 E1A7 -> 0000768E # 1-66-9 E1A8 -> 00007696 # 1-66-10 E1A9 -> 00007693 # 1-66-11 E1AA -> 00007699 # 1-66-12 E1AB -> 0000769A # 1-66-13 E1AC -> 000076B0 # 1-66-14 E1AD -> 000076B4 # 1-66-15 E1AE -> 000076B8 # 1-66-16 E1AF -> 000076B9 # 1-66-17 E1B0 -> 000076BA # 1-66-18 E1B1 -> 000076C2 # 1-66-19 E1B2 -> 000076CD # 1-66-20 E1B3 -> 000076D6 # 1-66-21 E1B4 -> 000076D2 # 1-66-22 E1B5 -> 000076DE # 1-66-23 E1B6 -> 000076E1 # 1-66-24 E1B7 -> 000076E5 # 1-66-25 E1B8 -> 000076E7 # 1-66-26 E1B9 -> 000076EA # 1-66-27 E1BA -> 0000862F # 1-66-28 E1BB -> 000076FB # 1-66-29 E1BC -> 00007708 # 1-66-30 E1BD -> 00007707 # 1-66-31 E1BE -> 00007704 # 1-66-32 E1BF -> 00007729 # 1-66-33 E1C0 -> 00007724 # 1-66-34 E1C1 -> 0000771E # 1-66-35 E1C2 -> 00007725 # 1-66-36 E1C3 -> 00007726 # 1-66-37 E1C4 -> 0000771B # 1-66-38 E1C5 -> 00007737 # 1-66-39 E1C6 -> 00007738 # 1-66-40 E1C7 -> 00007747 # 1-66-41 E1C8 -> 0000775A # 1-66-42 E1C9 -> 00007768 # 1-66-43 E1CA -> 0000776B # 1-66-44 E1CB -> 0000775B # 1-66-45 E1CC -> 00007765 # 1-66-46 E1CD -> 0000777F # 1-66-47 E1CE -> 0000777E # 1-66-48 E1CF -> 00007779 # 1-66-49 E1D0 -> 0000778E # 1-66-50 E1D1 -> 0000778B # 1-66-51 E1D2 -> 00007791 # 1-66-52 E1D3 -> 000077A0 # 1-66-53 E1D4 -> 0000779E # 1-66-54 E1D5 -> 000077B0 # 1-66-55 E1D6 -> 000077B6 # 1-66-56 E1D7 -> 000077B9 # 1-66-57 E1D8 -> 000077BF # 1-66-58 E1D9 -> 000077BC # 1-66-59 E1DA -> 000077BD # 1-66-60 E1DB -> 000077BB # 1-66-61 E1DC -> 000077C7 # 1-66-62 E1DD -> 000077CD # 1-66-63 E1DE -> 000077D7 # 1-66-64 E1DF -> 000077DA # 1-66-65 E1E0 -> 000077DC # 1-66-66 E1E1 -> 000077E3 # 1-66-67 E1E2 -> 000077EE # 1-66-68 E1E3 -> 000077FC # 1-66-69 E1E4 -> 0000780C # 1-66-70 E1E5 -> 00007812 # 1-66-71 E1E6 -> 00007926 # 1-66-72 E1E7 -> 00007820 # 1-66-73 E1E8 -> 0000792A # 1-66-74 E1E9 -> 00007845 # 1-66-75 E1EA -> 0000788E # 1-66-76 E1EB -> 00007874 # 1-66-77 E1EC -> 00007886 # 1-66-78 E1ED -> 0000787C # 1-66-79 E1EE -> 0000789A # 1-66-80 E1EF -> 0000788C # 1-66-81 E1F0 -> 000078A3 # 1-66-82 E1F1 -> 000078B5 # 1-66-83 E1F2 -> 000078AA # 1-66-84 E1F3 -> 000078AF # 1-66-85 E1F4 -> 000078D1 # 1-66-86 E1F5 -> 000078C6 # 1-66-87 E1F6 -> 000078CB # 1-66-88 E1F7 -> 000078D4 # 1-66-89 E1F8 -> 000078BE # 1-66-90 E1F9 -> 000078BC # 1-66-91 E1FA -> 000078C5 # 1-66-92 E1FB -> 000078CA # 1-66-93 E1FC -> 000078EC # 1-66-94 E240 -> 000078E7 # 1-67-1 E241 -> 000078DA # 1-67-2 E242 -> 000078FD # 1-67-3 E243 -> 000078F4 # 1-67-4 E244 -> 00007907 # 1-67-5 E245 -> 00007912 # 1-67-6 E246 -> 00007911 # 1-67-7 E247 -> 00007919 # 1-67-8 E248 -> 0000792C # 1-67-9 E249 -> 0000792B # 1-67-10 E24A -> 00007940 # 1-67-11 E24B -> 00007960 # 1-67-12 E24C -> 00007957 # 1-67-13 E24D -> 0000795F # 1-67-14 E24E -> 0000795A # 1-67-15 E24F -> 00007955 # 1-67-16 E250 -> 00007953 # 1-67-17 E251 -> 0000797A # 1-67-18 E252 -> 0000797F # 1-67-19 E253 -> 0000798A # 1-67-20 E254 -> 0000799D # 1-67-21 E255 -> 000079A7 # 1-67-22 E256 -> 00009F4B # 1-67-23 E257 -> 000079AA # 1-67-24 E258 -> 000079AE # 1-67-25 E259 -> 000079B3 # 1-67-26 E25A -> 000079B9 # 1-67-27 E25B -> 000079BA # 1-67-28 E25C -> 000079C9 # 1-67-29 E25D -> 000079D5 # 1-67-30 E25E -> 000079E7 # 1-67-31 E25F -> 000079EC # 1-67-32 E260 -> 000079E1 # 1-67-33 E261 -> 000079E3 # 1-67-34 E262 -> 00007A08 # 1-67-35 E263 -> 00007A0D # 1-67-36 E264 -> 00007A18 # 1-67-37 E265 -> 00007A19 # 1-67-38 E266 -> 00007A20 # 1-67-39 E267 -> 00007A1F # 1-67-40 E268 -> 00007980 # 1-67-41 E269 -> 00007A31 # 1-67-42 E26A -> 00007A3B # 1-67-43 E26B -> 00007A3E # 1-67-44 E26C -> 00007A37 # 1-67-45 E26D -> 00007A43 # 1-67-46 E26E -> 00007A57 # 1-67-47 E26F -> 00007A49 # 1-67-48 E270 -> 00007A61 # 1-67-49 E271 -> 00007A62 # 1-67-50 E272 -> 00007A69 # 1-67-51 E273 -> 00009F9D # 1-67-52 E274 -> 00007A70 # 1-67-53 E275 -> 00007A79 # 1-67-54 E276 -> 00007A7D # 1-67-55 E277 -> 00007A88 # 1-67-56 E278 -> 00007A97 # 1-67-57 E279 -> 00007A95 # 1-67-58 E27A -> 00007A98 # 1-67-59 E27B -> 00007A96 # 1-67-60 E27C -> 00007AA9 # 1-67-61 E27D -> 00007AC8 # 1-67-62 E27E -> 00007AB0 # 1-67-63 E280 -> 00007AB6 # 1-67-64 E281 -> 00007AC5 # 1-67-65 E282 -> 00007AC4 # 1-67-66 E283 -> 00007ABF # 1-67-67 E284 -> 00009083 # 1-67-68 E285 -> 00007AC7 # 1-67-69 E286 -> 00007ACA # 1-67-70 E287 -> 00007ACD # 1-67-71 E288 -> 00007ACF # 1-67-72 E289 -> 00007AD5 # 1-67-73 E28A -> 00007AD3 # 1-67-74 E28B -> 00007AD9 # 1-67-75 E28C -> 00007ADA # 1-67-76 E28D -> 00007ADD # 1-67-77 E28E -> 00007AE1 # 1-67-78 E28F -> 00007AE2 # 1-67-79 E290 -> 00007AE6 # 1-67-80 E291 -> 00007AED # 1-67-81 E292 -> 00007AF0 # 1-67-82 E293 -> 00007B02 # 1-67-83 E294 -> 00007B0F # 1-67-84 E295 -> 00007B0A # 1-67-85 E296 -> 00007B06 # 1-67-86 E297 -> 00007B33 # 1-67-87 E298 -> 00007B18 # 1-67-88 E299 -> 00007B19 # 1-67-89 E29A -> 00007B1E # 1-67-90 E29B -> 00007B35 # 1-67-91 E29C -> 00007B28 # 1-67-92 E29D -> 00007B36 # 1-67-93 E29E -> 00007B50 # 1-67-94 E29F -> 00007B7A # 1-68-1 E2A0 -> 00007B04 # 1-68-2 E2A1 -> 00007B4D # 1-68-3 E2A2 -> 00007B0B # 1-68-4 E2A3 -> 00007B4C # 1-68-5 E2A4 -> 00007B45 # 1-68-6 E2A5 -> 00007B75 # 1-68-7 E2A6 -> 00007B65 # 1-68-8 E2A7 -> 00007B74 # 1-68-9 E2A8 -> 00007B67 # 1-68-10 E2A9 -> 00007B70 # 1-68-11 E2AA -> 00007B71 # 1-68-12 E2AB -> 00007B6C # 1-68-13 E2AC -> 00007B6E # 1-68-14 E2AD -> 00007B9D # 1-68-15 E2AE -> 00007B98 # 1-68-16 E2AF -> 00007B9F # 1-68-17 E2B0 -> 00007B8D # 1-68-18 E2B1 -> 00007B9C # 1-68-19 E2B2 -> 00007B9A # 1-68-20 E2B3 -> 00007B8B # 1-68-21 E2B4 -> 00007B92 # 1-68-22 E2B5 -> 00007B8F # 1-68-23 E2B6 -> 00007B5D # 1-68-24 E2B7 -> 00007B99 # 1-68-25 E2B8 -> 00007BCB # 1-68-26 E2B9 -> 00007BC1 # 1-68-27 E2BA -> 00007BCC # 1-68-28 E2BB -> 00007BCF # 1-68-29 E2BC -> 00007BB4 # 1-68-30 E2BD -> 00007BC6 # 1-68-31 E2BE -> 00007BDD # 1-68-32 E2BF -> 00007BE9 # 1-68-33 E2C0 -> 00007C11 # 1-68-34 E2C1 -> 00007C14 # 1-68-35 E2C2 -> 00007BE6 # 1-68-36 E2C3 -> 00007BE5 # 1-68-37 E2C4 -> 00007C60 # 1-68-38 E2C5 -> 00007C00 # 1-68-39 E2C6 -> 00007C07 # 1-68-40 E2C7 -> 00007C13 # 1-68-41 E2C8 -> 00007BF3 # 1-68-42 E2C9 -> 00007BF7 # 1-68-43 E2CA -> 00007C17 # 1-68-44 E2CB -> 00007C0D # 1-68-45 E2CC -> 00007BF6 # 1-68-46 E2CD -> 00007C23 # 1-68-47 E2CE -> 00007C27 # 1-68-48 E2CF -> 00007C2A # 1-68-49 E2D0 -> 00007C1F # 1-68-50 E2D1 -> 00007C37 # 1-68-51 E2D2 -> 00007C2B # 1-68-52 E2D3 -> 00007C3D # 1-68-53 E2D4 -> 00007C4C # 1-68-54 E2D5 -> 00007C43 # 1-68-55 E2D6 -> 00007C54 # 1-68-56 E2D7 -> 00007C4F # 1-68-57 E2D8 -> 00007C40 # 1-68-58 E2D9 -> 00007C50 # 1-68-59 E2DA -> 00007C58 # 1-68-60 E2DB -> 00007C5F # 1-68-61 E2DC -> 00007C64 # 1-68-62 E2DD -> 00007C56 # 1-68-63 E2DE -> 00007C65 # 1-68-64 E2DF -> 00007C6C # 1-68-65 E2E0 -> 00007C75 # 1-68-66 E2E1 -> 00007C83 # 1-68-67 E2E2 -> 00007C90 # 1-68-68 E2E3 -> 00007CA4 # 1-68-69 E2E4 -> 00007CAD # 1-68-70 E2E5 -> 00007CA2 # 1-68-71 E2E6 -> 00007CAB # 1-68-72 E2E7 -> 00007CA1 # 1-68-73 E2E8 -> 00007CA8 # 1-68-74 E2E9 -> 00007CB3 # 1-68-75 E2EA -> 00007CB2 # 1-68-76 E2EB -> 00007CB1 # 1-68-77 E2EC -> 00007CAE # 1-68-78 E2ED -> 00007CB9 # 1-68-79 E2EE -> 00007CBD # 1-68-80 E2EF -> 00007CC0 # 1-68-81 E2F0 -> 00007CC5 # 1-68-82 E2F1 -> 00007CC2 # 1-68-83 E2F2 -> 00007CD8 # 1-68-84 E2F3 -> 00007CD2 # 1-68-85 E2F4 -> 00007CDC # 1-68-86 E2F5 -> 00007CE2 # 1-68-87 E2F6 -> 00009B3B # 1-68-88 E2F7 -> 00007CEF # 1-68-89 E2F8 -> 00007CF2 # 1-68-90 E2F9 -> 00007CF4 # 1-68-91 E2FA -> 00007CF6 # 1-68-92 E2FB -> 00007CFA # 1-68-93 E2FC -> 00007D06 # 1-68-94 E340 -> 00007D02 # 1-69-1 E341 -> 00007D1C # 1-69-2 E342 -> 00007D15 # 1-69-3 E343 -> 00007D0A # 1-69-4 E344 -> 00007D45 # 1-69-5 E345 -> 00007D4B # 1-69-6 E346 -> 00007D2E # 1-69-7 E347 -> 00007D32 # 1-69-8 E348 -> 00007D3F # 1-69-9 E349 -> 00007D35 # 1-69-10 E34A -> 00007D46 # 1-69-11 E34B -> 00007D73 # 1-69-12 E34C -> 00007D56 # 1-69-13 E34D -> 00007D4E # 1-69-14 E34E -> 00007D72 # 1-69-15 E34F -> 00007D68 # 1-69-16 E350 -> 00007D6E # 1-69-17 E351 -> 00007D4F # 1-69-18 E352 -> 00007D63 # 1-69-19 E353 -> 00007D93 # 1-69-20 E354 -> 00007D89 # 1-69-21 E355 -> 00007D5B # 1-69-22 E356 -> 00007D8F # 1-69-23 E357 -> 00007D7D # 1-69-24 E358 -> 00007D9B # 1-69-25 E359 -> 00007DBA # 1-69-26 E35A -> 00007DAE # 1-69-27 E35B -> 00007DA3 # 1-69-28 E35C -> 00007DB5 # 1-69-29 E35D -> 00007DC7 # 1-69-30 E35E -> 00007DBD # 1-69-31 E35F -> 00007DAB # 1-69-32 E360 -> 00007E3D # 1-69-33 E361 -> 00007DA2 # 1-69-34 E362 -> 00007DAF # 1-69-35 E363 -> 00007DDC # 1-69-36 E364 -> 00007DB8 # 1-69-37 E365 -> 00007D9F # 1-69-38 E366 -> 00007DB0 # 1-69-39 E367 -> 00007DD8 # 1-69-40 E368 -> 00007DDD # 1-69-41 E369 -> 00007DE4 # 1-69-42 E36A -> 00007DDE # 1-69-43 E36B -> 00007DFB # 1-69-44 E36C -> 00007DF2 # 1-69-45 E36D -> 00007DE1 # 1-69-46 E36E -> 00007E05 # 1-69-47 E36F -> 00007E0A # 1-69-48 E370 -> 00007E23 # 1-69-49 E371 -> 00007E21 # 1-69-50 E372 -> 00007E12 # 1-69-51 E373 -> 00007E31 # 1-69-52 E374 -> 00007E1F # 1-69-53 E375 -> 00007E09 # 1-69-54 E376 -> 00007E0B # 1-69-55 E377 -> 00007E22 # 1-69-56 E378 -> 00007E46 # 1-69-57 E379 -> 00007E66 # 1-69-58 E37A -> 00007E3B # 1-69-59 E37B -> 00007E35 # 1-69-60 E37C -> 00007E39 # 1-69-61 E37D -> 00007E43 # 1-69-62 E37E -> 00007E37 # 1-69-63 E380 -> 00007E32 # 1-69-64 E381 -> 00007E3A # 1-69-65 E382 -> 00007E67 # 1-69-66 E383 -> 00007E5D # 1-69-67 E384 -> 00007E56 # 1-69-68 E385 -> 00007E5E # 1-69-69 E386 -> 00007E59 # 1-69-70 E387 -> 00007E5A # 1-69-71 E388 -> 00007E79 # 1-69-72 E389 -> 00007E6A # 1-69-73 E38A -> 00007E69 # 1-69-74 E38B -> 00007E7C # 1-69-75 E38C -> 00007E7B # 1-69-76 E38D -> 00007E83 # 1-69-77 E38E -> 00007DD5 # 1-69-78 E38F -> 00007E7D # 1-69-79 E390 -> 00008FAE # 1-69-80 E391 -> 00007E7F # 1-69-81 E392 -> 00007E88 # 1-69-82 E393 -> 00007E89 # 1-69-83 E394 -> 00007E8C # 1-69-84 E395 -> 00007E92 # 1-69-85 E396 -> 00007E90 # 1-69-86 E397 -> 00007E93 # 1-69-87 E398 -> 00007E94 # 1-69-88 E399 -> 00007E96 # 1-69-89 E39A -> 00007E8E # 1-69-90 E39B -> 00007E9B # 1-69-91 E39C -> 00007E9C # 1-69-92 E39D -> 00007F38 # 1-69-93 E39E -> 00007F3A # 1-69-94 E39F -> 00007F45 # 1-70-1 E3A0 -> 00007F4C # 1-70-2 E3A1 -> 00007F4D # 1-70-3 E3A2 -> 00007F4E # 1-70-4 E3A3 -> 00007F50 # 1-70-5 E3A4 -> 00007F51 # 1-70-6 E3A5 -> 00007F55 # 1-70-7 E3A6 -> 00007F54 # 1-70-8 E3A7 -> 00007F58 # 1-70-9 E3A8 -> 00007F5F # 1-70-10 E3A9 -> 00007F60 # 1-70-11 E3AA -> 00007F68 # 1-70-12 E3AB -> 00007F69 # 1-70-13 E3AC -> 00007F67 # 1-70-14 E3AD -> 00007F78 # 1-70-15 E3AE -> 00007F82 # 1-70-16 E3AF -> 00007F86 # 1-70-17 E3B0 -> 00007F83 # 1-70-18 E3B1 -> 00007F88 # 1-70-19 E3B2 -> 00007F87 # 1-70-20 E3B3 -> 00007F8C # 1-70-21 E3B4 -> 00007F94 # 1-70-22 E3B5 -> 00007F9E # 1-70-23 E3B6 -> 00007F9D # 1-70-24 E3B7 -> 00007F9A # 1-70-25 E3B8 -> 00007FA3 # 1-70-26 E3B9 -> 00007FAF # 1-70-27 E3BA -> 00007FB2 # 1-70-28 E3BB -> 00007FB9 # 1-70-29 E3BC -> 00007FAE # 1-70-30 E3BD -> 00007FB6 # 1-70-31 E3BE -> 00007FB8 # 1-70-32 E3BF -> 00008B71 # 1-70-33 E3C0 -> 00007FC5 # 1-70-34 E3C1 -> 00007FC6 # 1-70-35 E3C2 -> 00007FCA # 1-70-36 E3C3 -> 00007FD5 # 1-70-37 E3C4 -> 00007FD4 # 1-70-38 E3C5 -> 00007FE1 # 1-70-39 E3C6 -> 00007FE6 # 1-70-40 E3C7 -> 00007FE9 # 1-70-41 E3C8 -> 00007FF3 # 1-70-42 E3C9 -> 00007FF9 # 1-70-43 E3CA -> 000098DC # 1-70-44 E3CB -> 00008006 # 1-70-45 E3CC -> 00008004 # 1-70-46 E3CD -> 0000800B # 1-70-47 E3CE -> 00008012 # 1-70-48 E3CF -> 00008018 # 1-70-49 E3D0 -> 00008019 # 1-70-50 E3D1 -> 0000801C # 1-70-51 E3D2 -> 00008021 # 1-70-52 E3D3 -> 00008028 # 1-70-53 E3D4 -> 0000803F # 1-70-54 E3D5 -> 0000803B # 1-70-55 E3D6 -> 0000804A # 1-70-56 E3D7 -> 00008046 # 1-70-57 E3D8 -> 00008052 # 1-70-58 E3D9 -> 00008058 # 1-70-59 E3DA -> 0000805A # 1-70-60 E3DB -> 0000805F # 1-70-61 E3DC -> 00008062 # 1-70-62 E3DD -> 00008068 # 1-70-63 E3DE -> 00008073 # 1-70-64 E3DF -> 00008072 # 1-70-65 E3E0 -> 00008070 # 1-70-66 E3E1 -> 00008076 # 1-70-67 E3E2 -> 00008079 # 1-70-68 E3E3 -> 0000807D # 1-70-69 E3E4 -> 0000807F # 1-70-70 E3E5 -> 00008084 # 1-70-71 E3E6 -> 00008086 # 1-70-72 E3E7 -> 00008085 # 1-70-73 E3E8 -> 0000809B # 1-70-74 E3E9 -> 00008093 # 1-70-75 E3EA -> 0000809A # 1-70-76 E3EB -> 000080AD # 1-70-77 E3EC -> 00005190 # 1-70-78 E3ED -> 000080AC # 1-70-79 E3EE -> 000080DB # 1-70-80 E3EF -> 000080E5 # 1-70-81 E3F0 -> 000080D9 # 1-70-82 E3F1 -> 000080DD # 1-70-83 E3F2 -> 000080C4 # 1-70-84 E3F3 -> 000080DA # 1-70-85 E3F4 -> 000080D6 # 1-70-86 E3F5 -> 00008109 # 1-70-87 E3F6 -> 000080EF # 1-70-88 E3F7 -> 000080F1 # 1-70-89 E3F8 -> 0000811B # 1-70-90 E3F9 -> 00008129 # 1-70-91 E3FA -> 00008123 # 1-70-92 E3FB -> 0000812F # 1-70-93 E3FC -> 0000814B # 1-70-94 E440 -> 0000968B # 1-71-1 E441 -> 00008146 # 1-71-2 E442 -> 0000813E # 1-71-3 E443 -> 00008153 # 1-71-4 E444 -> 00008151 # 1-71-5 E445 -> 000080FC # 1-71-6 E446 -> 00008171 # 1-71-7 E447 -> 0000816E # 1-71-8 E448 -> 00008165 # 1-71-9 E449 -> 00008166 # 1-71-10 E44A -> 00008174 # 1-71-11 E44B -> 00008183 # 1-71-12 E44C -> 00008188 # 1-71-13 E44D -> 0000818A # 1-71-14 E44E -> 00008180 # 1-71-15 E44F -> 00008182 # 1-71-16 E450 -> 000081A0 # 1-71-17 E451 -> 00008195 # 1-71-18 E452 -> 000081A4 # 1-71-19 E453 -> 000081A3 # 1-71-20 E454 -> 0000815F # 1-71-21 E455 -> 00008193 # 1-71-22 E456 -> 000081A9 # 1-71-23 E457 -> 000081B0 # 1-71-24 E458 -> 000081B5 # 1-71-25 E459 -> 000081BE # 1-71-26 E45A -> 000081B8 # 1-71-27 E45B -> 000081BD # 1-71-28 E45C -> 000081C0 # 1-71-29 E45D -> 000081C2 # 1-71-30 E45E -> 000081BA # 1-71-31 E45F -> 000081C9 # 1-71-32 E460 -> 000081CD # 1-71-33 E461 -> 000081D1 # 1-71-34 E462 -> 000081D9 # 1-71-35 E463 -> 000081D8 # 1-71-36 E464 -> 000081C8 # 1-71-37 E465 -> 000081DA # 1-71-38 E466 -> 000081DF # 1-71-39 E467 -> 000081E0 # 1-71-40 E468 -> 000081E7 # 1-71-41 E469 -> 000081FA # 1-71-42 E46A -> 000081FB # 1-71-43 E46B -> 000081FE # 1-71-44 E46C -> 00008201 # 1-71-45 E46D -> 00008202 # 1-71-46 E46E -> 00008205 # 1-71-47 E46F -> 00008207 # 1-71-48 E470 -> 0000820A # 1-71-49 E471 -> 0000820D # 1-71-50 E472 -> 00008210 # 1-71-51 E473 -> 00008216 # 1-71-52 E474 -> 00008229 # 1-71-53 E475 -> 0000822B # 1-71-54 E476 -> 00008238 # 1-71-55 E477 -> 00008233 # 1-71-56 E478 -> 00008240 # 1-71-57 E479 -> 00008259 # 1-71-58 E47A -> 00008258 # 1-71-59 E47B -> 0000825D # 1-71-60 E47C -> 0000825A # 1-71-61 E47D -> 0000825F # 1-71-62 E47E -> 00008264 # 1-71-63 E480 -> 00008262 # 1-71-64 E481 -> 00008268 # 1-71-65 E482 -> 0000826A # 1-71-66 E483 -> 0000826B # 1-71-67 E484 -> 0000822E # 1-71-68 E485 -> 00008271 # 1-71-69 E486 -> 00008277 # 1-71-70 E487 -> 00008278 # 1-71-71 E488 -> 0000827E # 1-71-72 E489 -> 0000828D # 1-71-73 E48A -> 00008292 # 1-71-74 E48B -> 000082AB # 1-71-75 E48C -> 0000829F # 1-71-76 E48D -> 000082BB # 1-71-77 E48E -> 000082AC # 1-71-78 E48F -> 000082E1 # 1-71-79 E490 -> 000082E3 # 1-71-80 E491 -> 000082DF # 1-71-81 E492 -> 000082D2 # 1-71-82 E493 -> 000082F4 # 1-71-83 E494 -> 000082F3 # 1-71-84 E495 -> 000082FA # 1-71-85 E496 -> 00008393 # 1-71-86 E497 -> 00008303 # 1-71-87 E498 -> 000082FB # 1-71-88 E499 -> 000082F9 # 1-71-89 E49A -> 000082DE # 1-71-90 E49B -> 00008306 # 1-71-91 E49C -> 000082DC # 1-71-92 E49D -> 00008309 # 1-71-93 E49E -> 000082D9 # 1-71-94 E49F -> 00008335 # 1-72-1 E4A0 -> 00008334 # 1-72-2 E4A1 -> 00008316 # 1-72-3 E4A2 -> 00008332 # 1-72-4 E4A3 -> 00008331 # 1-72-5 E4A4 -> 00008340 # 1-72-6 E4A5 -> 00008339 # 1-72-7 E4A6 -> 00008350 # 1-72-8 E4A7 -> 00008345 # 1-72-9 E4A8 -> 0000832F # 1-72-10 E4A9 -> 0000832B # 1-72-11 E4AA -> 00008317 # 1-72-12 E4AB -> 00008318 # 1-72-13 E4AC -> 00008385 # 1-72-14 E4AD -> 0000839A # 1-72-15 E4AE -> 000083AA # 1-72-16 E4AF -> 0000839F # 1-72-17 E4B0 -> 000083A2 # 1-72-18 E4B1 -> 00008396 # 1-72-19 E4B2 -> 00008323 # 1-72-20 E4B3 -> 0000838E # 1-72-21 E4B4 -> 00008387 # 1-72-22 E4B5 -> 0000838A # 1-72-23 E4B6 -> 0000837C # 1-72-24 E4B7 -> 000083B5 # 1-72-25 E4B8 -> 00008373 # 1-72-26 E4B9 -> 00008375 # 1-72-27 E4BA -> 000083A0 # 1-72-28 E4BB -> 00008389 # 1-72-29 E4BC -> 000083A8 # 1-72-30 E4BD -> 000083F4 # 1-72-31 E4BE -> 00008413 # 1-72-32 E4BF -> 000083EB # 1-72-33 E4C0 -> 000083CE # 1-72-34 E4C1 -> 000083FD # 1-72-35 E4C2 -> 00008403 # 1-72-36 E4C3 -> 000083D8 # 1-72-37 E4C4 -> 0000840B # 1-72-38 E4C5 -> 000083C1 # 1-72-39 E4C6 -> 000083F7 # 1-72-40 E4C7 -> 00008407 # 1-72-41 E4C8 -> 000083E0 # 1-72-42 E4C9 -> 000083F2 # 1-72-43 E4CA -> 0000840D # 1-72-44 E4CB -> 00008422 # 1-72-45 E4CC -> 00008420 # 1-72-46 E4CD -> 000083BD # 1-72-47 E4CE -> 00008438 # 1-72-48 E4CF -> 00008506 # 1-72-49 E4D0 -> 000083FB # 1-72-50 E4D1 -> 0000846D # 1-72-51 E4D2 -> 0000842A # 1-72-52 E4D3 -> 0000843C # 1-72-53 E4D4 -> 0000855A # 1-72-54 E4D5 -> 00008484 # 1-72-55 E4D6 -> 00008477 # 1-72-56 E4D7 -> 0000846B # 1-72-57 E4D8 -> 000084AD # 1-72-58 E4D9 -> 0000846E # 1-72-59 E4DA -> 00008482 # 1-72-60 E4DB -> 00008469 # 1-72-61 E4DC -> 00008446 # 1-72-62 E4DD -> 0000842C # 1-72-63 E4DE -> 0000846F # 1-72-64 E4DF -> 00008479 # 1-72-65 E4E0 -> 00008435 # 1-72-66 E4E1 -> 000084CA # 1-72-67 E4E2 -> 00008462 # 1-72-68 E4E3 -> 000084B9 # 1-72-69 E4E4 -> 000084BF # 1-72-70 E4E5 -> 0000849F # 1-72-71 E4E6 -> 000084D9 # 1-72-72 E4E7 -> 000084CD # 1-72-73 E4E8 -> 000084BB # 1-72-74 E4E9 -> 000084DA # 1-72-75 E4EA -> 000084D0 # 1-72-76 E4EB -> 000084C1 # 1-72-77 E4EC -> 000084C6 # 1-72-78 E4ED -> 000084D6 # 1-72-79 E4EE -> 000084A1 # 1-72-80 E4EF -> 00008521 # 1-72-81 E4F0 -> 000084FF # 1-72-82 E4F1 -> 000084F4 # 1-72-83 E4F2 -> 00008517 # 1-72-84 E4F3 -> 00008518 # 1-72-85 E4F4 -> 0000852C # 1-72-86 E4F5 -> 0000851F # 1-72-87 E4F6 -> 00008515 # 1-72-88 E4F7 -> 00008514 # 1-72-89 E4F8 -> 000084FC # 1-72-90 E4F9 -> 00008540 # 1-72-91 E4FA -> 00008563 # 1-72-92 E4FB -> 00008558 # 1-72-93 E4FC -> 00008548 # 1-72-94 E540 -> 00008541 # 1-73-1 E541 -> 00008602 # 1-73-2 E542 -> 0000854B # 1-73-3 E543 -> 00008555 # 1-73-4 E544 -> 00008580 # 1-73-5 E545 -> 000085A4 # 1-73-6 E546 -> 00008588 # 1-73-7 E547 -> 00008591 # 1-73-8 E548 -> 0000858A # 1-73-9 E549 -> 000085A8 # 1-73-10 E54A -> 0000856D # 1-73-11 E54B -> 00008594 # 1-73-12 E54C -> 0000859B # 1-73-13 E54D -> 000085EA # 1-73-14 E54E -> 00008587 # 1-73-15 E54F -> 0000859C # 1-73-16 E550 -> 00008577 # 1-73-17 E551 -> 0000857E # 1-73-18 E552 -> 00008590 # 1-73-19 E553 -> 000085C9 # 1-73-20 E554 -> 000085BA # 1-73-21 E555 -> 000085CF # 1-73-22 E556 -> 000085B9 # 1-73-23 E557 -> 000085D0 # 1-73-24 E558 -> 000085D5 # 1-73-25 E559 -> 000085DD # 1-73-26 E55A -> 000085E5 # 1-73-27 E55B -> 000085DC # 1-73-28 E55C -> 000085F9 # 1-73-29 E55D -> 0000860A # 1-73-30 E55E -> 00008613 # 1-73-31 E55F -> 0000860B # 1-73-32 E560 -> 000085FE # 1-73-33 E561 -> 000085FA # 1-73-34 E562 -> 00008606 # 1-73-35 E563 -> 00008622 # 1-73-36 E564 -> 0000861A # 1-73-37 E565 -> 00008630 # 1-73-38 E566 -> 0000863F # 1-73-39 E567 -> 0000864D # 1-73-40 E568 -> 00004E55 # 1-73-41 E569 -> 00008654 # 1-73-42 E56A -> 0000865F # 1-73-43 E56B -> 00008667 # 1-73-44 E56C -> 00008671 # 1-73-45 E56D -> 00008693 # 1-73-46 E56E -> 000086A3 # 1-73-47 E56F -> 000086A9 # 1-73-48 E570 -> 000086AA # 1-73-49 E571 -> 0000868B # 1-73-50 E572 -> 0000868C # 1-73-51 E573 -> 000086B6 # 1-73-52 E574 -> 000086AF # 1-73-53 E575 -> 000086C4 # 1-73-54 E576 -> 000086C6 # 1-73-55 E577 -> 000086B0 # 1-73-56 E578 -> 000086C9 # 1-73-57 E579 -> 00008823 # 1-73-58 E57A -> 000086AB # 1-73-59 E57B -> 000086D4 # 1-73-60 E57C -> 000086DE # 1-73-61 E57D -> 000086E9 # 1-73-62 E57E -> 000086EC # 1-73-63 E580 -> 000086DF # 1-73-64 E581 -> 000086DB # 1-73-65 E582 -> 000086EF # 1-73-66 E583 -> 00008712 # 1-73-67 E584 -> 00008706 # 1-73-68 E585 -> 00008708 # 1-73-69 E586 -> 00008700 # 1-73-70 E587 -> 00008703 # 1-73-71 E588 -> 000086FB # 1-73-72 E589 -> 00008711 # 1-73-73 E58A -> 00008709 # 1-73-74 E58B -> 0000870D # 1-73-75 E58C -> 000086F9 # 1-73-76 E58D -> 0000870A # 1-73-77 E58E -> 00008734 # 1-73-78 E58F -> 0000873F # 1-73-79 E590 -> 00008737 # 1-73-80 E591 -> 0000873B # 1-73-81 E592 -> 00008725 # 1-73-82 E593 -> 00008729 # 1-73-83 E594 -> 0000871A # 1-73-84 E595 -> 00008760 # 1-73-85 E596 -> 0000875F # 1-73-86 E597 -> 00008778 # 1-73-87 E598 -> 0000874C # 1-73-88 E599 -> 0000874E # 1-73-89 E59A -> 00008774 # 1-73-90 E59B -> 00008757 # 1-73-91 E59C -> 00008768 # 1-73-92 E59D -> 0000876E # 1-73-93 E59E -> 00008759 # 1-73-94 E59F -> 00008753 # 1-74-1 E5A0 -> 00008763 # 1-74-2 E5A1 -> 0000876A # 1-74-3 E5A2 -> 00008805 # 1-74-4 E5A3 -> 000087A2 # 1-74-5 E5A4 -> 0000879F # 1-74-6 E5A5 -> 00008782 # 1-74-7 E5A6 -> 000087AF # 1-74-8 E5A7 -> 000087CB # 1-74-9 E5A8 -> 000087BD # 1-74-10 E5A9 -> 000087C0 # 1-74-11 E5AA -> 000087D0 # 1-74-12 E5AB -> 000096D6 # 1-74-13 E5AC -> 000087AB # 1-74-14 E5AD -> 000087C4 # 1-74-15 E5AE -> 000087B3 # 1-74-16 E5AF -> 000087C7 # 1-74-17 E5B0 -> 000087C6 # 1-74-18 E5B1 -> 000087BB # 1-74-19 E5B2 -> 000087EF # 1-74-20 E5B3 -> 000087F2 # 1-74-21 E5B4 -> 000087E0 # 1-74-22 E5B5 -> 0000880F # 1-74-23 E5B6 -> 0000880D # 1-74-24 E5B7 -> 000087FE # 1-74-25 E5B8 -> 000087F6 # 1-74-26 E5B9 -> 000087F7 # 1-74-27 E5BA -> 0000880E # 1-74-28 E5BB -> 000087D2 # 1-74-29 E5BC -> 00008811 # 1-74-30 E5BD -> 00008816 # 1-74-31 E5BE -> 00008815 # 1-74-32 E5BF -> 00008822 # 1-74-33 E5C0 -> 00008821 # 1-74-34 E5C1 -> 00008831 # 1-74-35 E5C2 -> 00008836 # 1-74-36 E5C3 -> 00008839 # 1-74-37 E5C4 -> 00008827 # 1-74-38 E5C5 -> 0000883B # 1-74-39 E5C6 -> 00008844 # 1-74-40 E5C7 -> 00008842 # 1-74-41 E5C8 -> 00008852 # 1-74-42 E5C9 -> 00008859 # 1-74-43 E5CA -> 0000885E # 1-74-44 E5CB -> 00008862 # 1-74-45 E5CC -> 0000886B # 1-74-46 E5CD -> 00008881 # 1-74-47 E5CE -> 0000887E # 1-74-48 E5CF -> 0000889E # 1-74-49 E5D0 -> 00008875 # 1-74-50 E5D1 -> 0000887D # 1-74-51 E5D2 -> 000088B5 # 1-74-52 E5D3 -> 00008872 # 1-74-53 E5D4 -> 00008882 # 1-74-54 E5D5 -> 00008897 # 1-74-55 E5D6 -> 00008892 # 1-74-56 E5D7 -> 000088AE # 1-74-57 E5D8 -> 00008899 # 1-74-58 E5D9 -> 000088A2 # 1-74-59 E5DA -> 0000888D # 1-74-60 E5DB -> 000088A4 # 1-74-61 E5DC -> 000088B0 # 1-74-62 E5DD -> 000088BF # 1-74-63 E5DE -> 000088B1 # 1-74-64 E5DF -> 000088C3 # 1-74-65 E5E0 -> 000088C4 # 1-74-66 E5E1 -> 000088D4 # 1-74-67 E5E2 -> 000088D8 # 1-74-68 E5E3 -> 000088D9 # 1-74-69 E5E4 -> 000088DD # 1-74-70 E5E5 -> 000088F9 # 1-74-71 E5E6 -> 00008902 # 1-74-72 E5E7 -> 000088FC # 1-74-73 E5E8 -> 000088F4 # 1-74-74 E5E9 -> 000088E8 # 1-74-75 E5EA -> 000088F2 # 1-74-76 E5EB -> 00008904 # 1-74-77 E5EC -> 0000890C # 1-74-78 E5ED -> 0000890A # 1-74-79 E5EE -> 00008913 # 1-74-80 E5EF -> 00008943 # 1-74-81 E5F0 -> 0000891E # 1-74-82 E5F1 -> 00008925 # 1-74-83 E5F2 -> 0000892A # 1-74-84 E5F3 -> 0000892B # 1-74-85 E5F4 -> 00008941 # 1-74-86 E5F5 -> 00008944 # 1-74-87 E5F6 -> 0000893B # 1-74-88 E5F7 -> 00008936 # 1-74-89 E5F8 -> 00008938 # 1-74-90 E5F9 -> 0000894C # 1-74-91 E5FA -> 0000891D # 1-74-92 E5FB -> 00008960 # 1-74-93 E5FC -> 0000895E # 1-74-94 E640 -> 00008966 # 1-75-1 E641 -> 00008964 # 1-75-2 E642 -> 0000896D # 1-75-3 E643 -> 0000896A # 1-75-4 E644 -> 0000896F # 1-75-5 E645 -> 00008974 # 1-75-6 E646 -> 00008977 # 1-75-7 E647 -> 0000897E # 1-75-8 E648 -> 00008983 # 1-75-9 E649 -> 00008988 # 1-75-10 E64A -> 0000898A # 1-75-11 E64B -> 00008993 # 1-75-12 E64C -> 00008998 # 1-75-13 E64D -> 000089A1 # 1-75-14 E64E -> 000089A9 # 1-75-15 E64F -> 000089A6 # 1-75-16 E650 -> 000089AC # 1-75-17 E651 -> 000089AF # 1-75-18 E652 -> 000089B2 # 1-75-19 E653 -> 000089BA # 1-75-20 E654 -> 000089BD # 1-75-21 E655 -> 000089BF # 1-75-22 E656 -> 000089C0 # 1-75-23 E657 -> 000089DA # 1-75-24 E658 -> 000089DC # 1-75-25 E659 -> 000089DD # 1-75-26 E65A -> 000089E7 # 1-75-27 E65B -> 000089F4 # 1-75-28 E65C -> 000089F8 # 1-75-29 E65D -> 00008A03 # 1-75-30 E65E -> 00008A16 # 1-75-31 E65F -> 00008A10 # 1-75-32 E660 -> 00008A0C # 1-75-33 E661 -> 00008A1B # 1-75-34 E662 -> 00008A1D # 1-75-35 E663 -> 00008A25 # 1-75-36 E664 -> 00008A36 # 1-75-37 E665 -> 00008A41 # 1-75-38 E666 -> 00008A5B # 1-75-39 E667 -> 00008A52 # 1-75-40 E668 -> 00008A46 # 1-75-41 E669 -> 00008A48 # 1-75-42 E66A -> 00008A7C # 1-75-43 E66B -> 00008A6D # 1-75-44 E66C -> 00008A6C # 1-75-45 E66D -> 00008A62 # 1-75-46 E66E -> 00008A85 # 1-75-47 E66F -> 00008A82 # 1-75-48 E670 -> 00008A84 # 1-75-49 E671 -> 00008AA8 # 1-75-50 E672 -> 00008AA1 # 1-75-51 E673 -> 00008A91 # 1-75-52 E674 -> 00008AA5 # 1-75-53 E675 -> 00008AA6 # 1-75-54 E676 -> 00008A9A # 1-75-55 E677 -> 00008AA3 # 1-75-56 E678 -> 00008AC4 # 1-75-57 E679 -> 00008ACD # 1-75-58 E67A -> 00008AC2 # 1-75-59 E67B -> 00008ADA # 1-75-60 E67C -> 00008AEB # 1-75-61 E67D -> 00008AF3 # 1-75-62 E67E -> 00008AE7 # 1-75-63 E680 -> 00008AE4 # 1-75-64 E681 -> 00008AF1 # 1-75-65 E682 -> 00008B14 # 1-75-66 E683 -> 00008AE0 # 1-75-67 E684 -> 00008AE2 # 1-75-68 E685 -> 00008AF7 # 1-75-69 E686 -> 00008ADE # 1-75-70 E687 -> 00008ADB # 1-75-71 E688 -> 00008B0C # 1-75-72 E689 -> 00008B07 # 1-75-73 E68A -> 00008B1A # 1-75-74 E68B -> 00008AE1 # 1-75-75 E68C -> 00008B16 # 1-75-76 E68D -> 00008B10 # 1-75-77 E68E -> 00008B17 # 1-75-78 E68F -> 00008B20 # 1-75-79 E690 -> 00008B33 # 1-75-80 E691 -> 000097AB # 1-75-81 E692 -> 00008B26 # 1-75-82 E693 -> 00008B2B # 1-75-83 E694 -> 00008B3E # 1-75-84 E695 -> 00008B28 # 1-75-85 E696 -> 00008B41 # 1-75-86 E697 -> 00008B4C # 1-75-87 E698 -> 00008B4F # 1-75-88 E699 -> 00008B4E # 1-75-89 E69A -> 00008B49 # 1-75-90 E69B -> 00008B56 # 1-75-91 E69C -> 00008B5B # 1-75-92 E69D -> 00008B5A # 1-75-93 E69E -> 00008B6B # 1-75-94 E69F -> 00008B5F # 1-76-1 E6A0 -> 00008B6C # 1-76-2 E6A1 -> 00008B6F # 1-76-3 E6A2 -> 00008B74 # 1-76-4 E6A3 -> 00008B7D # 1-76-5 E6A4 -> 00008B80 # 1-76-6 E6A5 -> 00008B8C # 1-76-7 E6A6 -> 00008B8E # 1-76-8 E6A7 -> 00008B92 # 1-76-9 E6A8 -> 00008B93 # 1-76-10 E6A9 -> 00008B96 # 1-76-11 E6AA -> 00008B99 # 1-76-12 E6AB -> 00008B9A # 1-76-13 E6AC -> 00008C3A # 1-76-14 E6AD -> 00008C41 # 1-76-15 E6AE -> 00008C3F # 1-76-16 E6AF -> 00008C48 # 1-76-17 E6B0 -> 00008C4C # 1-76-18 E6B1 -> 00008C4E # 1-76-19 E6B2 -> 00008C50 # 1-76-20 E6B3 -> 00008C55 # 1-76-21 E6B4 -> 00008C62 # 1-76-22 E6B5 -> 00008C6C # 1-76-23 E6B6 -> 00008C78 # 1-76-24 E6B7 -> 00008C7A # 1-76-25 E6B8 -> 00008C82 # 1-76-26 E6B9 -> 00008C89 # 1-76-27 E6BA -> 00008C85 # 1-76-28 E6BB -> 00008C8A # 1-76-29 E6BC -> 00008C8D # 1-76-30 E6BD -> 00008C8E # 1-76-31 E6BE -> 00008C94 # 1-76-32 E6BF -> 00008C7C # 1-76-33 E6C0 -> 00008C98 # 1-76-34 E6C1 -> 0000621D # 1-76-35 E6C2 -> 00008CAD # 1-76-36 E6C3 -> 00008CAA # 1-76-37 E6C4 -> 00008CBD # 1-76-38 E6C5 -> 00008CB2 # 1-76-39 E6C6 -> 00008CB3 # 1-76-40 E6C7 -> 00008CAE # 1-76-41 E6C8 -> 00008CB6 # 1-76-42 E6C9 -> 00008CC8 # 1-76-43 E6CA -> 00008CC1 # 1-76-44 E6CB -> 00008CE4 # 1-76-45 E6CC -> 00008CE3 # 1-76-46 E6CD -> 00008CDA # 1-76-47 E6CE -> 00008CFD # 1-76-48 E6CF -> 00008CFA # 1-76-49 E6D0 -> 00008CFB # 1-76-50 E6D1 -> 00008D04 # 1-76-51 E6D2 -> 00008D05 # 1-76-52 E6D3 -> 00008D0A # 1-76-53 E6D4 -> 00008D07 # 1-76-54 E6D5 -> 00008D0F # 1-76-55 E6D6 -> 00008D0D # 1-76-56 E6D7 -> 00008D10 # 1-76-57 E6D8 -> 00009F4E # 1-76-58 E6D9 -> 00008D13 # 1-76-59 E6DA -> 00008CCD # 1-76-60 E6DB -> 00008D14 # 1-76-61 E6DC -> 00008D16 # 1-76-62 E6DD -> 00008D67 # 1-76-63 E6DE -> 00008D6D # 1-76-64 E6DF -> 00008D71 # 1-76-65 E6E0 -> 00008D73 # 1-76-66 E6E1 -> 00008D81 # 1-76-67 E6E2 -> 00008D99 # 1-76-68 E6E3 -> 00008DC2 # 1-76-69 E6E4 -> 00008DBE # 1-76-70 E6E5 -> 00008DBA # 1-76-71 E6E6 -> 00008DCF # 1-76-72 E6E7 -> 00008DDA # 1-76-73 E6E8 -> 00008DD6 # 1-76-74 E6E9 -> 00008DCC # 1-76-75 E6EA -> 00008DDB # 1-76-76 E6EB -> 00008DCB # 1-76-77 E6EC -> 00008DEA # 1-76-78 E6ED -> 00008DEB # 1-76-79 E6EE -> 00008DDF # 1-76-80 E6EF -> 00008DE3 # 1-76-81 E6F0 -> 00008DFC # 1-76-82 E6F1 -> 00008E08 # 1-76-83 E6F2 -> 00008E09 # 1-76-84 E6F3 -> 00008DFF # 1-76-85 E6F4 -> 00008E1D # 1-76-86 E6F5 -> 00008E1E # 1-76-87 E6F6 -> 00008E10 # 1-76-88 E6F7 -> 00008E1F # 1-76-89 E6F8 -> 00008E42 # 1-76-90 E6F9 -> 00008E35 # 1-76-91 E6FA -> 00008E30 # 1-76-92 E6FB -> 00008E34 # 1-76-93 E6FC -> 00008E4A # 1-76-94 E740 -> 00008E47 # 1-77-1 E741 -> 00008E49 # 1-77-2 E742 -> 00008E4C # 1-77-3 E743 -> 00008E50 # 1-77-4 E744 -> 00008E48 # 1-77-5 E745 -> 00008E59 # 1-77-6 E746 -> 00008E64 # 1-77-7 E747 -> 00008E60 # 1-77-8 E748 -> 00008E2A # 1-77-9 E749 -> 00008E63 # 1-77-10 E74A -> 00008E55 # 1-77-11 E74B -> 00008E76 # 1-77-12 E74C -> 00008E72 # 1-77-13 E74D -> 00008E7C # 1-77-14 E74E -> 00008E81 # 1-77-15 E74F -> 00008E87 # 1-77-16 E750 -> 00008E85 # 1-77-17 E751 -> 00008E84 # 1-77-18 E752 -> 00008E8B # 1-77-19 E753 -> 00008E8A # 1-77-20 E754 -> 00008E93 # 1-77-21 E755 -> 00008E91 # 1-77-22 E756 -> 00008E94 # 1-77-23 E757 -> 00008E99 # 1-77-24 E758 -> 00008EAA # 1-77-25 E759 -> 00008EA1 # 1-77-26 E75A -> 00008EAC # 1-77-27 E75B -> 00008EB0 # 1-77-28 E75C -> 00008EC6 # 1-77-29 E75D -> 00008EB1 # 1-77-30 E75E -> 00008EBE # 1-77-31 E75F -> 00008EC5 # 1-77-32 E760 -> 00008EC8 # 1-77-33 E761 -> 00008ECB # 1-77-34 E762 -> 00008EDB # 1-77-35 E763 -> 00008EE3 # 1-77-36 E764 -> 00008EFC # 1-77-37 E765 -> 00008EFB # 1-77-38 E766 -> 00008EEB # 1-77-39 E767 -> 00008EFE # 1-77-40 E768 -> 00008F0A # 1-77-41 E769 -> 00008F05 # 1-77-42 E76A -> 00008F15 # 1-77-43 E76B -> 00008F12 # 1-77-44 E76C -> 00008F19 # 1-77-45 E76D -> 00008F13 # 1-77-46 E76E -> 00008F1C # 1-77-47 E76F -> 00008F1F # 1-77-48 E770 -> 00008F1B # 1-77-49 E771 -> 00008F0C # 1-77-50 E772 -> 00008F26 # 1-77-51 E773 -> 00008F33 # 1-77-52 E774 -> 00008F3B # 1-77-53 E775 -> 00008F39 # 1-77-54 E776 -> 00008F45 # 1-77-55 E777 -> 00008F42 # 1-77-56 E778 -> 00008F3E # 1-77-57 E779 -> 00008F4C # 1-77-58 E77A -> 00008F49 # 1-77-59 E77B -> 00008F46 # 1-77-60 E77C -> 00008F4E # 1-77-61 E77D -> 00008F57 # 1-77-62 E77E -> 00008F5C # 1-77-63 E780 -> 00008F62 # 1-77-64 E781 -> 00008F63 # 1-77-65 E782 -> 00008F64 # 1-77-66 E783 -> 00008F9C # 1-77-67 E784 -> 00008F9F # 1-77-68 E785 -> 00008FA3 # 1-77-69 E786 -> 00008FAD # 1-77-70 E787 -> 00008FAF # 1-77-71 E788 -> 00008FB7 # 1-77-72 E789 -> 00008FDA # 1-77-73 E78A -> 00008FE5 # 1-77-74 E78B -> 00008FE2 # 1-77-75 E78C -> 00008FEA # 1-77-76 E78D -> 00008FEF # 1-77-77 E78E -> 00009087 # 1-77-78 E78F -> 00008FF4 # 1-77-79 E790 -> 00009005 # 1-77-80 E791 -> 00008FF9 # 1-77-81 E792 -> 00008FFA # 1-77-82 E793 -> 00009011 # 1-77-83 E794 -> 00009015 # 1-77-84 E795 -> 00009021 # 1-77-85 E796 -> 0000900D # 1-77-86 E797 -> 0000901E # 1-77-87 E798 -> 00009016 # 1-77-88 E799 -> 0000900B # 1-77-89 E79A -> 00009027 # 1-77-90 E79B -> 00009036 # 1-77-91 E79C -> 00009035 # 1-77-92 E79D -> 00009039 # 1-77-93 E79E -> 00008FF8 # 1-77-94 E79F -> 0000904F # 1-78-1 E7A0 -> 00009050 # 1-78-2 E7A1 -> 00009051 # 1-78-3 E7A2 -> 00009052 # 1-78-4 E7A3 -> 0000900E # 1-78-5 E7A4 -> 00009049 # 1-78-6 E7A5 -> 0000903E # 1-78-7 E7A6 -> 00009056 # 1-78-8 E7A7 -> 00009058 # 1-78-9 E7A8 -> 0000905E # 1-78-10 E7A9 -> 00009068 # 1-78-11 E7AA -> 0000906F # 1-78-12 E7AB -> 00009076 # 1-78-13 E7AC -> 000096A8 # 1-78-14 E7AD -> 00009072 # 1-78-15 E7AE -> 00009082 # 1-78-16 E7AF -> 0000907D # 1-78-17 E7B0 -> 00009081 # 1-78-18 E7B1 -> 00009080 # 1-78-19 E7B2 -> 0000908A # 1-78-20 E7B3 -> 00009089 # 1-78-21 E7B4 -> 0000908F # 1-78-22 E7B5 -> 000090A8 # 1-78-23 E7B6 -> 000090AF # 1-78-24 E7B7 -> 000090B1 # 1-78-25 E7B8 -> 000090B5 # 1-78-26 E7B9 -> 000090E2 # 1-78-27 E7BA -> 000090E4 # 1-78-28 E7BB -> 00006248 # 1-78-29 E7BC -> 000090DB # 1-78-30 E7BD -> 00009102 # 1-78-31 E7BE -> 00009112 # 1-78-32 E7BF -> 00009119 # 1-78-33 E7C0 -> 00009132 # 1-78-34 E7C1 -> 00009130 # 1-78-35 E7C2 -> 0000914A # 1-78-36 E7C3 -> 00009156 # 1-78-37 E7C4 -> 00009158 # 1-78-38 E7C5 -> 00009163 # 1-78-39 E7C6 -> 00009165 # 1-78-40 E7C7 -> 00009169 # 1-78-41 E7C8 -> 00009173 # 1-78-42 E7C9 -> 00009172 # 1-78-43 E7CA -> 0000918B # 1-78-44 E7CB -> 00009189 # 1-78-45 E7CC -> 00009182 # 1-78-46 E7CD -> 000091A2 # 1-78-47 E7CE -> 000091AB # 1-78-48 E7CF -> 000091AF # 1-78-49 E7D0 -> 000091AA # 1-78-50 E7D1 -> 000091B5 # 1-78-51 E7D2 -> 000091B4 # 1-78-52 E7D3 -> 000091BA # 1-78-53 E7D4 -> 000091C0 # 1-78-54 E7D5 -> 000091C1 # 1-78-55 E7D6 -> 000091C9 # 1-78-56 E7D7 -> 000091CB # 1-78-57 E7D8 -> 000091D0 # 1-78-58 E7D9 -> 000091D6 # 1-78-59 E7DA -> 000091DF # 1-78-60 E7DB -> 000091E1 # 1-78-61 E7DC -> 000091DB # 1-78-62 E7DD -> 000091FC # 1-78-63 E7DE -> 000091F5 # 1-78-64 E7DF -> 000091F6 # 1-78-65 E7E0 -> 0000921E # 1-78-66 E7E1 -> 000091FF # 1-78-67 E7E2 -> 00009214 # 1-78-68 E7E3 -> 0000922C # 1-78-69 E7E4 -> 00009215 # 1-78-70 E7E5 -> 00009211 # 1-78-71 E7E6 -> 0000925E # 1-78-72 E7E7 -> 00009257 # 1-78-73 E7E8 -> 00009245 # 1-78-74 E7E9 -> 00009249 # 1-78-75 E7EA -> 00009264 # 1-78-76 E7EB -> 00009248 # 1-78-77 E7EC -> 00009295 # 1-78-78 E7ED -> 0000923F # 1-78-79 E7EE -> 0000924B # 1-78-80 E7EF -> 00009250 # 1-78-81 E7F0 -> 0000929C # 1-78-82 E7F1 -> 00009296 # 1-78-83 E7F2 -> 00009293 # 1-78-84 E7F3 -> 0000929B # 1-78-85 E7F4 -> 0000925A # 1-78-86 E7F5 -> 000092CF # 1-78-87 E7F6 -> 000092B9 # 1-78-88 E7F7 -> 000092B7 # 1-78-89 E7F8 -> 000092E9 # 1-78-90 E7F9 -> 0000930F # 1-78-91 E7FA -> 000092FA # 1-78-92 E7FB -> 00009344 # 1-78-93 E7FC -> 0000932E # 1-78-94 E840 -> 00009319 # 1-79-1 E841 -> 00009322 # 1-79-2 E842 -> 0000931A # 1-79-3 E843 -> 00009323 # 1-79-4 E844 -> 0000933A # 1-79-5 E845 -> 00009335 # 1-79-6 E846 -> 0000933B # 1-79-7 E847 -> 0000935C # 1-79-8 E848 -> 00009360 # 1-79-9 E849 -> 0000937C # 1-79-10 E84A -> 0000936E # 1-79-11 E84B -> 00009356 # 1-79-12 E84C -> 000093B0 # 1-79-13 E84D -> 000093AC # 1-79-14 E84E -> 000093AD # 1-79-15 E84F -> 00009394 # 1-79-16 E850 -> 000093B9 # 1-79-17 E851 -> 000093D6 # 1-79-18 E852 -> 000093D7 # 1-79-19 E853 -> 000093E8 # 1-79-20 E854 -> 000093E5 # 1-79-21 E855 -> 000093D8 # 1-79-22 E856 -> 000093C3 # 1-79-23 E857 -> 000093DD # 1-79-24 E858 -> 000093D0 # 1-79-25 E859 -> 000093C8 # 1-79-26 E85A -> 000093E4 # 1-79-27 E85B -> 0000941A # 1-79-28 E85C -> 00009414 # 1-79-29 E85D -> 00009413 # 1-79-30 E85E -> 00009403 # 1-79-31 E85F -> 00009407 # 1-79-32 E860 -> 00009410 # 1-79-33 E861 -> 00009436 # 1-79-34 E862 -> 0000942B # 1-79-35 E863 -> 00009435 # 1-79-36 E864 -> 00009421 # 1-79-37 E865 -> 0000943A # 1-79-38 E866 -> 00009441 # 1-79-39 E867 -> 00009452 # 1-79-40 E868 -> 00009444 # 1-79-41 E869 -> 0000945B # 1-79-42 E86A -> 00009460 # 1-79-43 E86B -> 00009462 # 1-79-44 E86C -> 0000945E # 1-79-45 E86D -> 0000946A # 1-79-46 E86E -> 00009229 # 1-79-47 E86F -> 00009470 # 1-79-48 E870 -> 00009475 # 1-79-49 E871 -> 00009477 # 1-79-50 E872 -> 0000947D # 1-79-51 E873 -> 0000945A # 1-79-52 E874 -> 0000947C # 1-79-53 E875 -> 0000947E # 1-79-54 E876 -> 00009481 # 1-79-55 E877 -> 0000947F # 1-79-56 E878 -> 00009582 # 1-79-57 E879 -> 00009587 # 1-79-58 E87A -> 0000958A # 1-79-59 E87B -> 00009594 # 1-79-60 E87C -> 00009596 # 1-79-61 E87D -> 00009598 # 1-79-62 E87E -> 00009599 # 1-79-63 E880 -> 000095A0 # 1-79-64 E881 -> 000095A8 # 1-79-65 E882 -> 000095A7 # 1-79-66 E883 -> 000095AD # 1-79-67 E884 -> 000095BC # 1-79-68 E885 -> 000095BB # 1-79-69 E886 -> 000095B9 # 1-79-70 E887 -> 000095BE # 1-79-71 E888 -> 000095CA # 1-79-72 E889 -> 00006FF6 # 1-79-73 E88A -> 000095C3 # 1-79-74 E88B -> 000095CD # 1-79-75 E88C -> 000095CC # 1-79-76 E88D -> 000095D5 # 1-79-77 E88E -> 000095D4 # 1-79-78 E88F -> 000095D6 # 1-79-79 E890 -> 000095DC # 1-79-80 E891 -> 000095E1 # 1-79-81 E892 -> 000095E5 # 1-79-82 E893 -> 000095E2 # 1-79-83 E894 -> 00009621 # 1-79-84 E895 -> 00009628 # 1-79-85 E896 -> 0000962E # 1-79-86 E897 -> 0000962F # 1-79-87 E898 -> 00009642 # 1-79-88 E899 -> 0000964C # 1-79-89 E89A -> 0000964F # 1-79-90 E89B -> 0000964B # 1-79-91 E89C -> 00009677 # 1-79-92 E89D -> 0000965C # 1-79-93 E89E -> 0000965E # 1-79-94 E89F -> 0000965D # 1-80-1 E8A0 -> 0000965F # 1-80-2 E8A1 -> 00009666 # 1-80-3 E8A2 -> 00009672 # 1-80-4 E8A3 -> 0000966C # 1-80-5 E8A4 -> 0000968D # 1-80-6 E8A5 -> 00009698 # 1-80-7 E8A6 -> 00009695 # 1-80-8 E8A7 -> 00009697 # 1-80-9 E8A8 -> 000096AA # 1-80-10 E8A9 -> 000096A7 # 1-80-11 E8AA -> 000096B1 # 1-80-12 E8AB -> 000096B2 # 1-80-13 E8AC -> 000096B0 # 1-80-14 E8AD -> 000096B4 # 1-80-15 E8AE -> 000096B6 # 1-80-16 E8AF -> 000096B8 # 1-80-17 E8B0 -> 000096B9 # 1-80-18 E8B1 -> 000096CE # 1-80-19 E8B2 -> 000096CB # 1-80-20 E8B3 -> 000096C9 # 1-80-21 E8B4 -> 000096CD # 1-80-22 E8B5 -> 0000894D # 1-80-23 E8B6 -> 000096DC # 1-80-24 E8B7 -> 0000970D # 1-80-25 E8B8 -> 000096D5 # 1-80-26 E8B9 -> 000096F9 # 1-80-27 E8BA -> 00009704 # 1-80-28 E8BB -> 00009706 # 1-80-29 E8BC -> 00009708 # 1-80-30 E8BD -> 00009713 # 1-80-31 E8BE -> 0000970E # 1-80-32 E8BF -> 00009711 # 1-80-33 E8C0 -> 0000970F # 1-80-34 E8C1 -> 00009716 # 1-80-35 E8C2 -> 00009719 # 1-80-36 E8C3 -> 00009724 # 1-80-37 E8C4 -> 0000972A # 1-80-38 E8C5 -> 00009730 # 1-80-39 E8C6 -> 00009739 # 1-80-40 E8C7 -> 0000973D # 1-80-41 E8C8 -> 0000973E # 1-80-42 E8C9 -> 00009744 # 1-80-43 E8CA -> 00009746 # 1-80-44 E8CB -> 00009748 # 1-80-45 E8CC -> 00009742 # 1-80-46 E8CD -> 00009749 # 1-80-47 E8CE -> 0000975C # 1-80-48 E8CF -> 00009760 # 1-80-49 E8D0 -> 00009764 # 1-80-50 E8D1 -> 00009766 # 1-80-51 E8D2 -> 00009768 # 1-80-52 E8D3 -> 000052D2 # 1-80-53 E8D4 -> 0000976B # 1-80-54 E8D5 -> 00009771 # 1-80-55 E8D6 -> 00009779 # 1-80-56 E8D7 -> 00009785 # 1-80-57 E8D8 -> 0000977C # 1-80-58 E8D9 -> 00009781 # 1-80-59 E8DA -> 0000977A # 1-80-60 E8DB -> 00009786 # 1-80-61 E8DC -> 0000978B # 1-80-62 E8DD -> 0000978F # 1-80-63 E8DE -> 00009790 # 1-80-64 E8DF -> 0000979C # 1-80-65 E8E0 -> 000097A8 # 1-80-66 E8E1 -> 000097A6 # 1-80-67 E8E2 -> 000097A3 # 1-80-68 E8E3 -> 000097B3 # 1-80-69 E8E4 -> 000097B4 # 1-80-70 E8E5 -> 000097C3 # 1-80-71 E8E6 -> 000097C6 # 1-80-72 E8E7 -> 000097C8 # 1-80-73 E8E8 -> 000097CB # 1-80-74 E8E9 -> 000097DC # 1-80-75 E8EA -> 000097ED # 1-80-76 E8EB -> 00009F4F # 1-80-77 E8EC -> 000097F2 # 1-80-78 E8ED -> 00007ADF # 1-80-79 E8EE -> 000097F6 # 1-80-80 E8EF -> 000097F5 # 1-80-81 E8F0 -> 0000980F # 1-80-82 E8F1 -> 0000980C # 1-80-83 E8F2 -> 00009838 # 1-80-84 E8F3 -> 00009824 # 1-80-85 E8F4 -> 00009821 # 1-80-86 E8F5 -> 00009837 # 1-80-87 E8F6 -> 0000983D # 1-80-88 E8F7 -> 00009846 # 1-80-89 E8F8 -> 0000984F # 1-80-90 E8F9 -> 0000984B # 1-80-91 E8FA -> 0000986B # 1-80-92 E8FB -> 0000986F # 1-80-93 E8FC -> 00009870 # 1-80-94 E940 -> 00009871 # 1-81-1 E941 -> 00009874 # 1-81-2 E942 -> 00009873 # 1-81-3 E943 -> 000098AA # 1-81-4 E944 -> 000098AF # 1-81-5 E945 -> 000098B1 # 1-81-6 E946 -> 000098B6 # 1-81-7 E947 -> 000098C4 # 1-81-8 E948 -> 000098C3 # 1-81-9 E949 -> 000098C6 # 1-81-10 E94A -> 000098E9 # 1-81-11 E94B -> 000098EB # 1-81-12 E94C -> 00009903 # 1-81-13 E94D -> 00009909 # 1-81-14 E94E -> 00009912 # 1-81-15 E94F -> 00009914 # 1-81-16 E950 -> 00009918 # 1-81-17 E951 -> 00009921 # 1-81-18 E952 -> 0000991D # 1-81-19 E953 -> 0000991E # 1-81-20 E954 -> 00009924 # 1-81-21 E955 -> 00009920 # 1-81-22 E956 -> 0000992C # 1-81-23 E957 -> 0000992E # 1-81-24 E958 -> 0000993D # 1-81-25 E959 -> 0000993E # 1-81-26 E95A -> 00009942 # 1-81-27 E95B -> 00009949 # 1-81-28 E95C -> 00009945 # 1-81-29 E95D -> 00009950 # 1-81-30 E95E -> 0000994B # 1-81-31 E95F -> 00009951 # 1-81-32 E960 -> 00009952 # 1-81-33 E961 -> 0000994C # 1-81-34 E962 -> 00009955 # 1-81-35 E963 -> 00009997 # 1-81-36 E964 -> 00009998 # 1-81-37 E965 -> 000099A5 # 1-81-38 E966 -> 000099AD # 1-81-39 E967 -> 000099AE # 1-81-40 E968 -> 000099BC # 1-81-41 E969 -> 000099DF # 1-81-42 E96A -> 000099DB # 1-81-43 E96B -> 000099DD # 1-81-44 E96C -> 000099D8 # 1-81-45 E96D -> 000099D1 # 1-81-46 E96E -> 000099ED # 1-81-47 E96F -> 000099EE # 1-81-48 E970 -> 000099F1 # 1-81-49 E971 -> 000099F2 # 1-81-50 E972 -> 000099FB # 1-81-51 E973 -> 000099F8 # 1-81-52 E974 -> 00009A01 # 1-81-53 E975 -> 00009A0F # 1-81-54 E976 -> 00009A05 # 1-81-55 E977 -> 000099E2 # 1-81-56 E978 -> 00009A19 # 1-81-57 E979 -> 00009A2B # 1-81-58 E97A -> 00009A37 # 1-81-59 E97B -> 00009A45 # 1-81-60 E97C -> 00009A42 # 1-81-61 E97D -> 00009A40 # 1-81-62 E97E -> 00009A43 # 1-81-63 E980 -> 00009A3E # 1-81-64 E981 -> 00009A55 # 1-81-65 E982 -> 00009A4D # 1-81-66 E983 -> 00009A5B # 1-81-67 E984 -> 00009A57 # 1-81-68 E985 -> 00009A5F # 1-81-69 E986 -> 00009A62 # 1-81-70 E987 -> 00009A65 # 1-81-71 E988 -> 00009A64 # 1-81-72 E989 -> 00009A69 # 1-81-73 E98A -> 00009A6B # 1-81-74 E98B -> 00009A6A # 1-81-75 E98C -> 00009AAD # 1-81-76 E98D -> 00009AB0 # 1-81-77 E98E -> 00009ABC # 1-81-78 E98F -> 00009AC0 # 1-81-79 E990 -> 00009ACF # 1-81-80 E991 -> 00009AD1 # 1-81-81 E992 -> 00009AD3 # 1-81-82 E993 -> 00009AD4 # 1-81-83 E994 -> 00009ADE # 1-81-84 E995 -> 00009ADF # 1-81-85 E996 -> 00009AE2 # 1-81-86 E997 -> 00009AE3 # 1-81-87 E998 -> 00009AE6 # 1-81-88 E999 -> 00009AEF # 1-81-89 E99A -> 00009AEB # 1-81-90 E99B -> 00009AEE # 1-81-91 E99C -> 00009AF4 # 1-81-92 E99D -> 00009AF1 # 1-81-93 E99E -> 00009AF7 # 1-81-94 E99F -> 00009AFB # 1-82-1 E9A0 -> 00009B06 # 1-82-2 E9A1 -> 00009B18 # 1-82-3 E9A2 -> 00009B1A # 1-82-4 E9A3 -> 00009B1F # 1-82-5 E9A4 -> 00009B22 # 1-82-6 E9A5 -> 00009B23 # 1-82-7 E9A6 -> 00009B25 # 1-82-8 E9A7 -> 00009B27 # 1-82-9 E9A8 -> 00009B28 # 1-82-10 E9A9 -> 00009B29 # 1-82-11 E9AA -> 00009B2A # 1-82-12 E9AB -> 00009B2E # 1-82-13 E9AC -> 00009B2F # 1-82-14 E9AD -> 00009B32 # 1-82-15 E9AE -> 00009B44 # 1-82-16 E9AF -> 00009B43 # 1-82-17 E9B0 -> 00009B4F # 1-82-18 E9B1 -> 00009B4D # 1-82-19 E9B2 -> 00009B4E # 1-82-20 E9B3 -> 00009B51 # 1-82-21 E9B4 -> 00009B58 # 1-82-22 E9B5 -> 00009B74 # 1-82-23 E9B6 -> 00009B93 # 1-82-24 E9B7 -> 00009B83 # 1-82-25 E9B8 -> 00009B91 # 1-82-26 E9B9 -> 00009B96 # 1-82-27 E9BA -> 00009B97 # 1-82-28 E9BB -> 00009B9F # 1-82-29 E9BC -> 00009BA0 # 1-82-30 E9BD -> 00009BA8 # 1-82-31 E9BE -> 00009BB4 # 1-82-32 E9BF -> 00009BC0 # 1-82-33 E9C0 -> 00009BCA # 1-82-34 E9C1 -> 00009BB9 # 1-82-35 E9C2 -> 00009BC6 # 1-82-36 E9C3 -> 00009BCF # 1-82-37 E9C4 -> 00009BD1 # 1-82-38 E9C5 -> 00009BD2 # 1-82-39 E9C6 -> 00009BE3 # 1-82-40 E9C7 -> 00009BE2 # 1-82-41 E9C8 -> 00009BE4 # 1-82-42 E9C9 -> 00009BD4 # 1-82-43 E9CA -> 00009BE1 # 1-82-44 E9CB -> 00009C3A # 1-82-45 E9CC -> 00009BF2 # 1-82-46 E9CD -> 00009BF1 # 1-82-47 E9CE -> 00009BF0 # 1-82-48 E9CF -> 00009C15 # 1-82-49 E9D0 -> 00009C14 # 1-82-50 E9D1 -> 00009C09 # 1-82-51 E9D2 -> 00009C13 # 1-82-52 E9D3 -> 00009C0C # 1-82-53 E9D4 -> 00009C06 # 1-82-54 E9D5 -> 00009C08 # 1-82-55 E9D6 -> 00009C12 # 1-82-56 E9D7 -> 00009C0A # 1-82-57 E9D8 -> 00009C04 # 1-82-58 E9D9 -> 00009C2E # 1-82-59 E9DA -> 00009C1B # 1-82-60 E9DB -> 00009C25 # 1-82-61 E9DC -> 00009C24 # 1-82-62 E9DD -> 00009C21 # 1-82-63 E9DE -> 00009C30 # 1-82-64 E9DF -> 00009C47 # 1-82-65 E9E0 -> 00009C32 # 1-82-66 E9E1 -> 00009C46 # 1-82-67 E9E2 -> 00009C3E # 1-82-68 E9E3 -> 00009C5A # 1-82-69 E9E4 -> 00009C60 # 1-82-70 E9E5 -> 00009C67 # 1-82-71 E9E6 -> 00009C76 # 1-82-72 E9E7 -> 00009C78 # 1-82-73 E9E8 -> 00009CE7 # 1-82-74 E9E9 -> 00009CEC # 1-82-75 E9EA -> 00009CF0 # 1-82-76 E9EB -> 00009D09 # 1-82-77 E9EC -> 00009D08 # 1-82-78 E9ED -> 00009CEB # 1-82-79 E9EE -> 00009D03 # 1-82-80 E9EF -> 00009D06 # 1-82-81 E9F0 -> 00009D2A # 1-82-82 E9F1 -> 00009D26 # 1-82-83 E9F2 -> 00009DAF # 1-82-84 E9F3 -> 00009D23 # 1-82-85 E9F4 -> 00009D1F # 1-82-86 E9F5 -> 00009D44 # 1-82-87 E9F6 -> 00009D15 # 1-82-88 E9F7 -> 00009D12 # 1-82-89 E9F8 -> 00009D41 # 1-82-90 E9F9 -> 00009D3F # 1-82-91 E9FA -> 00009D3E # 1-82-92 E9FB -> 00009D46 # 1-82-93 E9FC -> 00009D48 # 1-82-94 EA40 -> 00009D5D # 1-83-1 EA41 -> 00009D5E # 1-83-2 EA42 -> 00009D64 # 1-83-3 EA43 -> 00009D51 # 1-83-4 EA44 -> 00009D50 # 1-83-5 EA45 -> 00009D59 # 1-83-6 EA46 -> 00009D72 # 1-83-7 EA47 -> 00009D89 # 1-83-8 EA48 -> 00009D87 # 1-83-9 EA49 -> 00009DAB # 1-83-10 EA4A -> 00009D6F # 1-83-11 EA4B -> 00009D7A # 1-83-12 EA4C -> 00009D9A # 1-83-13 EA4D -> 00009DA4 # 1-83-14 EA4E -> 00009DA9 # 1-83-15 EA4F -> 00009DB2 # 1-83-16 EA50 -> 00009DC4 # 1-83-17 EA51 -> 00009DC1 # 1-83-18 EA52 -> 00009DBB # 1-83-19 EA53 -> 00009DB8 # 1-83-20 EA54 -> 00009DBA # 1-83-21 EA55 -> 00009DC6 # 1-83-22 EA56 -> 00009DCF # 1-83-23 EA57 -> 00009DC2 # 1-83-24 EA58 -> 00009DD9 # 1-83-25 EA59 -> 00009DD3 # 1-83-26 EA5A -> 00009DF8 # 1-83-27 EA5B -> 00009DE6 # 1-83-28 EA5C -> 00009DED # 1-83-29 EA5D -> 00009DEF # 1-83-30 EA5E -> 00009DFD # 1-83-31 EA5F -> 00009E1A # 1-83-32 EA60 -> 00009E1B # 1-83-33 EA61 -> 00009E1E # 1-83-34 EA62 -> 00009E75 # 1-83-35 EA63 -> 00009E79 # 1-83-36 EA64 -> 00009E7D # 1-83-37 EA65 -> 00009E81 # 1-83-38 EA66 -> 00009E88 # 1-83-39 EA67 -> 00009E8B # 1-83-40 EA68 -> 00009E8C # 1-83-41 EA69 -> 00009E92 # 1-83-42 EA6A -> 00009E95 # 1-83-43 EA6B -> 00009E91 # 1-83-44 EA6C -> 00009E9D # 1-83-45 EA6D -> 00009EA5 # 1-83-46 EA6E -> 00009EA9 # 1-83-47 EA6F -> 00009EB8 # 1-83-48 EA70 -> 00009EAA # 1-83-49 EA71 -> 00009EAD # 1-83-50 EA72 -> 00009761 # 1-83-51 EA73 -> 00009ECC # 1-83-52 EA74 -> 00009ECE # 1-83-53 EA75 -> 00009ECF # 1-83-54 EA76 -> 00009ED0 # 1-83-55 EA77 -> 00009ED4 # 1-83-56 EA78 -> 00009EDC # 1-83-57 EA79 -> 00009EDE # 1-83-58 EA7A -> 00009EDD # 1-83-59 EA7B -> 00009EE0 # 1-83-60 EA7C -> 00009EE5 # 1-83-61 EA7D -> 00009EE8 # 1-83-62 EA7E -> 00009EEF # 1-83-63 EA80 -> 00009EF4 # 1-83-64 EA81 -> 00009EF6 # 1-83-65 EA82 -> 00009EF7 # 1-83-66 EA83 -> 00009EF9 # 1-83-67 EA84 -> 00009EFB # 1-83-68 EA85 -> 00009EFC # 1-83-69 EA86 -> 00009EFD # 1-83-70 EA87 -> 00009F07 # 1-83-71 EA88 -> 00009F08 # 1-83-72 EA89 -> 000076B7 # 1-83-73 EA8A -> 00009F15 # 1-83-74 EA8B -> 00009F21 # 1-83-75 EA8C -> 00009F2C # 1-83-76 EA8D -> 00009F3E # 1-83-77 EA8E -> 00009F4A # 1-83-78 EA8F -> 00009F52 # 1-83-79 EA90 -> 00009F54 # 1-83-80 EA91 -> 00009F63 # 1-83-81 EA92 -> 00009F5F # 1-83-82 EA93 -> 00009F60 # 1-83-83 EA94 -> 00009F61 # 1-83-84 EA95 -> 00009F66 # 1-83-85 EA96 -> 00009F67 # 1-83-86 EA97 -> 00009F6C # 1-83-87 EA98 -> 00009F6A # 1-83-88 EA99 -> 00009F77 # 1-83-89 EA9A -> 00009F72 # 1-83-90 EA9B -> 00009F76 # 1-83-91 EA9C -> 00009F95 # 1-83-92 EA9D -> 00009F9C # 1-83-93 EA9E -> 00009FA0 # 1-83-94 EA9F -> 0000582F # 1-84-1 EAA0 -> 000069C7 # 1-84-2 EAA1 -> 00009059 # 1-84-3 EAA2 -> 00007464 # 1-84-4 EAA3 -> 000051DC # 1-84-5 EAA4 -> 00007199 # 1-84-6 EAA6 -> 00005DE2 # 1-84-8 EAA7 -> 00005E14 # 1-84-9 EAA8 -> 00005E18 # 1-84-10 EAA9 -> 00005E58 # 1-84-11 EAAA -> 00005E5E # 1-84-12 EAAB -> 00005EBE # 1-84-13 EAAC -> 0000F928 # 1-84-14 EAAD -> 00005ECB # 1-84-15 EAAE -> 00005EF9 # 1-84-16 EAAF -> 00005F00 # 1-84-17 EAB0 -> 00005F02 # 1-84-18 EAB1 -> 00005F07 # 1-84-19 EAB2 -> 00005F1D # 1-84-20 EAB3 -> 00005F23 # 1-84-21 EAB4 -> 00005F34 # 1-84-22 EAB5 -> 00005F36 # 1-84-23 EAB6 -> 00005F3D # 1-84-24 EAB7 -> 00005F40 # 1-84-25 EAB8 -> 00005F45 # 1-84-26 EAB9 -> 00005F54 # 1-84-27 EABA -> 00005F58 # 1-84-28 EABB -> 00005F64 # 1-84-29 EABC -> 00005F67 # 1-84-30 EABD -> 00005F7D # 1-84-31 EABE -> 00005F89 # 1-84-32 EABF -> 00005F9C # 1-84-33 EAC0 -> 00005FA7 # 1-84-34 EAC1 -> 00005FAF # 1-84-35 EAC2 -> 00005FB5 # 1-84-36 EAC3 -> 00005FB7 # 1-84-37 EAC4 -> 00005FC9 # 1-84-38 EAC5 -> 00005FDE # 1-84-39 EAC6 -> 00005FE1 # 1-84-40 EAC7 -> 00005FE9 # 1-84-41 EAC8 -> 0000600D # 1-84-42 EAC9 -> 00006014 # 1-84-43 EACA -> 00006018 # 1-84-44 EACB -> 00006033 # 1-84-45 EACC -> 00006035 # 1-84-46 EACD -> 00006047 # 1-84-47 EACE -> 0000FA3D # 1-84-48 EACF -> 0000609D # 1-84-49 EAD0 -> 0000609E # 1-84-50 EAD1 -> 000060CB # 1-84-51 EAD2 -> 000060D4 # 1-84-52 EAD3 -> 000060D5 # 1-84-53 EAD4 -> 000060DD # 1-84-54 EAD5 -> 000060F8 # 1-84-55 EAD6 -> 0000611C # 1-84-56 EAD7 -> 0000612B # 1-84-57 EAD8 -> 00006130 # 1-84-58 EAD9 -> 00006137 # 1-84-59 EADA -> 0000FA3E # 1-84-60 EADB -> 0000618D # 1-84-61 EADC -> 0000FA3F # 1-84-62 EADD -> 000061BC # 1-84-63 EADE -> 000061B9 # 1-84-64 EADF -> 0000FA40 # 1-84-65 EAE0 -> 00006222 # 1-84-66 EAE1 -> 0000623E # 1-84-67 EAE2 -> 00006243 # 1-84-68 EAE3 -> 00006256 # 1-84-69 EAE4 -> 0000625A # 1-84-70 EAE5 -> 0000626F # 1-84-71 EAE6 -> 00006285 # 1-84-72 EAE7 -> 000062C4 # 1-84-73 EAE8 -> 000062D6 # 1-84-74 EAE9 -> 000062FC # 1-84-75 EAEA -> 0000630A # 1-84-76 EAEB -> 00006318 # 1-84-77 EAEC -> 00006339 # 1-84-78 EAED -> 00006343 # 1-84-79 EAEE -> 00006365 # 1-84-80 EAEF -> 0000637C # 1-84-81 EAF0 -> 000063E5 # 1-84-82 EAF1 -> 000063ED # 1-84-83 EAF2 -> 000063F5 # 1-84-84 EAF3 -> 00006410 # 1-84-85 EAF4 -> 00006414 # 1-84-86 EAF5 -> 00006422 # 1-84-87 EAF6 -> 00006479 # 1-84-88 EAF7 -> 00006451 # 1-84-89 EAF8 -> 00006460 # 1-84-90 EAF9 -> 0000646D # 1-84-91 EAFA -> 000064CE # 1-84-92 EAFB -> 000064BE # 1-84-93 EAFC -> 000064BF # 1-84-94 EB40 -> 000064C4 # 1-85-1 EB41 -> 000064CA # 1-85-2 EB42 -> 000064D0 # 1-85-3 EB43 -> 000064F7 # 1-85-4 EB44 -> 000064FB # 1-85-5 EB45 -> 00006522 # 1-85-6 EB46 -> 00006529 # 1-85-7 EB47 -> 0000FA41 # 1-85-8 EB48 -> 00006567 # 1-85-9 EB49 -> 0000659D # 1-85-10 EB4A -> 0000FA42 # 1-85-11 EB4B -> 00006600 # 1-85-12 EB4C -> 00006609 # 1-85-13 EB4D -> 00006615 # 1-85-14 EB4E -> 0000661E # 1-85-15 EB4F -> 0000663A # 1-85-16 EB50 -> 00006622 # 1-85-17 EB51 -> 00006624 # 1-85-18 EB52 -> 0000662B # 1-85-19 EB53 -> 00006630 # 1-85-20 EB54 -> 00006631 # 1-85-21 EB55 -> 00006633 # 1-85-22 EB56 -> 000066FB # 1-85-23 EB57 -> 00006648 # 1-85-24 EB58 -> 0000664C # 1-85-25 EB59 -> 000231C4 # 1-85-26 EB5A -> 00006659 # 1-85-27 EB5B -> 0000665A # 1-85-28 EB5C -> 00006661 # 1-85-29 EB5D -> 00006665 # 1-85-30 EB5E -> 00006673 # 1-85-31 EB5F -> 00006677 # 1-85-32 EB60 -> 00006678 # 1-85-33 EB61 -> 0000668D # 1-85-34 EB62 -> 0000FA43 # 1-85-35 EB63 -> 000066A0 # 1-85-36 EB64 -> 000066B2 # 1-85-37 EB65 -> 000066BB # 1-85-38 EB66 -> 000066C6 # 1-85-39 EB67 -> 000066C8 # 1-85-40 EB68 -> 00003B22 # 1-85-41 EB69 -> 000066DB # 1-85-42 EB6A -> 000066E8 # 1-85-43 EB6B -> 000066FA # 1-85-44 EB6C -> 00006713 # 1-85-45 EB6D -> 0000F929 # 1-85-46 EB6E -> 00006733 # 1-85-47 EB6F -> 00006766 # 1-85-48 EB70 -> 00006747 # 1-85-49 EB71 -> 00006748 # 1-85-50 EB72 -> 0000677B # 1-85-51 EB73 -> 00006781 # 1-85-52 EB74 -> 00006793 # 1-85-53 EB75 -> 00006798 # 1-85-54 EB76 -> 0000679B # 1-85-55 EB77 -> 000067BB # 1-85-56 EB78 -> 000067F9 # 1-85-57 EB79 -> 000067C0 # 1-85-58 EB7A -> 000067D7 # 1-85-59 EB7B -> 000067FC # 1-85-60 EB7C -> 00006801 # 1-85-61 EB7D -> 00006852 # 1-85-62 EB7E -> 0000681D # 1-85-63 EB80 -> 0000682C # 1-85-64 EB81 -> 00006831 # 1-85-65 EB82 -> 0000685B # 1-85-66 EB83 -> 00006872 # 1-85-67 EB84 -> 00006875 # 1-85-68 EB85 -> 0000FA44 # 1-85-69 EB86 -> 000068A3 # 1-85-70 EB87 -> 000068A5 # 1-85-71 EB88 -> 000068B2 # 1-85-72 EB89 -> 000068C8 # 1-85-73 EB8A -> 000068D0 # 1-85-74 EB8B -> 000068E8 # 1-85-75 EB8C -> 000068ED # 1-85-76 EB8D -> 000068F0 # 1-85-77 EB8E -> 000068F1 # 1-85-78 EB8F -> 000068FC # 1-85-79 EB90 -> 0000690A # 1-85-80 EB91 -> 00006949 # 1-85-81 EB92 -> 000235C4 # 1-85-82 EB93 -> 00006935 # 1-85-83 EB94 -> 00006942 # 1-85-84 EB95 -> 00006957 # 1-85-85 EB96 -> 00006963 # 1-85-86 EB97 -> 00006964 # 1-85-87 EB98 -> 00006968 # 1-85-88 EB99 -> 00006980 # 1-85-89 EB9A -> 0000FA14 # 1-85-90 EB9B -> 000069A5 # 1-85-91 EB9C -> 000069AD # 1-85-92 EB9D -> 000069CF # 1-85-93 EB9E -> 00003BB6 # 1-85-94 EB9F -> 00003BC3 # 1-86-1 EBA0 -> 000069E2 # 1-86-2 EBA1 -> 000069E9 # 1-86-3 EBA2 -> 000069EA # 1-86-4 EBA3 -> 000069F5 # 1-86-5 EBA4 -> 000069F6 # 1-86-6 EBA5 -> 00006A0F # 1-86-7 EBA6 -> 00006A15 # 1-86-8 EBA7 -> 0002373F # 1-86-9 EBA8 -> 00006A3B # 1-86-10 EBA9 -> 00006A3E # 1-86-11 EBAA -> 00006A45 # 1-86-12 EBAB -> 00006A50 # 1-86-13 EBAC -> 00006A56 # 1-86-14 EBAD -> 00006A5B # 1-86-15 EBAE -> 00006A6B # 1-86-16 EBAF -> 00006A73 # 1-86-17 EBB0 -> 00023763 # 1-86-18 EBB1 -> 00006A89 # 1-86-19 EBB2 -> 00006A94 # 1-86-20 EBB3 -> 00006A9D # 1-86-21 EBB4 -> 00006A9E # 1-86-22 EBB5 -> 00006AA5 # 1-86-23 EBB6 -> 00006AE4 # 1-86-24 EBB7 -> 00006AE7 # 1-86-25 EBB8 -> 00003C0F # 1-86-26 EBB9 -> 0000F91D # 1-86-27 EBBA -> 00006B1B # 1-86-28 EBBB -> 00006B1E # 1-86-29 EBBC -> 00006B2C # 1-86-30 EBBD -> 00006B35 # 1-86-31 EBBE -> 00006B46 # 1-86-32 EBBF -> 00006B56 # 1-86-33 EBC0 -> 00006B60 # 1-86-34 EBC1 -> 00006B65 # 1-86-35 EBC2 -> 00006B67 # 1-86-36 EBC3 -> 00006B77 # 1-86-37 EBC4 -> 00006B82 # 1-86-38 EBC5 -> 00006BA9 # 1-86-39 EBC6 -> 00006BAD # 1-86-40 EBC7 -> 0000F970 # 1-86-41 EBC8 -> 00006BCF # 1-86-42 EBC9 -> 00006BD6 # 1-86-43 EBCA -> 00006BD7 # 1-86-44 EBCB -> 00006BFF # 1-86-45 EBCC -> 00006C05 # 1-86-46 EBCD -> 00006C10 # 1-86-47 EBCE -> 00006C33 # 1-86-48 EBCF -> 00006C59 # 1-86-49 EBD0 -> 00006C5C # 1-86-50 EBD1 -> 00006CAA # 1-86-51 EBD2 -> 00006C74 # 1-86-52 EBD3 -> 00006C76 # 1-86-53 EBD4 -> 00006C85 # 1-86-54 EBD5 -> 00006C86 # 1-86-55 EBD6 -> 00006C98 # 1-86-56 EBD7 -> 00006C9C # 1-86-57 EBD8 -> 00006CFB # 1-86-58 EBD9 -> 00006CC6 # 1-86-59 EBDA -> 00006CD4 # 1-86-60 EBDB -> 00006CE0 # 1-86-61 EBDC -> 00006CEB # 1-86-62 EBDD -> 00006CEE # 1-86-63 EBDE -> 00023CFE # 1-86-64 EBDF -> 00006D04 # 1-86-65 EBE0 -> 00006D0E # 1-86-66 EBE1 -> 00006D2E # 1-86-67 EBE2 -> 00006D31 # 1-86-68 EBE3 -> 00006D39 # 1-86-69 EBE4 -> 00006D3F # 1-86-70 EBE5 -> 00006D58 # 1-86-71 EBE6 -> 00006D65 # 1-86-72 EBE7 -> 0000FA45 # 1-86-73 EBE8 -> 00006D82 # 1-86-74 EBE9 -> 00006D87 # 1-86-75 EBEA -> 00006D89 # 1-86-76 EBEB -> 00006D94 # 1-86-77 EBEC -> 00006DAA # 1-86-78 EBED -> 00006DAC # 1-86-79 EBEE -> 00006DBF # 1-86-80 EBEF -> 00006DC4 # 1-86-81 EBF0 -> 00006DD6 # 1-86-82 EBF1 -> 00006DDA # 1-86-83 EBF2 -> 00006DDB # 1-86-84 EBF3 -> 00006DDD # 1-86-85 EBF4 -> 00006DFC # 1-86-86 EBF5 -> 0000FA46 # 1-86-87 EBF6 -> 00006E34 # 1-86-88 EBF7 -> 00006E44 # 1-86-89 EBF8 -> 00006E5C # 1-86-90 EBF9 -> 00006E5E # 1-86-91 EBFA -> 00006EAB # 1-86-92 EBFB -> 00006EB1 # 1-86-93 EBFC -> 00006EC1 # 1-86-94 EC40 -> 00006EC7 # 1-87-1 EC41 -> 00006ECE # 1-87-2 EC42 -> 00006F10 # 1-87-3 EC43 -> 00006F1A # 1-87-4 EC44 -> 0000FA47 # 1-87-5 EC45 -> 00006F2A # 1-87-6 EC46 -> 00006F2F # 1-87-7 EC47 -> 00006F33 # 1-87-8 EC48 -> 00006F51 # 1-87-9 EC49 -> 00006F59 # 1-87-10 EC4A -> 00006F5E # 1-87-11 EC4B -> 00006F61 # 1-87-12 EC4C -> 00006F62 # 1-87-13 EC4D -> 00006F7E # 1-87-14 EC4E -> 00006F88 # 1-87-15 EC4F -> 00006F8C # 1-87-16 EC50 -> 00006F8D # 1-87-17 EC51 -> 00006F94 # 1-87-18 EC52 -> 00006FA0 # 1-87-19 EC53 -> 00006FA7 # 1-87-20 EC54 -> 00006FB6 # 1-87-21 EC55 -> 00006FBC # 1-87-22 EC56 -> 00006FC7 # 1-87-23 EC57 -> 00006FCA # 1-87-24 EC58 -> 00006FF9 # 1-87-25 EC59 -> 00006FF0 # 1-87-26 EC5A -> 00006FF5 # 1-87-27 EC5B -> 00007005 # 1-87-28 EC5C -> 00007006 # 1-87-29 EC5D -> 00007028 # 1-87-30 EC5E -> 0000704A # 1-87-31 EC5F -> 0000705D # 1-87-32 EC60 -> 0000705E # 1-87-33 EC61 -> 0000704E # 1-87-34 EC62 -> 00007064 # 1-87-35 EC63 -> 00007075 # 1-87-36 EC64 -> 00007085 # 1-87-37 EC65 -> 000070A4 # 1-87-38 EC66 -> 000070AB # 1-87-39 EC67 -> 000070B7 # 1-87-40 EC68 -> 000070D4 # 1-87-41 EC69 -> 000070D8 # 1-87-42 EC6A -> 000070E4 # 1-87-43 EC6B -> 0000710F # 1-87-44 EC6C -> 0000712B # 1-87-45 EC6D -> 0000711E # 1-87-46 EC6E -> 00007120 # 1-87-47 EC6F -> 0000712E # 1-87-48 EC70 -> 00007130 # 1-87-49 EC71 -> 00007146 # 1-87-50 EC72 -> 00007147 # 1-87-51 EC73 -> 00007151 # 1-87-52 EC74 -> 0000FA48 # 1-87-53 EC75 -> 00007152 # 1-87-54 EC76 -> 0000715C # 1-87-55 EC77 -> 00007160 # 1-87-56 EC78 -> 00007168 # 1-87-57 EC79 -> 0000FA15 # 1-87-58 EC7A -> 00007185 # 1-87-59 EC7B -> 00007187 # 1-87-60 EC7C -> 00007192 # 1-87-61 EC7D -> 000071C1 # 1-87-62 EC7E -> 000071BA # 1-87-63 EC80 -> 000071C4 # 1-87-64 EC81 -> 000071FE # 1-87-65 EC82 -> 00007200 # 1-87-66 EC83 -> 00007215 # 1-87-67 EC84 -> 00007255 # 1-87-68 EC85 -> 00007256 # 1-87-69 EC86 -> 00003E3F # 1-87-70 EC87 -> 0000728D # 1-87-71 EC88 -> 0000729B # 1-87-72 EC89 -> 000072BE # 1-87-73 EC8A -> 000072C0 # 1-87-74 EC8B -> 000072FB # 1-87-75 EC8C -> 000247F1 # 1-87-76 EC8D -> 00007327 # 1-87-77 EC8E -> 00007328 # 1-87-78 EC8F -> 0000FA16 # 1-87-79 EC90 -> 00007350 # 1-87-80 EC91 -> 00007366 # 1-87-81 EC92 -> 0000737C # 1-87-82 EC93 -> 00007395 # 1-87-83 EC94 -> 0000739F # 1-87-84 EC95 -> 000073A0 # 1-87-85 EC96 -> 000073A2 # 1-87-86 EC97 -> 000073A6 # 1-87-87 EC98 -> 000073AB # 1-87-88 EC99 -> 000073C9 # 1-87-89 EC9A -> 000073CF # 1-87-90 EC9B -> 000073D6 # 1-87-91 EC9C -> 000073D9 # 1-87-92 EC9D -> 000073E3 # 1-87-93 EC9E -> 000073E9 # 1-87-94 EC9F -> 00007407 # 1-88-1 ECA0 -> 0000740A # 1-88-2 ECA1 -> 0000741A # 1-88-3 ECA2 -> 0000741B # 1-88-4 ECA3 -> 0000FA4A # 1-88-5 ECA4 -> 00007426 # 1-88-6 ECA5 -> 00007428 # 1-88-7 ECA6 -> 0000742A # 1-88-8 ECA7 -> 0000742B # 1-88-9 ECA8 -> 0000742C # 1-88-10 ECA9 -> 0000742E # 1-88-11 ECAA -> 0000742F # 1-88-12 ECAB -> 00007430 # 1-88-13 ECAC -> 00007444 # 1-88-14 ECAD -> 00007446 # 1-88-15 ECAE -> 00007447 # 1-88-16 ECAF -> 0000744B # 1-88-17 ECB0 -> 00007457 # 1-88-18 ECB1 -> 00007462 # 1-88-19 ECB2 -> 0000746B # 1-88-20 ECB3 -> 0000746D # 1-88-21 ECB4 -> 00007486 # 1-88-22 ECB5 -> 00007487 # 1-88-23 ECB6 -> 00007489 # 1-88-24 ECB7 -> 00007498 # 1-88-25 ECB8 -> 0000749C # 1-88-26 ECB9 -> 0000749F # 1-88-27 ECBA -> 000074A3 # 1-88-28 ECBB -> 00007490 # 1-88-29 ECBC -> 000074A6 # 1-88-30 ECBD -> 000074A8 # 1-88-31 ECBE -> 000074A9 # 1-88-32 ECBF -> 000074B5 # 1-88-33 ECC0 -> 000074BF # 1-88-34 ECC1 -> 000074C8 # 1-88-35 ECC2 -> 000074C9 # 1-88-36 ECC3 -> 000074DA # 1-88-37 ECC4 -> 000074FF # 1-88-38 ECC5 -> 00007501 # 1-88-39 ECC6 -> 00007517 # 1-88-40 ECC7 -> 0000752F # 1-88-41 ECC8 -> 0000756F # 1-88-42 ECC9 -> 00007579 # 1-88-43 ECCA -> 00007592 # 1-88-44 ECCB -> 00003F72 # 1-88-45 ECCC -> 000075CE # 1-88-46 ECCD -> 000075E4 # 1-88-47 ECCE -> 00007600 # 1-88-48 ECCF -> 00007602 # 1-88-49 ECD0 -> 00007608 # 1-88-50 ECD1 -> 00007615 # 1-88-51 ECD2 -> 00007616 # 1-88-52 ECD3 -> 00007619 # 1-88-53 ECD4 -> 0000761E # 1-88-54 ECD5 -> 0000762D # 1-88-55 ECD6 -> 00007635 # 1-88-56 ECD7 -> 00007643 # 1-88-57 ECD8 -> 0000764B # 1-88-58 ECD9 -> 00007664 # 1-88-59 ECDA -> 00007665 # 1-88-60 ECDB -> 0000766D # 1-88-61 ECDC -> 0000766F # 1-88-62 ECDD -> 00007671 # 1-88-63 ECDE -> 00007681 # 1-88-64 ECDF -> 0000769B # 1-88-65 ECE0 -> 0000769D # 1-88-66 ECE1 -> 0000769E # 1-88-67 ECE2 -> 000076A6 # 1-88-68 ECE3 -> 000076AA # 1-88-69 ECE4 -> 000076B6 # 1-88-70 ECE5 -> 000076C5 # 1-88-71 ECE6 -> 000076CC # 1-88-72 ECE7 -> 000076CE # 1-88-73 ECE8 -> 000076D4 # 1-88-74 ECE9 -> 000076E6 # 1-88-75 ECEA -> 000076F1 # 1-88-76 ECEB -> 000076FC # 1-88-77 ECEC -> 0000770A # 1-88-78 ECED -> 00007719 # 1-88-79 ECEE -> 00007734 # 1-88-80 ECEF -> 00007736 # 1-88-81 ECF0 -> 00007746 # 1-88-82 ECF1 -> 0000774D # 1-88-83 ECF2 -> 0000774E # 1-88-84 ECF3 -> 0000775C # 1-88-85 ECF4 -> 0000775F # 1-88-86 ECF5 -> 00007762 # 1-88-87 ECF6 -> 0000777A # 1-88-88 ECF7 -> 00007780 # 1-88-89 ECF8 -> 00007794 # 1-88-90 ECF9 -> 000077AA # 1-88-91 ECFA -> 000077E0 # 1-88-92 ECFB -> 0000782D # 1-88-93 ECFC -> 0002548E # 1-88-94 ED40 -> 00007843 # 1-89-1 ED41 -> 0000784E # 1-89-2 ED42 -> 0000784F # 1-89-3 ED43 -> 00007851 # 1-89-4 ED44 -> 00007868 # 1-89-5 ED45 -> 0000786E # 1-89-6 ED46 -> 0000FA4B # 1-89-7 ED47 -> 000078B0 # 1-89-8 ED48 -> 0002550E # 1-89-9 ED49 -> 000078AD # 1-89-10 ED4A -> 000078E4 # 1-89-11 ED4B -> 000078F2 # 1-89-12 ED4C -> 00007900 # 1-89-13 ED4D -> 000078F7 # 1-89-14 ED4E -> 0000791C # 1-89-15 ED4F -> 0000792E # 1-89-16 ED50 -> 00007931 # 1-89-17 ED51 -> 00007934 # 1-89-18 ED52 -> 0000FA4C # 1-89-19 ED53 -> 0000FA4D # 1-89-20 ED54 -> 00007945 # 1-89-21 ED55 -> 00007946 # 1-89-22 ED56 -> 0000FA4E # 1-89-23 ED57 -> 0000FA4F # 1-89-24 ED58 -> 0000FA50 # 1-89-25 ED59 -> 0000795C # 1-89-26 ED5A -> 0000FA51 # 1-89-27 ED5B -> 0000FA19 # 1-89-28 ED5C -> 0000FA1A # 1-89-29 ED5D -> 00007979 # 1-89-30 ED5E -> 0000FA52 # 1-89-31 ED5F -> 0000FA53 # 1-89-32 ED60 -> 0000FA1B # 1-89-33 ED61 -> 00007998 # 1-89-34 ED62 -> 000079B1 # 1-89-35 ED63 -> 000079B8 # 1-89-36 ED64 -> 000079C8 # 1-89-37 ED65 -> 000079CA # 1-89-38 ED66 -> 00025771 # 1-89-39 ED67 -> 000079D4 # 1-89-40 ED68 -> 000079DE # 1-89-41 ED69 -> 000079EB # 1-89-42 ED6A -> 000079ED # 1-89-43 ED6B -> 00007A03 # 1-89-44 ED6C -> 0000FA54 # 1-89-45 ED6D -> 00007A39 # 1-89-46 ED6E -> 00007A5D # 1-89-47 ED6F -> 00007A6D # 1-89-48 ED70 -> 0000FA55 # 1-89-49 ED71 -> 00007A85 # 1-89-50 ED72 -> 00007AA0 # 1-89-51 ED73 -> 000259C4 # 1-89-52 ED74 -> 00007AB3 # 1-89-53 ED75 -> 00007ABB # 1-89-54 ED76 -> 00007ACE # 1-89-55 ED77 -> 00007AEB # 1-89-56 ED78 -> 00007AFD # 1-89-57 ED79 -> 00007B12 # 1-89-58 ED7A -> 00007B2D # 1-89-59 ED7B -> 00007B3B # 1-89-60 ED7C -> 00007B47 # 1-89-61 ED7D -> 00007B4E # 1-89-62 ED7E -> 00007B60 # 1-89-63 ED80 -> 00007B6D # 1-89-64 ED81 -> 00007B6F # 1-89-65 ED82 -> 00007B72 # 1-89-66 ED83 -> 00007B9E # 1-89-67 ED84 -> 0000FA56 # 1-89-68 ED85 -> 00007BD7 # 1-89-69 ED86 -> 00007BD9 # 1-89-70 ED87 -> 00007C01 # 1-89-71 ED88 -> 00007C31 # 1-89-72 ED89 -> 00007C1E # 1-89-73 ED8A -> 00007C20 # 1-89-74 ED8B -> 00007C33 # 1-89-75 ED8C -> 00007C36 # 1-89-76 ED8D -> 00004264 # 1-89-77 ED8E -> 00025DA1 # 1-89-78 ED8F -> 00007C59 # 1-89-79 ED90 -> 00007C6D # 1-89-80 ED91 -> 00007C79 # 1-89-81 ED92 -> 00007C8F # 1-89-82 ED93 -> 00007C94 # 1-89-83 ED94 -> 00007CA0 # 1-89-84 ED95 -> 00007CBC # 1-89-85 ED96 -> 00007CD5 # 1-89-86 ED97 -> 00007CD9 # 1-89-87 ED98 -> 00007CDD # 1-89-88 ED99 -> 00007D07 # 1-89-89 ED9A -> 00007D08 # 1-89-90 ED9B -> 00007D13 # 1-89-91 ED9C -> 00007D1D # 1-89-92 ED9D -> 00007D23 # 1-89-93 ED9E -> 00007D31 # 1-89-94 ED9F -> 00007D41 # 1-90-1 EDA0 -> 00007D48 # 1-90-2 EDA1 -> 00007D53 # 1-90-3 EDA2 -> 00007D5C # 1-90-4 EDA3 -> 00007D7A # 1-90-5 EDA4 -> 00007D83 # 1-90-6 EDA5 -> 00007D8B # 1-90-7 EDA6 -> 00007DA0 # 1-90-8 EDA7 -> 00007DA6 # 1-90-9 EDA8 -> 00007DC2 # 1-90-10 EDA9 -> 00007DCC # 1-90-11 EDAA -> 00007DD6 # 1-90-12 EDAB -> 00007DE3 # 1-90-13 EDAC -> 0000FA57 # 1-90-14 EDAD -> 00007E28 # 1-90-15 EDAE -> 00007E08 # 1-90-16 EDAF -> 00007E11 # 1-90-17 EDB0 -> 00007E15 # 1-90-18 EDB1 -> 0000FA59 # 1-90-19 EDB2 -> 00007E47 # 1-90-20 EDB3 -> 00007E52 # 1-90-21 EDB4 -> 00007E61 # 1-90-22 EDB5 -> 00007E8A # 1-90-23 EDB6 -> 00007E8D # 1-90-24 EDB7 -> 00007F47 # 1-90-25 EDB8 -> 0000FA5A # 1-90-26 EDB9 -> 00007F91 # 1-90-27 EDBA -> 00007F97 # 1-90-28 EDBB -> 00007FBF # 1-90-29 EDBC -> 00007FCE # 1-90-30 EDBD -> 00007FDB # 1-90-31 EDBE -> 00007FDF # 1-90-32 EDBF -> 00007FEC # 1-90-33 EDC0 -> 00007FEE # 1-90-34 EDC1 -> 00007FFA # 1-90-35 EDC2 -> 0000FA5B # 1-90-36 EDC3 -> 00008014 # 1-90-37 EDC4 -> 00008026 # 1-90-38 EDC5 -> 00008035 # 1-90-39 EDC6 -> 00008037 # 1-90-40 EDC7 -> 0000803C # 1-90-41 EDC8 -> 000080CA # 1-90-42 EDC9 -> 000080D7 # 1-90-43 EDCA -> 000080E0 # 1-90-44 EDCB -> 000080F3 # 1-90-45 EDCC -> 00008118 # 1-90-46 EDCD -> 0000814A # 1-90-47 EDCE -> 00008160 # 1-90-48 EDCF -> 00008167 # 1-90-49 EDD0 -> 00008168 # 1-90-50 EDD1 -> 0000816D # 1-90-51 EDD2 -> 000081BB # 1-90-52 EDD3 -> 000081CA # 1-90-53 EDD4 -> 000081CF # 1-90-54 EDD5 -> 000081D7 # 1-90-55 EDD6 -> 0000FA5C # 1-90-56 EDD7 -> 00004453 # 1-90-57 EDD8 -> 0000445B # 1-90-58 EDD9 -> 00008260 # 1-90-59 EDDA -> 00008274 # 1-90-60 EDDB -> 00026AFF # 1-90-61 EDDC -> 0000828E # 1-90-62 EDDD -> 000082A1 # 1-90-63 EDDE -> 000082A3 # 1-90-64 EDDF -> 000082A4 # 1-90-65 EDE0 -> 000082A9 # 1-90-66 EDE1 -> 000082AE # 1-90-67 EDE2 -> 000082B7 # 1-90-68 EDE3 -> 000082BE # 1-90-69 EDE4 -> 000082BF # 1-90-70 EDE5 -> 000082C6 # 1-90-71 EDE6 -> 000082D5 # 1-90-72 EDE7 -> 000082FD # 1-90-73 EDE8 -> 000082FE # 1-90-74 EDE9 -> 00008300 # 1-90-75 EDEA -> 00008301 # 1-90-76 EDEB -> 00008362 # 1-90-77 EDEC -> 00008322 # 1-90-78 EDED -> 0000832D # 1-90-79 EDEE -> 0000833A # 1-90-80 EDEF -> 00008343 # 1-90-81 EDF0 -> 00008347 # 1-90-82 EDF1 -> 00008351 # 1-90-83 EDF2 -> 00008355 # 1-90-84 EDF3 -> 0000837D # 1-90-85 EDF4 -> 00008386 # 1-90-86 EDF5 -> 00008392 # 1-90-87 EDF6 -> 00008398 # 1-90-88 EDF7 -> 000083A7 # 1-90-89 EDF8 -> 000083A9 # 1-90-90 EDF9 -> 000083BF # 1-90-91 EDFA -> 000083C0 # 1-90-92 EDFB -> 000083C7 # 1-90-93 EDFC -> 000083CF # 1-90-94 EE40 -> 000083D1 # 1-91-1 EE41 -> 000083E1 # 1-91-2 EE42 -> 000083EA # 1-91-3 EE43 -> 00008401 # 1-91-4 EE44 -> 00008406 # 1-91-5 EE45 -> 0000840A # 1-91-6 EE46 -> 0000FA5F # 1-91-7 EE47 -> 00008448 # 1-91-8 EE48 -> 0000845F # 1-91-9 EE49 -> 00008470 # 1-91-10 EE4A -> 00008473 # 1-91-11 EE4B -> 00008485 # 1-91-12 EE4C -> 0000849E # 1-91-13 EE4D -> 000084AF # 1-91-14 EE4E -> 000084B4 # 1-91-15 EE4F -> 000084BA # 1-91-16 EE50 -> 000084C0 # 1-91-17 EE51 -> 000084C2 # 1-91-18 EE52 -> 00026E40 # 1-91-19 EE53 -> 00008532 # 1-91-20 EE54 -> 0000851E # 1-91-21 EE55 -> 00008523 # 1-91-22 EE56 -> 0000852F # 1-91-23 EE57 -> 00008559 # 1-91-24 EE58 -> 00008564 # 1-91-25 EE59 -> 0000FA1F # 1-91-26 EE5A -> 000085AD # 1-91-27 EE5B -> 0000857A # 1-91-28 EE5C -> 0000858C # 1-91-29 EE5D -> 0000858F # 1-91-30 EE5E -> 000085A2 # 1-91-31 EE5F -> 000085B0 # 1-91-32 EE60 -> 000085CB # 1-91-33 EE61 -> 000085CE # 1-91-34 EE62 -> 000085ED # 1-91-35 EE63 -> 00008612 # 1-91-36 EE64 -> 000085FF # 1-91-37 EE65 -> 00008604 # 1-91-38 EE66 -> 00008605 # 1-91-39 EE67 -> 00008610 # 1-91-40 EE68 -> 000270F4 # 1-91-41 EE69 -> 00008618 # 1-91-42 EE6A -> 00008629 # 1-91-43 EE6B -> 00008638 # 1-91-44 EE6C -> 00008657 # 1-91-45 EE6D -> 0000865B # 1-91-46 EE6E -> 0000F936 # 1-91-47 EE6F -> 00008662 # 1-91-48 EE70 -> 0000459D # 1-91-49 EE71 -> 0000866C # 1-91-50 EE72 -> 00008675 # 1-91-51 EE73 -> 00008698 # 1-91-52 EE74 -> 000086B8 # 1-91-53 EE75 -> 000086FA # 1-91-54 EE76 -> 000086FC # 1-91-55 EE77 -> 000086FD # 1-91-56 EE78 -> 0000870B # 1-91-57 EE79 -> 00008771 # 1-91-58 EE7A -> 00008787 # 1-91-59 EE7B -> 00008788 # 1-91-60 EE7C -> 000087AC # 1-91-61 EE7D -> 000087AD # 1-91-62 EE7E -> 000087B5 # 1-91-63 EE80 -> 000045EA # 1-91-64 EE81 -> 000087D6 # 1-91-65 EE82 -> 000087EC # 1-91-66 EE83 -> 00008806 # 1-91-67 EE84 -> 0000880A # 1-91-68 EE85 -> 00008810 # 1-91-69 EE86 -> 00008814 # 1-91-70 EE87 -> 0000881F # 1-91-71 EE88 -> 00008898 # 1-91-72 EE89 -> 000088AA # 1-91-73 EE8A -> 000088CA # 1-91-74 EE8B -> 000088CE # 1-91-75 EE8C -> 00027684 # 1-91-76 EE8D -> 000088F5 # 1-91-77 EE8E -> 0000891C # 1-91-78 EE8F -> 0000FA60 # 1-91-79 EE90 -> 00008918 # 1-91-80 EE91 -> 00008919 # 1-91-81 EE92 -> 0000891A # 1-91-82 EE93 -> 00008927 # 1-91-83 EE94 -> 00008930 # 1-91-84 EE95 -> 00008932 # 1-91-85 EE96 -> 00008939 # 1-91-86 EE97 -> 00008940 # 1-91-87 EE98 -> 00008994 # 1-91-88 EE99 -> 0000FA61 # 1-91-89 EE9A -> 000089D4 # 1-91-90 EE9B -> 000089E5 # 1-91-91 EE9C -> 000089F6 # 1-91-92 EE9D -> 00008A12 # 1-91-93 EE9E -> 00008A15 # 1-91-94 EE9F -> 00008A22 # 1-92-1 EEA0 -> 00008A37 # 1-92-2 EEA1 -> 00008A47 # 1-92-3 EEA2 -> 00008A4E # 1-92-4 EEA3 -> 00008A5D # 1-92-5 EEA4 -> 00008A61 # 1-92-6 EEA5 -> 00008A75 # 1-92-7 EEA6 -> 00008A79 # 1-92-8 EEA7 -> 00008AA7 # 1-92-9 EEA8 -> 00008AD0 # 1-92-10 EEA9 -> 00008ADF # 1-92-11 EEAA -> 00008AF4 # 1-92-12 EEAB -> 00008AF6 # 1-92-13 EEAC -> 0000FA22 # 1-92-14 EEAD -> 0000FA62 # 1-92-15 EEAE -> 0000FA63 # 1-92-16 EEAF -> 00008B46 # 1-92-17 EEB0 -> 00008B54 # 1-92-18 EEB1 -> 00008B59 # 1-92-19 EEB2 -> 00008B69 # 1-92-20 EEB3 -> 00008B9D # 1-92-21 EEB4 -> 00008C49 # 1-92-22 EEB5 -> 00008C68 # 1-92-23 EEB6 -> 0000FA64 # 1-92-24 EEB7 -> 00008CE1 # 1-92-25 EEB8 -> 00008CF4 # 1-92-26 EEB9 -> 00008CF8 # 1-92-27 EEBA -> 00008CFE # 1-92-28 EEBB -> 0000FA65 # 1-92-29 EEBC -> 00008D12 # 1-92-30 EEBD -> 00008D1B # 1-92-31 EEBE -> 00008DAF # 1-92-32 EEBF -> 00008DCE # 1-92-33 EEC0 -> 00008DD1 # 1-92-34 EEC1 -> 00008DD7 # 1-92-35 EEC2 -> 00008E20 # 1-92-36 EEC3 -> 00008E23 # 1-92-37 EEC4 -> 00008E3D # 1-92-38 EEC5 -> 00008E70 # 1-92-39 EEC6 -> 00008E7B # 1-92-40 EEC7 -> 00028277 # 1-92-41 EEC8 -> 00008EC0 # 1-92-42 EEC9 -> 00004844 # 1-92-43 EECA -> 00008EFA # 1-92-44 EECB -> 00008F1E # 1-92-45 EECC -> 00008F2D # 1-92-46 EECD -> 00008F36 # 1-92-47 EECE -> 00008F54 # 1-92-48 EECF -> 000283CD # 1-92-49 EED0 -> 00008FA6 # 1-92-50 EED1 -> 00008FB5 # 1-92-51 EED2 -> 00008FE4 # 1-92-52 EED3 -> 00008FE8 # 1-92-53 EED4 -> 00008FEE # 1-92-54 EED5 -> 00009008 # 1-92-55 EED6 -> 0000902D # 1-92-56 EED7 -> 0000FA67 # 1-92-57 EED8 -> 00009088 # 1-92-58 EED9 -> 00009095 # 1-92-59 EEDA -> 00009097 # 1-92-60 EEDB -> 00009099 # 1-92-61 EEDC -> 0000909B # 1-92-62 EEDD -> 000090A2 # 1-92-63 EEDE -> 000090B3 # 1-92-64 EEDF -> 000090BE # 1-92-65 EEE0 -> 000090C4 # 1-92-66 EEE1 -> 000090C5 # 1-92-67 EEE2 -> 000090C7 # 1-92-68 EEE3 -> 000090D7 # 1-92-69 EEE4 -> 000090DD # 1-92-70 EEE5 -> 000090DE # 1-92-71 EEE6 -> 000090EF # 1-92-72 EEE7 -> 000090F4 # 1-92-73 EEE8 -> 0000FA26 # 1-92-74 EEE9 -> 00009114 # 1-92-75 EEEA -> 00009115 # 1-92-76 EEEB -> 00009116 # 1-92-77 EEEC -> 00009122 # 1-92-78 EEED -> 00009123 # 1-92-79 EEEE -> 00009127 # 1-92-80 EEEF -> 0000912F # 1-92-81 EEF0 -> 00009131 # 1-92-82 EEF1 -> 00009134 # 1-92-83 EEF2 -> 0000913D # 1-92-84 EEF3 -> 00009148 # 1-92-85 EEF4 -> 0000915B # 1-92-86 EEF5 -> 00009183 # 1-92-87 EEF6 -> 0000919E # 1-92-88 EEF7 -> 000091AC # 1-92-89 EEF8 -> 000091B1 # 1-92-90 EEF9 -> 000091BC # 1-92-91 EEFA -> 000091D7 # 1-92-92 EEFB -> 000091FB # 1-92-93 EEFC -> 000091E4 # 1-92-94 EF40 -> 000091E5 # 1-93-1 EF41 -> 000091ED # 1-93-2 EF42 -> 000091F1 # 1-93-3 EF43 -> 00009207 # 1-93-4 EF44 -> 00009210 # 1-93-5 EF45 -> 00009238 # 1-93-6 EF46 -> 00009239 # 1-93-7 EF47 -> 0000923A # 1-93-8 EF48 -> 0000923C # 1-93-9 EF49 -> 00009240 # 1-93-10 EF4A -> 00009243 # 1-93-11 EF4B -> 0000924F # 1-93-12 EF4C -> 00009278 # 1-93-13 EF4D -> 00009288 # 1-93-14 EF4E -> 000092C2 # 1-93-15 EF4F -> 000092CB # 1-93-16 EF50 -> 000092CC # 1-93-17 EF51 -> 000092D3 # 1-93-18 EF52 -> 000092E0 # 1-93-19 EF53 -> 000092FF # 1-93-20 EF54 -> 00009304 # 1-93-21 EF55 -> 0000931F # 1-93-22 EF56 -> 00009321 # 1-93-23 EF57 -> 00009325 # 1-93-24 EF58 -> 00009348 # 1-93-25 EF59 -> 00009349 # 1-93-26 EF5A -> 0000934A # 1-93-27 EF5B -> 00009364 # 1-93-28 EF5C -> 00009365 # 1-93-29 EF5D -> 0000936A # 1-93-30 EF5E -> 00009370 # 1-93-31 EF5F -> 0000939B # 1-93-32 EF60 -> 000093A3 # 1-93-33 EF61 -> 000093BA # 1-93-34 EF62 -> 000093C6 # 1-93-35 EF63 -> 000093DE # 1-93-36 EF64 -> 000093DF # 1-93-37 EF65 -> 00009404 # 1-93-38 EF66 -> 000093FD # 1-93-39 EF67 -> 00009433 # 1-93-40 EF68 -> 0000944A # 1-93-41 EF69 -> 00009463 # 1-93-42 EF6A -> 0000946B # 1-93-43 EF6B -> 00009471 # 1-93-44 EF6C -> 00009472 # 1-93-45 EF6D -> 0000958E # 1-93-46 EF6E -> 0000959F # 1-93-47 EF6F -> 000095A6 # 1-93-48 EF70 -> 000095A9 # 1-93-49 EF71 -> 000095AC # 1-93-50 EF72 -> 000095B6 # 1-93-51 EF73 -> 000095BD # 1-93-52 EF74 -> 000095CB # 1-93-53 EF75 -> 000095D0 # 1-93-54 EF76 -> 000095D3 # 1-93-55 EF77 -> 000049B0 # 1-93-56 EF78 -> 000095DA # 1-93-57 EF79 -> 000095DE # 1-93-58 EF7A -> 00009658 # 1-93-59 EF7B -> 00009684 # 1-93-60 EF7C -> 0000F9DC # 1-93-61 EF7D -> 0000969D # 1-93-62 EF7E -> 000096A4 # 1-93-63 EF80 -> 000096A5 # 1-93-64 EF81 -> 000096D2 # 1-93-65 EF82 -> 000096DE # 1-93-66 EF83 -> 0000FA68 # 1-93-67 EF84 -> 000096E9 # 1-93-68 EF85 -> 000096EF # 1-93-69 EF86 -> 00009733 # 1-93-70 EF87 -> 0000973B # 1-93-71 EF88 -> 0000974D # 1-93-72 EF89 -> 0000974E # 1-93-73 EF8A -> 0000974F # 1-93-74 EF8B -> 0000975A # 1-93-75 EF8C -> 0000976E # 1-93-76 EF8D -> 00009773 # 1-93-77 EF8E -> 00009795 # 1-93-78 EF8F -> 000097AE # 1-93-79 EF90 -> 000097BA # 1-93-80 EF91 -> 000097C1 # 1-93-81 EF92 -> 000097C9 # 1-93-82 EF93 -> 000097DE # 1-93-83 EF94 -> 000097DB # 1-93-84 EF95 -> 000097F4 # 1-93-85 EF96 -> 0000FA69 # 1-93-86 EF97 -> 0000980A # 1-93-87 EF98 -> 0000981E # 1-93-88 EF99 -> 0000982B # 1-93-89 EF9A -> 00009830 # 1-93-90 EF9B -> 0000FA6A # 1-93-91 EF9C -> 00009852 # 1-93-92 EF9D -> 00009853 # 1-93-93 EF9E -> 00009856 # 1-93-94 EF9F -> 00009857 # 1-94-1 EFA0 -> 00009859 # 1-94-2 EFA1 -> 0000985A # 1-94-3 EFA2 -> 0000F9D0 # 1-94-4 EFA3 -> 00009865 # 1-94-5 EFA4 -> 0000986C # 1-94-6 EFA5 -> 000098BA # 1-94-7 EFA6 -> 000098C8 # 1-94-8 EFA7 -> 000098E7 # 1-94-9 EFA8 -> 00009958 # 1-94-10 EFA9 -> 0000999E # 1-94-11 EFAA -> 00009A02 # 1-94-12 EFAB -> 00009A03 # 1-94-13 EFAC -> 00009A24 # 1-94-14 EFAD -> 00009A2D # 1-94-15 EFAE -> 00009A2E # 1-94-16 EFAF -> 00009A38 # 1-94-17 EFB0 -> 00009A4A # 1-94-18 EFB1 -> 00009A4E # 1-94-19 EFB2 -> 00009A52 # 1-94-20 EFB3 -> 00009AB6 # 1-94-21 EFB4 -> 00009AC1 # 1-94-22 EFB5 -> 00009AC3 # 1-94-23 EFB6 -> 00009ACE # 1-94-24 EFB7 -> 00009AD6 # 1-94-25 EFB8 -> 00009AF9 # 1-94-26 EFB9 -> 00009B02 # 1-94-27 EFBA -> 00009B08 # 1-94-28 EFBB -> 00009B20 # 1-94-29 EFBC -> 00004C17 # 1-94-30 EFBD -> 00009B2D # 1-94-31 EFBE -> 00009B5E # 1-94-32 EFBF -> 00009B79 # 1-94-33 EFC0 -> 00009B66 # 1-94-34 EFC1 -> 00009B72 # 1-94-35 EFC2 -> 00009B75 # 1-94-36 EFC3 -> 00009B84 # 1-94-37 EFC4 -> 00009B8A # 1-94-38 EFC5 -> 00009B8F # 1-94-39 EFC6 -> 00009B9E # 1-94-40 EFC7 -> 00009BA7 # 1-94-41 EFC8 -> 00009BC1 # 1-94-42 EFC9 -> 00009BCE # 1-94-43 EFCA -> 00009BE5 # 1-94-44 EFCB -> 00009BF8 # 1-94-45 EFCC -> 00009BFD # 1-94-46 EFCD -> 00009C00 # 1-94-47 EFCE -> 00009C23 # 1-94-48 EFCF -> 00009C41 # 1-94-49 EFD0 -> 00009C4F # 1-94-50 EFD1 -> 00009C50 # 1-94-51 EFD2 -> 00009C53 # 1-94-52 EFD3 -> 00009C63 # 1-94-53 EFD4 -> 00009C65 # 1-94-54 EFD5 -> 00009C77 # 1-94-55 EFD6 -> 00009D1D # 1-94-56 EFD7 -> 00009D1E # 1-94-57 EFD8 -> 00009D43 # 1-94-58 EFD9 -> 00009D47 # 1-94-59 EFDA -> 00009D52 # 1-94-60 EFDB -> 00009D63 # 1-94-61 EFDC -> 00009D70 # 1-94-62 EFDD -> 00009D7C # 1-94-63 EFDE -> 00009D8A # 1-94-64 EFDF -> 00009D96 # 1-94-65 EFE0 -> 00009DC0 # 1-94-66 EFE1 -> 00009DAC # 1-94-67 EFE2 -> 00009DBC # 1-94-68 EFE3 -> 00009DD7 # 1-94-69 EFE4 -> 0002A190 # 1-94-70 EFE5 -> 00009DE7 # 1-94-71 EFE6 -> 00009E07 # 1-94-72 EFE7 -> 00009E15 # 1-94-73 EFE8 -> 00009E7C # 1-94-74 EFE9 -> 00009E9E # 1-94-75 EFEA -> 00009EA4 # 1-94-76 EFEB -> 00009EAC # 1-94-77 EFEC -> 00009EAF # 1-94-78 EFED -> 00009EB4 # 1-94-79 EFEE -> 00009EB5 # 1-94-80 EFEF -> 00009EC3 # 1-94-81 EFF0 -> 00009ED1 # 1-94-82 EFF1 -> 00009F10 # 1-94-83 EFF2 -> 00009F39 # 1-94-84 EFF3 -> 00009F57 # 1-94-85 EFF4 -> 00009F90 # 1-94-86 EFF5 -> 00009F94 # 1-94-87 EFF6 -> 00009F97 # 1-94-88 EFF7 -> 00009FA2 # 1-94-89 F040 -> 00020089 # 2-1-1 F041 -> 00004E02 # 2-1-2 F042 -> 00004E0F # 2-1-3 F043 -> 00004E12 # 2-1-4 F044 -> 00004E29 # 2-1-5 F045 -> 00004E2B # 2-1-6 F046 -> 00004E2E # 2-1-7 F047 -> 00004E40 # 2-1-8 F048 -> 00004E47 # 2-1-9 F049 -> 00004E48 # 2-1-10 F04A -> 000200A2 # 2-1-11 F04B -> 00004E51 # 2-1-12 F04C -> 00003406 # 2-1-13 F04D -> 000200A4 # 2-1-14 F04E -> 00004E5A # 2-1-15 F04F -> 00004E69 # 2-1-16 F050 -> 00004E9D # 2-1-17 F051 -> 0000342C # 2-1-18 F052 -> 0000342E # 2-1-19 F053 -> 00004EB9 # 2-1-20 F054 -> 00004EBB # 2-1-21 F055 -> 000201A2 # 2-1-22 F056 -> 00004EBC # 2-1-23 F057 -> 00004EC3 # 2-1-24 F058 -> 00004EC8 # 2-1-25 F059 -> 00004ED0 # 2-1-26 F05A -> 00004EEB # 2-1-27 F05B -> 00004EDA # 2-1-28 F05C -> 00004EF1 # 2-1-29 F05D -> 00004EF5 # 2-1-30 F05E -> 00004F00 # 2-1-31 F05F -> 00004F16 # 2-1-32 F060 -> 00004F64 # 2-1-33 F061 -> 00004F37 # 2-1-34 F062 -> 00004F3E # 2-1-35 F063 -> 00004F54 # 2-1-36 F064 -> 00004F58 # 2-1-37 F065 -> 00020213 # 2-1-38 F066 -> 00004F77 # 2-1-39 F067 -> 00004F78 # 2-1-40 F068 -> 00004F7A # 2-1-41 F069 -> 00004F7D # 2-1-42 F06A -> 00004F82 # 2-1-43 F06B -> 00004F85 # 2-1-44 F06C -> 00004F92 # 2-1-45 F06D -> 00004F9A # 2-1-46 F06E -> 00004FE6 # 2-1-47 F06F -> 00004FB2 # 2-1-48 F070 -> 00004FBE # 2-1-49 F071 -> 00004FC5 # 2-1-50 F072 -> 00004FCB # 2-1-51 F073 -> 00004FCF # 2-1-52 F074 -> 00004FD2 # 2-1-53 F075 -> 0000346A # 2-1-54 F076 -> 00004FF2 # 2-1-55 F077 -> 00005000 # 2-1-56 F078 -> 00005010 # 2-1-57 F079 -> 00005013 # 2-1-58 F07A -> 0000501C # 2-1-59 F07B -> 0000501E # 2-1-60 F07C -> 00005022 # 2-1-61 F07D -> 00003468 # 2-1-62 F07E -> 00005042 # 2-1-63 F080 -> 00005046 # 2-1-64 F081 -> 0000504E # 2-1-65 F082 -> 00005053 # 2-1-66 F083 -> 00005057 # 2-1-67 F084 -> 00005063 # 2-1-68 F085 -> 00005066 # 2-1-69 F086 -> 0000506A # 2-1-70 F087 -> 00005070 # 2-1-71 F088 -> 000050A3 # 2-1-72 F089 -> 00005088 # 2-1-73 F08A -> 00005092 # 2-1-74 F08B -> 00005093 # 2-1-75 F08C -> 00005095 # 2-1-76 F08D -> 00005096 # 2-1-77 F08E -> 0000509C # 2-1-78 F08F -> 000050AA # 2-1-79 F090 -> 0002032B # 2-1-80 F091 -> 000050B1 # 2-1-81 F092 -> 000050BA # 2-1-82 F093 -> 000050BB # 2-1-83 F094 -> 000050C4 # 2-1-84 F095 -> 000050C7 # 2-1-85 F096 -> 000050F3 # 2-1-86 F097 -> 00020381 # 2-1-87 F098 -> 000050CE # 2-1-88 F099 -> 00020371 # 2-1-89 F09A -> 000050D4 # 2-1-90 F09B -> 000050D9 # 2-1-91 F09C -> 000050E1 # 2-1-92 F09D -> 000050E9 # 2-1-93 F09E -> 00003492 # 2-1-94 F140 -> 00005108 # 2-3-1 F141 -> 000203F9 # 2-3-2 F142 -> 00005117 # 2-3-3 F143 -> 0000511B # 2-3-4 F144 -> 0002044A # 2-3-5 F145 -> 00005160 # 2-3-6 F146 -> 00020509 # 2-3-7 F147 -> 00005173 # 2-3-8 F148 -> 00005183 # 2-3-9 F149 -> 0000518B # 2-3-10 F14A -> 000034BC # 2-3-11 F14B -> 00005198 # 2-3-12 F14C -> 000051A3 # 2-3-13 F14D -> 000051AD # 2-3-14 F14E -> 000034C7 # 2-3-15 F14F -> 000051BC # 2-3-16 F150 -> 000205D6 # 2-3-17 F151 -> 00020628 # 2-3-18 F152 -> 000051F3 # 2-3-19 F153 -> 000051F4 # 2-3-20 F154 -> 00005202 # 2-3-21 F155 -> 00005212 # 2-3-22 F156 -> 00005216 # 2-3-23 F157 -> 0002074F # 2-3-24 F158 -> 00005255 # 2-3-25 F159 -> 0000525C # 2-3-26 F15A -> 0000526C # 2-3-27 F15B -> 00005277 # 2-3-28 F15C -> 00005284 # 2-3-29 F15D -> 00005282 # 2-3-30 F15E -> 00020807 # 2-3-31 F15F -> 00005298 # 2-3-32 F160 -> 0002083A # 2-3-33 F161 -> 000052A4 # 2-3-34 F162 -> 000052A6 # 2-3-35 F163 -> 000052AF # 2-3-36 F164 -> 000052BA # 2-3-37 F165 -> 000052BB # 2-3-38 F166 -> 000052CA # 2-3-39 F167 -> 0000351F # 2-3-40 F168 -> 000052D1 # 2-3-41 F169 -> 000208B9 # 2-3-42 F16A -> 000052F7 # 2-3-43 F16B -> 0000530A # 2-3-44 F16C -> 0000530B # 2-3-45 F16D -> 00005324 # 2-3-46 F16E -> 00005335 # 2-3-47 F16F -> 0000533E # 2-3-48 F170 -> 00005342 # 2-3-49 F171 -> 0002097C # 2-3-50 F172 -> 0002099D # 2-3-51 F173 -> 00005367 # 2-3-52 F174 -> 0000536C # 2-3-53 F175 -> 0000537A # 2-3-54 F176 -> 000053A4 # 2-3-55 F177 -> 000053B4 # 2-3-56 F178 -> 00020AD3 # 2-3-57 F179 -> 000053B7 # 2-3-58 F17A -> 000053C0 # 2-3-59 F17B -> 00020B1D # 2-3-60 F17C -> 0000355D # 2-3-61 F17D -> 0000355E # 2-3-62 F17E -> 000053D5 # 2-3-63 F180 -> 000053DA # 2-3-64 F181 -> 00003563 # 2-3-65 F182 -> 000053F4 # 2-3-66 F183 -> 000053F5 # 2-3-67 F184 -> 00005455 # 2-3-68 F185 -> 00005424 # 2-3-69 F186 -> 00005428 # 2-3-70 F187 -> 0000356E # 2-3-71 F188 -> 00005443 # 2-3-72 F189 -> 00005462 # 2-3-73 F18A -> 00005466 # 2-3-74 F18B -> 0000546C # 2-3-75 F18C -> 0000548A # 2-3-76 F18D -> 0000548D # 2-3-77 F18E -> 00005495 # 2-3-78 F18F -> 000054A0 # 2-3-79 F190 -> 000054A6 # 2-3-80 F191 -> 000054AD # 2-3-81 F192 -> 000054AE # 2-3-82 F193 -> 000054B7 # 2-3-83 F194 -> 000054BA # 2-3-84 F195 -> 000054BF # 2-3-85 F196 -> 000054C3 # 2-3-86 F197 -> 00020D45 # 2-3-87 F198 -> 000054EC # 2-3-88 F199 -> 000054EF # 2-3-89 F19A -> 000054F1 # 2-3-90 F19B -> 000054F3 # 2-3-91 F19C -> 00005500 # 2-3-92 F19D -> 00005501 # 2-3-93 F19E -> 00005509 # 2-3-94 F19F -> 0000553C # 2-4-1 F1A0 -> 00005541 # 2-4-2 F1A1 -> 000035A6 # 2-4-3 F1A2 -> 00005547 # 2-4-4 F1A3 -> 0000554A # 2-4-5 F1A4 -> 000035A8 # 2-4-6 F1A5 -> 00005560 # 2-4-7 F1A6 -> 00005561 # 2-4-8 F1A7 -> 00005564 # 2-4-9 F1A8 -> 00020DE1 # 2-4-10 F1A9 -> 0000557D # 2-4-11 F1AA -> 00005582 # 2-4-12 F1AB -> 00005588 # 2-4-13 F1AC -> 00005591 # 2-4-14 F1AD -> 000035C5 # 2-4-15 F1AE -> 000055D2 # 2-4-16 F1AF -> 00020E95 # 2-4-17 F1B0 -> 00020E6D # 2-4-18 F1B1 -> 000055BF # 2-4-19 F1B2 -> 000055C9 # 2-4-20 F1B3 -> 000055CC # 2-4-21 F1B4 -> 000055D1 # 2-4-22 F1B5 -> 000055DD # 2-4-23 F1B6 -> 000035DA # 2-4-24 F1B7 -> 000055E2 # 2-4-25 F1B8 -> 00020E64 # 2-4-26 F1B9 -> 000055E9 # 2-4-27 F1BA -> 00005628 # 2-4-28 F1BB -> 00020F5F # 2-4-29 F1BC -> 00005607 # 2-4-30 F1BD -> 00005610 # 2-4-31 F1BE -> 00005630 # 2-4-32 F1BF -> 00005637 # 2-4-33 F1C0 -> 000035F4 # 2-4-34 F1C1 -> 0000563D # 2-4-35 F1C2 -> 0000563F # 2-4-36 F1C3 -> 00005640 # 2-4-37 F1C4 -> 00005647 # 2-4-38 F1C5 -> 0000565E # 2-4-39 F1C6 -> 00005660 # 2-4-40 F1C7 -> 0000566D # 2-4-41 F1C8 -> 00003605 # 2-4-42 F1C9 -> 00005688 # 2-4-43 F1CA -> 0000568C # 2-4-44 F1CB -> 00005695 # 2-4-45 F1CC -> 0000569A # 2-4-46 F1CD -> 0000569D # 2-4-47 F1CE -> 000056A8 # 2-4-48 F1CF -> 000056AD # 2-4-49 F1D0 -> 000056B2 # 2-4-50 F1D1 -> 000056C5 # 2-4-51 F1D2 -> 000056CD # 2-4-52 F1D3 -> 000056DF # 2-4-53 F1D4 -> 000056E8 # 2-4-54 F1D5 -> 000056F6 # 2-4-55 F1D6 -> 000056F7 # 2-4-56 F1D7 -> 00021201 # 2-4-57 F1D8 -> 00005715 # 2-4-58 F1D9 -> 00005723 # 2-4-59 F1DA -> 00021255 # 2-4-60 F1DB -> 00005729 # 2-4-61 F1DC -> 0002127B # 2-4-62 F1DD -> 00005745 # 2-4-63 F1DE -> 00005746 # 2-4-64 F1DF -> 0000574C # 2-4-65 F1E0 -> 0000574D # 2-4-66 F1E1 -> 00021274 # 2-4-67 F1E2 -> 00005768 # 2-4-68 F1E3 -> 0000576F # 2-4-69 F1E4 -> 00005773 # 2-4-70 F1E5 -> 00005774 # 2-4-71 F1E6 -> 00005775 # 2-4-72 F1E7 -> 0000577B # 2-4-73 F1E8 -> 000212E4 # 2-4-74 F1E9 -> 000212D7 # 2-4-75 F1EA -> 000057AC # 2-4-76 F1EB -> 0000579A # 2-4-77 F1EC -> 0000579D # 2-4-78 F1ED -> 0000579E # 2-4-79 F1EE -> 000057A8 # 2-4-80 F1EF -> 000057D7 # 2-4-81 F1F0 -> 000212FD # 2-4-82 F1F1 -> 000057CC # 2-4-83 F1F2 -> 00021336 # 2-4-84 F1F3 -> 00021344 # 2-4-85 F1F4 -> 000057DE # 2-4-86 F1F5 -> 000057E6 # 2-4-87 F1F6 -> 000057F0 # 2-4-88 F1F7 -> 0000364A # 2-4-89 F1F8 -> 000057F8 # 2-4-90 F1F9 -> 000057FB # 2-4-91 F1FA -> 000057FD # 2-4-92 F1FB -> 00005804 # 2-4-93 F1FC -> 0000581E # 2-4-94 F240 -> 00005820 # 2-5-1 F241 -> 00005827 # 2-5-2 F242 -> 00005832 # 2-5-3 F243 -> 00005839 # 2-5-4 F244 -> 000213C4 # 2-5-5 F245 -> 00005849 # 2-5-6 F246 -> 0000584C # 2-5-7 F247 -> 00005867 # 2-5-8 F248 -> 0000588A # 2-5-9 F249 -> 0000588B # 2-5-10 F24A -> 0000588D # 2-5-11 F24B -> 0000588F # 2-5-12 F24C -> 00005890 # 2-5-13 F24D -> 00005894 # 2-5-14 F24E -> 0000589D # 2-5-15 F24F -> 000058AA # 2-5-16 F250 -> 000058B1 # 2-5-17 F251 -> 0002146D # 2-5-18 F252 -> 000058C3 # 2-5-19 F253 -> 000058CD # 2-5-20 F254 -> 000058E2 # 2-5-21 F255 -> 000058F3 # 2-5-22 F256 -> 000058F4 # 2-5-23 F257 -> 00005905 # 2-5-24 F258 -> 00005906 # 2-5-25 F259 -> 0000590B # 2-5-26 F25A -> 0000590D # 2-5-27 F25B -> 00005914 # 2-5-28 F25C -> 00005924 # 2-5-29 F25D -> 000215D7 # 2-5-30 F25E -> 00003691 # 2-5-31 F25F -> 0000593D # 2-5-32 F260 -> 00003699 # 2-5-33 F261 -> 00005946 # 2-5-34 F262 -> 00003696 # 2-5-35 F263 -> 00026C29 # 2-5-36 F264 -> 0000595B # 2-5-37 F265 -> 0000595F # 2-5-38 F266 -> 00021647 # 2-5-39 F267 -> 00005975 # 2-5-40 F268 -> 00005976 # 2-5-41 F269 -> 0000597C # 2-5-42 F26A -> 0000599F # 2-5-43 F26B -> 000059AE # 2-5-44 F26C -> 000059BC # 2-5-45 F26D -> 000059C8 # 2-5-46 F26E -> 000059CD # 2-5-47 F26F -> 000059DE # 2-5-48 F270 -> 000059E3 # 2-5-49 F271 -> 000059E4 # 2-5-50 F272 -> 000059E7 # 2-5-51 F273 -> 000059EE # 2-5-52 F274 -> 00021706 # 2-5-53 F275 -> 00021742 # 2-5-54 F276 -> 000036CF # 2-5-55 F277 -> 00005A0C # 2-5-56 F278 -> 00005A0D # 2-5-57 F279 -> 00005A17 # 2-5-58 F27A -> 00005A27 # 2-5-59 F27B -> 00005A2D # 2-5-60 F27C -> 00005A55 # 2-5-61 F27D -> 00005A65 # 2-5-62 F27E -> 00005A7A # 2-5-63 F280 -> 00005A8B # 2-5-64 F281 -> 00005A9C # 2-5-65 F282 -> 00005A9F # 2-5-66 F283 -> 00005AA0 # 2-5-67 F284 -> 00005AA2 # 2-5-68 F285 -> 00005AB1 # 2-5-69 F286 -> 00005AB3 # 2-5-70 F287 -> 00005AB5 # 2-5-71 F288 -> 00005ABA # 2-5-72 F289 -> 00005ABF # 2-5-73 F28A -> 00005ADA # 2-5-74 F28B -> 00005ADC # 2-5-75 F28C -> 00005AE0 # 2-5-76 F28D -> 00005AE5 # 2-5-77 F28E -> 00005AF0 # 2-5-78 F28F -> 00005AEE # 2-5-79 F290 -> 00005AF5 # 2-5-80 F291 -> 00005B00 # 2-5-81 F292 -> 00005B08 # 2-5-82 F293 -> 00005B17 # 2-5-83 F294 -> 00005B34 # 2-5-84 F295 -> 00005B2D # 2-5-85 F296 -> 00005B4C # 2-5-86 F297 -> 00005B52 # 2-5-87 F298 -> 00005B68 # 2-5-88 F299 -> 00005B6F # 2-5-89 F29A -> 00005B7C # 2-5-90 F29B -> 00005B7F # 2-5-91 F29C -> 00005B81 # 2-5-92 F29D -> 00005B84 # 2-5-93 F29E -> 000219C3 # 2-5-94 F09F -> 00005B96 # 2-8-1 F0A0 -> 00005BAC # 2-8-2 F0A1 -> 00003761 # 2-8-3 F0A2 -> 00005BC0 # 2-8-4 F0A3 -> 00003762 # 2-8-5 F0A4 -> 00005BCE # 2-8-6 F0A5 -> 00005BD6 # 2-8-7 F0A6 -> 0000376C # 2-8-8 F0A7 -> 0000376B # 2-8-9 F0A8 -> 00005BF1 # 2-8-10 F0A9 -> 00005BFD # 2-8-11 F0AA -> 00003775 # 2-8-12 F0AB -> 00005C03 # 2-8-13 F0AC -> 00005C29 # 2-8-14 F0AD -> 00005C30 # 2-8-15 F0AE -> 00021C56 # 2-8-16 F0AF -> 00005C5F # 2-8-17 F0B0 -> 00005C63 # 2-8-18 F0B1 -> 00005C67 # 2-8-19 F0B2 -> 00005C68 # 2-8-20 F0B3 -> 00005C69 # 2-8-21 F0B4 -> 00005C70 # 2-8-22 F0B5 -> 00021D2D # 2-8-23 F0B6 -> 00021D45 # 2-8-24 F0B7 -> 00005C7C # 2-8-25 F0B8 -> 00021D78 # 2-8-26 F0B9 -> 00021D62 # 2-8-27 F0BA -> 00005C88 # 2-8-28 F0BB -> 00005C8A # 2-8-29 F0BC -> 000037C1 # 2-8-30 F0BD -> 00021DA1 # 2-8-31 F0BE -> 00021D9C # 2-8-32 F0BF -> 00005CA0 # 2-8-33 F0C0 -> 00005CA2 # 2-8-34 F0C1 -> 00005CA6 # 2-8-35 F0C2 -> 00005CA7 # 2-8-36 F0C3 -> 00021D92 # 2-8-37 F0C4 -> 00005CAD # 2-8-38 F0C5 -> 00005CB5 # 2-8-39 F0C6 -> 00021DB7 # 2-8-40 F0C7 -> 00005CC9 # 2-8-41 F0C8 -> 00021DE0 # 2-8-42 F0C9 -> 00021E33 # 2-8-43 F0CA -> 00005D06 # 2-8-44 F0CB -> 00005D10 # 2-8-45 F0CC -> 00005D2B # 2-8-46 F0CD -> 00005D1D # 2-8-47 F0CE -> 00005D20 # 2-8-48 F0CF -> 00005D24 # 2-8-49 F0D0 -> 00005D26 # 2-8-50 F0D1 -> 00005D31 # 2-8-51 F0D2 -> 00005D39 # 2-8-52 F0D3 -> 00005D42 # 2-8-53 F0D4 -> 000037E8 # 2-8-54 F0D5 -> 00005D61 # 2-8-55 F0D6 -> 00005D6A # 2-8-56 F0D7 -> 000037F4 # 2-8-57 F0D8 -> 00005D70 # 2-8-58 F0D9 -> 00021F1E # 2-8-59 F0DA -> 000037FD # 2-8-60 F0DB -> 00005D88 # 2-8-61 F0DC -> 00003800 # 2-8-62 F0DD -> 00005D92 # 2-8-63 F0DE -> 00005D94 # 2-8-64 F0DF -> 00005D97 # 2-8-65 F0E0 -> 00005D99 # 2-8-66 F0E1 -> 00005DB0 # 2-8-67 F0E2 -> 00005DB2 # 2-8-68 F0E3 -> 00005DB4 # 2-8-69 F0E4 -> 00021F76 # 2-8-70 F0E5 -> 00005DB9 # 2-8-71 F0E6 -> 00005DD1 # 2-8-72 F0E7 -> 00005DD7 # 2-8-73 F0E8 -> 00005DD8 # 2-8-74 F0E9 -> 00005DE0 # 2-8-75 F0EA -> 00021FFA # 2-8-76 F0EB -> 00005DE4 # 2-8-77 F0EC -> 00005DE9 # 2-8-78 F0ED -> 0000382F # 2-8-79 F0EE -> 00005E00 # 2-8-80 F0EF -> 00003836 # 2-8-81 F0F0 -> 00005E12 # 2-8-82 F0F1 -> 00005E15 # 2-8-83 F0F2 -> 00003840 # 2-8-84 F0F3 -> 00005E1F # 2-8-85 F0F4 -> 00005E2E # 2-8-86 F0F5 -> 00005E3E # 2-8-87 F0F6 -> 00005E49 # 2-8-88 F0F7 -> 0000385C # 2-8-89 F0F8 -> 00005E56 # 2-8-90 F0F9 -> 00003861 # 2-8-91 F0FA -> 00005E6B # 2-8-92 F0FB -> 00005E6C # 2-8-93 F0FC -> 00005E6D # 2-8-94 F29F -> 00005E6E # 2-12-1 F2A0 -> 0002217B # 2-12-2 F2A1 -> 00005EA5 # 2-12-3 F2A2 -> 00005EAA # 2-12-4 F2A3 -> 00005EAC # 2-12-5 F2A4 -> 00005EB9 # 2-12-6 F2A5 -> 00005EBF # 2-12-7 F2A6 -> 00005EC6 # 2-12-8 F2A7 -> 00005ED2 # 2-12-9 F2A8 -> 00005ED9 # 2-12-10 F2A9 -> 0002231E # 2-12-11 F2AA -> 00005EFD # 2-12-12 F2AB -> 00005F08 # 2-12-13 F2AC -> 00005F0E # 2-12-14 F2AD -> 00005F1C # 2-12-15 F2AE -> 000223AD # 2-12-16 F2AF -> 00005F1E # 2-12-17 F2B0 -> 00005F47 # 2-12-18 F2B1 -> 00005F63 # 2-12-19 F2B2 -> 00005F72 # 2-12-20 F2B3 -> 00005F7E # 2-12-21 F2B4 -> 00005F8F # 2-12-22 F2B5 -> 00005FA2 # 2-12-23 F2B6 -> 00005FA4 # 2-12-24 F2B7 -> 00005FB8 # 2-12-25 F2B8 -> 00005FC4 # 2-12-26 F2B9 -> 000038FA # 2-12-27 F2BA -> 00005FC7 # 2-12-28 F2BB -> 00005FCB # 2-12-29 F2BC -> 00005FD2 # 2-12-30 F2BD -> 00005FD3 # 2-12-31 F2BE -> 00005FD4 # 2-12-32 F2BF -> 00005FE2 # 2-12-33 F2C0 -> 00005FEE # 2-12-34 F2C1 -> 00005FEF # 2-12-35 F2C2 -> 00005FF3 # 2-12-36 F2C3 -> 00005FFC # 2-12-37 F2C4 -> 00003917 # 2-12-38 F2C5 -> 00006017 # 2-12-39 F2C6 -> 00006022 # 2-12-40 F2C7 -> 00006024 # 2-12-41 F2C8 -> 0000391A # 2-12-42 F2C9 -> 0000604C # 2-12-43 F2CA -> 0000607F # 2-12-44 F2CB -> 0000608A # 2-12-45 F2CC -> 00006095 # 2-12-46 F2CD -> 000060A8 # 2-12-47 F2CE -> 000226F3 # 2-12-48 F2CF -> 000060B0 # 2-12-49 F2D0 -> 000060B1 # 2-12-50 F2D1 -> 000060BE # 2-12-51 F2D2 -> 000060C8 # 2-12-52 F2D3 -> 000060D9 # 2-12-53 F2D4 -> 000060DB # 2-12-54 F2D5 -> 000060EE # 2-12-55 F2D6 -> 000060F2 # 2-12-56 F2D7 -> 000060F5 # 2-12-57 F2D8 -> 00006110 # 2-12-58 F2D9 -> 00006112 # 2-12-59 F2DA -> 00006113 # 2-12-60 F2DB -> 00006119 # 2-12-61 F2DC -> 0000611E # 2-12-62 F2DD -> 0000613A # 2-12-63 F2DE -> 0000396F # 2-12-64 F2DF -> 00006141 # 2-12-65 F2E0 -> 00006146 # 2-12-66 F2E1 -> 00006160 # 2-12-67 F2E2 -> 0000617C # 2-12-68 F2E3 -> 0002285B # 2-12-69 F2E4 -> 00006192 # 2-12-70 F2E5 -> 00006193 # 2-12-71 F2E6 -> 00006197 # 2-12-72 F2E7 -> 00006198 # 2-12-73 F2E8 -> 000061A5 # 2-12-74 F2E9 -> 000061A8 # 2-12-75 F2EA -> 000061AD # 2-12-76 F2EB -> 000228AB # 2-12-77 F2EC -> 000061D5 # 2-12-78 F2ED -> 000061DD # 2-12-79 F2EE -> 000061DF # 2-12-80 F2EF -> 000061F5 # 2-12-81 F2F0 -> 0002298F # 2-12-82 F2F1 -> 00006215 # 2-12-83 F2F2 -> 00006223 # 2-12-84 F2F3 -> 00006229 # 2-12-85 F2F4 -> 00006246 # 2-12-86 F2F5 -> 0000624C # 2-12-87 F2F6 -> 00006251 # 2-12-88 F2F7 -> 00006252 # 2-12-89 F2F8 -> 00006261 # 2-12-90 F2F9 -> 00006264 # 2-12-91 F2FA -> 0000627B # 2-12-92 F2FB -> 0000626D # 2-12-93 F2FC -> 00006273 # 2-12-94 F340 -> 00006299 # 2-13-1 F341 -> 000062A6 # 2-13-2 F342 -> 000062D5 # 2-13-3 F343 -> 00022AB8 # 2-13-4 F344 -> 000062FD # 2-13-5 F345 -> 00006303 # 2-13-6 F346 -> 0000630D # 2-13-7 F347 -> 00006310 # 2-13-8 F348 -> 00022B4F # 2-13-9 F349 -> 00022B50 # 2-13-10 F34A -> 00006332 # 2-13-11 F34B -> 00006335 # 2-13-12 F34C -> 0000633B # 2-13-13 F34D -> 0000633C # 2-13-14 F34E -> 00006341 # 2-13-15 F34F -> 00006344 # 2-13-16 F350 -> 0000634E # 2-13-17 F351 -> 00022B46 # 2-13-18 F352 -> 00006359 # 2-13-19 F353 -> 00022C1D # 2-13-20 F354 -> 00022BA6 # 2-13-21 F355 -> 0000636C # 2-13-22 F356 -> 00006384 # 2-13-23 F357 -> 00006399 # 2-13-24 F358 -> 00022C24 # 2-13-25 F359 -> 00006394 # 2-13-26 F35A -> 000063BD # 2-13-27 F35B -> 000063F7 # 2-13-28 F35C -> 000063D4 # 2-13-29 F35D -> 000063D5 # 2-13-30 F35E -> 000063DC # 2-13-31 F35F -> 000063E0 # 2-13-32 F360 -> 000063EB # 2-13-33 F361 -> 000063EC # 2-13-34 F362 -> 000063F2 # 2-13-35 F363 -> 00006409 # 2-13-36 F364 -> 0000641E # 2-13-37 F365 -> 00006425 # 2-13-38 F366 -> 00006429 # 2-13-39 F367 -> 0000642F # 2-13-40 F368 -> 0000645A # 2-13-41 F369 -> 0000645B # 2-13-42 F36A -> 0000645D # 2-13-43 F36B -> 00006473 # 2-13-44 F36C -> 0000647D # 2-13-45 F36D -> 00006487 # 2-13-46 F36E -> 00006491 # 2-13-47 F36F -> 0000649D # 2-13-48 F370 -> 0000649F # 2-13-49 F371 -> 000064CB # 2-13-50 F372 -> 000064CC # 2-13-51 F373 -> 000064D5 # 2-13-52 F374 -> 000064D7 # 2-13-53 F375 -> 00022DE1 # 2-13-54 F376 -> 000064E4 # 2-13-55 F377 -> 000064E5 # 2-13-56 F378 -> 000064FF # 2-13-57 F379 -> 00006504 # 2-13-58 F37A -> 00003A6E # 2-13-59 F37B -> 0000650F # 2-13-60 F37C -> 00006514 # 2-13-61 F37D -> 00006516 # 2-13-62 F37E -> 00003A73 # 2-13-63 F380 -> 0000651E # 2-13-64 F381 -> 00006532 # 2-13-65 F382 -> 00006544 # 2-13-66 F383 -> 00006554 # 2-13-67 F384 -> 0000656B # 2-13-68 F385 -> 0000657A # 2-13-69 F386 -> 00006581 # 2-13-70 F387 -> 00006584 # 2-13-71 F388 -> 00006585 # 2-13-72 F389 -> 0000658A # 2-13-73 F38A -> 000065B2 # 2-13-74 F38B -> 000065B5 # 2-13-75 F38C -> 000065B8 # 2-13-76 F38D -> 000065BF # 2-13-77 F38E -> 000065C2 # 2-13-78 F38F -> 000065C9 # 2-13-79 F390 -> 000065D4 # 2-13-80 F391 -> 00003AD6 # 2-13-81 F392 -> 000065F2 # 2-13-82 F393 -> 000065F9 # 2-13-83 F394 -> 000065FC # 2-13-84 F395 -> 00006604 # 2-13-85 F396 -> 00006608 # 2-13-86 F397 -> 00006621 # 2-13-87 F398 -> 0000662A # 2-13-88 F399 -> 00006645 # 2-13-89 F39A -> 00006651 # 2-13-90 F39B -> 0000664E # 2-13-91 F39C -> 00003AEA # 2-13-92 F39D -> 000231C3 # 2-13-93 F39E -> 00006657 # 2-13-94 F39F -> 0000665B # 2-14-1 F3A0 -> 00006663 # 2-14-2 F3A1 -> 000231F5 # 2-14-3 F3A2 -> 000231B6 # 2-14-4 F3A3 -> 0000666A # 2-14-5 F3A4 -> 0000666B # 2-14-6 F3A5 -> 0000666C # 2-14-7 F3A6 -> 0000666D # 2-14-8 F3A7 -> 0000667B # 2-14-9 F3A8 -> 00006680 # 2-14-10 F3A9 -> 00006690 # 2-14-11 F3AA -> 00006692 # 2-14-12 F3AB -> 00006699 # 2-14-13 F3AC -> 00003B0E # 2-14-14 F3AD -> 000066AD # 2-14-15 F3AE -> 000066B1 # 2-14-16 F3AF -> 000066B5 # 2-14-17 F3B0 -> 00003B1A # 2-14-18 F3B1 -> 000066BF # 2-14-19 F3B2 -> 00003B1C # 2-14-20 F3B3 -> 000066EC # 2-14-21 F3B4 -> 00003AD7 # 2-14-22 F3B5 -> 00006701 # 2-14-23 F3B6 -> 00006705 # 2-14-24 F3B7 -> 00006712 # 2-14-25 F3B8 -> 00023372 # 2-14-26 F3B9 -> 00006719 # 2-14-27 F3BA -> 000233D3 # 2-14-28 F3BB -> 000233D2 # 2-14-29 F3BC -> 0000674C # 2-14-30 F3BD -> 0000674D # 2-14-31 F3BE -> 00006754 # 2-14-32 F3BF -> 0000675D # 2-14-33 F3C0 -> 000233D0 # 2-14-34 F3C1 -> 000233E4 # 2-14-35 F3C2 -> 000233D5 # 2-14-36 F3C3 -> 00006774 # 2-14-37 F3C4 -> 00006776 # 2-14-38 F3C5 -> 000233DA # 2-14-39 F3C6 -> 00006792 # 2-14-40 F3C7 -> 000233DF # 2-14-41 F3C8 -> 00008363 # 2-14-42 F3C9 -> 00006810 # 2-14-43 F3CA -> 000067B0 # 2-14-44 F3CB -> 000067B2 # 2-14-45 F3CC -> 000067C3 # 2-14-46 F3CD -> 000067C8 # 2-14-47 F3CE -> 000067D2 # 2-14-48 F3CF -> 000067D9 # 2-14-49 F3D0 -> 000067DB # 2-14-50 F3D1 -> 000067F0 # 2-14-51 F3D2 -> 000067F7 # 2-14-52 F3D3 -> 0002344A # 2-14-53 F3D4 -> 00023451 # 2-14-54 F3D5 -> 0002344B # 2-14-55 F3D6 -> 00006818 # 2-14-56 F3D7 -> 0000681F # 2-14-57 F3D8 -> 0000682D # 2-14-58 F3D9 -> 00023465 # 2-14-59 F3DA -> 00006833 # 2-14-60 F3DB -> 0000683B # 2-14-61 F3DC -> 0000683E # 2-14-62 F3DD -> 00006844 # 2-14-63 F3DE -> 00006845 # 2-14-64 F3DF -> 00006849 # 2-14-65 F3E0 -> 0000684C # 2-14-66 F3E1 -> 00006855 # 2-14-67 F3E2 -> 00006857 # 2-14-68 F3E3 -> 00003B77 # 2-14-69 F3E4 -> 0000686B # 2-14-70 F3E5 -> 0000686E # 2-14-71 F3E6 -> 0000687A # 2-14-72 F3E7 -> 0000687C # 2-14-73 F3E8 -> 00006882 # 2-14-74 F3E9 -> 00006890 # 2-14-75 F3EA -> 00006896 # 2-14-76 F3EB -> 00003B6D # 2-14-77 F3EC -> 00006898 # 2-14-78 F3ED -> 00006899 # 2-14-79 F3EE -> 0000689A # 2-14-80 F3EF -> 0000689C # 2-14-81 F3F0 -> 000068AA # 2-14-82 F3F1 -> 000068AB # 2-14-83 F3F2 -> 000068B4 # 2-14-84 F3F3 -> 000068BB # 2-14-85 F3F4 -> 000068FB # 2-14-86 F3F5 -> 000234E4 # 2-14-87 F3F6 -> 0002355A # 2-14-88 F3F7 -> 0000FA13 # 2-14-89 F3F8 -> 000068C3 # 2-14-90 F3F9 -> 000068C5 # 2-14-91 F3FA -> 000068CC # 2-14-92 F3FB -> 000068CF # 2-14-93 F3FC -> 000068D6 # 2-14-94 F440 -> 000068D9 # 2-15-1 F441 -> 000068E4 # 2-15-2 F442 -> 000068E5 # 2-15-3 F443 -> 000068EC # 2-15-4 F444 -> 000068F7 # 2-15-5 F445 -> 00006903 # 2-15-6 F446 -> 00006907 # 2-15-7 F447 -> 00003B87 # 2-15-8 F448 -> 00003B88 # 2-15-9 F449 -> 00023594 # 2-15-10 F44A -> 0000693B # 2-15-11 F44B -> 00003B8D # 2-15-12 F44C -> 00006946 # 2-15-13 F44D -> 00006969 # 2-15-14 F44E -> 0000696C # 2-15-15 F44F -> 00006972 # 2-15-16 F450 -> 0000697A # 2-15-17 F451 -> 0000697F # 2-15-18 F452 -> 00006992 # 2-15-19 F453 -> 00003BA4 # 2-15-20 F454 -> 00006996 # 2-15-21 F455 -> 00006998 # 2-15-22 F456 -> 000069A6 # 2-15-23 F457 -> 000069B0 # 2-15-24 F458 -> 000069B7 # 2-15-25 F459 -> 000069BA # 2-15-26 F45A -> 000069BC # 2-15-27 F45B -> 000069C0 # 2-15-28 F45C -> 000069D1 # 2-15-29 F45D -> 000069D6 # 2-15-30 F45E -> 00023639 # 2-15-31 F45F -> 00023647 # 2-15-32 F460 -> 00006A30 # 2-15-33 F461 -> 00023638 # 2-15-34 F462 -> 0002363A # 2-15-35 F463 -> 000069E3 # 2-15-36 F464 -> 000069EE # 2-15-37 F465 -> 000069EF # 2-15-38 F466 -> 000069F3 # 2-15-39 F467 -> 00003BCD # 2-15-40 F468 -> 000069F4 # 2-15-41 F469 -> 000069FE # 2-15-42 F46A -> 00006A11 # 2-15-43 F46B -> 00006A1A # 2-15-44 F46C -> 00006A1D # 2-15-45 F46D -> 0002371C # 2-15-46 F46E -> 00006A32 # 2-15-47 F46F -> 00006A33 # 2-15-48 F470 -> 00006A34 # 2-15-49 F471 -> 00006A3F # 2-15-50 F472 -> 00006A46 # 2-15-51 F473 -> 00006A49 # 2-15-52 F474 -> 00006A7A # 2-15-53 F475 -> 00006A4E # 2-15-54 F476 -> 00006A52 # 2-15-55 F477 -> 00006A64 # 2-15-56 F478 -> 0002370C # 2-15-57 F479 -> 00006A7E # 2-15-58 F47A -> 00006A83 # 2-15-59 F47B -> 00006A8B # 2-15-60 F47C -> 00003BF0 # 2-15-61 F47D -> 00006A91 # 2-15-62 F47E -> 00006A9F # 2-15-63 F480 -> 00006AA1 # 2-15-64 F481 -> 00023764 # 2-15-65 F482 -> 00006AAB # 2-15-66 F483 -> 00006ABD # 2-15-67 F484 -> 00006AC6 # 2-15-68 F485 -> 00006AD4 # 2-15-69 F486 -> 00006AD0 # 2-15-70 F487 -> 00006ADC # 2-15-71 F488 -> 00006ADD # 2-15-72 F489 -> 000237FF # 2-15-73 F48A -> 000237E7 # 2-15-74 F48B -> 00006AEC # 2-15-75 F48C -> 00006AF1 # 2-15-76 F48D -> 00006AF2 # 2-15-77 F48E -> 00006AF3 # 2-15-78 F48F -> 00006AFD # 2-15-79 F490 -> 00023824 # 2-15-80 F491 -> 00006B0B # 2-15-81 F492 -> 00006B0F # 2-15-82 F493 -> 00006B10 # 2-15-83 F494 -> 00006B11 # 2-15-84 F495 -> 0002383D # 2-15-85 F496 -> 00006B17 # 2-15-86 F497 -> 00003C26 # 2-15-87 F498 -> 00006B2F # 2-15-88 F499 -> 00006B4A # 2-15-89 F49A -> 00006B58 # 2-15-90 F49B -> 00006B6C # 2-15-91 F49C -> 00006B75 # 2-15-92 F49D -> 00006B7A # 2-15-93 F49E -> 00006B81 # 2-15-94 F49F -> 00006B9B # 2-78-1 F4A0 -> 00006BAE # 2-78-2 F4A1 -> 00023A98 # 2-78-3 F4A2 -> 00006BBD # 2-78-4 F4A3 -> 00006BBE # 2-78-5 F4A4 -> 00006BC7 # 2-78-6 F4A5 -> 00006BC8 # 2-78-7 F4A6 -> 00006BC9 # 2-78-8 F4A7 -> 00006BDA # 2-78-9 F4A8 -> 00006BE6 # 2-78-10 F4A9 -> 00006BE7 # 2-78-11 F4AA -> 00006BEE # 2-78-12 F4AB -> 00006BF1 # 2-78-13 F4AC -> 00006C02 # 2-78-14 F4AD -> 00006C0A # 2-78-15 F4AE -> 00006C0E # 2-78-16 F4AF -> 00006C35 # 2-78-17 F4B0 -> 00006C36 # 2-78-18 F4B1 -> 00006C3A # 2-78-19 F4B2 -> 00023C7F # 2-78-20 F4B3 -> 00006C3F # 2-78-21 F4B4 -> 00006C4D # 2-78-22 F4B5 -> 00006C5B # 2-78-23 F4B6 -> 00006C6D # 2-78-24 F4B7 -> 00006C84 # 2-78-25 F4B8 -> 00006C89 # 2-78-26 F4B9 -> 00003CC3 # 2-78-27 F4BA -> 00006C94 # 2-78-28 F4BB -> 00006C95 # 2-78-29 F4BC -> 00006C97 # 2-78-30 F4BD -> 00006CAD # 2-78-31 F4BE -> 00006CC2 # 2-78-32 F4BF -> 00006CD0 # 2-78-33 F4C0 -> 00003CD2 # 2-78-34 F4C1 -> 00006CD6 # 2-78-35 F4C2 -> 00006CDA # 2-78-36 F4C3 -> 00006CDC # 2-78-37 F4C4 -> 00006CE9 # 2-78-38 F4C5 -> 00006CEC # 2-78-39 F4C6 -> 00006CED # 2-78-40 F4C7 -> 00023D00 # 2-78-41 F4C8 -> 00006D00 # 2-78-42 F4C9 -> 00006D0A # 2-78-43 F4CA -> 00006D24 # 2-78-44 F4CB -> 00006D26 # 2-78-45 F4CC -> 00006D27 # 2-78-46 F4CD -> 00006C67 # 2-78-47 F4CE -> 00006D2F # 2-78-48 F4CF -> 00006D3C # 2-78-49 F4D0 -> 00006D5B # 2-78-50 F4D1 -> 00006D5E # 2-78-51 F4D2 -> 00006D60 # 2-78-52 F4D3 -> 00006D70 # 2-78-53 F4D4 -> 00006D80 # 2-78-54 F4D5 -> 00006D81 # 2-78-55 F4D6 -> 00006D8A # 2-78-56 F4D7 -> 00006D8D # 2-78-57 F4D8 -> 00006D91 # 2-78-58 F4D9 -> 00006D98 # 2-78-59 F4DA -> 00023D40 # 2-78-60 F4DB -> 00006E17 # 2-78-61 F4DC -> 00023DFA # 2-78-62 F4DD -> 00023DF9 # 2-78-63 F4DE -> 00023DD3 # 2-78-64 F4DF -> 00006DAB # 2-78-65 F4E0 -> 00006DAE # 2-78-66 F4E1 -> 00006DB4 # 2-78-67 F4E2 -> 00006DC2 # 2-78-68 F4E3 -> 00006D34 # 2-78-69 F4E4 -> 00006DC8 # 2-78-70 F4E5 -> 00006DCE # 2-78-71 F4E6 -> 00006DCF # 2-78-72 F4E7 -> 00006DD0 # 2-78-73 F4E8 -> 00006DDF # 2-78-74 F4E9 -> 00006DE9 # 2-78-75 F4EA -> 00006DF6 # 2-78-76 F4EB -> 00006E36 # 2-78-77 F4EC -> 00006E1E # 2-78-78 F4ED -> 00006E22 # 2-78-79 F4EE -> 00006E27 # 2-78-80 F4EF -> 00003D11 # 2-78-81 F4F0 -> 00006E32 # 2-78-82 F4F1 -> 00006E3C # 2-78-83 F4F2 -> 00006E48 # 2-78-84 F4F3 -> 00006E49 # 2-78-85 F4F4 -> 00006E4B # 2-78-86 F4F5 -> 00006E4C # 2-78-87 F4F6 -> 00006E4F # 2-78-88 F4F7 -> 00006E51 # 2-78-89 F4F8 -> 00006E53 # 2-78-90 F4F9 -> 00006E54 # 2-78-91 F4FA -> 00006E57 # 2-78-92 F4FB -> 00006E63 # 2-78-93 F4FC -> 00003D1E # 2-78-94 F540 -> 00006E93 # 2-79-1 F541 -> 00006EA7 # 2-79-2 F542 -> 00006EB4 # 2-79-3 F543 -> 00006EBF # 2-79-4 F544 -> 00006EC3 # 2-79-5 F545 -> 00006ECA # 2-79-6 F546 -> 00006ED9 # 2-79-7 F547 -> 00006F35 # 2-79-8 F548 -> 00006EEB # 2-79-9 F549 -> 00006EF9 # 2-79-10 F54A -> 00006EFB # 2-79-11 F54B -> 00006F0A # 2-79-12 F54C -> 00006F0C # 2-79-13 F54D -> 00006F18 # 2-79-14 F54E -> 00006F25 # 2-79-15 F54F -> 00006F36 # 2-79-16 F550 -> 00006F3C # 2-79-17 F551 -> 00023F7E # 2-79-18 F552 -> 00006F52 # 2-79-19 F553 -> 00006F57 # 2-79-20 F554 -> 00006F5A # 2-79-21 F555 -> 00006F60 # 2-79-22 F556 -> 00006F68 # 2-79-23 F557 -> 00006F98 # 2-79-24 F558 -> 00006F7D # 2-79-25 F559 -> 00006F90 # 2-79-26 F55A -> 00006F96 # 2-79-27 F55B -> 00006FBE # 2-79-28 F55C -> 00006F9F # 2-79-29 F55D -> 00006FA5 # 2-79-30 F55E -> 00006FAF # 2-79-31 F55F -> 00003D64 # 2-79-32 F560 -> 00006FB5 # 2-79-33 F561 -> 00006FC8 # 2-79-34 F562 -> 00006FC9 # 2-79-35 F563 -> 00006FDA # 2-79-36 F564 -> 00006FDE # 2-79-37 F565 -> 00006FE9 # 2-79-38 F566 -> 00024096 # 2-79-39 F567 -> 00006FFC # 2-79-40 F568 -> 00007000 # 2-79-41 F569 -> 00007007 # 2-79-42 F56A -> 0000700A # 2-79-43 F56B -> 00007023 # 2-79-44 F56C -> 00024103 # 2-79-45 F56D -> 00007039 # 2-79-46 F56E -> 0000703A # 2-79-47 F56F -> 0000703C # 2-79-48 F570 -> 00007043 # 2-79-49 F571 -> 00007047 # 2-79-50 F572 -> 0000704B # 2-79-51 F573 -> 00003D9A # 2-79-52 F574 -> 00007054 # 2-79-53 F575 -> 00007065 # 2-79-54 F576 -> 00007069 # 2-79-55 F577 -> 0000706C # 2-79-56 F578 -> 0000706E # 2-79-57 F579 -> 00007076 # 2-79-58 F57A -> 0000707E # 2-79-59 F57B -> 00007081 # 2-79-60 F57C -> 00007086 # 2-79-61 F57D -> 00007095 # 2-79-62 F57E -> 00007097 # 2-79-63 F580 -> 000070BB # 2-79-64 F581 -> 000241C6 # 2-79-65 F582 -> 0000709F # 2-79-66 F583 -> 000070B1 # 2-79-67 F584 -> 000241FE # 2-79-68 F585 -> 000070EC # 2-79-69 F586 -> 000070CA # 2-79-70 F587 -> 000070D1 # 2-79-71 F588 -> 000070D3 # 2-79-72 F589 -> 000070DC # 2-79-73 F58A -> 00007103 # 2-79-74 F58B -> 00007104 # 2-79-75 F58C -> 00007106 # 2-79-76 F58D -> 00007107 # 2-79-77 F58E -> 00007108 # 2-79-78 F58F -> 0000710C # 2-79-79 F590 -> 00003DC0 # 2-79-80 F591 -> 0000712F # 2-79-81 F592 -> 00007131 # 2-79-82 F593 -> 00007150 # 2-79-83 F594 -> 0000714A # 2-79-84 F595 -> 00007153 # 2-79-85 F596 -> 0000715E # 2-79-86 F597 -> 00003DD4 # 2-79-87 F598 -> 00007196 # 2-79-88 F599 -> 00007180 # 2-79-89 F59A -> 0000719B # 2-79-90 F59B -> 000071A0 # 2-79-91 F59C -> 000071A2 # 2-79-92 F59D -> 000071AE # 2-79-93 F59E -> 000071AF # 2-79-94 F59F -> 000071B3 # 2-80-1 F5A0 -> 000243BC # 2-80-2 F5A1 -> 000071CB # 2-80-3 F5A2 -> 000071D3 # 2-80-4 F5A3 -> 000071D9 # 2-80-5 F5A4 -> 000071DC # 2-80-6 F5A5 -> 00007207 # 2-80-7 F5A6 -> 00003E05 # 2-80-8 F5A7 -> 0000FA49 # 2-80-9 F5A8 -> 0000722B # 2-80-10 F5A9 -> 00007234 # 2-80-11 F5AA -> 00007238 # 2-80-12 F5AB -> 00007239 # 2-80-13 F5AC -> 00004E2C # 2-80-14 F5AD -> 00007242 # 2-80-15 F5AE -> 00007253 # 2-80-16 F5AF -> 00007257 # 2-80-17 F5B0 -> 00007263 # 2-80-18 F5B1 -> 00024629 # 2-80-19 F5B2 -> 0000726E # 2-80-20 F5B3 -> 0000726F # 2-80-21 F5B4 -> 00007278 # 2-80-22 F5B5 -> 0000727F # 2-80-23 F5B6 -> 0000728E # 2-80-24 F5B7 -> 000246A5 # 2-80-25 F5B8 -> 000072AD # 2-80-26 F5B9 -> 000072AE # 2-80-27 F5BA -> 000072B0 # 2-80-28 F5BB -> 000072B1 # 2-80-29 F5BC -> 000072C1 # 2-80-30 F5BD -> 00003E60 # 2-80-31 F5BE -> 000072CC # 2-80-32 F5BF -> 00003E66 # 2-80-33 F5C0 -> 00003E68 # 2-80-34 F5C1 -> 000072F3 # 2-80-35 F5C2 -> 000072FA # 2-80-36 F5C3 -> 00007307 # 2-80-37 F5C4 -> 00007312 # 2-80-38 F5C5 -> 00007318 # 2-80-39 F5C6 -> 00007319 # 2-80-40 F5C7 -> 00003E83 # 2-80-41 F5C8 -> 00007339 # 2-80-42 F5C9 -> 0000732C # 2-80-43 F5CA -> 00007331 # 2-80-44 F5CB -> 00007333 # 2-80-45 F5CC -> 0000733D # 2-80-46 F5CD -> 00007352 # 2-80-47 F5CE -> 00003E94 # 2-80-48 F5CF -> 0000736B # 2-80-49 F5D0 -> 0000736C # 2-80-50 F5D1 -> 00024896 # 2-80-51 F5D2 -> 0000736E # 2-80-52 F5D3 -> 0000736F # 2-80-53 F5D4 -> 00007371 # 2-80-54 F5D5 -> 00007377 # 2-80-55 F5D6 -> 00007381 # 2-80-56 F5D7 -> 00007385 # 2-80-57 F5D8 -> 0000738A # 2-80-58 F5D9 -> 00007394 # 2-80-59 F5DA -> 00007398 # 2-80-60 F5DB -> 0000739C # 2-80-61 F5DC -> 0000739E # 2-80-62 F5DD -> 000073A5 # 2-80-63 F5DE -> 000073A8 # 2-80-64 F5DF -> 000073B5 # 2-80-65 F5E0 -> 000073B7 # 2-80-66 F5E1 -> 000073B9 # 2-80-67 F5E2 -> 000073BC # 2-80-68 F5E3 -> 000073BF # 2-80-69 F5E4 -> 000073C5 # 2-80-70 F5E5 -> 000073CB # 2-80-71 F5E6 -> 000073E1 # 2-80-72 F5E7 -> 000073E7 # 2-80-73 F5E8 -> 000073F9 # 2-80-74 F5E9 -> 00007413 # 2-80-75 F5EA -> 000073FA # 2-80-76 F5EB -> 00007401 # 2-80-77 F5EC -> 00007424 # 2-80-78 F5ED -> 00007431 # 2-80-79 F5EE -> 00007439 # 2-80-80 F5EF -> 00007453 # 2-80-81 F5F0 -> 00007440 # 2-80-82 F5F1 -> 00007443 # 2-80-83 F5F2 -> 0000744D # 2-80-84 F5F3 -> 00007452 # 2-80-85 F5F4 -> 0000745D # 2-80-86 F5F5 -> 00007471 # 2-80-87 F5F6 -> 00007481 # 2-80-88 F5F7 -> 00007485 # 2-80-89 F5F8 -> 00007488 # 2-80-90 F5F9 -> 00024A4D # 2-80-91 F5FA -> 00007492 # 2-80-92 F5FB -> 00007497 # 2-80-93 F5FC -> 00007499 # 2-80-94 F640 -> 000074A0 # 2-81-1 F641 -> 000074A1 # 2-81-2 F642 -> 000074A5 # 2-81-3 F643 -> 000074AA # 2-81-4 F644 -> 000074AB # 2-81-5 F645 -> 000074B9 # 2-81-6 F646 -> 000074BB # 2-81-7 F647 -> 000074BA # 2-81-8 F648 -> 000074D6 # 2-81-9 F649 -> 000074D8 # 2-81-10 F64A -> 000074DE # 2-81-11 F64B -> 000074EF # 2-81-12 F64C -> 000074EB # 2-81-13 F64D -> 00024B56 # 2-81-14 F64E -> 000074FA # 2-81-15 F64F -> 00024B6F # 2-81-16 F650 -> 00007520 # 2-81-17 F651 -> 00007524 # 2-81-18 F652 -> 0000752A # 2-81-19 F653 -> 00003F57 # 2-81-20 F654 -> 00024C16 # 2-81-21 F655 -> 0000753D # 2-81-22 F656 -> 0000753E # 2-81-23 F657 -> 00007540 # 2-81-24 F658 -> 00007548 # 2-81-25 F659 -> 0000754E # 2-81-26 F65A -> 00007550 # 2-81-27 F65B -> 00007552 # 2-81-28 F65C -> 0000756C # 2-81-29 F65D -> 00007572 # 2-81-30 F65E -> 00007571 # 2-81-31 F65F -> 0000757A # 2-81-32 F660 -> 0000757D # 2-81-33 F661 -> 0000757E # 2-81-34 F662 -> 00007581 # 2-81-35 F663 -> 00024D14 # 2-81-36 F664 -> 0000758C # 2-81-37 F665 -> 00003F75 # 2-81-38 F666 -> 000075A2 # 2-81-39 F667 -> 00003F77 # 2-81-40 F668 -> 000075B0 # 2-81-41 F669 -> 000075B7 # 2-81-42 F66A -> 000075BF # 2-81-43 F66B -> 000075C0 # 2-81-44 F66C -> 000075C6 # 2-81-45 F66D -> 000075CF # 2-81-46 F66E -> 000075D3 # 2-81-47 F66F -> 000075DD # 2-81-48 F670 -> 000075DF # 2-81-49 F671 -> 000075E0 # 2-81-50 F672 -> 000075E7 # 2-81-51 F673 -> 000075EC # 2-81-52 F674 -> 000075EE # 2-81-53 F675 -> 000075F1 # 2-81-54 F676 -> 000075F9 # 2-81-55 F677 -> 00007603 # 2-81-56 F678 -> 00007618 # 2-81-57 F679 -> 00007607 # 2-81-58 F67A -> 0000760F # 2-81-59 F67B -> 00003FAE # 2-81-60 F67C -> 00024E0E # 2-81-61 F67D -> 00007613 # 2-81-62 F67E -> 0000761B # 2-81-63 F680 -> 0000761C # 2-81-64 F681 -> 00024E37 # 2-81-65 F682 -> 00007625 # 2-81-66 F683 -> 00007628 # 2-81-67 F684 -> 0000763C # 2-81-68 F685 -> 00007633 # 2-81-69 F686 -> 00024E6A # 2-81-70 F687 -> 00003FC9 # 2-81-71 F688 -> 00007641 # 2-81-72 F689 -> 00024E8B # 2-81-73 F68A -> 00007649 # 2-81-74 F68B -> 00007655 # 2-81-75 F68C -> 00003FD7 # 2-81-76 F68D -> 0000766E # 2-81-77 F68E -> 00007695 # 2-81-78 F68F -> 0000769C # 2-81-79 F690 -> 000076A1 # 2-81-80 F691 -> 000076A0 # 2-81-81 F692 -> 000076A7 # 2-81-82 F693 -> 000076A8 # 2-81-83 F694 -> 000076AF # 2-81-84 F695 -> 0002504A # 2-81-85 F696 -> 000076C9 # 2-81-86 F697 -> 00025055 # 2-81-87 F698 -> 000076E8 # 2-81-88 F699 -> 000076EC # 2-81-89 F69A -> 00025122 # 2-81-90 F69B -> 00007717 # 2-81-91 F69C -> 0000771A # 2-81-92 F69D -> 0000772D # 2-81-93 F69E -> 00007735 # 2-81-94 F69F -> 000251A9 # 2-82-1 F6A0 -> 00004039 # 2-82-2 F6A1 -> 000251E5 # 2-82-3 F6A2 -> 000251CD # 2-82-4 F6A3 -> 00007758 # 2-82-5 F6A4 -> 00007760 # 2-82-6 F6A5 -> 0000776A # 2-82-7 F6A6 -> 0002521E # 2-82-8 F6A7 -> 00007772 # 2-82-9 F6A8 -> 0000777C # 2-82-10 F6A9 -> 0000777D # 2-82-11 F6AA -> 0002524C # 2-82-12 F6AB -> 00004058 # 2-82-13 F6AC -> 0000779A # 2-82-14 F6AD -> 0000779F # 2-82-15 F6AE -> 000077A2 # 2-82-16 F6AF -> 000077A4 # 2-82-17 F6B0 -> 000077A9 # 2-82-18 F6B1 -> 000077DE # 2-82-19 F6B2 -> 000077DF # 2-82-20 F6B3 -> 000077E4 # 2-82-21 F6B4 -> 000077E6 # 2-82-22 F6B5 -> 000077EA # 2-82-23 F6B6 -> 000077EC # 2-82-24 F6B7 -> 00004093 # 2-82-25 F6B8 -> 000077F0 # 2-82-26 F6B9 -> 000077F4 # 2-82-27 F6BA -> 000077FB # 2-82-28 F6BB -> 0002542E # 2-82-29 F6BC -> 00007805 # 2-82-30 F6BD -> 00007806 # 2-82-31 F6BE -> 00007809 # 2-82-32 F6BF -> 0000780D # 2-82-33 F6C0 -> 00007819 # 2-82-34 F6C1 -> 00007821 # 2-82-35 F6C2 -> 0000782C # 2-82-36 F6C3 -> 00007847 # 2-82-37 F6C4 -> 00007864 # 2-82-38 F6C5 -> 0000786A # 2-82-39 F6C6 -> 000254D9 # 2-82-40 F6C7 -> 0000788A # 2-82-41 F6C8 -> 00007894 # 2-82-42 F6C9 -> 000078A4 # 2-82-43 F6CA -> 0000789D # 2-82-44 F6CB -> 0000789E # 2-82-45 F6CC -> 0000789F # 2-82-46 F6CD -> 000078BB # 2-82-47 F6CE -> 000078C8 # 2-82-48 F6CF -> 000078CC # 2-82-49 F6D0 -> 000078CE # 2-82-50 F6D1 -> 000078D5 # 2-82-51 F6D2 -> 000078E0 # 2-82-52 F6D3 -> 000078E1 # 2-82-53 F6D4 -> 000078E6 # 2-82-54 F6D5 -> 000078F9 # 2-82-55 F6D6 -> 000078FA # 2-82-56 F6D7 -> 000078FB # 2-82-57 F6D8 -> 000078FE # 2-82-58 F6D9 -> 000255A7 # 2-82-59 F6DA -> 00007910 # 2-82-60 F6DB -> 0000791B # 2-82-61 F6DC -> 00007930 # 2-82-62 F6DD -> 00007925 # 2-82-63 F6DE -> 0000793B # 2-82-64 F6DF -> 0000794A # 2-82-65 F6E0 -> 00007958 # 2-82-66 F6E1 -> 0000795B # 2-82-67 F6E2 -> 00004105 # 2-82-68 F6E3 -> 00007967 # 2-82-69 F6E4 -> 00007972 # 2-82-70 F6E5 -> 00007994 # 2-82-71 F6E6 -> 00007995 # 2-82-72 F6E7 -> 00007996 # 2-82-73 F6E8 -> 0000799B # 2-82-74 F6E9 -> 000079A1 # 2-82-75 F6EA -> 000079A9 # 2-82-76 F6EB -> 000079B4 # 2-82-77 F6EC -> 000079BB # 2-82-78 F6ED -> 000079C2 # 2-82-79 F6EE -> 000079C7 # 2-82-80 F6EF -> 000079CC # 2-82-81 F6F0 -> 000079CD # 2-82-82 F6F1 -> 000079D6 # 2-82-83 F6F2 -> 00004148 # 2-82-84 F6F3 -> 000257A9 # 2-82-85 F6F4 -> 000257B4 # 2-82-86 F6F5 -> 0000414F # 2-82-87 F6F6 -> 00007A0A # 2-82-88 F6F7 -> 00007A11 # 2-82-89 F6F8 -> 00007A15 # 2-82-90 F6F9 -> 00007A1B # 2-82-91 F6FA -> 00007A1E # 2-82-92 F6FB -> 00004163 # 2-82-93 F6FC -> 00007A2D # 2-82-94 F740 -> 00007A38 # 2-83-1 F741 -> 00007A47 # 2-83-2 F742 -> 00007A4C # 2-83-3 F743 -> 00007A56 # 2-83-4 F744 -> 00007A59 # 2-83-5 F745 -> 00007A5C # 2-83-6 F746 -> 00007A5F # 2-83-7 F747 -> 00007A60 # 2-83-8 F748 -> 00007A67 # 2-83-9 F749 -> 00007A6A # 2-83-10 F74A -> 00007A75 # 2-83-11 F74B -> 00007A78 # 2-83-12 F74C -> 00007A82 # 2-83-13 F74D -> 00007A8A # 2-83-14 F74E -> 00007A90 # 2-83-15 F74F -> 00007AA3 # 2-83-16 F750 -> 00007AAC # 2-83-17 F751 -> 000259D4 # 2-83-18 F752 -> 000041B4 # 2-83-19 F753 -> 00007AB9 # 2-83-20 F754 -> 00007ABC # 2-83-21 F755 -> 00007ABE # 2-83-22 F756 -> 000041BF # 2-83-23 F757 -> 00007ACC # 2-83-24 F758 -> 00007AD1 # 2-83-25 F759 -> 00007AE7 # 2-83-26 F75A -> 00007AE8 # 2-83-27 F75B -> 00007AF4 # 2-83-28 F75C -> 00025AE4 # 2-83-29 F75D -> 00025AE3 # 2-83-30 F75E -> 00007B07 # 2-83-31 F75F -> 00025AF1 # 2-83-32 F760 -> 00007B3D # 2-83-33 F761 -> 00007B27 # 2-83-34 F762 -> 00007B2A # 2-83-35 F763 -> 00007B2E # 2-83-36 F764 -> 00007B2F # 2-83-37 F765 -> 00007B31 # 2-83-38 F766 -> 000041E6 # 2-83-39 F767 -> 000041F3 # 2-83-40 F768 -> 00007B7F # 2-83-41 F769 -> 00007B41 # 2-83-42 F76A -> 000041EE # 2-83-43 F76B -> 00007B55 # 2-83-44 F76C -> 00007B79 # 2-83-45 F76D -> 00007B64 # 2-83-46 F76E -> 00007B66 # 2-83-47 F76F -> 00007B69 # 2-83-48 F770 -> 00007B73 # 2-83-49 F771 -> 00025BB2 # 2-83-50 F772 -> 00004207 # 2-83-51 F773 -> 00007B90 # 2-83-52 F774 -> 00007B91 # 2-83-53 F775 -> 00007B9B # 2-83-54 F776 -> 0000420E # 2-83-55 F777 -> 00007BAF # 2-83-56 F778 -> 00007BB5 # 2-83-57 F779 -> 00007BBC # 2-83-58 F77A -> 00007BC5 # 2-83-59 F77B -> 00007BCA # 2-83-60 F77C -> 00025C4B # 2-83-61 F77D -> 00025C64 # 2-83-62 F77E -> 00007BD4 # 2-83-63 F780 -> 00007BD6 # 2-83-64 F781 -> 00007BDA # 2-83-65 F782 -> 00007BEA # 2-83-66 F783 -> 00007BF0 # 2-83-67 F784 -> 00007C03 # 2-83-68 F785 -> 00007C0B # 2-83-69 F786 -> 00007C0E # 2-83-70 F787 -> 00007C0F # 2-83-71 F788 -> 00007C26 # 2-83-72 F789 -> 00007C45 # 2-83-73 F78A -> 00007C4A # 2-83-74 F78B -> 00007C51 # 2-83-75 F78C -> 00007C57 # 2-83-76 F78D -> 00007C5E # 2-83-77 F78E -> 00007C61 # 2-83-78 F78F -> 00007C69 # 2-83-79 F790 -> 00007C6E # 2-83-80 F791 -> 00007C6F # 2-83-81 F792 -> 00007C70 # 2-83-82 F793 -> 00025E2E # 2-83-83 F794 -> 00025E56 # 2-83-84 F795 -> 00025E65 # 2-83-85 F796 -> 00007CA6 # 2-83-86 F797 -> 00025E62 # 2-83-87 F798 -> 00007CB6 # 2-83-88 F799 -> 00007CB7 # 2-83-89 F79A -> 00007CBF # 2-83-90 F79B -> 00025ED8 # 2-83-91 F79C -> 00007CC4 # 2-83-92 F79D -> 00025EC2 # 2-83-93 F79E -> 00007CC8 # 2-83-94 F79F -> 00007CCD # 2-84-1 F7A0 -> 00025EE8 # 2-84-2 F7A1 -> 00007CD7 # 2-84-3 F7A2 -> 00025F23 # 2-84-4 F7A3 -> 00007CE6 # 2-84-5 F7A4 -> 00007CEB # 2-84-6 F7A5 -> 00025F5C # 2-84-7 F7A6 -> 00007CF5 # 2-84-8 F7A7 -> 00007D03 # 2-84-9 F7A8 -> 00007D09 # 2-84-10 F7A9 -> 000042C6 # 2-84-11 F7AA -> 00007D12 # 2-84-12 F7AB -> 00007D1E # 2-84-13 F7AC -> 00025FE0 # 2-84-14 F7AD -> 00025FD4 # 2-84-15 F7AE -> 00007D3D # 2-84-16 F7AF -> 00007D3E # 2-84-17 F7B0 -> 00007D40 # 2-84-18 F7B1 -> 00007D47 # 2-84-19 F7B2 -> 0002600C # 2-84-20 F7B3 -> 00025FFB # 2-84-21 F7B4 -> 000042D6 # 2-84-22 F7B5 -> 00007D59 # 2-84-23 F7B6 -> 00007D5A # 2-84-24 F7B7 -> 00007D6A # 2-84-25 F7B8 -> 00007D70 # 2-84-26 F7B9 -> 000042DD # 2-84-27 F7BA -> 00007D7F # 2-84-28 F7BB -> 00026017 # 2-84-29 F7BC -> 00007D86 # 2-84-30 F7BD -> 00007D88 # 2-84-31 F7BE -> 00007D8C # 2-84-32 F7BF -> 00007D97 # 2-84-33 F7C0 -> 00026060 # 2-84-34 F7C1 -> 00007D9D # 2-84-35 F7C2 -> 00007DA7 # 2-84-36 F7C3 -> 00007DAA # 2-84-37 F7C4 -> 00007DB6 # 2-84-38 F7C5 -> 00007DB7 # 2-84-39 F7C6 -> 00007DC0 # 2-84-40 F7C7 -> 00007DD7 # 2-84-41 F7C8 -> 00007DD9 # 2-84-42 F7C9 -> 00007DE6 # 2-84-43 F7CA -> 00007DF1 # 2-84-44 F7CB -> 00007DF9 # 2-84-45 F7CC -> 00004302 # 2-84-46 F7CD -> 000260ED # 2-84-47 F7CE -> 0000FA58 # 2-84-48 F7CF -> 00007E10 # 2-84-49 F7D0 -> 00007E17 # 2-84-50 F7D1 -> 00007E1D # 2-84-51 F7D2 -> 00007E20 # 2-84-52 F7D3 -> 00007E27 # 2-84-53 F7D4 -> 00007E2C # 2-84-54 F7D5 -> 00007E45 # 2-84-55 F7D6 -> 00007E73 # 2-84-56 F7D7 -> 00007E75 # 2-84-57 F7D8 -> 00007E7E # 2-84-58 F7D9 -> 00007E86 # 2-84-59 F7DA -> 00007E87 # 2-84-60 F7DB -> 0000432B # 2-84-61 F7DC -> 00007E91 # 2-84-62 F7DD -> 00007E98 # 2-84-63 F7DE -> 00007E9A # 2-84-64 F7DF -> 00004343 # 2-84-65 F7E0 -> 00007F3C # 2-84-66 F7E1 -> 00007F3B # 2-84-67 F7E2 -> 00007F3E # 2-84-68 F7E3 -> 00007F43 # 2-84-69 F7E4 -> 00007F44 # 2-84-70 F7E5 -> 00007F4F # 2-84-71 F7E6 -> 000034C1 # 2-84-72 F7E7 -> 00026270 # 2-84-73 F7E8 -> 00007F52 # 2-84-74 F7E9 -> 00026286 # 2-84-75 F7EA -> 00007F61 # 2-84-76 F7EB -> 00007F63 # 2-84-77 F7EC -> 00007F64 # 2-84-78 F7ED -> 00007F6D # 2-84-79 F7EE -> 00007F7D # 2-84-80 F7EF -> 00007F7E # 2-84-81 F7F0 -> 0002634C # 2-84-82 F7F1 -> 00007F90 # 2-84-83 F7F2 -> 0000517B # 2-84-84 F7F3 -> 00023D0E # 2-84-85 F7F4 -> 00007F96 # 2-84-86 F7F5 -> 00007F9C # 2-84-87 F7F6 -> 00007FAD # 2-84-88 F7F7 -> 00026402 # 2-84-89 F7F8 -> 00007FC3 # 2-84-90 F7F9 -> 00007FCF # 2-84-91 F7FA -> 00007FE3 # 2-84-92 F7FB -> 00007FE5 # 2-84-93 F7FC -> 00007FEF # 2-84-94 F840 -> 00007FF2 # 2-85-1 F841 -> 00008002 # 2-85-2 F842 -> 0000800A # 2-85-3 F843 -> 00008008 # 2-85-4 F844 -> 0000800E # 2-85-5 F845 -> 00008011 # 2-85-6 F846 -> 00008016 # 2-85-7 F847 -> 00008024 # 2-85-8 F848 -> 0000802C # 2-85-9 F849 -> 00008030 # 2-85-10 F84A -> 00008043 # 2-85-11 F84B -> 00008066 # 2-85-12 F84C -> 00008071 # 2-85-13 F84D -> 00008075 # 2-85-14 F84E -> 0000807B # 2-85-15 F84F -> 00008099 # 2-85-16 F850 -> 0000809C # 2-85-17 F851 -> 000080A4 # 2-85-18 F852 -> 000080A7 # 2-85-19 F853 -> 000080B8 # 2-85-20 F854 -> 0002667E # 2-85-21 F855 -> 000080C5 # 2-85-22 F856 -> 000080D5 # 2-85-23 F857 -> 000080D8 # 2-85-24 F858 -> 000080E6 # 2-85-25 F859 -> 000266B0 # 2-85-26 F85A -> 0000810D # 2-85-27 F85B -> 000080F5 # 2-85-28 F85C -> 000080FB # 2-85-29 F85D -> 000043EE # 2-85-30 F85E -> 00008135 # 2-85-31 F85F -> 00008116 # 2-85-32 F860 -> 0000811E # 2-85-33 F861 -> 000043F0 # 2-85-34 F862 -> 00008124 # 2-85-35 F863 -> 00008127 # 2-85-36 F864 -> 0000812C # 2-85-37 F865 -> 0002671D # 2-85-38 F866 -> 0000813D # 2-85-39 F867 -> 00004408 # 2-85-40 F868 -> 00008169 # 2-85-41 F869 -> 00004417 # 2-85-42 F86A -> 00008181 # 2-85-43 F86B -> 0000441C # 2-85-44 F86C -> 00008184 # 2-85-45 F86D -> 00008185 # 2-85-46 F86E -> 00004422 # 2-85-47 F86F -> 00008198 # 2-85-48 F870 -> 000081B2 # 2-85-49 F871 -> 000081C1 # 2-85-50 F872 -> 000081C3 # 2-85-51 F873 -> 000081D6 # 2-85-52 F874 -> 000081DB # 2-85-53 F875 -> 000268DD # 2-85-54 F876 -> 000081E4 # 2-85-55 F877 -> 000268EA # 2-85-56 F878 -> 000081EC # 2-85-57 F879 -> 00026951 # 2-85-58 F87A -> 000081FD # 2-85-59 F87B -> 000081FF # 2-85-60 F87C -> 0002696F # 2-85-61 F87D -> 00008204 # 2-85-62 F87E -> 000269DD # 2-85-63 F880 -> 00008219 # 2-85-64 F881 -> 00008221 # 2-85-65 F882 -> 00008222 # 2-85-66 F883 -> 00026A1E # 2-85-67 F884 -> 00008232 # 2-85-68 F885 -> 00008234 # 2-85-69 F886 -> 0000823C # 2-85-70 F887 -> 00008246 # 2-85-71 F888 -> 00008249 # 2-85-72 F889 -> 00008245 # 2-85-73 F88A -> 00026A58 # 2-85-74 F88B -> 0000824B # 2-85-75 F88C -> 00004476 # 2-85-76 F88D -> 0000824F # 2-85-77 F88E -> 0000447A # 2-85-78 F88F -> 00008257 # 2-85-79 F890 -> 00026A8C # 2-85-80 F891 -> 0000825C # 2-85-81 F892 -> 00008263 # 2-85-82 F893 -> 00026AB7 # 2-85-83 F894 -> 0000FA5D # 2-85-84 F895 -> 0000FA5E # 2-85-85 F896 -> 00008279 # 2-85-86 F897 -> 00004491 # 2-85-87 F898 -> 0000827D # 2-85-88 F899 -> 0000827F # 2-85-89 F89A -> 00008283 # 2-85-90 F89B -> 0000828A # 2-85-91 F89C -> 00008293 # 2-85-92 F89D -> 000082A7 # 2-85-93 F89E -> 000082A8 # 2-85-94 F89F -> 000082B2 # 2-86-1 F8A0 -> 000082B4 # 2-86-2 F8A1 -> 000082BA # 2-86-3 F8A2 -> 000082BC # 2-86-4 F8A3 -> 000082E2 # 2-86-5 F8A4 -> 000082E8 # 2-86-6 F8A5 -> 000082F7 # 2-86-7 F8A6 -> 00008307 # 2-86-8 F8A7 -> 00008308 # 2-86-9 F8A8 -> 0000830C # 2-86-10 F8A9 -> 00008354 # 2-86-11 F8AA -> 0000831B # 2-86-12 F8AB -> 0000831D # 2-86-13 F8AC -> 00008330 # 2-86-14 F8AD -> 0000833C # 2-86-15 F8AE -> 00008344 # 2-86-16 F8AF -> 00008357 # 2-86-17 F8B0 -> 000044BE # 2-86-18 F8B1 -> 0000837F # 2-86-19 F8B2 -> 000044D4 # 2-86-20 F8B3 -> 000044B3 # 2-86-21 F8B4 -> 0000838D # 2-86-22 F8B5 -> 00008394 # 2-86-23 F8B6 -> 00008395 # 2-86-24 F8B7 -> 0000839B # 2-86-25 F8B8 -> 0000839D # 2-86-26 F8B9 -> 000083C9 # 2-86-27 F8BA -> 000083D0 # 2-86-28 F8BB -> 000083D4 # 2-86-29 F8BC -> 000083DD # 2-86-30 F8BD -> 000083E5 # 2-86-31 F8BE -> 000083F9 # 2-86-32 F8BF -> 0000840F # 2-86-33 F8C0 -> 00008411 # 2-86-34 F8C1 -> 00008415 # 2-86-35 F8C2 -> 00026C73 # 2-86-36 F8C3 -> 00008417 # 2-86-37 F8C4 -> 00008439 # 2-86-38 F8C5 -> 0000844A # 2-86-39 F8C6 -> 0000844F # 2-86-40 F8C7 -> 00008451 # 2-86-41 F8C8 -> 00008452 # 2-86-42 F8C9 -> 00008459 # 2-86-43 F8CA -> 0000845A # 2-86-44 F8CB -> 0000845C # 2-86-45 F8CC -> 00026CDD # 2-86-46 F8CD -> 00008465 # 2-86-47 F8CE -> 00008476 # 2-86-48 F8CF -> 00008478 # 2-86-49 F8D0 -> 0000847C # 2-86-50 F8D1 -> 00008481 # 2-86-51 F8D2 -> 0000450D # 2-86-52 F8D3 -> 000084DC # 2-86-53 F8D4 -> 00008497 # 2-86-54 F8D5 -> 000084A6 # 2-86-55 F8D6 -> 000084BE # 2-86-56 F8D7 -> 00004508 # 2-86-57 F8D8 -> 000084CE # 2-86-58 F8D9 -> 000084CF # 2-86-59 F8DA -> 000084D3 # 2-86-60 F8DB -> 00026E65 # 2-86-61 F8DC -> 000084E7 # 2-86-62 F8DD -> 000084EA # 2-86-63 F8DE -> 000084EF # 2-86-64 F8DF -> 000084F0 # 2-86-65 F8E0 -> 000084F1 # 2-86-66 F8E1 -> 000084FA # 2-86-67 F8E2 -> 000084FD # 2-86-68 F8E3 -> 0000850C # 2-86-69 F8E4 -> 0000851B # 2-86-70 F8E5 -> 00008524 # 2-86-71 F8E6 -> 00008525 # 2-86-72 F8E7 -> 0000852B # 2-86-73 F8E8 -> 00008534 # 2-86-74 F8E9 -> 0000854F # 2-86-75 F8EA -> 0000856F # 2-86-76 F8EB -> 00004525 # 2-86-77 F8EC -> 00004543 # 2-86-78 F8ED -> 0000853E # 2-86-79 F8EE -> 00008551 # 2-86-80 F8EF -> 00008553 # 2-86-81 F8F0 -> 0000855E # 2-86-82 F8F1 -> 00008561 # 2-86-83 F8F2 -> 00008562 # 2-86-84 F8F3 -> 00026F94 # 2-86-85 F8F4 -> 0000857B # 2-86-86 F8F5 -> 0000857D # 2-86-87 F8F6 -> 0000857F # 2-86-88 F8F7 -> 00008581 # 2-86-89 F8F8 -> 00008586 # 2-86-90 F8F9 -> 00008593 # 2-86-91 F8FA -> 0000859D # 2-86-92 F8FB -> 0000859F # 2-86-93 F8FC -> 00026FF8 # 2-86-94 F940 -> 00026FF6 # 2-87-1 F941 -> 00026FF7 # 2-87-2 F942 -> 000085B7 # 2-87-3 F943 -> 000085BC # 2-87-4 F944 -> 000085C7 # 2-87-5 F945 -> 000085CA # 2-87-6 F946 -> 000085D8 # 2-87-7 F947 -> 000085D9 # 2-87-8 F948 -> 000085DF # 2-87-9 F949 -> 000085E1 # 2-87-10 F94A -> 000085E6 # 2-87-11 F94B -> 000085F6 # 2-87-12 F94C -> 00008600 # 2-87-13 F94D -> 00008611 # 2-87-14 F94E -> 0000861E # 2-87-15 F94F -> 00008621 # 2-87-16 F950 -> 00008624 # 2-87-17 F951 -> 00008627 # 2-87-18 F952 -> 0002710D # 2-87-19 F953 -> 00008639 # 2-87-20 F954 -> 0000863C # 2-87-21 F955 -> 00027139 # 2-87-22 F956 -> 00008640 # 2-87-23 F957 -> 0000FA20 # 2-87-24 F958 -> 00008653 # 2-87-25 F959 -> 00008656 # 2-87-26 F95A -> 0000866F # 2-87-27 F95B -> 00008677 # 2-87-28 F95C -> 0000867A # 2-87-29 F95D -> 00008687 # 2-87-30 F95E -> 00008689 # 2-87-31 F95F -> 0000868D # 2-87-32 F960 -> 00008691 # 2-87-33 F961 -> 0000869C # 2-87-34 F962 -> 0000869D # 2-87-35 F963 -> 000086A8 # 2-87-36 F964 -> 0000FA21 # 2-87-37 F965 -> 000086B1 # 2-87-38 F966 -> 000086B3 # 2-87-39 F967 -> 000086C1 # 2-87-40 F968 -> 000086C3 # 2-87-41 F969 -> 000086D1 # 2-87-42 F96A -> 000086D5 # 2-87-43 F96B -> 000086D7 # 2-87-44 F96C -> 000086E3 # 2-87-45 F96D -> 000086E6 # 2-87-46 F96E -> 000045B8 # 2-87-47 F96F -> 00008705 # 2-87-48 F970 -> 00008707 # 2-87-49 F971 -> 0000870E # 2-87-50 F972 -> 00008710 # 2-87-51 F973 -> 00008713 # 2-87-52 F974 -> 00008719 # 2-87-53 F975 -> 0000871F # 2-87-54 F976 -> 00008721 # 2-87-55 F977 -> 00008723 # 2-87-56 F978 -> 00008731 # 2-87-57 F979 -> 0000873A # 2-87-58 F97A -> 0000873E # 2-87-59 F97B -> 00008740 # 2-87-60 F97C -> 00008743 # 2-87-61 F97D -> 00008751 # 2-87-62 F97E -> 00008758 # 2-87-63 F980 -> 00008764 # 2-87-64 F981 -> 00008765 # 2-87-65 F982 -> 00008772 # 2-87-66 F983 -> 0000877C # 2-87-67 F984 -> 000273DB # 2-87-68 F985 -> 000273DA # 2-87-69 F986 -> 000087A7 # 2-87-70 F987 -> 00008789 # 2-87-71 F988 -> 0000878B # 2-87-72 F989 -> 00008793 # 2-87-73 F98A -> 000087A0 # 2-87-74 F98B -> 000273FE # 2-87-75 F98C -> 000045E5 # 2-87-76 F98D -> 000087BE # 2-87-77 F98E -> 00027410 # 2-87-78 F98F -> 000087C1 # 2-87-79 F990 -> 000087CE # 2-87-80 F991 -> 000087F5 # 2-87-81 F992 -> 000087DF # 2-87-82 F993 -> 00027449 # 2-87-83 F994 -> 000087E3 # 2-87-84 F995 -> 000087E5 # 2-87-85 F996 -> 000087E6 # 2-87-86 F997 -> 000087EA # 2-87-87 F998 -> 000087EB # 2-87-88 F999 -> 000087ED # 2-87-89 F99A -> 00008801 # 2-87-90 F99B -> 00008803 # 2-87-91 F99C -> 0000880B # 2-87-92 F99D -> 00008813 # 2-87-93 F99E -> 00008828 # 2-87-94 F99F -> 0000882E # 2-88-1 F9A0 -> 00008832 # 2-88-2 F9A1 -> 0000883C # 2-88-3 F9A2 -> 0000460F # 2-88-4 F9A3 -> 0000884A # 2-88-5 F9A4 -> 00008858 # 2-88-6 F9A5 -> 0000885F # 2-88-7 F9A6 -> 00008864 # 2-88-8 F9A7 -> 00027615 # 2-88-9 F9A8 -> 00027614 # 2-88-10 F9A9 -> 00008869 # 2-88-11 F9AA -> 00027631 # 2-88-12 F9AB -> 0000886F # 2-88-13 F9AC -> 000088A0 # 2-88-14 F9AD -> 000088BC # 2-88-15 F9AE -> 000088BD # 2-88-16 F9AF -> 000088BE # 2-88-17 F9B0 -> 000088C0 # 2-88-18 F9B1 -> 000088D2 # 2-88-19 F9B2 -> 00027693 # 2-88-20 F9B3 -> 000088D1 # 2-88-21 F9B4 -> 000088D3 # 2-88-22 F9B5 -> 000088DB # 2-88-23 F9B6 -> 000088F0 # 2-88-24 F9B7 -> 000088F1 # 2-88-25 F9B8 -> 00004641 # 2-88-26 F9B9 -> 00008901 # 2-88-27 F9BA -> 0002770E # 2-88-28 F9BB -> 00008937 # 2-88-29 F9BC -> 00027723 # 2-88-30 F9BD -> 00008942 # 2-88-31 F9BE -> 00008945 # 2-88-32 F9BF -> 00008949 # 2-88-33 F9C0 -> 00027752 # 2-88-34 F9C1 -> 00004665 # 2-88-35 F9C2 -> 00008962 # 2-88-36 F9C3 -> 00008980 # 2-88-37 F9C4 -> 00008989 # 2-88-38 F9C5 -> 00008990 # 2-88-39 F9C6 -> 0000899F # 2-88-40 F9C7 -> 000089B0 # 2-88-41 F9C8 -> 000089B7 # 2-88-42 F9C9 -> 000089D6 # 2-88-43 F9CA -> 000089D8 # 2-88-44 F9CB -> 000089EB # 2-88-45 F9CC -> 000046A1 # 2-88-46 F9CD -> 000089F1 # 2-88-47 F9CE -> 000089F3 # 2-88-48 F9CF -> 000089FD # 2-88-49 F9D0 -> 000089FF # 2-88-50 F9D1 -> 000046AF # 2-88-51 F9D2 -> 00008A11 # 2-88-52 F9D3 -> 00008A14 # 2-88-53 F9D4 -> 00027985 # 2-88-54 F9D5 -> 00008A21 # 2-88-55 F9D6 -> 00008A35 # 2-88-56 F9D7 -> 00008A3E # 2-88-57 F9D8 -> 00008A45 # 2-88-58 F9D9 -> 00008A4D # 2-88-59 F9DA -> 00008A58 # 2-88-60 F9DB -> 00008AAE # 2-88-61 F9DC -> 00008A90 # 2-88-62 F9DD -> 00008AB7 # 2-88-63 F9DE -> 00008ABE # 2-88-64 F9DF -> 00008AD7 # 2-88-65 F9E0 -> 00008AFC # 2-88-66 F9E1 -> 00027A84 # 2-88-67 F9E2 -> 00008B0A # 2-88-68 F9E3 -> 00008B05 # 2-88-69 F9E4 -> 00008B0D # 2-88-70 F9E5 -> 00008B1C # 2-88-71 F9E6 -> 00008B1F # 2-88-72 F9E7 -> 00008B2D # 2-88-73 F9E8 -> 00008B43 # 2-88-74 F9E9 -> 0000470C # 2-88-75 F9EA -> 00008B51 # 2-88-76 F9EB -> 00008B5E # 2-88-77 F9EC -> 00008B76 # 2-88-78 F9ED -> 00008B7F # 2-88-79 F9EE -> 00008B81 # 2-88-80 F9EF -> 00008B8B # 2-88-81 F9F0 -> 00008B94 # 2-88-82 F9F1 -> 00008B95 # 2-88-83 F9F2 -> 00008B9C # 2-88-84 F9F3 -> 00008B9E # 2-88-85 F9F4 -> 00008C39 # 2-88-86 F9F5 -> 00027BB3 # 2-88-87 F9F6 -> 00008C3D # 2-88-88 F9F7 -> 00027BBE # 2-88-89 F9F8 -> 00027BC7 # 2-88-90 F9F9 -> 00008C45 # 2-88-91 F9FA -> 00008C47 # 2-88-92 F9FB -> 00008C4F # 2-88-93 F9FC -> 00008C54 # 2-88-94 FA40 -> 00008C57 # 2-89-1 FA41 -> 00008C69 # 2-89-2 FA42 -> 00008C6D # 2-89-3 FA43 -> 00008C73 # 2-89-4 FA44 -> 00027CB8 # 2-89-5 FA45 -> 00008C93 # 2-89-6 FA46 -> 00008C92 # 2-89-7 FA47 -> 00008C99 # 2-89-8 FA48 -> 00004764 # 2-89-9 FA49 -> 00008C9B # 2-89-10 FA4A -> 00008CA4 # 2-89-11 FA4B -> 00008CD6 # 2-89-12 FA4C -> 00008CD5 # 2-89-13 FA4D -> 00008CD9 # 2-89-14 FA4E -> 00027DA0 # 2-89-15 FA4F -> 00008CF0 # 2-89-16 FA50 -> 00008CF1 # 2-89-17 FA51 -> 00027E10 # 2-89-18 FA52 -> 00008D09 # 2-89-19 FA53 -> 00008D0E # 2-89-20 FA54 -> 00008D6C # 2-89-21 FA55 -> 00008D84 # 2-89-22 FA56 -> 00008D95 # 2-89-23 FA57 -> 00008DA6 # 2-89-24 FA58 -> 00027FB7 # 2-89-25 FA59 -> 00008DC6 # 2-89-26 FA5A -> 00008DC8 # 2-89-27 FA5B -> 00008DD9 # 2-89-28 FA5C -> 00008DEC # 2-89-29 FA5D -> 00008E0C # 2-89-30 FA5E -> 000047FD # 2-89-31 FA5F -> 00008DFD # 2-89-32 FA60 -> 00008E06 # 2-89-33 FA61 -> 0002808A # 2-89-34 FA62 -> 00008E14 # 2-89-35 FA63 -> 00008E16 # 2-89-36 FA64 -> 00008E21 # 2-89-37 FA65 -> 00008E22 # 2-89-38 FA66 -> 00008E27 # 2-89-39 FA67 -> 000280BB # 2-89-40 FA68 -> 00004816 # 2-89-41 FA69 -> 00008E36 # 2-89-42 FA6A -> 00008E39 # 2-89-43 FA6B -> 00008E4B # 2-89-44 FA6C -> 00008E54 # 2-89-45 FA6D -> 00008E62 # 2-89-46 FA6E -> 00008E6C # 2-89-47 FA6F -> 00008E6D # 2-89-48 FA70 -> 00008E6F # 2-89-49 FA71 -> 00008E98 # 2-89-50 FA72 -> 00008E9E # 2-89-51 FA73 -> 00008EAE # 2-89-52 FA74 -> 00008EB3 # 2-89-53 FA75 -> 00008EB5 # 2-89-54 FA76 -> 00008EB6 # 2-89-55 FA77 -> 00008EBB # 2-89-56 FA78 -> 00028282 # 2-89-57 FA79 -> 00008ED1 # 2-89-58 FA7A -> 00008ED4 # 2-89-59 FA7B -> 0000484E # 2-89-60 FA7C -> 00008EF9 # 2-89-61 FA7D -> 000282F3 # 2-89-62 FA7E -> 00008F00 # 2-89-63 FA80 -> 00008F08 # 2-89-64 FA81 -> 00008F17 # 2-89-65 FA82 -> 00008F2B # 2-89-66 FA83 -> 00008F40 # 2-89-67 FA84 -> 00008F4A # 2-89-68 FA85 -> 00008F58 # 2-89-69 FA86 -> 0002840C # 2-89-70 FA87 -> 00008FA4 # 2-89-71 FA88 -> 00008FB4 # 2-89-72 FA89 -> 0000FA66 # 2-89-73 FA8A -> 00008FB6 # 2-89-74 FA8B -> 00028455 # 2-89-75 FA8C -> 00008FC1 # 2-89-76 FA8D -> 00008FC6 # 2-89-77 FA8E -> 0000FA24 # 2-89-78 FA8F -> 00008FCA # 2-89-79 FA90 -> 00008FCD # 2-89-80 FA91 -> 00008FD3 # 2-89-81 FA92 -> 00008FD5 # 2-89-82 FA93 -> 00008FE0 # 2-89-83 FA94 -> 00008FF1 # 2-89-84 FA95 -> 00008FF5 # 2-89-85 FA96 -> 00008FFB # 2-89-86 FA97 -> 00009002 # 2-89-87 FA98 -> 0000900C # 2-89-88 FA99 -> 00009037 # 2-89-89 FA9A -> 0002856B # 2-89-90 FA9B -> 00009043 # 2-89-91 FA9C -> 00009044 # 2-89-92 FA9D -> 0000905D # 2-89-93 FA9E -> 000285C8 # 2-89-94 FA9F -> 000285C9 # 2-90-1 FAA0 -> 00009085 # 2-90-2 FAA1 -> 0000908C # 2-90-3 FAA2 -> 00009090 # 2-90-4 FAA3 -> 0000961D # 2-90-5 FAA4 -> 000090A1 # 2-90-6 FAA5 -> 000048B5 # 2-90-7 FAA6 -> 000090B0 # 2-90-8 FAA7 -> 000090B6 # 2-90-9 FAA8 -> 000090C3 # 2-90-10 FAA9 -> 000090C8 # 2-90-11 FAAA -> 000286D7 # 2-90-12 FAAB -> 000090DC # 2-90-13 FAAC -> 000090DF # 2-90-14 FAAD -> 000286FA # 2-90-15 FAAE -> 000090F6 # 2-90-16 FAAF -> 000090F2 # 2-90-17 FAB0 -> 00009100 # 2-90-18 FAB1 -> 000090EB # 2-90-19 FAB2 -> 000090FE # 2-90-20 FAB3 -> 000090FF # 2-90-21 FAB4 -> 00009104 # 2-90-22 FAB5 -> 00009106 # 2-90-23 FAB6 -> 00009118 # 2-90-24 FAB7 -> 0000911C # 2-90-25 FAB8 -> 0000911E # 2-90-26 FAB9 -> 00009137 # 2-90-27 FABA -> 00009139 # 2-90-28 FABB -> 0000913A # 2-90-29 FABC -> 00009146 # 2-90-30 FABD -> 00009147 # 2-90-31 FABE -> 00009157 # 2-90-32 FABF -> 00009159 # 2-90-33 FAC0 -> 00009161 # 2-90-34 FAC1 -> 00009164 # 2-90-35 FAC2 -> 00009174 # 2-90-36 FAC3 -> 00009179 # 2-90-37 FAC4 -> 00009185 # 2-90-38 FAC5 -> 0000918E # 2-90-39 FAC6 -> 000091A8 # 2-90-40 FAC7 -> 000091AE # 2-90-41 FAC8 -> 000091B3 # 2-90-42 FAC9 -> 000091B6 # 2-90-43 FACA -> 000091C3 # 2-90-44 FACB -> 000091C4 # 2-90-45 FACC -> 000091DA # 2-90-46 FACD -> 00028949 # 2-90-47 FACE -> 00028946 # 2-90-48 FACF -> 000091EC # 2-90-49 FAD0 -> 000091EE # 2-90-50 FAD1 -> 00009201 # 2-90-51 FAD2 -> 0000920A # 2-90-52 FAD3 -> 00009216 # 2-90-53 FAD4 -> 00009217 # 2-90-54 FAD5 -> 0002896B # 2-90-55 FAD6 -> 00009233 # 2-90-56 FAD7 -> 00009242 # 2-90-57 FAD8 -> 00009247 # 2-90-58 FAD9 -> 0000924A # 2-90-59 FADA -> 0000924E # 2-90-60 FADB -> 00009251 # 2-90-61 FADC -> 00009256 # 2-90-62 FADD -> 00009259 # 2-90-63 FADE -> 00009260 # 2-90-64 FADF -> 00009261 # 2-90-65 FAE0 -> 00009265 # 2-90-66 FAE1 -> 00009267 # 2-90-67 FAE2 -> 00009268 # 2-90-68 FAE3 -> 00028987 # 2-90-69 FAE4 -> 00028988 # 2-90-70 FAE5 -> 0000927C # 2-90-71 FAE6 -> 0000927D # 2-90-72 FAE7 -> 0000927F # 2-90-73 FAE8 -> 00009289 # 2-90-74 FAE9 -> 0000928D # 2-90-75 FAEA -> 00009297 # 2-90-76 FAEB -> 00009299 # 2-90-77 FAEC -> 0000929F # 2-90-78 FAED -> 000092A7 # 2-90-79 FAEE -> 000092AB # 2-90-80 FAEF -> 000289BA # 2-90-81 FAF0 -> 000289BB # 2-90-82 FAF1 -> 000092B2 # 2-90-83 FAF2 -> 000092BF # 2-90-84 FAF3 -> 000092C0 # 2-90-85 FAF4 -> 000092C6 # 2-90-86 FAF5 -> 000092CE # 2-90-87 FAF6 -> 000092D0 # 2-90-88 FAF7 -> 000092D7 # 2-90-89 FAF8 -> 000092D9 # 2-90-90 FAF9 -> 000092E5 # 2-90-91 FAFA -> 000092E7 # 2-90-92 FAFB -> 00009311 # 2-90-93 FAFC -> 00028A1E # 2-90-94 FB40 -> 00028A29 # 2-91-1 FB41 -> 000092F7 # 2-91-2 FB42 -> 000092F9 # 2-91-3 FB43 -> 000092FB # 2-91-4 FB44 -> 00009302 # 2-91-5 FB45 -> 0000930D # 2-91-6 FB46 -> 00009315 # 2-91-7 FB47 -> 0000931D # 2-91-8 FB48 -> 0000931E # 2-91-9 FB49 -> 00009327 # 2-91-10 FB4A -> 00009329 # 2-91-11 FB4B -> 00028A71 # 2-91-12 FB4C -> 00028A43 # 2-91-13 FB4D -> 00009347 # 2-91-14 FB4E -> 00009351 # 2-91-15 FB4F -> 00009357 # 2-91-16 FB50 -> 0000935A # 2-91-17 FB51 -> 0000936B # 2-91-18 FB52 -> 00009371 # 2-91-19 FB53 -> 00009373 # 2-91-20 FB54 -> 000093A1 # 2-91-21 FB55 -> 00028A99 # 2-91-22 FB56 -> 00028ACD # 2-91-23 FB57 -> 00009388 # 2-91-24 FB58 -> 0000938B # 2-91-25 FB59 -> 0000938F # 2-91-26 FB5A -> 0000939E # 2-91-27 FB5B -> 000093F5 # 2-91-28 FB5C -> 00028AE4 # 2-91-29 FB5D -> 00028ADD # 2-91-30 FB5E -> 000093F1 # 2-91-31 FB5F -> 000093C1 # 2-91-32 FB60 -> 000093C7 # 2-91-33 FB61 -> 000093DC # 2-91-34 FB62 -> 000093E2 # 2-91-35 FB63 -> 000093E7 # 2-91-36 FB64 -> 00009409 # 2-91-37 FB65 -> 0000940F # 2-91-38 FB66 -> 00009416 # 2-91-39 FB67 -> 00009417 # 2-91-40 FB68 -> 000093FB # 2-91-41 FB69 -> 00009432 # 2-91-42 FB6A -> 00009434 # 2-91-43 FB6B -> 0000943B # 2-91-44 FB6C -> 00009445 # 2-91-45 FB6D -> 00028BC1 # 2-91-46 FB6E -> 00028BEF # 2-91-47 FB6F -> 0000946D # 2-91-48 FB70 -> 0000946F # 2-91-49 FB71 -> 00009578 # 2-91-50 FB72 -> 00009579 # 2-91-51 FB73 -> 00009586 # 2-91-52 FB74 -> 0000958C # 2-91-53 FB75 -> 0000958D # 2-91-54 FB76 -> 00028D10 # 2-91-55 FB77 -> 000095AB # 2-91-56 FB78 -> 000095B4 # 2-91-57 FB79 -> 00028D71 # 2-91-58 FB7A -> 000095C8 # 2-91-59 FB7B -> 00028DFB # 2-91-60 FB7C -> 00028E1F # 2-91-61 FB7D -> 0000962C # 2-91-62 FB7E -> 00009633 # 2-91-63 FB80 -> 00009634 # 2-91-64 FB81 -> 00028E36 # 2-91-65 FB82 -> 0000963C # 2-91-66 FB83 -> 00009641 # 2-91-67 FB84 -> 00009661 # 2-91-68 FB85 -> 00028E89 # 2-91-69 FB86 -> 00009682 # 2-91-70 FB87 -> 00028EEB # 2-91-71 FB88 -> 0000969A # 2-91-72 FB89 -> 00028F32 # 2-91-73 FB8A -> 000049E7 # 2-91-74 FB8B -> 000096A9 # 2-91-75 FB8C -> 000096AF # 2-91-76 FB8D -> 000096B3 # 2-91-77 FB8E -> 000096BA # 2-91-78 FB8F -> 000096BD # 2-91-79 FB90 -> 000049FA # 2-91-80 FB91 -> 00028FF8 # 2-91-81 FB92 -> 000096D8 # 2-91-82 FB93 -> 000096DA # 2-91-83 FB94 -> 000096DD # 2-91-84 FB95 -> 00004A04 # 2-91-85 FB96 -> 00009714 # 2-91-86 FB97 -> 00009723 # 2-91-87 FB98 -> 00004A29 # 2-91-88 FB99 -> 00009736 # 2-91-89 FB9A -> 00009741 # 2-91-90 FB9B -> 00009747 # 2-91-91 FB9C -> 00009755 # 2-91-92 FB9D -> 00009757 # 2-91-93 FB9E -> 0000975B # 2-91-94 FB9F -> 0000976A # 2-92-1 FBA0 -> 000292A0 # 2-92-2 FBA1 -> 000292B1 # 2-92-3 FBA2 -> 00009796 # 2-92-4 FBA3 -> 0000979A # 2-92-5 FBA4 -> 0000979E # 2-92-6 FBA5 -> 000097A2 # 2-92-7 FBA6 -> 000097B1 # 2-92-8 FBA7 -> 000097B2 # 2-92-9 FBA8 -> 000097BE # 2-92-10 FBA9 -> 000097CC # 2-92-11 FBAA -> 000097D1 # 2-92-12 FBAB -> 000097D4 # 2-92-13 FBAC -> 000097D8 # 2-92-14 FBAD -> 000097D9 # 2-92-15 FBAE -> 000097E1 # 2-92-16 FBAF -> 000097F1 # 2-92-17 FBB0 -> 00009804 # 2-92-18 FBB1 -> 0000980D # 2-92-19 FBB2 -> 0000980E # 2-92-20 FBB3 -> 00009814 # 2-92-21 FBB4 -> 00009816 # 2-92-22 FBB5 -> 00004ABC # 2-92-23 FBB6 -> 00029490 # 2-92-24 FBB7 -> 00009823 # 2-92-25 FBB8 -> 00009832 # 2-92-26 FBB9 -> 00009833 # 2-92-27 FBBA -> 00009825 # 2-92-28 FBBB -> 00009847 # 2-92-29 FBBC -> 00009866 # 2-92-30 FBBD -> 000098AB # 2-92-31 FBBE -> 000098AD # 2-92-32 FBBF -> 000098B0 # 2-92-33 FBC0 -> 000295CF # 2-92-34 FBC1 -> 000098B7 # 2-92-35 FBC2 -> 000098B8 # 2-92-36 FBC3 -> 000098BB # 2-92-37 FBC4 -> 000098BC # 2-92-38 FBC5 -> 000098BF # 2-92-39 FBC6 -> 000098C2 # 2-92-40 FBC7 -> 000098C7 # 2-92-41 FBC8 -> 000098CB # 2-92-42 FBC9 -> 000098E0 # 2-92-43 FBCA -> 0002967F # 2-92-44 FBCB -> 000098E1 # 2-92-45 FBCC -> 000098E3 # 2-92-46 FBCD -> 000098E5 # 2-92-47 FBCE -> 000098EA # 2-92-48 FBCF -> 000098F0 # 2-92-49 FBD0 -> 000098F1 # 2-92-50 FBD1 -> 000098F3 # 2-92-51 FBD2 -> 00009908 # 2-92-52 FBD3 -> 00004B3B # 2-92-53 FBD4 -> 000296F0 # 2-92-54 FBD5 -> 00009916 # 2-92-55 FBD6 -> 00009917 # 2-92-56 FBD7 -> 00029719 # 2-92-57 FBD8 -> 0000991A # 2-92-58 FBD9 -> 0000991B # 2-92-59 FBDA -> 0000991C # 2-92-60 FBDB -> 00029750 # 2-92-61 FBDC -> 00009931 # 2-92-62 FBDD -> 00009932 # 2-92-63 FBDE -> 00009933 # 2-92-64 FBDF -> 0000993A # 2-92-65 FBE0 -> 0000993B # 2-92-66 FBE1 -> 0000993C # 2-92-67 FBE2 -> 00009940 # 2-92-68 FBE3 -> 00009941 # 2-92-69 FBE4 -> 00009946 # 2-92-70 FBE5 -> 0000994D # 2-92-71 FBE6 -> 0000994E # 2-92-72 FBE7 -> 0000995C # 2-92-73 FBE8 -> 0000995F # 2-92-74 FBE9 -> 00009960 # 2-92-75 FBEA -> 000099A3 # 2-92-76 FBEB -> 000099A6 # 2-92-77 FBEC -> 000099B9 # 2-92-78 FBED -> 000099BD # 2-92-79 FBEE -> 000099BF # 2-92-80 FBEF -> 000099C3 # 2-92-81 FBF0 -> 000099C9 # 2-92-82 FBF1 -> 000099D4 # 2-92-83 FBF2 -> 000099D9 # 2-92-84 FBF3 -> 000099DE # 2-92-85 FBF4 -> 000298C6 # 2-92-86 FBF5 -> 000099F0 # 2-92-87 FBF6 -> 000099F9 # 2-92-88 FBF7 -> 000099FC # 2-92-89 FBF8 -> 00009A0A # 2-92-90 FBF9 -> 00009A11 # 2-92-91 FBFA -> 00009A16 # 2-92-92 FBFB -> 00009A1A # 2-92-93 FBFC -> 00009A20 # 2-92-94 FC40 -> 00009A31 # 2-93-1 FC41 -> 00009A36 # 2-93-2 FC42 -> 00009A44 # 2-93-3 FC43 -> 00009A4C # 2-93-4 FC44 -> 00009A58 # 2-93-5 FC45 -> 00004BC2 # 2-93-6 FC46 -> 00009AAF # 2-93-7 FC47 -> 00004BCA # 2-93-8 FC48 -> 00009AB7 # 2-93-9 FC49 -> 00004BD2 # 2-93-10 FC4A -> 00009AB9 # 2-93-11 FC4B -> 00029A72 # 2-93-12 FC4C -> 00009AC6 # 2-93-13 FC4D -> 00009AD0 # 2-93-14 FC4E -> 00009AD2 # 2-93-15 FC4F -> 00009AD5 # 2-93-16 FC50 -> 00004BE8 # 2-93-17 FC51 -> 00009ADC # 2-93-18 FC52 -> 00009AE0 # 2-93-19 FC53 -> 00009AE5 # 2-93-20 FC54 -> 00009AE9 # 2-93-21 FC55 -> 00009B03 # 2-93-22 FC56 -> 00009B0C # 2-93-23 FC57 -> 00009B10 # 2-93-24 FC58 -> 00009B12 # 2-93-25 FC59 -> 00009B16 # 2-93-26 FC5A -> 00009B1C # 2-93-27 FC5B -> 00009B2B # 2-93-28 FC5C -> 00009B33 # 2-93-29 FC5D -> 00009B3D # 2-93-30 FC5E -> 00004C20 # 2-93-31 FC5F -> 00009B4B # 2-93-32 FC60 -> 00009B63 # 2-93-33 FC61 -> 00009B65 # 2-93-34 FC62 -> 00009B6B # 2-93-35 FC63 -> 00009B6C # 2-93-36 FC64 -> 00009B73 # 2-93-37 FC65 -> 00009B76 # 2-93-38 FC66 -> 00009B77 # 2-93-39 FC67 -> 00009BA6 # 2-93-40 FC68 -> 00009BAC # 2-93-41 FC69 -> 00009BB1 # 2-93-42 FC6A -> 00029DDB # 2-93-43 FC6B -> 00029E3D # 2-93-44 FC6C -> 00009BB2 # 2-93-45 FC6D -> 00009BB8 # 2-93-46 FC6E -> 00009BBE # 2-93-47 FC6F -> 00009BC7 # 2-93-48 FC70 -> 00009BF3 # 2-93-49 FC71 -> 00009BD8 # 2-93-50 FC72 -> 00009BDD # 2-93-51 FC73 -> 00009BE7 # 2-93-52 FC74 -> 00009BEA # 2-93-53 FC75 -> 00009BEB # 2-93-54 FC76 -> 00009BEF # 2-93-55 FC77 -> 00009BEE # 2-93-56 FC78 -> 00029E15 # 2-93-57 FC79 -> 00009BFA # 2-93-58 FC7A -> 00029E8A # 2-93-59 FC7B -> 00009BF7 # 2-93-60 FC7C -> 00029E49 # 2-93-61 FC7D -> 00009C16 # 2-93-62 FC7E -> 00009C18 # 2-93-63 FC80 -> 00009C19 # 2-93-64 FC81 -> 00009C1A # 2-93-65 FC82 -> 00009C1D # 2-93-66 FC83 -> 00009C22 # 2-93-67 FC84 -> 00009C27 # 2-93-68 FC85 -> 00009C29 # 2-93-69 FC86 -> 00009C2A # 2-93-70 FC87 -> 00029EC4 # 2-93-71 FC88 -> 00009C31 # 2-93-72 FC89 -> 00009C36 # 2-93-73 FC8A -> 00009C37 # 2-93-74 FC8B -> 00009C45 # 2-93-75 FC8C -> 00009C5C # 2-93-76 FC8D -> 00029EE9 # 2-93-77 FC8E -> 00009C49 # 2-93-78 FC8F -> 00009C4A # 2-93-79 FC90 -> 00029EDB # 2-93-80 FC91 -> 00009C54 # 2-93-81 FC92 -> 00009C58 # 2-93-82 FC93 -> 00009C5B # 2-93-83 FC94 -> 00009C5D # 2-93-84 FC95 -> 00009C5F # 2-93-85 FC96 -> 00009C69 # 2-93-86 FC97 -> 00009C6A # 2-93-87 FC98 -> 00009C6B # 2-93-88 FC99 -> 00009C6D # 2-93-89 FC9A -> 00009C6E # 2-93-90 FC9B -> 00009C70 # 2-93-91 FC9C -> 00009C72 # 2-93-92 FC9D -> 00009C75 # 2-93-93 FC9E -> 00009C7A # 2-93-94 FC9F -> 00009CE6 # 2-94-1 FCA0 -> 00009CF2 # 2-94-2 FCA1 -> 00009D0B # 2-94-3 FCA2 -> 00009D02 # 2-94-4 FCA3 -> 00029FCE # 2-94-5 FCA4 -> 00009D11 # 2-94-6 FCA5 -> 00009D17 # 2-94-7 FCA6 -> 00009D18 # 2-94-8 FCA7 -> 0002A02F # 2-94-9 FCA8 -> 00004CC4 # 2-94-10 FCA9 -> 0002A01A # 2-94-11 FCAA -> 00009D32 # 2-94-12 FCAB -> 00004CD1 # 2-94-13 FCAC -> 00009D42 # 2-94-14 FCAD -> 00009D4A # 2-94-15 FCAE -> 00009D5F # 2-94-16 FCAF -> 00009D62 # 2-94-17 FCB0 -> 0002A0F9 # 2-94-18 FCB1 -> 00009D69 # 2-94-19 FCB2 -> 00009D6B # 2-94-20 FCB3 -> 0002A082 # 2-94-21 FCB4 -> 00009D73 # 2-94-22 FCB5 -> 00009D76 # 2-94-23 FCB6 -> 00009D77 # 2-94-24 FCB7 -> 00009D7E # 2-94-25 FCB8 -> 00009D84 # 2-94-26 FCB9 -> 00009D8D # 2-94-27 FCBA -> 00009D99 # 2-94-28 FCBB -> 00009DA1 # 2-94-29 FCBC -> 00009DBF # 2-94-30 FCBD -> 00009DB5 # 2-94-31 FCBE -> 00009DB9 # 2-94-32 FCBF -> 00009DBD # 2-94-33 FCC0 -> 00009DC3 # 2-94-34 FCC1 -> 00009DC7 # 2-94-35 FCC2 -> 00009DC9 # 2-94-36 FCC3 -> 00009DD6 # 2-94-37 FCC4 -> 00009DDA # 2-94-38 FCC5 -> 00009DDF # 2-94-39 FCC6 -> 00009DE0 # 2-94-40 FCC7 -> 00009DE3 # 2-94-41 FCC8 -> 00009DF4 # 2-94-42 FCC9 -> 00004D07 # 2-94-43 FCCA -> 00009E0A # 2-94-44 FCCB -> 00009E02 # 2-94-45 FCCC -> 00009E0D # 2-94-46 FCCD -> 00009E19 # 2-94-47 FCCE -> 00009E1C # 2-94-48 FCCF -> 00009E1D # 2-94-49 FCD0 -> 00009E7B # 2-94-50 FCD1 -> 00022218 # 2-94-51 FCD2 -> 00009E80 # 2-94-52 FCD3 -> 00009E85 # 2-94-53 FCD4 -> 00009E9B # 2-94-54 FCD5 -> 00009EA8 # 2-94-55 FCD6 -> 0002A38C # 2-94-56 FCD7 -> 00009EBD # 2-94-57 FCD8 -> 0002A437 # 2-94-58 FCD9 -> 00009EDF # 2-94-59 FCDA -> 00009EE7 # 2-94-60 FCDB -> 00009EEE # 2-94-61 FCDC -> 00009EFF # 2-94-62 FCDD -> 00009F02 # 2-94-63 FCDE -> 00004D77 # 2-94-64 FCDF -> 00009F03 # 2-94-65 FCE0 -> 00009F17 # 2-94-66 FCE1 -> 00009F19 # 2-94-67 FCE2 -> 00009F2F # 2-94-68 FCE3 -> 00009F37 # 2-94-69 FCE4 -> 00009F3A # 2-94-70 FCE5 -> 00009F3D # 2-94-71 FCE6 -> 00009F41 # 2-94-72 FCE7 -> 00009F45 # 2-94-73 FCE8 -> 00009F46 # 2-94-74 FCE9 -> 00009F53 # 2-94-75 FCEA -> 00009F55 # 2-94-76 FCEB -> 00009F58 # 2-94-77 FCEC -> 0002A5F1 # 2-94-78 FCED -> 00009F5D # 2-94-79 FCEE -> 0002A602 # 2-94-80 FCEF -> 00009F69 # 2-94-81 FCF0 -> 0002A61A # 2-94-82 FCF1 -> 00009F6D # 2-94-83 FCF2 -> 00009F70 # 2-94-84 FCF3 -> 00009F75 # 2-94-85 FCF4 -> 0002A6B2 # 2-94-86 ./mytool/mys/nastaliq.mys0000644000175000017500000003120007574146574015555 0ustar henrichhenrich# nastaliq.mys # GNU Copyright 2002, Gaspar Sinai # # This is a Unicode map for nastaliq.ttf. # Unfortunatelly some glyphs are not Unicode encoded, this file # maps Nastaliq to Unicode. # # How to create a map: # mytool -convert my -write nastaliq.my -mys nastaliq.mys -rmys nastaliq.mys # # How to use the map: # When you specify nastaliq.ttf in the virtual font # you should add ':' and the map file name without the .my extension: # like this: # nastaliq.ttf:nastaliq,otherfonts... # # This map works with this nastaliq.ttf: # md5sum nastaliq.ttf # 25f564202072e46593b036bdf0f6a818 /home/gsinai/nastaliq.ttf # # Revision 1.3 # From: Gaspar Sinai 2002-10-18 # Checked with Urdu-Nastaliq.kmap and found the following missing # from nastaliq.ttf: # - U+0626 (or decomposed U+064A + U+0654) Urdu Yeh w/Hamza # - U+06C2 (or decomposed U+06C1 + U+0654) Urdu Hey Goal w/ Hamza # - U+0690 Urdu Daaal # - U+06C3 Urdu Teh Marbuta Goal # # Revision 1.2 # From: Gaspar Sinai 2002-10-17 # Based upon comments from Miikka # - 0643 ARABIC LETTER KAF 0x0643 -> U+06A9 # This fixes U+06A9 problem in Revision 1.1 # - 06C7 related stuff deleted (U+06C7 U+FBD7 U+FBD8) # - These 4 are converted to Urdu Kaf # 0xFED9 -> U+FB8E # 0xFEDA -> U+FB8F # 0xFEDB -> U+FB90 # 0xFEDC -> U+FB91 # - Made this map a mys map. # - Assigned the following shapes in bin/shape.pl: # 000006A9 0000200D 00000627 -> A0001002 00000000 00000000 A0004002 # 000006A9 0000200D 00000644 -> A0001003 A0002003 A0003003 A0004003 # - according to these private codes, added the following private map here: # A0001002 -> FC37 # A0004002 -> FC80 # A0001003 -> FC3B # A0002003 -> FCC7 # A0003003 -> FCEB # A0004003 -> FC81 # - still problem displaying U+0626 (in messages.po) # # Revision 1.1.1 # From: Gaspar Sinai 2002-10-13 # - Font does not have # U+0626 ARABIC LETTER YEH WITH HAMZA ABOVE # o decomposed U+064A U+0654 wont have U+064A # o U+FE89 is also missing (isolated form of U+0626) # o U+FE8A is also missing (final form of U+0626) # o U+FE8B is present (initial form of U+0626) # o U+FE8C is present (medial form of U+0626) # Revision 1.1 # From: Gaspar Sinai 2002-10-13 # - Added revision log # - Removed unnecessary stuff between 00C4..00F5 # - Uncommented Shan's comments and put a preceeeding line with '#???' # - Commented 200D and 200C (ZWNJ and ZWJ) as they are not needed. # - Updated the rightmost sample glyph # - All shapes are present (maybe ok?) but the original character # is still missing from messages.po sample: # # missing: U+06C1 ARABIC LETTER HEH GOAL # present: U+FBA6 U+FBA8 U+FBA9 U+FBA7 (iso ini medi fina) # # missing: U+0628 ARABIC LETTER BEH # presnet: U+FE8F U+FE91 U+FE92 U+FE90 (iso ini medi fina) # # - All shapes are missing for: # present: U+06A9 ARABIC LETTER KEHEH # missing: U+FB8E U+FB90 U+FB91 U+FB8F (iso ini medi fina) # # Revision 1.0 # From: S H A N 2002-10-13 # -Mapped Arabic-Indic digits to Eastern Arabic-Indic digits # - Remapped ARABIC LETTER HEH (0647) # to ARABIC LETTER HEH DOACHASHMEE (06BE) # - Commented out some glyphs # # About nastaliq.ttf # ================== # # Home of this font on the Web (http://www.arbornet.org/~tabish/u-font) # says, and I quote: "Urdu Nastaliq Unicode is a Windows True-Type Urdu # Font which uses Unicode Arabic coding." # # A few features that makes it distinct from the rest of the efforts: # # 1. Unicode implementation based on the following: # a. Unicode Arabic Range 0600-06FF, # b. Unicode Arabic Presentation Froms-A FB50-FDFF # c. Unicode Arabic Presentation Forms-B FE70-FEFF # 2. Inclusion of word "Ka" and "Kal" # # Distribution/CopyRights: # ------------------------ # # Urdu Nastaliq Unicode, True-Type Urdu font. # Copyright(R)2002 Shehzad Ali and Tabish # This font is free software; you can redistribute it and/or modify it # urder the terms of the GNU General Public License as published by # the Free Software Foundation # # The first column is Unicodee # The second column is Nastaliq Code # NAME=nastaliq.my COMM=Map Yudit id's to a nastaliq glyph. COMM=There are six additional private ligatures: COMM=A0001002 -> FC37 COMM=A0004002 -> FC80 COMM=A0001003 -> FC3B COMM=A0002003 -> FCC7 COMM=A0003003 -> FCEB COMM=A0004003 -> FC81 TYPE=0 SECTION=encode ENCODE=1 # KEY_WIDTH == 2 for 32 bit key KEY_WIDTH=2 VALUE_WIDTH=1 KEY_LENGTH=0 VALUE_LENGTH=0 00000020 -> 0020 # 00000021 -> 0021 # ! 00000022 -> 0022 # " 00000023 -> 0023 # # 00000024 -> 0024 # $ 00000025 -> 0025 # % 00000026 -> 0026 # & 00000027 -> 0027 # ' 00000028 -> 0028 # ( 00000029 -> 0029 # ) 0000002A -> 002A # * 0000002B -> 002B # + 0000002C -> 002C # , 0000002D -> 002D # - 0000002E -> 002E # . 0000002F -> 002F # / 00000030 -> 0030 # 0 00000031 -> 0031 # 1 00000032 -> 0032 # 2 00000033 -> 0033 # 3 00000034 -> 0034 # 4 00000035 -> 0035 # 5 00000036 -> 0036 # 6 00000037 -> 0037 # 7 00000038 -> 0038 # 8 00000039 -> 0039 # 9 0000003A -> 003A # : 0000003B -> 003B # ; 0000003C -> 003C # < 0000003D -> 003D # = 0000003E -> 003E # > 0000003F -> 003F # ? 00000040 -> 0040 # @ 00000041 -> 0041 # A 00000042 -> 0042 # B 00000043 -> 0043 # C 00000044 -> 0044 # D 00000045 -> 0045 # E 00000046 -> 0046 # F 00000047 -> 0047 # G 00000048 -> 0048 # H 00000049 -> 0049 # I 0000004A -> 004A # J 0000004B -> 004B # K 0000004C -> 004C # L 0000004D -> 004D # M 0000004E -> 004E # N 0000004F -> 004F # O 00000050 -> 0050 # P 00000051 -> 0051 # Q 00000052 -> 0052 # R 00000053 -> 0053 # S 00000054 -> 0054 # T 00000055 -> 0055 # U 00000056 -> 0056 # V 00000057 -> 0057 # W 00000058 -> 0058 # X 00000059 -> 0059 # Y 0000005A -> 005A # Z 0000005B -> 005B # [ 0000005C -> 005C # \ 0000005D -> 005D # ] 0000005E -> 005E # ^ 0000005F -> 005F # _ 00000060 -> 0060 # ` 00000061 -> 0061 # a 00000062 -> 0062 # b 00000063 -> 0063 # c 00000064 -> 0064 # d 00000065 -> 0065 # e 00000066 -> 0066 # f 00000067 -> 0067 # g 00000068 -> 0068 # h 00000069 -> 0069 # i 0000006A -> 006A # j 0000006B -> 006B # k 0000006C -> 006C # l 0000006D -> 006D # m 0000006E -> 006E # n 0000006F -> 006F # o 00000070 -> 0070 # p 00000071 -> 0071 # q 00000072 -> 0072 # r 00000073 -> 0073 # s 00000074 -> 0074 # t 00000075 -> 0075 # u 00000076 -> 0076 # v 00000077 -> 0077 # w 00000078 -> 0078 # x 00000079 -> 0079 # y 0000007A -> 007A # z 0000007B -> 007B # { 0000007C -> 007C # | 0000007D -> 007D # } 0000007E -> 007E # ~ 0000060C -> 060C # ، 0000061B -> 061B # ؛ 0000061F -> 061F # ؟ 00000621 -> 0621 # ء 00000622 -> 0622 # آ 00000627 -> 0627 # ا 00000628 -> 0628 # ب 0000062A -> 062A # ت 0000062B -> 062B # ث 0000062C -> 062C # ج 0000062D -> 062D # ح 0000062E -> 062E # خ 0000062F -> 062F # د 00000630 -> 0630 # ذ 00000631 -> 0631 # ر 00000632 -> 0632 # ز 00000633 -> 0633 # س 00000634 -> 0634 # ش 00000635 -> 0635 # ص 00000636 -> 0636 # ض 00000637 -> 0637 # ط 00000638 -> 0638 # ظ 00000639 -> 0639 # ع 0000063A -> 063A # غ 00000640 -> 0640 # ـ 00000641 -> 0641 # ف 00000642 -> 0642 # ق 000006A9 -> 0643 # ك 00000644 -> 0644 # ل 00000645 -> 0645 # م 00000646 -> 0646 # ن # #REMAP ARABIC LETTER HEH (0647) #TO ARABIC LETTER HEH DOACHASHMEE (06BE) #iso,ini,med,fin: FBAA FBAC FBAD FBAB # 000006BE -> 0647 # ھ 00000648 -> 0648 # و #??? 0649 ARABIC LETTER ALEF MAKSURA 00000649 -> 0649 # ى 0000064B -> 064B # ً 0000064E -> 064E # َ 0000064F -> 064F # ُ 00000650 -> 0650 # ِ 00000651 -> 0651 # ّ 00000654 -> 0654 # ٔ # # REMAP START # Arabic-Indic digits to Eastern Arabic-Indic digits # 000006F0 -> 0660 # ۰ 000006F1 -> 0661 # ۱ 000006F2 -> 0662 # ۲ 000006F3 -> 0663 # ۳ 000006F4 -> 0664 # ۴ 000006F5 -> 0665 # ۵ 000006F6 -> 0666 # ۶ 000006F7 -> 0667 # ۷ 000006F8 -> 0668 # ۸ 000006F9 -> 0669 # ۹ # #REMAP END # 0000066A -> 066A # ٪ 00000670 -> 0670 # ٰ 00000679 -> 0679 # ٹ 0000067E -> 067E # پ 00000686 -> 0686 # چ 00000688 -> 0688 # ڈ 00000691 -> 0691 # ڑ 00000698 -> 0698 # ژ 000006A9 -> 06A9 # ک 000006AF -> 06AF # گ 000006BA -> 06BA # ں # Since waw + ulta pesh isn't in Unicode yet # 0x06C7 0x06C7 # ۇ 000006C0 -> 06C0 # ۀ 000006CC -> 06CC # ی 000006D2 -> 06D2 # ے 000006D3 -> 06D3 # ۓ 000006D4 -> 06D4 # ۔ 000006D5 -> 06D5 # ە # # ZWJ and ZWNJ can be safely commented out # 0x200C 0x200C # 0x200D 0x200D # 0000FB56 -> FB56 # ﭖ 0000FB57 -> FB57 # ﭗ 0000FB58 -> FB58 # ﭘ 0000FB59 -> FB59 # ﭙ 0000FB66 -> FB66 # ﭦ 0000FB67 -> FB67 # ﭧ 0000FB68 -> FB68 # ﭨ 0000FB69 -> FB69 # ﭩ 0000FB7A -> FB7A # ﭺ 0000FB7B -> FB7B # ﭻ 0000FB7C -> FB7C # ﭼ 0000FB7D -> FB7D # ﭽ 0000FB88 -> FB88 # ﮈ 0000FB89 -> FB89 # ﮉ 0000FB8A -> FB8A # ﮊ 0000FB8B -> FB8B # ﮋ 0000FB8C -> FB8C # ﮌ 0000FB8D -> FB8D # ﮍ 0000FB92 -> FB92 # ﮒ 0000FB93 -> FB93 # ﮓ 0000FB94 -> FB94 # ﮔ 0000FB95 -> FB95 # ﮕ 0000FB9E -> FB9E # ﮞ 0000FB9F -> FB9F # ﮟ 0000FBA6 -> FBA6 # ﮦ 0000FBA7 -> FBA7 # ﮧ 0000FBA8 -> FBA8 # ﮨ 0000FBA9 -> FBA9 # ﮩ 0000FBAA -> FBAA # ﮪ 0000FBAB -> FBAB # ﮫ 0000FBAC -> FBAC # ﮬ 0000FBAD -> FBAD # ﮭ 0000FBAE -> FBAE # ﮮ 0000FBAF -> FBAF # ﮯ # # 0xFBD7 ARABIC LETTER U (06C7) ISOLATED FORM # 0xFBD8 ARABIC LETTER U (06C7) FINAL FORM # # Since waw + ulta pesh isn't in Unicode yet # 0xFBD7 0xFBD7 # ﯗ # 0xFBD8 0xFBD8 # ﯘ 0000FBFC -> FBFC # ﯼ 0000FBFD -> FBFD # ﯽ 0000FBFE -> FBFE # ﯾ 0000FBFF -> FBFF # ﯿ 0000FC5D -> FC5D # ﱝ 0000FC90 -> FC90 # ﲐ 0000FD3C -> FD3C # ﴼ 0000FD3D -> FD3D # ﴽ 0000FE70 -> FE70 # ﹰ 0000FE71 -> FE71 # ﹱ 0000FE76 -> FE76 # ﹶ 0000FE77 -> FE77 # ﹷ 0000FE78 -> FE78 # ﹸ 0000FE79 -> FE79 # ﹹ 0000FE7A -> FE7A # ﹺ 0000FE7B -> FE7B # ﹻ 0000FE7C -> FE7C # ﹼ 0000FE7D -> FE7D # ﹽ 0000FE80 -> FE80 # ﺀ 0000FE81 -> FE81 # ﺁ 0000FE82 -> FE82 # ﺂ 0000FE8B -> FE8B # ﺋ 0000FE8C -> FE8C # ﺌ 0000FE8D -> FE8D # ﺍ 0000FE8E -> FE8E # ﺎ 0000FE8F -> FE8F # ﺏ 0000FE90 -> FE90 # ﺐ 0000FE91 -> FE91 # ﺑ 0000FE92 -> FE92 # ﺒ 0000FE95 -> FE95 # ﺕ 0000FE96 -> FE96 # ﺖ 0000FE97 -> FE97 # ﺗ 0000FE98 -> FE98 # ﺘ 0000FE99 -> FE99 # ﺙ 0000FE9A -> FE9A # ﺚ 0000FE9B -> FE9B # ﺛ 0000FE9C -> FE9C # ﺜ 0000FE9D -> FE9D # ﺝ 0000FE9E -> FE9E # ﺞ 0000FE9F -> FE9F # ﺟ 0000FEA0 -> FEA0 # ﺠ 0000FEA1 -> FEA1 # ﺡ 0000FEA2 -> FEA2 # ﺢ 0000FEA3 -> FEA3 # ﺣ 0000FEA4 -> FEA4 # ﺤ 0000FEA5 -> FEA5 # ﺥ 0000FEA6 -> FEA6 # ﺦ 0000FEA7 -> FEA7 # ﺧ 0000FEA8 -> FEA8 # ﺨ 0000FEA9 -> FEA9 # ﺩ 0000FEAA -> FEAA # ﺪ 0000FEAB -> FEAB # ﺫ 0000FEAC -> FEAC # ﺬ 0000FEAD -> FEAD # ﺭ 0000FEAE -> FEAE # ﺮ 0000FEAF -> FEAF # ﺯ 0000FEB0 -> FEB0 # ﺰ 0000FEB1 -> FEB1 # ﺱ 0000FEB2 -> FEB2 # ﺲ 0000FEB3 -> FEB3 # ﺳ 0000FEB4 -> FEB4 # ﺴ 0000FEB5 -> FEB5 # ﺵ 0000FEB6 -> FEB6 # ﺶ 0000FEB7 -> FEB7 # ﺷ 0000FEB8 -> FEB8 # ﺸ 0000FEB9 -> FEB9 # ﺹ 0000FEBA -> FEBA # ﺺ 0000FEBB -> FEBB # ﺻ 0000FEBC -> FEBC # ﺼ 0000FEBD -> FEBD # ﺽ 0000FEBE -> FEBE # ﺾ 0000FEBF -> FEBF # ﺿ 0000FEC0 -> FEC0 # ﻀ 0000FEC1 -> FEC1 # ﻁ 0000FEC2 -> FEC2 # ﻂ 0000FEC3 -> FEC3 # ﻃ 0000FEC4 -> FEC4 # ﻄ 0000FEC5 -> FEC5 # ﻅ 0000FEC6 -> FEC6 # ﻆ 0000FEC7 -> FEC7 # ﻇ 0000FEC8 -> FEC8 # ﻈ 0000FEC9 -> FEC9 # ﻉ 0000FECA -> FECA # ﻊ 0000FECB -> FECB # ﻋ 0000FECC -> FECC # ﻌ 0000FECD -> FECD # ﻍ 0000FECE -> FECE # ﻎ 0000FECF -> FECF # ﻏ 0000FED0 -> FED0 # ﻐ 0000FED1 -> FED1 # ﻑ 0000FED2 -> FED2 # ﻒ 0000FED3 -> FED3 # ﻓ 0000FED4 -> FED4 # ﻔ 0000FED5 -> FED5 # ﻕ 0000FED6 -> FED6 # ﻖ 0000FED7 -> FED7 # ﻗ 0000FED8 -> FED8 # ﻘ # These 4 should be converted to Urdu kaf 0000FB8E -> FED9 # ﮎ 0000FB8F -> FEDA # ﮏ 0000FB90 -> FEDB # ﮐ 0000FB91 -> FEDC # ﮑ # 0000FEDD -> FEDD # ﻝ 0000FEDE -> FEDE # ﻞ 0000FEDF -> FEDF # ﻟ 0000FEE0 -> FEE0 # ﻠ 0000FEE1 -> FEE1 # ﻡ 0000FEE2 -> FEE2 # ﻢ 0000FEE3 -> FEE3 # ﻣ 0000FEE4 -> FEE4 # ﻤ 0000FEE5 -> FEE5 # ﻥ 0000FEE6 -> FEE6 # ﻦ 0000FEE7 -> FEE7 # ﻧ 0000FEE8 -> FEE8 # ﻨ 0000FEE9 -> FEE9 # ﻩ 0000FEEA -> FEEA # ﻪ 0000FEED -> FEED # ﻭ 0000FEEE -> FEEE # ﻮ 0000FEF3 -> FEF3 # ﻳ 0000FEF4 -> FEF4 # ﻴ 0000FEFB -> FEFB # ﻻ 0000FEFC -> FEFC # ﻼ # The followings are not defined in Unicode. We use our own Ligature code. # in sync with shape.mys A0001002 -> FC37 # isolated U+06A9 U+200D U+0627 A0004002 -> FC80 # final U+06A9 U+200D U+0627 A0001003 -> FC3B # isolated U+06A9 U+200D U+0643 A0002003 -> FCC7 # initial U+06A9 U+200D U+0643 A0003003 -> FCEB # medial U+06A9 U+200D U+0643 A0004003 -> FC81 # final U+06A9 U+200D U+0643 COMM=end nastaliq.mys ./mytool/mys/IS_DV.mys0000644000175000017500000000677307574146574014666 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-DV COMM=learning to make map anirban mitra # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0901 A2 -> 0902 A3 -> 0903 A4 -> 0905 A5 -> 0906 A6 -> 0907 A7 -> 0908 A8 -> 0909 A9 -> 090A AA -> 090B A6 E9 -> 090C AE -> 090D AB -> 090E AC -> 090F AD -> 0910 B2 -> 0911 AF -> 0912 B0 -> 0913 B1 -> 0914 B3 -> 0915 B4 -> 0916 B5 -> 0917 B6 -> 0918 B7 -> 0919 B8 -> 091A B9 -> 091B BA -> 091C BB -> 091D BC -> 091E BD -> 091F BE -> 0920 BF -> 0921 C0 -> 0922 C1 -> 0923 C2 -> 0924 C3 -> 0925 C4 -> 0926 C5 -> 0927 C6 -> 0928 C7 -> 0929 C8 -> 092A C9 -> 092B CA -> 092C CB -> 092D CC -> 092E CD -> 092F CF -> 0930 D0 -> 0931 D1 -> 0932 D2 -> 0933 D3 -> 0934 D4 -> 0935 D5 -> 0936 D6 -> 0937 D7 -> 0938 D8 -> 0939 E9 -> 093C EA E9 -> 093D DA -> 093E DB -> 093F DC -> 0940 DD -> 0941 DE -> 0942 DF -> 0943 DF E9 -> 0944 E3 -> 0945 E0 -> 0946 E1 -> 0947 E2 -> 0948 E7 -> 0949 E4 -> 094A E5 -> 094B E6 -> 094C E8/ -> 094D E8 E9 -> 094D 200D E8 E8 -> 094D 200C A1 E9 -> 0950 B3 E9 -> 0958 B4 E9 -> 0959 B5 E9 -> 095A BA E9 -> 095B BF E9 -> 095C C0 E9 -> 095D C9 E9 -> 095E CE -> 095F AA E9 -> 0960 A7 E9 -> 0961 DB E9 -> 0962 DC E9 -> 0963 EA -> 0964 EA EA -> 0965 F1 -> 0966 F2 -> 0967 F3 -> 0968 F4 -> 0969 F5 -> 096A F6 -> 096B F7 -> 096C F8 -> 096D F9 -> 096E FA -> 096F COMM=end of encoding ./mytool/mys/example.mys0000644000175000017500000000235007574146574015400 0ustar henrichhenrich# # This is a max 32 bytes-long name # NAME=example.my # # The comment can be multi-line. # COMM=Created by Gaspar Sinai COMM=Date: 1999-12-27 # # 0 is unised 1 is font 2 is key map. # TYPE=2 #------------------------------------------------------------------------------- # Sections #------------------------------------------------------------------------------- # # section name is max 32-byte-long # SECTION=First COMM=Created by Gaspar Sinai COMM=From: example.mys ENCODE=0 # # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word # Key -> Value # KEY_WIDTH=0 VALUE_WIDTH=1 # # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length # The maximum length of the byte-sterenm KEY_LENGTH=0 VALUE_LENGTH=0 # # The map section # Slash '/' means we have a sub-match -> 0043 / 'i -> 0041 # A 'b -> 0042 # B #'A -> 0045 #!This is a comment! #'A/'' -> 0044 # #'A ': -> 0043 #=============================================================================== # # section name is max 32-byte-long # SECTION=Second COMM=Created From: example.mys ENCODE=1 KEY_WIDTH=1 VALUE_WIDTH=0 KEY_LENGTH=0 VALUE_LENGTH=0 0041 0041 -> '2 'A 0041 0042 -> 'A '+ 'B 0041 0043 -> 'A '+ 'C 0041 0044 -> 'A '+ 'D 0041 0045 -> 'e ./mytool/mys/IS_ML.mys0000644000175000017500000000715207574146574014655 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-ML COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0D01 A2 -> 0D02 A3 -> 0D03 A4 -> 0D05 A5 -> 0D06 A6 -> 0D07 A7 -> 0D08 A8 -> 0D09 A9 -> 0D0A AA -> 0D0B A6 E9 -> 0D0C AE -> 0D0D AB -> 0D0E AC -> 0D0F AD -> 0D10 B2 -> 0D11 AF -> 0D12 B0 -> 0D13 B1 -> 0D14 B3 -> 0D15 B4 -> 0D16 B5 -> 0D17 B6 -> 0D18 B7 -> 0D19 B8 -> 0D1A B9 -> 0D1B BA -> 0D1C BB -> 0D1D BC -> 0D1E BD -> 0D1F BE -> 0D20 BF -> 0D21 C0 -> 0D22 C1 -> 0D23 C2 -> 0D24 C3 -> 0D25 C4 -> 0D26 C5 -> 0D27 C6 -> 0D28 C7 -> 0D29 C8 -> 0D2A C9 -> 0D2B CA -> 0D2C CB -> 0D2D CC -> 0D2E CD -> 0D2F CF -> 0D30 D0 -> 0D31 D1 -> 0D32 D2 -> 0D33 D3 -> 0D34 D4 -> 0D35 D5 -> 0D36 D6 -> 0D37 D7 -> 0D38 D8 -> 0D39 E9 -> 0D3C EA E9 -> 0D3D DA -> 0D3E DB -> 0D3F DC -> 0D40 DD -> 0D41 DE -> 0D42 DF -> 0D43 DF E9 -> 0D44 E3 -> 0D45 E0 -> 0D46 E1 -> 0D47 E2 -> 0D48 E7 -> 0D49 E4 -> 0D4A E5 -> 0D4B E6 -> 0D4C E8 -> 0D4D E8 E8 -> 0D4D 200C E8 E9 -> 0D4D 200D A1 E9 -> 0D50 B3 E9 -> 0D58 B4 E9 -> 0D59 B5 E9 -> 0D5A BA E9 -> 0D5B BF E9 -> 0D5C C0 E9 -> 0D5D C9 E9 -> 0D5E CE -> 0D5F AA E9 -> 0D60 A7 E9 -> 0D61 DB E9 -> 0D62 DC E9 -> 0D63 EA -> 0D64 EA EA -> 0D65 F1 -> 0D66 F2 -> 0D67 F3 -> 0D68 F4 -> 0D69 F5 -> 0D6A F6 -> 0D6B F7 -> 0D6C F8 -> 0D6D F9 -> 0D6E FA -> 0D6F COMM=end of encoding ./mytool/mys/bidiclass.mys0000644000175000017500000005666511326531433015702 0ustar henrichhenrichNAME=bidiclass.my COMM= COMM= generated by bidiclass.pl 2010-01-23 COMM= COMM= from ftp://ftp.unicode.org/Public/5.2.0/ucd/UnicodeData.txt COMM= # /* strong */ # XX # 00 Unknown # L # 01 Left-to-Right # LRE # 02 Left-to-Right Embedding # LRO # 03 Left-to-Right Override # R # 04 Right-to-Left # AL # 05 Right-to-Left Arabic # RLE # 06 Right-to-Left Embedding # RLO # 07 Right-to-Left Override # # /* weak */ # PDF # 08 Pop Directional Format # EN # 09 European Number # ES # 0A European Number Separator # ET # 0B European Number Terminator # AN # 0C Arabic Number # CS # 0D Common Number Separator # NSM # 0E Non-Spacing Mark # BN # 0F Boundary Neutral # # /* neutral */ # B # 10 Paragraph Separator # S # 11 Segment Separator # WS # 12 Whitespace # ON # 13 Other Neutrals # # This ia a compressed map: that means all characters in the range are # represented by the first element only. Holes are represented with 0. # COMM=Informative Categories COMM=Compressed Range Format TYPE=0 SECTION=encode ENCODE=1 # # key 2 for 32 bit (32-bitunicode) # value 0 for 8 bit (category) values # KEY_WIDTH=2 VALUE_WIDTH=0 KEY_LENGTH=0 VALUE_LENGTH=0 00000000 -> 0F 00000009 -> 11 0000000A -> 10 0000000B -> 11 0000000C -> 12 0000000D -> 10 0000000E -> 0F 0000001C -> 10 0000001F -> 11 00000020 -> 12 00000021 -> 13 00000023 -> 0B 00000026 -> 13 0000002B -> 0A 0000002C -> 0D 0000002D -> 0A 0000002E -> 0D 00000030 -> 09 0000003A -> 0D 0000003B -> 13 00000041 -> 01 0000005B -> 13 00000061 -> 01 0000007B -> 13 0000007F -> 0F 00000085 -> 10 00000086 -> 0F 000000A0 -> 0D 000000A1 -> 13 000000A2 -> 0B 000000A6 -> 13 000000AA -> 01 000000AB -> 13 000000AD -> 0F 000000AE -> 13 000000B0 -> 0B 000000B2 -> 09 000000B4 -> 13 000000B5 -> 01 000000B6 -> 13 000000B9 -> 09 000000BA -> 01 000000BB -> 13 000000C0 -> 01 000000D7 -> 13 000000D8 -> 01 000000F7 -> 13 000000F8 -> 01 000002B9 -> 13 000002BB -> 01 000002C2 -> 13 000002D0 -> 01 000002D2 -> 13 000002E0 -> 01 000002E5 -> 13 000002EE -> 01 000002EF -> 13 00000300 -> 0E 00000370 -> 01 00000374 -> 13 00000376 -> 01 00000378 -> 00 0000037A -> 01 0000037E -> 13 0000037F -> 00 00000384 -> 13 00000386 -> 01 00000387 -> 13 00000388 -> 01 0000038B -> 00 0000038C -> 01 0000038D -> 00 0000038E -> 01 000003A2 -> 00 000003A3 -> 01 000003F6 -> 13 000003F7 -> 01 00000483 -> 0E 0000048A -> 01 00000526 -> 00 00000531 -> 01 00000557 -> 00 00000559 -> 01 00000560 -> 00 00000561 -> 01 00000588 -> 00 00000589 -> 01 0000058A -> 13 0000058B -> 00 00000591 -> 0E 000005BE -> 04 000005BF -> 0E 000005C0 -> 04 000005C1 -> 0E 000005C3 -> 04 000005C4 -> 0E 000005C6 -> 04 000005C7 -> 0E 000005C8 -> 00 000005D0 -> 04 000005EB -> 00 000005F0 -> 04 000005F5 -> 00 00000600 -> 0C 00000604 -> 00 00000606 -> 13 00000608 -> 05 00000609 -> 0B 0000060B -> 05 0000060C -> 0D 0000060D -> 05 0000060E -> 13 00000610 -> 0E 0000061B -> 05 0000061C -> 00 0000061E -> 05 00000620 -> 00 00000621 -> 05 0000064B -> 0E 0000065F -> 00 00000660 -> 0C 0000066A -> 0B 0000066B -> 0C 0000066D -> 05 00000670 -> 0E 00000671 -> 05 000006D6 -> 0E 000006DD -> 0C 000006DE -> 0E 000006E5 -> 05 000006E7 -> 0E 000006E9 -> 13 000006EA -> 0E 000006EE -> 05 000006F0 -> 09 000006FA -> 05 0000070E -> 00 0000070F -> 0F 00000710 -> 05 00000711 -> 0E 00000712 -> 05 00000730 -> 0E 0000074B -> 00 0000074D -> 05 000007A6 -> 0E 000007B1 -> 05 000007B2 -> 00 000007C0 -> 04 000007EB -> 0E 000007F4 -> 04 000007F6 -> 13 000007FA -> 04 000007FB -> 00 00000800 -> 04 00000816 -> 0E 0000081A -> 04 0000081B -> 0E 00000824 -> 04 00000825 -> 0E 00000828 -> 04 00000829 -> 0E 0000082E -> 00 00000830 -> 04 0000083F -> 00 00000900 -> 0E 00000903 -> 01 0000093A -> 00 0000093C -> 0E 0000093D -> 01 00000941 -> 0E 00000949 -> 01 0000094D -> 0E 0000094E -> 01 0000094F -> 00 00000950 -> 01 00000951 -> 0E 00000956 -> 00 00000958 -> 01 00000962 -> 0E 00000964 -> 01 00000973 -> 00 00000979 -> 01 00000980 -> 00 00000981 -> 0E 00000982 -> 01 00000984 -> 00 00000985 -> 01 0000098D -> 00 0000098F -> 01 00000991 -> 00 00000993 -> 01 000009A9 -> 00 000009AA -> 01 000009B1 -> 00 000009B2 -> 01 000009B3 -> 00 000009B6 -> 01 000009BA -> 00 000009BC -> 0E 000009BD -> 01 000009C1 -> 0E 000009C5 -> 00 000009C7 -> 01 000009C9 -> 00 000009CB -> 01 000009CD -> 0E 000009CE -> 01 000009CF -> 00 000009D7 -> 01 000009D8 -> 00 000009DC -> 01 000009DE -> 00 000009DF -> 01 000009E2 -> 0E 000009E4 -> 00 000009E6 -> 01 000009F2 -> 0B 000009F4 -> 01 000009FB -> 0B 000009FC -> 00 00000A01 -> 0E 00000A03 -> 01 00000A04 -> 00 00000A05 -> 01 00000A0B -> 00 00000A0F -> 01 00000A11 -> 00 00000A13 -> 01 00000A29 -> 00 00000A2A -> 01 00000A31 -> 00 00000A32 -> 01 00000A34 -> 00 00000A35 -> 01 00000A37 -> 00 00000A38 -> 01 00000A3A -> 00 00000A3C -> 0E 00000A3D -> 00 00000A3E -> 01 00000A41 -> 0E 00000A43 -> 00 00000A47 -> 0E 00000A49 -> 00 00000A4B -> 0E 00000A4E -> 00 00000A51 -> 0E 00000A52 -> 00 00000A59 -> 01 00000A5D -> 00 00000A5E -> 01 00000A5F -> 00 00000A66 -> 01 00000A70 -> 0E 00000A72 -> 01 00000A75 -> 0E 00000A76 -> 00 00000A81 -> 0E 00000A83 -> 01 00000A84 -> 00 00000A85 -> 01 00000A8E -> 00 00000A8F -> 01 00000A92 -> 00 00000A93 -> 01 00000AA9 -> 00 00000AAA -> 01 00000AB1 -> 00 00000AB2 -> 01 00000AB4 -> 00 00000AB5 -> 01 00000ABA -> 00 00000ABC -> 0E 00000ABD -> 01 00000AC1 -> 0E 00000AC6 -> 00 00000AC7 -> 0E 00000AC9 -> 01 00000ACA -> 00 00000ACB -> 01 00000ACD -> 0E 00000ACE -> 00 00000AD0 -> 01 00000AD1 -> 00 00000AE0 -> 01 00000AE2 -> 0E 00000AE4 -> 00 00000AE6 -> 01 00000AF0 -> 00 00000AF1 -> 0B 00000AF2 -> 00 00000B01 -> 0E 00000B02 -> 01 00000B04 -> 00 00000B05 -> 01 00000B0D -> 00 00000B0F -> 01 00000B11 -> 00 00000B13 -> 01 00000B29 -> 00 00000B2A -> 01 00000B31 -> 00 00000B32 -> 01 00000B34 -> 00 00000B35 -> 01 00000B3A -> 00 00000B3C -> 0E 00000B3D -> 01 00000B3F -> 0E 00000B40 -> 01 00000B41 -> 0E 00000B45 -> 00 00000B47 -> 01 00000B49 -> 00 00000B4B -> 01 00000B4D -> 0E 00000B4E -> 00 00000B56 -> 0E 00000B57 -> 01 00000B58 -> 00 00000B5C -> 01 00000B5E -> 00 00000B5F -> 01 00000B62 -> 0E 00000B64 -> 00 00000B66 -> 01 00000B72 -> 00 00000B82 -> 0E 00000B83 -> 01 00000B84 -> 00 00000B85 -> 01 00000B8B -> 00 00000B8E -> 01 00000B91 -> 00 00000B92 -> 01 00000B96 -> 00 00000B99 -> 01 00000B9B -> 00 00000B9C -> 01 00000B9D -> 00 00000B9E -> 01 00000BA0 -> 00 00000BA3 -> 01 00000BA5 -> 00 00000BA8 -> 01 00000BAB -> 00 00000BAE -> 01 00000BBA -> 00 00000BBE -> 01 00000BC0 -> 0E 00000BC1 -> 01 00000BC3 -> 00 00000BC6 -> 01 00000BC9 -> 00 00000BCA -> 01 00000BCD -> 0E 00000BCE -> 00 00000BD0 -> 01 00000BD1 -> 00 00000BD7 -> 01 00000BD8 -> 00 00000BE6 -> 01 00000BF3 -> 13 00000BF9 -> 0B 00000BFA -> 13 00000BFB -> 00 00000C01 -> 01 00000C04 -> 00 00000C05 -> 01 00000C0D -> 00 00000C0E -> 01 00000C11 -> 00 00000C12 -> 01 00000C29 -> 00 00000C2A -> 01 00000C34 -> 00 00000C35 -> 01 00000C3A -> 00 00000C3D -> 01 00000C3E -> 0E 00000C41 -> 01 00000C45 -> 00 00000C46 -> 0E 00000C49 -> 00 00000C4A -> 0E 00000C4E -> 00 00000C55 -> 0E 00000C57 -> 00 00000C58 -> 01 00000C5A -> 00 00000C60 -> 01 00000C62 -> 0E 00000C64 -> 00 00000C66 -> 01 00000C70 -> 00 00000C78 -> 13 00000C7F -> 01 00000C80 -> 00 00000C82 -> 01 00000C84 -> 00 00000C85 -> 01 00000C8D -> 00 00000C8E -> 01 00000C91 -> 00 00000C92 -> 01 00000CA9 -> 00 00000CAA -> 01 00000CB4 -> 00 00000CB5 -> 01 00000CBA -> 00 00000CBC -> 0E 00000CBD -> 01 00000CC5 -> 00 00000CC6 -> 01 00000CC9 -> 00 00000CCA -> 01 00000CCC -> 0E 00000CCE -> 00 00000CD5 -> 01 00000CD7 -> 00 00000CDE -> 01 00000CDF -> 00 00000CE0 -> 01 00000CE2 -> 0E 00000CE4 -> 00 00000CE6 -> 01 00000CF0 -> 00 00000CF1 -> 13 00000CF3 -> 00 00000D02 -> 01 00000D04 -> 00 00000D05 -> 01 00000D0D -> 00 00000D0E -> 01 00000D11 -> 00 00000D12 -> 01 00000D29 -> 00 00000D2A -> 01 00000D3A -> 00 00000D3D -> 01 00000D41 -> 0E 00000D45 -> 00 00000D46 -> 01 00000D49 -> 00 00000D4A -> 01 00000D4D -> 0E 00000D4E -> 00 00000D57 -> 01 00000D58 -> 00 00000D60 -> 01 00000D62 -> 0E 00000D64 -> 00 00000D66 -> 01 00000D76 -> 00 00000D79 -> 01 00000D80 -> 00 00000D82 -> 01 00000D84 -> 00 00000D85 -> 01 00000D97 -> 00 00000D9A -> 01 00000DB2 -> 00 00000DB3 -> 01 00000DBC -> 00 00000DBD -> 01 00000DBE -> 00 00000DC0 -> 01 00000DC7 -> 00 00000DCA -> 0E 00000DCB -> 00 00000DCF -> 01 00000DD2 -> 0E 00000DD5 -> 00 00000DD6 -> 0E 00000DD7 -> 00 00000DD8 -> 01 00000DE0 -> 00 00000DF2 -> 01 00000DF5 -> 00 00000E01 -> 01 00000E31 -> 0E 00000E32 -> 01 00000E34 -> 0E 00000E3B -> 00 00000E3F -> 0B 00000E40 -> 01 00000E47 -> 0E 00000E4F -> 01 00000E5C -> 00 00000E81 -> 01 00000E83 -> 00 00000E84 -> 01 00000E85 -> 00 00000E87 -> 01 00000E89 -> 00 00000E8A -> 01 00000E8B -> 00 00000E8D -> 01 00000E8E -> 00 00000E94 -> 01 00000E98 -> 00 00000E99 -> 01 00000EA0 -> 00 00000EA1 -> 01 00000EA4 -> 00 00000EA5 -> 01 00000EA6 -> 00 00000EA7 -> 01 00000EA8 -> 00 00000EAA -> 01 00000EAC -> 00 00000EAD -> 01 00000EB1 -> 0E 00000EB2 -> 01 00000EB4 -> 0E 00000EBA -> 00 00000EBB -> 0E 00000EBD -> 01 00000EBE -> 00 00000EC0 -> 01 00000EC5 -> 00 00000EC6 -> 01 00000EC7 -> 00 00000EC8 -> 0E 00000ECE -> 00 00000ED0 -> 01 00000EDA -> 00 00000EDC -> 01 00000EDE -> 00 00000F00 -> 01 00000F18 -> 0E 00000F1A -> 01 00000F35 -> 0E 00000F36 -> 01 00000F37 -> 0E 00000F38 -> 01 00000F39 -> 0E 00000F3A -> 13 00000F3E -> 01 00000F48 -> 00 00000F49 -> 01 00000F6D -> 00 00000F71 -> 0E 00000F7F -> 01 00000F80 -> 0E 00000F85 -> 01 00000F86 -> 0E 00000F88 -> 01 00000F8C -> 00 00000F90 -> 0E 00000F98 -> 00 00000F99 -> 0E 00000FBD -> 00 00000FBE -> 01 00000FC6 -> 0E 00000FC7 -> 01 00000FCD -> 00 00000FCE -> 01 00000FD9 -> 00 00001000 -> 01 0000102D -> 0E 00001031 -> 01 00001032 -> 0E 00001038 -> 01 00001039 -> 0E 0000103B -> 01 0000103D -> 0E 0000103F -> 01 00001058 -> 0E 0000105A -> 01 0000105E -> 0E 00001061 -> 01 00001071 -> 0E 00001075 -> 01 00001082 -> 0E 00001083 -> 01 00001085 -> 0E 00001087 -> 01 0000108D -> 0E 0000108E -> 01 0000109D -> 0E 0000109E -> 01 000010C6 -> 00 000010D0 -> 01 000010FD -> 00 00001100 -> 01 00001249 -> 00 0000124A -> 01 0000124E -> 00 00001250 -> 01 00001257 -> 00 00001258 -> 01 00001259 -> 00 0000125A -> 01 0000125E -> 00 00001260 -> 01 00001289 -> 00 0000128A -> 01 0000128E -> 00 00001290 -> 01 000012B1 -> 00 000012B2 -> 01 000012B6 -> 00 000012B8 -> 01 000012BF -> 00 000012C0 -> 01 000012C1 -> 00 000012C2 -> 01 000012C6 -> 00 000012C8 -> 01 000012D7 -> 00 000012D8 -> 01 00001311 -> 00 00001312 -> 01 00001316 -> 00 00001318 -> 01 0000135B -> 00 0000135F -> 0E 00001360 -> 01 0000137D -> 00 00001380 -> 01 00001390 -> 13 0000139A -> 00 000013A0 -> 01 000013F5 -> 00 00001400 -> 13 00001401 -> 01 00001680 -> 12 00001681 -> 01 0000169B -> 13 0000169D -> 00 000016A0 -> 01 000016F1 -> 00 00001700 -> 01 0000170D -> 00 0000170E -> 01 00001712 -> 0E 00001715 -> 00 00001720 -> 01 00001732 -> 0E 00001735 -> 01 00001737 -> 00 00001740 -> 01 00001752 -> 0E 00001754 -> 00 00001760 -> 01 0000176D -> 00 0000176E -> 01 00001771 -> 00 00001772 -> 0E 00001774 -> 00 00001780 -> 01 000017B7 -> 0E 000017BE -> 01 000017C6 -> 0E 000017C7 -> 01 000017C9 -> 0E 000017D4 -> 01 000017DB -> 0B 000017DC -> 01 000017DD -> 0E 000017DE -> 00 000017E0 -> 01 000017EA -> 00 000017F0 -> 13 000017FA -> 00 00001800 -> 13 0000180B -> 0E 0000180E -> 12 0000180F -> 00 00001810 -> 01 0000181A -> 00 00001820 -> 01 00001878 -> 00 00001880 -> 01 000018A9 -> 0E 000018AA -> 01 000018AB -> 00 000018B0 -> 01 000018F6 -> 00 00001900 -> 01 0000191D -> 00 00001920 -> 0E 00001923 -> 01 00001927 -> 0E 00001929 -> 01 0000192C -> 00 00001930 -> 01 00001932 -> 0E 00001933 -> 01 00001939 -> 0E 0000193C -> 00 00001940 -> 13 00001941 -> 00 00001944 -> 13 00001946 -> 01 0000196E -> 00 00001970 -> 01 00001975 -> 00 00001980 -> 01 000019AC -> 00 000019B0 -> 01 000019CA -> 00 000019D0 -> 01 000019DB -> 00 000019DE -> 13 00001A00 -> 01 00001A17 -> 0E 00001A19 -> 01 00001A1C -> 00 00001A1E -> 01 00001A56 -> 0E 00001A57 -> 01 00001A58 -> 0E 00001A5F -> 00 00001A60 -> 0E 00001A61 -> 01 00001A62 -> 0E 00001A63 -> 01 00001A65 -> 0E 00001A6D -> 01 00001A73 -> 0E 00001A7D -> 00 00001A7F -> 0E 00001A80 -> 01 00001A8A -> 00 00001A90 -> 01 00001A9A -> 00 00001AA0 -> 01 00001AAE -> 00 00001B00 -> 0E 00001B04 -> 01 00001B34 -> 0E 00001B35 -> 01 00001B36 -> 0E 00001B3B -> 01 00001B3C -> 0E 00001B3D -> 01 00001B42 -> 0E 00001B43 -> 01 00001B4C -> 00 00001B50 -> 01 00001B6B -> 0E 00001B74 -> 01 00001B7D -> 00 00001B80 -> 0E 00001B82 -> 01 00001BA2 -> 0E 00001BA6 -> 01 00001BA8 -> 0E 00001BAA -> 01 00001BAB -> 00 00001BAE -> 01 00001BBA -> 00 00001C00 -> 01 00001C2C -> 0E 00001C34 -> 01 00001C36 -> 0E 00001C38 -> 00 00001C3B -> 01 00001C4A -> 00 00001C4D -> 01 00001C80 -> 00 00001CD0 -> 0E 00001CD3 -> 01 00001CD4 -> 0E 00001CE1 -> 01 00001CE2 -> 0E 00001CE9 -> 01 00001CED -> 0E 00001CEE -> 01 00001CF3 -> 00 00001D00 -> 01 00001DC0 -> 0E 00001DE7 -> 00 00001DFD -> 0E 00001E00 -> 01 00001F16 -> 00 00001F18 -> 01 00001F1E -> 00 00001F20 -> 01 00001F46 -> 00 00001F48 -> 01 00001F4E -> 00 00001F50 -> 01 00001F58 -> 00 00001F59 -> 01 00001F5A -> 00 00001F5B -> 01 00001F5C -> 00 00001F5D -> 01 00001F5E -> 00 00001F5F -> 01 00001F7E -> 00 00001F80 -> 01 00001FB5 -> 00 00001FB6 -> 01 00001FBD -> 13 00001FBE -> 01 00001FBF -> 13 00001FC2 -> 01 00001FC5 -> 00 00001FC6 -> 01 00001FCD -> 13 00001FD0 -> 01 00001FD4 -> 00 00001FD6 -> 01 00001FDC -> 00 00001FDD -> 13 00001FE0 -> 01 00001FED -> 13 00001FF0 -> 00 00001FF2 -> 01 00001FF5 -> 00 00001FF6 -> 01 00001FFD -> 13 00001FFF -> 00 00002000 -> 12 0000200B -> 0F 0000200E -> 01 0000200F -> 04 00002010 -> 13 00002028 -> 12 00002029 -> 10 0000202A -> 02 0000202B -> 06 0000202C -> 08 0000202D -> 03 0000202E -> 07 0000202F -> 0D 00002030 -> 0B 00002035 -> 13 00002044 -> 0D 00002045 -> 13 0000205F -> 12 00002060 -> 0F 00002065 -> 00 0000206A -> 0F 00002070 -> 09 00002071 -> 01 00002072 -> 00 00002074 -> 09 0000207A -> 0A 0000207C -> 13 0000207F -> 01 00002080 -> 09 0000208A -> 0A 0000208C -> 13 0000208F -> 00 00002090 -> 01 00002095 -> 00 000020A0 -> 0B 000020B9 -> 00 000020D0 -> 0E 000020F1 -> 00 00002100 -> 13 00002102 -> 01 00002103 -> 13 00002107 -> 01 00002108 -> 13 0000210A -> 01 00002114 -> 13 00002115 -> 01 00002116 -> 13 00002119 -> 01 0000211E -> 13 00002124 -> 01 00002125 -> 13 00002126 -> 01 00002127 -> 13 00002128 -> 01 00002129 -> 13 0000212A -> 01 0000212E -> 0B 0000212F -> 01 0000213A -> 13 0000213C -> 01 00002140 -> 13 00002145 -> 01 0000214A -> 13 0000214E -> 01 00002150 -> 13 00002160 -> 01 00002189 -> 13 0000218A -> 00 00002190 -> 13 00002212 -> 0A 00002213 -> 0B 00002214 -> 13 00002336 -> 01 0000237B -> 13 00002395 -> 01 00002396 -> 13 000023E9 -> 00 00002400 -> 13 00002427 -> 00 00002440 -> 13 0000244B -> 00 00002460 -> 13 00002488 -> 09 0000249C -> 01 000024EA -> 13 000026AC -> 01 000026AD -> 13 000026CE -> 00 000026CF -> 13 000026E2 -> 00 000026E3 -> 13 000026E4 -> 00 000026E8 -> 13 00002700 -> 00 00002701 -> 13 00002705 -> 00 00002706 -> 13 0000270A -> 00 0000270C -> 13 00002728 -> 00 00002729 -> 13 0000274C -> 00 0000274D -> 13 0000274E -> 00 0000274F -> 13 00002753 -> 00 00002756 -> 13 0000275F -> 00 00002761 -> 13 00002795 -> 00 00002798 -> 13 000027B0 -> 00 000027B1 -> 13 000027BF -> 00 000027C0 -> 13 000027CB -> 00 000027CC -> 13 000027CD -> 00 000027D0 -> 13 00002800 -> 01 00002900 -> 13 00002B4D -> 00 00002B50 -> 13 00002B5A -> 00 00002C00 -> 01 00002C2F -> 00 00002C30 -> 01 00002C5F -> 00 00002C60 -> 01 00002CE5 -> 13 00002CEB -> 01 00002CEF -> 0E 00002CF2 -> 00 00002CF9 -> 13 00002D00 -> 01 00002D26 -> 00 00002D30 -> 01 00002D66 -> 00 00002D6F -> 01 00002D70 -> 00 00002D80 -> 01 00002D97 -> 00 00002DA0 -> 01 00002DA7 -> 00 00002DA8 -> 01 00002DAF -> 00 00002DB0 -> 01 00002DB7 -> 00 00002DB8 -> 01 00002DBF -> 00 00002DC0 -> 01 00002DC7 -> 00 00002DC8 -> 01 00002DCF -> 00 00002DD0 -> 01 00002DD7 -> 00 00002DD8 -> 01 00002DDF -> 00 00002DE0 -> 0E 00002E00 -> 13 00002E32 -> 00 00002E80 -> 13 00002E9A -> 00 00002E9B -> 13 00002EF4 -> 00 00002F00 -> 13 00002FD6 -> 00 00002FF0 -> 13 00002FFC -> 00 00003000 -> 12 00003001 -> 13 00003005 -> 01 00003008 -> 13 00003021 -> 01 0000302A -> 0E 00003030 -> 13 00003031 -> 01 00003036 -> 13 00003038 -> 01 0000303D -> 13 00003040 -> 00 00003041 -> 01 00003097 -> 00 00003099 -> 0E 0000309B -> 13 0000309D -> 01 000030A0 -> 13 000030A1 -> 01 000030FB -> 13 000030FC -> 01 00003100 -> 00 00003105 -> 01 0000312E -> 00 00003131 -> 01 0000318F -> 00 00003190 -> 01 000031B8 -> 00 000031C0 -> 13 000031E4 -> 00 000031F0 -> 01 0000321D -> 13 0000321F -> 00 00003220 -> 01 00003250 -> 13 00003260 -> 01 0000327C -> 13 0000327F -> 01 000032B1 -> 13 000032C0 -> 01 000032CC -> 13 000032D0 -> 01 000032FF -> 00 00003300 -> 01 00003377 -> 13 0000337B -> 01 000033DE -> 13 000033E0 -> 01 000033FF -> 13 00003400 -> 01 00004DB5 -> 01 00004DB6 -> 00 00004DC0 -> 13 00004E00 -> 01 00009FCB -> 01 00009FCC -> 00 0000A000 -> 01 0000A48D -> 00 0000A490 -> 13 0000A4C7 -> 00 0000A4D0 -> 01 0000A60D -> 13 0000A610 -> 01 0000A62C -> 00 0000A640 -> 01 0000A660 -> 00 0000A662 -> 01 0000A66F -> 0E 0000A673 -> 13 0000A674 -> 00 0000A67C -> 0E 0000A67E -> 13 0000A680 -> 01 0000A698 -> 00 0000A6A0 -> 01 0000A6F0 -> 0E 0000A6F2 -> 01 0000A6F8 -> 00 0000A700 -> 13 0000A722 -> 01 0000A788 -> 13 0000A789 -> 01 0000A78D -> 00 0000A7FB -> 01 0000A802 -> 0E 0000A803 -> 01 0000A806 -> 0E 0000A807 -> 01 0000A80B -> 0E 0000A80C -> 01 0000A825 -> 0E 0000A827 -> 01 0000A828 -> 13 0000A82C -> 00 0000A830 -> 01 0000A838 -> 0B 0000A83A -> 00 0000A840 -> 01 0000A874 -> 13 0000A878 -> 00 0000A880 -> 01 0000A8C4 -> 0E 0000A8C5 -> 00 0000A8CE -> 01 0000A8DA -> 00 0000A8E0 -> 0E 0000A8F2 -> 01 0000A8FC -> 00 0000A900 -> 01 0000A926 -> 0E 0000A92E -> 01 0000A947 -> 0E 0000A952 -> 01 0000A954 -> 00 0000A95F -> 01 0000A97D -> 00 0000A980 -> 0E 0000A983 -> 01 0000A9B3 -> 0E 0000A9B4 -> 01 0000A9B6 -> 0E 0000A9BA -> 01 0000A9BC -> 0E 0000A9BD -> 01 0000A9CE -> 00 0000A9CF -> 01 0000A9DA -> 00 0000A9DE -> 01 0000A9E0 -> 00 0000AA00 -> 01 0000AA29 -> 0E 0000AA2F -> 01 0000AA31 -> 0E 0000AA33 -> 01 0000AA35 -> 0E 0000AA37 -> 00 0000AA40 -> 01 0000AA43 -> 0E 0000AA44 -> 01 0000AA4C -> 0E 0000AA4D -> 01 0000AA4E -> 00 0000AA50 -> 01 0000AA5A -> 00 0000AA5C -> 01 0000AA7C -> 00 0000AA80 -> 01 0000AAB0 -> 0E 0000AAB1 -> 01 0000AAB2 -> 0E 0000AAB5 -> 01 0000AAB7 -> 0E 0000AAB9 -> 01 0000AABE -> 0E 0000AAC0 -> 01 0000AAC1 -> 0E 0000AAC2 -> 01 0000AAC3 -> 00 0000AADB -> 01 0000AAE0 -> 00 0000ABC0 -> 01 0000ABE5 -> 0E 0000ABE6 -> 01 0000ABE8 -> 0E 0000ABE9 -> 01 0000ABED -> 0E 0000ABEE -> 00 0000ABF0 -> 01 0000ABFA -> 00 0000AC00 -> 01 0000D7A3 -> 01 0000D7A4 -> 00 0000D7B0 -> 01 0000D7C7 -> 00 0000D7CB -> 01 0000D7FC -> 00 0000D800 -> 01 0000DB7F -> 01 0000DBFF -> 01 0000DFFF -> 01 0000F8FF -> 01 0000FA2E -> 00 0000FA30 -> 01 0000FA6E -> 00 0000FA70 -> 01 0000FADA -> 00 0000FB00 -> 01 0000FB07 -> 00 0000FB13 -> 01 0000FB18 -> 00 0000FB1D -> 04 0000FB1E -> 0E 0000FB1F -> 04 0000FB29 -> 0A 0000FB2A -> 04 0000FB37 -> 00 0000FB38 -> 04 0000FB3D -> 00 0000FB3E -> 04 0000FB3F -> 00 0000FB40 -> 04 0000FB42 -> 00 0000FB43 -> 04 0000FB45 -> 00 0000FB46 -> 04 0000FB50 -> 05 0000FBB2 -> 00 0000FBD3 -> 05 0000FD3E -> 13 0000FD40 -> 00 0000FD50 -> 05 0000FD90 -> 00 0000FD92 -> 05 0000FDC8 -> 00 0000FDF0 -> 05 0000FDFD -> 13 0000FDFE -> 00 0000FE00 -> 0E 0000FE10 -> 13 0000FE1A -> 00 0000FE20 -> 0E 0000FE27 -> 00 0000FE30 -> 13 0000FE50 -> 0D 0000FE51 -> 13 0000FE52 -> 0D 0000FE53 -> 00 0000FE54 -> 13 0000FE55 -> 0D 0000FE56 -> 13 0000FE5F -> 0B 0000FE60 -> 13 0000FE62 -> 0A 0000FE64 -> 13 0000FE67 -> 00 0000FE68 -> 13 0000FE69 -> 0B 0000FE6B -> 13 0000FE6C -> 00 0000FE70 -> 05 0000FE75 -> 00 0000FE76 -> 05 0000FEFD -> 00 0000FEFF -> 0F 0000FF00 -> 00 0000FF01 -> 13 0000FF03 -> 0B 0000FF06 -> 13 0000FF0B -> 0A 0000FF0C -> 0D 0000FF0D -> 0A 0000FF0E -> 0D 0000FF10 -> 09 0000FF1A -> 0D 0000FF1B -> 13 0000FF21 -> 01 0000FF3B -> 13 0000FF41 -> 01 0000FF5B -> 13 0000FF66 -> 01 0000FFBF -> 00 0000FFC2 -> 01 0000FFC8 -> 00 0000FFCA -> 01 0000FFD0 -> 00 0000FFD2 -> 01 0000FFD8 -> 00 0000FFDA -> 01 0000FFDD -> 00 0000FFE0 -> 0B 0000FFE2 -> 13 0000FFE5 -> 0B 0000FFE7 -> 00 0000FFE8 -> 13 0000FFEF -> 00 0000FFF9 -> 13 0000FFFE -> 00 00010000 -> 01 0001000C -> 00 0001000D -> 01 00010027 -> 00 00010028 -> 01 0001003B -> 00 0001003C -> 01 0001003E -> 00 0001003F -> 01 0001004E -> 00 00010050 -> 01 0001005E -> 00 00010080 -> 01 000100FB -> 00 00010100 -> 01 00010101 -> 13 00010102 -> 01 00010103 -> 00 00010107 -> 01 00010134 -> 00 00010137 -> 01 00010140 -> 13 0001018B -> 00 00010190 -> 13 0001019C -> 00 000101D0 -> 01 000101FD -> 0E 000101FE -> 00 00010280 -> 01 0001029D -> 00 000102A0 -> 01 000102D1 -> 00 00010300 -> 01 0001031F -> 00 00010320 -> 01 00010324 -> 00 00010330 -> 01 0001034B -> 00 00010380 -> 01 0001039E -> 00 0001039F -> 01 000103C4 -> 00 000103C8 -> 01 000103D6 -> 00 00010400 -> 01 0001049E -> 00 000104A0 -> 01 000104AA -> 00 00010800 -> 04 00010806 -> 00 00010808 -> 04 00010809 -> 00 0001080A -> 04 00010836 -> 00 00010837 -> 04 00010839 -> 00 0001083C -> 04 0001083D -> 00 0001083F -> 04 00010856 -> 00 00010857 -> 04 00010860 -> 00 00010900 -> 04 0001091C -> 00 0001091F -> 13 00010920 -> 04 0001093A -> 00 0001093F -> 04 00010940 -> 00 00010A00 -> 04 00010A01 -> 0E 00010A04 -> 00 00010A05 -> 0E 00010A07 -> 00 00010A0C -> 0E 00010A10 -> 04 00010A14 -> 00 00010A15 -> 04 00010A18 -> 00 00010A19 -> 04 00010A34 -> 00 00010A38 -> 0E 00010A3B -> 00 00010A3F -> 0E 00010A40 -> 04 00010A48 -> 00 00010A50 -> 04 00010A59 -> 00 00010A60 -> 04 00010A80 -> 00 00010B00 -> 04 00010B36 -> 00 00010B39 -> 13 00010B40 -> 04 00010B56 -> 00 00010B58 -> 04 00010B73 -> 00 00010B78 -> 04 00010B80 -> 00 00010C00 -> 04 00010C49 -> 00 00010E60 -> 0C 00010E7F -> 00 00011080 -> 0E 00011082 -> 01 000110B3 -> 0E 000110B7 -> 01 000110B9 -> 0E 000110BB -> 01 000110C2 -> 00 00012000 -> 01 0001236F -> 00 00012400 -> 01 00012463 -> 00 00012470 -> 01 00012474 -> 00 00013000 -> 01 0001342F -> 00 0001D000 -> 01 0001D0F6 -> 00 0001D100 -> 01 0001D127 -> 00 0001D129 -> 01 0001D167 -> 0E 0001D16A -> 01 0001D173 -> 0F 0001D17B -> 0E 0001D183 -> 01 0001D185 -> 0E 0001D18C -> 01 0001D1AA -> 0E 0001D1AE -> 01 0001D1DE -> 00 0001D200 -> 13 0001D242 -> 0E 0001D245 -> 13 0001D246 -> 00 0001D300 -> 13 0001D357 -> 00 0001D360 -> 01 0001D372 -> 00 0001D400 -> 01 0001D455 -> 00 0001D456 -> 01 0001D49D -> 00 0001D49E -> 01 0001D4A0 -> 00 0001D4A2 -> 01 0001D4A3 -> 00 0001D4A5 -> 01 0001D4A7 -> 00 0001D4A9 -> 01 0001D4AD -> 00 0001D4AE -> 01 0001D4BA -> 00 0001D4BB -> 01 0001D4BC -> 00 0001D4BD -> 01 0001D4C4 -> 00 0001D4C5 -> 01 0001D506 -> 00 0001D507 -> 01 0001D50B -> 00 0001D50D -> 01 0001D515 -> 00 0001D516 -> 01 0001D51D -> 00 0001D51E -> 01 0001D53A -> 00 0001D53B -> 01 0001D53F -> 00 0001D540 -> 01 0001D545 -> 00 0001D546 -> 01 0001D547 -> 00 0001D54A -> 01 0001D551 -> 00 0001D552 -> 01 0001D6A6 -> 00 0001D6A8 -> 01 0001D6DB -> 13 0001D6DC -> 01 0001D715 -> 13 0001D716 -> 01 0001D74F -> 13 0001D750 -> 01 0001D789 -> 13 0001D78A -> 01 0001D7C3 -> 13 0001D7C4 -> 01 0001D7CC -> 00 0001D7CE -> 09 0001D800 -> 00 0001F000 -> 13 0001F02C -> 00 0001F030 -> 13 0001F094 -> 00 0001F100 -> 09 0001F10B -> 00 0001F110 -> 01 0001F12F -> 00 0001F131 -> 01 0001F132 -> 00 0001F13D -> 01 0001F13E -> 00 0001F13F -> 01 0001F140 -> 00 0001F142 -> 01 0001F143 -> 00 0001F146 -> 01 0001F147 -> 00 0001F14A -> 01 0001F14F -> 00 0001F157 -> 01 0001F158 -> 00 0001F15F -> 01 0001F160 -> 00 0001F179 -> 01 0001F17A -> 00 0001F17B -> 01 0001F17D -> 00 0001F17F -> 01 0001F180 -> 00 0001F18A -> 01 0001F18E -> 00 0001F190 -> 01 0001F191 -> 00 0001F200 -> 01 0001F201 -> 00 0001F210 -> 01 0001F232 -> 00 0001F240 -> 01 0001F249 -> 00 00020000 -> 01 0002A6D6 -> 01 0002A6D7 -> 00 0002A700 -> 01 0002B734 -> 01 0002B735 -> 00 0002F800 -> 01 0002FA1E -> 00 000E0001 -> 0F 000E0002 -> 00 000E0020 -> 0F 000E0080 -> 00 000E0100 -> 0E 000E01F0 -> 00 000F0000 -> 01 000FFFFD -> 01 000FFFFE -> 00 00100000 -> 01 0010FFFD -> 01 0010FFFE -> 00 #END ./mytool/mys/hangul.pl0000644000175000017500000000351107532460064015011 0ustar henrichhenrich#!/usr/bin/perl -w # This script generates the kmap file for "3-set-keyboard-like" # transliteration-based Korean input(I call it Hangul_R3.kmap) # Transliteration/Romanization rule is my own and has nothing to # with any standard for transliteration of Korean with Roman alphabets. # A couple of transliteration standards are available # at http://asadal.cs.pusan.ac.kr/hangeul/ # and it's trivial to modify this script to use one of those standards. # It convers only pre-composed Hangul syllables beginning at UAC00. # Some enhancement is necessary to support standalone Jamos and # other characters for full Korean support # It doesn't deal with composing Hangul syllables # using conjoining Hangul Jamos [U1100-U11FF]. @init = ( "G", "Gg", "N", "D","Dd","L","M", "B","Bb", "S", "Ss", "", "J", "Jj", "Ch", "K","T", "P", "H"); @vowel = ( "a", "ae", "ya", "yae","eo","e","yeo","ye", "o","oa", "oae", "oi","yo","u","ueo","ue","ui", "yu", "eu", "eui", "i"); @vowel2 = ( "A", "Ae", "Ya", "Yae","Eo","E","Yeo","Ye", "O","Oa", "Oae", "Oi","Yo","U","Ueo","Ue","Ui", "Yu", "Eu", "Eui", "I"); @final = ( "g", "gg", "gs", "n","nj", "nh", "d", "l", "lg", "lm", "lb","ls","lt","lp","lh", "m", "b","bs", "s", "ss", "ng", "j", "ch", "k", "t", "p", "h" ); $start= 0xac00; for ($i=0; $i < 19; $i++) { $ic = $init[$i]; for ($m=0; $m < 21; $m++) { for ($f=0; $f < 28; $f++) { $mv = $vowel[$m]; $fc = ($f == 0 ? '' : $final[$f-1]) ; if ($ic eq "") { $mv = $vowel2[$m]; } printf ("%04X -> %s%s%s\n", ($i * 21 +$m) * 28 + $f + $start, "e ($ic), "e ($mv), "e ($fc));; } } } sub quote { local ($str) = $_[0]; $all = ""; for ($s=0;$s COMM= quite a while back. COMM= COMM= Transliteration/Romanization rule is my own and has nothing to COMM= with any standard for transliteration of Korean with Roman alphabets. COMM= A couple of transliteration standards are available COMM= at http://asadal.cs.pusan.ac.kr/hangeul/ COMM= and it's trivial to modify this script to use one of those standards. COMM= It convers only pre-composed Hangul syllables beginning at UAC00. COMM= Some enhancement is necessary to support standalone Jamos and COMM= other characters for full Korean support COMM= It doesn't deal with composing Hangul syllables COMM= using conjoining Hangul Jamos [U1100-U11FF]. COMM= NAME=Hangul COMM=created by mytool 2000-01-05 # KEY MAP TYPE=1 #------------------------------------------------------------------------------- # There will be three decoder sections #------------------------------------------------------------------------------- # First: #------------------------------------------------------------------------------- SECTION=First (consonant) ENCODE=0 # 8 bit -> 16 bit KEY_WIDTH=0 VALUE_WIDTH=1 # It can fit into 256. KEY_LENGTH=0 VALUE_LENGTH=0 #--------- Nothing with a vowel behind 'G -> AC00 'g -> AC00 'G 'g -> AE4C 'g 'g -> AE4C 'N -> B098 'n -> B098 'D -> B2E4 'd -> B2E4 'D 'd -> B530 'd 'd -> B530 # Same 'L -> B77C 'l -> B77C 'R -> B77C 'l -> B77C 'M -> B9C8 'm -> B9C8 'B -> BC14 'b -> BC14 'B 'b -> BE60 'b 'b -> BE60 'S -> C0AC 's -> C0AC 'S 's -> C2F8 's 's -> C2F8 # None -> C544 'J -> C790 'j -> C790 'J 'j -> C9DC 'j 'j -> C9DC #Same 'c 'h -> CC28 'c -> CC28 'C 'h -> CC28 'c 'h -> CC28 'K -> CE74 'k -> CE74 'T -> D0C0 't -> D0C0 'P -> D30C 'p -> D30C 'H -> D558 'h -> D558 #------------------------------------------------------------------------------- # Second: #------------------------------------------------------------------------------- SECTION=Middle (vowel) ENCODE=0 # 8 bit -> 16 bit KEY_WIDTH=0 VALUE_WIDTH=1 # It can fit into 256. KEY_LENGTH=0 VALUE_LENGTH=0 'a -> 0000 'A -> 0000 'a 'e -> 001C 'A 'e -> 001C 'y 'a -> 0038 'Y 'a -> 0038 # Same 'y 'a 'e -> 0054 'Y 'a 'e -> 0054 'u 'a 'e -> 0054 'U 'a 'e -> 0054 'e 'o -> 0070 'E 'o -> 0070 'e -> 008C 'E -> 008C 'y 'e 'o -> 00A8 'Y 'e 'o -> 00A8 'y 'e -> 00C4 'Y 'e -> 00C4 'o -> 00E0 'O -> 00E0 # Same 'o 'a -> 00FC 'O 'a -> 00FC 'w 'a -> 00FC 'W 'a -> 00FC 'o 'a 'e -> 0118 'O 'a 'e -> 0118 'w 'a 'e -> 0118 'W 'a 'e -> 0118 'o 'i -> 01C0 'O 'i -> 01C0 'w 'i -> 01C0 'W 'i -> 01C0 'o 'e -> 0134 'O 'e -> 0134 'y 'o -> 0150 'Y 'o -> 0150 'u -> 016C 'U -> 016C # Same 'w 'e 'o -> 0188 'W 'e 'o -> 0188 'u 'e 'o -> 0188 'U 'e 'o -> 0188 'w 'e -> 01A4 'W 'e -> 01A4 'u 'e -> 01A4 'U 'e -> 01A4 'y 'u -> 01DC 'Y 'u -> 01DC 'e 'u -> 01F8 'E 'u -> 01F8 #Same 'e 'i -> 0214 'E 'i -> 0214 'y 'i -> 0214 'Y 'i -> 0214 'i -> 0230 'I -> 0230 #------------------------------------------------------------------------------- # Third: # This could be enhanced: adding dependencies on # A Y U O E W I #------------------------------------------------------------------------------- SECTION=Last (consonant) ENCODE=0 # 8 bit -> 16 bit KEY_WIDTH=0 VALUE_WIDTH=1 # It can fit into 256. KEY_LENGTH=0 VALUE_LENGTH=0 # it can be a simple end. Nothing comes. Or something that does not match. -> 0000 20 -> 0000 # ------------------------------------------------- TODO # Now some tricks - I need more time to think.. # I have to use the / many times here.. # ------------------------------------------------- TODO # Move g to the beginning. 'g -> 0001 'g 20 -> 0001 'g / 'A -> 0001 'g / 'Y -> 0001 'g / 'U -> 0001 'g / 'W -> 0001 'g / 'O -> 0001 'g / 'E -> 0001 'g / 'I -> 0001 / 'g 'a -> 0000 / 'g 'y -> 0000 / 'g 'u -> 0000 / 'g 'w -> 0000 / 'g 'o -> 0000 / 'g 'e -> 0000 / 'g 'i -> 0000 # Move gg to beginning 'g 'g -> 0002 'g 'g 20 -> 0002 'g 'g / 'A -> 0002 'g 'g / 'Y -> 0002 'g 'g / 'U -> 0002 'g 'g / 'W -> 0002 'g 'g / 'O -> 0002 'g 'g / 'E -> 0002 'g 'g / 'I -> 0002 'g / 'g 'a -> 0001 'g / 'g 'y -> 0001 'g / 'g 'u -> 0001 'g / 'g 'w -> 0001 'g / 'g 'o -> 0001 'g / 'g 'e -> 0001 'g / 'g 'i -> 0001 # Try to move only the s to the beginning 'g 's -> 0003 'g 's 20 -> 0003 'g 's / 'A -> 0003 'g 's / 'Y -> 0003 'g 's / 'U -> 0003 'g 's / 'W -> 0003 'g 's / 'O -> 0003 'g 's / 'E -> 0003 'g 's / 'I -> 0003 'g / 's 'a -> 0001 'g / 's 'y -> 0001 'g / 's 'u -> 0001 'g / 's 'w -> 0001 'g / 's 'o -> 0001 'g / 's 'e -> 0001 'g / 's 'i -> 0001 # Move n 'n -> 0004 'n 20 -> 0004 'n / 'A -> 0004 'n / 'Y -> 0004 'n / 'U -> 0004 'n / 'W -> 0004 'n / 'O -> 0004 'n / 'E -> 0004 'n / 'I -> 0004 / 'n 'a -> 0000 / 'n 'y -> 0000 / 'n 'u -> 0000 / 'n 'w -> 0000 / 'n 'o -> 0000 / 'n 'e -> 0000 / 'n 'i -> 0000 # Move J 'n 'j -> 0005 'n 'j 20 -> 0005 'n 'j / 'A -> 0005 'n 'j / 'Y -> 0005 'n 'j / 'U -> 0005 'n 'j / 'W -> 0005 'n 'j / 'O -> 0005 'n 'j / 'E -> 0005 'n 'j / 'I -> 0005 'n / 'j 'a -> 0004 'n / 'j 'y -> 0004 'n / 'j 'u -> 0004 'n / 'j 'w -> 0004 'n / 'j 'o -> 0004 'n / 'j 'e -> 0004 'n / 'j 'i -> 0004 # Move h 'n 'h -> 0006 'n 'h 20 -> 0006 'n 'h / 'A -> 0006 'n 'h / 'Y -> 0006 'n 'h / 'U -> 0006 'n 'h / 'W -> 0006 'n 'h / 'O -> 0006 'n 'h / 'E -> 0006 'n 'h / 'I -> 0006 'n / 'h 'a -> 0004 'n / 'h 'y -> 0004 'n / 'h 'u -> 0004 'n / 'h 'w -> 0004 'n / 'h 'o -> 0004 'n / 'h 'e -> 0004 'n / 'h 'i -> 0004 'd -> 0007 'd 20 -> 0007 'd / 'A -> 0007 'd / 'Y -> 0007 'd / 'U -> 0007 'd / 'W -> 0007 'd / 'O -> 0007 'd / 'E -> 0007 'd / 'I -> 0007 / 'd 'a -> 0000 / 'd 'y -> 0000 / 'd 'u -> 0000 / 'd 'w -> 0000 / 'd 'o -> 0000 / 'd 'e -> 0000 / 'd 'i -> 0000 # Same 'l -> 0008 'l 20 -> 0008 'l / 'A -> 0008 'l / 'Y -> 0008 'l / 'U -> 0008 'l / 'W -> 0008 'l / 'O -> 0008 'l / 'E -> 0008 'l / 'I -> 0008 / 'l 'a -> 0000 / 'l 'y -> 0000 / 'l 'u -> 0000 / 'l 'w -> 0000 / 'l 'o -> 0000 / 'l 'e -> 0000 / 'l 'i -> 0000 'l 'g -> 0009 'l 'g 20 -> 0009 'l 'g / 'A -> 0009 'l 'g / 'Y -> 0009 'l 'g / 'U -> 0009 'l 'g / 'W -> 0009 'l 'g / 'O -> 0009 'l 'g / 'E -> 0009 'l 'g / 'I -> 0009 'l / 'g 'a -> 0008 'l / 'g 'y -> 0008 'l / 'g 'u -> 0008 'l / 'g 'w -> 0008 'l / 'g 'o -> 0008 'l / 'g 'w -> 0008 'l / 'g 'i -> 0008 'l 'm -> 000A 'l 'm 20 -> 000A 'l 'm / 'A -> 000A 'l 'm / 'Y -> 000A 'l 'm / 'U -> 000A 'l 'm / 'W -> 000A 'l 'm / 'O -> 000A 'l 'm / 'E -> 000A 'l 'm / 'I -> 000A 'l / 'm 'a -> 0008 'l / 'm 'y -> 0008 'l / 'm 'u -> 0008 'l / 'm 'w -> 0008 'l / 'm 'o -> 0008 'l / 'm 'e -> 0008 'l / 'm 'i -> 0008 'l 'b -> 0008 'l 'b 20 -> 000B 'l 'b / 'A -> 000B 'l 'b / 'Y -> 000B 'l 'b / 'U -> 000B 'l 'b / 'W -> 000B 'l 'b / 'O -> 000B 'l 'b / 'E -> 000B 'l 'b / 'I -> 000B 'l / 'b 'a -> 0008 'l / 'b 'y -> 0008 'l / 'b 'u -> 0008 'l / 'b 'w -> 0008 'l / 'b 'o -> 0008 'l / 'b 'e -> 0008 'l / 'b 'i -> 0008 'l 's -> 0008 'l 's 20 -> 000C 'l 's / 'A -> 000C 'l 's / 'Y -> 000C 'l 's / 'U -> 000C 'l 's / 'W -> 000C 'l 's / 'O -> 000C 'l 's / 'E -> 000C 'l 's / 'I -> 000C 'l / 's 'a -> 0008 'l / 's 'y -> 0008 'l / 's 'u -> 0008 'l / 's 'w -> 0008 'l / 's 'o -> 0008 'l / 's 'e -> 0008 'l / 's 'i -> 0008 'l 't -> 0008 'l 't 20 -> 000D 'l 't / 'A -> 000D 'l 't / 'Y -> 000D 'l 't / 'U -> 000D 'l 't / 'W -> 000D 'l 't / 'O -> 000D 'l 't / 'E -> 000D 'l 't / 'I -> 000D 'l / 't 'a -> 0008 'l / 'm 'y -> 0008 'l / 't 'u -> 0008 'l / 't 'w -> 0008 'l / 't 'o -> 0008 'l / 't 'e -> 0008 'l / 't 'i -> 0008 'l 'p -> 0008 'l 'p 20 -> 000E 'l 'p / 'A -> 000E 'l 'p / 'Y -> 000E 'l 'p / 'U -> 000E 'l 'p / 'W -> 000E 'l 'p / 'O -> 000E 'l 'p / 'E -> 000E 'l 'p / 'I -> 000E 'l / 'p 'a -> 0008 'l / 'p 'y -> 0008 'l / 'p 'u -> 0008 'l / 'p 'w -> 0008 'l / 'p 'o -> 0008 'l / 'p 'e -> 0008 'l / 'p 'i -> 0008 'l 'h -> 000F 'l 'h 20 -> 000F 'l 'h / 'A -> 000F 'l 'h / 'Y -> 000E 'l 'h / 'U -> 000F 'l 'h / 'W -> 000F 'l 'h / 'O -> 000F 'l 'h / 'E -> 000F 'l 'h / 'I -> 000F 'l / 'h 'a -> 0008 'l / 'h 'y -> 0008 'l / 'h 'u -> 0008 'l / 'h 'w -> 0008 'l / 'h 'o -> 0008 'l / 'h 'e -> 0008 'l / 'h 'i -> 0008 'm -> 0010 'm 20 -> 0010 'm / 'A -> 0010 'm / 'Y -> 0010 'm / 'U -> 0010 'm / 'W -> 0010 'm / 'O -> 0010 'm / 'E -> 0010 'm / 'I -> 0010 / 'm 'a -> 0000 / 'm 'y -> 0000 / 'm 'u -> 0000 / 'm 'w -> 0000 / 'm 'o -> 0000 / 'm 'e -> 0000 / 'm 'i -> 0000 'b -> 0011 'b 20 -> 0011 'b / 'A -> 0011 'b / 'Y -> 0011 'b / 'U -> 0011 'b / 'W -> 0011 'b / 'O -> 0011 'b / 'E -> 0011 'b / 'I -> 0011 / 'b 'a -> 0000 / 'b 'y -> 0000 / 'b 'u -> 0000 / 'b 'w -> 0000 / 'b 'o -> 0000 / 'b 'e -> 0000 / 'b 'i -> 0000 'b 's -> 0012 'b 's 20 -> 0012 'b 's / 'A -> 0012 'b 's / 'Y -> 0012 'b 's / 'U -> 0012 'b 's / 'W -> 0012 'b 's / 'O -> 0012 'b 's / 'E -> 0012 'b 's / 'I -> 0012 'b / 's 'a -> 0011 'b / 's 'y -> 0011 'b / 's 'u -> 0011 'b / 's 'w -> 0011 'b / 's 'o -> 0011 'b / 's 'e -> 0011 'b / 's 'i -> 0011 's -> 0013 's 20 -> 0013 's / 'A -> 0013 's / 'Y -> 0013 's / 'U -> 0013 's / 'W -> 0013 's / 'O -> 0013 's / 'E -> 0013 's / 'I -> 0013 / 's 'a -> 0000 / 's 'y -> 0000 / 's 'u -> 0000 / 's 'w -> 0000 / 's 'o -> 0000 / 's 'e -> 0000 / 's 'i -> 0000 # This will most likely fall on the second part. 's 's -> 0014 's 's 20 -> 0014 's 's / 'A -> 0014 's 's / 'Y -> 0014 's 's / 'U -> 0014 's 's / 'W -> 0014 's 's / 'O -> 0014 's 's / 'E -> 0014 's 's / 'I -> 0014 / 's 's 'a -> 0000 / 's 's 'y -> 0000 / 's 's 'u -> 0000 / 's 's 'w -> 0000 / 's 's 'o -> 0000 / 's 's 'e -> 0000 / 's 's 'i -> 0000 'n 'g -> 0015 'n 'g 20 -> 0015 'n 'g / 'A -> 0015 'n 'g / 'Y -> 0015 'n 'g / 'U -> 0015 'n 'g / 'W -> 0015 'n 'g / 'O -> 0015 'n 'g / 'E -> 0015 'n 'g / 'I -> 0015 'n / 'g 'a -> 0004 'n / 'g 'y -> 0004 'n / 'g 'u -> 0004 'n / 'g 'w -> 0004 'n / 'g 'o -> 0004 'n / 'g 'e -> 0004 'n / 'g 'i -> 0004 'j -> 0016 'j 20 -> 0016 'j / 'A -> 0016 'j / 'Y -> 0016 'j / 'U -> 0016 'j / 'W -> 0016 'j / 'O -> 0016 'j / 'E -> 0016 'j / 'I -> 0016 / 'j 'a -> 0000 / 'j 'y -> 0000 / 'j 'u -> 0000 / 'j 'w -> 0000 / 'j 'o -> 0000 / 'j 'e -> 0000 / 'j 'i -> 0000 # One thing 'c 'h -> 0017 'c 'h 20 -> 0017 'c 'h / 'A -> 0017 'c 'h / 'Y -> 0017 'c 'h / 'U -> 0017 'c 'h / 'W -> 0017 'c 'h / 'O -> 0017 'c 'h / 'E -> 0017 'c 'h / 'I -> 0017 / 'c 'h 'a -> 0000 / 'c 'h 'y -> 0000 / 'c 'h 'u -> 0000 / 'c 'h 'w -> 0000 / 'c 'h 'o -> 0000 / 'c 'h 'e -> 0000 / 'c 'h 'i -> 0000 'k -> 0018 'k 20 -> 0018 'k / 'A -> 0018 'k / 'Y -> 0018 'k / 'U -> 0018 'k / 'W -> 0018 'k / 'O -> 0018 'k / 'E -> 0018 'k / 'I -> 0018 / 'k 'a -> 0000 / 'k 'y -> 0000 / 'k 'u -> 0000 / 'k 'w -> 0000 / 'k 'o -> 0000 / 'k 'e -> 0000 / 'k 'i -> 0000 't -> 0019 't 20 -> 0019 't / 'A -> 0019 't / 'Y -> 0019 't / 'U -> 0019 't / 'W -> 0019 't / 'O -> 0019 't / 'E -> 0019 't / 'I -> 0019 / 't 'a -> 0000 / 't 'y -> 0000 / 't 'u -> 0000 / 't 'w -> 0000 / 't 'o -> 0000 / 't 'e -> 0000 / 't 'i -> 0000 'p -> 001A 'p 20 -> 001A 'p / 'A -> 001A 'p / 'Y -> 001A 'p / 'U -> 001A 'p / 'W -> 001A 'p / 'O -> 001A 'p / 'E -> 001A 'p / 'I -> 001A / 'p 'a -> 0000 / 'p 'y -> 0000 / 'p 'u -> 0000 / 'p 'w -> 0000 / 'p 'o -> 0000 / 'p 'e -> 0000 / 'p 'i -> 0000 'h -> 001B 'h 20 -> 001B 'h / 'A -> 001B 'h / 'Y -> 001B 'h / 'U -> 001B 'h / 'W -> 001B 'h / 'O -> 001B 'h / 'E -> 001B 'h / 'I -> 001B / 'h 'a -> 0000 / 'h 'y -> 0000 / 'h 'u -> 0000 / 'h 'w -> 0000 / 'h 'o -> 0000 / 'h 'e -> 0000 / 'h 'i -> 0000 #------------------------------------------------------------------------------- # There is only one encoder section. #------------------------------------------------------------------------------- SECTION=Encode ENCODE=1 # 16 bit -> 8 bit KEY_WIDTH=1 VALUE_WIDTH=0 KEY_LENGTH=0 VALUE_LENGTH=0 ############################################################################### # The following map was generated by this script: (in comments) #!/usr/bin/perl -w #@init = ( "G", "Gg", "N", "D","Dd","L","M", "B","Bb", # "S", "Ss", "", "J", "Jj", "Ch", "K","T", # "P", "H"); # #@vowel = ( "a", "ae", "ya", "yae","eo","e","yeo","ye", # "o","oa", "oae", "oi","yo","u","ueo","ue","ui", # "yu", "eu", "eui", "i"); # #@vowel2 = ( "A", "Ae", "Ya", "Yae","Eo","E","Yeo","Ye", # "O","Oa", "Oae", "Oi","Yo","U","Ueo","Ue","Ui", # "Yu", "Eu", "Eui", "I"); # #@final = ( "g", "gg", "gs", "n","nj", "nh", "d", # "l", "lg", "lm", "lb","ls","lt","lp","lh", # "m", "b","bs", "s", "ss", "ng", "j", "ch", "k", # "t", "p", "h" ); # #$start= 0xac00; # #for ($i=0; $i < 19; $i++) { # $ic = $init[$i]; # for ($m=0; $m < 21; $m++) { # for ($f=0; $f < 28; $f++) { # $mv = $vowel[$m]; # $fc = ($f == 0 ? '' : $final[$f-1]) ; # if ($ic eq "") # { # $mv = $vowel2[$m]; # } # printf ("%04X -> %s%s%s\n", ($i * 21 +$m) * 28 + $f + $start, "e ($ic), "e ($mv), "e ($fc));; # } # } #} # #sub #quote #{ # local ($str) = $_[0]; # $all = ""; # for ($s=0;$s 'G 'a AC01 -> 'G 'a 'g AC02 -> 'G 'a 'g 'g AC03 -> 'G 'a 'g 's AC04 -> 'G 'a 'n AC05 -> 'G 'a 'n 'j AC06 -> 'G 'a 'n 'h AC07 -> 'G 'a 'd AC08 -> 'G 'a 'l AC09 -> 'G 'a 'l 'g AC0A -> 'G 'a 'l 'm AC0B -> 'G 'a 'l 'b AC0C -> 'G 'a 'l 's AC0D -> 'G 'a 'l 't AC0E -> 'G 'a 'l 'p AC0F -> 'G 'a 'l 'h AC10 -> 'G 'a 'm AC11 -> 'G 'a 'b AC12 -> 'G 'a 'b 's AC13 -> 'G 'a 's AC14 -> 'G 'a 's 's AC15 -> 'G 'a 'n 'g AC16 -> 'G 'a 'j AC17 -> 'G 'a 'c 'h AC18 -> 'G 'a 'k AC19 -> 'G 'a 't AC1A -> 'G 'a 'p AC1B -> 'G 'a 'h AC1C -> 'G 'a 'e AC1D -> 'G 'a 'e 'g AC1E -> 'G 'a 'e 'g 'g AC1F -> 'G 'a 'e 'g 's AC20 -> 'G 'a 'e 'n AC21 -> 'G 'a 'e 'n 'j AC22 -> 'G 'a 'e 'n 'h AC23 -> 'G 'a 'e 'd AC24 -> 'G 'a 'e 'l AC25 -> 'G 'a 'e 'l 'g AC26 -> 'G 'a 'e 'l 'm AC27 -> 'G 'a 'e 'l 'b AC28 -> 'G 'a 'e 'l 's AC29 -> 'G 'a 'e 'l 't AC2A -> 'G 'a 'e 'l 'p AC2B -> 'G 'a 'e 'l 'h AC2C -> 'G 'a 'e 'm AC2D -> 'G 'a 'e 'b AC2E -> 'G 'a 'e 'b 's AC2F -> 'G 'a 'e 's AC30 -> 'G 'a 'e 's 's AC31 -> 'G 'a 'e 'n 'g AC32 -> 'G 'a 'e 'j AC33 -> 'G 'a 'e 'c 'h AC34 -> 'G 'a 'e 'k AC35 -> 'G 'a 'e 't AC36 -> 'G 'a 'e 'p AC37 -> 'G 'a 'e 'h AC38 -> 'G 'y 'a AC39 -> 'G 'y 'a 'g AC3A -> 'G 'y 'a 'g 'g AC3B -> 'G 'y 'a 'g 's AC3C -> 'G 'y 'a 'n AC3D -> 'G 'y 'a 'n 'j AC3E -> 'G 'y 'a 'n 'h AC3F -> 'G 'y 'a 'd AC40 -> 'G 'y 'a 'l AC41 -> 'G 'y 'a 'l 'g AC42 -> 'G 'y 'a 'l 'm AC43 -> 'G 'y 'a 'l 'b AC44 -> 'G 'y 'a 'l 's AC45 -> 'G 'y 'a 'l 't AC46 -> 'G 'y 'a 'l 'p AC47 -> 'G 'y 'a 'l 'h AC48 -> 'G 'y 'a 'm AC49 -> 'G 'y 'a 'b AC4A -> 'G 'y 'a 'b 's AC4B -> 'G 'y 'a 's AC4C -> 'G 'y 'a 's 's AC4D -> 'G 'y 'a 'n 'g AC4E -> 'G 'y 'a 'j AC4F -> 'G 'y 'a 'c 'h AC50 -> 'G 'y 'a 'k AC51 -> 'G 'y 'a 't AC52 -> 'G 'y 'a 'p AC53 -> 'G 'y 'a 'h AC54 -> 'G 'y 'a 'e AC55 -> 'G 'y 'a 'e 'g AC56 -> 'G 'y 'a 'e 'g 'g AC57 -> 'G 'y 'a 'e 'g 's AC58 -> 'G 'y 'a 'e 'n AC59 -> 'G 'y 'a 'e 'n 'j AC5A -> 'G 'y 'a 'e 'n 'h AC5B -> 'G 'y 'a 'e 'd AC5C -> 'G 'y 'a 'e 'l AC5D -> 'G 'y 'a 'e 'l 'g AC5E -> 'G 'y 'a 'e 'l 'm AC5F -> 'G 'y 'a 'e 'l 'b AC60 -> 'G 'y 'a 'e 'l 's AC61 -> 'G 'y 'a 'e 'l 't AC62 -> 'G 'y 'a 'e 'l 'p AC63 -> 'G 'y 'a 'e 'l 'h AC64 -> 'G 'y 'a 'e 'm AC65 -> 'G 'y 'a 'e 'b AC66 -> 'G 'y 'a 'e 'b 's AC67 -> 'G 'y 'a 'e 's AC68 -> 'G 'y 'a 'e 's 's AC69 -> 'G 'y 'a 'e 'n 'g AC6A -> 'G 'y 'a 'e 'j AC6B -> 'G 'y 'a 'e 'c 'h AC6C -> 'G 'y 'a 'e 'k AC6D -> 'G 'y 'a 'e 't AC6E -> 'G 'y 'a 'e 'p AC6F -> 'G 'y 'a 'e 'h AC70 -> 'G 'e 'o AC71 -> 'G 'e 'o 'g AC72 -> 'G 'e 'o 'g 'g AC73 -> 'G 'e 'o 'g 's AC74 -> 'G 'e 'o 'n AC75 -> 'G 'e 'o 'n 'j AC76 -> 'G 'e 'o 'n 'h AC77 -> 'G 'e 'o 'd AC78 -> 'G 'e 'o 'l AC79 -> 'G 'e 'o 'l 'g AC7A -> 'G 'e 'o 'l 'm AC7B -> 'G 'e 'o 'l 'b AC7C -> 'G 'e 'o 'l 's AC7D -> 'G 'e 'o 'l 't AC7E -> 'G 'e 'o 'l 'p AC7F -> 'G 'e 'o 'l 'h AC80 -> 'G 'e 'o 'm AC81 -> 'G 'e 'o 'b AC82 -> 'G 'e 'o 'b 's AC83 -> 'G 'e 'o 's AC84 -> 'G 'e 'o 's 's AC85 -> 'G 'e 'o 'n 'g AC86 -> 'G 'e 'o 'j AC87 -> 'G 'e 'o 'c 'h AC88 -> 'G 'e 'o 'k AC89 -> 'G 'e 'o 't AC8A -> 'G 'e 'o 'p AC8B -> 'G 'e 'o 'h AC8C -> 'G 'e AC8D -> 'G 'e 'g AC8E -> 'G 'e 'g 'g AC8F -> 'G 'e 'g 's AC90 -> 'G 'e 'n AC91 -> 'G 'e 'n 'j AC92 -> 'G 'e 'n 'h AC93 -> 'G 'e 'd AC94 -> 'G 'e 'l AC95 -> 'G 'e 'l 'g AC96 -> 'G 'e 'l 'm AC97 -> 'G 'e 'l 'b AC98 -> 'G 'e 'l 's AC99 -> 'G 'e 'l 't AC9A -> 'G 'e 'l 'p AC9B -> 'G 'e 'l 'h AC9C -> 'G 'e 'm AC9D -> 'G 'e 'b AC9E -> 'G 'e 'b 's AC9F -> 'G 'e 's ACA0 -> 'G 'e 's 's ACA1 -> 'G 'e 'n 'g ACA2 -> 'G 'e 'j ACA3 -> 'G 'e 'c 'h ACA4 -> 'G 'e 'k ACA5 -> 'G 'e 't ACA6 -> 'G 'e 'p ACA7 -> 'G 'e 'h ACA8 -> 'G 'y 'e 'o ACA9 -> 'G 'y 'e 'o 'g ACAA -> 'G 'y 'e 'o 'g 'g ACAB -> 'G 'y 'e 'o 'g 's ACAC -> 'G 'y 'e 'o 'n ACAD -> 'G 'y 'e 'o 'n 'j ACAE -> 'G 'y 'e 'o 'n 'h ACAF -> 'G 'y 'e 'o 'd ACB0 -> 'G 'y 'e 'o 'l ACB1 -> 'G 'y 'e 'o 'l 'g ACB2 -> 'G 'y 'e 'o 'l 'm ACB3 -> 'G 'y 'e 'o 'l 'b ACB4 -> 'G 'y 'e 'o 'l 's ACB5 -> 'G 'y 'e 'o 'l 't ACB6 -> 'G 'y 'e 'o 'l 'p ACB7 -> 'G 'y 'e 'o 'l 'h ACB8 -> 'G 'y 'e 'o 'm ACB9 -> 'G 'y 'e 'o 'b ACBA -> 'G 'y 'e 'o 'b 's ACBB -> 'G 'y 'e 'o 's ACBC -> 'G 'y 'e 'o 's 's ACBD -> 'G 'y 'e 'o 'n 'g ACBE -> 'G 'y 'e 'o 'j ACBF -> 'G 'y 'e 'o 'c 'h ACC0 -> 'G 'y 'e 'o 'k ACC1 -> 'G 'y 'e 'o 't ACC2 -> 'G 'y 'e 'o 'p ACC3 -> 'G 'y 'e 'o 'h ACC4 -> 'G 'y 'e ACC5 -> 'G 'y 'e 'g ACC6 -> 'G 'y 'e 'g 'g ACC7 -> 'G 'y 'e 'g 's ACC8 -> 'G 'y 'e 'n ACC9 -> 'G 'y 'e 'n 'j ACCA -> 'G 'y 'e 'n 'h ACCB -> 'G 'y 'e 'd ACCC -> 'G 'y 'e 'l ACCD -> 'G 'y 'e 'l 'g ACCE -> 'G 'y 'e 'l 'm ACCF -> 'G 'y 'e 'l 'b ACD0 -> 'G 'y 'e 'l 's ACD1 -> 'G 'y 'e 'l 't ACD2 -> 'G 'y 'e 'l 'p ACD3 -> 'G 'y 'e 'l 'h ACD4 -> 'G 'y 'e 'm ACD5 -> 'G 'y 'e 'b ACD6 -> 'G 'y 'e 'b 's ACD7 -> 'G 'y 'e 's ACD8 -> 'G 'y 'e 's 's ACD9 -> 'G 'y 'e 'n 'g ACDA -> 'G 'y 'e 'j ACDB -> 'G 'y 'e 'c 'h ACDC -> 'G 'y 'e 'k ACDD -> 'G 'y 'e 't ACDE -> 'G 'y 'e 'p ACDF -> 'G 'y 'e 'h ACE0 -> 'G 'o ACE1 -> 'G 'o 'g ACE2 -> 'G 'o 'g 'g ACE3 -> 'G 'o 'g 's ACE4 -> 'G 'o 'n ACE5 -> 'G 'o 'n 'j ACE6 -> 'G 'o 'n 'h ACE7 -> 'G 'o 'd ACE8 -> 'G 'o 'l ACE9 -> 'G 'o 'l 'g ACEA -> 'G 'o 'l 'm ACEB -> 'G 'o 'l 'b ACEC -> 'G 'o 'l 's ACED -> 'G 'o 'l 't ACEE -> 'G 'o 'l 'p ACEF -> 'G 'o 'l 'h ACF0 -> 'G 'o 'm ACF1 -> 'G 'o 'b ACF2 -> 'G 'o 'b 's ACF3 -> 'G 'o 's ACF4 -> 'G 'o 's 's ACF5 -> 'G 'o 'n 'g ACF6 -> 'G 'o 'j ACF7 -> 'G 'o 'c 'h ACF8 -> 'G 'o 'k ACF9 -> 'G 'o 't ACFA -> 'G 'o 'p ACFB -> 'G 'o 'h ACFC -> 'G 'o 'a ACFD -> 'G 'o 'a 'g ACFE -> 'G 'o 'a 'g 'g ACFF -> 'G 'o 'a 'g 's AD00 -> 'G 'o 'a 'n AD01 -> 'G 'o 'a 'n 'j AD02 -> 'G 'o 'a 'n 'h AD03 -> 'G 'o 'a 'd AD04 -> 'G 'o 'a 'l AD05 -> 'G 'o 'a 'l 'g AD06 -> 'G 'o 'a 'l 'm AD07 -> 'G 'o 'a 'l 'b AD08 -> 'G 'o 'a 'l 's AD09 -> 'G 'o 'a 'l 't AD0A -> 'G 'o 'a 'l 'p AD0B -> 'G 'o 'a 'l 'h AD0C -> 'G 'o 'a 'm AD0D -> 'G 'o 'a 'b AD0E -> 'G 'o 'a 'b 's AD0F -> 'G 'o 'a 's AD10 -> 'G 'o 'a 's 's AD11 -> 'G 'o 'a 'n 'g AD12 -> 'G 'o 'a 'j AD13 -> 'G 'o 'a 'c 'h AD14 -> 'G 'o 'a 'k AD15 -> 'G 'o 'a 't AD16 -> 'G 'o 'a 'p AD17 -> 'G 'o 'a 'h AD18 -> 'G 'o 'a 'e AD19 -> 'G 'o 'a 'e 'g AD1A -> 'G 'o 'a 'e 'g 'g AD1B -> 'G 'o 'a 'e 'g 's AD1C -> 'G 'o 'a 'e 'n AD1D -> 'G 'o 'a 'e 'n 'j AD1E -> 'G 'o 'a 'e 'n 'h AD1F -> 'G 'o 'a 'e 'd AD20 -> 'G 'o 'a 'e 'l AD21 -> 'G 'o 'a 'e 'l 'g AD22 -> 'G 'o 'a 'e 'l 'm AD23 -> 'G 'o 'a 'e 'l 'b AD24 -> 'G 'o 'a 'e 'l 's AD25 -> 'G 'o 'a 'e 'l 't AD26 -> 'G 'o 'a 'e 'l 'p AD27 -> 'G 'o 'a 'e 'l 'h AD28 -> 'G 'o 'a 'e 'm AD29 -> 'G 'o 'a 'e 'b AD2A -> 'G 'o 'a 'e 'b 's AD2B -> 'G 'o 'a 'e 's AD2C -> 'G 'o 'a 'e 's 's AD2D -> 'G 'o 'a 'e 'n 'g AD2E -> 'G 'o 'a 'e 'j AD2F -> 'G 'o 'a 'e 'c 'h AD30 -> 'G 'o 'a 'e 'k AD31 -> 'G 'o 'a 'e 't AD32 -> 'G 'o 'a 'e 'p AD33 -> 'G 'o 'a 'e 'h AD34 -> 'G 'o 'i AD35 -> 'G 'o 'i 'g AD36 -> 'G 'o 'i 'g 'g AD37 -> 'G 'o 'i 'g 's AD38 -> 'G 'o 'i 'n AD39 -> 'G 'o 'i 'n 'j AD3A -> 'G 'o 'i 'n 'h AD3B -> 'G 'o 'i 'd AD3C -> 'G 'o 'i 'l AD3D -> 'G 'o 'i 'l 'g AD3E -> 'G 'o 'i 'l 'm AD3F -> 'G 'o 'i 'l 'b AD40 -> 'G 'o 'i 'l 's AD41 -> 'G 'o 'i 'l 't AD42 -> 'G 'o 'i 'l 'p AD43 -> 'G 'o 'i 'l 'h AD44 -> 'G 'o 'i 'm AD45 -> 'G 'o 'i 'b AD46 -> 'G 'o 'i 'b 's AD47 -> 'G 'o 'i 's AD48 -> 'G 'o 'i 's 's AD49 -> 'G 'o 'i 'n 'g AD4A -> 'G 'o 'i 'j AD4B -> 'G 'o 'i 'c 'h AD4C -> 'G 'o 'i 'k AD4D -> 'G 'o 'i 't AD4E -> 'G 'o 'i 'p AD4F -> 'G 'o 'i 'h AD50 -> 'G 'y 'o AD51 -> 'G 'y 'o 'g AD52 -> 'G 'y 'o 'g 'g AD53 -> 'G 'y 'o 'g 's AD54 -> 'G 'y 'o 'n AD55 -> 'G 'y 'o 'n 'j AD56 -> 'G 'y 'o 'n 'h AD57 -> 'G 'y 'o 'd AD58 -> 'G 'y 'o 'l AD59 -> 'G 'y 'o 'l 'g AD5A -> 'G 'y 'o 'l 'm AD5B -> 'G 'y 'o 'l 'b AD5C -> 'G 'y 'o 'l 's AD5D -> 'G 'y 'o 'l 't AD5E -> 'G 'y 'o 'l 'p AD5F -> 'G 'y 'o 'l 'h AD60 -> 'G 'y 'o 'm AD61 -> 'G 'y 'o 'b AD62 -> 'G 'y 'o 'b 's AD63 -> 'G 'y 'o 's AD64 -> 'G 'y 'o 's 's AD65 -> 'G 'y 'o 'n 'g AD66 -> 'G 'y 'o 'j AD67 -> 'G 'y 'o 'c 'h AD68 -> 'G 'y 'o 'k AD69 -> 'G 'y 'o 't AD6A -> 'G 'y 'o 'p AD6B -> 'G 'y 'o 'h AD6C -> 'G 'u AD6D -> 'G 'u 'g AD6E -> 'G 'u 'g 'g AD6F -> 'G 'u 'g 's AD70 -> 'G 'u 'n AD71 -> 'G 'u 'n 'j AD72 -> 'G 'u 'n 'h AD73 -> 'G 'u 'd AD74 -> 'G 'u 'l AD75 -> 'G 'u 'l 'g AD76 -> 'G 'u 'l 'm AD77 -> 'G 'u 'l 'b AD78 -> 'G 'u 'l 's AD79 -> 'G 'u 'l 't AD7A -> 'G 'u 'l 'p AD7B -> 'G 'u 'l 'h AD7C -> 'G 'u 'm AD7D -> 'G 'u 'b AD7E -> 'G 'u 'b 's AD7F -> 'G 'u 's AD80 -> 'G 'u 's 's AD81 -> 'G 'u 'n 'g AD82 -> 'G 'u 'j AD83 -> 'G 'u 'c 'h AD84 -> 'G 'u 'k AD85 -> 'G 'u 't AD86 -> 'G 'u 'p AD87 -> 'G 'u 'h AD88 -> 'G 'u 'e 'o AD89 -> 'G 'u 'e 'o 'g AD8A -> 'G 'u 'e 'o 'g 'g AD8B -> 'G 'u 'e 'o 'g 's AD8C -> 'G 'u 'e 'o 'n AD8D -> 'G 'u 'e 'o 'n 'j AD8E -> 'G 'u 'e 'o 'n 'h AD8F -> 'G 'u 'e 'o 'd AD90 -> 'G 'u 'e 'o 'l AD91 -> 'G 'u 'e 'o 'l 'g AD92 -> 'G 'u 'e 'o 'l 'm AD93 -> 'G 'u 'e 'o 'l 'b AD94 -> 'G 'u 'e 'o 'l 's AD95 -> 'G 'u 'e 'o 'l 't AD96 -> 'G 'u 'e 'o 'l 'p AD97 -> 'G 'u 'e 'o 'l 'h AD98 -> 'G 'u 'e 'o 'm AD99 -> 'G 'u 'e 'o 'b AD9A -> 'G 'u 'e 'o 'b 's AD9B -> 'G 'u 'e 'o 's AD9C -> 'G 'u 'e 'o 's 's AD9D -> 'G 'u 'e 'o 'n 'g AD9E -> 'G 'u 'e 'o 'j AD9F -> 'G 'u 'e 'o 'c 'h ADA0 -> 'G 'u 'e 'o 'k ADA1 -> 'G 'u 'e 'o 't ADA2 -> 'G 'u 'e 'o 'p ADA3 -> 'G 'u 'e 'o 'h ADA4 -> 'G 'u 'e ADA5 -> 'G 'u 'e 'g ADA6 -> 'G 'u 'e 'g 'g ADA7 -> 'G 'u 'e 'g 's ADA8 -> 'G 'u 'e 'n ADA9 -> 'G 'u 'e 'n 'j ADAA -> 'G 'u 'e 'n 'h ADAB -> 'G 'u 'e 'd ADAC -> 'G 'u 'e 'l ADAD -> 'G 'u 'e 'l 'g ADAE -> 'G 'u 'e 'l 'm ADAF -> 'G 'u 'e 'l 'b ADB0 -> 'G 'u 'e 'l 's ADB1 -> 'G 'u 'e 'l 't ADB2 -> 'G 'u 'e 'l 'p ADB3 -> 'G 'u 'e 'l 'h ADB4 -> 'G 'u 'e 'm ADB5 -> 'G 'u 'e 'b ADB6 -> 'G 'u 'e 'b 's ADB7 -> 'G 'u 'e 's ADB8 -> 'G 'u 'e 's 's ADB9 -> 'G 'u 'e 'n 'g ADBA -> 'G 'u 'e 'j ADBB -> 'G 'u 'e 'c 'h ADBC -> 'G 'u 'e 'k ADBD -> 'G 'u 'e 't ADBE -> 'G 'u 'e 'p ADBF -> 'G 'u 'e 'h ADC0 -> 'G 'u 'i ADC1 -> 'G 'u 'i 'g ADC2 -> 'G 'u 'i 'g 'g ADC3 -> 'G 'u 'i 'g 's ADC4 -> 'G 'u 'i 'n ADC5 -> 'G 'u 'i 'n 'j ADC6 -> 'G 'u 'i 'n 'h ADC7 -> 'G 'u 'i 'd ADC8 -> 'G 'u 'i 'l ADC9 -> 'G 'u 'i 'l 'g ADCA -> 'G 'u 'i 'l 'm ADCB -> 'G 'u 'i 'l 'b ADCC -> 'G 'u 'i 'l 's ADCD -> 'G 'u 'i 'l 't ADCE -> 'G 'u 'i 'l 'p ADCF -> 'G 'u 'i 'l 'h ADD0 -> 'G 'u 'i 'm ADD1 -> 'G 'u 'i 'b ADD2 -> 'G 'u 'i 'b 's ADD3 -> 'G 'u 'i 's ADD4 -> 'G 'u 'i 's 's ADD5 -> 'G 'u 'i 'n 'g ADD6 -> 'G 'u 'i 'j ADD7 -> 'G 'u 'i 'c 'h ADD8 -> 'G 'u 'i 'k ADD9 -> 'G 'u 'i 't ADDA -> 'G 'u 'i 'p ADDB -> 'G 'u 'i 'h ADDC -> 'G 'y 'u ADDD -> 'G 'y 'u 'g ADDE -> 'G 'y 'u 'g 'g ADDF -> 'G 'y 'u 'g 's ADE0 -> 'G 'y 'u 'n ADE1 -> 'G 'y 'u 'n 'j ADE2 -> 'G 'y 'u 'n 'h ADE3 -> 'G 'y 'u 'd ADE4 -> 'G 'y 'u 'l ADE5 -> 'G 'y 'u 'l 'g ADE6 -> 'G 'y 'u 'l 'm ADE7 -> 'G 'y 'u 'l 'b ADE8 -> 'G 'y 'u 'l 's ADE9 -> 'G 'y 'u 'l 't ADEA -> 'G 'y 'u 'l 'p ADEB -> 'G 'y 'u 'l 'h ADEC -> 'G 'y 'u 'm ADED -> 'G 'y 'u 'b ADEE -> 'G 'y 'u 'b 's ADEF -> 'G 'y 'u 's ADF0 -> 'G 'y 'u 's 's ADF1 -> 'G 'y 'u 'n 'g ADF2 -> 'G 'y 'u 'j ADF3 -> 'G 'y 'u 'c 'h ADF4 -> 'G 'y 'u 'k ADF5 -> 'G 'y 'u 't ADF6 -> 'G 'y 'u 'p ADF7 -> 'G 'y 'u 'h ADF8 -> 'G 'e 'u ADF9 -> 'G 'e 'u 'g ADFA -> 'G 'e 'u 'g 'g ADFB -> 'G 'e 'u 'g 's ADFC -> 'G 'e 'u 'n ADFD -> 'G 'e 'u 'n 'j ADFE -> 'G 'e 'u 'n 'h ADFF -> 'G 'e 'u 'd AE00 -> 'G 'e 'u 'l AE01 -> 'G 'e 'u 'l 'g AE02 -> 'G 'e 'u 'l 'm AE03 -> 'G 'e 'u 'l 'b AE04 -> 'G 'e 'u 'l 's AE05 -> 'G 'e 'u 'l 't AE06 -> 'G 'e 'u 'l 'p AE07 -> 'G 'e 'u 'l 'h AE08 -> 'G 'e 'u 'm AE09 -> 'G 'e 'u 'b AE0A -> 'G 'e 'u 'b 's AE0B -> 'G 'e 'u 's AE0C -> 'G 'e 'u 's 's AE0D -> 'G 'e 'u 'n 'g AE0E -> 'G 'e 'u 'j AE0F -> 'G 'e 'u 'c 'h AE10 -> 'G 'e 'u 'k AE11 -> 'G 'e 'u 't AE12 -> 'G 'e 'u 'p AE13 -> 'G 'e 'u 'h AE14 -> 'G 'e 'u 'i AE15 -> 'G 'e 'u 'i 'g AE16 -> 'G 'e 'u 'i 'g 'g AE17 -> 'G 'e 'u 'i 'g 's AE18 -> 'G 'e 'u 'i 'n AE19 -> 'G 'e 'u 'i 'n 'j AE1A -> 'G 'e 'u 'i 'n 'h AE1B -> 'G 'e 'u 'i 'd AE1C -> 'G 'e 'u 'i 'l AE1D -> 'G 'e 'u 'i 'l 'g AE1E -> 'G 'e 'u 'i 'l 'm AE1F -> 'G 'e 'u 'i 'l 'b AE20 -> 'G 'e 'u 'i 'l 's AE21 -> 'G 'e 'u 'i 'l 't AE22 -> 'G 'e 'u 'i 'l 'p AE23 -> 'G 'e 'u 'i 'l 'h AE24 -> 'G 'e 'u 'i 'm AE25 -> 'G 'e 'u 'i 'b AE26 -> 'G 'e 'u 'i 'b 's AE27 -> 'G 'e 'u 'i 's AE28 -> 'G 'e 'u 'i 's 's AE29 -> 'G 'e 'u 'i 'n 'g AE2A -> 'G 'e 'u 'i 'j AE2B -> 'G 'e 'u 'i 'c 'h AE2C -> 'G 'e 'u 'i 'k AE2D -> 'G 'e 'u 'i 't AE2E -> 'G 'e 'u 'i 'p AE2F -> 'G 'e 'u 'i 'h AE30 -> 'G 'i AE31 -> 'G 'i 'g AE32 -> 'G 'i 'g 'g AE33 -> 'G 'i 'g 's AE34 -> 'G 'i 'n AE35 -> 'G 'i 'n 'j AE36 -> 'G 'i 'n 'h AE37 -> 'G 'i 'd AE38 -> 'G 'i 'l AE39 -> 'G 'i 'l 'g AE3A -> 'G 'i 'l 'm AE3B -> 'G 'i 'l 'b AE3C -> 'G 'i 'l 's AE3D -> 'G 'i 'l 't AE3E -> 'G 'i 'l 'p AE3F -> 'G 'i 'l 'h AE40 -> 'G 'i 'm AE41 -> 'G 'i 'b AE42 -> 'G 'i 'b 's AE43 -> 'G 'i 's AE44 -> 'G 'i 's 's AE45 -> 'G 'i 'n 'g AE46 -> 'G 'i 'j AE47 -> 'G 'i 'c 'h AE48 -> 'G 'i 'k AE49 -> 'G 'i 't AE4A -> 'G 'i 'p AE4B -> 'G 'i 'h AE4C -> 'G 'g 'a AE4D -> 'G 'g 'a 'g AE4E -> 'G 'g 'a 'g 'g AE4F -> 'G 'g 'a 'g 's AE50 -> 'G 'g 'a 'n AE51 -> 'G 'g 'a 'n 'j AE52 -> 'G 'g 'a 'n 'h AE53 -> 'G 'g 'a 'd AE54 -> 'G 'g 'a 'l AE55 -> 'G 'g 'a 'l 'g AE56 -> 'G 'g 'a 'l 'm AE57 -> 'G 'g 'a 'l 'b AE58 -> 'G 'g 'a 'l 's AE59 -> 'G 'g 'a 'l 't AE5A -> 'G 'g 'a 'l 'p AE5B -> 'G 'g 'a 'l 'h AE5C -> 'G 'g 'a 'm AE5D -> 'G 'g 'a 'b AE5E -> 'G 'g 'a 'b 's AE5F -> 'G 'g 'a 's AE60 -> 'G 'g 'a 's 's AE61 -> 'G 'g 'a 'n 'g AE62 -> 'G 'g 'a 'j AE63 -> 'G 'g 'a 'c 'h AE64 -> 'G 'g 'a 'k AE65 -> 'G 'g 'a 't AE66 -> 'G 'g 'a 'p AE67 -> 'G 'g 'a 'h AE68 -> 'G 'g 'a 'e AE69 -> 'G 'g 'a 'e 'g AE6A -> 'G 'g 'a 'e 'g 'g AE6B -> 'G 'g 'a 'e 'g 's AE6C -> 'G 'g 'a 'e 'n AE6D -> 'G 'g 'a 'e 'n 'j AE6E -> 'G 'g 'a 'e 'n 'h AE6F -> 'G 'g 'a 'e 'd AE70 -> 'G 'g 'a 'e 'l AE71 -> 'G 'g 'a 'e 'l 'g AE72 -> 'G 'g 'a 'e 'l 'm AE73 -> 'G 'g 'a 'e 'l 'b AE74 -> 'G 'g 'a 'e 'l 's AE75 -> 'G 'g 'a 'e 'l 't AE76 -> 'G 'g 'a 'e 'l 'p AE77 -> 'G 'g 'a 'e 'l 'h AE78 -> 'G 'g 'a 'e 'm AE79 -> 'G 'g 'a 'e 'b AE7A -> 'G 'g 'a 'e 'b 's AE7B -> 'G 'g 'a 'e 's AE7C -> 'G 'g 'a 'e 's 's AE7D -> 'G 'g 'a 'e 'n 'g AE7E -> 'G 'g 'a 'e 'j AE7F -> 'G 'g 'a 'e 'c 'h AE80 -> 'G 'g 'a 'e 'k AE81 -> 'G 'g 'a 'e 't AE82 -> 'G 'g 'a 'e 'p AE83 -> 'G 'g 'a 'e 'h AE84 -> 'G 'g 'y 'a AE85 -> 'G 'g 'y 'a 'g AE86 -> 'G 'g 'y 'a 'g 'g AE87 -> 'G 'g 'y 'a 'g 's AE88 -> 'G 'g 'y 'a 'n AE89 -> 'G 'g 'y 'a 'n 'j AE8A -> 'G 'g 'y 'a 'n 'h AE8B -> 'G 'g 'y 'a 'd AE8C -> 'G 'g 'y 'a 'l AE8D -> 'G 'g 'y 'a 'l 'g AE8E -> 'G 'g 'y 'a 'l 'm AE8F -> 'G 'g 'y 'a 'l 'b AE90 -> 'G 'g 'y 'a 'l 's AE91 -> 'G 'g 'y 'a 'l 't AE92 -> 'G 'g 'y 'a 'l 'p AE93 -> 'G 'g 'y 'a 'l 'h AE94 -> 'G 'g 'y 'a 'm AE95 -> 'G 'g 'y 'a 'b AE96 -> 'G 'g 'y 'a 'b 's AE97 -> 'G 'g 'y 'a 's AE98 -> 'G 'g 'y 'a 's 's AE99 -> 'G 'g 'y 'a 'n 'g AE9A -> 'G 'g 'y 'a 'j AE9B -> 'G 'g 'y 'a 'c 'h AE9C -> 'G 'g 'y 'a 'k AE9D -> 'G 'g 'y 'a 't AE9E -> 'G 'g 'y 'a 'p AE9F -> 'G 'g 'y 'a 'h AEA0 -> 'G 'g 'y 'a 'e AEA1 -> 'G 'g 'y 'a 'e 'g AEA2 -> 'G 'g 'y 'a 'e 'g 'g AEA3 -> 'G 'g 'y 'a 'e 'g 's AEA4 -> 'G 'g 'y 'a 'e 'n AEA5 -> 'G 'g 'y 'a 'e 'n 'j AEA6 -> 'G 'g 'y 'a 'e 'n 'h AEA7 -> 'G 'g 'y 'a 'e 'd AEA8 -> 'G 'g 'y 'a 'e 'l AEA9 -> 'G 'g 'y 'a 'e 'l 'g AEAA -> 'G 'g 'y 'a 'e 'l 'm AEAB -> 'G 'g 'y 'a 'e 'l 'b AEAC -> 'G 'g 'y 'a 'e 'l 's AEAD -> 'G 'g 'y 'a 'e 'l 't AEAE -> 'G 'g 'y 'a 'e 'l 'p AEAF -> 'G 'g 'y 'a 'e 'l 'h AEB0 -> 'G 'g 'y 'a 'e 'm AEB1 -> 'G 'g 'y 'a 'e 'b AEB2 -> 'G 'g 'y 'a 'e 'b 's AEB3 -> 'G 'g 'y 'a 'e 's AEB4 -> 'G 'g 'y 'a 'e 's 's AEB5 -> 'G 'g 'y 'a 'e 'n 'g AEB6 -> 'G 'g 'y 'a 'e 'j AEB7 -> 'G 'g 'y 'a 'e 'c 'h AEB8 -> 'G 'g 'y 'a 'e 'k AEB9 -> 'G 'g 'y 'a 'e 't AEBA -> 'G 'g 'y 'a 'e 'p AEBB -> 'G 'g 'y 'a 'e 'h AEBC -> 'G 'g 'e 'o AEBD -> 'G 'g 'e 'o 'g AEBE -> 'G 'g 'e 'o 'g 'g AEBF -> 'G 'g 'e 'o 'g 's AEC0 -> 'G 'g 'e 'o 'n AEC1 -> 'G 'g 'e 'o 'n 'j AEC2 -> 'G 'g 'e 'o 'n 'h AEC3 -> 'G 'g 'e 'o 'd AEC4 -> 'G 'g 'e 'o 'l AEC5 -> 'G 'g 'e 'o 'l 'g AEC6 -> 'G 'g 'e 'o 'l 'm AEC7 -> 'G 'g 'e 'o 'l 'b AEC8 -> 'G 'g 'e 'o 'l 's AEC9 -> 'G 'g 'e 'o 'l 't AECA -> 'G 'g 'e 'o 'l 'p AECB -> 'G 'g 'e 'o 'l 'h AECC -> 'G 'g 'e 'o 'm AECD -> 'G 'g 'e 'o 'b AECE -> 'G 'g 'e 'o 'b 's AECF -> 'G 'g 'e 'o 's AED0 -> 'G 'g 'e 'o 's 's AED1 -> 'G 'g 'e 'o 'n 'g AED2 -> 'G 'g 'e 'o 'j AED3 -> 'G 'g 'e 'o 'c 'h AED4 -> 'G 'g 'e 'o 'k AED5 -> 'G 'g 'e 'o 't AED6 -> 'G 'g 'e 'o 'p AED7 -> 'G 'g 'e 'o 'h AED8 -> 'G 'g 'e AED9 -> 'G 'g 'e 'g AEDA -> 'G 'g 'e 'g 'g AEDB -> 'G 'g 'e 'g 's AEDC -> 'G 'g 'e 'n AEDD -> 'G 'g 'e 'n 'j AEDE -> 'G 'g 'e 'n 'h AEDF -> 'G 'g 'e 'd AEE0 -> 'G 'g 'e 'l AEE1 -> 'G 'g 'e 'l 'g AEE2 -> 'G 'g 'e 'l 'm AEE3 -> 'G 'g 'e 'l 'b AEE4 -> 'G 'g 'e 'l 's AEE5 -> 'G 'g 'e 'l 't AEE6 -> 'G 'g 'e 'l 'p AEE7 -> 'G 'g 'e 'l 'h AEE8 -> 'G 'g 'e 'm AEE9 -> 'G 'g 'e 'b AEEA -> 'G 'g 'e 'b 's AEEB -> 'G 'g 'e 's AEEC -> 'G 'g 'e 's 's AEED -> 'G 'g 'e 'n 'g AEEE -> 'G 'g 'e 'j AEEF -> 'G 'g 'e 'c 'h AEF0 -> 'G 'g 'e 'k AEF1 -> 'G 'g 'e 't AEF2 -> 'G 'g 'e 'p AEF3 -> 'G 'g 'e 'h AEF4 -> 'G 'g 'y 'e 'o AEF5 -> 'G 'g 'y 'e 'o 'g AEF6 -> 'G 'g 'y 'e 'o 'g 'g AEF7 -> 'G 'g 'y 'e 'o 'g 's AEF8 -> 'G 'g 'y 'e 'o 'n AEF9 -> 'G 'g 'y 'e 'o 'n 'j AEFA -> 'G 'g 'y 'e 'o 'n 'h AEFB -> 'G 'g 'y 'e 'o 'd AEFC -> 'G 'g 'y 'e 'o 'l AEFD -> 'G 'g 'y 'e 'o 'l 'g AEFE -> 'G 'g 'y 'e 'o 'l 'm AEFF -> 'G 'g 'y 'e 'o 'l 'b AF00 -> 'G 'g 'y 'e 'o 'l 's AF01 -> 'G 'g 'y 'e 'o 'l 't AF02 -> 'G 'g 'y 'e 'o 'l 'p AF03 -> 'G 'g 'y 'e 'o 'l 'h AF04 -> 'G 'g 'y 'e 'o 'm AF05 -> 'G 'g 'y 'e 'o 'b AF06 -> 'G 'g 'y 'e 'o 'b 's AF07 -> 'G 'g 'y 'e 'o 's AF08 -> 'G 'g 'y 'e 'o 's 's AF09 -> 'G 'g 'y 'e 'o 'n 'g AF0A -> 'G 'g 'y 'e 'o 'j AF0B -> 'G 'g 'y 'e 'o 'c 'h AF0C -> 'G 'g 'y 'e 'o 'k AF0D -> 'G 'g 'y 'e 'o 't AF0E -> 'G 'g 'y 'e 'o 'p AF0F -> 'G 'g 'y 'e 'o 'h AF10 -> 'G 'g 'y 'e AF11 -> 'G 'g 'y 'e 'g AF12 -> 'G 'g 'y 'e 'g 'g AF13 -> 'G 'g 'y 'e 'g 's AF14 -> 'G 'g 'y 'e 'n AF15 -> 'G 'g 'y 'e 'n 'j AF16 -> 'G 'g 'y 'e 'n 'h AF17 -> 'G 'g 'y 'e 'd AF18 -> 'G 'g 'y 'e 'l AF19 -> 'G 'g 'y 'e 'l 'g AF1A -> 'G 'g 'y 'e 'l 'm AF1B -> 'G 'g 'y 'e 'l 'b AF1C -> 'G 'g 'y 'e 'l 's AF1D -> 'G 'g 'y 'e 'l 't AF1E -> 'G 'g 'y 'e 'l 'p AF1F -> 'G 'g 'y 'e 'l 'h AF20 -> 'G 'g 'y 'e 'm AF21 -> 'G 'g 'y 'e 'b AF22 -> 'G 'g 'y 'e 'b 's AF23 -> 'G 'g 'y 'e 's AF24 -> 'G 'g 'y 'e 's 's AF25 -> 'G 'g 'y 'e 'n 'g AF26 -> 'G 'g 'y 'e 'j AF27 -> 'G 'g 'y 'e 'c 'h AF28 -> 'G 'g 'y 'e 'k AF29 -> 'G 'g 'y 'e 't AF2A -> 'G 'g 'y 'e 'p AF2B -> 'G 'g 'y 'e 'h AF2C -> 'G 'g 'o AF2D -> 'G 'g 'o 'g AF2E -> 'G 'g 'o 'g 'g AF2F -> 'G 'g 'o 'g 's AF30 -> 'G 'g 'o 'n AF31 -> 'G 'g 'o 'n 'j AF32 -> 'G 'g 'o 'n 'h AF33 -> 'G 'g 'o 'd AF34 -> 'G 'g 'o 'l AF35 -> 'G 'g 'o 'l 'g AF36 -> 'G 'g 'o 'l 'm AF37 -> 'G 'g 'o 'l 'b AF38 -> 'G 'g 'o 'l 's AF39 -> 'G 'g 'o 'l 't AF3A -> 'G 'g 'o 'l 'p AF3B -> 'G 'g 'o 'l 'h AF3C -> 'G 'g 'o 'm AF3D -> 'G 'g 'o 'b AF3E -> 'G 'g 'o 'b 's AF3F -> 'G 'g 'o 's AF40 -> 'G 'g 'o 's 's AF41 -> 'G 'g 'o 'n 'g AF42 -> 'G 'g 'o 'j AF43 -> 'G 'g 'o 'c 'h AF44 -> 'G 'g 'o 'k AF45 -> 'G 'g 'o 't AF46 -> 'G 'g 'o 'p AF47 -> 'G 'g 'o 'h AF48 -> 'G 'g 'o 'a AF49 -> 'G 'g 'o 'a 'g AF4A -> 'G 'g 'o 'a 'g 'g AF4B -> 'G 'g 'o 'a 'g 's AF4C -> 'G 'g 'o 'a 'n AF4D -> 'G 'g 'o 'a 'n 'j AF4E -> 'G 'g 'o 'a 'n 'h AF4F -> 'G 'g 'o 'a 'd AF50 -> 'G 'g 'o 'a 'l AF51 -> 'G 'g 'o 'a 'l 'g AF52 -> 'G 'g 'o 'a 'l 'm AF53 -> 'G 'g 'o 'a 'l 'b AF54 -> 'G 'g 'o 'a 'l 's AF55 -> 'G 'g 'o 'a 'l 't AF56 -> 'G 'g 'o 'a 'l 'p AF57 -> 'G 'g 'o 'a 'l 'h AF58 -> 'G 'g 'o 'a 'm AF59 -> 'G 'g 'o 'a 'b AF5A -> 'G 'g 'o 'a 'b 's AF5B -> 'G 'g 'o 'a 's AF5C -> 'G 'g 'o 'a 's 's AF5D -> 'G 'g 'o 'a 'n 'g AF5E -> 'G 'g 'o 'a 'j AF5F -> 'G 'g 'o 'a 'c 'h AF60 -> 'G 'g 'o 'a 'k AF61 -> 'G 'g 'o 'a 't AF62 -> 'G 'g 'o 'a 'p AF63 -> 'G 'g 'o 'a 'h AF64 -> 'G 'g 'o 'a 'e AF65 -> 'G 'g 'o 'a 'e 'g AF66 -> 'G 'g 'o 'a 'e 'g 'g AF67 -> 'G 'g 'o 'a 'e 'g 's AF68 -> 'G 'g 'o 'a 'e 'n AF69 -> 'G 'g 'o 'a 'e 'n 'j AF6A -> 'G 'g 'o 'a 'e 'n 'h AF6B -> 'G 'g 'o 'a 'e 'd AF6C -> 'G 'g 'o 'a 'e 'l AF6D -> 'G 'g 'o 'a 'e 'l 'g AF6E -> 'G 'g 'o 'a 'e 'l 'm AF6F -> 'G 'g 'o 'a 'e 'l 'b AF70 -> 'G 'g 'o 'a 'e 'l 's AF71 -> 'G 'g 'o 'a 'e 'l 't AF72 -> 'G 'g 'o 'a 'e 'l 'p AF73 -> 'G 'g 'o 'a 'e 'l 'h AF74 -> 'G 'g 'o 'a 'e 'm AF75 -> 'G 'g 'o 'a 'e 'b AF76 -> 'G 'g 'o 'a 'e 'b 's AF77 -> 'G 'g 'o 'a 'e 's AF78 -> 'G 'g 'o 'a 'e 's 's AF79 -> 'G 'g 'o 'a 'e 'n 'g AF7A -> 'G 'g 'o 'a 'e 'j AF7B -> 'G 'g 'o 'a 'e 'c 'h AF7C -> 'G 'g 'o 'a 'e 'k AF7D -> 'G 'g 'o 'a 'e 't AF7E -> 'G 'g 'o 'a 'e 'p AF7F -> 'G 'g 'o 'a 'e 'h AF80 -> 'G 'g 'o 'i AF81 -> 'G 'g 'o 'i 'g AF82 -> 'G 'g 'o 'i 'g 'g AF83 -> 'G 'g 'o 'i 'g 's AF84 -> 'G 'g 'o 'i 'n AF85 -> 'G 'g 'o 'i 'n 'j AF86 -> 'G 'g 'o 'i 'n 'h AF87 -> 'G 'g 'o 'i 'd AF88 -> 'G 'g 'o 'i 'l AF89 -> 'G 'g 'o 'i 'l 'g AF8A -> 'G 'g 'o 'i 'l 'm AF8B -> 'G 'g 'o 'i 'l 'b AF8C -> 'G 'g 'o 'i 'l 's AF8D -> 'G 'g 'o 'i 'l 't AF8E -> 'G 'g 'o 'i 'l 'p AF8F -> 'G 'g 'o 'i 'l 'h AF90 -> 'G 'g 'o 'i 'm AF91 -> 'G 'g 'o 'i 'b AF92 -> 'G 'g 'o 'i 'b 's AF93 -> 'G 'g 'o 'i 's AF94 -> 'G 'g 'o 'i 's 's AF95 -> 'G 'g 'o 'i 'n 'g AF96 -> 'G 'g 'o 'i 'j AF97 -> 'G 'g 'o 'i 'c 'h AF98 -> 'G 'g 'o 'i 'k AF99 -> 'G 'g 'o 'i 't AF9A -> 'G 'g 'o 'i 'p AF9B -> 'G 'g 'o 'i 'h AF9C -> 'G 'g 'y 'o AF9D -> 'G 'g 'y 'o 'g AF9E -> 'G 'g 'y 'o 'g 'g AF9F -> 'G 'g 'y 'o 'g 's AFA0 -> 'G 'g 'y 'o 'n AFA1 -> 'G 'g 'y 'o 'n 'j AFA2 -> 'G 'g 'y 'o 'n 'h AFA3 -> 'G 'g 'y 'o 'd AFA4 -> 'G 'g 'y 'o 'l AFA5 -> 'G 'g 'y 'o 'l 'g AFA6 -> 'G 'g 'y 'o 'l 'm AFA7 -> 'G 'g 'y 'o 'l 'b AFA8 -> 'G 'g 'y 'o 'l 's AFA9 -> 'G 'g 'y 'o 'l 't AFAA -> 'G 'g 'y 'o 'l 'p AFAB -> 'G 'g 'y 'o 'l 'h AFAC -> 'G 'g 'y 'o 'm AFAD -> 'G 'g 'y 'o 'b AFAE -> 'G 'g 'y 'o 'b 's AFAF -> 'G 'g 'y 'o 's AFB0 -> 'G 'g 'y 'o 's 's AFB1 -> 'G 'g 'y 'o 'n 'g AFB2 -> 'G 'g 'y 'o 'j AFB3 -> 'G 'g 'y 'o 'c 'h AFB4 -> 'G 'g 'y 'o 'k AFB5 -> 'G 'g 'y 'o 't AFB6 -> 'G 'g 'y 'o 'p AFB7 -> 'G 'g 'y 'o 'h AFB8 -> 'G 'g 'u AFB9 -> 'G 'g 'u 'g AFBA -> 'G 'g 'u 'g 'g AFBB -> 'G 'g 'u 'g 's AFBC -> 'G 'g 'u 'n AFBD -> 'G 'g 'u 'n 'j AFBE -> 'G 'g 'u 'n 'h AFBF -> 'G 'g 'u 'd AFC0 -> 'G 'g 'u 'l AFC1 -> 'G 'g 'u 'l 'g AFC2 -> 'G 'g 'u 'l 'm AFC3 -> 'G 'g 'u 'l 'b AFC4 -> 'G 'g 'u 'l 's AFC5 -> 'G 'g 'u 'l 't AFC6 -> 'G 'g 'u 'l 'p AFC7 -> 'G 'g 'u 'l 'h AFC8 -> 'G 'g 'u 'm AFC9 -> 'G 'g 'u 'b AFCA -> 'G 'g 'u 'b 's AFCB -> 'G 'g 'u 's AFCC -> 'G 'g 'u 's 's AFCD -> 'G 'g 'u 'n 'g AFCE -> 'G 'g 'u 'j AFCF -> 'G 'g 'u 'c 'h AFD0 -> 'G 'g 'u 'k AFD1 -> 'G 'g 'u 't AFD2 -> 'G 'g 'u 'p AFD3 -> 'G 'g 'u 'h AFD4 -> 'G 'g 'u 'e 'o AFD5 -> 'G 'g 'u 'e 'o 'g AFD6 -> 'G 'g 'u 'e 'o 'g 'g AFD7 -> 'G 'g 'u 'e 'o 'g 's AFD8 -> 'G 'g 'u 'e 'o 'n AFD9 -> 'G 'g 'u 'e 'o 'n 'j AFDA -> 'G 'g 'u 'e 'o 'n 'h AFDB -> 'G 'g 'u 'e 'o 'd AFDC -> 'G 'g 'u 'e 'o 'l AFDD -> 'G 'g 'u 'e 'o 'l 'g AFDE -> 'G 'g 'u 'e 'o 'l 'm AFDF -> 'G 'g 'u 'e 'o 'l 'b AFE0 -> 'G 'g 'u 'e 'o 'l 's AFE1 -> 'G 'g 'u 'e 'o 'l 't AFE2 -> 'G 'g 'u 'e 'o 'l 'p AFE3 -> 'G 'g 'u 'e 'o 'l 'h AFE4 -> 'G 'g 'u 'e 'o 'm AFE5 -> 'G 'g 'u 'e 'o 'b AFE6 -> 'G 'g 'u 'e 'o 'b 's AFE7 -> 'G 'g 'u 'e 'o 's AFE8 -> 'G 'g 'u 'e 'o 's 's AFE9 -> 'G 'g 'u 'e 'o 'n 'g AFEA -> 'G 'g 'u 'e 'o 'j AFEB -> 'G 'g 'u 'e 'o 'c 'h AFEC -> 'G 'g 'u 'e 'o 'k AFED -> 'G 'g 'u 'e 'o 't AFEE -> 'G 'g 'u 'e 'o 'p AFEF -> 'G 'g 'u 'e 'o 'h AFF0 -> 'G 'g 'u 'e AFF1 -> 'G 'g 'u 'e 'g AFF2 -> 'G 'g 'u 'e 'g 'g AFF3 -> 'G 'g 'u 'e 'g 's AFF4 -> 'G 'g 'u 'e 'n AFF5 -> 'G 'g 'u 'e 'n 'j AFF6 -> 'G 'g 'u 'e 'n 'h AFF7 -> 'G 'g 'u 'e 'd AFF8 -> 'G 'g 'u 'e 'l AFF9 -> 'G 'g 'u 'e 'l 'g AFFA -> 'G 'g 'u 'e 'l 'm AFFB -> 'G 'g 'u 'e 'l 'b AFFC -> 'G 'g 'u 'e 'l 's AFFD -> 'G 'g 'u 'e 'l 't AFFE -> 'G 'g 'u 'e 'l 'p AFFF -> 'G 'g 'u 'e 'l 'h B000 -> 'G 'g 'u 'e 'm B001 -> 'G 'g 'u 'e 'b B002 -> 'G 'g 'u 'e 'b 's B003 -> 'G 'g 'u 'e 's B004 -> 'G 'g 'u 'e 's 's B005 -> 'G 'g 'u 'e 'n 'g B006 -> 'G 'g 'u 'e 'j B007 -> 'G 'g 'u 'e 'c 'h B008 -> 'G 'g 'u 'e 'k B009 -> 'G 'g 'u 'e 't B00A -> 'G 'g 'u 'e 'p B00B -> 'G 'g 'u 'e 'h B00C -> 'G 'g 'u 'i B00D -> 'G 'g 'u 'i 'g B00E -> 'G 'g 'u 'i 'g 'g B00F -> 'G 'g 'u 'i 'g 's B010 -> 'G 'g 'u 'i 'n B011 -> 'G 'g 'u 'i 'n 'j B012 -> 'G 'g 'u 'i 'n 'h B013 -> 'G 'g 'u 'i 'd B014 -> 'G 'g 'u 'i 'l B015 -> 'G 'g 'u 'i 'l 'g B016 -> 'G 'g 'u 'i 'l 'm B017 -> 'G 'g 'u 'i 'l 'b B018 -> 'G 'g 'u 'i 'l 's B019 -> 'G 'g 'u 'i 'l 't B01A -> 'G 'g 'u 'i 'l 'p B01B -> 'G 'g 'u 'i 'l 'h B01C -> 'G 'g 'u 'i 'm B01D -> 'G 'g 'u 'i 'b B01E -> 'G 'g 'u 'i 'b 's B01F -> 'G 'g 'u 'i 's B020 -> 'G 'g 'u 'i 's 's B021 -> 'G 'g 'u 'i 'n 'g B022 -> 'G 'g 'u 'i 'j B023 -> 'G 'g 'u 'i 'c 'h B024 -> 'G 'g 'u 'i 'k B025 -> 'G 'g 'u 'i 't B026 -> 'G 'g 'u 'i 'p B027 -> 'G 'g 'u 'i 'h B028 -> 'G 'g 'y 'u B029 -> 'G 'g 'y 'u 'g B02A -> 'G 'g 'y 'u 'g 'g B02B -> 'G 'g 'y 'u 'g 's B02C -> 'G 'g 'y 'u 'n B02D -> 'G 'g 'y 'u 'n 'j B02E -> 'G 'g 'y 'u 'n 'h B02F -> 'G 'g 'y 'u 'd B030 -> 'G 'g 'y 'u 'l B031 -> 'G 'g 'y 'u 'l 'g B032 -> 'G 'g 'y 'u 'l 'm B033 -> 'G 'g 'y 'u 'l 'b B034 -> 'G 'g 'y 'u 'l 's B035 -> 'G 'g 'y 'u 'l 't B036 -> 'G 'g 'y 'u 'l 'p B037 -> 'G 'g 'y 'u 'l 'h B038 -> 'G 'g 'y 'u 'm B039 -> 'G 'g 'y 'u 'b B03A -> 'G 'g 'y 'u 'b 's B03B -> 'G 'g 'y 'u 's B03C -> 'G 'g 'y 'u 's 's B03D -> 'G 'g 'y 'u 'n 'g B03E -> 'G 'g 'y 'u 'j B03F -> 'G 'g 'y 'u 'c 'h B040 -> 'G 'g 'y 'u 'k B041 -> 'G 'g 'y 'u 't B042 -> 'G 'g 'y 'u 'p B043 -> 'G 'g 'y 'u 'h B044 -> 'G 'g 'e 'u B045 -> 'G 'g 'e 'u 'g B046 -> 'G 'g 'e 'u 'g 'g B047 -> 'G 'g 'e 'u 'g 's B048 -> 'G 'g 'e 'u 'n B049 -> 'G 'g 'e 'u 'n 'j B04A -> 'G 'g 'e 'u 'n 'h B04B -> 'G 'g 'e 'u 'd B04C -> 'G 'g 'e 'u 'l B04D -> 'G 'g 'e 'u 'l 'g B04E -> 'G 'g 'e 'u 'l 'm B04F -> 'G 'g 'e 'u 'l 'b B050 -> 'G 'g 'e 'u 'l 's B051 -> 'G 'g 'e 'u 'l 't B052 -> 'G 'g 'e 'u 'l 'p B053 -> 'G 'g 'e 'u 'l 'h B054 -> 'G 'g 'e 'u 'm B055 -> 'G 'g 'e 'u 'b B056 -> 'G 'g 'e 'u 'b 's B057 -> 'G 'g 'e 'u 's B058 -> 'G 'g 'e 'u 's 's B059 -> 'G 'g 'e 'u 'n 'g B05A -> 'G 'g 'e 'u 'j B05B -> 'G 'g 'e 'u 'c 'h B05C -> 'G 'g 'e 'u 'k B05D -> 'G 'g 'e 'u 't B05E -> 'G 'g 'e 'u 'p B05F -> 'G 'g 'e 'u 'h B060 -> 'G 'g 'e 'u 'i B061 -> 'G 'g 'e 'u 'i 'g B062 -> 'G 'g 'e 'u 'i 'g 'g B063 -> 'G 'g 'e 'u 'i 'g 's B064 -> 'G 'g 'e 'u 'i 'n B065 -> 'G 'g 'e 'u 'i 'n 'j B066 -> 'G 'g 'e 'u 'i 'n 'h B067 -> 'G 'g 'e 'u 'i 'd B068 -> 'G 'g 'e 'u 'i 'l B069 -> 'G 'g 'e 'u 'i 'l 'g B06A -> 'G 'g 'e 'u 'i 'l 'm B06B -> 'G 'g 'e 'u 'i 'l 'b B06C -> 'G 'g 'e 'u 'i 'l 's B06D -> 'G 'g 'e 'u 'i 'l 't B06E -> 'G 'g 'e 'u 'i 'l 'p B06F -> 'G 'g 'e 'u 'i 'l 'h B070 -> 'G 'g 'e 'u 'i 'm B071 -> 'G 'g 'e 'u 'i 'b B072 -> 'G 'g 'e 'u 'i 'b 's B073 -> 'G 'g 'e 'u 'i 's B074 -> 'G 'g 'e 'u 'i 's 's B075 -> 'G 'g 'e 'u 'i 'n 'g B076 -> 'G 'g 'e 'u 'i 'j B077 -> 'G 'g 'e 'u 'i 'c 'h B078 -> 'G 'g 'e 'u 'i 'k B079 -> 'G 'g 'e 'u 'i 't B07A -> 'G 'g 'e 'u 'i 'p B07B -> 'G 'g 'e 'u 'i 'h B07C -> 'G 'g 'i B07D -> 'G 'g 'i 'g B07E -> 'G 'g 'i 'g 'g B07F -> 'G 'g 'i 'g 's B080 -> 'G 'g 'i 'n B081 -> 'G 'g 'i 'n 'j B082 -> 'G 'g 'i 'n 'h B083 -> 'G 'g 'i 'd B084 -> 'G 'g 'i 'l B085 -> 'G 'g 'i 'l 'g B086 -> 'G 'g 'i 'l 'm B087 -> 'G 'g 'i 'l 'b B088 -> 'G 'g 'i 'l 's B089 -> 'G 'g 'i 'l 't B08A -> 'G 'g 'i 'l 'p B08B -> 'G 'g 'i 'l 'h B08C -> 'G 'g 'i 'm B08D -> 'G 'g 'i 'b B08E -> 'G 'g 'i 'b 's B08F -> 'G 'g 'i 's B090 -> 'G 'g 'i 's 's B091 -> 'G 'g 'i 'n 'g B092 -> 'G 'g 'i 'j B093 -> 'G 'g 'i 'c 'h B094 -> 'G 'g 'i 'k B095 -> 'G 'g 'i 't B096 -> 'G 'g 'i 'p B097 -> 'G 'g 'i 'h B098 -> 'N 'a B099 -> 'N 'a 'g B09A -> 'N 'a 'g 'g B09B -> 'N 'a 'g 's B09C -> 'N 'a 'n B09D -> 'N 'a 'n 'j B09E -> 'N 'a 'n 'h B09F -> 'N 'a 'd B0A0 -> 'N 'a 'l B0A1 -> 'N 'a 'l 'g B0A2 -> 'N 'a 'l 'm B0A3 -> 'N 'a 'l 'b B0A4 -> 'N 'a 'l 's B0A5 -> 'N 'a 'l 't B0A6 -> 'N 'a 'l 'p B0A7 -> 'N 'a 'l 'h B0A8 -> 'N 'a 'm B0A9 -> 'N 'a 'b B0AA -> 'N 'a 'b 's B0AB -> 'N 'a 's B0AC -> 'N 'a 's 's B0AD -> 'N 'a 'n 'g B0AE -> 'N 'a 'j B0AF -> 'N 'a 'c 'h B0B0 -> 'N 'a 'k B0B1 -> 'N 'a 't B0B2 -> 'N 'a 'p B0B3 -> 'N 'a 'h B0B4 -> 'N 'a 'e B0B5 -> 'N 'a 'e 'g B0B6 -> 'N 'a 'e 'g 'g B0B7 -> 'N 'a 'e 'g 's B0B8 -> 'N 'a 'e 'n B0B9 -> 'N 'a 'e 'n 'j B0BA -> 'N 'a 'e 'n 'h B0BB -> 'N 'a 'e 'd B0BC -> 'N 'a 'e 'l B0BD -> 'N 'a 'e 'l 'g B0BE -> 'N 'a 'e 'l 'm B0BF -> 'N 'a 'e 'l 'b B0C0 -> 'N 'a 'e 'l 's B0C1 -> 'N 'a 'e 'l 't B0C2 -> 'N 'a 'e 'l 'p B0C3 -> 'N 'a 'e 'l 'h B0C4 -> 'N 'a 'e 'm B0C5 -> 'N 'a 'e 'b B0C6 -> 'N 'a 'e 'b 's B0C7 -> 'N 'a 'e 's B0C8 -> 'N 'a 'e 's 's B0C9 -> 'N 'a 'e 'n 'g B0CA -> 'N 'a 'e 'j B0CB -> 'N 'a 'e 'c 'h B0CC -> 'N 'a 'e 'k B0CD -> 'N 'a 'e 't B0CE -> 'N 'a 'e 'p B0CF -> 'N 'a 'e 'h B0D0 -> 'N 'y 'a B0D1 -> 'N 'y 'a 'g B0D2 -> 'N 'y 'a 'g 'g B0D3 -> 'N 'y 'a 'g 's B0D4 -> 'N 'y 'a 'n B0D5 -> 'N 'y 'a 'n 'j B0D6 -> 'N 'y 'a 'n 'h B0D7 -> 'N 'y 'a 'd B0D8 -> 'N 'y 'a 'l B0D9 -> 'N 'y 'a 'l 'g B0DA -> 'N 'y 'a 'l 'm B0DB -> 'N 'y 'a 'l 'b B0DC -> 'N 'y 'a 'l 's B0DD -> 'N 'y 'a 'l 't B0DE -> 'N 'y 'a 'l 'p B0DF -> 'N 'y 'a 'l 'h B0E0 -> 'N 'y 'a 'm B0E1 -> 'N 'y 'a 'b B0E2 -> 'N 'y 'a 'b 's B0E3 -> 'N 'y 'a 's B0E4 -> 'N 'y 'a 's 's B0E5 -> 'N 'y 'a 'n 'g B0E6 -> 'N 'y 'a 'j B0E7 -> 'N 'y 'a 'c 'h B0E8 -> 'N 'y 'a 'k B0E9 -> 'N 'y 'a 't B0EA -> 'N 'y 'a 'p B0EB -> 'N 'y 'a 'h B0EC -> 'N 'y 'a 'e B0ED -> 'N 'y 'a 'e 'g B0EE -> 'N 'y 'a 'e 'g 'g B0EF -> 'N 'y 'a 'e 'g 's B0F0 -> 'N 'y 'a 'e 'n B0F1 -> 'N 'y 'a 'e 'n 'j B0F2 -> 'N 'y 'a 'e 'n 'h B0F3 -> 'N 'y 'a 'e 'd B0F4 -> 'N 'y 'a 'e 'l B0F5 -> 'N 'y 'a 'e 'l 'g B0F6 -> 'N 'y 'a 'e 'l 'm B0F7 -> 'N 'y 'a 'e 'l 'b B0F8 -> 'N 'y 'a 'e 'l 's B0F9 -> 'N 'y 'a 'e 'l 't B0FA -> 'N 'y 'a 'e 'l 'p B0FB -> 'N 'y 'a 'e 'l 'h B0FC -> 'N 'y 'a 'e 'm B0FD -> 'N 'y 'a 'e 'b B0FE -> 'N 'y 'a 'e 'b 's B0FF -> 'N 'y 'a 'e 's B100 -> 'N 'y 'a 'e 's 's B101 -> 'N 'y 'a 'e 'n 'g B102 -> 'N 'y 'a 'e 'j B103 -> 'N 'y 'a 'e 'c 'h B104 -> 'N 'y 'a 'e 'k B105 -> 'N 'y 'a 'e 't B106 -> 'N 'y 'a 'e 'p B107 -> 'N 'y 'a 'e 'h B108 -> 'N 'e 'o B109 -> 'N 'e 'o 'g B10A -> 'N 'e 'o 'g 'g B10B -> 'N 'e 'o 'g 's B10C -> 'N 'e 'o 'n B10D -> 'N 'e 'o 'n 'j B10E -> 'N 'e 'o 'n 'h B10F -> 'N 'e 'o 'd B110 -> 'N 'e 'o 'l B111 -> 'N 'e 'o 'l 'g B112 -> 'N 'e 'o 'l 'm B113 -> 'N 'e 'o 'l 'b B114 -> 'N 'e 'o 'l 's B115 -> 'N 'e 'o 'l 't B116 -> 'N 'e 'o 'l 'p B117 -> 'N 'e 'o 'l 'h B118 -> 'N 'e 'o 'm B119 -> 'N 'e 'o 'b B11A -> 'N 'e 'o 'b 's B11B -> 'N 'e 'o 's B11C -> 'N 'e 'o 's 's B11D -> 'N 'e 'o 'n 'g B11E -> 'N 'e 'o 'j B11F -> 'N 'e 'o 'c 'h B120 -> 'N 'e 'o 'k B121 -> 'N 'e 'o 't B122 -> 'N 'e 'o 'p B123 -> 'N 'e 'o 'h B124 -> 'N 'e B125 -> 'N 'e 'g B126 -> 'N 'e 'g 'g B127 -> 'N 'e 'g 's B128 -> 'N 'e 'n B129 -> 'N 'e 'n 'j B12A -> 'N 'e 'n 'h B12B -> 'N 'e 'd B12C -> 'N 'e 'l B12D -> 'N 'e 'l 'g B12E -> 'N 'e 'l 'm B12F -> 'N 'e 'l 'b B130 -> 'N 'e 'l 's B131 -> 'N 'e 'l 't B132 -> 'N 'e 'l 'p B133 -> 'N 'e 'l 'h B134 -> 'N 'e 'm B135 -> 'N 'e 'b B136 -> 'N 'e 'b 's B137 -> 'N 'e 's B138 -> 'N 'e 's 's B139 -> 'N 'e 'n 'g B13A -> 'N 'e 'j B13B -> 'N 'e 'c 'h B13C -> 'N 'e 'k B13D -> 'N 'e 't B13E -> 'N 'e 'p B13F -> 'N 'e 'h B140 -> 'N 'y 'e 'o B141 -> 'N 'y 'e 'o 'g B142 -> 'N 'y 'e 'o 'g 'g B143 -> 'N 'y 'e 'o 'g 's B144 -> 'N 'y 'e 'o 'n B145 -> 'N 'y 'e 'o 'n 'j B146 -> 'N 'y 'e 'o 'n 'h B147 -> 'N 'y 'e 'o 'd B148 -> 'N 'y 'e 'o 'l B149 -> 'N 'y 'e 'o 'l 'g B14A -> 'N 'y 'e 'o 'l 'm B14B -> 'N 'y 'e 'o 'l 'b B14C -> 'N 'y 'e 'o 'l 's B14D -> 'N 'y 'e 'o 'l 't B14E -> 'N 'y 'e 'o 'l 'p B14F -> 'N 'y 'e 'o 'l 'h B150 -> 'N 'y 'e 'o 'm B151 -> 'N 'y 'e 'o 'b B152 -> 'N 'y 'e 'o 'b 's B153 -> 'N 'y 'e 'o 's B154 -> 'N 'y 'e 'o 's 's B155 -> 'N 'y 'e 'o 'n 'g B156 -> 'N 'y 'e 'o 'j B157 -> 'N 'y 'e 'o 'c 'h B158 -> 'N 'y 'e 'o 'k B159 -> 'N 'y 'e 'o 't B15A -> 'N 'y 'e 'o 'p B15B -> 'N 'y 'e 'o 'h B15C -> 'N 'y 'e B15D -> 'N 'y 'e 'g B15E -> 'N 'y 'e 'g 'g B15F -> 'N 'y 'e 'g 's B160 -> 'N 'y 'e 'n B161 -> 'N 'y 'e 'n 'j B162 -> 'N 'y 'e 'n 'h B163 -> 'N 'y 'e 'd B164 -> 'N 'y 'e 'l B165 -> 'N 'y 'e 'l 'g B166 -> 'N 'y 'e 'l 'm B167 -> 'N 'y 'e 'l 'b B168 -> 'N 'y 'e 'l 's B169 -> 'N 'y 'e 'l 't B16A -> 'N 'y 'e 'l 'p B16B -> 'N 'y 'e 'l 'h B16C -> 'N 'y 'e 'm B16D -> 'N 'y 'e 'b B16E -> 'N 'y 'e 'b 's B16F -> 'N 'y 'e 's B170 -> 'N 'y 'e 's 's B171 -> 'N 'y 'e 'n 'g B172 -> 'N 'y 'e 'j B173 -> 'N 'y 'e 'c 'h B174 -> 'N 'y 'e 'k B175 -> 'N 'y 'e 't B176 -> 'N 'y 'e 'p B177 -> 'N 'y 'e 'h B178 -> 'N 'o B179 -> 'N 'o 'g B17A -> 'N 'o 'g 'g B17B -> 'N 'o 'g 's B17C -> 'N 'o 'n B17D -> 'N 'o 'n 'j B17E -> 'N 'o 'n 'h B17F -> 'N 'o 'd B180 -> 'N 'o 'l B181 -> 'N 'o 'l 'g B182 -> 'N 'o 'l 'm B183 -> 'N 'o 'l 'b B184 -> 'N 'o 'l 's B185 -> 'N 'o 'l 't B186 -> 'N 'o 'l 'p B187 -> 'N 'o 'l 'h B188 -> 'N 'o 'm B189 -> 'N 'o 'b B18A -> 'N 'o 'b 's B18B -> 'N 'o 's B18C -> 'N 'o 's 's B18D -> 'N 'o 'n 'g B18E -> 'N 'o 'j B18F -> 'N 'o 'c 'h B190 -> 'N 'o 'k B191 -> 'N 'o 't B192 -> 'N 'o 'p B193 -> 'N 'o 'h B194 -> 'N 'o 'a B195 -> 'N 'o 'a 'g B196 -> 'N 'o 'a 'g 'g B197 -> 'N 'o 'a 'g 's B198 -> 'N 'o 'a 'n B199 -> 'N 'o 'a 'n 'j B19A -> 'N 'o 'a 'n 'h B19B -> 'N 'o 'a 'd B19C -> 'N 'o 'a 'l B19D -> 'N 'o 'a 'l 'g B19E -> 'N 'o 'a 'l 'm B19F -> 'N 'o 'a 'l 'b B1A0 -> 'N 'o 'a 'l 's B1A1 -> 'N 'o 'a 'l 't B1A2 -> 'N 'o 'a 'l 'p B1A3 -> 'N 'o 'a 'l 'h B1A4 -> 'N 'o 'a 'm B1A5 -> 'N 'o 'a 'b B1A6 -> 'N 'o 'a 'b 's B1A7 -> 'N 'o 'a 's B1A8 -> 'N 'o 'a 's 's B1A9 -> 'N 'o 'a 'n 'g B1AA -> 'N 'o 'a 'j B1AB -> 'N 'o 'a 'c 'h B1AC -> 'N 'o 'a 'k B1AD -> 'N 'o 'a 't B1AE -> 'N 'o 'a 'p B1AF -> 'N 'o 'a 'h B1B0 -> 'N 'o 'a 'e B1B1 -> 'N 'o 'a 'e 'g B1B2 -> 'N 'o 'a 'e 'g 'g B1B3 -> 'N 'o 'a 'e 'g 's B1B4 -> 'N 'o 'a 'e 'n B1B5 -> 'N 'o 'a 'e 'n 'j B1B6 -> 'N 'o 'a 'e 'n 'h B1B7 -> 'N 'o 'a 'e 'd B1B8 -> 'N 'o 'a 'e 'l B1B9 -> 'N 'o 'a 'e 'l 'g B1BA -> 'N 'o 'a 'e 'l 'm B1BB -> 'N 'o 'a 'e 'l 'b B1BC -> 'N 'o 'a 'e 'l 's B1BD -> 'N 'o 'a 'e 'l 't B1BE -> 'N 'o 'a 'e 'l 'p B1BF -> 'N 'o 'a 'e 'l 'h B1C0 -> 'N 'o 'a 'e 'm B1C1 -> 'N 'o 'a 'e 'b B1C2 -> 'N 'o 'a 'e 'b 's B1C3 -> 'N 'o 'a 'e 's B1C4 -> 'N 'o 'a 'e 's 's B1C5 -> 'N 'o 'a 'e 'n 'g B1C6 -> 'N 'o 'a 'e 'j B1C7 -> 'N 'o 'a 'e 'c 'h B1C8 -> 'N 'o 'a 'e 'k B1C9 -> 'N 'o 'a 'e 't B1CA -> 'N 'o 'a 'e 'p B1CB -> 'N 'o 'a 'e 'h B1CC -> 'N 'o 'i B1CD -> 'N 'o 'i 'g B1CE -> 'N 'o 'i 'g 'g B1CF -> 'N 'o 'i 'g 's B1D0 -> 'N 'o 'i 'n B1D1 -> 'N 'o 'i 'n 'j B1D2 -> 'N 'o 'i 'n 'h B1D3 -> 'N 'o 'i 'd B1D4 -> 'N 'o 'i 'l B1D5 -> 'N 'o 'i 'l 'g B1D6 -> 'N 'o 'i 'l 'm B1D7 -> 'N 'o 'i 'l 'b B1D8 -> 'N 'o 'i 'l 's B1D9 -> 'N 'o 'i 'l 't B1DA -> 'N 'o 'i 'l 'p B1DB -> 'N 'o 'i 'l 'h B1DC -> 'N 'o 'i 'm B1DD -> 'N 'o 'i 'b B1DE -> 'N 'o 'i 'b 's B1DF -> 'N 'o 'i 's B1E0 -> 'N 'o 'i 's 's B1E1 -> 'N 'o 'i 'n 'g B1E2 -> 'N 'o 'i 'j B1E3 -> 'N 'o 'i 'c 'h B1E4 -> 'N 'o 'i 'k B1E5 -> 'N 'o 'i 't B1E6 -> 'N 'o 'i 'p B1E7 -> 'N 'o 'i 'h B1E8 -> 'N 'y 'o B1E9 -> 'N 'y 'o 'g B1EA -> 'N 'y 'o 'g 'g B1EB -> 'N 'y 'o 'g 's B1EC -> 'N 'y 'o 'n B1ED -> 'N 'y 'o 'n 'j B1EE -> 'N 'y 'o 'n 'h B1EF -> 'N 'y 'o 'd B1F0 -> 'N 'y 'o 'l B1F1 -> 'N 'y 'o 'l 'g B1F2 -> 'N 'y 'o 'l 'm B1F3 -> 'N 'y 'o 'l 'b B1F4 -> 'N 'y 'o 'l 's B1F5 -> 'N 'y 'o 'l 't B1F6 -> 'N 'y 'o 'l 'p B1F7 -> 'N 'y 'o 'l 'h B1F8 -> 'N 'y 'o 'm B1F9 -> 'N 'y 'o 'b B1FA -> 'N 'y 'o 'b 's B1FB -> 'N 'y 'o 's B1FC -> 'N 'y 'o 's 's B1FD -> 'N 'y 'o 'n 'g B1FE -> 'N 'y 'o 'j B1FF -> 'N 'y 'o 'c 'h B200 -> 'N 'y 'o 'k B201 -> 'N 'y 'o 't B202 -> 'N 'y 'o 'p B203 -> 'N 'y 'o 'h B204 -> 'N 'u B205 -> 'N 'u 'g B206 -> 'N 'u 'g 'g B207 -> 'N 'u 'g 's B208 -> 'N 'u 'n B209 -> 'N 'u 'n 'j B20A -> 'N 'u 'n 'h B20B -> 'N 'u 'd B20C -> 'N 'u 'l B20D -> 'N 'u 'l 'g B20E -> 'N 'u 'l 'm B20F -> 'N 'u 'l 'b B210 -> 'N 'u 'l 's B211 -> 'N 'u 'l 't B212 -> 'N 'u 'l 'p B213 -> 'N 'u 'l 'h B214 -> 'N 'u 'm B215 -> 'N 'u 'b B216 -> 'N 'u 'b 's B217 -> 'N 'u 's B218 -> 'N 'u 's 's B219 -> 'N 'u 'n 'g B21A -> 'N 'u 'j B21B -> 'N 'u 'c 'h B21C -> 'N 'u 'k B21D -> 'N 'u 't B21E -> 'N 'u 'p B21F -> 'N 'u 'h B220 -> 'N 'u 'e 'o B221 -> 'N 'u 'e 'o 'g B222 -> 'N 'u 'e 'o 'g 'g B223 -> 'N 'u 'e 'o 'g 's B224 -> 'N 'u 'e 'o 'n B225 -> 'N 'u 'e 'o 'n 'j B226 -> 'N 'u 'e 'o 'n 'h B227 -> 'N 'u 'e 'o 'd B228 -> 'N 'u 'e 'o 'l B229 -> 'N 'u 'e 'o 'l 'g B22A -> 'N 'u 'e 'o 'l 'm B22B -> 'N 'u 'e 'o 'l 'b B22C -> 'N 'u 'e 'o 'l 's B22D -> 'N 'u 'e 'o 'l 't B22E -> 'N 'u 'e 'o 'l 'p B22F -> 'N 'u 'e 'o 'l 'h B230 -> 'N 'u 'e 'o 'm B231 -> 'N 'u 'e 'o 'b B232 -> 'N 'u 'e 'o 'b 's B233 -> 'N 'u 'e 'o 's B234 -> 'N 'u 'e 'o 's 's B235 -> 'N 'u 'e 'o 'n 'g B236 -> 'N 'u 'e 'o 'j B237 -> 'N 'u 'e 'o 'c 'h B238 -> 'N 'u 'e 'o 'k B239 -> 'N 'u 'e 'o 't B23A -> 'N 'u 'e 'o 'p B23B -> 'N 'u 'e 'o 'h B23C -> 'N 'u 'e B23D -> 'N 'u 'e 'g B23E -> 'N 'u 'e 'g 'g B23F -> 'N 'u 'e 'g 's B240 -> 'N 'u 'e 'n B241 -> 'N 'u 'e 'n 'j B242 -> 'N 'u 'e 'n 'h B243 -> 'N 'u 'e 'd B244 -> 'N 'u 'e 'l B245 -> 'N 'u 'e 'l 'g B246 -> 'N 'u 'e 'l 'm B247 -> 'N 'u 'e 'l 'b B248 -> 'N 'u 'e 'l 's B249 -> 'N 'u 'e 'l 't B24A -> 'N 'u 'e 'l 'p B24B -> 'N 'u 'e 'l 'h B24C -> 'N 'u 'e 'm B24D -> 'N 'u 'e 'b B24E -> 'N 'u 'e 'b 's B24F -> 'N 'u 'e 's B250 -> 'N 'u 'e 's 's B251 -> 'N 'u 'e 'n 'g B252 -> 'N 'u 'e 'j B253 -> 'N 'u 'e 'c 'h B254 -> 'N 'u 'e 'k B255 -> 'N 'u 'e 't B256 -> 'N 'u 'e 'p B257 -> 'N 'u 'e 'h B258 -> 'N 'u 'i B259 -> 'N 'u 'i 'g B25A -> 'N 'u 'i 'g 'g B25B -> 'N 'u 'i 'g 's B25C -> 'N 'u 'i 'n B25D -> 'N 'u 'i 'n 'j B25E -> 'N 'u 'i 'n 'h B25F -> 'N 'u 'i 'd B260 -> 'N 'u 'i 'l B261 -> 'N 'u 'i 'l 'g B262 -> 'N 'u 'i 'l 'm B263 -> 'N 'u 'i 'l 'b B264 -> 'N 'u 'i 'l 's B265 -> 'N 'u 'i 'l 't B266 -> 'N 'u 'i 'l 'p B267 -> 'N 'u 'i 'l 'h B268 -> 'N 'u 'i 'm B269 -> 'N 'u 'i 'b B26A -> 'N 'u 'i 'b 's B26B -> 'N 'u 'i 's B26C -> 'N 'u 'i 's 's B26D -> 'N 'u 'i 'n 'g B26E -> 'N 'u 'i 'j B26F -> 'N 'u 'i 'c 'h B270 -> 'N 'u 'i 'k B271 -> 'N 'u 'i 't B272 -> 'N 'u 'i 'p B273 -> 'N 'u 'i 'h B274 -> 'N 'y 'u B275 -> 'N 'y 'u 'g B276 -> 'N 'y 'u 'g 'g B277 -> 'N 'y 'u 'g 's B278 -> 'N 'y 'u 'n B279 -> 'N 'y 'u 'n 'j B27A -> 'N 'y 'u 'n 'h B27B -> 'N 'y 'u 'd B27C -> 'N 'y 'u 'l B27D -> 'N 'y 'u 'l 'g B27E -> 'N 'y 'u 'l 'm B27F -> 'N 'y 'u 'l 'b B280 -> 'N 'y 'u 'l 's B281 -> 'N 'y 'u 'l 't B282 -> 'N 'y 'u 'l 'p B283 -> 'N 'y 'u 'l 'h B284 -> 'N 'y 'u 'm B285 -> 'N 'y 'u 'b B286 -> 'N 'y 'u 'b 's B287 -> 'N 'y 'u 's B288 -> 'N 'y 'u 's 's B289 -> 'N 'y 'u 'n 'g B28A -> 'N 'y 'u 'j B28B -> 'N 'y 'u 'c 'h B28C -> 'N 'y 'u 'k B28D -> 'N 'y 'u 't B28E -> 'N 'y 'u 'p B28F -> 'N 'y 'u 'h B290 -> 'N 'e 'u B291 -> 'N 'e 'u 'g B292 -> 'N 'e 'u 'g 'g B293 -> 'N 'e 'u 'g 's B294 -> 'N 'e 'u 'n B295 -> 'N 'e 'u 'n 'j B296 -> 'N 'e 'u 'n 'h B297 -> 'N 'e 'u 'd B298 -> 'N 'e 'u 'l B299 -> 'N 'e 'u 'l 'g B29A -> 'N 'e 'u 'l 'm B29B -> 'N 'e 'u 'l 'b B29C -> 'N 'e 'u 'l 's B29D -> 'N 'e 'u 'l 't B29E -> 'N 'e 'u 'l 'p B29F -> 'N 'e 'u 'l 'h B2A0 -> 'N 'e 'u 'm B2A1 -> 'N 'e 'u 'b B2A2 -> 'N 'e 'u 'b 's B2A3 -> 'N 'e 'u 's B2A4 -> 'N 'e 'u 's 's B2A5 -> 'N 'e 'u 'n 'g B2A6 -> 'N 'e 'u 'j B2A7 -> 'N 'e 'u 'c 'h B2A8 -> 'N 'e 'u 'k B2A9 -> 'N 'e 'u 't B2AA -> 'N 'e 'u 'p B2AB -> 'N 'e 'u 'h B2AC -> 'N 'e 'u 'i B2AD -> 'N 'e 'u 'i 'g B2AE -> 'N 'e 'u 'i 'g 'g B2AF -> 'N 'e 'u 'i 'g 's B2B0 -> 'N 'e 'u 'i 'n B2B1 -> 'N 'e 'u 'i 'n 'j B2B2 -> 'N 'e 'u 'i 'n 'h B2B3 -> 'N 'e 'u 'i 'd B2B4 -> 'N 'e 'u 'i 'l B2B5 -> 'N 'e 'u 'i 'l 'g B2B6 -> 'N 'e 'u 'i 'l 'm B2B7 -> 'N 'e 'u 'i 'l 'b B2B8 -> 'N 'e 'u 'i 'l 's B2B9 -> 'N 'e 'u 'i 'l 't B2BA -> 'N 'e 'u 'i 'l 'p B2BB -> 'N 'e 'u 'i 'l 'h B2BC -> 'N 'e 'u 'i 'm B2BD -> 'N 'e 'u 'i 'b B2BE -> 'N 'e 'u 'i 'b 's B2BF -> 'N 'e 'u 'i 's B2C0 -> 'N 'e 'u 'i 's 's B2C1 -> 'N 'e 'u 'i 'n 'g B2C2 -> 'N 'e 'u 'i 'j B2C3 -> 'N 'e 'u 'i 'c 'h B2C4 -> 'N 'e 'u 'i 'k B2C5 -> 'N 'e 'u 'i 't B2C6 -> 'N 'e 'u 'i 'p B2C7 -> 'N 'e 'u 'i 'h B2C8 -> 'N 'i B2C9 -> 'N 'i 'g B2CA -> 'N 'i 'g 'g B2CB -> 'N 'i 'g 's B2CC -> 'N 'i 'n B2CD -> 'N 'i 'n 'j B2CE -> 'N 'i 'n 'h B2CF -> 'N 'i 'd B2D0 -> 'N 'i 'l B2D1 -> 'N 'i 'l 'g B2D2 -> 'N 'i 'l 'm B2D3 -> 'N 'i 'l 'b B2D4 -> 'N 'i 'l 's B2D5 -> 'N 'i 'l 't B2D6 -> 'N 'i 'l 'p B2D7 -> 'N 'i 'l 'h B2D8 -> 'N 'i 'm B2D9 -> 'N 'i 'b B2DA -> 'N 'i 'b 's B2DB -> 'N 'i 's B2DC -> 'N 'i 's 's B2DD -> 'N 'i 'n 'g B2DE -> 'N 'i 'j B2DF -> 'N 'i 'c 'h B2E0 -> 'N 'i 'k B2E1 -> 'N 'i 't B2E2 -> 'N 'i 'p B2E3 -> 'N 'i 'h B2E4 -> 'D 'a B2E5 -> 'D 'a 'g B2E6 -> 'D 'a 'g 'g B2E7 -> 'D 'a 'g 's B2E8 -> 'D 'a 'n B2E9 -> 'D 'a 'n 'j B2EA -> 'D 'a 'n 'h B2EB -> 'D 'a 'd B2EC -> 'D 'a 'l B2ED -> 'D 'a 'l 'g B2EE -> 'D 'a 'l 'm B2EF -> 'D 'a 'l 'b B2F0 -> 'D 'a 'l 's B2F1 -> 'D 'a 'l 't B2F2 -> 'D 'a 'l 'p B2F3 -> 'D 'a 'l 'h B2F4 -> 'D 'a 'm B2F5 -> 'D 'a 'b B2F6 -> 'D 'a 'b 's B2F7 -> 'D 'a 's B2F8 -> 'D 'a 's 's B2F9 -> 'D 'a 'n 'g B2FA -> 'D 'a 'j B2FB -> 'D 'a 'c 'h B2FC -> 'D 'a 'k B2FD -> 'D 'a 't B2FE -> 'D 'a 'p B2FF -> 'D 'a 'h B300 -> 'D 'a 'e B301 -> 'D 'a 'e 'g B302 -> 'D 'a 'e 'g 'g B303 -> 'D 'a 'e 'g 's B304 -> 'D 'a 'e 'n B305 -> 'D 'a 'e 'n 'j B306 -> 'D 'a 'e 'n 'h B307 -> 'D 'a 'e 'd B308 -> 'D 'a 'e 'l B309 -> 'D 'a 'e 'l 'g B30A -> 'D 'a 'e 'l 'm B30B -> 'D 'a 'e 'l 'b B30C -> 'D 'a 'e 'l 's B30D -> 'D 'a 'e 'l 't B30E -> 'D 'a 'e 'l 'p B30F -> 'D 'a 'e 'l 'h B310 -> 'D 'a 'e 'm B311 -> 'D 'a 'e 'b B312 -> 'D 'a 'e 'b 's B313 -> 'D 'a 'e 's B314 -> 'D 'a 'e 's 's B315 -> 'D 'a 'e 'n 'g B316 -> 'D 'a 'e 'j B317 -> 'D 'a 'e 'c 'h B318 -> 'D 'a 'e 'k B319 -> 'D 'a 'e 't B31A -> 'D 'a 'e 'p B31B -> 'D 'a 'e 'h B31C -> 'D 'y 'a B31D -> 'D 'y 'a 'g B31E -> 'D 'y 'a 'g 'g B31F -> 'D 'y 'a 'g 's B320 -> 'D 'y 'a 'n B321 -> 'D 'y 'a 'n 'j B322 -> 'D 'y 'a 'n 'h B323 -> 'D 'y 'a 'd B324 -> 'D 'y 'a 'l B325 -> 'D 'y 'a 'l 'g B326 -> 'D 'y 'a 'l 'm B327 -> 'D 'y 'a 'l 'b B328 -> 'D 'y 'a 'l 's B329 -> 'D 'y 'a 'l 't B32A -> 'D 'y 'a 'l 'p B32B -> 'D 'y 'a 'l 'h B32C -> 'D 'y 'a 'm B32D -> 'D 'y 'a 'b B32E -> 'D 'y 'a 'b 's B32F -> 'D 'y 'a 's B330 -> 'D 'y 'a 's 's B331 -> 'D 'y 'a 'n 'g B332 -> 'D 'y 'a 'j B333 -> 'D 'y 'a 'c 'h B334 -> 'D 'y 'a 'k B335 -> 'D 'y 'a 't B336 -> 'D 'y 'a 'p B337 -> 'D 'y 'a 'h B338 -> 'D 'y 'a 'e B339 -> 'D 'y 'a 'e 'g B33A -> 'D 'y 'a 'e 'g 'g B33B -> 'D 'y 'a 'e 'g 's B33C -> 'D 'y 'a 'e 'n B33D -> 'D 'y 'a 'e 'n 'j B33E -> 'D 'y 'a 'e 'n 'h B33F -> 'D 'y 'a 'e 'd B340 -> 'D 'y 'a 'e 'l B341 -> 'D 'y 'a 'e 'l 'g B342 -> 'D 'y 'a 'e 'l 'm B343 -> 'D 'y 'a 'e 'l 'b B344 -> 'D 'y 'a 'e 'l 's B345 -> 'D 'y 'a 'e 'l 't B346 -> 'D 'y 'a 'e 'l 'p B347 -> 'D 'y 'a 'e 'l 'h B348 -> 'D 'y 'a 'e 'm B349 -> 'D 'y 'a 'e 'b B34A -> 'D 'y 'a 'e 'b 's B34B -> 'D 'y 'a 'e 's B34C -> 'D 'y 'a 'e 's 's B34D -> 'D 'y 'a 'e 'n 'g B34E -> 'D 'y 'a 'e 'j B34F -> 'D 'y 'a 'e 'c 'h B350 -> 'D 'y 'a 'e 'k B351 -> 'D 'y 'a 'e 't B352 -> 'D 'y 'a 'e 'p B353 -> 'D 'y 'a 'e 'h B354 -> 'D 'e 'o B355 -> 'D 'e 'o 'g B356 -> 'D 'e 'o 'g 'g B357 -> 'D 'e 'o 'g 's B358 -> 'D 'e 'o 'n B359 -> 'D 'e 'o 'n 'j B35A -> 'D 'e 'o 'n 'h B35B -> 'D 'e 'o 'd B35C -> 'D 'e 'o 'l B35D -> 'D 'e 'o 'l 'g B35E -> 'D 'e 'o 'l 'm B35F -> 'D 'e 'o 'l 'b B360 -> 'D 'e 'o 'l 's B361 -> 'D 'e 'o 'l 't B362 -> 'D 'e 'o 'l 'p B363 -> 'D 'e 'o 'l 'h B364 -> 'D 'e 'o 'm B365 -> 'D 'e 'o 'b B366 -> 'D 'e 'o 'b 's B367 -> 'D 'e 'o 's B368 -> 'D 'e 'o 's 's B369 -> 'D 'e 'o 'n 'g B36A -> 'D 'e 'o 'j B36B -> 'D 'e 'o 'c 'h B36C -> 'D 'e 'o 'k B36D -> 'D 'e 'o 't B36E -> 'D 'e 'o 'p B36F -> 'D 'e 'o 'h B370 -> 'D 'e B371 -> 'D 'e 'g B372 -> 'D 'e 'g 'g B373 -> 'D 'e 'g 's B374 -> 'D 'e 'n B375 -> 'D 'e 'n 'j B376 -> 'D 'e 'n 'h B377 -> 'D 'e 'd B378 -> 'D 'e 'l B379 -> 'D 'e 'l 'g B37A -> 'D 'e 'l 'm B37B -> 'D 'e 'l 'b B37C -> 'D 'e 'l 's B37D -> 'D 'e 'l 't B37E -> 'D 'e 'l 'p B37F -> 'D 'e 'l 'h B380 -> 'D 'e 'm B381 -> 'D 'e 'b B382 -> 'D 'e 'b 's B383 -> 'D 'e 's B384 -> 'D 'e 's 's B385 -> 'D 'e 'n 'g B386 -> 'D 'e 'j B387 -> 'D 'e 'c 'h B388 -> 'D 'e 'k B389 -> 'D 'e 't B38A -> 'D 'e 'p B38B -> 'D 'e 'h B38C -> 'D 'y 'e 'o B38D -> 'D 'y 'e 'o 'g B38E -> 'D 'y 'e 'o 'g 'g B38F -> 'D 'y 'e 'o 'g 's B390 -> 'D 'y 'e 'o 'n B391 -> 'D 'y 'e 'o 'n 'j B392 -> 'D 'y 'e 'o 'n 'h B393 -> 'D 'y 'e 'o 'd B394 -> 'D 'y 'e 'o 'l B395 -> 'D 'y 'e 'o 'l 'g B396 -> 'D 'y 'e 'o 'l 'm B397 -> 'D 'y 'e 'o 'l 'b B398 -> 'D 'y 'e 'o 'l 's B399 -> 'D 'y 'e 'o 'l 't B39A -> 'D 'y 'e 'o 'l 'p B39B -> 'D 'y 'e 'o 'l 'h B39C -> 'D 'y 'e 'o 'm B39D -> 'D 'y 'e 'o 'b B39E -> 'D 'y 'e 'o 'b 's B39F -> 'D 'y 'e 'o 's B3A0 -> 'D 'y 'e 'o 's 's B3A1 -> 'D 'y 'e 'o 'n 'g B3A2 -> 'D 'y 'e 'o 'j B3A3 -> 'D 'y 'e 'o 'c 'h B3A4 -> 'D 'y 'e 'o 'k B3A5 -> 'D 'y 'e 'o 't B3A6 -> 'D 'y 'e 'o 'p B3A7 -> 'D 'y 'e 'o 'h B3A8 -> 'D 'y 'e B3A9 -> 'D 'y 'e 'g B3AA -> 'D 'y 'e 'g 'g B3AB -> 'D 'y 'e 'g 's B3AC -> 'D 'y 'e 'n B3AD -> 'D 'y 'e 'n 'j B3AE -> 'D 'y 'e 'n 'h B3AF -> 'D 'y 'e 'd B3B0 -> 'D 'y 'e 'l B3B1 -> 'D 'y 'e 'l 'g B3B2 -> 'D 'y 'e 'l 'm B3B3 -> 'D 'y 'e 'l 'b B3B4 -> 'D 'y 'e 'l 's B3B5 -> 'D 'y 'e 'l 't B3B6 -> 'D 'y 'e 'l 'p B3B7 -> 'D 'y 'e 'l 'h B3B8 -> 'D 'y 'e 'm B3B9 -> 'D 'y 'e 'b B3BA -> 'D 'y 'e 'b 's B3BB -> 'D 'y 'e 's B3BC -> 'D 'y 'e 's 's B3BD -> 'D 'y 'e 'n 'g B3BE -> 'D 'y 'e 'j B3BF -> 'D 'y 'e 'c 'h B3C0 -> 'D 'y 'e 'k B3C1 -> 'D 'y 'e 't B3C2 -> 'D 'y 'e 'p B3C3 -> 'D 'y 'e 'h B3C4 -> 'D 'o B3C5 -> 'D 'o 'g B3C6 -> 'D 'o 'g 'g B3C7 -> 'D 'o 'g 's B3C8 -> 'D 'o 'n B3C9 -> 'D 'o 'n 'j B3CA -> 'D 'o 'n 'h B3CB -> 'D 'o 'd B3CC -> 'D 'o 'l B3CD -> 'D 'o 'l 'g B3CE -> 'D 'o 'l 'm B3CF -> 'D 'o 'l 'b B3D0 -> 'D 'o 'l 's B3D1 -> 'D 'o 'l 't B3D2 -> 'D 'o 'l 'p B3D3 -> 'D 'o 'l 'h B3D4 -> 'D 'o 'm B3D5 -> 'D 'o 'b B3D6 -> 'D 'o 'b 's B3D7 -> 'D 'o 's B3D8 -> 'D 'o 's 's B3D9 -> 'D 'o 'n 'g B3DA -> 'D 'o 'j B3DB -> 'D 'o 'c 'h B3DC -> 'D 'o 'k B3DD -> 'D 'o 't B3DE -> 'D 'o 'p B3DF -> 'D 'o 'h B3E0 -> 'D 'o 'a B3E1 -> 'D 'o 'a 'g B3E2 -> 'D 'o 'a 'g 'g B3E3 -> 'D 'o 'a 'g 's B3E4 -> 'D 'o 'a 'n B3E5 -> 'D 'o 'a 'n 'j B3E6 -> 'D 'o 'a 'n 'h B3E7 -> 'D 'o 'a 'd B3E8 -> 'D 'o 'a 'l B3E9 -> 'D 'o 'a 'l 'g B3EA -> 'D 'o 'a 'l 'm B3EB -> 'D 'o 'a 'l 'b B3EC -> 'D 'o 'a 'l 's B3ED -> 'D 'o 'a 'l 't B3EE -> 'D 'o 'a 'l 'p B3EF -> 'D 'o 'a 'l 'h B3F0 -> 'D 'o 'a 'm B3F1 -> 'D 'o 'a 'b B3F2 -> 'D 'o 'a 'b 's B3F3 -> 'D 'o 'a 's B3F4 -> 'D 'o 'a 's 's B3F5 -> 'D 'o 'a 'n 'g B3F6 -> 'D 'o 'a 'j B3F7 -> 'D 'o 'a 'c 'h B3F8 -> 'D 'o 'a 'k B3F9 -> 'D 'o 'a 't B3FA -> 'D 'o 'a 'p B3FB -> 'D 'o 'a 'h B3FC -> 'D 'o 'a 'e B3FD -> 'D 'o 'a 'e 'g B3FE -> 'D 'o 'a 'e 'g 'g B3FF -> 'D 'o 'a 'e 'g 's B400 -> 'D 'o 'a 'e 'n B401 -> 'D 'o 'a 'e 'n 'j B402 -> 'D 'o 'a 'e 'n 'h B403 -> 'D 'o 'a 'e 'd B404 -> 'D 'o 'a 'e 'l B405 -> 'D 'o 'a 'e 'l 'g B406 -> 'D 'o 'a 'e 'l 'm B407 -> 'D 'o 'a 'e 'l 'b B408 -> 'D 'o 'a 'e 'l 's B409 -> 'D 'o 'a 'e 'l 't B40A -> 'D 'o 'a 'e 'l 'p B40B -> 'D 'o 'a 'e 'l 'h B40C -> 'D 'o 'a 'e 'm B40D -> 'D 'o 'a 'e 'b B40E -> 'D 'o 'a 'e 'b 's B40F -> 'D 'o 'a 'e 's B410 -> 'D 'o 'a 'e 's 's B411 -> 'D 'o 'a 'e 'n 'g B412 -> 'D 'o 'a 'e 'j B413 -> 'D 'o 'a 'e 'c 'h B414 -> 'D 'o 'a 'e 'k B415 -> 'D 'o 'a 'e 't B416 -> 'D 'o 'a 'e 'p B417 -> 'D 'o 'a 'e 'h B418 -> 'D 'o 'i B419 -> 'D 'o 'i 'g B41A -> 'D 'o 'i 'g 'g B41B -> 'D 'o 'i 'g 's B41C -> 'D 'o 'i 'n B41D -> 'D 'o 'i 'n 'j B41E -> 'D 'o 'i 'n 'h B41F -> 'D 'o 'i 'd B420 -> 'D 'o 'i 'l B421 -> 'D 'o 'i 'l 'g B422 -> 'D 'o 'i 'l 'm B423 -> 'D 'o 'i 'l 'b B424 -> 'D 'o 'i 'l 's B425 -> 'D 'o 'i 'l 't B426 -> 'D 'o 'i 'l 'p B427 -> 'D 'o 'i 'l 'h B428 -> 'D 'o 'i 'm B429 -> 'D 'o 'i 'b B42A -> 'D 'o 'i 'b 's B42B -> 'D 'o 'i 's B42C -> 'D 'o 'i 's 's B42D -> 'D 'o 'i 'n 'g B42E -> 'D 'o 'i 'j B42F -> 'D 'o 'i 'c 'h B430 -> 'D 'o 'i 'k B431 -> 'D 'o 'i 't B432 -> 'D 'o 'i 'p B433 -> 'D 'o 'i 'h B434 -> 'D 'y 'o B435 -> 'D 'y 'o 'g B436 -> 'D 'y 'o 'g 'g B437 -> 'D 'y 'o 'g 's B438 -> 'D 'y 'o 'n B439 -> 'D 'y 'o 'n 'j B43A -> 'D 'y 'o 'n 'h B43B -> 'D 'y 'o 'd B43C -> 'D 'y 'o 'l B43D -> 'D 'y 'o 'l 'g B43E -> 'D 'y 'o 'l 'm B43F -> 'D 'y 'o 'l 'b B440 -> 'D 'y 'o 'l 's B441 -> 'D 'y 'o 'l 't B442 -> 'D 'y 'o 'l 'p B443 -> 'D 'y 'o 'l 'h B444 -> 'D 'y 'o 'm B445 -> 'D 'y 'o 'b B446 -> 'D 'y 'o 'b 's B447 -> 'D 'y 'o 's B448 -> 'D 'y 'o 's 's B449 -> 'D 'y 'o 'n 'g B44A -> 'D 'y 'o 'j B44B -> 'D 'y 'o 'c 'h B44C -> 'D 'y 'o 'k B44D -> 'D 'y 'o 't B44E -> 'D 'y 'o 'p B44F -> 'D 'y 'o 'h B450 -> 'D 'u B451 -> 'D 'u 'g B452 -> 'D 'u 'g 'g B453 -> 'D 'u 'g 's B454 -> 'D 'u 'n B455 -> 'D 'u 'n 'j B456 -> 'D 'u 'n 'h B457 -> 'D 'u 'd B458 -> 'D 'u 'l B459 -> 'D 'u 'l 'g B45A -> 'D 'u 'l 'm B45B -> 'D 'u 'l 'b B45C -> 'D 'u 'l 's B45D -> 'D 'u 'l 't B45E -> 'D 'u 'l 'p B45F -> 'D 'u 'l 'h B460 -> 'D 'u 'm B461 -> 'D 'u 'b B462 -> 'D 'u 'b 's B463 -> 'D 'u 's B464 -> 'D 'u 's 's B465 -> 'D 'u 'n 'g B466 -> 'D 'u 'j B467 -> 'D 'u 'c 'h B468 -> 'D 'u 'k B469 -> 'D 'u 't B46A -> 'D 'u 'p B46B -> 'D 'u 'h B46C -> 'D 'u 'e 'o B46D -> 'D 'u 'e 'o 'g B46E -> 'D 'u 'e 'o 'g 'g B46F -> 'D 'u 'e 'o 'g 's B470 -> 'D 'u 'e 'o 'n B471 -> 'D 'u 'e 'o 'n 'j B472 -> 'D 'u 'e 'o 'n 'h B473 -> 'D 'u 'e 'o 'd B474 -> 'D 'u 'e 'o 'l B475 -> 'D 'u 'e 'o 'l 'g B476 -> 'D 'u 'e 'o 'l 'm B477 -> 'D 'u 'e 'o 'l 'b B478 -> 'D 'u 'e 'o 'l 's B479 -> 'D 'u 'e 'o 'l 't B47A -> 'D 'u 'e 'o 'l 'p B47B -> 'D 'u 'e 'o 'l 'h B47C -> 'D 'u 'e 'o 'm B47D -> 'D 'u 'e 'o 'b B47E -> 'D 'u 'e 'o 'b 's B47F -> 'D 'u 'e 'o 's B480 -> 'D 'u 'e 'o 's 's B481 -> 'D 'u 'e 'o 'n 'g B482 -> 'D 'u 'e 'o 'j B483 -> 'D 'u 'e 'o 'c 'h B484 -> 'D 'u 'e 'o 'k B485 -> 'D 'u 'e 'o 't B486 -> 'D 'u 'e 'o 'p B487 -> 'D 'u 'e 'o 'h B488 -> 'D 'u 'e B489 -> 'D 'u 'e 'g B48A -> 'D 'u 'e 'g 'g B48B -> 'D 'u 'e 'g 's B48C -> 'D 'u 'e 'n B48D -> 'D 'u 'e 'n 'j B48E -> 'D 'u 'e 'n 'h B48F -> 'D 'u 'e 'd B490 -> 'D 'u 'e 'l B491 -> 'D 'u 'e 'l 'g B492 -> 'D 'u 'e 'l 'm B493 -> 'D 'u 'e 'l 'b B494 -> 'D 'u 'e 'l 's B495 -> 'D 'u 'e 'l 't B496 -> 'D 'u 'e 'l 'p B497 -> 'D 'u 'e 'l 'h B498 -> 'D 'u 'e 'm B499 -> 'D 'u 'e 'b B49A -> 'D 'u 'e 'b 's B49B -> 'D 'u 'e 's B49C -> 'D 'u 'e 's 's B49D -> 'D 'u 'e 'n 'g B49E -> 'D 'u 'e 'j B49F -> 'D 'u 'e 'c 'h B4A0 -> 'D 'u 'e 'k B4A1 -> 'D 'u 'e 't B4A2 -> 'D 'u 'e 'p B4A3 -> 'D 'u 'e 'h B4A4 -> 'D 'u 'i B4A5 -> 'D 'u 'i 'g B4A6 -> 'D 'u 'i 'g 'g B4A7 -> 'D 'u 'i 'g 's B4A8 -> 'D 'u 'i 'n B4A9 -> 'D 'u 'i 'n 'j B4AA -> 'D 'u 'i 'n 'h B4AB -> 'D 'u 'i 'd B4AC -> 'D 'u 'i 'l B4AD -> 'D 'u 'i 'l 'g B4AE -> 'D 'u 'i 'l 'm B4AF -> 'D 'u 'i 'l 'b B4B0 -> 'D 'u 'i 'l 's B4B1 -> 'D 'u 'i 'l 't B4B2 -> 'D 'u 'i 'l 'p B4B3 -> 'D 'u 'i 'l 'h B4B4 -> 'D 'u 'i 'm B4B5 -> 'D 'u 'i 'b B4B6 -> 'D 'u 'i 'b 's B4B7 -> 'D 'u 'i 's B4B8 -> 'D 'u 'i 's 's B4B9 -> 'D 'u 'i 'n 'g B4BA -> 'D 'u 'i 'j B4BB -> 'D 'u 'i 'c 'h B4BC -> 'D 'u 'i 'k B4BD -> 'D 'u 'i 't B4BE -> 'D 'u 'i 'p B4BF -> 'D 'u 'i 'h B4C0 -> 'D 'y 'u B4C1 -> 'D 'y 'u 'g B4C2 -> 'D 'y 'u 'g 'g B4C3 -> 'D 'y 'u 'g 's B4C4 -> 'D 'y 'u 'n B4C5 -> 'D 'y 'u 'n 'j B4C6 -> 'D 'y 'u 'n 'h B4C7 -> 'D 'y 'u 'd B4C8 -> 'D 'y 'u 'l B4C9 -> 'D 'y 'u 'l 'g B4CA -> 'D 'y 'u 'l 'm B4CB -> 'D 'y 'u 'l 'b B4CC -> 'D 'y 'u 'l 's B4CD -> 'D 'y 'u 'l 't B4CE -> 'D 'y 'u 'l 'p B4CF -> 'D 'y 'u 'l 'h B4D0 -> 'D 'y 'u 'm B4D1 -> 'D 'y 'u 'b B4D2 -> 'D 'y 'u 'b 's B4D3 -> 'D 'y 'u 's B4D4 -> 'D 'y 'u 's 's B4D5 -> 'D 'y 'u 'n 'g B4D6 -> 'D 'y 'u 'j B4D7 -> 'D 'y 'u 'c 'h B4D8 -> 'D 'y 'u 'k B4D9 -> 'D 'y 'u 't B4DA -> 'D 'y 'u 'p B4DB -> 'D 'y 'u 'h B4DC -> 'D 'e 'u B4DD -> 'D 'e 'u 'g B4DE -> 'D 'e 'u 'g 'g B4DF -> 'D 'e 'u 'g 's B4E0 -> 'D 'e 'u 'n B4E1 -> 'D 'e 'u 'n 'j B4E2 -> 'D 'e 'u 'n 'h B4E3 -> 'D 'e 'u 'd B4E4 -> 'D 'e 'u 'l B4E5 -> 'D 'e 'u 'l 'g B4E6 -> 'D 'e 'u 'l 'm B4E7 -> 'D 'e 'u 'l 'b B4E8 -> 'D 'e 'u 'l 's B4E9 -> 'D 'e 'u 'l 't B4EA -> 'D 'e 'u 'l 'p B4EB -> 'D 'e 'u 'l 'h B4EC -> 'D 'e 'u 'm B4ED -> 'D 'e 'u 'b B4EE -> 'D 'e 'u 'b 's B4EF -> 'D 'e 'u 's B4F0 -> 'D 'e 'u 's 's B4F1 -> 'D 'e 'u 'n 'g B4F2 -> 'D 'e 'u 'j B4F3 -> 'D 'e 'u 'c 'h B4F4 -> 'D 'e 'u 'k B4F5 -> 'D 'e 'u 't B4F6 -> 'D 'e 'u 'p B4F7 -> 'D 'e 'u 'h B4F8 -> 'D 'e 'u 'i B4F9 -> 'D 'e 'u 'i 'g B4FA -> 'D 'e 'u 'i 'g 'g B4FB -> 'D 'e 'u 'i 'g 's B4FC -> 'D 'e 'u 'i 'n B4FD -> 'D 'e 'u 'i 'n 'j B4FE -> 'D 'e 'u 'i 'n 'h B4FF -> 'D 'e 'u 'i 'd B500 -> 'D 'e 'u 'i 'l B501 -> 'D 'e 'u 'i 'l 'g B502 -> 'D 'e 'u 'i 'l 'm B503 -> 'D 'e 'u 'i 'l 'b B504 -> 'D 'e 'u 'i 'l 's B505 -> 'D 'e 'u 'i 'l 't B506 -> 'D 'e 'u 'i 'l 'p B507 -> 'D 'e 'u 'i 'l 'h B508 -> 'D 'e 'u 'i 'm B509 -> 'D 'e 'u 'i 'b B50A -> 'D 'e 'u 'i 'b 's B50B -> 'D 'e 'u 'i 's B50C -> 'D 'e 'u 'i 's 's B50D -> 'D 'e 'u 'i 'n 'g B50E -> 'D 'e 'u 'i 'j B50F -> 'D 'e 'u 'i 'c 'h B510 -> 'D 'e 'u 'i 'k B511 -> 'D 'e 'u 'i 't B512 -> 'D 'e 'u 'i 'p B513 -> 'D 'e 'u 'i 'h B514 -> 'D 'i B515 -> 'D 'i 'g B516 -> 'D 'i 'g 'g B517 -> 'D 'i 'g 's B518 -> 'D 'i 'n B519 -> 'D 'i 'n 'j B51A -> 'D 'i 'n 'h B51B -> 'D 'i 'd B51C -> 'D 'i 'l B51D -> 'D 'i 'l 'g B51E -> 'D 'i 'l 'm B51F -> 'D 'i 'l 'b B520 -> 'D 'i 'l 's B521 -> 'D 'i 'l 't B522 -> 'D 'i 'l 'p B523 -> 'D 'i 'l 'h B524 -> 'D 'i 'm B525 -> 'D 'i 'b B526 -> 'D 'i 'b 's B527 -> 'D 'i 's B528 -> 'D 'i 's 's B529 -> 'D 'i 'n 'g B52A -> 'D 'i 'j B52B -> 'D 'i 'c 'h B52C -> 'D 'i 'k B52D -> 'D 'i 't B52E -> 'D 'i 'p B52F -> 'D 'i 'h B530 -> 'D 'd 'a B531 -> 'D 'd 'a 'g B532 -> 'D 'd 'a 'g 'g B533 -> 'D 'd 'a 'g 's B534 -> 'D 'd 'a 'n B535 -> 'D 'd 'a 'n 'j B536 -> 'D 'd 'a 'n 'h B537 -> 'D 'd 'a 'd B538 -> 'D 'd 'a 'l B539 -> 'D 'd 'a 'l 'g B53A -> 'D 'd 'a 'l 'm B53B -> 'D 'd 'a 'l 'b B53C -> 'D 'd 'a 'l 's B53D -> 'D 'd 'a 'l 't B53E -> 'D 'd 'a 'l 'p B53F -> 'D 'd 'a 'l 'h B540 -> 'D 'd 'a 'm B541 -> 'D 'd 'a 'b B542 -> 'D 'd 'a 'b 's B543 -> 'D 'd 'a 's B544 -> 'D 'd 'a 's 's B545 -> 'D 'd 'a 'n 'g B546 -> 'D 'd 'a 'j B547 -> 'D 'd 'a 'c 'h B548 -> 'D 'd 'a 'k B549 -> 'D 'd 'a 't B54A -> 'D 'd 'a 'p B54B -> 'D 'd 'a 'h B54C -> 'D 'd 'a 'e B54D -> 'D 'd 'a 'e 'g B54E -> 'D 'd 'a 'e 'g 'g B54F -> 'D 'd 'a 'e 'g 's B550 -> 'D 'd 'a 'e 'n B551 -> 'D 'd 'a 'e 'n 'j B552 -> 'D 'd 'a 'e 'n 'h B553 -> 'D 'd 'a 'e 'd B554 -> 'D 'd 'a 'e 'l B555 -> 'D 'd 'a 'e 'l 'g B556 -> 'D 'd 'a 'e 'l 'm B557 -> 'D 'd 'a 'e 'l 'b B558 -> 'D 'd 'a 'e 'l 's B559 -> 'D 'd 'a 'e 'l 't B55A -> 'D 'd 'a 'e 'l 'p B55B -> 'D 'd 'a 'e 'l 'h B55C -> 'D 'd 'a 'e 'm B55D -> 'D 'd 'a 'e 'b B55E -> 'D 'd 'a 'e 'b 's B55F -> 'D 'd 'a 'e 's B560 -> 'D 'd 'a 'e 's 's B561 -> 'D 'd 'a 'e 'n 'g B562 -> 'D 'd 'a 'e 'j B563 -> 'D 'd 'a 'e 'c 'h B564 -> 'D 'd 'a 'e 'k B565 -> 'D 'd 'a 'e 't B566 -> 'D 'd 'a 'e 'p B567 -> 'D 'd 'a 'e 'h B568 -> 'D 'd 'y 'a B569 -> 'D 'd 'y 'a 'g B56A -> 'D 'd 'y 'a 'g 'g B56B -> 'D 'd 'y 'a 'g 's B56C -> 'D 'd 'y 'a 'n B56D -> 'D 'd 'y 'a 'n 'j B56E -> 'D 'd 'y 'a 'n 'h B56F -> 'D 'd 'y 'a 'd B570 -> 'D 'd 'y 'a 'l B571 -> 'D 'd 'y 'a 'l 'g B572 -> 'D 'd 'y 'a 'l 'm B573 -> 'D 'd 'y 'a 'l 'b B574 -> 'D 'd 'y 'a 'l 's B575 -> 'D 'd 'y 'a 'l 't B576 -> 'D 'd 'y 'a 'l 'p B577 -> 'D 'd 'y 'a 'l 'h B578 -> 'D 'd 'y 'a 'm B579 -> 'D 'd 'y 'a 'b B57A -> 'D 'd 'y 'a 'b 's B57B -> 'D 'd 'y 'a 's B57C -> 'D 'd 'y 'a 's 's B57D -> 'D 'd 'y 'a 'n 'g B57E -> 'D 'd 'y 'a 'j B57F -> 'D 'd 'y 'a 'c 'h B580 -> 'D 'd 'y 'a 'k B581 -> 'D 'd 'y 'a 't B582 -> 'D 'd 'y 'a 'p B583 -> 'D 'd 'y 'a 'h B584 -> 'D 'd 'y 'a 'e B585 -> 'D 'd 'y 'a 'e 'g B586 -> 'D 'd 'y 'a 'e 'g 'g B587 -> 'D 'd 'y 'a 'e 'g 's B588 -> 'D 'd 'y 'a 'e 'n B589 -> 'D 'd 'y 'a 'e 'n 'j B58A -> 'D 'd 'y 'a 'e 'n 'h B58B -> 'D 'd 'y 'a 'e 'd B58C -> 'D 'd 'y 'a 'e 'l B58D -> 'D 'd 'y 'a 'e 'l 'g B58E -> 'D 'd 'y 'a 'e 'l 'm B58F -> 'D 'd 'y 'a 'e 'l 'b B590 -> 'D 'd 'y 'a 'e 'l 's B591 -> 'D 'd 'y 'a 'e 'l 't B592 -> 'D 'd 'y 'a 'e 'l 'p B593 -> 'D 'd 'y 'a 'e 'l 'h B594 -> 'D 'd 'y 'a 'e 'm B595 -> 'D 'd 'y 'a 'e 'b B596 -> 'D 'd 'y 'a 'e 'b 's B597 -> 'D 'd 'y 'a 'e 's B598 -> 'D 'd 'y 'a 'e 's 's B599 -> 'D 'd 'y 'a 'e 'n 'g B59A -> 'D 'd 'y 'a 'e 'j B59B -> 'D 'd 'y 'a 'e 'c 'h B59C -> 'D 'd 'y 'a 'e 'k B59D -> 'D 'd 'y 'a 'e 't B59E -> 'D 'd 'y 'a 'e 'p B59F -> 'D 'd 'y 'a 'e 'h B5A0 -> 'D 'd 'e 'o B5A1 -> 'D 'd 'e 'o 'g B5A2 -> 'D 'd 'e 'o 'g 'g B5A3 -> 'D 'd 'e 'o 'g 's B5A4 -> 'D 'd 'e 'o 'n B5A5 -> 'D 'd 'e 'o 'n 'j B5A6 -> 'D 'd 'e 'o 'n 'h B5A7 -> 'D 'd 'e 'o 'd B5A8 -> 'D 'd 'e 'o 'l B5A9 -> 'D 'd 'e 'o 'l 'g B5AA -> 'D 'd 'e 'o 'l 'm B5AB -> 'D 'd 'e 'o 'l 'b B5AC -> 'D 'd 'e 'o 'l 's B5AD -> 'D 'd 'e 'o 'l 't B5AE -> 'D 'd 'e 'o 'l 'p B5AF -> 'D 'd 'e 'o 'l 'h B5B0 -> 'D 'd 'e 'o 'm B5B1 -> 'D 'd 'e 'o 'b B5B2 -> 'D 'd 'e 'o 'b 's B5B3 -> 'D 'd 'e 'o 's B5B4 -> 'D 'd 'e 'o 's 's B5B5 -> 'D 'd 'e 'o 'n 'g B5B6 -> 'D 'd 'e 'o 'j B5B7 -> 'D 'd 'e 'o 'c 'h B5B8 -> 'D 'd 'e 'o 'k B5B9 -> 'D 'd 'e 'o 't B5BA -> 'D 'd 'e 'o 'p B5BB -> 'D 'd 'e 'o 'h B5BC -> 'D 'd 'e B5BD -> 'D 'd 'e 'g B5BE -> 'D 'd 'e 'g 'g B5BF -> 'D 'd 'e 'g 's B5C0 -> 'D 'd 'e 'n B5C1 -> 'D 'd 'e 'n 'j B5C2 -> 'D 'd 'e 'n 'h B5C3 -> 'D 'd 'e 'd B5C4 -> 'D 'd 'e 'l B5C5 -> 'D 'd 'e 'l 'g B5C6 -> 'D 'd 'e 'l 'm B5C7 -> 'D 'd 'e 'l 'b B5C8 -> 'D 'd 'e 'l 's B5C9 -> 'D 'd 'e 'l 't B5CA -> 'D 'd 'e 'l 'p B5CB -> 'D 'd 'e 'l 'h B5CC -> 'D 'd 'e 'm B5CD -> 'D 'd 'e 'b B5CE -> 'D 'd 'e 'b 's B5CF -> 'D 'd 'e 's B5D0 -> 'D 'd 'e 's 's B5D1 -> 'D 'd 'e 'n 'g B5D2 -> 'D 'd 'e 'j B5D3 -> 'D 'd 'e 'c 'h B5D4 -> 'D 'd 'e 'k B5D5 -> 'D 'd 'e 't B5D6 -> 'D 'd 'e 'p B5D7 -> 'D 'd 'e 'h B5D8 -> 'D 'd 'y 'e 'o B5D9 -> 'D 'd 'y 'e 'o 'g B5DA -> 'D 'd 'y 'e 'o 'g 'g B5DB -> 'D 'd 'y 'e 'o 'g 's B5DC -> 'D 'd 'y 'e 'o 'n B5DD -> 'D 'd 'y 'e 'o 'n 'j B5DE -> 'D 'd 'y 'e 'o 'n 'h B5DF -> 'D 'd 'y 'e 'o 'd B5E0 -> 'D 'd 'y 'e 'o 'l B5E1 -> 'D 'd 'y 'e 'o 'l 'g B5E2 -> 'D 'd 'y 'e 'o 'l 'm B5E3 -> 'D 'd 'y 'e 'o 'l 'b B5E4 -> 'D 'd 'y 'e 'o 'l 's B5E5 -> 'D 'd 'y 'e 'o 'l 't B5E6 -> 'D 'd 'y 'e 'o 'l 'p B5E7 -> 'D 'd 'y 'e 'o 'l 'h B5E8 -> 'D 'd 'y 'e 'o 'm B5E9 -> 'D 'd 'y 'e 'o 'b B5EA -> 'D 'd 'y 'e 'o 'b 's B5EB -> 'D 'd 'y 'e 'o 's B5EC -> 'D 'd 'y 'e 'o 's 's B5ED -> 'D 'd 'y 'e 'o 'n 'g B5EE -> 'D 'd 'y 'e 'o 'j B5EF -> 'D 'd 'y 'e 'o 'c 'h B5F0 -> 'D 'd 'y 'e 'o 'k B5F1 -> 'D 'd 'y 'e 'o 't B5F2 -> 'D 'd 'y 'e 'o 'p B5F3 -> 'D 'd 'y 'e 'o 'h B5F4 -> 'D 'd 'y 'e B5F5 -> 'D 'd 'y 'e 'g B5F6 -> 'D 'd 'y 'e 'g 'g B5F7 -> 'D 'd 'y 'e 'g 's B5F8 -> 'D 'd 'y 'e 'n B5F9 -> 'D 'd 'y 'e 'n 'j B5FA -> 'D 'd 'y 'e 'n 'h B5FB -> 'D 'd 'y 'e 'd B5FC -> 'D 'd 'y 'e 'l B5FD -> 'D 'd 'y 'e 'l 'g B5FE -> 'D 'd 'y 'e 'l 'm B5FF -> 'D 'd 'y 'e 'l 'b B600 -> 'D 'd 'y 'e 'l 's B601 -> 'D 'd 'y 'e 'l 't B602 -> 'D 'd 'y 'e 'l 'p B603 -> 'D 'd 'y 'e 'l 'h B604 -> 'D 'd 'y 'e 'm B605 -> 'D 'd 'y 'e 'b B606 -> 'D 'd 'y 'e 'b 's B607 -> 'D 'd 'y 'e 's B608 -> 'D 'd 'y 'e 's 's B609 -> 'D 'd 'y 'e 'n 'g B60A -> 'D 'd 'y 'e 'j B60B -> 'D 'd 'y 'e 'c 'h B60C -> 'D 'd 'y 'e 'k B60D -> 'D 'd 'y 'e 't B60E -> 'D 'd 'y 'e 'p B60F -> 'D 'd 'y 'e 'h B610 -> 'D 'd 'o B611 -> 'D 'd 'o 'g B612 -> 'D 'd 'o 'g 'g B613 -> 'D 'd 'o 'g 's B614 -> 'D 'd 'o 'n B615 -> 'D 'd 'o 'n 'j B616 -> 'D 'd 'o 'n 'h B617 -> 'D 'd 'o 'd B618 -> 'D 'd 'o 'l B619 -> 'D 'd 'o 'l 'g B61A -> 'D 'd 'o 'l 'm B61B -> 'D 'd 'o 'l 'b B61C -> 'D 'd 'o 'l 's B61D -> 'D 'd 'o 'l 't B61E -> 'D 'd 'o 'l 'p B61F -> 'D 'd 'o 'l 'h B620 -> 'D 'd 'o 'm B621 -> 'D 'd 'o 'b B622 -> 'D 'd 'o 'b 's B623 -> 'D 'd 'o 's B624 -> 'D 'd 'o 's 's B625 -> 'D 'd 'o 'n 'g B626 -> 'D 'd 'o 'j B627 -> 'D 'd 'o 'c 'h B628 -> 'D 'd 'o 'k B629 -> 'D 'd 'o 't B62A -> 'D 'd 'o 'p B62B -> 'D 'd 'o 'h B62C -> 'D 'd 'o 'a B62D -> 'D 'd 'o 'a 'g B62E -> 'D 'd 'o 'a 'g 'g B62F -> 'D 'd 'o 'a 'g 's B630 -> 'D 'd 'o 'a 'n B631 -> 'D 'd 'o 'a 'n 'j B632 -> 'D 'd 'o 'a 'n 'h B633 -> 'D 'd 'o 'a 'd B634 -> 'D 'd 'o 'a 'l B635 -> 'D 'd 'o 'a 'l 'g B636 -> 'D 'd 'o 'a 'l 'm B637 -> 'D 'd 'o 'a 'l 'b B638 -> 'D 'd 'o 'a 'l 's B639 -> 'D 'd 'o 'a 'l 't B63A -> 'D 'd 'o 'a 'l 'p B63B -> 'D 'd 'o 'a 'l 'h B63C -> 'D 'd 'o 'a 'm B63D -> 'D 'd 'o 'a 'b B63E -> 'D 'd 'o 'a 'b 's B63F -> 'D 'd 'o 'a 's B640 -> 'D 'd 'o 'a 's 's B641 -> 'D 'd 'o 'a 'n 'g B642 -> 'D 'd 'o 'a 'j B643 -> 'D 'd 'o 'a 'c 'h B644 -> 'D 'd 'o 'a 'k B645 -> 'D 'd 'o 'a 't B646 -> 'D 'd 'o 'a 'p B647 -> 'D 'd 'o 'a 'h B648 -> 'D 'd 'o 'a 'e B649 -> 'D 'd 'o 'a 'e 'g B64A -> 'D 'd 'o 'a 'e 'g 'g B64B -> 'D 'd 'o 'a 'e 'g 's B64C -> 'D 'd 'o 'a 'e 'n B64D -> 'D 'd 'o 'a 'e 'n 'j B64E -> 'D 'd 'o 'a 'e 'n 'h B64F -> 'D 'd 'o 'a 'e 'd B650 -> 'D 'd 'o 'a 'e 'l B651 -> 'D 'd 'o 'a 'e 'l 'g B652 -> 'D 'd 'o 'a 'e 'l 'm B653 -> 'D 'd 'o 'a 'e 'l 'b B654 -> 'D 'd 'o 'a 'e 'l 's B655 -> 'D 'd 'o 'a 'e 'l 't B656 -> 'D 'd 'o 'a 'e 'l 'p B657 -> 'D 'd 'o 'a 'e 'l 'h B658 -> 'D 'd 'o 'a 'e 'm B659 -> 'D 'd 'o 'a 'e 'b B65A -> 'D 'd 'o 'a 'e 'b 's B65B -> 'D 'd 'o 'a 'e 's B65C -> 'D 'd 'o 'a 'e 's 's B65D -> 'D 'd 'o 'a 'e 'n 'g B65E -> 'D 'd 'o 'a 'e 'j B65F -> 'D 'd 'o 'a 'e 'c 'h B660 -> 'D 'd 'o 'a 'e 'k B661 -> 'D 'd 'o 'a 'e 't B662 -> 'D 'd 'o 'a 'e 'p B663 -> 'D 'd 'o 'a 'e 'h B664 -> 'D 'd 'o 'i B665 -> 'D 'd 'o 'i 'g B666 -> 'D 'd 'o 'i 'g 'g B667 -> 'D 'd 'o 'i 'g 's B668 -> 'D 'd 'o 'i 'n B669 -> 'D 'd 'o 'i 'n 'j B66A -> 'D 'd 'o 'i 'n 'h B66B -> 'D 'd 'o 'i 'd B66C -> 'D 'd 'o 'i 'l B66D -> 'D 'd 'o 'i 'l 'g B66E -> 'D 'd 'o 'i 'l 'm B66F -> 'D 'd 'o 'i 'l 'b B670 -> 'D 'd 'o 'i 'l 's B671 -> 'D 'd 'o 'i 'l 't B672 -> 'D 'd 'o 'i 'l 'p B673 -> 'D 'd 'o 'i 'l 'h B674 -> 'D 'd 'o 'i 'm B675 -> 'D 'd 'o 'i 'b B676 -> 'D 'd 'o 'i 'b 's B677 -> 'D 'd 'o 'i 's B678 -> 'D 'd 'o 'i 's 's B679 -> 'D 'd 'o 'i 'n 'g B67A -> 'D 'd 'o 'i 'j B67B -> 'D 'd 'o 'i 'c 'h B67C -> 'D 'd 'o 'i 'k B67D -> 'D 'd 'o 'i 't B67E -> 'D 'd 'o 'i 'p B67F -> 'D 'd 'o 'i 'h B680 -> 'D 'd 'y 'o B681 -> 'D 'd 'y 'o 'g B682 -> 'D 'd 'y 'o 'g 'g B683 -> 'D 'd 'y 'o 'g 's B684 -> 'D 'd 'y 'o 'n B685 -> 'D 'd 'y 'o 'n 'j B686 -> 'D 'd 'y 'o 'n 'h B687 -> 'D 'd 'y 'o 'd B688 -> 'D 'd 'y 'o 'l B689 -> 'D 'd 'y 'o 'l 'g B68A -> 'D 'd 'y 'o 'l 'm B68B -> 'D 'd 'y 'o 'l 'b B68C -> 'D 'd 'y 'o 'l 's B68D -> 'D 'd 'y 'o 'l 't B68E -> 'D 'd 'y 'o 'l 'p B68F -> 'D 'd 'y 'o 'l 'h B690 -> 'D 'd 'y 'o 'm B691 -> 'D 'd 'y 'o 'b B692 -> 'D 'd 'y 'o 'b 's B693 -> 'D 'd 'y 'o 's B694 -> 'D 'd 'y 'o 's 's B695 -> 'D 'd 'y 'o 'n 'g B696 -> 'D 'd 'y 'o 'j B697 -> 'D 'd 'y 'o 'c 'h B698 -> 'D 'd 'y 'o 'k B699 -> 'D 'd 'y 'o 't B69A -> 'D 'd 'y 'o 'p B69B -> 'D 'd 'y 'o 'h B69C -> 'D 'd 'u B69D -> 'D 'd 'u 'g B69E -> 'D 'd 'u 'g 'g B69F -> 'D 'd 'u 'g 's B6A0 -> 'D 'd 'u 'n B6A1 -> 'D 'd 'u 'n 'j B6A2 -> 'D 'd 'u 'n 'h B6A3 -> 'D 'd 'u 'd B6A4 -> 'D 'd 'u 'l B6A5 -> 'D 'd 'u 'l 'g B6A6 -> 'D 'd 'u 'l 'm B6A7 -> 'D 'd 'u 'l 'b B6A8 -> 'D 'd 'u 'l 's B6A9 -> 'D 'd 'u 'l 't B6AA -> 'D 'd 'u 'l 'p B6AB -> 'D 'd 'u 'l 'h B6AC -> 'D 'd 'u 'm B6AD -> 'D 'd 'u 'b B6AE -> 'D 'd 'u 'b 's B6AF -> 'D 'd 'u 's B6B0 -> 'D 'd 'u 's 's B6B1 -> 'D 'd 'u 'n 'g B6B2 -> 'D 'd 'u 'j B6B3 -> 'D 'd 'u 'c 'h B6B4 -> 'D 'd 'u 'k B6B5 -> 'D 'd 'u 't B6B6 -> 'D 'd 'u 'p B6B7 -> 'D 'd 'u 'h B6B8 -> 'D 'd 'u 'e 'o B6B9 -> 'D 'd 'u 'e 'o 'g B6BA -> 'D 'd 'u 'e 'o 'g 'g B6BB -> 'D 'd 'u 'e 'o 'g 's B6BC -> 'D 'd 'u 'e 'o 'n B6BD -> 'D 'd 'u 'e 'o 'n 'j B6BE -> 'D 'd 'u 'e 'o 'n 'h B6BF -> 'D 'd 'u 'e 'o 'd B6C0 -> 'D 'd 'u 'e 'o 'l B6C1 -> 'D 'd 'u 'e 'o 'l 'g B6C2 -> 'D 'd 'u 'e 'o 'l 'm B6C3 -> 'D 'd 'u 'e 'o 'l 'b B6C4 -> 'D 'd 'u 'e 'o 'l 's B6C5 -> 'D 'd 'u 'e 'o 'l 't B6C6 -> 'D 'd 'u 'e 'o 'l 'p B6C7 -> 'D 'd 'u 'e 'o 'l 'h B6C8 -> 'D 'd 'u 'e 'o 'm B6C9 -> 'D 'd 'u 'e 'o 'b B6CA -> 'D 'd 'u 'e 'o 'b 's B6CB -> 'D 'd 'u 'e 'o 's B6CC -> 'D 'd 'u 'e 'o 's 's B6CD -> 'D 'd 'u 'e 'o 'n 'g B6CE -> 'D 'd 'u 'e 'o 'j B6CF -> 'D 'd 'u 'e 'o 'c 'h B6D0 -> 'D 'd 'u 'e 'o 'k B6D1 -> 'D 'd 'u 'e 'o 't B6D2 -> 'D 'd 'u 'e 'o 'p B6D3 -> 'D 'd 'u 'e 'o 'h B6D4 -> 'D 'd 'u 'e B6D5 -> 'D 'd 'u 'e 'g B6D6 -> 'D 'd 'u 'e 'g 'g B6D7 -> 'D 'd 'u 'e 'g 's B6D8 -> 'D 'd 'u 'e 'n B6D9 -> 'D 'd 'u 'e 'n 'j B6DA -> 'D 'd 'u 'e 'n 'h B6DB -> 'D 'd 'u 'e 'd B6DC -> 'D 'd 'u 'e 'l B6DD -> 'D 'd 'u 'e 'l 'g B6DE -> 'D 'd 'u 'e 'l 'm B6DF -> 'D 'd 'u 'e 'l 'b B6E0 -> 'D 'd 'u 'e 'l 's B6E1 -> 'D 'd 'u 'e 'l 't B6E2 -> 'D 'd 'u 'e 'l 'p B6E3 -> 'D 'd 'u 'e 'l 'h B6E4 -> 'D 'd 'u 'e 'm B6E5 -> 'D 'd 'u 'e 'b B6E6 -> 'D 'd 'u 'e 'b 's B6E7 -> 'D 'd 'u 'e 's B6E8 -> 'D 'd 'u 'e 's 's B6E9 -> 'D 'd 'u 'e 'n 'g B6EA -> 'D 'd 'u 'e 'j B6EB -> 'D 'd 'u 'e 'c 'h B6EC -> 'D 'd 'u 'e 'k B6ED -> 'D 'd 'u 'e 't B6EE -> 'D 'd 'u 'e 'p B6EF -> 'D 'd 'u 'e 'h B6F0 -> 'D 'd 'u 'i B6F1 -> 'D 'd 'u 'i 'g B6F2 -> 'D 'd 'u 'i 'g 'g B6F3 -> 'D 'd 'u 'i 'g 's B6F4 -> 'D 'd 'u 'i 'n B6F5 -> 'D 'd 'u 'i 'n 'j B6F6 -> 'D 'd 'u 'i 'n 'h B6F7 -> 'D 'd 'u 'i 'd B6F8 -> 'D 'd 'u 'i 'l B6F9 -> 'D 'd 'u 'i 'l 'g B6FA -> 'D 'd 'u 'i 'l 'm B6FB -> 'D 'd 'u 'i 'l 'b B6FC -> 'D 'd 'u 'i 'l 's B6FD -> 'D 'd 'u 'i 'l 't B6FE -> 'D 'd 'u 'i 'l 'p B6FF -> 'D 'd 'u 'i 'l 'h B700 -> 'D 'd 'u 'i 'm B701 -> 'D 'd 'u 'i 'b B702 -> 'D 'd 'u 'i 'b 's B703 -> 'D 'd 'u 'i 's B704 -> 'D 'd 'u 'i 's 's B705 -> 'D 'd 'u 'i 'n 'g B706 -> 'D 'd 'u 'i 'j B707 -> 'D 'd 'u 'i 'c 'h B708 -> 'D 'd 'u 'i 'k B709 -> 'D 'd 'u 'i 't B70A -> 'D 'd 'u 'i 'p B70B -> 'D 'd 'u 'i 'h B70C -> 'D 'd 'y 'u B70D -> 'D 'd 'y 'u 'g B70E -> 'D 'd 'y 'u 'g 'g B70F -> 'D 'd 'y 'u 'g 's B710 -> 'D 'd 'y 'u 'n B711 -> 'D 'd 'y 'u 'n 'j B712 -> 'D 'd 'y 'u 'n 'h B713 -> 'D 'd 'y 'u 'd B714 -> 'D 'd 'y 'u 'l B715 -> 'D 'd 'y 'u 'l 'g B716 -> 'D 'd 'y 'u 'l 'm B717 -> 'D 'd 'y 'u 'l 'b B718 -> 'D 'd 'y 'u 'l 's B719 -> 'D 'd 'y 'u 'l 't B71A -> 'D 'd 'y 'u 'l 'p B71B -> 'D 'd 'y 'u 'l 'h B71C -> 'D 'd 'y 'u 'm B71D -> 'D 'd 'y 'u 'b B71E -> 'D 'd 'y 'u 'b 's B71F -> 'D 'd 'y 'u 's B720 -> 'D 'd 'y 'u 's 's B721 -> 'D 'd 'y 'u 'n 'g B722 -> 'D 'd 'y 'u 'j B723 -> 'D 'd 'y 'u 'c 'h B724 -> 'D 'd 'y 'u 'k B725 -> 'D 'd 'y 'u 't B726 -> 'D 'd 'y 'u 'p B727 -> 'D 'd 'y 'u 'h B728 -> 'D 'd 'e 'u B729 -> 'D 'd 'e 'u 'g B72A -> 'D 'd 'e 'u 'g 'g B72B -> 'D 'd 'e 'u 'g 's B72C -> 'D 'd 'e 'u 'n B72D -> 'D 'd 'e 'u 'n 'j B72E -> 'D 'd 'e 'u 'n 'h B72F -> 'D 'd 'e 'u 'd B730 -> 'D 'd 'e 'u 'l B731 -> 'D 'd 'e 'u 'l 'g B732 -> 'D 'd 'e 'u 'l 'm B733 -> 'D 'd 'e 'u 'l 'b B734 -> 'D 'd 'e 'u 'l 's B735 -> 'D 'd 'e 'u 'l 't B736 -> 'D 'd 'e 'u 'l 'p B737 -> 'D 'd 'e 'u 'l 'h B738 -> 'D 'd 'e 'u 'm B739 -> 'D 'd 'e 'u 'b B73A -> 'D 'd 'e 'u 'b 's B73B -> 'D 'd 'e 'u 's B73C -> 'D 'd 'e 'u 's 's B73D -> 'D 'd 'e 'u 'n 'g B73E -> 'D 'd 'e 'u 'j B73F -> 'D 'd 'e 'u 'c 'h B740 -> 'D 'd 'e 'u 'k B741 -> 'D 'd 'e 'u 't B742 -> 'D 'd 'e 'u 'p B743 -> 'D 'd 'e 'u 'h B744 -> 'D 'd 'e 'u 'i B745 -> 'D 'd 'e 'u 'i 'g B746 -> 'D 'd 'e 'u 'i 'g 'g B747 -> 'D 'd 'e 'u 'i 'g 's B748 -> 'D 'd 'e 'u 'i 'n B749 -> 'D 'd 'e 'u 'i 'n 'j B74A -> 'D 'd 'e 'u 'i 'n 'h B74B -> 'D 'd 'e 'u 'i 'd B74C -> 'D 'd 'e 'u 'i 'l B74D -> 'D 'd 'e 'u 'i 'l 'g B74E -> 'D 'd 'e 'u 'i 'l 'm B74F -> 'D 'd 'e 'u 'i 'l 'b B750 -> 'D 'd 'e 'u 'i 'l 's B751 -> 'D 'd 'e 'u 'i 'l 't B752 -> 'D 'd 'e 'u 'i 'l 'p B753 -> 'D 'd 'e 'u 'i 'l 'h B754 -> 'D 'd 'e 'u 'i 'm B755 -> 'D 'd 'e 'u 'i 'b B756 -> 'D 'd 'e 'u 'i 'b 's B757 -> 'D 'd 'e 'u 'i 's B758 -> 'D 'd 'e 'u 'i 's 's B759 -> 'D 'd 'e 'u 'i 'n 'g B75A -> 'D 'd 'e 'u 'i 'j B75B -> 'D 'd 'e 'u 'i 'c 'h B75C -> 'D 'd 'e 'u 'i 'k B75D -> 'D 'd 'e 'u 'i 't B75E -> 'D 'd 'e 'u 'i 'p B75F -> 'D 'd 'e 'u 'i 'h B760 -> 'D 'd 'i B761 -> 'D 'd 'i 'g B762 -> 'D 'd 'i 'g 'g B763 -> 'D 'd 'i 'g 's B764 -> 'D 'd 'i 'n B765 -> 'D 'd 'i 'n 'j B766 -> 'D 'd 'i 'n 'h B767 -> 'D 'd 'i 'd B768 -> 'D 'd 'i 'l B769 -> 'D 'd 'i 'l 'g B76A -> 'D 'd 'i 'l 'm B76B -> 'D 'd 'i 'l 'b B76C -> 'D 'd 'i 'l 's B76D -> 'D 'd 'i 'l 't B76E -> 'D 'd 'i 'l 'p B76F -> 'D 'd 'i 'l 'h B770 -> 'D 'd 'i 'm B771 -> 'D 'd 'i 'b B772 -> 'D 'd 'i 'b 's B773 -> 'D 'd 'i 's B774 -> 'D 'd 'i 's 's B775 -> 'D 'd 'i 'n 'g B776 -> 'D 'd 'i 'j B777 -> 'D 'd 'i 'c 'h B778 -> 'D 'd 'i 'k B779 -> 'D 'd 'i 't B77A -> 'D 'd 'i 'p B77B -> 'D 'd 'i 'h B77C -> 'L 'a B77D -> 'L 'a 'g B77E -> 'L 'a 'g 'g B77F -> 'L 'a 'g 's B780 -> 'L 'a 'n B781 -> 'L 'a 'n 'j B782 -> 'L 'a 'n 'h B783 -> 'L 'a 'd B784 -> 'L 'a 'l B785 -> 'L 'a 'l 'g B786 -> 'L 'a 'l 'm B787 -> 'L 'a 'l 'b B788 -> 'L 'a 'l 's B789 -> 'L 'a 'l 't B78A -> 'L 'a 'l 'p B78B -> 'L 'a 'l 'h B78C -> 'L 'a 'm B78D -> 'L 'a 'b B78E -> 'L 'a 'b 's B78F -> 'L 'a 's B790 -> 'L 'a 's 's B791 -> 'L 'a 'n 'g B792 -> 'L 'a 'j B793 -> 'L 'a 'c 'h B794 -> 'L 'a 'k B795 -> 'L 'a 't B796 -> 'L 'a 'p B797 -> 'L 'a 'h B798 -> 'L 'a 'e B799 -> 'L 'a 'e 'g B79A -> 'L 'a 'e 'g 'g B79B -> 'L 'a 'e 'g 's B79C -> 'L 'a 'e 'n B79D -> 'L 'a 'e 'n 'j B79E -> 'L 'a 'e 'n 'h B79F -> 'L 'a 'e 'd B7A0 -> 'L 'a 'e 'l B7A1 -> 'L 'a 'e 'l 'g B7A2 -> 'L 'a 'e 'l 'm B7A3 -> 'L 'a 'e 'l 'b B7A4 -> 'L 'a 'e 'l 's B7A5 -> 'L 'a 'e 'l 't B7A6 -> 'L 'a 'e 'l 'p B7A7 -> 'L 'a 'e 'l 'h B7A8 -> 'L 'a 'e 'm B7A9 -> 'L 'a 'e 'b B7AA -> 'L 'a 'e 'b 's B7AB -> 'L 'a 'e 's B7AC -> 'L 'a 'e 's 's B7AD -> 'L 'a 'e 'n 'g B7AE -> 'L 'a 'e 'j B7AF -> 'L 'a 'e 'c 'h B7B0 -> 'L 'a 'e 'k B7B1 -> 'L 'a 'e 't B7B2 -> 'L 'a 'e 'p B7B3 -> 'L 'a 'e 'h B7B4 -> 'L 'y 'a B7B5 -> 'L 'y 'a 'g B7B6 -> 'L 'y 'a 'g 'g B7B7 -> 'L 'y 'a 'g 's B7B8 -> 'L 'y 'a 'n B7B9 -> 'L 'y 'a 'n 'j B7BA -> 'L 'y 'a 'n 'h B7BB -> 'L 'y 'a 'd B7BC -> 'L 'y 'a 'l B7BD -> 'L 'y 'a 'l 'g B7BE -> 'L 'y 'a 'l 'm B7BF -> 'L 'y 'a 'l 'b B7C0 -> 'L 'y 'a 'l 's B7C1 -> 'L 'y 'a 'l 't B7C2 -> 'L 'y 'a 'l 'p B7C3 -> 'L 'y 'a 'l 'h B7C4 -> 'L 'y 'a 'm B7C5 -> 'L 'y 'a 'b B7C6 -> 'L 'y 'a 'b 's B7C7 -> 'L 'y 'a 's B7C8 -> 'L 'y 'a 's 's B7C9 -> 'L 'y 'a 'n 'g B7CA -> 'L 'y 'a 'j B7CB -> 'L 'y 'a 'c 'h B7CC -> 'L 'y 'a 'k B7CD -> 'L 'y 'a 't B7CE -> 'L 'y 'a 'p B7CF -> 'L 'y 'a 'h B7D0 -> 'L 'y 'a 'e B7D1 -> 'L 'y 'a 'e 'g B7D2 -> 'L 'y 'a 'e 'g 'g B7D3 -> 'L 'y 'a 'e 'g 's B7D4 -> 'L 'y 'a 'e 'n B7D5 -> 'L 'y 'a 'e 'n 'j B7D6 -> 'L 'y 'a 'e 'n 'h B7D7 -> 'L 'y 'a 'e 'd B7D8 -> 'L 'y 'a 'e 'l B7D9 -> 'L 'y 'a 'e 'l 'g B7DA -> 'L 'y 'a 'e 'l 'm B7DB -> 'L 'y 'a 'e 'l 'b B7DC -> 'L 'y 'a 'e 'l 's B7DD -> 'L 'y 'a 'e 'l 't B7DE -> 'L 'y 'a 'e 'l 'p B7DF -> 'L 'y 'a 'e 'l 'h B7E0 -> 'L 'y 'a 'e 'm B7E1 -> 'L 'y 'a 'e 'b B7E2 -> 'L 'y 'a 'e 'b 's B7E3 -> 'L 'y 'a 'e 's B7E4 -> 'L 'y 'a 'e 's 's B7E5 -> 'L 'y 'a 'e 'n 'g B7E6 -> 'L 'y 'a 'e 'j B7E7 -> 'L 'y 'a 'e 'c 'h B7E8 -> 'L 'y 'a 'e 'k B7E9 -> 'L 'y 'a 'e 't B7EA -> 'L 'y 'a 'e 'p B7EB -> 'L 'y 'a 'e 'h B7EC -> 'L 'e 'o B7ED -> 'L 'e 'o 'g B7EE -> 'L 'e 'o 'g 'g B7EF -> 'L 'e 'o 'g 's B7F0 -> 'L 'e 'o 'n B7F1 -> 'L 'e 'o 'n 'j B7F2 -> 'L 'e 'o 'n 'h B7F3 -> 'L 'e 'o 'd B7F4 -> 'L 'e 'o 'l B7F5 -> 'L 'e 'o 'l 'g B7F6 -> 'L 'e 'o 'l 'm B7F7 -> 'L 'e 'o 'l 'b B7F8 -> 'L 'e 'o 'l 's B7F9 -> 'L 'e 'o 'l 't B7FA -> 'L 'e 'o 'l 'p B7FB -> 'L 'e 'o 'l 'h B7FC -> 'L 'e 'o 'm B7FD -> 'L 'e 'o 'b B7FE -> 'L 'e 'o 'b 's B7FF -> 'L 'e 'o 's B800 -> 'L 'e 'o 's 's B801 -> 'L 'e 'o 'n 'g B802 -> 'L 'e 'o 'j B803 -> 'L 'e 'o 'c 'h B804 -> 'L 'e 'o 'k B805 -> 'L 'e 'o 't B806 -> 'L 'e 'o 'p B807 -> 'L 'e 'o 'h B808 -> 'L 'e B809 -> 'L 'e 'g B80A -> 'L 'e 'g 'g B80B -> 'L 'e 'g 's B80C -> 'L 'e 'n B80D -> 'L 'e 'n 'j B80E -> 'L 'e 'n 'h B80F -> 'L 'e 'd B810 -> 'L 'e 'l B811 -> 'L 'e 'l 'g B812 -> 'L 'e 'l 'm B813 -> 'L 'e 'l 'b B814 -> 'L 'e 'l 's B815 -> 'L 'e 'l 't B816 -> 'L 'e 'l 'p B817 -> 'L 'e 'l 'h B818 -> 'L 'e 'm B819 -> 'L 'e 'b B81A -> 'L 'e 'b 's B81B -> 'L 'e 's B81C -> 'L 'e 's 's B81D -> 'L 'e 'n 'g B81E -> 'L 'e 'j B81F -> 'L 'e 'c 'h B820 -> 'L 'e 'k B821 -> 'L 'e 't B822 -> 'L 'e 'p B823 -> 'L 'e 'h B824 -> 'L 'y 'e 'o B825 -> 'L 'y 'e 'o 'g B826 -> 'L 'y 'e 'o 'g 'g B827 -> 'L 'y 'e 'o 'g 's B828 -> 'L 'y 'e 'o 'n B829 -> 'L 'y 'e 'o 'n 'j B82A -> 'L 'y 'e 'o 'n 'h B82B -> 'L 'y 'e 'o 'd B82C -> 'L 'y 'e 'o 'l B82D -> 'L 'y 'e 'o 'l 'g B82E -> 'L 'y 'e 'o 'l 'm B82F -> 'L 'y 'e 'o 'l 'b B830 -> 'L 'y 'e 'o 'l 's B831 -> 'L 'y 'e 'o 'l 't B832 -> 'L 'y 'e 'o 'l 'p B833 -> 'L 'y 'e 'o 'l 'h B834 -> 'L 'y 'e 'o 'm B835 -> 'L 'y 'e 'o 'b B836 -> 'L 'y 'e 'o 'b 's B837 -> 'L 'y 'e 'o 's B838 -> 'L 'y 'e 'o 's 's B839 -> 'L 'y 'e 'o 'n 'g B83A -> 'L 'y 'e 'o 'j B83B -> 'L 'y 'e 'o 'c 'h B83C -> 'L 'y 'e 'o 'k B83D -> 'L 'y 'e 'o 't B83E -> 'L 'y 'e 'o 'p B83F -> 'L 'y 'e 'o 'h B840 -> 'L 'y 'e B841 -> 'L 'y 'e 'g B842 -> 'L 'y 'e 'g 'g B843 -> 'L 'y 'e 'g 's B844 -> 'L 'y 'e 'n B845 -> 'L 'y 'e 'n 'j B846 -> 'L 'y 'e 'n 'h B847 -> 'L 'y 'e 'd B848 -> 'L 'y 'e 'l B849 -> 'L 'y 'e 'l 'g B84A -> 'L 'y 'e 'l 'm B84B -> 'L 'y 'e 'l 'b B84C -> 'L 'y 'e 'l 's B84D -> 'L 'y 'e 'l 't B84E -> 'L 'y 'e 'l 'p B84F -> 'L 'y 'e 'l 'h B850 -> 'L 'y 'e 'm B851 -> 'L 'y 'e 'b B852 -> 'L 'y 'e 'b 's B853 -> 'L 'y 'e 's B854 -> 'L 'y 'e 's 's B855 -> 'L 'y 'e 'n 'g B856 -> 'L 'y 'e 'j B857 -> 'L 'y 'e 'c 'h B858 -> 'L 'y 'e 'k B859 -> 'L 'y 'e 't B85A -> 'L 'y 'e 'p B85B -> 'L 'y 'e 'h B85C -> 'L 'o B85D -> 'L 'o 'g B85E -> 'L 'o 'g 'g B85F -> 'L 'o 'g 's B860 -> 'L 'o 'n B861 -> 'L 'o 'n 'j B862 -> 'L 'o 'n 'h B863 -> 'L 'o 'd B864 -> 'L 'o 'l B865 -> 'L 'o 'l 'g B866 -> 'L 'o 'l 'm B867 -> 'L 'o 'l 'b B868 -> 'L 'o 'l 's B869 -> 'L 'o 'l 't B86A -> 'L 'o 'l 'p B86B -> 'L 'o 'l 'h B86C -> 'L 'o 'm B86D -> 'L 'o 'b B86E -> 'L 'o 'b 's B86F -> 'L 'o 's B870 -> 'L 'o 's 's B871 -> 'L 'o 'n 'g B872 -> 'L 'o 'j B873 -> 'L 'o 'c 'h B874 -> 'L 'o 'k B875 -> 'L 'o 't B876 -> 'L 'o 'p B877 -> 'L 'o 'h B878 -> 'L 'o 'a B879 -> 'L 'o 'a 'g B87A -> 'L 'o 'a 'g 'g B87B -> 'L 'o 'a 'g 's B87C -> 'L 'o 'a 'n B87D -> 'L 'o 'a 'n 'j B87E -> 'L 'o 'a 'n 'h B87F -> 'L 'o 'a 'd B880 -> 'L 'o 'a 'l B881 -> 'L 'o 'a 'l 'g B882 -> 'L 'o 'a 'l 'm B883 -> 'L 'o 'a 'l 'b B884 -> 'L 'o 'a 'l 's B885 -> 'L 'o 'a 'l 't B886 -> 'L 'o 'a 'l 'p B887 -> 'L 'o 'a 'l 'h B888 -> 'L 'o 'a 'm B889 -> 'L 'o 'a 'b B88A -> 'L 'o 'a 'b 's B88B -> 'L 'o 'a 's B88C -> 'L 'o 'a 's 's B88D -> 'L 'o 'a 'n 'g B88E -> 'L 'o 'a 'j B88F -> 'L 'o 'a 'c 'h B890 -> 'L 'o 'a 'k B891 -> 'L 'o 'a 't B892 -> 'L 'o 'a 'p B893 -> 'L 'o 'a 'h B894 -> 'L 'o 'a 'e B895 -> 'L 'o 'a 'e 'g B896 -> 'L 'o 'a 'e 'g 'g B897 -> 'L 'o 'a 'e 'g 's B898 -> 'L 'o 'a 'e 'n B899 -> 'L 'o 'a 'e 'n 'j B89A -> 'L 'o 'a 'e 'n 'h B89B -> 'L 'o 'a 'e 'd B89C -> 'L 'o 'a 'e 'l B89D -> 'L 'o 'a 'e 'l 'g B89E -> 'L 'o 'a 'e 'l 'm B89F -> 'L 'o 'a 'e 'l 'b B8A0 -> 'L 'o 'a 'e 'l 's B8A1 -> 'L 'o 'a 'e 'l 't B8A2 -> 'L 'o 'a 'e 'l 'p B8A3 -> 'L 'o 'a 'e 'l 'h B8A4 -> 'L 'o 'a 'e 'm B8A5 -> 'L 'o 'a 'e 'b B8A6 -> 'L 'o 'a 'e 'b 's B8A7 -> 'L 'o 'a 'e 's B8A8 -> 'L 'o 'a 'e 's 's B8A9 -> 'L 'o 'a 'e 'n 'g B8AA -> 'L 'o 'a 'e 'j B8AB -> 'L 'o 'a 'e 'c 'h B8AC -> 'L 'o 'a 'e 'k B8AD -> 'L 'o 'a 'e 't B8AE -> 'L 'o 'a 'e 'p B8AF -> 'L 'o 'a 'e 'h B8B0 -> 'L 'o 'i B8B1 -> 'L 'o 'i 'g B8B2 -> 'L 'o 'i 'g 'g B8B3 -> 'L 'o 'i 'g 's B8B4 -> 'L 'o 'i 'n B8B5 -> 'L 'o 'i 'n 'j B8B6 -> 'L 'o 'i 'n 'h B8B7 -> 'L 'o 'i 'd B8B8 -> 'L 'o 'i 'l B8B9 -> 'L 'o 'i 'l 'g B8BA -> 'L 'o 'i 'l 'm B8BB -> 'L 'o 'i 'l 'b B8BC -> 'L 'o 'i 'l 's B8BD -> 'L 'o 'i 'l 't B8BE -> 'L 'o 'i 'l 'p B8BF -> 'L 'o 'i 'l 'h B8C0 -> 'L 'o 'i 'm B8C1 -> 'L 'o 'i 'b B8C2 -> 'L 'o 'i 'b 's B8C3 -> 'L 'o 'i 's B8C4 -> 'L 'o 'i 's 's B8C5 -> 'L 'o 'i 'n 'g B8C6 -> 'L 'o 'i 'j B8C7 -> 'L 'o 'i 'c 'h B8C8 -> 'L 'o 'i 'k B8C9 -> 'L 'o 'i 't B8CA -> 'L 'o 'i 'p B8CB -> 'L 'o 'i 'h B8CC -> 'L 'y 'o B8CD -> 'L 'y 'o 'g B8CE -> 'L 'y 'o 'g 'g B8CF -> 'L 'y 'o 'g 's B8D0 -> 'L 'y 'o 'n B8D1 -> 'L 'y 'o 'n 'j B8D2 -> 'L 'y 'o 'n 'h B8D3 -> 'L 'y 'o 'd B8D4 -> 'L 'y 'o 'l B8D5 -> 'L 'y 'o 'l 'g B8D6 -> 'L 'y 'o 'l 'm B8D7 -> 'L 'y 'o 'l 'b B8D8 -> 'L 'y 'o 'l 's B8D9 -> 'L 'y 'o 'l 't B8DA -> 'L 'y 'o 'l 'p B8DB -> 'L 'y 'o 'l 'h B8DC -> 'L 'y 'o 'm B8DD -> 'L 'y 'o 'b B8DE -> 'L 'y 'o 'b 's B8DF -> 'L 'y 'o 's B8E0 -> 'L 'y 'o 's 's B8E1 -> 'L 'y 'o 'n 'g B8E2 -> 'L 'y 'o 'j B8E3 -> 'L 'y 'o 'c 'h B8E4 -> 'L 'y 'o 'k B8E5 -> 'L 'y 'o 't B8E6 -> 'L 'y 'o 'p B8E7 -> 'L 'y 'o 'h B8E8 -> 'L 'u B8E9 -> 'L 'u 'g B8EA -> 'L 'u 'g 'g B8EB -> 'L 'u 'g 's B8EC -> 'L 'u 'n B8ED -> 'L 'u 'n 'j B8EE -> 'L 'u 'n 'h B8EF -> 'L 'u 'd B8F0 -> 'L 'u 'l B8F1 -> 'L 'u 'l 'g B8F2 -> 'L 'u 'l 'm B8F3 -> 'L 'u 'l 'b B8F4 -> 'L 'u 'l 's B8F5 -> 'L 'u 'l 't B8F6 -> 'L 'u 'l 'p B8F7 -> 'L 'u 'l 'h B8F8 -> 'L 'u 'm B8F9 -> 'L 'u 'b B8FA -> 'L 'u 'b 's B8FB -> 'L 'u 's B8FC -> 'L 'u 's 's B8FD -> 'L 'u 'n 'g B8FE -> 'L 'u 'j B8FF -> 'L 'u 'c 'h B900 -> 'L 'u 'k B901 -> 'L 'u 't B902 -> 'L 'u 'p B903 -> 'L 'u 'h B904 -> 'L 'u 'e 'o B905 -> 'L 'u 'e 'o 'g B906 -> 'L 'u 'e 'o 'g 'g B907 -> 'L 'u 'e 'o 'g 's B908 -> 'L 'u 'e 'o 'n B909 -> 'L 'u 'e 'o 'n 'j B90A -> 'L 'u 'e 'o 'n 'h B90B -> 'L 'u 'e 'o 'd B90C -> 'L 'u 'e 'o 'l B90D -> 'L 'u 'e 'o 'l 'g B90E -> 'L 'u 'e 'o 'l 'm B90F -> 'L 'u 'e 'o 'l 'b B910 -> 'L 'u 'e 'o 'l 's B911 -> 'L 'u 'e 'o 'l 't B912 -> 'L 'u 'e 'o 'l 'p B913 -> 'L 'u 'e 'o 'l 'h B914 -> 'L 'u 'e 'o 'm B915 -> 'L 'u 'e 'o 'b B916 -> 'L 'u 'e 'o 'b 's B917 -> 'L 'u 'e 'o 's B918 -> 'L 'u 'e 'o 's 's B919 -> 'L 'u 'e 'o 'n 'g B91A -> 'L 'u 'e 'o 'j B91B -> 'L 'u 'e 'o 'c 'h B91C -> 'L 'u 'e 'o 'k B91D -> 'L 'u 'e 'o 't B91E -> 'L 'u 'e 'o 'p B91F -> 'L 'u 'e 'o 'h B920 -> 'L 'u 'e B921 -> 'L 'u 'e 'g B922 -> 'L 'u 'e 'g 'g B923 -> 'L 'u 'e 'g 's B924 -> 'L 'u 'e 'n B925 -> 'L 'u 'e 'n 'j B926 -> 'L 'u 'e 'n 'h B927 -> 'L 'u 'e 'd B928 -> 'L 'u 'e 'l B929 -> 'L 'u 'e 'l 'g B92A -> 'L 'u 'e 'l 'm B92B -> 'L 'u 'e 'l 'b B92C -> 'L 'u 'e 'l 's B92D -> 'L 'u 'e 'l 't B92E -> 'L 'u 'e 'l 'p B92F -> 'L 'u 'e 'l 'h B930 -> 'L 'u 'e 'm B931 -> 'L 'u 'e 'b B932 -> 'L 'u 'e 'b 's B933 -> 'L 'u 'e 's B934 -> 'L 'u 'e 's 's B935 -> 'L 'u 'e 'n 'g B936 -> 'L 'u 'e 'j B937 -> 'L 'u 'e 'c 'h B938 -> 'L 'u 'e 'k B939 -> 'L 'u 'e 't B93A -> 'L 'u 'e 'p B93B -> 'L 'u 'e 'h B93C -> 'L 'u 'i B93D -> 'L 'u 'i 'g B93E -> 'L 'u 'i 'g 'g B93F -> 'L 'u 'i 'g 's B940 -> 'L 'u 'i 'n B941 -> 'L 'u 'i 'n 'j B942 -> 'L 'u 'i 'n 'h B943 -> 'L 'u 'i 'd B944 -> 'L 'u 'i 'l B945 -> 'L 'u 'i 'l 'g B946 -> 'L 'u 'i 'l 'm B947 -> 'L 'u 'i 'l 'b B948 -> 'L 'u 'i 'l 's B949 -> 'L 'u 'i 'l 't B94A -> 'L 'u 'i 'l 'p B94B -> 'L 'u 'i 'l 'h B94C -> 'L 'u 'i 'm B94D -> 'L 'u 'i 'b B94E -> 'L 'u 'i 'b 's B94F -> 'L 'u 'i 's B950 -> 'L 'u 'i 's 's B951 -> 'L 'u 'i 'n 'g B952 -> 'L 'u 'i 'j B953 -> 'L 'u 'i 'c 'h B954 -> 'L 'u 'i 'k B955 -> 'L 'u 'i 't B956 -> 'L 'u 'i 'p B957 -> 'L 'u 'i 'h B958 -> 'L 'y 'u B959 -> 'L 'y 'u 'g B95A -> 'L 'y 'u 'g 'g B95B -> 'L 'y 'u 'g 's B95C -> 'L 'y 'u 'n B95D -> 'L 'y 'u 'n 'j B95E -> 'L 'y 'u 'n 'h B95F -> 'L 'y 'u 'd B960 -> 'L 'y 'u 'l B961 -> 'L 'y 'u 'l 'g B962 -> 'L 'y 'u 'l 'm B963 -> 'L 'y 'u 'l 'b B964 -> 'L 'y 'u 'l 's B965 -> 'L 'y 'u 'l 't B966 -> 'L 'y 'u 'l 'p B967 -> 'L 'y 'u 'l 'h B968 -> 'L 'y 'u 'm B969 -> 'L 'y 'u 'b B96A -> 'L 'y 'u 'b 's B96B -> 'L 'y 'u 's B96C -> 'L 'y 'u 's 's B96D -> 'L 'y 'u 'n 'g B96E -> 'L 'y 'u 'j B96F -> 'L 'y 'u 'c 'h B970 -> 'L 'y 'u 'k B971 -> 'L 'y 'u 't B972 -> 'L 'y 'u 'p B973 -> 'L 'y 'u 'h B974 -> 'L 'e 'u B975 -> 'L 'e 'u 'g B976 -> 'L 'e 'u 'g 'g B977 -> 'L 'e 'u 'g 's B978 -> 'L 'e 'u 'n B979 -> 'L 'e 'u 'n 'j B97A -> 'L 'e 'u 'n 'h B97B -> 'L 'e 'u 'd B97C -> 'L 'e 'u 'l B97D -> 'L 'e 'u 'l 'g B97E -> 'L 'e 'u 'l 'm B97F -> 'L 'e 'u 'l 'b B980 -> 'L 'e 'u 'l 's B981 -> 'L 'e 'u 'l 't B982 -> 'L 'e 'u 'l 'p B983 -> 'L 'e 'u 'l 'h B984 -> 'L 'e 'u 'm B985 -> 'L 'e 'u 'b B986 -> 'L 'e 'u 'b 's B987 -> 'L 'e 'u 's B988 -> 'L 'e 'u 's 's B989 -> 'L 'e 'u 'n 'g B98A -> 'L 'e 'u 'j B98B -> 'L 'e 'u 'c 'h B98C -> 'L 'e 'u 'k B98D -> 'L 'e 'u 't B98E -> 'L 'e 'u 'p B98F -> 'L 'e 'u 'h B990 -> 'L 'e 'u 'i B991 -> 'L 'e 'u 'i 'g B992 -> 'L 'e 'u 'i 'g 'g B993 -> 'L 'e 'u 'i 'g 's B994 -> 'L 'e 'u 'i 'n B995 -> 'L 'e 'u 'i 'n 'j B996 -> 'L 'e 'u 'i 'n 'h B997 -> 'L 'e 'u 'i 'd B998 -> 'L 'e 'u 'i 'l B999 -> 'L 'e 'u 'i 'l 'g B99A -> 'L 'e 'u 'i 'l 'm B99B -> 'L 'e 'u 'i 'l 'b B99C -> 'L 'e 'u 'i 'l 's B99D -> 'L 'e 'u 'i 'l 't B99E -> 'L 'e 'u 'i 'l 'p B99F -> 'L 'e 'u 'i 'l 'h B9A0 -> 'L 'e 'u 'i 'm B9A1 -> 'L 'e 'u 'i 'b B9A2 -> 'L 'e 'u 'i 'b 's B9A3 -> 'L 'e 'u 'i 's B9A4 -> 'L 'e 'u 'i 's 's B9A5 -> 'L 'e 'u 'i 'n 'g B9A6 -> 'L 'e 'u 'i 'j B9A7 -> 'L 'e 'u 'i 'c 'h B9A8 -> 'L 'e 'u 'i 'k B9A9 -> 'L 'e 'u 'i 't B9AA -> 'L 'e 'u 'i 'p B9AB -> 'L 'e 'u 'i 'h B9AC -> 'L 'i B9AD -> 'L 'i 'g B9AE -> 'L 'i 'g 'g B9AF -> 'L 'i 'g 's B9B0 -> 'L 'i 'n B9B1 -> 'L 'i 'n 'j B9B2 -> 'L 'i 'n 'h B9B3 -> 'L 'i 'd B9B4 -> 'L 'i 'l B9B5 -> 'L 'i 'l 'g B9B6 -> 'L 'i 'l 'm B9B7 -> 'L 'i 'l 'b B9B8 -> 'L 'i 'l 's B9B9 -> 'L 'i 'l 't B9BA -> 'L 'i 'l 'p B9BB -> 'L 'i 'l 'h B9BC -> 'L 'i 'm B9BD -> 'L 'i 'b B9BE -> 'L 'i 'b 's B9BF -> 'L 'i 's B9C0 -> 'L 'i 's 's B9C1 -> 'L 'i 'n 'g B9C2 -> 'L 'i 'j B9C3 -> 'L 'i 'c 'h B9C4 -> 'L 'i 'k B9C5 -> 'L 'i 't B9C6 -> 'L 'i 'p B9C7 -> 'L 'i 'h B9C8 -> 'M 'a B9C9 -> 'M 'a 'g B9CA -> 'M 'a 'g 'g B9CB -> 'M 'a 'g 's B9CC -> 'M 'a 'n B9CD -> 'M 'a 'n 'j B9CE -> 'M 'a 'n 'h B9CF -> 'M 'a 'd B9D0 -> 'M 'a 'l B9D1 -> 'M 'a 'l 'g B9D2 -> 'M 'a 'l 'm B9D3 -> 'M 'a 'l 'b B9D4 -> 'M 'a 'l 's B9D5 -> 'M 'a 'l 't B9D6 -> 'M 'a 'l 'p B9D7 -> 'M 'a 'l 'h B9D8 -> 'M 'a 'm B9D9 -> 'M 'a 'b B9DA -> 'M 'a 'b 's B9DB -> 'M 'a 's B9DC -> 'M 'a 's 's B9DD -> 'M 'a 'n 'g B9DE -> 'M 'a 'j B9DF -> 'M 'a 'c 'h B9E0 -> 'M 'a 'k B9E1 -> 'M 'a 't B9E2 -> 'M 'a 'p B9E3 -> 'M 'a 'h B9E4 -> 'M 'a 'e B9E5 -> 'M 'a 'e 'g B9E6 -> 'M 'a 'e 'g 'g B9E7 -> 'M 'a 'e 'g 's B9E8 -> 'M 'a 'e 'n B9E9 -> 'M 'a 'e 'n 'j B9EA -> 'M 'a 'e 'n 'h B9EB -> 'M 'a 'e 'd B9EC -> 'M 'a 'e 'l B9ED -> 'M 'a 'e 'l 'g B9EE -> 'M 'a 'e 'l 'm B9EF -> 'M 'a 'e 'l 'b B9F0 -> 'M 'a 'e 'l 's B9F1 -> 'M 'a 'e 'l 't B9F2 -> 'M 'a 'e 'l 'p B9F3 -> 'M 'a 'e 'l 'h B9F4 -> 'M 'a 'e 'm B9F5 -> 'M 'a 'e 'b B9F6 -> 'M 'a 'e 'b 's B9F7 -> 'M 'a 'e 's B9F8 -> 'M 'a 'e 's 's B9F9 -> 'M 'a 'e 'n 'g B9FA -> 'M 'a 'e 'j B9FB -> 'M 'a 'e 'c 'h B9FC -> 'M 'a 'e 'k B9FD -> 'M 'a 'e 't B9FE -> 'M 'a 'e 'p B9FF -> 'M 'a 'e 'h BA00 -> 'M 'y 'a BA01 -> 'M 'y 'a 'g BA02 -> 'M 'y 'a 'g 'g BA03 -> 'M 'y 'a 'g 's BA04 -> 'M 'y 'a 'n BA05 -> 'M 'y 'a 'n 'j BA06 -> 'M 'y 'a 'n 'h BA07 -> 'M 'y 'a 'd BA08 -> 'M 'y 'a 'l BA09 -> 'M 'y 'a 'l 'g BA0A -> 'M 'y 'a 'l 'm BA0B -> 'M 'y 'a 'l 'b BA0C -> 'M 'y 'a 'l 's BA0D -> 'M 'y 'a 'l 't BA0E -> 'M 'y 'a 'l 'p BA0F -> 'M 'y 'a 'l 'h BA10 -> 'M 'y 'a 'm BA11 -> 'M 'y 'a 'b BA12 -> 'M 'y 'a 'b 's BA13 -> 'M 'y 'a 's BA14 -> 'M 'y 'a 's 's BA15 -> 'M 'y 'a 'n 'g BA16 -> 'M 'y 'a 'j BA17 -> 'M 'y 'a 'c 'h BA18 -> 'M 'y 'a 'k BA19 -> 'M 'y 'a 't BA1A -> 'M 'y 'a 'p BA1B -> 'M 'y 'a 'h BA1C -> 'M 'y 'a 'e BA1D -> 'M 'y 'a 'e 'g BA1E -> 'M 'y 'a 'e 'g 'g BA1F -> 'M 'y 'a 'e 'g 's BA20 -> 'M 'y 'a 'e 'n BA21 -> 'M 'y 'a 'e 'n 'j BA22 -> 'M 'y 'a 'e 'n 'h BA23 -> 'M 'y 'a 'e 'd BA24 -> 'M 'y 'a 'e 'l BA25 -> 'M 'y 'a 'e 'l 'g BA26 -> 'M 'y 'a 'e 'l 'm BA27 -> 'M 'y 'a 'e 'l 'b BA28 -> 'M 'y 'a 'e 'l 's BA29 -> 'M 'y 'a 'e 'l 't BA2A -> 'M 'y 'a 'e 'l 'p BA2B -> 'M 'y 'a 'e 'l 'h BA2C -> 'M 'y 'a 'e 'm BA2D -> 'M 'y 'a 'e 'b BA2E -> 'M 'y 'a 'e 'b 's BA2F -> 'M 'y 'a 'e 's BA30 -> 'M 'y 'a 'e 's 's BA31 -> 'M 'y 'a 'e 'n 'g BA32 -> 'M 'y 'a 'e 'j BA33 -> 'M 'y 'a 'e 'c 'h BA34 -> 'M 'y 'a 'e 'k BA35 -> 'M 'y 'a 'e 't BA36 -> 'M 'y 'a 'e 'p BA37 -> 'M 'y 'a 'e 'h BA38 -> 'M 'e 'o BA39 -> 'M 'e 'o 'g BA3A -> 'M 'e 'o 'g 'g BA3B -> 'M 'e 'o 'g 's BA3C -> 'M 'e 'o 'n BA3D -> 'M 'e 'o 'n 'j BA3E -> 'M 'e 'o 'n 'h BA3F -> 'M 'e 'o 'd BA40 -> 'M 'e 'o 'l BA41 -> 'M 'e 'o 'l 'g BA42 -> 'M 'e 'o 'l 'm BA43 -> 'M 'e 'o 'l 'b BA44 -> 'M 'e 'o 'l 's BA45 -> 'M 'e 'o 'l 't BA46 -> 'M 'e 'o 'l 'p BA47 -> 'M 'e 'o 'l 'h BA48 -> 'M 'e 'o 'm BA49 -> 'M 'e 'o 'b BA4A -> 'M 'e 'o 'b 's BA4B -> 'M 'e 'o 's BA4C -> 'M 'e 'o 's 's BA4D -> 'M 'e 'o 'n 'g BA4E -> 'M 'e 'o 'j BA4F -> 'M 'e 'o 'c 'h BA50 -> 'M 'e 'o 'k BA51 -> 'M 'e 'o 't BA52 -> 'M 'e 'o 'p BA53 -> 'M 'e 'o 'h BA54 -> 'M 'e BA55 -> 'M 'e 'g BA56 -> 'M 'e 'g 'g BA57 -> 'M 'e 'g 's BA58 -> 'M 'e 'n BA59 -> 'M 'e 'n 'j BA5A -> 'M 'e 'n 'h BA5B -> 'M 'e 'd BA5C -> 'M 'e 'l BA5D -> 'M 'e 'l 'g BA5E -> 'M 'e 'l 'm BA5F -> 'M 'e 'l 'b BA60 -> 'M 'e 'l 's BA61 -> 'M 'e 'l 't BA62 -> 'M 'e 'l 'p BA63 -> 'M 'e 'l 'h BA64 -> 'M 'e 'm BA65 -> 'M 'e 'b BA66 -> 'M 'e 'b 's BA67 -> 'M 'e 's BA68 -> 'M 'e 's 's BA69 -> 'M 'e 'n 'g BA6A -> 'M 'e 'j BA6B -> 'M 'e 'c 'h BA6C -> 'M 'e 'k BA6D -> 'M 'e 't BA6E -> 'M 'e 'p BA6F -> 'M 'e 'h BA70 -> 'M 'y 'e 'o BA71 -> 'M 'y 'e 'o 'g BA72 -> 'M 'y 'e 'o 'g 'g BA73 -> 'M 'y 'e 'o 'g 's BA74 -> 'M 'y 'e 'o 'n BA75 -> 'M 'y 'e 'o 'n 'j BA76 -> 'M 'y 'e 'o 'n 'h BA77 -> 'M 'y 'e 'o 'd BA78 -> 'M 'y 'e 'o 'l BA79 -> 'M 'y 'e 'o 'l 'g BA7A -> 'M 'y 'e 'o 'l 'm BA7B -> 'M 'y 'e 'o 'l 'b BA7C -> 'M 'y 'e 'o 'l 's BA7D -> 'M 'y 'e 'o 'l 't BA7E -> 'M 'y 'e 'o 'l 'p BA7F -> 'M 'y 'e 'o 'l 'h BA80 -> 'M 'y 'e 'o 'm BA81 -> 'M 'y 'e 'o 'b BA82 -> 'M 'y 'e 'o 'b 's BA83 -> 'M 'y 'e 'o 's BA84 -> 'M 'y 'e 'o 's 's BA85 -> 'M 'y 'e 'o 'n 'g BA86 -> 'M 'y 'e 'o 'j BA87 -> 'M 'y 'e 'o 'c 'h BA88 -> 'M 'y 'e 'o 'k BA89 -> 'M 'y 'e 'o 't BA8A -> 'M 'y 'e 'o 'p BA8B -> 'M 'y 'e 'o 'h BA8C -> 'M 'y 'e BA8D -> 'M 'y 'e 'g BA8E -> 'M 'y 'e 'g 'g BA8F -> 'M 'y 'e 'g 's BA90 -> 'M 'y 'e 'n BA91 -> 'M 'y 'e 'n 'j BA92 -> 'M 'y 'e 'n 'h BA93 -> 'M 'y 'e 'd BA94 -> 'M 'y 'e 'l BA95 -> 'M 'y 'e 'l 'g BA96 -> 'M 'y 'e 'l 'm BA97 -> 'M 'y 'e 'l 'b BA98 -> 'M 'y 'e 'l 's BA99 -> 'M 'y 'e 'l 't BA9A -> 'M 'y 'e 'l 'p BA9B -> 'M 'y 'e 'l 'h BA9C -> 'M 'y 'e 'm BA9D -> 'M 'y 'e 'b BA9E -> 'M 'y 'e 'b 's BA9F -> 'M 'y 'e 's BAA0 -> 'M 'y 'e 's 's BAA1 -> 'M 'y 'e 'n 'g BAA2 -> 'M 'y 'e 'j BAA3 -> 'M 'y 'e 'c 'h BAA4 -> 'M 'y 'e 'k BAA5 -> 'M 'y 'e 't BAA6 -> 'M 'y 'e 'p BAA7 -> 'M 'y 'e 'h BAA8 -> 'M 'o BAA9 -> 'M 'o 'g BAAA -> 'M 'o 'g 'g BAAB -> 'M 'o 'g 's BAAC -> 'M 'o 'n BAAD -> 'M 'o 'n 'j BAAE -> 'M 'o 'n 'h BAAF -> 'M 'o 'd BAB0 -> 'M 'o 'l BAB1 -> 'M 'o 'l 'g BAB2 -> 'M 'o 'l 'm BAB3 -> 'M 'o 'l 'b BAB4 -> 'M 'o 'l 's BAB5 -> 'M 'o 'l 't BAB6 -> 'M 'o 'l 'p BAB7 -> 'M 'o 'l 'h BAB8 -> 'M 'o 'm BAB9 -> 'M 'o 'b BABA -> 'M 'o 'b 's BABB -> 'M 'o 's BABC -> 'M 'o 's 's BABD -> 'M 'o 'n 'g BABE -> 'M 'o 'j BABF -> 'M 'o 'c 'h BAC0 -> 'M 'o 'k BAC1 -> 'M 'o 't BAC2 -> 'M 'o 'p BAC3 -> 'M 'o 'h BAC4 -> 'M 'o 'a BAC5 -> 'M 'o 'a 'g BAC6 -> 'M 'o 'a 'g 'g BAC7 -> 'M 'o 'a 'g 's BAC8 -> 'M 'o 'a 'n BAC9 -> 'M 'o 'a 'n 'j BACA -> 'M 'o 'a 'n 'h BACB -> 'M 'o 'a 'd BACC -> 'M 'o 'a 'l BACD -> 'M 'o 'a 'l 'g BACE -> 'M 'o 'a 'l 'm BACF -> 'M 'o 'a 'l 'b BAD0 -> 'M 'o 'a 'l 's BAD1 -> 'M 'o 'a 'l 't BAD2 -> 'M 'o 'a 'l 'p BAD3 -> 'M 'o 'a 'l 'h BAD4 -> 'M 'o 'a 'm BAD5 -> 'M 'o 'a 'b BAD6 -> 'M 'o 'a 'b 's BAD7 -> 'M 'o 'a 's BAD8 -> 'M 'o 'a 's 's BAD9 -> 'M 'o 'a 'n 'g BADA -> 'M 'o 'a 'j BADB -> 'M 'o 'a 'c 'h BADC -> 'M 'o 'a 'k BADD -> 'M 'o 'a 't BADE -> 'M 'o 'a 'p BADF -> 'M 'o 'a 'h BAE0 -> 'M 'o 'a 'e BAE1 -> 'M 'o 'a 'e 'g BAE2 -> 'M 'o 'a 'e 'g 'g BAE3 -> 'M 'o 'a 'e 'g 's BAE4 -> 'M 'o 'a 'e 'n BAE5 -> 'M 'o 'a 'e 'n 'j BAE6 -> 'M 'o 'a 'e 'n 'h BAE7 -> 'M 'o 'a 'e 'd BAE8 -> 'M 'o 'a 'e 'l BAE9 -> 'M 'o 'a 'e 'l 'g BAEA -> 'M 'o 'a 'e 'l 'm BAEB -> 'M 'o 'a 'e 'l 'b BAEC -> 'M 'o 'a 'e 'l 's BAED -> 'M 'o 'a 'e 'l 't BAEE -> 'M 'o 'a 'e 'l 'p BAEF -> 'M 'o 'a 'e 'l 'h BAF0 -> 'M 'o 'a 'e 'm BAF1 -> 'M 'o 'a 'e 'b BAF2 -> 'M 'o 'a 'e 'b 's BAF3 -> 'M 'o 'a 'e 's BAF4 -> 'M 'o 'a 'e 's 's BAF5 -> 'M 'o 'a 'e 'n 'g BAF6 -> 'M 'o 'a 'e 'j BAF7 -> 'M 'o 'a 'e 'c 'h BAF8 -> 'M 'o 'a 'e 'k BAF9 -> 'M 'o 'a 'e 't BAFA -> 'M 'o 'a 'e 'p BAFB -> 'M 'o 'a 'e 'h BAFC -> 'M 'o 'i BAFD -> 'M 'o 'i 'g BAFE -> 'M 'o 'i 'g 'g BAFF -> 'M 'o 'i 'g 's BB00 -> 'M 'o 'i 'n BB01 -> 'M 'o 'i 'n 'j BB02 -> 'M 'o 'i 'n 'h BB03 -> 'M 'o 'i 'd BB04 -> 'M 'o 'i 'l BB05 -> 'M 'o 'i 'l 'g BB06 -> 'M 'o 'i 'l 'm BB07 -> 'M 'o 'i 'l 'b BB08 -> 'M 'o 'i 'l 's BB09 -> 'M 'o 'i 'l 't BB0A -> 'M 'o 'i 'l 'p BB0B -> 'M 'o 'i 'l 'h BB0C -> 'M 'o 'i 'm BB0D -> 'M 'o 'i 'b BB0E -> 'M 'o 'i 'b 's BB0F -> 'M 'o 'i 's BB10 -> 'M 'o 'i 's 's BB11 -> 'M 'o 'i 'n 'g BB12 -> 'M 'o 'i 'j BB13 -> 'M 'o 'i 'c 'h BB14 -> 'M 'o 'i 'k BB15 -> 'M 'o 'i 't BB16 -> 'M 'o 'i 'p BB17 -> 'M 'o 'i 'h BB18 -> 'M 'y 'o BB19 -> 'M 'y 'o 'g BB1A -> 'M 'y 'o 'g 'g BB1B -> 'M 'y 'o 'g 's BB1C -> 'M 'y 'o 'n BB1D -> 'M 'y 'o 'n 'j BB1E -> 'M 'y 'o 'n 'h BB1F -> 'M 'y 'o 'd BB20 -> 'M 'y 'o 'l BB21 -> 'M 'y 'o 'l 'g BB22 -> 'M 'y 'o 'l 'm BB23 -> 'M 'y 'o 'l 'b BB24 -> 'M 'y 'o 'l 's BB25 -> 'M 'y 'o 'l 't BB26 -> 'M 'y 'o 'l 'p BB27 -> 'M 'y 'o 'l 'h BB28 -> 'M 'y 'o 'm BB29 -> 'M 'y 'o 'b BB2A -> 'M 'y 'o 'b 's BB2B -> 'M 'y 'o 's BB2C -> 'M 'y 'o 's 's BB2D -> 'M 'y 'o 'n 'g BB2E -> 'M 'y 'o 'j BB2F -> 'M 'y 'o 'c 'h BB30 -> 'M 'y 'o 'k BB31 -> 'M 'y 'o 't BB32 -> 'M 'y 'o 'p BB33 -> 'M 'y 'o 'h BB34 -> 'M 'u BB35 -> 'M 'u 'g BB36 -> 'M 'u 'g 'g BB37 -> 'M 'u 'g 's BB38 -> 'M 'u 'n BB39 -> 'M 'u 'n 'j BB3A -> 'M 'u 'n 'h BB3B -> 'M 'u 'd BB3C -> 'M 'u 'l BB3D -> 'M 'u 'l 'g BB3E -> 'M 'u 'l 'm BB3F -> 'M 'u 'l 'b BB40 -> 'M 'u 'l 's BB41 -> 'M 'u 'l 't BB42 -> 'M 'u 'l 'p BB43 -> 'M 'u 'l 'h BB44 -> 'M 'u 'm BB45 -> 'M 'u 'b BB46 -> 'M 'u 'b 's BB47 -> 'M 'u 's BB48 -> 'M 'u 's 's BB49 -> 'M 'u 'n 'g BB4A -> 'M 'u 'j BB4B -> 'M 'u 'c 'h BB4C -> 'M 'u 'k BB4D -> 'M 'u 't BB4E -> 'M 'u 'p BB4F -> 'M 'u 'h BB50 -> 'M 'u 'e 'o BB51 -> 'M 'u 'e 'o 'g BB52 -> 'M 'u 'e 'o 'g 'g BB53 -> 'M 'u 'e 'o 'g 's BB54 -> 'M 'u 'e 'o 'n BB55 -> 'M 'u 'e 'o 'n 'j BB56 -> 'M 'u 'e 'o 'n 'h BB57 -> 'M 'u 'e 'o 'd BB58 -> 'M 'u 'e 'o 'l BB59 -> 'M 'u 'e 'o 'l 'g BB5A -> 'M 'u 'e 'o 'l 'm BB5B -> 'M 'u 'e 'o 'l 'b BB5C -> 'M 'u 'e 'o 'l 's BB5D -> 'M 'u 'e 'o 'l 't BB5E -> 'M 'u 'e 'o 'l 'p BB5F -> 'M 'u 'e 'o 'l 'h BB60 -> 'M 'u 'e 'o 'm BB61 -> 'M 'u 'e 'o 'b BB62 -> 'M 'u 'e 'o 'b 's BB63 -> 'M 'u 'e 'o 's BB64 -> 'M 'u 'e 'o 's 's BB65 -> 'M 'u 'e 'o 'n 'g BB66 -> 'M 'u 'e 'o 'j BB67 -> 'M 'u 'e 'o 'c 'h BB68 -> 'M 'u 'e 'o 'k BB69 -> 'M 'u 'e 'o 't BB6A -> 'M 'u 'e 'o 'p BB6B -> 'M 'u 'e 'o 'h BB6C -> 'M 'u 'e BB6D -> 'M 'u 'e 'g BB6E -> 'M 'u 'e 'g 'g BB6F -> 'M 'u 'e 'g 's BB70 -> 'M 'u 'e 'n BB71 -> 'M 'u 'e 'n 'j BB72 -> 'M 'u 'e 'n 'h BB73 -> 'M 'u 'e 'd BB74 -> 'M 'u 'e 'l BB75 -> 'M 'u 'e 'l 'g BB76 -> 'M 'u 'e 'l 'm BB77 -> 'M 'u 'e 'l 'b BB78 -> 'M 'u 'e 'l 's BB79 -> 'M 'u 'e 'l 't BB7A -> 'M 'u 'e 'l 'p BB7B -> 'M 'u 'e 'l 'h BB7C -> 'M 'u 'e 'm BB7D -> 'M 'u 'e 'b BB7E -> 'M 'u 'e 'b 's BB7F -> 'M 'u 'e 's BB80 -> 'M 'u 'e 's 's BB81 -> 'M 'u 'e 'n 'g BB82 -> 'M 'u 'e 'j BB83 -> 'M 'u 'e 'c 'h BB84 -> 'M 'u 'e 'k BB85 -> 'M 'u 'e 't BB86 -> 'M 'u 'e 'p BB87 -> 'M 'u 'e 'h BB88 -> 'M 'u 'i BB89 -> 'M 'u 'i 'g BB8A -> 'M 'u 'i 'g 'g BB8B -> 'M 'u 'i 'g 's BB8C -> 'M 'u 'i 'n BB8D -> 'M 'u 'i 'n 'j BB8E -> 'M 'u 'i 'n 'h BB8F -> 'M 'u 'i 'd BB90 -> 'M 'u 'i 'l BB91 -> 'M 'u 'i 'l 'g BB92 -> 'M 'u 'i 'l 'm BB93 -> 'M 'u 'i 'l 'b BB94 -> 'M 'u 'i 'l 's BB95 -> 'M 'u 'i 'l 't BB96 -> 'M 'u 'i 'l 'p BB97 -> 'M 'u 'i 'l 'h BB98 -> 'M 'u 'i 'm BB99 -> 'M 'u 'i 'b BB9A -> 'M 'u 'i 'b 's BB9B -> 'M 'u 'i 's BB9C -> 'M 'u 'i 's 's BB9D -> 'M 'u 'i 'n 'g BB9E -> 'M 'u 'i 'j BB9F -> 'M 'u 'i 'c 'h BBA0 -> 'M 'u 'i 'k BBA1 -> 'M 'u 'i 't BBA2 -> 'M 'u 'i 'p BBA3 -> 'M 'u 'i 'h BBA4 -> 'M 'y 'u BBA5 -> 'M 'y 'u 'g BBA6 -> 'M 'y 'u 'g 'g BBA7 -> 'M 'y 'u 'g 's BBA8 -> 'M 'y 'u 'n BBA9 -> 'M 'y 'u 'n 'j BBAA -> 'M 'y 'u 'n 'h BBAB -> 'M 'y 'u 'd BBAC -> 'M 'y 'u 'l BBAD -> 'M 'y 'u 'l 'g BBAE -> 'M 'y 'u 'l 'm BBAF -> 'M 'y 'u 'l 'b BBB0 -> 'M 'y 'u 'l 's BBB1 -> 'M 'y 'u 'l 't BBB2 -> 'M 'y 'u 'l 'p BBB3 -> 'M 'y 'u 'l 'h BBB4 -> 'M 'y 'u 'm BBB5 -> 'M 'y 'u 'b BBB6 -> 'M 'y 'u 'b 's BBB7 -> 'M 'y 'u 's BBB8 -> 'M 'y 'u 's 's BBB9 -> 'M 'y 'u 'n 'g BBBA -> 'M 'y 'u 'j BBBB -> 'M 'y 'u 'c 'h BBBC -> 'M 'y 'u 'k BBBD -> 'M 'y 'u 't BBBE -> 'M 'y 'u 'p BBBF -> 'M 'y 'u 'h BBC0 -> 'M 'e 'u BBC1 -> 'M 'e 'u 'g BBC2 -> 'M 'e 'u 'g 'g BBC3 -> 'M 'e 'u 'g 's BBC4 -> 'M 'e 'u 'n BBC5 -> 'M 'e 'u 'n 'j BBC6 -> 'M 'e 'u 'n 'h BBC7 -> 'M 'e 'u 'd BBC8 -> 'M 'e 'u 'l BBC9 -> 'M 'e 'u 'l 'g BBCA -> 'M 'e 'u 'l 'm BBCB -> 'M 'e 'u 'l 'b BBCC -> 'M 'e 'u 'l 's BBCD -> 'M 'e 'u 'l 't BBCE -> 'M 'e 'u 'l 'p BBCF -> 'M 'e 'u 'l 'h BBD0 -> 'M 'e 'u 'm BBD1 -> 'M 'e 'u 'b BBD2 -> 'M 'e 'u 'b 's BBD3 -> 'M 'e 'u 's BBD4 -> 'M 'e 'u 's 's BBD5 -> 'M 'e 'u 'n 'g BBD6 -> 'M 'e 'u 'j BBD7 -> 'M 'e 'u 'c 'h BBD8 -> 'M 'e 'u 'k BBD9 -> 'M 'e 'u 't BBDA -> 'M 'e 'u 'p BBDB -> 'M 'e 'u 'h BBDC -> 'M 'e 'u 'i BBDD -> 'M 'e 'u 'i 'g BBDE -> 'M 'e 'u 'i 'g 'g BBDF -> 'M 'e 'u 'i 'g 's BBE0 -> 'M 'e 'u 'i 'n BBE1 -> 'M 'e 'u 'i 'n 'j BBE2 -> 'M 'e 'u 'i 'n 'h BBE3 -> 'M 'e 'u 'i 'd BBE4 -> 'M 'e 'u 'i 'l BBE5 -> 'M 'e 'u 'i 'l 'g BBE6 -> 'M 'e 'u 'i 'l 'm BBE7 -> 'M 'e 'u 'i 'l 'b BBE8 -> 'M 'e 'u 'i 'l 's BBE9 -> 'M 'e 'u 'i 'l 't BBEA -> 'M 'e 'u 'i 'l 'p BBEB -> 'M 'e 'u 'i 'l 'h BBEC -> 'M 'e 'u 'i 'm BBED -> 'M 'e 'u 'i 'b BBEE -> 'M 'e 'u 'i 'b 's BBEF -> 'M 'e 'u 'i 's BBF0 -> 'M 'e 'u 'i 's 's BBF1 -> 'M 'e 'u 'i 'n 'g BBF2 -> 'M 'e 'u 'i 'j BBF3 -> 'M 'e 'u 'i 'c 'h BBF4 -> 'M 'e 'u 'i 'k BBF5 -> 'M 'e 'u 'i 't BBF6 -> 'M 'e 'u 'i 'p BBF7 -> 'M 'e 'u 'i 'h BBF8 -> 'M 'i BBF9 -> 'M 'i 'g BBFA -> 'M 'i 'g 'g BBFB -> 'M 'i 'g 's BBFC -> 'M 'i 'n BBFD -> 'M 'i 'n 'j BBFE -> 'M 'i 'n 'h BBFF -> 'M 'i 'd BC00 -> 'M 'i 'l BC01 -> 'M 'i 'l 'g BC02 -> 'M 'i 'l 'm BC03 -> 'M 'i 'l 'b BC04 -> 'M 'i 'l 's BC05 -> 'M 'i 'l 't BC06 -> 'M 'i 'l 'p BC07 -> 'M 'i 'l 'h BC08 -> 'M 'i 'm BC09 -> 'M 'i 'b BC0A -> 'M 'i 'b 's BC0B -> 'M 'i 's BC0C -> 'M 'i 's 's BC0D -> 'M 'i 'n 'g BC0E -> 'M 'i 'j BC0F -> 'M 'i 'c 'h BC10 -> 'M 'i 'k BC11 -> 'M 'i 't BC12 -> 'M 'i 'p BC13 -> 'M 'i 'h BC14 -> 'B 'a BC15 -> 'B 'a 'g BC16 -> 'B 'a 'g 'g BC17 -> 'B 'a 'g 's BC18 -> 'B 'a 'n BC19 -> 'B 'a 'n 'j BC1A -> 'B 'a 'n 'h BC1B -> 'B 'a 'd BC1C -> 'B 'a 'l BC1D -> 'B 'a 'l 'g BC1E -> 'B 'a 'l 'm BC1F -> 'B 'a 'l 'b BC20 -> 'B 'a 'l 's BC21 -> 'B 'a 'l 't BC22 -> 'B 'a 'l 'p BC23 -> 'B 'a 'l 'h BC24 -> 'B 'a 'm BC25 -> 'B 'a 'b BC26 -> 'B 'a 'b 's BC27 -> 'B 'a 's BC28 -> 'B 'a 's 's BC29 -> 'B 'a 'n 'g BC2A -> 'B 'a 'j BC2B -> 'B 'a 'c 'h BC2C -> 'B 'a 'k BC2D -> 'B 'a 't BC2E -> 'B 'a 'p BC2F -> 'B 'a 'h BC30 -> 'B 'a 'e BC31 -> 'B 'a 'e 'g BC32 -> 'B 'a 'e 'g 'g BC33 -> 'B 'a 'e 'g 's BC34 -> 'B 'a 'e 'n BC35 -> 'B 'a 'e 'n 'j BC36 -> 'B 'a 'e 'n 'h BC37 -> 'B 'a 'e 'd BC38 -> 'B 'a 'e 'l BC39 -> 'B 'a 'e 'l 'g BC3A -> 'B 'a 'e 'l 'm BC3B -> 'B 'a 'e 'l 'b BC3C -> 'B 'a 'e 'l 's BC3D -> 'B 'a 'e 'l 't BC3E -> 'B 'a 'e 'l 'p BC3F -> 'B 'a 'e 'l 'h BC40 -> 'B 'a 'e 'm BC41 -> 'B 'a 'e 'b BC42 -> 'B 'a 'e 'b 's BC43 -> 'B 'a 'e 's BC44 -> 'B 'a 'e 's 's BC45 -> 'B 'a 'e 'n 'g BC46 -> 'B 'a 'e 'j BC47 -> 'B 'a 'e 'c 'h BC48 -> 'B 'a 'e 'k BC49 -> 'B 'a 'e 't BC4A -> 'B 'a 'e 'p BC4B -> 'B 'a 'e 'h BC4C -> 'B 'y 'a BC4D -> 'B 'y 'a 'g BC4E -> 'B 'y 'a 'g 'g BC4F -> 'B 'y 'a 'g 's BC50 -> 'B 'y 'a 'n BC51 -> 'B 'y 'a 'n 'j BC52 -> 'B 'y 'a 'n 'h BC53 -> 'B 'y 'a 'd BC54 -> 'B 'y 'a 'l BC55 -> 'B 'y 'a 'l 'g BC56 -> 'B 'y 'a 'l 'm BC57 -> 'B 'y 'a 'l 'b BC58 -> 'B 'y 'a 'l 's BC59 -> 'B 'y 'a 'l 't BC5A -> 'B 'y 'a 'l 'p BC5B -> 'B 'y 'a 'l 'h BC5C -> 'B 'y 'a 'm BC5D -> 'B 'y 'a 'b BC5E -> 'B 'y 'a 'b 's BC5F -> 'B 'y 'a 's BC60 -> 'B 'y 'a 's 's BC61 -> 'B 'y 'a 'n 'g BC62 -> 'B 'y 'a 'j BC63 -> 'B 'y 'a 'c 'h BC64 -> 'B 'y 'a 'k BC65 -> 'B 'y 'a 't BC66 -> 'B 'y 'a 'p BC67 -> 'B 'y 'a 'h BC68 -> 'B 'y 'a 'e BC69 -> 'B 'y 'a 'e 'g BC6A -> 'B 'y 'a 'e 'g 'g BC6B -> 'B 'y 'a 'e 'g 's BC6C -> 'B 'y 'a 'e 'n BC6D -> 'B 'y 'a 'e 'n 'j BC6E -> 'B 'y 'a 'e 'n 'h BC6F -> 'B 'y 'a 'e 'd BC70 -> 'B 'y 'a 'e 'l BC71 -> 'B 'y 'a 'e 'l 'g BC72 -> 'B 'y 'a 'e 'l 'm BC73 -> 'B 'y 'a 'e 'l 'b BC74 -> 'B 'y 'a 'e 'l 's BC75 -> 'B 'y 'a 'e 'l 't BC76 -> 'B 'y 'a 'e 'l 'p BC77 -> 'B 'y 'a 'e 'l 'h BC78 -> 'B 'y 'a 'e 'm BC79 -> 'B 'y 'a 'e 'b BC7A -> 'B 'y 'a 'e 'b 's BC7B -> 'B 'y 'a 'e 's BC7C -> 'B 'y 'a 'e 's 's BC7D -> 'B 'y 'a 'e 'n 'g BC7E -> 'B 'y 'a 'e 'j BC7F -> 'B 'y 'a 'e 'c 'h BC80 -> 'B 'y 'a 'e 'k BC81 -> 'B 'y 'a 'e 't BC82 -> 'B 'y 'a 'e 'p BC83 -> 'B 'y 'a 'e 'h BC84 -> 'B 'e 'o BC85 -> 'B 'e 'o 'g BC86 -> 'B 'e 'o 'g 'g BC87 -> 'B 'e 'o 'g 's BC88 -> 'B 'e 'o 'n BC89 -> 'B 'e 'o 'n 'j BC8A -> 'B 'e 'o 'n 'h BC8B -> 'B 'e 'o 'd BC8C -> 'B 'e 'o 'l BC8D -> 'B 'e 'o 'l 'g BC8E -> 'B 'e 'o 'l 'm BC8F -> 'B 'e 'o 'l 'b BC90 -> 'B 'e 'o 'l 's BC91 -> 'B 'e 'o 'l 't BC92 -> 'B 'e 'o 'l 'p BC93 -> 'B 'e 'o 'l 'h BC94 -> 'B 'e 'o 'm BC95 -> 'B 'e 'o 'b BC96 -> 'B 'e 'o 'b 's BC97 -> 'B 'e 'o 's BC98 -> 'B 'e 'o 's 's BC99 -> 'B 'e 'o 'n 'g BC9A -> 'B 'e 'o 'j BC9B -> 'B 'e 'o 'c 'h BC9C -> 'B 'e 'o 'k BC9D -> 'B 'e 'o 't BC9E -> 'B 'e 'o 'p BC9F -> 'B 'e 'o 'h BCA0 -> 'B 'e BCA1 -> 'B 'e 'g BCA2 -> 'B 'e 'g 'g BCA3 -> 'B 'e 'g 's BCA4 -> 'B 'e 'n BCA5 -> 'B 'e 'n 'j BCA6 -> 'B 'e 'n 'h BCA7 -> 'B 'e 'd BCA8 -> 'B 'e 'l BCA9 -> 'B 'e 'l 'g BCAA -> 'B 'e 'l 'm BCAB -> 'B 'e 'l 'b BCAC -> 'B 'e 'l 's BCAD -> 'B 'e 'l 't BCAE -> 'B 'e 'l 'p BCAF -> 'B 'e 'l 'h BCB0 -> 'B 'e 'm BCB1 -> 'B 'e 'b BCB2 -> 'B 'e 'b 's BCB3 -> 'B 'e 's BCB4 -> 'B 'e 's 's BCB5 -> 'B 'e 'n 'g BCB6 -> 'B 'e 'j BCB7 -> 'B 'e 'c 'h BCB8 -> 'B 'e 'k BCB9 -> 'B 'e 't BCBA -> 'B 'e 'p BCBB -> 'B 'e 'h BCBC -> 'B 'y 'e 'o BCBD -> 'B 'y 'e 'o 'g BCBE -> 'B 'y 'e 'o 'g 'g BCBF -> 'B 'y 'e 'o 'g 's BCC0 -> 'B 'y 'e 'o 'n BCC1 -> 'B 'y 'e 'o 'n 'j BCC2 -> 'B 'y 'e 'o 'n 'h BCC3 -> 'B 'y 'e 'o 'd BCC4 -> 'B 'y 'e 'o 'l BCC5 -> 'B 'y 'e 'o 'l 'g BCC6 -> 'B 'y 'e 'o 'l 'm BCC7 -> 'B 'y 'e 'o 'l 'b BCC8 -> 'B 'y 'e 'o 'l 's BCC9 -> 'B 'y 'e 'o 'l 't BCCA -> 'B 'y 'e 'o 'l 'p BCCB -> 'B 'y 'e 'o 'l 'h BCCC -> 'B 'y 'e 'o 'm BCCD -> 'B 'y 'e 'o 'b BCCE -> 'B 'y 'e 'o 'b 's BCCF -> 'B 'y 'e 'o 's BCD0 -> 'B 'y 'e 'o 's 's BCD1 -> 'B 'y 'e 'o 'n 'g BCD2 -> 'B 'y 'e 'o 'j BCD3 -> 'B 'y 'e 'o 'c 'h BCD4 -> 'B 'y 'e 'o 'k BCD5 -> 'B 'y 'e 'o 't BCD6 -> 'B 'y 'e 'o 'p BCD7 -> 'B 'y 'e 'o 'h BCD8 -> 'B 'y 'e BCD9 -> 'B 'y 'e 'g BCDA -> 'B 'y 'e 'g 'g BCDB -> 'B 'y 'e 'g 's BCDC -> 'B 'y 'e 'n BCDD -> 'B 'y 'e 'n 'j BCDE -> 'B 'y 'e 'n 'h BCDF -> 'B 'y 'e 'd BCE0 -> 'B 'y 'e 'l BCE1 -> 'B 'y 'e 'l 'g BCE2 -> 'B 'y 'e 'l 'm BCE3 -> 'B 'y 'e 'l 'b BCE4 -> 'B 'y 'e 'l 's BCE5 -> 'B 'y 'e 'l 't BCE6 -> 'B 'y 'e 'l 'p BCE7 -> 'B 'y 'e 'l 'h BCE8 -> 'B 'y 'e 'm BCE9 -> 'B 'y 'e 'b BCEA -> 'B 'y 'e 'b 's BCEB -> 'B 'y 'e 's BCEC -> 'B 'y 'e 's 's BCED -> 'B 'y 'e 'n 'g BCEE -> 'B 'y 'e 'j BCEF -> 'B 'y 'e 'c 'h BCF0 -> 'B 'y 'e 'k BCF1 -> 'B 'y 'e 't BCF2 -> 'B 'y 'e 'p BCF3 -> 'B 'y 'e 'h BCF4 -> 'B 'o BCF5 -> 'B 'o 'g BCF6 -> 'B 'o 'g 'g BCF7 -> 'B 'o 'g 's BCF8 -> 'B 'o 'n BCF9 -> 'B 'o 'n 'j BCFA -> 'B 'o 'n 'h BCFB -> 'B 'o 'd BCFC -> 'B 'o 'l BCFD -> 'B 'o 'l 'g BCFE -> 'B 'o 'l 'm BCFF -> 'B 'o 'l 'b BD00 -> 'B 'o 'l 's BD01 -> 'B 'o 'l 't BD02 -> 'B 'o 'l 'p BD03 -> 'B 'o 'l 'h BD04 -> 'B 'o 'm BD05 -> 'B 'o 'b BD06 -> 'B 'o 'b 's BD07 -> 'B 'o 's BD08 -> 'B 'o 's 's BD09 -> 'B 'o 'n 'g BD0A -> 'B 'o 'j BD0B -> 'B 'o 'c 'h BD0C -> 'B 'o 'k BD0D -> 'B 'o 't BD0E -> 'B 'o 'p BD0F -> 'B 'o 'h BD10 -> 'B 'o 'a BD11 -> 'B 'o 'a 'g BD12 -> 'B 'o 'a 'g 'g BD13 -> 'B 'o 'a 'g 's BD14 -> 'B 'o 'a 'n BD15 -> 'B 'o 'a 'n 'j BD16 -> 'B 'o 'a 'n 'h BD17 -> 'B 'o 'a 'd BD18 -> 'B 'o 'a 'l BD19 -> 'B 'o 'a 'l 'g BD1A -> 'B 'o 'a 'l 'm BD1B -> 'B 'o 'a 'l 'b BD1C -> 'B 'o 'a 'l 's BD1D -> 'B 'o 'a 'l 't BD1E -> 'B 'o 'a 'l 'p BD1F -> 'B 'o 'a 'l 'h BD20 -> 'B 'o 'a 'm BD21 -> 'B 'o 'a 'b BD22 -> 'B 'o 'a 'b 's BD23 -> 'B 'o 'a 's BD24 -> 'B 'o 'a 's 's BD25 -> 'B 'o 'a 'n 'g BD26 -> 'B 'o 'a 'j BD27 -> 'B 'o 'a 'c 'h BD28 -> 'B 'o 'a 'k BD29 -> 'B 'o 'a 't BD2A -> 'B 'o 'a 'p BD2B -> 'B 'o 'a 'h BD2C -> 'B 'o 'a 'e BD2D -> 'B 'o 'a 'e 'g BD2E -> 'B 'o 'a 'e 'g 'g BD2F -> 'B 'o 'a 'e 'g 's BD30 -> 'B 'o 'a 'e 'n BD31 -> 'B 'o 'a 'e 'n 'j BD32 -> 'B 'o 'a 'e 'n 'h BD33 -> 'B 'o 'a 'e 'd BD34 -> 'B 'o 'a 'e 'l BD35 -> 'B 'o 'a 'e 'l 'g BD36 -> 'B 'o 'a 'e 'l 'm BD37 -> 'B 'o 'a 'e 'l 'b BD38 -> 'B 'o 'a 'e 'l 's BD39 -> 'B 'o 'a 'e 'l 't BD3A -> 'B 'o 'a 'e 'l 'p BD3B -> 'B 'o 'a 'e 'l 'h BD3C -> 'B 'o 'a 'e 'm BD3D -> 'B 'o 'a 'e 'b BD3E -> 'B 'o 'a 'e 'b 's BD3F -> 'B 'o 'a 'e 's BD40 -> 'B 'o 'a 'e 's 's BD41 -> 'B 'o 'a 'e 'n 'g BD42 -> 'B 'o 'a 'e 'j BD43 -> 'B 'o 'a 'e 'c 'h BD44 -> 'B 'o 'a 'e 'k BD45 -> 'B 'o 'a 'e 't BD46 -> 'B 'o 'a 'e 'p BD47 -> 'B 'o 'a 'e 'h BD48 -> 'B 'o 'i BD49 -> 'B 'o 'i 'g BD4A -> 'B 'o 'i 'g 'g BD4B -> 'B 'o 'i 'g 's BD4C -> 'B 'o 'i 'n BD4D -> 'B 'o 'i 'n 'j BD4E -> 'B 'o 'i 'n 'h BD4F -> 'B 'o 'i 'd BD50 -> 'B 'o 'i 'l BD51 -> 'B 'o 'i 'l 'g BD52 -> 'B 'o 'i 'l 'm BD53 -> 'B 'o 'i 'l 'b BD54 -> 'B 'o 'i 'l 's BD55 -> 'B 'o 'i 'l 't BD56 -> 'B 'o 'i 'l 'p BD57 -> 'B 'o 'i 'l 'h BD58 -> 'B 'o 'i 'm BD59 -> 'B 'o 'i 'b BD5A -> 'B 'o 'i 'b 's BD5B -> 'B 'o 'i 's BD5C -> 'B 'o 'i 's 's BD5D -> 'B 'o 'i 'n 'g BD5E -> 'B 'o 'i 'j BD5F -> 'B 'o 'i 'c 'h BD60 -> 'B 'o 'i 'k BD61 -> 'B 'o 'i 't BD62 -> 'B 'o 'i 'p BD63 -> 'B 'o 'i 'h BD64 -> 'B 'y 'o BD65 -> 'B 'y 'o 'g BD66 -> 'B 'y 'o 'g 'g BD67 -> 'B 'y 'o 'g 's BD68 -> 'B 'y 'o 'n BD69 -> 'B 'y 'o 'n 'j BD6A -> 'B 'y 'o 'n 'h BD6B -> 'B 'y 'o 'd BD6C -> 'B 'y 'o 'l BD6D -> 'B 'y 'o 'l 'g BD6E -> 'B 'y 'o 'l 'm BD6F -> 'B 'y 'o 'l 'b BD70 -> 'B 'y 'o 'l 's BD71 -> 'B 'y 'o 'l 't BD72 -> 'B 'y 'o 'l 'p BD73 -> 'B 'y 'o 'l 'h BD74 -> 'B 'y 'o 'm BD75 -> 'B 'y 'o 'b BD76 -> 'B 'y 'o 'b 's BD77 -> 'B 'y 'o 's BD78 -> 'B 'y 'o 's 's BD79 -> 'B 'y 'o 'n 'g BD7A -> 'B 'y 'o 'j BD7B -> 'B 'y 'o 'c 'h BD7C -> 'B 'y 'o 'k BD7D -> 'B 'y 'o 't BD7E -> 'B 'y 'o 'p BD7F -> 'B 'y 'o 'h BD80 -> 'B 'u BD81 -> 'B 'u 'g BD82 -> 'B 'u 'g 'g BD83 -> 'B 'u 'g 's BD84 -> 'B 'u 'n BD85 -> 'B 'u 'n 'j BD86 -> 'B 'u 'n 'h BD87 -> 'B 'u 'd BD88 -> 'B 'u 'l BD89 -> 'B 'u 'l 'g BD8A -> 'B 'u 'l 'm BD8B -> 'B 'u 'l 'b BD8C -> 'B 'u 'l 's BD8D -> 'B 'u 'l 't BD8E -> 'B 'u 'l 'p BD8F -> 'B 'u 'l 'h BD90 -> 'B 'u 'm BD91 -> 'B 'u 'b BD92 -> 'B 'u 'b 's BD93 -> 'B 'u 's BD94 -> 'B 'u 's 's BD95 -> 'B 'u 'n 'g BD96 -> 'B 'u 'j BD97 -> 'B 'u 'c 'h BD98 -> 'B 'u 'k BD99 -> 'B 'u 't BD9A -> 'B 'u 'p BD9B -> 'B 'u 'h BD9C -> 'B 'u 'e 'o BD9D -> 'B 'u 'e 'o 'g BD9E -> 'B 'u 'e 'o 'g 'g BD9F -> 'B 'u 'e 'o 'g 's BDA0 -> 'B 'u 'e 'o 'n BDA1 -> 'B 'u 'e 'o 'n 'j BDA2 -> 'B 'u 'e 'o 'n 'h BDA3 -> 'B 'u 'e 'o 'd BDA4 -> 'B 'u 'e 'o 'l BDA5 -> 'B 'u 'e 'o 'l 'g BDA6 -> 'B 'u 'e 'o 'l 'm BDA7 -> 'B 'u 'e 'o 'l 'b BDA8 -> 'B 'u 'e 'o 'l 's BDA9 -> 'B 'u 'e 'o 'l 't BDAA -> 'B 'u 'e 'o 'l 'p BDAB -> 'B 'u 'e 'o 'l 'h BDAC -> 'B 'u 'e 'o 'm BDAD -> 'B 'u 'e 'o 'b BDAE -> 'B 'u 'e 'o 'b 's BDAF -> 'B 'u 'e 'o 's BDB0 -> 'B 'u 'e 'o 's 's BDB1 -> 'B 'u 'e 'o 'n 'g BDB2 -> 'B 'u 'e 'o 'j BDB3 -> 'B 'u 'e 'o 'c 'h BDB4 -> 'B 'u 'e 'o 'k BDB5 -> 'B 'u 'e 'o 't BDB6 -> 'B 'u 'e 'o 'p BDB7 -> 'B 'u 'e 'o 'h BDB8 -> 'B 'u 'e BDB9 -> 'B 'u 'e 'g BDBA -> 'B 'u 'e 'g 'g BDBB -> 'B 'u 'e 'g 's BDBC -> 'B 'u 'e 'n BDBD -> 'B 'u 'e 'n 'j BDBE -> 'B 'u 'e 'n 'h BDBF -> 'B 'u 'e 'd BDC0 -> 'B 'u 'e 'l BDC1 -> 'B 'u 'e 'l 'g BDC2 -> 'B 'u 'e 'l 'm BDC3 -> 'B 'u 'e 'l 'b BDC4 -> 'B 'u 'e 'l 's BDC5 -> 'B 'u 'e 'l 't BDC6 -> 'B 'u 'e 'l 'p BDC7 -> 'B 'u 'e 'l 'h BDC8 -> 'B 'u 'e 'm BDC9 -> 'B 'u 'e 'b BDCA -> 'B 'u 'e 'b 's BDCB -> 'B 'u 'e 's BDCC -> 'B 'u 'e 's 's BDCD -> 'B 'u 'e 'n 'g BDCE -> 'B 'u 'e 'j BDCF -> 'B 'u 'e 'c 'h BDD0 -> 'B 'u 'e 'k BDD1 -> 'B 'u 'e 't BDD2 -> 'B 'u 'e 'p BDD3 -> 'B 'u 'e 'h BDD4 -> 'B 'u 'i BDD5 -> 'B 'u 'i 'g BDD6 -> 'B 'u 'i 'g 'g BDD7 -> 'B 'u 'i 'g 's BDD8 -> 'B 'u 'i 'n BDD9 -> 'B 'u 'i 'n 'j BDDA -> 'B 'u 'i 'n 'h BDDB -> 'B 'u 'i 'd BDDC -> 'B 'u 'i 'l BDDD -> 'B 'u 'i 'l 'g BDDE -> 'B 'u 'i 'l 'm BDDF -> 'B 'u 'i 'l 'b BDE0 -> 'B 'u 'i 'l 's BDE1 -> 'B 'u 'i 'l 't BDE2 -> 'B 'u 'i 'l 'p BDE3 -> 'B 'u 'i 'l 'h BDE4 -> 'B 'u 'i 'm BDE5 -> 'B 'u 'i 'b BDE6 -> 'B 'u 'i 'b 's BDE7 -> 'B 'u 'i 's BDE8 -> 'B 'u 'i 's 's BDE9 -> 'B 'u 'i 'n 'g BDEA -> 'B 'u 'i 'j BDEB -> 'B 'u 'i 'c 'h BDEC -> 'B 'u 'i 'k BDED -> 'B 'u 'i 't BDEE -> 'B 'u 'i 'p BDEF -> 'B 'u 'i 'h BDF0 -> 'B 'y 'u BDF1 -> 'B 'y 'u 'g BDF2 -> 'B 'y 'u 'g 'g BDF3 -> 'B 'y 'u 'g 's BDF4 -> 'B 'y 'u 'n BDF5 -> 'B 'y 'u 'n 'j BDF6 -> 'B 'y 'u 'n 'h BDF7 -> 'B 'y 'u 'd BDF8 -> 'B 'y 'u 'l BDF9 -> 'B 'y 'u 'l 'g BDFA -> 'B 'y 'u 'l 'm BDFB -> 'B 'y 'u 'l 'b BDFC -> 'B 'y 'u 'l 's BDFD -> 'B 'y 'u 'l 't BDFE -> 'B 'y 'u 'l 'p BDFF -> 'B 'y 'u 'l 'h BE00 -> 'B 'y 'u 'm BE01 -> 'B 'y 'u 'b BE02 -> 'B 'y 'u 'b 's BE03 -> 'B 'y 'u 's BE04 -> 'B 'y 'u 's 's BE05 -> 'B 'y 'u 'n 'g BE06 -> 'B 'y 'u 'j BE07 -> 'B 'y 'u 'c 'h BE08 -> 'B 'y 'u 'k BE09 -> 'B 'y 'u 't BE0A -> 'B 'y 'u 'p BE0B -> 'B 'y 'u 'h BE0C -> 'B 'e 'u BE0D -> 'B 'e 'u 'g BE0E -> 'B 'e 'u 'g 'g BE0F -> 'B 'e 'u 'g 's BE10 -> 'B 'e 'u 'n BE11 -> 'B 'e 'u 'n 'j BE12 -> 'B 'e 'u 'n 'h BE13 -> 'B 'e 'u 'd BE14 -> 'B 'e 'u 'l BE15 -> 'B 'e 'u 'l 'g BE16 -> 'B 'e 'u 'l 'm BE17 -> 'B 'e 'u 'l 'b BE18 -> 'B 'e 'u 'l 's BE19 -> 'B 'e 'u 'l 't BE1A -> 'B 'e 'u 'l 'p BE1B -> 'B 'e 'u 'l 'h BE1C -> 'B 'e 'u 'm BE1D -> 'B 'e 'u 'b BE1E -> 'B 'e 'u 'b 's BE1F -> 'B 'e 'u 's BE20 -> 'B 'e 'u 's 's BE21 -> 'B 'e 'u 'n 'g BE22 -> 'B 'e 'u 'j BE23 -> 'B 'e 'u 'c 'h BE24 -> 'B 'e 'u 'k BE25 -> 'B 'e 'u 't BE26 -> 'B 'e 'u 'p BE27 -> 'B 'e 'u 'h BE28 -> 'B 'e 'u 'i BE29 -> 'B 'e 'u 'i 'g BE2A -> 'B 'e 'u 'i 'g 'g BE2B -> 'B 'e 'u 'i 'g 's BE2C -> 'B 'e 'u 'i 'n BE2D -> 'B 'e 'u 'i 'n 'j BE2E -> 'B 'e 'u 'i 'n 'h BE2F -> 'B 'e 'u 'i 'd BE30 -> 'B 'e 'u 'i 'l BE31 -> 'B 'e 'u 'i 'l 'g BE32 -> 'B 'e 'u 'i 'l 'm BE33 -> 'B 'e 'u 'i 'l 'b BE34 -> 'B 'e 'u 'i 'l 's BE35 -> 'B 'e 'u 'i 'l 't BE36 -> 'B 'e 'u 'i 'l 'p BE37 -> 'B 'e 'u 'i 'l 'h BE38 -> 'B 'e 'u 'i 'm BE39 -> 'B 'e 'u 'i 'b BE3A -> 'B 'e 'u 'i 'b 's BE3B -> 'B 'e 'u 'i 's BE3C -> 'B 'e 'u 'i 's 's BE3D -> 'B 'e 'u 'i 'n 'g BE3E -> 'B 'e 'u 'i 'j BE3F -> 'B 'e 'u 'i 'c 'h BE40 -> 'B 'e 'u 'i 'k BE41 -> 'B 'e 'u 'i 't BE42 -> 'B 'e 'u 'i 'p BE43 -> 'B 'e 'u 'i 'h BE44 -> 'B 'i BE45 -> 'B 'i 'g BE46 -> 'B 'i 'g 'g BE47 -> 'B 'i 'g 's BE48 -> 'B 'i 'n BE49 -> 'B 'i 'n 'j BE4A -> 'B 'i 'n 'h BE4B -> 'B 'i 'd BE4C -> 'B 'i 'l BE4D -> 'B 'i 'l 'g BE4E -> 'B 'i 'l 'm BE4F -> 'B 'i 'l 'b BE50 -> 'B 'i 'l 's BE51 -> 'B 'i 'l 't BE52 -> 'B 'i 'l 'p BE53 -> 'B 'i 'l 'h BE54 -> 'B 'i 'm BE55 -> 'B 'i 'b BE56 -> 'B 'i 'b 's BE57 -> 'B 'i 's BE58 -> 'B 'i 's 's BE59 -> 'B 'i 'n 'g BE5A -> 'B 'i 'j BE5B -> 'B 'i 'c 'h BE5C -> 'B 'i 'k BE5D -> 'B 'i 't BE5E -> 'B 'i 'p BE5F -> 'B 'i 'h BE60 -> 'B 'b 'a BE61 -> 'B 'b 'a 'g BE62 -> 'B 'b 'a 'g 'g BE63 -> 'B 'b 'a 'g 's BE64 -> 'B 'b 'a 'n BE65 -> 'B 'b 'a 'n 'j BE66 -> 'B 'b 'a 'n 'h BE67 -> 'B 'b 'a 'd BE68 -> 'B 'b 'a 'l BE69 -> 'B 'b 'a 'l 'g BE6A -> 'B 'b 'a 'l 'm BE6B -> 'B 'b 'a 'l 'b BE6C -> 'B 'b 'a 'l 's BE6D -> 'B 'b 'a 'l 't BE6E -> 'B 'b 'a 'l 'p BE6F -> 'B 'b 'a 'l 'h BE70 -> 'B 'b 'a 'm BE71 -> 'B 'b 'a 'b BE72 -> 'B 'b 'a 'b 's BE73 -> 'B 'b 'a 's BE74 -> 'B 'b 'a 's 's BE75 -> 'B 'b 'a 'n 'g BE76 -> 'B 'b 'a 'j BE77 -> 'B 'b 'a 'c 'h BE78 -> 'B 'b 'a 'k BE79 -> 'B 'b 'a 't BE7A -> 'B 'b 'a 'p BE7B -> 'B 'b 'a 'h BE7C -> 'B 'b 'a 'e BE7D -> 'B 'b 'a 'e 'g BE7E -> 'B 'b 'a 'e 'g 'g BE7F -> 'B 'b 'a 'e 'g 's BE80 -> 'B 'b 'a 'e 'n BE81 -> 'B 'b 'a 'e 'n 'j BE82 -> 'B 'b 'a 'e 'n 'h BE83 -> 'B 'b 'a 'e 'd BE84 -> 'B 'b 'a 'e 'l BE85 -> 'B 'b 'a 'e 'l 'g BE86 -> 'B 'b 'a 'e 'l 'm BE87 -> 'B 'b 'a 'e 'l 'b BE88 -> 'B 'b 'a 'e 'l 's BE89 -> 'B 'b 'a 'e 'l 't BE8A -> 'B 'b 'a 'e 'l 'p BE8B -> 'B 'b 'a 'e 'l 'h BE8C -> 'B 'b 'a 'e 'm BE8D -> 'B 'b 'a 'e 'b BE8E -> 'B 'b 'a 'e 'b 's BE8F -> 'B 'b 'a 'e 's BE90 -> 'B 'b 'a 'e 's 's BE91 -> 'B 'b 'a 'e 'n 'g BE92 -> 'B 'b 'a 'e 'j BE93 -> 'B 'b 'a 'e 'c 'h BE94 -> 'B 'b 'a 'e 'k BE95 -> 'B 'b 'a 'e 't BE96 -> 'B 'b 'a 'e 'p BE97 -> 'B 'b 'a 'e 'h BE98 -> 'B 'b 'y 'a BE99 -> 'B 'b 'y 'a 'g BE9A -> 'B 'b 'y 'a 'g 'g BE9B -> 'B 'b 'y 'a 'g 's BE9C -> 'B 'b 'y 'a 'n BE9D -> 'B 'b 'y 'a 'n 'j BE9E -> 'B 'b 'y 'a 'n 'h BE9F -> 'B 'b 'y 'a 'd BEA0 -> 'B 'b 'y 'a 'l BEA1 -> 'B 'b 'y 'a 'l 'g BEA2 -> 'B 'b 'y 'a 'l 'm BEA3 -> 'B 'b 'y 'a 'l 'b BEA4 -> 'B 'b 'y 'a 'l 's BEA5 -> 'B 'b 'y 'a 'l 't BEA6 -> 'B 'b 'y 'a 'l 'p BEA7 -> 'B 'b 'y 'a 'l 'h BEA8 -> 'B 'b 'y 'a 'm BEA9 -> 'B 'b 'y 'a 'b BEAA -> 'B 'b 'y 'a 'b 's BEAB -> 'B 'b 'y 'a 's BEAC -> 'B 'b 'y 'a 's 's BEAD -> 'B 'b 'y 'a 'n 'g BEAE -> 'B 'b 'y 'a 'j BEAF -> 'B 'b 'y 'a 'c 'h BEB0 -> 'B 'b 'y 'a 'k BEB1 -> 'B 'b 'y 'a 't BEB2 -> 'B 'b 'y 'a 'p BEB3 -> 'B 'b 'y 'a 'h BEB4 -> 'B 'b 'y 'a 'e BEB5 -> 'B 'b 'y 'a 'e 'g BEB6 -> 'B 'b 'y 'a 'e 'g 'g BEB7 -> 'B 'b 'y 'a 'e 'g 's BEB8 -> 'B 'b 'y 'a 'e 'n BEB9 -> 'B 'b 'y 'a 'e 'n 'j BEBA -> 'B 'b 'y 'a 'e 'n 'h BEBB -> 'B 'b 'y 'a 'e 'd BEBC -> 'B 'b 'y 'a 'e 'l BEBD -> 'B 'b 'y 'a 'e 'l 'g BEBE -> 'B 'b 'y 'a 'e 'l 'm BEBF -> 'B 'b 'y 'a 'e 'l 'b BEC0 -> 'B 'b 'y 'a 'e 'l 's BEC1 -> 'B 'b 'y 'a 'e 'l 't BEC2 -> 'B 'b 'y 'a 'e 'l 'p BEC3 -> 'B 'b 'y 'a 'e 'l 'h BEC4 -> 'B 'b 'y 'a 'e 'm BEC5 -> 'B 'b 'y 'a 'e 'b BEC6 -> 'B 'b 'y 'a 'e 'b 's BEC7 -> 'B 'b 'y 'a 'e 's BEC8 -> 'B 'b 'y 'a 'e 's 's BEC9 -> 'B 'b 'y 'a 'e 'n 'g BECA -> 'B 'b 'y 'a 'e 'j BECB -> 'B 'b 'y 'a 'e 'c 'h BECC -> 'B 'b 'y 'a 'e 'k BECD -> 'B 'b 'y 'a 'e 't BECE -> 'B 'b 'y 'a 'e 'p BECF -> 'B 'b 'y 'a 'e 'h BED0 -> 'B 'b 'e 'o BED1 -> 'B 'b 'e 'o 'g BED2 -> 'B 'b 'e 'o 'g 'g BED3 -> 'B 'b 'e 'o 'g 's BED4 -> 'B 'b 'e 'o 'n BED5 -> 'B 'b 'e 'o 'n 'j BED6 -> 'B 'b 'e 'o 'n 'h BED7 -> 'B 'b 'e 'o 'd BED8 -> 'B 'b 'e 'o 'l BED9 -> 'B 'b 'e 'o 'l 'g BEDA -> 'B 'b 'e 'o 'l 'm BEDB -> 'B 'b 'e 'o 'l 'b BEDC -> 'B 'b 'e 'o 'l 's BEDD -> 'B 'b 'e 'o 'l 't BEDE -> 'B 'b 'e 'o 'l 'p BEDF -> 'B 'b 'e 'o 'l 'h BEE0 -> 'B 'b 'e 'o 'm BEE1 -> 'B 'b 'e 'o 'b BEE2 -> 'B 'b 'e 'o 'b 's BEE3 -> 'B 'b 'e 'o 's BEE4 -> 'B 'b 'e 'o 's 's BEE5 -> 'B 'b 'e 'o 'n 'g BEE6 -> 'B 'b 'e 'o 'j BEE7 -> 'B 'b 'e 'o 'c 'h BEE8 -> 'B 'b 'e 'o 'k BEE9 -> 'B 'b 'e 'o 't BEEA -> 'B 'b 'e 'o 'p BEEB -> 'B 'b 'e 'o 'h BEEC -> 'B 'b 'e BEED -> 'B 'b 'e 'g BEEE -> 'B 'b 'e 'g 'g BEEF -> 'B 'b 'e 'g 's BEF0 -> 'B 'b 'e 'n BEF1 -> 'B 'b 'e 'n 'j BEF2 -> 'B 'b 'e 'n 'h BEF3 -> 'B 'b 'e 'd BEF4 -> 'B 'b 'e 'l BEF5 -> 'B 'b 'e 'l 'g BEF6 -> 'B 'b 'e 'l 'm BEF7 -> 'B 'b 'e 'l 'b BEF8 -> 'B 'b 'e 'l 's BEF9 -> 'B 'b 'e 'l 't BEFA -> 'B 'b 'e 'l 'p BEFB -> 'B 'b 'e 'l 'h BEFC -> 'B 'b 'e 'm BEFD -> 'B 'b 'e 'b BEFE -> 'B 'b 'e 'b 's BEFF -> 'B 'b 'e 's BF00 -> 'B 'b 'e 's 's BF01 -> 'B 'b 'e 'n 'g BF02 -> 'B 'b 'e 'j BF03 -> 'B 'b 'e 'c 'h BF04 -> 'B 'b 'e 'k BF05 -> 'B 'b 'e 't BF06 -> 'B 'b 'e 'p BF07 -> 'B 'b 'e 'h BF08 -> 'B 'b 'y 'e 'o BF09 -> 'B 'b 'y 'e 'o 'g BF0A -> 'B 'b 'y 'e 'o 'g 'g BF0B -> 'B 'b 'y 'e 'o 'g 's BF0C -> 'B 'b 'y 'e 'o 'n BF0D -> 'B 'b 'y 'e 'o 'n 'j BF0E -> 'B 'b 'y 'e 'o 'n 'h BF0F -> 'B 'b 'y 'e 'o 'd BF10 -> 'B 'b 'y 'e 'o 'l BF11 -> 'B 'b 'y 'e 'o 'l 'g BF12 -> 'B 'b 'y 'e 'o 'l 'm BF13 -> 'B 'b 'y 'e 'o 'l 'b BF14 -> 'B 'b 'y 'e 'o 'l 's BF15 -> 'B 'b 'y 'e 'o 'l 't BF16 -> 'B 'b 'y 'e 'o 'l 'p BF17 -> 'B 'b 'y 'e 'o 'l 'h BF18 -> 'B 'b 'y 'e 'o 'm BF19 -> 'B 'b 'y 'e 'o 'b BF1A -> 'B 'b 'y 'e 'o 'b 's BF1B -> 'B 'b 'y 'e 'o 's BF1C -> 'B 'b 'y 'e 'o 's 's BF1D -> 'B 'b 'y 'e 'o 'n 'g BF1E -> 'B 'b 'y 'e 'o 'j BF1F -> 'B 'b 'y 'e 'o 'c 'h BF20 -> 'B 'b 'y 'e 'o 'k BF21 -> 'B 'b 'y 'e 'o 't BF22 -> 'B 'b 'y 'e 'o 'p BF23 -> 'B 'b 'y 'e 'o 'h BF24 -> 'B 'b 'y 'e BF25 -> 'B 'b 'y 'e 'g BF26 -> 'B 'b 'y 'e 'g 'g BF27 -> 'B 'b 'y 'e 'g 's BF28 -> 'B 'b 'y 'e 'n BF29 -> 'B 'b 'y 'e 'n 'j BF2A -> 'B 'b 'y 'e 'n 'h BF2B -> 'B 'b 'y 'e 'd BF2C -> 'B 'b 'y 'e 'l BF2D -> 'B 'b 'y 'e 'l 'g BF2E -> 'B 'b 'y 'e 'l 'm BF2F -> 'B 'b 'y 'e 'l 'b BF30 -> 'B 'b 'y 'e 'l 's BF31 -> 'B 'b 'y 'e 'l 't BF32 -> 'B 'b 'y 'e 'l 'p BF33 -> 'B 'b 'y 'e 'l 'h BF34 -> 'B 'b 'y 'e 'm BF35 -> 'B 'b 'y 'e 'b BF36 -> 'B 'b 'y 'e 'b 's BF37 -> 'B 'b 'y 'e 's BF38 -> 'B 'b 'y 'e 's 's BF39 -> 'B 'b 'y 'e 'n 'g BF3A -> 'B 'b 'y 'e 'j BF3B -> 'B 'b 'y 'e 'c 'h BF3C -> 'B 'b 'y 'e 'k BF3D -> 'B 'b 'y 'e 't BF3E -> 'B 'b 'y 'e 'p BF3F -> 'B 'b 'y 'e 'h BF40 -> 'B 'b 'o BF41 -> 'B 'b 'o 'g BF42 -> 'B 'b 'o 'g 'g BF43 -> 'B 'b 'o 'g 's BF44 -> 'B 'b 'o 'n BF45 -> 'B 'b 'o 'n 'j BF46 -> 'B 'b 'o 'n 'h BF47 -> 'B 'b 'o 'd BF48 -> 'B 'b 'o 'l BF49 -> 'B 'b 'o 'l 'g BF4A -> 'B 'b 'o 'l 'm BF4B -> 'B 'b 'o 'l 'b BF4C -> 'B 'b 'o 'l 's BF4D -> 'B 'b 'o 'l 't BF4E -> 'B 'b 'o 'l 'p BF4F -> 'B 'b 'o 'l 'h BF50 -> 'B 'b 'o 'm BF51 -> 'B 'b 'o 'b BF52 -> 'B 'b 'o 'b 's BF53 -> 'B 'b 'o 's BF54 -> 'B 'b 'o 's 's BF55 -> 'B 'b 'o 'n 'g BF56 -> 'B 'b 'o 'j BF57 -> 'B 'b 'o 'c 'h BF58 -> 'B 'b 'o 'k BF59 -> 'B 'b 'o 't BF5A -> 'B 'b 'o 'p BF5B -> 'B 'b 'o 'h BF5C -> 'B 'b 'o 'a BF5D -> 'B 'b 'o 'a 'g BF5E -> 'B 'b 'o 'a 'g 'g BF5F -> 'B 'b 'o 'a 'g 's BF60 -> 'B 'b 'o 'a 'n BF61 -> 'B 'b 'o 'a 'n 'j BF62 -> 'B 'b 'o 'a 'n 'h BF63 -> 'B 'b 'o 'a 'd BF64 -> 'B 'b 'o 'a 'l BF65 -> 'B 'b 'o 'a 'l 'g BF66 -> 'B 'b 'o 'a 'l 'm BF67 -> 'B 'b 'o 'a 'l 'b BF68 -> 'B 'b 'o 'a 'l 's BF69 -> 'B 'b 'o 'a 'l 't BF6A -> 'B 'b 'o 'a 'l 'p BF6B -> 'B 'b 'o 'a 'l 'h BF6C -> 'B 'b 'o 'a 'm BF6D -> 'B 'b 'o 'a 'b BF6E -> 'B 'b 'o 'a 'b 's BF6F -> 'B 'b 'o 'a 's BF70 -> 'B 'b 'o 'a 's 's BF71 -> 'B 'b 'o 'a 'n 'g BF72 -> 'B 'b 'o 'a 'j BF73 -> 'B 'b 'o 'a 'c 'h BF74 -> 'B 'b 'o 'a 'k BF75 -> 'B 'b 'o 'a 't BF76 -> 'B 'b 'o 'a 'p BF77 -> 'B 'b 'o 'a 'h BF78 -> 'B 'b 'o 'a 'e BF79 -> 'B 'b 'o 'a 'e 'g BF7A -> 'B 'b 'o 'a 'e 'g 'g BF7B -> 'B 'b 'o 'a 'e 'g 's BF7C -> 'B 'b 'o 'a 'e 'n BF7D -> 'B 'b 'o 'a 'e 'n 'j BF7E -> 'B 'b 'o 'a 'e 'n 'h BF7F -> 'B 'b 'o 'a 'e 'd BF80 -> 'B 'b 'o 'a 'e 'l BF81 -> 'B 'b 'o 'a 'e 'l 'g BF82 -> 'B 'b 'o 'a 'e 'l 'm BF83 -> 'B 'b 'o 'a 'e 'l 'b BF84 -> 'B 'b 'o 'a 'e 'l 's BF85 -> 'B 'b 'o 'a 'e 'l 't BF86 -> 'B 'b 'o 'a 'e 'l 'p BF87 -> 'B 'b 'o 'a 'e 'l 'h BF88 -> 'B 'b 'o 'a 'e 'm BF89 -> 'B 'b 'o 'a 'e 'b BF8A -> 'B 'b 'o 'a 'e 'b 's BF8B -> 'B 'b 'o 'a 'e 's BF8C -> 'B 'b 'o 'a 'e 's 's BF8D -> 'B 'b 'o 'a 'e 'n 'g BF8E -> 'B 'b 'o 'a 'e 'j BF8F -> 'B 'b 'o 'a 'e 'c 'h BF90 -> 'B 'b 'o 'a 'e 'k BF91 -> 'B 'b 'o 'a 'e 't BF92 -> 'B 'b 'o 'a 'e 'p BF93 -> 'B 'b 'o 'a 'e 'h BF94 -> 'B 'b 'o 'i BF95 -> 'B 'b 'o 'i 'g BF96 -> 'B 'b 'o 'i 'g 'g BF97 -> 'B 'b 'o 'i 'g 's BF98 -> 'B 'b 'o 'i 'n BF99 -> 'B 'b 'o 'i 'n 'j BF9A -> 'B 'b 'o 'i 'n 'h BF9B -> 'B 'b 'o 'i 'd BF9C -> 'B 'b 'o 'i 'l BF9D -> 'B 'b 'o 'i 'l 'g BF9E -> 'B 'b 'o 'i 'l 'm BF9F -> 'B 'b 'o 'i 'l 'b BFA0 -> 'B 'b 'o 'i 'l 's BFA1 -> 'B 'b 'o 'i 'l 't BFA2 -> 'B 'b 'o 'i 'l 'p BFA3 -> 'B 'b 'o 'i 'l 'h BFA4 -> 'B 'b 'o 'i 'm BFA5 -> 'B 'b 'o 'i 'b BFA6 -> 'B 'b 'o 'i 'b 's BFA7 -> 'B 'b 'o 'i 's BFA8 -> 'B 'b 'o 'i 's 's BFA9 -> 'B 'b 'o 'i 'n 'g BFAA -> 'B 'b 'o 'i 'j BFAB -> 'B 'b 'o 'i 'c 'h BFAC -> 'B 'b 'o 'i 'k BFAD -> 'B 'b 'o 'i 't BFAE -> 'B 'b 'o 'i 'p BFAF -> 'B 'b 'o 'i 'h BFB0 -> 'B 'b 'y 'o BFB1 -> 'B 'b 'y 'o 'g BFB2 -> 'B 'b 'y 'o 'g 'g BFB3 -> 'B 'b 'y 'o 'g 's BFB4 -> 'B 'b 'y 'o 'n BFB5 -> 'B 'b 'y 'o 'n 'j BFB6 -> 'B 'b 'y 'o 'n 'h BFB7 -> 'B 'b 'y 'o 'd BFB8 -> 'B 'b 'y 'o 'l BFB9 -> 'B 'b 'y 'o 'l 'g BFBA -> 'B 'b 'y 'o 'l 'm BFBB -> 'B 'b 'y 'o 'l 'b BFBC -> 'B 'b 'y 'o 'l 's BFBD -> 'B 'b 'y 'o 'l 't BFBE -> 'B 'b 'y 'o 'l 'p BFBF -> 'B 'b 'y 'o 'l 'h BFC0 -> 'B 'b 'y 'o 'm BFC1 -> 'B 'b 'y 'o 'b BFC2 -> 'B 'b 'y 'o 'b 's BFC3 -> 'B 'b 'y 'o 's BFC4 -> 'B 'b 'y 'o 's 's BFC5 -> 'B 'b 'y 'o 'n 'g BFC6 -> 'B 'b 'y 'o 'j BFC7 -> 'B 'b 'y 'o 'c 'h BFC8 -> 'B 'b 'y 'o 'k BFC9 -> 'B 'b 'y 'o 't BFCA -> 'B 'b 'y 'o 'p BFCB -> 'B 'b 'y 'o 'h BFCC -> 'B 'b 'u BFCD -> 'B 'b 'u 'g BFCE -> 'B 'b 'u 'g 'g BFCF -> 'B 'b 'u 'g 's BFD0 -> 'B 'b 'u 'n BFD1 -> 'B 'b 'u 'n 'j BFD2 -> 'B 'b 'u 'n 'h BFD3 -> 'B 'b 'u 'd BFD4 -> 'B 'b 'u 'l BFD5 -> 'B 'b 'u 'l 'g BFD6 -> 'B 'b 'u 'l 'm BFD7 -> 'B 'b 'u 'l 'b BFD8 -> 'B 'b 'u 'l 's BFD9 -> 'B 'b 'u 'l 't BFDA -> 'B 'b 'u 'l 'p BFDB -> 'B 'b 'u 'l 'h BFDC -> 'B 'b 'u 'm BFDD -> 'B 'b 'u 'b BFDE -> 'B 'b 'u 'b 's BFDF -> 'B 'b 'u 's BFE0 -> 'B 'b 'u 's 's BFE1 -> 'B 'b 'u 'n 'g BFE2 -> 'B 'b 'u 'j BFE3 -> 'B 'b 'u 'c 'h BFE4 -> 'B 'b 'u 'k BFE5 -> 'B 'b 'u 't BFE6 -> 'B 'b 'u 'p BFE7 -> 'B 'b 'u 'h BFE8 -> 'B 'b 'u 'e 'o BFE9 -> 'B 'b 'u 'e 'o 'g BFEA -> 'B 'b 'u 'e 'o 'g 'g BFEB -> 'B 'b 'u 'e 'o 'g 's BFEC -> 'B 'b 'u 'e 'o 'n BFED -> 'B 'b 'u 'e 'o 'n 'j BFEE -> 'B 'b 'u 'e 'o 'n 'h BFEF -> 'B 'b 'u 'e 'o 'd BFF0 -> 'B 'b 'u 'e 'o 'l BFF1 -> 'B 'b 'u 'e 'o 'l 'g BFF2 -> 'B 'b 'u 'e 'o 'l 'm BFF3 -> 'B 'b 'u 'e 'o 'l 'b BFF4 -> 'B 'b 'u 'e 'o 'l 's BFF5 -> 'B 'b 'u 'e 'o 'l 't BFF6 -> 'B 'b 'u 'e 'o 'l 'p BFF7 -> 'B 'b 'u 'e 'o 'l 'h BFF8 -> 'B 'b 'u 'e 'o 'm BFF9 -> 'B 'b 'u 'e 'o 'b BFFA -> 'B 'b 'u 'e 'o 'b 's BFFB -> 'B 'b 'u 'e 'o 's BFFC -> 'B 'b 'u 'e 'o 's 's BFFD -> 'B 'b 'u 'e 'o 'n 'g BFFE -> 'B 'b 'u 'e 'o 'j BFFF -> 'B 'b 'u 'e 'o 'c 'h C000 -> 'B 'b 'u 'e 'o 'k C001 -> 'B 'b 'u 'e 'o 't C002 -> 'B 'b 'u 'e 'o 'p C003 -> 'B 'b 'u 'e 'o 'h C004 -> 'B 'b 'u 'e C005 -> 'B 'b 'u 'e 'g C006 -> 'B 'b 'u 'e 'g 'g C007 -> 'B 'b 'u 'e 'g 's C008 -> 'B 'b 'u 'e 'n C009 -> 'B 'b 'u 'e 'n 'j C00A -> 'B 'b 'u 'e 'n 'h C00B -> 'B 'b 'u 'e 'd C00C -> 'B 'b 'u 'e 'l C00D -> 'B 'b 'u 'e 'l 'g C00E -> 'B 'b 'u 'e 'l 'm C00F -> 'B 'b 'u 'e 'l 'b C010 -> 'B 'b 'u 'e 'l 's C011 -> 'B 'b 'u 'e 'l 't C012 -> 'B 'b 'u 'e 'l 'p C013 -> 'B 'b 'u 'e 'l 'h C014 -> 'B 'b 'u 'e 'm C015 -> 'B 'b 'u 'e 'b C016 -> 'B 'b 'u 'e 'b 's C017 -> 'B 'b 'u 'e 's C018 -> 'B 'b 'u 'e 's 's C019 -> 'B 'b 'u 'e 'n 'g C01A -> 'B 'b 'u 'e 'j C01B -> 'B 'b 'u 'e 'c 'h C01C -> 'B 'b 'u 'e 'k C01D -> 'B 'b 'u 'e 't C01E -> 'B 'b 'u 'e 'p C01F -> 'B 'b 'u 'e 'h C020 -> 'B 'b 'u 'i C021 -> 'B 'b 'u 'i 'g C022 -> 'B 'b 'u 'i 'g 'g C023 -> 'B 'b 'u 'i 'g 's C024 -> 'B 'b 'u 'i 'n C025 -> 'B 'b 'u 'i 'n 'j C026 -> 'B 'b 'u 'i 'n 'h C027 -> 'B 'b 'u 'i 'd C028 -> 'B 'b 'u 'i 'l C029 -> 'B 'b 'u 'i 'l 'g C02A -> 'B 'b 'u 'i 'l 'm C02B -> 'B 'b 'u 'i 'l 'b C02C -> 'B 'b 'u 'i 'l 's C02D -> 'B 'b 'u 'i 'l 't C02E -> 'B 'b 'u 'i 'l 'p C02F -> 'B 'b 'u 'i 'l 'h C030 -> 'B 'b 'u 'i 'm C031 -> 'B 'b 'u 'i 'b C032 -> 'B 'b 'u 'i 'b 's C033 -> 'B 'b 'u 'i 's C034 -> 'B 'b 'u 'i 's 's C035 -> 'B 'b 'u 'i 'n 'g C036 -> 'B 'b 'u 'i 'j C037 -> 'B 'b 'u 'i 'c 'h C038 -> 'B 'b 'u 'i 'k C039 -> 'B 'b 'u 'i 't C03A -> 'B 'b 'u 'i 'p C03B -> 'B 'b 'u 'i 'h C03C -> 'B 'b 'y 'u C03D -> 'B 'b 'y 'u 'g C03E -> 'B 'b 'y 'u 'g 'g C03F -> 'B 'b 'y 'u 'g 's C040 -> 'B 'b 'y 'u 'n C041 -> 'B 'b 'y 'u 'n 'j C042 -> 'B 'b 'y 'u 'n 'h C043 -> 'B 'b 'y 'u 'd C044 -> 'B 'b 'y 'u 'l C045 -> 'B 'b 'y 'u 'l 'g C046 -> 'B 'b 'y 'u 'l 'm C047 -> 'B 'b 'y 'u 'l 'b C048 -> 'B 'b 'y 'u 'l 's C049 -> 'B 'b 'y 'u 'l 't C04A -> 'B 'b 'y 'u 'l 'p C04B -> 'B 'b 'y 'u 'l 'h C04C -> 'B 'b 'y 'u 'm C04D -> 'B 'b 'y 'u 'b C04E -> 'B 'b 'y 'u 'b 's C04F -> 'B 'b 'y 'u 's C050 -> 'B 'b 'y 'u 's 's C051 -> 'B 'b 'y 'u 'n 'g C052 -> 'B 'b 'y 'u 'j C053 -> 'B 'b 'y 'u 'c 'h C054 -> 'B 'b 'y 'u 'k C055 -> 'B 'b 'y 'u 't C056 -> 'B 'b 'y 'u 'p C057 -> 'B 'b 'y 'u 'h C058 -> 'B 'b 'e 'u C059 -> 'B 'b 'e 'u 'g C05A -> 'B 'b 'e 'u 'g 'g C05B -> 'B 'b 'e 'u 'g 's C05C -> 'B 'b 'e 'u 'n C05D -> 'B 'b 'e 'u 'n 'j C05E -> 'B 'b 'e 'u 'n 'h C05F -> 'B 'b 'e 'u 'd C060 -> 'B 'b 'e 'u 'l C061 -> 'B 'b 'e 'u 'l 'g C062 -> 'B 'b 'e 'u 'l 'm C063 -> 'B 'b 'e 'u 'l 'b C064 -> 'B 'b 'e 'u 'l 's C065 -> 'B 'b 'e 'u 'l 't C066 -> 'B 'b 'e 'u 'l 'p C067 -> 'B 'b 'e 'u 'l 'h C068 -> 'B 'b 'e 'u 'm C069 -> 'B 'b 'e 'u 'b C06A -> 'B 'b 'e 'u 'b 's C06B -> 'B 'b 'e 'u 's C06C -> 'B 'b 'e 'u 's 's C06D -> 'B 'b 'e 'u 'n 'g C06E -> 'B 'b 'e 'u 'j C06F -> 'B 'b 'e 'u 'c 'h C070 -> 'B 'b 'e 'u 'k C071 -> 'B 'b 'e 'u 't C072 -> 'B 'b 'e 'u 'p C073 -> 'B 'b 'e 'u 'h C074 -> 'B 'b 'e 'u 'i C075 -> 'B 'b 'e 'u 'i 'g C076 -> 'B 'b 'e 'u 'i 'g 'g C077 -> 'B 'b 'e 'u 'i 'g 's C078 -> 'B 'b 'e 'u 'i 'n C079 -> 'B 'b 'e 'u 'i 'n 'j C07A -> 'B 'b 'e 'u 'i 'n 'h C07B -> 'B 'b 'e 'u 'i 'd C07C -> 'B 'b 'e 'u 'i 'l C07D -> 'B 'b 'e 'u 'i 'l 'g C07E -> 'B 'b 'e 'u 'i 'l 'm C07F -> 'B 'b 'e 'u 'i 'l 'b C080 -> 'B 'b 'e 'u 'i 'l 's C081 -> 'B 'b 'e 'u 'i 'l 't C082 -> 'B 'b 'e 'u 'i 'l 'p C083 -> 'B 'b 'e 'u 'i 'l 'h C084 -> 'B 'b 'e 'u 'i 'm C085 -> 'B 'b 'e 'u 'i 'b C086 -> 'B 'b 'e 'u 'i 'b 's C087 -> 'B 'b 'e 'u 'i 's C088 -> 'B 'b 'e 'u 'i 's 's C089 -> 'B 'b 'e 'u 'i 'n 'g C08A -> 'B 'b 'e 'u 'i 'j C08B -> 'B 'b 'e 'u 'i 'c 'h C08C -> 'B 'b 'e 'u 'i 'k C08D -> 'B 'b 'e 'u 'i 't C08E -> 'B 'b 'e 'u 'i 'p C08F -> 'B 'b 'e 'u 'i 'h C090 -> 'B 'b 'i C091 -> 'B 'b 'i 'g C092 -> 'B 'b 'i 'g 'g C093 -> 'B 'b 'i 'g 's C094 -> 'B 'b 'i 'n C095 -> 'B 'b 'i 'n 'j C096 -> 'B 'b 'i 'n 'h C097 -> 'B 'b 'i 'd C098 -> 'B 'b 'i 'l C099 -> 'B 'b 'i 'l 'g C09A -> 'B 'b 'i 'l 'm C09B -> 'B 'b 'i 'l 'b C09C -> 'B 'b 'i 'l 's C09D -> 'B 'b 'i 'l 't C09E -> 'B 'b 'i 'l 'p C09F -> 'B 'b 'i 'l 'h C0A0 -> 'B 'b 'i 'm C0A1 -> 'B 'b 'i 'b C0A2 -> 'B 'b 'i 'b 's C0A3 -> 'B 'b 'i 's C0A4 -> 'B 'b 'i 's 's C0A5 -> 'B 'b 'i 'n 'g C0A6 -> 'B 'b 'i 'j C0A7 -> 'B 'b 'i 'c 'h C0A8 -> 'B 'b 'i 'k C0A9 -> 'B 'b 'i 't C0AA -> 'B 'b 'i 'p C0AB -> 'B 'b 'i 'h C0AC -> 'S 'a C0AD -> 'S 'a 'g C0AE -> 'S 'a 'g 'g C0AF -> 'S 'a 'g 's C0B0 -> 'S 'a 'n C0B1 -> 'S 'a 'n 'j C0B2 -> 'S 'a 'n 'h C0B3 -> 'S 'a 'd C0B4 -> 'S 'a 'l C0B5 -> 'S 'a 'l 'g C0B6 -> 'S 'a 'l 'm C0B7 -> 'S 'a 'l 'b C0B8 -> 'S 'a 'l 's C0B9 -> 'S 'a 'l 't C0BA -> 'S 'a 'l 'p C0BB -> 'S 'a 'l 'h C0BC -> 'S 'a 'm C0BD -> 'S 'a 'b C0BE -> 'S 'a 'b 's C0BF -> 'S 'a 's C0C0 -> 'S 'a 's 's C0C1 -> 'S 'a 'n 'g C0C2 -> 'S 'a 'j C0C3 -> 'S 'a 'c 'h C0C4 -> 'S 'a 'k C0C5 -> 'S 'a 't C0C6 -> 'S 'a 'p C0C7 -> 'S 'a 'h C0C8 -> 'S 'a 'e C0C9 -> 'S 'a 'e 'g C0CA -> 'S 'a 'e 'g 'g C0CB -> 'S 'a 'e 'g 's C0CC -> 'S 'a 'e 'n C0CD -> 'S 'a 'e 'n 'j C0CE -> 'S 'a 'e 'n 'h C0CF -> 'S 'a 'e 'd C0D0 -> 'S 'a 'e 'l C0D1 -> 'S 'a 'e 'l 'g C0D2 -> 'S 'a 'e 'l 'm C0D3 -> 'S 'a 'e 'l 'b C0D4 -> 'S 'a 'e 'l 's C0D5 -> 'S 'a 'e 'l 't C0D6 -> 'S 'a 'e 'l 'p C0D7 -> 'S 'a 'e 'l 'h C0D8 -> 'S 'a 'e 'm C0D9 -> 'S 'a 'e 'b C0DA -> 'S 'a 'e 'b 's C0DB -> 'S 'a 'e 's C0DC -> 'S 'a 'e 's 's C0DD -> 'S 'a 'e 'n 'g C0DE -> 'S 'a 'e 'j C0DF -> 'S 'a 'e 'c 'h C0E0 -> 'S 'a 'e 'k C0E1 -> 'S 'a 'e 't C0E2 -> 'S 'a 'e 'p C0E3 -> 'S 'a 'e 'h C0E4 -> 'S 'y 'a C0E5 -> 'S 'y 'a 'g C0E6 -> 'S 'y 'a 'g 'g C0E7 -> 'S 'y 'a 'g 's C0E8 -> 'S 'y 'a 'n C0E9 -> 'S 'y 'a 'n 'j C0EA -> 'S 'y 'a 'n 'h C0EB -> 'S 'y 'a 'd C0EC -> 'S 'y 'a 'l C0ED -> 'S 'y 'a 'l 'g C0EE -> 'S 'y 'a 'l 'm C0EF -> 'S 'y 'a 'l 'b C0F0 -> 'S 'y 'a 'l 's C0F1 -> 'S 'y 'a 'l 't C0F2 -> 'S 'y 'a 'l 'p C0F3 -> 'S 'y 'a 'l 'h C0F4 -> 'S 'y 'a 'm C0F5 -> 'S 'y 'a 'b C0F6 -> 'S 'y 'a 'b 's C0F7 -> 'S 'y 'a 's C0F8 -> 'S 'y 'a 's 's C0F9 -> 'S 'y 'a 'n 'g C0FA -> 'S 'y 'a 'j C0FB -> 'S 'y 'a 'c 'h C0FC -> 'S 'y 'a 'k C0FD -> 'S 'y 'a 't C0FE -> 'S 'y 'a 'p C0FF -> 'S 'y 'a 'h C100 -> 'S 'y 'a 'e C101 -> 'S 'y 'a 'e 'g C102 -> 'S 'y 'a 'e 'g 'g C103 -> 'S 'y 'a 'e 'g 's C104 -> 'S 'y 'a 'e 'n C105 -> 'S 'y 'a 'e 'n 'j C106 -> 'S 'y 'a 'e 'n 'h C107 -> 'S 'y 'a 'e 'd C108 -> 'S 'y 'a 'e 'l C109 -> 'S 'y 'a 'e 'l 'g C10A -> 'S 'y 'a 'e 'l 'm C10B -> 'S 'y 'a 'e 'l 'b C10C -> 'S 'y 'a 'e 'l 's C10D -> 'S 'y 'a 'e 'l 't C10E -> 'S 'y 'a 'e 'l 'p C10F -> 'S 'y 'a 'e 'l 'h C110 -> 'S 'y 'a 'e 'm C111 -> 'S 'y 'a 'e 'b C112 -> 'S 'y 'a 'e 'b 's C113 -> 'S 'y 'a 'e 's C114 -> 'S 'y 'a 'e 's 's C115 -> 'S 'y 'a 'e 'n 'g C116 -> 'S 'y 'a 'e 'j C117 -> 'S 'y 'a 'e 'c 'h C118 -> 'S 'y 'a 'e 'k C119 -> 'S 'y 'a 'e 't C11A -> 'S 'y 'a 'e 'p C11B -> 'S 'y 'a 'e 'h C11C -> 'S 'e 'o C11D -> 'S 'e 'o 'g C11E -> 'S 'e 'o 'g 'g C11F -> 'S 'e 'o 'g 's C120 -> 'S 'e 'o 'n C121 -> 'S 'e 'o 'n 'j C122 -> 'S 'e 'o 'n 'h C123 -> 'S 'e 'o 'd C124 -> 'S 'e 'o 'l C125 -> 'S 'e 'o 'l 'g C126 -> 'S 'e 'o 'l 'm C127 -> 'S 'e 'o 'l 'b C128 -> 'S 'e 'o 'l 's C129 -> 'S 'e 'o 'l 't C12A -> 'S 'e 'o 'l 'p C12B -> 'S 'e 'o 'l 'h C12C -> 'S 'e 'o 'm C12D -> 'S 'e 'o 'b C12E -> 'S 'e 'o 'b 's C12F -> 'S 'e 'o 's C130 -> 'S 'e 'o 's 's C131 -> 'S 'e 'o 'n 'g C132 -> 'S 'e 'o 'j C133 -> 'S 'e 'o 'c 'h C134 -> 'S 'e 'o 'k C135 -> 'S 'e 'o 't C136 -> 'S 'e 'o 'p C137 -> 'S 'e 'o 'h C138 -> 'S 'e C139 -> 'S 'e 'g C13A -> 'S 'e 'g 'g C13B -> 'S 'e 'g 's C13C -> 'S 'e 'n C13D -> 'S 'e 'n 'j C13E -> 'S 'e 'n 'h C13F -> 'S 'e 'd C140 -> 'S 'e 'l C141 -> 'S 'e 'l 'g C142 -> 'S 'e 'l 'm C143 -> 'S 'e 'l 'b C144 -> 'S 'e 'l 's C145 -> 'S 'e 'l 't C146 -> 'S 'e 'l 'p C147 -> 'S 'e 'l 'h C148 -> 'S 'e 'm C149 -> 'S 'e 'b C14A -> 'S 'e 'b 's C14B -> 'S 'e 's C14C -> 'S 'e 's 's C14D -> 'S 'e 'n 'g C14E -> 'S 'e 'j C14F -> 'S 'e 'c 'h C150 -> 'S 'e 'k C151 -> 'S 'e 't C152 -> 'S 'e 'p C153 -> 'S 'e 'h C154 -> 'S 'y 'e 'o C155 -> 'S 'y 'e 'o 'g C156 -> 'S 'y 'e 'o 'g 'g C157 -> 'S 'y 'e 'o 'g 's C158 -> 'S 'y 'e 'o 'n C159 -> 'S 'y 'e 'o 'n 'j C15A -> 'S 'y 'e 'o 'n 'h C15B -> 'S 'y 'e 'o 'd C15C -> 'S 'y 'e 'o 'l C15D -> 'S 'y 'e 'o 'l 'g C15E -> 'S 'y 'e 'o 'l 'm C15F -> 'S 'y 'e 'o 'l 'b C160 -> 'S 'y 'e 'o 'l 's C161 -> 'S 'y 'e 'o 'l 't C162 -> 'S 'y 'e 'o 'l 'p C163 -> 'S 'y 'e 'o 'l 'h C164 -> 'S 'y 'e 'o 'm C165 -> 'S 'y 'e 'o 'b C166 -> 'S 'y 'e 'o 'b 's C167 -> 'S 'y 'e 'o 's C168 -> 'S 'y 'e 'o 's 's C169 -> 'S 'y 'e 'o 'n 'g C16A -> 'S 'y 'e 'o 'j C16B -> 'S 'y 'e 'o 'c 'h C16C -> 'S 'y 'e 'o 'k C16D -> 'S 'y 'e 'o 't C16E -> 'S 'y 'e 'o 'p C16F -> 'S 'y 'e 'o 'h C170 -> 'S 'y 'e C171 -> 'S 'y 'e 'g C172 -> 'S 'y 'e 'g 'g C173 -> 'S 'y 'e 'g 's C174 -> 'S 'y 'e 'n C175 -> 'S 'y 'e 'n 'j C176 -> 'S 'y 'e 'n 'h C177 -> 'S 'y 'e 'd C178 -> 'S 'y 'e 'l C179 -> 'S 'y 'e 'l 'g C17A -> 'S 'y 'e 'l 'm C17B -> 'S 'y 'e 'l 'b C17C -> 'S 'y 'e 'l 's C17D -> 'S 'y 'e 'l 't C17E -> 'S 'y 'e 'l 'p C17F -> 'S 'y 'e 'l 'h C180 -> 'S 'y 'e 'm C181 -> 'S 'y 'e 'b C182 -> 'S 'y 'e 'b 's C183 -> 'S 'y 'e 's C184 -> 'S 'y 'e 's 's C185 -> 'S 'y 'e 'n 'g C186 -> 'S 'y 'e 'j C187 -> 'S 'y 'e 'c 'h C188 -> 'S 'y 'e 'k C189 -> 'S 'y 'e 't C18A -> 'S 'y 'e 'p C18B -> 'S 'y 'e 'h C18C -> 'S 'o C18D -> 'S 'o 'g C18E -> 'S 'o 'g 'g C18F -> 'S 'o 'g 's C190 -> 'S 'o 'n C191 -> 'S 'o 'n 'j C192 -> 'S 'o 'n 'h C193 -> 'S 'o 'd C194 -> 'S 'o 'l C195 -> 'S 'o 'l 'g C196 -> 'S 'o 'l 'm C197 -> 'S 'o 'l 'b C198 -> 'S 'o 'l 's C199 -> 'S 'o 'l 't C19A -> 'S 'o 'l 'p C19B -> 'S 'o 'l 'h C19C -> 'S 'o 'm C19D -> 'S 'o 'b C19E -> 'S 'o 'b 's C19F -> 'S 'o 's C1A0 -> 'S 'o 's 's C1A1 -> 'S 'o 'n 'g C1A2 -> 'S 'o 'j C1A3 -> 'S 'o 'c 'h C1A4 -> 'S 'o 'k C1A5 -> 'S 'o 't C1A6 -> 'S 'o 'p C1A7 -> 'S 'o 'h C1A8 -> 'S 'o 'a C1A9 -> 'S 'o 'a 'g C1AA -> 'S 'o 'a 'g 'g C1AB -> 'S 'o 'a 'g 's C1AC -> 'S 'o 'a 'n C1AD -> 'S 'o 'a 'n 'j C1AE -> 'S 'o 'a 'n 'h C1AF -> 'S 'o 'a 'd C1B0 -> 'S 'o 'a 'l C1B1 -> 'S 'o 'a 'l 'g C1B2 -> 'S 'o 'a 'l 'm C1B3 -> 'S 'o 'a 'l 'b C1B4 -> 'S 'o 'a 'l 's C1B5 -> 'S 'o 'a 'l 't C1B6 -> 'S 'o 'a 'l 'p C1B7 -> 'S 'o 'a 'l 'h C1B8 -> 'S 'o 'a 'm C1B9 -> 'S 'o 'a 'b C1BA -> 'S 'o 'a 'b 's C1BB -> 'S 'o 'a 's C1BC -> 'S 'o 'a 's 's C1BD -> 'S 'o 'a 'n 'g C1BE -> 'S 'o 'a 'j C1BF -> 'S 'o 'a 'c 'h C1C0 -> 'S 'o 'a 'k C1C1 -> 'S 'o 'a 't C1C2 -> 'S 'o 'a 'p C1C3 -> 'S 'o 'a 'h C1C4 -> 'S 'o 'a 'e C1C5 -> 'S 'o 'a 'e 'g C1C6 -> 'S 'o 'a 'e 'g 'g C1C7 -> 'S 'o 'a 'e 'g 's C1C8 -> 'S 'o 'a 'e 'n C1C9 -> 'S 'o 'a 'e 'n 'j C1CA -> 'S 'o 'a 'e 'n 'h C1CB -> 'S 'o 'a 'e 'd C1CC -> 'S 'o 'a 'e 'l C1CD -> 'S 'o 'a 'e 'l 'g C1CE -> 'S 'o 'a 'e 'l 'm C1CF -> 'S 'o 'a 'e 'l 'b C1D0 -> 'S 'o 'a 'e 'l 's C1D1 -> 'S 'o 'a 'e 'l 't C1D2 -> 'S 'o 'a 'e 'l 'p C1D3 -> 'S 'o 'a 'e 'l 'h C1D4 -> 'S 'o 'a 'e 'm C1D5 -> 'S 'o 'a 'e 'b C1D6 -> 'S 'o 'a 'e 'b 's C1D7 -> 'S 'o 'a 'e 's C1D8 -> 'S 'o 'a 'e 's 's C1D9 -> 'S 'o 'a 'e 'n 'g C1DA -> 'S 'o 'a 'e 'j C1DB -> 'S 'o 'a 'e 'c 'h C1DC -> 'S 'o 'a 'e 'k C1DD -> 'S 'o 'a 'e 't C1DE -> 'S 'o 'a 'e 'p C1DF -> 'S 'o 'a 'e 'h C1E0 -> 'S 'o 'i C1E1 -> 'S 'o 'i 'g C1E2 -> 'S 'o 'i 'g 'g C1E3 -> 'S 'o 'i 'g 's C1E4 -> 'S 'o 'i 'n C1E5 -> 'S 'o 'i 'n 'j C1E6 -> 'S 'o 'i 'n 'h C1E7 -> 'S 'o 'i 'd C1E8 -> 'S 'o 'i 'l C1E9 -> 'S 'o 'i 'l 'g C1EA -> 'S 'o 'i 'l 'm C1EB -> 'S 'o 'i 'l 'b C1EC -> 'S 'o 'i 'l 's C1ED -> 'S 'o 'i 'l 't C1EE -> 'S 'o 'i 'l 'p C1EF -> 'S 'o 'i 'l 'h C1F0 -> 'S 'o 'i 'm C1F1 -> 'S 'o 'i 'b C1F2 -> 'S 'o 'i 'b 's C1F3 -> 'S 'o 'i 's C1F4 -> 'S 'o 'i 's 's C1F5 -> 'S 'o 'i 'n 'g C1F6 -> 'S 'o 'i 'j C1F7 -> 'S 'o 'i 'c 'h C1F8 -> 'S 'o 'i 'k C1F9 -> 'S 'o 'i 't C1FA -> 'S 'o 'i 'p C1FB -> 'S 'o 'i 'h C1FC -> 'S 'y 'o C1FD -> 'S 'y 'o 'g C1FE -> 'S 'y 'o 'g 'g C1FF -> 'S 'y 'o 'g 's C200 -> 'S 'y 'o 'n C201 -> 'S 'y 'o 'n 'j C202 -> 'S 'y 'o 'n 'h C203 -> 'S 'y 'o 'd C204 -> 'S 'y 'o 'l C205 -> 'S 'y 'o 'l 'g C206 -> 'S 'y 'o 'l 'm C207 -> 'S 'y 'o 'l 'b C208 -> 'S 'y 'o 'l 's C209 -> 'S 'y 'o 'l 't C20A -> 'S 'y 'o 'l 'p C20B -> 'S 'y 'o 'l 'h C20C -> 'S 'y 'o 'm C20D -> 'S 'y 'o 'b C20E -> 'S 'y 'o 'b 's C20F -> 'S 'y 'o 's C210 -> 'S 'y 'o 's 's C211 -> 'S 'y 'o 'n 'g C212 -> 'S 'y 'o 'j C213 -> 'S 'y 'o 'c 'h C214 -> 'S 'y 'o 'k C215 -> 'S 'y 'o 't C216 -> 'S 'y 'o 'p C217 -> 'S 'y 'o 'h C218 -> 'S 'u C219 -> 'S 'u 'g C21A -> 'S 'u 'g 'g C21B -> 'S 'u 'g 's C21C -> 'S 'u 'n C21D -> 'S 'u 'n 'j C21E -> 'S 'u 'n 'h C21F -> 'S 'u 'd C220 -> 'S 'u 'l C221 -> 'S 'u 'l 'g C222 -> 'S 'u 'l 'm C223 -> 'S 'u 'l 'b C224 -> 'S 'u 'l 's C225 -> 'S 'u 'l 't C226 -> 'S 'u 'l 'p C227 -> 'S 'u 'l 'h C228 -> 'S 'u 'm C229 -> 'S 'u 'b C22A -> 'S 'u 'b 's C22B -> 'S 'u 's C22C -> 'S 'u 's 's C22D -> 'S 'u 'n 'g C22E -> 'S 'u 'j C22F -> 'S 'u 'c 'h C230 -> 'S 'u 'k C231 -> 'S 'u 't C232 -> 'S 'u 'p C233 -> 'S 'u 'h C234 -> 'S 'u 'e 'o C235 -> 'S 'u 'e 'o 'g C236 -> 'S 'u 'e 'o 'g 'g C237 -> 'S 'u 'e 'o 'g 's C238 -> 'S 'u 'e 'o 'n C239 -> 'S 'u 'e 'o 'n 'j C23A -> 'S 'u 'e 'o 'n 'h C23B -> 'S 'u 'e 'o 'd C23C -> 'S 'u 'e 'o 'l C23D -> 'S 'u 'e 'o 'l 'g C23E -> 'S 'u 'e 'o 'l 'm C23F -> 'S 'u 'e 'o 'l 'b C240 -> 'S 'u 'e 'o 'l 's C241 -> 'S 'u 'e 'o 'l 't C242 -> 'S 'u 'e 'o 'l 'p C243 -> 'S 'u 'e 'o 'l 'h C244 -> 'S 'u 'e 'o 'm C245 -> 'S 'u 'e 'o 'b C246 -> 'S 'u 'e 'o 'b 's C247 -> 'S 'u 'e 'o 's C248 -> 'S 'u 'e 'o 's 's C249 -> 'S 'u 'e 'o 'n 'g C24A -> 'S 'u 'e 'o 'j C24B -> 'S 'u 'e 'o 'c 'h C24C -> 'S 'u 'e 'o 'k C24D -> 'S 'u 'e 'o 't C24E -> 'S 'u 'e 'o 'p C24F -> 'S 'u 'e 'o 'h C250 -> 'S 'u 'e C251 -> 'S 'u 'e 'g C252 -> 'S 'u 'e 'g 'g C253 -> 'S 'u 'e 'g 's C254 -> 'S 'u 'e 'n C255 -> 'S 'u 'e 'n 'j C256 -> 'S 'u 'e 'n 'h C257 -> 'S 'u 'e 'd C258 -> 'S 'u 'e 'l C259 -> 'S 'u 'e 'l 'g C25A -> 'S 'u 'e 'l 'm C25B -> 'S 'u 'e 'l 'b C25C -> 'S 'u 'e 'l 's C25D -> 'S 'u 'e 'l 't C25E -> 'S 'u 'e 'l 'p C25F -> 'S 'u 'e 'l 'h C260 -> 'S 'u 'e 'm C261 -> 'S 'u 'e 'b C262 -> 'S 'u 'e 'b 's C263 -> 'S 'u 'e 's C264 -> 'S 'u 'e 's 's C265 -> 'S 'u 'e 'n 'g C266 -> 'S 'u 'e 'j C267 -> 'S 'u 'e 'c 'h C268 -> 'S 'u 'e 'k C269 -> 'S 'u 'e 't C26A -> 'S 'u 'e 'p C26B -> 'S 'u 'e 'h C26C -> 'S 'u 'i C26D -> 'S 'u 'i 'g C26E -> 'S 'u 'i 'g 'g C26F -> 'S 'u 'i 'g 's C270 -> 'S 'u 'i 'n C271 -> 'S 'u 'i 'n 'j C272 -> 'S 'u 'i 'n 'h C273 -> 'S 'u 'i 'd C274 -> 'S 'u 'i 'l C275 -> 'S 'u 'i 'l 'g C276 -> 'S 'u 'i 'l 'm C277 -> 'S 'u 'i 'l 'b C278 -> 'S 'u 'i 'l 's C279 -> 'S 'u 'i 'l 't C27A -> 'S 'u 'i 'l 'p C27B -> 'S 'u 'i 'l 'h C27C -> 'S 'u 'i 'm C27D -> 'S 'u 'i 'b C27E -> 'S 'u 'i 'b 's C27F -> 'S 'u 'i 's C280 -> 'S 'u 'i 's 's C281 -> 'S 'u 'i 'n 'g C282 -> 'S 'u 'i 'j C283 -> 'S 'u 'i 'c 'h C284 -> 'S 'u 'i 'k C285 -> 'S 'u 'i 't C286 -> 'S 'u 'i 'p C287 -> 'S 'u 'i 'h C288 -> 'S 'y 'u C289 -> 'S 'y 'u 'g C28A -> 'S 'y 'u 'g 'g C28B -> 'S 'y 'u 'g 's C28C -> 'S 'y 'u 'n C28D -> 'S 'y 'u 'n 'j C28E -> 'S 'y 'u 'n 'h C28F -> 'S 'y 'u 'd C290 -> 'S 'y 'u 'l C291 -> 'S 'y 'u 'l 'g C292 -> 'S 'y 'u 'l 'm C293 -> 'S 'y 'u 'l 'b C294 -> 'S 'y 'u 'l 's C295 -> 'S 'y 'u 'l 't C296 -> 'S 'y 'u 'l 'p C297 -> 'S 'y 'u 'l 'h C298 -> 'S 'y 'u 'm C299 -> 'S 'y 'u 'b C29A -> 'S 'y 'u 'b 's C29B -> 'S 'y 'u 's C29C -> 'S 'y 'u 's 's C29D -> 'S 'y 'u 'n 'g C29E -> 'S 'y 'u 'j C29F -> 'S 'y 'u 'c 'h C2A0 -> 'S 'y 'u 'k C2A1 -> 'S 'y 'u 't C2A2 -> 'S 'y 'u 'p C2A3 -> 'S 'y 'u 'h C2A4 -> 'S 'e 'u C2A5 -> 'S 'e 'u 'g C2A6 -> 'S 'e 'u 'g 'g C2A7 -> 'S 'e 'u 'g 's C2A8 -> 'S 'e 'u 'n C2A9 -> 'S 'e 'u 'n 'j C2AA -> 'S 'e 'u 'n 'h C2AB -> 'S 'e 'u 'd C2AC -> 'S 'e 'u 'l C2AD -> 'S 'e 'u 'l 'g C2AE -> 'S 'e 'u 'l 'm C2AF -> 'S 'e 'u 'l 'b C2B0 -> 'S 'e 'u 'l 's C2B1 -> 'S 'e 'u 'l 't C2B2 -> 'S 'e 'u 'l 'p C2B3 -> 'S 'e 'u 'l 'h C2B4 -> 'S 'e 'u 'm C2B5 -> 'S 'e 'u 'b C2B6 -> 'S 'e 'u 'b 's C2B7 -> 'S 'e 'u 's C2B8 -> 'S 'e 'u 's 's C2B9 -> 'S 'e 'u 'n 'g C2BA -> 'S 'e 'u 'j C2BB -> 'S 'e 'u 'c 'h C2BC -> 'S 'e 'u 'k C2BD -> 'S 'e 'u 't C2BE -> 'S 'e 'u 'p C2BF -> 'S 'e 'u 'h C2C0 -> 'S 'e 'u 'i C2C1 -> 'S 'e 'u 'i 'g C2C2 -> 'S 'e 'u 'i 'g 'g C2C3 -> 'S 'e 'u 'i 'g 's C2C4 -> 'S 'e 'u 'i 'n C2C5 -> 'S 'e 'u 'i 'n 'j C2C6 -> 'S 'e 'u 'i 'n 'h C2C7 -> 'S 'e 'u 'i 'd C2C8 -> 'S 'e 'u 'i 'l C2C9 -> 'S 'e 'u 'i 'l 'g C2CA -> 'S 'e 'u 'i 'l 'm C2CB -> 'S 'e 'u 'i 'l 'b C2CC -> 'S 'e 'u 'i 'l 's C2CD -> 'S 'e 'u 'i 'l 't C2CE -> 'S 'e 'u 'i 'l 'p C2CF -> 'S 'e 'u 'i 'l 'h C2D0 -> 'S 'e 'u 'i 'm C2D1 -> 'S 'e 'u 'i 'b C2D2 -> 'S 'e 'u 'i 'b 's C2D3 -> 'S 'e 'u 'i 's C2D4 -> 'S 'e 'u 'i 's 's C2D5 -> 'S 'e 'u 'i 'n 'g C2D6 -> 'S 'e 'u 'i 'j C2D7 -> 'S 'e 'u 'i 'c 'h C2D8 -> 'S 'e 'u 'i 'k C2D9 -> 'S 'e 'u 'i 't C2DA -> 'S 'e 'u 'i 'p C2DB -> 'S 'e 'u 'i 'h C2DC -> 'S 'i C2DD -> 'S 'i 'g C2DE -> 'S 'i 'g 'g C2DF -> 'S 'i 'g 's C2E0 -> 'S 'i 'n C2E1 -> 'S 'i 'n 'j C2E2 -> 'S 'i 'n 'h C2E3 -> 'S 'i 'd C2E4 -> 'S 'i 'l C2E5 -> 'S 'i 'l 'g C2E6 -> 'S 'i 'l 'm C2E7 -> 'S 'i 'l 'b C2E8 -> 'S 'i 'l 's C2E9 -> 'S 'i 'l 't C2EA -> 'S 'i 'l 'p C2EB -> 'S 'i 'l 'h C2EC -> 'S 'i 'm C2ED -> 'S 'i 'b C2EE -> 'S 'i 'b 's C2EF -> 'S 'i 's C2F0 -> 'S 'i 's 's C2F1 -> 'S 'i 'n 'g C2F2 -> 'S 'i 'j C2F3 -> 'S 'i 'c 'h C2F4 -> 'S 'i 'k C2F5 -> 'S 'i 't C2F6 -> 'S 'i 'p C2F7 -> 'S 'i 'h C2F8 -> 'S 's 'a C2F9 -> 'S 's 'a 'g C2FA -> 'S 's 'a 'g 'g C2FB -> 'S 's 'a 'g 's C2FC -> 'S 's 'a 'n C2FD -> 'S 's 'a 'n 'j C2FE -> 'S 's 'a 'n 'h C2FF -> 'S 's 'a 'd C300 -> 'S 's 'a 'l C301 -> 'S 's 'a 'l 'g C302 -> 'S 's 'a 'l 'm C303 -> 'S 's 'a 'l 'b C304 -> 'S 's 'a 'l 's C305 -> 'S 's 'a 'l 't C306 -> 'S 's 'a 'l 'p C307 -> 'S 's 'a 'l 'h C308 -> 'S 's 'a 'm C309 -> 'S 's 'a 'b C30A -> 'S 's 'a 'b 's C30B -> 'S 's 'a 's C30C -> 'S 's 'a 's 's C30D -> 'S 's 'a 'n 'g C30E -> 'S 's 'a 'j C30F -> 'S 's 'a 'c 'h C310 -> 'S 's 'a 'k C311 -> 'S 's 'a 't C312 -> 'S 's 'a 'p C313 -> 'S 's 'a 'h C314 -> 'S 's 'a 'e C315 -> 'S 's 'a 'e 'g C316 -> 'S 's 'a 'e 'g 'g C317 -> 'S 's 'a 'e 'g 's C318 -> 'S 's 'a 'e 'n C319 -> 'S 's 'a 'e 'n 'j C31A -> 'S 's 'a 'e 'n 'h C31B -> 'S 's 'a 'e 'd C31C -> 'S 's 'a 'e 'l C31D -> 'S 's 'a 'e 'l 'g C31E -> 'S 's 'a 'e 'l 'm C31F -> 'S 's 'a 'e 'l 'b C320 -> 'S 's 'a 'e 'l 's C321 -> 'S 's 'a 'e 'l 't C322 -> 'S 's 'a 'e 'l 'p C323 -> 'S 's 'a 'e 'l 'h C324 -> 'S 's 'a 'e 'm C325 -> 'S 's 'a 'e 'b C326 -> 'S 's 'a 'e 'b 's C327 -> 'S 's 'a 'e 's C328 -> 'S 's 'a 'e 's 's C329 -> 'S 's 'a 'e 'n 'g C32A -> 'S 's 'a 'e 'j C32B -> 'S 's 'a 'e 'c 'h C32C -> 'S 's 'a 'e 'k C32D -> 'S 's 'a 'e 't C32E -> 'S 's 'a 'e 'p C32F -> 'S 's 'a 'e 'h C330 -> 'S 's 'y 'a C331 -> 'S 's 'y 'a 'g C332 -> 'S 's 'y 'a 'g 'g C333 -> 'S 's 'y 'a 'g 's C334 -> 'S 's 'y 'a 'n C335 -> 'S 's 'y 'a 'n 'j C336 -> 'S 's 'y 'a 'n 'h C337 -> 'S 's 'y 'a 'd C338 -> 'S 's 'y 'a 'l C339 -> 'S 's 'y 'a 'l 'g C33A -> 'S 's 'y 'a 'l 'm C33B -> 'S 's 'y 'a 'l 'b C33C -> 'S 's 'y 'a 'l 's C33D -> 'S 's 'y 'a 'l 't C33E -> 'S 's 'y 'a 'l 'p C33F -> 'S 's 'y 'a 'l 'h C340 -> 'S 's 'y 'a 'm C341 -> 'S 's 'y 'a 'b C342 -> 'S 's 'y 'a 'b 's C343 -> 'S 's 'y 'a 's C344 -> 'S 's 'y 'a 's 's C345 -> 'S 's 'y 'a 'n 'g C346 -> 'S 's 'y 'a 'j C347 -> 'S 's 'y 'a 'c 'h C348 -> 'S 's 'y 'a 'k C349 -> 'S 's 'y 'a 't C34A -> 'S 's 'y 'a 'p C34B -> 'S 's 'y 'a 'h C34C -> 'S 's 'y 'a 'e C34D -> 'S 's 'y 'a 'e 'g C34E -> 'S 's 'y 'a 'e 'g 'g C34F -> 'S 's 'y 'a 'e 'g 's C350 -> 'S 's 'y 'a 'e 'n C351 -> 'S 's 'y 'a 'e 'n 'j C352 -> 'S 's 'y 'a 'e 'n 'h C353 -> 'S 's 'y 'a 'e 'd C354 -> 'S 's 'y 'a 'e 'l C355 -> 'S 's 'y 'a 'e 'l 'g C356 -> 'S 's 'y 'a 'e 'l 'm C357 -> 'S 's 'y 'a 'e 'l 'b C358 -> 'S 's 'y 'a 'e 'l 's C359 -> 'S 's 'y 'a 'e 'l 't C35A -> 'S 's 'y 'a 'e 'l 'p C35B -> 'S 's 'y 'a 'e 'l 'h C35C -> 'S 's 'y 'a 'e 'm C35D -> 'S 's 'y 'a 'e 'b C35E -> 'S 's 'y 'a 'e 'b 's C35F -> 'S 's 'y 'a 'e 's C360 -> 'S 's 'y 'a 'e 's 's C361 -> 'S 's 'y 'a 'e 'n 'g C362 -> 'S 's 'y 'a 'e 'j C363 -> 'S 's 'y 'a 'e 'c 'h C364 -> 'S 's 'y 'a 'e 'k C365 -> 'S 's 'y 'a 'e 't C366 -> 'S 's 'y 'a 'e 'p C367 -> 'S 's 'y 'a 'e 'h C368 -> 'S 's 'e 'o C369 -> 'S 's 'e 'o 'g C36A -> 'S 's 'e 'o 'g 'g C36B -> 'S 's 'e 'o 'g 's C36C -> 'S 's 'e 'o 'n C36D -> 'S 's 'e 'o 'n 'j C36E -> 'S 's 'e 'o 'n 'h C36F -> 'S 's 'e 'o 'd C370 -> 'S 's 'e 'o 'l C371 -> 'S 's 'e 'o 'l 'g C372 -> 'S 's 'e 'o 'l 'm C373 -> 'S 's 'e 'o 'l 'b C374 -> 'S 's 'e 'o 'l 's C375 -> 'S 's 'e 'o 'l 't C376 -> 'S 's 'e 'o 'l 'p C377 -> 'S 's 'e 'o 'l 'h C378 -> 'S 's 'e 'o 'm C379 -> 'S 's 'e 'o 'b C37A -> 'S 's 'e 'o 'b 's C37B -> 'S 's 'e 'o 's C37C -> 'S 's 'e 'o 's 's C37D -> 'S 's 'e 'o 'n 'g C37E -> 'S 's 'e 'o 'j C37F -> 'S 's 'e 'o 'c 'h C380 -> 'S 's 'e 'o 'k C381 -> 'S 's 'e 'o 't C382 -> 'S 's 'e 'o 'p C383 -> 'S 's 'e 'o 'h C384 -> 'S 's 'e C385 -> 'S 's 'e 'g C386 -> 'S 's 'e 'g 'g C387 -> 'S 's 'e 'g 's C388 -> 'S 's 'e 'n C389 -> 'S 's 'e 'n 'j C38A -> 'S 's 'e 'n 'h C38B -> 'S 's 'e 'd C38C -> 'S 's 'e 'l C38D -> 'S 's 'e 'l 'g C38E -> 'S 's 'e 'l 'm C38F -> 'S 's 'e 'l 'b C390 -> 'S 's 'e 'l 's C391 -> 'S 's 'e 'l 't C392 -> 'S 's 'e 'l 'p C393 -> 'S 's 'e 'l 'h C394 -> 'S 's 'e 'm C395 -> 'S 's 'e 'b C396 -> 'S 's 'e 'b 's C397 -> 'S 's 'e 's C398 -> 'S 's 'e 's 's C399 -> 'S 's 'e 'n 'g C39A -> 'S 's 'e 'j C39B -> 'S 's 'e 'c 'h C39C -> 'S 's 'e 'k C39D -> 'S 's 'e 't C39E -> 'S 's 'e 'p C39F -> 'S 's 'e 'h C3A0 -> 'S 's 'y 'e 'o C3A1 -> 'S 's 'y 'e 'o 'g C3A2 -> 'S 's 'y 'e 'o 'g 'g C3A3 -> 'S 's 'y 'e 'o 'g 's C3A4 -> 'S 's 'y 'e 'o 'n C3A5 -> 'S 's 'y 'e 'o 'n 'j C3A6 -> 'S 's 'y 'e 'o 'n 'h C3A7 -> 'S 's 'y 'e 'o 'd C3A8 -> 'S 's 'y 'e 'o 'l C3A9 -> 'S 's 'y 'e 'o 'l 'g C3AA -> 'S 's 'y 'e 'o 'l 'm C3AB -> 'S 's 'y 'e 'o 'l 'b C3AC -> 'S 's 'y 'e 'o 'l 's C3AD -> 'S 's 'y 'e 'o 'l 't C3AE -> 'S 's 'y 'e 'o 'l 'p C3AF -> 'S 's 'y 'e 'o 'l 'h C3B0 -> 'S 's 'y 'e 'o 'm C3B1 -> 'S 's 'y 'e 'o 'b C3B2 -> 'S 's 'y 'e 'o 'b 's C3B3 -> 'S 's 'y 'e 'o 's C3B4 -> 'S 's 'y 'e 'o 's 's C3B5 -> 'S 's 'y 'e 'o 'n 'g C3B6 -> 'S 's 'y 'e 'o 'j C3B7 -> 'S 's 'y 'e 'o 'c 'h C3B8 -> 'S 's 'y 'e 'o 'k C3B9 -> 'S 's 'y 'e 'o 't C3BA -> 'S 's 'y 'e 'o 'p C3BB -> 'S 's 'y 'e 'o 'h C3BC -> 'S 's 'y 'e C3BD -> 'S 's 'y 'e 'g C3BE -> 'S 's 'y 'e 'g 'g C3BF -> 'S 's 'y 'e 'g 's C3C0 -> 'S 's 'y 'e 'n C3C1 -> 'S 's 'y 'e 'n 'j C3C2 -> 'S 's 'y 'e 'n 'h C3C3 -> 'S 's 'y 'e 'd C3C4 -> 'S 's 'y 'e 'l C3C5 -> 'S 's 'y 'e 'l 'g C3C6 -> 'S 's 'y 'e 'l 'm C3C7 -> 'S 's 'y 'e 'l 'b C3C8 -> 'S 's 'y 'e 'l 's C3C9 -> 'S 's 'y 'e 'l 't C3CA -> 'S 's 'y 'e 'l 'p C3CB -> 'S 's 'y 'e 'l 'h C3CC -> 'S 's 'y 'e 'm C3CD -> 'S 's 'y 'e 'b C3CE -> 'S 's 'y 'e 'b 's C3CF -> 'S 's 'y 'e 's C3D0 -> 'S 's 'y 'e 's 's C3D1 -> 'S 's 'y 'e 'n 'g C3D2 -> 'S 's 'y 'e 'j C3D3 -> 'S 's 'y 'e 'c 'h C3D4 -> 'S 's 'y 'e 'k C3D5 -> 'S 's 'y 'e 't C3D6 -> 'S 's 'y 'e 'p C3D7 -> 'S 's 'y 'e 'h C3D8 -> 'S 's 'o C3D9 -> 'S 's 'o 'g C3DA -> 'S 's 'o 'g 'g C3DB -> 'S 's 'o 'g 's C3DC -> 'S 's 'o 'n C3DD -> 'S 's 'o 'n 'j C3DE -> 'S 's 'o 'n 'h C3DF -> 'S 's 'o 'd C3E0 -> 'S 's 'o 'l C3E1 -> 'S 's 'o 'l 'g C3E2 -> 'S 's 'o 'l 'm C3E3 -> 'S 's 'o 'l 'b C3E4 -> 'S 's 'o 'l 's C3E5 -> 'S 's 'o 'l 't C3E6 -> 'S 's 'o 'l 'p C3E7 -> 'S 's 'o 'l 'h C3E8 -> 'S 's 'o 'm C3E9 -> 'S 's 'o 'b C3EA -> 'S 's 'o 'b 's C3EB -> 'S 's 'o 's C3EC -> 'S 's 'o 's 's C3ED -> 'S 's 'o 'n 'g C3EE -> 'S 's 'o 'j C3EF -> 'S 's 'o 'c 'h C3F0 -> 'S 's 'o 'k C3F1 -> 'S 's 'o 't C3F2 -> 'S 's 'o 'p C3F3 -> 'S 's 'o 'h C3F4 -> 'S 's 'o 'a C3F5 -> 'S 's 'o 'a 'g C3F6 -> 'S 's 'o 'a 'g 'g C3F7 -> 'S 's 'o 'a 'g 's C3F8 -> 'S 's 'o 'a 'n C3F9 -> 'S 's 'o 'a 'n 'j C3FA -> 'S 's 'o 'a 'n 'h C3FB -> 'S 's 'o 'a 'd C3FC -> 'S 's 'o 'a 'l C3FD -> 'S 's 'o 'a 'l 'g C3FE -> 'S 's 'o 'a 'l 'm C3FF -> 'S 's 'o 'a 'l 'b C400 -> 'S 's 'o 'a 'l 's C401 -> 'S 's 'o 'a 'l 't C402 -> 'S 's 'o 'a 'l 'p C403 -> 'S 's 'o 'a 'l 'h C404 -> 'S 's 'o 'a 'm C405 -> 'S 's 'o 'a 'b C406 -> 'S 's 'o 'a 'b 's C407 -> 'S 's 'o 'a 's C408 -> 'S 's 'o 'a 's 's C409 -> 'S 's 'o 'a 'n 'g C40A -> 'S 's 'o 'a 'j C40B -> 'S 's 'o 'a 'c 'h C40C -> 'S 's 'o 'a 'k C40D -> 'S 's 'o 'a 't C40E -> 'S 's 'o 'a 'p C40F -> 'S 's 'o 'a 'h C410 -> 'S 's 'o 'a 'e C411 -> 'S 's 'o 'a 'e 'g C412 -> 'S 's 'o 'a 'e 'g 'g C413 -> 'S 's 'o 'a 'e 'g 's C414 -> 'S 's 'o 'a 'e 'n C415 -> 'S 's 'o 'a 'e 'n 'j C416 -> 'S 's 'o 'a 'e 'n 'h C417 -> 'S 's 'o 'a 'e 'd C418 -> 'S 's 'o 'a 'e 'l C419 -> 'S 's 'o 'a 'e 'l 'g C41A -> 'S 's 'o 'a 'e 'l 'm C41B -> 'S 's 'o 'a 'e 'l 'b C41C -> 'S 's 'o 'a 'e 'l 's C41D -> 'S 's 'o 'a 'e 'l 't C41E -> 'S 's 'o 'a 'e 'l 'p C41F -> 'S 's 'o 'a 'e 'l 'h C420 -> 'S 's 'o 'a 'e 'm C421 -> 'S 's 'o 'a 'e 'b C422 -> 'S 's 'o 'a 'e 'b 's C423 -> 'S 's 'o 'a 'e 's C424 -> 'S 's 'o 'a 'e 's 's C425 -> 'S 's 'o 'a 'e 'n 'g C426 -> 'S 's 'o 'a 'e 'j C427 -> 'S 's 'o 'a 'e 'c 'h C428 -> 'S 's 'o 'a 'e 'k C429 -> 'S 's 'o 'a 'e 't C42A -> 'S 's 'o 'a 'e 'p C42B -> 'S 's 'o 'a 'e 'h C42C -> 'S 's 'o 'i C42D -> 'S 's 'o 'i 'g C42E -> 'S 's 'o 'i 'g 'g C42F -> 'S 's 'o 'i 'g 's C430 -> 'S 's 'o 'i 'n C431 -> 'S 's 'o 'i 'n 'j C432 -> 'S 's 'o 'i 'n 'h C433 -> 'S 's 'o 'i 'd C434 -> 'S 's 'o 'i 'l C435 -> 'S 's 'o 'i 'l 'g C436 -> 'S 's 'o 'i 'l 'm C437 -> 'S 's 'o 'i 'l 'b C438 -> 'S 's 'o 'i 'l 's C439 -> 'S 's 'o 'i 'l 't C43A -> 'S 's 'o 'i 'l 'p C43B -> 'S 's 'o 'i 'l 'h C43C -> 'S 's 'o 'i 'm C43D -> 'S 's 'o 'i 'b C43E -> 'S 's 'o 'i 'b 's C43F -> 'S 's 'o 'i 's C440 -> 'S 's 'o 'i 's 's C441 -> 'S 's 'o 'i 'n 'g C442 -> 'S 's 'o 'i 'j C443 -> 'S 's 'o 'i 'c 'h C444 -> 'S 's 'o 'i 'k C445 -> 'S 's 'o 'i 't C446 -> 'S 's 'o 'i 'p C447 -> 'S 's 'o 'i 'h C448 -> 'S 's 'y 'o C449 -> 'S 's 'y 'o 'g C44A -> 'S 's 'y 'o 'g 'g C44B -> 'S 's 'y 'o 'g 's C44C -> 'S 's 'y 'o 'n C44D -> 'S 's 'y 'o 'n 'j C44E -> 'S 's 'y 'o 'n 'h C44F -> 'S 's 'y 'o 'd C450 -> 'S 's 'y 'o 'l C451 -> 'S 's 'y 'o 'l 'g C452 -> 'S 's 'y 'o 'l 'm C453 -> 'S 's 'y 'o 'l 'b C454 -> 'S 's 'y 'o 'l 's C455 -> 'S 's 'y 'o 'l 't C456 -> 'S 's 'y 'o 'l 'p C457 -> 'S 's 'y 'o 'l 'h C458 -> 'S 's 'y 'o 'm C459 -> 'S 's 'y 'o 'b C45A -> 'S 's 'y 'o 'b 's C45B -> 'S 's 'y 'o 's C45C -> 'S 's 'y 'o 's 's C45D -> 'S 's 'y 'o 'n 'g C45E -> 'S 's 'y 'o 'j C45F -> 'S 's 'y 'o 'c 'h C460 -> 'S 's 'y 'o 'k C461 -> 'S 's 'y 'o 't C462 -> 'S 's 'y 'o 'p C463 -> 'S 's 'y 'o 'h C464 -> 'S 's 'u C465 -> 'S 's 'u 'g C466 -> 'S 's 'u 'g 'g C467 -> 'S 's 'u 'g 's C468 -> 'S 's 'u 'n C469 -> 'S 's 'u 'n 'j C46A -> 'S 's 'u 'n 'h C46B -> 'S 's 'u 'd C46C -> 'S 's 'u 'l C46D -> 'S 's 'u 'l 'g C46E -> 'S 's 'u 'l 'm C46F -> 'S 's 'u 'l 'b C470 -> 'S 's 'u 'l 's C471 -> 'S 's 'u 'l 't C472 -> 'S 's 'u 'l 'p C473 -> 'S 's 'u 'l 'h C474 -> 'S 's 'u 'm C475 -> 'S 's 'u 'b C476 -> 'S 's 'u 'b 's C477 -> 'S 's 'u 's C478 -> 'S 's 'u 's 's C479 -> 'S 's 'u 'n 'g C47A -> 'S 's 'u 'j C47B -> 'S 's 'u 'c 'h C47C -> 'S 's 'u 'k C47D -> 'S 's 'u 't C47E -> 'S 's 'u 'p C47F -> 'S 's 'u 'h C480 -> 'S 's 'u 'e 'o C481 -> 'S 's 'u 'e 'o 'g C482 -> 'S 's 'u 'e 'o 'g 'g C483 -> 'S 's 'u 'e 'o 'g 's C484 -> 'S 's 'u 'e 'o 'n C485 -> 'S 's 'u 'e 'o 'n 'j C486 -> 'S 's 'u 'e 'o 'n 'h C487 -> 'S 's 'u 'e 'o 'd C488 -> 'S 's 'u 'e 'o 'l C489 -> 'S 's 'u 'e 'o 'l 'g C48A -> 'S 's 'u 'e 'o 'l 'm C48B -> 'S 's 'u 'e 'o 'l 'b C48C -> 'S 's 'u 'e 'o 'l 's C48D -> 'S 's 'u 'e 'o 'l 't C48E -> 'S 's 'u 'e 'o 'l 'p C48F -> 'S 's 'u 'e 'o 'l 'h C490 -> 'S 's 'u 'e 'o 'm C491 -> 'S 's 'u 'e 'o 'b C492 -> 'S 's 'u 'e 'o 'b 's C493 -> 'S 's 'u 'e 'o 's C494 -> 'S 's 'u 'e 'o 's 's C495 -> 'S 's 'u 'e 'o 'n 'g C496 -> 'S 's 'u 'e 'o 'j C497 -> 'S 's 'u 'e 'o 'c 'h C498 -> 'S 's 'u 'e 'o 'k C499 -> 'S 's 'u 'e 'o 't C49A -> 'S 's 'u 'e 'o 'p C49B -> 'S 's 'u 'e 'o 'h C49C -> 'S 's 'u 'e C49D -> 'S 's 'u 'e 'g C49E -> 'S 's 'u 'e 'g 'g C49F -> 'S 's 'u 'e 'g 's C4A0 -> 'S 's 'u 'e 'n C4A1 -> 'S 's 'u 'e 'n 'j C4A2 -> 'S 's 'u 'e 'n 'h C4A3 -> 'S 's 'u 'e 'd C4A4 -> 'S 's 'u 'e 'l C4A5 -> 'S 's 'u 'e 'l 'g C4A6 -> 'S 's 'u 'e 'l 'm C4A7 -> 'S 's 'u 'e 'l 'b C4A8 -> 'S 's 'u 'e 'l 's C4A9 -> 'S 's 'u 'e 'l 't C4AA -> 'S 's 'u 'e 'l 'p C4AB -> 'S 's 'u 'e 'l 'h C4AC -> 'S 's 'u 'e 'm C4AD -> 'S 's 'u 'e 'b C4AE -> 'S 's 'u 'e 'b 's C4AF -> 'S 's 'u 'e 's C4B0 -> 'S 's 'u 'e 's 's C4B1 -> 'S 's 'u 'e 'n 'g C4B2 -> 'S 's 'u 'e 'j C4B3 -> 'S 's 'u 'e 'c 'h C4B4 -> 'S 's 'u 'e 'k C4B5 -> 'S 's 'u 'e 't C4B6 -> 'S 's 'u 'e 'p C4B7 -> 'S 's 'u 'e 'h C4B8 -> 'S 's 'u 'i C4B9 -> 'S 's 'u 'i 'g C4BA -> 'S 's 'u 'i 'g 'g C4BB -> 'S 's 'u 'i 'g 's C4BC -> 'S 's 'u 'i 'n C4BD -> 'S 's 'u 'i 'n 'j C4BE -> 'S 's 'u 'i 'n 'h C4BF -> 'S 's 'u 'i 'd C4C0 -> 'S 's 'u 'i 'l C4C1 -> 'S 's 'u 'i 'l 'g C4C2 -> 'S 's 'u 'i 'l 'm C4C3 -> 'S 's 'u 'i 'l 'b C4C4 -> 'S 's 'u 'i 'l 's C4C5 -> 'S 's 'u 'i 'l 't C4C6 -> 'S 's 'u 'i 'l 'p C4C7 -> 'S 's 'u 'i 'l 'h C4C8 -> 'S 's 'u 'i 'm C4C9 -> 'S 's 'u 'i 'b C4CA -> 'S 's 'u 'i 'b 's C4CB -> 'S 's 'u 'i 's C4CC -> 'S 's 'u 'i 's 's C4CD -> 'S 's 'u 'i 'n 'g C4CE -> 'S 's 'u 'i 'j C4CF -> 'S 's 'u 'i 'c 'h C4D0 -> 'S 's 'u 'i 'k C4D1 -> 'S 's 'u 'i 't C4D2 -> 'S 's 'u 'i 'p C4D3 -> 'S 's 'u 'i 'h C4D4 -> 'S 's 'y 'u C4D5 -> 'S 's 'y 'u 'g C4D6 -> 'S 's 'y 'u 'g 'g C4D7 -> 'S 's 'y 'u 'g 's C4D8 -> 'S 's 'y 'u 'n C4D9 -> 'S 's 'y 'u 'n 'j C4DA -> 'S 's 'y 'u 'n 'h C4DB -> 'S 's 'y 'u 'd C4DC -> 'S 's 'y 'u 'l C4DD -> 'S 's 'y 'u 'l 'g C4DE -> 'S 's 'y 'u 'l 'm C4DF -> 'S 's 'y 'u 'l 'b C4E0 -> 'S 's 'y 'u 'l 's C4E1 -> 'S 's 'y 'u 'l 't C4E2 -> 'S 's 'y 'u 'l 'p C4E3 -> 'S 's 'y 'u 'l 'h C4E4 -> 'S 's 'y 'u 'm C4E5 -> 'S 's 'y 'u 'b C4E6 -> 'S 's 'y 'u 'b 's C4E7 -> 'S 's 'y 'u 's C4E8 -> 'S 's 'y 'u 's 's C4E9 -> 'S 's 'y 'u 'n 'g C4EA -> 'S 's 'y 'u 'j C4EB -> 'S 's 'y 'u 'c 'h C4EC -> 'S 's 'y 'u 'k C4ED -> 'S 's 'y 'u 't C4EE -> 'S 's 'y 'u 'p C4EF -> 'S 's 'y 'u 'h C4F0 -> 'S 's 'e 'u C4F1 -> 'S 's 'e 'u 'g C4F2 -> 'S 's 'e 'u 'g 'g C4F3 -> 'S 's 'e 'u 'g 's C4F4 -> 'S 's 'e 'u 'n C4F5 -> 'S 's 'e 'u 'n 'j C4F6 -> 'S 's 'e 'u 'n 'h C4F7 -> 'S 's 'e 'u 'd C4F8 -> 'S 's 'e 'u 'l C4F9 -> 'S 's 'e 'u 'l 'g C4FA -> 'S 's 'e 'u 'l 'm C4FB -> 'S 's 'e 'u 'l 'b C4FC -> 'S 's 'e 'u 'l 's C4FD -> 'S 's 'e 'u 'l 't C4FE -> 'S 's 'e 'u 'l 'p C4FF -> 'S 's 'e 'u 'l 'h C500 -> 'S 's 'e 'u 'm C501 -> 'S 's 'e 'u 'b C502 -> 'S 's 'e 'u 'b 's C503 -> 'S 's 'e 'u 's C504 -> 'S 's 'e 'u 's 's C505 -> 'S 's 'e 'u 'n 'g C506 -> 'S 's 'e 'u 'j C507 -> 'S 's 'e 'u 'c 'h C508 -> 'S 's 'e 'u 'k C509 -> 'S 's 'e 'u 't C50A -> 'S 's 'e 'u 'p C50B -> 'S 's 'e 'u 'h C50C -> 'S 's 'e 'u 'i C50D -> 'S 's 'e 'u 'i 'g C50E -> 'S 's 'e 'u 'i 'g 'g C50F -> 'S 's 'e 'u 'i 'g 's C510 -> 'S 's 'e 'u 'i 'n C511 -> 'S 's 'e 'u 'i 'n 'j C512 -> 'S 's 'e 'u 'i 'n 'h C513 -> 'S 's 'e 'u 'i 'd C514 -> 'S 's 'e 'u 'i 'l C515 -> 'S 's 'e 'u 'i 'l 'g C516 -> 'S 's 'e 'u 'i 'l 'm C517 -> 'S 's 'e 'u 'i 'l 'b C518 -> 'S 's 'e 'u 'i 'l 's C519 -> 'S 's 'e 'u 'i 'l 't C51A -> 'S 's 'e 'u 'i 'l 'p C51B -> 'S 's 'e 'u 'i 'l 'h C51C -> 'S 's 'e 'u 'i 'm C51D -> 'S 's 'e 'u 'i 'b C51E -> 'S 's 'e 'u 'i 'b 's C51F -> 'S 's 'e 'u 'i 's C520 -> 'S 's 'e 'u 'i 's 's C521 -> 'S 's 'e 'u 'i 'n 'g C522 -> 'S 's 'e 'u 'i 'j C523 -> 'S 's 'e 'u 'i 'c 'h C524 -> 'S 's 'e 'u 'i 'k C525 -> 'S 's 'e 'u 'i 't C526 -> 'S 's 'e 'u 'i 'p C527 -> 'S 's 'e 'u 'i 'h C528 -> 'S 's 'i C529 -> 'S 's 'i 'g C52A -> 'S 's 'i 'g 'g C52B -> 'S 's 'i 'g 's C52C -> 'S 's 'i 'n C52D -> 'S 's 'i 'n 'j C52E -> 'S 's 'i 'n 'h C52F -> 'S 's 'i 'd C530 -> 'S 's 'i 'l C531 -> 'S 's 'i 'l 'g C532 -> 'S 's 'i 'l 'm C533 -> 'S 's 'i 'l 'b C534 -> 'S 's 'i 'l 's C535 -> 'S 's 'i 'l 't C536 -> 'S 's 'i 'l 'p C537 -> 'S 's 'i 'l 'h C538 -> 'S 's 'i 'm C539 -> 'S 's 'i 'b C53A -> 'S 's 'i 'b 's C53B -> 'S 's 'i 's C53C -> 'S 's 'i 's 's C53D -> 'S 's 'i 'n 'g C53E -> 'S 's 'i 'j C53F -> 'S 's 'i 'c 'h C540 -> 'S 's 'i 'k C541 -> 'S 's 'i 't C542 -> 'S 's 'i 'p C543 -> 'S 's 'i 'h C544 -> 'A C545 -> 'A 'g C546 -> 'A 'g 'g C547 -> 'A 'g 's C548 -> 'A 'n C549 -> 'A 'n 'j C54A -> 'A 'n 'h C54B -> 'A 'd C54C -> 'A 'l C54D -> 'A 'l 'g C54E -> 'A 'l 'm C54F -> 'A 'l 'b C550 -> 'A 'l 's C551 -> 'A 'l 't C552 -> 'A 'l 'p C553 -> 'A 'l 'h C554 -> 'A 'm C555 -> 'A 'b C556 -> 'A 'b 's C557 -> 'A 's C558 -> 'A 's 's C559 -> 'A 'n 'g C55A -> 'A 'j C55B -> 'A 'c 'h C55C -> 'A 'k C55D -> 'A 't C55E -> 'A 'p C55F -> 'A 'h C560 -> 'A 'e C561 -> 'A 'e 'g C562 -> 'A 'e 'g 'g C563 -> 'A 'e 'g 's C564 -> 'A 'e 'n C565 -> 'A 'e 'n 'j C566 -> 'A 'e 'n 'h C567 -> 'A 'e 'd C568 -> 'A 'e 'l C569 -> 'A 'e 'l 'g C56A -> 'A 'e 'l 'm C56B -> 'A 'e 'l 'b C56C -> 'A 'e 'l 's C56D -> 'A 'e 'l 't C56E -> 'A 'e 'l 'p C56F -> 'A 'e 'l 'h C570 -> 'A 'e 'm C571 -> 'A 'e 'b C572 -> 'A 'e 'b 's C573 -> 'A 'e 's C574 -> 'A 'e 's 's C575 -> 'A 'e 'n 'g C576 -> 'A 'e 'j C577 -> 'A 'e 'c 'h C578 -> 'A 'e 'k C579 -> 'A 'e 't C57A -> 'A 'e 'p C57B -> 'A 'e 'h C57C -> 'Y 'a C57D -> 'Y 'a 'g C57E -> 'Y 'a 'g 'g C57F -> 'Y 'a 'g 's C580 -> 'Y 'a 'n C581 -> 'Y 'a 'n 'j C582 -> 'Y 'a 'n 'h C583 -> 'Y 'a 'd C584 -> 'Y 'a 'l C585 -> 'Y 'a 'l 'g C586 -> 'Y 'a 'l 'm C587 -> 'Y 'a 'l 'b C588 -> 'Y 'a 'l 's C589 -> 'Y 'a 'l 't C58A -> 'Y 'a 'l 'p C58B -> 'Y 'a 'l 'h C58C -> 'Y 'a 'm C58D -> 'Y 'a 'b C58E -> 'Y 'a 'b 's C58F -> 'Y 'a 's C590 -> 'Y 'a 's 's C591 -> 'Y 'a 'n 'g C592 -> 'Y 'a 'j C593 -> 'Y 'a 'c 'h C594 -> 'Y 'a 'k C595 -> 'Y 'a 't C596 -> 'Y 'a 'p C597 -> 'Y 'a 'h C598 -> 'Y 'a 'e C599 -> 'Y 'a 'e 'g C59A -> 'Y 'a 'e 'g 'g C59B -> 'Y 'a 'e 'g 's C59C -> 'Y 'a 'e 'n C59D -> 'Y 'a 'e 'n 'j C59E -> 'Y 'a 'e 'n 'h C59F -> 'Y 'a 'e 'd C5A0 -> 'Y 'a 'e 'l C5A1 -> 'Y 'a 'e 'l 'g C5A2 -> 'Y 'a 'e 'l 'm C5A3 -> 'Y 'a 'e 'l 'b C5A4 -> 'Y 'a 'e 'l 's C5A5 -> 'Y 'a 'e 'l 't C5A6 -> 'Y 'a 'e 'l 'p C5A7 -> 'Y 'a 'e 'l 'h C5A8 -> 'Y 'a 'e 'm C5A9 -> 'Y 'a 'e 'b C5AA -> 'Y 'a 'e 'b 's C5AB -> 'Y 'a 'e 's C5AC -> 'Y 'a 'e 's 's C5AD -> 'Y 'a 'e 'n 'g C5AE -> 'Y 'a 'e 'j C5AF -> 'Y 'a 'e 'c 'h C5B0 -> 'Y 'a 'e 'k C5B1 -> 'Y 'a 'e 't C5B2 -> 'Y 'a 'e 'p C5B3 -> 'Y 'a 'e 'h C5B4 -> 'E 'o C5B5 -> 'E 'o 'g C5B6 -> 'E 'o 'g 'g C5B7 -> 'E 'o 'g 's C5B8 -> 'E 'o 'n C5B9 -> 'E 'o 'n 'j C5BA -> 'E 'o 'n 'h C5BB -> 'E 'o 'd C5BC -> 'E 'o 'l C5BD -> 'E 'o 'l 'g C5BE -> 'E 'o 'l 'm C5BF -> 'E 'o 'l 'b C5C0 -> 'E 'o 'l 's C5C1 -> 'E 'o 'l 't C5C2 -> 'E 'o 'l 'p C5C3 -> 'E 'o 'l 'h C5C4 -> 'E 'o 'm C5C5 -> 'E 'o 'b C5C6 -> 'E 'o 'b 's C5C7 -> 'E 'o 's C5C8 -> 'E 'o 's 's C5C9 -> 'E 'o 'n 'g C5CA -> 'E 'o 'j C5CB -> 'E 'o 'c 'h C5CC -> 'E 'o 'k C5CD -> 'E 'o 't C5CE -> 'E 'o 'p C5CF -> 'E 'o 'h C5D0 -> 'E C5D1 -> 'E 'g C5D2 -> 'E 'g 'g C5D3 -> 'E 'g 's C5D4 -> 'E 'n C5D5 -> 'E 'n 'j C5D6 -> 'E 'n 'h C5D7 -> 'E 'd C5D8 -> 'E 'l C5D9 -> 'E 'l 'g C5DA -> 'E 'l 'm C5DB -> 'E 'l 'b C5DC -> 'E 'l 's C5DD -> 'E 'l 't C5DE -> 'E 'l 'p C5DF -> 'E 'l 'h C5E0 -> 'E 'm C5E1 -> 'E 'b C5E2 -> 'E 'b 's C5E3 -> 'E 's C5E4 -> 'E 's 's C5E5 -> 'E 'n 'g C5E6 -> 'E 'j C5E7 -> 'E 'c 'h C5E8 -> 'E 'k C5E9 -> 'E 't C5EA -> 'E 'p C5EB -> 'E 'h C5EC -> 'Y 'e 'o C5ED -> 'Y 'e 'o 'g C5EE -> 'Y 'e 'o 'g 'g C5EF -> 'Y 'e 'o 'g 's C5F0 -> 'Y 'e 'o 'n C5F1 -> 'Y 'e 'o 'n 'j C5F2 -> 'Y 'e 'o 'n 'h C5F3 -> 'Y 'e 'o 'd C5F4 -> 'Y 'e 'o 'l C5F5 -> 'Y 'e 'o 'l 'g C5F6 -> 'Y 'e 'o 'l 'm C5F7 -> 'Y 'e 'o 'l 'b C5F8 -> 'Y 'e 'o 'l 's C5F9 -> 'Y 'e 'o 'l 't C5FA -> 'Y 'e 'o 'l 'p C5FB -> 'Y 'e 'o 'l 'h C5FC -> 'Y 'e 'o 'm C5FD -> 'Y 'e 'o 'b C5FE -> 'Y 'e 'o 'b 's C5FF -> 'Y 'e 'o 's C600 -> 'Y 'e 'o 's 's C601 -> 'Y 'e 'o 'n 'g C602 -> 'Y 'e 'o 'j C603 -> 'Y 'e 'o 'c 'h C604 -> 'Y 'e 'o 'k C605 -> 'Y 'e 'o 't C606 -> 'Y 'e 'o 'p C607 -> 'Y 'e 'o 'h C608 -> 'Y 'e C609 -> 'Y 'e 'g C60A -> 'Y 'e 'g 'g C60B -> 'Y 'e 'g 's C60C -> 'Y 'e 'n C60D -> 'Y 'e 'n 'j C60E -> 'Y 'e 'n 'h C60F -> 'Y 'e 'd C610 -> 'Y 'e 'l C611 -> 'Y 'e 'l 'g C612 -> 'Y 'e 'l 'm C613 -> 'Y 'e 'l 'b C614 -> 'Y 'e 'l 's C615 -> 'Y 'e 'l 't C616 -> 'Y 'e 'l 'p C617 -> 'Y 'e 'l 'h C618 -> 'Y 'e 'm C619 -> 'Y 'e 'b C61A -> 'Y 'e 'b 's C61B -> 'Y 'e 's C61C -> 'Y 'e 's 's C61D -> 'Y 'e 'n 'g C61E -> 'Y 'e 'j C61F -> 'Y 'e 'c 'h C620 -> 'Y 'e 'k C621 -> 'Y 'e 't C622 -> 'Y 'e 'p C623 -> 'Y 'e 'h C624 -> 'O C625 -> 'O 'g C626 -> 'O 'g 'g C627 -> 'O 'g 's C628 -> 'O 'n C629 -> 'O 'n 'j C62A -> 'O 'n 'h C62B -> 'O 'd C62C -> 'O 'l C62D -> 'O 'l 'g C62E -> 'O 'l 'm C62F -> 'O 'l 'b C630 -> 'O 'l 's C631 -> 'O 'l 't C632 -> 'O 'l 'p C633 -> 'O 'l 'h C634 -> 'O 'm C635 -> 'O 'b C636 -> 'O 'b 's C637 -> 'O 's C638 -> 'O 's 's C639 -> 'O 'n 'g C63A -> 'O 'j C63B -> 'O 'c 'h C63C -> 'O 'k C63D -> 'O 't C63E -> 'O 'p C63F -> 'O 'h C640 -> 'O 'a C641 -> 'O 'a 'g C642 -> 'O 'a 'g 'g C643 -> 'O 'a 'g 's C644 -> 'O 'a 'n C645 -> 'O 'a 'n 'j C646 -> 'O 'a 'n 'h C647 -> 'O 'a 'd C648 -> 'O 'a 'l C649 -> 'O 'a 'l 'g C64A -> 'O 'a 'l 'm C64B -> 'O 'a 'l 'b C64C -> 'O 'a 'l 's C64D -> 'O 'a 'l 't C64E -> 'O 'a 'l 'p C64F -> 'O 'a 'l 'h C650 -> 'O 'a 'm C651 -> 'O 'a 'b C652 -> 'O 'a 'b 's C653 -> 'O 'a 's C654 -> 'O 'a 's 's C655 -> 'O 'a 'n 'g C656 -> 'O 'a 'j C657 -> 'O 'a 'c 'h C658 -> 'O 'a 'k C659 -> 'O 'a 't C65A -> 'O 'a 'p C65B -> 'O 'a 'h C65C -> 'O 'a 'e C65D -> 'O 'a 'e 'g C65E -> 'O 'a 'e 'g 'g C65F -> 'O 'a 'e 'g 's C660 -> 'O 'a 'e 'n C661 -> 'O 'a 'e 'n 'j C662 -> 'O 'a 'e 'n 'h C663 -> 'O 'a 'e 'd C664 -> 'O 'a 'e 'l C665 -> 'O 'a 'e 'l 'g C666 -> 'O 'a 'e 'l 'm C667 -> 'O 'a 'e 'l 'b C668 -> 'O 'a 'e 'l 's C669 -> 'O 'a 'e 'l 't C66A -> 'O 'a 'e 'l 'p C66B -> 'O 'a 'e 'l 'h C66C -> 'O 'a 'e 'm C66D -> 'O 'a 'e 'b C66E -> 'O 'a 'e 'b 's C66F -> 'O 'a 'e 's C670 -> 'O 'a 'e 's 's C671 -> 'O 'a 'e 'n 'g C672 -> 'O 'a 'e 'j C673 -> 'O 'a 'e 'c 'h C674 -> 'O 'a 'e 'k C675 -> 'O 'a 'e 't C676 -> 'O 'a 'e 'p C677 -> 'O 'a 'e 'h C678 -> 'O 'i C679 -> 'O 'i 'g C67A -> 'O 'i 'g 'g C67B -> 'O 'i 'g 's C67C -> 'O 'i 'n C67D -> 'O 'i 'n 'j C67E -> 'O 'i 'n 'h C67F -> 'O 'i 'd C680 -> 'O 'i 'l C681 -> 'O 'i 'l 'g C682 -> 'O 'i 'l 'm C683 -> 'O 'i 'l 'b C684 -> 'O 'i 'l 's C685 -> 'O 'i 'l 't C686 -> 'O 'i 'l 'p C687 -> 'O 'i 'l 'h C688 -> 'O 'i 'm C689 -> 'O 'i 'b C68A -> 'O 'i 'b 's C68B -> 'O 'i 's C68C -> 'O 'i 's 's C68D -> 'O 'i 'n 'g C68E -> 'O 'i 'j C68F -> 'O 'i 'c 'h C690 -> 'O 'i 'k C691 -> 'O 'i 't C692 -> 'O 'i 'p C693 -> 'O 'i 'h C694 -> 'Y 'o C695 -> 'Y 'o 'g C696 -> 'Y 'o 'g 'g C697 -> 'Y 'o 'g 's C698 -> 'Y 'o 'n C699 -> 'Y 'o 'n 'j C69A -> 'Y 'o 'n 'h C69B -> 'Y 'o 'd C69C -> 'Y 'o 'l C69D -> 'Y 'o 'l 'g C69E -> 'Y 'o 'l 'm C69F -> 'Y 'o 'l 'b C6A0 -> 'Y 'o 'l 's C6A1 -> 'Y 'o 'l 't C6A2 -> 'Y 'o 'l 'p C6A3 -> 'Y 'o 'l 'h C6A4 -> 'Y 'o 'm C6A5 -> 'Y 'o 'b C6A6 -> 'Y 'o 'b 's C6A7 -> 'Y 'o 's C6A8 -> 'Y 'o 's 's C6A9 -> 'Y 'o 'n 'g C6AA -> 'Y 'o 'j C6AB -> 'Y 'o 'c 'h C6AC -> 'Y 'o 'k C6AD -> 'Y 'o 't C6AE -> 'Y 'o 'p C6AF -> 'Y 'o 'h C6B0 -> 'U C6B1 -> 'U 'g C6B2 -> 'U 'g 'g C6B3 -> 'U 'g 's C6B4 -> 'U 'n C6B5 -> 'U 'n 'j C6B6 -> 'U 'n 'h C6B7 -> 'U 'd C6B8 -> 'U 'l C6B9 -> 'U 'l 'g C6BA -> 'U 'l 'm C6BB -> 'U 'l 'b C6BC -> 'U 'l 's C6BD -> 'U 'l 't C6BE -> 'U 'l 'p C6BF -> 'U 'l 'h C6C0 -> 'U 'm C6C1 -> 'U 'b C6C2 -> 'U 'b 's C6C3 -> 'U 's C6C4 -> 'U 's 's C6C5 -> 'U 'n 'g C6C6 -> 'U 'j C6C7 -> 'U 'c 'h C6C8 -> 'U 'k C6C9 -> 'U 't C6CA -> 'U 'p C6CB -> 'U 'h C6CC -> 'U 'e 'o C6CD -> 'U 'e 'o 'g C6CE -> 'U 'e 'o 'g 'g C6CF -> 'U 'e 'o 'g 's C6D0 -> 'U 'e 'o 'n C6D1 -> 'U 'e 'o 'n 'j C6D2 -> 'U 'e 'o 'n 'h C6D3 -> 'U 'e 'o 'd C6D4 -> 'U 'e 'o 'l C6D5 -> 'U 'e 'o 'l 'g C6D6 -> 'U 'e 'o 'l 'm C6D7 -> 'U 'e 'o 'l 'b C6D8 -> 'U 'e 'o 'l 's C6D9 -> 'U 'e 'o 'l 't C6DA -> 'U 'e 'o 'l 'p C6DB -> 'U 'e 'o 'l 'h C6DC -> 'U 'e 'o 'm C6DD -> 'U 'e 'o 'b C6DE -> 'U 'e 'o 'b 's C6DF -> 'U 'e 'o 's C6E0 -> 'U 'e 'o 's 's C6E1 -> 'U 'e 'o 'n 'g C6E2 -> 'U 'e 'o 'j C6E3 -> 'U 'e 'o 'c 'h C6E4 -> 'U 'e 'o 'k C6E5 -> 'U 'e 'o 't C6E6 -> 'U 'e 'o 'p C6E7 -> 'U 'e 'o 'h C6E8 -> 'U 'e C6E9 -> 'U 'e 'g C6EA -> 'U 'e 'g 'g C6EB -> 'U 'e 'g 's C6EC -> 'U 'e 'n C6ED -> 'U 'e 'n 'j C6EE -> 'U 'e 'n 'h C6EF -> 'U 'e 'd C6F0 -> 'U 'e 'l C6F1 -> 'U 'e 'l 'g C6F2 -> 'U 'e 'l 'm C6F3 -> 'U 'e 'l 'b C6F4 -> 'U 'e 'l 's C6F5 -> 'U 'e 'l 't C6F6 -> 'U 'e 'l 'p C6F7 -> 'U 'e 'l 'h C6F8 -> 'U 'e 'm C6F9 -> 'U 'e 'b C6FA -> 'U 'e 'b 's C6FB -> 'U 'e 's C6FC -> 'U 'e 's 's C6FD -> 'U 'e 'n 'g C6FE -> 'U 'e 'j C6FF -> 'U 'e 'c 'h C700 -> 'U 'e 'k C701 -> 'U 'e 't C702 -> 'U 'e 'p C703 -> 'U 'e 'h C704 -> 'U 'i C705 -> 'U 'i 'g C706 -> 'U 'i 'g 'g C707 -> 'U 'i 'g 's C708 -> 'U 'i 'n C709 -> 'U 'i 'n 'j C70A -> 'U 'i 'n 'h C70B -> 'U 'i 'd C70C -> 'U 'i 'l C70D -> 'U 'i 'l 'g C70E -> 'U 'i 'l 'm C70F -> 'U 'i 'l 'b C710 -> 'U 'i 'l 's C711 -> 'U 'i 'l 't C712 -> 'U 'i 'l 'p C713 -> 'U 'i 'l 'h C714 -> 'U 'i 'm C715 -> 'U 'i 'b C716 -> 'U 'i 'b 's C717 -> 'U 'i 's C718 -> 'U 'i 's 's C719 -> 'U 'i 'n 'g C71A -> 'U 'i 'j C71B -> 'U 'i 'c 'h C71C -> 'U 'i 'k C71D -> 'U 'i 't C71E -> 'U 'i 'p C71F -> 'U 'i 'h C720 -> 'Y 'u C721 -> 'Y 'u 'g C722 -> 'Y 'u 'g 'g C723 -> 'Y 'u 'g 's C724 -> 'Y 'u 'n C725 -> 'Y 'u 'n 'j C726 -> 'Y 'u 'n 'h C727 -> 'Y 'u 'd C728 -> 'Y 'u 'l C729 -> 'Y 'u 'l 'g C72A -> 'Y 'u 'l 'm C72B -> 'Y 'u 'l 'b C72C -> 'Y 'u 'l 's C72D -> 'Y 'u 'l 't C72E -> 'Y 'u 'l 'p C72F -> 'Y 'u 'l 'h C730 -> 'Y 'u 'm C731 -> 'Y 'u 'b C732 -> 'Y 'u 'b 's C733 -> 'Y 'u 's C734 -> 'Y 'u 's 's C735 -> 'Y 'u 'n 'g C736 -> 'Y 'u 'j C737 -> 'Y 'u 'c 'h C738 -> 'Y 'u 'k C739 -> 'Y 'u 't C73A -> 'Y 'u 'p C73B -> 'Y 'u 'h C73C -> 'E 'u C73D -> 'E 'u 'g C73E -> 'E 'u 'g 'g C73F -> 'E 'u 'g 's C740 -> 'E 'u 'n C741 -> 'E 'u 'n 'j C742 -> 'E 'u 'n 'h C743 -> 'E 'u 'd C744 -> 'E 'u 'l C745 -> 'E 'u 'l 'g C746 -> 'E 'u 'l 'm C747 -> 'E 'u 'l 'b C748 -> 'E 'u 'l 's C749 -> 'E 'u 'l 't C74A -> 'E 'u 'l 'p C74B -> 'E 'u 'l 'h C74C -> 'E 'u 'm C74D -> 'E 'u 'b C74E -> 'E 'u 'b 's C74F -> 'E 'u 's C750 -> 'E 'u 's 's C751 -> 'E 'u 'n 'g C752 -> 'E 'u 'j C753 -> 'E 'u 'c 'h C754 -> 'E 'u 'k C755 -> 'E 'u 't C756 -> 'E 'u 'p C757 -> 'E 'u 'h # Changed from Eui to Yi Gaspar 2007-10-28 C758 -> 'Y 'i C759 -> 'Y 'i 'g C75A -> 'Y 'i 'g 'g C75B -> 'Y 'i 'g 's C75C -> 'Y 'i 'n C75D -> 'Y 'i 'n 'j C75E -> 'Y 'i 'n 'h C75F -> 'Y 'i 'd C760 -> 'Y 'i 'l C761 -> 'Y 'i 'l 'g C762 -> 'Y 'i 'l 'm C763 -> 'Y 'i 'l 'b C764 -> 'Y 'i 'l 's C765 -> 'Y 'i 'l 't C766 -> 'Y 'i 'l 'p C767 -> 'Y 'i 'l 'h C768 -> 'Y 'i 'm C769 -> 'Y 'i 'b C76A -> 'Y 'i 'b 's C76B -> 'Y 'i 's C76C -> 'Y 'i 's 's C76D -> 'Y 'i 'n 'g C76E -> 'Y 'i 'j C76F -> 'Y 'i 'c 'h C770 -> 'Y 'i 'k C771 -> 'Y 'i 't C772 -> 'Y 'i 'p C773 -> 'Y 'i 'h # End change C774 -> 'I C775 -> 'I 'g C776 -> 'I 'g 'g C777 -> 'I 'g 's C778 -> 'I 'n C779 -> 'I 'n 'j C77A -> 'I 'n 'h C77B -> 'I 'd C77C -> 'I 'l C77D -> 'I 'l 'g C77E -> 'I 'l 'm C77F -> 'I 'l 'b C780 -> 'I 'l 's C781 -> 'I 'l 't C782 -> 'I 'l 'p C783 -> 'I 'l 'h C784 -> 'I 'm C785 -> 'I 'b C786 -> 'I 'b 's C787 -> 'I 's C788 -> 'I 's 's C789 -> 'I 'n 'g C78A -> 'I 'j C78B -> 'I 'c 'h C78C -> 'I 'k C78D -> 'I 't C78E -> 'I 'p C78F -> 'I 'h C790 -> 'J 'a C791 -> 'J 'a 'g C792 -> 'J 'a 'g 'g C793 -> 'J 'a 'g 's C794 -> 'J 'a 'n C795 -> 'J 'a 'n 'j C796 -> 'J 'a 'n 'h C797 -> 'J 'a 'd C798 -> 'J 'a 'l C799 -> 'J 'a 'l 'g C79A -> 'J 'a 'l 'm C79B -> 'J 'a 'l 'b C79C -> 'J 'a 'l 's C79D -> 'J 'a 'l 't C79E -> 'J 'a 'l 'p C79F -> 'J 'a 'l 'h C7A0 -> 'J 'a 'm C7A1 -> 'J 'a 'b C7A2 -> 'J 'a 'b 's C7A3 -> 'J 'a 's C7A4 -> 'J 'a 's 's C7A5 -> 'J 'a 'n 'g C7A6 -> 'J 'a 'j C7A7 -> 'J 'a 'c 'h C7A8 -> 'J 'a 'k C7A9 -> 'J 'a 't C7AA -> 'J 'a 'p C7AB -> 'J 'a 'h C7AC -> 'J 'a 'e C7AD -> 'J 'a 'e 'g C7AE -> 'J 'a 'e 'g 'g C7AF -> 'J 'a 'e 'g 's C7B0 -> 'J 'a 'e 'n C7B1 -> 'J 'a 'e 'n 'j C7B2 -> 'J 'a 'e 'n 'h C7B3 -> 'J 'a 'e 'd C7B4 -> 'J 'a 'e 'l C7B5 -> 'J 'a 'e 'l 'g C7B6 -> 'J 'a 'e 'l 'm C7B7 -> 'J 'a 'e 'l 'b C7B8 -> 'J 'a 'e 'l 's C7B9 -> 'J 'a 'e 'l 't C7BA -> 'J 'a 'e 'l 'p C7BB -> 'J 'a 'e 'l 'h C7BC -> 'J 'a 'e 'm C7BD -> 'J 'a 'e 'b C7BE -> 'J 'a 'e 'b 's C7BF -> 'J 'a 'e 's C7C0 -> 'J 'a 'e 's 's C7C1 -> 'J 'a 'e 'n 'g C7C2 -> 'J 'a 'e 'j C7C3 -> 'J 'a 'e 'c 'h C7C4 -> 'J 'a 'e 'k C7C5 -> 'J 'a 'e 't C7C6 -> 'J 'a 'e 'p C7C7 -> 'J 'a 'e 'h C7C8 -> 'J 'y 'a C7C9 -> 'J 'y 'a 'g C7CA -> 'J 'y 'a 'g 'g C7CB -> 'J 'y 'a 'g 's C7CC -> 'J 'y 'a 'n C7CD -> 'J 'y 'a 'n 'j C7CE -> 'J 'y 'a 'n 'h C7CF -> 'J 'y 'a 'd C7D0 -> 'J 'y 'a 'l C7D1 -> 'J 'y 'a 'l 'g C7D2 -> 'J 'y 'a 'l 'm C7D3 -> 'J 'y 'a 'l 'b C7D4 -> 'J 'y 'a 'l 's C7D5 -> 'J 'y 'a 'l 't C7D6 -> 'J 'y 'a 'l 'p C7D7 -> 'J 'y 'a 'l 'h C7D8 -> 'J 'y 'a 'm C7D9 -> 'J 'y 'a 'b C7DA -> 'J 'y 'a 'b 's C7DB -> 'J 'y 'a 's C7DC -> 'J 'y 'a 's 's C7DD -> 'J 'y 'a 'n 'g C7DE -> 'J 'y 'a 'j C7DF -> 'J 'y 'a 'c 'h C7E0 -> 'J 'y 'a 'k C7E1 -> 'J 'y 'a 't C7E2 -> 'J 'y 'a 'p C7E3 -> 'J 'y 'a 'h C7E4 -> 'J 'y 'a 'e C7E5 -> 'J 'y 'a 'e 'g C7E6 -> 'J 'y 'a 'e 'g 'g C7E7 -> 'J 'y 'a 'e 'g 's C7E8 -> 'J 'y 'a 'e 'n C7E9 -> 'J 'y 'a 'e 'n 'j C7EA -> 'J 'y 'a 'e 'n 'h C7EB -> 'J 'y 'a 'e 'd C7EC -> 'J 'y 'a 'e 'l C7ED -> 'J 'y 'a 'e 'l 'g C7EE -> 'J 'y 'a 'e 'l 'm C7EF -> 'J 'y 'a 'e 'l 'b C7F0 -> 'J 'y 'a 'e 'l 's C7F1 -> 'J 'y 'a 'e 'l 't C7F2 -> 'J 'y 'a 'e 'l 'p C7F3 -> 'J 'y 'a 'e 'l 'h C7F4 -> 'J 'y 'a 'e 'm C7F5 -> 'J 'y 'a 'e 'b C7F6 -> 'J 'y 'a 'e 'b 's C7F7 -> 'J 'y 'a 'e 's C7F8 -> 'J 'y 'a 'e 's 's C7F9 -> 'J 'y 'a 'e 'n 'g C7FA -> 'J 'y 'a 'e 'j C7FB -> 'J 'y 'a 'e 'c 'h C7FC -> 'J 'y 'a 'e 'k C7FD -> 'J 'y 'a 'e 't C7FE -> 'J 'y 'a 'e 'p C7FF -> 'J 'y 'a 'e 'h C800 -> 'J 'e 'o C801 -> 'J 'e 'o 'g C802 -> 'J 'e 'o 'g 'g C803 -> 'J 'e 'o 'g 's C804 -> 'J 'e 'o 'n C805 -> 'J 'e 'o 'n 'j C806 -> 'J 'e 'o 'n 'h C807 -> 'J 'e 'o 'd C808 -> 'J 'e 'o 'l C809 -> 'J 'e 'o 'l 'g C80A -> 'J 'e 'o 'l 'm C80B -> 'J 'e 'o 'l 'b C80C -> 'J 'e 'o 'l 's C80D -> 'J 'e 'o 'l 't C80E -> 'J 'e 'o 'l 'p C80F -> 'J 'e 'o 'l 'h C810 -> 'J 'e 'o 'm C811 -> 'J 'e 'o 'b C812 -> 'J 'e 'o 'b 's C813 -> 'J 'e 'o 's C814 -> 'J 'e 'o 's 's C815 -> 'J 'e 'o 'n 'g C816 -> 'J 'e 'o 'j C817 -> 'J 'e 'o 'c 'h C818 -> 'J 'e 'o 'k C819 -> 'J 'e 'o 't C81A -> 'J 'e 'o 'p C81B -> 'J 'e 'o 'h C81C -> 'J 'e C81D -> 'J 'e 'g C81E -> 'J 'e 'g 'g C81F -> 'J 'e 'g 's C820 -> 'J 'e 'n C821 -> 'J 'e 'n 'j C822 -> 'J 'e 'n 'h C823 -> 'J 'e 'd C824 -> 'J 'e 'l C825 -> 'J 'e 'l 'g C826 -> 'J 'e 'l 'm C827 -> 'J 'e 'l 'b C828 -> 'J 'e 'l 's C829 -> 'J 'e 'l 't C82A -> 'J 'e 'l 'p C82B -> 'J 'e 'l 'h C82C -> 'J 'e 'm C82D -> 'J 'e 'b C82E -> 'J 'e 'b 's C82F -> 'J 'e 's C830 -> 'J 'e 's 's C831 -> 'J 'e 'n 'g C832 -> 'J 'e 'j C833 -> 'J 'e 'c 'h C834 -> 'J 'e 'k C835 -> 'J 'e 't C836 -> 'J 'e 'p C837 -> 'J 'e 'h C838 -> 'J 'y 'e 'o C839 -> 'J 'y 'e 'o 'g C83A -> 'J 'y 'e 'o 'g 'g C83B -> 'J 'y 'e 'o 'g 's C83C -> 'J 'y 'e 'o 'n C83D -> 'J 'y 'e 'o 'n 'j C83E -> 'J 'y 'e 'o 'n 'h C83F -> 'J 'y 'e 'o 'd C840 -> 'J 'y 'e 'o 'l C841 -> 'J 'y 'e 'o 'l 'g C842 -> 'J 'y 'e 'o 'l 'm C843 -> 'J 'y 'e 'o 'l 'b C844 -> 'J 'y 'e 'o 'l 's C845 -> 'J 'y 'e 'o 'l 't C846 -> 'J 'y 'e 'o 'l 'p C847 -> 'J 'y 'e 'o 'l 'h C848 -> 'J 'y 'e 'o 'm C849 -> 'J 'y 'e 'o 'b C84A -> 'J 'y 'e 'o 'b 's C84B -> 'J 'y 'e 'o 's C84C -> 'J 'y 'e 'o 's 's C84D -> 'J 'y 'e 'o 'n 'g C84E -> 'J 'y 'e 'o 'j C84F -> 'J 'y 'e 'o 'c 'h C850 -> 'J 'y 'e 'o 'k C851 -> 'J 'y 'e 'o 't C852 -> 'J 'y 'e 'o 'p C853 -> 'J 'y 'e 'o 'h C854 -> 'J 'y 'e C855 -> 'J 'y 'e 'g C856 -> 'J 'y 'e 'g 'g C857 -> 'J 'y 'e 'g 's C858 -> 'J 'y 'e 'n C859 -> 'J 'y 'e 'n 'j C85A -> 'J 'y 'e 'n 'h C85B -> 'J 'y 'e 'd C85C -> 'J 'y 'e 'l C85D -> 'J 'y 'e 'l 'g C85E -> 'J 'y 'e 'l 'm C85F -> 'J 'y 'e 'l 'b C860 -> 'J 'y 'e 'l 's C861 -> 'J 'y 'e 'l 't C862 -> 'J 'y 'e 'l 'p C863 -> 'J 'y 'e 'l 'h C864 -> 'J 'y 'e 'm C865 -> 'J 'y 'e 'b C866 -> 'J 'y 'e 'b 's C867 -> 'J 'y 'e 's C868 -> 'J 'y 'e 's 's C869 -> 'J 'y 'e 'n 'g C86A -> 'J 'y 'e 'j C86B -> 'J 'y 'e 'c 'h C86C -> 'J 'y 'e 'k C86D -> 'J 'y 'e 't C86E -> 'J 'y 'e 'p C86F -> 'J 'y 'e 'h C870 -> 'J 'o C871 -> 'J 'o 'g C872 -> 'J 'o 'g 'g C873 -> 'J 'o 'g 's C874 -> 'J 'o 'n C875 -> 'J 'o 'n 'j C876 -> 'J 'o 'n 'h C877 -> 'J 'o 'd C878 -> 'J 'o 'l C879 -> 'J 'o 'l 'g C87A -> 'J 'o 'l 'm C87B -> 'J 'o 'l 'b C87C -> 'J 'o 'l 's C87D -> 'J 'o 'l 't C87E -> 'J 'o 'l 'p C87F -> 'J 'o 'l 'h C880 -> 'J 'o 'm C881 -> 'J 'o 'b C882 -> 'J 'o 'b 's C883 -> 'J 'o 's C884 -> 'J 'o 's 's C885 -> 'J 'o 'n 'g C886 -> 'J 'o 'j C887 -> 'J 'o 'c 'h C888 -> 'J 'o 'k C889 -> 'J 'o 't C88A -> 'J 'o 'p C88B -> 'J 'o 'h C88C -> 'J 'o 'a C88D -> 'J 'o 'a 'g C88E -> 'J 'o 'a 'g 'g C88F -> 'J 'o 'a 'g 's C890 -> 'J 'o 'a 'n C891 -> 'J 'o 'a 'n 'j C892 -> 'J 'o 'a 'n 'h C893 -> 'J 'o 'a 'd C894 -> 'J 'o 'a 'l C895 -> 'J 'o 'a 'l 'g C896 -> 'J 'o 'a 'l 'm C897 -> 'J 'o 'a 'l 'b C898 -> 'J 'o 'a 'l 's C899 -> 'J 'o 'a 'l 't C89A -> 'J 'o 'a 'l 'p C89B -> 'J 'o 'a 'l 'h C89C -> 'J 'o 'a 'm C89D -> 'J 'o 'a 'b C89E -> 'J 'o 'a 'b 's C89F -> 'J 'o 'a 's C8A0 -> 'J 'o 'a 's 's C8A1 -> 'J 'o 'a 'n 'g C8A2 -> 'J 'o 'a 'j C8A3 -> 'J 'o 'a 'c 'h C8A4 -> 'J 'o 'a 'k C8A5 -> 'J 'o 'a 't C8A6 -> 'J 'o 'a 'p C8A7 -> 'J 'o 'a 'h C8A8 -> 'J 'o 'a 'e C8A9 -> 'J 'o 'a 'e 'g C8AA -> 'J 'o 'a 'e 'g 'g C8AB -> 'J 'o 'a 'e 'g 's C8AC -> 'J 'o 'a 'e 'n C8AD -> 'J 'o 'a 'e 'n 'j C8AE -> 'J 'o 'a 'e 'n 'h C8AF -> 'J 'o 'a 'e 'd C8B0 -> 'J 'o 'a 'e 'l C8B1 -> 'J 'o 'a 'e 'l 'g C8B2 -> 'J 'o 'a 'e 'l 'm C8B3 -> 'J 'o 'a 'e 'l 'b C8B4 -> 'J 'o 'a 'e 'l 's C8B5 -> 'J 'o 'a 'e 'l 't C8B6 -> 'J 'o 'a 'e 'l 'p C8B7 -> 'J 'o 'a 'e 'l 'h C8B8 -> 'J 'o 'a 'e 'm C8B9 -> 'J 'o 'a 'e 'b C8BA -> 'J 'o 'a 'e 'b 's C8BB -> 'J 'o 'a 'e 's C8BC -> 'J 'o 'a 'e 's 's C8BD -> 'J 'o 'a 'e 'n 'g C8BE -> 'J 'o 'a 'e 'j C8BF -> 'J 'o 'a 'e 'c 'h C8C0 -> 'J 'o 'a 'e 'k C8C1 -> 'J 'o 'a 'e 't C8C2 -> 'J 'o 'a 'e 'p C8C3 -> 'J 'o 'a 'e 'h C8C4 -> 'J 'o 'i C8C5 -> 'J 'o 'i 'g C8C6 -> 'J 'o 'i 'g 'g C8C7 -> 'J 'o 'i 'g 's C8C8 -> 'J 'o 'i 'n C8C9 -> 'J 'o 'i 'n 'j C8CA -> 'J 'o 'i 'n 'h C8CB -> 'J 'o 'i 'd C8CC -> 'J 'o 'i 'l C8CD -> 'J 'o 'i 'l 'g C8CE -> 'J 'o 'i 'l 'm C8CF -> 'J 'o 'i 'l 'b C8D0 -> 'J 'o 'i 'l 's C8D1 -> 'J 'o 'i 'l 't C8D2 -> 'J 'o 'i 'l 'p C8D3 -> 'J 'o 'i 'l 'h C8D4 -> 'J 'o 'i 'm C8D5 -> 'J 'o 'i 'b C8D6 -> 'J 'o 'i 'b 's C8D7 -> 'J 'o 'i 's C8D8 -> 'J 'o 'i 's 's C8D9 -> 'J 'o 'i 'n 'g C8DA -> 'J 'o 'i 'j C8DB -> 'J 'o 'i 'c 'h C8DC -> 'J 'o 'i 'k C8DD -> 'J 'o 'i 't C8DE -> 'J 'o 'i 'p C8DF -> 'J 'o 'i 'h C8E0 -> 'J 'y 'o C8E1 -> 'J 'y 'o 'g C8E2 -> 'J 'y 'o 'g 'g C8E3 -> 'J 'y 'o 'g 's C8E4 -> 'J 'y 'o 'n C8E5 -> 'J 'y 'o 'n 'j C8E6 -> 'J 'y 'o 'n 'h C8E7 -> 'J 'y 'o 'd C8E8 -> 'J 'y 'o 'l C8E9 -> 'J 'y 'o 'l 'g C8EA -> 'J 'y 'o 'l 'm C8EB -> 'J 'y 'o 'l 'b C8EC -> 'J 'y 'o 'l 's C8ED -> 'J 'y 'o 'l 't C8EE -> 'J 'y 'o 'l 'p C8EF -> 'J 'y 'o 'l 'h C8F0 -> 'J 'y 'o 'm C8F1 -> 'J 'y 'o 'b C8F2 -> 'J 'y 'o 'b 's C8F3 -> 'J 'y 'o 's C8F4 -> 'J 'y 'o 's 's C8F5 -> 'J 'y 'o 'n 'g C8F6 -> 'J 'y 'o 'j C8F7 -> 'J 'y 'o 'c 'h C8F8 -> 'J 'y 'o 'k C8F9 -> 'J 'y 'o 't C8FA -> 'J 'y 'o 'p C8FB -> 'J 'y 'o 'h C8FC -> 'J 'u C8FD -> 'J 'u 'g C8FE -> 'J 'u 'g 'g C8FF -> 'J 'u 'g 's C900 -> 'J 'u 'n C901 -> 'J 'u 'n 'j C902 -> 'J 'u 'n 'h C903 -> 'J 'u 'd C904 -> 'J 'u 'l C905 -> 'J 'u 'l 'g C906 -> 'J 'u 'l 'm C907 -> 'J 'u 'l 'b C908 -> 'J 'u 'l 's C909 -> 'J 'u 'l 't C90A -> 'J 'u 'l 'p C90B -> 'J 'u 'l 'h C90C -> 'J 'u 'm C90D -> 'J 'u 'b C90E -> 'J 'u 'b 's C90F -> 'J 'u 's C910 -> 'J 'u 's 's C911 -> 'J 'u 'n 'g C912 -> 'J 'u 'j C913 -> 'J 'u 'c 'h C914 -> 'J 'u 'k C915 -> 'J 'u 't C916 -> 'J 'u 'p C917 -> 'J 'u 'h C918 -> 'J 'u 'e 'o C919 -> 'J 'u 'e 'o 'g C91A -> 'J 'u 'e 'o 'g 'g C91B -> 'J 'u 'e 'o 'g 's C91C -> 'J 'u 'e 'o 'n C91D -> 'J 'u 'e 'o 'n 'j C91E -> 'J 'u 'e 'o 'n 'h C91F -> 'J 'u 'e 'o 'd C920 -> 'J 'u 'e 'o 'l C921 -> 'J 'u 'e 'o 'l 'g C922 -> 'J 'u 'e 'o 'l 'm C923 -> 'J 'u 'e 'o 'l 'b C924 -> 'J 'u 'e 'o 'l 's C925 -> 'J 'u 'e 'o 'l 't C926 -> 'J 'u 'e 'o 'l 'p C927 -> 'J 'u 'e 'o 'l 'h C928 -> 'J 'u 'e 'o 'm C929 -> 'J 'u 'e 'o 'b C92A -> 'J 'u 'e 'o 'b 's C92B -> 'J 'u 'e 'o 's C92C -> 'J 'u 'e 'o 's 's C92D -> 'J 'u 'e 'o 'n 'g C92E -> 'J 'u 'e 'o 'j C92F -> 'J 'u 'e 'o 'c 'h C930 -> 'J 'u 'e 'o 'k C931 -> 'J 'u 'e 'o 't C932 -> 'J 'u 'e 'o 'p C933 -> 'J 'u 'e 'o 'h C934 -> 'J 'u 'e C935 -> 'J 'u 'e 'g C936 -> 'J 'u 'e 'g 'g C937 -> 'J 'u 'e 'g 's C938 -> 'J 'u 'e 'n C939 -> 'J 'u 'e 'n 'j C93A -> 'J 'u 'e 'n 'h C93B -> 'J 'u 'e 'd C93C -> 'J 'u 'e 'l C93D -> 'J 'u 'e 'l 'g C93E -> 'J 'u 'e 'l 'm C93F -> 'J 'u 'e 'l 'b C940 -> 'J 'u 'e 'l 's C941 -> 'J 'u 'e 'l 't C942 -> 'J 'u 'e 'l 'p C943 -> 'J 'u 'e 'l 'h C944 -> 'J 'u 'e 'm C945 -> 'J 'u 'e 'b C946 -> 'J 'u 'e 'b 's C947 -> 'J 'u 'e 's C948 -> 'J 'u 'e 's 's C949 -> 'J 'u 'e 'n 'g C94A -> 'J 'u 'e 'j C94B -> 'J 'u 'e 'c 'h C94C -> 'J 'u 'e 'k C94D -> 'J 'u 'e 't C94E -> 'J 'u 'e 'p C94F -> 'J 'u 'e 'h C950 -> 'J 'u 'i C951 -> 'J 'u 'i 'g C952 -> 'J 'u 'i 'g 'g C953 -> 'J 'u 'i 'g 's C954 -> 'J 'u 'i 'n C955 -> 'J 'u 'i 'n 'j C956 -> 'J 'u 'i 'n 'h C957 -> 'J 'u 'i 'd C958 -> 'J 'u 'i 'l C959 -> 'J 'u 'i 'l 'g C95A -> 'J 'u 'i 'l 'm C95B -> 'J 'u 'i 'l 'b C95C -> 'J 'u 'i 'l 's C95D -> 'J 'u 'i 'l 't C95E -> 'J 'u 'i 'l 'p C95F -> 'J 'u 'i 'l 'h C960 -> 'J 'u 'i 'm C961 -> 'J 'u 'i 'b C962 -> 'J 'u 'i 'b 's C963 -> 'J 'u 'i 's C964 -> 'J 'u 'i 's 's C965 -> 'J 'u 'i 'n 'g C966 -> 'J 'u 'i 'j C967 -> 'J 'u 'i 'c 'h C968 -> 'J 'u 'i 'k C969 -> 'J 'u 'i 't C96A -> 'J 'u 'i 'p C96B -> 'J 'u 'i 'h C96C -> 'J 'y 'u C96D -> 'J 'y 'u 'g C96E -> 'J 'y 'u 'g 'g C96F -> 'J 'y 'u 'g 's C970 -> 'J 'y 'u 'n C971 -> 'J 'y 'u 'n 'j C972 -> 'J 'y 'u 'n 'h C973 -> 'J 'y 'u 'd C974 -> 'J 'y 'u 'l C975 -> 'J 'y 'u 'l 'g C976 -> 'J 'y 'u 'l 'm C977 -> 'J 'y 'u 'l 'b C978 -> 'J 'y 'u 'l 's C979 -> 'J 'y 'u 'l 't C97A -> 'J 'y 'u 'l 'p C97B -> 'J 'y 'u 'l 'h C97C -> 'J 'y 'u 'm C97D -> 'J 'y 'u 'b C97E -> 'J 'y 'u 'b 's C97F -> 'J 'y 'u 's C980 -> 'J 'y 'u 's 's C981 -> 'J 'y 'u 'n 'g C982 -> 'J 'y 'u 'j C983 -> 'J 'y 'u 'c 'h C984 -> 'J 'y 'u 'k C985 -> 'J 'y 'u 't C986 -> 'J 'y 'u 'p C987 -> 'J 'y 'u 'h C988 -> 'J 'e 'u C989 -> 'J 'e 'u 'g C98A -> 'J 'e 'u 'g 'g C98B -> 'J 'e 'u 'g 's C98C -> 'J 'e 'u 'n C98D -> 'J 'e 'u 'n 'j C98E -> 'J 'e 'u 'n 'h C98F -> 'J 'e 'u 'd C990 -> 'J 'e 'u 'l C991 -> 'J 'e 'u 'l 'g C992 -> 'J 'e 'u 'l 'm C993 -> 'J 'e 'u 'l 'b C994 -> 'J 'e 'u 'l 's C995 -> 'J 'e 'u 'l 't C996 -> 'J 'e 'u 'l 'p C997 -> 'J 'e 'u 'l 'h C998 -> 'J 'e 'u 'm C999 -> 'J 'e 'u 'b C99A -> 'J 'e 'u 'b 's C99B -> 'J 'e 'u 's C99C -> 'J 'e 'u 's 's C99D -> 'J 'e 'u 'n 'g C99E -> 'J 'e 'u 'j C99F -> 'J 'e 'u 'c 'h C9A0 -> 'J 'e 'u 'k C9A1 -> 'J 'e 'u 't C9A2 -> 'J 'e 'u 'p C9A3 -> 'J 'e 'u 'h C9A4 -> 'J 'e 'u 'i C9A5 -> 'J 'e 'u 'i 'g C9A6 -> 'J 'e 'u 'i 'g 'g C9A7 -> 'J 'e 'u 'i 'g 's C9A8 -> 'J 'e 'u 'i 'n C9A9 -> 'J 'e 'u 'i 'n 'j C9AA -> 'J 'e 'u 'i 'n 'h C9AB -> 'J 'e 'u 'i 'd C9AC -> 'J 'e 'u 'i 'l C9AD -> 'J 'e 'u 'i 'l 'g C9AE -> 'J 'e 'u 'i 'l 'm C9AF -> 'J 'e 'u 'i 'l 'b C9B0 -> 'J 'e 'u 'i 'l 's C9B1 -> 'J 'e 'u 'i 'l 't C9B2 -> 'J 'e 'u 'i 'l 'p C9B3 -> 'J 'e 'u 'i 'l 'h C9B4 -> 'J 'e 'u 'i 'm C9B5 -> 'J 'e 'u 'i 'b C9B6 -> 'J 'e 'u 'i 'b 's C9B7 -> 'J 'e 'u 'i 's C9B8 -> 'J 'e 'u 'i 's 's C9B9 -> 'J 'e 'u 'i 'n 'g C9BA -> 'J 'e 'u 'i 'j C9BB -> 'J 'e 'u 'i 'c 'h C9BC -> 'J 'e 'u 'i 'k C9BD -> 'J 'e 'u 'i 't C9BE -> 'J 'e 'u 'i 'p C9BF -> 'J 'e 'u 'i 'h C9C0 -> 'J 'i C9C1 -> 'J 'i 'g C9C2 -> 'J 'i 'g 'g C9C3 -> 'J 'i 'g 's C9C4 -> 'J 'i 'n C9C5 -> 'J 'i 'n 'j C9C6 -> 'J 'i 'n 'h C9C7 -> 'J 'i 'd C9C8 -> 'J 'i 'l C9C9 -> 'J 'i 'l 'g C9CA -> 'J 'i 'l 'm C9CB -> 'J 'i 'l 'b C9CC -> 'J 'i 'l 's C9CD -> 'J 'i 'l 't C9CE -> 'J 'i 'l 'p C9CF -> 'J 'i 'l 'h C9D0 -> 'J 'i 'm C9D1 -> 'J 'i 'b C9D2 -> 'J 'i 'b 's C9D3 -> 'J 'i 's C9D4 -> 'J 'i 's 's C9D5 -> 'J 'i 'n 'g C9D6 -> 'J 'i 'j C9D7 -> 'J 'i 'c 'h C9D8 -> 'J 'i 'k C9D9 -> 'J 'i 't C9DA -> 'J 'i 'p C9DB -> 'J 'i 'h C9DC -> 'J 'j 'a C9DD -> 'J 'j 'a 'g C9DE -> 'J 'j 'a 'g 'g C9DF -> 'J 'j 'a 'g 's C9E0 -> 'J 'j 'a 'n C9E1 -> 'J 'j 'a 'n 'j C9E2 -> 'J 'j 'a 'n 'h C9E3 -> 'J 'j 'a 'd C9E4 -> 'J 'j 'a 'l C9E5 -> 'J 'j 'a 'l 'g C9E6 -> 'J 'j 'a 'l 'm C9E7 -> 'J 'j 'a 'l 'b C9E8 -> 'J 'j 'a 'l 's C9E9 -> 'J 'j 'a 'l 't C9EA -> 'J 'j 'a 'l 'p C9EB -> 'J 'j 'a 'l 'h C9EC -> 'J 'j 'a 'm C9ED -> 'J 'j 'a 'b C9EE -> 'J 'j 'a 'b 's C9EF -> 'J 'j 'a 's C9F0 -> 'J 'j 'a 's 's C9F1 -> 'J 'j 'a 'n 'g C9F2 -> 'J 'j 'a 'j C9F3 -> 'J 'j 'a 'c 'h C9F4 -> 'J 'j 'a 'k C9F5 -> 'J 'j 'a 't C9F6 -> 'J 'j 'a 'p C9F7 -> 'J 'j 'a 'h C9F8 -> 'J 'j 'a 'e C9F9 -> 'J 'j 'a 'e 'g C9FA -> 'J 'j 'a 'e 'g 'g C9FB -> 'J 'j 'a 'e 'g 's C9FC -> 'J 'j 'a 'e 'n C9FD -> 'J 'j 'a 'e 'n 'j C9FE -> 'J 'j 'a 'e 'n 'h C9FF -> 'J 'j 'a 'e 'd CA00 -> 'J 'j 'a 'e 'l CA01 -> 'J 'j 'a 'e 'l 'g CA02 -> 'J 'j 'a 'e 'l 'm CA03 -> 'J 'j 'a 'e 'l 'b CA04 -> 'J 'j 'a 'e 'l 's CA05 -> 'J 'j 'a 'e 'l 't CA06 -> 'J 'j 'a 'e 'l 'p CA07 -> 'J 'j 'a 'e 'l 'h CA08 -> 'J 'j 'a 'e 'm CA09 -> 'J 'j 'a 'e 'b CA0A -> 'J 'j 'a 'e 'b 's CA0B -> 'J 'j 'a 'e 's CA0C -> 'J 'j 'a 'e 's 's CA0D -> 'J 'j 'a 'e 'n 'g CA0E -> 'J 'j 'a 'e 'j CA0F -> 'J 'j 'a 'e 'c 'h CA10 -> 'J 'j 'a 'e 'k CA11 -> 'J 'j 'a 'e 't CA12 -> 'J 'j 'a 'e 'p CA13 -> 'J 'j 'a 'e 'h CA14 -> 'J 'j 'y 'a CA15 -> 'J 'j 'y 'a 'g CA16 -> 'J 'j 'y 'a 'g 'g CA17 -> 'J 'j 'y 'a 'g 's CA18 -> 'J 'j 'y 'a 'n CA19 -> 'J 'j 'y 'a 'n 'j CA1A -> 'J 'j 'y 'a 'n 'h CA1B -> 'J 'j 'y 'a 'd CA1C -> 'J 'j 'y 'a 'l CA1D -> 'J 'j 'y 'a 'l 'g CA1E -> 'J 'j 'y 'a 'l 'm CA1F -> 'J 'j 'y 'a 'l 'b CA20 -> 'J 'j 'y 'a 'l 's CA21 -> 'J 'j 'y 'a 'l 't CA22 -> 'J 'j 'y 'a 'l 'p CA23 -> 'J 'j 'y 'a 'l 'h CA24 -> 'J 'j 'y 'a 'm CA25 -> 'J 'j 'y 'a 'b CA26 -> 'J 'j 'y 'a 'b 's CA27 -> 'J 'j 'y 'a 's CA28 -> 'J 'j 'y 'a 's 's CA29 -> 'J 'j 'y 'a 'n 'g CA2A -> 'J 'j 'y 'a 'j CA2B -> 'J 'j 'y 'a 'c 'h CA2C -> 'J 'j 'y 'a 'k CA2D -> 'J 'j 'y 'a 't CA2E -> 'J 'j 'y 'a 'p CA2F -> 'J 'j 'y 'a 'h CA30 -> 'J 'j 'y 'a 'e CA31 -> 'J 'j 'y 'a 'e 'g CA32 -> 'J 'j 'y 'a 'e 'g 'g CA33 -> 'J 'j 'y 'a 'e 'g 's CA34 -> 'J 'j 'y 'a 'e 'n CA35 -> 'J 'j 'y 'a 'e 'n 'j CA36 -> 'J 'j 'y 'a 'e 'n 'h CA37 -> 'J 'j 'y 'a 'e 'd CA38 -> 'J 'j 'y 'a 'e 'l CA39 -> 'J 'j 'y 'a 'e 'l 'g CA3A -> 'J 'j 'y 'a 'e 'l 'm CA3B -> 'J 'j 'y 'a 'e 'l 'b CA3C -> 'J 'j 'y 'a 'e 'l 's CA3D -> 'J 'j 'y 'a 'e 'l 't CA3E -> 'J 'j 'y 'a 'e 'l 'p CA3F -> 'J 'j 'y 'a 'e 'l 'h CA40 -> 'J 'j 'y 'a 'e 'm CA41 -> 'J 'j 'y 'a 'e 'b CA42 -> 'J 'j 'y 'a 'e 'b 's CA43 -> 'J 'j 'y 'a 'e 's CA44 -> 'J 'j 'y 'a 'e 's 's CA45 -> 'J 'j 'y 'a 'e 'n 'g CA46 -> 'J 'j 'y 'a 'e 'j CA47 -> 'J 'j 'y 'a 'e 'c 'h CA48 -> 'J 'j 'y 'a 'e 'k CA49 -> 'J 'j 'y 'a 'e 't CA4A -> 'J 'j 'y 'a 'e 'p CA4B -> 'J 'j 'y 'a 'e 'h CA4C -> 'J 'j 'e 'o CA4D -> 'J 'j 'e 'o 'g CA4E -> 'J 'j 'e 'o 'g 'g CA4F -> 'J 'j 'e 'o 'g 's CA50 -> 'J 'j 'e 'o 'n CA51 -> 'J 'j 'e 'o 'n 'j CA52 -> 'J 'j 'e 'o 'n 'h CA53 -> 'J 'j 'e 'o 'd CA54 -> 'J 'j 'e 'o 'l CA55 -> 'J 'j 'e 'o 'l 'g CA56 -> 'J 'j 'e 'o 'l 'm CA57 -> 'J 'j 'e 'o 'l 'b CA58 -> 'J 'j 'e 'o 'l 's CA59 -> 'J 'j 'e 'o 'l 't CA5A -> 'J 'j 'e 'o 'l 'p CA5B -> 'J 'j 'e 'o 'l 'h CA5C -> 'J 'j 'e 'o 'm CA5D -> 'J 'j 'e 'o 'b CA5E -> 'J 'j 'e 'o 'b 's CA5F -> 'J 'j 'e 'o 's CA60 -> 'J 'j 'e 'o 's 's CA61 -> 'J 'j 'e 'o 'n 'g CA62 -> 'J 'j 'e 'o 'j CA63 -> 'J 'j 'e 'o 'c 'h CA64 -> 'J 'j 'e 'o 'k CA65 -> 'J 'j 'e 'o 't CA66 -> 'J 'j 'e 'o 'p CA67 -> 'J 'j 'e 'o 'h CA68 -> 'J 'j 'e CA69 -> 'J 'j 'e 'g CA6A -> 'J 'j 'e 'g 'g CA6B -> 'J 'j 'e 'g 's CA6C -> 'J 'j 'e 'n CA6D -> 'J 'j 'e 'n 'j CA6E -> 'J 'j 'e 'n 'h CA6F -> 'J 'j 'e 'd CA70 -> 'J 'j 'e 'l CA71 -> 'J 'j 'e 'l 'g CA72 -> 'J 'j 'e 'l 'm CA73 -> 'J 'j 'e 'l 'b CA74 -> 'J 'j 'e 'l 's CA75 -> 'J 'j 'e 'l 't CA76 -> 'J 'j 'e 'l 'p CA77 -> 'J 'j 'e 'l 'h CA78 -> 'J 'j 'e 'm CA79 -> 'J 'j 'e 'b CA7A -> 'J 'j 'e 'b 's CA7B -> 'J 'j 'e 's CA7C -> 'J 'j 'e 's 's CA7D -> 'J 'j 'e 'n 'g CA7E -> 'J 'j 'e 'j CA7F -> 'J 'j 'e 'c 'h CA80 -> 'J 'j 'e 'k CA81 -> 'J 'j 'e 't CA82 -> 'J 'j 'e 'p CA83 -> 'J 'j 'e 'h CA84 -> 'J 'j 'y 'e 'o CA85 -> 'J 'j 'y 'e 'o 'g CA86 -> 'J 'j 'y 'e 'o 'g 'g CA87 -> 'J 'j 'y 'e 'o 'g 's CA88 -> 'J 'j 'y 'e 'o 'n CA89 -> 'J 'j 'y 'e 'o 'n 'j CA8A -> 'J 'j 'y 'e 'o 'n 'h CA8B -> 'J 'j 'y 'e 'o 'd CA8C -> 'J 'j 'y 'e 'o 'l CA8D -> 'J 'j 'y 'e 'o 'l 'g CA8E -> 'J 'j 'y 'e 'o 'l 'm CA8F -> 'J 'j 'y 'e 'o 'l 'b CA90 -> 'J 'j 'y 'e 'o 'l 's CA91 -> 'J 'j 'y 'e 'o 'l 't CA92 -> 'J 'j 'y 'e 'o 'l 'p CA93 -> 'J 'j 'y 'e 'o 'l 'h CA94 -> 'J 'j 'y 'e 'o 'm CA95 -> 'J 'j 'y 'e 'o 'b CA96 -> 'J 'j 'y 'e 'o 'b 's CA97 -> 'J 'j 'y 'e 'o 's CA98 -> 'J 'j 'y 'e 'o 's 's CA99 -> 'J 'j 'y 'e 'o 'n 'g CA9A -> 'J 'j 'y 'e 'o 'j CA9B -> 'J 'j 'y 'e 'o 'c 'h CA9C -> 'J 'j 'y 'e 'o 'k CA9D -> 'J 'j 'y 'e 'o 't CA9E -> 'J 'j 'y 'e 'o 'p CA9F -> 'J 'j 'y 'e 'o 'h CAA0 -> 'J 'j 'y 'e CAA1 -> 'J 'j 'y 'e 'g CAA2 -> 'J 'j 'y 'e 'g 'g CAA3 -> 'J 'j 'y 'e 'g 's CAA4 -> 'J 'j 'y 'e 'n CAA5 -> 'J 'j 'y 'e 'n 'j CAA6 -> 'J 'j 'y 'e 'n 'h CAA7 -> 'J 'j 'y 'e 'd CAA8 -> 'J 'j 'y 'e 'l CAA9 -> 'J 'j 'y 'e 'l 'g CAAA -> 'J 'j 'y 'e 'l 'm CAAB -> 'J 'j 'y 'e 'l 'b CAAC -> 'J 'j 'y 'e 'l 's CAAD -> 'J 'j 'y 'e 'l 't CAAE -> 'J 'j 'y 'e 'l 'p CAAF -> 'J 'j 'y 'e 'l 'h CAB0 -> 'J 'j 'y 'e 'm CAB1 -> 'J 'j 'y 'e 'b CAB2 -> 'J 'j 'y 'e 'b 's CAB3 -> 'J 'j 'y 'e 's CAB4 -> 'J 'j 'y 'e 's 's CAB5 -> 'J 'j 'y 'e 'n 'g CAB6 -> 'J 'j 'y 'e 'j CAB7 -> 'J 'j 'y 'e 'c 'h CAB8 -> 'J 'j 'y 'e 'k CAB9 -> 'J 'j 'y 'e 't CABA -> 'J 'j 'y 'e 'p CABB -> 'J 'j 'y 'e 'h CABC -> 'J 'j 'o CABD -> 'J 'j 'o 'g CABE -> 'J 'j 'o 'g 'g CABF -> 'J 'j 'o 'g 's CAC0 -> 'J 'j 'o 'n CAC1 -> 'J 'j 'o 'n 'j CAC2 -> 'J 'j 'o 'n 'h CAC3 -> 'J 'j 'o 'd CAC4 -> 'J 'j 'o 'l CAC5 -> 'J 'j 'o 'l 'g CAC6 -> 'J 'j 'o 'l 'm CAC7 -> 'J 'j 'o 'l 'b CAC8 -> 'J 'j 'o 'l 's CAC9 -> 'J 'j 'o 'l 't CACA -> 'J 'j 'o 'l 'p CACB -> 'J 'j 'o 'l 'h CACC -> 'J 'j 'o 'm CACD -> 'J 'j 'o 'b CACE -> 'J 'j 'o 'b 's CACF -> 'J 'j 'o 's CAD0 -> 'J 'j 'o 's 's CAD1 -> 'J 'j 'o 'n 'g CAD2 -> 'J 'j 'o 'j CAD3 -> 'J 'j 'o 'c 'h CAD4 -> 'J 'j 'o 'k CAD5 -> 'J 'j 'o 't CAD6 -> 'J 'j 'o 'p CAD7 -> 'J 'j 'o 'h CAD8 -> 'J 'j 'o 'a CAD9 -> 'J 'j 'o 'a 'g CADA -> 'J 'j 'o 'a 'g 'g CADB -> 'J 'j 'o 'a 'g 's CADC -> 'J 'j 'o 'a 'n CADD -> 'J 'j 'o 'a 'n 'j CADE -> 'J 'j 'o 'a 'n 'h CADF -> 'J 'j 'o 'a 'd CAE0 -> 'J 'j 'o 'a 'l CAE1 -> 'J 'j 'o 'a 'l 'g CAE2 -> 'J 'j 'o 'a 'l 'm CAE3 -> 'J 'j 'o 'a 'l 'b CAE4 -> 'J 'j 'o 'a 'l 's CAE5 -> 'J 'j 'o 'a 'l 't CAE6 -> 'J 'j 'o 'a 'l 'p CAE7 -> 'J 'j 'o 'a 'l 'h CAE8 -> 'J 'j 'o 'a 'm CAE9 -> 'J 'j 'o 'a 'b CAEA -> 'J 'j 'o 'a 'b 's CAEB -> 'J 'j 'o 'a 's CAEC -> 'J 'j 'o 'a 's 's CAED -> 'J 'j 'o 'a 'n 'g CAEE -> 'J 'j 'o 'a 'j CAEF -> 'J 'j 'o 'a 'c 'h CAF0 -> 'J 'j 'o 'a 'k CAF1 -> 'J 'j 'o 'a 't CAF2 -> 'J 'j 'o 'a 'p CAF3 -> 'J 'j 'o 'a 'h CAF4 -> 'J 'j 'o 'a 'e CAF5 -> 'J 'j 'o 'a 'e 'g CAF6 -> 'J 'j 'o 'a 'e 'g 'g CAF7 -> 'J 'j 'o 'a 'e 'g 's CAF8 -> 'J 'j 'o 'a 'e 'n CAF9 -> 'J 'j 'o 'a 'e 'n 'j CAFA -> 'J 'j 'o 'a 'e 'n 'h CAFB -> 'J 'j 'o 'a 'e 'd CAFC -> 'J 'j 'o 'a 'e 'l CAFD -> 'J 'j 'o 'a 'e 'l 'g CAFE -> 'J 'j 'o 'a 'e 'l 'm CAFF -> 'J 'j 'o 'a 'e 'l 'b CB00 -> 'J 'j 'o 'a 'e 'l 's CB01 -> 'J 'j 'o 'a 'e 'l 't CB02 -> 'J 'j 'o 'a 'e 'l 'p CB03 -> 'J 'j 'o 'a 'e 'l 'h CB04 -> 'J 'j 'o 'a 'e 'm CB05 -> 'J 'j 'o 'a 'e 'b CB06 -> 'J 'j 'o 'a 'e 'b 's CB07 -> 'J 'j 'o 'a 'e 's CB08 -> 'J 'j 'o 'a 'e 's 's CB09 -> 'J 'j 'o 'a 'e 'n 'g CB0A -> 'J 'j 'o 'a 'e 'j CB0B -> 'J 'j 'o 'a 'e 'c 'h CB0C -> 'J 'j 'o 'a 'e 'k CB0D -> 'J 'j 'o 'a 'e 't CB0E -> 'J 'j 'o 'a 'e 'p CB0F -> 'J 'j 'o 'a 'e 'h CB10 -> 'J 'j 'o 'i CB11 -> 'J 'j 'o 'i 'g CB12 -> 'J 'j 'o 'i 'g 'g CB13 -> 'J 'j 'o 'i 'g 's CB14 -> 'J 'j 'o 'i 'n CB15 -> 'J 'j 'o 'i 'n 'j CB16 -> 'J 'j 'o 'i 'n 'h CB17 -> 'J 'j 'o 'i 'd CB18 -> 'J 'j 'o 'i 'l CB19 -> 'J 'j 'o 'i 'l 'g CB1A -> 'J 'j 'o 'i 'l 'm CB1B -> 'J 'j 'o 'i 'l 'b CB1C -> 'J 'j 'o 'i 'l 's CB1D -> 'J 'j 'o 'i 'l 't CB1E -> 'J 'j 'o 'i 'l 'p CB1F -> 'J 'j 'o 'i 'l 'h CB20 -> 'J 'j 'o 'i 'm CB21 -> 'J 'j 'o 'i 'b CB22 -> 'J 'j 'o 'i 'b 's CB23 -> 'J 'j 'o 'i 's CB24 -> 'J 'j 'o 'i 's 's CB25 -> 'J 'j 'o 'i 'n 'g CB26 -> 'J 'j 'o 'i 'j CB27 -> 'J 'j 'o 'i 'c 'h CB28 -> 'J 'j 'o 'i 'k CB29 -> 'J 'j 'o 'i 't CB2A -> 'J 'j 'o 'i 'p CB2B -> 'J 'j 'o 'i 'h CB2C -> 'J 'j 'y 'o CB2D -> 'J 'j 'y 'o 'g CB2E -> 'J 'j 'y 'o 'g 'g CB2F -> 'J 'j 'y 'o 'g 's CB30 -> 'J 'j 'y 'o 'n CB31 -> 'J 'j 'y 'o 'n 'j CB32 -> 'J 'j 'y 'o 'n 'h CB33 -> 'J 'j 'y 'o 'd CB34 -> 'J 'j 'y 'o 'l CB35 -> 'J 'j 'y 'o 'l 'g CB36 -> 'J 'j 'y 'o 'l 'm CB37 -> 'J 'j 'y 'o 'l 'b CB38 -> 'J 'j 'y 'o 'l 's CB39 -> 'J 'j 'y 'o 'l 't CB3A -> 'J 'j 'y 'o 'l 'p CB3B -> 'J 'j 'y 'o 'l 'h CB3C -> 'J 'j 'y 'o 'm CB3D -> 'J 'j 'y 'o 'b CB3E -> 'J 'j 'y 'o 'b 's CB3F -> 'J 'j 'y 'o 's CB40 -> 'J 'j 'y 'o 's 's CB41 -> 'J 'j 'y 'o 'n 'g CB42 -> 'J 'j 'y 'o 'j CB43 -> 'J 'j 'y 'o 'c 'h CB44 -> 'J 'j 'y 'o 'k CB45 -> 'J 'j 'y 'o 't CB46 -> 'J 'j 'y 'o 'p CB47 -> 'J 'j 'y 'o 'h CB48 -> 'J 'j 'u CB49 -> 'J 'j 'u 'g CB4A -> 'J 'j 'u 'g 'g CB4B -> 'J 'j 'u 'g 's CB4C -> 'J 'j 'u 'n CB4D -> 'J 'j 'u 'n 'j CB4E -> 'J 'j 'u 'n 'h CB4F -> 'J 'j 'u 'd CB50 -> 'J 'j 'u 'l CB51 -> 'J 'j 'u 'l 'g CB52 -> 'J 'j 'u 'l 'm CB53 -> 'J 'j 'u 'l 'b CB54 -> 'J 'j 'u 'l 's CB55 -> 'J 'j 'u 'l 't CB56 -> 'J 'j 'u 'l 'p CB57 -> 'J 'j 'u 'l 'h CB58 -> 'J 'j 'u 'm CB59 -> 'J 'j 'u 'b CB5A -> 'J 'j 'u 'b 's CB5B -> 'J 'j 'u 's CB5C -> 'J 'j 'u 's 's CB5D -> 'J 'j 'u 'n 'g CB5E -> 'J 'j 'u 'j CB5F -> 'J 'j 'u 'c 'h CB60 -> 'J 'j 'u 'k CB61 -> 'J 'j 'u 't CB62 -> 'J 'j 'u 'p CB63 -> 'J 'j 'u 'h CB64 -> 'J 'j 'u 'e 'o CB65 -> 'J 'j 'u 'e 'o 'g CB66 -> 'J 'j 'u 'e 'o 'g 'g CB67 -> 'J 'j 'u 'e 'o 'g 's CB68 -> 'J 'j 'u 'e 'o 'n CB69 -> 'J 'j 'u 'e 'o 'n 'j CB6A -> 'J 'j 'u 'e 'o 'n 'h CB6B -> 'J 'j 'u 'e 'o 'd CB6C -> 'J 'j 'u 'e 'o 'l CB6D -> 'J 'j 'u 'e 'o 'l 'g CB6E -> 'J 'j 'u 'e 'o 'l 'm CB6F -> 'J 'j 'u 'e 'o 'l 'b CB70 -> 'J 'j 'u 'e 'o 'l 's CB71 -> 'J 'j 'u 'e 'o 'l 't CB72 -> 'J 'j 'u 'e 'o 'l 'p CB73 -> 'J 'j 'u 'e 'o 'l 'h CB74 -> 'J 'j 'u 'e 'o 'm CB75 -> 'J 'j 'u 'e 'o 'b CB76 -> 'J 'j 'u 'e 'o 'b 's CB77 -> 'J 'j 'u 'e 'o 's CB78 -> 'J 'j 'u 'e 'o 's 's CB79 -> 'J 'j 'u 'e 'o 'n 'g CB7A -> 'J 'j 'u 'e 'o 'j CB7B -> 'J 'j 'u 'e 'o 'c 'h CB7C -> 'J 'j 'u 'e 'o 'k CB7D -> 'J 'j 'u 'e 'o 't CB7E -> 'J 'j 'u 'e 'o 'p CB7F -> 'J 'j 'u 'e 'o 'h CB80 -> 'J 'j 'u 'e CB81 -> 'J 'j 'u 'e 'g CB82 -> 'J 'j 'u 'e 'g 'g CB83 -> 'J 'j 'u 'e 'g 's CB84 -> 'J 'j 'u 'e 'n CB85 -> 'J 'j 'u 'e 'n 'j CB86 -> 'J 'j 'u 'e 'n 'h CB87 -> 'J 'j 'u 'e 'd CB88 -> 'J 'j 'u 'e 'l CB89 -> 'J 'j 'u 'e 'l 'g CB8A -> 'J 'j 'u 'e 'l 'm CB8B -> 'J 'j 'u 'e 'l 'b CB8C -> 'J 'j 'u 'e 'l 's CB8D -> 'J 'j 'u 'e 'l 't CB8E -> 'J 'j 'u 'e 'l 'p CB8F -> 'J 'j 'u 'e 'l 'h CB90 -> 'J 'j 'u 'e 'm CB91 -> 'J 'j 'u 'e 'b CB92 -> 'J 'j 'u 'e 'b 's CB93 -> 'J 'j 'u 'e 's CB94 -> 'J 'j 'u 'e 's 's CB95 -> 'J 'j 'u 'e 'n 'g CB96 -> 'J 'j 'u 'e 'j CB97 -> 'J 'j 'u 'e 'c 'h CB98 -> 'J 'j 'u 'e 'k CB99 -> 'J 'j 'u 'e 't CB9A -> 'J 'j 'u 'e 'p CB9B -> 'J 'j 'u 'e 'h CB9C -> 'J 'j 'u 'i CB9D -> 'J 'j 'u 'i 'g CB9E -> 'J 'j 'u 'i 'g 'g CB9F -> 'J 'j 'u 'i 'g 's CBA0 -> 'J 'j 'u 'i 'n CBA1 -> 'J 'j 'u 'i 'n 'j CBA2 -> 'J 'j 'u 'i 'n 'h CBA3 -> 'J 'j 'u 'i 'd CBA4 -> 'J 'j 'u 'i 'l CBA5 -> 'J 'j 'u 'i 'l 'g CBA6 -> 'J 'j 'u 'i 'l 'm CBA7 -> 'J 'j 'u 'i 'l 'b CBA8 -> 'J 'j 'u 'i 'l 's CBA9 -> 'J 'j 'u 'i 'l 't CBAA -> 'J 'j 'u 'i 'l 'p CBAB -> 'J 'j 'u 'i 'l 'h CBAC -> 'J 'j 'u 'i 'm CBAD -> 'J 'j 'u 'i 'b CBAE -> 'J 'j 'u 'i 'b 's CBAF -> 'J 'j 'u 'i 's CBB0 -> 'J 'j 'u 'i 's 's CBB1 -> 'J 'j 'u 'i 'n 'g CBB2 -> 'J 'j 'u 'i 'j CBB3 -> 'J 'j 'u 'i 'c 'h CBB4 -> 'J 'j 'u 'i 'k CBB5 -> 'J 'j 'u 'i 't CBB6 -> 'J 'j 'u 'i 'p CBB7 -> 'J 'j 'u 'i 'h CBB8 -> 'J 'j 'y 'u CBB9 -> 'J 'j 'y 'u 'g CBBA -> 'J 'j 'y 'u 'g 'g CBBB -> 'J 'j 'y 'u 'g 's CBBC -> 'J 'j 'y 'u 'n CBBD -> 'J 'j 'y 'u 'n 'j CBBE -> 'J 'j 'y 'u 'n 'h CBBF -> 'J 'j 'y 'u 'd CBC0 -> 'J 'j 'y 'u 'l CBC1 -> 'J 'j 'y 'u 'l 'g CBC2 -> 'J 'j 'y 'u 'l 'm CBC3 -> 'J 'j 'y 'u 'l 'b CBC4 -> 'J 'j 'y 'u 'l 's CBC5 -> 'J 'j 'y 'u 'l 't CBC6 -> 'J 'j 'y 'u 'l 'p CBC7 -> 'J 'j 'y 'u 'l 'h CBC8 -> 'J 'j 'y 'u 'm CBC9 -> 'J 'j 'y 'u 'b CBCA -> 'J 'j 'y 'u 'b 's CBCB -> 'J 'j 'y 'u 's CBCC -> 'J 'j 'y 'u 's 's CBCD -> 'J 'j 'y 'u 'n 'g CBCE -> 'J 'j 'y 'u 'j CBCF -> 'J 'j 'y 'u 'c 'h CBD0 -> 'J 'j 'y 'u 'k CBD1 -> 'J 'j 'y 'u 't CBD2 -> 'J 'j 'y 'u 'p CBD3 -> 'J 'j 'y 'u 'h CBD4 -> 'J 'j 'e 'u CBD5 -> 'J 'j 'e 'u 'g CBD6 -> 'J 'j 'e 'u 'g 'g CBD7 -> 'J 'j 'e 'u 'g 's CBD8 -> 'J 'j 'e 'u 'n CBD9 -> 'J 'j 'e 'u 'n 'j CBDA -> 'J 'j 'e 'u 'n 'h CBDB -> 'J 'j 'e 'u 'd CBDC -> 'J 'j 'e 'u 'l CBDD -> 'J 'j 'e 'u 'l 'g CBDE -> 'J 'j 'e 'u 'l 'm CBDF -> 'J 'j 'e 'u 'l 'b CBE0 -> 'J 'j 'e 'u 'l 's CBE1 -> 'J 'j 'e 'u 'l 't CBE2 -> 'J 'j 'e 'u 'l 'p CBE3 -> 'J 'j 'e 'u 'l 'h CBE4 -> 'J 'j 'e 'u 'm CBE5 -> 'J 'j 'e 'u 'b CBE6 -> 'J 'j 'e 'u 'b 's CBE7 -> 'J 'j 'e 'u 's CBE8 -> 'J 'j 'e 'u 's 's CBE9 -> 'J 'j 'e 'u 'n 'g CBEA -> 'J 'j 'e 'u 'j CBEB -> 'J 'j 'e 'u 'c 'h CBEC -> 'J 'j 'e 'u 'k CBED -> 'J 'j 'e 'u 't CBEE -> 'J 'j 'e 'u 'p CBEF -> 'J 'j 'e 'u 'h CBF0 -> 'J 'j 'e 'u 'i CBF1 -> 'J 'j 'e 'u 'i 'g CBF2 -> 'J 'j 'e 'u 'i 'g 'g CBF3 -> 'J 'j 'e 'u 'i 'g 's CBF4 -> 'J 'j 'e 'u 'i 'n CBF5 -> 'J 'j 'e 'u 'i 'n 'j CBF6 -> 'J 'j 'e 'u 'i 'n 'h CBF7 -> 'J 'j 'e 'u 'i 'd CBF8 -> 'J 'j 'e 'u 'i 'l CBF9 -> 'J 'j 'e 'u 'i 'l 'g CBFA -> 'J 'j 'e 'u 'i 'l 'm CBFB -> 'J 'j 'e 'u 'i 'l 'b CBFC -> 'J 'j 'e 'u 'i 'l 's CBFD -> 'J 'j 'e 'u 'i 'l 't CBFE -> 'J 'j 'e 'u 'i 'l 'p CBFF -> 'J 'j 'e 'u 'i 'l 'h CC00 -> 'J 'j 'e 'u 'i 'm CC01 -> 'J 'j 'e 'u 'i 'b CC02 -> 'J 'j 'e 'u 'i 'b 's CC03 -> 'J 'j 'e 'u 'i 's CC04 -> 'J 'j 'e 'u 'i 's 's CC05 -> 'J 'j 'e 'u 'i 'n 'g CC06 -> 'J 'j 'e 'u 'i 'j CC07 -> 'J 'j 'e 'u 'i 'c 'h CC08 -> 'J 'j 'e 'u 'i 'k CC09 -> 'J 'j 'e 'u 'i 't CC0A -> 'J 'j 'e 'u 'i 'p CC0B -> 'J 'j 'e 'u 'i 'h CC0C -> 'J 'j 'i CC0D -> 'J 'j 'i 'g CC0E -> 'J 'j 'i 'g 'g CC0F -> 'J 'j 'i 'g 's CC10 -> 'J 'j 'i 'n CC11 -> 'J 'j 'i 'n 'j CC12 -> 'J 'j 'i 'n 'h CC13 -> 'J 'j 'i 'd CC14 -> 'J 'j 'i 'l CC15 -> 'J 'j 'i 'l 'g CC16 -> 'J 'j 'i 'l 'm CC17 -> 'J 'j 'i 'l 'b CC18 -> 'J 'j 'i 'l 's CC19 -> 'J 'j 'i 'l 't CC1A -> 'J 'j 'i 'l 'p CC1B -> 'J 'j 'i 'l 'h CC1C -> 'J 'j 'i 'm CC1D -> 'J 'j 'i 'b CC1E -> 'J 'j 'i 'b 's CC1F -> 'J 'j 'i 's CC20 -> 'J 'j 'i 's 's CC21 -> 'J 'j 'i 'n 'g CC22 -> 'J 'j 'i 'j CC23 -> 'J 'j 'i 'c 'h CC24 -> 'J 'j 'i 'k CC25 -> 'J 'j 'i 't CC26 -> 'J 'j 'i 'p CC27 -> 'J 'j 'i 'h CC28 -> 'C 'h 'a CC29 -> 'C 'h 'a 'g CC2A -> 'C 'h 'a 'g 'g CC2B -> 'C 'h 'a 'g 's CC2C -> 'C 'h 'a 'n CC2D -> 'C 'h 'a 'n 'j CC2E -> 'C 'h 'a 'n 'h CC2F -> 'C 'h 'a 'd CC30 -> 'C 'h 'a 'l CC31 -> 'C 'h 'a 'l 'g CC32 -> 'C 'h 'a 'l 'm CC33 -> 'C 'h 'a 'l 'b CC34 -> 'C 'h 'a 'l 's CC35 -> 'C 'h 'a 'l 't CC36 -> 'C 'h 'a 'l 'p CC37 -> 'C 'h 'a 'l 'h CC38 -> 'C 'h 'a 'm CC39 -> 'C 'h 'a 'b CC3A -> 'C 'h 'a 'b 's CC3B -> 'C 'h 'a 's CC3C -> 'C 'h 'a 's 's CC3D -> 'C 'h 'a 'n 'g CC3E -> 'C 'h 'a 'j CC3F -> 'C 'h 'a 'c 'h CC40 -> 'C 'h 'a 'k CC41 -> 'C 'h 'a 't CC42 -> 'C 'h 'a 'p CC43 -> 'C 'h 'a 'h CC44 -> 'C 'h 'a 'e CC45 -> 'C 'h 'a 'e 'g CC46 -> 'C 'h 'a 'e 'g 'g CC47 -> 'C 'h 'a 'e 'g 's CC48 -> 'C 'h 'a 'e 'n CC49 -> 'C 'h 'a 'e 'n 'j CC4A -> 'C 'h 'a 'e 'n 'h CC4B -> 'C 'h 'a 'e 'd CC4C -> 'C 'h 'a 'e 'l CC4D -> 'C 'h 'a 'e 'l 'g CC4E -> 'C 'h 'a 'e 'l 'm CC4F -> 'C 'h 'a 'e 'l 'b CC50 -> 'C 'h 'a 'e 'l 's CC51 -> 'C 'h 'a 'e 'l 't CC52 -> 'C 'h 'a 'e 'l 'p CC53 -> 'C 'h 'a 'e 'l 'h CC54 -> 'C 'h 'a 'e 'm CC55 -> 'C 'h 'a 'e 'b CC56 -> 'C 'h 'a 'e 'b 's CC57 -> 'C 'h 'a 'e 's CC58 -> 'C 'h 'a 'e 's 's CC59 -> 'C 'h 'a 'e 'n 'g CC5A -> 'C 'h 'a 'e 'j CC5B -> 'C 'h 'a 'e 'c 'h CC5C -> 'C 'h 'a 'e 'k CC5D -> 'C 'h 'a 'e 't CC5E -> 'C 'h 'a 'e 'p CC5F -> 'C 'h 'a 'e 'h CC60 -> 'C 'h 'y 'a CC61 -> 'C 'h 'y 'a 'g CC62 -> 'C 'h 'y 'a 'g 'g CC63 -> 'C 'h 'y 'a 'g 's CC64 -> 'C 'h 'y 'a 'n CC65 -> 'C 'h 'y 'a 'n 'j CC66 -> 'C 'h 'y 'a 'n 'h CC67 -> 'C 'h 'y 'a 'd CC68 -> 'C 'h 'y 'a 'l CC69 -> 'C 'h 'y 'a 'l 'g CC6A -> 'C 'h 'y 'a 'l 'm CC6B -> 'C 'h 'y 'a 'l 'b CC6C -> 'C 'h 'y 'a 'l 's CC6D -> 'C 'h 'y 'a 'l 't CC6E -> 'C 'h 'y 'a 'l 'p CC6F -> 'C 'h 'y 'a 'l 'h CC70 -> 'C 'h 'y 'a 'm CC71 -> 'C 'h 'y 'a 'b CC72 -> 'C 'h 'y 'a 'b 's CC73 -> 'C 'h 'y 'a 's CC74 -> 'C 'h 'y 'a 's 's CC75 -> 'C 'h 'y 'a 'n 'g CC76 -> 'C 'h 'y 'a 'j CC77 -> 'C 'h 'y 'a 'c 'h CC78 -> 'C 'h 'y 'a 'k CC79 -> 'C 'h 'y 'a 't CC7A -> 'C 'h 'y 'a 'p CC7B -> 'C 'h 'y 'a 'h CC7C -> 'C 'h 'y 'a 'e CC7D -> 'C 'h 'y 'a 'e 'g CC7E -> 'C 'h 'y 'a 'e 'g 'g CC7F -> 'C 'h 'y 'a 'e 'g 's CC80 -> 'C 'h 'y 'a 'e 'n CC81 -> 'C 'h 'y 'a 'e 'n 'j CC82 -> 'C 'h 'y 'a 'e 'n 'h CC83 -> 'C 'h 'y 'a 'e 'd CC84 -> 'C 'h 'y 'a 'e 'l CC85 -> 'C 'h 'y 'a 'e 'l 'g CC86 -> 'C 'h 'y 'a 'e 'l 'm CC87 -> 'C 'h 'y 'a 'e 'l 'b CC88 -> 'C 'h 'y 'a 'e 'l 's CC89 -> 'C 'h 'y 'a 'e 'l 't CC8A -> 'C 'h 'y 'a 'e 'l 'p CC8B -> 'C 'h 'y 'a 'e 'l 'h CC8C -> 'C 'h 'y 'a 'e 'm CC8D -> 'C 'h 'y 'a 'e 'b CC8E -> 'C 'h 'y 'a 'e 'b 's CC8F -> 'C 'h 'y 'a 'e 's CC90 -> 'C 'h 'y 'a 'e 's 's CC91 -> 'C 'h 'y 'a 'e 'n 'g CC92 -> 'C 'h 'y 'a 'e 'j CC93 -> 'C 'h 'y 'a 'e 'c 'h CC94 -> 'C 'h 'y 'a 'e 'k CC95 -> 'C 'h 'y 'a 'e 't CC96 -> 'C 'h 'y 'a 'e 'p CC97 -> 'C 'h 'y 'a 'e 'h CC98 -> 'C 'h 'e 'o CC99 -> 'C 'h 'e 'o 'g CC9A -> 'C 'h 'e 'o 'g 'g CC9B -> 'C 'h 'e 'o 'g 's CC9C -> 'C 'h 'e 'o 'n CC9D -> 'C 'h 'e 'o 'n 'j CC9E -> 'C 'h 'e 'o 'n 'h CC9F -> 'C 'h 'e 'o 'd CCA0 -> 'C 'h 'e 'o 'l CCA1 -> 'C 'h 'e 'o 'l 'g CCA2 -> 'C 'h 'e 'o 'l 'm CCA3 -> 'C 'h 'e 'o 'l 'b CCA4 -> 'C 'h 'e 'o 'l 's CCA5 -> 'C 'h 'e 'o 'l 't CCA6 -> 'C 'h 'e 'o 'l 'p CCA7 -> 'C 'h 'e 'o 'l 'h CCA8 -> 'C 'h 'e 'o 'm CCA9 -> 'C 'h 'e 'o 'b CCAA -> 'C 'h 'e 'o 'b 's CCAB -> 'C 'h 'e 'o 's CCAC -> 'C 'h 'e 'o 's 's CCAD -> 'C 'h 'e 'o 'n 'g CCAE -> 'C 'h 'e 'o 'j CCAF -> 'C 'h 'e 'o 'c 'h CCB0 -> 'C 'h 'e 'o 'k CCB1 -> 'C 'h 'e 'o 't CCB2 -> 'C 'h 'e 'o 'p CCB3 -> 'C 'h 'e 'o 'h CCB4 -> 'C 'h 'e CCB5 -> 'C 'h 'e 'g CCB6 -> 'C 'h 'e 'g 'g CCB7 -> 'C 'h 'e 'g 's CCB8 -> 'C 'h 'e 'n CCB9 -> 'C 'h 'e 'n 'j CCBA -> 'C 'h 'e 'n 'h CCBB -> 'C 'h 'e 'd CCBC -> 'C 'h 'e 'l CCBD -> 'C 'h 'e 'l 'g CCBE -> 'C 'h 'e 'l 'm CCBF -> 'C 'h 'e 'l 'b CCC0 -> 'C 'h 'e 'l 's CCC1 -> 'C 'h 'e 'l 't CCC2 -> 'C 'h 'e 'l 'p CCC3 -> 'C 'h 'e 'l 'h CCC4 -> 'C 'h 'e 'm CCC5 -> 'C 'h 'e 'b CCC6 -> 'C 'h 'e 'b 's CCC7 -> 'C 'h 'e 's CCC8 -> 'C 'h 'e 's 's CCC9 -> 'C 'h 'e 'n 'g CCCA -> 'C 'h 'e 'j CCCB -> 'C 'h 'e 'c 'h CCCC -> 'C 'h 'e 'k CCCD -> 'C 'h 'e 't CCCE -> 'C 'h 'e 'p CCCF -> 'C 'h 'e 'h CCD0 -> 'C 'h 'y 'e 'o CCD1 -> 'C 'h 'y 'e 'o 'g CCD2 -> 'C 'h 'y 'e 'o 'g 'g CCD3 -> 'C 'h 'y 'e 'o 'g 's CCD4 -> 'C 'h 'y 'e 'o 'n CCD5 -> 'C 'h 'y 'e 'o 'n 'j CCD6 -> 'C 'h 'y 'e 'o 'n 'h CCD7 -> 'C 'h 'y 'e 'o 'd CCD8 -> 'C 'h 'y 'e 'o 'l CCD9 -> 'C 'h 'y 'e 'o 'l 'g CCDA -> 'C 'h 'y 'e 'o 'l 'm CCDB -> 'C 'h 'y 'e 'o 'l 'b CCDC -> 'C 'h 'y 'e 'o 'l 's CCDD -> 'C 'h 'y 'e 'o 'l 't CCDE -> 'C 'h 'y 'e 'o 'l 'p CCDF -> 'C 'h 'y 'e 'o 'l 'h CCE0 -> 'C 'h 'y 'e 'o 'm CCE1 -> 'C 'h 'y 'e 'o 'b CCE2 -> 'C 'h 'y 'e 'o 'b 's CCE3 -> 'C 'h 'y 'e 'o 's CCE4 -> 'C 'h 'y 'e 'o 's 's CCE5 -> 'C 'h 'y 'e 'o 'n 'g CCE6 -> 'C 'h 'y 'e 'o 'j CCE7 -> 'C 'h 'y 'e 'o 'c 'h CCE8 -> 'C 'h 'y 'e 'o 'k CCE9 -> 'C 'h 'y 'e 'o 't CCEA -> 'C 'h 'y 'e 'o 'p CCEB -> 'C 'h 'y 'e 'o 'h CCEC -> 'C 'h 'y 'e CCED -> 'C 'h 'y 'e 'g CCEE -> 'C 'h 'y 'e 'g 'g CCEF -> 'C 'h 'y 'e 'g 's CCF0 -> 'C 'h 'y 'e 'n CCF1 -> 'C 'h 'y 'e 'n 'j CCF2 -> 'C 'h 'y 'e 'n 'h CCF3 -> 'C 'h 'y 'e 'd CCF4 -> 'C 'h 'y 'e 'l CCF5 -> 'C 'h 'y 'e 'l 'g CCF6 -> 'C 'h 'y 'e 'l 'm CCF7 -> 'C 'h 'y 'e 'l 'b CCF8 -> 'C 'h 'y 'e 'l 's CCF9 -> 'C 'h 'y 'e 'l 't CCFA -> 'C 'h 'y 'e 'l 'p CCFB -> 'C 'h 'y 'e 'l 'h CCFC -> 'C 'h 'y 'e 'm CCFD -> 'C 'h 'y 'e 'b CCFE -> 'C 'h 'y 'e 'b 's CCFF -> 'C 'h 'y 'e 's CD00 -> 'C 'h 'y 'e 's 's CD01 -> 'C 'h 'y 'e 'n 'g CD02 -> 'C 'h 'y 'e 'j CD03 -> 'C 'h 'y 'e 'c 'h CD04 -> 'C 'h 'y 'e 'k CD05 -> 'C 'h 'y 'e 't CD06 -> 'C 'h 'y 'e 'p CD07 -> 'C 'h 'y 'e 'h CD08 -> 'C 'h 'o CD09 -> 'C 'h 'o 'g CD0A -> 'C 'h 'o 'g 'g CD0B -> 'C 'h 'o 'g 's CD0C -> 'C 'h 'o 'n CD0D -> 'C 'h 'o 'n 'j CD0E -> 'C 'h 'o 'n 'h CD0F -> 'C 'h 'o 'd CD10 -> 'C 'h 'o 'l CD11 -> 'C 'h 'o 'l 'g CD12 -> 'C 'h 'o 'l 'm CD13 -> 'C 'h 'o 'l 'b CD14 -> 'C 'h 'o 'l 's CD15 -> 'C 'h 'o 'l 't CD16 -> 'C 'h 'o 'l 'p CD17 -> 'C 'h 'o 'l 'h CD18 -> 'C 'h 'o 'm CD19 -> 'C 'h 'o 'b CD1A -> 'C 'h 'o 'b 's CD1B -> 'C 'h 'o 's CD1C -> 'C 'h 'o 's 's CD1D -> 'C 'h 'o 'n 'g CD1E -> 'C 'h 'o 'j CD1F -> 'C 'h 'o 'c 'h CD20 -> 'C 'h 'o 'k CD21 -> 'C 'h 'o 't CD22 -> 'C 'h 'o 'p CD23 -> 'C 'h 'o 'h CD24 -> 'C 'h 'o 'a CD25 -> 'C 'h 'o 'a 'g CD26 -> 'C 'h 'o 'a 'g 'g CD27 -> 'C 'h 'o 'a 'g 's CD28 -> 'C 'h 'o 'a 'n CD29 -> 'C 'h 'o 'a 'n 'j CD2A -> 'C 'h 'o 'a 'n 'h CD2B -> 'C 'h 'o 'a 'd CD2C -> 'C 'h 'o 'a 'l CD2D -> 'C 'h 'o 'a 'l 'g CD2E -> 'C 'h 'o 'a 'l 'm CD2F -> 'C 'h 'o 'a 'l 'b CD30 -> 'C 'h 'o 'a 'l 's CD31 -> 'C 'h 'o 'a 'l 't CD32 -> 'C 'h 'o 'a 'l 'p CD33 -> 'C 'h 'o 'a 'l 'h CD34 -> 'C 'h 'o 'a 'm CD35 -> 'C 'h 'o 'a 'b CD36 -> 'C 'h 'o 'a 'b 's CD37 -> 'C 'h 'o 'a 's CD38 -> 'C 'h 'o 'a 's 's CD39 -> 'C 'h 'o 'a 'n 'g CD3A -> 'C 'h 'o 'a 'j CD3B -> 'C 'h 'o 'a 'c 'h CD3C -> 'C 'h 'o 'a 'k CD3D -> 'C 'h 'o 'a 't CD3E -> 'C 'h 'o 'a 'p CD3F -> 'C 'h 'o 'a 'h CD40 -> 'C 'h 'o 'a 'e CD41 -> 'C 'h 'o 'a 'e 'g CD42 -> 'C 'h 'o 'a 'e 'g 'g CD43 -> 'C 'h 'o 'a 'e 'g 's CD44 -> 'C 'h 'o 'a 'e 'n CD45 -> 'C 'h 'o 'a 'e 'n 'j CD46 -> 'C 'h 'o 'a 'e 'n 'h CD47 -> 'C 'h 'o 'a 'e 'd CD48 -> 'C 'h 'o 'a 'e 'l CD49 -> 'C 'h 'o 'a 'e 'l 'g CD4A -> 'C 'h 'o 'a 'e 'l 'm CD4B -> 'C 'h 'o 'a 'e 'l 'b CD4C -> 'C 'h 'o 'a 'e 'l 's CD4D -> 'C 'h 'o 'a 'e 'l 't CD4E -> 'C 'h 'o 'a 'e 'l 'p CD4F -> 'C 'h 'o 'a 'e 'l 'h CD50 -> 'C 'h 'o 'a 'e 'm CD51 -> 'C 'h 'o 'a 'e 'b CD52 -> 'C 'h 'o 'a 'e 'b 's CD53 -> 'C 'h 'o 'a 'e 's CD54 -> 'C 'h 'o 'a 'e 's 's CD55 -> 'C 'h 'o 'a 'e 'n 'g CD56 -> 'C 'h 'o 'a 'e 'j CD57 -> 'C 'h 'o 'a 'e 'c 'h CD58 -> 'C 'h 'o 'a 'e 'k CD59 -> 'C 'h 'o 'a 'e 't CD5A -> 'C 'h 'o 'a 'e 'p CD5B -> 'C 'h 'o 'a 'e 'h CD5C -> 'C 'h 'o 'i CD5D -> 'C 'h 'o 'i 'g CD5E -> 'C 'h 'o 'i 'g 'g CD5F -> 'C 'h 'o 'i 'g 's CD60 -> 'C 'h 'o 'i 'n CD61 -> 'C 'h 'o 'i 'n 'j CD62 -> 'C 'h 'o 'i 'n 'h CD63 -> 'C 'h 'o 'i 'd CD64 -> 'C 'h 'o 'i 'l CD65 -> 'C 'h 'o 'i 'l 'g CD66 -> 'C 'h 'o 'i 'l 'm CD67 -> 'C 'h 'o 'i 'l 'b CD68 -> 'C 'h 'o 'i 'l 's CD69 -> 'C 'h 'o 'i 'l 't CD6A -> 'C 'h 'o 'i 'l 'p CD6B -> 'C 'h 'o 'i 'l 'h CD6C -> 'C 'h 'o 'i 'm CD6D -> 'C 'h 'o 'i 'b CD6E -> 'C 'h 'o 'i 'b 's CD6F -> 'C 'h 'o 'i 's CD70 -> 'C 'h 'o 'i 's 's CD71 -> 'C 'h 'o 'i 'n 'g CD72 -> 'C 'h 'o 'i 'j CD73 -> 'C 'h 'o 'i 'c 'h CD74 -> 'C 'h 'o 'i 'k CD75 -> 'C 'h 'o 'i 't CD76 -> 'C 'h 'o 'i 'p CD77 -> 'C 'h 'o 'i 'h CD78 -> 'C 'h 'y 'o CD79 -> 'C 'h 'y 'o 'g CD7A -> 'C 'h 'y 'o 'g 'g CD7B -> 'C 'h 'y 'o 'g 's CD7C -> 'C 'h 'y 'o 'n CD7D -> 'C 'h 'y 'o 'n 'j CD7E -> 'C 'h 'y 'o 'n 'h CD7F -> 'C 'h 'y 'o 'd CD80 -> 'C 'h 'y 'o 'l CD81 -> 'C 'h 'y 'o 'l 'g CD82 -> 'C 'h 'y 'o 'l 'm CD83 -> 'C 'h 'y 'o 'l 'b CD84 -> 'C 'h 'y 'o 'l 's CD85 -> 'C 'h 'y 'o 'l 't CD86 -> 'C 'h 'y 'o 'l 'p CD87 -> 'C 'h 'y 'o 'l 'h CD88 -> 'C 'h 'y 'o 'm CD89 -> 'C 'h 'y 'o 'b CD8A -> 'C 'h 'y 'o 'b 's CD8B -> 'C 'h 'y 'o 's CD8C -> 'C 'h 'y 'o 's 's CD8D -> 'C 'h 'y 'o 'n 'g CD8E -> 'C 'h 'y 'o 'j CD8F -> 'C 'h 'y 'o 'c 'h CD90 -> 'C 'h 'y 'o 'k CD91 -> 'C 'h 'y 'o 't CD92 -> 'C 'h 'y 'o 'p CD93 -> 'C 'h 'y 'o 'h CD94 -> 'C 'h 'u CD95 -> 'C 'h 'u 'g CD96 -> 'C 'h 'u 'g 'g CD97 -> 'C 'h 'u 'g 's CD98 -> 'C 'h 'u 'n CD99 -> 'C 'h 'u 'n 'j CD9A -> 'C 'h 'u 'n 'h CD9B -> 'C 'h 'u 'd CD9C -> 'C 'h 'u 'l CD9D -> 'C 'h 'u 'l 'g CD9E -> 'C 'h 'u 'l 'm CD9F -> 'C 'h 'u 'l 'b CDA0 -> 'C 'h 'u 'l 's CDA1 -> 'C 'h 'u 'l 't CDA2 -> 'C 'h 'u 'l 'p CDA3 -> 'C 'h 'u 'l 'h CDA4 -> 'C 'h 'u 'm CDA5 -> 'C 'h 'u 'b CDA6 -> 'C 'h 'u 'b 's CDA7 -> 'C 'h 'u 's CDA8 -> 'C 'h 'u 's 's CDA9 -> 'C 'h 'u 'n 'g CDAA -> 'C 'h 'u 'j CDAB -> 'C 'h 'u 'c 'h CDAC -> 'C 'h 'u 'k CDAD -> 'C 'h 'u 't CDAE -> 'C 'h 'u 'p CDAF -> 'C 'h 'u 'h CDB0 -> 'C 'h 'u 'e 'o CDB1 -> 'C 'h 'u 'e 'o 'g CDB2 -> 'C 'h 'u 'e 'o 'g 'g CDB3 -> 'C 'h 'u 'e 'o 'g 's CDB4 -> 'C 'h 'u 'e 'o 'n CDB5 -> 'C 'h 'u 'e 'o 'n 'j CDB6 -> 'C 'h 'u 'e 'o 'n 'h CDB7 -> 'C 'h 'u 'e 'o 'd CDB8 -> 'C 'h 'u 'e 'o 'l CDB9 -> 'C 'h 'u 'e 'o 'l 'g CDBA -> 'C 'h 'u 'e 'o 'l 'm CDBB -> 'C 'h 'u 'e 'o 'l 'b CDBC -> 'C 'h 'u 'e 'o 'l 's CDBD -> 'C 'h 'u 'e 'o 'l 't CDBE -> 'C 'h 'u 'e 'o 'l 'p CDBF -> 'C 'h 'u 'e 'o 'l 'h CDC0 -> 'C 'h 'u 'e 'o 'm CDC1 -> 'C 'h 'u 'e 'o 'b CDC2 -> 'C 'h 'u 'e 'o 'b 's CDC3 -> 'C 'h 'u 'e 'o 's CDC4 -> 'C 'h 'u 'e 'o 's 's CDC5 -> 'C 'h 'u 'e 'o 'n 'g CDC6 -> 'C 'h 'u 'e 'o 'j CDC7 -> 'C 'h 'u 'e 'o 'c 'h CDC8 -> 'C 'h 'u 'e 'o 'k CDC9 -> 'C 'h 'u 'e 'o 't CDCA -> 'C 'h 'u 'e 'o 'p CDCB -> 'C 'h 'u 'e 'o 'h CDCC -> 'C 'h 'u 'e CDCD -> 'C 'h 'u 'e 'g CDCE -> 'C 'h 'u 'e 'g 'g CDCF -> 'C 'h 'u 'e 'g 's CDD0 -> 'C 'h 'u 'e 'n CDD1 -> 'C 'h 'u 'e 'n 'j CDD2 -> 'C 'h 'u 'e 'n 'h CDD3 -> 'C 'h 'u 'e 'd CDD4 -> 'C 'h 'u 'e 'l CDD5 -> 'C 'h 'u 'e 'l 'g CDD6 -> 'C 'h 'u 'e 'l 'm CDD7 -> 'C 'h 'u 'e 'l 'b CDD8 -> 'C 'h 'u 'e 'l 's CDD9 -> 'C 'h 'u 'e 'l 't CDDA -> 'C 'h 'u 'e 'l 'p CDDB -> 'C 'h 'u 'e 'l 'h CDDC -> 'C 'h 'u 'e 'm CDDD -> 'C 'h 'u 'e 'b CDDE -> 'C 'h 'u 'e 'b 's CDDF -> 'C 'h 'u 'e 's CDE0 -> 'C 'h 'u 'e 's 's CDE1 -> 'C 'h 'u 'e 'n 'g CDE2 -> 'C 'h 'u 'e 'j CDE3 -> 'C 'h 'u 'e 'c 'h CDE4 -> 'C 'h 'u 'e 'k CDE5 -> 'C 'h 'u 'e 't CDE6 -> 'C 'h 'u 'e 'p CDE7 -> 'C 'h 'u 'e 'h CDE8 -> 'C 'h 'u 'i CDE9 -> 'C 'h 'u 'i 'g CDEA -> 'C 'h 'u 'i 'g 'g CDEB -> 'C 'h 'u 'i 'g 's CDEC -> 'C 'h 'u 'i 'n CDED -> 'C 'h 'u 'i 'n 'j CDEE -> 'C 'h 'u 'i 'n 'h CDEF -> 'C 'h 'u 'i 'd CDF0 -> 'C 'h 'u 'i 'l CDF1 -> 'C 'h 'u 'i 'l 'g CDF2 -> 'C 'h 'u 'i 'l 'm CDF3 -> 'C 'h 'u 'i 'l 'b CDF4 -> 'C 'h 'u 'i 'l 's CDF5 -> 'C 'h 'u 'i 'l 't CDF6 -> 'C 'h 'u 'i 'l 'p CDF7 -> 'C 'h 'u 'i 'l 'h CDF8 -> 'C 'h 'u 'i 'm CDF9 -> 'C 'h 'u 'i 'b CDFA -> 'C 'h 'u 'i 'b 's CDFB -> 'C 'h 'u 'i 's CDFC -> 'C 'h 'u 'i 's 's CDFD -> 'C 'h 'u 'i 'n 'g CDFE -> 'C 'h 'u 'i 'j CDFF -> 'C 'h 'u 'i 'c 'h CE00 -> 'C 'h 'u 'i 'k CE01 -> 'C 'h 'u 'i 't CE02 -> 'C 'h 'u 'i 'p CE03 -> 'C 'h 'u 'i 'h CE04 -> 'C 'h 'y 'u CE05 -> 'C 'h 'y 'u 'g CE06 -> 'C 'h 'y 'u 'g 'g CE07 -> 'C 'h 'y 'u 'g 's CE08 -> 'C 'h 'y 'u 'n CE09 -> 'C 'h 'y 'u 'n 'j CE0A -> 'C 'h 'y 'u 'n 'h CE0B -> 'C 'h 'y 'u 'd CE0C -> 'C 'h 'y 'u 'l CE0D -> 'C 'h 'y 'u 'l 'g CE0E -> 'C 'h 'y 'u 'l 'm CE0F -> 'C 'h 'y 'u 'l 'b CE10 -> 'C 'h 'y 'u 'l 's CE11 -> 'C 'h 'y 'u 'l 't CE12 -> 'C 'h 'y 'u 'l 'p CE13 -> 'C 'h 'y 'u 'l 'h CE14 -> 'C 'h 'y 'u 'm CE15 -> 'C 'h 'y 'u 'b CE16 -> 'C 'h 'y 'u 'b 's CE17 -> 'C 'h 'y 'u 's CE18 -> 'C 'h 'y 'u 's 's CE19 -> 'C 'h 'y 'u 'n 'g CE1A -> 'C 'h 'y 'u 'j CE1B -> 'C 'h 'y 'u 'c 'h CE1C -> 'C 'h 'y 'u 'k CE1D -> 'C 'h 'y 'u 't CE1E -> 'C 'h 'y 'u 'p CE1F -> 'C 'h 'y 'u 'h CE20 -> 'C 'h 'e 'u CE21 -> 'C 'h 'e 'u 'g CE22 -> 'C 'h 'e 'u 'g 'g CE23 -> 'C 'h 'e 'u 'g 's CE24 -> 'C 'h 'e 'u 'n CE25 -> 'C 'h 'e 'u 'n 'j CE26 -> 'C 'h 'e 'u 'n 'h CE27 -> 'C 'h 'e 'u 'd CE28 -> 'C 'h 'e 'u 'l CE29 -> 'C 'h 'e 'u 'l 'g CE2A -> 'C 'h 'e 'u 'l 'm CE2B -> 'C 'h 'e 'u 'l 'b CE2C -> 'C 'h 'e 'u 'l 's CE2D -> 'C 'h 'e 'u 'l 't CE2E -> 'C 'h 'e 'u 'l 'p CE2F -> 'C 'h 'e 'u 'l 'h CE30 -> 'C 'h 'e 'u 'm CE31 -> 'C 'h 'e 'u 'b CE32 -> 'C 'h 'e 'u 'b 's CE33 -> 'C 'h 'e 'u 's CE34 -> 'C 'h 'e 'u 's 's CE35 -> 'C 'h 'e 'u 'n 'g CE36 -> 'C 'h 'e 'u 'j CE37 -> 'C 'h 'e 'u 'c 'h CE38 -> 'C 'h 'e 'u 'k CE39 -> 'C 'h 'e 'u 't CE3A -> 'C 'h 'e 'u 'p CE3B -> 'C 'h 'e 'u 'h CE3C -> 'C 'h 'e 'u 'i CE3D -> 'C 'h 'e 'u 'i 'g CE3E -> 'C 'h 'e 'u 'i 'g 'g CE3F -> 'C 'h 'e 'u 'i 'g 's CE40 -> 'C 'h 'e 'u 'i 'n CE41 -> 'C 'h 'e 'u 'i 'n 'j CE42 -> 'C 'h 'e 'u 'i 'n 'h CE43 -> 'C 'h 'e 'u 'i 'd CE44 -> 'C 'h 'e 'u 'i 'l CE45 -> 'C 'h 'e 'u 'i 'l 'g CE46 -> 'C 'h 'e 'u 'i 'l 'm CE47 -> 'C 'h 'e 'u 'i 'l 'b CE48 -> 'C 'h 'e 'u 'i 'l 's CE49 -> 'C 'h 'e 'u 'i 'l 't CE4A -> 'C 'h 'e 'u 'i 'l 'p CE4B -> 'C 'h 'e 'u 'i 'l 'h CE4C -> 'C 'h 'e 'u 'i 'm CE4D -> 'C 'h 'e 'u 'i 'b CE4E -> 'C 'h 'e 'u 'i 'b 's CE4F -> 'C 'h 'e 'u 'i 's CE50 -> 'C 'h 'e 'u 'i 's 's CE51 -> 'C 'h 'e 'u 'i 'n 'g CE52 -> 'C 'h 'e 'u 'i 'j CE53 -> 'C 'h 'e 'u 'i 'c 'h CE54 -> 'C 'h 'e 'u 'i 'k CE55 -> 'C 'h 'e 'u 'i 't CE56 -> 'C 'h 'e 'u 'i 'p CE57 -> 'C 'h 'e 'u 'i 'h CE58 -> 'C 'h 'i CE59 -> 'C 'h 'i 'g CE5A -> 'C 'h 'i 'g 'g CE5B -> 'C 'h 'i 'g 's CE5C -> 'C 'h 'i 'n CE5D -> 'C 'h 'i 'n 'j CE5E -> 'C 'h 'i 'n 'h CE5F -> 'C 'h 'i 'd CE60 -> 'C 'h 'i 'l CE61 -> 'C 'h 'i 'l 'g CE62 -> 'C 'h 'i 'l 'm CE63 -> 'C 'h 'i 'l 'b CE64 -> 'C 'h 'i 'l 's CE65 -> 'C 'h 'i 'l 't CE66 -> 'C 'h 'i 'l 'p CE67 -> 'C 'h 'i 'l 'h CE68 -> 'C 'h 'i 'm CE69 -> 'C 'h 'i 'b CE6A -> 'C 'h 'i 'b 's CE6B -> 'C 'h 'i 's CE6C -> 'C 'h 'i 's 's CE6D -> 'C 'h 'i 'n 'g CE6E -> 'C 'h 'i 'j CE6F -> 'C 'h 'i 'c 'h CE70 -> 'C 'h 'i 'k CE71 -> 'C 'h 'i 't CE72 -> 'C 'h 'i 'p CE73 -> 'C 'h 'i 'h CE74 -> 'K 'a CE75 -> 'K 'a 'g CE76 -> 'K 'a 'g 'g CE77 -> 'K 'a 'g 's CE78 -> 'K 'a 'n CE79 -> 'K 'a 'n 'j CE7A -> 'K 'a 'n 'h CE7B -> 'K 'a 'd CE7C -> 'K 'a 'l CE7D -> 'K 'a 'l 'g CE7E -> 'K 'a 'l 'm CE7F -> 'K 'a 'l 'b CE80 -> 'K 'a 'l 's CE81 -> 'K 'a 'l 't CE82 -> 'K 'a 'l 'p CE83 -> 'K 'a 'l 'h CE84 -> 'K 'a 'm CE85 -> 'K 'a 'b CE86 -> 'K 'a 'b 's CE87 -> 'K 'a 's CE88 -> 'K 'a 's 's CE89 -> 'K 'a 'n 'g CE8A -> 'K 'a 'j CE8B -> 'K 'a 'c 'h CE8C -> 'K 'a 'k CE8D -> 'K 'a 't CE8E -> 'K 'a 'p CE8F -> 'K 'a 'h CE90 -> 'K 'a 'e CE91 -> 'K 'a 'e 'g CE92 -> 'K 'a 'e 'g 'g CE93 -> 'K 'a 'e 'g 's CE94 -> 'K 'a 'e 'n CE95 -> 'K 'a 'e 'n 'j CE96 -> 'K 'a 'e 'n 'h CE97 -> 'K 'a 'e 'd CE98 -> 'K 'a 'e 'l CE99 -> 'K 'a 'e 'l 'g CE9A -> 'K 'a 'e 'l 'm CE9B -> 'K 'a 'e 'l 'b CE9C -> 'K 'a 'e 'l 's CE9D -> 'K 'a 'e 'l 't CE9E -> 'K 'a 'e 'l 'p CE9F -> 'K 'a 'e 'l 'h CEA0 -> 'K 'a 'e 'm CEA1 -> 'K 'a 'e 'b CEA2 -> 'K 'a 'e 'b 's CEA3 -> 'K 'a 'e 's CEA4 -> 'K 'a 'e 's 's CEA5 -> 'K 'a 'e 'n 'g CEA6 -> 'K 'a 'e 'j CEA7 -> 'K 'a 'e 'c 'h CEA8 -> 'K 'a 'e 'k CEA9 -> 'K 'a 'e 't CEAA -> 'K 'a 'e 'p CEAB -> 'K 'a 'e 'h CEAC -> 'K 'y 'a CEAD -> 'K 'y 'a 'g CEAE -> 'K 'y 'a 'g 'g CEAF -> 'K 'y 'a 'g 's CEB0 -> 'K 'y 'a 'n CEB1 -> 'K 'y 'a 'n 'j CEB2 -> 'K 'y 'a 'n 'h CEB3 -> 'K 'y 'a 'd CEB4 -> 'K 'y 'a 'l CEB5 -> 'K 'y 'a 'l 'g CEB6 -> 'K 'y 'a 'l 'm CEB7 -> 'K 'y 'a 'l 'b CEB8 -> 'K 'y 'a 'l 's CEB9 -> 'K 'y 'a 'l 't CEBA -> 'K 'y 'a 'l 'p CEBB -> 'K 'y 'a 'l 'h CEBC -> 'K 'y 'a 'm CEBD -> 'K 'y 'a 'b CEBE -> 'K 'y 'a 'b 's CEBF -> 'K 'y 'a 's CEC0 -> 'K 'y 'a 's 's CEC1 -> 'K 'y 'a 'n 'g CEC2 -> 'K 'y 'a 'j CEC3 -> 'K 'y 'a 'c 'h CEC4 -> 'K 'y 'a 'k CEC5 -> 'K 'y 'a 't CEC6 -> 'K 'y 'a 'p CEC7 -> 'K 'y 'a 'h CEC8 -> 'K 'y 'a 'e CEC9 -> 'K 'y 'a 'e 'g CECA -> 'K 'y 'a 'e 'g 'g CECB -> 'K 'y 'a 'e 'g 's CECC -> 'K 'y 'a 'e 'n CECD -> 'K 'y 'a 'e 'n 'j CECE -> 'K 'y 'a 'e 'n 'h CECF -> 'K 'y 'a 'e 'd CED0 -> 'K 'y 'a 'e 'l CED1 -> 'K 'y 'a 'e 'l 'g CED2 -> 'K 'y 'a 'e 'l 'm CED3 -> 'K 'y 'a 'e 'l 'b CED4 -> 'K 'y 'a 'e 'l 's CED5 -> 'K 'y 'a 'e 'l 't CED6 -> 'K 'y 'a 'e 'l 'p CED7 -> 'K 'y 'a 'e 'l 'h CED8 -> 'K 'y 'a 'e 'm CED9 -> 'K 'y 'a 'e 'b CEDA -> 'K 'y 'a 'e 'b 's CEDB -> 'K 'y 'a 'e 's CEDC -> 'K 'y 'a 'e 's 's CEDD -> 'K 'y 'a 'e 'n 'g CEDE -> 'K 'y 'a 'e 'j CEDF -> 'K 'y 'a 'e 'c 'h CEE0 -> 'K 'y 'a 'e 'k CEE1 -> 'K 'y 'a 'e 't CEE2 -> 'K 'y 'a 'e 'p CEE3 -> 'K 'y 'a 'e 'h CEE4 -> 'K 'e 'o CEE5 -> 'K 'e 'o 'g CEE6 -> 'K 'e 'o 'g 'g CEE7 -> 'K 'e 'o 'g 's CEE8 -> 'K 'e 'o 'n CEE9 -> 'K 'e 'o 'n 'j CEEA -> 'K 'e 'o 'n 'h CEEB -> 'K 'e 'o 'd CEEC -> 'K 'e 'o 'l CEED -> 'K 'e 'o 'l 'g CEEE -> 'K 'e 'o 'l 'm CEEF -> 'K 'e 'o 'l 'b CEF0 -> 'K 'e 'o 'l 's CEF1 -> 'K 'e 'o 'l 't CEF2 -> 'K 'e 'o 'l 'p CEF3 -> 'K 'e 'o 'l 'h CEF4 -> 'K 'e 'o 'm CEF5 -> 'K 'e 'o 'b CEF6 -> 'K 'e 'o 'b 's CEF7 -> 'K 'e 'o 's CEF8 -> 'K 'e 'o 's 's CEF9 -> 'K 'e 'o 'n 'g CEFA -> 'K 'e 'o 'j CEFB -> 'K 'e 'o 'c 'h CEFC -> 'K 'e 'o 'k CEFD -> 'K 'e 'o 't CEFE -> 'K 'e 'o 'p CEFF -> 'K 'e 'o 'h CF00 -> 'K 'e CF01 -> 'K 'e 'g CF02 -> 'K 'e 'g 'g CF03 -> 'K 'e 'g 's CF04 -> 'K 'e 'n CF05 -> 'K 'e 'n 'j CF06 -> 'K 'e 'n 'h CF07 -> 'K 'e 'd CF08 -> 'K 'e 'l CF09 -> 'K 'e 'l 'g CF0A -> 'K 'e 'l 'm CF0B -> 'K 'e 'l 'b CF0C -> 'K 'e 'l 's CF0D -> 'K 'e 'l 't CF0E -> 'K 'e 'l 'p CF0F -> 'K 'e 'l 'h CF10 -> 'K 'e 'm CF11 -> 'K 'e 'b CF12 -> 'K 'e 'b 's CF13 -> 'K 'e 's CF14 -> 'K 'e 's 's CF15 -> 'K 'e 'n 'g CF16 -> 'K 'e 'j CF17 -> 'K 'e 'c 'h CF18 -> 'K 'e 'k CF19 -> 'K 'e 't CF1A -> 'K 'e 'p CF1B -> 'K 'e 'h CF1C -> 'K 'y 'e 'o CF1D -> 'K 'y 'e 'o 'g CF1E -> 'K 'y 'e 'o 'g 'g CF1F -> 'K 'y 'e 'o 'g 's CF20 -> 'K 'y 'e 'o 'n CF21 -> 'K 'y 'e 'o 'n 'j CF22 -> 'K 'y 'e 'o 'n 'h CF23 -> 'K 'y 'e 'o 'd CF24 -> 'K 'y 'e 'o 'l CF25 -> 'K 'y 'e 'o 'l 'g CF26 -> 'K 'y 'e 'o 'l 'm CF27 -> 'K 'y 'e 'o 'l 'b CF28 -> 'K 'y 'e 'o 'l 's CF29 -> 'K 'y 'e 'o 'l 't CF2A -> 'K 'y 'e 'o 'l 'p CF2B -> 'K 'y 'e 'o 'l 'h CF2C -> 'K 'y 'e 'o 'm CF2D -> 'K 'y 'e 'o 'b CF2E -> 'K 'y 'e 'o 'b 's CF2F -> 'K 'y 'e 'o 's CF30 -> 'K 'y 'e 'o 's 's CF31 -> 'K 'y 'e 'o 'n 'g CF32 -> 'K 'y 'e 'o 'j CF33 -> 'K 'y 'e 'o 'c 'h CF34 -> 'K 'y 'e 'o 'k CF35 -> 'K 'y 'e 'o 't CF36 -> 'K 'y 'e 'o 'p CF37 -> 'K 'y 'e 'o 'h CF38 -> 'K 'y 'e CF39 -> 'K 'y 'e 'g CF3A -> 'K 'y 'e 'g 'g CF3B -> 'K 'y 'e 'g 's CF3C -> 'K 'y 'e 'n CF3D -> 'K 'y 'e 'n 'j CF3E -> 'K 'y 'e 'n 'h CF3F -> 'K 'y 'e 'd CF40 -> 'K 'y 'e 'l CF41 -> 'K 'y 'e 'l 'g CF42 -> 'K 'y 'e 'l 'm CF43 -> 'K 'y 'e 'l 'b CF44 -> 'K 'y 'e 'l 's CF45 -> 'K 'y 'e 'l 't CF46 -> 'K 'y 'e 'l 'p CF47 -> 'K 'y 'e 'l 'h CF48 -> 'K 'y 'e 'm CF49 -> 'K 'y 'e 'b CF4A -> 'K 'y 'e 'b 's CF4B -> 'K 'y 'e 's CF4C -> 'K 'y 'e 's 's CF4D -> 'K 'y 'e 'n 'g CF4E -> 'K 'y 'e 'j CF4F -> 'K 'y 'e 'c 'h CF50 -> 'K 'y 'e 'k CF51 -> 'K 'y 'e 't CF52 -> 'K 'y 'e 'p CF53 -> 'K 'y 'e 'h CF54 -> 'K 'o CF55 -> 'K 'o 'g CF56 -> 'K 'o 'g 'g CF57 -> 'K 'o 'g 's CF58 -> 'K 'o 'n CF59 -> 'K 'o 'n 'j CF5A -> 'K 'o 'n 'h CF5B -> 'K 'o 'd CF5C -> 'K 'o 'l CF5D -> 'K 'o 'l 'g CF5E -> 'K 'o 'l 'm CF5F -> 'K 'o 'l 'b CF60 -> 'K 'o 'l 's CF61 -> 'K 'o 'l 't CF62 -> 'K 'o 'l 'p CF63 -> 'K 'o 'l 'h CF64 -> 'K 'o 'm CF65 -> 'K 'o 'b CF66 -> 'K 'o 'b 's CF67 -> 'K 'o 's CF68 -> 'K 'o 's 's CF69 -> 'K 'o 'n 'g CF6A -> 'K 'o 'j CF6B -> 'K 'o 'c 'h CF6C -> 'K 'o 'k CF6D -> 'K 'o 't CF6E -> 'K 'o 'p CF6F -> 'K 'o 'h CF70 -> 'K 'o 'a CF71 -> 'K 'o 'a 'g CF72 -> 'K 'o 'a 'g 'g CF73 -> 'K 'o 'a 'g 's CF74 -> 'K 'o 'a 'n CF75 -> 'K 'o 'a 'n 'j CF76 -> 'K 'o 'a 'n 'h CF77 -> 'K 'o 'a 'd CF78 -> 'K 'o 'a 'l CF79 -> 'K 'o 'a 'l 'g CF7A -> 'K 'o 'a 'l 'm CF7B -> 'K 'o 'a 'l 'b CF7C -> 'K 'o 'a 'l 's CF7D -> 'K 'o 'a 'l 't CF7E -> 'K 'o 'a 'l 'p CF7F -> 'K 'o 'a 'l 'h CF80 -> 'K 'o 'a 'm CF81 -> 'K 'o 'a 'b CF82 -> 'K 'o 'a 'b 's CF83 -> 'K 'o 'a 's CF84 -> 'K 'o 'a 's 's CF85 -> 'K 'o 'a 'n 'g CF86 -> 'K 'o 'a 'j CF87 -> 'K 'o 'a 'c 'h CF88 -> 'K 'o 'a 'k CF89 -> 'K 'o 'a 't CF8A -> 'K 'o 'a 'p CF8B -> 'K 'o 'a 'h CF8C -> 'K 'o 'a 'e CF8D -> 'K 'o 'a 'e 'g CF8E -> 'K 'o 'a 'e 'g 'g CF8F -> 'K 'o 'a 'e 'g 's CF90 -> 'K 'o 'a 'e 'n CF91 -> 'K 'o 'a 'e 'n 'j CF92 -> 'K 'o 'a 'e 'n 'h CF93 -> 'K 'o 'a 'e 'd CF94 -> 'K 'o 'a 'e 'l CF95 -> 'K 'o 'a 'e 'l 'g CF96 -> 'K 'o 'a 'e 'l 'm CF97 -> 'K 'o 'a 'e 'l 'b CF98 -> 'K 'o 'a 'e 'l 's CF99 -> 'K 'o 'a 'e 'l 't CF9A -> 'K 'o 'a 'e 'l 'p CF9B -> 'K 'o 'a 'e 'l 'h CF9C -> 'K 'o 'a 'e 'm CF9D -> 'K 'o 'a 'e 'b CF9E -> 'K 'o 'a 'e 'b 's CF9F -> 'K 'o 'a 'e 's CFA0 -> 'K 'o 'a 'e 's 's CFA1 -> 'K 'o 'a 'e 'n 'g CFA2 -> 'K 'o 'a 'e 'j CFA3 -> 'K 'o 'a 'e 'c 'h CFA4 -> 'K 'o 'a 'e 'k CFA5 -> 'K 'o 'a 'e 't CFA6 -> 'K 'o 'a 'e 'p CFA7 -> 'K 'o 'a 'e 'h CFA8 -> 'K 'o 'i CFA9 -> 'K 'o 'i 'g CFAA -> 'K 'o 'i 'g 'g CFAB -> 'K 'o 'i 'g 's CFAC -> 'K 'o 'i 'n CFAD -> 'K 'o 'i 'n 'j CFAE -> 'K 'o 'i 'n 'h CFAF -> 'K 'o 'i 'd CFB0 -> 'K 'o 'i 'l CFB1 -> 'K 'o 'i 'l 'g CFB2 -> 'K 'o 'i 'l 'm CFB3 -> 'K 'o 'i 'l 'b CFB4 -> 'K 'o 'i 'l 's CFB5 -> 'K 'o 'i 'l 't CFB6 -> 'K 'o 'i 'l 'p CFB7 -> 'K 'o 'i 'l 'h CFB8 -> 'K 'o 'i 'm CFB9 -> 'K 'o 'i 'b CFBA -> 'K 'o 'i 'b 's CFBB -> 'K 'o 'i 's CFBC -> 'K 'o 'i 's 's CFBD -> 'K 'o 'i 'n 'g CFBE -> 'K 'o 'i 'j CFBF -> 'K 'o 'i 'c 'h CFC0 -> 'K 'o 'i 'k CFC1 -> 'K 'o 'i 't CFC2 -> 'K 'o 'i 'p CFC3 -> 'K 'o 'i 'h CFC4 -> 'K 'y 'o CFC5 -> 'K 'y 'o 'g CFC6 -> 'K 'y 'o 'g 'g CFC7 -> 'K 'y 'o 'g 's CFC8 -> 'K 'y 'o 'n CFC9 -> 'K 'y 'o 'n 'j CFCA -> 'K 'y 'o 'n 'h CFCB -> 'K 'y 'o 'd CFCC -> 'K 'y 'o 'l CFCD -> 'K 'y 'o 'l 'g CFCE -> 'K 'y 'o 'l 'm CFCF -> 'K 'y 'o 'l 'b CFD0 -> 'K 'y 'o 'l 's CFD1 -> 'K 'y 'o 'l 't CFD2 -> 'K 'y 'o 'l 'p CFD3 -> 'K 'y 'o 'l 'h CFD4 -> 'K 'y 'o 'm CFD5 -> 'K 'y 'o 'b CFD6 -> 'K 'y 'o 'b 's CFD7 -> 'K 'y 'o 's CFD8 -> 'K 'y 'o 's 's CFD9 -> 'K 'y 'o 'n 'g CFDA -> 'K 'y 'o 'j CFDB -> 'K 'y 'o 'c 'h CFDC -> 'K 'y 'o 'k CFDD -> 'K 'y 'o 't CFDE -> 'K 'y 'o 'p CFDF -> 'K 'y 'o 'h CFE0 -> 'K 'u CFE1 -> 'K 'u 'g CFE2 -> 'K 'u 'g 'g CFE3 -> 'K 'u 'g 's CFE4 -> 'K 'u 'n CFE5 -> 'K 'u 'n 'j CFE6 -> 'K 'u 'n 'h CFE7 -> 'K 'u 'd CFE8 -> 'K 'u 'l CFE9 -> 'K 'u 'l 'g CFEA -> 'K 'u 'l 'm CFEB -> 'K 'u 'l 'b CFEC -> 'K 'u 'l 's CFED -> 'K 'u 'l 't CFEE -> 'K 'u 'l 'p CFEF -> 'K 'u 'l 'h CFF0 -> 'K 'u 'm CFF1 -> 'K 'u 'b CFF2 -> 'K 'u 'b 's CFF3 -> 'K 'u 's CFF4 -> 'K 'u 's 's CFF5 -> 'K 'u 'n 'g CFF6 -> 'K 'u 'j CFF7 -> 'K 'u 'c 'h CFF8 -> 'K 'u 'k CFF9 -> 'K 'u 't CFFA -> 'K 'u 'p CFFB -> 'K 'u 'h CFFC -> 'K 'u 'e 'o CFFD -> 'K 'u 'e 'o 'g CFFE -> 'K 'u 'e 'o 'g 'g CFFF -> 'K 'u 'e 'o 'g 's D000 -> 'K 'u 'e 'o 'n D001 -> 'K 'u 'e 'o 'n 'j D002 -> 'K 'u 'e 'o 'n 'h D003 -> 'K 'u 'e 'o 'd D004 -> 'K 'u 'e 'o 'l D005 -> 'K 'u 'e 'o 'l 'g D006 -> 'K 'u 'e 'o 'l 'm D007 -> 'K 'u 'e 'o 'l 'b D008 -> 'K 'u 'e 'o 'l 's D009 -> 'K 'u 'e 'o 'l 't D00A -> 'K 'u 'e 'o 'l 'p D00B -> 'K 'u 'e 'o 'l 'h D00C -> 'K 'u 'e 'o 'm D00D -> 'K 'u 'e 'o 'b D00E -> 'K 'u 'e 'o 'b 's D00F -> 'K 'u 'e 'o 's D010 -> 'K 'u 'e 'o 's 's D011 -> 'K 'u 'e 'o 'n 'g D012 -> 'K 'u 'e 'o 'j D013 -> 'K 'u 'e 'o 'c 'h D014 -> 'K 'u 'e 'o 'k D015 -> 'K 'u 'e 'o 't D016 -> 'K 'u 'e 'o 'p D017 -> 'K 'u 'e 'o 'h D018 -> 'K 'u 'e D019 -> 'K 'u 'e 'g D01A -> 'K 'u 'e 'g 'g D01B -> 'K 'u 'e 'g 's D01C -> 'K 'u 'e 'n D01D -> 'K 'u 'e 'n 'j D01E -> 'K 'u 'e 'n 'h D01F -> 'K 'u 'e 'd D020 -> 'K 'u 'e 'l D021 -> 'K 'u 'e 'l 'g D022 -> 'K 'u 'e 'l 'm D023 -> 'K 'u 'e 'l 'b D024 -> 'K 'u 'e 'l 's D025 -> 'K 'u 'e 'l 't D026 -> 'K 'u 'e 'l 'p D027 -> 'K 'u 'e 'l 'h D028 -> 'K 'u 'e 'm D029 -> 'K 'u 'e 'b D02A -> 'K 'u 'e 'b 's D02B -> 'K 'u 'e 's D02C -> 'K 'u 'e 's 's D02D -> 'K 'u 'e 'n 'g D02E -> 'K 'u 'e 'j D02F -> 'K 'u 'e 'c 'h D030 -> 'K 'u 'e 'k D031 -> 'K 'u 'e 't D032 -> 'K 'u 'e 'p D033 -> 'K 'u 'e 'h D034 -> 'K 'u 'i D035 -> 'K 'u 'i 'g D036 -> 'K 'u 'i 'g 'g D037 -> 'K 'u 'i 'g 's D038 -> 'K 'u 'i 'n D039 -> 'K 'u 'i 'n 'j D03A -> 'K 'u 'i 'n 'h D03B -> 'K 'u 'i 'd D03C -> 'K 'u 'i 'l D03D -> 'K 'u 'i 'l 'g D03E -> 'K 'u 'i 'l 'm D03F -> 'K 'u 'i 'l 'b D040 -> 'K 'u 'i 'l 's D041 -> 'K 'u 'i 'l 't D042 -> 'K 'u 'i 'l 'p D043 -> 'K 'u 'i 'l 'h D044 -> 'K 'u 'i 'm D045 -> 'K 'u 'i 'b D046 -> 'K 'u 'i 'b 's D047 -> 'K 'u 'i 's D048 -> 'K 'u 'i 's 's D049 -> 'K 'u 'i 'n 'g D04A -> 'K 'u 'i 'j D04B -> 'K 'u 'i 'c 'h D04C -> 'K 'u 'i 'k D04D -> 'K 'u 'i 't D04E -> 'K 'u 'i 'p D04F -> 'K 'u 'i 'h D050 -> 'K 'y 'u D051 -> 'K 'y 'u 'g D052 -> 'K 'y 'u 'g 'g D053 -> 'K 'y 'u 'g 's D054 -> 'K 'y 'u 'n D055 -> 'K 'y 'u 'n 'j D056 -> 'K 'y 'u 'n 'h D057 -> 'K 'y 'u 'd D058 -> 'K 'y 'u 'l D059 -> 'K 'y 'u 'l 'g D05A -> 'K 'y 'u 'l 'm D05B -> 'K 'y 'u 'l 'b D05C -> 'K 'y 'u 'l 's D05D -> 'K 'y 'u 'l 't D05E -> 'K 'y 'u 'l 'p D05F -> 'K 'y 'u 'l 'h D060 -> 'K 'y 'u 'm D061 -> 'K 'y 'u 'b D062 -> 'K 'y 'u 'b 's D063 -> 'K 'y 'u 's D064 -> 'K 'y 'u 's 's D065 -> 'K 'y 'u 'n 'g D066 -> 'K 'y 'u 'j D067 -> 'K 'y 'u 'c 'h D068 -> 'K 'y 'u 'k D069 -> 'K 'y 'u 't D06A -> 'K 'y 'u 'p D06B -> 'K 'y 'u 'h D06C -> 'K 'e 'u D06D -> 'K 'e 'u 'g D06E -> 'K 'e 'u 'g 'g D06F -> 'K 'e 'u 'g 's D070 -> 'K 'e 'u 'n D071 -> 'K 'e 'u 'n 'j D072 -> 'K 'e 'u 'n 'h D073 -> 'K 'e 'u 'd D074 -> 'K 'e 'u 'l D075 -> 'K 'e 'u 'l 'g D076 -> 'K 'e 'u 'l 'm D077 -> 'K 'e 'u 'l 'b D078 -> 'K 'e 'u 'l 's D079 -> 'K 'e 'u 'l 't D07A -> 'K 'e 'u 'l 'p D07B -> 'K 'e 'u 'l 'h D07C -> 'K 'e 'u 'm D07D -> 'K 'e 'u 'b D07E -> 'K 'e 'u 'b 's D07F -> 'K 'e 'u 's D080 -> 'K 'e 'u 's 's D081 -> 'K 'e 'u 'n 'g D082 -> 'K 'e 'u 'j D083 -> 'K 'e 'u 'c 'h D084 -> 'K 'e 'u 'k D085 -> 'K 'e 'u 't D086 -> 'K 'e 'u 'p D087 -> 'K 'e 'u 'h D088 -> 'K 'e 'u 'i D089 -> 'K 'e 'u 'i 'g D08A -> 'K 'e 'u 'i 'g 'g D08B -> 'K 'e 'u 'i 'g 's D08C -> 'K 'e 'u 'i 'n D08D -> 'K 'e 'u 'i 'n 'j D08E -> 'K 'e 'u 'i 'n 'h D08F -> 'K 'e 'u 'i 'd D090 -> 'K 'e 'u 'i 'l D091 -> 'K 'e 'u 'i 'l 'g D092 -> 'K 'e 'u 'i 'l 'm D093 -> 'K 'e 'u 'i 'l 'b D094 -> 'K 'e 'u 'i 'l 's D095 -> 'K 'e 'u 'i 'l 't D096 -> 'K 'e 'u 'i 'l 'p D097 -> 'K 'e 'u 'i 'l 'h D098 -> 'K 'e 'u 'i 'm D099 -> 'K 'e 'u 'i 'b D09A -> 'K 'e 'u 'i 'b 's D09B -> 'K 'e 'u 'i 's D09C -> 'K 'e 'u 'i 's 's D09D -> 'K 'e 'u 'i 'n 'g D09E -> 'K 'e 'u 'i 'j D09F -> 'K 'e 'u 'i 'c 'h D0A0 -> 'K 'e 'u 'i 'k D0A1 -> 'K 'e 'u 'i 't D0A2 -> 'K 'e 'u 'i 'p D0A3 -> 'K 'e 'u 'i 'h D0A4 -> 'K 'i D0A5 -> 'K 'i 'g D0A6 -> 'K 'i 'g 'g D0A7 -> 'K 'i 'g 's D0A8 -> 'K 'i 'n D0A9 -> 'K 'i 'n 'j D0AA -> 'K 'i 'n 'h D0AB -> 'K 'i 'd D0AC -> 'K 'i 'l D0AD -> 'K 'i 'l 'g D0AE -> 'K 'i 'l 'm D0AF -> 'K 'i 'l 'b D0B0 -> 'K 'i 'l 's D0B1 -> 'K 'i 'l 't D0B2 -> 'K 'i 'l 'p D0B3 -> 'K 'i 'l 'h D0B4 -> 'K 'i 'm D0B5 -> 'K 'i 'b D0B6 -> 'K 'i 'b 's D0B7 -> 'K 'i 's D0B8 -> 'K 'i 's 's D0B9 -> 'K 'i 'n 'g D0BA -> 'K 'i 'j D0BB -> 'K 'i 'c 'h D0BC -> 'K 'i 'k D0BD -> 'K 'i 't D0BE -> 'K 'i 'p D0BF -> 'K 'i 'h D0C0 -> 'T 'a D0C1 -> 'T 'a 'g D0C2 -> 'T 'a 'g 'g D0C3 -> 'T 'a 'g 's D0C4 -> 'T 'a 'n D0C5 -> 'T 'a 'n 'j D0C6 -> 'T 'a 'n 'h D0C7 -> 'T 'a 'd D0C8 -> 'T 'a 'l D0C9 -> 'T 'a 'l 'g D0CA -> 'T 'a 'l 'm D0CB -> 'T 'a 'l 'b D0CC -> 'T 'a 'l 's D0CD -> 'T 'a 'l 't D0CE -> 'T 'a 'l 'p D0CF -> 'T 'a 'l 'h D0D0 -> 'T 'a 'm D0D1 -> 'T 'a 'b D0D2 -> 'T 'a 'b 's D0D3 -> 'T 'a 's D0D4 -> 'T 'a 's 's D0D5 -> 'T 'a 'n 'g D0D6 -> 'T 'a 'j D0D7 -> 'T 'a 'c 'h D0D8 -> 'T 'a 'k D0D9 -> 'T 'a 't D0DA -> 'T 'a 'p D0DB -> 'T 'a 'h D0DC -> 'T 'a 'e D0DD -> 'T 'a 'e 'g D0DE -> 'T 'a 'e 'g 'g D0DF -> 'T 'a 'e 'g 's D0E0 -> 'T 'a 'e 'n D0E1 -> 'T 'a 'e 'n 'j D0E2 -> 'T 'a 'e 'n 'h D0E3 -> 'T 'a 'e 'd D0E4 -> 'T 'a 'e 'l D0E5 -> 'T 'a 'e 'l 'g D0E6 -> 'T 'a 'e 'l 'm D0E7 -> 'T 'a 'e 'l 'b D0E8 -> 'T 'a 'e 'l 's D0E9 -> 'T 'a 'e 'l 't D0EA -> 'T 'a 'e 'l 'p D0EB -> 'T 'a 'e 'l 'h D0EC -> 'T 'a 'e 'm D0ED -> 'T 'a 'e 'b D0EE -> 'T 'a 'e 'b 's D0EF -> 'T 'a 'e 's D0F0 -> 'T 'a 'e 's 's D0F1 -> 'T 'a 'e 'n 'g D0F2 -> 'T 'a 'e 'j D0F3 -> 'T 'a 'e 'c 'h D0F4 -> 'T 'a 'e 'k D0F5 -> 'T 'a 'e 't D0F6 -> 'T 'a 'e 'p D0F7 -> 'T 'a 'e 'h D0F8 -> 'T 'y 'a D0F9 -> 'T 'y 'a 'g D0FA -> 'T 'y 'a 'g 'g D0FB -> 'T 'y 'a 'g 's D0FC -> 'T 'y 'a 'n D0FD -> 'T 'y 'a 'n 'j D0FE -> 'T 'y 'a 'n 'h D0FF -> 'T 'y 'a 'd D100 -> 'T 'y 'a 'l D101 -> 'T 'y 'a 'l 'g D102 -> 'T 'y 'a 'l 'm D103 -> 'T 'y 'a 'l 'b D104 -> 'T 'y 'a 'l 's D105 -> 'T 'y 'a 'l 't D106 -> 'T 'y 'a 'l 'p D107 -> 'T 'y 'a 'l 'h D108 -> 'T 'y 'a 'm D109 -> 'T 'y 'a 'b D10A -> 'T 'y 'a 'b 's D10B -> 'T 'y 'a 's D10C -> 'T 'y 'a 's 's D10D -> 'T 'y 'a 'n 'g D10E -> 'T 'y 'a 'j D10F -> 'T 'y 'a 'c 'h D110 -> 'T 'y 'a 'k D111 -> 'T 'y 'a 't D112 -> 'T 'y 'a 'p D113 -> 'T 'y 'a 'h D114 -> 'T 'y 'a 'e D115 -> 'T 'y 'a 'e 'g D116 -> 'T 'y 'a 'e 'g 'g D117 -> 'T 'y 'a 'e 'g 's D118 -> 'T 'y 'a 'e 'n D119 -> 'T 'y 'a 'e 'n 'j D11A -> 'T 'y 'a 'e 'n 'h D11B -> 'T 'y 'a 'e 'd D11C -> 'T 'y 'a 'e 'l D11D -> 'T 'y 'a 'e 'l 'g D11E -> 'T 'y 'a 'e 'l 'm D11F -> 'T 'y 'a 'e 'l 'b D120 -> 'T 'y 'a 'e 'l 's D121 -> 'T 'y 'a 'e 'l 't D122 -> 'T 'y 'a 'e 'l 'p D123 -> 'T 'y 'a 'e 'l 'h D124 -> 'T 'y 'a 'e 'm D125 -> 'T 'y 'a 'e 'b D126 -> 'T 'y 'a 'e 'b 's D127 -> 'T 'y 'a 'e 's D128 -> 'T 'y 'a 'e 's 's D129 -> 'T 'y 'a 'e 'n 'g D12A -> 'T 'y 'a 'e 'j D12B -> 'T 'y 'a 'e 'c 'h D12C -> 'T 'y 'a 'e 'k D12D -> 'T 'y 'a 'e 't D12E -> 'T 'y 'a 'e 'p D12F -> 'T 'y 'a 'e 'h D130 -> 'T 'e 'o D131 -> 'T 'e 'o 'g D132 -> 'T 'e 'o 'g 'g D133 -> 'T 'e 'o 'g 's D134 -> 'T 'e 'o 'n D135 -> 'T 'e 'o 'n 'j D136 -> 'T 'e 'o 'n 'h D137 -> 'T 'e 'o 'd D138 -> 'T 'e 'o 'l D139 -> 'T 'e 'o 'l 'g D13A -> 'T 'e 'o 'l 'm D13B -> 'T 'e 'o 'l 'b D13C -> 'T 'e 'o 'l 's D13D -> 'T 'e 'o 'l 't D13E -> 'T 'e 'o 'l 'p D13F -> 'T 'e 'o 'l 'h D140 -> 'T 'e 'o 'm D141 -> 'T 'e 'o 'b D142 -> 'T 'e 'o 'b 's D143 -> 'T 'e 'o 's D144 -> 'T 'e 'o 's 's D145 -> 'T 'e 'o 'n 'g D146 -> 'T 'e 'o 'j D147 -> 'T 'e 'o 'c 'h D148 -> 'T 'e 'o 'k D149 -> 'T 'e 'o 't D14A -> 'T 'e 'o 'p D14B -> 'T 'e 'o 'h D14C -> 'T 'e D14D -> 'T 'e 'g D14E -> 'T 'e 'g 'g D14F -> 'T 'e 'g 's D150 -> 'T 'e 'n D151 -> 'T 'e 'n 'j D152 -> 'T 'e 'n 'h D153 -> 'T 'e 'd D154 -> 'T 'e 'l D155 -> 'T 'e 'l 'g D156 -> 'T 'e 'l 'm D157 -> 'T 'e 'l 'b D158 -> 'T 'e 'l 's D159 -> 'T 'e 'l 't D15A -> 'T 'e 'l 'p D15B -> 'T 'e 'l 'h D15C -> 'T 'e 'm D15D -> 'T 'e 'b D15E -> 'T 'e 'b 's D15F -> 'T 'e 's D160 -> 'T 'e 's 's D161 -> 'T 'e 'n 'g D162 -> 'T 'e 'j D163 -> 'T 'e 'c 'h D164 -> 'T 'e 'k D165 -> 'T 'e 't D166 -> 'T 'e 'p D167 -> 'T 'e 'h D168 -> 'T 'y 'e 'o D169 -> 'T 'y 'e 'o 'g D16A -> 'T 'y 'e 'o 'g 'g D16B -> 'T 'y 'e 'o 'g 's D16C -> 'T 'y 'e 'o 'n D16D -> 'T 'y 'e 'o 'n 'j D16E -> 'T 'y 'e 'o 'n 'h D16F -> 'T 'y 'e 'o 'd D170 -> 'T 'y 'e 'o 'l D171 -> 'T 'y 'e 'o 'l 'g D172 -> 'T 'y 'e 'o 'l 'm D173 -> 'T 'y 'e 'o 'l 'b D174 -> 'T 'y 'e 'o 'l 's D175 -> 'T 'y 'e 'o 'l 't D176 -> 'T 'y 'e 'o 'l 'p D177 -> 'T 'y 'e 'o 'l 'h D178 -> 'T 'y 'e 'o 'm D179 -> 'T 'y 'e 'o 'b D17A -> 'T 'y 'e 'o 'b 's D17B -> 'T 'y 'e 'o 's D17C -> 'T 'y 'e 'o 's 's D17D -> 'T 'y 'e 'o 'n 'g D17E -> 'T 'y 'e 'o 'j D17F -> 'T 'y 'e 'o 'c 'h D180 -> 'T 'y 'e 'o 'k D181 -> 'T 'y 'e 'o 't D182 -> 'T 'y 'e 'o 'p D183 -> 'T 'y 'e 'o 'h D184 -> 'T 'y 'e D185 -> 'T 'y 'e 'g D186 -> 'T 'y 'e 'g 'g D187 -> 'T 'y 'e 'g 's D188 -> 'T 'y 'e 'n D189 -> 'T 'y 'e 'n 'j D18A -> 'T 'y 'e 'n 'h D18B -> 'T 'y 'e 'd D18C -> 'T 'y 'e 'l D18D -> 'T 'y 'e 'l 'g D18E -> 'T 'y 'e 'l 'm D18F -> 'T 'y 'e 'l 'b D190 -> 'T 'y 'e 'l 's D191 -> 'T 'y 'e 'l 't D192 -> 'T 'y 'e 'l 'p D193 -> 'T 'y 'e 'l 'h D194 -> 'T 'y 'e 'm D195 -> 'T 'y 'e 'b D196 -> 'T 'y 'e 'b 's D197 -> 'T 'y 'e 's D198 -> 'T 'y 'e 's 's D199 -> 'T 'y 'e 'n 'g D19A -> 'T 'y 'e 'j D19B -> 'T 'y 'e 'c 'h D19C -> 'T 'y 'e 'k D19D -> 'T 'y 'e 't D19E -> 'T 'y 'e 'p D19F -> 'T 'y 'e 'h D1A0 -> 'T 'o D1A1 -> 'T 'o 'g D1A2 -> 'T 'o 'g 'g D1A3 -> 'T 'o 'g 's D1A4 -> 'T 'o 'n D1A5 -> 'T 'o 'n 'j D1A6 -> 'T 'o 'n 'h D1A7 -> 'T 'o 'd D1A8 -> 'T 'o 'l D1A9 -> 'T 'o 'l 'g D1AA -> 'T 'o 'l 'm D1AB -> 'T 'o 'l 'b D1AC -> 'T 'o 'l 's D1AD -> 'T 'o 'l 't D1AE -> 'T 'o 'l 'p D1AF -> 'T 'o 'l 'h D1B0 -> 'T 'o 'm D1B1 -> 'T 'o 'b D1B2 -> 'T 'o 'b 's D1B3 -> 'T 'o 's D1B4 -> 'T 'o 's 's D1B5 -> 'T 'o 'n 'g D1B6 -> 'T 'o 'j D1B7 -> 'T 'o 'c 'h D1B8 -> 'T 'o 'k D1B9 -> 'T 'o 't D1BA -> 'T 'o 'p D1BB -> 'T 'o 'h D1BC -> 'T 'o 'a D1BD -> 'T 'o 'a 'g D1BE -> 'T 'o 'a 'g 'g D1BF -> 'T 'o 'a 'g 's D1C0 -> 'T 'o 'a 'n D1C1 -> 'T 'o 'a 'n 'j D1C2 -> 'T 'o 'a 'n 'h D1C3 -> 'T 'o 'a 'd D1C4 -> 'T 'o 'a 'l D1C5 -> 'T 'o 'a 'l 'g D1C6 -> 'T 'o 'a 'l 'm D1C7 -> 'T 'o 'a 'l 'b D1C8 -> 'T 'o 'a 'l 's D1C9 -> 'T 'o 'a 'l 't D1CA -> 'T 'o 'a 'l 'p D1CB -> 'T 'o 'a 'l 'h D1CC -> 'T 'o 'a 'm D1CD -> 'T 'o 'a 'b D1CE -> 'T 'o 'a 'b 's D1CF -> 'T 'o 'a 's D1D0 -> 'T 'o 'a 's 's D1D1 -> 'T 'o 'a 'n 'g D1D2 -> 'T 'o 'a 'j D1D3 -> 'T 'o 'a 'c 'h D1D4 -> 'T 'o 'a 'k D1D5 -> 'T 'o 'a 't D1D6 -> 'T 'o 'a 'p D1D7 -> 'T 'o 'a 'h D1D8 -> 'T 'o 'a 'e D1D9 -> 'T 'o 'a 'e 'g D1DA -> 'T 'o 'a 'e 'g 'g D1DB -> 'T 'o 'a 'e 'g 's D1DC -> 'T 'o 'a 'e 'n D1DD -> 'T 'o 'a 'e 'n 'j D1DE -> 'T 'o 'a 'e 'n 'h D1DF -> 'T 'o 'a 'e 'd D1E0 -> 'T 'o 'a 'e 'l D1E1 -> 'T 'o 'a 'e 'l 'g D1E2 -> 'T 'o 'a 'e 'l 'm D1E3 -> 'T 'o 'a 'e 'l 'b D1E4 -> 'T 'o 'a 'e 'l 's D1E5 -> 'T 'o 'a 'e 'l 't D1E6 -> 'T 'o 'a 'e 'l 'p D1E7 -> 'T 'o 'a 'e 'l 'h D1E8 -> 'T 'o 'a 'e 'm D1E9 -> 'T 'o 'a 'e 'b D1EA -> 'T 'o 'a 'e 'b 's D1EB -> 'T 'o 'a 'e 's D1EC -> 'T 'o 'a 'e 's 's D1ED -> 'T 'o 'a 'e 'n 'g D1EE -> 'T 'o 'a 'e 'j D1EF -> 'T 'o 'a 'e 'c 'h D1F0 -> 'T 'o 'a 'e 'k D1F1 -> 'T 'o 'a 'e 't D1F2 -> 'T 'o 'a 'e 'p D1F3 -> 'T 'o 'a 'e 'h D1F4 -> 'T 'o 'i D1F5 -> 'T 'o 'i 'g D1F6 -> 'T 'o 'i 'g 'g D1F7 -> 'T 'o 'i 'g 's D1F8 -> 'T 'o 'i 'n D1F9 -> 'T 'o 'i 'n 'j D1FA -> 'T 'o 'i 'n 'h D1FB -> 'T 'o 'i 'd D1FC -> 'T 'o 'i 'l D1FD -> 'T 'o 'i 'l 'g D1FE -> 'T 'o 'i 'l 'm D1FF -> 'T 'o 'i 'l 'b D200 -> 'T 'o 'i 'l 's D201 -> 'T 'o 'i 'l 't D202 -> 'T 'o 'i 'l 'p D203 -> 'T 'o 'i 'l 'h D204 -> 'T 'o 'i 'm D205 -> 'T 'o 'i 'b D206 -> 'T 'o 'i 'b 's D207 -> 'T 'o 'i 's D208 -> 'T 'o 'i 's 's D209 -> 'T 'o 'i 'n 'g D20A -> 'T 'o 'i 'j D20B -> 'T 'o 'i 'c 'h D20C -> 'T 'o 'i 'k D20D -> 'T 'o 'i 't D20E -> 'T 'o 'i 'p D20F -> 'T 'o 'i 'h D210 -> 'T 'y 'o D211 -> 'T 'y 'o 'g D212 -> 'T 'y 'o 'g 'g D213 -> 'T 'y 'o 'g 's D214 -> 'T 'y 'o 'n D215 -> 'T 'y 'o 'n 'j D216 -> 'T 'y 'o 'n 'h D217 -> 'T 'y 'o 'd D218 -> 'T 'y 'o 'l D219 -> 'T 'y 'o 'l 'g D21A -> 'T 'y 'o 'l 'm D21B -> 'T 'y 'o 'l 'b D21C -> 'T 'y 'o 'l 's D21D -> 'T 'y 'o 'l 't D21E -> 'T 'y 'o 'l 'p D21F -> 'T 'y 'o 'l 'h D220 -> 'T 'y 'o 'm D221 -> 'T 'y 'o 'b D222 -> 'T 'y 'o 'b 's D223 -> 'T 'y 'o 's D224 -> 'T 'y 'o 's 's D225 -> 'T 'y 'o 'n 'g D226 -> 'T 'y 'o 'j D227 -> 'T 'y 'o 'c 'h D228 -> 'T 'y 'o 'k D229 -> 'T 'y 'o 't D22A -> 'T 'y 'o 'p D22B -> 'T 'y 'o 'h D22C -> 'T 'u D22D -> 'T 'u 'g D22E -> 'T 'u 'g 'g D22F -> 'T 'u 'g 's D230 -> 'T 'u 'n D231 -> 'T 'u 'n 'j D232 -> 'T 'u 'n 'h D233 -> 'T 'u 'd D234 -> 'T 'u 'l D235 -> 'T 'u 'l 'g D236 -> 'T 'u 'l 'm D237 -> 'T 'u 'l 'b D238 -> 'T 'u 'l 's D239 -> 'T 'u 'l 't D23A -> 'T 'u 'l 'p D23B -> 'T 'u 'l 'h D23C -> 'T 'u 'm D23D -> 'T 'u 'b D23E -> 'T 'u 'b 's D23F -> 'T 'u 's D240 -> 'T 'u 's 's D241 -> 'T 'u 'n 'g D242 -> 'T 'u 'j D243 -> 'T 'u 'c 'h D244 -> 'T 'u 'k D245 -> 'T 'u 't D246 -> 'T 'u 'p D247 -> 'T 'u 'h D248 -> 'T 'u 'e 'o D249 -> 'T 'u 'e 'o 'g D24A -> 'T 'u 'e 'o 'g 'g D24B -> 'T 'u 'e 'o 'g 's D24C -> 'T 'u 'e 'o 'n D24D -> 'T 'u 'e 'o 'n 'j D24E -> 'T 'u 'e 'o 'n 'h D24F -> 'T 'u 'e 'o 'd D250 -> 'T 'u 'e 'o 'l D251 -> 'T 'u 'e 'o 'l 'g D252 -> 'T 'u 'e 'o 'l 'm D253 -> 'T 'u 'e 'o 'l 'b D254 -> 'T 'u 'e 'o 'l 's D255 -> 'T 'u 'e 'o 'l 't D256 -> 'T 'u 'e 'o 'l 'p D257 -> 'T 'u 'e 'o 'l 'h D258 -> 'T 'u 'e 'o 'm D259 -> 'T 'u 'e 'o 'b D25A -> 'T 'u 'e 'o 'b 's D25B -> 'T 'u 'e 'o 's D25C -> 'T 'u 'e 'o 's 's D25D -> 'T 'u 'e 'o 'n 'g D25E -> 'T 'u 'e 'o 'j D25F -> 'T 'u 'e 'o 'c 'h D260 -> 'T 'u 'e 'o 'k D261 -> 'T 'u 'e 'o 't D262 -> 'T 'u 'e 'o 'p D263 -> 'T 'u 'e 'o 'h D264 -> 'T 'u 'e D265 -> 'T 'u 'e 'g D266 -> 'T 'u 'e 'g 'g D267 -> 'T 'u 'e 'g 's D268 -> 'T 'u 'e 'n D269 -> 'T 'u 'e 'n 'j D26A -> 'T 'u 'e 'n 'h D26B -> 'T 'u 'e 'd D26C -> 'T 'u 'e 'l D26D -> 'T 'u 'e 'l 'g D26E -> 'T 'u 'e 'l 'm D26F -> 'T 'u 'e 'l 'b D270 -> 'T 'u 'e 'l 's D271 -> 'T 'u 'e 'l 't D272 -> 'T 'u 'e 'l 'p D273 -> 'T 'u 'e 'l 'h D274 -> 'T 'u 'e 'm D275 -> 'T 'u 'e 'b D276 -> 'T 'u 'e 'b 's D277 -> 'T 'u 'e 's D278 -> 'T 'u 'e 's 's D279 -> 'T 'u 'e 'n 'g D27A -> 'T 'u 'e 'j D27B -> 'T 'u 'e 'c 'h D27C -> 'T 'u 'e 'k D27D -> 'T 'u 'e 't D27E -> 'T 'u 'e 'p D27F -> 'T 'u 'e 'h D280 -> 'T 'u 'i D281 -> 'T 'u 'i 'g D282 -> 'T 'u 'i 'g 'g D283 -> 'T 'u 'i 'g 's D284 -> 'T 'u 'i 'n D285 -> 'T 'u 'i 'n 'j D286 -> 'T 'u 'i 'n 'h D287 -> 'T 'u 'i 'd D288 -> 'T 'u 'i 'l D289 -> 'T 'u 'i 'l 'g D28A -> 'T 'u 'i 'l 'm D28B -> 'T 'u 'i 'l 'b D28C -> 'T 'u 'i 'l 's D28D -> 'T 'u 'i 'l 't D28E -> 'T 'u 'i 'l 'p D28F -> 'T 'u 'i 'l 'h D290 -> 'T 'u 'i 'm D291 -> 'T 'u 'i 'b D292 -> 'T 'u 'i 'b 's D293 -> 'T 'u 'i 's D294 -> 'T 'u 'i 's 's D295 -> 'T 'u 'i 'n 'g D296 -> 'T 'u 'i 'j D297 -> 'T 'u 'i 'c 'h D298 -> 'T 'u 'i 'k D299 -> 'T 'u 'i 't D29A -> 'T 'u 'i 'p D29B -> 'T 'u 'i 'h D29C -> 'T 'y 'u D29D -> 'T 'y 'u 'g D29E -> 'T 'y 'u 'g 'g D29F -> 'T 'y 'u 'g 's D2A0 -> 'T 'y 'u 'n D2A1 -> 'T 'y 'u 'n 'j D2A2 -> 'T 'y 'u 'n 'h D2A3 -> 'T 'y 'u 'd D2A4 -> 'T 'y 'u 'l D2A5 -> 'T 'y 'u 'l 'g D2A6 -> 'T 'y 'u 'l 'm D2A7 -> 'T 'y 'u 'l 'b D2A8 -> 'T 'y 'u 'l 's D2A9 -> 'T 'y 'u 'l 't D2AA -> 'T 'y 'u 'l 'p D2AB -> 'T 'y 'u 'l 'h D2AC -> 'T 'y 'u 'm D2AD -> 'T 'y 'u 'b D2AE -> 'T 'y 'u 'b 's D2AF -> 'T 'y 'u 's D2B0 -> 'T 'y 'u 's 's D2B1 -> 'T 'y 'u 'n 'g D2B2 -> 'T 'y 'u 'j D2B3 -> 'T 'y 'u 'c 'h D2B4 -> 'T 'y 'u 'k D2B5 -> 'T 'y 'u 't D2B6 -> 'T 'y 'u 'p D2B7 -> 'T 'y 'u 'h D2B8 -> 'T 'e 'u D2B9 -> 'T 'e 'u 'g D2BA -> 'T 'e 'u 'g 'g D2BB -> 'T 'e 'u 'g 's D2BC -> 'T 'e 'u 'n D2BD -> 'T 'e 'u 'n 'j D2BE -> 'T 'e 'u 'n 'h D2BF -> 'T 'e 'u 'd D2C0 -> 'T 'e 'u 'l D2C1 -> 'T 'e 'u 'l 'g D2C2 -> 'T 'e 'u 'l 'm D2C3 -> 'T 'e 'u 'l 'b D2C4 -> 'T 'e 'u 'l 's D2C5 -> 'T 'e 'u 'l 't D2C6 -> 'T 'e 'u 'l 'p D2C7 -> 'T 'e 'u 'l 'h D2C8 -> 'T 'e 'u 'm D2C9 -> 'T 'e 'u 'b D2CA -> 'T 'e 'u 'b 's D2CB -> 'T 'e 'u 's D2CC -> 'T 'e 'u 's 's D2CD -> 'T 'e 'u 'n 'g D2CE -> 'T 'e 'u 'j D2CF -> 'T 'e 'u 'c 'h D2D0 -> 'T 'e 'u 'k D2D1 -> 'T 'e 'u 't D2D2 -> 'T 'e 'u 'p D2D3 -> 'T 'e 'u 'h D2D4 -> 'T 'e 'u 'i D2D5 -> 'T 'e 'u 'i 'g D2D6 -> 'T 'e 'u 'i 'g 'g D2D7 -> 'T 'e 'u 'i 'g 's D2D8 -> 'T 'e 'u 'i 'n D2D9 -> 'T 'e 'u 'i 'n 'j D2DA -> 'T 'e 'u 'i 'n 'h D2DB -> 'T 'e 'u 'i 'd D2DC -> 'T 'e 'u 'i 'l D2DD -> 'T 'e 'u 'i 'l 'g D2DE -> 'T 'e 'u 'i 'l 'm D2DF -> 'T 'e 'u 'i 'l 'b D2E0 -> 'T 'e 'u 'i 'l 's D2E1 -> 'T 'e 'u 'i 'l 't D2E2 -> 'T 'e 'u 'i 'l 'p D2E3 -> 'T 'e 'u 'i 'l 'h D2E4 -> 'T 'e 'u 'i 'm D2E5 -> 'T 'e 'u 'i 'b D2E6 -> 'T 'e 'u 'i 'b 's D2E7 -> 'T 'e 'u 'i 's D2E8 -> 'T 'e 'u 'i 's 's D2E9 -> 'T 'e 'u 'i 'n 'g D2EA -> 'T 'e 'u 'i 'j D2EB -> 'T 'e 'u 'i 'c 'h D2EC -> 'T 'e 'u 'i 'k D2ED -> 'T 'e 'u 'i 't D2EE -> 'T 'e 'u 'i 'p D2EF -> 'T 'e 'u 'i 'h D2F0 -> 'T 'i D2F1 -> 'T 'i 'g D2F2 -> 'T 'i 'g 'g D2F3 -> 'T 'i 'g 's D2F4 -> 'T 'i 'n D2F5 -> 'T 'i 'n 'j D2F6 -> 'T 'i 'n 'h D2F7 -> 'T 'i 'd D2F8 -> 'T 'i 'l D2F9 -> 'T 'i 'l 'g D2FA -> 'T 'i 'l 'm D2FB -> 'T 'i 'l 'b D2FC -> 'T 'i 'l 's D2FD -> 'T 'i 'l 't D2FE -> 'T 'i 'l 'p D2FF -> 'T 'i 'l 'h D300 -> 'T 'i 'm D301 -> 'T 'i 'b D302 -> 'T 'i 'b 's D303 -> 'T 'i 's D304 -> 'T 'i 's 's D305 -> 'T 'i 'n 'g D306 -> 'T 'i 'j D307 -> 'T 'i 'c 'h D308 -> 'T 'i 'k D309 -> 'T 'i 't D30A -> 'T 'i 'p D30B -> 'T 'i 'h D30C -> 'P 'a D30D -> 'P 'a 'g D30E -> 'P 'a 'g 'g D30F -> 'P 'a 'g 's D310 -> 'P 'a 'n D311 -> 'P 'a 'n 'j D312 -> 'P 'a 'n 'h D313 -> 'P 'a 'd D314 -> 'P 'a 'l D315 -> 'P 'a 'l 'g D316 -> 'P 'a 'l 'm D317 -> 'P 'a 'l 'b D318 -> 'P 'a 'l 's D319 -> 'P 'a 'l 't D31A -> 'P 'a 'l 'p D31B -> 'P 'a 'l 'h D31C -> 'P 'a 'm D31D -> 'P 'a 'b D31E -> 'P 'a 'b 's D31F -> 'P 'a 's D320 -> 'P 'a 's 's D321 -> 'P 'a 'n 'g D322 -> 'P 'a 'j D323 -> 'P 'a 'c 'h D324 -> 'P 'a 'k D325 -> 'P 'a 't D326 -> 'P 'a 'p D327 -> 'P 'a 'h D328 -> 'P 'a 'e D329 -> 'P 'a 'e 'g D32A -> 'P 'a 'e 'g 'g D32B -> 'P 'a 'e 'g 's D32C -> 'P 'a 'e 'n D32D -> 'P 'a 'e 'n 'j D32E -> 'P 'a 'e 'n 'h D32F -> 'P 'a 'e 'd D330 -> 'P 'a 'e 'l D331 -> 'P 'a 'e 'l 'g D332 -> 'P 'a 'e 'l 'm D333 -> 'P 'a 'e 'l 'b D334 -> 'P 'a 'e 'l 's D335 -> 'P 'a 'e 'l 't D336 -> 'P 'a 'e 'l 'p D337 -> 'P 'a 'e 'l 'h D338 -> 'P 'a 'e 'm D339 -> 'P 'a 'e 'b D33A -> 'P 'a 'e 'b 's D33B -> 'P 'a 'e 's D33C -> 'P 'a 'e 's 's D33D -> 'P 'a 'e 'n 'g D33E -> 'P 'a 'e 'j D33F -> 'P 'a 'e 'c 'h D340 -> 'P 'a 'e 'k D341 -> 'P 'a 'e 't D342 -> 'P 'a 'e 'p D343 -> 'P 'a 'e 'h D344 -> 'P 'y 'a D345 -> 'P 'y 'a 'g D346 -> 'P 'y 'a 'g 'g D347 -> 'P 'y 'a 'g 's D348 -> 'P 'y 'a 'n D349 -> 'P 'y 'a 'n 'j D34A -> 'P 'y 'a 'n 'h D34B -> 'P 'y 'a 'd D34C -> 'P 'y 'a 'l D34D -> 'P 'y 'a 'l 'g D34E -> 'P 'y 'a 'l 'm D34F -> 'P 'y 'a 'l 'b D350 -> 'P 'y 'a 'l 's D351 -> 'P 'y 'a 'l 't D352 -> 'P 'y 'a 'l 'p D353 -> 'P 'y 'a 'l 'h D354 -> 'P 'y 'a 'm D355 -> 'P 'y 'a 'b D356 -> 'P 'y 'a 'b 's D357 -> 'P 'y 'a 's D358 -> 'P 'y 'a 's 's D359 -> 'P 'y 'a 'n 'g D35A -> 'P 'y 'a 'j D35B -> 'P 'y 'a 'c 'h D35C -> 'P 'y 'a 'k D35D -> 'P 'y 'a 't D35E -> 'P 'y 'a 'p D35F -> 'P 'y 'a 'h D360 -> 'P 'y 'a 'e D361 -> 'P 'y 'a 'e 'g D362 -> 'P 'y 'a 'e 'g 'g D363 -> 'P 'y 'a 'e 'g 's D364 -> 'P 'y 'a 'e 'n D365 -> 'P 'y 'a 'e 'n 'j D366 -> 'P 'y 'a 'e 'n 'h D367 -> 'P 'y 'a 'e 'd D368 -> 'P 'y 'a 'e 'l D369 -> 'P 'y 'a 'e 'l 'g D36A -> 'P 'y 'a 'e 'l 'm D36B -> 'P 'y 'a 'e 'l 'b D36C -> 'P 'y 'a 'e 'l 's D36D -> 'P 'y 'a 'e 'l 't D36E -> 'P 'y 'a 'e 'l 'p D36F -> 'P 'y 'a 'e 'l 'h D370 -> 'P 'y 'a 'e 'm D371 -> 'P 'y 'a 'e 'b D372 -> 'P 'y 'a 'e 'b 's D373 -> 'P 'y 'a 'e 's D374 -> 'P 'y 'a 'e 's 's D375 -> 'P 'y 'a 'e 'n 'g D376 -> 'P 'y 'a 'e 'j D377 -> 'P 'y 'a 'e 'c 'h D378 -> 'P 'y 'a 'e 'k D379 -> 'P 'y 'a 'e 't D37A -> 'P 'y 'a 'e 'p D37B -> 'P 'y 'a 'e 'h D37C -> 'P 'e 'o D37D -> 'P 'e 'o 'g D37E -> 'P 'e 'o 'g 'g D37F -> 'P 'e 'o 'g 's D380 -> 'P 'e 'o 'n D381 -> 'P 'e 'o 'n 'j D382 -> 'P 'e 'o 'n 'h D383 -> 'P 'e 'o 'd D384 -> 'P 'e 'o 'l D385 -> 'P 'e 'o 'l 'g D386 -> 'P 'e 'o 'l 'm D387 -> 'P 'e 'o 'l 'b D388 -> 'P 'e 'o 'l 's D389 -> 'P 'e 'o 'l 't D38A -> 'P 'e 'o 'l 'p D38B -> 'P 'e 'o 'l 'h D38C -> 'P 'e 'o 'm D38D -> 'P 'e 'o 'b D38E -> 'P 'e 'o 'b 's D38F -> 'P 'e 'o 's D390 -> 'P 'e 'o 's 's D391 -> 'P 'e 'o 'n 'g D392 -> 'P 'e 'o 'j D393 -> 'P 'e 'o 'c 'h D394 -> 'P 'e 'o 'k D395 -> 'P 'e 'o 't D396 -> 'P 'e 'o 'p D397 -> 'P 'e 'o 'h D398 -> 'P 'e D399 -> 'P 'e 'g D39A -> 'P 'e 'g 'g D39B -> 'P 'e 'g 's D39C -> 'P 'e 'n D39D -> 'P 'e 'n 'j D39E -> 'P 'e 'n 'h D39F -> 'P 'e 'd D3A0 -> 'P 'e 'l D3A1 -> 'P 'e 'l 'g D3A2 -> 'P 'e 'l 'm D3A3 -> 'P 'e 'l 'b D3A4 -> 'P 'e 'l 's D3A5 -> 'P 'e 'l 't D3A6 -> 'P 'e 'l 'p D3A7 -> 'P 'e 'l 'h D3A8 -> 'P 'e 'm D3A9 -> 'P 'e 'b D3AA -> 'P 'e 'b 's D3AB -> 'P 'e 's D3AC -> 'P 'e 's 's D3AD -> 'P 'e 'n 'g D3AE -> 'P 'e 'j D3AF -> 'P 'e 'c 'h D3B0 -> 'P 'e 'k D3B1 -> 'P 'e 't D3B2 -> 'P 'e 'p D3B3 -> 'P 'e 'h D3B4 -> 'P 'y 'e 'o D3B5 -> 'P 'y 'e 'o 'g D3B6 -> 'P 'y 'e 'o 'g 'g D3B7 -> 'P 'y 'e 'o 'g 's D3B8 -> 'P 'y 'e 'o 'n D3B9 -> 'P 'y 'e 'o 'n 'j D3BA -> 'P 'y 'e 'o 'n 'h D3BB -> 'P 'y 'e 'o 'd D3BC -> 'P 'y 'e 'o 'l D3BD -> 'P 'y 'e 'o 'l 'g D3BE -> 'P 'y 'e 'o 'l 'm D3BF -> 'P 'y 'e 'o 'l 'b D3C0 -> 'P 'y 'e 'o 'l 's D3C1 -> 'P 'y 'e 'o 'l 't D3C2 -> 'P 'y 'e 'o 'l 'p D3C3 -> 'P 'y 'e 'o 'l 'h D3C4 -> 'P 'y 'e 'o 'm D3C5 -> 'P 'y 'e 'o 'b D3C6 -> 'P 'y 'e 'o 'b 's D3C7 -> 'P 'y 'e 'o 's D3C8 -> 'P 'y 'e 'o 's 's D3C9 -> 'P 'y 'e 'o 'n 'g D3CA -> 'P 'y 'e 'o 'j D3CB -> 'P 'y 'e 'o 'c 'h D3CC -> 'P 'y 'e 'o 'k D3CD -> 'P 'y 'e 'o 't D3CE -> 'P 'y 'e 'o 'p D3CF -> 'P 'y 'e 'o 'h D3D0 -> 'P 'y 'e D3D1 -> 'P 'y 'e 'g D3D2 -> 'P 'y 'e 'g 'g D3D3 -> 'P 'y 'e 'g 's D3D4 -> 'P 'y 'e 'n D3D5 -> 'P 'y 'e 'n 'j D3D6 -> 'P 'y 'e 'n 'h D3D7 -> 'P 'y 'e 'd D3D8 -> 'P 'y 'e 'l D3D9 -> 'P 'y 'e 'l 'g D3DA -> 'P 'y 'e 'l 'm D3DB -> 'P 'y 'e 'l 'b D3DC -> 'P 'y 'e 'l 's D3DD -> 'P 'y 'e 'l 't D3DE -> 'P 'y 'e 'l 'p D3DF -> 'P 'y 'e 'l 'h D3E0 -> 'P 'y 'e 'm D3E1 -> 'P 'y 'e 'b D3E2 -> 'P 'y 'e 'b 's D3E3 -> 'P 'y 'e 's D3E4 -> 'P 'y 'e 's 's D3E5 -> 'P 'y 'e 'n 'g D3E6 -> 'P 'y 'e 'j D3E7 -> 'P 'y 'e 'c 'h D3E8 -> 'P 'y 'e 'k D3E9 -> 'P 'y 'e 't D3EA -> 'P 'y 'e 'p D3EB -> 'P 'y 'e 'h D3EC -> 'P 'o D3ED -> 'P 'o 'g D3EE -> 'P 'o 'g 'g D3EF -> 'P 'o 'g 's D3F0 -> 'P 'o 'n D3F1 -> 'P 'o 'n 'j D3F2 -> 'P 'o 'n 'h D3F3 -> 'P 'o 'd D3F4 -> 'P 'o 'l D3F5 -> 'P 'o 'l 'g D3F6 -> 'P 'o 'l 'm D3F7 -> 'P 'o 'l 'b D3F8 -> 'P 'o 'l 's D3F9 -> 'P 'o 'l 't D3FA -> 'P 'o 'l 'p D3FB -> 'P 'o 'l 'h D3FC -> 'P 'o 'm D3FD -> 'P 'o 'b D3FE -> 'P 'o 'b 's D3FF -> 'P 'o 's D400 -> 'P 'o 's 's D401 -> 'P 'o 'n 'g D402 -> 'P 'o 'j D403 -> 'P 'o 'c 'h D404 -> 'P 'o 'k D405 -> 'P 'o 't D406 -> 'P 'o 'p D407 -> 'P 'o 'h D408 -> 'P 'o 'a D409 -> 'P 'o 'a 'g D40A -> 'P 'o 'a 'g 'g D40B -> 'P 'o 'a 'g 's D40C -> 'P 'o 'a 'n D40D -> 'P 'o 'a 'n 'j D40E -> 'P 'o 'a 'n 'h D40F -> 'P 'o 'a 'd D410 -> 'P 'o 'a 'l D411 -> 'P 'o 'a 'l 'g D412 -> 'P 'o 'a 'l 'm D413 -> 'P 'o 'a 'l 'b D414 -> 'P 'o 'a 'l 's D415 -> 'P 'o 'a 'l 't D416 -> 'P 'o 'a 'l 'p D417 -> 'P 'o 'a 'l 'h D418 -> 'P 'o 'a 'm D419 -> 'P 'o 'a 'b D41A -> 'P 'o 'a 'b 's D41B -> 'P 'o 'a 's D41C -> 'P 'o 'a 's 's D41D -> 'P 'o 'a 'n 'g D41E -> 'P 'o 'a 'j D41F -> 'P 'o 'a 'c 'h D420 -> 'P 'o 'a 'k D421 -> 'P 'o 'a 't D422 -> 'P 'o 'a 'p D423 -> 'P 'o 'a 'h D424 -> 'P 'o 'a 'e D425 -> 'P 'o 'a 'e 'g D426 -> 'P 'o 'a 'e 'g 'g D427 -> 'P 'o 'a 'e 'g 's D428 -> 'P 'o 'a 'e 'n D429 -> 'P 'o 'a 'e 'n 'j D42A -> 'P 'o 'a 'e 'n 'h D42B -> 'P 'o 'a 'e 'd D42C -> 'P 'o 'a 'e 'l D42D -> 'P 'o 'a 'e 'l 'g D42E -> 'P 'o 'a 'e 'l 'm D42F -> 'P 'o 'a 'e 'l 'b D430 -> 'P 'o 'a 'e 'l 's D431 -> 'P 'o 'a 'e 'l 't D432 -> 'P 'o 'a 'e 'l 'p D433 -> 'P 'o 'a 'e 'l 'h D434 -> 'P 'o 'a 'e 'm D435 -> 'P 'o 'a 'e 'b D436 -> 'P 'o 'a 'e 'b 's D437 -> 'P 'o 'a 'e 's D438 -> 'P 'o 'a 'e 's 's D439 -> 'P 'o 'a 'e 'n 'g D43A -> 'P 'o 'a 'e 'j D43B -> 'P 'o 'a 'e 'c 'h D43C -> 'P 'o 'a 'e 'k D43D -> 'P 'o 'a 'e 't D43E -> 'P 'o 'a 'e 'p D43F -> 'P 'o 'a 'e 'h D440 -> 'P 'o 'i D441 -> 'P 'o 'i 'g D442 -> 'P 'o 'i 'g 'g D443 -> 'P 'o 'i 'g 's D444 -> 'P 'o 'i 'n D445 -> 'P 'o 'i 'n 'j D446 -> 'P 'o 'i 'n 'h D447 -> 'P 'o 'i 'd D448 -> 'P 'o 'i 'l D449 -> 'P 'o 'i 'l 'g D44A -> 'P 'o 'i 'l 'm D44B -> 'P 'o 'i 'l 'b D44C -> 'P 'o 'i 'l 's D44D -> 'P 'o 'i 'l 't D44E -> 'P 'o 'i 'l 'p D44F -> 'P 'o 'i 'l 'h D450 -> 'P 'o 'i 'm D451 -> 'P 'o 'i 'b D452 -> 'P 'o 'i 'b 's D453 -> 'P 'o 'i 's D454 -> 'P 'o 'i 's 's D455 -> 'P 'o 'i 'n 'g D456 -> 'P 'o 'i 'j D457 -> 'P 'o 'i 'c 'h D458 -> 'P 'o 'i 'k D459 -> 'P 'o 'i 't D45A -> 'P 'o 'i 'p D45B -> 'P 'o 'i 'h D45C -> 'P 'y 'o D45D -> 'P 'y 'o 'g D45E -> 'P 'y 'o 'g 'g D45F -> 'P 'y 'o 'g 's D460 -> 'P 'y 'o 'n D461 -> 'P 'y 'o 'n 'j D462 -> 'P 'y 'o 'n 'h D463 -> 'P 'y 'o 'd D464 -> 'P 'y 'o 'l D465 -> 'P 'y 'o 'l 'g D466 -> 'P 'y 'o 'l 'm D467 -> 'P 'y 'o 'l 'b D468 -> 'P 'y 'o 'l 's D469 -> 'P 'y 'o 'l 't D46A -> 'P 'y 'o 'l 'p D46B -> 'P 'y 'o 'l 'h D46C -> 'P 'y 'o 'm D46D -> 'P 'y 'o 'b D46E -> 'P 'y 'o 'b 's D46F -> 'P 'y 'o 's D470 -> 'P 'y 'o 's 's D471 -> 'P 'y 'o 'n 'g D472 -> 'P 'y 'o 'j D473 -> 'P 'y 'o 'c 'h D474 -> 'P 'y 'o 'k D475 -> 'P 'y 'o 't D476 -> 'P 'y 'o 'p D477 -> 'P 'y 'o 'h D478 -> 'P 'u D479 -> 'P 'u 'g D47A -> 'P 'u 'g 'g D47B -> 'P 'u 'g 's D47C -> 'P 'u 'n D47D -> 'P 'u 'n 'j D47E -> 'P 'u 'n 'h D47F -> 'P 'u 'd D480 -> 'P 'u 'l D481 -> 'P 'u 'l 'g D482 -> 'P 'u 'l 'm D483 -> 'P 'u 'l 'b D484 -> 'P 'u 'l 's D485 -> 'P 'u 'l 't D486 -> 'P 'u 'l 'p D487 -> 'P 'u 'l 'h D488 -> 'P 'u 'm D489 -> 'P 'u 'b D48A -> 'P 'u 'b 's D48B -> 'P 'u 's D48C -> 'P 'u 's 's D48D -> 'P 'u 'n 'g D48E -> 'P 'u 'j D48F -> 'P 'u 'c 'h D490 -> 'P 'u 'k D491 -> 'P 'u 't D492 -> 'P 'u 'p D493 -> 'P 'u 'h D494 -> 'P 'u 'e 'o D495 -> 'P 'u 'e 'o 'g D496 -> 'P 'u 'e 'o 'g 'g D497 -> 'P 'u 'e 'o 'g 's D498 -> 'P 'u 'e 'o 'n D499 -> 'P 'u 'e 'o 'n 'j D49A -> 'P 'u 'e 'o 'n 'h D49B -> 'P 'u 'e 'o 'd D49C -> 'P 'u 'e 'o 'l D49D -> 'P 'u 'e 'o 'l 'g D49E -> 'P 'u 'e 'o 'l 'm D49F -> 'P 'u 'e 'o 'l 'b D4A0 -> 'P 'u 'e 'o 'l 's D4A1 -> 'P 'u 'e 'o 'l 't D4A2 -> 'P 'u 'e 'o 'l 'p D4A3 -> 'P 'u 'e 'o 'l 'h D4A4 -> 'P 'u 'e 'o 'm D4A5 -> 'P 'u 'e 'o 'b D4A6 -> 'P 'u 'e 'o 'b 's D4A7 -> 'P 'u 'e 'o 's D4A8 -> 'P 'u 'e 'o 's 's D4A9 -> 'P 'u 'e 'o 'n 'g D4AA -> 'P 'u 'e 'o 'j D4AB -> 'P 'u 'e 'o 'c 'h D4AC -> 'P 'u 'e 'o 'k D4AD -> 'P 'u 'e 'o 't D4AE -> 'P 'u 'e 'o 'p D4AF -> 'P 'u 'e 'o 'h D4B0 -> 'P 'u 'e D4B1 -> 'P 'u 'e 'g D4B2 -> 'P 'u 'e 'g 'g D4B3 -> 'P 'u 'e 'g 's D4B4 -> 'P 'u 'e 'n D4B5 -> 'P 'u 'e 'n 'j D4B6 -> 'P 'u 'e 'n 'h D4B7 -> 'P 'u 'e 'd D4B8 -> 'P 'u 'e 'l D4B9 -> 'P 'u 'e 'l 'g D4BA -> 'P 'u 'e 'l 'm D4BB -> 'P 'u 'e 'l 'b D4BC -> 'P 'u 'e 'l 's D4BD -> 'P 'u 'e 'l 't D4BE -> 'P 'u 'e 'l 'p D4BF -> 'P 'u 'e 'l 'h D4C0 -> 'P 'u 'e 'm D4C1 -> 'P 'u 'e 'b D4C2 -> 'P 'u 'e 'b 's D4C3 -> 'P 'u 'e 's D4C4 -> 'P 'u 'e 's 's D4C5 -> 'P 'u 'e 'n 'g D4C6 -> 'P 'u 'e 'j D4C7 -> 'P 'u 'e 'c 'h D4C8 -> 'P 'u 'e 'k D4C9 -> 'P 'u 'e 't D4CA -> 'P 'u 'e 'p D4CB -> 'P 'u 'e 'h D4CC -> 'P 'u 'i D4CD -> 'P 'u 'i 'g D4CE -> 'P 'u 'i 'g 'g D4CF -> 'P 'u 'i 'g 's D4D0 -> 'P 'u 'i 'n D4D1 -> 'P 'u 'i 'n 'j D4D2 -> 'P 'u 'i 'n 'h D4D3 -> 'P 'u 'i 'd D4D4 -> 'P 'u 'i 'l D4D5 -> 'P 'u 'i 'l 'g D4D6 -> 'P 'u 'i 'l 'm D4D7 -> 'P 'u 'i 'l 'b D4D8 -> 'P 'u 'i 'l 's D4D9 -> 'P 'u 'i 'l 't D4DA -> 'P 'u 'i 'l 'p D4DB -> 'P 'u 'i 'l 'h D4DC -> 'P 'u 'i 'm D4DD -> 'P 'u 'i 'b D4DE -> 'P 'u 'i 'b 's D4DF -> 'P 'u 'i 's D4E0 -> 'P 'u 'i 's 's D4E1 -> 'P 'u 'i 'n 'g D4E2 -> 'P 'u 'i 'j D4E3 -> 'P 'u 'i 'c 'h D4E4 -> 'P 'u 'i 'k D4E5 -> 'P 'u 'i 't D4E6 -> 'P 'u 'i 'p D4E7 -> 'P 'u 'i 'h D4E8 -> 'P 'y 'u D4E9 -> 'P 'y 'u 'g D4EA -> 'P 'y 'u 'g 'g D4EB -> 'P 'y 'u 'g 's D4EC -> 'P 'y 'u 'n D4ED -> 'P 'y 'u 'n 'j D4EE -> 'P 'y 'u 'n 'h D4EF -> 'P 'y 'u 'd D4F0 -> 'P 'y 'u 'l D4F1 -> 'P 'y 'u 'l 'g D4F2 -> 'P 'y 'u 'l 'm D4F3 -> 'P 'y 'u 'l 'b D4F4 -> 'P 'y 'u 'l 's D4F5 -> 'P 'y 'u 'l 't D4F6 -> 'P 'y 'u 'l 'p D4F7 -> 'P 'y 'u 'l 'h D4F8 -> 'P 'y 'u 'm D4F9 -> 'P 'y 'u 'b D4FA -> 'P 'y 'u 'b 's D4FB -> 'P 'y 'u 's D4FC -> 'P 'y 'u 's 's D4FD -> 'P 'y 'u 'n 'g D4FE -> 'P 'y 'u 'j D4FF -> 'P 'y 'u 'c 'h D500 -> 'P 'y 'u 'k D501 -> 'P 'y 'u 't D502 -> 'P 'y 'u 'p D503 -> 'P 'y 'u 'h D504 -> 'P 'e 'u D505 -> 'P 'e 'u 'g D506 -> 'P 'e 'u 'g 'g D507 -> 'P 'e 'u 'g 's D508 -> 'P 'e 'u 'n D509 -> 'P 'e 'u 'n 'j D50A -> 'P 'e 'u 'n 'h D50B -> 'P 'e 'u 'd D50C -> 'P 'e 'u 'l D50D -> 'P 'e 'u 'l 'g D50E -> 'P 'e 'u 'l 'm D50F -> 'P 'e 'u 'l 'b D510 -> 'P 'e 'u 'l 's D511 -> 'P 'e 'u 'l 't D512 -> 'P 'e 'u 'l 'p D513 -> 'P 'e 'u 'l 'h D514 -> 'P 'e 'u 'm D515 -> 'P 'e 'u 'b D516 -> 'P 'e 'u 'b 's D517 -> 'P 'e 'u 's D518 -> 'P 'e 'u 's 's D519 -> 'P 'e 'u 'n 'g D51A -> 'P 'e 'u 'j D51B -> 'P 'e 'u 'c 'h D51C -> 'P 'e 'u 'k D51D -> 'P 'e 'u 't D51E -> 'P 'e 'u 'p D51F -> 'P 'e 'u 'h D520 -> 'P 'e 'u 'i D521 -> 'P 'e 'u 'i 'g D522 -> 'P 'e 'u 'i 'g 'g D523 -> 'P 'e 'u 'i 'g 's D524 -> 'P 'e 'u 'i 'n D525 -> 'P 'e 'u 'i 'n 'j D526 -> 'P 'e 'u 'i 'n 'h D527 -> 'P 'e 'u 'i 'd D528 -> 'P 'e 'u 'i 'l D529 -> 'P 'e 'u 'i 'l 'g D52A -> 'P 'e 'u 'i 'l 'm D52B -> 'P 'e 'u 'i 'l 'b D52C -> 'P 'e 'u 'i 'l 's D52D -> 'P 'e 'u 'i 'l 't D52E -> 'P 'e 'u 'i 'l 'p D52F -> 'P 'e 'u 'i 'l 'h D530 -> 'P 'e 'u 'i 'm D531 -> 'P 'e 'u 'i 'b D532 -> 'P 'e 'u 'i 'b 's D533 -> 'P 'e 'u 'i 's D534 -> 'P 'e 'u 'i 's 's D535 -> 'P 'e 'u 'i 'n 'g D536 -> 'P 'e 'u 'i 'j D537 -> 'P 'e 'u 'i 'c 'h D538 -> 'P 'e 'u 'i 'k D539 -> 'P 'e 'u 'i 't D53A -> 'P 'e 'u 'i 'p D53B -> 'P 'e 'u 'i 'h D53C -> 'P 'i D53D -> 'P 'i 'g D53E -> 'P 'i 'g 'g D53F -> 'P 'i 'g 's D540 -> 'P 'i 'n D541 -> 'P 'i 'n 'j D542 -> 'P 'i 'n 'h D543 -> 'P 'i 'd D544 -> 'P 'i 'l D545 -> 'P 'i 'l 'g D546 -> 'P 'i 'l 'm D547 -> 'P 'i 'l 'b D548 -> 'P 'i 'l 's D549 -> 'P 'i 'l 't D54A -> 'P 'i 'l 'p D54B -> 'P 'i 'l 'h D54C -> 'P 'i 'm D54D -> 'P 'i 'b D54E -> 'P 'i 'b 's D54F -> 'P 'i 's D550 -> 'P 'i 's 's D551 -> 'P 'i 'n 'g D552 -> 'P 'i 'j D553 -> 'P 'i 'c 'h D554 -> 'P 'i 'k D555 -> 'P 'i 't D556 -> 'P 'i 'p D557 -> 'P 'i 'h D558 -> 'H 'a D559 -> 'H 'a 'g D55A -> 'H 'a 'g 'g D55B -> 'H 'a 'g 's D55C -> 'H 'a 'n D55D -> 'H 'a 'n 'j D55E -> 'H 'a 'n 'h D55F -> 'H 'a 'd D560 -> 'H 'a 'l D561 -> 'H 'a 'l 'g D562 -> 'H 'a 'l 'm D563 -> 'H 'a 'l 'b D564 -> 'H 'a 'l 's D565 -> 'H 'a 'l 't D566 -> 'H 'a 'l 'p D567 -> 'H 'a 'l 'h D568 -> 'H 'a 'm D569 -> 'H 'a 'b D56A -> 'H 'a 'b 's D56B -> 'H 'a 's D56C -> 'H 'a 's 's D56D -> 'H 'a 'n 'g D56E -> 'H 'a 'j D56F -> 'H 'a 'c 'h D570 -> 'H 'a 'k D571 -> 'H 'a 't D572 -> 'H 'a 'p D573 -> 'H 'a 'h D574 -> 'H 'a 'e D575 -> 'H 'a 'e 'g D576 -> 'H 'a 'e 'g 'g D577 -> 'H 'a 'e 'g 's D578 -> 'H 'a 'e 'n D579 -> 'H 'a 'e 'n 'j D57A -> 'H 'a 'e 'n 'h D57B -> 'H 'a 'e 'd D57C -> 'H 'a 'e 'l D57D -> 'H 'a 'e 'l 'g D57E -> 'H 'a 'e 'l 'm D57F -> 'H 'a 'e 'l 'b D580 -> 'H 'a 'e 'l 's D581 -> 'H 'a 'e 'l 't D582 -> 'H 'a 'e 'l 'p D583 -> 'H 'a 'e 'l 'h D584 -> 'H 'a 'e 'm D585 -> 'H 'a 'e 'b D586 -> 'H 'a 'e 'b 's D587 -> 'H 'a 'e 's D588 -> 'H 'a 'e 's 's D589 -> 'H 'a 'e 'n 'g D58A -> 'H 'a 'e 'j D58B -> 'H 'a 'e 'c 'h D58C -> 'H 'a 'e 'k D58D -> 'H 'a 'e 't D58E -> 'H 'a 'e 'p D58F -> 'H 'a 'e 'h D590 -> 'H 'y 'a D591 -> 'H 'y 'a 'g D592 -> 'H 'y 'a 'g 'g D593 -> 'H 'y 'a 'g 's D594 -> 'H 'y 'a 'n D595 -> 'H 'y 'a 'n 'j D596 -> 'H 'y 'a 'n 'h D597 -> 'H 'y 'a 'd D598 -> 'H 'y 'a 'l D599 -> 'H 'y 'a 'l 'g D59A -> 'H 'y 'a 'l 'm D59B -> 'H 'y 'a 'l 'b D59C -> 'H 'y 'a 'l 's D59D -> 'H 'y 'a 'l 't D59E -> 'H 'y 'a 'l 'p D59F -> 'H 'y 'a 'l 'h D5A0 -> 'H 'y 'a 'm D5A1 -> 'H 'y 'a 'b D5A2 -> 'H 'y 'a 'b 's D5A3 -> 'H 'y 'a 's D5A4 -> 'H 'y 'a 's 's D5A5 -> 'H 'y 'a 'n 'g D5A6 -> 'H 'y 'a 'j D5A7 -> 'H 'y 'a 'c 'h D5A8 -> 'H 'y 'a 'k D5A9 -> 'H 'y 'a 't D5AA -> 'H 'y 'a 'p D5AB -> 'H 'y 'a 'h D5AC -> 'H 'y 'a 'e D5AD -> 'H 'y 'a 'e 'g D5AE -> 'H 'y 'a 'e 'g 'g D5AF -> 'H 'y 'a 'e 'g 's D5B0 -> 'H 'y 'a 'e 'n D5B1 -> 'H 'y 'a 'e 'n 'j D5B2 -> 'H 'y 'a 'e 'n 'h D5B3 -> 'H 'y 'a 'e 'd D5B4 -> 'H 'y 'a 'e 'l D5B5 -> 'H 'y 'a 'e 'l 'g D5B6 -> 'H 'y 'a 'e 'l 'm D5B7 -> 'H 'y 'a 'e 'l 'b D5B8 -> 'H 'y 'a 'e 'l 's D5B9 -> 'H 'y 'a 'e 'l 't D5BA -> 'H 'y 'a 'e 'l 'p D5BB -> 'H 'y 'a 'e 'l 'h D5BC -> 'H 'y 'a 'e 'm D5BD -> 'H 'y 'a 'e 'b D5BE -> 'H 'y 'a 'e 'b 's D5BF -> 'H 'y 'a 'e 's D5C0 -> 'H 'y 'a 'e 's 's D5C1 -> 'H 'y 'a 'e 'n 'g D5C2 -> 'H 'y 'a 'e 'j D5C3 -> 'H 'y 'a 'e 'c 'h D5C4 -> 'H 'y 'a 'e 'k D5C5 -> 'H 'y 'a 'e 't D5C6 -> 'H 'y 'a 'e 'p D5C7 -> 'H 'y 'a 'e 'h D5C8 -> 'H 'e 'o D5C9 -> 'H 'e 'o 'g D5CA -> 'H 'e 'o 'g 'g D5CB -> 'H 'e 'o 'g 's D5CC -> 'H 'e 'o 'n D5CD -> 'H 'e 'o 'n 'j D5CE -> 'H 'e 'o 'n 'h D5CF -> 'H 'e 'o 'd D5D0 -> 'H 'e 'o 'l D5D1 -> 'H 'e 'o 'l 'g D5D2 -> 'H 'e 'o 'l 'm D5D3 -> 'H 'e 'o 'l 'b D5D4 -> 'H 'e 'o 'l 's D5D5 -> 'H 'e 'o 'l 't D5D6 -> 'H 'e 'o 'l 'p D5D7 -> 'H 'e 'o 'l 'h D5D8 -> 'H 'e 'o 'm D5D9 -> 'H 'e 'o 'b D5DA -> 'H 'e 'o 'b 's D5DB -> 'H 'e 'o 's D5DC -> 'H 'e 'o 's 's D5DD -> 'H 'e 'o 'n 'g D5DE -> 'H 'e 'o 'j D5DF -> 'H 'e 'o 'c 'h D5E0 -> 'H 'e 'o 'k D5E1 -> 'H 'e 'o 't D5E2 -> 'H 'e 'o 'p D5E3 -> 'H 'e 'o 'h D5E4 -> 'H 'e D5E5 -> 'H 'e 'g D5E6 -> 'H 'e 'g 'g D5E7 -> 'H 'e 'g 's D5E8 -> 'H 'e 'n D5E9 -> 'H 'e 'n 'j D5EA -> 'H 'e 'n 'h D5EB -> 'H 'e 'd D5EC -> 'H 'e 'l D5ED -> 'H 'e 'l 'g D5EE -> 'H 'e 'l 'm D5EF -> 'H 'e 'l 'b D5F0 -> 'H 'e 'l 's D5F1 -> 'H 'e 'l 't D5F2 -> 'H 'e 'l 'p D5F3 -> 'H 'e 'l 'h D5F4 -> 'H 'e 'm D5F5 -> 'H 'e 'b D5F6 -> 'H 'e 'b 's D5F7 -> 'H 'e 's D5F8 -> 'H 'e 's 's D5F9 -> 'H 'e 'n 'g D5FA -> 'H 'e 'j D5FB -> 'H 'e 'c 'h D5FC -> 'H 'e 'k D5FD -> 'H 'e 't D5FE -> 'H 'e 'p D5FF -> 'H 'e 'h D600 -> 'H 'y 'e 'o D601 -> 'H 'y 'e 'o 'g D602 -> 'H 'y 'e 'o 'g 'g D603 -> 'H 'y 'e 'o 'g 's D604 -> 'H 'y 'e 'o 'n D605 -> 'H 'y 'e 'o 'n 'j D606 -> 'H 'y 'e 'o 'n 'h D607 -> 'H 'y 'e 'o 'd D608 -> 'H 'y 'e 'o 'l D609 -> 'H 'y 'e 'o 'l 'g D60A -> 'H 'y 'e 'o 'l 'm D60B -> 'H 'y 'e 'o 'l 'b D60C -> 'H 'y 'e 'o 'l 's D60D -> 'H 'y 'e 'o 'l 't D60E -> 'H 'y 'e 'o 'l 'p D60F -> 'H 'y 'e 'o 'l 'h D610 -> 'H 'y 'e 'o 'm D611 -> 'H 'y 'e 'o 'b D612 -> 'H 'y 'e 'o 'b 's D613 -> 'H 'y 'e 'o 's D614 -> 'H 'y 'e 'o 's 's D615 -> 'H 'y 'e 'o 'n 'g D616 -> 'H 'y 'e 'o 'j D617 -> 'H 'y 'e 'o 'c 'h D618 -> 'H 'y 'e 'o 'k D619 -> 'H 'y 'e 'o 't D61A -> 'H 'y 'e 'o 'p D61B -> 'H 'y 'e 'o 'h D61C -> 'H 'y 'e D61D -> 'H 'y 'e 'g D61E -> 'H 'y 'e 'g 'g D61F -> 'H 'y 'e 'g 's D620 -> 'H 'y 'e 'n D621 -> 'H 'y 'e 'n 'j D622 -> 'H 'y 'e 'n 'h D623 -> 'H 'y 'e 'd D624 -> 'H 'y 'e 'l D625 -> 'H 'y 'e 'l 'g D626 -> 'H 'y 'e 'l 'm D627 -> 'H 'y 'e 'l 'b D628 -> 'H 'y 'e 'l 's D629 -> 'H 'y 'e 'l 't D62A -> 'H 'y 'e 'l 'p D62B -> 'H 'y 'e 'l 'h D62C -> 'H 'y 'e 'm D62D -> 'H 'y 'e 'b D62E -> 'H 'y 'e 'b 's D62F -> 'H 'y 'e 's D630 -> 'H 'y 'e 's 's D631 -> 'H 'y 'e 'n 'g D632 -> 'H 'y 'e 'j D633 -> 'H 'y 'e 'c 'h D634 -> 'H 'y 'e 'k D635 -> 'H 'y 'e 't D636 -> 'H 'y 'e 'p D637 -> 'H 'y 'e 'h D638 -> 'H 'o D639 -> 'H 'o 'g D63A -> 'H 'o 'g 'g D63B -> 'H 'o 'g 's D63C -> 'H 'o 'n D63D -> 'H 'o 'n 'j D63E -> 'H 'o 'n 'h D63F -> 'H 'o 'd D640 -> 'H 'o 'l D641 -> 'H 'o 'l 'g D642 -> 'H 'o 'l 'm D643 -> 'H 'o 'l 'b D644 -> 'H 'o 'l 's D645 -> 'H 'o 'l 't D646 -> 'H 'o 'l 'p D647 -> 'H 'o 'l 'h D648 -> 'H 'o 'm D649 -> 'H 'o 'b D64A -> 'H 'o 'b 's D64B -> 'H 'o 's D64C -> 'H 'o 's 's D64D -> 'H 'o 'n 'g D64E -> 'H 'o 'j D64F -> 'H 'o 'c 'h D650 -> 'H 'o 'k D651 -> 'H 'o 't D652 -> 'H 'o 'p D653 -> 'H 'o 'h D654 -> 'H 'o 'a D655 -> 'H 'o 'a 'g D656 -> 'H 'o 'a 'g 'g D657 -> 'H 'o 'a 'g 's D658 -> 'H 'o 'a 'n D659 -> 'H 'o 'a 'n 'j D65A -> 'H 'o 'a 'n 'h D65B -> 'H 'o 'a 'd D65C -> 'H 'o 'a 'l D65D -> 'H 'o 'a 'l 'g D65E -> 'H 'o 'a 'l 'm D65F -> 'H 'o 'a 'l 'b D660 -> 'H 'o 'a 'l 's D661 -> 'H 'o 'a 'l 't D662 -> 'H 'o 'a 'l 'p D663 -> 'H 'o 'a 'l 'h D664 -> 'H 'o 'a 'm D665 -> 'H 'o 'a 'b D666 -> 'H 'o 'a 'b 's D667 -> 'H 'o 'a 's D668 -> 'H 'o 'a 's 's D669 -> 'H 'o 'a 'n 'g D66A -> 'H 'o 'a 'j D66B -> 'H 'o 'a 'c 'h D66C -> 'H 'o 'a 'k D66D -> 'H 'o 'a 't D66E -> 'H 'o 'a 'p D66F -> 'H 'o 'a 'h D670 -> 'H 'o 'a 'e D671 -> 'H 'o 'a 'e 'g D672 -> 'H 'o 'a 'e 'g 'g D673 -> 'H 'o 'a 'e 'g 's D674 -> 'H 'o 'a 'e 'n D675 -> 'H 'o 'a 'e 'n 'j D676 -> 'H 'o 'a 'e 'n 'h D677 -> 'H 'o 'a 'e 'd D678 -> 'H 'o 'a 'e 'l D679 -> 'H 'o 'a 'e 'l 'g D67A -> 'H 'o 'a 'e 'l 'm D67B -> 'H 'o 'a 'e 'l 'b D67C -> 'H 'o 'a 'e 'l 's D67D -> 'H 'o 'a 'e 'l 't D67E -> 'H 'o 'a 'e 'l 'p D67F -> 'H 'o 'a 'e 'l 'h D680 -> 'H 'o 'a 'e 'm D681 -> 'H 'o 'a 'e 'b D682 -> 'H 'o 'a 'e 'b 's D683 -> 'H 'o 'a 'e 's D684 -> 'H 'o 'a 'e 's 's D685 -> 'H 'o 'a 'e 'n 'g D686 -> 'H 'o 'a 'e 'j D687 -> 'H 'o 'a 'e 'c 'h D688 -> 'H 'o 'a 'e 'k D689 -> 'H 'o 'a 'e 't D68A -> 'H 'o 'a 'e 'p D68B -> 'H 'o 'a 'e 'h D68C -> 'H 'o 'i D68D -> 'H 'o 'i 'g D68E -> 'H 'o 'i 'g 'g D68F -> 'H 'o 'i 'g 's D690 -> 'H 'o 'i 'n D691 -> 'H 'o 'i 'n 'j D692 -> 'H 'o 'i 'n 'h D693 -> 'H 'o 'i 'd D694 -> 'H 'o 'i 'l D695 -> 'H 'o 'i 'l 'g D696 -> 'H 'o 'i 'l 'm D697 -> 'H 'o 'i 'l 'b D698 -> 'H 'o 'i 'l 's D699 -> 'H 'o 'i 'l 't D69A -> 'H 'o 'i 'l 'p D69B -> 'H 'o 'i 'l 'h D69C -> 'H 'o 'i 'm D69D -> 'H 'o 'i 'b D69E -> 'H 'o 'i 'b 's D69F -> 'H 'o 'i 's D6A0 -> 'H 'o 'i 's 's D6A1 -> 'H 'o 'i 'n 'g D6A2 -> 'H 'o 'i 'j D6A3 -> 'H 'o 'i 'c 'h D6A4 -> 'H 'o 'i 'k D6A5 -> 'H 'o 'i 't D6A6 -> 'H 'o 'i 'p D6A7 -> 'H 'o 'i 'h D6A8 -> 'H 'y 'o D6A9 -> 'H 'y 'o 'g D6AA -> 'H 'y 'o 'g 'g D6AB -> 'H 'y 'o 'g 's D6AC -> 'H 'y 'o 'n D6AD -> 'H 'y 'o 'n 'j D6AE -> 'H 'y 'o 'n 'h D6AF -> 'H 'y 'o 'd D6B0 -> 'H 'y 'o 'l D6B1 -> 'H 'y 'o 'l 'g D6B2 -> 'H 'y 'o 'l 'm D6B3 -> 'H 'y 'o 'l 'b D6B4 -> 'H 'y 'o 'l 's D6B5 -> 'H 'y 'o 'l 't D6B6 -> 'H 'y 'o 'l 'p D6B7 -> 'H 'y 'o 'l 'h D6B8 -> 'H 'y 'o 'm D6B9 -> 'H 'y 'o 'b D6BA -> 'H 'y 'o 'b 's D6BB -> 'H 'y 'o 's D6BC -> 'H 'y 'o 's 's D6BD -> 'H 'y 'o 'n 'g D6BE -> 'H 'y 'o 'j D6BF -> 'H 'y 'o 'c 'h D6C0 -> 'H 'y 'o 'k D6C1 -> 'H 'y 'o 't D6C2 -> 'H 'y 'o 'p D6C3 -> 'H 'y 'o 'h D6C4 -> 'H 'u D6C5 -> 'H 'u 'g D6C6 -> 'H 'u 'g 'g D6C7 -> 'H 'u 'g 's D6C8 -> 'H 'u 'n D6C9 -> 'H 'u 'n 'j D6CA -> 'H 'u 'n 'h D6CB -> 'H 'u 'd D6CC -> 'H 'u 'l D6CD -> 'H 'u 'l 'g D6CE -> 'H 'u 'l 'm D6CF -> 'H 'u 'l 'b D6D0 -> 'H 'u 'l 's D6D1 -> 'H 'u 'l 't D6D2 -> 'H 'u 'l 'p D6D3 -> 'H 'u 'l 'h D6D4 -> 'H 'u 'm D6D5 -> 'H 'u 'b D6D6 -> 'H 'u 'b 's D6D7 -> 'H 'u 's D6D8 -> 'H 'u 's 's D6D9 -> 'H 'u 'n 'g D6DA -> 'H 'u 'j D6DB -> 'H 'u 'c 'h D6DC -> 'H 'u 'k D6DD -> 'H 'u 't D6DE -> 'H 'u 'p D6DF -> 'H 'u 'h D6E0 -> 'H 'u 'e 'o D6E1 -> 'H 'u 'e 'o 'g D6E2 -> 'H 'u 'e 'o 'g 'g D6E3 -> 'H 'u 'e 'o 'g 's D6E4 -> 'H 'u 'e 'o 'n D6E5 -> 'H 'u 'e 'o 'n 'j D6E6 -> 'H 'u 'e 'o 'n 'h D6E7 -> 'H 'u 'e 'o 'd D6E8 -> 'H 'u 'e 'o 'l D6E9 -> 'H 'u 'e 'o 'l 'g D6EA -> 'H 'u 'e 'o 'l 'm D6EB -> 'H 'u 'e 'o 'l 'b D6EC -> 'H 'u 'e 'o 'l 's D6ED -> 'H 'u 'e 'o 'l 't D6EE -> 'H 'u 'e 'o 'l 'p D6EF -> 'H 'u 'e 'o 'l 'h D6F0 -> 'H 'u 'e 'o 'm D6F1 -> 'H 'u 'e 'o 'b D6F2 -> 'H 'u 'e 'o 'b 's D6F3 -> 'H 'u 'e 'o 's D6F4 -> 'H 'u 'e 'o 's 's D6F5 -> 'H 'u 'e 'o 'n 'g D6F6 -> 'H 'u 'e 'o 'j D6F7 -> 'H 'u 'e 'o 'c 'h D6F8 -> 'H 'u 'e 'o 'k D6F9 -> 'H 'u 'e 'o 't D6FA -> 'H 'u 'e 'o 'p D6FB -> 'H 'u 'e 'o 'h D6FC -> 'H 'u 'e D6FD -> 'H 'u 'e 'g D6FE -> 'H 'u 'e 'g 'g D6FF -> 'H 'u 'e 'g 's D700 -> 'H 'u 'e 'n D701 -> 'H 'u 'e 'n 'j D702 -> 'H 'u 'e 'n 'h D703 -> 'H 'u 'e 'd D704 -> 'H 'u 'e 'l D705 -> 'H 'u 'e 'l 'g D706 -> 'H 'u 'e 'l 'm D707 -> 'H 'u 'e 'l 'b D708 -> 'H 'u 'e 'l 's D709 -> 'H 'u 'e 'l 't D70A -> 'H 'u 'e 'l 'p D70B -> 'H 'u 'e 'l 'h D70C -> 'H 'u 'e 'm D70D -> 'H 'u 'e 'b D70E -> 'H 'u 'e 'b 's D70F -> 'H 'u 'e 's D710 -> 'H 'u 'e 's 's D711 -> 'H 'u 'e 'n 'g D712 -> 'H 'u 'e 'j D713 -> 'H 'u 'e 'c 'h D714 -> 'H 'u 'e 'k D715 -> 'H 'u 'e 't D716 -> 'H 'u 'e 'p D717 -> 'H 'u 'e 'h D718 -> 'H 'u 'i D719 -> 'H 'u 'i 'g D71A -> 'H 'u 'i 'g 'g D71B -> 'H 'u 'i 'g 's D71C -> 'H 'u 'i 'n D71D -> 'H 'u 'i 'n 'j D71E -> 'H 'u 'i 'n 'h D71F -> 'H 'u 'i 'd D720 -> 'H 'u 'i 'l D721 -> 'H 'u 'i 'l 'g D722 -> 'H 'u 'i 'l 'm D723 -> 'H 'u 'i 'l 'b D724 -> 'H 'u 'i 'l 's D725 -> 'H 'u 'i 'l 't D726 -> 'H 'u 'i 'l 'p D727 -> 'H 'u 'i 'l 'h D728 -> 'H 'u 'i 'm D729 -> 'H 'u 'i 'b D72A -> 'H 'u 'i 'b 's D72B -> 'H 'u 'i 's D72C -> 'H 'u 'i 's 's D72D -> 'H 'u 'i 'n 'g D72E -> 'H 'u 'i 'j D72F -> 'H 'u 'i 'c 'h D730 -> 'H 'u 'i 'k D731 -> 'H 'u 'i 't D732 -> 'H 'u 'i 'p D733 -> 'H 'u 'i 'h D734 -> 'H 'y 'u D735 -> 'H 'y 'u 'g D736 -> 'H 'y 'u 'g 'g D737 -> 'H 'y 'u 'g 's D738 -> 'H 'y 'u 'n D739 -> 'H 'y 'u 'n 'j D73A -> 'H 'y 'u 'n 'h D73B -> 'H 'y 'u 'd D73C -> 'H 'y 'u 'l D73D -> 'H 'y 'u 'l 'g D73E -> 'H 'y 'u 'l 'm D73F -> 'H 'y 'u 'l 'b D740 -> 'H 'y 'u 'l 's D741 -> 'H 'y 'u 'l 't D742 -> 'H 'y 'u 'l 'p D743 -> 'H 'y 'u 'l 'h D744 -> 'H 'y 'u 'm D745 -> 'H 'y 'u 'b D746 -> 'H 'y 'u 'b 's D747 -> 'H 'y 'u 's D748 -> 'H 'y 'u 's 's D749 -> 'H 'y 'u 'n 'g D74A -> 'H 'y 'u 'j D74B -> 'H 'y 'u 'c 'h D74C -> 'H 'y 'u 'k D74D -> 'H 'y 'u 't D74E -> 'H 'y 'u 'p D74F -> 'H 'y 'u 'h D750 -> 'H 'e 'u D751 -> 'H 'e 'u 'g D752 -> 'H 'e 'u 'g 'g D753 -> 'H 'e 'u 'g 's D754 -> 'H 'e 'u 'n D755 -> 'H 'e 'u 'n 'j D756 -> 'H 'e 'u 'n 'h D757 -> 'H 'e 'u 'd D758 -> 'H 'e 'u 'l D759 -> 'H 'e 'u 'l 'g D75A -> 'H 'e 'u 'l 'm D75B -> 'H 'e 'u 'l 'b D75C -> 'H 'e 'u 'l 's D75D -> 'H 'e 'u 'l 't D75E -> 'H 'e 'u 'l 'p D75F -> 'H 'e 'u 'l 'h D760 -> 'H 'e 'u 'm D761 -> 'H 'e 'u 'b D762 -> 'H 'e 'u 'b 's D763 -> 'H 'e 'u 's D764 -> 'H 'e 'u 's 's D765 -> 'H 'e 'u 'n 'g D766 -> 'H 'e 'u 'j D767 -> 'H 'e 'u 'c 'h D768 -> 'H 'e 'u 'k D769 -> 'H 'e 'u 't D76A -> 'H 'e 'u 'p D76B -> 'H 'e 'u 'h D76C -> 'H 'e 'u 'i D76D -> 'H 'e 'u 'i 'g D76E -> 'H 'e 'u 'i 'g 'g D76F -> 'H 'e 'u 'i 'g 's D770 -> 'H 'e 'u 'i 'n D771 -> 'H 'e 'u 'i 'n 'j D772 -> 'H 'e 'u 'i 'n 'h D773 -> 'H 'e 'u 'i 'd D774 -> 'H 'e 'u 'i 'l D775 -> 'H 'e 'u 'i 'l 'g D776 -> 'H 'e 'u 'i 'l 'm D777 -> 'H 'e 'u 'i 'l 'b D778 -> 'H 'e 'u 'i 'l 's D779 -> 'H 'e 'u 'i 'l 't D77A -> 'H 'e 'u 'i 'l 'p D77B -> 'H 'e 'u 'i 'l 'h D77C -> 'H 'e 'u 'i 'm D77D -> 'H 'e 'u 'i 'b D77E -> 'H 'e 'u 'i 'b 's D77F -> 'H 'e 'u 'i 's D780 -> 'H 'e 'u 'i 's 's D781 -> 'H 'e 'u 'i 'n 'g D782 -> 'H 'e 'u 'i 'j D783 -> 'H 'e 'u 'i 'c 'h D784 -> 'H 'e 'u 'i 'k D785 -> 'H 'e 'u 'i 't D786 -> 'H 'e 'u 'i 'p D787 -> 'H 'e 'u 'i 'h D788 -> 'H 'i D789 -> 'H 'i 'g D78A -> 'H 'i 'g 'g D78B -> 'H 'i 'g 's D78C -> 'H 'i 'n D78D -> 'H 'i 'n 'j D78E -> 'H 'i 'n 'h D78F -> 'H 'i 'd D790 -> 'H 'i 'l D791 -> 'H 'i 'l 'g D792 -> 'H 'i 'l 'm D793 -> 'H 'i 'l 'b D794 -> 'H 'i 'l 's D795 -> 'H 'i 'l 't D796 -> 'H 'i 'l 'p D797 -> 'H 'i 'l 'h D798 -> 'H 'i 'm D799 -> 'H 'i 'b D79A -> 'H 'i 'b 's D79B -> 'H 'i 's D79C -> 'H 'i 's 's D79D -> 'H 'i 'n 'g D79E -> 'H 'i 'j D79F -> 'H 'i 'c 'h D7A0 -> 'H 'i 'k D7A1 -> 'H 'i 't D7A2 -> 'H 'i 'p D7A3 -> 'H 'i 'h #----------- END of Hangul.mys ./mytool/mys/IS_RM.mys0000644000175000017500000005642507574146574014672 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-RM COMM= Anirban Mitra 2002-10-17 COMM= Updated context based Anuswar replacement 2002-11-11 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 1E41 A2 B3/ -> 1e45 006B 0061#ANUSWAR VARIATIONS A2 B4/ -> 1e45 006b 0068 0061 A2 B5/ -> 1e45 0067 0061 A2 B6/ -> 1e45 0067 0068 0061 A2 B8/ -> 00F1 0063 0061 A2 B9/ -> 00F1 0063 0068 0061 A2 BA/ -> 00F1 006A 0061 A2 BB/ -> 00F1 006A 0068 0061 A2 BD/ -> 0146 1E6D 0061 A2 BE/ -> 0146 1E6D 0068 0061 A2 BF/ -> 0146 1E0D 0061 A2 C0/ -> 0146 1E0D 0068 0061 A2 C2/ -> 006e 0074 0061 A2 C3/ -> 006e 0074 0068 0061 A2 C4/ -> 006e 0064 0061 A2 C5/ -> 006e 0064 0068 0061 A2 C8/ -> 006D 0070 0061 A2 C9/ -> 006D 0070 0068 0061 A2 CA/ -> 006D 0062 0061 A2 CB/ -> 006D 0062 0068 0061 A2/ -> 1E43 #ṃ A3 -> 1E25 A4 -> 0061 A5 -> 0101 A6/ -> 0069 A7 -> 012B A8 -> 0075 A9 -> 016B AA -> 1E5B A6 E9 -> 1E3B AE -> 00EA AB -> 0065 AC -> 0113 AD -> 0061 0069 B2 -> 00F4 AF -> 006F B0 -> 014D B1 -> 0061 0075 B3/ -> 006B 0061 # ka B4/ -> 006b 0068 0061 B5/ -> 0067 0061 B6/ -> 0067 0068 0061 B7/ -> 1e45 0061 B8/ -> 0063 0061 #ca B9/ -> 0063 0068 0061 BA/ -> 006A 0061 BB/ -> 006A 0068 0061 BC/ -> 00F1 0061 BD/ -> 1E6D 0061 #tta BE/ -> 1E6D 0068 0061 BF/ -> 1E0D 0061 C0/ -> 1E0D 0068 0061 C1/ -> 0146 0061 C2/ -> 0074 0061 #ta C3/ -> 0074 0068 0061 C4/ -> 0064 0061 C5/ -> 0064 0068 0061 C6/ -> 006e 0061 C7/ -> 1e49 0061 C8/ -> 0070 0061 #pa C9/ -> 0070 0068 0061 CA/ -> 0062 0061 CB/ -> 0062 0068 0061 CC/ -> 006D 0061 CD/ -> 0079 0061 CF/ -> 0072 0061 D0/ -> 1E5F 0061 D1/ -> 006C 0061 D2/ -> 1e39 0061 D3/ -> 017C 0061 D4/ -> 0076 0061 D5/ -> 015B 0061 D6/ -> 1E63 0061 D7/ -> 0073 0061 D8/ -> 0068 0061 E9/ -> EA E9 -> 0061 DA -> 0101 DB -> 0069 DC -> 012B DD -> 0075 DE -> 016B DF -> 1E5B DF E9 -> 1E5D E3 -> 00EA E0 -> 0065 E1 -> 0113 E2 -> 0061 0069 E7 -> 00F4 E4 -> 006F E5 -> 014D E6 -> 0061 0075 E8/ ->002E A1 E9 -> B3 E9 -> 0071 0061 B4 E9 -> 1E35 0068 0061 B5 E9 -> 0067 0068 0331 0061 BA E9 -> 007A 0061 BF E9 -> 0064 0302 0061 C0 E9 -> 0064 0302 0068 0061 C9 E9 -> 0066 0061 CE -> 1E8F 0061 AA E9 -> 1E5D A7 E9 -> 1E4D DB E9 -> 1E5D DC E9 -> 1E4D EA -> 002E EA EA -> 007C 007C F1 -> 0030 F2 -> 0031 F3 -> 0032 F4 -> 0033 F5 -> 0034 F6 -> 0035 F7 -> 0036 F8 -> 0037 F9 -> 0038 FA -> 0039 B3 E8 -> 006B #Halant forms B4 E8 -> 006b 0068 B5 E8 -> 0067 B6 E8 -> 0067 0068 B7 E8 -> 0061 B8 E8 -> 0063 B9 E8 -> 0063 0068 BA E8 -> 006A BB E8 -> 006A 0068 BC E8 -> 00F1 BD E8 -> 1E6D BE E8 -> 1E6D 0068 BF E8 -> 1E0D C0 E8 -> 1E0D 0068 C1 E8 -> 0146 C2 E8 -> 0074 C3 E8 -> 0074 0068 C4 E8 -> 0064 C5 E8 -> 0064 0068 C6 E8 -> 006e C7 E8 -> 1E49 C8 E8 -> 0070 C9 E8 -> 0070 0068 CA E8 -> 0062 CB E8 -> 0062 0068 CC E8 -> 006D CD E8 -> 0079 CF E8 -> 0072 D0 E8 -> 1E5F D1 E8 -> 006C D2 E8 -> 1E39 D3 E8 -> 017C D4 E8 -> 0076 D5 E8 -> 015B D6 E8 -> 1E63 D7 E8 -> 0073 D8 E8 -> 0068 B3 E9 E8 -> 0071 B4 E9 E8 -> 1E35 B5 E9 E8 -> 0067 0068 0331 BA E9 E8 -> 007A BF E9 E8 -> 0064 0302 C0 E9 E8 -> 0064 0302 0068 C9 E9 E8 -> 0066 CE E8 -> 1E8F A2 B3 E8 -> 1e45 006B A2 B4 E8 -> 1e45 006b 0068 A2 B5 E8 -> 1e45 0067 A2 B6 E8 -> 1e45 0067 0068 A2 B8 E8 -> 00F1 0063 A2 B9 E8 -> 00F1 0063 0068 A2 BA E8 -> 00F1 006A A2 BB E8 -> 00F1 006A 0068 A2 BD E8 -> 0146 1E6D A2 BE E8 -> 0146 1E6D 0068 A2 BF E8 -> 0146 1E0D A2 C0 E8 -> 0146 1E0D 0068 A2 C2 E8 -> 006e 0074 A2 C3 E8 -> 006e 0074 0068 A2 C4 E8 -> 006e 0064 A2 C5 E8 -> 006e 0064 0068 A2 C8 E8 -> 006D 0070 A2 C9 E8 -> 006D 0070 0068 A2 CA E8 -> 006D 0062 A2 CB E8 -> 006D 0062 0068 B3 DA -> 006B 0101 #AAFrms B4 DA -> 006b 0068 0101 B5 DA -> 0067 0101 B6 DA -> 0067 0068 0101 B7 DA -> 1e45 0101 B8 DA -> 0063 0101 B9 DA -> 0063 0068 0101 BA DA -> 006A 0101 BB DA -> 006A 0068 0101 BC DA -> 00F1 0101 BD DA -> 1E6D 0101 BE DA -> 1E6D 0068 0101 BF DA -> 1E0D 0101 C0 DA -> 1E0D 0068 0101 C1 DA -> 0146 0101 C2 DA -> 0074 0101 C3 DA -> 0074 0068 0101 C4 DA -> 0064 0101 C5 DA -> 0064 0068 0101 C6 DA -> 006e 0101 C7 DA -> 1e49 0101 C8 DA -> 0070 0101 C9 DA -> 0070 0068 0101 CA DA -> 0062 0101 CB DA -> 0062 0068 0101 CC DA -> 006D 0101 CD DA -> 0079 0101 CF DA -> 0072 0101 D0 DA -> 1E5F 0101 D1 DA -> 006C 0101 D2 DA -> 1e39 0101 D3 DA -> 017C 0101 D4 DA -> 0076 0101 D5 DA -> 015B 0101 D6 DA -> 1E63 0101 D7 DA -> 0073 0101 D8 DA -> 0068 0101 B3 E9 DA -> 0071 0101 B4 E9 DA -> 1E35 0068 0101 B5 E9 DA -> 0067 0068 0331 0101 BA E9 DA -> 007A 0101 BF E9 DA -> 0064 0302 0101 C0 E9 DA -> 0064 0302 0068 0101 C9 E9 DA -> 0066 0101 CE DA -> 1E8F 0101 A2 B3 DA -> 1e45 006B 0101 A2 B4 DA -> 1e45 006b 0068 0101 A2 B5 DA -> 1e45 0067 0101 A2 B6 DA -> 1e45 0067 0068 0101 A2 B8 DA -> 00F1 0063 0101 A2 B9 DA -> 00F1 0063 0068 0101 A2 BA DA -> 00F1 006A 0101 A2 BB DA -> 00F1 006A 0068 0101 A2 BD DA -> 0146 1E6D 0101 A2 BE DA -> 0146 1E6D 0068 0101 A2 BF DA -> 0146 1E0D 0101 A2 C0 DA -> 0146 1E0D 0068 0101 A2 C2 DA -> 006e 0074 0101 A2 C3 DA -> 006e 0074 0068 0101 A2 C4 DA -> 006e 0064 0101 A2 C5 DA -> 006e 0064 0068 0101 A2 C8 DA -> 006D 0070 0101 A2 C9 DA -> 006D 0070 0068 0101 A2 CA DA -> 006D 0062 0101 A2 CB DA -> 006D 0062 0068 0101 B3 DB -> 006B 0069 #IForms B4 DB -> 006b 0068 0069 B5 DB -> 0067 0069 B6 DB -> 0067 0068 0069 B7 DB -> 1e45 0069 B8 DB -> 0063 0069 B9 DB -> 0063 0068 0069 BA DB -> 006A 0069 BB DB -> 006A 0068 0069 BC DB -> 00F1 0069 BD DB -> 1E6D 0069 BE DB -> 1E6D 0068 0069 BF DB -> 1E0D 0069 C0 DB -> 1E0D 0068 0069 C1 DB -> 0146 0069 C2 DB -> 0074 0069 C3 DB -> 0074 0068 0069 C4 DB -> 0064 0069 C5 DB -> 0064 0068 0069 C6 DB -> 006e 0069 C7 DB -> 1e49 0069 C8 DB -> 0070 0069 C9 DB -> 0070 0068 0069 CA DB -> 0062 0069 CB DB -> 0062 0068 0069 CC DB -> 006D 0069 CD DB -> 0079 0069 CF DB -> 0072 0069 D0 DB -> 1E5F 0069 D1 DB -> 006C 0069 D2 DB -> 1e39 0069 D3 DB -> 017C 0069 D4 DB -> 0076 0069 D5 DB -> 015B 0069 D6 DB -> 1E63 0069 D7 DB -> 0073 0069 D8 DB -> 0068 0069 B3 E9 DB -> 0071 0069 B4 E9 DB -> 1E35 0068 0069 B5 E9 DB -> 0067 0068 0331 0069 BA E9 DB -> 007A 0069 BF E9 DB -> 0064 0302 0069 C0 E9 DB -> 0064 0302 0068 0069 C9 E9 DB -> 0066 0069 CE DB -> 1E8F 0069 A2 B3 DB -> 1e45 006B 0069 A2 B4 DB -> 1e45 006b 0068 0069 A2 B5 DB -> 1e45 0067 0069 A2 B6 DB -> 1e45 0067 0068 0069 A2 B8 DB -> 00F1 0063 0069 A2 B9 DB -> 00F1 0063 0068 0069 A2 BA DB -> 00F1 006A 0069 A2 BB DB -> 00F1 006A 0068 0069 A2 BD DB -> 0146 1E6D 0069 A2 BE DB -> 0146 1E6D 0068 0069 A2 BF DB -> 0146 1E0D 0069 A2 C0 DB -> 0146 1E0D 0068 0069 A2 C2 DB -> 006e 0074 0069 A2 C3 DB -> 006e 0074 0068 0069 A2 C4 DB -> 006e 0064 0069 A2 C5 DB -> 006e 0064 0068 0069 A2 C8 DB -> 006D 0070 0069 A2 C9 DB -> 006D 0070 0068 0069 A2 CA DB -> 006D 0062 0069 A2 CB DB -> 006D 0062 0068 0069 B3 DC -> 006B 012b #iiForms B4 DC -> 006b 0068 012b B5 DC -> 0067 012b B6 DC -> 0067 0068 012b B7 DC -> 1e45 012b B8 DC -> 0063 012b B9 DC -> 0063 0068 012b BA DC -> 006A 012b BB DC -> 006A 0068 012b BC DC -> 00F1 012b BD DC -> 1E6D 012b BE DC -> 1E6D 0068 012b BF DC -> 1E0D 012b C0 DC -> 1E0D 0068 012b C1 DC -> 0146 012b C2 DC -> 0074 012b C3 DC -> 0074 0068 012b C4 DC -> 0064 012b C5 DC -> 0064 0068 012b C6 DC -> 006e 012b C7 DC -> 1e49 012b C8 DC -> 0070 012b C9 DC -> 0070 0068 012b CA DC -> 0062 012b CB DC -> 0062 0068 012b CC DC -> 006D 012b CD DC -> 0079 012b CF DC -> 0072 012b D0 DC -> 1E5F 012b D1 DC -> 006C 012b D2 DC -> 1e39 012b D3 DC -> 017C 012b D4 DC -> 0076 012b D5 DC -> 015B 012b D6 DC -> 1E63 012b D7 DC -> 0073 012b D8 DC -> 0068 012b B3 E9 DC -> 0071 012b B4 E9 DC -> 1E35 0068 012b B5 E9 DC -> 0067 0068 0331 012b BA E9 DC -> 007A 012b BF E9 DC -> 0064 0302 012b C0 E9 DC -> 0064 0302 0068 012b C9 E9 DC -> 0066 012b CE DC -> 1E8F 012b A2 B3 DC -> 1e45 006B 012B A2 B4 DC -> 1e45 006b 0068 012B A2 B5 DC -> 1e45 0067 012B A2 B6 DC -> 1e45 0067 0068 012B A2 B8 DC -> 00F1 0063 012B A2 B9 DC -> 00F1 0063 0068 012B A2 BA DC -> 00F1 006A 012B A2 BB DC -> 00F1 006A 0068 012B A2 BD DC -> 0146 1E6D 012B A2 BE DC -> 0146 1E6D 0068 012B A2 BF DC -> 0146 1E0D 012B A2 C0 DC -> 0146 1E0D 0068 012B A2 C2 DC -> 006e 0074 012B A2 C3 DC -> 006e 0074 0068 012B A2 C4 DC -> 006e 0064 012B A2 C5 DC -> 006e 0064 0068 012B A2 C8 DC -> 006D 0070 012B A2 C9 DC -> 006D 0070 0068 012B A2 CA DC -> 006D 0062 012B A2 CB DC -> 006D 0062 0068 012B B3 DD -> 006B 0075 #uforms B4 DD -> 006b 0068 0075 B5 DD -> 0067 0075 B6 DD -> 0067 0068 0075 B7 DD -> 1e45 0075 B8 DD -> 0063 0075 B9 DD -> 0063 0068 0075 BA DD -> 006A 0075 BB DD -> 006A 0068 0075 BC DD -> 00F1 0075 BD DD -> 1E6D 0075 BE DD -> 1E6D 0068 0075 BF DD -> 1E0D 0075 C0 DD -> 1E0D 0068 0075 C1 DD -> 0146 0075 C2 DD -> 0074 0075 C3 DD -> 0074 0068 0075 C4 DD -> 0064 0075 C5 DD -> 0064 0068 0075 C6 DD -> 006e 0075 C7 DD -> 1e49 0075 C8 DD -> 0070 0075 C9 DD -> 0070 0068 0075 CA DD -> 0062 0075 CB DD -> 0062 0068 0075 CC DD -> 006D 0075 CD DD -> 0079 0075 CF DD -> 0072 0075 D0 DD -> 1E5F 0075 D1 DD -> 006C 0075 D2 DD -> 1e39 0075 D3 DD -> 017C 0075 D4 DD -> 0076 0075 D5 DD -> 015B 0075 D6 DD -> 1E63 0075 D7 DD -> 0073 0075 D8 DD -> 0068 0075 B3 E9 DD -> 0071 0075 B4 E9 DD -> 1E35 0068 0075 B5 E9 DD -> 0067 0068 0331 0075 BA E9 DD -> 007A 0075 BF E9 DD -> 0064 0302 0075 C0 E9 DD -> 0064 0302 0068 0075 C9 E9 DD -> 0066 0075 CE DD -> 1E8F 0075 A2 B3 DD -> 1e45 006B 0075 A2 B4 DD -> 1e45 006b 0068 0075 A2 B5 DD -> 1e45 0067 0075 A2 B6 DD -> 1e45 0067 0068 0075 A2 B8 DD -> 00F1 0063 0075 A2 B9 DD -> 00F1 0063 0068 0075 A2 BA DD -> 00F1 006A 0075 A2 BB DD -> 00F1 006A 0068 0075 A2 BD DD -> 0146 1E6D 0075 A2 BE DD -> 0146 1E6D 0068 0075 A2 BF DD -> 0146 1E0D 0075 A2 C0 DD -> 0146 1E0D 0068 0075 A2 C2 DD -> 006e 0074 0075 A2 C3 DD -> 006e 0074 0068 0075 A2 C4 DD -> 006e 0064 0075 A2 C5 DD -> 006e 0064 0068 0075 A2 C8 DD -> 006D 0070 0075 A2 C9 DD -> 006D 0070 0068 0075 A2 CA DD -> 006D 0062 0075 A2 CB DD -> 006D 0062 0068 0075 B3 DE -> 006B 016B #uuforms B4 DE -> 006b 0068 016B B5 DE -> 0067 016B B6 DE -> 0067 0068 016B B7 DE -> 1e45 016B B8 DE -> 0063 016B B9 DE -> 0063 0068 016B BA DE -> 006A 016B BB DE -> 006A 0068 016B BC DE -> 00F1 016B BD DE -> 1E6D 016B BE DE -> 1E6D 0068 016B BF DE -> 1E0D 016B C0 DE -> 1E0D 0068 016B C1 DE -> 0146 016B C2 DE -> 0074 016B C3 DE -> 0074 0068 016B C4 DE -> 0064 016B C5 DE -> 0064 0068 016B C6 DE -> 006e 016B C7 DE -> 1e49 016B C8 DE -> 0070 016B C9 DE -> 0070 0068 016B CA DE -> 0062 016B CB DE -> 0062 0068 016B CC DE -> 006D 016B CD DE -> 0079 016B CF DE -> 0072 016B D0 DE -> 1E5F 016B D1 DE -> 006C 016B D2 DE -> 1e39 016B D3 DE -> 017C 016B D4 DE -> 0076 016B D5 DE -> 015B 016B D6 DE -> 1E63 016B D7 DE -> 0073 016B D8 DE -> 0068 016B B3 E9 DE -> 0071 016B B4 E9 DE -> 1E35 0068 016B B5 E9 DE -> 0067 0068 0331 016B BA E9 DE -> 007A 016B BF E9 DE -> 0064 0302 016B C0 E9 DE -> 0064 0302 0068 016B C9 E9 DE -> 0066 016B CE DE -> 1E8F 016B A2 B3 E8 -> 1e45 006B 016B A2 B4 E8 -> 1e45 006b 0068 016B A2 B5 E8 -> 1e45 0067 016B A2 B6 E8 -> 1e45 0067 0068 016B A2 B8 E8 -> 00F1 0063 016B A2 B9 E8 -> 00F1 0063 0068 016B A2 BA E8 -> 00F1 006A 016B A2 BB E8 -> 00F1 006A 0068 016B A2 BD E8 -> 0146 1E6D 016B A2 BE E8 -> 0146 1E6D 0068 016B A2 BF E8 -> 0146 1E0D 016B A2 C0 E8 -> 0146 1E0D 0068 016B A2 C2 E8 -> 006e 0074 016B A2 C3 E8 -> 006e 0074 0068 016B A2 C4 E8 -> 006e 0064 016B A2 C5 E8 -> 006e 0064 0068 016B A2 C8 E8 -> 006D 0070 016B A2 C9 E8 -> 006D 0070 0068 016B A2 CA E8 -> 006D 0062 016B A2 CB E8 -> 006D 0062 0068 016B B3 DF -> 006B 1E5B #riforms B4 DF -> 006b 0068 1E5B B5 DF -> 0067 1E5B B6 DF -> 0067 0068 1E5B B7 DF -> 1e45 1E5B B8 DF -> 0063 1E5B B9 DF -> 0063 0068 1E5B BA DF -> 006A 1E5B BB DF -> 006A 0068 1E5B BC DF -> 00F1 1E5B BD DF -> 1E6D 1E5B BE DF -> 1E6D 0068 1E5B BF DF -> 1E0D 1E5B C0 DF -> 1E0D 0068 1E5B C1 DF -> 0146 1E5B C2 DF -> 0074 1E5B C3 DF -> 0074 0068 1E5B C4 DF -> 0064 1E5B C5 DF -> 0064 0068 1E5B C6 DF -> 006e 1E5B C7 DF -> 1e49 1E5B C8 DF -> 0070 1E5B C9 DF -> 0070 0068 1E5B CA DF -> 0062 1E5B CB DF -> 0062 0068 1E5B CC DF -> 006D 1E5B CD DF -> 0079 1E5B CF DF -> 0072 1E5B D0 DF -> 1E5F 1E5B D1 DF -> 006C 1E5B D2 DF -> 1e39 1E5B D3 DF -> 017C 1E5B D4 DF -> 0076 1E5B D5 DF -> 015B 1E5B D6 DF -> 1E63 1E5B D7 DF -> 0073 1E5B D8 DF -> 0068 1E5B B3 E9 DF -> 0071 1E5B B4 E9 DF -> 1E35 0068 1E5B B5 E9 DF -> 0067 0068 0331 1E5B BA E9 DF -> 007A 1E5B BF E9 DF -> 0064 0302 1E5B C0 E9 DF -> 0064 0302 0068 1E5B C9 E9 DF -> 0066 1E5B CE DF -> 1E8F 1E5B B3 E3 -> 006B 00EA #CandraEforms B4 E3 -> 006b 0068 00EA B5 E3 -> 0067 00EA B6 E3 -> 0067 0068 00EA B7 E3 -> 1e45 00EA B8 E3 -> 0063 00EA B9 E3 -> 0063 0068 00EA BA E3 -> 006A 00EA BB E3 -> 006A 0068 00EA BC E3 -> 00F1 00EA BD E3 -> 1E6D 00EA BE E3 -> 1E6D 0068 00EA BF E3 -> 1E0D 00EA C0 E3 -> 1E0D 0068 00EA C1 E3 -> 0146 00EA C2 E3 -> 0074 00EA C3 E3 -> 0074 0068 00EA C4 E3 -> 0064 00EA C5 E3 -> 0064 0068 00EA C6 E3 -> 006e 00EA C7 E3 -> 1e49 00EA C8 E3 -> 0070 00EA C9 E3 -> 0070 0068 00EA CA E3 -> 0062 00EA CB E3 -> 0062 0068 00EA CC E3 -> 006D 00EA CD E3 -> 0079 00EA CF E3 -> 0072 00EA D0 E3 -> 1E5F 00EA D1 E3 -> 006C 00EA D2 E3 -> 1e39 00EA D3 E3 -> 017C 00EA D4 E3 -> 0076 00EA D5 E3 -> 015B 00EA D6 E3 -> 1E63 00EA D7 E3 -> 0073 00EA D8 E3 -> 0068 00EA B3 E9 E3 -> 0071 00EA B4 E9 E3 -> 1E35 0068 00EA B5 E9 E3 -> 0067 0068 0331 00EA BA E9 E3 -> 007A 00EA BF E9 E3 -> 0064 0302 00EA C0 E9 E3 -> 0064 0302 0068 00EA C9 E9 E3 -> 0066 00EA CE -> 1E8F 00EA B3 E0 -> 006B 0065 #ShortEforms B4 E0 -> 006b 0068 0065 B5 E0 -> 0067 0065 B6 E0 -> 0067 0068 0065 B7 E0 -> 1e45 0065 B8 E0 -> 0063 0065 B9 E0 -> 0063 0068 0065 BA E0 -> 006A 0065 BB E0 -> 006A 0068 0065 BC E0 -> 00F1 0065 BD E0 -> 1E6D 0065 BE E0 -> 1E6D 0068 0065 BF E0 -> 1E0D 0065 C0 E0 -> 1E0D 0068 0065 C1 E0 -> 0146 0065 C2 E0 -> 0074 0065 C3 E0 -> 0074 0068 0065 C4 E0 -> 0064 0065 C5 E0 -> 0064 0068 0065 C6 E0 -> 006e 0065 C7 E0 -> 1e49 0065 C8 E0 -> 0070 0065 C9 E0 -> 0070 0068 0065 CA E0 -> 0062 0065 CB E0 -> 0062 0068 0065 CC E0 -> 006D 0065 CD E0 -> 0079 0065 CF E0 -> 0072 0065 D0 E0 -> 1E5F 0065 D1 E0 -> 006C 0065 D2 E0 -> 1e39 0065 D3 E0 -> 017C 0065 D4 E0 -> 0076 0065 D5 E0 -> 015B 0065 D6 E0 -> 1E63 0065 D7 E0 -> 0073 0065 D8 E0 -> 0068 0065 B3 E9 E0 -> 0071 0065 B4 E9 E0 -> 1E35 0068 0065 B5 E9 E0 -> 0067 0068 0331 0065 BA E9 E0 -> 007A 0065 BF E9 E0 -> 0064 0302 0065 C0 E9 E0 -> 0064 0302 0068 0065 C9 E9 E0 -> 0066 0065 CE E0 -> 1E8F 0065 B3 E1 -> 006B 0113 #Eforms B4 E1 -> 006b 0068 0113 B5 E1 -> 0067 0113 B6 E1 -> 0067 0068 0113 B7 E1 -> 1e45 0113 B8 E1 -> 0063 0113 B9 E1 -> 0063 0068 0113 BA E1 -> 006A 0113 BB E1 -> 006A 0068 0113 BC E1 -> 00F1 0113 BD E1 -> 1E6D 0113 BE E1 -> 1E6D 0068 0113 BF E1 -> 1E0D 0113 C0 E1 -> 1E0D 0068 0113 C1 E1 -> 0146 0113 C2 E1 -> 0074 0113 C3 E1 -> 0074 0068 0113 C4 E1 -> 0064 0113 C5 E1 -> 0064 0068 0113 C6 E1 -> 006e 0113 C7 E1 -> 1e49 0113 C8 E1 -> 0070 0113 C9 E1 -> 0070 0068 0113 CA E1 -> 0062 0113 CB E1 -> 0062 0068 0113 CC E1 -> 006D 0113 CD E1 -> 0079 0113 CF E1 -> 0072 0113 D0 E1 -> 1E5F 0113 D1 E1 -> 006C 0113 D2 E1 -> 1e39 0113 D3 E1 -> 017C 0113 D4 E1 -> 0076 0113 D5 E1 -> 015B 0113 D6 E1 -> 1E63 0113 D7 E1 -> 0073 0113 D8 E1 -> 0068 0113 B3 E9 E1 -> 0071 0113 B4 E9 E1 -> 1E35 0068 0113 B5 E9 E1 -> 0067 0068 0331 0113 BA E9 E1 -> 007A 0113 BF E9 E1 -> 0064 0302 0113 C0 E9 E1 -> 0064 0302 0068 0113 C9 E9 E1 -> 0066 0113 CE E1 -> 1E8F 0113 B3 E2 -> 006B 0061 0069 #Aiforms B4 E2 -> 006b 0068 0061 0069 B5 E2 -> 0067 0061 0069 B6 E2 -> 0067 0068 0061 0069 B7 E2 -> 1e45 0061 0069 B8 E2 -> 0063 0061 0069 B9 E2 -> 0063 0068 0061 0069 BA E2 -> 006A 0061 0069 BB E2 -> 006A 0068 0061 0069 BC E2 -> 00F1 0061 0069 BD E2 -> 1E6D 0061 0069 BE E2 -> 1E6D 0068 0061 0069 BF E2 -> 1E0D 0061 0069 C0 E2 -> 1E0D 0068 0061 0069 C1 E2 -> 0146 0061 0069 C2 E2 -> 0074 0061 0069 C3 E2 -> 0074 0068 0061 0069 C4 E2 -> 0064 0061 0069 C5 E2 -> 0064 0068 0061 0069 C6 E2 -> 006e 0061 0069 C7 E2 -> 1e49 0061 0069 C8 E2 -> 0070 0061 0069 C9 E2 -> 0070 0068 0061 0069 CA E2 -> 0062 0061 0069 CB E2 -> 0062 0068 0061 0069 CC E2 -> 006D 0061 0069 CD E2 -> 0079 0061 0069 CF E2 -> 0072 0061 0069 D0 E2 -> 1E5F 0061 0069 D1 E2 -> 006C 0061 0069 D2 E2 -> 1e39 0061 0069 D3 E2 -> 017C 0061 0069 D4 E2 -> 0076 0061 0069 D5 E2 -> 015B 0061 0069 D6 E2 -> 1E63 0061 0069 D7 E2 -> 0073 0061 0069 D8 E2 -> 0068 0061 0069 B3 E9 E2 -> 0071 0061 0069 B4 E9 E2 -> 1E35 0068 0061 0069 B5 E9 E2 -> 0067 0068 0331 0061 0069 BA E9 E2 -> 007A 0061 0069 BF E9 E2 -> 0064 0302 0061 0069 C0 E9 E2 -> 0064 0302 0068 0061 0069 C9 E9 E2 -> 0066 0061 0069 CE E2 -> 1E8F 0061 0069 B3 E7 -> 006B 00f4 #CandraOForms B4 E7 -> 006b 0068 00f4 B5 E7 -> 0067 00f4 B6 E7 -> 0067 0068 00f4 B7 E7 -> 1e45 00f4 B8 E7 -> 0063 00f4 B9 E7 -> 0063 0068 00f4 BA E7 -> 006A 00f4 BB E7 -> 006A 0068 00f4 BC E7 -> 00F1 00f4 BD E7 -> 1E6D 00f4 BE E7 -> 1E6D 0068 00f4 BF E7 -> 1E0D 00f4 C0 E7 -> 1E0D 0068 00f4 C1 E7 -> 0146 00f4 C2 E7 -> 0074 00f4 C3 E7 -> 0074 0068 00f4 C4 E7 -> 0064 00f4 C5 E7 -> 0064 0068 00f4 C6 E7 -> 006e 00f4 C7 E7 -> 1e49 00f4 C8 E7 -> 0070 00f4 C9 E7 -> 0070 0068 00f4 CA E7 -> 0062 00f4 CB E7 -> 0062 0068 00f4 CC E7 -> 006D 00f4 CD E7 -> 0079 00f4 CF E7 -> 0072 00f4 D0 E7 -> 1E5F 00f4 D1 E7 -> 006C 00f4 D2 E7 -> 1e39 00f4 D3 E7 -> 017C 00f4 D4 E7 -> 0076 00f4 D5 E7 -> 015B 00f4 D6 E7 -> 1E63 00f4 D7 E7 -> 0073 00f4 D8 E7 -> 0068 00f4 B3 E9 E7 -> 0071 00f4 B4 E9 E7 -> 1E35 0068 00f4 B5 E9 E7 -> 0067 0068 0331 00f4 BA E9 E7 -> 007A 00f4 BF E9 E7 -> 0064 0302 00f4 C0 E9 E7 -> 0064 0302 0068 00f4 C9 E9 E7 -> 0066 00f4 CE E7 -> 1E8F 00f4 B3 E4 -> 006B 006f #ShortOForms B4 E4 -> 006b 0068 006f B5 E4 -> 0067 006f B6 E4 -> 0067 0068 006f B7 E4 -> 1e45 006f B8 E4 -> 0063 006f B9 E4 -> 0063 0068 006f BA E4 -> 006A 006f BB E4 -> 006A 0068 006f BC E4 -> 00F1 006f BD E4 -> 1E6D 006f BE E4 -> 1E6D 0068 006f BF E4 -> 1E0D 006f C0 E4 -> 1E0D 0068 006f C1 E4 -> 0146 006f C2 E4 -> 0074 006f C3 E4 -> 0074 0068 006f C4 E4 -> 0064 006f C5 E4 -> 0064 0068 006f C6 E4 -> 006e 006f C7 E4 -> 1e49 006f C8 E4 -> 0070 006f C9 E4 -> 0070 0068 006f CA E4 -> 0062 006f CB E4 -> 0062 0068 006f CC E4 -> 006D 006f CD E4 -> 0079 006f CF E4 -> 0072 006f D0 E4 -> 1E5F 006f D1 E4 -> 006C 006f D2 E4 -> 1e39 006f D3 E4 -> 017C 006f D4 E4 -> 0076 006f D5 E4 -> 015B 006f D6 E4 -> 1E63 006f D7 E4 -> 0073 006f D8 E4 -> 0068 006f B3 E9 E4 -> 0071 006f B4 E9 E4 -> 1E35 0068 006f B5 E9 E4 -> 0067 0068 0331 006f BA E9 E4 -> 007A 006f BF E9 E4 -> 0064 0302 006f C0 E9 E4 -> 0064 0302 0068 006f C9 E9 E4 -> 0066 006f CE E4 -> 1E8F 006f B3 E5 -> 006B 014d #Oforms B4 E5 -> 006b 0068 014d B5 E5 -> 0067 014d B6 E5 -> 0067 0068 014d B7 E5 -> 1e45 014d B8 E5 -> 0063 014d B9 E5 -> 0063 0068 014d BA E5 -> 006A 014d BB E5 -> 006A 0068 014d BC E5 -> 00F1 014d BD E5 -> 1E6D 014d BE E5 -> 1E6D 0068 014d BF E5 -> 1E0D 014d C0 E5 -> 1E0D 0068 014d C1 E5 -> 0146 014d C2 E5 -> 0074 014d C3 E5 -> 0074 0068 014d C4 E5 -> 0064 014d C5 E5 -> 0064 0068 014d C6 E5 -> 006e 014d C7 E5 -> 1e49 014d C8 E5 -> 0070 014d C9 E5 -> 0070 0068 014d CA E5 -> 0062 014d CB E5 -> 0062 0068 014d CC E5 -> 006D 014d CD E5 -> 0079 014d CF E5 -> 0072 014d D0 E5 -> 1E5F 014d D1 E5 -> 006C 014d D2 E5 -> 1e39 014d D3 E5 -> 017C 014d D4 E5 -> 0076 014d D5 E5 -> 015B 014d D6 E5 -> 1E63 014d D7 E5 -> 0073 014d D8 E5 -> 0068 014d B3 E9 E5 -> 0071 014d B4 E9 E5 -> 1E35 0068 014d B5 E9 E5 -> 0067 0068 0331 014d BA E9 E5 -> 007A 014d BF E9 E5 -> 0064 0302 014d C0 E9 E5 -> 0064 0302 0068 014d C9 E9 E5 -> 0066 014d CE E5 -> 1E8F 014d B3 E6 -> 006B 0061 0075 #auforms B4 E6 -> 006b 0068 0061 0075 B5 E6 -> 0067 0061 0075 B6 E6 -> 0067 0068 0061 0075 B7 E6 -> 1e45 0061 0075 B8 E6 -> 0063 0061 0075 B9 E6 -> 0063 0068 0061 0075 BA E6 -> 006A 0061 0075 BB E6 -> 006A 0068 0061 0075 BC E6 -> 00F1 0061 0075 BD E6 -> 1E6D 0061 0075 BE E6 -> 1E6D 0068 0061 0075 BF E6 -> 1E0D 0061 0075 C0 E6 -> 1E0D 0068 0061 0075 C1 E6 -> 0146 0061 0075 C2 E6 -> 0074 0061 0075 C3 E6 -> 0074 0068 0061 0075 C4 E6 -> 0064 0061 0075 C5 E6 -> 0064 0068 0061 0075 C6 E6 -> 006e 0061 0075 C7 E6 -> 1e49 0061 0075 C8 E6 -> 0070 0061 0075 C9 E6 -> 0070 0068 0061 0075 CA E6 -> 0062 0061 0075 CB E6 -> 0062 0068 0061 0075 CC E6 -> 006D 0061 0075 CD E6 -> 0079 0061 0075 CF E6 -> 0072 0061 0075 D0 E6 -> 1E5F 0061 0075 D1 E6 -> 006C 0061 0075 D2 E6 -> 1e39 0061 0075 D3 E6 -> 017C 0061 0075 D4 E6 -> 0076 0061 0075 D5 E6 -> 015B 0061 0075 D6 E6 -> 1E63 0061 0075 D7 E6 -> 0073 0061 0075 D8 E6 -> 0068 0061 0075 B3 E9 E6 -> 0071 0061 0075 B4 E9 E6 -> 1E35 0068 0061 0075 B5 E9 E6 -> 0067 0068 0331 0061 0075 BA E9 E6 -> 007A 0061 0075 BF E9 E6 -> 0064 0302 0061 0075 C0 E9 E6 -> 0064 0302 0068 0061 0075 C9 E9 E6 -> 0066 0061 0075 CE E6 -> 1E8F 0061 0075 COMM=END OF ISCII-RM ./mytool/mys/tscii.mys0000644000175000017500000001510407574146574015061 0ustar henrichhenrichNAME=tscii.my COMM=Map Yudit cluster id to a TSCII glyph. COMM=auto generated by Tamil.tscii.pl TYPE=0 SECTION=encode ENCODE=1 # KEY_WIDTH == 2 for 32 bit key KEY_WIDTH=2 VALUE_WIDTH=1 KEY_LENGTH=0 VALUE_LENGTH=0 COMM=begin tamil clusters COMM=uyir, akara meys 80060000 -> 00ab 80060001 -> 00ac 80060002 -> 00ad 80060003 -> 00ae 80060004 -> 00af 80060005 -> 00b0 80060006 -> 00b1 80060007 -> 00b2 80060008 -> 00b3 80060009 -> 00b4 8006000a -> 00b5 8006000b -> 00b6 8006000c -> 00b7 8006000d -> 00b8 8006000e -> 00b9 8006000f -> 00ba 80060010 -> 0192 80060011 -> 00bb 80060012 -> 00bc 80060013 -> 00bd 80060014 -> 00be 80060015 -> 00bf 80060016 -> 00c9 80060017 -> 00c0 80060018 -> 00c1 80060019 -> 00c2 8006001a -> 00c3 8006001b -> 00c8 8006001c -> 00c4 8006001d -> 00c7 8006001e -> 00c6 8006001f -> 00c5 80060020 -> 201e 80060021 -> 2026 80060022 -> 2020 80060023 -> 00b8 00a1 80060024 -> 00b9 00a1 80060025 -> 00ba 00a1 80060026 -> 0192 00a1 80060027 -> 00bb 00a1 80060028 -> 00bc 00a1 80060029 -> 00bd 00a1 8006002a -> 00be 00a1 8006002b -> 00bf 00a1 8006002c -> 00c9 00a1 8006002d -> 00c0 00a1 8006002e -> 00c1 00a1 8006002f -> 00c2 00a1 80060030 -> 00c3 00a1 80060031 -> 00c8 00a1 80060032 -> 00c4 00a1 80060033 -> 00c7 00a1 80060034 -> 00c6 00a1 80060035 -> 00c5 00a1 80060036 -> 201e 00a1 80060037 -> 2026 00a1 80060038 -> 2020 00a1 COMM=meys 8006f000 -> 00ec 8006f001 -> 00ed 8006f002 -> 00ee 8006f003 -> 02c6 8006f004 -> 00ef 8006f005 -> 00f0 8006f006 -> 00f1 8006f007 -> 00f2 8006f008 -> 00f3 8006f009 -> 00fd 8006f00a -> 00f4 8006f00b -> 00f5 8006f00c -> 00f6 8006f00d -> 00f7 8006f00e -> 00fc 8006f00f -> 00f8 8006f010 -> 00fb 8006f011 -> 00fa 8006f012 -> 00f9 8006f013 -> 2030 8006f014 -> 0160 8006f015 -> 2039 COMM=uyir-meys 8006d000 -> 00b8 00a2 8006d001 -> 00b8 00a3 8006d002 -> 00cc 8006d003 -> 00dc 8006e000 -> 00a6 00b8 8006e001 -> 00a7 00b8 8006e002 -> 00a8 00b8 8006e003 -> 00a6 00b8 00a1 8006e004 -> 00a7 00b8 00a1 8006e005 -> 00a6 00b8 00aa 8006d004 -> 00b9 00a2 8006d005 -> 00b9 00a3 8006d006 -> 2122 8006d007 -> 203a 8006e006 -> 00a6 00b9 8006e007 -> 00a7 00b9 8006e008 -> 00a8 00b9 8006e009 -> 00a6 00b9 00a1 8006e00a -> 00a7 00b9 00a1 8006e00b -> 00a6 00b9 00aa 8006d008 -> 00ba 00a2 8006d009 -> 00ba 00a3 8006d00a -> 00cd 8006d00b -> 00dd 8006e00c -> 00a6 00ba 8006e00d -> 00a7 00ba 8006e00e -> 00a8 00ba 8006e00f -> 00a6 00ba 00a1 8006e010 -> 00a7 00ba 00a1 8006e011 -> 00a6 00ba 00aa 8006d00c -> 0192 00a2 8006d00d -> 0192 00a3 8006d00e -> 0192 00a4 8006d00f -> 0192 00a5 8006e012 -> 00a6 0192 8006e013 -> 00a7 0192 8006e014 -> 00a8 0192 8006e015 -> 00a6 0192 00a1 8006e016 -> 00a7 0192 00a1 8006e017 -> 00a6 0192 00aa 8006d010 -> 00bb 00a2 8006d011 -> 00bb 00a3 8006d012 -> 0161 8006d013 -> 0153 8006e018 -> 00a6 00bb 8006e019 -> 00a7 00bb 8006e01a -> 00a8 00bb 8006e01b -> 00a6 00bb 00a1 8006e01c -> 00a7 00bb 00a1 8006e01d -> 00a6 00bb 00aa 8006d014 -> 00ca 8006d015 -> 00cb 8006d016 -> 00ce 8006d017 -> 00de 8006e01e -> 00a6 00bc 8006e01f -> 00a7 00bc 8006e020 -> 00a8 00bc 8006e021 -> 00a6 00bc 00a1 8006e022 -> 00a7 00bc 00a1 8006e023 -> 00a6 00bc 00aa 8006d018 -> 00bd 00a2 8006d019 -> 00bd 00a3 8006d01a -> 00cf 8006d01b -> 00df 8006e024 -> 00a6 00bd 8006e025 -> 00a7 00bd 8006e026 -> 00a8 00bd 8006e027 -> 00a6 00bd 00a1 8006e028 -> 00a7 00bd 00a1 8006e029 -> 00a6 00bd 00aa 8006d01c -> 00be 00a2 8006d01d -> 00be 00a3 8006d01e -> 00d0 8006d01f -> 00e0 8006e02a -> 00a6 00be 8006e02b -> 00a7 00be 8006e02c -> 00a8 00be 8006e02d -> 00a6 00be 00a1 8006e02e -> 00a7 00be 00a1 8006e02f -> 00a6 00be 00aa 8006d020 -> 00bf 00a2 8006d021 -> 00bf 00a3 8006d022 -> 00d1 8006d023 -> 00e1 8006e030 -> 00a6 00bf 8006e031 -> 00a7 00bf 8006e032 -> 00a8 00bf 8006e033 -> 00a6 00bf 00a1 8006e034 -> 00a7 00bf 00a1 8006e035 -> 00a6 00bf 00aa 8006d024 -> 00c9 00a2 8006d025 -> 00c9 00a3 8006d026 -> 00db 8006d027 -> 00eb 8006e036 -> 00a6 00c9 8006e037 -> 00a7 00c9 8006e038 -> 00a8 00c9 8006e039 -> 00a6 00c9 00a1 8006e03a -> 00a7 00c9 00a1 8006e03b -> 00a6 00c9 00aa 8006d028 -> 00c0 00a2 8006d029 -> 00c0 00a3 8006d02a -> 00d2 8006d02b -> 00e2 8006e03c -> 00a6 00c0 8006e03d -> 00a7 00c0 8006e03e -> 00a8 00c0 8006e03f -> 00a6 00c0 00a1 8006e040 -> 00a7 00c0 00a1 8006e041 -> 00a6 00c0 00aa 8006d02c -> 00c1 00a2 8006d02d -> 00c1 00a3 8006d02e -> 00d3 8006d02f -> 00e3 8006e042 -> 00a6 00c1 8006e043 -> 00a7 00c1 8006e044 -> 00a8 00c1 8006e045 -> 00a6 00c1 00a1 8006e046 -> 00a7 00c1 00a1 8006e047 -> 00a6 00c1 00aa 8006d030 -> 00c2 00a2 8006d031 -> 00c2 00a3 8006d032 -> 00d4 8006d033 -> 00e4 8006e048 -> 00a6 00c2 8006e049 -> 00a7 00c2 8006e04a -> 00a8 00c2 8006e04b -> 00a6 00c2 00a1 8006e04c -> 00a7 00c2 00a1 8006e04d -> 00a6 00c2 00aa 8006d034 -> 00c3 00a2 8006d035 -> 00c3 00a3 8006d036 -> 00d5 8006d037 -> 00e5 8006e04e -> 00a6 00c3 8006e04f -> 00a7 00c3 8006e050 -> 00a8 00c3 8006e051 -> 00a6 00c3 00a1 8006e052 -> 00a7 00c3 00a1 8006e053 -> 00a6 00c3 00aa 8006d038 -> 00c8 00a2 8006d039 -> 00c8 00a3 8006d03a -> 00da 8006d03b -> 00ea 8006e054 -> 00a6 00c8 8006e055 -> 00a7 00c8 8006e056 -> 00a8 00c8 8006e057 -> 00a6 00c8 00a1 8006e058 -> 00a7 00c8 00a1 8006e059 -> 00a6 00c8 00aa 8006d03c -> 00c4 00a2 8006d03d -> 00c4 00a3 8006d03e -> 00d6 8006d03f -> 00e6 8006e05a -> 00a6 00c4 8006e05b -> 00a7 00c4 8006e05c -> 00a8 00c4 8006e05d -> 00a6 00c4 00a1 8006e05e -> 00a7 00c4 00a1 8006e05f -> 00a6 00c4 00aa 8006d040 -> 00c7 00a2 8006d041 -> 00c7 00a3 8006d042 -> 00d9 8006d043 -> 00e9 8006e060 -> 00a6 00c7 8006e061 -> 00a7 00c7 8006e062 -> 00a8 00c7 8006e063 -> 00a6 00c7 00a1 8006e064 -> 00a7 00c7 00a1 8006e065 -> 00a6 00c7 00aa 8006d044 -> 00c6 00a2 8006d045 -> 00c6 00a3 8006d046 -> 00d8 8006d047 -> 00e8 8006e066 -> 00a6 00c6 8006e067 -> 00a7 00c6 8006e068 -> 00a8 00c6 8006e069 -> 00a6 00c6 00a1 8006e06a -> 00a7 00c6 00a1 8006e06b -> 00a6 00c6 00aa 8006d048 -> 00c5 00a2 8006d049 -> 00c5 00a3 8006d04a -> 00d7 8006d04b -> 00e7 8006e06c -> 00a6 00c5 8006e06d -> 00a7 00c5 8006e06e -> 00a8 00c5 8006e06f -> 00a6 00c5 00a1 8006e070 -> 00a7 00c5 00a1 8006e071 -> 00a6 00c5 00aa 8006d04c -> 201e 00a2 8006d04d -> 201e 00a3 8006d04e -> 201e 00a4 8006d04f -> 201e 00a5 8006e072 -> 00a6 201e 8006e073 -> 00a7 201e 8006e074 -> 00a8 201e 8006e075 -> 00a6 201e 00a1 8006e076 -> 00a7 201e 00a1 8006e077 -> 00a6 201e 00aa 8006d050 -> 2026 00a2 8006d051 -> 2026 00a3 8006d052 -> 00a4 8006d053 -> 00a5 8006e078 -> 00a6 2026 8006e079 -> 00a7 2026 8006e07a -> 00a8 2026 8006e07b -> 00a6 2026 00a1 8006e07c -> 00a7 2026 00a1 8006e07d -> 00a6 2026 00aa 8006d054 -> 2020 00a2 8006d055 -> 2020 00a3 8006d056 -> 2020 00a4 8006d057 -> 2020 00a5 8006e07e -> 00a6 2020 8006e07f -> 00a7 2020 8006e080 -> 00a8 2020 8006e081 -> 00a6 2020 00a1 8006e082 -> 00a7 2020 00a1 8006e083 -> 00a6 2020 00aa COMM=end tamil ./mytool/mys/cluster.mys0000644000175000017500000003356107574146574015436 0ustar henrichhenrichNAME=cluster.my COMM=autogenerated clusters fron unicode -> display cluster TYPE=0 SECTION=cluster ENCODE=0 KEY_WIDTH=1 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # # Test - ligatures are defined on top of clusters. # Remove this from production release. # # Ligature # #0041 0042 -> 00000041 00000042 80000001 # # Just a cluster # #0043 0044 -> 00000043 00000044 # ------------------ Yudit Ligatures ------------------------------- # Yudit ligatures below 0x80008000 are considered hacked glyphs only # Y+0001 MODIFIER LETTER EXTRA-HIGH TONE BAR # Y+0002 MODIFIER LETTER HIGH TONE BAR # Y+0003 MODIFIER LETTER MID TONE BAR # Y+0004 MODIFIER LETTER LOW TONE BAR # Y+0005 MODIFIER LETTER EXTRA-LOW TONE BAR # Y+0010 RISING LETTER # Y+0011 FALLING LETTER 02E9 02E5 -> 000002E9 000002E5 80000010 02E5 02E9 -> 000002E5 000002E9 80000011 # Generated by ./jiscompose.pl at 2002-04-15 # Add this to bin/cluster/cluster.template # Usually clusters are non-composing. # Don't forget to hard-code 'Composing Clusters' to # swindow/SFont.cpp: MARK Composing Cluster. (2 places) # 309A 0300 0301 are already added. 304B 309A -> 0000304B 0000309A 80000040 304D 309A -> 0000304D 0000309A 80000041 304F 309A -> 0000304F 0000309A 80000042 3051 309A -> 00003051 0000309A 80000043 3053 309A -> 00003053 0000309A 80000044 30AB 309A -> 000030AB 0000309A 80000045 30AD 309A -> 000030AD 0000309A 80000046 30AF 309A -> 000030AF 0000309A 80000047 30B1 309A -> 000030B1 0000309A 80000048 30B3 309A -> 000030B3 0000309A 80000049 30BB 309A -> 000030BB 0000309A 8000004A 30C4 309A -> 000030C4 0000309A 8000004B 30C8 309A -> 000030C8 0000309A 8000004C 31F7 309A -> 000031F7 0000309A 8000004D 00E6 0300 -> 000000E6 00000300 8000004E 0254 0300 -> 00000254 00000300 8000004F 0254 0301 -> 00000254 00000301 80000050 028C 0300 -> 0000028C 00000300 80000051 028C 0301 -> 0000028C 00000301 80000052 0259 0300 -> 00000259 00000300 80000053 0259 0301 -> 00000259 00000301 80000054 025A 0300 -> 0000025A 00000300 80000055 025A 0301 -> 0000025A 00000301 80000056 # END OF ./jiscompose.pl COMM=begin tamil clusters COMM=autogenerated by Tamil.cluster.pl 0b85 -> 00000b85 80060000 0b86 -> 00000b86 80060001 0b87 -> 00000b87 80060002 0b88 -> 00000b88 80060003 0b89 -> 00000b89 80060004 0b8a -> 00000b8a 80060005 0b8e -> 00000b8e 80060006 0b8f -> 00000b8f 80060007 0b90 -> 00000b90 80060008 0b92 -> 00000b92 80060009 0b93 -> 00000b93 8006000a 0b94 -> 00000b94 8006000b 0b83 -> 00000b83 8006000c 0b95 -> 00000b95 8006000d 0b99 -> 00000b99 8006000e 0b9a -> 00000b9a 8006000f 0b9c -> 00000b9c 80060010 0b9e -> 00000b9e 80060011 0b9f -> 00000b9f 80060012 0ba3 -> 00000ba3 80060013 0ba4 -> 00000ba4 80060014 0ba8 -> 00000ba8 80060015 0ba9 -> 00000ba9 80060016 0baa -> 00000baa 80060017 0bae -> 00000bae 80060018 0baf -> 00000baf 80060019 0bb0 -> 00000bb0 8006001a 0bb1 -> 00000bb1 8006001b 0bb2 -> 00000bb2 8006001c 0bb3 -> 00000bb3 8006001d 0bb4 -> 00000bb4 8006001e 0bb5 -> 00000bb5 8006001f 0bb7 -> 00000bb7 80060020 0bb8 -> 00000bb8 80060021 0bb9 -> 00000bb9 80060022 0b95 0bbe -> 00000b95 00000bbe 80060023 0b99 0bbe -> 00000b99 00000bbe 80060024 0b9a 0bbe -> 00000b9a 00000bbe 80060025 0b9c 0bbe -> 00000b9c 00000bbe 80060026 0b9e 0bbe -> 00000b9e 00000bbe 80060027 0b9f 0bbe -> 00000b9f 00000bbe 80060028 0ba3 0bbe -> 00000ba3 00000bbe 80060029 0ba4 0bbe -> 00000ba4 00000bbe 8006002a 0ba8 0bbe -> 00000ba8 00000bbe 8006002b 0ba9 0bbe -> 00000ba9 00000bbe 8006002c 0baa 0bbe -> 00000baa 00000bbe 8006002d 0bae 0bbe -> 00000bae 00000bbe 8006002e 0baf 0bbe -> 00000baf 00000bbe 8006002f 0bb0 0bbe -> 00000bb0 00000bbe 80060030 0bb1 0bbe -> 00000bb1 00000bbe 80060031 0bb2 0bbe -> 00000bb2 00000bbe 80060032 0bb3 0bbe -> 00000bb3 00000bbe 80060033 0bb4 0bbe -> 00000bb4 00000bbe 80060034 0bb5 0bbe -> 00000bb5 00000bbe 80060035 0bb7 0bbe -> 00000bb7 00000bbe 80060036 0bb8 0bbe -> 00000bb8 00000bbe 80060037 0bb9 0bbe -> 00000bb9 00000bbe 80060038 0b95 0bcd -> 00000b95 00000bcd 8006f000 0b95 0bbf -> 00000b95 00000bbf 8006d000 0b95 0bc0 -> 00000b95 00000bc0 8006d001 0b95 0bc1 -> 00000b95 00000bc1 8006d002 0b95 0bc2 -> 00000b95 00000bc2 8006d003 0b95 0bc6 -> 00000bc6 00000b95 8006e000 0b95 0bc7 -> 00000bc7 00000b95 8006e001 0b95 0bc8 -> 00000bc8 00000b95 8006e002 0b95 0bca -> 00000bc6 00000b95 00000bbe 8006e003 0b95 0bcb -> 00000bc7 00000b95 00000bbe 8006e004 0b95 0bcc -> 00000bc6 00000b95 00000bd7 8006e005 0b99 0bcd -> 00000b99 00000bcd 8006f001 0b99 0bbf -> 00000b99 00000bbf 8006d004 0b99 0bc0 -> 00000b99 00000bc0 8006d005 0b99 0bc1 -> 00000b99 00000bc1 8006d006 0b99 0bc2 -> 00000b99 00000bc2 8006d007 0b99 0bc6 -> 00000bc6 00000b99 8006e006 0b99 0bc7 -> 00000bc7 00000b99 8006e007 0b99 0bc8 -> 00000bc8 00000b99 8006e008 0b99 0bca -> 00000bc6 00000b99 00000bbe 8006e009 0b99 0bcb -> 00000bc7 00000b99 00000bbe 8006e00a 0b99 0bcc -> 00000bc6 00000b99 00000bd7 8006e00b 0b9a 0bcd -> 00000b9a 00000bcd 8006f002 0b9a 0bbf -> 00000b9a 00000bbf 8006d008 0b9a 0bc0 -> 00000b9a 00000bc0 8006d009 0b9a 0bc1 -> 00000b9a 00000bc1 8006d00a 0b9a 0bc2 -> 00000b9a 00000bc2 8006d00b 0b9a 0bc6 -> 00000bc6 00000b9a 8006e00c 0b9a 0bc7 -> 00000bc7 00000b9a 8006e00d 0b9a 0bc8 -> 00000bc8 00000b9a 8006e00e 0b9a 0bca -> 00000bc6 00000b9a 00000bbe 8006e00f 0b9a 0bcb -> 00000bc7 00000b9a 00000bbe 8006e010 0b9a 0bcc -> 00000bc6 00000b9a 00000bd7 8006e011 0b9c 0bcd -> 00000b9c 00000bcd 8006f003 0b9c 0bbf -> 00000b9c 00000bbf 8006d00c 0b9c 0bc0 -> 00000b9c 00000bc0 8006d00d 0b9c 0bc1 -> 00000b9c 00000bc1 8006d00e 0b9c 0bc2 -> 00000b9c 00000bc2 8006d00f 0b9c 0bc6 -> 00000bc6 00000b9c 8006e012 0b9c 0bc7 -> 00000bc7 00000b9c 8006e013 0b9c 0bc8 -> 00000bc8 00000b9c 8006e014 0b9c 0bca -> 00000bc6 00000b9c 00000bbe 8006e015 0b9c 0bcb -> 00000bc7 00000b9c 00000bbe 8006e016 0b9c 0bcc -> 00000bc6 00000b9c 00000bd7 8006e017 0b9e 0bcd -> 00000b9e 00000bcd 8006f004 0b9e 0bbf -> 00000b9e 00000bbf 8006d010 0b9e 0bc0 -> 00000b9e 00000bc0 8006d011 0b9e 0bc1 -> 00000b9e 00000bc1 8006d012 0b9e 0bc2 -> 00000b9e 00000bc2 8006d013 0b9e 0bc6 -> 00000bc6 00000b9e 8006e018 0b9e 0bc7 -> 00000bc7 00000b9e 8006e019 0b9e 0bc8 -> 00000bc8 00000b9e 8006e01a 0b9e 0bca -> 00000bc6 00000b9e 00000bbe 8006e01b 0b9e 0bcb -> 00000bc7 00000b9e 00000bbe 8006e01c 0b9e 0bcc -> 00000bc6 00000b9e 00000bd7 8006e01d 0b9f 0bcd -> 00000b9f 00000bcd 8006f005 0b9f 0bbf -> 00000b9f 00000bbf 8006d014 0b9f 0bc0 -> 00000b9f 00000bc0 8006d015 0b9f 0bc1 -> 00000b9f 00000bc1 8006d016 0b9f 0bc2 -> 00000b9f 00000bc2 8006d017 0b9f 0bc6 -> 00000bc6 00000b9f 8006e01e 0b9f 0bc7 -> 00000bc7 00000b9f 8006e01f 0b9f 0bc8 -> 00000bc8 00000b9f 8006e020 0b9f 0bca -> 00000bc6 00000b9f 00000bbe 8006e021 0b9f 0bcb -> 00000bc7 00000b9f 00000bbe 8006e022 0b9f 0bcc -> 00000bc6 00000b9f 00000bd7 8006e023 0ba3 0bcd -> 00000ba3 00000bcd 8006f006 0ba3 0bbf -> 00000ba3 00000bbf 8006d018 0ba3 0bc0 -> 00000ba3 00000bc0 8006d019 0ba3 0bc1 -> 00000ba3 00000bc1 8006d01a 0ba3 0bc2 -> 00000ba3 00000bc2 8006d01b 0ba3 0bc6 -> 00000bc6 00000ba3 8006e024 0ba3 0bc7 -> 00000bc7 00000ba3 8006e025 0ba3 0bc8 -> 00000bc8 00000ba3 8006e026 0ba3 0bca -> 00000bc6 00000ba3 00000bbe 8006e027 0ba3 0bcb -> 00000bc7 00000ba3 00000bbe 8006e028 0ba3 0bcc -> 00000bc6 00000ba3 00000bd7 8006e029 0ba4 0bcd -> 00000ba4 00000bcd 8006f007 0ba4 0bbf -> 00000ba4 00000bbf 8006d01c 0ba4 0bc0 -> 00000ba4 00000bc0 8006d01d 0ba4 0bc1 -> 00000ba4 00000bc1 8006d01e 0ba4 0bc2 -> 00000ba4 00000bc2 8006d01f 0ba4 0bc6 -> 00000bc6 00000ba4 8006e02a 0ba4 0bc7 -> 00000bc7 00000ba4 8006e02b 0ba4 0bc8 -> 00000bc8 00000ba4 8006e02c 0ba4 0bca -> 00000bc6 00000ba4 00000bbe 8006e02d 0ba4 0bcb -> 00000bc7 00000ba4 00000bbe 8006e02e 0ba4 0bcc -> 00000bc6 00000ba4 00000bd7 8006e02f 0ba8 0bcd -> 00000ba8 00000bcd 8006f008 0ba8 0bbf -> 00000ba8 00000bbf 8006d020 0ba8 0bc0 -> 00000ba8 00000bc0 8006d021 0ba8 0bc1 -> 00000ba8 00000bc1 8006d022 0ba8 0bc2 -> 00000ba8 00000bc2 8006d023 0ba8 0bc6 -> 00000bc6 00000ba8 8006e030 0ba8 0bc7 -> 00000bc7 00000ba8 8006e031 0ba8 0bc8 -> 00000bc8 00000ba8 8006e032 0ba8 0bca -> 00000bc6 00000ba8 00000bbe 8006e033 0ba8 0bcb -> 00000bc7 00000ba8 00000bbe 8006e034 0ba8 0bcc -> 00000bc6 00000ba8 00000bd7 8006e035 0ba9 0bcd -> 00000ba9 00000bcd 8006f009 0ba9 0bbf -> 00000ba9 00000bbf 8006d024 0ba9 0bc0 -> 00000ba9 00000bc0 8006d025 0ba9 0bc1 -> 00000ba9 00000bc1 8006d026 0ba9 0bc2 -> 00000ba9 00000bc2 8006d027 0ba9 0bc6 -> 00000bc6 00000ba9 8006e036 0ba9 0bc7 -> 00000bc7 00000ba9 8006e037 0ba9 0bc8 -> 00000bc8 00000ba9 8006e038 0ba9 0bca -> 00000bc6 00000ba9 00000bbe 8006e039 0ba9 0bcb -> 00000bc7 00000ba9 00000bbe 8006e03a 0ba9 0bcc -> 00000bc6 00000ba9 00000bd7 8006e03b 0baa 0bcd -> 00000baa 00000bcd 8006f00a 0baa 0bbf -> 00000baa 00000bbf 8006d028 0baa 0bc0 -> 00000baa 00000bc0 8006d029 0baa 0bc1 -> 00000baa 00000bc1 8006d02a 0baa 0bc2 -> 00000baa 00000bc2 8006d02b 0baa 0bc6 -> 00000bc6 00000baa 8006e03c 0baa 0bc7 -> 00000bc7 00000baa 8006e03d 0baa 0bc8 -> 00000bc8 00000baa 8006e03e 0baa 0bca -> 00000bc6 00000baa 00000bbe 8006e03f 0baa 0bcb -> 00000bc7 00000baa 00000bbe 8006e040 0baa 0bcc -> 00000bc6 00000baa 00000bd7 8006e041 0bae 0bcd -> 00000bae 00000bcd 8006f00b 0bae 0bbf -> 00000bae 00000bbf 8006d02c 0bae 0bc0 -> 00000bae 00000bc0 8006d02d 0bae 0bc1 -> 00000bae 00000bc1 8006d02e 0bae 0bc2 -> 00000bae 00000bc2 8006d02f 0bae 0bc6 -> 00000bc6 00000bae 8006e042 0bae 0bc7 -> 00000bc7 00000bae 8006e043 0bae 0bc8 -> 00000bc8 00000bae 8006e044 0bae 0bca -> 00000bc6 00000bae 00000bbe 8006e045 0bae 0bcb -> 00000bc7 00000bae 00000bbe 8006e046 0bae 0bcc -> 00000bc6 00000bae 00000bd7 8006e047 0baf 0bcd -> 00000baf 00000bcd 8006f00c 0baf 0bbf -> 00000baf 00000bbf 8006d030 0baf 0bc0 -> 00000baf 00000bc0 8006d031 0baf 0bc1 -> 00000baf 00000bc1 8006d032 0baf 0bc2 -> 00000baf 00000bc2 8006d033 0baf 0bc6 -> 00000bc6 00000baf 8006e048 0baf 0bc7 -> 00000bc7 00000baf 8006e049 0baf 0bc8 -> 00000bc8 00000baf 8006e04a 0baf 0bca -> 00000bc6 00000baf 00000bbe 8006e04b 0baf 0bcb -> 00000bc7 00000baf 00000bbe 8006e04c 0baf 0bcc -> 00000bc6 00000baf 00000bd7 8006e04d 0bb0 0bcd -> 00000bb0 00000bcd 8006f00d 0bb0 0bbf -> 00000bb0 00000bbf 8006d034 0bb0 0bc0 -> 00000bb0 00000bc0 8006d035 0bb0 0bc1 -> 00000bb0 00000bc1 8006d036 0bb0 0bc2 -> 00000bb0 00000bc2 8006d037 0bb0 0bc6 -> 00000bc6 00000bb0 8006e04e 0bb0 0bc7 -> 00000bc7 00000bb0 8006e04f 0bb0 0bc8 -> 00000bc8 00000bb0 8006e050 0bb0 0bca -> 00000bc6 00000bb0 00000bbe 8006e051 0bb0 0bcb -> 00000bc7 00000bb0 00000bbe 8006e052 0bb0 0bcc -> 00000bc6 00000bb0 00000bd7 8006e053 0bb1 0bcd -> 00000bb1 00000bcd 8006f00e 0bb1 0bbf -> 00000bb1 00000bbf 8006d038 0bb1 0bc0 -> 00000bb1 00000bc0 8006d039 0bb1 0bc1 -> 00000bb1 00000bc1 8006d03a 0bb1 0bc2 -> 00000bb1 00000bc2 8006d03b 0bb1 0bc6 -> 00000bc6 00000bb1 8006e054 0bb1 0bc7 -> 00000bc7 00000bb1 8006e055 0bb1 0bc8 -> 00000bc8 00000bb1 8006e056 0bb1 0bca -> 00000bc6 00000bb1 00000bbe 8006e057 0bb1 0bcb -> 00000bc7 00000bb1 00000bbe 8006e058 0bb1 0bcc -> 00000bc6 00000bb1 00000bd7 8006e059 0bb2 0bcd -> 00000bb2 00000bcd 8006f00f 0bb2 0bbf -> 00000bb2 00000bbf 8006d03c 0bb2 0bc0 -> 00000bb2 00000bc0 8006d03d 0bb2 0bc1 -> 00000bb2 00000bc1 8006d03e 0bb2 0bc2 -> 00000bb2 00000bc2 8006d03f 0bb2 0bc6 -> 00000bc6 00000bb2 8006e05a 0bb2 0bc7 -> 00000bc7 00000bb2 8006e05b 0bb2 0bc8 -> 00000bc8 00000bb2 8006e05c 0bb2 0bca -> 00000bc6 00000bb2 00000bbe 8006e05d 0bb2 0bcb -> 00000bc7 00000bb2 00000bbe 8006e05e 0bb2 0bcc -> 00000bc6 00000bb2 00000bd7 8006e05f 0bb3 0bcd -> 00000bb3 00000bcd 8006f010 0bb3 0bbf -> 00000bb3 00000bbf 8006d040 0bb3 0bc0 -> 00000bb3 00000bc0 8006d041 0bb3 0bc1 -> 00000bb3 00000bc1 8006d042 0bb3 0bc2 -> 00000bb3 00000bc2 8006d043 0bb3 0bc6 -> 00000bc6 00000bb3 8006e060 0bb3 0bc7 -> 00000bc7 00000bb3 8006e061 0bb3 0bc8 -> 00000bc8 00000bb3 8006e062 0bb3 0bca -> 00000bc6 00000bb3 00000bbe 8006e063 0bb3 0bcb -> 00000bc7 00000bb3 00000bbe 8006e064 0bb3 0bcc -> 00000bc6 00000bb3 00000bd7 8006e065 0bb4 0bcd -> 00000bb4 00000bcd 8006f011 0bb4 0bbf -> 00000bb4 00000bbf 8006d044 0bb4 0bc0 -> 00000bb4 00000bc0 8006d045 0bb4 0bc1 -> 00000bb4 00000bc1 8006d046 0bb4 0bc2 -> 00000bb4 00000bc2 8006d047 0bb4 0bc6 -> 00000bc6 00000bb4 8006e066 0bb4 0bc7 -> 00000bc7 00000bb4 8006e067 0bb4 0bc8 -> 00000bc8 00000bb4 8006e068 0bb4 0bca -> 00000bc6 00000bb4 00000bbe 8006e069 0bb4 0bcb -> 00000bc7 00000bb4 00000bbe 8006e06a 0bb4 0bcc -> 00000bc6 00000bb4 00000bd7 8006e06b 0bb5 0bcd -> 00000bb5 00000bcd 8006f012 0bb5 0bbf -> 00000bb5 00000bbf 8006d048 0bb5 0bc0 -> 00000bb5 00000bc0 8006d049 0bb5 0bc1 -> 00000bb5 00000bc1 8006d04a 0bb5 0bc2 -> 00000bb5 00000bc2 8006d04b 0bb5 0bc6 -> 00000bc6 00000bb5 8006e06c 0bb5 0bc7 -> 00000bc7 00000bb5 8006e06d 0bb5 0bc8 -> 00000bc8 00000bb5 8006e06e 0bb5 0bca -> 00000bc6 00000bb5 00000bbe 8006e06f 0bb5 0bcb -> 00000bc7 00000bb5 00000bbe 8006e070 0bb5 0bcc -> 00000bc6 00000bb5 00000bd7 8006e071 0bb7 0bcd -> 00000bb7 00000bcd 8006f013 0bb7 0bbf -> 00000bb7 00000bbf 8006d04c 0bb7 0bc0 -> 00000bb7 00000bc0 8006d04d 0bb7 0bc1 -> 00000bb7 00000bc1 8006d04e 0bb7 0bc2 -> 00000bb7 00000bc2 8006d04f 0bb7 0bc6 -> 00000bc6 00000bb7 8006e072 0bb7 0bc7 -> 00000bc7 00000bb7 8006e073 0bb7 0bc8 -> 00000bc8 00000bb7 8006e074 0bb7 0bca -> 00000bc6 00000bb7 00000bbe 8006e075 0bb7 0bcb -> 00000bc7 00000bb7 00000bbe 8006e076 0bb7 0bcc -> 00000bc6 00000bb7 00000bd7 8006e077 0bb8 0bcd -> 00000bb8 00000bcd 8006f014 0bb8 0bbf -> 00000bb8 00000bbf 8006d050 0bb8 0bc0 -> 00000bb8 00000bc0 8006d051 0bb8 0bc1 -> 00000bb8 00000bc1 8006d052 0bb8 0bc2 -> 00000bb8 00000bc2 8006d053 0bb8 0bc6 -> 00000bc6 00000bb8 8006e078 0bb8 0bc7 -> 00000bc7 00000bb8 8006e079 0bb8 0bc8 -> 00000bc8 00000bb8 8006e07a 0bb8 0bca -> 00000bc6 00000bb8 00000bbe 8006e07b 0bb8 0bcb -> 00000bc7 00000bb8 00000bbe 8006e07c 0bb8 0bcc -> 00000bc6 00000bb8 00000bd7 8006e07d 0bb9 0bcd -> 00000bb9 00000bcd 8006f015 0bb9 0bbf -> 00000bb9 00000bbf 8006d054 0bb9 0bc0 -> 00000bb9 00000bc0 8006d055 0bb9 0bc1 -> 00000bb9 00000bc1 8006d056 0bb9 0bc2 -> 00000bb9 00000bc2 8006d057 0bb9 0bc6 -> 00000bc6 00000bb9 8006e07e 0bb9 0bc7 -> 00000bc7 00000bb9 8006e07f 0bb9 0bc8 -> 00000bc8 00000bb9 8006e080 0bb9 0bca -> 00000bc6 00000bb9 00000bbe 8006e081 0bb9 0bcb -> 00000bc7 00000bb9 00000bbe 8006e082 0bb9 0bcc -> 00000bc6 00000bb9 00000bd7 8006e083 COMM=end tamil ./mytool/mys/IS_AS.mys0000644000175000017500000000714607574146574014653 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-AS COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0981 A2 -> 0982 A3 -> 0983 A4 -> 0985 A5 -> 0986 A6 -> 0987 A7 -> 0988 A8 -> 0989 A9 -> 098A AA -> 098B A6 E9 -> 098C AE -> 098D AB -> 098E AC -> 098F AD -> 0990 B2 -> 0991 AF -> 0992 B0 -> 0993 B1 -> 0994 B3 -> 0995 B4 -> 0996 B5 -> 0997 B6 -> 0998 B7 -> 0999 B8 -> 099A B9 -> 099B BA -> 099C BB -> 099D BC -> 099E BD -> 099F BE -> 09A0 BF -> 09A1 C0 -> 09A2 C1 -> 09A3 C2 -> 09A4 C3 -> 09A5 C4 -> 09A6 C5 -> 09A7 C6 -> 09A8 C7 -> 09A9 C8 -> 09AA C9 -> 09AB CA -> 09AC CB -> 09AD CC -> 09AE CD -> 09AF CF -> 09F0 D0 -> 09B1 D1 -> 09B2 D2 -> 09B3 D3 -> 09B4 D4 -> 09F1 D5 -> 09B6 D6 -> 09B7 D7 -> 09B8 D8 -> 09B9 E9 -> 09BC EA E9 -> 09BD DA -> 09BE DB -> 09BF DC -> 09C0 DD -> 09C1 DE -> 09C2 DF -> 09C3 DF E9 -> 09C4 E3 -> 09C5 E0 -> 09C6 E1 -> 09C7 E2 -> 09C8 E7 -> 09C9 E4 -> 09CA E5 -> 09CB E6 -> 09CC E8 -> 09CD E8 E9 -> 09CD 200D E8 E8 -> 09CD 200C A1 E9 -> 09D0 B3 E9 -> 09D8 B4 E9 -> 09D9 B5 E9 -> 09DA BA E9 -> 09DB BF E9 -> 09DC C0 E9 -> 09DD C9 E9 -> 09DE CE -> 09DF AA E9 -> 09E0 A7 E9 -> 09E1 DB E9 -> 09E2 DC E9 -> 09E3 EA -> 0964 EA EA -> 0965 F1 -> 09E6 F2 -> 09E7 F3 -> 09E8 F4 -> 09E9 F5 -> 09EA F6 -> 09EB F7 -> 09EC F8 -> 09ED F9 -> 09EE FA -> 09EF COMM=end of encoding ./mytool/mys/IS_TL.mys0000644000175000017500000000715207574146574014664 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-TL COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0C01 A2 -> 0C02 A3 -> 0C03 A4 -> 0C05 A5 -> 0C06 A6 -> 0C07 A7 -> 0C08 A8 -> 0C09 A9 -> 0C0A AA -> 0C0B A6 E9 -> 0C0C AE -> 0C0D AB -> 0C0E AC -> 0C0F AD -> 0C10 B2 -> 0C11 AF -> 0C12 B0 -> 0C13 B1 -> 0C14 B3 -> 0C15 B4 -> 0C16 B5 -> 0C17 B6 -> 0C18 B7 -> 0C19 B8 -> 0C1A B9 -> 0C1B BA -> 0C1C BB -> 0C1D BC -> 0C1E BD -> 0C1F BE -> 0C20 BF -> 0C21 C0 -> 0C22 C1 -> 0C23 C2 -> 0C24 C3 -> 0C25 C4 -> 0C26 C5 -> 0C27 C6 -> 0C28 C7 -> 0C29 C8 -> 0C2A C9 -> 0C2B CA -> 0C2C CB -> 0C2D CC -> 0C2E CD -> 0C2F CF -> 0C30 D0 -> 0C31 D1 -> 0C32 D2 -> 0C33 D3 -> 0C34 D4 -> 0C35 D5 -> 0C36 D6 -> 0C37 D7 -> 0C38 D8 -> 0C39 E9 -> 0C3C EA E9 -> 0C3D DA -> 0C3E DB -> 0C3F DC -> 0C40 DD -> 0C41 DE -> 0C42 DF -> 0C43 DF E9 -> 0C44 E3 -> 0C45 E0 -> 0C46 E1 -> 0C47 E2 -> 0C48 E7 -> 0C49 E4 -> 0C4A E5 -> 0C4B E6 -> 0C4C E8 -> 0C4D E8 E8 -> 0C4D 200C E8 E9 -> 0C4D 200D A1 E9 -> 0C50 B3 E9 -> 0C58 B4 E9 -> 0C59 B5 E9 -> 0C5A BA E9 -> 0C5B BF E9 -> 0C5C C0 E9 -> 0C5D C9 E9 -> 0C5E CE -> 0C5F AA E9 -> 0C60 A7 E9 -> 0C61 DB E9 -> 0C62 DC E9 -> 0C63 EA -> 0C64 EA EA -> 0C65 F1 -> 0C66 F2 -> 0C67 F3 -> 0C68 F4 -> 0C69 F5 -> 0C6A F6 -> 0C6B F7 -> 0C6C F8 -> 0C6D F9 -> 0C6E FA -> 0C6F COMM=end of encoding ./mytool/mys/shape.mys0000644000175000017500000017113411326531434015033 0ustar henrichhenrich# # Auto-generated by ./shape.pl 2010-01-23 # Generated from http://www.unicode.org/Public/5.2.0/uc/UnicodeData.txt # map for Yudit. # This file does not contain ligatures - STextData needs to be changed # for that. # Gaspar Sinai # Miikka-Markus Alhonen # NAME=shape.my TYPE=0 COMM=ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt COMM=shapein -> isolated initial medial final COMM=Test A-> A i m f SECTION=shapeout ENCODE=1 KEY_WIDTH=2 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # 00000020 0000200D 0000064B -> 0000FE70 00000000 00000000 00000000 00000020 0000200D 0000064C -> 0000FE72 00000000 00000000 00000000 00000020 0000200D 0000064C 0000200D 00000651 -> 0000FC5E 00000000 00000000 00000000 00000020 0000200D 0000064D -> 0000FE74 00000000 00000000 00000000 00000020 0000200D 0000064D 0000200D 00000651 -> 0000FC5F 00000000 00000000 00000000 00000020 0000200D 0000064E -> 0000FE76 00000000 00000000 00000000 00000020 0000200D 0000064E 0000200D 00000651 -> 0000FC60 00000000 00000000 00000000 00000020 0000200D 0000064F -> 0000FE78 00000000 00000000 00000000 00000020 0000200D 0000064F 0000200D 00000651 -> 0000FC61 00000000 00000000 00000000 00000020 0000200D 00000650 -> 0000FE7A 00000000 00000000 00000000 00000020 0000200D 00000650 0000200D 00000651 -> 0000FC62 00000000 00000000 00000000 00000020 0000200D 00000651 -> 0000FE7C 00000000 00000000 00000000 00000020 0000200D 00000651 0000200D 00000670 -> 0000FC63 00000000 00000000 00000000 00000020 0000200D 00000652 -> 0000FE7E 00000000 00000000 00000000 00000621 -> 0000FE80 00000000 00000000 00000000 00000622 -> 0000FE81 00000000 00000000 0000FE82 00000623 -> 0000FE83 00000000 00000000 0000FE84 00000624 -> 0000FE85 00000000 00000000 0000FE86 00000625 -> 0000FE87 00000000 00000000 0000FE88 00000626 -> 0000FE89 0000FE8B 0000FE8C 0000FE8A 00000626 0000200D 00000627 -> 0000FBEA 00000000 00000000 0000FBEB 00000626 0000200D 0000062C -> 0000FC00 0000FC97 00000000 00000000 00000626 0000200D 0000062D -> 0000FC01 0000FC98 00000000 00000000 00000626 0000200D 0000062E -> 00000000 0000FC99 00000000 00000000 00000626 0000200D 00000631 -> 00000000 00000000 00000000 0000FC64 00000626 0000200D 00000632 -> 00000000 00000000 00000000 0000FC65 00000626 0000200D 00000645 -> 0000FC02 0000FC9A 0000FCDF 0000FC66 00000626 0000200D 00000646 -> 00000000 00000000 00000000 0000FC67 00000626 0000200D 00000647 -> 00000000 0000FC9B 0000FCE0 00000000 00000626 0000200D 00000648 -> 0000FBEE 00000000 00000000 0000FBEF 00000626 0000200D 00000649 -> 0000FC03 0000FBFB 00000000 0000FC68 00000626 0000200D 0000064A -> 0000FC04 00000000 00000000 0000FC69 00000626 0000200D 000006C6 -> 0000FBF2 00000000 00000000 0000FBF3 00000626 0000200D 000006C7 -> 0000FBF0 00000000 00000000 0000FBF1 00000626 0000200D 000006C8 -> 0000FBF4 00000000 00000000 0000FBF5 00000626 0000200D 000006D0 -> 0000FBF6 0000FBF8 00000000 0000FBF7 00000626 0000200D 000006D5 -> 0000FBEC 00000000 00000000 0000FBED 00000627 -> 0000FE8D 00000000 00000000 0000FE8E 00000627 0000200D 00000643 0000200D 00000628 0000200D 00000631 -> 0000FDF3 00000000 00000000 00000000 00000627 0000200D 00000644 0000200D 00000644 0000200D 00000647 -> 0000FDF2 00000000 00000000 00000000 00000627 0000200D 0000064B -> 0000FD3D 00000000 00000000 0000FD3C 00000628 -> 0000FE8F 0000FE91 0000FE92 0000FE90 00000628 0000200D 0000062C -> 0000FC05 0000FC9C 00000000 00000000 00000628 0000200D 0000062D -> 0000FC06 0000FC9D 00000000 00000000 00000628 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FDC2 00000628 0000200D 0000062E -> 0000FC07 0000FC9E 00000000 00000000 00000628 0000200D 0000062E 0000200D 0000064A -> 00000000 00000000 00000000 0000FD9E 00000628 0000200D 00000631 -> 00000000 00000000 00000000 0000FC6A 00000628 0000200D 00000632 -> 00000000 00000000 00000000 0000FC6B 00000628 0000200D 00000645 -> 0000FC08 0000FC9F 0000FCE1 0000FC6C 00000628 0000200D 00000646 -> 00000000 00000000 00000000 0000FC6D 00000628 0000200D 00000647 -> 00000000 0000FCA0 0000FCE2 00000000 00000628 0000200D 00000649 -> 0000FC09 00000000 00000000 0000FC6E 00000628 0000200D 0000064A -> 0000FC0A 00000000 00000000 0000FC6F 00000629 -> 0000FE93 00000000 00000000 0000FE94 0000062A -> 0000FE95 0000FE97 0000FE98 0000FE96 0000062A 0000200D 0000062C -> 0000FC0B 0000FCA1 00000000 00000000 0000062A 0000200D 0000062C 0000200D 00000645 -> 00000000 0000FD50 00000000 00000000 0000062A 0000200D 0000062C 0000200D 00000649 -> 00000000 00000000 00000000 0000FDA0 0000062A 0000200D 0000062C 0000200D 0000064A -> 00000000 00000000 00000000 0000FD9F 0000062A 0000200D 0000062D -> 0000FC0C 0000FCA2 00000000 00000000 0000062A 0000200D 0000062D 0000200D 0000062C -> 00000000 0000FD52 00000000 0000FD51 0000062A 0000200D 0000062D 0000200D 00000645 -> 00000000 0000FD53 00000000 00000000 0000062A 0000200D 0000062E -> 0000FC0D 0000FCA3 00000000 00000000 0000062A 0000200D 0000062E 0000200D 00000645 -> 00000000 0000FD54 00000000 00000000 0000062A 0000200D 0000062E 0000200D 00000649 -> 00000000 00000000 00000000 0000FDA2 0000062A 0000200D 0000062E 0000200D 0000064A -> 00000000 00000000 00000000 0000FDA1 0000062A 0000200D 00000631 -> 00000000 00000000 00000000 0000FC70 0000062A 0000200D 00000632 -> 00000000 00000000 00000000 0000FC71 0000062A 0000200D 00000645 -> 0000FC0E 0000FCA4 0000FCE3 0000FC72 0000062A 0000200D 00000645 0000200D 0000062C -> 00000000 0000FD55 00000000 00000000 0000062A 0000200D 00000645 0000200D 0000062D -> 00000000 0000FD56 00000000 00000000 0000062A 0000200D 00000645 0000200D 0000062E -> 00000000 0000FD57 00000000 00000000 0000062A 0000200D 00000645 0000200D 00000649 -> 00000000 00000000 00000000 0000FDA4 0000062A 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDA3 0000062A 0000200D 00000646 -> 00000000 00000000 00000000 0000FC73 0000062A 0000200D 00000647 -> 00000000 0000FCA5 0000FCE4 00000000 0000062A 0000200D 00000649 -> 0000FC0F 00000000 00000000 0000FC74 0000062A 0000200D 0000064A -> 0000FC10 00000000 00000000 0000FC75 0000062B -> 0000FE99 0000FE9B 0000FE9C 0000FE9A 0000062B 0000200D 0000062C -> 0000FC11 00000000 00000000 00000000 0000062B 0000200D 00000631 -> 00000000 00000000 00000000 0000FC76 0000062B 0000200D 00000632 -> 00000000 00000000 00000000 0000FC77 0000062B 0000200D 00000645 -> 0000FC12 0000FCA6 0000FCE5 0000FC78 0000062B 0000200D 00000646 -> 00000000 00000000 00000000 0000FC79 0000062B 0000200D 00000647 -> 00000000 00000000 0000FCE6 00000000 0000062B 0000200D 00000649 -> 0000FC13 00000000 00000000 0000FC7A 0000062B 0000200D 0000064A -> 0000FC14 00000000 00000000 0000FC7B 0000062C -> 0000FE9D 0000FE9F 0000FEA0 0000FE9E 0000062C 0000200D 0000062D -> 0000FC15 0000FCA7 00000000 00000000 0000062C 0000200D 0000062D 0000200D 00000649 -> 00000000 00000000 00000000 0000FDA6 0000062C 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FDBE 0000062C 0000200D 00000644 0000200D 00000020 0000200D 0000062C 0000200D 00000644 0000200D 00000627 0000200D 00000644 0000200D 00000647 -> 0000FDFB 00000000 00000000 00000000 0000062C 0000200D 00000645 -> 0000FC16 0000FCA8 00000000 00000000 0000062C 0000200D 00000645 0000200D 0000062D -> 00000000 0000FD59 00000000 0000FD58 0000062C 0000200D 00000645 0000200D 00000649 -> 00000000 00000000 00000000 0000FDA7 0000062C 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDA5 0000062C 0000200D 00000649 -> 0000FD01 00000000 00000000 0000FD1D 0000062C 0000200D 0000064A -> 0000FD02 00000000 00000000 0000FD1E 0000062D -> 0000FEA1 0000FEA3 0000FEA4 0000FEA2 0000062D 0000200D 0000062C -> 0000FC17 0000FCA9 00000000 00000000 0000062D 0000200D 0000062C 0000200D 0000064A -> 00000000 00000000 00000000 0000FDBF 0000062D 0000200D 00000645 -> 0000FC18 0000FCAA 00000000 00000000 0000062D 0000200D 00000645 0000200D 00000649 -> 00000000 00000000 00000000 0000FD5B 0000062D 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FD5A 0000062D 0000200D 00000649 -> 0000FCFF 00000000 00000000 0000FD1B 0000062D 0000200D 0000064A -> 0000FD00 00000000 00000000 0000FD1C 0000062E -> 0000FEA5 0000FEA7 0000FEA8 0000FEA6 0000062E 0000200D 0000062C -> 0000FC19 0000FCAB 00000000 00000000 0000062E 0000200D 0000062D -> 0000FC1A 00000000 00000000 00000000 0000062E 0000200D 00000645 -> 0000FC1B 0000FCAC 00000000 00000000 0000062E 0000200D 00000649 -> 0000FD03 00000000 00000000 0000FD1F 0000062E 0000200D 0000064A -> 0000FD04 00000000 00000000 0000FD20 0000062F -> 0000FEA9 00000000 00000000 0000FEAA 00000630 -> 0000FEAB 00000000 00000000 0000FEAC 00000630 0000200D 00000670 -> 0000FC5B 00000000 00000000 00000000 00000631 -> 0000FEAD 00000000 00000000 0000FEAE 00000631 0000200D 00000633 0000200D 00000648 0000200D 00000644 -> 0000FDF6 00000000 00000000 00000000 00000631 0000200D 00000670 -> 0000FC5C 00000000 00000000 00000000 00000631 0000200D 000006CC 0000200D 00000627 0000200D 00000644 -> 0000FDFC 00000000 00000000 00000000 00000632 -> 0000FEAF 00000000 00000000 0000FEB0 00000633 -> 0000FEB1 0000FEB3 0000FEB4 0000FEB2 00000633 0000200D 0000062C -> 0000FC1C 0000FCAD 0000FD34 00000000 00000633 0000200D 0000062C 0000200D 0000062D -> 00000000 0000FD5D 00000000 00000000 00000633 0000200D 0000062C 0000200D 00000649 -> 00000000 00000000 00000000 0000FD5E 00000633 0000200D 0000062D -> 0000FC1D 0000FCAE 0000FD35 00000000 00000633 0000200D 0000062D 0000200D 0000062C -> 00000000 0000FD5C 00000000 00000000 00000633 0000200D 0000062E -> 0000FC1E 0000FCAF 0000FD36 00000000 00000633 0000200D 0000062E 0000200D 00000649 -> 00000000 00000000 00000000 0000FDA8 00000633 0000200D 0000062E 0000200D 0000064A -> 00000000 00000000 00000000 0000FDC6 00000633 0000200D 00000631 -> 0000FD0E 00000000 00000000 0000FD2A 00000633 0000200D 00000645 -> 0000FC1F 0000FCB0 0000FCE7 00000000 00000633 0000200D 00000645 0000200D 0000062C -> 00000000 0000FD61 00000000 00000000 00000633 0000200D 00000645 0000200D 0000062D -> 00000000 0000FD60 00000000 0000FD5F 00000633 0000200D 00000645 0000200D 00000645 -> 00000000 0000FD63 00000000 0000FD62 00000633 0000200D 00000647 -> 00000000 0000FD31 0000FCE8 00000000 00000633 0000200D 00000649 -> 0000FCFB 00000000 00000000 0000FD17 00000633 0000200D 0000064A -> 0000FCFC 00000000 00000000 0000FD18 00000634 -> 0000FEB5 0000FEB7 0000FEB8 0000FEB6 00000634 0000200D 0000062C -> 0000FD09 0000FD2D 0000FD37 0000FD25 00000634 0000200D 0000062C 0000200D 0000064A -> 00000000 00000000 00000000 0000FD69 00000634 0000200D 0000062D -> 0000FD0A 0000FD2E 0000FD38 0000FD26 00000634 0000200D 0000062D 0000200D 00000645 -> 00000000 0000FD68 00000000 0000FD67 00000634 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FDAA 00000634 0000200D 0000062E -> 0000FD0B 0000FD2F 0000FD39 0000FD27 00000634 0000200D 00000631 -> 0000FD0D 00000000 00000000 0000FD29 00000634 0000200D 00000645 -> 0000FD0C 0000FD30 0000FCE9 0000FD28 00000634 0000200D 00000645 0000200D 0000062E -> 00000000 0000FD6B 00000000 0000FD6A 00000634 0000200D 00000645 0000200D 00000645 -> 00000000 0000FD6D 00000000 0000FD6C 00000634 0000200D 00000647 -> 00000000 0000FD32 0000FCEA 00000000 00000634 0000200D 00000649 -> 0000FCFD 00000000 00000000 0000FD19 00000634 0000200D 0000064A -> 0000FCFE 00000000 00000000 0000FD1A 00000635 -> 0000FEB9 0000FEBB 0000FEBC 0000FEBA 00000635 0000200D 0000062D -> 0000FC20 0000FCB1 00000000 00000000 00000635 0000200D 0000062D 0000200D 0000062D -> 00000000 0000FD65 00000000 0000FD64 00000635 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FDA9 00000635 0000200D 0000062E -> 00000000 0000FCB2 00000000 00000000 00000635 0000200D 00000631 -> 0000FD0F 00000000 00000000 0000FD2B 00000635 0000200D 00000644 0000200D 00000639 0000200D 00000645 -> 0000FDF5 00000000 00000000 00000000 00000635 0000200D 00000644 0000200D 00000649 -> 0000FDF9 00000000 00000000 00000000 00000635 0000200D 00000644 0000200D 00000649 0000200D 00000020 0000200D 00000627 0000200D 00000644 0000200D 00000644 0000200D 00000647 0000200D 00000020 0000200D 00000639 0000200D 00000644 0000200D 0000064A 0000200D 00000647 0000200D 00000020 0000200D 00000648 0000200D 00000633 0000200D 00000644 0000200D 00000645 -> 0000FDFA 00000000 00000000 00000000 00000635 0000200D 00000644 0000200D 000006D2 -> 0000FDF0 00000000 00000000 00000000 00000635 0000200D 00000645 -> 0000FC21 0000FCB3 00000000 00000000 00000635 0000200D 00000645 0000200D 00000645 -> 00000000 0000FDC5 00000000 0000FD66 00000635 0000200D 00000649 -> 0000FD05 00000000 00000000 0000FD21 00000635 0000200D 0000064A -> 0000FD06 00000000 00000000 0000FD22 00000636 -> 0000FEBD 0000FEBF 0000FEC0 0000FEBE 00000636 0000200D 0000062C -> 0000FC22 0000FCB4 00000000 00000000 00000636 0000200D 0000062D -> 0000FC23 0000FCB5 00000000 00000000 00000636 0000200D 0000062D 0000200D 00000649 -> 00000000 00000000 00000000 0000FD6E 00000636 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FDAB 00000636 0000200D 0000062E -> 0000FC24 0000FCB6 00000000 00000000 00000636 0000200D 0000062E 0000200D 00000645 -> 00000000 0000FD70 00000000 0000FD6F 00000636 0000200D 00000631 -> 0000FD10 00000000 00000000 0000FD2C 00000636 0000200D 00000645 -> 0000FC25 0000FCB7 00000000 00000000 00000636 0000200D 00000649 -> 0000FD07 00000000 00000000 0000FD23 00000636 0000200D 0000064A -> 0000FD08 00000000 00000000 0000FD24 00000637 -> 0000FEC1 0000FEC3 0000FEC4 0000FEC2 00000637 0000200D 0000062D -> 0000FC26 0000FCB8 00000000 00000000 00000637 0000200D 00000645 -> 0000FC27 0000FD33 0000FD3A 00000000 00000637 0000200D 00000645 0000200D 0000062D -> 00000000 0000FD72 00000000 0000FD71 00000637 0000200D 00000645 0000200D 00000645 -> 00000000 0000FD73 00000000 00000000 00000637 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FD74 00000637 0000200D 00000649 -> 0000FCF5 00000000 00000000 0000FD11 00000637 0000200D 0000064A -> 0000FCF6 00000000 00000000 0000FD12 00000638 -> 0000FEC5 0000FEC7 0000FEC8 0000FEC6 00000638 0000200D 00000645 -> 0000FC28 0000FCB9 0000FD3B 00000000 00000639 -> 0000FEC9 0000FECB 0000FECC 0000FECA 00000639 0000200D 0000062C -> 0000FC29 0000FCBA 00000000 00000000 00000639 0000200D 0000062C 0000200D 00000645 -> 00000000 0000FDC4 00000000 0000FD75 00000639 0000200D 00000644 0000200D 0000064A 0000200D 00000647 -> 0000FDF7 00000000 00000000 00000000 00000639 0000200D 00000645 -> 0000FC2A 0000FCBB 00000000 00000000 00000639 0000200D 00000645 0000200D 00000645 -> 00000000 0000FD77 00000000 0000FD76 00000639 0000200D 00000645 0000200D 00000649 -> 00000000 00000000 00000000 0000FD78 00000639 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDB6 00000639 0000200D 00000649 -> 0000FCF7 00000000 00000000 0000FD13 00000639 0000200D 0000064A -> 0000FCF8 00000000 00000000 0000FD14 0000063A -> 0000FECD 0000FECF 0000FED0 0000FECE 0000063A 0000200D 0000062C -> 0000FC2B 0000FCBC 00000000 00000000 0000063A 0000200D 00000645 -> 0000FC2C 0000FCBD 00000000 00000000 0000063A 0000200D 00000645 0000200D 00000645 -> 00000000 00000000 00000000 0000FD79 0000063A 0000200D 00000645 0000200D 00000649 -> 00000000 00000000 00000000 0000FD7B 0000063A 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FD7A 0000063A 0000200D 00000649 -> 0000FCF9 00000000 00000000 0000FD15 0000063A 0000200D 0000064A -> 0000FCFA 00000000 00000000 0000FD16 00000640 0000200D 0000064B -> 00000000 00000000 0000FE71 00000000 00000640 0000200D 0000064E -> 00000000 00000000 0000FE77 00000000 00000640 0000200D 0000064E 0000200D 00000651 -> 00000000 00000000 0000FCF2 00000000 00000640 0000200D 0000064F -> 00000000 00000000 0000FE79 00000000 00000640 0000200D 0000064F 0000200D 00000651 -> 00000000 00000000 0000FCF3 00000000 00000640 0000200D 00000650 -> 00000000 00000000 0000FE7B 00000000 00000640 0000200D 00000650 0000200D 00000651 -> 00000000 00000000 0000FCF4 00000000 00000640 0000200D 00000651 -> 00000000 00000000 0000FE7D 00000000 00000640 0000200D 00000652 -> 00000000 00000000 0000FE7F 00000000 00000641 -> 0000FED1 0000FED3 0000FED4 0000FED2 00000641 0000200D 0000062C -> 0000FC2D 0000FCBE 00000000 00000000 00000641 0000200D 0000062D -> 0000FC2E 0000FCBF 00000000 00000000 00000641 0000200D 0000062E -> 0000FC2F 0000FCC0 00000000 00000000 00000641 0000200D 0000062E 0000200D 00000645 -> 00000000 0000FD7D 00000000 0000FD7C 00000641 0000200D 00000645 -> 0000FC30 0000FCC1 00000000 00000000 00000641 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDC1 00000641 0000200D 00000649 -> 0000FC31 00000000 00000000 0000FC7C 00000641 0000200D 0000064A -> 0000FC32 00000000 00000000 0000FC7D 00000642 -> 0000FED5 0000FED7 0000FED8 0000FED6 00000642 0000200D 0000062D -> 0000FC33 0000FCC2 00000000 00000000 00000642 0000200D 00000644 0000200D 000006D2 -> 0000FDF1 00000000 00000000 00000000 00000642 0000200D 00000645 -> 0000FC34 0000FCC3 00000000 00000000 00000642 0000200D 00000645 0000200D 0000062D -> 00000000 0000FDB4 00000000 0000FD7E 00000642 0000200D 00000645 0000200D 00000645 -> 00000000 00000000 00000000 0000FD7F 00000642 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDB2 00000642 0000200D 00000649 -> 0000FC35 00000000 00000000 0000FC7E 00000642 0000200D 0000064A -> 0000FC36 00000000 00000000 0000FC7F 00000643 -> 0000FED9 0000FEDB 0000FEDC 0000FEDA 00000643 0000200D 00000627 -> 0000FC37 00000000 00000000 0000FC80 00000643 0000200D 0000062C -> 0000FC38 0000FCC4 00000000 00000000 00000643 0000200D 0000062D -> 0000FC39 0000FCC5 00000000 00000000 00000643 0000200D 0000062E -> 0000FC3A 0000FCC6 00000000 00000000 00000643 0000200D 00000644 -> 0000FC3B 0000FCC7 0000FCEB 0000FC81 00000643 0000200D 00000645 -> 0000FC3C 0000FCC8 0000FCEC 0000FC82 00000643 0000200D 00000645 0000200D 00000645 -> 00000000 0000FDC3 00000000 0000FDBB 00000643 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDB7 00000643 0000200D 00000649 -> 0000FC3D 00000000 00000000 0000FC83 00000643 0000200D 0000064A -> 0000FC3E 00000000 00000000 0000FC84 00000644 -> 0000FEDD 0000FEDF 0000FEE0 0000FEDE 00000644 00000622 -> 0000FEF5 00000000 00000000 0000FEF6 00000644 00000623 -> 0000FEF7 00000000 00000000 0000FEF8 00000644 00000625 -> 0000FEF9 00000000 00000000 0000FEFA 00000644 00000627 -> 0000FEFB 00000000 00000000 0000FEFC 00000644 0000200D 0000062C -> 0000FC3F 0000FCC9 00000000 00000000 00000644 0000200D 0000062C 0000200D 0000062C -> 00000000 0000FD83 00000000 0000FD84 00000644 0000200D 0000062C 0000200D 00000645 -> 00000000 0000FDBA 00000000 0000FDBC 00000644 0000200D 0000062C 0000200D 0000064A -> 00000000 00000000 00000000 0000FDAC 00000644 0000200D 0000062D -> 0000FC40 0000FCCA 00000000 00000000 00000644 0000200D 0000062D 0000200D 00000645 -> 00000000 0000FDB5 00000000 0000FD80 00000644 0000200D 0000062D 0000200D 00000649 -> 00000000 00000000 00000000 0000FD82 00000644 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FD81 00000644 0000200D 0000062E -> 0000FC41 0000FCCB 00000000 00000000 00000644 0000200D 0000062E 0000200D 00000645 -> 00000000 0000FD86 00000000 0000FD85 00000644 0000200D 00000645 -> 0000FC42 0000FCCC 0000FCED 0000FC85 00000644 0000200D 00000645 0000200D 0000062D -> 00000000 0000FD88 00000000 0000FD87 00000644 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDAD 00000644 0000200D 00000647 -> 00000000 0000FCCD 00000000 00000000 00000644 0000200D 00000649 -> 0000FC43 00000000 00000000 0000FC86 00000644 0000200D 0000064A -> 0000FC44 00000000 00000000 0000FC87 00000645 -> 0000FEE1 0000FEE3 0000FEE4 0000FEE2 00000645 0000200D 00000627 -> 00000000 00000000 00000000 0000FC88 00000645 0000200D 0000062C -> 0000FC45 0000FCCE 00000000 00000000 00000645 0000200D 0000062C 0000200D 0000062D -> 00000000 0000FD8C 00000000 00000000 00000645 0000200D 0000062C 0000200D 0000062E -> 00000000 0000FD92 00000000 00000000 00000645 0000200D 0000062C 0000200D 00000645 -> 00000000 0000FD8D 00000000 00000000 00000645 0000200D 0000062C 0000200D 0000064A -> 00000000 00000000 00000000 0000FDC0 00000645 0000200D 0000062D -> 0000FC46 0000FCCF 00000000 00000000 00000645 0000200D 0000062D 0000200D 0000062C -> 00000000 0000FD89 00000000 00000000 00000645 0000200D 0000062D 0000200D 00000645 -> 00000000 0000FD8A 00000000 00000000 00000645 0000200D 0000062D 0000200D 00000645 0000200D 0000062F -> 0000FDF4 00000000 00000000 00000000 00000645 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FD8B 00000645 0000200D 0000062E -> 0000FC47 0000FCD0 00000000 00000000 00000645 0000200D 0000062E 0000200D 0000062C -> 00000000 0000FD8E 00000000 00000000 00000645 0000200D 0000062E 0000200D 00000645 -> 00000000 0000FD8F 00000000 00000000 00000645 0000200D 0000062E 0000200D 0000064A -> 00000000 00000000 00000000 0000FDB9 00000645 0000200D 00000645 -> 0000FC48 0000FCD1 00000000 0000FC89 00000645 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDB1 00000645 0000200D 00000649 -> 0000FC49 00000000 00000000 00000000 00000645 0000200D 0000064A -> 0000FC4A 00000000 00000000 00000000 00000646 -> 0000FEE5 0000FEE7 0000FEE8 0000FEE6 00000646 0000200D 0000062C -> 0000FC4B 0000FCD2 00000000 00000000 00000646 0000200D 0000062C 0000200D 0000062D -> 00000000 0000FDB8 00000000 0000FDBD 00000646 0000200D 0000062C 0000200D 00000645 -> 00000000 0000FD98 00000000 0000FD97 00000646 0000200D 0000062C 0000200D 00000649 -> 00000000 00000000 00000000 0000FD99 00000646 0000200D 0000062C 0000200D 0000064A -> 00000000 00000000 00000000 0000FDC7 00000646 0000200D 0000062D -> 0000FC4C 0000FCD3 00000000 00000000 00000646 0000200D 0000062D 0000200D 00000645 -> 00000000 0000FD95 00000000 00000000 00000646 0000200D 0000062D 0000200D 00000649 -> 00000000 00000000 00000000 0000FD96 00000646 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FDB3 00000646 0000200D 0000062E -> 0000FC4D 0000FCD4 00000000 00000000 00000646 0000200D 00000631 -> 00000000 00000000 00000000 0000FC8A 00000646 0000200D 00000632 -> 00000000 00000000 00000000 0000FC8B 00000646 0000200D 00000645 -> 0000FC4E 0000FCD5 0000FCEE 0000FC8C 00000646 0000200D 00000645 0000200D 00000649 -> 00000000 00000000 00000000 0000FD9B 00000646 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FD9A 00000646 0000200D 00000646 -> 00000000 00000000 00000000 0000FC8D 00000646 0000200D 00000647 -> 00000000 0000FCD6 0000FCEF 00000000 00000646 0000200D 00000649 -> 0000FC4F 00000000 00000000 0000FC8E 00000646 0000200D 0000064A -> 0000FC50 00000000 00000000 0000FC8F 00000647 -> 0000FEE9 0000FEEB 0000FEEC 0000FEEA 00000647 0000200D 0000062C -> 0000FC51 0000FCD7 00000000 00000000 00000647 0000200D 00000645 -> 0000FC52 0000FCD8 00000000 00000000 00000647 0000200D 00000645 0000200D 0000062C -> 00000000 0000FD93 00000000 00000000 00000647 0000200D 00000645 0000200D 00000645 -> 00000000 0000FD94 00000000 00000000 00000647 0000200D 00000649 -> 0000FC53 00000000 00000000 00000000 00000647 0000200D 0000064A -> 0000FC54 00000000 00000000 00000000 00000647 0000200D 00000670 -> 00000000 0000FCD9 00000000 00000000 00000648 -> 0000FEED 00000000 00000000 0000FEEE 00000648 0000200D 00000633 0000200D 00000644 0000200D 00000645 -> 0000FDF8 00000000 00000000 00000000 00000649 -> 0000FEEF 0000FBE8 0000FBE9 0000FEF0 00000649 0000200D 00000670 -> 0000FC5D 00000000 00000000 0000FC90 0000064A -> 0000FEF1 0000FEF3 0000FEF4 0000FEF2 0000064A 0000200D 0000062C -> 0000FC55 0000FCDA 00000000 00000000 0000064A 0000200D 0000062C 0000200D 0000064A -> 00000000 00000000 00000000 0000FDAF 0000064A 0000200D 0000062D -> 0000FC56 0000FCDB 00000000 00000000 0000064A 0000200D 0000062D 0000200D 0000064A -> 00000000 00000000 00000000 0000FDAE 0000064A 0000200D 0000062E -> 0000FC57 0000FCDC 00000000 00000000 0000064A 0000200D 00000631 -> 00000000 00000000 00000000 0000FC91 0000064A 0000200D 00000632 -> 00000000 00000000 00000000 0000FC92 0000064A 0000200D 00000645 -> 0000FC58 0000FCDD 0000FCF0 0000FC93 0000064A 0000200D 00000645 0000200D 00000645 -> 00000000 0000FD9D 00000000 0000FD9C 0000064A 0000200D 00000645 0000200D 0000064A -> 00000000 00000000 00000000 0000FDB0 0000064A 0000200D 00000646 -> 00000000 00000000 00000000 0000FC94 0000064A 0000200D 00000647 -> 00000000 0000FCDE 0000FCF1 00000000 0000064A 0000200D 00000649 -> 0000FC59 00000000 00000000 0000FC95 0000064A 0000200D 0000064A -> 0000FC5A 00000000 00000000 0000FC96 # # From: Karl Koehler # Concerning tashkeel: I would like text with it to not look garbled. # Using shaped tashkeel would is nicer. # 0000064B -> 0000FE70 0000FE70 0000FE71 0000FE70 0000064E -> 0000FE76 0000FE76 0000FE77 0000FE76 0000064F -> 0000FE78 0000FE78 0000FE79 0000FE78 00000650 -> 0000FE7A 0000FE7A 0000FE7B 0000FE7A 00000651 -> 0000FE7C 0000FE7C 0000FE7D 0000FE7C 00000652 -> 0000FE7E 0000FE7E 0000FE7F 0000FE7E # # Miikka-Markus Alhonen # Syriac: The only obligatory ligature in all script styles: # Rish + Seyame (U+072A U+0308) # 0000072A 00000308 -> A0001001 00000000 00000000 A0004001 # # Kaf + Alif and Kaf + Lam should have a presentation form as # it is used in Urdu nastaliq.ttf. 000006A9 0000200D 00000627 -> A0001002 00000000 00000000 A0004002 000006A9 0000200D 00000644 -> A0001003 A0002003 A0003003 A0004003 # # END # 0000066E -> A000166E A000266E A000366E A000466E 0000066F -> A000166F A000266F A000366F A000466F 00000671 -> 0000FB50 00000000 00000000 0000FB51 00000672 -> A0001672 00000000 00000000 A0004672 00000673 -> A0001673 00000000 00000000 A0004673 00000675 -> A0001675 00000000 00000000 A0004675 00000676 -> A0001676 00000000 00000000 A0004676 00000677 -> 0000FBDD 00000000 00000000 A0004677 00000678 -> A0001678 A0002678 A0003678 A0004678 00000679 -> 0000FB66 0000FB68 0000FB69 0000FB67 0000067A -> 0000FB5E 0000FB60 0000FB61 0000FB5F 0000067B -> 0000FB52 0000FB54 0000FB55 0000FB53 0000067C -> A000167C A000267C A000367C A000467C 0000067D -> A000167D A000267D A000367D A000467D 0000067E -> 0000FB56 0000FB58 0000FB59 0000FB57 0000067F -> 0000FB62 0000FB64 0000FB65 0000FB63 00000680 -> 0000FB5A 0000FB5C 0000FB5D 0000FB5B 00000681 -> A0001681 A0002681 A0003681 A0004681 00000682 -> A0001682 A0002682 A0003682 A0004682 00000683 -> 0000FB76 0000FB78 0000FB79 0000FB77 00000684 -> 0000FB72 0000FB74 0000FB75 0000FB73 00000685 -> A0001685 A0002685 A0003685 A0004685 00000686 -> 0000FB7A 0000FB7C 0000FB7D 0000FB7B 00000687 -> 0000FB7E 0000FB80 0000FB81 0000FB7F 00000688 -> 0000FB88 00000000 00000000 0000FB89 00000689 -> A0001689 00000000 00000000 A0004689 0000068A -> A000168A 00000000 00000000 A000468A 0000068B -> A000168B 00000000 00000000 A000468B 0000068C -> 0000FB84 00000000 00000000 0000FB85 0000068D -> 0000FB82 00000000 00000000 0000FB83 0000068E -> 0000FB86 00000000 00000000 0000FB87 0000068F -> A000168F 00000000 00000000 A000468F 00000690 -> A0001690 00000000 00000000 A0004690 00000691 -> 0000FB8C 00000000 00000000 0000FB8D 00000692 -> A0001692 00000000 00000000 A0004692 00000693 -> A0001693 00000000 00000000 A0004693 00000694 -> A0001694 00000000 00000000 A0004694 00000695 -> A0001695 00000000 00000000 A0004695 00000696 -> A0001696 00000000 00000000 A0004696 00000697 -> A0001697 00000000 00000000 A0004697 00000698 -> 0000FB8A 00000000 00000000 0000FB8B 00000699 -> A0001699 00000000 00000000 A0004699 0000069A -> A000169A A000269A A000369A A000469A 0000069B -> A000169B A000269B A000369B A000469B 0000069C -> A000169C A000269C A000369C A000469C 0000069D -> A000169D A000269D A000369D A000469D 0000069E -> A000169E A000269E A000369E A000469E 0000069F -> A000169F A000269F A000369F A000469F 000006A0 -> A00016A0 A00026A0 A00036A0 A00046A0 000006A1 -> A00016A1 A00026A1 A00036A1 A00046A1 000006A2 -> A00016A2 A00026A2 A00036A2 A00046A2 000006A3 -> A00016A3 A00026A3 A00036A3 A00046A3 000006A4 -> 0000FB6A 0000FB6C 0000FB6D 0000FB6B 000006A5 -> A00016A5 A00026A5 A00036A5 A00046A5 000006A6 -> 0000FB6E 0000FB70 0000FB71 0000FB6F 000006A7 -> A00016A7 A00026A7 A00036A7 A00046A7 000006A8 -> A00016A8 A00026A8 A00036A8 A00046A8 000006A9 -> 0000FB8E 0000FB90 0000FB91 0000FB8F 000006AA -> A00016AA A00026AA A00036AA A00046AA 000006AB -> A00016AB A00026AB A00036AB A00046AB 000006AC -> A00016AC A00026AC A00036AC A00046AC 000006AD -> 0000FBD3 0000FBD5 0000FBD6 0000FBD4 000006AE -> A00016AE A00026AE A00036AE A00046AE 000006AF -> 0000FB92 0000FB94 0000FB95 0000FB93 000006B0 -> A00016B0 A00026B0 A00036B0 A00046B0 000006B1 -> 0000FB9A 0000FB9C 0000FB9D 0000FB9B 000006B2 -> A00016B2 A00026B2 A00036B2 A00046B2 000006B3 -> 0000FB96 0000FB98 0000FB99 0000FB97 000006B4 -> A00016B4 A00026B4 A00036B4 A00046B4 000006B5 -> A00016B5 A00026B5 A00036B5 A00046B5 000006B6 -> A00016B6 A00026B6 A00036B6 A00046B6 000006B7 -> A00016B7 A00026B7 A00036B7 A00046B7 000006B8 -> A00016B8 A00026B8 A00036B8 A00046B8 000006B9 -> A00016B9 A00026B9 A00036B9 A00046B9 000006BA -> 0000FB9E A00026BA A00036BA 0000FB9F 000006BB -> 0000FBA0 0000FBA2 0000FBA3 0000FBA1 000006BC -> A00016BC A00026BC A00036BC A00046BC 000006BD -> A00016BD A00026BD A00036BD A00046BD 000006BE -> 0000FBAA 0000FBAC 0000FBAD 0000FBAB 000006BF -> A00016BF A00026BF A00036BF A00046BF 000006C0 -> 0000FBA4 00000000 00000000 0000FBA5 000006C1 -> 0000FBA6 0000FBA8 0000FBA9 0000FBA7 000006C2 -> A00016C2 00000000 00000000 A00046C2 000006C3 -> A00016C3 00000000 00000000 A00046C3 000006C4 -> A00016C4 00000000 00000000 A00046C4 000006C5 -> 0000FBE0 00000000 00000000 0000FBE1 000006C6 -> 0000FBD9 00000000 00000000 0000FBDA 000006C7 -> 0000FBD7 00000000 00000000 0000FBD8 000006C8 -> 0000FBDB 00000000 00000000 0000FBDC 000006C9 -> 0000FBE2 00000000 00000000 0000FBE3 000006CA -> A00016CA 00000000 00000000 A00046CA 000006CB -> 0000FBDE 00000000 00000000 0000FBDF 000006CC -> 0000FBFC 0000FBFE 0000FBFF 0000FBFD 000006CD -> A00016CD 00000000 00000000 A00046CD 000006CE -> A00016CE A00026CE A00036CE A00046CE 000006CF -> A00016CF 00000000 00000000 A00046CF 000006D0 -> 0000FBE4 0000FBE6 0000FBE7 0000FBE5 000006D1 -> A00016D1 A00026D1 A00036D1 A00046D1 000006D2 -> 0000FBAE 00000000 00000000 0000FBAF 000006D3 -> 0000FBB0 00000000 00000000 0000FBB1 000006D5 -> A00016D5 00000000 00000000 A00046D5 000006FA -> A00016FA A00026FA A00036FA A00046FA 000006FB -> A00016FB A00026FB A00036FB A00046FB 000006FC -> A00016FC A00026FC A00036FC A00046FC 00000710 -> A0001710 00000000 00000000 A0004710 00000712 -> A0001712 A0002712 A0003712 A0004712 00000713 -> A0001713 A0002713 A0003713 A0004713 00000714 -> A0001714 A0002714 A0003714 A0004714 00000715 -> A0001715 00000000 00000000 A0004715 00000716 -> A0001716 00000000 00000000 A0004716 00000717 -> A0001717 00000000 00000000 A0004717 00000718 -> A0001718 00000000 00000000 A0004718 00000719 -> A0001719 00000000 00000000 A0004719 0000071A -> A000171A A000271A A000371A A000471A 0000071B -> A000171B A000271B A000371B A000471B 0000071C -> A000171C A000271C A000371C A000471C 0000071D -> A000171D A000271D A000371D A000471D 0000071E -> A000171E 00000000 00000000 A000471E 0000071F -> A000171F A000271F A000371F A000471F 00000720 -> A0001720 A0002720 A0003720 A0004720 00000721 -> A0001721 A0002721 A0003721 A0004721 00000722 -> A0001722 A0002722 A0003722 A0004722 00000723 -> A0001723 A0002723 A0003723 A0004723 00000724 -> A0001724 A0002724 A0003724 A0004724 00000725 -> A0001725 A0002725 A0003725 A0004725 00000726 -> A0001726 A0002726 A0003726 A0004726 00000727 -> A0001727 A0002727 A0003727 A0004727 00000728 -> A0001728 00000000 00000000 A0004728 00000729 -> A0001729 A0002729 A0003729 A0004729 0000072A -> A000172A 00000000 00000000 A000472A 0000072B -> A000172B A000272B A000372B A000472B 0000072C -> A000172C 00000000 00000000 A000472C # # This decoder can be used to convert data from presentation form # COMM=ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt # This file does not contain ligatures - STextData need to be changed # for that. COMM=shapein -> isolated initial medial final COMM=Test A-> A i m f SECTION=shapein ENCODE=0 KEY_WIDTH=2 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # 0000FB50 -> 00000671 0000FB51 -> 00000671 0000FB52 -> 0000067B 0000FB53 -> 0000067B 0000FB54 -> 0000067B 0000FB55 -> 0000067B 0000FB56 -> 0000067E 0000FB57 -> 0000067E 0000FB58 -> 0000067E 0000FB59 -> 0000067E 0000FB5A -> 00000680 0000FB5B -> 00000680 0000FB5C -> 00000680 0000FB5D -> 00000680 0000FB5E -> 0000067A 0000FB5F -> 0000067A 0000FB60 -> 0000067A 0000FB61 -> 0000067A 0000FB62 -> 0000067F 0000FB63 -> 0000067F 0000FB64 -> 0000067F 0000FB65 -> 0000067F 0000FB66 -> 00000679 0000FB67 -> 00000679 0000FB68 -> 00000679 0000FB69 -> 00000679 0000FB6A -> 000006A4 0000FB6B -> 000006A4 0000FB6C -> 000006A4 0000FB6D -> 000006A4 0000FB6E -> 000006A6 0000FB6F -> 000006A6 0000FB70 -> 000006A6 0000FB71 -> 000006A6 0000FB72 -> 00000684 0000FB73 -> 00000684 0000FB74 -> 00000684 0000FB75 -> 00000684 0000FB76 -> 00000683 0000FB77 -> 00000683 0000FB78 -> 00000683 0000FB79 -> 00000683 0000FB7A -> 00000686 0000FB7B -> 00000686 0000FB7C -> 00000686 0000FB7D -> 00000686 0000FB7E -> 00000687 0000FB7F -> 00000687 0000FB80 -> 00000687 0000FB81 -> 00000687 0000FB82 -> 0000068D 0000FB83 -> 0000068D 0000FB84 -> 0000068C 0000FB85 -> 0000068C 0000FB86 -> 0000068E 0000FB87 -> 0000068E 0000FB88 -> 00000688 0000FB89 -> 00000688 0000FB8A -> 00000698 0000FB8B -> 00000698 0000FB8C -> 00000691 0000FB8D -> 00000691 0000FB8E -> 000006A9 0000FB8F -> 000006A9 0000FB90 -> 000006A9 0000FB91 -> 000006A9 0000FB92 -> 000006AF 0000FB93 -> 000006AF 0000FB94 -> 000006AF 0000FB95 -> 000006AF 0000FB96 -> 000006B3 0000FB97 -> 000006B3 0000FB98 -> 000006B3 0000FB99 -> 000006B3 0000FB9A -> 000006B1 0000FB9B -> 000006B1 0000FB9C -> 000006B1 0000FB9D -> 000006B1 0000FB9E -> 000006BA 0000FB9F -> 000006BA 0000FBA0 -> 000006BB 0000FBA1 -> 000006BB 0000FBA2 -> 000006BB 0000FBA3 -> 000006BB 0000FBA4 -> 000006C0 0000FBA5 -> 000006C0 0000FBA6 -> 000006C1 0000FBA7 -> 000006C1 0000FBA8 -> 000006C1 0000FBA9 -> 000006C1 0000FBAA -> 000006BE 0000FBAB -> 000006BE 0000FBAC -> 000006BE 0000FBAD -> 000006BE 0000FBAE -> 000006D2 0000FBAF -> 000006D2 0000FBB0 -> 000006D3 0000FBB1 -> 000006D3 0000FBD3 -> 000006AD 0000FBD4 -> 000006AD 0000FBD5 -> 000006AD 0000FBD6 -> 000006AD 0000FBD7 -> 000006C7 0000FBD8 -> 000006C7 0000FBD9 -> 000006C6 0000FBDA -> 000006C6 0000FBDB -> 000006C8 0000FBDC -> 000006C8 0000FBDD -> 00000677 0000FBDE -> 000006CB 0000FBDF -> 000006CB 0000FBE0 -> 000006C5 0000FBE1 -> 000006C5 0000FBE2 -> 000006C9 0000FBE3 -> 000006C9 0000FBE4 -> 000006D0 0000FBE5 -> 000006D0 0000FBE6 -> 000006D0 0000FBE7 -> 000006D0 0000FBE8 -> 00000649 0000FBE9 -> 00000649 0000FBEA -> 00000626 00000627 0000FBEB -> 00000626 00000627 0000FBEC -> 00000626 000006D5 0000FBED -> 00000626 000006D5 0000FBEE -> 00000626 00000648 0000FBEF -> 00000626 00000648 0000FBF0 -> 00000626 000006C7 0000FBF1 -> 00000626 000006C7 0000FBF2 -> 00000626 000006C6 0000FBF3 -> 00000626 000006C6 0000FBF4 -> 00000626 000006C8 0000FBF5 -> 00000626 000006C8 0000FBF6 -> 00000626 000006D0 0000FBF7 -> 00000626 000006D0 0000FBF8 -> 00000626 000006D0 0000FBF9 -> 00000626 00000649 0000FBFA -> 00000626 00000649 0000FBFB -> 00000626 00000649 0000FBFC -> 000006CC 0000FBFD -> 000006CC 0000FBFE -> 000006CC 0000FBFF -> 000006CC 0000FC00 -> 00000626 0000062C 0000FC01 -> 00000626 0000062D 0000FC02 -> 00000626 00000645 0000FC03 -> 00000626 00000649 0000FC04 -> 00000626 0000064A 0000FC05 -> 00000628 0000062C 0000FC06 -> 00000628 0000062D 0000FC07 -> 00000628 0000062E 0000FC08 -> 00000628 00000645 0000FC09 -> 00000628 00000649 0000FC0A -> 00000628 0000064A 0000FC0B -> 0000062A 0000062C 0000FC0C -> 0000062A 0000062D 0000FC0D -> 0000062A 0000062E 0000FC0E -> 0000062A 00000645 0000FC0F -> 0000062A 00000649 0000FC10 -> 0000062A 0000064A 0000FC11 -> 0000062B 0000062C 0000FC12 -> 0000062B 00000645 0000FC13 -> 0000062B 00000649 0000FC14 -> 0000062B 0000064A 0000FC15 -> 0000062C 0000062D 0000FC16 -> 0000062C 00000645 0000FC17 -> 0000062D 0000062C 0000FC18 -> 0000062D 00000645 0000FC19 -> 0000062E 0000062C 0000FC1A -> 0000062E 0000062D 0000FC1B -> 0000062E 00000645 0000FC1C -> 00000633 0000062C 0000FC1D -> 00000633 0000062D 0000FC1E -> 00000633 0000062E 0000FC1F -> 00000633 00000645 0000FC20 -> 00000635 0000062D 0000FC21 -> 00000635 00000645 0000FC22 -> 00000636 0000062C 0000FC23 -> 00000636 0000062D 0000FC24 -> 00000636 0000062E 0000FC25 -> 00000636 00000645 0000FC26 -> 00000637 0000062D 0000FC27 -> 00000637 00000645 0000FC28 -> 00000638 00000645 0000FC29 -> 00000639 0000062C 0000FC2A -> 00000639 00000645 0000FC2B -> 0000063A 0000062C 0000FC2C -> 0000063A 00000645 0000FC2D -> 00000641 0000062C 0000FC2E -> 00000641 0000062D 0000FC2F -> 00000641 0000062E 0000FC30 -> 00000641 00000645 0000FC31 -> 00000641 00000649 0000FC32 -> 00000641 0000064A 0000FC33 -> 00000642 0000062D 0000FC34 -> 00000642 00000645 0000FC35 -> 00000642 00000649 0000FC36 -> 00000642 0000064A 0000FC37 -> 00000643 00000627 0000FC38 -> 00000643 0000062C 0000FC39 -> 00000643 0000062D 0000FC3A -> 00000643 0000062E 0000FC3B -> 00000643 00000644 0000FC3C -> 00000643 00000645 0000FC3D -> 00000643 00000649 0000FC3E -> 00000643 0000064A 0000FC3F -> 00000644 0000062C 0000FC40 -> 00000644 0000062D 0000FC41 -> 00000644 0000062E 0000FC42 -> 00000644 00000645 0000FC43 -> 00000644 00000649 0000FC44 -> 00000644 0000064A 0000FC45 -> 00000645 0000062C 0000FC46 -> 00000645 0000062D 0000FC47 -> 00000645 0000062E 0000FC48 -> 00000645 00000645 0000FC49 -> 00000645 00000649 0000FC4A -> 00000645 0000064A 0000FC4B -> 00000646 0000062C 0000FC4C -> 00000646 0000062D 0000FC4D -> 00000646 0000062E 0000FC4E -> 00000646 00000645 0000FC4F -> 00000646 00000649 0000FC50 -> 00000646 0000064A 0000FC51 -> 00000647 0000062C 0000FC52 -> 00000647 00000645 0000FC53 -> 00000647 00000649 0000FC54 -> 00000647 0000064A 0000FC55 -> 0000064A 0000062C 0000FC56 -> 0000064A 0000062D 0000FC57 -> 0000064A 0000062E 0000FC58 -> 0000064A 00000645 0000FC59 -> 0000064A 00000649 0000FC5A -> 0000064A 0000064A 0000FC5B -> 00000630 00000670 0000FC5C -> 00000631 00000670 0000FC5D -> 00000649 00000670 0000FC5E -> 00000020 0000064C 00000651 0000FC5F -> 00000020 0000064D 00000651 0000FC60 -> 00000020 0000064E 00000651 0000FC61 -> 00000020 0000064F 00000651 0000FC62 -> 00000020 00000650 00000651 0000FC63 -> 00000020 00000651 00000670 0000FC64 -> 00000626 00000631 0000FC65 -> 00000626 00000632 0000FC66 -> 00000626 00000645 0000FC67 -> 00000626 00000646 0000FC68 -> 00000626 00000649 0000FC69 -> 00000626 0000064A 0000FC6A -> 00000628 00000631 0000FC6B -> 00000628 00000632 0000FC6C -> 00000628 00000645 0000FC6D -> 00000628 00000646 0000FC6E -> 00000628 00000649 0000FC6F -> 00000628 0000064A 0000FC70 -> 0000062A 00000631 0000FC71 -> 0000062A 00000632 0000FC72 -> 0000062A 00000645 0000FC73 -> 0000062A 00000646 0000FC74 -> 0000062A 00000649 0000FC75 -> 0000062A 0000064A 0000FC76 -> 0000062B 00000631 0000FC77 -> 0000062B 00000632 0000FC78 -> 0000062B 00000645 0000FC79 -> 0000062B 00000646 0000FC7A -> 0000062B 00000649 0000FC7B -> 0000062B 0000064A 0000FC7C -> 00000641 00000649 0000FC7D -> 00000641 0000064A 0000FC7E -> 00000642 00000649 0000FC7F -> 00000642 0000064A 0000FC80 -> 00000643 00000627 0000FC81 -> 00000643 00000644 0000FC82 -> 00000643 00000645 0000FC83 -> 00000643 00000649 0000FC84 -> 00000643 0000064A 0000FC85 -> 00000644 00000645 0000FC86 -> 00000644 00000649 0000FC87 -> 00000644 0000064A 0000FC88 -> 00000645 00000627 0000FC89 -> 00000645 00000645 0000FC8A -> 00000646 00000631 0000FC8B -> 00000646 00000632 0000FC8C -> 00000646 00000645 0000FC8D -> 00000646 00000646 0000FC8E -> 00000646 00000649 0000FC8F -> 00000646 0000064A 0000FC90 -> 00000649 00000670 0000FC91 -> 0000064A 00000631 0000FC92 -> 0000064A 00000632 0000FC93 -> 0000064A 00000645 0000FC94 -> 0000064A 00000646 0000FC95 -> 0000064A 00000649 0000FC96 -> 0000064A 0000064A 0000FC97 -> 00000626 0000062C 0000FC98 -> 00000626 0000062D 0000FC99 -> 00000626 0000062E 0000FC9A -> 00000626 00000645 0000FC9B -> 00000626 00000647 0000FC9C -> 00000628 0000062C 0000FC9D -> 00000628 0000062D 0000FC9E -> 00000628 0000062E 0000FC9F -> 00000628 00000645 0000FCA0 -> 00000628 00000647 0000FCA1 -> 0000062A 0000062C 0000FCA2 -> 0000062A 0000062D 0000FCA3 -> 0000062A 0000062E 0000FCA4 -> 0000062A 00000645 0000FCA5 -> 0000062A 00000647 0000FCA6 -> 0000062B 00000645 0000FCA7 -> 0000062C 0000062D 0000FCA8 -> 0000062C 00000645 0000FCA9 -> 0000062D 0000062C 0000FCAA -> 0000062D 00000645 0000FCAB -> 0000062E 0000062C 0000FCAC -> 0000062E 00000645 0000FCAD -> 00000633 0000062C 0000FCAE -> 00000633 0000062D 0000FCAF -> 00000633 0000062E 0000FCB0 -> 00000633 00000645 0000FCB1 -> 00000635 0000062D 0000FCB2 -> 00000635 0000062E 0000FCB3 -> 00000635 00000645 0000FCB4 -> 00000636 0000062C 0000FCB5 -> 00000636 0000062D 0000FCB6 -> 00000636 0000062E 0000FCB7 -> 00000636 00000645 0000FCB8 -> 00000637 0000062D 0000FCB9 -> 00000638 00000645 0000FCBA -> 00000639 0000062C 0000FCBB -> 00000639 00000645 0000FCBC -> 0000063A 0000062C 0000FCBD -> 0000063A 00000645 0000FCBE -> 00000641 0000062C 0000FCBF -> 00000641 0000062D 0000FCC0 -> 00000641 0000062E 0000FCC1 -> 00000641 00000645 0000FCC2 -> 00000642 0000062D 0000FCC3 -> 00000642 00000645 0000FCC4 -> 00000643 0000062C 0000FCC5 -> 00000643 0000062D 0000FCC6 -> 00000643 0000062E 0000FCC7 -> 00000643 00000644 0000FCC8 -> 00000643 00000645 0000FCC9 -> 00000644 0000062C 0000FCCA -> 00000644 0000062D 0000FCCB -> 00000644 0000062E 0000FCCC -> 00000644 00000645 0000FCCD -> 00000644 00000647 0000FCCE -> 00000645 0000062C 0000FCCF -> 00000645 0000062D 0000FCD0 -> 00000645 0000062E 0000FCD1 -> 00000645 00000645 0000FCD2 -> 00000646 0000062C 0000FCD3 -> 00000646 0000062D 0000FCD4 -> 00000646 0000062E 0000FCD5 -> 00000646 00000645 0000FCD6 -> 00000646 00000647 0000FCD7 -> 00000647 0000062C 0000FCD8 -> 00000647 00000645 0000FCD9 -> 00000647 00000670 0000FCDA -> 0000064A 0000062C 0000FCDB -> 0000064A 0000062D 0000FCDC -> 0000064A 0000062E 0000FCDD -> 0000064A 00000645 0000FCDE -> 0000064A 00000647 0000FCDF -> 00000626 00000645 0000FCE0 -> 00000626 00000647 0000FCE1 -> 00000628 00000645 0000FCE2 -> 00000628 00000647 0000FCE3 -> 0000062A 00000645 0000FCE4 -> 0000062A 00000647 0000FCE5 -> 0000062B 00000645 0000FCE6 -> 0000062B 00000647 0000FCE7 -> 00000633 00000645 0000FCE8 -> 00000633 00000647 0000FCE9 -> 00000634 00000645 0000FCEA -> 00000634 00000647 0000FCEB -> 00000643 00000644 0000FCEC -> 00000643 00000645 0000FCED -> 00000644 00000645 0000FCEE -> 00000646 00000645 0000FCEF -> 00000646 00000647 0000FCF0 -> 0000064A 00000645 0000FCF1 -> 0000064A 00000647 0000FCF2 -> 00000640 0000064E 00000651 0000FCF3 -> 00000640 0000064F 00000651 0000FCF4 -> 00000640 00000650 00000651 0000FCF5 -> 00000637 00000649 0000FCF6 -> 00000637 0000064A 0000FCF7 -> 00000639 00000649 0000FCF8 -> 00000639 0000064A 0000FCF9 -> 0000063A 00000649 0000FCFA -> 0000063A 0000064A 0000FCFB -> 00000633 00000649 0000FCFC -> 00000633 0000064A 0000FCFD -> 00000634 00000649 0000FCFE -> 00000634 0000064A 0000FCFF -> 0000062D 00000649 0000FD00 -> 0000062D 0000064A 0000FD01 -> 0000062C 00000649 0000FD02 -> 0000062C 0000064A 0000FD03 -> 0000062E 00000649 0000FD04 -> 0000062E 0000064A 0000FD05 -> 00000635 00000649 0000FD06 -> 00000635 0000064A 0000FD07 -> 00000636 00000649 0000FD08 -> 00000636 0000064A 0000FD09 -> 00000634 0000062C 0000FD0A -> 00000634 0000062D 0000FD0B -> 00000634 0000062E 0000FD0C -> 00000634 00000645 0000FD0D -> 00000634 00000631 0000FD0E -> 00000633 00000631 0000FD0F -> 00000635 00000631 0000FD10 -> 00000636 00000631 0000FD11 -> 00000637 00000649 0000FD12 -> 00000637 0000064A 0000FD13 -> 00000639 00000649 0000FD14 -> 00000639 0000064A 0000FD15 -> 0000063A 00000649 0000FD16 -> 0000063A 0000064A 0000FD17 -> 00000633 00000649 0000FD18 -> 00000633 0000064A 0000FD19 -> 00000634 00000649 0000FD1A -> 00000634 0000064A 0000FD1B -> 0000062D 00000649 0000FD1C -> 0000062D 0000064A 0000FD1D -> 0000062C 00000649 0000FD1E -> 0000062C 0000064A 0000FD1F -> 0000062E 00000649 0000FD20 -> 0000062E 0000064A 0000FD21 -> 00000635 00000649 0000FD22 -> 00000635 0000064A 0000FD23 -> 00000636 00000649 0000FD24 -> 00000636 0000064A 0000FD25 -> 00000634 0000062C 0000FD26 -> 00000634 0000062D 0000FD27 -> 00000634 0000062E 0000FD28 -> 00000634 00000645 0000FD29 -> 00000634 00000631 0000FD2A -> 00000633 00000631 0000FD2B -> 00000635 00000631 0000FD2C -> 00000636 00000631 0000FD2D -> 00000634 0000062C 0000FD2E -> 00000634 0000062D 0000FD2F -> 00000634 0000062E 0000FD30 -> 00000634 00000645 0000FD31 -> 00000633 00000647 0000FD32 -> 00000634 00000647 0000FD33 -> 00000637 00000645 0000FD34 -> 00000633 0000062C 0000FD35 -> 00000633 0000062D 0000FD36 -> 00000633 0000062E 0000FD37 -> 00000634 0000062C 0000FD38 -> 00000634 0000062D 0000FD39 -> 00000634 0000062E 0000FD3A -> 00000637 00000645 0000FD3B -> 00000638 00000645 0000FD3C -> 00000627 0000064B 0000FD3D -> 00000627 0000064B 0000FD50 -> 0000062A 0000062C 00000645 0000FD51 -> 0000062A 0000062D 0000062C 0000FD52 -> 0000062A 0000062D 0000062C 0000FD53 -> 0000062A 0000062D 00000645 0000FD54 -> 0000062A 0000062E 00000645 0000FD55 -> 0000062A 00000645 0000062C 0000FD56 -> 0000062A 00000645 0000062D 0000FD57 -> 0000062A 00000645 0000062E 0000FD58 -> 0000062C 00000645 0000062D 0000FD59 -> 0000062C 00000645 0000062D 0000FD5A -> 0000062D 00000645 0000064A 0000FD5B -> 0000062D 00000645 00000649 0000FD5C -> 00000633 0000062D 0000062C 0000FD5D -> 00000633 0000062C 0000062D 0000FD5E -> 00000633 0000062C 00000649 0000FD5F -> 00000633 00000645 0000062D 0000FD60 -> 00000633 00000645 0000062D 0000FD61 -> 00000633 00000645 0000062C 0000FD62 -> 00000633 00000645 00000645 0000FD63 -> 00000633 00000645 00000645 0000FD64 -> 00000635 0000062D 0000062D 0000FD65 -> 00000635 0000062D 0000062D 0000FD66 -> 00000635 00000645 00000645 0000FD67 -> 00000634 0000062D 00000645 0000FD68 -> 00000634 0000062D 00000645 0000FD69 -> 00000634 0000062C 0000064A 0000FD6A -> 00000634 00000645 0000062E 0000FD6B -> 00000634 00000645 0000062E 0000FD6C -> 00000634 00000645 00000645 0000FD6D -> 00000634 00000645 00000645 0000FD6E -> 00000636 0000062D 00000649 0000FD6F -> 00000636 0000062E 00000645 0000FD70 -> 00000636 0000062E 00000645 0000FD71 -> 00000637 00000645 0000062D 0000FD72 -> 00000637 00000645 0000062D 0000FD73 -> 00000637 00000645 00000645 0000FD74 -> 00000637 00000645 0000064A 0000FD75 -> 00000639 0000062C 00000645 0000FD76 -> 00000639 00000645 00000645 0000FD77 -> 00000639 00000645 00000645 0000FD78 -> 00000639 00000645 00000649 0000FD79 -> 0000063A 00000645 00000645 0000FD7A -> 0000063A 00000645 0000064A 0000FD7B -> 0000063A 00000645 00000649 0000FD7C -> 00000641 0000062E 00000645 0000FD7D -> 00000641 0000062E 00000645 0000FD7E -> 00000642 00000645 0000062D 0000FD7F -> 00000642 00000645 00000645 0000FD80 -> 00000644 0000062D 00000645 0000FD81 -> 00000644 0000062D 0000064A 0000FD82 -> 00000644 0000062D 00000649 0000FD83 -> 00000644 0000062C 0000062C 0000FD84 -> 00000644 0000062C 0000062C 0000FD85 -> 00000644 0000062E 00000645 0000FD86 -> 00000644 0000062E 00000645 0000FD87 -> 00000644 00000645 0000062D 0000FD88 -> 00000644 00000645 0000062D 0000FD89 -> 00000645 0000062D 0000062C 0000FD8A -> 00000645 0000062D 00000645 0000FD8B -> 00000645 0000062D 0000064A 0000FD8C -> 00000645 0000062C 0000062D 0000FD8D -> 00000645 0000062C 00000645 0000FD8E -> 00000645 0000062E 0000062C 0000FD8F -> 00000645 0000062E 00000645 0000FD92 -> 00000645 0000062C 0000062E 0000FD93 -> 00000647 00000645 0000062C 0000FD94 -> 00000647 00000645 00000645 0000FD95 -> 00000646 0000062D 00000645 0000FD96 -> 00000646 0000062D 00000649 0000FD97 -> 00000646 0000062C 00000645 0000FD98 -> 00000646 0000062C 00000645 0000FD99 -> 00000646 0000062C 00000649 0000FD9A -> 00000646 00000645 0000064A 0000FD9B -> 00000646 00000645 00000649 0000FD9C -> 0000064A 00000645 00000645 0000FD9D -> 0000064A 00000645 00000645 0000FD9E -> 00000628 0000062E 0000064A 0000FD9F -> 0000062A 0000062C 0000064A 0000FDA0 -> 0000062A 0000062C 00000649 0000FDA1 -> 0000062A 0000062E 0000064A 0000FDA2 -> 0000062A 0000062E 00000649 0000FDA3 -> 0000062A 00000645 0000064A 0000FDA4 -> 0000062A 00000645 00000649 0000FDA5 -> 0000062C 00000645 0000064A 0000FDA6 -> 0000062C 0000062D 00000649 0000FDA7 -> 0000062C 00000645 00000649 0000FDA8 -> 00000633 0000062E 00000649 0000FDA9 -> 00000635 0000062D 0000064A 0000FDAA -> 00000634 0000062D 0000064A 0000FDAB -> 00000636 0000062D 0000064A 0000FDAC -> 00000644 0000062C 0000064A 0000FDAD -> 00000644 00000645 0000064A 0000FDAE -> 0000064A 0000062D 0000064A 0000FDAF -> 0000064A 0000062C 0000064A 0000FDB0 -> 0000064A 00000645 0000064A 0000FDB1 -> 00000645 00000645 0000064A 0000FDB2 -> 00000642 00000645 0000064A 0000FDB3 -> 00000646 0000062D 0000064A 0000FDB4 -> 00000642 00000645 0000062D 0000FDB5 -> 00000644 0000062D 00000645 0000FDB6 -> 00000639 00000645 0000064A 0000FDB7 -> 00000643 00000645 0000064A 0000FDB8 -> 00000646 0000062C 0000062D 0000FDB9 -> 00000645 0000062E 0000064A 0000FDBA -> 00000644 0000062C 00000645 0000FDBB -> 00000643 00000645 00000645 0000FDBC -> 00000644 0000062C 00000645 0000FDBD -> 00000646 0000062C 0000062D 0000FDBE -> 0000062C 0000062D 0000064A 0000FDBF -> 0000062D 0000062C 0000064A 0000FDC0 -> 00000645 0000062C 0000064A 0000FDC1 -> 00000641 00000645 0000064A 0000FDC2 -> 00000628 0000062D 0000064A 0000FDC3 -> 00000643 00000645 00000645 0000FDC4 -> 00000639 0000062C 00000645 0000FDC5 -> 00000635 00000645 00000645 0000FDC6 -> 00000633 0000062E 0000064A 0000FDC7 -> 00000646 0000062C 0000064A 0000FDF0 -> 00000635 00000644 000006D2 0000FDF1 -> 00000642 00000644 000006D2 0000FDF2 -> 00000627 00000644 00000644 00000647 0000FDF3 -> 00000627 00000643 00000628 00000631 0000FDF4 -> 00000645 0000062D 00000645 0000062F 0000FDF5 -> 00000635 00000644 00000639 00000645 0000FDF6 -> 00000631 00000633 00000648 00000644 0000FDF7 -> 00000639 00000644 0000064A 00000647 0000FDF8 -> 00000648 00000633 00000644 00000645 0000FDF9 -> 00000635 00000644 00000649 0000FDFA -> 00000635 00000644 00000649 00000020 00000627 00000644 00000644 00000647 00000020 00000639 00000644 0000064A 00000647 00000020 00000648 00000633 00000644 00000645 0000FDFB -> 0000062C 00000644 00000020 0000062C 00000644 00000627 00000644 00000647 0000FDFC -> 00000631 000006CC 00000627 00000644 0000FE70 -> 00000020 0000064B # # From: Karl Koehler # Concerning tashkeel: I would like text with it to not look garbled. # Using shaped tashkeel would is nicer. # Commented by gaspar - duplicate # FE70 -> 064B # FE71 -> 064B # FE72 -> 064C # FE74 -> 064D # FE76 -> 064E # FE77 -> 064E # FE78 -> 064F # FE79 -> 064F # FE7A -> 0650 # FE7B -> 0650 # FE7C -> 0651 # FE7D -> 0651 # FE7E -> 0652 # FE7F -> 0652 # END # # Miikka-Markus Alhonen # Syriac: The only obligatory ligature in all script styles: # Rish + Seyame (U+072A U+0308) # A0001001 -> 0000072A 00000308 A0004001 -> 0000072A 00000308 # # Kaf + Alif and Kaf + Lam should have a presentation form as # it is used in Urdu nastaliq.ttf. A0001002 -> 000006A9 0000200D 00000627 A0004002 -> 000006A9 0000200D 00000627 A0001003 -> 000006A9 0000200D 00000644 A0002003 -> 000006A9 0000200D 00000644 A0003003 -> 000006A9 0000200D 00000644 A0004003 -> 000006A9 0000200D 00000644 # 0000FE71 -> 00000640 0000064B 0000FE72 -> 00000020 0000064C 0000FE74 -> 00000020 0000064D 0000FE76 -> 00000020 0000064E 0000FE77 -> 00000640 0000064E 0000FE78 -> 00000020 0000064F 0000FE79 -> 00000640 0000064F 0000FE7A -> 00000020 00000650 0000FE7B -> 00000640 00000650 0000FE7C -> 00000020 00000651 0000FE7D -> 00000640 00000651 0000FE7E -> 00000020 00000652 0000FE7F -> 00000640 00000652 0000FE80 -> 00000621 0000FE81 -> 00000622 0000FE82 -> 00000622 0000FE83 -> 00000623 0000FE84 -> 00000623 0000FE85 -> 00000624 0000FE86 -> 00000624 0000FE87 -> 00000625 0000FE88 -> 00000625 0000FE89 -> 00000626 0000FE8A -> 00000626 0000FE8B -> 00000626 0000FE8C -> 00000626 0000FE8D -> 00000627 0000FE8E -> 00000627 0000FE8F -> 00000628 0000FE90 -> 00000628 0000FE91 -> 00000628 0000FE92 -> 00000628 0000FE93 -> 00000629 0000FE94 -> 00000629 0000FE95 -> 0000062A 0000FE96 -> 0000062A 0000FE97 -> 0000062A 0000FE98 -> 0000062A 0000FE99 -> 0000062B 0000FE9A -> 0000062B 0000FE9B -> 0000062B 0000FE9C -> 0000062B 0000FE9D -> 0000062C 0000FE9E -> 0000062C 0000FE9F -> 0000062C 0000FEA0 -> 0000062C 0000FEA1 -> 0000062D 0000FEA2 -> 0000062D 0000FEA3 -> 0000062D 0000FEA4 -> 0000062D 0000FEA5 -> 0000062E 0000FEA6 -> 0000062E 0000FEA7 -> 0000062E 0000FEA8 -> 0000062E 0000FEA9 -> 0000062F 0000FEAA -> 0000062F 0000FEAB -> 00000630 0000FEAC -> 00000630 0000FEAD -> 00000631 0000FEAE -> 00000631 0000FEAF -> 00000632 0000FEB0 -> 00000632 0000FEB1 -> 00000633 0000FEB2 -> 00000633 0000FEB3 -> 00000633 0000FEB4 -> 00000633 0000FEB5 -> 00000634 0000FEB6 -> 00000634 0000FEB7 -> 00000634 0000FEB8 -> 00000634 0000FEB9 -> 00000635 0000FEBA -> 00000635 0000FEBB -> 00000635 0000FEBC -> 00000635 0000FEBD -> 00000636 0000FEBE -> 00000636 0000FEBF -> 00000636 0000FEC0 -> 00000636 0000FEC1 -> 00000637 0000FEC2 -> 00000637 0000FEC3 -> 00000637 0000FEC4 -> 00000637 0000FEC5 -> 00000638 0000FEC6 -> 00000638 0000FEC7 -> 00000638 0000FEC8 -> 00000638 0000FEC9 -> 00000639 0000FECA -> 00000639 0000FECB -> 00000639 0000FECC -> 00000639 0000FECD -> 0000063A 0000FECE -> 0000063A 0000FECF -> 0000063A 0000FED0 -> 0000063A 0000FED1 -> 00000641 0000FED2 -> 00000641 0000FED3 -> 00000641 0000FED4 -> 00000641 0000FED5 -> 00000642 0000FED6 -> 00000642 0000FED7 -> 00000642 0000FED8 -> 00000642 0000FED9 -> 00000643 0000FEDA -> 00000643 0000FEDB -> 00000643 0000FEDC -> 00000643 0000FEDD -> 00000644 0000FEDE -> 00000644 0000FEDF -> 00000644 0000FEE0 -> 00000644 0000FEE1 -> 00000645 0000FEE2 -> 00000645 0000FEE3 -> 00000645 0000FEE4 -> 00000645 0000FEE5 -> 00000646 0000FEE6 -> 00000646 0000FEE7 -> 00000646 0000FEE8 -> 00000646 0000FEE9 -> 00000647 0000FEEA -> 00000647 0000FEEB -> 00000647 0000FEEC -> 00000647 0000FEED -> 00000648 0000FEEE -> 00000648 0000FEEF -> 00000649 0000FEF0 -> 00000649 0000FEF1 -> 0000064A 0000FEF2 -> 0000064A 0000FEF3 -> 0000064A 0000FEF4 -> 0000064A 0000FEF5 -> 00000644 00000622 0000FEF6 -> 00000644 00000622 0000FEF7 -> 00000644 00000623 0000FEF8 -> 00000644 00000623 0000FEF9 -> 00000644 00000625 0000FEFA -> 00000644 00000625 0000FEFB -> 00000644 00000627 0000FEFC -> 00000644 00000627 A000166E -> 0000066E A000166F -> 0000066F A0001672 -> 00000672 A0001673 -> 00000673 A0001675 -> 00000675 A0001676 -> 00000676 A0001678 -> 00000678 A000167C -> 0000067C A000167D -> 0000067D A0001681 -> 00000681 A0001682 -> 00000682 A0001685 -> 00000685 A0001689 -> 00000689 A000168A -> 0000068A A000168B -> 0000068B A000168F -> 0000068F A0001690 -> 00000690 A0001692 -> 00000692 A0001693 -> 00000693 A0001694 -> 00000694 A0001695 -> 00000695 A0001696 -> 00000696 A0001697 -> 00000697 A0001699 -> 00000699 A000169A -> 0000069A A000169B -> 0000069B A000169C -> 0000069C A000169D -> 0000069D A000169E -> 0000069E A000169F -> 0000069F A00016A0 -> 000006A0 A00016A1 -> 000006A1 A00016A2 -> 000006A2 A00016A3 -> 000006A3 A00016A5 -> 000006A5 A00016A7 -> 000006A7 A00016A8 -> 000006A8 A00016AA -> 000006AA A00016AB -> 000006AB A00016AC -> 000006AC A00016AE -> 000006AE A00016B0 -> 000006B0 A00016B2 -> 000006B2 A00016B4 -> 000006B4 A00016B5 -> 000006B5 A00016B6 -> 000006B6 A00016B7 -> 000006B7 A00016B8 -> 000006B8 A00016B9 -> 000006B9 A00016BC -> 000006BC A00016BD -> 000006BD A00016BF -> 000006BF A00016C2 -> 000006C2 A00016C3 -> 000006C3 A00016C4 -> 000006C4 A00016CA -> 000006CA A00016CD -> 000006CD A00016CE -> 000006CE A00016CF -> 000006CF A00016D1 -> 000006D1 A00016D5 -> 000006D5 A00016FA -> 000006FA A00016FB -> 000006FB A00016FC -> 000006FC A0001710 -> 00000710 A0001712 -> 00000712 A0001713 -> 00000713 A0001714 -> 00000714 A0001715 -> 00000715 A0001716 -> 00000716 A0001717 -> 00000717 A0001718 -> 00000718 A0001719 -> 00000719 A000171A -> 0000071A A000171B -> 0000071B A000171C -> 0000071C A000171D -> 0000071D A000171E -> 0000071E A000171F -> 0000071F A0001720 -> 00000720 A0001721 -> 00000721 A0001722 -> 00000722 A0001723 -> 00000723 A0001724 -> 00000724 A0001725 -> 00000725 A0001726 -> 00000726 A0001727 -> 00000727 A0001728 -> 00000728 A0001729 -> 00000729 A000172A -> 0000072A A000172B -> 0000072B A000172C -> 0000072C A000266E -> 0000066E A000266F -> 0000066F A0002678 -> 00000678 A000267C -> 0000067C A000267D -> 0000067D A0002681 -> 00000681 A0002682 -> 00000682 A0002685 -> 00000685 A000269A -> 0000069A A000269B -> 0000069B A000269C -> 0000069C A000269D -> 0000069D A000269E -> 0000069E A000269F -> 0000069F A00026A0 -> 000006A0 A00026A1 -> 000006A1 A00026A2 -> 000006A2 A00026A3 -> 000006A3 A00026A5 -> 000006A5 A00026A7 -> 000006A7 A00026A8 -> 000006A8 A00026AA -> 000006AA A00026AB -> 000006AB A00026AC -> 000006AC A00026AE -> 000006AE A00026B0 -> 000006B0 A00026B2 -> 000006B2 A00026B4 -> 000006B4 A00026B5 -> 000006B5 A00026B6 -> 000006B6 A00026B7 -> 000006B7 A00026B8 -> 000006B8 A00026B9 -> 000006B9 A00026BA -> 000006BA A00026BC -> 000006BC A00026BD -> 000006BD A00026BF -> 000006BF A00026CE -> 000006CE A00026D1 -> 000006D1 A00026FA -> 000006FA A00026FB -> 000006FB A00026FC -> 000006FC A0002712 -> 00000712 A0002713 -> 00000713 A0002714 -> 00000714 A000271A -> 0000071A A000271B -> 0000071B A000271C -> 0000071C A000271D -> 0000071D A000271F -> 0000071F A0002720 -> 00000720 A0002721 -> 00000721 A0002722 -> 00000722 A0002723 -> 00000723 A0002724 -> 00000724 A0002725 -> 00000725 A0002726 -> 00000726 A0002727 -> 00000727 A0002729 -> 00000729 A000272B -> 0000072B A000366E -> 0000066E A000366F -> 0000066F A0003678 -> 00000678 A000367C -> 0000067C A000367D -> 0000067D A0003681 -> 00000681 A0003682 -> 00000682 A0003685 -> 00000685 A000369A -> 0000069A A000369B -> 0000069B A000369C -> 0000069C A000369D -> 0000069D A000369E -> 0000069E A000369F -> 0000069F A00036A0 -> 000006A0 A00036A1 -> 000006A1 A00036A2 -> 000006A2 A00036A3 -> 000006A3 A00036A5 -> 000006A5 A00036A7 -> 000006A7 A00036A8 -> 000006A8 A00036AA -> 000006AA A00036AB -> 000006AB A00036AC -> 000006AC A00036AE -> 000006AE A00036B0 -> 000006B0 A00036B2 -> 000006B2 A00036B4 -> 000006B4 A00036B5 -> 000006B5 A00036B6 -> 000006B6 A00036B7 -> 000006B7 A00036B8 -> 000006B8 A00036B9 -> 000006B9 A00036BA -> 000006BA A00036BC -> 000006BC A00036BD -> 000006BD A00036BF -> 000006BF A00036CE -> 000006CE A00036D1 -> 000006D1 A00036FA -> 000006FA A00036FB -> 000006FB A00036FC -> 000006FC A0003712 -> 00000712 A0003713 -> 00000713 A0003714 -> 00000714 A000371A -> 0000071A A000371B -> 0000071B A000371C -> 0000071C A000371D -> 0000071D A000371F -> 0000071F A0003720 -> 00000720 A0003721 -> 00000721 A0003722 -> 00000722 A0003723 -> 00000723 A0003724 -> 00000724 A0003725 -> 00000725 A0003726 -> 00000726 A0003727 -> 00000727 A0003729 -> 00000729 A000372B -> 0000072B A000466E -> 0000066E A000466F -> 0000066F A0004672 -> 00000672 A0004673 -> 00000673 A0004675 -> 00000675 A0004676 -> 00000676 A0004677 -> 00000677 A0004678 -> 00000678 A000467C -> 0000067C A000467D -> 0000067D A0004681 -> 00000681 A0004682 -> 00000682 A0004685 -> 00000685 A0004689 -> 00000689 A000468A -> 0000068A A000468B -> 0000068B A000468F -> 0000068F A0004690 -> 00000690 A0004692 -> 00000692 A0004693 -> 00000693 A0004694 -> 00000694 A0004695 -> 00000695 A0004696 -> 00000696 A0004697 -> 00000697 A0004699 -> 00000699 A000469A -> 0000069A A000469B -> 0000069B A000469C -> 0000069C A000469D -> 0000069D A000469E -> 0000069E A000469F -> 0000069F A00046A0 -> 000006A0 A00046A1 -> 000006A1 A00046A2 -> 000006A2 A00046A3 -> 000006A3 A00046A5 -> 000006A5 A00046A7 -> 000006A7 A00046A8 -> 000006A8 A00046AA -> 000006AA A00046AB -> 000006AB A00046AC -> 000006AC A00046AE -> 000006AE A00046B0 -> 000006B0 A00046B2 -> 000006B2 A00046B4 -> 000006B4 A00046B5 -> 000006B5 A00046B6 -> 000006B6 A00046B7 -> 000006B7 A00046B8 -> 000006B8 A00046B9 -> 000006B9 A00046BC -> 000006BC A00046BD -> 000006BD A00046BF -> 000006BF A00046C2 -> 000006C2 A00046C3 -> 000006C3 A00046C4 -> 000006C4 A00046CA -> 000006CA A00046CD -> 000006CD A00046CE -> 000006CE A00046CF -> 000006CF A00046D1 -> 000006D1 A00046D5 -> 000006D5 A00046FA -> 000006FA A00046FB -> 000006FB A00046FC -> 000006FC A0004710 -> 00000710 A0004712 -> 00000712 A0004713 -> 00000713 A0004714 -> 00000714 A0004715 -> 00000715 A0004716 -> 00000716 A0004717 -> 00000717 A0004718 -> 00000718 A0004719 -> 00000719 A000471A -> 0000071A A000471B -> 0000071B A000471C -> 0000071C A000471D -> 0000071D A000471E -> 0000071E A000471F -> 0000071F A0004720 -> 00000720 A0004721 -> 00000721 A0004722 -> 00000722 A0004723 -> 00000723 A0004724 -> 00000724 A0004725 -> 00000725 A0004726 -> 00000726 A0004727 -> 00000727 A0004728 -> 00000728 A0004729 -> 00000729 A000472A -> 0000072A A000472B -> 0000072B A000472C -> 0000072C # End ./mytool/mys/TIS_620.mys0000644000175000017500000001470407574146574015001 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=TIS_620 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000002 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0E01 A2 -> 0E02 A3 -> 0E03 A4 -> 0E04 A5 -> 0E05 A6 -> 0E06 A7 -> 0E07 A8 -> 0E08 A9 -> 0E09 AA -> 0E0A AB -> 0E0B AC -> 0E0C AD -> 0E0D AE -> 0E0E AF -> 0E0F B0 -> 0E10 B1 -> 0E11 B2 -> 0E12 B3 -> 0E13 B4 -> 0E14 B5 -> 0E15 B6 -> 0E16 B7 -> 0E17 B8 -> 0E18 B9 -> 0E19 BA -> 0E1A BB -> 0E1B BC -> 0E1C BD -> 0E1D BE -> 0E1E BF -> 0E1F C0 -> 0E20 C1 -> 0E21 C2 -> 0E22 C3 -> 0E23 C4 -> 0E24 C5 -> 0E25 C6 -> 0E26 C7 -> 0E27 C8 -> 0E28 C9 -> 0E29 CA -> 0E2A CB -> 0E2B CC -> 0E2C CD -> 0E2D CE -> 0E2E CF -> 0E2F D0 -> 0E30 D1 -> 0E31 D2 -> 0E32 D3 -> 0E33 D4 -> 0E34 D5 -> 0E35 D6 -> 0E36 D7 -> 0E37 D8 -> 0E38 D9 -> 0E39 DA -> 0E3A DF -> 0E3F E0 -> 0E40 E1 -> 0E41 E2 -> 0E42 E3 -> 0E43 E4 -> 0E44 E5 -> 0E45 E6 -> 0E46 E7 -> 0E47 E8 -> 0E48 E9 -> 0E49 EA -> 0E4A EB -> 0E4B EC -> 0E4C ED -> 0E4D EE -> 0E4E EF -> 0E4F F0 -> 0E50 F1 -> 0E51 F2 -> 0E52 F3 -> 0E53 F4 -> 0E54 F5 -> 0E55 F6 -> 0E56 F7 -> 0E57 F8 -> 0E58 F9 -> 0E59 FA -> 0E5A FB -> 0E5B #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0001 -> 01 0002 -> 02 0003 -> 03 0004 -> 04 0005 -> 05 0006 -> 06 0007 -> 07 0008 -> 08 0009 -> 09 000A -> 0A 000B -> 0B 000C -> 0C 000D -> 0D 000E -> 0E 000F -> 0F 0010 -> 10 0011 -> 11 0012 -> 12 0013 -> 13 0014 -> 14 0015 -> 15 0016 -> 16 0017 -> 17 0018 -> 18 0019 -> 19 001A -> 1A 001B -> 1B 001C -> 1C 001D -> 1D 001E -> 1E 001F -> 1F 0020 -> 20 0021 -> '! 0022 -> '" 0023 -> 23 0024 -> '$ 0025 -> '% 0026 -> '& 0027 -> '' 0028 -> '( 0029 -> ') 002A -> '* 002B -> '+ 002C -> ', 002D -> '- 002E -> '. 002F -> '/ 0030 -> '0 0031 -> '1 0032 -> '2 0033 -> '3 0034 -> '4 0035 -> '5 0036 -> '6 0037 -> '7 0038 -> '8 0039 -> '9 003A -> ': 003B -> '; 003C -> '< 003D -> '= 003E -> '> 003F -> '? 0040 -> '@ 0041 -> 'A 0042 -> 'B 0043 -> 'C 0044 -> 'D 0045 -> 'E 0046 -> 'F 0047 -> 'G 0048 -> 'H 0049 -> 'I 004A -> 'J 004B -> 'K 004C -> 'L 004D -> 'M 004E -> 'N 004F -> 'O 0050 -> 'P 0051 -> 'Q 0052 -> 'R 0053 -> 'S 0054 -> 'T 0055 -> 'U 0056 -> 'V 0057 -> 'W 0058 -> 'X 0059 -> 'Y 005A -> 'Z 005B -> '[ 005C -> '\ 005D -> '] 005E -> '^ 005F -> '_ 0060 -> '` 0061 -> 'a 0062 -> 'b 0063 -> 'c 0064 -> 'd 0065 -> 'e 0066 -> 'f 0067 -> 'g 0068 -> 'h 0069 -> 'i 006A -> 'j 006B -> 'k 006C -> 'l 006D -> 'm 006E -> 'n 006F -> 'o 0070 -> 'p 0071 -> 'q 0072 -> 'r 0073 -> 's 0074 -> 't 0075 -> 'u 0076 -> 'v 0077 -> 'w 0078 -> 'x 0079 -> 'y 007A -> 7A 007B -> 7B 007C -> 7C 007D -> 7D 007E -> 7E 007F -> 7F 0E01 -> A1 0E02 -> A2 0E03 -> A3 0E04 -> A4 0E05 -> A5 0E06 -> A6 0E07 -> A7 0E08 -> A8 0E09 -> A9 0E0A -> AA 0E0B -> AB 0E0C -> AC 0E0D -> AD 0E0E -> AE 0E0F -> AF 0E10 -> B0 0E11 -> B1 0E12 -> B2 0E13 -> B3 0E14 -> B4 0E15 -> B5 0E16 -> B6 0E17 -> B7 0E18 -> B8 0E19 -> B9 0E1A -> BA 0E1B -> BB 0E1C -> BC 0E1D -> BD 0E1E -> BE 0E1F -> BF 0E20 -> C0 0E21 -> C1 0E22 -> C2 0E23 -> C3 0E24 -> C4 0E25 -> C5 0E26 -> C6 0E27 -> C7 0E28 -> C8 0E29 -> C9 0E2A -> CA 0E2B -> CB 0E2C -> CC 0E2D -> CD 0E2E -> CE 0E2F -> CF 0E30 -> D0 0E31 -> D1 0E32 -> D2 0E33 -> D3 0E34 -> D4 0E35 -> D5 0E36 -> D6 0E37 -> D7 0E38 -> D8 0E39 -> D9 0E3A -> DA 0E3F -> DF 0E40 -> E0 0E41 -> E1 0E42 -> E2 0E43 -> E3 0E44 -> E4 0E45 -> E5 0E46 -> E6 0E47 -> E7 0E48 -> E8 0E49 -> E9 0E4A -> EA 0E4B -> EB 0E4C -> EC 0E4D -> ED 0E4E -> EE 0E4F -> EF 0E50 -> F0 0E51 -> F1 0E52 -> F2 0E53 -> F3 0E54 -> F4 0E55 -> F5 0E56 -> F6 0E57 -> F7 0E58 -> F8 0E59 -> F9 0E5A -> FA 0E5B -> FB ./mytool/mys/IS_TM.mys0000644000175000017500000000715107574146574014664 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-TM COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0B81 A2 -> 0B82 A3 -> 0B83 A4 -> 0B85 A5 -> 0B86 A6 -> 0B87 A7 -> 0B88 A8 -> 0B89 A9 -> 0B8A AA -> 0B8B A6 E9 -> 0B8C AE -> 0B8D AB -> 0B8E AC -> 0B8F AD -> 0B90 B2 -> 0B91 AF -> 0B92 B0 -> 0B93 B1 -> 0B94 B3 -> 0B95 B4 -> 0B96 B5 -> 0B97 B6 -> 0B98 B7 -> 0B99 B8 -> 0B9A B9 -> 0B9B BA -> 0B9C BB -> 0B9D BC -> 0B9E BD -> 0B9F BE -> 0BA0 BF -> 0BA1 C0 -> 0BA2 C1 -> 0BA3 C2 -> 0BA4 C3 -> 0BA5 C4 -> 0BA6 C5 -> 0BA7 C6 -> 0BA8 C7 -> 0BA9 C8 -> 0BAA C9 -> 0BAB CA -> 0BAC CB -> 0BAD CC -> 0BAE CD -> 0BAF CF -> 0BB0 D0 -> 0BB1 D1 -> 0BB2 D2 -> 0BB3 D3 -> 0BB4 D4 -> 0BB5 D5 -> 0BB6 D6 -> 0BB7 D7 -> 0BB8 D8 -> 0BB9 E9 -> 0BBC EA E9 -> 0BBD DA -> 0BBE DB -> 0BBF DC -> 0BC0 DD -> 0BC1 DE -> 0BC2 DF -> 0BC3 DF E9 -> 0BC4 E3 -> 0BC5 E0 -> 0BC6 E1 -> 0BC7 E2 -> 0BC8 E7 -> 0BC9 E4 -> 0BCA E5 -> 0BCB E6 -> 0BCC E8 -> 0BCD E8 E8 -> 0BCD 200C E8 E9 -> 0BCD 200D A1 E9 -> 0BD0 B3 E9 -> 0BD8 B4 E9 -> 0BD9 B5 E9 -> 0BDA BA E9 -> 0BDB BF E9 -> 0BDC C0 E9 -> 0BDD C9 E9 -> 0BDE CE -> 0BDF AA E9 -> 0BE0 A7 E9 -> 0BE1 DB E9 -> 0BE2 DC E9 -> 0BE3 EA -> 0964 EA EA -> 0965 F1 -> 0BE6 F2 -> 0BE7 F3 -> 0BE8 F4 -> 0BE9 F5 -> 0BEA F6 -> 0BEB F7 -> 0BEC F8 -> 0BED F9 -> 0BEE FA -> 0BEF COMM=end of encoding ./mytool/mys/Unicode.mys0000644000175000017500000001504207574146574015335 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=Unicode.kmap COMM= COMM= Unicode input map for yudit # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=unicode ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 'U -> 0000 'u -> 0000 #--------------- NEW SECTION ------------- SECTION=digit1 ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 '0 -> 0000 '1 -> 1000 '2 -> 2000 '3 -> 3000 '4 -> 4000 '5 -> 5000 '6 -> 6000 '7 -> 7000 '8 -> 8000 '9 -> 9000 'A -> A000 'B -> B000 'C -> C000 'D -> D000 'E -> E000 'F -> F000 'a -> A000 'b -> B000 'c -> C000 'd -> D000 'e -> E000 'f -> F000 #--------------- NEW SECTION ------------- SECTION=digit2 ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 '0 -> 0000 '1 -> 0100 '2 -> 0200 '3 -> 0300 '4 -> 0400 '5 -> 0500 '6 -> 0600 '7 -> 0700 '8 -> 0800 '9 -> 0900 'A -> 0A00 'B -> 0B00 'C -> 0C00 'D -> 0D00 'E -> 0E00 'F -> 0F00 'a -> 0A00 'b -> 0B00 'c -> 0C00 'd -> 0D00 'e -> 0E00 'f -> 0F00 #--------------- NEW SECTION ------------- SECTION=digit3 ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 '0 -> 0000 '1 -> 0010 '2 -> 0020 '3 -> 0030 '4 -> 0040 '5 -> 0050 '6 -> 0060 '7 -> 0070 '8 -> 0080 '9 -> 0090 'A -> 00A0 'B -> 00B0 'C -> 00C0 'D -> 00D0 'E -> 00E0 'F -> 00F0 'a -> 00A0 'b -> 00B0 'c -> 00C0 'd -> 00D0 'e -> 00E0 'f -> 00F0 #--------------- NEW SECTION ------------- SECTION=digit4 ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 '0 -> 0000 '1 -> 0001 '2 -> 0002 '3 -> 0003 '4 -> 0004 '5 -> 0005 '6 -> 0006 '7 -> 0007 '8 -> 0008 '9 -> 0009 'A -> 000A 'B -> 000B 'C -> 000C 'D -> 000D 'E -> 000E 'F -> 000F 'a -> 000A 'b -> 000B 'c -> 000C 'd -> 000D 'e -> 000E 'f -> 000F #--------------- NEW SECTION ------------- SECTION=unicode ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0000 -> 'U 0000 -> 'u #--------------- NEW SECTION ------------- SECTION=digit1 ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0000 -> '0 1000 -> '1 2000 -> '2 3000 -> '3 4000 -> '4 5000 -> '5 6000 -> '6 7000 -> '7 8000 -> '8 9000 -> '9 A000 -> 'a A000 -> 'A B000 -> 'b B000 -> 'B C000 -> 'c C000 -> 'C D000 -> 'd D000 -> 'D E000 -> 'e E000 -> 'E F000 -> 'f F000 -> 'F #--------------- NEW SECTION ------------- SECTION=digit2 ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0000 -> '0 0100 -> '1 0200 -> '2 0300 -> '3 0400 -> '4 0500 -> '5 0600 -> '6 0700 -> '7 0800 -> '8 0900 -> '9 0A00 -> 'a 0A00 -> 'A 0B00 -> 'b 0B00 -> 'B 0C00 -> 'c 0C00 -> 'C 0D00 -> 'd 0D00 -> 'D 0E00 -> 'e 0E00 -> 'E 0F00 -> 'f 0F00 -> 'F #--------------- NEW SECTION ------------- SECTION=digit3 ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0000 -> '0 0010 -> '1 0020 -> '2 0030 -> '3 0040 -> '4 0050 -> '5 0060 -> '6 0070 -> '7 0080 -> '8 0090 -> '9 00A0 -> 'a 00A0 -> 'A 00B0 -> 'b 00B0 -> 'B 00C0 -> 'c 00C0 -> 'C 00D0 -> 'd 00D0 -> 'D 00E0 -> 'e 00E0 -> 'E 00F0 -> 'f 00F0 -> 'F #--------------- NEW SECTION ------------- SECTION=digit4 ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0000 -> '0 0001 -> '1 0002 -> '2 0003 -> '3 0004 -> '4 0005 -> '5 0006 -> '6 0007 -> '7 0008 -> '8 0009 -> '9 000A -> 'a 000A -> 'A 000B -> 'b 000B -> 'B 000C -> 'c 000C -> 'C 000D -> 'd 000D -> 'D 000E -> 'e 000E -> 'E 000F -> 'f 000F -> 'F ./mytool/mys/IS_OR.mys0000644000175000017500000000715207574146574014665 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-OR COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0B01 A2 -> 0B02 A3 -> 0B03 A4 -> 0B05 A5 -> 0B06 A6 -> 0B07 A7 -> 0B08 A8 -> 0B09 A9 -> 0B0A AA -> 0B0B A6 E9 -> 0B0C AE -> 0B0D AB -> 0B0E AC -> 0B0F AD -> 0B10 B2 -> 0B11 AF -> 0B12 B0 -> 0B13 B1 -> 0B14 B3 -> 0B15 B4 -> 0B16 B5 -> 0B17 B6 -> 0B18 B7 -> 0B19 B8 -> 0B1A B9 -> 0B1B BA -> 0B1C BB -> 0B1D BC -> 0B1E BD -> 0B1F BE -> 0B20 BF -> 0B21 C0 -> 0B22 C1 -> 0B23 C2 -> 0B24 C3 -> 0B25 C4 -> 0B26 C5 -> 0B27 C6 -> 0B28 C7 -> 0B29 C8 -> 0B2A C9 -> 0B2B CA -> 0B2C CB -> 0B2D CC -> 0B2E CD -> 0B2F CF -> 0B30 D0 -> 0B31 D1 -> 0B32 D2 -> 0B33 D3 -> 0B34 D4 -> 0B35 D5 -> 0B36 D6 -> 0B37 D7 -> 0B38 D8 -> 0B39 E9 -> 0B3C EA E9 -> 0B3D DA -> 0B3E DB -> 0B3F DC -> 0B40 DD -> 0B41 DE -> 0B42 DF -> 0B43 DF E9 -> 0B44 E3 -> 0B45 E0 -> 0B46 E1 -> 0B47 E2 -> 0B48 E7 -> 0B49 E4 -> 0B4A E5 -> 0B4B E6 -> 0B4C E8 -> 0B4D E8 E8 -> 0B4D 200C E8 E9 -> 0B4D 200D A1 E9 -> 0B50 B3 E9 -> 0B58 B4 E9 -> 0B59 B5 E9 -> 0B5A BA E9 -> 0B5B BF E9 -> 0B5C C0 E9 -> 0B5D C9 E9 -> 0B5E CE -> 0B5F AA E9 -> 0B60 A7 E9 -> 0B61 DB E9 -> 0B62 DC E9 -> 0B63 EA -> 0964 EA EA -> 0965 F1 -> 0B66 F2 -> 0B67 F3 -> 0B68 F4 -> 0B69 F5 -> 0B6A F6 -> 0B6B F7 -> 0B6C F8 -> 0B6D F9 -> 0B6E FA -> 0B6F COMM=end of encoding ./mytool/mys/IS_PJ.mys0000644000175000017500000000715207574146574014656 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-PB COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0A01 A2 -> 0A02 A3 -> 0A03 A4 -> 0A05 A5 -> 0A06 A6 -> 0A07 A7 -> 0A08 A8 -> 0A09 A9 -> 0A0A AA -> 0A0B A6 E9 -> 0A0C AE -> 0A0D AB -> 0A0E AC -> 0A0F AD -> 0A10 B2 -> 0A11 AF -> 0A12 B0 -> 0A13 B1 -> 0A14 B3 -> 0A15 B4 -> 0A16 B5 -> 0A17 B6 -> 0A18 B7 -> 0A19 B8 -> 0A1A B9 -> 0A1B BA -> 0A1C BB -> 0A1D BC -> 0A1E BD -> 0A1F BE -> 0A20 BF -> 0A21 C0 -> 0A22 C1 -> 0A23 C2 -> 0A24 C3 -> 0A25 C4 -> 0A26 C5 -> 0A27 C6 -> 0A28 C7 -> 0A29 C8 -> 0A2A C9 -> 0A2B CA -> 0A2C CB -> 0A2D CC -> 0A2E CD -> 0A2F CF -> 0A30 D0 -> 0A31 D1 -> 0A32 D2 -> 0A33 D3 -> 0A34 D4 -> 0A35 D5 -> 0A36 D6 -> 0A37 D7 -> 0A38 D8 -> 0A39 E9 -> 0A3C EA E9 -> 0A3D DA -> 0A3E DB -> 0A3F DC -> 0A40 DD -> 0A41 DE -> 0A42 DF -> 0A43 DF E9 -> 0A44 E3 -> 0A45 E0 -> 0A46 E1 -> 0A47 E2 -> 0A48 E7 -> 0A49 E4 -> 0A4A E5 -> 0A4B E6 -> 0A4C E8 -> 0A4D E8 E8 -> 0A4D 200C E8 E9 -> 0A4D 200D A1 E9 -> 0A50 B3 E9 -> 0A58 B4 E9 -> 0A59 B5 E9 -> 0A5A BA E9 -> 0A5B BF E9 -> 0A5C C0 E9 -> 0A5D C9 E9 -> 0A5E CE -> 0A5F AA E9 -> 0A60 A7 E9 -> 0A61 DB E9 -> 0A62 DC E9 -> 0A63 EA -> 0964 EA EA -> 0965 F1 -> 0A66 F2 -> 0A67 F3 -> 0A68 F4 -> 0A69 F5 -> 0A6A F6 -> 0A6B F7 -> 0A6C F8 -> 0A6D F9 -> 0A6E FA -> 0A6F COMM=end of encoding ./mytool/mys/IS_GJ.mys0000644000175000017500000000747107574146574014651 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=IISCII-GJ COMM=learning to make map Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0A81 A2 -> 0A82 A3 -> 0A83 A4 -> 0A85 A5 -> 0A86 A6 -> 0A87 A7 -> 0A88 A8 -> 0A89 A9 -> 0A8A AA -> 0A8B A6 E9 -> 0A8C AE -> 0A8D AB -> 0A8E AC -> 0A8F AD -> 0A90 B2 -> 0A91 AF -> 0A92 B0 -> 0A93 B1 -> 0A94 B3 -> 0A95 B4 -> 0A96 B5 -> 0A97 B6 -> 0A98 B7 -> 0A99 B8 -> 0A9A B9 -> 0A9B BA -> 0A9C BB -> 0A9D BC -> 0A9E BD -> 0A9F BE -> 0AA0 BF -> 0AA1 C0 -> 0AA2 C1 -> 0AA3 C2 -> 0AA4 C3 -> 0AA5 C4 -> 0AA6 C5 -> 0AA7 C6 -> 0AA8 C7 -> 0AA9 C8 -> 0AAA C9 -> 0AAB CA -> 0AAC CB -> 0AAD CC -> 0AAE CD -> 0AAF CF -> 0AB0 D0 -> 0AB1 D1 -> 0AB2 D2 -> 0AB3 D3 -> 0AB4 D4 -> 0AB5 D5 -> 0AB6 D6 -> 0AB7 D7 -> 0AB8 D8 -> 0AB9 E9 -> 0ABC EA E9 -> 0ABD DA -> 0ABE DB -> 0ABF DC -> 0AC0 DD -> 0AC1 DE -> 0AC2 DF -> 0AC3 DF E9 -> 0AC4 E3 -> 0AC5 E0 -> 0AC6 E1 -> 0AC7 E2 -> 0AC8 E7 -> 0AC9 E4 -> 0ACA E5 -> 0ACB E6 -> 0ACC E8 -> 0ACD E0 -> 0AC6 E1 -> 0AC7 E2 -> 0AC8 E7 -> 0AC9 E4 -> 0ACA E5 -> 0ACB E6 -> 0ACC E8 -> 0ACD E0 -> 0AC6 E1 -> 0AC7 E2 -> 0AC8 E7 -> 0AC9 E4 -> 0ACA E5 -> 0ACB E6 -> 0ACC E8 -> 0ACD E8 E9 -> 0ACD 200D E8 E8 -> 0ACD 200C A1 E9 -> 0AD0 B3 E9 -> 0AD8 B4 E9 -> 0AD9 B5 E9 -> 0ADA BA E9 -> 0ADB BF E9 -> 0ADC C0 E9 -> 0ADD C9 E9 -> 0ADE CE -> 0ADF AA E9 -> 0AE0 A7 E9 -> 0AE1 DB E9 -> 0AE2 DC E9 -> 0AE3 EA -> 0964 EA EA -> 0965 F1 -> 0AE6 F2 -> 0AE7 F3 -> 0AE8 F4 -> 0AE9 F5 -> 0AEA F6 -> 0AEB F7 -> 0AEC F8 -> 0AED F9 -> 0AEE FA -> 0AEF COMM=end of encoding ./mytool/mys/Hosszu.mys0000644000175000017500000000113311053723673015222 0ustar henrichhenrich# YUDIT-NtoN 1.0 NAME=RovasKey.kmap COMM= Experimental RovasKey.mys COMM= Please give me a better map if you have any. COMM= GNU (C) 2008-08-22 COMM= This map will produce UCS4 characters. TYPE=00000001 SECTION=Section1 ENCODE=00 KEY_WIDTH=00 VALUE_WIDTH=02 KEY_LENGTH=00 VALUE_LENGTH=00 '> '> -> 0000200E # Left-To-Right Mark '< '< -> 0000200F # Right-To-Left Mark 'a -> 00010C50 'a '' -> 00010C51 'b -> 00010C52 'c -> 00010C53 'c 's -> 00010C54 'd -> 00010C55 'd 'z -> 00010C56 'd 'z 's -> 00010C57 # # Ligatures # 'c 's '. 'a -> 00010C54 0000200D 00010C50 'b '. 'a -> 00010C52 0000200D 00010C50 ./mytool/mys/jis-0213-1.mys0000644000175000017500000071630707574146574015271 0ustar henrichhenrichNAME=jis-0213-1.mys TYPE=0 SECTION=decode ENCODE=0 KEY_WIDTH=1 VALUE_WIDTH=2 KEY_LENGTH=0 VALUE_LENGTH=0 # The following are not round trip compatible, but they are # needed for font mapping. This will not cause any problems # in conversion because converters are aware of this and # they call expandYuditLigatures routine in stoolkit/SCluster.cpp. # Y+0010 RISING LETTER # Y+0011 FALLING LETTER 2B65 -> 80000010 2B66 -> 80000011 # Generated by ./jiscompose.pl at 2002-04-15 # Add this to mytool/mys/jis-0213-1.mys 2477 -> 80000040 2478 -> 80000041 2479 -> 80000042 247A -> 80000043 247B -> 80000044 2577 -> 80000045 2578 -> 80000046 2579 -> 80000047 257A -> 80000048 257B -> 80000049 257C -> 8000004A 257D -> 8000004B 257E -> 8000004C 2678 -> 8000004D 2B44 -> 8000004E 2B48 -> 8000004F 2B49 -> 80000050 2B4A -> 80000051 2B4B -> 80000052 2B4C -> 80000053 2B4D -> 80000054 2B4E -> 80000055 2B4F -> 80000056 # END OF ./jiscompose.pl 2121 -> 00003000 # 1-1-1 2122 -> 00003001 # 1-1-2 2123 -> 00003002 # 1-1-3 2124 -> 0000FF0C # 1-1-4 2125 -> 0000FF0E # 1-1-5 2126 -> 000030FB # 1-1-6 2127 -> 0000FF1A # 1-1-7 2128 -> 0000FF1B # 1-1-8 2129 -> 0000FF1F # 1-1-9 212A -> 0000FF01 # 1-1-10 212B -> 0000309B # 1-1-11 212C -> 0000309C # 1-1-12 212D -> 000000B4 # 1-1-13 212E -> 0000FF40 # 1-1-14 212F -> 000000A8 # 1-1-15 2130 -> 0000FF3E # 1-1-16 2131 -> 0000FFE3 # 1-1-17 2132 -> 0000FF3F # 1-1-18 2133 -> 000030FD # 1-1-19 2134 -> 000030FE # 1-1-20 2135 -> 0000309D # 1-1-21 2136 -> 0000309E # 1-1-22 2137 -> 00003003 # 1-1-23 2138 -> 00004EDD # 1-1-24 2139 -> 00003005 # 1-1-25 213A -> 00003006 # 1-1-26 213B -> 00003007 # 1-1-27 213C -> 000030FC # 1-1-28 213D -> 00002015 # 1-1-29 213E -> 00002010 # 1-1-30 213F -> 0000FF0F # 1-1-31 2140 -> 0000FF3C # 1-1-32 2141 -> 0000301C # 1-1-33 2142 -> 00002016 # 1-1-34 2143 -> 0000FF5C # 1-1-35 2144 -> 00002026 # 1-1-36 2145 -> 00002025 # 1-1-37 2146 -> 00002018 # 1-1-38 2147 -> 00002019 # 1-1-39 2148 -> 0000201C # 1-1-40 2149 -> 0000201D # 1-1-41 214A -> 0000FF08 # 1-1-42 214B -> 0000FF09 # 1-1-43 214C -> 00003014 # 1-1-44 214D -> 00003015 # 1-1-45 214E -> 0000FF3B # 1-1-46 214F -> 0000FF3D # 1-1-47 2150 -> 0000FF5B # 1-1-48 2151 -> 0000FF5D # 1-1-49 2152 -> 00003008 # 1-1-50 2153 -> 00003009 # 1-1-51 2154 -> 0000300A # 1-1-52 2155 -> 0000300B # 1-1-53 2156 -> 0000300C # 1-1-54 2157 -> 0000300D # 1-1-55 2158 -> 0000300E # 1-1-56 2159 -> 0000300F # 1-1-57 215A -> 00003010 # 1-1-58 215B -> 00003011 # 1-1-59 215C -> 0000FF0B # 1-1-60 215D -> 00002212 # 1-1-61 215E -> 000000B1 # 1-1-62 215F -> 000000D7 # 1-1-63 2160 -> 000000F7 # 1-1-64 2161 -> 0000FF1D # 1-1-65 2162 -> 00002260 # 1-1-66 2163 -> 0000FF1C # 1-1-67 2164 -> 0000FF1E # 1-1-68 2165 -> 00002266 # 1-1-69 2166 -> 00002267 # 1-1-70 2167 -> 0000221E # 1-1-71 2168 -> 00002234 # 1-1-72 2169 -> 00002642 # 1-1-73 216A -> 00002640 # 1-1-74 216B -> 000000B0 # 1-1-75 216C -> 00002032 # 1-1-76 216D -> 00002033 # 1-1-77 216E -> 00002103 # 1-1-78 216F -> 0000FFE5 # 1-1-79 2170 -> 0000FF04 # 1-1-80 2171 -> 000000A2 # 1-1-81 2172 -> 000000A3 # 1-1-82 2173 -> 0000FF05 # 1-1-83 2174 -> 0000FF03 # 1-1-84 2175 -> 0000FF06 # 1-1-85 2176 -> 0000FF0A # 1-1-86 2177 -> 0000FF20 # 1-1-87 2178 -> 000000A7 # 1-1-88 2179 -> 00002606 # 1-1-89 217A -> 00002605 # 1-1-90 217B -> 000025CB # 1-1-91 217C -> 000025CF # 1-1-92 217D -> 000025CE # 1-1-93 217E -> 000025C7 # 1-1-94 2221 -> 000025C6 # 1-2-1 2222 -> 000025A1 # 1-2-2 2223 -> 000025A0 # 1-2-3 2224 -> 000025B3 # 1-2-4 2225 -> 000025B2 # 1-2-5 2226 -> 000025BD # 1-2-6 2227 -> 000025BC # 1-2-7 2228 -> 0000203B # 1-2-8 2229 -> 00003012 # 1-2-9 222A -> 00002192 # 1-2-10 222B -> 00002190 # 1-2-11 222C -> 00002191 # 1-2-12 222D -> 00002193 # 1-2-13 222E -> 00003013 # 1-2-14 222F -> 0000FF07 # 1-2-15 2230 -> 0000FF02 # 1-2-16 2231 -> 0000FF0D # 1-2-17 2232 -> 0000FF5E # 1-2-18 2233 -> 00003033 # 1-2-19 2234 -> 00003034 # 1-2-20 2235 -> 00003035 # 1-2-21 2236 -> 0000303B # 1-2-22 2237 -> 0000303C # 1-2-23 2238 -> 000030FF # 1-2-24 2239 -> 0000309F # 1-2-25 223A -> 00002208 # 1-2-26 223B -> 0000220B # 1-2-27 223C -> 00002286 # 1-2-28 223D -> 00002287 # 1-2-29 223E -> 00002282 # 1-2-30 223F -> 00002283 # 1-2-31 2240 -> 0000222A # 1-2-32 2241 -> 00002229 # 1-2-33 2242 -> 00002284 # 1-2-34 2243 -> 00002285 # 1-2-35 2244 -> 0000228A # 1-2-36 2245 -> 0000228B # 1-2-37 2246 -> 00002209 # 1-2-38 2247 -> 00002205 # 1-2-39 2248 -> 00002305 # 1-2-40 2249 -> 00002306 # 1-2-41 224A -> 00002227 # 1-2-42 224B -> 00002228 # 1-2-43 224C -> 000000AC # 1-2-44 224D -> 000021D2 # 1-2-45 224E -> 000021D4 # 1-2-46 224F -> 00002200 # 1-2-47 2250 -> 00002203 # 1-2-48 2251 -> 00002295 # 1-2-49 2252 -> 00002296 # 1-2-50 2253 -> 00002297 # 1-2-51 2254 -> 00002225 # 1-2-52 2255 -> 00002226 # 1-2-53 2256 -> 0000FF5F # 1-2-54 2257 -> 0000FF60 # 1-2-55 2258 -> 00003018 # 1-2-56 2259 -> 00003019 # 1-2-57 225A -> 00003016 # 1-2-58 225B -> 00003017 # 1-2-59 225C -> 00002220 # 1-2-60 225D -> 000022A5 # 1-2-61 225E -> 00002312 # 1-2-62 225F -> 00002202 # 1-2-63 2260 -> 00002207 # 1-2-64 2261 -> 00002261 # 1-2-65 2262 -> 00002252 # 1-2-66 2263 -> 0000226A # 1-2-67 2264 -> 0000226B # 1-2-68 2265 -> 0000221A # 1-2-69 2266 -> 0000223D # 1-2-70 2267 -> 0000221D # 1-2-71 2268 -> 00002235 # 1-2-72 2269 -> 0000222B # 1-2-73 226A -> 0000222C # 1-2-74 226B -> 00002262 # 1-2-75 226C -> 00002243 # 1-2-76 226D -> 00002245 # 1-2-77 226E -> 00002248 # 1-2-78 226F -> 00002276 # 1-2-79 2270 -> 00002277 # 1-2-80 2271 -> 00002194 # 1-2-81 2272 -> 0000212B # 1-2-82 2273 -> 00002030 # 1-2-83 2274 -> 0000266F # 1-2-84 2275 -> 0000266D # 1-2-85 2276 -> 0000266A # 1-2-86 2277 -> 00002020 # 1-2-87 2278 -> 00002021 # 1-2-88 2279 -> 000000B6 # 1-2-89 227A -> 0000266E # 1-2-90 227B -> 0000266B # 1-2-91 227C -> 0000266C # 1-2-92 227D -> 00002669 # 1-2-93 227E -> 000025EF # 1-2-94 2321 -> 000025B7 # 1-3-1 2322 -> 000025B6 # 1-3-2 2323 -> 000025C1 # 1-3-3 2324 -> 000025C0 # 1-3-4 2325 -> 00002197 # 1-3-5 2326 -> 00002198 # 1-3-6 2327 -> 00002196 # 1-3-7 2328 -> 00002199 # 1-3-8 2329 -> 000021C4 # 1-3-9 232A -> 000021E8 # 1-3-10 232B -> 000021E6 # 1-3-11 232C -> 000021E7 # 1-3-12 232D -> 000021E9 # 1-3-13 232E -> 00002934 # 1-3-14 232F -> 00002935 # 1-3-15 2330 -> 0000FF10 # 1-3-16 2331 -> 0000FF11 # 1-3-17 2332 -> 0000FF12 # 1-3-18 2333 -> 0000FF13 # 1-3-19 2334 -> 0000FF14 # 1-3-20 2335 -> 0000FF15 # 1-3-21 2336 -> 0000FF16 # 1-3-22 2337 -> 0000FF17 # 1-3-23 2338 -> 0000FF18 # 1-3-24 2339 -> 0000FF19 # 1-3-25 233A -> 00002299 # 1-3-26 233B -> 000025C9 # 1-3-27 233C -> 0000303D # 1-3-28 233D -> 0000FE46 # 1-3-29 233E -> 0000FE45 # 1-3-30 233F -> 000025E6 # 1-3-31 2340 -> 00002022 # 1-3-32 2341 -> 0000FF21 # 1-3-33 2342 -> 0000FF22 # 1-3-34 2343 -> 0000FF23 # 1-3-35 2344 -> 0000FF24 # 1-3-36 2345 -> 0000FF25 # 1-3-37 2346 -> 0000FF26 # 1-3-38 2347 -> 0000FF27 # 1-3-39 2348 -> 0000FF28 # 1-3-40 2349 -> 0000FF29 # 1-3-41 234A -> 0000FF2A # 1-3-42 234B -> 0000FF2B # 1-3-43 234C -> 0000FF2C # 1-3-44 234D -> 0000FF2D # 1-3-45 234E -> 0000FF2E # 1-3-46 234F -> 0000FF2F # 1-3-47 2350 -> 0000FF30 # 1-3-48 2351 -> 0000FF31 # 1-3-49 2352 -> 0000FF32 # 1-3-50 2353 -> 0000FF33 # 1-3-51 2354 -> 0000FF34 # 1-3-52 2355 -> 0000FF35 # 1-3-53 2356 -> 0000FF36 # 1-3-54 2357 -> 0000FF37 # 1-3-55 2358 -> 0000FF38 # 1-3-56 2359 -> 0000FF39 # 1-3-57 235A -> 0000FF3A # 1-3-58 235B -> 00002213 # 1-3-59 235C -> 00002135 # 1-3-60 235D -> 0000210F # 1-3-61 235E -> 000033CB # 1-3-62 235F -> 00002113 # 1-3-63 2360 -> 00002127 # 1-3-64 2361 -> 0000FF41 # 1-3-65 2362 -> 0000FF42 # 1-3-66 2363 -> 0000FF43 # 1-3-67 2364 -> 0000FF44 # 1-3-68 2365 -> 0000FF45 # 1-3-69 2366 -> 0000FF46 # 1-3-70 2367 -> 0000FF47 # 1-3-71 2368 -> 0000FF48 # 1-3-72 2369 -> 0000FF49 # 1-3-73 236A -> 0000FF4A # 1-3-74 236B -> 0000FF4B # 1-3-75 236C -> 0000FF4C # 1-3-76 236D -> 0000FF4D # 1-3-77 236E -> 0000FF4E # 1-3-78 236F -> 0000FF4F # 1-3-79 2370 -> 0000FF50 # 1-3-80 2371 -> 0000FF51 # 1-3-81 2372 -> 0000FF52 # 1-3-82 2373 -> 0000FF53 # 1-3-83 2374 -> 0000FF54 # 1-3-84 2375 -> 0000FF55 # 1-3-85 2376 -> 0000FF56 # 1-3-86 2377 -> 0000FF57 # 1-3-87 2378 -> 0000FF58 # 1-3-88 2379 -> 0000FF59 # 1-3-89 237A -> 0000FF5A # 1-3-90 237B -> 000030A0 # 1-3-91 237C -> 00002013 # 1-3-92 237D -> 000029FA # 1-3-93 237E -> 000029FB # 1-3-94 2421 -> 00003041 # 1-4-1 2422 -> 00003042 # 1-4-2 2423 -> 00003043 # 1-4-3 2424 -> 00003044 # 1-4-4 2425 -> 00003045 # 1-4-5 2426 -> 00003046 # 1-4-6 2427 -> 00003047 # 1-4-7 2428 -> 00003048 # 1-4-8 2429 -> 00003049 # 1-4-9 242A -> 0000304A # 1-4-10 242B -> 0000304B # 1-4-11 242C -> 0000304C # 1-4-12 242D -> 0000304D # 1-4-13 242E -> 0000304E # 1-4-14 242F -> 0000304F # 1-4-15 2430 -> 00003050 # 1-4-16 2431 -> 00003051 # 1-4-17 2432 -> 00003052 # 1-4-18 2433 -> 00003053 # 1-4-19 2434 -> 00003054 # 1-4-20 2435 -> 00003055 # 1-4-21 2436 -> 00003056 # 1-4-22 2437 -> 00003057 # 1-4-23 2438 -> 00003058 # 1-4-24 2439 -> 00003059 # 1-4-25 243A -> 0000305A # 1-4-26 243B -> 0000305B # 1-4-27 243C -> 0000305C # 1-4-28 243D -> 0000305D # 1-4-29 243E -> 0000305E # 1-4-30 243F -> 0000305F # 1-4-31 2440 -> 00003060 # 1-4-32 2441 -> 00003061 # 1-4-33 2442 -> 00003062 # 1-4-34 2443 -> 00003063 # 1-4-35 2444 -> 00003064 # 1-4-36 2445 -> 00003065 # 1-4-37 2446 -> 00003066 # 1-4-38 2447 -> 00003067 # 1-4-39 2448 -> 00003068 # 1-4-40 2449 -> 00003069 # 1-4-41 244A -> 0000306A # 1-4-42 244B -> 0000306B # 1-4-43 244C -> 0000306C # 1-4-44 244D -> 0000306D # 1-4-45 244E -> 0000306E # 1-4-46 244F -> 0000306F # 1-4-47 2450 -> 00003070 # 1-4-48 2451 -> 00003071 # 1-4-49 2452 -> 00003072 # 1-4-50 2453 -> 00003073 # 1-4-51 2454 -> 00003074 # 1-4-52 2455 -> 00003075 # 1-4-53 2456 -> 00003076 # 1-4-54 2457 -> 00003077 # 1-4-55 2458 -> 00003078 # 1-4-56 2459 -> 00003079 # 1-4-57 245A -> 0000307A # 1-4-58 245B -> 0000307B # 1-4-59 245C -> 0000307C # 1-4-60 245D -> 0000307D # 1-4-61 245E -> 0000307E # 1-4-62 245F -> 0000307F # 1-4-63 2460 -> 00003080 # 1-4-64 2461 -> 00003081 # 1-4-65 2462 -> 00003082 # 1-4-66 2463 -> 00003083 # 1-4-67 2464 -> 00003084 # 1-4-68 2465 -> 00003085 # 1-4-69 2466 -> 00003086 # 1-4-70 2467 -> 00003087 # 1-4-71 2468 -> 00003088 # 1-4-72 2469 -> 00003089 # 1-4-73 246A -> 0000308A # 1-4-74 246B -> 0000308B # 1-4-75 246C -> 0000308C # 1-4-76 246D -> 0000308D # 1-4-77 246E -> 0000308E # 1-4-78 246F -> 0000308F # 1-4-79 2470 -> 00003090 # 1-4-80 2471 -> 00003091 # 1-4-81 2472 -> 00003092 # 1-4-82 2473 -> 00003093 # 1-4-83 2474 -> 00003094 # 1-4-84 2475 -> 00003095 # 1-4-85 2476 -> 00003096 # 1-4-86 2477 -> 0000304B 0000309A # 1-4-87 2478 -> 0000304D 0000309A # 1-4-88 2479 -> 0000304F 0000309A # 1-4-89 247A -> 00003051 0000309A # 1-4-90 247B -> 00003053 0000309A # 1-4-91 2521 -> 000030A1 # 1-5-1 2522 -> 000030A2 # 1-5-2 2523 -> 000030A3 # 1-5-3 2524 -> 000030A4 # 1-5-4 2525 -> 000030A5 # 1-5-5 2526 -> 000030A6 # 1-5-6 2527 -> 000030A7 # 1-5-7 2528 -> 000030A8 # 1-5-8 2529 -> 000030A9 # 1-5-9 252A -> 000030AA # 1-5-10 252B -> 000030AB # 1-5-11 252C -> 000030AC # 1-5-12 252D -> 000030AD # 1-5-13 252E -> 000030AE # 1-5-14 252F -> 000030AF # 1-5-15 2530 -> 000030B0 # 1-5-16 2531 -> 000030B1 # 1-5-17 2532 -> 000030B2 # 1-5-18 2533 -> 000030B3 # 1-5-19 2534 -> 000030B4 # 1-5-20 2535 -> 000030B5 # 1-5-21 2536 -> 000030B6 # 1-5-22 2537 -> 000030B7 # 1-5-23 2538 -> 000030B8 # 1-5-24 2539 -> 000030B9 # 1-5-25 253A -> 000030BA # 1-5-26 253B -> 000030BB # 1-5-27 253C -> 000030BC # 1-5-28 253D -> 000030BD # 1-5-29 253E -> 000030BE # 1-5-30 253F -> 000030BF # 1-5-31 2540 -> 000030C0 # 1-5-32 2541 -> 000030C1 # 1-5-33 2542 -> 000030C2 # 1-5-34 2543 -> 000030C3 # 1-5-35 2544 -> 000030C4 # 1-5-36 2545 -> 000030C5 # 1-5-37 2546 -> 000030C6 # 1-5-38 2547 -> 000030C7 # 1-5-39 2548 -> 000030C8 # 1-5-40 2549 -> 000030C9 # 1-5-41 254A -> 000030CA # 1-5-42 254B -> 000030CB # 1-5-43 254C -> 000030CC # 1-5-44 254D -> 000030CD # 1-5-45 254E -> 000030CE # 1-5-46 254F -> 000030CF # 1-5-47 2550 -> 000030D0 # 1-5-48 2551 -> 000030D1 # 1-5-49 2552 -> 000030D2 # 1-5-50 2553 -> 000030D3 # 1-5-51 2554 -> 000030D4 # 1-5-52 2555 -> 000030D5 # 1-5-53 2556 -> 000030D6 # 1-5-54 2557 -> 000030D7 # 1-5-55 2558 -> 000030D8 # 1-5-56 2559 -> 000030D9 # 1-5-57 255A -> 000030DA # 1-5-58 255B -> 000030DB # 1-5-59 255C -> 000030DC # 1-5-60 255D -> 000030DD # 1-5-61 255E -> 000030DE # 1-5-62 255F -> 000030DF # 1-5-63 2560 -> 000030E0 # 1-5-64 2561 -> 000030E1 # 1-5-65 2562 -> 000030E2 # 1-5-66 2563 -> 000030E3 # 1-5-67 2564 -> 000030E4 # 1-5-68 2565 -> 000030E5 # 1-5-69 2566 -> 000030E6 # 1-5-70 2567 -> 000030E7 # 1-5-71 2568 -> 000030E8 # 1-5-72 2569 -> 000030E9 # 1-5-73 256A -> 000030EA # 1-5-74 256B -> 000030EB # 1-5-75 256C -> 000030EC # 1-5-76 256D -> 000030ED # 1-5-77 256E -> 000030EE # 1-5-78 256F -> 000030EF # 1-5-79 2570 -> 000030F0 # 1-5-80 2571 -> 000030F1 # 1-5-81 2572 -> 000030F2 # 1-5-82 2573 -> 000030F3 # 1-5-83 2574 -> 000030F4 # 1-5-84 2575 -> 000030F5 # 1-5-85 2576 -> 000030F6 # 1-5-86 2577 -> 000030AB 0000309A # 1-5-87 2578 -> 000030AD 0000309A # 1-5-88 2579 -> 000030AF 0000309A # 1-5-89 257A -> 000030B1 0000309A # 1-5-90 257B -> 000030B3 0000309A # 1-5-91 257C -> 000030BB 0000309A # 1-5-92 257D -> 000030C4 0000309A # 1-5-93 257E -> 000030C8 0000309A # 1-5-94 2621 -> 00000391 # 1-6-1 2622 -> 00000392 # 1-6-2 2623 -> 00000393 # 1-6-3 2624 -> 00000394 # 1-6-4 2625 -> 00000395 # 1-6-5 2626 -> 00000396 # 1-6-6 2627 -> 00000397 # 1-6-7 2628 -> 00000398 # 1-6-8 2629 -> 00000399 # 1-6-9 262A -> 0000039A # 1-6-10 262B -> 0000039B # 1-6-11 262C -> 0000039C # 1-6-12 262D -> 0000039D # 1-6-13 262E -> 0000039E # 1-6-14 262F -> 0000039F # 1-6-15 2630 -> 000003A0 # 1-6-16 2631 -> 000003A1 # 1-6-17 2632 -> 000003A3 # 1-6-18 2633 -> 000003A4 # 1-6-19 2634 -> 000003A5 # 1-6-20 2635 -> 000003A6 # 1-6-21 2636 -> 000003A7 # 1-6-22 2637 -> 000003A8 # 1-6-23 2638 -> 000003A9 # 1-6-24 2639 -> 00002664 # 1-6-25 263A -> 00002660 # 1-6-26 263B -> 00002662 # 1-6-27 263C -> 00002666 # 1-6-28 263D -> 00002661 # 1-6-29 263E -> 00002665 # 1-6-30 263F -> 00002667 # 1-6-31 2640 -> 00002663 # 1-6-32 2641 -> 000003B1 # 1-6-33 2642 -> 000003B2 # 1-6-34 2643 -> 000003B3 # 1-6-35 2644 -> 000003B4 # 1-6-36 2645 -> 000003B5 # 1-6-37 2646 -> 000003B6 # 1-6-38 2647 -> 000003B7 # 1-6-39 2648 -> 000003B8 # 1-6-40 2649 -> 000003B9 # 1-6-41 264A -> 000003BA # 1-6-42 264B -> 000003BB # 1-6-43 264C -> 000003BC # 1-6-44 264D -> 000003BD # 1-6-45 264E -> 000003BE # 1-6-46 264F -> 000003BF # 1-6-47 2650 -> 000003C0 # 1-6-48 2651 -> 000003C1 # 1-6-49 2652 -> 000003C3 # 1-6-50 2653 -> 000003C4 # 1-6-51 2654 -> 000003C5 # 1-6-52 2655 -> 000003C6 # 1-6-53 2656 -> 000003C7 # 1-6-54 2657 -> 000003C8 # 1-6-55 2658 -> 000003C9 # 1-6-56 2659 -> 000003C2 # 1-6-57 265A -> 000024F5 # 1-6-58 265B -> 000024F6 # 1-6-59 265C -> 000024F7 # 1-6-60 265D -> 000024F8 # 1-6-61 265E -> 000024F9 # 1-6-62 265F -> 000024FA # 1-6-63 2660 -> 000024FB # 1-6-64 2661 -> 000024FC # 1-6-65 2662 -> 000024FD # 1-6-66 2663 -> 000024FE # 1-6-67 2664 -> 00002616 # 1-6-68 2665 -> 00002617 # 1-6-69 2666 -> 00003020 # 1-6-70 2667 -> 0000260E # 1-6-71 2668 -> 00002600 # 1-6-72 2669 -> 00002601 # 1-6-73 266A -> 00002602 # 1-6-74 266B -> 00002603 # 1-6-75 266C -> 00002668 # 1-6-76 266D -> 000025B1 # 1-6-77 266E -> 000031F0 # 1-6-78 266F -> 000031F1 # 1-6-79 2670 -> 000031F2 # 1-6-80 2671 -> 000031F3 # 1-6-81 2672 -> 000031F4 # 1-6-82 2673 -> 000031F5 # 1-6-83 2674 -> 000031F6 # 1-6-84 2675 -> 000031F7 # 1-6-85 2676 -> 000031F8 # 1-6-86 2677 -> 000031F9 # 1-6-87 2678 -> 000031F7 0000309A # 1-6-88 2679 -> 000031FA # 1-6-89 267A -> 000031FB # 1-6-90 267B -> 000031FC # 1-6-91 267C -> 000031FD # 1-6-92 267D -> 000031FE # 1-6-93 267E -> 000031FF # 1-6-94 2721 -> 00000410 # 1-7-1 2722 -> 00000411 # 1-7-2 2723 -> 00000412 # 1-7-3 2724 -> 00000413 # 1-7-4 2725 -> 00000414 # 1-7-5 2726 -> 00000415 # 1-7-6 2727 -> 00000401 # 1-7-7 2728 -> 00000416 # 1-7-8 2729 -> 00000417 # 1-7-9 272A -> 00000418 # 1-7-10 272B -> 00000419 # 1-7-11 272C -> 0000041A # 1-7-12 272D -> 0000041B # 1-7-13 272E -> 0000041C # 1-7-14 272F -> 0000041D # 1-7-15 2730 -> 0000041E # 1-7-16 2731 -> 0000041F # 1-7-17 2732 -> 00000420 # 1-7-18 2733 -> 00000421 # 1-7-19 2734 -> 00000422 # 1-7-20 2735 -> 00000423 # 1-7-21 2736 -> 00000424 # 1-7-22 2737 -> 00000425 # 1-7-23 2738 -> 00000426 # 1-7-24 2739 -> 00000427 # 1-7-25 273A -> 00000428 # 1-7-26 273B -> 00000429 # 1-7-27 273C -> 0000042A # 1-7-28 273D -> 0000042B # 1-7-29 273E -> 0000042C # 1-7-30 273F -> 0000042D # 1-7-31 2740 -> 0000042E # 1-7-32 2741 -> 0000042F # 1-7-33 2742 -> 000023BE # 1-7-34 2743 -> 000023BF # 1-7-35 2744 -> 000023C0 # 1-7-36 2745 -> 000023C1 # 1-7-37 2746 -> 000023C2 # 1-7-38 2747 -> 000023C3 # 1-7-39 2748 -> 000023C4 # 1-7-40 2749 -> 000023C5 # 1-7-41 274A -> 000023C6 # 1-7-42 274B -> 000023C7 # 1-7-43 274C -> 000023C8 # 1-7-44 274D -> 000023C9 # 1-7-45 274E -> 000023CA # 1-7-46 274F -> 000023CB # 1-7-47 2750 -> 000023CC # 1-7-48 2751 -> 00000430 # 1-7-49 2752 -> 00000431 # 1-7-50 2753 -> 00000432 # 1-7-51 2754 -> 00000433 # 1-7-52 2755 -> 00000434 # 1-7-53 2756 -> 00000435 # 1-7-54 2757 -> 00000451 # 1-7-55 2758 -> 00000436 # 1-7-56 2759 -> 00000437 # 1-7-57 275A -> 00000438 # 1-7-58 275B -> 00000439 # 1-7-59 275C -> 0000043A # 1-7-60 275D -> 0000043B # 1-7-61 275E -> 0000043C # 1-7-62 275F -> 0000043D # 1-7-63 2760 -> 0000043E # 1-7-64 2761 -> 0000043F # 1-7-65 2762 -> 00000440 # 1-7-66 2763 -> 00000441 # 1-7-67 2764 -> 00000442 # 1-7-68 2765 -> 00000443 # 1-7-69 2766 -> 00000444 # 1-7-70 2767 -> 00000445 # 1-7-71 2768 -> 00000446 # 1-7-72 2769 -> 00000447 # 1-7-73 276A -> 00000448 # 1-7-74 276B -> 00000449 # 1-7-75 276C -> 0000044A # 1-7-76 276D -> 0000044B # 1-7-77 276E -> 0000044C # 1-7-78 276F -> 0000044D # 1-7-79 2770 -> 0000044E # 1-7-80 2771 -> 0000044F # 1-7-81 2772 -> 000030F7 # 1-7-82 2773 -> 000030F8 # 1-7-83 2774 -> 000030F9 # 1-7-84 2775 -> 000030FA # 1-7-85 2776 -> 000022DA # 1-7-86 2777 -> 000022DB # 1-7-87 2778 -> 00002153 # 1-7-88 2779 -> 00002154 # 1-7-89 277A -> 00002155 # 1-7-90 277B -> 00002713 # 1-7-91 277C -> 00002318 # 1-7-92 277D -> 00002423 # 1-7-93 277E -> 000023CE # 1-7-94 2821 -> 00002500 # 1-8-1 2822 -> 00002502 # 1-8-2 2823 -> 0000250C # 1-8-3 2824 -> 00002510 # 1-8-4 2825 -> 00002518 # 1-8-5 2826 -> 00002514 # 1-8-6 2827 -> 0000251C # 1-8-7 2828 -> 0000252C # 1-8-8 2829 -> 00002524 # 1-8-9 282A -> 00002534 # 1-8-10 282B -> 0000253C # 1-8-11 282C -> 00002501 # 1-8-12 282D -> 00002503 # 1-8-13 282E -> 0000250F # 1-8-14 282F -> 00002513 # 1-8-15 2830 -> 0000251B # 1-8-16 2831 -> 00002517 # 1-8-17 2832 -> 00002523 # 1-8-18 2833 -> 00002533 # 1-8-19 2834 -> 0000252B # 1-8-20 2835 -> 0000253B # 1-8-21 2836 -> 0000254B # 1-8-22 2837 -> 00002520 # 1-8-23 2838 -> 0000252F # 1-8-24 2839 -> 00002528 # 1-8-25 283A -> 00002537 # 1-8-26 283B -> 0000253F # 1-8-27 283C -> 0000251D # 1-8-28 283D -> 00002530 # 1-8-29 283E -> 00002525 # 1-8-30 283F -> 00002538 # 1-8-31 2840 -> 00002542 # 1-8-32 2841 -> 00003251 # 1-8-33 2842 -> 00003252 # 1-8-34 2843 -> 00003253 # 1-8-35 2844 -> 00003254 # 1-8-36 2845 -> 00003255 # 1-8-37 2846 -> 00003256 # 1-8-38 2847 -> 00003257 # 1-8-39 2848 -> 00003258 # 1-8-40 2849 -> 00003259 # 1-8-41 284A -> 0000325A # 1-8-42 284B -> 0000325B # 1-8-43 284C -> 0000325C # 1-8-44 284D -> 0000325D # 1-8-45 284E -> 0000325E # 1-8-46 284F -> 0000325F # 1-8-47 2850 -> 000032B1 # 1-8-48 2851 -> 000032B2 # 1-8-49 2852 -> 000032B3 # 1-8-50 2853 -> 000032B4 # 1-8-51 2854 -> 000032B5 # 1-8-52 2855 -> 000032B6 # 1-8-53 2856 -> 000032B7 # 1-8-54 2857 -> 000032B8 # 1-8-55 2858 -> 000032B9 # 1-8-56 2859 -> 000032BA # 1-8-57 285A -> 000032BB # 1-8-58 285B -> 000032BC # 1-8-59 285C -> 000032BD # 1-8-60 285D -> 000032BE # 1-8-61 285E -> 000032BF # 1-8-62 2867 -> 000025D0 # 1-8-71 2868 -> 000025D1 # 1-8-72 2869 -> 000025D2 # 1-8-73 286A -> 000025D3 # 1-8-74 286B -> 0000203C # 1-8-75 286C -> 00002047 # 1-8-76 286D -> 00002048 # 1-8-77 286E -> 00002049 # 1-8-78 286F -> 000001CD # 1-8-79 2870 -> 000001CE # 1-8-80 2871 -> 000001D0 # 1-8-81 2872 -> 00001E3E # 1-8-82 2873 -> 00001E3F # 1-8-83 2874 -> 000001F8 # 1-8-84 2875 -> 000001F9 # 1-8-85 2876 -> 000001D1 # 1-8-86 2877 -> 000001D2 # 1-8-87 2878 -> 000001D4 # 1-8-88 2879 -> 000001D6 # 1-8-89 287A -> 000001D8 # 1-8-90 287B -> 000001DA # 1-8-91 287C -> 000001DC # 1-8-92 2921 -> 000020AC # 1-9-1 2922 -> 000000A0 # 1-9-2 2923 -> 000000A1 # 1-9-3 2924 -> 000000A4 # 1-9-4 2925 -> 000000A6 # 1-9-5 2926 -> 000000A9 # 1-9-6 2927 -> 000000AA # 1-9-7 2928 -> 000000AB # 1-9-8 2929 -> 000000AD # 1-9-9 292A -> 000000AE # 1-9-10 292B -> 000000AF # 1-9-11 292C -> 000000B2 # 1-9-12 292D -> 000000B3 # 1-9-13 292E -> 000000B7 # 1-9-14 292F -> 000000B8 # 1-9-15 2930 -> 000000B9 # 1-9-16 2931 -> 000000BA # 1-9-17 2932 -> 000000BB # 1-9-18 2933 -> 000000BC # 1-9-19 2934 -> 000000BD # 1-9-20 2935 -> 000000BE # 1-9-21 2936 -> 000000BF # 1-9-22 2937 -> 000000C0 # 1-9-23 2938 -> 000000C1 # 1-9-24 2939 -> 000000C2 # 1-9-25 293A -> 000000C3 # 1-9-26 293B -> 000000C4 # 1-9-27 293C -> 000000C5 # 1-9-28 293D -> 000000C6 # 1-9-29 293E -> 000000C7 # 1-9-30 293F -> 000000C8 # 1-9-31 2940 -> 000000C9 # 1-9-32 2941 -> 000000CA # 1-9-33 2942 -> 000000CB # 1-9-34 2943 -> 000000CC # 1-9-35 2944 -> 000000CD # 1-9-36 2945 -> 000000CE # 1-9-37 2946 -> 000000CF # 1-9-38 2947 -> 000000D0 # 1-9-39 2948 -> 000000D1 # 1-9-40 2949 -> 000000D2 # 1-9-41 294A -> 000000D3 # 1-9-42 294B -> 000000D4 # 1-9-43 294C -> 000000D5 # 1-9-44 294D -> 000000D6 # 1-9-45 294E -> 000000D8 # 1-9-46 294F -> 000000D9 # 1-9-47 2950 -> 000000DA # 1-9-48 2951 -> 000000DB # 1-9-49 2952 -> 000000DC # 1-9-50 2953 -> 000000DD # 1-9-51 2954 -> 000000DE # 1-9-52 2955 -> 000000DF # 1-9-53 2956 -> 000000E0 # 1-9-54 2957 -> 000000E1 # 1-9-55 2958 -> 000000E2 # 1-9-56 2959 -> 000000E3 # 1-9-57 295A -> 000000E4 # 1-9-58 295B -> 000000E5 # 1-9-59 295C -> 000000E6 # 1-9-60 295D -> 000000E7 # 1-9-61 295E -> 000000E8 # 1-9-62 295F -> 000000E9 # 1-9-63 2960 -> 000000EA # 1-9-64 2961 -> 000000EB # 1-9-65 2962 -> 000000EC # 1-9-66 2963 -> 000000ED # 1-9-67 2964 -> 000000EE # 1-9-68 2965 -> 000000EF # 1-9-69 2966 -> 000000F0 # 1-9-70 2967 -> 000000F1 # 1-9-71 2968 -> 000000F2 # 1-9-72 2969 -> 000000F3 # 1-9-73 296A -> 000000F4 # 1-9-74 296B -> 000000F5 # 1-9-75 296C -> 000000F6 # 1-9-76 296D -> 000000F8 # 1-9-77 296E -> 000000F9 # 1-9-78 296F -> 000000FA # 1-9-79 2970 -> 000000FB # 1-9-80 2971 -> 000000FC # 1-9-81 2972 -> 000000FD # 1-9-82 2973 -> 000000FE # 1-9-83 2974 -> 000000FF # 1-9-84 2975 -> 00000100 # 1-9-85 2976 -> 0000012A # 1-9-86 2977 -> 0000016A # 1-9-87 2978 -> 00000112 # 1-9-88 2979 -> 0000014C # 1-9-89 297A -> 00000101 # 1-9-90 297B -> 0000012B # 1-9-91 297C -> 0000016B # 1-9-92 297D -> 00000113 # 1-9-93 297E -> 0000014D # 1-9-94 2A21 -> 00000104 # 1-10-1 2A22 -> 000002D8 # 1-10-2 2A23 -> 00000141 # 1-10-3 2A24 -> 0000013D # 1-10-4 2A25 -> 0000015A # 1-10-5 2A26 -> 00000160 # 1-10-6 2A27 -> 0000015E # 1-10-7 2A28 -> 00000164 # 1-10-8 2A29 -> 00000179 # 1-10-9 2A2A -> 0000017D # 1-10-10 2A2B -> 0000017B # 1-10-11 2A2C -> 00000105 # 1-10-12 2A2D -> 000002DB # 1-10-13 2A2E -> 00000142 # 1-10-14 2A2F -> 0000013E # 1-10-15 2A30 -> 0000015B # 1-10-16 2A31 -> 000002C7 # 1-10-17 2A32 -> 00000161 # 1-10-18 2A33 -> 0000015F # 1-10-19 2A34 -> 00000165 # 1-10-20 2A35 -> 0000017A # 1-10-21 2A36 -> 000002DD # 1-10-22 2A37 -> 0000017E # 1-10-23 2A38 -> 0000017C # 1-10-24 2A39 -> 00000154 # 1-10-25 2A3A -> 00000102 # 1-10-26 2A3B -> 00000139 # 1-10-27 2A3C -> 00000106 # 1-10-28 2A3D -> 0000010C # 1-10-29 2A3E -> 00000118 # 1-10-30 2A3F -> 0000011A # 1-10-31 2A40 -> 0000010E # 1-10-32 2A41 -> 00000143 # 1-10-33 2A42 -> 00000147 # 1-10-34 2A43 -> 00000150 # 1-10-35 2A44 -> 00000158 # 1-10-36 2A45 -> 0000016E # 1-10-37 2A46 -> 00000170 # 1-10-38 2A47 -> 00000162 # 1-10-39 2A48 -> 00000155 # 1-10-40 2A49 -> 00000103 # 1-10-41 2A4A -> 0000013A # 1-10-42 2A4B -> 00000107 # 1-10-43 2A4C -> 0000010D # 1-10-44 2A4D -> 00000119 # 1-10-45 2A4E -> 0000011B # 1-10-46 2A4F -> 0000010F # 1-10-47 2A50 -> 00000111 # 1-10-48 2A51 -> 00000144 # 1-10-49 2A52 -> 00000148 # 1-10-50 2A53 -> 00000151 # 1-10-51 2A54 -> 00000159 # 1-10-52 2A55 -> 0000016F # 1-10-53 2A56 -> 00000171 # 1-10-54 2A57 -> 00000163 # 1-10-55 2A58 -> 000002D9 # 1-10-56 2A59 -> 00000108 # 1-10-57 2A5A -> 0000011C # 1-10-58 2A5B -> 00000124 # 1-10-59 2A5C -> 00000134 # 1-10-60 2A5D -> 0000015C # 1-10-61 2A5E -> 0000016C # 1-10-62 2A5F -> 00000109 # 1-10-63 2A60 -> 0000011D # 1-10-64 2A61 -> 00000125 # 1-10-65 2A62 -> 00000135 # 1-10-66 2A63 -> 0000015D # 1-10-67 2A64 -> 0000016D # 1-10-68 2A65 -> 00000271 # 1-10-69 2A66 -> 0000028B # 1-10-70 2A67 -> 0000027E # 1-10-71 2A68 -> 00000283 # 1-10-72 2A69 -> 00000292 # 1-10-73 2A6A -> 0000026C # 1-10-74 2A6B -> 0000026E # 1-10-75 2A6C -> 00000279 # 1-10-76 2A6D -> 00000288 # 1-10-77 2A6E -> 00000256 # 1-10-78 2A6F -> 00000273 # 1-10-79 2A70 -> 0000027D # 1-10-80 2A71 -> 00000282 # 1-10-81 2A72 -> 00000290 # 1-10-82 2A73 -> 0000027B # 1-10-83 2A74 -> 0000026D # 1-10-84 2A75 -> 0000025F # 1-10-85 2A76 -> 00000272 # 1-10-86 2A77 -> 0000029D # 1-10-87 2A78 -> 0000028E # 1-10-88 2A79 -> 00000261 # 1-10-89 2A7A -> 0000014B # 1-10-90 2A7B -> 00000270 # 1-10-91 2A7C -> 00000281 # 1-10-92 2A7D -> 00000127 # 1-10-93 2A7E -> 00000295 # 1-10-94 2B21 -> 00000294 # 1-11-1 2B22 -> 00000266 # 1-11-2 2B23 -> 00000298 # 1-11-3 2B24 -> 000001C2 # 1-11-4 2B25 -> 00000253 # 1-11-5 2B26 -> 00000257 # 1-11-6 2B27 -> 00000284 # 1-11-7 2B28 -> 00000260 # 1-11-8 2B29 -> 00000193 # 1-11-9 2B2A -> 00000153 # 1-11-10 2B2B -> 00000152 # 1-11-11 2B2C -> 00000268 # 1-11-12 2B2D -> 00000289 # 1-11-13 2B2E -> 00000258 # 1-11-14 2B2F -> 00000275 # 1-11-15 2B30 -> 00000259 # 1-11-16 2B31 -> 0000025C # 1-11-17 2B32 -> 0000025E # 1-11-18 2B33 -> 00000250 # 1-11-19 2B34 -> 0000026F # 1-11-20 2B35 -> 0000028A # 1-11-21 2B36 -> 00000264 # 1-11-22 2B37 -> 0000028C # 1-11-23 2B38 -> 00000254 # 1-11-24 2B39 -> 00000251 # 1-11-25 2B3A -> 00000252 # 1-11-26 2B3B -> 0000028D # 1-11-27 2B3C -> 00000265 # 1-11-28 2B3D -> 000002A2 # 1-11-29 2B3E -> 000002A1 # 1-11-30 2B3F -> 00000255 # 1-11-31 2B40 -> 00000291 # 1-11-32 2B41 -> 0000027A # 1-11-33 2B42 -> 00000267 # 1-11-34 2B43 -> 0000025A # 1-11-35 2B44 -> 000000E6 00000300 # 1-11-36 2B45 -> 000001FD # 1-11-37 2B46 -> 00001F70 # 1-11-38 2B47 -> 00001F71 # 1-11-39 2B48 -> 00000254 00000300 # 1-11-40 2B49 -> 00000254 00000301 # 1-11-41 2B4A -> 0000028C 00000300 # 1-11-42 2B4B -> 0000028C 00000301 # 1-11-43 2B4C -> 00000259 00000300 # 1-11-44 2B4D -> 00000259 00000301 # 1-11-45 2B4E -> 0000025A 00000300 # 1-11-46 2B4F -> 0000025A 00000301 # 1-11-47 2B50 -> 00001F72 # 1-11-48 2B51 -> 00001F73 # 1-11-49 2B52 -> 00000361 # 1-11-50 2B53 -> 000002C8 # 1-11-51 2B54 -> 000002CC # 1-11-52 2B55 -> 000002D0 # 1-11-53 2B56 -> 000002D1 # 1-11-54 2B57 -> 00000306 # 1-11-55 2B58 -> 0000203F # 1-11-56 2B59 -> 0000030B # 1-11-57 2B5A -> 00000301 # 1-11-58 2B5B -> 00000304 # 1-11-59 2B5C -> 00000300 # 1-11-60 2B5D -> 0000030F # 1-11-61 2B5E -> 0000030C # 1-11-62 2B5F -> 00000302 # 1-11-63 2B60 -> 000002E5 # 1-11-64 2B61 -> 000002E6 # 1-11-65 2B62 -> 000002E7 # 1-11-66 2B63 -> 000002E8 # 1-11-67 2B64 -> 000002E9 # 1-11-68 2B65 -> 000002E9 000002E5 # RISING 1-11-69 2B66 -> 000002E5 000002E9 # FALLING 1-11-70 2B67 -> 00000325 # 1-11-71 2B68 -> 0000032C # 1-11-72 2B69 -> 00000339 # 1-11-73 2B6A -> 0000031C # 1-11-74 2B6B -> 0000031F # 1-11-75 2B6C -> 00000320 # 1-11-76 2B6D -> 00000308 # 1-11-77 2B6E -> 0000033D # 1-11-78 2B6F -> 00000329 # 1-11-79 2B70 -> 0000032F # 1-11-80 2B71 -> 000002DE # 1-11-81 2B72 -> 00000324 # 1-11-82 2B73 -> 00000330 # 1-11-83 2B74 -> 0000033C # 1-11-84 2B75 -> 00000334 # 1-11-85 2B76 -> 0000031D # 1-11-86 2B77 -> 0000031E # 1-11-87 2B78 -> 00000318 # 1-11-88 2B79 -> 00000319 # 1-11-89 2B7A -> 0000032A # 1-11-90 2B7B -> 0000033A # 1-11-91 2B7C -> 0000033B # 1-11-92 2B7D -> 00000303 # 1-11-93 2B7E -> 0000031A # 1-11-94 2C21 -> 00002776 # 1-12-1 2C22 -> 00002777 # 1-12-2 2C23 -> 00002778 # 1-12-3 2C24 -> 00002779 # 1-12-4 2C25 -> 0000277A # 1-12-5 2C26 -> 0000277B # 1-12-6 2C27 -> 0000277C # 1-12-7 2C28 -> 0000277D # 1-12-8 2C29 -> 0000277E # 1-12-9 2C2A -> 0000277F # 1-12-10 2C2B -> 000024EB # 1-12-11 2C2C -> 000024EC # 1-12-12 2C2D -> 000024ED # 1-12-13 2C2E -> 000024EE # 1-12-14 2C2F -> 000024EF # 1-12-15 2C30 -> 000024F0 # 1-12-16 2C31 -> 000024F1 # 1-12-17 2C32 -> 000024F2 # 1-12-18 2C33 -> 000024F3 # 1-12-19 2C34 -> 000024F4 # 1-12-20 2C35 -> 00002170 # 1-12-21 2C36 -> 00002171 # 1-12-22 2C37 -> 00002172 # 1-12-23 2C38 -> 00002173 # 1-12-24 2C39 -> 00002174 # 1-12-25 2C3A -> 00002175 # 1-12-26 2C3B -> 00002176 # 1-12-27 2C3C -> 00002177 # 1-12-28 2C3D -> 00002178 # 1-12-29 2C3E -> 00002179 # 1-12-30 2C3F -> 0000217A # 1-12-31 2C40 -> 0000217B # 1-12-32 2C41 -> 000024D0 # 1-12-33 2C42 -> 000024D1 # 1-12-34 2C43 -> 000024D2 # 1-12-35 2C44 -> 000024D3 # 1-12-36 2C45 -> 000024D4 # 1-12-37 2C46 -> 000024D5 # 1-12-38 2C47 -> 000024D6 # 1-12-39 2C48 -> 000024D7 # 1-12-40 2C49 -> 000024D8 # 1-12-41 2C4A -> 000024D9 # 1-12-42 2C4B -> 000024DA # 1-12-43 2C4C -> 000024DB # 1-12-44 2C4D -> 000024DC # 1-12-45 2C4E -> 000024DD # 1-12-46 2C4F -> 000024DE # 1-12-47 2C50 -> 000024DF # 1-12-48 2C51 -> 000024E0 # 1-12-49 2C52 -> 000024E1 # 1-12-50 2C53 -> 000024E2 # 1-12-51 2C54 -> 000024E3 # 1-12-52 2C55 -> 000024E4 # 1-12-53 2C56 -> 000024E5 # 1-12-54 2C57 -> 000024E6 # 1-12-55 2C58 -> 000024E7 # 1-12-56 2C59 -> 000024E8 # 1-12-57 2C5A -> 000024E9 # 1-12-58 2C5B -> 000032D0 # 1-12-59 2C5C -> 000032D1 # 1-12-60 2C5D -> 000032D2 # 1-12-61 2C5E -> 000032D3 # 1-12-62 2C5F -> 000032D4 # 1-12-63 2C60 -> 000032D5 # 1-12-64 2C61 -> 000032D6 # 1-12-65 2C62 -> 000032D7 # 1-12-66 2C63 -> 000032D8 # 1-12-67 2C64 -> 000032D9 # 1-12-68 2C65 -> 000032DA # 1-12-69 2C66 -> 000032DB # 1-12-70 2C67 -> 000032DC # 1-12-71 2C68 -> 000032DD # 1-12-72 2C69 -> 000032DE # 1-12-73 2C6A -> 000032DF # 1-12-74 2C6B -> 000032E0 # 1-12-75 2C6C -> 000032E1 # 1-12-76 2C6D -> 000032E2 # 1-12-77 2C6E -> 000032E3 # 1-12-78 2C6F -> 000032FA # 1-12-79 2C70 -> 000032E9 # 1-12-80 2C71 -> 000032E5 # 1-12-81 2C72 -> 000032ED # 1-12-82 2C73 -> 000032EC # 1-12-83 2C7D -> 00002051 # 1-12-93 2C7E -> 00002042 # 1-12-94 2D21 -> 00002460 # 1-13-1 2D22 -> 00002461 # 1-13-2 2D23 -> 00002462 # 1-13-3 2D24 -> 00002463 # 1-13-4 2D25 -> 00002464 # 1-13-5 2D26 -> 00002465 # 1-13-6 2D27 -> 00002466 # 1-13-7 2D28 -> 00002467 # 1-13-8 2D29 -> 00002468 # 1-13-9 2D2A -> 00002469 # 1-13-10 2D2B -> 0000246A # 1-13-11 2D2C -> 0000246B # 1-13-12 2D2D -> 0000246C # 1-13-13 2D2E -> 0000246D # 1-13-14 2D2F -> 0000246E # 1-13-15 2D30 -> 0000246F # 1-13-16 2D31 -> 00002470 # 1-13-17 2D32 -> 00002471 # 1-13-18 2D33 -> 00002472 # 1-13-19 2D34 -> 00002473 # 1-13-20 2D35 -> 00002160 # 1-13-21 2D36 -> 00002161 # 1-13-22 2D37 -> 00002162 # 1-13-23 2D38 -> 00002163 # 1-13-24 2D39 -> 00002164 # 1-13-25 2D3A -> 00002165 # 1-13-26 2D3B -> 00002166 # 1-13-27 2D3C -> 00002167 # 1-13-28 2D3D -> 00002168 # 1-13-29 2D3E -> 00002169 # 1-13-30 2D3F -> 0000216A # 1-13-31 2D40 -> 00003349 # 1-13-32 2D41 -> 00003314 # 1-13-33 2D42 -> 00003322 # 1-13-34 2D43 -> 0000334D # 1-13-35 2D44 -> 00003318 # 1-13-36 2D45 -> 00003327 # 1-13-37 2D46 -> 00003303 # 1-13-38 2D47 -> 00003336 # 1-13-39 2D48 -> 00003351 # 1-13-40 2D49 -> 00003357 # 1-13-41 2D4A -> 0000330D # 1-13-42 2D4B -> 00003326 # 1-13-43 2D4C -> 00003323 # 1-13-44 2D4D -> 0000332B # 1-13-45 2D4E -> 0000334A # 1-13-46 2D4F -> 0000333B # 1-13-47 2D50 -> 0000339C # 1-13-48 2D51 -> 0000339D # 1-13-49 2D52 -> 0000339E # 1-13-50 2D53 -> 0000338E # 1-13-51 2D54 -> 0000338F # 1-13-52 2D55 -> 000033C4 # 1-13-53 2D56 -> 000033A1 # 1-13-54 2D57 -> 0000216B # 1-13-55 2D5F -> 0000337B # 1-13-63 2D60 -> 0000301D # 1-13-64 2D61 -> 0000301F # 1-13-65 2D62 -> 00002116 # 1-13-66 2D63 -> 000033CD # 1-13-67 2D64 -> 00002121 # 1-13-68 2D65 -> 000032A4 # 1-13-69 2D66 -> 000032A5 # 1-13-70 2D67 -> 000032A6 # 1-13-71 2D68 -> 000032A7 # 1-13-72 2D69 -> 000032A8 # 1-13-73 2D6A -> 00003231 # 1-13-74 2D6B -> 00003232 # 1-13-75 2D6C -> 00003239 # 1-13-76 2D6D -> 0000337E # 1-13-77 2D6E -> 0000337D # 1-13-78 2D6F -> 0000337C # 1-13-79 2D73 -> 0000222E # 1-13-83 2D78 -> 0000221F # 1-13-88 2D79 -> 000022BF # 1-13-89 2D7D -> 00002756 # 1-13-93 2D7E -> 0000261E # 1-13-94 2E22 -> 0002000B # 1-14-2 2E23 -> 00003402 # 1-14-3 2E24 -> 00004E28 # 1-14-4 2E25 -> 00004E2F # 1-14-5 2E26 -> 00004E30 # 1-14-6 2E27 -> 00004E8D # 1-14-7 2E28 -> 00004EE1 # 1-14-8 2E29 -> 00004EFD # 1-14-9 2E2A -> 00004EFF # 1-14-10 2E2B -> 00004F03 # 1-14-11 2E2C -> 00004F0B # 1-14-12 2E2D -> 00004F60 # 1-14-13 2E2E -> 00004F48 # 1-14-14 2E2F -> 00004F49 # 1-14-15 2E30 -> 00004F56 # 1-14-16 2E31 -> 00004F5F # 1-14-17 2E32 -> 00004F6A # 1-14-18 2E33 -> 00004F6C # 1-14-19 2E34 -> 00004F7E # 1-14-20 2E35 -> 00004F8A # 1-14-21 2E36 -> 00004F94 # 1-14-22 2E37 -> 00004F97 # 1-14-23 2E38 -> 0000FA30 # 1-14-24 2E39 -> 00004FC9 # 1-14-25 2E3A -> 00004FE0 # 1-14-26 2E3B -> 00005001 # 1-14-27 2E3C -> 00005002 # 1-14-28 2E3D -> 0000500E # 1-14-29 2E3E -> 00005018 # 1-14-30 2E3F -> 00005027 # 1-14-31 2E40 -> 0000502E # 1-14-32 2E41 -> 00005040 # 1-14-33 2E42 -> 0000503B # 1-14-34 2E43 -> 00005041 # 1-14-35 2E44 -> 00005094 # 1-14-36 2E45 -> 000050CC # 1-14-37 2E46 -> 000050F2 # 1-14-38 2E47 -> 000050D0 # 1-14-39 2E48 -> 000050E6 # 1-14-40 2E49 -> 0000FA31 # 1-14-41 2E4A -> 00005106 # 1-14-42 2E4B -> 00005103 # 1-14-43 2E4C -> 0000510B # 1-14-44 2E4D -> 0000511E # 1-14-45 2E4E -> 00005135 # 1-14-46 2E4F -> 0000514A # 1-14-47 2E50 -> 0000FA32 # 1-14-48 2E51 -> 00005155 # 1-14-49 2E52 -> 00005157 # 1-14-50 2E53 -> 000034B5 # 1-14-51 2E54 -> 0000519D # 1-14-52 2E55 -> 000051C3 # 1-14-53 2E56 -> 000051CA # 1-14-54 2E57 -> 000051DE # 1-14-55 2E58 -> 000051E2 # 1-14-56 2E59 -> 000051EE # 1-14-57 2E5A -> 00005201 # 1-14-58 2E5B -> 000034DB # 1-14-59 2E5C -> 00005213 # 1-14-60 2E5D -> 00005215 # 1-14-61 2E5E -> 00005249 # 1-14-62 2E5F -> 00005257 # 1-14-63 2E60 -> 00005261 # 1-14-64 2E61 -> 00005293 # 1-14-65 2E62 -> 000052C8 # 1-14-66 2E63 -> 0000FA33 # 1-14-67 2E64 -> 000052CC # 1-14-68 2E65 -> 000052D0 # 1-14-69 2E66 -> 000052D6 # 1-14-70 2E67 -> 000052DB # 1-14-71 2E68 -> 0000FA34 # 1-14-72 2E69 -> 000052F0 # 1-14-73 2E6A -> 000052FB # 1-14-74 2E6B -> 00005300 # 1-14-75 2E6C -> 00005307 # 1-14-76 2E6D -> 0000531C # 1-14-77 2E6E -> 0000FA35 # 1-14-78 2E6F -> 00005361 # 1-14-79 2E70 -> 00005363 # 1-14-80 2E71 -> 0000537D # 1-14-81 2E72 -> 00005393 # 1-14-82 2E73 -> 0000539D # 1-14-83 2E74 -> 000053B2 # 1-14-84 2E75 -> 00005412 # 1-14-85 2E76 -> 00005427 # 1-14-86 2E77 -> 0000544D # 1-14-87 2E78 -> 0000549C # 1-14-88 2E79 -> 0000546B # 1-14-89 2E7A -> 00005474 # 1-14-90 2E7B -> 0000547F # 1-14-91 2E7C -> 00005488 # 1-14-92 2E7D -> 00005496 # 1-14-93 2E7E -> 000054A1 # 1-14-94 2F21 -> 000054A9 # 1-15-1 2F22 -> 000054C6 # 1-15-2 2F23 -> 000054FF # 1-15-3 2F24 -> 0000550E # 1-15-4 2F25 -> 0000552B # 1-15-5 2F26 -> 00005535 # 1-15-6 2F27 -> 00005550 # 1-15-7 2F28 -> 0000555E # 1-15-8 2F29 -> 00005581 # 1-15-9 2F2A -> 00005586 # 1-15-10 2F2B -> 0000558E # 1-15-11 2F2C -> 0000FA36 # 1-15-12 2F2D -> 000055AD # 1-15-13 2F2E -> 000055CE # 1-15-14 2F2F -> 0000FA37 # 1-15-15 2F30 -> 00005608 # 1-15-16 2F31 -> 0000560E # 1-15-17 2F32 -> 0000563B # 1-15-18 2F33 -> 00005649 # 1-15-19 2F34 -> 00005676 # 1-15-20 2F35 -> 00005666 # 1-15-21 2F36 -> 0000FA38 # 1-15-22 2F37 -> 0000566F # 1-15-23 2F38 -> 00005671 # 1-15-24 2F39 -> 00005672 # 1-15-25 2F3A -> 00005699 # 1-15-26 2F3B -> 0000569E # 1-15-27 2F3C -> 000056A9 # 1-15-28 2F3D -> 000056AC # 1-15-29 2F3E -> 000056B3 # 1-15-30 2F3F -> 000056C9 # 1-15-31 2F40 -> 000056CA # 1-15-32 2F41 -> 0000570A # 1-15-33 2F42 -> 0002123D # 1-15-34 2F43 -> 00005721 # 1-15-35 2F44 -> 0000572F # 1-15-36 2F45 -> 00005733 # 1-15-37 2F46 -> 00005734 # 1-15-38 2F47 -> 00005770 # 1-15-39 2F48 -> 00005777 # 1-15-40 2F49 -> 0000577C # 1-15-41 2F4A -> 0000579C # 1-15-42 2F4B -> 0000FA0F # 1-15-43 2F4C -> 0002131B # 1-15-44 2F4D -> 000057B8 # 1-15-45 2F4E -> 000057C7 # 1-15-46 2F4F -> 000057C8 # 1-15-47 2F50 -> 000057CF # 1-15-48 2F51 -> 000057E4 # 1-15-49 2F52 -> 000057ED # 1-15-50 2F53 -> 000057F5 # 1-15-51 2F54 -> 000057F6 # 1-15-52 2F55 -> 000057FF # 1-15-53 2F56 -> 00005809 # 1-15-54 2F57 -> 0000FA10 # 1-15-55 2F58 -> 00005861 # 1-15-56 2F59 -> 00005864 # 1-15-57 2F5A -> 0000FA39 # 1-15-58 2F5B -> 0000587C # 1-15-59 2F5C -> 00005889 # 1-15-60 2F5D -> 0000589E # 1-15-61 2F5E -> 0000FA3A # 1-15-62 2F5F -> 000058A9 # 1-15-63 2F60 -> 0002146E # 1-15-64 2F61 -> 000058D2 # 1-15-65 2F62 -> 000058CE # 1-15-66 2F63 -> 000058D4 # 1-15-67 2F64 -> 000058DA # 1-15-68 2F65 -> 000058E0 # 1-15-69 2F66 -> 000058E9 # 1-15-70 2F67 -> 0000590C # 1-15-71 2F68 -> 00008641 # 1-15-72 2F69 -> 0000595D # 1-15-73 2F6A -> 0000596D # 1-15-74 2F6B -> 0000598B # 1-15-75 2F6C -> 00005992 # 1-15-76 2F6D -> 000059A4 # 1-15-77 2F6E -> 000059C3 # 1-15-78 2F6F -> 000059D2 # 1-15-79 2F70 -> 000059DD # 1-15-80 2F71 -> 00005A13 # 1-15-81 2F72 -> 00005A23 # 1-15-82 2F73 -> 00005A67 # 1-15-83 2F74 -> 00005A6D # 1-15-84 2F75 -> 00005A77 # 1-15-85 2F76 -> 00005A7E # 1-15-86 2F77 -> 00005A84 # 1-15-87 2F78 -> 00005A9E # 1-15-88 2F79 -> 00005AA7 # 1-15-89 2F7A -> 00005AC4 # 1-15-90 2F7B -> 000218BD # 1-15-91 2F7C -> 00005B19 # 1-15-92 2F7D -> 00005B25 # 1-15-93 3021 -> 00004E9C # 1-16-1 3022 -> 00005516 # 1-16-2 3023 -> 00005A03 # 1-16-3 3024 -> 0000963F # 1-16-4 3025 -> 000054C0 # 1-16-5 3026 -> 0000611B # 1-16-6 3027 -> 00006328 # 1-16-7 3028 -> 000059F6 # 1-16-8 3029 -> 00009022 # 1-16-9 302A -> 00008475 # 1-16-10 302B -> 0000831C # 1-16-11 302C -> 00007A50 # 1-16-12 302D -> 000060AA # 1-16-13 302E -> 000063E1 # 1-16-14 302F -> 00006E25 # 1-16-15 3030 -> 000065ED # 1-16-16 3031 -> 00008466 # 1-16-17 3032 -> 000082A6 # 1-16-18 3033 -> 00009BF5 # 1-16-19 3034 -> 00006893 # 1-16-20 3035 -> 00005727 # 1-16-21 3036 -> 000065A1 # 1-16-22 3037 -> 00006271 # 1-16-23 3038 -> 00005B9B # 1-16-24 3039 -> 000059D0 # 1-16-25 303A -> 0000867B # 1-16-26 303B -> 000098F4 # 1-16-27 303C -> 00007D62 # 1-16-28 303D -> 00007DBE # 1-16-29 303E -> 00009B8E # 1-16-30 303F -> 00006216 # 1-16-31 3040 -> 00007C9F # 1-16-32 3041 -> 000088B7 # 1-16-33 3042 -> 00005B89 # 1-16-34 3043 -> 00005EB5 # 1-16-35 3044 -> 00006309 # 1-16-36 3045 -> 00006697 # 1-16-37 3046 -> 00006848 # 1-16-38 3047 -> 000095C7 # 1-16-39 3048 -> 0000978D # 1-16-40 3049 -> 0000674F # 1-16-41 304A -> 00004EE5 # 1-16-42 304B -> 00004F0A # 1-16-43 304C -> 00004F4D # 1-16-44 304D -> 00004F9D # 1-16-45 304E -> 00005049 # 1-16-46 304F -> 000056F2 # 1-16-47 3050 -> 00005937 # 1-16-48 3051 -> 000059D4 # 1-16-49 3052 -> 00005A01 # 1-16-50 3053 -> 00005C09 # 1-16-51 3054 -> 000060DF # 1-16-52 3055 -> 0000610F # 1-16-53 3056 -> 00006170 # 1-16-54 3057 -> 00006613 # 1-16-55 3058 -> 00006905 # 1-16-56 3059 -> 000070BA # 1-16-57 305A -> 0000754F # 1-16-58 305B -> 00007570 # 1-16-59 305C -> 000079FB # 1-16-60 305D -> 00007DAD # 1-16-61 305E -> 00007DEF # 1-16-62 305F -> 000080C3 # 1-16-63 3060 -> 0000840E # 1-16-64 3061 -> 00008863 # 1-16-65 3062 -> 00008B02 # 1-16-66 3063 -> 00009055 # 1-16-67 3064 -> 0000907A # 1-16-68 3065 -> 0000533B # 1-16-69 3066 -> 00004E95 # 1-16-70 3067 -> 00004EA5 # 1-16-71 3068 -> 000057DF # 1-16-72 3069 -> 000080B2 # 1-16-73 306A -> 000090C1 # 1-16-74 306B -> 000078EF # 1-16-75 306C -> 00004E00 # 1-16-76 306D -> 000058F1 # 1-16-77 306E -> 00006EA2 # 1-16-78 306F -> 00009038 # 1-16-79 3070 -> 00007A32 # 1-16-80 3071 -> 00008328 # 1-16-81 3072 -> 0000828B # 1-16-82 3073 -> 00009C2F # 1-16-83 3074 -> 00005141 # 1-16-84 3075 -> 00005370 # 1-16-85 3076 -> 000054BD # 1-16-86 3077 -> 000054E1 # 1-16-87 3078 -> 000056E0 # 1-16-88 3079 -> 000059FB # 1-16-89 307A -> 00005F15 # 1-16-90 307B -> 000098F2 # 1-16-91 307C -> 00006DEB # 1-16-92 307D -> 000080E4 # 1-16-93 307E -> 0000852D # 1-16-94 3121 -> 00009662 # 1-17-1 3122 -> 00009670 # 1-17-2 3123 -> 000096A0 # 1-17-3 3124 -> 000097FB # 1-17-4 3125 -> 0000540B # 1-17-5 3126 -> 000053F3 # 1-17-6 3127 -> 00005B87 # 1-17-7 3128 -> 000070CF # 1-17-8 3129 -> 00007FBD # 1-17-9 312A -> 00008FC2 # 1-17-10 312B -> 000096E8 # 1-17-11 312C -> 0000536F # 1-17-12 312D -> 00009D5C # 1-17-13 312E -> 00007ABA # 1-17-14 312F -> 00004E11 # 1-17-15 3130 -> 00007893 # 1-17-16 3131 -> 000081FC # 1-17-17 3132 -> 00006E26 # 1-17-18 3133 -> 00005618 # 1-17-19 3134 -> 00005504 # 1-17-20 3135 -> 00006B1D # 1-17-21 3136 -> 0000851A # 1-17-22 3137 -> 00009C3B # 1-17-23 3138 -> 000059E5 # 1-17-24 3139 -> 000053A9 # 1-17-25 313A -> 00006D66 # 1-17-26 313B -> 000074DC # 1-17-27 313C -> 0000958F # 1-17-28 313D -> 00005642 # 1-17-29 313E -> 00004E91 # 1-17-30 313F -> 0000904B # 1-17-31 3140 -> 000096F2 # 1-17-32 3141 -> 0000834F # 1-17-33 3142 -> 0000990C # 1-17-34 3143 -> 000053E1 # 1-17-35 3144 -> 000055B6 # 1-17-36 3145 -> 00005B30 # 1-17-37 3146 -> 00005F71 # 1-17-38 3147 -> 00006620 # 1-17-39 3148 -> 000066F3 # 1-17-40 3149 -> 00006804 # 1-17-41 314A -> 00006C38 # 1-17-42 314B -> 00006CF3 # 1-17-43 314C -> 00006D29 # 1-17-44 314D -> 0000745B # 1-17-45 314E -> 000076C8 # 1-17-46 314F -> 00007A4E # 1-17-47 3150 -> 00009834 # 1-17-48 3151 -> 000082F1 # 1-17-49 3152 -> 0000885B # 1-17-50 3153 -> 00008A60 # 1-17-51 3154 -> 000092ED # 1-17-52 3155 -> 00006DB2 # 1-17-53 3156 -> 000075AB # 1-17-54 3157 -> 000076CA # 1-17-55 3158 -> 000099C5 # 1-17-56 3159 -> 000060A6 # 1-17-57 315A -> 00008B01 # 1-17-58 315B -> 00008D8A # 1-17-59 315C -> 000095B2 # 1-17-60 315D -> 0000698E # 1-17-61 315E -> 000053AD # 1-17-62 315F -> 00005186 # 1-17-63 3160 -> 00005712 # 1-17-64 3161 -> 00005830 # 1-17-65 3162 -> 00005944 # 1-17-66 3163 -> 00005BB4 # 1-17-67 3164 -> 00005EF6 # 1-17-68 3165 -> 00006028 # 1-17-69 3166 -> 000063A9 # 1-17-70 3167 -> 000063F4 # 1-17-71 3168 -> 00006CBF # 1-17-72 3169 -> 00006F14 # 1-17-73 316A -> 0000708E # 1-17-74 316B -> 00007114 # 1-17-75 316C -> 00007159 # 1-17-76 316D -> 000071D5 # 1-17-77 316E -> 0000733F # 1-17-78 316F -> 00007E01 # 1-17-79 3170 -> 00008276 # 1-17-80 3171 -> 000082D1 # 1-17-81 3172 -> 00008597 # 1-17-82 3173 -> 00009060 # 1-17-83 3174 -> 0000925B # 1-17-84 3175 -> 00009D1B # 1-17-85 3176 -> 00005869 # 1-17-86 3177 -> 000065BC # 1-17-87 3178 -> 00006C5A # 1-17-88 3179 -> 00007525 # 1-17-89 317A -> 000051F9 # 1-17-90 317B -> 0000592E # 1-17-91 317C -> 00005965 # 1-17-92 317D -> 00005F80 # 1-17-93 317E -> 00005FDC # 1-17-94 3221 -> 000062BC # 1-18-1 3222 -> 000065FA # 1-18-2 3223 -> 00006A2A # 1-18-3 3224 -> 00006B27 # 1-18-4 3225 -> 00006BB4 # 1-18-5 3226 -> 0000738B # 1-18-6 3227 -> 00007FC1 # 1-18-7 3228 -> 00008956 # 1-18-8 3229 -> 00009D2C # 1-18-9 322A -> 00009D0E # 1-18-10 322B -> 00009EC4 # 1-18-11 322C -> 00005CA1 # 1-18-12 322D -> 00006C96 # 1-18-13 322E -> 0000837B # 1-18-14 322F -> 00005104 # 1-18-15 3230 -> 00005C4B # 1-18-16 3231 -> 000061B6 # 1-18-17 3232 -> 000081C6 # 1-18-18 3233 -> 00006876 # 1-18-19 3234 -> 00007261 # 1-18-20 3235 -> 00004E59 # 1-18-21 3236 -> 00004FFA # 1-18-22 3237 -> 00005378 # 1-18-23 3238 -> 00006069 # 1-18-24 3239 -> 00006E29 # 1-18-25 323A -> 00007A4F # 1-18-26 323B -> 000097F3 # 1-18-27 323C -> 00004E0B # 1-18-28 323D -> 00005316 # 1-18-29 323E -> 00004EEE # 1-18-30 323F -> 00004F55 # 1-18-31 3240 -> 00004F3D # 1-18-32 3241 -> 00004FA1 # 1-18-33 3242 -> 00004F73 # 1-18-34 3243 -> 000052A0 # 1-18-35 3244 -> 000053EF # 1-18-36 3245 -> 00005609 # 1-18-37 3246 -> 0000590F # 1-18-38 3247 -> 00005AC1 # 1-18-39 3248 -> 00005BB6 # 1-18-40 3249 -> 00005BE1 # 1-18-41 324A -> 000079D1 # 1-18-42 324B -> 00006687 # 1-18-43 324C -> 0000679C # 1-18-44 324D -> 000067B6 # 1-18-45 324E -> 00006B4C # 1-18-46 324F -> 00006CB3 # 1-18-47 3250 -> 0000706B # 1-18-48 3251 -> 000073C2 # 1-18-49 3252 -> 0000798D # 1-18-50 3253 -> 000079BE # 1-18-51 3254 -> 00007A3C # 1-18-52 3255 -> 00007B87 # 1-18-53 3256 -> 000082B1 # 1-18-54 3257 -> 000082DB # 1-18-55 3258 -> 00008304 # 1-18-56 3259 -> 00008377 # 1-18-57 325A -> 000083EF # 1-18-58 325B -> 000083D3 # 1-18-59 325C -> 00008766 # 1-18-60 325D -> 00008AB2 # 1-18-61 325E -> 00005629 # 1-18-62 325F -> 00008CA8 # 1-18-63 3260 -> 00008FE6 # 1-18-64 3261 -> 0000904E # 1-18-65 3262 -> 0000971E # 1-18-66 3263 -> 0000868A # 1-18-67 3264 -> 00004FC4 # 1-18-68 3265 -> 00005CE8 # 1-18-69 3266 -> 00006211 # 1-18-70 3267 -> 00007259 # 1-18-71 3268 -> 0000753B # 1-18-72 3269 -> 000081E5 # 1-18-73 326A -> 000082BD # 1-18-74 326B -> 000086FE # 1-18-75 326C -> 00008CC0 # 1-18-76 326D -> 000096C5 # 1-18-77 326E -> 00009913 # 1-18-78 326F -> 000099D5 # 1-18-79 3270 -> 00004ECB # 1-18-80 3271 -> 00004F1A # 1-18-81 3272 -> 000089E3 # 1-18-82 3273 -> 000056DE # 1-18-83 3274 -> 0000584A # 1-18-84 3275 -> 000058CA # 1-18-85 3276 -> 00005EFB # 1-18-86 3277 -> 00005FEB # 1-18-87 3278 -> 0000602A # 1-18-88 3279 -> 00006094 # 1-18-89 327A -> 00006062 # 1-18-90 327B -> 000061D0 # 1-18-91 327C -> 00006212 # 1-18-92 327D -> 000062D0 # 1-18-93 327E -> 00006539 # 1-18-94 3321 -> 00009B41 # 1-19-1 3322 -> 00006666 # 1-19-2 3323 -> 000068B0 # 1-19-3 3324 -> 00006D77 # 1-19-4 3325 -> 00007070 # 1-19-5 3326 -> 0000754C # 1-19-6 3327 -> 00007686 # 1-19-7 3328 -> 00007D75 # 1-19-8 3329 -> 000082A5 # 1-19-9 332A -> 000087F9 # 1-19-10 332B -> 0000958B # 1-19-11 332C -> 0000968E # 1-19-12 332D -> 00008C9D # 1-19-13 332E -> 000051F1 # 1-19-14 332F -> 000052BE # 1-19-15 3330 -> 00005916 # 1-19-16 3331 -> 000054B3 # 1-19-17 3332 -> 00005BB3 # 1-19-18 3333 -> 00005D16 # 1-19-19 3334 -> 00006168 # 1-19-20 3335 -> 00006982 # 1-19-21 3336 -> 00006DAF # 1-19-22 3337 -> 0000788D # 1-19-23 3338 -> 000084CB # 1-19-24 3339 -> 00008857 # 1-19-25 333A -> 00008A72 # 1-19-26 333B -> 000093A7 # 1-19-27 333C -> 00009AB8 # 1-19-28 333D -> 00006D6C # 1-19-29 333E -> 000099A8 # 1-19-30 333F -> 000086D9 # 1-19-31 3340 -> 000057A3 # 1-19-32 3341 -> 000067FF # 1-19-33 3342 -> 000086CE # 1-19-34 3343 -> 0000920E # 1-19-35 3344 -> 00005283 # 1-19-36 3345 -> 00005687 # 1-19-37 3346 -> 00005404 # 1-19-38 3347 -> 00005ED3 # 1-19-39 3348 -> 000062E1 # 1-19-40 3349 -> 000064B9 # 1-19-41 334A -> 0000683C # 1-19-42 334B -> 00006838 # 1-19-43 334C -> 00006BBB # 1-19-44 334D -> 00007372 # 1-19-45 334E -> 000078BA # 1-19-46 334F -> 00007A6B # 1-19-47 3350 -> 0000899A # 1-19-48 3351 -> 000089D2 # 1-19-49 3352 -> 00008D6B # 1-19-50 3353 -> 00008F03 # 1-19-51 3354 -> 000090ED # 1-19-52 3355 -> 000095A3 # 1-19-53 3356 -> 00009694 # 1-19-54 3357 -> 00009769 # 1-19-55 3358 -> 00005B66 # 1-19-56 3359 -> 00005CB3 # 1-19-57 335A -> 0000697D # 1-19-58 335B -> 0000984D # 1-19-59 335C -> 0000984E # 1-19-60 335D -> 0000639B # 1-19-61 335E -> 00007B20 # 1-19-62 335F -> 00006A2B # 1-19-63 3360 -> 00006A7F # 1-19-64 3361 -> 000068B6 # 1-19-65 3362 -> 00009C0D # 1-19-66 3363 -> 00006F5F # 1-19-67 3364 -> 00005272 # 1-19-68 3365 -> 0000559D # 1-19-69 3366 -> 00006070 # 1-19-70 3367 -> 000062EC # 1-19-71 3368 -> 00006D3B # 1-19-72 3369 -> 00006E07 # 1-19-73 336A -> 00006ED1 # 1-19-74 336B -> 0000845B # 1-19-75 336C -> 00008910 # 1-19-76 336D -> 00008F44 # 1-19-77 336E -> 00004E14 # 1-19-78 336F -> 00009C39 # 1-19-79 3370 -> 000053F6 # 1-19-80 3371 -> 0000691B # 1-19-81 3372 -> 00006A3A # 1-19-82 3373 -> 00009784 # 1-19-83 3374 -> 0000682A # 1-19-84 3375 -> 0000515C # 1-19-85 3376 -> 00007AC3 # 1-19-86 3377 -> 000084B2 # 1-19-87 3378 -> 000091DC # 1-19-88 3379 -> 0000938C # 1-19-89 337A -> 0000565B # 1-19-90 337B -> 00009D28 # 1-19-91 337C -> 00006822 # 1-19-92 337D -> 00008305 # 1-19-93 337E -> 00008431 # 1-19-94 3421 -> 00007CA5 # 1-20-1 3422 -> 00005208 # 1-20-2 3423 -> 000082C5 # 1-20-3 3424 -> 000074E6 # 1-20-4 3425 -> 00004E7E # 1-20-5 3426 -> 00004F83 # 1-20-6 3427 -> 000051A0 # 1-20-7 3428 -> 00005BD2 # 1-20-8 3429 -> 0000520A # 1-20-9 342A -> 000052D8 # 1-20-10 342B -> 000052E7 # 1-20-11 342C -> 00005DFB # 1-20-12 342D -> 0000559A # 1-20-13 342E -> 0000582A # 1-20-14 342F -> 000059E6 # 1-20-15 3430 -> 00005B8C # 1-20-16 3431 -> 00005B98 # 1-20-17 3432 -> 00005BDB # 1-20-18 3433 -> 00005E72 # 1-20-19 3434 -> 00005E79 # 1-20-20 3435 -> 000060A3 # 1-20-21 3436 -> 0000611F # 1-20-22 3437 -> 00006163 # 1-20-23 3438 -> 000061BE # 1-20-24 3439 -> 000063DB # 1-20-25 343A -> 00006562 # 1-20-26 343B -> 000067D1 # 1-20-27 343C -> 00006853 # 1-20-28 343D -> 000068FA # 1-20-29 343E -> 00006B3E # 1-20-30 343F -> 00006B53 # 1-20-31 3440 -> 00006C57 # 1-20-32 3441 -> 00006F22 # 1-20-33 3442 -> 00006F97 # 1-20-34 3443 -> 00006F45 # 1-20-35 3444 -> 000074B0 # 1-20-36 3445 -> 00007518 # 1-20-37 3446 -> 000076E3 # 1-20-38 3447 -> 0000770B # 1-20-39 3448 -> 00007AFF # 1-20-40 3449 -> 00007BA1 # 1-20-41 344A -> 00007C21 # 1-20-42 344B -> 00007DE9 # 1-20-43 344C -> 00007F36 # 1-20-44 344D -> 00007FF0 # 1-20-45 344E -> 0000809D # 1-20-46 344F -> 00008266 # 1-20-47 3450 -> 0000839E # 1-20-48 3451 -> 000089B3 # 1-20-49 3452 -> 00008ACC # 1-20-50 3453 -> 00008CAB # 1-20-51 3454 -> 00009084 # 1-20-52 3455 -> 00009451 # 1-20-53 3456 -> 00009593 # 1-20-54 3457 -> 00009591 # 1-20-55 3458 -> 000095A2 # 1-20-56 3459 -> 00009665 # 1-20-57 345A -> 000097D3 # 1-20-58 345B -> 00009928 # 1-20-59 345C -> 00008218 # 1-20-60 345D -> 00004E38 # 1-20-61 345E -> 0000542B # 1-20-62 345F -> 00005CB8 # 1-20-63 3460 -> 00005DCC # 1-20-64 3461 -> 000073A9 # 1-20-65 3462 -> 0000764C # 1-20-66 3463 -> 0000773C # 1-20-67 3464 -> 00005CA9 # 1-20-68 3465 -> 00007FEB # 1-20-69 3466 -> 00008D0B # 1-20-70 3467 -> 000096C1 # 1-20-71 3468 -> 00009811 # 1-20-72 3469 -> 00009854 # 1-20-73 346A -> 00009858 # 1-20-74 346B -> 00004F01 # 1-20-75 346C -> 00004F0E # 1-20-76 346D -> 00005371 # 1-20-77 346E -> 0000559C # 1-20-78 346F -> 00005668 # 1-20-79 3470 -> 000057FA # 1-20-80 3471 -> 00005947 # 1-20-81 3472 -> 00005B09 # 1-20-82 3473 -> 00005BC4 # 1-20-83 3474 -> 00005C90 # 1-20-84 3475 -> 00005E0C # 1-20-85 3476 -> 00005E7E # 1-20-86 3477 -> 00005FCC # 1-20-87 3478 -> 000063EE # 1-20-88 3479 -> 0000673A # 1-20-89 347A -> 000065D7 # 1-20-90 347B -> 000065E2 # 1-20-91 347C -> 0000671F # 1-20-92 347D -> 000068CB # 1-20-93 347E -> 000068C4 # 1-20-94 3521 -> 00006A5F # 1-21-1 3522 -> 00005E30 # 1-21-2 3523 -> 00006BC5 # 1-21-3 3524 -> 00006C17 # 1-21-4 3525 -> 00006C7D # 1-21-5 3526 -> 0000757F # 1-21-6 3527 -> 00007948 # 1-21-7 3528 -> 00005B63 # 1-21-8 3529 -> 00007A00 # 1-21-9 352A -> 00007D00 # 1-21-10 352B -> 00005FBD # 1-21-11 352C -> 0000898F # 1-21-12 352D -> 00008A18 # 1-21-13 352E -> 00008CB4 # 1-21-14 352F -> 00008D77 # 1-21-15 3530 -> 00008ECC # 1-21-16 3531 -> 00008F1D # 1-21-17 3532 -> 000098E2 # 1-21-18 3533 -> 00009A0E # 1-21-19 3534 -> 00009B3C # 1-21-20 3535 -> 00004E80 # 1-21-21 3536 -> 0000507D # 1-21-22 3537 -> 00005100 # 1-21-23 3538 -> 00005993 # 1-21-24 3539 -> 00005B9C # 1-21-25 353A -> 0000622F # 1-21-26 353B -> 00006280 # 1-21-27 353C -> 000064EC # 1-21-28 353D -> 00006B3A # 1-21-29 353E -> 000072A0 # 1-21-30 353F -> 00007591 # 1-21-31 3540 -> 00007947 # 1-21-32 3541 -> 00007FA9 # 1-21-33 3542 -> 000087FB # 1-21-34 3543 -> 00008ABC # 1-21-35 3544 -> 00008B70 # 1-21-36 3545 -> 000063AC # 1-21-37 3546 -> 000083CA # 1-21-38 3547 -> 000097A0 # 1-21-39 3548 -> 00005409 # 1-21-40 3549 -> 00005403 # 1-21-41 354A -> 000055AB # 1-21-42 354B -> 00006854 # 1-21-43 354C -> 00006A58 # 1-21-44 354D -> 00008A70 # 1-21-45 354E -> 00007827 # 1-21-46 354F -> 00006775 # 1-21-47 3550 -> 00009ECD # 1-21-48 3551 -> 00005374 # 1-21-49 3552 -> 00005BA2 # 1-21-50 3553 -> 0000811A # 1-21-51 3554 -> 00008650 # 1-21-52 3555 -> 00009006 # 1-21-53 3556 -> 00004E18 # 1-21-54 3557 -> 00004E45 # 1-21-55 3558 -> 00004EC7 # 1-21-56 3559 -> 00004F11 # 1-21-57 355A -> 000053CA # 1-21-58 355B -> 00005438 # 1-21-59 355C -> 00005BAE # 1-21-60 355D -> 00005F13 # 1-21-61 355E -> 00006025 # 1-21-62 355F -> 00006551 # 1-21-63 3560 -> 0000673D # 1-21-64 3561 -> 00006C42 # 1-21-65 3562 -> 00006C72 # 1-21-66 3563 -> 00006CE3 # 1-21-67 3564 -> 00007078 # 1-21-68 3565 -> 00007403 # 1-21-69 3566 -> 00007A76 # 1-21-70 3567 -> 00007AAE # 1-21-71 3568 -> 00007B08 # 1-21-72 3569 -> 00007D1A # 1-21-73 356A -> 00007CFE # 1-21-74 356B -> 00007D66 # 1-21-75 356C -> 000065E7 # 1-21-76 356D -> 0000725B # 1-21-77 356E -> 000053BB # 1-21-78 356F -> 00005C45 # 1-21-79 3570 -> 00005DE8 # 1-21-80 3571 -> 000062D2 # 1-21-81 3572 -> 000062E0 # 1-21-82 3573 -> 00006319 # 1-21-83 3574 -> 00006E20 # 1-21-84 3575 -> 0000865A # 1-21-85 3576 -> 00008A31 # 1-21-86 3577 -> 00008DDD # 1-21-87 3578 -> 000092F8 # 1-21-88 3579 -> 00006F01 # 1-21-89 357A -> 000079A6 # 1-21-90 357B -> 00009B5A # 1-21-91 357C -> 00004EA8 # 1-21-92 357D -> 00004EAB # 1-21-93 357E -> 00004EAC # 1-21-94 3621 -> 00004F9B # 1-22-1 3622 -> 00004FA0 # 1-22-2 3623 -> 000050D1 # 1-22-3 3624 -> 00005147 # 1-22-4 3625 -> 00007AF6 # 1-22-5 3626 -> 00005171 # 1-22-6 3627 -> 000051F6 # 1-22-7 3628 -> 00005354 # 1-22-8 3629 -> 00005321 # 1-22-9 362A -> 0000537F # 1-22-10 362B -> 000053EB # 1-22-11 362C -> 000055AC # 1-22-12 362D -> 00005883 # 1-22-13 362E -> 00005CE1 # 1-22-14 362F -> 00005F37 # 1-22-15 3630 -> 00005F4A # 1-22-16 3631 -> 0000602F # 1-22-17 3632 -> 00006050 # 1-22-18 3633 -> 0000606D # 1-22-19 3634 -> 0000631F # 1-22-20 3635 -> 00006559 # 1-22-21 3636 -> 00006A4B # 1-22-22 3637 -> 00006CC1 # 1-22-23 3638 -> 000072C2 # 1-22-24 3639 -> 000072ED # 1-22-25 363A -> 000077EF # 1-22-26 363B -> 000080F8 # 1-22-27 363C -> 00008105 # 1-22-28 363D -> 00008208 # 1-22-29 363E -> 0000854E # 1-22-30 363F -> 000090F7 # 1-22-31 3640 -> 000093E1 # 1-22-32 3641 -> 000097FF # 1-22-33 3642 -> 00009957 # 1-22-34 3643 -> 00009A5A # 1-22-35 3644 -> 00004EF0 # 1-22-36 3645 -> 000051DD # 1-22-37 3646 -> 00005C2D # 1-22-38 3647 -> 00006681 # 1-22-39 3648 -> 0000696D # 1-22-40 3649 -> 00005C40 # 1-22-41 364A -> 000066F2 # 1-22-42 364B -> 00006975 # 1-22-43 364C -> 00007389 # 1-22-44 364D -> 00006850 # 1-22-45 364E -> 00007C81 # 1-22-46 364F -> 000050C5 # 1-22-47 3650 -> 000052E4 # 1-22-48 3651 -> 00005747 # 1-22-49 3652 -> 00005DFE # 1-22-50 3653 -> 00009326 # 1-22-51 3654 -> 000065A4 # 1-22-52 3655 -> 00006B23 # 1-22-53 3656 -> 00006B3D # 1-22-54 3657 -> 00007434 # 1-22-55 3658 -> 00007981 # 1-22-56 3659 -> 000079BD # 1-22-57 365A -> 00007B4B # 1-22-58 365B -> 00007DCA # 1-22-59 365C -> 000082B9 # 1-22-60 365D -> 000083CC # 1-22-61 365E -> 0000887F # 1-22-62 365F -> 0000895F # 1-22-63 3660 -> 00008B39 # 1-22-64 3661 -> 00008FD1 # 1-22-65 3662 -> 000091D1 # 1-22-66 3663 -> 0000541F # 1-22-67 3664 -> 00009280 # 1-22-68 3665 -> 00004E5D # 1-22-69 3666 -> 00005036 # 1-22-70 3667 -> 000053E5 # 1-22-71 3668 -> 0000533A # 1-22-72 3669 -> 000072D7 # 1-22-73 366A -> 00007396 # 1-22-74 366B -> 000077E9 # 1-22-75 366C -> 000082E6 # 1-22-76 366D -> 00008EAF # 1-22-77 366E -> 000099C6 # 1-22-78 366F -> 000099C8 # 1-22-79 3670 -> 000099D2 # 1-22-80 3671 -> 00005177 # 1-22-81 3672 -> 0000611A # 1-22-82 3673 -> 0000865E # 1-22-83 3674 -> 000055B0 # 1-22-84 3675 -> 00007A7A # 1-22-85 3676 -> 00005076 # 1-22-86 3677 -> 00005BD3 # 1-22-87 3678 -> 00009047 # 1-22-88 3679 -> 00009685 # 1-22-89 367A -> 00004E32 # 1-22-90 367B -> 00006ADB # 1-22-91 367C -> 000091E7 # 1-22-92 367D -> 00005C51 # 1-22-93 367E -> 00005C48 # 1-22-94 3721 -> 00006398 # 1-23-1 3722 -> 00007A9F # 1-23-2 3723 -> 00006C93 # 1-23-3 3724 -> 00009774 # 1-23-4 3725 -> 00008F61 # 1-23-5 3726 -> 00007AAA # 1-23-6 3727 -> 0000718A # 1-23-7 3728 -> 00009688 # 1-23-8 3729 -> 00007C82 # 1-23-9 372A -> 00006817 # 1-23-10 372B -> 00007E70 # 1-23-11 372C -> 00006851 # 1-23-12 372D -> 0000936C # 1-23-13 372E -> 000052F2 # 1-23-14 372F -> 0000541B # 1-23-15 3730 -> 000085AB # 1-23-16 3731 -> 00008A13 # 1-23-17 3732 -> 00007FA4 # 1-23-18 3733 -> 00008ECD # 1-23-19 3734 -> 000090E1 # 1-23-20 3735 -> 00005366 # 1-23-21 3736 -> 00008888 # 1-23-22 3737 -> 00007941 # 1-23-23 3738 -> 00004FC2 # 1-23-24 3739 -> 000050BE # 1-23-25 373A -> 00005211 # 1-23-26 373B -> 00005144 # 1-23-27 373C -> 00005553 # 1-23-28 373D -> 0000572D # 1-23-29 373E -> 000073EA # 1-23-30 373F -> 0000578B # 1-23-31 3740 -> 00005951 # 1-23-32 3741 -> 00005F62 # 1-23-33 3742 -> 00005F84 # 1-23-34 3743 -> 00006075 # 1-23-35 3744 -> 00006176 # 1-23-36 3745 -> 00006167 # 1-23-37 3746 -> 000061A9 # 1-23-38 3747 -> 000063B2 # 1-23-39 3748 -> 0000643A # 1-23-40 3749 -> 0000656C # 1-23-41 374A -> 0000666F # 1-23-42 374B -> 00006842 # 1-23-43 374C -> 00006E13 # 1-23-44 374D -> 00007566 # 1-23-45 374E -> 00007A3D # 1-23-46 374F -> 00007CFB # 1-23-47 3750 -> 00007D4C # 1-23-48 3751 -> 00007D99 # 1-23-49 3752 -> 00007E4B # 1-23-50 3753 -> 00007F6B # 1-23-51 3754 -> 0000830E # 1-23-52 3755 -> 0000834A # 1-23-53 3756 -> 000086CD # 1-23-54 3757 -> 00008A08 # 1-23-55 3758 -> 00008A63 # 1-23-56 3759 -> 00008B66 # 1-23-57 375A -> 00008EFD # 1-23-58 375B -> 0000981A # 1-23-59 375C -> 00009D8F # 1-23-60 375D -> 000082B8 # 1-23-61 375E -> 00008FCE # 1-23-62 375F -> 00009BE8 # 1-23-63 3760 -> 00005287 # 1-23-64 3761 -> 0000621F # 1-23-65 3762 -> 00006483 # 1-23-66 3763 -> 00006FC0 # 1-23-67 3764 -> 00009699 # 1-23-68 3765 -> 00006841 # 1-23-69 3766 -> 00005091 # 1-23-70 3767 -> 00006B20 # 1-23-71 3768 -> 00006C7A # 1-23-72 3769 -> 00006F54 # 1-23-73 376A -> 00007A74 # 1-23-74 376B -> 00007D50 # 1-23-75 376C -> 00008840 # 1-23-76 376D -> 00008A23 # 1-23-77 376E -> 00006708 # 1-23-78 376F -> 00004EF6 # 1-23-79 3770 -> 00005039 # 1-23-80 3771 -> 00005026 # 1-23-81 3772 -> 00005065 # 1-23-82 3773 -> 0000517C # 1-23-83 3774 -> 00005238 # 1-23-84 3775 -> 00005263 # 1-23-85 3776 -> 000055A7 # 1-23-86 3777 -> 0000570F # 1-23-87 3778 -> 00005805 # 1-23-88 3779 -> 00005ACC # 1-23-89 377A -> 00005EFA # 1-23-90 377B -> 000061B2 # 1-23-91 377C -> 000061F8 # 1-23-92 377D -> 000062F3 # 1-23-93 377E -> 00006372 # 1-23-94 3821 -> 0000691C # 1-24-1 3822 -> 00006A29 # 1-24-2 3823 -> 0000727D # 1-24-3 3824 -> 000072AC # 1-24-4 3825 -> 0000732E # 1-24-5 3826 -> 00007814 # 1-24-6 3827 -> 0000786F # 1-24-7 3828 -> 00007D79 # 1-24-8 3829 -> 0000770C # 1-24-9 382A -> 000080A9 # 1-24-10 382B -> 0000898B # 1-24-11 382C -> 00008B19 # 1-24-12 382D -> 00008CE2 # 1-24-13 382E -> 00008ED2 # 1-24-14 382F -> 00009063 # 1-24-15 3830 -> 00009375 # 1-24-16 3831 -> 0000967A # 1-24-17 3832 -> 00009855 # 1-24-18 3833 -> 00009A13 # 1-24-19 3834 -> 00009E78 # 1-24-20 3835 -> 00005143 # 1-24-21 3836 -> 0000539F # 1-24-22 3837 -> 000053B3 # 1-24-23 3838 -> 00005E7B # 1-24-24 3839 -> 00005F26 # 1-24-25 383A -> 00006E1B # 1-24-26 383B -> 00006E90 # 1-24-27 383C -> 00007384 # 1-24-28 383D -> 000073FE # 1-24-29 383E -> 00007D43 # 1-24-30 383F -> 00008237 # 1-24-31 3840 -> 00008A00 # 1-24-32 3841 -> 00008AFA # 1-24-33 3842 -> 00009650 # 1-24-34 3843 -> 00004E4E # 1-24-35 3844 -> 0000500B # 1-24-36 3845 -> 000053E4 # 1-24-37 3846 -> 0000547C # 1-24-38 3847 -> 000056FA # 1-24-39 3848 -> 000059D1 # 1-24-40 3849 -> 00005B64 # 1-24-41 384A -> 00005DF1 # 1-24-42 384B -> 00005EAB # 1-24-43 384C -> 00005F27 # 1-24-44 384D -> 00006238 # 1-24-45 384E -> 00006545 # 1-24-46 384F -> 000067AF # 1-24-47 3850 -> 00006E56 # 1-24-48 3851 -> 000072D0 # 1-24-49 3852 -> 00007CCA # 1-24-50 3853 -> 000088B4 # 1-24-51 3854 -> 000080A1 # 1-24-52 3855 -> 000080E1 # 1-24-53 3856 -> 000083F0 # 1-24-54 3857 -> 0000864E # 1-24-55 3858 -> 00008A87 # 1-24-56 3859 -> 00008DE8 # 1-24-57 385A -> 00009237 # 1-24-58 385B -> 000096C7 # 1-24-59 385C -> 00009867 # 1-24-60 385D -> 00009F13 # 1-24-61 385E -> 00004E94 # 1-24-62 385F -> 00004E92 # 1-24-63 3860 -> 00004F0D # 1-24-64 3861 -> 00005348 # 1-24-65 3862 -> 00005449 # 1-24-66 3863 -> 0000543E # 1-24-67 3864 -> 00005A2F # 1-24-68 3865 -> 00005F8C # 1-24-69 3866 -> 00005FA1 # 1-24-70 3867 -> 0000609F # 1-24-71 3868 -> 000068A7 # 1-24-72 3869 -> 00006A8E # 1-24-73 386A -> 0000745A # 1-24-74 386B -> 00007881 # 1-24-75 386C -> 00008A9E # 1-24-76 386D -> 00008AA4 # 1-24-77 386E -> 00008B77 # 1-24-78 386F -> 00009190 # 1-24-79 3870 -> 00004E5E # 1-24-80 3871 -> 00009BC9 # 1-24-81 3872 -> 00004EA4 # 1-24-82 3873 -> 00004F7C # 1-24-83 3874 -> 00004FAF # 1-24-84 3875 -> 00005019 # 1-24-85 3876 -> 00005016 # 1-24-86 3877 -> 00005149 # 1-24-87 3878 -> 0000516C # 1-24-88 3879 -> 0000529F # 1-24-89 387A -> 000052B9 # 1-24-90 387B -> 000052FE # 1-24-91 387C -> 0000539A # 1-24-92 387D -> 000053E3 # 1-24-93 387E -> 00005411 # 1-24-94 3921 -> 0000540E # 1-25-1 3922 -> 00005589 # 1-25-2 3923 -> 00005751 # 1-25-3 3924 -> 000057A2 # 1-25-4 3925 -> 0000597D # 1-25-5 3926 -> 00005B54 # 1-25-6 3927 -> 00005B5D # 1-25-7 3928 -> 00005B8F # 1-25-8 3929 -> 00005DE5 # 1-25-9 392A -> 00005DE7 # 1-25-10 392B -> 00005DF7 # 1-25-11 392C -> 00005E78 # 1-25-12 392D -> 00005E83 # 1-25-13 392E -> 00005E9A # 1-25-14 392F -> 00005EB7 # 1-25-15 3930 -> 00005F18 # 1-25-16 3931 -> 00006052 # 1-25-17 3932 -> 0000614C # 1-25-18 3933 -> 00006297 # 1-25-19 3934 -> 000062D8 # 1-25-20 3935 -> 000063A7 # 1-25-21 3936 -> 0000653B # 1-25-22 3937 -> 00006602 # 1-25-23 3938 -> 00006643 # 1-25-24 3939 -> 000066F4 # 1-25-25 393A -> 0000676D # 1-25-26 393B -> 00006821 # 1-25-27 393C -> 00006897 # 1-25-28 393D -> 000069CB # 1-25-29 393E -> 00006C5F # 1-25-30 393F -> 00006D2A # 1-25-31 3940 -> 00006D69 # 1-25-32 3941 -> 00006E2F # 1-25-33 3942 -> 00006E9D # 1-25-34 3943 -> 00007532 # 1-25-35 3944 -> 00007687 # 1-25-36 3945 -> 0000786C # 1-25-37 3946 -> 00007A3F # 1-25-38 3947 -> 00007CE0 # 1-25-39 3948 -> 00007D05 # 1-25-40 3949 -> 00007D18 # 1-25-41 394A -> 00007D5E # 1-25-42 394B -> 00007DB1 # 1-25-43 394C -> 00008015 # 1-25-44 394D -> 00008003 # 1-25-45 394E -> 000080AF # 1-25-46 394F -> 000080B1 # 1-25-47 3950 -> 00008154 # 1-25-48 3951 -> 0000818F # 1-25-49 3952 -> 0000822A # 1-25-50 3953 -> 00008352 # 1-25-51 3954 -> 0000884C # 1-25-52 3955 -> 00008861 # 1-25-53 3956 -> 00008B1B # 1-25-54 3957 -> 00008CA2 # 1-25-55 3958 -> 00008CFC # 1-25-56 3959 -> 000090CA # 1-25-57 395A -> 00009175 # 1-25-58 395B -> 00009271 # 1-25-59 395C -> 0000783F # 1-25-60 395D -> 000092FC # 1-25-61 395E -> 000095A4 # 1-25-62 395F -> 0000964D # 1-25-63 3960 -> 00009805 # 1-25-64 3961 -> 00009999 # 1-25-65 3962 -> 00009AD8 # 1-25-66 3963 -> 00009D3B # 1-25-67 3964 -> 0000525B # 1-25-68 3965 -> 000052AB # 1-25-69 3966 -> 000053F7 # 1-25-70 3967 -> 00005408 # 1-25-71 3968 -> 000058D5 # 1-25-72 3969 -> 000062F7 # 1-25-73 396A -> 00006FE0 # 1-25-74 396B -> 00008C6A # 1-25-75 396C -> 00008F5F # 1-25-76 396D -> 00009EB9 # 1-25-77 396E -> 0000514B # 1-25-78 396F -> 0000523B # 1-25-79 3970 -> 0000544A # 1-25-80 3971 -> 000056FD # 1-25-81 3972 -> 00007A40 # 1-25-82 3973 -> 00009177 # 1-25-83 3974 -> 00009D60 # 1-25-84 3975 -> 00009ED2 # 1-25-85 3976 -> 00007344 # 1-25-86 3977 -> 00006F09 # 1-25-87 3978 -> 00008170 # 1-25-88 3979 -> 00007511 # 1-25-89 397A -> 00005FFD # 1-25-90 397B -> 000060DA # 1-25-91 397C -> 00009AA8 # 1-25-92 397D -> 000072DB # 1-25-93 397E -> 00008FBC # 1-25-94 3A21 -> 00006B64 # 1-26-1 3A22 -> 00009803 # 1-26-2 3A23 -> 00004ECA # 1-26-3 3A24 -> 000056F0 # 1-26-4 3A25 -> 00005764 # 1-26-5 3A26 -> 000058BE # 1-26-6 3A27 -> 00005A5A # 1-26-7 3A28 -> 00006068 # 1-26-8 3A29 -> 000061C7 # 1-26-9 3A2A -> 0000660F # 1-26-10 3A2B -> 00006606 # 1-26-11 3A2C -> 00006839 # 1-26-12 3A2D -> 000068B1 # 1-26-13 3A2E -> 00006DF7 # 1-26-14 3A2F -> 000075D5 # 1-26-15 3A30 -> 00007D3A # 1-26-16 3A31 -> 0000826E # 1-26-17 3A32 -> 00009B42 # 1-26-18 3A33 -> 00004E9B # 1-26-19 3A34 -> 00004F50 # 1-26-20 3A35 -> 000053C9 # 1-26-21 3A36 -> 00005506 # 1-26-22 3A37 -> 00005D6F # 1-26-23 3A38 -> 00005DE6 # 1-26-24 3A39 -> 00005DEE # 1-26-25 3A3A -> 000067FB # 1-26-26 3A3B -> 00006C99 # 1-26-27 3A3C -> 00007473 # 1-26-28 3A3D -> 00007802 # 1-26-29 3A3E -> 00008A50 # 1-26-30 3A3F -> 00009396 # 1-26-31 3A40 -> 000088DF # 1-26-32 3A41 -> 00005750 # 1-26-33 3A42 -> 00005EA7 # 1-26-34 3A43 -> 0000632B # 1-26-35 3A44 -> 000050B5 # 1-26-36 3A45 -> 000050AC # 1-26-37 3A46 -> 0000518D # 1-26-38 3A47 -> 00006700 # 1-26-39 3A48 -> 000054C9 # 1-26-40 3A49 -> 0000585E # 1-26-41 3A4A -> 000059BB # 1-26-42 3A4B -> 00005BB0 # 1-26-43 3A4C -> 00005F69 # 1-26-44 3A4D -> 0000624D # 1-26-45 3A4E -> 000063A1 # 1-26-46 3A4F -> 0000683D # 1-26-47 3A50 -> 00006B73 # 1-26-48 3A51 -> 00006E08 # 1-26-49 3A52 -> 0000707D # 1-26-50 3A53 -> 000091C7 # 1-26-51 3A54 -> 00007280 # 1-26-52 3A55 -> 00007815 # 1-26-53 3A56 -> 00007826 # 1-26-54 3A57 -> 0000796D # 1-26-55 3A58 -> 0000658E # 1-26-56 3A59 -> 00007D30 # 1-26-57 3A5A -> 000083DC # 1-26-58 3A5B -> 000088C1 # 1-26-59 3A5C -> 00008F09 # 1-26-60 3A5D -> 0000969B # 1-26-61 3A5E -> 00005264 # 1-26-62 3A5F -> 00005728 # 1-26-63 3A60 -> 00006750 # 1-26-64 3A61 -> 00007F6A # 1-26-65 3A62 -> 00008CA1 # 1-26-66 3A63 -> 000051B4 # 1-26-67 3A64 -> 00005742 # 1-26-68 3A65 -> 0000962A # 1-26-69 3A66 -> 0000583A # 1-26-70 3A67 -> 0000698A # 1-26-71 3A68 -> 000080B4 # 1-26-72 3A69 -> 000054B2 # 1-26-73 3A6A -> 00005D0E # 1-26-74 3A6B -> 000057FC # 1-26-75 3A6C -> 00007895 # 1-26-76 3A6D -> 00009DFA # 1-26-77 3A6E -> 00004F5C # 1-26-78 3A6F -> 0000524A # 1-26-79 3A70 -> 0000548B # 1-26-80 3A71 -> 0000643E # 1-26-81 3A72 -> 00006628 # 1-26-82 3A73 -> 00006714 # 1-26-83 3A74 -> 000067F5 # 1-26-84 3A75 -> 00007A84 # 1-26-85 3A76 -> 00007B56 # 1-26-86 3A77 -> 00007D22 # 1-26-87 3A78 -> 0000932F # 1-26-88 3A79 -> 0000685C # 1-26-89 3A7A -> 00009BAD # 1-26-90 3A7B -> 00007B39 # 1-26-91 3A7C -> 00005319 # 1-26-92 3A7D -> 0000518A # 1-26-93 3A7E -> 00005237 # 1-26-94 3B21 -> 00005BDF # 1-27-1 3B22 -> 000062F6 # 1-27-2 3B23 -> 000064AE # 1-27-3 3B24 -> 000064E6 # 1-27-4 3B25 -> 0000672D # 1-27-5 3B26 -> 00006BBA # 1-27-6 3B27 -> 000085A9 # 1-27-7 3B28 -> 000096D1 # 1-27-8 3B29 -> 00007690 # 1-27-9 3B2A -> 00009BD6 # 1-27-10 3B2B -> 0000634C # 1-27-11 3B2C -> 00009306 # 1-27-12 3B2D -> 00009BAB # 1-27-13 3B2E -> 000076BF # 1-27-14 3B2F -> 00006652 # 1-27-15 3B30 -> 00004E09 # 1-27-16 3B31 -> 00005098 # 1-27-17 3B32 -> 000053C2 # 1-27-18 3B33 -> 00005C71 # 1-27-19 3B34 -> 000060E8 # 1-27-20 3B35 -> 00006492 # 1-27-21 3B36 -> 00006563 # 1-27-22 3B37 -> 0000685F # 1-27-23 3B38 -> 000071E6 # 1-27-24 3B39 -> 000073CA # 1-27-25 3B3A -> 00007523 # 1-27-26 3B3B -> 00007B97 # 1-27-27 3B3C -> 00007E82 # 1-27-28 3B3D -> 00008695 # 1-27-29 3B3E -> 00008B83 # 1-27-30 3B3F -> 00008CDB # 1-27-31 3B40 -> 00009178 # 1-27-32 3B41 -> 00009910 # 1-27-33 3B42 -> 000065AC # 1-27-34 3B43 -> 000066AB # 1-27-35 3B44 -> 00006B8B # 1-27-36 3B45 -> 00004ED5 # 1-27-37 3B46 -> 00004ED4 # 1-27-38 3B47 -> 00004F3A # 1-27-39 3B48 -> 00004F7F # 1-27-40 3B49 -> 0000523A # 1-27-41 3B4A -> 000053F8 # 1-27-42 3B4B -> 000053F2 # 1-27-43 3B4C -> 000055E3 # 1-27-44 3B4D -> 000056DB # 1-27-45 3B4E -> 000058EB # 1-27-46 3B4F -> 000059CB # 1-27-47 3B50 -> 000059C9 # 1-27-48 3B51 -> 000059FF # 1-27-49 3B52 -> 00005B50 # 1-27-50 3B53 -> 00005C4D # 1-27-51 3B54 -> 00005E02 # 1-27-52 3B55 -> 00005E2B # 1-27-53 3B56 -> 00005FD7 # 1-27-54 3B57 -> 0000601D # 1-27-55 3B58 -> 00006307 # 1-27-56 3B59 -> 0000652F # 1-27-57 3B5A -> 00005B5C # 1-27-58 3B5B -> 000065AF # 1-27-59 3B5C -> 000065BD # 1-27-60 3B5D -> 000065E8 # 1-27-61 3B5E -> 0000679D # 1-27-62 3B5F -> 00006B62 # 1-27-63 3B60 -> 00006B7B # 1-27-64 3B61 -> 00006C0F # 1-27-65 3B62 -> 00007345 # 1-27-66 3B63 -> 00007949 # 1-27-67 3B64 -> 000079C1 # 1-27-68 3B65 -> 00007CF8 # 1-27-69 3B66 -> 00007D19 # 1-27-70 3B67 -> 00007D2B # 1-27-71 3B68 -> 000080A2 # 1-27-72 3B69 -> 00008102 # 1-27-73 3B6A -> 000081F3 # 1-27-74 3B6B -> 00008996 # 1-27-75 3B6C -> 00008A5E # 1-27-76 3B6D -> 00008A69 # 1-27-77 3B6E -> 00008A66 # 1-27-78 3B6F -> 00008A8C # 1-27-79 3B70 -> 00008AEE # 1-27-80 3B71 -> 00008CC7 # 1-27-81 3B72 -> 00008CDC # 1-27-82 3B73 -> 000096CC # 1-27-83 3B74 -> 000098FC # 1-27-84 3B75 -> 00006B6F # 1-27-85 3B76 -> 00004E8B # 1-27-86 3B77 -> 00004F3C # 1-27-87 3B78 -> 00004F8D # 1-27-88 3B79 -> 00005150 # 1-27-89 3B7A -> 00005B57 # 1-27-90 3B7B -> 00005BFA # 1-27-91 3B7C -> 00006148 # 1-27-92 3B7D -> 00006301 # 1-27-93 3B7E -> 00006642 # 1-27-94 3C21 -> 00006B21 # 1-28-1 3C22 -> 00006ECB # 1-28-2 3C23 -> 00006CBB # 1-28-3 3C24 -> 0000723E # 1-28-4 3C25 -> 000074BD # 1-28-5 3C26 -> 000075D4 # 1-28-6 3C27 -> 000078C1 # 1-28-7 3C28 -> 0000793A # 1-28-8 3C29 -> 0000800C # 1-28-9 3C2A -> 00008033 # 1-28-10 3C2B -> 000081EA # 1-28-11 3C2C -> 00008494 # 1-28-12 3C2D -> 00008F9E # 1-28-13 3C2E -> 00006C50 # 1-28-14 3C2F -> 00009E7F # 1-28-15 3C30 -> 00005F0F # 1-28-16 3C31 -> 00008B58 # 1-28-17 3C32 -> 00009D2B # 1-28-18 3C33 -> 00007AFA # 1-28-19 3C34 -> 00008EF8 # 1-28-20 3C35 -> 00005B8D # 1-28-21 3C36 -> 000096EB # 1-28-22 3C37 -> 00004E03 # 1-28-23 3C38 -> 000053F1 # 1-28-24 3C39 -> 000057F7 # 1-28-25 3C3A -> 00005931 # 1-28-26 3C3B -> 00005AC9 # 1-28-27 3C3C -> 00005BA4 # 1-28-28 3C3D -> 00006089 # 1-28-29 3C3E -> 00006E7F # 1-28-30 3C3F -> 00006F06 # 1-28-31 3C40 -> 000075BE # 1-28-32 3C41 -> 00008CEA # 1-28-33 3C42 -> 00005B9F # 1-28-34 3C43 -> 00008500 # 1-28-35 3C44 -> 00007BE0 # 1-28-36 3C45 -> 00005072 # 1-28-37 3C46 -> 000067F4 # 1-28-38 3C47 -> 0000829D # 1-28-39 3C48 -> 00005C61 # 1-28-40 3C49 -> 0000854A # 1-28-41 3C4A -> 00007E1E # 1-28-42 3C4B -> 0000820E # 1-28-43 3C4C -> 00005199 # 1-28-44 3C4D -> 00005C04 # 1-28-45 3C4E -> 00006368 # 1-28-46 3C4F -> 00008D66 # 1-28-47 3C50 -> 0000659C # 1-28-48 3C51 -> 0000716E # 1-28-49 3C52 -> 0000793E # 1-28-50 3C53 -> 00007D17 # 1-28-51 3C54 -> 00008005 # 1-28-52 3C55 -> 00008B1D # 1-28-53 3C56 -> 00008ECA # 1-28-54 3C57 -> 0000906E # 1-28-55 3C58 -> 000086C7 # 1-28-56 3C59 -> 000090AA # 1-28-57 3C5A -> 0000501F # 1-28-58 3C5B -> 000052FA # 1-28-59 3C5C -> 00005C3A # 1-28-60 3C5D -> 00006753 # 1-28-61 3C5E -> 0000707C # 1-28-62 3C5F -> 00007235 # 1-28-63 3C60 -> 0000914C # 1-28-64 3C61 -> 000091C8 # 1-28-65 3C62 -> 0000932B # 1-28-66 3C63 -> 000082E5 # 1-28-67 3C64 -> 00005BC2 # 1-28-68 3C65 -> 00005F31 # 1-28-69 3C66 -> 000060F9 # 1-28-70 3C67 -> 00004E3B # 1-28-71 3C68 -> 000053D6 # 1-28-72 3C69 -> 00005B88 # 1-28-73 3C6A -> 0000624B # 1-28-74 3C6B -> 00006731 # 1-28-75 3C6C -> 00006B8A # 1-28-76 3C6D -> 000072E9 # 1-28-77 3C6E -> 000073E0 # 1-28-78 3C6F -> 00007A2E # 1-28-79 3C70 -> 0000816B # 1-28-80 3C71 -> 00008DA3 # 1-28-81 3C72 -> 00009152 # 1-28-82 3C73 -> 00009996 # 1-28-83 3C74 -> 00005112 # 1-28-84 3C75 -> 000053D7 # 1-28-85 3C76 -> 0000546A # 1-28-86 3C77 -> 00005BFF # 1-28-87 3C78 -> 00006388 # 1-28-88 3C79 -> 00006A39 # 1-28-89 3C7A -> 00007DAC # 1-28-90 3C7B -> 00009700 # 1-28-91 3C7C -> 000056DA # 1-28-92 3C7D -> 000053CE # 1-28-93 3C7E -> 00005468 # 1-28-94 3D21 -> 00005B97 # 1-29-1 3D22 -> 00005C31 # 1-29-2 3D23 -> 00005DDE # 1-29-3 3D24 -> 00004FEE # 1-29-4 3D25 -> 00006101 # 1-29-5 3D26 -> 000062FE # 1-29-6 3D27 -> 00006D32 # 1-29-7 3D28 -> 000079C0 # 1-29-8 3D29 -> 000079CB # 1-29-9 3D2A -> 00007D42 # 1-29-10 3D2B -> 00007E4D # 1-29-11 3D2C -> 00007FD2 # 1-29-12 3D2D -> 000081ED # 1-29-13 3D2E -> 0000821F # 1-29-14 3D2F -> 00008490 # 1-29-15 3D30 -> 00008846 # 1-29-16 3D31 -> 00008972 # 1-29-17 3D32 -> 00008B90 # 1-29-18 3D33 -> 00008E74 # 1-29-19 3D34 -> 00008F2F # 1-29-20 3D35 -> 00009031 # 1-29-21 3D36 -> 0000914B # 1-29-22 3D37 -> 0000916C # 1-29-23 3D38 -> 000096C6 # 1-29-24 3D39 -> 0000919C # 1-29-25 3D3A -> 00004EC0 # 1-29-26 3D3B -> 00004F4F # 1-29-27 3D3C -> 00005145 # 1-29-28 3D3D -> 00005341 # 1-29-29 3D3E -> 00005F93 # 1-29-30 3D3F -> 0000620E # 1-29-31 3D40 -> 000067D4 # 1-29-32 3D41 -> 00006C41 # 1-29-33 3D42 -> 00006E0B # 1-29-34 3D43 -> 00007363 # 1-29-35 3D44 -> 00007E26 # 1-29-36 3D45 -> 000091CD # 1-29-37 3D46 -> 00009283 # 1-29-38 3D47 -> 000053D4 # 1-29-39 3D48 -> 00005919 # 1-29-40 3D49 -> 00005BBF # 1-29-41 3D4A -> 00006DD1 # 1-29-42 3D4B -> 0000795D # 1-29-43 3D4C -> 00007E2E # 1-29-44 3D4D -> 00007C9B # 1-29-45 3D4E -> 0000587E # 1-29-46 3D4F -> 0000719F # 1-29-47 3D50 -> 000051FA # 1-29-48 3D51 -> 00008853 # 1-29-49 3D52 -> 00008FF0 # 1-29-50 3D53 -> 00004FCA # 1-29-51 3D54 -> 00005CFB # 1-29-52 3D55 -> 00006625 # 1-29-53 3D56 -> 000077AC # 1-29-54 3D57 -> 00007AE3 # 1-29-55 3D58 -> 0000821C # 1-29-56 3D59 -> 000099FF # 1-29-57 3D5A -> 000051C6 # 1-29-58 3D5B -> 00005FAA # 1-29-59 3D5C -> 000065EC # 1-29-60 3D5D -> 0000696F # 1-29-61 3D5E -> 00006B89 # 1-29-62 3D5F -> 00006DF3 # 1-29-63 3D60 -> 00006E96 # 1-29-64 3D61 -> 00006F64 # 1-29-65 3D62 -> 000076FE # 1-29-66 3D63 -> 00007D14 # 1-29-67 3D64 -> 00005DE1 # 1-29-68 3D65 -> 00009075 # 1-29-69 3D66 -> 00009187 # 1-29-70 3D67 -> 00009806 # 1-29-71 3D68 -> 000051E6 # 1-29-72 3D69 -> 0000521D # 1-29-73 3D6A -> 00006240 # 1-29-74 3D6B -> 00006691 # 1-29-75 3D6C -> 000066D9 # 1-29-76 3D6D -> 00006E1A # 1-29-77 3D6E -> 00005EB6 # 1-29-78 3D6F -> 00007DD2 # 1-29-79 3D70 -> 00007F72 # 1-29-80 3D71 -> 000066F8 # 1-29-81 3D72 -> 000085AF # 1-29-82 3D73 -> 000085F7 # 1-29-83 3D74 -> 00008AF8 # 1-29-84 3D75 -> 000052A9 # 1-29-85 3D76 -> 000053D9 # 1-29-86 3D77 -> 00005973 # 1-29-87 3D78 -> 00005E8F # 1-29-88 3D79 -> 00005F90 # 1-29-89 3D7A -> 00006055 # 1-29-90 3D7B -> 000092E4 # 1-29-91 3D7C -> 00009664 # 1-29-92 3D7D -> 000050B7 # 1-29-93 3D7E -> 0000511F # 1-29-94 3E21 -> 000052DD # 1-30-1 3E22 -> 00005320 # 1-30-2 3E23 -> 00005347 # 1-30-3 3E24 -> 000053EC # 1-30-4 3E25 -> 000054E8 # 1-30-5 3E26 -> 00005546 # 1-30-6 3E27 -> 00005531 # 1-30-7 3E28 -> 00005617 # 1-30-8 3E29 -> 00005968 # 1-30-9 3E2A -> 000059BE # 1-30-10 3E2B -> 00005A3C # 1-30-11 3E2C -> 00005BB5 # 1-30-12 3E2D -> 00005C06 # 1-30-13 3E2E -> 00005C0F # 1-30-14 3E2F -> 00005C11 # 1-30-15 3E30 -> 00005C1A # 1-30-16 3E31 -> 00005E84 # 1-30-17 3E32 -> 00005E8A # 1-30-18 3E33 -> 00005EE0 # 1-30-19 3E34 -> 00005F70 # 1-30-20 3E35 -> 0000627F # 1-30-21 3E36 -> 00006284 # 1-30-22 3E37 -> 000062DB # 1-30-23 3E38 -> 0000638C # 1-30-24 3E39 -> 00006377 # 1-30-25 3E3A -> 00006607 # 1-30-26 3E3B -> 0000660C # 1-30-27 3E3C -> 0000662D # 1-30-28 3E3D -> 00006676 # 1-30-29 3E3E -> 0000677E # 1-30-30 3E3F -> 000068A2 # 1-30-31 3E40 -> 00006A1F # 1-30-32 3E41 -> 00006A35 # 1-30-33 3E42 -> 00006CBC # 1-30-34 3E43 -> 00006D88 # 1-30-35 3E44 -> 00006E09 # 1-30-36 3E45 -> 00006E58 # 1-30-37 3E46 -> 0000713C # 1-30-38 3E47 -> 00007126 # 1-30-39 3E48 -> 00007167 # 1-30-40 3E49 -> 000075C7 # 1-30-41 3E4A -> 00007701 # 1-30-42 3E4B -> 0000785D # 1-30-43 3E4C -> 00007901 # 1-30-44 3E4D -> 00007965 # 1-30-45 3E4E -> 000079F0 # 1-30-46 3E4F -> 00007AE0 # 1-30-47 3E50 -> 00007B11 # 1-30-48 3E51 -> 00007CA7 # 1-30-49 3E52 -> 00007D39 # 1-30-50 3E53 -> 00008096 # 1-30-51 3E54 -> 000083D6 # 1-30-52 3E55 -> 0000848B # 1-30-53 3E56 -> 00008549 # 1-30-54 3E57 -> 0000885D # 1-30-55 3E58 -> 000088F3 # 1-30-56 3E59 -> 00008A1F # 1-30-57 3E5A -> 00008A3C # 1-30-58 3E5B -> 00008A54 # 1-30-59 3E5C -> 00008A73 # 1-30-60 3E5D -> 00008C61 # 1-30-61 3E5E -> 00008CDE # 1-30-62 3E5F -> 000091A4 # 1-30-63 3E60 -> 00009266 # 1-30-64 3E61 -> 0000937E # 1-30-65 3E62 -> 00009418 # 1-30-66 3E63 -> 0000969C # 1-30-67 3E64 -> 00009798 # 1-30-68 3E65 -> 00004E0A # 1-30-69 3E66 -> 00004E08 # 1-30-70 3E67 -> 00004E1E # 1-30-71 3E68 -> 00004E57 # 1-30-72 3E69 -> 00005197 # 1-30-73 3E6A -> 00005270 # 1-30-74 3E6B -> 000057CE # 1-30-75 3E6C -> 00005834 # 1-30-76 3E6D -> 000058CC # 1-30-77 3E6E -> 00005B22 # 1-30-78 3E6F -> 00005E38 # 1-30-79 3E70 -> 000060C5 # 1-30-80 3E71 -> 000064FE # 1-30-81 3E72 -> 00006761 # 1-30-82 3E73 -> 00006756 # 1-30-83 3E74 -> 00006D44 # 1-30-84 3E75 -> 000072B6 # 1-30-85 3E76 -> 00007573 # 1-30-86 3E77 -> 00007A63 # 1-30-87 3E78 -> 000084B8 # 1-30-88 3E79 -> 00008B72 # 1-30-89 3E7A -> 000091B8 # 1-30-90 3E7B -> 00009320 # 1-30-91 3E7C -> 00005631 # 1-30-92 3E7D -> 000057F4 # 1-30-93 3E7E -> 000098FE # 1-30-94 3F21 -> 000062ED # 1-31-1 3F22 -> 0000690D # 1-31-2 3F23 -> 00006B96 # 1-31-3 3F24 -> 000071ED # 1-31-4 3F25 -> 00007E54 # 1-31-5 3F26 -> 00008077 # 1-31-6 3F27 -> 00008272 # 1-31-7 3F28 -> 000089E6 # 1-31-8 3F29 -> 000098DF # 1-31-9 3F2A -> 00008755 # 1-31-10 3F2B -> 00008FB1 # 1-31-11 3F2C -> 00005C3B # 1-31-12 3F2D -> 00004F38 # 1-31-13 3F2E -> 00004FE1 # 1-31-14 3F2F -> 00004FB5 # 1-31-15 3F30 -> 00005507 # 1-31-16 3F31 -> 00005A20 # 1-31-17 3F32 -> 00005BDD # 1-31-18 3F33 -> 00005BE9 # 1-31-19 3F34 -> 00005FC3 # 1-31-20 3F35 -> 0000614E # 1-31-21 3F36 -> 0000632F # 1-31-22 3F37 -> 000065B0 # 1-31-23 3F38 -> 0000664B # 1-31-24 3F39 -> 000068EE # 1-31-25 3F3A -> 0000699B # 1-31-26 3F3B -> 00006D78 # 1-31-27 3F3C -> 00006DF1 # 1-31-28 3F3D -> 00007533 # 1-31-29 3F3E -> 000075B9 # 1-31-30 3F3F -> 0000771F # 1-31-31 3F40 -> 0000795E # 1-31-32 3F41 -> 000079E6 # 1-31-33 3F42 -> 00007D33 # 1-31-34 3F43 -> 000081E3 # 1-31-35 3F44 -> 000082AF # 1-31-36 3F45 -> 000085AA # 1-31-37 3F46 -> 000089AA # 1-31-38 3F47 -> 00008A3A # 1-31-39 3F48 -> 00008EAB # 1-31-40 3F49 -> 00008F9B # 1-31-41 3F4A -> 00009032 # 1-31-42 3F4B -> 000091DD # 1-31-43 3F4C -> 00009707 # 1-31-44 3F4D -> 00004EBA # 1-31-45 3F4E -> 00004EC1 # 1-31-46 3F4F -> 00005203 # 1-31-47 3F50 -> 00005875 # 1-31-48 3F51 -> 000058EC # 1-31-49 3F52 -> 00005C0B # 1-31-50 3F53 -> 0000751A # 1-31-51 3F54 -> 00005C3D # 1-31-52 3F55 -> 0000814E # 1-31-53 3F56 -> 00008A0A # 1-31-54 3F57 -> 00008FC5 # 1-31-55 3F58 -> 00009663 # 1-31-56 3F59 -> 0000976D # 1-31-57 3F5A -> 00007B25 # 1-31-58 3F5B -> 00008ACF # 1-31-59 3F5C -> 00009808 # 1-31-60 3F5D -> 00009162 # 1-31-61 3F5E -> 000056F3 # 1-31-62 3F5F -> 000053A8 # 1-31-63 3F60 -> 00009017 # 1-31-64 3F61 -> 00005439 # 1-31-65 3F62 -> 00005782 # 1-31-66 3F63 -> 00005E25 # 1-31-67 3F64 -> 000063A8 # 1-31-68 3F65 -> 00006C34 # 1-31-69 3F66 -> 0000708A # 1-31-70 3F67 -> 00007761 # 1-31-71 3F68 -> 00007C8B # 1-31-72 3F69 -> 00007FE0 # 1-31-73 3F6A -> 00008870 # 1-31-74 3F6B -> 00009042 # 1-31-75 3F6C -> 00009154 # 1-31-76 3F6D -> 00009310 # 1-31-77 3F6E -> 00009318 # 1-31-78 3F6F -> 0000968F # 1-31-79 3F70 -> 0000745E # 1-31-80 3F71 -> 00009AC4 # 1-31-81 3F72 -> 00005D07 # 1-31-82 3F73 -> 00005D69 # 1-31-83 3F74 -> 00006570 # 1-31-84 3F75 -> 000067A2 # 1-31-85 3F76 -> 00008DA8 # 1-31-86 3F77 -> 000096DB # 1-31-87 3F78 -> 0000636E # 1-31-88 3F79 -> 00006749 # 1-31-89 3F7A -> 00006919 # 1-31-90 3F7B -> 000083C5 # 1-31-91 3F7C -> 00009817 # 1-31-92 3F7D -> 000096C0 # 1-31-93 3F7E -> 000088FE # 1-31-94 4021 -> 00006F84 # 1-32-1 4022 -> 0000647A # 1-32-2 4023 -> 00005BF8 # 1-32-3 4024 -> 00004E16 # 1-32-4 4025 -> 0000702C # 1-32-5 4026 -> 0000755D # 1-32-6 4027 -> 0000662F # 1-32-7 4028 -> 000051C4 # 1-32-8 4029 -> 00005236 # 1-32-9 402A -> 000052E2 # 1-32-10 402B -> 000059D3 # 1-32-11 402C -> 00005F81 # 1-32-12 402D -> 00006027 # 1-32-13 402E -> 00006210 # 1-32-14 402F -> 0000653F # 1-32-15 4030 -> 00006574 # 1-32-16 4031 -> 0000661F # 1-32-17 4032 -> 00006674 # 1-32-18 4033 -> 000068F2 # 1-32-19 4034 -> 00006816 # 1-32-20 4035 -> 00006B63 # 1-32-21 4036 -> 00006E05 # 1-32-22 4037 -> 00007272 # 1-32-23 4038 -> 0000751F # 1-32-24 4039 -> 000076DB # 1-32-25 403A -> 00007CBE # 1-32-26 403B -> 00008056 # 1-32-27 403C -> 000058F0 # 1-32-28 403D -> 000088FD # 1-32-29 403E -> 0000897F # 1-32-30 403F -> 00008AA0 # 1-32-31 4040 -> 00008A93 # 1-32-32 4041 -> 00008ACB # 1-32-33 4042 -> 0000901D # 1-32-34 4043 -> 00009192 # 1-32-35 4044 -> 00009752 # 1-32-36 4045 -> 00009759 # 1-32-37 4046 -> 00006589 # 1-32-38 4047 -> 00007A0E # 1-32-39 4048 -> 00008106 # 1-32-40 4049 -> 000096BB # 1-32-41 404A -> 00005E2D # 1-32-42 404B -> 000060DC # 1-32-43 404C -> 0000621A # 1-32-44 404D -> 000065A5 # 1-32-45 404E -> 00006614 # 1-32-46 404F -> 00006790 # 1-32-47 4050 -> 000077F3 # 1-32-48 4051 -> 00007A4D # 1-32-49 4052 -> 00007C4D # 1-32-50 4053 -> 00007E3E # 1-32-51 4054 -> 0000810A # 1-32-52 4055 -> 00008CAC # 1-32-53 4056 -> 00008D64 # 1-32-54 4057 -> 00008DE1 # 1-32-55 4058 -> 00008E5F # 1-32-56 4059 -> 000078A9 # 1-32-57 405A -> 00005207 # 1-32-58 405B -> 000062D9 # 1-32-59 405C -> 000063A5 # 1-32-60 405D -> 00006442 # 1-32-61 405E -> 00006298 # 1-32-62 405F -> 00008A2D # 1-32-63 4060 -> 00007A83 # 1-32-64 4061 -> 00007BC0 # 1-32-65 4062 -> 00008AAC # 1-32-66 4063 -> 000096EA # 1-32-67 4064 -> 00007D76 # 1-32-68 4065 -> 0000820C # 1-32-69 4066 -> 00008749 # 1-32-70 4067 -> 00004ED9 # 1-32-71 4068 -> 00005148 # 1-32-72 4069 -> 00005343 # 1-32-73 406A -> 00005360 # 1-32-74 406B -> 00005BA3 # 1-32-75 406C -> 00005C02 # 1-32-76 406D -> 00005C16 # 1-32-77 406E -> 00005DDD # 1-32-78 406F -> 00006226 # 1-32-79 4070 -> 00006247 # 1-32-80 4071 -> 000064B0 # 1-32-81 4072 -> 00006813 # 1-32-82 4073 -> 00006834 # 1-32-83 4074 -> 00006CC9 # 1-32-84 4075 -> 00006D45 # 1-32-85 4076 -> 00006D17 # 1-32-86 4077 -> 000067D3 # 1-32-87 4078 -> 00006F5C # 1-32-88 4079 -> 0000714E # 1-32-89 407A -> 0000717D # 1-32-90 407B -> 000065CB # 1-32-91 407C -> 00007A7F # 1-32-92 407D -> 00007BAD # 1-32-93 407E -> 00007DDA # 1-32-94 4121 -> 00007E4A # 1-33-1 4122 -> 00007FA8 # 1-33-2 4123 -> 0000817A # 1-33-3 4124 -> 0000821B # 1-33-4 4125 -> 00008239 # 1-33-5 4126 -> 000085A6 # 1-33-6 4127 -> 00008A6E # 1-33-7 4128 -> 00008CCE # 1-33-8 4129 -> 00008DF5 # 1-33-9 412A -> 00009078 # 1-33-10 412B -> 00009077 # 1-33-11 412C -> 000092AD # 1-33-12 412D -> 00009291 # 1-33-13 412E -> 00009583 # 1-33-14 412F -> 00009BAE # 1-33-15 4130 -> 0000524D # 1-33-16 4131 -> 00005584 # 1-33-17 4132 -> 00006F38 # 1-33-18 4133 -> 00007136 # 1-33-19 4134 -> 00005168 # 1-33-20 4135 -> 00007985 # 1-33-21 4136 -> 00007E55 # 1-33-22 4137 -> 000081B3 # 1-33-23 4138 -> 00007CCE # 1-33-24 4139 -> 0000564C # 1-33-25 413A -> 00005851 # 1-33-26 413B -> 00005CA8 # 1-33-27 413C -> 000063AA # 1-33-28 413D -> 000066FE # 1-33-29 413E -> 000066FD # 1-33-30 413F -> 0000695A # 1-33-31 4140 -> 000072D9 # 1-33-32 4141 -> 0000758F # 1-33-33 4142 -> 0000758E # 1-33-34 4143 -> 0000790E # 1-33-35 4144 -> 00007956 # 1-33-36 4145 -> 000079DF # 1-33-37 4146 -> 00007C97 # 1-33-38 4147 -> 00007D20 # 1-33-39 4148 -> 00007D44 # 1-33-40 4149 -> 00008607 # 1-33-41 414A -> 00008A34 # 1-33-42 414B -> 0000963B # 1-33-43 414C -> 00009061 # 1-33-44 414D -> 00009F20 # 1-33-45 414E -> 000050E7 # 1-33-46 414F -> 00005275 # 1-33-47 4150 -> 000053CC # 1-33-48 4151 -> 000053E2 # 1-33-49 4152 -> 00005009 # 1-33-50 4153 -> 000055AA # 1-33-51 4154 -> 000058EE # 1-33-52 4155 -> 0000594F # 1-33-53 4156 -> 0000723D # 1-33-54 4157 -> 00005B8B # 1-33-55 4158 -> 00005C64 # 1-33-56 4159 -> 0000531D # 1-33-57 415A -> 000060E3 # 1-33-58 415B -> 000060F3 # 1-33-59 415C -> 0000635C # 1-33-60 415D -> 00006383 # 1-33-61 415E -> 0000633F # 1-33-62 415F -> 000063BB # 1-33-63 4160 -> 000064CD # 1-33-64 4161 -> 000065E9 # 1-33-65 4162 -> 000066F9 # 1-33-66 4163 -> 00005DE3 # 1-33-67 4164 -> 000069CD # 1-33-68 4165 -> 000069FD # 1-33-69 4166 -> 00006F15 # 1-33-70 4167 -> 000071E5 # 1-33-71 4168 -> 00004E89 # 1-33-72 4169 -> 000075E9 # 1-33-73 416A -> 000076F8 # 1-33-74 416B -> 00007A93 # 1-33-75 416C -> 00007CDF # 1-33-76 416D -> 00007DCF # 1-33-77 416E -> 00007D9C # 1-33-78 416F -> 00008061 # 1-33-79 4170 -> 00008349 # 1-33-80 4171 -> 00008358 # 1-33-81 4172 -> 0000846C # 1-33-82 4173 -> 000084BC # 1-33-83 4174 -> 000085FB # 1-33-84 4175 -> 000088C5 # 1-33-85 4176 -> 00008D70 # 1-33-86 4177 -> 00009001 # 1-33-87 4178 -> 0000906D # 1-33-88 4179 -> 00009397 # 1-33-89 417A -> 0000971C # 1-33-90 417B -> 00009A12 # 1-33-91 417C -> 000050CF # 1-33-92 417D -> 00005897 # 1-33-93 417E -> 0000618E # 1-33-94 4221 -> 000081D3 # 1-34-1 4222 -> 00008535 # 1-34-2 4223 -> 00008D08 # 1-34-3 4224 -> 00009020 # 1-34-4 4225 -> 00004FC3 # 1-34-5 4226 -> 00005074 # 1-34-6 4227 -> 00005247 # 1-34-7 4228 -> 00005373 # 1-34-8 4229 -> 0000606F # 1-34-9 422A -> 00006349 # 1-34-10 422B -> 0000675F # 1-34-11 422C -> 00006E2C # 1-34-12 422D -> 00008DB3 # 1-34-13 422E -> 0000901F # 1-34-14 422F -> 00004FD7 # 1-34-15 4230 -> 00005C5E # 1-34-16 4231 -> 00008CCA # 1-34-17 4232 -> 000065CF # 1-34-18 4233 -> 00007D9A # 1-34-19 4234 -> 00005352 # 1-34-20 4235 -> 00008896 # 1-34-21 4236 -> 00005176 # 1-34-22 4237 -> 000063C3 # 1-34-23 4238 -> 00005B58 # 1-34-24 4239 -> 00005B6B # 1-34-25 423A -> 00005C0A # 1-34-26 423B -> 0000640D # 1-34-27 423C -> 00006751 # 1-34-28 423D -> 0000905C # 1-34-29 423E -> 00004ED6 # 1-34-30 423F -> 0000591A # 1-34-31 4240 -> 0000592A # 1-34-32 4241 -> 00006C70 # 1-34-33 4242 -> 00008A51 # 1-34-34 4243 -> 0000553E # 1-34-35 4244 -> 00005815 # 1-34-36 4245 -> 000059A5 # 1-34-37 4246 -> 000060F0 # 1-34-38 4247 -> 00006253 # 1-34-39 4248 -> 000067C1 # 1-34-40 4249 -> 00008235 # 1-34-41 424A -> 00006955 # 1-34-42 424B -> 00009640 # 1-34-43 424C -> 000099C4 # 1-34-44 424D -> 00009A28 # 1-34-45 424E -> 00004F53 # 1-34-46 424F -> 00005806 # 1-34-47 4250 -> 00005BFE # 1-34-48 4251 -> 00008010 # 1-34-49 4252 -> 00005CB1 # 1-34-50 4253 -> 00005E2F # 1-34-51 4254 -> 00005F85 # 1-34-52 4255 -> 00006020 # 1-34-53 4256 -> 0000614B # 1-34-54 4257 -> 00006234 # 1-34-55 4258 -> 000066FF # 1-34-56 4259 -> 00006CF0 # 1-34-57 425A -> 00006EDE # 1-34-58 425B -> 000080CE # 1-34-59 425C -> 0000817F # 1-34-60 425D -> 000082D4 # 1-34-61 425E -> 0000888B # 1-34-62 425F -> 00008CB8 # 1-34-63 4260 -> 00009000 # 1-34-64 4261 -> 0000902E # 1-34-65 4262 -> 0000968A # 1-34-66 4263 -> 00009EDB # 1-34-67 4264 -> 00009BDB # 1-34-68 4265 -> 00004EE3 # 1-34-69 4266 -> 000053F0 # 1-34-70 4267 -> 00005927 # 1-34-71 4268 -> 00007B2C # 1-34-72 4269 -> 0000918D # 1-34-73 426A -> 0000984C # 1-34-74 426B -> 00009DF9 # 1-34-75 426C -> 00006EDD # 1-34-76 426D -> 00007027 # 1-34-77 426E -> 00005353 # 1-34-78 426F -> 00005544 # 1-34-79 4270 -> 00005B85 # 1-34-80 4271 -> 00006258 # 1-34-81 4272 -> 0000629E # 1-34-82 4273 -> 000062D3 # 1-34-83 4274 -> 00006CA2 # 1-34-84 4275 -> 00006FEF # 1-34-85 4276 -> 00007422 # 1-34-86 4277 -> 00008A17 # 1-34-87 4278 -> 00009438 # 1-34-88 4279 -> 00006FC1 # 1-34-89 427A -> 00008AFE # 1-34-90 427B -> 00008338 # 1-34-91 427C -> 000051E7 # 1-34-92 427D -> 000086F8 # 1-34-93 427E -> 000053EA # 1-34-94 4321 -> 000053E9 # 1-35-1 4322 -> 00004F46 # 1-35-2 4323 -> 00009054 # 1-35-3 4324 -> 00008FB0 # 1-35-4 4325 -> 0000596A # 1-35-5 4326 -> 00008131 # 1-35-6 4327 -> 00005DFD # 1-35-7 4328 -> 00007AEA # 1-35-8 4329 -> 00008FBF # 1-35-9 432A -> 000068DA # 1-35-10 432B -> 00008C37 # 1-35-11 432C -> 000072F8 # 1-35-12 432D -> 00009C48 # 1-35-13 432E -> 00006A3D # 1-35-14 432F -> 00008AB0 # 1-35-15 4330 -> 00004E39 # 1-35-16 4331 -> 00005358 # 1-35-17 4332 -> 00005606 # 1-35-18 4333 -> 00005766 # 1-35-19 4334 -> 000062C5 # 1-35-20 4335 -> 000063A2 # 1-35-21 4336 -> 000065E6 # 1-35-22 4337 -> 00006B4E # 1-35-23 4338 -> 00006DE1 # 1-35-24 4339 -> 00006E5B # 1-35-25 433A -> 000070AD # 1-35-26 433B -> 000077ED # 1-35-27 433C -> 00007AEF # 1-35-28 433D -> 00007BAA # 1-35-29 433E -> 00007DBB # 1-35-30 433F -> 0000803D # 1-35-31 4340 -> 000080C6 # 1-35-32 4341 -> 000086CB # 1-35-33 4342 -> 00008A95 # 1-35-34 4343 -> 0000935B # 1-35-35 4344 -> 000056E3 # 1-35-36 4345 -> 000058C7 # 1-35-37 4346 -> 00005F3E # 1-35-38 4347 -> 000065AD # 1-35-39 4348 -> 00006696 # 1-35-40 4349 -> 00006A80 # 1-35-41 434A -> 00006BB5 # 1-35-42 434B -> 00007537 # 1-35-43 434C -> 00008AC7 # 1-35-44 434D -> 00005024 # 1-35-45 434E -> 000077E5 # 1-35-46 434F -> 00005730 # 1-35-47 4350 -> 00005F1B # 1-35-48 4351 -> 00006065 # 1-35-49 4352 -> 0000667A # 1-35-50 4353 -> 00006C60 # 1-35-51 4354 -> 000075F4 # 1-35-52 4355 -> 00007A1A # 1-35-53 4356 -> 00007F6E # 1-35-54 4357 -> 000081F4 # 1-35-55 4358 -> 00008718 # 1-35-56 4359 -> 00009045 # 1-35-57 435A -> 000099B3 # 1-35-58 435B -> 00007BC9 # 1-35-59 435C -> 0000755C # 1-35-60 435D -> 00007AF9 # 1-35-61 435E -> 00007B51 # 1-35-62 435F -> 000084C4 # 1-35-63 4360 -> 00009010 # 1-35-64 4361 -> 000079E9 # 1-35-65 4362 -> 00007A92 # 1-35-66 4363 -> 00008336 # 1-35-67 4364 -> 00005AE1 # 1-35-68 4365 -> 00007740 # 1-35-69 4366 -> 00004E2D # 1-35-70 4367 -> 00004EF2 # 1-35-71 4368 -> 00005B99 # 1-35-72 4369 -> 00005FE0 # 1-35-73 436A -> 000062BD # 1-35-74 436B -> 0000663C # 1-35-75 436C -> 000067F1 # 1-35-76 436D -> 00006CE8 # 1-35-77 436E -> 0000866B # 1-35-78 436F -> 00008877 # 1-35-79 4370 -> 00008A3B # 1-35-80 4371 -> 0000914E # 1-35-81 4372 -> 000092F3 # 1-35-82 4373 -> 000099D0 # 1-35-83 4374 -> 00006A17 # 1-35-84 4375 -> 00007026 # 1-35-85 4376 -> 0000732A # 1-35-86 4377 -> 000082E7 # 1-35-87 4378 -> 00008457 # 1-35-88 4379 -> 00008CAF # 1-35-89 437A -> 00004E01 # 1-35-90 437B -> 00005146 # 1-35-91 437C -> 000051CB # 1-35-92 437D -> 0000558B # 1-35-93 437E -> 00005BF5 # 1-35-94 4421 -> 00005E16 # 1-36-1 4422 -> 00005E33 # 1-36-2 4423 -> 00005E81 # 1-36-3 4424 -> 00005F14 # 1-36-4 4425 -> 00005F35 # 1-36-5 4426 -> 00005F6B # 1-36-6 4427 -> 00005FB4 # 1-36-7 4428 -> 000061F2 # 1-36-8 4429 -> 00006311 # 1-36-9 442A -> 000066A2 # 1-36-10 442B -> 0000671D # 1-36-11 442C -> 00006F6E # 1-36-12 442D -> 00007252 # 1-36-13 442E -> 0000753A # 1-36-14 442F -> 0000773A # 1-36-15 4430 -> 00008074 # 1-36-16 4431 -> 00008139 # 1-36-17 4432 -> 00008178 # 1-36-18 4433 -> 00008776 # 1-36-19 4434 -> 00008ABF # 1-36-20 4435 -> 00008ADC # 1-36-21 4436 -> 00008D85 # 1-36-22 4437 -> 00008DF3 # 1-36-23 4438 -> 0000929A # 1-36-24 4439 -> 00009577 # 1-36-25 443A -> 00009802 # 1-36-26 443B -> 00009CE5 # 1-36-27 443C -> 000052C5 # 1-36-28 443D -> 00006357 # 1-36-29 443E -> 000076F4 # 1-36-30 443F -> 00006715 # 1-36-31 4440 -> 00006C88 # 1-36-32 4441 -> 000073CD # 1-36-33 4442 -> 00008CC3 # 1-36-34 4443 -> 000093AE # 1-36-35 4444 -> 00009673 # 1-36-36 4445 -> 00006D25 # 1-36-37 4446 -> 0000589C # 1-36-38 4447 -> 0000690E # 1-36-39 4448 -> 000069CC # 1-36-40 4449 -> 00008FFD # 1-36-41 444A -> 0000939A # 1-36-42 444B -> 000075DB # 1-36-43 444C -> 0000901A # 1-36-44 444D -> 0000585A # 1-36-45 444E -> 00006802 # 1-36-46 444F -> 000063B4 # 1-36-47 4450 -> 000069FB # 1-36-48 4451 -> 00004F43 # 1-36-49 4452 -> 00006F2C # 1-36-50 4453 -> 000067D8 # 1-36-51 4454 -> 00008FBB # 1-36-52 4455 -> 00008526 # 1-36-53 4456 -> 00007DB4 # 1-36-54 4457 -> 00009354 # 1-36-55 4458 -> 0000693F # 1-36-56 4459 -> 00006F70 # 1-36-57 445A -> 0000576A # 1-36-58 445B -> 000058F7 # 1-36-59 445C -> 00005B2C # 1-36-60 445D -> 00007D2C # 1-36-61 445E -> 0000722A # 1-36-62 445F -> 0000540A # 1-36-63 4460 -> 000091E3 # 1-36-64 4461 -> 00009DB4 # 1-36-65 4462 -> 00004EAD # 1-36-66 4463 -> 00004F4E # 1-36-67 4464 -> 0000505C # 1-36-68 4465 -> 00005075 # 1-36-69 4466 -> 00005243 # 1-36-70 4467 -> 00008C9E # 1-36-71 4468 -> 00005448 # 1-36-72 4469 -> 00005824 # 1-36-73 446A -> 00005B9A # 1-36-74 446B -> 00005E1D # 1-36-75 446C -> 00005E95 # 1-36-76 446D -> 00005EAD # 1-36-77 446E -> 00005EF7 # 1-36-78 446F -> 00005F1F # 1-36-79 4470 -> 0000608C # 1-36-80 4471 -> 000062B5 # 1-36-81 4472 -> 0000633A # 1-36-82 4473 -> 000063D0 # 1-36-83 4474 -> 000068AF # 1-36-84 4475 -> 00006C40 # 1-36-85 4476 -> 00007887 # 1-36-86 4477 -> 0000798E # 1-36-87 4478 -> 00007A0B # 1-36-88 4479 -> 00007DE0 # 1-36-89 447A -> 00008247 # 1-36-90 447B -> 00008A02 # 1-36-91 447C -> 00008AE6 # 1-36-92 447D -> 00008E44 # 1-36-93 447E -> 00009013 # 1-36-94 4521 -> 000090B8 # 1-37-1 4522 -> 0000912D # 1-37-2 4523 -> 000091D8 # 1-37-3 4524 -> 00009F0E # 1-37-4 4525 -> 00006CE5 # 1-37-5 4526 -> 00006458 # 1-37-6 4527 -> 000064E2 # 1-37-7 4528 -> 00006575 # 1-37-8 4529 -> 00006EF4 # 1-37-9 452A -> 00007684 # 1-37-10 452B -> 00007B1B # 1-37-11 452C -> 00009069 # 1-37-12 452D -> 000093D1 # 1-37-13 452E -> 00006EBA # 1-37-14 452F -> 000054F2 # 1-37-15 4530 -> 00005FB9 # 1-37-16 4531 -> 000064A4 # 1-37-17 4532 -> 00008F4D # 1-37-18 4533 -> 00008FED # 1-37-19 4534 -> 00009244 # 1-37-20 4535 -> 00005178 # 1-37-21 4536 -> 0000586B # 1-37-22 4537 -> 00005929 # 1-37-23 4538 -> 00005C55 # 1-37-24 4539 -> 00005E97 # 1-37-25 453A -> 00006DFB # 1-37-26 453B -> 00007E8F # 1-37-27 453C -> 0000751C # 1-37-28 453D -> 00008CBC # 1-37-29 453E -> 00008EE2 # 1-37-30 453F -> 0000985B # 1-37-31 4540 -> 000070B9 # 1-37-32 4541 -> 00004F1D # 1-37-33 4542 -> 00006BBF # 1-37-34 4543 -> 00006FB1 # 1-37-35 4544 -> 00007530 # 1-37-36 4545 -> 000096FB # 1-37-37 4546 -> 0000514E # 1-37-38 4547 -> 00005410 # 1-37-39 4548 -> 00005835 # 1-37-40 4549 -> 00005857 # 1-37-41 454A -> 000059AC # 1-37-42 454B -> 00005C60 # 1-37-43 454C -> 00005F92 # 1-37-44 454D -> 00006597 # 1-37-45 454E -> 0000675C # 1-37-46 454F -> 00006E21 # 1-37-47 4550 -> 0000767B # 1-37-48 4551 -> 000083DF # 1-37-49 4552 -> 00008CED # 1-37-50 4553 -> 00009014 # 1-37-51 4554 -> 000090FD # 1-37-52 4555 -> 0000934D # 1-37-53 4556 -> 00007825 # 1-37-54 4557 -> 0000783A # 1-37-55 4558 -> 000052AA # 1-37-56 4559 -> 00005EA6 # 1-37-57 455A -> 0000571F # 1-37-58 455B -> 00005974 # 1-37-59 455C -> 00006012 # 1-37-60 455D -> 00005012 # 1-37-61 455E -> 0000515A # 1-37-62 455F -> 000051AC # 1-37-63 4560 -> 000051CD # 1-37-64 4561 -> 00005200 # 1-37-65 4562 -> 00005510 # 1-37-66 4563 -> 00005854 # 1-37-67 4564 -> 00005858 # 1-37-68 4565 -> 00005957 # 1-37-69 4566 -> 00005B95 # 1-37-70 4567 -> 00005CF6 # 1-37-71 4568 -> 00005D8B # 1-37-72 4569 -> 000060BC # 1-37-73 456A -> 00006295 # 1-37-74 456B -> 0000642D # 1-37-75 456C -> 00006771 # 1-37-76 456D -> 00006843 # 1-37-77 456E -> 000068BC # 1-37-78 456F -> 000068DF # 1-37-79 4570 -> 000076D7 # 1-37-80 4571 -> 00006DD8 # 1-37-81 4572 -> 00006E6F # 1-37-82 4573 -> 00006D9B # 1-37-83 4574 -> 0000706F # 1-37-84 4575 -> 000071C8 # 1-37-85 4576 -> 00005F53 # 1-37-86 4577 -> 000075D8 # 1-37-87 4578 -> 00007977 # 1-37-88 4579 -> 00007B49 # 1-37-89 457A -> 00007B54 # 1-37-90 457B -> 00007B52 # 1-37-91 457C -> 00007CD6 # 1-37-92 457D -> 00007D71 # 1-37-93 457E -> 00005230 # 1-37-94 4621 -> 00008463 # 1-38-1 4622 -> 00008569 # 1-38-2 4623 -> 000085E4 # 1-38-3 4624 -> 00008A0E # 1-38-4 4625 -> 00008B04 # 1-38-5 4626 -> 00008C46 # 1-38-6 4627 -> 00008E0F # 1-38-7 4628 -> 00009003 # 1-38-8 4629 -> 0000900F # 1-38-9 462A -> 00009419 # 1-38-10 462B -> 00009676 # 1-38-11 462C -> 0000982D # 1-38-12 462D -> 00009A30 # 1-38-13 462E -> 000095D8 # 1-38-14 462F -> 000050CD # 1-38-15 4630 -> 000052D5 # 1-38-16 4631 -> 0000540C # 1-38-17 4632 -> 00005802 # 1-38-18 4633 -> 00005C0E # 1-38-19 4634 -> 000061A7 # 1-38-20 4635 -> 0000649E # 1-38-21 4636 -> 00006D1E # 1-38-22 4637 -> 000077B3 # 1-38-23 4638 -> 00007AE5 # 1-38-24 4639 -> 000080F4 # 1-38-25 463A -> 00008404 # 1-38-26 463B -> 00009053 # 1-38-27 463C -> 00009285 # 1-38-28 463D -> 00005CE0 # 1-38-29 463E -> 00009D07 # 1-38-30 463F -> 0000533F # 1-38-31 4640 -> 00005F97 # 1-38-32 4641 -> 00005FB3 # 1-38-33 4642 -> 00006D9C # 1-38-34 4643 -> 00007279 # 1-38-35 4644 -> 00007763 # 1-38-36 4645 -> 000079BF # 1-38-37 4646 -> 00007BE4 # 1-38-38 4647 -> 00006BD2 # 1-38-39 4648 -> 000072EC # 1-38-40 4649 -> 00008AAD # 1-38-41 464A -> 00006803 # 1-38-42 464B -> 00006A61 # 1-38-43 464C -> 000051F8 # 1-38-44 464D -> 00007A81 # 1-38-45 464E -> 00006934 # 1-38-46 464F -> 00005C4A # 1-38-47 4650 -> 00009CF6 # 1-38-48 4651 -> 000082EB # 1-38-49 4652 -> 00005BC5 # 1-38-50 4653 -> 00009149 # 1-38-51 4654 -> 0000701E # 1-38-52 4655 -> 00005678 # 1-38-53 4656 -> 00005C6F # 1-38-54 4657 -> 000060C7 # 1-38-55 4658 -> 00006566 # 1-38-56 4659 -> 00006C8C # 1-38-57 465A -> 00008C5A # 1-38-58 465B -> 00009041 # 1-38-59 465C -> 00009813 # 1-38-60 465D -> 00005451 # 1-38-61 465E -> 000066C7 # 1-38-62 465F -> 0000920D # 1-38-63 4660 -> 00005948 # 1-38-64 4661 -> 000090A3 # 1-38-65 4662 -> 00005185 # 1-38-66 4663 -> 00004E4D # 1-38-67 4664 -> 000051EA # 1-38-68 4665 -> 00008599 # 1-38-69 4666 -> 00008B0E # 1-38-70 4667 -> 00007058 # 1-38-71 4668 -> 0000637A # 1-38-72 4669 -> 0000934B # 1-38-73 466A -> 00006962 # 1-38-74 466B -> 000099B4 # 1-38-75 466C -> 00007E04 # 1-38-76 466D -> 00007577 # 1-38-77 466E -> 00005357 # 1-38-78 466F -> 00006960 # 1-38-79 4670 -> 00008EDF # 1-38-80 4671 -> 000096E3 # 1-38-81 4672 -> 00006C5D # 1-38-82 4673 -> 00004E8C # 1-38-83 4674 -> 00005C3C # 1-38-84 4675 -> 00005F10 # 1-38-85 4676 -> 00008FE9 # 1-38-86 4677 -> 00005302 # 1-38-87 4678 -> 00008CD1 # 1-38-88 4679 -> 00008089 # 1-38-89 467A -> 00008679 # 1-38-90 467B -> 00005EFF # 1-38-91 467C -> 000065E5 # 1-38-92 467D -> 00004E73 # 1-38-93 467E -> 00005165 # 1-38-94 4721 -> 00005982 # 1-39-1 4722 -> 00005C3F # 1-39-2 4723 -> 000097EE # 1-39-3 4724 -> 00004EFB # 1-39-4 4725 -> 0000598A # 1-39-5 4726 -> 00005FCD # 1-39-6 4727 -> 00008A8D # 1-39-7 4728 -> 00006FE1 # 1-39-8 4729 -> 000079B0 # 1-39-9 472A -> 00007962 # 1-39-10 472B -> 00005BE7 # 1-39-11 472C -> 00008471 # 1-39-12 472D -> 0000732B # 1-39-13 472E -> 000071B1 # 1-39-14 472F -> 00005E74 # 1-39-15 4730 -> 00005FF5 # 1-39-16 4731 -> 0000637B # 1-39-17 4732 -> 0000649A # 1-39-18 4733 -> 000071C3 # 1-39-19 4734 -> 00007C98 # 1-39-20 4735 -> 00004E43 # 1-39-21 4736 -> 00005EFC # 1-39-22 4737 -> 00004E4B # 1-39-23 4738 -> 000057DC # 1-39-24 4739 -> 000056A2 # 1-39-25 473A -> 000060A9 # 1-39-26 473B -> 00006FC3 # 1-39-27 473C -> 00007D0D # 1-39-28 473D -> 000080FD # 1-39-29 473E -> 00008133 # 1-39-30 473F -> 000081BF # 1-39-31 4740 -> 00008FB2 # 1-39-32 4741 -> 00008997 # 1-39-33 4742 -> 000086A4 # 1-39-34 4743 -> 00005DF4 # 1-39-35 4744 -> 0000628A # 1-39-36 4745 -> 000064AD # 1-39-37 4746 -> 00008987 # 1-39-38 4747 -> 00006777 # 1-39-39 4748 -> 00006CE2 # 1-39-40 4749 -> 00006D3E # 1-39-41 474A -> 00007436 # 1-39-42 474B -> 00007834 # 1-39-43 474C -> 00005A46 # 1-39-44 474D -> 00007F75 # 1-39-45 474E -> 000082AD # 1-39-46 474F -> 000099AC # 1-39-47 4750 -> 00004FF3 # 1-39-48 4751 -> 00005EC3 # 1-39-49 4752 -> 000062DD # 1-39-50 4753 -> 00006392 # 1-39-51 4754 -> 00006557 # 1-39-52 4755 -> 0000676F # 1-39-53 4756 -> 000076C3 # 1-39-54 4757 -> 0000724C # 1-39-55 4758 -> 000080CC # 1-39-56 4759 -> 000080BA # 1-39-57 475A -> 00008F29 # 1-39-58 475B -> 0000914D # 1-39-59 475C -> 0000500D # 1-39-60 475D -> 000057F9 # 1-39-61 475E -> 00005A92 # 1-39-62 475F -> 00006885 # 1-39-63 4760 -> 00006973 # 1-39-64 4761 -> 00007164 # 1-39-65 4762 -> 000072FD # 1-39-66 4763 -> 00008CB7 # 1-39-67 4764 -> 000058F2 # 1-39-68 4765 -> 00008CE0 # 1-39-69 4766 -> 0000966A # 1-39-70 4767 -> 00009019 # 1-39-71 4768 -> 0000877F # 1-39-72 4769 -> 000079E4 # 1-39-73 476A -> 000077E7 # 1-39-74 476B -> 00008429 # 1-39-75 476C -> 00004F2F # 1-39-76 476D -> 00005265 # 1-39-77 476E -> 0000535A # 1-39-78 476F -> 000062CD # 1-39-79 4770 -> 000067CF # 1-39-80 4771 -> 00006CCA # 1-39-81 4772 -> 0000767D # 1-39-82 4773 -> 00007B94 # 1-39-83 4774 -> 00007C95 # 1-39-84 4775 -> 00008236 # 1-39-85 4776 -> 00008584 # 1-39-86 4777 -> 00008FEB # 1-39-87 4778 -> 000066DD # 1-39-88 4779 -> 00006F20 # 1-39-89 477A -> 00007206 # 1-39-90 477B -> 00007E1B # 1-39-91 477C -> 000083AB # 1-39-92 477D -> 000099C1 # 1-39-93 477E -> 00009EA6 # 1-39-94 4821 -> 000051FD # 1-40-1 4822 -> 00007BB1 # 1-40-2 4823 -> 00007872 # 1-40-3 4824 -> 00007BB8 # 1-40-4 4825 -> 00008087 # 1-40-5 4826 -> 00007B48 # 1-40-6 4827 -> 00006AE8 # 1-40-7 4828 -> 00005E61 # 1-40-8 4829 -> 0000808C # 1-40-9 482A -> 00007551 # 1-40-10 482B -> 00007560 # 1-40-11 482C -> 0000516B # 1-40-12 482D -> 00009262 # 1-40-13 482E -> 00006E8C # 1-40-14 482F -> 0000767A # 1-40-15 4830 -> 00009197 # 1-40-16 4831 -> 00009AEA # 1-40-17 4832 -> 00004F10 # 1-40-18 4833 -> 00007F70 # 1-40-19 4834 -> 0000629C # 1-40-20 4835 -> 00007B4F # 1-40-21 4836 -> 000095A5 # 1-40-22 4837 -> 00009CE9 # 1-40-23 4838 -> 0000567A # 1-40-24 4839 -> 00005859 # 1-40-25 483A -> 000086E4 # 1-40-26 483B -> 000096BC # 1-40-27 483C -> 00004F34 # 1-40-28 483D -> 00005224 # 1-40-29 483E -> 0000534A # 1-40-30 483F -> 000053CD # 1-40-31 4840 -> 000053DB # 1-40-32 4841 -> 00005E06 # 1-40-33 4842 -> 0000642C # 1-40-34 4843 -> 00006591 # 1-40-35 4844 -> 0000677F # 1-40-36 4845 -> 00006C3E # 1-40-37 4846 -> 00006C4E # 1-40-38 4847 -> 00007248 # 1-40-39 4848 -> 000072AF # 1-40-40 4849 -> 000073ED # 1-40-41 484A -> 00007554 # 1-40-42 484B -> 00007E41 # 1-40-43 484C -> 0000822C # 1-40-44 484D -> 000085E9 # 1-40-45 484E -> 00008CA9 # 1-40-46 484F -> 00007BC4 # 1-40-47 4850 -> 000091C6 # 1-40-48 4851 -> 00007169 # 1-40-49 4852 -> 00009812 # 1-40-50 4853 -> 000098EF # 1-40-51 4854 -> 0000633D # 1-40-52 4855 -> 00006669 # 1-40-53 4856 -> 0000756A # 1-40-54 4857 -> 000076E4 # 1-40-55 4858 -> 000078D0 # 1-40-56 4859 -> 00008543 # 1-40-57 485A -> 000086EE # 1-40-58 485B -> 0000532A # 1-40-59 485C -> 00005351 # 1-40-60 485D -> 00005426 # 1-40-61 485E -> 00005983 # 1-40-62 485F -> 00005E87 # 1-40-63 4860 -> 00005F7C # 1-40-64 4861 -> 000060B2 # 1-40-65 4862 -> 00006249 # 1-40-66 4863 -> 00006279 # 1-40-67 4864 -> 000062AB # 1-40-68 4865 -> 00006590 # 1-40-69 4866 -> 00006BD4 # 1-40-70 4867 -> 00006CCC # 1-40-71 4868 -> 000075B2 # 1-40-72 4869 -> 000076AE # 1-40-73 486A -> 00007891 # 1-40-74 486B -> 000079D8 # 1-40-75 486C -> 00007DCB # 1-40-76 486D -> 00007F77 # 1-40-77 486E -> 000080A5 # 1-40-78 486F -> 000088AB # 1-40-79 4870 -> 00008AB9 # 1-40-80 4871 -> 00008CBB # 1-40-81 4872 -> 0000907F # 1-40-82 4873 -> 0000975E # 1-40-83 4874 -> 000098DB # 1-40-84 4875 -> 00006A0B # 1-40-85 4876 -> 00007C38 # 1-40-86 4877 -> 00005099 # 1-40-87 4878 -> 00005C3E # 1-40-88 4879 -> 00005FAE # 1-40-89 487A -> 00006787 # 1-40-90 487B -> 00006BD8 # 1-40-91 487C -> 00007435 # 1-40-92 487D -> 00007709 # 1-40-93 487E -> 00007F8E # 1-40-94 4921 -> 00009F3B # 1-41-1 4922 -> 000067CA # 1-41-2 4923 -> 00007A17 # 1-41-3 4924 -> 00005339 # 1-41-4 4925 -> 0000758B # 1-41-5 4926 -> 00009AED # 1-41-6 4927 -> 00005F66 # 1-41-7 4928 -> 0000819D # 1-41-8 4929 -> 000083F1 # 1-41-9 492A -> 00008098 # 1-41-10 492B -> 00005F3C # 1-41-11 492C -> 00005FC5 # 1-41-12 492D -> 00007562 # 1-41-13 492E -> 00007B46 # 1-41-14 492F -> 0000903C # 1-41-15 4930 -> 00006867 # 1-41-16 4931 -> 000059EB # 1-41-17 4932 -> 00005A9B # 1-41-18 4933 -> 00007D10 # 1-41-19 4934 -> 0000767E # 1-41-20 4935 -> 00008B2C # 1-41-21 4936 -> 00004FF5 # 1-41-22 4937 -> 00005F6A # 1-41-23 4938 -> 00006A19 # 1-41-24 4939 -> 00006C37 # 1-41-25 493A -> 00006F02 # 1-41-26 493B -> 000074E2 # 1-41-27 493C -> 00007968 # 1-41-28 493D -> 00008868 # 1-41-29 493E -> 00008A55 # 1-41-30 493F -> 00008C79 # 1-41-31 4940 -> 00005EDF # 1-41-32 4941 -> 000063CF # 1-41-33 4942 -> 000075C5 # 1-41-34 4943 -> 000079D2 # 1-41-35 4944 -> 000082D7 # 1-41-36 4945 -> 00009328 # 1-41-37 4946 -> 000092F2 # 1-41-38 4947 -> 0000849C # 1-41-39 4948 -> 000086ED # 1-41-40 4949 -> 00009C2D # 1-41-41 494A -> 000054C1 # 1-41-42 494B -> 00005F6C # 1-41-43 494C -> 0000658C # 1-41-44 494D -> 00006D5C # 1-41-45 494E -> 00007015 # 1-41-46 494F -> 00008CA7 # 1-41-47 4950 -> 00008CD3 # 1-41-48 4951 -> 0000983B # 1-41-49 4952 -> 0000654F # 1-41-50 4953 -> 000074F6 # 1-41-51 4954 -> 00004E0D # 1-41-52 4955 -> 00004ED8 # 1-41-53 4956 -> 000057E0 # 1-41-54 4957 -> 0000592B # 1-41-55 4958 -> 00005A66 # 1-41-56 4959 -> 00005BCC # 1-41-57 495A -> 000051A8 # 1-41-58 495B -> 00005E03 # 1-41-59 495C -> 00005E9C # 1-41-60 495D -> 00006016 # 1-41-61 495E -> 00006276 # 1-41-62 495F -> 00006577 # 1-41-63 4960 -> 000065A7 # 1-41-64 4961 -> 0000666E # 1-41-65 4962 -> 00006D6E # 1-41-66 4963 -> 00007236 # 1-41-67 4964 -> 00007B26 # 1-41-68 4965 -> 00008150 # 1-41-69 4966 -> 0000819A # 1-41-70 4967 -> 00008299 # 1-41-71 4968 -> 00008B5C # 1-41-72 4969 -> 00008CA0 # 1-41-73 496A -> 00008CE6 # 1-41-74 496B -> 00008D74 # 1-41-75 496C -> 0000961C # 1-41-76 496D -> 00009644 # 1-41-77 496E -> 00004FAE # 1-41-78 496F -> 000064AB # 1-41-79 4970 -> 00006B66 # 1-41-80 4971 -> 0000821E # 1-41-81 4972 -> 00008461 # 1-41-82 4973 -> 0000856A # 1-41-83 4974 -> 000090E8 # 1-41-84 4975 -> 00005C01 # 1-41-85 4976 -> 00006953 # 1-41-86 4977 -> 000098A8 # 1-41-87 4978 -> 0000847A # 1-41-88 4979 -> 00008557 # 1-41-89 497A -> 00004F0F # 1-41-90 497B -> 0000526F # 1-41-91 497C -> 00005FA9 # 1-41-92 497D -> 00005E45 # 1-41-93 497E -> 0000670D # 1-41-94 4A21 -> 0000798F # 1-42-1 4A22 -> 00008179 # 1-42-2 4A23 -> 00008907 # 1-42-3 4A24 -> 00008986 # 1-42-4 4A25 -> 00006DF5 # 1-42-5 4A26 -> 00005F17 # 1-42-6 4A27 -> 00006255 # 1-42-7 4A28 -> 00006CB8 # 1-42-8 4A29 -> 00004ECF # 1-42-9 4A2A -> 00007269 # 1-42-10 4A2B -> 00009B92 # 1-42-11 4A2C -> 00005206 # 1-42-12 4A2D -> 0000543B # 1-42-13 4A2E -> 00005674 # 1-42-14 4A2F -> 000058B3 # 1-42-15 4A30 -> 000061A4 # 1-42-16 4A31 -> 0000626E # 1-42-17 4A32 -> 0000711A # 1-42-18 4A33 -> 0000596E # 1-42-19 4A34 -> 00007C89 # 1-42-20 4A35 -> 00007CDE # 1-42-21 4A36 -> 00007D1B # 1-42-22 4A37 -> 000096F0 # 1-42-23 4A38 -> 00006587 # 1-42-24 4A39 -> 0000805E # 1-42-25 4A3A -> 00004E19 # 1-42-26 4A3B -> 00004F75 # 1-42-27 4A3C -> 00005175 # 1-42-28 4A3D -> 00005840 # 1-42-29 4A3E -> 00005E63 # 1-42-30 4A3F -> 00005E73 # 1-42-31 4A40 -> 00005F0A # 1-42-32 4A41 -> 000067C4 # 1-42-33 4A42 -> 00004E26 # 1-42-34 4A43 -> 0000853D # 1-42-35 4A44 -> 00009589 # 1-42-36 4A45 -> 0000965B # 1-42-37 4A46 -> 00007C73 # 1-42-38 4A47 -> 00009801 # 1-42-39 4A48 -> 000050FB # 1-42-40 4A49 -> 000058C1 # 1-42-41 4A4A -> 00007656 # 1-42-42 4A4B -> 000078A7 # 1-42-43 4A4C -> 00005225 # 1-42-44 4A4D -> 000077A5 # 1-42-45 4A4E -> 00008511 # 1-42-46 4A4F -> 00007B86 # 1-42-47 4A50 -> 0000504F # 1-42-48 4A51 -> 00005909 # 1-42-49 4A52 -> 00007247 # 1-42-50 4A53 -> 00007BC7 # 1-42-51 4A54 -> 00007DE8 # 1-42-52 4A55 -> 00008FBA # 1-42-53 4A56 -> 00008FD4 # 1-42-54 4A57 -> 0000904D # 1-42-55 4A58 -> 00004FBF # 1-42-56 4A59 -> 000052C9 # 1-42-57 4A5A -> 00005A29 # 1-42-58 4A5B -> 00005F01 # 1-42-59 4A5C -> 000097AD # 1-42-60 4A5D -> 00004FDD # 1-42-61 4A5E -> 00008217 # 1-42-62 4A5F -> 000092EA # 1-42-63 4A60 -> 00005703 # 1-42-64 4A61 -> 00006355 # 1-42-65 4A62 -> 00006B69 # 1-42-66 4A63 -> 0000752B # 1-42-67 4A64 -> 000088DC # 1-42-68 4A65 -> 00008F14 # 1-42-69 4A66 -> 00007A42 # 1-42-70 4A67 -> 000052DF # 1-42-71 4A68 -> 00005893 # 1-42-72 4A69 -> 00006155 # 1-42-73 4A6A -> 0000620A # 1-42-74 4A6B -> 000066AE # 1-42-75 4A6C -> 00006BCD # 1-42-76 4A6D -> 00007C3F # 1-42-77 4A6E -> 000083E9 # 1-42-78 4A6F -> 00005023 # 1-42-79 4A70 -> 00004FF8 # 1-42-80 4A71 -> 00005305 # 1-42-81 4A72 -> 00005446 # 1-42-82 4A73 -> 00005831 # 1-42-83 4A74 -> 00005949 # 1-42-84 4A75 -> 00005B9D # 1-42-85 4A76 -> 00005CF0 # 1-42-86 4A77 -> 00005CEF # 1-42-87 4A78 -> 00005D29 # 1-42-88 4A79 -> 00005E96 # 1-42-89 4A7A -> 000062B1 # 1-42-90 4A7B -> 00006367 # 1-42-91 4A7C -> 0000653E # 1-42-92 4A7D -> 000065B9 # 1-42-93 4A7E -> 0000670B # 1-42-94 4B21 -> 00006CD5 # 1-43-1 4B22 -> 00006CE1 # 1-43-2 4B23 -> 000070F9 # 1-43-3 4B24 -> 00007832 # 1-43-4 4B25 -> 00007E2B # 1-43-5 4B26 -> 000080DE # 1-43-6 4B27 -> 000082B3 # 1-43-7 4B28 -> 0000840C # 1-43-8 4B29 -> 000084EC # 1-43-9 4B2A -> 00008702 # 1-43-10 4B2B -> 00008912 # 1-43-11 4B2C -> 00008A2A # 1-43-12 4B2D -> 00008C4A # 1-43-13 4B2E -> 000090A6 # 1-43-14 4B2F -> 000092D2 # 1-43-15 4B30 -> 000098FD # 1-43-16 4B31 -> 00009CF3 # 1-43-17 4B32 -> 00009D6C # 1-43-18 4B33 -> 00004E4F # 1-43-19 4B34 -> 00004EA1 # 1-43-20 4B35 -> 0000508D # 1-43-21 4B36 -> 00005256 # 1-43-22 4B37 -> 0000574A # 1-43-23 4B38 -> 000059A8 # 1-43-24 4B39 -> 00005E3D # 1-43-25 4B3A -> 00005FD8 # 1-43-26 4B3B -> 00005FD9 # 1-43-27 4B3C -> 0000623F # 1-43-28 4B3D -> 000066B4 # 1-43-29 4B3E -> 0000671B # 1-43-30 4B3F -> 000067D0 # 1-43-31 4B40 -> 000068D2 # 1-43-32 4B41 -> 00005192 # 1-43-33 4B42 -> 00007D21 # 1-43-34 4B43 -> 000080AA # 1-43-35 4B44 -> 000081A8 # 1-43-36 4B45 -> 00008B00 # 1-43-37 4B46 -> 00008C8C # 1-43-38 4B47 -> 00008CBF # 1-43-39 4B48 -> 0000927E # 1-43-40 4B49 -> 00009632 # 1-43-41 4B4A -> 00005420 # 1-43-42 4B4B -> 0000982C # 1-43-43 4B4C -> 00005317 # 1-43-44 4B4D -> 000050D5 # 1-43-45 4B4E -> 0000535C # 1-43-46 4B4F -> 000058A8 # 1-43-47 4B50 -> 000064B2 # 1-43-48 4B51 -> 00006734 # 1-43-49 4B52 -> 00007267 # 1-43-50 4B53 -> 00007766 # 1-43-51 4B54 -> 00007A46 # 1-43-52 4B55 -> 000091E6 # 1-43-53 4B56 -> 000052C3 # 1-43-54 4B57 -> 00006CA1 # 1-43-55 4B58 -> 00006B86 # 1-43-56 4B59 -> 00005800 # 1-43-57 4B5A -> 00005E4C # 1-43-58 4B5B -> 00005954 # 1-43-59 4B5C -> 0000672C # 1-43-60 4B5D -> 00007FFB # 1-43-61 4B5E -> 000051E1 # 1-43-62 4B5F -> 000076C6 # 1-43-63 4B60 -> 00006469 # 1-43-64 4B61 -> 000078E8 # 1-43-65 4B62 -> 00009B54 # 1-43-66 4B63 -> 00009EBB # 1-43-67 4B64 -> 000057CB # 1-43-68 4B65 -> 000059B9 # 1-43-69 4B66 -> 00006627 # 1-43-70 4B67 -> 0000679A # 1-43-71 4B68 -> 00006BCE # 1-43-72 4B69 -> 000054E9 # 1-43-73 4B6A -> 000069D9 # 1-43-74 4B6B -> 00005E55 # 1-43-75 4B6C -> 0000819C # 1-43-76 4B6D -> 00006795 # 1-43-77 4B6E -> 00009BAA # 1-43-78 4B6F -> 000067FE # 1-43-79 4B70 -> 00009C52 # 1-43-80 4B71 -> 0000685D # 1-43-81 4B72 -> 00004EA6 # 1-43-82 4B73 -> 00004FE3 # 1-43-83 4B74 -> 000053C8 # 1-43-84 4B75 -> 000062B9 # 1-43-85 4B76 -> 0000672B # 1-43-86 4B77 -> 00006CAB # 1-43-87 4B78 -> 00008FC4 # 1-43-88 4B79 -> 00004FAD # 1-43-89 4B7A -> 00007E6D # 1-43-90 4B7B -> 00009EBF # 1-43-91 4B7C -> 00004E07 # 1-43-92 4B7D -> 00006162 # 1-43-93 4B7E -> 00006E80 # 1-43-94 4C21 -> 00006F2B # 1-44-1 4C22 -> 00008513 # 1-44-2 4C23 -> 00005473 # 1-44-3 4C24 -> 0000672A # 1-44-4 4C25 -> 00009B45 # 1-44-5 4C26 -> 00005DF3 # 1-44-6 4C27 -> 00007B95 # 1-44-7 4C28 -> 00005CAC # 1-44-8 4C29 -> 00005BC6 # 1-44-9 4C2A -> 0000871C # 1-44-10 4C2B -> 00006E4A # 1-44-11 4C2C -> 000084D1 # 1-44-12 4C2D -> 00007A14 # 1-44-13 4C2E -> 00008108 # 1-44-14 4C2F -> 00005999 # 1-44-15 4C30 -> 00007C8D # 1-44-16 4C31 -> 00006C11 # 1-44-17 4C32 -> 00007720 # 1-44-18 4C33 -> 000052D9 # 1-44-19 4C34 -> 00005922 # 1-44-20 4C35 -> 00007121 # 1-44-21 4C36 -> 0000725F # 1-44-22 4C37 -> 000077DB # 1-44-23 4C38 -> 00009727 # 1-44-24 4C39 -> 00009D61 # 1-44-25 4C3A -> 0000690B # 1-44-26 4C3B -> 00005A7F # 1-44-27 4C3C -> 00005A18 # 1-44-28 4C3D -> 000051A5 # 1-44-29 4C3E -> 0000540D # 1-44-30 4C3F -> 0000547D # 1-44-31 4C40 -> 0000660E # 1-44-32 4C41 -> 000076DF # 1-44-33 4C42 -> 00008FF7 # 1-44-34 4C43 -> 00009298 # 1-44-35 4C44 -> 00009CF4 # 1-44-36 4C45 -> 000059EA # 1-44-37 4C46 -> 0000725D # 1-44-38 4C47 -> 00006EC5 # 1-44-39 4C48 -> 0000514D # 1-44-40 4C49 -> 000068C9 # 1-44-41 4C4A -> 00007DBF # 1-44-42 4C4B -> 00007DEC # 1-44-43 4C4C -> 00009762 # 1-44-44 4C4D -> 00009EBA # 1-44-45 4C4E -> 00006478 # 1-44-46 4C4F -> 00006A21 # 1-44-47 4C50 -> 00008302 # 1-44-48 4C51 -> 00005984 # 1-44-49 4C52 -> 00005B5F # 1-44-50 4C53 -> 00006BDB # 1-44-51 4C54 -> 0000731B # 1-44-52 4C55 -> 000076F2 # 1-44-53 4C56 -> 00007DB2 # 1-44-54 4C57 -> 00008017 # 1-44-55 4C58 -> 00008499 # 1-44-56 4C59 -> 00005132 # 1-44-57 4C5A -> 00006728 # 1-44-58 4C5B -> 00009ED9 # 1-44-59 4C5C -> 000076EE # 1-44-60 4C5D -> 00006762 # 1-44-61 4C5E -> 000052FF # 1-44-62 4C5F -> 00009905 # 1-44-63 4C60 -> 00005C24 # 1-44-64 4C61 -> 0000623B # 1-44-65 4C62 -> 00007C7E # 1-44-66 4C63 -> 00008CB0 # 1-44-67 4C64 -> 0000554F # 1-44-68 4C65 -> 000060B6 # 1-44-69 4C66 -> 00007D0B # 1-44-70 4C67 -> 00009580 # 1-44-71 4C68 -> 00005301 # 1-44-72 4C69 -> 00004E5F # 1-44-73 4C6A -> 000051B6 # 1-44-74 4C6B -> 0000591C # 1-44-75 4C6C -> 0000723A # 1-44-76 4C6D -> 00008036 # 1-44-77 4C6E -> 000091CE # 1-44-78 4C6F -> 00005F25 # 1-44-79 4C70 -> 000077E2 # 1-44-80 4C71 -> 00005384 # 1-44-81 4C72 -> 00005F79 # 1-44-82 4C73 -> 00007D04 # 1-44-83 4C74 -> 000085AC # 1-44-84 4C75 -> 00008A33 # 1-44-85 4C76 -> 00008E8D # 1-44-86 4C77 -> 00009756 # 1-44-87 4C78 -> 000067F3 # 1-44-88 4C79 -> 000085AE # 1-44-89 4C7A -> 00009453 # 1-44-90 4C7B -> 00006109 # 1-44-91 4C7C -> 00006108 # 1-44-92 4C7D -> 00006CB9 # 1-44-93 4C7E -> 00007652 # 1-44-94 4D21 -> 00008AED # 1-45-1 4D22 -> 00008F38 # 1-45-2 4D23 -> 0000552F # 1-45-3 4D24 -> 00004F51 # 1-45-4 4D25 -> 0000512A # 1-45-5 4D26 -> 000052C7 # 1-45-6 4D27 -> 000053CB # 1-45-7 4D28 -> 00005BA5 # 1-45-8 4D29 -> 00005E7D # 1-45-9 4D2A -> 000060A0 # 1-45-10 4D2B -> 00006182 # 1-45-11 4D2C -> 000063D6 # 1-45-12 4D2D -> 00006709 # 1-45-13 4D2E -> 000067DA # 1-45-14 4D2F -> 00006E67 # 1-45-15 4D30 -> 00006D8C # 1-45-16 4D31 -> 00007336 # 1-45-17 4D32 -> 00007337 # 1-45-18 4D33 -> 00007531 # 1-45-19 4D34 -> 00007950 # 1-45-20 4D35 -> 000088D5 # 1-45-21 4D36 -> 00008A98 # 1-45-22 4D37 -> 0000904A # 1-45-23 4D38 -> 00009091 # 1-45-24 4D39 -> 000090F5 # 1-45-25 4D3A -> 000096C4 # 1-45-26 4D3B -> 0000878D # 1-45-27 4D3C -> 00005915 # 1-45-28 4D3D -> 00004E88 # 1-45-29 4D3E -> 00004F59 # 1-45-30 4D3F -> 00004E0E # 1-45-31 4D40 -> 00008A89 # 1-45-32 4D41 -> 00008F3F # 1-45-33 4D42 -> 00009810 # 1-45-34 4D43 -> 000050AD # 1-45-35 4D44 -> 00005E7C # 1-45-36 4D45 -> 00005996 # 1-45-37 4D46 -> 00005BB9 # 1-45-38 4D47 -> 00005EB8 # 1-45-39 4D48 -> 000063DA # 1-45-40 4D49 -> 000063FA # 1-45-41 4D4A -> 000064C1 # 1-45-42 4D4B -> 000066DC # 1-45-43 4D4C -> 0000694A # 1-45-44 4D4D -> 000069D8 # 1-45-45 4D4E -> 00006D0B # 1-45-46 4D4F -> 00006EB6 # 1-45-47 4D50 -> 00007194 # 1-45-48 4D51 -> 00007528 # 1-45-49 4D52 -> 00007AAF # 1-45-50 4D53 -> 00007F8A # 1-45-51 4D54 -> 00008000 # 1-45-52 4D55 -> 00008449 # 1-45-53 4D56 -> 000084C9 # 1-45-54 4D57 -> 00008981 # 1-45-55 4D58 -> 00008B21 # 1-45-56 4D59 -> 00008E0A # 1-45-57 4D5A -> 00009065 # 1-45-58 4D5B -> 0000967D # 1-45-59 4D5C -> 0000990A # 1-45-60 4D5D -> 0000617E # 1-45-61 4D5E -> 00006291 # 1-45-62 4D5F -> 00006B32 # 1-45-63 4D60 -> 00006C83 # 1-45-64 4D61 -> 00006D74 # 1-45-65 4D62 -> 00007FCC # 1-45-66 4D63 -> 00007FFC # 1-45-67 4D64 -> 00006DC0 # 1-45-68 4D65 -> 00007F85 # 1-45-69 4D66 -> 000087BA # 1-45-70 4D67 -> 000088F8 # 1-45-71 4D68 -> 00006765 # 1-45-72 4D69 -> 000083B1 # 1-45-73 4D6A -> 0000983C # 1-45-74 4D6B -> 000096F7 # 1-45-75 4D6C -> 00006D1B # 1-45-76 4D6D -> 00007D61 # 1-45-77 4D6E -> 0000843D # 1-45-78 4D6F -> 0000916A # 1-45-79 4D70 -> 00004E71 # 1-45-80 4D71 -> 00005375 # 1-45-81 4D72 -> 00005D50 # 1-45-82 4D73 -> 00006B04 # 1-45-83 4D74 -> 00006FEB # 1-45-84 4D75 -> 000085CD # 1-45-85 4D76 -> 0000862D # 1-45-86 4D77 -> 000089A7 # 1-45-87 4D78 -> 00005229 # 1-45-88 4D79 -> 0000540F # 1-45-89 4D7A -> 00005C65 # 1-45-90 4D7B -> 0000674E # 1-45-91 4D7C -> 000068A8 # 1-45-92 4D7D -> 00007406 # 1-45-93 4D7E -> 00007483 # 1-45-94 4E21 -> 000075E2 # 1-46-1 4E22 -> 000088CF # 1-46-2 4E23 -> 000088E1 # 1-46-3 4E24 -> 000091CC # 1-46-4 4E25 -> 000096E2 # 1-46-5 4E26 -> 00009678 # 1-46-6 4E27 -> 00005F8B # 1-46-7 4E28 -> 00007387 # 1-46-8 4E29 -> 00007ACB # 1-46-9 4E2A -> 0000844E # 1-46-10 4E2B -> 000063A0 # 1-46-11 4E2C -> 00007565 # 1-46-12 4E2D -> 00005289 # 1-46-13 4E2E -> 00006D41 # 1-46-14 4E2F -> 00006E9C # 1-46-15 4E30 -> 00007409 # 1-46-16 4E31 -> 00007559 # 1-46-17 4E32 -> 0000786B # 1-46-18 4E33 -> 00007C92 # 1-46-19 4E34 -> 00009686 # 1-46-20 4E35 -> 00007ADC # 1-46-21 4E36 -> 00009F8D # 1-46-22 4E37 -> 00004FB6 # 1-46-23 4E38 -> 0000616E # 1-46-24 4E39 -> 000065C5 # 1-46-25 4E3A -> 0000865C # 1-46-26 4E3B -> 00004E86 # 1-46-27 4E3C -> 00004EAE # 1-46-28 4E3D -> 000050DA # 1-46-29 4E3E -> 00004E21 # 1-46-30 4E3F -> 000051CC # 1-46-31 4E40 -> 00005BEE # 1-46-32 4E41 -> 00006599 # 1-46-33 4E42 -> 00006881 # 1-46-34 4E43 -> 00006DBC # 1-46-35 4E44 -> 0000731F # 1-46-36 4E45 -> 00007642 # 1-46-37 4E46 -> 000077AD # 1-46-38 4E47 -> 00007A1C # 1-46-39 4E48 -> 00007CE7 # 1-46-40 4E49 -> 0000826F # 1-46-41 4E4A -> 00008AD2 # 1-46-42 4E4B -> 0000907C # 1-46-43 4E4C -> 000091CF # 1-46-44 4E4D -> 00009675 # 1-46-45 4E4E -> 00009818 # 1-46-46 4E4F -> 0000529B # 1-46-47 4E50 -> 00007DD1 # 1-46-48 4E51 -> 0000502B # 1-46-49 4E52 -> 00005398 # 1-46-50 4E53 -> 00006797 # 1-46-51 4E54 -> 00006DCB # 1-46-52 4E55 -> 000071D0 # 1-46-53 4E56 -> 00007433 # 1-46-54 4E57 -> 000081E8 # 1-46-55 4E58 -> 00008F2A # 1-46-56 4E59 -> 000096A3 # 1-46-57 4E5A -> 00009C57 # 1-46-58 4E5B -> 00009E9F # 1-46-59 4E5C -> 00007460 # 1-46-60 4E5D -> 00005841 # 1-46-61 4E5E -> 00006D99 # 1-46-62 4E5F -> 00007D2F # 1-46-63 4E60 -> 0000985E # 1-46-64 4E61 -> 00004EE4 # 1-46-65 4E62 -> 00004F36 # 1-46-66 4E63 -> 00004F8B # 1-46-67 4E64 -> 000051B7 # 1-46-68 4E65 -> 000052B1 # 1-46-69 4E66 -> 00005DBA # 1-46-70 4E67 -> 0000601C # 1-46-71 4E68 -> 000073B2 # 1-46-72 4E69 -> 0000793C # 1-46-73 4E6A -> 000082D3 # 1-46-74 4E6B -> 00009234 # 1-46-75 4E6C -> 000096B7 # 1-46-76 4E6D -> 000096F6 # 1-46-77 4E6E -> 0000970A # 1-46-78 4E6F -> 00009E97 # 1-46-79 4E70 -> 00009F62 # 1-46-80 4E71 -> 000066A6 # 1-46-81 4E72 -> 00006B74 # 1-46-82 4E73 -> 00005217 # 1-46-83 4E74 -> 000052A3 # 1-46-84 4E75 -> 000070C8 # 1-46-85 4E76 -> 000088C2 # 1-46-86 4E77 -> 00005EC9 # 1-46-87 4E78 -> 0000604B # 1-46-88 4E79 -> 00006190 # 1-46-89 4E7A -> 00006F23 # 1-46-90 4E7B -> 00007149 # 1-46-91 4E7C -> 00007C3E # 1-46-92 4E7D -> 00007DF4 # 1-46-93 4E7E -> 0000806F # 1-46-94 4F21 -> 000084EE # 1-47-1 4F22 -> 00009023 # 1-47-2 4F23 -> 0000932C # 1-47-3 4F24 -> 00005442 # 1-47-4 4F25 -> 00009B6F # 1-47-5 4F26 -> 00006AD3 # 1-47-6 4F27 -> 00007089 # 1-47-7 4F28 -> 00008CC2 # 1-47-8 4F29 -> 00008DEF # 1-47-9 4F2A -> 00009732 # 1-47-10 4F2B -> 000052B4 # 1-47-11 4F2C -> 00005A41 # 1-47-12 4F2D -> 00005ECA # 1-47-13 4F2E -> 00005F04 # 1-47-14 4F2F -> 00006717 # 1-47-15 4F30 -> 0000697C # 1-47-16 4F31 -> 00006994 # 1-47-17 4F32 -> 00006D6A # 1-47-18 4F33 -> 00006F0F # 1-47-19 4F34 -> 00007262 # 1-47-20 4F35 -> 000072FC # 1-47-21 4F36 -> 00007BED # 1-47-22 4F37 -> 00008001 # 1-47-23 4F38 -> 0000807E # 1-47-24 4F39 -> 0000874B # 1-47-25 4F3A -> 000090CE # 1-47-26 4F3B -> 0000516D # 1-47-27 4F3C -> 00009E93 # 1-47-28 4F3D -> 00007984 # 1-47-29 4F3E -> 0000808B # 1-47-30 4F3F -> 00009332 # 1-47-31 4F40 -> 00008AD6 # 1-47-32 4F41 -> 0000502D # 1-47-33 4F42 -> 0000548C # 1-47-34 4F43 -> 00008A71 # 1-47-35 4F44 -> 00006B6A # 1-47-36 4F45 -> 00008CC4 # 1-47-37 4F46 -> 00008107 # 1-47-38 4F47 -> 000060D1 # 1-47-39 4F48 -> 000067A0 # 1-47-40 4F49 -> 00009DF2 # 1-47-41 4F4A -> 00004E99 # 1-47-42 4F4B -> 00004E98 # 1-47-43 4F4C -> 00009C10 # 1-47-44 4F4D -> 00008A6B # 1-47-45 4F4E -> 000085C1 # 1-47-46 4F4F -> 00008568 # 1-47-47 4F50 -> 00006900 # 1-47-48 4F51 -> 00006E7E # 1-47-49 4F52 -> 00007897 # 1-47-50 4F53 -> 00008155 # 1-47-51 4F55 -> 00005B41 # 1-47-53 4F56 -> 00005B56 # 1-47-54 4F57 -> 00005B7D # 1-47-55 4F58 -> 00005B93 # 1-47-56 4F59 -> 00005BD8 # 1-47-57 4F5A -> 00005BEC # 1-47-58 4F5B -> 00005C12 # 1-47-59 4F5C -> 00005C1E # 1-47-60 4F5D -> 00005C23 # 1-47-61 4F5E -> 00005C2B # 1-47-62 4F5F -> 0000378D # 1-47-63 4F60 -> 00005C62 # 1-47-64 4F61 -> 0000FA3B # 1-47-65 4F62 -> 0000FA3C # 1-47-66 4F63 -> 000216B4 # 1-47-67 4F64 -> 00005C7A # 1-47-68 4F65 -> 00005C8F # 1-47-69 4F66 -> 00005C9F # 1-47-70 4F67 -> 00005CA3 # 1-47-71 4F68 -> 00005CAA # 1-47-72 4F69 -> 00005CBA # 1-47-73 4F6A -> 00005CCB # 1-47-74 4F6B -> 00005CD0 # 1-47-75 4F6C -> 00005CD2 # 1-47-76 4F6D -> 00005CF4 # 1-47-77 4F6E -> 00021E34 # 1-47-78 4F6F -> 000037E2 # 1-47-79 4F70 -> 00005D0D # 1-47-80 4F71 -> 00005D27 # 1-47-81 4F72 -> 0000FA11 # 1-47-82 4F73 -> 00005D46 # 1-47-83 4F74 -> 00005D47 # 1-47-84 4F75 -> 00005D53 # 1-47-85 4F76 -> 00005D4A # 1-47-86 4F77 -> 00005D6D # 1-47-87 4F78 -> 00005D81 # 1-47-88 4F79 -> 00005DA0 # 1-47-89 4F7A -> 00005DA4 # 1-47-90 4F7B -> 00005DA7 # 1-47-91 4F7C -> 00005DB8 # 1-47-92 4F7D -> 00005DCB # 1-47-93 5021 -> 00005F0C # 1-48-1 5022 -> 00004E10 # 1-48-2 5023 -> 00004E15 # 1-48-3 5024 -> 00004E2A # 1-48-4 5025 -> 00004E31 # 1-48-5 5026 -> 00004E36 # 1-48-6 5027 -> 00004E3C # 1-48-7 5028 -> 00004E3F # 1-48-8 5029 -> 00004E42 # 1-48-9 502A -> 00004E56 # 1-48-10 502B -> 00004E58 # 1-48-11 502C -> 00004E82 # 1-48-12 502D -> 00004E85 # 1-48-13 502E -> 00008C6B # 1-48-14 502F -> 00004E8A # 1-48-15 5030 -> 00008212 # 1-48-16 5031 -> 00005F0D # 1-48-17 5032 -> 00004E8E # 1-48-18 5033 -> 00004E9E # 1-48-19 5034 -> 00004E9F # 1-48-20 5035 -> 00004EA0 # 1-48-21 5036 -> 00004EA2 # 1-48-22 5037 -> 00004EB0 # 1-48-23 5038 -> 00004EB3 # 1-48-24 5039 -> 00004EB6 # 1-48-25 503A -> 00004ECE # 1-48-26 503B -> 00004ECD # 1-48-27 503C -> 00004EC4 # 1-48-28 503D -> 00004EC6 # 1-48-29 503E -> 00004EC2 # 1-48-30 503F -> 00004ED7 # 1-48-31 5040 -> 00004EDE # 1-48-32 5041 -> 00004EED # 1-48-33 5042 -> 00004EDF # 1-48-34 5043 -> 00004EF7 # 1-48-35 5044 -> 00004F09 # 1-48-36 5045 -> 00004F5A # 1-48-37 5046 -> 00004F30 # 1-48-38 5047 -> 00004F5B # 1-48-39 5048 -> 00004F5D # 1-48-40 5049 -> 00004F57 # 1-48-41 504A -> 00004F47 # 1-48-42 504B -> 00004F76 # 1-48-43 504C -> 00004F88 # 1-48-44 504D -> 00004F8F # 1-48-45 504E -> 00004F98 # 1-48-46 504F -> 00004F7B # 1-48-47 5050 -> 00004F69 # 1-48-48 5051 -> 00004F70 # 1-48-49 5052 -> 00004F91 # 1-48-50 5053 -> 00004F6F # 1-48-51 5054 -> 00004F86 # 1-48-52 5055 -> 00004F96 # 1-48-53 5056 -> 00005118 # 1-48-54 5057 -> 00004FD4 # 1-48-55 5058 -> 00004FDF # 1-48-56 5059 -> 00004FCE # 1-48-57 505A -> 00004FD8 # 1-48-58 505B -> 00004FDB # 1-48-59 505C -> 00004FD1 # 1-48-60 505D -> 00004FDA # 1-48-61 505E -> 00004FD0 # 1-48-62 505F -> 00004FE4 # 1-48-63 5060 -> 00004FE5 # 1-48-64 5061 -> 0000501A # 1-48-65 5062 -> 00005028 # 1-48-66 5063 -> 00005014 # 1-48-67 5064 -> 0000502A # 1-48-68 5065 -> 00005025 # 1-48-69 5066 -> 00005005 # 1-48-70 5067 -> 00004F1C # 1-48-71 5068 -> 00004FF6 # 1-48-72 5069 -> 00005021 # 1-48-73 506A -> 00005029 # 1-48-74 506B -> 0000502C # 1-48-75 506C -> 00004FFE # 1-48-76 506D -> 00004FEF # 1-48-77 506E -> 00005011 # 1-48-78 506F -> 00005006 # 1-48-79 5070 -> 00005043 # 1-48-80 5071 -> 00005047 # 1-48-81 5072 -> 00006703 # 1-48-82 5073 -> 00005055 # 1-48-83 5074 -> 00005050 # 1-48-84 5075 -> 00005048 # 1-48-85 5076 -> 0000505A # 1-48-86 5077 -> 00005056 # 1-48-87 5078 -> 0000506C # 1-48-88 5079 -> 00005078 # 1-48-89 507A -> 00005080 # 1-48-90 507B -> 0000509A # 1-48-91 507C -> 00005085 # 1-48-92 507D -> 000050B4 # 1-48-93 507E -> 000050B2 # 1-48-94 5121 -> 000050C9 # 1-49-1 5122 -> 000050CA # 1-49-2 5123 -> 000050B3 # 1-49-3 5124 -> 000050C2 # 1-49-4 5125 -> 000050D6 # 1-49-5 5126 -> 000050DE # 1-49-6 5127 -> 000050E5 # 1-49-7 5128 -> 000050ED # 1-49-8 5129 -> 000050E3 # 1-49-9 512A -> 000050EE # 1-49-10 512B -> 000050F9 # 1-49-11 512C -> 000050F5 # 1-49-12 512D -> 00005109 # 1-49-13 512E -> 00005101 # 1-49-14 512F -> 00005102 # 1-49-15 5130 -> 00005116 # 1-49-16 5131 -> 00005115 # 1-49-17 5132 -> 00005114 # 1-49-18 5133 -> 0000511A # 1-49-19 5134 -> 00005121 # 1-49-20 5135 -> 0000513A # 1-49-21 5136 -> 00005137 # 1-49-22 5137 -> 0000513C # 1-49-23 5138 -> 0000513B # 1-49-24 5139 -> 0000513F # 1-49-25 513A -> 00005140 # 1-49-26 513B -> 00005152 # 1-49-27 513C -> 0000514C # 1-49-28 513D -> 00005154 # 1-49-29 513E -> 00005162 # 1-49-30 513F -> 00007AF8 # 1-49-31 5140 -> 00005169 # 1-49-32 5141 -> 0000516A # 1-49-33 5142 -> 0000516E # 1-49-34 5143 -> 00005180 # 1-49-35 5144 -> 00005182 # 1-49-36 5145 -> 000056D8 # 1-49-37 5146 -> 0000518C # 1-49-38 5147 -> 00005189 # 1-49-39 5148 -> 0000518F # 1-49-40 5149 -> 00005191 # 1-49-41 514A -> 00005193 # 1-49-42 514B -> 00005195 # 1-49-43 514C -> 00005196 # 1-49-44 514D -> 000051A4 # 1-49-45 514E -> 000051A6 # 1-49-46 514F -> 000051A2 # 1-49-47 5150 -> 000051A9 # 1-49-48 5151 -> 000051AA # 1-49-49 5152 -> 000051AB # 1-49-50 5153 -> 000051B3 # 1-49-51 5154 -> 000051B1 # 1-49-52 5155 -> 000051B2 # 1-49-53 5156 -> 000051B0 # 1-49-54 5157 -> 000051B5 # 1-49-55 5158 -> 000051BD # 1-49-56 5159 -> 000051C5 # 1-49-57 515A -> 000051C9 # 1-49-58 515B -> 000051DB # 1-49-59 515C -> 000051E0 # 1-49-60 515D -> 00008655 # 1-49-61 515E -> 000051E9 # 1-49-62 515F -> 000051ED # 1-49-63 5160 -> 000051F0 # 1-49-64 5161 -> 000051F5 # 1-49-65 5162 -> 000051FE # 1-49-66 5163 -> 00005204 # 1-49-67 5164 -> 0000520B # 1-49-68 5165 -> 00005214 # 1-49-69 5166 -> 0000520E # 1-49-70 5167 -> 00005227 # 1-49-71 5168 -> 0000522A # 1-49-72 5169 -> 0000522E # 1-49-73 516A -> 00005233 # 1-49-74 516B -> 00005239 # 1-49-75 516C -> 0000524F # 1-49-76 516D -> 00005244 # 1-49-77 516E -> 0000524B # 1-49-78 516F -> 0000524C # 1-49-79 5170 -> 0000525E # 1-49-80 5171 -> 00005254 # 1-49-81 5172 -> 0000526A # 1-49-82 5173 -> 00005274 # 1-49-83 5174 -> 00005269 # 1-49-84 5175 -> 00005273 # 1-49-85 5176 -> 0000527F # 1-49-86 5177 -> 0000527D # 1-49-87 5178 -> 0000528D # 1-49-88 5179 -> 00005294 # 1-49-89 517A -> 00005292 # 1-49-90 517B -> 00005271 # 1-49-91 517C -> 00005288 # 1-49-92 517D -> 00005291 # 1-49-93 517E -> 00008FA8 # 1-49-94 5221 -> 00008FA7 # 1-50-1 5222 -> 000052AC # 1-50-2 5223 -> 000052AD # 1-50-3 5224 -> 000052BC # 1-50-4 5225 -> 000052B5 # 1-50-5 5226 -> 000052C1 # 1-50-6 5227 -> 000052CD # 1-50-7 5228 -> 000052D7 # 1-50-8 5229 -> 000052DE # 1-50-9 522A -> 000052E3 # 1-50-10 522B -> 000052E6 # 1-50-11 522C -> 000098ED # 1-50-12 522D -> 000052E0 # 1-50-13 522E -> 000052F3 # 1-50-14 522F -> 000052F5 # 1-50-15 5230 -> 000052F8 # 1-50-16 5231 -> 000052F9 # 1-50-17 5232 -> 00005306 # 1-50-18 5233 -> 00005308 # 1-50-19 5234 -> 00007538 # 1-50-20 5235 -> 0000530D # 1-50-21 5236 -> 00005310 # 1-50-22 5237 -> 0000530F # 1-50-23 5238 -> 00005315 # 1-50-24 5239 -> 0000531A # 1-50-25 523A -> 00005323 # 1-50-26 523B -> 0000532F # 1-50-27 523C -> 00005331 # 1-50-28 523D -> 00005333 # 1-50-29 523E -> 00005338 # 1-50-30 523F -> 00005340 # 1-50-31 5240 -> 00005346 # 1-50-32 5241 -> 00005345 # 1-50-33 5242 -> 00004E17 # 1-50-34 5243 -> 00005349 # 1-50-35 5244 -> 0000534D # 1-50-36 5245 -> 000051D6 # 1-50-37 5246 -> 0000535E # 1-50-38 5247 -> 00005369 # 1-50-39 5248 -> 0000536E # 1-50-40 5249 -> 00005918 # 1-50-41 524A -> 0000537B # 1-50-42 524B -> 00005377 # 1-50-43 524C -> 00005382 # 1-50-44 524D -> 00005396 # 1-50-45 524E -> 000053A0 # 1-50-46 524F -> 000053A6 # 1-50-47 5250 -> 000053A5 # 1-50-48 5251 -> 000053AE # 1-50-49 5252 -> 000053B0 # 1-50-50 5253 -> 000053B6 # 1-50-51 5254 -> 000053C3 # 1-50-52 5255 -> 00007C12 # 1-50-53 5256 -> 000096D9 # 1-50-54 5257 -> 000053DF # 1-50-55 5258 -> 000066FC # 1-50-56 5259 -> 000071EE # 1-50-57 525A -> 000053EE # 1-50-58 525B -> 000053E8 # 1-50-59 525C -> 000053ED # 1-50-60 525D -> 000053FA # 1-50-61 525E -> 00005401 # 1-50-62 525F -> 0000543D # 1-50-63 5260 -> 00005440 # 1-50-64 5261 -> 0000542C # 1-50-65 5262 -> 0000542D # 1-50-66 5263 -> 0000543C # 1-50-67 5264 -> 0000542E # 1-50-68 5265 -> 00005436 # 1-50-69 5266 -> 00005429 # 1-50-70 5267 -> 0000541D # 1-50-71 5268 -> 0000544E # 1-50-72 5269 -> 0000548F # 1-50-73 526A -> 00005475 # 1-50-74 526B -> 0000548E # 1-50-75 526C -> 0000545F # 1-50-76 526D -> 00005471 # 1-50-77 526E -> 00005477 # 1-50-78 526F -> 00005470 # 1-50-79 5270 -> 00005492 # 1-50-80 5271 -> 0000547B # 1-50-81 5272 -> 00005480 # 1-50-82 5273 -> 00005476 # 1-50-83 5274 -> 00005484 # 1-50-84 5275 -> 00005490 # 1-50-85 5276 -> 00005486 # 1-50-86 5277 -> 000054C7 # 1-50-87 5278 -> 000054A2 # 1-50-88 5279 -> 000054B8 # 1-50-89 527A -> 000054A5 # 1-50-90 527B -> 000054AC # 1-50-91 527C -> 000054C4 # 1-50-92 527D -> 000054C8 # 1-50-93 527E -> 000054A8 # 1-50-94 5321 -> 000054AB # 1-51-1 5322 -> 000054C2 # 1-51-2 5323 -> 000054A4 # 1-51-3 5324 -> 000054BE # 1-51-4 5325 -> 000054BC # 1-51-5 5326 -> 000054D8 # 1-51-6 5327 -> 000054E5 # 1-51-7 5328 -> 000054E6 # 1-51-8 5329 -> 0000550F # 1-51-9 532A -> 00005514 # 1-51-10 532B -> 000054FD # 1-51-11 532C -> 000054EE # 1-51-12 532D -> 000054ED # 1-51-13 532E -> 000054FA # 1-51-14 532F -> 000054E2 # 1-51-15 5330 -> 00005539 # 1-51-16 5331 -> 00005540 # 1-51-17 5332 -> 00005563 # 1-51-18 5333 -> 0000554C # 1-51-19 5334 -> 0000552E # 1-51-20 5335 -> 0000555C # 1-51-21 5336 -> 00005545 # 1-51-22 5337 -> 00005556 # 1-51-23 5338 -> 00005557 # 1-51-24 5339 -> 00005538 # 1-51-25 533A -> 00005533 # 1-51-26 533B -> 0000555D # 1-51-27 533C -> 00005599 # 1-51-28 533D -> 00005580 # 1-51-29 533E -> 000054AF # 1-51-30 533F -> 0000558A # 1-51-31 5340 -> 0000559F # 1-51-32 5341 -> 0000557B # 1-51-33 5342 -> 0000557E # 1-51-34 5343 -> 00005598 # 1-51-35 5344 -> 0000559E # 1-51-36 5345 -> 000055AE # 1-51-37 5346 -> 0000557C # 1-51-38 5347 -> 00005583 # 1-51-39 5348 -> 000055A9 # 1-51-40 5349 -> 00005587 # 1-51-41 534A -> 000055A8 # 1-51-42 534B -> 000055DA # 1-51-43 534C -> 000055C5 # 1-51-44 534D -> 000055DF # 1-51-45 534E -> 000055C4 # 1-51-46 534F -> 000055DC # 1-51-47 5350 -> 000055E4 # 1-51-48 5351 -> 000055D4 # 1-51-49 5352 -> 00005614 # 1-51-50 5353 -> 000055F7 # 1-51-51 5354 -> 00005616 # 1-51-52 5355 -> 000055FE # 1-51-53 5356 -> 000055FD # 1-51-54 5357 -> 0000561B # 1-51-55 5358 -> 000055F9 # 1-51-56 5359 -> 0000564E # 1-51-57 535A -> 00005650 # 1-51-58 535B -> 000071DF # 1-51-59 535C -> 00005634 # 1-51-60 535D -> 00005636 # 1-51-61 535E -> 00005632 # 1-51-62 535F -> 00005638 # 1-51-63 5360 -> 0000566B # 1-51-64 5361 -> 00005664 # 1-51-65 5362 -> 0000562F # 1-51-66 5363 -> 0000566C # 1-51-67 5364 -> 0000566A # 1-51-68 5365 -> 00005686 # 1-51-69 5366 -> 00005680 # 1-51-70 5367 -> 0000568A # 1-51-71 5368 -> 000056A0 # 1-51-72 5369 -> 00005694 # 1-51-73 536A -> 0000568F # 1-51-74 536B -> 000056A5 # 1-51-75 536C -> 000056AE # 1-51-76 536D -> 000056B6 # 1-51-77 536E -> 000056B4 # 1-51-78 536F -> 000056C2 # 1-51-79 5370 -> 000056BC # 1-51-80 5371 -> 000056C1 # 1-51-81 5372 -> 000056C3 # 1-51-82 5373 -> 000056C0 # 1-51-83 5374 -> 000056C8 # 1-51-84 5375 -> 000056CE # 1-51-85 5376 -> 000056D1 # 1-51-86 5377 -> 000056D3 # 1-51-87 5378 -> 000056D7 # 1-51-88 5379 -> 000056EE # 1-51-89 537A -> 000056F9 # 1-51-90 537B -> 00005700 # 1-51-91 537C -> 000056FF # 1-51-92 537D -> 00005704 # 1-51-93 537E -> 00005709 # 1-51-94 5421 -> 00005708 # 1-52-1 5422 -> 0000570B # 1-52-2 5423 -> 0000570D # 1-52-3 5424 -> 00005713 # 1-52-4 5425 -> 00005718 # 1-52-5 5426 -> 00005716 # 1-52-6 5427 -> 000055C7 # 1-52-7 5428 -> 0000571C # 1-52-8 5429 -> 00005726 # 1-52-9 542A -> 00005737 # 1-52-10 542B -> 00005738 # 1-52-11 542C -> 0000574E # 1-52-12 542D -> 0000573B # 1-52-13 542E -> 00005740 # 1-52-14 542F -> 0000574F # 1-52-15 5430 -> 00005769 # 1-52-16 5431 -> 000057C0 # 1-52-17 5432 -> 00005788 # 1-52-18 5433 -> 00005761 # 1-52-19 5434 -> 0000577F # 1-52-20 5435 -> 00005789 # 1-52-21 5436 -> 00005793 # 1-52-22 5437 -> 000057A0 # 1-52-23 5438 -> 000057B3 # 1-52-24 5439 -> 000057A4 # 1-52-25 543A -> 000057AA # 1-52-26 543B -> 000057B0 # 1-52-27 543C -> 000057C3 # 1-52-28 543D -> 000057C6 # 1-52-29 543E -> 000057D4 # 1-52-30 543F -> 000057D2 # 1-52-31 5440 -> 000057D3 # 1-52-32 5441 -> 0000580A # 1-52-33 5442 -> 000057D6 # 1-52-34 5443 -> 000057E3 # 1-52-35 5444 -> 0000580B # 1-52-36 5445 -> 00005819 # 1-52-37 5446 -> 0000581D # 1-52-38 5447 -> 00005872 # 1-52-39 5448 -> 00005821 # 1-52-40 5449 -> 00005862 # 1-52-41 544A -> 0000584B # 1-52-42 544B -> 00005870 # 1-52-43 544C -> 00006BC0 # 1-52-44 544D -> 00005852 # 1-52-45 544E -> 0000583D # 1-52-46 544F -> 00005879 # 1-52-47 5450 -> 00005885 # 1-52-48 5451 -> 000058B9 # 1-52-49 5452 -> 0000589F # 1-52-50 5453 -> 000058AB # 1-52-51 5454 -> 000058BA # 1-52-52 5455 -> 000058DE # 1-52-53 5456 -> 000058BB # 1-52-54 5457 -> 000058B8 # 1-52-55 5458 -> 000058AE # 1-52-56 5459 -> 000058C5 # 1-52-57 545A -> 000058D3 # 1-52-58 545B -> 000058D1 # 1-52-59 545C -> 000058D7 # 1-52-60 545D -> 000058D9 # 1-52-61 545E -> 000058D8 # 1-52-62 545F -> 000058E5 # 1-52-63 5460 -> 000058DC # 1-52-64 5461 -> 000058E4 # 1-52-65 5462 -> 000058DF # 1-52-66 5463 -> 000058EF # 1-52-67 5464 -> 000058FA # 1-52-68 5465 -> 000058F9 # 1-52-69 5466 -> 000058FB # 1-52-70 5467 -> 000058FC # 1-52-71 5468 -> 000058FD # 1-52-72 5469 -> 00005902 # 1-52-73 546A -> 0000590A # 1-52-74 546B -> 00005910 # 1-52-75 546C -> 0000591B # 1-52-76 546D -> 000068A6 # 1-52-77 546E -> 00005925 # 1-52-78 546F -> 0000592C # 1-52-79 5470 -> 0000592D # 1-52-80 5471 -> 00005932 # 1-52-81 5472 -> 00005938 # 1-52-82 5473 -> 0000593E # 1-52-83 5474 -> 00007AD2 # 1-52-84 5475 -> 00005955 # 1-52-85 5476 -> 00005950 # 1-52-86 5477 -> 0000594E # 1-52-87 5478 -> 0000595A # 1-52-88 5479 -> 00005958 # 1-52-89 547A -> 00005962 # 1-52-90 547B -> 00005960 # 1-52-91 547C -> 00005967 # 1-52-92 547D -> 0000596C # 1-52-93 547E -> 00005969 # 1-52-94 5521 -> 00005978 # 1-53-1 5522 -> 00005981 # 1-53-2 5523 -> 0000599D # 1-53-3 5524 -> 00004F5E # 1-53-4 5525 -> 00004FAB # 1-53-5 5526 -> 000059A3 # 1-53-6 5527 -> 000059B2 # 1-53-7 5528 -> 000059C6 # 1-53-8 5529 -> 000059E8 # 1-53-9 552A -> 000059DC # 1-53-10 552B -> 0000598D # 1-53-11 552C -> 000059D9 # 1-53-12 552D -> 000059DA # 1-53-13 552E -> 00005A25 # 1-53-14 552F -> 00005A1F # 1-53-15 5530 -> 00005A11 # 1-53-16 5531 -> 00005A1C # 1-53-17 5532 -> 00005A09 # 1-53-18 5533 -> 00005A1A # 1-53-19 5534 -> 00005A40 # 1-53-20 5535 -> 00005A6C # 1-53-21 5536 -> 00005A49 # 1-53-22 5537 -> 00005A35 # 1-53-23 5538 -> 00005A36 # 1-53-24 5539 -> 00005A62 # 1-53-25 553A -> 00005A6A # 1-53-26 553B -> 00005A9A # 1-53-27 553C -> 00005ABC # 1-53-28 553D -> 00005ABE # 1-53-29 553E -> 00005ACB # 1-53-30 553F -> 00005AC2 # 1-53-31 5540 -> 00005ABD # 1-53-32 5541 -> 00005AE3 # 1-53-33 5542 -> 00005AD7 # 1-53-34 5543 -> 00005AE6 # 1-53-35 5544 -> 00005AE9 # 1-53-36 5545 -> 00005AD6 # 1-53-37 5546 -> 00005AFA # 1-53-38 5547 -> 00005AFB # 1-53-39 5548 -> 00005B0C # 1-53-40 5549 -> 00005B0B # 1-53-41 554A -> 00005B16 # 1-53-42 554B -> 00005B32 # 1-53-43 554C -> 00005AD0 # 1-53-44 554D -> 00005B2A # 1-53-45 554E -> 00005B36 # 1-53-46 554F -> 00005B3E # 1-53-47 5550 -> 00005B43 # 1-53-48 5551 -> 00005B45 # 1-53-49 5552 -> 00005B40 # 1-53-50 5553 -> 00005B51 # 1-53-51 5554 -> 00005B55 # 1-53-52 5555 -> 00005B5A # 1-53-53 5556 -> 00005B5B # 1-53-54 5557 -> 00005B65 # 1-53-55 5558 -> 00005B69 # 1-53-56 5559 -> 00005B70 # 1-53-57 555A -> 00005B73 # 1-53-58 555B -> 00005B75 # 1-53-59 555C -> 00005B78 # 1-53-60 555D -> 00006588 # 1-53-61 555E -> 00005B7A # 1-53-62 555F -> 00005B80 # 1-53-63 5560 -> 00005B83 # 1-53-64 5561 -> 00005BA6 # 1-53-65 5562 -> 00005BB8 # 1-53-66 5563 -> 00005BC3 # 1-53-67 5564 -> 00005BC7 # 1-53-68 5565 -> 00005BC9 # 1-53-69 5566 -> 00005BD4 # 1-53-70 5567 -> 00005BD0 # 1-53-71 5568 -> 00005BE4 # 1-53-72 5569 -> 00005BE6 # 1-53-73 556A -> 00005BE2 # 1-53-74 556B -> 00005BDE # 1-53-75 556C -> 00005BE5 # 1-53-76 556D -> 00005BEB # 1-53-77 556E -> 00005BF0 # 1-53-78 556F -> 00005BF6 # 1-53-79 5570 -> 00005BF3 # 1-53-80 5571 -> 00005C05 # 1-53-81 5572 -> 00005C07 # 1-53-82 5573 -> 00005C08 # 1-53-83 5574 -> 00005C0D # 1-53-84 5575 -> 00005C13 # 1-53-85 5576 -> 00005C20 # 1-53-86 5577 -> 00005C22 # 1-53-87 5578 -> 00005C28 # 1-53-88 5579 -> 00005C38 # 1-53-89 557A -> 00005C39 # 1-53-90 557B -> 00005C41 # 1-53-91 557C -> 00005C46 # 1-53-92 557D -> 00005C4E # 1-53-93 557E -> 00005C53 # 1-53-94 5621 -> 00005C50 # 1-54-1 5622 -> 00005C4F # 1-54-2 5623 -> 00005B71 # 1-54-3 5624 -> 00005C6C # 1-54-4 5625 -> 00005C6E # 1-54-5 5626 -> 00004E62 # 1-54-6 5627 -> 00005C76 # 1-54-7 5628 -> 00005C79 # 1-54-8 5629 -> 00005C8C # 1-54-9 562A -> 00005C91 # 1-54-10 562B -> 00005C94 # 1-54-11 562C -> 0000599B # 1-54-12 562D -> 00005CAB # 1-54-13 562E -> 00005CBB # 1-54-14 562F -> 00005CB6 # 1-54-15 5630 -> 00005CBC # 1-54-16 5631 -> 00005CB7 # 1-54-17 5632 -> 00005CC5 # 1-54-18 5633 -> 00005CBE # 1-54-19 5634 -> 00005CC7 # 1-54-20 5635 -> 00005CD9 # 1-54-21 5636 -> 00005CE9 # 1-54-22 5637 -> 00005CFD # 1-54-23 5638 -> 00005CFA # 1-54-24 5639 -> 00005CED # 1-54-25 563A -> 00005D8C # 1-54-26 563B -> 00005CEA # 1-54-27 563C -> 00005D0B # 1-54-28 563D -> 00005D15 # 1-54-29 563E -> 00005D17 # 1-54-30 563F -> 00005D5C # 1-54-31 5640 -> 00005D1F # 1-54-32 5641 -> 00005D1B # 1-54-33 5642 -> 00005D11 # 1-54-34 5643 -> 00005D14 # 1-54-35 5644 -> 00005D22 # 1-54-36 5645 -> 00005D1A # 1-54-37 5646 -> 00005D19 # 1-54-38 5647 -> 00005D18 # 1-54-39 5648 -> 00005D4C # 1-54-40 5649 -> 00005D52 # 1-54-41 564A -> 00005D4E # 1-54-42 564B -> 00005D4B # 1-54-43 564C -> 00005D6C # 1-54-44 564D -> 00005D73 # 1-54-45 564E -> 00005D76 # 1-54-46 564F -> 00005D87 # 1-54-47 5650 -> 00005D84 # 1-54-48 5651 -> 00005D82 # 1-54-49 5652 -> 00005DA2 # 1-54-50 5653 -> 00005D9D # 1-54-51 5654 -> 00005DAC # 1-54-52 5655 -> 00005DAE # 1-54-53 5656 -> 00005DBD # 1-54-54 5657 -> 00005D90 # 1-54-55 5658 -> 00005DB7 # 1-54-56 5659 -> 00005DBC # 1-54-57 565A -> 00005DC9 # 1-54-58 565B -> 00005DCD # 1-54-59 565C -> 00005DD3 # 1-54-60 565D -> 00005DD2 # 1-54-61 565E -> 00005DD6 # 1-54-62 565F -> 00005DDB # 1-54-63 5660 -> 00005DEB # 1-54-64 5661 -> 00005DF2 # 1-54-65 5662 -> 00005DF5 # 1-54-66 5663 -> 00005E0B # 1-54-67 5664 -> 00005E1A # 1-54-68 5665 -> 00005E19 # 1-54-69 5666 -> 00005E11 # 1-54-70 5667 -> 00005E1B # 1-54-71 5668 -> 00005E36 # 1-54-72 5669 -> 00005E37 # 1-54-73 566A -> 00005E44 # 1-54-74 566B -> 00005E43 # 1-54-75 566C -> 00005E40 # 1-54-76 566D -> 00005E4E # 1-54-77 566E -> 00005E57 # 1-54-78 566F -> 00005E54 # 1-54-79 5670 -> 00005E5F # 1-54-80 5671 -> 00005E62 # 1-54-81 5672 -> 00005E64 # 1-54-82 5673 -> 00005E47 # 1-54-83 5674 -> 00005E75 # 1-54-84 5675 -> 00005E76 # 1-54-85 5676 -> 00005E7A # 1-54-86 5677 -> 00009EBC # 1-54-87 5678 -> 00005E7F # 1-54-88 5679 -> 00005EA0 # 1-54-89 567A -> 00005EC1 # 1-54-90 567B -> 00005EC2 # 1-54-91 567C -> 00005EC8 # 1-54-92 567D -> 00005ED0 # 1-54-93 567E -> 00005ECF # 1-54-94 5721 -> 00005ED6 # 1-55-1 5722 -> 00005EE3 # 1-55-2 5723 -> 00005EDD # 1-55-3 5724 -> 00005EDA # 1-55-4 5725 -> 00005EDB # 1-55-5 5726 -> 00005EE2 # 1-55-6 5727 -> 00005EE1 # 1-55-7 5728 -> 00005EE8 # 1-55-8 5729 -> 00005EE9 # 1-55-9 572A -> 00005EEC # 1-55-10 572B -> 00005EF1 # 1-55-11 572C -> 00005EF3 # 1-55-12 572D -> 00005EF0 # 1-55-13 572E -> 00005EF4 # 1-55-14 572F -> 00005EF8 # 1-55-15 5730 -> 00005EFE # 1-55-16 5731 -> 00005F03 # 1-55-17 5732 -> 00005F09 # 1-55-18 5733 -> 00005F5D # 1-55-19 5734 -> 00005F5C # 1-55-20 5735 -> 00005F0B # 1-55-21 5736 -> 00005F11 # 1-55-22 5737 -> 00005F16 # 1-55-23 5738 -> 00005F29 # 1-55-24 5739 -> 00005F2D # 1-55-25 573A -> 00005F38 # 1-55-26 573B -> 00005F41 # 1-55-27 573C -> 00005F48 # 1-55-28 573D -> 00005F4C # 1-55-29 573E -> 00005F4E # 1-55-30 573F -> 00005F2F # 1-55-31 5740 -> 00005F51 # 1-55-32 5741 -> 00005F56 # 1-55-33 5742 -> 00005F57 # 1-55-34 5743 -> 00005F59 # 1-55-35 5744 -> 00005F61 # 1-55-36 5745 -> 00005F6D # 1-55-37 5746 -> 00005F73 # 1-55-38 5747 -> 00005F77 # 1-55-39 5748 -> 00005F83 # 1-55-40 5749 -> 00005F82 # 1-55-41 574A -> 00005F7F # 1-55-42 574B -> 00005F8A # 1-55-43 574C -> 00005F88 # 1-55-44 574D -> 00005F91 # 1-55-45 574E -> 00005F87 # 1-55-46 574F -> 00005F9E # 1-55-47 5750 -> 00005F99 # 1-55-48 5751 -> 00005F98 # 1-55-49 5752 -> 00005FA0 # 1-55-50 5753 -> 00005FA8 # 1-55-51 5754 -> 00005FAD # 1-55-52 5755 -> 00005FBC # 1-55-53 5756 -> 00005FD6 # 1-55-54 5757 -> 00005FFB # 1-55-55 5758 -> 00005FE4 # 1-55-56 5759 -> 00005FF8 # 1-55-57 575A -> 00005FF1 # 1-55-58 575B -> 00005FDD # 1-55-59 575C -> 000060B3 # 1-55-60 575D -> 00005FFF # 1-55-61 575E -> 00006021 # 1-55-62 575F -> 00006060 # 1-55-63 5760 -> 00006019 # 1-55-64 5761 -> 00006010 # 1-55-65 5762 -> 00006029 # 1-55-66 5763 -> 0000600E # 1-55-67 5764 -> 00006031 # 1-55-68 5765 -> 0000601B # 1-55-69 5766 -> 00006015 # 1-55-70 5767 -> 0000602B # 1-55-71 5768 -> 00006026 # 1-55-72 5769 -> 0000600F # 1-55-73 576A -> 0000603A # 1-55-74 576B -> 0000605A # 1-55-75 576C -> 00006041 # 1-55-76 576D -> 0000606A # 1-55-77 576E -> 00006077 # 1-55-78 576F -> 0000605F # 1-55-79 5770 -> 0000604A # 1-55-80 5771 -> 00006046 # 1-55-81 5772 -> 0000604D # 1-55-82 5773 -> 00006063 # 1-55-83 5774 -> 00006043 # 1-55-84 5775 -> 00006064 # 1-55-85 5776 -> 00006042 # 1-55-86 5777 -> 0000606C # 1-55-87 5778 -> 0000606B # 1-55-88 5779 -> 00006059 # 1-55-89 577A -> 00006081 # 1-55-90 577B -> 0000608D # 1-55-91 577C -> 000060E7 # 1-55-92 577D -> 00006083 # 1-55-93 577E -> 0000609A # 1-55-94 5821 -> 00006084 # 1-56-1 5822 -> 0000609B # 1-56-2 5823 -> 00006096 # 1-56-3 5824 -> 00006097 # 1-56-4 5825 -> 00006092 # 1-56-5 5826 -> 000060A7 # 1-56-6 5827 -> 0000608B # 1-56-7 5828 -> 000060E1 # 1-56-8 5829 -> 000060B8 # 1-56-9 582A -> 000060E0 # 1-56-10 582B -> 000060D3 # 1-56-11 582C -> 000060B4 # 1-56-12 582D -> 00005FF0 # 1-56-13 582E -> 000060BD # 1-56-14 582F -> 000060C6 # 1-56-15 5830 -> 000060B5 # 1-56-16 5831 -> 000060D8 # 1-56-17 5832 -> 0000614D # 1-56-18 5833 -> 00006115 # 1-56-19 5834 -> 00006106 # 1-56-20 5835 -> 000060F6 # 1-56-21 5836 -> 000060F7 # 1-56-22 5837 -> 00006100 # 1-56-23 5838 -> 000060F4 # 1-56-24 5839 -> 000060FA # 1-56-25 583A -> 00006103 # 1-56-26 583B -> 00006121 # 1-56-27 583C -> 000060FB # 1-56-28 583D -> 000060F1 # 1-56-29 583E -> 0000610D # 1-56-30 583F -> 0000610E # 1-56-31 5840 -> 00006147 # 1-56-32 5841 -> 0000613E # 1-56-33 5842 -> 00006128 # 1-56-34 5843 -> 00006127 # 1-56-35 5844 -> 0000614A # 1-56-36 5845 -> 0000613F # 1-56-37 5846 -> 0000613C # 1-56-38 5847 -> 0000612C # 1-56-39 5848 -> 00006134 # 1-56-40 5849 -> 0000613D # 1-56-41 584A -> 00006142 # 1-56-42 584B -> 00006144 # 1-56-43 584C -> 00006173 # 1-56-44 584D -> 00006177 # 1-56-45 584E -> 00006158 # 1-56-46 584F -> 00006159 # 1-56-47 5850 -> 0000615A # 1-56-48 5851 -> 0000616B # 1-56-49 5852 -> 00006174 # 1-56-50 5853 -> 0000616F # 1-56-51 5854 -> 00006165 # 1-56-52 5855 -> 00006171 # 1-56-53 5856 -> 0000615F # 1-56-54 5857 -> 0000615D # 1-56-55 5858 -> 00006153 # 1-56-56 5859 -> 00006175 # 1-56-57 585A -> 00006199 # 1-56-58 585B -> 00006196 # 1-56-59 585C -> 00006187 # 1-56-60 585D -> 000061AC # 1-56-61 585E -> 00006194 # 1-56-62 585F -> 0000619A # 1-56-63 5860 -> 0000618A # 1-56-64 5861 -> 00006191 # 1-56-65 5862 -> 000061AB # 1-56-66 5863 -> 000061AE # 1-56-67 5864 -> 000061CC # 1-56-68 5865 -> 000061CA # 1-56-69 5866 -> 000061C9 # 1-56-70 5867 -> 000061F7 # 1-56-71 5868 -> 000061C8 # 1-56-72 5869 -> 000061C3 # 1-56-73 586A -> 000061C6 # 1-56-74 586B -> 000061BA # 1-56-75 586C -> 000061CB # 1-56-76 586D -> 00007F79 # 1-56-77 586E -> 000061CD # 1-56-78 586F -> 000061E6 # 1-56-79 5870 -> 000061E3 # 1-56-80 5871 -> 000061F6 # 1-56-81 5872 -> 000061FA # 1-56-82 5873 -> 000061F4 # 1-56-83 5874 -> 000061FF # 1-56-84 5875 -> 000061FD # 1-56-85 5876 -> 000061FC # 1-56-86 5877 -> 000061FE # 1-56-87 5878 -> 00006200 # 1-56-88 5879 -> 00006208 # 1-56-89 587A -> 00006209 # 1-56-90 587B -> 0000620D # 1-56-91 587C -> 0000620C # 1-56-92 587D -> 00006214 # 1-56-93 587E -> 0000621B # 1-56-94 5921 -> 0000621E # 1-57-1 5922 -> 00006221 # 1-57-2 5923 -> 0000622A # 1-57-3 5924 -> 0000622E # 1-57-4 5925 -> 00006230 # 1-57-5 5926 -> 00006232 # 1-57-6 5927 -> 00006233 # 1-57-7 5928 -> 00006241 # 1-57-8 5929 -> 0000624E # 1-57-9 592A -> 0000625E # 1-57-10 592B -> 00006263 # 1-57-11 592C -> 0000625B # 1-57-12 592D -> 00006260 # 1-57-13 592E -> 00006268 # 1-57-14 592F -> 0000627C # 1-57-15 5930 -> 00006282 # 1-57-16 5931 -> 00006289 # 1-57-17 5932 -> 0000627E # 1-57-18 5933 -> 00006292 # 1-57-19 5934 -> 00006293 # 1-57-20 5935 -> 00006296 # 1-57-21 5936 -> 000062D4 # 1-57-22 5937 -> 00006283 # 1-57-23 5938 -> 00006294 # 1-57-24 5939 -> 000062D7 # 1-57-25 593A -> 000062D1 # 1-57-26 593B -> 000062BB # 1-57-27 593C -> 000062CF # 1-57-28 593D -> 000062FF # 1-57-29 593E -> 000062C6 # 1-57-30 593F -> 000064D4 # 1-57-31 5940 -> 000062C8 # 1-57-32 5941 -> 000062DC # 1-57-33 5942 -> 000062CC # 1-57-34 5943 -> 000062CA # 1-57-35 5944 -> 000062C2 # 1-57-36 5945 -> 000062C7 # 1-57-37 5946 -> 0000629B # 1-57-38 5947 -> 000062C9 # 1-57-39 5948 -> 0000630C # 1-57-40 5949 -> 000062EE # 1-57-41 594A -> 000062F1 # 1-57-42 594B -> 00006327 # 1-57-43 594C -> 00006302 # 1-57-44 594D -> 00006308 # 1-57-45 594E -> 000062EF # 1-57-46 594F -> 000062F5 # 1-57-47 5950 -> 00006350 # 1-57-48 5951 -> 0000633E # 1-57-49 5952 -> 0000634D # 1-57-50 5953 -> 0000641C # 1-57-51 5954 -> 0000634F # 1-57-52 5955 -> 00006396 # 1-57-53 5956 -> 0000638E # 1-57-54 5957 -> 00006380 # 1-57-55 5958 -> 000063AB # 1-57-56 5959 -> 00006376 # 1-57-57 595A -> 000063A3 # 1-57-58 595B -> 0000638F # 1-57-59 595C -> 00006389 # 1-57-60 595D -> 0000639F # 1-57-61 595E -> 000063B5 # 1-57-62 595F -> 0000636B # 1-57-63 5960 -> 00006369 # 1-57-64 5961 -> 000063BE # 1-57-65 5962 -> 000063E9 # 1-57-66 5963 -> 000063C0 # 1-57-67 5964 -> 000063C6 # 1-57-68 5965 -> 000063E3 # 1-57-69 5966 -> 000063C9 # 1-57-70 5967 -> 000063D2 # 1-57-71 5968 -> 000063F6 # 1-57-72 5969 -> 000063C4 # 1-57-73 596A -> 00006416 # 1-57-74 596B -> 00006434 # 1-57-75 596C -> 00006406 # 1-57-76 596D -> 00006413 # 1-57-77 596E -> 00006426 # 1-57-78 596F -> 00006436 # 1-57-79 5970 -> 0000651D # 1-57-80 5971 -> 00006417 # 1-57-81 5972 -> 00006428 # 1-57-82 5973 -> 0000640F # 1-57-83 5974 -> 00006467 # 1-57-84 5975 -> 0000646F # 1-57-85 5976 -> 00006476 # 1-57-86 5977 -> 0000644E # 1-57-87 5978 -> 0000652A # 1-57-88 5979 -> 00006495 # 1-57-89 597A -> 00006493 # 1-57-90 597B -> 000064A5 # 1-57-91 597C -> 000064A9 # 1-57-92 597D -> 00006488 # 1-57-93 597E -> 000064BC # 1-57-94 5A21 -> 000064DA # 1-58-1 5A22 -> 000064D2 # 1-58-2 5A23 -> 000064C5 # 1-58-3 5A24 -> 000064C7 # 1-58-4 5A25 -> 000064BB # 1-58-5 5A26 -> 000064D8 # 1-58-6 5A27 -> 000064C2 # 1-58-7 5A28 -> 000064F1 # 1-58-8 5A29 -> 000064E7 # 1-58-9 5A2A -> 00008209 # 1-58-10 5A2B -> 000064E0 # 1-58-11 5A2C -> 000064E1 # 1-58-12 5A2D -> 000062AC # 1-58-13 5A2E -> 000064E3 # 1-58-14 5A2F -> 000064EF # 1-58-15 5A30 -> 0000652C # 1-58-16 5A31 -> 000064F6 # 1-58-17 5A32 -> 000064F4 # 1-58-18 5A33 -> 000064F2 # 1-58-19 5A34 -> 000064FA # 1-58-20 5A35 -> 00006500 # 1-58-21 5A36 -> 000064FD # 1-58-22 5A37 -> 00006518 # 1-58-23 5A38 -> 0000651C # 1-58-24 5A39 -> 00006505 # 1-58-25 5A3A -> 00006524 # 1-58-26 5A3B -> 00006523 # 1-58-27 5A3C -> 0000652B # 1-58-28 5A3D -> 00006534 # 1-58-29 5A3E -> 00006535 # 1-58-30 5A3F -> 00006537 # 1-58-31 5A40 -> 00006536 # 1-58-32 5A41 -> 00006538 # 1-58-33 5A42 -> 0000754B # 1-58-34 5A43 -> 00006548 # 1-58-35 5A44 -> 00006556 # 1-58-36 5A45 -> 00006555 # 1-58-37 5A46 -> 0000654D # 1-58-38 5A47 -> 00006558 # 1-58-39 5A48 -> 0000655E # 1-58-40 5A49 -> 0000655D # 1-58-41 5A4A -> 00006572 # 1-58-42 5A4B -> 00006578 # 1-58-43 5A4C -> 00006582 # 1-58-44 5A4D -> 00006583 # 1-58-45 5A4E -> 00008B8A # 1-58-46 5A4F -> 0000659B # 1-58-47 5A50 -> 0000659F # 1-58-48 5A51 -> 000065AB # 1-58-49 5A52 -> 000065B7 # 1-58-50 5A53 -> 000065C3 # 1-58-51 5A54 -> 000065C6 # 1-58-52 5A55 -> 000065C1 # 1-58-53 5A56 -> 000065C4 # 1-58-54 5A57 -> 000065CC # 1-58-55 5A58 -> 000065D2 # 1-58-56 5A59 -> 000065DB # 1-58-57 5A5A -> 000065D9 # 1-58-58 5A5B -> 000065E0 # 1-58-59 5A5C -> 000065E1 # 1-58-60 5A5D -> 000065F1 # 1-58-61 5A5E -> 00006772 # 1-58-62 5A5F -> 0000660A # 1-58-63 5A60 -> 00006603 # 1-58-64 5A61 -> 000065FB # 1-58-65 5A62 -> 00006773 # 1-58-66 5A63 -> 00006635 # 1-58-67 5A64 -> 00006636 # 1-58-68 5A65 -> 00006634 # 1-58-69 5A66 -> 0000661C # 1-58-70 5A67 -> 0000664F # 1-58-71 5A68 -> 00006644 # 1-58-72 5A69 -> 00006649 # 1-58-73 5A6A -> 00006641 # 1-58-74 5A6B -> 0000665E # 1-58-75 5A6C -> 0000665D # 1-58-76 5A6D -> 00006664 # 1-58-77 5A6E -> 00006667 # 1-58-78 5A6F -> 00006668 # 1-58-79 5A70 -> 0000665F # 1-58-80 5A71 -> 00006662 # 1-58-81 5A72 -> 00006670 # 1-58-82 5A73 -> 00006683 # 1-58-83 5A74 -> 00006688 # 1-58-84 5A75 -> 0000668E # 1-58-85 5A76 -> 00006689 # 1-58-86 5A77 -> 00006684 # 1-58-87 5A78 -> 00006698 # 1-58-88 5A79 -> 0000669D # 1-58-89 5A7A -> 000066C1 # 1-58-90 5A7B -> 000066B9 # 1-58-91 5A7C -> 000066C9 # 1-58-92 5A7D -> 000066BE # 1-58-93 5A7E -> 000066BC # 1-58-94 5B21 -> 000066C4 # 1-59-1 5B22 -> 000066B8 # 1-59-2 5B23 -> 000066D6 # 1-59-3 5B24 -> 000066DA # 1-59-4 5B25 -> 000066E0 # 1-59-5 5B26 -> 0000663F # 1-59-6 5B27 -> 000066E6 # 1-59-7 5B28 -> 000066E9 # 1-59-8 5B29 -> 000066F0 # 1-59-9 5B2A -> 000066F5 # 1-59-10 5B2B -> 000066F7 # 1-59-11 5B2C -> 0000670F # 1-59-12 5B2D -> 00006716 # 1-59-13 5B2E -> 0000671E # 1-59-14 5B2F -> 00006726 # 1-59-15 5B30 -> 00006727 # 1-59-16 5B31 -> 00009738 # 1-59-17 5B32 -> 0000672E # 1-59-18 5B33 -> 0000673F # 1-59-19 5B34 -> 00006736 # 1-59-20 5B35 -> 00006741 # 1-59-21 5B36 -> 00006738 # 1-59-22 5B37 -> 00006737 # 1-59-23 5B38 -> 00006746 # 1-59-24 5B39 -> 0000675E # 1-59-25 5B3A -> 00006760 # 1-59-26 5B3B -> 00006759 # 1-59-27 5B3C -> 00006763 # 1-59-28 5B3D -> 00006764 # 1-59-29 5B3E -> 00006789 # 1-59-30 5B3F -> 00006770 # 1-59-31 5B40 -> 000067A9 # 1-59-32 5B41 -> 0000677C # 1-59-33 5B42 -> 0000676A # 1-59-34 5B43 -> 0000678C # 1-59-35 5B44 -> 0000678B # 1-59-36 5B45 -> 000067A6 # 1-59-37 5B46 -> 000067A1 # 1-59-38 5B47 -> 00006785 # 1-59-39 5B48 -> 000067B7 # 1-59-40 5B49 -> 000067EF # 1-59-41 5B4A -> 000067B4 # 1-59-42 5B4B -> 000067EC # 1-59-43 5B4C -> 000067B3 # 1-59-44 5B4D -> 000067E9 # 1-59-45 5B4E -> 000067B8 # 1-59-46 5B4F -> 000067E4 # 1-59-47 5B50 -> 000067DE # 1-59-48 5B51 -> 000067DD # 1-59-49 5B52 -> 000067E2 # 1-59-50 5B53 -> 000067EE # 1-59-51 5B54 -> 000067B9 # 1-59-52 5B55 -> 000067CE # 1-59-53 5B56 -> 000067C6 # 1-59-54 5B57 -> 000067E7 # 1-59-55 5B58 -> 00006A9C # 1-59-56 5B59 -> 0000681E # 1-59-57 5B5A -> 00006846 # 1-59-58 5B5B -> 00006829 # 1-59-59 5B5C -> 00006840 # 1-59-60 5B5D -> 0000684D # 1-59-61 5B5E -> 00006832 # 1-59-62 5B5F -> 0000684E # 1-59-63 5B60 -> 000068B3 # 1-59-64 5B61 -> 0000682B # 1-59-65 5B62 -> 00006859 # 1-59-66 5B63 -> 00006863 # 1-59-67 5B64 -> 00006877 # 1-59-68 5B65 -> 0000687F # 1-59-69 5B66 -> 0000689F # 1-59-70 5B67 -> 0000688F # 1-59-71 5B68 -> 000068AD # 1-59-72 5B69 -> 00006894 # 1-59-73 5B6A -> 0000689D # 1-59-74 5B6B -> 0000689B # 1-59-75 5B6C -> 00006883 # 1-59-76 5B6D -> 00006AAE # 1-59-77 5B6E -> 000068B9 # 1-59-78 5B6F -> 00006874 # 1-59-79 5B70 -> 000068B5 # 1-59-80 5B71 -> 000068A0 # 1-59-81 5B72 -> 000068BA # 1-59-82 5B73 -> 0000690F # 1-59-83 5B74 -> 0000688D # 1-59-84 5B75 -> 0000687E # 1-59-85 5B76 -> 00006901 # 1-59-86 5B77 -> 000068CA # 1-59-87 5B78 -> 00006908 # 1-59-88 5B79 -> 000068D8 # 1-59-89 5B7A -> 00006922 # 1-59-90 5B7B -> 00006926 # 1-59-91 5B7C -> 000068E1 # 1-59-92 5B7D -> 0000690C # 1-59-93 5B7E -> 000068CD # 1-59-94 5C21 -> 000068D4 # 1-60-1 5C22 -> 000068E7 # 1-60-2 5C23 -> 000068D5 # 1-60-3 5C24 -> 00006936 # 1-60-4 5C25 -> 00006912 # 1-60-5 5C26 -> 00006904 # 1-60-6 5C27 -> 000068D7 # 1-60-7 5C28 -> 000068E3 # 1-60-8 5C29 -> 00006925 # 1-60-9 5C2A -> 000068F9 # 1-60-10 5C2B -> 000068E0 # 1-60-11 5C2C -> 000068EF # 1-60-12 5C2D -> 00006928 # 1-60-13 5C2E -> 0000692A # 1-60-14 5C2F -> 0000691A # 1-60-15 5C30 -> 00006923 # 1-60-16 5C31 -> 00006921 # 1-60-17 5C32 -> 000068C6 # 1-60-18 5C33 -> 00006979 # 1-60-19 5C34 -> 00006977 # 1-60-20 5C35 -> 0000695C # 1-60-21 5C36 -> 00006978 # 1-60-22 5C37 -> 0000696B # 1-60-23 5C38 -> 00006954 # 1-60-24 5C39 -> 0000697E # 1-60-25 5C3A -> 0000696E # 1-60-26 5C3B -> 00006939 # 1-60-27 5C3C -> 00006974 # 1-60-28 5C3D -> 0000693D # 1-60-29 5C3E -> 00006959 # 1-60-30 5C3F -> 00006930 # 1-60-31 5C40 -> 00006961 # 1-60-32 5C41 -> 0000695E # 1-60-33 5C42 -> 0000695D # 1-60-34 5C43 -> 00006981 # 1-60-35 5C44 -> 0000696A # 1-60-36 5C45 -> 000069B2 # 1-60-37 5C46 -> 000069AE # 1-60-38 5C47 -> 000069D0 # 1-60-39 5C48 -> 000069BF # 1-60-40 5C49 -> 000069C1 # 1-60-41 5C4A -> 000069D3 # 1-60-42 5C4B -> 000069BE # 1-60-43 5C4C -> 000069CE # 1-60-44 5C4D -> 00005BE8 # 1-60-45 5C4E -> 000069CA # 1-60-46 5C4F -> 000069DD # 1-60-47 5C50 -> 000069BB # 1-60-48 5C51 -> 000069C3 # 1-60-49 5C52 -> 000069A7 # 1-60-50 5C53 -> 00006A2E # 1-60-51 5C54 -> 00006991 # 1-60-52 5C55 -> 000069A0 # 1-60-53 5C56 -> 0000699C # 1-60-54 5C57 -> 00006995 # 1-60-55 5C58 -> 000069B4 # 1-60-56 5C59 -> 000069DE # 1-60-57 5C5A -> 000069E8 # 1-60-58 5C5B -> 00006A02 # 1-60-59 5C5C -> 00006A1B # 1-60-60 5C5D -> 000069FF # 1-60-61 5C5E -> 00006B0A # 1-60-62 5C5F -> 000069F9 # 1-60-63 5C60 -> 000069F2 # 1-60-64 5C61 -> 000069E7 # 1-60-65 5C62 -> 00006A05 # 1-60-66 5C63 -> 000069B1 # 1-60-67 5C64 -> 00006A1E # 1-60-68 5C65 -> 000069ED # 1-60-69 5C66 -> 00006A14 # 1-60-70 5C67 -> 000069EB # 1-60-71 5C68 -> 00006A0A # 1-60-72 5C69 -> 00006A12 # 1-60-73 5C6A -> 00006AC1 # 1-60-74 5C6B -> 00006A23 # 1-60-75 5C6C -> 00006A13 # 1-60-76 5C6D -> 00006A44 # 1-60-77 5C6E -> 00006A0C # 1-60-78 5C6F -> 00006A72 # 1-60-79 5C70 -> 00006A36 # 1-60-80 5C71 -> 00006A78 # 1-60-81 5C72 -> 00006A47 # 1-60-82 5C73 -> 00006A62 # 1-60-83 5C74 -> 00006A59 # 1-60-84 5C75 -> 00006A66 # 1-60-85 5C76 -> 00006A48 # 1-60-86 5C77 -> 00006A38 # 1-60-87 5C78 -> 00006A22 # 1-60-88 5C79 -> 00006A90 # 1-60-89 5C7A -> 00006A8D # 1-60-90 5C7B -> 00006AA0 # 1-60-91 5C7C -> 00006A84 # 1-60-92 5C7D -> 00006AA2 # 1-60-93 5C7E -> 00006AA3 # 1-60-94 5D21 -> 00006A97 # 1-61-1 5D22 -> 00008617 # 1-61-2 5D23 -> 00006ABB # 1-61-3 5D24 -> 00006AC3 # 1-61-4 5D25 -> 00006AC2 # 1-61-5 5D26 -> 00006AB8 # 1-61-6 5D27 -> 00006AB3 # 1-61-7 5D28 -> 00006AAC # 1-61-8 5D29 -> 00006ADE # 1-61-9 5D2A -> 00006AD1 # 1-61-10 5D2B -> 00006ADF # 1-61-11 5D2C -> 00006AAA # 1-61-12 5D2D -> 00006ADA # 1-61-13 5D2E -> 00006AEA # 1-61-14 5D2F -> 00006AFB # 1-61-15 5D30 -> 00006B05 # 1-61-16 5D31 -> 00008616 # 1-61-17 5D32 -> 00006AFA # 1-61-18 5D33 -> 00006B12 # 1-61-19 5D34 -> 00006B16 # 1-61-20 5D35 -> 00009B31 # 1-61-21 5D36 -> 00006B1F # 1-61-22 5D37 -> 00006B38 # 1-61-23 5D38 -> 00006B37 # 1-61-24 5D39 -> 000076DC # 1-61-25 5D3A -> 00006B39 # 1-61-26 5D3B -> 000098EE # 1-61-27 5D3C -> 00006B47 # 1-61-28 5D3D -> 00006B43 # 1-61-29 5D3E -> 00006B49 # 1-61-30 5D3F -> 00006B50 # 1-61-31 5D40 -> 00006B59 # 1-61-32 5D41 -> 00006B54 # 1-61-33 5D42 -> 00006B5B # 1-61-34 5D43 -> 00006B5F # 1-61-35 5D44 -> 00006B61 # 1-61-36 5D45 -> 00006B78 # 1-61-37 5D46 -> 00006B79 # 1-61-38 5D47 -> 00006B7F # 1-61-39 5D48 -> 00006B80 # 1-61-40 5D49 -> 00006B84 # 1-61-41 5D4A -> 00006B83 # 1-61-42 5D4B -> 00006B8D # 1-61-43 5D4C -> 00006B98 # 1-61-44 5D4D -> 00006B95 # 1-61-45 5D4E -> 00006B9E # 1-61-46 5D4F -> 00006BA4 # 1-61-47 5D50 -> 00006BAA # 1-61-48 5D51 -> 00006BAB # 1-61-49 5D52 -> 00006BAF # 1-61-50 5D53 -> 00006BB2 # 1-61-51 5D54 -> 00006BB1 # 1-61-52 5D55 -> 00006BB3 # 1-61-53 5D56 -> 00006BB7 # 1-61-54 5D57 -> 00006BBC # 1-61-55 5D58 -> 00006BC6 # 1-61-56 5D59 -> 00006BCB # 1-61-57 5D5A -> 00006BD3 # 1-61-58 5D5B -> 00006BDF # 1-61-59 5D5C -> 00006BEC # 1-61-60 5D5D -> 00006BEB # 1-61-61 5D5E -> 00006BF3 # 1-61-62 5D5F -> 00006BEF # 1-61-63 5D60 -> 00009EBE # 1-61-64 5D61 -> 00006C08 # 1-61-65 5D62 -> 00006C13 # 1-61-66 5D63 -> 00006C14 # 1-61-67 5D64 -> 00006C1B # 1-61-68 5D65 -> 00006C24 # 1-61-69 5D66 -> 00006C23 # 1-61-70 5D67 -> 00006C5E # 1-61-71 5D68 -> 00006C55 # 1-61-72 5D69 -> 00006C62 # 1-61-73 5D6A -> 00006C6A # 1-61-74 5D6B -> 00006C82 # 1-61-75 5D6C -> 00006C8D # 1-61-76 5D6D -> 00006C9A # 1-61-77 5D6E -> 00006C81 # 1-61-78 5D6F -> 00006C9B # 1-61-79 5D70 -> 00006C7E # 1-61-80 5D71 -> 00006C68 # 1-61-81 5D72 -> 00006C73 # 1-61-82 5D73 -> 00006C92 # 1-61-83 5D74 -> 00006C90 # 1-61-84 5D75 -> 00006CC4 # 1-61-85 5D76 -> 00006CF1 # 1-61-86 5D77 -> 00006CD3 # 1-61-87 5D78 -> 00006CBD # 1-61-88 5D79 -> 00006CD7 # 1-61-89 5D7A -> 00006CC5 # 1-61-90 5D7B -> 00006CDD # 1-61-91 5D7C -> 00006CAE # 1-61-92 5D7D -> 00006CB1 # 1-61-93 5D7E -> 00006CBE # 1-61-94 5E21 -> 00006CBA # 1-62-1 5E22 -> 00006CDB # 1-62-2 5E23 -> 00006CEF # 1-62-3 5E24 -> 00006CD9 # 1-62-4 5E25 -> 00006CEA # 1-62-5 5E26 -> 00006D1F # 1-62-6 5E27 -> 0000884D # 1-62-7 5E28 -> 00006D36 # 1-62-8 5E29 -> 00006D2B # 1-62-9 5E2A -> 00006D3D # 1-62-10 5E2B -> 00006D38 # 1-62-11 5E2C -> 00006D19 # 1-62-12 5E2D -> 00006D35 # 1-62-13 5E2E -> 00006D33 # 1-62-14 5E2F -> 00006D12 # 1-62-15 5E30 -> 00006D0C # 1-62-16 5E31 -> 00006D63 # 1-62-17 5E32 -> 00006D93 # 1-62-18 5E33 -> 00006D64 # 1-62-19 5E34 -> 00006D5A # 1-62-20 5E35 -> 00006D79 # 1-62-21 5E36 -> 00006D59 # 1-62-22 5E37 -> 00006D8E # 1-62-23 5E38 -> 00006D95 # 1-62-24 5E39 -> 00006FE4 # 1-62-25 5E3A -> 00006D85 # 1-62-26 5E3B -> 00006DF9 # 1-62-27 5E3C -> 00006E15 # 1-62-28 5E3D -> 00006E0A # 1-62-29 5E3E -> 00006DB5 # 1-62-30 5E3F -> 00006DC7 # 1-62-31 5E40 -> 00006DE6 # 1-62-32 5E41 -> 00006DB8 # 1-62-33 5E42 -> 00006DC6 # 1-62-34 5E43 -> 00006DEC # 1-62-35 5E44 -> 00006DDE # 1-62-36 5E45 -> 00006DCC # 1-62-37 5E46 -> 00006DE8 # 1-62-38 5E47 -> 00006DD2 # 1-62-39 5E48 -> 00006DC5 # 1-62-40 5E49 -> 00006DFA # 1-62-41 5E4A -> 00006DD9 # 1-62-42 5E4B -> 00006DE4 # 1-62-43 5E4C -> 00006DD5 # 1-62-44 5E4D -> 00006DEA # 1-62-45 5E4E -> 00006DEE # 1-62-46 5E4F -> 00006E2D # 1-62-47 5E50 -> 00006E6E # 1-62-48 5E51 -> 00006E2E # 1-62-49 5E52 -> 00006E19 # 1-62-50 5E53 -> 00006E72 # 1-62-51 5E54 -> 00006E5F # 1-62-52 5E55 -> 00006E3E # 1-62-53 5E56 -> 00006E23 # 1-62-54 5E57 -> 00006E6B # 1-62-55 5E58 -> 00006E2B # 1-62-56 5E59 -> 00006E76 # 1-62-57 5E5A -> 00006E4D # 1-62-58 5E5B -> 00006E1F # 1-62-59 5E5C -> 00006E43 # 1-62-60 5E5D -> 00006E3A # 1-62-61 5E5E -> 00006E4E # 1-62-62 5E5F -> 00006E24 # 1-62-63 5E60 -> 00006EFF # 1-62-64 5E61 -> 00006E1D # 1-62-65 5E62 -> 00006E38 # 1-62-66 5E63 -> 00006E82 # 1-62-67 5E64 -> 00006EAA # 1-62-68 5E65 -> 00006E98 # 1-62-69 5E66 -> 00006EC9 # 1-62-70 5E67 -> 00006EB7 # 1-62-71 5E68 -> 00006ED3 # 1-62-72 5E69 -> 00006EBD # 1-62-73 5E6A -> 00006EAF # 1-62-74 5E6B -> 00006EC4 # 1-62-75 5E6C -> 00006EB2 # 1-62-76 5E6D -> 00006ED4 # 1-62-77 5E6E -> 00006ED5 # 1-62-78 5E6F -> 00006E8F # 1-62-79 5E70 -> 00006EA5 # 1-62-80 5E71 -> 00006EC2 # 1-62-81 5E72 -> 00006E9F # 1-62-82 5E73 -> 00006F41 # 1-62-83 5E74 -> 00006F11 # 1-62-84 5E75 -> 0000704C # 1-62-85 5E76 -> 00006EEC # 1-62-86 5E77 -> 00006EF8 # 1-62-87 5E78 -> 00006EFE # 1-62-88 5E79 -> 00006F3F # 1-62-89 5E7A -> 00006EF2 # 1-62-90 5E7B -> 00006F31 # 1-62-91 5E7C -> 00006EEF # 1-62-92 5E7D -> 00006F32 # 1-62-93 5E7E -> 00006ECC # 1-62-94 5F21 -> 00006F3E # 1-63-1 5F22 -> 00006F13 # 1-63-2 5F23 -> 00006EF7 # 1-63-3 5F24 -> 00006F86 # 1-63-4 5F25 -> 00006F7A # 1-63-5 5F26 -> 00006F78 # 1-63-6 5F27 -> 00006F81 # 1-63-7 5F28 -> 00006F80 # 1-63-8 5F29 -> 00006F6F # 1-63-9 5F2A -> 00006F5B # 1-63-10 5F2B -> 00006FF3 # 1-63-11 5F2C -> 00006F6D # 1-63-12 5F2D -> 00006F82 # 1-63-13 5F2E -> 00006F7C # 1-63-14 5F2F -> 00006F58 # 1-63-15 5F30 -> 00006F8E # 1-63-16 5F31 -> 00006F91 # 1-63-17 5F32 -> 00006FC2 # 1-63-18 5F33 -> 00006F66 # 1-63-19 5F34 -> 00006FB3 # 1-63-20 5F35 -> 00006FA3 # 1-63-21 5F36 -> 00006FA1 # 1-63-22 5F37 -> 00006FA4 # 1-63-23 5F38 -> 00006FB9 # 1-63-24 5F39 -> 00006FC6 # 1-63-25 5F3A -> 00006FAA # 1-63-26 5F3B -> 00006FDF # 1-63-27 5F3C -> 00006FD5 # 1-63-28 5F3D -> 00006FEC # 1-63-29 5F3E -> 00006FD4 # 1-63-30 5F3F -> 00006FD8 # 1-63-31 5F40 -> 00006FF1 # 1-63-32 5F41 -> 00006FEE # 1-63-33 5F42 -> 00006FDB # 1-63-34 5F43 -> 00007009 # 1-63-35 5F44 -> 0000700B # 1-63-36 5F45 -> 00006FFA # 1-63-37 5F46 -> 00007011 # 1-63-38 5F47 -> 00007001 # 1-63-39 5F48 -> 0000700F # 1-63-40 5F49 -> 00006FFE # 1-63-41 5F4A -> 0000701B # 1-63-42 5F4B -> 0000701A # 1-63-43 5F4C -> 00006F74 # 1-63-44 5F4D -> 0000701D # 1-63-45 5F4E -> 00007018 # 1-63-46 5F4F -> 0000701F # 1-63-47 5F50 -> 00007030 # 1-63-48 5F51 -> 0000703E # 1-63-49 5F52 -> 00007032 # 1-63-50 5F53 -> 00007051 # 1-63-51 5F54 -> 00007063 # 1-63-52 5F55 -> 00007099 # 1-63-53 5F56 -> 00007092 # 1-63-54 5F57 -> 000070AF # 1-63-55 5F58 -> 000070F1 # 1-63-56 5F59 -> 000070AC # 1-63-57 5F5A -> 000070B8 # 1-63-58 5F5B -> 000070B3 # 1-63-59 5F5C -> 000070AE # 1-63-60 5F5D -> 000070DF # 1-63-61 5F5E -> 000070CB # 1-63-62 5F5F -> 000070DD # 1-63-63 5F60 -> 000070D9 # 1-63-64 5F61 -> 00007109 # 1-63-65 5F62 -> 000070FD # 1-63-66 5F63 -> 0000711C # 1-63-67 5F64 -> 00007119 # 1-63-68 5F65 -> 00007165 # 1-63-69 5F66 -> 00007155 # 1-63-70 5F67 -> 00007188 # 1-63-71 5F68 -> 00007166 # 1-63-72 5F69 -> 00007162 # 1-63-73 5F6A -> 0000714C # 1-63-74 5F6B -> 00007156 # 1-63-75 5F6C -> 0000716C # 1-63-76 5F6D -> 0000718F # 1-63-77 5F6E -> 000071FB # 1-63-78 5F6F -> 00007184 # 1-63-79 5F70 -> 00007195 # 1-63-80 5F71 -> 000071A8 # 1-63-81 5F72 -> 000071AC # 1-63-82 5F73 -> 000071D7 # 1-63-83 5F74 -> 000071B9 # 1-63-84 5F75 -> 000071BE # 1-63-85 5F76 -> 000071D2 # 1-63-86 5F77 -> 000071C9 # 1-63-87 5F78 -> 000071D4 # 1-63-88 5F79 -> 000071CE # 1-63-89 5F7A -> 000071E0 # 1-63-90 5F7B -> 000071EC # 1-63-91 5F7C -> 000071E7 # 1-63-92 5F7D -> 000071F5 # 1-63-93 5F7E -> 000071FC # 1-63-94 6021 -> 000071F9 # 1-64-1 6022 -> 000071FF # 1-64-2 6023 -> 0000720D # 1-64-3 6024 -> 00007210 # 1-64-4 6025 -> 0000721B # 1-64-5 6026 -> 00007228 # 1-64-6 6027 -> 0000722D # 1-64-7 6028 -> 0000722C # 1-64-8 6029 -> 00007230 # 1-64-9 602A -> 00007232 # 1-64-10 602B -> 0000723B # 1-64-11 602C -> 0000723C # 1-64-12 602D -> 0000723F # 1-64-13 602E -> 00007240 # 1-64-14 602F -> 00007246 # 1-64-15 6030 -> 0000724B # 1-64-16 6031 -> 00007258 # 1-64-17 6032 -> 00007274 # 1-64-18 6033 -> 0000727E # 1-64-19 6034 -> 00007282 # 1-64-20 6035 -> 00007281 # 1-64-21 6036 -> 00007287 # 1-64-22 6037 -> 00007292 # 1-64-23 6038 -> 00007296 # 1-64-24 6039 -> 000072A2 # 1-64-25 603A -> 000072A7 # 1-64-26 603B -> 000072B9 # 1-64-27 603C -> 000072B2 # 1-64-28 603D -> 000072C3 # 1-64-29 603E -> 000072C6 # 1-64-30 603F -> 000072C4 # 1-64-31 6040 -> 000072CE # 1-64-32 6041 -> 000072D2 # 1-64-33 6042 -> 000072E2 # 1-64-34 6043 -> 000072E0 # 1-64-35 6044 -> 000072E1 # 1-64-36 6045 -> 000072F9 # 1-64-37 6046 -> 000072F7 # 1-64-38 6047 -> 0000500F # 1-64-39 6048 -> 00007317 # 1-64-40 6049 -> 0000730A # 1-64-41 604A -> 0000731C # 1-64-42 604B -> 00007316 # 1-64-43 604C -> 0000731D # 1-64-44 604D -> 00007334 # 1-64-45 604E -> 0000732F # 1-64-46 604F -> 00007329 # 1-64-47 6050 -> 00007325 # 1-64-48 6051 -> 0000733E # 1-64-49 6052 -> 0000734E # 1-64-50 6053 -> 0000734F # 1-64-51 6054 -> 00009ED8 # 1-64-52 6055 -> 00007357 # 1-64-53 6056 -> 0000736A # 1-64-54 6057 -> 00007368 # 1-64-55 6058 -> 00007370 # 1-64-56 6059 -> 00007378 # 1-64-57 605A -> 00007375 # 1-64-58 605B -> 0000737B # 1-64-59 605C -> 0000737A # 1-64-60 605D -> 000073C8 # 1-64-61 605E -> 000073B3 # 1-64-62 605F -> 000073CE # 1-64-63 6060 -> 000073BB # 1-64-64 6061 -> 000073C0 # 1-64-65 6062 -> 000073E5 # 1-64-66 6063 -> 000073EE # 1-64-67 6064 -> 000073DE # 1-64-68 6065 -> 000074A2 # 1-64-69 6066 -> 00007405 # 1-64-70 6067 -> 0000746F # 1-64-71 6068 -> 00007425 # 1-64-72 6069 -> 000073F8 # 1-64-73 606A -> 00007432 # 1-64-74 606B -> 0000743A # 1-64-75 606C -> 00007455 # 1-64-76 606D -> 0000743F # 1-64-77 606E -> 0000745F # 1-64-78 606F -> 00007459 # 1-64-79 6070 -> 00007441 # 1-64-80 6071 -> 0000745C # 1-64-81 6072 -> 00007469 # 1-64-82 6073 -> 00007470 # 1-64-83 6074 -> 00007463 # 1-64-84 6075 -> 0000746A # 1-64-85 6076 -> 00007476 # 1-64-86 6077 -> 0000747E # 1-64-87 6078 -> 0000748B # 1-64-88 6079 -> 0000749E # 1-64-89 607A -> 000074A7 # 1-64-90 607B -> 000074CA # 1-64-91 607C -> 000074CF # 1-64-92 607D -> 000074D4 # 1-64-93 607E -> 000073F1 # 1-64-94 6121 -> 000074E0 # 1-65-1 6122 -> 000074E3 # 1-65-2 6123 -> 000074E7 # 1-65-3 6124 -> 000074E9 # 1-65-4 6125 -> 000074EE # 1-65-5 6126 -> 000074F2 # 1-65-6 6127 -> 000074F0 # 1-65-7 6128 -> 000074F1 # 1-65-8 6129 -> 000074F8 # 1-65-9 612A -> 000074F7 # 1-65-10 612B -> 00007504 # 1-65-11 612C -> 00007503 # 1-65-12 612D -> 00007505 # 1-65-13 612E -> 0000750C # 1-65-14 612F -> 0000750E # 1-65-15 6130 -> 0000750D # 1-65-16 6131 -> 00007515 # 1-65-17 6132 -> 00007513 # 1-65-18 6133 -> 0000751E # 1-65-19 6134 -> 00007526 # 1-65-20 6135 -> 0000752C # 1-65-21 6136 -> 0000753C # 1-65-22 6137 -> 00007544 # 1-65-23 6138 -> 0000754D # 1-65-24 6139 -> 0000754A # 1-65-25 613A -> 00007549 # 1-65-26 613B -> 0000755B # 1-65-27 613C -> 00007546 # 1-65-28 613D -> 0000755A # 1-65-29 613E -> 00007569 # 1-65-30 613F -> 00007564 # 1-65-31 6140 -> 00007567 # 1-65-32 6141 -> 0000756B # 1-65-33 6142 -> 0000756D # 1-65-34 6143 -> 00007578 # 1-65-35 6144 -> 00007576 # 1-65-36 6145 -> 00007586 # 1-65-37 6146 -> 00007587 # 1-65-38 6147 -> 00007574 # 1-65-39 6148 -> 0000758A # 1-65-40 6149 -> 00007589 # 1-65-41 614A -> 00007582 # 1-65-42 614B -> 00007594 # 1-65-43 614C -> 0000759A # 1-65-44 614D -> 0000759D # 1-65-45 614E -> 000075A5 # 1-65-46 614F -> 000075A3 # 1-65-47 6150 -> 000075C2 # 1-65-48 6151 -> 000075B3 # 1-65-49 6152 -> 000075C3 # 1-65-50 6153 -> 000075B5 # 1-65-51 6154 -> 000075BD # 1-65-52 6155 -> 000075B8 # 1-65-53 6156 -> 000075BC # 1-65-54 6157 -> 000075B1 # 1-65-55 6158 -> 000075CD # 1-65-56 6159 -> 000075CA # 1-65-57 615A -> 000075D2 # 1-65-58 615B -> 000075D9 # 1-65-59 615C -> 000075E3 # 1-65-60 615D -> 000075DE # 1-65-61 615E -> 000075FE # 1-65-62 615F -> 000075FF # 1-65-63 6160 -> 000075FC # 1-65-64 6161 -> 00007601 # 1-65-65 6162 -> 000075F0 # 1-65-66 6163 -> 000075FA # 1-65-67 6164 -> 000075F2 # 1-65-68 6165 -> 000075F3 # 1-65-69 6166 -> 0000760B # 1-65-70 6167 -> 0000760D # 1-65-71 6168 -> 00007609 # 1-65-72 6169 -> 0000761F # 1-65-73 616A -> 00007627 # 1-65-74 616B -> 00007620 # 1-65-75 616C -> 00007621 # 1-65-76 616D -> 00007622 # 1-65-77 616E -> 00007624 # 1-65-78 616F -> 00007634 # 1-65-79 6170 -> 00007630 # 1-65-80 6171 -> 0000763B # 1-65-81 6172 -> 00007647 # 1-65-82 6173 -> 00007648 # 1-65-83 6174 -> 00007646 # 1-65-84 6175 -> 0000765C # 1-65-85 6176 -> 00007658 # 1-65-86 6177 -> 00007661 # 1-65-87 6178 -> 00007662 # 1-65-88 6179 -> 00007668 # 1-65-89 617A -> 00007669 # 1-65-90 617B -> 0000766A # 1-65-91 617C -> 00007667 # 1-65-92 617D -> 0000766C # 1-65-93 617E -> 00007670 # 1-65-94 6221 -> 00007672 # 1-66-1 6222 -> 00007676 # 1-66-2 6223 -> 00007678 # 1-66-3 6224 -> 0000767C # 1-66-4 6225 -> 00007680 # 1-66-5 6226 -> 00007683 # 1-66-6 6227 -> 00007688 # 1-66-7 6228 -> 0000768B # 1-66-8 6229 -> 0000768E # 1-66-9 622A -> 00007696 # 1-66-10 622B -> 00007693 # 1-66-11 622C -> 00007699 # 1-66-12 622D -> 0000769A # 1-66-13 622E -> 000076B0 # 1-66-14 622F -> 000076B4 # 1-66-15 6230 -> 000076B8 # 1-66-16 6231 -> 000076B9 # 1-66-17 6232 -> 000076BA # 1-66-18 6233 -> 000076C2 # 1-66-19 6234 -> 000076CD # 1-66-20 6235 -> 000076D6 # 1-66-21 6236 -> 000076D2 # 1-66-22 6237 -> 000076DE # 1-66-23 6238 -> 000076E1 # 1-66-24 6239 -> 000076E5 # 1-66-25 623A -> 000076E7 # 1-66-26 623B -> 000076EA # 1-66-27 623C -> 0000862F # 1-66-28 623D -> 000076FB # 1-66-29 623E -> 00007708 # 1-66-30 623F -> 00007707 # 1-66-31 6240 -> 00007704 # 1-66-32 6241 -> 00007729 # 1-66-33 6242 -> 00007724 # 1-66-34 6243 -> 0000771E # 1-66-35 6244 -> 00007725 # 1-66-36 6245 -> 00007726 # 1-66-37 6246 -> 0000771B # 1-66-38 6247 -> 00007737 # 1-66-39 6248 -> 00007738 # 1-66-40 6249 -> 00007747 # 1-66-41 624A -> 0000775A # 1-66-42 624B -> 00007768 # 1-66-43 624C -> 0000776B # 1-66-44 624D -> 0000775B # 1-66-45 624E -> 00007765 # 1-66-46 624F -> 0000777F # 1-66-47 6250 -> 0000777E # 1-66-48 6251 -> 00007779 # 1-66-49 6252 -> 0000778E # 1-66-50 6253 -> 0000778B # 1-66-51 6254 -> 00007791 # 1-66-52 6255 -> 000077A0 # 1-66-53 6256 -> 0000779E # 1-66-54 6257 -> 000077B0 # 1-66-55 6258 -> 000077B6 # 1-66-56 6259 -> 000077B9 # 1-66-57 625A -> 000077BF # 1-66-58 625B -> 000077BC # 1-66-59 625C -> 000077BD # 1-66-60 625D -> 000077BB # 1-66-61 625E -> 000077C7 # 1-66-62 625F -> 000077CD # 1-66-63 6260 -> 000077D7 # 1-66-64 6261 -> 000077DA # 1-66-65 6262 -> 000077DC # 1-66-66 6263 -> 000077E3 # 1-66-67 6264 -> 000077EE # 1-66-68 6265 -> 000077FC # 1-66-69 6266 -> 0000780C # 1-66-70 6267 -> 00007812 # 1-66-71 6268 -> 00007926 # 1-66-72 6269 -> 00007820 # 1-66-73 626A -> 0000792A # 1-66-74 626B -> 00007845 # 1-66-75 626C -> 0000788E # 1-66-76 626D -> 00007874 # 1-66-77 626E -> 00007886 # 1-66-78 626F -> 0000787C # 1-66-79 6270 -> 0000789A # 1-66-80 6271 -> 0000788C # 1-66-81 6272 -> 000078A3 # 1-66-82 6273 -> 000078B5 # 1-66-83 6274 -> 000078AA # 1-66-84 6275 -> 000078AF # 1-66-85 6276 -> 000078D1 # 1-66-86 6277 -> 000078C6 # 1-66-87 6278 -> 000078CB # 1-66-88 6279 -> 000078D4 # 1-66-89 627A -> 000078BE # 1-66-90 627B -> 000078BC # 1-66-91 627C -> 000078C5 # 1-66-92 627D -> 000078CA # 1-66-93 627E -> 000078EC # 1-66-94 6321 -> 000078E7 # 1-67-1 6322 -> 000078DA # 1-67-2 6323 -> 000078FD # 1-67-3 6324 -> 000078F4 # 1-67-4 6325 -> 00007907 # 1-67-5 6326 -> 00007912 # 1-67-6 6327 -> 00007911 # 1-67-7 6328 -> 00007919 # 1-67-8 6329 -> 0000792C # 1-67-9 632A -> 0000792B # 1-67-10 632B -> 00007940 # 1-67-11 632C -> 00007960 # 1-67-12 632D -> 00007957 # 1-67-13 632E -> 0000795F # 1-67-14 632F -> 0000795A # 1-67-15 6330 -> 00007955 # 1-67-16 6331 -> 00007953 # 1-67-17 6332 -> 0000797A # 1-67-18 6333 -> 0000797F # 1-67-19 6334 -> 0000798A # 1-67-20 6335 -> 0000799D # 1-67-21 6336 -> 000079A7 # 1-67-22 6337 -> 00009F4B # 1-67-23 6338 -> 000079AA # 1-67-24 6339 -> 000079AE # 1-67-25 633A -> 000079B3 # 1-67-26 633B -> 000079B9 # 1-67-27 633C -> 000079BA # 1-67-28 633D -> 000079C9 # 1-67-29 633E -> 000079D5 # 1-67-30 633F -> 000079E7 # 1-67-31 6340 -> 000079EC # 1-67-32 6341 -> 000079E1 # 1-67-33 6342 -> 000079E3 # 1-67-34 6343 -> 00007A08 # 1-67-35 6344 -> 00007A0D # 1-67-36 6345 -> 00007A18 # 1-67-37 6346 -> 00007A19 # 1-67-38 6347 -> 00007A20 # 1-67-39 6348 -> 00007A1F # 1-67-40 6349 -> 00007980 # 1-67-41 634A -> 00007A31 # 1-67-42 634B -> 00007A3B # 1-67-43 634C -> 00007A3E # 1-67-44 634D -> 00007A37 # 1-67-45 634E -> 00007A43 # 1-67-46 634F -> 00007A57 # 1-67-47 6350 -> 00007A49 # 1-67-48 6351 -> 00007A61 # 1-67-49 6352 -> 00007A62 # 1-67-50 6353 -> 00007A69 # 1-67-51 6354 -> 00009F9D # 1-67-52 6355 -> 00007A70 # 1-67-53 6356 -> 00007A79 # 1-67-54 6357 -> 00007A7D # 1-67-55 6358 -> 00007A88 # 1-67-56 6359 -> 00007A97 # 1-67-57 635A -> 00007A95 # 1-67-58 635B -> 00007A98 # 1-67-59 635C -> 00007A96 # 1-67-60 635D -> 00007AA9 # 1-67-61 635E -> 00007AC8 # 1-67-62 635F -> 00007AB0 # 1-67-63 6360 -> 00007AB6 # 1-67-64 6361 -> 00007AC5 # 1-67-65 6362 -> 00007AC4 # 1-67-66 6363 -> 00007ABF # 1-67-67 6364 -> 00009083 # 1-67-68 6365 -> 00007AC7 # 1-67-69 6366 -> 00007ACA # 1-67-70 6367 -> 00007ACD # 1-67-71 6368 -> 00007ACF # 1-67-72 6369 -> 00007AD5 # 1-67-73 636A -> 00007AD3 # 1-67-74 636B -> 00007AD9 # 1-67-75 636C -> 00007ADA # 1-67-76 636D -> 00007ADD # 1-67-77 636E -> 00007AE1 # 1-67-78 636F -> 00007AE2 # 1-67-79 6370 -> 00007AE6 # 1-67-80 6371 -> 00007AED # 1-67-81 6372 -> 00007AF0 # 1-67-82 6373 -> 00007B02 # 1-67-83 6374 -> 00007B0F # 1-67-84 6375 -> 00007B0A # 1-67-85 6376 -> 00007B06 # 1-67-86 6377 -> 00007B33 # 1-67-87 6378 -> 00007B18 # 1-67-88 6379 -> 00007B19 # 1-67-89 637A -> 00007B1E # 1-67-90 637B -> 00007B35 # 1-67-91 637C -> 00007B28 # 1-67-92 637D -> 00007B36 # 1-67-93 637E -> 00007B50 # 1-67-94 6421 -> 00007B7A # 1-68-1 6422 -> 00007B04 # 1-68-2 6423 -> 00007B4D # 1-68-3 6424 -> 00007B0B # 1-68-4 6425 -> 00007B4C # 1-68-5 6426 -> 00007B45 # 1-68-6 6427 -> 00007B75 # 1-68-7 6428 -> 00007B65 # 1-68-8 6429 -> 00007B74 # 1-68-9 642A -> 00007B67 # 1-68-10 642B -> 00007B70 # 1-68-11 642C -> 00007B71 # 1-68-12 642D -> 00007B6C # 1-68-13 642E -> 00007B6E # 1-68-14 642F -> 00007B9D # 1-68-15 6430 -> 00007B98 # 1-68-16 6431 -> 00007B9F # 1-68-17 6432 -> 00007B8D # 1-68-18 6433 -> 00007B9C # 1-68-19 6434 -> 00007B9A # 1-68-20 6435 -> 00007B8B # 1-68-21 6436 -> 00007B92 # 1-68-22 6437 -> 00007B8F # 1-68-23 6438 -> 00007B5D # 1-68-24 6439 -> 00007B99 # 1-68-25 643A -> 00007BCB # 1-68-26 643B -> 00007BC1 # 1-68-27 643C -> 00007BCC # 1-68-28 643D -> 00007BCF # 1-68-29 643E -> 00007BB4 # 1-68-30 643F -> 00007BC6 # 1-68-31 6440 -> 00007BDD # 1-68-32 6441 -> 00007BE9 # 1-68-33 6442 -> 00007C11 # 1-68-34 6443 -> 00007C14 # 1-68-35 6444 -> 00007BE6 # 1-68-36 6445 -> 00007BE5 # 1-68-37 6446 -> 00007C60 # 1-68-38 6447 -> 00007C00 # 1-68-39 6448 -> 00007C07 # 1-68-40 6449 -> 00007C13 # 1-68-41 644A -> 00007BF3 # 1-68-42 644B -> 00007BF7 # 1-68-43 644C -> 00007C17 # 1-68-44 644D -> 00007C0D # 1-68-45 644E -> 00007BF6 # 1-68-46 644F -> 00007C23 # 1-68-47 6450 -> 00007C27 # 1-68-48 6451 -> 00007C2A # 1-68-49 6452 -> 00007C1F # 1-68-50 6453 -> 00007C37 # 1-68-51 6454 -> 00007C2B # 1-68-52 6455 -> 00007C3D # 1-68-53 6456 -> 00007C4C # 1-68-54 6457 -> 00007C43 # 1-68-55 6458 -> 00007C54 # 1-68-56 6459 -> 00007C4F # 1-68-57 645A -> 00007C40 # 1-68-58 645B -> 00007C50 # 1-68-59 645C -> 00007C58 # 1-68-60 645D -> 00007C5F # 1-68-61 645E -> 00007C64 # 1-68-62 645F -> 00007C56 # 1-68-63 6460 -> 00007C65 # 1-68-64 6461 -> 00007C6C # 1-68-65 6462 -> 00007C75 # 1-68-66 6463 -> 00007C83 # 1-68-67 6464 -> 00007C90 # 1-68-68 6465 -> 00007CA4 # 1-68-69 6466 -> 00007CAD # 1-68-70 6467 -> 00007CA2 # 1-68-71 6468 -> 00007CAB # 1-68-72 6469 -> 00007CA1 # 1-68-73 646A -> 00007CA8 # 1-68-74 646B -> 00007CB3 # 1-68-75 646C -> 00007CB2 # 1-68-76 646D -> 00007CB1 # 1-68-77 646E -> 00007CAE # 1-68-78 646F -> 00007CB9 # 1-68-79 6470 -> 00007CBD # 1-68-80 6471 -> 00007CC0 # 1-68-81 6472 -> 00007CC5 # 1-68-82 6473 -> 00007CC2 # 1-68-83 6474 -> 00007CD8 # 1-68-84 6475 -> 00007CD2 # 1-68-85 6476 -> 00007CDC # 1-68-86 6477 -> 00007CE2 # 1-68-87 6478 -> 00009B3B # 1-68-88 6479 -> 00007CEF # 1-68-89 647A -> 00007CF2 # 1-68-90 647B -> 00007CF4 # 1-68-91 647C -> 00007CF6 # 1-68-92 647D -> 00007CFA # 1-68-93 647E -> 00007D06 # 1-68-94 6521 -> 00007D02 # 1-69-1 6522 -> 00007D1C # 1-69-2 6523 -> 00007D15 # 1-69-3 6524 -> 00007D0A # 1-69-4 6525 -> 00007D45 # 1-69-5 6526 -> 00007D4B # 1-69-6 6527 -> 00007D2E # 1-69-7 6528 -> 00007D32 # 1-69-8 6529 -> 00007D3F # 1-69-9 652A -> 00007D35 # 1-69-10 652B -> 00007D46 # 1-69-11 652C -> 00007D73 # 1-69-12 652D -> 00007D56 # 1-69-13 652E -> 00007D4E # 1-69-14 652F -> 00007D72 # 1-69-15 6530 -> 00007D68 # 1-69-16 6531 -> 00007D6E # 1-69-17 6532 -> 00007D4F # 1-69-18 6533 -> 00007D63 # 1-69-19 6534 -> 00007D93 # 1-69-20 6535 -> 00007D89 # 1-69-21 6536 -> 00007D5B # 1-69-22 6537 -> 00007D8F # 1-69-23 6538 -> 00007D7D # 1-69-24 6539 -> 00007D9B # 1-69-25 653A -> 00007DBA # 1-69-26 653B -> 00007DAE # 1-69-27 653C -> 00007DA3 # 1-69-28 653D -> 00007DB5 # 1-69-29 653E -> 00007DC7 # 1-69-30 653F -> 00007DBD # 1-69-31 6540 -> 00007DAB # 1-69-32 6541 -> 00007E3D # 1-69-33 6542 -> 00007DA2 # 1-69-34 6543 -> 00007DAF # 1-69-35 6544 -> 00007DDC # 1-69-36 6545 -> 00007DB8 # 1-69-37 6546 -> 00007D9F # 1-69-38 6547 -> 00007DB0 # 1-69-39 6548 -> 00007DD8 # 1-69-40 6549 -> 00007DDD # 1-69-41 654A -> 00007DE4 # 1-69-42 654B -> 00007DDE # 1-69-43 654C -> 00007DFB # 1-69-44 654D -> 00007DF2 # 1-69-45 654E -> 00007DE1 # 1-69-46 654F -> 00007E05 # 1-69-47 6550 -> 00007E0A # 1-69-48 6551 -> 00007E23 # 1-69-49 6552 -> 00007E21 # 1-69-50 6553 -> 00007E12 # 1-69-51 6554 -> 00007E31 # 1-69-52 6555 -> 00007E1F # 1-69-53 6556 -> 00007E09 # 1-69-54 6557 -> 00007E0B # 1-69-55 6558 -> 00007E22 # 1-69-56 6559 -> 00007E46 # 1-69-57 655A -> 00007E66 # 1-69-58 655B -> 00007E3B # 1-69-59 655C -> 00007E35 # 1-69-60 655D -> 00007E39 # 1-69-61 655E -> 00007E43 # 1-69-62 655F -> 00007E37 # 1-69-63 6560 -> 00007E32 # 1-69-64 6561 -> 00007E3A # 1-69-65 6562 -> 00007E67 # 1-69-66 6563 -> 00007E5D # 1-69-67 6564 -> 00007E56 # 1-69-68 6565 -> 00007E5E # 1-69-69 6566 -> 00007E59 # 1-69-70 6567 -> 00007E5A # 1-69-71 6568 -> 00007E79 # 1-69-72 6569 -> 00007E6A # 1-69-73 656A -> 00007E69 # 1-69-74 656B -> 00007E7C # 1-69-75 656C -> 00007E7B # 1-69-76 656D -> 00007E83 # 1-69-77 656E -> 00007DD5 # 1-69-78 656F -> 00007E7D # 1-69-79 6570 -> 00008FAE # 1-69-80 6571 -> 00007E7F # 1-69-81 6572 -> 00007E88 # 1-69-82 6573 -> 00007E89 # 1-69-83 6574 -> 00007E8C # 1-69-84 6575 -> 00007E92 # 1-69-85 6576 -> 00007E90 # 1-69-86 6577 -> 00007E93 # 1-69-87 6578 -> 00007E94 # 1-69-88 6579 -> 00007E96 # 1-69-89 657A -> 00007E8E # 1-69-90 657B -> 00007E9B # 1-69-91 657C -> 00007E9C # 1-69-92 657D -> 00007F38 # 1-69-93 657E -> 00007F3A # 1-69-94 6621 -> 00007F45 # 1-70-1 6622 -> 00007F4C # 1-70-2 6623 -> 00007F4D # 1-70-3 6624 -> 00007F4E # 1-70-4 6625 -> 00007F50 # 1-70-5 6626 -> 00007F51 # 1-70-6 6627 -> 00007F55 # 1-70-7 6628 -> 00007F54 # 1-70-8 6629 -> 00007F58 # 1-70-9 662A -> 00007F5F # 1-70-10 662B -> 00007F60 # 1-70-11 662C -> 00007F68 # 1-70-12 662D -> 00007F69 # 1-70-13 662E -> 00007F67 # 1-70-14 662F -> 00007F78 # 1-70-15 6630 -> 00007F82 # 1-70-16 6631 -> 00007F86 # 1-70-17 6632 -> 00007F83 # 1-70-18 6633 -> 00007F88 # 1-70-19 6634 -> 00007F87 # 1-70-20 6635 -> 00007F8C # 1-70-21 6636 -> 00007F94 # 1-70-22 6637 -> 00007F9E # 1-70-23 6638 -> 00007F9D # 1-70-24 6639 -> 00007F9A # 1-70-25 663A -> 00007FA3 # 1-70-26 663B -> 00007FAF # 1-70-27 663C -> 00007FB2 # 1-70-28 663D -> 00007FB9 # 1-70-29 663E -> 00007FAE # 1-70-30 663F -> 00007FB6 # 1-70-31 6640 -> 00007FB8 # 1-70-32 6641 -> 00008B71 # 1-70-33 6642 -> 00007FC5 # 1-70-34 6643 -> 00007FC6 # 1-70-35 6644 -> 00007FCA # 1-70-36 6645 -> 00007FD5 # 1-70-37 6646 -> 00007FD4 # 1-70-38 6647 -> 00007FE1 # 1-70-39 6648 -> 00007FE6 # 1-70-40 6649 -> 00007FE9 # 1-70-41 664A -> 00007FF3 # 1-70-42 664B -> 00007FF9 # 1-70-43 664C -> 000098DC # 1-70-44 664D -> 00008006 # 1-70-45 664E -> 00008004 # 1-70-46 664F -> 0000800B # 1-70-47 6650 -> 00008012 # 1-70-48 6651 -> 00008018 # 1-70-49 6652 -> 00008019 # 1-70-50 6653 -> 0000801C # 1-70-51 6654 -> 00008021 # 1-70-52 6655 -> 00008028 # 1-70-53 6656 -> 0000803F # 1-70-54 6657 -> 0000803B # 1-70-55 6658 -> 0000804A # 1-70-56 6659 -> 00008046 # 1-70-57 665A -> 00008052 # 1-70-58 665B -> 00008058 # 1-70-59 665C -> 0000805A # 1-70-60 665D -> 0000805F # 1-70-61 665E -> 00008062 # 1-70-62 665F -> 00008068 # 1-70-63 6660 -> 00008073 # 1-70-64 6661 -> 00008072 # 1-70-65 6662 -> 00008070 # 1-70-66 6663 -> 00008076 # 1-70-67 6664 -> 00008079 # 1-70-68 6665 -> 0000807D # 1-70-69 6666 -> 0000807F # 1-70-70 6667 -> 00008084 # 1-70-71 6668 -> 00008086 # 1-70-72 6669 -> 00008085 # 1-70-73 666A -> 0000809B # 1-70-74 666B -> 00008093 # 1-70-75 666C -> 0000809A # 1-70-76 666D -> 000080AD # 1-70-77 666E -> 00005190 # 1-70-78 666F -> 000080AC # 1-70-79 6670 -> 000080DB # 1-70-80 6671 -> 000080E5 # 1-70-81 6672 -> 000080D9 # 1-70-82 6673 -> 000080DD # 1-70-83 6674 -> 000080C4 # 1-70-84 6675 -> 000080DA # 1-70-85 6676 -> 000080D6 # 1-70-86 6677 -> 00008109 # 1-70-87 6678 -> 000080EF # 1-70-88 6679 -> 000080F1 # 1-70-89 667A -> 0000811B # 1-70-90 667B -> 00008129 # 1-70-91 667C -> 00008123 # 1-70-92 667D -> 0000812F # 1-70-93 667E -> 0000814B # 1-70-94 6721 -> 0000968B # 1-71-1 6722 -> 00008146 # 1-71-2 6723 -> 0000813E # 1-71-3 6724 -> 00008153 # 1-71-4 6725 -> 00008151 # 1-71-5 6726 -> 000080FC # 1-71-6 6727 -> 00008171 # 1-71-7 6728 -> 0000816E # 1-71-8 6729 -> 00008165 # 1-71-9 672A -> 00008166 # 1-71-10 672B -> 00008174 # 1-71-11 672C -> 00008183 # 1-71-12 672D -> 00008188 # 1-71-13 672E -> 0000818A # 1-71-14 672F -> 00008180 # 1-71-15 6730 -> 00008182 # 1-71-16 6731 -> 000081A0 # 1-71-17 6732 -> 00008195 # 1-71-18 6733 -> 000081A4 # 1-71-19 6734 -> 000081A3 # 1-71-20 6735 -> 0000815F # 1-71-21 6736 -> 00008193 # 1-71-22 6737 -> 000081A9 # 1-71-23 6738 -> 000081B0 # 1-71-24 6739 -> 000081B5 # 1-71-25 673A -> 000081BE # 1-71-26 673B -> 000081B8 # 1-71-27 673C -> 000081BD # 1-71-28 673D -> 000081C0 # 1-71-29 673E -> 000081C2 # 1-71-30 673F -> 000081BA # 1-71-31 6740 -> 000081C9 # 1-71-32 6741 -> 000081CD # 1-71-33 6742 -> 000081D1 # 1-71-34 6743 -> 000081D9 # 1-71-35 6744 -> 000081D8 # 1-71-36 6745 -> 000081C8 # 1-71-37 6746 -> 000081DA # 1-71-38 6747 -> 000081DF # 1-71-39 6748 -> 000081E0 # 1-71-40 6749 -> 000081E7 # 1-71-41 674A -> 000081FA # 1-71-42 674B -> 000081FB # 1-71-43 674C -> 000081FE # 1-71-44 674D -> 00008201 # 1-71-45 674E -> 00008202 # 1-71-46 674F -> 00008205 # 1-71-47 6750 -> 00008207 # 1-71-48 6751 -> 0000820A # 1-71-49 6752 -> 0000820D # 1-71-50 6753 -> 00008210 # 1-71-51 6754 -> 00008216 # 1-71-52 6755 -> 00008229 # 1-71-53 6756 -> 0000822B # 1-71-54 6757 -> 00008238 # 1-71-55 6758 -> 00008233 # 1-71-56 6759 -> 00008240 # 1-71-57 675A -> 00008259 # 1-71-58 675B -> 00008258 # 1-71-59 675C -> 0000825D # 1-71-60 675D -> 0000825A # 1-71-61 675E -> 0000825F # 1-71-62 675F -> 00008264 # 1-71-63 6760 -> 00008262 # 1-71-64 6761 -> 00008268 # 1-71-65 6762 -> 0000826A # 1-71-66 6763 -> 0000826B # 1-71-67 6764 -> 0000822E # 1-71-68 6765 -> 00008271 # 1-71-69 6766 -> 00008277 # 1-71-70 6767 -> 00008278 # 1-71-71 6768 -> 0000827E # 1-71-72 6769 -> 0000828D # 1-71-73 676A -> 00008292 # 1-71-74 676B -> 000082AB # 1-71-75 676C -> 0000829F # 1-71-76 676D -> 000082BB # 1-71-77 676E -> 000082AC # 1-71-78 676F -> 000082E1 # 1-71-79 6770 -> 000082E3 # 1-71-80 6771 -> 000082DF # 1-71-81 6772 -> 000082D2 # 1-71-82 6773 -> 000082F4 # 1-71-83 6774 -> 000082F3 # 1-71-84 6775 -> 000082FA # 1-71-85 6776 -> 00008393 # 1-71-86 6777 -> 00008303 # 1-71-87 6778 -> 000082FB # 1-71-88 6779 -> 000082F9 # 1-71-89 677A -> 000082DE # 1-71-90 677B -> 00008306 # 1-71-91 677C -> 000082DC # 1-71-92 677D -> 00008309 # 1-71-93 677E -> 000082D9 # 1-71-94 6821 -> 00008335 # 1-72-1 6822 -> 00008334 # 1-72-2 6823 -> 00008316 # 1-72-3 6824 -> 00008332 # 1-72-4 6825 -> 00008331 # 1-72-5 6826 -> 00008340 # 1-72-6 6827 -> 00008339 # 1-72-7 6828 -> 00008350 # 1-72-8 6829 -> 00008345 # 1-72-9 682A -> 0000832F # 1-72-10 682B -> 0000832B # 1-72-11 682C -> 00008317 # 1-72-12 682D -> 00008318 # 1-72-13 682E -> 00008385 # 1-72-14 682F -> 0000839A # 1-72-15 6830 -> 000083AA # 1-72-16 6831 -> 0000839F # 1-72-17 6832 -> 000083A2 # 1-72-18 6833 -> 00008396 # 1-72-19 6834 -> 00008323 # 1-72-20 6835 -> 0000838E # 1-72-21 6836 -> 00008387 # 1-72-22 6837 -> 0000838A # 1-72-23 6838 -> 0000837C # 1-72-24 6839 -> 000083B5 # 1-72-25 683A -> 00008373 # 1-72-26 683B -> 00008375 # 1-72-27 683C -> 000083A0 # 1-72-28 683D -> 00008389 # 1-72-29 683E -> 000083A8 # 1-72-30 683F -> 000083F4 # 1-72-31 6840 -> 00008413 # 1-72-32 6841 -> 000083EB # 1-72-33 6842 -> 000083CE # 1-72-34 6843 -> 000083FD # 1-72-35 6844 -> 00008403 # 1-72-36 6845 -> 000083D8 # 1-72-37 6846 -> 0000840B # 1-72-38 6847 -> 000083C1 # 1-72-39 6848 -> 000083F7 # 1-72-40 6849 -> 00008407 # 1-72-41 684A -> 000083E0 # 1-72-42 684B -> 000083F2 # 1-72-43 684C -> 0000840D # 1-72-44 684D -> 00008422 # 1-72-45 684E -> 00008420 # 1-72-46 684F -> 000083BD # 1-72-47 6850 -> 00008438 # 1-72-48 6851 -> 00008506 # 1-72-49 6852 -> 000083FB # 1-72-50 6853 -> 0000846D # 1-72-51 6854 -> 0000842A # 1-72-52 6855 -> 0000843C # 1-72-53 6856 -> 0000855A # 1-72-54 6857 -> 00008484 # 1-72-55 6858 -> 00008477 # 1-72-56 6859 -> 0000846B # 1-72-57 685A -> 000084AD # 1-72-58 685B -> 0000846E # 1-72-59 685C -> 00008482 # 1-72-60 685D -> 00008469 # 1-72-61 685E -> 00008446 # 1-72-62 685F -> 0000842C # 1-72-63 6860 -> 0000846F # 1-72-64 6861 -> 00008479 # 1-72-65 6862 -> 00008435 # 1-72-66 6863 -> 000084CA # 1-72-67 6864 -> 00008462 # 1-72-68 6865 -> 000084B9 # 1-72-69 6866 -> 000084BF # 1-72-70 6867 -> 0000849F # 1-72-71 6868 -> 000084D9 # 1-72-72 6869 -> 000084CD # 1-72-73 686A -> 000084BB # 1-72-74 686B -> 000084DA # 1-72-75 686C -> 000084D0 # 1-72-76 686D -> 000084C1 # 1-72-77 686E -> 000084C6 # 1-72-78 686F -> 000084D6 # 1-72-79 6870 -> 000084A1 # 1-72-80 6871 -> 00008521 # 1-72-81 6872 -> 000084FF # 1-72-82 6873 -> 000084F4 # 1-72-83 6874 -> 00008517 # 1-72-84 6875 -> 00008518 # 1-72-85 6876 -> 0000852C # 1-72-86 6877 -> 0000851F # 1-72-87 6878 -> 00008515 # 1-72-88 6879 -> 00008514 # 1-72-89 687A -> 000084FC # 1-72-90 687B -> 00008540 # 1-72-91 687C -> 00008563 # 1-72-92 687D -> 00008558 # 1-72-93 687E -> 00008548 # 1-72-94 6921 -> 00008541 # 1-73-1 6922 -> 00008602 # 1-73-2 6923 -> 0000854B # 1-73-3 6924 -> 00008555 # 1-73-4 6925 -> 00008580 # 1-73-5 6926 -> 000085A4 # 1-73-6 6927 -> 00008588 # 1-73-7 6928 -> 00008591 # 1-73-8 6929 -> 0000858A # 1-73-9 692A -> 000085A8 # 1-73-10 692B -> 0000856D # 1-73-11 692C -> 00008594 # 1-73-12 692D -> 0000859B # 1-73-13 692E -> 000085EA # 1-73-14 692F -> 00008587 # 1-73-15 6930 -> 0000859C # 1-73-16 6931 -> 00008577 # 1-73-17 6932 -> 0000857E # 1-73-18 6933 -> 00008590 # 1-73-19 6934 -> 000085C9 # 1-73-20 6935 -> 000085BA # 1-73-21 6936 -> 000085CF # 1-73-22 6937 -> 000085B9 # 1-73-23 6938 -> 000085D0 # 1-73-24 6939 -> 000085D5 # 1-73-25 693A -> 000085DD # 1-73-26 693B -> 000085E5 # 1-73-27 693C -> 000085DC # 1-73-28 693D -> 000085F9 # 1-73-29 693E -> 0000860A # 1-73-30 693F -> 00008613 # 1-73-31 6940 -> 0000860B # 1-73-32 6941 -> 000085FE # 1-73-33 6942 -> 000085FA # 1-73-34 6943 -> 00008606 # 1-73-35 6944 -> 00008622 # 1-73-36 6945 -> 0000861A # 1-73-37 6946 -> 00008630 # 1-73-38 6947 -> 0000863F # 1-73-39 6948 -> 0000864D # 1-73-40 6949 -> 00004E55 # 1-73-41 694A -> 00008654 # 1-73-42 694B -> 0000865F # 1-73-43 694C -> 00008667 # 1-73-44 694D -> 00008671 # 1-73-45 694E -> 00008693 # 1-73-46 694F -> 000086A3 # 1-73-47 6950 -> 000086A9 # 1-73-48 6951 -> 000086AA # 1-73-49 6952 -> 0000868B # 1-73-50 6953 -> 0000868C # 1-73-51 6954 -> 000086B6 # 1-73-52 6955 -> 000086AF # 1-73-53 6956 -> 000086C4 # 1-73-54 6957 -> 000086C6 # 1-73-55 6958 -> 000086B0 # 1-73-56 6959 -> 000086C9 # 1-73-57 695A -> 00008823 # 1-73-58 695B -> 000086AB # 1-73-59 695C -> 000086D4 # 1-73-60 695D -> 000086DE # 1-73-61 695E -> 000086E9 # 1-73-62 695F -> 000086EC # 1-73-63 6960 -> 000086DF # 1-73-64 6961 -> 000086DB # 1-73-65 6962 -> 000086EF # 1-73-66 6963 -> 00008712 # 1-73-67 6964 -> 00008706 # 1-73-68 6965 -> 00008708 # 1-73-69 6966 -> 00008700 # 1-73-70 6967 -> 00008703 # 1-73-71 6968 -> 000086FB # 1-73-72 6969 -> 00008711 # 1-73-73 696A -> 00008709 # 1-73-74 696B -> 0000870D # 1-73-75 696C -> 000086F9 # 1-73-76 696D -> 0000870A # 1-73-77 696E -> 00008734 # 1-73-78 696F -> 0000873F # 1-73-79 6970 -> 00008737 # 1-73-80 6971 -> 0000873B # 1-73-81 6972 -> 00008725 # 1-73-82 6973 -> 00008729 # 1-73-83 6974 -> 0000871A # 1-73-84 6975 -> 00008760 # 1-73-85 6976 -> 0000875F # 1-73-86 6977 -> 00008778 # 1-73-87 6978 -> 0000874C # 1-73-88 6979 -> 0000874E # 1-73-89 697A -> 00008774 # 1-73-90 697B -> 00008757 # 1-73-91 697C -> 00008768 # 1-73-92 697D -> 0000876E # 1-73-93 697E -> 00008759 # 1-73-94 6A21 -> 00008753 # 1-74-1 6A22 -> 00008763 # 1-74-2 6A23 -> 0000876A # 1-74-3 6A24 -> 00008805 # 1-74-4 6A25 -> 000087A2 # 1-74-5 6A26 -> 0000879F # 1-74-6 6A27 -> 00008782 # 1-74-7 6A28 -> 000087AF # 1-74-8 6A29 -> 000087CB # 1-74-9 6A2A -> 000087BD # 1-74-10 6A2B -> 000087C0 # 1-74-11 6A2C -> 000087D0 # 1-74-12 6A2D -> 000096D6 # 1-74-13 6A2E -> 000087AB # 1-74-14 6A2F -> 000087C4 # 1-74-15 6A30 -> 000087B3 # 1-74-16 6A31 -> 000087C7 # 1-74-17 6A32 -> 000087C6 # 1-74-18 6A33 -> 000087BB # 1-74-19 6A34 -> 000087EF # 1-74-20 6A35 -> 000087F2 # 1-74-21 6A36 -> 000087E0 # 1-74-22 6A37 -> 0000880F # 1-74-23 6A38 -> 0000880D # 1-74-24 6A39 -> 000087FE # 1-74-25 6A3A -> 000087F6 # 1-74-26 6A3B -> 000087F7 # 1-74-27 6A3C -> 0000880E # 1-74-28 6A3D -> 000087D2 # 1-74-29 6A3E -> 00008811 # 1-74-30 6A3F -> 00008816 # 1-74-31 6A40 -> 00008815 # 1-74-32 6A41 -> 00008822 # 1-74-33 6A42 -> 00008821 # 1-74-34 6A43 -> 00008831 # 1-74-35 6A44 -> 00008836 # 1-74-36 6A45 -> 00008839 # 1-74-37 6A46 -> 00008827 # 1-74-38 6A47 -> 0000883B # 1-74-39 6A48 -> 00008844 # 1-74-40 6A49 -> 00008842 # 1-74-41 6A4A -> 00008852 # 1-74-42 6A4B -> 00008859 # 1-74-43 6A4C -> 0000885E # 1-74-44 6A4D -> 00008862 # 1-74-45 6A4E -> 0000886B # 1-74-46 6A4F -> 00008881 # 1-74-47 6A50 -> 0000887E # 1-74-48 6A51 -> 0000889E # 1-74-49 6A52 -> 00008875 # 1-74-50 6A53 -> 0000887D # 1-74-51 6A54 -> 000088B5 # 1-74-52 6A55 -> 00008872 # 1-74-53 6A56 -> 00008882 # 1-74-54 6A57 -> 00008897 # 1-74-55 6A58 -> 00008892 # 1-74-56 6A59 -> 000088AE # 1-74-57 6A5A -> 00008899 # 1-74-58 6A5B -> 000088A2 # 1-74-59 6A5C -> 0000888D # 1-74-60 6A5D -> 000088A4 # 1-74-61 6A5E -> 000088B0 # 1-74-62 6A5F -> 000088BF # 1-74-63 6A60 -> 000088B1 # 1-74-64 6A61 -> 000088C3 # 1-74-65 6A62 -> 000088C4 # 1-74-66 6A63 -> 000088D4 # 1-74-67 6A64 -> 000088D8 # 1-74-68 6A65 -> 000088D9 # 1-74-69 6A66 -> 000088DD # 1-74-70 6A67 -> 000088F9 # 1-74-71 6A68 -> 00008902 # 1-74-72 6A69 -> 000088FC # 1-74-73 6A6A -> 000088F4 # 1-74-74 6A6B -> 000088E8 # 1-74-75 6A6C -> 000088F2 # 1-74-76 6A6D -> 00008904 # 1-74-77 6A6E -> 0000890C # 1-74-78 6A6F -> 0000890A # 1-74-79 6A70 -> 00008913 # 1-74-80 6A71 -> 00008943 # 1-74-81 6A72 -> 0000891E # 1-74-82 6A73 -> 00008925 # 1-74-83 6A74 -> 0000892A # 1-74-84 6A75 -> 0000892B # 1-74-85 6A76 -> 00008941 # 1-74-86 6A77 -> 00008944 # 1-74-87 6A78 -> 0000893B # 1-74-88 6A79 -> 00008936 # 1-74-89 6A7A -> 00008938 # 1-74-90 6A7B -> 0000894C # 1-74-91 6A7C -> 0000891D # 1-74-92 6A7D -> 00008960 # 1-74-93 6A7E -> 0000895E # 1-74-94 6B21 -> 00008966 # 1-75-1 6B22 -> 00008964 # 1-75-2 6B23 -> 0000896D # 1-75-3 6B24 -> 0000896A # 1-75-4 6B25 -> 0000896F # 1-75-5 6B26 -> 00008974 # 1-75-6 6B27 -> 00008977 # 1-75-7 6B28 -> 0000897E # 1-75-8 6B29 -> 00008983 # 1-75-9 6B2A -> 00008988 # 1-75-10 6B2B -> 0000898A # 1-75-11 6B2C -> 00008993 # 1-75-12 6B2D -> 00008998 # 1-75-13 6B2E -> 000089A1 # 1-75-14 6B2F -> 000089A9 # 1-75-15 6B30 -> 000089A6 # 1-75-16 6B31 -> 000089AC # 1-75-17 6B32 -> 000089AF # 1-75-18 6B33 -> 000089B2 # 1-75-19 6B34 -> 000089BA # 1-75-20 6B35 -> 000089BD # 1-75-21 6B36 -> 000089BF # 1-75-22 6B37 -> 000089C0 # 1-75-23 6B38 -> 000089DA # 1-75-24 6B39 -> 000089DC # 1-75-25 6B3A -> 000089DD # 1-75-26 6B3B -> 000089E7 # 1-75-27 6B3C -> 000089F4 # 1-75-28 6B3D -> 000089F8 # 1-75-29 6B3E -> 00008A03 # 1-75-30 6B3F -> 00008A16 # 1-75-31 6B40 -> 00008A10 # 1-75-32 6B41 -> 00008A0C # 1-75-33 6B42 -> 00008A1B # 1-75-34 6B43 -> 00008A1D # 1-75-35 6B44 -> 00008A25 # 1-75-36 6B45 -> 00008A36 # 1-75-37 6B46 -> 00008A41 # 1-75-38 6B47 -> 00008A5B # 1-75-39 6B48 -> 00008A52 # 1-75-40 6B49 -> 00008A46 # 1-75-41 6B4A -> 00008A48 # 1-75-42 6B4B -> 00008A7C # 1-75-43 6B4C -> 00008A6D # 1-75-44 6B4D -> 00008A6C # 1-75-45 6B4E -> 00008A62 # 1-75-46 6B4F -> 00008A85 # 1-75-47 6B50 -> 00008A82 # 1-75-48 6B51 -> 00008A84 # 1-75-49 6B52 -> 00008AA8 # 1-75-50 6B53 -> 00008AA1 # 1-75-51 6B54 -> 00008A91 # 1-75-52 6B55 -> 00008AA5 # 1-75-53 6B56 -> 00008AA6 # 1-75-54 6B57 -> 00008A9A # 1-75-55 6B58 -> 00008AA3 # 1-75-56 6B59 -> 00008AC4 # 1-75-57 6B5A -> 00008ACD # 1-75-58 6B5B -> 00008AC2 # 1-75-59 6B5C -> 00008ADA # 1-75-60 6B5D -> 00008AEB # 1-75-61 6B5E -> 00008AF3 # 1-75-62 6B5F -> 00008AE7 # 1-75-63 6B60 -> 00008AE4 # 1-75-64 6B61 -> 00008AF1 # 1-75-65 6B62 -> 00008B14 # 1-75-66 6B63 -> 00008AE0 # 1-75-67 6B64 -> 00008AE2 # 1-75-68 6B65 -> 00008AF7 # 1-75-69 6B66 -> 00008ADE # 1-75-70 6B67 -> 00008ADB # 1-75-71 6B68 -> 00008B0C # 1-75-72 6B69 -> 00008B07 # 1-75-73 6B6A -> 00008B1A # 1-75-74 6B6B -> 00008AE1 # 1-75-75 6B6C -> 00008B16 # 1-75-76 6B6D -> 00008B10 # 1-75-77 6B6E -> 00008B17 # 1-75-78 6B6F -> 00008B20 # 1-75-79 6B70 -> 00008B33 # 1-75-80 6B71 -> 000097AB # 1-75-81 6B72 -> 00008B26 # 1-75-82 6B73 -> 00008B2B # 1-75-83 6B74 -> 00008B3E # 1-75-84 6B75 -> 00008B28 # 1-75-85 6B76 -> 00008B41 # 1-75-86 6B77 -> 00008B4C # 1-75-87 6B78 -> 00008B4F # 1-75-88 6B79 -> 00008B4E # 1-75-89 6B7A -> 00008B49 # 1-75-90 6B7B -> 00008B56 # 1-75-91 6B7C -> 00008B5B # 1-75-92 6B7D -> 00008B5A # 1-75-93 6B7E -> 00008B6B # 1-75-94 6C21 -> 00008B5F # 1-76-1 6C22 -> 00008B6C # 1-76-2 6C23 -> 00008B6F # 1-76-3 6C24 -> 00008B74 # 1-76-4 6C25 -> 00008B7D # 1-76-5 6C26 -> 00008B80 # 1-76-6 6C27 -> 00008B8C # 1-76-7 6C28 -> 00008B8E # 1-76-8 6C29 -> 00008B92 # 1-76-9 6C2A -> 00008B93 # 1-76-10 6C2B -> 00008B96 # 1-76-11 6C2C -> 00008B99 # 1-76-12 6C2D -> 00008B9A # 1-76-13 6C2E -> 00008C3A # 1-76-14 6C2F -> 00008C41 # 1-76-15 6C30 -> 00008C3F # 1-76-16 6C31 -> 00008C48 # 1-76-17 6C32 -> 00008C4C # 1-76-18 6C33 -> 00008C4E # 1-76-19 6C34 -> 00008C50 # 1-76-20 6C35 -> 00008C55 # 1-76-21 6C36 -> 00008C62 # 1-76-22 6C37 -> 00008C6C # 1-76-23 6C38 -> 00008C78 # 1-76-24 6C39 -> 00008C7A # 1-76-25 6C3A -> 00008C82 # 1-76-26 6C3B -> 00008C89 # 1-76-27 6C3C -> 00008C85 # 1-76-28 6C3D -> 00008C8A # 1-76-29 6C3E -> 00008C8D # 1-76-30 6C3F -> 00008C8E # 1-76-31 6C40 -> 00008C94 # 1-76-32 6C41 -> 00008C7C # 1-76-33 6C42 -> 00008C98 # 1-76-34 6C43 -> 0000621D # 1-76-35 6C44 -> 00008CAD # 1-76-36 6C45 -> 00008CAA # 1-76-37 6C46 -> 00008CBD # 1-76-38 6C47 -> 00008CB2 # 1-76-39 6C48 -> 00008CB3 # 1-76-40 6C49 -> 00008CAE # 1-76-41 6C4A -> 00008CB6 # 1-76-42 6C4B -> 00008CC8 # 1-76-43 6C4C -> 00008CC1 # 1-76-44 6C4D -> 00008CE4 # 1-76-45 6C4E -> 00008CE3 # 1-76-46 6C4F -> 00008CDA # 1-76-47 6C50 -> 00008CFD # 1-76-48 6C51 -> 00008CFA # 1-76-49 6C52 -> 00008CFB # 1-76-50 6C53 -> 00008D04 # 1-76-51 6C54 -> 00008D05 # 1-76-52 6C55 -> 00008D0A # 1-76-53 6C56 -> 00008D07 # 1-76-54 6C57 -> 00008D0F # 1-76-55 6C58 -> 00008D0D # 1-76-56 6C59 -> 00008D10 # 1-76-57 6C5A -> 00009F4E # 1-76-58 6C5B -> 00008D13 # 1-76-59 6C5C -> 00008CCD # 1-76-60 6C5D -> 00008D14 # 1-76-61 6C5E -> 00008D16 # 1-76-62 6C5F -> 00008D67 # 1-76-63 6C60 -> 00008D6D # 1-76-64 6C61 -> 00008D71 # 1-76-65 6C62 -> 00008D73 # 1-76-66 6C63 -> 00008D81 # 1-76-67 6C64 -> 00008D99 # 1-76-68 6C65 -> 00008DC2 # 1-76-69 6C66 -> 00008DBE # 1-76-70 6C67 -> 00008DBA # 1-76-71 6C68 -> 00008DCF # 1-76-72 6C69 -> 00008DDA # 1-76-73 6C6A -> 00008DD6 # 1-76-74 6C6B -> 00008DCC # 1-76-75 6C6C -> 00008DDB # 1-76-76 6C6D -> 00008DCB # 1-76-77 6C6E -> 00008DEA # 1-76-78 6C6F -> 00008DEB # 1-76-79 6C70 -> 00008DDF # 1-76-80 6C71 -> 00008DE3 # 1-76-81 6C72 -> 00008DFC # 1-76-82 6C73 -> 00008E08 # 1-76-83 6C74 -> 00008E09 # 1-76-84 6C75 -> 00008DFF # 1-76-85 6C76 -> 00008E1D # 1-76-86 6C77 -> 00008E1E # 1-76-87 6C78 -> 00008E10 # 1-76-88 6C79 -> 00008E1F # 1-76-89 6C7A -> 00008E42 # 1-76-90 6C7B -> 00008E35 # 1-76-91 6C7C -> 00008E30 # 1-76-92 6C7D -> 00008E34 # 1-76-93 6C7E -> 00008E4A # 1-76-94 6D21 -> 00008E47 # 1-77-1 6D22 -> 00008E49 # 1-77-2 6D23 -> 00008E4C # 1-77-3 6D24 -> 00008E50 # 1-77-4 6D25 -> 00008E48 # 1-77-5 6D26 -> 00008E59 # 1-77-6 6D27 -> 00008E64 # 1-77-7 6D28 -> 00008E60 # 1-77-8 6D29 -> 00008E2A # 1-77-9 6D2A -> 00008E63 # 1-77-10 6D2B -> 00008E55 # 1-77-11 6D2C -> 00008E76 # 1-77-12 6D2D -> 00008E72 # 1-77-13 6D2E -> 00008E7C # 1-77-14 6D2F -> 00008E81 # 1-77-15 6D30 -> 00008E87 # 1-77-16 6D31 -> 00008E85 # 1-77-17 6D32 -> 00008E84 # 1-77-18 6D33 -> 00008E8B # 1-77-19 6D34 -> 00008E8A # 1-77-20 6D35 -> 00008E93 # 1-77-21 6D36 -> 00008E91 # 1-77-22 6D37 -> 00008E94 # 1-77-23 6D38 -> 00008E99 # 1-77-24 6D39 -> 00008EAA # 1-77-25 6D3A -> 00008EA1 # 1-77-26 6D3B -> 00008EAC # 1-77-27 6D3C -> 00008EB0 # 1-77-28 6D3D -> 00008EC6 # 1-77-29 6D3E -> 00008EB1 # 1-77-30 6D3F -> 00008EBE # 1-77-31 6D40 -> 00008EC5 # 1-77-32 6D41 -> 00008EC8 # 1-77-33 6D42 -> 00008ECB # 1-77-34 6D43 -> 00008EDB # 1-77-35 6D44 -> 00008EE3 # 1-77-36 6D45 -> 00008EFC # 1-77-37 6D46 -> 00008EFB # 1-77-38 6D47 -> 00008EEB # 1-77-39 6D48 -> 00008EFE # 1-77-40 6D49 -> 00008F0A # 1-77-41 6D4A -> 00008F05 # 1-77-42 6D4B -> 00008F15 # 1-77-43 6D4C -> 00008F12 # 1-77-44 6D4D -> 00008F19 # 1-77-45 6D4E -> 00008F13 # 1-77-46 6D4F -> 00008F1C # 1-77-47 6D50 -> 00008F1F # 1-77-48 6D51 -> 00008F1B # 1-77-49 6D52 -> 00008F0C # 1-77-50 6D53 -> 00008F26 # 1-77-51 6D54 -> 00008F33 # 1-77-52 6D55 -> 00008F3B # 1-77-53 6D56 -> 00008F39 # 1-77-54 6D57 -> 00008F45 # 1-77-55 6D58 -> 00008F42 # 1-77-56 6D59 -> 00008F3E # 1-77-57 6D5A -> 00008F4C # 1-77-58 6D5B -> 00008F49 # 1-77-59 6D5C -> 00008F46 # 1-77-60 6D5D -> 00008F4E # 1-77-61 6D5E -> 00008F57 # 1-77-62 6D5F -> 00008F5C # 1-77-63 6D60 -> 00008F62 # 1-77-64 6D61 -> 00008F63 # 1-77-65 6D62 -> 00008F64 # 1-77-66 6D63 -> 00008F9C # 1-77-67 6D64 -> 00008F9F # 1-77-68 6D65 -> 00008FA3 # 1-77-69 6D66 -> 00008FAD # 1-77-70 6D67 -> 00008FAF # 1-77-71 6D68 -> 00008FB7 # 1-77-72 6D69 -> 00008FDA # 1-77-73 6D6A -> 00008FE5 # 1-77-74 6D6B -> 00008FE2 # 1-77-75 6D6C -> 00008FEA # 1-77-76 6D6D -> 00008FEF # 1-77-77 6D6E -> 00009087 # 1-77-78 6D6F -> 00008FF4 # 1-77-79 6D70 -> 00009005 # 1-77-80 6D71 -> 00008FF9 # 1-77-81 6D72 -> 00008FFA # 1-77-82 6D73 -> 00009011 # 1-77-83 6D74 -> 00009015 # 1-77-84 6D75 -> 00009021 # 1-77-85 6D76 -> 0000900D # 1-77-86 6D77 -> 0000901E # 1-77-87 6D78 -> 00009016 # 1-77-88 6D79 -> 0000900B # 1-77-89 6D7A -> 00009027 # 1-77-90 6D7B -> 00009036 # 1-77-91 6D7C -> 00009035 # 1-77-92 6D7D -> 00009039 # 1-77-93 6D7E -> 00008FF8 # 1-77-94 6E21 -> 0000904F # 1-78-1 6E22 -> 00009050 # 1-78-2 6E23 -> 00009051 # 1-78-3 6E24 -> 00009052 # 1-78-4 6E25 -> 0000900E # 1-78-5 6E26 -> 00009049 # 1-78-6 6E27 -> 0000903E # 1-78-7 6E28 -> 00009056 # 1-78-8 6E29 -> 00009058 # 1-78-9 6E2A -> 0000905E # 1-78-10 6E2B -> 00009068 # 1-78-11 6E2C -> 0000906F # 1-78-12 6E2D -> 00009076 # 1-78-13 6E2E -> 000096A8 # 1-78-14 6E2F -> 00009072 # 1-78-15 6E30 -> 00009082 # 1-78-16 6E31 -> 0000907D # 1-78-17 6E32 -> 00009081 # 1-78-18 6E33 -> 00009080 # 1-78-19 6E34 -> 0000908A # 1-78-20 6E35 -> 00009089 # 1-78-21 6E36 -> 0000908F # 1-78-22 6E37 -> 000090A8 # 1-78-23 6E38 -> 000090AF # 1-78-24 6E39 -> 000090B1 # 1-78-25 6E3A -> 000090B5 # 1-78-26 6E3B -> 000090E2 # 1-78-27 6E3C -> 000090E4 # 1-78-28 6E3D -> 00006248 # 1-78-29 6E3E -> 000090DB # 1-78-30 6E3F -> 00009102 # 1-78-31 6E40 -> 00009112 # 1-78-32 6E41 -> 00009119 # 1-78-33 6E42 -> 00009132 # 1-78-34 6E43 -> 00009130 # 1-78-35 6E44 -> 0000914A # 1-78-36 6E45 -> 00009156 # 1-78-37 6E46 -> 00009158 # 1-78-38 6E47 -> 00009163 # 1-78-39 6E48 -> 00009165 # 1-78-40 6E49 -> 00009169 # 1-78-41 6E4A -> 00009173 # 1-78-42 6E4B -> 00009172 # 1-78-43 6E4C -> 0000918B # 1-78-44 6E4D -> 00009189 # 1-78-45 6E4E -> 00009182 # 1-78-46 6E4F -> 000091A2 # 1-78-47 6E50 -> 000091AB # 1-78-48 6E51 -> 000091AF # 1-78-49 6E52 -> 000091AA # 1-78-50 6E53 -> 000091B5 # 1-78-51 6E54 -> 000091B4 # 1-78-52 6E55 -> 000091BA # 1-78-53 6E56 -> 000091C0 # 1-78-54 6E57 -> 000091C1 # 1-78-55 6E58 -> 000091C9 # 1-78-56 6E59 -> 000091CB # 1-78-57 6E5A -> 000091D0 # 1-78-58 6E5B -> 000091D6 # 1-78-59 6E5C -> 000091DF # 1-78-60 6E5D -> 000091E1 # 1-78-61 6E5E -> 000091DB # 1-78-62 6E5F -> 000091FC # 1-78-63 6E60 -> 000091F5 # 1-78-64 6E61 -> 000091F6 # 1-78-65 6E62 -> 0000921E # 1-78-66 6E63 -> 000091FF # 1-78-67 6E64 -> 00009214 # 1-78-68 6E65 -> 0000922C # 1-78-69 6E66 -> 00009215 # 1-78-70 6E67 -> 00009211 # 1-78-71 6E68 -> 0000925E # 1-78-72 6E69 -> 00009257 # 1-78-73 6E6A -> 00009245 # 1-78-74 6E6B -> 00009249 # 1-78-75 6E6C -> 00009264 # 1-78-76 6E6D -> 00009248 # 1-78-77 6E6E -> 00009295 # 1-78-78 6E6F -> 0000923F # 1-78-79 6E70 -> 0000924B # 1-78-80 6E71 -> 00009250 # 1-78-81 6E72 -> 0000929C # 1-78-82 6E73 -> 00009296 # 1-78-83 6E74 -> 00009293 # 1-78-84 6E75 -> 0000929B # 1-78-85 6E76 -> 0000925A # 1-78-86 6E77 -> 000092CF # 1-78-87 6E78 -> 000092B9 # 1-78-88 6E79 -> 000092B7 # 1-78-89 6E7A -> 000092E9 # 1-78-90 6E7B -> 0000930F # 1-78-91 6E7C -> 000092FA # 1-78-92 6E7D -> 00009344 # 1-78-93 6E7E -> 0000932E # 1-78-94 6F21 -> 00009319 # 1-79-1 6F22 -> 00009322 # 1-79-2 6F23 -> 0000931A # 1-79-3 6F24 -> 00009323 # 1-79-4 6F25 -> 0000933A # 1-79-5 6F26 -> 00009335 # 1-79-6 6F27 -> 0000933B # 1-79-7 6F28 -> 0000935C # 1-79-8 6F29 -> 00009360 # 1-79-9 6F2A -> 0000937C # 1-79-10 6F2B -> 0000936E # 1-79-11 6F2C -> 00009356 # 1-79-12 6F2D -> 000093B0 # 1-79-13 6F2E -> 000093AC # 1-79-14 6F2F -> 000093AD # 1-79-15 6F30 -> 00009394 # 1-79-16 6F31 -> 000093B9 # 1-79-17 6F32 -> 000093D6 # 1-79-18 6F33 -> 000093D7 # 1-79-19 6F34 -> 000093E8 # 1-79-20 6F35 -> 000093E5 # 1-79-21 6F36 -> 000093D8 # 1-79-22 6F37 -> 000093C3 # 1-79-23 6F38 -> 000093DD # 1-79-24 6F39 -> 000093D0 # 1-79-25 6F3A -> 000093C8 # 1-79-26 6F3B -> 000093E4 # 1-79-27 6F3C -> 0000941A # 1-79-28 6F3D -> 00009414 # 1-79-29 6F3E -> 00009413 # 1-79-30 6F3F -> 00009403 # 1-79-31 6F40 -> 00009407 # 1-79-32 6F41 -> 00009410 # 1-79-33 6F42 -> 00009436 # 1-79-34 6F43 -> 0000942B # 1-79-35 6F44 -> 00009435 # 1-79-36 6F45 -> 00009421 # 1-79-37 6F46 -> 0000943A # 1-79-38 6F47 -> 00009441 # 1-79-39 6F48 -> 00009452 # 1-79-40 6F49 -> 00009444 # 1-79-41 6F4A -> 0000945B # 1-79-42 6F4B -> 00009460 # 1-79-43 6F4C -> 00009462 # 1-79-44 6F4D -> 0000945E # 1-79-45 6F4E -> 0000946A # 1-79-46 6F4F -> 00009229 # 1-79-47 6F50 -> 00009470 # 1-79-48 6F51 -> 00009475 # 1-79-49 6F52 -> 00009477 # 1-79-50 6F53 -> 0000947D # 1-79-51 6F54 -> 0000945A # 1-79-52 6F55 -> 0000947C # 1-79-53 6F56 -> 0000947E # 1-79-54 6F57 -> 00009481 # 1-79-55 6F58 -> 0000947F # 1-79-56 6F59 -> 00009582 # 1-79-57 6F5A -> 00009587 # 1-79-58 6F5B -> 0000958A # 1-79-59 6F5C -> 00009594 # 1-79-60 6F5D -> 00009596 # 1-79-61 6F5E -> 00009598 # 1-79-62 6F5F -> 00009599 # 1-79-63 6F60 -> 000095A0 # 1-79-64 6F61 -> 000095A8 # 1-79-65 6F62 -> 000095A7 # 1-79-66 6F63 -> 000095AD # 1-79-67 6F64 -> 000095BC # 1-79-68 6F65 -> 000095BB # 1-79-69 6F66 -> 000095B9 # 1-79-70 6F67 -> 000095BE # 1-79-71 6F68 -> 000095CA # 1-79-72 6F69 -> 00006FF6 # 1-79-73 6F6A -> 000095C3 # 1-79-74 6F6B -> 000095CD # 1-79-75 6F6C -> 000095CC # 1-79-76 6F6D -> 000095D5 # 1-79-77 6F6E -> 000095D4 # 1-79-78 6F6F -> 000095D6 # 1-79-79 6F70 -> 000095DC # 1-79-80 6F71 -> 000095E1 # 1-79-81 6F72 -> 000095E5 # 1-79-82 6F73 -> 000095E2 # 1-79-83 6F74 -> 00009621 # 1-79-84 6F75 -> 00009628 # 1-79-85 6F76 -> 0000962E # 1-79-86 6F77 -> 0000962F # 1-79-87 6F78 -> 00009642 # 1-79-88 6F79 -> 0000964C # 1-79-89 6F7A -> 0000964F # 1-79-90 6F7B -> 0000964B # 1-79-91 6F7C -> 00009677 # 1-79-92 6F7D -> 0000965C # 1-79-93 6F7E -> 0000965E # 1-79-94 7021 -> 0000965D # 1-80-1 7022 -> 0000965F # 1-80-2 7023 -> 00009666 # 1-80-3 7024 -> 00009672 # 1-80-4 7025 -> 0000966C # 1-80-5 7026 -> 0000968D # 1-80-6 7027 -> 00009698 # 1-80-7 7028 -> 00009695 # 1-80-8 7029 -> 00009697 # 1-80-9 702A -> 000096AA # 1-80-10 702B -> 000096A7 # 1-80-11 702C -> 000096B1 # 1-80-12 702D -> 000096B2 # 1-80-13 702E -> 000096B0 # 1-80-14 702F -> 000096B4 # 1-80-15 7030 -> 000096B6 # 1-80-16 7031 -> 000096B8 # 1-80-17 7032 -> 000096B9 # 1-80-18 7033 -> 000096CE # 1-80-19 7034 -> 000096CB # 1-80-20 7035 -> 000096C9 # 1-80-21 7036 -> 000096CD # 1-80-22 7037 -> 0000894D # 1-80-23 7038 -> 000096DC # 1-80-24 7039 -> 0000970D # 1-80-25 703A -> 000096D5 # 1-80-26 703B -> 000096F9 # 1-80-27 703C -> 00009704 # 1-80-28 703D -> 00009706 # 1-80-29 703E -> 00009708 # 1-80-30 703F -> 00009713 # 1-80-31 7040 -> 0000970E # 1-80-32 7041 -> 00009711 # 1-80-33 7042 -> 0000970F # 1-80-34 7043 -> 00009716 # 1-80-35 7044 -> 00009719 # 1-80-36 7045 -> 00009724 # 1-80-37 7046 -> 0000972A # 1-80-38 7047 -> 00009730 # 1-80-39 7048 -> 00009739 # 1-80-40 7049 -> 0000973D # 1-80-41 704A -> 0000973E # 1-80-42 704B -> 00009744 # 1-80-43 704C -> 00009746 # 1-80-44 704D -> 00009748 # 1-80-45 704E -> 00009742 # 1-80-46 704F -> 00009749 # 1-80-47 7050 -> 0000975C # 1-80-48 7051 -> 00009760 # 1-80-49 7052 -> 00009764 # 1-80-50 7053 -> 00009766 # 1-80-51 7054 -> 00009768 # 1-80-52 7055 -> 000052D2 # 1-80-53 7056 -> 0000976B # 1-80-54 7057 -> 00009771 # 1-80-55 7058 -> 00009779 # 1-80-56 7059 -> 00009785 # 1-80-57 705A -> 0000977C # 1-80-58 705B -> 00009781 # 1-80-59 705C -> 0000977A # 1-80-60 705D -> 00009786 # 1-80-61 705E -> 0000978B # 1-80-62 705F -> 0000978F # 1-80-63 7060 -> 00009790 # 1-80-64 7061 -> 0000979C # 1-80-65 7062 -> 000097A8 # 1-80-66 7063 -> 000097A6 # 1-80-67 7064 -> 000097A3 # 1-80-68 7065 -> 000097B3 # 1-80-69 7066 -> 000097B4 # 1-80-70 7067 -> 000097C3 # 1-80-71 7068 -> 000097C6 # 1-80-72 7069 -> 000097C8 # 1-80-73 706A -> 000097CB # 1-80-74 706B -> 000097DC # 1-80-75 706C -> 000097ED # 1-80-76 706D -> 00009F4F # 1-80-77 706E -> 000097F2 # 1-80-78 706F -> 00007ADF # 1-80-79 7070 -> 000097F6 # 1-80-80 7071 -> 000097F5 # 1-80-81 7072 -> 0000980F # 1-80-82 7073 -> 0000980C # 1-80-83 7074 -> 00009838 # 1-80-84 7075 -> 00009824 # 1-80-85 7076 -> 00009821 # 1-80-86 7077 -> 00009837 # 1-80-87 7078 -> 0000983D # 1-80-88 7079 -> 00009846 # 1-80-89 707A -> 0000984F # 1-80-90 707B -> 0000984B # 1-80-91 707C -> 0000986B # 1-80-92 707D -> 0000986F # 1-80-93 707E -> 00009870 # 1-80-94 7121 -> 00009871 # 1-81-1 7122 -> 00009874 # 1-81-2 7123 -> 00009873 # 1-81-3 7124 -> 000098AA # 1-81-4 7125 -> 000098AF # 1-81-5 7126 -> 000098B1 # 1-81-6 7127 -> 000098B6 # 1-81-7 7128 -> 000098C4 # 1-81-8 7129 -> 000098C3 # 1-81-9 712A -> 000098C6 # 1-81-10 712B -> 000098E9 # 1-81-11 712C -> 000098EB # 1-81-12 712D -> 00009903 # 1-81-13 712E -> 00009909 # 1-81-14 712F -> 00009912 # 1-81-15 7130 -> 00009914 # 1-81-16 7131 -> 00009918 # 1-81-17 7132 -> 00009921 # 1-81-18 7133 -> 0000991D # 1-81-19 7134 -> 0000991E # 1-81-20 7135 -> 00009924 # 1-81-21 7136 -> 00009920 # 1-81-22 7137 -> 0000992C # 1-81-23 7138 -> 0000992E # 1-81-24 7139 -> 0000993D # 1-81-25 713A -> 0000993E # 1-81-26 713B -> 00009942 # 1-81-27 713C -> 00009949 # 1-81-28 713D -> 00009945 # 1-81-29 713E -> 00009950 # 1-81-30 713F -> 0000994B # 1-81-31 7140 -> 00009951 # 1-81-32 7141 -> 00009952 # 1-81-33 7142 -> 0000994C # 1-81-34 7143 -> 00009955 # 1-81-35 7144 -> 00009997 # 1-81-36 7145 -> 00009998 # 1-81-37 7146 -> 000099A5 # 1-81-38 7147 -> 000099AD # 1-81-39 7148 -> 000099AE # 1-81-40 7149 -> 000099BC # 1-81-41 714A -> 000099DF # 1-81-42 714B -> 000099DB # 1-81-43 714C -> 000099DD # 1-81-44 714D -> 000099D8 # 1-81-45 714E -> 000099D1 # 1-81-46 714F -> 000099ED # 1-81-47 7150 -> 000099EE # 1-81-48 7151 -> 000099F1 # 1-81-49 7152 -> 000099F2 # 1-81-50 7153 -> 000099FB # 1-81-51 7154 -> 000099F8 # 1-81-52 7155 -> 00009A01 # 1-81-53 7156 -> 00009A0F # 1-81-54 7157 -> 00009A05 # 1-81-55 7158 -> 000099E2 # 1-81-56 7159 -> 00009A19 # 1-81-57 715A -> 00009A2B # 1-81-58 715B -> 00009A37 # 1-81-59 715C -> 00009A45 # 1-81-60 715D -> 00009A42 # 1-81-61 715E -> 00009A40 # 1-81-62 715F -> 00009A43 # 1-81-63 7160 -> 00009A3E # 1-81-64 7161 -> 00009A55 # 1-81-65 7162 -> 00009A4D # 1-81-66 7163 -> 00009A5B # 1-81-67 7164 -> 00009A57 # 1-81-68 7165 -> 00009A5F # 1-81-69 7166 -> 00009A62 # 1-81-70 7167 -> 00009A65 # 1-81-71 7168 -> 00009A64 # 1-81-72 7169 -> 00009A69 # 1-81-73 716A -> 00009A6B # 1-81-74 716B -> 00009A6A # 1-81-75 716C -> 00009AAD # 1-81-76 716D -> 00009AB0 # 1-81-77 716E -> 00009ABC # 1-81-78 716F -> 00009AC0 # 1-81-79 7170 -> 00009ACF # 1-81-80 7171 -> 00009AD1 # 1-81-81 7172 -> 00009AD3 # 1-81-82 7173 -> 00009AD4 # 1-81-83 7174 -> 00009ADE # 1-81-84 7175 -> 00009ADF # 1-81-85 7176 -> 00009AE2 # 1-81-86 7177 -> 00009AE3 # 1-81-87 7178 -> 00009AE6 # 1-81-88 7179 -> 00009AEF # 1-81-89 717A -> 00009AEB # 1-81-90 717B -> 00009AEE # 1-81-91 717C -> 00009AF4 # 1-81-92 717D -> 00009AF1 # 1-81-93 717E -> 00009AF7 # 1-81-94 7221 -> 00009AFB # 1-82-1 7222 -> 00009B06 # 1-82-2 7223 -> 00009B18 # 1-82-3 7224 -> 00009B1A # 1-82-4 7225 -> 00009B1F # 1-82-5 7226 -> 00009B22 # 1-82-6 7227 -> 00009B23 # 1-82-7 7228 -> 00009B25 # 1-82-8 7229 -> 00009B27 # 1-82-9 722A -> 00009B28 # 1-82-10 722B -> 00009B29 # 1-82-11 722C -> 00009B2A # 1-82-12 722D -> 00009B2E # 1-82-13 722E -> 00009B2F # 1-82-14 722F -> 00009B32 # 1-82-15 7230 -> 00009B44 # 1-82-16 7231 -> 00009B43 # 1-82-17 7232 -> 00009B4F # 1-82-18 7233 -> 00009B4D # 1-82-19 7234 -> 00009B4E # 1-82-20 7235 -> 00009B51 # 1-82-21 7236 -> 00009B58 # 1-82-22 7237 -> 00009B74 # 1-82-23 7238 -> 00009B93 # 1-82-24 7239 -> 00009B83 # 1-82-25 723A -> 00009B91 # 1-82-26 723B -> 00009B96 # 1-82-27 723C -> 00009B97 # 1-82-28 723D -> 00009B9F # 1-82-29 723E -> 00009BA0 # 1-82-30 723F -> 00009BA8 # 1-82-31 7240 -> 00009BB4 # 1-82-32 7241 -> 00009BC0 # 1-82-33 7242 -> 00009BCA # 1-82-34 7243 -> 00009BB9 # 1-82-35 7244 -> 00009BC6 # 1-82-36 7245 -> 00009BCF # 1-82-37 7246 -> 00009BD1 # 1-82-38 7247 -> 00009BD2 # 1-82-39 7248 -> 00009BE3 # 1-82-40 7249 -> 00009BE2 # 1-82-41 724A -> 00009BE4 # 1-82-42 724B -> 00009BD4 # 1-82-43 724C -> 00009BE1 # 1-82-44 724D -> 00009C3A # 1-82-45 724E -> 00009BF2 # 1-82-46 724F -> 00009BF1 # 1-82-47 7250 -> 00009BF0 # 1-82-48 7251 -> 00009C15 # 1-82-49 7252 -> 00009C14 # 1-82-50 7253 -> 00009C09 # 1-82-51 7254 -> 00009C13 # 1-82-52 7255 -> 00009C0C # 1-82-53 7256 -> 00009C06 # 1-82-54 7257 -> 00009C08 # 1-82-55 7258 -> 00009C12 # 1-82-56 7259 -> 00009C0A # 1-82-57 725A -> 00009C04 # 1-82-58 725B -> 00009C2E # 1-82-59 725C -> 00009C1B # 1-82-60 725D -> 00009C25 # 1-82-61 725E -> 00009C24 # 1-82-62 725F -> 00009C21 # 1-82-63 7260 -> 00009C30 # 1-82-64 7261 -> 00009C47 # 1-82-65 7262 -> 00009C32 # 1-82-66 7263 -> 00009C46 # 1-82-67 7264 -> 00009C3E # 1-82-68 7265 -> 00009C5A # 1-82-69 7266 -> 00009C60 # 1-82-70 7267 -> 00009C67 # 1-82-71 7268 -> 00009C76 # 1-82-72 7269 -> 00009C78 # 1-82-73 726A -> 00009CE7 # 1-82-74 726B -> 00009CEC # 1-82-75 726C -> 00009CF0 # 1-82-76 726D -> 00009D09 # 1-82-77 726E -> 00009D08 # 1-82-78 726F -> 00009CEB # 1-82-79 7270 -> 00009D03 # 1-82-80 7271 -> 00009D06 # 1-82-81 7272 -> 00009D2A # 1-82-82 7273 -> 00009D26 # 1-82-83 7274 -> 00009DAF # 1-82-84 7275 -> 00009D23 # 1-82-85 7276 -> 00009D1F # 1-82-86 7277 -> 00009D44 # 1-82-87 7278 -> 00009D15 # 1-82-88 7279 -> 00009D12 # 1-82-89 727A -> 00009D41 # 1-82-90 727B -> 00009D3F # 1-82-91 727C -> 00009D3E # 1-82-92 727D -> 00009D46 # 1-82-93 727E -> 00009D48 # 1-82-94 7321 -> 00009D5D # 1-83-1 7322 -> 00009D5E # 1-83-2 7323 -> 00009D64 # 1-83-3 7324 -> 00009D51 # 1-83-4 7325 -> 00009D50 # 1-83-5 7326 -> 00009D59 # 1-83-6 7327 -> 00009D72 # 1-83-7 7328 -> 00009D89 # 1-83-8 7329 -> 00009D87 # 1-83-9 732A -> 00009DAB # 1-83-10 732B -> 00009D6F # 1-83-11 732C -> 00009D7A # 1-83-12 732D -> 00009D9A # 1-83-13 732E -> 00009DA4 # 1-83-14 732F -> 00009DA9 # 1-83-15 7330 -> 00009DB2 # 1-83-16 7331 -> 00009DC4 # 1-83-17 7332 -> 00009DC1 # 1-83-18 7333 -> 00009DBB # 1-83-19 7334 -> 00009DB8 # 1-83-20 7335 -> 00009DBA # 1-83-21 7336 -> 00009DC6 # 1-83-22 7337 -> 00009DCF # 1-83-23 7338 -> 00009DC2 # 1-83-24 7339 -> 00009DD9 # 1-83-25 733A -> 00009DD3 # 1-83-26 733B -> 00009DF8 # 1-83-27 733C -> 00009DE6 # 1-83-28 733D -> 00009DED # 1-83-29 733E -> 00009DEF # 1-83-30 733F -> 00009DFD # 1-83-31 7340 -> 00009E1A # 1-83-32 7341 -> 00009E1B # 1-83-33 7342 -> 00009E1E # 1-83-34 7343 -> 00009E75 # 1-83-35 7344 -> 00009E79 # 1-83-36 7345 -> 00009E7D # 1-83-37 7346 -> 00009E81 # 1-83-38 7347 -> 00009E88 # 1-83-39 7348 -> 00009E8B # 1-83-40 7349 -> 00009E8C # 1-83-41 734A -> 00009E92 # 1-83-42 734B -> 00009E95 # 1-83-43 734C -> 00009E91 # 1-83-44 734D -> 00009E9D # 1-83-45 734E -> 00009EA5 # 1-83-46 734F -> 00009EA9 # 1-83-47 7350 -> 00009EB8 # 1-83-48 7351 -> 00009EAA # 1-83-49 7352 -> 00009EAD # 1-83-50 7353 -> 00009761 # 1-83-51 7354 -> 00009ECC # 1-83-52 7355 -> 00009ECE # 1-83-53 7356 -> 00009ECF # 1-83-54 7357 -> 00009ED0 # 1-83-55 7358 -> 00009ED4 # 1-83-56 7359 -> 00009EDC # 1-83-57 735A -> 00009EDE # 1-83-58 735B -> 00009EDD # 1-83-59 735C -> 00009EE0 # 1-83-60 735D -> 00009EE5 # 1-83-61 735E -> 00009EE8 # 1-83-62 735F -> 00009EEF # 1-83-63 7360 -> 00009EF4 # 1-83-64 7361 -> 00009EF6 # 1-83-65 7362 -> 00009EF7 # 1-83-66 7363 -> 00009EF9 # 1-83-67 7364 -> 00009EFB # 1-83-68 7365 -> 00009EFC # 1-83-69 7366 -> 00009EFD # 1-83-70 7367 -> 00009F07 # 1-83-71 7368 -> 00009F08 # 1-83-72 7369 -> 000076B7 # 1-83-73 736A -> 00009F15 # 1-83-74 736B -> 00009F21 # 1-83-75 736C -> 00009F2C # 1-83-76 736D -> 00009F3E # 1-83-77 736E -> 00009F4A # 1-83-78 736F -> 00009F52 # 1-83-79 7370 -> 00009F54 # 1-83-80 7371 -> 00009F63 # 1-83-81 7372 -> 00009F5F # 1-83-82 7373 -> 00009F60 # 1-83-83 7374 -> 00009F61 # 1-83-84 7375 -> 00009F66 # 1-83-85 7376 -> 00009F67 # 1-83-86 7377 -> 00009F6C # 1-83-87 7378 -> 00009F6A # 1-83-88 7379 -> 00009F77 # 1-83-89 737A -> 00009F72 # 1-83-90 737B -> 00009F76 # 1-83-91 737C -> 00009F95 # 1-83-92 737D -> 00009F9C # 1-83-93 737E -> 00009FA0 # 1-83-94 7421 -> 0000582F # 1-84-1 7422 -> 000069C7 # 1-84-2 7423 -> 00009059 # 1-84-3 7424 -> 00007464 # 1-84-4 7425 -> 000051DC # 1-84-5 7426 -> 00007199 # 1-84-6 7428 -> 00005DE2 # 1-84-8 7429 -> 00005E14 # 1-84-9 742A -> 00005E18 # 1-84-10 742B -> 00005E58 # 1-84-11 742C -> 00005E5E # 1-84-12 742D -> 00005EBE # 1-84-13 742E -> 0000F928 # 1-84-14 742F -> 00005ECB # 1-84-15 7430 -> 00005EF9 # 1-84-16 7431 -> 00005F00 # 1-84-17 7432 -> 00005F02 # 1-84-18 7433 -> 00005F07 # 1-84-19 7434 -> 00005F1D # 1-84-20 7435 -> 00005F23 # 1-84-21 7436 -> 00005F34 # 1-84-22 7437 -> 00005F36 # 1-84-23 7438 -> 00005F3D # 1-84-24 7439 -> 00005F40 # 1-84-25 743A -> 00005F45 # 1-84-26 743B -> 00005F54 # 1-84-27 743C -> 00005F58 # 1-84-28 743D -> 00005F64 # 1-84-29 743E -> 00005F67 # 1-84-30 743F -> 00005F7D # 1-84-31 7440 -> 00005F89 # 1-84-32 7441 -> 00005F9C # 1-84-33 7442 -> 00005FA7 # 1-84-34 7443 -> 00005FAF # 1-84-35 7444 -> 00005FB5 # 1-84-36 7445 -> 00005FB7 # 1-84-37 7446 -> 00005FC9 # 1-84-38 7447 -> 00005FDE # 1-84-39 7448 -> 00005FE1 # 1-84-40 7449 -> 00005FE9 # 1-84-41 744A -> 0000600D # 1-84-42 744B -> 00006014 # 1-84-43 744C -> 00006018 # 1-84-44 744D -> 00006033 # 1-84-45 744E -> 00006035 # 1-84-46 744F -> 00006047 # 1-84-47 7450 -> 0000FA3D # 1-84-48 7451 -> 0000609D # 1-84-49 7452 -> 0000609E # 1-84-50 7453 -> 000060CB # 1-84-51 7454 -> 000060D4 # 1-84-52 7455 -> 000060D5 # 1-84-53 7456 -> 000060DD # 1-84-54 7457 -> 000060F8 # 1-84-55 7458 -> 0000611C # 1-84-56 7459 -> 0000612B # 1-84-57 745A -> 00006130 # 1-84-58 745B -> 00006137 # 1-84-59 745C -> 0000FA3E # 1-84-60 745D -> 0000618D # 1-84-61 745E -> 0000FA3F # 1-84-62 745F -> 000061BC # 1-84-63 7460 -> 000061B9 # 1-84-64 7461 -> 0000FA40 # 1-84-65 7462 -> 00006222 # 1-84-66 7463 -> 0000623E # 1-84-67 7464 -> 00006243 # 1-84-68 7465 -> 00006256 # 1-84-69 7466 -> 0000625A # 1-84-70 7467 -> 0000626F # 1-84-71 7468 -> 00006285 # 1-84-72 7469 -> 000062C4 # 1-84-73 746A -> 000062D6 # 1-84-74 746B -> 000062FC # 1-84-75 746C -> 0000630A # 1-84-76 746D -> 00006318 # 1-84-77 746E -> 00006339 # 1-84-78 746F -> 00006343 # 1-84-79 7470 -> 00006365 # 1-84-80 7471 -> 0000637C # 1-84-81 7472 -> 000063E5 # 1-84-82 7473 -> 000063ED # 1-84-83 7474 -> 000063F5 # 1-84-84 7475 -> 00006410 # 1-84-85 7476 -> 00006414 # 1-84-86 7477 -> 00006422 # 1-84-87 7478 -> 00006479 # 1-84-88 7479 -> 00006451 # 1-84-89 747A -> 00006460 # 1-84-90 747B -> 0000646D # 1-84-91 747C -> 000064CE # 1-84-92 747D -> 000064BE # 1-84-93 747E -> 000064BF # 1-84-94 7521 -> 000064C4 # 1-85-1 7522 -> 000064CA # 1-85-2 7523 -> 000064D0 # 1-85-3 7524 -> 000064F7 # 1-85-4 7525 -> 000064FB # 1-85-5 7526 -> 00006522 # 1-85-6 7527 -> 00006529 # 1-85-7 7528 -> 0000FA41 # 1-85-8 7529 -> 00006567 # 1-85-9 752A -> 0000659D # 1-85-10 752B -> 0000FA42 # 1-85-11 752C -> 00006600 # 1-85-12 752D -> 00006609 # 1-85-13 752E -> 00006615 # 1-85-14 752F -> 0000661E # 1-85-15 7530 -> 0000663A # 1-85-16 7531 -> 00006622 # 1-85-17 7532 -> 00006624 # 1-85-18 7533 -> 0000662B # 1-85-19 7534 -> 00006630 # 1-85-20 7535 -> 00006631 # 1-85-21 7536 -> 00006633 # 1-85-22 7537 -> 000066FB # 1-85-23 7538 -> 00006648 # 1-85-24 7539 -> 0000664C # 1-85-25 753A -> 000231C4 # 1-85-26 753B -> 00006659 # 1-85-27 753C -> 0000665A # 1-85-28 753D -> 00006661 # 1-85-29 753E -> 00006665 # 1-85-30 753F -> 00006673 # 1-85-31 7540 -> 00006677 # 1-85-32 7541 -> 00006678 # 1-85-33 7542 -> 0000668D # 1-85-34 7543 -> 0000FA43 # 1-85-35 7544 -> 000066A0 # 1-85-36 7545 -> 000066B2 # 1-85-37 7546 -> 000066BB # 1-85-38 7547 -> 000066C6 # 1-85-39 7548 -> 000066C8 # 1-85-40 7549 -> 00003B22 # 1-85-41 754A -> 000066DB # 1-85-42 754B -> 000066E8 # 1-85-43 754C -> 000066FA # 1-85-44 754D -> 00006713 # 1-85-45 754E -> 0000F929 # 1-85-46 754F -> 00006733 # 1-85-47 7550 -> 00006766 # 1-85-48 7551 -> 00006747 # 1-85-49 7552 -> 00006748 # 1-85-50 7553 -> 0000677B # 1-85-51 7554 -> 00006781 # 1-85-52 7555 -> 00006793 # 1-85-53 7556 -> 00006798 # 1-85-54 7557 -> 0000679B # 1-85-55 7558 -> 000067BB # 1-85-56 7559 -> 000067F9 # 1-85-57 755A -> 000067C0 # 1-85-58 755B -> 000067D7 # 1-85-59 755C -> 000067FC # 1-85-60 755D -> 00006801 # 1-85-61 755E -> 00006852 # 1-85-62 755F -> 0000681D # 1-85-63 7560 -> 0000682C # 1-85-64 7561 -> 00006831 # 1-85-65 7562 -> 0000685B # 1-85-66 7563 -> 00006872 # 1-85-67 7564 -> 00006875 # 1-85-68 7565 -> 0000FA44 # 1-85-69 7566 -> 000068A3 # 1-85-70 7567 -> 000068A5 # 1-85-71 7568 -> 000068B2 # 1-85-72 7569 -> 000068C8 # 1-85-73 756A -> 000068D0 # 1-85-74 756B -> 000068E8 # 1-85-75 756C -> 000068ED # 1-85-76 756D -> 000068F0 # 1-85-77 756E -> 000068F1 # 1-85-78 756F -> 000068FC # 1-85-79 7570 -> 0000690A # 1-85-80 7571 -> 00006949 # 1-85-81 7572 -> 000235C4 # 1-85-82 7573 -> 00006935 # 1-85-83 7574 -> 00006942 # 1-85-84 7575 -> 00006957 # 1-85-85 7576 -> 00006963 # 1-85-86 7577 -> 00006964 # 1-85-87 7578 -> 00006968 # 1-85-88 7579 -> 00006980 # 1-85-89 757A -> 0000FA14 # 1-85-90 757B -> 000069A5 # 1-85-91 757C -> 000069AD # 1-85-92 757D -> 000069CF # 1-85-93 757E -> 00003BB6 # 1-85-94 7621 -> 00003BC3 # 1-86-1 7622 -> 000069E2 # 1-86-2 7623 -> 000069E9 # 1-86-3 7624 -> 000069EA # 1-86-4 7625 -> 000069F5 # 1-86-5 7626 -> 000069F6 # 1-86-6 7627 -> 00006A0F # 1-86-7 7628 -> 00006A15 # 1-86-8 7629 -> 0002373F # 1-86-9 762A -> 00006A3B # 1-86-10 762B -> 00006A3E # 1-86-11 762C -> 00006A45 # 1-86-12 762D -> 00006A50 # 1-86-13 762E -> 00006A56 # 1-86-14 762F -> 00006A5B # 1-86-15 7630 -> 00006A6B # 1-86-16 7631 -> 00006A73 # 1-86-17 7632 -> 00023763 # 1-86-18 7633 -> 00006A89 # 1-86-19 7634 -> 00006A94 # 1-86-20 7635 -> 00006A9D # 1-86-21 7636 -> 00006A9E # 1-86-22 7637 -> 00006AA5 # 1-86-23 7638 -> 00006AE4 # 1-86-24 7639 -> 00006AE7 # 1-86-25 763A -> 00003C0F # 1-86-26 763B -> 0000F91D # 1-86-27 763C -> 00006B1B # 1-86-28 763D -> 00006B1E # 1-86-29 763E -> 00006B2C # 1-86-30 763F -> 00006B35 # 1-86-31 7640 -> 00006B46 # 1-86-32 7641 -> 00006B56 # 1-86-33 7642 -> 00006B60 # 1-86-34 7643 -> 00006B65 # 1-86-35 7644 -> 00006B67 # 1-86-36 7645 -> 00006B77 # 1-86-37 7646 -> 00006B82 # 1-86-38 7647 -> 00006BA9 # 1-86-39 7648 -> 00006BAD # 1-86-40 7649 -> 0000F970 # 1-86-41 764A -> 00006BCF # 1-86-42 764B -> 00006BD6 # 1-86-43 764C -> 00006BD7 # 1-86-44 764D -> 00006BFF # 1-86-45 764E -> 00006C05 # 1-86-46 764F -> 00006C10 # 1-86-47 7650 -> 00006C33 # 1-86-48 7651 -> 00006C59 # 1-86-49 7652 -> 00006C5C # 1-86-50 7653 -> 00006CAA # 1-86-51 7654 -> 00006C74 # 1-86-52 7655 -> 00006C76 # 1-86-53 7656 -> 00006C85 # 1-86-54 7657 -> 00006C86 # 1-86-55 7658 -> 00006C98 # 1-86-56 7659 -> 00006C9C # 1-86-57 765A -> 00006CFB # 1-86-58 765B -> 00006CC6 # 1-86-59 765C -> 00006CD4 # 1-86-60 765D -> 00006CE0 # 1-86-61 765E -> 00006CEB # 1-86-62 765F -> 00006CEE # 1-86-63 7660 -> 00023CFE # 1-86-64 7661 -> 00006D04 # 1-86-65 7662 -> 00006D0E # 1-86-66 7663 -> 00006D2E # 1-86-67 7664 -> 00006D31 # 1-86-68 7665 -> 00006D39 # 1-86-69 7666 -> 00006D3F # 1-86-70 7667 -> 00006D58 # 1-86-71 7668 -> 00006D65 # 1-86-72 7669 -> 0000FA45 # 1-86-73 766A -> 00006D82 # 1-86-74 766B -> 00006D87 # 1-86-75 766C -> 00006D89 # 1-86-76 766D -> 00006D94 # 1-86-77 766E -> 00006DAA # 1-86-78 766F -> 00006DAC # 1-86-79 7670 -> 00006DBF # 1-86-80 7671 -> 00006DC4 # 1-86-81 7672 -> 00006DD6 # 1-86-82 7673 -> 00006DDA # 1-86-83 7674 -> 00006DDB # 1-86-84 7675 -> 00006DDD # 1-86-85 7676 -> 00006DFC # 1-86-86 7677 -> 0000FA46 # 1-86-87 7678 -> 00006E34 # 1-86-88 7679 -> 00006E44 # 1-86-89 767A -> 00006E5C # 1-86-90 767B -> 00006E5E # 1-86-91 767C -> 00006EAB # 1-86-92 767D -> 00006EB1 # 1-86-93 767E -> 00006EC1 # 1-86-94 7721 -> 00006EC7 # 1-87-1 7722 -> 00006ECE # 1-87-2 7723 -> 00006F10 # 1-87-3 7724 -> 00006F1A # 1-87-4 7725 -> 0000FA47 # 1-87-5 7726 -> 00006F2A # 1-87-6 7727 -> 00006F2F # 1-87-7 7728 -> 00006F33 # 1-87-8 7729 -> 00006F51 # 1-87-9 772A -> 00006F59 # 1-87-10 772B -> 00006F5E # 1-87-11 772C -> 00006F61 # 1-87-12 772D -> 00006F62 # 1-87-13 772E -> 00006F7E # 1-87-14 772F -> 00006F88 # 1-87-15 7730 -> 00006F8C # 1-87-16 7731 -> 00006F8D # 1-87-17 7732 -> 00006F94 # 1-87-18 7733 -> 00006FA0 # 1-87-19 7734 -> 00006FA7 # 1-87-20 7735 -> 00006FB6 # 1-87-21 7736 -> 00006FBC # 1-87-22 7737 -> 00006FC7 # 1-87-23 7738 -> 00006FCA # 1-87-24 7739 -> 00006FF9 # 1-87-25 773A -> 00006FF0 # 1-87-26 773B -> 00006FF5 # 1-87-27 773C -> 00007005 # 1-87-28 773D -> 00007006 # 1-87-29 773E -> 00007028 # 1-87-30 773F -> 0000704A # 1-87-31 7740 -> 0000705D # 1-87-32 7741 -> 0000705E # 1-87-33 7742 -> 0000704E # 1-87-34 7743 -> 00007064 # 1-87-35 7744 -> 00007075 # 1-87-36 7745 -> 00007085 # 1-87-37 7746 -> 000070A4 # 1-87-38 7747 -> 000070AB # 1-87-39 7748 -> 000070B7 # 1-87-40 7749 -> 000070D4 # 1-87-41 774A -> 000070D8 # 1-87-42 774B -> 000070E4 # 1-87-43 774C -> 0000710F # 1-87-44 774D -> 0000712B # 1-87-45 774E -> 0000711E # 1-87-46 774F -> 00007120 # 1-87-47 7750 -> 0000712E # 1-87-48 7751 -> 00007130 # 1-87-49 7752 -> 00007146 # 1-87-50 7753 -> 00007147 # 1-87-51 7754 -> 00007151 # 1-87-52 7755 -> 0000FA48 # 1-87-53 7756 -> 00007152 # 1-87-54 7757 -> 0000715C # 1-87-55 7758 -> 00007160 # 1-87-56 7759 -> 00007168 # 1-87-57 775A -> 0000FA15 # 1-87-58 775B -> 00007185 # 1-87-59 775C -> 00007187 # 1-87-60 775D -> 00007192 # 1-87-61 775E -> 000071C1 # 1-87-62 775F -> 000071BA # 1-87-63 7760 -> 000071C4 # 1-87-64 7761 -> 000071FE # 1-87-65 7762 -> 00007200 # 1-87-66 7763 -> 00007215 # 1-87-67 7764 -> 00007255 # 1-87-68 7765 -> 00007256 # 1-87-69 7766 -> 00003E3F # 1-87-70 7767 -> 0000728D # 1-87-71 7768 -> 0000729B # 1-87-72 7769 -> 000072BE # 1-87-73 776A -> 000072C0 # 1-87-74 776B -> 000072FB # 1-87-75 776C -> 000247F1 # 1-87-76 776D -> 00007327 # 1-87-77 776E -> 00007328 # 1-87-78 776F -> 0000FA16 # 1-87-79 7770 -> 00007350 # 1-87-80 7771 -> 00007366 # 1-87-81 7772 -> 0000737C # 1-87-82 7773 -> 00007395 # 1-87-83 7774 -> 0000739F # 1-87-84 7775 -> 000073A0 # 1-87-85 7776 -> 000073A2 # 1-87-86 7777 -> 000073A6 # 1-87-87 7778 -> 000073AB # 1-87-88 7779 -> 000073C9 # 1-87-89 777A -> 000073CF # 1-87-90 777B -> 000073D6 # 1-87-91 777C -> 000073D9 # 1-87-92 777D -> 000073E3 # 1-87-93 777E -> 000073E9 # 1-87-94 7821 -> 00007407 # 1-88-1 7822 -> 0000740A # 1-88-2 7823 -> 0000741A # 1-88-3 7824 -> 0000741B # 1-88-4 7825 -> 0000FA4A # 1-88-5 7826 -> 00007426 # 1-88-6 7827 -> 00007428 # 1-88-7 7828 -> 0000742A # 1-88-8 7829 -> 0000742B # 1-88-9 782A -> 0000742C # 1-88-10 782B -> 0000742E # 1-88-11 782C -> 0000742F # 1-88-12 782D -> 00007430 # 1-88-13 782E -> 00007444 # 1-88-14 782F -> 00007446 # 1-88-15 7830 -> 00007447 # 1-88-16 7831 -> 0000744B # 1-88-17 7832 -> 00007457 # 1-88-18 7833 -> 00007462 # 1-88-19 7834 -> 0000746B # 1-88-20 7835 -> 0000746D # 1-88-21 7836 -> 00007486 # 1-88-22 7837 -> 00007487 # 1-88-23 7838 -> 00007489 # 1-88-24 7839 -> 00007498 # 1-88-25 783A -> 0000749C # 1-88-26 783B -> 0000749F # 1-88-27 783C -> 000074A3 # 1-88-28 783D -> 00007490 # 1-88-29 783E -> 000074A6 # 1-88-30 783F -> 000074A8 # 1-88-31 7840 -> 000074A9 # 1-88-32 7841 -> 000074B5 # 1-88-33 7842 -> 000074BF # 1-88-34 7843 -> 000074C8 # 1-88-35 7844 -> 000074C9 # 1-88-36 7845 -> 000074DA # 1-88-37 7846 -> 000074FF # 1-88-38 7847 -> 00007501 # 1-88-39 7848 -> 00007517 # 1-88-40 7849 -> 0000752F # 1-88-41 784A -> 0000756F # 1-88-42 784B -> 00007579 # 1-88-43 784C -> 00007592 # 1-88-44 784D -> 00003F72 # 1-88-45 784E -> 000075CE # 1-88-46 784F -> 000075E4 # 1-88-47 7850 -> 00007600 # 1-88-48 7851 -> 00007602 # 1-88-49 7852 -> 00007608 # 1-88-50 7853 -> 00007615 # 1-88-51 7854 -> 00007616 # 1-88-52 7855 -> 00007619 # 1-88-53 7856 -> 0000761E # 1-88-54 7857 -> 0000762D # 1-88-55 7858 -> 00007635 # 1-88-56 7859 -> 00007643 # 1-88-57 785A -> 0000764B # 1-88-58 785B -> 00007664 # 1-88-59 785C -> 00007665 # 1-88-60 785D -> 0000766D # 1-88-61 785E -> 0000766F # 1-88-62 785F -> 00007671 # 1-88-63 7860 -> 00007681 # 1-88-64 7861 -> 0000769B # 1-88-65 7862 -> 0000769D # 1-88-66 7863 -> 0000769E # 1-88-67 7864 -> 000076A6 # 1-88-68 7865 -> 000076AA # 1-88-69 7866 -> 000076B6 # 1-88-70 7867 -> 000076C5 # 1-88-71 7868 -> 000076CC # 1-88-72 7869 -> 000076CE # 1-88-73 786A -> 000076D4 # 1-88-74 786B -> 000076E6 # 1-88-75 786C -> 000076F1 # 1-88-76 786D -> 000076FC # 1-88-77 786E -> 0000770A # 1-88-78 786F -> 00007719 # 1-88-79 7870 -> 00007734 # 1-88-80 7871 -> 00007736 # 1-88-81 7872 -> 00007746 # 1-88-82 7873 -> 0000774D # 1-88-83 7874 -> 0000774E # 1-88-84 7875 -> 0000775C # 1-88-85 7876 -> 0000775F # 1-88-86 7877 -> 00007762 # 1-88-87 7878 -> 0000777A # 1-88-88 7879 -> 00007780 # 1-88-89 787A -> 00007794 # 1-88-90 787B -> 000077AA # 1-88-91 787C -> 000077E0 # 1-88-92 787D -> 0000782D # 1-88-93 787E -> 0002548E # 1-88-94 7921 -> 00007843 # 1-89-1 7922 -> 0000784E # 1-89-2 7923 -> 0000784F # 1-89-3 7924 -> 00007851 # 1-89-4 7925 -> 00007868 # 1-89-5 7926 -> 0000786E # 1-89-6 7927 -> 0000FA4B # 1-89-7 7928 -> 000078B0 # 1-89-8 7929 -> 0002550E # 1-89-9 792A -> 000078AD # 1-89-10 792B -> 000078E4 # 1-89-11 792C -> 000078F2 # 1-89-12 792D -> 00007900 # 1-89-13 792E -> 000078F7 # 1-89-14 792F -> 0000791C # 1-89-15 7930 -> 0000792E # 1-89-16 7931 -> 00007931 # 1-89-17 7932 -> 00007934 # 1-89-18 7933 -> 0000FA4C # 1-89-19 7934 -> 0000FA4D # 1-89-20 7935 -> 00007945 # 1-89-21 7936 -> 00007946 # 1-89-22 7937 -> 0000FA4E # 1-89-23 7938 -> 0000FA4F # 1-89-24 7939 -> 0000FA50 # 1-89-25 793A -> 0000795C # 1-89-26 793B -> 0000FA51 # 1-89-27 793C -> 0000FA19 # 1-89-28 793D -> 0000FA1A # 1-89-29 793E -> 00007979 # 1-89-30 793F -> 0000FA52 # 1-89-31 7940 -> 0000FA53 # 1-89-32 7941 -> 0000FA1B # 1-89-33 7942 -> 00007998 # 1-89-34 7943 -> 000079B1 # 1-89-35 7944 -> 000079B8 # 1-89-36 7945 -> 000079C8 # 1-89-37 7946 -> 000079CA # 1-89-38 7947 -> 00025771 # 1-89-39 7948 -> 000079D4 # 1-89-40 7949 -> 000079DE # 1-89-41 794A -> 000079EB # 1-89-42 794B -> 000079ED # 1-89-43 794C -> 00007A03 # 1-89-44 794D -> 0000FA54 # 1-89-45 794E -> 00007A39 # 1-89-46 794F -> 00007A5D # 1-89-47 7950 -> 00007A6D # 1-89-48 7951 -> 0000FA55 # 1-89-49 7952 -> 00007A85 # 1-89-50 7953 -> 00007AA0 # 1-89-51 7954 -> 000259C4 # 1-89-52 7955 -> 00007AB3 # 1-89-53 7956 -> 00007ABB # 1-89-54 7957 -> 00007ACE # 1-89-55 7958 -> 00007AEB # 1-89-56 7959 -> 00007AFD # 1-89-57 795A -> 00007B12 # 1-89-58 795B -> 00007B2D # 1-89-59 795C -> 00007B3B # 1-89-60 795D -> 00007B47 # 1-89-61 795E -> 00007B4E # 1-89-62 795F -> 00007B60 # 1-89-63 7960 -> 00007B6D # 1-89-64 7961 -> 00007B6F # 1-89-65 7962 -> 00007B72 # 1-89-66 7963 -> 00007B9E # 1-89-67 7964 -> 0000FA56 # 1-89-68 7965 -> 00007BD7 # 1-89-69 7966 -> 00007BD9 # 1-89-70 7967 -> 00007C01 # 1-89-71 7968 -> 00007C31 # 1-89-72 7969 -> 00007C1E # 1-89-73 796A -> 00007C20 # 1-89-74 796B -> 00007C33 # 1-89-75 796C -> 00007C36 # 1-89-76 796D -> 00004264 # 1-89-77 796E -> 00025DA1 # 1-89-78 796F -> 00007C59 # 1-89-79 7970 -> 00007C6D # 1-89-80 7971 -> 00007C79 # 1-89-81 7972 -> 00007C8F # 1-89-82 7973 -> 00007C94 # 1-89-83 7974 -> 00007CA0 # 1-89-84 7975 -> 00007CBC # 1-89-85 7976 -> 00007CD5 # 1-89-86 7977 -> 00007CD9 # 1-89-87 7978 -> 00007CDD # 1-89-88 7979 -> 00007D07 # 1-89-89 797A -> 00007D08 # 1-89-90 797B -> 00007D13 # 1-89-91 797C -> 00007D1D # 1-89-92 797D -> 00007D23 # 1-89-93 797E -> 00007D31 # 1-89-94 7A21 -> 00007D41 # 1-90-1 7A22 -> 00007D48 # 1-90-2 7A23 -> 00007D53 # 1-90-3 7A24 -> 00007D5C # 1-90-4 7A25 -> 00007D7A # 1-90-5 7A26 -> 00007D83 # 1-90-6 7A27 -> 00007D8B # 1-90-7 7A28 -> 00007DA0 # 1-90-8 7A29 -> 00007DA6 # 1-90-9 7A2A -> 00007DC2 # 1-90-10 7A2B -> 00007DCC # 1-90-11 7A2C -> 00007DD6 # 1-90-12 7A2D -> 00007DE3 # 1-90-13 7A2E -> 0000FA57 # 1-90-14 7A2F -> 00007E28 # 1-90-15 7A30 -> 00007E08 # 1-90-16 7A31 -> 00007E11 # 1-90-17 7A32 -> 00007E15 # 1-90-18 7A33 -> 0000FA59 # 1-90-19 7A34 -> 00007E47 # 1-90-20 7A35 -> 00007E52 # 1-90-21 7A36 -> 00007E61 # 1-90-22 7A37 -> 00007E8A # 1-90-23 7A38 -> 00007E8D # 1-90-24 7A39 -> 00007F47 # 1-90-25 7A3A -> 0000FA5A # 1-90-26 7A3B -> 00007F91 # 1-90-27 7A3C -> 00007F97 # 1-90-28 7A3D -> 00007FBF # 1-90-29 7A3E -> 00007FCE # 1-90-30 7A3F -> 00007FDB # 1-90-31 7A40 -> 00007FDF # 1-90-32 7A41 -> 00007FEC # 1-90-33 7A42 -> 00007FEE # 1-90-34 7A43 -> 00007FFA # 1-90-35 7A44 -> 0000FA5B # 1-90-36 7A45 -> 00008014 # 1-90-37 7A46 -> 00008026 # 1-90-38 7A47 -> 00008035 # 1-90-39 7A48 -> 00008037 # 1-90-40 7A49 -> 0000803C # 1-90-41 7A4A -> 000080CA # 1-90-42 7A4B -> 000080D7 # 1-90-43 7A4C -> 000080E0 # 1-90-44 7A4D -> 000080F3 # 1-90-45 7A4E -> 00008118 # 1-90-46 7A4F -> 0000814A # 1-90-47 7A50 -> 00008160 # 1-90-48 7A51 -> 00008167 # 1-90-49 7A52 -> 00008168 # 1-90-50 7A53 -> 0000816D # 1-90-51 7A54 -> 000081BB # 1-90-52 7A55 -> 000081CA # 1-90-53 7A56 -> 000081CF # 1-90-54 7A57 -> 000081D7 # 1-90-55 7A58 -> 0000FA5C # 1-90-56 7A59 -> 00004453 # 1-90-57 7A5A -> 0000445B # 1-90-58 7A5B -> 00008260 # 1-90-59 7A5C -> 00008274 # 1-90-60 7A5D -> 00026AFF # 1-90-61 7A5E -> 0000828E # 1-90-62 7A5F -> 000082A1 # 1-90-63 7A60 -> 000082A3 # 1-90-64 7A61 -> 000082A4 # 1-90-65 7A62 -> 000082A9 # 1-90-66 7A63 -> 000082AE # 1-90-67 7A64 -> 000082B7 # 1-90-68 7A65 -> 000082BE # 1-90-69 7A66 -> 000082BF # 1-90-70 7A67 -> 000082C6 # 1-90-71 7A68 -> 000082D5 # 1-90-72 7A69 -> 000082FD # 1-90-73 7A6A -> 000082FE # 1-90-74 7A6B -> 00008300 # 1-90-75 7A6C -> 00008301 # 1-90-76 7A6D -> 00008362 # 1-90-77 7A6E -> 00008322 # 1-90-78 7A6F -> 0000832D # 1-90-79 7A70 -> 0000833A # 1-90-80 7A71 -> 00008343 # 1-90-81 7A72 -> 00008347 # 1-90-82 7A73 -> 00008351 # 1-90-83 7A74 -> 00008355 # 1-90-84 7A75 -> 0000837D # 1-90-85 7A76 -> 00008386 # 1-90-86 7A77 -> 00008392 # 1-90-87 7A78 -> 00008398 # 1-90-88 7A79 -> 000083A7 # 1-90-89 7A7A -> 000083A9 # 1-90-90 7A7B -> 000083BF # 1-90-91 7A7C -> 000083C0 # 1-90-92 7A7D -> 000083C7 # 1-90-93 7A7E -> 000083CF # 1-90-94 7B21 -> 000083D1 # 1-91-1 7B22 -> 000083E1 # 1-91-2 7B23 -> 000083EA # 1-91-3 7B24 -> 00008401 # 1-91-4 7B25 -> 00008406 # 1-91-5 7B26 -> 0000840A # 1-91-6 7B27 -> 0000FA5F # 1-91-7 7B28 -> 00008448 # 1-91-8 7B29 -> 0000845F # 1-91-9 7B2A -> 00008470 # 1-91-10 7B2B -> 00008473 # 1-91-11 7B2C -> 00008485 # 1-91-12 7B2D -> 0000849E # 1-91-13 7B2E -> 000084AF # 1-91-14 7B2F -> 000084B4 # 1-91-15 7B30 -> 000084BA # 1-91-16 7B31 -> 000084C0 # 1-91-17 7B32 -> 000084C2 # 1-91-18 7B33 -> 00026E40 # 1-91-19 7B34 -> 00008532 # 1-91-20 7B35 -> 0000851E # 1-91-21 7B36 -> 00008523 # 1-91-22 7B37 -> 0000852F # 1-91-23 7B38 -> 00008559 # 1-91-24 7B39 -> 00008564 # 1-91-25 7B3A -> 0000FA1F # 1-91-26 7B3B -> 000085AD # 1-91-27 7B3C -> 0000857A # 1-91-28 7B3D -> 0000858C # 1-91-29 7B3E -> 0000858F # 1-91-30 7B3F -> 000085A2 # 1-91-31 7B40 -> 000085B0 # 1-91-32 7B41 -> 000085CB # 1-91-33 7B42 -> 000085CE # 1-91-34 7B43 -> 000085ED # 1-91-35 7B44 -> 00008612 # 1-91-36 7B45 -> 000085FF # 1-91-37 7B46 -> 00008604 # 1-91-38 7B47 -> 00008605 # 1-91-39 7B48 -> 00008610 # 1-91-40 7B49 -> 000270F4 # 1-91-41 7B4A -> 00008618 # 1-91-42 7B4B -> 00008629 # 1-91-43 7B4C -> 00008638 # 1-91-44 7B4D -> 00008657 # 1-91-45 7B4E -> 0000865B # 1-91-46 7B4F -> 0000F936 # 1-91-47 7B50 -> 00008662 # 1-91-48 7B51 -> 0000459D # 1-91-49 7B52 -> 0000866C # 1-91-50 7B53 -> 00008675 # 1-91-51 7B54 -> 00008698 # 1-91-52 7B55 -> 000086B8 # 1-91-53 7B56 -> 000086FA # 1-91-54 7B57 -> 000086FC # 1-91-55 7B58 -> 000086FD # 1-91-56 7B59 -> 0000870B # 1-91-57 7B5A -> 00008771 # 1-91-58 7B5B -> 00008787 # 1-91-59 7B5C -> 00008788 # 1-91-60 7B5D -> 000087AC # 1-91-61 7B5E -> 000087AD # 1-91-62 7B5F -> 000087B5 # 1-91-63 7B60 -> 000045EA # 1-91-64 7B61 -> 000087D6 # 1-91-65 7B62 -> 000087EC # 1-91-66 7B63 -> 00008806 # 1-91-67 7B64 -> 0000880A # 1-91-68 7B65 -> 00008810 # 1-91-69 7B66 -> 00008814 # 1-91-70 7B67 -> 0000881F # 1-91-71 7B68 -> 00008898 # 1-91-72 7B69 -> 000088AA # 1-91-73 7B6A -> 000088CA # 1-91-74 7B6B -> 000088CE # 1-91-75 7B6C -> 00027684 # 1-91-76 7B6D -> 000088F5 # 1-91-77 7B6E -> 0000891C # 1-91-78 7B6F -> 0000FA60 # 1-91-79 7B70 -> 00008918 # 1-91-80 7B71 -> 00008919 # 1-91-81 7B72 -> 0000891A # 1-91-82 7B73 -> 00008927 # 1-91-83 7B74 -> 00008930 # 1-91-84 7B75 -> 00008932 # 1-91-85 7B76 -> 00008939 # 1-91-86 7B77 -> 00008940 # 1-91-87 7B78 -> 00008994 # 1-91-88 7B79 -> 0000FA61 # 1-91-89 7B7A -> 000089D4 # 1-91-90 7B7B -> 000089E5 # 1-91-91 7B7C -> 000089F6 # 1-91-92 7B7D -> 00008A12 # 1-91-93 7B7E -> 00008A15 # 1-91-94 7C21 -> 00008A22 # 1-92-1 7C22 -> 00008A37 # 1-92-2 7C23 -> 00008A47 # 1-92-3 7C24 -> 00008A4E # 1-92-4 7C25 -> 00008A5D # 1-92-5 7C26 -> 00008A61 # 1-92-6 7C27 -> 00008A75 # 1-92-7 7C28 -> 00008A79 # 1-92-8 7C29 -> 00008AA7 # 1-92-9 7C2A -> 00008AD0 # 1-92-10 7C2B -> 00008ADF # 1-92-11 7C2C -> 00008AF4 # 1-92-12 7C2D -> 00008AF6 # 1-92-13 7C2E -> 0000FA22 # 1-92-14 7C2F -> 0000FA62 # 1-92-15 7C30 -> 0000FA63 # 1-92-16 7C31 -> 00008B46 # 1-92-17 7C32 -> 00008B54 # 1-92-18 7C33 -> 00008B59 # 1-92-19 7C34 -> 00008B69 # 1-92-20 7C35 -> 00008B9D # 1-92-21 7C36 -> 00008C49 # 1-92-22 7C37 -> 00008C68 # 1-92-23 7C38 -> 0000FA64 # 1-92-24 7C39 -> 00008CE1 # 1-92-25 7C3A -> 00008CF4 # 1-92-26 7C3B -> 00008CF8 # 1-92-27 7C3C -> 00008CFE # 1-92-28 7C3D -> 0000FA65 # 1-92-29 7C3E -> 00008D12 # 1-92-30 7C3F -> 00008D1B # 1-92-31 7C40 -> 00008DAF # 1-92-32 7C41 -> 00008DCE # 1-92-33 7C42 -> 00008DD1 # 1-92-34 7C43 -> 00008DD7 # 1-92-35 7C44 -> 00008E20 # 1-92-36 7C45 -> 00008E23 # 1-92-37 7C46 -> 00008E3D # 1-92-38 7C47 -> 00008E70 # 1-92-39 7C48 -> 00008E7B # 1-92-40 7C49 -> 00028277 # 1-92-41 7C4A -> 00008EC0 # 1-92-42 7C4B -> 00004844 # 1-92-43 7C4C -> 00008EFA # 1-92-44 7C4D -> 00008F1E # 1-92-45 7C4E -> 00008F2D # 1-92-46 7C4F -> 00008F36 # 1-92-47 7C50 -> 00008F54 # 1-92-48 7C51 -> 000283CD # 1-92-49 7C52 -> 00008FA6 # 1-92-50 7C53 -> 00008FB5 # 1-92-51 7C54 -> 00008FE4 # 1-92-52 7C55 -> 00008FE8 # 1-92-53 7C56 -> 00008FEE # 1-92-54 7C57 -> 00009008 # 1-92-55 7C58 -> 0000902D # 1-92-56 7C59 -> 0000FA67 # 1-92-57 7C5A -> 00009088 # 1-92-58 7C5B -> 00009095 # 1-92-59 7C5C -> 00009097 # 1-92-60 7C5D -> 00009099 # 1-92-61 7C5E -> 0000909B # 1-92-62 7C5F -> 000090A2 # 1-92-63 7C60 -> 000090B3 # 1-92-64 7C61 -> 000090BE # 1-92-65 7C62 -> 000090C4 # 1-92-66 7C63 -> 000090C5 # 1-92-67 7C64 -> 000090C7 # 1-92-68 7C65 -> 000090D7 # 1-92-69 7C66 -> 000090DD # 1-92-70 7C67 -> 000090DE # 1-92-71 7C68 -> 000090EF # 1-92-72 7C69 -> 000090F4 # 1-92-73 7C6A -> 0000FA26 # 1-92-74 7C6B -> 00009114 # 1-92-75 7C6C -> 00009115 # 1-92-76 7C6D -> 00009116 # 1-92-77 7C6E -> 00009122 # 1-92-78 7C6F -> 00009123 # 1-92-79 7C70 -> 00009127 # 1-92-80 7C71 -> 0000912F # 1-92-81 7C72 -> 00009131 # 1-92-82 7C73 -> 00009134 # 1-92-83 7C74 -> 0000913D # 1-92-84 7C75 -> 00009148 # 1-92-85 7C76 -> 0000915B # 1-92-86 7C77 -> 00009183 # 1-92-87 7C78 -> 0000919E # 1-92-88 7C79 -> 000091AC # 1-92-89 7C7A -> 000091B1 # 1-92-90 7C7B -> 000091BC # 1-92-91 7C7C -> 000091D7 # 1-92-92 7C7D -> 000091FB # 1-92-93 7C7E -> 000091E4 # 1-92-94 7D21 -> 000091E5 # 1-93-1 7D22 -> 000091ED # 1-93-2 7D23 -> 000091F1 # 1-93-3 7D24 -> 00009207 # 1-93-4 7D25 -> 00009210 # 1-93-5 7D26 -> 00009238 # 1-93-6 7D27 -> 00009239 # 1-93-7 7D28 -> 0000923A # 1-93-8 7D29 -> 0000923C # 1-93-9 7D2A -> 00009240 # 1-93-10 7D2B -> 00009243 # 1-93-11 7D2C -> 0000924F # 1-93-12 7D2D -> 00009278 # 1-93-13 7D2E -> 00009288 # 1-93-14 7D2F -> 000092C2 # 1-93-15 7D30 -> 000092CB # 1-93-16 7D31 -> 000092CC # 1-93-17 7D32 -> 000092D3 # 1-93-18 7D33 -> 000092E0 # 1-93-19 7D34 -> 000092FF # 1-93-20 7D35 -> 00009304 # 1-93-21 7D36 -> 0000931F # 1-93-22 7D37 -> 00009321 # 1-93-23 7D38 -> 00009325 # 1-93-24 7D39 -> 00009348 # 1-93-25 7D3A -> 00009349 # 1-93-26 7D3B -> 0000934A # 1-93-27 7D3C -> 00009364 # 1-93-28 7D3D -> 00009365 # 1-93-29 7D3E -> 0000936A # 1-93-30 7D3F -> 00009370 # 1-93-31 7D40 -> 0000939B # 1-93-32 7D41 -> 000093A3 # 1-93-33 7D42 -> 000093BA # 1-93-34 7D43 -> 000093C6 # 1-93-35 7D44 -> 000093DE # 1-93-36 7D45 -> 000093DF # 1-93-37 7D46 -> 00009404 # 1-93-38 7D47 -> 000093FD # 1-93-39 7D48 -> 00009433 # 1-93-40 7D49 -> 0000944A # 1-93-41 7D4A -> 00009463 # 1-93-42 7D4B -> 0000946B # 1-93-43 7D4C -> 00009471 # 1-93-44 7D4D -> 00009472 # 1-93-45 7D4E -> 0000958E # 1-93-46 7D4F -> 0000959F # 1-93-47 7D50 -> 000095A6 # 1-93-48 7D51 -> 000095A9 # 1-93-49 7D52 -> 000095AC # 1-93-50 7D53 -> 000095B6 # 1-93-51 7D54 -> 000095BD # 1-93-52 7D55 -> 000095CB # 1-93-53 7D56 -> 000095D0 # 1-93-54 7D57 -> 000095D3 # 1-93-55 7D58 -> 000049B0 # 1-93-56 7D59 -> 000095DA # 1-93-57 7D5A -> 000095DE # 1-93-58 7D5B -> 00009658 # 1-93-59 7D5C -> 00009684 # 1-93-60 7D5D -> 0000F9DC # 1-93-61 7D5E -> 0000969D # 1-93-62 7D5F -> 000096A4 # 1-93-63 7D60 -> 000096A5 # 1-93-64 7D61 -> 000096D2 # 1-93-65 7D62 -> 000096DE # 1-93-66 7D63 -> 0000FA68 # 1-93-67 7D64 -> 000096E9 # 1-93-68 7D65 -> 000096EF # 1-93-69 7D66 -> 00009733 # 1-93-70 7D67 -> 0000973B # 1-93-71 7D68 -> 0000974D # 1-93-72 7D69 -> 0000974E # 1-93-73 7D6A -> 0000974F # 1-93-74 7D6B -> 0000975A # 1-93-75 7D6C -> 0000976E # 1-93-76 7D6D -> 00009773 # 1-93-77 7D6E -> 00009795 # 1-93-78 7D6F -> 000097AE # 1-93-79 7D70 -> 000097BA # 1-93-80 7D71 -> 000097C1 # 1-93-81 7D72 -> 000097C9 # 1-93-82 7D73 -> 000097DE # 1-93-83 7D74 -> 000097DB # 1-93-84 7D75 -> 000097F4 # 1-93-85 7D76 -> 0000FA69 # 1-93-86 7D77 -> 0000980A # 1-93-87 7D78 -> 0000981E # 1-93-88 7D79 -> 0000982B # 1-93-89 7D7A -> 00009830 # 1-93-90 7D7B -> 0000FA6A # 1-93-91 7D7C -> 00009852 # 1-93-92 7D7D -> 00009853 # 1-93-93 7D7E -> 00009856 # 1-93-94 7E21 -> 00009857 # 1-94-1 7E22 -> 00009859 # 1-94-2 7E23 -> 0000985A # 1-94-3 7E24 -> 0000F9D0 # 1-94-4 7E25 -> 00009865 # 1-94-5 7E26 -> 0000986C # 1-94-6 7E27 -> 000098BA # 1-94-7 7E28 -> 000098C8 # 1-94-8 7E29 -> 000098E7 # 1-94-9 7E2A -> 00009958 # 1-94-10 7E2B -> 0000999E # 1-94-11 7E2C -> 00009A02 # 1-94-12 7E2D -> 00009A03 # 1-94-13 7E2E -> 00009A24 # 1-94-14 7E2F -> 00009A2D # 1-94-15 7E30 -> 00009A2E # 1-94-16 7E31 -> 00009A38 # 1-94-17 7E32 -> 00009A4A # 1-94-18 7E33 -> 00009A4E # 1-94-19 7E34 -> 00009A52 # 1-94-20 7E35 -> 00009AB6 # 1-94-21 7E36 -> 00009AC1 # 1-94-22 7E37 -> 00009AC3 # 1-94-23 7E38 -> 00009ACE # 1-94-24 7E39 -> 00009AD6 # 1-94-25 7E3A -> 00009AF9 # 1-94-26 7E3B -> 00009B02 # 1-94-27 7E3C -> 00009B08 # 1-94-28 7E3D -> 00009B20 # 1-94-29 7E3E -> 00004C17 # 1-94-30 7E3F -> 00009B2D # 1-94-31 7E40 -> 00009B5E # 1-94-32 7E41 -> 00009B79 # 1-94-33 7E42 -> 00009B66 # 1-94-34 7E43 -> 00009B72 # 1-94-35 7E44 -> 00009B75 # 1-94-36 7E45 -> 00009B84 # 1-94-37 7E46 -> 00009B8A # 1-94-38 7E47 -> 00009B8F # 1-94-39 7E48 -> 00009B9E # 1-94-40 7E49 -> 00009BA7 # 1-94-41 7E4A -> 00009BC1 # 1-94-42 7E4B -> 00009BCE # 1-94-43 7E4C -> 00009BE5 # 1-94-44 7E4D -> 00009BF8 # 1-94-45 7E4E -> 00009BFD # 1-94-46 7E4F -> 00009C00 # 1-94-47 7E50 -> 00009C23 # 1-94-48 7E51 -> 00009C41 # 1-94-49 7E52 -> 00009C4F # 1-94-50 7E53 -> 00009C50 # 1-94-51 7E54 -> 00009C53 # 1-94-52 7E55 -> 00009C63 # 1-94-53 7E56 -> 00009C65 # 1-94-54 7E57 -> 00009C77 # 1-94-55 7E58 -> 00009D1D # 1-94-56 7E59 -> 00009D1E # 1-94-57 7E5A -> 00009D43 # 1-94-58 7E5B -> 00009D47 # 1-94-59 7E5C -> 00009D52 # 1-94-60 7E5D -> 00009D63 # 1-94-61 7E5E -> 00009D70 # 1-94-62 7E5F -> 00009D7C # 1-94-63 7E60 -> 00009D8A # 1-94-64 7E61 -> 00009D96 # 1-94-65 7E62 -> 00009DC0 # 1-94-66 7E63 -> 00009DAC # 1-94-67 7E64 -> 00009DBC # 1-94-68 7E65 -> 00009DD7 # 1-94-69 7E66 -> 0002A190 # 1-94-70 7E67 -> 00009DE7 # 1-94-71 7E68 -> 00009E07 # 1-94-72 7E69 -> 00009E15 # 1-94-73 7E6A -> 00009E7C # 1-94-74 7E6B -> 00009E9E # 1-94-75 7E6C -> 00009EA4 # 1-94-76 7E6D -> 00009EAC # 1-94-77 7E6E -> 00009EAF # 1-94-78 7E6F -> 00009EB4 # 1-94-79 7E70 -> 00009EB5 # 1-94-80 7E71 -> 00009EC3 # 1-94-81 7E72 -> 00009ED1 # 1-94-82 7E73 -> 00009F10 # 1-94-83 7E74 -> 00009F39 # 1-94-84 7E75 -> 00009F57 # 1-94-85 7E76 -> 00009F90 # 1-94-86 7E77 -> 00009F94 # 1-94-87 7E78 -> 00009F97 # 1-94-88 7E79 -> 00009FA2 # 1-94-89 ./mytool/mys/IS_BN.mys0000644000175000017500000000704007574146574014640 0ustar henrichhenrich# YUDIT-NtoN 1.0 #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME=ISCII-BN COMM=learning to make map COMM=Anirban Mitra 2002-10-17 # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Yudit umap file format ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 01 -> 0001 02 -> 0002 03 -> 0003 04 -> 0004 05 -> 0005 06 -> 0006 07 -> 0007 08 -> 0008 09 -> 0009 0A -> 000A 0B -> 000B 0C -> 000C 0D -> 000D 0E -> 000E 0F -> 000F 10 -> 0010 11 -> 0011 12 -> 0012 13 -> 0013 14 -> 0014 15 -> 0015 16 -> 0016 17 -> 0017 18 -> 0018 19 -> 0019 1A -> 001A 1B -> 001B 1C -> 001C 1D -> 001D 1E -> 001E 1F -> 001F 20 -> 0020 '! -> 0021 '" -> 0022 23 -> 0023 '$ -> 0024 '% -> 0025 '& -> 0026 '' -> 0027 '( -> 0028 ') -> 0029 '* -> 002A '+ -> 002B ', -> 002C '- -> 002D '. -> 002E '/ -> 002F '0 -> 0030 '1 -> 0031 '2 -> 0032 '3 -> 0033 '4 -> 0034 '5 -> 0035 '6 -> 0036 '7 -> 0037 '8 -> 0038 '9 -> 0039 ': -> 003A '; -> 003B '< -> 003C '= -> 003D '> -> 003E '? -> 003F '@ -> 0040 'A -> 0041 'B -> 0042 'C -> 0043 'D -> 0044 'E -> 0045 'F -> 0046 'G -> 0047 'H -> 0048 'I -> 0049 'J -> 004A 'K -> 004B 'L -> 004C 'M -> 004D 'N -> 004E 'O -> 004F 'P -> 0050 'Q -> 0051 'R -> 0052 'S -> 0053 'T -> 0054 'U -> 0055 'V -> 0056 'W -> 0057 'X -> 0058 'Y -> 0059 'Z -> 005A '[ -> 005B '\ -> 005C '] -> 005D '^ -> 005E '_ -> 005F '` -> 0060 'a -> 0061 'b -> 0062 'c -> 0063 'd -> 0064 'e -> 0065 'f -> 0066 'g -> 0067 'h -> 0068 'i -> 0069 'j -> 006A 'k -> 006B 'l -> 006C 'm -> 006D 'n -> 006E 'o -> 006F 'p -> 0070 'q -> 0071 'r -> 0072 's -> 0073 't -> 0074 'u -> 0075 'v -> 0076 'w -> 0077 'x -> 0078 'y -> 0079 7A -> 007A 7B -> 007B 7C -> 007C 7D -> 007D 7E -> 007E 7F -> 007F A1 -> 0981 A2 -> 0982 A3 -> 0983 A4 -> 0985 A5 -> 0986 A6 -> 0987 A7 -> 0988 A8 -> 0989 A9 -> 098A AA -> 098B A6 E9 -> 098C AE -> 098D AB -> 098E AC -> 098F AD -> 0990 B2 -> 0991 AF -> 0992 B0 -> 0993 B1 -> 0994 B3 -> 0995 B4 -> 0996 B5 -> 0997 B6 -> 0998 B7 -> 0999 B8 -> 099A B9 -> 099B BA -> 099C BB -> 099D BC -> 099E BD -> 099F BE -> 09A0 BF -> 09A1 C0 -> 09A2 C1 -> 09A3 C2 -> 09A4 C3 -> 09A5 C4 -> 09A6 C5 -> 09A7 C6 -> 09A8 C7 -> 09A9 C8 -> 09AA C9 -> 09AB CA -> 09AC CB -> 09AD CC -> 09AE CD -> 09AF CF -> 09B0 D0 -> 09B1 D1 -> 09B2 D2 -> 09B3 D3 -> 09B4 D4 -> 09AC D5 -> 09B6 D6 -> 09B7 D7 -> 09B8 D8 -> 09B9 E9 -> 09BC EA E9 -> 09BD DA -> 09BE DB -> 09BF DC -> 09C0 DD -> 09C1 DE -> 09C2 DF -> 09C3 DF E9 -> 09C4 E3 -> 09C5 E0 -> 09C6 E1 -> 09C7 E2 -> 09C8 E7 -> 09C9 E4 -> 09CA E5 -> 09CB E6 -> 09CC E8 -> 09CD E8 E9 -> 09CD 200D E8 E8 -> 09CD 200C A1 E9 -> 09D0 B3 E9 -> 0995 09BC B4 E9 -> 0996 09BC B5 E9 -> 0997 09BC BA E9 -> 099C 09BC BF E9 -> 09DC C0 E9 -> 09DD C9 E9 -> 09AB 09BC CE -> 09DF AA E9 -> 09E0 A7 E9 -> 09E1 DB E9 -> 09E2 DC E9 -> 09E3 EA -> 0964 EA EA -> 0965 F1 -> 09E6 F2 -> 09E7 F3 -> 09E8 F4 -> 09E9 F5 -> 09EA F6 -> 09EB F7 -> 09EC F8 -> 09ED F9 -> 09EE FA -> 09EF COMM=END OF ISCII-BN ./mytool/mys/Ukrainian-Extended.mys0000644000175000017500000002447207574515046017427 0ustar henrichhenrich# YUDIT-NtoN 1.0 # #----------------------------------------- #### THE NAME OF THIS MAP ###. NAME= Ukrainian-Extended.kmap COMM= Ukrainian input table COMM= By 2002/02/13 Dmytro Kovalov COMM= Follows DSTU 3470-90 „Державний Стандарт України“ on keyboard layout COMM= otherwise known as "typewriter" setting. COMM= * included all old slavonic, Byelorissian, COMM= Russian symbols from original Byelorussian map. COMM= COMM= Based on Byelorussian map by Alexander Mikhailian COMM= Created with emacs and yudit for yudit. COMM= Additions and improvements are welcome COMM= 0. Quotation marks and special symbols popular with Cyrillic # 0=NONE 1=KEY MAP 2=FONT MAP TYPE=00000001 #--------------- NEW SECTION ------------- SECTION=Section1 ENCODE=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 '' -> 0454 # є = CYRILLIC SMALL LETTER UKRAINIAN IE ', -> 0431 # б = CYRILLIC SMALL LETTER BE '" -> 0404 # Є = CYRILLIC CAPITAL LETTER UKRAINIAN IE '. -> 044E # ю = CYRILLIC SMALL LETTER YU ': -> 0416 # Ж = CYRILLIC CAPITAL LETTER ZHE '; -> 0436 # ж = CYRILLIC SMALL LETTER ZHE '< -> 0411 # Б = CYRILLIC CAPITAL LETTER BE '> -> 042E # Ю = CYRILLIC CAPITAL LETTER YU 'A -> 0424 # Ф = CYRILLIC CAPITAL LETTER EF 'B -> 0406 # І = CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I 'C -> 0421 # С = CYRILLIC CAPITAL LETTER ES 'D -> 0412 # В = CYRILLIC CAPITAL LETTER VE 'E -> 0423 # У = CYRILLIC CAPITAL LETTER U 'F -> 0410 # А = CYRILLIC CAPITAL LETTER A 'G -> 041F # П = CYRILLIC CAPITAL LETTER PE 'H -> 0420 # Р = CYRILLIC CAPITAL LETTER ER 'I -> 0428 # Ш = CYRILLIC CAPITAL LETTER SHA '? -> 0407 # Ї = CYRILLIC CAPITAL LETTER YI 'J -> 041E # О = CYRILLIC CAPITAL LETTER O 'K -> 041B # Л = CYRILLIC CAPITAL LETTER EL 'L -> 0414 # Д = CYRILLIC CAPITAL LETTER DE 'M -> 042C # Ь = CYRILLIC CAPITAL LETTER SOFT SIGN 'N -> 0422 # Т = CYRILLIC CAPITAL LETTER TE 'O -> 0429 # Щ = CYRILLIC CAPITAL LETTER SHCHA 'P -> 0417 # З = CYRILLIC CAPITAL LETTER ZE 'Q -> 0419 # Й = CYRILLIC CAPITAL LETTER SHORT I 'R -> 041A # К = CYRILLIC CAPITAL LETTER KA 'S -> 0418 # И = CYRILLIC CAPITAL LETTER I 'T -> 0415 # Е = CYRILLIC CAPITAL LETTER IE 'U -> 0413 # Г = CYRILLIC CAPITAL LETTER GHE 'V -> 041C # М = CYRILLIC CAPITAL LETTER EM 'W -> 0426 # Ц = CYRILLIC CAPITAL LETTER TSE 'X -> 0427 # Ч = CYRILLIC CAPITAL LETTER CHE 'Y -> 041D # Н = CYRILLIC CAPITAL LETTER EN 'Z -> 042F # Я = CYRILLIC CAPITAL LETTER YA '[ -> 0445 # х = CYRILLIC SMALL LETTER HA '} -> 0490 # Ґ = CYRILLIC CAPITAL LETTER GHE WITH UPTURN '] -> 0491 # ґ = CYRILLIC SMALL LETTER GHE WITH UPTURN 'a -> 0444 # ф = CYRILLIC SMALL LETTER EF 'b -> 0456 # і = CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I 'c -> 0441 # с = CYRILLIC SMALL LETTER ES 'd -> 0432 # в = CYRILLIC SMALL LETTER VE 'e -> 0443 # у = CYRILLIC SMALL LETTER U 'f -> 0430 # а = CYRILLIC SMALL LETTER A 'g -> 043F # п = CYRILLIC SMALL LETTER PE 'h -> 0440 # р = CYRILLIC SMALL LETTER ER 'i -> 0448 # ш = CYRILLIC SMALL LETTER SHA '/ -> 0457 # ї = CYRILLIC SMALL LETTER YI 'j -> 043E # о = CYRILLIC SMALL LETTER O 'k -> 043B # л = CYRILLIC SMALL LETTER EL 'l -> 0434 # д = CYRILLIC SMALL LETTER DE 'm -> 044C # ь = CYRILLIC SMALL LETTER SOFT SIGN 'n -> 0442 # т = CYRILLIC SMALL LETTER TE 'o -> 0449 # щ = CYRILLIC SMALL LETTER SHCHA 'p -> 0437 # з = CYRILLIC SMALL LETTER ZE 'q -> 0439 # й = CYRILLIC SMALL LETTER SHORT I 'r -> 043A # к = CYRILLIC SMALL LETTER KA 's -> 0438 # и = CYRILLIC SMALL LETTER I 't -> 0435 # е = CYRILLIC SMALL LETTER IE 'u -> 0433 # г = CYRILLIC SMALL LETTER GHE 'v -> 043C # м = CYRILLIC SMALL LETTER EM 'w -> 0446 # ц = CYRILLIC SMALL LETTER TSE 'x -> 0447 # ч = CYRILLIC SMALL LETTER CHE 'y -> 043D # н = CYRILLIC SMALL LETTER EN 'z -> 044F # я = CYRILLIC SMALL LETTER YA 7B -> 0425 # Х = CYRILLIC CAPITAL LETTER HA # ---------------------------------------------- # TTF font doesn't have this one #'` -> 02BC # ʼ = MODIFIER LETTER APOSTROPHE '` -> 0027 # APOSTROPHE # ---------------------------------------- # Punctuation marks # according to DSTU typed without Shift # ---------------------------------------- '1 -> 0021 # ! = EXCLAMATION MARK '2 -> 002D # - = HIPHEN-MINUS '3 -> 002F # / = SOLIDUS (SLASH) '4 -> 003A # : = COLON '5 -> 003B # ; = SEMICOLON '6 -> 002C # , = COMMA '7 -> 002E # . = FULL STOP '8 -> 005F # _ = LOW LINE '9 -> 003F # ? = QUESTION MARK '0 -> 0025 # % = PERCENT SIGN '\ -> 0028 # ( = LEFT PARENTHESIS '= -> 201E # „ = DOUBLE LOW-9 QUOTATION MARK = '\ -> 005C # \ = REVERSE SOLIDUS '_ -> 002B # + = PLUS SIGN '+ -> 201D # ” = RIGHT DOUBLE QUOTATION MARK '| -> 0029 # ) = RIGHT PARENTHESIS 7C -> 002F # / = SOLIDUS '~ -> 0022 # " = QUOTATION MARK '< '< -> 00AB # « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = '> '> -> 00BB # » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = '- '- -> 2015 # ― = HORIZONTAL BAR = QUOTATION DASH '- '` -> 2011 # ‑ = NON BREAKING HYPHEN # ------------------------------------------------------------ # Digits - with SHIFT # ------------------------------------------------------------ ') -> 0030 # 0 = DIGIT ZERO '! -> 0031 # 1 = DIGIT ONE '@ -> 0032 # 2 = DIGIT TWO '# -> 0033 # 3 = DIGIT THREE '$ -> 0034 # 4 = DIGIT FOUR '% -> 0035 # 5 = DIGIT FIVE '^ -> 0036 # 6 = DIGIT SIX '& -> 0037 # 7 = DIGIT SEVEN '* -> 0038 # 8 = DIGIT EIGHT '( -> 0039 # 9 = DIGIT NINE # ------------------------------ # SYMBOLS # ------------------------------ ': '( -> 2639 # ? = WHITE FROWNING FACE ': ') -> 263A # ? = WHITE SMILING FACE 'C ') -> 00A9 # © = COPYRIGHT SIGN 'C '- -> 00A4 # ¤ = CURRENCY SIGN 'E '- -> 20AC # € = EURO SIGN 'L '- -> 00A3 # £ = POUND SIGN 'x ') -> 2022 # • = BULLET 'N 'o -> 2116 # № = NUMERO SIGN '* '* -> 002A # * = ASTERISK '? '! -> 2048 # ⁈ = QUESTION EXCLAMATION MARK '$ '$ -> 00A7 # § = SECTION SIGN # # ---- Old Slavonic script ----- # 'A '< -> 046A # Ѫ = CYRILLIC CAPITAL LETTER BIG YUS 'a '< -> 046B # ѫ = CYRILLIC SMALL LETTER BIG YUS 'C '' -> 040B # Ћ = CYRILLIC CAPITAL LETTER TSHE 'c '' -> 045B # ћ = CYRILLIC SMALL LETTER TSHE 'D '- -> 0402 # Ђ = CYRILLIC CAPITAL LETTER DJE 'd '- -> 0452 # ђ = CYRILLIC SMALL LETTER DJE 'D '> -> 040F # Џ = CYRILLIC CAPITAL LETTER DZHE 'd '> -> 045F # џ = CYRILLIC SMALL LETTER DZHE 'E '< -> 0462 # Ѣ = CYRILLIC CAPITAL LETTER YAT 'e '< -> 0463 # ѣ = CYRILLIC SMALL LETTER YAT 'F '` -> 0472 # Ѳ = CYRILLIC CAPITAL LETTER FITA 'f '` -> 0473 # ѳ = CYRILLIC SMALL LETTER FITA 'G '' -> 0403 # Ѓ = CYRILLIC CAPITAL LETTER GJE 'g '' -> 0453 # ѓ = CYRILLIC SMALL LETTER GJE 'J '< -> 0408 # Ј = CYRILLIC CAPITAL LETTER JE 'j '< -> 0458 # ј = CYRILLIC SMALL LETTER JE 'K '' -> 040C # Ќ = CYRILLIC CAPITAL LETTER KJE 'k '' -> 045C # ќ = CYRILLIC SMALL LETTER KJE 'L '> -> 0409 # Љ = CYRILLIC CAPITAL LETTER LJE 'l '> -> 0459 # љ = CYRILLIC SMALL LETTER LJE 'N '> -> 040A # Њ = CYRILLIC CAPITAL LETTER NJE 'U '/ -> 040E # Ў = CYRILLIC CAPITAL LETTER SHORT U 'u '/ -> 045E # ў = CYRILLIC SMALL LETTER SHORT U 'S '/ -> 042B # Ы = CYRILLIC CAPITAL LETTER YERU 's '\ -> 044B # ы = CYRILLIC SMALL LETTER YERU 'Y '` -> 0474 # Ѵ = CYRILLIC CAPITAL LETTER IZHITSA 'y '` -> 0475 # ѵ = CYRILLIC SMALL LETTER IZHITSA 'Z '> -> 0405 # Ѕ = CYRILLIC CAPITAL LETTER DZE 'z '> -> 0455 # ѕ = CYRILLIC SMALL LETTER DZE '` '\ -> 0451 # ё = CYRILLIC SMALL LETTER IO '~ '\ -> 0401 # Ё = CYRILLIC CAPITAL LETTER IO #--------------- NEW SECTION ------------- SECTION=Section1 ENCODE=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a key word KEY_WIDTH=01 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - width of a value word VALUE_WIDTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the key length KEY_LENGTH=00 # 0=8 bit, 1=16 bit, 2=32 bit and 3=64 bit - this can hold the value length VALUE_LENGTH=00 0021 -> '! 0022 -> '@ 0025 -> '% 0027 -> 7D 0027 -> '] 0028 -> '( 0029 -> ') 002A -> '* 002B -> '+ 002C -> '? 002D -> '- 002E -> '/ 002F -> 7C 0030 -> '0 0031 -> '1 0032 -> '2 0033 -> '3 0034 -> '4 0035 -> '5 0036 -> '6 0037 -> '7 0038 -> '8 0039 -> '9 003A -> '^ 003B -> '$ 003D -> '0 003F -> '& 005C -> '\ 005F -> '_ 00A3 -> 'L '- 00A4 -> 'C '- 00A9 -> 'C ') 00AB -> '< '< 00BB -> '> '> 0401 -> 7E 0402 -> 'D '- 0403 -> 'G '' 0404 -> 'E '> 0405 -> 'Z '> 0406 -> 'B 0407 -> 'I ': 0408 -> 'J '< 0409 -> 'L '> 040A -> 'N '> 040B -> 'C '' 040C -> 'K '' 040E -> 'O 040F -> 'D '> 0410 -> 'F 0411 -> '< 0412 -> 'D 0413 -> 'U 0414 -> 'L 0415 -> 'T 0416 -> ': 0417 -> 'P 0418 -> 'I '/ 0419 -> 'Q 041A -> 'R 041B -> 'K 041C -> 'V 041D -> 'Y 041E -> 'J 041F -> 'G 0420 -> 'H 0421 -> 'C 0422 -> 'N 0423 -> 'E 0424 -> 'A 0425 -> 7B 0426 -> 'W 0427 -> 'X 0428 -> 'I 042B -> 'S 042C -> 'M 042D -> '" 042E -> '> 042F -> 'Z 0430 -> 'f 0431 -> ', 0432 -> 'd 0433 -> 'u 0434 -> 'l 0435 -> 't 0436 -> '; 0437 -> 'p 0438 -> 'i '/ 0439 -> 'q 043A -> 'r 043B -> 'k 043C -> 'v 043D -> 'y 043E -> 'j 043F -> 'g 0440 -> 'h 0441 -> 'c 0442 -> 'n 0443 -> 'e 0444 -> 'a 0445 -> '[ 0446 -> 'w 0447 -> 'x 0448 -> 'i 044B -> 's 044C -> 'm 044D -> '' 044E -> '. 044F -> 7A 0451 -> '` 0452 -> 'd '- 0453 -> 'g '' 0454 -> 'e '> 0455 -> 7A '> 0456 -> 'b 0457 -> 'i ': 0458 -> 'j '< 0459 -> 'l '> 045B -> 'c '' 045C -> 'k '' 045E -> 'o 045F -> 'd '> 0462 -> 'E '< 0463 -> 'e '< 046A -> 'A '< 046B -> 'a '< 0472 -> 'F '` 0473 -> 'f '` 0474 -> 'Y '` 0475 -> 'y '` 0490 -> 'G '` 0491 -> 'g '` 201C -> '` '` 201E -> ', ', 2022 -> 'x ') 20AC -> 'E '- 2116 -> 23 2639 -> ': '( 263A -> ': ') ./mytool/mys/charclass.mys0000644000175000017500000013423711326531433015700 0ustar henrichhenrichNAME=charclass.my COMM= COMM= generated by charclass.pl 2010-01-23 COMM= COMM= from ftp://ftp.unicode.org/Public/5.2.0/uc/UnicodeData.txt COMM= # 01 Lu Letter, Uppercase # 02 Ll Letter, Lowercase # 03 Lt Letter, Titlecase # 04 Mn Mark, Non-Spacing # 05 Mc Mark, Spacing Combining # 06 Me Mark, Enclosing # 07 Nd Number, Decimal Digit # 08 Nl Number, Letter # 09 No Number, Other # 0A Zs Separator, Space # 0B Zl Separator, Line # 0C Zp Separator, Paragraph # 0D Cc Other, Control # 0E Cf Other, Format # 0F Cs Other, Surrogate # 10 Co Other, Private Use # 11 Cn Other, Not Assigned (no characters in the file have this property) # Informative Categories # 12 Lm Letter, Modifier # 13 Lo Letter, Other # 14 Pc Punctuation, Connector # 15 Pd Punctuation, Dash # 16 Ps Punctuation, Open # 17 Pe Punctuation, Close # 18 Pi Punctuation, Initial quote(may behave like Ps or Pe depending on usage) # 19 Pf Punctuation, Final quote (may behave like Ps or Pe depending on usage) # 1A Po Punctuation, Other # 1B Sm Symbol, Math # 1C Sc Symbol, Currency # 1D Sk Symbol, Modifier # 1E So Symbol, Other # # This ia a compressed map: that means all characters in the range are # represented by the first element only. Holes are represented with 0. # COMM=Informative Categories COMM=Compressed Range Format TYPE=0 SECTION=encode ENCODE=1 # # key 2 for 32 bit (32-bitunicode) # value 0 for 8 bit (charclass) values # KEY_WIDTH=2 VALUE_WIDTH=0 KEY_LENGTH=0 VALUE_LENGTH=0 00000000 -> 0D 00000020 -> 0A 00000021 -> 1A 00000024 -> 1C 00000025 -> 1A 00000028 -> 16 00000029 -> 17 0000002A -> 1A 0000002B -> 1B 0000002C -> 1A 0000002D -> 15 0000002E -> 1A 00000030 -> 07 0000003A -> 1A 0000003C -> 1B 0000003F -> 1A 00000041 -> 01 0000005B -> 16 0000005C -> 1A 0000005D -> 17 0000005E -> 1D 0000005F -> 14 00000060 -> 1D 00000061 -> 02 0000007B -> 16 0000007C -> 1B 0000007D -> 17 0000007E -> 1B 0000007F -> 0D 000000A0 -> 0A 000000A1 -> 1A 000000A2 -> 1C 000000A6 -> 1E 000000A8 -> 1D 000000A9 -> 1E 000000AA -> 02 000000AB -> 18 000000AC -> 1B 000000AD -> 0E 000000AE -> 1E 000000AF -> 1D 000000B0 -> 1E 000000B1 -> 1B 000000B2 -> 09 000000B4 -> 1D 000000B5 -> 02 000000B6 -> 1E 000000B7 -> 1A 000000B8 -> 1D 000000B9 -> 09 000000BA -> 02 000000BB -> 19 000000BC -> 09 000000BF -> 1A 000000C0 -> 01 000000D7 -> 1B 000000D8 -> 01 000000DF -> 02 000000F7 -> 1B 000000F8 -> 02 00000100 -> 01 00000101 -> 02 00000102 -> 01 00000103 -> 02 00000104 -> 01 00000105 -> 02 00000106 -> 01 00000107 -> 02 00000108 -> 01 00000109 -> 02 0000010A -> 01 0000010B -> 02 0000010C -> 01 0000010D -> 02 0000010E -> 01 0000010F -> 02 00000110 -> 01 00000111 -> 02 00000112 -> 01 00000113 -> 02 00000114 -> 01 00000115 -> 02 00000116 -> 01 00000117 -> 02 00000118 -> 01 00000119 -> 02 0000011A -> 01 0000011B -> 02 0000011C -> 01 0000011D -> 02 0000011E -> 01 0000011F -> 02 00000120 -> 01 00000121 -> 02 00000122 -> 01 00000123 -> 02 00000124 -> 01 00000125 -> 02 00000126 -> 01 00000127 -> 02 00000128 -> 01 00000129 -> 02 0000012A -> 01 0000012B -> 02 0000012C -> 01 0000012D -> 02 0000012E -> 01 0000012F -> 02 00000130 -> 01 00000131 -> 02 00000132 -> 01 00000133 -> 02 00000134 -> 01 00000135 -> 02 00000136 -> 01 00000137 -> 02 00000139 -> 01 0000013A -> 02 0000013B -> 01 0000013C -> 02 0000013D -> 01 0000013E -> 02 0000013F -> 01 00000140 -> 02 00000141 -> 01 00000142 -> 02 00000143 -> 01 00000144 -> 02 00000145 -> 01 00000146 -> 02 00000147 -> 01 00000148 -> 02 0000014A -> 01 0000014B -> 02 0000014C -> 01 0000014D -> 02 0000014E -> 01 0000014F -> 02 00000150 -> 01 00000151 -> 02 00000152 -> 01 00000153 -> 02 00000154 -> 01 00000155 -> 02 00000156 -> 01 00000157 -> 02 00000158 -> 01 00000159 -> 02 0000015A -> 01 0000015B -> 02 0000015C -> 01 0000015D -> 02 0000015E -> 01 0000015F -> 02 00000160 -> 01 00000161 -> 02 00000162 -> 01 00000163 -> 02 00000164 -> 01 00000165 -> 02 00000166 -> 01 00000167 -> 02 00000168 -> 01 00000169 -> 02 0000016A -> 01 0000016B -> 02 0000016C -> 01 0000016D -> 02 0000016E -> 01 0000016F -> 02 00000170 -> 01 00000171 -> 02 00000172 -> 01 00000173 -> 02 00000174 -> 01 00000175 -> 02 00000176 -> 01 00000177 -> 02 00000178 -> 01 0000017A -> 02 0000017B -> 01 0000017C -> 02 0000017D -> 01 0000017E -> 02 00000181 -> 01 00000183 -> 02 00000184 -> 01 00000185 -> 02 00000186 -> 01 00000188 -> 02 00000189 -> 01 0000018C -> 02 0000018E -> 01 00000192 -> 02 00000193 -> 01 00000195 -> 02 00000196 -> 01 00000199 -> 02 0000019C -> 01 0000019E -> 02 0000019F -> 01 000001A1 -> 02 000001A2 -> 01 000001A3 -> 02 000001A4 -> 01 000001A5 -> 02 000001A6 -> 01 000001A8 -> 02 000001A9 -> 01 000001AA -> 02 000001AC -> 01 000001AD -> 02 000001AE -> 01 000001B0 -> 02 000001B1 -> 01 000001B4 -> 02 000001B5 -> 01 000001B6 -> 02 000001B7 -> 01 000001B9 -> 02 000001BB -> 13 000001BC -> 01 000001BD -> 02 000001C0 -> 13 000001C4 -> 01 000001C5 -> 03 000001C6 -> 02 000001C7 -> 01 000001C8 -> 03 000001C9 -> 02 000001CA -> 01 000001CB -> 03 000001CC -> 02 000001CD -> 01 000001CE -> 02 000001CF -> 01 000001D0 -> 02 000001D1 -> 01 000001D2 -> 02 000001D3 -> 01 000001D4 -> 02 000001D5 -> 01 000001D6 -> 02 000001D7 -> 01 000001D8 -> 02 000001D9 -> 01 000001DA -> 02 000001DB -> 01 000001DC -> 02 000001DE -> 01 000001DF -> 02 000001E0 -> 01 000001E1 -> 02 000001E2 -> 01 000001E3 -> 02 000001E4 -> 01 000001E5 -> 02 000001E6 -> 01 000001E7 -> 02 000001E8 -> 01 000001E9 -> 02 000001EA -> 01 000001EB -> 02 000001EC -> 01 000001ED -> 02 000001EE -> 01 000001EF -> 02 000001F1 -> 01 000001F2 -> 03 000001F3 -> 02 000001F4 -> 01 000001F5 -> 02 000001F6 -> 01 000001F9 -> 02 000001FA -> 01 000001FB -> 02 000001FC -> 01 000001FD -> 02 000001FE -> 01 000001FF -> 02 00000200 -> 01 00000201 -> 02 00000202 -> 01 00000203 -> 02 00000204 -> 01 00000205 -> 02 00000206 -> 01 00000207 -> 02 00000208 -> 01 00000209 -> 02 0000020A -> 01 0000020B -> 02 0000020C -> 01 0000020D -> 02 0000020E -> 01 0000020F -> 02 00000210 -> 01 00000211 -> 02 00000212 -> 01 00000213 -> 02 00000214 -> 01 00000215 -> 02 00000216 -> 01 00000217 -> 02 00000218 -> 01 00000219 -> 02 0000021A -> 01 0000021B -> 02 0000021C -> 01 0000021D -> 02 0000021E -> 01 0000021F -> 02 00000220 -> 01 00000221 -> 02 00000222 -> 01 00000223 -> 02 00000224 -> 01 00000225 -> 02 00000226 -> 01 00000227 -> 02 00000228 -> 01 00000229 -> 02 0000022A -> 01 0000022B -> 02 0000022C -> 01 0000022D -> 02 0000022E -> 01 0000022F -> 02 00000230 -> 01 00000231 -> 02 00000232 -> 01 00000233 -> 02 0000023A -> 01 0000023C -> 02 0000023D -> 01 0000023F -> 02 00000241 -> 01 00000242 -> 02 00000243 -> 01 00000247 -> 02 00000248 -> 01 00000249 -> 02 0000024A -> 01 0000024B -> 02 0000024C -> 01 0000024D -> 02 0000024E -> 01 0000024F -> 02 00000294 -> 13 00000295 -> 02 000002B0 -> 12 000002C2 -> 1D 000002C6 -> 12 000002D2 -> 1D 000002E0 -> 12 000002E5 -> 1D 000002EC -> 12 000002ED -> 1D 000002EE -> 12 000002EF -> 1D 00000300 -> 04 00000370 -> 01 00000371 -> 02 00000372 -> 01 00000373 -> 02 00000374 -> 12 00000375 -> 1D 00000376 -> 01 00000377 -> 02 00000378 -> 00 0000037A -> 12 0000037B -> 02 0000037E -> 1A 0000037F -> 00 00000384 -> 1D 00000386 -> 01 00000387 -> 1A 00000388 -> 01 0000038B -> 00 0000038C -> 01 0000038D -> 00 0000038E -> 01 00000390 -> 02 00000391 -> 01 000003A2 -> 00 000003A3 -> 01 000003AC -> 02 000003CF -> 01 000003D0 -> 02 000003D2 -> 01 000003D5 -> 02 000003D8 -> 01 000003D9 -> 02 000003DA -> 01 000003DB -> 02 000003DC -> 01 000003DD -> 02 000003DE -> 01 000003DF -> 02 000003E0 -> 01 000003E1 -> 02 000003E2 -> 01 000003E3 -> 02 000003E4 -> 01 000003E5 -> 02 000003E6 -> 01 000003E7 -> 02 000003E8 -> 01 000003E9 -> 02 000003EA -> 01 000003EB -> 02 000003EC -> 01 000003ED -> 02 000003EE -> 01 000003EF -> 02 000003F4 -> 01 000003F5 -> 02 000003F6 -> 1B 000003F7 -> 01 000003F8 -> 02 000003F9 -> 01 000003FB -> 02 000003FD -> 01 00000430 -> 02 00000460 -> 01 00000461 -> 02 00000462 -> 01 00000463 -> 02 00000464 -> 01 00000465 -> 02 00000466 -> 01 00000467 -> 02 00000468 -> 01 00000469 -> 02 0000046A -> 01 0000046B -> 02 0000046C -> 01 0000046D -> 02 0000046E -> 01 0000046F -> 02 00000470 -> 01 00000471 -> 02 00000472 -> 01 00000473 -> 02 00000474 -> 01 00000475 -> 02 00000476 -> 01 00000477 -> 02 00000478 -> 01 00000479 -> 02 0000047A -> 01 0000047B -> 02 0000047C -> 01 0000047D -> 02 0000047E -> 01 0000047F -> 02 00000480 -> 01 00000481 -> 02 00000482 -> 1E 00000483 -> 04 00000488 -> 06 0000048A -> 01 0000048B -> 02 0000048C -> 01 0000048D -> 02 0000048E -> 01 0000048F -> 02 00000490 -> 01 00000491 -> 02 00000492 -> 01 00000493 -> 02 00000494 -> 01 00000495 -> 02 00000496 -> 01 00000497 -> 02 00000498 -> 01 00000499 -> 02 0000049A -> 01 0000049B -> 02 0000049C -> 01 0000049D -> 02 0000049E -> 01 0000049F -> 02 000004A0 -> 01 000004A1 -> 02 000004A2 -> 01 000004A3 -> 02 000004A4 -> 01 000004A5 -> 02 000004A6 -> 01 000004A7 -> 02 000004A8 -> 01 000004A9 -> 02 000004AA -> 01 000004AB -> 02 000004AC -> 01 000004AD -> 02 000004AE -> 01 000004AF -> 02 000004B0 -> 01 000004B1 -> 02 000004B2 -> 01 000004B3 -> 02 000004B4 -> 01 000004B5 -> 02 000004B6 -> 01 000004B7 -> 02 000004B8 -> 01 000004B9 -> 02 000004BA -> 01 000004BB -> 02 000004BC -> 01 000004BD -> 02 000004BE -> 01 000004BF -> 02 000004C0 -> 01 000004C2 -> 02 000004C3 -> 01 000004C4 -> 02 000004C5 -> 01 000004C6 -> 02 000004C7 -> 01 000004C8 -> 02 000004C9 -> 01 000004CA -> 02 000004CB -> 01 000004CC -> 02 000004CD -> 01 000004CE -> 02 000004D0 -> 01 000004D1 -> 02 000004D2 -> 01 000004D3 -> 02 000004D4 -> 01 000004D5 -> 02 000004D6 -> 01 000004D7 -> 02 000004D8 -> 01 000004D9 -> 02 000004DA -> 01 000004DB -> 02 000004DC -> 01 000004DD -> 02 000004DE -> 01 000004DF -> 02 000004E0 -> 01 000004E1 -> 02 000004E2 -> 01 000004E3 -> 02 000004E4 -> 01 000004E5 -> 02 000004E6 -> 01 000004E7 -> 02 000004E8 -> 01 000004E9 -> 02 000004EA -> 01 000004EB -> 02 000004EC -> 01 000004ED -> 02 000004EE -> 01 000004EF -> 02 000004F0 -> 01 000004F1 -> 02 000004F2 -> 01 000004F3 -> 02 000004F4 -> 01 000004F5 -> 02 000004F6 -> 01 000004F7 -> 02 000004F8 -> 01 000004F9 -> 02 000004FA -> 01 000004FB -> 02 000004FC -> 01 000004FD -> 02 000004FE -> 01 000004FF -> 02 00000500 -> 01 00000501 -> 02 00000502 -> 01 00000503 -> 02 00000504 -> 01 00000505 -> 02 00000506 -> 01 00000507 -> 02 00000508 -> 01 00000509 -> 02 0000050A -> 01 0000050B -> 02 0000050C -> 01 0000050D -> 02 0000050E -> 01 0000050F -> 02 00000510 -> 01 00000511 -> 02 00000512 -> 01 00000513 -> 02 00000514 -> 01 00000515 -> 02 00000516 -> 01 00000517 -> 02 00000518 -> 01 00000519 -> 02 0000051A -> 01 0000051B -> 02 0000051C -> 01 0000051D -> 02 0000051E -> 01 0000051F -> 02 00000520 -> 01 00000521 -> 02 00000522 -> 01 00000523 -> 02 00000524 -> 01 00000525 -> 02 00000526 -> 00 00000531 -> 01 00000557 -> 00 00000559 -> 12 0000055A -> 1A 00000560 -> 00 00000561 -> 02 00000588 -> 00 00000589 -> 1A 0000058A -> 15 0000058B -> 00 00000591 -> 04 000005BE -> 15 000005BF -> 04 000005C0 -> 1A 000005C1 -> 04 000005C3 -> 1A 000005C4 -> 04 000005C6 -> 1A 000005C7 -> 04 000005C8 -> 00 000005D0 -> 13 000005EB -> 00 000005F0 -> 13 000005F3 -> 1A 000005F5 -> 00 00000600 -> 0E 00000604 -> 00 00000606 -> 1B 00000609 -> 1A 0000060B -> 1C 0000060C -> 1A 0000060E -> 1E 00000610 -> 04 0000061B -> 1A 0000061C -> 00 0000061E -> 1A 00000620 -> 00 00000621 -> 13 00000640 -> 12 00000641 -> 13 0000064B -> 04 0000065F -> 00 00000660 -> 07 0000066A -> 1A 0000066E -> 13 00000670 -> 04 00000671 -> 13 000006D4 -> 1A 000006D5 -> 13 000006D6 -> 04 000006DD -> 0E 000006DE -> 06 000006DF -> 04 000006E5 -> 12 000006E7 -> 04 000006E9 -> 1E 000006EA -> 04 000006EE -> 13 000006F0 -> 07 000006FA -> 13 000006FD -> 1E 000006FF -> 13 00000700 -> 1A 0000070E -> 00 0000070F -> 0E 00000710 -> 13 00000711 -> 04 00000712 -> 13 00000730 -> 04 0000074B -> 00 0000074D -> 13 000007A6 -> 04 000007B1 -> 13 000007B2 -> 00 000007C0 -> 07 000007CA -> 13 000007EB -> 04 000007F4 -> 12 000007F6 -> 1E 000007F7 -> 1A 000007FA -> 12 000007FB -> 00 00000800 -> 13 00000816 -> 04 0000081A -> 12 0000081B -> 04 00000824 -> 12 00000825 -> 04 00000828 -> 12 00000829 -> 04 0000082E -> 00 00000830 -> 1A 0000083F -> 00 00000900 -> 04 00000903 -> 05 00000904 -> 13 0000093A -> 00 0000093C -> 04 0000093D -> 13 0000093E -> 05 00000941 -> 04 00000949 -> 05 0000094D -> 04 0000094E -> 05 0000094F -> 00 00000950 -> 13 00000951 -> 04 00000956 -> 00 00000958 -> 13 00000962 -> 04 00000964 -> 1A 00000966 -> 07 00000970 -> 1A 00000971 -> 12 00000972 -> 13 00000973 -> 00 00000979 -> 13 00000980 -> 00 00000981 -> 04 00000982 -> 05 00000984 -> 00 00000985 -> 13 0000098D -> 00 0000098F -> 13 00000991 -> 00 00000993 -> 13 000009A9 -> 00 000009AA -> 13 000009B1 -> 00 000009B2 -> 13 000009B3 -> 00 000009B6 -> 13 000009BA -> 00 000009BC -> 04 000009BD -> 13 000009BE -> 05 000009C1 -> 04 000009C5 -> 00 000009C7 -> 05 000009C9 -> 00 000009CB -> 05 000009CD -> 04 000009CE -> 13 000009CF -> 00 000009D7 -> 05 000009D8 -> 00 000009DC -> 13 000009DE -> 00 000009DF -> 13 000009E2 -> 04 000009E4 -> 00 000009E6 -> 07 000009F0 -> 13 000009F2 -> 1C 000009F4 -> 09 000009FA -> 1E 000009FB -> 1C 000009FC -> 00 00000A01 -> 04 00000A03 -> 05 00000A04 -> 00 00000A05 -> 13 00000A0B -> 00 00000A0F -> 13 00000A11 -> 00 00000A13 -> 13 00000A29 -> 00 00000A2A -> 13 00000A31 -> 00 00000A32 -> 13 00000A34 -> 00 00000A35 -> 13 00000A37 -> 00 00000A38 -> 13 00000A3A -> 00 00000A3C -> 04 00000A3D -> 00 00000A3E -> 05 00000A41 -> 04 00000A43 -> 00 00000A47 -> 04 00000A49 -> 00 00000A4B -> 04 00000A4E -> 00 00000A51 -> 04 00000A52 -> 00 00000A59 -> 13 00000A5D -> 00 00000A5E -> 13 00000A5F -> 00 00000A66 -> 07 00000A70 -> 04 00000A72 -> 13 00000A75 -> 04 00000A76 -> 00 00000A81 -> 04 00000A83 -> 05 00000A84 -> 00 00000A85 -> 13 00000A8E -> 00 00000A8F -> 13 00000A92 -> 00 00000A93 -> 13 00000AA9 -> 00 00000AAA -> 13 00000AB1 -> 00 00000AB2 -> 13 00000AB4 -> 00 00000AB5 -> 13 00000ABA -> 00 00000ABC -> 04 00000ABD -> 13 00000ABE -> 05 00000AC1 -> 04 00000AC6 -> 00 00000AC7 -> 04 00000AC9 -> 05 00000ACA -> 00 00000ACB -> 05 00000ACD -> 04 00000ACE -> 00 00000AD0 -> 13 00000AD1 -> 00 00000AE0 -> 13 00000AE2 -> 04 00000AE4 -> 00 00000AE6 -> 07 00000AF0 -> 00 00000AF1 -> 1C 00000AF2 -> 00 00000B01 -> 04 00000B02 -> 05 00000B04 -> 00 00000B05 -> 13 00000B0D -> 00 00000B0F -> 13 00000B11 -> 00 00000B13 -> 13 00000B29 -> 00 00000B2A -> 13 00000B31 -> 00 00000B32 -> 13 00000B34 -> 00 00000B35 -> 13 00000B3A -> 00 00000B3C -> 04 00000B3D -> 13 00000B3E -> 05 00000B3F -> 04 00000B40 -> 05 00000B41 -> 04 00000B45 -> 00 00000B47 -> 05 00000B49 -> 00 00000B4B -> 05 00000B4D -> 04 00000B4E -> 00 00000B56 -> 04 00000B57 -> 05 00000B58 -> 00 00000B5C -> 13 00000B5E -> 00 00000B5F -> 13 00000B62 -> 04 00000B64 -> 00 00000B66 -> 07 00000B70 -> 1E 00000B71 -> 13 00000B72 -> 00 00000B82 -> 04 00000B83 -> 13 00000B84 -> 00 00000B85 -> 13 00000B8B -> 00 00000B8E -> 13 00000B91 -> 00 00000B92 -> 13 00000B96 -> 00 00000B99 -> 13 00000B9B -> 00 00000B9C -> 13 00000B9D -> 00 00000B9E -> 13 00000BA0 -> 00 00000BA3 -> 13 00000BA5 -> 00 00000BA8 -> 13 00000BAB -> 00 00000BAE -> 13 00000BBA -> 00 00000BBE -> 05 00000BC0 -> 04 00000BC1 -> 05 00000BC3 -> 00 00000BC6 -> 05 00000BC9 -> 00 00000BCA -> 05 00000BCD -> 04 00000BCE -> 00 00000BD0 -> 13 00000BD1 -> 00 00000BD7 -> 05 00000BD8 -> 00 00000BE6 -> 07 00000BF0 -> 09 00000BF3 -> 1E 00000BF9 -> 1C 00000BFA -> 1E 00000BFB -> 00 00000C01 -> 05 00000C04 -> 00 00000C05 -> 13 00000C0D -> 00 00000C0E -> 13 00000C11 -> 00 00000C12 -> 13 00000C29 -> 00 00000C2A -> 13 00000C34 -> 00 00000C35 -> 13 00000C3A -> 00 00000C3D -> 13 00000C3E -> 04 00000C41 -> 05 00000C45 -> 00 00000C46 -> 04 00000C49 -> 00 00000C4A -> 04 00000C4E -> 00 00000C55 -> 04 00000C57 -> 00 00000C58 -> 13 00000C5A -> 00 00000C60 -> 13 00000C62 -> 04 00000C64 -> 00 00000C66 -> 07 00000C70 -> 00 00000C78 -> 09 00000C7F -> 1E 00000C80 -> 00 00000C82 -> 05 00000C84 -> 00 00000C85 -> 13 00000C8D -> 00 00000C8E -> 13 00000C91 -> 00 00000C92 -> 13 00000CA9 -> 00 00000CAA -> 13 00000CB4 -> 00 00000CB5 -> 13 00000CBA -> 00 00000CBC -> 04 00000CBD -> 13 00000CBE -> 05 00000CBF -> 04 00000CC0 -> 05 00000CC5 -> 00 00000CC6 -> 04 00000CC7 -> 05 00000CC9 -> 00 00000CCA -> 05 00000CCC -> 04 00000CCE -> 00 00000CD5 -> 05 00000CD7 -> 00 00000CDE -> 13 00000CDF -> 00 00000CE0 -> 13 00000CE2 -> 04 00000CE4 -> 00 00000CE6 -> 07 00000CF0 -> 00 00000CF1 -> 1E 00000CF3 -> 00 00000D02 -> 05 00000D04 -> 00 00000D05 -> 13 00000D0D -> 00 00000D0E -> 13 00000D11 -> 00 00000D12 -> 13 00000D29 -> 00 00000D2A -> 13 00000D3A -> 00 00000D3D -> 13 00000D3E -> 05 00000D41 -> 04 00000D45 -> 00 00000D46 -> 05 00000D49 -> 00 00000D4A -> 05 00000D4D -> 04 00000D4E -> 00 00000D57 -> 05 00000D58 -> 00 00000D60 -> 13 00000D62 -> 04 00000D64 -> 00 00000D66 -> 07 00000D70 -> 09 00000D76 -> 00 00000D79 -> 1E 00000D7A -> 13 00000D80 -> 00 00000D82 -> 05 00000D84 -> 00 00000D85 -> 13 00000D97 -> 00 00000D9A -> 13 00000DB2 -> 00 00000DB3 -> 13 00000DBC -> 00 00000DBD -> 13 00000DBE -> 00 00000DC0 -> 13 00000DC7 -> 00 00000DCA -> 04 00000DCB -> 00 00000DCF -> 05 00000DD2 -> 04 00000DD5 -> 00 00000DD6 -> 04 00000DD7 -> 00 00000DD8 -> 05 00000DE0 -> 00 00000DF2 -> 05 00000DF4 -> 1A 00000DF5 -> 00 00000E01 -> 13 00000E31 -> 04 00000E32 -> 13 00000E34 -> 04 00000E3B -> 00 00000E3F -> 1C 00000E40 -> 13 00000E46 -> 12 00000E47 -> 04 00000E4F -> 1A 00000E50 -> 07 00000E5A -> 1A 00000E5C -> 00 00000E81 -> 13 00000E83 -> 00 00000E84 -> 13 00000E85 -> 00 00000E87 -> 13 00000E89 -> 00 00000E8A -> 13 00000E8B -> 00 00000E8D -> 13 00000E8E -> 00 00000E94 -> 13 00000E98 -> 00 00000E99 -> 13 00000EA0 -> 00 00000EA1 -> 13 00000EA4 -> 00 00000EA5 -> 13 00000EA6 -> 00 00000EA7 -> 13 00000EA8 -> 00 00000EAA -> 13 00000EAC -> 00 00000EAD -> 13 00000EB1 -> 04 00000EB2 -> 13 00000EB4 -> 04 00000EBA -> 00 00000EBB -> 04 00000EBD -> 13 00000EBE -> 00 00000EC0 -> 13 00000EC5 -> 00 00000EC6 -> 12 00000EC7 -> 00 00000EC8 -> 04 00000ECE -> 00 00000ED0 -> 07 00000EDA -> 00 00000EDC -> 13 00000EDE -> 00 00000F00 -> 13 00000F01 -> 1E 00000F04 -> 1A 00000F13 -> 1E 00000F18 -> 04 00000F1A -> 1E 00000F20 -> 07 00000F2A -> 09 00000F34 -> 1E 00000F35 -> 04 00000F36 -> 1E 00000F37 -> 04 00000F38 -> 1E 00000F39 -> 04 00000F3A -> 16 00000F3B -> 17 00000F3C -> 16 00000F3D -> 17 00000F3E -> 05 00000F40 -> 13 00000F48 -> 00 00000F49 -> 13 00000F6D -> 00 00000F71 -> 04 00000F7F -> 05 00000F80 -> 04 00000F85 -> 1A 00000F86 -> 04 00000F88 -> 13 00000F8C -> 00 00000F90 -> 04 00000F98 -> 00 00000F99 -> 04 00000FBD -> 00 00000FBE -> 1E 00000FC6 -> 04 00000FC7 -> 1E 00000FCD -> 00 00000FCE -> 1E 00000FD0 -> 1A 00000FD5 -> 1E 00000FD9 -> 00 00001000 -> 13 0000102B -> 05 0000102D -> 04 00001031 -> 05 00001032 -> 04 00001038 -> 05 00001039 -> 04 0000103B -> 05 0000103D -> 04 0000103F -> 13 00001040 -> 07 0000104A -> 1A 00001050 -> 13 00001056 -> 05 00001058 -> 04 0000105A -> 13 0000105E -> 04 00001061 -> 13 00001062 -> 05 00001065 -> 13 00001067 -> 05 0000106E -> 13 00001071 -> 04 00001075 -> 13 00001082 -> 04 00001083 -> 05 00001085 -> 04 00001087 -> 05 0000108D -> 04 0000108E -> 13 0000108F -> 05 00001090 -> 07 0000109A -> 05 0000109D -> 04 0000109E -> 1E 000010A0 -> 01 000010C6 -> 00 000010D0 -> 13 000010FB -> 1A 000010FC -> 12 000010FD -> 00 00001100 -> 13 00001249 -> 00 0000124A -> 13 0000124E -> 00 00001250 -> 13 00001257 -> 00 00001258 -> 13 00001259 -> 00 0000125A -> 13 0000125E -> 00 00001260 -> 13 00001289 -> 00 0000128A -> 13 0000128E -> 00 00001290 -> 13 000012B1 -> 00 000012B2 -> 13 000012B6 -> 00 000012B8 -> 13 000012BF -> 00 000012C0 -> 13 000012C1 -> 00 000012C2 -> 13 000012C6 -> 00 000012C8 -> 13 000012D7 -> 00 000012D8 -> 13 00001311 -> 00 00001312 -> 13 00001316 -> 00 00001318 -> 13 0000135B -> 00 0000135F -> 04 00001360 -> 1E 00001361 -> 1A 00001369 -> 09 0000137D -> 00 00001380 -> 13 00001390 -> 1E 0000139A -> 00 000013A0 -> 13 000013F5 -> 00 00001400 -> 15 00001401 -> 13 0000166D -> 1A 0000166F -> 13 00001680 -> 0A 00001681 -> 13 0000169B -> 16 0000169C -> 17 0000169D -> 00 000016A0 -> 13 000016EB -> 1A 000016EE -> 08 000016F1 -> 00 00001700 -> 13 0000170D -> 00 0000170E -> 13 00001712 -> 04 00001715 -> 00 00001720 -> 13 00001732 -> 04 00001735 -> 1A 00001737 -> 00 00001740 -> 13 00001752 -> 04 00001754 -> 00 00001760 -> 13 0000176D -> 00 0000176E -> 13 00001771 -> 00 00001772 -> 04 00001774 -> 00 00001780 -> 13 000017B4 -> 0E 000017B6 -> 05 000017B7 -> 04 000017BE -> 05 000017C6 -> 04 000017C7 -> 05 000017C9 -> 04 000017D4 -> 1A 000017D7 -> 12 000017D8 -> 1A 000017DB -> 1C 000017DC -> 13 000017DD -> 04 000017DE -> 00 000017E0 -> 07 000017EA -> 00 000017F0 -> 09 000017FA -> 00 00001800 -> 1A 00001806 -> 15 00001807 -> 1A 0000180B -> 04 0000180E -> 0A 0000180F -> 00 00001810 -> 07 0000181A -> 00 00001820 -> 13 00001843 -> 12 00001844 -> 13 00001878 -> 00 00001880 -> 13 000018A9 -> 04 000018AA -> 13 000018AB -> 00 000018B0 -> 13 000018F6 -> 00 00001900 -> 13 0000191D -> 00 00001920 -> 04 00001923 -> 05 00001927 -> 04 00001929 -> 05 0000192C -> 00 00001930 -> 05 00001932 -> 04 00001933 -> 05 00001939 -> 04 0000193C -> 00 00001940 -> 1E 00001941 -> 00 00001944 -> 1A 00001946 -> 07 00001950 -> 13 0000196E -> 00 00001970 -> 13 00001975 -> 00 00001980 -> 13 000019AC -> 00 000019B0 -> 05 000019C1 -> 13 000019C8 -> 05 000019CA -> 00 000019D0 -> 07 000019DB -> 00 000019DE -> 1A 000019E0 -> 1E 00001A00 -> 13 00001A17 -> 04 00001A19 -> 05 00001A1C -> 00 00001A1E -> 1A 00001A20 -> 13 00001A55 -> 05 00001A56 -> 04 00001A57 -> 05 00001A58 -> 04 00001A5F -> 00 00001A60 -> 04 00001A61 -> 05 00001A62 -> 04 00001A63 -> 05 00001A65 -> 04 00001A6D -> 05 00001A73 -> 04 00001A7D -> 00 00001A7F -> 04 00001A80 -> 07 00001A8A -> 00 00001A90 -> 07 00001A9A -> 00 00001AA0 -> 1A 00001AA7 -> 12 00001AA8 -> 1A 00001AAE -> 00 00001B00 -> 04 00001B04 -> 05 00001B05 -> 13 00001B34 -> 04 00001B35 -> 05 00001B36 -> 04 00001B3B -> 05 00001B3C -> 04 00001B3D -> 05 00001B42 -> 04 00001B43 -> 05 00001B45 -> 13 00001B4C -> 00 00001B50 -> 07 00001B5A -> 1A 00001B61 -> 1E 00001B6B -> 04 00001B74 -> 1E 00001B7D -> 00 00001B80 -> 04 00001B82 -> 05 00001B83 -> 13 00001BA1 -> 05 00001BA2 -> 04 00001BA6 -> 05 00001BA8 -> 04 00001BAA -> 05 00001BAB -> 00 00001BAE -> 13 00001BB0 -> 07 00001BBA -> 00 00001C00 -> 13 00001C24 -> 05 00001C2C -> 04 00001C34 -> 05 00001C36 -> 04 00001C38 -> 00 00001C3B -> 1A 00001C40 -> 07 00001C4A -> 00 00001C4D -> 13 00001C50 -> 07 00001C5A -> 13 00001C78 -> 12 00001C7E -> 1A 00001C80 -> 00 00001CD0 -> 04 00001CD3 -> 1A 00001CD4 -> 04 00001CE1 -> 05 00001CE2 -> 04 00001CE9 -> 13 00001CED -> 04 00001CEE -> 13 00001CF2 -> 05 00001CF3 -> 00 00001D00 -> 02 00001D2C -> 12 00001D62 -> 02 00001D78 -> 12 00001D79 -> 02 00001D9B -> 12 00001DC0 -> 04 00001DE7 -> 00 00001DFD -> 04 00001E00 -> 01 00001E01 -> 02 00001E02 -> 01 00001E03 -> 02 00001E04 -> 01 00001E05 -> 02 00001E06 -> 01 00001E07 -> 02 00001E08 -> 01 00001E09 -> 02 00001E0A -> 01 00001E0B -> 02 00001E0C -> 01 00001E0D -> 02 00001E0E -> 01 00001E0F -> 02 00001E10 -> 01 00001E11 -> 02 00001E12 -> 01 00001E13 -> 02 00001E14 -> 01 00001E15 -> 02 00001E16 -> 01 00001E17 -> 02 00001E18 -> 01 00001E19 -> 02 00001E1A -> 01 00001E1B -> 02 00001E1C -> 01 00001E1D -> 02 00001E1E -> 01 00001E1F -> 02 00001E20 -> 01 00001E21 -> 02 00001E22 -> 01 00001E23 -> 02 00001E24 -> 01 00001E25 -> 02 00001E26 -> 01 00001E27 -> 02 00001E28 -> 01 00001E29 -> 02 00001E2A -> 01 00001E2B -> 02 00001E2C -> 01 00001E2D -> 02 00001E2E -> 01 00001E2F -> 02 00001E30 -> 01 00001E31 -> 02 00001E32 -> 01 00001E33 -> 02 00001E34 -> 01 00001E35 -> 02 00001E36 -> 01 00001E37 -> 02 00001E38 -> 01 00001E39 -> 02 00001E3A -> 01 00001E3B -> 02 00001E3C -> 01 00001E3D -> 02 00001E3E -> 01 00001E3F -> 02 00001E40 -> 01 00001E41 -> 02 00001E42 -> 01 00001E43 -> 02 00001E44 -> 01 00001E45 -> 02 00001E46 -> 01 00001E47 -> 02 00001E48 -> 01 00001E49 -> 02 00001E4A -> 01 00001E4B -> 02 00001E4C -> 01 00001E4D -> 02 00001E4E -> 01 00001E4F -> 02 00001E50 -> 01 00001E51 -> 02 00001E52 -> 01 00001E53 -> 02 00001E54 -> 01 00001E55 -> 02 00001E56 -> 01 00001E57 -> 02 00001E58 -> 01 00001E59 -> 02 00001E5A -> 01 00001E5B -> 02 00001E5C -> 01 00001E5D -> 02 00001E5E -> 01 00001E5F -> 02 00001E60 -> 01 00001E61 -> 02 00001E62 -> 01 00001E63 -> 02 00001E64 -> 01 00001E65 -> 02 00001E66 -> 01 00001E67 -> 02 00001E68 -> 01 00001E69 -> 02 00001E6A -> 01 00001E6B -> 02 00001E6C -> 01 00001E6D -> 02 00001E6E -> 01 00001E6F -> 02 00001E70 -> 01 00001E71 -> 02 00001E72 -> 01 00001E73 -> 02 00001E74 -> 01 00001E75 -> 02 00001E76 -> 01 00001E77 -> 02 00001E78 -> 01 00001E79 -> 02 00001E7A -> 01 00001E7B -> 02 00001E7C -> 01 00001E7D -> 02 00001E7E -> 01 00001E7F -> 02 00001E80 -> 01 00001E81 -> 02 00001E82 -> 01 00001E83 -> 02 00001E84 -> 01 00001E85 -> 02 00001E86 -> 01 00001E87 -> 02 00001E88 -> 01 00001E89 -> 02 00001E8A -> 01 00001E8B -> 02 00001E8C -> 01 00001E8D -> 02 00001E8E -> 01 00001E8F -> 02 00001E90 -> 01 00001E91 -> 02 00001E92 -> 01 00001E93 -> 02 00001E94 -> 01 00001E95 -> 02 00001E9E -> 01 00001E9F -> 02 00001EA0 -> 01 00001EA1 -> 02 00001EA2 -> 01 00001EA3 -> 02 00001EA4 -> 01 00001EA5 -> 02 00001EA6 -> 01 00001EA7 -> 02 00001EA8 -> 01 00001EA9 -> 02 00001EAA -> 01 00001EAB -> 02 00001EAC -> 01 00001EAD -> 02 00001EAE -> 01 00001EAF -> 02 00001EB0 -> 01 00001EB1 -> 02 00001EB2 -> 01 00001EB3 -> 02 00001EB4 -> 01 00001EB5 -> 02 00001EB6 -> 01 00001EB7 -> 02 00001EB8 -> 01 00001EB9 -> 02 00001EBA -> 01 00001EBB -> 02 00001EBC -> 01 00001EBD -> 02 00001EBE -> 01 00001EBF -> 02 00001EC0 -> 01 00001EC1 -> 02 00001EC2 -> 01 00001EC3 -> 02 00001EC4 -> 01 00001EC5 -> 02 00001EC6 -> 01 00001EC7 -> 02 00001EC8 -> 01 00001EC9 -> 02 00001ECA -> 01 00001ECB -> 02 00001ECC -> 01 00001ECD -> 02 00001ECE -> 01 00001ECF -> 02 00001ED0 -> 01 00001ED1 -> 02 00001ED2 -> 01 00001ED3 -> 02 00001ED4 -> 01 00001ED5 -> 02 00001ED6 -> 01 00001ED7 -> 02 00001ED8 -> 01 00001ED9 -> 02 00001EDA -> 01 00001EDB -> 02 00001EDC -> 01 00001EDD -> 02 00001EDE -> 01 00001EDF -> 02 00001EE0 -> 01 00001EE1 -> 02 00001EE2 -> 01 00001EE3 -> 02 00001EE4 -> 01 00001EE5 -> 02 00001EE6 -> 01 00001EE7 -> 02 00001EE8 -> 01 00001EE9 -> 02 00001EEA -> 01 00001EEB -> 02 00001EEC -> 01 00001EED -> 02 00001EEE -> 01 00001EEF -> 02 00001EF0 -> 01 00001EF1 -> 02 00001EF2 -> 01 00001EF3 -> 02 00001EF4 -> 01 00001EF5 -> 02 00001EF6 -> 01 00001EF7 -> 02 00001EF8 -> 01 00001EF9 -> 02 00001EFA -> 01 00001EFB -> 02 00001EFC -> 01 00001EFD -> 02 00001EFE -> 01 00001EFF -> 02 00001F08 -> 01 00001F10 -> 02 00001F16 -> 00 00001F18 -> 01 00001F1E -> 00 00001F20 -> 02 00001F28 -> 01 00001F30 -> 02 00001F38 -> 01 00001F40 -> 02 00001F46 -> 00 00001F48 -> 01 00001F4E -> 00 00001F50 -> 02 00001F58 -> 00 00001F59 -> 01 00001F5A -> 00 00001F5B -> 01 00001F5C -> 00 00001F5D -> 01 00001F5E -> 00 00001F5F -> 01 00001F60 -> 02 00001F68 -> 01 00001F70 -> 02 00001F7E -> 00 00001F80 -> 02 00001F88 -> 03 00001F90 -> 02 00001F98 -> 03 00001FA0 -> 02 00001FA8 -> 03 00001FB0 -> 02 00001FB5 -> 00 00001FB6 -> 02 00001FB8 -> 01 00001FBC -> 03 00001FBD -> 1D 00001FBE -> 02 00001FBF -> 1D 00001FC2 -> 02 00001FC5 -> 00 00001FC6 -> 02 00001FC8 -> 01 00001FCC -> 03 00001FCD -> 1D 00001FD0 -> 02 00001FD4 -> 00 00001FD6 -> 02 00001FD8 -> 01 00001FDC -> 00 00001FDD -> 1D 00001FE0 -> 02 00001FE8 -> 01 00001FED -> 1D 00001FF0 -> 00 00001FF2 -> 02 00001FF5 -> 00 00001FF6 -> 02 00001FF8 -> 01 00001FFC -> 03 00001FFD -> 1D 00001FFF -> 00 00002000 -> 0A 0000200B -> 0E 00002010 -> 15 00002016 -> 1A 00002018 -> 18 00002019 -> 19 0000201A -> 16 0000201B -> 18 0000201D -> 19 0000201E -> 16 0000201F -> 18 00002020 -> 1A 00002028 -> 0B 00002029 -> 0C 0000202A -> 0E 0000202F -> 0A 00002030 -> 1A 00002039 -> 18 0000203A -> 19 0000203B -> 1A 0000203F -> 14 00002041 -> 1A 00002044 -> 1B 00002045 -> 16 00002046 -> 17 00002047 -> 1A 00002052 -> 1B 00002053 -> 1A 00002054 -> 14 00002055 -> 1A 0000205F -> 0A 00002060 -> 0E 00002065 -> 00 0000206A -> 0E 00002070 -> 09 00002071 -> 12 00002072 -> 00 00002074 -> 09 0000207A -> 1B 0000207D -> 16 0000207E -> 17 0000207F -> 12 00002080 -> 09 0000208A -> 1B 0000208D -> 16 0000208E -> 17 0000208F -> 00 00002090 -> 12 00002095 -> 00 000020A0 -> 1C 000020B9 -> 00 000020D0 -> 04 000020DD -> 06 000020E1 -> 04 000020E2 -> 06 000020E5 -> 04 000020F1 -> 00 00002100 -> 1E 00002102 -> 01 00002103 -> 1E 00002107 -> 01 00002108 -> 1E 0000210A -> 02 0000210B -> 01 0000210E -> 02 00002110 -> 01 00002113 -> 02 00002114 -> 1E 00002115 -> 01 00002116 -> 1E 00002119 -> 01 0000211E -> 1E 00002124 -> 01 00002125 -> 1E 00002126 -> 01 00002127 -> 1E 00002128 -> 01 00002129 -> 1E 0000212A -> 01 0000212E -> 1E 0000212F -> 02 00002130 -> 01 00002134 -> 02 00002135 -> 13 00002139 -> 02 0000213A -> 1E 0000213C -> 02 0000213E -> 01 00002140 -> 1B 00002145 -> 01 00002146 -> 02 0000214A -> 1E 0000214B -> 1B 0000214C -> 1E 0000214E -> 02 0000214F -> 1E 00002150 -> 09 00002160 -> 08 00002183 -> 01 00002184 -> 02 00002185 -> 08 00002189 -> 09 0000218A -> 00 00002190 -> 1B 00002195 -> 1E 0000219A -> 1B 0000219C -> 1E 000021A0 -> 1B 000021A1 -> 1E 000021A3 -> 1B 000021A4 -> 1E 000021A6 -> 1B 000021A7 -> 1E 000021AE -> 1B 000021AF -> 1E 000021CE -> 1B 000021D0 -> 1E 000021D2 -> 1B 000021D3 -> 1E 000021D4 -> 1B 000021D5 -> 1E 000021F4 -> 1B 00002300 -> 1E 00002308 -> 1B 0000230C -> 1E 00002320 -> 1B 00002322 -> 1E 00002329 -> 16 0000232A -> 17 0000232B -> 1E 0000237C -> 1B 0000237D -> 1E 0000239B -> 1B 000023B4 -> 1E 000023DC -> 1B 000023E2 -> 1E 000023E9 -> 00 00002400 -> 1E 00002427 -> 00 00002440 -> 1E 0000244B -> 00 00002460 -> 09 0000249C -> 1E 000024EA -> 09 00002500 -> 1E 000025B7 -> 1B 000025B8 -> 1E 000025C1 -> 1B 000025C2 -> 1E 000025F8 -> 1B 00002600 -> 1E 0000266F -> 1B 00002670 -> 1E 000026CE -> 00 000026CF -> 1E 000026E2 -> 00 000026E3 -> 1E 000026E4 -> 00 000026E8 -> 1E 00002700 -> 00 00002701 -> 1E 00002705 -> 00 00002706 -> 1E 0000270A -> 00 0000270C -> 1E 00002728 -> 00 00002729 -> 1E 0000274C -> 00 0000274D -> 1E 0000274E -> 00 0000274F -> 1E 00002753 -> 00 00002756 -> 1E 0000275F -> 00 00002761 -> 1E 00002768 -> 16 00002769 -> 17 0000276A -> 16 0000276B -> 17 0000276C -> 16 0000276D -> 17 0000276E -> 16 0000276F -> 17 00002770 -> 16 00002771 -> 17 00002772 -> 16 00002773 -> 17 00002774 -> 16 00002775 -> 17 00002776 -> 09 00002794 -> 1E 00002795 -> 00 00002798 -> 1E 000027B0 -> 00 000027B1 -> 1E 000027BF -> 00 000027C0 -> 1B 000027C5 -> 16 000027C6 -> 17 000027C7 -> 1B 000027CB -> 00 000027CC -> 1B 000027CD -> 00 000027D0 -> 1B 000027E6 -> 16 000027E7 -> 17 000027E8 -> 16 000027E9 -> 17 000027EA -> 16 000027EB -> 17 000027EC -> 16 000027ED -> 17 000027EE -> 16 000027EF -> 17 000027F0 -> 1B 00002800 -> 1E 00002900 -> 1B 00002983 -> 16 00002984 -> 17 00002985 -> 16 00002986 -> 17 00002987 -> 16 00002988 -> 17 00002989 -> 16 0000298A -> 17 0000298B -> 16 0000298C -> 17 0000298D -> 16 0000298E -> 17 0000298F -> 16 00002990 -> 17 00002991 -> 16 00002992 -> 17 00002993 -> 16 00002994 -> 17 00002995 -> 16 00002996 -> 17 00002997 -> 16 00002998 -> 17 00002999 -> 1B 000029D8 -> 16 000029D9 -> 17 000029DA -> 16 000029DB -> 17 000029DC -> 1B 000029FC -> 16 000029FD -> 17 000029FE -> 1B 00002B00 -> 1E 00002B30 -> 1B 00002B45 -> 1E 00002B47 -> 1B 00002B4D -> 00 00002B50 -> 1E 00002B5A -> 00 00002C00 -> 01 00002C2F -> 00 00002C30 -> 02 00002C5F -> 00 00002C60 -> 01 00002C61 -> 02 00002C62 -> 01 00002C65 -> 02 00002C67 -> 01 00002C68 -> 02 00002C69 -> 01 00002C6A -> 02 00002C6B -> 01 00002C6C -> 02 00002C6D -> 01 00002C71 -> 02 00002C72 -> 01 00002C73 -> 02 00002C75 -> 01 00002C76 -> 02 00002C7D -> 12 00002C7E -> 01 00002C81 -> 02 00002C82 -> 01 00002C83 -> 02 00002C84 -> 01 00002C85 -> 02 00002C86 -> 01 00002C87 -> 02 00002C88 -> 01 00002C89 -> 02 00002C8A -> 01 00002C8B -> 02 00002C8C -> 01 00002C8D -> 02 00002C8E -> 01 00002C8F -> 02 00002C90 -> 01 00002C91 -> 02 00002C92 -> 01 00002C93 -> 02 00002C94 -> 01 00002C95 -> 02 00002C96 -> 01 00002C97 -> 02 00002C98 -> 01 00002C99 -> 02 00002C9A -> 01 00002C9B -> 02 00002C9C -> 01 00002C9D -> 02 00002C9E -> 01 00002C9F -> 02 00002CA0 -> 01 00002CA1 -> 02 00002CA2 -> 01 00002CA3 -> 02 00002CA4 -> 01 00002CA5 -> 02 00002CA6 -> 01 00002CA7 -> 02 00002CA8 -> 01 00002CA9 -> 02 00002CAA -> 01 00002CAB -> 02 00002CAC -> 01 00002CAD -> 02 00002CAE -> 01 00002CAF -> 02 00002CB0 -> 01 00002CB1 -> 02 00002CB2 -> 01 00002CB3 -> 02 00002CB4 -> 01 00002CB5 -> 02 00002CB6 -> 01 00002CB7 -> 02 00002CB8 -> 01 00002CB9 -> 02 00002CBA -> 01 00002CBB -> 02 00002CBC -> 01 00002CBD -> 02 00002CBE -> 01 00002CBF -> 02 00002CC0 -> 01 00002CC1 -> 02 00002CC2 -> 01 00002CC3 -> 02 00002CC4 -> 01 00002CC5 -> 02 00002CC6 -> 01 00002CC7 -> 02 00002CC8 -> 01 00002CC9 -> 02 00002CCA -> 01 00002CCB -> 02 00002CCC -> 01 00002CCD -> 02 00002CCE -> 01 00002CCF -> 02 00002CD0 -> 01 00002CD1 -> 02 00002CD2 -> 01 00002CD3 -> 02 00002CD4 -> 01 00002CD5 -> 02 00002CD6 -> 01 00002CD7 -> 02 00002CD8 -> 01 00002CD9 -> 02 00002CDA -> 01 00002CDB -> 02 00002CDC -> 01 00002CDD -> 02 00002CDE -> 01 00002CDF -> 02 00002CE0 -> 01 00002CE1 -> 02 00002CE2 -> 01 00002CE3 -> 02 00002CE5 -> 1E 00002CEB -> 01 00002CEC -> 02 00002CED -> 01 00002CEE -> 02 00002CEF -> 04 00002CF2 -> 00 00002CF9 -> 1A 00002CFD -> 09 00002CFE -> 1A 00002D00 -> 02 00002D26 -> 00 00002D30 -> 13 00002D66 -> 00 00002D6F -> 12 00002D70 -> 00 00002D80 -> 13 00002D97 -> 00 00002DA0 -> 13 00002DA7 -> 00 00002DA8 -> 13 00002DAF -> 00 00002DB0 -> 13 00002DB7 -> 00 00002DB8 -> 13 00002DBF -> 00 00002DC0 -> 13 00002DC7 -> 00 00002DC8 -> 13 00002DCF -> 00 00002DD0 -> 13 00002DD7 -> 00 00002DD8 -> 13 00002DDF -> 00 00002DE0 -> 04 00002E00 -> 1A 00002E02 -> 18 00002E03 -> 19 00002E04 -> 18 00002E05 -> 19 00002E06 -> 1A 00002E09 -> 18 00002E0A -> 19 00002E0B -> 1A 00002E0C -> 18 00002E0D -> 19 00002E0E -> 1A 00002E17 -> 15 00002E18 -> 1A 00002E1A -> 15 00002E1B -> 1A 00002E1C -> 18 00002E1D -> 19 00002E1E -> 1A 00002E20 -> 18 00002E21 -> 19 00002E22 -> 16 00002E23 -> 17 00002E24 -> 16 00002E25 -> 17 00002E26 -> 16 00002E27 -> 17 00002E28 -> 16 00002E29 -> 17 00002E2A -> 1A 00002E2F -> 12 00002E30 -> 1A 00002E32 -> 00 00002E80 -> 1E 00002E9A -> 00 00002E9B -> 1E 00002EF4 -> 00 00002F00 -> 1E 00002FD6 -> 00 00002FF0 -> 1E 00002FFC -> 00 00003000 -> 0A 00003001 -> 1A 00003004 -> 1E 00003005 -> 12 00003006 -> 13 00003007 -> 08 00003008 -> 16 00003009 -> 17 0000300A -> 16 0000300B -> 17 0000300C -> 16 0000300D -> 17 0000300E -> 16 0000300F -> 17 00003010 -> 16 00003011 -> 17 00003012 -> 1E 00003014 -> 16 00003015 -> 17 00003016 -> 16 00003017 -> 17 00003018 -> 16 00003019 -> 17 0000301A -> 16 0000301B -> 17 0000301C -> 15 0000301D -> 16 0000301E -> 17 00003020 -> 1E 00003021 -> 08 0000302A -> 04 00003030 -> 15 00003031 -> 12 00003036 -> 1E 00003038 -> 08 0000303B -> 12 0000303C -> 13 0000303D -> 1A 0000303E -> 1E 00003040 -> 00 00003041 -> 13 00003097 -> 00 00003099 -> 04 0000309B -> 1D 0000309D -> 12 0000309F -> 13 000030A0 -> 15 000030A1 -> 13 000030FB -> 1A 000030FC -> 12 000030FF -> 13 00003100 -> 00 00003105 -> 13 0000312E -> 00 00003131 -> 13 0000318F -> 00 00003190 -> 1E 00003192 -> 09 00003196 -> 1E 000031A0 -> 13 000031B8 -> 00 000031C0 -> 1E 000031E4 -> 00 000031F0 -> 13 00003200 -> 1E 0000321F -> 00 00003220 -> 09 0000322A -> 1E 00003251 -> 09 00003260 -> 1E 00003280 -> 09 0000328A -> 1E 000032B1 -> 09 000032C0 -> 1E 000032FF -> 00 00003300 -> 1E 00003400 -> 13 00004DB5 -> 13 00004DB6 -> 00 00004DC0 -> 1E 00004E00 -> 13 00009FCB -> 13 00009FCC -> 00 0000A000 -> 13 0000A015 -> 12 0000A016 -> 13 0000A48D -> 00 0000A490 -> 1E 0000A4C7 -> 00 0000A4D0 -> 13 0000A4F8 -> 12 0000A4FE -> 1A 0000A500 -> 13 0000A60C -> 12 0000A60D -> 1A 0000A610 -> 13 0000A620 -> 07 0000A62A -> 13 0000A62C -> 00 0000A640 -> 01 0000A641 -> 02 0000A642 -> 01 0000A643 -> 02 0000A644 -> 01 0000A645 -> 02 0000A646 -> 01 0000A647 -> 02 0000A648 -> 01 0000A649 -> 02 0000A64A -> 01 0000A64B -> 02 0000A64C -> 01 0000A64D -> 02 0000A64E -> 01 0000A64F -> 02 0000A650 -> 01 0000A651 -> 02 0000A652 -> 01 0000A653 -> 02 0000A654 -> 01 0000A655 -> 02 0000A656 -> 01 0000A657 -> 02 0000A658 -> 01 0000A659 -> 02 0000A65A -> 01 0000A65B -> 02 0000A65C -> 01 0000A65D -> 02 0000A65E -> 01 0000A65F -> 02 0000A660 -> 00 0000A662 -> 01 0000A663 -> 02 0000A664 -> 01 0000A665 -> 02 0000A666 -> 01 0000A667 -> 02 0000A668 -> 01 0000A669 -> 02 0000A66A -> 01 0000A66B -> 02 0000A66C -> 01 0000A66D -> 02 0000A66E -> 13 0000A66F -> 04 0000A670 -> 06 0000A673 -> 1A 0000A674 -> 00 0000A67C -> 04 0000A67E -> 1A 0000A67F -> 12 0000A680 -> 01 0000A681 -> 02 0000A682 -> 01 0000A683 -> 02 0000A684 -> 01 0000A685 -> 02 0000A686 -> 01 0000A687 -> 02 0000A688 -> 01 0000A689 -> 02 0000A68A -> 01 0000A68B -> 02 0000A68C -> 01 0000A68D -> 02 0000A68E -> 01 0000A68F -> 02 0000A690 -> 01 0000A691 -> 02 0000A692 -> 01 0000A693 -> 02 0000A694 -> 01 0000A695 -> 02 0000A696 -> 01 0000A697 -> 02 0000A698 -> 00 0000A6A0 -> 13 0000A6E6 -> 08 0000A6F0 -> 04 0000A6F2 -> 1A 0000A6F8 -> 00 0000A700 -> 1D 0000A717 -> 12 0000A720 -> 1D 0000A722 -> 01 0000A723 -> 02 0000A724 -> 01 0000A725 -> 02 0000A726 -> 01 0000A727 -> 02 0000A728 -> 01 0000A729 -> 02 0000A72A -> 01 0000A72B -> 02 0000A72C -> 01 0000A72D -> 02 0000A72E -> 01 0000A72F -> 02 0000A732 -> 01 0000A733 -> 02 0000A734 -> 01 0000A735 -> 02 0000A736 -> 01 0000A737 -> 02 0000A738 -> 01 0000A739 -> 02 0000A73A -> 01 0000A73B -> 02 0000A73C -> 01 0000A73D -> 02 0000A73E -> 01 0000A73F -> 02 0000A740 -> 01 0000A741 -> 02 0000A742 -> 01 0000A743 -> 02 0000A744 -> 01 0000A745 -> 02 0000A746 -> 01 0000A747 -> 02 0000A748 -> 01 0000A749 -> 02 0000A74A -> 01 0000A74B -> 02 0000A74C -> 01 0000A74D -> 02 0000A74E -> 01 0000A74F -> 02 0000A750 -> 01 0000A751 -> 02 0000A752 -> 01 0000A753 -> 02 0000A754 -> 01 0000A755 -> 02 0000A756 -> 01 0000A757 -> 02 0000A758 -> 01 0000A759 -> 02 0000A75A -> 01 0000A75B -> 02 0000A75C -> 01 0000A75D -> 02 0000A75E -> 01 0000A75F -> 02 0000A760 -> 01 0000A761 -> 02 0000A762 -> 01 0000A763 -> 02 0000A764 -> 01 0000A765 -> 02 0000A766 -> 01 0000A767 -> 02 0000A768 -> 01 0000A769 -> 02 0000A76A -> 01 0000A76B -> 02 0000A76C -> 01 0000A76D -> 02 0000A76E -> 01 0000A76F -> 02 0000A770 -> 12 0000A771 -> 02 0000A779 -> 01 0000A77A -> 02 0000A77B -> 01 0000A77C -> 02 0000A77D -> 01 0000A77F -> 02 0000A780 -> 01 0000A781 -> 02 0000A782 -> 01 0000A783 -> 02 0000A784 -> 01 0000A785 -> 02 0000A786 -> 01 0000A787 -> 02 0000A788 -> 12 0000A789 -> 1D 0000A78B -> 01 0000A78C -> 02 0000A78D -> 00 0000A7FB -> 13 0000A802 -> 04 0000A803 -> 13 0000A806 -> 04 0000A807 -> 13 0000A80B -> 04 0000A80C -> 13 0000A823 -> 05 0000A825 -> 04 0000A827 -> 05 0000A828 -> 1E 0000A82C -> 00 0000A830 -> 09 0000A836 -> 1E 0000A838 -> 1C 0000A839 -> 1E 0000A83A -> 00 0000A840 -> 13 0000A874 -> 1A 0000A878 -> 00 0000A880 -> 05 0000A882 -> 13 0000A8B4 -> 05 0000A8C4 -> 04 0000A8C5 -> 00 0000A8CE -> 1A 0000A8D0 -> 07 0000A8DA -> 00 0000A8E0 -> 04 0000A8F2 -> 13 0000A8F8 -> 1A 0000A8FB -> 13 0000A8FC -> 00 0000A900 -> 07 0000A90A -> 13 0000A926 -> 04 0000A92E -> 1A 0000A930 -> 13 0000A947 -> 04 0000A952 -> 05 0000A954 -> 00 0000A95F -> 1A 0000A960 -> 13 0000A97D -> 00 0000A980 -> 04 0000A983 -> 05 0000A984 -> 13 0000A9B3 -> 04 0000A9B4 -> 05 0000A9B6 -> 04 0000A9BA -> 05 0000A9BC -> 04 0000A9BD -> 05 0000A9C1 -> 1A 0000A9CE -> 00 0000A9CF -> 12 0000A9D0 -> 07 0000A9DA -> 00 0000A9DE -> 1A 0000A9E0 -> 00 0000AA00 -> 13 0000AA29 -> 04 0000AA2F -> 05 0000AA31 -> 04 0000AA33 -> 05 0000AA35 -> 04 0000AA37 -> 00 0000AA40 -> 13 0000AA43 -> 04 0000AA44 -> 13 0000AA4C -> 04 0000AA4D -> 05 0000AA4E -> 00 0000AA50 -> 07 0000AA5A -> 00 0000AA5C -> 1A 0000AA60 -> 13 0000AA70 -> 12 0000AA71 -> 13 0000AA77 -> 1E 0000AA7A -> 13 0000AA7B -> 05 0000AA7C -> 00 0000AA80 -> 13 0000AAB0 -> 04 0000AAB1 -> 13 0000AAB2 -> 04 0000AAB5 -> 13 0000AAB7 -> 04 0000AAB9 -> 13 0000AABE -> 04 0000AAC0 -> 13 0000AAC1 -> 04 0000AAC2 -> 13 0000AAC3 -> 00 0000AADB -> 13 0000AADD -> 12 0000AADE -> 1A 0000AAE0 -> 00 0000ABC0 -> 13 0000ABE3 -> 05 0000ABE5 -> 04 0000ABE6 -> 05 0000ABE8 -> 04 0000ABE9 -> 05 0000ABEB -> 1A 0000ABEC -> 05 0000ABED -> 04 0000ABEE -> 00 0000ABF0 -> 07 0000ABFA -> 00 0000AC00 -> 13 0000D7A3 -> 13 0000D7A4 -> 00 0000D7B0 -> 13 0000D7C7 -> 00 0000D7CB -> 13 0000D7FC -> 00 0000D800 -> 0F 0000DB7F -> 0F 0000DBFF -> 0F 0000DFFF -> 0F 0000E000 -> 10 0000F8FF -> 10 0000F900 -> 13 0000FA2E -> 00 0000FA30 -> 13 0000FA6E -> 00 0000FA70 -> 13 0000FADA -> 00 0000FB00 -> 02 0000FB07 -> 00 0000FB13 -> 02 0000FB18 -> 00 0000FB1D -> 13 0000FB1E -> 04 0000FB1F -> 13 0000FB29 -> 1B 0000FB2A -> 13 0000FB37 -> 00 0000FB38 -> 13 0000FB3D -> 00 0000FB3E -> 13 0000FB3F -> 00 0000FB40 -> 13 0000FB42 -> 00 0000FB43 -> 13 0000FB45 -> 00 0000FB46 -> 13 0000FBB2 -> 00 0000FBD3 -> 13 0000FD3E -> 16 0000FD3F -> 17 0000FD40 -> 00 0000FD50 -> 13 0000FD90 -> 00 0000FD92 -> 13 0000FDC8 -> 00 0000FDF0 -> 13 0000FDFC -> 1C 0000FDFD -> 1E 0000FDFE -> 00 0000FE00 -> 04 0000FE10 -> 1A 0000FE17 -> 16 0000FE18 -> 17 0000FE19 -> 1A 0000FE1A -> 00 0000FE20 -> 04 0000FE27 -> 00 0000FE30 -> 1A 0000FE31 -> 15 0000FE33 -> 14 0000FE35 -> 16 0000FE36 -> 17 0000FE37 -> 16 0000FE38 -> 17 0000FE39 -> 16 0000FE3A -> 17 0000FE3B -> 16 0000FE3C -> 17 0000FE3D -> 16 0000FE3E -> 17 0000FE3F -> 16 0000FE40 -> 17 0000FE41 -> 16 0000FE42 -> 17 0000FE43 -> 16 0000FE44 -> 17 0000FE45 -> 1A 0000FE47 -> 16 0000FE48 -> 17 0000FE49 -> 1A 0000FE4D -> 14 0000FE50 -> 1A 0000FE53 -> 00 0000FE54 -> 1A 0000FE58 -> 15 0000FE59 -> 16 0000FE5A -> 17 0000FE5B -> 16 0000FE5C -> 17 0000FE5D -> 16 0000FE5E -> 17 0000FE5F -> 1A 0000FE62 -> 1B 0000FE63 -> 15 0000FE64 -> 1B 0000FE67 -> 00 0000FE68 -> 1A 0000FE69 -> 1C 0000FE6A -> 1A 0000FE6C -> 00 0000FE70 -> 13 0000FE75 -> 00 0000FE76 -> 13 0000FEFD -> 00 0000FEFF -> 0E 0000FF00 -> 00 0000FF01 -> 1A 0000FF04 -> 1C 0000FF05 -> 1A 0000FF08 -> 16 0000FF09 -> 17 0000FF0A -> 1A 0000FF0B -> 1B 0000FF0C -> 1A 0000FF0D -> 15 0000FF0E -> 1A 0000FF10 -> 07 0000FF1A -> 1A 0000FF1C -> 1B 0000FF1F -> 1A 0000FF21 -> 01 0000FF3B -> 16 0000FF3C -> 1A 0000FF3D -> 17 0000FF3E -> 1D 0000FF3F -> 14 0000FF40 -> 1D 0000FF41 -> 02 0000FF5B -> 16 0000FF5C -> 1B 0000FF5D -> 17 0000FF5E -> 1B 0000FF5F -> 16 0000FF60 -> 17 0000FF61 -> 1A 0000FF62 -> 16 0000FF63 -> 17 0000FF64 -> 1A 0000FF66 -> 13 0000FF70 -> 12 0000FF71 -> 13 0000FF9E -> 12 0000FFA0 -> 13 0000FFBF -> 00 0000FFC2 -> 13 0000FFC8 -> 00 0000FFCA -> 13 0000FFD0 -> 00 0000FFD2 -> 13 0000FFD8 -> 00 0000FFDA -> 13 0000FFDD -> 00 0000FFE0 -> 1C 0000FFE2 -> 1B 0000FFE3 -> 1D 0000FFE4 -> 1E 0000FFE5 -> 1C 0000FFE7 -> 00 0000FFE8 -> 1E 0000FFE9 -> 1B 0000FFED -> 1E 0000FFEF -> 00 0000FFF9 -> 0E 0000FFFC -> 1E 0000FFFE -> 00 00010000 -> 13 0001000C -> 00 0001000D -> 13 00010027 -> 00 00010028 -> 13 0001003B -> 00 0001003C -> 13 0001003E -> 00 0001003F -> 13 0001004E -> 00 00010050 -> 13 0001005E -> 00 00010080 -> 13 000100FB -> 00 00010100 -> 1A 00010102 -> 1E 00010103 -> 00 00010107 -> 09 00010134 -> 00 00010137 -> 1E 00010140 -> 08 00010175 -> 09 00010179 -> 1E 0001018A -> 09 0001018B -> 00 00010190 -> 1E 0001019C -> 00 000101D0 -> 1E 000101FD -> 04 000101FE -> 00 00010280 -> 13 0001029D -> 00 000102A0 -> 13 000102D1 -> 00 00010300 -> 13 0001031F -> 00 00010320 -> 09 00010324 -> 00 00010330 -> 13 00010341 -> 08 00010342 -> 13 0001034A -> 08 0001034B -> 00 00010380 -> 13 0001039E -> 00 0001039F -> 1A 000103A0 -> 13 000103C4 -> 00 000103C8 -> 13 000103D0 -> 1A 000103D1 -> 08 000103D6 -> 00 00010400 -> 01 00010428 -> 02 00010450 -> 13 0001049E -> 00 000104A0 -> 07 000104AA -> 00 00010800 -> 13 00010806 -> 00 00010808 -> 13 00010809 -> 00 0001080A -> 13 00010836 -> 00 00010837 -> 13 00010839 -> 00 0001083C -> 13 0001083D -> 00 0001083F -> 13 00010856 -> 00 00010857 -> 1A 00010858 -> 09 00010860 -> 00 00010900 -> 13 00010916 -> 09 0001091C -> 00 0001091F -> 1A 00010920 -> 13 0001093A -> 00 0001093F -> 1A 00010940 -> 00 00010A00 -> 13 00010A01 -> 04 00010A04 -> 00 00010A05 -> 04 00010A07 -> 00 00010A0C -> 04 00010A10 -> 13 00010A14 -> 00 00010A15 -> 13 00010A18 -> 00 00010A19 -> 13 00010A34 -> 00 00010A38 -> 04 00010A3B -> 00 00010A3F -> 04 00010A40 -> 09 00010A48 -> 00 00010A50 -> 1A 00010A59 -> 00 00010A60 -> 13 00010A7D -> 09 00010A7F -> 1A 00010A80 -> 00 00010B00 -> 13 00010B36 -> 00 00010B39 -> 1A 00010B40 -> 13 00010B56 -> 00 00010B58 -> 09 00010B60 -> 13 00010B73 -> 00 00010B78 -> 09 00010B80 -> 00 00010C00 -> 13 00010C49 -> 00 00010E60 -> 09 00010E7F -> 00 00011080 -> 04 00011082 -> 05 00011083 -> 13 000110B0 -> 05 000110B3 -> 04 000110B7 -> 05 000110B9 -> 04 000110BB -> 1A 000110BD -> 0E 000110BE -> 1A 000110C2 -> 00 00012000 -> 13 0001236F -> 00 00012400 -> 08 00012463 -> 00 00012470 -> 1A 00012474 -> 00 00013000 -> 13 0001342F -> 00 0001D000 -> 1E 0001D0F6 -> 00 0001D100 -> 1E 0001D127 -> 00 0001D129 -> 1E 0001D165 -> 05 0001D167 -> 04 0001D16A -> 1E 0001D16D -> 05 0001D173 -> 0E 0001D17B -> 04 0001D183 -> 1E 0001D185 -> 04 0001D18C -> 1E 0001D1AA -> 04 0001D1AE -> 1E 0001D1DE -> 00 0001D200 -> 1E 0001D242 -> 04 0001D245 -> 1E 0001D246 -> 00 0001D300 -> 1E 0001D357 -> 00 0001D360 -> 09 0001D372 -> 00 0001D400 -> 01 0001D41A -> 02 0001D434 -> 01 0001D44E -> 02 0001D455 -> 00 0001D456 -> 02 0001D468 -> 01 0001D482 -> 02 0001D49C -> 01 0001D49D -> 00 0001D49E -> 01 0001D4A0 -> 00 0001D4A2 -> 01 0001D4A3 -> 00 0001D4A5 -> 01 0001D4A7 -> 00 0001D4A9 -> 01 0001D4AD -> 00 0001D4AE -> 01 0001D4B6 -> 02 0001D4BA -> 00 0001D4BB -> 02 0001D4BC -> 00 0001D4BD -> 02 0001D4C4 -> 00 0001D4C5 -> 02 0001D4D0 -> 01 0001D4EA -> 02 0001D504 -> 01 0001D506 -> 00 0001D507 -> 01 0001D50B -> 00 0001D50D -> 01 0001D515 -> 00 0001D516 -> 01 0001D51D -> 00 0001D51E -> 02 0001D538 -> 01 0001D53A -> 00 0001D53B -> 01 0001D53F -> 00 0001D540 -> 01 0001D545 -> 00 0001D546 -> 01 0001D547 -> 00 0001D54A -> 01 0001D551 -> 00 0001D552 -> 02 0001D56C -> 01 0001D586 -> 02 0001D5A0 -> 01 0001D5BA -> 02 0001D5D4 -> 01 0001D5EE -> 02 0001D608 -> 01 0001D622 -> 02 0001D63C -> 01 0001D656 -> 02 0001D670 -> 01 0001D68A -> 02 0001D6A6 -> 00 0001D6A8 -> 01 0001D6C1 -> 1B 0001D6C2 -> 02 0001D6DB -> 1B 0001D6DC -> 02 0001D6E2 -> 01 0001D6FB -> 1B 0001D6FC -> 02 0001D715 -> 1B 0001D716 -> 02 0001D71C -> 01 0001D735 -> 1B 0001D736 -> 02 0001D74F -> 1B 0001D750 -> 02 0001D756 -> 01 0001D76F -> 1B 0001D770 -> 02 0001D789 -> 1B 0001D78A -> 02 0001D790 -> 01 0001D7A9 -> 1B 0001D7AA -> 02 0001D7C3 -> 1B 0001D7C4 -> 02 0001D7CA -> 01 0001D7CB -> 02 0001D7CC -> 00 0001D7CE -> 07 0001D800 -> 00 0001F000 -> 1E 0001F02C -> 00 0001F030 -> 1E 0001F094 -> 00 0001F100 -> 09 0001F10B -> 00 0001F110 -> 1E 0001F12F -> 00 0001F131 -> 1E 0001F132 -> 00 0001F13D -> 1E 0001F13E -> 00 0001F13F -> 1E 0001F140 -> 00 0001F142 -> 1E 0001F143 -> 00 0001F146 -> 1E 0001F147 -> 00 0001F14A -> 1E 0001F14F -> 00 0001F157 -> 1E 0001F158 -> 00 0001F15F -> 1E 0001F160 -> 00 0001F179 -> 1E 0001F17A -> 00 0001F17B -> 1E 0001F17D -> 00 0001F17F -> 1E 0001F180 -> 00 0001F18A -> 1E 0001F18E -> 00 0001F190 -> 1E 0001F191 -> 00 0001F200 -> 1E 0001F201 -> 00 0001F210 -> 1E 0001F232 -> 00 0001F240 -> 1E 0001F249 -> 00 00020000 -> 13 0002A6D6 -> 13 0002A6D7 -> 00 0002A700 -> 13 0002B734 -> 13 0002B735 -> 00 0002F800 -> 13 0002FA1E -> 00 000E0001 -> 0E 000E0002 -> 00 000E0020 -> 0E 000E0080 -> 00 000E0100 -> 04 000E01F0 -> 00 000F0000 -> 10 000FFFFD -> 10 000FFFFE -> 00 00100000 -> 10 0010FFFD -> 10 0010FFFE -> 00 #END ./mytool/kmap/0000755000175000017500000000000011334661073013314 5ustar henrichhenrich./mytool/kmap/Vietnamese-Telex1.kmap0000644000175000017500000001713607532460064017440 0ustar henrichhenrich// VietnameseTelex for Telex Input - Nguyen Thanh Bien "af=0x00E0", // LATIN SMALL LETTER A WITH GRAVE "AF=0x00C0", // LATIN CAPITAL LETTER A WITH GRAVE "as=0x00E1", // LATIN SMALL LETTER A WITH ACUTE "AS=0x00C1", // LATIN CAPITAL LETTER A WITH ACUTE "aa=0x00E2", // LATIN SMALL LETTER A WITH CIRCUMFLEX "AA=0x00C2", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX "ax=0x00E3", // LATIN SMALL LETTER A WITH TILDE "AX=0x00C3", // LATIN CAPITAL LETTER A WITH TILDE "ef=0x00E8", // LATIN SMALL LETTER E WITH GRAVE "EF=0x00C8", // LATIN CAPITAL LETTER E WITH GRAVE "es=0x00E9", // LATIN SMALL LETTER E WITH ACUTE "ES=0x00C9", // LATIN CAPITAL LETTER E WITH ACUTE "ee=0x00EA", // LATIN SMALL LETTER E WITH CIRCUMFLEX "EE=0x00CA", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX "if=0x00EC", // LATIN SMALL LETTER I WITH GRAVE "IF=0x00CC", // LATIN CAPITAL LETTER I WITH GRAVE "is=0x00ED", // LATIN SMALL LETTER I WITH ACUTE "IS=0x00CD", // LATIN CAPITAL LETTER I WITH ACUTE "of=0x00F2", // LATIN SMALL LETTER O WITH GRAVE "OF=0x00D2", // LATIN CAPITAL LETTER O WITH GRAVE "os=0x00F3", // LATIN SMALL LETTER O WITH ACUTE "OS=0x00D3", // LATIN CAPITAL LETTER O WITH ACUTE "oo=0x00F4", // LATIN SMALL LETTER O WITH CIRCUMFLEX "OO=0x00D4", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX "ox=0x00F5", // LATIN SMALL LETTER O WITH TILDE "OX=0x00D5", // LATIN CAPITAL LETTER O WITH TILDE "uf=0x00F9", // LATIN SMALL LETTER U WITH GRAVE "UF=0x00D9", // LATIN CAPITAL LETTER U WITH GRAVE "us=0x00FA", // LATIN SMALL LETTER U WITH ACUTE "US=0x00DA", // LATIN CAPITAL LETTER U WITH ACUTE "ys=0x00FD", // LATIN SMALL LETTER Y WITH ACUTE "YS=0x00DD", // LATIN CAPITAL LETTER Y WITH ACUTE "aw=0x0103", // LATIN SMALL LETTER A WITH BREVE "AW=0x0102", // LATIN CAPITAL LETTER A WITH BREVE "ix=0x0129", // LATIN SMALL LETTER I WITH TILDE "IX=0x0128", // LATIN CAPITAL LETTER I WITH TILDE "ux=0x0169", // LATIN SMALL LETTER U WITH TILDE "UX=0x0168", // LATIN CAPITAL LETTER U WITH TILDE "ow=0x01A1", // LATIN SMALL LETTER O WITH HORN "OW=0x01A0", // LATIN CAPITAL LETTER O WITH HORN "uw=0x01B0", // LATIN SMALL LETTER U WITH HORN "UW=0x01AF", // LATIN CAPITAL LETTER U WITH HORN "aj=0x1EA1", // LATIN SMALL LETTER A WITH DOT BELOW "AJ=0x1EA0", // LATIN CAPITAL LETTER A WITH DOT BELOW "ar=0x1EA3", // LATIN SMALL LETTER A WITH HOOK ABOVE "AR=0x1EA2", // LATIN CAPITAL LETTER A WITH HOOK ABOVE "aas=0x1EA5", // LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE "AAS=0x1EA4", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE "aaf=0x1EA7", // LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE "AAF=0x1EA6", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE "aar=0x1EA9", // LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "AAR=0x1EA8", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "aax=0x1EAB", // LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE "AAX=0x1EAA", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE "aaj=0x1EAD", // LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW "AAJ=0x1EAC", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW "aws=0x1EAF", // LATIN SMALL LETTER A WITH BREVE AND ACUTE "AWS=0x1EAE", // LATIN CAPITAL LETTER A WITH BREVE AND ACUTE "awf=0x1EB1", // LATIN SMALL LETTER A WITH BREVE AND GRAVE "AWF=0x1EB0", // LATIN CAPITAL LETTER A WITH BREVE AND GRAVE "awr=0x1EB3", // LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE "AWR=0x1EB2", // LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE "awx=0x1EB5", // LATIN SMALL LETTER A WITH BREVE AND TILDE "AWX=0x1EB4", // LATIN CAPITAL LETTER A WITH BREVE AND TILDE "awj=0x1EB7", // LATIN SMALL LETTER A WITH BREVE AND DOT BELOW "AWJ=0x1EB6", // LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW "ej=0x1EB9", // LATIN SMALL LETTER E WITH DOT BELOW "EJ=0x1EB8", // LATIN CAPITAL LETTER E WITH DOT BELOW "er=0x1EBB", // LATIN SMALL LETTER E WITH HOOK ABOVE "ER=0x1EBA", // LATIN CAPITAL LETTER E WITH HOOK ABOVE "ex=0x1EBD", // LATIN SMALL LETTER E WITH TILDE "EX=0x1EBC", // LATIN CAPITAL LETTER E WITH TILDE "ees=0x1EBF", // LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE "EES=0x1EBE", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE "eef=0x1EC1", // LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE "EEF=0x1EC0", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE "eer=0x1EC3", // LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "EER=0x1EC2", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "eex=0x1EC5", // LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE "EEX=0x1EC4", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE "eej=0x1EC7", // LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW "EEJ=0x1EC6", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW "ir=0x1EC9", // LATIN SMALL LETTER I WITH HOOK ABOVE "IR=0x1EC8", // LATIN CAPITAL LETTER I WITH HOOK ABOVE "ij=0x1ECB", // LATIN SMALL LETTER I WITH DOT BELOW "IJ=0x1ECA", // LATIN CAPITAL LETTER I WITH DOT BELOW "oj=0x1ECD", // LATIN SMALL LETTER O WITH DOT BELOW "OJ=0x1ECC", // LATIN CAPITAL LETTER O WITH DOT BELOW "or=0x1ECF", // LATIN SMALL LETTER O WITH HOOK ABOVE "OR=0x1ECE", // LATIN CAPITAL LETTER O WITH HOOK ABOVE "oos=0x1ED1", // LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE "OOS=0x1ED0", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE "oof=0x1ED3", // LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE "OOF=0x1ED2", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE "oor=0x1ED5", // LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "OOR=0x1ED4", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "oox=0x1ED7", // LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE "OOX=0x1ED6", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE "ooj=0x1ED9", // LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW "OOJ=0x1ED8", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW "ows=0x1EDB", // LATIN SMALL LETTER O WITH HORN AND ACUTE "OWS=0x1EDA", // LATIN CAPITAL LETTER O WITH HORN AND ACUTE "owf=0x1EDD", // LATIN SMALL LETTER O WITH HORN AND GRAVE "OWF=0x1EDC", // LATIN CAPITAL LETTER O WITH HORN AND GRAVE "owr=0x1EDF", // LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE "OWR=0x1EDE", // LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE "owx=0x1EE1", // LATIN SMALL LETTER O WITH HORN AND TILDE "OWX=0x1EE0", // LATIN CAPITAL LETTER O WITH HORN AND TILDE "owj=0x1EE3", // LATIN SMALL LETTER O WITH HORN AND DOT BELOW "OWJ=0x1EE2", // LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW "uj=0x1EE5", // LATIN SMALL LETTER U WITH DOT BELOW "UJ=0x1EE4", // LATIN CAPITAL LETTER U WITH DOT BELOW "ur=0x1EE7", // LATIN SMALL LETTER U WITH HOOK ABOVE "UR=0x1EE6", // LATIN CAPITAL LETTER U WITH HOOK ABOVE "uws=0x1EE9", // LATIN SMALL LETTER U WITH HORN AND ACUTE "UWS=0x1EE8", // LATIN CAPITAL LETTER U WITH HORN AND ACUTE "uwf=0x1EEB", // LATIN SMALL LETTER U WITH HORN AND GRAVE "UWF=0x1EEA", // LATIN CAPITAL LETTER U WITH HORN AND GRAVE "uwr=0x1EED", // LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE "UWR=0x1EEC", // LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE "uwx=0x1EEF", // LATIN SMALL LETTER U WITH HORN AND TILDE "UWX=0x1EEE", // LATIN CAPITAL LETTER U WITH HORN AND TILDE "uwj=0x1EF1", // LATIN SMALL LETTER U WITH HORN AND DOT BELOW "UWJ=0x1EF0", // LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW "yf=0x1EF3", // LATIN SMALL LETTER Y WITH GRAVE "YF=0x1EF2", // LATIN CAPITAL LETTER Y WITH GRAVE "yj=0x1EF5", // LATIN SMALL LETTER Y WITH DOT BELOW "YJ=0x1EF4", // LATIN CAPITAL LETTER Y WITH DOT BELOW "yr=0x1EF7", // LATIN SMALL LETTER Y WITH HOOK ABOVE "YR=0x1EF6", // LATIN CAPITAL LETTER Y WITH HOOK ABOVE "yx=0x1EF9", // LATIN SMALL LETTER Y WITH TILDE "YX=0x1EF8", // LATIN CAPITAL LETTER Y WITH TILDE "dd=0x0111", // LATIN SMALL LETTER D WITH STROKE "DD=0x0110", // LATIN CAPITAL LETTER D WITH STROKE "$$=0x20AB" // VND sign./mytool/kmap/Urdu.kmap0000644000175000017500000000702207532460064015110 0ustar henrichhenrich// Urdu.kmap by Miikka-Markus Alhonen // 1 keycode = 1 character "a = 0x0627", // ARABIC LETTER ALEF "b = 0x0628", // ARABIC LETTER BEH "B = 0x067e", // ARABIC LETTER PEH "t = 0x062a", // ARABIC LETTER TEH "O = 0x06c3", // ARABIC LETTER TEH MARBUTA GOAL "T = 0x0679", // ARABIC LETTER TTEH "v = 0x062b", // ARABIC LETTER THEH "C = 0x062c", // ARABIC LETTER JEEM "c = 0x0686", // ARABIC LETTER TCHEH "X = 0x062d", // ARABIC LETTER HAH "x = 0x062e", // ARABIC LETTER KHAH "d = 0x062f", // ARABIC LETTER DAL "D = 0x0688", // ARABIC LETTER DDAL "V = 0x0630", // ARABIC LETTER THAL "r = 0x0631", // ARABIC LETTER REH "R = 0x0691", // ARABIC LETTER RREH "z = 0x0632", // ARABIC LETTER ZAIN "Z = 0x0698", // ARABIC LETTER JEH "s = 0x0633", // ARABIC LETTER SEEN "S = 0x0634", // ARABIC LETTER SHEEN "p = 0x0635", // ARABIC LETTER SAD "P = 0x0636", // ARABIC LETTER DAD "q = 0x0637", // ARABIC LETTER TAH "Q = 0x0638", // ARABIC LETTER ZAH "e = 0x0639", // ARABIC LETTER AIN "G = 0x063a", // ARABIC LETTER GHAIN "f = 0x0641", // ARABIC LETTER FEH "K = 0x0642", // ARABIC LETTER QAF "k = 0x06a9", // ARABIC LETTER KEHEH "g = 0x06af", // ARABIC LETTER GAF "l = 0x0644", // ARABIC LETTER LAM "m = 0x0645", // ARABIC LETTER MEEM "n = 0x0646", // ARABIC LETTER NOON "N = 0x06ba", // ARABIC LETTER NOON GHUNNA "w = 0x0648", // ARABIC LETTER WAW "h = 0x06c1", // ARABIC LETTER HEH GOAL "H = 0x06be", // ARABIC LETTER HEH DOACHASHMEE "y = 0x06cc", // ARABIC LETTER FARSI YEH "E = 0x06d2", // ARABIC LETTER YEH BARREE // Diacritics // "M = ", // ARABIC WASLA ABOVE "j = 0x0654", // ARABIC HAMZA ABOVE "J = 0x0655", // ARABIC HAMZA BELOW "~ = 0x0653", // ARABIC MADDA ABOVE "F = 0x064e", // ARABIC FATHA "u = 0x064f", // ARABIC DAMMA "i = 0x0650", // ARABIC KASRA "W = 0x0651", // ARABIC SHADDA "^ = 0x0652", // ARABIC SUKUN "FF = 0x064b", // ARABIC FATHATAN "uu = 0x064c", // ARABIC DAMMATAN "ii = 0x064d", // ARABIC KASRATAN "A = 0x0670", // ARABIC LETTER SUPERSCRIPT ALEF // Numbers "0x30 = 0x06f0", // EXTENDED ARABIC-INDIC DIGIT ZERO "0x31 = 0x06f1", // EXTENDED ARABIC-INDIC DIGIT ONE "0x32 = 0x06f2", // EXTENDED ARABIC-INDIC DIGIT TWO "0x33 = 0x06f3", // EXTENDED ARABIC-INDIC DIGIT THREE "0x34 = 0x06f4", // EXTENDED ARABIC-INDIC DIGIT FOUR "0x35 = 0x06f5", // EXTENDED ARABIC-INDIC DIGIT FIVE "0x36 = 0x06f6", // EXTENDED ARABIC-INDIC DIGIT SIX "0x37 = 0x06f7", // EXTENDED ARABIC-INDIC DIGIT SEVEN "0x38 = 0x06f8", // EXTENDED ARABIC-INDIC DIGIT EIGHT "0x39 = 0x06f9", // EXTENDED ARABIC-INDIC DIGIT NINE // Punctuation ". = 0x06d4", // ARABIC FULL STOP ", = 0x060c", // ARABIC COMMA "; = 0x061b", // ARABIC SEMICOLON "? = 0x061f", // ARABIC QUESTION MARK "- = 0x0640", // ARABIC TATWEEL // Additional keycodes for Arabic "Y = 0x0649", // ARABIC LETTER ALEF MAKSURA "o = 0x0621", // ARABIC LETTER HAMZA // Ligatures "a~ = 0x0622", // ARABIC LETTER ALEF WITH MADDA "aj = 0x0623", // ARABIC LETTER ALEF WITH HAMZA ABOVE "wj = 0x0624", // ARABIC LETTER WAW WITH HAMZA ABOVE "aJ = 0x0625", // ARABIC LETTER ALEF WITH HAMZA BELOW "yj = 0x0626", // ARABIC LETTER YEH WITH HAMZA ABOVE "aM = 0x0671", // ARABIC LETTER ALEF WASLA "hj = 0x06c2", // ARABIC LETTER HEH GOAL WITH HAMZA ABOVE "Ej = 0x06d3", // ARABIC LETTER YEH BARREE WITH HAMZA ABOVE "la = 0x0644 0x0627", // ARABIC LETTER LAM + ARABIC LETTER ALEF "la~ = 0x0644 0x0622", // ARABIC LETTER LAM + ALEF WITH MADDA "laj = 0x0644 0x0623", // ARABIC LETTER LAM + ALEF WITH HAMZA ABOVE "laJ = 0x0644 0x0625", // ARABIC LETTER LAM + ALEF WITH HAMZA BELOW "laM = 0x0644 0x0671", // ARABIC LETTER LAM + ALEF WASLA ./mytool/kmap/GreekBible.kmap0000644000175000017500000006045507532460064016175 0ustar henrichhenrich// Greek Monotonic kmap for Yudit, a Unicode editor for the X Windows system // made by Gaspar Sinai // // This kmap was made by Constantine Stathopoulos and // is based on Microsoft Windows 95/98 improved variation of the standard // Greek monotonic keyboard map and the Greek Basic block of the Unicode // standard. Since Yudit currently does not support CTRL, ALT and ALT-GR input // combinations, this kmap differs from Microsoft's in the following character // mappings: EURO SIGN (0x20AC), RIGHT QUOTATION MARK (0x00BB), LEFT QUOTATION // MARK (0x00AB), and COMBINATION OF DIALYTIKA WITH TONOS (0x0385). Also, I // have assigned a [temporary until ALT-GR is supported] key combination for // the Greek ANO TELEIA (0x0387), which has been left out in Microsoft's // keyboards, although it is a very important punctuation mark of the Greek // language. // // This kmap is offered to the public domain and it may be modified freely // to suit individual needs; however, modified files should not be distributed // due to standardization concerns. Please, send all comments or modification // suggestions to Constantine Stathopoulos . // // Date: October 9, 1998 // PUNCTUATION MARKS - SYMBOLS (GREEK SPECIFIC) // "E$=0x20AC", // EURO SIGN ">>=0x00BB", // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK EISAGOGIKA/OMOIOMATIKA - DEFINITION MISSING FROM UNICODE] "<<=0x00AB", // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK EISAGOGIKA - DEFINITION MISSING FROM UNICODE] "Q=0x003A", // COLON [GREEK EPEXIGIMATIKA OR ANO & KATO TELEIA - DEFINITION MISSING FROM UNICODE] "q=0x037E", // GREEK QUESTION MARK (EROTIMATIKO) ".;=0x0387", // GREEK ANO TELEIA // // GREEK DIACRITICS // ":=0x00A8", // DIAERESIS [GREEK DIALYTIKA - DEFINITION MISSING FROM UNICODE] ";=0x0384", // GREEK TONOS ":;=0x0385", // GREEK DIALYTIKA TONOS // // GREEK LETTERS // "A=0x0391", // GREEK CAPITAL LETTER ALPHA "B=0x0392", // GREEK CAPITAL LETTER BETA "G=0x0393", // GREEK CAPITAL LETTER GAMMA "D=0x0394", // GREEK CAPITAL LETTER DELTA "E=0x0395", // GREEK CAPITAL LETTER EPSILON "Z=0x0396", // GREEK CAPITAL LETTER ZETA "H=0x0397", // GREEK CAPITAL LETTER ETA "U=0x0398", // GREEK CAPITAL LETTER THETA "I=0x0399", // GREEK CAPITAL LETTER IOTA "K=0x039A", // GREEK CAPITAL LETTER KAPPA "L=0x039B", // GREEK CAPITAL LETTER LAMDA "M=0x039C", // GREEK CAPITAL LETTER MU "N=0x039D", // GREEK CAPITAL LETTER NU "J=0x039E", // GREEK CAPITAL LETTER XI "O=0x039F", // GREEK CAPITAL LETTER OMIKRON "P=0x03A0", // GREEK CAPITAL LETTER PI "R=0x03A1", // GREEK CAPITAL LETTER RHO "W=0x03A3", // GREEK CAPITAL LETTER SIGMA [CAPITAL ANALOGUE FOR SMALL LETTER FINAL SIGMA] "S=0x03A3", // GREEK CAPITAL LETTER SIGMA "T=0x03A4", // GREEK CAPITAL LETTER TAU "Y=0x03A5", // GREEK CAPITAL LETTER UPSILON "F=0x03A6", // GREEK CAPITAL LETTER PHI "X=0x03A7", // GREEK CAPITAL LETTER CHI "C=0x03A8", // GREEK CAPITAL LETTER PSI "V=0x03A9", // GREEK CAPITAL LETTER OMEGA "a=0x03B1", // GREEK SMALL LETTER ALPHA "b=0x03B2", // GREEK SMALL LETTER BETA "g=0x03B3", // GREEK SMALL LETTER GAMMA "d=0x03B4", // GREEK SMALL LETTER DELTA "e=0x03B5", // GREEK SMALL LETTER EPSILON "z=0x03B6", // GREEK SMALL LETTER ZETA "h=0x03B7", // GREEK SMALL LETTER ETA "u=0x03B8", // GREEK SMALL LETTER THETA "i=0x03B9", // GREEK SMALL LETTER IOTA "k=0x03BA", // GREEK SMALL LETTER KAPPA "l=0x03BB", // GREEK SMALL LETTER LAMDA "m=0x03BC", // GREEK SMALL LETTER MU "n=0x03BD", // GREEK SMALL LETTER NU "j=0x03BE", // GREEK SMALL LETTER XI "o=0x03BF", // GREEK SMALL LETTER OMICRON "p=0x03C0", // GREEK SMALL LETTER PI "r=0x03C1", // GREEK SMALL LETTER RHO "w=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "s=0x03C3", // GREEK SMALL LETTER SIGMA "t=0x03C4", // GREEK SMALL LETTER TAU "y=0x03C5", // GREEK SMALL LETTER UPSILON "f=0x03C6", // GREEK SMALL LETTER PHI "x=0x03C7", // GREEK SMALL LETTER CHI "c=0x03C8", // GREEK SMALL LETTER PSI "v=0x03C9", // GREEK SMALL LETTER OMEGA // //COMBINED GREEK LETTERS WITH DIACRITICS // ";A=0x0386", // GREEK CAPITAL LETTER ALPHA WITH TONOS ";E=0x0388", // GREEK CAPITAL LETTER EPSILON WITH TONOS ";H=0x0389", // GREEK CAPITAL LETTER ETA WITH TONOS ";I=0x038A", // GREEK CAPITAL LETTER IOTA WITH TONOS ";O=0x038C", // GREEK CAPITAL LETTER OMICRON WITH TONOS ";Y=0x038E", // GREEK CAPITAL LETTER UPSILON WITH TONOS ";V=0x038F", // GREEK CAPITAL LETTER OMEGA WITH TONOS ":;i=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS ":I=0x03AA", // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA ":Y=0x03AB", // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA ";a=0x03AC", // GREEK SMALL LETTER ALPHA WITH TONOS ";e=0x03AD", // GREEK SMALL LETTER EPSILON WITH TONOS ";h=0x03AE", // GREEK SMALL LETTER ETA WITH TONOS ";i=0x03AF", // GREEK SMALL LETTER IOTA WITH TONOS ":;y=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS ":i=0x03CA", // GREEK SMALL LETTER IOTA WITH DIALYTIKA ":y=0x03CB", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA ";o=0x03CC", // GREEK SMALL LETTER OMICRON WITH TONOS ";y=0x03CD", // GREEK SMALL LETTER UPSILON WITH TONOS ";v=0x03CE", // GREEK SMALL LETTER OMEGA WITH TONOS // New Testament Greek appendix v. 0.1 // By , modified for New Testament Greek. // 04/11-1999, Aarhus, Denmark. // // letters with Varia: // "`A=0x1FBA", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`E=0x1FC8", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`H=0x1FCA", // GREEK CAPITAL LETTER ETA WITH VARIA "`I=0x1FDA", // GREEK CAPITAL LETTER IOTA WITH VARIA "`O=0x1FF8", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`Y=0x1FEA", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`V=0x1FFA", // GREEK CAPITAL LETTER OMEGA WITH VARIA "`a=0x1F70", // GREEK SMALL LETTER ALPHA WITH VARIA "`e=0x1F72", // GREEK SMALL LETTER ALPHA WITH VARIA "`h=0x1F74", // GREEK SMALL LETTER ETA WITH VARIA "`i=0x1F76", // GREEK SMALL LETTER IOTA WITH VARIA "`o=0x1F78", // GREEK SMALL LETTER ALPHA WITH VARIA "`y=0x1F7A", // GREEK SMALL LETTER ALPHA WITH VARIA "`v=0x1F7C", // GREEK SMALL LETTER OMEGA WITH VARIA // // letters with Oxia: // "A=0x1FBB", // GREEK CAPITAL LETTER ALPHA WITH OXIA "E=0x1FC9", // GREEK CAPITAL LETTER EPSILON WITH OXIA "H=0x1FCB", // GREEK CAPITAL LETTER ETA WITH OXIA "I=0x1FDB", // GREEK CAPITAL LETTER IOTA WITH OXIA "O=0x1FF9", // GREEK CAPITAL LETTER OMICRON WITH OXIA "Y=0x1FEB", // GREEK CAPITAL LETTER UPSILON WITH OXIA "V=0x1FFB", // GREEK CAPITAL LETTER OMEGA WITH OXIA "a=0x1F71", // GREEK SMALL LETTER ALPHA WITH OXIA "e=0x1F73", // GREEK SMALL LETTER EPSILON WITH OXIA "h=0x1F75", // GREEK SMALL LETTER ETA WITH OXIA "i=0x1F77", // GREEK SMALL LETTER IOTA WITH OXIA "o=0x1F79", // GREEK SMALL LETTER OMICRON WITH OXIA "y=0x1F7B", // GREEK SMALL LETTER UPSILON WITH OXIA "v=0x1F7D", // GREEK SMALL LETTER OMEGA WITH OXIA // // // This area covers 0x1F00-0x1F6F // // letters with Psili: // ">A=0x1F08", // GREEK CAPITAL LETTER ALPHA WITH PSILI ">E=0x1F18", // GREEK CAPITAL LETTER EPSILON WITH PSILI ">H=0x1F28", // GREEK CAPITAL LETTER ETA WITH PSILI ">I=0x1F38", // GREEK CAPITAL LETTER IOTA WITH PSILI ">O=0x1F48", // GREEK CAPITAL LETTER OMICRON WITH PSILI //">Y=0x1F58", // GREEK CAPITAL LETTER UPSILON WITH PSILI ">V=0x1F68", // GREEK CAPITAL LETTER OMEGA WITH PSILI ">a=0x1F00", // GREEK SMALL LETTER ALPHA WITH PSILI ">e=0x1F10", // GREEK SMALL LETTER EPSILON WITH PSILI ">h=0x1F20", // GREEK SMALL LETTER ETA WITH PSILI ">i=0x1F30", // GREEK SMALL LETTER IOTA WITH PSILI ">o=0x1F40", // GREEK SMALL LETTER OMICRON WITH PSILI ">y=0x1F50", // GREEK SMALL LETTER UPSILON WITH PSILI ">v=0x1F60", // GREEK SMALL LETTER OMEGA WITH PSILI // // Letters with Dasia: // "`A=0x1F0A", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA ">`E=0x1F1A", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA ">`H=0x1F2A", // GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA ">`I=0x1F3A", // GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA ">`O=0x1F4A", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA //">`Y=0x1F5A", // GREEK CAPITAL LETTER UPSILON WITH PSILI AND VARIA ">`V=0x1F6A", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA ">`a=0x1F02", // GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA ">`e=0x1F12", // GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA ">`h=0x1F22", // GREEK SMALL LETTER ETA WITH PSILI AND VARIA ">`i=0x1F32", // GREEK SMALL LETTER IOTA WITH PSILI AND VARIA ">`o=0x1F42", // GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA ">`y=0x1F52", // GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA ">`v=0x1F62", // GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA // // Letters with Dasia and Varia: // "<`A=0x1F0B", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA "<`E=0x1F1B", // GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA "<`H=0x1F2B", // GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA "<`I=0x1F3B", // GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA "<`O=0x1F4B", // GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA "<`Y=0x1F5B", // GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA "<`V=0x1F6B", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA "<`a=0x1F03", // GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA "<`e=0x1F13", // GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA "<`h=0x1F23", // GREEK SMALL LETTER ETA WITH DASIA AND VARIA "<`i=0x1F33", // GREEK SMALL LETTER IOTA WITH DASIA AND VARIA "<`o=0x1F43", // GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA "<`y=0x1F53", // GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA "<`v=0x1F63", // GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA // // letters with Psili and Oxia: // ">A=0x1F0C", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA ">E=0x1F1C", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA ">H=0x1F2C", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA ">I=0x1F3C", // GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA ">O=0x1F4C", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA //">Y=0x1F5C", // GREEK CAPITAL LETTER UPSILON WITH PSILI AND OXIA ">V=0x1F6C", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA ">a=0x1F04", // GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA ">e=0x1F14", // GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA ">h=0x1F24", // GREEK SMALL LETTER ETA WITH PSILI AND OXIA ">i=0x1F34", // GREEK SMALL LETTER IOTA WITH PSILI AND OXIA ">o=0x1F44", // GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA ">y=0x1F54", // GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA ">v=0x1F64", // GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA // // Letters with Dasia and Oxia: // "~A=0x1F0E", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI //">~E=0x1F1E", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND PERISPOMENI ">~H=0x1F2E", // GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI ">~I=0x1F3E", // GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI //">~O=0x1F4E", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND PERISPOMENI //">~Y=0x1F5E", // GREEK CAPITAL LETTER UPSILON WITH PSILI AND PERISPOMENI ">~V=0x1F6E", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI ">~a=0x1F06", // GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI //">~e=0x1F16", // GREEK SMALL LETTER EPSILON WITH PSILI AND PERISPOMENI ">~h=0x1F26", // GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI ">~i=0x1F36", // GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI //">~o=0x1F46", // GREEK SMALL LETTER OMICRON WITH PSILI AND PERISPOMENI ">~y=0x1F56", // GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI ">~v=0x1F66", // GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI // // Letters with Dasia and Perispomeni: // "<~A=0x1F0F", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI //"<~E=0x1F1F", // GREEK CAPITAL LETTER EPSILON WITH DASIA AND PERISPOMENI "<~H=0x1F2F", // GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI "<~I=0x1F3F", // GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI //"<~O=0x1F4F", // GREEK CAPITAL LETTER OMICRON WITH DASIA AND PERISPOMENI "<~Y=0x1F5F", // GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI "<~V=0x1F6F", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI "<~a=0x1F07", // GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI //"<~e=0x1F17", // GREEK SMALL LETTER EPSILON WITH DASIA AND PERISPOMENI "<~h=0x1F27", // GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI "<~i=0x1F37", // GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI //"<~o=0x1F47", // GREEK SMALL LETTER OMICRON WITH DASIA AND PERISPOMENI "<~y=0x1F57", // GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI "<~v=0x1F67", // GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI // // // // letters with Ypogegrammeni/Prosgegrammeni: // "Ai=0x1FBC", // GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI "Hi=0x1FCC", // GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI "Vi=0x1FFC", // GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI "ai=0x1FB3", // GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI "hi=0x1FC3", // GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI "vi=0x1FF3", // GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI // // // This area covers 0x1F80-0x1FAF // // letters with Psili and Ypogegrammeni/Prosgegrammeni: // ">Ai=0x1F88", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI ">Hi=0x1F98", // GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI ">Vi=0x1FA8", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI ">ai=0x1F80", // GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI ">hi=0x1F90", // GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI ">vi=0x1FA0", // GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI // // letters with Dasia and Ypogegrammeni/Prosgegrammeni: // "`Ai=0x1F8A", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI ">`Hi=0x1F9A", // GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI ">`Vi=0x1FAA", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI ">`ai=0x1F82", // GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI ">`hi=0x1F92", // GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI ">`vi=0x1FA2", // GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI // // letters with Dasia and Varia and Ypogegrammeni/Prosgegrammeni: // "<`Ai=0x1F8B", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI "<`Hi=0x1F9B", // GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI "<`Vi=0x1FAB", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI "<`ai=0x1F83", // GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI "<`hi=0x1F93", // GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI "<`vi=0x1FA3", // GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI // // letters with Psili and Oxia and Ypogegrammeni/Prosgegrammeni: // ">Ai=0x1F8C", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI ">Hi=0x1F9C", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI ">Vi=0x1FAC", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI ">ai=0x1F84", // GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI ">hi=0x1F94", // GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI ">vi=0x1FA4", // GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI // // letters with Dasia and Oxia and Ypogegrammeni/Prosgegrammeni: // "~Ai=0x1F8E", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI ">~Hi=0x1F9E", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA PERISPOMENI PROSGEGRAMMENI ">~Vi=0x1FAE", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI ">~ai=0x1F86", // GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI ">~hi=0x1F96", // GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI ">~vi=0x1FA6", // GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI // // letters with Dasia and Perispomeni and Ypogegrammeni/Prosgegrammeni: // "<~Ai=0x1F8F", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "<~Hi=0x1F9F", // GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "<~Vi=0x1FAF", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "<~ai=0x1F87", // GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI "<~hi=0x1F97", // GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI "<~vi=0x1FA7", // GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI // // letters with Perispomeni: // "~a=0x1FB6", // GREEK SMALL LETTER ALPHA WITH PERISPOMENI "~h=0x1FC6", // GREEK SMALL LETTER ETA WITH PERISPOMENI "~i=0x1FD6", // GREEK SMALL LETTER IOTA WITH PERISPOMENI "~y=0x1FE6", // GREEK SMALL LETTER UPSILON WITH PERISPOMENI "~v=0x1FF6", // GREEK SMALL LETTER OMEGA WITH PERISPOMENI // // letters with Perispomeni and Ypogegrammeni: // "~ai=0x1FB7", // GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI "~hi=0x1FC7", // GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI "~vi=0x1FF7", // GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI // // // letters with Varia and Ypogegrammeni: // "`ai=0x1FB2", // GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI "`hi=0x1FC2", // GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI "`vi=0x1FF2", // GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI // // letters with Oxia and Ypogegrammeni: // "ai=0x1FB4", // GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI "hi=0x1FC4", // GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI "vi=0x1FF4", // GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI // // // Combining/Nonspacing comma above (0x0313) instead of Psili: // ">,=0x0313", // COMBINING COMMA ABOVE // // Combining/Nonspacing reversed comma above (0x0314) instead of Dasia: // "<,=0x0314", // COMBINING REVERSED COMMA ABOVE // // // Special accents you often find in older theological books. // World English Bible uses them also. On my keyboard they are AltGr+z/x "=0x201C", // QUOTEDBLLEFT "=0x201D", // QUOTEDBLRIGHT // // End New Testament Greek. // // APPENDIX A - ALTERNATIVE INPUT COMBINATIONS // // The character combinations below are not standard as far as it concerns // order of input. Greek users type diacritics before characters and // DIALYTIKA before TONOS. However, if you are not used to this, you can // replace the standard combinations with those in this Appendix. You can also // keep both, if you find it difficult to type in a certain order; be warned, // however, that this will affect the display of text while you type. My advice // is to ignore the combinations of Appendix A completely. // // ";.=0x0387", // GREEK ANO TELEIA {ALTERNATIVE INPUT} // ";:=0x0385", // GREEK DIALYTIKA TONOS {ALTERNATIVE INPUT} // "A;=0x0386", // GREEK CAPITAL LETTER ALPHA WITH TONOS {ALTERNATIVE INPUT} // "E;=0x0388", // GREEK CAPITAL LETTER EPSILON WITH TONOS {ALTERNATIVE INPUT} // "H;=0x0389", // GREEK CAPITAL LETTER ETA WITH TONOS {ALTERNATIVE INPUT} // "I;=0x038A", // GREEK CAPITAL LETTER IOTA WITH TONOS {ALTERNATIVE INPUT} // "O;=0x038C", // GREEK CAPITAL LETTER OMICRON WITH TONOS {ALTERNATIVE INPUT} // "Y;=0x038E", // GREEK CAPITAL LETTER UPSILON WITH TONOS {ALTERNATIVE INPUT} // "V;=0x038F", // GREEK CAPITAL LETTER OMEGA WITH TONOS {ALTERNATIVE INPUT} // ";:i=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #1} // "i:;=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #2} // "i;:=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #3} // "I:=0x03AA", // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA {ALTERNATIVE INPUT} // "Y:=0x03AB", // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA {ALTERNATIVE INPUT} // "a;=0x03AC", // GREEK SMALL LETTER ALPHA WITH TONOS {ALTERNATIVE INPUT} // "e;=0x03AD", // GREEK SMALL LETTER EPSILON WITH TONOS {ALTERNATIVE INPUT} // "h;=0x03AE", // GREEK SMALL LETTER ETA WITH TONOS {ALTERNATIVE INPUT} // "i;=0x03AF", // GREEK SMALL LETTER IOTA WITH TONOS {ALTERNATIVE INPUT} // ";:y=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #1} // "y:;=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #2} // "y;:=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #3} // "i:=0x03CA", // GREEK SMALL LETTER IOTA WITH DIALYTIKA {ALTERNATIVE INPUT} // "y:=0x03CB", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA {ALTERNATIVE INPUT} // "o;=0x03CC", // GREEK SMALL LETTER OMICRON WITH TONOS {ALTERNATIVE INPUT} // "y;=0x03CD", // GREEK SMALL LETTER UPSILON WITH TONOS {ALTERNATIVE INPUT} // "v;=0x03CE", // GREEK SMALL LETTER OMEGA WITH TONOS {ALTERNATIVE INPUT} // APPENDIX B - UNUSED CHARACTERS // // The following characters are included in the Basic Greek block of the // Unicode standard, but are not used in Greek standard keyboard maps and // codepages nor are they used for writing Modern Greek (monotonic), // except in very special cases (mainly scholarly). To use any or all, please // unremark needed characters and assign to keys arbitrarily. // // "=0x0374", // GREEK NUMERAL SIGN // "=0x0375", // GREEK LOWER NUMERAL SIGN // "=0x037A", // GREEK YPOGEGRAMMENI // "=0x03D0", // GREEK BETA SYMBOL // "=0x03D1", // GREEK THETA SYMBOL // "=0x03D2", // GREEK UPSILON WITH HOOK SYMBOL // "=0x03D3", // GREEK UPSILON WITH ACUTE AND HOOK SYMBOL // "=0x03D4", // GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL // "=0x03D5", // GREEK PHI SYMBOL // "=0x03D6", // GREEK PI SYMBOL // "=0x03DA", // GREEK LETTER STIGMA // "=0x03DC", // GREEK LETTER DIGAMMA // "=0x03DE", // GREEK LETTER KOPPA // "=0x03E0", // GREEK LETTER SAMPI // "=0x03F0", // GREEK KAPPA SYMBOL // "=0x03F1", // GREEK RHO SYMBOL // "=0x03F2", // GREEK LUNATE SIGMA SYMBOL // "=0x03F3", // GREEK LETTER YOT ./mytool/kmap/Makefile0000644000175000017500000000276111333154527014762 0ustar henrichhenrich include ../../Makefile.conf KMAPS=$(basename $(notdir $(wildcard *.kmap))) TARGET=$(addsuffix .my,$(KMAPS)) all: $(TARGET) clean: rm -f *.my *.o *.bak message.txt core # Update 2.6.4 # Removed clustering because now we can modify on the fly: # # Bengali.kmap Ben-Inscript.kmap # Devanagari.kmap Dev-Inscript.kmap Dev-Phonetic.kmap # Gujarati.kmap Guj-Inscript.kmap Gurmukhi.kmap # Gur-Inscript.kmap Oriya.kmap Ori-Inscript.kmap # Malayalam.kmap Mal-Inscript.kmap Telugu.kmap Tel-Inscript.kmap # Kannada.kmap Kan-Inscript.kmap # #Any.my: Any.kmap # @echo Processing $< ... # $(MYTOOL) -type clkmap -kmap $< -rkmap $< -write $@ # # MiddleKorean clustering kmap # MiddleKorean.my: MiddleKorean.kmap @echo Processing $< ... $(MYTOOL) -type clkmap -kmap $< -rkmap $< -write $@ %.my:%.kmap @echo Processing $< ... $(MYTOOL) -type kmap -kmap $< -rkmap $< -write $@ install: @if test ! -d $(DESTDIR)/$(prefix) ; then mkdir -p $(DESTDIR)/$(prefix); fi @if test ! -d $(DESTDIR)/$(datadir) ; then mkdir -p $(DESTDIR)/$(datadir);fi @if test ! -d $(DESTDIR)/$(datadir)/yudit ; then mkdir -p $(DESTDIR)/$(datadir)/yudit;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/data ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/data;fi @if test ! -d $(DESTDIR)/$(datadir)/yudit/src ;then mkdir -p $(DESTDIR)/$(datadir)/yudit/src;fi @echo Installing my files... @$(INSTALL_DATA) *.my $(DESTDIR)/$(datadir)/yudit/data @echo Installing kmap files... @$(INSTALL_DATA) *.kmap $(DESTDIR)/$(datadir)/yudit/src depend: ./mytool/kmap/Hungarian.kmap0000644000175000017500000000115411147657650016113 0ustar henrichhenrich// Accents for ISO-8859-2Hungarian and German "Ss = 0xa7", "A' = 0xc1", "A: = 0xc4", "E' = 0xc9", "E$ = 0x20AC", "e$ = 0x20AC", "Y$ =0xFFE5", "y$ =0x00A5", "I' = 0xcd", "O' = 0xd3", "O\" = 0x0150", "O: = 0xd6", "U' = 0xda", "U\" = 0x0170", "U: = 0xdc", "SS = 0xdf", "a' = 0xe1", "a: = 0xe4", "e' = 0xe9", "i' = 0xed", "o' = 0xf3", "o\" = 0x0151", "o: = 0xf6", "-: = 0xf7", "u' = 0xfa", "u\" = 0x0171", "u: = 0xfc", ":) = 0x263A", "'' = 0x201D", // ” RIGHT DOUBLE QUOTATION MARK ",,=0x201E", // „ DOUBLE LOW-9 QUOTATION MARK "``=0x201C", // “ LEFT DOUBLE QUOTATION MARK "...=0x2026", // … "--=0x2013", // – ./mytool/kmap/Runic-Futhorc.kmap0000644000175000017500000000422307630527222016660 0ustar henrichhenrich// Elder Futhark keymap for the Unicode editor Yudit // 2003-03-02 david@start.no // Codes from http://heima.olivant.fo/~styrheim/tools/runes/rtable.html // Alphabet from http://www.irminsul.org/ru/ruasf.gif // ----------------------------------------------------------------------- // Changes: // Eihwaz mapped to ei to avoid conflict with Ehwaz // ----------------------------------------------------------------------- "f=0x16A0", // ᚠ FEHU "u=0x16A2", // ᚢ URUZ "th=0x16A6", // ᚦ THURISAZ → 00FE þ latin small letter thorn "o=0x16A9", // ᚩ RUNIC LETTER OS O "r=0x16B1", // ᚱ RAIDO "c=0x16B3", // ᚳ RUNIC LETTER CEN "g=0x16B7", // ᚷ GEBO "w=0x16B9", // ᚹ WUNJO → 01BF ƿ latin letter wynn "v=0x16B9", // ᚹ WUNJO → 01BF ƿ latin letter wynn "h=0x16BA", // ᚺ HAGLAZ "n=0x16BE", // ᚾ NAUDIZ (Nauthiz) "i=0x16C1", // ᛁ IS (Isa) "ge=0x16C4", // ᛄ RUNIC LETTER GER "eo=0x16C7", // ᛇ RUNIC LETTER IWAZ EOH "p=0x16C8", // ᛈ PERTHO (Perthro) "x=0x16C9", // ᛉ RUNIC LETTER ALGIZ EOLHX "s=0x16CB", // ᛋ RUNIC LETTER SIGEL LONG-BRANCH-SOL S "t=0x16CF", // ᛏ TIWAZ (Teiwaz) "b=0x16D2", // ᛒ BERKANAN (Berkana) "e=0x16D6", // ᛖ RUNIC LETTER EHWAZ EH E "m=0x16D7", // ᛗ RUNIC LETTER MANNAZ MAN M "l=0x16DA", // ᛚ RUNIC LETTER LAUKAZ LAGU LOGR L "ng=0x16DD", // ᛝ RUNIC LETTER ING "ot=0x16DF", // ᛟ RUNIC LETTER OTHALAN ETHEL O "ed=0x16DF", // ᛟ RUNIC LETTER OTHALAN ETHEL O "et=0x16DF", // ᛟ RUNIC LETTER OTHALAN ETHEL O "oe=0x16DF", // ᛟ RUNIC LETTER OTHALAN ETHEL O "d=0x16DE", // ᛞ RUNIC LETTER DAGAZ DAEG D "a=0x16AA", // ᚪ RUNIC LETTER AC A "ae=0x16AB", // ᚫ RUNIC LETTER AESC "æ=0x16AB", // ᚫ RUNIC LETTER AESC "y=0x16A3", // ᚣ RUNIC LETTER YR "ea=0x16E0", // ᛠ RUNIC LETTER EAR "io=0x16E1", // ᛡ RUNIC LETTER IOR "ia=0x16E1", // ᛡ RUNIC LETTER IOR "k=0x16E3", // ᛣ RUNIC LETTER CALC "ke=0x16E4", // ᛤ RUNIC LETTER CEALC "ce=0x16E4", // ᛤ RUNIC LETTER CEALC "ga=0x16B8", // ᚸ RUNIC LETTER GAR "q=0x16E2", // ᛢ RUNIC LETTER CWEORTH "st=0x16E5", // ᛥ RUNIC LETTER STAN ".=0x16EB", // ᛫ RUNIC SINGLE PUNCTUATION ":=0x16EC", // ᛬ RUNIC MULTIPLE PUNCTUATION "+=0x16ED", // ᛭ RUNIC CROSS PUNCTUATION ./mytool/kmap/TeX.kmap0000644000175000017500000003460607532460064014701 0ustar henrichhenrich// http://czyborra.com/yudit/TeX.kmap 1998-09-24 czyborra@dds.nl // 12 June 2001 // Jernej Kovacic added ex-Yugoslav characters // "\\'{c}=0x0107", // "\\'{C}=0x0106", // "\\dj=0x0111", // "\\DJ=0x0110", // "\\Dj=0x0110", "!`=0x00a1", "?`=0x00bf", "\\\"=0x0308", "\\\"A=0x00c4", "\\\"a=0x00e4", "\\\"E=0x00cb", "\\\"e=0x00eb", "\\\"H=0x1e26", "\\\"h=0x1e27", "\\\"I=0x00cf", "\\\"i=0x00ef", "\\\"O=0x00d6", "\\\"o=0x00f6", "\\\"t=0x1e97", "\\\"U=0x00dc", "\\\"u=0x00fc", "\\\"W=0x1e84", "\\\"w=0x1e85", "\\\"X=0x1e8c", "\\\"x=0x1e8d", "\\\"y=0x00ff", "\\\"Y=0x0178", "\\'=0x0301", "\\'A=0x00c1", "\\'a=0x00e1", "\\'C=0x0106", "\\'c=0x0107", "\\'E=0x00c9", "\\'e=0x00e9", "\\'G=0x01f4", "\\'g=0x01f5", "\\'I=0x00cd", "\\'i=0x00ed", "\\'K=0x1e30", "\\'k=0x1e31", "\\'L=0x0139", "\\'l=0x013a", "\\'M=0x1e3e", "\\'m=0x1e3f", "\\'N=0x0143", "\\'n=0x0144", "\\'O=0x00d3", "\\'o=0x00f3", "\\'P=0x1e54", "\\'p=0x1e55", "\\'R=0x0154", "\\'r=0x0155", "\\'S=0x015a", "\\'s=0x015b", "\\'U=0x00da", "\\'u=0x00fa", "\\'W=0x1e82", "\\'w=0x1e83", "\\'Y=0x00dd", "\\'y=0x00fd", "\\'Z=0x0179", "\\'z=0x017a", "\\'\\AE=0x01fc", "\\'\\ae=0x01fd", "\\'\\O=0x01fe", "\\'\\o=0x01ff", "\\,=0x2006", "\\-=0x0082", "\\.=0x0307", "\\.B=0x1e02", "\\.b=0x1e03", "\\.C=0x010a", "\\.c=0x010b", "\\.D=0x1e0a", "\\.d=0x1e0b", "\\.E=0x0116", "\\.e=0x0117", "\\.F=0x1e1e", "\\.f=0x1e1f", "\\.G=0x0120", "\\.g=0x0121", "\\.H=0x1e22", "\\.h=0x1e23", "\\.I=0x0130", "\\.M=0x1e40", "\\.m=0x1e41", "\\.N=0x1e44", "\\.n=0x1e45", "\\.P=0x1e56", "\\.p=0x1e57", "\\.R=0x1e58", "\\.r=0x1e59", "\\.S=0x1e60", "\\.s=0x1e61", "\\.T=0x1e6a", "\\.t=0x1e6b", "\\.W=0x1e86", "\\.w=0x1e87", "\\.X=0x1e8a", "\\.x=0x1e8b", "\\.Y=0x1e8e", "\\.y=0x1e8f", "\\.Z=0x017b", "\\.z=0x017c", "\\/=0x200c", "\\:=0x2005", "\\;=0x2004", "\\ 0x3D =0x0304", "\\ 0x3D A=0x0100", "\\ 0x3D a=0x0101", "\\ 0x3D E=0x0112", "\\ 0x3D e=0x0113", "\\ 0x3D G=0x1e20", "\\ 0x3D g=0x1e21", "\\ 0x3D I=0x012a", "\\ 0x3D i=0x012b", "\\ 0x3D O=0x014c", "\\ 0x3D o=0x014d", "\\ 0x3D U=0x016a", "\\ 0x3D u=0x016b", "\\ 0x3D \\AE=0x01e2", "\\ 0x3D \\ae=0x01e3", "\\AA=0x00c5", "\\aa=0x00e5", "\\AE=0x00c6", "\\ae=0x00e6", "\\aleph=0x2135", "\\alpha=0x03b1", "\\amalg=0x2210", "\\angle=0x2220", "\\approx=0x2248", "\\approxeq=0x224a", "\\ast=0x2217", "\\asymp=0x224d", "\\b=0x0331", "\\backcong=0x224c", "\\backepsilon=0x220d", "\\backprime=0x2035", "\\backsim=0x223d", "\\backsimeq=0x22cd", "\\backslash=\\", "\\barwedge=0x22bc", "\\because=0x2235", "\\beta=0x03b2", "\\beth=0x2136", "\\between=0x226c", "\\bigcap=0x22c2", "\\bigcirc=0x25ef", "\\bigcup=0x22c3", "\\bigstar=0x2605", "\\bigtriangledown=0x25bd", "\\bigtriangleup=0x25b3", "\\bigvee=0x22c1", "\\bigwedge=0x22c0", "\\blacklozenge=0x2726", "\\blacksquare=0x25aa", "\\blacktriangle=0x25b4", "\\blacktriangledown=0x25be", "\\blacktriangleleft=0x25c2", "\\blacktriangleright=0x25b8", "\\bot=0x22a5", "\\bowtie=0x22c8", "\\Box=0x25a1", "\\boxminus=0x229f", "\\boxplus=0x229e", "\\boxtimes=0x22a0", "\\bullet=0x2022", "\\Bumpeq=0x224e", "\\bumpeq=0x224f", "\\c=0x0327", "\\cap=0x2229", "\\Cap=0x22d2", "\\cdot=0x22c5", "\\cdots=0x22ef", "\\centerdot=0x00b7", "\\checkmark=0x2713", "\\chi=0x03c7", "\\circ=0x25cb", "\\circeq=0x2257", "\\circlearrowleft=0x21ba", "\\circlearrowright=0x21bb", "\\circledast=0x229b", "\\circledcirc=0x229a", "\\circleddash=0x229d", "\\circledR=0x00ae", "\\circledS=0x24c8", "\\clubsuit=0x2663", "\\colon=:", "\\coloneq=0x2254", "\\complement=0x2201", "\\cong=0x2245", "\\coprod=0x2210", "\\copyright=0x00a9", "\\cup=0x222a", "\\Cup=0x22d3", "\\curlyeqprec=0x22de", "\\curlyeqsucc=0x22df", "\\curlypreceq=0x227c", "\\curlyvee=0x22ce", "\\curlywedge=0x22cf", "\\curvearrowleft=0x21b6", "\\curvearrowright=0x21b7", "\\c{C}=0x00c7", "\\c{c}=0x00e7", "\\c{D}=0x1e10", "\\c{d}=0x1e11", "\\c{G}=0x0122", "\\c{g}=0x0123", "\\c{H}=0x1e28", "\\c{h}=0x1e29", "\\c{K}=0x0136", "\\c{k}=0x0137", "\\c{L}=0x013b", "\\c{l}=0x013c", "\\c{N}=0x0145", "\\c{n}=0x0146", "\\c{R}=0x0156", "\\c{r}=0x0157", "\\c{S}=0x015e", "\\c{s}=0x015f", "\\c{T}=0x0162", "\\c{t}=0x0163", "\\d=0x0323", "\\dag=0x2020", "\\dagger=0x2020", "\\daleth=0x2138", "\\dashv=0x22a3", "\\ddag=0x2021", "\\ddagger=0x2021", "\\ddots=0x22f1", "\\Delta=0x0394", "\\delta=0x03b4", "\\diamond=0x22c4", "\\Diamond=0x25c7", "\\diamondsuit=0x2662", "\\digamma=0x03dc", "\\div=0x00f7", "\\divideontimes=0x22c7", "\\doteq=0x2250", "\\doteqdot=0x2251", "\\dotplus=0x2214", "\\dotsquare=0x22a1", "\\doublebarwedge=0x2227\\u033f", "\\downarrow=0x2193", "\\Downarrow=0x21d3", "\\downdownarrows=0x21ca", "\\downleftharpoon=0x21c3", "\\downrightharpoon=0x21c2", "\\d{A}=0x1ea0", "\\d{a}=0x1ea1", "\\d{B}=0x1e04", "\\d{b}=0x1e05", "\\d{D}=0x1e0c", "\\d{d}=0x1e0d", "\\d{E}=0x1eb8", "\\d{e}=0x1eb9", "\\d{H}=0x1e24", "\\d{h}=0x1e25", "\\d{I}=0x1eca", "\\d{i}=0x1ecb", "\\d{K}=0x1e32", "\\d{k}=0x1e33", "\\d{L}=0x1e36", "\\d{l}=0x1e37", "\\d{M}=0x1e42", "\\d{m}=0x1e43", "\\d{N}=0x1e46", "\\d{n}=0x1e47", "\\d{O}=0x1ecc", "\\d{o}=0x1ecd", "\\d{R}=0x1e5a", "\\d{r}=0x1e5b", "\\d{S}=0x1e62", "\\d{s}=0x1e63", "\\d{T}=0x1e6c", "\\d{t}=0x1e6d", "\\d{U}=0x1ee4", "\\d{u}=0x1ee5", "\\d{V}=0x1e7e", "\\d{v}=0x1e7f", "\\d{W}=0x1e88", "\\d{w}=0x1e89", "\\d{Y}=0x1ef4", "\\d{y}=0x1ef5", "\\d{Z}=0x1e92", "\\d{z}=0x1e93", "\\ell=0x2113", "\\emptyset=0x2205", "\\epsilon=0x03b5", "\\eqcirc=0x2256", "\\eqcolon=0x2255", "\\eqslantgtr=0x22dd", "\\eqslantless=0x22dc", "\\equiv=0x2261", "\\eta=0x03b7", "\\euro=0x20ac", "\\exists=0x2203", "\\fallingdotseq=0x2252", "\\flat=0x266d", "\\forall=0x2200", "\\frac1=0x215f", "\\frac12=0x00bd", "\\frac13=0x2153", "\\frac14=0x00bc", "\\frac15=0x2155", "\\frac16=0x2159", "\\frac18=0x215b", "\\frac23=0x2154", "\\frac25=0x2156", "\\frac34=0x00be", "\\frac35=0x2157", "\\frac38=0x215c", "\\frac45=0x2158", "\\frac56=0x215a", "\\frac58=0x215d", "\\frac78=0x215e", "\\frown=0x2322", "\\Gamma=0x0393", "\\gamma=0x03b3", "\\ge=0x2265", "\\geq=0x2265", "\\geqq=0x2267", "\\geqslant=0x2265", "\\gets=0x2190", "\\gg=0x226b", "\\ggg=0x22d9", "\\gimel=0x2137", "\\gnapprox=0x22e7", "\\gneq=0x2269", "\\gneqq=0x2269", "\\gnsim=0x22e7", "\\gtrapprox=0x2273", "\\gtrdot=0x22d7", "\\gtreqless=0x22db", "\\gtreqqless=0x22db", "\\gtrless=0x2277", "\\gtrsim=0x2273", "\\gvertneqq=0x2269", "\\H=0x030b", "\\hbar=0x210f", "\\heartsuit=0x2665", "\\hookleftarrow=0x21a9", "\\hookrightarrow=0x21aa", "\\H{O}=0x0150", "\\H{o}=0x0151", "\\H{U}=0x0170", "\\H{u}=0x0171", "\\i=0x0131", "\\iff=0x21d4", "\\Im=0x2111", "\\imath=0x0131", "\\in=0x2208", "\\infty=0x221e", "\\int=0x222b", "\\intercal=0x22ba", "\\iota=0x03b9", "\\Join=0x22c8", "\\kappa=0x03ba", "\\L=0x0141", "\\l=0x0142", "\\Lambda=0x039b", "\\lambda=0x03bb", "\\langle=0x2329", "\\lbrace={", "\\lbrack=[", "\\lceil=0x2308", "\\ldots=0x2026", "\\le=0x2264", "\\leadsto=0x219d", "\\leftarrow=0x2190", "\\Leftarrow=0x21d0", "\\leftarrowtail=0x21a2", "\\leftharpoondown=0x21bd", "\\leftharpoonup=0x21bc", "\\leftleftarrows=0x21c7", "\\leftparengtr=0x2329", "\\leftrightarrow=0x2194", "\\Leftrightarrow=0x21d4", "\\leftrightarrows=0x21c6", "\\leftrightharpoons=0x21cb", "\\leftrightsquigarrow=0x21ad", "\\leftthreetimes=0x22cb", "\\leq=0x2264", "\\leqq=0x2266", "\\leqslant=0x2264", "\\lessapprox=0x2272", "\\lessdot=0x22d6", "\\lesseqgtr=0x22da", "\\lesseqqgtr=0x22da", "\\lessgtr=0x2276", "\\lesssim=0x2272", "\\lfloor=0x230a", "\\lhd=0x25c1", "\\ll=0x226a", "\\Ll=0x22d8", "\\llcorner=0x231e", "\\Lleftarrow=0x21da", "\\lnapprox=0x22e6", "\\lneq=0x2268", "\\lneqq=0x2268", "\\lnsim=0x22e6", "\\longleftarrow=0x2190", "\\Longleftarrow=0x21d0", "\\longleftrightarrow=0x2194", "\\Longleftrightarrow=0x21d4", "\\longmapsto=0x21a6", "\\longrightarrow=0x2192", "\\Longrightarrow=0x21d2", "\\looparrowleft=0x21ab", "\\looparrowright=0x21ac", "\\lozenge=0x2727", "\\lq=0x2018", "\\lrcorner=0x231f", "\\Lsh=0x21b0", "\\ltimes=0x22c9", "\\lvertneqq=0x2268", "\\maltese=0x2720", "\\mapsto=0x21a6", "\\measuredangle=0x2221", "\\mho=0x2127", "\\mid=0x2223", "\\models=0x22a7", "\\mp=0x2213", "\\multimap=0x22b8", "\\nabla=0x2207", "\\napprox=0x2249", "\\natural=0x266e", "\\ncong=0x2247", "\\ne=0x2260", "\\nearrow=0x2197", "\\neg=0x00ac", "\\neq=0x2260", "\\nequiv=0x2262", "\\newline=0x2028", "\\nexists=0x2204", "\\ngeq=0x2271", "\\ngeqq=0x2271", "\\ngeqslant=0x2271", "\\ngtr=0x226f", "\\ni=0x220b", "\\nleftarrow=0x219a", "\\nLeftarrow=0x21cd", "\\nleftrightarrow=0x21ae", "\\nLeftrightarrow=0x21ce", "\\nleq=0x2270", "\\nleqq=0x2270", "\\nleqslant=0x2270", "\\nless=0x226e", "\\nmid=0x2224", "\\not=0x0338", "\\notin=0x2209", "\\nparallel=0x2226", "\\nprec=0x2280", "\\npreceq=0x22e0", "\\nrightarrow=0x219b", "\\nRightarrow=0x21cf", "\\nshortmid=0x2224", "\\nshortparallel=0x2226", "\\nsim=0x2241", "\\nsimeq=0x2244", "\\nsubset=0x2284", "\\nsubseteq=0x2288", "\\nsubseteqq=0x2288", "\\nsucc=0x2281", "\\nsucceq=0x22e1", "\\nsupset=0x2285", "\\nsupseteq=0x2289", "\\nsupseteqq=0x2289", "\\ntriangleleft=0x22ea", "\\ntrianglelefteq=0x22ec", "\\ntriangleright=0x22eb", "\\ntrianglerighteq=0x22ed", "\\nu=0x03bd", "\\nvdash=0x22ac", "\\nvDash=0x22ad", "\\nVdash=0x22ae", "\\nVDash=0x22af", "\\nwarrow=0x2196", "\\O=0x00d8", "\\o=0x00f8", "\\odot=0x2299", "\\OE=0x0152", "\\oe=0x0153", "\\oint=0x222e", "\\Omega=0x03a9", "\\omega=0x03c9", "\\ominus=0x2296", "\\oplus=0x2295", "\\oslash=0x2298", "\\otimes=0x2297", "\\P=0x00b6", "\\par=0x2029", "\\parallel=0x2225", "\\partial=0x2202", "\\perp=0x22a5", "\\Phi=0x03a6", "\\phi=0x03c6", "\\Pi=0x03a0", "\\pi=0x03c0", "\\pitchfork=0x22d4", "\\pm=0x00b1", "\\pounds=0x00a3", "\\prec=0x227a", "\\precapprox=0x227e", "\\preceq=0x227c", "\\precnapprox=0x22e8", "\\precnsim=0x22e8", "\\precsim=0x227e", "\\prime=0x2032", "\\prod=0x220f", "\\propto=0x221d", "\\Psi=0x03a8", "\\psi=0x03c8", "\\quad=0x2001", "\\rangle=0x232a", "\\rbrace=}", "\\rbrack=]", "\\rceil=0x2309", "\\Re=0x211c", "\\rfloor=0x230b", "\\rightarrow=0x2192", "\\Rightarrow=0x21d2", "\\rightarrowtail=0x21a3", "\\rightharpoondown=0x21c1", "\\rightharpoonup=0x21c0", "\\rightleftarrows=0x21c4", "\\rightleftharpoons=0x21cc", "\\rightparengtr=0x232a", "\\rightrightarrows=0x21c9", "\\rightthreetimes=0x22cc", "\\risingdotseq=0x2253", "\\rq=0x2019", "\\Rrightarrow=0x21db", "\\Rsh=0x21b1", "\\rtimes=0x22ca", "\\S=0x00a7", "\\sbs=0xfe68", "\\searrow=0x2198", "\\setminus=0x2216", "\\sharp=0x266f", "\\shortmid=0x2223", "\\shortparallel=0x2225", "\\Sigma=0x03a3", "\\sigma=0x03c3", "\\sim=0x223c", "\\simeq=0x2243", "\\smallamalg=0x2210", "\\smallsetminus=0x2216", "\\smallsmile=0x2323", "\\smile=0x2323", "\\spadesuit=0x2660", "\\sphericalangle=0x2222", "\\sqcap=0x2293", "\\sqcup=0x2294", "\\sqsubset=0x228f", "\\sqsubseteq=0x2291", "\\sqsupset=0x2290", "\\sqsupseteq=0x2292", "\\square=0x25a1", "\\squigarrowright=0x21dd", "\\ss=0x00df", "\\star=0x22c6", "\\straightphi=0x03c6", "\\subset=0x2282", "\\Subset=0x22d0", "\\subseteq=0x2286", "\\subseteqq=0x2286", "\\subsetneq=0x228a", "\\subsetneqq=0x228a", "\\succ=0x227b", "\\succapprox=0x227f", "\\succcurlyeq=0x227d", "\\succeq=0x227d", "\\succnapprox=0x22e9", "\\succnsim=0x22e9", "\\succsim=0x227f", "\\sum=0x2211", "\\supset=0x2283", "\\Supset=0x22d1", "\\supseteq=0x2287", "\\supseteqq=0x2287", "\\supsetneq=0x228b", "\\supsetneqq=0x228b", "\\surd=0x221a", "\\swarrow=0x2199", "\\tau=0x03c4", "\\therefore=0x2234", "\\Theta=0x0398", "\\theta=0x03b8", "\\thickapprox=0x2248", "\\thicksim=0x223c", "\\times=0x00d7", "\\to=0x2192", "\\top=0x22a4", "\\triangle=0x25b5", "\\triangledown=0x25bf", "\\triangleleft=0x25c3", "\\trianglelefteq=0x22b4", "\\triangleq=0x225c", "\\triangleright=0x25b9", "\\trianglerighteq=0x22b5", "\\twoheadleftarrow=0x219e", "\\twoheadrightarrow=0x21a0", "\\u=0x0306", "\\ulcorner=0x231c", "\\uparrow=0x2191", "\\Uparrow=0x21d1", "\\updownarrow=0x2195", "\\Updownarrow=0x21d5", "\\upleftharpoon=0x21bf", "\\uplus=0x228e", "\\uprightharpoon=0x21be", "\\Upsilon=0x03a5", "\\upsilon=0x03c5", "\\upuparrows=0x21c8", "\\urcorner=0x231d", "\\u{A}=0x0102", "\\u{a}=0x0103", "\\u{E}=0x0114", "\\u{e}=0x0115", "\\u{G}=0x011e", "\\u{g}=0x011f", "\\u{I}=0x012c", "\\u{i}=0x012d", "\\u{O}=0x014e", "\\u{o}=0x014f", "\\u{U}=0x016c", "\\u{u}=0x016d", "\\v=0x030c", "\\varkappa=0x03f0", "\\varphi=0x03d5", "\\varpi=0x03d6", "\\varprime=0x2032", "\\varpropto=0x221d", "\\varrho=0x03f1", "\\varsigma=0x03c2", "\\vartheta=0x03d1", "\\vartriangleleft=0x22b2", "\\vartriangleright=0x22b3", "\\vdash=0x22a2", "\\vDash=0x22a8", "\\Vdash=0x22a9", "\\vdots=0x22ee", "\\vee=0x2228", "\\veebar=0x22bb", "\\Vert=0x2016", "\\vert=|", "\\Vvdash=0x22aa", "\\v{A}=0x01cd", "\\v{a}=0x01ce", "\\v{C}=0x010c", "\\v{c}=0x010d", "\\v{D}=0x010e", "\\v{d}=0x010f", "\\v{E}=0x011a", "\\v{e}=0x011b", "\\v{G}=0x01e6", "\\v{g}=0x01e7", "\\v{I}=0x01cf", "\\v{i}=0x01d0", "\\v{j}=0x01f0", "\\v{K}=0x01e8", "\\v{k}=0x01e9", "\\v{L}=0x013d", "\\v{l}=0x013e", "\\v{N}=0x0147", "\\v{n}=0x0148", "\\v{O}=0x01d1", "\\v{o}=0x01d2", "\\v{R}=0x0158", "\\v{r}=0x0159", "\\v{S}=0x0160", "\\v{s}=0x0161", "\\v{T}=0x0164", "\\v{t}=0x0165", "\\v{U}=0x01d3", "\\v{u}=0x01d4", "\\v{Z}=0x017d", "\\v{z}=0x017e", "\\wedge=0x2227", "\\wp=0x2118", "\\wr=0x2240", "\\yen=0x00a5", "\\Xi=0x039e", "\\xi=0x03be", "\\zeta=0x03b6", "\\^=0x0302", "\\^A=0x00c2", "\\^a=0x00e2", "\\^C=0x0108", "\\^c=0x0109", "\\^E=0x00ca", "\\^e=0x00ea", "\\^G=0x011c", "\\^g=0x011d", "\\^H=0x0124", "\\^h=0x0125", "\\^I=0x00ce", "\\^i=0x00ee", "\\^J=0x0134", "\\^j=0x0135", "\\^O=0x00d4", "\\^o=0x00f4", "\\^S=0x015c", "\\^s=0x015d", "\\^U=0x00db", "\\^u=0x00fb", "\\^W=0x0174", "\\^w=0x0175", "\\^Y=0x0176", "\\^y=0x0177", "\\^Z=0x1e90", "\\^z=0x1e91", "\\`=0x0300", "\\`A=0x00c0", "\\`a=0x00e0", "\\`E=0x00c8", "\\`e=0x00e8", "\\`I=0x00cc", "\\`i=0x00ec", "\\`O=0x00d2", "\\`o=0x00f2", "\\`U=0x00d9", "\\`u=0x00f9", "\\`W=0x1e80", "\\`w=0x1e81", "\\`Y=0x1ef2", "\\`y=0x1ef3", "\\~=0x0303", "\\~A=0x00c3", "\\~a=0x00e3", "\\~E=0x1ebc", "\\~e=0x1ebd", "\\~I=0x0128", "\\~i=0x0129", "\\~N=0x00d1", "\\~n=0x00f1", "\\~O=0x00d5", "\\~o=0x00f5", "\\~U=0x0168", "\\~u=0x0169", "\\~V=0x1e7c", "\\~v=0x1e7d", "\\~Y=0x1ef8", "\\~y=0x1ef9", "^(=0x207d", "^)=0x207e", "^+=0x207a", "^-=0x207b", "^0=0x2070", "^1=0x00b9", "^2=0x00b2", "^3=0x00b3", "^4=0x2074", "^5=0x2075", "^6=0x2076", "^7=0x2077", "^8=0x2078", "^9=0x2079", "^ 0x3D =0x207c", "^a=0x00aa", "^h=0x02b0", "^j=0x02b2", "^l=0x02e1", "^n=0x207f", "^o=0x00ba", "^r=0x02b3", "^s=0x02e2", "^w=0x02b7", "^x=0x02e3", "^y=0x02b8", "^\\gamma=0x02e0", "^{SM}=0x2120", "^{TEL}=0x2121", "^{TM}=0x2122", "_(=0x208d", "_)=0x208e", "_+=0x208a", "_-=0x208b", "_0=0x2080", "_1=0x2081", "_2=0x2082", "_3=0x2083", "_4=0x2084", "_5=0x2085", "_6=0x2086", "_7=0x2087", "_8=0x2088", "_9=0x2089", "_ 0x3D =0x208c", "\\'{c}=0x0107", "\\'{C}=0x0106", "\\dj=0x0111", "\\DJ=0x0110", "\\Dj=0x0110", ./mytool/kmap/Berbere-conversion1.kmap0000644000175000017500000000234207572026304020002 0ustar henrichhenrich// This keymap is for conversion of texts written with fonts // that have substituted iso-8859-1 glyphs with Berber glyphs // comments describe individual conversions "##version = version_2002_11_25_01", "##auteur = Bruno_Cauchy_Lefebvre", "##email = bb.lefebvre@free.fr", "0x00a3 =0x0194", // £ -> Ɣ "$ =0x0263", // $ -> ɣ "O =G 0x0306", // O -> Ğ "o =g 0x0306", // o -> ğ "P =T 0x0327", // P -> Ţ "p =t 0x0327", // p -> ţ "V =D 0x0323", // V -> Ḍ "v =d 0x0323", // v -> ḍ "0x008a =S 0x0306", // ? -> S̆ "0x009a =s 0x0306", // ? -> s̆ "0x00c4 =Z 0x0327", // Ä -> Z̧ "0x00e4 =z 0x0327", // ä -> z̧ "0x00cb =H 0x0323", // Ë -> Ḥ Precomposed: U+1E24 "0x00ea =h 0x0323", // ê -> ḥ Precomposed: U+1E25 "0x00cf =T 0x0323", // Ï -> Ṭ Precomposed: U+1E6C "0x00ee =t 0x0323", // î -> ṭ Precomposed: U+1E6D "0x00d6 =R 0x0323", // Ö -> Ṛ Precomposed: U+1E5A "0x00f4 =r 0x0323", // ô -> ṛ Precomposed: U+1E5B "0x00dc =S 0x0323", // Ü -> Ṣ Precomposed: U+1E62 "0x00fb =s 0x0323", // û -> ṣ Precomposed: U+1E63 "0x00e0 =C 0x0306", // à -> C̆ "0x00e7 =c 0x0306", // ç -> c̆ "0x00e8 =Z 0x0323", // é -> Ẓ Precomposed: U+1E92 "0x00e9 =z 0x0323", // è -> ẓ Precomposed: U+1E93 ./mytool/kmap/Farsi.kmap0000644000175000017500000000700007737457032015241 0ustar henrichhenrich//Farsi.kmap for Yudit by Hamed Seyed-allaei ‫سید حامد سیدعلایی‬ //ISIRI 2901-1994 Layout // The alphabet ‮الفبای فارسی ‬ "q=0x0636", // zad (ض) "w=0x0635", // sad (ص) "e=0x062b", // se with 3 dots (ث) "r=0x0642", // ghaf (ق) "t=0x0641", // feh (ف) "y=0x063a", // ghain (غ) "u=0x0639", // ain (ع) "i=0x0647", // heh (ه) "o=0x062e", // kheh (خ) "p=0x062d", // heh (ح) "[=0x062c", // jeem (ج) "]=0x0686", // che (چ) "a=0x0634", // sheen (ش) "s=0x0633", // seen (س) "d=0x06cc", //farsi yeh (ی) "f=0x0628", // beh (ب) "g=0x0644", // lam (ل) "h=0x0627", // alef (ا) "j=0x062a", // teh (ت) "k=0x0646", // noon (ن) "l=0x0645", // meem (م) ";=0x06a9", //Farsi kaf (ک) "'=0x06af", // gaf (گ) "z=0x0638", // za (ظ) "x=0x0637", //ta (ط) "c=0x0632", //ze (ز) "v=0x0631", // re (ر) "b=0x0630", //zal (ذ) "n=0x062f", //dal (د) "m=0x067e", //pe (پ) ",=0x0648", // waw (و) ".=0x002e", // noghteh (.) "Q=0x0652", //Farsi saken ( ْ ) "W=0x064c", //do pish ( ٌ) "E=0x064d", //do zir ( ٍ) "R=0x064b", //do zebar ( ً) "T=0x064f", //pish ( ُ) "Y=0x0650", //zir ( ِ) "U=0x064e", //zebar ( َ) "I=0x651", //tashdid ( ّ) "O=0x05b", //[ "P=0x05d", //] "{=0x07b", //{ "}=0x07d", //} "A=0x0624", //waw with hamze (ؤ) "S=0x0626", //ye with hamze (ئ) "D=0x064a", // Arabic ye with dots (ي) "F=0x0625", // alef with hamzeh under ( إ) "G=0x0654", //Farsi hamzeh above () "H=0x0622", // Farsi A (آ) "J=0x0629", //te gerd (ة) "K=0x0ab", // ( « ) "L=0x0bb", // ( » ) ":=0x03a", //: "\"=0x061b", //Farsi ; (؛) "Z=0x0643", //arabic kaf (ك) "C=0x0698", //jhe (ژ) "B=0x200c", //Zero Width Non-Joiner (ZWNJ) ن‌ن "M=0x0621", // Farsi hamzeh (ء) "<=0x003c", //< ">=0x003e", //> "?=0x061f", //farsi ? (؟) "!=0x0021", //! "@=0x066c", // Farsi thousand seperator (٬) "#=0x066b", // float (٫) "$=0xfdfc", //Rial (﷼) "%=0x066a", //Farsi % (٪) "^=0x00d7", //farsi multiply similar to x (×) "&=0x060c", //Farsi , (،) "*=0x002a", // * "(=0x0028", //( ")=0x0029", //) "_=0x0640", //Farsi keshidegi (ـ) "+=0x002b", // + "|=0x007c", //| // Numbers ‫شمارگان‬ "0x30=0x06f0", // 0 (۰) "0x31=0x06f1", // 1 (۱) "0x32=0x06f2", // 2 (۲) "0x33=0x06f3", // 3 (۳) "0x34=0x06f4", // 4 (۴) "0x35=0x06f5", // 5 (۵) "0x36=0x06f6", // 6 (۶) "0x37=0x06f7", // 7 (۷) "0x38=0x06f8", // 8 (۸) "0x39=0x06f9", // 9 (۹) "\-=0x002d", //- "\\=0x005c", //\ //This part is not standard "~=0x200d", //Zero Width Joiner (ZWJ) ن‍ن "V=0x00f7", // (÷) //"iM=0x06C0", //"shift+0x020=0x200C", //Zero Width Non-Joiner (ZWNJ) //I used X as Ctrl key "Xj=0x200D", // ZERO WIDTH JOINER ت‍ن "0x000c=0x200E", // Ctrl+l LEFT-TO-RIGHT MARK ت‎ن "`=0x200C", // Ctrl+n ZERO WIDTH NON-JOINER ت‌ن "Xr=0x200F", // RIGHT-TO-LEFT MARK ت‏ن ./mytool/kmap/Russian-ISO-Latinitsa.kmap0000644000175000017500000000236507572774166020217 0ustar henrichhenrich// Russian-ISO-Translit.kmap for the Unicode editor Yudit // to type ISO-9 transliteration of Russian language // 2001-03-31 Thomas Henlich "A^=0x00c2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX (Я; YA) "C<=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON (Ч; CHE) "E`=0x00c8", // È = LATIN CAPITAL LETTER E WITH GRAVE (Э; E) "E:=0x00cb", // Ë = LATIN CAPITAL LETTER E WITH DIAERESIS (Ё; IO) "S<=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON (Ш; SHA) "S^=0x015C", // Ŝ = LATIN CAPITAL LETTER S WITH CIRCUMFLEX (Щ; SHCHA) "U^=0x00db", // Û = LATIN CAPITAL LETTER U WITH CIRCUMFLEX (Ю; YU) "Z<=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON (Ж; ZHE) "a^=0x00e2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "c<=0x010D", // č = LATIN SMALL LETTER C WITH CARON "e`=0x00e8", // è = LATIN SMALL LETTER E WITH GRAVE "e:=0x00eb", // ë = LATIN SMALL LETTER E WITH DIAERESIS "s<=0x0161", // š = LATIN SMALL LETTER S WITH CARON "s^=0x015D", // ŝ = LATIN SMALL LETTER S WITH CIRCUMFLEX "u^=0x00fb", // û = LATIN SMALL LETTER U WITH CIRCUMFLEX "z<=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "'=0x2032", // ′ = PRIME (Ь/ь = SOFT SIGN) "''=0x2033", // ″ = DOUBLE PRIME (Ъ/ъ = HARD SIGN) ./mytool/kmap/Mnemonic.kmap0000644000175000017500000006511207532460064015742 0ustar henrichhenrich// Mnemonic.kmap for Gaspar Sinai's Unicode editor Yudit for the X Window // system, generated with perl -ne 'print if s=//=/ /=,s/=/ 0x3D /, // s/^.*0x(....), "(.+)"}/"&$2=0x$1"/' /usr/src/recode-3.4g/src/rfc1345.h // 1998-07-20 Roman czyborra@cs.tu-berlin.de with gsinai@iname.com's help // Now we can input characters using their short RFC1345 mnemonics: // warn: key is empty:&NU. // warn: duplicate key:&=. // "&NU=0x0000", "&SH=0x0001", "&SX=0x0002", "&EX=0x0003", "&ET=0x0004", "&EQ=0x0005", "&AK=0x0006", "&BL=0x0007", "&BS=0x0008", "&HT=0x0009", "&LF=0x000A", "&VT=0x000B", "&FF=0x000C", "&CR=0x000D", "&SO=0x000E", "&SI=0x000F", "&DL=0x0010", "&D1=0x0011", "&D2=0x0012", "&D3=0x0013", "&D4=0x0014", "&NK=0x0015", "&SY=0x0016", "&EB=0x0017", "&CN=0x0018", "&EM=0x0019", "&SB=0x001A", "&EC=0x001B", "&FS=0x001C", "&GS=0x001D", "&RS=0x001E", "&US=0x001F", "&SP=0x0020", "&!=0x0021", "&\"=0x0022", "&Nb=0x0023", "&DO=0x0024", "&%=0x0025", "&&=0x0026", "&'=0x0027", "&(=0x0028", "&)=0x0029", "&*=0x002A", "&+=0x002B", "&,=0x002C", "&-=0x002D", "&.=0x002E", "&/=0x002F", "&0=0x0030", "&1=0x0031", "&2=0x0032", "&3=0x0033", "&4=0x0034", "&5=0x0035", "&6=0x0036", "&7=0x0037", "&8=0x0038", "&9=0x0039", "&:=0x003A", "&;=0x003B", "&<=0x003C", // "& 0x3D =0x003D", "&>=0x003E", "&?=0x003F", "&At=0x0040", "&A=0x0041", "&B=0x0042", "&C=0x0043", "&D=0x0044", "&E=0x0045", "&F=0x0046", "&G=0x0047", "&H=0x0048", "&I=0x0049", "&J=0x004A", "&K=0x004B", "&L=0x004C", "&M=0x004D", "&N=0x004E", "&O=0x004F", "&P=0x0050", "&Q=0x0051", "&R=0x0052", "&S=0x0053", "&T=0x0054", "&U=0x0055", "&V=0x0056", "&W=0x0057", "&X=0x0058", "&Y=0x0059", "&Z=0x005A", "&<(=0x005B", "&/ /=0x005C", "&)>=0x005D", "&'>=0x005E", "&_=0x005F", "&'!=0x0060", "&a=0x0061", "&b=0x0062", "&c=0x0063", "&d=0x0064", "&e=0x0065", "&f=0x0066", "&g=0x0067", "&h=0x0068", "&i=0x0069", "&j=0x006A", "&k=0x006B", "&l=0x006C", "&m=0x006D", "&n=0x006E", "&o=0x006F", "&p=0x0070", "&q=0x0071", "&r=0x0072", "&s=0x0073", "&t=0x0074", "&u=0x0075", "&v=0x0076", "&w=0x0077", "&x=0x0078", "&y=0x0079", "&z=0x007A", "&(!=0x007B", "&!!=0x007C", "&!)=0x007D", "&'?=0x007E", "&DT=0x007F", "&PA=0x0080", "&HO=0x0081", "&BH=0x0082", "&NH=0x0083", "&IN=0x0084", "&NL=0x0085", "&SA=0x0086", "&ES=0x0087", "&HS=0x0088", "&HJ=0x0089", "&VS=0x008A", "&PD=0x008B", "&PU=0x008C", "&RI=0x008D", "&S2=0x008E", "&S3=0x008F", "&DC=0x0090", "&P1=0x0091", "&P2=0x0092", "&TS=0x0093", "&CC=0x0094", "&MW=0x0095", "&SG=0x0096", "&EG=0x0097", "&SS=0x0098", "&GC=0x0099", "&SC=0x009A", "&CI=0x009B", "&ST=0x009C", "&OC=0x009D", "&PM=0x009E", "&AC=0x009F", "&NS=0x00A0", "&!I=0x00A1", "&Ct=0x00A2", "&Pd=0x00A3", "&Cu=0x00A4", "&Ye=0x00A5", "&BB=0x00A6", "&SE=0x00A7", "&':=0x00A8", "&Co=0x00A9", "&-a=0x00AA", "&<<=0x00AB", "&NO=0x00AC", "&--=0x00AD", "&Rg=0x00AE", "&'m=0x00AF", "&DG=0x00B0", "&+-=0x00B1", "&2S=0x00B2", "&3S=0x00B3", "&''=0x00B4", "&My=0x00B5", "&PI=0x00B6", "&.M=0x00B7", "&',=0x00B8", "&1S=0x00B9", "&-o=0x00BA", "&>>=0x00BB", "&14=0x00BC", "&12=0x00BD", "&34=0x00BE", "&?I=0x00BF", "&A!=0x00C0", "&A'=0x00C1", "&A>=0x00C2", "&A?=0x00C3", "&A:=0x00C4", "&AA=0x00C5", "&AE=0x00C6", "&C,=0x00C7", "&E!=0x00C8", "&E'=0x00C9", "&E>=0x00CA", "&E:=0x00CB", "&I!=0x00CC", "&I'=0x00CD", "&I>=0x00CE", "&I:=0x00CF", "&D-=0x00D0", "&N?=0x00D1", "&O!=0x00D2", "&O'=0x00D3", "&O>=0x00D4", "&O?=0x00D5", "&O:=0x00D6", "&*X=0x00D7", "&O/=0x00D8", "&U!=0x00D9", "&U'=0x00DA", "&U>=0x00DB", "&U:=0x00DC", "&Y'=0x00DD", "&TH=0x00DE", "&ss=0x00DF", "&a!=0x00E0", "&a'=0x00E1", "&a>=0x00E2", "&a?=0x00E3", "&a:=0x00E4", "&aa=0x00E5", "&ae=0x00E6", "&c,=0x00E7", "&e!=0x00E8", "&e'=0x00E9", "&e>=0x00EA", "&e:=0x00EB", "&i!=0x00EC", "&i'=0x00ED", "&i>=0x00EE", "&i:=0x00EF", "&d-=0x00F0", "&n?=0x00F1", "&o!=0x00F2", "&o'=0x00F3", "&o>=0x00F4", "&o?=0x00F5", "&o:=0x00F6", "&-:=0x00F7", "&o/=0x00F8", "&u!=0x00F9", "&u'=0x00FA", "&u>=0x00FB", "&u:=0x00FC", "&y'=0x00FD", "&th=0x00FE", "&y:=0x00FF", "&A-=0x0100", "&a-=0x0101", "&A(=0x0102", "&a(=0x0103", "&A;=0x0104", "&a;=0x0105", "&C'=0x0106", "&c'=0x0107", "&C>=0x0108", "&c>=0x0109", "&C.=0x010A", "&c.=0x010B", "&C<=0x010C", "&c<=0x010D", "&D<=0x010E", "&d<=0x010F", "&D/=0x0110", "&d/=0x0111", "&E-=0x0112", "&e-=0x0113", "&E(=0x0114", "&e(=0x0115", "&E.=0x0116", "&e.=0x0117", "&E;=0x0118", "&e;=0x0119", "&E<=0x011A", "&e<=0x011B", "&G>=0x011C", "&g>=0x011D", "&G(=0x011E", "&g(=0x011F", "&G.=0x0120", "&g.=0x0121", "&G,=0x0122", "&g,=0x0123", "&H>=0x0124", "&h>=0x0125", "&H/=0x0126", "&h/=0x0127", "&I?=0x0128", "&i?=0x0129", "&I-=0x012A", "&i-=0x012B", "&I(=0x012C", "&i(=0x012D", "&I;=0x012E", "&i;=0x012F", "&I.=0x0130", "&i.=0x0131", "&IJ=0x0132", "&ij=0x0133", "&J>=0x0134", "&j>=0x0135", "&K,=0x0136", "&k,=0x0137", "&kk=0x0138", "&L'=0x0139", "&l'=0x013A", "&L,=0x013B", "&l,=0x013C", "&L<=0x013D", "&l<=0x013E", "&L.=0x013F", "&l.=0x0140", "&L/=0x0141", "&l/=0x0142", "&N'=0x0143", "&n'=0x0144", "&N,=0x0145", "&n,=0x0146", "&N<=0x0147", "&n<=0x0148", "&'n=0x0149", "&NG=0x014A", "&ng=0x014B", "&O-=0x014C", "&o-=0x014D", "&O(=0x014E", "&o(=0x014F", "&O\"=0x0150", "&o\"=0x0151", "&OE=0x0152", "&oe=0x0153", "&R'=0x0154", "&r'=0x0155", "&R,=0x0156", "&r,=0x0157", "&R<=0x0158", "&r<=0x0159", "&S'=0x015A", "&s'=0x015B", "&S>=0x015C", "&s>=0x015D", "&S,=0x015E", "&s,=0x015F", "&S<=0x0160", "&s<=0x0161", "&T,=0x0162", "&t,=0x0163", "&T<=0x0164", "&t<=0x0165", "&T/=0x0166", "&t/=0x0167", "&U?=0x0168", "&u?=0x0169", "&U-=0x016A", "&u-=0x016B", "&U(=0x016C", "&u(=0x016D", "&U0=0x016E", "&u0=0x016F", "&U\"=0x0170", "&u\"=0x0171", "&U;=0x0172", "&u;=0x0173", "&W>=0x0174", "&w>=0x0175", "&Y>=0x0176", "&y>=0x0177", "&Y:=0x0178", "&Z'=0x0179", "&z'=0x017A", "&Z.=0x017B", "&z.=0x017C", "&Z<=0x017D", "&z<=0x017E", "&s1=0x017F", "&C2=0x0187", "&c2=0x0188", "&F2=0x0191", "&f2=0x0192", "&K2=0x0198", "&k2=0x0199", "&O9=0x01A0", "&o9=0x01A1", "&OI=0x01A2", "&oi=0x01A3", "&yr=0x01A6", "&U9=0x01AF", "&u9=0x01B0", "&Z/=0x01B5", "&z/=0x01B6", "&ED=0x01B7", "&A<=0x01CD", "&a<=0x01CE", "&I<=0x01CF", "&i<=0x01D0", "&O<=0x01D1", "&o<=0x01D2", "&U<=0x01D3", "&u<=0x01D4", "&U:-=0x01D5", "&u:-=0x01D6", "&U:'=0x01D7", "&u:'=0x01D8", "&U:<=0x01D9", "&u:<=0x01DA", "&U:!=0x01DB", "&u:!=0x01DC", "&A1=0x01DE", "&a1=0x01DF", "&A7=0x01E0", "&a7=0x01E1", "&A3=0x01E2", "&a3=0x01E3", "&G/=0x01E4", "&g/=0x01E5", "&G<=0x01E6", "&g<=0x01E7", "&K<=0x01E8", "&k<=0x01E9", "&O;=0x01EA", "&o;=0x01EB", "&O1=0x01EC", "&o1=0x01ED", "&EZ=0x01EE", "&ez=0x01EF", "&G'=0x01F4", "&g'=0x01F5", "&AA'=0x01FA", "&aa'=0x01FB", "&AE'=0x01FC", "&ae'=0x01FD", "&O/'=0x01FE", "&o/'=0x01FF", "&A!!=0x0200", "&a!!=0x0201", "&A)=0x0202", "&a)=0x0203", "&E!!=0x0204", "&e!!=0x0205", "&E)=0x0206", "&e)=0x0207", "&I!!=0x0208", "&i!!=0x0209", "&I)=0x020A", "&i)=0x020B", "&O!!=0x020C", "&o!!=0x020D", "&O)=0x020E", "&o)=0x020F", "&R!!=0x0210", "&r!!=0x0211", "&R)=0x0212", "&r)=0x0213", "&U!!=0x0214", "&u!!=0x0215", "&U)=0x0216", "&u)=0x0217", "&ed=0x0292", "&;S=0x02BB", "&1>=0x02C6", "&'<=0x02C7", "&1-=0x02C9", "&1!=0x02CB", "&'(=0x02D8", "&'.=0x02D9", "&'0=0x02DA", "&';=0x02DB", "&1?=0x02DC", "&'\"=0x02DD", "&'G=0x0374", "&,G=0x0375", "&j3=0x037A", "&?%=0x037E", "&'*=0x0384", "&'%=0x0385", "&A%=0x0386", "&.*=0x0387", "&E%=0x0388", "&Y%=0x0389", "&I%=0x038A", "&O%=0x038C", "&U%=0x038E", "&W%=0x038F", "&i3=0x0390", "&A*=0x0391", "&B*=0x0392", "&G*=0x0393", "&D*=0x0394", "&E*=0x0395", "&Z*=0x0396", "&Y*=0x0397", "&H*=0x0398", "&I*=0x0399", "&K*=0x039A", "&L*=0x039B", "&M*=0x039C", "&N*=0x039D", "&C*=0x039E", "&O*=0x039F", "&P*=0x03A0", "&R*=0x03A1", "&S*=0x03A3", "&T*=0x03A4", "&U*=0x03A5", "&F*=0x03A6", "&X*=0x03A7", "&Q*=0x03A8", "&W*=0x03A9", "&J*=0x03AA", "&V*=0x03AB", "&a%=0x03AC", "&e%=0x03AD", "&y%=0x03AE", "&i%=0x03AF", "&u3=0x03B0", "&a*=0x03B1", "&b*=0x03B2", "&g*=0x03B3", "&d*=0x03B4", "&e*=0x03B5", "&z*=0x03B6", "&y*=0x03B7", "&h*=0x03B8", "&i*=0x03B9", "&k*=0x03BA", "&l*=0x03BB", "&m*=0x03BC", "&n*=0x03BD", "&c*=0x03BE", "&o*=0x03BF", "&p*=0x03C0", "&r*=0x03C1", "&*s=0x03C2", "&s*=0x03C3", "&t*=0x03C4", "&u*=0x03C5", "&f*=0x03C6", "&x*=0x03C7", "&q*=0x03C8", "&w*=0x03C9", "&j*=0x03CA", "&v*=0x03CB", "&o%=0x03CC", "&u%=0x03CD", "&w%=0x03CE", "&b3=0x03D0", "&IO=0x0401", "&D%=0x0402", "&G%=0x0403", "&IE=0x0404", "&DS=0x0405", "&II=0x0406", "&YI=0x0407", "&J%=0x0408", "&LJ=0x0409", "&NJ=0x040A", "&Ts=0x040B", "&KJ=0x040C", "&V%=0x040E", "&DZ=0x040F", "&A 0x3D =0x0410", "&B 0x3D =0x0411", "&V 0x3D =0x0412", "&G 0x3D =0x0413", "&D 0x3D =0x0414", "&E 0x3D =0x0415", "&Z%=0x0416", "&Z 0x3D =0x0417", "&I 0x3D =0x0418", "&J 0x3D =0x0419", "&K 0x3D =0x041A", "&L 0x3D =0x041B", "&M 0x3D =0x041C", "&N 0x3D =0x041D", "&O 0x3D =0x041E", "&P 0x3D =0x041F", "&R 0x3D =0x0420", "&S 0x3D =0x0421", "&T 0x3D =0x0422", "&U 0x3D =0x0423", "&F 0x3D =0x0424", "&H 0x3D =0x0425", "&C 0x3D =0x0426", "&C%=0x0427", "&S%=0x0428", "&Sc=0x0429", "& 0x3D \"=0x042A", "&Y 0x3D =0x042B", "&%\"=0x042C", "&JE=0x042D", "&JU=0x042E", "&JA=0x042F", "&a 0x3D =0x0430", "&b 0x3D =0x0431", "&v 0x3D =0x0432", "&g 0x3D =0x0433", "&d 0x3D =0x0434", "&e 0x3D =0x0435", "&z%=0x0436", "&z 0x3D =0x0437", "&i 0x3D =0x0438", "&j 0x3D =0x0439", "&k 0x3D =0x043A", "&l 0x3D =0x043B", "&m 0x3D =0x043C", "&n 0x3D =0x043D", "&o 0x3D =0x043E", "&p 0x3D =0x043F", "&r 0x3D =0x0440", "&s 0x3D =0x0441", "&t 0x3D =0x0442", "&u 0x3D =0x0443", "&f 0x3D =0x0444", "&h 0x3D =0x0445", "&c 0x3D =0x0446", "&c%=0x0447", "&s%=0x0448", "&sc=0x0449", "& 0x3D '=0x044A", "&y 0x3D =0x044B", "&%'=0x044C", "&je=0x044D", "&ju=0x044E", "&ja=0x044F", "&io=0x0451", "&d%=0x0452", "&g%=0x0453", "&ie=0x0454", "&ds=0x0455", "&ii=0x0456", "&yi=0x0457", "&j%=0x0458", "&lj=0x0459", "&nj=0x045A", "&ts=0x045B", "&kj=0x045C", "&v%=0x045E", "&dz=0x045F", "&Y3=0x0462", "&y3=0x0463", "&O3=0x046A", "&o3=0x046B", "&F3=0x0472", "&f3=0x0473", "&V3=0x0474", "&v3=0x0475", "&C3=0x0480", "&c3=0x0481", "&G3=0x0490", "&g3=0x0491", "&A+=0x05D0", "&B+=0x05D1", "&G+=0x05D2", "&D+=0x05D3", "&H+=0x05D4", "&W+=0x05D5", "&Z+=0x05D6", "&X+=0x05D7", "&Tj=0x05D8", "&J+=0x05D9", "&K%=0x05DA", "&K+=0x05DB", "&L+=0x05DC", "&M%=0x05DD", "&M+=0x05DE", "&N%=0x05DF", "&N+=0x05E0", "&S+=0x05E1", "&E+=0x05E2", "&P%=0x05E3", "&P+=0x05E4", "&Zj=0x05E5", "&ZJ=0x05E6", "&Q+=0x05E7", "&R+=0x05E8", "&Sh=0x05E9", "&T+=0x05EA", "&,+=0x060C", "&;+=0x061B", "&?+=0x061F", "&H'=0x0621", "&aM=0x0622", "&aH=0x0623", "&wH=0x0624", "&ah=0x0625", "&yH=0x0626", "&a+=0x0627", "&b+=0x0628", "&tm=0x0629", "&t+=0x062A", "&tk=0x062B", "&g+=0x062C", "&hk=0x062D", "&x+=0x062E", "&d+=0x062F", "&dk=0x0630", "&r+=0x0631", "&z+=0x0632", "&s+=0x0633", "&sn=0x0634", "&c+=0x0635", "&dd=0x0636", "&tj=0x0637", "&zH=0x0638", "&e+=0x0639", "&i+=0x063A", "&++=0x0640", "&f+=0x0641", "&q+=0x0642", "&k+=0x0643", "&l+=0x0644", "&m+=0x0645", "&n+=0x0646", "&h+=0x0647", "&w+=0x0648", "&j+=0x0649", "&y+=0x064A", "&:+=0x064B", "&\"+=0x064C", "& 0x3D +=0x064D", "&/+=0x064E", "&'+=0x064F", "&1+=0x0650", "&3+=0x0651", "&0+=0x0652", "&0a=0x0660", "&1a=0x0661", "&2a=0x0662", "&3a=0x0663", "&4a=0x0664", "&5a=0x0665", "&6a=0x0666", "&7a=0x0667", "&8a=0x0668", "&9a=0x0669", "&aS=0x0670", "&p+=0x067E", "&hH=0x0681", "&tc=0x0686", "&zj=0x0698", "&v+=0x06A4", "&gf=0x06AF", "&A-0=0x1E00", "&a-0=0x1E01", "&B.=0x1E02", "&b.=0x1E03", "&B-.=0x1E04", "&b-.=0x1E05", "&B_=0x1E06", "&b_=0x1E07", "&C,'=0x1E08", "&c,'=0x1E09", "&D.=0x1E0A", "&d.=0x1E0B", "&D-.=0x1E0C", "&d-.=0x1E0D", "&D_=0x1E0E", "&d_=0x1E0F", "&D,=0x1E10", "&d,=0x1E11", "&D->=0x1E12", "&d->=0x1E13", "&E-!=0x1E14", "&e-!=0x1E15", "&E-'=0x1E16", "&e-'=0x1E17", "&E->=0x1E18", "&e->=0x1E19", "&E-?=0x1E1A", "&e-?=0x1E1B", "&E,(=0x1E1C", "&e,(=0x1E1D", "&F.=0x1E1E", "&f.=0x1E1F", "&G-=0x1E20", "&g-=0x1E21", "&H.=0x1E22", "&h.=0x1E23", "&H-.=0x1E24", "&h-.=0x1E25", "&H:=0x1E26", "&h:=0x1E27", "&H,=0x1E28", "&h,=0x1E29", "&H-(=0x1E2A", "&h-(=0x1E2B", "&I-?=0x1E2C", "&i-?=0x1E2D", "&I:'=0x1E2E", "&i:'=0x1E2F", "&K'=0x1E30", "&k'=0x1E31", "&K-.=0x1E32", "&k-.=0x1E33", "&K_=0x1E34", "&k_=0x1E35", "&L-.=0x1E36", "&l-.=0x1E37", "&L_=0x1E3A", "&l_=0x1E3B", "&L->=0x1E3C", "&l->=0x1E3D", "&M'=0x1E3E", "&m'=0x1E3F", "&M.=0x1E40", "&m.=0x1E41", "&M-.=0x1E42", "&m-.=0x1E43", "&N.=0x1E44", "&n.=0x1E45", "&N-.=0x1E46", "&n-.=0x1E47", "&N_=0x1E48", "&n_=0x1E49", "&N->=0x1E4A", "&n->=0x1E4B", "&O?'=0x1E4C", "&o?'=0x1E4D", "&O?:=0x1E4E", "&o?:=0x1E4F", "&O-!=0x1E50", "&o-!=0x1E51", "&O-'=0x1E52", "&o-'=0x1E53", "&P'=0x1E54", "&p'=0x1E55", "&P.=0x1E56", "&p.=0x1E57", "&R.=0x1E58", "&r.=0x1E59", "&R-.=0x1E5A", "&r-.=0x1E5B", "&R_=0x1E5E", "&r_=0x1E5F", "&S.=0x1E60", "&s.=0x1E61", "&S-.=0x1E62", "&s-.=0x1E63", "&S'.=0x1E64", "&s'.=0x1E65", "&S<.=0x1E66", "&s<.=0x1E67", "&T.=0x1E6A", "&t.=0x1E6B", "&T-.=0x1E6C", "&t-.=0x1E6D", "&T_=0x1E6E", "&t_=0x1E6F", "&T->=0x1E70", "&t->=0x1E71", "&U-?=0x1E74", "&u-?=0x1E75", "&U->=0x1E76", "&u->=0x1E77", "&U?'=0x1E78", "&u?'=0x1E79", "&U-:=0x1E7A", "&u-:=0x1E7B", "&V?=0x1E7C", "&v?=0x1E7D", "&V-.=0x1E7E", "&v-.=0x1E7F", "&W!=0x1E80", "&w!=0x1E81", "&W'=0x1E82", "&w'=0x1E83", "&W:=0x1E84", "&w:=0x1E85", "&W.=0x1E86", "&w.=0x1E87", "&W-.=0x1E88", "&w-.=0x1E89", "&X.=0x1E8A", "&x.=0x1E8B", "&X:=0x1E8C", "&x:=0x1E8D", "&Y.=0x1E8E", "&y.=0x1E8F", "&Z>=0x1E90", "&z>=0x1E91", "&Z-.=0x1E92", "&z-.=0x1E93", "&Z_=0x1E94", "&z_=0x1E95", "&A-.=0x1EA0", "&a-.=0x1EA1", "&A2=0x1EA2", "&a2=0x1EA3", "&A>'=0x1EA4", "&a>'=0x1EA5", "&A>!=0x1EA6", "&a>!=0x1EA7", "&A>2=0x1EA8", "&a>2=0x1EA9", "&A>?=0x1EAA", "&a>?=0x1EAB", "&A('=0x1EAE", "&a('=0x1EAF", "&A(!=0x1EB0", "&a(!=0x1EB1", "&A(2=0x1EB2", "&a(2=0x1EB3", "&A(?=0x1EB4", "&a(?=0x1EB5", "&E-.=0x1EB8", "&e-.=0x1EB9", "&E2=0x1EBA", "&e2=0x1EBB", "&E?=0x1EBC", "&e?=0x1EBD", "&E>'=0x1EBE", "&e>'=0x1EBF", "&E>!=0x1EC0", "&e>!=0x1EC1", "&E>2=0x1EC2", "&e>2=0x1EC3", "&E>?=0x1EC4", "&e>?=0x1EC5", "&I2=0x1EC8", "&i2=0x1EC9", "&I-.=0x1ECA", "&i-.=0x1ECB", "&O-.=0x1ECC", "&o-.=0x1ECD", "&O2=0x1ECE", "&o2=0x1ECF", "&O>'=0x1ED0", "&o>'=0x1ED1", "&O>!=0x1ED2", "&o>!=0x1ED3", "&O>2=0x1ED4", "&o>2=0x1ED5", "&O>?=0x1ED6", "&o>?=0x1ED7", "&O9'=0x1EDA", "&o9'=0x1EDB", "&O9!=0x1EDC", "&o9!=0x1EDD", "&O92=0x1EDE", "&o92=0x1EDF", "&O9?=0x1EE0", "&o9?=0x1EE1", "&U-.=0x1EE4", "&u-.=0x1EE5", "&U2=0x1EE6", "&u2=0x1EE7", "&U9'=0x1EE8", "&u9'=0x1EE9", "&U9!=0x1EEA", "&u9!=0x1EEB", "&U92=0x1EEC", "&u92=0x1EED", "&U9?=0x1EEE", "&u9?=0x1EEF", "&Y!=0x1EF2", "&y!=0x1EF3", "&Y-.=0x1EF4", "&y-.=0x1EF5", "&Y2=0x1EF6", "&y2=0x1EF7", "&Y?=0x1EF8", "&y?=0x1EF9", "&,,=0x1FBF", "&?*=0x1FC0", "&?:=0x1FC1", "&,!=0x1FCD", "&,'=0x1FCE", "&?,=0x1FCF", "&;!=0x1FDD", "&;'=0x1FDE", "&?;=0x1FDF", "&!:=0x1FED", "&!*=0x1FEF", "&;;=0x1FFE", "&1N=0x2002", "&1M=0x2003", "&3M=0x2004", "&4M=0x2005", "&6M=0x2006", "&1T=0x2009", "&1H=0x200A", "&LR=0x200E", "&RL=0x200F", "&-1=0x2010", "&-N=0x2013", "&-M=0x2014", "&-3=0x2015", "&!2=0x2016", "& 0x3D 2=0x2017", "&'6=0x2018", "&'9=0x2019", "&.9=0x201A", "&9'=0x201B", "&\"6=0x201C", "&\"9=0x201D", "&:9=0x201E", "&9\"=0x201F", "&/-=0x2020", "&/ 0x3D =0x2021", "&Sb=0x2022", "&..=0x2025", "&.3=0x2026", "&%0=0x2030", "&1'=0x2032", "&2'=0x2033", "&3'=0x2034", "&1\"=0x2035", "&2\"=0x2036", "&3\"=0x2037", "&Ca=0x2038", "&<1=0x2039", "&>1=0x203A", "&:X=0x203B", "&!*2=0x203C", "&'-=0x203E", "&/f=0x2044", "&0S=0x2070", "&4S=0x2074", "&5S=0x2075", "&6S=0x2076", "&7S=0x2077", "&8S=0x2078", "&9S=0x2079", "&+S=0x207A", "&-S=0x207B", "& 0x3D S=0x207C", "&(S=0x207D", "&)S=0x207E", "&nS=0x207F", "&0s=0x2080", "&1s=0x2081", "&2s=0x2082", "&3s=0x2083", "&4s=0x2084", "&5s=0x2085", "&6s=0x2086", "&7s=0x2087", "&8s=0x2088", "&9s=0x2089", "&+s=0x208A", "&-s=0x208B", "& 0x3D s=0x208C", "&(s=0x208D", "&)s=0x208E", "&Ff=0x20A3", "&Li=0x20A4", "&Pt=0x20A7", "&W 0x3D =0x20A9", "&oC=0x2103", "&co=0x2105", "&oF=0x2109", "&N0=0x2116", "&PO=0x2117", "&Rx=0x211E", "&SM=0x2120", "&TM=0x2122", "&Om=0x2126", "&AO=0x212B", "&13=0x2153", "&23=0x2154", "&15=0x2155", "&25=0x2156", "&35=0x2157", "&45=0x2158", "&16=0x2159", "&56=0x215A", "&18=0x215B", "&38=0x215C", "&58=0x215D", "&78=0x215E", "&1R=0x2160", "&2R=0x2161", "&3R=0x2162", "&4R=0x2163", "&5R=0x2164", "&6R=0x2165", "&7R=0x2166", "&8R=0x2167", "&9R=0x2168", "&aR=0x2169", "&bR=0x216A", "&cR=0x216B", "&50R=0x216C", "&1r=0x2170", "&2r=0x2171", "&3r=0x2172", "&4r=0x2173", "&5r=0x2174", "&6r=0x2175", "&7r=0x2176", "&8r=0x2177", "&9r=0x2178", "&ar=0x2179", "&br=0x217A", "&cr=0x217B", "&50r=0x217C", "&<-=0x2190", "&-!=0x2191", "&->=0x2192", "&-v=0x2193", "&<>=0x2194", "&UD=0x2195", "&=0x2197", "&!!>=0x2198", "&V=0x21C0", "&< 0x3D =0x21D0", "& 0x3D >=0x21D2", "& 0x3D 0x3D=0x21D4", "&FA=0x2200", "&dP=0x2202", "&TE=0x2203", "&/0=0x2205", "&DE=0x2206", "&NB=0x2207", "&(-=0x2208", "&-)=0x220B", "&*P=0x220F", "&+Z=0x2211", "&-2=0x2212", "&-+=0x2213", "&.+=0x2214", "&*-=0x2217", "&Ob=0x2218", "&sb=0x2219", "&RT=0x221A", "&0(=0x221D", "&00=0x221E", "&-L=0x221F", "&-V=0x2220", "&PP=0x2225", "&AN=0x2227", "&OR=0x2228", "&(U=0x2229", "&)U=0x222A", "&In=0x222B", "&DI=0x222C", "&Io=0x222E", "&.:=0x2234", "&:.=0x2235", "&:R=0x2236", "&::=0x2237", "&?1=0x223C", "&CG=0x223E", "&?-=0x2243", "&? 0x3D =0x2245", "&?2=0x2248", "& 0x3D ?=0x224C", "&HI=0x2253", "&! 0x3D =0x2260", "& 0x3D 3=0x2261", "& 0x3D <=0x2264", "&> 0x3D =0x2265", "&<*=0x226A", "&*>=0x226B", "&!<=0x226E", "&!>=0x226F", "&(C=0x2282", "&)C=0x2283", "&(_=0x2286", "&)_=0x2287", "&0.=0x2299", "&02=0x229A", "&-T=0x22A5", "&.P=0x22C5", "&:3=0x22EE", "&Eh=0x2302", "&<7=0x2308", "&>7=0x2309", "&7<=0x230A", "&7>=0x230B", "&NI=0x2310", "&(A=0x2312", "&TR=0x2315", "&88=0x2318", "&Iu=0x2320", "&Il=0x2321", "&=0x232A", "&Vs=0x2423", "&1h=0x2440", "&3h=0x2441", "&2h=0x2442", "&4h=0x2443", "&1j=0x2446", "&2j=0x2447", "&3j=0x2448", "&4j=0x2449", "&1-o=0x2460", "&2-o=0x2461", "&3-o=0x2462", "&4-o=0x2463", "&5-o=0x2464", "&6-o=0x2465", "&7-o=0x2466", "&8-o=0x2467", "&9-o=0x2468", "&(1)=0x2474", "&(2)=0x2475", "&(3)=0x2476", "&(4)=0x2477", "&(5)=0x2478", "&(6)=0x2479", "&(7)=0x247A", "&(8)=0x247B", "&(9)=0x247C", "&1.=0x2488", "&2.=0x2489", "&3.=0x248A", "&4.=0x248B", "&5.=0x248C", "&6.=0x248D", "&7.=0x248E", "&8.=0x248F", "&9.=0x2490", "&10.=0x2491", "&11.=0x2492", "&12.=0x2493", "&13.=0x2494", "&14.=0x2495", "&15.=0x2496", "&16.=0x2497", "&17.=0x2498", "&18.=0x2499", "&19.=0x249A", "&20.=0x249B", "&(a)=0x249C", "&(b)=0x249D", "&(c)=0x249E", "&(d)=0x249F", "&(e)=0x24A0", "&(f)=0x24A1", "&(g)=0x24A2", "&(h)=0x24A3", "&(i)=0x24A4", "&(j)=0x24A5", "&(k)=0x24A6", "&(l)=0x24A7", "&(m)=0x24A8", "&(n)=0x24A9", "&(o)=0x24AA", "&(p)=0x24AB", "&(q)=0x24AC", "&(r)=0x24AD", "&(s)=0x24AE", "&(t)=0x24AF", "&(u)=0x24B0", "&(v)=0x24B1", "&(w)=0x24B2", "&(x)=0x24B3", "&(y)=0x24B4", "&(z)=0x24B5", "&A-o=0x24B6", "&B-o=0x24B7", "&C-o=0x24B8", "&D-o=0x24B9", "&E-o=0x24BA", "&F-o=0x24BB", "&G-o=0x24BC", "&H-o=0x24BD", "&I-o=0x24BE", "&J-o=0x24BF", "&K-o=0x24C0", "&L-o=0x24C1", "&M-o=0x24C2", "&N-o=0x24C3", "&O-o=0x24C4", "&P-o=0x24C5", "&Q-o=0x24C6", "&R-o=0x24C7", "&S-o=0x24C8", "&T-o=0x24C9", "&U-o=0x24CA", "&V-o=0x24CB", "&W-o=0x24CC", "&X-o=0x24CD", "&Y-o=0x24CE", "&Z-o=0x24CF", "&a-o=0x24D0", "&b-o=0x24D1", "&c-o=0x24D2", "&d-o=0x24D3", "&e-o=0x24D4", "&f-o=0x24D5", "&g-o=0x24D6", "&h-o=0x24D7", "&i-o=0x24D8", "&j-o=0x24D9", "&k-o=0x24DA", "&l-o=0x24DB", "&m-o=0x24DC", "&n-o=0x24DD", "&o-o=0x24DE", "&p-o=0x24DF", "&q-o=0x24E0", "&r-o=0x24E1", "&s-o=0x24E2", "&t-o=0x24E3", "&u-o=0x24E4", "&v-o=0x24E5", "&w-o=0x24E6", "&x-o=0x24E7", "&y-o=0x24E8", "&z-o=0x24E9", "&0-o=0x24EA", "&hh=0x2500", "&HH-=0x2501", "&vv=0x2502", "&VV-=0x2503", "&3-=0x2504", "&3_=0x2505", "&3!=0x2506", "&3/=0x2507", "&4-=0x2508", "&4_=0x2509", "&4!=0x250A", "&4/=0x250B", "&dr=0x250C", "&dR-=0x250D", "&Dr-=0x250E", "&DR-=0x250F", "&dl=0x2510", "&dL-=0x2511", "&Dl-=0x2512", "&LD-=0x2513", "&ur=0x2514", "&uR-=0x2515", "&Ur-=0x2516", "&UR-=0x2517", "&ul=0x2518", "&uL-=0x2519", "&Ul-=0x251A", "&UL-=0x251B", "&vr=0x251C", "&vR-=0x251D", "&Udr=0x251E", "&uDr=0x251F", "&Vr-=0x2520", "&UdR=0x2521", "&uDR=0x2522", "&VR-=0x2523", "&vl=0x2524", "&vL-=0x2525", "&Udl=0x2526", "&uDl=0x2527", "&Vl-=0x2528", "&UdL=0x2529", "&uDL=0x252A", "&VL-=0x252B", "&dh=0x252C", "&dLr=0x252D", "&dlR=0x252E", "&dH-=0x252F", "&Dh-=0x2530", "&DLr=0x2531", "&DlR=0x2532", "&DH-=0x2533", "&uh=0x2534", "&uLr=0x2535", "&ulR=0x2536", "&uH-=0x2537", "&Uh-=0x2538", "&ULr=0x2539", "&UlR=0x253A", "&UH-=0x253B", "&vh=0x253C", "&vLr=0x253D", "&vlR=0x253E", "&vH-=0x253F", "&Udh=0x2540", "&uDh=0x2541", "&Vh-=0x2542", "&UdH=0x2547", "&uDH=0x2548", "&VLr=0x2549", "&VlR=0x254A", "&VH-=0x254B", "&HH=0x2550", "&VV=0x2551", "&dR=0x2552", "&Dr=0x2553", "&DR=0x2554", "&dL=0x2555", "&Dl=0x2556", "&LD=0x2557", "&uR=0x2558", "&Ur=0x2559", "&UR=0x255A", "&uL=0x255B", "&Ul=0x255C", "&UL=0x255D", "&vR=0x255E", "&Vr=0x255F", "&VR=0x2560", "&vL=0x2561", "&Vl=0x2562", "&VL=0x2563", "&dH=0x2564", "&Dh=0x2565", "&DH=0x2566", "&uH=0x2567", "&Uh=0x2568", "&UH=0x2569", "&vH=0x256A", "&Vh=0x256B", "&VH=0x256C", "&FD=0x2571", "&BD=0x2572", "&TB=0x2580", "&LB=0x2584", "&FB=0x2588", "&lB=0x258C", "&RB=0x2590", "&.S=0x2591", "&:S=0x2592", "&?S=0x2593", "&fS=0x25A0", "&OS=0x25A1", "&RO=0x25A2", "&Rr=0x25A3", "&RF=0x25A4", "&RY=0x25A5", "&RH=0x25A6", "&RZ=0x25A7", "&RK=0x25A8", "&RX=0x25A9", "&sB=0x25AA", "&SR=0x25AC", "&Or=0x25AD", "&UT=0x25B2", "&uT=0x25B3", "&Tr=0x25B7", "&PR=0x25BA", "&Dt=0x25BC", "&dT=0x25BD", "&Tl=0x25C1", "&PL=0x25C4", "&Db=0x25C6", "&Dw=0x25C7", "&LZ=0x25CA", "&0m=0x25CB", "&0o=0x25CE", "&0M=0x25CF", "&0L=0x25D0", "&0R=0x25D1", "&Sn=0x25D8", "&Ic=0x25D9", "&Fd=0x25E2", "&Bd=0x25E3", "&Ci=0x25EF", "&*2=0x2605", "&*1=0x2606", "&TEL=0x260E", "&tel=0x260F", "&H=0x261E", "&0u=0x263A", "&0U=0x263B", "&SU=0x263C", "&Fm=0x2640", "&Ml=0x2642", "&cS=0x2660", "&cH=0x2661", "&cD=0x2662", "&cC=0x2663", "&cS-=0x2664", "&cH-=0x2665", "&cD-=0x2666", "&cC-=0x2667", "&Md=0x2669", "&M8=0x266A", "&M2=0x266B", "&M16=0x266C", "&Mb=0x266D", "&Mx=0x266E", "&MX=0x266F", "&OK=0x2713", "&XX=0x2717", "&-X=0x2720", "&IS=0x3000", "&,_=0x3001", "&._=0x3002", "&+\"=0x3003", "&JIS=0x3004", "&*_=0x3005", "&;_=0x3006", "&0_=0x3007", "&<+=0x300A", "&>+=0x300B", "&<'=0x300C", "&>'=0x300D", "&<\"=0x300E", "&>\"=0x300F", "&(\"=0x3010", "&)\"=0x3011", "& 0x3D T=0x3012", "& 0x3D _=0x3013", "&('=0x3014", "&)'=0x3015", "&(I=0x3016", "&)I=0x3017", "&-?=0x301C", "&A5=0x3041", "&a5=0x3042", "&I5=0x3043", "&i5=0x3044", "&U5=0x3045", "&u5=0x3046", "&E5=0x3047", "&e5=0x3048", "&O5=0x3049", "&o5=0x304A", "&ka=0x304B", "&ga=0x304C", "&ki=0x304D", "&gi=0x304E", "&ku=0x304F", "&gu=0x3050", "&ke=0x3051", "&ge=0x3052", "&ko=0x3053", "&go=0x3054", "&sa=0x3055", "&za=0x3056", "&si=0x3057", "&zi=0x3058", "&su=0x3059", "&zu=0x305A", "&se=0x305B", "&ze=0x305C", "&so=0x305D", "&zo=0x305E", "&ta=0x305F", "&da=0x3060", "&ti=0x3061", "&di=0x3062", "&tU=0x3063", "&tu=0x3064", "&du=0x3065", "&te=0x3066", "&de=0x3067", "&to=0x3068", "&do=0x3069", "&na=0x306A", "&ni=0x306B", "&nu=0x306C", "&ne=0x306D", "&no=0x306E", "&ha=0x306F", "&ba=0x3070", "&pa=0x3071", "&hi=0x3072", "&bi=0x3073", "&pi=0x3074", "&hu=0x3075", "&bu=0x3076", "&pu=0x3077", "&he=0x3078", "&be=0x3079", "&pe=0x307A", "&ho=0x307B", "&bo=0x307C", "&po=0x307D", "&ma=0x307E", "&mi=0x307F", "&mu=0x3080", "&me=0x3081", "&mo=0x3082", "&yA=0x3083", "&ya=0x3084", "&yU=0x3085", "&yu=0x3086", "&yO=0x3087", "&yo=0x3088", "&ra=0x3089", "&ri=0x308A", "&ru=0x308B", "&re=0x308C", "&ro=0x308D", "&wA=0x308E", "&wa=0x308F", "&wi=0x3090", "&we=0x3091", "&wo=0x3092", "&n5=0x3093", "&vu=0x3094", "&\"5=0x309B", "&05=0x309C", "&*5=0x309D", "&+5=0x309E", "&a6=0x30A1", "&A6=0x30A2", "&i6=0x30A3", "&I6=0x30A4", "&u6=0x30A5", "&U6=0x30A6", "&e6=0x30A7", "&E6=0x30A8", "&o6=0x30A9", "&O6=0x30AA", "&Ka=0x30AB", "&Ga=0x30AC", "&Ki=0x30AD", "&Gi=0x30AE", "&Ku=0x30AF", "&Gu=0x30B0", "&Ke=0x30B1", "&Ge=0x30B2", "&Ko=0x30B3", "&Go=0x30B4", "&Sa=0x30B5", "&Za=0x30B6", "&Si=0x30B7", "&Zi=0x30B8", "&Su=0x30B9", "&Zu=0x30BA", "&Se=0x30BB", "&Ze=0x30BC", "&So=0x30BD", "&Zo=0x30BE", "&Ta=0x30BF", "&Da=0x30C0", "&Ti=0x30C1", "&Di=0x30C2", "&TU=0x30C3", "&Tu=0x30C4", "&Du=0x30C5", "&Te=0x30C6", "&De=0x30C7", "&To=0x30C8", "&Do=0x30C9", "&Na=0x30CA", "&Ni=0x30CB", "&Nu=0x30CC", "&Ne=0x30CD", "&No=0x30CE", "&Ha=0x30CF", "&Ba=0x30D0", "&Pa=0x30D1", "&Hi=0x30D2", "&Bi=0x30D3", "&Pi=0x30D4", "&Hu=0x30D5", "&Bu=0x30D6", "&Pu=0x30D7", "&He=0x30D8", "&Be=0x30D9", "&Pe=0x30DA", "&Ho=0x30DB", "&Bo=0x30DC", "&Po=0x30DD", "&Ma=0x30DE", "&Mi=0x30DF", "&Mu=0x30E0", "&Me=0x30E1", "&Mo=0x30E2", "&YA=0x30E3", "&Ya=0x30E4", "&YU=0x30E5", "&Yu=0x30E6", "&YO=0x30E7", "&Yo=0x30E8", "&Ra=0x30E9", "&Ri=0x30EA", "&Ru=0x30EB", "&Re=0x30EC", "&Ro=0x30ED", "&WA=0x30EE", "&Wa=0x30EF", "&Wi=0x30F0", "&We=0x30F1", "&Wo=0x30F2", "&N6=0x30F3", "&Vu=0x30F4", "&KA=0x30F5", "&KE=0x30F6", "&Va=0x30F7", "&Vi=0x30F8", "&Ve=0x30F9", "&Vo=0x30FA", "&.6=0x30FB", "&-6=0x30FC", "&*6=0x30FD", "&+6=0x30FE", "&1c=0x3220", "&2c=0x3221", "&3c=0x3222", "&4c=0x3223", "&5c=0x3224", "&6c=0x3225", "&7c=0x3226", "&8c=0x3227", "&9c=0x3228", "&10c=0x3229", "&KSC=0x327F", "&am=0x33C2", "&pm=0x33D8", "&\"3=0xE000", "&\"1=0xE001", "&\"!=0xE002", "&\"'=0xE003", "&\">=0xE004", "&\"?=0xE005", "&\"-=0xE006", "&\"(=0xE007", "&\".=0xE008", "&\":=0xE009", "&\"0=0xE00A", "&\",=0xE00B", "&\"_=0xE00C", "&\"\"=0xE00D", "&\";=0xE00E", "&\"<=0xE00F", "&\" 0x3D =0xE010", "&\"/=0xE011", "&\"p=0xE012", "&\"d=0xE013", "&\"i=0xE014", "&+_=0xE015", "&a+:=0xE016", "&Tel=0xE017", "&UA=0xE018", "&UB=0xE019", "&Mc=0xE01E", "&Fl=0xE01F", "&ff=0xFB00", "&fi=0xFB01", "&fl=0xFB02", "&ffi=0xFB03", "&ffl=0xFB04", "&St=0xFB05", "&st=0xFB06", "&3+;=0xFE7D", "&aM.=0xFE82", "&aH.=0xFE84", "&ah.=0xFE88", "&a+-=0xFE8D", "&a+.=0xFE8E", "&b+-=0xFE8F", "&b+.=0xFE90", "&b+,=0xFE91", "&b+;=0xFE92", "&tm-=0xFE93", "&tm.=0xFE94", "&t+-=0xFE95", "&t+.=0xFE96", "&t+,=0xFE97", "&t+;=0xFE98", "&tk-=0xFE99", "&tk.=0xFE9A", "&tk,=0xFE9B", "&tk;=0xFE9C", "&g+-=0xFE9D", "&g+.=0xFE9E", "&g+,=0xFE9F", "&g+;=0xFEA0", "&hk-=0xFEA1", "&hk.=0xFEA2", "&hk,=0xFEA3", "&hk;=0xFEA4", "&x+-=0xFEA5", "&x+.=0xFEA6", "&x+,=0xFEA7", "&x+;=0xFEA8", "&d+-=0xFEA9", "&d+.=0xFEAA", "&dk-=0xFEAB", "&dk.=0xFEAC", "&r+-=0xFEAD", "&r+.=0xFEAE", "&z+-=0xFEAF", "&z+.=0xFEB0", "&s+-=0xFEB1", "&s+.=0xFEB2", "&s+,=0xFEB3", "&s+;=0xFEB4", "&sn-=0xFEB5", "&sn.=0xFEB6", "&sn,=0xFEB7", "&sn;=0xFEB8", "&c+-=0xFEB9", "&c+.=0xFEBA", "&c+,=0xFEBB", "&c+;=0xFEBC", "&dd-=0xFEBD", "&dd.=0xFEBE", "&dd,=0xFEBF", "ⅆ=0xFEC0", "&tj-=0xFEC1", "&tj.=0xFEC2", "&tj,=0xFEC3", "&tj;=0xFEC4", "&zH-=0xFEC5", "&zH.=0xFEC6", "&zH,=0xFEC7", "&zH;=0xFEC8", "&e+-=0xFEC9", "&e+.=0xFECA", "&e+,=0xFECB", "&e+;=0xFECC", "&i+-=0xFECD", "&i+.=0xFECE", "&i+,=0xFECF", "&i+;=0xFED0", "&f+-=0xFED1", "&f+.=0xFED2", "&f+,=0xFED3", "&f+;=0xFED4", "&q+-=0xFED5", "&q+.=0xFED6", "&q+,=0xFED7", "&q+;=0xFED8", "&k+-=0xFED9", "&k+.=0xFEDA", "&k+,=0xFEDB", "&k+;=0xFEDC", "&l+-=0xFEDD", "&l+.=0xFEDE", "&l+,=0xFEDF", "&l+;=0xFEE0", "&m+-=0xFEE1", "&m+.=0xFEE2", "&m+,=0xFEE3", "&m+;=0xFEE4", "&n+-=0xFEE5", "&n+.=0xFEE6", "&n+,=0xFEE7", "&n+;=0xFEE8", "&h+-=0xFEE9", "&h+.=0xFEEA", "&h+,=0xFEEB", "&h+;=0xFEEC", "&w+-=0xFEED", "&w+.=0xFEEE", "&j+-=0xFEEF", "&j+.=0xFEF0", "&y+-=0xFEF1", "&y+.=0xFEF2", "&y+,=0xFEF3", "&y+;=0xFEF4", "&lM-=0xFEF5", "&lM.=0xFEF6", "&lH-=0xFEF7", "&lH.=0xFEF8", "&lh-=0xFEF9", "&lh.=0xFEFA", "&la-=0xFEFB", "&la.=0xFEFC", ./mytool/kmap/Bulgarian.kmap0000644000175000017500000000163010430066274016070 0ustar henrichhenrich// // Bulgarian-PHO.kmap for Yudit // Alexander Shopov // 2001-02-19 // //---------------- Capital letters ---------------- // "A=0x0410", "B=0x0411", "W=0x0412", "G=0x0413", "D=0x0414", "E=0x0415", "V=0x0416", "Z=0x0417", "I=0x0418", "J=0x0419", "K=0x041A", "L=0x041B", "M=0x041C", "N=0x041D", "O=0x041E", "P=0x041F", "R=0x0420", "S=0x0421", "T=0x0422", "U=0x0423", "F=0x0424", "H=0x0425", "C=0x0426", "~=0x0427", "{=0x0428", "}=0x0429", "Y=0x042A", // HARD SIGN "X=0x042C", // SOFT SIGN "|=0x042E", "Q=0x042F", "a=0x0430", "b=0x0431", "w=0x0432", "g=0x0433", "d=0x0434", "e=0x0435", "v=0x0436", "z=0x0437", "i=0x0438", "j=0x0439", "k=0x043A", "l=0x043B", "m=0x043C", "n=0x043D", "o=0x043E", "p=0x043F", "r=0x0440", "s=0x0441", "t=0x0442", "u=0x0443", "f=0x0444", "h=0x0445", "c=0x0446", "`=0x0447", "[=0x0448", "]=0x0449", "y=0x044A", // HARD SIGN "x=0x044C", // SOFT SIGN "\\=0x044E", "q=0x044F", ./mytool/kmap/Dakelh.kmap0000644000175000017500000002400607711455312015361 0ustar henrichhenrich// // Carrier Syllabic keymap // // Bill Poser // http://www.cis.upenn.edu/~wjposer // 2003/07/29 // // Version 1.2 // // This keymap maps sequences of keystrokes onto the Unicode codes for // the Carrier Syllabics (dulkw'ahke). // // Note that the keystroke sequences used here do not correspond to the // character names used in the Unified Canadian Aboriginal Syllabics section // of the Unicode standard, for two reasons. First, the names used in the // Unicode standard are based in part on non-Carrier usage and in some // cases would be confusing or strange for Carrier people. Second, this // mapping is intended to facilitate the typing of syllabics by people // familiar with the Carrier Linguistic Committee writing system, which is // the writing system most widely used by Carrier speakers. // // The key chords are identical to the CLC spelling except that the fronted // consonants (lamino-dentals) are written with the underscore preceding // them (e.g. _s for fronted s). So as to speed up typing and make automatic // conversion of text possible, provision is made for the two possible // roman spellings of the fronted consonants _ts, _dz, and _ts' // and _t_s, _d_z, and _t_s' even though there are no distinct symbols for them. // // See http://ydli.org/dakinfo/dulktop.htm for more information on this writing system. // // The CASEC/Unicode encoding does not provide the two distinct forms of // isolated /s/ so they are mapped onto the same Unicode code. // // Change log: // 1.1 - added capital letters for ease of typing by those accustomed // to CLC system and for conversion of CLC text. // 1.2 - added sequences kw'a etc. since this is the usual CLC spelling. // Otherwise it is necessary to write k'wa etc. // //Vowels with no onset consonant "oo=0x1401", "o= 0x1403", "u= 0x1405", "e= 0x1408", "i= 0x1409", "a= 0x140A", // Isolated consonants "k= 0x1420", "g= 0x141F", "k'= 0x1601", "t= 0x142A", "b= 0x15EE", "m= 0x14BC", "n= 0x1423", "ng= 0x14D1",//velar nasal "h= 0x144B", "z= 0x1646", "_z= 0x1647", //lamino-dental [z], written with underscore in CLC. "sh= 0x165A", "s= 0x1506", //apico-alveolar [s], written without underscore in CLC. No symbol. "_s= 0x1506", //lamino-dental [s], written with underscore in CLC. "lh= 0x14A1", "l= 0x144A", "kh= 0x1425", "gh= 0x1426", "'= 0x1427",//glottal stop "r= 0x1429", //CV sequences "da= 0x1455", "de= 0x1453", "di= 0x1454", "do= 0x144E", "doo=0x144C", "du= 0x1450", "ta= 0x15E1", "te= 0x15DF", "ti= 0x15E0", "to= 0x15DD", "tu= 0x15DE", "too=0x15DC", "t'a= 0x15E7", "t'e= 0x15E5", "t'i= 0x15E6", "t'o= 0x15E3", "t'u= 0x15E4", "t'oo=0x15E2", "ga= 0x15F4", "ge= 0x15F2", "gi= 0x15F3", "go= 0x15F0", "goo=0x15EF", "gu= 0x15F1", "ka= 0x15FA", "ke= 0x15F8", "ki= 0x15F9", "ko= 0x15F6", "koo=0x15F5", "ku= 0x15F7", "k'a= 0x1600", "k'e= 0x15FE", "k'i= 0x15FF", "k'o= 0x15FC", "k'oo=0x15FB", "k'u= 0x15FD", "kw'a= 0x1601 0x15d5", "kw'e= 0x1601 0x15d3", "kw'i= 0x1601 0x15d4", "kw'o= 0x1601 0x15d1", "kw'oo=0x1601 0x15d0", "kw'u= 0x1601 0x15d2", "pa= 0x15EE 0x15ED", // This is the old convention for writing /p/. "pe= 0x15EE 0x15EB", "pi= 0x15EE 0x15EC", "po= 0x15EE 0x15E9", "poo=0x15EE 0x15E8", "pu= 0x15EE 0x15EA", "ba= 0x15ED", "be= 0x15EB", "bi= 0x15EC", "bo= 0x15E9", "boo=0x15E8", "bu= 0x15EA", "na= 0x1607", "ne= 0x1605", "ni= 0x1606", "no= 0x1603", "noo=0x1602", "nu= 0x1604", "ma= 0x160D", "me= 0x160B", "mi= 0x160C", "mo= 0x1609", "moo=0x1608", "mu= 0x160A", "la= 0x1627", "le= 0x1625", "li= 0x1626", "lo= 0x1623", "loo=0x1622", "lu= 0x1624", "lha= 0x1633", "lhe= 0x1631", "lhi= 0x1632", "lho= 0x162F", "lhoo=0x162E", "lhu= 0x1630", "dla= 0x162D", "dle= 0x162B", "dli= 0x162C", "dlo= 0x1629", "dloo=0x1628", "dlu= 0x162A", "tla= 0x1639", "tle= 0x1637", "tli= 0x1638", "tlo= 0x1635", "tloo=0x1634", "tlu= 0x1636", "tl'a= 0x163f", "tl'e= 0x163d", "tl'i= 0x163e", "tl'o= 0x163b", "tl'oo=0x163A", "tl'u= 0x163C", "kha= 0x15C9", "khe= 0x15C7", "khi= 0x15C8", "kho= 0x15C5", "khoo=0x15C4", "khu= 0x15C6", "gha= 0x15cf", "ghe= 0x15cd", "ghi= 0x15ce", "gho= 0x15cb", "ghoo=0x15ca", "ghu= 0x15cc", "wa= 0x15d5", "we= 0x15d3", "wi= 0x15d4", "wo= 0x15d1", "woo=0x15d0", "wu= 0x15d2", "wha= 0x15DB", "whe= 0x15d9", "whi= 0x15dA", "who= 0x15d7", "whoo=0x15d6", "whu= 0x15d8", "yoo=0x160E", "yo= 0x160F", "yu= 0x1610", "ye= 0x1611", "yi= 0x1612", "ya= 0x1613", "joo=0x1614", "jo= 0x1616", "ju= 0x1617", "je= 0x1618", "ji= 0x1619", "ja= 0x161B", "ch'oo=0x161C", "ch'o= 0x161D", "ch'u= 0x161E", "ch'e= 0x161F", "ch'i= 0x1620", "ch'a= 0x1621", "zoo=0x1640", "zo= 0x1641", "zu= 0x1642", "ze= 0x1643", "zi= 0x1644", "za= 0x1645", "soo=0x164E", "so= 0x164F", "su= 0x1650", "se= 0x1651", "si= 0x1652", "sa= 0x1653", "shoo=0x1654", "sho= 0x1655", "shu= 0x1656", "she= 0x1657", "shi= 0x1658", "sha= 0x1659", "choo=0x165B", "cho= 0x165C", "chu= 0x165D", "che= 0x165E", "chi= 0x165F", "cha= 0x1660", "tsoo=0x1661", "tso= 0x1662", "tsu= 0x1663", "tse= 0x1664", "tsi= 0x1665", "tsa= 0x1666", "dzoo=0x1648", "dzo= 0x1649", "dzu= 0x164A", "dze= 0x164B", "dzi= 0x164C", "dza= 0x164D", "ts'oo=0x1667", "ts'o= 0x1668", "ts'u= 0x1669", "ts'e= 0x166A", "ts'i= 0x166B", "ts'a= 0x166C", "_tsoo=0x1661", "_tso= 0x1662", "_tsu= 0x1663", "_tse= 0x1664", "_tsi= 0x1665", "_tsa= 0x1666", "_dzoo=0x1648", "_dzo= 0x1649", "_dzu= 0x164A", "_dze= 0x164B", "_dzi= 0x164C", "_dza= 0x164D", "_ts'oo=0x1667", "_ts'o= 0x1668", "_ts'u= 0x1669", "_ts'e= 0x166A", "_ts'i= 0x166B", "_ts'a= 0x166C", "_t_soo=0x1661", "_t_so= 0x1662", "_t_su= 0x1663", "_t_se= 0x1664", "_t_si= 0x1665", "_t_sa= 0x1666", "_d_zoo=0x1648", "_d_zo= 0x1649", "_d_zu= 0x164A", "_d_ze= 0x164B", "_d_zi= 0x164C", "_d_za= 0x164D", "_t_s'oo=0x1667", "_t_s'o= 0x1668", "_t_s'u= 0x1669", "_t_s'e= 0x166A", "_t_s'i= 0x166B", "_t_s'a= 0x166C", "hoo=0x142F", "ho= 0x1431", "hu= 0x1433", "he= 0x1436", "hi= 0x1437", "ha= 0x1438", "roo=0x0072 0x1401",// Used in loan words "ro = 0x0072 0x1403", "ru = 0x0072 0x1405", "re = 0x0072 0x1408", "ri = 0x0072 0x1409", "ra = 0x0072 0x140A", //Capitals - mapped onto same codes as lower case "Oo=0x1401", "O= 0x1403", "U= 0x1405", "E= 0x1408", "I= 0x1409", "A= 0x140A", // Isolated consonants "K= 0x1420", "G= 0x141F", "K'= 0x1601", "T= 0x142A", "B= 0x15EE", "M= 0x14BC", "N= 0x1423", "Ng= 0x14D1",//velar nasal "H= 0x144B", "Z=0x1646", "_Z= 0x1647", //lamino-dental [z], written with underscore in CLC. "Sh= 0x165A", "S= 0x1506", //apico-alveolar [s], written without underscore in CLC. No symbol. "_S= 0x1506", //lamino-dental [s], written with underscore in CLC. "Lh= 0x14A1", "L= 0x144A", "Kh= 0x1425", "Gh= 0x1426", "R= 0x1429", //CV sequences "Da= 0x1455", "De= 0x1453", "Di= 0x1454", "Do= 0x144E", "Doo=0x144C", "Du= 0x1450", "Ta= 0x15E1", "Te= 0x15DF", "Ti= 0x15E0", "To= 0x15DD", "Tu= 0x15DE", "Too=0x15DC", "T'a= 0x15E7", "T'e= 0x15E5", "T'i= 0x15E6", "T'o= 0x15E3", "T'u= 0x15E4", "T'oo=0x15E2", "Ga= 0x15F4", "Ge= 0x15F2", "Gi= 0x15F3", "Go= 0x15F0", "Goo=0x15EF", "Gu= 0x15F1", "Ka= 0x15FA", "Ke= 0x15F8", "Ki= 0x15F9", "Ko= 0x15F6", "Koo=0x15F5", "Ku= 0x15F7", "K'a= 0x1600", "K'e= 0x15FE", "K'i= 0x15FF", "K'o= 0x15FC", "K'oo=0x15FB", "K'u= 0x15FD", "Kw'a= 0x1601 0x15d5", "Kw'e= 0x1601 0x15d3", "Kw'i= 0x1601 0x15d4", "Kw'o= 0x1601 0x15d1", "Kw'oo=0x1601 0x15d0", "Kw'u= 0x1601 0x15d2", "Pa= 0x15EE 0x15ED", // This is the olD convention for writing /p/. "Pe= 0x15EE 0x15EB", "Pi= 0x15EE 0x15EC", "Po= 0x15EE 0x15E9", "Poo=0x15EE 0x15E8", "Pu= 0x15EE 0x15EA", "Ba= 0x15ED", "Be= 0x15EB", "Bi= 0x15EC", "Bo= 0x15E9", "Boo=0x15E8", "Bu= 0x15EA", "Na= 0x1607", "Ne= 0x1605", "Ni= 0x1606", "No= 0x1603", "Noo=0x1602", "Nu= 0x1604", "Ma= 0x160D", "Me= 0x160B", "Mi= 0x160C", "Mo= 0x1609", "Moo=0x1608", "Mu= 0x160A", "La= 0x1627", "Le= 0x1625", "Li= 0x1626", "Lo= 0x1623", "Loo=0x1622", "Lu= 0x1624", "Lha= 0x1633", "Lhe= 0x1631", "Lhi= 0x1632", "Lho= 0x162F", "Lhoo=0x162E", "Lhu= 0x1630", "Dla= 0x162D", "Dle= 0x162B", "Dli= 0x162C", "Dlo= 0x1629", "Dloo=0x1628", "Dlu= 0x162A", "Tla= 0x1639", "Tle= 0x1637", "Tli= 0x1638", "Tlo= 0x1635", "Tloo=0x1634", "Tlu= 0x1636", "Tl'a= 0x163f", "Tl'e= 0x163D", "Tl'i= 0x163e", "Tl'o= 0x163b", "Tl'oo=0x163A", "Tl'u= 0x163C", "Kha= 0x15C9", "Khe= 0x15C7", "Khi= 0x15C8", "Kho= 0x15C5", "Khoo=0x15C4", "Khu= 0x15C6", "Gha= 0x15cf", "Ghe= 0x15cD", "Ghi= 0x15ce", "Gho= 0x15cb", "Ghoo=0x15ca", "Ghu= 0x15cc", "Wa= 0x15D5", "We= 0x15D3", "Wi= 0x15D4", "Wo= 0x15D1", "Woo=0x15D0", "Wu= 0x15D2", "Wha= 0x15DB", "Whe= 0x15D9", "Whi= 0x15DA", "Who= 0x15D7", "Whoo=0x15D6", "Whu= 0x15D8", "Yoo=0x160E", "Yo= 0x160F", "Yu= 0x1610", "Ye= 0x1611", "Yi= 0x1612", "Ya= 0x1613", "Joo=0x1614", "Jo= 0x1616", "Ju= 0x1617", "Je= 0x1618", "Ji= 0x1619", "Ja= 0x161B", "Ch'oo=0x161C", "Ch'o= 0x161D", "Ch'u= 0x161E", "Ch'e= 0x161F", "Ch'i= 0x1620", "Ch'a= 0x1621", "Zoo=0x1640", "Zo= 0x1641", "Zu= 0x1642", "Ze= 0x1643", "Zi= 0x1644", "Za= 0x1645", "Soo=0x164E", "So= 0x164F", "Su= 0x1650", "Se= 0x1651", "Si= 0x1652", "Sa= 0x1653", "Shoo=0x1654", "Sho= 0x1655", "Shu= 0x1656", "She= 0x1657", "Shi= 0x1658", "Sha= 0x1659", "Choo=0x165B", "Cho= 0x165C", "Chu= 0x165D", "Che= 0x165E", "Chi= 0x165F", "Cha= 0x1660", "Tsoo=0x1661", "Tso= 0x1662", "Tsu= 0x1663", "Tse= 0x1664", "Tsi= 0x1665", "Tsa= 0x1666", "Dzoo=0x1648", "Dzo= 0x1649", "Dzu= 0x164A", "Dze= 0x164B", "Dzi= 0x164C", "Dza= 0x164D", "Ts'oo=0x1667", "Ts'o= 0x1668", "Ts'u= 0x1669", "Ts'e= 0x166A", "Ts'i= 0x166B", "Ts'a= 0x166C", "_Tsoo=0x1661", "_Tso= 0x1662", "_Tsu= 0x1663", "_Tse= 0x1664", "_Tsi= 0x1665", "_Tsa= 0x1666", "_Dzoo=0x1648", "_Dzo= 0x1649", "_Dzu= 0x164A", "_Dze= 0x164B", "_Dzi= 0x164C", "_Dza= 0x164D", "_Ts'oo=0x1667", "_Ts'o= 0x1668", "_Ts'u= 0x1669", "_Ts'e= 0x166A", "_Ts'i= 0x166B", "_Ts'a= 0x166C", "_T_soo=0x1661", "_T_so= 0x1662", "_T_su= 0x1663", "_T_se= 0x1664", "_T_si= 0x1665", "_T_sa= 0x1666", "_D_zoo=0x1648", "_D_zo= 0x1649", "_D_zu= 0x164A", "_D_ze= 0x164B", "_D_zi= 0x164C", "_D_za= 0x164D", "_T_s'oo=0x1667", "_T_s'o= 0x1668", "_T_s'u= 0x1669", "_T_s'e= 0x166A", "_T_s'i= 0x166B", "_T_s'a= 0x166C", "Hoo=0x142F", "Ho= 0x1431", "Hu= 0x1433", "He= 0x1436", "Hi= 0x1437", "Ha= 0x1438", "Roo=0x0072 0x1401", "Ro = 0x0072 0x1403", "Ru = 0x0072 0x1405", "Re = 0x0072 0x1408", "Ri = 0x0072 0x1409", "Ra = 0x0072 0x140A" ./mytool/kmap/ArabicKeyboard.kmap0000644000175000017500000000547107606675564017060 0ustar henrichhenrich// Arabic.kmap for Yudit by Mohammed Elzubeir // 2001-12-17 Arabeyes // Commented back E= - gaspar // The alphabet ‮ ‬(‮)الحروف الأبجدية‬ "q=0x0636", // dad (ض) "w=0x0635", // sad (ص) "e=0x062b", // theh (ث) "r=0x0642", // qaf (ق) "t=0x0641", // feh (ف) "y=0x063a", // ghain (غ) "u=0x0639", // ain (ع) "i=0x0647", // heh (ه) "o=0x062e", // khah (خ) "p=0x062d", // hah (ح) "[=0x062c", // jeem (ج) "]=0x062f", // dal (د) "a=0x0634", // sheen (ش) "s=0x0633", // seen (س) "d=0x064a", // yeh (ي) "f=0x0628", // beh (ب) "g=0x0644", // lam (ل) "h=0x0627", // alef (ا) "j=0x062a", // teh (ت) "k=0x0646", // noon (ن) "l=0x0645", // meem (م) ";=0x0643", // kaf (ك) "'=0x0637", // tah (ط) "z=0x0626", // yeh with hamza above (ئ) "x=0x0621", // Hamza (ء) "c=0x0624", // waw with hamza above (ؤ) "v=0x0631", // reh (ر) "b=0x0644 0x0627", // lam alef (لا) "n=0x0649", // alef maksura (ى) "m=0x0629", // teh marbuta (ة) ",=0x0648", // waw (و) ".=0x0632", // zain (ز) "/=0x0638", // zah (ظ) "`=0x0630", // thal (ذ) // Tashkeel (‮التشكيل‬) "~=0x0651", // shadda ( ّ ) "Q=0x064e", // fatha ( َ ) "W=0x064b", // fatahtan (ً) "E=0x064f", // damma - was commented out. why? - gaspar "R=0x064c", // dammatan (ٌ) "T=0x0644 0x0625", // laa (alef lam) with hamza below (لإ) "Y=0x0625", // alef with hamza below (إ) "A=0x0650", // kasra (ِ) "S=0x064d", // kasratan (ٍ) "D=0x005b", // [ "F=0x005d", // ] "G=0x0644 0x0623", // laa (alef lam) with hamza above (لأ) "H=0x0623", // alef with hamza above (أ) "J=0x0640", // tatweel (ـ) "X=0x0652", // sukun (ْ) "C=0x007b", // { "V=0x007d", // } "B=0x0644 0x0622", // laa (alef lam) with madda above (لآ) "N=0x0622", // alef with madda (آ) "Z=0x007e", // ~ // punctuation "<=0x002c", // decimal (٫) ">=0x002e" , // period "P=0x061b", // semi-colon (؛) "K=0x060c", // comma (،) "?=0x061f", // question mark (؟) "L=0x2f", // forward slash (/) "0x30=0x0660", // 0 (٠) "0x31=0x0661", // 1 (١) "0x32=0x0662", // 2 (٢) "0x33=0x0663", // 3 (٣) "0x34=0x0664", // 4 (٤) "0x35=0x0665", // 5 (٥) "0x36=0x0666", // 6 (٦) "0x37=0x0667", // 7 (٧) "0x38=0x0668", // 8 (٨) "0x39=0x0669", // 9 (٩) "%=0x066a", // percent (٪) ./mytool/kmap/Devanagari.kmap0000644000175000017500000007346007532460064016243 0ustar henrichhenrich// Devanagari kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-01-20 // Consonant + vowel/virama ".D=0x095c 0x094d", ".D.h=0x095c 0x094d 0x200c", ".DA=0x095c 0x093e", ".DA.c=0x095c 0x0949", ".DI=0x095c 0x0940", ".DLLI=0x095c 0x0963", ".DLLi=0x095c 0x0962", ".DL^I=0x095c 0x0963", ".DL^i=0x095c 0x0962", ".DRRI=0x095c 0x0944", ".DRRi=0x095c 0x0943", ".DR^I=0x095c 0x0944", ".DR^i=0x095c 0x0943", ".DU=0x095c 0x0942", ".Da=0x095c", ".Daa=0x095c 0x093e", ".Daa.c=0x095c 0x0949", ".Dai=0x095c 0x0948", ".Dau=0x095c 0x094c", ".De=0x095c 0x0947", ".Di=0x095c 0x093f", ".Dii=0x095c 0x0940", ".Do=0x095c 0x094b", ".Du=0x095c 0x0941", ".Duu=0x095c 0x0942", ".Dh=0x095d 0x094d", ".Dh.h=0x095d 0x094d 0x200c", ".DhA=0x095d 0x093e", ".DhA.c=0x095d 0x0949", ".DhI=0x095d 0x0940", ".DhLLI=0x095d 0x0963", ".DhLLi=0x095d 0x0962", ".DhL^I=0x095d 0x0963", ".DhL^i=0x095d 0x0962", ".DhRRI=0x095d 0x0944", ".DhRRi=0x095d 0x0943", ".DhR^I=0x095d 0x0944", ".DhR^i=0x095d 0x0943", ".DhU=0x095d 0x0942", ".Dha=0x095d", ".Dhaa=0x095d 0x093e", ".Dhaa.c=0x095d 0x0949", ".Dhai=0x095d 0x0948", ".Dhau=0x095d 0x094c", ".Dhe=0x095d 0x0947", ".Dhi=0x095d 0x093f", ".Dhii=0x095d 0x0940", ".Dho=0x095d 0x094b", ".Dhu=0x095d 0x0941", ".Dhuu=0x095d 0x0942", "Ch=0x091b 0x094d", "Ch.h=0x091b 0x094d 0x200c", "ChA=0x091b 0x093e", "ChA.c=0x091b 0x0949", "ChI=0x091b 0x0940", "ChLLI=0x091b 0x0963", "ChLLi=0x091b 0x0962", "ChL^I=0x091b 0x0963", "ChL^i=0x091b 0x0962", "ChRRI=0x091b 0x0944", "ChRRi=0x091b 0x0943", "ChR^I=0x091b 0x0944", "ChR^i=0x091b 0x0943", "ChU=0x091b 0x0942", "Cha=0x091b", "Chaa=0x091b 0x093e", "Chaa.c=0x091b 0x0949", "Chai=0x091b 0x0948", "Chau=0x091b 0x094c", "Che=0x091b 0x0947", "Chi=0x091b 0x093f", "Chii=0x091b 0x0940", "Cho=0x091b 0x094b", "Chu=0x091b 0x0941", "Chuu=0x091b 0x0942", "D=0x0921 0x094d", "D.h=0x0921 0x094d 0x200c", "DA=0x0921 0x093e", "DA.c=0x0921 0x0949", "DI=0x0921 0x0940", "DLLI=0x0921 0x0963", "DLLi=0x0921 0x0962", "DL^I=0x0921 0x0963", "DL^i=0x0921 0x0962", "DRRI=0x0921 0x0944", "DRRi=0x0921 0x0943", "DR^I=0x0921 0x0944", "DR^i=0x0921 0x0943", "DU=0x0921 0x0942", "Da=0x0921", "Daa=0x0921 0x093e", "Daa.c=0x0921 0x0949", "Dai=0x0921 0x0948", "Dau=0x0921 0x094c", "De=0x0921 0x0947", "Di=0x0921 0x093f", "Dii=0x0921 0x0940", "Do=0x0921 0x094b", "Du=0x0921 0x0941", "Duu=0x0921 0x0942", "Dh=0x0922 0x094d", "Dh.h=0x0922 0x094d 0x200c", "DhA=0x0922 0x093e", "DhA.c=0x0922 0x0949", "DhI=0x0922 0x0940", "DhLLI=0x0922 0x0963", "DhLLi=0x0922 0x0962", "DhL^I=0x0922 0x0963", "DhL^i=0x0922 0x0962", "DhRRI=0x0922 0x0944", "DhRRi=0x0922 0x0943", "DhR^I=0x0922 0x0944", "DhR^i=0x0922 0x0943", "DhU=0x0922 0x0942", "Dha=0x0922", "Dhaa=0x0922 0x093e", "Dhaa.c=0x0922 0x0949", "Dhai=0x0922 0x0948", "Dhau=0x0922 0x094c", "Dhe=0x0922 0x0947", "Dhi=0x0922 0x093f", "Dhii=0x0922 0x0940", "Dho=0x0922 0x094b", "Dhu=0x0922 0x0941", "Dhuu=0x0922 0x0942", "G=0x095a 0x094d", "G.h=0x095a 0x094d 0x200c", "GA=0x095a 0x093e", "GA.c=0x095a 0x0949", "GI=0x095a 0x0940", "GLLI=0x095a 0x0963", "GLLi=0x095a 0x0962", "GL^I=0x095a 0x0963", "GL^i=0x095a 0x0962", "GRRI=0x095a 0x0944", "GRRi=0x095a 0x0943", "GR^I=0x095a 0x0944", "GR^i=0x095a 0x0943", "GU=0x095a 0x0942", "Ga=0x095a", "Gaa=0x095a 0x093e", "Gaa.c=0x095a 0x0949", "Gai=0x095a 0x0948", "Gau=0x095a 0x094c", "Ge=0x095a 0x0947", "Gi=0x095a 0x093f", "Gii=0x095a 0x0940", "Go=0x095a 0x094b", "Gu=0x095a 0x0941", "Guu=0x095a 0x0942", "GY=0x091c 0x094d 0x091e 0x094d", "GY.h=0x091c 0x094d 0x091e 0x094d 0x200c", "GYA=0x091c 0x094d 0x091e 0x093e", "GYA.c=0x091c 0x094d 0x091e 0x0949", "GYI=0x091c 0x094d 0x091e 0x0940", "GYLLI=0x091c 0x094d 0x091e 0x0963", "GYLLi=0x091c 0x094d 0x091e 0x0962", "GYL^I=0x091c 0x094d 0x091e 0x0963", "GYL^i=0x091c 0x094d 0x091e 0x0962", "GYRRI=0x091c 0x094d 0x091e 0x0944", "GYRRi=0x091c 0x094d 0x091e 0x0943", "GYR^I=0x091c 0x094d 0x091e 0x0944", "GYR^i=0x091c 0x094d 0x091e 0x0943", "GYU=0x091c 0x094d 0x091e 0x0942", "GYa=0x091c 0x094d 0x091e", "GYaa=0x091c 0x094d 0x091e 0x093e", "GYaa.c=0x091c 0x094d 0x091e 0x0949", "GYai=0x091c 0x094d 0x091e 0x0948", "GYau=0x091c 0x094d 0x091e 0x094c", "GYe=0x091c 0x094d 0x091e 0x0947", "GYi=0x091c 0x094d 0x091e 0x093f", "GYii=0x091c 0x094d 0x091e 0x0940", "GYo=0x091c 0x094d 0x091e 0x094b", "GYu=0x091c 0x094d 0x091e 0x0941", "GYuu=0x091c 0x094d 0x091e 0x0942", "J=0x095b 0x094d", "J.h=0x095b 0x094d 0x200c", "JA=0x095b 0x093e", "JA.c=0x095b 0x0949", "JI=0x095b 0x0940", "JLLI=0x095b 0x0963", "JLLi=0x095b 0x0962", "JL^I=0x095b 0x0963", "JL^i=0x095b 0x0962", "JRRI=0x095b 0x0944", "JRRi=0x095b 0x0943", "JR^I=0x095b 0x0944", "JR^i=0x095b 0x0943", "JU=0x095b 0x0942", "Ja=0x095b", "Jaa=0x095b 0x093e", "Jaa.c=0x095b 0x0949", "Jai=0x095b 0x0948", "Jau=0x095b 0x094c", "Je=0x095b 0x0947", "Ji=0x095b 0x093f", "Jii=0x095b 0x0940", "Jo=0x095b 0x094b", "Ju=0x095b 0x0941", "Juu=0x095b 0x0942", "JN=0x091e 0x094d", "JN.h=0x091e 0x094d 0x200c", "JNA=0x091e 0x093e", "JNA.c=0x091e 0x0949", "JNI=0x091e 0x0940", "JNLLI=0x091e 0x0963", "JNLLi=0x091e 0x0962", "JNL^I=0x091e 0x0963", "JNL^i=0x091e 0x0962", "JNRRI=0x091e 0x0944", "JNRRi=0x091e 0x0943", "JNR^I=0x091e 0x0944", "JNR^i=0x091e 0x0943", "JNU=0x091e 0x0942", "JNa=0x091e", "JNaa=0x091e 0x093e", "JNaa.c=0x091e 0x0949", "JNai=0x091e 0x0948", "JNau=0x091e 0x094c", "JNe=0x091e 0x0947", "JNi=0x091e 0x093f", "JNii=0x091e 0x0940", "JNo=0x091e 0x094b", "JNu=0x091e 0x0941", "JNuu=0x091e 0x0942", "K=0x0959 0x094d", "K.h=0x0959 0x094d 0x200c", "KA=0x0959 0x093e", "KA.c=0x0959 0x0949", "KI=0x0959 0x0940", "KLLI=0x0959 0x0963", "KLLi=0x0959 0x0962", "KL^I=0x0959 0x0963", "KL^i=0x0959 0x0962", "KRRI=0x0959 0x0944", "KRRi=0x0959 0x0943", "KR^I=0x0959 0x0944", "KR^i=0x0959 0x0943", "KU=0x0959 0x0942", "Ka=0x0959", "Kaa=0x0959 0x093e", "Kaa.c=0x0959 0x0949", "Kai=0x0959 0x0948", "Kau=0x0959 0x094c", "Ke=0x0959 0x0947", "Ki=0x0959 0x093f", "Kii=0x0959 0x0940", "Ko=0x0959 0x094b", "Ku=0x0959 0x0941", "Kuu=0x0959 0x0942", "L=0x0933 0x094d", "L.h=0x0933 0x094d 0x200c", "LA=0x0933 0x093e", "LA.c=0x0933 0x0949", "LI=0x0933 0x0940", "LLLI=0x0933 0x0963", "LLLi=0x0933 0x0962", "LL^I=0x0933 0x0963", "LL^i=0x0933 0x0962", "LRRI=0x0933 0x0944", "LRRi=0x0933 0x0943", "LR^I=0x0933 0x0944", "LR^i=0x0933 0x0943", "LU=0x0933 0x0942", "La=0x0933", "Laa=0x0933 0x093e", "Laa.c=0x0933 0x0949", "Lai=0x0933 0x0948", "Lau=0x0933 0x094c", "Le=0x0933 0x0947", "Li=0x0933 0x093f", "Lii=0x0933 0x0940", "Lo=0x0933 0x094b", "Lu=0x0933 0x0941", "Luu=0x0933 0x0942", "N=0x0923 0x094d", "N.h=0x0923 0x094d 0x200c", "NA=0x0923 0x093e", "NA.c=0x0923 0x0949", "NI=0x0923 0x0940", "NLLI=0x0923 0x0963", "NLLi=0x0923 0x0962", "NL^I=0x0923 0x0963", "NL^i=0x0923 0x0962", "NRRI=0x0923 0x0944", "NRRi=0x0923 0x0943", "NR^I=0x0923 0x0944", "NR^i=0x0923 0x0943", "NU=0x0923 0x0942", "Na=0x0923", "Naa=0x0923 0x093e", "Naa.c=0x0923 0x0949", "Nai=0x0923 0x0948", "Nau=0x0923 0x094c", "Ne=0x0923 0x0947", "Ni=0x0923 0x093f", "Nii=0x0923 0x0940", "No=0x0923 0x094b", "Nu=0x0923 0x0941", "Nuu=0x0923 0x0942", "N^=0x0919 0x094d", "N^.h=0x0919 0x094d 0x200c", "N^A=0x0919 0x093e", "N^A.c=0x0919 0x0949", "N^I=0x0919 0x0940", "N^LLI=0x0919 0x0963", "N^LLi=0x0919 0x0962", "N^L^I=0x0919 0x0963", "N^L^i=0x0919 0x0962", "N^RRI=0x0919 0x0944", "N^RRi=0x0919 0x0943", "N^R^I=0x0919 0x0944", "N^R^i=0x0919 0x0943", "N^U=0x0919 0x0942", "N^a=0x0919", "N^aa=0x0919 0x093e", "N^aa.c=0x0919 0x0949", "N^ai=0x0919 0x0948", "N^au=0x0919 0x094c", "N^e=0x0919 0x0947", "N^i=0x0919 0x093f", "N^ii=0x0919 0x0940", "N^o=0x0919 0x094b", "N^u=0x0919 0x0941", "N^uu=0x0919 0x0942", "Sh=0x0937 0x094d", "Sh.h=0x0937 0x094d 0x200c", "ShA=0x0937 0x093e", "ShA.c=0x0937 0x0949", "ShI=0x0937 0x0940", "ShLLI=0x0937 0x0963", "ShLLi=0x0937 0x0962", "ShL^I=0x0937 0x0963", "ShL^i=0x0937 0x0962", "ShRRI=0x0937 0x0944", "ShRRi=0x0937 0x0943", "ShR^I=0x0937 0x0944", "ShR^i=0x0937 0x0943", "ShU=0x0937 0x0942", "Sha=0x0937", "Shaa=0x0937 0x093e", "Shaa.c=0x0937 0x0949", "Shai=0x0937 0x0948", "Shau=0x0937 0x094c", "She=0x0937 0x0947", "Shi=0x0937 0x093f", "Shii=0x0937 0x0940", "Sho=0x0937 0x094b", "Shu=0x0937 0x0941", "Shuu=0x0937 0x0942", "T=0x091f 0x094d", "T.h=0x091f 0x094d 0x200c", "TA=0x091f 0x093e", "TA.c=0x091f 0x0949", "TI=0x091f 0x0940", "TLLI=0x091f 0x0963", "TLLi=0x091f 0x0962", "TL^I=0x091f 0x0963", "TL^i=0x091f 0x0962", "TRRI=0x091f 0x0944", "TRRi=0x091f 0x0943", "TR^I=0x091f 0x0944", "TR^i=0x091f 0x0943", "TU=0x091f 0x0942", "Ta=0x091f", "Taa=0x091f 0x093e", "Taa.c=0x091f 0x0949", "Tai=0x091f 0x0948", "Tau=0x091f 0x094c", "Te=0x091f 0x0947", "Ti=0x091f 0x093f", "Tii=0x091f 0x0940", "To=0x091f 0x094b", "Tu=0x091f 0x0941", "Tuu=0x091f 0x0942", "Th=0x0920 0x094d", "Th.h=0x0920 0x094d 0x200c", "ThA=0x0920 0x093e", "ThA.c=0x0920 0x0949", "ThI=0x0920 0x0940", "ThLLI=0x0920 0x0963", "ThLLi=0x0920 0x0962", "ThL^I=0x0920 0x0963", "ThL^i=0x0920 0x0962", "ThRRI=0x0920 0x0944", "ThRRi=0x0920 0x0943", "ThR^I=0x0920 0x0944", "ThR^i=0x0920 0x0943", "ThU=0x0920 0x0942", "Tha=0x0920", "Thaa=0x0920 0x093e", "Thaa.c=0x0920 0x0949", "Thai=0x0920 0x0948", "Thau=0x0920 0x094c", "The=0x0920 0x0947", "Thi=0x0920 0x093f", "Thii=0x0920 0x0940", "Tho=0x0920 0x094b", "Thu=0x0920 0x0941", "Thuu=0x0920 0x0942", "Y=0x095f 0x094d", "Y.h=0x095f 0x094d 0x200c", "YA=0x095f 0x093e", "YA.c=0x095f 0x0949", "YI=0x095f 0x0940", "YLLI=0x095f 0x0963", "YLLi=0x095f 0x0962", "YL^I=0x095f 0x0963", "YL^i=0x095f 0x0962", "YRRI=0x095f 0x0944", "YRRi=0x095f 0x0943", "YR^I=0x095f 0x0944", "YR^i=0x095f 0x0943", "YU=0x095f 0x0942", "Ya=0x095f", "Yaa=0x095f 0x093e", "Yaa.c=0x095f 0x0949", "Yai=0x095f 0x0948", "Yau=0x095f 0x094c", "Ye=0x095f 0x0947", "Yi=0x095f 0x093f", "Yii=0x095f 0x0940", "Yo=0x095f 0x094b", "Yu=0x095f 0x0941", "Yuu=0x095f 0x0942", "b=0x092c 0x094d", "b.h=0x092c 0x094d 0x200c", "bA=0x092c 0x093e", "bA.c=0x092c 0x0949", "bI=0x092c 0x0940", "bLLI=0x092c 0x0963", "bLLi=0x092c 0x0962", "bL^I=0x092c 0x0963", "bL^i=0x092c 0x0962", "bRRI=0x092c 0x0944", "bRRi=0x092c 0x0943", "bR^I=0x092c 0x0944", "bR^i=0x092c 0x0943", "bU=0x092c 0x0942", "ba=0x092c", "baa=0x092c 0x093e", "baa.c=0x092c 0x0949", "bai=0x092c 0x0948", "bau=0x092c 0x094c", "be=0x092c 0x0947", "bi=0x092c 0x093f", "bii=0x092c 0x0940", "bo=0x092c 0x094b", "bu=0x092c 0x0941", "buu=0x092c 0x0942", "bh=0x092d 0x094d", "bh.h=0x092d 0x094d 0x200c", "bhA=0x092d 0x093e", "bhA.c=0x092d 0x0949", "bhI=0x092d 0x0940", "bhLLI=0x092d 0x0963", "bhLLi=0x092d 0x0962", "bhL^I=0x092d 0x0963", "bhL^i=0x092d 0x0962", "bhRRI=0x092d 0x0944", "bhRRi=0x092d 0x0943", "bhR^I=0x092d 0x0944", "bhR^i=0x092d 0x0943", "bhU=0x092d 0x0942", "bha=0x092d", "bhaa=0x092d 0x093e", "bhaa.c=0x092d 0x0949", "bhai=0x092d 0x0948", "bhau=0x092d 0x094c", "bhe=0x092d 0x0947", "bhi=0x092d 0x093f", "bhii=0x092d 0x0940", "bho=0x092d 0x094b", "bhu=0x092d 0x0941", "bhuu=0x092d 0x0942", "c=0x091a 0x094d", "c.h=0x091a 0x094d 0x200c", "cA=0x091a 0x093e", "cA.c=0x091a 0x0949", "cI=0x091a 0x0940", "cLLI=0x091a 0x0963", "cLLi=0x091a 0x0962", "cL^I=0x091a 0x0963", "cL^i=0x091a 0x0962", "cRRI=0x091a 0x0944", "cRRi=0x091a 0x0943", "cR^I=0x091a 0x0944", "cR^i=0x091a 0x0943", "cU=0x091a 0x0942", "ca=0x091a", "caa=0x091a 0x093e", "caa.c=0x091a 0x0949", "cai=0x091a 0x0948", "cau=0x091a 0x094c", "ce=0x091a 0x0947", "ci=0x091a 0x093f", "cii=0x091a 0x0940", "co=0x091a 0x094b", "cu=0x091a 0x0941", "cuu=0x091a 0x0942", "ch=0x091a 0x094d", "ch.h=0x091a 0x094d 0x200c", "chA=0x091a 0x093e", "chA.c=0x091a 0x0949", "chI=0x091a 0x0940", "chLLI=0x091a 0x0963", "chLLi=0x091a 0x0962", "chL^I=0x091a 0x0963", "chL^i=0x091a 0x0962", "chRRI=0x091a 0x0944", "chRRi=0x091a 0x0943", "chR^I=0x091a 0x0944", "chR^i=0x091a 0x0943", "chU=0x091a 0x0942", "cha=0x091a", "chaa=0x091a 0x093e", "chaa.c=0x091a 0x0949", "chai=0x091a 0x0948", "chau=0x091a 0x094c", "che=0x091a 0x0947", "chi=0x091a 0x093f", "chii=0x091a 0x0940", "cho=0x091a 0x094b", "chu=0x091a 0x0941", "chuu=0x091a 0x0942", "chh=0x091b 0x094d", "chh.h=0x091b 0x094d 0x200c", "chhA=0x091b 0x093e", "chhA.c=0x091b 0x0949", "chhI=0x091b 0x0940", "chhLLI=0x091b 0x0963", "chhLLi=0x091b 0x0962", "chhL^I=0x091b 0x0963", "chhL^i=0x091b 0x0962", "chhRRI=0x091b 0x0944", "chhRRi=0x091b 0x0943", "chhR^I=0x091b 0x0944", "chhR^i=0x091b 0x0943", "chhU=0x091b 0x0942", "chha=0x091b", "chhaa=0x091b 0x093e", "chhaa.c=0x091b 0x0949", "chhai=0x091b 0x0948", "chhau=0x091b 0x094c", "chhe=0x091b 0x0947", "chhi=0x091b 0x093f", "chhii=0x091b 0x0940", "chho=0x091b 0x094b", "chhu=0x091b 0x0941", "chhuu=0x091b 0x0942", "d=0x0926 0x094d", "d.h=0x0926 0x094d 0x200c", "dA=0x0926 0x093e", "dA.c=0x0926 0x0949", "dI=0x0926 0x0940", "dLLI=0x0926 0x0963", "dLLi=0x0926 0x0962", "dL^I=0x0926 0x0963", "dL^i=0x0926 0x0962", "dRRI=0x0926 0x0944", "dRRi=0x0926 0x0943", "dR^I=0x0926 0x0944", "dR^i=0x0926 0x0943", "dU=0x0926 0x0942", "da=0x0926", "daa=0x0926 0x093e", "daa.c=0x0926 0x0949", "dai=0x0926 0x0948", "dau=0x0926 0x094c", "de=0x0926 0x0947", "di=0x0926 0x093f", "dii=0x0926 0x0940", "do=0x0926 0x094b", "du=0x0926 0x0941", "duu=0x0926 0x0942", "dh=0x0927 0x094d", "dh.h=0x0927 0x094d 0x200c", "dhA=0x0927 0x093e", "dhA.c=0x0927 0x0949", "dhI=0x0927 0x0940", "dhLLI=0x0927 0x0963", "dhLLi=0x0927 0x0962", "dhL^I=0x0927 0x0963", "dhL^i=0x0927 0x0962", "dhRRI=0x0927 0x0944", "dhRRi=0x0927 0x0943", "dhR^I=0x0927 0x0944", "dhR^i=0x0927 0x0943", "dhU=0x0927 0x0942", "dha=0x0927", "dhaa=0x0927 0x093e", "dhaa.c=0x0927 0x0949", "dhai=0x0927 0x0948", "dhau=0x0927 0x094c", "dhe=0x0927 0x0947", "dhi=0x0927 0x093f", "dhii=0x0927 0x0940", "dho=0x0927 0x094b", "dhu=0x0927 0x0941", "dhuu=0x0927 0x0942", "dny=0x091c 0x094d 0x091e 0x094d", "dny.h=0x091c 0x094d 0x091e 0x094d 0x200c", "dnyA=0x091c 0x094d 0x091e 0x093e", "dnyA.c=0x091c 0x094d 0x091e 0x0949", "dnyI=0x091c 0x094d 0x091e 0x0940", "dnyLLI=0x091c 0x094d 0x091e 0x0963", "dnyLLi=0x091c 0x094d 0x091e 0x0962", "dnyL^I=0x091c 0x094d 0x091e 0x0963", "dnyL^i=0x091c 0x094d 0x091e 0x0962", "dnyRRI=0x091c 0x094d 0x091e 0x0944", "dnyRRi=0x091c 0x094d 0x091e 0x0943", "dnyR^I=0x091c 0x094d 0x091e 0x0944", "dnyR^i=0x091c 0x094d 0x091e 0x0943", "dnyU=0x091c 0x094d 0x091e 0x0942", "dnya=0x091c 0x094d 0x091e", "dnyaa=0x091c 0x094d 0x091e 0x093e", "dnyaa.c=0x091c 0x094d 0x091e 0x0949", "dnyai=0x091c 0x094d 0x091e 0x0948", "dnyau=0x091c 0x094d 0x091e 0x094c", "dnye=0x091c 0x094d 0x091e 0x0947", "dnyi=0x091c 0x094d 0x091e 0x093f", "dnyii=0x091c 0x094d 0x091e 0x0940", "dnyo=0x091c 0x094d 0x091e 0x094b", "dnyu=0x091c 0x094d 0x091e 0x0941", "dnyuu=0x091c 0x094d 0x091e 0x0942", "f=0x095e 0x094d", "f.h=0x095e 0x094d 0x200c", "fA=0x095e 0x093e", "fA.c=0x095e 0x0949", "fI=0x095e 0x0940", "fLLI=0x095e 0x0963", "fLLi=0x095e 0x0962", "fL^I=0x095e 0x0963", "fL^i=0x095e 0x0962", "fRRI=0x095e 0x0944", "fRRi=0x095e 0x0943", "fR^I=0x095e 0x0944", "fR^i=0x095e 0x0943", "fU=0x095e 0x0942", "fa=0x095e", "faa=0x095e 0x093e", "faa.c=0x095e 0x0949", "fai=0x095e 0x0948", "fau=0x095e 0x094c", "fe=0x095e 0x0947", "fi=0x095e 0x093f", "fii=0x095e 0x0940", "fo=0x095e 0x094b", "fu=0x095e 0x0941", "fuu=0x095e 0x0942", "g=0x0917 0x094d", "g.h=0x0917 0x094d 0x200c", "gA=0x0917 0x093e", "gA.c=0x0917 0x0949", "gI=0x0917 0x0940", "gLLI=0x0917 0x0963", "gLLi=0x0917 0x0962", "gL^I=0x0917 0x0963", "gL^i=0x0917 0x0962", "gRRI=0x0917 0x0944", "gRRi=0x0917 0x0943", "gR^I=0x0917 0x0944", "gR^i=0x0917 0x0943", "gU=0x0917 0x0942", "ga=0x0917", "gaa=0x0917 0x093e", "gaa.c=0x0917 0x0949", "gai=0x0917 0x0948", "gau=0x0917 0x094c", "ge=0x0917 0x0947", "gi=0x0917 0x093f", "gii=0x0917 0x0940", "go=0x0917 0x094b", "gu=0x0917 0x0941", "guu=0x0917 0x0942", "gh=0x0918 0x094d", "gh.h=0x0918 0x094d 0x200c", "ghA=0x0918 0x093e", "ghA.c=0x0918 0x0949", "ghI=0x0918 0x0940", "ghLLI=0x0918 0x0963", "ghLLi=0x0918 0x0962", "ghL^I=0x0918 0x0963", "ghL^i=0x0918 0x0962", "ghRRI=0x0918 0x0944", "ghRRi=0x0918 0x0943", "ghR^I=0x0918 0x0944", "ghR^i=0x0918 0x0943", "ghU=0x0918 0x0942", "gha=0x0918", "ghaa=0x0918 0x093e", "ghaa.c=0x0918 0x0949", "ghai=0x0918 0x0948", "ghau=0x0918 0x094c", "ghe=0x0918 0x0947", "ghi=0x0918 0x093f", "ghii=0x0918 0x0940", "gho=0x0918 0x094b", "ghu=0x0918 0x0941", "ghuu=0x0918 0x0942", "h=0x0939 0x094d", "h.h=0x0939 0x094d 0x200c", "hA=0x0939 0x093e", "hA.c=0x0939 0x0949", "hI=0x0939 0x0940", "hLLI=0x0939 0x0963", "hLLi=0x0939 0x0962", "hL^I=0x0939 0x0963", "hL^i=0x0939 0x0962", "hRRI=0x0939 0x0944", "hRRi=0x0939 0x0943", "hR^I=0x0939 0x0944", "hR^i=0x0939 0x0943", "hU=0x0939 0x0942", "ha=0x0939", "haa=0x0939 0x093e", "haa.c=0x0939 0x0949", "hai=0x0939 0x0948", "hau=0x0939 0x094c", "he=0x0939 0x0947", "hi=0x0939 0x093f", "hii=0x0939 0x0940", "ho=0x0939 0x094b", "hu=0x0939 0x0941", "huu=0x0939 0x0942", "j=0x091c 0x094d", "j.h=0x091c 0x094d 0x200c", "jA=0x091c 0x093e", "jA.c=0x091c 0x0949", "jI=0x091c 0x0940", "jLLI=0x091c 0x0963", "jLLi=0x091c 0x0962", "jL^I=0x091c 0x0963", "jL^i=0x091c 0x0962", "jRRI=0x091c 0x0944", "jRRi=0x091c 0x0943", "jR^I=0x091c 0x0944", "jR^i=0x091c 0x0943", "jU=0x091c 0x0942", "ja=0x091c", "jaa=0x091c 0x093e", "jaa.c=0x091c 0x0949", "jai=0x091c 0x0948", "jau=0x091c 0x094c", "je=0x091c 0x0947", "ji=0x091c 0x093f", "jii=0x091c 0x0940", "jo=0x091c 0x094b", "ju=0x091c 0x0941", "juu=0x091c 0x0942", "jh=0x091d 0x094d", "jh.h=0x091d 0x094d 0x200c", "jhA=0x091d 0x093e", "jhA.c=0x091d 0x0949", "jhI=0x091d 0x0940", "jhLLI=0x091d 0x0963", "jhLLi=0x091d 0x0962", "jhL^I=0x091d 0x0963", "jhL^i=0x091d 0x0962", "jhRRI=0x091d 0x0944", "jhRRi=0x091d 0x0943", "jhR^I=0x091d 0x0944", "jhR^i=0x091d 0x0943", "jhU=0x091d 0x0942", "jha=0x091d", "jhaa=0x091d 0x093e", "jhaa.c=0x091d 0x0949", "jhai=0x091d 0x0948", "jhau=0x091d 0x094c", "jhe=0x091d 0x0947", "jhi=0x091d 0x093f", "jhii=0x091d 0x0940", "jho=0x091d 0x094b", "jhu=0x091d 0x0941", "jhuu=0x091d 0x0942", "k=0x0915 0x094d", "k.h=0x0915 0x094d 0x200c", "kA=0x0915 0x093e", "kA.c=0x0915 0x0949", "kI=0x0915 0x0940", "kLLI=0x0915 0x0963", "kLLi=0x0915 0x0962", "kL^I=0x0915 0x0963", "kL^i=0x0915 0x0962", "kRRI=0x0915 0x0944", "kRRi=0x0915 0x0943", "kR^I=0x0915 0x0944", "kR^i=0x0915 0x0943", "kU=0x0915 0x0942", "ka=0x0915", "kaa=0x0915 0x093e", "kaa.c=0x0915 0x0949", "kai=0x0915 0x0948", "kau=0x0915 0x094c", "ke=0x0915 0x0947", "ki=0x0915 0x093f", "kii=0x0915 0x0940", "ko=0x0915 0x094b", "ku=0x0915 0x0941", "kuu=0x0915 0x0942", "kh=0x0916 0x094d", "kh.h=0x0916 0x094d 0x200c", "khA=0x0916 0x093e", "khA.c=0x0916 0x0949", "khI=0x0916 0x0940", "khLLI=0x0916 0x0963", "khLLi=0x0916 0x0962", "khL^I=0x0916 0x0963", "khL^i=0x0916 0x0962", "khRRI=0x0916 0x0944", "khRRi=0x0916 0x0943", "khR^I=0x0916 0x0944", "khR^i=0x0916 0x0943", "khU=0x0916 0x0942", "kha=0x0916", "khaa=0x0916 0x093e", "khaa.c=0x0916 0x0949", "khai=0x0916 0x0948", "khau=0x0916 0x094c", "khe=0x0916 0x0947", "khi=0x0916 0x093f", "khii=0x0916 0x0940", "kho=0x0916 0x094b", "khu=0x0916 0x0941", "khuu=0x0916 0x0942", "l=0x0932 0x094d", "l.h=0x0932 0x094d 0x200c", "lA=0x0932 0x093e", "lA.c=0x0932 0x0949", "lI=0x0932 0x0940", "lLLI=0x0932 0x0963", "lLLi=0x0932 0x0962", "lL^I=0x0932 0x0963", "lL^i=0x0932 0x0962", "lRRI=0x0932 0x0944", "lRRi=0x0932 0x0943", "lR^I=0x0932 0x0944", "lR^i=0x0932 0x0943", "lU=0x0932 0x0942", "la=0x0932", "laa=0x0932 0x093e", "laa.c=0x0932 0x0949", "lai=0x0932 0x0948", "lau=0x0932 0x094c", "le=0x0932 0x0947", "li=0x0932 0x093f", "lii=0x0932 0x0940", "lo=0x0932 0x094b", "lu=0x0932 0x0941", "luu=0x0932 0x0942", "ld=0x0933 0x094d", "ld.h=0x0933 0x094d 0x200c", "ldA=0x0933 0x093e", "ldA.c=0x0933 0x0949", "ldI=0x0933 0x0940", "ldLLI=0x0933 0x0963", "ldLLi=0x0933 0x0962", "ldL^I=0x0933 0x0963", "ldL^i=0x0933 0x0962", "ldRRI=0x0933 0x0944", "ldRRi=0x0933 0x0943", "ldR^I=0x0933 0x0944", "ldR^i=0x0933 0x0943", "ldU=0x0933 0x0942", "lda=0x0933", "ldaa=0x0933 0x093e", "ldaa.c=0x0933 0x0949", "ldai=0x0933 0x0948", "ldau=0x0933 0x094c", "lde=0x0933 0x0947", "ldi=0x0933 0x093f", "ldii=0x0933 0x0940", "ldo=0x0933 0x094b", "ldu=0x0933 0x0941", "lduu=0x0933 0x0942", "m=0x092e 0x094d", "m.h=0x092e 0x094d 0x200c", "mA=0x092e 0x093e", "mA.c=0x092e 0x0949", "mI=0x092e 0x0940", "mLLI=0x092e 0x0963", "mLLi=0x092e 0x0962", "mL^I=0x092e 0x0963", "mL^i=0x092e 0x0962", "mRRI=0x092e 0x0944", "mRRi=0x092e 0x0943", "mR^I=0x092e 0x0944", "mR^i=0x092e 0x0943", "mU=0x092e 0x0942", "ma=0x092e", "maa=0x092e 0x093e", "maa.c=0x092e 0x0949", "mai=0x092e 0x0948", "mau=0x092e 0x094c", "me=0x092e 0x0947", "mi=0x092e 0x093f", "mii=0x092e 0x0940", "mo=0x092e 0x094b", "mu=0x092e 0x0941", "muu=0x092e 0x0942", "n=0x0928 0x094d", "n.h=0x0928 0x094d 0x200c", "nA=0x0928 0x093e", "nA.c=0x0928 0x0949", "nI=0x0928 0x0940", "nLLI=0x0928 0x0963", "nLLi=0x0928 0x0962", "nL^I=0x0928 0x0963", "nL^i=0x0928 0x0962", "nRRI=0x0928 0x0944", "nRRi=0x0928 0x0943", "nR^I=0x0928 0x0944", "nR^i=0x0928 0x0943", "nU=0x0928 0x0942", "na=0x0928", "naa=0x0928 0x093e", "naa.c=0x0928 0x0949", "nai=0x0928 0x0948", "nau=0x0928 0x094c", "ne=0x0928 0x0947", "ni=0x0928 0x093f", "nii=0x0928 0x0940", "no=0x0928 0x094b", "nu=0x0928 0x0941", "nuu=0x0928 0x0942", "p=0x092a 0x094d", "p.h=0x092a 0x094d 0x200c", "pA=0x092a 0x093e", "pA.c=0x092a 0x0949", "pI=0x092a 0x0940", "pLLI=0x092a 0x0963", "pLLi=0x092a 0x0962", "pL^I=0x092a 0x0963", "pL^i=0x092a 0x0962", "pRRI=0x092a 0x0944", "pRRi=0x092a 0x0943", "pR^I=0x092a 0x0944", "pR^i=0x092a 0x0943", "pU=0x092a 0x0942", "pa=0x092a", "paa=0x092a 0x093e", "paa.c=0x092a 0x0949", "pai=0x092a 0x0948", "pau=0x092a 0x094c", "pe=0x092a 0x0947", "pi=0x092a 0x093f", "pii=0x092a 0x0940", "po=0x092a 0x094b", "pu=0x092a 0x0941", "puu=0x092a 0x0942", "ph=0x092b 0x094d", "ph.h=0x092b 0x094d 0x200c", "phA=0x092b 0x093e", "phA.c=0x092b 0x0949", "phI=0x092b 0x0940", "phLLI=0x092b 0x0963", "phLLi=0x092b 0x0962", "phL^I=0x092b 0x0963", "phL^i=0x092b 0x0962", "phRRI=0x092b 0x0944", "phRRi=0x092b 0x0943", "phR^I=0x092b 0x0944", "phR^i=0x092b 0x0943", "phU=0x092b 0x0942", "pha=0x092b", "phaa=0x092b 0x093e", "phaa.c=0x092b 0x0949", "phai=0x092b 0x0948", "phau=0x092b 0x094c", "phe=0x092b 0x0947", "phi=0x092b 0x093f", "phii=0x092b 0x0940", "pho=0x092b 0x094b", "phu=0x092b 0x0941", "phuu=0x092b 0x0942", "q=0x0958 0x094d", "q.h=0x0958 0x094d 0x200c", "qA=0x0958 0x093e", "qA.c=0x0958 0x0949", "qI=0x0958 0x0940", "qLLI=0x0958 0x0963", "qLLi=0x0958 0x0962", "qL^I=0x0958 0x0963", "qL^i=0x0958 0x0962", "qRRI=0x0958 0x0944", "qRRi=0x0958 0x0943", "qR^I=0x0958 0x0944", "qR^i=0x0958 0x0943", "qU=0x0958 0x0942", "qa=0x0958", "qaa=0x0958 0x093e", "qaa.c=0x0958 0x0949", "qai=0x0958 0x0948", "qau=0x0958 0x094c", "qe=0x0958 0x0947", "qi=0x0958 0x093f", "qii=0x0958 0x0940", "qo=0x0958 0x094b", "qu=0x0958 0x0941", "quu=0x0958 0x0942", "r=0x0930 0x094d", "r.h=0x0930 0x094d 0x200c", "rA=0x0930 0x093e", "rA.c=0x0930 0x0949", "rI=0x0930 0x0940", "rLLI=0x0930 0x0963", "rLLi=0x0930 0x0962", "rL^I=0x0930 0x0963", "rL^i=0x0930 0x0962", "rRRI=0x0930 0x0944", "rRRi=0x0930 0x0943", "rR^I=0x0930 0x0944", "rR^i=0x0930 0x0943", "rU=0x0930 0x0942", "ra=0x0930", "raa=0x0930 0x093e", "raa.c=0x0930 0x0949", "rai=0x0930 0x0948", "rau=0x0930 0x094c", "re=0x0930 0x0947", "ri=0x0930 0x093f", "rii=0x0930 0x0940", "ro=0x0930 0x094b", "ru=0x0930 0x0941", "ruu=0x0930 0x0942", "s=0x0938 0x094d", "s.h=0x0938 0x094d 0x200c", "sA=0x0938 0x093e", "sA.c=0x0938 0x0949", "sI=0x0938 0x0940", "sLLI=0x0938 0x0963", "sLLi=0x0938 0x0962", "sL^I=0x0938 0x0963", "sL^i=0x0938 0x0962", "sRRI=0x0938 0x0944", "sRRi=0x0938 0x0943", "sR^I=0x0938 0x0944", "sR^i=0x0938 0x0943", "sU=0x0938 0x0942", "sa=0x0938", "saa=0x0938 0x093e", "saa.c=0x0938 0x0949", "sai=0x0938 0x0948", "sau=0x0938 0x094c", "se=0x0938 0x0947", "si=0x0938 0x093f", "sii=0x0938 0x0940", "so=0x0938 0x094b", "su=0x0938 0x0941", "suu=0x0938 0x0942", "sh=0x0936 0x094d", "sh.h=0x0936 0x094d 0x200c", "shA=0x0936 0x093e", "shA.c=0x0936 0x0949", "shI=0x0936 0x0940", "shLLI=0x0936 0x0963", "shLLi=0x0936 0x0962", "shL^I=0x0936 0x0963", "shL^i=0x0936 0x0962", "shRRI=0x0936 0x0944", "shRRi=0x0936 0x0943", "shR^I=0x0936 0x0944", "shR^i=0x0936 0x0943", "shU=0x0936 0x0942", "sha=0x0936", "shaa=0x0936 0x093e", "shaa.c=0x0936 0x0949", "shai=0x0936 0x0948", "shau=0x0936 0x094c", "she=0x0936 0x0947", "shi=0x0936 0x093f", "shii=0x0936 0x0940", "sho=0x0936 0x094b", "shu=0x0936 0x0941", "shuu=0x0936 0x0942", "shh=0x0937 0x094d", "shh.h=0x0937 0x094d 0x200c", "shhA=0x0937 0x093e", "shhA.c=0x0937 0x0949", "shhI=0x0937 0x0940", "shhLLI=0x0937 0x0963", "shhLLi=0x0937 0x0962", "shhL^I=0x0937 0x0963", "shhL^i=0x0937 0x0962", "shhRRI=0x0937 0x0944", "shhRRi=0x0937 0x0943", "shhR^I=0x0937 0x0944", "shhR^i=0x0937 0x0943", "shhU=0x0937 0x0942", "shha=0x0937", "shhaa=0x0937 0x093e", "shhaa.c=0x0937 0x0949", "shhai=0x0937 0x0948", "shhau=0x0937 0x094c", "shhe=0x0937 0x0947", "shhi=0x0937 0x093f", "shhii=0x0937 0x0940", "shho=0x0937 0x094b", "shhu=0x0937 0x0941", "shhuu=0x0937 0x0942", "t=0x0924 0x094d", "t.h=0x0924 0x094d 0x200c", "tA=0x0924 0x093e", "tA.c=0x0924 0x0949", "tI=0x0924 0x0940", "tLLI=0x0924 0x0963", "tLLi=0x0924 0x0962", "tL^I=0x0924 0x0963", "tL^i=0x0924 0x0962", "tRRI=0x0924 0x0944", "tRRi=0x0924 0x0943", "tR^I=0x0924 0x0944", "tR^i=0x0924 0x0943", "tU=0x0924 0x0942", "ta=0x0924", "taa=0x0924 0x093e", "taa.c=0x0924 0x0949", "tai=0x0924 0x0948", "tau=0x0924 0x094c", "te=0x0924 0x0947", "ti=0x0924 0x093f", "tii=0x0924 0x0940", "to=0x0924 0x094b", "tu=0x0924 0x0941", "tuu=0x0924 0x0942", "th=0x0925 0x094d", "th.h=0x0925 0x094d 0x200c", "thA=0x0925 0x093e", "thA.c=0x0925 0x0949", "thI=0x0925 0x0940", "thLLI=0x0925 0x0963", "thLLi=0x0925 0x0962", "thL^I=0x0925 0x0963", "thL^i=0x0925 0x0962", "thRRI=0x0925 0x0944", "thRRi=0x0925 0x0943", "thR^I=0x0925 0x0944", "thR^i=0x0925 0x0943", "thU=0x0925 0x0942", "tha=0x0925", "thaa=0x0925 0x093e", "thaa.c=0x0925 0x0949", "thai=0x0925 0x0948", "thau=0x0925 0x094c", "the=0x0925 0x0947", "thi=0x0925 0x093f", "thii=0x0925 0x0940", "tho=0x0925 0x094b", "thu=0x0925 0x0941", "thuu=0x0925 0x0942", "v=0x0935 0x094d", "v.h=0x0935 0x094d 0x200c", "vA=0x0935 0x093e", "vA.c=0x0935 0x0949", "vI=0x0935 0x0940", "vLLI=0x0935 0x0963", "vLLi=0x0935 0x0962", "vL^I=0x0935 0x0963", "vL^i=0x0935 0x0962", "vRRI=0x0935 0x0944", "vRRi=0x0935 0x0943", "vR^I=0x0935 0x0944", "vR^i=0x0935 0x0943", "vU=0x0935 0x0942", "va=0x0935", "vaa=0x0935 0x093e", "vaa.c=0x0935 0x0949", "vai=0x0935 0x0948", "vau=0x0935 0x094c", "ve=0x0935 0x0947", "vi=0x0935 0x093f", "vii=0x0935 0x0940", "vo=0x0935 0x094b", "vu=0x0935 0x0941", "vuu=0x0935 0x0942", "w=0x0935 0x094d", "w.h=0x0935 0x094d 0x200c", "wA=0x0935 0x093e", "wA.c=0x0935 0x0949", "wI=0x0935 0x0940", "wLLI=0x0935 0x0963", "wLLi=0x0935 0x0962", "wL^I=0x0935 0x0963", "wL^i=0x0935 0x0962", "wRRI=0x0935 0x0944", "wRRi=0x0935 0x0943", "wR^I=0x0935 0x0944", "wR^i=0x0935 0x0943", "wU=0x0935 0x0942", "wa=0x0935", "waa=0x0935 0x093e", "waa.c=0x0935 0x0949", "wai=0x0935 0x0948", "wau=0x0935 0x094c", "we=0x0935 0x0947", "wi=0x0935 0x093f", "wii=0x0935 0x0940", "wo=0x0935 0x094b", "wu=0x0935 0x0941", "wuu=0x0935 0x0942", "x=0x0915 0x094d 0x0937 0x094d", "x.h=0x0915 0x094d 0x0937 0x094d 0x200c", "xA=0x0915 0x094d 0x0937 0x093e", "xA.c=0x0915 0x094d 0x0937 0x0949", "xI=0x0915 0x094d 0x0937 0x0940", "xLLI=0x0915 0x094d 0x0937 0x0963", "xLLi=0x0915 0x094d 0x0937 0x0962", "xL^I=0x0915 0x094d 0x0937 0x0963", "xL^i=0x0915 0x094d 0x0937 0x0962", "xRRI=0x0915 0x094d 0x0937 0x0944", "xRRi=0x0915 0x094d 0x0937 0x0943", "xR^I=0x0915 0x094d 0x0937 0x0944", "xR^i=0x0915 0x094d 0x0937 0x0943", "xU=0x0915 0x094d 0x0937 0x0942", "xa=0x0915 0x094d 0x0937", "xaa=0x0915 0x094d 0x0937 0x093e", "xaa.c=0x0915 0x094d 0x0937 0x0949", "xai=0x0915 0x094d 0x0937 0x0948", "xau=0x0915 0x094d 0x0937 0x094c", "xe=0x0915 0x094d 0x0937 0x0947", "xi=0x0915 0x094d 0x0937 0x093f", "xii=0x0915 0x094d 0x0937 0x0940", "xo=0x0915 0x094d 0x0937 0x094b", "xu=0x0915 0x094d 0x0937 0x0941", "xuu=0x0915 0x094d 0x0937 0x0942", "y=0x092f 0x094d", "y.h=0x092f 0x094d 0x200c", "yA=0x092f 0x093e", "yA.c=0x092f 0x0949", "yI=0x092f 0x0940", "yLLI=0x092f 0x0963", "yLLi=0x092f 0x0962", "yL^I=0x092f 0x0963", "yL^i=0x092f 0x0962", "yRRI=0x092f 0x0944", "yRRi=0x092f 0x0943", "yR^I=0x092f 0x0944", "yR^i=0x092f 0x0943", "yU=0x092f 0x0942", "ya=0x092f", "yaa=0x092f 0x093e", "yaa.c=0x092f 0x0949", "yai=0x092f 0x0948", "yau=0x092f 0x094c", "ye=0x092f 0x0947", "yi=0x092f 0x093f", "yii=0x092f 0x0940", "yo=0x092f 0x094b", "yu=0x092f 0x0941", "yuu=0x092f 0x0942", "z=0x095b 0x094d", "z.h=0x095b 0x094d 0x200c", "zA=0x095b 0x093e", "zA.c=0x095b 0x0949", "zI=0x095b 0x0940", "zLLI=0x095b 0x0963", "zLLi=0x095b 0x0962", "zL^I=0x095b 0x0963", "zL^i=0x095b 0x0962", "zRRI=0x095b 0x0944", "zRRi=0x095b 0x0943", "zR^I=0x095b 0x0944", "zR^i=0x095b 0x0943", "zU=0x095b 0x0942", "za=0x095b", "zaa=0x095b 0x093e", "zaa.c=0x095b 0x0949", "zai=0x095b 0x0948", "zau=0x095b 0x094c", "ze=0x095b 0x0947", "zi=0x095b 0x093f", "zii=0x095b 0x0940", "zo=0x095b 0x094b", "zu=0x095b 0x0941", "zuu=0x095b 0x0942", "~N=0x0919 0x094d", "~N.h=0x0919 0x094d 0x200c", "~NA=0x0919 0x093e", "~NA.c=0x0919 0x0949", "~NI=0x0919 0x0940", "~NLLI=0x0919 0x0963", "~NLLi=0x0919 0x0962", "~NL^I=0x0919 0x0963", "~NL^i=0x0919 0x0962", "~NRRI=0x0919 0x0944", "~NRRi=0x0919 0x0943", "~NR^I=0x0919 0x0944", "~NR^i=0x0919 0x0943", "~NU=0x0919 0x0942", "~Na=0x0919", "~Naa=0x0919 0x093e", "~Naa.c=0x0919 0x0949", "~Nai=0x0919 0x0948", "~Nau=0x0919 0x094c", "~Ne=0x0919 0x0947", "~Ni=0x0919 0x093f", "~Nii=0x0919 0x0940", "~No=0x0919 0x094b", "~Nu=0x0919 0x0941", "~Nuu=0x0919 0x0942", "~n=0x091e 0x094d", "~n.h=0x091e 0x094d 0x200c", "~nA=0x091e 0x093e", "~nA.c=0x091e 0x0949", "~nI=0x091e 0x0940", "~nLLI=0x091e 0x0963", "~nLLi=0x091e 0x0962", "~nL^I=0x091e 0x0963", "~nL^i=0x091e 0x0962", "~nRRI=0x091e 0x0944", "~nRRi=0x091e 0x0943", "~nR^I=0x091e 0x0944", "~nR^i=0x091e 0x0943", "~nU=0x091e 0x0942", "~na=0x091e", "~naa=0x091e 0x093e", "~naa.c=0x091e 0x0949", "~nai=0x091e 0x0948", "~nau=0x091e 0x094c", "~ne=0x091e 0x0947", "~ni=0x091e 0x093f", "~nii=0x091e 0x0940", "~no=0x091e 0x094b", "~nu=0x091e 0x0941", "~nuu=0x091e 0x0942", // Independent vowels "a=0x0905", "A=0x0906", "aa=0x0906", "i=0x0907", "I=0x0908", "ii=0x0908", "u=0x0909", "U=0x090a", "uu=0x090a", "R^i=0x090b", "RRi=0x090b", "L^i=0x090c", "LLi=0x090c", "e.c=0x090d", "e=0x090f", "ai=0x0910", "A.c=0x0911", "aa.c=0x0911", "o=0x0913", "au=0x0914", "R^I=0x0960", "RRI=0x0960", "L^I=0x0961", "LLI=0x0961", // Numbers "0x30=0x0966", "0x31=0x0967", "0x32=0x0968", "0x33=0x0969", "0x34=0x096a", "0x35=0x096b", "0x36=0x096c", "0x37=0x096d", "0x38=0x096e", "0x39=0x096f", // Other marks ".N=0x0901", ".n=0x0902", "M=0x0902", "H=0x0903", "R=0x0931 0x094d", ".a=0x093d", ".c=0x0945", ".h=0x094d 0x200c", "AUM=0x0950", "OM=0x0950", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Vietnamese.kmap0000644000175000017500000002121207532460064016266 0ustar henrichhenrich// VIQR.kmap using the RFC1456:VIQR // Vietnamese Quoted Representation to input Vietnamese into // http://www2.gol.com/users/gsinai/'s Yudit 0.99 Unicode text editor // 1998-05-09 Roman Czyborra@dds.nl // 1999-11-22 Jean-Christophe.ANDRE@refer.edu.vn - corrected some typo // perl -ne 'print "$1 \n" if /^([aeiouyd]\S+).+0x(....)/' // /usr/src/csets-1.1/VIQRI.TXT | upcase | perl -ne 'print // "\"$1=0x$2\", // \n" if /(.+) /' | namechars | utf8 // generated: "a`=0x00E0", // à = LATIN SMALL LETTER A WITH GRAVE "A`=0x00C0", // À = LATIN CAPITAL LETTER A WITH GRAVE "a'=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "A'=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "a^=0x00E2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "A^=0x00C2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX "a~=0x00E3", // ã = LATIN SMALL LETTER A WITH TILDE "A~=0x00C3", // à = LATIN CAPITAL LETTER A WITH TILDE "e`=0x00E8", // è = LATIN SMALL LETTER E WITH GRAVE "E`=0x00C8", // È = LATIN CAPITAL LETTER E WITH GRAVE "e'=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "E'=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "e^=0x00EA", // ê = LATIN SMALL LETTER E WITH CIRCUMFLEX "E^=0x00CA", // Ê = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "i`=0x00EC", // ì = LATIN SMALL LETTER I WITH GRAVE "I`=0x00CC", // Ì = LATIN CAPITAL LETTER I WITH GRAVE "i'=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "I'=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "o`=0x00F2", // ò = LATIN SMALL LETTER O WITH GRAVE "O`=0x00D2", // Ò = LATIN CAPITAL LETTER O WITH GRAVE "o'=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "O'=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "o^=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "O^=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "o~=0x00F5", // õ = LATIN SMALL LETTER O WITH TILDE "O~=0x00D5", // Õ = LATIN CAPITAL LETTER O WITH TILDE "u`=0x00F9", // ù = LATIN SMALL LETTER U WITH GRAVE "U`=0x00D9", // Ù = LATIN CAPITAL LETTER U WITH GRAVE "u'=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "U'=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "y'=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "Y'=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "a(=0x0103", // ă = LATIN SMALL LETTER A WITH BREVE "A(=0x0102", // Ă = LATIN CAPITAL LETTER A WITH BREVE "i~=0x0129", // ĩ = LATIN SMALL LETTER I WITH TILDE "I~=0x0128", // Ĩ = LATIN CAPITAL LETTER I WITH TILDE "u~=0x0169", // ũ = LATIN SMALL LETTER U WITH TILDE "U~=0x0168", // Ũ = LATIN CAPITAL LETTER U WITH TILDE "o+=0x01A1", // ơ = LATIN SMALL LETTER O WITH HORN "O+=0x01A0", // Ơ = LATIN CAPITAL LETTER O WITH HORN "u+=0x01B0", // ư = LATIN SMALL LETTER U WITH HORN "U+=0x01AF", // Ư = LATIN CAPITAL LETTER U WITH HORN "a.=0x1EA1", // ạ = LATIN SMALL LETTER A WITH DOT BELOW "A.=0x1EA0", // Ạ = LATIN CAPITAL LETTER A WITH DOT BELOW "a?=0x1EA3", // ả = LATIN SMALL LETTER A WITH HOOK ABOVE "A?=0x1EA2", // Ả = LATIN CAPITAL LETTER A WITH HOOK ABOVE "a^'=0x1EA5", // ấ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE "A^'=0x1EA4", // Ấ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE "a^`=0x1EA7", // ầ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE "A^`=0x1EA6", // Ầ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE "a^?=0x1EA9", // ẩ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "A^?=0x1EA8", // Ẩ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "a^~=0x1EAB", // ẫ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE "A^~=0x1EAA", // Ẫ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE "a^.=0x1EAD", // ậ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW "A^.=0x1EAC", // Ậ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW "a('=0x1EAF", // ắ = LATIN SMALL LETTER A WITH BREVE AND ACUTE "A('=0x1EAE", // Ắ = LATIN CAPITAL LETTER A WITH BREVE AND ACUTE "a(`=0x1EB1", // ằ = LATIN SMALL LETTER A WITH BREVE AND GRAVE "A(`=0x1EB0", // Ằ = LATIN CAPITAL LETTER A WITH BREVE AND GRAVE "a(?=0x1EB3", // ẳ = LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE "A(?=0x1EB2", // Ẳ = LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE "a(~=0x1EB5", // ẵ = LATIN SMALL LETTER A WITH BREVE AND TILDE "A(~=0x1EB4", // Ẵ = LATIN CAPITAL LETTER A WITH BREVE AND TILDE "a(.=0x1EB7", // ặ = LATIN SMALL LETTER A WITH BREVE AND DOT BELOW "A(.=0x1EB6", // Ặ = LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW "e.=0x1EB9", // ẹ = LATIN SMALL LETTER E WITH DOT BELOW "E.=0x1EB8", // Ẹ = LATIN CAPITAL LETTER E WITH DOT BELOW "e?=0x1EBB", // ẻ = LATIN SMALL LETTER E WITH HOOK ABOVE "E?=0x1EBA", // Ẻ = LATIN CAPITAL LETTER E WITH HOOK ABOVE "e~=0x1EBD", // ẽ = LATIN SMALL LETTER E WITH TILDE "E~=0x1EBC", // Ẽ = LATIN CAPITAL LETTER E WITH TILDE "e^'=0x1EBF", // ế = LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE "E^'=0x1EBE", // Ế = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE "e^`=0x1EC1", // ề = LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE "E^`=0x1EC0", // Ề = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE "e^?=0x1EC3", // ể = LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "E^?=0x1EC2", // Ể = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "e^~=0x1EC5", // ễ = LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE "E^~=0x1EC4", // Ễ = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE "e^.=0x1EC7", // ệ = LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW "E^.=0x1EC6", // Ệ = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW "i?=0x1EC9", // ỉ = LATIN SMALL LETTER I WITH HOOK ABOVE "I?=0x1EC8", // Ỉ = LATIN CAPITAL LETTER I WITH HOOK ABOVE "i.=0x1ECB", // ị = LATIN SMALL LETTER I WITH DOT BELOW "I.=0x1ECA", // Ị = LATIN CAPITAL LETTER I WITH DOT BELOW "o.=0x1ECD", // ọ = LATIN SMALL LETTER O WITH DOT BELOW "O.=0x1ECC", // Ọ = LATIN CAPITAL LETTER O WITH DOT BELOW "o?=0x1ECF", // ỏ = LATIN SMALL LETTER O WITH HOOK ABOVE "O?=0x1ECE", // Ỏ = LATIN CAPITAL LETTER O WITH HOOK ABOVE "o^'=0x1ED1", // ố = LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE "O^'=0x1ED0", // Ố = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE "o^`=0x1ED3", // ồ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE "O^`=0x1ED2", // Ồ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE "o^?=0x1ED5", // ổ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "O^?=0x1ED4", // Ổ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "o^~=0x1ED7", // ỗ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE "O^~=0x1ED6", // Ỗ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE "o^.=0x1ED9", // ộ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW "O^.=0x1ED8", // Ộ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW "o+'=0x1EDB", // ớ = LATIN SMALL LETTER O WITH HORN AND ACUTE "O+'=0x1EDA", // Ớ = LATIN CAPITAL LETTER O WITH HORN AND ACUTE "o+`=0x1EDD", // ờ = LATIN SMALL LETTER O WITH HORN AND GRAVE "O+`=0x1EDC", // Ờ = LATIN CAPITAL LETTER O WITH HORN AND GRAVE "o+?=0x1EDF", // ở = LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE "O+?=0x1EDE", // Ở = LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE "o+~=0x1EE1", // ỡ = LATIN SMALL LETTER O WITH HORN AND TILDE "O+~=0x1EE0", // Ỡ = LATIN CAPITAL LETTER O WITH HORN AND TILDE "o+.=0x1EE3", // ợ = LATIN SMALL LETTER O WITH HORN AND DOT BELOW "O+.=0x1EE2", // Ợ = LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW "u.=0x1EE5", // ụ = LATIN SMALL LETTER U WITH DOT BELOW "U.=0x1EE4", // Ụ = LATIN CAPITAL LETTER U WITH DOT BELOW "u?=0x1EE7", // ủ = LATIN SMALL LETTER U WITH HOOK ABOVE "U?=0x1EE6", // Ủ = LATIN CAPITAL LETTER U WITH HOOK ABOVE "u+'=0x1EE9", // ứ = LATIN SMALL LETTER U WITH HORN AND ACUTE "U+'=0x1EE8", // Ứ = LATIN CAPITAL LETTER U WITH HORN AND ACUTE "u+`=0x1EEB", // ừ = LATIN SMALL LETTER U WITH HORN AND GRAVE "U+`=0x1EEA", // Ừ = LATIN CAPITAL LETTER U WITH HORN AND GRAVE "u+?=0x1EED", // ử = LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE "U+?=0x1EEC", // Ử = LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE "u+~=0x1EEF", // ữ = LATIN SMALL LETTER U WITH HORN AND TILDE "U+~=0x1EEE", // Ữ = LATIN CAPITAL LETTER U WITH HORN AND TILDE "u+.=0x1EF1", // ự = LATIN SMALL LETTER U WITH HORN AND DOT BELOW "U+.=0x1EF0", // Ự = LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW "y`=0x1EF3", // ỳ = LATIN SMALL LETTER Y WITH GRAVE "Y`=0x1EF2", // Ỳ = LATIN CAPITAL LETTER Y WITH GRAVE "y.=0x1EF5", // ỵ = LATIN SMALL LETTER Y WITH DOT BELOW "Y.=0x1EF4", // Ỵ = LATIN CAPITAL LETTER Y WITH DOT BELOW "y?=0x1EF7", // ỷ = LATIN SMALL LETTER Y WITH HOOK ABOVE "Y?=0x1EF6", // Ỷ = LATIN CAPITAL LETTER Y WITH HOOK ABOVE "y~=0x1EF9", // ỹ = LATIN SMALL LETTER Y WITH TILDE "Y~=0x1EF8", // Ỹ = LATIN CAPITAL LETTER Y WITH TILDE "dd=0x0111", // đ = LATIN SMALL LETTER D WITH STROKE "DD=0x0110", // Đ = LATIN CAPITAL LETTER D WITH STROKE ./mytool/kmap/Berbere-etendu.kmap0000644000175000017500000000116507765355504017035 0ustar henrichhenrich// This keymap is for linguistic texts about Berber variants "##version = version_2002_11_25_01", "##auteur = Bruno_Cauchy_Lefebvre", "##email = bb.lefebvre@free.fr", "*` =`", "`` =`", "`* =*", "** =*", "_ =0x0331", "*_ =_", "`_ =_", "- =0x0323", "*- =-", "`- =-", "( =0x0306", "*( =(", "`( =(", "[ =0x0306", "*[ =[", "`[ =[", ") =0x030A", "*) =)", "`) =)", "] =0x030A", "*] =]", "`] =]", "+ =0x0327", "*+ =+", "`+ =+", "v =0x0263", "*v =v", "`v =v", "V =0x0194", "*V =V", "`V =V", "o =0x025B", "*o =o", "`o =o", "O =0x0190", "*O =O", "`O =O", ./mytool/kmap/Slovak-Programmer.kmap0000644000175000017500000000775707532460064017560 0ustar henrichhenrich// SK.kmap,v 1.0 2001/08/08 // Radovan Garabík // Slovak "programmer" keyboard "0x3D 0x3D=0x003D", // EQUALS SIGN "++=0x002B", // PLUS SIGN "0x3D +=0x002B", // PLUS SIGN "0x3D +=0x003D", // EQUALS SIGN "+0x3D=0x003D", // EQUALS SIGN "0x3D A=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "+A=0x00C4", // Ä = LATIN CAPITAL LETTER A WITH DIARESIS "+C=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "0x3D C=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "+D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D E=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "+E=0x011A", // Ě = LATIN CAPITAL LETTER E WITH CARON "0x3D I=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "0x3D L=0x0139", // Ĺ = LATIN CAPITAL LETTER L WITH ACUTE "+L=0x013D", // Ľ = LATIN CAPITAL LETTER L WITH CARON "+N=0x0147", // Ň = LATIN CAPITAL LETTER N WITH CARON "0x3D N=0x0147", // Ň = LATIN CAPITAL LETTER N WITH CARON "0x3D O=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "+O=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "+P=0x00D6", // Ö = LATIN CAPITAL LETTER O WITH DIARESIS "0x3D R=0x0154", // Ŕ = LATIN CAPITAL LETTER R WITH ACUTE "+R=0x0158", // Ř = LATIN CAPITAL LETTER R WITH CARON "+S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "0x3D S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "+T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D U=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "+U=0x016E", // Ů = LATIN CAPITAL LETTER U WITH RING ABOVE "+I=0x00DC", // Ü = LATIN CAPITAL LETTER U WITH DIARESIS "0x3D Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x3D Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x3D a=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "+a=0x00E4", // ä = LATIN SMALL LETTER A WITH DIARESIS "+c=0x010D", // č = LATIN SMALL LETTER C WITH CARON "0x3D c=0x010D", // č = LATIN SMALL LETTER C WITH CARON "+d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x3D d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x3D e=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "+e=0x011B", // ě = LATIN SMALL LETTER E WITH CARON "0x3D i=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "0x3D l=0x013A", // ĺ = LATIN SMALL LETTER L WITH ACUTE "+l=0x013E", // ľ = LATIN SMALL LETTER L WITH CARON "+n=0x0148", // ň = LATIN SMALL LETTER N WITH CARON "0x3D n=0x0148", // ň = LATIN SMALL LETTER N WITH CARON "0x3D o=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "+o=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "+p=0x00F6", // ö = LATIN SMALL LETTER O WITH DIARESIS "0x3D r=0x0155", // ŕ = LATIN SMALL LETTER R WITH ACUTE "+r=0x0159", // ř = LATIN SMALL LETTER R WITH CARON "+s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "0x3D s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "+t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "0x3D t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "0x3D u=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "+u=0x016F", // ů = LATIN SMALL LETTER U WITH RING ABOVE "+i=0x00FC", // ü = LATIN SMALL LETTER U WITH DIARESIS "0x3D y=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "+y=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "+z=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "0x3D z=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "0x31=0x002B", // PLUS SIGN "0x32=0x013A", // ĺ = LATIN SMALL LETTER L WITH ACUTE "0x33=0x0161", // š = LATIN SMALL LETTER S WITH CARON "0x34=0x010D", // č = LATIN SMALL LETTER C WITH CARON "0x35=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "0x36=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "0x37=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "0x38=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "0x39=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "0x30=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE ./mytool/kmap/Israeli.kmap0000644000175000017500000000350007532460064015556 0ustar henrichhenrich// Hebrew.kmap for Yudit // 1998-06-17 Roman Czyborra@cs.tu-berlin.de // Changed from the il_phonetic map to the standard israeli map by // Tzafrir Cohen "t=0x05D0", // א = HEBREW LETTER ALEF "c=0x05D1", // ב = HEBREW LETTER BET "d=0x05D2", // ג = HEBREW LETTER GIMEL "s=0x05D3", // ד = HEBREW LETTER DALET "v=0x05D4", // ה = HEBREW LETTER HE "u=0x05D5", // ו = HEBREW LETTER VAV "z=0x05D6", // ז = HEBREW LETTER ZAYIN "j=0x05D7", // ח = HEBREW LETTER HET "y=0x05D8", // ט = HEBREW LETTER TET "h=0x05D9", // י = HEBREW LETTER YOD "l=0x05DA", // ך = HEBREW LETTER FINAL KAF "f=0x05DB", // כ = HEBREW LETTER KAF "k=0x05DC", // ל = HEBREW LETTER LAMED "o=0x05DD", // ם = HEBREW LETTER FINAL MEM "n=0x05DE", // מ = HEBREW LETTER MEM "i=0x05DF", // ן = HEBREW LETTER FINAL NUN "b=0x05E0", // נ = HEBREW LETTER NUN "x=0x05E1", // ס = HEBREW LETTER SAMEKH "g=0x05E2", // ע = HEBREW LETTER AYIN ";=0x05E3", // ף = HEBREW LETTER FINAL PE "p=0x05E4", // פ = HEBREW LETTER PE ".=0x05E5", // ץ = HEBREW LETTER FINAL TSADI "m=0x05E6", // צ = HEBREW LETTER TSADI "e=0x05E7", // ק = HEBREW LETTER QOF "r=0x05E8", // ר = HEBREW LETTER RESH "a=0x05E9", // ש = HEBREW LETTER SHIN ",=0x05EA", // ת = HEBREW LETTER TAV // Some other mappings that change, besides the letters themselves: "q=0x002F", // slash (/) "w=0x0027", // apostrophy (') "`=0x003B", // smicolon (;) "'=0x002C", // comma (,) "/=0x002E", // dot (.) // There is said to be support for bidirectionality. If so: swapping // between left and right parathensis might prove useful. Just in case // Those should not mean "left-{brace|bracket|etc.}" and "right-" // but "open-" and "close-" // it does, I add the mapping remmed-out: //"[=0x005D", // "]" //"]=0x005B", // "[" //"{=0x007D", // "}" //"}=0x007B", // "{" //"(=0x0029", // ")" //")=0x0028", // "(" ./mytool/kmap/CS.kmap0000644000175000017500000001140507635735324014506 0ustar henrichhenrich// CS.kmap, Czech keymap for Yudit editor // Version: 0.1 // Date: 20/02/2003 // Author: Zdenek Bernard // Usage: Use it with 'us' keymap as native. "0x3D 0x3D=0x003D", // EQUALS SIGN "++=0x002B", // PLUS SIGN "0x31=0x002B", // PLUS SIGN "-=0x003D", // EQUALS SIGN "!=0x031", // 1 = LATIN DIGIT ONE "@=0x032", // 2 = LATIN DIGIT TWO "#=0x033", // 3 = LATIN DIGIT THREE "$=0x034", // 4 = LATIN DIGIT FOUR "%=0x035", // 5 = LATIN DIGIT FIVE "^=0x036", // 6 = LATIN DIGIT SIX "&=0x037", // 7 = LATIN DIGIT SEVEN "*=0x038", // 8 = LATIN DIGIT EIGHT "(=0x039", // 9 = LATIN DIGIT NINE ")=0x030", // 0 = LATIN DIGIT ZERO "_=0x025", // % "+=0x030c", // ̌ "0x3D=0x0301", // ́ "{=0x02F", // / "}=0x028", // ( "]=0x029", // ) ":=0x022", // " "\"=0x021", // ! "'=0x00a7", // § "<=0x03F", // ? ">=0x03A", // : "?=0x05F", // _ "/=0x02D", // - "~=0x03B", // / "Y=0x05A", // Z = LATIN CAPITAL LETTER Z "y=0x07A", // z = LATIN SMALL LETTER Z "Z=0x059", // Y = LATIN CAPITAL LETTER Y "z=0x079", // y = LATIN SMALL LETTER Y "0x3d A=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "+A=0x00C4", // Ä = LATIN CAPITAL LETTER A WITH DIARESIS "+C=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "0x3D C=0x00C7", // Ç = LATIN CAPITAL LETTER C WITH CEDILLE "+D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D E=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "+E=0x011A", // Ě = LATIN CAPITAL LETTER E WITH CARON "0x3D I=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "0x3D L=0x0139", // Ĺ = LATIN CAPITAL LETTER L WITH ACUTE "+L=0x013D", // Ľ = LATIN CAPITAL LETTER L WITH CARON "+N=0x0147", // Ň = LATIN CAPITAL LETTER N WITH CARON "0x3D N=0x00D1", // Ñ = LATIN CAPITAL LETTER N WITH TILDA "0x3D O=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "+O=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "+P=0x00D6", // Ö = LATIN CAPITAL LETTER O WITH DIARESIS "0x3D R=0x0154", // Ŕ = LATIN CAPITAL LETTER R WITH ACUTE "+R=0x0158", // Ř = LATIN CAPITAL LETTER R WITH CARON "+S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "0x3D S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "+T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D U=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "+U=0x016E", // Ů = LATIN CAPITAL LETTER U WITH RING ABOVE "+I=0x00DC", // Ü = LATIN CAPITAL LETTER U WITH DIARESIS "0x3D Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x3D Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x38=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "0x3D a=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "+a=0x00E4", // ä = LATIN SMALL LETTER A WITH DIARESIS "0x34=0x010D", // č = LATIN SMALL LETTER C WITH CARON "0x3D c=0x00E7", // ç = LATIN SMALL LETTER C WITH CEDILLE "+c=0x010D", // č = LATIN SMALL LETTER C WITH CARON "+d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x3D d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x30=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "0x3D e=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "0x32=0x011B", // ě = LATIN SMALL LETTER E WITH CARON "+e=0x011B", // ě = LATIN SMALL LETTER E WITH CARON "0x39=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "0x3D i=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "0x3D l=0x013A", // ĺ = LATIN SMALL LETTER L WITH ACUTE "+l=0x013E", // ľ = LATIN SMALL LETTER L WITH CARON "+n=0x0148", // ň = LATIN SMALL LETTER N WITH CARON "0x3D n=0x00F1", // ñ = LATIN SMALL LETTER N WITH TILDA "0x3D o=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "+o=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "+p=0x00F6", // ö = LATIN SMALL LETTER O WITH DIARESIS "0x3D r=0x0155", // ŕ = LATIN SMALL LETTER R WITH ACUTE "0x35=0x0159", // ř = LATIN SMALL LETTER R WITH CARON "+r=0x0159", // ř = LATIN SMALL LETTER R WITH CARON "0x33=0x0161", // š = LATIN SMALL LETTER S WITH CARON "0x3D s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "+s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "+t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "0x3D t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "[=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "0x3D u=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE ";=0x016F", // ů = LATIN SMALL LETTER U WITH RING ABOVE "+u=0x016F", // ů = LATIN SMALL LETTER U WITH RING ABOVE "+i=0x00FC", // ü = LATIN SMALL LETTER U WITH DIARESIS "0x3D z=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "0x37=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "0x36=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "+y=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "0x3D y=0x017A", // ź = LATIN SMALL LETTER Z WITH ACUTE ./mytool/kmap/CS-qwerty.kmap0000644000175000017500000001122407752204730016026 0ustar henrichhenrich// CS-qwerty.kmap, Czech qwerty keymap for Yudit editor // Version: 0.1 // Date: 20/02/2003 // Author: Zdenek Bernard , Michal Cihar // Usage: Use it with 'us' keymap as native. "0x3D 0x3D=0x003D", // EQUALS SIGN "++=0x002B", // PLUS SIGN "0x31=0x002B", // PLUS SIGN "-=0x003D", // EQUALS SIGN "!=0x031", // 1 = LATIN DIGIT ONE "@=0x032", // 2 = LATIN DIGIT TWO "#=0x033", // 3 = LATIN DIGIT THREE "$=0x034", // 4 = LATIN DIGIT FOUR "%=0x035", // 5 = LATIN DIGIT FIVE "^=0x036", // 6 = LATIN DIGIT SIX "&=0x037", // 7 = LATIN DIGIT SEVEN "*=0x038", // 8 = LATIN DIGIT EIGHT "(=0x039", // 9 = LATIN DIGIT NINE ")=0x030", // 0 = LATIN DIGIT ZERO "_=0x025", // % "+=0x030c", // ̌ "0x3D=0x0301", // ́ "{=0x02F", // / "}=0x028", // ( "]=0x029", // ) ":=0x022", // " "\"=0x021", // ! "'=0x00a7", // § "<=0x03F", // ? ">=0x03A", // : "?=0x05F", // _ "/=0x02D", // - "~=0x03B", // / "0x3d A=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "+A=0x00C4", // Ä = LATIN CAPITAL LETTER A WITH DIARESIS "+C=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "0x3D C=0x00C7", // Ç = LATIN CAPITAL LETTER C WITH CEDILLE "+D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D E=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "+E=0x011A", // Ě = LATIN CAPITAL LETTER E WITH CARON "0x3D I=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "0x3D L=0x0139", // Ĺ = LATIN CAPITAL LETTER L WITH ACUTE "+L=0x013D", // Ľ = LATIN CAPITAL LETTER L WITH CARON "+N=0x0147", // Ň = LATIN CAPITAL LETTER N WITH CARON "0x3D N=0x00D1", // Ñ = LATIN CAPITAL LETTER N WITH TILDA "0x3D O=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "+O=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "+P=0x00D6", // Ö = LATIN CAPITAL LETTER O WITH DIARESIS "0x3D R=0x0154", // Ŕ = LATIN CAPITAL LETTER R WITH ACUTE "+R=0x0158", // Ř = LATIN CAPITAL LETTER R WITH CARON "+S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "0x3D S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "+T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D U=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "+U=0x016E", // Ů = LATIN CAPITAL LETTER U WITH RING ABOVE "+I=0x00DC", // Ü = LATIN CAPITAL LETTER U WITH DIARESIS "0x3D Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x3D Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x38=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "0x3D a=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "+a=0x00E4", // ä = LATIN SMALL LETTER A WITH DIARESIS "0x34=0x010D", // č = LATIN SMALL LETTER C WITH CARON "0x3D c=0x00E7", // ç = LATIN SMALL LETTER C WITH CEDILLE "+c=0x010D", // č = LATIN SMALL LETTER C WITH CARON "+d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x3D d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x30=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "0x3D e=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "0x32=0x011B", // ě = LATIN SMALL LETTER E WITH CARON "+e=0x011B", // ě = LATIN SMALL LETTER E WITH CARON "0x39=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "0x3D i=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "0x3D l=0x013A", // ĺ = LATIN SMALL LETTER L WITH ACUTE "+l=0x013E", // ľ = LATIN SMALL LETTER L WITH CARON "+n=0x0148", // ň = LATIN SMALL LETTER N WITH CARON "0x3D n=0x00F1", // ñ = LATIN SMALL LETTER N WITH TILDA "0x3D o=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "+o=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "+p=0x00F6", // ö = LATIN SMALL LETTER O WITH DIARESIS "0x3D r=0x0155", // ŕ = LATIN SMALL LETTER R WITH ACUTE "0x35=0x0159", // ř = LATIN SMALL LETTER R WITH CARON "+r=0x0159", // ř = LATIN SMALL LETTER R WITH CARON "0x33=0x0161", // š = LATIN SMALL LETTER S WITH CARON "0x3D s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "+s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "+t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "0x3D t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "[=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "0x3D u=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE ";=0x016F", // ů = LATIN SMALL LETTER U WITH RING ABOVE "+u=0x016F", // ů = LATIN SMALL LETTER U WITH RING ABOVE "+i=0x00FC", // ü = LATIN SMALL LETTER U WITH DIARESIS "0x3D z=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "0x37=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "0x36=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "+y=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "0x3D y=0x017A", // ź = LATIN SMALL LETTER Z WITH ACUTE ./mytool/kmap/Lithuanian.kmap0000644000175000017500000000047507532460064016272 0ustar henrichhenrich// Lithuanian group of Lithuanian keymap for yudit editor. "0x31=0x105", "0x32=0x10d", "0x33=0x119", "0x34=0x117", "0x35=0x12f", "0x36=0x161", "0x37=0x173", "0x38=0x16b", "0x39=0x201e", "0x30=0x201c", "0x3d=0x17e", "!=0x104", "@=0x10c", "#=0x118", "$=0x116", "%=0x12e", "^=0x160", "&=0x172", "*=0x16a", "+=0x17d", ./mytool/kmap/Polish.kmap0000644000175000017500000000220407532460064015424 0ustar henrichhenrich// Polish.kmap for the Unicode editor Yudit // 1998-04-17 Roman Czyborra@cs.tu-berlin.de // Cześć, Lech Wałęsa [va'wε̃sa] i François Mitterand! "A;=0x0104", // Ą = LATIN CAPITAL LETTER A WITH OGONEK "C'=0x0106", // Ć = LATIN CAPITAL LETTER C WITH ACUTE "E;=0x0118", // Ę = LATIN CAPITAL LETTER E WITH OGONEK "L;=0x0141", // Ł = LATIN CAPITAL LETTER L WITH STROKE "N'=0x0143", // Ń = LATIN CAPITAL LETTER N WITH ACUTE "O'=0x00d3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "S'=0x015a", // Ś = LATIN CAPITAL LETTER S WITH ACUTE "Z'=0x0179", // Ź = LATIN CAPITAL LETTER Z WITH ACUTE "Z;=0x017b", // Ż = LATIN CAPITAL LETTER Z WITH DOT ABOVE "a;=0x0105", // ą = LATIN SMALL LETTER A WITH OGONEK "c'=0x0107", // ć = LATIN SMALL LETTER C WITH ACUTE "e;=0x0119", // ę = LATIN SMALL LETTER E WITH OGONEK "l;=0x0142", // ł = LATIN SMALL LETTER L WITH STROKE "n'=0x0144", // ń = LATIN SMALL LETTER N WITH ACUTE "o'=0x00f3", // ó = LATIN SMALL LETTER O WITH ACUTE "s'=0x015b", // ś = LATIN SMALL LETTER S WITH ACUTE "z'=0x017a", // ź = LATIN SMALL LETTER Z WITH ACUTE "z;=0x017c", // ż = LATIN SMALL LETTER Z WITH DOT ABOVE ./mytool/kmap/Troff.kmap0000644000175000017500000003007507532460064015255 0ustar henrichhenrich// perl -ne 's/=/ 0x3D /g; print qq["\\\\($2$3=0x$1\",\t// $4 \\u$1\n] // if /0x(....),\s+.(.+).,.(.+).,\s+.. (.+) ..\n/ // ' /usr/src/plan9/libXg/latin1.c produced this // $Id: Troff.kmap,v 1.1 1998/09/23 17:18:05 czyborra Exp $ "\\(\'A=0x00c1", // A acute Á "\\(^A=0x00c2", // A circumflex  "\\(~A=0x00c3", // A tilde à "\\(\"A=0x00c4", // A dieresis Ä "\\(oA=0x00c5", // A circle Å "\\(AE=0x00c6", // AE ligature Æ "\\(,C=0x00c7", // C cedilla Ç "\\(`E=0x00c8", // E grave È "\\(\'E=0x00c9", // E acute É "\\(^E=0x00ca", // E circumflex Ê "\\(\"E=0x00cb", // E dieresis Ë "\\(`I=0x00cc", // I grave Ì "\\(\'I=0x00cd", // I acute Í "\\(^I=0x00ce", // I circumflex Î "\\(\"I=0x00cf", // I dieresis Ï "\\(D-=0x00d0", // Eth Ð "\\(~N=0x00d1", // N tilde Ñ "\\(`O=0x00d2", // O grave Ò "\\(\'O=0x00d3", // O acute Ó "\\(^O=0x00d4", // O circumflex Ô "\\(~O=0x00d5", // O tilde Õ "\\(\"O=0x00d6", // O dieresis Ö "\\(mu=0x00d7", // times sign × "\\(/O=0x00d8", // O slash Ø "\\(`U=0x00d9", // U grave Ù "\\(\'U=0x00da", // U acute Ú "\\(^U=0x00db", // U circumflex Û "\\(\"U=0x00dc", // U dieresis Ü "\\(\'Y=0x00dd", // Y acute Ý "\\(|P=0x00de", // Thorn Þ "\\(ss=0x00df", // sharp s ß "\\(`a=0x00e0", // a grave à "\\(\'a=0x00e1", // a acute á "\\(^a=0x00e2", // a circumflex â "\\(~a=0x00e3", // a tilde ã "\\(\"a=0x00e4", // a dieresis ä "\\(oa=0x00e5", // a circle å "\\(ae=0x00e6", // ae ligature æ "\\(,c=0x00e7", // c cedilla ç "\\(`e=0x00e8", // e grave è "\\(\'e=0x00e9", // e acute é "\\(^e=0x00ea", // e circumflex ê "\\(\"e=0x00eb", // e dieresis ë "\\(`i=0x00ec", // i grave ì "\\(\'i=0x00ed", // i acute í "\\(^i=0x00ee", // i circumflex î "\\(\"i=0x00ef", // i dieresis ï "\\(d-=0x00f0", // eth ð "\\(~n=0x00f1", // n tilde ñ "\\(`o=0x00f2", // o grave ò "\\(\'o=0x00f3", // o acute ó "\\(^o=0x00f4", // o circumflex ô "\\(~o=0x00f5", // o tilde õ "\\(\"o=0x00f6", // o dieresis ö "\\(-:=0x00f7", // divide sign ÷ "\\(/o=0x00f8", // o slash ø "\\(`u=0x00f9", // u grave ù "\\(\'u=0x00fa", // u acute ú "\\(^u=0x00fb", // u circumflex û "\\(\"u=0x00fc", // u dieresis ü "\\(\'y=0x00fd", // y acute ý "\\(|p=0x00fe", // thorn þ "\\(\"y=0x00ff", // y dieresis ÿ "\\(wk=0x2654", // chess white king ♔ "\\(wq=0x2655", // chess white queen ♕ "\\(wr=0x2656", // chess white rook ♖ "\\(wb=0x2657", // chess white bishop ♗ "\\(wn=0x2658", // chess white knight ♘ "\\(wp=0x2659", // chess white pawn ♙ "\\(bk=0x265a", // chess black king ♚ "\\(bq=0x265b", // chess black queen ♛ "\\(br=0x265c", // chess black rook ♜ "\\(bb=0x265d", // chess black bishop ♝ "\\(bn=0x265e", // chess black knight ♞ "\\(bp=0x265f", // chess black pawn ♟ "\\(*a=0x03b1", // alpha α "\\(*b=0x03b2", // beta β "\\(*g=0x03b3", // gamma γ "\\(*d=0x03b4", // delta δ "\\(*e=0x03b5", // epsilon ε "\\(*z=0x03b6", // zeta ζ "\\(*y=0x03b7", // eta η "\\(*h=0x03b8", // theta θ "\\(*i=0x03b9", // iota ι "\\(*k=0x03ba", // kappa κ "\\(*l=0x03bb", // lambda λ "\\(*m=0x03bc", // mu μ "\\(*n=0x03bd", // nu ν "\\(*c=0x03be", // xsi ξ "\\(*o=0x03bf", // omicron ο "\\(*p=0x03c0", // pi π "\\(*r=0x03c1", // rho ρ "\\(ts=0x03c2", // terminal sigma ς "\\(*s=0x03c3", // sigma σ "\\(*t=0x03c4", // tau τ "\\(*u=0x03c5", // upsilon υ "\\(*f=0x03c6", // phi φ "\\(*x=0x03c7", // chi χ "\\(*q=0x03c8", // psi ψ "\\(*A=0x0391", // Alpha Α "\\(*B=0x0392", // Beta Β "\\(*G=0x0393", // Gamma Γ "\\(*D=0x0394", // Delta Δ "\\(*E=0x0395", // Epsilon Ε "\\(*Z=0x0396", // Zeta Ζ "\\(*Y=0x0397", // Eta Η "\\(*H=0x0398", // Theta Θ "\\(*I=0x0399", // Iota Ι "\\(*K=0x039a", // Kappa Κ "\\(*L=0x039b", // Lambda Λ "\\(*M=0x039c", // Mu Μ "\\(*N=0x039d", // Nu Ν "\\(*C=0x039e", // Xsi Ξ "\\(*O=0x039f", // Omicron Ο "\\(*P=0x03a0", // Pi Π "\\(*R=0x03a1", // Rho Ρ "\\(*S=0x03a3", // Sigma Σ "\\(*T=0x03a4", // Tau Τ "\\(*U=0x03a5", // Upsilon Υ "\\(*F=0x03a6", // Phi Φ "\\(*X=0x03a7", // Chi Χ "\\(*Q=0x03a8", // Psi Ψ "\\(*W=0x03a9", // Omega Ω "\\(<-=0x2190", // left arrow ← "\\(ua=0x2191", // up arrow ↑ "\\(->=0x2192", // right arrow → "\\(da=0x2193", // down arrow ↓ "\\(ab=0x2194", // arrow both ↔ "\\(V 0x3D=0x21d0", // left double-line arrow ⇐ "\\( 0x3D V=0x21d2", // right double-line arrow ⇒ "\\(fa=0x2200", // forall ∀ "\\(te=0x2203", // there exists ∃ "\\(pd=0x2202", // partial differential ∂ "\\(es=0x2205", // empty set ∅ "\\(De=0x2206", // delta ∆ "\\(gr=0x2207", // gradient ∇ "\\(mo=0x2208", // element of ∈ "\\(!m=0x2209", // not element of ∉ "\\(st=0x220d", // such that ∍ "\\(**=0x2217", // math asterisk ∗ "\\(bu=0x2219", // bullet ∙ "\\(sr=0x221a", // radical √ "\\(pt=0x221d", // proportional ∝ "\\(if=0x221e", // infinity ∞ "\\(an=0x2220", // angle ∠ "\\(l&=0x2227", // logical and ∧ "\\(l|=0x2228", // logical or ∨ "\\(ca=0x2229", // intersection ∩ "\\(cu=0x222a", // union ∪ "\\(is=0x222b", // integral ∫ "\\(tf=0x2234", // therefore ∴ "\\(~==0x2243", // asymptotically equal ≃ "\\(cg=0x2245", // congruent ≅ "\\(~~=0x2248", // almost equal ≈ "\\(!==0x2260", // not equal ≠ "\\(===0x2261", // equivalent ≡ "\\(<==0x2266", // less than or equal ≦ "\\(>==0x2267", // greater than or equal ≧ "\\(sb=0x2282", // proper subset ⊂ "\\(sp=0x2283", // proper superset ⊃ "\\(!b=0x2284", // not subset ⊄ "\\(ib=0x2286", // reflexive subset ⊆ "\\(ip=0x2287", // reflexive superset ⊇ "\\(O+=0x2295", // circle plus ⊕ "\\(O-=0x2296", // circle minus ⊖ "\\(Ox=0x2297", // circle multiply ⊗ "\\(tu=0x22a2", // turnstile ⊢ "\\(Tu=0x22a8", // valid ⊨ "\\(lz=0x22c4", // lozenge ⋄ "\\(el=0x22ef", // ellipses ⋯ "\\(:(=0x2639", // saddy ☹ "\\(:)=0x263a", // white-face smiley ☺ "\\(;)=0x263b", // dark-face smiley ☻ "\(!!=0x00a1", // spanish initial ! ¡ "\(c$=0x00a2", // cent ¢ "\(l$=0x00a3", // pound sterling £ "\(g$=0x00a4", // general currency ¤ "\(y$=0x00a5", // yen ¥ "\(||=0x00a6", // broken vertical bar ¦ "\(SS=0x00a7", // section symbol § "\(\"\"=0x00a8", // dieresis ¨ "\(cO=0x00a9", // copyright © "\(sa=0x00aa", // super a, feminine ordinal ª "\(<<=0x00ab", // left angle quotation « "\(no=0x00ac", // not sign, hooked overbar ¬ "\(--=0x00ad", // soft hyphen ­ "\(rO=0x00ae", // registered trademark ® "\(__=0x00af", // macron ¯ "\(de=0x00b0", // degree ° "\(+-=0x00b1", // plus-minus ± "\(s2=0x00b2", // sup 2 ² "\(s3=0x00b3", // sup 3 ³ "\(\'\'=0x00b4", // acute accent ´ "\(mi=0x00b5", // micron µ "\(pg=0x00b6", // paragraph (pilcrow) ¶ "\(..=0x00b7", // centered . · "\(,,=0x00b8", // cedilla ¸ "\(s1=0x00b9", // sup 1 ¹ "\(so=0x00ba", // super o, masculine ordinal º "\(>>=0x00bb", // right angle quotation » "\(14=0x00bc", // 1/4 ¼ "\(12=0x00bd", // 1/2 ½ "\(34=0x00be", // 3/4 ¾ "\(??=0x00bf", // spanish initial ? ¿ "\(`A=0x00c0", // A grave À "\(\'A=0x00c1", // A acute Á "\(^A=0x00c2", // A circumflex  "\(~A=0x00c3", // A tilde à "\(\"A=0x00c4", // A dieresis Ä "\(oA=0x00c5", // A circle Å "\(AE=0x00c6", // AE ligature Æ "\(,C=0x00c7", // C cedilla Ç "\(`E=0x00c8", // E grave È "\(\'E=0x00c9", // E acute É "\(^E=0x00ca", // E circumflex Ê "\(\"E=0x00cb", // E dieresis Ë "\(`I=0x00cc", // I grave Ì "\(\'I=0x00cd", // I acute Í "\(^I=0x00ce", // I circumflex Î "\(\"I=0x00cf", // I dieresis Ï "\(D-=0x00d0", // Eth Ð "\(~N=0x00d1", // N tilde Ñ "\(`O=0x00d2", // O grave Ò "\(\'O=0x00d3", // O acute Ó "\(^O=0x00d4", // O circumflex Ô "\(~O=0x00d5", // O tilde Õ "\(\"O=0x00d6", // O dieresis Ö "\(mu=0x00d7", // times sign × "\(/O=0x00d8", // O slash Ø "\(`U=0x00d9", // U grave Ù "\(\'U=0x00da", // U acute Ú "\(^U=0x00db", // U circumflex Û "\(\"U=0x00dc", // U dieresis Ü "\(\'Y=0x00dd", // Y acute Ý "\(|P=0x00de", // Thorn Þ "\(ss=0x00df", // sharp s ß "\(`a=0x00e0", // a grave à "\(\'a=0x00e1", // a acute á "\(^a=0x00e2", // a circumflex â "\(~a=0x00e3", // a tilde ã "\(\"a=0x00e4", // a dieresis ä "\(oa=0x00e5", // a circle å "\(ae=0x00e6", // ae ligature æ "\(,c=0x00e7", // c cedilla ç "\(`e=0x00e8", // e grave è "\(\'e=0x00e9", // e acute é "\(^e=0x00ea", // e circumflex ê "\(\"e=0x00eb", // e dieresis ë "\(`i=0x00ec", // i grave ì "\(\'i=0x00ed", // i acute í "\(^i=0x00ee", // i circumflex î "\(\"i=0x00ef", // i dieresis ï "\(d-=0x00f0", // eth ð "\(~n=0x00f1", // n tilde ñ "\(`o=0x00f2", // o grave ò "\(\'o=0x00f3", // o acute ó "\(^o=0x00f4", // o circumflex ô "\(~o=0x00f5", // o tilde õ "\(\"o=0x00f6", // o dieresis ö "\(-:=0x00f7", // divide sign ÷ "\(/o=0x00f8", // o slash ø "\(`u=0x00f9", // u grave ù "\(\'u=0x00fa", // u acute ú "\(^u=0x00fb", // u circumflex û "\(\"u=0x00fc", // u dieresis ü "\(\'y=0x00fd", // y acute ý "\(|p=0x00fe", // thorn þ "\(\"y=0x00ff", // y dieresis ÿ "\(wk=0x2654", // chess white king ♔ "\(wq=0x2655", // chess white queen ♕ "\(wr=0x2656", // chess white rook ♖ "\(wb=0x2657", // chess white bishop ♗ "\(wn=0x2658", // chess white knight ♘ "\(wp=0x2659", // chess white pawn ♙ "\(bk=0x265a", // chess black king ♚ "\(bq=0x265b", // chess black queen ♛ "\(br=0x265c", // chess black rook ♜ "\(bb=0x265d", // chess black bishop ♝ "\(bn=0x265e", // chess black knight ♞ "\(bp=0x265f", // chess black pawn ♟ "\(*a=0x03b1", // alpha α "\(*b=0x03b2", // beta β "\(*g=0x03b3", // gamma γ "\(*d=0x03b4", // delta δ "\(*e=0x03b5", // epsilon ε "\(*z=0x03b6", // zeta ζ "\(*y=0x03b7", // eta η "\(*h=0x03b8", // theta θ "\(*i=0x03b9", // iota ι "\(*k=0x03ba", // kappa κ "\(*l=0x03bb", // lambda λ "\(*m=0x03bc", // mu μ "\(*n=0x03bd", // nu ν "\(*c=0x03be", // xsi ξ "\(*o=0x03bf", // omicron ο "\(*p=0x03c0", // pi π "\(*r=0x03c1", // rho ρ "\(ts=0x03c2", // terminal sigma ς "\(*s=0x03c3", // sigma σ "\(*t=0x03c4", // tau τ "\(*u=0x03c5", // upsilon υ "\(*f=0x03c6", // phi φ "\(*x=0x03c7", // chi χ "\(*q=0x03c8", // psi ψ "\(*A=0x0391", // Alpha Α "\(*B=0x0392", // Beta Β "\(*G=0x0393", // Gamma Γ "\(*D=0x0394", // Delta Δ "\(*E=0x0395", // Epsilon Ε "\(*Z=0x0396", // Zeta Ζ "\(*Y=0x0397", // Eta Η "\(*H=0x0398", // Theta Θ "\(*I=0x0399", // Iota Ι "\(*K=0x039a", // Kappa Κ "\(*L=0x039b", // Lambda Λ "\(*M=0x039c", // Mu Μ "\(*N=0x039d", // Nu Ν "\(*C=0x039e", // Xsi Ξ "\(*O=0x039f", // Omicron Ο "\(*P=0x03a0", // Pi Π "\(*R=0x03a1", // Rho Ρ "\(*S=0x03a3", // Sigma Σ "\(*T=0x03a4", // Tau Τ "\(*U=0x03a5", // Upsilon Υ "\(*F=0x03a6", // Phi Φ "\(*X=0x03a7", // Chi Χ "\(*Q=0x03a8", // Psi Ψ "\(*W=0x03a9", // Omega Ω "\(<-=0x2190", // left arrow ← "\(ua=0x2191", // up arrow ↑ "\(->=0x2192", // right arrow → "\(da=0x2193", // down arrow ↓ "\(ab=0x2194", // arrow both ↔ "\(V 0x3D =0x21d0", // left double-line arrow ⇐ "\( 0x3D V=0x21d2", // right double-line arrow ⇒ "\(fa=0x2200", // forall ∀ "\(te=0x2203", // there exists ∃ "\(pd=0x2202", // partial differential ∂ "\(es=0x2205", // empty set ∅ "\(De=0x2206", // delta ∆ "\(gr=0x2207", // gradient ∇ "\(mo=0x2208", // element of ∈ "\(!m=0x2209", // not element of ∉ "\(st=0x220d", // such that ∍ "\(**=0x2217", // math asterisk ∗ "\(bu=0x2219", // bullet ∙ "\(sr=0x221a", // radical √ "\(pt=0x221d", // proportional ∝ "\(if=0x221e", // infinity ∞ "\(an=0x2220", // angle ∠ "\(l&=0x2227", // logical and ∧ "\(l|=0x2228", // logical or ∨ "\(ca=0x2229", // intersection ∩ "\(cu=0x222a", // union ∪ "\(is=0x222b", // integral ∫ "\(tf=0x2234", // therefore ∴ "\(~ 0x3D =0x2243", // asymptotically equal ≃ "\(cg=0x2245", // congruent ≅ "\(~~=0x2248", // almost equal ≈ "\(! 0x3D =0x2260", // not equal ≠ "\( 0x3D 0x3D =0x2261", // equivalent ≡ "\(< 0x3D =0x2266", // less than or equal ≦ "\(> 0x3D =0x2267", // greater than or equal ≧ "\(sb=0x2282", // proper subset ⊂ "\(sp=0x2283", // proper superset ⊃ "\(!b=0x2284", // not subset ⊄ "\(ib=0x2286", // reflexive subset ⊆ "\(ip=0x2287", // reflexive superset ⊇ "\(O+=0x2295", // circle plus ⊕ "\(O-=0x2296", // circle minus ⊖ "\(Ox=0x2297", // circle multiply ⊗ "\(tu=0x22a2", // turnstile ⊢ "\(Tu=0x22a8", // valid ⊨ "\(lz=0x22c4", // lozenge ⋄ "\(el=0x22ef", // ellipses ⋯ "\(:(=0x2639", // saddy ☹ "\(:)=0x263a", // white-face smiley ☺ "\(;)=0x263b", // dark-face smiley ☻ ./mytool/kmap/Mongolian.kmap0000644000175000017500000001040207630411460016103 0ustar henrichhenrich// Mongolian input table that follows the standard keyboard for Yudit // 2003-2-19 by Natsagdorj Shagdar // Additions and improvements are welcome // General table for Mongolian "~=0x2116", // № = NUMERO SIGN "!=0x0031", // 1 = DIGIT ONE "@=0x0032", // 2 = DIGIT TWO "#=0x0033", // 3 = DIGIT THREE "$=0x0034", // 4 = DIGIT FOUR "%=0x0035", // 5 = DIGIT FIVE "^=0x0036", // 6 = DIGIT SIX "&=0x0037", // 7 = DIGIT SEVEN "*=0x0038", // 8 = DIGIT EIGHT "(=0x0039", // 9 = DIGIT NINE ")=0x0030", // 0 = DIGIT ZERO "0x5F=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "0x2B=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCH "Q=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "W=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "E=0x0423", // У = CYRILLIC CAPITAL LETTER U "R=0x0416", // Ж- = CYRILLIC CAPITAL LETTER ZHE "T=0x042D", // Э = CYRILLIC CAPITAL LETTER E "Y=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "U=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "I=0x0428", // Ш = CYRILLIC CAPITAL LETTER SH "O=0x04AE", // Ү = CYRILLIC CAPITAL LETTER STRAIGHT U "P=0x0417", // З- = CYRILLIC CAPITAL LETTER ZE "0x28=0x041A", // К = CYRILLIC CAPITAL LETTER KA "A=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "S=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "D=0x0411", // Б = CYRILLIC CAPITAL LETTER BE "F=0x04E8", // Ө=CYRILLIC CAPITAL LETTER BARRED O "G=0x0410", // А = CYRILLIC CAPITAL LETTER A "H=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "J=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "K=0x041E", // О = CYRILLIC CAPITAL LETTER O "L=0x041B", // Л = CYRILLIC CAPITAL LETTER EL ":=0x0414", // Д = CYRILLIC CAPITAL LETTER DE "0x22=0x041F", // П = CYRILLIC CAPITAL LETTER PE "0x7C=0x002F", // /=SOLIDUS "Z=0x042F", // Я = CYRILLIC CAPITAL LETTER YA "X=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "C=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "V=0x0421", // С = CYRILLIC CAPITAL LETTER ES "B=0x041C", // М = CYRILLIC CAPITAL LETTER EM "N=0x0418", // И = CYRILLIC CAPITAL LETTER I "0x29=0x042A", // Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "M=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "0x3C=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "0x3E=0x0412", // В = CYRILLIC CAPITAL LETTER VE "0x3F=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU // Same, but lower case; "`=0x002B", // + = PLUS SIGN "0x31=0x0021", // ! = EXCLAMATION MARK "0x32=0x002D", // - = HIPHEN-MINUS "0x33=0x0022", // " = QUOTATION MARK "0x34=0x20AE", // T = MONGOLIAN CURRENCY SYMBOL "0x35=0x0025", // % = PERCENT SIGN "0x36=0x002E", // . = FULL STOP "0x37=0x003F", // ? = QUESTION MARK "0x38=0x002C", // , = COMMA "0x39=0x0028", // ( = LEFT PARENTHESIS "0x30=0x0029", // ) = RIGHT PARENTHESIS "-=0x0435", // е = CYRILLIC SMALL LETTER IE "0x3d=0x0449", // щ = CYRILLIC SMALL LETTER SHCH "q=0x0444", // ф = CYRILLIC SMALL LETTER EF "w=0x0446", // ц = CYRILLIC SMALL LETTER TSE "e=0x0443", // у = CYRILLIC SMALL LETTER U "r=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "t=0x044D", // э = CYRILLIC SMALL LETTER E "y=0x043D", // н = CYRILLIC SMALL LETTER EN "u=0x0433", // г = CYRILLIC SMALL LETTER GHE "i=0x0448", // ш = CYRILLIC SMALL LETTER SH "o=0x04AF", // ү = CYRILLIC SMALL LETTER STRAIGHT U "p=0x0437", // з = CYRILLIC SMALL LETTER ZE "[=0x043A", // к = CYRILLIC SMALL LETTER KA "a=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "s=0x044B", // ы = CYRILLIC SMALL LETTER YERU "d=0x0431", // б = CYRILLIC SMALL LETTER BE "f=0x04E9", // ө = CYRILLIC SMALL LETTER BARRED O "g=0x0430", // а = CYRILLIC SMALL LETTER A "h=0x0445", // х = CYRILLIC SMALL LETTER HA "j=0x0440", // р = CYRILLIC SMALL LETTER ER "k=0x043E", // о = CYRILLIC SMALL LETTER O "l=0x043B", // л = CYRILLIC SMALL LETTER EL ";=0x0434", // д = CYRILLIC SMALL LETTER DE "'=0x043F", // п = CYRILLIC SMALL LETTER PE "0x5C=0x005C", // \ = REVERSE SOLIDUS "z=0x044F", // я = CYRILLIC SMALL LETTER YA "x=0x0447", // ч = CYRILLIC SMALL LETTER CHE "c=0x0451", // ё = CYRILLIC SMALL LETTER IO "v=0x0441", // с = CYRILLIC SMALL LETTER ES "b=0x043C", // м = CYRILLIC SMALL LETTER EM "n=0x0438", // и = CYRILLIC SMALL LETTER I "]=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "m=0x0442", // т = CYRILLIC SMALL LETTER TE ",=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN ".=0x0432", // в = CYRILLIC SMALL LETTER VE "/=0x044E", // ю = CYRILLIC SMALL LETTER YU./mytool/kmap/ArabTeX.kmap0000644000175000017500000000532107757701560015467 0ustar henrichhenrich// This kmap is based on key combinations very similar to those // used by ArabTeX. // Alberto Corbi Bellot // "uN=0x064C" // 064C@ ARABIC DAMMATAN "u=0x064F" // 064F@ ARABIC DAMMA "&=0x0651" // ʋ ARABIC SHADDA "a=0x064E" // 064E@ ARABIC FATHA "o=0x0652" // ʌ ARABIC SUKUN ",=0x060C" // 060C< ARABIC COMMA "-=0x0640" // ʀ ARABIC TATWEEL "0x30=0x0660" // ʔ ARABIC-INDIC DIGIT ZERO "0x31=0x0661" // ʕ ARABIC-INDIC DIGIT ONE "0x32=0x0662" // ʖ ARABIC-INDIC DIGIT TWO "0x33=0x0663" // ʗ ARABIC-INDIC DIGIT THREE "0x34=0x0664" // ʘ ARABIC-INDIC DIGIT FOUR "0x35=0x0665" // ʙ ARABIC-INDIC DIGIT FIVE "0x36=0x0666" // ʚ ARABIC-INDIC DIGIT SIX "0x37=0x0667" // ʛ ARABIC-INDIC DIGIT SEVEN "0x38=0x0668" // ʜ ARABIC-INDIC DIGIT EIGHT "0x39=0x0669" // ʝ ARABIC-INDIC DIGIT NINE ";=0x061B" // 061B= ARABIC SEMICOLON "?=0x061F" // 061F= ARABIC QUESTION MARK "'=0x0621" // ɭ ARABIC LETTER HAMZA "aN=0x064B" // 064B@ ARABIC FATHATAN "iN=0x064D" // 064D@ ARABIC KASRATAN "i=0x0650" // ʊ ARABIC KASRA "A=0x0627" // ɳ ARABIC LETTER ALEF "'i=0x0625" // ɱ ARABIC LETTER ALEF WITH HAMZA BELOW "'a=0x0623" // ɯ ARABIC LETTER ALEF WITH HAMZA ABOVE "'A=0x0622" // ɮ ARABIC LETTER ALEF WITH MADDA ABOVE "b=0x0628" // ɴ ARABIC LETTER BEH ".s=0x0635" // ɻ ARABIC LETTER SAD "d=0x062F" // 062F> ARABIC LETTER DAL ".d=0x0636" // ɼ ARABIC LETTER DAD "_d=0x0630" // ɶ ARABIC LETTER THAL "`=0x0639" // ɿ ARABIC LETTER AIN "f=0x0641" // ʁ ARABIC LETTER FEH "^g=0x062C" // 062C> ARABIC LETTER JEEM "h=0x0647" // ʇ ARABIC LETTER HEH "hH=0x0681" // ʩ ARABIC LETTER HAH WITH HAMZA ABOVE ".h=0x062D" // 062D> ARABIC LETTER HAH ".g=0x063A" // 063A? ARABIC LETTER GHAIN "_A=0x0649" // ʉ ARABIC LETTER ALEF MAKSURA "k=0x0643" // ʃ ARABIC LETTER KAF "l=0x0644" // ʄ ARABIC LETTER LAM "m=0x0645" // ʅ ARABIC LETTER MEEM "n=0x0646" // ʆ ARABIC LETTER NOON "q=0x0642" // ʂ ARABIC LETTER QAF "r=0x0631" // ɷ ARABIC LETTER REH "s=0x0633" // ɹ ARABIC LETTER SEEN "^s=0x0634" // ɺ ARABIC LETTER SHEEN "t=0x062A" // 062A> ARABIC LETTER TEH ".t=0x0637" // ɽ ARABIC LETTER TAH "_t=0x062B" // 062B> ARABIC LETTER THEH "T=0x0629" // ɵ ARABIC LETTER TEH MARBUTA "w=0x0648" // ʈ ARABIC LETTER WAW "'u=0x0624" // ɰ ARABIC LETTER WAW WITH HAMZA ABOVE "_h=0x062E" // 062E> ARABIC LETTER KHAH "y=0x064A" // 064A@ ARABIC LETTER YEH "'y=0x0626" // ɲ ARABIC LETTER YEH WITH HAMZA ABOVE "z=0x0632" // ɸ ARABIC LETTER ZAIN ".z=0x0638" // ɾ ARABIC LETTER ZAH // // Shaping part using shape.mys. Autogenerated. // "l 'A=0x0644 0x0622", // لآ LAM ALEF WITH MADDA ABOVE "l 'a=0x0644 0x0623", // لأ LAM ALEF WITH HAMZA ABOVE "l 'i=0x0644 0x0625", // لإ LAM ALEF WITH HAMZA BELOW "l A=0x0644 0x0627", // لا LAM ALEF // // End of shaping part. Autogenerated. // ./mytool/kmap/Persian.kmap0000644000175000017500000000267207737457032015610 0ustar henrichhenrich// Persian.kmap for Yudit by Roozbeh Pournader // 2002-10-27 The FarsiWeb Project Group // This section is the standard ISIRI 2901:1994 "0x09=0x0009", "0x20=0x0020", "!=0x0021", "\"=0x061B", "#=0x066B", "$=0xFDFC", "%=0x066A", "&=0x060C", "'=0x06AF", "(=0x0029", ")=0x0028", "*=0x002A", "+=0x002B", ",=0x0648", "-=0x002D", ".=0x002E", "/=0x002F", "0x30=0x06F0", "0x31=0x06F1", "0x32=0x06F2", "0x33=0x06F3", "0x34=0x06F4", "0x35=0x06F5", "0x36=0x06F6", "0x37=0x06F7", "0x38=0x06F8", "0x39=0x06F9", ":=0x003A", ";=0x06A9", "<=0x003E", "0x3D=0x003D", ">=0x003C", "?=0x061F", "@=0x066C", "A=0x0624", "B=0x200C", "C=0x0698", "D=0x064A", "E=0x064D", "F=0x0625", "G=0x0623", "H=0x0622", "I=0x0651", "J=0x0629", "K=0x00BB", "L=0x00AB", "M=0x0621", "O=0x005D", "P=0x005B", "Q=0x0652", "R=0x064B", "S=0x0626", "T=0x064F", "U=0x064E", "W=0x064C", "Y=0x0650", "Z=0x0643", "[=0x062C", "\\=0x005C", "]=0x0686", "^=0x00D7", "_=0x0640", "`=0x200D", "a=0x0634", "b=0x0630", "c=0x0632", "d=0x06CC", "e=0x062B", "f=0x0628", "g=0x0644", "h=0x0627", "i=0x0647", "j=0x062A", "k=0x0646", "l=0x0645", "m=0x067E", "n=0x062F", "o=0x062E", "p=0x062D", "q=0x0636", "r=0x0642", "s=0x0633", "t=0x0641", "u=0x0639", "v=0x0631", "w=0x0635", "x=0x0637", "y=0x063A", "z=0x0638", "{=0x007D", "|=0x007C", "}=0x007B", // This section is FarsiWeb *non-standard* additions, and are not final. // *These may change*! "~=0x0653", "N=0x0654", "V=0x0670", "X=0x0649", ./mytool/kmap/Oriya-Inscript.kmap0000644000175000017500000001042607765355504017061 0ustar henrichhenrich// Ori-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri //ORIYA letters "X=0x0B01", // ORIYA SIGN CANDRABINDU "x=0x0B02", // ORIYA SIGN ANUSVARA "_=0x0B03", // ORIYA SIGN VISARGA //"=0x0B04", // ORIYA LETTER "D=0x0B05", // ORIYA LETTER A "E=0x0B06", // ORIYA LETTER AA "F=0x0B07", // ORIYA LETTER I "R=0x0B08", // ORIYA LETTER II "G=0x0B09", // ORIYA LETTER U "T=0x0B0A", // ORIYA LETTER UU "+=0x0B0B", // ORIYA LETTER VOCALIC R "&=0x0B0C", // ORIYA LETTER VOCALIC L //"!=0x0B0D", // ORIYA LETTER CANDRA E //"Z=0x0B0E", // ORIYA LETTER SHORT E "S=0x0B0F", // ORIYA LETTER E "W=0x0B10", // ORIYA LETTER AI //"|=0x0B11", // ORIYA LETTER CANDRA O //"~=0x0B12", // ORIYA LETTER SHORT O "A=0x0B13", // ORIYA LETTER O "Q=0x0B14", // ORIYA LETTER AU "k=0x0B15", // ORIYA LETTER KA "K=0x0B16", // ORIYA LETTER KHA "i=0x0B17", // ORIYA LETTER GA "I=0x0B18", // ORIYA LETTER GHA "U=0x0B19", // ORIYA LETTER NGA ";=0x0B1A", // ORIYA LETTER CA ":=0x0B1B", // ORIYA LETTER CHA "p=0x0B1C", // ORIYA LETTER JA "P=0x0B1D", // ORIYA LETTER JHA "}=0x0B1E", // ORIYA LETTER NYA "'=0x0B1F", // ORIYA LETTER TTA "\"=0x0B20", // ORIYA LETTER TTHA "[=0x0B21", // ORIYA LETTER DDA "{=0x0B22", // ORIYA LETTER DDHA "C=0x0B23", // ORIYA LETTER NNA "l=0x0B24", // ORIYA LETTER TA "L=0x0B25", // ORIYA LETTER THA "o=0x0B26", // ORIYA LETTER DA "O=0x0B27", // ORIYA LETTER DHA "v=0x0B28", // ORIYA LETTER NA //"V=0x0B29", // ORIYA LETTER NNNA "h=0x0B2A", // ORIYA LETTER PA "H=0x0B2B", // ORIYA LETTER PHA "y=0x0B2C", // ORIYA LETTER BA "Y=0x0B2D", // ORIYA LETTER BHA "c=0x0B2E", // ORIYA LETTER MA "/=0x0B2F", // ORIYA LETTER YA "j=0x0B30", // ORIYA LETTER RA //"J=0x0B31", // ORIYA LETTER RRA "n=0x0B32", // ORIYA LETTER LA "N=0x0B33", // ORIYA LETTER LLA //"B=0x0B34", // ORIYA LETTER LLLA //"b=0x0B35", // ORIYA LETTER VA "M=0x0B36", // ORIYA LETTER SHA "<=0x0B37", // ORIYA LETTER SSA "m=0x0B38", // ORIYA LETTER SA "u=0x0B39", // ORIYA LETTER HA //"=0x0B3A", // ORIYA LETTER //"=0x0B3B", // ORIYA LETTER "]=0x0B3C", // ORIYA SIGN NUKTA "#=0x0B3D", // ORIYA SIGN AVAGRAHA "e=0x0B3E", // ORIYA VOWEL SIGN AA "f=0x0B3F", // ORIYA VOWEL SIGN I "r=0x0B40", // ORIYA VOWEL SIGN II "g=0x0B41", // ORIYA VOWEL SIGN U "t=0x0B42", // ORIYA VOWEL SIGN UU "\==0x0B43", // ORIYA VOWEL SIGN VOCALIC R //"$=0x0B44", // ORIYA VOWEL SIGN VOCALIC RR //"@=0x0B45", // ORIYA VOWEL SIGN CANDRA E //"z=0x0B46", // ORIYA VOWEL SIGN SHORT E "s=0x0B47", // ORIYA VOWEL SIGN E "w=0x0B48", // ORIYA VOWEL SIGN AI //"\ \=0x0B49", // ORIYA VOWEL SIGN CANDRA O //"`=0x0B4A", // ORIYA VOWEL SIGN SHART O "a=0x0B4B", // ORIYA VOWEL SIGN O "q=0x0B4C", // ORIYA VOWEL SIGN OU "d=0x0B4D", // ORIYA SIGN VIRMA //"=0x0B4E", // ORIYA LETTER //"=0x0B4F", // ORIYA LETTER //"%=0x0B50", // ORIYA OM //"=0x0B51", // ORIYA STRESS SIGN UDATTA //"=0x0B52", // ORIYA STRESS SIGN ANUDATTA //"=0x0B53", // ORIYA GRAVE ACCENT //"=0x0B54", // ORIYA ACUTE ACCENT //"=0x0B55", // ORIYA LETTER //"=0x0B56", // ORIYA LETTER //"=0x0B57", // ORIYA LETTER //"k]=0x0B58", // ORIYA LETTER QA //"K]=0x0B59", // ORIYA LETTER KHHA //"i]=0x0B5A", // ORIYA LETTER GHHA //"p]=0x0B5B", // ORIYA LETTER ZA //"[]=0x0B5C", // ORIYA LETTER DDDHA //"{]=0x0B5D", // ORIYA LETTER RHA //"H]=0x0B5E", // ORIYA LETTER FA "?=0x0B5F", // ORIYA LETTER YYA "^=0x0B60", // ORIYA LETTER VOCALIC RR "*=0x0B61", // ORIYA LETTER VOCALIC LL //"(=0x0B62", // ORIYA VOWEL SIGN VOCALIC L //")=0x0B63", // ORIYA VOWEL SIGN VOCALIC LL //">=0x0B64", // ORIYA DANDA //">>=0x0B65", // ORIYA DOUBLE DANDA "0x30=0x0B66", // ORIYA DIGIT ZERO "0x31=0x0B67", // ORIYA DIGIT ONE "0x32=0x0B68", // ORIYA DIGIT TWO "0x33=0x0B69", // ORIYA DIGIT THREE "0x34=0x0B6A", // ORIYA DIGIT FOUR "0x35=0x0B6B", // ORIYA DIGIT FIVE "0x36=0x0B6C", // ORIYA DIGIT SIX "0x37=0x0B6D", // ORIYA DIGIT SEVEN "0x38=0x0B6E", // ORIYA DIGIT EIGHT "0x39=0x0B6F", // ORIYA DIGIT NINE ".=0x0B70", // ORIYA ABBREVIATION SIGN //"=0x0B71", // ORIYA LETTER //"=0x0B72", // ORIYA LETTER //"=0x0B73", // ORIYA LETTER //"=0x0B74", // ORIYA LETTER //"=0x0B75", // ORIYA LETTER //"=0x0B76", // ORIYA LETTER //"=0x0B77", // ORIYA LETTER //"=0x0B78", // ORIYA LETTER //"=0x0B79", // ORIYA LETTER //"=0x0B7A", // ORIYA LETTER //"=0x0B7B", // ORIYA LETTER //"=0x0B7C", // ORIYA LETTER //"=0x0B7D", // ORIYA LETTER //"=0x0B7E", // ORIYA LETTER //"=0x0B7F", // ORIYA LETTER ./mytool/kmap/Tibetan-Wylie.kmap0000644000175000017500000010640707765352164016666 0ustar henrichhenrich// Tibetan kmap according to Wylie transliteration // // version 1.0beta2, 2003-11-30 // License: GPL, (C) Gregory Mokhin, < mokhin__at___bog.msu.ru > // // Mostly conforming to Extended Wylie transliteration scheme // proposed by THDL group - visit http://www.thdl.org for more details. // Some simplifications were made to EWTS scheme to allow for easy typing. // // Version beta2 change: fixed wrong entries for na + subscript ya // // Independent vowels "a=0x0f68", "aa=0x0f68 0xf71", "A=0x0f68 0xf71", "i=0x0f68 0xf72", "ii=0x0f68 0xf71 0xf72", "I=0x0f68 0xf80", "II=0x0f68 0xf71 0xf80", "u=0x0f68 0xf74", "uu=0x0f68 0xf71 0xf74", "U=0x0f68 0xf71 0xf74", "e=0x0f68 0xf7a", "ee=0x0f68 0xf71 0xf7a", "E=0x0f68 0xf71 0xf7a", "o=0x0f68 0xf7c", "oo=0x0f68 0xf71 0xf7c", "O=0x0f68 0xf71 0xf7c", "ai=0x0f68 0xf7b", "au=0x0f68 0xf7d", // Numbers "0x30=0x0f20", "0x31=0x0f21", "0x32=0x0f22", "0x33=0x0f23", "0x34=0x0f24", "0x35=0x0f25", "0x36=0x0f26", "0x37=0x0f27", "0x38=0x0f28", "0x39=0x0f29", // Punctuation - fully conforming to EWTS "0x20=0x0f0b", // tsheg "*=0x0f0c", // non-breaking tsheg, doesn't allow line break after it "_=0x20", // blank space, input by underscore "x=0x20", // or 'x' key, that is a little bit easier to type "/=0x0f0d", // shad ";=0x0f0f", // tsheg shad "|=0x0f11", // rin chen spungs shad "0x21=0x0f08", // ! == sbrul shad ":=0x0f14", // gter tsheg "[=0x0f10", // nyis tsheg shad "]=0x0f12", // rgya gram shad "`=0x0f13", // dzud rtags me long can "@=0x0f04", // yig mgo mdun ma (initial) "#=0x0f05", // yig mgo sgab ma (truncated) "$=0x0f06", // shad "%=0x0f07", // shad "0x3d=0x0f34", // equal sign '=' == bsdus rtags "<=0x0f3a", // gug rtags gyon (left) ">=0x0f3b", // gug rtags gyas (right) "(=0x0f3c", // ang khang gyon (left) ")=0x0f3d", // ang khang gyas (right) "{=0x0f3e", // yar tshes "}=0x0f3f", // mar tshes // consonants + ( vowels / subjoined letters) // arranged in order of Tibetan alphabet: // ka kha ga nga ca cha ja nya ta tha da na pa pha ba ma // tsa tsha dza wa zha za 'a ya ra la sha sa ha a // ka "k=0x0f40", "ka=0x0f40", "kaa=0x0f40 0x0f71", "kA=0x0f40 0x0f71", "ki=0x0f40 0x0f72", "kii=0x0f40 0x0f71 0x0f72", "kI=0x0f40 0x0f80", "kII=0x0f40 0x0f71 0x0f80", "kai=0x0f40 0x0f7b", "kau=0x0f40 0x0f7d", "ke=0x0f40 0x0f7a", "kee=0x0f40 0x0f71 0x0f7a", "kE=0x0f40 0x0f71 0x0f7a", "ko=0x0f40 0x0f7c", "koo=0x0f40 0x0f71 0x0f7c", "kO=0x0f40 0x0f71 0x0f7c", "ku=0x0f40 0x0f74", "kuu=0x0f40 0x0f71 0x0f74", "kU=0x0f40 0x0f71 0x0f74", "kk=0x0f40 0x0f90", "kka=0x0f40 0x0f90", "kki=0x0f40 0x0f90 0xf72", "kku=0x0f40 0x0f90 0xf74", "kke=0x0f40 0x0f90 0xf7a", "kko=0x0f40 0x0f90 0xf7c", "kw=0x0f40 0x0fad", "kwa=0x0f40 0x0fad", "ky=0x0f40 0x0fb1", "kya=0x0f40 0x0fb1", "kyi=0x0f40 0x0fb1 0xf72", "kyu=0x0f40 0x0fb1 0xf74", "kye=0x0f40 0x0fb1 0xf7a", "kyo=0x0f40 0x0fb1 0xf7c", "kr=0x0f40 0x0fb2", "kra=0x0f40 0x0fb2", "kri=0x0f40 0x0fb2 0xf72", "kru=0x0f40 0x0fb2 0xf74", "kre=0x0f40 0x0fb2 0xf7a", "kro=0x0f40 0x0fb2 0xf7c", "kl=0x0f40 0x0fb3", "kla=0x0f40 0x0fb3", "klu=0x0f40 0x0fb3 0x0f74", "klo=0x0f40 0x0fb3 0x0f7c", // kha "kh=0x0f41", "kha=0x0f41", "khi=0x0f41 0xf72", "khu=0x0f41 0xf74", "khe=0x0f41 0xf7a", "kho=0x0f41 0xf7c", "khw=0x0f41 0x0fad", "khwa=0x0f41 0x0fad", "khy=0x0f41 0x0fb1", "khya=0x0f41 0x0fb1", "khyi=0x0f41 0x0fb1 0xf72", "khyu=0x0f41 0x0fb1 0xf74", "khye=0x0f41 0x0fb1 0xf7a", "khyo=0x0f41 0x0fb1 0xf7c", "khr=0x0f41 0x0fb2", "khra=0x0f41 0x0fb2", "khri=0x0f41 0x0fb2 0xf72", "khru=0x0f41 0x0fb2 0xf74", "khre=0x0f41 0x0fb2 0xf7a", "khro=0x0f41 0x0fb2 0xf7c", // ga "g=0x0f42", "ga=0x0f42", "g.=0x0f42", "gaa=0x0f42 0x0f71", "gA=0x0f42 0x0f71", "gi=0x0f42 0x0f72", "gii=0x0f42 0x0f71 0x0f72", "gI=0x0f42 0x0f80", "gII=0x0f42 0x0f71 0x0f80", "gai=0x0f42 0x0f7b", "gau=0x0f42 0x0f7d", "ge=0x0f42 0x0f7a", "gee=0x0f42 0x0f71 0x0f7a", "gE=0x0f42 0x0f71 0x0f7a", "go=0x0f42 0x0f7c", "goo=0x0f42 0x0f71 0x0f7c", "gO=0x0f42 0x0f71 0x0f7c", "gu=0x0f42 0x0f74", "guu=0x0f42 0x0f71 0x0f74", "gU=0x0f42 0x0f71 0x0f74", "gg=0x0f42 0x0f90", "gga=0x0f42 0x0f90", "ggi=0x0f42 0x0f90 0xf72", "ggu=0x0f42 0x0f90 0xf74", "gge=0x0f42 0x0f90 0xf7a", "ggo=0x0f42 0x0f90 0xf7c", "gw=0x0f42 0x0fad", "gwa=0x0f42 0x0fad", "gy=0x0f42 0x0fb1", "gya=0x0f42 0x0fb1", "gyi=0x0f42 0x0fb1 0xf72", "gyu=0x0f42 0x0fb1 0xf74", "gye=0x0f42 0x0fb1 0xf7a", "gyo=0x0f42 0x0fb1 0xf7c", "gr=0x0f42 0x0fb2", "gra=0x0f42 0x0fb2", "grw=0x0f42 0xfad 0x0fb2", "grwa=0x0f42 0xfad 0x0fb2", "gri=0x0f42 0x0fb2 0xf72", "gru=0x0f42 0x0fb2 0xf74", "gre=0x0f42 0x0fb2 0xf7a", "gro=0x0f42 0x0fb2 0xf7c", "gl=0x0f42 0x0fb3", "gla=0x0f42 0x0fb3", "gli=0x0f42 0x0fb3 0x0f72", "glu=0x0f42 0x0fb3 0x0f74", "gle=0x0f42 0x0fb3 0x0f7a", "glo=0x0f42 0x0fb3 0x0f7c", // nga "ng=0x0f44", "nga=0x0f44", "ngaa=0x0f44 0x0f71", "ngA=0x0f44 0x0f71", "ngi=0x0f44 0x0f72", "ngii=0x0f44 0x0f71 0x0f72", "ngI=0x0f44 0x0f80", "ngII=0x0f44 0x0f71 0x0f80", "ngai=0x0f44 0x0f7b", "ngau=0x0f44 0x0f7d", "nge=0x0f44 0x0f7a", "ngee=0x0f44 0x0f71 0x0f7a", "ngE=0x0f44 0x0f71 0x0f7a", "ngo=0x0f44 0x0f7c", "ngoo=0x0f44 0x0f71 0x0f7c", "ngO=0x0f44 0x0f71 0x0f7c", "ngu=0x0f44 0x0f74", "nguu=0x0f44 0x0f71 0x0f74", "ngU=0x0f44 0x0f71 0x0f74", "ngr=0x0f44 0x0fb2", "ngra=0x0f44 0x0fb2", // ca "c=0x0f45", "ca=0x0f45", "caa=0x0f45 0x0f71", "cA=0x0f45 0x0f71", "ci=0x0f45 0x0f72", "cii=0x0f45 0x0f71 0x0f72", "cI=0x0f45 0x0f80", "cII=0x0f45 0x0f71 0x0f80", "ce=0x0f45 0x0f7a", "cee=0x0f45 0x0f71 0x0f7a", "cE=0x0f45 0x0f71 0x0f7a", "co=0x0f45 0x0f7c", "coo=0x0f45 0x0f71 0x0f7c", "cO=0x0f45 0x0f71 0x0f7c", "cu=0x0f45 0x0f74", "cuu=0x0f45 0x0f71 0x0f74", "cU=0x0f45 0x0f71 0x0f74", "cw=0x0f45 0x0fad", "cwa=0x0f45 0x0fad", // cha "ch=0x0f46", "cha=0x0f46", "chaa=0x0f46 0x0f71", "chA=0x0f46 0x0f71", "chi=0x0f46 0x0f72", "chii=0x0f46 0x0f71 0x0f72", "chI=0x0f46 0x0f80", "chII=0x0f46 0x0f71 0x0f80", "chai=0x0f46 0x0f7b", "chau=0x0f46 0x0f7d", "che=0x0f46 0x0f7a", "chee=0x0f46 0x0f71 0x0f7a", "chE=0x0f46 0x0f71 0x0f7a", "cho=0x0f46 0x0f7c", "choo=0x0f46 0x0f71 0x0f7c", "chO=0x0f46 0x0f71 0x0f7c", "chu=0x0f46 0x0f74", "chuu=0x0f46 0x0f71 0x0f74", "chU=0x0f46 0x0f71 0x0f74", "chw=0x0f46 0x0fad", "chwa=0x0f46 0x0fad", // ja "j=0x0f47", "ja=0x0f47", "jaa=0x0f47 0x0f71", "jA=0x0f47 0x0f71", "ji=0x0f47 0x0f72", "je=0x0f47 0x0f7a", "jee=0x0f47 0x0f71 0x0f7a", "jE=0x0f47 0x0f71 0x0f7a", "jo=0x0f47 0x0f7c", "joo=0x0f47 0x0f71 0x0f7c", "jO=0x0f47 0x0f71 0x0f7c", "ju=0x0f47 0x0f74", "juu=0x0f47 0x0f71 0x0f74", "jU=0x0f47 0x0f71 0x0f74", "jw=0x0f47 0x0fad", "jwa=0x0f47 0x0fad", // nya "ny=0x0f49", "nya=0x0f49", "nyaa=0x0f49 0x0f71", "nyA=0x0f49 0x0f71", "nyi=0x0f49 0x0f72", "nyii=0x0f49 0x0f71 0x0f72", "nyI=0x0f49 0x0f80", "nyII=0x0f49 0x0f71 0x0f80", "nye=0x0f49 0x0f7a", "nyee=0x0f49 0x0f71 0x0f7a", "nyE=0x0f49 0x0f71 0x0f7a", "nyo=0x0f49 0x0f7c", "nyoo=0x0f49 0x0f71 0x0f7c", "nyO=0x0f49 0x0f71 0x0f7c", "nyu=0x0f49 0x0f74", "nyuu=0x0f49 0x0f71 0x0f74", "nyU=0x0f49 0x0f71 0x0f74", "nyw=0x0f49 0x0fad", "nywa=0x0f49 0x0fad", // Ta "T=0x0f4a", "Ta=0x0f4a", "Taa=0x0f4a 0x0f71", "TA=0x0f4a 0x0f71", "Ti=0x0f4a 0x0f72", "Tii=0x0f4a 0x0f71 0x0f72", "TI=0x0f4a 0x0f80", "TII=0x0f4a 0x0f71 0x0f80", "Tai=0x0f4a 0x0f7b", "Tau=0x0f4a 0x0f7d", "Te=0x0f4a 0x0f7a", "Tee=0x0f4a 0x0f71 0x0f7a", "TE=0x0f4a 0x0f71 0x0f7a", "To=0x0f4a 0x0f7c", "Too=0x0f4a 0x0f71 0x0f7c", "TO=0x0f4a 0x0f71 0x0f7c", "Tu=0x0f4a 0x0f74", "Tuu=0x0f4a 0x0f71 0x0f74", "TU=0x0f4a 0x0f71 0x0f74", "Ty=0x0f4a 0x0fb1", "Tya=0x0f4a 0x0fb1", "Tyi=0x0f4a 0x0fb1 0xf72", "Tyu=0x0f4a 0x0fb1 0xf74", "Tye=0x0f4a 0x0fb1 0xf7a", "Tyo=0x0f4a 0x0fb1 0xf7c", "Tr=0x0f4a 0x0fb2", "Tra=0x0f4a 0x0fb2", "Tri=0x0f4a 0x0fb2 0xf72", "Tru=0x0f4a 0x0fb2 0xf74", "Tre=0x0f4a 0x0fb2 0xf7a", "Tro=0x0f4a 0x0fb2 0xf7c", // THa "TH=0x0f4b", "THa=0x0f4b", "THaa=0x0f4b 0x0f71", "THA=0x0f4b 0x0f71", "THi=0x0f4b 0x0f72", "THii=0x0f4b 0x0f71 0x0f72", "THI=0x0f4b 0x0f80", "THII=0x0f4b 0x0f71 0x0f80", "THai=0x0f4b 0x0f7b", "THau=0x0f4b 0x0f7d", "THe=0x0f4b 0x0f7a", "THee=0x0f4b 0x0f71 0x0f7a", "THE=0x0f4b 0x0f71 0x0f7a", "THo=0x0f4b 0x0f7c", "THoo=0x0f4b 0x0f71 0x0f7c", "THO=0x0f4b 0x0f71 0x0f7c", "THu=0x0f4b 0x0f74", "THuu=0x0f4b 0x0f71 0x0f74", "THU=0x0f4b 0x0f71 0x0f74", "THy=0x0f4b 0x0fb1", "THya=0x0f4b 0x0fb1", "THyi=0x0f4b 0x0fb1 0xf72", "THyu=0x0f4b 0x0fb1 0xf74", "THye=0x0f4b 0x0fb1 0xf7a", "THyo=0x0f4b 0x0fb1 0xf7c", "THr=0x0f4b 0x0fb2", "THra=0x0f4b 0x0fb2", "THri=0x0f4b 0x0fb2 0xf72", "THru=0x0f4b 0x0fb2 0xf74", "THre=0x0f4b 0x0fb2 0xf7a", "THro=0x0f4b 0x0fb2 0xf7c", // Da "D=0x0f4c", "Da=0x0f4c", "Daa=0x0f4c 0x0f71", "DA=0x0f4c 0x0f71", "Di=0x0f4c 0x0f72", "Dii=0x0f4c 0x0f71 0x0f72", "DI=0x0f4c 0x0f80", "DII=0x0f4c 0x0f71 0x0f80", "Dai=0x0f4c 0x0f7b", "Dau=0x0f4c 0x0f7d", "De=0x0f4c 0x0f7a", "Dee=0x0f4c 0x0f71 0x0f7a", "DE=0x0f4c 0x0f71 0x0f7a", "Do=0x0f4c 0x0f7c", "Doo=0x0f4c 0x0f71 0x0f7c", "DO=0x0f4c 0x0f71 0x0f7c", "Du=0x0f4c 0x0f74", "Duu=0x0f4c 0x0f71 0x0f74", "DU=0x0f4c 0x0f71 0x0f74", "Dy=0x0f4c 0x0fb1", "Dya=0x0f4c 0x0fb1", "Dyi=0x0f4c 0x0fb1 0xf72", "Dyu=0x0f4c 0x0fb1 0xf74", "Dye=0x0f4c 0x0fb1 0xf7a", "Dyo=0x0f4c 0x0fb1 0xf7c", "Dr=0x0f4c 0x0fb2", "Dra=0x0f4c 0x0fb2", "Dri=0x0f4c 0x0fb2 0xf72", "Dru=0x0f4c 0x0fb2 0xf74", "Dre=0x0f4c 0x0fb2 0xf7a", "Dro=0x0f4c 0x0fb2 0xf7c", // Na "N=0x0f4e", "Na=0x0f4e", "Naa=0x0f4e 0x0f71", "NA=0x0f4e 0x0f71", "Ni=0x0f4e 0x0f72", "Nii=0x0f4e 0x0f71 0x0f72", "NI=0x0f4e 0x0f80", "NII=0x0f4e 0x0f71 0x0f80", "Nai=0x0f4e 0x0f7b", "Nau=0x0f4e 0x0f7d", "Ne=0x0f4e 0x0f7a", "Nee=0x0f4e 0x0f71 0x0f7a", "NE=0x0f4e 0x0f71 0x0f7a", "No=0x0f4e 0x0f7c", "Noo=0x0f4e 0x0f71 0x0f7c", "NO=0x0f4e 0x0f71 0x0f7c", "Nu=0x0f4e 0x0f74", "Nuu=0x0f4e 0x0f71 0x0f74", "NU=0x0f4e 0x0f71 0x0f74", "Ny=0x0f4e 0x0fb1", "Nya=0x0f4e 0x0fb1", "Nyi=0x0f4e 0x0fb1 0xf72", "Nyu=0x0f4e 0x0fb1 0xf74", "Nye=0x0f4e 0x0fb1 0xf7a", "Nyo=0x0f4e 0x0fb1 0xf7c", "Nr=0x0f4e 0x0fb2", "Nra=0x0f4e 0x0fb2", "Nri=0x0f4e 0x0fb2 0xf72", "Nru=0x0f4e 0x0fb2 0xf74", "Nre=0x0f4e 0x0fb2 0xf7a", "Nro=0x0f4e 0x0fb2 0xf7c", // ta "t=0x0f4f", "ta=0x0f4f", "taa=0x0f4f 0x0f71", "tA=0x0f4f 0x0f71", "ti=0x0f4f 0x0f72", "tii=0x0f4f 0x0f71 0x0f72", "tI=0x0f4f 0x0f80", "tII=0x0f4f 0x0f71 0x0f80", "tai=0x0f4f 0x0f7b", "tau=0x0f4f 0x0f7d", "te=0x0f4f 0x0f7a", "tee=0x0f4f 0x0f71 0x0f7a", "tE=0x0f4f 0x0f71 0x0f7a", "to=0x0f4f 0x0f7c", "too=0x0f4f 0x0f71 0x0f7c", "tO=0x0f4f 0x0f71 0x0f7c", "tu=0x0f4f 0x0f74", "tuu=0x0f4f 0x0f71 0x0f74", "tU=0x0f4f 0x0f71 0x0f74", "tw=0x0f4f 0x0fad", "twa=0x0f4f 0x0fad", "ty=0x0f4f 0x0fb1", "tya=0x0f4f 0x0fb1", "tyi=0x0f4f 0x0fb1 0xf72", "tyu=0x0f4f 0x0fb1 0xf74", "tye=0x0f4f 0x0fb1 0xf7a", "tyo=0x0f4f 0x0fb1 0xf7c", "tr=0x0f4f 0x0fb2", "tra=0x0f4f 0x0fb2", "tri=0x0f4f 0x0fb2 0xf72", "tru=0x0f4f 0x0fb2 0xf74", "tre=0x0f4f 0x0fb2 0xf7a", "tro=0x0f4f 0x0fb2 0xf7c", // tha "th=0x0f50", "tha=0x0f50", "thaa=0x0f50 0x0f71", "thA=0x0f50 0x0f71", "thi=0x0f50 0x0f72", "thii=0x0f50 0x0f71 0x0f72", "thI=0x0f50 0x0f80", "thII=0x0f50 0x0f71 0x0f80", "thai=0x0f50 0x0f7b", "thau=0x0f50 0x0f7d", "the=0x0f50 0x0f7a", "thee=0x0f50 0x0f71 0x0f7a", "thE=0x0f50 0x0f71 0x0f7a", "tho=0x0f50 0x0f7c", "thoo=0x0f50 0x0f71 0x0f7c", "thO=0x0f50 0x0f71 0x0f7c", "thu=0x0f50 0x0f74", "thuu=0x0f50 0x0f71 0x0f74", "thU=0x0f50 0x0f71 0x0f74", "thw=0x0f50 0x0fad", "thwa=0x0f50 0x0fad", "thy=0x0f50 0x0fb1", "thya=0x0f50 0x0fb1", "thyi=0x0f50 0x0fb1 0xf72", "thyu=0x0f50 0x0fb1 0xf74", "thye=0x0f50 0x0fb1 0xf7a", "thyo=0x0f50 0x0fb1 0xf7c", "thr=0x0f50 0x0fb2", "thra=0x0f50 0x0fb2", "thri=0x0f50 0x0fb2 0xf72", "thru=0x0f50 0x0fb2 0xf74", "thre=0x0f50 0x0fb2 0xf7a", "thro=0x0f50 0x0fb2 0xf7c", // da "d=0x0f51", "da=0x0f51", "daa=0x0f51 0x0f71", "dA=0x0f51 0x0f71", "di=0x0f51 0x0f72", "dii=0x0f51 0x0f71 0x0f72", "dI=0x0f51 0x0f80", "dII=0x0f51 0x0f71 0x0f80", "dai=0x0f51 0x0f7b", "dau=0x0f51 0x0f7d", "de=0x0f51 0x0f7a", "dee=0x0f51 0x0f71 0x0f7a", "dE=0x0f51 0x0f71 0x0f7a", "do=0x0f51 0x0f7c", "doo=0x0f51 0x0f71 0x0f7c", "dO=0x0f51 0x0f71 0x0f7c", "du=0x0f51 0x0f74", "duu=0x0f51 0x0f71 0x0f74", "dU=0x0f51 0x0f71 0x0f74", "dw=0x0f51 0x0fad", "dwa=0x0f51 0x0fad", "dy=0x0f51 0x0fb1", "dya=0x0f51 0x0fb1", "dyi=0x0f51 0x0fb1 0xf72", "dyu=0x0f51 0x0fb1 0xf74", "dye=0x0f51 0x0fb1 0xf7a", "dyo=0x0f51 0x0fb1 0xf7c", //"dr=0x0f51 0x0fb2", "dra=0x0f51 0x0fb2", "drw=0x0f51 0xfad 0x0fb2", "drwa=0x0f51 0xfad 0x0fb2", "dri=0x0f51 0x0fb2 0xf72", "dru=0x0f51 0x0fb2 0xf74", "dre=0x0f51 0x0fb2 0xf7a", "dro=0x0f51 0x0fb2 0xf7c", // na "n=0x0f53", "na=0x0f53", "naa=0x0f53 0x0f71", "nA=0x0f53 0x0f71", "ni=0x0f53 0x0f72", "nii=0x0f53 0x0f71 0x0f72", "nI=0x0f53 0x0f80", "nII=0x0f53 0x0f71 0x0f80", "nai=0x0f53 0x0f7b", "nau=0x0f53 0x0f7d", "ne=0x0f53 0x0f7a", "nee=0x0f53 0x0f71 0x0f7a", "nE=0x0f53 0x0f71 0x0f7a", "no=0x0f53 0x0f7c", "noo=0x0f53 0x0f71 0x0f7c", "nO=0x0f53 0x0f71 0x0f7c", "nu=0x0f53 0x0f74", "nuu=0x0f53 0x0f71 0x0f74", "nU=0x0f53 0x0f71 0x0f74", "n+y=0x0f53 0x0fb1", "n+ya=0x0f53 0x0fb1", "n+yi=0x0f53 0x0fb1 0xf72", "n+yu=0x0f53 0x0fb1 0xf74", "n+ye=0x0f53 0x0fb1 0xf7a", "n+yo=0x0f53 0x0fb1 0xf7c", "nr=0x0f53 0x0fb2", "nra=0x0f53 0x0fb2", "nri=0x0f53 0x0fb2 0xf72", "nru=0x0f53 0x0fb2 0xf74", "nre=0x0f53 0x0fb2 0xf7a", "nro=0x0f53 0x0fb2 0xf7c", // pa "p=0x0f54", "pa=0x0f54", "paa=0x0f54 0x0f71", "pA=0x0f54 0x0f71", "pi=0x0f54 0x0f72", "pii=0x0f54 0x0f71 0x0f72", "pI=0x0f54 0x0f80", "pII=0x0f54 0x0f71 0x0f80", "pai=0x0f54 0x0f7b", "pau=0x0f54 0x0f7d", "pe=0x0f54 0x0f7a", "pee=0x0f54 0x0f71 0x0f7a", "pE=0x0f54 0x0f71 0x0f7a", "po=0x0f54 0x0f7c", "poo=0x0f54 0x0f71 0x0f7c", "pO=0x0f54 0x0f71 0x0f7c", "pu=0x0f54 0x0f74", "puu=0x0f54 0x0f71 0x0f74", "pU=0x0f54 0x0f71 0x0f74", "py=0x0f54 0x0fb1", "pya=0x0f54 0x0fb1", "pyw=0x0f54 0x0fb1 0x0fad", "pywa=0x0f54 0x0fb1 0x0fad", "pyi=0x0f54 0x0fb1 0xf72", "pyu=0x0f54 0x0fb1 0xf74", "pye=0x0f54 0x0fb1 0xf7a", "pyo=0x0f54 0x0fb1 0xf7c", "pr=0x0f54 0x0fb2", "pra=0x0f54 0x0fb2", "prw=0x0f54 0xfad 0x0fb2", "prwa=0x0f54 0xfad 0x0fb2", "pri=0x0f54 0x0fb2 0xf72", "pru=0x0f54 0x0fb2 0xf74", "pre=0x0f54 0x0fb2 0xf7a", "pro=0x0f54 0x0fb2 0xf7c", // pha "ph=0x0f55", "pha=0x0f55", "phaa=0x0f55 0x0f71", "phA=0x0f55 0x0f71", "phi=0x0f55 0x0f72", "phii=0x0f55 0x0f71 0x0f72", "phI=0x0f55 0x0f80", "phII=0x0f55 0x0f71 0x0f80", "phai=0x0f55 0x0f7b", "phau=0x0f55 0x0f7d", "phe=0x0f55 0x0f7a", "phee=0x0f55 0x0f71 0x0f7a", "phE=0x0f55 0x0f71 0x0f7a", "pho=0x0f55 0x0f7c", "phoo=0x0f55 0x0f71 0x0f7c", "phO=0x0f55 0x0f71 0x0f7c", "phu=0x0f55 0x0f74", "phuu=0x0f55 0x0f71 0x0f74", "phU=0x0f55 0x0f71 0x0f74", "phy=0x0f55 0x0fb1", "phya=0x0f55 0x0fb1", "phyw=0x0f55 0x0fb1 0x0fad", "phywa=0x0f55 0x0fb1 0x0fad", "phyi=0x0f55 0x0fb1 0xf72", "phyu=0x0f55 0x0fb1 0xf74", "phye=0x0f55 0x0fb1 0xf7a", "phyo=0x0f55 0x0fb1 0xf7c", "phr=0x0f55 0x0fb2", "phra=0x0f55 0x0fb2", "phrw=0x0f55 0xfad 0x0fb2", "phrwa=0x0f55 0xfad 0x0fb2", "phri=0x0f55 0x0fb2 0xf72", "phru=0x0f55 0x0fb2 0xf74", "phre=0x0f55 0x0fb2 0xf7a", "phro=0x0f55 0x0fb2 0xf7c", // ba "b=0x0f56", "ba=0x0f56", "b.=0x0f56", "baa=0x0f56 0x0f71", "bA=0x0f56 0x0f71", "bi=0x0f56 0x0f72", "bii=0x0f56 0x0f71 0x0f72", "bI=0x0f56 0x0f80", "bII=0x0f56 0x0f71 0x0f80", "bai=0x0f56 0x0f7b", "bau=0x0f56 0x0f7d", "be=0x0f56 0x0f7a", "bee=0x0f56 0x0f71 0x0f7a", "bE=0x0f56 0x0f71 0x0f7a", "bo=0x0f56 0x0f7c", "boo=0x0f56 0x0f71 0x0f7c", "bO=0x0f56 0x0f71 0x0f7c", "bu=0x0f56 0x0f74", "buu=0x0f56 0x0f71 0x0f74", "bU=0x0f56 0x0f71 0x0f74", "by=0x0f56 0x0fb1", "bya=0x0f56 0x0fb1", "byi=0x0f56 0x0fb1 0xf72", "byu=0x0f56 0x0fb1 0xf74", "bye=0x0f56 0x0fb1 0xf7a", "byo=0x0f56 0x0fb1 0xf7c", //"br=0x0f56 0x0fb2", "bra=0x0f56 0x0fb2", "bri=0x0f56 0x0fb2 0xf72", "bru=0x0f56 0x0fb2 0xf74", "bre=0x0f56 0x0fb2 0xf7a", "bro=0x0f56 0x0fb2 0xf7c", "bro=0x0f56 0x0fb2 0xf7c", //"bl=0x0f56 0x0fb3", "bla=0x0f56 0x0fb3", "bli=0x0f56 0x0fb3 0x0f72", "blu=0x0f56 0x0fb3 0x0f74", "ble=0x0f56 0x0fb3 0x0f7a", "blo=0x0f56 0x0fb3 0x0f7c", // ma "m=0x0f58", "ma=0x0f58", "maa=0x0f58 0x0f71", "mA=0x0f58 0x0f71", "mi=0x0f58 0x0f72", "mii=0x0f58 0x0f71 0x0f72", "mI=0x0f58 0x0f80", "mII=0x0f58 0x0f71 0x0f80", "mai=0x0f58 0x0f7b", "mau=0x0f58 0x0f7d", "me=0x0f58 0x0f7a", "mee=0x0f58 0x0f71 0x0f7a", "mE=0x0f58 0x0f71 0x0f7a", "mo=0x0f58 0x0f7c", "moo=0x0f58 0x0f71 0x0f7c", "mO=0x0f58 0x0f71 0x0f7c", "mu=0x0f58 0x0f74", "muu=0x0f58 0x0f71 0x0f74", "mU=0x0f58 0x0f71 0x0f74", "my=0x0f58 0x0fb1", "mya=0x0f58 0x0fb1", "myi=0x0f58 0x0fb1 0xf72", "myu=0x0f58 0x0fb1 0xf74", "mye=0x0f58 0x0fb1 0xf7a", "myo=0x0f58 0x0fb1 0xf7c", "mr=0x0f58 0x0fb2", "mra=0x0f58 0x0fb2", "mri=0x0f58 0x0fb2 0xf72", "mru=0x0f58 0x0fb2 0xf74", "mre=0x0f58 0x0fb2 0xf7a", "mro=0x0f58 0x0fb2 0xf7c", // tsa "ts=0x0f59", "tsa=0x0f59", "tsaa=0x0f59 0x0f71", "tsA=0x0f59 0x0f71", "tsi=0x0f59 0x0f72", "tsii=0x0f59 0x0f71 0x0f72", "tsI=0x0f59 0x0f80", "tsII=0x0f59 0x0f71 0x0f80", "tsai=0x0f59 0x0f7b", "tsau=0x0f59 0x0f7d", "tse=0x0f59 0x0f7a", "tsee=0x0f59 0x0f71 0x0f7a", "tsE=0x0f59 0x0f71 0x0f7a", "tso=0x0f59 0x0f7c", "tsoo=0x0f59 0x0f71 0x0f7c", "tsO=0x0f59 0x0f71 0x0f7c", "tsu=0x0f59 0x0f74", "tsuu=0x0f59 0x0f71 0x0f74", "tsU=0x0f59 0x0f71 0x0f74", "tsw=0x0f59 0x0fad", "tswa=0x0f59 0x0fad", // tsha "tsh=0x0f5a", "tsha=0x0f5a", "tshaa=0x0f5a 0x0f71", "tshA=0x0f5a 0x0f71", "tshi=0x0f5a 0x0f72", "tshii=0x0f5a 0x0f71 0x0f72", "tshI=0x0f5a 0x0f80", "tshII=0x0f5a 0x0f71 0x0f80", "tshai=0x0f5a 0x0f7b", "tshau=0x0f5a 0x0f7d", "tshe=0x0f5a 0x0f7a", "tshee=0x0f5a 0x0f71 0x0f7a", "tshE=0x0f5a 0x0f71 0x0f7a", "tsho=0x0f5a 0x0f7c", "tshoo=0x0f5a 0x0f71 0x0f7c", "tshO=0x0f5a 0x0f71 0x0f7c", "tshu=0x0f5a 0x0f74", "tshuu=0x0f5a 0x0f71 0x0f74", "tshU=0x0f5a 0x0f71 0x0f74", "tshw=0x0f5a 0x0fad", "tshwa=0x0f5a 0x0fad", // dza "dz=0x0f5b", "dza=0x0f5b", "dzaa=0x0f5b 0x0f71", "dzA=0x0f5b 0x0f71", "dzi=0x0f5b 0x0f72", "dzii=0x0f5b 0x0f71 0x0f72", "dzI=0x0f5b 0x0f80", "dzII=0x0f5b 0x0f71 0x0f80", "dzai=0x0f5b 0x0f7b", "dzau=0x0f5b 0x0f7d", "dze=0x0f5b 0x0f7a", "dzee=0x0f5b 0x0f71 0x0f7a", "dzE=0x0f5b 0x0f71 0x0f7a", "dzo=0x0f5b 0x0f7c", "dzoo=0x0f5b 0x0f71 0x0f7c", "dzO=0x0f5b 0x0f71 0x0f7c", "dzu=0x0f5b 0x0f74", "dzuu=0x0f5b 0x0f71 0x0f74", "dzU=0x0f5b 0x0f71 0x0f74", "dzw=0x0f5b 0x0fad", "dzwa=0x0f5b 0x0fad", // wa "w=0x0f5d", "wa=0x0f5d", "waa=0x0f5d 0x0f71", // zha "zh=0x0f5e", "zha=0x0f5e", "zhaa=0x0f5e 0x0f71", "zhA=0x0f5e 0x0f71", "zhi=0x0f5e 0x0f72", "zhii=0x0f5e 0x0f71 0x0f72", "zhI=0x0f5e 0x0f80", "zhII=0x0f5e 0x0f71 0x0f80", "zhai=0x0f5e 0x0f7b", "zhau=0x0f5e 0x0f7d", "zhe=0x0f5e 0x0f7a", "zhee=0x0f5e 0x0f71 0x0f7a", "zhE=0x0f5e 0x0f71 0x0f7a", "zho=0x0f5e 0x0f7c", "zhoo=0x0f5e 0x0f71 0x0f7c", "zhO=0x0f5e 0x0f71 0x0f7c", "zhu=0x0f5e 0x0f74", "zhuu=0x0f5e 0x0f71 0x0f74", "zhU=0x0f5e 0x0f71 0x0f74", "zhw=0x0f5e 0x0fad", "zhwa=0x0f5e 0x0fad", // za "z=0x0f5f", "za=0x0f5f", "zaa=0x0f5f 0x0f71", "zA=0x0f5f 0x0f71", "zi=0x0f5f 0x0f72", "zii=0x0f5f 0x0f71 0x0f72", "zI=0x0f5f 0x0f80", "zII=0x0f5f 0x0f71 0x0f80", "zai=0x0f5f 0x0f7b", "zau=0x0f5f 0x0f7d", "ze=0x0f5f 0x0f7a", "zee=0x0f5f 0x0f71 0x0f7a", "zE=0x0f5f 0x0f71 0x0f7a", "zo=0x0f5f 0x0f7c", "zoo=0x0f5f 0x0f71 0x0f7c", "zO=0x0f5f 0x0f71 0x0f7c", "zu=0x0f5f 0x0f74", "zuu=0x0f5f 0x0f71 0x0f74", "zU=0x0f5f 0x0f71 0x0f74", "zw=0x0f5f 0x0fad", "zwa=0x0f5f 0x0fad", "zy=0x0f5f 0x0fb1", "zya=0x0f5f 0x0fb1", "zyi=0x0f5f 0x0fb1 0xf72", "zyu=0x0f5f 0x0fb1 0xf74", "zye=0x0f5f 0x0fb1 0xf7a", "zyo=0x0f5f 0x0fb1 0xf7c", "zl=0x0f5f 0x0fb3", "zla=0x0f5f 0x0fb3", "zli=0x0f5f 0x0fb3 0x0f72", "zlu=0x0f5f 0x0fb3 0x0f74", "zle=0x0f5f 0x0fb3 0x0f7a", "zlo=0x0f5f 0x0fb3 0x0f7c", // 'a "'=0x0f60", "'a=0x0f60", "'i=0x0f60 0x0f72", "'u=0x0f60 0x0f74", "'e=0x0f60 0x0f7a", "'o=0x0f60 0x0f7c", // ya "y=0x0f61", "ya=0x0f61", "yi=0x0f61 0x0f72", "yu=0x0f61 0x0f74", "ye=0x0f61 0x0f7a", "yo=0x0f61 0x0f7c", // ra "r=0x0f62", "ra=0x0f62", "raa=0x0f62 0x0f71", "rA=0x0f62 0x0f71", "ri=0x0f62 0x0f72", "rii=0x0f62 0x0f71 0x0f72", "rI=0x0f62 0x0f80", "rII=0x0f62 0x0f71 0x0f80", "rai=0x0f62 0x0f7b", "rau=0x0f62 0x0f7d", "re=0x0f62 0x0f7a", "ree=0x0f62 0x0f71 0x0f7a", "rE=0x0f62 0x0f71 0x0f7a", "ro=0x0f62 0x0f7c", "roo=0x0f62 0x0f71 0x0f7c", "rO=0x0f62 0x0f71 0x0f7c", "ru=0x0f62 0x0f74", "ruu=0x0f62 0x0f71 0x0f74", "rU=0x0f62 0x0f71 0x0f74", "rk=0x0f62 0x0f90", "rka=0x0f62 0x0f90", "rki=0x0f62 0x0f90 0xf72", "rku=0x0f62 0x0f90 0xf74", "rke=0x0f62 0x0f90 0xf7a", "rko=0x0f62 0x0f90 0xf7c", "rky=0x0f62 0x0f90 0x0fb1", "rkya=0x0f62 0x0f90 0x0fb1", "rkyi=0x0f62 0x0f90 0x0fb1 0xf72", "rkyu=0x0f62 0x0f90 0x0fb1 0xf74", "rkye=0x0f62 0x0f90 0x0fb1 0xf7a", "rkyo=0x0f62 0x0f90 0x0fb1 0xf7c", "rkr=0x0f62 0x0f90 0x0fb2", "rkra=0x0f62 0x0f90 0x0fb2", "rkri=0x0f62 0x0f90 0x0fb2 0xf72", "rkru=0x0f62 0x0f90 0x0fb2 0xf74", "rkre=0x0f62 0x0f90 0x0fb2 0xf7a", "rkro=0x0f62 0x0f90 0x0fb2 0xf7c", "rg=0x0f62 0x0f92", "rga=0x0f62 0x0f92", "rgi=0x0f62 0x0f92 0xf72", "rgu=0x0f62 0x0f92 0xf74", "rge=0x0f62 0x0f92 0xf7a", "rgo=0x0f62 0x0f92 0xf7c", "rgy=0x0f62 0x0f92 0x0fb1", "rgya=0x0f62 0x0f92 0x0fb1", "rgyi=0x0f62 0x0f92 0x0fb1 0xf72", "rgyu=0x0f62 0x0f92 0x0fb1 0xf74", "rgye=0x0f62 0x0f92 0x0fb1 0xf7a", "rgyo=0x0f62 0x0f92 0x0fb1 0xf7c", "rgr=0x0f62 0x0f92 0x0fb2", "rgra=0x0f62 0x0f92 0x0fb2", "rgri=0x0f62 0x0f92 0x0fb2 0xf72", "rgru=0x0f62 0x0f92 0x0fb2 0xf74", "rgre=0x0f62 0x0f92 0x0fb2 0xf7a", "rgro=0x0f62 0x0f92 0x0fb2 0xf7c", "rt=0x0f62 0x0f9f", "rta=0x0f62 0x0f9f", "rti=0x0f62 0x0f9f 0xf72", "rtu=0x0f62 0x0f9f 0xf74", "rte=0x0f62 0x0f9f 0xf7a", "rto=0x0f62 0x0f9f 0xf7c", "rty=0x0f62 0x0f9f 0x0fb1", "rtya=0x0f62 0x0f9f 0x0fb1", "rtyi=0x0f62 0x0f9f 0x0fb1 0xf72", "rtyu=0x0f62 0x0f9f 0x0fb1 0xf74", "rtye=0x0f62 0x0f9f 0x0fb1 0xf7a", "rtyo=0x0f62 0x0f9f 0x0fb1 0xf7c", "rtr=0x0f62 0x0f9f 0x0fb2", "rtra=0x0f62 0x0f9f 0x0fb2", "rtri=0x0f62 0x0f9f 0x0fb2 0xf72", "rtru=0x0f62 0x0f9f 0x0fb2 0xf74", "rtre=0x0f62 0x0f9f 0x0fb2 0xf7a", "rtro=0x0f62 0x0f9f 0x0fb2 0xf7c", "rd=0x0f62 0x0fa1", "rda=0x0f62 0x0fa1", "rdi=0x0f62 0x0fa1 0xf72", "rdu=0x0f62 0x0fa1 0xf74", "rde=0x0f62 0x0fa1 0xf7a", "rdo=0x0f62 0x0fa1 0xf7c", "rn=0x0f62 0x0fa3", "rna=0x0f62 0x0fa3", "rni=0x0f62 0x0fa3 0xf72", "rnu=0x0f62 0x0fa3 0xf74", "rne=0x0f62 0x0fa3 0xf7a", "rno=0x0f62 0x0fa3 0xf7c", "rny=0x0f62 0x0fa3", "rnya=0x0f62 0x0f99", "rnyi=0x0f62 0x0f99 0xf72", "rnyu=0x0f62 0x0f99 0xf74", "rnye=0x0f62 0x0f99 0xf7a", "rnyo=0x0f62 0x0f99 0xf7c", "rdy=0x0f62 0x0fa1 0x0fb1", "rdya=0x0f62 0x0fa1 0x0fb1", "rdyi=0x0f62 0x0fa1 0x0fb1 0xf72", "rdyu=0x0f62 0x0fa1 0x0fb1 0xf74", "rdye=0x0f62 0x0fa1 0x0fb1 0xf7a", "rdyo=0x0f62 0x0fa1 0x0fb1 0xf7c", "rdr=0x0f62 0x0fa1 0x0fb2", "rdra=0x0f62 0x0fa1 0x0fb2", "rdri=0x0f62 0x0fa1 0x0fb2 0xf72", "rdru=0x0f62 0x0fa1 0x0fb2 0xf74", "rdre=0x0f62 0x0fa1 0x0fb2 0xf7a", "rdro=0x0f62 0x0fa1 0x0fb2 0xf7c", "rp=0x0f62 0x0fa4", "rpa=0x0f62 0x0fa4", "rpi=0x0f62 0x0fa4 0xf72", "rpu=0x0f62 0x0fa4 0xf74", "rpe=0x0f62 0x0fa4 0xf7a", "rpo=0x0f62 0x0fa4 0xf7c", "rpy=0x0f62 0x0fa4 0x0fb1", "rpya=0x0f62 0x0fa4 0x0fb1", "rpyi=0x0f62 0x0fa4 0x0fb1 0xf72", "rpyu=0x0f62 0x0fa4 0x0fb1 0xf74", "rpye=0x0f62 0x0fa4 0x0fb1 0xf7a", "rpyo=0x0f62 0x0fa4 0x0fb1 0xf7c", "rpr=0x0f62 0x0fa4 0x0fb2", "rpra=0x0f62 0x0fa4 0x0fb2", "rpri=0x0f62 0x0fa4 0x0fb2 0xf72", "rpru=0x0f62 0x0fa4 0x0fb2 0xf74", "rpre=0x0f62 0x0fa4 0x0fb2 0xf7a", "rpro=0x0f62 0x0fa4 0x0fb2 0xf7c", "rb=0x0f62 0x0fa6", "rba=0x0f62 0x0fa6", "rbi=0x0f62 0x0fa6 0xf72", "rbu=0x0f62 0x0fa6 0xf74", "rbe=0x0f62 0x0fa6 0xf7a", "rbo=0x0f62 0x0fa6 0xf7c", "rby=0x0f62 0x0fa6 0x0fb1", "rbya=0x0f62 0x0fa6 0x0fb1", "rbyi=0x0f62 0x0fa6 0x0fb1 0xf72", "rbyu=0x0f62 0x0fa6 0x0fb1 0xf74", "rbye=0x0f62 0x0fa6 0x0fb1 0xf7a", "rbyo=0x0f62 0x0fa6 0x0fb1 0xf7c", "rbr=0x0f62 0x0fa6 0x0fb2", "rbra=0x0f62 0x0fa6 0x0fb2", "rbri=0x0f62 0x0fa6 0x0fb2 0xf72", "rbru=0x0f62 0x0fa6 0x0fb2 0xf74", "rbre=0x0f62 0x0fa6 0x0fb2 0xf7a", "rbro=0x0f62 0x0fa6 0x0fb2 0xf7c", "rm=0x0f62 0x0fa8", "rma=0x0f62 0x0fa8", "rmi=0x0f62 0x0fa8 0xf72", "rmu=0x0f62 0x0fa8 0xf74", "rme=0x0f62 0x0fa8 0xf7a", "rmo=0x0f62 0x0fa8 0xf7c", "rmy=0x0f62 0x0fa8 0x0fb1", "rmya=0x0f62 0x0fa8 0x0fb1", "rmyi=0x0f62 0x0fa8 0x0fb1 0xf72", "rmyu=0x0f62 0x0fa8 0x0fb1 0xf74", "rmye=0x0f62 0x0fa8 0x0fb1 0xf7a", "rmyo=0x0f62 0x0fa8 0x0fb1 0xf7c", "rmr=0x0f62 0x0fa8 0x0fb2", "rmra=0x0f62 0x0fa8 0x0fb2", "rmri=0x0f62 0x0fa8 0x0fb2 0xf72", "rmru=0x0f62 0x0fa8 0x0fb2 0xf74", "rmre=0x0f62 0x0fa8 0x0fb2 0xf7a", "rmro=0x0f62 0x0fa8 0x0fb2 0xf7c", "rw=0x0f62 0x0fad", "rwa=0x0f62 0x0fad", "rts=0x0f62 0x0fa9", "rtsa=0x0f62 0x0fa9", "rtsi=0x0f62 0x0fa9 0xf72", "rtsu=0x0f62 0x0fa9 0xf74", "rtse=0x0f62 0x0fa9 0xf7a", "rtso=0x0f62 0x0fa9 0x0f7c", "rdz=0x0f62 0x0fab", "rdza=0x0f62 0x0fab", "rdzi=0x0f62 0x0fab 0xf72", "rdzu=0x0f62 0x0fab 0xf74", "rdze=0x0f62 0x0fab 0xf7a", "rdzo=0x0f62 0x0fab 0x0f7c", "brts=0x0f56 0x0f62 0x0fa9", "brtsa=0x0f56 0x0f62 0x0fa9", "brtsi=0x0f56 0x0f62 0x0fa9 0xf72", "brtsu=0x0f56 0x0f62 0x0fa9 0xf74", "brtse=0x0f56 0x0f62 0x0fa9 0xf7a", "brtso=0x0f56 0x0f62 0x0fa9 0x0f7c", "brdz=0x0f56 0x0f62 0x0fab", "brdza=0x0f56 0x0f62 0x0fab", "brdzi=0x0f56 0x0f62 0x0fab 0xf72", "brdzu=0x0f56 0x0f62 0x0fab 0xf74", "brdze=0x0f56 0x0f62 0x0fab 0xf7a", "brdzo=0x0f56 0x0f62 0x0fab 0x0f7c", "rl=0x0f62 0x0fb3", "rla=0x0f62 0x0fb3", "rli=0x0f62 0x0fb3 0x0f72", "rlu=0x0f62 0x0fb3 0x0f74", "rle=0x0f62 0x0fb3 0x0f7a", "rlo=0x0f62 0x0fb3 0x0f7c", // la "l=0x0f63", "la=0x0f63", "laa=0x0f63 0x0f71", "lA=0x0f63 0x0f71", "li=0x0f63 0x0f72", "lii=0x0f63 0x0f71 0x0f72", "lI=0x0f63 0x0f80", "lII=0x0f63 0x0f71 0x0f80", "lai=0x0f63 0x0f7b", "lau=0x0f63 0x0f7d", "le=0x0f63 0x0f7a", "lee=0x0f63 0x0f71 0x0f7a", "lE=0x0f63 0x0f71 0x0f7a", "lo=0x0f63 0x0f7c", "loo=0x0f63 0x0f71 0x0f7c", "lO=0x0f63 0x0f71 0x0f7c", "lu=0x0f63 0x0f74", "luu=0x0f63 0x0f71 0x0f74", "lU=0x0f63 0x0f71 0x0f74", "lk=0x0f63 0x0f90", "lka=0x0f63 0x0f90", "lki=0x0f63 0x0f90 0xf72", "lku=0x0f63 0x0f90 0xf74", "lke=0x0f63 0x0f90 0xf7a", "lko=0x0f63 0x0f90 0xf7c", "lg=0x0f63 0x0f92", "lga=0x0f63 0x0f92", "lgi=0x0f63 0x0f92 0xf72", "lgu=0x0f63 0x0f92 0xf74", "lge=0x0f63 0x0f92 0xf7a", "lgo=0x0f63 0x0f92 0xf7c", "lt=0x0f63 0x0f9f", "lta=0x0f63 0x0f9f", "lti=0x0f63 0x0f9f 0xf72", "ltu=0x0f63 0x0f9f 0xf74", "lte=0x0f63 0x0f9f 0xf7a", "lto=0x0f63 0x0f9f 0xf7c", "ld=0x0f63 0x0fa1", "lda=0x0f63 0x0fa1", "ldi=0x0f63 0x0fa1 0xf72", "ldu=0x0f63 0x0fa1 0xf74", "lde=0x0f63 0x0fa1 0xf7a", "ldo=0x0f63 0x0fa1 0xf7c", "lp=0x0f63 0x0fa4", "lpa=0x0f63 0x0fa4", "lpi=0x0f63 0x0fa4 0xf72", "lpu=0x0f63 0x0fa4 0xf74", "lpe=0x0f63 0x0fa4 0xf7a", "lpo=0x0f63 0x0fa4 0xf7c", "lb=0x0f63 0x0fa6", "lba=0x0f63 0x0fa6", "lbi=0x0f63 0x0fa6 0xf72", "lbu=0x0f63 0x0fa6 0xf74", "lbe=0x0f63 0x0fa6 0xf7a", "lbo=0x0f63 0x0fa6 0xf7c", // sha "sh=0x0f64", "sha=0x0f64", "shaa=0x0f64 0x0f71", "shA=0x0f64 0x0f71", "shi=0x0f64 0x0f72", "shii=0x0f64 0x0f71 0x0f72", "shI=0x0f64 0x0f80", "shII=0x0f64 0x0f71 0x0f80", "shai=0x0f64 0x0f7b", "shau=0x0f64 0x0f7d", "she=0x0f64 0x0f7a", "shee=0x0f64 0x0f71 0x0f7a", "shE=0x0f64 0x0f71 0x0f7a", "sho=0x0f64 0x0f7c", "shoo=0x0f64 0x0f71 0x0f7c", "shO=0x0f64 0x0f71 0x0f7c", "shu=0x0f64 0x0f74", "shuu=0x0f64 0x0f71 0x0f74", "shU=0x0f64 0x0f71 0x0f74", "shw=0x0f64 0x0fad", "shwa=0x0f64 0x0fad", "shy=0x0f64 0x0fb1", "shya=0x0f64 0x0fb1", "shyi=0x0f64 0x0fb1 0xf72", "shyu=0x0f64 0x0fb1 0xf74", "shye=0x0f64 0x0fb1 0xf7a", "shyo=0x0f64 0x0fb1 0xf7c", "shr=0x0f64 0x0fb2", "shra=0x0f64 0x0fb2", "shri=0x0f64 0x0fb2 0xf72", "shru=0x0f64 0x0fb2 0xf74", "shre=0x0f64 0x0fb2 0xf7a", "shro=0x0f64 0x0fb2 0xf7c", // sa "s=0x0f66", "sa=0x0f66", "saa=0x0f66 0x0f71", "sA=0x0f66 0x0f71", "si=0x0f66 0x0f72", "sii=0x0f66 0x0f71 0x0f72", "sI=0x0f66 0x0f80", "sII=0x0f66 0x0f71 0x0f80", "sai=0x0f66 0x0f7b", "sau=0x0f66 0x0f7d", "se=0x0f66 0x0f7a", "see=0x0f66 0x0f71 0x0f7a", "sE=0x0f66 0x0f71 0x0f7a", "so=0x0f66 0x0f7c", "soo=0x0f66 0x0f71 0x0f7c", "sO=0x0f66 0x0f71 0x0f7c", "su=0x0f66 0x0f74", "suu=0x0f66 0x0f71 0x0f74", "sU=0x0f66 0x0f71 0x0f74", "sk=0x0f66 0x0f90", "ska=0x0f66 0x0f90", "ski=0x0f66 0x0f90 0xf72", "sku=0x0f66 0x0f90 0xf74", "ske=0x0f66 0x0f90 0xf7a", "sko=0x0f66 0x0f90 0xf7c", "sky=0x0f66 0x0f90 0x0fb1", "skya=0x0f66 0x0f90 0x0fb1", "skyi=0x0f66 0x0f90 0x0fb1 0xf72", "skyu=0x0f66 0x0f90 0x0fb1 0xf74", "skye=0x0f66 0x0f90 0x0fb1 0xf7a", "skyo=0x0f66 0x0f90 0x0fb1 0xf7c", "skr=0x0f66 0x0f90 0x0fb2", "skra=0x0f66 0x0f90 0x0fb2", "skri=0x0f66 0x0f90 0x0fb2 0xf72", "skru=0x0f66 0x0f90 0x0fb2 0xf74", "skre=0x0f66 0x0f90 0x0fb2 0xf7a", "skro=0x0f66 0x0f90 0x0fb2 0xf7c", "sg=0x0f66 0x0f92", "sga=0x0f66 0x0f92", "sgi=0x0f66 0x0f92 0xf72", "sgu=0x0f66 0x0f92 0xf74", "sge=0x0f66 0x0f92 0xf7a", "sgo=0x0f66 0x0f92 0xf7c", "sgy=0x0f66 0x0f92 0x0fb1", "sgya=0x0f66 0x0f92 0x0fb1", "sgyi=0x0f66 0x0f92 0x0fb1 0xf72", "sgyu=0x0f66 0x0f92 0x0fb1 0xf74", "sgye=0x0f66 0x0f92 0x0fb1 0xf7a", "sgyo=0x0f66 0x0f92 0x0fb1 0xf7c", "sgr=0x0f66 0x0f92 0x0fb2", "sgra=0x0f66 0x0f92 0x0fb2", "sgri=0x0f66 0x0f92 0x0fb2 0xf72", "sgru=0x0f66 0x0f92 0x0fb2 0xf74", "sgre=0x0f66 0x0f92 0x0fb2 0xf7a", "sgro=0x0f66 0x0f92 0x0fb2 0xf7c", "st=0x0f66 0x0f9f", "sta=0x0f66 0x0f9f", "sti=0x0f66 0x0f9f 0xf72", "stu=0x0f66 0x0f9f 0xf74", "ste=0x0f66 0x0f9f 0xf7a", "sto=0x0f66 0x0f9f 0xf7c", "sty=0x0f66 0x0f9f 0x0fb1", "stya=0x0f66 0x0f9f 0x0fb1", "styi=0x0f66 0x0f9f 0x0fb1 0xf72", "styu=0x0f66 0x0f9f 0x0fb1 0xf74", "stye=0x0f66 0x0f9f 0x0fb1 0xf7a", "styo=0x0f66 0x0f9f 0x0fb1 0xf7c", "str=0x0f66 0x0f9f 0x0fb2", "stra=0x0f66 0x0f9f 0x0fb2", "stri=0x0f66 0x0f9f 0x0fb2 0xf72", "stru=0x0f66 0x0f9f 0x0fb2 0xf74", "stre=0x0f66 0x0f9f 0x0fb2 0xf7a", "stro=0x0f66 0x0f9f 0x0fb2 0xf7c", "sd=0x0f66 0x0fa1", "sda=0x0f66 0x0fa1", "sdi=0x0f66 0x0fa1 0xf72", "sdu=0x0f66 0x0fa1 0xf74", "sde=0x0f66 0x0fa1 0xf7a", "sdo=0x0f66 0x0fa1 0xf7c", "sdy=0x0f66 0x0fa1 0x0fb1", "sdya=0x0f66 0x0fa1 0x0fb1", "sdyi=0x0f66 0x0fa1 0x0fb1 0xf72", "sdyu=0x0f66 0x0fa1 0x0fb1 0xf74", "sdye=0x0f66 0x0fa1 0x0fb1 0xf7a", "sdyo=0x0f66 0x0fa1 0x0fb1 0xf7c", "sdr=0x0f66 0x0fa1 0x0fb2", "sdra=0x0f66 0x0fa1 0x0fb2", "sdri=0x0f66 0x0fa1 0x0fb2 0xf72", "sdru=0x0f66 0x0fa1 0x0fb2 0xf74", "sdre=0x0f66 0x0fa1 0x0fb2 0xf7a", "sdro=0x0f66 0x0fa1 0x0fb2 0xf7c", "sp=0x0f66 0x0fa4", "spa=0x0f66 0x0fa4", "spi=0x0f66 0x0fa4 0xf72", "spu=0x0f66 0x0fa4 0xf74", "spe=0x0f66 0x0fa4 0xf7a", "spo=0x0f66 0x0fa4 0xf7c", "spy=0x0f66 0x0fa4 0x0fb1", "spya=0x0f66 0x0fa4 0x0fb1", "spyi=0x0f66 0x0fa4 0x0fb1 0xf72", "spyu=0x0f66 0x0fa4 0x0fb1 0xf74", "spye=0x0f66 0x0fa4 0x0fb1 0xf7a", "spyo=0x0f66 0x0fa4 0x0fb1 0xf7c", "spr=0x0f66 0x0fa4 0x0fb2", "spra=0x0f66 0x0fa4 0x0fb2", "spri=0x0f66 0x0fa4 0x0fb2 0xf72", "spru=0x0f66 0x0fa4 0x0fb2 0xf74", "spre=0x0f66 0x0fa4 0x0fb2 0xf7a", "spro=0x0f66 0x0fa4 0x0fb2 0xf7c", "sb=0x0f66 0x0fa6", "sba=0x0f66 0x0fa6", "sbi=0x0f66 0x0fa6 0xf72", "sbu=0x0f66 0x0fa6 0xf74", "sbe=0x0f66 0x0fa6 0xf7a", "sbo=0x0f66 0x0fa6 0xf7c", "sby=0x0f66 0x0fa6 0x0fb1", "sbya=0x0f66 0x0fa6 0x0fb1", "sbyi=0x0f66 0x0fa6 0x0fb1 0xf72", "sbyu=0x0f66 0x0fa6 0x0fb1 0xf74", "sbye=0x0f66 0x0fa6 0x0fb1 0xf7a", "sbyo=0x0f66 0x0fa6 0x0fb1 0xf7c", "sbr=0x0f66 0x0fa6 0x0fb2", "sbra=0x0f66 0x0fa6 0x0fb2", "sbri=0x0f66 0x0fa6 0x0fb2 0xf72", "sbru=0x0f66 0x0fa6 0x0fb2 0xf74", "sbre=0x0f66 0x0fa6 0x0fb2 0xf7a", "sbro=0x0f66 0x0fa6 0x0fb2 0xf7c", "sm=0x0f66 0x0fa8", "sma=0x0f66 0x0fa8", "smi=0x0f66 0x0fa8 0xf72", "smu=0x0f66 0x0fa8 0xf74", "sme=0x0f66 0x0fa8 0xf7a", "smo=0x0f66 0x0fa8 0xf7c", "smy=0x0f66 0x0fa8 0x0fb1", "smya=0x0f66 0x0fa8 0x0fb1", "smyi=0x0f66 0x0fa8 0x0fb1 0xf72", "smyu=0x0f66 0x0fa8 0x0fb1 0xf74", "smye=0x0f66 0x0fa8 0x0fb1 0xf7a", "smyo=0x0f66 0x0fa8 0x0fb1 0xf7c", "smr=0x0f66 0x0fa8 0x0fb2", "smra=0x0f66 0x0fa8 0x0fb2", "smri=0x0f66 0x0fa8 0x0fb2 0xf72", "smru=0x0f66 0x0fa8 0x0fb2 0xf74", "smre=0x0f66 0x0fa8 0x0fb2 0xf7a", "smro=0x0f66 0x0fa8 0x0fb2 0xf7c", "sw=0x0f66 0x0fad", "swa=0x0f66 0x0fad", "sts=0x0f66 0x0fa9", "stsa=0x0f66 0x0fa9", "stsi=0x0f66 0x0fa9 0xf72", "stsu=0x0f66 0x0fa9 0xf74", "stse=0x0f66 0x0fa9 0xf7a", "stso=0x0f66 0x0fa9 0x0fb2 0xf7c", "sr=0x0f66 0x0fb2", "sra=0x0f66 0x0fb2", "sri=0x0f66 0x0fb2 0xf72", "sru=0x0f66 0x0fb2 0xf74", "sre=0x0f66 0x0fb2 0xf7a", "sro=0x0f66 0x0fb2 0xf7c", "sl=0x0f66 0x0fb3", "sla=0x0f66 0x0fb3", "sli=0x0f66 0x0fb3 0x0f72", "slu=0x0f66 0x0fb3 0x0f74", "sle=0x0f66 0x0fb3 0x0f7a", "slo=0x0f66 0x0fb3 0x0f7c", "sn=0x0f66 0x0fa3", "sna=0x0f66 0x0fa3", "sni=0x0f66 0x0fa3 0x0f72", "snu=0x0f66 0x0fa3 0x0f74", "sne=0x0f66 0x0fa3 0x0f7a", "sno=0x0f66 0x0fa3 0x0f7c", "snr=0x0f66 0x0fa3 0x0fb2", "snra=0x0f66 0x0fa3 0x0fb2", "snre=0x0f66 0x0fa3 0x0fb2 0x0f7a", "snro=0x0f66 0x0fa3 0x0fb2 0x0f7c", "sm=0x0f66 0x0fa8", "sma=0x0f66 0x0fa8", "smi=0x0f66 0x0fa8 0x0f72", "smu=0x0f66 0x0fa8 0x0f74", "sme=0x0f66 0x0fa8 0x0f7a", "smo=0x0f66 0x0fa8 0x0f7c", "smr=0x0f66 0x0fa8 0x0fb2", "smra=0x0f66 0x0fa8 0x0fb2", "smre=0x0f66 0x0fa8 0x0fb2 0x0f7a", "smro=0x0f66 0x0fa8 0x0fb2 0x0f7c", "sl=0x0f66 0x0fb3", "sla=0x0f66 0x0fb3", "sli=0x0f66 0x0fb3 0x0f72", "slu=0x0f66 0x0fb3 0x0f74", "sle=0x0f66 0x0fb3 0x0f7a", "slo=0x0f66 0x0fb3 0x0f7c", // ha "h=0x0f67", "ha=0x0f67", "haa=0x0f67 0x0f71", "hA=0x0f67 0x0f71", "hi=0x0f67 0x0f72", "hii=0x0f67 0x0f71 0x0f72", "hI=0x0f67 0x0f80", "hII=0x0f67 0x0f71 0x0f80", "hai=0x0f67 0x0f7b", "hau=0x0f67 0x0f7d", "he=0x0f67 0x0f7a", "hee=0x0f67 0x0f71 0x0f7a", "hE=0x0f67 0x0f71 0x0f7a", "ho=0x0f67 0x0f7c", "hoo=0x0f67 0x0f71 0x0f7c", "hO=0x0f67 0x0f71 0x0f7c", "hu=0x0f67 0x0f74", "huu=0x0f67 0x0f71 0x0f74", "hU=0x0f67 0x0f71 0x0f74", "hw=0x0f67 0x0fad", "hwa=0x0f67 0x0fad", "hy=0x0f67 0x0fb1", "hya=0x0f67 0x0fb1", "hyi=0x0f67 0x0fb1 0xf72", "hyu=0x0f67 0x0fb1 0xf74", "hye=0x0f67 0x0fb1 0xf7a", "hyo=0x0f67 0x0fb1 0xf7c", "hr=0x0f67 0x0fb2", "hra=0x0f67 0x0fb2", "hrw=0x0f67 0xfad 0x0fb2", "hrwa=0x0f67 0xfad 0x0fb2", "hri=0x0f67 0x0fb2 0xf72", "hrii=0x0f67 0x0fb2 0xf71 0xf72", "hru=0x0f67 0x0fb2 0xf74", "hre=0x0f67 0x0fb2 0xf7a", "hro=0x0f67 0x0fb2 0xf7c", // Other marks "M=0x0f82", "aum=0x0f00", "AUM=0x0f00", "OM=0x0f00", "om=0x0f00", // mantras & Tibetan-Sanskrit "huM=0x0f67 0xf71 0xf74 0x0f82", "huuM=0x0f67 0xf71 0xf74 0x0f82", "vajra=0x0f56 0xf5b 0x0fb2", "gh=0x0f43", "gha=0x0f43 ", "ghi=0x0f43 0x0f72", "ghu=0x0f43 0x0f74", "ghe=0x0f43 0x0f7a", "gho=0x0f43 0x0f7c", "ghy=0x0f43 0x0fb1", "ghya=0x0f43 0x0fb1", "ghyi=0x0f43 0x0fb1 0x0f72", "ghyu=0x0f43 0x0fb1 0x0f74", "ghye=0x0f43 0x0fb1 0x0f7a", "ghyo=0x0f43 0x0fb1 0x0f7c", "dh=0x0f52", "dha=0x0f52 ", "dhi=0x0f52 0x0f72", "dhu=0x0f52 0x0f74", "dhe=0x0f52 0x0f7a", "dho=0x0f52 0x0f7c", "dhy=0x0f52 0x0fb1", "dhya=0x0f52 0x0fb1", "dhyi=0x0f52 0x0fb1 0x0f72", "dhyu=0x0f52 0x0fb1 0x0f74", "dhye=0x0f52 0x0fb1 0x0f7a", "dhyo=0x0f52 0x0fb1 0x0f7c", "dzh=0x0f5c", "dzha=0x0f5c ", "dzhi=0x0f5c 0x0f72", "dzhu=0x0f5c 0x0f74", "dzhe=0x0f5c 0x0f7a", "dzho=0x0f5c 0x0f7c", "dzhy=0x0f5c 0x0fb1", "dzhya=0x0f5c 0x0fb1", "dzhyi=0x0f5c 0x0fb1 0x0f72", "dzhyu=0x0f5c 0x0fb1 0x0f74", "dzhye=0x0f5c 0x0fb1 0x0f7a", "dzhyo=0x0f5c 0x0fb1 0x0f7c", "Dh=0x0f4d", "Dha=0x0f4d ", "Dhi=0x0f4d 0x0f72", "Dhu=0x0f4d 0x0f74", "Dhe=0x0f4d 0x0f7a", "Dho=0x0f4d 0x0f7c", "Dhy=0x0f4d 0x0fb1", "Dhya=0x0f4d 0x0fb1", "Dhyi=0x0f4d 0x0fb1 0x0f72", "Dhyu=0x0f4d 0x0fb1 0x0f74", "Dhye=0x0f4d 0x0fb1 0x0f7a", "Dhyo=0x0f4d 0x0fb1 0x0f7c", "bh=0x0f57", "bha=0x0f57", "bhi=0x0f57 0x0f72", "bhu=0x0f57 0x0f74", "bhe=0x0f57 0x0f7a", "bho=0x0f57 0x0f7c", "bhy=0x0f57 0x0fb1", "bhya=0x0f57 0x0fb1", "bhyi=0x0f57 0x0fb1 0x0f72", "bhyu=0x0f57 0x0fb1 0x0f74", "bhye=0x0f57 0x0fb1 0x0f7a", "bhyo=0x0f57 0x0fb1 0x0f7c", "ddh=0x0f51 0x0fa2", "ddha=0x0f51 0x0fa2", "ddhi=0x0f51 0x0fa2 0x0f72", "ddhu=0x0f51 0x0fa2 0x0f74", "ddhe=0x0f51 0x0fa2 0x0f7a", "ddho=0x0f51 0x0fa2 0x0f7c", "ddhy=0x0f51 0x0fa2 0x0fb1", "ddhya=0x0f51 0x0fa2 0x0fb1", "ddhyi=0x0f51 0x0fa2 0x0fb1 0x0f72", "ddhyu=0x0f51 0x0fa2 0x0fb1 0x0f74", "ddhye=0x0f51 0x0fa2 0x0fb1 0x0f7a", "ddhyo=0x0f51 0x0fa2 0x0fb1 0x0f7c", "dm=0x0f51 0x0fa8", "dma=0x0f51 0x0fa8", "dmi=0x0f51 0x0fa8 0x0f72", "dmu=0x0f51 0x0fa8 0x0f74", "dme=0x0f51 0x0fa8 0x0f7a", "dmo=0x0f51 0x0fa8 0x0f7c", "nt=0x0f53 0x0f9f", "nta=0x0f53 0x0f9f", "nti=0x0f53 0x0f9f 0x0f72", "ntu=0x0f53 0x0f9f 0x0f74", "nte=0x0f53 0x0f9f 0x0f7a", "nto=0x0f53 0x0f9f 0x0f7c", "tt=0x0f4f 0x0f9f", "tta=0x0f4f 0x0f9f", "tti=0x0f4f 0x0f9f 0x0f72", "ttu=0x0f4f 0x0f9f 0x0f74", "tte=0x0f4f 0x0f9f 0x0f7a", "nto=0x0f53 0x0f9f 0x0f7c", "Nt=0x0f4e 0x0f9f", "Nta=0x0f4e 0x0f9f", "Nti=0x0f4e 0x0f9f 0x0f72", "Ntu=0x0f4e 0x0f9f 0x0f74", "Nte=0x0f4e 0x0f9f 0x0f7a", "Nto=0x0f4e 0x0f9f 0x0f7c", ./mytool/kmap/GeorgianB.kmap0000644000175000017500000001237607630256212016033 0ustar henrichhenrich// GeorgianB // // 2003-01-27 Kenneth R. Beesley // revised 2003-03-01 version 1.0 // GeorgianB.kmap is a source file defining an input method for Georgian, // for use in the Yudit editor and perhaps someday in qemacs. // To be used by the Yudit editor, a GeorgianB.my file must be generated // from Georgian.kmap (see instructions below). // In some future version of Yudit, this GeorgianB.kmap file and the // derived GeorgianB.my file may be pre-installed in Yudit and all ready // to go. // Overall Philosophy of this Input Method // 1. Glottal ejective consonants are entered by typing the consonant // followed by a single quote: p' t' k' q' // 2. Type S to enter esh, Z to enter zhe, as in TIPA shortcuts // 3. Type ts and dz to enter the alveolar affricates // 4. Type tS and dZ to enter the alveo-palatal affricates // 5. Type ts' and tS' to enter the glottal-ejective versions of ts and tS // Making and Installing the .my File Yourself // This will be necessary until yudit is delivered with // GeorgianB already installed. // For now, this GeorgianB.kmap file should reside in // your personal directory ~/.yudit/src/ // and perhaps in /share/yudit/src/ to make it // accessible to other users on your system. (The is, // by default, /usr, but the can be manually specified // when yudit is first installed. Type 'which yudit' at the // command-line prompt to see where yudit resides on your system.) // The GeorgianB.kmap source file must used to create a .my file thus, // using the 'mytool' facility supplied with yudit: // // $ mytool -type kmap -kmap GeorgianB.kmap -rkmap GeorgianB.kmap -write GeorgianB.my // This command should produce GeorgianB.my, which you should then manually // copy into your personal ~/.yudit/data/ or perhaps into /share/yudit/data/ // to make it accessible to other users on the same system. // yudit directly uses the .my file, which is a binary file; not the .kmap file, which // is a (semi-)human-readable source file " a = 0x10D0 " , // GEORGIAN LETTER AN " b = 0x10D1 " , // GEORGIAN LETTER BAN " g = 0x10D2 " , // GEORGIAN LETTER GAN " d = 0x10D3 " , // GEORGIAN LETTER DON " e = 0x10D4 " , // GEORGIAN LETTER EN " v = 0x10D5 " , // GEORGIAN LETTER VIN " z = 0x10D6 " , // GEORGIAN LETTER ZEN " t = 0x10D7 " , // GEORGIAN LETTER TAN (aspirated t) " i = 0x10D8 " , // GEORGIAN LETTER IN " k ' = 0x10D9 " , // GEORGIAN LETTER KAN (glottal ejective k') " l = 0x10DA " , // GEORGIAN LETTER LAS " m = 0x10DB " , // GEORGIAN LETTER MAN " n = 0x10DC " , // GEORGIAN LETTER NAR " o = 0x10DD " , // GEORGIAN LETTER ON " p ' = 0x10DE " , // GEORGIAN LETTER PAR (glottal ejective p') " Z = 0x10DF " , // GEORGIAN LETTER ZHAR " r = 0x10E0 " , // GEORGIAN LETTER RAE " s = 0x10E1 " , // GEORGIAN LETTER SAN " t ' = 0x10E2 " , // GEORGIAN LETTER TAR (glottal ejective t') " u = 0x10E3 " , // GEORGIAN LETTER UN " p = 0x10E4 " , // GEORGIAN LETTER PHAR (aspirated p) " k = 0x10E5 " , // GEORGIAN LETTER KHAR (aspirated k) " R = 0x10E6 " , // GEORGIAN LETTER GHAN (voiced velar fricative) " q ' = 0x10E7 " , // GEORGIAN LETTER QAR (glottal ejective q', // no aspirated q to contrast) " S = 0x10E8 " , // GEORGIAN LETTER SHIN (voiceless alveo-palatal // sibilant, as in "ship") " tS = 0x10E9 " , // GEORGIAN LETTER CHIN (voiceless alveo-palatal // affricate, as in "chip") " ts = 0x10EA " , // GEORGIAN LETTER CAN (voiceless alveolar // affricate, as in "tsetse") " dz = 0x10EB " , // GEORGIAN LETTER JIL (voiced alveolar // affricate, as in "beDS") " ts ' = 0x10EC " , // GEORGIAN LETTER CIL (glottal ejective // voiceless alveolar affricate ts') " tS ' = 0x10ED " , // GEORGIAN LETTER CHAR (glottal ejective // voiceless alveo-palatal affricate tS') " x = 0x10EE " , // GEORGIAN LETTER XAN (voiceless velar // fricative) " dZ = 0x10EF " , // GEORGIAN LETTER JHAN (voiced alveolar // affricate, as in "judge") " h = 0x10F0 " , // GEORGIAN LETTER HAE // Archaic Georgian, no longer used " HE = 0x10F1 " , // GEORGIAN LETTER HE " HIE = 0x10F2 " , // GEORGIAN LETTER HIE " WE = 0x10F3 " , // GEORGIAN LETTER WE " HAR = 0x10F4 " , // GEORGIAN LETTER HAR " HOE = 0x10F5 " , // GEORGIAN LETTER HOE " FI = 0x10F6 " , // GEORGIAN LETTER FI // for Mingrelian and Svan languages " YN = 0x10F7 " , // GEORGIAN LETTER YN " ELIFI = 0x10F8 " , // GEORGIAN LETTER ELIFI " PAR = 0x10FB " , // GEORGIAN PARAGRAPH SEPARATOR // forced literals, to block collapsing as part of a digraph or trigraph // these four unlikely to be needed " \\ p = 0x10E4 " , // force PHAR, block ejective PAR " \\ t = 0x10D7 " , // force TAN, block ejective TAR " \\ k = 0x10E5 " , // force KHAR, block ejective KAN // these could be needed, e.g. to enter d-followed-by-z as opposed to 'dz' " \\ d = 0x10D3 " , // force DON " \\ s = 0x10E1 " , // force SAN " \\ z = 0x10D6 " , // force ZEN " \\ S = 0x10E8 " , // force SHIN " \\ Z = 0x10DF " , // force ZHAR " \\ ' = 0x0027 " , // force single quote ./mytool/kmap/Chinese-WB.kmap0000644000175000017500000071301707565350106016066 0ustar henrichhenrich// Chinese-WB.kmap, v1.0, GPL (c) 1998.7. // Han Ideographic "a 0x20 = 0x5DE5", "aa 0x20 = 0x5F0F", "aaaa 0x20 = 0x5DE5", "aad 0x20 = 0x5F0F", "aadk 0x20 = 0x533F", "aadn 0x20 = 0x845A", "aadnz 0x20 = 0x615D", "aadw 0x20 = 0x8401", "aaf 0x20 = 0x82F7", "aafd 0x20 = 0x7519", "aaff 0x20 = 0x82F7", "aah 0x20 = 0x82BD", "aaht 0x20 = 0x82BD", "aak 0x20 = 0x6212", "aan 0x20 = 0x82E3", "aanf 0x20 = 0x82E3", "aat 0x20 = 0x835B", "aatq 0x20 = 0x835B", "ab 0x20 = 0x8282", "abe 0x20 = 0x836B", "abef 0x20 = 0x836B", "abf 0x20 = 0x8338", "abh 0x20 = 0x909B", "abib 0x20 = 0x83E1", "abio 0x20 = 0x84B8", "abiu 0x20 = 0x836A", "abj 0x20 = 0x8282", "abm 0x20 = 0x8301", "abn 0x20 = 0x82A4", "abnb 0x20 = 0x82A4", "abr 0x20 = 0x83F0", "abry 0x20 = 0x83F0", "abu 0x20 = 0x8428", "abut 0x20 = 0x8428", "ac 0x20 = 0x82AD", "aca 0x20 = 0x830E", "acaf 0x20 = 0x830E", "acb 0x20 = 0x82AD", "acbm 0x20 = 0x84E3", "acbt 0x20 = 0x8305", "ack 0x20 = 0x82D4", "ackf 0x20 = 0x82D4", "ad 0x20 = 0x57FA", "ada 0x20 = 0x83BD", "adaj 0x20 = 0x83BD", "adaw 0x20 = 0x857B", "adb 0x20 = 0x82CA", "adbb 0x20 = 0x82CA", "adc 0x20 = 0x8307", "adcu 0x20 = 0x8307", "ade 0x20 = 0x620E", "adef 0x20 = 0x846B", "adf 0x20 = 0x82E6", "adff 0x20 = 0x84D0", "adfi 0x20 = 0x8418", "adg 0x20 = 0x8473", "adgt 0x20 = 0x8473", "adh 0x20 = 0x8350", "adhb 0x20 = 0x8350", "adhd 0x20 = 0x845C", "adhf 0x20 = 0x832C", "adi 0x20 = 0x85C9", "adij 0x20 = 0x85C9", "adiy 0x20 = 0x85D5", "adj 0x20 = 0x83F2", "adjd 0x20 = 0x83F2", "adjdz 0x20 = 0x532A", "adk 0x20 = 0x82E5", "adkf 0x20 = 0x82E5", "adkn 0x20 = 0x60F9", "adl 0x20 = 0x82C8", "adlb 0x20 = 0x82C8", "adm 0x20 = 0x9879", "admt 0x20 = 0x8487", "admy 0x20 = 0x9879", "adn 0x20 = 0x8302", "adnt 0x20 = 0x85CF", "adntz 0x20 = 0x8302", "adu 0x20 = 0x8568", "aduw 0x20 = 0x8568", "adw 0x20 = 0x5176", "adwa 0x20 = 0x6221", "adwe 0x20 = 0x671F", "adwf 0x20 = 0x57FA", "adwfz 0x20 = 0x659F", "adwi 0x20 = 0x7DA6", "adwl 0x20 = 0x52D8", "adwn 0x20 = 0x751A", "adwr 0x20 = 0x65AF", "adwt 0x20 = 0x84C1", "adwu 0x20 = 0x5176", "adww 0x20 = 0x6B3A", "adx 0x20 = 0x830F", "adxb 0x20 = 0x830F", "ae 0x20 = 0x83DC", "aeb 0x20 = 0x827F", "aebc 0x20 = 0x83D4", "aebf 0x20 = 0x83A9", "aee 0x20 = 0x85D0", "aeej 0x20 = 0x84AF", "aeeq 0x20 = 0x85D0", "aeg 0x20 = 0x82F4", "aegf 0x20 = 0x82F4", "aes 0x20 = 0x83DC", "aesu 0x20 = 0x83DC", "aet 0x20 = 0x6563", "aetg 0x20 = 0x8564", "aety 0x20 = 0x6563", "aeu 0x20 = 0x85E4", "aeui 0x20 = 0x85E4", "aev 0x20 = 0x837D", "aevf 0x20 = 0x837D", "aey 0x20 = 0x82A8", "aeyu 0x20 = 0x82A8", "af 0x20 = 0x9769", "afa 0x20 = 0x97AF", "afab 0x20 = 0x97AF", "afae 0x20 = 0x97B4", "afb 0x20 = 0x90AF", "afbh 0x20 = 0x90AF", "afc 0x20 = 0x9776", "afcn 0x20 = 0x9776", "afcs 0x20 = 0x97A3", "afcu 0x20 = 0x82B8", "afcuz 0x20 = 0x82B0", "afd 0x20 = 0x7518", "afdj 0x20 = 0x85B7", "afdp 0x20 = 0x9791", "aff 0x20 = 0x828F", "afff 0x20 = 0x978B", "afffz 0x20 = 0x8451", "afffzz 0x20 = 0x97B2", "afi 0x20 = 0x849C", "afie 0x20 = 0x9798", "afii 0x20 = 0x849C", "afj 0x20 = 0x9769", "afjg 0x20 = 0x977C", "afkf 0x20 = 0x85B9", "afl 0x20 = 0x52D2", "aflf 0x20 = 0x857E", "afln 0x20 = 0x52D2", "afm 0x20 = 0x8D30", "afmd 0x20 = 0x9785", "afmi 0x20 = 0x8D30", "afn 0x20 = 0x82C7", "afnh 0x20 = 0x82C7", "afp 0x20 = 0x978D", "afpb 0x20 = 0x8378", "afpv 0x20 = 0x978D", "afq 0x20 = 0x97A0", "afqb 0x20 = 0x829C", "afqbz 0x20 = 0x82AB", "afqo 0x20 = 0x97A0", "afqq 0x20 = 0x9794", "afqw 0x20 = 0x83B0", "afqy 0x20 = 0x97AB", "afr 0x20 = 0x9773", "afrh 0x20 = 0x9773", "afs 0x20 = 0x67D0", "afsu 0x20 = 0x67D0", "aft 0x20 = 0x8457", "aftj 0x20 = 0x8457", "aftjz 0x20 = 0x84CD", "aftjzz 0x20 = 0x9792", "afu 0x20 = 0x8537", "afuk 0x20 = 0x8537", "afw 0x20 = 0x97AD", "afwq 0x20 = 0x97AD", "afwt 0x20 = 0x83F1", "afwu 0x20 = 0x8299", "afwx 0x20 = 0x9774", "afwy 0x20 = 0x85FF", "afwz 0x20 = 0x8299", "ag 0x20 = 0x4E03", "aga 0x20 = 0x8346", "agaj 0x20 = 0x8346", "agd 0x20 = 0x5321", "age 0x20 = 0x8386", "agef 0x20 = 0x83C1", "agey 0x20 = 0x8386", "agf 0x20 = 0x828B", "agfj 0x20 = 0x828B", "agh 0x20 = 0x5EFF", "aghg 0x20 = 0x5EFF", "aghh 0x20 = 0x8279", "agho 0x20 = 0x852B", "agi 0x20 = 0x82E4", "agig 0x20 = 0x82E4", "agj 0x20 = 0x8559", "agjn 0x20 = 0x8559", "agk 0x20 = 0x850C", "agkw 0x20 = 0x850C", "agm 0x20 = 0x82BE", "agmh 0x20 = 0x82BE", "agmm 0x20 = 0x989F", "agn 0x20 = 0x4E03", "agnn 0x20 = 0x5DE7", "agnt 0x20 = 0x6208", "agny 0x20 = 0x5F0B", "agnz 0x20 = 0x531A", "ago 0x20 = 0x83B1", "agou 0x20 = 0x83B1", "agq 0x20 = 0x846C", "agqa 0x20 = 0x846C", "agqg 0x20 = 0x85A4", "ags 0x20 = 0x8309", "agsu 0x20 = 0x8309", "agt 0x20 = 0x5EFE", "agth 0x20 = 0x5EFE", "agu 0x20 = 0x82F9", "aguh 0x20 = 0x82F9", "aguw 0x20 = 0x835A", "agv 0x20 = 0x840B", "agvv 0x20 = 0x840B", "agx 0x20 = 0x8351", "agxw 0x20 = 0x8351", "ah 0x20 = 0x7259", "aha 0x20 = 0x8627", "ahap 0x20 = 0x8627", "ahf 0x20 = 0x82B7", "ahfz 0x20 = 0x82DC", "ahi 0x20 = 0x83FD", "ahic 0x20 = 0x83FD", "ahk 0x20 = 0x7199", "ahkf 0x20 = 0x82EB", "ahkm 0x20 = 0x9890", "ahkmz 0x20 = 0x8D5C", "ahko 0x20 = 0x7199", "ahkz 0x20 = 0x82EB", "ahn 0x20 = 0x81E3", "ahnh 0x20 = 0x5367", "ahnhz 0x20 = 0x81E3", "aht 0x20 = 0x7259", "ahtb 0x20 = 0x90AA", "ahte 0x20 = 0x7259", "ahtg 0x20 = 0x9E26", "ahtp 0x20 = 0x8FD3", "ahty 0x20 = 0x96C5", "ahx 0x20 = 0x8308", "ahxb 0x20 = 0x8308", "ai 0x20 = 0x4E1C", "aia 0x20 = 0x8333", "aiaf 0x20 = 0x8333", "aias 0x20 = 0x8556", "aib 0x20 = 0x8303", "aibb 0x20 = 0x8303", "aie 0x20 = 0x83F9", "aieg 0x20 = 0x83F9", "aig 0x20 = 0x8584", "aigf 0x20 = 0x8584", "aigh 0x20 = 0x840D", "aigy 0x20 = 0x84B2", "aih 0x20 = 0x83E0", "aihc 0x20 = 0x83E0", "aii 0x20 = 0x4E1C", "aiit 0x20 = 0x838E", "aik 0x20 = 0x85FB", "aiks 0x20 = 0x85FB", "ain 0x20 = 0x8361", "ainr 0x20 = 0x8361", "aiq 0x20 = 0x9E2B", "aiqg 0x20 = 0x9E2B", "air 0x20 = 0x848E", "aire 0x20 = 0x848E", "ais 0x20 = 0x83CF", "aisk 0x20 = 0x83CF", "ait 0x20 = 0x843D", "aitk 0x20 = 0x843D", "aitl 0x20 = 0x85E9", "aiu 0x20 = 0x6C5E", "aiy 0x20 = 0x832B", "aiye 0x20 = 0x8497", "aiyn 0x20 = 0x832B", "aj 0x20 = 0x5212", "ajb 0x20 = 0x855E", "ajbc 0x20 = 0x855E", "ajd 0x20 = 0x83AB", "ajdc 0x20 = 0x84E6", "ajdf 0x20 = 0x5893", "ajdh 0x20 = 0x5E55", "ajdj 0x20 = 0x66AE", "ajdl 0x20 = 0x52DF", "ajdn 0x20 = 0x6155", "ajdr 0x20 = 0x6479", "ajdu 0x20 = 0x83AB", "ajdz 0x20 = 0x52DF", "aje 0x20 = 0x840C", "ajef 0x20 = 0x840C", "ajf 0x20 = 0x6614", "ajfu 0x20 = 0x83B3", "ajh 0x20 = 0x5212", "ajj 0x20 = 0x8349", "ajjf 0x20 = 0x83D6", "ajl 0x20 = 0x8513", "ajlc 0x20 = 0x8513", "ajq 0x20 = 0x845B", "ajqg 0x20 = 0x9E4A", "ajqn 0x20 = 0x845B", "ajqz 0x20 = 0x9E4A", "ajt 0x20 = 0x84DD", "ajtl 0x20 = 0x84DD", "aju 0x20 = 0x8327", "ajv 0x20 = 0x90FE", "ajvb 0x20 = 0x90FE", "ak 0x20 = 0x6216", "akb 0x20 = 0x847A", "akbf 0x20 = 0x847A", "akbt 0x20 = 0x857A", "akd 0x20 = 0x53F5", "akg 0x20 = 0x6216", "akgb 0x20 = 0x911E", "akgd 0x20 = 0x6216", "akgf 0x20 = 0x5807", "akgl 0x20 = 0x52E4", "akgn 0x20 = 0x60D1", "akgq 0x20 = 0x89D0", "akh 0x20 = 0x532E", "akhm 0x20 = 0x532E", "akhmz 0x20 = 0x8489", "akk 0x20 = 0x98A7", "akkf 0x20 = 0x8392", "akkg 0x20 = 0x9E73", "akkm 0x20 = 0x98A7", "akkn 0x20 = 0x843C", "akm 0x20 = 0x83B4", "akmw 0x20 = 0x83B4", "al 0x20 = 0x529F", "ald 0x20 = 0x8335", "aldn 0x20 = 0x84BD", "aldt 0x20 = 0x8511", "aldu 0x20 = 0x8335", "alf 0x20 = 0x82D7", "alfj 0x20 = 0x85AF", "alk 0x20 = 0x5323", "alkf 0x20 = 0x8304", "alkfz 0x20 = 0x8334", "all 0x20 = 0x8354", "alll 0x20 = 0x8354", "aln 0x20 = 0x529F", "alnu 0x20 = 0x8478", "alp 0x20 = 0x83B2", "alph 0x20 = 0x77A2", "alpn 0x20 = 0x750D", "alpu 0x20 = 0x83B2", "alpx 0x20 = 0x85A8", "alq 0x20 = 0x841D", "alqg 0x20 = 0x9E4B", "alqu 0x20 = 0x841D", "alt 0x20 = 0x83CC", "altu 0x20 = 0x83CC", "alv 0x20 = 0x5326", "alvv 0x20 = 0x5326", "alw 0x20 = 0x82CF", "alwu 0x20 = 0x82CF", "am 0x20 = 0x8D21", "ambj 0x20 = 0x8301", "amc 0x20 = 0x829F", "amcu 0x20 = 0x829F", "amd 0x20 = 0x82F1", "amdu 0x20 = 0x82F1", "amf 0x20 = 0x82D2", "amff 0x20 = 0x82D2", "amg 0x20 = 0x833C", "amgk 0x20 = 0x833C", "amh 0x20 = 0x531D", "amhk 0x20 = 0x531D", "amhkz 0x20 = 0x841C", "amk 0x20 = 0x82D8", "amkf 0x20 = 0x82D8", "amq 0x20 = 0x82CB", "amqb 0x20 = 0x82CB", "amu 0x20 = 0x8D21", "amw 0x20 = 0x9EC4", "amwu 0x20 = 0x9EC4", "amwuz 0x20 = 0x82AE", "amy 0x20 = 0x5DE9", "amyh 0x20 = 0x8DEB", "amyj 0x20 = 0x86E9", "amyn 0x20 = 0x6050", "amyq 0x20 = 0x928E", "amyy 0x20 = 0x5DE9", "an 0x20 = 0x4E16", "ana 0x20 = 0x82E0", "anab 0x20 = 0x82E0", "anb 0x20 = 0x827A", "anbz 0x20 = 0x8291", "and 0x20 = 0x5DE8", "anf 0x20 = 0x851A", "anff 0x20 = 0x851A", "anh 0x20 = 0x852C", "anhc 0x20 = 0x846D", "anhq 0x20 = 0x852C", "ani 0x20 = 0x5FD2", "ank 0x20 = 0x859C", "anku 0x20 = 0x859C", "anm 0x20 = 0x8D33", "anmu 0x20 = 0x8D33", "ann 0x20 = 0x854A", "annn 0x20 = 0x854A", "anu 0x20 = 0x82AF", "anud 0x20 = 0x836C", "anv 0x20 = 0x4E16", "anw 0x20 = 0x84FC", "anwe 0x20 = 0x84FC", "any 0x20 = 0x82E1", "anyu 0x20 = 0x8369", "anyw 0x20 = 0x82E1", "aov 0x20 = 0x848C", "aovf 0x20 = 0x848C", "aovt 0x20 = 0x85AE", "ap 0x20 = 0x829D", "apd 0x20 = 0x83EA", "apdf 0x20 = 0x83EA", "apff 0x20 = 0x8314", "apfl 0x20 = 0x853B", "apfq 0x20 = 0x839E", "apg 0x20 = 0x8499", "apge 0x20 = 0x8499", "apgf 0x20 = 0x82CE", "apgg 0x20 = 0x8431", "apgy 0x20 = 0x83B9", "apgz 0x20 = 0x83B9", "api 0x20 = 0x8365", "apiu 0x20 = 0x8365", "apj 0x20 = 0x8424", "apju 0x20 = 0x8424", "apk 0x20 = 0x8425", "apkk 0x20 = 0x8425", "apl 0x20 = 0x52B3", "aplb 0x20 = 0x52B3", "aplj 0x20 = 0x8364", "apn 0x20 = 0x8315", "apnf 0x20 = 0x8315", "apnn 0x20 = 0x83C5", "apo 0x20 = 0x8367", "apou 0x20 = 0x8367", "apq 0x20 = 0x83BA", "apqb 0x20 = 0x83C0", "apqf 0x20 = 0x84E5", "apqg 0x20 = 0x83BA", "apr 0x20 = 0x8366", "aprh 0x20 = 0x8366", "aps 0x20 = 0x8363", "apsu 0x20 = 0x8363", "apu 0x20 = 0x829D", "apw 0x20 = 0x84C9", "apwj 0x20 = 0x84FF", "apwk 0x20 = 0x84C9", "apx 0x20 = 0x8426", "apxi 0x20 = 0x8426", "aq 0x20 = 0x533A", "aqa 0x20 = 0x82AA", "aqab 0x20 = 0x82AA", "aqb 0x20 = 0x82D1", "aqbb 0x20 = 0x82D1", "aqg 0x20 = 0x8461", "aqgb 0x20 = 0x831A", "aqgd 0x20 = 0x85D3", "aqgj 0x20 = 0x84DF", "aqgn 0x20 = 0x74EF", "aqgy 0x20 = 0x8461", "aqi 0x20 = 0x533A", "aqj 0x20 = 0x8340", "aqjf 0x20 = 0x8340", "aqk 0x20 = 0x656C", "aqkf 0x20 = 0x82DF", "aqkfz 0x20 = 0x8317", "aqkr 0x20 = 0x64CE", "aqks 0x20 = 0x6AA0", "aqkt 0x20 = 0x656C", "aqky 0x20 = 0x8B66", "aqkyz 0x20 = 0x83DF", "aqm 0x20 = 0x6BB4", "aqmc 0x20 = 0x6BB4", "aqn 0x20 = 0x82DE", "aqnb 0x20 = 0x82DE", "aqo 0x20 = 0x83CA", "aqou 0x20 = 0x83CA", "aqq 0x20 = 0x6B27", "aqqg 0x20 = 0x9E25", "aqqw 0x20 = 0x6B27", "aqr 0x20 = 0x8404", "aqrm 0x20 = 0x8404", "aqrn 0x20 = 0x8471", "aqrq 0x20 = 0x8538", "aqrr 0x20 = 0x82B4", "aqt 0x20 = 0x83B7", "aqtb 0x20 = 0x8306", "aqtd 0x20 = 0x83B7", "aqtn 0x20 = 0x83B8", "aqto 0x20 = 0x837B", "aqu 0x20 = 0x827E", "aqv 0x20 = 0x5339", "aqvf 0x20 = 0x840F", "aqw 0x20 = 0x82A1", "aqwu 0x20 = 0x82A1", "aqy 0x20 = 0x828D", "aqyg 0x20 = 0x9E22", "aqygz 0x20 = 0x8311", "aqyu 0x20 = 0x828D", "ar 0x20 = 0x5320", "arc 0x20 = 0x8469", "arcb 0x20 = 0x8469", "ard 0x20 = 0x83DD", "ardc 0x20 = 0x83DD", "ari 0x20 = 0x8331", "ariu 0x20 = 0x8331", "arj 0x20 = 0x82B9", "ark 0x20 = 0x5320", "art 0x20 = 0x8406", "artf 0x20 = 0x8406", "as 0x20 = 0x82DB", "asf 0x20 = 0x831C", "asg 0x20 = 0x82EF", "asgf 0x20 = 0x82EF", "asgo 0x20 = 0x8638", "ash 0x20 = 0x8459", "ashf 0x20 = 0x8459", "asj 0x20 = 0x8548", "asjj 0x20 = 0x8548", "ask 0x20 = 0x82DB", "askf 0x20 = 0x82DB", "asr 0x20 = 0x83E5", "asrj 0x20 = 0x83E5", "asw 0x20 = 0x83D8", "aswc 0x20 = 0x83D8", "at 0x20 = 0x653B", "ata 0x20 = 0x82CC", "atay 0x20 = 0x82CC", "atd 0x20 = 0x533B", "atdi 0x20 = 0x533B", "atdj 0x20 = 0x835E", "atdn 0x20 = 0x7FF3", "atdp 0x20 = 0x84EC", "ate 0x20 = 0x83A0", "ateb 0x20 = 0x83A0", "atf 0x20 = 0x828A", "atfh 0x20 = 0x8347", "atfj 0x20 = 0x828A", "atfp 0x20 = 0x839B", "atg 0x20 = 0x8463", "atgf 0x20 = 0x8463", "atgn 0x20 = 0x7FD8", "atgo 0x20 = 0x85B0", "atgq 0x20 = 0x5C27", "ath 0x20 = 0x84F0", "athh 0x20 = 0x84F0", "atj 0x20 = 0x8389", "atjj 0x20 = 0x8389", "atl 0x20 = 0x84D6", "atlx 0x20 = 0x84D6", "atm 0x20 = 0x8587", "atmt 0x20 = 0x8587", "ato 0x20 = 0x8543", "atol 0x20 = 0x8543", "atq 0x20 = 0x85DC", "atqh 0x20 = 0x8605", "atqi 0x20 = 0x85DC", "atr 0x20 = 0x83AA", "atrt 0x20 = 0x83AA", "atv 0x20 = 0x840E", "atvf 0x20 = 0x840E", "atx 0x20 = 0x8393", "atxi 0x20 = 0x8629", "atxu 0x20 = 0x8393", "aty 0x20 = 0x653B", "au 0x20 = 0x71D5", "aub 0x20 = 0x84B4", "aube 0x20 = 0x84B4", "auj 0x20 = 0x8398", "aujn 0x20 = 0x858F", "aujr 0x20 = 0x8572", "auk 0x20 = 0x83E9", "aukf 0x20 = 0x83E9", "auko 0x20 = 0x71D5", "aum 0x20 = 0x853D", "aumt 0x20 = 0x853D", "aup 0x20 = 0x8482", "auph 0x20 = 0x8482", "aupy 0x20 = 0x84A1", "auq 0x20 = 0x848B", "auqf 0x20 = 0x848B", "auqu 0x20 = 0x832D", "auqw 0x20 = 0x8328", "aus 0x20 = 0x85AA", "ausr 0x20 = 0x85AA", "aut 0x20 = 0x84BA", "autd 0x20 = 0x84BA", "auv 0x20 = 0x84B9", "auvo 0x20 = 0x84B9", "auw 0x20 = 0x853A", "auwy 0x20 = 0x853A", "av 0x20 = 0x5207", "avb 0x20 = 0x827D", "avd 0x20 = 0x83C7", "avdf 0x20 = 0x83C7", "avdfz 0x20 = 0x8585", "ave 0x20 = 0x831B", "aveu 0x20 = 0x831B", "avf 0x20 = 0x8368", "avfu 0x20 = 0x8368", "avij 0x20 = 0x8427", "avk 0x20 = 0x8339", "avkf 0x20 = 0x8339", "avkfz 0x20 = 0x82D5", "avn 0x20 = 0x5207", "avw 0x20 = 0x8438", "avwu 0x20 = 0x8438", "avy 0x20 = 0x8284", "avyu 0x20 = 0x8284", "aw 0x20 = 0x5171", "awb 0x20 = 0x82CD", "awbb 0x20 = 0x82CD", "awc 0x20 = 0x84CA", "awcn 0x20 = 0x84CA", "awd 0x20 = 0x832F", "awdu 0x20 = 0x832F", "awf 0x20 = 0x8521", "awfc 0x20 = 0x835F", "awff 0x20 = 0x830C", "awfi 0x20 = 0x8521", "awfu 0x20 = 0x82FB", "awg 0x20 = 0x8475", "awgd 0x20 = 0x8475", "awgf 0x20 = 0x8343", "awgi 0x20 = 0x83B6", "awgt 0x20 = 0x8539", "awh 0x20 = 0x839C", "awht 0x20 = 0x839C", "awj 0x20 = 0x82A5", "awjj 0x20 = 0x82A5", "awk 0x20 = 0x8446", "awks 0x20 = 0x8446", "awn 0x20 = 0x5DF7", "awnb 0x20 = 0x5DF7", "awnbz 0x20 = 0x5B7D", "awns 0x20 = 0x8616", "awnu 0x20 = 0x606D", "awnuz 0x20 = 0x859B", "aws 0x20 = 0x8336", "awsk 0x20 = 0x8377", "awsu 0x20 = 0x8336", "awsz 0x20 = 0x8377", "awt 0x20 = 0x837C", "awtf 0x20 = 0x834F", "awtu 0x20 = 0x837C", "awu 0x20 = 0x5171", "awuf 0x20 = 0x8385", "awuk 0x20 = 0x84D3", "awv 0x20 = 0x82AC", "awvb 0x20 = 0x82AC", "aww 0x20 = 0x5DEB", "awwi 0x20 = 0x5DEB", "awwq 0x20 = 0x89CB", "awwu 0x20 = 0x82C1", "awx 0x20 = 0x82B1", "awxb 0x20 = 0x82B1", "awy 0x20 = 0x8549", "awyc 0x20 = 0x82D3", "awyf 0x20 = 0x8411", "awyj 0x20 = 0x5290", "awyo 0x20 = 0x8549", "awyu 0x20 = 0x83F8", "ax 0x20 = 0x836F", "axa 0x20 = 0x836D", "axaf 0x20 = 0x836D", "axb 0x20 = 0x828E", "axf 0x20 = 0x836E", "axfu 0x20 = 0x836E", "axg 0x20 = 0x83BC", "axgn 0x20 = 0x83BC", "axj 0x20 = 0x8574", "axjl 0x20 = 0x8574", "axq 0x20 = 0x836F", "axqy 0x20 = 0x836F", "axt 0x20 = 0x8297", "axtr 0x20 = 0x8297", "axx 0x20 = 0x8298", "axxb 0x20 = 0x8298", "axxf 0x20 = 0x835C", "axxr 0x20 = 0x8488", "ay 0x20 = 0x82B3", "aya 0x20 = 0x8517", "ayao 0x20 = 0x8517", "ayb 0x20 = 0x82B3", "aybc 0x20 = 0x84E0", "ayc 0x20 = 0x833A", "aycq 0x20 = 0x833A", "ayh 0x20 = 0x82C4", "ayhu 0x20 = 0x82C4", "ayj 0x20 = 0x853C", "ayjj 0x20 = 0x8360", "ayjn 0x20 = 0x853C", "ayk 0x20 = 0x84D1", "ayke 0x20 = 0x84D1", "aym 0x20 = 0x84BF", "aymk 0x20 = 0x84BF", "ayms 0x20 = 0x85C1", "ayn 0x20 = 0x8292", "ayna 0x20 = 0x533E", "aynb 0x20 = 0x8292", "aynq 0x20 = 0x8352", "aynr 0x20 = 0x82A6", "ayp 0x20 = 0x8476", "ayps 0x20 = 0x8476", "ays 0x20 = 0x8611", "aysd 0x20 = 0x8611", "aysdz 0x20 = 0x863C", "ayt 0x20 = 0x851F", "aytd 0x20 = 0x851F", "ayv 0x20 = 0x83A8", "ayve 0x20 = 0x83A8", "ayw 0x20 = 0x8403", "aywf 0x20 = 0x8403", "aywn 0x20 = 0x82A9", "ayx 0x20 = 0x84C4", "ayxl 0x20 = 0x84C4", "ayxy 0x20 = 0x8579", "b 0x20 = 0x4E86", "ba 0x20 = 0x9648", "bai 0x20 = 0x9648", "baiy 0x20 = 0x9648", "bb 0x20 = 0x5B50", "bbb 0x20 = 0x5B50", "bbbb 0x20 = 0x5B50", "bbc 0x20 = 0x966C", "bbcy 0x20 = 0x966C", "bbh 0x20 = 0x8036", "bc 0x20 = 0x53D6", "bca 0x20 = 0x9649", "bcag 0x20 = 0x9649", "bccm 0x20 = 0x989E", "bccu 0x20 = 0x8042", "bct 0x20 = 0x805A", "bctb 0x20 = 0x9139", "bcti 0x20 = 0x805A", "bcv 0x20 = 0x5A36", "bcvf 0x20 = 0x5A36", "bcy 0x20 = 0x53D6", "bd 0x20 = 0x627F", "bda 0x20 = 0x968B", "bdae 0x20 = 0x968B", "bdan 0x20 = 0x96B3", "bde 0x20 = 0x968F", "bdef 0x20 = 0x5815", "bdep 0x20 = 0x968F", "bdi 0x20 = 0x627F", "bdii 0x20 = 0x627F", "bdj 0x20 = 0x964C", "bdjg 0x20 = 0x964C", "bdx 0x20 = 0x9647", "bdxn 0x20 = 0x9647", "be 0x20 = 0x9634", "beg 0x20 = 0x9634", "begg 0x20 = 0x963B", "bf 0x20 = 0x9645", "bfd 0x20 = 0x5B7A", "bfdj 0x20 = 0x5B7A", "bfh 0x20 = 0x9661", "bfhy 0x20 = 0x9661", "bfi 0x20 = 0x9645", "bfiy 0x20 = 0x9645", "bfj 0x20 = 0x9631", "bfjh 0x20 = 0x9631", "bfm 0x20 = 0x9646", "bfmh 0x20 = 0x9646", "bfq 0x20 = 0x962E", "bfqn 0x20 = 0x962E", "bfw 0x20 = 0x9675", "bfwt 0x20 = 0x9675", "bg 0x20 = 0x536B", "bgd 0x20 = 0x536B", "bgh 0x20 = 0x8033", "bghg 0x20 = 0x8033", "bgk 0x20 = 0x9694", "bgkh 0x20 = 0x9694", "bgm 0x20 = 0x964B", "bgmn 0x20 = 0x964B", "bgq 0x20 = 0x9622", "bgqn 0x20 = 0x9622", "bgu 0x20 = 0x9655", "bguw 0x20 = 0x9655", "bh 0x20 = 0x803B", "bhc 0x20 = 0x9642", "bhcy 0x20 = 0x9642", "bhg 0x20 = 0x803B", "bhgj 0x20 = 0x86A9", "bhi 0x20 = 0x965F", "bhic 0x20 = 0x9A98", "bhit 0x20 = 0x965F", "bhk 0x20 = 0x5C6E", "bhkg 0x20 = 0x963D", "bi 0x20 = 0x5B59", "bib 0x20 = 0x51FD", "bibk 0x20 = 0x51FD", "big 0x20 = 0x4E1E", "bigb 0x20 = 0x537A", "bigf 0x20 = 0x4E1E", "bij 0x20 = 0x9699", "biji 0x20 = 0x9699", "bip 0x20 = 0x900A", "bipi 0x20 = 0x900A", "biy 0x20 = 0x5B59", "bj 0x20 = 0x9633", "bjf 0x20 = 0x9667", "bjfg 0x20 = 0x9667", "bjg 0x20 = 0x9633", "bjm 0x20 = 0x9685", "bjmy 0x20 = 0x9685", "bjx 0x20 = 0x96B0", "bjxo 0x20 = 0x96B0", "bk 0x20 = 0x804C", "bkc 0x20 = 0x4E9F", "bkcg 0x20 = 0x4E9F", "bkh 0x20 = 0x8069", "bkhm 0x20 = 0x8069", "bkm 0x20 = 0x9668", "bkmy 0x20 = 0x9668", "bkw 0x20 = 0x804C", "bkwy 0x20 = 0x804C", "bl 0x20 = 0x9635", "blf 0x20 = 0x5B5F", "blge 0x20 = 0x9688", "blh 0x20 = 0x9635", "bll 0x20 = 0x52D0", "blln 0x20 = 0x52D0", "bm 0x20 = 0x51FA", "bmf 0x20 = 0x795F", "bmfg 0x20 = 0x8043", "bmfi 0x20 = 0x795F", "bmg 0x20 = 0x8058", "bmgn 0x20 = 0x8058", "bmk 0x20 = 0x51FA", "bmo 0x20 = 0x7C9C", "bmou 0x20 = 0x7C9C", "bn 0x20 = 0x4E5F", "bnh 0x20 = 0x4E86", "bnhg 0x20 = 0x5B51", "bnhn 0x20 = 0x4E5F", "bnhz 0x20 = 0x51F5", "bnhzz 0x20 = 0x5369", "bnhzzz 0x20 = 0x961D", "bnn 0x20 = 0x5B54", "bo 0x20 = 0x803F", "boy 0x20 = 0x803F", "bp 0x20 = 0x8FBD", "bpf 0x20 = 0x9662", "bpfq 0x20 = 0x9662", "bpk 0x20 = 0x8FBD", "bpq 0x20 = 0x803D", "bpqn 0x20 = 0x803D", "bps 0x20 = 0x804D", "bpsh 0x20 = 0x804D", "bpx 0x20 = 0x9640", "bpxn 0x20 = 0x9640", "bq 0x20 = 0x9690", "bqn 0x20 = 0x5B62", "bqnn 0x20 = 0x5B62", "bqr 0x20 = 0x9676", "bqrm 0x20 = 0x9676", "bqt 0x20 = 0x804A", "bqtb 0x20 = 0x804A", "bqv 0x20 = 0x9677", "bqvg 0x20 = 0x9677", "bqvn 0x20 = 0x9690", "br 0x20 = 0x5B64", "brc 0x20 = 0x5B64", "brcy 0x20 = 0x5B64", "brcyz 0x20 = 0x962A", "brg 0x20 = 0x968D", "brgg 0x20 = 0x968D", "brq 0x20 = 0x9697", "brqc 0x20 = 0x9697", "brt 0x20 = 0x9674", "brtf 0x20 = 0x9674", "bs 0x20 = 0x963F", "bsh 0x20 = 0x8035", "bsk 0x20 = 0x963F", "bskg 0x20 = 0x963F", "bt 0x20 = 0x964D", "bta 0x20 = 0x964D", "btah 0x20 = 0x964D", "btd 0x20 = 0x8052", "btdg 0x20 = 0x8052", "btf 0x20 = 0x9621", "btfh 0x20 = 0x9621", "btg 0x20 = 0x9686", "btgf 0x20 = 0x9672", "btgg 0x20 = 0x9686", "bth 0x20 = 0x963C", "bthf 0x20 = 0x963C", "bty 0x20 = 0x5B5C", "bu 0x20 = 0x8054", "bud 0x20 = 0x8054", "budy 0x20 = 0x8054", "bue 0x20 = 0x96A7", "buep 0x20 = 0x96A7", "buj 0x20 = 0x969C", "bujh 0x20 = 0x969C", "buk 0x20 = 0x966A", "bukg 0x20 = 0x966A", "bukn 0x20 = 0x806A", "buw 0x20 = 0x9698", "buwl 0x20 = 0x9698", "bv 0x20 = 0x9650", "bve 0x20 = 0x9650", "bvey 0x20 = 0x9650", "bw 0x20 = 0x961F", "bwf 0x20 = 0x9644", "bwff 0x20 = 0x5760", "bwfy 0x20 = 0x9644", "bwg 0x20 = 0x9669", "bwgi 0x20 = 0x9669", "bwj 0x20 = 0x9636", "bwjh 0x20 = 0x9636", "bwt 0x20 = 0x9664", "bwty 0x20 = 0x9664", "bwy 0x20 = 0x961F", "bwyc 0x20 = 0x8046", "bx 0x20 = 0x965B", "bxx 0x20 = 0x965B", "bxxf 0x20 = 0x965B", "by 0x20 = 0x9632", "byi 0x20 = 0x5B53", "byn 0x20 = 0x9632", "bynw 0x20 = 0x5B69", "bynwz 0x20 = 0x9654", "c 0x20 = 0x4EE5", "ca 0x20 = 0x620F", "cad 0x20 = 0x9888", "cadm 0x20 = 0x9888", "cadw 0x20 = 0x9A90", "caj 0x20 = 0x5F01", "cajh 0x20 = 0x522D", "cal 0x20 = 0x52B2", "caln 0x20 = 0x52B2", "cap 0x20 = 0x8FF3", "capd 0x20 = 0x8FF3", "caq 0x20 = 0x9A71", "caqy 0x20 = 0x9A71", "cat 0x20 = 0x620F", "catq 0x20 = 0x9A81", "cay 0x20 = 0x5DEF", "cayq 0x20 = 0x5DEF", "cb 0x20 = 0x9093", "cbc 0x20 = 0x9AA4", "cbci 0x20 = 0x9AA4", "cbd 0x20 = 0x9884", "cbdm 0x20 = 0x9884", "cbh 0x20 = 0x9093", "cbj 0x20 = 0x4E88", "cbn 0x20 = 0x9A70", "cbq 0x20 = 0x8C6B", "cbqe 0x20 = 0x8C6B", "cbt 0x20 = 0x77DB", "cbtc 0x20 = 0x9A9B", "cbtg 0x20 = 0x9E6C", "cbtgz 0x20 = 0x9E5C", "cbth 0x20 = 0x7780", "cbtj 0x20 = 0x87CA", "cbtjz 0x20 = 0x8765", "cbtn 0x20 = 0x77DC", "cbtq 0x20 = 0x936A", "cbtr 0x20 = 0x77DB", "cbts 0x20 = 0x67D4", "cbtv 0x20 = 0x5A7A", "cc 0x20 = 0x53CC", "ccc 0x20 = 0x53C8", "cccc 0x20 = 0x53C8", "cccf 0x20 = 0x5792", "cccg 0x20 = 0x53E0", "cccm 0x20 = 0x98A1", "cccs 0x20 = 0x6851", "ccd 0x20 = 0x9A96", "ccde 0x20 = 0x9A96", "ccf 0x20 = 0x9A7F", "ccfh 0x20 = 0x9A7F", "cck 0x20 = 0x9A80", "cckg 0x20 = 0x9A80", "ccw 0x20 = 0x9A8F", "ccwt 0x20 = 0x9A8F", "ccy 0x20 = 0x53CC", "ccyj 0x20 = 0x9A9A", "ccyz 0x20 = 0x9A6D", "cd 0x20 = 0x53C2", "cdd 0x20 = 0x53C1", "cddf 0x20 = 0x53C1", "cde 0x20 = 0x53C2", "cden 0x20 = 0x6BF5", "cder 0x20 = 0x53C2", "cdl 0x20 = 0x755A", "cdlf 0x20 = 0x755A", "cds 0x20 = 0x9A91", "cdsk 0x20 = 0x9A91", "cdy 0x20 = 0x9A6E", "ce 0x20 = 0x80FD", "ceg 0x20 = 0x9A75", "cegg 0x20 = 0x9A75", "cej 0x20 = 0x752C", "cel 0x20 = 0x52C7", "celb 0x20 = 0x52C7", "cen 0x20 = 0x607F", "cenu 0x20 = 0x607F", "cep 0x20 = 0x901A", "cepk 0x20 = 0x901A", "cex 0x20 = 0x80FD", "cexo 0x20 = 0x718A", "cexx 0x20 = 0x80FD", "cf 0x20 = 0x5BF9", "cff 0x20 = 0x5723", "cfn 0x20 = 0x603C", "cfnu 0x20 = 0x603C", "cfy 0x20 = 0x5BF9", "cgm 0x20 = 0x9A8A", "cgmy 0x20 = 0x9A8A", "cjs 0x20 = 0x9A92", "cjsy 0x20 = 0x9A92", "ck 0x20 = 0x53F0", "ckb 0x20 = 0x90B0", "ckbh 0x20 = 0x90B0", "ckf 0x20 = 0x53F0", "ckh 0x20 = 0x9A6F", "ckn 0x20 = 0x6020", "cknu 0x20 = 0x6020", "cko 0x20 = 0x70B1", "ckou 0x20 = 0x70B1", "ckp 0x20 = 0x8FE8", "ckpd 0x20 = 0x8FE8", "ckq 0x20 = 0x9A76", "ckqy 0x20 = 0x9A76", "cl 0x20 = 0x529D", "clg 0x20 = 0x9A77", "cln 0x20 = 0x529D", "clx 0x20 = 0x9AA1", "clxi 0x20 = 0x9AA1", "cm 0x20 = 0x89C2", "cmg 0x20 = 0x9A8B", "cmgn 0x20 = 0x9A8B", "cmq 0x20 = 0x89C2", "cmqn 0x20 = 0x89C2", "cn 0x20 = 0x9A6C", "cnb 0x20 = 0x9AA3", "cnbb 0x20 = 0x9AA3", "cnh 0x20 = 0x5DF4", "cnhn 0x20 = 0x5DF4", "cnn 0x20 = 0x9A6C", "cnng 0x20 = 0x9A6C", "cny 0x20 = 0x53B6", "cp 0x20 = 0x9A7C", "cpx 0x20 = 0x9A7C", "cpxn 0x20 = 0x9A7C", "cq 0x20 = 0x5141", "cqb 0x20 = 0x5141", "cqk 0x20 = 0x9A79", "cqkg 0x20 = 0x9A79", "cqq 0x20 = 0x9A73", "cqqy 0x20 = 0x9A73", "cqv 0x20 = 0x9A7A", "cqvg 0x20 = 0x9A7A", "cqw 0x20 = 0x6B22", "cqwy 0x20 = 0x6B22", "cqy 0x20 = 0x9E21", "cqyg 0x20 = 0x9E21", "cqyl 0x20 = 0x9A9D", "cr 0x20 = 0x725F", "crh 0x20 = 0x725F", "crhj 0x20 = 0x725F", "csf 0x20 = 0x9AA0", "csfi 0x20 = 0x9AA0", "ct 0x20 = 0x77E3", "ctd 0x20 = 0x77E3", "ctdj 0x20 = 0x9A84", "ctdu 0x20 = 0x77E3", "ctk 0x20 = 0x9A86", "ctkg 0x20 = 0x9A86", "ctl 0x20 = 0x9AA2", "ctln 0x20 = 0x9AA2", "cua 0x20 = 0x9A88", "cuah 0x20 = 0x9A88", "cux 0x20 = 0x9AA5", "cuxw 0x20 = 0x9AA5", "cv 0x20 = 0x8270", "cve 0x20 = 0x8270", "cvey 0x20 = 0x8270", "cw 0x20 = 0x96BE", "cwf 0x20 = 0x9A78", "cwfy 0x20 = 0x9A78", "cwg 0x20 = 0x9A8C", "cwgi 0x20 = 0x9A8C", "cwt 0x20 = 0x9021", "cwtc 0x20 = 0x76B4", "cwtp 0x20 = 0x9021", "cwx 0x20 = 0x9A85", "cwxf 0x20 = 0x9A85", "cwy 0x20 = 0x96BE", "cwyg 0x20 = 0x96BE", "cwygz 0x20 = 0x9A93", "cy 0x20 = 0x9A7B", "cyg 0x20 = 0x9A7B", "cygg 0x20 = 0x9A7B", "cyi 0x20 = 0x53C9", "cyj 0x20 = 0x86A4", "cyju 0x20 = 0x86A4", "cyk 0x20 = 0x9AA7", "cyke 0x20 = 0x9AA7", "cyn 0x20 = 0x9A74", "cyna 0x20 = 0x9A97", "cynn 0x20 = 0x9A9F", "cynt 0x20 = 0x9A74", "cynw 0x20 = 0x9A87", "d 0x20 = 0x5728", "da 0x20 = 0x5DE6", "dadr 0x20 = 0x53AE", "daf 0x20 = 0x5DE6", "dah 0x20 = 0x7811", "daht 0x20 = 0x7811", "dai 0x20 = 0x7934", "daif 0x20 = 0x7934", "daj 0x20 = 0x539D", "dajd 0x20 = 0x539D", "dam 0x20 = 0x78FA", "damh 0x20 = 0x7838", "damw 0x20 = 0x78FA", "dan 0x20 = 0x789F", "dans 0x20 = 0x789F", "dap 0x20 = 0x791E", "dape 0x20 = 0x791E", "daq 0x20 = 0x5941", "daqu 0x20 = 0x5941", "daqy 0x20 = 0x7839", "dat 0x20 = 0x7857", "datq 0x20 = 0x7857", "dav 0x20 = 0x780C", "davn 0x20 = 0x780C", "daw 0x20 = 0x7924", "dawi 0x20 = 0x7924", "day 0x20 = 0x786D", "dayn 0x20 = 0x786D", "db 0x20 = 0x987E", "dbd 0x20 = 0x987E", "dbdm 0x20 = 0x987E", "dbf 0x20 = 0x8037", "dbm 0x20 = 0x7840", "dbmh 0x20 = 0x7840", "dbv 0x20 = 0x5384", "dc 0x20 = 0x53CB", "dcc 0x20 = 0x78C9", "dccs 0x20 = 0x78C9", "dcd 0x20 = 0x789C", "dcde 0x20 = 0x789C", "dcg 0x20 = 0x7801", "dcu 0x20 = 0x53CB", "dcw 0x20 = 0x96C4", "dcwy 0x20 = 0x96C4", "dd 0x20 = 0x5927", "ddd 0x20 = 0x78CA", "dddd 0x20 = 0x5927", "dddf 0x20 = 0x78CA", "dddl 0x20 = 0x9765", "dddn 0x20 = 0x783A", "dddq 0x20 = 0x98D9", "ddg 0x20 = 0x78B1", "ddgt 0x20 = 0x78B1", "ddh 0x20 = 0x53A6", "ddht 0x20 = 0x53A6", "ddi 0x20 = 0x538C", "ddl 0x20 = 0x53A3", "ddlk 0x20 = 0x53A3", "ddm 0x20 = 0x7855", "ddmy 0x20 = 0x7855", "ddn 0x20 = 0x5389", "ddnl 0x20 = 0x52B1", "ddnv 0x20 = 0x5389", "ddr 0x20 = 0x9B47", "ddrc 0x20 = 0x9B47", "ddu 0x20 = 0x5957", "ddw 0x20 = 0x990D", "ddwe 0x20 = 0x990D", "de 0x20 = 0x80E1", "deb 0x20 = 0x90C1", "debh 0x20 = 0x90C1", "dee 0x20 = 0x787C", "deeg 0x20 = 0x787C", "def 0x20 = 0x6709", "defk 0x20 = 0x9AFB", "deg 0x20 = 0x80E1", "degq 0x20 = 0x9AE1", "deh 0x20 = 0x9AED", "dehx 0x20 = 0x9AED", "del 0x20 = 0x9B1F", "dele 0x20 = 0x9B1F", "dem 0x20 = 0x9AEF", "demf 0x20 = 0x9AEF", "dep 0x20 = 0x9B03", "depi 0x20 = 0x9B03", "depw 0x20 = 0x9B13", "deq 0x20 = 0x9E55", "deqg 0x20 = 0x9E55", "det 0x20 = 0x9ADF", "detn 0x20 = 0x9AE6", "deto 0x20 = 0x9B0F", "deu 0x20 = 0x9B08", "deub 0x20 = 0x9B08", "devk 0x20 = 0x9AEB", "devn 0x20 = 0x9B23", "dew 0x20 = 0x9AF9", "dews 0x20 = 0x9AF9", "df 0x20 = 0x593A", "dfa 0x20 = 0x5954", "dfaj 0x20 = 0x5954", "dfc 0x20 = 0x78D5", "dfcl 0x20 = 0x78D5", "dfcy 0x20 = 0x781D", "dfe 0x20 = 0x8FB0", "dfef 0x20 = 0x8FB1", "dfei 0x20 = 0x8FB0", "dfej 0x20 = 0x8703", "dfek 0x20 = 0x5507", "dff 0x20 = 0x7845", "dfff 0x20 = 0x594E", "dffg 0x20 = 0x7845", "dfh 0x20 = 0x77F8", "dfi 0x20 = 0x5948", "dfiu 0x20 = 0x5948", "dfn 0x20 = 0x5938", "dfnb 0x20 = 0x5938", "dfnj 0x20 = 0x5233", "dfnn 0x20 = 0x530F", "dfny 0x20 = 0x7816", "dfnyz 0x20 = 0x74E0", "dft 0x20 = 0x5962", "dftj 0x20 = 0x5962", "dfu 0x20 = 0x593A", "dfy 0x20 = 0x538B", "dfyi 0x20 = 0x538B", "dg 0x20 = 0x4E09", "dga 0x20 = 0x7814", "dgah 0x20 = 0x7814", "dgaj 0x20 = 0x784E", "dgb 0x20 = 0x7818", "dgbn 0x20 = 0x7818", "dgg 0x20 = 0x4E09", "dggg 0x20 = 0x4E09", "dgh 0x20 = 0x53E4", "dghg 0x20 = 0x53E4", "dgj 0x20 = 0x786C", "dgjq 0x20 = 0x786C", "dgk 0x20 = 0x54B8", "dgkf 0x20 = 0x53A8", "dgkn 0x20 = 0x611F", "dgkt 0x20 = 0x54B8", "dgl 0x20 = 0x7913", "dglg 0x20 = 0x7913", "dgm 0x20 = 0x789B", "dgmy 0x20 = 0x789B", "dgn 0x20 = 0x620C", "dgnt 0x20 = 0x620C", "dgt 0x20 = 0x5382", "dgtg 0x20 = 0x77F3", "dgty 0x20 = 0x72AC", "dgu 0x20 = 0x7830", "dguh 0x20 = 0x7830", "dguw 0x20 = 0x7856", "dgv 0x20 = 0x5A01", "dgvt 0x20 = 0x5A01", "dgx 0x20 = 0x78A1", "dgxu 0x20 = 0x78A1", "dh 0x20 = 0x4E30", "dha 0x20 = 0x621B", "dhar 0x20 = 0x621B", "dhb 0x20 = 0x5B58", "dhbd 0x20 = 0x5B58", "dhc 0x20 = 0x7834", "dhcy 0x20 = 0x7834", "dhdb 0x20 = 0x9146", "dhdf 0x20 = 0x7809", "dhdn 0x20 = 0x6167", "dhdv 0x20 = 0x5F57", "dhf 0x20 = 0x5728", "dhfd 0x20 = 0x5728", "dhi 0x20 = 0x621A", "dhih 0x20 = 0x8E59", "dhit 0x20 = 0x621A", "dhk 0x20 = 0x4E30", "dhkg 0x20 = 0x7827", "dhq 0x20 = 0x8273", "dhqc 0x20 = 0x8273", "dht 0x20 = 0x590F", "dhtu 0x20 = 0x590F", "dhv 0x20 = 0x5951", "dhvd 0x20 = 0x5951", "dhvn 0x20 = 0x605D", "dhvr 0x20 = 0x6308", "di 0x20 = 0x7802", "dial 0x20 = 0x8022", "dias 0x20 = 0x78F2", "dib 0x20 = 0x8014", "dibg 0x20 = 0x8014", "dic 0x20 = 0x8019", "dicn 0x20 = 0x8019", "did 0x20 = 0x8028", "didf 0x20 = 0x8028", "die 0x20 = 0x785D", "dieg 0x20 = 0x785D", "dif 0x20 = 0x8015", "difc 0x20 = 0x8018", "diff 0x20 = 0x8029", "difj 0x20 = 0x8015", "dii 0x20 = 0x8012", "diik 0x20 = 0x8025", "diit 0x20 = 0x8016", "dij 0x20 = 0x8026", "dijy 0x20 = 0x8026", "din 0x20 = 0x801C", "dinn 0x20 = 0x801C", "dio 0x20 = 0x8027", "diov 0x20 = 0x8027", "dit 0x20 = 0x7802", "ditn 0x20 = 0x8017", "ditt 0x20 = 0x7802", "diu 0x20 = 0x6CF5", "diuy 0x20 = 0x802A", "diw 0x20 = 0x8020", "diwk 0x20 = 0x8020", "diy 0x20 = 0x8031", "diyd 0x20 = 0x8031", "dj 0x20 = 0x767E", "djb 0x20 = 0x539A", "djbd 0x20 = 0x539A", "djd 0x20 = 0x975E", "djdd 0x20 = 0x975E", "djde 0x20 = 0x88F4", "djdg 0x20 = 0x97ED", "djdj 0x20 = 0x871A", "djdl 0x20 = 0x8F88", "djdn 0x20 = 0x60B2", "djdnz 0x20 = 0x7FE1", "djdy 0x20 = 0x6590", "djf 0x20 = 0x767E", "djfd 0x20 = 0x5398", "djg 0x20 = 0x788D", "djgf 0x20 = 0x788D", "djh 0x20 = 0x7837", "djhh 0x20 = 0x7837", "djn 0x20 = 0x5944", "djnb 0x20 = 0x5944", "djng 0x20 = 0x9E4C", "djq 0x20 = 0x78A3", "djqn 0x20 = 0x78A3", "dk 0x20 = 0x53F3", "dkf 0x20 = 0x53F3", "dkj 0x20 = 0x593C", "dl 0x20 = 0x5386", "dlb 0x20 = 0x592F", "dlf 0x20 = 0x594B", "dlh 0x20 = 0x7817", "dlk 0x20 = 0x538D", "dlv 0x20 = 0x5386", "dm 0x20 = 0x9762", "dma 0x20 = 0x7898", "dmaw 0x20 = 0x7898", "dmd 0x20 = 0x78B3", "dmdo 0x20 = 0x78B3", "dmf 0x20 = 0x7889", "dmfk 0x20 = 0x7889", "dmg 0x20 = 0x7850", "dmgk 0x20 = 0x7850", "dmh 0x20 = 0x5E03", "dmhj 0x20 = 0x5E03", "dmj 0x20 = 0x800C", "dmjd 0x20 = 0x9762", "dmjf 0x20 = 0x8010", "dmjg 0x20 = 0x9E38", "dmjj 0x20 = 0x800C", "dmjk 0x20 = 0x5395", "dmjn 0x20 = 0x6067", "dmjv 0x20 = 0x800D", "dmn 0x20 = 0x77F6", "dmq 0x20 = 0x781A", "dmqn 0x20 = 0x781A", "dmqy 0x20 = 0x781C", "dmu 0x20 = 0x9875", "dmy 0x20 = 0x77FE", "dmyy 0x20 = 0x77FE", "dn 0x20 = 0x6210", "dna 0x20 = 0x78BE", "dnae 0x20 = 0x78BE", "dnd 0x20 = 0x81E7", "dndt 0x20 = 0x81E7", "dnh 0x20 = 0x560F", "dnhc 0x20 = 0x560F", "dnjl 0x20 = 0x5C34", "dnju 0x20 = 0x867F", "dnk 0x20 = 0x8DB8", "dnkh 0x20 = 0x8DB8", "dnl 0x20 = 0x52A2", "dnln 0x20 = 0x52A2", "dnn 0x20 = 0x6210", "dnnl 0x20 = 0x76DB", "dnnt 0x20 = 0x6210", "dnp 0x20 = 0x8FC8", "dnpv 0x20 = 0x8FC8", "dnq 0x20 = 0x5C25", "dnqy 0x20 = 0x5C25", "dnr 0x20 = 0x7800", "dnrt 0x20 = 0x7800", "dnv 0x20 = 0x4E07", "dnvz 0x20 = 0x5C24", "dnvzz 0x20 = 0x5C22", "dnw 0x20 = 0x5C2C", "dnwj 0x20 = 0x5C2C", "dny 0x20 = 0x620A", "dnyt 0x20 = 0x620A", "do 0x20 = 0x7070", "dol 0x20 = 0x76D4", "dolf 0x20 = 0x76D4", "doq 0x20 = 0x78F7", "doqh 0x20 = 0x78F7", "dou 0x20 = 0x7070", "dp 0x20 = 0x8FBE", "dpgg 0x20 = 0x78B9", "dpgh 0x20 = 0x7887", "dpi 0x20 = 0x8FBE", "dpq 0x20 = 0x7897", "dpqb 0x20 = 0x7897", "dpr 0x20 = 0x7275", "dprh 0x20 = 0x7275", "dpx 0x20 = 0x7823", "dpxn 0x20 = 0x7823", "dq 0x20 = 0x514B", "dqas 0x20 = 0x78D4", "dqay 0x20 = 0x7825", "dqb 0x20 = 0x514B", "dqd 0x20 = 0x5162", "dqdq 0x20 = 0x5162", "dqe 0x20 = 0x786E", "dqeh 0x20 = 0x786E", "dqi 0x20 = 0x783E", "dqiy 0x20 = 0x783E", "dqq 0x20 = 0x723D", "dqqq 0x20 = 0x723D", "dqw 0x20 = 0x780D", "dqwy 0x20 = 0x780D", "dqy 0x20 = 0x77FD", "dqyg 0x20 = 0x9E2A", "dr 0x20 = 0x539F", "drh 0x20 = 0x65AB", "dri 0x20 = 0x539F", "drii 0x20 = 0x539F", "drin 0x20 = 0x613F", "drt 0x20 = 0x7891", "drtf 0x20 = 0x7891", "ds 0x20 = 0x5385", "dsg 0x20 = 0x7852", "dsh 0x20 = 0x53A2", "dshd 0x20 = 0x53A2", "dsj 0x20 = 0x78B4", "dsjg 0x20 = 0x78B4", "dsk 0x20 = 0x5385", "dskf 0x20 = 0x5947", "dskj 0x20 = 0x525E", "dskw 0x20 = 0x6B39", "dt 0x20 = 0x5E2E", "dtb 0x20 = 0x90A6", "dtbh 0x20 = 0x5E2E", "dtbhz 0x20 = 0x90A6", "dtf 0x20 = 0x5BFF", "dtfo 0x20 = 0x7118", "dtfu 0x20 = 0x5BFF", "dth 0x20 = 0x781F", "dthf 0x20 = 0x781F", "dtk 0x20 = 0x784C", "dtkg 0x20 = 0x784C", "dtl 0x20 = 0x7847", "dtlq 0x20 = 0x7847", "dtp 0x20 = 0x782D", "dtpy 0x20 = 0x782D", "dtr 0x20 = 0x786A", "dtrt 0x20 = 0x786A", "dty 0x20 = 0x6545", "du 0x20 = 0x78C1", "dubj 0x20 = 0x5282", "dubw 0x20 = 0x53A5", "duc 0x20 = 0x78D9", "duce 0x20 = 0x78D9", "dud 0x20 = 0x78CB", "duda 0x20 = 0x78CB", "dug 0x20 = 0x782C", "duj 0x20 = 0x8F9C", "dujg 0x20 = 0x9E69", "duk 0x20 = 0x789A", "dukg 0x20 = 0x789A", "duo 0x20 = 0x78B0", "duog 0x20 = 0x78B0", "dup 0x20 = 0x78C5", "duph 0x20 = 0x78B2", "dupy 0x20 = 0x78C5", "dux 0x20 = 0x78C1", "duxx 0x20 = 0x78C1", "dv 0x20 = 0x8086", "dvc 0x20 = 0x53A9", "dvcq 0x20 = 0x53A9", "dvf 0x20 = 0x8086", "dvfh 0x20 = 0x8086", "dvi 0x20 = 0x788C", "dviy 0x20 = 0x788C", "dw 0x20 = 0x6625", "dwa 0x20 = 0x783C", "dwag 0x20 = 0x783C", "dwf 0x20 = 0x5949", "dwfh 0x20 = 0x5949", "dwg 0x20 = 0x594F", "dwgd 0x20 = 0x594F", "dwgi 0x20 = 0x7877", "dwgu 0x20 = 0x78F4", "dwi 0x20 = 0x4EC4", "dwiu 0x20 = 0x6CF0", "dwj 0x20 = 0x6625", "dwjf 0x20 = 0x6625", "dwjj 0x20 = 0x8822", "dwt 0x20 = 0x79E6", "dwtu 0x20 = 0x79E6", "dwvf 0x20 = 0x8202", "dww 0x20 = 0x96C1", "dwwm 0x20 = 0x8D5D", "dwwy 0x20 = 0x96C1", "dwy 0x20 = 0x7901", "dwyg 0x20 = 0x7893", "dwyo 0x20 = 0x7901", "dwz 0x20 = 0x8202", "dx 0x20 = 0x9F99", "dxa 0x20 = 0x9F9A", "dxaw 0x20 = 0x9F9A", "dxb 0x20 = 0x804B", "dxbf 0x20 = 0x804B", "dxd 0x20 = 0x783B", "dxdf 0x20 = 0x783B", "dxf 0x20 = 0x5784", "dxff 0x20 = 0x5784", "dxj 0x20 = 0x7829", "dxjh 0x20 = 0x7829", "dxv 0x20 = 0x9F99", "dxx 0x20 = 0x7812", "dxxn 0x20 = 0x7812", "dxy 0x20 = 0x88AD", "dxye 0x20 = 0x88AD", "dy 0x20 = 0x592A", "dyb 0x20 = 0x7905", "dybt 0x20 = 0x7905", "dyc 0x20 = 0x786B", "dycq 0x20 = 0x786B", "dyi 0x20 = 0x592A", "dyiz 0x20 = 0x4E08", "dyn 0x20 = 0x6001", "dyna 0x20 = 0x78A5", "dynt 0x20 = 0x620D", "dynu 0x20 = 0x6001", "dyt 0x20 = 0x77FF", "dyw 0x20 = 0x788E", "dywf 0x20 = 0x788E", "e 0x20 = 0x6709", "ea 0x20 = 0x809B", "eaf 0x20 = 0x817B", "eafm 0x20 = 0x817B", "eag 0x20 = 0x809B", "eai 0x20 = 0x80E8", "eaiy 0x20 = 0x80E8", "eaj 0x20 = 0x814A", "eajd 0x20 = 0x819C", "eajg 0x20 = 0x814A", "eap 0x20 = 0x6726", "eape 0x20 = 0x6726", "eb 0x20 = 0x670D", "ebb 0x20 = 0x90DB", "ebbh 0x20 = 0x90DB", "ebc 0x20 = 0x670D", "ebcy 0x20 = 0x670D", "ebf 0x20 = 0x5B55", "ebfz 0x20 = 0x5B5A", "ebn 0x20 = 0x4E73", "ebnn 0x20 = 0x4E73", "ec 0x20 = 0x80A5", "eca 0x20 = 0x80EB", "ecag 0x20 = 0x80EB", "eck 0x20 = 0x80CE", "eckg 0x20 = 0x80CE", "ecl 0x20 = 0x76C8", "ecla 0x20 = 0x6224", "eclf 0x20 = 0x76C8", "ecn 0x20 = 0x80A5", "edc 0x20 = 0x80B1", "edcy 0x20 = 0x80B1", "edf 0x20 = 0x80EF", "edfn 0x20 = 0x80EF", "edjd 0x20 = 0x8153", "edjn 0x20 = 0x814C", "edm 0x20 = 0x987B", "edmd 0x20 = 0x817C", "edmy 0x20 = 0x987B", "edw 0x20 = 0x8160", "edwd 0x20 = 0x8160", "edx 0x20 = 0x80E7", "edxn 0x20 = 0x80E7", "edy 0x20 = 0x80BD", "edyy 0x20 = 0x80BD", "ee 0x20 = 0x670B", "eea 0x20 = 0x8C98", "eead 0x20 = 0x8C98", "eeb 0x20 = 0x812C", "eebg 0x20 = 0x812C", "eed 0x20 = 0x8C8A", "eedj 0x20 = 0x8C8A", "eee 0x20 = 0x6708", "eeee 0x20 = 0x6708", "eef 0x20 = 0x8C7A", "eeft 0x20 = 0x8C7A", "eeg 0x20 = 0x670B", "eemk 0x20 = 0x8C73", "eeo 0x20 = 0x71F9", "eeou 0x20 = 0x71F9", "eeq 0x20 = 0x9E4F", "eeqg 0x20 = 0x9E4F", "eeqy 0x20 = 0x8C79", "eer 0x20 = 0x8C78", "eerp 0x20 = 0x9088", "eerq 0x20 = 0x8C8C", "eet 0x20 = 0x809C", "eetk 0x20 = 0x8C89", "eetx 0x20 = 0x8C94", "eev 0x20 = 0x8C82", "eevk 0x20 = 0x8C82", "eew 0x20 = 0x8C85", "eews 0x20 = 0x8C85", "eey 0x20 = 0x8C5A", "ef 0x20 = 0x809D", "efc 0x20 = 0x80A2", "efcb 0x20 = 0x811A", "efcy 0x20 = 0x80A2", "efg 0x20 = 0x809A", "efh 0x20 = 0x809D", "efhm 0x20 = 0x8662", "efj 0x20 = 0x80BC", "efjh 0x20 = 0x80BC", "efk 0x20 = 0x81A8", "efkc 0x20 = 0x81CC", "efke 0x20 = 0x81A8", "efm 0x20 = 0x8169", "efmf 0x20 = 0x8169", "efn 0x20 = 0x809F", "efnn 0x20 = 0x809F", "efp 0x20 = 0x8116", "efpb 0x20 = 0x8116", "efq 0x20 = 0x670A", "efqn 0x20 = 0x670A", "eft 0x20 = 0x7230", "eftc 0x20 = 0x7230", "efw 0x20 = 0x80A4", "efwy 0x20 = 0x80A4", "efy 0x20 = 0x8098", "eg 0x20 = 0x4E14", "egb 0x20 = 0x80AB", "egbn 0x20 = 0x80AB", "egc 0x20 = 0x53BF", "egcn 0x20 = 0x60AC", "egcu 0x20 = 0x53BF", "egd 0x20 = 0x4E14", "ege 0x20 = 0x812F", "egef 0x20 = 0x818A", "egeg 0x20 = 0x8148", "egey 0x20 = 0x812F", "egi 0x20 = 0x80DA", "egig 0x20 = 0x80DA", "egk 0x20 = 0x8188", "egkh 0x20 = 0x8188", "egl 0x20 = 0x52A9", "egln 0x20 = 0x52A9", "egm 0x20 = 0x80BA", "egmh 0x20 = 0x80BA", "egt 0x20 = 0x8C55", "egty 0x20 = 0x8C55", "egw 0x20 = 0x96CE", "egwy 0x20 = 0x96CE", "egx 0x20 = 0x80F0", "egxw 0x20 = 0x80F0", "ehh 0x20 = 0x80E9", "ehhy 0x20 = 0x80E9", "ehn 0x20 = 0x9F10", "ehnn 0x20 = 0x9F10", "ehnt 0x20 = 0x80EA", "ei 0x20 = 0x819B", "eip 0x20 = 0x819B", "eipf 0x20 = 0x819B", "eiq 0x20 = 0x80F1", "eiqn 0x20 = 0x80F1", "eiu 0x20 = 0x5C15", "ej 0x20 = 0x80C6", "ejg 0x20 = 0x80C6", "ejgg 0x20 = 0x80C6", "ejh 0x20 = 0x5216", "ejhh 0x20 = 0x80C2", "ejl 0x20 = 0x817D", "ejlg 0x20 = 0x817D", "ejt 0x20 = 0x8165", "ejtg 0x20 = 0x8165", "ek 0x20 = 0x80BF", "ekh 0x20 = 0x80BF", "ekhh 0x20 = 0x80BF", "ekk 0x20 = 0x816D", "ekkn 0x20 = 0x816D", "ekks 0x20 = 0x81CA", "ekm 0x20 = 0x8136", "ekmw 0x20 = 0x8136", "el 0x20 = 0x808B", "eld 0x20 = 0x80ED", "eldy 0x20 = 0x80ED", "elh 0x20 = 0x80DB", "eln 0x20 = 0x808B", "elny 0x20 = 0x816E", "elv 0x20 = 0x7235", "elvf 0x20 = 0x7235", "elw 0x20 = 0x80C1", "elwy 0x20 = 0x80C1", "em 0x20 = 0x808C", "ema 0x20 = 0x8146", "emaw 0x20 = 0x8146", "emc 0x20 = 0x80A1", "emcy 0x20 = 0x80A1", "emg 0x20 = 0x80F4", "emgk 0x20 = 0x80F4", "emn 0x20 = 0x808C", "emq 0x20 = 0x89C5", "emqb 0x20 = 0x89C5", "emw 0x20 = 0x80AD", "emwy 0x20 = 0x80AD", "en 0x20 = 0x7529", "eni 0x20 = 0x8132", "eniy 0x20 = 0x8132", "enr 0x20 = 0x80A0", "enrt 0x20 = 0x80A0", "env 0x20 = 0x7529", "eoq 0x20 = 0x81A6", "eoqh 0x20 = 0x81A6", "eoy 0x20 = 0x8112", "ep 0x20 = 0x7231", "epc 0x20 = 0x53D7", "epcu 0x20 = 0x53D7", "epd 0x20 = 0x7231", "epdc 0x20 = 0x7231", "epe 0x20 = 0x8113", "epey 0x20 = 0x8113", "epf 0x20 = 0x8118", "epfi 0x20 = 0x8159", "epfq 0x20 = 0x8118", "epg 0x20 = 0x815A", "epgh 0x20 = 0x815A", "epi 0x20 = 0x9010", "epq 0x20 = 0x8155", "epqb 0x20 = 0x8155", "epqh 0x20 = 0x821C", "epr 0x20 = 0x8191", "eprw 0x20 = 0x8191", "epv 0x20 = 0x80FA", "epvg 0x20 = 0x80FA", "epw 0x20 = 0x8154", "epwa 0x20 = 0x8154", "epwf 0x20 = 0x81A3", "eq 0x20 = 0x80F8", "eqa 0x20 = 0x80DD", "eqay 0x20 = 0x80DD", "eqd 0x20 = 0x8106", "eqdb 0x20 = 0x8106", "eqk 0x20 = 0x6710", "eqkg 0x20 = 0x6710", "eqn 0x20 = 0x80DE", "eqnn 0x20 = 0x80DE", "eqq 0x20 = 0x80F8", "eqqb 0x20 = 0x80F8", "eqs 0x20 = 0x810E", "eqsy 0x20 = 0x810E", "eqw 0x20 = 0x80B7", "eqwy 0x20 = 0x80B7", "er 0x20 = 0x9065", "erc 0x20 = 0x80CD", "ercy 0x20 = 0x80CD", "eri 0x20 = 0x817A", "eriy 0x20 = 0x817A", "erm 0x20 = 0x9065", "ermg 0x20 = 0x9E5E", "ermi 0x20 = 0x7E47", "ermp 0x20 = 0x9065", "ert 0x20 = 0x813E", "ertf 0x20 = 0x813E", "es 0x20 = 0x91C7", "ese 0x20 = 0x5F69", "eset 0x20 = 0x5F69", "esf 0x20 = 0x8198", "esfi 0x20 = 0x8198", "esu 0x20 = 0x91C7", "esv 0x20 = 0x8170", "esvg 0x20 = 0x8170", "esw 0x20 = 0x819D", "eswi 0x20 = 0x819D", "et 0x20 = 0x7528", "eta 0x20 = 0x80C0", "etay 0x20 = 0x80C0", "etg 0x20 = 0x80DC", "etgg 0x20 = 0x80DC", "eth 0x20 = 0x80D9", "ethf 0x20 = 0x80D9", "etj 0x20 = 0x8179", "etjt 0x20 = 0x8179", "etk 0x20 = 0x80F3", "etkg 0x20 = 0x80F3", "etn 0x20 = 0x4E43", "etnh 0x20 = 0x7528", "ett 0x20 = 0x5F61", "ettt 0x20 = 0x5F61", "eu 0x20 = 0x80F6", "eua 0x20 = 0x80FC", "euah 0x20 = 0x80FC", "eud 0x20 = 0x817E", "eudc 0x20 = 0x817E", "eudf 0x20 = 0x584D", "eudi 0x20 = 0x6ED5", "eudk 0x20 = 0x81B3", "eudv 0x20 = 0x5AB5", "eudy 0x20 = 0x6715", "euf 0x20 = 0x80D6", "eufh 0x20 = 0x80D6", "euj 0x20 = 0x81C6", "eujn 0x20 = 0x81C6", "euk 0x20 = 0x8131", "eukq 0x20 = 0x8131", "eup 0x20 = 0x8180", "eupk 0x20 = 0x81AA", "eupy 0x20 = 0x8180", "euq 0x20 = 0x80F6", "euqy 0x20 = 0x80F6", "ev 0x20 = 0x59A5", "eve 0x20 = 0x817F", "evep 0x20 = 0x817F", "evf 0x20 = 0x59A5", "evfp 0x20 = 0x8171", "evfz 0x20 = 0x8200", "evw 0x20 = 0x8174", "evwy 0x20 = 0x8174", "ew 0x20 = 0x8138", "ewe 0x20 = 0x80D7", "ewet 0x20 = 0x80D7", "ewf 0x20 = 0x810D", "ewfc 0x20 = 0x810D", "ewg 0x20 = 0x8138", "ewgi 0x20 = 0x8138", "ewgj 0x20 = 0x8167", "eww 0x20 = 0x811E", "ewwf 0x20 = 0x811E", "ex 0x20 = 0x8102", "exd 0x20 = 0x595A", "exdu 0x20 = 0x595A", "exj 0x20 = 0x8102", "exjg 0x20 = 0x8102", "ey 0x20 = 0x53CA", "eyb 0x20 = 0x8111", "eybh 0x20 = 0x8111", "eyf 0x20 = 0x810F", "eyfg 0x20 = 0x810F", "eyi 0x20 = 0x53CA", "eyj 0x20 = 0x8110", "eyjh 0x20 = 0x8110", "eyl 0x20 = 0x81BB", "eylg 0x20 = 0x81BB", "eym 0x20 = 0x80AE", "eymn 0x20 = 0x80AE", "eyn 0x20 = 0x80AA", "eyni 0x20 = 0x8109", "eynw 0x20 = 0x80F2", "eyu 0x20 = 0x81C1", "eyuo 0x20 = 0x81C1", "eyw 0x20 = 0x8151", "eywf 0x20 = 0x8151", "eywy 0x20 = 0x814B", "eyx 0x20 = 0x81C3", "eyxy 0x20 = 0x81C3", "f 0x20 = 0x5730", "fa 0x20 = 0x8F7D", "fad 0x20 = 0x582A", "fadn 0x20 = 0x582A", "fae 0x20 = 0x9730", "faet 0x20 = 0x9730", "faf 0x20 = 0x9738", "fafe 0x20 = 0x9738", "fafg 0x20 = 0x5769", "faj 0x20 = 0x5349", "fajv 0x20 = 0x5830", "fak 0x20 = 0x54C9", "fakd 0x20 = 0x54C9", "fakg 0x20 = 0x57DF", "fal 0x20 = 0x8F7D", "falk 0x20 = 0x8F7D", "falw 0x20 = 0x6234", "fam 0x20 = 0x8D32", "famu 0x20 = 0x8D32", "fan 0x20 = 0x581E", "fans 0x20 = 0x581E", "fas 0x20 = 0x683D", "fasi 0x20 = 0x683D", "faw 0x20 = 0x622A", "fawk 0x20 = 0x5854", "fawy 0x20 = 0x622A", "fay 0x20 = 0x88C1", "faye 0x20 = 0x88C1", "fb 0x20 = 0x5730", "fbh 0x20 = 0x9097", "fbn 0x20 = 0x5730", "fc 0x20 = 0x652F", "fcb 0x20 = 0x5374", "fcbh 0x20 = 0x5374", "fcl 0x20 = 0x52A8", "fclf 0x20 = 0x76CD", "fcln 0x20 = 0x52A8", "fclnz 0x20 = 0x52AB", "fcn 0x20 = 0x7FC5", "fcnd 0x20 = 0x7FC5", "fcp 0x20 = 0x8FD0", "fcpi 0x20 = 0x8FD0", "fcr 0x20 = 0x9B42", "fcrc 0x20 = 0x9B42", "fct 0x20 = 0x57C3", "fctd 0x20 = 0x57C3", "fcu 0x20 = 0x53BB", "fcuz 0x20 = 0x652F", "fcuzz 0x20 = 0x4E91", "fd 0x20 = 0x57CE", "fdf 0x20 = 0x9707", "fdfe 0x20 = 0x9707", "fdfn 0x20 = 0x57AE", "fdj 0x20 = 0x57EF", "fdjd 0x20 = 0x970F", "fdjn 0x20 = 0x57EF", "fdl 0x20 = 0x575C", "fdlb 0x20 = 0x96F3", "fdln 0x20 = 0x575C", "fdm 0x20 = 0x9700", "fdmj 0x20 = 0x9700", "fdmm 0x20 = 0x98A5", "fdmy 0x20 = 0x9878", "fdn 0x20 = 0x57CE", "fdnt 0x20 = 0x57CE", "fdr 0x20 = 0x586C", "fdri 0x20 = 0x586C", "fdx 0x20 = 0x5785", "fdxn 0x20 = 0x5785", "fe 0x20 = 0x573E", "fee 0x20 = 0x580B", "feef 0x20 = 0x973E", "feeg 0x20 = 0x580B", "fef 0x20 = 0x57D2", "fefy 0x20 = 0x57D2", "fey 0x20 = 0x573E", "feyy 0x20 = 0x573E", "ff 0x20 = 0x5BFA", "ffc 0x20 = 0x575B", "ffcy 0x20 = 0x575B", "fff 0x20 = 0x572D", "ffff 0x20 = 0x571F", "fffy 0x20 = 0x5C01", "ffh 0x20 = 0x586B", "ffhg 0x20 = 0x57F4", "ffhw 0x20 = 0x586B", "ffhy 0x20 = 0x5366", "ffi 0x20 = 0x6B3E", "ffiw 0x20 = 0x6B3E", "ffn 0x20 = 0x572C", "ffnb 0x20 = 0x96E9", "ffnn 0x20 = 0x572C", "ffnu 0x20 = 0x605A", "fft 0x20 = 0x5835", "fftj 0x20 = 0x5835", "ffu 0x20 = 0x5BFA", "ffuk 0x20 = 0x5899", "fg 0x20 = 0x4E8C", "fgc 0x20 = 0x57A4", "fgcf 0x20 = 0x57A4", "fge 0x20 = 0x535A", "fgef 0x20 = 0x535A", "fgey 0x20 = 0x57D4", "fgf 0x20 = 0x5729", "fgfh 0x20 = 0x5729", "fgg 0x20 = 0x4E8C", "fggh 0x20 = 0x5E72", "fgh 0x20 = 0x5341", "fghg 0x20 = 0x58EB", "fghy 0x20 = 0x96E8", "fghyz 0x20 = 0x5BF8", "fgi 0x20 = 0x574F", "fgig 0x20 = 0x576F", "fgiy 0x20 = 0x574F", "fgj 0x20 = 0x57C2", "fgjg 0x20 = 0x57A3", "fgjq 0x20 = 0x57C2", "fgk 0x20 = 0x5865", "fgkh 0x20 = 0x5865", "fgo 0x20 = 0x57AD", "fgog 0x20 = 0x57AD", "fgu 0x20 = 0x576A", "fguh 0x20 = 0x576A", "fh 0x20 = 0x76F4", "fha 0x20 = 0x8D8A", "fhag 0x20 = 0x589F", "fhat 0x20 = 0x8D8A", "fhb 0x20 = 0x8DA3", "fhbc 0x20 = 0x8DA3", "fhc 0x20 = 0x5761", "fhcy 0x20 = 0x5761", "fhe 0x20 = 0x8D84", "fheg 0x20 = 0x8D84", "fhf 0x20 = 0x76F4", "fhfh 0x20 = 0x77D7", "fhfk 0x20 = 0x8D76", "fhg 0x20 = 0x5740", "fhgj 0x20 = 0x8D94", "fhh 0x20 = 0x8D74", "fhhi 0x20 = 0x8D74", "fhi 0x20 = 0x8D9F", "fhik 0x20 = 0x8D9F", "fhk 0x20 = 0x4E8D", "fhkg 0x20 = 0x576B", "fhl 0x20 = 0x76D0", "fhlf 0x20 = 0x76D0", "fhn 0x20 = 0x8D77", "fhnh 0x20 = 0x8D73", "fhnt 0x20 = 0x5786", "fhnv 0x20 = 0x8D77", "fhq 0x20 = 0x8D75", "fhqi 0x20 = 0x8D75", "fhqv 0x20 = 0x8D8B", "fht 0x20 = 0x8DB1", "fhtm 0x20 = 0x8DB1", "fhu 0x20 = 0x8D70", "fhuw 0x20 = 0x8D91", "fhv 0x20 = 0x8D85", "fhvk 0x20 = 0x8D85", "fhw 0x20 = 0x771F", "fhwe 0x20 = 0x8D81", "fhwm 0x20 = 0x98A0", "fhwu 0x20 = 0x771F", "fi 0x20 = 0x793A", "fie 0x20 = 0x9704", "fief 0x20 = 0x9704", "fiefz 0x20 = 0x972A", "fig 0x20 = 0x9708", "figh 0x20 = 0x9708", "fii 0x20 = 0x672A", "fit 0x20 = 0x5AE0", "fitv 0x20 = 0x5AE0", "fiu 0x20 = 0x793A", "fiv 0x20 = 0x589A", "fivs 0x20 = 0x589A", "fiy 0x20 = 0x6C42", "fiye 0x20 = 0x88D8", "fiyi 0x20 = 0x6C42", "fiyp 0x20 = 0x9011", "fiyt 0x20 = 0x6551", "fj 0x20 = 0x8FDB", "fja 0x20 = 0x621F", "fjat 0x20 = 0x621F", "fje 0x20 = 0x671D", "fjeg 0x20 = 0x671D", "fjf 0x20 = 0x57CB", "fjfg 0x20 = 0x57CB", "fjfh 0x20 = 0x97E9", "fjfy 0x20 = 0x57D8", "fjg 0x20 = 0x5766", "fjgg 0x20 = 0x5766", "fjgh 0x20 = 0x5824", "fjgp 0x20 = 0x9058", "fjgq 0x20 = 0x89CF", "fjh 0x20 = 0x520A", "fjhh 0x20 = 0x5764", "fjj 0x20 = 0x4E93", "fjk 0x20 = 0x4E95", "fjl 0x20 = 0x5881", "fjlc 0x20 = 0x5881", "fjn 0x20 = 0x584C", "fjng 0x20 = 0x584C", "fjp 0x20 = 0x8FDB", "fjpk 0x20 = 0x8FDB", "fjq 0x20 = 0x57F8", "fjqr 0x20 = 0x57F8", "fjt 0x20 = 0x4E7E", "fjtn 0x20 = 0x4E7E", "fjw 0x20 = 0x7FF0", "fjwf 0x20 = 0x65A1", "fjwn 0x20 = 0x7FF0", "fk 0x20 = 0x5409", "fkd 0x20 = 0x9889", "fkdm 0x20 = 0x9889", "fke 0x20 = 0x8881", "fkeu 0x20 = 0x8881", "fkf 0x20 = 0x5409", "fkg 0x20 = 0x57D5", "fkgg 0x20 = 0x57D5", "fkh 0x20 = 0x5733", "fkhk 0x20 = 0x9732", "fkk 0x20 = 0x9143", "fkkb 0x20 = 0x9143", "fkm 0x20 = 0x57DA", "fkmw 0x20 = 0x57DA", "fkmy 0x20 = 0x57D9", "fku 0x20 = 0x559C", "fkuc 0x20 = 0x9F13", "fkue 0x20 = 0x5F6D", "fkuf 0x20 = 0x9F19", "fkuh 0x20 = 0x77BD", "fkuk 0x20 = 0x559C", "fkukz 0x20 = 0x5609", "fkun 0x20 = 0x750F", "fkuo 0x20 = 0x71B9", "fl 0x20 = 0x534F", "flf 0x20 = 0x96F7", "flw 0x20 = 0x534F", "flwy 0x20 = 0x534F", "fly 0x20 = 0x5844", "flyn 0x20 = 0x5844", "fm 0x20 = 0x5357", "fmg 0x20 = 0x578C", "fmgk 0x20 = 0x578C", "fmk 0x20 = 0x51FB", "fmn 0x20 = 0x57B2", "fmnn 0x20 = 0x57B2", "fms 0x20 = 0x579B", "fmsy 0x20 = 0x579B", "fmu 0x20 = 0x5357", "fmud 0x20 = 0x732E", "fmuf 0x20 = 0x5357", "fmy 0x20 = 0x575D", "fmyg 0x20 = 0x574D", "fn 0x20 = 0x5FD7", "fnbm 0x20 = 0x5800", "fnh 0x20 = 0x97E6", "fnhc 0x20 = 0x971E", "fnhk 0x20 = 0x97E6", "fnhl 0x20 = 0x97EB", "fnhp 0x20 = 0x8FDD", "fnhv 0x20 = 0x97EC", "fnhy 0x20 = 0x97E7", "fni 0x20 = 0x5880", "fnih 0x20 = 0x5880", "fnk 0x20 = 0x9739", "fnku 0x20 = 0x9739", "fnm 0x20 = 0x99A8", "fnmd 0x20 = 0x78EC", "fnmj 0x20 = 0x99A8", "fnmm 0x20 = 0x7F44", "fnmy 0x20 = 0x8B26", "fnn 0x20 = 0x572F", "fnnz 0x20 = 0x572E", "fnr 0x20 = 0x58F0", "fnrt 0x20 = 0x573A", "fnu 0x20 = 0x5FD7", "fnud 0x20 = 0x5356", "fnuq 0x20 = 0x89CC", "fnv 0x20 = 0x4E8F", "fnw 0x20 = 0x5757", "fnwy 0x20 = 0x5757", "fnx 0x20 = 0x576D", "fnxn 0x20 = 0x576D", "fny 0x20 = 0x4E13", "fnyi 0x20 = 0x4E13", "fo 0x20 = 0x8D64", "fob 0x20 = 0x90DD", "fobc 0x20 = 0x8D67", "fobh 0x20 = 0x90DD", "fof 0x20 = 0x8D6B", "fofj 0x20 = 0x8D6D", "fofo 0x20 = 0x8D6B", "fot 0x20 = 0x8D66", "fotj 0x20 = 0x87AB", "foty 0x20 = 0x8D66", "fou 0x20 = 0x8D64", "fp 0x20 = 0x8FC7", "fpb 0x20 = 0x52C3", "fpbf 0x20 = 0x5B5B", "fpbg 0x20 = 0x9E41", "fpbl 0x20 = 0x52C3", "fpf 0x20 = 0x57B8", "fpfq 0x20 = 0x57B8", "fpg 0x20 = 0x58F9", "fpgc 0x20 = 0x5F40", "fpgcz 0x20 = 0x89F3", "fpgn 0x20 = 0x61FF", "fpgu 0x20 = 0x58F9", "fpi 0x20 = 0x8FC7", "fpl 0x20 = 0x6BC2", "fplc 0x20 = 0x6BC2", "fpm 0x20 = 0x58F3", "fpmb 0x20 = 0x58F3", "fpmn 0x20 = 0x60AB", "fpo 0x20 = 0x58F6", "fpog 0x20 = 0x58F6", "fpx 0x20 = 0x7D22", "fpxi 0x20 = 0x7D22", "fpxn 0x20 = 0x5768", "fq 0x20 = 0x65E0", "fqa 0x20 = 0x577B", "fqay 0x20 = 0x577B", "fqb 0x20 = 0x5143", "fqd 0x20 = 0x987D", "fqdm 0x20 = 0x987D", "fqk 0x20 = 0x580D", "fqkn 0x20 = 0x9F0B", "fqky 0x20 = 0x580D", "fqn 0x20 = 0x96F9", "fqnb 0x20 = 0x96F9", "fqng 0x20 = 0x575E", "fqp 0x20 = 0x8FDC", "fqpv 0x20 = 0x8FDC", "fqu 0x20 = 0x5747", "fqug 0x20 = 0x5747", "fqv 0x20 = 0x65E0", "fqw 0x20 = 0x574E", "fqwy 0x20 = 0x574E", "fr 0x20 = 0x57A2", "frc 0x20 = 0x5742", "frcy 0x20 = 0x5742", "frg 0x20 = 0x57A2", "frgk 0x20 = 0x57A2", "frh 0x20 = 0x573B", "frt 0x20 = 0x57E4", "frtf 0x20 = 0x57E4", "fry 0x20 = 0x577C", "fryy 0x20 = 0x577C", "fs 0x20 = 0x971C", "fsf 0x20 = 0x5819", "fsfg 0x20 = 0x5819", "fsh 0x20 = 0x971C", "fshf 0x20 = 0x971C", "fsk 0x20 = 0x5777", "fskg 0x20 = 0x5777", "fss 0x20 = 0x9716", "fssu 0x20 = 0x9716", "ft 0x20 = 0x624D", "ftb 0x20 = 0x5B5D", "ftbf 0x20 = 0x5B5D", "ftbt 0x20 = 0x6559", "fte 0x20 = 0x624D", "ftf 0x20 = 0x9706", "ftfp 0x20 = 0x9706", "ftg 0x20 = 0x8003", "ftgn 0x20 = 0x8003", "fth 0x20 = 0x57CF", "fthp 0x20 = 0x57CF", "ftj 0x20 = 0x8005", "ftjb 0x20 = 0x90FD", "ftjf 0x20 = 0x8005", "ftjn 0x20 = 0x7FE5", "ftjo 0x20 = 0x716E", "ftl 0x20 = 0x96FE", "ftlb 0x20 = 0x96FE", "ftm 0x20 = 0x57A7", "ftmk 0x20 = 0x57A7", "ftn 0x20 = 0x572A", "ftnn 0x20 = 0x572A", "ftx 0x20 = 0x8001", "ftxb 0x20 = 0x8001", "ftxf 0x20 = 0x800B", "ftxj 0x20 = 0x8006", "ftxn 0x20 = 0x8004", "ftxu 0x20 = 0x9709", "fu 0x20 = 0x589E", "fue 0x20 = 0x4E27", "fueu 0x20 = 0x4E27", "fuf 0x20 = 0x5E78", "fufj 0x20 = 0x5E78", "fug 0x20 = 0x5783", "fuj 0x20 = 0x5883", "fujq 0x20 = 0x5883", "fuk 0x20 = 0x57F9", "fukg 0x20 = 0x57F9", "ful 0x20 = 0x589E", "fulj 0x20 = 0x589E", "fulk 0x20 = 0x556C", "fum 0x20 = 0x5892", "fumk 0x20 = 0x5892", "fuv 0x20 = 0x970E", "fuvf 0x20 = 0x970E", "fv 0x20 = 0x96EA", "fve 0x20 = 0x57A0", "fvey 0x20 = 0x57A0", "fvf 0x20 = 0x96EA", "fvi 0x20 = 0x57ED", "fviy 0x20 = 0x57ED", "fvp 0x20 = 0x57FD", "fvph 0x20 = 0x57FD", "fvq 0x20 = 0x9713", "fvqb 0x20 = 0x9713", "fw 0x20 = 0x592B", "fwf 0x20 = 0x66FF", "fwfj 0x20 = 0x66FF", "fwfl 0x20 = 0x8F87", "fwfp 0x20 = 0x9035", "fwi 0x20 = 0x592B", "fwm 0x20 = 0x89C4", "fwmq 0x20 = 0x89C4", "fwn 0x20 = 0x57E0", "fwnd 0x20 = 0x5820", "fwnf 0x20 = 0x57E0", "fww 0x20 = 0x8D4D", "fwwm 0x20 = 0x8D4D", "fwwo 0x20 = 0x9EB4", "fwy 0x20 = 0x5806", "fwyc 0x20 = 0x96F6", "fwyf 0x20 = 0x970D", "fwyg 0x20 = 0x5806", "fwyn 0x20 = 0x57DD", "fxg 0x20 = 0x5776", "fxgu 0x20 = 0x5776", "fxl 0x20 = 0x5773", "fxln 0x20 = 0x5773", "fy 0x20 = 0x575F", "fyb 0x20 = 0x58A9", "fybh 0x20 = 0x57B4", "fybt 0x20 = 0x58A9", "fyj 0x20 = 0x9701", "fyjj 0x20 = 0x9701", "fyjn 0x20 = 0x972D", "fyk 0x20 = 0x58E4", "fyke 0x20 = 0x58E4", "fym 0x20 = 0x5751", "fymn 0x20 = 0x5751", "fyn 0x20 = 0x574A", "fynw 0x20 = 0x5793", "fyp 0x20 = 0x58D5", "fype 0x20 = 0x58D5", "fyt 0x20 = 0x5739", "fyu 0x20 = 0x96EF", "fyv 0x20 = 0x5858", "fyvh 0x20 = 0x5889", "fyvk 0x20 = 0x5858", "fyy 0x20 = 0x575F", "g 0x20 = 0x4E00", "ga 0x20 = 0x5F00", "gab 0x20 = 0x90A2", "gabh 0x20 = 0x90A2", "gad 0x20 = 0x742A", "gadw 0x20 = 0x742A", "gae 0x20 = 0x5F62", "gaet 0x20 = 0x5F62", "gah 0x20 = 0x6B66", "gahb 0x20 = 0x740A", "gahd 0x20 = 0x6B66", "gahg 0x20 = 0x9E49", "gaj 0x20 = 0x5F04", "gajf 0x20 = 0x578B", "gajh 0x20 = 0x5211", "gak 0x20 = 0x5F00", "gakg 0x20 = 0x747E", "gam 0x20 = 0x745B", "gamd 0x20 = 0x745B", "gamw 0x20 = 0x749C", "gaw 0x20 = 0x73D9", "gawy 0x20 = 0x73D9", "gb 0x20 = 0x5C6F", "gbg 0x20 = 0x73E5", "gbn 0x20 = 0x5C6F", "gbnm 0x20 = 0x987F", "gbnv 0x20 = 0x5C6F", "gc 0x20 = 0x5230", "gcf 0x20 = 0x81F3", "gcfb 0x20 = 0x90C5", "gcff 0x20 = 0x81F3", "gcfj 0x20 = 0x5230", "gcft 0x20 = 0x81F4", "gcftz 0x20 = 0x81FB", "gcg 0x20 = 0x739B", "gd 0x20 = 0x5929", "gde 0x20 = 0x745A", "gdeg 0x20 = 0x745A", "gdi 0x20 = 0x5929", "gdj 0x20 = 0x8695", "gdju 0x20 = 0x8695", "gdk 0x20 = 0x541E", "gdkf 0x20 = 0x541E", "gdm 0x20 = 0x987C", "gdmy 0x20 = 0x987C", "gdn 0x20 = 0x5FDD", "gdnu 0x20 = 0x5FDD", "gds 0x20 = 0x7426", "gdsk 0x20 = 0x7426", "gdx 0x20 = 0x73D1", "gdxn 0x20 = 0x73D1", "ge 0x20 = 0x8868", "gef 0x20 = 0x9752", "gefc 0x20 = 0x7457", "geh 0x20 = 0x752B", "gehp 0x20 = 0x900B", "geht 0x20 = 0x6577", "gehy 0x20 = 0x752B", "gem 0x20 = 0x9753", "gemq 0x20 = 0x9753", "gepc 0x20 = 0x7477", "geph 0x20 = 0x975B", "geq 0x20 = 0x9759", "geqh 0x20 = 0x9759", "ger 0x20 = 0x7476", "germ 0x20 = 0x7476", "geu 0x20 = 0x8868", "gey 0x20 = 0x7422", "geyy 0x20 = 0x7422", "gf 0x20 = 0x4E8E", "gfc 0x20 = 0x73D0", "gfcy 0x20 = 0x73D0", "gfi 0x20 = 0x7403", "gfiy 0x20 = 0x7403", "gfk 0x20 = 0x4E8E", "gfl 0x20 = 0x76C2", "gflf 0x20 = 0x76C2", "gfn 0x20 = 0x73AE", "gfnh 0x20 = 0x73AE", "gfp 0x20 = 0x8FC2", "gfpk 0x20 = 0x8FC2", "gfq 0x20 = 0x73A9", "gfqn 0x20 = 0x73A9", "gg 0x20 = 0x4E94", "ggc 0x20 = 0x7436", "ggcb 0x20 = 0x7436", "ggg 0x20 = 0x738B", "gggg 0x20 = 0x738B", "gggt 0x20 = 0x620B", "ggh 0x20 = 0x4E94", "gghg 0x20 = 0x4E94", "ggi 0x20 = 0x73AF", "ggiy 0x20 = 0x73AF", "ggl 0x20 = 0x4E00", "ggll 0x20 = 0x4E00", "ggn 0x20 = 0x745F", "ggnt 0x20 = 0x745F", "ggw 0x20 = 0x7434", "ggwn 0x20 = 0x7434", "ggx 0x20 = 0x7435", "ggxx 0x20 = 0x7435", "ggy 0x20 = 0x73CF", "ggyy 0x20 = 0x73CF", "gh 0x20 = 0x4E0B", "gha 0x20 = 0x7425", "ghae 0x20 = 0x74A9", "gham 0x20 = 0x7425", "ghc 0x20 = 0x73BB", "ghcy 0x20 = 0x73BB", "ghd 0x20 = 0x6B63", "ghg 0x20 = 0x7109", "ghgb 0x20 = 0x9122", "ghgo 0x20 = 0x7109", "ghi 0x20 = 0x4E0B", "ghk 0x20 = 0x73B7", "ghkg 0x20 = 0x73B7", "ghn 0x20 = 0x4E10", "ghnu 0x20 = 0x5FD1", "ghnv 0x20 = 0x4E10", "ghq 0x20 = 0x74A8", "ghqo 0x20 = 0x74A8", "ght 0x20 = 0x653F", "ghty 0x20 = 0x653F", "gi 0x20 = 0x4E0D", "gie 0x20 = 0x752D", "giej 0x20 = 0x752D", "gig 0x20 = 0x6B6A", "gigb 0x20 = 0x90B3", "gigf 0x20 = 0x4E15", "gigh 0x20 = 0x6B6A", "gii 0x20 = 0x4E0D", "gik 0x20 = 0x5426", "gikf 0x20 = 0x5426", "gim 0x20 = 0x7410", "gimy 0x20 = 0x7410", "gip 0x20 = 0x8FD8", "gipi 0x20 = 0x8FD8", "giq 0x20 = 0x73E7", "giqn 0x20 = 0x73E7", "giv 0x20 = 0x5B6C", "givb 0x20 = 0x5B6C", "gj 0x20 = 0x7406", "gjf 0x20 = 0x7406", "gjff 0x20 = 0x58BC", "gjfg 0x20 = 0x7406", "gjfk 0x20 = 0x8ECE", "gjg 0x20 = 0x4E98", "gjgf 0x20 = 0x4E98", "gjgh 0x20 = 0x8288", "gjh 0x20 = 0x60E0", "gjhg 0x20 = 0x7441", "gjhn 0x20 = 0x60E0", "gjk 0x20 = 0x4E0C", "gjq 0x20 = 0x66F4", "gjqi 0x20 = 0x66F4", "gjx 0x20 = 0x7428", "gjxx 0x20 = 0x7428", "gk 0x20 = 0x4E8B", "gkf 0x20 = 0x543E", "gkh 0x20 = 0x56CA", "gkhe 0x20 = 0x56CA", "gkhj 0x20 = 0x8839", "gkhk 0x20 = 0x7490", "gkhs 0x20 = 0x6A50", "gki 0x20 = 0x675F", "gkih 0x20 = 0x6574", "gkii 0x20 = 0x675F", "gkij 0x20 = 0x524C", "gkim 0x20 = 0x8D56", "gkip 0x20 = 0x901F", "gkit 0x20 = 0x6555", "gkk 0x20 = 0x5345", "gkkk 0x20 = 0x5669", "gkl 0x20 = 0x526F", "gklj 0x20 = 0x526F", "gklp 0x20 = 0x903C", "gkm 0x20 = 0x878D", "gkmh 0x20 = 0x9B32", "gkmj 0x20 = 0x878D", "gkmn 0x20 = 0x7FEE", "gkp 0x20 = 0x5E26", "gkph 0x20 = 0x5E26", "gkq 0x20 = 0x540F", "gkqi 0x20 = 0x540F", "gku 0x20 = 0x8C46", "gkua 0x20 = 0x8C47", "gkub 0x20 = 0x8C4C", "gkuc 0x20 = 0x8C49", "gkuf 0x20 = 0x8C46", "gkup 0x20 = 0x9017", "gkv 0x20 = 0x4E8B", "gkvh 0x20 = 0x4E8B", "gl 0x20 = 0x753B", "glb 0x20 = 0x753B", "glbj 0x20 = 0x753B", "glf 0x20 = 0x76CF", "gli 0x20 = 0x67EC", "glii 0x20 = 0x67EC", "glk 0x20 = 0x73C8", "glkg 0x20 = 0x73C8", "glp 0x20 = 0x740F", "glpy 0x20 = 0x740F", "gm 0x20 = 0x73B0", "gma 0x20 = 0x66F9", "gmaj 0x20 = 0x66F9", "gmap 0x20 = 0x906D", "gmd 0x20 = 0x745E", "gmdj 0x20 = 0x745E", "gmf 0x20 = 0x518D", "gmfd 0x20 = 0x518D", "gmi 0x20 = 0x523A", "gmii 0x20 = 0x68D8", "gmij 0x20 = 0x523A", "gmiu 0x20 = 0x67A3", "gmm 0x20 = 0x73CA", "gmmg 0x20 = 0x73CA", "gmmv 0x20 = 0x748E", "gmn 0x20 = 0x7391", "gmq 0x20 = 0x73B0", "gmqn 0x20 = 0x73B0", "gmu 0x20 = 0x8D23", "gmw 0x20 = 0x4E19", "gmwb 0x20 = 0x90B4", "gmwi 0x20 = 0x4E19", "gmww 0x20 = 0x4E24", "gmwy 0x20 = 0x7480", "gmy 0x20 = 0x4E3D", "gmyb 0x20 = 0x90E6", "gmyg 0x20 = 0x9E42", "gmyp 0x20 = 0x9026", "gmyy 0x20 = 0x4E3D", "gn 0x20 = 0x4E0E", "gna 0x20 = 0x73C9", "gnan 0x20 = 0x73C9", "gnd 0x20 = 0x741A", "gndg 0x20 = 0x741A", "gng 0x20 = 0x4E0E", "gngd 0x20 = 0x4E0E", "gngw 0x20 = 0x6B24", "gnh 0x20 = 0x7455", "gnhc 0x20 = 0x7455", "gny 0x20 = 0x74E6", "gnyn 0x20 = 0x74E6", "go 0x20 = 0x6765", "god 0x20 = 0x4E25", "godr 0x20 = 0x4E25", "gog 0x20 = 0x4E9A", "goga 0x20 = 0x622C", "gogd 0x20 = 0x4E9A", "gogf 0x20 = 0x57A9", "gogj 0x20 = 0x664B", "gogn 0x20 = 0x6076", "gogy 0x20 = 0x749E", "goi 0x20 = 0x6765", "goiz 0x20 = 0x706D", "gom 0x20 = 0x8D49", "gomu 0x20 = 0x8D49", "goo 0x20 = 0x7430", "gooy 0x20 = 0x7430", "gpf 0x20 = 0x742E", "gpfi 0x20 = 0x742E", "gpl 0x20 = 0x73F2", "gplh 0x20 = 0x73F2", "gpq 0x20 = 0x742C", "gpqb 0x20 = 0x742C", "gpw 0x20 = 0x741B", "gpws 0x20 = 0x741B", "gq 0x20 = 0x5217", "gqb 0x20 = 0x6B9B", "gqbg 0x20 = 0x6B9B", "gqc 0x20 = 0x6B86", "gqck 0x20 = 0x6B86", "gqe 0x20 = 0x6B82", "gqeb 0x20 = 0x6B8D", "gqeg 0x20 = 0x6B82", "gqf 0x20 = 0x6B96", "gqfh 0x20 = 0x6B96", "gqfu 0x20 = 0x6BAA", "gqfw 0x20 = 0x9EB8", "gqg 0x20 = 0x6B8B", "gqgt 0x20 = 0x6B8B", "gqi 0x20 = 0x6B79", "gqj 0x20 = 0x5217", "gqje 0x20 = 0x88C2", "gqjh 0x20 = 0x5217", "gqji 0x20 = 0x867A", "gqjo 0x20 = 0x70C8", "gqk 0x20 = 0x6B92", "gqkm 0x20 = 0x6B92", "gqm 0x20 = 0x6B83", "gqmc 0x20 = 0x6B81", "gqmd 0x20 = 0x6B83", "gqp 0x20 = 0x6BA1", "gqpw 0x20 = 0x6BA1", "gqq 0x20 = 0x6B89", "gqqj 0x20 = 0x6B89", "gqr 0x20 = 0x6B8A", "gqri 0x20 = 0x6B8A", "gqt 0x20 = 0x6B7C", "gqtb 0x20 = 0x8071", "gqtc 0x20 = 0x9A9C", "gqtd 0x20 = 0x7352", "gqtf 0x20 = 0x6B7C", "gqtg 0x20 = 0x9CCC", "gqtj 0x20 = 0x87AF", "gqtm 0x20 = 0x8D58", "gqto 0x20 = 0x71AC", "gqtp 0x20 = 0x9068", "gqtq 0x20 = 0x93CA", "gqtr 0x20 = 0x6B87", "gqty 0x20 = 0x6556", "gqu 0x20 = 0x6B9A", "gquf 0x20 = 0x6B9A", "gqv 0x20 = 0x5140", "gqw 0x20 = 0x6B93", "gqwe 0x20 = 0x992E", "gqwez 0x20 = 0x6B84", "gqwi 0x20 = 0x6B93", "gqx 0x20 = 0x6B7B", "gqxb 0x20 = 0x6B7B", "gqy 0x20 = 0x7396", "gqyy 0x20 = 0x7396", "gr 0x20 = 0x73E0", "grd 0x20 = 0x78A7", "grdf 0x20 = 0x78A7", "grg 0x20 = 0x73C0", "gri 0x20 = 0x73E0", "griy 0x20 = 0x73E0", "grq 0x20 = 0x7470", "grqc 0x20 = 0x7470", "gs 0x20 = 0x672B", "gsh 0x20 = 0x738E", "gsi 0x20 = 0x672B", "gsk 0x20 = 0x73C2", "gskg 0x20 = 0x73C2", "gss 0x20 = 0x7433", "gssy 0x20 = 0x7433", "gt 0x20 = 0x73AB", "gtf 0x20 = 0x73E9", "gtfh 0x20 = 0x73E9", "gtfm 0x20 = 0x74D2", "gtk 0x20 = 0x73DE", "gtkg 0x20 = 0x73DE", "gtl 0x20 = 0x7481", "gtln 0x20 = 0x7481", "gtu 0x20 = 0x9EA6", "gty 0x20 = 0x73AB", "gu 0x20 = 0x5E73", "guh 0x20 = 0x5E73", "guhk 0x20 = 0x5E73", "guj 0x20 = 0x748B", "gujh 0x20 = 0x748B", "guw 0x20 = 0x5939", "guwb 0x20 = 0x90CF", "guwi 0x20 = 0x5939", "guwm 0x20 = 0x988A", "gv 0x20 = 0x59BB", "gvh 0x20 = 0x59BB", "gvhv 0x20 = 0x59BB", "gvt 0x20 = 0x7459", "gvtq 0x20 = 0x7459", "gw 0x20 = 0x73CD", "gwa 0x20 = 0x73B3", "gway 0x20 = 0x73B3", "gwe 0x20 = 0x73CD", "gwet 0x20 = 0x73CD", "gwg 0x20 = 0x745C", "gwgj 0x20 = 0x745C", "gwv 0x20 = 0x73A2", "gwvn 0x20 = 0x73A2", "gwy 0x20 = 0x73B2", "gwyc 0x20 = 0x73B2", "gx 0x20 = 0x4E92", "gxf 0x20 = 0x7E9B", "gxfi 0x20 = 0x7E9B", "gxg 0x20 = 0x4E92", "gxgd 0x20 = 0x4E92", "gxgu 0x20 = 0x6BD2", "gxi 0x20 = 0x7D20", "gxiu 0x20 = 0x7D20", "gxw 0x20 = 0x5937", "gxwi 0x20 = 0x5937", "gy 0x20 = 0x7389", "gyb 0x20 = 0x7483", "gybc 0x20 = 0x7483", "gyc 0x20 = 0x7409", "gycq 0x20 = 0x7409", "gyg 0x20 = 0x6591", "gygg 0x20 = 0x6591", "gyi 0x20 = 0x7389", "gyiy 0x20 = 0x743C", "gyt 0x20 = 0x73ED", "gytg 0x20 = 0x73ED", "gyth 0x20 = 0x7487", "gyv 0x20 = 0x7405", "gyve 0x20 = 0x7405", "gyvk 0x20 = 0x746D", "gyy 0x20 = 0x739F", "h 0x20 = 0x4E0A", "ha 0x20 = 0x864E", "haa 0x20 = 0x8650", "haag 0x20 = 0x8650", "hae 0x20 = 0x907D", "haep 0x20 = 0x907D", "hag 0x20 = 0x7736", "hagg 0x20 = 0x7736", "hagw 0x20 = 0x7792", "hak 0x20 = 0x865E", "hakd 0x20 = 0x865E", "hal 0x20 = 0x7784", "halg 0x20 = 0x7784", "halv 0x20 = 0x864F", "ham 0x20 = 0x864E", "hame 0x20 = 0x5F6A", "hamv 0x20 = 0x864E", "han 0x20 = 0x8651", "hani 0x20 = 0x8651", "hao 0x20 = 0x865A", "haog 0x20 = 0x865A", "haq 0x20 = 0x770D", "haqq 0x20 = 0x89D1", "haqy 0x20 = 0x770D", "hav 0x20 = 0x864D", "hay 0x20 = 0x8654", "hayi 0x20 = 0x8654", "hc 0x20 = 0x76AE", "hcd 0x20 = 0x9887", "hcdm 0x20 = 0x9887", "hci 0x20 = 0x76AE", "hck 0x20 = 0x7719", "hckg 0x20 = 0x7719", "hcr 0x20 = 0x7738", "hcrh 0x20 = 0x7738", "hcu 0x20 = 0x6534", "hcw 0x20 = 0x7743", "hcwt 0x20 = 0x7743", "hdf 0x20 = 0x775A", "hdff 0x20 = 0x775A", "he 0x20 = 0x80AF", "hef 0x20 = 0x80AF", "hep 0x20 = 0x77AC", "heph 0x20 = 0x77AC", "hes 0x20 = 0x776C", "hesy 0x20 = 0x776C", "hf 0x20 = 0x7766", "hfc 0x20 = 0x6B67", "hfcl 0x20 = 0x778C", "hfcy 0x20 = 0x6B67", "hff 0x20 = 0x772D", "hffg 0x20 = 0x772D", "hft 0x20 = 0x7779", "hftj 0x20 = 0x7779", "hfw 0x20 = 0x7766", "hfwf 0x20 = 0x7766", "hg 0x20 = 0x775B", "hgb 0x20 = 0x76F9", "hgbn 0x20 = 0x76F9", "hge 0x20 = 0x775B", "hgeg 0x20 = 0x775B", "hgf 0x20 = 0x76F1", "hgfh 0x20 = 0x76F1", "hgh 0x20 = 0x7704", "hghn 0x20 = 0x7704", "hgm 0x20 = 0x51F8", "hgmg 0x20 = 0x51F8", "hgo 0x20 = 0x7750", "hgoy 0x20 = 0x7750", "hgv 0x20 = 0x776B", "hgvh 0x20 = 0x776B", "hh 0x20 = 0x6B62", "hhg 0x20 = 0x4E0A", "hhgg 0x20 = 0x4E0A", "hhh 0x20 = 0x6B62", "hhhg 0x20 = 0x6B62", "hhhh 0x20 = 0x76EE", "hhl 0x20 = 0x4E28", "hhll 0x20 = 0x4E28", "hhu 0x20 = 0x5361", "hhw 0x20 = 0x77CD", "hhwc 0x20 = 0x77CD", "hhwn 0x20 = 0x6C0D", "hhwy 0x20 = 0x77BF", "hhx 0x20 = 0x7726", "hhxn 0x20 = 0x7726", "hhy 0x20 = 0x535C", "hi 0x20 = 0x6B65", "hic 0x20 = 0x53D4", "hich 0x20 = 0x7763", "hicy 0x20 = 0x53D4", "hid 0x20 = 0x9891", "hidf 0x20 = 0x98A6", "hidm 0x20 = 0x9891", "hip 0x20 = 0x77A0", "hipf 0x20 = 0x77A0", "hiq 0x20 = 0x773A", "hiqn 0x20 = 0x773A", "hir 0x20 = 0x6B65", "hit 0x20 = 0x7707", "hitt 0x20 = 0x7707", "hj 0x20 = 0x65E7", "hjg 0x20 = 0x65E7", "hjj 0x20 = 0x5353", "hjs 0x20 = 0x684C", "hjsu 0x20 = 0x684C", "hk 0x20 = 0x5360", "hka 0x20 = 0x6218", "hkat 0x20 = 0x6218", "hkf 0x20 = 0x5360", "hkm 0x20 = 0x89C7", "hkmq 0x20 = 0x89C7", "hkn 0x20 = 0x4E69", "hknn 0x20 = 0x4E69", "hko 0x20 = 0x70B9", "hkou 0x20 = 0x70B9", "hl 0x20 = 0x5364", "hln 0x20 = 0x5363", "hlnf 0x20 = 0x5363", "hlq 0x20 = 0x5364", "hlqa 0x20 = 0x9E7E", "hlqi 0x20 = 0x5364", "hm 0x20 = 0x8D1E", "hmu 0x20 = 0x8D1E", "hn 0x20 = 0x5362", "hna 0x20 = 0x7720", "hnan 0x20 = 0x7720", "hnb 0x20 = 0x77B0", "hnbt 0x20 = 0x77B0", "hnd 0x20 = 0x9F0E", "hndm 0x20 = 0x9885", "hndn 0x20 = 0x9F0E", "hne 0x20 = 0x5362", "hnq 0x20 = 0x9E2C", "hnqg 0x20 = 0x9E2C", "hnt 0x20 = 0x77A9", "hnty 0x20 = 0x77A9", "hnu 0x20 = 0x5FD0", "ho 0x20 = 0x772F", "hoq 0x20 = 0x77B5", "hoqh 0x20 = 0x77B5", "hoy 0x20 = 0x772F", "hp 0x20 = 0x778E", "hpd 0x20 = 0x778E", "hpdk 0x20 = 0x778E", "hpg 0x20 = 0x58D1", "hpgf 0x20 = 0x58D1", "hpgh 0x20 = 0x777F", "hpj 0x20 = 0x7791", "hpju 0x20 = 0x7791", "hpq 0x20 = 0x7708", "hpqn 0x20 = 0x7708", "hq 0x20 = 0x9910", "hqc 0x20 = 0x9910", "hqce 0x20 = 0x9910", "hqco 0x20 = 0x7CB2", "hqd 0x20 = 0x77BB", "hqdy 0x20 = 0x77BB", "hqq 0x20 = 0x7735", "hqqy 0x20 = 0x7735", "hqv 0x20 = 0x7741", "hqvh 0x20 = 0x7741", "hrt 0x20 = 0x7765", "hrtf 0x20 = 0x7765", "hs 0x20 = 0x76EF", "hsf 0x20 = 0x779F", "hsfi 0x20 = 0x779F", "hsh 0x20 = 0x76EF", "ht 0x20 = 0x7761", "htg 0x20 = 0x7761", "htgf 0x20 = 0x7761", "hto 0x20 = 0x7785", "htoy 0x20 = 0x7785", "htp 0x20 = 0x7728", "htpy 0x20 = 0x7728", "hu 0x20 = 0x77B3", "huj 0x20 = 0x77B3", "hujf 0x20 = 0x77B3", "huxt 0x20 = 0x7747", "hv 0x20 = 0x773C", "hve 0x20 = 0x773C", "hvey 0x20 = 0x773C", "hvh 0x20 = 0x778D", "hvhc 0x20 = 0x778D", "hvq 0x20 = 0x7768", "hvqn 0x20 = 0x7768", "hw 0x20 = 0x5177", "hwb 0x20 = 0x9F7F", "hwbc 0x20 = 0x9F84", "hwbe 0x20 = 0x9F88", "hwbf 0x20 = 0x9F8C", "hwbg 0x20 = 0x9F83", "hwbh 0x20 = 0x9F8A", "hwbj 0x20 = 0x9F7F", "hwbk 0x20 = 0x9F89", "hwbkz 0x20 = 0x9F86", "hwbn 0x20 = 0x9F85", "hwbx 0x20 = 0x9F87", "hwbxz 0x20 = 0x9F80", "hwby 0x20 = 0x9F8B", "hwg 0x20 = 0x77AA", "hwgd 0x20 = 0x777D", "hwgi 0x20 = 0x7751", "hwgu 0x20 = 0x77AA", "hwu 0x20 = 0x5177", "hwv 0x20 = 0x76FC", "hwvn 0x20 = 0x76FC", "hwy 0x20 = 0x77A7", "hwyg 0x20 = 0x7762", "hwyo 0x20 = 0x77A7", "hx 0x20 = 0x6B64", "hxd 0x20 = 0x7826", "hxdf 0x20 = 0x7826", "hxf 0x20 = 0x4E9B", "hxff 0x20 = 0x4E9B", "hxm 0x20 = 0x8D40", "hxmu 0x20 = 0x8D40", "hxn 0x20 = 0x6B64", "hxq 0x20 = 0x89DC", "hxqe 0x20 = 0x89DC", "hxs 0x20 = 0x67F4", "hxsu 0x20 = 0x67F4", "hxw 0x20 = 0x96CC", "hxwy 0x20 = 0x96CC", "hxx 0x20 = 0x7D2B", "hxxi 0x20 = 0x7D2B", "hxy 0x20 = 0x8A3E", "hxyf 0x20 = 0x8A3E", "hy 0x20 = 0x7729", "hyx 0x20 = 0x7729", "hyxy 0x20 = 0x7729", "i 0x20 = 0x4E0D", "ia 0x20 = 0x6C5F", "iad 0x20 = 0x6E5B", "iada 0x20 = 0x6F2D", "iadn 0x20 = 0x6E5B", "iadr 0x20 = 0x6F8C", "iadw 0x20 = 0x6DC7", "iaf 0x20 = 0x6CD4", "iafg 0x20 = 0x6CD4", "iag 0x20 = 0x6C5F", "iagn 0x20 = 0x61D1", "iagw 0x20 = 0x6EE1", "iaj 0x20 = 0x6F20", "iajd 0x20 = 0x6F20", "iak 0x20 = 0x704C", "iaky 0x20 = 0x704C", "iam 0x20 = 0x6F62", "iamw 0x20 = 0x6F62", "ian 0x20 = 0x6C47", "iann 0x20 = 0x6CC4", "ians 0x20 = 0x6E20", "iansz 0x20 = 0x6E2B", "iap 0x20 = 0x6D9D", "iapi 0x20 = 0x6F46", "iapl 0x20 = 0x6D9D", "iapy 0x20 = 0x6EE2", "iaq 0x20 = 0x6CA4", "iaqg 0x20 = 0x9E3F", "iaqy 0x20 = 0x6CA4", "ias 0x20 = 0x67D2", "iasu 0x20 = 0x67D2", "iat 0x20 = 0x6D47", "iatq 0x20 = 0x6D47", "iav 0x20 = 0x6C8F", "iavj 0x20 = 0x6F47", "iavn 0x20 = 0x6C8F", "iaw 0x20 = 0x6D2A", "iawn 0x20 = 0x6E2F", "iawy 0x20 = 0x6D2A", "ib 0x20 = 0x6C60", "ibc 0x20 = 0x6EE0", "ibcc 0x20 = 0x6EE0", "ibg 0x20 = 0x6D31", "ibi 0x20 = 0x6DB5", "ibib 0x20 = 0x6DB5", "ibk 0x20 = 0x51FC", "ibl 0x20 = 0x6CD0", "ibln 0x20 = 0x6CD0", "ibn 0x20 = 0x6C60", "ibw 0x20 = 0x6EC1", "ibwt 0x20 = 0x6EC1", "ic 0x20 = 0x6C49", "ica 0x20 = 0x6CFE", "icag 0x20 = 0x6CFE", "icd 0x20 = 0x6E17", "icde 0x20 = 0x6E17", "ice 0x20 = 0x6D8C", "iceh 0x20 = 0x6D8C", "icf 0x20 = 0x6CFD", "icfh 0x20 = 0x6CFD", "ick 0x20 = 0x6CBB", "ickg 0x20 = 0x6CBB", "icw 0x20 = 0x6EE9", "icwt 0x20 = 0x6D5A", "icwy 0x20 = 0x6EE9", "icy 0x20 = 0x6C49", "icyy 0x20 = 0x6C4A", "id 0x20 = 0x5C16", "ide 0x20 = 0x6E56", "ideg 0x20 = 0x6E56", "idegz 0x20 = 0x6D27", "idf 0x20 = 0x6DAF", "idff 0x20 = 0x6DAF", "idffz 0x20 = 0x6EBD", "idg 0x20 = 0x6CBD", "idh 0x20 = 0x6CA3", "idhc 0x20 = 0x6EDF", "idhh 0x20 = 0x6CA3", "idi 0x20 = 0x5C1C", "idiu 0x20 = 0x5C1C", "idj 0x20 = 0x6DF9", "idjn 0x20 = 0x6DF9", "idl 0x20 = 0x6CA5", "idln 0x20 = 0x6CA5", "idm 0x20 = 0x6E4E", "idmd 0x20 = 0x6E4E", "idr 0x20 = 0x6E90", "idri 0x20 = 0x6E90", "idt 0x20 = 0x6D9B", "idtf 0x20 = 0x6D9B", "idu 0x20 = 0x5C16", "idui 0x20 = 0x6F66", "idw 0x20 = 0x6EB1", "idwt 0x20 = 0x6EB1", "idx 0x20 = 0x6CF7", "idxn 0x20 = 0x6CF7", "idy 0x20 = 0x6C70", "idyy 0x20 = 0x6C70", "ie 0x20 = 0x8096", "ieb 0x20 = 0x6D6E", "iebg 0x20 = 0x6D6E", "iec 0x20 = 0x6DDD", "iecn 0x20 = 0x6DDD", "ief 0x20 = 0x8096", "ieg 0x20 = 0x6CAE", "iegg 0x20 = 0x6CAE", "iej 0x20 = 0x524A", "iejh 0x20 = 0x524A", "iep 0x20 = 0x900D", "iepd 0x20 = 0x900D", "iet 0x20 = 0x6DEB", "ietf 0x20 = 0x6DEB", "iev 0x20 = 0x6ED4", "ievg 0x20 = 0x6ED4", "iex 0x20 = 0x6EAA", "iexd 0x20 = 0x6EAA", "iey 0x20 = 0x6C72", "ieyy 0x20 = 0x6C72", "ieyyz 0x20 = 0x6DBF", "if 0x20 = 0x6CD5", "ifa 0x20 = 0x705E", "ifae 0x20 = 0x705E", "ifc 0x20 = 0x6CD5", "ifcl 0x20 = 0x6E98", "ifcy 0x20 = 0x6CD5", "ifd 0x20 = 0x6FE1", "ifdj 0x20 = 0x6FE1", "iff 0x20 = 0x5C18", "iffg 0x20 = 0x6D3C", "ifh 0x20 = 0x6C57", "ifhw 0x20 = 0x6EC7", "ifhz 0x20 = 0x6C41", "ifj 0x20 = 0x6F6E", "ifje 0x20 = 0x6F6E", "ifjn 0x20 = 0x701A", "ifk 0x20 = 0x6D01", "ifke 0x20 = 0x6F8E", "ifkf 0x20 = 0x6F8D", "ifkg 0x20 = 0x6D01", "ifn 0x20 = 0x6C61", "ifnd 0x20 = 0x6E0E", "ifnn 0x20 = 0x6C61", "ifp 0x20 = 0x6E24", "ifpl 0x20 = 0x6E24", "ifq 0x20 = 0x6C85", "ifqn 0x20 = 0x6C85", "ift 0x20 = 0x6E1A", "iftj 0x20 = 0x6E1A", "ifw 0x20 = 0x6F5C", "ifwj 0x20 = 0x6F5C", "ig 0x20 = 0x6C6A", "igb 0x20 = 0x6C8C", "igbn 0x20 = 0x6C8C", "igd 0x20 = 0x6DFB", "igdn 0x20 = 0x6DFB", "ige 0x20 = 0x6E05", "igef 0x20 = 0x6EA5", "igeg 0x20 = 0x6E05", "igey 0x20 = 0x6D66", "igg 0x20 = 0x6C6A", "igh 0x20 = 0x6C94", "ighn 0x20 = 0x6C94", "igj 0x20 = 0x6D39", "igjg 0x20 = 0x6D39", "igk 0x20 = 0x6EDE", "igkg 0x20 = 0x6D6F", "igkh 0x20 = 0x6EDE", "igki 0x20 = 0x6D91", "igkm 0x20 = 0x6FD1", "igkw 0x20 = 0x6F31", "igm 0x20 = 0x6E0D", "igmh 0x20 = 0x6C9B", "igmj 0x20 = 0x6F15", "igmy 0x20 = 0x6E0D", "igo 0x20 = 0x6D9E", "igoy 0x20 = 0x6D9E", "igq 0x20 = 0x6D0C", "igqj 0x20 = 0x6D0C", "igs 0x20 = 0x6CAB", "igsy 0x20 = 0x6CAB", "igt 0x20 = 0x6D45", "igu 0x20 = 0x6D43", "iguw 0x20 = 0x6D43", "ih 0x20 = 0x5C0F", "iha 0x20 = 0x6EE4", "ihah 0x20 = 0x6EF9", "ihan 0x20 = 0x6EE4", "ihc 0x20 = 0x6CE2", "ihcv 0x20 = 0x5A46", "ihcy 0x20 = 0x6CE2", "ihg 0x20 = 0x6CEA", "ihi 0x20 = 0x6D89", "ihic 0x20 = 0x6DD1", "ihim 0x20 = 0x6FD2", "ihit 0x20 = 0x6D89", "ihitz 0x20 = 0x6E3A", "ihj 0x20 = 0x6DD6", "ihjh 0x20 = 0x6DD6", "ihk 0x20 = 0x6CBE", "ihkg 0x20 = 0x6CBE", "ihm 0x20 = 0x6D48", "ihmy 0x20 = 0x6D48", "ihn 0x20 = 0x6CF8", "ihnt 0x20 = 0x6CF8", "ihq 0x20 = 0x7023", "ihqg 0x20 = 0x7023", "iht 0x20 = 0x5C0F", "ihty 0x20 = 0x5C0F", "ihw 0x20 = 0x6FC9", "ihwy 0x20 = 0x6FC9", "ii 0x20 = 0x6C34", "iie 0x20 = 0x6D88", "iieg 0x20 = 0x6D88", "iii 0x20 = 0x6C34", "iiiu 0x20 = 0x6DFC", "iim 0x20 = 0x6DCC", "iimk 0x20 = 0x6DCC", "iiq 0x20 = 0x6D2E", "iiqn 0x20 = 0x6D2E", "iit 0x20 = 0x6C99", "iite 0x20 = 0x88DF", "iitg 0x20 = 0x9CA8", "iitr 0x20 = 0x6332", "iitt 0x20 = 0x6C99", "iitv 0x20 = 0x5A11", "ij 0x20 = 0x6D4A", "ija 0x20 = 0x7011", "ijai 0x20 = 0x7011", "ijf 0x20 = 0x6C93", "ijfg 0x20 = 0x6D85", "ijg 0x20 = 0x6C68", "ijgz 0x20 = 0x6C69", "ijl 0x20 = 0x6E29", "ijlc 0x20 = 0x6F2B", "ijlg 0x20 = 0x6E29", "ijn 0x20 = 0x6EBB", "ijng 0x20 = 0x6EBB", "ijo 0x20 = 0x6E7F", "ijog 0x20 = 0x6E7F", "ijq 0x20 = 0x6E34", "ijqn 0x20 = 0x6E34", "ijt 0x20 = 0x6EE5", "ijtl 0x20 = 0x6EE5", "ijx 0x20 = 0x6DF7", "ijxx 0x20 = 0x6DF7", "ijy 0x20 = 0x6D4A", "ijym 0x20 = 0x704F", "ik 0x20 = 0x6FA1", "ike 0x20 = 0x6D93", "ikeg 0x20 = 0x6D93", "ikh 0x20 = 0x6E83", "ikhk 0x20 = 0x6F5E", "ikhm 0x20 = 0x6E83", "ikhy 0x20 = 0x6D5E", "ikj 0x20 = 0x6E11", "ikjn 0x20 = 0x6E11", "ikk 0x20 = 0x6FA1", "ikkn 0x20 = 0x6F36", "ikks 0x20 = 0x6FA1", "ikm 0x20 = 0x6DA1", "ikmw 0x20 = 0x6DA1", "il 0x20 = 0x6E10", "ild 0x20 = 0x6DB8", "ildg 0x20 = 0x6DB8", "ildy 0x20 = 0x6D07", "ile 0x20 = 0x6E2D", "ileg 0x20 = 0x6E2D", "iley 0x20 = 0x6EB7", "ilf 0x20 = 0x6DA0", "ilfh 0x20 = 0x6DA0", "ilg 0x20 = 0x6CD7", "ilgj 0x20 = 0x6DE0", "ilk 0x20 = 0x6D04", "ilkg 0x20 = 0x6D04", "ilp 0x20 = 0x6D9F", "ilpy 0x20 = 0x6D9F", "ilr 0x20 = 0x6E10", "ilrh 0x20 = 0x6E10", "ilw 0x20 = 0x6CC5", "ilwy 0x20 = 0x6CC5", "ilx 0x20 = 0x6F2F", "ilxi 0x20 = 0x6F2F", "im 0x20 = 0x6CA1", "ima 0x20 = 0x6FA7", "imau 0x20 = 0x6FA7", "imc 0x20 = 0x6CA1", "imcy 0x20 = 0x6CA1", "imd 0x20 = 0x6E4D", "imdj 0x20 = 0x6E4D", "imdy 0x20 = 0x6CF1", "ime 0x20 = 0x6ED1", "imeg 0x20 = 0x6ED1", "img 0x20 = 0x6CB9", "imgk 0x20 = 0x6D1E", "imgt 0x20 = 0x6E85", "imh 0x20 = 0x6C55", "imj 0x20 = 0x6D4B", "imjh 0x20 = 0x6D4B", "imk 0x20 = 0x6CBF", "imkf 0x20 = 0x5C1A", "imkg 0x20 = 0x6CBF", "imkn 0x20 = 0x6C05", "imkt 0x20 = 0x655E", "imw 0x20 = 0x6D94", "imwn 0x20 = 0x6D94", "in 0x20 = 0x6C81", "ina 0x20 = 0x6CEF", "inan 0x20 = 0x6CEF", "inb 0x20 = 0x6F89", "inbb 0x20 = 0x6F7A", "inbt 0x20 = 0x6F89", "inf 0x20 = 0x6C5B", "infh 0x20 = 0x6C5B", "infy 0x20 = 0x6F0F", "ing 0x20 = 0x6E25", "ingf 0x20 = 0x6E25", "inh 0x20 = 0x6E44", "inhg 0x20 = 0x6E44", "inm 0x20 = 0x6DAE", "inmj 0x20 = 0x6DAE", "inn 0x20 = 0x6C5C", "inr 0x20 = 0x6C64", "inro 0x20 = 0x70EB", "inrt 0x20 = 0x6C64", "int 0x20 = 0x6CCC", "intt 0x20 = 0x6CCC", "inty 0x20 = 0x6CFC", "inw 0x20 = 0x6FEF", "inwy 0x20 = 0x6FEF", "inx 0x20 = 0x6CE5", "inxn 0x20 = 0x6CE5", "iny 0x20 = 0x6C81", "io 0x20 = 0x6DE1", "iol 0x20 = 0x7035", "iolw 0x20 = 0x7035", "ioo 0x20 = 0x6DE1", "iooy 0x20 = 0x6DE1", "ip 0x20 = 0x5B66", "ipa 0x20 = 0x9EC9", "ipaw 0x20 = 0x9EC9", "ipb 0x20 = 0x5B66", "ipbf 0x20 = 0x5B66", "ipe 0x20 = 0x6D53", "ipey 0x20 = 0x6D53", "ipf 0x20 = 0x5C1D", "ipfc 0x20 = 0x5C1D", "ipfi 0x20 = 0x6DD9", "ipfq 0x20 = 0x6D63", "ipg 0x20 = 0x6F14", "ipgg 0x20 = 0x6CFB", "ipggz 0x20 = 0x6E32", "ipgh 0x20 = 0x6DC0", "ipgw 0x20 = 0x6F14", "ipi 0x20 = 0x6CF6", "ipiu 0x20 = 0x6CF6", "ipj 0x20 = 0x6E16", "ipjh 0x20 = 0x6E16", "ipju 0x20 = 0x6E9F", "ipk 0x20 = 0x515A", "ipke 0x20 = 0x88F3", "ipkf 0x20 = 0x5802", "ipkh 0x20 = 0x5E38", "ipkm 0x20 = 0x8D4F", "ipkq 0x20 = 0x515A", "ipkr 0x20 = 0x638C", "ipks 0x20 = 0x68E0", "ipl 0x20 = 0x6D51", "iplh 0x20 = 0x6D51", "ipm 0x20 = 0x6C89", "ipmn 0x20 = 0x6C89", "ipmq 0x20 = 0x89C9", "ipn 0x20 = 0x6DAB", "ipnn 0x20 = 0x6DAB", "ipq 0x20 = 0x6C88", "ipqg 0x20 = 0x9C8E", "ipqn 0x20 = 0x6C88", "ipr 0x20 = 0x6EE8", "iprw 0x20 = 0x6EE8", "ips 0x20 = 0x6CDE", "ipsh 0x20 = 0x6CDE", "ipt 0x20 = 0x55BE", "iptk 0x20 = 0x55BE", "ipu 0x20 = 0x6ED3", "ipuh 0x20 = 0x6ED3", "ipw 0x20 = 0x6DF1", "ipwk 0x20 = 0x6EB6", "ipws 0x20 = 0x6DF1", "ipx 0x20 = 0x6CB1", "ipxn 0x20 = 0x6CB1", "iq 0x20 = 0x5149", "iqb 0x20 = 0x5149", "iqbh 0x20 = 0x6C79", "iqc 0x20 = 0x6C9F", "iqcy 0x20 = 0x6C9F", "iqd 0x20 = 0x6DC6", "iqde 0x20 = 0x6DC6", "iqdh 0x20 = 0x6D60", "iqdy 0x20 = 0x6FB9", "iqf 0x20 = 0x9F17", "iqfc 0x20 = 0x9F17", "iqg 0x20 = 0x6DE6", "iqgg 0x20 = 0x6E14", "iqi 0x20 = 0x6CFA", "iqiy 0x20 = 0x6CFA", "iqj 0x20 = 0x6D35", "iqjg 0x20 = 0x6D35", "iqk 0x20 = 0x6D7C", "iqkq 0x20 = 0x6D7C", "iqm 0x20 = 0x6DA3", "iqmd 0x20 = 0x6DA3", "iqn 0x20 = 0x6CE1", "iqnn 0x20 = 0x6CE1", "iqny 0x20 = 0x8000", "iqp 0x20 = 0x9003", "iqpl 0x20 = 0x8F89", "iqpv 0x20 = 0x9003", "iqr 0x20 = 0x6DD8", "iqrm 0x20 = 0x6DD8", "iqt 0x20 = 0x6CD6", "iqtb 0x20 = 0x6CD6", "iqtj 0x20 = 0x6F74", "iqtk 0x20 = 0x6F2A", "iqv 0x20 = 0x5146", "iqy 0x20 = 0x6C50", "iqyl 0x20 = 0x6E9C", "ir 0x20 = 0x6CCA", "ird 0x20 = 0x6E43", "irdf 0x20 = 0x6E43", "ire 0x20 = 0x6D3E", "irey 0x20 = 0x6D3E", "irg 0x20 = 0x6CCA", "irgg 0x20 = 0x6E5F", "irgw 0x20 = 0x6D5C", "irh 0x20 = 0x6C82", "iri 0x20 = 0x6D19", "iriy 0x20 = 0x6D19", "irn 0x20 = 0x6C7D", "irnn 0x20 = 0x6C7D", "irr 0x20 = 0x6D59", "irrh 0x20 = 0x6D59", "iry 0x20 = 0x6FC0", "iryt 0x20 = 0x6FC0", "is 0x20 = 0x6D12", "isf 0x20 = 0x6F02", "isfg 0x20 = 0x6E6E", "isfi 0x20 = 0x6F02", "isg 0x20 = 0x6D12", "isgg 0x20 = 0x9152", "ish 0x20 = 0x6C40", "ishg 0x20 = 0x6E58", "isj 0x20 = 0x6F6D", "isjg 0x20 = 0x6E23", "isjh 0x20 = 0x6F6D", "isk 0x20 = 0x6CB3", "iskg 0x20 = 0x6CB3", "isr 0x20 = 0x6DC5", "isrh 0x20 = 0x6DC5", "iss 0x20 = 0x6DCB", "isse 0x20 = 0x6F78", "issv 0x20 = 0x6F24", "issy 0x20 = 0x6DCB", "issyz 0x20 = 0x6EA7", "isw 0x20 = 0x6F06", "iswc 0x20 = 0x6DDE", "iswi 0x20 = 0x6F06", "isy 0x20 = 0x6C90", "isyy 0x20 = 0x6CAD", "it 0x20 = 0x5C11", "ita 0x20 = 0x6D1A", "itah 0x20 = 0x6D1A", "itb 0x20 = 0x6CB2", "itbn 0x20 = 0x6CB2", "itd 0x20 = 0x6D3B", "itdg 0x20 = 0x6D3B", "itdq 0x20 = 0x92C8", "itdy 0x20 = 0x6C83", "itf 0x20 = 0x6D17", "itfk 0x20 = 0x6D69", "itfq 0x20 = 0x6D17", "ith 0x20 = 0x7701", "ithd 0x20 = 0x6EB4", "ithf 0x20 = 0x7701", "ithg 0x20 = 0x6D0E", "ithj 0x20 = 0x6FDE", "ithp 0x20 = 0x6D8E", "iti 0x20 = 0x6F72", "itie 0x20 = 0x6F72", "itk 0x20 = 0x6D1B", "itkg 0x20 = 0x6D1B", "itl 0x20 = 0x52A3", "itlb 0x20 = 0x52A3", "itlg 0x20 = 0x6D2B", "itm 0x20 = 0x6FB3", "itmd 0x20 = 0x6FB3", "itn 0x20 = 0x6C54", "itnn 0x20 = 0x6C54", "ito 0x20 = 0x6E0A", "itoh 0x20 = 0x6E0A", "itol 0x20 = 0x6F58", "itoy 0x20 = 0x6E6B", "itp 0x20 = 0x6CDB", "itpy 0x20 = 0x6CDB", "itr 0x20 = 0x5C11", "its 0x20 = 0x6DA4", "itsy 0x20 = 0x6DA4", "itt 0x20 = 0x6ED7", "ittn 0x20 = 0x6ED7", "itx 0x20 = 0x6D77", "itxu 0x20 = 0x6D77", "iu 0x20 = 0x6D0B", "iub 0x20 = 0x6EAF", "iube 0x20 = 0x6EAF", "iuc 0x20 = 0x6EDA", "iuce 0x20 = 0x6EDA", "iud 0x20 = 0x6D0B", "iudh 0x20 = 0x6D0B", "iue 0x20 = 0x6E54", "iuej 0x20 = 0x6E54", "iuf 0x20 = 0x6CEE", "iufh 0x20 = 0x6CEE", "iug 0x20 = 0x6CE3", "iugg 0x20 = 0x6DA6", "iugi 0x20 = 0x6F9C", "iugiz 0x20 = 0x6F3E", "iuj 0x20 = 0x6F33", "iujf 0x20 = 0x6F7C", "iujg 0x20 = 0x6DA7", "iujh 0x20 = 0x6F33", "iuk 0x20 = 0x6DAA", "iukg 0x20 = 0x6DAA", "ium 0x20 = 0x6EF4", "iumd 0x20 = 0x6EF4", "iup 0x20 = 0x6EC2", "iupy 0x20 = 0x6EC2", "iuw 0x20 = 0x6EA2", "iuwl 0x20 = 0x6EA2", "iux 0x20 = 0x6ECB", "iuxt 0x20 = 0x6D95", "iuxx 0x20 = 0x6ECB", "iv 0x20 = 0x5F53", "ivc 0x20 = 0x6E89", "ivcq 0x20 = 0x6E89", "ivf 0x20 = 0x5F53", "ivfh 0x20 = 0x6D25", "ivfy 0x20 = 0x6D54", "ivg 0x20 = 0x6C5D", "ivh 0x20 = 0x6EB2", "ivhc 0x20 = 0x6EB2", "ivi 0x20 = 0x6E0C", "iviy 0x20 = 0x6E0C", "ivk 0x20 = 0x6CBC", "ivkg 0x20 = 0x6CBC", "ivkgz 0x20 = 0x6D33", "ivl 0x20 = 0x6DC4", "ivlg 0x20 = 0x6DC4", "ivp 0x20 = 0x6D78", "ivpc 0x20 = 0x6D78", "ivs 0x20 = 0x67D3", "ivsu 0x20 = 0x67D3", "ivw 0x20 = 0x6881", "ivwo 0x20 = 0x7CB1", "ivws 0x20 = 0x6881", "ivy 0x20 = 0x6DA9", "ivyh 0x20 = 0x6DA9", "iw 0x20 = 0x5174", "iwb 0x20 = 0x6CA7", "iwbn 0x20 = 0x6CA7", "iwe 0x20 = 0x810A", "iwef 0x20 = 0x810A", "iwf 0x20 = 0x4E3E", "iwfc 0x20 = 0x6D4D", "iwfh 0x20 = 0x4E3E", "iwg 0x20 = 0x6D3D", "iwga 0x20 = 0x7039", "iwgj 0x20 = 0x6E1D", "iwgk 0x20 = 0x6D3D", "iwgt 0x20 = 0x6F4B", "iwgu 0x20 = 0x6F84", "iwo 0x20 = 0x6FEE", "iwoy 0x20 = 0x6FEE", "iwq 0x20 = 0x6ECF", "iwqu 0x20 = 0x6ECF", "iwt 0x20 = 0x6D82", "iwtc 0x20 = 0x6E86", "iwty 0x20 = 0x6D82", "iwu 0x20 = 0x5174", "iwv 0x20 = 0x6C7E", "iwvl 0x20 = 0x6E53", "iwvn 0x20 = 0x6C7E", "iww 0x20 = 0x6D74", "iwwk 0x20 = 0x6D74", "iwx 0x20 = 0x6CA6", "iwxn 0x20 = 0x6CA6", "iwy 0x20 = 0x6DEE", "iwyc 0x20 = 0x6CE0", "iwyf 0x20 = 0x8A89", "iwyfz 0x20 = 0x96C0", "iwyg 0x20 = 0x6DEE", "ix 0x20 = 0x6DA8", "ixc 0x20 = 0x6CD3", "ixcy 0x20 = 0x6CD3", "ixj 0x20 = 0x6CB8", "ixjh 0x20 = 0x6CB8", "ixt 0x20 = 0x6DA8", "ixty 0x20 = 0x6DA8", "ixu 0x20 = 0x6EBA", "ixuu 0x20 = 0x6EBA", "ixw 0x20 = 0x6F4D", "ixwy 0x20 = 0x6F4D", "iy 0x20 = 0x6CE8", "iya 0x20 = 0x6E21", "iyac 0x20 = 0x6E21", "iyb 0x20 = 0x6DF3", "iybc 0x20 = 0x6F13", "iybg 0x20 = 0x6DF3", "iyc 0x20 = 0x6D41", "iycq 0x20 = 0x6D41", "iycqz 0x20 = 0x938F", "iyct 0x20 = 0x6F88", "iyg 0x20 = 0x6CE8", "iygg 0x20 = 0x6CE8", "iyh 0x20 = 0x6C74", "iyhy 0x20 = 0x6C74", "iyj 0x20 = 0x6D4E", "iyjh 0x20 = 0x6D4E", "iyjhz 0x20 = 0x6D4F", "iyl 0x20 = 0x6CA9", "iylg 0x20 = 0x6FB6", "iyly 0x20 = 0x6CA9", "iym 0x20 = 0x6C86", "iymn 0x20 = 0x6C86", "iyn 0x20 = 0x6CAA", "iyni 0x20 = 0x6CF3", "iynt 0x20 = 0x6CAA", "iynx 0x20 = 0x6F09", "iyny 0x20 = 0x701B", "iyo 0x20 = 0x6E7E", "iyos 0x20 = 0x6EE6", "iyox 0x20 = 0x6E7E", "iyp 0x20 = 0x6FE0", "iype 0x20 = 0x6FE0", "iyt 0x20 = 0x6D32", "iytb 0x20 = 0x6E38", "iytf 0x20 = 0x6D52", "iyth 0x20 = 0x6D32", "iythz 0x20 = 0x6F29", "iyu 0x20 = 0x6FC2", "iyuo 0x20 = 0x6FC2", "iyv 0x20 = 0x6D6A", "iyve 0x20 = 0x6D6A", "iyvk 0x20 = 0x6E8F", "iyw 0x20 = 0x6DB2", "iywf 0x20 = 0x6DEC", "iywu 0x20 = 0x6DE4", "iywy 0x20 = 0x6DB2", "iyx 0x20 = 0x6CEB", "iyxy 0x20 = 0x6CEB", "iyy 0x20 = 0x6C76", "iyyg 0x20 = 0x6C35", "j 0x20 = 0x662F", "ja 0x20 = 0x8679", "jad 0x20 = 0x871E", "jada 0x20 = 0x87D2", "jadw 0x20 = 0x871E", "jaf 0x20 = 0x86B6", "jafg 0x20 = 0x86B6", "jag 0x20 = 0x8679", "jagw 0x20 = 0x87A8", "jah 0x20 = 0x869C", "jaht 0x20 = 0x869C", "jaj 0x20 = 0x8721", "jajd 0x20 = 0x87C6", "jajg 0x20 = 0x8721", "jak 0x20 = 0x872E", "jakg 0x20 = 0x872E", "jal 0x20 = 0x881B", "jalt 0x20 = 0x881B", "jam 0x20 = 0x87E5", "jamw 0x20 = 0x87E5", "jan 0x20 = 0x8776", "jans 0x20 = 0x8776", "jap 0x20 = 0x8813", "jape 0x20 = 0x8813", "japs 0x20 = 0x877E", "jat 0x20 = 0x6653", "jatq 0x20 = 0x6653", "jatqz 0x20 = 0x86F2", "jaw 0x20 = 0x66B4", "jawc 0x20 = 0x8816", "jawi 0x20 = 0x66B4", "jb 0x20 = 0x6700", "jbc 0x20 = 0x6700", "jbcu 0x20 = 0x6700", "jbl 0x20 = 0x8722", "jblg 0x20 = 0x8722", "jc 0x20 = 0x7D27", "jce 0x20 = 0x80BE", "jcef 0x20 = 0x80BE", "jceh 0x20 = 0x86F9", "jcf 0x20 = 0x575A", "jcff 0x20 = 0x575A", "jcfg 0x20 = 0x86CF", "jcg 0x20 = 0x8682", "jcm 0x20 = 0x8D24", "jcmu 0x20 = 0x8D24", "jcr 0x20 = 0x86D1", "jcrh 0x20 = 0x86D1", "jcu 0x20 = 0x7AD6", "jcuf 0x20 = 0x7AD6", "jcx 0x20 = 0x7D27", "jcxi 0x20 = 0x7D27", "jd 0x20 = 0x6668", "jdd 0x20 = 0x86CE", "jddn 0x20 = 0x86CE", "jde 0x20 = 0x8774", "jdeg 0x20 = 0x8774", "jdf 0x20 = 0x6668", "jdfe 0x20 = 0x6668", "jdff 0x20 = 0x8770", "jdg 0x20 = 0x86C4", "jdh 0x20 = 0x868C", "jdhh 0x20 = 0x868C", "jdn 0x20 = 0x665F", "jdnt 0x20 = 0x665F", "jdr 0x20 = 0x8788", "jdri 0x20 = 0x8788", "jdw 0x20 = 0x6603", "jdwj 0x20 = 0x877D", "jdwt 0x20 = 0x8793", "jdwu 0x20 = 0x6603", "je 0x20 = 0x660E", "jeb 0x20 = 0x8709", "jebg 0x20 = 0x8709", "jef 0x20 = 0x6696", "jefc 0x20 = 0x6696", "jeg 0x20 = 0x660E", "jegg 0x20 = 0x86C6", "jel 0x20 = 0x76DF", "jelf 0x20 = 0x76DF", "jep 0x20 = 0x66A7", "jepc 0x20 = 0x66A7", "jf 0x20 = 0x65F6", "jfc 0x20 = 0x91CE", "jfcb 0x20 = 0x91CE", "jfcf 0x20 = 0x5885", "jfcu 0x20 = 0x6619", "jfd 0x20 = 0x91CC", "jfdj 0x20 = 0x8815", "jff 0x20 = 0x86D9", "jffg 0x20 = 0x86D9", "jfh 0x20 = 0x65F0", "jfi 0x20 = 0x6627", "jfiy 0x20 = 0x6627", "jfj 0x20 = 0x65F1", "jfke 0x20 = 0x87DB", "jfm 0x20 = 0x877B", "jfmf 0x20 = 0x877B", "jft 0x20 = 0x6691", "jftj 0x20 = 0x6691", "jfw 0x20 = 0x86A8", "jfwy 0x20 = 0x86A8", "jfy 0x20 = 0x65F6", "jg 0x20 = 0x91CF", "jgc 0x20 = 0x86ED", "jgcf 0x20 = 0x86ED", "jgd 0x20 = 0x660A", "jgdu 0x20 = 0x660A", "jge 0x20 = 0x6674", "jgeg 0x20 = 0x6674", "jgegz 0x20 = 0x873B", "jgey 0x20 = 0x6661", "jgf 0x20 = 0x65E6", "jgg 0x20 = 0x65FA", "jgh 0x20 = 0x662F", "jghh 0x20 = 0x97EA", "jghm 0x20 = 0x9898", "jghu 0x20 = 0x662F", "jghx 0x20 = 0x5319", "jghy 0x20 = 0x867E", "jgj 0x20 = 0x91CF", "jgjf 0x20 = 0x91CF", "jgjn 0x20 = 0x87EA", "jgk 0x20 = 0x6664", "jgkg 0x20 = 0x6664", "jgkl 0x20 = 0x8760", "jgm 0x20 = 0x5E08", "jgmh 0x20 = 0x5E08", "jgmj 0x20 = 0x87AC", "jgu 0x20 = 0x86F1", "jguw 0x20 = 0x86F1", "jh 0x20 = 0x65E9", "jhf 0x20 = 0x5192", "jhh 0x20 = 0x5202", "jhhc 0x20 = 0x883C", "jhk 0x20 = 0x7533", "jhl 0x20 = 0x52D6", "jhln 0x20 = 0x52D6", "jhn 0x20 = 0x65E9", "jhng 0x20 = 0x66F0", "jhnh 0x20 = 0x65E9", "jhnr 0x20 = 0x7545", "jhny 0x20 = 0x866B", "ji 0x20 = 0x6643", "jie 0x20 = 0x86F8", "jieg 0x20 = 0x86F8", "jip 0x20 = 0x87B3", "jipf 0x20 = 0x87B3", "jiq 0x20 = 0x6643", "jiqb 0x20 = 0x6643", "jiqbz 0x20 = 0x6641", "jj 0x20 = 0x660C", "jja 0x20 = 0x66DD", "jjai 0x20 = 0x66DD", "jjf 0x20 = 0x660C", "jjg 0x20 = 0x86F3", "jjgh 0x20 = 0x86F3", "jjj 0x20 = 0x6676", "jjjf 0x20 = 0x6676", "jjjj 0x20 = 0x65E5", "jjq 0x20 = 0x874E", "jjqn 0x20 = 0x874E", "jjqr 0x20 = 0x8734", "jjs 0x20 = 0x873E", "jjsy 0x20 = 0x873E", "jk 0x20 = 0x8747", "jkg 0x20 = 0x8708", "jkgd 0x20 = 0x8708", "jkj 0x20 = 0x8747", "jkjn 0x20 = 0x8747", "jkm 0x20 = 0x8717", "jkmw 0x20 = 0x8717", "jlc 0x20 = 0x66FC", "jlcu 0x20 = 0x66FC", "jlf 0x20 = 0x86CA", "jlfj 0x20 = 0x66D9", "jlg 0x20 = 0x8748", "jlgy 0x20 = 0x8748", "jlk 0x20 = 0x86D4", "jlkg 0x20 = 0x86D4", "jlx 0x20 = 0x87BA", "jlxi 0x20 = 0x87BA", "jm 0x20 = 0x9047", "jma 0x20 = 0x86D0", "jmag 0x20 = 0x86D0", "jmd 0x20 = 0x6620", "jmdy 0x20 = 0x6620", "jmf 0x20 = 0x86BA", "jmfg 0x20 = 0x86BA", "jmfk 0x20 = 0x8729", "jmg 0x20 = 0x86B0", "jmh 0x20 = 0x5E05", "jmhh 0x20 = 0x5E05", "jmhn 0x20 = 0x611A", "jmhp 0x20 = 0x9047", "jmhy 0x20 = 0x79BA", "jmn 0x20 = 0x866E", "jmq 0x20 = 0x86AC", "jmqn 0x20 = 0x86AC", "jmw 0x20 = 0x868B", "jmwy 0x20 = 0x868B", "jn 0x20 = 0x7535", "jnh 0x20 = 0x6687", "jnhc 0x20 = 0x6687", "jnn 0x20 = 0x866C", "jnp 0x20 = 0x9062", "jnpd 0x20 = 0x9062", "jnv 0x20 = 0x7535", "jnw 0x20 = 0x66DC", "jnwy 0x20 = 0x66DC", "jnx 0x20 = 0x6635", "jnxn 0x20 = 0x6635", "jo 0x20 = 0x663E", "jog 0x20 = 0x663E", "jogf 0x20 = 0x663E", "jou 0x20 = 0x7085", "jov 0x20 = 0x877C", "jovg 0x20 = 0x877C", "jp 0x20 = 0x6655", "jpg 0x20 = 0x6684", "jpgg 0x20 = 0x6684", "jpj 0x20 = 0x879F", "jpju 0x20 = 0x669D", "jpjuz 0x20 = 0x879F", "jpl 0x20 = 0x6655", "jplh 0x20 = 0x6656", "jplj 0x20 = 0x6655", "jpq 0x20 = 0x873F", "jpqb 0x20 = 0x873F", "jpv 0x20 = 0x664F", "jpvf 0x20 = 0x664F", "jpx 0x20 = 0x86C7", "jpxn 0x20 = 0x86C7", "jq 0x20 = 0x665A", "jqb 0x20 = 0x6602", "jqbj 0x20 = 0x6602", "jqd 0x20 = 0x87FE", "jqdy 0x20 = 0x87FE", "jqj 0x20 = 0x87D3", "jqje 0x20 = 0x87D3", "jqk 0x20 = 0x665A", "jqko 0x20 = 0x7166", "jqkq 0x20 = 0x665A", "jqkqz 0x20 = 0x5195", "jqr 0x20 = 0x6613", "jqrj 0x20 = 0x5254", "jqrr 0x20 = 0x6613", "jqt 0x20 = 0x6634", "jqtb 0x20 = 0x6634", "jqu 0x20 = 0x6600", "jqug 0x20 = 0x6600", "jqw 0x20 = 0x6B47", "jqwn 0x20 = 0x66F7", "jqwp 0x20 = 0x904F", "jqww 0x20 = 0x6B47", "jr 0x20 = 0x8757", "jrg 0x20 = 0x8757", "jrgg 0x20 = 0x86AF", "jrggz 0x20 = 0x8757", "jrh 0x20 = 0x6615", "jri 0x20 = 0x86DB", "jriy 0x20 = 0x86DB", "jrt 0x20 = 0x8731", "jrtf 0x20 = 0x8731", "js 0x20 = 0x679C", "jsd 0x20 = 0x9897", "jsdm 0x20 = 0x9897", "jsf 0x20 = 0x87B5", "jsfi 0x20 = 0x87B5", "jsg 0x20 = 0x6652", "jsi 0x20 = 0x679C", "jsk 0x20 = 0x86B5", "jskg 0x20 = 0x86B5", "jsq 0x20 = 0x5925", "jsqq 0x20 = 0x5925", "jsr 0x20 = 0x6670", "jsrh 0x20 = 0x6670", "jsrhz 0x20 = 0x8725", "jsu 0x20 = 0x6772", "jt 0x20 = 0x6628", "jtd 0x20 = 0x8702", "jtdg 0x20 = 0x86DE", "jtdh 0x20 = 0x8702", "jtdk 0x20 = 0x8718", "jtf 0x20 = 0x869D", "jtfn 0x20 = 0x869D", "jtfp 0x20 = 0x8713", "jtg 0x20 = 0x661F", "jtga 0x20 = 0x6225", "jtgf 0x20 = 0x661F", "jtgo 0x20 = 0x66DB", "jth 0x20 = 0x6628", "jthf 0x20 = 0x6628", "jthfz 0x20 = 0x86B1", "jthk 0x20 = 0x6677", "jthn 0x20 = 0x8785", "jthp 0x20 = 0x8712", "jtj 0x20 = 0x870A", "jtjh 0x20 = 0x870A", "jtjt 0x20 = 0x876E", "jtm 0x20 = 0x664C", "jtmk 0x20 = 0x664C", "jtn 0x20 = 0x867C", "jtnn 0x20 = 0x867C", "jto 0x20 = 0x87CB", "jtol 0x20 = 0x87E0", "jton 0x20 = 0x87CB", "jtr 0x20 = 0x86FE", "jtrt 0x20 = 0x86FE", "jtu 0x20 = 0x874C", "jtuf 0x20 = 0x874C", "jtx 0x20 = 0x6666", "jtxu 0x20 = 0x6666", "jty 0x20 = 0x4E34", "jtyj 0x20 = 0x4E34", "jtyl 0x20 = 0x76D1", "jtyq 0x20 = 0x89C8", "jtyqz 0x20 = 0x9274", "ju 0x20 = 0x6697", "jud 0x20 = 0x86D8", "judb 0x20 = 0x8737", "judh 0x20 = 0x86D8", "judk 0x20 = 0x87EE", "judn 0x20 = 0x8723", "juf 0x20 = 0x6631", "jufh 0x20 = 0x86AA", "jug 0x20 = 0x66E6", "jugt 0x20 = 0x66E6", "juj 0x20 = 0x6697", "jujf 0x20 = 0x8749", "jujg 0x20 = 0x6697", "jujh 0x20 = 0x87D1", "juk 0x20 = 0x8715", "jukq 0x20 = 0x8715", "jup 0x20 = 0x8783", "jupy 0x20 = 0x8783", "juq 0x20 = 0x86DF", "juqy 0x20 = 0x86DF", "jus 0x20 = 0x8764", "jusg 0x20 = 0x8764", "jv 0x20 = 0x5F52", "jvb 0x20 = 0x65EF", "jvg 0x20 = 0x5F52", "jvh 0x20 = 0x878B", "jvhc 0x20 = 0x878B", "jvk 0x20 = 0x662D", "jvkg 0x20 = 0x662D", "jvko 0x20 = 0x7167", "jw 0x20 = 0x86E4", "jwc 0x20 = 0x86A3", "jwcy 0x20 = 0x86A3", "jwg 0x20 = 0x86E4", "jwgd 0x20 = 0x668C", "jwgj 0x20 = 0x8753", "jwgk 0x20 = 0x86E4", "jwj 0x20 = 0x86A7", "jwjh 0x20 = 0x86A7", "jwt 0x20 = 0x870D", "jwty 0x20 = 0x870D", "jwx 0x20 = 0x6654", "jwxf 0x20 = 0x6654", "jwy 0x20 = 0x66B9", "jwyc 0x20 = 0x86C9", "jwyk 0x20 = 0x6657", "jwyp 0x20 = 0x66B9", "jx 0x20 = 0x6606", "jxe 0x20 = 0x66F3", "jxh 0x20 = 0x8693", "jxhh 0x20 = 0x8693", "jxl 0x20 = 0x86B4", "jxln 0x20 = 0x86B4", "jxx 0x20 = 0x6606", "jxxb 0x20 = 0x6606", "jxxn 0x20 = 0x868D", "jy 0x20 = 0x666F", "jyb 0x20 = 0x66BE", "jybc 0x20 = 0x87AD", "jybt 0x20 = 0x66BE", "jyg 0x20 = 0x86C0", "jygg 0x20 = 0x86C0", "jyi 0x20 = 0x666F", "jyie 0x20 = 0x5F71", "jyim 0x20 = 0x98A2", "jyiu 0x20 = 0x666F", "jyiy 0x20 = 0x667E", "jyiz 0x20 = 0x98A2", "jyj 0x20 = 0x86F4", "jyjh 0x20 = 0x86F4", "jyk 0x20 = 0x66E9", "jyke 0x20 = 0x66E9", "jyn 0x20 = 0x867B", "jyna 0x20 = 0x8759", "jynn 0x20 = 0x867B", "jyq 0x20 = 0x8681", "jyqy 0x20 = 0x8681", "jyt 0x20 = 0x65F7", "jytb 0x20 = 0x8763", "jyu 0x20 = 0x880A", "jyuo 0x20 = 0x880A", "jyv 0x20 = 0x8782", "jyvb 0x20 = 0x8782", "jyvk 0x20 = 0x8797", "jyx 0x20 = 0x87C0", "jyxf 0x20 = 0x87C0", "jyy 0x20 = 0x868A", "k 0x20 = 0x4E2D", "ka 0x20 = 0x5440", "kad 0x20 = 0x5636", "kadk 0x20 = 0x558F", "kadr 0x20 = 0x5636", "kaf 0x20 = 0x561E", "kafl 0x20 = 0x561E", "kag 0x20 = 0x54D0", "kagg 0x20 = 0x54D0", "kah 0x20 = 0x5440", "kaht 0x20 = 0x5440", "kaj 0x20 = 0x5676", "kajn 0x20 = 0x5676", "kal 0x20 = 0x55B5", "kalg 0x20 = 0x55B5", "kam 0x20 = 0x5482", "kamh 0x20 = 0x5482", "kan 0x20 = 0x5453", "kann 0x20 = 0x5453", "kans 0x20 = 0x558B", "kap 0x20 = 0x5520", "kapl 0x20 = 0x5520", "kaq 0x20 = 0x54CE", "kaqy 0x20 = 0x54CE", "kaqyz 0x20 = 0x5455", "kat 0x20 = 0x54D3", "katq 0x20 = 0x54D3", "kaw 0x20 = 0x54C4", "kawk 0x20 = 0x55D2", "kawkz 0x20 = 0x55EC", "kawy 0x20 = 0x54C4", "kay 0x20 = 0x5686", "kayk 0x20 = 0x5686", "kb 0x20 = 0x554A", "kbc 0x20 = 0x55EB", "kbcc 0x20 = 0x55EB", "kbh 0x20 = 0x53E9", "kbhj 0x20 = 0x55E4", "kbm 0x20 = 0x5484", "kbmh 0x20 = 0x5484", "kbn 0x20 = 0x543C", "kbnn 0x20 = 0x543C", "kbnt 0x20 = 0x6222", "kbs 0x20 = 0x554A", "kbsk 0x20 = 0x554A", "kc 0x20 = 0x5427", "kcb 0x20 = 0x9091", "kcc 0x20 = 0x55D3", "kccc 0x20 = 0x555C", "kccs 0x20 = 0x55D3", "kce 0x20 = 0x55F5", "kcep 0x20 = 0x55F5", "kcg 0x20 = 0x5417", "kcn 0x20 = 0x5427", "kcq 0x20 = 0x542E", "kcqn 0x20 = 0x542E", "kcr 0x20 = 0x54DE", "kcrh 0x20 = 0x54DE", "kct 0x20 = 0x5509", "kctd 0x20 = 0x5509", "kcw 0x20 = 0x5506", "kcwt 0x20 = 0x5506", "kcy 0x20 = 0x53F9", "kd 0x20 = 0x987A", "kdb 0x20 = 0x5443", "kdbn 0x20 = 0x5443", "kdf 0x20 = 0x55B9", "kdff 0x20 = 0x55B9", "kdg 0x20 = 0x5495", "kdgt 0x20 = 0x558A", "kdh 0x20 = 0x560E", "kdha 0x20 = 0x560E", "kdht 0x20 = 0x55C4", "kdhtz 0x20 = 0x5601", "kdj 0x20 = 0x5561", "kdjd 0x20 = 0x5561", "kdjf 0x20 = 0x55B1", "kdl 0x20 = 0x5456", "kdln 0x20 = 0x5456", "kdm 0x20 = 0x987A", "kdmy 0x20 = 0x987A", "kdo 0x20 = 0x54B4", "kdoy 0x20 = 0x54B4", "kdp 0x20 = 0x54D2", "kdpy 0x20 = 0x54D2", "kdu 0x20 = 0x5658", "kdui 0x20 = 0x5639", "kduw 0x20 = 0x5658", "kdw 0x20 = 0x552A", "kdwh 0x20 = 0x552A", "kdwt 0x20 = 0x55EA", "kdx 0x20 = 0x5499", "kdxn 0x20 = 0x5499", "kdy 0x20 = 0x5420", "kdyy 0x20 = 0x5454", "ke 0x20 = 0x5438", "keg 0x20 = 0x5480", "kegg 0x20 = 0x5480", "kel 0x20 = 0x56BC", "kelf 0x20 = 0x56BC", "kep 0x20 = 0x55F3", "kepc 0x20 = 0x55F3", "keq 0x20 = 0x9E43", "keqg 0x20 = 0x9E43", "key 0x20 = 0x5438", "keyy 0x20 = 0x5438", "keyyz 0x20 = 0x5544", "kf 0x20 = 0x53F6", "kfa 0x20 = 0x55B7", "kfam 0x20 = 0x55B7", "kfc 0x20 = 0x5431", "kfcl 0x20 = 0x55D1", "kfcy 0x20 = 0x5431", "kfd 0x20 = 0x5685", "kfdj 0x20 = 0x5685", "kff 0x20 = 0x54C7", "kffg 0x20 = 0x54C7", "kfg 0x20 = 0x5410", "kfh 0x20 = 0x53F6", "kfhw 0x20 = 0x55D4", "kfi 0x20 = 0x5473", "kfiy 0x20 = 0x5473", "kfj 0x20 = 0x5632", "kfje 0x20 = 0x5632", "kfk 0x20 = 0x563B", "kfke 0x20 = 0x562D", "kfkg 0x20 = 0x54AD", "kfkk 0x20 = 0x563B", "kfl 0x20 = 0x9119", "kflb 0x20 = 0x9119", "kfm 0x20 = 0x5583", "kfmf 0x20 = 0x5583", "kfo 0x20 = 0x54E7", "kfoy 0x20 = 0x54E7", "kfp 0x20 = 0x564E", "kfph 0x20 = 0x568F", "kfpi 0x20 = 0x55E6", "kfpu 0x20 = 0x564E", "kfq 0x20 = 0x5452", "kfqn 0x20 = 0x5452", "kft 0x20 = 0x54EE", "kftb 0x20 = 0x561F", "kftbz 0x20 = 0x54EE", "kftj 0x20 = 0x55DC", "kfw 0x20 = 0x544B", "kfwy 0x20 = 0x544B", "kfwyz 0x20 = 0x56AF", "kg 0x20 = 0x5448", "kgb 0x20 = 0x5428", "kgbh 0x20 = 0x90E2", "kgbn 0x20 = 0x5428", "kgd 0x20 = 0x5434", "kgdu 0x20 = 0x5434", "kge 0x20 = 0x54FA", "kgey 0x20 = 0x54FA", "kgf 0x20 = 0x5448", "kgfh 0x20 = 0x5401", "kgh 0x20 = 0x5413", "kghy 0x20 = 0x5413", "kgi 0x20 = 0x5478", "kgig 0x20 = 0x5478", "kgj 0x20 = 0x54FD", "kgjq 0x20 = 0x54FD", "kgk 0x20 = 0x5587", "kgke 0x20 = 0x56D4", "kgkg 0x20 = 0x5514", "kgkh 0x20 = 0x55DD", "kgkj 0x20 = 0x5587", "kgkw 0x20 = 0x55FD", "kgm 0x20 = 0x5567", "kgmj 0x20 = 0x5608", "kgmy 0x20 = 0x5567", "kgn 0x20 = 0x53F7", "kgnb 0x20 = 0x53F7", "kgne 0x20 = 0x9955", "kgo 0x20 = 0x54D1", "kgog 0x20 = 0x54D1", "kgp 0x20 = 0x901E", "kgpd 0x20 = 0x901E", "kgq 0x20 = 0x54A7", "kgqj 0x20 = 0x54A7", "kgqt 0x20 = 0x55F7", "kgt 0x20 = 0x551B", "kgty 0x20 = 0x551B", "kgx 0x20 = 0x54A6", "kgxi 0x20 = 0x55C9", "kgxw 0x20 = 0x54A6", "kh 0x20 = 0x4E2D", "kha 0x20 = 0x8DDD", "khae 0x20 = 0x5671", "khag 0x20 = 0x5618", "khaj 0x20 = 0x8E87", "kham 0x20 = 0x552C", "khan 0x20 = 0x8DDD", "khaq 0x20 = 0x8DF7", "khas 0x20 = 0x8E40", "khaw 0x20 = 0x8E52", "khay 0x20 = 0x8E8F", "khb 0x20 = 0x8E51", "khbc 0x20 = 0x8E51", "khc 0x20 = 0x8E0A", "khce 0x20 = 0x8E0A", "khck 0x20 = 0x8DC6", "khcs 0x20 = 0x8E42", "khd 0x20 = 0x8DE8", "khdc 0x20 = 0x8DCB", "khdf 0x20 = 0x8E0C", "khdfz 0x20 = 0x8E70", "khdg 0x20 = 0x8DD6", "khdn 0x20 = 0x8DE8", "khdw 0x20 = 0x8E76", "khe 0x20 = 0x5543", "khed 0x20 = 0x8E4A", "kheg 0x20 = 0x5543", "khes 0x20 = 0x8E29", "khev 0x20 = 0x8E48", "khey 0x20 = 0x8DBF", "khf 0x20 = 0x8DBA", "khff 0x20 = 0x8DEC", "khfw 0x20 = 0x8DBA", "khg 0x20 = 0x8DF5", "khga 0x20 = 0x8DBC", "khgm 0x20 = 0x8D35", "khgp 0x20 = 0x9057", "khgpz 0x20 = 0x9063", "khgt 0x20 = 0x8DF5", "khh 0x20 = 0x8DBE", "khhc 0x20 = 0x8DDB", "khhg 0x20 = 0x8DBE", "khhj 0x20 = 0x8E14", "khhy 0x20 = 0x5494", "khi 0x20 = 0x8DF3", "khij 0x20 = 0x8E0F", "khiq 0x20 = 0x8DF3", "khj 0x20 = 0x8E22", "khjn 0x20 = 0x8E4B", "khjr 0x20 = 0x8E22", "khjs 0x20 = 0x8E1D", "khk 0x20 = 0x4E2D", "khks 0x20 = 0x8E81", "khl 0x20 = 0x76C5", "khlf 0x20 = 0x76C5", "khlj 0x20 = 0x8E85", "khlk 0x20 = 0x8DCF", "khm 0x20 = 0x8DFA", "khme 0x20 = 0x8E66", "khmg 0x20 = 0x8DDA", "khmj 0x20 = 0x8E39", "khms 0x20 = 0x8DFA", "khn 0x20 = 0x5FE0", "khnd 0x20 = 0x8E1E", "khnn 0x20 = 0x8DFD", "khnu 0x20 = 0x5FE0", "kho 0x20 = 0x8E7C", "khoc 0x20 = 0x8E9E", "khoy 0x20 = 0x8E7C", "khp 0x20 = 0x8E2A", "khph 0x20 = 0x8E7F", "khpi 0x20 = 0x8E2A", "khpx 0x20 = 0x8DCE", "khq 0x20 = 0x8DD1", "khqb 0x20 = 0x8DEA", "khqi 0x20 = 0x8DDE", "khqn 0x20 = 0x8DD1", "khqy 0x20 = 0x8DB5", "khr 0x20 = 0x8DCC", "khrm 0x20 = 0x8E2C", "khrw 0x20 = 0x8DCC", "kht 0x20 = 0x8DEF", "khtd 0x20 = 0x8DC3", "khtf 0x20 = 0x8E35", "khtg 0x20 = 0x9E6D", "khtk 0x20 = 0x8DEF", "khtkz 0x20 = 0x8E1F", "khtl 0x20 = 0x8E6F", "khtm 0x20 = 0x8E9C", "khtp 0x20 = 0x8DF9", "khtq 0x20 = 0x8DE3", "khty 0x20 = 0x8E3D", "khu 0x20 = 0x8DB3", "khua 0x20 = 0x8E49", "khub 0x20 = 0x8E2F", "khuf 0x20 = 0x8E72", "khuh 0x20 = 0x8E44", "khuj 0x20 = 0x8E6D", "khuk 0x20 = 0x8E23", "khuq 0x20 = 0x8DE4", "khv 0x20 = 0x8DDF", "khve 0x20 = 0x8DDF", "khvn 0x20 = 0x8E90", "khvp 0x20 = 0x8E3A", "khw 0x20 = 0x8DB4", "khwb 0x20 = 0x8DC4", "khwbz 0x20 = 0x556E", "khwf 0x20 = 0x8DD7", "khwu 0x20 = 0x8E6C", "khwy 0x20 = 0x8DB4", "khx 0x20 = 0x5634", "khxe 0x20 = 0x5634", "khxf 0x20 = 0x8DF8", "khxn 0x20 = 0x5472", "khy 0x20 = 0x535F", "khya 0x20 = 0x8E41", "khyc 0x20 = 0x8E31", "khye 0x20 = 0x8E09", "khyf 0x20 = 0x8E94", "khyj 0x20 = 0x8DFB", "khyk 0x20 = 0x8E2E", "khyn 0x20 = 0x8E74", "ki 0x20 = 0x5435", "kie 0x20 = 0x54E8", "kieg 0x20 = 0x54E8", "kih 0x20 = 0x5575", "kihc 0x20 = 0x5575", "kim 0x20 = 0x5522", "kimy 0x20 = 0x5522", "kiq 0x20 = 0x54A3", "kiqn 0x20 = 0x54A3", "kit 0x20 = 0x5435", "kitt 0x20 = 0x5435", "kitu 0x20 = 0x55E8", "kj 0x20 = 0x867D", "kjb 0x20 = 0x562C", "kjbc 0x20 = 0x562C", "kjf 0x20 = 0x54E9", "kjfg 0x20 = 0x54E9", "kjh 0x20 = 0x547B", "kjhh 0x20 = 0x547B", "kjj 0x20 = 0x5531", "kjjg 0x20 = 0x5531", "kjm 0x20 = 0x5581", "kjmy 0x20 = 0x5581", "kjn 0x20 = 0x9EFE", "kjnb 0x20 = 0x9EFE", "kjq 0x20 = 0x559D", "kjqn 0x20 = 0x559D", "kju 0x20 = 0x867D", "kk 0x20 = 0x5415", "kkc 0x20 = 0x9A82", "kkcf 0x20 = 0x9A82", "kkd 0x20 = 0x5668", "kkdk 0x20 = 0x5668", "kkdkz 0x20 = 0x56A3", "kkdu 0x20 = 0x54ED", "kkf 0x20 = 0x5415", "kkfb 0x20 = 0x9102", "kkfg 0x20 = 0x9E57", "kkfm 0x20 = 0x989A", "kkh 0x20 = 0x4E32", "kkhk 0x20 = 0x4E32", "kkhn 0x20 = 0x60A3", "kkk 0x20 = 0x54C1", "kkkf 0x20 = 0x54C1", "kkkk 0x20 = 0x53E3", "kkks 0x20 = 0x566A", "kkl 0x20 = 0x9F0D", "kkln 0x20 = 0x9F0D", "kkm 0x20 = 0x5492", "kkmb 0x20 = 0x5492", "kl 0x20 = 0x53E6", "klb 0x20 = 0x53E6", "kld 0x20 = 0x54BD", "kldn 0x20 = 0x55EF", "kldy 0x20 = 0x54BD", "kle 0x20 = 0x559F", "kleg 0x20 = 0x559F", "klf 0x20 = 0x563F", "klfo 0x20 = 0x563F", "klfy 0x20 = 0x556D", "klge 0x20 = 0x5582", "klh 0x20 = 0x5477", "klj 0x20 = 0x522B", "kljh 0x20 = 0x522B", "klk 0x20 = 0x5496", "klkg 0x20 = 0x5496", "kln 0x20 = 0x53FB", "km 0x20 = 0x5458", "kma 0x20 = 0x55E3", "kmak 0x20 = 0x55E3", "kmb 0x20 = 0x90E7", "kmbh 0x20 = 0x90E7", "kmd 0x20 = 0x5598", "kmdj 0x20 = 0x5598", "kme 0x20 = 0x5623", "kmee 0x20 = 0x5623", "kmf 0x20 = 0x5541", "kmfk 0x20 = 0x5541", "kmh 0x20 = 0x540A", "kmhj 0x20 = 0x540A", "kml 0x20 = 0x52CB", "kmln 0x20 = 0x52CB", "kmm 0x20 = 0x5624", "kmmv 0x20 = 0x5624", "kmn 0x20 = 0x53FD", "kmq 0x20 = 0x54D5", "kmqy 0x20 = 0x54D5", "kms 0x20 = 0x54DA", "kmsy 0x20 = 0x54DA", "kmu 0x20 = 0x5458", "kmw 0x20 = 0x5450", "kmwj 0x20 = 0x5250", "kmwu 0x20 = 0x5459", "kmwy 0x20 = 0x5450", "kmy 0x20 = 0x5457", "kn 0x20 = 0x53EB", "kng 0x20 = 0x53FC", "kngf 0x20 = 0x5594", "kngg 0x20 = 0x53FC", "knh 0x20 = 0x53EB", "knhh 0x20 = 0x53EB", "knk 0x20 = 0x567C", "knku 0x20 = 0x567C", "knm 0x20 = 0x5530", "knmj 0x20 = 0x5530", "knt 0x20 = 0x5631", "knty 0x20 = 0x5631", "knx 0x20 = 0x5462", "knxn 0x20 = 0x5462", "kny 0x20 = 0x5423", "kog 0x20 = 0x5657", "kogy 0x20 = 0x5657", "koo 0x20 = 0x5556", "kooy 0x20 = 0x5556", "kov 0x20 = 0x55BD", "kovg 0x20 = 0x55BD", "koy 0x20 = 0x54AA", "kp 0x20 = 0x55A7", "kpe 0x20 = 0x54DD", "kpey 0x20 = 0x54DD", "kpf 0x20 = 0x567B", "kpff 0x20 = 0x567B", "kpg 0x20 = 0x55A7", "kpgg 0x20 = 0x55A7", "kpgh 0x20 = 0x5576", "kpn 0x20 = 0x5627", "kpnm 0x20 = 0x5627", "kps 0x20 = 0x549B", "kpsh 0x20 = 0x549B", "kpt 0x20 = 0x5580", "kpta 0x20 = 0x54A4", "kptk 0x20 = 0x5580", "kpw 0x20 = 0x5693", "kpwi 0x20 = 0x5693", "kq 0x20 = 0x53F2", "kqb 0x20 = 0x5144", "kqd 0x20 = 0x550F", "kqdh 0x20 = 0x550F", "kqg 0x20 = 0x565C", "kqgj 0x20 = 0x565C", "kqi 0x20 = 0x53F2", "kqm 0x20 = 0x5524", "kqmd 0x20 = 0x5524", "kqn 0x20 = 0x5486", "kqng 0x20 = 0x545C", "kqnn 0x20 = 0x5486", "kqq 0x20 = 0x54C6", "kqqy 0x20 = 0x54C6", "kqr 0x20 = 0x543B", "kqrm 0x20 = 0x5555", "kqrn 0x20 = 0x553F", "kqrt 0x20 = 0x543B", "kqw 0x20 = 0x5439", "kqwy 0x20 = 0x5439", "kqy 0x20 = 0x9E23", "kqyg 0x20 = 0x9E23", "kr 0x20 = 0x542C", "kra 0x20 = 0x5523", "kran 0x20 = 0x5523", "krc 0x20 = 0x5471", "krcy 0x20 = 0x5471", "krd 0x20 = 0x55E5", "krdf 0x20 = 0x55E5", "kre 0x20 = 0x54CC", "krey 0x20 = 0x54CC", "krh 0x20 = 0x542C", "krr 0x20 = 0x556A", "krrg 0x20 = 0x556A", "krrh 0x20 = 0x54F3", "krt 0x20 = 0x5564", "krtf 0x20 = 0x5564", "kru 0x20 = 0x5566", "krug 0x20 = 0x5566", "ks 0x20 = 0x5446", "ksf 0x20 = 0x560C", "ksfi 0x20 = 0x560C", "ksg 0x20 = 0x54C2", "ksh 0x20 = 0x53EE", "ksj 0x20 = 0x55B3", "ksjg 0x20 = 0x55B3", "ksk 0x20 = 0x5475", "kskg 0x20 = 0x5475", "kss 0x20 = 0x5549", "kssi 0x20 = 0x5664", "kssy 0x20 = 0x5549", "ksu 0x20 = 0x5446", "kt 0x20 = 0x547C", "kta 0x20 = 0x566C", "ktan 0x20 = 0x5412", "ktaw 0x20 = 0x566C", "ktg 0x20 = 0x553E", "ktgf 0x20 = 0x553E", "kth 0x20 = 0x54B1", "kthd 0x20 = 0x55C5", "kthf 0x20 = 0x548B", "kthg 0x20 = 0x54B1", "kthh 0x20 = 0x5DDD", "ktk 0x20 = 0x54AF", "ktkg 0x20 = 0x54AF", "ktm 0x20 = 0x54CD", "ktmd 0x20 = 0x5662", "ktmk 0x20 = 0x54CD", "ktn 0x20 = 0x5403", "ktnn 0x20 = 0x5403", "kto 0x20 = 0x557E", "ktoy 0x20 = 0x557E", "ktr 0x20 = 0x54E6", "ktrt 0x20 = 0x54E6", "ktu 0x20 = 0x547C", "ktuh 0x20 = 0x547C", "ktuy 0x20 = 0x549A", "ku 0x20 = 0x557C", "kub 0x20 = 0x55CD", "kube 0x20 = 0x55CD", "kud 0x20 = 0x54A9", "kuda 0x20 = 0x55DF", "kudh 0x20 = 0x54A9", "kuh 0x20 = 0x5416", "kuhh 0x20 = 0x5416", "kuj 0x20 = 0x5591", "kujg 0x20 = 0x5591", "kujn 0x20 = 0x566B", "kul 0x20 = 0x564C", "kulj 0x20 = 0x564C", "kum 0x20 = 0x5600", "kumd 0x20 = 0x5600", "kup 0x20 = 0x557C", "kuph 0x20 = 0x557C", "kuq 0x20 = 0x54AC", "kuqy 0x20 = 0x54AC", "kuv 0x20 = 0x553C", "kuvg 0x20 = 0x553C", "kuw 0x20 = 0x55CC", "kuwl 0x20 = 0x55CC", "kv 0x20 = 0x54EA", "kvc 0x20 = 0x5476", "kvcb 0x20 = 0x5527", "kvcy 0x20 = 0x5476", "kve 0x20 = 0x54CF", "kvey 0x20 = 0x54CF", "kvf 0x20 = 0x54EA", "kvfb 0x20 = 0x54EA", "kvh 0x20 = 0x55D6", "kvhc 0x20 = 0x55D6", "kvi 0x20 = 0x5578", "kvij 0x20 = 0x5578", "kvn 0x20 = 0x53E8", "kw 0x20 = 0x53EA", "kwb 0x20 = 0x545B", "kwbn 0x20 = 0x545B", "kwc 0x20 = 0x55E1", "kwcn 0x20 = 0x55E1", "kwf 0x20 = 0x5490", "kwfc 0x20 = 0x54D9", "kwfk 0x20 = 0x5565", "kwfy 0x20 = 0x5490", "kwg 0x20 = 0x54C8", "kwgj 0x20 = 0x55BB", "kwgk 0x20 = 0x54C8", "kwgu 0x20 = 0x5654", "kwn 0x20 = 0x5589", "kwnd 0x20 = 0x5589", "kwq 0x20 = 0x55F2", "kwqq 0x20 = 0x55F2", "kws 0x20 = 0x54BB", "kwsy 0x20 = 0x54BB", "kwu 0x20 = 0x53EA", "kwv 0x20 = 0x5429", "kwvn 0x20 = 0x5429", "kwvt 0x20 = 0x54BF", "kww 0x20 = 0x5511", "kwwf 0x20 = 0x5511", "kwx 0x20 = 0x54D7", "kwxf 0x20 = 0x54D7", "kwy 0x20 = 0x53ED", "kwyc 0x20 = 0x5464", "kwycz 0x20 = 0x5659", "kwyg 0x20 = 0x552F", "kwyn 0x20 = 0x541F", "kwyo 0x20 = 0x564D", "kx 0x20 = 0x54DF", "kxe 0x20 = 0x5599", "kxey 0x20 = 0x5599", "kxh 0x20 = 0x5432", "kxhh 0x20 = 0x5432", "kxl 0x20 = 0x5466", "kxln 0x20 = 0x5466", "kxn 0x20 = 0x53F1", "kxq 0x20 = 0x54DF", "kxqy 0x20 = 0x54DF", "kxx 0x20 = 0x5421", "kxxf 0x20 = 0x54D4", "kxxg 0x20 = 0x549D", "kxxn 0x20 = 0x5421", "kxxr 0x20 = 0x5588", "kxy 0x20 = 0x5406", "ky 0x20 = 0x561B", "kyb 0x20 = 0x54FC", "kybh 0x20 = 0x54FC", "kyc 0x20 = 0x5537", "kyce 0x20 = 0x5537", "kyg 0x20 = 0x5501", "kyj 0x20 = 0x54DC", "kyjh 0x20 = 0x54DC", "kyk 0x20 = 0x56B7", "kyke 0x20 = 0x56B7", "kym 0x20 = 0x542D", "kymn 0x20 = 0x542D", "kyn 0x20 = 0x548F", "kynd 0x20 = 0x5533", "kyni 0x20 = 0x548F", "kynw 0x20 = 0x54B3", "kyp 0x20 = 0x568E", "kype 0x20 = 0x568E", "kys 0x20 = 0x561B", "kyss 0x20 = 0x561B", "kyt 0x20 = 0x55FE", "kytd 0x20 = 0x55FE", "kyv 0x20 = 0x5577", "kyvb 0x20 = 0x5577", "kyw 0x20 = 0x5550", "kywf 0x20 = 0x5550", "l 0x20 = 0x56FD", "laa 0x20 = 0x8F7C", "laag 0x20 = 0x8F7C", "laf 0x20 = 0x7F81", "lafc 0x20 = 0x7F81", "lbd 0x20 = 0x56DD", "lbn 0x20 = 0x8F84", "lbnn 0x20 = 0x8F84", "lc 0x20 = 0x8F7B", "lca 0x20 = 0x8F7B", "lcag 0x20 = 0x8F7B", "lcc 0x20 = 0x8F70", "lccc 0x20 = 0x8F8D", "lccu 0x20 = 0x8F70", "ld 0x20 = 0x56E0", "ldb 0x20 = 0x8F6D", "ldbn 0x20 = 0x8F6D", "ldd 0x20 = 0x56FA", "lde 0x20 = 0x56FF", "lded 0x20 = 0x56FF", "ldf 0x20 = 0x7F5F", "ldg 0x20 = 0x8F71", "ldi 0x20 = 0x56E0", "ldj 0x20 = 0x7F6A", "ldjd 0x20 = 0x7F6A", "ldjn 0x20 = 0x7F68", "ldn 0x20 = 0x6069", "ldnu 0x20 = 0x6069", "lds 0x20 = 0x7578", "ldsk 0x20 = 0x7578", "ldt 0x20 = 0x7574", "ldtf 0x20 = 0x7574", "ldw 0x20 = 0x8F8F", "ldwd 0x20 = 0x8F8F", "ldy 0x20 = 0x754E", "le 0x20 = 0x80C3", "lef 0x20 = 0x80C3", "lf 0x20 = 0x8F69", "lfc 0x20 = 0x7F62", "lfco 0x20 = 0x7F74", "lfcu 0x20 = 0x7F62", "lff 0x20 = 0x7566", "lffg 0x20 = 0x7566", "lfh 0x20 = 0x8F69", "lfhf 0x20 = 0x7F6E", "lfk 0x20 = 0x8F95", "lfke 0x20 = 0x8F95", "lfm 0x20 = 0x7F71", "lfmf 0x20 = 0x7F71", "lfn 0x20 = 0x8F6C", "lfnh 0x20 = 0x56F4", "lfny 0x20 = 0x8F6C", "lfo 0x20 = 0x9ED1", "lfod 0x20 = 0x9ED8", "lfodz 0x20 = 0x9EE9", "lfoe 0x20 = 0x9EEA", "lfof 0x20 = 0x58A8", "lfoi 0x20 = 0x9EE5", "lfoj 0x20 = 0x9EEF", "lfok 0x20 = 0x9EE0", "lfol 0x20 = 0x9EDD", "lfom 0x20 = 0x9EDC", "lfon 0x20 = 0x9ED4", "lfoq 0x20 = 0x9EDF", "lfot 0x20 = 0x9EE2", "lfou 0x20 = 0x9ED1", "lfq 0x20 = 0x56ED", "lfqv 0x20 = 0x56ED", "lft 0x20 = 0x56E2", "lfte 0x20 = 0x56E2", "lftj 0x20 = 0x7F72", "lfu 0x20 = 0x5709", "lfuf 0x20 = 0x5709", "lg 0x20 = 0x8F66", "lgb 0x20 = 0x56E4", "lgbn 0x20 = 0x56E4", "lgc 0x20 = 0x8F7E", "lgcf 0x20 = 0x8F7E", "lge 0x20 = 0x754F", "lged 0x20 = 0x570A", "lgeu 0x20 = 0x754F", "lgey 0x20 = 0x8F85", "lgeyz 0x20 = 0x5703", "lgh 0x20 = 0x7F61", "lghf 0x20 = 0x7F61", "lgi 0x20 = 0x7F58", "lgiu 0x20 = 0x7F58", "lgj 0x20 = 0x7540", "lgjj 0x20 = 0x7540", "lgk 0x20 = 0x8F90", "lgkd 0x20 = 0x5704", "lgkl 0x20 = 0x8F90", "lgm 0x20 = 0x8F86", "lgmw 0x20 = 0x8F86", "lgn 0x20 = 0x8F66", "lgnh 0x20 = 0x8F66", "lgy 0x20 = 0x56FD", "lgyi 0x20 = 0x56FD", "lh 0x20 = 0x56DB", "lhj 0x20 = 0x7F69", "lhjj 0x20 = 0x7F69", "lhn 0x20 = 0x76BF", "lhng 0x20 = 0x56DB", "lhngz 0x20 = 0x76BF", "lhngzz 0x20 = 0x56D7", "lhnh 0x20 = 0x7532", "lhnt 0x20 = 0x8F73", "lj 0x20 = 0x8F8A", "ljx 0x20 = 0x8F8A", "ljxx 0x20 = 0x8F8A", "lk 0x20 = 0x52A0", "lkb 0x20 = 0x8F91", "lkbg 0x20 = 0x8F91", "lkc 0x20 = 0x9A7E", "lkcf 0x20 = 0x9A7E", "lkd 0x20 = 0x56DE", "lkg 0x20 = 0x52A0", "lkm 0x20 = 0x8D3A", "lkmi 0x20 = 0x5706", "lkmu 0x20 = 0x8D3A", "lkp 0x20 = 0x8FE6", "lkpd 0x20 = 0x8FE6", "lks 0x20 = 0x67B6", "lksk 0x20 = 0x54FF", "lksu 0x20 = 0x67B6", "lkw 0x20 = 0x8F75", "lkwy 0x20 = 0x8F75", "lky 0x20 = 0x8888", "lkye 0x20 = 0x8888", "ll 0x20 = 0x7537", "llb 0x20 = 0x7537", "llg 0x20 = 0x571C", "llge 0x20 = 0x571C", "lll 0x20 = 0x7530", "llll 0x20 = 0x7530", "llln 0x20 = 0x52F0", "llv 0x20 = 0x5B32", "llvl 0x20 = 0x5B32", "lm 0x20 = 0x8F74", "lmg 0x20 = 0x8F74", "lmu 0x20 = 0x8F8B", "lmun 0x20 = 0x8F8B", "ln 0x20 = 0x601D", "lna 0x20 = 0x8F97", "lnae 0x20 = 0x8F97", "lnn 0x20 = 0x8F67", "lnu 0x20 = 0x601D", "lnw 0x20 = 0x7F79", "lnwy 0x20 = 0x7F79", "loq 0x20 = 0x8F9A", "loqh 0x20 = 0x8F9A", "lp 0x20 = 0x8FB9", "lpdk 0x20 = 0x8F96", "lpk 0x20 = 0x8FDE", "lpq 0x20 = 0x7579", "lpqb 0x20 = 0x7579", "lpv 0x20 = 0x8FB9", "lq 0x20 = 0x7F57", "lqi 0x20 = 0x8F79", "lqiy 0x20 = 0x8F79", "lqj 0x20 = 0x8700", "lqju 0x20 = 0x8700", "lqp 0x20 = 0x903B", "lqpi 0x20 = 0x903B", "lqr 0x20 = 0x56EB", "lqre 0x20 = 0x56EB", "lqu 0x20 = 0x7F57", "lqw 0x20 = 0x8F6F", "lqwy 0x20 = 0x8F6F", "lqy 0x20 = 0x9E2D", "lqyg 0x20 = 0x9E2D", "lr 0x20 = 0x65A9", "lrc 0x20 = 0x7548", "lrcy 0x20 = 0x7548", "lrf 0x20 = 0x5811", "lrff 0x20 = 0x5811", "lrh 0x20 = 0x65A9", "lrj 0x20 = 0x6682", "lrjf 0x20 = 0x6682", "lrq 0x20 = 0x933E", "lrqf 0x20 = 0x933E", "lrs 0x20 = 0x6920", "lrsu 0x20 = 0x6920", "lrw 0x20 = 0x8F76", "lrwy 0x20 = 0x8F76", "ls 0x20 = 0x56F0", "lsh 0x20 = 0x753A", "lsi 0x20 = 0x56F0", "lsk 0x20 = 0x8F72", "lskg 0x20 = 0x8F72", "lt 0x20 = 0x529B", "ltd 0x20 = 0x8F7F", "ltdj 0x20 = 0x8F7F", "ltk 0x20 = 0x7565", "ltkg 0x20 = 0x7565", "ltkgz 0x20 = 0x8F82", "ltn 0x20 = 0x529B", "ltu 0x20 = 0x56FE", "ltuh 0x20 = 0x8F77", "ltui 0x20 = 0x56FE", "lty 0x20 = 0x754B", "lu 0x20 = 0x8F83", "lud 0x20 = 0x5708", "ludb 0x20 = 0x5708", "luf 0x20 = 0x7554", "lufh 0x20 = 0x7554", "luj 0x20 = 0x7583", "lujf 0x20 = 0x7583", "lul 0x20 = 0x7F7E", "lulj 0x20 = 0x7F7E", "luq 0x20 = 0x8F83", "luqy 0x20 = 0x8F83", "lv 0x20 = 0x8F68", "lvd 0x20 = 0x56E1", "lvk 0x20 = 0x8F7A", "lvkg 0x20 = 0x8F7A", "lvl 0x20 = 0x8F8E", "lvlg 0x20 = 0x8F8E", "lvn 0x20 = 0x8F68", "lvy 0x20 = 0x8F6B", "lvyy 0x20 = 0x8F6B", "lw 0x20 = 0x529E", "lwe 0x20 = 0x8F78", "lwet 0x20 = 0x8F78", "lwetz 0x20 = 0x755B", "lwg 0x20 = 0x8F93", "lwgg 0x20 = 0x8F81", "lwgj 0x20 = 0x8F93", "lwi 0x20 = 0x529E", "lwiz 0x20 = 0x56DA", "lwj 0x20 = 0x754C", "lwjj 0x20 = 0x754C", "lwx 0x20 = 0x8F6E", "lwxn 0x20 = 0x8F6E", "lwxv 0x20 = 0x56F5", "lwy 0x20 = 0x56F9", "lwyc 0x20 = 0x56F9", "lx 0x20 = 0x7D2F", "lxi 0x20 = 0x7D2F", "lxiu 0x20 = 0x7D2F", "lxx 0x20 = 0x6BD7", "lxxn 0x20 = 0x6BD7", "ly 0x20 = 0x7F5A", "lyc 0x20 = 0x8F99", "lyct 0x20 = 0x8F99", "lyf 0x20 = 0x8A48", "lyj 0x20 = 0x7F5A", "lyjj 0x20 = 0x7F5A", "lyn 0x20 = 0x8F98", "lynx 0x20 = 0x8F98", "ma 0x20 = 0x66F2", "mad 0x20 = 0x66F2", "madt 0x20 = 0x8D3C", "maf 0x20 = 0x5D4C", "mafw 0x20 = 0x5D4C", "mah 0x20 = 0x5C88", "maht 0x20 = 0x5C88", "mai 0x20 = 0x5CBD", "maiu 0x20 = 0x5CBD", "map 0x20 = 0x5D02", "mapl 0x20 = 0x5D02", "maps 0x20 = 0x5D58", "maq 0x20 = 0x5C96", "maqy 0x20 = 0x5C96", "maw 0x20 = 0x5178", "mawu 0x20 = 0x5178", "mb 0x20 = 0x90AE", "mbh 0x20 = 0x90AE", "mc 0x20 = 0x51E4", "mcb 0x20 = 0x5C9C", "mcf 0x20 = 0x5CC4", "mcfh 0x20 = 0x5CC4", "mci 0x20 = 0x51E4", "mck 0x20 = 0x8D3B", "mckg 0x20 = 0x8D3B", "mcu 0x20 = 0x6BB3", "mcw 0x20 = 0x5CFB", "mcwt 0x20 = 0x5CFB", "md 0x20 = 0x592E", "mde 0x20 = 0x8D3F", "mdeg 0x20 = 0x8D3F", "mdf 0x20 = 0x5CA9", "mdfe 0x20 = 0x8D48", "mdff 0x20 = 0x5D16", "mdfj 0x20 = 0x5CB8", "mdg 0x20 = 0x5CB5", "mdgt 0x20 = 0x5D34", "mdi 0x20 = 0x592E", "mdj 0x20 = 0x5D26", "mdjn 0x20 = 0x5D26", "mdl 0x20 = 0x76CE", "mdlf 0x20 = 0x76CE", "mdm 0x20 = 0x9044", "mdmm 0x20 = 0x989B", "mdmp 0x20 = 0x9044", "mdo 0x20 = 0x70AD", "mdou 0x20 = 0x70AD", "mdq 0x20 = 0x9E2F", "mdqg 0x20 = 0x9E2F", "mds 0x20 = 0x5D0E", "mdsk 0x20 = 0x5D0E", "me 0x20 = 0x9AA8", "med 0x20 = 0x9AD3", "medg 0x20 = 0x9AB7", "medp 0x20 = 0x9AD3", "mee 0x20 = 0x5D29", "meef 0x20 = 0x5D29", "mef 0x20 = 0x9AA8", "mefz 0x20 = 0x80C4", "mej 0x20 = 0x9AC1", "mejs 0x20 = 0x9AC1", "mel 0x20 = 0x9AD1", "melj 0x20 = 0x9AD1", "mem 0x20 = 0x9AB0", "memc 0x20 = 0x9AB0", "meo 0x20 = 0x9AC5", "meov 0x20 = 0x9AC5", "mep 0x20 = 0x9AC2", "mepk 0x20 = 0x9AC2", "mepq 0x20 = 0x9ACB", "mepw 0x20 = 0x9ACC", "meq 0x20 = 0x9E58", "meqg 0x20 = 0x9E58", "meqy 0x20 = 0x9AB6", "mer 0x20 = 0x9ABA", "merf 0x20 = 0x9AC0", "merk 0x20 = 0x9ABA", "met 0x20 = 0x9ABC", "metk 0x20 = 0x9ABC", "mew 0x20 = 0x9AB1", "mewj 0x20 = 0x9AB1", "mey 0x20 = 0x9AB8", "meyu 0x20 = 0x5C8C", "meyw 0x20 = 0x9AB8", "mf 0x20 = 0x8D22", "mfc 0x20 = 0x5C90", "mfcy 0x20 = 0x5C90", "mfd 0x20 = 0x5189", "mff 0x20 = 0x5CD9", "mffy 0x20 = 0x5CD9", "mfh 0x20 = 0x5DC5", "mfhm 0x20 = 0x5DC5", "mfi 0x20 = 0x8D47", "mfiy 0x20 = 0x8D47", "mfk 0x20 = 0x5468", "mfkd 0x20 = 0x5468", "mfky 0x20 = 0x96D5", "mfn 0x20 = 0x8D4E", "mfnd 0x20 = 0x8D4E", "mft 0x20 = 0x8D22", "mftj 0x20 = 0x8D4C", "mftt 0x20 = 0x8D22", "mg 0x20 = 0x540C", "mga 0x20 = 0x8D4B", "mgah 0x20 = 0x8D4B", "mgahz 0x20 = 0x5C8D", "mge 0x20 = 0x8D59", "mgef 0x20 = 0x8D59", "mgk 0x20 = 0x540C", "mgkd 0x20 = 0x540C", "mgn 0x20 = 0x5C7F", "mgng 0x20 = 0x5C7F", "mgo 0x20 = 0x5D03", "mgoy 0x20 = 0x5D03", "mgq 0x20 = 0x5919", "mgqi 0x20 = 0x5919", "mgt 0x20 = 0x8D31", "mgu 0x20 = 0x5CE1", "mguw 0x20 = 0x5CE1", "mh 0x20 = 0x7531", "mhd 0x20 = 0x5E31", "mhdf 0x20 = 0x5E31", "mhf 0x20 = 0x5E0F", "mhfh 0x20 = 0x5E0F", "mhg 0x20 = 0x5E45", "mhgl 0x20 = 0x5E45", "mhgm 0x20 = 0x5E3B", "mhhc 0x20 = 0x5E14", "mhhk 0x20 = 0x5E16", "mhhm 0x20 = 0x5E27", "mhj 0x20 = 0x5E3D", "mhjc 0x20 = 0x5E54", "mhjh 0x20 = 0x5E3D", "mhjq 0x20 = 0x5E4C", "mhk 0x20 = 0x8D34", "mhkg 0x20 = 0x8D34", "mhkw 0x20 = 0x5E1C", "mhkz 0x20 = 0x5DFE", "mhl 0x20 = 0x5E3C", "mhly 0x20 = 0x5E3C", "mhm 0x20 = 0x5E06", "mhmy 0x20 = 0x5E06", "mhn 0x20 = 0x5182", "mhnf 0x20 = 0x5E44", "mhng 0x20 = 0x7531", "mhny 0x20 = 0x8D1D", "mho 0x20 = 0x5E5E", "mhoy 0x20 = 0x5E5E", "mhr 0x20 = 0x5E15", "mhrg 0x20 = 0x5E15", "mhrw 0x20 = 0x5E19", "mht 0x20 = 0x5E10", "mhtl 0x20 = 0x5E61", "mhty 0x20 = 0x5E10", "mhu 0x20 = 0x5E62", "mhuf 0x20 = 0x5E62", "mhuj 0x20 = 0x5E5B", "mhw 0x20 = 0x5E37", "mhwy 0x20 = 0x5E37", "mi 0x20 = 0x5CED", "mie 0x20 = 0x5CED", "mieg 0x20 = 0x5CED", "miw 0x20 = 0x5D74", "miwe 0x20 = 0x5D74", "mj 0x20 = 0x5219", "mjh 0x20 = 0x5219", "mjq 0x20 = 0x8D50", "mjqr 0x20 = 0x8D50", "mjv 0x20 = 0x5CBF", "mjvf 0x20 = 0x5CBF", "mkp 0x20 = 0x8FE5", "mkpd 0x20 = 0x8FE5", "mkq 0x20 = 0x8D36", "mkqn 0x20 = 0x8D36", "ml 0x20 = 0x5D2D", "mld 0x20 = 0x5D2E", "mldf 0x20 = 0x5D2E", "mlh 0x20 = 0x5CAC", "mln 0x20 = 0x5D3D", "mlnu 0x20 = 0x5D3D", "mlr 0x20 = 0x5D2D", "mlrj 0x20 = 0x5D2D", "mm 0x20 = 0x518C", "mmg 0x20 = 0x5CAB", "mmgd 0x20 = 0x518C", "mmgdz 0x20 = 0x51F9", "mmgj 0x20 = 0x5220", "mmgk 0x20 = 0x5CD2", "mmgq 0x20 = 0x5155", "mmm 0x20 = 0x5C71", "mmmm 0x20 = 0x5C71", "mmq 0x20 = 0x5C97", "mmqn 0x20 = 0x5C98", "mmqu 0x20 = 0x5C9A", "mmquz 0x20 = 0x5C97", "mmr 0x20 = 0x7F42", "mmrm 0x20 = 0x7F42", "mmv 0x20 = 0x5A74", "mmvf 0x20 = 0x5A74", "mmvg 0x20 = 0x9E66", "mn 0x20 = 0x5C82", "mna 0x20 = 0x5CB7", "mnan 0x20 = 0x5CB7", "mnb 0x20 = 0x5C82", "mnbm 0x20 = 0x5D1B", "mnh 0x20 = 0x5D4B", "mnhg 0x20 = 0x5D4B", "mnj 0x20 = 0x5240", "mnjh 0x20 = 0x5240", "mnm 0x20 = 0x51EF", "mnmn 0x20 = 0x51EF", "mnmq 0x20 = 0x89CA", "mnn 0x20 = 0x5C7A", "mny 0x20 = 0x8D46", "mnyu 0x20 = 0x8D46", "moo 0x20 = 0x8D55", "mooy 0x20 = 0x8D55", "moq 0x20 = 0x5D99", "moqh 0x20 = 0x5D99", "mov 0x20 = 0x5D5D", "movg 0x20 = 0x5D5D", "mp 0x20 = 0x8FEA", "mpd 0x20 = 0x8FEA", "mpf 0x20 = 0x5D07", "mpfi 0x20 = 0x5D07", "mpg 0x20 = 0x8D2E", "mpgg 0x20 = 0x8D2E", "mpw 0x20 = 0x5D06", "mpwa 0x20 = 0x5D06", "mq 0x20 = 0x98CE", "mqb 0x20 = 0x89C1", "mqc 0x20 = 0x8D2D", "mqcy 0x20 = 0x8D2D", "mqd 0x20 = 0x8D61", "mqde 0x20 = 0x5D24", "mqdy 0x20 = 0x8D61", "mqh 0x20 = 0x98D3", "mqhw 0x20 = 0x98D3", "mqi 0x20 = 0x98CE", "mqiz 0x20 = 0x5188", "mqj 0x20 = 0x521A", "mqjg 0x20 = 0x5CCB", "mqjh 0x20 = 0x521A", "mqjhz 0x20 = 0x523F", "mqk 0x20 = 0x5CA3", "mqkg 0x20 = 0x5CA3", "mqo 0x20 = 0x98DA", "mqoo 0x20 = 0x98DA", "mqq 0x20 = 0x7F51", "mqqi 0x20 = 0x7F51", "mqqn 0x20 = 0x98D1", "mqt 0x20 = 0x5CC1", "mqtb 0x20 = 0x5CC1", "mqu 0x20 = 0x5C81", "mqv 0x20 = 0x5CE5", "mqvc 0x20 = 0x98D5", "mqvh 0x20 = 0x5CE5", "mr 0x20 = 0x8D29", "mrc 0x20 = 0x8D29", "mrcy 0x20 = 0x8D29", "mrg 0x20 = 0x51F0", "mrgd 0x20 = 0x51F0", "mrq 0x20 = 0x5D6C", "mrqc 0x20 = 0x5D6C", "ms 0x20 = 0x6735", "msj 0x20 = 0x5241", "msjh 0x20 = 0x5241", "msk 0x20 = 0x5CA2", "mskf 0x20 = 0x5CA2", "msu 0x20 = 0x6735", "msv 0x20 = 0x5D3E", "msvg 0x20 = 0x5D3E", "msw 0x20 = 0x5D27", "mswc 0x20 = 0x5D27", "mt 0x20 = 0x51E0", "mta 0x20 = 0x8D26", "mtay 0x20 = 0x8D26", "mtd 0x20 = 0x5CF0", "mtdh 0x20 = 0x5CF0", "mtdj 0x20 = 0x5CE4", "mtk 0x20 = 0x8D42", "mtkg 0x20 = 0x8D42", "mtn 0x20 = 0x51E0", "mtnn 0x20 = 0x5C79", "mtp 0x20 = 0x8D2C", "mtpy 0x20 = 0x8D2C", "mtr 0x20 = 0x5CE8", "mtrt 0x20 = 0x5CE8", "mtu 0x20 = 0x5D4A", "mtuq 0x20 = 0x5D4A", "mtv 0x20 = 0x5DCD", "mtvc 0x20 = 0x5DCD", "mty 0x20 = 0x8D25", "mu 0x20 = 0x8D60", "mud 0x20 = 0x5D6F", "muda 0x20 = 0x5D6F", "muj 0x20 = 0x5D82", "mujh 0x20 = 0x5D82", "muk 0x20 = 0x8D54", "mukg 0x20 = 0x8D54", "mul 0x20 = 0x8D60", "mulj 0x20 = 0x8D60", "muv 0x20 = 0x8D5A", "muvo 0x20 = 0x8D5A", "mux 0x20 = 0x5D6B", "muxx 0x20 = 0x5D6B", "muy 0x20 = 0x7F54", "muyn 0x20 = 0x7F54", "mw 0x20 = 0x5185", "mweg 0x20 = 0x9E68", "mwf 0x20 = 0x8D4A", "mwfi 0x20 = 0x8D4A", "mwg 0x20 = 0x5D5B", "mwgj 0x20 = 0x5D5B", "mwgu 0x20 = 0x5D9D", "mwi 0x20 = 0x5185", "mww 0x20 = 0x8089", "mwwi 0x20 = 0x8089", "mwwk 0x20 = 0x5CEA", "mwy 0x20 = 0x5D14", "mwyc 0x20 = 0x5CAD", "mwyf 0x20 = 0x5D14", "mwyn 0x20 = 0x5C91", "mxt 0x20 = 0x5DB7", "mxth 0x20 = 0x5DB7", "my 0x20 = 0x51E1", "myb 0x20 = 0x5D1E", "mybg 0x20 = 0x5D1E", "myd 0x20 = 0x4E39", "mye 0x20 = 0x5F64", "myet 0x20 = 0x5F64", "myf 0x20 = 0x8D43", "myfg 0x20 = 0x8D43", "myi 0x20 = 0x51E1", "mym 0x20 = 0x5D69", "mymk 0x20 = 0x5D69", "myn 0x20 = 0x8D45", "mynw 0x20 = 0x8D45", "n 0x20 = 0x6C11", "na 0x20 = 0x6C11", "nae 0x20 = 0x5C55", "naei 0x20 = 0x5C55", "nag 0x20 = 0x60EC", "nagw 0x20 = 0x60EC", "naj 0x20 = 0x5F02", "najg 0x20 = 0x60DC", "najz 0x20 = 0x7FBF", "nal 0x20 = 0x61F5", "nalh 0x20 = 0x61F5", "nan 0x20 = 0x5C49", "nanv 0x20 = 0x5C49", "naq 0x20 = 0x6004", "naqy 0x20 = 0x6004", "nat 0x20 = 0x61C2", "natf 0x20 = 0x61C2", "natn 0x20 = 0x610D", "nav 0x20 = 0x6C11", "naw 0x20 = 0x6BBF", "nawc 0x20 = 0x6BBF", "nawe 0x20 = 0x81C0", "nay 0x20 = 0x614C", "nayq 0x20 = 0x614C", "nb 0x20 = 0x6562", "nbb 0x20 = 0x5B71", "nbbb 0x20 = 0x5B71", "nbc 0x20 = 0x6151", "nbcc 0x20 = 0x6151", "nbm 0x20 = 0x5C48", "nbmk 0x20 = 0x5C48", "nbs 0x20 = 0x5C59", "nbsk 0x20 = 0x5C59", "nbt 0x20 = 0x6562", "nbtn 0x20 = 0x61A8", "nbty 0x20 = 0x6562", "nc 0x20 = 0x602A", "ncd 0x20 = 0x60E8", "ncde 0x20 = 0x60E8", "ncf 0x20 = 0x602A", "ncfg 0x20 = 0x602A", "ncfh 0x20 = 0x603F", "nck 0x20 = 0x6021", "nckg 0x20 = 0x6021", "ncw 0x20 = 0x609B", "ncwt 0x20 = 0x609B", "nd 0x20 = 0x5C45", "nda 0x20 = 0x60F0", "ndae 0x20 = 0x60F0", "ndd 0x20 = 0x5C45", "nddy 0x20 = 0x6079", "ndg 0x20 = 0x6019", "ndgn 0x20 = 0x61BE", "ndj 0x20 = 0x5267", "ndjd 0x20 = 0x60B1", "ndjh 0x20 = 0x5267", "ndm 0x20 = 0x6016", "ndmh 0x20 = 0x6016", "ndn 0x20 = 0x5FE7", "ndnn 0x20 = 0x5FE7", "ndo 0x20 = 0x6062", "ndoy 0x20 = 0x6062", "nf 0x20 = 0x5BFC", "nfa 0x20 = 0x6124", "nfam 0x20 = 0x6124", "nfc 0x20 = 0x5C42", "nfci 0x20 = 0x5C42", "nfcl 0x20 = 0x6078", "nfcy 0x20 = 0x602F", "nfcyz 0x20 = 0x5FEE", "nfd 0x20 = 0x4E11", "nfdj 0x20 = 0x61E6", "nff 0x20 = 0x6043", "nffy 0x20 = 0x6043", "nfh 0x20 = 0x614E", "nfhw 0x20 = 0x614E", "nfi 0x20 = 0x6170", "nfif 0x20 = 0x5C09", "nfin 0x20 = 0x6170", "nfio 0x20 = 0x71A8", "nfp 0x20 = 0x8FC5", "nfpb 0x20 = 0x6096", "nfpk 0x20 = 0x8FC5", "nfq 0x20 = 0x6003", "nfqn 0x20 = 0x6003", "nft 0x20 = 0x5C60", "nftj 0x20 = 0x5C60", "nfu 0x20 = 0x5BFC", "nfuf 0x20 = 0x60BB", "nfy 0x20 = 0x5FD6", "ng 0x20 = 0x6000", "ngc 0x20 = 0x5C4B", "ngcf 0x20 = 0x5C4B", "ngd 0x20 = 0x5201", "nge 0x20 = 0x60C5", "ngeg 0x20 = 0x60C5", "ngh 0x20 = 0x6014", "nghg 0x20 = 0x6014", "ngi 0x20 = 0x6000", "ngiy 0x20 = 0x6000", "ngj 0x20 = 0x6052", "ngjg 0x20 = 0x6052", "ngk 0x20 = 0x53F8", "ngkd 0x20 = 0x53F8", "ngkg 0x20 = 0x609F", "ngki 0x20 = 0x609A", "ngkm 0x20 = 0x61D2", "ngu 0x20 = 0x6026", "nguh 0x20 = 0x6026", "ngx 0x20 = 0x612B", "ngxi 0x20 = 0x612B", "nh 0x20 = 0x6536", "nhd 0x20 = 0x7709", "nhda 0x20 = 0x6215", "nhdd 0x20 = 0x5958", "nhde 0x20 = 0x723F", "nhe 0x20 = 0x80E5", "nhef 0x20 = 0x80E5", "nhf 0x20 = 0x9050", "nhfp 0x20 = 0x9050", "nhi 0x20 = 0x758B", "nhj 0x20 = 0x86CB", "nhjh 0x20 = 0x60BC", "nhju 0x20 = 0x86CB", "nhkm 0x20 = 0x6126", "nhq 0x20 = 0x9E5B", "nhqg 0x20 = 0x9E5B", "nht 0x20 = 0x6536", "nhty 0x20 = 0x6536", "nhw 0x20 = 0x60E7", "nhwy 0x20 = 0x60E7", "nhy 0x20 = 0x758F", "nhyq 0x20 = 0x758F", "ni 0x20 = 0x6084", "nie 0x20 = 0x6084", "nied 0x20 = 0x5C51", "nieg 0x20 = 0x6084", "nii 0x20 = 0x5C3F", "nim 0x20 = 0x60DD", "nimk 0x20 = 0x60DD", "niq 0x20 = 0x604D", "niqn 0x20 = 0x604D", "nir 0x20 = 0x7280", "nirh 0x20 = 0x7280", "nj 0x20 = 0x6162", "njc 0x20 = 0x60AD", "njcf 0x20 = 0x60AD", "njf 0x20 = 0x608D", "njfg 0x20 = 0x609D", "njfh 0x20 = 0x608D", "njg 0x20 = 0x601B", "njgg 0x20 = 0x601B", "njl 0x20 = 0x6162", "njlc 0x20 = 0x6162", "njlg 0x20 = 0x6120", "njq 0x20 = 0x60D5", "njqr 0x20 = 0x60D5", "njt 0x20 = 0x60FA", "njtg 0x20 = 0x60FA", "njy 0x20 = 0x61AC", "njyi 0x20 = 0x61AC", "nk 0x20 = 0x907F", "nkc 0x20 = 0x6092", "nkcn 0x20 = 0x6092", "nkh 0x20 = 0x5FE1", "nkhh 0x20 = 0x5FE1", "nkk 0x20 = 0x6115", "nkkn 0x20 = 0x6115", "nku 0x20 = 0x8F9F", "nkue 0x20 = 0x81C2", "nkuez 0x20 = 0x895E", "nkuf 0x20 = 0x58C1", "nkuh 0x20 = 0x8F9F", "nkun 0x20 = 0x7513", "nkup 0x20 = 0x907F", "nkuq 0x20 = 0x943E", "nkur 0x20 = 0x64D8", "nkus 0x20 = 0x6A97", "nkuv 0x20 = 0x5288", "nkuvz 0x20 = 0x5B16", "nkuy 0x20 = 0x8B6C", "nkuyz 0x20 = 0x74A7", "nl 0x20 = 0x60ED", "nla 0x20 = 0x7FFC", "nlaw 0x20 = 0x7FFC", "nlr 0x20 = 0x60ED", "nlrh 0x20 = 0x60ED", "nls 0x20 = 0x6083", "nlsy 0x20 = 0x6083", "nly 0x20 = 0x6123", "nlyn 0x20 = 0x6123", "nm 0x20 = 0x5C4A", "nmd 0x20 = 0x5C4A", "nmdj 0x20 = 0x60F4", "nmdy 0x20 = 0x600F", "nmf 0x20 = 0x60C6", "nmfk 0x20 = 0x60C6", "nmg 0x20 = 0x606B", "nmgk 0x20 = 0x606B", "nmh 0x20 = 0x5237", "nmhj 0x20 = 0x5237", "nmj 0x20 = 0x607B", "nmjh 0x20 = 0x607B", "nmn 0x20 = 0x607A", "nmnn 0x20 = 0x607A", "nmu 0x20 = 0x60D8", "nmun 0x20 = 0x60D8", "nn 0x20 = 0x5FC6", "nna 0x20 = 0x5DFD", "nnaw 0x20 = 0x5DFD", "nnf 0x20 = 0x5FF8", "nnfg 0x20 = 0x5FF8", "nng 0x20 = 0x5DF1", "nngn 0x20 = 0x5DF1", "nngnz 0x20 = 0x5DF3", "nngt 0x20 = 0x5C38", "nnh 0x20 = 0x4E66", "nnhy 0x20 = 0x4E66", "nnk 0x20 = 0x5C40", "nnkd 0x20 = 0x5C40", "nnl 0x20 = 0x4E59", "nnll 0x20 = 0x4E59", "nnn 0x20 = 0x5FC6", "nnnn 0x20 = 0x5DF2", "nnu 0x20 = 0x5FCC", "nnv 0x20 = 0x4E5C", "nnw 0x20 = 0x5FEB", "nnwy 0x20 = 0x5FEB", "nnx 0x20 = 0x6029", "nnxn 0x20 = 0x6029", "nny 0x20 = 0x7FBD", "nnyg 0x20 = 0x7FBD", "no 0x20 = 0x5C61", "noi 0x20 = 0x5C4E", "nov 0x20 = 0x5C61", "novd 0x20 = 0x5C61", "np 0x20 = 0x5FF1", "npl 0x20 = 0x607D", "nplh 0x20 = 0x607D", "npq 0x20 = 0x5FF1", "npqb 0x20 = 0x60CB", "npqn 0x20 = 0x5FF1", "nq 0x20 = 0x61C8", "nqe 0x20 = 0x61C8", "nqeh 0x20 = 0x61C8", "nqj 0x20 = 0x6042", "nqjg 0x20 = 0x6042", "nqr 0x20 = 0x60DA", "nqrn 0x20 = 0x60DA", "nr 0x20 = 0x6015", "nrg 0x20 = 0x6015", "nrgg 0x20 = 0x60F6", "nrh 0x20 = 0x5FFB", "nrn 0x20 = 0x5FFE", "nrnn 0x20 = 0x5FFE", "nrq 0x20 = 0x6127", "nrqc 0x20 = 0x6127", "nss 0x20 = 0x61B7", "nssh 0x20 = 0x61B7", "nsy 0x20 = 0x6035", "nsyy 0x20 = 0x6035", "nt 0x20 = 0x5FC5", "nta 0x20 = 0x6005", "ntay 0x20 = 0x6005", "ntb 0x20 = 0x60B8", "ntbg 0x20 = 0x60B8", "ntc 0x20 = 0x53D1", "ntcy 0x20 = 0x53D1", "ntd 0x20 = 0x606C", "ntdg 0x20 = 0x606C", "nte 0x20 = 0x5FC5", "ntf 0x20 = 0x5C3E", "ntfc 0x20 = 0x5C50", "ntfh 0x20 = 0x5FCF", "ntfhz 0x20 = 0x5FE4", "ntfn 0x20 = 0x5C3E", "ntg 0x20 = 0x6027", "ntgg 0x20 = 0x6027", "nth 0x20 = 0x600D", "nthf 0x20 = 0x600D", "nthh 0x20 = 0x5C63", "ntj 0x20 = 0x8671", "ntji 0x20 = 0x8671", "ntjt 0x20 = 0x610E", "ntk 0x20 = 0x5C5E", "ntkg 0x20 = 0x606A", "ntky 0x20 = 0x5C5E", "ntl 0x20 = 0x6064", "ntlg 0x20 = 0x6064", "ntm 0x20 = 0x61CA", "ntmd 0x20 = 0x61CA", "nto 0x20 = 0x6100", "ntov 0x20 = 0x5C66", "ntoy 0x20 = 0x6100", "ntt 0x20 = 0x5C65", "nttt 0x20 = 0x5C65", "ntx 0x20 = 0x6094", "ntxu 0x20 = 0x6094", "nty 0x20 = 0x6539", "nu 0x20 = 0x4E60", "nua 0x20 = 0x5C4F", "nuak 0x20 = 0x5C4F", "nud 0x20 = 0x4E60", "nudd 0x20 = 0x7FBC", "nudu 0x20 = 0x4E70", "nuf 0x20 = 0x7FCC", "nui 0x20 = 0x98DE", "nuj 0x20 = 0x60EE", "nujf 0x20 = 0x61A7", "nujfz 0x20 = 0x60EE", "nuk 0x20 = 0x60A6", "nukq 0x20 = 0x60A6", "nul 0x20 = 0x618E", "nulj 0x20 = 0x618E", "nuv 0x20 = 0x614A", "nuvo 0x20 = 0x614A", "nux 0x20 = 0x608C", "nuxt 0x20 = 0x608C", "nuy 0x20 = 0x60AF", "nuyy 0x20 = 0x60AF", "nv 0x20 = 0x6068", "nvc 0x20 = 0x6168", "nvcq 0x20 = 0x6168", "nve 0x20 = 0x6068", "nvey 0x20 = 0x6068", "nvk 0x20 = 0x600A", "nvkg 0x20 = 0x600A", "nvn 0x20 = 0x5FC9", "nvv 0x20 = 0x5C3B", "nw 0x20 = 0x6109", "nwb 0x20 = 0x6006", "nwbn 0x20 = 0x6006", "nwc 0x20 = 0x5FEA", "nwcy 0x20 = 0x5FEA", "nwe 0x20 = 0x622E", "nwea 0x20 = 0x622E", "nwg 0x20 = 0x6109", "nwgj 0x20 = 0x6109", "nwgk 0x20 = 0x6070", "nwy 0x20 = 0x60DF", "nwya 0x20 = 0x6233", "nwyc 0x20 = 0x601C", "nwyf 0x20 = 0x7FDF", "nwyg 0x20 = 0x60DF", "nwyo 0x20 = 0x6194", "nx 0x20 = 0x5C3C", "nxf 0x20 = 0x60EF", "nxfm 0x20 = 0x60EF", "nxj 0x20 = 0x602B", "nxjh 0x20 = 0x602B", "nxv 0x20 = 0x5C3C", "nxx 0x20 = 0x5C41", "nxxv 0x20 = 0x5C41", "ny 0x20 = 0x5FC3", "nyb 0x20 = 0x607C", "nybh 0x20 = 0x607C", "nyh 0x20 = 0x60E6", "nyhk 0x20 = 0x60E6", "nyhy 0x20 = 0x5FED", "nyhyz 0x20 = 0x5FC4", "nyi 0x20 = 0x5C3A", "nyiy 0x20 = 0x60CA", "nyj 0x20 = 0x663C", "nyjg 0x20 = 0x663C", "nyk 0x20 = 0x54AB", "nykw 0x20 = 0x54AB", "nyl 0x20 = 0x61D4", "nyli 0x20 = 0x61D4", "nynn 0x20 = 0x5FD9", "nyny 0x20 = 0x5FC3", "nyp 0x20 = 0x8FDF", "nypi 0x20 = 0x8FDF", "nyu 0x20 = 0x5C3D", "nyuu 0x20 = 0x5C3D", "nyv 0x20 = 0x6177", "nyvh 0x20 = 0x6175", "nyvi 0x20 = 0x6177", "nyw 0x20 = 0x4EE5", "nywf 0x20 = 0x7FE0", "nywfz 0x20 = 0x60B4", "nywy 0x20 = 0x4EE5", "o 0x20 = 0x4E3A", "oa 0x20 = 0x7164", "oaf 0x20 = 0x7164", "oafs 0x20 = 0x7164", "oan 0x20 = 0x70AC", "oang 0x20 = 0x70AC", "oanw 0x20 = 0x70BC", "oat 0x20 = 0x70E7", "oatq 0x20 = 0x70E7", "oaw 0x20 = 0x70D8", "oawu 0x20 = 0x7CAA", "oawy 0x20 = 0x70D8", "ob 0x20 = 0x7C7D", "obg 0x20 = 0x7C7D", "oc 0x20 = 0x70C3", "oca 0x20 = 0x70C3", "ocag 0x20 = 0x70C3", "ocb 0x20 = 0x7CC5", "ocbs 0x20 = 0x7CC5", "ocd 0x20 = 0x7CC1", "ocde 0x20 = 0x7CC1", "ocn 0x20 = 0x7C91", "od 0x20 = 0x7C7B", "odd 0x20 = 0x7C9D", "oddn 0x20 = 0x7C9D", "ode 0x20 = 0x7CCA", "odeg 0x20 = 0x7CCA", "odegz 0x20 = 0x7173", "odg 0x20 = 0x70BB", "odm 0x20 = 0x70E6", "odmy 0x20 = 0x70E6", "odu 0x20 = 0x7C7B", "odui 0x20 = 0x71CE", "oe 0x20 = 0x7C97", "oeg 0x20 = 0x7C97", "oegg 0x20 = 0x7C97", "oel 0x20 = 0x721D", "oelf 0x20 = 0x721D", "of 0x20 = 0x7076", "ofd 0x20 = 0x7CEF", "ofdj 0x20 = 0x7CEF", "ofg 0x20 = 0x7076", "ofn 0x20 = 0x709C", "ofnh 0x20 = 0x709C", "oft 0x20 = 0x70E4", "oftn 0x20 = 0x70E4", "og 0x20 = 0x4E1A", "ogb 0x20 = 0x90BA", "ogbh 0x20 = 0x90BA", "ogbn 0x20 = 0x7096", "ogd 0x20 = 0x4E1A", "oge 0x20 = 0x7CBE", "ogeg 0x20 = 0x7CBE", "ogj 0x20 = 0x7CB3", "ogjq 0x20 = 0x7CB3", "ogk 0x20 = 0x7110", "ogkg 0x20 = 0x7110", "ogm 0x20 = 0x70B3", "ogmj 0x20 = 0x7CDF", "ogmw 0x20 = 0x70B3", "ogu 0x20 = 0x51FF", "ogub 0x20 = 0x51FF", "oguc 0x20 = 0x9EFB", "ogui 0x20 = 0x9EF9", "oguy 0x20 = 0x9EFC", "oh 0x20 = 0x7C98", "ohj 0x20 = 0x712F", "ohjh 0x20 = 0x712F", "ohk 0x20 = 0x7C98", "ohkg 0x20 = 0x7C98", "oi 0x20 = 0x7092", "oit 0x20 = 0x7092", "oitt 0x20 = 0x7092", "oj 0x20 = 0x70DB", "oja 0x20 = 0x7206", "ojai 0x20 = 0x7206", "ojf 0x20 = 0x710A", "ojfh 0x20 = 0x710A", "ojl 0x20 = 0x71B3", "ojlc 0x20 = 0x71B3", "oju 0x20 = 0x715C", "ojug 0x20 = 0x715C", "ojy 0x20 = 0x70DB", "ok 0x20 = 0x70BD", "okk 0x20 = 0x71E5", "okks 0x20 = 0x71E5", "okw 0x20 = 0x70BD", "okwy 0x20 = 0x70BD", "ol 0x20 = 0x70DF", "old 0x20 = 0x70DF", "oldy 0x20 = 0x70DF", "olg 0x20 = 0x7168", "olge 0x20 = 0x7168", "om 0x20 = 0x707F", "omh 0x20 = 0x707F", "omhz 0x20 = 0x7C7C", "omkg 0x20 = 0x70AF", "on 0x20 = 0x65AD", "onh 0x20 = 0x7CC8", "onhe 0x20 = 0x7CC8", "onr 0x20 = 0x65AD", "onrg 0x20 = 0x71A0", "onrh 0x20 = 0x65AD", "onrt 0x20 = 0x7080", "onw 0x20 = 0x7094", "onwy 0x20 = 0x7094", "ony 0x20 = 0x70EC", "onyu 0x20 = 0x70EC", "oo 0x20 = 0x708E", "oob 0x20 = 0x90EF", "oobh 0x20 = 0x90EF", "ooj 0x20 = 0x5261", "oojh 0x20 = 0x5261", "ooo 0x20 = 0x706B", "oooo 0x20 = 0x706B", "ooou 0x20 = 0x7131", "oooz 0x20 = 0x7131", "oou 0x20 = 0x708E", "op 0x20 = 0x8FF7", "opf 0x20 = 0x70F7", "opfi 0x20 = 0x7CBD", "opfq 0x20 = 0x70F7", "opg 0x20 = 0x714A", "opgg 0x20 = 0x714A", "opi 0x20 = 0x8FF7", "opw 0x20 = 0x7194", "opwk 0x20 = 0x7194", "oq 0x20 = 0x70AE", "oqa 0x20 = 0x9074", "oqab 0x20 = 0x7CBC", "oqap 0x20 = 0x9074", "oqd 0x20 = 0x70EF", "oqdh 0x20 = 0x70EF", "oqdo 0x20 = 0x71C3", "oqi 0x20 = 0x70C1", "oqiy 0x20 = 0x70C1", "oqm 0x20 = 0x7115", "oqmd 0x20 = 0x7115", "oqn 0x20 = 0x70AE", "oqnn 0x20 = 0x70AE", "oqv 0x20 = 0x7130", "oqvg 0x20 = 0x7130", "oqw 0x20 = 0x708A", "oqwy 0x20 = 0x708A", "oqy 0x20 = 0x707C", "oqyl 0x20 = 0x7198", "oqyy 0x20 = 0x707C", "or 0x20 = 0x714C", "org 0x20 = 0x7C95", "orgg 0x20 = 0x714C", "os 0x20 = 0x706F", "osg 0x20 = 0x7C9E", "osh 0x20 = 0x706F", "ot 0x20 = 0x70FD", "otd 0x20 = 0x70FD", "otdh 0x20 = 0x70FD", "otf 0x20 = 0x7CD9", "otfp 0x20 = 0x7CD9", "oth 0x20 = 0x70B8", "othd 0x20 = 0x7CD7", "othf 0x20 = 0x70B8", "othj 0x20 = 0x7CCC", "othn 0x20 = 0x7184", "otk 0x20 = 0x70D9", "otkg 0x20 = 0x70D9", "otm 0x20 = 0x71E0", "otmd 0x20 = 0x71E0", "otol 0x20 = 0x71D4", "otu 0x20 = 0x70C0", "otuh 0x20 = 0x70C0", "oty 0x20 = 0x6549", "ou 0x20 = 0x6599", "oud 0x20 = 0x70CA", "oudh 0x20 = 0x70CA", "oue 0x20 = 0x71E7", "ouep 0x20 = 0x71E7", "ouf 0x20 = 0x6599", "oufg 0x20 = 0x70C2", "oufh 0x20 = 0x6599", "oug 0x20 = 0x7C92", "ougo 0x20 = 0x7CD5", "ouk 0x20 = 0x7119", "oukg 0x20 = 0x7119", "oum 0x20 = 0x71B5", "oumk 0x20 = 0x71B5", "oun 0x20 = 0x7116", "ouny 0x20 = 0x7116", "oux 0x20 = 0x7CCD", "ouxx 0x20 = 0x7CCD", "ov 0x20 = 0x5A04", "ove 0x20 = 0x717A", "ovep 0x20 = 0x717A", "ovf 0x20 = 0x5A04", "ovt 0x20 = 0x6570", "ovty 0x20 = 0x6570", "ow 0x20 = 0x7C89", "owb 0x20 = 0x709D", "owbn 0x20 = 0x709D", "owd 0x20 = 0x7145", "owdc 0x20 = 0x7145", "owf 0x20 = 0x70E9", "owfc 0x20 = 0x70E9", "own 0x20 = 0x7CC7", "ownd 0x20 = 0x7CC7", "owv 0x20 = 0x7C89", "owvn 0x20 = 0x7C89", "owx 0x20 = 0x70E8", "owxf 0x20 = 0x70E8", "owy 0x20 = 0x7113", "owyk 0x20 = 0x7113", "oxk 0x20 = 0x7CE8", "oxkj 0x20 = 0x7CE8", "oy 0x20 = 0x7C73", "oyg 0x20 = 0x70B7", "oygg 0x20 = 0x70B7", "oym 0x20 = 0x7095", "oymn 0x20 = 0x7095", "oyn 0x20 = 0x7089", "oyna 0x20 = 0x7178", "oynn 0x20 = 0x717D", "oynt 0x20 = 0x7089", "oyo 0x20 = 0x71EE", "oyoc 0x20 = 0x71EE", "oyt 0x20 = 0x7C73", "oyty 0x20 = 0x7C73", "oyv 0x20 = 0x7CD6", "oyve 0x20 = 0x7CAE", "oyvi 0x20 = 0x7CE0", "oyvk 0x20 = 0x7CD6", "oyvz 0x20 = 0x7CAE", "oyw 0x20 = 0x7CB9", "oywf 0x20 = 0x7CB9", "oyx 0x20 = 0x70AB", "oyxy 0x20 = 0x70AB", "oyy 0x20 = 0x706C", "oyyy 0x20 = 0x706C", "p 0x20 = 0x8FD9", "pa 0x20 = 0x5BBD", "pah 0x20 = 0x5BA6", "pahh 0x20 = 0x5BA6", "paj 0x20 = 0x5BDE", "pajd 0x20 = 0x5BDE", "pam 0x20 = 0x5BBD", "pamq 0x20 = 0x5BBD", "pb 0x20 = 0x5B57", "pbf 0x20 = 0x5B57", "pd 0x20 = 0x5BB3", "pdc 0x20 = 0x5B8F", "pdcu 0x20 = 0x5B8F", "pde 0x20 = 0x5BE1", "pdef 0x20 = 0x5BA5", "pdev 0x20 = 0x5BE1", "pdf 0x20 = 0x5B95", "pdfe 0x20 = 0x5BB8", "pdh 0x20 = 0x5BB3", "pdhj 0x20 = 0x5272", "pdhk 0x20 = 0x5BB3", "pdhkz 0x20 = 0x8C41", "pds 0x20 = 0x5BC4", "pdsk 0x20 = 0x5BC4", "pdu 0x20 = 0x5BEE", "pdui 0x20 = 0x5BEE", "pdx 0x20 = 0x5BA0", "pdxb 0x20 = 0x5BA0", "pe 0x20 = 0x5BB6", "peg 0x20 = 0x5B9C", "pegf 0x20 = 0x5B9C", "pei 0x20 = 0x519C", "peu 0x20 = 0x5BB6", "pey 0x20 = 0x51A2", "peyu 0x20 = 0x51A2", "pf 0x20 = 0x5B88", "pfi 0x20 = 0x5B97", "pfiu 0x20 = 0x5B97", "pfj 0x20 = 0x5BD2", "pfjc 0x20 = 0x9A9E", "pfje 0x20 = 0x8930", "pfjf 0x20 = 0x585E", "pfjh 0x20 = 0x8E47", "pfjm 0x20 = 0x8D5B", "pfjr 0x20 = 0x6434", "pfjs 0x20 = 0x5BE8", "pfju 0x20 = 0x5BD2", "pfjy 0x20 = 0x8B07", "pfq 0x20 = 0x5B8C", "pfqb 0x20 = 0x5B8C", "pfqc 0x20 = 0x5BC7", "pfqf 0x20 = 0x51A0", "pfu 0x20 = 0x5B88", "pg 0x20 = 0x5B9A", "pgc 0x20 = 0x5BA4", "pgcf 0x20 = 0x5BA4", "pgf 0x20 = 0x5B87", "pgfj 0x20 = 0x5B87", "pgh 0x20 = 0x5B9A", "pghu 0x20 = 0x5B9A", "pgj 0x20 = 0x5BA3", "pgjg 0x20 = 0x5BA3", "pgk 0x20 = 0x5BCC", "pgkl 0x20 = 0x5BCC", "pgm 0x20 = 0x5BC5", "pgmw 0x20 = 0x5BC5", "pgn 0x20 = 0x5199", "pgng 0x20 = 0x5199", "pgy 0x20 = 0x5B9D", "pgyu 0x20 = 0x5B9D", "ph 0x20 = 0x5BC2", "phi 0x20 = 0x5BC2", "phic 0x20 = 0x5BC2", "pi 0x20 = 0x5BB5", "pie 0x20 = 0x5BB5", "pief 0x20 = 0x5BB5", "pj 0x20 = 0x5BA1", "pjd 0x20 = 0x5E42", "pjdh 0x20 = 0x5E42", "pjh 0x20 = 0x5BA1", "pjhj 0x20 = 0x5BA1", "pjm 0x20 = 0x5BD3", "pjmy 0x20 = 0x5BD3", "pju 0x20 = 0x51A5", "pjuu 0x20 = 0x51A5", "pjv 0x20 = 0x5BB4", "pjvf 0x20 = 0x5BB4", "pk 0x20 = 0x5BAB", "pkk 0x20 = 0x5BAB", "pkkf 0x20 = 0x5BAB", "pl 0x20 = 0x519B", "plb 0x20 = 0x90D3", "plbh 0x20 = 0x90D3", "plg 0x20 = 0x5BF0", "plge 0x20 = 0x5BF0", "plh 0x20 = 0x76B2", "plhc 0x20 = 0x76B2", "plj 0x20 = 0x519B", "pm 0x20 = 0x5B99", "pmb 0x20 = 0x5197", "pmf 0x20 = 0x5B99", "pn 0x20 = 0x5B98", "pne 0x20 = 0x752F", "pnej 0x20 = 0x752F", "pnh 0x20 = 0x5B98", "pnhi 0x20 = 0x5BD0", "pnhk 0x20 = 0x5BE4", "pnhn 0x20 = 0x5B98", "pnhp 0x20 = 0x902D", "pnt 0x20 = 0x5BC6", "pntj 0x20 = 0x871C", "pntm 0x20 = 0x5BC6", "pntr 0x20 = 0x5B93", "pnw 0x20 = 0x5BE5", "pnwe 0x20 = 0x5BE5", "pny 0x20 = 0x5EF4", "po 0x20 = 0x707E", "pou 0x20 = 0x707E", "pp 0x20 = 0x4E4B", "ppp 0x20 = 0x4E4B", "pppp 0x20 = 0x4E4B", "pq 0x20 = 0x5B9B", "pqb 0x20 = 0x5B9B", "pqbb 0x20 = 0x5B9B", "pqbj 0x20 = 0x525C", "pqk 0x20 = 0x51A4", "pqky 0x20 = 0x51A4", "pqq 0x20 = 0x9E29", "pqqg 0x20 = 0x9E29", "pr 0x20 = 0x5BBE", "prg 0x20 = 0x5BBE", "prgw 0x20 = 0x5BBE", "prh 0x20 = 0x7262", "prhj 0x20 = 0x7262", "prwn 0x20 = 0x887F", "ps 0x20 = 0x5B81", "psj 0x20 = 0x5B81", "psu 0x20 = 0x5B8B", "pt 0x20 = 0x5BA2", "pta 0x20 = 0x5B85", "ptab 0x20 = 0x5B85", "ptf 0x20 = 0x5BAA", "ptfq 0x20 = 0x5BAA", "ptk 0x20 = 0x5BA2", "ptkf 0x20 = 0x5BA2", "ptkm 0x20 = 0x989D", "pu 0x20 = 0x5B9E", "pua 0x20 = 0x8921", "puak 0x20 = 0x8921", "puc 0x20 = 0x8869", "pucc 0x20 = 0x88F0", "pucy 0x20 = 0x8869", "pud 0x20 = 0x5B9E", "pudf 0x20 = 0x8925", "pudu 0x20 = 0x5B9E", "pue 0x20 = 0x886B", "puet 0x20 = 0x886B", "puf 0x20 = 0x886C", "pufh 0x20 = 0x8902", "pufj 0x20 = 0x891A", "pufjz 0x20 = 0x8966", "pufy 0x20 = 0x886C", "pug 0x20 = 0x889C", "puge 0x20 = 0x88F1", "pugs 0x20 = 0x889C", "puh 0x20 = 0x8865", "puhc 0x20 = 0x88AB", "puhy 0x20 = 0x8865", "pui 0x20 = 0x8864", "puiv 0x20 = 0x88C6", "puj 0x20 = 0x5BB0", "pujg 0x20 = 0x8892", "pujl 0x20 = 0x8934", "pujn 0x20 = 0x8910", "pujr 0x20 = 0x88FC", "pujs 0x20 = 0x88F8", "puk 0x20 = 0x88CE", "pukg 0x20 = 0x88CE", "pul 0x20 = 0x88E2", "pulp 0x20 = 0x88E2", "pum 0x20 = 0x8896", "pumg 0x20 = 0x8896", "pumw 0x20 = 0x8872", "pun 0x20 = 0x8882", "pund 0x20 = 0x88FE", "punr 0x20 = 0x8936", "punw 0x20 = 0x8882", "puo 0x20 = 0x891B", "puov 0x20 = 0x891B", "puq 0x20 = 0x888D", "puqn 0x20 = 0x888D", "pur 0x20 = 0x88E8", "purf 0x20 = 0x88E8", "purm 0x20 = 0x892B", "pus 0x20 = 0x895F", "pusi 0x20 = 0x895F", "pusr 0x20 = 0x897B", "put 0x20 = 0x8884", "putd 0x20 = 0x8884", "putf 0x20 = 0x887D", "putk 0x20 = 0x88BC", "puu 0x20 = 0x88A2", "puue 0x20 = 0x8919", "puuf 0x20 = 0x88A2", "puuj 0x20 = 0x88E5", "puv 0x20 = 0x521D", "puvc 0x20 = 0x5BDD", "puve 0x20 = 0x88C9", "puvk 0x20 = 0x88D9", "puvn 0x20 = 0x521D", "puvp 0x20 = 0x892A", "puw 0x20 = 0x88D5", "puwd 0x20 = 0x88B1", "puwi 0x20 = 0x88E3", "puwk 0x20 = 0x88D5", "puwkz 0x20 = 0x88B7", "puws 0x20 = 0x8913", "pux 0x20 = 0x8941", "puxj 0x20 = 0x8941", "puy 0x20 = 0x88E4", "puya 0x20 = 0x890A", "puyl 0x20 = 0x88E4", "pv 0x20 = 0x5B89", "pvb 0x20 = 0x5B84", "pvf 0x20 = 0x5B89", "pvs 0x20 = 0x6848", "pvsu 0x20 = 0x6848", "pw 0x20 = 0x7A7A", "pwa 0x20 = 0x7A7A", "pwaf 0x20 = 0x7A7A", "pwan 0x20 = 0x7A8D", "pwat 0x20 = 0x7A7F", "pwav 0x20 = 0x7A83", "pwb 0x20 = 0x7ABF", "pwbg 0x20 = 0x7ABF", "pwd 0x20 = 0x7A81", "pwdj 0x20 = 0x5BBF", "pwdu 0x20 = 0x7A81", "pwf 0x20 = 0x7F55", "pwfd 0x20 = 0x7AA6", "pwfi 0x20 = 0x5BDF", "pwfj 0x20 = 0x7F55", "pwfq 0x20 = 0x7AA5", "pwg 0x20 = 0x7A92", "pwgf 0x20 = 0x7A92", "pwgn 0x20 = 0x7A80", "pwi 0x20 = 0x7A95", "pwiq 0x20 = 0x7A95", "pwj 0x20 = 0x7AA0", "pwjs 0x20 = 0x7AA0", "pwk 0x20 = 0x7A9C", "pwkh 0x20 = 0x7A9C", "pwkw 0x20 = 0x7A9D", "pwl 0x20 = 0x7A77", "pwlb 0x20 = 0x7A77", "pwm 0x20 = 0x5E18", "pwmh 0x20 = 0x5E18", "pwn 0x20 = 0x7A9F", "pwnm 0x20 = 0x7A9F", "pwo 0x20 = 0x7AAD", "pwov 0x20 = 0x7AAD", "pwq 0x20 = 0x7A78", "pwqu 0x20 = 0x7A78", "pwr 0x20 = 0x7A91", "pwrm 0x20 = 0x7A91", "pwry 0x20 = 0x7AB3", "pwt 0x20 = 0x7A97", "pwtf 0x20 = 0x7A84", "pwtk 0x20 = 0x7A96", "pwtp 0x20 = 0x7A86", "pwtq 0x20 = 0x7A97", "pwu 0x20 = 0x7A74", "pwuj 0x20 = 0x7AA8", "pwup 0x20 = 0x9083", "pwv 0x20 = 0x7A76", "pwvb 0x20 = 0x7A76", "pwvk 0x20 = 0x7A98", "pww 0x20 = 0x5BB9", "pwwj 0x20 = 0x7AAC", "pwwk 0x20 = 0x5BB9", "pwx 0x20 = 0x7A79", "pwxb 0x20 = 0x7A79", "pwxl 0x20 = 0x7A88", "pwy 0x20 = 0x9E64", "pwyg 0x20 = 0x9E64", "px 0x20 = 0x5B83", "pxb 0x20 = 0x5B83", "py 0x20 = 0x793E", "pya 0x20 = 0x797A", "pyaw 0x20 = 0x797A", "pyb 0x20 = 0x7941", "pybh 0x20 = 0x7941", "pyd 0x20 = 0x7977", "pydc 0x20 = 0x7953", "pydd 0x20 = 0x798A", "pydf 0x20 = 0x7977", "pydg 0x20 = 0x795C", "pye 0x20 = 0x7956", "pyeg 0x20 = 0x7956", "pyf 0x20 = 0x793E", "pyfc 0x20 = 0x795B", "pyfg 0x20 = 0x793E", "pyfk 0x20 = 0x79A7", "pyg 0x20 = 0x798F", "pygd 0x20 = 0x7946", "pygl 0x20 = 0x798F", "pyh 0x20 = 0x7949", "pyhg 0x20 = 0x7949", "pyhm 0x20 = 0x796F", "pyi 0x20 = 0x793B", "pyiq 0x20 = 0x7967", "pyj 0x20 = 0x795E", "pyjh 0x20 = 0x795E", "pyk 0x20 = 0x795D", "pykq 0x20 = 0x795D", "pykw 0x20 = 0x7978", "pym 0x20 = 0x89C6", "pymq 0x20 = 0x89C6", "pyn 0x20 = 0x5196", "pynk 0x20 = 0x7960", "pynn 0x20 = 0x793C", "pynnz 0x20 = 0x7940", "pyny 0x20 = 0x8FB6", "pyq 0x20 = 0x7962", "pyqi 0x20 = 0x7962", "pyqy 0x20 = 0x7957", "pyr 0x20 = 0x7948", "pyrh 0x20 = 0x7948", "pyt 0x20 = 0x795A", "pytf 0x20 = 0x795A", "pyu 0x20 = 0x7965", "pyud 0x20 = 0x7965", "pyuf 0x20 = 0x7985", "pyuo 0x20 = 0x799A", "pyv 0x20 = 0x7984", "pyvi 0x20 = 0x7984", "pyy 0x20 = 0x5B80", "pyye 0x20 = 0x79B3", "pyyn 0x20 = 0x5B80", "q 0x20 = 0x6211", "qa 0x20 = 0x6C0F", "qad 0x20 = 0x9518", "qadk 0x20 = 0x9518", "qaf 0x20 = 0x94B3", "qafg 0x20 = 0x94B3", "qah 0x20 = 0x821B", "qahb 0x20 = 0x94D8", "qahh 0x20 = 0x821B", "qahs 0x20 = 0x6840", "qaj 0x20 = 0x9519", "qajd 0x20 = 0x9546", "qajf 0x20 = 0x660F", "qajg 0x20 = 0x9519", "qak 0x20 = 0x94B7", "qakg 0x20 = 0x94B7", "qal 0x20 = 0x951A", "qalg 0x20 = 0x951A", "qan 0x20 = 0x949C", "qang 0x20 = 0x949C", "qant 0x20 = 0x94BA", "qany 0x20 = 0x94FD", "qap 0x20 = 0x94F9", "qapl 0x20 = 0x94F9", "qat 0x20 = 0x94D9", "qatq 0x20 = 0x94D9", "qav 0x20 = 0x6C0F", "qawc 0x20 = 0x956C", "qay 0x20 = 0x6C10", "qayb 0x20 = 0x90B8", "qayg 0x20 = 0x9E31", "qayi 0x20 = 0x6C10", "qb 0x20 = 0x51F6", "qbc 0x20 = 0x954A", "qbcc 0x20 = 0x954A", "qbg 0x20 = 0x94D2", "qbh 0x20 = 0x948C", "qbhf 0x20 = 0x7722", "qbk 0x20 = 0x51F6", "qbl 0x20 = 0x9530", "qblg 0x20 = 0x9530", "qbn 0x20 = 0x6028", "qbnu 0x20 = 0x6028", "qbp 0x20 = 0x8FCE", "qbpk 0x20 = 0x8FCE", "qbq 0x20 = 0x9E33", "qbqg 0x20 = 0x9E33", "qbs 0x20 = 0x9515", "qbsk 0x20 = 0x9515", "qc 0x20 = 0x8272", "qcb 0x20 = 0x8272", "qcf 0x20 = 0x94CE", "qcfh 0x20 = 0x94CE", "qci 0x20 = 0x52FE", "qcn 0x20 = 0x94AF", "qcy 0x20 = 0x9497", "qcyy 0x20 = 0x9497", "qd 0x20 = 0x7136", "qdb 0x20 = 0x5371", "qdbb 0x20 = 0x5371", "qdc 0x20 = 0x90C4", "qdcb 0x20 = 0x90C4", "qdcy 0x20 = 0x94B9", "qde 0x20 = 0x80B4", "qdef 0x20 = 0x80B4", "qdeg 0x20 = 0x94D5", "qdf 0x20 = 0x951B", "qdfa 0x20 = 0x951B", "qdg 0x20 = 0x94B4", "qdh 0x20 = 0x9532", "qdhd 0x20 = 0x9532", "qdm 0x20 = 0x5E0C", "qdmb 0x20 = 0x90D7", "qdmh 0x20 = 0x5E0C", "qdmhz 0x20 = 0x94B8", "qdmw 0x20 = 0x6B37", "qdn 0x20 = 0x94D6", "qdnt 0x20 = 0x94D6", "qdo 0x20 = 0x7136", "qdou 0x20 = 0x7136", "qdt 0x20 = 0x94F8", "qdtf 0x20 = 0x94F8", "qdu 0x20 = 0x9563", "qdui 0x20 = 0x9563", "qduw 0x20 = 0x9562", "qdw 0x20 = 0x8A79", "qdwy 0x20 = 0x8A79", "qdy 0x20 = 0x949B", "qdyy 0x20 = 0x949B", "qe 0x20 = 0x89D2", "qefc 0x20 = 0x953E", "qefy 0x20 = 0x950A", "qeg 0x20 = 0x94A5", "qegi 0x20 = 0x89EB", "qegl 0x20 = 0x9504", "qegz 0x20 = 0x89EB", "qei 0x20 = 0x89E5", "qeiq 0x20 = 0x89E5", "qej 0x20 = 0x89D2", "qejy 0x20 = 0x89E6", "qen 0x20 = 0x89D6", "qenw 0x20 = 0x89D6", "qer 0x20 = 0x89DA", "qery 0x20 = 0x89DA", "qet 0x20 = 0x9490", "qetr 0x20 = 0x89DE", "qeu 0x20 = 0x659B", "qeuf 0x20 = 0x659B", "qeufz 0x20 = 0x89EF", "qev 0x20 = 0x89E3", "qevh 0x20 = 0x89E3", "qevj 0x20 = 0x87F9", "qevp 0x20 = 0x9082", "qf 0x20 = 0x9488", "qfg 0x20 = 0x948D", "qfh 0x20 = 0x9488", "qfhw 0x20 = 0x9547", "qfl 0x20 = 0x956D", "qflg 0x20 = 0x956D", "qft 0x20 = 0x9517", "qftj 0x20 = 0x9517", "qftn 0x20 = 0x94D0", "qftx 0x20 = 0x94D1", "qg 0x20 = 0x94B1", "qga 0x20 = 0x9CBD", "qgal 0x20 = 0x9CD3", "qgas 0x20 = 0x9CBD", "qgb 0x20 = 0x5370", "qgbc 0x20 = 0x9CB0", "qgbh 0x20 = 0x5370", "qgbn 0x20 = 0x949D", "qgc 0x20 = 0x9C90", "qgcj 0x20 = 0x9CCB", "qgck 0x20 = 0x9C90", "qgd 0x20 = 0x9C7F", "qgdc 0x20 = 0x9C85", "qgdd 0x20 = 0x9CB1", "qgde 0x20 = 0x9C94", "qgdj 0x20 = 0x9C95", "qgdn 0x20 = 0x9C7F", "qgdw 0x20 = 0x9CDC", "qge 0x20 = 0x94FA", "qgeg 0x20 = 0x9516", "qgem 0x20 = 0x9CD0", "qgey 0x20 = 0x94FA", "qgeyz 0x20 = 0x530D", "qgf 0x20 = 0x9C7C", "qgff 0x20 = 0x9C91", "qgfj 0x20 = 0x9CCD", "qgfk 0x20 = 0x9C92", "qgfm 0x20 = 0x9CBC", "qgft 0x20 = 0x9CAE", "qgfv 0x20 = 0x9CD5", "qgg 0x20 = 0x9C86", "qgge 0x20 = 0x9CAD", "qggh 0x20 = 0x9C86", "qggq 0x20 = 0x9CA0", "qggy 0x20 = 0x9CA1", "qgh 0x20 = 0x9499", "qghg 0x20 = 0x94B2", "qghk 0x20 = 0x9C87", "qghn 0x20 = 0x9499", "qghnz 0x20 = 0x9C88", "qgi 0x20 = 0x76E5", "qgil 0x20 = 0x76E5", "qgiy 0x20 = 0x949A", "qgj 0x20 = 0x9C81", "qgjc 0x20 = 0x9CD7", "qgjf 0x20 = 0x9C81", "qgjfz 0x20 = 0x9CA4", "qgjfzz 0x20 = 0x9CA5", "qgjfzzz 0x20 = 0x9CA3", "qgjj 0x20 = 0x9CB3", "qgjn 0x20 = 0x9CCE", "qgjx 0x20 = 0x9CB2", "qgk 0x20 = 0x5310", "qgkh 0x20 = 0x9549", "qgkl 0x20 = 0x5310", "qgkn 0x20 = 0x9CC4", "qgl 0x20 = 0x9CC3", "qgld 0x20 = 0x9CB4", "qgli 0x20 = 0x9CCF", "qgln 0x20 = 0x9CC3", "qglp 0x20 = 0x9CA2", "qgm 0x20 = 0x9CB7", "qgmk 0x20 = 0x9CB7", "qgmu 0x20 = 0x9CE2", "qgn 0x20 = 0x9CBA", "qgnj 0x20 = 0x9CBA", "qgo 0x20 = 0x9CDE", "qgoh 0x20 = 0x9CDE", "qgoy 0x20 = 0x94FC", "qgp 0x20 = 0x9CA9", "qgpq 0x20 = 0x9CA9", "qgq 0x20 = 0x9C8D", "qgqn 0x20 = 0x9C8D", "qgr 0x20 = 0x9CC7", "qgrg 0x20 = 0x9CC7", "qgs 0x20 = 0x9CD4", "qgsi 0x20 = 0x9CD4", "qgt 0x20 = 0x94B1", "qgti 0x20 = 0x9CA7", "qgto 0x20 = 0x9CC5", "qgts 0x20 = 0x9CA6", "qgtt 0x20 = 0x9CC6", "qgty 0x20 = 0x7A23", "qgu 0x20 = 0x9C9C", "qgud 0x20 = 0x9C9C", "qguf 0x20 = 0x9CDF", "qguk 0x20 = 0x9CDD", "qguq 0x20 = 0x9C9B", "qguw 0x20 = 0x94D7", "qgv 0x20 = 0x9C9F", "qgvb 0x20 = 0x9CAB", "qgvf 0x20 = 0x9C9F", "qgvl 0x20 = 0x9CBB", "qgvq 0x20 = 0x9CB5", "qgw 0x20 = 0x9C8B", "qgwf 0x20 = 0x9C8B", "qgwn 0x20 = 0x9CB6", "qgy 0x20 = 0x9CB8", "qgya 0x20 = 0x9CCA", "qgyh 0x20 = 0x9CD9", "qgyi 0x20 = 0x9CB8", "qgyj 0x20 = 0x9C9A", "qgyn 0x20 = 0x9C82", "qgyy 0x20 = 0x94B0", "qh 0x20 = 0x5916", "qhc 0x20 = 0x94CD", "qhcy 0x20 = 0x94CD", "qhg 0x20 = 0x94BC", "qhk 0x20 = 0x94BB", "qhkg 0x20 = 0x94BB", "qhy 0x20 = 0x5916", "qhyz 0x20 = 0x948B", "qi 0x20 = 0x4E50", "qie 0x20 = 0x9500", "qieg 0x20 = 0x9500", "qig 0x20 = 0x73BA", "qigy 0x20 = 0x73BA", "qii 0x20 = 0x4E50", "qim 0x20 = 0x9501", "qimy 0x20 = 0x9501", "qin 0x20 = 0x94F4", "qinr 0x20 = 0x94F4", "qip 0x20 = 0x8FE9", "qipf 0x20 = 0x9557", "qipi 0x20 = 0x8FE9", "qiq 0x20 = 0x94EB", "qiqn 0x20 = 0x94EB", "qit 0x20 = 0x949E", "qitt 0x20 = 0x949E", "qiu 0x20 = 0x5C14", "qiv 0x20 = 0x94DB", "qivg 0x20 = 0x94DB", "qj 0x20 = 0x65EC", "qjb 0x20 = 0x90C7", "qjbh 0x20 = 0x90C7", "qjc 0x20 = 0x94FF", "qjcf 0x20 = 0x94FF", "qjd 0x20 = 0x65EC", "qje 0x20 = 0x8C61", "qjeu 0x20 = 0x8C61", "qjf 0x20 = 0x9502", "qjfg 0x20 = 0x9502", "qjg 0x20 = 0x94BD", "qjgf 0x20 = 0x951D", "qjgg 0x20 = 0x94BD", "qjh 0x20 = 0x948A", "qjhz 0x20 = 0x5208", "qjl 0x20 = 0x9558", "qjlc 0x20 = 0x9558", "qjn 0x20 = 0x9F9F", "qjnb 0x20 = 0x9F9F", "qjq 0x20 = 0x9521", "qjqr 0x20 = 0x9521", "qjs 0x20 = 0x951E", "qjsy 0x20 = 0x951E", "qjx 0x20 = 0x951F", "qjxx 0x20 = 0x951F", "qk 0x20 = 0x540D", "qkd 0x20 = 0x53E5", "qkf 0x20 = 0x540D", "qkg 0x20 = 0x9503", "qkgg 0x20 = 0x9503", "qkh 0x20 = 0x948F", "qkhh 0x20 = 0x949F", "qkk 0x20 = 0x94DD", "qkkg 0x20 = 0x94DD", "qkkn 0x20 = 0x9537", "qkl 0x20 = 0x52AC", "qkln 0x20 = 0x52AC", "qkm 0x20 = 0x9505", "qkmh 0x20 = 0x94DE", "qkmw 0x20 = 0x9505", "qkq 0x20 = 0x514D", "qkqb 0x20 = 0x514D", "qkqg 0x20 = 0x9E32", "qkql 0x20 = 0x52C9", "qkqp 0x20 = 0x9038", "qkqq 0x20 = 0x591F", "qkqy 0x20 = 0x5154", "ql 0x20 = 0x7538", "qld 0x20 = 0x7538", "qldg 0x20 = 0x9522", "qldy 0x20 = 0x94DF", "qlg 0x20 = 0x94BF", "qlh 0x20 = 0x94BE", "qln 0x20 = 0x9536", "qlny 0x20 = 0x9536", "qlp 0x20 = 0x94FE", "qlpy 0x20 = 0x94FE", "qlq 0x20 = 0x9523", "qlqj 0x20 = 0x956F", "qlqy 0x20 = 0x9523", "qlx 0x20 = 0x9559", "qlxi 0x20 = 0x9559", "qm 0x20 = 0x8D1F", "qmd 0x20 = 0x5942", "qmdu 0x20 = 0x5942", "qmg 0x20 = 0x94C0", "qmgk 0x20 = 0x94DC", "qmj 0x20 = 0x94E1", "qmjh 0x20 = 0x94E1", "qmk 0x20 = 0x94C5", "qmkg 0x20 = 0x94C5", "qmn 0x20 = 0x94E0", "qmnn 0x20 = 0x94E0", "qmq 0x20 = 0x94A2", "qmqy 0x20 = 0x94A2", "qmu 0x20 = 0x8D1F", "qmw 0x20 = 0x94A0", "qmwy 0x20 = 0x94A0", "qmy 0x20 = 0x94A1", "qmyy 0x20 = 0x9492", "qn 0x20 = 0x5305", "qna 0x20 = 0x9976", "qnad 0x20 = 0x998D", "qnag 0x20 = 0x9991", "qnaq 0x20 = 0x9976", "qnat 0x20 = 0x9993", "qnb 0x20 = 0x9963", "qnbg 0x20 = 0x9975", "qnc 0x20 = 0x9974", "qnck 0x20 = 0x9974", "qnd 0x20 = 0x952F", "qndg 0x20 = 0x952F", "qne 0x20 = 0x9981", "qnev 0x20 = 0x9981", "qnf 0x20 = 0x94AE", "qnfb 0x20 = 0x997D", "qnfg 0x20 = 0x94AE", "qng 0x20 = 0x4E4C", "qngb 0x20 = 0x90AC", "qngd 0x20 = 0x4E4C", "qnge 0x20 = 0x9995", "qngn 0x20 = 0x9968", "qngt 0x20 = 0x996F", "qnh 0x20 = 0x9545", "qnhg 0x20 = 0x9545", "qnj 0x20 = 0x8680", "qnjc 0x20 = 0x9992", "qnjh 0x20 = 0x5228", "qnjx 0x20 = 0x9984", "qnjy 0x20 = 0x8680", "qnk 0x20 = 0x9988", "qnkm 0x20 = 0x9988", "qnm 0x20 = 0x9965", "qnmn 0x20 = 0x9965", "qnn 0x20 = 0x9487", "qnnk 0x20 = 0x9972", "qnnkz 0x20 = 0x9514", "qnnr 0x20 = 0x9967", "qnnw 0x20 = 0x9994", "qnnz 0x20 = 0x9486", "qnp 0x20 = 0x9986", "qnpn 0x20 = 0x9986", "qnq 0x20 = 0x996E", "qnql 0x20 = 0x998F", "qnqn 0x20 = 0x9971", "qnqu 0x20 = 0x998B", "qnqv 0x20 = 0x9985", "qnqw 0x20 = 0x996E", "qnr 0x20 = 0x996D", "qnrc 0x20 = 0x996D", "qnrn 0x20 = 0x9969", "qns 0x20 = 0x9987", "qnsg 0x20 = 0x9987", "qnt 0x20 = 0x997F", "qntd 0x20 = 0x996B", "qntf 0x20 = 0x996A", "qnth 0x20 = 0x9970", "qntk 0x20 = 0x9977", "qntl 0x20 = 0x996C", "qntt 0x20 = 0x997F", "qnttz 0x20 = 0x94CB", "qnu 0x20 = 0x997C", "qnua 0x20 = 0x997C", "qnuf 0x20 = 0x9990", "qnuq 0x20 = 0x997A", "qnv 0x20 = 0x5305", "qnvc 0x20 = 0x998A", "qnw 0x20 = 0x9980", "qnwt 0x20 = 0x9980", "qnx 0x20 = 0x94CC", "qnxn 0x20 = 0x94CC", "qo 0x20 = 0x7099", "qob 0x20 = 0x9B2F", "qobx 0x20 = 0x9B2F", "qog 0x20 = 0x9564", "qogy 0x20 = 0x9564", "qoo 0x20 = 0x952C", "qooy 0x20 = 0x952C", "qou 0x20 = 0x7099", "qov 0x20 = 0x9542", "qovg 0x20 = 0x9542", "qoy 0x20 = 0x94AC", "qp 0x20 = 0x952D", "qpe 0x20 = 0x9553", "qpey 0x20 = 0x9553", "qpg 0x20 = 0x952D", "qpgh 0x20 = 0x952D", "qpgw 0x20 = 0x5924", "qpr 0x20 = 0x9554", "qprw 0x20 = 0x9554", "qpv 0x20 = 0x94F5", "qpvg 0x20 = 0x94F5", "qpw 0x20 = 0x9569", "qpwh 0x20 = 0x9569", "qpwi 0x20 = 0x9572", "qpx 0x20 = 0x94CA", "qpxn 0x20 = 0x94CA", "qq 0x20 = 0x591A", "qqb 0x20 = 0x5308", "qqbk 0x20 = 0x5308", "qqcn 0x20 = 0x94EF", "qqcy 0x20 = 0x94A9", "qqg 0x20 = 0x9565", "qqgj 0x20 = 0x9565", "qqi 0x20 = 0x94C4", "qqiy 0x20 = 0x94C4", "qqk 0x20 = 0x94ED", "qqkg 0x20 = 0x94ED", "qqn 0x20 = 0x94A8", "qqng 0x20 = 0x94A8", "qqqf 0x20 = 0x946B", "qqqq 0x20 = 0x91D1", "qqr 0x20 = 0x952A", "qqrn 0x20 = 0x952A", "qqs 0x20 = 0x94E9", "qqsy 0x20 = 0x94E9", "qqt 0x20 = 0x94C6", "qqtb 0x20 = 0x94C6", "qqu 0x20 = 0x591A", "qqug 0x20 = 0x94A7", "qquz 0x20 = 0x723B", "qqv 0x20 = 0x94EE", "qqvh 0x20 = 0x94EE", "qqw 0x20 = 0x94A6", "qqwy 0x20 = 0x94A6", "qqyl 0x20 = 0x954F", "qqyy 0x20 = 0x9493", "qr 0x20 = 0x94C1", "qrc 0x20 = 0x94A3", "qrcy 0x20 = 0x94A3", "qre 0x20 = 0x52FF", "qrg 0x20 = 0x94C2", "qri 0x20 = 0x94E2", "qriy 0x20 = 0x94E2", "qrj 0x20 = 0x520E", "qrjh 0x20 = 0x520E", "qrm 0x20 = 0x9526", "qrmh 0x20 = 0x9526", "qrn 0x20 = 0x5FFD", "qrnq 0x20 = 0x515C", "qrnu 0x20 = 0x5FFD", "qrq 0x20 = 0x9528", "qrqw 0x20 = 0x9528", "qrw 0x20 = 0x94C1", "qrwy 0x20 = 0x94C1", "qry 0x20 = 0x5306", "qryi 0x20 = 0x5306", "qs 0x20 = 0x9489", "qsa 0x20 = 0x5F11", "qsaa 0x20 = 0x5F11", "qsf 0x20 = 0x9556", "qsfi 0x20 = 0x9556", "qsg 0x20 = 0x94B5", "qsgg 0x20 = 0x94B5", "qsh 0x20 = 0x9489", "qsj 0x20 = 0x5239", "qsjh 0x20 = 0x9561", "qsjhz 0x20 = 0x5239", "qsk 0x20 = 0x94B6", "qskg 0x20 = 0x94B6", "qsu 0x20 = 0x6740", "qt 0x20 = 0x513F", "qta 0x20 = 0x730E", "qtad 0x20 = 0x72E8", "qtaj 0x20 = 0x730E", "qtal 0x20 = 0x732B", "qtay 0x20 = 0x737E", "qtbh 0x20 = 0x536F", "qtbi 0x20 = 0x72F2", "qtbl 0x20 = 0x731B", "qtbn 0x20 = 0x72AF", "qtc 0x20 = 0x72C1", "qtcg 0x20 = 0x72B8", "qtcq 0x20 = 0x72C1", "qtcs 0x20 = 0x7331", "qtct 0x20 = 0x72FB", "qtd 0x20 = 0x950B", "qtde 0x20 = 0x7322", "qtdh 0x20 = 0x950B", "qtdi 0x20 = 0x7360", "qtdk 0x20 = 0x7317", "qtdn 0x20 = 0x72B9", "qtdw 0x20 = 0x7357", "qte 0x20 = 0x72AD", "qteg 0x20 = 0x72D9", "qten 0x20 = 0x9508", "qtf 0x20 = 0x948E", "qtfc 0x20 = 0x94E5", "qtfe 0x20 = 0x733F", "qtfh 0x20 = 0x72B4", "qtfhz 0x20 = 0x948E", "qtfj 0x20 = 0x732A", "qtfk 0x20 = 0x9506", "qtfp 0x20 = 0x94E4", "qtfq 0x20 = 0x94E3", "qtfs 0x20 = 0x6A65", "qtfv 0x20 = 0x9538", "qtg 0x20 = 0x72C2", "qtge 0x20 = 0x731C", "qtgf 0x20 = 0x953A", "qtgfz 0x20 = 0x9524", "qtgg 0x20 = 0x72C2", "qtgm 0x20 = 0x736D", "qtgn 0x20 = 0x9485", "qtgp 0x20 = 0x901B", "qtgw 0x20 = 0x72ED", "qth 0x20 = 0x954D", "qths 0x20 = 0x954D", "qtj 0x20 = 0x72EC", "qtjf 0x20 = 0x72F8", "qtjg 0x20 = 0x7329", "qtjh 0x20 = 0x72EE", "qtjj 0x20 = 0x7316", "qtjs 0x20 = 0x7313", "qtjy 0x20 = 0x72EC", "qtk 0x20 = 0x94EC", "qtke 0x20 = 0x72F7", "qtkg 0x20 = 0x94EC", "qtl 0x20 = 0x72CE", "qtle 0x20 = 0x7325", "qtlez 0x20 = 0x732C", "qtlh 0x20 = 0x72CE", "qtlq 0x20 = 0x7321", "qtm 0x20 = 0x733E", "qtme 0x20 = 0x733E", "qtmy 0x20 = 0x72C8", "qtn 0x20 = 0x513F", "qtnf 0x20 = 0x72C3", "qtnh 0x20 = 0x7338", "qtny 0x20 = 0x5915", "qtnz 0x20 = 0x52F9", "qto 0x20 = 0x9539", "qtop 0x20 = 0x9016", "qtoy 0x20 = 0x72C4", "qtoyz 0x20 = 0x9539", "qtp 0x20 = 0x72DE", "qtpf 0x20 = 0x72E9", "qtps 0x20 = 0x72DE", "qtq 0x20 = 0x72D7", "qtqh 0x20 = 0x72F0", "qtqhz 0x20 = 0x736C", "qtqk 0x20 = 0x72D7", "qtqn 0x20 = 0x72CD", "qtr 0x20 = 0x72D0", "qtrt 0x20 = 0x9507", "qtry 0x20 = 0x72D0", "qts 0x20 = 0x7339", "qtsg 0x20 = 0x7339", "qtt 0x20 = 0x7301", "qttj 0x20 = 0x7301", "qtto 0x20 = 0x736F", "qtu 0x20 = 0x72E1", "qtuj 0x20 = 0x7350", "qtuq 0x20 = 0x72E1", "qtuqz 0x20 = 0x734D", "qtv 0x20 = 0x72E0", "qtvb 0x20 = 0x537F", "qtve 0x20 = 0x72E0", "qtvn 0x20 = 0x72B0", "qtvq 0x20 = 0x730A", "qtw 0x20 = 0x7334", "qtwc 0x20 = 0x72EF", "qtwd 0x20 = 0x7334", "qtwi 0x20 = 0x7303", "qtwk 0x20 = 0x731E", "qtwt 0x20 = 0x72F3", "qtx 0x20 = 0x72D2", "qtxf 0x20 = 0x72F4", "qtxi 0x20 = 0x7315", "qtxj 0x20 = 0x72D2", "qty 0x20 = 0x72FC", "qtyd 0x20 = 0x72F1", "qtye 0x20 = 0x72FC", "qtyf 0x20 = 0x731D", "qtyg 0x20 = 0x72FA", "qtyt 0x20 = 0x72B7", "qu 0x20 = 0x5300", "qud 0x20 = 0x5300", "qudb 0x20 = 0x9529", "quf 0x20 = 0x94AD", "qufh 0x20 = 0x94AD", "qug 0x20 = 0x9541", "quga 0x20 = 0x950E", "qugd 0x20 = 0x9541", "qugi 0x20 = 0x9567", "quh 0x20 = 0x950C", "quj 0x20 = 0x955C", "qujg 0x20 = 0x950F", "qujn 0x20 = 0x9571", "qujq 0x20 = 0x955C", "quk 0x20 = 0x9510", "qukg 0x20 = 0x952B", "qukq 0x20 = 0x9510", "qum 0x20 = 0x955D", "qumd 0x20 = 0x955D", "qun 0x20 = 0x9494", "quo 0x20 = 0x9568", "quoj 0x20 = 0x9568", "qup 0x20 = 0x9551", "qupy 0x20 = 0x9551", "quq 0x20 = 0x94F0", "quqf 0x20 = 0x9535", "quqy 0x20 = 0x94F0", "qut 0x20 = 0x94F2", "qutt 0x20 = 0x94F2", "quw 0x20 = 0x9552", "quwl 0x20 = 0x9552", "qux 0x20 = 0x9511", "quxt 0x20 = 0x9511", "qv 0x20 = 0x4E89", "qvb 0x20 = 0x90B9", "qvbh 0x20 = 0x90B9", "qve 0x20 = 0x94F6", "qvey 0x20 = 0x94F6", "qvf 0x20 = 0x520D", "qvfp 0x20 = 0x952E", "qvg 0x20 = 0x9495", "qvh 0x20 = 0x4E89", "qvhc 0x20 = 0x76B1", "qvhcz 0x20 = 0x953C", "qvhj 0x20 = 0x4E89", "qvk 0x20 = 0x94F7", "qvkg 0x20 = 0x94F7", "qvl 0x20 = 0x9531", "qvlg 0x20 = 0x9531", "qvn 0x20 = 0x6025", "qvnu 0x20 = 0x6025", "qvp 0x20 = 0x9513", "qvpc 0x20 = 0x9513", "qvt 0x20 = 0x715E", "qvto 0x20 = 0x715E", "qvw 0x20 = 0x96CF", "qvwy 0x20 = 0x96CF", "qw 0x20 = 0x6B20", "qwd 0x20 = 0x953B", "qwdc 0x20 = 0x953B", "qwg 0x20 = 0x94E8", "qwgg 0x20 = 0x94E8", "qwgk 0x20 = 0x94EA", "qwgr 0x20 = 0x954E", "qwgu 0x20 = 0x956B", "qwu 0x20 = 0x6B20", "qww 0x20 = 0x9509", "qwwf 0x20 = 0x9509", "qwx 0x20 = 0x94E7", "qwxf 0x20 = 0x94E7", "qwy 0x20 = 0x9525", "qwyc 0x20 = 0x94C3", "qwye 0x20 = 0x98E7", "qwyez 0x20 = 0x954C", "qwyg 0x20 = 0x9525", "qwyn 0x20 = 0x94A4", "qxj 0x20 = 0x9544", "qxjm 0x20 = 0x9544", "qxk 0x20 = 0x956A", "qxkj 0x20 = 0x956A", "qxx 0x20 = 0x9534", "qxxr 0x20 = 0x9534", "qy 0x20 = 0x4E45", "qya 0x20 = 0x9540", "qyac 0x20 = 0x9540", "qyb 0x20 = 0x9566", "qybt 0x20 = 0x9566", "qyc 0x20 = 0x94F3", "qycq 0x20 = 0x94F3", "qycqz 0x20 = 0x950D", "qyd 0x20 = 0x8A07", "qye 0x20 = 0x94F1", "qyey 0x20 = 0x94F1", "qyeyz 0x20 = 0x953F", "qyi 0x20 = 0x4E45", "qyiz 0x20 = 0x52FA", "qyk 0x20 = 0x9576", "qyke 0x20 = 0x9576", "qym 0x20 = 0x9550", "qymh 0x20 = 0x94C8", "qymk 0x20 = 0x9550", "qymn 0x20 = 0x94AA", "qyn 0x20 = 0x94AB", "qync 0x20 = 0x9E71", "qyne 0x20 = 0x8885", "qyng 0x20 = 0x9E1F", "qynm 0x20 = 0x5C9B", "qynmz 0x20 = 0x51EB", "qyno 0x20 = 0x9573", "qyns 0x20 = 0x67AD", "qynx 0x20 = 0x9E35", "qyo 0x20 = 0x7078", "qyou 0x20 = 0x7078", "qyt 0x20 = 0x5375", "qytb 0x20 = 0x5B75", "qytd 0x20 = 0x955E", "qyth 0x20 = 0x955F", "qyty 0x20 = 0x5375", "qyuo 0x20 = 0x9570", "qyv 0x20 = 0x8D38", "qyve 0x20 = 0x9512", "qyvh 0x20 = 0x955B", "qyvl 0x20 = 0x7559", "qyvm 0x20 = 0x8D38", "qyvp 0x20 = 0x905B", "qyx 0x20 = 0x94C9", "qyxy 0x20 = 0x94C9", "r 0x20 = 0x7684", "ra 0x20 = 0x627E", "raa 0x20 = 0x62ED", "raag 0x20 = 0x62ED", "rab 0x20 = 0x7682", "rad 0x20 = 0x6495", "radr 0x20 = 0x6495", "rae 0x20 = 0x6492", "raet 0x20 = 0x6492", "rag 0x20 = 0x625B", "raj 0x20 = 0x63AA", "rajd 0x20 = 0x6478", "rajg 0x20 = 0x63AA", "rajv 0x20 = 0x63E0", "ral 0x20 = 0x63CF", "ralg 0x20 = 0x63CF", "ran 0x20 = 0x62D2", "rang 0x20 = 0x62D2", "rans 0x20 = 0x63F2", "ranw 0x20 = 0x62E3", "rap 0x20 = 0x635E", "rapl 0x20 = 0x635E", "raq 0x20 = 0x62A0", "raqy 0x20 = 0x62A0", "rat 0x20 = 0x627E", "ratq 0x20 = 0x6320", "raw 0x20 = 0x62F1", "rawk 0x20 = 0x642D", "raws 0x20 = 0x643D", "rawy 0x20 = 0x62F1", "rb 0x20 = 0x62A5", "rbb 0x20 = 0x63F6", "rbbh 0x20 = 0x63F6", "rbc 0x20 = 0x62A5", "rbcc 0x20 = 0x6444", "rbcy 0x20 = 0x62A5", "rbi 0x20 = 0x62EF", "rbig 0x20 = 0x62EF", "rbm 0x20 = 0x62D9", "rbmh 0x20 = 0x62D9", "rc 0x20 = 0x53CD", "rca 0x20 = 0x62DA", "rcah 0x20 = 0x62DA", "rcb 0x20 = 0x6292", "rcbh 0x20 = 0x6292", "rcbs 0x20 = 0x63C9", "rcc 0x20 = 0x6387", "rccc 0x20 = 0x6387", "rccs 0x20 = 0x6421", "rcd 0x20 = 0x63BA", "rcde 0x20 = 0x63BA", "rce 0x20 = 0x6345", "rceh 0x20 = 0x6345", "rcf 0x20 = 0x62E9", "rcfh 0x20 = 0x62E9", "rci 0x20 = 0x53CD", "rck 0x20 = 0x62AC", "rckg 0x20 = 0x62AC", "rcn 0x20 = 0x628A", "rcp 0x20 = 0x8FD4", "rcpi 0x20 = 0x8FD4", "rct 0x20 = 0x6328", "rctd 0x20 = 0x6328", "rcw 0x20 = 0x644A", "rcwy 0x20 = 0x644A", "rcy 0x20 = 0x74DC", "rcyi 0x20 = 0x74DC", "rcyj 0x20 = 0x6414", "rcyw 0x20 = 0x74DE", "rd 0x20 = 0x62D3", "rdb 0x20 = 0x627C", "rdbn 0x20 = 0x627C", "rdc 0x20 = 0x62D4", "rdcy 0x20 = 0x62D4", "rdf 0x20 = 0x632F", "rdfe 0x20 = 0x632F", "rdff 0x20 = 0x6371", "rdfh 0x20 = 0x62DC", "rdfi 0x20 = 0x637A", "rdfj 0x20 = 0x768B", "rdfn 0x20 = 0x7FF1", "rdfnz 0x20 = 0x630E", "rdg 0x20 = 0x62D3", "rdgn 0x20 = 0x64BC", "rdj 0x20 = 0x6392", "rdjd 0x20 = 0x6392", "rdjn 0x20 = 0x63A9", "rdm 0x20 = 0x9880", "rdmy 0x20 = 0x9880", "rdn 0x20 = 0x6270", "rdnn 0x20 = 0x6270", "rdp 0x20 = 0x631E", "rdpy 0x20 = 0x631E", "rds 0x20 = 0x638E", "rdsk 0x20 = 0x638E", "rdu 0x20 = 0x64A9", "rdui 0x20 = 0x64A9", "rduw 0x20 = 0x6485", "rdw 0x20 = 0x6367", "rdwd 0x20 = 0x63CD", "rdwh 0x20 = 0x6367", "rdx 0x20 = 0x62E2", "rdxn 0x20 = 0x62E2", "re 0x20 = 0x6254", "ref 0x20 = 0x63F4", "refc 0x20 = 0x63F4", "refy 0x20 = 0x634B", "reh 0x20 = 0x62E5", "ren 0x20 = 0x6254", "rep 0x20 = 0x6388", "repc 0x20 = 0x6388", "rer 0x20 = 0x6447", "rerm 0x20 = 0x6447", "rf 0x20 = 0x6301", "rfc 0x20 = 0x6280", "rfcy 0x20 = 0x6280", "rff 0x20 = 0x6301", "rffg 0x20 = 0x6302", "rffy 0x20 = 0x6301", "rfh 0x20 = 0x76FE", "rfhd 0x20 = 0x76FE", "rfhp 0x20 = 0x9041", "rfj 0x20 = 0x64C0", "rfjf 0x20 = 0x64C0", "rfk 0x20 = 0x62EE", "rfkg 0x20 = 0x62EE", "rfkm 0x20 = 0x64B7", "rfl 0x20 = 0x64C2", "rflg 0x20 = 0x64C2", "rfm 0x20 = 0x8D28", "rfmi 0x20 = 0x8D28", "rfn 0x20 = 0x629F", "rfny 0x20 = 0x629F", "rfp 0x20 = 0x631D", "rfpy 0x20 = 0x631D", "rfq 0x20 = 0x629A", "rfqn 0x20 = 0x629A", "rft 0x20 = 0x62F7", "rftn 0x20 = 0x62F7", "rfw 0x20 = 0x6276", "rfwl 0x20 = 0x64B5", "rfwy 0x20 = 0x6276", "rfwyz 0x20 = 0x6509", "rg 0x20 = 0x540E", "rgb 0x20 = 0x90B1", "rgbh 0x20 = 0x90B1", "rgbv 0x20 = 0x536E", "rgd 0x20 = 0x4E18", "rgdn 0x20 = 0x63AD", "rge 0x20 = 0x6355", "rgef 0x20 = 0x640F", "rgey 0x20 = 0x6355", "rgf 0x20 = 0x7687", "rgh 0x20 = 0x624C", "rghg 0x20 = 0x624C", "rgk 0x20 = 0x540E", "rgkd 0x20 = 0x540E", "rgke 0x20 = 0x652E", "rgkg 0x20 = 0x6342", "rgkp 0x20 = 0x9005", "rgm 0x20 = 0x5CB3", "rgmj 0x20 = 0x5CB3", "rgp 0x20 = 0x9051", "rgpd 0x20 = 0x9051", "rgs 0x20 = 0x62B9", "rgsy 0x20 = 0x62B9", "rgt 0x20 = 0x4E52", "rgtr 0x20 = 0x4E52", "rgu 0x20 = 0x631F", "rguh 0x20 = 0x62A8", "rguw 0x20 = 0x631F", "rgv 0x20 = 0x6377", "rgvh 0x20 = 0x6377", "rgw 0x20 = 0x5175", "rgwu 0x20 = 0x5175", "rgy 0x20 = 0x4E53", "rgyu 0x20 = 0x4E53", "rh 0x20 = 0x5E74", "rha 0x20 = 0x63B3", "rhal 0x20 = 0x63B3", "rhan 0x20 = 0x6445", "rhb 0x20 = 0x5378", "rhbh 0x20 = 0x5378", "rhc 0x20 = 0x62AB", "rhcy 0x20 = 0x62AB", "rhf 0x20 = 0x770B", "rhfk 0x20 = 0x5E74", "rhg 0x20 = 0x626F", "rhh 0x20 = 0x652B", "rhhc 0x20 = 0x652B", "rhj 0x20 = 0x6389", "rhjh 0x20 = 0x6389", "rhk 0x20 = 0x725B", "rhkg 0x20 = 0x62C8", "rhy 0x20 = 0x6251", "rhyc 0x20 = 0x722C", "rhyi 0x20 = 0x722A", "ri 0x20 = 0x6731", "rib 0x20 = 0x90BE", "ribh 0x20 = 0x90BE", "rie 0x20 = 0x634E", "rieg 0x20 = 0x634E", "rii 0x20 = 0x6731", "rip 0x20 = 0x6491", "ripq 0x20 = 0x6405", "ripr 0x20 = 0x6491", "riq 0x20 = 0x6311", "riqn 0x20 = 0x6311", "rit 0x20 = 0x6284", "ritt 0x20 = 0x6284", "riu 0x20 = 0x6CC9", "riv 0x20 = 0x6321", "rivg 0x20 = 0x6321", "rj 0x20 = 0x63D0", "rjb 0x20 = 0x64AE", "rjbc 0x20 = 0x64AE", "rjf 0x20 = 0x634D", "rjfg 0x20 = 0x634F", "rjfh 0x20 = 0x634D", "rjg 0x20 = 0x62C5", "rjgg 0x20 = 0x62C5", "rjgh 0x20 = 0x63D0", "rjh 0x20 = 0x62BB", "rjhh 0x20 = 0x62BB", "rjq 0x20 = 0x63ED", "rjqn 0x20 = 0x63ED", "rjt 0x20 = 0x63FD", "rjtq 0x20 = 0x63FD", "rjx 0x20 = 0x62FD", "rjxt 0x20 = 0x62FD", "rk 0x20 = 0x6263", "rkb 0x20 = 0x63D6", "rkbg 0x20 = 0x63D6", "rkc 0x20 = 0x6339", "rkcn 0x20 = 0x6339", "rke 0x20 = 0x6350", "rkeg 0x20 = 0x6350", "rkg 0x20 = 0x6263", "rkh 0x20 = 0x6349", "rkhy 0x20 = 0x6349", "rkk 0x20 = 0x64CD", "rkks 0x20 = 0x64CD", "rkl 0x20 = 0x62D0", "rklj 0x20 = 0x634C", "rkln 0x20 = 0x62D0", "rkm 0x20 = 0x635F", "rkmy 0x20 = 0x635F", "rl 0x20 = 0x62BC", "rld 0x20 = 0x6441", "rldn 0x20 = 0x6441", "rlf 0x20 = 0x6446", "rlfc 0x20 = 0x6446", "rlg 0x20 = 0x821E", "rlge 0x20 = 0x64D0", "rlgh 0x20 = 0x821E", "rlgy 0x20 = 0x63B4", "rlh 0x20 = 0x62BC", "rls 0x20 = 0x6346", "rlsy 0x20 = 0x6346", "rlt 0x20 = 0x6482", "rltk 0x20 = 0x6482", "rlx 0x20 = 0x645E", "rlxi 0x20 = 0x645E", "rm 0x20 = 0x62BD", "rma 0x20 = 0x7F38", "rmag 0x20 = 0x7F38", "rmay 0x20 = 0x7F50", "rmc 0x20 = 0x6295", "rmcy 0x20 = 0x6295", "rmd 0x20 = 0x63E3", "rmdj 0x20 = 0x63E3", "rmg 0x20 = 0x62BD", "rmh 0x20 = 0x5E1B", "rmhh 0x20 = 0x7F45", "rmhj 0x20 = 0x5236", "rmhjz 0x20 = 0x5E1B", "rmhr 0x20 = 0x63A3", "rmk 0x20 = 0x7F36", "rmm 0x20 = 0x6484", "rmmv 0x20 = 0x6484", "rmn 0x20 = 0x7F3A", "rmnn 0x20 = 0x7691", "rmnw 0x20 = 0x7F3A", "rmw 0x20 = 0x6467", "rmwy 0x20 = 0x6467", "rn 0x20 = 0x6240", "rna 0x20 = 0x62BF", "rnae 0x20 = 0x640C", "rnan 0x20 = 0x62BF", "rnb 0x20 = 0x6C14", "rnbm 0x20 = 0x6398", "rnbt 0x20 = 0x6496", "rnc 0x20 = 0x6C22", "rnca 0x20 = 0x6C22", "rnd 0x20 = 0x636E", "rndg 0x20 = 0x636E", "rndq 0x20 = 0x6C2A", "rne 0x20 = 0x6C16", "rnev 0x20 = 0x6C16", "rnf 0x20 = 0x626D", "rnfg 0x20 = 0x626D", "rng 0x20 = 0x63E1", "rnge 0x20 = 0x6C30", "rngf 0x20 = 0x63E1", "rngg 0x20 = 0x6C29", "rnj 0x20 = 0x6C18", "rnjj 0x20 = 0x6C18", "rnjl 0x20 = 0x6C32", "rnk 0x20 = 0x64D7", "rnkj 0x20 = 0x6C1A", "rnku 0x20 = 0x64D7", "rnl 0x20 = 0x6C24", "rnld 0x20 = 0x6C24", "rnm 0x20 = 0x6C19", "rnmj 0x20 = 0x6C19", "rnn 0x20 = 0x624E", "rnnw 0x20 = 0x64B0", "rno 0x20 = 0x6C2E", "rnoo 0x20 = 0x6C2E", "rnp 0x20 = 0x6C28", "rnpv 0x20 = 0x6C28", "rnr 0x20 = 0x626C", "rnrg 0x20 = 0x647A", "rnrh 0x20 = 0x6240", "rnrt 0x20 = 0x626C", "rnt 0x20 = 0x62E8", "rntr 0x20 = 0x6C15", "rntu 0x20 = 0x6C21", "rnty 0x20 = 0x62E8", "rnua 0x20 = 0x6452", "rnud 0x20 = 0x6C27", "rnv 0x20 = 0x6C2F", "rnvi 0x20 = 0x6C2F", "rnw 0x20 = 0x6C1B", "rnwv 0x20 = 0x6C1B", "rnwy 0x20 = 0x6289", "rnwyz 0x20 = 0x64E2", "rnx 0x20 = 0x6C1F", "rnxj 0x20 = 0x6C1F", "rny 0x20 = 0x62DF", "rnyw 0x20 = 0x62DF", "rnywz 0x20 = 0x6C26", "ro 0x20 = 0x6402", "rov 0x20 = 0x6402", "rovg 0x20 = 0x6402", "rovt 0x20 = 0x64DE", "rp 0x20 = 0x8FD1", "rpd 0x20 = 0x8FEB", "rpf 0x20 = 0x7696", "rpfq 0x20 = 0x7696", "rpg 0x20 = 0x63CE", "rpgg 0x20 = 0x63CE", "rpk 0x20 = 0x8FD1", "rpl 0x20 = 0x6325", "rplh 0x20 = 0x6325", "rpr 0x20 = 0x6448", "rprw 0x20 = 0x6448", "rps 0x20 = 0x62E7", "rpsh 0x20 = 0x62E7", "rpv 0x20 = 0x6309", "rpvg 0x20 = 0x6309", "rpw 0x20 = 0x63A7", "rpwa 0x20 = 0x63A7", "rpwh 0x20 = 0x64BA", "rpwi 0x20 = 0x64E6", "rpwn 0x20 = 0x6316", "rpws 0x20 = 0x63A2", "rq 0x20 = 0x6362", "rqa 0x20 = 0x62B5", "rqay 0x20 = 0x62B5", "rqb 0x20 = 0x6291", "rqbh 0x20 = 0x6291", "rqc 0x20 = 0x9B3C", "rqcc 0x20 = 0x9B51", "rqccz 0x20 = 0x9B43", "rqce 0x20 = 0x9B48", "rqcf 0x20 = 0x9B41", "rqci 0x20 = 0x9B3C", "rqciz 0x20 = 0x9B45", "rqcn 0x20 = 0x9B4D", "rqcw 0x20 = 0x9B49", "rqg 0x20 = 0x64B8", "rqgj 0x20 = 0x64B8", "rqk 0x20 = 0x62D8", "rqkg 0x20 = 0x62D8", "rqkq 0x20 = 0x633D", "rqku 0x20 = 0x6400", "rqm 0x20 = 0x6362", "rqmd 0x20 = 0x6362", "rqn 0x20 = 0x62B1", "rqnn 0x20 = 0x62B1", "rqo 0x20 = 0x63AC", "rqoy 0x20 = 0x63AC", "rqq 0x20 = 0x63FF", "rqqw 0x20 = 0x63FF", "rqr 0x20 = 0x638F", "rqrm 0x20 = 0x638F", "rqv 0x20 = 0x6390", "rqvg 0x20 = 0x6390", "rqvh 0x20 = 0x6323", "rqw 0x20 = 0x6B23", "rqwy 0x20 = 0x6B23", "rqy 0x20 = 0x7684", "rqym 0x20 = 0x6363", "rqyy 0x20 = 0x7684", "rr 0x20 = 0x6298", "rrc 0x20 = 0x6273", "rrcy 0x20 = 0x6273", "rrcyz 0x20 = 0x7688", "rrg 0x20 = 0x62CD", "rrh 0x20 = 0x6298", "rrhm 0x20 = 0x640B", "rrhy 0x20 = 0x6293", "rrj 0x20 = 0x8707", "rrju 0x20 = 0x8707", "rrk 0x20 = 0x54F2", "rrkf 0x20 = 0x54F2", "rrkh 0x20 = 0x8E05", "rrp 0x20 = 0x901D", "rrpk 0x20 = 0x901D", "rrq 0x20 = 0x6380", "rrqc 0x20 = 0x9B44", "rrqw 0x20 = 0x6380", "rrr 0x20 = 0x767D", "rrrr 0x20 = 0x767D", "rrt 0x20 = 0x636D", "rrtf 0x20 = 0x636D", "rry 0x20 = 0x62C6", "rryf 0x20 = 0x8A93", "rryy 0x20 = 0x62C6", "rs 0x20 = 0x6253", "rsh 0x20 = 0x6253", "rsj 0x20 = 0x63F8", "rsjg 0x20 = 0x63F8", "rt 0x20 = 0x624B", "rta 0x20 = 0x6258", "rtan 0x20 = 0x6258", "rtb 0x20 = 0x62D6", "rtbn 0x20 = 0x62D6", "rtd 0x20 = 0x62EC", "rtdg 0x20 = 0x62EC", "rtdj 0x20 = 0x6322", "rte 0x20 = 0x642C", "rtec 0x20 = 0x642C", "rtf 0x20 = 0x63D2", "rtfb 0x20 = 0x90EB", "rtfg 0x20 = 0x9E4E", "rtfh 0x20 = 0x6266", "rtfj 0x20 = 0x5351", "rtfk 0x20 = 0x7693", "rtfm 0x20 = 0x6512", "rtfn 0x20 = 0x64AC", "rtfp 0x20 = 0x633A", "rtfv 0x20 = 0x63D2", "rtg 0x20 = 0x624B", "rtgf 0x20 = 0x6376", "rtgh 0x20 = 0x624B", "rth 0x20 = 0x64E4", "rthi 0x20 = 0x6525", "rthj 0x20 = 0x64E4", "rto 0x20 = 0x63EA", "rtol 0x20 = 0x64AD", "rtolz 0x20 = 0x76A4", "rtoy 0x20 = 0x63EA", "rtt 0x20 = 0x65A4", "rtth 0x20 = 0x65A4", "ru 0x20 = 0x62C9", "rua 0x20 = 0x62FC", "ruah 0x20 = 0x62FC", "rub 0x20 = 0x6420", "rube 0x20 = 0x6420", "rud 0x20 = 0x6413", "ruda 0x20 = 0x6413", "rudb 0x20 = 0x63B7", "ruf 0x20 = 0x62E6", "rufg 0x20 = 0x62E6", "rufh 0x20 = 0x6296", "rufhz 0x20 = 0x62CC", "rug 0x20 = 0x62C9", "ruj 0x20 = 0x649E", "rujf 0x20 = 0x649E", "rujfz 0x20 = 0x63B8", "rujg 0x20 = 0x63DE", "ruk 0x20 = 0x638A", "rukg 0x20 = 0x638A", "rum 0x20 = 0x6458", "rumd 0x20 = 0x6458", "rumt 0x20 = 0x6487", "run 0x20 = 0x626A", "ruq 0x20 = 0x768E", "ruqy 0x20 = 0x768E", "rus 0x20 = 0x6499", "rusf 0x20 = 0x6499", "rut 0x20 = 0x6401", "ruv 0x20 = 0x63A5", "ruvg 0x20 = 0x63A5", "ruvo 0x20 = 0x641B", "rv 0x20 = 0x626B", "rvf 0x20 = 0x632A", "rvfb 0x20 = 0x632A", "rvg 0x20 = 0x626B", "rvh 0x20 = 0x641C", "rvhc 0x20 = 0x641C", "rvk 0x20 = 0x62DB", "rvkg 0x20 = 0x62DB", "rvl 0x20 = 0x629B", "rvln 0x20 = 0x629B", "rvn 0x20 = 0x6BB7", "rvnc 0x20 = 0x6BB7", "rvq 0x20 = 0x62F6", "rvqy 0x20 = 0x62F6", "rvt 0x20 = 0x6343", "rvtk 0x20 = 0x6343", "rvy 0x20 = 0x6267", "rvyf 0x20 = 0x57AB", "rvyg 0x20 = 0x9E37", "rvyi 0x20 = 0x7D77", "rvyj 0x20 = 0x86F0", "rvyl 0x20 = 0x52BF", "rvym 0x20 = 0x8D3D", "rvyo 0x20 = 0x70ED", "rvyr 0x20 = 0x631A", "rvyy 0x20 = 0x6267", "rw 0x20 = 0x5931", "rwb 0x20 = 0x62A2", "rwbn 0x20 = 0x62A2", "rwf 0x20 = 0x62CA", "rwfy 0x20 = 0x62CA", "rwg 0x20 = 0x62F4", "rwgd 0x20 = 0x63C6", "rwgg 0x20 = 0x62F4", "rwgi 0x20 = 0x6361", "rwgj 0x20 = 0x63C4", "rwgk 0x20 = 0x62FE", "rwgr 0x20 = 0x643F", "rwi 0x20 = 0x5931", "rwp 0x20 = 0x8FED", "rwpi 0x20 = 0x8FED", "rwv 0x20 = 0x626E", "rwvn 0x20 = 0x626E", "rwvr 0x20 = 0x63B0", "rww 0x20 = 0x632B", "rwwf 0x20 = 0x632B", "rwx 0x20 = 0x62A1", "rwxn 0x20 = 0x62A1", "rwy 0x20 = 0x6252", "rwyc 0x20 = 0x64D2", "rwycz 0x20 = 0x62CE", "rwye 0x20 = 0x643A", "rwyg 0x20 = 0x63A8", "rwyn 0x20 = 0x637B", "rx 0x20 = 0x6279", "rxe 0x20 = 0x63BE", "rxey 0x20 = 0x63BE", "rxf 0x20 = 0x63BC", "rxfm 0x20 = 0x63BC", "rxg 0x20 = 0x62C7", "rxgu 0x20 = 0x62C7", "rxj 0x20 = 0x6307", "rxjg 0x20 = 0x6307", "rxjh 0x20 = 0x62C2", "rxl 0x20 = 0x62D7", "rxln 0x20 = 0x62D7", "rxu 0x20 = 0x6426", "rxuu 0x20 = 0x6426", "rxx 0x20 = 0x6279", "rxxn 0x20 = 0x6279", "rxxr 0x20 = 0x63E9", "ry 0x20 = 0x6269", "rya 0x20 = 0x646D", "ryao 0x20 = 0x646D", "ryc 0x20 = 0x64A4", "ryct 0x20 = 0x64A4", "ryg 0x20 = 0x62C4", "rygg 0x20 = 0x62C4", "ryh 0x20 = 0x6382", "ryhk 0x20 = 0x6382", "ryi 0x20 = 0x65A5", "ryiy 0x20 = 0x63A0", "ryj 0x20 = 0x6324", "ryjh 0x20 = 0x6324", "ryk 0x20 = 0x6518", "ryke 0x20 = 0x6518", "ryl 0x20 = 0x64C5", "rylg 0x20 = 0x64C5", "rym 0x20 = 0x641E", "rymk 0x20 = 0x641E", "rymn 0x20 = 0x6297", "ryn 0x20 = 0x62A4", "rynd 0x20 = 0x6369", "ryne 0x20 = 0x63AE", "rynt 0x20 = 0x62A4", "ryt 0x20 = 0x6269", "rytp 0x20 = 0x9080", "ryty 0x20 = 0x656B", "ryv 0x20 = 0x642A", "ryvk 0x20 = 0x642A", "ryw 0x20 = 0x6396", "rywy 0x20 = 0x6396", "ryx 0x20 = 0x6454", "ryxf 0x20 = 0x6454", "ryxl 0x20 = 0x6410", "s 0x20 = 0x8981", "sa 0x20 = 0x68B0", "saa 0x20 = 0x68B0", "saah 0x20 = 0x68B0", "sab 0x20 = 0x6809", "sabh 0x20 = 0x6809", "sad 0x20 = 0x68CB", "sadd 0x20 = 0x69A7", "sadn 0x20 = 0x6939", "sadw 0x20 = 0x68CB", "saf 0x20 = 0x67D1", "safg 0x20 = 0x67D1", "sag 0x20 = 0x6760", "sagg 0x20 = 0x6846", "sai 0x20 = 0x680B", "saiy 0x20 = 0x680B", "saj 0x20 = 0x6A21", "sajd 0x20 = 0x6A21", "sak 0x20 = 0x69FF", "sakg 0x20 = 0x69FF", "sam 0x20 = 0x6A2A", "samw 0x20 = 0x6A2A", "san 0x20 = 0x67DC", "sang 0x20 = 0x67DC", "sap 0x20 = 0x6AAC", "sape 0x20 = 0x6AAC", "saq 0x20 = 0x67A2", "saqy 0x20 = 0x67A2", "saqyz 0x20 = 0x67E9", "saqz 0x20 = 0x67E9", "sat 0x20 = 0x6861", "satq 0x20 = 0x6861", "sb 0x20 = 0x674E", "sbb 0x20 = 0x6930", "sbbh 0x20 = 0x6930", "sbd 0x20 = 0x692D", "sbde 0x20 = 0x692D", "sbf 0x20 = 0x674E", "sc 0x20 = 0x6743", "scb 0x20 = 0x677C", "scbh 0x20 = 0x677C", "scbk 0x20 = 0x6A58", "scbn 0x20 = 0x61CB", "sce 0x20 = 0x6876", "sceh 0x20 = 0x6876", "scf 0x20 = 0x6811", "scfg 0x20 = 0x67FD", "scfy 0x20 = 0x6811", "scg 0x20 = 0x6769", "scn 0x20 = 0x6777", "scw 0x20 = 0x68AD", "scwt 0x20 = 0x68AD", "scy 0x20 = 0x6743", "scyy 0x20 = 0x6748", "sd 0x20 = 0x67AF", "sdg 0x20 = 0x67AF", "sdgf 0x20 = 0x6A71", "sdgz 0x20 = 0x67D8", "sdh 0x20 = 0x6954", "sdhd 0x20 = 0x6954", "sdht 0x20 = 0x69ED", "sdl 0x20 = 0x67A5", "sdln 0x20 = 0x67A5", "sdm 0x20 = 0x9876", "sdmy 0x20 = 0x9876", "sds 0x20 = 0x6905", "sdsk 0x20 = 0x6905", "sdt 0x20 = 0x6886", "sdtb 0x20 = 0x6886", "sdu 0x20 = 0x6A5B", "sduw 0x20 = 0x6A5B", "sdw 0x20 = 0x68D2", "sdwd 0x20 = 0x6971", "sdwh 0x20 = 0x68D2", "sdwj 0x20 = 0x693F", "sdwt 0x20 = 0x699B", "sdx 0x20 = 0x680A", "sdxn 0x20 = 0x680A", "sdy 0x20 = 0x6756", "sdyy 0x20 = 0x6756", "se 0x20 = 0x6781", "seb 0x20 = 0x6874", "sebg 0x20 = 0x6874", "seci 0x20 = 0x6979", "see 0x20 = 0x68DA", "seeg 0x20 = 0x68DA", "set 0x20 = 0x6749", "sey 0x20 = 0x6781", "seyy 0x20 = 0x6781", "sf 0x20 = 0x6751", "sfb 0x20 = 0x9104", "sfbh 0x20 = 0x9104", "sfc 0x20 = 0x679D", "sfcy 0x20 = 0x679D", "sff 0x20 = 0x6842", "sffg 0x20 = 0x6842", "sffn 0x20 = 0x6A17", "sfg 0x20 = 0x675C", "sfgn 0x20 = 0x7504", "sfh 0x20 = 0x6746", "sfhg 0x20 = 0x690D", "sfht 0x20 = 0x6A3E", "sfi 0x20 = 0x6807", "sfij 0x20 = 0x527D", "sfiq 0x20 = 0x98D8", "sfiu 0x20 = 0x7968", "sfiuz 0x20 = 0x67F0", "sfiy 0x20 = 0x6807", "sfiyz 0x20 = 0x74E2", "sfk 0x20 = 0x6854", "sfkg 0x20 = 0x6854", "sfl 0x20 = 0x6A91", "sflg 0x20 = 0x6A91", "sfm 0x20 = 0x6960", "sfmf 0x20 = 0x6960", "sfn 0x20 = 0x691F", "sfnd 0x20 = 0x691F", "sft 0x20 = 0x6750", "sftj 0x20 = 0x696E", "sftn 0x20 = 0x6832", "sftt 0x20 = 0x6750", "sftx 0x20 = 0x6833", "sfu 0x20 = 0x6A2F", "sfuk 0x20 = 0x6A2F", "sfw 0x20 = 0x68F1", "sfwt 0x20 = 0x68F1", "sfy 0x20 = 0x6751", "sg 0x20 = 0x672C", "sga 0x20 = 0x918B", "sgaf 0x20 = 0x9163", "sgag 0x20 = 0x919B", "sgaj 0x20 = 0x918B", "sgb 0x20 = 0x914F", "sgbn 0x20 = 0x914F", "sgc 0x20 = 0x9178", "sgcf 0x20 = 0x684E", "sgct 0x20 = 0x9178", "sgd 0x20 = 0x672C", "sgde 0x20 = 0x9190", "sgdg 0x20 = 0x9164", "sgdl 0x20 = 0x91A2", "sgdy 0x20 = 0x915E", "sgdz 0x20 = 0x9149", "sge 0x20 = 0x9179", "sgef 0x20 = 0x9179", "sgf 0x20 = 0x915D", "sgfb 0x20 = 0x9175", "sgfc 0x20 = 0x915D", "sgfh 0x20 = 0x9150", "sgfy 0x20 = 0x914E", "sgg 0x20 = 0x6789", "sggd 0x20 = 0x917D", "sggy 0x20 = 0x917E", "sgh 0x20 = 0x4E01", "sghe 0x20 = 0x91B5", "sghg 0x20 = 0x897F", "sgi 0x20 = 0x676F", "sgiy 0x20 = 0x676F", "sgj 0x20 = 0x9192", "sgjg 0x20 = 0x9192", "sgjgz 0x20 = 0x6853", "sgjh 0x20 = 0x918D", "sgjx 0x20 = 0x918C", "sgk 0x20 = 0x68A7", "sgkg 0x20 = 0x68A7", "sgkgz 0x20 = 0x9172", "sgl 0x20 = 0x695D", "sgli 0x20 = 0x695D", "sgm 0x20 = 0x67C4", "sgmj 0x20 = 0x69FD", "sgmk 0x20 = 0x916E", "sgmu 0x20 = 0x91B4", "sgmw 0x20 = 0x67C4", "sgn 0x20 = 0x914D", "sgne 0x20 = 0x91AA", "sgnez 0x20 = 0x9191", "sgnn 0x20 = 0x914D", "sgnnz 0x20 = 0x673D", "sgo 0x20 = 0x919A", "sgog 0x20 = 0x6860", "sgop 0x20 = 0x919A", "sgoy 0x20 = 0x91AD", "sgp 0x20 = 0x9161", "sgpx 0x20 = 0x9161", "sgq 0x20 = 0x914C", "sgqb 0x20 = 0x9157", "sgqk 0x20 = 0x9169", "sgqn 0x20 = 0x674C", "sgqy 0x20 = 0x914C", "sgs 0x20 = 0x914A", "sgsh 0x20 = 0x914A", "sgt 0x20 = 0x6808", "sgtf 0x20 = 0x9162", "sgtk 0x20 = 0x9177", "sgtkz 0x20 = 0x916A", "sgto 0x20 = 0x91BA", "sgtq 0x20 = 0x9170", "sgtu 0x20 = 0x9176", "sgty 0x20 = 0x9165", "sgu 0x20 = 0x67B0", "sguh 0x20 = 0x67B0", "sguk 0x20 = 0x9185", "sgw 0x20 = 0x915A", "sgwo 0x20 = 0x91AE", "sgwt 0x20 = 0x9174", "sgwv 0x20 = 0x915A", "sgx 0x20 = 0x916F", "sgxj 0x20 = 0x916F", "sgy 0x20 = 0x9189", "sgyb 0x20 = 0x9187", "sgye 0x20 = 0x917F", "sgyf 0x20 = 0x9189", "sgyh 0x20 = 0x916C", "sgyk 0x20 = 0x91A3", "sgyl 0x20 = 0x91AF", "sh 0x20 = 0x76F8", "shg 0x20 = 0x76F8", "shi 0x20 = 0x6912", "shic 0x20 = 0x6912", "shj 0x20 = 0x68F9", "shjh 0x20 = 0x68F9", "shm 0x20 = 0x6862", "shmy 0x20 = 0x6862", "shn 0x20 = 0x60F3", "shnt 0x20 = 0x680C", "shnu 0x20 = 0x60F3", "shy 0x20 = 0x6734", "si 0x20 = 0x6863", "sie 0x20 = 0x68A2", "sieg 0x20 = 0x68A2", "sii 0x20 = 0x686B", "siit 0x20 = 0x686B", "sip 0x20 = 0x6A18", "sipf 0x20 = 0x6A18", "siq 0x20 = 0x6843", "siqn 0x20 = 0x6843", "siqnz 0x20 = 0x6844", "sit 0x20 = 0x676A", "sitt 0x20 = 0x676A", "siv 0x20 = 0x6863", "sivg 0x20 = 0x6863", "siw 0x20 = 0x6989", "siwh 0x20 = 0x6989", "sj 0x20 = 0x67E5", "sjf 0x20 = 0x6773", "sjg 0x20 = 0x67E5", "sjgf 0x20 = 0x67E5", "sjj 0x20 = 0x8983", "sjn 0x20 = 0x69BB", "sjng 0x20 = 0x69BB", "sjs 0x20 = 0x68F5", "sjsy 0x20 = 0x68F5", "sjt 0x20 = 0x69DB", "sjtl 0x20 = 0x69DB", "sjtq 0x20 = 0x6984", "sjx 0x20 = 0x68CD", "sjxx 0x20 = 0x68CD", "sk 0x20 = 0x53EF", "skb 0x20 = 0x696B", "skbg 0x20 = 0x696B", "skd 0x20 = 0x53EF", "skf 0x20 = 0x674F", "skg 0x20 = 0x67B5", "skgn 0x20 = 0x67B5", "skkk 0x20 = 0x6980", "sks 0x20 = 0x54E5", "sksk 0x20 = 0x54E5", "sksw 0x20 = 0x6B4C", "skw 0x20 = 0x67B3", "skwy 0x20 = 0x67B3", "sl 0x20 = 0x695E", "slh 0x20 = 0x67D9", "slk 0x20 = 0x67B7", "slkg 0x20 = 0x67B7", "slq 0x20 = 0x6924", "slqy 0x20 = 0x6924", "sly 0x20 = 0x695E", "slyn 0x20 = 0x695E", "sm 0x20 = 0x673A", "smg 0x20 = 0x67DA", "smgk 0x20 = 0x6850", "smm 0x20 = 0x6805", "smmg 0x20 = 0x6805", "smmv 0x20 = 0x6A31", "smn 0x20 = 0x673A", "smnn 0x20 = 0x6864", "smq 0x20 = 0x67AB", "smqn 0x20 = 0x67A7", "smqy 0x20 = 0x67AB", "smu 0x20 = 0x8D3E", "smw 0x20 = 0x6798", "smwy 0x20 = 0x6798", "sn 0x20 = 0x6768", "snb 0x20 = 0x6A44", "snbt 0x20 = 0x6A44", "snd 0x20 = 0x6910", "sndg 0x20 = 0x6910", "sng 0x20 = 0x6829", "snh 0x20 = 0x6963", "snhg 0x20 = 0x6963", "sni 0x20 = 0x698D", "snie 0x20 = 0x698D", "snih 0x20 = 0x6A28", "snn 0x20 = 0x672D", "snnz 0x20 = 0x675E", "snr 0x20 = 0x6768", "snrt 0x20 = 0x6768", "so 0x20 = 0x6770", "sou 0x20 = 0x6770", "souz 0x20 = 0x7C9F", "sov 0x20 = 0x697C", "sovg 0x20 = 0x697C", "sp 0x20 = 0x68D5", "spf 0x20 = 0x68D5", "spfi 0x20 = 0x68D5", "spg 0x20 = 0x6966", "spgg 0x20 = 0x6966", "spn 0x20 = 0x68FA", "spnn 0x20 = 0x68FA", "spq 0x20 = 0x6795", "spqn 0x20 = 0x6795", "spr 0x20 = 0x69DF", "sprw 0x20 = 0x69DF", "sps 0x20 = 0x67E0", "spsh 0x20 = 0x67E0", "spv 0x20 = 0x6849", "spvg 0x20 = 0x6849", "spw 0x20 = 0x69A8", "spwf 0x20 = 0x69A8", "spwi 0x20 = 0x6AAB", "spwk 0x20 = 0x6995", "spwy 0x20 = 0x69B7", "spx 0x20 = 0x67C1", "spxn 0x20 = 0x67C1", "sq 0x20 = 0x6784", "sqa 0x20 = 0x67E2", "sqay 0x20 = 0x67E2", "sqc 0x20 = 0x6784", "sqcy 0x20 = 0x6784", "sqd 0x20 = 0x6845", "sqdb 0x20 = 0x6845", "sqdy 0x20 = 0x6A90", "sqe 0x20 = 0x6877", "sqef 0x20 = 0x69F2", "sqeh 0x20 = 0x6877", "sqg 0x20 = 0x6A79", "sqgj 0x20 = 0x6A79", "sqi 0x20 = 0x680E", "sqiy 0x20 = 0x680E", "sqj 0x20 = 0x6A61", "sqje 0x20 = 0x6A61", "sqjq 0x20 = 0x6897", "sqk 0x20 = 0x67B8", "sqkg 0x20 = 0x67B8", "sqq 0x20 = 0x6500", "sqqd 0x20 = 0x6A0A", "sqqr 0x20 = 0x6500", "sqt 0x20 = 0x67F3", "sqtb 0x20 = 0x67F3", "sqy 0x20 = 0x69B4", "sqyl 0x20 = 0x69B4", "sqyy 0x20 = 0x6753", "sr 0x20 = 0x6790", "src 0x20 = 0x677F", "srcy 0x20 = 0x677F", "srd 0x20 = 0x69D4", "srdf 0x20 = 0x69D4", "srg 0x20 = 0x67CF", "srgb 0x20 = 0x6800", "srh 0x20 = 0x6790", "sri 0x20 = 0x682A", "sriy 0x20 = 0x682A", "srm 0x20 = 0x68C9", "srmh 0x20 = 0x68C9", "srq 0x20 = 0x69D0", "srqc 0x20 = 0x69D0", "srr 0x20 = 0x7699", "srrf 0x20 = 0x7699", "sry 0x20 = 0x6A84", "sryt 0x20 = 0x6A84", "sryy 0x20 = 0x67DD", "ss 0x20 = 0x6797", "ssb 0x20 = 0x90F4", "ssbh 0x20 = 0x90F4", "sse 0x20 = 0x5F6C", "sset 0x20 = 0x5F6C", "ssf 0x20 = 0x7981", "ssfi 0x20 = 0x7981", "ssg 0x20 = 0x6816", "ssj 0x20 = 0x6942", "ssjg 0x20 = 0x6942", "ssk 0x20 = 0x67EF", "sskg 0x20 = 0x67EF", "ssm 0x20 = 0x68B5", "ssmy 0x20 = 0x68B5", "ssn 0x20 = 0x695A", "ssnh 0x20 = 0x695A", "sso 0x20 = 0x711A", "ssou 0x20 = 0x711A", "ssq 0x20 = 0x68A6", "ssqu 0x20 = 0x68A6", "sss 0x20 = 0x68EE", "ssss 0x20 = 0x6728", "sssu 0x20 = 0x68EE", "ssu 0x20 = 0x6817", "ssv 0x20 = 0x5A6A", "ssvf 0x20 = 0x5A6A", "ssw 0x20 = 0x68FC", "sswv 0x20 = 0x68FC", "ssy 0x20 = 0x6797", "ssyx 0x20 = 0x9E93", "st 0x20 = 0x683C", "sta 0x20 = 0x67A8", "stay 0x20 = 0x67A8", "std 0x20 = 0x6865", "stdg 0x20 = 0x681D", "stdj 0x20 = 0x6865", "stf 0x20 = 0x6A47", "stfh 0x20 = 0x6775", "stfhz 0x20 = 0x6841", "stfk 0x20 = 0x688F", "stfn 0x20 = 0x6A47", "stfp 0x20 = 0x6883", "stg 0x20 = 0x68F0", "stgf 0x20 = 0x68F0", "sth 0x20 = 0x67DE", "sthf 0x20 = 0x67DE", "stk 0x20 = 0x683C", "stkg 0x20 = 0x683C", "stm 0x20 = 0x69AD", "stmf 0x20 = 0x69AD", "sto 0x20 = 0x6978", "stoy 0x20 = 0x6978", "stt 0x20 = 0x8986", "sttt 0x20 = 0x8986", "stx 0x20 = 0x6885", "stxu 0x20 = 0x6885", "sty 0x20 = 0x679A", "su 0x20 = 0x6837", "sud 0x20 = 0x6837", "suda 0x20 = 0x69CE", "sudh 0x20 = 0x6837", "suf 0x20 = 0x680F", "sufg 0x20 = 0x680F", "suh 0x20 = 0x6893", "suj 0x20 = 0x6A1F", "sujh 0x20 = 0x6A1F", "suk 0x20 = 0x6988", "sukk 0x20 = 0x6988", "sup 0x20 = 0x699C", "supy 0x20 = 0x699C", "suq 0x20 = 0x6821", "suqy 0x20 = 0x6821", "sus 0x20 = 0x6987", "susf 0x20 = 0x6A3D", "susy 0x20 = 0x6987", "sux 0x20 = 0x68AF", "suxt 0x20 = 0x68AF", "sv 0x20 = 0x8981", "svc 0x20 = 0x6982", "svcq 0x20 = 0x6982", "sve 0x20 = 0x6839", "svey 0x20 = 0x6839", "svf 0x20 = 0x8981", "svfp 0x20 = 0x6957", "svg 0x20 = 0x6855", "svi 0x20 = 0x68E3", "sviy 0x20 = 0x68E3", "svo 0x20 = 0x68C2", "svoy 0x20 = 0x68C2", "sw 0x20 = 0x68C0", "swb 0x20 = 0x67AA", "swbn 0x20 = 0x67AA", "swc 0x20 = 0x677E", "swcy 0x20 = 0x677E", "swd 0x20 = 0x6934", "swdc 0x20 = 0x6934", "swf 0x20 = 0x6867", "swfc 0x20 = 0x6867", "swg 0x20 = 0x6813", "swgg 0x20 = 0x6813", "swgi 0x20 = 0x68C0", "swgj 0x20 = 0x6986", "swgu 0x20 = 0x6A59", "swn 0x20 = 0x69CC", "swnp 0x20 = 0x69CC", "sww 0x20 = 0x679E", "swwy 0x20 = 0x679E", "swx 0x20 = 0x6866", "swxf 0x20 = 0x6866", "swyc 0x20 = 0x67C3", "swycz 0x20 = 0x6A8E", "swyf 0x20 = 0x69AB", "swyg 0x20 = 0x690E", "swyo 0x20 = 0x6A35", "sx 0x20 = 0x6977", "sxe 0x20 = 0x693D", "sxey 0x20 = 0x693D", "sxx 0x20 = 0x6977", "sxxe 0x20 = 0x6A7C", "sxxn 0x20 = 0x6787", "sxxr 0x20 = 0x6977", "sy 0x20 = 0x672F", "syb 0x20 = 0x6901", "sybg 0x20 = 0x6901", "syc 0x20 = 0x68B3", "sycq 0x20 = 0x68B3", "syf 0x20 = 0x6869", "syfg 0x20 = 0x6869", "syfj 0x20 = 0x69E0", "syg 0x20 = 0x67F1", "sygg 0x20 = 0x67F1", "syi 0x20 = 0x672F", "syiy 0x20 = 0x690B", "syk 0x20 = 0x69B1", "syke 0x20 = 0x69B1", "syl 0x20 = 0x6A80", "sylg 0x20 = 0x6A80", "syli 0x20 = 0x6AA9", "sym 0x20 = 0x676D", "symh 0x20 = 0x67FF", "symk 0x20 = 0x69C1", "symn 0x20 = 0x676D", "syn 0x20 = 0x678B", "synw 0x20 = 0x6838", "syp 0x20 = 0x8FF0", "sypi 0x20 = 0x8FF0", "syv 0x20 = 0x6994", "syvb 0x20 = 0x6994", "t 0x20 = 0x548C", "ta 0x20 = 0x957F", "tab 0x20 = 0x7B47", "tabj 0x20 = 0x7B47", "tad 0x20 = 0x7B95", "tadc 0x20 = 0x7C38", "tadd 0x20 = 0x7BDA", "tadk 0x20 = 0x7BAC", "tadw 0x20 = 0x7B95", "tag 0x20 = 0x7B50", "tagf 0x20 = 0x7B50", "tagw 0x20 = 0x7BA7", "tah 0x20 = 0x9004", "tahp 0x20 = 0x9004", "tak 0x20 = 0x5347", "takf 0x20 = 0x7B38", "tam 0x20 = 0x7B51", "tamw 0x20 = 0x7C27", "tamy 0x20 = 0x7B51", "taq 0x20 = 0x7C2A", "taqj 0x20 = 0x7C2A", "tav 0x20 = 0x4E47", "tavn 0x20 = 0x5F7B", "taw 0x20 = 0x7B6E", "taww 0x20 = 0x7B6E", "tay 0x20 = 0x957F", "tayi 0x20 = 0x957F", "tb 0x20 = 0x5B63", "tbf 0x20 = 0x5B63", "tbp 0x20 = 0x8FE4", "tbpv 0x20 = 0x8FE4", "tc 0x20 = 0x4E48", "tca 0x20 = 0x5F84", "tcag 0x20 = 0x5F84", "tcb 0x20 = 0x7B06", "tcf 0x20 = 0x7B03", "tck 0x20 = 0x7B1E", "tckf 0x20 = 0x7B1E", "tcu 0x20 = 0x4E48", "tcy 0x20 = 0x79C1", "td 0x20 = 0x77E5", "tda 0x20 = 0x77E9", "tdaf 0x20 = 0x751C", "tdan 0x20 = 0x77E9", "tdas 0x20 = 0x6998", "tdd 0x20 = 0x820C", "tdg 0x20 = 0x77ED", "tdgn 0x20 = 0x8214", "tdgt 0x20 = 0x7BB4", "tdgu 0x20 = 0x77ED", "tdh 0x20 = 0x9022", "tdhp 0x20 = 0x9022", "tdi 0x20 = 0x592D", "tdij 0x20 = 0x7C4D", "tdj 0x20 = 0x4E54", "tdjd 0x20 = 0x5F98", "tdjh 0x20 = 0x522E", "tdjj 0x20 = 0x4E54", "tdk 0x20 = 0x77E5", "tdkg 0x20 = 0x77E5", "tdkj 0x20 = 0x667A", "tdm 0x20 = 0x5C99", "tdmj 0x20 = 0x5C99", "tdn 0x20 = 0x4E71", "tdnj 0x20 = 0x7A3D", "tdnm 0x20 = 0x5D47", "tdnn 0x20 = 0x4E71", "tdp 0x20 = 0x9002", "tdpd 0x20 = 0x9002", "tdq 0x20 = 0x9E39", "tdqa 0x20 = 0x8210", "tdqg 0x20 = 0x9E39", "tdt 0x20 = 0x654C", "tdtf 0x20 = 0x7B79", "tdtj 0x20 = 0x77EB", "tdtn 0x20 = 0x61A9", "tdtv 0x20 = 0x77EE", "tdty 0x20 = 0x654C", "tdu 0x20 = 0x77E2", "tduh 0x20 = 0x8F9E", "tdw 0x20 = 0x77EC", "tdwf 0x20 = 0x77EC", "tdwy 0x20 = 0x96C9", "tdx 0x20 = 0x7B3C", "tdxb 0x20 = 0x7B3C", "tdxh 0x20 = 0x77E7", "te 0x20 = 0x79C0", "tea 0x20 = 0x8221", "teae 0x20 = 0x8268", "teag 0x20 = 0x8221", "teb 0x20 = 0x79C0", "tebg 0x20 = 0x7A03", "tebl 0x20 = 0x824B", "teg 0x20 = 0x79DF", "tegg 0x20 = 0x79DF", "teggz 0x20 = 0x5F82", "tegj 0x20 = 0x825A", "teh 0x20 = 0x823B", "tehn 0x20 = 0x823B", "tei 0x20 = 0x821F", "teie 0x20 = 0x8244", "tek 0x20 = 0x822F", "tekh 0x20 = 0x822F", "tel 0x20 = 0x76D8", "telb 0x20 = 0x7B4B", "telf 0x20 = 0x76D8", "tem 0x20 = 0x822C", "temc 0x20 = 0x822C", "temd 0x20 = 0x78D0", "temg 0x20 = 0x8233", "temh 0x20 = 0x8222", "temk 0x20 = 0x8239", "temq 0x20 = 0x8230", "ten 0x20 = 0x8249", "tep 0x20 = 0x900F", "tepv 0x20 = 0x900F", "tepx 0x20 = 0x8235", "ter 0x20 = 0x8236", "terc 0x20 = 0x8228", "terg 0x20 = 0x8236", "term 0x20 = 0x5FAD", "tes 0x20 = 0x8238", "tesg 0x20 = 0x823E", "tesk 0x20 = 0x8238", "tet 0x20 = 0x8247", "tetf 0x20 = 0x8234", "tetp 0x20 = 0x8247", "teu 0x20 = 0x824F", "teuf 0x20 = 0x825F", "teuh 0x20 = 0x824F", "tev 0x20 = 0x7A3B", "tevc 0x20 = 0x8258", "tevg 0x20 = 0x7A3B", "tew 0x20 = 0x8231", "tewb 0x20 = 0x8231", "tex 0x20 = 0x822D", "texx 0x20 = 0x822D", "tey 0x20 = 0x822A", "teym 0x20 = 0x822A", "teyn 0x20 = 0x822B", "teyq 0x20 = 0x8223", "teyu 0x20 = 0x7B08", "teyx 0x20 = 0x8237", "tf 0x20 = 0x884C", "tfc 0x20 = 0x4E22", "tfcu 0x20 = 0x4E22", "tfd 0x20 = 0x58EC", "tff 0x20 = 0x7AFA", "tffh 0x20 = 0x8857", "tffu 0x20 = 0x7B49", "tffy 0x20 = 0x5F85", "tfh 0x20 = 0x79C6", "tfhh 0x20 = 0x884C", "tfhw 0x20 = 0x7A39", "tfhy 0x20 = 0x5F92", "tfj 0x20 = 0x5348", "tfjf 0x20 = 0x7BDD", "tfjz 0x20 = 0x7AFF", "tfk 0x20 = 0x5343", "tfkb 0x20 = 0x90DC", "tfkd 0x20 = 0x9760", "tfkf 0x20 = 0x544A", "tfkg 0x20 = 0x9E44", "tfkgz 0x20 = 0x79F8", "tfkp 0x20 = 0x9020", "tfl 0x20 = 0x5FB7", "tfln 0x20 = 0x5FB7", "tfn 0x20 = 0x6BDB", "tfnh 0x20 = 0x6BEA", "tfnj 0x20 = 0x6C06", "tfnjz 0x20 = 0x6C07", "tfnk 0x20 = 0x6BE1", "tfnn 0x20 = 0x6BF3", "tfno 0x20 = 0x6BEF", "tfnp 0x20 = 0x6BFD", "tfnv 0x20 = 0x6BDB", "tfp 0x20 = 0x8FC1", "tfpd 0x20 = 0x5EF7", "tfpk 0x20 = 0x8FC1", "tfpkz 0x20 = 0x8FD5", "tfq 0x20 = 0x5148", "tfqb 0x20 = 0x5148", "tfqm 0x20 = 0x8D5E", "tfqp 0x20 = 0x9009", "tfqu 0x20 = 0x7B60", "tft 0x20 = 0x7BB8", "tftj 0x20 = 0x7BB8", "tfuk 0x20 = 0x7A51", "tfux 0x20 = 0x4E56", "tfvw 0x20 = 0x6B43", "tg 0x20 = 0x751F", "tga 0x20 = 0x5782", "tgaf 0x20 = 0x5782", "tgaj 0x20 = 0x7B04", "tgd 0x20 = 0x751F", "tge 0x20 = 0x7B90", "tgef 0x20 = 0x7B90", "tgf 0x20 = 0x7AFD", "tgfj 0x20 = 0x7AFD", "tgh 0x20 = 0x5F81", "tghf 0x20 = 0x771A", "tghg 0x20 = 0x5F81", "tghn 0x20 = 0x60E9", "tgj 0x20 = 0x91CD", "tgjf 0x20 = 0x91CD", "tgjn 0x20 = 0x7A57", "tgjq 0x20 = 0x7B7B", "tgk 0x20 = 0x8859", "tgkh 0x20 = 0x8859", "tgkm 0x20 = 0x7C41", "tgkw 0x20 = 0x7C0C", "tgl 0x20 = 0x718F", "tgll 0x20 = 0x7525", "tglo 0x20 = 0x718F", "tgm 0x20 = 0x7B56", "tgmi 0x20 = 0x7B56", "tgmu 0x20 = 0x7BA6", "tgo 0x20 = 0x5F95", "tgoy 0x20 = 0x5F95", "tgr 0x20 = 0x7B3A", "tgs 0x20 = 0x79E3", "tgsy 0x20 = 0x79E3", "tgu 0x20 = 0x79E4", "tguh 0x20 = 0x79E4", "tgv 0x20 = 0x79C9", "tgvi 0x20 = 0x79C9", "th 0x20 = 0x5904", "tha 0x20 = 0x7B97", "thaj 0x20 = 0x7B97", "thc 0x20 = 0x5F7C", "thcy 0x20 = 0x5F7C", "thd 0x20 = 0x81EA", "thdc 0x20 = 0x7BE1", "thdi 0x20 = 0x7E82", "thdu 0x20 = 0x81ED", "thf 0x20 = 0x4E4D", "thfd 0x20 = 0x4E4D", "thfn 0x20 = 0x600E", "thfp 0x20 = 0x8FEE", "thg 0x20 = 0x7247", "thgc 0x20 = 0x7248", "thgd 0x20 = 0x724D", "thgf 0x20 = 0x724C", "thgn 0x20 = 0x7247", "thgs 0x20 = 0x7252", "thgy 0x20 = 0x7256", "thh 0x20 = 0x5F99", "thhh 0x20 = 0x8862", "thhy 0x20 = 0x5F99", "thi 0x20 = 0x5904", "thj 0x20 = 0x661D", "thjf 0x20 = 0x661D", "thk 0x20 = 0x548E", "thkf 0x20 = 0x548E", "thl 0x20 = 0x9F3B", "thlf 0x20 = 0x9F3E", "thlg 0x20 = 0x9F44", "thlj 0x20 = 0x9F3B", "thljz 0x20 = 0x5293", "thlv 0x20 = 0x9F3D", "thn 0x20 = 0x606F", "thnu 0x20 = 0x606F", "thp 0x20 = 0x5EF6", "thpd 0x20 = 0x5EF6", "ths 0x20 = 0x81EC", "thsu 0x20 = 0x81EC", "ti 0x20 = 0x79D2", "tie 0x20 = 0x7A0D", "tief 0x20 = 0x7B72", "tieg 0x20 = 0x7A0D", "tif 0x20 = 0x884D", "tifh 0x20 = 0x884D", "tifn 0x20 = 0x6106", "tig 0x20 = 0x7C3F", "tigf 0x20 = 0x7C3F", "tim 0x20 = 0x5F9C", "timk 0x20 = 0x5F9C", "tir 0x20 = 0x7B94", "tirf 0x20 = 0x7B94", "tit 0x20 = 0x79D2", "titt 0x20 = 0x79D2", "tj 0x20 = 0x5F97", "tjf 0x20 = 0x9999", "tjgf 0x20 = 0x5F97", "tjgfz 0x20 = 0x7B2A", "tjgh 0x20 = 0x7B5B", "tjh 0x20 = 0x5229", "tjr 0x20 = 0x7281", "tjrh 0x20 = 0x7281", "tjs 0x20 = 0x68A8", "tjsu 0x20 = 0x68A8", "tjsy 0x20 = 0x7A1E", "tjt 0x20 = 0x590D", "tjtl 0x20 = 0x7BEE", "tjtt 0x20 = 0x99A5", "tjtu 0x20 = 0x590D", "tk 0x20 = 0x5404", "tkf 0x20 = 0x5404", "tkg 0x20 = 0x548C", "tkgg 0x20 = 0x7A0B", "tkh 0x20 = 0x79CD", "tkhh 0x20 = 0x79CD", "tkhm 0x20 = 0x7BD1", "tkk 0x20 = 0x7A06", "tkkg 0x20 = 0x7A06", "tkm 0x20 = 0x79B9", "tkmy 0x20 = 0x79B9", "tkw 0x20 = 0x79EF", "tkwy 0x20 = 0x79EF", "tkwyz 0x20 = 0x96D2", "tl 0x20 = 0x52A1", "tlb 0x20 = 0x52A1", "tld 0x20 = 0x8840", "tldt 0x20 = 0x7BFE", "tlf 0x20 = 0x5907", "tlff 0x20 = 0x777E", "tlg 0x20 = 0x7B85", "tlgj 0x20 = 0x7B85", "tlk 0x20 = 0x5F8A", "tlkf 0x20 = 0x7B33", "tlkg 0x20 = 0x5F8A", "tln 0x20 = 0x60EB", "tlnf 0x20 = 0x8844", "tlnu 0x20 = 0x60EB", "tlo 0x20 = 0x7CA4", "tlon 0x20 = 0x7CA4", "tlp 0x20 = 0x7B3E", "tlpu 0x20 = 0x7B3E", "tlq 0x20 = 0x7BA9", "tlqi 0x20 = 0x56DF", "tlqiz 0x20 = 0x56F1", "tlqu 0x20 = 0x7BA9", "tlu 0x20 = 0x8845", "tluf 0x20 = 0x8845", "tlw 0x20 = 0x7A37", "tlwt 0x20 = 0x7A37", "tm 0x20 = 0x5411", "tmb 0x20 = 0x79C3", "tmc 0x20 = 0x5F79", "tmcy 0x20 = 0x5F79", "tmd 0x20 = 0x8EAB", "tmdf 0x20 = 0x5C04", "tmdk 0x20 = 0x8EBA", "tmdm 0x20 = 0x9893", "tmdq 0x20 = 0x8EAF", "tmds 0x20 = 0x8EB2", "tmdt 0x20 = 0x8EAB", "tmdx 0x20 = 0x8EAC", "tmdy 0x20 = 0x79E7", "tmf 0x20 = 0x7B1B", "tmfk 0x20 = 0x7A20", "tmg 0x20 = 0x5FAE", "tmgk 0x20 = 0x7B52", "tmgt 0x20 = 0x5FB5", "tmgtz 0x20 = 0x5FAE", "tmgtzz 0x20 = 0x5FBD", "tmh 0x20 = 0x5E01", "tmhk 0x20 = 0x5E01", "tmk 0x20 = 0x5411", "tmkd 0x20 = 0x5411", "tmo 0x20 = 0x5965", "tmod 0x20 = 0x5965", "tmq 0x20 = 0x79FD", "tmqb 0x20 = 0x7B15", "tmqy 0x20 = 0x79FD", "tn 0x20 = 0x79D8", "tnb 0x20 = 0x4E5E", "tng 0x20 = 0x7B25", "tngk 0x20 = 0x7B25", "tnn 0x20 = 0x7B77", "tnnw 0x20 = 0x7B77", "tnp 0x20 = 0x8FC4", "tnpv 0x20 = 0x8FC4", "tnt 0x20 = 0x79D8", "tntt 0x20 = 0x79D8", "to 0x20 = 0x79CB", "toc 0x20 = 0x91CA", "toch 0x20 = 0x91CA", "tol 0x20 = 0x756A", "tolb 0x20 = 0x9131", "tolf 0x20 = 0x756A", "toln 0x20 = 0x7FFB", "tom 0x20 = 0x91C9", "tomg 0x20 = 0x91C9", "ton 0x20 = 0x6089", "tonr 0x20 = 0x7C16", "tonu 0x20 = 0x6101", "tonuz 0x20 = 0x6089", "tov 0x20 = 0x7BD3", "tovf 0x20 = 0x7BD3", "toy 0x20 = 0x79CB", "tp 0x20 = 0x7BA1", "tpe 0x20 = 0x7A3C", "tpey 0x20 = 0x7A3C", "tpi 0x20 = 0x4E4F", "tpn 0x20 = 0x7BA1", "tpnn 0x20 = 0x7BA1", "tpqb 0x20 = 0x7BA2", "tpw 0x20 = 0x7B9C", "tpwa 0x20 = 0x7B9C", "tq 0x20 = 0x79F0", "tqd 0x20 = 0x7A00", "tqdh 0x20 = 0x8861", "tqdhz 0x20 = 0x7A00", "tqf 0x20 = 0x8854", "tqfh 0x20 = 0x8854", "tqi 0x20 = 0x79F0", "tqiy 0x20 = 0x79F0", "tqj 0x20 = 0x5F87", "tqjg 0x20 = 0x5F87", "tqk 0x20 = 0x7B31", "tqkf 0x20 = 0x7B31", "tqq 0x20 = 0x79FB", "tqqy 0x20 = 0x79FB", "tqr 0x20 = 0x7B0F", "tqrq 0x20 = 0x7BFC", "tqrr 0x20 = 0x7B0F", "tqt 0x20 = 0x9ECE", "tqti 0x20 = 0x9ECE", "tqto 0x20 = 0x9EE7", "tqv 0x20 = 0x7A33", "tqvh 0x20 = 0x7B5D", "tqvn 0x20 = 0x7A33", "tr 0x20 = 0x7269", "tra 0x20 = 0x7B8D", "traf 0x20 = 0x7B9D", "trah 0x20 = 0x7B8D", "trc 0x20 = 0x7B62", "trcb 0x20 = 0x7B62", "trch 0x20 = 0x7BA8", "trdg 0x20 = 0x726F", "trdk 0x20 = 0x7284", "trf 0x20 = 0x7279", "trfd 0x20 = 0x728A", "trff 0x20 = 0x7279", "trfg 0x20 = 0x7261", "trfh 0x20 = 0x5FAA", "trg 0x20 = 0x5FA8", "trgf 0x20 = 0x7BC1", "trgg 0x20 = 0x5FA8", "trgk 0x20 = 0x727E", "trh 0x20 = 0x5FA1", "trhb 0x20 = 0x5FA1", "trhm 0x20 = 0x7BEA", "trhw 0x20 = 0x728B", "trhy 0x20 = 0x7B0A", "tri 0x20 = 0x7A46", "trie 0x20 = 0x7A46", "trk 0x20 = 0x7B58", "trkf 0x20 = 0x7B58", "trn 0x20 = 0x6211", "trng 0x20 = 0x9E45", "trnt 0x20 = 0x6211", "trq 0x20 = 0x7269", "trql 0x20 = 0x7C40", "trqr 0x20 = 0x7269", "trs 0x20 = 0x727A", "trsg 0x20 = 0x727A", "trt 0x20 = 0x7267", "trtf 0x20 = 0x7A17", "trtg 0x20 = 0x7272", "trtk 0x20 = 0x727F", "trtn 0x20 = 0x7266", "trty 0x20 = 0x7267", "trv 0x20 = 0x728D", "trvp 0x20 = 0x728D", "trw 0x20 = 0x79E9", "trwy 0x20 = 0x79E9", "trx 0x20 = 0x725D", "trxn 0x20 = 0x725D", "try 0x20 = 0x5FBC", "trya 0x20 = 0x728F", "tryk 0x20 = 0x7292", "tryt 0x20 = 0x5FBC", "ts 0x20 = 0x6761", "tsg 0x20 = 0x7B28", "tsgf 0x20 = 0x7B28", "tsh 0x20 = 0x7BB1", "tshf 0x20 = 0x7BB1", "tsj 0x20 = 0x7C1F", "tsjj 0x20 = 0x7C1F", "tss 0x20 = 0x7BE5", "tssu 0x20 = 0x7BE5", "tsu 0x20 = 0x6761", "tsy 0x20 = 0x79EB", "tsyy 0x20 = 0x79EB", "tt 0x20 = 0x7B14", "ttd 0x20 = 0x7B11", "ttdp 0x20 = 0x7BF7", "ttdu 0x20 = 0x7B11", "ttf 0x20 = 0x7B14", "ttfn 0x20 = 0x7B14", "ttfq 0x20 = 0x7B45", "ttg 0x20 = 0x7AF9", "ttgf 0x20 = 0x7B19", "ttgh 0x20 = 0x7AF9", "ttgy 0x20 = 0x6535", "tth 0x20 = 0x7B2E", "tthf 0x20 = 0x7B2E", "tthp 0x20 = 0x7B75", "ttl 0x20 = 0x4E3F", "ttll 0x20 = 0x4E3F", "ttlx 0x20 = 0x7BE6", "ttn 0x20 = 0x5902", "ttnt 0x20 = 0x7B2B", "ttntz 0x20 = 0x79ED", "ttny 0x20 = 0x5902", "ttt 0x20 = 0x79BE", "ttth 0x20 = 0x5F73", "tttt 0x20 = 0x79BE", "tu 0x20 = 0x79D1", "tud 0x20 = 0x5F89", "tudh 0x20 = 0x5F89", "tue 0x20 = 0x7BAD", "tuej 0x20 = 0x7BAD", "tuf 0x20 = 0x7B20", "tufh 0x20 = 0x79D1", "tuh 0x20 = 0x4E4E", "tuhk 0x20 = 0x4E4E", "tuj 0x20 = 0x7B80", "tujf 0x20 = 0x7B80", "tujfz 0x20 = 0x7BAA", "tujj 0x20 = 0x87BD", "tuk 0x20 = 0x7A0E", "tukq 0x20 = 0x7A0E", "tutk 0x20 = 0x6401", "tuu 0x20 = 0x51AC", "tux 0x20 = 0x4E58", "tuxj 0x20 = 0x5269", "tuxv 0x20 = 0x4E58", "tv 0x20 = 0x59D4", "tve 0x20 = 0x5F88", "tvel 0x20 = 0x7C0B", "tvey 0x20 = 0x5F88", "tvf 0x20 = 0x59D4", "tvfh 0x20 = 0x5F8B", "tvij 0x20 = 0x7BAB", "tvk 0x20 = 0x7B24", "tvkf 0x20 = 0x7B24", "tvp 0x20 = 0x9036", "tvpd 0x20 = 0x9036", "tvr 0x20 = 0x9B4F", "tvrc 0x20 = 0x9B4F", "tvt 0x20 = 0x7B0B", "tvtr 0x20 = 0x7B0B", "tw 0x20 = 0x7B54", "twa 0x20 = 0x7B4F", "twar 0x20 = 0x7B4F", "twf 0x20 = 0x7B26", "twfu 0x20 = 0x7B26", "twg 0x20 = 0x7B54", "twgf 0x20 = 0x7B4C", "twgi 0x20 = 0x7B7E", "twgk 0x20 = 0x7B54", "twgu 0x20 = 0x7C26", "twh 0x20 = 0x7B71", "twht 0x20 = 0x7B71", "twi 0x20 = 0x9ECD", "twik 0x20 = 0x9ECF", "twiu 0x20 = 0x9ECD", "twn 0x20 = 0x7BCC", "twnd 0x20 = 0x7BCC", "twt 0x20 = 0x5F90", "twty 0x20 = 0x5F90", "twy 0x20 = 0x7A1A", "twyg 0x20 = 0x7A1A", "twyn 0x20 = 0x7A14", "tx 0x20 = 0x7B2C", "txe 0x20 = 0x7BC6", "txen 0x20 = 0x80E4", "txeu 0x20 = 0x7BC6", "txg 0x20 = 0x6BCF", "txgg 0x20 = 0x9CD8", "txgi 0x20 = 0x7E41", "txgq 0x20 = 0x6BD3", "txgt 0x20 = 0x654F", "txgu 0x20 = 0x6BCF", "txh 0x20 = 0x7B2C", "txht 0x20 = 0x7B2C", "txi 0x20 = 0x7CFB", "txiu 0x20 = 0x7CFB", "txt 0x20 = 0x5F8C", "txty 0x20 = 0x5F8C", "txx 0x20 = 0x79D5", "txxf 0x20 = 0x7B5A", "txxn 0x20 = 0x79D5", "ty 0x20 = 0x5165", "tyb 0x20 = 0x7BF1", "tybc 0x20 = 0x7BF1", "tyg 0x20 = 0x5F80", "tygg 0x20 = 0x5F80", "tyi 0x20 = 0x5165", "tyiu 0x20 = 0x6C46", "tyk 0x20 = 0x7A70", "tyke 0x20 = 0x7A70", "tym 0x20 = 0x7A3F", "tymk 0x20 = 0x7A3F", "tymkz 0x20 = 0x7BD9", "tyn 0x20 = 0x5F77", "tyna 0x20 = 0x7BC7", "tynx 0x20 = 0x7C0F", "tyo 0x20 = 0x7C74", "tyou 0x20 = 0x7C74", "tyt 0x20 = 0x7C07", "tytd 0x20 = 0x7C07", "tyv 0x20 = 0x7A02", "tyve 0x20 = 0x7A02", "u 0x20 = 0x4EA7", "ua 0x20 = 0x5E76", "uaf 0x20 = 0x75B3", "uafd 0x20 = 0x75B3", "uag 0x20 = 0x74F6", "uagd 0x20 = 0x759F", "uagn 0x20 = 0x74F6", "uai 0x20 = 0x51BB", "uaiy 0x20 = 0x51BB", "uaj 0x20 = 0x5E76", "uajd 0x20 = 0x763C", "uak 0x20 = 0x9608", "uakg 0x20 = 0x9608", "uam 0x20 = 0x7640", "uamw 0x20 = 0x7640", "uap 0x20 = 0x8FF8", "uapk 0x20 = 0x8FF8", "uapl 0x20 = 0x75E8", "uaw 0x20 = 0x7629", "uawk 0x20 = 0x7629", "ub 0x20 = 0x95FB", "ubd 0x20 = 0x95FB", "ubk 0x20 = 0x7597", "ubkz 0x20 = 0x7596", "ubq 0x20 = 0x763E", "ubqn 0x20 = 0x763E", "ubt 0x20 = 0x9006", "ubte 0x20 = 0x6714", "ubtf 0x20 = 0x5851", "ubtg 0x20 = 0x7643", "ubtp 0x20 = 0x9006", "ubts 0x20 = 0x69CA", "uc 0x20 = 0x51AF", "uca 0x20 = 0x75C9", "ucad 0x20 = 0x75C9", "ucd 0x20 = 0x95EF", "uce 0x20 = 0x75DB", "ucek 0x20 = 0x75DB", "uceu 0x20 = 0x886E", "ucg 0x20 = 0x51AF", "uck 0x20 = 0x51B6", "uckg 0x20 = 0x51B6", "ucq 0x20 = 0x5156", "ucqb 0x20 = 0x5156", "ucv 0x20 = 0x75A4", "ucw 0x20 = 0x7AE3", "ucwt 0x20 = 0x7AE3", "ucwy 0x20 = 0x762B", "ucy 0x20 = 0x7619", "ucyj 0x20 = 0x7619", "ud 0x20 = 0x5173", "uda 0x20 = 0x5DEE", "udaf 0x20 = 0x5DEE", "udb 0x20 = 0x90D1", "udbb 0x20 = 0x5377", "udbh 0x20 = 0x90D1", "udc 0x20 = 0x95F3", "udca 0x20 = 0x7F9F", "udci 0x20 = 0x95F3", "udct 0x20 = 0x7FA7", "udd 0x20 = 0x95EB", "ude 0x20 = 0x8C62", "udeu 0x20 = 0x8C62", "udg 0x20 = 0x51CF", "udgt 0x20 = 0x51CF", "udh 0x20 = 0x7740", "udhf 0x20 = 0x7740", "udhfz 0x20 = 0x7737", "udhn 0x20 = 0x761B", "udi 0x20 = 0x5934", "udj 0x20 = 0x7F8A", "udjd 0x20 = 0x75F1", "udjh 0x20 = 0x5224", "udjn 0x20 = 0x7FAF", "udjnz 0x20 = 0x9609", "udl 0x20 = 0x75AC", "udlv 0x20 = 0x75AC", "udm 0x20 = 0x7FB0", "udmo 0x20 = 0x7FB0", "udn 0x20 = 0x7F9E", "udnb 0x20 = 0x7F8C", "udnf 0x20 = 0x7F9E", "udng 0x20 = 0x7FD4", "udnv 0x20 = 0x75A0", "udnvz 0x20 = 0x75A3", "udp 0x20 = 0x9001", "udpi 0x20 = 0x9001", "udpiz 0x20 = 0x95FC", "udq 0x20 = 0x7F9D", "udqg 0x20 = 0x9C9E", "udqy 0x20 = 0x7F9D", "udr 0x20 = 0x62F3", "udrc 0x20 = 0x53DB", "udrj 0x20 = 0x62F3", "uds 0x20 = 0x684A", "udsu 0x20 = 0x684A", "udu 0x20 = 0x5173", "udub 0x20 = 0x912F", "uduk 0x20 = 0x5584", "udv 0x20 = 0x5238", "udvb 0x20 = 0x5238", "udw 0x20 = 0x51D1", "udwc 0x20 = 0x7F9A", "udwd 0x20 = 0x51D1", "udy 0x20 = 0x72B6", "udyf 0x20 = 0x8A8A", "udyj 0x20 = 0x517B", "ue 0x20 = 0x524D", "ueg 0x20 = 0x75BD", "uegd 0x20 = 0x75BD", "uej 0x20 = 0x524D", "uejj 0x20 = 0x524D", "uejn 0x20 = 0x7FE6", "uejo 0x20 = 0x714E", "uejv 0x20 = 0x526A", "uek 0x20 = 0x75C8", "uem 0x20 = 0x6BC5", "uemc 0x20 = 0x6BC5", "uep 0x20 = 0x9042", "uepc 0x20 = 0x960C", "uepi 0x20 = 0x9042", "uey 0x20 = 0x7603", "ueyi 0x20 = 0x7603", "uf 0x20 = 0x534A", "ufc 0x20 = 0x9616", "ufcl 0x20 = 0x9616", "uff 0x20 = 0x5170", "uffd 0x20 = 0x95FA", "uffi 0x20 = 0x75D4", "ufg 0x20 = 0x58EE", "ufh 0x20 = 0x9617", "ufhm 0x20 = 0x766B", "ufhw 0x20 = 0x9617", "ufk 0x20 = 0x534A", "ufkz 0x20 = 0x6597", "ufn 0x20 = 0x95F1", "ufnh 0x20 = 0x95F1", "ufni 0x20 = 0x75E3", "uft 0x20 = 0x95ED", "ufte 0x20 = 0x95ED", "ufw 0x20 = 0x51CC", "ufwt 0x20 = 0x51CC", "ufy 0x20 = 0x88C5", "ufye 0x20 = 0x88C5", "ug 0x20 = 0x95F0", "ugd 0x20 = 0x95F0", "ugdu 0x20 = 0x7F8E", "ugdz 0x20 = 0x95E9", "uge 0x20 = 0x9756", "ugeg 0x20 = 0x9756", "ugh 0x20 = 0x75C7", "ughd 0x20 = 0x75C7", "ugi 0x20 = 0x75DE", "ugik 0x20 = 0x75DE", "ugk 0x20 = 0x8FA3", "ugkd 0x20 = 0x75E6", "ugki 0x20 = 0x8FA3", "ugkiz 0x20 = 0x7AE6", "ugkj 0x20 = 0x760C", "ugkm 0x20 = 0x765E", "ugku 0x20 = 0x75D8", "ugl 0x20 = 0x76D6", "uglf 0x20 = 0x76D6", "ugli 0x20 = 0x9611", "ugm 0x20 = 0x75C5", "ugmw 0x20 = 0x75C5", "ugn 0x20 = 0x6059", "ugnu 0x20 = 0x6059", "ugo 0x20 = 0x7F94", "ugod 0x20 = 0x7FB9", "ugog 0x20 = 0x75D6", "ugou 0x20 = 0x7F94", "ugq 0x20 = 0x51BD", "ugqj 0x20 = 0x51BD", "ugt 0x20 = 0x7FB2", "ugtt 0x20 = 0x7FB2", "ugu 0x20 = 0x7FA1", "uguf 0x20 = 0x7617", "uguw 0x20 = 0x7FA1", "ugv 0x20 = 0x59DC", "ugvf 0x20 = 0x59DC", "ugvv 0x20 = 0x51C4", "ugx 0x20 = 0x51B1", "ugxg 0x20 = 0x51B1", "ugxw 0x20 = 0x75CD", "ugy 0x20 = 0x764D", "ugyg 0x20 = 0x764D", "uh 0x20 = 0x7AD9", "uhc 0x20 = 0x75B2", "uhci 0x20 = 0x75B2", "uhd 0x20 = 0x9612", "uhdi 0x20 = 0x9612", "uhh 0x20 = 0x766F", "uhhy 0x20 = 0x766F", "uhk 0x20 = 0x4E2B", "uhkg 0x20 = 0x7AD9", "uht 0x20 = 0x5914", "uhtt 0x20 = 0x5914", "uhx 0x20 = 0x75B5", "uhxv 0x20 = 0x75B5", "ui 0x20 = 0x51B0", "uii 0x20 = 0x75E7", "uiit 0x20 = 0x75E7", "uit 0x20 = 0x9614", "uitd 0x20 = 0x9614", "uiw 0x20 = 0x7620", "uiwe 0x20 = 0x7620", "uiy 0x20 = 0x51B0", "uj 0x20 = 0x95F4", "ujb 0x20 = 0x9123", "ujbh 0x20 = 0x9123", "ujd 0x20 = 0x95F4", "uje 0x20 = 0x5F70", "ujet 0x20 = 0x5F70", "ujf 0x20 = 0x97F3", "ujfb 0x20 = 0x90F8", "ujfe 0x20 = 0x5181", "ujff 0x20 = 0x7AE5", "ujfj 0x20 = 0x5355", "ujg 0x20 = 0x75B8", "ujgd 0x20 = 0x75B8", "uji 0x20 = 0x95FD", "ujj 0x20 = 0x7AE0", "ujjd 0x20 = 0x960A", "ujl 0x20 = 0x761F", "ujld 0x20 = 0x761F", "ujn 0x20 = 0x610F", "ujnu 0x20 = 0x610F", "ujq 0x20 = 0x7ADF", "ujqb 0x20 = 0x7ADF", "ujqn 0x20 = 0x7AED", "ujqu 0x20 = 0x97F5", "ujqw 0x20 = 0x6B46", "ujt 0x20 = 0x8D63", "ujtm 0x20 = 0x8D63", "ujtn 0x20 = 0x6206", "ujv 0x20 = 0x97F6", "ujvk 0x20 = 0x97F6", "uk 0x20 = 0x90E8", "ukb 0x20 = 0x90E8", "ukbh 0x20 = 0x90E8", "ukd 0x20 = 0x95EE", "ukg 0x20 = 0x74FF", "ukgn 0x20 = 0x74FF", "ukh 0x20 = 0x51B2", "ukhh 0x20 = 0x51B2", "ukj 0x20 = 0x5256", "ukjh 0x20 = 0x5256", "ukk 0x20 = 0x764C", "ukkd 0x20 = 0x95FE", "ukkm 0x20 = 0x764C", "ukn 0x20 = 0x603B", "uknu 0x20 = 0x603B", "ukq 0x20 = 0x51B5", "ukqb 0x20 = 0x7ADE", "ukqbz 0x20 = 0x5151", "ukqn 0x20 = 0x51B5", "ul 0x20 = 0x66FE", "uld 0x20 = 0x75FC", "uldd 0x20 = 0x75FC", "ulg 0x20 = 0x517D", "ulgj 0x20 = 0x75F9", "ulgk 0x20 = 0x517D", "ulj 0x20 = 0x66FE", "uljf 0x20 = 0x66FE", "uljn 0x20 = 0x7511", "ulk 0x20 = 0x95F8", "ulkd 0x20 = 0x75C2", "ulkw 0x20 = 0x7638", "uls 0x20 = 0x9603", "ulsi 0x20 = 0x9603", "ulx 0x20 = 0x7630", "ulxi 0x20 = 0x7630", "um 0x20 = 0x5546", "umc 0x20 = 0x75AB", "umci 0x20 = 0x75AB", "umdj 0x20 = 0x7AEF", "umf 0x20 = 0x51CB", "umfk 0x20 = 0x51CB", "umi 0x20 = 0x655D", "umia 0x20 = 0x5F0A", "umig 0x20 = 0x9CD6", "umih 0x20 = 0x77A5", "umihz 0x20 = 0x8E69", "umin 0x20 = 0x618B", "umit 0x20 = 0x655D", "umk 0x20 = 0x759D", "umm 0x20 = 0x763F", "ummv 0x20 = 0x763F", "umq 0x20 = 0x75AF", "umqi 0x20 = 0x75AF", "umqy 0x20 = 0x98D2", "umw 0x20 = 0x5546", "umwk 0x20 = 0x5546", "un 0x20 = 0x51B3", "una 0x20 = 0x765C", "unac 0x20 = 0x765C", "unb 0x20 = 0x961A", "unbt 0x20 = 0x961A", "ung 0x20 = 0x7FCA", "unh 0x20 = 0x7615", "unhc 0x20 = 0x7615", "uni 0x20 = 0x95F7", "unk 0x20 = 0x7656", "unku 0x20 = 0x7656", "unr 0x20 = 0x75A1", "unre 0x20 = 0x75A1", "unw 0x20 = 0x51B3", "unwe 0x20 = 0x7633", "unwy 0x20 = 0x51B3", "uo 0x20 = 0x666E", "uog 0x20 = 0x666E", "uogj 0x20 = 0x666E", "uoo 0x20 = 0x75F0", "uooi 0x20 = 0x75F0", "uov 0x20 = 0x7618", "uovd 0x20 = 0x7618", "up 0x20 = 0x5E1D", "upm 0x20 = 0x5E1D", "upmh 0x20 = 0x5E1D", "upmk 0x20 = 0x557B", "upy 0x20 = 0x65C1", "upyb 0x20 = 0x65C1", "uq 0x20 = 0x4EA4", "uqa 0x20 = 0x960D", "uqaj 0x20 = 0x960D", "uqb 0x20 = 0x90CA", "uqbh 0x20 = 0x90CA", "uqd 0x20 = 0x5956", "uqdu 0x20 = 0x5956", "uqf 0x20 = 0x5C06", "uqfy 0x20 = 0x5C06", "uqg 0x20 = 0x7663", "uqgd 0x20 = 0x7663", "uqi 0x20 = 0x6D46", "uqiu 0x20 = 0x6D46", "uqj 0x20 = 0x9604", "uqjn 0x20 = 0x9604", "uqm 0x20 = 0x75EA", "uqmd 0x20 = 0x75EA", "uqn 0x20 = 0x75B1", "uqnv 0x20 = 0x75B1", "uqs 0x20 = 0x6868", "uqsg 0x20 = 0x9171", "uqsu 0x20 = 0x6868", "uqt 0x20 = 0x6548", "uqty 0x20 = 0x6548", "uqu 0x20 = 0x4EA4", "uqv 0x20 = 0x51C0", "uqvd 0x20 = 0x960E", "uqvh 0x20 = 0x51C0", "uqw 0x20 = 0x6B21", "uqwk 0x20 = 0x54A8", "uqwl 0x20 = 0x76D7", "uqwm 0x20 = 0x8D44", "uqwn 0x20 = 0x74F7", "uqwnz 0x20 = 0x6063", "uqwo 0x20 = 0x7CA2", "uqwv 0x20 = 0x59FF", "uqwy 0x20 = 0x6B21", "uqy 0x20 = 0x759A", "uqyi 0x20 = 0x759A", "uqyl 0x20 = 0x7624", "ur 0x20 = 0x74E3", "urc 0x20 = 0x74E3", "urcu 0x20 = 0x74E3", "us 0x20 = 0x4EB2", "usf 0x20 = 0x762D", "usfi 0x20 = 0x762D", "usg 0x20 = 0x5C0A", "usgd 0x20 = 0x5960", "usgdz 0x20 = 0x7337", "usgf 0x20 = 0x5C0A", "usgfz 0x20 = 0x914B", "usgp 0x20 = 0x9075", "usgpz 0x20 = 0x9052", "usi 0x20 = 0x95F2", "usk 0x20 = 0x7594", "uskd 0x20 = 0x75B4", "usq 0x20 = 0x9E47", "usqg 0x20 = 0x9E47", "usr 0x20 = 0x65B0", "usrh 0x20 = 0x65B0", "usu 0x20 = 0x4EB2", "usw 0x20 = 0x51C7", "uswc 0x20 = 0x51C7", "ut 0x20 = 0x4EA7", "utd 0x20 = 0x75BE", "utdi 0x20 = 0x75BE", "utdk 0x20 = 0x75F4", "ute 0x20 = 0x4EA7", "utec 0x20 = 0x7622", "utem 0x20 = 0x989C", "uter 0x20 = 0x5F66", "utf 0x20 = 0x51BC", "utfq 0x20 = 0x51BC", "uth 0x20 = 0x9996", "uthf 0x20 = 0x9996", "uthfz 0x20 = 0x75C4", "uthg 0x20 = 0x9998", "uthp 0x20 = 0x9053", "uthx 0x20 = 0x762A", "utj 0x20 = 0x75E2", "utjk 0x20 = 0x75E2", "utk 0x20 = 0x9601", "utkd 0x20 = 0x9601", "utn 0x20 = 0x7599", "utnv 0x20 = 0x7599", "utu 0x20 = 0x75BC", "utui 0x20 = 0x75BC", "utv 0x20 = 0x75FF", "utvd 0x20 = 0x75FF", "uu 0x20 = 0x7ACB", "uub 0x20 = 0x9619", "uubw 0x20 = 0x9619", "uud 0x20 = 0x75D2", "uuda 0x20 = 0x7625", "uudk 0x20 = 0x75D2", "uuj 0x20 = 0x9610", "uujf 0x20 = 0x9610", "uujfz 0x20 = 0x7605", "uujk 0x20 = 0x7634", "uujn 0x20 = 0x7654", "uuk 0x20 = 0x9605", "uukq 0x20 = 0x9605", "uus 0x20 = 0x75EB", "uusi 0x20 = 0x75EB", "uuu 0x20 = 0x7ACB", "uuuu 0x20 = 0x7ACB", "uv 0x20 = 0x5986", "uve 0x20 = 0x75D5", "uvei 0x20 = 0x75D5", "uvf 0x20 = 0x59BE", "uvg 0x20 = 0x5986", "uvh 0x20 = 0x7626", "uvhc 0x20 = 0x7626", "uvo 0x20 = 0x517C", "uvog 0x20 = 0x9E63", "uvou 0x20 = 0x517C", "uvow 0x20 = 0x6B49", "uvq 0x20 = 0x960B", "uvqv 0x20 = 0x960B", "uvw 0x20 = 0x7610", "uvwi 0x20 = 0x7610", "uw 0x20 = 0x95EA", "uwa 0x20 = 0x9600", "uwae 0x20 = 0x9600", "uwb 0x20 = 0x75AE", "uwbv 0x20 = 0x75AE", "uwe 0x20 = 0x75B9", "uwee 0x20 = 0x75B9", "uwf 0x20 = 0x7635", "uwfi 0x20 = 0x7635", "uwg 0x20 = 0x75CA", "uwgd 0x20 = 0x75CA", "uwgdz 0x20 = 0x9615", "uwi 0x20 = 0x95EA", "uwj 0x20 = 0x75A5", "uwjk 0x20 = 0x75A5", "uwl 0x20 = 0x76CA", "uwlf 0x20 = 0x76CA", "uwlj 0x20 = 0x8832", "uwn 0x20 = 0x760A", "uwnd 0x20 = 0x760A", "uww 0x20 = 0x75E4", "uwwf 0x20 = 0x75E4", "uwy 0x20 = 0x51C6", "uwyc 0x20 = 0x51B7", "uwyg 0x20 = 0x51C6", "ux 0x20 = 0x5317", "uxb 0x20 = 0x90B6", "uxbh 0x20 = 0x90B6", "uxe 0x20 = 0x80CC", "uxef 0x20 = 0x80CC", "uxh 0x20 = 0x5F1F", "uxhg 0x20 = 0x9E48", "uxhj 0x20 = 0x5243", "uxhp 0x20 = 0x9012", "uxht 0x20 = 0x5F1F", "uxl 0x20 = 0x5180", "uxlw 0x20 = 0x5180", "uxn 0x20 = 0x5317", "uxt 0x20 = 0x51DD", "uxth 0x20 = 0x51DD", "uxu 0x20 = 0x8FAB", "uxuh 0x20 = 0x8FAB", "uxx 0x20 = 0x5179", "uxxb 0x20 = 0x5B73", "uxxg 0x20 = 0x9E5A", "uxxn 0x20 = 0x6148", "uxxu 0x20 = 0x5179", "uy 0x20 = 0x516D", "uyg 0x20 = 0x51AB", "uygd 0x20 = 0x75B0", "uygg 0x20 = 0x7592", "uygh 0x20 = 0x8F9B", "uyghz 0x20 = 0x4E2C", "uygy 0x20 = 0x516D", "uyh 0x20 = 0x95E8", "uyhn 0x20 = 0x95E8", "uyi 0x20 = 0x95F5", "uyiy 0x20 = 0x51C9", "uyl 0x20 = 0x51DB", "uyli 0x20 = 0x51DB", "uym 0x20 = 0x95F9", "uymh 0x20 = 0x95F9", "uymv 0x20 = 0x95F6", "uyn 0x20 = 0x9602", "uynw 0x20 = 0x9602", "uyt 0x20 = 0x8FA8", "uytu 0x20 = 0x8FA8", "uyu 0x20 = 0x8FA9", "uyuh 0x20 = 0x8FA9", "uyv 0x20 = 0x9606", "uyve 0x20 = 0x9606", "uyw 0x20 = 0x7601", "uywf 0x20 = 0x7601", "uywu 0x20 = 0x7600", "uywuz 0x20 = 0x960F", "uyx 0x20 = 0x75C3", "uyxi 0x20 = 0x75C3", "v 0x20 = 0x53D1", "va 0x20 = 0x6BC1", "vaf 0x20 = 0x5A92", "vafs 0x20 = 0x5A92", "vah 0x20 = 0x59EC", "vahh 0x20 = 0x59EC", "vaj 0x20 = 0x8201", "vajd 0x20 = 0x5AEB", "vam 0x20 = 0x6BC1", "vamc 0x20 = 0x6BC1", "vaq 0x20 = 0x59AA", "vaqy 0x20 = 0x59AA", "vat 0x20 = 0x5A06", "vatq 0x20 = 0x5A06", "vb 0x20 = 0x597D", "vbg 0x20 = 0x597D", "vbh 0x20 = 0x5AB8", "vbhj 0x20 = 0x5AB8", "vbn 0x20 = 0x5979", "vbs 0x20 = 0x5A40", "vbsk 0x20 = 0x5A40", "vc 0x20 = 0x5988", "vca 0x20 = 0x65E2", "vcag 0x20 = 0x66A8", "vcaq 0x20 = 0x65E2", "vcb 0x20 = 0x5373", "vcbf 0x20 = 0x5B65", "vcbh 0x20 = 0x5373", "vcbhz 0x20 = 0x59A4", "vcc 0x20 = 0x9A7D", "vccf 0x20 = 0x9A7D", "vcg 0x20 = 0x5988", "vck 0x20 = 0x59CB", "vckg 0x20 = 0x59CB", "vcl 0x20 = 0x52AA", "vclb 0x20 = 0x52AA", "vcm 0x20 = 0x5E11", "vcmh 0x20 = 0x5E11", "vcmw 0x20 = 0x80EC", "vcn 0x20 = 0x6012", "vcnu 0x20 = 0x6012", "vcx 0x20 = 0x5F29", "vcxb 0x20 = 0x5F29", "vcy 0x20 = 0x5974", "vd 0x20 = 0x59D1", "vdf 0x20 = 0x5A20", "vdfe 0x20 = 0x5A20", "vdg 0x20 = 0x59D1", "ve 0x20 = 0x5976", "vef 0x20 = 0x57A6", "vefc 0x20 = 0x5A9B", "veff 0x20 = 0x57A6", "veg 0x20 = 0x59D0", "vegg 0x20 = 0x59D0", "vei 0x20 = 0x826E", "ven 0x20 = 0x5976", "venu 0x20 = 0x6073", "vep 0x20 = 0x9000", "vepc 0x20 = 0x5AD2", "vepi 0x20 = 0x9000", "vf 0x20 = 0x5BFB", "vfb 0x20 = 0x90A3", "vfbh 0x20 = 0x90A3", "vfc 0x20 = 0x5993", "vfcy 0x20 = 0x5993", "vff 0x20 = 0x5A03", "vffg 0x20 = 0x5A03", "vfh 0x20 = 0x5978", "vfhk 0x20 = 0x807F", "vfhp 0x20 = 0x5EFA", "vfi 0x20 = 0x59B9", "vfiy 0x20 = 0x59B9", "vfj 0x20 = 0x5ABE", "vfjf 0x20 = 0x5ABE", "vfk 0x20 = 0x5B09", "vfkk 0x20 = 0x5B09", "vfq 0x20 = 0x59A9", "vfqn 0x20 = 0x59A9", "vfs 0x20 = 0x5B40", "vfsh 0x20 = 0x5B40", "vft 0x20 = 0x59E5", "vftx 0x20 = 0x59E5", "vfu 0x20 = 0x5BFB", "vfuk 0x20 = 0x5AF1", "vg 0x20 = 0x59E8", "vga 0x20 = 0x598D", "vgah 0x20 = 0x598D", "vge 0x20 = 0x5A67", "vgeg 0x20 = 0x5A67", "vgey 0x20 = 0x5A4A", "vgh 0x20 = 0x5AE3", "vgho 0x20 = 0x5AE3", "vgk 0x20 = 0x5AE9", "vgkt 0x20 = 0x5AE9", "vgo 0x20 = 0x5A05", "vgog 0x20 = 0x5A05", "vgv 0x20 = 0x5A55", "vgvh 0x20 = 0x5A55", "vgx 0x20 = 0x59E8", "vgxw 0x20 = 0x59E8", "vhc 0x20 = 0x53DF", "vhcu 0x20 = 0x53DF", "vhk 0x20 = 0x8080", "vi 0x20 = 0x5F55", "vii 0x20 = 0x96B6", "vij 0x20 = 0x8083", "vijh 0x20 = 0x5265", "vijk 0x20 = 0x8083", "vip 0x20 = 0x902E", "viph 0x20 = 0x5AE6", "vipi 0x20 = 0x902E", "vipiz 0x20 = 0x902F", "viq 0x20 = 0x59DA", "viqn 0x20 = 0x59DA", "vit 0x20 = 0x5999", "vitt 0x20 = 0x5999", "viu 0x20 = 0x5F55", "vj 0x20 = 0x65ED", "vjd 0x20 = 0x65ED", "vjf 0x20 = 0x65EE", "vjfg 0x20 = 0x5A0C", "vjg 0x20 = 0x59B2", "vjgg 0x20 = 0x59B2", "vjj 0x20 = 0x5A3C", "vjjg 0x20 = 0x5A3C", "vjl 0x20 = 0x5AAA", "vjlg 0x20 = 0x5AAA", "vjs 0x20 = 0x5DE2", "vjsj 0x20 = 0x527F", "vjsu 0x20 = 0x5DE2", "vk 0x20 = 0x5982", "vkb 0x20 = 0x90B5", "vkbh 0x20 = 0x90B5", "vkc 0x20 = 0x9095", "vkcb 0x20 = 0x9095", "vke 0x20 = 0x5A1F", "vkeg 0x20 = 0x5A1F", "vkf 0x20 = 0x53EC", "vkg 0x20 = 0x5982", "vkgd 0x20 = 0x5A31", "vkl 0x20 = 0x52AD", "vkln 0x20 = 0x52AD", "vkm 0x20 = 0x5A32", "vkmw 0x20 = 0x5A32", "vkn 0x20 = 0x6055", "vknu 0x20 = 0x6055", "vkp 0x20 = 0x8FE2", "vkpd 0x20 = 0x8FE2", "vkx 0x20 = 0x7D6E", "vkxi 0x20 = 0x7D6E", "vl 0x20 = 0x8205", "vld 0x20 = 0x59FB", "vldy 0x20 = 0x59FB", "vlf 0x20 = 0x753E", "vll 0x20 = 0x8205", "vllb 0x20 = 0x8205", "vlq 0x20 = 0x908B", "vlqp 0x20 = 0x908B", "vlx 0x20 = 0x5AD8", "vlxi 0x20 = 0x5AD8", "vmg 0x20 = 0x59AF", "vmgn 0x20 = 0x5A09", "vmm 0x20 = 0x59D7", "vmmg 0x20 = 0x59D7", "vn 0x20 = 0x5200", "vnf 0x20 = 0x599E", "vnfg 0x20 = 0x599E", "vng 0x20 = 0x5F50", "vngg 0x20 = 0x5F50", "vnh 0x20 = 0x5A9A", "vnhe 0x20 = 0x5A7F", "vnhg 0x20 = 0x5A9A", "vnn 0x20 = 0x5983", "vnnn 0x20 = 0x5DDB", "vnt 0x20 = 0x5200", "vntn 0x20 = 0x5A13", "vnu 0x20 = 0x9F20", "vnud 0x20 = 0x9F37", "vnuk 0x20 = 0x9F2F", "vnum 0x20 = 0x9F2C", "vnun 0x20 = 0x9F20", "vnuv 0x20 = 0x9F22", "vnuvz 0x20 = 0x9F39", "vnx 0x20 = 0x59AE", "vnxn 0x20 = 0x59AE", "vny 0x20 = 0x59D2", "vnyw 0x20 = 0x59D2", "vo 0x20 = 0x7075", "vou 0x20 = 0x7075", "vp 0x20 = 0x5DE1", "vpe 0x20 = 0x5AC1", "vpey 0x20 = 0x5AC1", "vpj 0x20 = 0x5A76", "vpjh 0x20 = 0x5A76", "vpm 0x20 = 0x5E1A", "vpmh 0x20 = 0x5E1A", "vpq 0x20 = 0x5A49", "vpqb 0x20 = 0x5A49", "vpr 0x20 = 0x5AD4", "vprw 0x20 = 0x5AD4", "vpt 0x20 = 0x59F9", "vpta 0x20 = 0x59F9", "vpv 0x20 = 0x5DE1", "vq 0x20 = 0x5A5A", "vqa 0x20 = 0x5A5A", "vqaj 0x20 = 0x5A5A", "vqk 0x20 = 0x5A29", "vqkq 0x20 = 0x5A29", "vqo 0x20 = 0x8204", "vqou 0x20 = 0x8204", "vqy 0x20 = 0x5981", "vqyg 0x20 = 0x9E20", "vqyy 0x20 = 0x5981", "vri 0x20 = 0x59DD", "vriy 0x20 = 0x59DD", "vrt 0x20 = 0x5A62", "vrtf 0x20 = 0x5A62", "vs 0x20 = 0x6742", "vsf 0x20 = 0x5AD6", "vsfi 0x20 = 0x5AD6", "vsu 0x20 = 0x6742", "vt 0x20 = 0x4E5D", "vtd 0x20 = 0x5996", "vtdj 0x20 = 0x5A07", "vtdy 0x20 = 0x5996", "vte 0x20 = 0x5C39", "vtf 0x20 = 0x598A", "vtfg 0x20 = 0x598A", "vtg 0x20 = 0x59D3", "vtgg 0x20 = 0x59D3", "vth 0x20 = 0x81FC", "vthg 0x20 = 0x81FC", "vthn 0x20 = 0x5AB3", "vtk 0x20 = 0x7FA4", "vtkb 0x20 = 0x90E1", "vtkd 0x20 = 0x7FA4", "vtkdz 0x20 = 0x541B", "vtl 0x20 = 0x5AB2", "vtlx 0x20 = 0x5AB2", "vtn 0x20 = 0x4E5D", "vtnt 0x20 = 0x59CA", "vtr 0x20 = 0x5A25", "vtrt 0x20 = 0x5A25", "vu 0x20 = 0x5ACC", "vua 0x20 = 0x59D8", "vuah 0x20 = 0x59D8", "vuj 0x20 = 0x5A75", "vujf 0x20 = 0x5A75", "vujh 0x20 = 0x5ADC", "vum 0x20 = 0x5AE1", "vumd 0x20 = 0x5AE1", "vuq 0x20 = 0x59E3", "vuqy 0x20 = 0x59E3", "vus 0x20 = 0x5A34", "vusy 0x20 = 0x5A34", "vut 0x20 = 0x5AC9", "vutd 0x20 = 0x5AC9", "vuth 0x20 = 0x9997", "vuv 0x20 = 0x5ACC", "vuvo 0x20 = 0x5ACC", "vux 0x20 = 0x5A23", "vuxt 0x20 = 0x5A23", "vv 0x20 = 0x5987", "vvf 0x20 = 0x5A1C", "vvfb 0x20 = 0x5A1C", "vvg 0x20 = 0x5987", "vvh 0x20 = 0x5AC2", "vvhc 0x20 = 0x5AC2", "vvv 0x20 = 0x", "vvvv 0x20 = 0x5973", "vwi 0x20 = 0x81FE", "vwy 0x20 = 0x5997", "vwyn 0x20 = 0x5997", "vx 0x20 = 0x59C6", "vxg 0x20 = 0x59C6", "vxgu 0x20 = 0x59C6", "vxx 0x20 = 0x59A3", "vxxn 0x20 = 0x59A3", "vy 0x20 = 0x59A8", "vyi 0x20 = 0x4E38", "vyiz 0x20 = 0x5203", "vyl 0x20 = 0x59AB", "vylg 0x20 = 0x5B17", "vyly 0x20 = 0x59AB", "vyn 0x20 = 0x59A8", "vynt 0x20 = 0x5992", "vynu 0x20 = 0x5FCD", "vyp 0x20 = 0x5A77", "vyps 0x20 = 0x5A77", "vys 0x20 = 0x5B37", "vysc 0x20 = 0x5B37", "vyv 0x20 = 0x5A18", "vyve 0x20 = 0x5A18", "w 0x20 = 0x4EBA", "wa 0x20 = 0x4EE3", "wad 0x20 = 0x504C", "wadk 0x20 = 0x504C", "waf 0x20 = 0x4EDD", "waff 0x20 = 0x57A1", "wah 0x20 = 0x4F22", "waht 0x20 = 0x4F22", "waj 0x20 = 0x501F", "wajg 0x20 = 0x501F", "wajv 0x20 = 0x5043", "wal 0x20 = 0x9EDB", "walo 0x20 = 0x9EDB", "wam 0x20 = 0x8D37", "wamj 0x20 = 0x5CB1", "wamu 0x20 = 0x8D37", "waqj 0x20 = 0x50ED", "waqt 0x20 = 0x5106", "waqy 0x20 = 0x4F1B", "war 0x20 = 0x726E", "warh 0x20 = 0x726E", "wat 0x20 = 0x4F10", "watq 0x20 = 0x4FA5", "waw 0x20 = 0x4F9B", "wawy 0x20 = 0x4F9B", "way 0x20 = 0x4EE3", "waye 0x20 = 0x888B", "wb 0x20 = 0x4ED6", "wba 0x20 = 0x6217", "wbat 0x20 = 0x6217", "wbb 0x20 = 0x4ED3", "wbg 0x20 = 0x4ED4", "wbgz 0x20 = 0x4F74", "wbj 0x20 = 0x521B", "wbjh 0x20 = 0x521B", "wbn 0x20 = 0x4ED6", "wc 0x20 = 0x516C", "wcd 0x20 = 0x9882", "wcdm 0x20 = 0x9882", "wce 0x20 = 0x4FD1", "wceh 0x20 = 0x4FD1", "wcg 0x20 = 0x74EE", "wcgn 0x20 = 0x74EE", "wcn 0x20 = 0x7FC1", "wcnf 0x20 = 0x7FC1", "wcr 0x20 = 0x4F94", "wcrh 0x20 = 0x4F94", "wct 0x20 = 0x4FDF", "wctd 0x20 = 0x4FDF", "wcu 0x20 = 0x516C", "wcw 0x20 = 0x4FCA", "wcwt 0x20 = 0x4FCA", "wcwy 0x20 = 0x50A9", "wcy 0x20 = 0x4EC5", "wd 0x20 = 0x4F30", "wda 0x20 = 0x4F50", "wdag 0x20 = 0x4F50", "wde 0x20 = 0x4F91", "wdeg 0x20 = 0x4F91", "wdf 0x20 = 0x4F89", "wdfn 0x20 = 0x4F89", "wdg 0x20 = 0x4F30", "wdgz 0x20 = 0x4EE8", "wdj 0x20 = 0x4F70", "wdjd 0x20 = 0x4FF3", "wdjg 0x20 = 0x4F70", "wdjn 0x20 = 0x4FFA", "wdk 0x20 = 0x4F51", "wdkg 0x20 = 0x4F51", "wdm 0x20 = 0x6BB5", "wdmc 0x20 = 0x6BB5", "wdn 0x20 = 0x4F18", "wdnn 0x20 = 0x4F18", "wds 0x20 = 0x501A", "wdsk 0x20 = 0x501A", "wdt 0x20 = 0x505A", "wdtf 0x20 = 0x4FE6", "wdty 0x20 = 0x505A", "wdu 0x20 = 0x50DA", "wdui 0x20 = 0x50DA", "wdw 0x20 = 0x50A3", "wdwh 0x20 = 0x4FF8", "wdwi 0x20 = 0x50A3", "wdy 0x20 = 0x4F0F", "wdyy 0x20 = 0x4ED7", "we 0x20 = 0x4ECD", "web 0x20 = 0x4FD8", "webg 0x20 = 0x4FD8", "weh 0x20 = 0x4F63", "wen 0x20 = 0x4ECD", "wf 0x20 = 0x4F1A", "wfa 0x20 = 0x507E", "wfam 0x20 = 0x507E", "wfc 0x20 = 0x4F1A", "wfcb 0x20 = 0x90D0", "wfcj 0x20 = 0x523D", "wfcu 0x20 = 0x4F1A", "wfcy 0x20 = 0x4F0E", "wfd 0x20 = 0x5112", "wfdj 0x20 = 0x5112", "wff 0x20 = 0x4F8D", "wffg 0x20 = 0x4F73", "wffy 0x20 = 0x4F8D", "wfg 0x20 = 0x4EC1", "wfgz 0x20 = 0x4ED5", "wfh 0x20 = 0x4EC0", "wfhg 0x20 = 0x503C", "wfi 0x20 = 0x796D", "wfil 0x20 = 0x7572", "wfiu 0x20 = 0x796D", "wfiuz 0x20 = 0x4F58", "wfiy 0x20 = 0x4FC5", "wfk 0x20 = 0x820D", "wfkb 0x20 = 0x8212", "wfkf 0x20 = 0x820D", "wfkg 0x20 = 0x4F76", "wfkk 0x20 = 0x50D6", "wfl 0x20 = 0x8206", "wflw 0x20 = 0x8206", "wfm 0x20 = 0x74BA", "wfmo 0x20 = 0x7228", "wfmy 0x20 = 0x74BA", "wfn 0x20 = 0x4F1F", "wfnh 0x20 = 0x4F1F", "wfny 0x20 = 0x4F20", "wft 0x20 = 0x4F6C", "wftx 0x20 = 0x4F6C", "wfv 0x20 = 0x4F5E", "wfvg 0x20 = 0x4F5E", "wfy 0x20 = 0x4ED8", "wg 0x20 = 0x5168", "wgc 0x20 = 0x5012", "wgcf 0x20 = 0x4F84", "wgcj 0x20 = 0x5012", "wgd 0x20 = 0x7678", "wgdu 0x20 = 0x7678", "wge 0x20 = 0x5085", "wgef 0x20 = 0x5085", "wgeg 0x20 = 0x5029", "wgej 0x20 = 0x4FDE", "wgen 0x20 = 0x6108", "wgenz 0x20 = 0x6BF9", "wgep 0x20 = 0x903E", "wgeq 0x20 = 0x89CE", "wgf 0x20 = 0x5168", "wgg 0x20 = 0x4F0D", "wgi 0x20 = 0x5251", "wgif 0x20 = 0x4F65", "wgij 0x20 = 0x5251", "wgit 0x20 = 0x655B", "wgj 0x20 = 0x4FBF", "wgjq 0x20 = 0x4FBF", "wgk 0x20 = 0x5408", "wgka 0x20 = 0x9FA0", "wgkb 0x20 = 0x547D", "wgkf 0x20 = 0x5408", "wgkg 0x20 = 0x9E3D", "wgkl 0x20 = 0x76D2", "wgkm 0x20 = 0x51F3", "wgkmz 0x20 = 0x988C", "wgkn 0x20 = 0x7FD5", "wgkq 0x20 = 0x4F7F", "wgkr 0x20 = 0x62FF", "wgku 0x20 = 0x767B", "wgkw 0x20 = 0x6B59", "wgkx 0x20 = 0x9F9B", "wgl 0x20 = 0x50F5", "wglg 0x20 = 0x50F5", "wgm 0x20 = 0x4FE9", "wgmw 0x20 = 0x4FE9", "wgmy 0x20 = 0x503A", "wgmyz 0x20 = 0x4FEA", "wgn 0x20 = 0x4F64", "wgnb 0x20 = 0x516E", "wgnn 0x20 = 0x4F64", "wgo 0x20 = 0x4FE8", "wgod 0x20 = 0x4FE8", "wgq 0x20 = 0x4F8B", "wgqj 0x20 = 0x4F8B", "wgqt 0x20 = 0x50B2", "wgu 0x20 = 0x4FA0", "wguw 0x20 = 0x4FA0", "wh 0x20 = 0x4E2A", "whf 0x20 = 0x4F01", "whh 0x20 = 0x4F67", "whhy 0x20 = 0x4F67", "whj 0x20 = 0x4E2A", "whjh 0x20 = 0x502C", "whm 0x20 = 0x4FA6", "whmy 0x20 = 0x4FA6", "whn 0x20 = 0x5019", "whnd 0x20 = 0x5019", "wht 0x20 = 0x4FEE", "whtd 0x20 = 0x500F", "whte 0x20 = 0x4FEE", "whtn 0x20 = 0x60A0", "whty 0x20 = 0x6538", "whw 0x20 = 0x4FF1", "whwy 0x20 = 0x4FF1", "why 0x20 = 0x4EC6", "wi 0x20 = 0x507F", "wie 0x20 = 0x4FCF", "wieg 0x20 = 0x4FCF", "wim 0x20 = 0x5018", "wimk 0x20 = 0x5018", "wip 0x20 = 0x507F", "wipc 0x20 = 0x507F", "wipq 0x20 = 0x50A5", "wiq 0x20 = 0x4F7B", "wiqn 0x20 = 0x4F7B", "wiu 0x20 = 0x6C3D", "wj 0x20 = 0x4ECB", "wjf 0x20 = 0x4FDA", "wjfg 0x20 = 0x4FDA", "wjg 0x20 = 0x4F46", "wjgg 0x20 = 0x4F46", "wjh 0x20 = 0x4F38", "wjhh 0x20 = 0x4F38", "wjj 0x20 = 0x4ECB", "wjjg 0x20 = 0x5021", "wjm 0x20 = 0x5076", "wjmy 0x20 = 0x5076", "wjq 0x20 = 0x5048", "wjqn 0x20 = 0x5048", "wjs 0x20 = 0x502E", "wjsy 0x20 = 0x502E", "wk 0x20 = 0x4FDD", "wkg 0x20 = 0x4FE3", "wkgd 0x20 = 0x4FE3", "wkh 0x20 = 0x4FC3", "wkhh 0x20 = 0x4EF2", "wkhy 0x20 = 0x4FC3", "wkk 0x20 = 0x4FA3", "wkkg 0x20 = 0x4FA3", "wkq 0x20 = 0x4F83", "wkqn 0x20 = 0x4F83", "wks 0x20 = 0x4FDD", "wksf 0x20 = 0x5821", "wkso 0x20 = 0x7172", "wksy 0x20 = 0x4FDD", "wl 0x20 = 0x4F43", "wlg 0x20 = 0x4F43", "wlge 0x20 = 0x504E", "wlgez 0x20 = 0x5107", "wlk 0x20 = 0x4F3D", "wlkg 0x20 = 0x4F3D", "wll 0x20 = 0x5121", "wlll 0x20 = 0x5121", "wln 0x20 = 0x4EC2", "wm 0x20 = 0x4ED9", "wmf 0x20 = 0x501C", "wmfk 0x20 = 0x501C", "wmg 0x20 = 0x4F69", "wmgh 0x20 = 0x4F69", "wmgk 0x20 = 0x4F97", "wmgn 0x20 = 0x4FDC", "wmh 0x20 = 0x4ED9", "wmj 0x20 = 0x4FA7", "wmjh 0x20 = 0x4FA7", "wmn 0x20 = 0x4EC9", "wmw 0x20 = 0x50AC", "wmwy 0x20 = 0x50AC", "wn 0x20 = 0x4EBF", "wnb 0x20 = 0x5014", "wnbm 0x20 = 0x5014", "wnd 0x20 = 0x5028", "wndg 0x20 = 0x5028", "wng 0x20 = 0x4F3A", "wngk 0x20 = 0x4F3A", "wnh 0x20 = 0x5047", "wnhc 0x20 = 0x5047", "wnk 0x20 = 0x50FB", "wnku 0x20 = 0x50FB", "wnn 0x20 = 0x4EBF", "wnnf 0x20 = 0x961C", "wnnp 0x20 = 0x8FFD", "wnt 0x20 = 0x4FAF", "wntd 0x20 = 0x4FAF", "wnx 0x20 = 0x4F32", "wnxn 0x20 = 0x4F32", "wny 0x20 = 0x4F3C", "wnyw 0x20 = 0x4F3C", "wo 0x20 = 0x4F19", "wov 0x20 = 0x507B", "wovg 0x20 = 0x507B", "woy 0x20 = 0x4F19", "wpe 0x20 = 0x4FAC", "wpey 0x20 = 0x4FAC", "wpg 0x20 = 0x4F2B", "wpgg 0x20 = 0x4F2B", "wpn 0x20 = 0x500C", "wpnn 0x20 = 0x500C", "wpr 0x20 = 0x50A7", "wprw 0x20 = 0x50A7", "wpw 0x20 = 0x5025", "wpwa 0x20 = 0x5025", "wpx 0x20 = 0x4F57", "wpxn 0x20 = 0x4F57", "wq 0x20 = 0x4F60", "wqa 0x20 = 0x4F4E", "wqay 0x20 = 0x4F4E", "wqb 0x20 = 0x7237", "wqbh 0x20 = 0x4EF0", "wqbj 0x20 = 0x7237", "wqc 0x20 = 0x7238", "wqcb 0x20 = 0x7238", "wqd 0x20 = 0x510B", "wqdy 0x20 = 0x510B", "wqf 0x20 = 0x91DC", "wqfu 0x20 = 0x91DC", "wqi 0x20 = 0x4F60", "wqin 0x20 = 0x60A8", "wqiy 0x20 = 0x4F60", "wqj 0x20 = 0x50CF", "wqje 0x20 = 0x50CF", "wqk 0x20 = 0x4F5D", "wqkg 0x20 = 0x4F5D", "wqq 0x20 = 0x4F88", "wqqq 0x20 = 0x7239", "wqqy 0x20 = 0x4F88", "wqr 0x20 = 0x65A7", "wqrj 0x20 = 0x65A7", "wqrn 0x20 = 0x506C", "wqu 0x20 = 0x7236", "wr 0x20 = 0x4F2F", "wrg 0x20 = 0x4F2F", "wrh 0x20 = 0x4EF6", "wrhh 0x20 = 0x4EF6", "wri 0x20 = 0x4F8F", "wriy 0x20 = 0x4F8F", "wrq 0x20 = 0x5080", "wrqc 0x20 = 0x5080", "wrt 0x20 = 0x4FFE", "wrtf 0x20 = 0x4FFE", "wrw 0x20 = 0x4F5A", "wrwy 0x20 = 0x4F5A", "ws 0x20 = 0x4F11", "wsg 0x20 = 0x4F53", "wsgg 0x20 = 0x4F53", "wsh 0x20 = 0x4EC3", "wsk 0x20 = 0x4F55", "wskg 0x20 = 0x4F55", "wso 0x20 = 0x50F3", "wsoy 0x20 = 0x50F3", "wsq 0x20 = 0x9E3A", "wsqg 0x20 = 0x9E3A", "wss 0x20 = 0x5088", "wssy 0x20 = 0x5088", "wsy 0x20 = 0x4F11", "wt 0x20 = 0x4F5C", "wta 0x20 = 0x4F25", "wtay 0x20 = 0x4F25", "wtc 0x20 = 0x53D9", "wtcy 0x20 = 0x53D9", "wtcyz 0x20 = 0x4EEB", "wtd 0x20 = 0x4FA8", "wtdj 0x20 = 0x4FA8", "wtf 0x20 = 0x4EFB", "wtfg 0x20 = 0x4EFB", "wtfh 0x20 = 0x4EDF", "wtfhz 0x20 = 0x4EF5", "wtfm 0x20 = 0x51ED", "wtfmz 0x20 = 0x8D41", "wtfn 0x20 = 0x6041", "wth 0x20 = 0x4EBB", "wthf 0x20 = 0x4F5C", "wtj 0x20 = 0x4FD0", "wtjh 0x20 = 0x4FD0", "wtl 0x20 = 0x4F24", "wtln 0x20 = 0x4F24", "wtlt 0x20 = 0x50BB", "wtn 0x20 = 0x4EE1", "wtnn 0x20 = 0x4EE1", "wtp 0x20 = 0x9014", "wtpi 0x20 = 0x9014", "wtr 0x20 = 0x4FC4", "wtrt 0x20 = 0x4FC4", "wtu 0x20 = 0x4F59", "wtuf 0x20 = 0x659C", "wtuy 0x20 = 0x4F5F", "wtv 0x20 = 0x502D", "wtvg 0x20 = 0x502D", "wtx 0x20 = 0x4FAE", "wtxu 0x20 = 0x4FAE", "wty 0x20 = 0x516B", "wu 0x20 = 0x4EEC", "wud 0x20 = 0x5026", "wudb 0x20 = 0x5026", "wudh 0x20 = 0x4F6F", "wuf 0x20 = 0x4F34", "wufh 0x20 = 0x4F34", "wug 0x20 = 0x4F4D", "wuh 0x20 = 0x4F1E", "wuhj 0x20 = 0x4F1E", "wuj 0x20 = 0x50EE", "wujf 0x20 = 0x50EE", "wuk 0x20 = 0x500D", "wukg 0x20 = 0x500D", "wul 0x20 = 0x50E7", "wulj 0x20 = 0x50E7", "wun 0x20 = 0x4EEC", "wup 0x20 = 0x508D", "wupy 0x20 = 0x508D", "wuq 0x20 = 0x4F7C", "wuqy 0x20 = 0x4F7C", "wv 0x20 = 0x5206", "wvb 0x20 = 0x5206", "wvd 0x20 = 0x9881", "wvdm 0x20 = 0x9881", "wvf 0x20 = 0x5065", "wvff 0x20 = 0x574C", "wvfp 0x20 = 0x5065", "wvl 0x20 = 0x76C6", "wvlf 0x20 = 0x76C6", "wvm 0x20 = 0x8D2B", "wvmj 0x20 = 0x5C94", "wvmu 0x20 = 0x8D2B", "wvn 0x20 = 0x4EC7", "wvnu 0x20 = 0x5FFF", "wvp 0x20 = 0x4FB5", "wvpc 0x20 = 0x4FB5", "wvq 0x20 = 0x502A", "wvqn 0x20 = 0x502A", "wvt 0x20 = 0x4F0A", "wvtt 0x20 = 0x4F0A", "wvy 0x20 = 0x4EDE", "wvyy 0x20 = 0x4EDE", "ww 0x20 = 0x4ECE", "wwb 0x20 = 0x8038", "wwbf 0x20 = 0x8038", "wwbn 0x20 = 0x4F27", "wwe 0x20 = 0x4F7E", "wweg 0x20 = 0x4FCE", "wwegz 0x20 = 0x4F7E", "wwf 0x20 = 0x5750", "wwfc 0x20 = 0x4FA9", "wwff 0x20 = 0x5750", "wwfi 0x20 = 0x50BA", "wwg 0x20 = 0x4E1B", "wwgf 0x20 = 0x4E1B", "wwgi 0x20 = 0x4FED", "wwgj 0x20 = 0x5077", "wwj 0x20 = 0x4EF7", "wwjh 0x20 = 0x4EF7", "wwk 0x20 = 0x8C37", "wwkf 0x20 = 0x8C37", "wwkg 0x20 = 0x9E46", "wwkw 0x20 = 0x6B32", "wwn 0x20 = 0x6002", "wwnu 0x20 = 0x6002", "wwv 0x20 = 0x4EFD", "wwvn 0x20 = 0x4EFD", "www 0x20 = 0x4F17", "wwwk 0x20 = 0x4FD7", "wwwu 0x20 = 0x4F17", "wwww 0x20 = 0x4EBA", "wwx 0x20 = 0x4F26", "wwxn 0x20 = 0x4F26", "wwy 0x20 = 0x4ECE", "wwyc 0x20 = 0x4F36", "wwyo 0x20 = 0x50EC", "wx 0x20 = 0x5316", "wxb 0x20 = 0x4ED1", "wxd 0x20 = 0x503E", "wxdm 0x20 = 0x503E", "wxf 0x20 = 0x534E", "wxfj 0x20 = 0x534E", "wxj 0x20 = 0x4F5B", "wxjh 0x20 = 0x4F5B", "wxm 0x20 = 0x8D27", "wxmu 0x20 = 0x8D27", "wxn 0x20 = 0x5316", "wxx 0x20 = 0x4EF3", "wxxn 0x20 = 0x4EF3", "wxxr 0x20 = 0x5055", "wy 0x20 = 0x4FE1", "wyb 0x20 = 0x79BD", "wybc 0x20 = 0x79BD", "wyc 0x20 = 0x4EE4", "wycb 0x20 = 0x90BB", "wycm 0x20 = 0x9886", "wycn 0x20 = 0x7FCE", "wycnz 0x20 = 0x74F4", "wycu 0x20 = 0x4EE4", "wye 0x20 = 0x4F9D", "wyeb 0x20 = 0x96BD", "wyey 0x20 = 0x4F9D", "wyf 0x20 = 0x50A8", "wyfj 0x20 = 0x50A8", "wyfjz 0x20 = 0x96BC", "wyg 0x20 = 0x4FE1", "wygg 0x20 = 0x4F4F", "wygz 0x20 = 0x96B9", "wyi 0x20 = 0x50E6", "wyin 0x20 = 0x50E6", "wyj 0x20 = 0x4FAA", "wyjh 0x20 = 0x4FAA", "wyk 0x20 = 0x552E", "wykf 0x20 = 0x552E", "wyl 0x20 = 0x4F2A", "wyly 0x20 = 0x4F2A", "wym 0x20 = 0x4F09", "wymn 0x20 = 0x4F09", "wyn 0x20 = 0x4EFF", "wyna 0x20 = 0x504F", "wynb 0x20 = 0x4ECA", "wyne 0x20 = 0x887E", "wynk 0x20 = 0x542B", "wynm 0x20 = 0x8D2A", "wynmz 0x20 = 0x9894", "wynn 0x20 = 0x5FF5", "wyo 0x20 = 0x7126", "wyog 0x20 = 0x9E6A", "wyoj 0x20 = 0x5281", "wyou 0x20 = 0x7126", "wyp 0x20 = 0x505C", "wyps 0x20 = 0x505C", "wyq 0x20 = 0x4EEA", "wyqy 0x20 = 0x4EEA", "wys 0x20 = 0x96C6", "wysu 0x20 = 0x96C6", "wyv 0x20 = 0x98DF", "wyve 0x20 = 0x98DF", "wyw 0x20 = 0x4FEF", "wywf 0x20 = 0x4FEF", "wyy 0x20 = 0x96E0", "wyyy 0x20 = 0x96E0", "x 0x20 = 0x7ECF", "xa 0x20 = 0x7EA2", "xad 0x20 = 0x7ED2", "xadt 0x20 = 0x7ED2", "xaf 0x20 = 0x7EC0", "xafg 0x20 = 0x7EC0", "xafh 0x20 = 0x7F02", "xag 0x20 = 0x7EA2", "xan 0x20 = 0x7EC3", "xann 0x20 = 0x7EC1", "xanw 0x20 = 0x7EC3", "xat 0x20 = 0x7ED5", "xatq 0x20 = 0x7ED5", "xb 0x20 = 0x5F1B", "xbg 0x20 = 0x5F2D", "xbm 0x20 = 0x7ECC", "xbmh 0x20 = 0x7ECC", "xbn 0x20 = 0x5F1B", "xc 0x20 = 0x7ECF", "xca 0x20 = 0x7ECF", "xcag 0x20 = 0x7ECF", "xcagz 0x20 = 0x5F2A", "xcb 0x20 = 0x7EBE", "xcbh 0x20 = 0x7EBE", "xcc 0x20 = 0x7F00", "xccc 0x20 = 0x7F00", "xcf 0x20 = 0x7ECE", "xcfh 0x20 = 0x7ECE", "xck 0x20 = 0x7ED0", "xckg 0x20 = 0x7ED0", "xcy 0x20 = 0x5F18", "xd 0x20 = 0x9877", "xdc 0x20 = 0x7EC2", "xdcy 0x20 = 0x7EC2", "xde 0x20 = 0x6BCB", "xdf 0x20 = 0x7ED4", "xdff 0x20 = 0x7F1B", "xdfn 0x20 = 0x7ED4", "xdg 0x20 = 0x7F04", "xdgt 0x20 = 0x7F04", "xdj 0x20 = 0x5F3C", "xdjd 0x20 = 0x7EEF", "xdjx 0x20 = 0x5F3C", "xdm 0x20 = 0x9877", "xdmd 0x20 = 0x7F05", "xdmy 0x20 = 0x9877", "xds 0x20 = 0x7EEE", "xdsk 0x20 = 0x7EEE", "xdt 0x20 = 0x7ED1", "xdtb 0x20 = 0x7ED1", "xdu 0x20 = 0x7F2D", "xdui 0x20 = 0x7F2D", "xe 0x20 = 0x7EA7", "xee 0x20 = 0x7EF7", "xeeg 0x20 = 0x7EF7", "xef 0x20 = 0x7F13", "xefc 0x20 = 0x7F13", "xeg 0x20 = 0x7EC4", "xegg 0x20 = 0x7EC4", "xej 0x20 = 0x8821", "xejj 0x20 = 0x8821", "xep 0x20 = 0x7EF6", "xepc 0x20 = 0x7EF6", "xeu 0x20 = 0x5F56", "xev 0x20 = 0x7EE5", "xevg 0x20 = 0x7EE5", "xey 0x20 = 0x7EA7", "xeyy 0x20 = 0x7EA7", "xf 0x20 = 0x7ED3", "xfc 0x20 = 0x7EAD", "xfcy 0x20 = 0x7EAD", "xfg 0x20 = 0x7586", "xfgg 0x20 = 0x7586", "xfh 0x20 = 0x7F1C", "xfhw 0x20 = 0x7F1C", "xfk 0x20 = 0x7ED3", "xfkg 0x20 = 0x7ED3", "xfkm 0x20 = 0x7F2C", "xfm 0x20 = 0x8D2F", "xfmu 0x20 = 0x8D2F", "xfn 0x20 = 0x7EED", "xfnd 0x20 = 0x7EED", "xfnh 0x20 = 0x7EAC", "xfq 0x20 = 0x9E28", "xfqg 0x20 = 0x9E28", "xft 0x20 = 0x7EEA", "xftj 0x20 = 0x7EEA", "xfw 0x20 = 0x7EEB", "xfwt 0x20 = 0x7EEB", "xfy 0x20 = 0x7EA3", "xg 0x20 = 0x7EBF", "xgb 0x20 = 0x7EAF", "xgbn 0x20 = 0x7EAF", "xge 0x20 = 0x7F1A", "xgef 0x20 = 0x7F1A", "xgf 0x20 = 0x7EA1", "xgfh 0x20 = 0x7EA1", "xgj 0x20 = 0x7EE0", "xgjq 0x20 = 0x7EE0", "xgl 0x20 = 0x7F30", "xglg 0x20 = 0x7F30", "xgm 0x20 = 0x7EE9", "xgmy 0x20 = 0x7EE9", "xgo 0x20 = 0x5F5D", "xgoa 0x20 = 0x5F5D", "xgoj 0x20 = 0x7F19", "xgt 0x20 = 0x7EBF", "xgu 0x20 = 0x6BCD", "xgui 0x20 = 0x6BCD", "xgx 0x20 = 0x5F58", "xgxx 0x20 = 0x5F58", "xh 0x20 = 0x5F15", "xhh 0x20 = 0x5F15", "xhi 0x20 = 0x7F08", "xhit 0x20 = 0x7F08", "xhj 0x20 = 0x7EF0", "xhjh 0x20 = 0x7EF0", "xi 0x20 = 0x7EB1", "xid 0x20 = 0x988D", "xidm 0x20 = 0x988D", "xie 0x20 = 0x7EE1", "xieg 0x20 = 0x7EE1", "xim 0x20 = 0x7EF1", "ximk 0x20 = 0x7EF1", "xit 0x20 = 0x7EB1", "xitt 0x20 = 0x7EB1", "xiu 0x20 = 0x7CF8", "xj 0x20 = 0x65E8", "xjf 0x20 = 0x65E8", "xjg 0x20 = 0x7F07", "xjgh 0x20 = 0x7F07", "xjh 0x20 = 0x7EC5", "xjhh 0x20 = 0x7EC5", "xjk 0x20 = 0x5F17", "xjl 0x20 = 0x7F26", "xjlc 0x20 = 0x7F26", "xjm 0x20 = 0x8D39", "xjmu 0x20 = 0x8D39", "xjq 0x20 = 0x8274", "xjqc 0x20 = 0x8274", "xjt 0x20 = 0x7F06", "xjtq 0x20 = 0x7F06", "xjx 0x20 = 0x7EF2", "xjxx 0x20 = 0x7EF2", "xk 0x20 = 0x5F3A", "xkb 0x20 = 0x7F09", "xkbg 0x20 = 0x7F09", "xke 0x20 = 0x7EE2", "xkeg 0x20 = 0x7EE2", "xkh 0x20 = 0x7F0B", "xkhm 0x20 = 0x7F0B", "xkhp 0x20 = 0x7F31", "xkj 0x20 = 0x5F3A", "xkjh 0x20 = 0x729F", "xkjn 0x20 = 0x7EF3", "xkjy 0x20 = 0x5F3A", "xkk 0x20 = 0x7F32", "xkks 0x20 = 0x7F32", "xkw 0x20 = 0x7EC7", "xkwy 0x20 = 0x7EC7", "xl 0x20 = 0x7EC6", "xlg 0x20 = 0x7EC6", "xlge 0x20 = 0x7F33", "xln 0x20 = 0x5E7C", "xlny 0x20 = 0x7F0C", "xlx 0x20 = 0x8F94", "xlxi 0x20 = 0x7F27", "xlxk 0x20 = 0x8F94", "xm 0x20 = 0x7EB2", "xmf 0x20 = 0x7EF8", "xmfk 0x20 = 0x7EF8", "xmm 0x20 = 0x7F28", "xmmv 0x20 = 0x7F28", "xmq 0x20 = 0x7EB2", "xmqy 0x20 = 0x7EB2", "xmw 0x20 = 0x7EB3", "xmwy 0x20 = 0x7EB3", "xn 0x20 = 0x7EAA", "xna 0x20 = 0x7F17", "xnaj 0x20 = 0x7F17", "xnf 0x20 = 0x7EBD", "xnfg 0x20 = 0x7EBD", "xng 0x20 = 0x5F13", "xngn 0x20 = 0x5F13", "xnh 0x20 = 0x7EA0", "xnhh 0x20 = 0x7EA0", "xnn 0x20 = 0x7EAA", "xnny 0x20 = 0x5E7A", "xnnz 0x20 = 0x5E7B", "xnw 0x20 = 0x7F2A", "xnwe 0x20 = 0x7F2A", "xo 0x20 = 0x7EE7", "xon 0x20 = 0x7EE7", "xonn 0x20 = 0x7EE7", "xov 0x20 = 0x7F15", "xovg 0x20 = 0x7F15", "xox 0x20 = 0x7CA5", "xoxh 0x20 = 0x9B3B", "xoxn 0x20 = 0x7CA5", "xp 0x20 = 0x7EFC", "xpf 0x20 = 0x7EFC", "xpfi 0x20 = 0x7EFC", "xpg 0x20 = 0x7EFD", "xpgh 0x20 = 0x7EFD", "xpn 0x20 = 0x7EFE", "xpnn 0x20 = 0x7EFE", "xpr 0x20 = 0x7F24", "xprw 0x20 = 0x7F24", "xpw 0x20 = 0x7F29", "xpwj 0x20 = 0x7F29", "xq 0x20 = 0x7EA6", "xqa 0x20 = 0x7EB8", "xqan 0x20 = 0x7EB8", "xqc 0x20 = 0x7EDD", "xqcn 0x20 = 0x7EDD", "xqi 0x20 = 0x5F25", "xqiy 0x20 = 0x5F25", "xqj 0x20 = 0x7EDA", "xqjg 0x20 = 0x7EDA", "xqv 0x20 = 0x7EC9", "xqvg 0x20 = 0x7EC9", "xqy 0x20 = 0x7EA6", "xqyy 0x20 = 0x7EA6", "xr 0x20 = 0x7EF5", "xrc 0x20 = 0x5F27", "xrcy 0x20 = 0x5F27", "xrm 0x20 = 0x7EF5", "xrmh 0x20 = 0x7EF5", "xry 0x20 = 0x7F34", "xryt 0x20 = 0x7F34", "xsf 0x20 = 0x7F25", "xsfi 0x20 = 0x7F25", "xsh 0x20 = 0x7F03", "xshg 0x20 = 0x7F03", "xt 0x20 = 0x5F20", "xta 0x20 = 0x5F20", "xtah 0x20 = 0x7EDB", "xtay 0x20 = 0x5F20", "xtd 0x20 = 0x9896", "xtdh 0x20 = 0x7591", "xtdhz 0x20 = 0x8084", "xtdm 0x20 = 0x9896", "xtdp 0x20 = 0x7F1D", "xte 0x20 = 0x4E61", "xten 0x20 = 0x7EE3", "xtf 0x20 = 0x7EA4", "xtfh 0x20 = 0x7EA4", "xtfhz 0x20 = 0x7ED7", "xtfm 0x20 = 0x7F35", "xtg 0x20 = 0x7F0D", "xtgf 0x20 = 0x7F0D", "xth 0x20 = 0x7EFA", "xthk 0x20 = 0x7EFA", "xtk 0x20 = 0x7EDC", "xtkg 0x20 = 0x7EDC", "xtn 0x20 = 0x5315", "xtnn 0x20 = 0x7EA5", "xts 0x20 = 0x7EE6", "xtsy 0x20 = 0x7EE6", "xtu 0x20 = 0x7EC8", "xtuy 0x20 = 0x7EC8", "xtw 0x20 = 0x98E8", "xtwe 0x20 = 0x98E8", "xu 0x20 = 0x5F31", "xud 0x20 = 0x7F2E", "xudb 0x20 = 0x7EFB", "xudk 0x20 = 0x7F2E", "xuf 0x20 = 0x7ECA", "xufh 0x20 = 0x7ECA", "xuj 0x20 = 0x5F39", "xujf 0x20 = 0x5F39", "xul 0x20 = 0x7F2F", "xulj 0x20 = 0x7F2F", "xup 0x20 = 0x7F14", "xuph 0x20 = 0x7F14", "xuq 0x20 = 0x7EDE", "xuqy 0x20 = 0x7EDE", "xuv 0x20 = 0x7F23", "xuvo 0x20 = 0x7F23", "xuw 0x20 = 0x7F22", "xuwl 0x20 = 0x7F22", "xux 0x20 = 0x5F31", "xuxt 0x20 = 0x7EE8", "xuxu 0x20 = 0x5F31", "xv 0x20 = 0x7EFF", "xvi 0x20 = 0x7EFF", "xviy 0x20 = 0x7EFF", "xvj 0x20 = 0x7F2B", "xvjs 0x20 = 0x7F2B", "xvk 0x20 = 0x7ECD", "xvkg 0x20 = 0x7ECD", "xvl 0x20 = 0x7F01", "xvlg 0x20 = 0x7F01", "xvy 0x20 = 0x7EAB", "xvyy 0x20 = 0x7EA8", "xvyyz 0x20 = 0x7EAB", "xw 0x20 = 0x7ED9", "xwd 0x20 = 0x7F0E", "xwdc 0x20 = 0x7F0E", "xwf 0x20 = 0x7ED8", "xwfc 0x20 = 0x7ED8", "xwg 0x20 = 0x7ED9", "xwgk 0x20 = 0x7ED9", "xwgq 0x20 = 0x7F0F", "xwn 0x20 = 0x7F11", "xwnd 0x20 = 0x7F11", "xwnp 0x20 = 0x7F12", "xwv 0x20 = 0x7EB7", "xwvn 0x20 = 0x7EB7", "xww 0x20 = 0x7EB5", "xwwy 0x20 = 0x7EB5", "xwx 0x20 = 0x7EB6", "xwxn 0x20 = 0x7EB6", "xwy 0x20 = 0x7EF4", "xwyg 0x20 = 0x7EF4", "xx 0x20 = 0x6BD4", "xxa 0x20 = 0x757F", "xxal 0x20 = 0x757F", "xxe 0x20 = 0x7F18", "xxey 0x20 = 0x7F18", "xxf 0x20 = 0x6BD5", "xxfj 0x20 = 0x6BD5", "xxg 0x20 = 0x4E1D", "xxgf 0x20 = 0x4E1D", "xxgg 0x20 = 0x9E36", "xxgx 0x20 = 0x6BD9", "xxj 0x20 = 0x7ECB", "xxjh 0x20 = 0x7ECB", "xxm 0x20 = 0x5E7D", "xxmk 0x20 = 0x5E7D", "xxn 0x20 = 0x6BD4", "xxnt 0x20 = 0x6BD6", "xxr 0x20 = 0x7686", "xxrf 0x20 = 0x7686", "xxx 0x20 = 0x7E9F", "xxxn 0x20 = 0x7EB0", "xxxx 0x20 = 0x7E9F", "xy 0x20 = 0x7EBA", "xyb 0x20 = 0x7F21", "xybc 0x20 = 0x7F21", "xyc 0x20 = 0x7EDF", "xycq 0x20 = 0x7EDF", "xyj 0x20 = 0x7F20", "xyjf 0x20 = 0x7F20", "xym 0x20 = 0x7F1F", "xymk 0x20 = 0x7F1F", "xyn 0x20 = 0x7EBA", "xyna 0x20 = 0x7F16", "xyt 0x20 = 0x7EA9", "xyx 0x20 = 0x5F26", "xyxy 0x20 = 0x5F26", "xyy 0x20 = 0x7EB9", "y 0x20 = 0x4E3B", "ya 0x20 = 0x5EA6", "yaa 0x20 = 0x8BD5", "yaag 0x20 = 0x8BD5", "yaah 0x20 = 0x8BEB", "yac 0x20 = 0x5EA6", "yaci 0x20 = 0x5EA6", "yad 0x20 = 0x8BFA", "yadk 0x20 = 0x8BFA", "yadn 0x20 = 0x8C0C", "yaf 0x20 = 0x8C0B", "yafs 0x20 = 0x8C0B", "yag 0x20 = 0x8BA7", "yagg 0x20 = 0x8BD3", "yah 0x20 = 0x8BB6", "yaht 0x20 = 0x8BB6", "yaj 0x20 = 0x8C1F", "yajd 0x20 = 0x8C1F", "yak 0x20 = 0x8C28", "yakg 0x20 = 0x8C28", "yakgz 0x20 = 0x5ED1", "yam 0x20 = 0x5E2D", "yamh 0x20 = 0x5E2D", "yan 0x20 = 0x8C0D", "yang 0x20 = 0x8BB5", "yans 0x20 = 0x8C0D", "yany 0x20 = 0x5EB9", "yao 0x20 = 0x5EB6", "yaog 0x20 = 0x9E67", "yaoi 0x20 = 0x5EB6", "yaop 0x20 = 0x906E", "yaq 0x20 = 0x8BB4", "yaqj 0x20 = 0x8C2E", "yaqy 0x20 = 0x8BB4", "yaw 0x20 = 0x8BEC", "yaww 0x20 = 0x8BEC", "yay 0x20 = 0x8C0E", "yayq 0x20 = 0x8C0E", "yb 0x20 = 0x79BB", "ybb 0x20 = 0x90ED", "ybbh 0x20 = 0x90ED", "ybc 0x20 = 0x8BF9", "ybcy 0x20 = 0x8BF9", "ybf 0x20 = 0x4EAB", "ybh 0x20 = 0x909D", "ybhz 0x20 = 0x90A1", "ybj 0x20 = 0x4EA8", "ybm 0x20 = 0x79BB", "ybmc 0x20 = 0x79BB", "ybmh 0x20 = 0x8BCE", "ybo 0x20 = 0x70F9", "ybou 0x20 = 0x70F9", "ybq 0x20 = 0x9E51", "ybqg 0x20 = 0x9E51", "ybt 0x20 = 0x6566", "ybtn 0x20 = 0x619D", "ybty 0x20 = 0x6566", "ybv 0x20 = 0x719F", "ybvf 0x20 = 0x587E", "ybvo 0x20 = 0x719F", "ybvy 0x20 = 0x5B70", "yc 0x20 = 0x5145", "yca 0x20 = 0x5F03", "ycaj 0x20 = 0x5F03", "ycb 0x20 = 0x5E8F", "ycbe 0x20 = 0x88A4", "ycbk 0x20 = 0x5E8F", "ycbkz 0x20 = 0x8C32", "yce 0x20 = 0x80B2", "ycef 0x20 = 0x80B2", "yceh 0x20 = 0x8BF5", "ycf 0x20 = 0x8BD1", "ycfh 0x20 = 0x8BD1", "yck 0x20 = 0x8BD2", "yckg 0x20 = 0x8BD2", "ycq 0x20 = 0x5145", "ycqb 0x20 = 0x5145", "yct 0x20 = 0x8BF6", "yctd 0x20 = 0x8BF6", "yd 0x20 = 0x5E86", "ydg 0x20 = 0x8BC2", "ydi 0x20 = 0x5E86", "ydiy 0x20 = 0x8BD4", "ydj 0x20 = 0x8BFD", "ydjd 0x20 = 0x8BFD", "ydjj 0x20 = 0x9F51", "ydjn 0x20 = 0x5EB5", "ydm 0x20 = 0x658B", "ydmj 0x20 = 0x658B", "ydn 0x20 = 0x8BDA", "ydnt 0x20 = 0x8BDA", "ydo 0x20 = 0x8BD9", "ydoy 0x20 = 0x8BD9", "ydx 0x20 = 0x5E9E", "ydxv 0x20 = 0x5E9E", "ye 0x20 = 0x8863", "yef 0x20 = 0x8C16", "yefc 0x20 = 0x8C16", "yeg 0x20 = 0x8BC5", "yegg 0x20 = 0x8BC5", "yem 0x20 = 0x88D4", "yemk 0x20 = 0x88D4", "yer 0x20 = 0x8C23", "yerm 0x20 = 0x8C23", "yeu 0x20 = 0x8863", "yeuz 0x20 = 0x54C0", "yey 0x20 = 0x8BFC", "yeyy 0x20 = 0x8BFC", "yf 0x20 = 0x8BA1", "yfc 0x20 = 0x5E8B", "yfci 0x20 = 0x5E8B", "yfd 0x20 = 0x5E84", "yff 0x20 = 0x8BD7", "yffg 0x20 = 0x8BD6", "yffy 0x20 = 0x8BD7", "yfh 0x20 = 0x8BA1", "yfhz 0x20 = 0x8BA6", "yfj 0x20 = 0x8BB2", "yfjh 0x20 = 0x8BB2", "yfk 0x20 = 0x8BD8", "yfkg 0x20 = 0x8BD8", "yfm 0x20 = 0x8C33", "yfmd 0x20 = 0x8C33", "yfn 0x20 = 0x8BFB", "yfnd 0x20 = 0x8BFB", "yfnh 0x20 = 0x8BB3", "yfq 0x20 = 0x5E91", "yfqv 0x20 = 0x5E91", "yft 0x20 = 0x8BF8", "yftj 0x20 = 0x8BF8", "yfy 0x20 = 0x8BA8", "yg 0x20 = 0x4E3B", "yga 0x20 = 0x658C", "ygah 0x20 = 0x658C", "ygd 0x20 = 0x4E3B", "yge 0x20 = 0x8BF7", "ygeg 0x20 = 0x8BF7", "ygh 0x20 = 0x8BC1", "yghg 0x20 = 0x8BC1", "ygk 0x20 = 0x8BED", "ygkg 0x20 = 0x8BED", "ygl 0x20 = 0x8C0F", "ygli 0x20 = 0x8C0F", "ygq 0x20 = 0x5ED2", "ygqt 0x20 = 0x5ED2", "ygu 0x20 = 0x8BC4", "yguh 0x20 = 0x8BC4", "yh 0x20 = 0x8BA9", "yha 0x20 = 0x8C11", "yhag 0x20 = 0x8C11", "yhg 0x20 = 0x8BA9", "yhi 0x20 = 0x535E", "yhk 0x20 = 0x5E97", "yhkd 0x20 = 0x5E97", "yhy 0x20 = 0x8BA3", "yi 0x20 = 0x5C31", "yid 0x20 = 0x5E94", "yidg 0x20 = 0x9E6B", "yidn 0x20 = 0x5C31", "yie 0x20 = 0x8BEE", "yieg 0x20 = 0x8BEE", "yip 0x20 = 0x8C20", "yipq 0x20 = 0x8C20", "yiu 0x20 = 0x4EAC", "yj 0x20 = 0x5218", "yjf 0x20 = 0x5EDB", "yjff 0x20 = 0x5EDB", "yjh 0x20 = 0x5218", "yjj 0x20 = 0x9F50", "yjjh 0x20 = 0x5242", "yjl 0x20 = 0x6F2B", "yjlc 0x20 = 0x8C29", "yjq 0x20 = 0x8C12", "yjqn 0x20 = 0x8C12", "yjs 0x20 = 0x8BFE", "yjse 0x20 = 0x88F9", "yjsy 0x20 = 0x8BFE", "yk 0x20 = 0x8BAD", "ykf 0x20 = 0x541D", "ykg 0x20 = 0x8BEF", "ykgd 0x20 = 0x8BEF", "ykge 0x20 = 0x8870", "ykh 0x20 = 0x8BAD", "ykhe 0x20 = 0x8877", "ykhp 0x20 = 0x8C34", "ykk 0x20 = 0x8944", "ykke 0x20 = 0x8944", "ykkn 0x20 = 0x8C14", "ykky 0x20 = 0x74E4", "ykw 0x20 = 0x8BC6", "ykwy 0x20 = 0x8BC6", "yl 0x20 = 0x4E3A", "yle 0x20 = 0x8C13", "yleg 0x20 = 0x8C13", "ylf 0x20 = 0x4EA9", "ylk 0x20 = 0x5E93", "ylki 0x20 = 0x7980", "ylkm 0x20 = 0x98A4", "ylw 0x20 = 0x8C21", "ylwt 0x20 = 0x8C21", "yly 0x20 = 0x4E3A", "ylyi 0x20 = 0x4E3A", "ym 0x20 = 0x9AD8", "ymb 0x20 = 0x4EA2", "ymc 0x20 = 0x8BBE", "ymcy 0x20 = 0x8BBE", "ymd 0x20 = 0x5E99", "ymdm 0x20 = 0x9883", "ymf 0x20 = 0x8C03", "ymfk 0x20 = 0x8C03", "ymh 0x20 = 0x8BAA", "ymhj 0x20 = 0x5E02", "ymk 0x20 = 0x9AD8", "ymkc 0x20 = 0x6572", "ymkf 0x20 = 0x9AD8", "ymn 0x20 = 0x8BA5", "ymq 0x20 = 0x8BBD", "ymqy 0x20 = 0x8BBD", "ymw 0x20 = 0x8BB7", "ymwy 0x20 = 0x8BB7", "yn 0x20 = 0x8BB0", "ynb 0x20 = 0x9099", "ynbh 0x20 = 0x9099", "ynd 0x20 = 0x623E", "yndd 0x20 = 0x6249", "yndi 0x20 = 0x623E", "yne 0x20 = 0x6237", "yned 0x20 = 0x80A9", "ynef 0x20 = 0x8093", "yneg 0x20 = 0x671B", "ynf 0x20 = 0x8BAF", "ynfh 0x20 = 0x8BAF", "yng 0x20 = 0x8BE9", "yngk 0x20 = 0x8BCD", "ynh 0x20 = 0x76F2", "ynhf 0x20 = 0x76F2", "yni 0x20 = 0x6C38", "ynii 0x20 = 0x6C38", "ynij 0x20 = 0x6636", "ynj 0x20 = 0x9E7F", "ynjf 0x20 = 0x9E9D", "ynjg 0x20 = 0x9E88", "ynjh 0x20 = 0x9E9F", "ynjm 0x20 = 0x9E82", "ynjo 0x20 = 0x9E8B", "ynjq 0x20 = 0x93D6", "ynjt 0x20 = 0x9E87", "ynjw 0x20 = 0x9E92", "ynjx 0x20 = 0x9E7F", "ynk 0x20 = 0x542F", "ynkc 0x20 = 0x6248", "ynkd 0x20 = 0x542F", "ynky 0x20 = 0x8D62", "ynkyz 0x20 = 0x5B34", "ynkyzz 0x20 = 0x7FB8", "ynkyzzz 0x20 = 0x8803", "ynm 0x20 = 0x904D", "ynma 0x20 = 0x6241", "ynmk 0x20 = 0x6243", "ynmn 0x20 = 0x7FE9", "ynmp 0x20 = 0x904D", "ynn 0x20 = 0x8BB0", "ynna 0x20 = 0x6C13", "ynnd 0x20 = 0x6247", "ynnu 0x20 = 0x5FD8", "ynt 0x20 = 0x523B", "ynth 0x20 = 0x8087", "ynti 0x20 = 0x7DAE", "yntj 0x20 = 0x523B", "yntl 0x20 = 0x52BE", "yntlz 0x20 = 0x8C27", "yntm 0x20 = 0x988F", "yntw 0x20 = 0x4EA5", "ynty 0x20 = 0x5E9F", "ynu 0x20 = 0x623D", "ynuf 0x20 = 0x623D", "ynv 0x20 = 0x4EA1", "ynvf 0x20 = 0x5984", "ynw 0x20 = 0x5ED6", "ynwe 0x20 = 0x5ED6", "ynwez 0x20 = 0x8C2C", "ynwy 0x20 = 0x8BC0", "ynwyz 0x20 = 0x96C7", "yny 0x20 = 0x623F", "ynyv 0x20 = 0x623F", "yo 0x20 = 0x53D8", "yoa 0x20 = 0x5F08", "yoaj 0x20 = 0x5F08", "yob 0x20 = 0x5B6A", "yobf 0x20 = 0x5B6A", "yoc 0x20 = 0x53D8", "yocu 0x20 = 0x53D8", "yod 0x20 = 0x5955", "yodu 0x20 = 0x5955", "yoj 0x20 = 0x86EE", "yoju 0x20 = 0x86EE", "yom 0x20 = 0x5CE6", "yomj 0x20 = 0x5CE6", "yomw 0x20 = 0x8114", "yon 0x20 = 0x604B", "yonu 0x20 = 0x604B", "yoo 0x20 = 0x8C08", "yooy 0x20 = 0x8C08", "yop 0x20 = 0x8FF9", "yopi 0x20 = 0x8FF9", "yopy 0x20 = 0x8C1C", "yoq 0x20 = 0x9E3E", "yoqf 0x20 = 0x92AE", "yoqg 0x20 = 0x9E3E", "yor 0x20 = 0x631B", "yorj 0x20 = 0x631B", "yos 0x20 = 0x683E", "yosu 0x20 = 0x683E", "you 0x20 = 0x4EA6", "yov 0x20 = 0x5A08", "yovf 0x20 = 0x5A08", "yox 0x20 = 0x5F2F", "yoxb 0x20 = 0x5F2F", "yp 0x20 = 0x8FD9", "ype 0x20 = 0x8C0A", "ypeg 0x20 = 0x8C0A", "ypeu 0x20 = 0x8C6A", "ypi 0x20 = 0x8FD9", "ypk 0x20 = 0x818F", "ypke 0x20 = 0x818F", "ypl 0x20 = 0x8BE8", "yplh 0x20 = 0x8BE8", "ypm 0x20 = 0x4EAE", "ypmb 0x20 = 0x4EAE", "yps 0x20 = 0x4EAD", "ypsj 0x20 = 0x4EAD", "ypt 0x20 = 0x6BEB", "ypta 0x20 = 0x8BE7", "yptaz 0x20 = 0x4EB3", "yptn 0x20 = 0x6BEB", "yq 0x20 = 0x4E49", "yqa 0x20 = 0x5E95", "yqay 0x20 = 0x5E95", "yqayz 0x20 = 0x8BCB", "yqd 0x20 = 0x8BE1", "yqdb 0x20 = 0x8BE1", "yqdy 0x20 = 0x8C35", "yqe 0x20 = 0x5EE8", "yqeh 0x20 = 0x5EE8", "yqi 0x20 = 0x4E49", "yqj 0x20 = 0x8BE2", "yqjg 0x20 = 0x8BE2", "yqk 0x20 = 0x8C17", "yqku 0x20 = 0x8C17", "yqn 0x20 = 0x5E96", "yqnv 0x20 = 0x5E96", "yqt 0x20 = 0x8BF3", "yqtg 0x20 = 0x8BF3", "yqvg 0x20 = 0x8C04", "yqvgz 0x20 = 0x8BCC", "yqvh 0x20 = 0x8BE4", "yr 0x20 = 0x8BC9", "yrg 0x20 = 0x8BDF", "yrgk 0x20 = 0x8BDF", "yri 0x20 = 0x8BDB", "yriy 0x20 = 0x8BDB", "yrt 0x20 = 0x5EB3", "yrtf 0x20 = 0x5EB3", "yrv 0x20 = 0x4EB5", "yrve 0x20 = 0x4EB5", "yry 0x20 = 0x8BC9", "yryy 0x20 = 0x8BC9", "ys 0x20 = 0x8BA2", "ysh 0x20 = 0x8BA2", "ysi 0x20 = 0x5E8A", "ysj 0x20 = 0x8C2D", "ysjh 0x20 = 0x8C2D", "ysk 0x20 = 0x8BC3", "yskg 0x20 = 0x8BC3", "yss 0x20 = 0x9EBB", "yssc 0x20 = 0x9B54", "ysscz 0x20 = 0x9EBD", "yssd 0x20 = 0x78E8", "yssdz 0x20 = 0x9761", "yssi 0x20 = 0x9EBB", "yssiz 0x20 = 0x7E3B", "yssn 0x20 = 0x9EBE", "ysso 0x20 = 0x7CDC", "yssr 0x20 = 0x6469", "yt 0x20 = 0x653E", "yta 0x20 = 0x65D7", "ytaw 0x20 = 0x65D7", "ytb 0x20 = 0x65BD", "ytbn 0x20 = 0x65BD", "ytd 0x20 = 0x8BDD", "ytdg 0x20 = 0x8BDD", "ytdk 0x20 = 0x65D6", "yte 0x20 = 0x8BF1", "ytee 0x20 = 0x8182", "yten 0x20 = 0x8BF1", "ytey 0x20 = 0x65C5", "ytf 0x20 = 0x8BB8", "ytfh 0x20 = 0x8BB8", "ytfk 0x20 = 0x8BF0", "ytfp 0x20 = 0x5EAD", "ytfq 0x20 = 0x8BDC", "ytg 0x20 = 0x65C6", "ytgh 0x20 = 0x65C6", "yth 0x20 = 0x8BC8", "ythf 0x20 = 0x8BC8", "ythp 0x20 = 0x8BDE", "ytm 0x20 = 0x8C22", "ytmf 0x20 = 0x8C22", "ytmy 0x20 = 0x65C3", "ytn 0x20 = 0x65CB", "ytnh 0x20 = 0x65CB", "ytnn 0x20 = 0x8BAB", "ytnx 0x20 = 0x65CE", "ytt 0x20 = 0x65CF", "yttd 0x20 = 0x65CF", "yttg 0x20 = 0x65CC", "yttn 0x20 = 0x65C4", "ytv 0x20 = 0x8BFF", "ytvg 0x20 = 0x8BFF", "ytx 0x20 = 0x8BF2", "ytxu 0x20 = 0x8BF2", "yty 0x20 = 0x653E", "ytyh 0x20 = 0x5DDE", "ytyq 0x20 = 0x65D2", "yu 0x20 = 0x8BF4", "yud 0x20 = 0x8BE6", "yudh 0x20 = 0x8BE6", "yudk 0x20 = 0x5EA0", "yue 0x20 = 0x8C2B", "yuev 0x20 = 0x8C2B", "yug 0x20 = 0x8C30", "yugi 0x20 = 0x6593", "yugiz 0x20 = 0x8C30", "yuj 0x20 = 0x8C19", "yujg 0x20 = 0x8C19", "yuk 0x20 = 0x8BF4", "yukq 0x20 = 0x8BF4", "yum 0x20 = 0x8C2A", "yumd 0x20 = 0x8C2A", "yuo 0x20 = 0x8C31", "yuoj 0x20 = 0x8C31", "yup 0x20 = 0x8C24", "yuph 0x20 = 0x8C1B", "yupy 0x20 = 0x8C24", "yuq 0x20 = 0x8C18", "yuqk 0x20 = 0x8C18", "yut 0x20 = 0x8C1A", "yute 0x20 = 0x8C1A", "yuv 0x20 = 0x8C26", "yuvo 0x20 = 0x5EC9", "yuvoz 0x20 = 0x8C26", "yuw 0x20 = 0x8C25", "yuwl 0x20 = 0x8C25", "yv 0x20 = 0x826F", "yvc 0x20 = 0x6717", "yvcb 0x20 = 0x90CE", "yvce 0x20 = 0x6717", "yve 0x20 = 0x826F", "yveh 0x20 = 0x5EB8", "yvei 0x20 = 0x826F", "yveu 0x20 = 0x88D2", "yvh 0x20 = 0x5510", "yvhk 0x20 = 0x5510", "yvi 0x20 = 0x5EB7", "yvii 0x20 = 0x5EB7", "yvk 0x20 = 0x8BCF", "yvkg 0x20 = 0x8BCF", "yvw 0x20 = 0x5E9A", "yvwi 0x20 = 0x5E9A", "yvwiz 0x20 = 0x5EBE", "yvwm 0x20 = 0x8D53", "yvwy 0x20 = 0x8C00", "yw 0x20 = 0x8BA4", "ywc 0x20 = 0x8BBC", "ywcy 0x20 = 0x8BBC", "ywe 0x20 = 0x8BCA", "ywet 0x20 = 0x8BCA", "ywf 0x20 = 0x5E9C", "ywfi 0x20 = 0x5E9C", "ywfw 0x20 = 0x8150", "ywg 0x20 = 0x8BE0", "ywgg 0x20 = 0x8BE0", "ywgj 0x20 = 0x8C15", "ywk 0x20 = 0x8912", "ywke 0x20 = 0x8912", "yws 0x20 = 0x5EA5", "ywsi 0x20 = 0x5EA5", "ywt 0x20 = 0x591C", "ywty 0x20 = 0x591C", "ywu 0x20 = 0x65BC", "ywuy 0x20 = 0x65BC", "yww 0x20 = 0x5EA7", "ywwe 0x20 = 0x81BA", "ywwf 0x20 = 0x5EA7", "ywwfz 0x20 = 0x5352", "ywwg 0x20 = 0x9E70", "ywwgz 0x20 = 0x8C36", "ywx 0x20 = 0x8BBA", "ywxn 0x20 = 0x8BBA", "ywxnz 0x20 = 0x8BB9", "ywy 0x20 = 0x8BA4", "ywyg 0x20 = 0x8C01", "ywyn 0x20 = 0x8C02", "ywyo 0x20 = 0x8C2F", "yx 0x20 = 0x7387", "yxi 0x20 = 0x7387", "yxif 0x20 = 0x7387", "yxiu 0x20 = 0x7D0A", "yxj 0x20 = 0x8BE3", "yxjg 0x20 = 0x8BE3", "yxl 0x20 = 0x755C", "yxlf 0x20 = 0x755C", "yxt 0x20 = 0x96CD", "yxte 0x20 = 0x9954", "yxtf 0x20 = 0x58C5", "yxty 0x20 = 0x96CD", "yxu 0x20 = 0x7384", "yxv 0x20 = 0x5E80", "yxx 0x20 = 0x5E87", "yxxr 0x20 = 0x8C10", "yxxv 0x20 = 0x5E87", "yy 0x20 = 0x65B9", "yybb 0x20 = 0x5ED3", "yybg 0x20 = 0x8C06", "yyg 0x20 = 0x4EA0", "yygn 0x20 = 0x65B9", "yygt 0x20 = 0x5E7F", "yygy 0x20 = 0x6587", "yyi 0x20 = 0x8C05", "yyiy 0x20 = 0x8C05", "yyl 0x20 = 0x4E36", "yyli 0x20 = 0x5EEA", "yyll 0x20 = 0x4E36", "yyn 0x20 = 0x8BBF", "yyna 0x20 = 0x8C1D", "yyne 0x20 = 0x5E90", "yynw 0x20 = 0x8BE5", "yynz 0x20 = 0x8BA0", "yyq 0x20 = 0x8BAE", "yyqy 0x20 = 0x8BAE", "yyv 0x20 = 0x5ECA", "yyvb 0x20 = 0x5ECA", "yyw 0x20 = 0x8C07", "yywf 0x20 = 0x8C07", "yyy 0x20 = 0x8A00", "yyyy 0x20 = 0x8A00", ./mytool/kmap/Telugu.kmap0000644000175000017500000005135307532460064015444 0ustar henrichhenrich// Telugu kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-02-17 // Consonant + vowel/virama "Ch=0x0c1b 0x0c4d", "Ch.h=0x0c1b 0x0c4d 0x200c", "ChA=0x0c1b 0x0c3e", "ChE=0x0c1b 0x0c47", "ChI=0x0c1b 0x0c40", "ChO=0x0c1b 0x0c4b", "ChRRI=0x0c1b 0x0c44", "ChRRi=0x0c1b 0x0c43", "ChR^I=0x0c1b 0x0c44", "ChR^i=0x0c1b 0x0c43", "ChU=0x0c1b 0x0c42", "Cha=0x0c1b", "Chaa=0x0c1b 0x0c3e", "Chai=0x0c1b 0x0c48", "Chau=0x0c1b 0x0c4c", "Che=0x0c1b 0x0c46", "Chi=0x0c1b 0x0c3f", "Chii=0x0c1b 0x0c40", "Cho=0x0c1b 0x0c4a", "Chu=0x0c1b 0x0c41", "Chuu=0x0c1b 0x0c42", "D=0x0c21 0x0c4d", "D.h=0x0c21 0x0c4d 0x200c", "DA=0x0c21 0x0c3e", "DE=0x0c21 0x0c47", "DI=0x0c21 0x0c40", "DO=0x0c21 0x0c4b", "DRRI=0x0c21 0x0c44", "DRRi=0x0c21 0x0c43", "DR^I=0x0c21 0x0c44", "DR^i=0x0c21 0x0c43", "DU=0x0c21 0x0c42", "Da=0x0c21", "Daa=0x0c21 0x0c3e", "Dai=0x0c21 0x0c48", "Dau=0x0c21 0x0c4c", "De=0x0c21 0x0c46", "Di=0x0c21 0x0c3f", "Dii=0x0c21 0x0c40", "Do=0x0c21 0x0c4a", "Du=0x0c21 0x0c41", "Duu=0x0c21 0x0c42", "Dh=0x0c22 0x0c4d", "Dh.h=0x0c22 0x0c4d 0x200c", "DhA=0x0c22 0x0c3e", "DhE=0x0c22 0x0c47", "DhI=0x0c22 0x0c40", "DhO=0x0c22 0x0c4b", "DhRRI=0x0c22 0x0c44", "DhRRi=0x0c22 0x0c43", "DhR^I=0x0c22 0x0c44", "DhR^i=0x0c22 0x0c43", "DhU=0x0c22 0x0c42", "Dha=0x0c22", "Dhaa=0x0c22 0x0c3e", "Dhai=0x0c22 0x0c48", "Dhau=0x0c22 0x0c4c", "Dhe=0x0c22 0x0c46", "Dhi=0x0c22 0x0c3f", "Dhii=0x0c22 0x0c40", "Dho=0x0c22 0x0c4a", "Dhu=0x0c22 0x0c41", "Dhuu=0x0c22 0x0c42", "GY=0x0c1c 0x0c4d 0x0c1e 0x0c4d", "GY.h=0x0c1c 0x0c4d 0x0c1e 0x0c4d 0x200c", "GYA=0x0c1c 0x0c4d 0x0c1e 0x0c3e", "GYE=0x0c1c 0x0c4d 0x0c1e 0x0c47", "GYI=0x0c1c 0x0c4d 0x0c1e 0x0c40", "GYO=0x0c1c 0x0c4d 0x0c1e 0x0c4b", "GYRRI=0x0c1c 0x0c4d 0x0c1e 0x0c44", "GYRRi=0x0c1c 0x0c4d 0x0c1e 0x0c43", "GYR^I=0x0c1c 0x0c4d 0x0c1e 0x0c44", "GYR^i=0x0c1c 0x0c4d 0x0c1e 0x0c43", "GYU=0x0c1c 0x0c4d 0x0c1e 0x0c42", "GYa=0x0c1c 0x0c4d 0x0c1e", "GYaa=0x0c1c 0x0c4d 0x0c1e 0x0c3e", "GYai=0x0c1c 0x0c4d 0x0c1e 0x0c48", "GYau=0x0c1c 0x0c4d 0x0c1e 0x0c4c", "GYe=0x0c1c 0x0c4d 0x0c1e 0x0c46", "GYi=0x0c1c 0x0c4d 0x0c1e 0x0c3f", "GYii=0x0c1c 0x0c4d 0x0c1e 0x0c40", "GYo=0x0c1c 0x0c4d 0x0c1e 0x0c4a", "GYu=0x0c1c 0x0c4d 0x0c1e 0x0c41", "GYuu=0x0c1c 0x0c4d 0x0c1e 0x0c42", "JN=0x0c1e 0x0c4d", "JN.h=0x0c1e 0x0c4d 0x200c", "JNA=0x0c1e 0x0c3e", "JNE=0x0c1e 0x0c47", "JNI=0x0c1e 0x0c40", "JNO=0x0c1e 0x0c4b", "JNRRI=0x0c1e 0x0c44", "JNRRi=0x0c1e 0x0c43", "JNR^I=0x0c1e 0x0c44", "JNR^i=0x0c1e 0x0c43", "JNU=0x0c1e 0x0c42", "JNa=0x0c1e", "JNaa=0x0c1e 0x0c3e", "JNai=0x0c1e 0x0c48", "JNau=0x0c1e 0x0c4c", "JNe=0x0c1e 0x0c46", "JNi=0x0c1e 0x0c3f", "JNii=0x0c1e 0x0c40", "JNo=0x0c1e 0x0c4a", "JNu=0x0c1e 0x0c41", "JNuu=0x0c1e 0x0c42", "L=0x0c33 0x0c4d", "L.h=0x0c33 0x0c4d 0x200c", "LA=0x0c33 0x0c3e", "LE=0x0c33 0x0c47", "LI=0x0c33 0x0c40", "LO=0x0c33 0x0c4b", "LRRI=0x0c33 0x0c44", "LRRi=0x0c33 0x0c43", "LR^I=0x0c33 0x0c44", "LR^i=0x0c33 0x0c43", "LU=0x0c33 0x0c42", "La=0x0c33", "Laa=0x0c33 0x0c3e", "Lai=0x0c33 0x0c48", "Lau=0x0c33 0x0c4c", "Le=0x0c33 0x0c46", "Li=0x0c33 0x0c3f", "Lii=0x0c33 0x0c40", "Lo=0x0c33 0x0c4a", "Lu=0x0c33 0x0c41", "Luu=0x0c33 0x0c42", "N=0x0c23 0x0c4d", "N.h=0x0c23 0x0c4d 0x200c", "NA=0x0c23 0x0c3e", "NE=0x0c23 0x0c47", "NI=0x0c23 0x0c40", "NO=0x0c23 0x0c4b", "NRRI=0x0c23 0x0c44", "NRRi=0x0c23 0x0c43", "NR^I=0x0c23 0x0c44", "NR^i=0x0c23 0x0c43", "NU=0x0c23 0x0c42", "Na=0x0c23", "Naa=0x0c23 0x0c3e", "Nai=0x0c23 0x0c48", "Nau=0x0c23 0x0c4c", "Ne=0x0c23 0x0c46", "Ni=0x0c23 0x0c3f", "Nii=0x0c23 0x0c40", "No=0x0c23 0x0c4a", "Nu=0x0c23 0x0c41", "Nuu=0x0c23 0x0c42", "N^=0x0c19 0x0c4d", "N^.h=0x0c19 0x0c4d 0x200c", "N^A=0x0c19 0x0c3e", "N^E=0x0c19 0x0c47", "N^I=0x0c19 0x0c40", "N^O=0x0c19 0x0c4b", "N^RRI=0x0c19 0x0c44", "N^RRi=0x0c19 0x0c43", "N^R^I=0x0c19 0x0c44", "N^R^i=0x0c19 0x0c43", "N^U=0x0c19 0x0c42", "N^a=0x0c19", "N^aa=0x0c19 0x0c3e", "N^ai=0x0c19 0x0c48", "N^au=0x0c19 0x0c4c", "N^e=0x0c19 0x0c46", "N^i=0x0c19 0x0c3f", "N^ii=0x0c19 0x0c40", "N^o=0x0c19 0x0c4a", "N^u=0x0c19 0x0c41", "N^uu=0x0c19 0x0c42", "R=0x0c31 0x0c4d", "R.h=0x0c31 0x0c4d 0x200c", "RA=0x0c31 0x0c3e", "RE=0x0c31 0x0c47", "RI=0x0c31 0x0c40", "RO=0x0c31 0x0c4b", "RRRI=0x0c31 0x0c44", "RRRi=0x0c31 0x0c43", "RR^I=0x0c31 0x0c44", "RR^i=0x0c31 0x0c43", "RU=0x0c31 0x0c42", "Ra=0x0c31", "Raa=0x0c31 0x0c3e", "Rai=0x0c31 0x0c48", "Rau=0x0c31 0x0c4c", "Re=0x0c31 0x0c46", "Ri=0x0c31 0x0c3f", "Rii=0x0c31 0x0c40", "Ro=0x0c31 0x0c4a", "Ru=0x0c31 0x0c41", "Ruu=0x0c31 0x0c42", "Sh=0x0c37 0x0c4d", "Sh.h=0x0c37 0x0c4d 0x200c", "ShA=0x0c37 0x0c3e", "ShE=0x0c37 0x0c47", "ShI=0x0c37 0x0c40", "ShO=0x0c37 0x0c4b", "ShRRI=0x0c37 0x0c44", "ShRRi=0x0c37 0x0c43", "ShR^I=0x0c37 0x0c44", "ShR^i=0x0c37 0x0c43", "ShU=0x0c37 0x0c42", "Sha=0x0c37", "Shaa=0x0c37 0x0c3e", "Shai=0x0c37 0x0c48", "Shau=0x0c37 0x0c4c", "She=0x0c37 0x0c46", "Shi=0x0c37 0x0c3f", "Shii=0x0c37 0x0c40", "Sho=0x0c37 0x0c4a", "Shu=0x0c37 0x0c41", "Shuu=0x0c37 0x0c42", "T=0x0c1f 0x0c4d", "T.h=0x0c1f 0x0c4d 0x200c", "TA=0x0c1f 0x0c3e", "TE=0x0c1f 0x0c47", "TI=0x0c1f 0x0c40", "TO=0x0c1f 0x0c4b", "TRRI=0x0c1f 0x0c44", "TRRi=0x0c1f 0x0c43", "TR^I=0x0c1f 0x0c44", "TR^i=0x0c1f 0x0c43", "TU=0x0c1f 0x0c42", "Ta=0x0c1f", "Taa=0x0c1f 0x0c3e", "Tai=0x0c1f 0x0c48", "Tau=0x0c1f 0x0c4c", "Te=0x0c1f 0x0c46", "Ti=0x0c1f 0x0c3f", "Tii=0x0c1f 0x0c40", "To=0x0c1f 0x0c4a", "Tu=0x0c1f 0x0c41", "Tuu=0x0c1f 0x0c42", "Th=0x0c20 0x0c4d", "Th.h=0x0c20 0x0c4d 0x200c", "ThA=0x0c20 0x0c3e", "ThE=0x0c20 0x0c47", "ThI=0x0c20 0x0c40", "ThO=0x0c20 0x0c4b", "ThRRI=0x0c20 0x0c44", "ThRRi=0x0c20 0x0c43", "ThR^I=0x0c20 0x0c44", "ThR^i=0x0c20 0x0c43", "ThU=0x0c20 0x0c42", "Tha=0x0c20", "Thaa=0x0c20 0x0c3e", "Thai=0x0c20 0x0c48", "Thau=0x0c20 0x0c4c", "The=0x0c20 0x0c46", "Thi=0x0c20 0x0c3f", "Thii=0x0c20 0x0c40", "Tho=0x0c20 0x0c4a", "Thu=0x0c20 0x0c41", "Thuu=0x0c20 0x0c42", "b=0x0c2c 0x0c4d", "b.h=0x0c2c 0x0c4d 0x200c", "bA=0x0c2c 0x0c3e", "bE=0x0c2c 0x0c47", "bI=0x0c2c 0x0c40", "bO=0x0c2c 0x0c4b", "bRRI=0x0c2c 0x0c44", "bRRi=0x0c2c 0x0c43", "bR^I=0x0c2c 0x0c44", "bR^i=0x0c2c 0x0c43", "bU=0x0c2c 0x0c42", "ba=0x0c2c", "baa=0x0c2c 0x0c3e", "bai=0x0c2c 0x0c48", "bau=0x0c2c 0x0c4c", "be=0x0c2c 0x0c46", "bi=0x0c2c 0x0c3f", "bii=0x0c2c 0x0c40", "bo=0x0c2c 0x0c4a", "bu=0x0c2c 0x0c41", "buu=0x0c2c 0x0c42", "bh=0x0c2d 0x0c4d", "bh.h=0x0c2d 0x0c4d 0x200c", "bhA=0x0c2d 0x0c3e", "bhE=0x0c2d 0x0c47", "bhI=0x0c2d 0x0c40", "bhO=0x0c2d 0x0c4b", "bhRRI=0x0c2d 0x0c44", "bhRRi=0x0c2d 0x0c43", "bhR^I=0x0c2d 0x0c44", "bhR^i=0x0c2d 0x0c43", "bhU=0x0c2d 0x0c42", "bha=0x0c2d", "bhaa=0x0c2d 0x0c3e", "bhai=0x0c2d 0x0c48", "bhau=0x0c2d 0x0c4c", "bhe=0x0c2d 0x0c46", "bhi=0x0c2d 0x0c3f", "bhii=0x0c2d 0x0c40", "bho=0x0c2d 0x0c4a", "bhu=0x0c2d 0x0c41", "bhuu=0x0c2d 0x0c42", "c=0x0c1a 0x0c4d", "c.h=0x0c1a 0x0c4d 0x200c", "cA=0x0c1a 0x0c3e", "cE=0x0c1a 0x0c47", "cI=0x0c1a 0x0c40", "cO=0x0c1a 0x0c4b", "cRRI=0x0c1a 0x0c44", "cRRi=0x0c1a 0x0c43", "cR^I=0x0c1a 0x0c44", "cR^i=0x0c1a 0x0c43", "cU=0x0c1a 0x0c42", "ca=0x0c1a", "caa=0x0c1a 0x0c3e", "cai=0x0c1a 0x0c48", "cau=0x0c1a 0x0c4c", "ce=0x0c1a 0x0c46", "ci=0x0c1a 0x0c3f", "cii=0x0c1a 0x0c40", "co=0x0c1a 0x0c4a", "cu=0x0c1a 0x0c41", "cuu=0x0c1a 0x0c42", "ch=0x0c1a 0x0c4d", "ch.h=0x0c1a 0x0c4d 0x200c", "chA=0x0c1a 0x0c3e", "chE=0x0c1a 0x0c47", "chI=0x0c1a 0x0c40", "chO=0x0c1a 0x0c4b", "chRRI=0x0c1a 0x0c44", "chRRi=0x0c1a 0x0c43", "chR^I=0x0c1a 0x0c44", "chR^i=0x0c1a 0x0c43", "chU=0x0c1a 0x0c42", "cha=0x0c1a", "chaa=0x0c1a 0x0c3e", "chai=0x0c1a 0x0c48", "chau=0x0c1a 0x0c4c", "che=0x0c1a 0x0c46", "chi=0x0c1a 0x0c3f", "chii=0x0c1a 0x0c40", "cho=0x0c1a 0x0c4a", "chu=0x0c1a 0x0c41", "chuu=0x0c1a 0x0c42", "chh=0x0c1b 0x0c4d", "chh.h=0x0c1b 0x0c4d 0x200c", "chhA=0x0c1b 0x0c3e", "chhE=0x0c1b 0x0c47", "chhI=0x0c1b 0x0c40", "chhO=0x0c1b 0x0c4b", "chhRRI=0x0c1b 0x0c44", "chhRRi=0x0c1b 0x0c43", "chhR^I=0x0c1b 0x0c44", "chhR^i=0x0c1b 0x0c43", "chhU=0x0c1b 0x0c42", "chha=0x0c1b", "chhaa=0x0c1b 0x0c3e", "chhai=0x0c1b 0x0c48", "chhau=0x0c1b 0x0c4c", "chhe=0x0c1b 0x0c46", "chhi=0x0c1b 0x0c3f", "chhii=0x0c1b 0x0c40", "chho=0x0c1b 0x0c4a", "chhu=0x0c1b 0x0c41", "chhuu=0x0c1b 0x0c42", "d=0x0c26 0x0c4d", "d.h=0x0c26 0x0c4d 0x200c", "dA=0x0c26 0x0c3e", "dE=0x0c26 0x0c47", "dI=0x0c26 0x0c40", "dO=0x0c26 0x0c4b", "dRRI=0x0c26 0x0c44", "dRRi=0x0c26 0x0c43", "dR^I=0x0c26 0x0c44", "dR^i=0x0c26 0x0c43", "dU=0x0c26 0x0c42", "da=0x0c26", "daa=0x0c26 0x0c3e", "dai=0x0c26 0x0c48", "dau=0x0c26 0x0c4c", "de=0x0c26 0x0c46", "di=0x0c26 0x0c3f", "dii=0x0c26 0x0c40", "do=0x0c26 0x0c4a", "du=0x0c26 0x0c41", "duu=0x0c26 0x0c42", "dh=0x0c27 0x0c4d", "dh.h=0x0c27 0x0c4d 0x200c", "dhA=0x0c27 0x0c3e", "dhE=0x0c27 0x0c47", "dhI=0x0c27 0x0c40", "dhO=0x0c27 0x0c4b", "dhRRI=0x0c27 0x0c44", "dhRRi=0x0c27 0x0c43", "dhR^I=0x0c27 0x0c44", "dhR^i=0x0c27 0x0c43", "dhU=0x0c27 0x0c42", "dha=0x0c27", "dhaa=0x0c27 0x0c3e", "dhai=0x0c27 0x0c48", "dhau=0x0c27 0x0c4c", "dhe=0x0c27 0x0c46", "dhi=0x0c27 0x0c3f", "dhii=0x0c27 0x0c40", "dho=0x0c27 0x0c4a", "dhu=0x0c27 0x0c41", "dhuu=0x0c27 0x0c42", "dny=0x0c1c 0x0c4d 0x0c1e 0x0c4d", "dny.h=0x0c1c 0x0c4d 0x0c1e 0x0c4d 0x200c", "dnyA=0x0c1c 0x0c4d 0x0c1e 0x0c3e", "dnyE=0x0c1c 0x0c4d 0x0c1e 0x0c47", "dnyI=0x0c1c 0x0c4d 0x0c1e 0x0c40", "dnyO=0x0c1c 0x0c4d 0x0c1e 0x0c4b", "dnyRRI=0x0c1c 0x0c4d 0x0c1e 0x0c44", "dnyRRi=0x0c1c 0x0c4d 0x0c1e 0x0c43", "dnyR^I=0x0c1c 0x0c4d 0x0c1e 0x0c44", "dnyR^i=0x0c1c 0x0c4d 0x0c1e 0x0c43", "dnyU=0x0c1c 0x0c4d 0x0c1e 0x0c42", "dnya=0x0c1c 0x0c4d 0x0c1e", "dnyaa=0x0c1c 0x0c4d 0x0c1e 0x0c3e", "dnyai=0x0c1c 0x0c4d 0x0c1e 0x0c48", "dnyau=0x0c1c 0x0c4d 0x0c1e 0x0c4c", "dnye=0x0c1c 0x0c4d 0x0c1e 0x0c46", "dnyi=0x0c1c 0x0c4d 0x0c1e 0x0c3f", "dnyii=0x0c1c 0x0c4d 0x0c1e 0x0c40", "dnyo=0x0c1c 0x0c4d 0x0c1e 0x0c4a", "dnyu=0x0c1c 0x0c4d 0x0c1e 0x0c41", "dnyuu=0x0c1c 0x0c4d 0x0c1e 0x0c42", "g=0x0c17 0x0c4d", "g.h=0x0c17 0x0c4d 0x200c", "gA=0x0c17 0x0c3e", "gE=0x0c17 0x0c47", "gI=0x0c17 0x0c40", "gO=0x0c17 0x0c4b", "gRRI=0x0c17 0x0c44", "gRRi=0x0c17 0x0c43", "gR^I=0x0c17 0x0c44", "gR^i=0x0c17 0x0c43", "gU=0x0c17 0x0c42", "ga=0x0c17", "gaa=0x0c17 0x0c3e", "gai=0x0c17 0x0c48", "gau=0x0c17 0x0c4c", "ge=0x0c17 0x0c46", "gi=0x0c17 0x0c3f", "gii=0x0c17 0x0c40", "go=0x0c17 0x0c4a", "gu=0x0c17 0x0c41", "guu=0x0c17 0x0c42", "gh=0x0c18 0x0c4d", "gh.h=0x0c18 0x0c4d 0x200c", "ghA=0x0c18 0x0c3e", "ghE=0x0c18 0x0c47", "ghI=0x0c18 0x0c40", "ghO=0x0c18 0x0c4b", "ghRRI=0x0c18 0x0c44", "ghRRi=0x0c18 0x0c43", "ghR^I=0x0c18 0x0c44", "ghR^i=0x0c18 0x0c43", "ghU=0x0c18 0x0c42", "gha=0x0c18", "ghaa=0x0c18 0x0c3e", "ghai=0x0c18 0x0c48", "ghau=0x0c18 0x0c4c", "ghe=0x0c18 0x0c46", "ghi=0x0c18 0x0c3f", "ghii=0x0c18 0x0c40", "gho=0x0c18 0x0c4a", "ghu=0x0c18 0x0c41", "ghuu=0x0c18 0x0c42", "h=0x0c39 0x0c4d", "h.h=0x0c39 0x0c4d 0x200c", "hA=0x0c39 0x0c3e", "hE=0x0c39 0x0c47", "hI=0x0c39 0x0c40", "hO=0x0c39 0x0c4b", "hRRI=0x0c39 0x0c44", "hRRi=0x0c39 0x0c43", "hR^I=0x0c39 0x0c44", "hR^i=0x0c39 0x0c43", "hU=0x0c39 0x0c42", "ha=0x0c39", "haa=0x0c39 0x0c3e", "hai=0x0c39 0x0c48", "hau=0x0c39 0x0c4c", "he=0x0c39 0x0c46", "hi=0x0c39 0x0c3f", "hii=0x0c39 0x0c40", "ho=0x0c39 0x0c4a", "hu=0x0c39 0x0c41", "huu=0x0c39 0x0c42", "j=0x0c1c 0x0c4d", "j.h=0x0c1c 0x0c4d 0x200c", "jA=0x0c1c 0x0c3e", "jE=0x0c1c 0x0c47", "jI=0x0c1c 0x0c40", "jO=0x0c1c 0x0c4b", "jRRI=0x0c1c 0x0c44", "jRRi=0x0c1c 0x0c43", "jR^I=0x0c1c 0x0c44", "jR^i=0x0c1c 0x0c43", "jU=0x0c1c 0x0c42", "ja=0x0c1c", "jaa=0x0c1c 0x0c3e", "jai=0x0c1c 0x0c48", "jau=0x0c1c 0x0c4c", "je=0x0c1c 0x0c46", "ji=0x0c1c 0x0c3f", "jii=0x0c1c 0x0c40", "jo=0x0c1c 0x0c4a", "ju=0x0c1c 0x0c41", "juu=0x0c1c 0x0c42", "jh=0x0c1d 0x0c4d", "jh.h=0x0c1d 0x0c4d 0x200c", "jhA=0x0c1d 0x0c3e", "jhE=0x0c1d 0x0c47", "jhI=0x0c1d 0x0c40", "jhO=0x0c1d 0x0c4b", "jhRRI=0x0c1d 0x0c44", "jhRRi=0x0c1d 0x0c43", "jhR^I=0x0c1d 0x0c44", "jhR^i=0x0c1d 0x0c43", "jhU=0x0c1d 0x0c42", "jha=0x0c1d", "jhaa=0x0c1d 0x0c3e", "jhai=0x0c1d 0x0c48", "jhau=0x0c1d 0x0c4c", "jhe=0x0c1d 0x0c46", "jhi=0x0c1d 0x0c3f", "jhii=0x0c1d 0x0c40", "jho=0x0c1d 0x0c4a", "jhu=0x0c1d 0x0c41", "jhuu=0x0c1d 0x0c42", "k=0x0c15 0x0c4d", "k.h=0x0c15 0x0c4d 0x200c", "kA=0x0c15 0x0c3e", "kE=0x0c15 0x0c47", "kI=0x0c15 0x0c40", "kO=0x0c15 0x0c4b", "kRRI=0x0c15 0x0c44", "kRRi=0x0c15 0x0c43", "kR^I=0x0c15 0x0c44", "kR^i=0x0c15 0x0c43", "kU=0x0c15 0x0c42", "ka=0x0c15", "kaa=0x0c15 0x0c3e", "kai=0x0c15 0x0c48", "kau=0x0c15 0x0c4c", "ke=0x0c15 0x0c46", "ki=0x0c15 0x0c3f", "kii=0x0c15 0x0c40", "ko=0x0c15 0x0c4a", "ku=0x0c15 0x0c41", "kuu=0x0c15 0x0c42", "kh=0x0c16 0x0c4d", "kh.h=0x0c16 0x0c4d 0x200c", "khA=0x0c16 0x0c3e", "khE=0x0c16 0x0c47", "khI=0x0c16 0x0c40", "khO=0x0c16 0x0c4b", "khRRI=0x0c16 0x0c44", "khRRi=0x0c16 0x0c43", "khR^I=0x0c16 0x0c44", "khR^i=0x0c16 0x0c43", "khU=0x0c16 0x0c42", "kha=0x0c16", "khaa=0x0c16 0x0c3e", "khai=0x0c16 0x0c48", "khau=0x0c16 0x0c4c", "khe=0x0c16 0x0c46", "khi=0x0c16 0x0c3f", "khii=0x0c16 0x0c40", "kho=0x0c16 0x0c4a", "khu=0x0c16 0x0c41", "khuu=0x0c16 0x0c42", "l=0x0c32 0x0c4d", "l.h=0x0c32 0x0c4d 0x200c", "lA=0x0c32 0x0c3e", "lE=0x0c32 0x0c47", "lI=0x0c32 0x0c40", "lO=0x0c32 0x0c4b", "lRRI=0x0c32 0x0c44", "lRRi=0x0c32 0x0c43", "lR^I=0x0c32 0x0c44", "lR^i=0x0c32 0x0c43", "lU=0x0c32 0x0c42", "la=0x0c32", "laa=0x0c32 0x0c3e", "lai=0x0c32 0x0c48", "lau=0x0c32 0x0c4c", "le=0x0c32 0x0c46", "li=0x0c32 0x0c3f", "lii=0x0c32 0x0c40", "lo=0x0c32 0x0c4a", "lu=0x0c32 0x0c41", "luu=0x0c32 0x0c42", "m=0x0c2e 0x0c4d", "m.h=0x0c2e 0x0c4d 0x200c", "mA=0x0c2e 0x0c3e", "mE=0x0c2e 0x0c47", "mI=0x0c2e 0x0c40", "mO=0x0c2e 0x0c4b", "mRRI=0x0c2e 0x0c44", "mRRi=0x0c2e 0x0c43", "mR^I=0x0c2e 0x0c44", "mR^i=0x0c2e 0x0c43", "mU=0x0c2e 0x0c42", "ma=0x0c2e", "maa=0x0c2e 0x0c3e", "mai=0x0c2e 0x0c48", "mau=0x0c2e 0x0c4c", "me=0x0c2e 0x0c46", "mi=0x0c2e 0x0c3f", "mii=0x0c2e 0x0c40", "mo=0x0c2e 0x0c4a", "mu=0x0c2e 0x0c41", "muu=0x0c2e 0x0c42", "n=0x0c28 0x0c4d", "n.h=0x0c28 0x0c4d 0x200c", "nA=0x0c28 0x0c3e", "nE=0x0c28 0x0c47", "nI=0x0c28 0x0c40", "nO=0x0c28 0x0c4b", "nRRI=0x0c28 0x0c44", "nRRi=0x0c28 0x0c43", "nR^I=0x0c28 0x0c44", "nR^i=0x0c28 0x0c43", "nU=0x0c28 0x0c42", "na=0x0c28", "naa=0x0c28 0x0c3e", "nai=0x0c28 0x0c48", "nau=0x0c28 0x0c4c", "ne=0x0c28 0x0c46", "ni=0x0c28 0x0c3f", "nii=0x0c28 0x0c40", "no=0x0c28 0x0c4a", "nu=0x0c28 0x0c41", "nuu=0x0c28 0x0c42", "p=0x0c2a 0x0c4d", "p.h=0x0c2a 0x0c4d 0x200c", "pA=0x0c2a 0x0c3e", "pE=0x0c2a 0x0c47", "pI=0x0c2a 0x0c40", "pO=0x0c2a 0x0c4b", "pRRI=0x0c2a 0x0c44", "pRRi=0x0c2a 0x0c43", "pR^I=0x0c2a 0x0c44", "pR^i=0x0c2a 0x0c43", "pU=0x0c2a 0x0c42", "pa=0x0c2a", "paa=0x0c2a 0x0c3e", "pai=0x0c2a 0x0c48", "pau=0x0c2a 0x0c4c", "pe=0x0c2a 0x0c46", "pi=0x0c2a 0x0c3f", "pii=0x0c2a 0x0c40", "po=0x0c2a 0x0c4a", "pu=0x0c2a 0x0c41", "puu=0x0c2a 0x0c42", "ph=0x0c2b 0x0c4d", "ph.h=0x0c2b 0x0c4d 0x200c", "phA=0x0c2b 0x0c3e", "phE=0x0c2b 0x0c47", "phI=0x0c2b 0x0c40", "phO=0x0c2b 0x0c4b", "phRRI=0x0c2b 0x0c44", "phRRi=0x0c2b 0x0c43", "phR^I=0x0c2b 0x0c44", "phR^i=0x0c2b 0x0c43", "phU=0x0c2b 0x0c42", "pha=0x0c2b", "phaa=0x0c2b 0x0c3e", "phai=0x0c2b 0x0c48", "phau=0x0c2b 0x0c4c", "phe=0x0c2b 0x0c46", "phi=0x0c2b 0x0c3f", "phii=0x0c2b 0x0c40", "pho=0x0c2b 0x0c4a", "phu=0x0c2b 0x0c41", "phuu=0x0c2b 0x0c42", "r=0x0c30 0x0c4d", "r.h=0x0c30 0x0c4d 0x200c", "rA=0x0c30 0x0c3e", "rE=0x0c30 0x0c47", "rI=0x0c30 0x0c40", "rO=0x0c30 0x0c4b", "rRRI=0x0c30 0x0c44", "rRRi=0x0c30 0x0c43", "rR^I=0x0c30 0x0c44", "rR^i=0x0c30 0x0c43", "rU=0x0c30 0x0c42", "ra=0x0c30", "raa=0x0c30 0x0c3e", "rai=0x0c30 0x0c48", "rau=0x0c30 0x0c4c", "re=0x0c30 0x0c46", "ri=0x0c30 0x0c3f", "rii=0x0c30 0x0c40", "ro=0x0c30 0x0c4a", "ru=0x0c30 0x0c41", "ruu=0x0c30 0x0c42", "s=0x0c38 0x0c4d", "s.h=0x0c38 0x0c4d 0x200c", "sA=0x0c38 0x0c3e", "sE=0x0c38 0x0c47", "sI=0x0c38 0x0c40", "sO=0x0c38 0x0c4b", "sRRI=0x0c38 0x0c44", "sRRi=0x0c38 0x0c43", "sR^I=0x0c38 0x0c44", "sR^i=0x0c38 0x0c43", "sU=0x0c38 0x0c42", "sa=0x0c38", "saa=0x0c38 0x0c3e", "sai=0x0c38 0x0c48", "sau=0x0c38 0x0c4c", "se=0x0c38 0x0c46", "si=0x0c38 0x0c3f", "sii=0x0c38 0x0c40", "so=0x0c38 0x0c4a", "su=0x0c38 0x0c41", "suu=0x0c38 0x0c42", "sh=0x0c36 0x0c4d", "sh.h=0x0c36 0x0c4d 0x200c", "shA=0x0c36 0x0c3e", "shE=0x0c36 0x0c47", "shI=0x0c36 0x0c40", "shO=0x0c36 0x0c4b", "shRRI=0x0c36 0x0c44", "shRRi=0x0c36 0x0c43", "shR^I=0x0c36 0x0c44", "shR^i=0x0c36 0x0c43", "shU=0x0c36 0x0c42", "sha=0x0c36", "shaa=0x0c36 0x0c3e", "shai=0x0c36 0x0c48", "shau=0x0c36 0x0c4c", "she=0x0c36 0x0c46", "shi=0x0c36 0x0c3f", "shii=0x0c36 0x0c40", "sho=0x0c36 0x0c4a", "shu=0x0c36 0x0c41", "shuu=0x0c36 0x0c42", "shh=0x0c37 0x0c4d", "shh.h=0x0c37 0x0c4d 0x200c", "shhA=0x0c37 0x0c3e", "shhE=0x0c37 0x0c47", "shhI=0x0c37 0x0c40", "shhO=0x0c37 0x0c4b", "shhRRI=0x0c37 0x0c44", "shhRRi=0x0c37 0x0c43", "shhR^I=0x0c37 0x0c44", "shhR^i=0x0c37 0x0c43", "shhU=0x0c37 0x0c42", "shha=0x0c37", "shhaa=0x0c37 0x0c3e", "shhai=0x0c37 0x0c48", "shhau=0x0c37 0x0c4c", "shhe=0x0c37 0x0c46", "shhi=0x0c37 0x0c3f", "shhii=0x0c37 0x0c40", "shho=0x0c37 0x0c4a", "shhu=0x0c37 0x0c41", "shhuu=0x0c37 0x0c42", "t=0x0c24 0x0c4d", "t.h=0x0c24 0x0c4d 0x200c", "tA=0x0c24 0x0c3e", "tE=0x0c24 0x0c47", "tI=0x0c24 0x0c40", "tO=0x0c24 0x0c4b", "tRRI=0x0c24 0x0c44", "tRRi=0x0c24 0x0c43", "tR^I=0x0c24 0x0c44", "tR^i=0x0c24 0x0c43", "tU=0x0c24 0x0c42", "ta=0x0c24", "taa=0x0c24 0x0c3e", "tai=0x0c24 0x0c48", "tau=0x0c24 0x0c4c", "te=0x0c24 0x0c46", "ti=0x0c24 0x0c3f", "tii=0x0c24 0x0c40", "to=0x0c24 0x0c4a", "tu=0x0c24 0x0c41", "tuu=0x0c24 0x0c42", "th=0x0c25 0x0c4d", "th.h=0x0c25 0x0c4d 0x200c", "thA=0x0c25 0x0c3e", "thE=0x0c25 0x0c47", "thI=0x0c25 0x0c40", "thO=0x0c25 0x0c4b", "thRRI=0x0c25 0x0c44", "thRRi=0x0c25 0x0c43", "thR^I=0x0c25 0x0c44", "thR^i=0x0c25 0x0c43", "thU=0x0c25 0x0c42", "tha=0x0c25", "thaa=0x0c25 0x0c3e", "thai=0x0c25 0x0c48", "thau=0x0c25 0x0c4c", "the=0x0c25 0x0c46", "thi=0x0c25 0x0c3f", "thii=0x0c25 0x0c40", "tho=0x0c25 0x0c4a", "thu=0x0c25 0x0c41", "thuu=0x0c25 0x0c42", "v=0x0c35 0x0c4d", "v.h=0x0c35 0x0c4d 0x200c", "vA=0x0c35 0x0c3e", "vE=0x0c35 0x0c47", "vI=0x0c35 0x0c40", "vO=0x0c35 0x0c4b", "vRRI=0x0c35 0x0c44", "vRRi=0x0c35 0x0c43", "vR^I=0x0c35 0x0c44", "vR^i=0x0c35 0x0c43", "vU=0x0c35 0x0c42", "va=0x0c35", "vaa=0x0c35 0x0c3e", "vai=0x0c35 0x0c48", "vau=0x0c35 0x0c4c", "ve=0x0c35 0x0c46", "vi=0x0c35 0x0c3f", "vii=0x0c35 0x0c40", "vo=0x0c35 0x0c4a", "vu=0x0c35 0x0c41", "vuu=0x0c35 0x0c42", "w=0x0c35 0x0c4d", "w.h=0x0c35 0x0c4d 0x200c", "wA=0x0c35 0x0c3e", "wE=0x0c35 0x0c47", "wI=0x0c35 0x0c40", "wO=0x0c35 0x0c4b", "wRRI=0x0c35 0x0c44", "wRRi=0x0c35 0x0c43", "wR^I=0x0c35 0x0c44", "wR^i=0x0c35 0x0c43", "wU=0x0c35 0x0c42", "wa=0x0c35", "waa=0x0c35 0x0c3e", "wai=0x0c35 0x0c48", "wau=0x0c35 0x0c4c", "we=0x0c35 0x0c46", "wi=0x0c35 0x0c3f", "wii=0x0c35 0x0c40", "wo=0x0c35 0x0c4a", "wu=0x0c35 0x0c41", "wuu=0x0c35 0x0c42", "x=0x0c15 0x0c4d 0x0c37 0x0c4d", "x.h=0x0c15 0x0c4d 0x0c37 0x0c4d 0x200c", "xA=0x0c15 0x0c4d 0x0c37 0x0c3e", "xE=0x0c15 0x0c4d 0x0c37 0x0c47", "xI=0x0c15 0x0c4d 0x0c37 0x0c40", "xO=0x0c15 0x0c4d 0x0c37 0x0c4b", "xRRI=0x0c15 0x0c4d 0x0c37 0x0c44", "xRRi=0x0c15 0x0c4d 0x0c37 0x0c43", "xR^I=0x0c15 0x0c4d 0x0c37 0x0c44", "xR^i=0x0c15 0x0c4d 0x0c37 0x0c43", "xU=0x0c15 0x0c4d 0x0c37 0x0c42", "xa=0x0c15 0x0c4d 0x0c37", "xaa=0x0c15 0x0c4d 0x0c37 0x0c3e", "xai=0x0c15 0x0c4d 0x0c37 0x0c48", "xau=0x0c15 0x0c4d 0x0c37 0x0c4c", "xe=0x0c15 0x0c4d 0x0c37 0x0c46", "xi=0x0c15 0x0c4d 0x0c37 0x0c3f", "xii=0x0c15 0x0c4d 0x0c37 0x0c40", "xo=0x0c15 0x0c4d 0x0c37 0x0c4a", "xu=0x0c15 0x0c4d 0x0c37 0x0c41", "xuu=0x0c15 0x0c4d 0x0c37 0x0c42", "y=0x0c2f 0x0c4d", "y.h=0x0c2f 0x0c4d 0x200c", "yA=0x0c2f 0x0c3e", "yE=0x0c2f 0x0c47", "yI=0x0c2f 0x0c40", "yO=0x0c2f 0x0c4b", "yRRI=0x0c2f 0x0c44", "yRRi=0x0c2f 0x0c43", "yR^I=0x0c2f 0x0c44", "yR^i=0x0c2f 0x0c43", "yU=0x0c2f 0x0c42", "ya=0x0c2f", "yaa=0x0c2f 0x0c3e", "yai=0x0c2f 0x0c48", "yau=0x0c2f 0x0c4c", "ye=0x0c2f 0x0c46", "yi=0x0c2f 0x0c3f", "yii=0x0c2f 0x0c40", "yo=0x0c2f 0x0c4a", "yu=0x0c2f 0x0c41", "yuu=0x0c2f 0x0c42", "~N=0x0c19 0x0c4d", "~N.h=0x0c19 0x0c4d 0x200c", "~NA=0x0c19 0x0c3e", "~NE=0x0c19 0x0c47", "~NI=0x0c19 0x0c40", "~NO=0x0c19 0x0c4b", "~NRRI=0x0c19 0x0c44", "~NRRi=0x0c19 0x0c43", "~NR^I=0x0c19 0x0c44", "~NR^i=0x0c19 0x0c43", "~NU=0x0c19 0x0c42", "~Na=0x0c19", "~Naa=0x0c19 0x0c3e", "~Nai=0x0c19 0x0c48", "~Nau=0x0c19 0x0c4c", "~Ne=0x0c19 0x0c46", "~Ni=0x0c19 0x0c3f", "~Nii=0x0c19 0x0c40", "~No=0x0c19 0x0c4a", "~Nu=0x0c19 0x0c41", "~Nuu=0x0c19 0x0c42", "~n=0x0c1e 0x0c4d", "~n.h=0x0c1e 0x0c4d 0x200c", "~nA=0x0c1e 0x0c3e", "~nE=0x0c1e 0x0c47", "~nI=0x0c1e 0x0c40", "~nO=0x0c1e 0x0c4b", "~nRRI=0x0c1e 0x0c44", "~nRRi=0x0c1e 0x0c43", "~nR^I=0x0c1e 0x0c44", "~nR^i=0x0c1e 0x0c43", "~nU=0x0c1e 0x0c42", "~na=0x0c1e", "~naa=0x0c1e 0x0c3e", "~nai=0x0c1e 0x0c48", "~nau=0x0c1e 0x0c4c", "~ne=0x0c1e 0x0c46", "~ni=0x0c1e 0x0c3f", "~nii=0x0c1e 0x0c40", "~no=0x0c1e 0x0c4a", "~nu=0x0c1e 0x0c41", "~nuu=0x0c1e 0x0c42", // Independent vowels "a=0x0c05", "A=0x0c06", "aa=0x0c06", "i=0x0c07", "I=0x0c08", "ii=0x0c08", "u=0x0c09", "U=0x0c0a", "uu=0x0c0a", "R^i=0x0c0b", "RRi=0x0c0b", "L^i=0x0c0c", "LLi=0x0c0c", "e=0x0c0e", "E=0x0c0f", "ai=0x0c10", "o=0x0c12", "O=0x0c13", "au=0x0c14", "R^I=0x0c60", "RRI=0x0c60", "L^I=0x0c61", "LLI=0x0c61", // Numbers "0x30=0x0c66", "0x31=0x0c67", "0x32=0x0c68", "0x33=0x0c69", "0x34=0x0c6a", "0x35=0x0c6b", "0x36=0x0c6c", "0x37=0x0c6d", "0x38=0x0c6e", "0x39=0x0c6f", // Other marks ".N=0x0c01", ".n=0x0c02", "M=0x0c02", "H=0x0c03", ".h=0x0c4d 0x200c", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Kannada-Inscript.kmap0000644000175000017500000001101107532460064017310 0ustar henrichhenrich// Kan-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri //KANNADA letters //"X=0x0C81", // KANNADA SIGN CANDRABINDU "x=0x0C82", // KANNADA SIGN ANUSVARA "_=0x0C83", // KANNADA SIGN VISARGA //"=0x0C84", // KANNADA LETTER "D=0x0C85", // KANNADA LETTER A "E=0x0C86", // KANNADA LETTER AA "F=0x0C87", // KANNADA LETTER I "R=0x0C88", // KANNADA LETTER II "G=0x0C89", // KANNADA LETTER U "T=0x0C8A", // KANNADA LETTER UU "+=0x0C8B", // KANNADA LETTER VOCALIC R "&=0x0C8C", // KANNADA LETTER VOCALIC L //"!=0x0C8D", // KANNADA LETTER CANDRA E "Z=0x0C8E", // KANNADA LETTER SHORT E "S=0x0C8F", // KANNADA LETTER E "W=0x0C90", // KANNADA LETTER AI //"|=0x0C91", // KANNADA LETTER CANDRA O "~=0x0C92", // KANNADA LETTER SHORT O "A=0x0C93", // KANNADA LETTER O "Q=0x0C94", // KANNADA LETTER AU "k=0x0C95", // KANNADA LETTER KA "K=0x0C96", // KANNADA LETTER KHA "i=0x0C97", // KANNADA LETTER GA "I=0x0C98", // KANNADA LETTER GHA "U=0x0C99", // KANNADA LETTER NGA ";=0x0C9A", // KANNADA LETTER CA ":=0x0C9B", // KANNADA LETTER CHA "p=0x0C9C", // KANNADA LETTER JA "P=0x0C9D", // KANNADA LETTER JHA "}=0x0C9E", // KANNADA LETTER NYA "'=0x0C9F", // KANNADA LETTER TTA "\"=0x0CA0", // KANNADA LETTER TTHA "[=0x0CA1", // KANNADA LETTER DDA "{=0x0CA2", // KANNADA LETTER DDHA "C=0x0CA3", // KANNADA LETTER NNA "l=0x0CA4", // KANNADA LETTER TA "L=0x0CA5", // KANNADA LETTER THA "o=0x0CA6", // KANNADA LETTER DA "O=0x0CA7", // KANNADA LETTER DHA "v=0x0CA8", // KANNADA LETTER NA //"V=0x0CA9", // KANNADA LETTER NNNA "h=0x0CAA", // KANNADA LETTER PA "H=0x0CAB", // KANNADA LETTER PHA "y=0x0CAC", // KANNADA LETTER BA "Y=0x0CAD", // KANNADA LETTER BHA "c=0x0CAE", // KANNADA LETTER MA "/=0x0CAF", // KANNADA LETTER YA "j=0x0CB0", // KANNADA LETTER RA "J=0x0CB1", // KANNADA LETTER RRA "n=0x0CB2", // KANNADA LETTER LA "N=0x0CB3", // KANNADA LETTER LLA //"B=0x0CB4", // KANNADA LETTER LLLA "b=0x0CB5", // KANNADA LETTER VA "M=0x0CB6", // KANNADA LETTER SHA "<=0x0CB7", // KANNADA LETTER SSA "m=0x0CB8", // KANNADA LETTER SA "u=0x0CB9", // KANNADA LETTER HA //"=0x0CBA", // KANNADA LETTER //"=0x0CBB", // KANNADA LETTER //"]=0x0CBC", // KANNADA SIGN NUKTA //"#=0x0CBD, // KANNADA SIGN AVAGRAHA "e=0x0CBE", // KANNADA VOWEL SIGN AA "f=0x0CBF", // KANNADA VOWEL SIGN I "r=0x0CC0", // KANNADA VOWEL SIGN II "g=0x0CC1", // KANNADA VOWEL SIGN U "t=0x0CC2", // KANNADA VOWEL SIGN UU "\==0x0CC3", // KANNADA VOWEL SIGN VOCALIC R "$=0x0CC4", // KANNADA VOWEL SIGN VOCALIC RR //"@=0x0CC5", // KANNADA VOWEL SIGN CANDRA E "z=0x0CC6", // KANNADA VOWEL SIGN SHORT E "s=0x0CC7", // KANNADA VOWEL SIGN E "w=0x0CC8", // KANNADA VOWEL SIGN AI //"\ \=0x0CC9", // KANNADA VOWEL SIGN CANDRA O "`=0x0CCA", // KANNADA VOWEL SIGN SHART O "a=0x0CCB", // KANNADA VOWEL SIGN O "q=0x0CCC", // KANNADA VOWEL SIGN OU "d=0x0CCD", // KANNADA SIGN VIRMA //"=0x0CCE", // KANNADA LETTER //"=0x0CCF", // KANNADA LETTER //"%=0x0CD0", // KANNADA OM //"=0x0CD1", // KANNADA STRESS SIGN UDATTA //"=0x0CD2", // KANNADA STRESS SIGN ANUDATTA //"=0x0CD3", // KANNADA GRAVE ACCENT //"=0x0CD4", // KANNADA ACUTE ACCENT //"=0x0CD5", // KANNADA LETTER //"=0x0CD6", // KANNADA LETTER //"=0x0CD7", // KANNADA LETTER "k]=0x0CD8", // KANNADA LETTER QA "K]=0x0CD9", // KANNADA LETTER KHHA //"i]=0x0CDA", // KANNADA LETTER GHHA //"p]=0x0CDB", // KANNADA LETTER ZA //"[]=0x0CDC", // KANNADA LETTER DDDHA //"{]=0x0CDD", // KANNADA LETTER RHA //"H]=0x0CDE", // KANNADA LETTER FA "?=0x0CDF", // KANNADA LETTER YYA "^=0x0C60", // KANNADA LETTER VOCALIC RR "*=0x0CE1", // KANNADA LETTER VOCALIC LL //"(=0x0CE2", // KANNADA VOWEL SIGN VOCALIC L //")=0x0CE3", // KANNADA VOWEL SIGN VOCALIC LL //">=0x0CE4", // KANNADA DANDA //">>=0x0CE5", // KANNADA DOUBLE DANDA "0x30=0x0CE6", // KANNADA DIGIT ZERO "0x31=0x0CE7", // KANNADA DIGIT ONE "0x32=0x0CE8", // KANNADA DIGIT TWO "0x33=0x0CE9", // KANNADA DIGIT THREE "0x34=0x0CEA", // KANNADA DIGIT FOUR "0x35=0x0CEB", // KANNADA DIGIT FIVE "0x36=0x0CEC", // KANNADA DIGIT SIX "0x37=0x0CED", // KANNADA DIGIT SEVEN "0x38=0x0CEE", // KANNADA DIGIT EIGHT "0x39=0x0CEF", // KANNADA DIGIT NINE ".=0x0CF0", // KANNADA ABBREVIATION SIGN //"=0x0CF1", // KANNADA LETTER //"=0x0CF2", // KANNADA LETTER //"=0x0CF3", // KANNADA LETTER //"=0x0CF4", // KANNADA LETTER //"=0x0CF5", // KANNADA LETTER //"=0x0CF6", // KANNADA LETTER //"=0x0CF7", // KANNADA LETTER //"=0x0CF8", // KANNADA LETTER //"=0x0CF9", // KANNADA LETTER //"=0x0CFA", // KANNADA LETTER //"=0x0CFB", // KANNADA LETTER //"=0x0CFC", // KANNADA LETTER //"=0x0CFD", // KANNADA LETTER //"=0x0CFE", // KANNADA LETTER //"=0x0CFF", // KANNADA LETTER ./mytool/kmap/Malayalam.kmap0000644000175000017500000003123407532460064016071 0ustar henrichhenrich// Malayalam kmap according to Malayalam-TeX transliteration // by Miikka-Markus Alhonen 2002-02-12 // Consonant + vowel/virama "..n=0x0d28 0x0d4d", "..n+=0x0d28 0x0d4d 0x200c", "..nR=0x0d28 0x0d43", "..na=0x0d28", "..naa=0x0d28 0x0d3e", "..nai=0x0d28 0x0d48", "..nau=0x0d28 0x0d4c", "..ne=0x0d28 0x0d46", "..nee=0x0d28 0x0d47", "..ni=0x0d28 0x0d3f", "..nii=0x0d28 0x0d40", "..no=0x0d28 0x0d4a", "..noo=0x0d28 0x0d4b", "..nu=0x0d28 0x0d41", "..nuu=0x0d28 0x0d42", "..t=0x0d31 0x0d4d", "..t+=0x0d31 0x0d4d 0x200c", "..tR=0x0d31 0x0d43", "..ta=0x0d31", "..taa=0x0d31 0x0d3e", "..tai=0x0d31 0x0d48", "..tau=0x0d31 0x0d4c", "..te=0x0d31 0x0d46", "..tee=0x0d31 0x0d47", "..ti=0x0d31 0x0d3f", "..tii=0x0d31 0x0d40", "..to=0x0d31 0x0d4a", "..too=0x0d31 0x0d4b", "..tu=0x0d31 0x0d41", "..tuu=0x0d31 0x0d42", ".d=0x0d21 0x0d4d", ".d+=0x0d21 0x0d4d 0x200c", ".dR=0x0d21 0x0d43", ".da=0x0d21", ".daa=0x0d21 0x0d3e", ".dai=0x0d21 0x0d48", ".dau=0x0d21 0x0d4c", ".de=0x0d21 0x0d46", ".dee=0x0d21 0x0d47", ".di=0x0d21 0x0d3f", ".dii=0x0d21 0x0d40", ".do=0x0d21 0x0d4a", ".doo=0x0d21 0x0d4b", ".du=0x0d21 0x0d41", ".duu=0x0d21 0x0d42", ".dh=0x0d22 0x0d4d", ".dh+=0x0d22 0x0d4d 0x200c", ".dhR=0x0d22 0x0d43", ".dha=0x0d22", ".dhaa=0x0d22 0x0d3e", ".dhai=0x0d22 0x0d48", ".dhau=0x0d22 0x0d4c", ".dhe=0x0d22 0x0d46", ".dhee=0x0d22 0x0d47", ".dhi=0x0d22 0x0d3f", ".dhii=0x0d22 0x0d40", ".dho=0x0d22 0x0d4a", ".dhoo=0x0d22 0x0d4b", ".dhu=0x0d22 0x0d41", ".dhuu=0x0d22 0x0d42", ".l=0x0d33 0x0d4d", ".l+=0x0d33 0x0d4d 0x200c", ".lR=0x0d33 0x0d43", ".la=0x0d33", ".laa=0x0d33 0x0d3e", ".lai=0x0d33 0x0d48", ".lau=0x0d33 0x0d4c", ".le=0x0d33 0x0d46", ".lee=0x0d33 0x0d47", ".li=0x0d33 0x0d3f", ".lii=0x0d33 0x0d40", ".lo=0x0d33 0x0d4a", ".loo=0x0d33 0x0d4b", ".lu=0x0d33 0x0d41", ".luu=0x0d33 0x0d42", ".n=0x0d23 0x0d4d", ".n+=0x0d23 0x0d4d 0x200c", ".nR=0x0d23 0x0d43", ".na=0x0d23", ".naa=0x0d23 0x0d3e", ".nai=0x0d23 0x0d48", ".nau=0x0d23 0x0d4c", ".ne=0x0d23 0x0d46", ".nee=0x0d23 0x0d47", ".ni=0x0d23 0x0d3f", ".nii=0x0d23 0x0d40", ".no=0x0d23 0x0d4a", ".noo=0x0d23 0x0d4b", ".nu=0x0d23 0x0d41", ".nuu=0x0d23 0x0d42", ".r=0x0d31 0x0d4d", ".r+=0x0d31 0x0d4d 0x200c", ".rR=0x0d31 0x0d43", ".ra=0x0d31", ".raa=0x0d31 0x0d3e", ".rai=0x0d31 0x0d48", ".rau=0x0d31 0x0d4c", ".re=0x0d31 0x0d46", ".ree=0x0d31 0x0d47", ".ri=0x0d31 0x0d3f", ".rii=0x0d31 0x0d40", ".ro=0x0d31 0x0d4a", ".roo=0x0d31 0x0d4b", ".ru=0x0d31 0x0d41", ".ruu=0x0d31 0x0d42", ".s=0x0d37 0x0d4d", ".s+=0x0d37 0x0d4d 0x200c", ".sR=0x0d37 0x0d43", ".sa=0x0d37", ".saa=0x0d37 0x0d3e", ".sai=0x0d37 0x0d48", ".sau=0x0d37 0x0d4c", ".se=0x0d37 0x0d46", ".see=0x0d37 0x0d47", ".si=0x0d37 0x0d3f", ".sii=0x0d37 0x0d40", ".so=0x0d37 0x0d4a", ".soo=0x0d37 0x0d4b", ".su=0x0d37 0x0d41", ".suu=0x0d37 0x0d42", ".t=0x0d1f 0x0d4d", ".t+=0x0d1f 0x0d4d 0x200c", ".tR=0x0d1f 0x0d43", ".ta=0x0d1f", ".taa=0x0d1f 0x0d3e", ".tai=0x0d1f 0x0d48", ".tau=0x0d1f 0x0d4c", ".te=0x0d1f 0x0d46", ".tee=0x0d1f 0x0d47", ".ti=0x0d1f 0x0d3f", ".tii=0x0d1f 0x0d40", ".to=0x0d1f 0x0d4a", ".too=0x0d1f 0x0d4b", ".tu=0x0d1f 0x0d41", ".tuu=0x0d1f 0x0d42", ".th=0x0d20 0x0d4d", ".th+=0x0d20 0x0d4d 0x200c", ".thR=0x0d20 0x0d43", ".tha=0x0d20", ".thaa=0x0d20 0x0d3e", ".thai=0x0d20 0x0d48", ".thau=0x0d20 0x0d4c", ".the=0x0d20 0x0d46", ".thee=0x0d20 0x0d47", ".thi=0x0d20 0x0d3f", ".thii=0x0d20 0x0d40", ".tho=0x0d20 0x0d4a", ".thoo=0x0d20 0x0d4b", ".thu=0x0d20 0x0d41", ".thuu=0x0d20 0x0d42", "\"n=0x0d19 0x0d4d", "\"n+=0x0d19 0x0d4d 0x200c", "\"nR=0x0d19 0x0d43", "\"na=0x0d19", "\"naa=0x0d19 0x0d3e", "\"nai=0x0d19 0x0d48", "\"nau=0x0d19 0x0d4c", "\"ne=0x0d19 0x0d46", "\"nee=0x0d19 0x0d47", "\"ni=0x0d19 0x0d3f", "\"nii=0x0d19 0x0d40", "\"no=0x0d19 0x0d4a", "\"noo=0x0d19 0x0d4b", "\"nu=0x0d19 0x0d41", "\"nuu=0x0d19 0x0d42", "b=0x0d2c 0x0d4d", "b+=0x0d2c 0x0d4d 0x200c", "bR=0x0d2c 0x0d43", "ba=0x0d2c", "baa=0x0d2c 0x0d3e", "bai=0x0d2c 0x0d48", "bau=0x0d2c 0x0d4c", "be=0x0d2c 0x0d46", "bee=0x0d2c 0x0d47", "bi=0x0d2c 0x0d3f", "bii=0x0d2c 0x0d40", "bo=0x0d2c 0x0d4a", "boo=0x0d2c 0x0d4b", "bu=0x0d2c 0x0d41", "buu=0x0d2c 0x0d42", "bh=0x0d2d 0x0d4d", "bh+=0x0d2d 0x0d4d 0x200c", "bhR=0x0d2d 0x0d43", "bha=0x0d2d", "bhaa=0x0d2d 0x0d3e", "bhai=0x0d2d 0x0d48", "bhau=0x0d2d 0x0d4c", "bhe=0x0d2d 0x0d46", "bhee=0x0d2d 0x0d47", "bhi=0x0d2d 0x0d3f", "bhii=0x0d2d 0x0d40", "bho=0x0d2d 0x0d4a", "bhoo=0x0d2d 0x0d4b", "bhu=0x0d2d 0x0d41", "bhuu=0x0d2d 0x0d42", "c=0x0d1a 0x0d4d", "c+=0x0d1a 0x0d4d 0x200c", "cR=0x0d1a 0x0d43", "ca=0x0d1a", "caa=0x0d1a 0x0d3e", "cai=0x0d1a 0x0d48", "cau=0x0d1a 0x0d4c", "ce=0x0d1a 0x0d46", "cee=0x0d1a 0x0d47", "ci=0x0d1a 0x0d3f", "cii=0x0d1a 0x0d40", "co=0x0d1a 0x0d4a", "coo=0x0d1a 0x0d4b", "cu=0x0d1a 0x0d41", "cuu=0x0d1a 0x0d42", "ch=0x0d1b 0x0d4d", "ch+=0x0d1b 0x0d4d 0x200c", "chR=0x0d1b 0x0d43", "cha=0x0d1b", "chaa=0x0d1b 0x0d3e", "chai=0x0d1b 0x0d48", "chau=0x0d1b 0x0d4c", "che=0x0d1b 0x0d46", "chee=0x0d1b 0x0d47", "chi=0x0d1b 0x0d3f", "chii=0x0d1b 0x0d40", "cho=0x0d1b 0x0d4a", "choo=0x0d1b 0x0d4b", "chu=0x0d1b 0x0d41", "chuu=0x0d1b 0x0d42", "d=0x0d26 0x0d4d", "d+=0x0d26 0x0d4d 0x200c", "dR=0x0d26 0x0d43", "da=0x0d26", "daa=0x0d26 0x0d3e", "dai=0x0d26 0x0d48", "dau=0x0d26 0x0d4c", "de=0x0d26 0x0d46", "dee=0x0d26 0x0d47", "di=0x0d26 0x0d3f", "dii=0x0d26 0x0d40", "do=0x0d26 0x0d4a", "doo=0x0d26 0x0d4b", "du=0x0d26 0x0d41", "duu=0x0d26 0x0d42", "dh=0x0d27 0x0d4d", "dh+=0x0d27 0x0d4d 0x200c", "dhR=0x0d27 0x0d43", "dha=0x0d27", "dhaa=0x0d27 0x0d3e", "dhai=0x0d27 0x0d48", "dhau=0x0d27 0x0d4c", "dhe=0x0d27 0x0d46", "dhee=0x0d27 0x0d47", "dhi=0x0d27 0x0d3f", "dhii=0x0d27 0x0d40", "dho=0x0d27 0x0d4a", "dhoo=0x0d27 0x0d4b", "dhu=0x0d27 0x0d41", "dhuu=0x0d27 0x0d42", "f=0x0d2b 0x0d4d", "f+=0x0d2b 0x0d4d 0x200c", "fR=0x0d2b 0x0d43", "fa=0x0d2b", "faa=0x0d2b 0x0d3e", "fai=0x0d2b 0x0d48", "fau=0x0d2b 0x0d4c", "fe=0x0d2b 0x0d46", "fee=0x0d2b 0x0d47", "fi=0x0d2b 0x0d3f", "fii=0x0d2b 0x0d40", "fo=0x0d2b 0x0d4a", "foo=0x0d2b 0x0d4b", "fu=0x0d2b 0x0d41", "fuu=0x0d2b 0x0d42", "g=0x0d17 0x0d4d", "g+=0x0d17 0x0d4d 0x200c", "gR=0x0d17 0x0d43", "ga=0x0d17", "gaa=0x0d17 0x0d3e", "gai=0x0d17 0x0d48", "gau=0x0d17 0x0d4c", "ge=0x0d17 0x0d46", "gee=0x0d17 0x0d47", "gi=0x0d17 0x0d3f", "gii=0x0d17 0x0d40", "go=0x0d17 0x0d4a", "goo=0x0d17 0x0d4b", "gu=0x0d17 0x0d41", "guu=0x0d17 0x0d42", "gh=0x0d18 0x0d4d", "gh+=0x0d18 0x0d4d 0x200c", "ghR=0x0d18 0x0d43", "gha=0x0d18", "ghaa=0x0d18 0x0d3e", "ghai=0x0d18 0x0d48", "ghau=0x0d18 0x0d4c", "ghe=0x0d18 0x0d46", "ghee=0x0d18 0x0d47", "ghi=0x0d18 0x0d3f", "ghii=0x0d18 0x0d40", "gho=0x0d18 0x0d4a", "ghoo=0x0d18 0x0d4b", "ghu=0x0d18 0x0d41", "ghuu=0x0d18 0x0d42", "h=0x0d39 0x0d4d", "h+=0x0d39 0x0d4d 0x200c", "hR=0x0d39 0x0d43", "ha=0x0d39", "haa=0x0d39 0x0d3e", "hai=0x0d39 0x0d48", "hau=0x0d39 0x0d4c", "he=0x0d39 0x0d46", "hee=0x0d39 0x0d47", "hi=0x0d39 0x0d3f", "hii=0x0d39 0x0d40", "ho=0x0d39 0x0d4a", "hoo=0x0d39 0x0d4b", "hu=0x0d39 0x0d41", "huu=0x0d39 0x0d42", "j=0x0d1c 0x0d4d", "j+=0x0d1c 0x0d4d 0x200c", "jR=0x0d1c 0x0d43", "ja=0x0d1c", "jaa=0x0d1c 0x0d3e", "jai=0x0d1c 0x0d48", "jau=0x0d1c 0x0d4c", "je=0x0d1c 0x0d46", "jee=0x0d1c 0x0d47", "ji=0x0d1c 0x0d3f", "jii=0x0d1c 0x0d40", "jo=0x0d1c 0x0d4a", "joo=0x0d1c 0x0d4b", "ju=0x0d1c 0x0d41", "juu=0x0d1c 0x0d42", "jh=0x0d1d 0x0d4d", "jh+=0x0d1d 0x0d4d 0x200c", "jhR=0x0d1d 0x0d43", "jha=0x0d1d", "jhaa=0x0d1d 0x0d3e", "jhai=0x0d1d 0x0d48", "jhau=0x0d1d 0x0d4c", "jhe=0x0d1d 0x0d46", "jhee=0x0d1d 0x0d47", "jhi=0x0d1d 0x0d3f", "jhii=0x0d1d 0x0d40", "jho=0x0d1d 0x0d4a", "jhoo=0x0d1d 0x0d4b", "jhu=0x0d1d 0x0d41", "jhuu=0x0d1d 0x0d42", "k=0x0d15 0x0d4d", "k+=0x0d15 0x0d4d 0x200c", "kR=0x0d15 0x0d43", "ka=0x0d15", "kaa=0x0d15 0x0d3e", "kai=0x0d15 0x0d48", "kau=0x0d15 0x0d4c", "ke=0x0d15 0x0d46", "kee=0x0d15 0x0d47", "ki=0x0d15 0x0d3f", "kii=0x0d15 0x0d40", "ko=0x0d15 0x0d4a", "koo=0x0d15 0x0d4b", "ku=0x0d15 0x0d41", "kuu=0x0d15 0x0d42", "kh=0x0d16 0x0d4d", "kh+=0x0d16 0x0d4d 0x200c", "khR=0x0d16 0x0d43", "kha=0x0d16", "khaa=0x0d16 0x0d3e", "khai=0x0d16 0x0d48", "khau=0x0d16 0x0d4c", "khe=0x0d16 0x0d46", "khee=0x0d16 0x0d47", "khi=0x0d16 0x0d3f", "khii=0x0d16 0x0d40", "kho=0x0d16 0x0d4a", "khoo=0x0d16 0x0d4b", "khu=0x0d16 0x0d41", "khuu=0x0d16 0x0d42", "l=0x0d32 0x0d4d", "l+=0x0d32 0x0d4d 0x200c", "lR=0x0d32 0x0d43", "la=0x0d32", "laa=0x0d32 0x0d3e", "lai=0x0d32 0x0d48", "lau=0x0d32 0x0d4c", "le=0x0d32 0x0d46", "lee=0x0d32 0x0d47", "li=0x0d32 0x0d3f", "lii=0x0d32 0x0d40", "lo=0x0d32 0x0d4a", "loo=0x0d32 0x0d4b", "lu=0x0d32 0x0d41", "luu=0x0d32 0x0d42", "m=0x0d2e 0x0d4d", "m+=0x0d2e 0x0d4d 0x200c", "mR=0x0d2e 0x0d43", "ma=0x0d2e", "maa=0x0d2e 0x0d3e", "mai=0x0d2e 0x0d48", "mau=0x0d2e 0x0d4c", "me=0x0d2e 0x0d46", "mee=0x0d2e 0x0d47", "mi=0x0d2e 0x0d3f", "mii=0x0d2e 0x0d40", "mo=0x0d2e 0x0d4a", "moo=0x0d2e 0x0d4b", "mu=0x0d2e 0x0d41", "muu=0x0d2e 0x0d42", "n=0x0d28 0x0d4d", "n+=0x0d28 0x0d4d 0x200c", "nR=0x0d28 0x0d43", "na=0x0d28", "naa=0x0d28 0x0d3e", "nai=0x0d28 0x0d48", "nau=0x0d28 0x0d4c", "ne=0x0d28 0x0d46", "nee=0x0d28 0x0d47", "ni=0x0d28 0x0d3f", "nii=0x0d28 0x0d40", "no=0x0d28 0x0d4a", "noo=0x0d28 0x0d4b", "nu=0x0d28 0x0d41", "nuu=0x0d28 0x0d42", "p=0x0d2a 0x0d4d", "p+=0x0d2a 0x0d4d 0x200c", "pR=0x0d2a 0x0d43", "pa=0x0d2a", "paa=0x0d2a 0x0d3e", "pai=0x0d2a 0x0d48", "pau=0x0d2a 0x0d4c", "pe=0x0d2a 0x0d46", "pee=0x0d2a 0x0d47", "pi=0x0d2a 0x0d3f", "pii=0x0d2a 0x0d40", "po=0x0d2a 0x0d4a", "poo=0x0d2a 0x0d4b", "pu=0x0d2a 0x0d41", "puu=0x0d2a 0x0d42", "ph=0x0d2b 0x0d4d", "ph+=0x0d2b 0x0d4d 0x200c", "phR=0x0d2b 0x0d43", "pha=0x0d2b", "phaa=0x0d2b 0x0d3e", "phai=0x0d2b 0x0d48", "phau=0x0d2b 0x0d4c", "phe=0x0d2b 0x0d46", "phee=0x0d2b 0x0d47", "phi=0x0d2b 0x0d3f", "phii=0x0d2b 0x0d40", "pho=0x0d2b 0x0d4a", "phoo=0x0d2b 0x0d4b", "phu=0x0d2b 0x0d41", "phuu=0x0d2b 0x0d42", "r=0x0d30 0x0d4d", "r+=0x0d30 0x0d4d 0x200c", "rR=0x0d30 0x0d43", "ra=0x0d30", "raa=0x0d30 0x0d3e", "rai=0x0d30 0x0d48", "rau=0x0d30 0x0d4c", "re=0x0d30 0x0d46", "ree=0x0d30 0x0d47", "ri=0x0d30 0x0d3f", "rii=0x0d30 0x0d40", "ro=0x0d30 0x0d4a", "roo=0x0d30 0x0d4b", "ru=0x0d30 0x0d41", "ruu=0x0d30 0x0d42", "s=0x0d38 0x0d4d", "s+=0x0d38 0x0d4d 0x200c", "sR=0x0d38 0x0d43", "sa=0x0d38", "saa=0x0d38 0x0d3e", "sai=0x0d38 0x0d48", "sau=0x0d38 0x0d4c", "se=0x0d38 0x0d46", "see=0x0d38 0x0d47", "si=0x0d38 0x0d3f", "sii=0x0d38 0x0d40", "so=0x0d38 0x0d4a", "soo=0x0d38 0x0d4b", "su=0x0d38 0x0d41", "suu=0x0d38 0x0d42", "sh=0x0d36 0x0d4d", "sh+=0x0d36 0x0d4d 0x200c", "shR=0x0d36 0x0d43", "sha=0x0d36", "shaa=0x0d36 0x0d3e", "shai=0x0d36 0x0d48", "shau=0x0d36 0x0d4c", "she=0x0d36 0x0d46", "shee=0x0d36 0x0d47", "shi=0x0d36 0x0d3f", "shii=0x0d36 0x0d40", "sho=0x0d36 0x0d4a", "shoo=0x0d36 0x0d4b", "shu=0x0d36 0x0d41", "shuu=0x0d36 0x0d42", "t=0x0d24 0x0d4d", "t+=0x0d24 0x0d4d 0x200c", "tR=0x0d24 0x0d43", "ta=0x0d24", "taa=0x0d24 0x0d3e", "tai=0x0d24 0x0d48", "tau=0x0d24 0x0d4c", "te=0x0d24 0x0d46", "tee=0x0d24 0x0d47", "ti=0x0d24 0x0d3f", "tii=0x0d24 0x0d40", "to=0x0d24 0x0d4a", "too=0x0d24 0x0d4b", "tu=0x0d24 0x0d41", "tuu=0x0d24 0x0d42", "th=0x0d25 0x0d4d", "th+=0x0d25 0x0d4d 0x200c", "thR=0x0d25 0x0d43", "tha=0x0d25", "thaa=0x0d25 0x0d3e", "thai=0x0d25 0x0d48", "thau=0x0d25 0x0d4c", "the=0x0d25 0x0d46", "thee=0x0d25 0x0d47", "thi=0x0d25 0x0d3f", "thii=0x0d25 0x0d40", "tho=0x0d25 0x0d4a", "thoo=0x0d25 0x0d4b", "thu=0x0d25 0x0d41", "thuu=0x0d25 0x0d42", "v=0x0d35 0x0d4d", "v+=0x0d35 0x0d4d 0x200c", "vR=0x0d35 0x0d43", "va=0x0d35", "vaa=0x0d35 0x0d3e", "vai=0x0d35 0x0d48", "vau=0x0d35 0x0d4c", "ve=0x0d35 0x0d46", "vee=0x0d35 0x0d47", "vi=0x0d35 0x0d3f", "vii=0x0d35 0x0d40", "vo=0x0d35 0x0d4a", "voo=0x0d35 0x0d4b", "vu=0x0d35 0x0d41", "vuu=0x0d35 0x0d42", "y=0x0d2f 0x0d4d", "y+=0x0d2f 0x0d4d 0x200c", "yR=0x0d2f 0x0d43", "ya=0x0d2f", "yaa=0x0d2f 0x0d3e", "yai=0x0d2f 0x0d48", "yau=0x0d2f 0x0d4c", "ye=0x0d2f 0x0d46", "yee=0x0d2f 0x0d47", "yi=0x0d2f 0x0d3f", "yii=0x0d2f 0x0d40", "yo=0x0d2f 0x0d4a", "yoo=0x0d2f 0x0d4b", "yu=0x0d2f 0x0d41", "yuu=0x0d2f 0x0d42", "zh=0x0d34 0x0d4d", "zh+=0x0d34 0x0d4d 0x200c", "zhR=0x0d34 0x0d43", "zha=0x0d34", "zhaa=0x0d34 0x0d3e", "zhai=0x0d34 0x0d48", "zhau=0x0d34 0x0d4c", "zhe=0x0d34 0x0d46", "zhee=0x0d34 0x0d47", "zhi=0x0d34 0x0d3f", "zhii=0x0d34 0x0d40", "zho=0x0d34 0x0d4a", "zhoo=0x0d34 0x0d4b", "zhu=0x0d34 0x0d41", "zhuu=0x0d34 0x0d42", "~n=0x0d1e 0x0d4d", "~n+=0x0d1e 0x0d4d 0x200c", "~nR=0x0d1e 0x0d43", "~na=0x0d1e", "~naa=0x0d1e 0x0d3e", "~nai=0x0d1e 0x0d48", "~nau=0x0d1e 0x0d4c", "~ne=0x0d1e 0x0d46", "~nee=0x0d1e 0x0d47", "~ni=0x0d1e 0x0d3f", "~nii=0x0d1e 0x0d40", "~no=0x0d1e 0x0d4a", "~noo=0x0d1e 0x0d4b", "~nu=0x0d1e 0x0d41", "~nuu=0x0d1e 0x0d42", // Independent vowels "a=0x0d05", "aa=0x0d06", "i=0x0d07", "ii=0x0d08", "u=0x0d09", "uu=0x0d0a", "R=0x0d0b", "L=0x0d0c", "e=0x0d0e", "ee=0x0d0f", "ai=0x0d10", "o=0x0d12", "oo=0x0d13", "au=0x0d14", "RR=0x0d60", "LL=0x0d61", // Numbers "0x30=0x0d66", "0x31=0x0d67", "0x32=0x0d68", "0x33=0x0d69", "0x34=0x0d6a", "0x35=0x0d6b", "0x36=0x0d6c", "0x37=0x0d6d", "0x38=0x0d6e", "0x39=0x0d6f", // Other marks ".m=0x0d02", ".h=0x0d03", "+=0xd4d 0x200c", "[]=0x25cc", ">>=0x200c", "<<=0x200d", ./mytool/kmap/Kazakh-prefix.kmap0000644000175000017500000001316707627533710016710 0ustar henrichhenrich// Kazakh keyboard layout for Yudit // Kazakhstani prefix input table based on Russian (Microsoft) standard keyboard. // Uses ` (upper-left key) as deadkey prefix for EXTENDED CYRILLIC letters input // The prefix is actual for following keys: // SHORT I, short i: (`),(Й,й) => (Ұ,ұ) // U, u: (`),(У,у) => (Ү,ү) // KA, ka: (`),(К,к) => (Қ,қ) // IE, ie: (`),(Е,е) => (Ё,ё) // EN, en: (`),(Н,н) => (Ң,ң) // GHE, ghe: (`),(Г,г) => (Ғ,ғ) // HA, ha: (`),(Х,х) => (Һ,һ) // A, a: (`),(А,а) => (Ә,ә) // O, o: (`),(О,о) => (Ө,ө) // I, i: (`),(И,и) => (І,і) // // 2003-02-26 by Sairan Kikkarin // "!=0x0021", // ! = EXCLAMATION MARK "@=0x0022", // " = QUOTATION MARK "#=0x2116", // № = NUMERO SIGN "$=0x003B", // ; = SEMICOLON "%=0x0025", // % = PERCENT SIGN "^=0x003A", // : = COLON "&=0x003F", // ? = QUESTION MARK "*=0x002A", // * = ASTERISK "(=0x0028", // ( = LEFT PARENTHESIS ")=0x0029", // ) = RIGHT PARENTHESIS "_=0x005F", // _ = LOW LINE "+=0x002B", // + = PLUS SIGN "Q=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "` Q=0x04B0", // Ұ = CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE "W=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "E=0x0423", // У = CYRILLIC CAPITAL LETTER U "` E=0x04AE", // Ү = CYRILLIC CAPITAL LETTER STRAIGHT U "R=0x041A", // К = CYRILLIC CAPITAL LETTER KA "` R=0x049A", // Қ = CYRILLIC CAPITAL LETTER KA WITH DESCENDER "T=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "` T = 0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "Y=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "` Y=0x04A2", // Ң = CYRILLIC CAPITAL LETTER EN WITH DESCENDER "U=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "` U=0x0492", // Ғ = CYRILLIC CAPITAL LETTER GHE WITH STROKE "I=0x0428", // Ш = CYRILLIC CAPITAL LETTER SH "O=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCH "P=0x0417", // З = CYRILLIC CAPITAL LETTER ZE "{=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "` {=0x04BA", // Һ = CYRILLIC CAPITAL LETTER SHHA "A=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "S=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "D=0x0412", // В = CYRILLIC CAPITAL LETTER VE "F=0x0410", // А = CYRILLIC CAPITAL LETTER A "` F=0x04D8", // Ә = CYRILLIC CAPITAL LETTER SCHWA "G=0x041F", // П = CYRILLIC CAPITAL LETTER PE "H=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "J=0x041E", // О = CYRILLIC CAPITAL LETTER O "` J=0x04E8", // Ө = CYRILLIC CAPITAL LETTER BARRED O "K=0x041B", // Л = CYRILLIC CAPITAL LETTER EL "L=0x0414", // Д = CYRILLIC CAPITAL LETTER DE ":=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "\"=0x042D", // Э = CYRILLIC CAPITAL LETTER E "0x7C=0x002F", // / = SOLIDUS "Z=0x042F", // Я = CYRILLIC CAPITAL LETTER YA "X=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "C=0x0421", // С = CYRILLIC CAPITAL LETTER ES "V=0x041C", // М = CYRILLIC CAPITAL LETTER EM "B=0x0418", // И = CYRILLIC CAPITAL LETTER I "` B=0x0406", // І = CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I "N=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "}=0x042A", // Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "M=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "<=0x0411", // Б = CYRILLIC CAPITAL LETTER BE ">=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "?=0x002C", // , = COMMA // Same, but lower case: "0x31=0x0031", // 1 = DIGIT ONE "0x32=0x0032", // 2 = DIGIT TWO "0x33=0x0033", // 3 = DIGIT THREE "0x34=0x0034", // 4 = DIGIT FOUR "0x35=0x0035", // 5 = DIGIT FIVE "0x36=0x0036", // 6 = DIGIT SIX "0x37=0x0037", // 7 = DIGIT SEVEN "0x38=0x0038", // 8 = DIGIT EIGHT "0x39=0x0039", // 9 = DIGIT NINE "0x30=0x0030", // 0 = DIGIT ZERO "-=0x002D", // - = HIPHEN-MINUS "0x30=0x003D", // = = EQUALS SIGN "q=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "` q=0x04B1", // ұ = CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE "w=0x0446", // ц = CYRILLIC SMALL LETTER TSE "e=0x0443", // у = CYRILLIC SMALL LETTER U "` e=0x04AF", // ү = CYRILLIC SMALL LETTER STRAIGHT U "r=0x043A", // к = CYRILLIC SMALL LETTER KA "` r=0x049B", // қ = CYRILLIC SMALL LETTER KA WITH DESCENDER "t=0x0435", // е = CYRILLIC SMALL LETTER IE "` t=0x0451", // ё = CYRILLIC SMALL LETTER IO "y=0x043D", // н = CYRILLIC SMALL LETTER EN "` y=0x04A3", // ң = CYRILLIC SMALL LETTER EN WITH DESCENDER "u=0x0433", // г = CYRILLIC SMALL LETTER GHE "` u=0x0493", // ғ = CYRILLIC SMALL LETTER GHE WITH STROKE "i=0x0448", // ш = CYRILLIC SMALL LETTER SH "o=0x0449", // щ = CYRILLIC SMALL LETTER SHCH "p=0x0437", // з = CYRILLIC SMALL LETTER ZE "[=0x0445", // х = CYRILLIC SMALL LETTER HA "` [=0x04BB", // һ = CYRILLIC SMALL LETTER SHHA "a=0x0444", // ф = CYRILLIC SMALL LETTER EF "s=0x044B", // ы = CYRILLIC SMALL LETTER YERU "d=0x0432", // в = CYRILLIC SMALL LETTER VE "f=0x0430", // а = CYRILLIC SMALL LETTER A "` f=0x04D9", // ә = CYRILLIC SMALL LETTER SCHWA "g=0x043F", // п = CYRILLIC SMALL LETTER PE "h=0x0440", // р = CYRILLIC SMALL LETTER ER "j=0x043E", // о = CYRILLIC SMALL LETTER O "` j=0x04E9", // ө = CYRILLIC SMALL LETTER BARRED O "k=0x043B", // л = CYRILLIC SMALL LETTER EL "l=0x0434", // д = CYRILLIC SMALL LETTER DE ";=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "'=0x044D", // э = CYRILLIC SMALL LETTER E "0x5C=0x005C", // \ = REVERSE SOLIDUS "z=0x044F", // я = CYRILLIC SMALL LETTER YA "x=0x0447", // ч = CYRILLIC SMALL LETTER CHE "c=0x0441", // с = CYRILLIC SMALL LETTER ES "v=0x043C", // м = CYRILLIC SMALL LETTER EM "b=0x0438", // и = CYRILLIC SMALL LETTER I "` b=0x0456", // і = CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I "n=0x0442", // т = CYRILLIC SMALL LETTER TE "]=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "m=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN ",=0x0431", // б = CYRILLIC SMALL LETTER BE ".=0x044E", // ю = CYRILLIC SMALL LETTER YU "/=0x002E", // . = FULL STOP ./mytool/kmap/Runic-Futhark.kmap0000644000175000017500000000270507630527246016663 0ustar henrichhenrich// Elder Futhark keymap for the Unicode editor Yudit // 2003-03-02 david@start.no // Codes from http://heima.olivant.fo/~styrheim/tools/runes/rtable.html // Alphabet from http://members.aol.com/JehanaS/futhark/ // ----------------------------------------------------------------------- // Changes: // Eihwaz mapped to ei to avoid conflict with Ehwaz // ----------------------------------------------------------------------- "f=0x16A0", // ᚠ FEHU "u=0x16A2", // ᚢ URUZ "th=0x16A6", // ᚦ THURISAZ → 00FE þ latin small letter thorn "a=0x16A8", // ᚨ ANSUZ "r=0x16B1", // ᚱ RAIDO "k=0x16B2", // ᚲ KAUNA (Kenaz) "g=0x16B7", // ᚷ GEBO "w=0x16B9", // ᚹ WUNJO → 01BF ƿ latin letter wynn "v=0x16B9", // ᚹ WUNJO → 01BF ƿ latin letter wynn "h=0x16BA", // ᚺ HAGLAZ "n=0x16BE", // ᚾ NAUDIZ (Nauthiz) "i=0x16C1", // ᛁ IS (Isa) "j=0x16C3", // ᛃ JERAN (Jera) "y=0x16C3", // ᛃ JERAN (Jera) "ei=0x16C7", // ᛇ IWAZ (Eihwaz) "p=0x16C8", // ᛈ PERTHO (Perthro) "z=0x16C9", // ᛉ ALGIZ "s=0x16CA", // ᛊ SOWILO (Sowulo) //LOOKS SLIGHLY DIFFERENT ON THE PAGE "t=0x16CF", // ᛏ TIWAZ (Teiwaz) "b=0x16D2", // ᛒ BERKANAN (Berkana) "e=0x16D6", // ᛖ EHWAZ "m=0x16D7", // ᛗ MANNAZ "l=0x16DA", // ᛚ LAUKAZ LAGU (Laguz) "ng=0x16DC", // ᛜ INGWAZ (Inguz) "o=0x16DF", // ᛟ OTHALAN (Othila) "d=0x16DE", // ᛞ DAGAZ ".=0x16EB", // ᛫ RUNIC SINGLE PUNCTUATION ":=0x16EC", // ᛬ RUNIC MULTIPLE PUNCTUATION "+=0x16ED", // ᛭ RUNIC CROSS PUNCTUATION ./mytool/kmap/Berbere-standard.kmap0000644000175000017500000000071707572026304017340 0ustar henrichhenrich// This keymap is for standard texts in Berber "##version = version_2002_11_25_01", "##auteur = Bruno_Cauchy_Lefebvre", "##email = bb.lefebvre@free.fr", "*` =`", "`` =`", "`* =*", "** =*", "- =0x0323", "*- =-", "`- =-", "( =0x0306", "*( =(", "`( =(", "[ =0x0306", "*[ =[", "`[ =[", "v =0x0263", "*v =v", "`v =v", "V =0x0194", "*V =V", "`V =V", "o =0x025B", "*o =o", "`o =o", "O =0x0190", "*O =O", "`O =O", ./mytool/kmap/Guarani.kmap0000644000175000017500000000426107532460064015561 0ustar henrichhenrich// http://czyborra.com/yudit/Guarani.kmap 1998-09-25 // Pino Zollo writes: // Guarani is the most spoken language in Paraguay and it is written // since 1500 when Jesuits came to this country. With the recent // scolar reform Guarani was introduced as mandatory in all classes. // The peculiarity of guarani' consists in its nasal vawel that are // the 6 following: "a e i o u y" with the cedilla ~ on top and the // same with tonic accent ' on top. Furthermore there are "n" and "g" // with ~ on top. Asuncion, 1998-08-20. Literature: // http://www1.highway.com.py/~pinoz/Linux/Guarani/ // http://merece.uthscsa.edu/gram/guarani/ // http://czyborra.com/yudit/ "A'=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "a'=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "A~=0x00C3", // à = LATIN CAPITAL LETTER A WITH TILDE "a~=0x00E3", // ã = LATIN SMALL LETTER A WITH TILDE "E'=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "e'=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "E~=0x1EBC", // Ẽ = LATIN CAPITAL LETTER E WITH TILDE "e~=0x1EBD", // ẽ = LATIN SMALL LETTER E WITH TILDE "G~=G 0x0303", // G̃ = LATIN CAPITAL LETTER G + COMBINING TILDE "g~=g 0x0303", // g̃ = LATIN SMALL LETTER G + COMBINING TILDE "I'=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "i'=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "I~=0x0128", // Ĩ = LATIN CAPITAL LETTER I WITH TILDE "i~=0x0129", // ĩ = LATIN SMALL LETTER I WITH TILDE "N~=0x00D1", // Ñ = LATIN CAPITAL LETTER N WITH TILDE "n~=0x00F1", // ñ = LATIN SMALL LETTER N WITH TILDE "O'=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "o'=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "O~=0x00D5", // Õ = LATIN CAPITAL LETTER O WITH TILDE "o~=0x00F5", // õ = LATIN SMALL LETTER O WITH TILDE "U'=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "u'=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "U~=0x0168", // Ũ = LATIN CAPITAL LETTER U WITH TILDE "u~=0x0169", // ũ = LATIN SMALL LETTER U WITH TILDE "Y'=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "y'=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "Y~=0x1EF8", // Ỹ = LATIN CAPITAL LETTER Y WITH TILDE "y~=0x1EF9", // ỹ = LATIN SMALL LETTER Y WITH TILDE ./mytool/kmap/Russian-Translit-German.kmap0000644000175000017500000000336507765355504020642 0ustar henrichhenrich//Meine persoenliche Deutsch-Russisch Keymap. //Lesen Sie bitte LIESMICH.DE-RU. Alles GPL Software. //Thomas Wohlfarth // //---------------- Grosse Buchstaben ---------------- // "A=0x0410", "B=0x0411", "W=0x0412", "V=0x0412", "G=0x0413", "D=0x0414", "E=0x0415", // je "Je=0x0415", "JE=0x0415", "E\"=0x0401", // jo "Jo=0x0401", "JO=0x0401", "JH=0x0416", //Weiches sch wie in "Journal" "Jh=0x0416", "S=0x0417", //stimmhaftes s wie in "See" "I=0x0418", "I'=0x0419", // kurzes i - i'kratkoje "K=0x041A", "L=0x041B", "M=0x041C", "N=0x041D", "O=0x041E", "P=0x041F", "R=0x0420", "C=0x0421", // scharfes s wie in "dass" "T=0x0422", "U=0x0423", "F=0x0424", "X=0x0425", // ch wie in "Bach" "Ch=0x0425", "CH=0x0425", "Z=0x0426", "Tsch=0x0427", "Sch=0x0428", "SCH=0x0428", "Schtsch=0x0429", "SCHTSCH=0x0429", "HZ=0x042A", // Haertezeichen "Y=0x042B", "WZ=0x042C", // Weichheitszeichen "0xC4=0x042D", // kurzes e (ae) "JU=0x042E", // ju "Ju=0x042E", "JA=0x042F", // ja "Ja=0x042F", // // --------------------Kleine Buchstaben------- // "a=0x0430", "b=0x0431", "w=0x0432", "v=0x0432", "g=0x0433", "d=0x0434", "e=0x0435", // je "je=0x0435", "e\"=0x0451", "jo=0x0451", "jh=0x0436", // weiches sch wie in "Journal" "s=0x0437", // stimmhaftes s wie in "See" "i=0x0438", "i'=0x0439", "k=0x043A", "l=0x043B", "m=0x043C", "n=0x043D", "o=0x043E", "p=0x043F", "r=0x0440", "c=0x0441", // scharfes s wie in "dass" "t=0x0442", "u=0x0443", "f=0x0444", "x=0x0445", // ch wie in "Bach" "ch=0x0445", "z=0x0446", "tsch=0x0447", "sch=0x0448", "schtsch=0x0449", "hz=0x044A", // Haertezeichen "y=0x044B", "wz=0x044C", // Weichheitszeichen "0xE4=0x044D", // kurzes e (ae) "ju=0x044E", "ja=0x044F", ./mytool/kmap/Russian-extended.kmap0000644000175000017500000001501407572774166017432 0ustar henrichhenrich// Russian input table that follows the standard keyboard layout (Microsoft variant) for Yudit // © 2002-11-23 by Vyacheslav Dikonov // Additions and improvements are welcome // 0. Quotation marks and special symbols popular with Cyrillic "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // ? = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "''=0x0027", // ' = APOSTROPHE "C)=0x00A9", // © = COPYRIGHT SIGN "x)=0x2022", // ? = BULLET ":)=0x263A", // ? = WHITE SMILING FACE ":(=0x2639", // ? = WHITE FROWNING FACE "C-=0x00A4", // ¤ = CURRENCY SIGN "E-=0x20AC", // ? = EURO SIGN "L-=0x00A3", // £ = POUND SIGN // General table for Russian "~=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "!=0x0021", // ! = EXCLAMATION MARK "@=0x0022", // " = QUOTATION MARK "#=0x2116", // № = NUMERO SIGN "$=0x003B", // ; = SEMICOLON "%=0x0025", // % = PERCENT SIGN "^=0x003A", // : = COLON "&=0x003F", // ? = QUESTION MARK "*=0x002A", // * = ASTERISK "(=0x0028", // ( = LEFT PARENTHESIS ")=0x0029", // ) = RIGHT PARENTHESIS "_=0x005F", // _ = LOW LINE "+=0x002B", // + = PLUS SIGN "Q=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "W=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "E=0x0423", // У = CYRILLIC CAPITAL LETTER U "R=0x041A", // К = CYRILLIC CAPITAL LETTER KA "T=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "Y=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "U=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "I=0x0428", // Ш = CYRILLIC CAPITAL LETTER SH "O=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCH "P=0x0417", // З = CYRILLIC CAPITAL LETTER ZE "{=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "A=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "S=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "D=0x0412", // В = CYRILLIC CAPITAL LETTER VE "F=0x0410", // А = CYRILLIC CAPITAL LETTER A "G=0x041F", // П = CYRILLIC CAPITAL LETTER PE "H=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "J=0x041E", // О = CYRILLIC CAPITAL LETTER O "K=0x041B", // Л = CYRILLIC CAPITAL LETTER EL "L=0x0414", // Д = CYRILLIC CAPITAL LETTER DE ":=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "\"=0x042D", // Э = CYRILLIC CAPITAL LETTER E "0x7C=0x002F", // / = SOLIDUS "Z=0x042F", // Я = CYRILLIC CAPITAL LETTER YA "X=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "C=0x0421", // С = CYRILLIC CAPITAL LETTER ES "V=0x041C", // М = CYRILLIC CAPITAL LETTER EM "B=0x0418", // И = CYRILLIC CAPITAL LETTER I "N=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "}=0x042A", // Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "M=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "<=0x0411", // Б = CYRILLIC CAPITAL LETTER BE ">=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "?=0x002C", // , = COMMA // Same, but lower case: "`=0x0451", // ё = CYRILLIC SMALL LETTER IO "0x31=0x0031", // 1 = DIGIT ONE "0x32=0x0032", // 2 = DIGIT TWO "0x33=0x0033", // 3 = DIGIT THREE "0x34=0x0034", // 4 = DIGIT FOUR "0x35=0x0035", // 5 = DIGIT FIVE "0x36=0x0036", // 6 = DIGIT SIX "0x37=0x0037", // 7 = DIGIT SEVEN "0x38=0x0038", // 8 = DIGIT EIGHT "0x39=0x0039", // 9 = DIGIT NINE "0x30=0x0030", // 0 = DIGIT ZERO "-=0x002D", // - = HIPHEN-MINUS "0x30=0x003D", // = = EQUALS SIGN "q=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "w=0x0446", // ц = CYRILLIC SMALL LETTER TSE "e=0x0443", // у = CYRILLIC SMALL LETTER U "r=0x043A", // к = CYRILLIC SMALL LETTER KA "t=0x0435", // е = CYRILLIC SMALL LETTER IE "y=0x043D", // н = CYRILLIC SMALL LETTER EN "u=0x0433", // г = CYRILLIC SMALL LETTER GHE "i=0x0448", // ш = CYRILLIC SMALL LETTER SH "o=0x0449", // щ = CYRILLIC SMALL LETTER SHCH "p=0x0437", // з = CYRILLIC SMALL LETTER ZE "[=0x0445", // х = CYRILLIC SMALL LETTER HA "a=0x0444", // ф = CYRILLIC SMALL LETTER EF "s=0x044B", // ы = CYRILLIC SMALL LETTER YERU "d=0x0432", // в = CYRILLIC SMALL LETTER VE "f=0x0430", // а = CYRILLIC SMALL LETTER A "g=0x043F", // п = CYRILLIC SMALL LETTER PE "h=0x0440", // р = CYRILLIC SMALL LETTER ER "j=0x043E", // о = CYRILLIC SMALL LETTER O "k=0x043B", // л = CYRILLIC SMALL LETTER EL "l=0x0434", // д = CYRILLIC SMALL LETTER DE ";=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "'=0x044D", // э = CYRILLIC SMALL LETTER E "0x5C=0x005C", // \ = REVERSE SOLIDUS "z=0x044F", // я = CYRILLIC SMALL LETTER YA "x=0x0447", // ч = CYRILLIC SMALL LETTER CHE "c=0x0441", // с = CYRILLIC SMALL LETTER ES "v=0x043C", // м = CYRILLIC SMALL LETTER EM "b=0x0438", // и = CYRILLIC SMALL LETTER I "n=0x0442", // т = CYRILLIC SMALL LETTER TE "]=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "m=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN ",=0x0431", // б = CYRILLIC SMALL LETTER BE ".=0x044E", // ю = CYRILLIC SMALL LETTER YU "/=0x002E", // . = FULL STOP // Additional characters "D-=0x0402", // Ђ = CYRILLIC CAPITAL LETTER DJE "G'=0x0403", // Ѓ = CYRILLIC CAPITAL LETTER GJE "E>=0x0404", // Є = CYRILLIC CAPITAL LETTER UKRAINIAN IE "Z>=0x0405", // Ѕ = CYRILLIC CAPITAL LETTER DZE "I/ =0x0406", // І = CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I "I:=0x0407", // Ї = CYRILLIC CAPITAL LETTER YI "J<=0x0408", // Ј = CYRILLIC CAPITAL LETTER JE "L>=0x0409", // Љ = CYRILLIC CAPITAL LETTER LJE "N>=0x040A", // Њ = CYRILLIC CAPITAL LETTER NJE "C'=0x040B", // Ћ = CYRILLIC CAPITAL LETTER TSHE "K'=0x040C", // Ќ = CYRILLIC CAPITAL LETTER KJE "U'=0x040E", // Ў = CYRILLIC CAPITAL LETTER SHORT U "D>=0x040F", // Џ = CYRILLIC CAPITAL LETTER DZHE // Same, but lower case: "d-=0x0452", // ђ = CYRILLIC SMALL LETTER DJE "g'=0x0453", // ѓ = CYRILLIC SMALL LETTER GJE "e>=0x0454", // є = CYRILLIC SMALL LETTER UKRAINIAN IE "z>=0x0455", // ѕ = CYRILLIC SMALL LETTER DZE "i/ =0x0456", // і = CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I "i:=0x0457", // ї = CYRILLIC SMALL LETTER YI "j<=0x0458", // ј = CYRILLIC SMALL LETTER JE "l>=0x0459", // љ = CYRILLIC SMALL LETTER LJE "c'=0x045B", // ћ = CYRILLIC SMALL LETTER TSHE "k'=0x045C", // ќ = CYRILLIC SMALL LETTER KJE "u'=0x045E", // ў = CYRILLIC SMALL LETTER SHORT U "d>=0x045F", // џ = CYRILLIC SMALL LETTER DZHE "G`=0x0490", // Ґ = CYRILLIC CAPITAL LETTER GHE WITH UPTURN "g`=0x0491", // ґ = CYRILLIC SMALL LETTER GHE WITH UPTURN "E<=0x0462", // Ѣ = CYRILLIC CAPITAL LETTER YAT "e<=0x0463", // ѣ = CYRILLIC SMALL LETTER YAT "A<=0x046A", // Ѫ = CYRILLIC CAPITAL LETTER BIG YUS "a<=0x046B", // ѫ = CYRILLIC SMALL LETTER BIG YUS "F`=0x0472", // Ѳ = CYRILLIC CAPITAL LETTER FITA "f`=0x0473", // ѳ = CYRILLIC SMALL LETTER FITA "Y`=0x0474", // Ѵ = CYRILLIC CAPITAL LETTER IZHITSA "y`=0x0475", // ѵ = CYRILLIC SMALL LETTER IZHITSA ./mytool/kmap/MiddleKorean.kmap0000644000175000017500000001126307532460064016531 0ustar henrichhenrich// This file has been converted from: // http://jshin.net/i18n/korean/hunmin.html // http://jshin.net/i18n/korean/mid_kor.vim // By Gaspar Sinai gsinai@yudit.org // 2002-05-11. // All text below are origianted from Jungshik Shin's vim kamp file. //------------------------------------------------------------------ // Maintainer: Jungshik Shin jshin@mailaps.org // Last Changed: 2002-05-02 // // Keymap files for Korean Hangul input with U+1100 Hangul Conjoining Jamos // leading consonants are typed in with lower case letters. // trailing consonants are typed in with upper case letters. // r, R : leading ㄹ(Rieul), final ㄹ (Rieul) // l,L : denotes lighter consonants of preceding // labial consonants represented by m/M, b/B, bb/BB. // e.g. ㅸ (labial light) = bl/BL, ㅱ = ml/ML // f : Yeorin Hieuh : ㆆ // q : leading YetIeung ㆁ // z : PanSios ㅿ // ng : map to either trailing Ieung or trailing YetIeung. // For 15th century text, the latter is a better choice // because it was used to denote [ng] at the syllable coda position. // Sometime during the 16th century, it got obsolete and // its place was taken over by Ieung. // x,0,O : leading Ieung (a place holder for a syllable beg. with a vowel) // ) : Leading consonant filler (shift-0) // ( : Medial vowel filler // I have yet to decide what to do with medial vowel filler. "g = 0x1100", "gg = 0x1101", "n = 0x1102", "d = 0x1103", "dd = 0x1104", "r = 0x1105", "m = 0x1106", "b = 0x1107", "bb = 0x1108", "s = 0x1109", "ss = 0x110a", // We need to type intial Ieung too often, but // I'm not sure which one is the best, 0, x, or O. "0x30 = 0x110b", "x = 0x110b", "O = 0x110b", "j = 0x110c", "jj = 0x110d", "c = 0x110e", "k = 0x110f", "t = 0x1110", "p = 0x1111", "h = 0x1112", "lg = 0x1113", // initial 'ng'(U+11C5), but use 'lg' instead to let // 'ng' be used for trailing (Yet) Ieung. "nn = 0x1114", "nd = 0x1115", "nb = 0x1116", "dg = 0x1117", "rn = 0x1118", "rr = 0x1119", "rh = 0x111a", "rl = 0x111b", // l denotes 'light' "mb = 0x111c", "ml = 0x111d", "bg = 0x111e", "bn = 0x111f", "bd = 0x1120", "bs = 0x1121", "bsg = 0x1122", "bsd = 0x1123", "bsb = 0x1124", "bss = 0x1125", "bsj = 0x1126", "bj = 0x1127", "bc = 0x1128", "bt = 0x1129", "bp = 0x112a", "bl = 0x112b", "bbl = 0x112c", "sg = 0x112d", "sn = 0x112e", "sd = 0x112f", "sr = 0x1130", "sm = 0x1131", "sb = 0x1132", "sbg = 0x1133", "sss = 0x1134", "s 0x30 = 0x1135", "sj = 0x1136", "sc = 0x1137", "sk = 0x1138", "st = 0x1139", "sp = 0x113a", "sh = 0x113b", "z = 0x1140", "0x30 g = 0x1141", "0x30 0x30 = 0x1147", "q = 0x114c", // leading consonant YetIeung "hh = 0x1158", "f = 0x1159", // YeoRinHieuh // omit cluster of Ieung + another consonant ") = 0x115f", Leading consonant filler "( = 0x1160", Medial vowel filler // Medial vowels "a = 0x1161", "ae = 0x1162", "ya = 0x1163", "yae = 0x1164", "eo = 0x1165", "e = 0x1166", "yeo = 0x1167", "ye = 0x1168", "o = 0x1169", "wa = 0x116a", "wae = 0x116b", "oe = 0x116c", "yo = 0x116d", "u = 0x116e", "weo = 0x116f", "we = 0x1170", "wi = 0x1171", "yu = 0x1172", "eu = 0x1173", "Eu = 0x1174", "eui = 0x1174", "i = 0x1175", "A = 0x119e", "Ai = 0x11a1", // trailing consonants "G = 0x11a8", "GG = 0x11a9", "GS = 0x11aa", "N = 0x11ab", "NJ = 0x11ac", "NH = 0x11ad", "D = 0x11ae", "R = 0x11af", "RG = 0x11b0", "RM = 0x11b1", "RB = 0x11b2", "RS = 0x11b3", "RT = 0x11b4", "RP = 0x11b5", "RH = 0x11b6", "M = 0x11b7", "B = 0x11b8", "BS = 0x11b9", "S = 0x11ba", "SS = 0x11bb", // see below. "J = 0x11bd", "C = 0x11be", "K = 0x11bf", "T = 0x11c0", "P = 0x11c1", "H = 0x11c2", "GR = 0x11c3", "NG = 0x11c5", "ND = 0x11c6", "NS = 0x11c7", "NZ = 0x11c8", "NT = 0x11c9", "DG = 0x11ca", "DR = 0x11cb", "RN = 0x11cd", "RD = 0x11ce", "RR = 0x11d0", "RZ = 0x11d7", "RK = 0x11d8", "RF = 0x11d9", "MG = 0x11da", "MR = 0x11db", "MB = 0x11dc", "MS = 0x11dd", "MZ = 0x11df", "MC = 0x11e0", "MH = 0x11e1", "ML = 0x11e2", "BR = 0x11e3", "BP = 0x11e4", "BH = 0x11e5", "BL = 0x11e6", "Bl = 0x11e6", "SG = 0x11e7", "SD = 0x11e8", "SR = 0x11e9", "SB = 0x11ea", "Z = 0x11eb", // BanSiOs "XG = 0x11ec", "XGG = 0x11ed", "XX = 0x11ee", "XK = 0x11ef", "QS = 0x11f1", "QZ = 0x11f2", "PB = 0x11f3", "PL = 0x11f4", "HN = 0x11f5", "HR = 0x11f6", "HM = 0x11f7", "HB = 0x11f8", "F = 0x11f9", //YeoRin Hieuh // Sometime during 16th century, YetIeung was replaced by Ieung // for [ng]. "Q = 0x11f0", //trailing Yet Ieung "X = 0x11bc", //trailing Ieung "ng = 0x11bc", //trailing Ieung // Use the following for 15th century text in which Yet Ieung is used // for [ng] //ng = 0x11f0", //Yet Ieung //Q = 0x11bc" //trailing Ieung "0x3b = 0x302e", // Hangul tone mark : semicolon "0x3a = 0x302f", // Hangul tone mark : colon ./mytool/kmap/Oriya.kmap0000644000175000017500000004241007532460064015254 0ustar henrichhenrich// Oriya kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-01-26 // Consonant + vowel/virama ".D=0x0b5c 0x0b4d", ".D.h=0x0b5c 0x0b4d 0x200c", ".DA=0x0b5c 0x0b3e", ".DI=0x0b5c 0x0b40", ".DRRi=0x0b5c 0x0b43", ".DR^i=0x0b5c 0x0b43", ".DU=0x0b5c 0x0b42", ".Da=0x0b5c", ".Daa=0x0b5c 0x0b3e", ".Dai=0x0b5c 0x0b48", ".Dau=0x0b5c 0x0b4c", ".De=0x0b5c 0x0b47", ".Di=0x0b5c 0x0b3f", ".Dii=0x0b5c 0x0b40", ".Do=0x0b5c 0x0b4b", ".Du=0x0b5c 0x0b41", ".Duu=0x0b5c 0x0b42", ".Dh=0x0b5d 0x0b4d", ".Dh.h=0x0b5d 0x0b4d 0x200c", ".DhA=0x0b5d 0x0b3e", ".DhI=0x0b5d 0x0b40", ".DhRRi=0x0b5d 0x0b43", ".DhR^i=0x0b5d 0x0b43", ".DhU=0x0b5d 0x0b42", ".Dha=0x0b5d", ".Dhaa=0x0b5d 0x0b3e", ".Dhai=0x0b5d 0x0b48", ".Dhau=0x0b5d 0x0b4c", ".Dhe=0x0b5d 0x0b47", ".Dhi=0x0b5d 0x0b3f", ".Dhii=0x0b5d 0x0b40", ".Dho=0x0b5d 0x0b4b", ".Dhu=0x0b5d 0x0b41", ".Dhuu=0x0b5d 0x0b42", "Ch=0x0b1b 0x0b4d", "Ch.h=0x0b1b 0x0b4d 0x200c", "ChA=0x0b1b 0x0b3e", "ChI=0x0b1b 0x0b40", "ChRRi=0x0b1b 0x0b43", "ChR^i=0x0b1b 0x0b43", "ChU=0x0b1b 0x0b42", "Cha=0x0b1b", "Chaa=0x0b1b 0x0b3e", "Chai=0x0b1b 0x0b48", "Chau=0x0b1b 0x0b4c", "Che=0x0b1b 0x0b47", "Chi=0x0b1b 0x0b3f", "Chii=0x0b1b 0x0b40", "Cho=0x0b1b 0x0b4b", "Chu=0x0b1b 0x0b41", "Chuu=0x0b1b 0x0b42", "D=0x0b21 0x0b4d", "D.h=0x0b21 0x0b4d 0x200c", "DA=0x0b21 0x0b3e", "DI=0x0b21 0x0b40", "DRRi=0x0b21 0x0b43", "DR^i=0x0b21 0x0b43", "DU=0x0b21 0x0b42", "Da=0x0b21", "Daa=0x0b21 0x0b3e", "Dai=0x0b21 0x0b48", "Dau=0x0b21 0x0b4c", "De=0x0b21 0x0b47", "Di=0x0b21 0x0b3f", "Dii=0x0b21 0x0b40", "Do=0x0b21 0x0b4b", "Du=0x0b21 0x0b41", "Duu=0x0b21 0x0b42", "Dh=0x0b22 0x0b4d", "Dh.h=0x0b22 0x0b4d 0x200c", "DhA=0x0b22 0x0b3e", "DhI=0x0b22 0x0b40", "DhRRi=0x0b22 0x0b43", "DhR^i=0x0b22 0x0b43", "DhU=0x0b22 0x0b42", "Dha=0x0b22", "Dhaa=0x0b22 0x0b3e", "Dhai=0x0b22 0x0b48", "Dhau=0x0b22 0x0b4c", "Dhe=0x0b22 0x0b47", "Dhi=0x0b22 0x0b3f", "Dhii=0x0b22 0x0b40", "Dho=0x0b22 0x0b4b", "Dhu=0x0b22 0x0b41", "Dhuu=0x0b22 0x0b42", "GY=0x0b1c 0x0b4d 0x0b1e 0x0b4d", "GY.h=0x0b1c 0x0b4d 0x0b1e 0x0b4d 0x200c", "GYA=0x0b1c 0x0b4d 0x0b1e 0x0b3e", "GYI=0x0b1c 0x0b4d 0x0b1e 0x0b40", "GYRRi=0x0b1c 0x0b4d 0x0b1e 0x0b43", "GYR^i=0x0b1c 0x0b4d 0x0b1e 0x0b43", "GYU=0x0b1c 0x0b4d 0x0b1e 0x0b42", "GYa=0x0b1c 0x0b4d 0x0b1e", "GYaa=0x0b1c 0x0b4d 0x0b1e 0x0b3e", "GYai=0x0b1c 0x0b4d 0x0b1e 0x0b48", "GYau=0x0b1c 0x0b4d 0x0b1e 0x0b4c", "GYe=0x0b1c 0x0b4d 0x0b1e 0x0b47", "GYi=0x0b1c 0x0b4d 0x0b1e 0x0b3f", "GYii=0x0b1c 0x0b4d 0x0b1e 0x0b40", "GYo=0x0b1c 0x0b4d 0x0b1e 0x0b4b", "GYu=0x0b1c 0x0b4d 0x0b1e 0x0b41", "GYuu=0x0b1c 0x0b4d 0x0b1e 0x0b42", "JN=0x0b1e 0x0b4d", "JN.h=0x0b1e 0x0b4d 0x200c", "JNA=0x0b1e 0x0b3e", "JNI=0x0b1e 0x0b40", "JNRRi=0x0b1e 0x0b43", "JNR^i=0x0b1e 0x0b43", "JNU=0x0b1e 0x0b42", "JNa=0x0b1e", "JNaa=0x0b1e 0x0b3e", "JNai=0x0b1e 0x0b48", "JNau=0x0b1e 0x0b4c", "JNe=0x0b1e 0x0b47", "JNi=0x0b1e 0x0b3f", "JNii=0x0b1e 0x0b40", "JNo=0x0b1e 0x0b4b", "JNu=0x0b1e 0x0b41", "JNuu=0x0b1e 0x0b42", "L=0x0b33 0x0b4d", "L.h=0x0b33 0x0b4d 0x200c", "LA=0x0b33 0x0b3e", "LI=0x0b33 0x0b40", "LRRi=0x0b33 0x0b43", "LR^i=0x0b33 0x0b43", "LU=0x0b33 0x0b42", "La=0x0b33", "Laa=0x0b33 0x0b3e", "Lai=0x0b33 0x0b48", "Lau=0x0b33 0x0b4c", "Le=0x0b33 0x0b47", "Li=0x0b33 0x0b3f", "Lii=0x0b33 0x0b40", "Lo=0x0b33 0x0b4b", "Lu=0x0b33 0x0b41", "Luu=0x0b33 0x0b42", "N=0x0b23 0x0b4d", "N.h=0x0b23 0x0b4d 0x200c", "NA=0x0b23 0x0b3e", "NI=0x0b23 0x0b40", "NRRi=0x0b23 0x0b43", "NR^i=0x0b23 0x0b43", "NU=0x0b23 0x0b42", "Na=0x0b23", "Naa=0x0b23 0x0b3e", "Nai=0x0b23 0x0b48", "Nau=0x0b23 0x0b4c", "Ne=0x0b23 0x0b47", "Ni=0x0b23 0x0b3f", "Nii=0x0b23 0x0b40", "No=0x0b23 0x0b4b", "Nu=0x0b23 0x0b41", "Nuu=0x0b23 0x0b42", "N^=0x0b19 0x0b4d", "N^.h=0x0b19 0x0b4d 0x200c", "N^A=0x0b19 0x0b3e", "N^I=0x0b19 0x0b40", "N^RRi=0x0b19 0x0b43", "N^R^i=0x0b19 0x0b43", "N^U=0x0b19 0x0b42", "N^a=0x0b19", "N^aa=0x0b19 0x0b3e", "N^ai=0x0b19 0x0b48", "N^au=0x0b19 0x0b4c", "N^e=0x0b19 0x0b47", "N^i=0x0b19 0x0b3f", "N^ii=0x0b19 0x0b40", "N^o=0x0b19 0x0b4b", "N^u=0x0b19 0x0b41", "N^uu=0x0b19 0x0b42", "Sh=0x0b37 0x0b4d", "Sh.h=0x0b37 0x0b4d 0x200c", "ShA=0x0b37 0x0b3e", "ShI=0x0b37 0x0b40", "ShRRi=0x0b37 0x0b43", "ShR^i=0x0b37 0x0b43", "ShU=0x0b37 0x0b42", "Sha=0x0b37", "Shaa=0x0b37 0x0b3e", "Shai=0x0b37 0x0b48", "Shau=0x0b37 0x0b4c", "She=0x0b37 0x0b47", "Shi=0x0b37 0x0b3f", "Shii=0x0b37 0x0b40", "Sho=0x0b37 0x0b4b", "Shu=0x0b37 0x0b41", "Shuu=0x0b37 0x0b42", "T=0x0b1f 0x0b4d", "T.h=0x0b1f 0x0b4d 0x200c", "TA=0x0b1f 0x0b3e", "TI=0x0b1f 0x0b40", "TRRi=0x0b1f 0x0b43", "TR^i=0x0b1f 0x0b43", "TU=0x0b1f 0x0b42", "Ta=0x0b1f", "Taa=0x0b1f 0x0b3e", "Tai=0x0b1f 0x0b48", "Tau=0x0b1f 0x0b4c", "Te=0x0b1f 0x0b47", "Ti=0x0b1f 0x0b3f", "Tii=0x0b1f 0x0b40", "To=0x0b1f 0x0b4b", "Tu=0x0b1f 0x0b41", "Tuu=0x0b1f 0x0b42", "Th=0x0b20 0x0b4d", "Th.h=0x0b20 0x0b4d 0x200c", "ThA=0x0b20 0x0b3e", "ThI=0x0b20 0x0b40", "ThRRi=0x0b20 0x0b43", "ThR^i=0x0b20 0x0b43", "ThU=0x0b20 0x0b42", "Tha=0x0b20", "Thaa=0x0b20 0x0b3e", "Thai=0x0b20 0x0b48", "Thau=0x0b20 0x0b4c", "The=0x0b20 0x0b47", "Thi=0x0b20 0x0b3f", "Thii=0x0b20 0x0b40", "Tho=0x0b20 0x0b4b", "Thu=0x0b20 0x0b41", "Thuu=0x0b20 0x0b42", "Y=0x0b5f 0x0b4d", "Y.h=0x0b5f 0x0b4d 0x200c", "YA=0x0b5f 0x0b3e", "YI=0x0b5f 0x0b40", "YRRi=0x0b5f 0x0b43", "YR^i=0x0b5f 0x0b43", "YU=0x0b5f 0x0b42", "Ya=0x0b5f", "Yaa=0x0b5f 0x0b3e", "Yai=0x0b5f 0x0b48", "Yau=0x0b5f 0x0b4c", "Ye=0x0b5f 0x0b47", "Yi=0x0b5f 0x0b3f", "Yii=0x0b5f 0x0b40", "Yo=0x0b5f 0x0b4b", "Yu=0x0b5f 0x0b41", "Yuu=0x0b5f 0x0b42", "b=0x0b2c 0x0b4d", "b.h=0x0b2c 0x0b4d 0x200c", "bA=0x0b2c 0x0b3e", "bI=0x0b2c 0x0b40", "bRRi=0x0b2c 0x0b43", "bR^i=0x0b2c 0x0b43", "bU=0x0b2c 0x0b42", "ba=0x0b2c", "baa=0x0b2c 0x0b3e", "bai=0x0b2c 0x0b48", "bau=0x0b2c 0x0b4c", "be=0x0b2c 0x0b47", "bi=0x0b2c 0x0b3f", "bii=0x0b2c 0x0b40", "bo=0x0b2c 0x0b4b", "bu=0x0b2c 0x0b41", "buu=0x0b2c 0x0b42", "bh=0x0b2d 0x0b4d", "bh.h=0x0b2d 0x0b4d 0x200c", "bhA=0x0b2d 0x0b3e", "bhI=0x0b2d 0x0b40", "bhRRi=0x0b2d 0x0b43", "bhR^i=0x0b2d 0x0b43", "bhU=0x0b2d 0x0b42", "bha=0x0b2d", "bhaa=0x0b2d 0x0b3e", "bhai=0x0b2d 0x0b48", "bhau=0x0b2d 0x0b4c", "bhe=0x0b2d 0x0b47", "bhi=0x0b2d 0x0b3f", "bhii=0x0b2d 0x0b40", "bho=0x0b2d 0x0b4b", "bhu=0x0b2d 0x0b41", "bhuu=0x0b2d 0x0b42", "c=0x0b1a 0x0b4d", "c.h=0x0b1a 0x0b4d 0x200c", "cA=0x0b1a 0x0b3e", "cI=0x0b1a 0x0b40", "cRRi=0x0b1a 0x0b43", "cR^i=0x0b1a 0x0b43", "cU=0x0b1a 0x0b42", "ca=0x0b1a", "caa=0x0b1a 0x0b3e", "cai=0x0b1a 0x0b48", "cau=0x0b1a 0x0b4c", "ce=0x0b1a 0x0b47", "ci=0x0b1a 0x0b3f", "cii=0x0b1a 0x0b40", "co=0x0b1a 0x0b4b", "cu=0x0b1a 0x0b41", "cuu=0x0b1a 0x0b42", "ch=0x0b1a 0x0b4d", "ch.h=0x0b1a 0x0b4d 0x200c", "chA=0x0b1a 0x0b3e", "chI=0x0b1a 0x0b40", "chRRi=0x0b1a 0x0b43", "chR^i=0x0b1a 0x0b43", "chU=0x0b1a 0x0b42", "cha=0x0b1a", "chaa=0x0b1a 0x0b3e", "chai=0x0b1a 0x0b48", "chau=0x0b1a 0x0b4c", "che=0x0b1a 0x0b47", "chi=0x0b1a 0x0b3f", "chii=0x0b1a 0x0b40", "cho=0x0b1a 0x0b4b", "chu=0x0b1a 0x0b41", "chuu=0x0b1a 0x0b42", "chh=0x0b1b 0x0b4d", "chh.h=0x0b1b 0x0b4d 0x200c", "chhA=0x0b1b 0x0b3e", "chhI=0x0b1b 0x0b40", "chhRRi=0x0b1b 0x0b43", "chhR^i=0x0b1b 0x0b43", "chhU=0x0b1b 0x0b42", "chha=0x0b1b", "chhaa=0x0b1b 0x0b3e", "chhai=0x0b1b 0x0b48", "chhau=0x0b1b 0x0b4c", "chhe=0x0b1b 0x0b47", "chhi=0x0b1b 0x0b3f", "chhii=0x0b1b 0x0b40", "chho=0x0b1b 0x0b4b", "chhu=0x0b1b 0x0b41", "chhuu=0x0b1b 0x0b42", "d=0x0b26 0x0b4d", "d.h=0x0b26 0x0b4d 0x200c", "dA=0x0b26 0x0b3e", "dI=0x0b26 0x0b40", "dRRi=0x0b26 0x0b43", "dR^i=0x0b26 0x0b43", "dU=0x0b26 0x0b42", "da=0x0b26", "daa=0x0b26 0x0b3e", "dai=0x0b26 0x0b48", "dau=0x0b26 0x0b4c", "de=0x0b26 0x0b47", "di=0x0b26 0x0b3f", "dii=0x0b26 0x0b40", "do=0x0b26 0x0b4b", "du=0x0b26 0x0b41", "duu=0x0b26 0x0b42", "dh=0x0b27 0x0b4d", "dh.h=0x0b27 0x0b4d 0x200c", "dhA=0x0b27 0x0b3e", "dhI=0x0b27 0x0b40", "dhRRi=0x0b27 0x0b43", "dhR^i=0x0b27 0x0b43", "dhU=0x0b27 0x0b42", "dha=0x0b27", "dhaa=0x0b27 0x0b3e", "dhai=0x0b27 0x0b48", "dhau=0x0b27 0x0b4c", "dhe=0x0b27 0x0b47", "dhi=0x0b27 0x0b3f", "dhii=0x0b27 0x0b40", "dho=0x0b27 0x0b4b", "dhu=0x0b27 0x0b41", "dhuu=0x0b27 0x0b42", "dny=0x0b1c 0x0b4d 0x0b1e 0x0b4d", "dny.h=0x0b1c 0x0b4d 0x0b1e 0x0b4d 0x200c", "dnyA=0x0b1c 0x0b4d 0x0b1e 0x0b3e", "dnyI=0x0b1c 0x0b4d 0x0b1e 0x0b40", "dnyRRi=0x0b1c 0x0b4d 0x0b1e 0x0b43", "dnyR^i=0x0b1c 0x0b4d 0x0b1e 0x0b43", "dnyU=0x0b1c 0x0b4d 0x0b1e 0x0b42", "dnya=0x0b1c 0x0b4d 0x0b1e", "dnyaa=0x0b1c 0x0b4d 0x0b1e 0x0b3e", "dnyai=0x0b1c 0x0b4d 0x0b1e 0x0b48", "dnyau=0x0b1c 0x0b4d 0x0b1e 0x0b4c", "dnye=0x0b1c 0x0b4d 0x0b1e 0x0b47", "dnyi=0x0b1c 0x0b4d 0x0b1e 0x0b3f", "dnyii=0x0b1c 0x0b4d 0x0b1e 0x0b40", "dnyo=0x0b1c 0x0b4d 0x0b1e 0x0b4b", "dnyu=0x0b1c 0x0b4d 0x0b1e 0x0b41", "dnyuu=0x0b1c 0x0b4d 0x0b1e 0x0b42", "g=0x0b17 0x0b4d", "g.h=0x0b17 0x0b4d 0x200c", "gA=0x0b17 0x0b3e", "gI=0x0b17 0x0b40", "gRRi=0x0b17 0x0b43", "gR^i=0x0b17 0x0b43", "gU=0x0b17 0x0b42", "ga=0x0b17", "gaa=0x0b17 0x0b3e", "gai=0x0b17 0x0b48", "gau=0x0b17 0x0b4c", "ge=0x0b17 0x0b47", "gi=0x0b17 0x0b3f", "gii=0x0b17 0x0b40", "go=0x0b17 0x0b4b", "gu=0x0b17 0x0b41", "guu=0x0b17 0x0b42", "gh=0x0b18 0x0b4d", "gh.h=0x0b18 0x0b4d 0x200c", "ghA=0x0b18 0x0b3e", "ghI=0x0b18 0x0b40", "ghRRi=0x0b18 0x0b43", "ghR^i=0x0b18 0x0b43", "ghU=0x0b18 0x0b42", "gha=0x0b18", "ghaa=0x0b18 0x0b3e", "ghai=0x0b18 0x0b48", "ghau=0x0b18 0x0b4c", "ghe=0x0b18 0x0b47", "ghi=0x0b18 0x0b3f", "ghii=0x0b18 0x0b40", "gho=0x0b18 0x0b4b", "ghu=0x0b18 0x0b41", "ghuu=0x0b18 0x0b42", "h=0x0b39 0x0b4d", "h.h=0x0b39 0x0b4d 0x200c", "hA=0x0b39 0x0b3e", "hI=0x0b39 0x0b40", "hRRi=0x0b39 0x0b43", "hR^i=0x0b39 0x0b43", "hU=0x0b39 0x0b42", "ha=0x0b39", "haa=0x0b39 0x0b3e", "hai=0x0b39 0x0b48", "hau=0x0b39 0x0b4c", "he=0x0b39 0x0b47", "hi=0x0b39 0x0b3f", "hii=0x0b39 0x0b40", "ho=0x0b39 0x0b4b", "hu=0x0b39 0x0b41", "huu=0x0b39 0x0b42", "j=0x0b1c 0x0b4d", "j.h=0x0b1c 0x0b4d 0x200c", "jA=0x0b1c 0x0b3e", "jI=0x0b1c 0x0b40", "jRRi=0x0b1c 0x0b43", "jR^i=0x0b1c 0x0b43", "jU=0x0b1c 0x0b42", "ja=0x0b1c", "jaa=0x0b1c 0x0b3e", "jai=0x0b1c 0x0b48", "jau=0x0b1c 0x0b4c", "je=0x0b1c 0x0b47", "ji=0x0b1c 0x0b3f", "jii=0x0b1c 0x0b40", "jo=0x0b1c 0x0b4b", "ju=0x0b1c 0x0b41", "juu=0x0b1c 0x0b42", "jh=0x0b1d 0x0b4d", "jh.h=0x0b1d 0x0b4d 0x200c", "jhA=0x0b1d 0x0b3e", "jhI=0x0b1d 0x0b40", "jhRRi=0x0b1d 0x0b43", "jhR^i=0x0b1d 0x0b43", "jhU=0x0b1d 0x0b42", "jha=0x0b1d", "jhaa=0x0b1d 0x0b3e", "jhai=0x0b1d 0x0b48", "jhau=0x0b1d 0x0b4c", "jhe=0x0b1d 0x0b47", "jhi=0x0b1d 0x0b3f", "jhii=0x0b1d 0x0b40", "jho=0x0b1d 0x0b4b", "jhu=0x0b1d 0x0b41", "jhuu=0x0b1d 0x0b42", "k=0x0b15 0x0b4d", "k.h=0x0b15 0x0b4d 0x200c", "kA=0x0b15 0x0b3e", "kI=0x0b15 0x0b40", "kRRi=0x0b15 0x0b43", "kR^i=0x0b15 0x0b43", "kU=0x0b15 0x0b42", "ka=0x0b15", "kaa=0x0b15 0x0b3e", "kai=0x0b15 0x0b48", "kau=0x0b15 0x0b4c", "ke=0x0b15 0x0b47", "ki=0x0b15 0x0b3f", "kii=0x0b15 0x0b40", "ko=0x0b15 0x0b4b", "ku=0x0b15 0x0b41", "kuu=0x0b15 0x0b42", "kh=0x0b16 0x0b4d", "kh.h=0x0b16 0x0b4d 0x200c", "khA=0x0b16 0x0b3e", "khI=0x0b16 0x0b40", "khRRi=0x0b16 0x0b43", "khR^i=0x0b16 0x0b43", "khU=0x0b16 0x0b42", "kha=0x0b16", "khaa=0x0b16 0x0b3e", "khai=0x0b16 0x0b48", "khau=0x0b16 0x0b4c", "khe=0x0b16 0x0b47", "khi=0x0b16 0x0b3f", "khii=0x0b16 0x0b40", "kho=0x0b16 0x0b4b", "khu=0x0b16 0x0b41", "khuu=0x0b16 0x0b42", "l=0x0b32 0x0b4d", "l.h=0x0b32 0x0b4d 0x200c", "lA=0x0b32 0x0b3e", "lI=0x0b32 0x0b40", "lRRi=0x0b32 0x0b43", "lR^i=0x0b32 0x0b43", "lU=0x0b32 0x0b42", "la=0x0b32", "laa=0x0b32 0x0b3e", "lai=0x0b32 0x0b48", "lau=0x0b32 0x0b4c", "le=0x0b32 0x0b47", "li=0x0b32 0x0b3f", "lii=0x0b32 0x0b40", "lo=0x0b32 0x0b4b", "lu=0x0b32 0x0b41", "luu=0x0b32 0x0b42", "ld=0x0b33 0x0b4d", "ld.h=0x0b33 0x0b4d 0x200c", "ldA=0x0b33 0x0b3e", "ldI=0x0b33 0x0b40", "ldRRi=0x0b33 0x0b43", "ldR^i=0x0b33 0x0b43", "ldU=0x0b33 0x0b42", "lda=0x0b33", "ldaa=0x0b33 0x0b3e", "ldai=0x0b33 0x0b48", "ldau=0x0b33 0x0b4c", "lde=0x0b33 0x0b47", "ldi=0x0b33 0x0b3f", "ldii=0x0b33 0x0b40", "ldo=0x0b33 0x0b4b", "ldu=0x0b33 0x0b41", "lduu=0x0b33 0x0b42", "m=0x0b2e 0x0b4d", "m.h=0x0b2e 0x0b4d 0x200c", "mA=0x0b2e 0x0b3e", "mI=0x0b2e 0x0b40", "mRRi=0x0b2e 0x0b43", "mR^i=0x0b2e 0x0b43", "mU=0x0b2e 0x0b42", "ma=0x0b2e", "maa=0x0b2e 0x0b3e", "mai=0x0b2e 0x0b48", "mau=0x0b2e 0x0b4c", "me=0x0b2e 0x0b47", "mi=0x0b2e 0x0b3f", "mii=0x0b2e 0x0b40", "mo=0x0b2e 0x0b4b", "mu=0x0b2e 0x0b41", "muu=0x0b2e 0x0b42", "n=0x0b28 0x0b4d", "n.h=0x0b28 0x0b4d 0x200c", "nA=0x0b28 0x0b3e", "nI=0x0b28 0x0b40", "nRRi=0x0b28 0x0b43", "nR^i=0x0b28 0x0b43", "nU=0x0b28 0x0b42", "na=0x0b28", "naa=0x0b28 0x0b3e", "nai=0x0b28 0x0b48", "nau=0x0b28 0x0b4c", "ne=0x0b28 0x0b47", "ni=0x0b28 0x0b3f", "nii=0x0b28 0x0b40", "no=0x0b28 0x0b4b", "nu=0x0b28 0x0b41", "nuu=0x0b28 0x0b42", "p=0x0b2a 0x0b4d", "p.h=0x0b2a 0x0b4d 0x200c", "pA=0x0b2a 0x0b3e", "pI=0x0b2a 0x0b40", "pRRi=0x0b2a 0x0b43", "pR^i=0x0b2a 0x0b43", "pU=0x0b2a 0x0b42", "pa=0x0b2a", "paa=0x0b2a 0x0b3e", "pai=0x0b2a 0x0b48", "pau=0x0b2a 0x0b4c", "pe=0x0b2a 0x0b47", "pi=0x0b2a 0x0b3f", "pii=0x0b2a 0x0b40", "po=0x0b2a 0x0b4b", "pu=0x0b2a 0x0b41", "puu=0x0b2a 0x0b42", "ph=0x0b2b 0x0b4d", "ph.h=0x0b2b 0x0b4d 0x200c", "phA=0x0b2b 0x0b3e", "phI=0x0b2b 0x0b40", "phRRi=0x0b2b 0x0b43", "phR^i=0x0b2b 0x0b43", "phU=0x0b2b 0x0b42", "pha=0x0b2b", "phaa=0x0b2b 0x0b3e", "phai=0x0b2b 0x0b48", "phau=0x0b2b 0x0b4c", "phe=0x0b2b 0x0b47", "phi=0x0b2b 0x0b3f", "phii=0x0b2b 0x0b40", "pho=0x0b2b 0x0b4b", "phu=0x0b2b 0x0b41", "phuu=0x0b2b 0x0b42", "r=0x0b30 0x0b4d", "r.h=0x0b30 0x0b4d 0x200c", "rA=0x0b30 0x0b3e", "rI=0x0b30 0x0b40", "rRRi=0x0b30 0x0b43", "rR^i=0x0b30 0x0b43", "rU=0x0b30 0x0b42", "ra=0x0b30", "raa=0x0b30 0x0b3e", "rai=0x0b30 0x0b48", "rau=0x0b30 0x0b4c", "re=0x0b30 0x0b47", "ri=0x0b30 0x0b3f", "rii=0x0b30 0x0b40", "ro=0x0b30 0x0b4b", "ru=0x0b30 0x0b41", "ruu=0x0b30 0x0b42", "s=0x0b38 0x0b4d", "s.h=0x0b38 0x0b4d 0x200c", "sA=0x0b38 0x0b3e", "sI=0x0b38 0x0b40", "sRRi=0x0b38 0x0b43", "sR^i=0x0b38 0x0b43", "sU=0x0b38 0x0b42", "sa=0x0b38", "saa=0x0b38 0x0b3e", "sai=0x0b38 0x0b48", "sau=0x0b38 0x0b4c", "se=0x0b38 0x0b47", "si=0x0b38 0x0b3f", "sii=0x0b38 0x0b40", "so=0x0b38 0x0b4b", "su=0x0b38 0x0b41", "suu=0x0b38 0x0b42", "sh=0x0b36 0x0b4d", "sh.h=0x0b36 0x0b4d 0x200c", "shA=0x0b36 0x0b3e", "shI=0x0b36 0x0b40", "shRRi=0x0b36 0x0b43", "shR^i=0x0b36 0x0b43", "shU=0x0b36 0x0b42", "sha=0x0b36", "shaa=0x0b36 0x0b3e", "shai=0x0b36 0x0b48", "shau=0x0b36 0x0b4c", "she=0x0b36 0x0b47", "shi=0x0b36 0x0b3f", "shii=0x0b36 0x0b40", "sho=0x0b36 0x0b4b", "shu=0x0b36 0x0b41", "shuu=0x0b36 0x0b42", "shh=0x0b37 0x0b4d", "shh.h=0x0b37 0x0b4d 0x200c", "shhA=0x0b37 0x0b3e", "shhI=0x0b37 0x0b40", "shhRRi=0x0b37 0x0b43", "shhR^i=0x0b37 0x0b43", "shhU=0x0b37 0x0b42", "shha=0x0b37", "shhaa=0x0b37 0x0b3e", "shhai=0x0b37 0x0b48", "shhau=0x0b37 0x0b4c", "shhe=0x0b37 0x0b47", "shhi=0x0b37 0x0b3f", "shhii=0x0b37 0x0b40", "shho=0x0b37 0x0b4b", "shhu=0x0b37 0x0b41", "shhuu=0x0b37 0x0b42", "t=0x0b24 0x0b4d", "t.h=0x0b24 0x0b4d 0x200c", "tA=0x0b24 0x0b3e", "tI=0x0b24 0x0b40", "tRRi=0x0b24 0x0b43", "tR^i=0x0b24 0x0b43", "tU=0x0b24 0x0b42", "ta=0x0b24", "taa=0x0b24 0x0b3e", "tai=0x0b24 0x0b48", "tau=0x0b24 0x0b4c", "te=0x0b24 0x0b47", "ti=0x0b24 0x0b3f", "tii=0x0b24 0x0b40", "to=0x0b24 0x0b4b", "tu=0x0b24 0x0b41", "tuu=0x0b24 0x0b42", "th=0x0b25 0x0b4d", "th.h=0x0b25 0x0b4d 0x200c", "thA=0x0b25 0x0b3e", "thI=0x0b25 0x0b40", "thRRi=0x0b25 0x0b43", "thR^i=0x0b25 0x0b43", "thU=0x0b25 0x0b42", "tha=0x0b25", "thaa=0x0b25 0x0b3e", "thai=0x0b25 0x0b48", "thau=0x0b25 0x0b4c", "the=0x0b25 0x0b47", "thi=0x0b25 0x0b3f", "thii=0x0b25 0x0b40", "tho=0x0b25 0x0b4b", "thu=0x0b25 0x0b41", "thuu=0x0b25 0x0b42", "x=0x0b15 0x0b4d 0x0b37 0x0b4d", "x.h=0x0b15 0x0b4d 0x0b37 0x0b4d 0x200c", "xA=0x0b15 0x0b4d 0x0b37 0x0b3e", "xI=0x0b15 0x0b4d 0x0b37 0x0b40", "xRRi=0x0b15 0x0b4d 0x0b37 0x0b43", "xR^i=0x0b15 0x0b4d 0x0b37 0x0b43", "xU=0x0b15 0x0b4d 0x0b37 0x0b42", "xa=0x0b15 0x0b4d 0x0b37", "xaa=0x0b15 0x0b4d 0x0b37 0x0b3e", "xai=0x0b15 0x0b4d 0x0b37 0x0b48", "xau=0x0b15 0x0b4d 0x0b37 0x0b4c", "xe=0x0b15 0x0b4d 0x0b37 0x0b47", "xi=0x0b15 0x0b4d 0x0b37 0x0b3f", "xii=0x0b15 0x0b4d 0x0b37 0x0b40", "xo=0x0b15 0x0b4d 0x0b37 0x0b4b", "xu=0x0b15 0x0b4d 0x0b37 0x0b41", "xuu=0x0b15 0x0b4d 0x0b37 0x0b42", "y=0x0b2f 0x0b4d", "y.h=0x0b2f 0x0b4d 0x200c", "yA=0x0b2f 0x0b3e", "yI=0x0b2f 0x0b40", "yRRi=0x0b2f 0x0b43", "yR^i=0x0b2f 0x0b43", "yU=0x0b2f 0x0b42", "ya=0x0b2f", "yaa=0x0b2f 0x0b3e", "yai=0x0b2f 0x0b48", "yau=0x0b2f 0x0b4c", "ye=0x0b2f 0x0b47", "yi=0x0b2f 0x0b3f", "yii=0x0b2f 0x0b40", "yo=0x0b2f 0x0b4b", "yu=0x0b2f 0x0b41", "yuu=0x0b2f 0x0b42", "~N=0x0b19 0x0b4d", "~N.h=0x0b19 0x0b4d 0x200c", "~NA=0x0b19 0x0b3e", "~NI=0x0b19 0x0b40", "~NRRi=0x0b19 0x0b43", "~NR^i=0x0b19 0x0b43", "~NU=0x0b19 0x0b42", "~Na=0x0b19", "~Naa=0x0b19 0x0b3e", "~Nai=0x0b19 0x0b48", "~Nau=0x0b19 0x0b4c", "~Ne=0x0b19 0x0b47", "~Ni=0x0b19 0x0b3f", "~Nii=0x0b19 0x0b40", "~No=0x0b19 0x0b4b", "~Nu=0x0b19 0x0b41", "~Nuu=0x0b19 0x0b42", "~n=0x0b1e 0x0b4d", "~n.h=0x0b1e 0x0b4d 0x200c", "~nA=0x0b1e 0x0b3e", "~nI=0x0b1e 0x0b40", "~nRRi=0x0b1e 0x0b43", "~nR^i=0x0b1e 0x0b43", "~nU=0x0b1e 0x0b42", "~na=0x0b1e", "~naa=0x0b1e 0x0b3e", "~nai=0x0b1e 0x0b48", "~nau=0x0b1e 0x0b4c", "~ne=0x0b1e 0x0b47", "~ni=0x0b1e 0x0b3f", "~nii=0x0b1e 0x0b40", "~no=0x0b1e 0x0b4b", "~nu=0x0b1e 0x0b41", "~nuu=0x0b1e 0x0b42", // Independent vowels "a=0x0b05", "A=0x0b06", "aa=0x0b06", "i=0x0b07", "I=0x0b08", "ii=0x0b08", "u=0x0b09", "U=0x0b0a", "uu=0x0b0a", "R^i=0x0b0b", "RRi=0x0b0b", "L^i=0x0b0c", "LLi=0x0b0c", "e=0x0b0f", "ai=0x0b10", "o=0x0b13", "au=0x0b14", "R^I=0x0b60", "RRI=0x0b60", "L^I=0x0b61", "LLI=0x0b61", // Numbers "0x30=0x0b66", "0x31=0x0b67", "0x32=0x0b68", "0x33=0x0b69", "0x34=0x0b6a", "0x35=0x0b6b", "0x36=0x0b6c", "0x37=0x0b6d", "0x38=0x0b6e", "0x39=0x0b6f", // Other marks ".N=0x0b01", ".n=0x0b02", "M=0x0b02", "H=0x0b03", ".a=0x0b3d", ".h=0x0b4d 0x200c", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Spanish.kmap0000644000175000017500000000337507532460064015605 0ustar henrichhenrich// $Id: Spanish.kmap,v 1.3 2001/11/11 18:26:53 jr Exp jr $ // Mapa de teclado para el español // Escrito por Juan Rafael Fernández García // Shamelessly based on Czyborra's work (all © Roman Czyborra@cs.tu-berlin.de) "A' = 0xc1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "E' = 0xc9", // É = LATIN CAPITAL LETTER E WITH ACUTE "I' = 0xcd", // Í = LATIN CAPITAL LETTER I WITH ACUTE "O' = 0xd3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "U' = 0xda", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "a' = 0xe1", // á = LATIN SMALL LETTER A WITH ACUTE "e' = 0xe9", // é = LATIN SMALL LETTER E WITH ACUTE "i' = 0xed", // í = LATIN SMALL LETTER I WITH ACUTE "o' = 0xf3", // ó = LATIN SMALL LETTER O WITH ACUTE "u' = 0xfa", // ú = LATIN SMALL LETTER U WITH ACUTE "U: = 0xdc", // Ü = LATIN CAPITAL LETTER U WITH DIAERESIS "u: = 0xfc", // ü = LATIN SMALL LETTER U WITH DIAERESIS "N~=0x00D1", // Ñ = LATIN CAPITAL LETTER N WITH TILDE "n~=0x00F1", // ñ = LATIN SMALL LETTER N WITH TILDE "c;=0x00E7", // ç = LATIN SMALL LETTER C WITH CEDILLA "C;=0x00C7", // Ç = LATIN CAPITAL LETTER C WITH CEDILLA "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "C)=0x00A9", // © = COPYRIGHT SIGN "E-=0x20AC", // € = EURO SIGN "Ct=0x00A2", // ¢ = CENT SIGN "L-=0x00A3", // £ = POUND SIGN "Y-=0x00A5", // = YEN SIGN "-: = 0xf7", // ÷ = DIVISION SIGN "S$=0x00A7", // § = SECTION SIGN ".!=0x00A1", // ¡ = INVERTED EXCLAMATION MARK ".?=0x00BF", // ¿ = INVERTED QUESTION MARK "a_=0x00AA", // ª = FEMININE ORDINAL INDICATOR "o_=0x00BA", // º = MASCULINE ORDINAL INDICATOR ./mytool/kmap/Bulgarian-Translit.kmap0000644000175000017500000000340510650012136017660 0ustar henrichhenrich// // Bulgarian-Translit.kmap for Yudit // Alex Izvorski // 2007-07-14 // // notes: this is how i would normally transliterate bulgarian in english. // most assignments are obvious. // you just have to remember that q=hard sign (looks the same, just flipped upside down) and j=short-i, and a number of other letters like jq ju ja fall naturally into place from that. // the complex consonants zh ch sh sht ts should be obvious. // w is a redundant v (not in english, but this might help german speakers for example), and y is a redundant i (so you can happily use either at the end of words). c is a redundant ts, which is actually not a great assignment in english because often c=k. x is unused. // a very few words would be problematic to enter, e.g vqzhod as "vqz hod", similarly razhod, razhodka, proizhod, otstrani, etc. // "A=0x0410", "B=0x0411", "V=0x0412", "W=0x0412", // alternate V "G=0x0413", "D=0x0414", "E=0x0415", "ZH=0x0416", // ZH "Z=0x0417", "I=0x0418", "Y=0x0418", // alternate I "J=0x0419", "K=0x041A", "L=0x041B", "M=0x041C", "N=0x041D", "O=0x041E", "P=0x041F", "R=0x0420", "S=0x0421", "T=0x0422", "U=0x0423", "F=0x0424", "H=0x0425", "TS=0x0426", // TS "C=0x0426", // alternate TS "CH=0x0427", // CH "SH=0x0428", // SH "SHT=0x0429", // SHT "Q=0x042A", // Q HARD SIGN "JQ=0x042C", // JQ SOFT SIGN "JU=0x042E", // JU "JA=0x042F", // JA "a=0x0430", "b=0x0431", "v=0x0432", "w=0x0432", "g=0x0433", "d=0x0434", "e=0x0435", "zh=0x0436", "z=0x0437", "i=0x0438", "y=0x0438", "j=0x0439", "k=0x043A", "l=0x043B", "m=0x043C", "n=0x043D", "o=0x043E", "p=0x043F", "r=0x0440", "s=0x0441", "t=0x0442", "u=0x0443", "f=0x0444", "h=0x0445", "ts=0x0446", "c=0x0446", "ch=0x0447", "sh=0x0448", "sht=0x0449", "q=0x044A", "jq=0x044C", "ju=0x044E", "ja=0x044F", ./mytool/kmap/Hanunoo.kmap0000644000175000017500000000250207677226674015617 0ustar henrichhenrich// // Hanunoo keymap // // Bill Poser // 2003/06/06 // // Version 1.0 // // This keymap maps sequences of keystrokes onto the Unicode codes for // the Hanunoo alphabet. // "a= 0x1720", "i= 0x1721", "u= 0x1722", "ka=0x1723", "ki=0x1723 0x1732", "ku=0x1723 0x1733", "k=0x1723 0x1734", "ga=0x1724", "gi=0x1724 0x1732", "gu=0x1724 0x1733", "g=0x1724 0x1734", "nga=0x1725", "ngi=0x1725 0x1732", "ngu=0x1725 0x1733", "ng=0x1725 0x1734", "ta=0x1726", "ti=0x1726 0x1732", "tu=0x1726 0x1733", "t=0x1726 0x1734", "da=0x1727", "di=0x1727 0x1732", "du=0x1727 0x1733", "d=0x1727 0x1734", "na=0x1728", "ni=0x1728 0x1732", "nu=0x1728 0x1733", "n=0x1728 0x1734", "pa=0x1729", "pi=0x1729 0x1732", "pu=0x1729 0x1733", "p=0x1729 0x1734", "ba=0x172A", "bi=0x172A 0x1732", "bu=0x172A 0x1733", "b=0x172A 0x1734", "ma=0x172B", "mi=0x172B 0x1732", "mu=0x172B 0x1733", "m=0x172B 0x1734", "ya=0x172C", "yi=0x172C 0x1732", "yu=0x172C 0x1733", "y=0x172C 0x1734", "ra=0x172D", "ri=0x172D 0x1732", "ru=0x172D 0x1733", "r=0x172D 0x1734", "la=0x172E", "li=0x172E 0x1732", "lu=0x172E 0x1733", "l=0x172E 0x1734", "wa=0x172F", "wi=0x172F 0x1732", "wu=0x172F 0x1733", "w=0x172F 0x1734", "sa=0x1730", "si=0x1730 0x1732", "su=0x1730 0x1733", "s=0x1730 0x1734", "ha=0x1731", "hi=0x1731 0x1732", "hu=0x1731 0x1733", "h=0x1731 0x1734", ".=0x1735", ".v=0x1736" ./mytool/kmap/Hungarian-prefix.kmap0000644000175000017500000000143007532460064017375 0ustar henrichhenrich// Accents for ISO-8859-2 Hungarian // uses = as dead key for ACUTE // and + as dead key for DIARESIS // and " as dead key for DOUBLE ACUTE // // I find this easier to use // Radovan Garabík "0x3D 0x3D=0x003D", // EQUALS SIGN "++=0x002B", // PLUS SIGN "0x3D +=0x002B", // PLUS SIGN "0x3D +=0x003D", // EQUALS SIGN "+0x3D=0x003D", // EQUALS SIGN "\"\"=0x0022", // QUOTATION MARK "\"'=0x0022", // QUOTATION MARK "0x3D A = 0xc1", "+A = 0xc4", "0x3D E = 0xc9", "0x3D I = 0xcd", "0x3D O = 0xd3", "\"O = 0x0150", "+O = 0xd6", "0x3D U = 0xda", "\"U = 0x0170", "+U = 0xdc", "0x3D a = 0xe1", "+a = 0xe4", "0x3D e = 0xe9", "0x3D i = 0xed", "0x3D o = 0xf3", "\"o = 0x0151", "+o = 0xf6", "0x3D u = 0xfa", "\"u = 0x0171", "+u = 0xfc", ",, = 0x201e", "'' = 0x201d", ./mytool/kmap/GreekAncient.kmap0000644000175000017500000004565510103416036016532 0ustar henrichhenrich// GreekAncient.kmap, by Yves Codet (June 2004, after Unicode 4.0.1) // Please send comments to: ycodet@club-internet.fr // LETTERS "A=0x0391", // GREEK CAPITAL LETTER ALPHA "B=0x0392", // GREEK CAPITAL LETTER BETA "G=0x0393", // GREEK CAPITAL LETTER GAMMA "D=0x0394", // GREEK CAPITAL LETTER DELTA "E=0x0395", // GREEK CAPITAL LETTER EPSILON "Z=0x0396", // GREEK CAPITAL LETTER ZETA "H=0x0397", // GREEK CAPITAL LETTER ETA "J=0x0398", // GREEK CAPITAL LETTER THETA "I=0x0399", // GREEK CAPITAL LETTER IOTA "K=0x039A", // GREEK CAPITAL LETTER KAPPA "L=0x039B", // GREEK CAPITAL LETTER LAMDA "M=0x039C", // GREEK CAPITAL LETTER MU "N=0x039D", // GREEK CAPITAL LETTER NU "X=0x039E", // GREEK CAPITAL LETTER XI "O=0x039F", // GREEK CAPITAL LETTER OMICRON "P=0x03A0", // GREEK CAPITAL LETTER PI "R=0x03A1", // GREEK CAPITAL LETTER RHO "S=0x03A3", // GREEK CAPITAL LETTER SIGMA "T=0x03A4", // GREEK CAPITAL LETTER TAU "U=0x03A5", // GREEK CAPITAL LETTER UPSILON "F=0x03A6", // GREEK CAPITAL LETTER PHI "Q=0x03A7", // GREEK CAPITAL LETTER CHI "Y=0x03A8", // GREEK CAPITAL LETTER PSI "W=0x03A9", // GREEK CAPITAL LETTER OMEGA "a=0x03B1", // GREEK SMALL LETTER ALPHA "b=0x03B2", // GREEK SMALL LETTER BETA "g=0x03B3", // GREEK SMALL LETTER GAMMA "d=0x03B4", // GREEK SMALL LETTER DELTA "e=0x03B5", // GREEK SMALL LETTER EPSILON "z=0x03B6", // GREEK SMALL LETTER ZETA "h=0x03B7", // GREEK SMALL LETTER ETA "j=0x03B8", // GREEK SMALL LETTER THETA "i=0x03B9", // GREEK SMALL LETTER IOTA "k=0x03BA", // GREEK SMALL LETTER KAPPA "l=0x03BB", // GREEK SMALL LETTER LAMDA "m=0x03BC", // GREEK SMALL LETTER MU "n=0x03BD", // GREEK SMALL LETTER NU "x=0x03BE", // GREEK SMALL LETTER XI "o=0x03BF", // GREEK SMALL LETTER OMICRON "p=0x03C0", // GREEK SMALL LETTER PI "r=0x03C1", // GREEK SMALL LETTER RHO "c=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "s=0x03C3", // GREEK SMALL LETTER SIGMA "t=0x03C4", // GREEK SMALL LETTER TAU "u=0x03C5", // GREEK SMALL LETTER UPSILON "f=0x03C6", // GREEK SMALL LETTER PHI "q=0x03C7", // GREEK SMALL LETTER CHI "y=0x03C8", // GREEK SMALL LETTER PSI "w=0x03C9", // GREEK SMALL LETTER OMEGA // VOWELS WITH DIACRITICS "`A=0x1FBA", // GREEK CAPITAL LETTER ALPHA WITH VARIA "'A=0x1FBB", // GREEK CAPITAL LETTER ALPHA WITH OXIA ">A=0x1F08", // GREEK CAPITAL LETTER ALPHA WITH PSILI "`A=0x1F0A", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA "<`A=0x1F0B", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA ">'A=0x1F0C", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA "<'A=0x1F0D", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA ">~A=0x1F0E", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI "<~A=0x1F0F", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI "A|=0x1FBC", // GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI ">A|=0x1F88", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI "`A|=0x1F8A", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI "<`A|=0x1F8B", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI ">'A|=0x1F8C", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI "<'A|=0x1F8D", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI ">~A|=0x1F8E", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI "<~A|=0x1F8F", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "`a=0x1F70", // GREEK SMALL LETTER ALPHA WITH VARIA "'a=0x1F71", // GREEK SMALL LETTER ALPHA WITH OXIA "~a=0x1FB6", // GREEK SMALL LETTER ALPHA WITH PERISPOMENI ">a=0x1F00", // GREEK SMALL LETTER ALPHA WITH PSILI "`a=0x1F02", // GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA "<`a=0x1F03", // GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA ">'a=0x1F04", // GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA "<'a=0x1F05", // GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA ">~a=0x1F06", // GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI "<~a=0x1F07", // GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI "a|=0x1FB3", // GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI "`a|=0x1FB2", // GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI "'a|=0x1FB4", // GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI "~a|=0x1FB7", // GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI ">a|=0x1F80", // GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI "`a|=0x1F82", // GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI "<`a|=0x1F83", // GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI ">'a|=0x1F84", // GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI "<'a|=0x1F85", // GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI ">~a|=0x1F86", // GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI "<~a|=0x1F87", // GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI "`E=0x1FC8", // GREEK CAPITAL LETTER EPSILON WITH VARIA "'E=0x1FC9", // GREEK CAPITAL LETTER EPSILON WITH OXIA ">E=0x1F18", // GREEK CAPITAL LETTER EPSILON WITH PSILI "`E=0x1F1A", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA "<`E=0x1F1B", // GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA ">'E=0x1F1C", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA "<'E=0x1F1D", // GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA "`e=0x1F72", // GREEK SMALL LETTER EPSILON WITH VARIA "'e=0x1F73", // GREEK SMALL LETTER EPSILON WITH OXIA ">e=0x1F10", // GREEK SMALL LETTER EPSILON WITH PSILI "`e=0x1F12", // GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA "<`e=0x1F13", // GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA ">'e=0x1F14", // GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA "<'e=0x1F15", // GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA "`H=0x1FCA", // GREEK CAPITAL LETTER ETA WITH VARIA "'H=0x1FCB", // GREEK CAPITAL LETTER ETA WITH OXIA ">H=0x1F28", // GREEK CAPITAL LETTER ETA WITH PSILI "`H=0x1F2A", // GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA "<`H=0x1F2B", // GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA ">'H=0x1F2C", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA "<'H=0x1F2D", // GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA ">~H=0x1F2E", // GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI "<~H=0x1F2F", // GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI "H|=0x1FCC", // GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI ">H|=0x1F98", // GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI "`H|=0x1F9A", // GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI "<`H|=0x1F9B", // GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI ">'H|=0x1F9C", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI "<'H|=0x1F9D", // GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI ">~H|=0x1F9E", // GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI "<~H|=0x1F9F", // GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "`h=0x1F74", // GREEK SMALL LETTER ETA WITH VARIA "'h=0x1F75", // GREEK SMALL LETTER ETA WITH OXIA "~h=0x1FC6", // GREEK SMALL LETTER ETA WITH PERISPOMENI ">h=0x1F20", // GREEK SMALL LETTER ETA WITH PSILI "`h=0x1F22", // GREEK SMALL LETTER ETA WITH PSILI AND VARIA "<`h=0x1F23", // GREEK SMALL LETTER ETA WITH DASIA AND VARIA ">'h=0x1F24", // GREEK SMALL LETTER ETA WITH PSILI AND OXIA "<'h=0x1F25", // GREEK SMALL LETTER ETA WITH DASIA AND OXIA ">~h=0x1F26", // GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI "<~h=0x1F27", // GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI "h|=0x1FC3", // GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI "`h|=0x1FC2", // GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI "'h|=0x1FC4", // GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI "~h|=0x1FC7", // GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI ">h|=0x1F90", // GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI "`h|=0x1F92", // GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI "<`h|=0x1F93", // GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI ">'h|=0x1F94", // GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI "<'h|=0x1F95", // GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI ">~h|=0x1F96", // GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI "<~h|=0x1F97", // GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI "`I=0x1FDA", // GREEK CAPITAL LETTER IOTA WITH VARIA "'I=0x1FDB", // GREEK CAPITAL LETTER IOTA WITH OXIA "\"I=0x03AA", // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA ">I=0x1F38", // GREEK CAPITAL LETTER IOTA WITH PSILI "`I=0x1F3A", // GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA "<`I=0x1F3B", // GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA ">'I=0x1F3C", // GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA "<'I=0x1F3D", // GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA ">~I=0x1F3E", // GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI "<~I=0x1F3F", // GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI "`i=0x1F76", // GREEK SMALL LETTER IOTA WITH VARIA "'i=0x1F77", // GREEK SMALL LETTER IOTA WITH OXIA "~i=0x1FD6", // GREEK SMALL LETTER IOTA WITH PERISPOMENI "\"i=0x03CA", // GREEK SMALL LETTER IOTA WITH DIALYTIKA "\"`i=0x1FD2", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA "\"'i=0x1FD3", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA "\"~i=0x1FD7", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI ">i=0x1F30", // GREEK SMALL LETTER IOTA WITH PSILI "`i=0x1F32", // GREEK SMALL LETTER IOTA WITH PSILI AND VARIA "<`i=0x1F33", // GREEK SMALL LETTER IOTA WITH DASIA AND VARIA ">'i=0x1F34", // GREEK SMALL LETTER IOTA WITH PSILI AND OXIA "<'i=0x1F35", // GREEK SMALL LETTER IOTA WITH DASIA AND OXIA ">~i=0x1F36", // GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI "<~i=0x1F37", // GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI "`O=0x1FF8", // GREEK CAPITAL LETTER OMICRON WITH VARIA "'O=0x1FF9", // GREEK CAPITAL LETTER OMICRON WITH OXIA ">O=0x1F48", // GREEK CAPITAL LETTER OMICRON WITH PSILI "`O=0x1F4A", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA "<`O=0x1F4B", // GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA ">'O=0x1F4C", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA "<'O=0x1F4D", // GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA "`o=0x1F78", // GREEK SMALL LETTER OMICRON WITH VARIA "'o=0x1F79", // GREEK SMALL LETTER OMICRON WITH OXIA ">o=0x1F40", // GREEK SMALL LETTER OMICRON WITH PSILI "`o=0x1F42", // GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA "<`o=0x1F43", // GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA ">'o=0x1F44", // GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA "<'o=0x1F45", // GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA "`U=0x1FEA", // GREEK CAPITAL LETTER UPSILON WITH VARIA "'U=0x1FEB", // GREEK CAPITAL LETTER UPSILON WITH OXIA "\"U=0x03AB", // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA "u=0x1F50", // GREEK SMALL LETTER UPSILON WITH PSILI "`u=0x1F52", // GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA "<`u=0x1F53", // GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA ">'u=0x1F54", // GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA "<'u=0x1F55", // GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA ">~u=0x1F56", // GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI "<~u=0x1F57", // GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI "`W=0x1FFA", // GREEK CAPITAL LETTER OMEGA WITH VARIA "'W=0x1FFB", // GREEK CAPITAL LETTER OMEGA WITH OXIA ">W=0x1F68", // GREEK CAPITAL LETTER OMEGA WITH PSILI "`W=0x1F6A", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA "<`W=0x1F6B", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA ">'W=0x1F6C", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA "<'W=0x1F6D", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA ">~W=0x1F6E", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI "<~W=0x1F6F", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI "W|=0x1FFC", // GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI ">W|=0x1FA8", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI "`W|=0x1FAA", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI "<`W|=0x1FAB", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI ">'W|=0x1FAC", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI "<'W|=0x1FAD", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI ">~W|=0x1FAE", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI "<~W|=0x1FAF", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "`w=0x1F7C", // GREEK SMALL LETTER OMEGA WITH VARIA "'w=0x1F7D", // GREEK SMALL LETTER OMEGA WITH OXIA "~w=0x1FF6", // GREEK SMALL LETTER OMEGA WITH PERISPOMENI ">w=0x1F60", // GREEK SMALL LETTER OMEGA WITH PSILI "`w=0x1F62", // GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA "<`w=0x1F63", // GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA ">'w=0x1F64", // GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA "<'w=0x1F65", // GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA ">~w=0x1F66", // GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI "<~w=0x1F67", // GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI "w|=0x1FF3", // GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI "`w|=0x1FF2", // GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI "'w|=0x1FF4", // GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI "~w|=0x1FF7", // GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI ">w|=0x1FA0", // GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI "`w|=0x1FA2", // GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI "<`w|=0x1FA3", // GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI ">'w|=0x1FA4", // GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI "<'w|=0x1FA5", // GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI ">~w|=0x1FA6", // GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI "<~w|=0x1FA7", // GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI // VOWELS WITH NON ORTHOGRAPHICAL DIACRITICS ".A=0x1FB8", // GREEK CAPITAL LETTER ALPHA WITH VRACHY "0x3D A=0x1FB9", // GREEK CAPITAL LETTER ALPHA WITH MACRON ".a=0x1FB0", // GREEK SMALL LETTER ALPHA WITH VRACHY "0x3D a=0x1FB1", // GREEK SMALL LETTER ALPHA WITH MACRON ".I=0x1FD8", // GREEK CAPITAL LETTER IOTA WITH VRACHY "0x3D I=0x1FD9", // GREEK CAPITAL LETTER IOTA WITH MACRON ".i=0x1FD0", // GREEK SMALL LETTER IOTA WITH VRACHY "0x3D i=0x1FD1", // GREEK SMALL LETTER IOTA WITH MACRON ".U=0x1FE8", // GREEK CAPITAL LETTER UPSILON WITH VRACHY "0x3D U=0x1FE9", // GREEK CAPITAL LETTER UPSILON WITH MACRON ".u=0x1FE0", // GREEK SMALL LETTER UPSILON WITH VRACHY "0x3D u=0x1FE1", // GREEK SMALL LETTER UPSILON WITH MACRON // CONSONANTS WITH DIACRITICS "r=0x1FE4", // GREEK SMALL LETTER RHO WITH PSILI "=0x1FBF", // GREEK PSILI "<=0x1FFE", // GREEK DASIA ">`=0x1FCD", // GREEK PSILI AND VARIA ">'=0x1FCE", // GREEK PSILI AND OXIA ">~=0x1FCF", // GREEK PSILI AND PERISPOMENI "<`=0x1FDD", // GREEK DASIA AND VARIA "<'=0x1FDE", // GREEK DASIA AND OXIA "<~=0x1FDF", // GREEK DASIA AND PERISPOMENI "|=0x037A", // GREEK YPOGEGRAMMENI "*|=0x1FBE", // GREEK PROSGEGRAMMENI // NUMERAL SIGNS "#'=0x0374", // GREEK NUMERAL SIGN "#,=0x0375", // GREEK LOWER NUMERAL SIGN // PUNCTUATION MARKS // The following two characters allow to type <...> in an XML file. "*<=0x2329", // LEFT-POINTING ANGLE BRACKET "*>=0x232A", // RIGHT-POINTING ANGLE BRACKET "<<=0x00AB", // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK ">>=0x00BB", // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK "*``=0x2018", // LEFT SINGLE QUOTATION MARK "*''=0x2019", // RIGHT SINGLE QUOTATION MARK "?=0x037E", // GREEK QUESTION MARK ";=0x0387", // GREEK ANO TELEIA // The following character is also apostrophe. "''=0x1FBD", // GREEK KORONIS "--=0x2013", // EN DASH "---=0x2014", // EM DASH "&=0x00A0", // NO-BREAK SPACE // VARIANT LETTERFORMS AND SYMBOLS "*b=0x03D0", // GREEK BETA SYMBOL "*j=0x03D1", // GREEK THETA SYMBOL "*U=0x03D2", // GREEK UPSILON WITH HOOK SYMBOL "*'U=0x03D3", // GREEK UPSILON WITH ACUTE AND HOOK SYMBOL "*\"U=0x03D4", // GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL "*f=0x03D5", // GREEK PHI SYMBOL "*p=0x03D6", // GREEK PI SYMBOL "*kai=0x03D7", // GREEK KAI SYMBOL "*k=0x03F0", // GREEK KAPPA SYMBOL "*r=0x03F1", // GREEK RHO SYMBOL "*c=0x03F2", // GREEK LUNATE SIGMA SYMBOL "*J=0x03F4", // GREEK CAPITAL THETA SYMBOL "*e=0x03F5", // GREEK LUNATE EPSILON SYMBOL "*/e=0x03F6", // GREEK REVERSED LUNATE EPSILON SYMBOL "*C=0x03F9", // GREEK CAPITAL LUNATE SIGMA SYMBOL // ARCHAIC LETTERS "*Q=0x03D8", // GREEK LETTER ARCHAIC KOPPA "*q=0x03D9", // GREEK SMALL LETTER ARCHAIC KOPPA "*St=0x03DA", // GREEK LETTER STIGMA "*st=0x03DB", // GREEK SMALL LETTER STIGMA "*W=0x03DC", // GREEK LETTER DIGAMMA "*w=0x03DD", // GREEK SMALL LETTER DIGAMMA "*Ko=0x03DE", // GREEK LETTER KOPPA "*ko=0x03DF", // GREEK SMALL LETTER KOPPA "*Sm=0x03E0", // GREEK LETTER SAMPI "*sm=0x03E1", // GREEK SMALL LETTER SAMPI "*Sn=0x03FA", // GREEK CAPITAL LETTER SAN "*sn=0x03FB", // GREEK SMALL LETTER SAN // ADDITIONAL ARCHAIC LETTERS FOR BACTRIAN "*Sh=0x03F7", // GREEK CAPITAL LETTER SHO "*sh=0x03F8", // GREEK SMALL LETTER SHO // ADDITIONAL LETTER "*y=0x03F3", // GREEK LETTER YOT ./mytool/kmap/Thai.kmap0000644000175000017500000000751307532460064015063 0ustar henrichhenrich// Thai.kmap, v1.0 // GPL (c) 2000 Theppitak Karoonboonyanan // Thai keymap for the unicode editor Yudit, // based on Thai Industrial Standard TIS-820.2538 (1995) "d=0x0E01", // THAI CHARACTER KO KAI "-=0x0E02", // THAI CHARACTER KHO KHAI "\\=0x0E03", // THAI CHARACTER KHO KHUAT "0x38=0x0E04", // THAI CHARACTER KHO KHWAI "|=0x0E05", // THAI CHARACTER KHO KHON "S=0x0E06", // THAI CHARACTER KHO RAKHANG "\'=0x0E07", // THAI CHARACTER NGO NGU "0x30=0x0E08", // THAI CHARACTER CHO CHAN "C=0x0E09", // THAI CHARACTER CHO CHING "0x3D=0x0E0A", // THAI CHARACTER CHO CHANG ":=0x0E0B", // THAI CHARACTER SO SO "G=0x0E0C", // THAI CHARACTER CHO CHOE "P=0x0E0D", // THAI CHARACTER YO YING "E=0x0E0E", // THAI CHARACTER DO CHADA "D=0x0E0F", // THAI CHARACTER TO PATAK "{=0x0E10", // THAI CHARACTER THO THAN "R=0x0E11", // THAI CHARACTER THO NANGMONTHO "<=0x0E12", // THAI CHARACTER THO PHUTHAO "I=0x0E13", // THAI CHARACTER NO NEN "f=0x0E14", // THAI CHARACTER DO DEK "0x39=0x0E15", // THAI CHARACTER TO TAO "0x35=0x0E16", // THAI CHARACTER THO THUNG "m=0x0E17", // THAI CHARACTER THO THAHAN "T=0x0E18", // THAI CHARACTER THO THONG "o=0x0E19", // THAI CHARACTER NO NU "[=0x0E1A", // THAI CHARACTER BO BAIMAI "x=0x0E1B", // THAI CHARACTER PO PLA "z=0x0E1C", // THAI CHARACTER PHO PHUNG "/=0x0E1D", // THAI CHARACTER FO FA "r=0x0E1E", // THAI CHARACTER PHO PHAN "a=0x0E1F", // THAI CHARACTER FO FAN "0x34=0x0E20", // THAI CHARACTER PHO SAMPHAO ",=0x0E21", // THAI CHARACTER MO MA "p=0x0E22", // THAI CHARACTER YO YAK "i=0x0E23", // THAI CHARACTER RO RUA "A=0x0E24", // THAI CHARACTER RU "]=0x0E25", // THAI CHARACTER LO LING "?=0x0E26", // THAI CHARACTER LU ";=0x0E27", // THAI CHARACTER WO WAEN "L=0x0E28", // THAI CHARACTER SO SALA "K=0x0E29", // THAI CHARACTER SO RUSI "l=0x0E2A", // THAI CHARACTER SO SUA "s=0x0E2B", // THAI CHARACTER HO HIP ">=0x0E2C", // THAI CHARACTER LO CHULA "v=0x0E2D", // THAI CHARACTER O ANG "V=0x0E2E", // THAI CHARACTER HO NOKHUK "O=0x0E2F", // THAI CHARACTER PAIYANNOI "t=0x0E30", // THAI CHARACTER SARA A "y=0x0E31", // THAI CHARACTER MAI HAN-AKAT "k=0x0E32", // THAI CHARACTER SARA AA "e=0x0E33", // THAI CHARACTER SARA AM "b=0x0E34", // THAI CHARACTER SARA I "u=0x0E35", // THAI CHARACTER SARA II "0x37=0x0E36", // THAI CHARACTER SARA UE "n=0x0E37", // THAI CHARACTER SARA UEE "0x36=0x0E38", // THAI CHARACTER SARA U "^=0x0E39", // THAI CHARACTER SARA UU "B=0x0E3A", // THAI CHARACTER PHINTHU "0x31=0x0E3F", // THAI CURRENCY SYMBOL BAHT "g=0x0E40", // THAI CHARACTER SARA E "c=0x0E41", // THAI CHARACTER SARA AE "F=0x0E42", // THAI CHARACTER O ".=0x0E43", // THAI CHARACTER SARA AI MAIMUAN "w=0x0E44", // THAI CHARACTER SARA AI MAIMALAI "!=0x0E45", // THAI CHARACTER LAKKHANGYAO "q=0x0E46", // THAI CHARACTER MAIYAMOK "H=0x0E47", // THAI CHARACTER MAITAIKHU "j=0x0E48", // THAI CHARACTER MAI EK "h=0x0E49", // THAI CHARACTER MAI THO "U=0x0E4A", // THAI CHARACTER MAI TRI "J=0x0E4B", // THAI CHARACTER MAI CHATTAWA "N=0x0E4C", // THAI CHARACTER THANTHAKHAT "Y=0x0E4D", // THAI CHARACTER NIKHAHIT "0x26=0x0E4E", // THAI CHARACTER YAMAKKAN "`=0x0E4F", // THAI CHARACTER FONGMAN "Q=0x0E50", // THAI DIGIT ZERO "@=0x0E51", // THAI DIGIT ONE "#=0x0E52", // THAI DIGIT TWO "$=0x0E53", // THAI DIGIT THREE "%=0x0E54", // THAI DIGIT FOUR "*=0x0E55", // THAI DIGIT FIVE "(=0x0E56", // THAI DIGIT SIX ")=0x0E57", // THAI DIGIT SEVEN "_=0x0E58", // THAI DIGIT EIGHT "+=0x0E59", // THAI DIGIT NINE "~=0x0E5B", // THAI CHARACTER KHOMUT // punctuations "0x32=0x002F", // SOLIDUS "0x33=0x002D", // HYPHEN-MINUS "W=0x0022", // QUOTATION MARK "}=0x002C", // COMMA "\"=0x002E", // FULL STOP "Z=0x0028", // LEFT PARENTHESIS "X=0x0029", // RIGHT PARENTHESIS "M=0x003F", // QUESTION MARK ./mytool/kmap/Belarusian.kmap0000644000175000017500000001461307532460064016262 0ustar henrichhenrich// Belarusian input table according to STB955-94 belarusian standard // Created with Yudit for Yudit // © 2001-03-03 by Alexander Mikhailian // Additions and improvements are welcome // 0. Quotation marks and special symbols popular with Cyrillic "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // ? = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "C)=0x00A9", // © = COPYRIGHT SIGN "x)=0x2022", // ? = BULLET ":)=0x263A", // ? = WHITE SMILING FACE ":(=0x2639", // ? = WHITE FROWNING FACE "C-=0x00A4", // ¤ = CURRENCY SIGN "E-=0x20AC", // ? = EURO SIGN "L-=0x00A3", // £ = POUND SIGN // General table for Belarusian "~=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "!=0x0021", // ! = EXCLAMATION MARK "@=0x0022", // " = QUOTATION MARK "#=0x2116", // № = NUMERO SIGN "$=0x003B", // ; = SEMICOLON "%=0x0025", // % = PERCENT SIGN "^=0x003A", // : = COLON "&=0x003F", // ? = QUESTION MARK "*=0x002A", // * = ASTERISK "(=0x0028", // ( = LEFT PARENTHESIS ")=0x0029", // ) = RIGHT PARENTHESIS "_=0x005F", // _ = LOW LINE "+=0x002B", // + = PLUS SIGN "Q=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "W=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "E=0x0423", // У = CYRILLIC CAPITAL LETTER U "R=0x041A", // К = CYRILLIC CAPITAL LETTER KA "T=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "Y=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "U=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "I=0x0428", // Ш = CYRILLIC CAPITAL LETTER SHA "O=0x040E", // Ў = CYRILLIC CAPITAL LETTER SHORT U "P=0x0417", // З = CYRILLIC CAPITAL LETTER ZE "{=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "}=0x0027", // ' = APOSTROPHE "A=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "S=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "D=0x0412", // В = CYRILLIC CAPITAL LETTER VE "F=0x0410", // А = CYRILLIC CAPITAL LETTER A "G=0x041F", // П = CYRILLIC CAPITAL LETTER PE "H=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "J=0x041E", // О = CYRILLIC CAPITAL LETTER O "K=0x041B", // Л = CYRILLIC CAPITAL LETTER EL "L=0x0414", // Д = CYRILLIC CAPITAL LETTER DE ":=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "\"=0x042D", // Э = CYRILLIC CAPITAL LETTER E "0x7C=0x002F", // / = SOLIDUS "Z=0x042F", // Я = CYRILLIC CAPITAL LETTER YA "X=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "C=0x0421", // С = CYRILLIC CAPITAL LETTER ES "V=0x041C", // М = CYRILLIC CAPITAL LETTER EM "B=0x0406", // І = CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I "N=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "M=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "<=0x0411", // Б = CYRILLIC CAPITAL LETTER BE ">=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "?=0x002C", // , = COMMA // Then the same thing in lower case: "`=0x0451", // ё = CYRILLIC SMALL LETTER IO "0x31=0x0031", // 1 = DIGIT ONE "0x32=0x0032", // 2 = DIGIT TWO "0x33=0x0033", // 3 = DIGIT THREE "0x34=0x0034", // 4 = DIGIT FOUR "0x35=0x0035", // 5 = DIGIT FIVE "0x36=0x0036", // 6 = DIGIT SIX "0x37=0x0037", // 7 = DIGIT SEVEN "0x38=0x0038", // 8 = DIGIT EIGHT "0x39=0x0039", // 9 = DIGIT NINE "0x30=0x0030", // 0 = DIGIT ZERO "-=0x002D", // - = HIPHEN-MINUS "0x30=0x003D", // = = EQUALS SIGN "q=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "w=0x0446", // ц = CYRILLIC SMALL LETTER TSE "e=0x0443", // у = CYRILLIC SMALL LETTER U "r=0x043A", // к = CYRILLIC SMALL LETTER KA "t=0x0435", // е = CYRILLIC SMALL LETTER IE "y=0x043D", // н = CYRILLIC SMALL LETTER EN "u=0x0433", // г = CYRILLIC SMALL LETTER GHE "i=0x0448", // ш = CYRILLIC SMALL LETTER SHA "o=0x045E", // ў = CYRILLIC SMALL LETTER SHORT U "p=0x0437", // з = CYRILLIC SMALL LETTER ZE "[=0x0445", // х = CYRILLIC SMALL LETTER HA "]=0x0027", // ' = APOSTROPHE "a=0x0444", // ф = CYRILLIC SMALL LETTER EF "s=0x044B", // ы = CYRILLIC SMALL LETTER YERU "d=0x0432", // в = CYRILLIC SMALL LETTER VE "f=0x0430", // а = CYRILLIC SMALL LETTER A "g=0x043F", // п = CYRILLIC SMALL LETTER PE "h=0x0440", // р = CYRILLIC SMALL LETTER ER "j=0x043E", // о = CYRILLIC SMALL LETTER O "k=0x043B", // л = CYRILLIC SMALL LETTER EL "l=0x0434", // д = CYRILLIC SMALL LETTER DE ";=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "'=0x044D", // э = CYRILLIC SMALL LETTER E "0x5C=0x005C", // \ = REVERSE SOLIDUS "z=0x044F", // я = CYRILLIC SMALL LETTER YA "x=0x0447", // ч = CYRILLIC SMALL LETTER CHE "c=0x0441", // с = CYRILLIC SMALL LETTER ES "v=0x043C", // м = CYRILLIC SMALL LETTER EM "b=0x0456", // і = CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I "n=0x0442", // т = CYRILLIC SMALL LETTER TE "m=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN ",=0x0431", // б = CYRILLIC SMALL LETTER BE ".=0x044E", // ю = CYRILLIC SMALL LETTER YU "/=0x002E", // . = FULL STOP // Additional characters "D-=0x0402", // Ђ = CYRILLIC CAPITAL LETTER DJE "G'=0x0403", // Ѓ = CYRILLIC CAPITAL LETTER GJE "E>=0x0404", // Є = CYRILLIC CAPITAL LETTER UKRAINIAN IE "Z>=0x0405", // Ѕ = CYRILLIC CAPITAL LETTER DZE "I/ =0x0418", // И = CYRILLIC CAPITAL LETTER I "I:=0x0407", // Ї = CYRILLIC CAPITAL LETTER YI "J<=0x0408", // Ј = CYRILLIC CAPITAL LETTER JE "L>=0x0409", // Љ = CYRILLIC CAPITAL LETTER LJE "N>=0x040A", // Њ = CYRILLIC CAPITAL LETTER NJE "C'=0x040B", // Ћ = CYRILLIC CAPITAL LETTER TSHE "K'=0x040C", // Ќ = CYRILLIC CAPITAL LETTER KJE "D>=0x040F", // Џ = CYRILLIC CAPITAL LETTER DZHE // Then the same thing in lower case: "d-=0x0452", // ђ = CYRILLIC SMALL LETTER DJE "g'=0x0453", // ѓ = CYRILLIC SMALL LETTER GJE "e>=0x0454", // є = CYRILLIC SMALL LETTER UKRAINIAN IE "z>=0x0455", // ѕ = CYRILLIC SMALL LETTER DZE "i/ =0x0438", // и = CYRILLIC SMALL LETTER I "i:=0x0457", // ї = CYRILLIC SMALL LETTER YI "j<=0x0458", // ј = CYRILLIC SMALL LETTER JE "l>=0x0459", // љ = CYRILLIC SMALL LETTER LJE "c'=0x045B", // ћ = CYRILLIC SMALL LETTER TSHE "k'=0x045C", // ќ = CYRILLIC SMALL LETTER KJE "d>=0x045F", // џ = CYRILLIC SMALL LETTER DZHE "G`=0x0490", // Ґ = CYRILLIC CAPITAL LETTER GHE WITH UPTURN "g`=0x0491", // ґ = CYRILLIC SMALL LETTER GHE WITH UPTURN "E<=0x0462", // Ѣ = CYRILLIC CAPITAL LETTER YAT "e<=0x0463", // ѣ = CYRILLIC SMALL LETTER YAT "A<=0x046A", // Ѫ = CYRILLIC CAPITAL LETTER BIG YUS "a<=0x046B", // ѫ = CYRILLIC SMALL LETTER BIG YUS "F`=0x0472", // Ѳ = CYRILLIC CAPITAL LETTER FITA "f`=0x0473", // ѳ = CYRILLIC SMALL LETTER FITA "Y`=0x0474", // Ѵ = CYRILLIC CAPITAL LETTER IZHITSA "y`=0x0475", // ѵ = CYRILLIC SMALL LETTER IZHITSA ./mytool/kmap/Slovenian.kmap0000644000175000017500000000143007532460064016124 0ustar henrichhenrich// Slovenian.kmap for the Unicode editor Yudit. // 2001-11-11 Roman Maurer // // This file is based on Croatian.kmap with notable // exception that Slovenian alphabet does not treat // "LJ" and "DZ WITH CARON" as one letter. "C<=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "C'=0x0106", // Ć = LATIN CAPITAL LETTER C WITH ACUTE "D;=0x0110", // Đ = LATIN CAPITAL LETTER D WITH STROKE "S<=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "Z<=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "c<=0x010D", // č = LATIN SMALL LETTER C WITH CARON "c'=0x0107", // ć = LATIN SMALL LETTER C WITH ACUTE "d;=0x0111", // đ = LATIN SMALL LETTER D WITH STROKE "s<=0x0161", // š = LATIN SMALL LETTER S WITH CARON "z<=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON ./mytool/kmap/French.kmap0000644000175000017500000000440710073512726015377 0ustar henrichhenrich// French.kmap for the Unicode text editor Yudit // 1998-06-10 roman@czyborra.com - improvements welcome // 2004-07-05 Modified by Yves Codet "~=0x00A0", //   = NO-BREAK SPACE "'=0x2019", // ’ = RIGHT SINGLE QUOTATION MARK (APOSTROPHE) "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK "e'=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "e`=0x00E8", // è = LATIN SMALL LETTER E WITH GRAVE "u`=0x00F9", // ù = LATIN SMALL LETTER U WITH GRAVE "c;=0x00E7", // ç = LATIN SMALL LETTER C WITH CEDILLA "a`=0x00E0", // à = LATIN SMALL LETTER A WITH GRAVE "E'=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "E`=0x00C8", // È = LATIN CAPITAL LETTER E WITH GRAVE "U`=0x00D9", // Ù = LATIN CAPITAL LETTER U WITH GRAVE "C;=0x00C7", // Ç = LATIN CAPITAL LETTER C WITH CEDILLA "A`=0x00C0", // À = LATIN CAPITAL LETTER A WITH GRAVE "a>=0x00E2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "e>=0x00EA", // ê = LATIN SMALL LETTER E WITH CIRCUMFLEX "i>=0x00EE", // î = LATIN SMALL LETTER I WITH CIRCUMFLEX "o>=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "u>=0x00FB", // û = LATIN SMALL LETTER U WITH CIRCUMFLEX "ae=0x00E6", // æ = LATIN SMALL LETTER AE "oe=0x0153", // œ = LATIN SMALL LIGATURE OE "e;=0x00EB", // ë = LATIN SMALL LETTER E WITH DIAERESIS "i;=0x00EF", // ï = LATIN SMALL LETTER I WITH DIAERESIS "u;=0x00FC", // ü = LATIN SMALL LETTER U WITH DIAERESIS "y;=0x00FF", // ÿ = LATIN SMALL LETTER Y WITH DIAERESIS "A>=0x00C2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX "E>=0x00CA", // Ê = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "I>=0x00CE", // Î = LATIN CAPITAL LETTER I WITH CIRCUMFLEX "O>=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "U>=0x00DB", // Û = LATIN CAPITAL LETTER U WITH CIRCUMFLEX "AE=0x00C6", // Æ = LATIN CAPITAL LETTER AE "OE=0x0152", // Œ = LATIN CAPITAL LIGATURE OE "E;=0x00CB", // Ë = LATIN CAPITAL LETTER E WITH DIAERESIS "I;=0x00CF", // Ï = LATIN CAPITAL LETTER I WITH DIAERESIS "U;=0x00DC", // Ü = LATIN CAPITAL LETTER U WITH DIAERESIS "Y;=0x0178", // Ÿ = LATIN CAPITAL LETTER Y WITH DIAERESIS "Ff=0x20A3", // ₣ = FRENCH FRANC SIGN "E$=0x20AC", // € = EURO SIGN "Ct=0x00A2", // ¢ = CENT SIGN "C)=0x00A9", // © = COPYRIGHT SIGN ./mytool/kmap/Devanagari-Velthuis.kmap0000644000175000017500000025175510221771506020044 0ustar henrichhenrich// Velthuis 7-bit Devanagari to Unicode Devanagari kmap // Anshuman Pandey // Updated: 2005-03-28 // // This input method converts the 7-bit Velthuis encoding // used in the Devanagari for TeX (devnag) package into // Unicode Devanagari. Complete details on the Velthuis // encoding are available from the devnag project // homepage at http://devnag.sarovar.org/. // // Compliant with The Unicode Standard, Version 4.0, // except for maps excluded for the following letters: // // 0904 DEVANAGARI LETTER SHORT A // 093C DEVANAGARI SIGN NUKTA // 0951 DEVANAGARI STRESS SIGN UDATTA // 0952 DEVANAGARI STRESS SIGN ANUDATTA // 0953 DEVANAGARI GRAVE ACCENT // 0954 DEVANAGARI ACUTE ACCENT // // // Vowels // "a=0x0905", // DEVANAGARI LETTER A "aa=0x0906", // DEVANAGARI LETTER AA "A=0x0906", // DEVANAGARI LETTER AA "i=0x0907", // DEVANAGARI LETTER I "ii=0x0908", // DEVANAGARI LETTER II "I=0x0908", // DEVANAGARI LETTER II "u=0x0909", // DEVANAGARI LETTER U "uu=0x090A", // DEVANAGARI LETTER UU "U=0x090A", // DEVANAGARI LETTER UU ".r=0x090B", // DEVANAGARI LETTER VOCALIC R ".R=0x0960", // DEVANAGARI LETTER VOCALIC RR ".l=0x090C", // DEVANAGARI LETTER VOCALIC L ".L=0x0961", // DEVANAGARI LETTER VOCALIC LL "e=0x090F", // DEVANAGARI LETTER E "ai=0x0910", // DEVANAGARI LETTER AI "o=0x0913", // DEVANAGARI LETTER O "au=0x0914", // DEVANAGARI LETTER AU // // Supplementary vowels // "~a=0x090D", // DEVANAGARI LETTER CANDRA E - not in Velthuis "^e=0x090E", // DEVANAGARI LETTER SHORT E - not in Velthuis "~o=0x0911", // DEVANAGARI LETTER CANDRA O - not in Velthuis "^o=0x0912", // DEVANAGARI LETTER SHORT O - not in Velthuis // // Consonants // "ka=0x0915", // DEVANAGARI LETTER KA "kha=0x0916", // DEVANAGARI LETTER KHA "ga=0x0917", // DEVANAGARI LETTER GA "gha=0x0918", // DEVANAGARI LETTER GHA "\"na=0x0919", // DEVANAGARI LETTER NGA "ca=0x091A", // DEVANAGARI LETTER CA "cha=0x091B", // DEVANAGARI LETTER CHA "ja=0x091C", // DEVANAGARI LETTER JA "jha=0x091D", // DEVANAGARI LETTER JHA "~na=0x091E", // DEVANAGARI LETTER NYA ".ta=0x091F", // DEVANAGARI LETTER TTA ".tha=0x0920", // DEVANAGARI LETTER TTHA ".da=0x0921", // DEVANAGARI LETTER DDA ".dha=0x0922", // DEVANAGARI LETTER DDHA ".na=0x0923", // DEVANAGARI LETTER NNA "ta=0x0924", // DEVANAGARI LETTER TA "tha=0x0925", // DEVANAGARI LETTER THA "da=0x0926", // DEVANAGARI LETTER DA "dha=0x0927", // DEVANAGARI LETTER DHA "na=0x0928", // DEVANAGARI LETTER NA "pa=0x092A", // DEVANAGARI LETTER PA "pha=0x092B", // DEVANAGARI LETTER PHA "ba=0x092C", // DEVANAGARI LETTER BA "bha=0x092D", // DEVANAGARI LETTER BHA "ma=0x092E", // DEVANAGARI LETTER MA "ya=0x092F", // DEVANAGARI LETTER YA "ra=0x0930", // DEVANAGARI LETTER RA "la=0x0932", // DEVANAGARI LETTER LA "La=0x0933", // DEVANAGARI LETTER LLA "va=0x0935", // DEVANAGARI LETTER VA "\"sa=0x0936", // DEVANAGARI LETTER SHA ".sa=0x0937", // DEVANAGARI LETTER SSA "sa=0x0938", // DEVANAGARI LETTER SA "ha=0x0939", // DEVANAGARI LETTER HA // // Additional consonants // "qa=0x0958", // DEVANAGARI LETTER QA ".kha=0x0959", // DEVANAGARI LETTER KHHA ".ga=0x095A", // DEVANAGARI LETTER GHHA "za=0x095B", // DEVANAGARI LETTER ZA "Ra=0x095C", // DEVANAGARI LETTER DDDHA "Rha=0x095D", // DEVANAGARI LETTER RHA "fa=0x095E", // DEVANAGARI LETTER FA ".ya=0x095F", // DEVANAGARI LETTER YYA - not in Velthuis "_na=0x0929", // DEVANAGARI LETTER NNNA - not in Velthuis "_ra=0x0931", // DEVANAGARI LETTER RRA - not in Velthuis "_la=0x0934", // DEVANAGARI LETTER LLLA - not in Velthuis // // Consonants with dependent vowel signs or virama // "kaa=0x0915 0x093E", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN AA "kA=0x0915 0x093E", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN AA "ki=0x0915 0x093F", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN I "kii=0x0915 0x0940", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN II "kI=0x0915 0x0940", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN II "ku=0x0915 0x0941", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN U "kuu=0x0915 0x0942", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN UU "kU=0x0915 0x0942", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN UU "k.r=0x0915 0x0943", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC R "k.R=0x0915 0x0944", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC RR "k.l=0x0915 0x0962", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC L "k.L=0x0915 0x0963", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC LL "ke=0x0915 0x0947", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN E "kai=0x0915 0x0948", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN AI "ko=0x0915 0x094B", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN O "kau=0x0915 0x094C", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN AU "k~a=0x0915 0x0945", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN CANDRA E "k~o=0x0915 0x0949", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN CANDRA O "k^e=0x0915 0x0946", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN SHORT E "k^o=0x0915 0x094A", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN SHORT O "k=0x0915 0x094D", // DEVANAGARI LETTER KA + DEVANAGARI SIGN VIRAMA "khaa=0x0916 0x093E", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN AA "khA=0x0916 0x093E", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN AA "khi=0x0916 0x093F", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN I "khii=0x0916 0x0940", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN II "khI=0x0916 0x0940", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN II "khu=0x0916 0x0941", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN U "khuu=0x0916 0x0942", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN UU "khU=0x0916 0x0942", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN UU "kh.r=0x0916 0x0943", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC R "kh.R=0x0916 0x0944", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC RR "kh.l=0x0916 0x0962", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC L "kh.L=0x0916 0x0963", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC LL "khe=0x0916 0x0947", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN E "khai=0x0916 0x0948", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN AI "kho=0x0916 0x094B", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN O "khau=0x0916 0x094C", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN AU "kh~a=0x0916 0x0945", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN CANDRA E "kh~o=0x0916 0x0949", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN CANDRA O "kh^e=0x0916 0x0946", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN SHORT E "kh^o=0x0916 0x094A", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN SHORT O "kh=0x0916 0x094D", // DEVANAGARI LETTER KHA + DEVANAGARI SIGN VIRAMA "gaa=0x0917 0x093E", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN AA "gA=0x0917 0x093E", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN AA "gi=0x0917 0x093F", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN I "gii=0x0917 0x0940", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN II "gI=0x0917 0x0940", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN II "gu=0x0917 0x0941", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN U "guu=0x0917 0x0942", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN UU "gU=0x0917 0x0942", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN UU "g.r=0x0917 0x0943", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC R "g.R=0x0917 0x0944", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC RR "g.l=0x0917 0x0962", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC L "g.L=0x0917 0x0963", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC LL "ge=0x0917 0x0947", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN E "gai=0x0917 0x0948", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN AI "go=0x0917 0x094B", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN O "gau=0x0917 0x094C", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN AU "g~a=0x0917 0x0945", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN CANDRA E "g~o=0x0917 0x0949", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN CANDRA O "g^e=0x0917 0x0946", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN SHORT E "g^o=0x0917 0x094A", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN SHORT O "g=0x0917 0x094D", // DEVANAGARI LETTER GA + DEVANAGARI SIGN VIRAMA "ghaa=0x0918 0x093E", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN AA "ghA=0x0918 0x093E", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN AA "ghi=0x0918 0x093F", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN I "ghii=0x0918 0x0940", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN II "ghI=0x0918 0x0940", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN II "ghu=0x0918 0x0941", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN U "ghuu=0x0918 0x0942", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN UU "ghU=0x0918 0x0942", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN UU "gh.r=0x0918 0x0943", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC R "gh.R=0x0918 0x0944", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC RR "gh.l=0x0918 0x0962", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC L "gh.L=0x0918 0x0963", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC LL "ghe=0x0918 0x0947", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN E "ghai=0x0918 0x0948", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN AI "gho=0x0918 0x094B", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN O "ghau=0x0918 0x094C", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN AU "gh~a=0x0918 0x0945", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN CANDRA E "gh~o=0x0918 0x0949", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN CANDRA O "gh^e=0x0918 0x0946", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN SHORT E "gh^o=0x0918 0x094A", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN SHORT O "gh=0x0918 0x094D", // DEVANAGARI LETTER GHA + DEVANAGARI SIGN VIRAMA "\"naa=0x0919 0x093E", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN AA "\"nA=0x0919 0x093E", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN AA "\"ni=0x0919 0x093F", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN I "\"nii=0x0919 0x0940", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN II "\"nI=0x0919 0x0940", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN II "\"nu=0x0919 0x0941", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN U "\"nuu=0x0919 0x0942", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN UU "\"nU=0x0919 0x0942", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN UU "\"n.r=0x0919 0x0943", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC R "\"n.R=0x0919 0x0944", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC RR "\"n.l=0x0919 0x0962", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC L "\"n.L=0x0919 0x0963", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC LL "\"ne=0x0919 0x0947", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN E "\"nai=0x0919 0x0948", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN AI "\"no=0x0919 0x094B", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN O "\"nau=0x0919 0x094C", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN AU "\"n~a=0x0919 0x0945", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN CANDRA E "\"n~o=0x0919 0x0949", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN CANDRA O "\"n^e=0x0919 0x0946", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN SHORT E "\"n^o=0x0919 0x094A", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN SHORT O "\"n=0x0919 0x094D", // DEVANAGARI LETTER NGA + DEVANAGARI SIGN VIRAMA "caa=0x091A 0x093E", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN AA "cA=0x091A 0x093E", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN AA "ci=0x091A 0x093F", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN I "cii=0x091A 0x0940", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN II "cI=0x091A 0x0940", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN II "cu=0x091A 0x0941", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN U "cuu=0x091A 0x0942", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN UU "cU=0x091A 0x0942", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN UU "c.r=0x091A 0x0943", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC R "c.R=0x091A 0x0944", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC RR "c.l=0x091A 0x0962", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC L "c.L=0x091A 0x0963", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC LL "ce=0x091A 0x0947", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN E "cai=0x091A 0x0948", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN AI "co=0x091A 0x094B", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN O "cau=0x091A 0x094C", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN AU "c~a=0x091A 0x0945", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN CANDRA E "c~o=0x091A 0x0949", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN CANDRA O "c^e=0x091A 0x0946", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN SHORT E "c^o=0x091A 0x094A", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN SHORT O "c=0x091A 0x094D", // DEVANAGARI LETTER CA + DEVANAGARI SIGN VIRAMA "chaa=0x091B 0x093E", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN AA "chA=0x091B 0x093E", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN AA "chi=0x091B 0x093F", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN I "chii=0x091B 0x0940", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN II "chI=0x091B 0x0940", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN II "chu=0x091B 0x0941", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN U "chuu=0x091B 0x0942", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN UU "chU=0x091B 0x0942", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN UU "ch.r=0x091B 0x0943", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC R "ch.R=0x091B 0x0944", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC RR "ch.l=0x091B 0x0962", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC L "ch.L=0x091B 0x0963", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC LL "che=0x091B 0x0947", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN E "chai=0x091B 0x0948", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN AI "cho=0x091B 0x094B", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN O "chau=0x091B 0x094C", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN AU "ch~a=0x091B 0x0945", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN CANDRA E "ch~o=0x091B 0x0949", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN CANDRA O "ch^e=0x091A 0x0946", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN SHORT E "ch^o=0x091B 0x094A", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN SHORT O "ch=0x091B 0x094D", // DEVANAGARI LETTER CHA + DEVANAGARI SIGN VIRAMA "jaa=0x091C 0x093E", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN AA "jA=0x091C 0x093E", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN AA "ji=0x091C 0x093F", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN I "jii=0x091C 0x0940", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN II "jI=0x091C 0x0940", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN II "ju=0x091C 0x0941", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN U "juu=0x091C 0x0942", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN UU "jU=0x091C 0x0942", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN UU "j.r=0x091C 0x0943", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC R "j.R=0x091C 0x0944", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC RR "j.l=0x091C 0x0962", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC L "j.L=0x091C 0x0963", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC LL "je=0x091C 0x0947", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN E "jai=0x091C 0x0948", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN AI "jo=0x091C 0x094B", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN O "jau=0x091C 0x094C", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN AU "j~a=0x091C 0x0945", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN CANDRA E "j~o=0x091C 0x0949", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN CANDRA O "j^e=0x091C 0x0946", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN SHORT E "j^o=0x091C 0x094A", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN SHORT O "j=0x091C 0x094D", // DEVANAGARI LETTER JA + DEVANAGARI SIGN VIRAMA "jhaa=0x091D 0x093E", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN AA "jhA=0x091D 0x093E", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN AA "jhi=0x091D 0x093F", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN I "jhii=0x091D 0x0940", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN II "jhI=0x091D 0x0940", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN II "jhu=0x091D 0x0941", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN U "jhuu=0x091D 0x0942", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN UU "jhU=0x091D 0x0942", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN UU "jh.r=0x091D 0x0943", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC R "jh.R=0x091D 0x0944", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC RR "jh.l=0x091D 0x0962", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC L "jh.L=0x091D 0x0963", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC LL "jhe=0x091D 0x0947", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN E "jhai=0x091D 0x0948", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN AI "jho=0x091D 0x094B", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN O "jhau=0x091D 0x094C", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN AU "jh~a=0x091D 0x0945", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN CANDRA E "jh~o=0x091D 0x0949", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN CANDRA O "jh^e=0x091D 0x0946", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN SHORT E "jh^o=0x091D 0x094A", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN SHORT O "jh=0x091D 0x094D", // DEVANAGARI LETTER JHA + DEVANAGARI SIGN VIRAMA "~naa=0x091E 0x093E", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN AA "~nA=0x091E 0x093E", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN AA "~ni=0x091E 0x093F", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN I "~nii=0x091E 0x0940", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN II "~nI=0x091E 0x0940", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN II "~nu=0x091E 0x0941", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN U "~nuu=0x091E 0x0942", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN UU "~nU=0x091E 0x0942", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN UU "~n.r=0x091E 0x0943", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC R "~n.R=0x091E 0x0944", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC RR "~n.l=0x091E 0x0962", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC L "~n.L=0x091E 0x0963", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC LL "~ne=0x091E 0x0947", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN E "~nai=0x091E 0x0948", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN AI "~no=0x091E 0x094B", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN O "~nau=0x091E 0x094C", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN AU "~n~a=0x091E 0x0945", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN CANDRA E "~n~o=0x091E 0x0949", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN CANDRA O "~n^e=0x091E 0x0946", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN SHORT E "~n^o=0x091E 0x094A", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN SHORT O "~n=0x091E 0x094D", // DEVANAGARI LETTER NYA + DEVANAGARI SIGN VIRAMA ".taa=0x091F 0x093E", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN AA ".tA=0x091F 0x093E", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN AA ".ti=0x091F 0x093F", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN I ".tii=0x091F 0x0940", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN II ".tI=0x091F 0x0940", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN II ".tu=0x091F 0x0941", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN U ".tuu=0x091F 0x0942", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN UU ".tU=0x091F 0x0942", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN UU ".t.r=0x091F 0x0943", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC R ".t.R=0x091F 0x0944", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC RR ".t.l=0x091F 0x0962", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC L ".t.L=0x091F 0x0963", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC LL ".te=0x091F 0x0947", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN E ".tai=0x091F 0x0948", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN AI ".to=0x091F 0x094B", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN O ".tau=0x091F 0x094C", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN AU ".t~a=0x091F 0x0945", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN CANDRA E ".t~o=0x091F 0x0949", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN CANDRA O ".t^e=0x091F 0x0946", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN SHORT E ".t^o=0x091F 0x094A", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN SHORT O ".t=0x091F 0x094D", // DEVANAGARI LETTER TTA + DEVANAGARI SIGN VIRAMA ".thaa=0x0920 0x093E", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN AA ".thA=0x0920 0x093E", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN AA ".thi=0x0920 0x093F", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN I ".thii=0x0920 0x0940", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN II ".thI=0x0920 0x0940", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN II ".thu=0x0920 0x0941", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN U ".thuu=0x0920 0x0942", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN UU ".thU=0x0920 0x0942", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN UU ".th.r=0x0920 0x0943", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC R ".th.R=0x0920 0x0944", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC RR ".th.l=0x0920 0x0962", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC L ".th.L=0x0920 0x0963", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC LL ".the=0x0920 0x0947", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN E ".thai=0x0920 0x0948", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN AI ".tho=0x0920 0x094B", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN O ".thau=0x0920 0x094C", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN AU ".th~a=0x0920 0x0945", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN CANDRA E ".th~o=0x0920 0x0949", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN CANDRA O ".th^e=0x0920 0x0946", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN SHORT E ".th^o=0x0920 0x094A", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN SHORT O ".th=0x0920 0x094D", // DEVANAGARI LETTER TTHA + DEVANAGARI SIGN VIRAMA ".daa=0x0921 0x093E", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN AA ".dA=0x0921 0x093E", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN AA ".di=0x0921 0x093F", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN I ".dii=0x0921 0x0940", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN II ".dI=0x0921 0x0940", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN II ".du=0x0921 0x0941", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN U ".duu=0x0921 0x0942", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN UU ".dU=0x0921 0x0942", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN UU ".d.r=0x0921 0x0943", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC R ".d.R=0x0921 0x0944", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC RR ".d.l=0x0921 0x0962", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC L ".d.L=0x0921 0x0963", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC LL ".de=0x0921 0x0947", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN E ".dai=0x0921 0x0948", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN AI ".do=0x0921 0x094B", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN O ".dau=0x0921 0x094C", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN AU ".d~a=0x0921 0x0945", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN CANDRA E ".d~o=0x0921 0x0949", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN CANDRA O ".d^e=0x0921 0x0946", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN SHORT E ".d^o=0x0921 0x094A", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN SHORT O ".d=0x0921 0x094D", // DEVANAGARI LETTER DDA + DEVANAGARI SIGN VIRAMA ".dhaa=0x0922 0x093E", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN AA ".dhA=0x0922 0x093E", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN AA ".dhi=0x0922 0x093F", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN I ".dhii=0x0922 0x0940", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN II ".dhI=0x0922 0x0940", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN II ".dhu=0x0922 0x0941", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN U ".dhuu=0x0922 0x0942", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN UU ".dhU=0x0922 0x0942", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN UU ".dh.r=0x0922 0x0943", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC R ".dh.R=0x0922 0x0944", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC RR ".dh.l=0x0922 0x0962", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC L ".dh.L=0x0922 0x0963", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC LL ".dhe=0x0922 0x0947", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN E ".dhai=0x0922 0x0948", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN AI ".dho=0x0922 0x094B", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN O ".dhau=0x0922 0x094C", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN AU ".dh~a=0x0922 0x0945", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN CANDRA E ".dh~o=0x0922 0x0949", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN CANDRA O ".dh^e=0x0922 0x0946", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN SHORT E ".dh^o=0x0922 0x094A", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN SHORT O ".dh=0x0922 0x094D", // DEVANAGARI LETTER DDHA + DEVANAGARI SIGN VIRAMA ".naa=0x0923 0x093E", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN AA ".nA=0x0923 0x093E", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN AA ".ni=0x0923 0x093F", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN I ".nii=0x0923 0x0940", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN II ".nI=0x0923 0x0940", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN II ".nu=0x0923 0x0941", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN U ".nuu=0x0923 0x0942", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN UU ".nU=0x0923 0x0942", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN UU ".n.r=0x0923 0x0943", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC R ".n.R=0x0923 0x0944", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC RR ".n.l=0x0923 0x0962", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC L ".n.L=0x0923 0x0963", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC LL ".ne=0x0923 0x0947", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN E ".nai=0x0923 0x0948", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN AI ".no=0x0923 0x094B", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN O ".nau=0x0923 0x094C", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN AU ".n~a=0x0921 0x0945", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN CANDRA E ".n~o=0x0921 0x0949", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN CANDRA O ".n^e=0x0921 0x0946", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN SHORT E ".n^o=0x0921 0x094A", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN SHORT O ".n=0x0923 0x094D", // DEVANAGARI LETTER NNA + DEVANAGARI SIGN VIRAMA "taa=0x0924 0x093E", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN AA "tA=0x0924 0x093E", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN AA "ti=0x0924 0x093F", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN I "tii=0x0924 0x0940", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN II "tI=0x0924 0x0940", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN II "tu=0x0924 0x0941", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN U "tuu=0x0924 0x0942", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN UU "tU=0x0924 0x0942", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN UU "t.r=0x0924 0x0943", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC R "t.R=0x0924 0x0944", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC RR "t.l=0x0924 0x0962", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC L "t.L=0x0924 0x0963", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC LL "te=0x0924 0x0947", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN E "tai=0x0924 0x0948", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN AI "to=0x0924 0x094B", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN O "tau=0x0924 0x094C", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN AU "t~a=0x0924 0x0945", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN CANDRA E "t~o=0x0924 0x0949", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN CANDRA O "t^e=0x0924 0x0946", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN SHORT E "t^o=0x0924 0x094A", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN SHORT O "t=0x0924 0x094D", // DEVANAGARI LETTER TA + DEVANAGARI SIGN VIRAMA "thaa=0x0925 0x093E", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN AA "thA=0x0925 0x093E", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN AA "thi=0x0925 0x093F", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN I "thii=0x0925 0x0940", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN II "thI=0x0925 0x0940", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN II "thu=0x0925 0x0941", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN U "thuu=0x0925 0x0942", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN UU "thU=0x0925 0x0942", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN UU "th.r=0x0925 0x0943", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC R "th.R=0x0925 0x0944", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC RR "th.l=0x0925 0x0962", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC L "th.L=0x0925 0x0963", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC LL "the=0x0925 0x0947", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN E "thai=0x0925 0x0948", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN AI "tho=0x0925 0x094B", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN O "thau=0x0925 0x094C", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN AU "th~a=0x0925 0x0945", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN CANDRA E "th~o=0x0925 0x0949", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN CANDRA O "th^e=0x0925 0x0946", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN SHORT E "th^o=0x0925 0x094A", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN SHORT O "th=0x0925 0x094D", // DEVANAGARI LETTER THA + DEVANAGARI SIGN VIRAMA "daa=0x0926 0x093E", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN AA "dA=0x0926 0x093E", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN AA "di=0x0926 0x093F", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN I "dii=0x0926 0x0940", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN II "dI=0x0926 0x0940", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN II "du=0x0926 0x0941", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN U "duu=0x0926 0x0942", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN UU "dU=0x0926 0x0942", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN UU "d.r=0x0926 0x0943", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC R "d.R=0x0926 0x0944", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC RR "d.l=0x0926 0x0962", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC L "d.L=0x0926 0x0963", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC LL "de=0x0926 0x0947", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN E "dai=0x0926 0x0948", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN AI "do=0x0926 0x094B", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN O "dau=0x0926 0x094C", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN AU "d~a=0x0926 0x0945", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN CANDRA E "d~o=0x0926 0x0949", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN CANDRA O "d^e=0x0926 0x0946", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN SHORT E "d^o=0x0926 0x094A", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN SHORT O "d=0x0926 0x094D", // DEVANAGARI LETTER DA + DEVANAGARI SIGN VIRAMA "dhaa=0x0927 0x093E", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN AA "dhA=0x0927 0x093E", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN AA "dhi=0x0927 0x093F", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN I "dhii=0x0927 0x0940", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN II "dhI=0x0927 0x0940", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN II "dhu=0x0927 0x0941", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN U "dhuu=0x0927 0x0942", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN UU "dhU=0x0927 0x0942", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN UU "dh.r=0x0927 0x0943", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC R "dh.R=0x0927 0x0944", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC RR "dh.l=0x0927 0x0962", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC L "dh.L=0x0927 0x0963", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC LL "dhe=0x0927 0x0947", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN E "dhai=0x0927 0x0948", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN AI "dho=0x0927 0x094B", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN O "dhau=0x0927 0x094C", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN AU "dh~a=0x0927 0x0945", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN CANDRA E "dh~o=0x0927 0x0949", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN CANDRA O "dh^e=0x0927 0x0946", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN SHORT E "dh^o=0x0927 0x094A", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN SHORT O "dh=0x0927 0x094D", // DEVANAGARI LETTER DHA + DEVANAGARI SIGN VIRAMA "naa=0x0928 0x093E", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN AA "nA=0x0928 0x093E", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN AA "ni=0x0928 0x093F", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN I "nii=0x0928 0x0940", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN II "nI=0x0928 0x0940", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN II "nu=0x0928 0x0941", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN U "nuu=0x0928 0x0942", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN UU "nU=0x0928 0x0942", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN UU "n.r=0x0928 0x0943", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC R "n.R=0x0928 0x0944", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC RR "n.l=0x0928 0x0962", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC L "n.L=0x0928 0x0963", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC LL "ne=0x0928 0x0947", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN E "nai=0x0928 0x0948", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN AI "no=0x0928 0x094B", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN O "nau=0x0928 0x094C", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN AU "n~a=0x0928 0x0945", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN CANDRA E "n~o=0x0928 0x0949", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN CANDRA O "n^e=0x0928 0x0946", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN SHORT E "n^o=0x0928 0x094A", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN SHORT O "n=0x0928 0x094D", // DEVANAGARI LETTER NA + DEVANAGARI SIGN VIRAMA "_naa=0x0929 0x093E", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN AA "_nA=0x0929 0x093E", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN AA "_ni=0x0929 0x093F", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN I "_nii=0x0929 0x0940", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN II "_nI=0x0929 0x0940", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN II "_nu=0x0929 0x0941", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN U "_nuu=0x0929 0x0942", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN UU "_nU=0x0929 0x0942", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN UU "_n.r=0x0929 0x0943", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN VOCALIC R "_n.R=0x0929 0x0944", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN VOCALIC RR "_n.l=0x0929 0x0962", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN VOCALIC L "_n.L=0x0929 0x0963", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN VOCALIC LL "_ne=0x0929 0x0947", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN E "_nai=0x0929 0x0948", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN AI "_no=0x0929 0x094B", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN O "_nau=0x0929 0x094C", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN AU "_n~a=0x0929 0x0945", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN CANDRA E "_n~o=0x0929 0x0949", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN CANDRA O "_n^e=0x0929 0x0946", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN SHORT E "_n^o=0x0929 0x094A", // DEVANAGARI LETTER NNNA + DEVANAGARI VOWEL SIGN SHORT O "_n=0x0929 0x094D", // DEVANAGARI LETTER NNNA + DEVANAGARI SIGN VIRAMA "paa=0x092A 0x093E", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN AA "pA=0x092A 0x093E", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN AA "pi=0x092A 0x093F", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN I "pii=0x092A 0x0940", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN II "pI=0x092A 0x0940", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN II "pu=0x092A 0x0941", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN U "puu=0x092A 0x0942", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN UU "pU=0x092A 0x0942", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN UU "p.r=0x092A 0x0943", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC R "p.R=0x092A 0x0944", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC RR "p.l=0x092A 0x0962", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC L "p.L=0x092A 0x0963", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC LL "pe=0x092A 0x0947", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN E "pai=0x092A 0x0948", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN AI "po=0x092A 0x094B", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN O "pau=0x092A 0x094C", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN AU "p~a=0x092A 0x0945", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN CANDRA E "p~o=0x092A 0x0949", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN CANDRA O "p^e=0x092A 0x0946", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN SHORT E "p^o=0x092A 0x094A", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN SHORT O "p=0x092A 0x094D", // DEVANAGARI LETTER PA + DEVANAGARI SIGN VIRAMA "phaa=0x092B 0x093E", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN AA "phA=0x092B 0x093E", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN AA "phi=0x092B 0x093F", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN I "phii=0x092B 0x0940", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN II "phI=0x092B 0x0940", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN II "phu=0x092B 0x0941", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN U "phuu=0x092B 0x0942", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN UU "phU=0x092B 0x0942", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN UU "ph.r=0x092B 0x0943", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC R "ph.R=0x092B 0x0944", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC RR "ph.l=0x092B 0x0962", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC L "ph.L=0x092B 0x0963", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC LL "phe=0x092B 0x0947", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN E "phai=0x092B 0x0948", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN AI "pho=0x092B 0x094B", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN O "phau=0x092B 0x094C", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN AU "ph~a=0x092B 0x0945", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN CANDRA E "ph~o=0x092B 0x0949", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN CANDRA O "ph^e=0x092B 0x0946", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN SHORT E "ph^o=0x092B 0x094A", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN SHORT O "ph=0x092B 0x094D", // DEVANAGARI LETTER PHA + DEVANAGARI SIGN VIRAMA "baa=0x092C 0x093E", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN AA "bA=0x092C 0x093E", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN AA "bi=0x092C 0x093F", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN I "bii=0x092C 0x0940", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN II "bI=0x092C 0x0940", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN II "bu=0x092C 0x0941", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN U "buu=0x092C 0x0942", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN UU "bU=0x092C 0x0942", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN UU "b.r=0x092C 0x0943", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC R "b.R=0x092C 0x0944", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC RR "b.l=0x092C 0x0962", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC L "b.L=0x092C 0x0963", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC LL "be=0x092C 0x0947", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN E "bai=0x092C 0x0948", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN AI "bo=0x092C 0x094B", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN O "bau=0x092C 0x094C", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN AU "b~a=0x092C 0x0945", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN CANDRA E "b~o=0x092C 0x0949", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN CANDRA O "b^e=0x092C 0x0946", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN SHORT E "b^o=0x092C 0x094A", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN SHORT O "b=0x092C 0x094D", // DEVANAGARI LETTER BA + DEVANAGARI SIGN VIRAMA "bhaa=0x092D 0x093E", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN AA "bhA=0x092D 0x093E", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN AA "bhi=0x092D 0x093F", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN I "bhii=0x092D 0x0940", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN II "bhI=0x092D 0x0940", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN II "bhu=0x092D 0x0941", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN U "bhuu=0x092D 0x0942", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN UU "bhU=0x092D 0x0942", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN UU "bh.r=0x092D 0x0943", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC R "bh.R=0x092D 0x0944", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC RR "bh.l=0x092D 0x0962", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC L "bh.L=0x092D 0x0963", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC LL "bhe=0x092D 0x0947", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN E "bhai=0x092D 0x0948", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN AI "bho=0x092D 0x094B", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN O "bhau=0x092D 0x094C", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN AU "bh~a=0x092D 0x0945", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN CANDRA E "bh~o=0x092D 0x0949", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN CANDRA O "bh^e=0x092D 0x0946", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN SHORT E "bh^o=0x092D 0x094A", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN SHORT O "bh=0x092D 0x094D", // DEVANAGARI LETTER BHA + DEVANAGARI SIGN VIRAMA "maa=0x092E 0x093E", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN AA "mA=0x092E 0x093E", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN AA "mi=0x092E 0x093F", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN I "mii=0x092E 0x0940", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN II "mI=0x092E 0x0940", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN II "mu=0x092E 0x0941", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN U "muu=0x092E 0x0942", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN UU "mU=0x092E 0x0942", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN UU "m.r=0x092E 0x0943", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC R "m.R=0x092E 0x0944", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC RR "m.l=0x092E 0x0962", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC L "m.L=0x092E 0x0963", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC LL "me=0x092E 0x0947", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN E "mai=0x092E 0x0948", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN AI "mo=0x092E 0x094B", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN O "mau=0x092E 0x094C", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN AU "m~a=0x092E 0x0945", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN CANDRA E "m~o=0x092E 0x0949", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN CANDRA O "m^e=0x092E 0x0946", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN SHORT E "m^o=0x092E 0x094A", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN SHORT O "m=0x092E 0x094D", // DEVANAGARI LETTER MA + DEVANAGARI SIGN VIRAMA "yaa=0x092F 0x093E", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN AA "yA=0x092F 0x093E", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN AA "yi=0x092F 0x093F", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN I "yii=0x092F 0x0940", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN II "yI=0x092F 0x0940", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN II "yu=0x092F 0x0941", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN U "yuu=0x092F 0x0942", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN UU "yU=0x092F 0x0942", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN UU "y.r=0x092F 0x0943", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC R "y.R=0x092F 0x0944", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC RR "y.l=0x092F 0x0962", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC L "y.L=0x092F 0x0963", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC LL "ye=0x092F 0x0947", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN E "yai=0x092F 0x0948", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN AI "yo=0x092F 0x094B", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN O "yau=0x092F 0x094C", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN AU "y~a=0x092F 0x0945", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN CANDRA E "y~o=0x092F 0x0949", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN CANDRA O "y^e=0x092F 0x0946", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN SHORT E "y^o=0x092F 0x094A", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN SHORT O "y=0x092F 0x094D", // DEVANAGARI LETTER YA + DEVANAGARI SIGN VIRAMA "raa=0x0930 0x093E", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN AA "rA=0x0930 0x093E", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN AA "ri=0x0930 0x093F", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN I "rii=0x0930 0x0940", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN II "rI=0x0930 0x0940", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN II "ru=0x0930 0x0941", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN U "ruu=0x0930 0x0942", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN UU "rU=0x0930 0x0942", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN UU "r.r=0x0930 0x094D 0x090B", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC R "r.R=0x0930 0x094D 0x0960", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC RR "r.l=0x0930 0x094D 0x090C", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC L "r.L=0x0930 0x094D 0x0961", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC LL "re=0x0930 0x0947", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN E "rai=0x0930 0x0948", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN AI "ro=0x0930 0x094B", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN O "rau=0x0930 0x094C", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN AU "r~a=0x0930 0x0945", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN CANDRA E "r~o=0x0930 0x0949", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN CANDRA O "r^e=0x0930 0x0946", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN SHORT E "r^o=0x0930 0x094A", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN SHORT O "r=0x0930 0x094D", // DEVANAGARI LETTER RA + DEVANAGARI SIGN VIRAMA "_raa=0x0931 0x093E", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN AA "_rA=0x0931 0x093E", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN AA "_ri=0x0931 0x093F", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN I "_rii=0x0931 0x0940", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN II "_rI=0x0931 0x0940", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN II "_ru=0x0931 0x0941", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN U "_ruu=0x0931 0x0942", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN UU "_rU=0x0931 0x0942", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN UU "_r.r=0x0931 0x094D 0x090B", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN VOCALIC R "_r.R=0x0931 0x094D 0x0960", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN VOCALIC RR "_r.l=0x0931 0x094D 0x090C", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN VOCALIC L "_r.L=0x0931 0x094D 0x0961", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN VOCALIC LL "_re=0x0931 0x0947", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN E "_rai=0x0931 0x0948", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN AI "_ro=0x0931 0x094B", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN O "_rau=0x0931 0x094C", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN AU "_r~a=0x0931 0x0945", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN CANDRA E "_r~o=0x0931 0x0949", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN CANDRA O "_r^e=0x0931 0x0946", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN SHORT E "_r^o=0x0931 0x094A", // DEVANAGARI LETTER RRA + DEVANAGARI VOWEL SIGN SHORT O "_r=0x0931 0x094D", // DEVANAGARI LETTER RRA + DEVANAGARI SIGN VIRAMA "laa=0x0932 0x093E", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN AA "lA=0x0932 0x093E", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN AA "li=0x0932 0x093F", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN I "lii=0x0932 0x0940", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN II "lI=0x0932 0x0940", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN II "lu=0x0932 0x0941", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN U "luu=0x0932 0x0942", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN UU "lU=0x0932 0x0942", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN UU "l.r=0x0932 0x0943", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC R "l.R=0x0932 0x0944", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC RR "l.l=0x0932 0x0962", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC L "l.L=0x0932 0x0963", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC LL "le=0x0932 0x0947", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN E "lai=0x0932 0x0948", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN AI "lo=0x0932 0x094B", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN O "lau=0x0932 0x094C", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN AU "l~a=0x0932 0x0945", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN CANDRA E "l~o=0x0932 0x0949", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN CANDRA O "l^e=0x0932 0x0946", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN SHORT E "l^o=0x0932 0x094A", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN SHORT O "l=0x0932 0x094D", // DEVANAGARI LETTER LA + DEVANAGARI SIGN VIRAMA "Laa=0x0933 0x093E", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN AA "LA=0x0933 0x093E", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN AA "Li=0x0933 0x093F", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN I "Lii=0x0933 0x0940", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN II "LI=0x0933 0x0940", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN II "Lu=0x0933 0x0941", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN U "Luu=0x0933 0x0942", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN UU "LU=0x0933 0x0942", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN UU "L.r=0x0933 0x0943", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC R "L.R=0x0933 0x0944", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC RR "L.l=0x0933 0x0962", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC L "L.L=0x0933 0x0963", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC LL "Le=0x0933 0x0947", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN E "Lai=0x0933 0x0948", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN AI "Lo=0x0933 0x094B", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN O "Lau=0x0933 0x094C", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN AU "L~a=0x0933 0x0945", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN CANDRA E "L~o=0x0933 0x0949", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN CANDRA O "L^e=0x0933 0x0946", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN SHORT E "L^o=0x0933 0x094A", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN SHORT O "L=0x0933 0x094D", // DEVANAGARI LETTER LLA + DEVANAGARI SIGN VIRAMA "_laa=0x0934 0x093E", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN AA "_lA=0x0934 0x093E", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN AA "_li=0x0934 0x093F", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN I "_lii=0x0934 0x0940", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN II "_lI=0x0934 0x0940", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN II "_lu=0x0934 0x0941", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN U "_luu=0x0934 0x0942", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN UU "_lU=0x0934 0x0942", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN UU "_l.r=0x0934 0x0943", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN VOCALIC R "_l.R=0x0934 0x0944", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN VOCALIC RR "_l.l=0x0934 0x0962", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN VOCALIC L "_l.L=0x0934 0x0963", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN VOCALIC LL "_le=0x0934 0x0947", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN E "_lai=0x0934 0x0948", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN AI "_lo=0x0934 0x094B", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN O "_lau=0x0934 0x094C", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN AU "_l~a=0x0934 0x0945", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN CANDRA E "_l~o=0x0934 0x0949", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN CANDRA O "_l^e=0x0934 0x0946", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN SHORT E "_l^o=0x0934 0x094A", // DEVANAGARI LETTER LLLA + DEVANAGARI VOWEL SIGN SHORT O "_l=0x0934 0x094D", // DEVANAGARI LETTER LLLA + DEVANAGARI SIGN VIRAMA "vaa=0x0935 0x093E", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN AA "vA=0x0935 0x093E", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN AA "vi=0x0935 0x093F", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN I "vii=0x0935 0x0940", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN II "vI=0x0935 0x0940", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN II "vu=0x0935 0x0941", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN U "vuu=0x0935 0x0942", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN UU "vU=0x0935 0x0942", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN UU "v.r=0x0935 0x0943", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC R "v.R=0x0935 0x0944", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC RR "v.l=0x0935 0x0962", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC L "v.L=0x0935 0x0963", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC LL "ve=0x0935 0x0947", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN E "vai=0x0935 0x0948", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN AI "vo=0x0935 0x094B", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN O "vau=0x0935 0x094C", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN AU "v~a=0x0935 0x0945", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN CANDRA E "v~o=0x0935 0x0949", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN CANDRA O "v^e=0x0935 0x0946", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN SHORT E "v^o=0x0935 0x094A", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN SHORT O "v=0x0935 0x094D", // DEVANAGARI LETTER VA + DEVANAGARI SIGN VIRAMA "\"saa=0x0936 0x093E", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN AA "\"sA=0x0936 0x093E", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN AA "\"si=0x0936 0x093F", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN I "\"sii=0x0936 0x0940", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN II "\"sI=0x0936 0x0940", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN II "\"su=0x0936 0x0941", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN U "\"suu=0x0936 0x0942", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN UU "\"sU=0x0936 0x0942", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN UU "\"s.r=0x0936 0x0943", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC R "\"s.R=0x0936 0x0944", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC RR "\"s.l=0x0936 0x0962", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC L "\"s.L=0x0936 0x0963", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC LL "\"se=0x0936 0x0947", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN E "\"sai=0x0936 0x0948", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN AI "\"so=0x0936 0x094B", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN O "\"sau=0x0936 0x094C", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN AU "\"s~a=0x0936 0x0945", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN CANDRA E "\"s~o=0x0936 0x0949", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN CANDRA O "\"s^e=0x0936 0x0946", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN SHORT E "\"s^o=0x0936 0x094A", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN SHORT O "\"s=0x0936 0x094D", // DEVANAGARI LETTER SHA + DEVANAGARI SIGN VIRAMA ".saa=0x0937 0x093E", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN AA ".sA=0x0937 0x093E", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN AA ".si=0x0937 0x093F", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN I ".sii=0x0937 0x0940", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN II ".sI=0x0937 0x0940", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN II ".su=0x0937 0x0941", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN U ".suu=0x0937 0x0942", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN UU ".sU=0x0937 0x0942", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN UU ".s.r=0x0937 0x0943", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC R ".s.R=0x0937 0x0944", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC RR ".s.l=0x0937 0x0962", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC L ".s.L=0x0937 0x0963", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC LL ".se=0x0937 0x0947", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN E ".sai=0x0937 0x0948", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN AI ".so=0x0937 0x094B", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN O ".sau=0x0937 0x094C", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN AU ".s~a=0x0937 0x0945", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN CANDRA E ".s~o=0x0937 0x0949", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN CANDRA O ".s^e=0x0937 0x0946", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN SHORT E ".s^o=0x0937 0x094A", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN SHORT O ".s=0x0937 0x094D", // DEVANAGARI LETTER SSA + DEVANAGARI SIGN VIRAMA "saa=0x0938 0x093E", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN AA "sA=0x0938 0x093E", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN AA "si=0x0938 0x093F", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN I "sii=0x0938 0x0940", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN II "sI=0x0938 0x0940", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN II "su=0x0938 0x0941", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN U "suu=0x0938 0x0942", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN UU "sU=0x0938 0x0942", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN UU "s.r=0x0938 0x0943", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC R "s.R=0x0938 0x0944", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC RR "s.l=0x0938 0x0962", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC L "s.L=0x0938 0x0963", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC LL "se=0x0938 0x0947", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN E "sai=0x0938 0x0948", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN AI "so=0x0938 0x094B", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN O "sau=0x0938 0x094C", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN AU "s~a=0x0938 0x0945", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN CANDRA E "s~o=0x0938 0x0949", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN CANDRA O "s^e=0x0938 0x0946", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN SHORT E "s^o=0x0938 0x094A", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN SHORT O "s=0x0938 0x094D", // DEVANAGARI LETTER SA + DEVANAGARI SIGN VIRAMA "haa=0x0939 0x093E", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN AA "hA=0x0939 0x093E", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN AA "hi=0x0939 0x093F", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN I "hii=0x0939 0x0940", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN II "hI=0x0939 0x0940", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN II "hu=0x0939 0x0941", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN U "huu=0x0939 0x0942", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN UU "hU=0x0939 0x0942", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN UU "h.r=0x0939 0x0943", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC R "h.R=0x0939 0x0944", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC RR "h.l=0x0939 0x0962", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC L "h.L=0x0939 0x0963", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC LL "he=0x0939 0x0947", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN E "hai=0x0939 0x0948", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN AI "ho=0x0939 0x094B", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN O "hau=0x0939 0x094C", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN AU "h~a=0x0939 0x0945", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN CANDRA E "h~o=0x0939 0x0949", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN CANDRA O "h^e=0x0939 0x0946", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN SHORT E "h^o=0x0939 0x094A", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN SHORT O "h=0x0939 0x094D", // DEVANAGARI LETTER HA + DEVANAGARI SIGN VIRAMA // // Additional Consonants with dependent vowel signs or virama // "qaa=0x0958 0x093E", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN AA "qA=0x0958 0x093E", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN AA "qi=0x0958 0x093F", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN I "qii=0x0958 0x0940", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN II "qI=0x0958 0x0940", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN II "qu=0x0958 0x0941", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN U "quu=0x0958 0x0942", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN UU "qU=0x0958 0x0942", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN UU "q.r=0x0958 0x0943", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN VOCALIC R "q.R=0x0958 0x0944", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN VOCALIC RR "q.l=0x0958 0x0962", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN VOCALIC L "q.L=0x0958 0x0963", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN VOCALIC LL "qe=0x0958 0x0947", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN E "qai=0x0958 0x0948", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN AI "qo=0x0958 0x094B", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN O "qau=0x0958 0x094C", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN AU "q~a=0x0958 0x0945", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN CANDRA E "q~o=0x0958 0x0949", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN CANDRA O "q^e=0x0958 0x0946", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN SHORT E "q^o=0x0958 0x094A", // DEVANAGARI LETTER QA + DEVANAGARI VOWEL SIGN SHORT O "q=0x0958 0x094D", // DEVANAGARI LETTER QA + DEVANAGARI SIGN VIRAMA ".khaa=0x0959 0x093E", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN AA ".khA=0x0959 0x093E", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN AA ".khi=0x0959 0x093F", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN I ".khii=0x0959 0x0940", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN II ".khI=0x0959 0x0940", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN II ".khu=0x0959 0x0941", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN U ".khuu=0x0959 0x0942", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN UU ".khU=0x0959 0x0942", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN UU ".kh.r=0x0959 0x0943", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN VOCALIC R ".kh.R=0x0959 0x0944", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN VOCALIC RR ".kh.l=0x0959 0x0962", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN VOCALIC L ".kh.L=0x0959 0x0963", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN VOCALIC LL ".khe=0x0959 0x0947", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN E ".khai=0x0959 0x0948", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN AI ".kho=0x0959 0x094B", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN O ".khau=0x0959 0x094C", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN AU ".kh~a=0x0959 0x0945", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN CANDRA E ".kh~o=0x0959 0x0949", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN CANDRA O ".kh^e=0x0959 0x0946", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN SHORT E ".kh^o=0x0959 0x094A", // DEVANAGARI LETTER KHHA + DEVANAGARI VOWEL SIGN SHORT O ".kh=0x0959 0x094D", // DEVANAGARI LETTER KHHA + DEVANAGARI SIGN VIRAMA ".gaa=0x095A 0x093E", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN AA ".gA=0x095A 0x093E", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN AA ".gi=0x095A 0x093F", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN I ".gii=0x095A 0x0940", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN II ".gI=0x095A 0x0940", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN II ".gu=0x095A 0x0941", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN U ".guu=0x095A 0x0942", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN UU ".gU=0x095A 0x0942", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN UU ".g.r=0x095A 0x0943", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN VOCALIC R ".g.R=0x095A 0x0944", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN VOCALIC RR ".g.l=0x095A 0x0962", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN VOCALIC L ".g.L=0x095A 0x0963", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN VOCALIC LL ".ge=0x095A 0x0947", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN E ".gai=0x095A 0x0948", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN AI ".go=0x095A 0x094B", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN O ".gau=0x095A 0x094C", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN AU ".g~a=0x095A 0x0945", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN CANDRA E ".g~o=0x095A 0x0949", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN CANDRA O ".g^e=0x095A 0x0946", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN SHORT E ".g^o=0x095A 0x094A", // DEVANAGARI LETTER GHHA + DEVANAGARI VOWEL SIGN SHORT O ".g=0x095A 0x094D", // DEVANAGARI LETTER GHHA + DEVANAGARI SIGN VIRAMA "zaa=0x095B 0x093E", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN AA "zA=0x095B 0x093E", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN AA "zi=0x095B 0x093F", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN I "zii=0x095B 0x0940", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN II "zI=0x095B 0x0940", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN II "zu=0x095B 0x0941", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN U "zuu=0x095B 0x0942", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN UU "zU=0x095B 0x0942", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN UU "z.r=0x095B 0x0943", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN VOCALIC R "z.R=0x095B 0x0944", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN VOCALIC RR "z.l=0x095B 0x0962", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN VOCALIC L "z.L=0x095B 0x0963", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN VOCALIC LL "ze=0x095B 0x0947", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN E "zai=0x095B 0x0948", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN AI "zo=0x095B 0x094B", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN O "zau=0x095B 0x094C", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN AU "z~a=0x095B 0x0945", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN CANDRA E "z~o=0x095B 0x0949", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN CANDRA O "z^e=0x095B 0x0946", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN SHORT E "z^o=0x095B 0x094A", // DEVANAGARI LETTER ZA + DEVANAGARI VOWEL SIGN SHORT O "z=0x095B 0x094D", // DEVANAGARI LETTER ZA + DEVANAGARI SIGN VIRAMA "Raa=0x095C 0x093E", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN AA "RA=0x095C 0x093E", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN AA "Ri=0x095C 0x093F", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN I "Rii=0x095C 0x0940", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN II "RI=0x095C 0x0940", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN II "Ru=0x095C 0x0941", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN U "Ruu=0x095C 0x0942", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN UU "RU=0x095C 0x0942", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN UU "R.r=0x095C 0x0943", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN VOCALIC R "R.R=0x095C 0x0944", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN VOCALIC RR "R.l=0x095C 0x0962", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN VOCALIC L "R.L=0x095C 0x0963", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN VOCALIC LL "Re=0x095C 0x0947", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN E "Rai=0x095C 0x0948", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN AI "Ro=0x095C 0x094B", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN O "Rau=0x095C 0x094C", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN AU "R~a=0x095C 0x0945", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN CANDRA E "R~o=0x095C 0x0949", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN CANDRA O "R^e=0x095C 0x0946", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN SHORT E "R^o=0x095C 0x094A", // DEVANAGARI LETTER DDDHA + DEVANAGARI VOWEL SIGN SHORT O "R=0x095C 0x094D", // DEVANAGARI LETTER DDDHA + DEVANAGARI SIGN VIRAMA "Rhaa=0x095D 0x093E", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN AA "RhA=0x095D 0x093E", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN AA "Rhi=0x095D 0x093F", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN I "Rhii=0x095D 0x0940", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN II "RhI=0x095D 0x0940", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN II "Rhu=0x095D 0x0941", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN U "Rhuu=0x095D 0x0942", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN UU "RhU=0x095D 0x0942", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN UU "Rh.r=0x095D 0x0943", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN VOCALIC R "Rh.R=0x095D 0x0944", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN VOCALIC RR "Rh.l=0x095D 0x0962", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN VOCALIC L "Rh.L=0x095D 0x0963", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN VOCALIC LL "Rhe=0x095D 0x0947", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN E "Rhai=0x095D 0x0948", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN AI "Rho=0x095D 0x094B", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN O "Rhau=0x095D 0x094C", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN AU "Rh~a=0x095D 0x0945", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN CANDRA E "Rh~o=0x095D 0x0949", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN CANDRA O "Rh^e=0x095D 0x0946", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN SHORT E "Rh^o=0x095D 0x094A", // DEVANAGARI LETTER RHA + DEVANAGARI VOWEL SIGN SHORT O "Rh=0x095D 0x094D", // DEVANAGARI LETTER RHA + DEVANAGARI SIGN VIRAMA "faa=0x095E 0x093E", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN AA "fA=0x095E 0x093E", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN AA "fi=0x095E 0x093F", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN I "fii=0x095E 0x0940", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN II "fI=0x095E 0x0940", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN II "fu=0x095E 0x0941", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN U "fuu=0x095E 0x0942", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN UU "fU=0x095E 0x0942", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN UU "f.r=0x095E 0x0943", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN VOCALIC R "f.R=0x095E 0x0944", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN VOCALIC RR "f.l=0x095E 0x0962", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN VOCALIC L "f.L=0x095E 0x0963", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN VOCALIC LL "fe=0x095E 0x0947", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN E "fai=0x095E 0x0948", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN AI "fo=0x095E 0x094B", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN O "fau=0x095E 0x094C", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN AU "f~a=0x095E 0x0945", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN CANDRA E "f~o=0x095E 0x0949", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN CANDRA O "f^e=0x095E 0x0946", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN SHORT E "f^o=0x095E 0x094A", // DEVANAGARI LETTER FA + DEVANAGARI VOWEL SIGN SHORT O "f=0x095E 0x094D", // DEVANAGARI LETTER FA + DEVANAGARI SIGN VIRAMA ".yaa=0x095F 0x093E", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN AA ".yA=0x095F 0x093E", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN AA ".yi=0x095F 0x093F", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN I ".yii=0x095F 0x0940", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN II ".yI=0x095F 0x0940", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN II ".yu=0x095F 0x0941", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN U ".yuu=0x095F 0x0942", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN UU ".yU=0x095F 0x0942", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN UU ".y.r=0x095F 0x0943", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN VOCALIC R ".y.R=0x095F 0x0944", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN VOCALIC RR ".y.l=0x095F 0x0962", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN VOCALIC L ".y.L=0x095F 0x0963", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN VOCALIC LL ".ye=0x095F 0x0947", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN E ".yai=0x095F 0x0948", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN AI ".yo=0x095F 0x094B", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN O ".yau=0x095F 0x094C", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN AU ".y~a=0x095F 0x0945", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN CANDRA E ".y~o=0x095F 0x0949", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN CANDRA O ".y^e=0x095F 0x0946", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN SHORT E ".y^o=0x095F 0x094A", // DEVANAGARI LETTER YYA + DEVANAGARI VOWEL SIGN SHORT O ".y=0x095F 0x094D", // DEVANAGARI LETTER YYA + DEVANAGARI SIGN VIRAMA // // Signs // "/=0x0901", // DEVANAGARI SIGN CANDRABINDU ".m=0x0902", // DEVANAGARI SIGN ANUSVARA ".h=0x0903", // DEVANAGARI SIGN VISARGA "~r=0x0930 0x094D 0x200D", // DEVANAGARI EYELASH RA (also 0x0931 0x094D ?) ".a=0x093D", // DEVANAGARI SIGN AVAGRAHA ".o=0x0950", // DEVANAGARI OM "|=0x0964", // DEVANAGARI DANDA "||=0x0965", // DEVANAGARI DOUBLE DANDA "@=0x0970", // DEVANAGARI ABBREVIATION SIGN // // Viramas // // With the exception of _ these 'viramas' depend on the virama explicitly // mapped in the tables as consonants with virama. // // 1. _ is the independent virama sign. // // 2. & and {} are used after a consonant with no encoded vowel to affirm the // virama. These are CHAR + U+094D + U+0200C. // // 3. + is used to produce a half-consonant. This is CHAR + U+094D + U+200D. //"_=0x094D", // DEVANAGARI SIGN VIRAMA "&=0x200C", // ZERO WIDTH NON-JOINER "{}=0x200C", // ZERO WIDTH NON-JOINER "+=0x200D", // ZERO WIDTH JOINER // // Digits // "0x30=0x0966", // DEVANAGARI DIGIT ZERO "0x31=0x0967", // DEVANAGARI DIGIT ONE "0x32=0x0968", // DEVANAGARI DIGIT TWO "0x33=0x0969", // DEVANAGARI DIGIT THREE "0x34=0x096A", // DEVANAGARI DIGIT FOUR "0x35=0x096B", // DEVANAGARI DIGIT FIVE "0x36=0x096C", // DEVANAGARI DIGIT SIX "0x37=0x096D", // DEVANAGARI DIGIT SEVEN "0x38=0x096E", // DEVANAGARI DIGIT EIGHT "0x39=0x096F", // DEVANAGARI DIGIT NINE // end./mytool/kmap/BlissSymbolics.kmap0000644000175000017500000001116407664253646017150 0ustar henrichhenrich// // Blissymbolic62 font set in the private section of // unicode at 0xE000. "0x20=0xE000", // Space "!=0xE024", // Intensity "0x22=0xE098", // open "#=0xE09A", // Room "$=0xE06A", // Wheel "%=0xE07B", // Ear "&=0xE07C", // Language "'=0xE052", // Quote "(=0xE062", // Ground ")=0xE064", // Sky "*=0xE09B", // This "+=0xE007", // Plus "0x2C=0xE026", // Comma "-=0xE008", // Minus ".=0xE020", // Period "/=0xE03B", // Material-Thing "0x30=0xE010", // Zero "0x31=0xE011", // One "0x32=0xE012", // Two "0x33=0xE013", // Three "0x34=0xE014", // Four "0x35=0xE015", // Five "0x36=0xE016", // Six "0x37=0xE017", // Seven "0x38=0xE018", // Eight "0x39=0xE019", // Nine ":=0xE027", // Colon ";=0xE096", // Small-Mid-Location "<=0xE04C", // Ago "0x3D=0xE00D", // Equals ">=0xE04F", // Hence "?=0xE025", // Question "@=0xE075", // Mid-Water "A=0xE07A", // Mouth "B=0xE04D", // Past "C=0xE068", // Lower-Half-Sky "D=0xE03E", // Activity "E=0xE037", // Up "F=0xE063", // Mid-Plane "G=0xE061", // It "H=0xE067", // Upper-Half-Ground "I=0xE071", // Table "J=0xE034", // Mid-Forward-Pointer "K=0xE03A", // Thing "L=0xE07D", // Hand "M=0xE074", // Ground-Water "N=0xE04E", // Future "O=0xE084", // Walk "P=0xE07F", // Arm "Q=0xE031", // Progress "R=0xE036", // Down "S=0xE077", // Hold "T=0xE03C", // Hidden-Thing "U=0xE070", // Chair "V=0xE054", // Month "W=0xE02F", // Reverse "X=0xE03D", // Action "Y=0xE09D", // Opposite-Meaning "Z=0xE044", // Evaluation "[=0xE003", // Quarter-Space "0x5C=0xE053", // Degrees "]=0xE004", // Eighth-Space "^=0xE05C", // Upper-Circle "_=0xE09C", // That "`=0xE091", // Love "a=0xE093", // Location "b=0xE04B", // Past-Tense "c=0xE02C", // Passive-Indicator "d=0xE009", // Many "e=0xE079", // Wings "f=0xE00A", // Multiple "g=0xE05D", // Lower-Circle "h=0xE06E", // Half-Open "i=0xE08D", // Emotion "j=0xE08B", // Pen "k=0xE05A", // Destruction "l=0xE065", // Half-Ground "m=0xE00B", // Plural "n=0xE050", // Future-Tense "o=0xE001", // Whole-Space "p=0xE002", // Half-Space "q=0xE08E", // Emotion-ID "r=0xE060", // Individual "s=0xE069", // Half-Sky "t=0xE05E", // Male "u=0xE06D", // Protection "v=0xE02B", // Active-Indicator "w=0xE08CF", // Conscience "x=0xE03F", // Physical-Action "y=0xE05F", // Female "z=0xE049", // Human-Evaluation "{=0xE021", // Low-Sky-Period "|=0xE043", // Work "}=0xE006", // Plus "~=0xE073", // Fire "0xA1=0xE033", // Sky-Forward-Pointer "0xA2=0xE042", // Ground-Action "0xA3=0xE041", // Mid-Action "0xA4=0xE09E", // Metaphor "0xA5=0xE040", // Sky-Action "0xA6=0xE02A", // Sky-Back-Pointer "0xA7=0xE092", // Pretentious "0xAA=0xE047", // Sky-Evaluation "0xAB=0xE028", // Ground-Back-Pointer "0xAC=0xE087", // Grass "0xB0=0xE038", // Separaton "0xB1=0xE0A2", // Illness "0xB2=0xE0A8", // Yoke "0xB5=0xE045", // Ground-Evaluation "0xB6=0xE085", // Tree-Top "0xB7=0xE035", // Competition "0xBA=0xE055", // Turn "0xBB=0xE029", // Mid-Back-Pointer "0xBC=0xE0A0", // Need "0xBD=0xE02D", // Ground-Forward-Pointer "0xBF=0xE058", // Envelope "0xC0=0xE099", // Close "0xC4=0xE030", // To-and-Fro "0xC5=0xE088", // Upper-Grass "0xC6=0xE0A7", // Stone "0xC7=0xE086", // Roots "0xC9=0xE048", // Pre-Human-Evaluation "0xCA=0xE01A", // shift-one "0xCB=0xE01B", // shift-two "0xCC=0xE01C", // shift-three "0xCD=0xE01D", // shift-four "0xCE=0xE00E", // Relation-Small-Less "0xCF=0xE01F", // Relation-Small-Greater "0xD0=0xE0AF", // Reserved "0xD1=0xE080", // Head "0xD2=0xE005", // Sixteenth-Space "0xD3=0xE08C", // Mid Pen "0xD4=0xE00C", // Divide "0xD5=0xE04A", // Post-Human-Evaluation "0xD6=0xE097", // Upper-Location "0xD7=0xE095", // Mid-Location "0xD8=0xE082", // Hair "0xD9=0xE0AB", // Tail "0xDA=0xE0AE", // Top-Lower-Half-Circle "0xDB=0xE0A9", // Horns "0xDC=0xE081", // Nose "0xDD=0xE0AC", // Upper-Half-Circle "0xDE=0xE0AD", // Lower-Half-Circle "0xDF=0xE076", // Sky-Water "0xE0=0xE06B", // Transport "0xE1=0xE02E", // Disagreement "0xE2=0xE0A6", // Make "0xE3=0xE083", // Wisker "0xE4=0xE0A5", // Spirit "0xE5=0xE090", // Super-Ego "0xE6=0xE072", // Bed "0xE7=0xE05B", // Mid-Destroy "0xE8=0xE0A1", // Break "0xE9=0xE032", // Agreement "0xEA=0xE09F", // Help "0xEB=0xE059", // Music "0xEC=0xE00F", // Relation-Less "0xED=0xE066", // Lower-Half-Ground "0xEE=0xE094", // Split-Location "0xEF=0xE01E", // Relation-Greater "0xF0=0xE089", // Stem "0xF1=0xE046", // Mid-Evaluation "0xF2=0xE057", // Electricity "0xF3=0xE039", // Gathering "0xF4=0xE0A3", // Natural "0xF5=0xE0AA", // Claw "0xF6=0xE06F", // Stairs "0xF7=0xE056", // Jump "0xF8=0xE08A", // Below-Ground-Stem "0xF9=0xE022", // Lower-Sky-Period "0xFA=0xE051", // Either "0xFB=0xE078", // Flag "0xFC=0xE0A4", // Supra Natural "0xFD=0xE06C", // Evening "0xFE=0xE07E", // right-hand "0xFF=0xE023", // Upper-Ground-Period ./mytool/kmap/GrandLatin.kmap0000644000175000017500000000655207765355504016235 0ustar henrichhenrich// grandlatin.kmap for the Unicode editor Yudit // July 5, 2001 - Maarten van Gompel (Proycon) // This keymap contains support for ALL unicode latin characters, instead of having // to use a special keymap for each european language while many of them share the same characters... ".!=0x00A1", "c$=0x00A2", "L$=0x00A3", "Y$=0x00A5", ".?=0x00BF", "A`=0x00C0", "A'=0x00C1", "A^=0x00C2", "A~=0x00C3", "A:=0x00C4", "A%=0x00C5", "A/=0x00C6", "C;=0x00C7", "E`=0x00C8", "E'=0x00C9", "E^=0x00CA", "E>=0x00CA" "E:=0x00CB", "I`=0x00CC", "I'=0x00CD", "I^=0x00CE", "I>=0x00CE", "I:=0x00CF", "D/=0x00D0", "N~=0x00D1", "O`=0x00D2", "O'=0x00D3", "O^=0x00D4", "O>=0x00D4", "O~=0x00D5", "O:=0x00D6", "x*=0x00D7", "O/=0x00D8", "U`=0x00D9", "U'=0x00DA", "U^=0x00DB", "U>=0x00DB", "U:=0x00DC", "Y'=0x00DD", "T/=0x00DE", "S/=0x00DF", "a`=0x00E0", "a'=0x00E1", "a^=0x00E2", "a>=0x00E2", "a~=0x00E3", "a:=0x00E4", "a%=0x00E5", "a/=0x00E6", "c;=0x00E7", "e`=0x00E8", "e'=0x00E9", "e^=0x00EA", "e>=0x00EA", "e:=0x00EB", "i`=0x00EC", "i'=0x00ED", "i^=0x00EE", "i>=0x00EE", "i:=0x00EF", "d/=0x00F0", "n~=0x00F1", "o`=0x00F2", "o'=0x00F3", "o^=0x00F4", "o>=0x00F4", "o~=0x00F5", "o:=0x00F6", "-*=0x00F7", "o/=0x00F8", "u`=0x00F9", "u'=0x00FA", "u^=0x00FB", "u>=0x00FB", "u:=0x00FC", "y'=0x00FD", "t/=0x00FE", "y:=0x00FF", "A_=0x0100", "a_=0x0101", "A<=0x0102", "a<=0x0103", "A;=0x0104", "a;=0x0105", "C'=0x0106", "c'=0x0107", "C^=0x0108", "c^=0x0109", "C*=0x010A", "c*=0x010B", "C<=0x010C", "c<=0x010D", "D<=0x010E", "d'=0x010F", "d_=0x0111", "E_=0x0112", "e_=0x0113", "E<=0x0114", "e<=0x0115", "E*=0x0116", "e*=0x0117", "E;=0x0118", "e;=0x0119", "E<=0x011A", "e<=0x011B", "G^=0x011C", "g^=0x011D", "G<=0x011E", "g<=0x011F", "G*=0x0120", "g*=0x0121", "G;=0x0122", "g;=0x0123", "H^=0x0124", "h^=0x0125", "H_=0x0126", "h_=0x0127", "I~=0x0128", "i~=0x0129", "I_=0x012A", "i_=0x012B", "I<=0x012C", "i<=0x012D", "I;=0x012E", "i;=0x012F", "I*=0x0130", "i*=0x0131", "y/=0x0132", "y/=0x0133", "J^=0x0134", "j^=0x0135", "K;=0x0136", "k;=0x0137", "k/=0x0138", "L'=0x0139", "l'=0x013A", "L;=0x013B", "l;=0x013C", "L`=0x013D", "l`=0x013E", "L*=0x013F", "l*=0x0140", "L/=0x0141", "l/=0x0142", "N'=0x0143", "n'=0x0144", "N;=0x0145", "n;=0x0146", "N<=0x0147", "n<=0x0148", "n`=0x0149", "N;=0x014A", "n;=0x014B", "O_=0x014C", "o_=0x014D", "O<=0x014E", "o<=0x014F", "O*=0x0150", "o*=0x0151", "O+=0x0152", "o+=0x0153", "R'=0x0154", "r'=0x0155", "R;=0x0156", "r;=0x0157", "R<=0x0158", "r<=0x0159", "S'=0x015A", "s'=0x015B", "S^=0x015C", "s^=0x015D", "S;=0x015E", "s;=0x015F", "S<=0x0160", "s<=0x0161", "T;=0x0162", "t;=0x0163", "T<=0x0164", "t<=0x0165", "T_=0x0166", "t_=0x0167", "U~=0x0168", "u~=0x0169", "U_=0x016A", "u_=0x016B", "U<=0x016C", "u<=0x016D", "U%=0x016E", "u%=0x016F", "U+=0x0170", "u+=0x0171", "U;=0x0172", "u;=0x0173", "W^=0x0174", "w^=0x0175", "Y^=0x0176", "y^=0x0177", "Y:=0x0178", "Z'=0x0179", "z'=0x017A", "Z*=0x017B", "z*=0x017C", "Z<=0x017D", "z<=0x017E", "f/=0x017F", "a{=0x01CE", "o{=0x01D2", "i{=0x01D0", "u{=0x01D4", ".S=0x01A7", ".s=0x01A8", ".E=0x018F", ".e=0x01DD", // Added by gaspar "iO = 0x2139 0x20DD", // i + combining enclosing O "g~=g 0x0303", // combining g ~ "G~=G 0x0303", // combining G ~ "E$ = 0x20AC", "e$ = 0x20AC", "'' = 0x201D", // ” RIGHT DOUBLE QUOTATION MARK ",,=0x201E", // „ DOUBLE LOW-9 QUOTATION MARK "``=0x201C", // “ LEFT DOUBLE QUOTATION MARK "...=0x2026", // … "--=0x2013", // – ./mytool/kmap/Kanji.kmap0000644000175000017500000153056707633003756015250 0ustar henrichhenrich// kanji.kmap for the Unicode editor Yudit // 2003-03-03 David Oftedal david@start.no // Extracted from edict, (c) EDRG // http://www.csse.monash.edu.au/groups/edrdg/ // EDICT has a proprietary license, which can be found at the web site. // Also includes the Kana keymap bundled with Yudit. // Special thanks go out to Jim Breen for making edict, // and to lejordet, Miikka-Markus.Alhonen, Gaspar Sinai, odin of Real Fansubs and the Unicode // mailing list, without whose invaluable support this project would probably never have been done. // ============================================================================ // // Kana.kmap (Japanese Phonograms) // // WARNING // ------- // This version of Kana.kmap is different from the one that has been used // with yudit-2.7.2 or earlier. The main difference is that this kmap is // arranged in such a way that it complies with an authorized Japanese // transliteration. As a result, backward compatibility is not guaranteed. // // NOTE // ---- // 1. In general, the transliteration is based on Japanese Government's // Cabinet Notification 1 (Dec. 9, 1954). // // Summary: // // (1) To transliterate Japanese language, Table 1 should be used // primarily. // (2) Table 2 may be used only when existing conventions such as // international relationship should be respected. // (3) Other transliteration is acceptable only when neither Table 1 // nor Table 2 gives any specification of the sound in question // // For details, refer to // // http://xembho.tripod.com/siryo/naikaku_kokuzi.html // // 2. The specification instructed by the Cabinet Notification is rather // inadequate even for daily use. At the present time there are thus // many unauthorized but widely accepted conventions used together with // the authorized transliteration. This kmap contains some of them for // user's convenience (cf. Hiragana 3 and Katakana 3). // // 3. For the unicode mapping relevant to this kmap, refer to 3075--30F5 of // // http://www.macchiato.com/unicode/charts.html // // HISTORY // ------- // 2003-01-22 // // * Submitted to gsinai@yudit.org // // ============================================================================ // ---------------------------------------------------------------------------- // Kigou (Punctuation etc.) // ---------------------------------------------------------------------------- "0x20 =0x3000", ",=0x3001", ".=0x3002", ",,=0x3003", "xx=0x3006", "@=0x3007", "<=0x3008", ">=0x3009", "<<=0x300A", ">>=0x300B" "{=0x300C", "}=0x300D", "{{=0x300E", "}}=0x300F", "[.(=0x3010", ").]=0x3011", "[=0x3014", "]=0x3015", "[(=0x3016", ")]=0x3017", "[[=0x301A", "]]=0x301B", "..=0x30FB", "-=0x30FC", // ---------------------------------------------------------------------------- // Hiragana 1 --- Table 1, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "a=0x3042", "i=0x3044", "u=0x3046", "e=0x3048", "o=0x304A", "ka=0x304B", "ki=0x304D", "ku=0x304F", "ke=0x3051", "ko=0x3053", "sa=0x3055", "si=0x3057", "su=0x3059", "se=0x305B", "so=0x305D", "ta=0x305F", "ti=0x3061", "tu=0x3064", "te=0x3066", "to=0x3068", "na=0x306A", "ni=0x306B", "nu=0x306C", "ne=0x306D", "no=0x306E", "ha=0x306F", "hi=0x3072", "hu=0x3075", "he=0x3078", "ho=0x307B", "ma=0x307E", "mi=0x307F", "mu=0x3080", "me=0x3081", "mo=0x3082", "ya=0x3084", "yu=0x3086", "yo=0x3088", "ra=0x3089", "ri=0x308A", "ru=0x308B", "re=0x308C", "ro=0x308D", "wa=0x308F", "ga=0x304C", "gi=0x304E", "gu=0x3050", "ge=0x3052", "go=0x3054", "za=0x3056", "zi=0x3058", "zu=0x305A", "ze=0x305C", "zo=0x305E", "da=0x3060", "de=0x3067", "do=0x3069", "ba=0x3070", "bi=0x3073", "bu=0x3076", "be=0x3079", "bo=0x307C", "pa=0x3071", "pi=0x3074", "pu=0x3077", "pe=0x307A", "po=0x307D", "kya=0x304D 0x3083", "kyu=0x304D 0x3085", "kyo=0x304D 0x3087", "sya=0x3057 0x3083", "syu=0x3057 0x3085", "syo=0x3057 0x3087", "tya=0x3061 0x3083", "tyu=0x3061 0x3085", "tyo=0x3061 0x3087", "nya=0x306B 0x3083", "nyu=0x306B 0x3085", "nyo=0x306B 0x3087", "hya=0x3072 0x3083", "hyu=0x3072 0x3085", "hyo=0x3072 0x3087", "mya=0x307F 0x3083", "myu=0x307F 0x3085", "myo=0x307F 0x3087", "rya=0x308A 0x3083", "ryu=0x308A 0x3085", "ryo=0x308A 0x3087", "gya=0x304E 0x3083", "gyu=0x304E 0x3085", "gyo=0x304E 0x3087", "zya=0x3058 0x3083", "zyu=0x3058 0x3085", "zyo=0x3058 0x3087", "bya=0x3073 0x3083", "byu=0x3073 0x3085", "byo=0x3073 0x3087", "pya=0x3074 0x3083", "pyu=0x3074 0x3085", "pyo=0x3074 0x3087", "n=0x3093", "n'=0x3093", // ---------------------------------------------------------------------------- // Hiragana 2 --- Table 2, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "sha=0x3057 0x3083", "shi=0x3057", "shu=0x3057 0x3085", "sho=0x3057 0x3087", "tsu=0x3064", "cha=0x3061 0x3083", "chi=0x3061", "chu=0x3061 0x3085", "cho=0x3061 0x3087", "fu=0x3075", "ja=0x3058 0x3083", "ji=0x3058", "ju=0x3058 0x3085", "jo=0x3058 0x3087", "di=0x3062", "du=0x3065", "dya=0x3062 0x3083", "dyu=0x3062 0x3085", "dyo=0x3062 0x3087", "kwa=0x304F 0x308E", "gwa=0x3050 0x308E", "wo=0x3092", // ---------------------------------------------------------------------------- // Hiragana 3 --- Conventional transliterations // ---------------------------------------------------------------------------- // Small Hiragana: The prefix X is never pronounced. It is used as something // like an escape character. "xa=0x3041", "xi=0x3043", "xu=0x3045", "xe=0x3047", "xo=0x3049", "xtu=0x3063", "xya=0x3083", "xyu=0x3085", "xyo=0x3087", "xwa=0x308E", // Historic `wi' and `we' "wi=0x3090", "we=0x3091", // Preceded by a small `tu' "kka=0x3063 0x304B", "kki=0x3063 0x304D", "kku=0x3063 0x304F", "kke=0x3063 0x3051", "kko=0x3063 0x3053", "ssa=0x3063 0x3055", "ssi=0x3063 0x3057", "ssu=0x3063 0x3059", "sse=0x3063 0x305B", "sso=0x3063 0x305D", "tta=0x3063 0x305F", "tti=0x3063 0x3061", "ttu=0x3063 0x3064", "tte=0x3063 0x3066", "tto=0x3063 0x3068", "hha=0x3063 0x306F", "hhi=0x3063 0x3072", "hhu=0x3063 0x3075", "hhe=0x3063 0x3078", "hho=0x3063 0x307B", "mma=0x3063 0x307E", "mmi=0x3063 0x307F", "mmu=0x3063 0x3080", "mme=0x3063 0x3081", "mmo=0x3063 0x3082", "yya=0x3063 0x3084", "yyu=0x3063 0x3086", "yyo=0x3063 0x3088", "rra=0x3063 0x3089", "rri=0x3063 0x308A", "rru=0x3063 0x308B", "rre=0x3063 0x308C", "rro=0x3063 0x308D", "wwa=0x3063 0x308F", "gga=0x3063 0x304C", "ggi=0x3063 0x304E", "ggu=0x3063 0x3050", "gge=0x3063 0x3052", "ggo=0x3063 0x3054", "zza=0x3063 0x3056", "zzi=0x3063 0x3058", "zzu=0x3063 0x305A", "zze=0x3063 0x305C", "zzo=0x3063 0x305E", "dda=0x3063 0x3060", "ddi=0x3063 0x3062", "ddu=0x3063 0x3065", "dde=0x3063 0x3067", "ddo=0x3063 0x3069", "bba=0x3063 0x3070", "bbi=0x3063 0x3073", "bbu=0x3063 0x3076", "bbe=0x3063 0x3079", "bbo=0x3063 0x307C", "ppa=0x3063 0x3071", "ppi=0x3063 0x3074", "ppu=0x3063 0x3077", "ppe=0x3063 0x307A", "ppo=0x3063 0x307D", // Proceded by a small `tu' and followed by a small 'ya', 'yu' or 'yo' "kkya=0x3063 0x304D 0x3083", "kkyu=0x3063 0x304D 0x3085", "kkyo=0x3063 0x304D 0x3087", "ssya=0x3063 0x3057 0x3083", "ssyu=0x3063 0x3057 0x3085", "ssyo=0x3063 0x3057 0x3087", "ttya=0x3063 0x3061 0x3083", "ttyu=0x3063 0x3061 0x3085", "ttyo=0x3063 0x3061 0x3087", "hhya=0x3063 0x3072 0x3083", "hhyu=0x3063 0x3072 0x3085", "hhyo=0x3063 0x3072 0x3087", "mmya=0x3063 0x307F 0x3083", "mmyu=0x3063 0x307F 0x3085", "mmyo=0x3063 0x307F 0x3087", "rrya=0x3063 0x308A 0x3083", "rryu=0x3063 0x308A 0x3085", "rryo=0x3063 0x308A 0x3087", "ggya=0x3063 0x304E 0x3083", "ggyu=0x3063 0x304E 0x3085", "ggyo=0x3063 0x304E 0x3087", "zzya=0x3063 0x3058 0x3083", "zzyu=0x3063 0x3058 0x3085", "zzyo=0x3063 0x3058 0x3087", "bbya=0x3063 0x3073 0x3083", "bbyu=0x3063 0x3073 0x3085", "bbyo=0x3063 0x3073 0x3087", "ppya=0x3063 0x3074 0x3083", "ppyu=0x3063 0x3074 0x3085", "ppyo=0x3063 0x3074 0x3087", // ---------------------------------------------------------------------------- // Katakana 1 --- Table 1, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "A=0x30A2", "I=0x30A4", "U=0x30A6", "E=0x30A8", "O=0x30AA", "KA=0x30AB", "KI=0x30AD", "KU=0x30AF", "KE=0x30B1", "KO=0x30B3", "SA=0x30B5", "SI=0x30B7", "SU=0x30B9", "SE=0x30BB", "SO=0x30BD", "TA=0x30BF", "TI=0x30C1", "TU=0x30C4", "TE=0x30C6", "TO=0x30C8", "NA=0x30CA", "NI=0x30CB", "NU=0x30CC", "NE=0x30CD", "NO=0x30CE", "HA=0x30CF", "HI=0x30D2", "HU=0x30D5", "HE=0x30D8", "HO=0x30DB", "MA=0x30DE", "MI=0x30DF", "MU=0x30E0", "ME=0x30E1", "MO=0x30E2", "YA=0x30E4", "YU=0x30E6", "YO=0x30E8", "RA=0x30E9", "RI=0x30EA", "RU=0x30EB", "RE=0x30EC", "RO=0x30ED", "WA=0x30EF", "GA=0x30AC", "GI=0x30AE", "GU=0x30B0", "GE=0x30B2", "GO=0x30B4", "ZA=0x30B6", "ZI=0x30B8", "ZU=0x30BA", "ZE=0x30BC", "ZO=0x30BE", "DA=0x30C0", "DE=0x30C7", "DO=0x30C9", "BA=0x30D0", "BI=0x30D3", "BU=0x30D6", "BE=0x30D9", "BO=0x30DC", "PA=0x30D1", "PI=0x30D4", "PU=0x30D7", "PE=0x30DA", "PO=0x30DD", "KYA=0x30AD 0x30E3", "KYU=0x30AD 0x30E5", "KYO=0x30AD 0x30E7", "SYA=0x30B7 0x30E3", "SYU=0x30B7 0x30E5", "SYO=0x30B7 0x30E7", "TYA=0x30C1 0x30E3", "TYU=0x30C1 0x30E5", "TYO=0x30C1 0x30E7", "NYA=0x30CB 0x30E3", "NYU=0x30CB 0x30E5", "NYO=0x30Cb 0x30E7", "HYA=0x30D2 0x30E3", "HYU=0x30D2 0x30E5", "HYO=0x30D2 0x30E7", "MYA=0x30DF 0x30E3", "MYU=0x30DF 0x30E5", "MYO=0x30DF 0x30E7", "RYA=0x30EA 0x30E3", "RYU=0x30EA 0x30E5", "RYO=0x30EA 0x30E7", "GYA=0x30AE 0x30E3", "GYU=0x30AE 0x30E5", "GYO=0x30AE 0x30E7", "ZYA=0x30B8 0x30E3", "ZYU=0x30B8 0x30E5", "ZYO=0x30B8 0x30E7", "BYA=0x30D3 0x30E3", "BYU=0x30D3 0x30E5", "BYO=0x30D3 0x30E7", "PYA=0x30D4 0x30E3", "PYU=0x30D4 0x30E5", "PYO=0x30D4 0x30E7", "N=0x30F3", "N'=0x30F3", // ---------------------------------------------------------------------------- // Katakana 2 --- Table 2, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "SHA=0x30B7 0x30E3", "SHI=0x30B7", "SHU=0x30B7 0x30E5", "SHO=0x30B7 0x30E7", "TSU=0x30C4", "CHA=0x30C1 0x30E3", "CHI=0x30C1", "CHU=0x30C1 0x30E5", "CHO=0x30C1 0x30E7", "FU=0x30D5", "JA=0x30B8 0x30E3", "JI=0x30B8", "JU=0x30B8 0x30E5", "JO=0x30B8 0x30E7", "DI=0x30C2", "DU=0x30C5", "DYA=0x30C2 0x30E3", "DYU=0x30C2 0x30E5", "DYO=0x30C2 0x30E7", "KWA=0x30AF 0x30EE", "GWA=0x30B0 0x30EE", "WO=0x30F2", // ---------------------------------------------------------------------------- // Katakana 3 --- Conventional transliterations // ---------------------------------------------------------------------------- // Small Katakana: The prefix X is never pronounced. It is used as something // like an escape character. "XA=0x30A1", "XI=0x30A3", "XU=0x30A5", "XE=0x30A7", "XO=0x30A9", "XTU=0x30C3", "XYA=0x30E3", "XYU=0x30E5", "XYO=0x30E7", "XWA=0x30EE", // Used only for counting someone or something "XKA=0x30F5", "XKE=0x30F6", // Historic `wi' and `we' "WI=0x30F0", "WE=0x30F1", // Used for the sound `v' of European languages "VA=0x30F4 0x30A1", "VI=0x30F4 0x30A3", "VU=0x30F4", "VE=0x30F4 0x30A7", "VO=0x30F4 0x30A9", "VYU=0x30F4 0x30E5", // Preceded by a small `tu' "KKA=0x30C3 0x30AB", "KKI=0x30C3 0x30AD", "KKU=0x30C3 0x30AF", "KKE=0x30C3 0x30B1", "KKO=0x30C3 0x30B3", "SSA=0x30C3 0x30B5", "SSI=0x30C3 0x30B7", "SSU=0x30C3 0x30B9", "SSE=0x30C3 0x30BB", "SSO=0x30C3 0x30BD", "TTA=0x30C3 0x30BF", "TTI=0x30C3 0x30C1", "TTU=0x30C3 0x30C4", "TTE=0x30C3 0x30C6", "TTO=0x30C3 0x30C8", "HHA=0x30C3 0x30CF", "HHI=0x30C3 0x30D2", "HHU=0x30C3 0x30D5", "HHE=0x30C3 0x30D8", "HHO=0x30C3 0x30DB", "MMA=0x30C3 0x30DE", "MMI=0x30C3 0x30DF", "MMU=0x30C3 0x30E0", "MME=0x30C3 0x30E1", "MMO=0x30C3 0x30E2", "YYA=0x30C3 0x30E4", "YYU=0x30C3 0x30E6", "YYO=0x30C3 0x30E8", "RRA=0x30C3 0x30E9", "RRI=0x30C3 0x30EA", "RRU=0x30C3 0x30EB", "RRE=0x30C3 0x30EC", "RRO=0x30C3 0x30ED", "WWA=0x30C3 0x30EF", "GGA=0x30C3 0x30AC", "GGI=0x30C3 0x30AE", "GGU=0x30C3 0x30B0", "GGE=0x30C3 0x30B2", "GGO=0x30C3 0x30B4", "ZZA=0x30C3 0x30B6", "ZZI=0x30C3 0x30B8", "ZZU=0x30C3 0x30BA", "ZZE=0x30C3 0x30BC", "ZZO=0x30C3 0x30BE", "DDA=0x30C3 0x30C0", "DDI=0x30C3 0x30C2", "DDU=0x30C3 0x30C5", "DDE=0x30C3 0x30C7", "DDO=0x30C3 0x30C9", "BBA=0x30C3 0x30D0", "BBI=0x30C3 0x30D3", "BBU=0x30C3 0x30D6", "BBE=0x30C3 0x30D9", "BBO=0x30C3 0x30DC", "PPA=0x30C3 0x30D1", "PPI=0x30C3 0x30D4", "PPU=0x30C3 0x30D7", "PPE=0x30C3 0x30DA", "PPO=0x30C3 0x30DD", // Proceded by a small `tu' and followed by a small 'ya', 'yu' or 'yo' "KKYA=0x30C3 0x30AD 0x30E3", "KKYU=0x30C3 0x30AD 0x30E5", "KKYO=0x30C3 0x30AD 0x30E7", "SSYA=0x30C3 0x30B7 0x30E3", "SSYU=0x30C3 0x30B7 0x30E5", "SSYO=0x30C3 0x30B7 0x30E7", "TTYA=0x30C3 0x30C1 0x30E3", "TTYU=0x30C3 0x30C1 0x30E5", "TTYO=0x30C3 0x30C1 0x30E7", "HHYA=0x30C3 0x30D2 0x30E3", "HHYU=0x30C3 0x30D2 0x30E5", "HHYO=0x30C3 0x30D2 0x30E7", "MMYA=0x30C3 0x30DF 0x30E3", "MMYU=0x30C3 0x30DF 0x30E5", "MMYO=0x30C3 0x30DF 0x30E7", "RRYA=0x30C3 0x30EA 0x30E3", "RRYU=0x30C3 0x30EA 0x30E5", "RRYO=0x30C3 0x30EA 0x30E7", "GGYA=0x30C3 0x30AE 0x30E3", "GGYU=0x30C3 0x30AE 0x30E5", "GGYO=0x30C3 0x30AE 0x30E7", "ZZYA=0x30C3 0x30B8 0x30E3", "ZZYU=0x30C3 0x30B8 0x30E5", "ZZYO=0x30C3 0x30B8 0x30E7", "BBYA=0x30C3 0x30D3 0x30E3", "BBYU=0x30C3 0x30D3 0x30E5", "BBYO=0x30C3 0x30D3 0x30E7", "PPYA=0x30C3 0x30D4 0x30E3", "PPYU=0x30C3 0x30D4 0x30E5", "PPYO=0x30C3 0x30D4 0x30E7", "anohito= 0x3042 0x306e 0x4eba", "anoyo= 0x3042 0x306e 0x4e16", "anokata= 0x3042 0x306e 0x65b9", "iikagen= 0x3044 0x3044 0x52a0 0x6e1b", "omikuji= 0x304a 0x307f 0x7c64", "onigiri= 0x304a 0x63e1 0x308a", "oishasan= 0x304a 0x533b 0x8005 0x3055 0x3093", "okagesamade= 0x304a 0x852d 0x69d8 0x3067", "okashi= 0x304a 0x83d3 0x5b50", "okaeri= 0x304a 0x5e30 0x308a", "okaerinasai= 0x304a 0x5e30 0x308a 0x306a 0x3055 0x3044", "okiniiri= 0x304a 0x6c17 0x306b 0x5165 0x308a", "oyasumi= 0x304a 0x4f11 0x307f", "oyasuminasai= 0x304a 0x4f11 0x307f 0x306a 0x3055 0x3044", "otomo= 0x304a 0x4f9b", "okane= 0x304a 0x91d1", "oniisan= 0x304a 0x5144 0x3055 0x3093", "omimai= 0x304a 0x898b 0x821e", "oshibori= 0x304a 0x7d5e 0x308a", "oseibo= 0x304a 0x6b73 0x66ae", "omairi= 0x304a 0x53c2 0x308a", "oshimai= 0x304a 0x4ed5 0x821e 0x3044", "oneesan= 0x304a 0x59c9 0x3055 0x3093", "ojigi= 0x304a 0x8f9e 0x5100", "omamori= 0x304a 0x5b88 0x308a", "otearai= 0x304a 0x624b 0x6d17 0x3044", "otetsudai= 0x304a 0x624b 0x4f1d 0x3044", "otetsudaisan= 0x304a 0x624b 0x4f1d 0x3044 0x3055 0x3093", "oiwai= 0x304a 0x795d 0x3044", "omawarisan= 0x304a 0x5de1 0x308a 0x3055 0x3093", "omeshimono= 0x304a 0x53ec 0x3057 0x7269", "ojousan= 0x304a 0x5b22 0x3055 0x3093", "omikoshi= 0x304a 0x795e 0x8f3f", "oseji= 0x304a 0x4e16 0x8f9e", "osekkai= 0x304a 0x7bc0 0x4ecb", "osechiryouri= 0x304a 0x7bc0 0x6599 0x7406", "omae= 0x304a 0x524d", "ojiisan= 0x304a 0x7956 0x7236 0x3055 0x3093", "obaasan= 0x304a 0x7956 0x6bcd 0x3055 0x3093", "ohayou= 0x304a 0x65e9 0x3046", "ofukuro= 0x304a 0x888b", "okawari= 0x304a 0x4ee3 0x308f 0x308a", "otaku= 0x304a 0x5b85", "ocha= 0x304a 0x8336", "ochuugen= 0x304a 0x4e2d 0x5143", "oshaberi= 0x304a 0x558b 0x308a", "otsuri= 0x304a 0x91e3 0x308a", "otenba= 0x304a 0x8ee2 0x5a46", "omiyage= 0x304a 0x571f 0x7523", "odeko= 0x304a 0x51f8", "otoshidama= 0x304a 0x5e74 0x7389", "oyatsu= 0x304a 0x516b 0x3064", "otsukaresama= 0x304a 0x75b2 0x308c 0x69d8", "otousan= 0x304a 0x7236 0x3055 0x3093", "onaka= 0x304a 0x8179", "okaasan= 0x304a 0x6bcd 0x3055 0x3093", "obousan= 0x304a 0x574a 0x3055 0x3093", "obon= 0x304a 0x76c6", "omedetou= 0x304a 0x76ee 0x51fa 0x5ea6 0x3046", "orei= 0x304a 0x793c", "kabikusai= 0x304b 0x3073 0x81ed 0x3044", "kamoshirenai= 0x304b 0x3082 0x77e5 0x308c 0x306a 0x3044", "kayowai= 0x304b 0x5f31 0x3044", "kimariwarui= 0x304d 0x307e 0x308a 0x60aa 0x3044", "kuttsuku= 0x304f 0x3063 0x4ed8 0x304f", "kuttsukeru= 0x304f 0x3063 0x4ed8 0x3051 0x308b", "keishuugaka= 0x3051 0x3044 0x79c0 0x753b 0x5bb6", "koumorigasa= 0x3053 0x3046 0x3082 0x308a 0x5098", "konoaida= 0x3053 0x306e 0x9593", "konogoro= 0x3053 0x306e 0x9803", "gokurousama= 0x3054 0x82e6 0x52b4 0x3055 0x307e", "gozaimasu= 0x3054 0x5ea7 0x3044 0x307e 0x3059", "goshujin= 0x3054 0x4e3b 0x4eba", "goshuushousamadegozaimasu= 0x3054 0x6101 0x50b7 0x69d8 0x3067 0x3054 0x3056 0x3044 0x307e 0x3059", "gozonji= 0x3054 0x5b58 0x3058", "gochisou= 0x3054 0x99b3 0x8d70", "gochisousama= 0x3054 0x99b3 0x8d70 0x3055 0x307e", "gohan1= 0x3054 0x98ef", "gomen1= 0x3054 0x514d", "gomenkudasai= 0x3054 0x514d 0x304f 0x3060 0x3055 0x3044", "saodake= 0x3055 0x304a 0x7af9", "shinshaku= 0x3057 0x3093 0x914c", "sukiyaki1= 0x3059 0x304d 0x713c", "sukiyaki2= 0x3059 0x304d 0x713c 0x304d", "suribachi= 0x3059 0x308a 0x9262", "sonohoka= 0x305d 0x306e 0x5916", "sonogo= 0x305d 0x306e 0x5f8c", "sonoue= 0x305d 0x306e 0x4e0a", "sonota= 0x305d 0x306e 0x4ed6", "sonouchi= 0x305d 0x306e 0x5185", "sonomono= 0x305d 0x306e 0x7269", "soyokaze= 0x305d 0x3088 0x98a8", "tadaima= 0x305f 0x3060 0x4eca", "daho= 0x3060 0x6355", "chirigami= 0x3061 0x308a 0x7d19", "chiritori1= 0x3061 0x308a 0x53d6", "chiritori2= 0x3061 0x308a 0x53d6 0x308a", "doumoarigatou= 0x3069 0x3046 0x3082 0x6709 0x96e3 0x3046", "douitashimashite= 0x3069 0x3046 0x81f4 0x3057 0x307e 0x3057 0x3066", "donokurai= 0x3069 0x306e 0x4f4d", "donohen= 0x3069 0x306e 0x8fba", "nimokakawarazu= 0x306b 0x3082 0x62d8 0x3089 0x305a", "niwakaame1= 0x306b 0x308f 0x304b 0x96e8", "baikin= 0x3070 0x3044 0x83cc", "hyousetsu= 0x3072 0x3087 0x3046 0x7a83", "bishonure= 0x3073 0x3057 0x3087 0x6fe1 0x308c", "bukkirabou= 0x3076 0x3063 0x304d 0x3089 0x68d2", "budoushu= 0x3076 0x3069 0x3046 0x9152", "burasagaru= 0x3076 0x3089 0x4e0b 0x304c 0x308b", "burasageru= 0x3076 0x3089 0x4e0b 0x3052 0x308b", "bunnaguru= 0x3076 0x3093 0x6bb4 0x308b", "mikanbatake= 0x307f 0x304b 0x3093 0x7551", "yattekuru= 0x3084 0x3063 0x3066 0x6765 0x308b", "yattsukeru= 0x3084 0x3063 0x4ed8 0x3051 0x308b", "yarisugosu= 0x3084 0x308a 0x904e 0x3054 0x3059", "yarikuri= 0x3084 0x308a 0x7e70 0x308a", "yaritori= 0x3084 0x308a 0x53d6 0x308a", "yaritogeru= 0x3084 0x308a 0x9042 0x3052 0x308b", "yarikirenai= 0x3084 0x308a 0x5207 0x308c 0x306a 0x3044", "yarinaoshi= 0x3084 0x308a 0x76f4 0x3057", "yarinaosu= 0x3084 0x308a 0x76f4 0x3059", "yarikata= 0x3084 0x308a 0x65b9", "yosomi= 0x3088 0x305d 0x898b", "yosoyuki= 0x3088 0x305d 0x884c 0x304d", "wagakuni1= 0x308f 0x304c 0x56fd", "akademi-shou= 0x30a2 0x30ab 0x30c7 0x30df 0x30fc 0x8cde", "akiresuken= 0x30a2 0x30ad 0x30ec 0x30b9 0x8171", "adoriakai= 0x30a2 0x30c9 0x30ea 0x30a2 0x6d77", "aminosan= 0x30a2 0x30df 0x30ce 0x9178", "amerikagasshuukoku= 0x30a2 0x30e1 0x30ea 0x30ab 0x5408 0x8846 0x56fd", "arukarisei= 0x30a2 0x30eb 0x30ab 0x30ea 0x6027", "aruchuu= 0x30a2 0x30eb 0x4e2d", "iezusukai= 0x30a4 0x30a8 0x30ba 0x30b9 0x4f1a", "isuramukyou= 0x30a4 0x30b9 0x30e9 0x30e0 0x6559", "indoyou= 0x30a4 0x30f3 0x30c9 0x6d0b", "uo-rugai= 0x30a6 0x30a9 0x30fc 0x30eb 0x8857", "ekkususen= 0x30a8 0x30c3 0x30af 0x30b9 0x7dda", "efferutou= 0x30a8 0x30c3 0x30d5 0x30a7 0x30eb 0x5854", "o-punsen= 0x30aa 0x30fc 0x30d7 0x30f3 0x6226", "ori-buiro= 0x30aa 0x30ea 0x30fc 0x30d6 0x8272", "orenjiiro= 0x30aa 0x30ec 0x30f3 0x30b8 0x8272", "kasupikai= 0x30ab 0x30b9 0x30d4 0x6d77", "katorikkukyoukai= 0x30ab 0x30c8 0x30ea 0x30c3 0x30af 0x6559 0x4f1a", "karibukai= 0x30ab 0x30ea 0x30d6 0x6d77", "gasusen= 0x30ac 0x30b9 0x6813", "garasudo= 0x30ac 0x30e9 0x30b9 0x6238", "garasubari= 0x30ac 0x30e9 0x30b9 0x5f35 0x308a", "kirisutokyou= 0x30ad 0x30ea 0x30b9 0x30c8 0x6559", "ke-sonkouhou= 0x30b1 0x30fc 0x30bd 0x30f3 0x5de5 0x6cd5", "ko-hi-mame= 0x30b3 0x30fc 0x30d2 0x30fc 0x8c46", "saharasabaku= 0x30b5 0x30cf 0x30e9 0x7802 0x6f20", "saradahitosara= 0x30b5 0x30e9 0x30c0 0x4e00 0x76bf", "shabondama= 0x30b7 0x30e3 0x30dc 0x30f3 0x7389", "shutaina-gakkou= 0x30b7 0x30e5 0x30bf 0x30a4 0x30ca 0x30fc 0x5b66 0x6821", "jiettoki= 0x30b8 0x30a7 0x30c3 0x30c8 0x6a5f", "suwahirigo= 0x30b9 0x30ef 0x30d2 0x30ea 0x8a9e", "se-ra-fuku= 0x30bb 0x30fc 0x30e9 0x30fc 0x670d", "seshi= 0x30bb 0x6c0f", "soren= 0x30bd 0x9023", "dauheikinkabuka= 0x30c0 0x30a6 0x5e73 0x5747 0x682a 0x4fa1", "de-tatsuushin= 0x30c7 0x30fc 0x30bf 0x901a 0x4fe1", "debonki= 0x30c7 0x30dc 0x30f3 0x7d00", "demotai= 0x30c7 0x30e2 0x968a", "dehai= 0x30c7 0x676f", "tochouchou= 0x30c8 0x9577 0x8abf", "doitsujin= 0x30c9 0x30a4 0x30c4 0x4eba", "doitsurenpoukyouwakoku= 0x30c9 0x30a4 0x30c4 0x9023 0x90a6 0x5171 0x548c 0x56fd", "doramukan= 0x30c9 0x30e9 0x30e0 0x7f36", "doramusuko= 0x30c9 0x30e9 0x606f 0x5b50", "dorukai= 0x30c9 0x30eb 0x8cb7 0x3044", "nyu-yo-kushuu= 0x30cb 0x30e5 0x30fc 0x30e8 0x30fc 0x30af 0x5dde", "no-berushou= 0x30ce 0x30fc 0x30d9 0x30eb 0x8cde", "hansenbyou= 0x30cf 0x30f3 0x30bb 0x30f3 0x75c5", "basutei= 0x30d0 0x30b9 0x505c", "baberunotou= 0x30d0 0x30d9 0x30eb 0x306e 0x5854", "bantamukyuu= 0x30d0 0x30f3 0x30bf 0x30e0 0x7d1a", "panko= 0x30d1 0x30f3 0x7c89", "bi-rubin= 0x30d3 0x30fc 0x30eb 0x74f6", "bi-dama= 0x30d3 0x30fc 0x7389", "furaikyuu= 0x30d5 0x30e9 0x30a4 0x7d1a", "furansugo= 0x30d5 0x30e9 0x30f3 0x30b9 0x8a9e", "buchikowasu= 0x30d6 0x30c1 0x58ca 0x3059", "buraunkan= 0x30d6 0x30e9 0x30a6 0x30f3 0x7ba1", "puroyakyuu= 0x30d7 0x30ed 0x91ce 0x7403", "beniyaita= 0x30d9 0x30cb 0x30e4 0x677f", "pensaki= 0x30da 0x30f3 0x5148", "ho-chiminshi= 0x30db 0x30fc 0x30c1 0x30df 0x30f3 0x5e02", "marukusushugi= 0x30de 0x30eb 0x30af 0x30b9 0x4e3b 0x7fa9", "midorukyuu= 0x30df 0x30c9 0x30eb 0x7d1a", "me-ka-kiboukakaku= 0x30e1 0x30fc 0x30ab 0x30fc 0x5e0c 0x671b 0x4fa1 0x683c", "mekishikowan= 0x30e1 0x30ad 0x30b7 0x30b3 0x6e7e", "merikenko= 0x30e1 0x30ea 0x30b1 0x30f3 0x7c89", "yudayakyou= 0x30e6 0x30c0 0x30e4 0x6559", "raingawa= 0x30e9 0x30a4 0x30f3 0x5ddd", "ratengo= 0x30e9 0x30c6 0x30f3 0x8a9e", "ri-gusen= 0x30ea 0x30fc 0x30b0 0x6226", "ro-maji= 0x30ed 0x30fc 0x30de 0x5b57", "rokettodan= 0x30ed 0x30b1 0x30c3 0x30c8 0x5f3e", "aen= 0x4e9c 0x925b", "anettai= 0x4e9c 0x71b1 0x5e2f", "ama1= 0x4e9c 0x9ebb", "aryuu= 0x4e9c 0x6d41", "abikyoukan= 0x963f 0x9f3b 0x53eb 0x559a", "ahou= 0x963f 0x5446", "aware= 0x54c0 0x308c", "awaremu= 0x54c0 0x308c 0x3080", "aika= 0x54c0 0x6b4c", "aishuu= 0x54c0 0x6101", "aitou= 0x54c0 0x60bc", "aiwa= 0x54c0 0x8a71", "ai1= 0x611b", "itoshii= 0x611b 0x3057 0x3044", "aisuru= 0x611b 0x3059 0x308b", "ainokesshou= 0x611b 0x306e 0x7d50 0x6676", "aiken= 0x611b 0x72ac", "aikokushin= 0x611b 0x56fd 0x5fc3", "aishou= 0x611b 0x79f0", "aijou1= 0x611b 0x5b22", "aijou2= 0x611b 0x60c5", "aiseki= 0x611b 0x60dc", "aiso= 0x611b 0x60f3", "aisou= 0x611b 0x60f3", "aizou= 0x611b 0x618e", "aichaku= 0x611b 0x7740", "aidoku= 0x611b 0x8aad", "aiyou= 0x611b 0x7528", "aisatsu= 0x6328 0x62f6", "au1= 0x9022 0x3046", "aku1= 0x60aa", "warui= 0x60aa 0x3044", "ashikarazu= 0x60aa 0x3057 0x304b 0x3089 0x305a", "akui= 0x60aa 0x610f", "akueki= 0x60aa 0x75ab", "akka= 0x60aa 0x5316", "okan= 0x60aa 0x5bd2", "akkan= 0x60aa 0x6f22", "warugi= 0x60aa 0x6c17", "akugi= 0x60aa 0x622f", "itazura= 0x60aa 0x622f", "warugashikoi= 0x60aa 0x8ce2 0x3044", "akkou= 0x60aa 0x53e3", "warukuchi= 0x60aa 0x53e3", "akuji= 0x60aa 0x4e8b", "akushitsu1= 0x60aa 0x75be", "akushitsu2= 0x60aa 0x8cea", "warumono= 0x60aa 0x8005", "akushuu= 0x60aa 0x81ed", "akujunkan= 0x60aa 0x5faa 0x74b0", "akujo= 0x60aa 0x5973", "akunin= 0x60aa 0x4eba", "akusei= 0x60aa 0x6027", "akusen= 0x60aa 0x92ad", "akuheki= 0x60aa 0x7656", "akuma= 0x60aa 0x9b54", "akumu= 0x60aa 0x5922", "akuyou= 0x60aa 0x7528", "nigirizushi= 0x63e1 0x308a 0x5bff 0x53f8", "nigirishimeru= 0x63e1 0x308a 0x7de0 0x3081 0x308b", "nigirimeshi= 0x63e1 0x308a 0x98ef", "nigiru= 0x63e1 0x308b", "akushu= 0x63e1 0x624b", "akuryoku= 0x63e1 0x529b", "aji1= 0x9bf5", "assaku= 0x5727 0x643e", "assakuki= 0x5727 0x643e 0x5668", "asshuku= 0x5727 0x7e2e", "attou= 0x5727 0x5012", "attouteki= 0x5727 0x5012 0x7684", "appaku= 0x5727 0x8feb", "atsuryoku= 0x5727 0x529b", "assen= 0x65a1 0x65cb", "atsukau= 0x6271 0x3046", "ate1= 0x5b9b", "atesaki= 0x5b9b 0x5148", "atena= 0x5b9b 0x540d", "ame1= 0x98f4", "aru1= 0x6216", "aruiha= 0x6216 0x3044 0x306f", "yasui1= 0x5b89 0x3044", "yasuppoi= 0x5b89 0x3063 0x307d 0x3044", "yasuraka= 0x5b89 0x3089 0x304b", "ani1= 0x5b89 0x6613", "anrakushi= 0x5b89 0x697d 0x6b7b", "ankan= 0x5b89 0x9591", "anjuu= 0x5b89 0x4f4f", "anshin= 0x5b89 0x5fc3", "ansei= 0x5b89 0x9759", "anzen= 0x5b89 0x5168", "antai= 0x5b89 0x6cf0", "antei= 0x5b89 0x5b9a", "annei= 0x5b89 0x5be7", "anneichitsujo= 0x5b89 0x5be7 0x79e9 0x5e8f", "yasuuri= 0x5b89 0x58f2 0x308a", "anpi= 0x5b89 0x5426", "yasumono= 0x5b89 0x7269", "anmin= 0x5b89 0x7720", "anma= 0x6309 0x6469", "kurai1= 0x6697 0x3044", "kuragari= 0x6697 0x304c 0x308a", "kurayami= 0x6697 0x95c7", "anun= 0x6697 0x96f2", "anki= 0x6697 0x8a18", "angou= 0x6697 0x53f7", "ankoku= 0x6697 0x9ed2", "ansatsu= 0x6697 0x6bba", "anzan= 0x6697 0x7b97", "anji= 0x6697 0x793a", "anshitsu= 0x6697 0x5ba4", "anshou= 0x6697 0x7901", "anpu= 0x6697 0x8b5c", "anmoku= 0x6697 0x9ed9", "anyaku= 0x6697 0x8e8d", "an1= 0x6848", "annojou= 0x6848 0x306e 0x5b9a", "angai= 0x6848 0x5916", "anken= 0x6848 0x4ef6", "anshutsu= 0x6848 0x51fa", "annai= 0x6848 0x5185", "annaijo= 0x6848 0x5185 0x6240", "yami= 0x95c7", "motte= 0x4ee5 0x3066", "ika1= 0x4ee5 0x4e0b", "igai1= 0x4ee5 0x5916", "igo1= 0x4ee5 0x5f8c", "ikou1= 0x4ee5 0x964d", "ijou1= 0x4ee5 0x4e0a", "izen1= 0x4ee5 0x524d", "inai= 0x4ee5 0x5185", "irai1= 0x4ee5 0x6765", "iroha= 0x4f0a 0x5442 0x6ce2", "kurai2= 0x4f4d", "kuraidori= 0x4f4d 0x53d6 0x308a", "ichi1= 0x4f4d 0x7f6e", "i1= 0x4f9d", "izen2= 0x4f9d 0x7136", "izentoshite= 0x4f9d 0x7136 0x3068 0x3057 0x3066", "izon= 0x4f9d 0x5b58", "izondo= 0x4f9d 0x5b58 0x5ea6", "irai2= 0x4f9d 0x983c", "erai= 0x5049 0x3044", "ikan1= 0x5049 0x89b3", "igyou= 0x5049 0x696d", "ikun= 0x5049 0x52f2", "isai1= 0x5049 0x624d", "ijoufu= 0x5049 0x4e08 0x592b", "ijin= 0x5049 0x4eba", "idai= 0x5049 0x5927", "kakoi= 0x56f2 0x3044", "kakou1= 0x56f2 0x3046", "kakomu= 0x56f2 0x3080", "igo2= 0x56f2 0x7881", "yudaneru= 0x59d4 0x306d 0x308b", "iin= 0x59d4 0x54e1", "iinkai= 0x59d4 0x54e1 0x4f1a", "isai2= 0x59d4 0x7d30", "ishoku1= 0x59d4 0x5631", "itaku= 0x59d4 0x8a17", "inin= 0x59d4 0x4efb", "ikaku= 0x5a01 0x5687", "igen= 0x5a01 0x53b3", "ishin1= 0x5a01 0x4fe1", "isei1= 0x5a01 0x52e2", "ibaru= 0x5a01 0x5f35 0x308b", "ikan2= 0x5c09 0x5b98", "igai2= 0x610f 0x5916", "ikuji1= 0x610f 0x6c17 0x5730", "ikiyouyou= 0x610f 0x6c17 0x63da 0x63da", "igi1= 0x610f 0x7fa9", "iken1= 0x610f 0x898b", "ikou2= 0x610f 0x5411", "ishi1= 0x610f 0x5fd7", "ishinosotsuu= 0x610f 0x5fd7 0x306e 0x758e 0x901a", "ishiki= 0x610f 0x8b58", "ishou1= 0x610f 0x5320", "ito1= 0x610f 0x56f3", "iji1= 0x610f 0x5730", "ijiwaru= 0x610f 0x5730 0x60aa", "imi= 0x610f 0x5473", "iyoku= 0x610f 0x6b32", "nagusamu= 0x6170 0x3080", "nagusameru= 0x6170 0x3081 0x308b", "ian= 0x6170 0x5b89", "isharyou= 0x6170 0x8b1d 0x6599", "imon= 0x6170 0x554f", "ireisai= 0x6170 0x970a 0x796d", "yasui2= 0x6613 0x3044", "yasashii1= 0x6613 0x3057 0x3044", "ekisha= 0x6613 0x8005", "isu= 0x6905 0x5b50", "tame= 0x70ba", "nasaru= 0x70ba 0x3055 0x308b", "nasu1= 0x70ba 0x3059", "suru1= 0x70ba 0x308b", "iseisha= 0x70ba 0x653f 0x8005", "kawase= 0x70ba 0x66ff", "kashikomarimashita= 0x754f 0x307e 0x308a 0x307e 0x3057 0x305f", "kotonaru= 0x7570 0x306a 0x308b", "igi2= 0x7570 0x8b70", "ikyou= 0x7570 0x6559", "ikoku= 0x7570 0x56fd", "ishitsu= 0x7570 0x8cea", "ijou2= 0x7570 0x5e38", "isei2= 0x7570 0x6027", "itan= 0x7570 0x7aef", "idou1= 0x7570 0x52d5", "utsusu1= 0x79fb 0x3059", "utsuru1= 0x79fb 0x308b", "ijuu= 0x79fb 0x4f4f", "ishoku2= 0x79fb 0x690d", "iten= 0x79fb 0x8ee2", "idou2= 0x79fb 0x52d5", "imin= 0x79fb 0x6c11", "iji2= 0x7dad 0x6301", "ijihi= 0x7dad 0x6301 0x8cbb", "ishin2= 0x7dad 0x65b0", "isen= 0x7def 0x7dda", "ido1= 0x7def 0x5ea6", "i2= 0x80c3", "ikasui= 0x80c3 0x4e0b 0x5782", "igan= 0x80c3 0x764c", "isan1= 0x80c3 0x9178", "ijaku= 0x80c3 0x5f31", "ibukuro= 0x80c3 0x888b", "ichou= 0x80c3 0x8178", "ibyou= 0x80c3 0x75c5", "shibomu1= 0x840e 0x3080", "shioreru= 0x840e 0x308c 0x308b", "koromo= 0x8863", "ishokujuu= 0x8863 0x98df 0x4f4f", "ishou2= 0x8863 0x88c5", "ihatsu= 0x8863 0x9262", "ifuku= 0x8863 0x670d", "iryou1= 0x8863 0x6599", "irui= 0x8863 0x985e", "chigai= 0x9055 0x3044", "chigainai= 0x9055 0x3044 0x306a 0x3044", "chigau= 0x9055 0x3046", "chigaeru= 0x9055 0x3048 0x308b", "iken2= 0x9055 0x61b2", "ihan= 0x9055 0x53cd", "ihou= 0x9055 0x6cd5", "ikan3= 0x907a 0x61be", "yuigon= 0x907a 0x8a00", "ikon= 0x907a 0x6068", "isan2= 0x907a 0x7523", "ishitsubutsu= 0x907a 0x5931 0x7269", "iseki= 0x907a 0x8de1", "izoku= 0x907a 0x65cf", "itai1= 0x907a 0x4f53", "iden= 0x907a 0x4f1d", "irounaku= 0x907a 0x6f0f 0x306a 0x304f", "i3= 0x533b", "igaku= 0x533b 0x5b66", "igakubu= 0x533b 0x5b66 0x90e8", "igakuyougo= 0x533b 0x5b66 0x7528 0x8a9e", "ishi2= 0x533b 0x5e2b", "isha= 0x533b 0x8005", "iyakuhin= 0x533b 0x85ac 0x54c1", "iryou2= 0x533b 0x7642", "ido2= 0x4e95 0x6238", "seisen1= 0x4e95 0x6cc9", "sodachi= 0x80b2 0x3061", "sodatsu= 0x80b2 0x3064", "sodatenooya= 0x80b2 0x3066 0x306e 0x89aa", "sodateru= 0x80b2 0x3066 0x308b", "hagukumu= 0x80b2 0x3080", "ikuji2= 0x80b2 0x5150", "ikujien= 0x80b2 0x5150 0x5712", "ichi2= 0x4e00", "ichiichi= 0x4e00 0x3005", "ikkagetsu= 0x4e00 0x304b 0x6708", "hitotsu= 0x4e00 0x3064", "hitotsuhitotsu= 0x4e00 0x3064 0x4e00 0x3064", "hitomazu= 0x4e00 0x307e 0x305a", "hitonigiri= 0x4e00 0x63e1 0x308a", "ichiin= 0x4e00 0x54e1", "ichien= 0x4e00 0x5186", "ichiou= 0x4e00 0x5fdc", "ichioku= 0x4e00 0x5104", "ikka= 0x4e00 0x5bb6", "ikkanen= 0x4e00 0x7b87 0x5e74", "ikkai= 0x4e00 0x4ecb", "ichigaini= 0x4e00 0x6982 0x306b", "ikkatsu= 0x4e00 0x62ec", "ikkan= 0x4e00 0x8cab", "ikkiichiyuu= 0x4e00 0x559c 0x4e00 0x6182", "ikkini= 0x4e00 0x6c17 0x306b", "ikkiuchi= 0x4e00 0x9a0e 0x6253 0x3061", "hitoyasumi= 0x4e00 0x4f11 0x307f", "ikkyoni= 0x4e00 0x6319 0x306b", "ikkin= 0x4e00 0x65a4", "ichiguu= 0x4e00 0x9685", "ichigatsu= 0x4e00 0x6708", "hitotsuki= 0x4e00 0x6708", "ikken1= 0x4e00 0x898b", "ikken2= 0x4e00 0x8ed2", "ichigon= 0x4e00 0x8a00", "hitokoto= 0x4e00 0x8a00", "hitokotofutakoto= 0x4e00 0x8a00 0x4e8c 0x8a00", "ikko= 0x4e00 0x500b", "ichigoichigo= 0x4e00 0x8a9e 0x4e00 0x8a9e", "hitokuchi= 0x4e00 0x53e3", "ikkou1= 0x4e00 0x5411", "ikkouni= 0x4e00 0x5411 0x306b", "ichigyou= 0x4e00 0x884c", "ikkou2= 0x4e00 0x884c", "ikkoku= 0x4e00 0x523b", "issakujitsu= 0x4e00 0x6628 0x65e5", "ototoi= 0x4e00 0x6628 0x65e5", "issakunen= 0x4e00 0x6628 0x5e74", "ototoshi= 0x4e00 0x6628 0x5e74", "isshimatowanu= 0x4e00 0x7cf8 0x307e 0x3068 0x308f 0x306c", "ichiji= 0x4e00 0x6642", "hitotoki= 0x4e00 0x6642", "ichijiteki= 0x4e00 0x6642 0x7684", "isshu= 0x4e00 0x7a2e", "isshuu= 0x4e00 0x5468", "hitoe= 0x4e00 0x91cd", "isshun= 0x4e00 0x77ac", "issho= 0x4e00 0x7dd2", "isshoni= 0x4e00 0x7dd2 0x306b", "isshou1= 0x4e00 0x5347", "isshoubin= 0x4e00 0x5347 0x74f6", "ichijou= 0x4e00 0x9320", "isshin1= 0x4e00 0x5fc3", "isshinni= 0x4e00 0x5fc3 0x306b", "isshin2= 0x4e00 0x65b0", "hitori1= 0x4e00 0x4eba", "hitoride1= 0x4e00 0x4eba 0x3067", "hitorihitori= 0x4e00 0x4eba 0x4e00 0x4eba", "hitoribitori= 0x4e00 0x4eba 0x4e00 0x4eba", "ichininmae= 0x4e00 0x4eba 0x524d", "hitoriatari= 0x4e00 0x4eba 0x5f53 0x305f 0x308a", "hitorigurashi= 0x4e00 0x4eba 0x66ae 0x3089 0x3057", "chotto1= 0x4e00 0x5bf8", "isshou2= 0x4e00 0x751f", "isshougai= 0x4e00 0x751f 0x6daf", "isshoukenmei= 0x4e00 0x751f 0x61f8 0x547d", "issei= 0x4e00 0x6589", "isseini= 0x4e00 0x6589 0x306b", "issekigan= 0x4e00 0x96bb 0x773c", "hitomukashi= 0x4e00 0x6614", "issekinichou= 0x4e00 0x77f3 0x4e8c 0x9ce5", "issai= 0x4e00 0x5207", "hitokire= 0x4e00 0x5207 0x308c", "issou1= 0x4e00 0x5c64", "issou2= 0x4e00 0x6383", "issoku= 0x4e00 0x8db3", "hitoashi= 0x4e00 0x8db3", "ichizoku= 0x4e00 0x65cf", "ittai1= 0x4e00 0x4f53", "ittai2= 0x4e00 0x5e2f", "ittan= 0x4e00 0x65e6", "ichidan= 0x4e00 0x6bb5", "ichidanto= 0x4e00 0x6bb5 0x3068", "ichidanraku= 0x4e00 0x6bb5 0x843d", "icchi= 0x4e00 0x81f4", "icchou= 0x4e00 0x4e01", "icchoume= 0x4e00 0x4e01 0x76ee", "icchoura= 0x4e00 0x5f35 0x7f85", "hitotoori= 0x4e00 0x901a 0x308a", "ittei= 0x4e00 0x5b9a", "itto= 0x4e00 0x6597", "ichido= 0x4e00 0x5ea6", "ichidoni= 0x4e00 0x5ea6 0x306b", "ittou= 0x4e00 0x7b49", "ichidou= 0x4e00 0x540c", "ichijitsu= 0x4e00 0x65e5", "ichinichi= 0x4e00 0x65e5", "tsuitachi= 0x4e00 0x65e5", "ichinichioki= 0x4e00 0x65e5 0x7f6e 0x304d", "ichinichijuu= 0x4e00 0x65e5 0x4e2d", "ichineninaini= 0x4e00 0x5e74 0x4ee5 0x5185 0x306b", "ichinenjuu= 0x4e00 0x5e74 0x4e2d", "ichiwa= 0x4e00 0x628a", "ippai= 0x4e00 0x676f", "ichibai= 0x4e00 0x500d", "ippaku= 0x4e00 0x6cca", "ippan= 0x4e00 0x822c", "ippanni= 0x4e00 0x822c 0x306b", "ippanka= 0x4e00 0x822c 0x5316", "ippanteki= 0x4e00 0x822c 0x7684", "hitoban= 0x4e00 0x6669", "hitobanjuu= 0x4e00 0x6669 0x4e2d", "ichiban= 0x4e00 0x756a", "ippyou1= 0x4e00 0x4ff5", "ippyou2= 0x4e00 0x7968", "ichibu= 0x4e00 0x90e8", "ichibubun= 0x4e00 0x90e8 0x5206", "ippuu= 0x4e00 0x98a8", "ichibuichirin= 0x4e00 0x5206 0x4e00 0x5398", "ippunnijuubyou= 0x4e00 0x5206 0x4e8c 0x5341 0x79d2", "ippen= 0x4e00 0x904d", "ippenni= 0x4e00 0x904d 0x306b", "ippo= 0x4e00 0x6b69", "ippou= 0x4e00 0x65b9", "ichimatsu= 0x4e00 0x62b9", "ichimen= 0x4e00 0x9762", "ichimoku= 0x4e00 0x76ee", "hitome1= 0x4e00 0x76ee", "isseki= 0x4e00 0x5915", "ichiyou= 0x4e00 0x69d8", "ichiranhyou= 0x4e00 0x89a7 0x8868", "ichiriduka= 0x4e00 0x91cc 0x585a", "ichiryuu= 0x4e00 0x6d41", "ichi3= 0x58f1", "afureru= 0x6ea2 0x308c 0x308b", "sorasu1= 0x9038 0x3089 0x3059", "soreru= 0x9038 0x308c 0x308b", "hagureru= 0x9038 0x308c 0x308b", "ippin= 0x9038 0x54c1", "itsuwa= 0x9038 0x8a71", "ine= 0x7a32", "inari= 0x7a32 0x8377", "inekari= 0x7a32 0x5208 0x308a", "inazuma= 0x7a32 0x59bb", "inasaku= 0x7a32 0x4f5c", "inaho= 0x7a32 0x7a42", "imo= 0x828b", "imohori= 0x828b 0x6398 0x308a", "iwashi= 0x9c2f", "in1= 0x5370", "shirushi= 0x5370", "inkan= 0x5370 0x9451", "insatsu= 0x5370 0x5237", "insatsubutsu= 0x5370 0x5237 0x7269", "inshi= 0x5370 0x7d19", "inshou= 0x5370 0x8c61", "inzei= 0x5370 0x7a0e", "in2= 0x54e1", "in3= 0x56e0", "yoru1= 0x56e0 0x308b", "innen= 0x56e0 0x7e01", "inga= 0x56e0 0x679c", "inshuu= 0x56e0 0x8972", "inzoku= 0x59fb 0x65cf", "hikizuru1= 0x5f15 0x304d 0x305a 0x308b", "hikitsuru= 0x5f15 0x304d 0x3064 0x308b", "hikinobasu1= 0x5f15 0x304d 0x5ef6 0x3059", "hikinobasu2= 0x5f15 0x304d 0x5ef6 0x3070 0x3059", "hikisageru1= 0x5f15 0x304d 0x4e0b 0x3052 0x308b", "hikikae1= 0x5f15 0x304d 0x63db 0x3048", "hikiokosu1= 0x5f15 0x304d 0x8d77 0x3053 0x3059", "hikiokosu2= 0x5f15 0x304d 0x8d77 0x3059", "hikigane1= 0x5f15 0x304d 0x91d1", "hikitsugi1= 0x5f15 0x304d 0x7d99 0x304e", "hikitsugu1= 0x5f15 0x304d 0x7d99 0x3050", "hikizan1= 0x5f15 0x304d 0x7b97", "hikitomeru1= 0x5f15 0x304d 0x6b62 0x3081 0x308b", "hikitoru1= 0x5f15 0x304d 0x53d6 0x308b", "hikiukeru1= 0x5f15 0x304d 0x53d7 0x3051 0x308b", "hikidashi1= 0x5f15 0x304d 0x51fa 0x3057", "hikidasu1= 0x5f15 0x304d 0x51fa 0x3059", "hikiage1= 0x5f15 0x304d 0x4e0a 0x3052", "hikiageru1= 0x5f15 0x304d 0x4e0a 0x3052 0x308b", "hikinobasu3= 0x5f15 0x304d 0x4f38 0x3059", "hikinobasu4= 0x5f15 0x304d 0x4f38 0x3070 0x3059", "hikitsuduki1= 0x5f15 0x304d 0x7d9a 0x304d", "hikikae2= 0x5f15 0x304d 0x66ff 0x3048", "hikishimaru1= 0x5f15 0x304d 0x7de0 0x307e 0x308b", "hikishime1= 0x5f15 0x304d 0x7de0 0x3081", "hikishimeru1= 0x5f15 0x304d 0x7de0 0x3081 0x308b", "hikishimaru2= 0x5f15 0x304d 0x7de0 0x308b", "hikinuku1= 0x5f15 0x304d 0x629c 0x304f", "hikitsukeru1= 0x5f15 0x304d 0x4ed8 0x3051 0x308b", "hikiwake1= 0x5f15 0x304d 0x5206 0x3051", "hikikaesu1= 0x5f15 0x304d 0x8fd4 0x3059", "hikimodosu1= 0x5f15 0x304d 0x623b 0x3059", "hikiage2= 0x5f15 0x304d 0x63da 0x3052", "hikihanasu1= 0x5f15 0x304d 0x96e2 0x3059", "hikisaku1= 0x5f15 0x304d 0x88c2 0x304f", "hiku1= 0x5f15 0x304f", "hikeru= 0x5f15 0x3051 0x308b", "hikeme= 0x5f15 0x3051 0x76ee", "hikizuru2= 0x5f15 0x305a 0x308b", "hikkoshi= 0x5f15 0x3063 0x8d8a 0x3057", "hikkosu= 0x5f15 0x3063 0x8d8a 0x3059", "hikkakaru1= 0x5f15 0x3063 0x639b 0x304b 0x308b", "hikkakeru= 0x5f15 0x3063 0x639b 0x3051 0x308b", "hikkakaru2= 0x5f15 0x3063 0x639b 0x308b", "hikkurikaeru= 0x5f15 0x3063 0x7e70 0x308a 0x8fd4 0x308b", "hikkomu= 0x5f15 0x3063 0x8fbc 0x3080", "hipparu= 0x5f15 0x3063 0x5f35 0x308b", "hittsuku= 0x5f15 0x3063 0x4ed8 0x304f", "hikinobasu5= 0x5f15 0x5ef6 0x3059", "hikinobasu6= 0x5f15 0x5ef6 0x3070 0x3059", "hikisageru2= 0x5f15 0x4e0b 0x3052 0x308b", "hikikae3= 0x5f15 0x63db 0x3048", "hikigane2= 0x5f15 0x91d1", "hikitsugi2= 0x5f15 0x7d99 0x304e", "hikitsugu2= 0x5f15 0x7d99 0x3050", "hikizan2= 0x5f15 0x7b97", "hikitomeru2= 0x5f15 0x6b62 0x3081 0x308b", "hikitoru2= 0x5f15 0x53d6 0x308b", "hikiukeru2= 0x5f15 0x53d7 0x3051 0x308b", "hikidashi2= 0x5f15 0x51fa 0x3057", "hikidasu2= 0x5f15 0x51fa 0x3059", "hikiageru2= 0x5f15 0x4e0a 0x3052 0x308b", "hikinobasu7= 0x5f15 0x4f38 0x3059", "hikinobasu8= 0x5f15 0x4f38 0x3070 0x3059", "inseki= 0x5f15 0x8cac", "hikitsuduki2= 0x5f15 0x7d9a 0x304d", "hikikae4= 0x5f15 0x66ff 0x3048", "intai= 0x5f15 0x9000", "hikishime2= 0x5f15 0x7de0 0x3081", "hikishimeru2= 0x5f15 0x7de0 0x3081 0x308b", "hikinuku2= 0x5f15 0x629c 0x304f", "hikitsukeru2= 0x5f15 0x4ed8 0x3051 0x308b", "hikiwake2= 0x5f15 0x5206 0x3051", "hikikaesu2= 0x5f15 0x8fd4 0x3059", "hikimodosu2= 0x5f15 0x623b 0x3059", "inyou1= 0x5f15 0x7528", "inyouku= 0x5f15 0x7528 0x53e5", "hikihanasu2= 0x5f15 0x96e2 0x3059", "inryoku= 0x5f15 0x529b", "hikisaku2= 0x5f15 0x88c2 0x304f", "nomikomu= 0x98f2 0x307f 0x8fbc 0x3080", "nomimizu= 0x98f2 0x307f 0x6c34", "nomimono1= 0x98f2 0x307f 0x7269", "nomu= 0x98f2 0x3080", "inshoku= 0x98f2 0x98df", "inshokuten= 0x98f2 0x98df 0x5e97", "nomimono2= 0x98f2 0x7269", "inryou= 0x98f2 0x6599", "inryousui= 0x98f2 0x6599 0x6c34", "in4= 0x9670", "kage1= 0x9670", "kageru= 0x9670 0x308b", "inki= 0x9670 0x6c17", "inkei= 0x9670 0x830e", "insei= 0x9670 0x6027", "inbou= 0x9670 0x8b00", "inyou2= 0x9670 0x967d", "kakushihikidashi= 0x96a0 0x3057 0x5f15 0x304d 0x51fa 0x3057", "kakushigei= 0x96a0 0x3057 0x82b8", "kakusu= 0x96a0 0x3059", "kakureru= 0x96a0 0x308c 0x308b", "inkyo= 0x96a0 0x5c45", "ingo1= 0x96a0 0x8a9e", "inja= 0x96a0 0x8005", "intoku= 0x96a0 0x533f", "intokusha= 0x96a0 0x533f 0x8005", "intokubusshi= 0x96a0 0x533f 0x7269 0x8cc7", "in5= 0x97fb", "ingo2= 0x97fb 0x8a9e", "inbun= 0x97fb 0x6587", "inritsu= 0x97fb 0x5f8b", "migi= 0x53f3", "migikarahidarihe= 0x53f3 0x304b 0x3089 0x5de6 0x3078", "migitoiebahidari= 0x53f3 0x3068 0x8a00 0x3048 0x3070 0x5de6", "uousaou= 0x53f3 0x5f80 0x5de6 0x5f80", "migite= 0x53f3 0x624b", "usetsukinshi= 0x53f3 0x6298 0x7981 0x6b62", "migigawa= 0x53f3 0x5074", "uha= 0x53f3 0x6d3e", "uhou= 0x53f3 0x65b9", "uyoku= 0x53f3 0x7ffc", "uchuu= 0x5b87 0x5b99", "uchuuhikoushi= 0x5b87 0x5b99 0x98db 0x884c 0x58eb", "uchuubou= 0x5b87 0x5b99 0x5e3d", "uchuuryokou= 0x5b87 0x5b99 0x65c5 0x884c", "udai= 0x5b87 0x5185", "karasu1= 0x70cf", "ika2= 0x70cf 0x8cca", "hane1= 0x7fbd", "wa1= 0x7fbd", "hagoromo= 0x7fbd 0x8863", "habataku= 0x7fbd 0x6483 0x304f", "hane2= 0x7fbd 0x6839", "hanetsuki= 0x7fbd 0x6839 0x7a81 0x304d", "haori= 0x7fbd 0x7e54", "umou= 0x7fbd 0x6bdb", "ame2= 0x96e8", "amagumo= 0x96e8 0x96f2", "uki1= 0x96e8 0x671f", "uki2= 0x96e8 0x5b63", "amagu= 0x96e8 0x5177", "amado= 0x96e8 0x6238", "amefuri= 0x96e8 0x964d 0x308a", "amagasa= 0x96e8 0x5098", "amayadori= 0x96e8 0x5bbf 0x308a", "amadare= 0x96e8 0x5782 0x308c", "amamizu= 0x96e8 0x6c34", "uteki= 0x96e8 0x6ef4", "uten= 0x96e8 0x5929", "amatsubu= 0x96e8 0x7c92", "uryou= 0x96e8 0x91cf", "amamori= 0x96e8 0x6f0f 0x308a", "uzu= 0x6e26", "uzumaki1= 0x6e26 0x5dfb", "uzumaki2= 0x6e26 0x5dfb 0x304d", "kachuu= 0x6e26 0x4e2d", "karyuu1= 0x6e26 0x6d41", "uso= 0x5618", "usotsuki= 0x5618 0x3064 0x304d", "unagi= 0x9c3b", "ura1= 0x6d66", "uranami= 0x6d66 0x6ce2", "uruudoshi= 0x958f 0x5e74", "uwasa= 0x5642", "un= 0x904b", "hakobu= 0x904b 0x3076", "unei= 0x904b 0x55b6", "unga= 0x904b 0x6cb3", "unkyuu= 0x904b 0x4f11", "unkou= 0x904b 0x884c", "unsou= 0x904b 0x9001", "unchin= 0x904b 0x8cc3", "unten= 0x904b 0x8ee2", "untenshi= 0x904b 0x8ee2 0x58eb", "untenshu= 0x904b 0x8ee2 0x624b", "undou= 0x904b 0x52d5", "undoukai= 0x904b 0x52d5 0x4f1a", "undoujou= 0x904b 0x52d5 0x5834", "undouba= 0x904b 0x52d5 0x5834", "undoubusoku= 0x904b 0x52d5 0x4e0d 0x8db3", "unpan= 0x904b 0x642c", "unmei= 0x904b 0x547d", "unyu= 0x904b 0x8f38", "unyou= 0x904b 0x7528", "unyoku= 0x904b 0x826f 0x304f", "kumo1= 0x96f2", "hibari= 0x96f2 0x96c0", "undeinosa= 0x96f2 0x6ce5 0x306e 0x5dee", "esa= 0x990c", "itonamu= 0x55b6 0x3080", "eigyou= 0x55b6 0x696d", "eizen= 0x55b6 0x7e55", "eiri1= 0x55b6 0x5229", "kage2= 0x5f71", "kagee= 0x5f71 0x7d75", "eikyou= 0x5f71 0x97ff", "eizou1= 0x5f71 0x50cf", "kageboushi= 0x5f71 0x6cd5 0x5e2b", "haeru1= 0x6620 0x3048 0x308b", "utsusu2= 0x6620 0x3059", "utsuru2= 0x6620 0x308b", "eiga= 0x6620 0x753b", "eigakan= 0x6620 0x753b 0x9928", "eishaki= 0x6620 0x5199 0x6a5f", "eizou2= 0x6620 0x50cf", "hae1= 0x6804 0x3048", "sakaeru= 0x6804 0x3048 0x308b", "haeru2= 0x6804 0x3048 0x308b", "eikan= 0x6804 0x51a0", "eiko= 0x6804 0x67af", "eikou= 0x6804 0x5149", "eiyo= 0x6804 0x8a89", "eiyou= 0x6804 0x990a", "nagai1= 0x6c38 0x3044", "eien= 0x6c38 0x9060", "eikyuu= 0x6c38 0x4e45", "eijuu= 0x6c38 0x4f4f", "eizoku= 0x6c38 0x7d9a", "eimin= 0x6c38 0x7720", "oyogu= 0x6cf3 0x3050", "eihou= 0x6cf3 0x6cd5", "eikaiwa= 0x82f1 0x4f1a 0x8a71", "eiki1= 0x82f1 0x6c17", "eigo= 0x82f1 0x8a9e", "eibun= 0x82f1 0x6587", "eiyaku= 0x82f1 0x8a33", "eiyuu= 0x82f1 0x96c4", "eiwa= 0x82f1 0x548c", "eisei1= 0x885b 0x661f", "eisei2= 0x885b 0x751f", "eiseiteki= 0x885b 0x751f 0x7684", "yomu1= 0x8a60 0x3080", "eika= 0x8a60 0x6b4c", "eisou= 0x8a60 0x8349", "surudoi= 0x92ed 0x3044", "eikaku= 0x92ed 0x89d2", "eiki2= 0x92ed 0x6c17", "eibin= 0x92ed 0x654f", "eiri2= 0x92ed 0x5229", "eki1= 0x6db2", "ekika= 0x6db2 0x5316", "ekitai= 0x6db2 0x4f53", "ekibyou= 0x75ab 0x75c5", "ekiri= 0x75ab 0x75e2", "eki2= 0x76ca", "masumasu= 0x76ca 0x3005", "ekichuu= 0x76ca 0x866b", "eki3= 0x99c5", "ekiin= 0x99c5 0x54e1", "ekimae= 0x99c5 0x524d", "ekichou= 0x99c5 0x9577", "ekiben= 0x99c5 0x5f01", "etsuniiru= 0x60a6 0x306b 0x5165 0x308b", "etsuraku= 0x60a6 0x697d", "essuru= 0x8b01 0x3059 0x308b", "ekken1= 0x8b01 0x898b", "koeru1= 0x8d8a 0x3048 0x308b", "kosu1= 0x8d8a 0x3059", "ekkyou= 0x8d8a 0x5883", "ekken2= 0x8d8a 0x6a29", "etsuran= 0x95b2 0x89a7", "etsuranshitsu= 0x95b2 0x89a7 0x5ba4", "etsureki= 0x95b2 0x6b74", "iyarashii= 0x53ad 0x3084 0x3089 0x3057 0x3044", "en1= 0x5186", "marui1= 0x5186 0x3044", "marumi1= 0x5186 0x307f", "enyasu= 0x5186 0x5b89", "enkatsu= 0x5186 0x6ed1", "enkei= 0x5186 0x5f62", "enko= 0x5186 0x5f27", "endaka= 0x5186 0x9ad8", "enshuu1= 0x5186 0x5468", "enjuku= 0x5186 0x719f", "enchuu= 0x5186 0x67f1", "entou= 0x5186 0x7b52", "entoukei= 0x5186 0x7b52 0x5f62", "enban1= 0x5186 0x76e4", "enman= 0x5186 0x6e80", "en2= 0x5712", "sono= 0x5712", "engei1= 0x5712 0x82b8", "enkai1= 0x5bb4 0x4f1a", "enseki= 0x5bb4 0x5e2d", "nobasu1= 0x5ef6 0x3070 0x3059", "nobiru1= 0x5ef6 0x3073 0x308b", "nobe= 0x5ef6 0x3079", "noberu1= 0x5ef6 0x3079 0x308b", "nobetsubo= 0x5ef6 0x3079 0x576a", "nobetsubosuu= 0x5ef6 0x3079 0x576a 0x6570", "enki= 0x5ef6 0x671f", "entai= 0x5ef6 0x6ede", "enchou= 0x5ef6 0x9577", "engun= 0x63f4 0x8ecd", "engo= 0x63f4 0x8b77", "enjo= 0x63f4 0x52a9", "zoi= 0x6cbf 0x3044", "sou1= 0x6cbf 0x3046", "enkai2= 0x6cbf 0x6d77", "enkaku1= 0x6cbf 0x9769", "engan= 0x6cbf 0x5cb8", "ensen= 0x6cbf 0x7dda", "enjiru= 0x6f14 0x3058 0x308b", "enzuru= 0x6f14 0x305a 0x308b", "engi1= 0x6f14 0x6280", "engei2= 0x6f14 0x82b8", "engeki= 0x6f14 0x5287", "enshuu2= 0x6f14 0x7fd2", "enshutsu= 0x6f14 0x51fa", "enzetsu= 0x6f14 0x8aac", "ensou= 0x6f14 0x594f", "ensoukai= 0x6f14 0x594f 0x4f1a", "endan1= 0x6f14 0x58c7", "honoo= 0x708e", "enshou= 0x708e 0x75c7", "enshoubyousou= 0x708e 0x75c7 0x75c5 0x5de3", "kemuri= 0x7159", "kemui= 0x7159 0x3044", "kemutai= 0x7159 0x305f 0x3044", "kemuru= 0x7159 0x308b", "tabako= 0x7159 0x8349", "tabakoya= 0x7159 0x8349 0x5c4b", "entotsu= 0x7159 0x7a81", "tsubame= 0x71d5", "saru1= 0x733f", "sarujie= 0x733f 0x77e5 0x6075", "fuchi1= 0x7e01", "engi2= 0x7e01 0x8d77", "engawa= 0x7e01 0x5074", "endan2= 0x7e01 0x8ac7", "tsuya1= 0x8276", "tsuyatsuya= 0x8276 0x3005", "tooi= 0x9060 0x3044", "tooku= 0x9060 0x304f", "toozakaru= 0x9060 0x3056 0x304b 0x308b", "enei= 0x9060 0x6cf3", "toomawashi= 0x9060 0x56de 0x3057", "enkaku2= 0x9060 0x9694", "enkyori= 0x9060 0x8ddd 0x96e2", "enkinhou= 0x9060 0x8fd1 0x6cd5", "enshinryoku= 0x9060 0x5fc3 0x529b", "ensei= 0x9060 0x5f81", "tooasa= 0x9060 0x6d45", "ensoku= 0x9060 0x8db3", "enpou= 0x9060 0x65b9", "enryo= 0x9060 0x616e", "namari1= 0x925b", "namariiro= 0x925b 0x8272", "endoku= 0x925b 0x6bd2", "enban2= 0x925b 0x7248", "enpitsu= 0x925b 0x7b46", "enpitsukezuri= 0x925b 0x7b46 0x524a 0x308a", "shio1= 0x5869", "ensan= 0x5869 0x9178", "shiokarai= 0x5869 0x8f9b 0x3044", "ensui= 0x5869 0x6c34", "shiomizu= 0x5869 0x6c34", "shioduke= 0x5869 0x6f2c", "shioire= 0x5869 0x5165 0x308c", "anbai= 0x5869 0x6885", "enbun= 0x5869 0x5206", "kitanai= 0x6c5a 0x3044", "kegasu= 0x6c5a 0x3059", "yogosu= 0x6c5a 0x3059", "kegarawashii= 0x6c5a 0x3089 0x308f 0x3057 0x3044", "yogore= 0x6c5a 0x308c", "kegareru= 0x6c5a 0x308c 0x308b", "yogoreru= 0x6c5a 0x308c 0x308b", "oshoku= 0x6c5a 0x8077", "ojoku= 0x6c5a 0x8fb1", "osen= 0x6c5a 0x67d3", "oten= 0x6c5a 0x70b9", "obutsu= 0x6c5a 0x7269", "omei= 0x6c5a 0x540d", "oi= 0x7525", "ou1= 0x51f9", "hekomu= 0x51f9 0x3080", "ourenzu= 0x51f9 0x30ec 0x30f3 0x30ba", "outotsu= 0x51f9 0x51f8", "oumenkyou= 0x51f9 0x9762 0x93e1", "oku1= 0x5965", "okusan= 0x5965 0x3055 0x3093", "ougi1= 0x5965 0x7fa9", "okugi= 0x5965 0x7fa9", "okuyuki1= 0x5965 0x884c", "okuyuki2= 0x5965 0x884c 0x304d", "okuduke= 0x5965 0x4ed8 0x3051", "oumyou= 0x5965 0x5999", "okusama= 0x5965 0x69d8", "oushin= 0x5f80 0x8a3a", "oujou= 0x5f80 0x751f", "ounen= 0x5f80 0x5e74", "oufuku= 0x5f80 0x5fa9", "ourai= 0x5f80 0x6765", "oujiru= 0x5fdc 0x3058 0x308b", "ouzuru= 0x5fdc 0x305a 0x308b", "ouen= 0x5fdc 0x63f4", "oushuu1= 0x5fdc 0x916c", "oushou= 0x5fdc 0x53ec", "ousetsu= 0x5fdc 0x63a5", "ousetsuma= 0x5fdc 0x63a5 0x9593", "outai= 0x5fdc 0x5bfe", "outou1= 0x5fdc 0x7b54", "oubo= 0x5fdc 0x52df", "oubosha= 0x5fdc 0x52df 0x8005", "ouyou= 0x5fdc 0x7528", "osaeru1= 0x62bc 0x3055 0x3048 0x308b", "oshiire1= 0x62bc 0x3057 0x5165 0x308c", "oshiuri1= 0x62bc 0x3057 0x58f2 0x308a", "oshitsukeru= 0x62bc 0x3057 0x4ed8 0x3051 0x308b", "oshimondou= 0x62bc 0x3057 0x554f 0x7b54", "osu1= 0x62bc 0x3059", "ouin= 0x62bc 0x97fb", "oushuu2= 0x62bc 0x53ce", "oshiire2= 0x62bc 0x5165", "oshiire3= 0x62bc 0x5165 0x308c", "oshiuri2= 0x62bc 0x58f2", "oshiuri3= 0x62bc 0x58f2 0x308a", "yoko= 0x6a2a", "yokotawaru= 0x6a2a 0x305f 0x308f 0x308b", "oukakumaku= 0x6a2a 0x9694 0x819c", "yokogao= 0x6a2a 0x9854", "yokoduna= 0x6a2a 0x7db1", "yokodori= 0x6a2a 0x53d6 0x308a", "yokogaki= 0x6a2a 0x66f8 0x304d", "yokogiru= 0x6a2a 0x5207 0x308b", "oudan= 0x6a2a 0x65ad", "oudanhodou= 0x6a2a 0x65ad 0x6b69 0x9053", "ouchaku= 0x6a2a 0x7740", "yokomichi= 0x6a2a 0x9053", "yokohaba= 0x6a2a 0x5e45", "yokomoji= 0x6a2a 0x6587 0x5b57", "ouhei= 0x6a2a 0x67c4", "yokome= 0x6a2a 0x76ee", "ouryou= 0x6a2a 0x9818", "oushuu3= 0x6b27 0x5dde", "oushuukyoudoutai= 0x6b27 0x5dde 0x5171 0x540c 0x4f53", "oubei= 0x6b27 0x7c73", "nagurikomi= 0x6bb4 0x308a 0x8fbc 0x307f", "nagurikorosu= 0x6bb4 0x308a 0x6bba 0x3059", "naguritsukeru= 0x6bb4 0x308a 0x4ed8 0x3051 0x308b", "naguru= 0x6bb4 0x308b", "ouda= 0x6bb4 0x6253", "oukan= 0x738b 0x51a0", "oukou= 0x738b 0x4faf", "oukoku= 0x738b 0x56fd", "ouji= 0x738b 0x5b50", "ouja= 0x738b 0x8005", "oujo= 0x738b 0x5973", "ouhi= 0x738b 0x5983", "ousama= 0x738b 0x69d8", "ou2= 0x7fc1", "fusuma= 0x8956", "ki1= 0x9ec4", "ougon= 0x9ec4 0x91d1", "kogane= 0x9ec4 0x91d1", "tasogare= 0x9ec4 0x660f", "kiiro= 0x9ec4 0x8272", "kiiroi= 0x9ec4 0x8272 0x3044", "kimi1= 0x9ec4 0x8eab", "ounetsu= 0x9ec4 0x71b1", "kounetsu1= 0x9ec4 0x71b1", "kounetsubyou= 0x9ec4 0x71b1 0x75c5", "kouyou1= 0x9ec4 0x8449", "oki= 0x6c96", "okiai1= 0x6c96 0x5408", "okiai2= 0x6c96 0x5408 0x3044", "chuusekiki= 0x6c96 0x7a4d 0x671f", "chuusekisei= 0x6c96 0x7a4d 0x4e16", "oku2= 0x5104", "okuchou= 0x5104 0x5146", "okumanchouja= 0x5104 0x4e07 0x9577 0x8005", "okugai= 0x5c4b 0x5916", "yane= 0x5c4b 0x6839", "okujou= 0x5c4b 0x4e0a", "okunai= 0x5c4b 0x5185", "yashiki= 0x5c4b 0x6577", "okubyou= 0x81c6 0x75c5", "oke= 0x6876", "otsu= 0x4e59", "kinoto= 0x4e59", "otsunaaji= 0x4e59 0x306a 0x5473", "ore= 0x4ffa", "oroshi= 0x5378", "oroshishou= 0x5378 0x3057 0x5546", "oroshiuribukka= 0x5378 0x3057 0x58f2 0x308a 0x7269 0x4fa1", "orosu1= 0x5378 0x3059", "oroshine= 0x5378 0x5024", "oroshiuri1= 0x5378 0x58f2", "oroshiuri2= 0x5378 0x58f2 0x308a", "on1= 0x6069", "onkyuu= 0x6069 0x7d66", "onkei= 0x6069 0x6075", "onshi= 0x6069 0x8cdc", "onsha= 0x6069 0x8d66", "onshou1= 0x6069 0x8cde", "onjin= 0x6069 0x4eba", "onshirazu= 0x6069 0x77e5 0x3089 0x305a", "ongaeshi= 0x6069 0x8fd4 0x3057", "nurui= 0x6e29 0x3044", "atatakai1= 0x6e29 0x304b 0x3044", "atatamaru1= 0x6e29 0x307e 0x308b", "atatameru1= 0x6e29 0x3081 0x308b", "nukumori= 0x6e29 0x3082 0x308a", "onshitsu= 0x6e29 0x5ba4", "onshou2= 0x6e29 0x5e8a", "onsen= 0x6e29 0x6cc9", "ontai= 0x6e29 0x5e2f", "ondan= 0x6e29 0x6696", "ondo= 0x6e29 0x5ea6", "onwa1= 0x6e29 0x548c", "odayaka= 0x7a4f 0x3084 0x304b", "onken= 0x7a4f 0x5065", "ontou= 0x7a4f 0x5f53", "onbin= 0x7a4f 0x4fbf", "onwa2= 0x7a4f 0x548c", "oto= 0x97f3", "on2= 0x97f3", "ne1= 0x97f3", "oningaku= 0x97f3 0x97fb 0x5b66", "onkai= 0x97f3 0x968e", "ongaku= 0x97f3 0x697d", "onkyou= 0x97f3 0x97ff", "onkun= 0x97f3 0x8a13", "neiro= 0x97f3 0x8272", "onsei= 0x97f3 0x58f0", "onseigaku= 0x97f3 0x58f0 0x5b66", "onchi= 0x97f3 0x75f4", "ontei= 0x97f3 0x7a0b", "ondoku= 0x97f3 0x8aad", "onyomi= 0x97f3 0x8aad 0x307f", "onpu= 0x97f3 0x7b26", "shita1= 0x4e0b", "sagari= 0x4e0b 0x304c 0x308a", "sagaru= 0x4e0b 0x304c 0x308b", "sageru1= 0x4e0b 0x3052 0x308b", "kudasaru= 0x4e0b 0x3055 0x308b", "kudasu= 0x4e0b 0x3059", "kudaranai= 0x4e0b 0x3089 0x306a 0x3044", "kudari= 0x4e0b 0x308a", "oriru1= 0x4e0b 0x308a 0x308b", "kudarizaka= 0x4e0b 0x308a 0x5742", "kudaru= 0x4e0b 0x308b", "orosu2= 0x4e0b 0x308d 0x3059", "gekai= 0x4e0b 0x754c", "gekan= 0x4e0b 0x5dfb", "shitami= 0x4e0b 0x898b", "kagen1= 0x4e0b 0x5f26", "geko= 0x4e0b 0x6238", "kakou2= 0x4e0b 0x964d", "gezai= 0x4e0b 0x5264", "gezan= 0x4e0b 0x5c71", "kashi1= 0x4e0b 0x80a2", "kashi2= 0x4e0b 0x8cdc", "gesha= 0x4e0b 0x8eca", "shitate= 0x4e0b 0x624b", "heta= 0x4e0b 0x624b", "geshuku= 0x4e0b 0x5bbf", "gejun= 0x4e0b 0x65ec", "shitagaki= 0x4e0b 0x66f8 0x304d", "kashin= 0x4e0b 0x5507", "shitakuchibiru= 0x4e0b 0x5507", "gesui= 0x4e0b 0x6c34", "gesuikou= 0x4e0b 0x6c34 0x6e9d", "shitauke= 0x4e0b 0x8acb 0x3051", "shitasoudan= 0x4e0b 0x76f8 0x8ac7", "geta= 0x4e0b 0x99c4", "shitagi= 0x4e0b 0x7740", "shitamachi= 0x4e0b 0x753a", "shitashirabe= 0x4e0b 0x8abf 0x3079", "katou= 0x4e0b 0x7b49", "kahanshin= 0x4e0b 0x534a 0x8eab", "gehin= 0x4e0b 0x54c1", "shitajiki1= 0x4e0b 0x6577", "shitajiki2= 0x4e0b 0x6577 0x304d", "shimobukure= 0x4e0b 0x81a8 0x308c", "geri= 0x4e0b 0x75e2", "karyuu2= 0x4e0b 0x6d41", "bakasu= 0x5316 0x304b 0x3059", "bakeru= 0x5316 0x3051 0x308b", "bakemono= 0x5316 0x3051 0x7269", "kagaku1= 0x5316 0x5b66", "kagou= 0x5316 0x5408", "keshou= 0x5316 0x7ca7", "keshoushitsu= 0x5316 0x7ca7 0x5ba4", "keshoubako= 0x5316 0x7ca7 0x7bb1", "keshouhin= 0x5316 0x7ca7 0x54c1", "kaseki= 0x5316 0x77f3", "kasen1= 0x5316 0x7e4a", "kari1= 0x4eee", "karini= 0x4eee 0x306b", "kasetsu1= 0x4eee 0x8aac", "kasou1= 0x4eee 0x88c5", "katei1= 0x4eee 0x5b9a", "kebyou= 0x4eee 0x75c5", "karinui= 0x4eee 0x7e2b 0x3044", "kana= 0x4eee 0x540d", "kamei1= 0x4eee 0x540d", "kanadukai= 0x4eee 0x540d 0x9063 0x3044", "kamen= 0x4eee 0x9762", "tatoe1= 0x4eee 0x4ee4", "nani1= 0x4f55", "nan= 0x4f55", "nanika= 0x4f55 0x304b", "nanikato= 0x4f55 0x304b 0x3068", "nanishiro= 0x4f55 0x3057 0x308d", "nandaka= 0x4f55 0x3060 0x304b", "nante= 0x4f55 0x3066", "nande= 0x4f55 0x3067", "nandemo= 0x4f55 0x3067 0x3082", "nanto= 0x4f55 0x3068", "nantoka= 0x4f55 0x3068 0x304b", "nantonaku= 0x4f55 0x3068 0x306a 0x304f", "nantomo= 0x4f55 0x3068 0x3082", "naniyori= 0x4f55 0x3088 0x308a", "nanra= 0x4f55 0x3089", "dore= 0x4f55 0x308c", "doredore= 0x4f55 0x4f55", "nanigenaku= 0x4f55 0x6c17 0x7121 0x304f", "naze= 0x4f55 0x6545", "naniyue= 0x4f55 0x6545", "nazeka= 0x4f55 0x6545 0x304b", "nazenara= 0x4f55 0x6545 0x306a 0x3089", "nazenaraba= 0x4f55 0x6545 0x306a 0x3089 0x3070", "nanigoto= 0x4f55 0x4e8b", "itsu= 0x4f55 0x6642", "nanji= 0x4f55 0x6642", "itsudemo= 0x4f55 0x6642 0x3067 0x3082", "itsunomanika= 0x4f55 0x6642 0x306e 0x9593 0x306b 0x304b", "itsumademo= 0x4f55 0x6642 0x307e 0x3067 0x3082", "itsumo= 0x4f55 0x6642 0x3082", "nanjikan= 0x4f55 0x6642 0x9593", "itsugoro= 0x4f55 0x6642 0x9803", "nanjuu= 0x4f55 0x5341", "doko= 0x4f55 0x51e6", "dokoka= 0x4f55 0x51e6 0x304b", "nanzen= 0x4f55 0x5343", "nanitozo= 0x4f55 0x5352", "nando= 0x4f55 0x5ea6", "nannichi= 0x4f55 0x65e5", "nanbyaku= 0x4f55 0x767e", "nanibun= 0x4f55 0x5206", "nanben= 0x4f55 0x904d", "dochira= 0x4f55 0x65b9", "docchi= 0x4f55 0x65b9", "donata= 0x4f55 0x65b9", "nanibou= 0x4f55 0x67d0", "nanmai= 0x4f55 0x679a", "nanyoubi= 0x4f55 0x66dc 0x65e5", "kakaku= 0x4fa1 0x683c", "kachi1= 0x4fa1 0x5024", "kakyou1= 0x4f73 0x5883", "kasaku= 0x4f73 0x4f5c", "kajin= 0x4f73 0x4eba", "kajinhakumei= 0x4f73 0x4eba 0x8584 0x547d", "kuwaeru1= 0x52a0 0x3048 0x308b", "kuwawaru= 0x52a0 0x308f 0x308b", "kagaisha= 0x52a0 0x5bb3 0x8005", "kagen2= 0x52a0 0x6e1b", "kakou3= 0x52a0 0x5de5", "kasoku= 0x52a0 0x901f", "kanyuu1= 0x52a0 0x5165", "kahou1= 0x52a0 0x6cd5", "kamei2= 0x52a0 0x76df", "ka1= 0x53ef", "kawaisou= 0x53ef 0x54c0 0x76f8", "kawaii= 0x53ef 0x611b 0x3044", "kawaigaru= 0x53ef 0x611b 0x304c 0x308b", "kawairashii= 0x53ef 0x611b 0x3089 0x3057 0x3044", "kaketsu= 0x53ef 0x6c7a", "okashina= 0x53ef 0x7b11 0x3057 0x306a", "kasosei= 0x53ef 0x5851 0x6027", "kanensei= 0x53ef 0x71c3 0x6027", "kanenbutsu= 0x53ef 0x71c3 0x7269", "kanou= 0x53ef 0x80fd", "kanousei= 0x53ef 0x80fd 0x6027", "kanari= 0x53ef 0x4e5f", "natsu= 0x590f", "natsubate= 0x590f 0x3070 0x3066", "kaki1= 0x590f 0x671f", "kaki2= 0x590f 0x5b63", "natsuyasumi= 0x590f 0x4f11 0x307f", "geshi= 0x590f 0x81f3", "natsumono= 0x590f 0x7269", "yome= 0x5ac1", "totsugu= 0x5ac1 0x3050", "yomeiri= 0x5ac1 0x5165 0x308a", "ie1= 0x5bb6", "uchi1= 0x5bb6", "ke1= 0x5bb6", "kaoku= 0x5bb6 0x5c4b", "kagu1= 0x5bb6 0x5177", "kakei1= 0x5bb6 0x7cfb", "kakei2= 0x5bb6 0x8a08", "kakeibo= 0x5bb6 0x8a08 0x7c3f", "kaji1= 0x5bb6 0x4e8b", "yanushi= 0x5bb6 0x4e3b", "iede= 0x5bb6 0x51fa", "kasei1= 0x5bb6 0x653f", "kazoku= 0x5bb6 0x65cf", "kazokudure= 0x5bb6 0x65cf 0x9023 0x308c", "kataku= 0x5bb6 0x5b85", "katakusousa= 0x5bb6 0x5b85 0x635c 0x67fb", "katakusousaku= 0x5bb6 0x5b85 0x635c 0x7d22", "kachiku= 0x5bb6 0x755c", "yachin= 0x5bb6 0x8cc3", "katei2= 0x5bb6 0x5ead", "kateiran= 0x5bb6 0x5ead 0x6b04", "katokusouzoku= 0x5bb6 0x7763 0x76f8 0x7d9a", "kanai= 0x5bb6 0x5185", "iegara= 0x5bb6 0x67c4", "kahou2= 0x5bb6 0x5b9d", "kaboku= 0x5bb6 0x50d5", "kerai= 0x5bb6 0x6765", "kasen2= 0x5be1 0x5360", "kafu= 0x5be1 0x5a66", "kabun= 0x5be1 0x805e", "kamoku1= 0x5be1 0x9ed9", "ka2= 0x79d1", "kagaku2= 0x79d1 0x5b66", "kagakusha= 0x79d1 0x5b66 0x8005", "kamoku2= 0x79d1 0x76ee", "himanatoki= 0x6687 0x306a 0x6642", "himadoru= 0x6687 0x53d6 0x308b", "himatsubushi= 0x6687 0x6f70 0x3057", "hatashite= 0x679c 0x305f 0x3057 0x3066", "hatasu= 0x679c 0x305f 0x3059", "hate= 0x679c 0x3066", "hateshinai= 0x679c 0x3066 0x3057 0x306a 0x3044", "hateru= 0x679c 0x3066 0x308b", "kakan= 0x679c 0x6562", "kajitsu= 0x679c 0x5b9f", "kaju= 0x679c 0x6a39", "kajuu= 0x679c 0x6c41", "kudamono= 0x679c 0x7269", "kakaru1= 0x67b6 0x304b 0x308b", "kakeru1= 0x67b6 0x3051 0x308b", "kakyou2= 0x67b6 0x6a4b", "kakuu= 0x67b6 0x7a7a", "kasetsu2= 0x67b6 0x8a2d", "uta= 0x6b4c", "utau1= 0x6b4c 0x3046", "kageki= 0x6b4c 0x5287", "kashi3= 0x6b4c 0x8a5e", "kashu= 0x6b4c 0x624b", "utagoe= 0x6b4c 0x58f0", "utahime= 0x6b4c 0x59eb", "kabuki= 0x6b4c 0x821e 0x4f0e", "kayou1= 0x6b4c 0x8b21", "kayoukyoku= 0x6b4c 0x8b21 0x66f2", "karuta1= 0x6b4c 0x7559 0x591a", "kawa1= 0x6cb3", "kagan= 0x6cb3 0x5cb8", "kawagishi1= 0x6cb3 0x5cb8", "kawara1= 0x6cb3 0x539f", "kakou4= 0x6cb3 0x53e3", "kawaguchi= 0x6cb3 0x53e3", "kasen3= 0x6cb3 0x5ddd", "katei3= 0x6cb3 0x5e95", "kahan= 0x6cb3 0x7554", "hi1= 0x706b", "kaenbin= 0x706b 0x708e 0x74f6", "hibana= 0x706b 0x82b1", "kakouko= 0x706b 0x53e3 0x6e56", "kasai= 0x706b 0x707d", "kazan= 0x706b 0x5c71", "kazanbai= 0x706b 0x5c71 0x7070", "kaji2= 0x706b 0x4e8b", "yakedo= 0x706b 0x50b7", "kaseigan= 0x706b 0x6210 0x5ca9", "kasei2= 0x706b 0x661f", "kaseijin= 0x706b 0x661f 0x4eba", "kasou2= 0x706b 0x846c", "hibachi= 0x706b 0x9262", "kayaku= 0x706b 0x85ac", "kayou2= 0x706b 0x66dc", "kayoubi= 0x706b 0x66dc 0x65e5", "karyoku= 0x706b 0x529b", "kakon= 0x798d 0x6839", "kafuku= 0x798d 0x798f", "kasegite= 0x7a3c 0x304e 0x624b", "kasegu= 0x7a3c 0x3050", "kagyou= 0x7a3c 0x696d", "kadou1= 0x7a3c 0x50cd", "kagetsu= 0x7b87 0x6708", "kasho= 0x7b87 0x6240", "kajou1= 0x7b87 0x6761", "hana1= 0x82b1", "hanaya= 0x82b1 0x5c4b", "hanayome= 0x82b1 0x5ac1", "hanabi= 0x82b1 0x706b", "hanami= 0x82b1 0x898b", "hanazakari= 0x82b1 0x76db 0x308a", "hanataba= 0x82b1 0x675f", "kadan= 0x82b1 0x58c7", "kachou1= 0x82b1 0x9ce5", "hanagumori= 0x82b1 0x66c7 0x308a", "kabin= 0x82b1 0x74f6", "hanabira= 0x82b1 0x5f01", "hanamuko= 0x82b1 0x5a7f", "karyuukai= 0x82b1 0x67f3 0x754c", "hanagoyomi= 0x82b1 0x66a6", "iraira= 0x82db 0x3005", "ijime= 0x82db 0x3081", "ijimeru= 0x82db 0x3081 0x308b", "nasu2= 0x8304 0x5b50", "ni1= 0x8377", "nidukuri1= 0x8377 0x4f5c 0x308a", "nifuda= 0x8377 0x672d", "nidukuri2= 0x8377 0x9020 0x308a", "nimotsu= 0x8377 0x7269", "nikuzure= 0x8377 0x5d29 0x308c", "niage= 0x8377 0x63da 0x3052", "hana2= 0x83ef", "hanabanashii= 0x83ef 0x3005 0x3057 0x3044", "hanayaka= 0x83ef 0x3084 0x304b", "kegonnotaki= 0x83ef 0x53b3 0x306e 0x6edd", "kadou2= 0x83ef 0x9053", "kabi1= 0x83ef 0x7f8e", "karei= 0x83ef 0x9e97", "kashi4= 0x83d3 0x5b50", "kashiya1= 0x83d3 0x5b50 0x5c4b", "ebi= 0x8766", "ka3= 0x8ab2", "kazei= 0x8ab2 0x7a0e", "kadai= 0x8ab2 0x984c", "kachou2= 0x8ab2 0x9577", "katei4= 0x8ab2 0x7a0b", "kamoku3= 0x8ab2 0x76ee", "kasha= 0x8ca8 0x8eca", "kamotsu= 0x8ca8 0x7269", "kahei= 0x8ca8 0x5e63", "kaheikachi= 0x8ca8 0x5e63 0x4fa1 0x5024", "sugi1= 0x904e 0x304e", "sugiru= 0x904e 0x304e 0x308b", "sugosu= 0x904e 0x3054 0x3059", "ayamachi= 0x904e 0x3061", "ayamatsu= 0x904e 0x3064", "kako= 0x904e 0x53bb", "kagekiha= 0x904e 0x6fc0 0x6d3e", "kashitsu= 0x904e 0x5931", "kajou2= 0x904e 0x5270", "kaso= 0x904e 0x758e", "katei5= 0x904e 0x7a0b", "katoki= 0x904e 0x6e21 0x671f", "kado1= 0x904e 0x5ea6", "kahansuu= 0x904e 0x534a 0x6570", "kahou3= 0x904e 0x8912", "karou= 0x904e 0x52b4", "kasumi= 0x971e", "kasumu= 0x971e 0x3080", "ka4= 0x868a", "kaya1= 0x868a 0x5c4b", "katorisenkou= 0x868a 0x53d6 0x308a 0x7dda 0x9999", "kabashira= 0x868a 0x67f1", "kaya2= 0x868a 0x5e33", "niwaka= 0x4fc4", "niwakani= 0x4fc4 0x306b", "niwakaame2= 0x4fc4 0x96e8", "ware= 0x6211", "wareware= 0x6211 0x3005", "waga= 0x6211 0x304c", "wagaya= 0x6211 0x304c 0x5bb6", "wagakuni2= 0x6211 0x304c 0x56fd", "wagamama= 0x6211 0x304c 0x5118", "waregachi= 0x6211 0x52dd 0x3061", "gaman= 0x6211 0x6162", "gari= 0x6211 0x5229", "kaku1= 0x753b", "kakusuru= 0x753b 0x3059 0x308b", "gaka= 0x753b 0x5bb6", "kakkiteki= 0x753b 0x671f 0x7684", "kakusuu= 0x753b 0x6570", "gazou= 0x753b 0x50cf", "gahaku= 0x753b 0x4f2f", "gamen= 0x753b 0x9762", "gayoushi= 0x753b 0x7528 0x7d19", "garou= 0x753b 0x5eca", "me1= 0x82bd", "mebae= 0x82bd 0x751f 0x3048", "gashi1= 0x8cc0 0x8a5e", "gajou= 0x8cc0 0x72b6", "gashou= 0x8cc0 0x6b63", "gagaku= 0x96c5 0x697d", "gashu= 0x96c5 0x8da3", "gachi= 0x96c5 0x81f4", "gaki= 0x9913 0x9b3c", "uejini1= 0x9913 0x6b7b", "gashi2= 0x9913 0x6b7b", "kai1= 0x4ecb", "kaizai= 0x4ecb 0x5728", "kainyuu= 0x4ecb 0x5165", "kaihou1= 0x4ecb 0x62b1", "e1= 0x4f1a", "kai2= 0x4f1a", "au2= 0x4f1a 0x3046", "kaiin1= 0x4f1a 0x54e1", "kaiinmeibo= 0x4f1a 0x54e1 0x540d 0x7c3f", "kaikan= 0x4f1a 0x9928", "kaigi1= 0x4f1a 0x8b70", "kaikei= 0x4f1a 0x8a08", "kaiken1= 0x4f1a 0x898b", "kaigou= 0x4f1a 0x5408", "kaisha= 0x4f1a 0x793e", "eshaku= 0x4f1a 0x91c8", "kaijou1= 0x4f1a 0x5834", "kaishoku= 0x4f1a 0x98df", "kaishin1= 0x4f1a 0x5fc3", "kaisoku1= 0x4f1a 0x5247", "kaidan1= 0x4f1a 0x8ac7", "kaichou= 0x4f1a 0x9577", "kaihi1= 0x4f1a 0x8cbb", "kaiwa= 0x4f1a 0x8a71", "tokasu1= 0x89e3 0x304b 0x3059", "toku1= 0x89e3 0x304f", "hodoku= 0x89e3 0x304f", "tokeru1= 0x89e3 0x3051 0x308b", "hodokeru= 0x89e3 0x3051 0x308b", "kaikin1= 0x89e3 0x7981", "kaiketsu= 0x89e3 0x6c7a", "kaiko1= 0x89e3 0x96c7", "kaisan= 0x89e3 0x6563", "kaishaku= 0x89e3 0x91c8", "kaijo= 0x89e3 0x9664", "kaishou= 0x89e3 0x6d88", "kaiseki= 0x89e3 0x6790", "kaisetsu1= 0x89e3 0x8aac", "kaitai1= 0x89e3 0x4f53", "kaitou1= 0x89e3 0x7b54", "gedokuzai= 0x89e3 0x6bd2 0x5264", "genetsu= 0x89e3 0x71b1", "kaihou2= 0x89e3 0x653e", "kaibou= 0x89e3 0x5256", "kaibougaku= 0x89e3 0x5256 0x5b66", "kaiyaku= 0x89e3 0x7d04", "kai3= 0x56de", "mawasu= 0x56de 0x3059", "mawari1= 0x56de 0x308a", "mawarimichi= 0x56de 0x308a 0x9053", "mawaru= 0x56de 0x308b", "kaiki1= 0x56de 0x5e30", "kaikyou1= 0x56de 0x6559", "kaiko2= 0x56de 0x9867", "kaikoroku= 0x56de 0x9867 0x9332", "kaishuu1= 0x56de 0x53ce", "kaisuu= 0x56de 0x6570", "kaisuuken= 0x56de 0x6570 0x5238", "kaisou1= 0x56de 0x60f3", "kaisou2= 0x56de 0x9001", "kaiten1= 0x56de 0x8ee2", "kaitou2= 0x56de 0x7b54", "kaihi2= 0x56de 0x907f", "kaifuku= 0x56de 0x5fa9", "kairan= 0x56de 0x89a7", "kairo1= 0x56de 0x8def", "kairou= 0x56de 0x5eca", "katamari= 0x584a", "kaikon1= 0x584a 0x6839", "kaijou2= 0x584a 0x72b6", "kowasu= 0x58ca 0x3059", "kowareru= 0x58ca 0x308c 0x308b", "kaiketsubyou= 0x58ca 0x8840 0x75c5", "kaimetsu= 0x58ca 0x6ec5", "kokoroyoi= 0x5feb 0x3044", "kairaku= 0x5feb 0x697d", "kaikatsu= 0x5feb 0x6d3b", "kaisei1= 0x5feb 0x6674", "kaisoku2= 0x5feb 0x901f", "kaisokudensha= 0x5feb 0x901f 0x96fb 0x8eca", "kaiteki= 0x5feb 0x9069", "ayashii= 0x602a 0x3057 0x3044", "ayashimu= 0x602a 0x3057 0x3080", "kega= 0x602a 0x6211", "kaiki2= 0x602a 0x5947", "kaijuu1= 0x602a 0x7363", "kaibutsu= 0x602a 0x7269", "kui= 0x6094 0x3044", "kuiru= 0x6094 0x3044 0x308b", "kuyami= 0x6094 0x307f", "kuyamijou= 0x6094 0x307f 0x72b6", "kuyamu= 0x6094 0x3084 0x3080", "kaigo= 0x6094 0x609f", "kaikon2= 0x6094 0x6068", "futokoro= 0x61d0", "natsukashii= 0x61d0 0x304b 0x3057 0x3044", "natsukashimu= 0x61d0 0x304b 0x3057 0x3080", "natsuku= 0x61d0 0x304f", "natsukeru= 0x61d0 0x3051 0x308b", "kaigi2= 0x61d0 0x7591", "kaijuu2= 0x61d0 0x67d4", "kaichuudentou= 0x61d0 0x4e2d 0x96fb 0x706f", "imashime= 0x6212 0x3081", "imashimeru= 0x6212 0x3081 0x308b", "kairitsu= 0x6212 0x5f8b", "kaitai2= 0x62d0 0x5e2f", "aratamaru= 0x6539 0x307e 0x308b", "aratamete= 0x6539 0x3081 0x3066", "aratameru= 0x6539 0x3081 0x308b", "kaikaku= 0x6539 0x9769", "kaiken2= 0x6539 0x61b2", "kaisatsu= 0x6539 0x672d", "kaisatsuguchi= 0x6539 0x672d 0x53e3", "kaishuu2= 0x6539 0x5b97", "kaishin2= 0x6539 0x65b0", "kaisei2= 0x6539 0x59d3", "kaisei3= 0x6539 0x6b63", "kaisen= 0x6539 0x9078", "kaizen= 0x6539 0x5584", "kaisou3= 0x6539 0x846c", "kaizou= 0x6539 0x9020", "kaichiku= 0x6539 0x7bc9", "kaichuu= 0x6539 0x92f3", "kaitei1= 0x6539 0x8a02", "kaiteiban= 0x6539 0x8a02 0x7248", "kaimei= 0x6539 0x540d", "kairyou= 0x6539 0x826f", "umi= 0x6d77", "kaiin2= 0x6d77 0x54e1", "kaigai= 0x6d77 0x5916", "kaigan= 0x6d77 0x5cb8", "kaikyou2= 0x6d77 0x5ce1", "kaigun= 0x6d77 0x8ecd", "kaikou= 0x6d77 0x6e9d", "kaisanbutsu= 0x6d77 0x7523 0x7269", "kaijou3= 0x6d77 0x4e0a", "kaisui= 0x6d77 0x6c34", "kaisuiyoku= 0x6d77 0x6c34 0x6d74", "kaisuiyokujou= 0x6d77 0x6c34 0x6d74 0x5834", "kaisou4= 0x6d77 0x85fb", "kaizoku= 0x6d77 0x8cca", "nori1= 0x6d77 0x82d4", "kaitei2= 0x6d77 0x5e95", "kainan= 0x6d77 0x96e3", "kaibatsu= 0x6d77 0x629c", "kaihin= 0x6d77 0x6d5c", "umibe= 0x6d77 0x8fba", "uminari= 0x6d77 0x9cf4 0x308a", "kaimen1= 0x6d77 0x7dbf", "kaimen2= 0x6d77 0x9762", "kaiyou= 0x6d77 0x6d0b", "kairi= 0x6d77 0x91cc", "kairyuu= 0x6d77 0x6d41", "kairo2= 0x6d77 0x8def", "aku2= 0x7070", "hai1= 0x7070", "haizara= 0x7070 0x76bf", "haiiro= 0x7070 0x8272", "mina= 0x7686", "minna= 0x7686", "minasan= 0x7686 0x3055 0x3093", "kaikin2= 0x7686 0x52e4", "kaisai1= 0x7686 0x6e08", "kaimu= 0x7686 0x7121", "kaimoku= 0x7686 0x76ee", "minasama= 0x7686 0x69d8", "enogu= 0x7d75 0x306e 0x5177", "ehagaki1= 0x7d75 0x306f 0x304c 0x304d", "kaiga= 0x7d75 0x753b", "emaki= 0x7d75 0x5dfb", "emakimono= 0x7d75 0x5dfb 0x7269", "ekaki= 0x7d75 0x63cf 0x304d", "ehon= 0x7d75 0x672c", "ehagaki2= 0x7d75 0x8449 0x66f8", "kani1= 0x87f9", "aku3= 0x958b 0x304f", "hiraku= 0x958b 0x304f", "akeru1= 0x958b 0x3051 0x308b", "hirakeru= 0x958b 0x3051 0x308b", "kaikai= 0x958b 0x4f1a", "kaikinshatsu= 0x958b 0x895f 0x30b7 0x30e3 0x30c4", "kaikon3= 0x958b 0x58be", "kaikonchi= 0x958b 0x58be 0x5730", "kaisai2= 0x958b 0x50ac", "kaishi= 0x958b 0x59cb", "kaijou4= 0x958b 0x57ce", "kaisetsu2= 0x958b 0x8a2d", "kaitaku= 0x958b 0x62d3", "kaitakusha= 0x958b 0x62d3 0x8005", "kaitei3= 0x958b 0x5ef7", "kaiten2= 0x958b 0x5e97", "kaihatsu= 0x958b 0x767a", "kaihatsutojoukoku= 0x958b 0x767a 0x9014 0x4e0a 0x56fd", "kaihi3= 0x958b 0x6249", "kaihyou= 0x958b 0x7968", "kaifuu= 0x958b 0x5c01", "kaihei= 0x958b 0x9589", "kaihou3= 0x958b 0x653e", "kaimaku= 0x958b 0x5e55", "kai4= 0x968e", "kaikyuu= 0x968e 0x7d1a", "kaisou5= 0x968e 0x5c64", "kaidan2= 0x968e 0x6bb5", "kai5= 0x8c9d", "kaibotan= 0x8c9d 0x30dc 0x30bf 0x30f3", "kaigara1= 0x8c9d 0x6bbb", "kairui= 0x8c9d 0x985e", "kaigara2= 0x8c9d 0x6bbc", "gai1= 0x52be", "soto= 0x5916", "hoka= 0x5916", "hazusu= 0x5916 0x3059", "hokani= 0x5916 0x306b", "hazure= 0x5916 0x308c", "hazureru= 0x5916 0x308c 0x308b", "geka= 0x5916 0x79d1", "gaika= 0x5916 0x8ca8", "gaikai= 0x5916 0x754c", "gaikaku= 0x5916 0x90ed", "gaikakudantai= 0x5916 0x90ed 0x56e3 0x4f53", "gaikan= 0x5916 0x89b3", "gaiki= 0x5916 0x6c17", "gaiken= 0x5916 0x898b", "gaikou= 0x5916 0x4ea4", "gaikoukan= 0x5916 0x4ea4 0x5b98", "gaikoku= 0x5916 0x56fd", "gaikokugo= 0x5916 0x56fd 0x8a9e", "gaikokujin= 0x5916 0x56fd 0x4eba", "gaisha= 0x5916 0x8eca", "gaijuunaigou= 0x5916 0x67d4 0x5185 0x525b", "gaishutsu= 0x5916 0x51fa", "gaishoku= 0x5916 0x98df", "gaijin= 0x5916 0x4eba", "gaijinmuke= 0x5916 0x4eba 0x5411 0x3051", "gaishou= 0x5916 0x76f8", "sotogawa= 0x5916 0x5074", "gaiden= 0x5916 0x96fb", "gaibu= 0x5916 0x90e8", "gaimai= 0x5916 0x7c73", "sotobori= 0x5916 0x5800", "gaimu= 0x5916 0x52d9", "gaimushou= 0x5916 0x52d9 0x7701", "gaimen= 0x5916 0x9762", "gairaigo= 0x5916 0x6765 0x8a9e", "seki1= 0x54b3", "gai2= 0x5bb3", "gaisuru= 0x5bb3 0x3059 0x308b", "gaichuu= 0x5bb3 0x866b", "gake= 0x5d16", "gaitan= 0x6168 0x5606", "gaikatsu= 0x6982 0x62ec", "gaikyou= 0x6982 0x6cc1", "gaisan= 0x6982 0x7b97", "gainen= 0x6982 0x5ff5", "gairyaku= 0x6982 0x7565", "gairon= 0x6982 0x8ad6", "futa1= 0x84cb", "gai3= 0x8857", "machi1= 0x8857", "machikado1= 0x8857 0x89d2", "gaitou1= 0x8857 0x706f", "gaitou2= 0x8857 0x982d", "kaidou= 0x8857 0x9053", "gairo= 0x8857 0x8def", "gaitou3= 0x8a72 0x5f53", "gaihakunachishiki= 0x8a72 0x535a 0x306a 0x77e5 0x8b58", "gaikotsu= 0x9ab8 0x9aa8", "kaeru1= 0x86d9", "kaki3= 0x57a3", "kaimamiru= 0x57a3 0x9593 0x898b 0x308b", "kakine= 0x57a3 0x6839", "kaki4= 0x67ff", "kaku2= 0x5404", "kakui= 0x5404 0x4f4d", "kakuekiteisha= 0x5404 0x99c5 0x505c 0x8eca", "kakkoku= 0x5404 0x56fd", "kakuji= 0x5404 0x81ea", "kakushu= 0x5404 0x7a2e", "kakujin= 0x5404 0x4eba", "kakuchi= 0x5404 0x5730", "kakusan= 0x62e1 0x6563", "kakujuu= 0x62e1 0x5145", "kakuseiki1= 0x62e1 0x58f0 0x5668", "kakuseiki2= 0x62e1 0x58f0 0x6a5f", "kakudai= 0x62e1 0x5927", "kakuchou= 0x62e1 0x5f35", "kaku3= 0x683c", "kakkou1= 0x683c 0x597d", "kakusa= 0x683c 0x5dee", "koushi1= 0x683c 0x5b50", "kakutou= 0x683c 0x95d8", "kakubetsu= 0x683c 0x5225", "kaku4= 0x6838", "kakushin1= 0x6838 0x5fc3", "kakunenryou= 0x6838 0x71c3 0x6599", "kakuhannouro= 0x6838 0x53cd 0x5fdc 0x7089", "kakuheiki= 0x6838 0x5175 0x5668", "kara1= 0x6bbb", "eru1= 0x7372 0x308b", "kakutoku= 0x7372 0x5f97", "emono= 0x7372 0x7269", "tashika= 0x78ba 0x304b", "tashikameru= 0x78ba 0x304b 0x3081 0x308b", "shikkari= 0x78ba 0x308a", "kakujitsu= 0x78ba 0x5b9f", "kakushin2= 0x78ba 0x4fe1", "kakutei= 0x78ba 0x5b9a", "kakunin= 0x78ba 0x8a8d", "kakuho= 0x78ba 0x4fdd", "kakuritsu1= 0x78ba 0x7387", "kakuritsu2= 0x78ba 0x7acb", "oboe= 0x899a 0x3048", "oboeru= 0x899a 0x3048 0x308b", "samasu1= 0x899a 0x307e 0x3059", "sameru1= 0x899a 0x3081 0x308b", "kakugo= 0x899a 0x609f", "kakuseizai= 0x899a 0x9192 0x5264", "kaku5= 0x89d2", "kado2= 0x89d2", "tsuno= 0x89d2", "tsunobue= 0x89d2 0x7b1b", "kakudo= 0x89d2 0x5ea6", "kakumaku= 0x89d2 0x819c", "kakkou2= 0x90ed 0x516c", "kakka= 0x95a3 0x4e0b", "kakugi= 0x95a3 0x8b70", "kakuryou= 0x95a3 0x50da", "hedataru= 0x9694 0x305f 0x308b", "hedateru= 0x9694 0x3066 0x308b", "kakuri= 0x9694 0x96e2", "kawa2= 0x9769", "kawagutsu= 0x9769 0x9774", "kakushin3= 0x9769 0x65b0", "kakumei= 0x9769 0x547d", "manabu= 0x5b66 0x3076", "gakui= 0x5b66 0x4f4d", "gakuen= 0x5b66 0x5712", "gakka= 0x5b66 0x79d1", "gakkai1= 0x5b66 0x4f1a", "gakkai2= 0x5b66 0x754c", "gakuwari1= 0x5b66 0x5272", "gakuwari2= 0x5b66 0x5272 0x308a", "gakki1= 0x5b66 0x671f", "gakkyuu1= 0x5b66 0x7a76", "gakkyuu2= 0x5b66 0x7d1a", "gakkou= 0x5b66 0x6821", "gakushi= 0x5b66 0x58eb", "gakushiki= 0x5b66 0x8b58", "gakusha= 0x5b66 0x8005", "gakushuu= 0x5b66 0x7fd2", "gakushuujuku= 0x5b66 0x7fd2 0x587e", "gakujutsu= 0x5b66 0x8853", "gakujutsuyougo= 0x5b66 0x8853 0x7528 0x8a9e", "gakusei= 0x5b66 0x751f", "gakuseiryou= 0x5b66 0x751f 0x5bee", "gakusetsu= 0x5b66 0x8aac", "gakuchou= 0x5b66 0x9577", "gakudou= 0x5b66 0x7ae5", "gakunen= 0x5b66 0x5e74", "gakuhi= 0x5b66 0x8cbb", "gakubu= 0x5b66 0x90e8", "gakumon= 0x5b66 0x554f", "gakuyuu= 0x5b66 0x53cb", "gakuryoku= 0x5b66 0x529b", "gakurei= 0x5b66 0x9f62", "gakureki= 0x5b66 0x6b74", "take1= 0x5cb3", "gakufu1= 0x5cb3 0x7236", "raku= 0x697d", "tanoshii= 0x697d 0x3057 0x3044", "tanoshimi= 0x697d 0x3057 0x307f", "tanoshimu= 0x697d 0x3057 0x3080", "rakuen= 0x697d 0x5712", "rakkanteki= 0x697d 0x89b3 0x7684", "gakki2= 0x697d 0x5668", "gakutai= 0x697d 0x968a", "rakutenka= 0x697d 0x5929 0x5bb6", "rakutenteki= 0x697d 0x5929 0x7684", "gakufu2= 0x697d 0x8b5c", "gaku= 0x984d", "hitai= 0x984d", "gakubuchi= 0x984d 0x7e01", "gakumen= 0x984d 0x9762", "ago= 0x984e", "kakaru2= 0x639b 0x304b 0x308b", "kake1= 0x639b 0x3051", "kakeru2= 0x639b 0x3051 0x308b", "kakezan= 0x639b 0x3051 0x7b97", "kakejiku1= 0x639b 0x3051 0x8ef8", "kakebuton= 0x639b 0x3051 0x5e03 0x56e3", "kakejiku2= 0x639b 0x8ef8", "kata1= 0x6f5f", "katsu1= 0x5272", "wari1= 0x5272", "saku1= 0x5272 0x304f", "warini= 0x5272 0x306b", "wari2= 0x5272 0x308a", "waribiki1= 0x5272 0x308a 0x5f15", "waribiki2= 0x5272 0x308a 0x5f15 0x304d", "waribiku1= 0x5272 0x308a 0x5f15 0x304f", "warikan= 0x5272 0x308a 0x52d8", "warikomu= 0x5272 0x308a 0x8fbc 0x3080", "warizan= 0x5272 0x308a 0x7b97", "waridasu1= 0x5272 0x308a 0x51fa 0x3059", "warikiru= 0x5272 0x308a 0x5207 0x308b", "wariate1= 0x5272 0x308a 0x5f53 0x3066", "wariateru1= 0x5272 0x308a 0x5f53 0x3066 0x308b", "waribashi= 0x5272 0x308a 0x7bb8", "waru= 0x5272 0x308b", "wareru= 0x5272 0x308c 0x308b", "wareme= 0x5272 0x308c 0x76ee", "waribiki3= 0x5272 0x5f15", "waribiki4= 0x5272 0x5f15 0x304d", "waribiku2= 0x5272 0x5f15 0x304f", "wariai= 0x5272 0x5408", "wariaini= 0x5272 0x5408 0x306b", "waridasu2= 0x5272 0x51fa 0x3059", "katsujou= 0x5272 0x8b72", "wariate2= 0x5272 0x5f53 0x3066", "wariateru2= 0x5272 0x5f53 0x3066 0x308b", "kappa= 0x559d 0x7834", "atakamo= 0x6070 0x3082", "kukuru= 0x62ec 0x308b", "kakko= 0x62ec 0x5f27", "kakki= 0x6d3b 0x6c17", "katsuji= 0x6d3b 0x5b57", "katsudou= 0x6d3b 0x52d5", "kappatsu= 0x6d3b 0x767a", "katsuyaku= 0x6d3b 0x8e8d", "katsuyou= 0x6d3b 0x7528", "katsuryoku= 0x6d3b 0x529b", "kawaki= 0x6e07 0x304d", "kawaku1= 0x6e07 0x304f", "kassui= 0x6e07 0x6c34", "katsubou= 0x6e07 0x671b", "nameraka= 0x6ed1 0x3089 0x304b", "suberidai= 0x6ed1 0x308a 0x53f0", "suberu1= 0x6ed1 0x308b", "kokkei= 0x6ed1 0x7a3d", "kassouro= 0x6ed1 0x8d70 0x8def", "kasshoku= 0x8910 0x8272", "katsumata= 0x4e14 0x3064 0x53c8", "kanau= 0x53f6 0x3046", "kanaeru= 0x53f6 0x3048 0x308b", "kaban= 0x9784", "kabu= 0x682a", "kabuken= 0x682a 0x5238", "kabushiki= 0x682a 0x5f0f", "kabushikigaisha= 0x682a 0x5f0f 0x4f1a 0x793e", "kabunushi= 0x682a 0x4e3b", "kabunushisoukai= 0x682a 0x4e3b 0x7dcf 0x4f1a", "kama1= 0x91dc", "kamitsuku= 0x565b 0x307f 0x4ed8 0x304f", "kamu1= 0x565b 0x3080", "kajiru= 0x565b 0x308b", "karikomu= 0x5208 0x308a 0x8fbc 0x3080", "karitoru= 0x5208 0x308a 0x53d6 0x308b", "kariire= 0x5208 0x308a 0x5165 0x308c", "karu1= 0x5208 0x308b", "kawara2= 0x74e6", "kawakasu= 0x4e7e 0x304b 0x3059", "kawaku2= 0x4e7e 0x304f", "kanki1= 0x4e7e 0x671f", "kanki2= 0x4e7e 0x5b63", "kanshitsuzou= 0x4e7e 0x6f06 0x50cf", "kansou1= 0x4e7e 0x71e5", "kansouki= 0x4e7e 0x71e5 0x5668", "kandenchi= 0x4e7e 0x96fb 0x6c60", "kanpai1= 0x4e7e 0x676f", "kanbutsu= 0x4e7e 0x7269", "hoshimono= 0x4e7e 0x7269", "kanmuri= 0x51a0", "kankonsousai= 0x51a0 0x5a5a 0x846c 0x796d", "samui= 0x5bd2 0x3044", "samusa= 0x5bd2 0x3055", "kanki3= 0x5bd2 0x6c17", "samuzora= 0x5bd2 0x7a7a", "kansho= 0x5bd2 0x6691", "kanson= 0x5bd2 0x6751", "kandankei= 0x5bd2 0x6696 0x8a08", "kanchuu= 0x5bd2 0x4e2d", "kanpa1= 0x5bd2 0x6ce2", "kanrei1= 0x5bd2 0x51b7", "kankou1= 0x520a 0x884c", "kan1= 0x52d8", "kanchigai= 0x52d8 0x9055 0x3044", "kanjou1= 0x52d8 0x5b9a", "kandou1= 0x52d8 0x5f53", "kanben= 0x52d8 0x5f01", "susumeru1= 0x52e7 0x3081 0x308b", "kangyou= 0x52e7 0x696d", "kankoku= 0x52e7 0x544a", "kanshou1= 0x52e7 0x5968", "kanjin1= 0x52e7 0x9032", "kanzenchouaku= 0x52e7 0x5584 0x61f2 0x60aa", "kanyuu2= 0x52e7 0x8a98", "maki= 0x5dfb", "makikomu1= 0x5dfb 0x304d 0x8fbc 0x3080", "makijaku1= 0x5dfb 0x304d 0x5c3a", "makizoe1= 0x5dfb 0x304d 0x6dfb 0x3048", "maku1= 0x5dfb 0x304f", "makikomu2= 0x5dfb 0x8fbc 0x3080", "makijaku2= 0x5dfb 0x5c3a", "makizoe2= 0x5dfb 0x6dfb 0x3048", "wameku= 0x559a 0x304f", "kanki4= 0x559a 0x8d77", "kanmon1= 0x559a 0x554f", "kotaeru= 0x582a 0x3048 0x308b", "koraeru= 0x582a 0x3048 0x308b", "taeru1= 0x582a 0x3048 0x308b", "taeshinobu= 0x582a 0x3048 0x5fcd 0x3076", "tamaranai= 0x582a 0x3089 0x306a 0x3044", "kannin= 0x582a 0x5fcd", "kanketsu1= 0x5b8c 0x7d50", "kansui= 0x5b8c 0x9042", "kansei1= 0x5b8c 0x6210", "kanzen1= 0x5b8c 0x5168", "kanpai2= 0x5b8c 0x6557", "kanpunakimade= 0x5b8c 0x819a 0x306a 0x304d 0x307e 0x3067", "kanryou1= 0x5b8c 0x4e86", "kanpeki= 0x5b8c 0x74a7", "kanken= 0x5b98 0x61b2", "kanchou1= 0x5b98 0x5e81", "kantei1= 0x5b98 0x90b8", "kanbouchou= 0x5b98 0x623f 0x9577", "kanbouchoukan= 0x5b98 0x623f 0x9577 0x5b98", "kanri1= 0x5b98 0x540f", "kanryou2= 0x5b98 0x50da", "kanryoushugi= 0x5b98 0x50da 0x4e3b 0x7fa9", "kutsurogu= 0x5bdb 0x3050", "kangen1= 0x5bdb 0x53b3", "kankou2= 0x5bdb 0x539a", "kandai= 0x5bdb 0x5927", "kanyou1= 0x5bdb 0x5bb9", "hosu= 0x5e72 0x3059", "hiru1= 0x5e72 0x308b", "higata= 0x5e72 0x6f5f", "kanshou2= 0x5e72 0x6e09", "kantaku= 0x5e72 0x62d3", "kanchou2= 0x5e72 0x6f6e", "kanman1= 0x5e72 0x6e80", "kan2= 0x5e79", "miki= 0x5e79", "kanji1= 0x5e79 0x4e8b", "kanjichou= 0x5e79 0x4e8b 0x9577", "kanbu1= 0x5e79 0x90e8", "wazurau1= 0x60a3 0x3046", "kanja= 0x60a3 0x8005", "kanbu2= 0x60a3 0x90e8", "kanji2= 0x611f 0x3058", "kanjiru= 0x611f 0x3058 0x308b", "kanzuru= 0x611f 0x305a 0x308b", "kanka= 0x611f 0x5316", "kangai1= 0x611f 0x6168", "kangaimuryou= 0x611f 0x6168 0x7121 0x91cf", "kankaku1= 0x611f 0x899a", "kankyuu1= 0x611f 0x6ce3", "kangeki= 0x611f 0x6fc0", "kansha= 0x611f 0x8b1d", "kanjusei= 0x611f 0x53d7 0x6027", "kanjou2= 0x611f 0x60c5", "kanshoku1= 0x611f 0x89e6", "kanshin1= 0x611f 0x5fc3", "kansen= 0x611f 0x67d3", "kansou2= 0x611f 0x60f3", "kantan1= 0x611f 0x5606", "kandou2= 0x611f 0x52d5", "kanbou= 0x611f 0x5192", "kanmei= 0x611f 0x9298", "kanrui= 0x611f 0x6d99", "narasu1= 0x6163 0x3089 0x3059", "nare= 0x6163 0x308c", "nareru= 0x6163 0x308c 0x308b", "kanshuu1= 0x6163 0x7fd2", "kanyouku= 0x6163 0x7528 0x53e5", "kanrei2= 0x6163 0x4f8b", "kaeru2= 0x63db 0x3048 0x308b", "kawaru1= 0x63db 0x308f 0x308b", "kanki5= 0x63db 0x6c17", "kankisen= 0x63db 0x6c17 0x6247", "kansan1= 0x63db 0x7b97", "kansanritsu= 0x63db 0x7b97 0x7387", "aete= 0x6562 0x3048 0x3066", "kankou3= 0x6562 0x884c", "kanzen2= 0x6562 0x7136", "kantou1= 0x6562 0x95d8", "kanoke= 0x68fa 0x6876", "kanrakugai= 0x6b53 0x697d 0x8857", "kanki6= 0x6b53 0x559c", "kangei= 0x6b53 0x8fce", "kanshinwokau= 0x6b53 0x5fc3 0x3092 0x8cb7 0x3046", "kansei2= 0x6b53 0x58f0", "kantai1= 0x6b53 0x5f85", "kandan= 0x6b53 0x8ac7", "ase= 0x6c57", "kangan= 0x6c57 0x9854", "kango1= 0x6f22 0x8a9e", "kanshi1= 0x6f22 0x8a69", "kanji3= 0x6f22 0x5b57", "kanjidai= 0x6f22 0x6642 0x4ee3", "kanbun= 0x6f22 0x6587", "kanpouyaku= 0x6f22 0x65b9 0x85ac", "kanwa1= 0x6f22 0x548c", "kankyou= 0x74b0 0x5883", "kanshou3= 0x74b0 0x7901", "kanjou3= 0x74b0 0x72b6", "amai= 0x7518 0x3044", "amaeru= 0x7518 0x3048 0x308b", "amayakasu= 0x7518 0x3084 0x304b 0x3059", "kangen2= 0x7518 0x8a00", "amazu= 0x7518 0x9162", "kanbi= 0x7518 0x7f8e", "amami= 0x7518 0x5473", "kanmiryou= 0x7518 0x5473 0x6599", "kankin= 0x76e3 0x7981", "kangoku= 0x76e3 0x7344", "kansa= 0x76e3 0x67fb", "kanshi2= 0x76e3 0x8996", "kanshitou= 0x76e3 0x8996 0x5854", "kantoku= 0x76e3 0x7763", "miru1= 0x770b 0x308b", "kango2= 0x770b 0x8b77", "kangofu= 0x770b 0x8b77 0x5a66", "kanshu= 0x770b 0x5b88", "kanpa2= 0x770b 0x7834", "kanban= 0x770b 0x677f", "kanbyou= 0x770b 0x75c5", "sao= 0x7aff", "kan3= 0x7ba1", "kuda= 0x7ba1", "kankatsu= 0x7ba1 0x8f44", "kankatsukanchou= 0x7ba1 0x8f44 0x5b98 0x5e81", "kangengaku= 0x7ba1 0x5f26 0x697d", "kangengakudan= 0x7ba1 0x5f26 0x697d 0x56e3", "kansei3= 0x7ba1 0x5236", "kanseitou= 0x7ba1 0x5236 0x5854", "kannai= 0x7ba1 0x5185", "kanri2= 0x7ba1 0x7406", "kani2= 0x7c21 0x6613", "kanketsu2= 0x7c21 0x6f54", "kanso= 0x7c21 0x7d20", "kantan2= 0x7c21 0x5358", "kanryaku= 0x7c21 0x7565", "yurui= 0x7de9 0x3044", "yurumu= 0x7de9 0x3080", "yurumeru= 0x7de9 0x3081 0x308b", "yuruyaka= 0x7de9 0x3084 0x304b", "kankyuu2= 0x7de9 0x6025", "kanshouchitai= 0x7de9 0x885d 0x5730 0x5e2f", "kanman2= 0x7de9 0x6162", "kanwa2= 0x7de9 0x548c", "kan4= 0x7f36", "kandume1= 0x7f36 0x8a70", "kandume2= 0x7f36 0x8a70 0x3081", "kankiri= 0x7f36 0x5207 0x308a", "kimo= 0x809d", "kimottama= 0x809d 0x3063 0x7389", "kankouhen= 0x809d 0x786c 0x5909", "kanjin2= 0x809d 0x5fc3", "kanzou= 0x809d 0x81d3", "kanyu= 0x809d 0x6cb9", "kanyou2= 0x809d 0x8981", "kan5= 0x8266", "kantai2= 0x8266 0x968a", "kantei2= 0x8266 0x8247", "kan6= 0x89b3", "kankyaku= 0x89b3 0x5ba2", "kankou4= 0x89b3 0x5149", "kansatsu= 0x89b3 0x5bdf", "kanshuu2= 0x89b3 0x8846", "kanshou4= 0x89b3 0x8cde", "kansoku= 0x89b3 0x6e2c", "kannen= 0x89b3 0x5ff5", "kanran= 0x89b3 0x89a7", "tsuranukitoosu= 0x8cab 0x304d 0x901a 0x3059", "tsuranuku= 0x8cab 0x304f", "kantsuu= 0x8cab 0x901a", "kantetsu= 0x8cab 0x5fb9", "kanryuu= 0x8cab 0x6d41", "kangen3= 0x9084 0x5143", "kanreki= 0x9084 0x66a6", "kanshou5= 0x9451 0x8cde", "kantei3= 0x9451 0x5b9a", "kanbetsu= 0x9451 0x5225", "aida= 0x9593", "ma1= 0x9593", "maniau= 0x9593 0x306b 0x5408 0x3046", "maniawase1= 0x9593 0x306b 0x5408 0x305b", "maniawase2= 0x9593 0x306b 0x5408 0x308f 0x305b", "maniawaseru= 0x9593 0x306b 0x5408 0x308f 0x305b 0x308b", "mamonaku1= 0x9593 0x3082 0x306a 0x304f", "mamonaku2= 0x9593 0x3082 0x7121 0x304f", "machigai= 0x9593 0x9055 0x3044", "machigau= 0x9593 0x9055 0x3046", "machigaeru= 0x9593 0x9055 0x3048 0x308b", "kanippatsu= 0x9593 0x4e00 0x9aea", "kankaku2= 0x9593 0x9694", "madika= 0x9593 0x8fd1", "magiwa= 0x9593 0x969b", "magari= 0x9593 0x501f 0x308a", "kanshoku2= 0x9593 0x98df", "kansetsu1= 0x9593 0x63a5", "manuke= 0x9593 0x629c 0x3051", "aidagara= 0x9593 0x67c4", "kansan2= 0x9591 0x6563", "kanjaku= 0x9591 0x5bc2", "kansei4= 0x9591 0x9759", "seki2= 0x95a2", "kansuru= 0x95a2 0x3059 0x308b", "kakawaru1= 0x95a2 0x308f 0x308b", "kankei= 0x95a2 0x4fc2", "sekisho= 0x95a2 0x6240", "kanshin2= 0x95a2 0x5fc3", "kansai= 0x95a2 0x897f", "kansaiben= 0x95a2 0x897f 0x5f01", "kanzei= 0x95a2 0x7a0e", "kansetsu2= 0x95a2 0x7bc0", "kantou2= 0x95a2 0x6771", "kanmon2= 0x95a2 0x9580", "kanyo= 0x95a2 0x4e0e", "kanren= 0x95a2 0x9023", "ochiiru= 0x9665 0x308b", "otoshiireru= 0x9665 0x308c 0x308b", "kanbotsu= 0x9665 0x6ca1", "kanraku= 0x9665 0x843d", "maru= 0x4e38", "marui2= 0x4e38 0x3044", "marukkiri= 0x4e38 0x3063 0x304d 0x308a", "marude= 0x4e38 0x3067", "marumaru= 0x4e38 0x307e 0x308b", "marumi2= 0x4e38 0x307f", "marumeru= 0x4e38 0x3081 0x308b", "marumekomu= 0x4e38 0x3081 0x8fbc 0x3080", "marutagoya= 0x4e38 0x592a 0x5c0f 0x5c4b", "fukumu= 0x542b 0x3080", "fukumeru= 0x542b 0x3081 0x308b", "ganchiku= 0x542b 0x84c4", "ganyuu= 0x542b 0x6709", "ugai= 0x542b 0x55fd", "kishi1= 0x5cb8", "ganpeki= 0x5cb8 0x58c1", "kishibe= 0x5cb8 0x8fba", "omocha= 0x73a9 0x5177", "gan= 0x764c", "manako= 0x773c", "me2= 0x773c", "ganka= 0x773c 0x79d1", "gankai= 0x773c 0x79d1 0x533b", "gankyou1= 0x773c 0x93e1", "megane= 0x773c 0x93e1", "manazashi= 0x773c 0x5dee 0x3057", "iwa= 0x5ca9", "ganen= 0x5ca9 0x5869", "iwaya= 0x5ca9 0x5c4b", "ganshou= 0x5ca9 0x7901", "ganseki= 0x5ca9 0x77f3", "iwanobori= 0x5ca9 0x767b 0x308a", "gankyou2= 0x9811 0x5f37", "ganken= 0x9811 0x5065", "ganko= 0x9811 0x56fa", "ganjou= 0x9811 0x4e08", "ganbaru= 0x9811 0x5f35 0x308b", "ganmei= 0x9811 0x8ff7", "kao= 0x9854", "kaonajimi= 0x9854 0x306a 0x3058 0x307f", "kaoiro= 0x9854 0x8272", "kaobure= 0x9854 0x89e6 0x308c", "kaotsuki= 0x9854 0x4ed8 0x304d", "ganmen= 0x9854 0x9762", "kaodachi= 0x9854 0x7acb 0x3061", "negai= 0x9858 0x3044", "negau= 0x9858 0x3046", "negawakuha= 0x9858 0x308f 0x304f 0x306f", "gansho= 0x9858 0x66f8", "ganbou= 0x9858 0x671b", "kuwadateru= 0x4f01 0x3066 0x308b", "takurami= 0x4f01 0x307f", "takuramu= 0x4f01 0x3080", "kikaku= 0x4f01 0x753b", "kigyou= 0x4f01 0x696d", "kito1= 0x4f01 0x56f3", "ayaui= 0x5371 0x3046 0x3044", "ayauku= 0x5371 0x3046 0x304f", "abunai= 0x5371 0x306a 0x3044", "kigai= 0x5371 0x5bb3", "kiki= 0x5371 0x6a5f", "kikyuu1= 0x5371 0x6025", "kiken1= 0x5371 0x967a", "kitoku= 0x5371 0x7be4", "kigu1= 0x5371 0x60e7", "yorokobasu= 0x559c 0x3070 0x3059", "yorokobi= 0x559c 0x3073", "yorokobu= 0x559c 0x3076", "kietsu= 0x559c 0x60a6", "kigeki= 0x559c 0x5287", "kisha1= 0x559c 0x6368", "kiju= 0x559c 0x5bff", "kidoairaku= 0x559c 0x6012 0x54c0 0x697d", "utsuwa= 0x5668", "kikai1= 0x5668 0x68b0", "kigaku= 0x5668 0x697d", "kikan1= 0x5668 0x5b98", "kigu2= 0x5668 0x5177", "kiyou= 0x5668 0x7528", "motoi= 0x57fa", "motoduku= 0x57fa 0x3065 0x304f", "kikin1= 0x57fa 0x91d1", "kijun1= 0x57fa 0x6e96", "kiseki1= 0x57fa 0x77f3", "kiso1= 0x57fa 0x790e", "kisokouji= 0x57fa 0x790e 0x5de5 0x4e8b", "kisochishiki= 0x57fa 0x790e 0x77e5 0x8b58", "kichi= 0x57fa 0x5730", "kichou1= 0x57fa 0x8abf", "kiban= 0x57fa 0x76e4", "kihon= 0x57fa 0x672c", "kikai2= 0x5947 0x602a", "kikyou1= 0x5947 0x77ef", "kiguu= 0x5947 0x9047", "kijutsu1= 0x5947 0x8853", "kisuu= 0x5947 0x6570", "kiseki2= 0x5947 0x8de1", "kibyou= 0x5947 0x75c5", "kimyou= 0x5947 0x5999", "kirei= 0x5947 0x9e97", "ureshii= 0x5b09 0x3057 0x3044", "yoseru= 0x5bc4 0x305b 0x308b", "yoseatsume= 0x5bc4 0x305b 0x96c6 0x3081", "yorikakaru= 0x5bc4 0x308a 0x639b 0x304b 0x308b", "yoriatsumaru= 0x5bc4 0x308a 0x96c6 0x307e 0x308b", "yorimichi= 0x5bc4 0x308a 0x9053", "yoru2= 0x5bc4 0x308b", "yokosu= 0x5bc4 0x8d8a 0x3059", "kishukusha= 0x5bc4 0x5bbf 0x820e", "kisei1= 0x5bc4 0x751f", "kisou1= 0x5bc4 0x8d08", "kizou= 0x5bc4 0x8d08", "kifu1= 0x5bc4 0x4ed8", "kifu2= 0x5bc4 0x9644", "kiro1= 0x5c90 0x8def", "kishaku= 0x5e0c 0x91c8", "kishou1= 0x5e0c 0x5c11", "kishoukachi= 0x5e0c 0x5c11 0x4fa1 0x5024", "kibou= 0x5e0c 0x671b", "iku1= 0x5e7e", "ikutsu= 0x5e7e 0x3064", "ikura= 0x5e7e 0x3089", "kika1= 0x5e7e 0x4f55", "kikagaku= 0x5e7e 0x4f55 0x5b66", "ikudo= 0x5e7e 0x5ea6", "ikunichi= 0x5e7e 0x65e5", "ikubun= 0x5e7e 0x5206", "imawashii= 0x5fcc 0x307e 0x308f 0x3057 0x3044", "imikotoba= 0x5fcc 0x307f 0x8a00 0x8449", "imu= 0x5fcc 0x3080", "kichuu= 0x5fcc 0x4e2d", "kihi= 0x5fcc 0x907f", "kihatsu= 0x63ee 0x767a", "tsukue= 0x673a", "kijou1= 0x673a 0x4e0a", "kijounokuuron= 0x673a 0x4e0a 0x306e 0x7a7a 0x8ad6", "hata1= 0x65d7", "hatairo= 0x65d7 0x8272", "sudeni= 0x65e2 0x306b", "kioushou= 0x65e2 0x5f80 0x75c7", "kikon= 0x65e2 0x5a5a", "kisei2= 0x65e2 0x6210", "kiseinojijitsu= 0x65e2 0x6210 0x306e 0x4e8b 0x5b9f", "kiseijijitsu= 0x65e2 0x6210 0x4e8b 0x5b9f", "kisei3= 0x65e2 0x88fd", "kiseifuku= 0x65e2 0x88fd 0x670d", "kihou1= 0x65e2 0x5831", "ki2= 0x671f", "kikan2= 0x671f 0x9593", "kigen1= 0x671f 0x9650", "kitai1= 0x671f 0x5f85", "kijitsu= 0x671f 0x65e5", "kimatsu= 0x671f 0x672b", "kishi2= 0x68cb 0x58eb", "kifu3= 0x68cb 0x8b5c", "kikyaku= 0x68c4 0x5374", "kiken2= 0x68c4 0x6a29", "hata2= 0x6a5f", "kikai3= 0x6a5f 0x4f1a", "kikai4= 0x6a5f 0x68b0", "kikaika= 0x6a5f 0x68b0 0x5316", "kikaibunmei= 0x6a5f 0x68b0 0x6587 0x660e", "kikan3= 0x6a5f 0x95a2", "kikansha= 0x6a5f 0x95a2 0x8eca", "kikanjuu= 0x6a5f 0x95a2 0x9283", "kigen2= 0x6a5f 0x5acc", "kikou1= 0x6a5f 0x69cb", "kitai2= 0x6a5f 0x4f53", "kichou2= 0x6a5f 0x9577", "kidoutai= 0x6a5f 0x52d5 0x968a", "kinou1= 0x6a5f 0x80fd", "kibin= 0x6a5f 0x654f", "kimitsu= 0x6a5f 0x5bc6", "kaesu1= 0x5e30 0x3059", "kaeri= 0x5e30 0x308a", "kaeru3= 0x5e30 0x308b", "kie= 0x5e30 0x4f9d", "kika2= 0x5e30 0x5316", "kikan4= 0x5e30 0x9084", "kikyou2= 0x5e30 0x4eac", "kikoku= 0x5e30 0x56fd", "kisei4= 0x5e30 0x7701", "kitaku= 0x5e30 0x5b85", "kito2= 0x5e30 0x9014", "kiro2= 0x5e30 0x8def", "ki3= 0x6c17", "kiniiru= 0x6c17 0x306b 0x5165 0x308b", "kinodoku= 0x6c17 0x306e 0x6bd2", "kimagure= 0x6c17 0x307e 0x3050 0x308c", "kimama= 0x6c17 0x307e 0x307e", "kiwotsukeru= 0x6c17 0x3092 0x4ed8 0x3051 0x308b", "kiatsu= 0x6c17 0x5727", "kichigai= 0x6c17 0x9055 0x3044", "kiukoudai= 0x6c17 0x5b87 0x5e83 0x5927", "kion= 0x6c17 0x6e29", "kiraku= 0x6c17 0x697d", "kigakari= 0x6c17 0x639b 0x304b 0x308a", "kikan5= 0x6c17 0x7ba1", "kidumari= 0x6c17 0x8a70 0x307e 0x308a", "kikyuu2= 0x6c17 0x7403", "kigaru= 0x6c17 0x8efd", "kigane= 0x6c17 0x517c 0x306d", "kidukai= 0x6c17 0x9063 0x3044", "kikou2= 0x6c17 0x5019", "kikou3= 0x6c17 0x5b54", "kimochi= 0x6c17 0x6301 0x3061", "kishitsu= 0x6c17 0x8cea", "kidoru= 0x6c17 0x53d6 0x308b", "kishou2= 0x6c17 0x8c61", "kishougaku= 0x6c17 0x8c61 0x5b66", "kishouchou= 0x6c17 0x8c61 0x5e81", "kiza= 0x6c17 0x969c", "kijou2= 0x6c17 0x4e08", "kigokoro= 0x6c17 0x5fc3", "kishou3= 0x6c17 0x6027", "kibarashi= 0x6c17 0x6674 0x3089 0x3057", "kizetsu= 0x6c17 0x7d76", "kimae= 0x6c17 0x524d", "kitai3= 0x6c17 0x4f53", "kimuzukashii= 0x6c17 0x96e3 0x3057 0x3044", "kehai= 0x6c17 0x914d", "kikubari= 0x6c17 0x914d 0x308a", "kidukare= 0x6c17 0x75b2 0x308c", "kiduku= 0x6c17 0x4ed8 0x304f", "kibun= 0x6c17 0x5206", "kihou2= 0x6c17 0x6ce1", "kimi2= 0x6c17 0x5473", "kiryoku= 0x6c17 0x529b", "kisha2= 0x6c7d 0x8eca", "kisen= 0x6c7d 0x8239", "kiteki= 0x6c7d 0x7b1b", "inori= 0x7948 0x308a", "inoru= 0x7948 0x308b", "kigan= 0x7948 0x9858", "kisei5= 0x7948 0x8a93", "kitou= 0x7948 0x7977", "kitousho= 0x7948 0x7977 0x66f8", "kinen1= 0x7948 0x5ff5", "kigo= 0x5b63 0x8a9e", "kisetsu= 0x5b63 0x7bc0", "kisetsuhazure= 0x5b63 0x7bc0 0x5916 0x308c", "kisetsufuu= 0x5b63 0x7bc0 0x98a8", "mare= 0x7a00", "kigen3= 0x7d00 0x5143", "kigengo= 0x7d00 0x5143 0x5f8c", "kigenzen= 0x7d00 0x5143 0x524d", "kikou4= 0x7d00 0x884c", "kikoubun= 0x7d00 0x884c 0x6587", "kijun2= 0x898f 0x6e96", "kisei6= 0x898f 0x5236", "kisoku= 0x898f 0x5247", "kitei= 0x898f 0x5b9a", "kihan1= 0x898f 0x7bc4", "kibo= 0x898f 0x6a21", "kiritsu1= 0x898f 0x5f8b", "shirusu= 0x8a18 0x3059", "kioku= 0x8a18 0x61b6", "kigou= 0x8a18 0x53f7", "kisai1= 0x8a18 0x8f09", "kiji1= 0x8a18 0x4e8b", "kisha3= 0x8a18 0x8005", "kijutsu2= 0x8a18 0x8ff0", "kishou4= 0x8a18 0x7ae0", "kinyuu1= 0x8a18 0x5165", "kinen2= 0x8a18 0x5ff5", "kinenkitte= 0x8a18 0x5ff5 0x5207 0x624b", "kinenbi= 0x8a18 0x5ff5 0x65e5", "kinenhi= 0x8a18 0x5ff5 0x7891", "kiroku= 0x8a18 0x9332", "tattoi1= 0x8cb4 0x3044", "toutoi1= 0x8cb4 0x3044", "tattobu1= 0x8cb4 0x3076", "toutobu1= 0x8cb4 0x3076", "kichou3= 0x8cb4 0x91cd", "kichouhin= 0x8cb4 0x91cd 0x54c1", "kizoku= 0x8cb4 0x65cf", "kihin= 0x8cb4 0x8cd3", "anata= 0x8cb4 0x65b9", "okiru= 0x8d77 0x304d 0x308b", "okiagaru= 0x8d77 0x304d 0x4e0a 0x304c 0x308b", "okosu1= 0x8d77 0x3053 0x3059", "okoru1= 0x8d77 0x3053 0x308b", "kigen4= 0x8d77 0x6e90", "kijuuki= 0x8d77 0x91cd 0x6a5f", "kishou5= 0x8d77 0x5e8a", "kiso2= 0x8d77 0x8a34", "kiten= 0x8d77 0x70b9", "kiritsu2= 0x8d77 0x7acb", "kiseki3= 0x8ecc 0x8de1", "kidou= 0x8ecc 0x9053", "kihan2= 0x8ecc 0x7bc4", "kagayakashii= 0x8f1d 0x304b 0x3057 0x3044", "kagayaku= 0x8f1d 0x304f", "kido= 0x8f1d 0x5ea6", "ueru1= 0x98e2 0x3048 0x308b", "kiga= 0x98e2 0x9913", "kikatsu= 0x98e2 0x6e07", "uejini2= 0x98e2 0x6b7b 0x306b", "kikin2= 0x98e2 0x9949", "kishi3= 0x9a0e 0x58eb", "kishu= 0x9a0e 0x624b", "kiba= 0x9a0e 0x99ac", "kihei= 0x9a0e 0x5175", "oni= 0x9b3c", "onigokko= 0x9b3c 0x3054 0x3063 0x3053", "kisai2= 0x9b3c 0x624d", "onigami= 0x9b3c 0x795e", "kishin= 0x9b3c 0x795e", "kijin= 0x9b3c 0x795e", "kame= 0x4e80", "nise= 0x507d", "itsuwaru= 0x507d 0x308b", "gishou= 0x507d 0x8a3c", "gisou1= 0x507d 0x88c5", "gizou= 0x507d 0x9020", "nisemono= 0x507d 0x7269", "gishiki= 0x5100 0x5f0f", "gitenchou= 0x5100 0x5178 0x9577", "girei= 0x5100 0x793c", "yoroshii= 0x5b9c 0x3057 0x3044", "yoroshiku= 0x5b9c 0x3057 0x304f", "tawamure= 0x622f 0x308c", "tawamureru= 0x622f 0x308c 0x308b", "giga= 0x622f 0x753b", "gikyoku= 0x622f 0x66f2", "waza1= 0x6280", "gikou= 0x6280 0x5de7", "gishi1= 0x6280 0x5e2b", "gijutsu= 0x6280 0x8853", "ginou= 0x6280 0x80fd", "gion= 0x64ec 0x97f3", "gijin= 0x64ec 0x4eba", "gisou2= 0x64ec 0x88c5", "azamuku= 0x6b3a 0x304f", "gisei= 0x72a0 0x7272", "giseisha= 0x72a0 0x7272 0x8005", "utagai= 0x7591 0x3044", "utagau= 0x7591 0x3046", "utagawashii= 0x7591 0x308f 0x3057 0x3044", "gigoku= 0x7591 0x7344", "gimon= 0x7591 0x554f", "giwaku= 0x7591 0x60d1", "gikei= 0x7fa9 0x5144", "gishi2= 0x7fa9 0x59c9", "gishi3= 0x7fa9 0x6b6f", "gitei= 0x7fa9 0x5f1f", "gifu= 0x7fa9 0x7236", "gifun= 0x7fa9 0x61a4", "gibo= 0x7fa9 0x6bcd", "gimai= 0x7fa9 0x59b9", "gimu= 0x7fa9 0x52d9", "giri= 0x7fa9 0x7406", "ari= 0x87fb", "ariduka= 0x87fb 0x585a", "giin= 0x8b70 0x54e1", "gikai= 0x8b70 0x4f1a", "giketsu= 0x8b70 0x6c7a", "giseki= 0x8b70 0x5e2d", "gidai= 0x8b70 0x984c", "gichou= 0x8b70 0x9577", "giron= 0x8b70 0x8ad6", "sukuu1= 0x63ac 0x3046", "kiku1= 0x83ca", "kikunohana= 0x83ca 0x306e 0x82b1", "kikunogomon= 0x83ca 0x306e 0x5fa1 0x7d0b", "kikudukuri= 0x83ca 0x4f5c 0x308a", "kikuningyou= 0x83ca 0x4eba 0x5f62", "kikkyou= 0x5409 0x51f6", "kisshou= 0x5409 0x7965", "kichijouten= 0x5409 0x7965 0x5929", "kisshouten= 0x5409 0x7965 0x5929", "kicchou= 0x5409 0x5146", "kichinichi= 0x5409 0x65e5", "kippou= 0x5409 0x5831", "domoru= 0x5403 0x308b", "shakkuri= 0x5403 0x9006", "kissuru= 0x55ab 0x3059 0x308b", "kitsuen= 0x55ab 0x7159", "kissaten= 0x55ab 0x8336 0x5e97", "tsumari= 0x8a70 0x307e 0x308a", "tsumaru= 0x8a70 0x307e 0x308b", "tsumu1= 0x8a70 0x3080", "tsumeru= 0x8a70 0x3081 0x308b", "tsumekomu= 0x8a70 0x3081 0x8fbc 0x3080", "tsumaranai= 0x8a70 0x3089 0x306a 0x3044", "kitsumon= 0x8a70 0x554f", "kyaku1= 0x5374", "kaette= 0x5374 0x3063 0x3066", "kyakka= 0x5374 0x4e0b", "kyaku2= 0x5ba2", "kyakuatsukai= 0x5ba2 0x6271 0x3044", "kyakkan= 0x5ba2 0x89b3", "kyakkanteki= 0x5ba2 0x89b3 0x7684", "kyakuma= 0x5ba2 0x9593", "kyakushitsu= 0x5ba2 0x5ba4", "kyakusha= 0x5ba2 0x8eca", "kyakuseki= 0x5ba2 0x5e2d", "kyakusen= 0x5ba2 0x8239", "ashi1= 0x811a", "kyakushoku= 0x811a 0x8272", "kyakuchuu= 0x811a 0x6ce8", "kyakuhon= 0x811a 0x672c", "shiitageru= 0x8650 0x3052 0x308b", "gyakusatsu= 0x8650 0x6bba", "gyakutai= 0x8650 0x5f85", "gyaku= 0x9006", "sakasa= 0x9006 0x3055", "sakarau= 0x9006 0x3089 0x3046", "gyakkyou= 0x9006 0x5883", "gyakukouka= 0x9006 0x52b9 0x679c", "noboseru1= 0x9006 0x4e0a 0x305b 0x308b", "gyakusetsu= 0x9006 0x8aac", "gyakuten= 0x9006 0x8ee2", "gyakumodori= 0x9006 0x623b 0x308a", "sakasama= 0x9006 0x69d8", "sakadachi= 0x9006 0x7acb 0x3061", "sakadatsu= 0x9006 0x7acb 0x3064", "oka= 0x4e18", "kyuuryou1= 0x4e18 0x9675", "kyuuryouchitai= 0x4e18 0x9675 0x5730 0x5e2f", "hisashii= 0x4e45 0x3057 0x3044", "hisashiburi1= 0x4e45 0x3057 0x3076 0x308a", "hisashiburi2= 0x4e45 0x3057 0x632f 0x308a", "kuon= 0x4e45 0x9060", "yasumaru= 0x4f11 0x307e 0x308b", "yasumi= 0x4f11 0x307f", "yasumichuu= 0x4f11 0x307f 0x4e2d", "yasumu= 0x4f11 0x3080", "yasumeru= 0x4f11 0x3081 0x308b", "kyuuka= 0x4f11 0x6687", "kyuukazan= 0x4f11 0x706b 0x5c71", "kyuugaku= 0x4f11 0x5b66", "kyuugyou= 0x4f11 0x696d", "kyuukei1= 0x4f11 0x61a9", "kyuukeijikan= 0x4f11 0x61a9 0x6642 0x9593", "kyuukeijo= 0x4f11 0x61a9 0x6240", "kyuukou1= 0x4f11 0x6821", "kyuukou2= 0x4f11 0x8b1b", "kyuushi= 0x4f11 0x6b62", "kyuusen= 0x4f11 0x6226", "kyuusoku1= 0x4f11 0x606f", "kyuujitsu= 0x4f11 0x65e5", "kyuuyou1= 0x4f11 0x990a", "oyobi= 0x53ca 0x3073", "oyobu= 0x53ca 0x3076", "oyobosu= 0x53ca 0x307c 0x3059", "kyuudaiten= 0x53ca 0x7b2c 0x70b9", "suigara= 0x5438 0x3044 0x6bbb", "suikomu= 0x5438 0x3044 0x8fbc 0x3080", "suitorigami= 0x5438 0x3044 0x53d6 0x308a 0x7d19", "suu1= 0x5438 0x3046", "kyuuin= 0x5438 0x5f15", "kyuushuu1= 0x5438 0x53ce", "kyuunyuu= 0x5438 0x5165", "miyamairi= 0x5bae 0x53c2 0x308a", "kyuujou1= 0x5bae 0x57ce", "miyagiken= 0x5bae 0x57ce 0x770c", "kyuutei= 0x5bae 0x5ef7", "kyuuden= 0x5bae 0x6bbf", "yumi= 0x5f13", "kyuujutsu= 0x5f13 0x8853", "kyuudou= 0x5f13 0x9053", "yumiya= 0x5f13 0x77e2", "kyuu1= 0x6025", "sekasu= 0x6025 0x304b 0x3059", "isogu= 0x6025 0x3050", "kyuunasaka= 0x6025 0x306a 0x5742", "kyuukan= 0x6025 0x60a3", "kyuugeki= 0x6025 0x6fc0", "kyuukou3= 0x6025 0x884c", "kyuusho= 0x6025 0x6240", "kyuusei1= 0x6025 0x6027", "kyuusei2= 0x6025 0x901d", "kyuuzou= 0x6025 0x5897", "kyuusoku2= 0x6025 0x901f", "kyuubyou= 0x6025 0x75c5", "kyuuhen= 0x6025 0x5909", "kyuuyou2= 0x6025 0x7528", "kyuukyo= 0x6025 0x907d", "sukui= 0x6551 0x3044", "sukuu2= 0x6551 0x3046", "kyuuen= 0x6551 0x63f4", "kyuukyuu= 0x6551 0x6025", "kyuukyuusha= 0x6551 0x6025 0x8eca", "kyuugohan= 0x6551 0x8b77 0x73ed", "kyuusai= 0x6551 0x6e08", "kyuujo= 0x6551 0x52a9", "kyuuseigun= 0x6551 0x4e16 0x8ecd", "kyuumeibo-to= 0x6551 0x547d 0x30dc 0x30fc 0x30c8", "kuchiru= 0x673d 0x3061 0x308b", "kuchiba= 0x673d 0x3061 0x8449", "motomeru= 0x6c42 0x3081 0x308b", "kyuushoku1= 0x6c42 0x8077", "kyuujin= 0x6c42 0x4eba", "kumitoru= 0x6c72 0x307f 0x53d6 0x308b", "kumu1= 0x6c72 0x3080", "nakigao= 0x6ce3 0x304d 0x9854", "nakigoe1= 0x6ce3 0x304d 0x58f0", "nakimushi= 0x6ce3 0x304d 0x866b", "nakiotosu= 0x6ce3 0x304d 0x843d 0x3068 0x3059", "naku1= 0x6ce3 0x304f", "kyuu2= 0x7403", "tama1= 0x7403", "kyuukei2= 0x7403 0x830e", "kyuujou2= 0x7403 0x5834", "kiwameru1= 0x7a76 0x3081 0x308b", "kyuukyoku= 0x7a76 0x6975", "kyuumei1= 0x7a76 0x660e", "kiwamaru1= 0x7aae 0x307e 0x308b", "kiwameru2= 0x7aae 0x3081 0x308b", "kyuukyou= 0x7aae 0x5883", "kyuukyokumokuteki= 0x7aae 0x6975 0x76ee 0x7684", "kyuukutsu= 0x7aae 0x5c48", "kyuuchi= 0x7aae 0x5730", "kyuuhaku= 0x7aae 0x8feb", "kyuubou= 0x7aae 0x4e4f", "kyuugou= 0x7cfe 0x5408", "kyuudan= 0x7cfe 0x5f3e", "kyuumei2= 0x7cfe 0x660e", "kyuumon= 0x7cfe 0x554f", "kyuu3= 0x7d66", "kyuushoku2= 0x7d66 0x98df", "kyuusui= 0x7d66 0x6c34", "kyuusuisen= 0x7d66 0x6c34 0x6813", "kyuuyusho= 0x7d66 0x6cb9 0x6240", "kyuuyujo= 0x7d66 0x6cb9 0x6240", "kyuuyo= 0x7d66 0x4e0e", "kyuuryou2= 0x7d66 0x6599", "kyuu4= 0x65e7", "kyuuaku= 0x65e7 0x60aa", "kyuushiki= 0x65e7 0x5f0f", "kyuusei3= 0x65e7 0x59d3", "kyuuhei= 0x65e7 0x5f0a", "kyuuyaku= 0x65e7 0x7d04", "kyuuyakuseisho= 0x65e7 0x7d04 0x8056 0x66f8", "kyuureki= 0x65e7 0x66a6", "ushi= 0x725b", "gyuusha= 0x725b 0x820e", "ushigoya= 0x725b 0x5c0f 0x5c4b", "gyuuniku= 0x725b 0x8089", "gyuunyuu= 0x725b 0x4e73", "saru2= 0x53bb 0x308b", "kyonen= 0x53bb 0x5e74", "kyorai= 0x53bb 0x6765", "iru1= 0x5c45 0x308b", "oru1= 0x5c45 0x308b", "ima1= 0x5c45 0x9593", "imakenshinshitsu= 0x5c45 0x9593 0x517c 0x5bdd 0x5ba4", "isourou= 0x5c45 0x5019", "iawaseru= 0x5c45 0x5408 0x308f 0x305b 0x308b", "izakaya= 0x5c45 0x9152 0x5c4b", "kyojuu= 0x5c45 0x4f4f", "kyojuuchi= 0x5c45 0x4f4f 0x5730", "inemuri= 0x5c45 0x7720 0x308a", "kyo= 0x5de8", "kyokan= 0x5de8 0x6f22", "kyoshiteki= 0x5de8 0x8996 0x7684", "kyoshou= 0x5de8 0x5320", "kyojin= 0x5de8 0x4eba", "kyosei= 0x5de8 0x661f", "kyodai= 0x5de8 0x5927", "kyoman= 0x5de8 0x4e07", "kobamu= 0x62d2 0x3080", "kyozetsu= 0x62d2 0x7d76", "kyohi= 0x62d2 0x5426", "kyohiken= 0x62d2 0x5426 0x6a29", "yoru3= 0x62e0 0x308b", "kyoten= 0x62e0 0x70b9", "agaru1= 0x6319 0x304c 0x308b", "ageru1= 0x6319 0x3052 0x308b", "ageku1= 0x6319 0x3052 0x53e5", "ageku2= 0x6319 0x53e5", "kyotou= 0x6319 0x515a", "kyoei= 0x865a 0x6804", "kyoeishin= 0x865a 0x6804 0x5fc3", "kyogi= 0x865a 0x507d", "kokuu= 0x865a 0x7a7a", "kyokou= 0x865a 0x69cb", "kyojaku= 0x865a 0x5f31", "kyoshin= 0x865a 0x5fc3", "kyomu= 0x865a 0x7121", "kyomushugi= 0x865a 0x7121 0x4e3b 0x7fa9", "yurusu= 0x8a31 0x3059", "kyoka= 0x8a31 0x53ef", "kyodaku= 0x8a31 0x8afe", "kyoyou= 0x8a31 0x5bb9", "kyori= 0x8ddd 0x96e2", "nokogiri= 0x92f8", "asaru= 0x6f01 0x308b", "gyokaku= 0x6f01 0x7372", "gyogyou= 0x6f01 0x696d", "ryoushi1= 0x6f01 0x5e2b", "gyojou= 0x6f01 0x5834", "gyosen= 0x6f01 0x8239", "gyoson= 0x6f01 0x6751", "gyomou= 0x6f01 0x7db2", "uo= 0x9b5a", "sakana= 0x9b5a", "sakanaya= 0x9b5a 0x5c4b", "gyokai= 0x9b5a 0x4ecb", "gyogun= 0x9b5a 0x7fa4", "uoichiba= 0x9b5a 0x5e02 0x5834", "gyoniku= 0x9b5a 0x8089", "gyorai= 0x9b5a 0x96f7", "gyorui= 0x9b5a 0x985e", "kyouraku= 0x4eab 0x697d", "kyourakushugi= 0x4eab 0x697d 0x4e3b 0x7fa9", "kyouju1= 0x4eab 0x53d7", "kyouyuu1= 0x4eab 0x6709", "kei1= 0x4eac", "keihan= 0x4eac 0x962a", "kyoutoshi= 0x4eac 0x90fd 0x5e02", "kyoutofu= 0x4eac 0x90fd 0x5e9c", "tomo1= 0x4f9b", "sonaeru1= 0x4f9b 0x3048 0x308b", "kyoukyuu= 0x4f9b 0x7d66", "kyoushutsu= 0x4f9b 0x51fa", "kyoujutsu= 0x4f9b 0x8ff0", "kumotsu= 0x4f9b 0x7269", "kyouyo= 0x4f9b 0x4e0e", "kisou2= 0x7af6 0x3046", "seru= 0x7af6 0x308b", "kyouei= 0x7af6 0x6cf3", "kyougi1= 0x7af6 0x6280", "kyousou1= 0x7af6 0x4e89", "kyousou2= 0x7af6 0x8d70", "keiba= 0x7af6 0x99ac", "kyoubai= 0x7af6 0x58f2", "keirin= 0x7af6 0x8f2a", "tomo2= 0x5171", "domo= 0x5171", "tomodomo= 0x5171 0x3005", "tomoni= 0x5171 0x306b", "tomokasegi= 0x5171 0x7a3c 0x304e", "kyougaku= 0x5171 0x5b66", "kyoukan= 0x5171 0x611f", "kyousanken= 0x5171 0x7523 0x570f", "kyousanshugi= 0x5171 0x7523 0x4e3b 0x7fa9", "kyouson= 0x5171 0x5b58", "kyouzon= 0x5171 0x5b58", "kyoutsuu= 0x5171 0x901a", "kyoutsuugo= 0x5171 0x901a 0x8a9e", "tomodaore= 0x5171 0x5012 0x308c", "tomobataraki= 0x5171 0x50cd 0x304d", "kyoudou1= 0x5171 0x540c", "kyouhan= 0x5171 0x72af", "kyoubou= 0x5171 0x8b00", "kyoumei= 0x5171 0x9cf4", "kyouyuu2= 0x5171 0x6709", "kyouyou1= 0x5171 0x7528", "kyouwakoku= 0x5171 0x548c 0x56fd", "kyouaku= 0x51f6 0x60aa", "kyouki1= 0x51f6 0x5668", "kyoukou1= 0x51f6 0x884c", "kyousaku= 0x51f6 0x4f5c", "kyou1= 0x5354", "kyoukai1= 0x5354 0x4f1a", "kyougi2= 0x5354 0x8b70", "kyousan= 0x5354 0x8cdb", "kyouchou1= 0x5354 0x8abf", "kyoutei= 0x5354 0x5b9a", "kyoudou2= 0x5354 0x540c", "kyouryoku1= 0x5354 0x529b", "kyouryokusha= 0x5354 0x529b 0x8005", "sakebi= 0x53eb 0x3073", "sakebigoe= 0x53eb 0x3073 0x58f0", "sakebu= 0x53eb 0x3076", "sakai= 0x5883", "kyoukai2= 0x5883 0x754c", "kyouguu= 0x5883 0x9047", "keidai= 0x5883 0x5185", "sakaime= 0x5883 0x76ee", "kyoukoku1= 0x5ce1 0x8c37", "kyouwan= 0x5ce1 0x6e7e", "tsuyoi= 0x5f37 0x3044", "shiite= 0x5f37 0x3044 0x3066", "shiiru= 0x5f37 0x3044 0x308b", "tsuyosa= 0x5f37 0x3055", "anagachi= 0x5f37 0x3061", "tsuyomaru= 0x5f37 0x307e 0x308b", "tsuyomeru= 0x5f37 0x3081 0x308b", "gouin= 0x5f37 0x5f15", "gouinni= 0x5f37 0x5f15 0x306b", "kyouka= 0x5f37 0x5316", "tsuyoki= 0x5f37 0x6c17", "kyouken1= 0x5f37 0x5065", "kyouko= 0x5f37 0x56fa", "kyoukou2= 0x5f37 0x786c", "kyoukou3= 0x5f37 0x884c", "kyoukoku2= 0x5f37 0x56fd", "kyoujaku= 0x5f37 0x5f31", "goujou= 0x5f37 0x60c5", "kyousei1= 0x5f37 0x5236", "kyousei2= 0x5f37 0x8acb", "nedaru= 0x5f37 0x8acb 0x308b", "kyousou3= 0x5f37 0x58ee", "goudatsu= 0x5f37 0x596a", "kowabaru= 0x5f37 0x5f35 0x308b", "kyouchou2= 0x5f37 0x8abf", "kyouteki= 0x5f37 0x6575", "goutou= 0x5f37 0x76d7", "kyoufuu= 0x5f37 0x98a8", "kyouyou2= 0x5f37 0x8981", "kyouryoku2= 0x5f37 0x529b", "kyouretsu= 0x5f37 0x70c8", "osoraku= 0x6050 0x3089 0x304f", "osorubeki= 0x6050 0x308b 0x3079 0x304d", "osoruosoru= 0x6050 0x308b 0x6050 0x308b", "osore1= 0x6050 0x308c", "osoreru= 0x6050 0x308c 0x308b", "osoroshii= 0x6050 0x308d 0x3057 0x3044", "kyoukatsu= 0x6050 0x559d", "kyoukou4= 0x6050 0x614c", "kyousaika= 0x6050 0x59bb 0x5bb6", "kyoushuku= 0x6050 0x7e2e", "kyoufu= 0x6050 0x6016", "kyoufushou= 0x6050 0x6016 0x75c7", "kyoufuseiji= 0x6050 0x6016 0x653f 0x6cbb", "kyouryuu= 0x6050 0x7adc", "uyauyashii= 0x606d 0x3057 0x3044", "kyougashinnen= 0x606d 0x8cc0 0x65b0 0x5e74", "kyoukei= 0x606d 0x656c", "kyouken2= 0x606d 0x8b19", "kyoujun= 0x606d 0x9806", "hasamaru= 0x631f 0x307e 0x308b", "hasamiuchi= 0x631f 0x307f 0x6483 0x3061", "hasamikomu= 0x631f 0x307f 0x8fbc 0x3080", "hasamiageru= 0x631f 0x307f 0x4e0a 0x3052 0x308b", "hasamu1= 0x631f 0x3080", "kyougeki1= 0x631f 0x6483", "oshie= 0x6559 0x3048", "oshieru= 0x6559 0x3048 0x308b", "oshiekata= 0x6559 0x3048 0x65b9", "osowaru= 0x6559 0x308f 0x308b", "kyouiku= 0x6559 0x80b2", "kyouin= 0x6559 0x54e1", "kyoukasho= 0x6559 0x79d1 0x66f8", "kyoukai3= 0x6559 0x4f1a", "kyoukun= 0x6559 0x8a13", "kyousa= 0x6559 0x5506", "kyouzai= 0x6559 0x6750", "kyoushi= 0x6559 0x5e2b", "kyouji= 0x6559 0x793a", "kyoushitsu= 0x6559 0x5ba4", "kyouju2= 0x6559 0x6388", "kyouto= 0x6559 0x5f92", "kyouyu= 0x6559 0x8aed", "kyouyou3= 0x6559 0x990a", "kyouren= 0x6559 0x7df4", "hashi1= 0x6a4b", "kyoukyaku= 0x6a4b 0x811a", "mashite= 0x6cc1 0x3057 0x3066", "kuruizaki= 0x72c2 0x3044 0x54b2 0x304d", "kuruu= 0x72c2 0x3046", "kuruwasu= 0x72c2 0x308f 0x3059", "kyouki2= 0x72c2 0x559c", "kyouki3= 0x72c2 0x6c17", "kyougen= 0x72c2 0x8a00", "kyouhon= 0x72c2 0x5954", "kyouran= 0x72c2 0x4e71", "semai= 0x72ed 0x3044", "sebamaru= 0x72ed 0x307e 0x308b", "sebameru= 0x72ed 0x3081 0x308b", "kyoukitetsudou= 0x72ed 0x8ecc 0x9244 0x9053", "semakurushii= 0x72ed 0x82e6 0x3057 0x3044", "kyoushinshou= 0x72ed 0x5fc3 0x75c7", "kyouryou= 0x72ed 0x91cf", "tameru1= 0x77ef 0x3081 0x308b", "tamenaosu= 0x77ef 0x3081 0x76f4 0x3059", "kyougeki2= 0x77ef 0x6fc0", "kyousei3= 0x77ef 0x6b63", "mune1= 0x80f8", "kyoui1= 0x80f8 0x56f2", "kyoukin= 0x80f8 0x895f", "kyouzou= 0x80f8 0x50cf", "kyouchuu= 0x80f8 0x4e2d", "kyoubu= 0x80f8 0x90e8", "odokasu= 0x8105 0x304b 0x3059", "obiyakasu= 0x8105 0x304b 0x3059", "odoshimonku= 0x8105 0x3057 0x6587 0x53e5", "odosu= 0x8105 0x3059", "kyoui2= 0x8105 0x5a01", "kyouhaku= 0x8105 0x8feb", "kyouhakujou= 0x8105 0x8feb 0x72b6", "kyou2= 0x8208", "kou1= 0x8208", "okosu2= 0x8208 0x3059", "okoru2= 0x8208 0x308b", "kougyou1= 0x8208 0x696d", "kougyou2= 0x8208 0x884c", "koushinjo= 0x8208 0x4fe1 0x6240", "koufun1= 0x8208 0x596e", "kyoumi= 0x8208 0x5473", "kyoumibukai= 0x8208 0x5473 0x6df1 0x3044", "kyoumishinshin= 0x8208 0x5473 0x6d25 0x6d25", "kouryuu1= 0x8208 0x9686", "soba1= 0x854e 0x9ea6", "sobaya= 0x854e 0x9ea6 0x5c4b", "kyoushuu= 0x90f7 0x6101", "kyoudo= 0x90f7 0x571f", "kyoudoshousetsu= 0x90f7 0x571f 0x5c0f 0x8aac", "kyouri= 0x90f7 0x91cc", "kagami= 0x93e1", "kyoudai1= 0x93e1 0x53f0", "hibiki= 0x97ff 0x304d", "hibiku= 0x97ff 0x304f", "doyomeku= 0x97ff 0x3081 0x304f", "kyouen= 0x9957 0x5bb4", "odorokasu= 0x9a5a 0x304b 0x3059", "odoroki= 0x9a5a 0x304d", "odoroku= 0x9a5a 0x304f", "kyoui3= 0x9a5a 0x7570", "kyoutan= 0x9a5a 0x5606", "aogu1= 0x4ef0 0x3050", "oose= 0x4ef0 0x305b", "ossharu= 0x4ef0 0x3063 0x3057 0x3083 0x308b", "aomuke= 0x4ef0 0x5411 0x3051", "gyoushi1= 0x4ef0 0x8996", "gyouten1= 0x4ef0 0x5929", "korishou= 0x51dd 0x308a 0x6027", "koru= 0x51dd 0x308b", "gyouketsu= 0x51dd 0x7d50", "gyouko= 0x51dd 0x56fa", "gyoushi2= 0x51dd 0x8996", "akatsuki= 0x6681", "gyousei1= 0x6681 0x661f", "gyouten2= 0x6681 0x5929", "gou1= 0x696d", "waza2= 0x696d", "gyoukai= 0x696d 0x754c", "gyousha= 0x696d 0x8005", "gyouseki= 0x696d 0x7e3e", "kyoku1= 0x5c40", "kyokuin= 0x5c40 0x54e1", "kyokugaisha= 0x5c40 0x5916 0x8005", "kyokuchou= 0x5c40 0x9577", "kyokuban= 0x5c40 0x756a", "kyokudome= 0x5c40 0x7559 0x3081", "kyoku2= 0x66f2", "magarikado= 0x66f2 0x304c 0x308a 0x304b 0x3069", "magarimichi= 0x66f2 0x304c 0x308a 0x9053", "magaru= 0x66f2 0x304c 0x308b", "mageru= 0x66f2 0x3052 0x308b", "kyokusetsu= 0x66f2 0x6298", "kyokusen= 0x66f2 0x7dda", "goku1= 0x6975", "kiwamaru2= 0x6975 0x307e 0x308b", "kiwami= 0x6975 0x307f", "kiwamete= 0x6975 0x3081 0x3066", "kiwameru3= 0x6975 0x3081 0x308b", "gokuraku= 0x6975 0x697d", "gokkan= 0x6975 0x5bd2", "kyokugen= 0x6975 0x9650", "gokujou= 0x6975 0x4e0a", "kyokutan= 0x6975 0x7aef", "kyokuchiken= 0x6975 0x5730 0x570f", "kyokutou= 0x6975 0x6771", "gokuhi= 0x6975 0x79d8", "tama2= 0x7389", "tamanegi= 0x7389 0x306d 0x304e", "gyokusai= 0x7389 0x7815", "gyokuji= 0x7389 0x74bd", "gyokuseki= 0x7389 0x77f3", "toumorokoshi= 0x7389 0x8700 0x9ecd", "wazuka= 0x50c5 0x304b", "tsutomaru= 0x52e4 0x307e 0x308b", "tsutome1= 0x52e4 0x3081", "tsutomeru1= 0x52e4 0x3081 0x308b", "tsutomesaki= 0x52e4 0x3081 0x5148", "kinken= 0x52e4 0x5039", "kinben= 0x52e4 0x52c9", "kinmu= 0x52e4 0x52d9", "kinrou= 0x52e4 0x52b4", "kinitsu= 0x5747 0x4e00", "kinkou1= 0x5747 0x8861", "kinshitsu= 0x5747 0x8cea", "kinsei1= 0x5747 0x6574", "kinsei2= 0x5747 0x6589", "kintou= 0x5747 0x7b49", "kinbun= 0x5747 0x5206", "kin1= 0x65a4", "kinryou1= 0x65a4 0x91cf", "koto1= 0x7434", "kinjiru= 0x7981 0x3058 0x308b", "kinzuru= 0x7981 0x305a 0x308b", "kinen3= 0x7981 0x7159", "kinku= 0x7981 0x53e5", "kinshi1= 0x7981 0x6b62", "kinshu= 0x7981 0x9152", "kinsei3= 0x7981 0x5236", "kinmotsu= 0x7981 0x7269", "kinyokuteki= 0x7981 0x6b32 0x7684", "kinryou2= 0x7981 0x731f", "suji= 0x7b4b", "sujichigai= 0x7b4b 0x9055 0x3044", "sujigaki= 0x7b4b 0x66f8 0x304d", "sujimichi= 0x7b4b 0x9053", "kinniku= 0x7b4b 0x8089", "kinkyuu= 0x7dca 0x6025", "kinshuku= 0x7dca 0x7e2e", "kinchou1= 0x7dca 0x5f35", "kinpaku= 0x7dca 0x8feb", "kinmitsu= 0x7dca 0x5bc6", "eri= 0x895f", "erimaki= 0x895f 0x5dfb 0x304d", "erimoto= 0x895f 0x5143", "erikubi= 0x895f 0x9996", "tsutsushimu1= 0x8b39 0x3080", "tsutsushinde= 0x8b39 0x3093 0x3067", "kingashinnen= 0x8b39 0x8cc0 0x65b0 0x5e74", "kingen= 0x8b39 0x8a00", "kinshin= 0x8b39 0x614e", "kinchou2= 0x8b39 0x8074", "kintei= 0x8b39 0x5448", "chikai= 0x8fd1 0x3044", "chikaku1= 0x8fd1 0x304f", "kingan= 0x8fd1 0x773c", "chikayoseru= 0x8fd1 0x5bc4 0x305b 0x308b", "chikayoru= 0x8fd1 0x5bc4 0x308b", "kinkyori= 0x8fd1 0x8ddd 0x96e2", "kingou= 0x8fd1 0x90f7", "kinkou2= 0x8fd1 0x90ca", "chikagoro= 0x8fd1 0x9803", "kinshi2= 0x8fd1 0x8996", "kinjo= 0x8fd1 0x6240", "kinsei4= 0x8fd1 0x4e16", "kindai= 0x8fd1 0x4ee3", "chikamichi= 0x8fd1 0x9053", "kinjitsu= 0x8fd1 0x65e5", "chikaduku= 0x8fd1 0x4ed8 0x304f", "chikadukeru= 0x8fd1 0x4ed8 0x3051 0x308b", "kinpen= 0x8fd1 0x8fba", "kane1= 0x91d1", "kin2= 0x91d1", "kanemouke1= 0x91d1 0x3082 0x3046 0x3051", "kinmedaru= 0x91d1 0x30e1 0x30c0 0x30eb", "kinichimanen= 0x91d1 0x58f1 0x4e07 0x5186", "kinkai= 0x91d1 0x584a", "kingaku= 0x91d1 0x984d", "kinkan= 0x91d1 0x51a0", "kingyo= 0x91d1 0x9b5a", "kanagu= 0x91d1 0x5177", "kinko= 0x91d1 0x5eab", "kongouseki= 0x91d1 0x525b 0x77f3", "kingusari= 0x91d1 0x9396", "kanemochi= 0x91d1 0x6301 0x3061", "kinjuumanen= 0x91d1 0x62fe 0x4e07 0x5186", "kiniro= 0x91d1 0x8272", "konjiki= 0x91d1 0x8272", "kinsen= 0x91d1 0x92ad", "kinzoku= 0x91d1 0x5c5e", "kanaduchi= 0x91d1 0x69cc", "kaneire= 0x91d1 0x5165 0x308c", "kanashibari= 0x91d1 0x7e1b 0x308a", "kinpatsu= 0x91d1 0x9aea", "kanaami= 0x91d1 0x7db2", "kanemouke2= 0x91d1 0x5132 0x3051", "kinyuu2= 0x91d1 0x878d", "kinyuukikan= 0x91d1 0x878d 0x6a5f 0x95a2", "kinyou= 0x91d1 0x66dc", "kinyoubi= 0x91d1 0x66dc 0x65e5", "kinri= 0x91d1 0x5229", "ginei= 0x541f 0x8a60", "ginmi= 0x541f 0x5473", "gin= 0x9280", "ginmedaru= 0x9280 0x30e1 0x30c0 0x30eb", "ginga= 0x9280 0x6cb3", "ginka= 0x9280 0x8ca8", "ginkou= 0x9280 0x884c", "ginza= 0x9280 0x5ea7", "gingami= 0x9280 0x7d19", "giniro= 0x9280 0x8272", "ginpai= 0x9280 0x676f", "kyuu5= 0x4e5d", "ku1= 0x4e5d", "kokonotsu= 0x4e5d 0x3064", "kyuushuu2= 0x4e5d 0x5dde", "kokonoka= 0x4e5d 0x65e5", "ku2= 0x53e5", "kutouten= 0x53e5 0x8aad 0x70b9", "kutouhou= 0x53e5 0x8aad 0x6cd5", "ku3= 0x533a", "machimachi= 0x533a 0x3005", "kuiki= 0x533a 0x57df", "kukaku= 0x533a 0x753b", "kukan= 0x533a 0x9593", "kugiru= 0x533a 0x5207 0x308b", "kubun= 0x533a 0x5206", "kubetsu= 0x533a 0x5225", "kuyakusho= 0x533a 0x5f79 0x6240", "nigai= 0x82e6 0x3044", "kurushii= 0x82e6 0x3057 0x3044", "kurushimi= 0x82e6 0x3057 0x307f", "kurushimu= 0x82e6 0x3057 0x3080", "kurushimeru= 0x82e6 0x3057 0x3081 0x308b", "nigaru= 0x82e6 0x308b", "kukyou= 0x82e6 0x5883", "nigate= 0x82e6 0x624b", "kushou= 0x82e6 0x7b11", "nigawarai= 0x82e6 0x7b11 0x3044", "kujou= 0x82e6 0x60c5", "kushin= 0x82e6 0x5fc3", "kuchuu= 0x82e6 0x8877", "kutsuu= 0x82e6 0x75db", "kunou= 0x82e6 0x60a9", "kumi= 0x82e6 0x5473", "nigami= 0x82e6 0x5473", "kurou= 0x82e6 0x52b4", "kakeru3= 0x99c6 0x3051 0x308b", "kakemawaru= 0x99c6 0x3051 0x56de 0x308b", "kakeashi= 0x99c6 0x3051 0x8db3", "karu2= 0x99c6 0x308b", "kujo= 0x99c6 0x9664", "kuchiku= 0x99c6 0x9010", "gu= 0x5177", "sonaeru2= 0x5177 0x3048 0x308b", "sonawaru1= 0x5177 0x308f 0x308b", "guai= 0x5177 0x5408", "gushouteki= 0x5177 0x8c61 0x7684", "gutaisaku= 0x5177 0x4f53 0x7b56", "gutaiteki= 0x5177 0x4f53 0x7684", "oroka= 0x611a 0x304b", "guchi= 0x611a 0x75f4", "gudon= 0x611a 0x920d", "gumon= 0x611a 0x554f", "guretsu= 0x611a 0x52a3", "gurentai= 0x611a 0x9023 0x968a", "osore2= 0x865e", "kara2= 0x7a7a", "sora= 0x7a7a", "aki1= 0x7a7a 0x304d", "akikan= 0x7a7a 0x304d 0x7f36", "akisu= 0x7a7a 0x304d 0x5de3", "akichi1= 0x7a7a 0x304d 0x5730", "aku4= 0x7a7a 0x304f", "suku1= 0x7a7a 0x304f", "akeru2= 0x7a7a 0x3051 0x308b", "munashii= 0x7a7a 0x3057 0x3044", "karappo= 0x7a7a 0x3063 0x307d", "kuukan= 0x7a7a 0x9593", "kuuki= 0x7a7a 0x6c17", "kuukikou= 0x7a7a 0x6c17 0x5b54", "kuukyo= 0x7a7a 0x865a", "soraosoroshii= 0x7a7a 0x6050 0x308d 0x3057 0x3044", "kuugun= 0x7a7a 0x8ecd", "kuukou= 0x7a7a 0x6e2f", "sorani= 0x7a7a 0x4f3c", "kuusha= 0x7a7a 0x8eca", "karate= 0x7a7a 0x624b", "kuushuu= 0x7a7a 0x8972", "kuuso= 0x7a7a 0x758e", "kuusou= 0x7a7a 0x60f3", "akichi2= 0x7a7a 0x5730", "kuuchuu= 0x7a7a 0x4e2d", "kuuten= 0x7a7a 0x8ee2", "kuudou= 0x7a7a 0x6d1e", "kuuhaku= 0x7a7a 0x767d", "soratobuenban= 0x7a7a 0x98db 0x3076 0x5186 0x76e4", "kuufuku= 0x7a7a 0x8179", "kuuyu= 0x7a7a 0x8f38", "kuuran= 0x7a7a 0x6b04", "soranamida= 0x7a7a 0x6d99", "guu= 0x5076", "tamatama= 0x5076 0x3005", "tamani= 0x5076 0x306b", "guusuu= 0x5076 0x6570", "guuzen= 0x5076 0x7136", "guuzou= 0x5076 0x50cf", "guuhatsu= 0x5076 0x767a", "sumi1= 0x9685", "sumizumi= 0x9685 0x3005", "kushi= 0x6adb", "kuzu= 0x5c51", "kukkyoku= 0x5c48 0x66f2", "kutsujoku= 0x5c48 0x8fb1", "kussetsu= 0x5c48 0x6298", "horu1= 0x6398 0x308b", "kutsu= 0x9774", "kutsuissoku= 0x9774 0x4e00 0x8db3", "kutsuya= 0x9774 0x5c4b", "kutsushita= 0x9774 0x4e0b", "kutsuzure= 0x9774 0x64e6 0x308c", "kubomi= 0x7aaa 0x307f", "kuma= 0x718a", "kumanaku= 0x9688 0x306a 0x304f", "kuri= 0x6817", "kurigoto= 0x7e70 0x308a 0x8a00", "kuriageru= 0x7e70 0x308a 0x4e0a 0x3052 0x308b", "kurikaesu= 0x7e70 0x308a 0x8fd4 0x3059", "kuru1= 0x7e70 0x308b", "kuwa= 0x6851", "souen= 0x6851 0x5712", "kuwabarakuwabara= 0x6851 0x539f 0x6851 0x539f", "souden= 0x6851 0x7530", "kuwabatake= 0x6851 0x7551", "soumon= 0x6851 0x9580", "kunkou1= 0x52f2 0x529f", "kunshou= 0x52f2 0x7ae0", "kimi3= 0x541b", "kun= 0x541b", "kunshu= 0x541b 0x4e3b", "kunshin= 0x541b 0x81e3", "kunrin= 0x541b 0x81e8", "kaoru1= 0x85ab 0x308b", "kunkou2= 0x85ab 0x9999", "kuntou= 0x85ab 0x9676", "kunpuu= 0x85ab 0x98a8", "kuniku= 0x8a13 0x80b2", "kunkai= 0x8a13 0x6212", "kunji= 0x8a13 0x8f9e", "kunyomi= 0x8a13 0x8aad 0x307f", "kunrei= 0x8a13 0x4ee4", "kunren= 0x8a13 0x7df4", "gun1= 0x7fa4", "muragaru= 0x7fa4 0x304c 0x308b", "mure= 0x7fa4 0x308c", "mureru1= 0x7fa4 0x308c 0x308b", "gunshuu1= 0x7fa4 0x8846", "gunshuu2= 0x7fa4 0x96c6", "gunzou= 0x7fa4 0x50cf", "guntou= 0x7fa4 0x5cf6", "gun2= 0x8ecd", "gunkaku= 0x8ecd 0x62e1", "gunkan= 0x8ecd 0x8266", "gunkou= 0x8ecd 0x6e2f", "gunkokushugi= 0x8ecd 0x56fd 0x4e3b 0x7fa9", "gunji= 0x8ecd 0x4e8b", "gunjuhin= 0x8ecd 0x9700 0x54c1", "gunshuku= 0x8ecd 0x7e2e", "gunjin= 0x8ecd 0x4eba", "guntai= 0x8ecd 0x968a", "gunbatsu= 0x8ecd 0x95a5", "gunbi= 0x8ecd 0x5099", "gun3= 0x90e1", "gunken= 0x90e1 0x770c", "gunbu= 0x90e1 0x90e8", "kakari= 0x4fc2", "kakaru3= 0x4fc2 0x308b", "kakawaru2= 0x4fc2 0x308f 0x308b", "kakariin= 0x4fc2 0x54e1", "keisou= 0x4fc2 0x4e89", "keirui= 0x4fc2 0x7d2f", "katamuku= 0x50be 0x304f", "katamukeru= 0x50be 0x3051 0x308b", "kashigeru= 0x50be 0x3052 0x308b", "keikou= 0x50be 0x5411", "keisha1= 0x50be 0x659c", "keichou1= 0x50be 0x8074", "keitou1= 0x50be 0x5012", "kei2= 0x5211", "keiji1= 0x5211 0x4e8b", "keijisoshou= 0x5211 0x4e8b 0x8a34 0x8a1f", "keibatsu= 0x5211 0x7f70", "keihou1= 0x5211 0x6cd5", "keimusho= 0x5211 0x52d9 0x6240", "ani2= 0x5144", "niisan= 0x5144 0x3055 0x3093", "kyoudai2= 0x5144 0x5f1f", "keiji2= 0x5553 0x793a", "keihatsu= 0x5553 0x767a", "keimou= 0x5553 0x8499", "kata2= 0x578b", "chigiru1= 0x5951 0x308b", "keiki1= 0x5951 0x6a5f", "keiyaku= 0x5951 0x7d04", "katachi= 0x5f62", "katachidukuru= 0x5f62 0x3065 0x304f 0x308b", "katami= 0x5f62 0x898b", "keishiki= 0x5f62 0x5f0f", "keishikiteki= 0x5f62 0x5f0f 0x7684", "keisei= 0x5f62 0x6210", "keiyou1= 0x5f62 0x5bb9", "keiyoushi= 0x5f62 0x5bb9 0x8a5e", "megumareru= 0x6075 0x307e 0x308c 0x308b", "megumu= 0x6075 0x3080", "keiga= 0x6176 0x8cc0", "keiji3= 0x6176 0x4e8b", "keishuku= 0x6176 0x795d", "keichou2= 0x6176 0x5f14", "ikoi1= 0x61a9", "ikoi2= 0x61a9 0x3044", "ikou3= 0x61a9 0x3046", "kakageru= 0x63b2 0x3052 0x308b", "keisai= 0x63b2 0x8f09", "keiji4= 0x63b2 0x793a", "keijiban= 0x63b2 0x793a 0x677f", "keiyou2= 0x63b2 0x63da", "tazusaeru= 0x643a 0x3048 0x308b", "tazusawaru= 0x643a 0x308f 0x308b", "keitai= 0x643a 0x5e2f", "uyamau= 0x656c 0x3046", "keii1= 0x656c 0x610f", "keien= 0x656c 0x9060", "keigu= 0x656c 0x5177", "keigo= 0x656c 0x8a9e", "keibo= 0x656c 0x6155", "keirou= 0x656c 0x8001", "keiki2= 0x666f 0x6c17", "keishou1= 0x666f 0x52dd", "keishouchi= 0x666f 0x52dd 0x5730", "keshiki= 0x666f 0x8272", "keikan1= 0x6e13 0x9593", "keikoku1= 0x6e13 0x8c37", "keiryuu= 0x6e13 0x6d41", "keiko= 0x7a3d 0x53e4", "kei3= 0x7cfb", "keizu= 0x7cfb 0x56f3", "keitou2= 0x7cfb 0x7d71", "keifu= 0x7cfb 0x8b5c", "keiretsu= 0x7cfb 0x5217", "tatsu1= 0x7d4c 0x3064", "heru1= 0x7d4c 0x308b", "keii2= 0x7d4c 0x7def", "keiei= 0x7d4c 0x55b6", "keika= 0x7d4c 0x904e", "keiken= 0x7d4c 0x9a13", "keizai= 0x7d4c 0x6e08", "keizaikikakuchou= 0x7d4c 0x6e08 0x4f01 0x753b 0x5e81", "keizaiteki= 0x7d4c 0x6e08 0x7684", "keido= 0x7d4c 0x5ea6", "keihi= 0x7d4c 0x8cbb", "keiyu= 0x7d4c 0x7531", "keiri= 0x7d4c 0x7406", "keireki= 0x7d4c 0x6b74", "keiro= 0x7d4c 0x8def", "tsugihagi= 0x7d99 0x304e 0x306f 0x304e", "tsugu1= 0x7d99 0x3050", "keishou2= 0x7d99 0x627f", "keizoku= 0x7d99 0x7d9a", "tsunagari= 0x7e4b 0x304c 0x308a", "tsunagaru= 0x7e4b 0x304c 0x308b", "tsunagu= 0x7e4b 0x3050", "kuki= 0x830e", "hotaru= 0x86cd", "keikoutoryou= 0x86cd 0x5149 0x5857 0x6599", "keikoutou= 0x86cd 0x5149 0x706f", "hotarugari= 0x86cd 0x72e9 0x308a", "keisetsunokou= 0x86cd 0x96ea 0x306e 0x529f", "kei4= 0x8a08", "hakarau= 0x8a08 0x3089 0x3046", "hakaru1= 0x8a08 0x308b", "keikaku= 0x8a08 0x753b", "keisan= 0x8a08 0x7b97", "keiryaku= 0x8a08 0x7565", "keikai1= 0x8b66 0x6212", "keikan2= 0x8b66 0x5b98", "keikoku2= 0x8b66 0x544a", "keisatsu= 0x8b66 0x5bdf", "keisatsusho= 0x8b66 0x5bdf 0x7f72", "keishi1= 0x8b66 0x8996", "keishichou= 0x8b66 0x8996 0x5e81", "keishou3= 0x8b66 0x9418", "keiteki= 0x8b66 0x7b1b", "keihou2= 0x8b66 0x5831", "karui= 0x8efd 0x3044", "karuhazumi= 0x8efd 0x306f 0x305a 0x307f", "karuyaka= 0x8efd 0x3084 0x304b", "keiongaku= 0x8efd 0x97f3 0x697d", "keikai2= 0x8efd 0x5feb", "keikikyuu= 0x8efd 0x6c17 0x7403", "keikougyou= 0x8efd 0x5de5 0x696d", "keishi2= 0x8efd 0x8996", "keishou4= 0x8efd 0x50b7", "keishoku= 0x8efd 0x98df", "keihaku= 0x8efd 0x8584", "keibu= 0x8efd 0x4fae", "keibetsu= 0x8efd 0x8511", "keisotsu= 0x8efd 0x7387", "niwatori= 0x9d8f", "keisha2= 0x9d8f 0x820e", "keitou3= 0x9d8f 0x982d", "keiniku= 0x9d8f 0x8089", "keimei= 0x9d8f 0x9cf4", "keiran= 0x9d8f 0x5375", "geijutsu= 0x82b8 0x8853", "geinou= 0x82b8 0x80fd", "geinoujin= 0x82b8 0x80fd 0x4eba", "mukae= 0x8fce 0x3048", "mukaeru= 0x8fce 0x3048 0x308b", "mukaeutsu= 0x8fce 0x3048 0x6483 0x3064", "geigou= 0x8fce 0x5408", "geihinkan= 0x8fce 0x8cd3 0x9928", "kujira= 0x9be8", "geiin= 0x9be8 0x98f2", "geiniku= 0x9be8 0x8089", "geiyu= 0x9be8 0x6cb9", "geki= 0x5287", "gekijou1= 0x5287 0x5834", "gekiteki= 0x5287 0x7684", "gekiyaku= 0x5287 0x85ac", "utsu1= 0x6483 0x3064", "gekichin= 0x6483 0x6c88", "gekitsui= 0x6483 0x589c", "hageshii= 0x6fc0 0x3057 0x3044", "gekijou2= 0x6fc0 0x60c5", "gekijin= 0x6fc0 0x751a", "gekido= 0x6fc0 0x6012", "gekidou= 0x6fc0 0x52d5", "gekiryuu= 0x6fc0 0x6d41", "gekirei= 0x6fc0 0x52b1", "suki1= 0x9699", "sukima= 0x9699 0x9593", "keta= 0x6841", "ketsu= 0x5091", "kessaku= 0x5091 0x4f5c", "kesshutsu= 0x5091 0x51fa", "ketsubutsu= 0x5091 0x7269", "kaku6= 0x6b20 0x304f", "kakera= 0x6b20 0x3051 0x3089", "kakeru4= 0x6b20 0x3051 0x308b", "ketsuin= 0x6b20 0x54e1", "kekkan1= 0x6b20 0x9665", "kekkintodoke= 0x6b20 0x52e4 0x5c4a 0x3051", "akubi= 0x6b20 0x4f38", "kesseki= 0x6b20 0x5e2d", "kessekitodoke= 0x6b20 0x5e2d 0x5c4a 0x3051", "kesson= 0x6b20 0x640d", "ketten= 0x6b20 0x70b9", "ketsujo= 0x6b20 0x5982", "ketsubou= 0x6b20 0x4e4f", "kesshite= 0x6c7a 0x3057 0x3066", "kimari= 0x6c7a 0x307e 0x308a", "kimaru= 0x6c7a 0x307e 0x308b", "kimeru= 0x6c7a 0x3081 0x308b", "kimetsukeru= 0x6c7a 0x3081 0x4ed8 0x3051 0x308b", "ketsui= 0x6c7a 0x610f", "ketsugi= 0x6c7a 0x8b70", "kessai= 0x6c7a 0x6e08", "kessan= 0x6c7a 0x7b97", "kesshou1= 0x6c7a 0x52dd", "kesshin= 0x6c7a 0x5fc3", "ketsudan= 0x6c7a 0x65ad", "kecchaku= 0x6c7a 0x7740", "kettei= 0x6c7a 0x5b9a", "ketsuretsu= 0x6c7a 0x88c2", "isagiyoi= 0x6f54 0x3044", "isagiyoku= 0x6f54 0x304f", "keppaku= 0x6f54 0x767d", "keppeki= 0x6f54 0x7656", "ana= 0x7a74", "kekkyojin= 0x7a74 0x5c45 0x4eba", "anago= 0x7a74 0x5b50", "yuu1= 0x7d50 0x3046", "musubi= 0x7d50 0x3073", "musubu= 0x7d50 0x3076", "yuwaeru= 0x7d50 0x308f 0x3048 0x308b", "kekka= 0x7d50 0x679c", "kekkaku= 0x7d50 0x6838", "kekkyoku= 0x7d50 0x5c40", "kekkou= 0x7d50 0x69cb", "ketsugou= 0x7d50 0x5408", "kekkon= 0x7d50 0x5a5a", "kekkonshiki= 0x7d50 0x5a5a 0x5f0f", "kekkonhirouen= 0x7d50 0x5a5a 0x62ab 0x9732 0x5bb4", "kesshou2= 0x7d50 0x6676", "kessei= 0x7d50 0x6210", "kessoku= 0x7d50 0x675f", "kettaku= 0x7d50 0x8a17", "ketsumaku= 0x7d50 0x819c", "ketsumakuen= 0x7d50 0x819c 0x708e", "ketsumatsu= 0x7d50 0x672b", "ketsuron= 0x7d50 0x8ad6", "chi1= 0x8840", "ketsuatsu= 0x8840 0x5727", "ketsueki= 0x8840 0x6db2", "ketsuekigata= 0x8840 0x6db2 0x578b", "ketsuekijunkan= 0x8840 0x6db2 0x5faa 0x74b0", "ketsuen= 0x8840 0x7e01", "kekkan2= 0x8840 0x7ba1", "kettou= 0x8840 0x7cd6", "ketsurui= 0x8840 0x6d99", "tsuki= 0x6708", "tsukiroketto= 0x6708 0x30ed 0x30b1 0x30c3 0x30c8", "gekkan= 0x6708 0x520a", "gekkyuu= 0x6708 0x7d66", "tsukimi= 0x6708 0x898b", "gekkou= 0x6708 0x5149", "gessha= 0x6708 0x8b1d", "tsukihajime= 0x6708 0x521d 0x3081", "gesshoku= 0x6708 0x98df", "gappi= 0x6708 0x65e5", "tsukihi= 0x6708 0x65e5", "geppu= 0x6708 0x8ce6", "tsukinami1= 0x6708 0x4e26", "tsukinami2= 0x6708 0x4e26 0x307f", "getsumatsu= 0x6708 0x672b", "tsukiyo= 0x6708 0x591c", "getsuyou= 0x6708 0x66dc", "getsuyoubi= 0x6708 0x66dc 0x65e5", "getsurei= 0x6708 0x9f62", "ken1= 0x4ef6", "ken2= 0x5039", "kenyaku= 0x5039 0x7d04", "kentai= 0x5026 0x6020", "sukoyaka= 0x5065 0x3084 0x304b", "kenage= 0x5065 0x6c17", "kenkou= 0x5065 0x5eb7", "kenzai= 0x5065 0x5728", "kenshou1= 0x5065 0x52dd", "kenzen= 0x5065 0x5168", "kenbou= 0x5065 0x5fd8", "kenboushou= 0x5065 0x5fd8 0x75c7", "kaneru= 0x517c 0x306d 0x308b", "kengyou= 0x517c 0x696d", "kennin= 0x517c 0x4efb", "ken3= 0x5238", "tsurugi= 0x5263", "kengeki= 0x5263 0x5287", "kendou1= 0x5263 0x9053", "yakamashii= 0x55a7 0x3057 0x3044", "kenka= 0x55a7 0x5629", "kengai= 0x570f 0x5916", "kennai= 0x570f 0x5185", "katai1= 0x5805 0x3044", "katasa1= 0x5805 0x3055", "kengo= 0x5805 0x56fa", "kenji1= 0x5805 0x6301", "kenjitsu= 0x5805 0x5b9f", "kenrui= 0x5805 0x5841", "iya= 0x5acc", "kirai= 0x5acc 0x3044", "kirau= 0x5acc 0x3046", "iyagaru= 0x5acc 0x304c 0x308b", "keno= 0x5acc 0x60aa", "kengi= 0x5acc 0x7591", "tatsu2= 0x5efa 0x3064", "tateru1= 0x5efa 0x3066 0x308b", "tatemae1= 0x5efa 0x3066 0x524d", "kensetsu= 0x5efa 0x8a2d", "tatemae2= 0x5efa 0x524d", "kenchiku= 0x5efa 0x7bc9", "kenchikuka= 0x5efa 0x7bc9 0x5bb6", "tatetsubo= 0x5efa 0x576a", "tatemono= 0x5efa 0x7269", "konryuu= 0x5efa 0x7acb", "kenshou2= 0x61b2 0x7ae0", "kensei= 0x61b2 0x653f", "kenpou= 0x61b2 0x6cd5", "kakaru4= 0x61f8 0x304b 0x308b", "kakeru5= 0x61f8 0x3051 0x308b", "kenan= 0x61f8 0x6848", "kenshou3= 0x61f8 0x8cde", "kensui= 0x61f8 0x5782", "kenen= 0x61f8 0x5ff5", "genkotsu= 0x62f3 0x9aa8", "makuru= 0x6372 0x308b", "mekuru= 0x6372 0x308b", "keneki= 0x691c 0x75ab", "kenetsu= 0x691c 0x95b2", "kenkyo1= 0x691c 0x6319", "kensa= 0x691c 0x67fb", "kensatsu= 0x691c 0x5bdf", "kenshi1= 0x691c 0x6b7b", "kenji2= 0x691c 0x4e8b", "kenshou4= 0x691c 0x8a3c", "kenshin= 0x691c 0x8a3a", "kentei= 0x691c 0x5b9a", "kentou1= 0x691c 0x8a0e", "ken4= 0x6a29", "keni= 0x6a29 0x5a01", "kengen= 0x6a29 0x9650", "kenri= 0x6a29 0x5229", "kenryoku= 0x6a29 0x529b", "inu= 0x72ac", "kenennonaka= 0x72ac 0x733f 0x306e 0x4ef2", "kenshi2= 0x72ac 0x6b6f", "inugoya= 0x72ac 0x5c0f 0x5c4b", "kenkin= 0x732e 0x91d1", "kenketsu= 0x732e 0x8840", "kenjou1= 0x732e 0x4e0a", "kenteibon= 0x732e 0x5448 0x672c", "kondate= 0x732e 0x7acb", "togu= 0x7814 0x3050", "kengaku1= 0x7814 0x5b66", "kenkyuu= 0x7814 0x7a76", "kenkyuujo= 0x7814 0x7a76 0x6240", "kenma= 0x7814 0x78e8", "kinu= 0x7d79", "kinuito= 0x7d79 0x7cf8", "kenshi3= 0x7d79 0x7cf8", "kinuorimono= 0x7d79 0x7e54 0x7269", "kinubari= 0x7d79 0x91dd", "kenpu= 0x7d79 0x5e03", "ken5= 0x770c", "kenkai1= 0x770c 0x4f1a", "kenchou= 0x770c 0x5e81", "kendou2= 0x770c 0x9053", "kenritsu= 0x770c 0x7acb", "kata3= 0x80a9", "katagaki1= 0x80a9 0x66f8", "katagaki2= 0x80a9 0x66f8 0x304d", "kenshou5= 0x80a9 0x7ae0", "katamigahiroi= 0x80a9 0x8eab 0x304c 0x5e83 0x3044", "katagawari1= 0x80a9 0x4ee3 0x308a", "katagawari2= 0x80a9 0x4ee3 0x308f 0x308a", "mieru= 0x898b 0x3048 0x308b", "misumisu= 0x898b 0x3059 0x898b 0x3059", "mizushirazu= 0x898b 0x305a 0x77e5 0x3089 0x305a", "misebirakasu= 0x898b 0x305b 0x3073 0x3089 0x304b 0x3059", "miseru= 0x898b 0x305b 0x308b", "misekake= 0x898b 0x305b 0x639b 0x3051", "mitame= 0x898b 0x305f 0x76ee", "mittomonai= 0x898b 0x3063 0x3068 0x3082 0x306a 0x3044", "mitsukaru1= 0x898b 0x3064 0x304b 0x308b", "mitsukeru1= 0x898b 0x3064 0x3051 0x308b", "minasu= 0x898b 0x306a 0x3059", "miru2= 0x898b 0x308b", "mirumiru= 0x898b 0x308b 0x898b 0x308b", "michigaeru= 0x898b 0x9055 0x3048 0x308b", "miorosu= 0x898b 0x4e0b 0x308d 0x3059", "misugosu= 0x898b 0x904e 0x3054 0x3059", "kenkai2= 0x898b 0x89e3", "mioboe= 0x898b 0x899a 0x3048", "kengaku2= 0x898b 0x5b66", "mikake= 0x898b 0x639b 0x3051", "minareru= 0x898b 0x6163 0x308c 0x308b", "mitsumeru= 0x898b 0x8a70 0x3081 0x308b", "mikiwameru= 0x898b 0x6975 0x3081 0x308b", "migurushii= 0x898b 0x82e6 0x3057 0x3044", "mikagiru= 0x898b 0x9650 0x308b", "miai= 0x898b 0x5408 0x3044", "miawaseru= 0x898b 0x5408 0x308f 0x305b 0x308b", "mitoreru= 0x898b 0x60da 0x308c 0x308b", "mikomi= 0x898b 0x8fbc 0x307f", "misuborashii= 0x898b 0x7a84 0x3089 0x3057 0x3044", "migoto= 0x898b 0x4e8b", "miushinau= 0x898b 0x5931 0x3046", "misuteru= 0x898b 0x6368 0x3066 0x308b", "mimamoru= 0x898b 0x5b88 0x308b", "minarai= 0x898b 0x7fd2 0x3044", "minarau= 0x898b 0x7fd2 0x3046", "midashi= 0x898b 0x51fa 0x3057", "miidasu= 0x898b 0x51fa 0x3059", "midokoro= 0x898b 0x6240", "miageru= 0x898b 0x4e0a 0x3052 0x308b", "miharashi= 0x898b 0x6674 0x3089 0x3057", "miharasu= 0x898b 0x6674 0x3089 0x3059", "mitsumori1= 0x898b 0x7a4d 0x3082 0x308a", "mitsumori2= 0x898b 0x7a4d 0x308a", "mitsumorisho= 0x898b 0x7a4d 0x66f8", "miokuri= 0x898b 0x9001 0x308a", "miokuru= 0x898b 0x9001 0x308b", "misokonau1= 0x898b 0x640d 0x3046", "misokonau2= 0x898b 0x640d 0x306a 0x3046", "kenchi= 0x898b 0x5730", "miharu= 0x898b 0x5f35 0x308b", "minaosu= 0x898b 0x76f4 0x3059", "mitooshi= 0x898b 0x901a 0x3057", "miwatasu= 0x898b 0x6e21 0x3059", "kentou2= 0x898b 0x5f53", "minogasu= 0x898b 0x9003 0x3059", "mitodokeru= 0x898b 0x5c4a 0x3051 0x308b", "miyaburu= 0x898b 0x7834 0x308b", "mikuraberu= 0x898b 0x6bd4 0x3079 0x308b", "mitsukaru2= 0x898b 0x4ed8 0x304b 0x308b", "mitsukeru2= 0x898b 0x4ed8 0x3051 0x308b", "mimai1= 0x898b 0x821e", "mimai2= 0x898b 0x821e 0x3044", "mimau= 0x898b 0x821e 0x3046", "kenbutsu= 0x898b 0x7269", "kenbutsunin= 0x898b 0x7269 0x4eba", "miwake= 0x898b 0x5206 0x3051", "miwakeru= 0x898b 0x5206 0x3051 0x308b", "kenbun= 0x898b 0x805e", "mikaesu= 0x898b 0x8fd4 0x3059", "mihanasu= 0x898b 0x653e 0x3059", "mikata1= 0x898b 0x65b9", "miakiru= 0x898b 0x98fd 0x304d 0x308b", "mihon= 0x898b 0x672c", "miotosu= 0x898b 0x843d 0x3068 0x3059", "mikubiru= 0x898b 0x7e0a 0x308b", "kenkyo2= 0x8b19 0x865a", "kenjou2= 0x8b19 0x8b72", "kenjounobitoku= 0x8b19 0x8b72 0x306e 0x7f8e 0x5fb3", "kenson= 0x8b19 0x905c", "kashikoi= 0x8ce2 0x3044", "kenjin= 0x8ce2 0x4eba", "kentetsu= 0x8ce2 0x54f2", "kenbo= 0x8ce2 0x6bcd", "kenmei= 0x8ce2 0x660e", "noki= 0x8ed2", "kensuu= 0x8ed2 0x6570", "nokisaki= 0x8ed2 0x5148", "nokinami1= 0x8ed2 0x4e26", "nokinami2= 0x8ed2 0x4e26 0x307f", "tsukau1= 0x9063 0x3046", "kentoushi= 0x9063 0x5510 0x4f7f", "kagi= 0x9375", "kewashii= 0x967a 0x3057 0x3044", "kewashiimichi= 0x967a 0x3057 0x3044 0x8def", "kenaku= 0x967a 0x60aa", "kenso= 0x967a 0x963b", "kenro= 0x967a 0x8def", "kenkashokubutsu= 0x9855 0x82b1 0x690d 0x7269", "kenshou6= 0x9855 0x5f70", "kencho= 0x9855 0x8457", "kenbikyou= 0x9855 0x5fae 0x93e1", "moto1= 0x5143", "motomoto1= 0x5143 0x3005", "motoyori= 0x5143 0x3088 0x308a", "genki= 0x5143 0x6c17", "gankin= 0x5143 0x91d1", "gengou= 0x5143 0x53f7", "genshu1= 0x5143 0x9996", "gensui= 0x5143 0x5e25", "ganso= 0x5143 0x7956", "genso= 0x5143 0x7d20", "gantan= 0x5143 0x65e6", "ganjitsu= 0x5143 0x65e5", "gannen= 0x5143 0x5e74", "ganrai= 0x5143 0x6765", "genrou= 0x5143 0x8001", "gen= 0x539f", "hara1= 0x539f", "harappa= 0x539f 0x3063 0x3071", "genan= 0x539f 0x6848", "genin= 0x539f 0x56e0", "genkei1= 0x539f 0x578b", "genkei2= 0x539f 0x5f62", "genkou= 0x539f 0x7a3f", "genkouyoushi= 0x539f 0x7a3f 0x7528 0x7d19", "genkoku= 0x539f 0x544a", "gensaku= 0x539f 0x4f5c", "genshi1= 0x539f 0x59cb", "genshiteki= 0x539f 0x59cb 0x7684", "genshi2= 0x539f 0x5b50", "genshikaku= 0x539f 0x5b50 0x6838", "genshiryoku= 0x539f 0x5b50 0x529b", "genshiryokuhatsudensho= 0x539f 0x5b50 0x529b 0x767a 0x96fb 0x6240", "genshiro= 0x539f 0x5b50 0x7089", "genjuumin= 0x539f 0x4f4f 0x6c11", "gensho= 0x539f 0x66f8", "genshoku1= 0x539f 0x8272", "genseirin= 0x539f 0x751f 0x6797", "gensoku1= 0x539f 0x5247", "genten1= 0x539f 0x70b9", "genbaku= 0x539f 0x7206", "genbun= 0x539f 0x6587", "genmou= 0x539f 0x6bdb", "genyu= 0x539f 0x6cb9", "genri= 0x539f 0x7406", "genryou= 0x539f 0x6599", "ogosoka= 0x53b3 0x304b", "kibishii= 0x53b3 0x3057 0x3044", "genkai1= 0x53b3 0x6212", "genkaku1= 0x53b3 0x683c", "genkin1= 0x53b3 0x7981", "genshu2= 0x53b3 0x5b88", "genjuu= 0x53b3 0x91cd", "genshuku= 0x53b3 0x7c9b", "genbatsu= 0x53b3 0x7f70", "genmitsu= 0x53b3 0x5bc6", "maboroshi= 0x5e7b", "genei= 0x5e7b 0x5f71", "genkaku2= 0x5e7b 0x899a", "gensou= 0x5e7b 0x60f3", "genmetsu= 0x5e7b 0x6ec5", "tsuru1= 0x5f26", "gengakki= 0x5f26 0x697d 0x5668", "herasu= 0x6e1b 0x3089 0x3059", "heru2= 0x6e1b 0x308b", "genshou1= 0x6e1b 0x5c11", "gensoku2= 0x6e1b 0x901f", "genten2= 0x6e1b 0x70b9", "genpou1= 0x6e1b 0x4ff8", "genpou2= 0x6e1b 0x6cd5", "minamoto= 0x6e90", "gensen= 0x6e90 0x6cc9", "genkan= 0x7384 0x95a2", "genkanban= 0x7384 0x95a2 0x756a", "kurouto= 0x7384 0x4eba", "genmai= 0x7384 0x7c73", "arawasu1= 0x73fe 0x3059", "genni= 0x73fe 0x306b", "araware1= 0x73fe 0x308c", "arawareru1= 0x73fe 0x308c 0x308b", "arawasu2= 0x73fe 0x308f 0x3059", "araware2= 0x73fe 0x308f 0x308c", "arawareru2= 0x73fe 0x308f 0x308c 0x308b", "genkyou= 0x73fe 0x6cc1", "genkin2= 0x73fe 0x91d1", "genkinseika= 0x73fe 0x91d1 0x6b63 0x4fa1", "genkinbarai= 0x73fe 0x91d1 0x6255 0x3044", "genkouhande= 0x73fe 0x884c 0x72af 0x3067", "genzai= 0x73fe 0x5728", "genjitsu= 0x73fe 0x5b9f", "genjuusho= 0x73fe 0x4f4f 0x6240", "genshou2= 0x73fe 0x8c61", "genba= 0x73fe 0x5834", "genjou= 0x73fe 0x72b6", "genshoku2= 0x73fe 0x8077", "genzou= 0x73fe 0x50cf", "gendai= 0x73fe 0x4ee3", "genchi= 0x73fe 0x5730", "geneki= 0x73fe 0x5f79", "iinari= 0x8a00 0x3044 0x306a 0x308a", "iimawashi= 0x8a00 0x3044 0x56de 0x3057", "iigakari= 0x8a00 0x3044 0x639b 0x304b 0x308a", "iikaeru= 0x8a00 0x3044 0x63db 0x3048 0x308b", "iioyobu= 0x8a00 0x3044 0x53ca 0x3076", "iidasu= 0x8a00 0x3044 0x51fa 0x3059", "iiarasou= 0x8a00 0x3044 0x4e89 0x3046", "iiarawasu1= 0x8a00 0x3044 0x8868 0x3059", "iiarawasu2= 0x8a00 0x3044 0x8868 0x308f 0x3059", "iitsukeru= 0x8a00 0x3044 0x4ed8 0x3051 0x308b", "iibun= 0x8a00 0x3044 0x5206", "iikaesu= 0x8a00 0x3044 0x8fd4 0x3059", "iikata= 0x8a00 0x3044 0x65b9", "iiwake= 0x8a00 0x3044 0x8a33", "iu= 0x8a00 0x3046", "yuu2= 0x8a00 0x3046", "iwaba= 0x8a00 0x308f 0x3070", "genkyuu= 0x8a00 0x53ca", "gengo= 0x8a00 0x8a9e", "gendou= 0x8a00 0x52d5", "kotodukeru= 0x8a00 0x4ed8 0x3051 0x308b", "genmei= 0x8a00 0x660e", "kotoba= 0x8a00 0x8449", "kotobadukai= 0x8a00 0x8449 0x9063 0x3044", "genron= 0x8a00 0x8ad6", "kotowaza= 0x8afa", "kagiri= 0x9650 0x308a", "kagiru= 0x9650 0x308b", "genkai2= 0x9650 0x754c", "gentei= 0x9650 0x5b9a", "gendo= 0x9650 0x5ea6", "ko1= 0x500b", "koko1= 0x500b 0x3005", "kojin1= 0x500b 0x4eba", "kosei= 0x500b 0x6027", "kotai1= 0x500b 0x4f53", "furui= 0x53e4 0x3044", "furusu= 0x53e4 0x3059", "kogo= 0x53e4 0x8a9e", "furukusai= 0x53e4 0x81ed 0x3044", "kojou1= 0x53e4 0x57ce", "kodai1= 0x53e4 0x4ee3", "koten= 0x53e4 0x5178", "kofuu= 0x53e4 0x98a8", "kofun= 0x53e4 0x58b3", "kobun= 0x53e4 0x6587", "furuhon= 0x53e4 0x672c", "furusato1= 0x53e4 0x91cc", "yobikake= 0x547c 0x3073 0x304b 0x3051", "yobikakeru= 0x547c 0x3073 0x639b 0x3051 0x308b", "yobisute= 0x547c 0x3073 0x6368 0x3066", "yobidasu= 0x547c 0x3073 0x51fa 0x3059", "yobigoe= 0x547c 0x3073 0x58f0", "yobina= 0x547c 0x3073 0x540d", "yobimodosu= 0x547c 0x3073 0x623b 0x3059", "yobirin= 0x547c 0x3073 0x9234", "yobu= 0x547c 0x3076", "koou= 0x547c 0x5fdc", "kokyuu= 0x547c 0x5438", "katai2= 0x56fa 0x3044", "katasa2= 0x56fa 0x3055", "katamaru= 0x56fa 0x307e 0x308b", "katameru= 0x56fa 0x3081 0x308b", "katakurushii= 0x56fa 0x82e6 0x3057 0x3044", "kokei= 0x56fa 0x5f62", "koshitsu= 0x56fa 0x57f7", "kotai2= 0x56fa 0x4f53", "kotei= 0x56fa 0x5b9a", "koyuu= 0x56fa 0x6709", "shuutome= 0x59d1", "kokaku1= 0x5b64 0x5ba2", "koji1= 0x5b64 0x5150", "kojiin= 0x5b64 0x5150 0x9662", "kotou= 0x5b64 0x5cf6", "kodoku= 0x5b64 0x72ec", "koritsu= 0x5b64 0x7acb", "onore= 0x5df1", "kojou2= 0x5f27 0x72b6", "to1= 0x6238", "kogaisatsuei= 0x6238 0x5916 0x64ae 0x5f71", "toguchi= 0x6238 0x53e3", "koseki= 0x6238 0x7c4d", "todana= 0x6238 0x68da", "tojimari= 0x6238 0x7de0 0x307e 0x308a", "tomadoi= 0x6238 0x60d1 0x3044", "tomadou= 0x6238 0x60d1 0x3046", "ko2= 0x6545", "yue= 0x6545", "yueni= 0x6545 0x306b", "koi1= 0x6545 0x610f", "kokyou= 0x6545 0x90f7", "furusato2= 0x6545 0x90f7", "kokoku= 0x6545 0x56fd", "koji2= 0x6545 0x4e8b", "koshou1= 0x6545 0x969c", "kojin2= 0x6545 0x4eba", "karasu2= 0x67af 0x3089 0x3059", "kareru= 0x67af 0x308c 0x308b", "kareki1= 0x67af 0x308c 0x6728", "kareha1= 0x67af 0x308c 0x8449", "kokatsu= 0x67af 0x6e07", "koshi1= 0x67af 0x6b7b", "kareki2= 0x67af 0x6728", "kareha2= 0x67af 0x8449", "mizuumi= 0x6e56", "koshou2= 0x6e56 0x6cbc", "kosui1= 0x6e56 0x6c34", "kohan= 0x6e56 0x7554", "komen= 0x6e56 0x9762", "kitsune= 0x72d0", "nori2= 0x7cca", "hakama= 0x88b4", "mata1= 0x80a1", "momo1= 0x80a1", "kyuuri= 0x80e1 0x74dc", "agura= 0x80e1 0x5ea7", "koshou3= 0x80e1 0x6912", "tora= 0x864e", "hokori1= 0x8a87 0x308a", "hokoru= 0x8a87 0x308b", "koji3= 0x8a87 0x793a", "kodai2= 0x8a87 0x5927", "kodaimousou= 0x8a87 0x5927 0x5984 0x60f3", "kodaimousoukyou= 0x8a87 0x5927 0x5984 0x60f3 0x72c2", "kochou= 0x8a87 0x5f35", "matagaru= 0x8de8 0x304c 0x308b", "matagu= 0x8de8 0x3050", "yatoinushi1= 0x96c7 0x3044 0x4e3b", "yatoinin= 0x96c7 0x3044 0x4eba", "yatou1= 0x96c7 0x3046", "yatoinushi2= 0x96c7 0x4e3b", "koyou= 0x96c7 0x7528", "kaerimiru1= 0x9867 0x307f 0x308b", "kokaku2= 0x9867 0x5ba2", "kokyaku= 0x9867 0x5ba2", "komon= 0x9867 0x554f", "koryo= 0x9867 0x616e", "tsudumi= 0x9f13", "koshu= 0x9f13 0x624b", "kosui2= 0x9f13 0x5439", "kodou= 0x9f13 0x52d5", "kobu1= 0x9f13 0x821e", "komaku= 0x9f13 0x819c", "go1= 0x4e94", "itsutsu= 0x4e94 0x3064", "gokan1= 0x4e94 0x611f", "gokoku= 0x4e94 0x7a40", "gojuuon= 0x4e94 0x5341 0x97f3", "gojuuonjun= 0x4e94 0x5341 0x97f3 0x9806", "gojuunotou= 0x4e94 0x91cd 0x306e 0x5854", "gotai= 0x4e94 0x4f53", "godaishuu= 0x4e94 0x5927 0x5dde", "itsuka= 0x4e94 0x65e5", "gobu= 0x4e94 0x5206", "gorimuchuu= 0x4e94 0x91cc 0x9727 0x4e2d", "gorin= 0x4e94 0x8f2a", "gorintaikai= 0x4e94 0x8f2a 0x5927 0x4f1a", "tagai= 0x4e92 0x3044", "tagaini= 0x4e92 0x3044 0x306b", "tagaichigai= 0x4e92 0x3044 0x9055 0x3044", "tagaichigaini= 0x4e92 0x3044 0x9055 0x3044 0x306b", "gokei= 0x4e92 0x6075", "gojo= 0x4e92 0x52a9", "gojou= 0x4e92 0x8b72", "gosen= 0x4e92 0x9078", "gogo= 0x5348 0x5f8c", "gosui= 0x5348 0x7761", "gozen= 0x5348 0x524d", "gozenchuu= 0x5348 0x524d 0x4e2d", "go2= 0x5449", "kureru1= 0x5449 0x308c 0x308b", "kureguremo= 0x5449 0x308c 0x5449 0x308c 0x3082", "goetsu= 0x5449 0x8d8a", "goetsudoushuu= 0x5449 0x8d8a 0x540c 0x821f", "gofuku= 0x5449 0x670d", "gofukuya= 0x5449 0x670d 0x5c4b", "goraku= 0x5a2f 0x697d", "gorakubangumi= 0x5a2f 0x697d 0x756a 0x7d44", "ato1= 0x5f8c", "nochi= 0x5f8c", "atonomatsuri= 0x5f8c 0x306e 0x796d 0x308a", "okureru1= 0x5f8c 0x308c 0x308b", "ushiro= 0x5f8c 0x308d", "ushiromuki= 0x5f8c 0x308d 0x5411 0x304d", "ushirosugata= 0x5f8c 0x308d 0x59ff", "ushirodate= 0x5f8c 0x308d 0x76fe", "kouen1= 0x5f8c 0x63f4", "atooshi= 0x5f8c 0x62bc 0x3057", "atomawashi= 0x5f8c 0x56de 0x3057", "koukai1= 0x5f8c 0x6094", "kouki1= 0x5f8c 0x671f", "koukei1= 0x5f8c 0x7d99", "gosai= 0x5f8c 0x59bb", "koushi2= 0x5f8c 0x55e3", "atoshimatsu= 0x5f8c 0x59cb 0x672b", "kousha1= 0x5f8c 0x8005", "atogaki1= 0x5f8c 0x66f8", "atogaki2= 0x5f8c 0x66f8 0x304d", "koutenteki= 0x5f8c 0x5929 0x7684", "koutoubu= 0x5f8c 0x982d 0x90e8", "kounin1= 0x5f8c 0x4efb", "kouhai1= 0x5f8c 0x8f29", "kouhan1= 0x5f8c 0x534a", "atokataduke= 0x5f8c 0x7247 0x4ed8 0x3051", "kouhou1= 0x5f8c 0x65b9", "atomodori= 0x5f8c 0x623b 0x308a", "kouretsu= 0x5f8c 0x5217", "go3= 0x5fa1", "obake= 0x5fa1 0x5316 0x3051", "gyoji= 0x5fa1 0x74bd", "gosho= 0x5fa1 0x6240", "okazu= 0x5fa1 0x6570", "onchuu= 0x5fa1 0x4e2d", "goten= 0x5fa1 0x6bbf", "gohan2= 0x5fa1 0x98ef", "omake= 0x5fa1 0x8ca0 0x3051", "gobusata= 0x5fa1 0x7121 0x6c99 0x6c70", "gomen2= 0x5fa1 0x514d", "mikoshi= 0x5fa1 0x8f3f", "goyounokata= 0x5fa1 0x7528 0x306e 0x65b9", "goryou= 0x5fa1 0x9675", "goreijou= 0x5fa1 0x4ee4 0x5b22", "oshare= 0x5fa1 0x6d12 0x843d", "satori= 0x609f 0x308a", "satoru= 0x609f 0x308b", "go4= 0x7881", "gokaisho= 0x7881 0x4f1a 0x6240", "gokaijo= 0x7881 0x4f1a 0x6240", "goishi= 0x7881 0x77f3", "goban= 0x7881 0x76e4", "gobannome= 0x7881 0x76e4 0x306e 0x76ee", "go5= 0x8a9e", "katarau= 0x8a9e 0x3089 0x3046", "katarite= 0x8a9e 0x308a 0x624b", "kataru= 0x8a9e 0x308b", "gogaku= 0x8a9e 0x5b66", "gokan2= 0x8a9e 0x5e79", "goku2= 0x8a9e 0x53e5", "gogen= 0x8a9e 0x6e90", "gojun= 0x8a9e 0x9806", "goi= 0x8a9e 0x5f59", "ayamari= 0x8aa4 0x308a", "ayamaru1= 0x8aa4 0x308b", "gokai= 0x8aa4 0x89e3", "gosa= 0x8aa4 0x5dee", "gosan= 0x8aa4 0x7b97", "goji= 0x8aa4 0x5b57", "goshoku= 0x8aa4 0x690d", "gohou= 0x8aa4 0x5831", "gomakasu= 0x8aa4 0x9b54 0x5316 0x3059", "goei= 0x8b77 0x885b", "gofu= 0x8b77 0x7b26", "kojiki= 0x4e5e 0x98df", "koi2= 0x9bc9", "majieru= 0x4ea4 0x3048 0x308b", "mazaru1= 0x4ea4 0x3056 0x308b", "majiru1= 0x4ea4 0x3058 0x308b", "kawasu1= 0x4ea4 0x3059", "mazeru1= 0x4ea4 0x305c 0x308b", "kawasu2= 0x4ea4 0x308f 0x3059", "majiwaru= 0x4ea4 0x308f 0x308b", "koueki1= 0x4ea4 0x6613", "koukan1= 0x4ea4 0x63db", "koukyougaku= 0x4ea4 0x97ff 0x697d", "koukyoukyoku= 0x4ea4 0x97ff 0x66f2", "kougo1= 0x4ea4 0x4e92", "kousa= 0x4ea4 0x5dee", "kousaten= 0x4ea4 0x5dee 0x70b9", "kousai1= 0x4ea4 0x969b", "kousaku1= 0x4ea4 0x932f", "koushou1= 0x4ea4 0x6e09", "kousen1= 0x4ea4 0x6226", "koutai1= 0x4ea4 0x66ff", "koutai2= 0x4ea4 0x4ee3", "koutsuu= 0x4ea4 0x901a", "koutsuujiko= 0x4ea4 0x901a 0x4e8b 0x6545", "koutsuuhi= 0x4ea4 0x901a 0x8cbb", "koutsuumou= 0x4ea4 0x901a 0x7db2", "kouban1= 0x4ea4 0x756a", "koufu1= 0x4ea4 0x4ed8", "kouryuu2= 0x4ea4 0x6d41", "kou2= 0x4faf", "koushaku1= 0x4faf 0x7235", "kou3= 0x5019", "sourou= 0x5019", "kouho= 0x5019 0x88dc", "kouhosha= 0x5019 0x88dc 0x8005", "hikari= 0x5149", "hikarikagayaku= 0x5149 0x308a 0x8f1d 0x304f", "hikaru= 0x5149 0x308b", "kouei1= 0x5149 0x6804", "koukan2= 0x5149 0x74b0", "kouki2= 0x5149 0x8f1d", "koukei2= 0x5149 0x666f", "kousai2= 0x5149 0x5f69", "kousen2= 0x5149 0x7dda", "koutaku= 0x5149 0x6ca2", "kounetsuhi= 0x5149 0x71b1 0x8cbb", "kounen= 0x5149 0x5e74", "ooyake= 0x516c", "kouan1= 0x516c 0x5b89", "kouei2= 0x516c 0x55b6", "koueki2= 0x516c 0x76ca", "kouen2= 0x516c 0x5712", "kouen3= 0x516c 0x6f14", "koukaidou= 0x516c 0x4f1a 0x5802", "koukai2= 0x516c 0x6d77", "koukai3= 0x516c 0x958b", "kougai1= 0x516c 0x5bb3", "koukyou= 0x516c 0x5171", "kougen1= 0x516c 0x8a00", "kousan1= 0x516c 0x7b97", "koushi3= 0x516c 0x4f7f", "kouji1= 0x516c 0x793a", "koushiki= 0x516c 0x5f0f", "koushaku2= 0x516c 0x7235", "koushuu= 0x516c 0x8846", "koushuudenwa= 0x516c 0x8846 0x96fb 0x8a71", "kousei1= 0x516c 0x6b63", "kouzen= 0x516c 0x7136", "koudan= 0x516c 0x56e3", "kouchoukai= 0x516c 0x8074 0x4f1a", "koutei1= 0x516c 0x5b9a", "koutei2= 0x516c 0x90b8", "koutoku= 0x516c 0x5fb3", "kounin2= 0x516c 0x8a8d", "kouhan2= 0x516c 0x5224", "kouhyou= 0x516c 0x8868", "koufu2= 0x516c 0x5e03", "koufun2= 0x516c 0x61a4", "kouhei= 0x516c 0x5e73", "koubo1= 0x516c 0x52df", "kouhou2= 0x516c 0x6cd5", "kouminkan= 0x516c 0x6c11 0x9928", "koumu= 0x516c 0x52d9", "koumuin= 0x516c 0x52d9 0x54e1", "koumei1= 0x516c 0x660e", "kouyaku1= 0x516c 0x7d04", "kouritsu1= 0x516c 0x7acb", "kougyou3= 0x529f 0x696d", "kouseki1= 0x529f 0x7e3e", "koumyou1= 0x529f 0x540d", "kourou= 0x529f 0x52b4", "kikime1= 0x52b9 0x304d 0x76ee", "kiku2= 0x52b9 0x304f", "kouka1= 0x52b9 0x679c", "kouritsu2= 0x52b9 0x7387", "kouryoku= 0x52b9 0x529b", "koubai1= 0x52fe 0x914d", "atsui1= 0x539a 0x3044", "atsukamashii= 0x539a 0x304b 0x307e 0x3057 0x3044", "atsusa1= 0x539a 0x3055", "koui1= 0x539a 0x610f", "kougan= 0x539a 0x9854", "atsugami= 0x539a 0x7d19", "kousei2= 0x539a 0x751f", "kouseishou= 0x539a 0x751f 0x7701", "koushou2= 0x539a 0x76f8", "atsugi= 0x539a 0x7740", "kuchi= 0x53e3", "kuchiguchini= 0x53e3 0x3005 0x306b", "kuchigenka= 0x53e3 0x3052 0x3093 0x304b", "kuchigomoru= 0x53e3 0x3054 0x3082 0x308b", "kuchie= 0x53e3 0x7d75", "koukei3= 0x53e3 0x5f84", "kougo2= 0x53e3 0x8a9e", "kuchibeni= 0x53e3 0x7d05", "kouza1= 0x53e3 0x5ea7", "kuchidome= 0x53e3 0x6b62 0x3081", "kuchidomeryou= 0x53e3 0x6b62 0x3081 0x6599", "koujitsu= 0x53e3 0x5b9f", "kuchidashi= 0x53e3 0x51fa 0x3057", "koujutsu= 0x53e3 0x8ff0", "koushin1= 0x53e3 0x5507", "kuchikazu= 0x53e3 0x6570", "kuchisaki= 0x53e3 0x5148", "kousen3= 0x53e3 0x92ad", "kuchibashiru= 0x53e3 0x8d70 0x308b", "kuchibue= 0x53e3 0x7b1b", "koutou1= 0x53e3 0x7b54", "kuchigotae= 0x53e3 0x7b54 0x3048", "koutou2= 0x53e3 0x982d", "kuchiduke= 0x53e3 0x4ed8 0x3051", "kuchiguse= 0x53e3 0x7656", "kouyaku2= 0x53e3 0x7d04", "kouron= 0x53e3 0x8ad6", "mukai= 0x5411 0x304b 0x3044", "mukau= 0x5411 0x304b 0x3046", "muki= 0x5411 0x304d", "muku1= 0x5411 0x304f", "muke= 0x5411 0x3051", "mukeru1= 0x5411 0x3051 0x308b", "mukou1= 0x5411 0x3053 0x3046", "mukougawa= 0x5411 0x3053 0x3046 0x5074", "koujou1= 0x5411 0x4e0a", "nodo= 0x5589", "koudou1= 0x5751 0x9053", "kounaijiko= 0x5751 0x5185 0x4e8b 0x6545", "koufu3= 0x5751 0x592b", "aka= 0x57a2", "suki2= 0x597d 0x304d", "sukizuki1= 0x597d 0x304d 0x305a 0x304d", "sukikirai= 0x597d 0x304d 0x5acc 0x3044", "sukizuki2= 0x597d 0x304d 0x597d 0x304d", "suku2= 0x597d 0x304f", "konomashii= 0x597d 0x307e 0x3057 0x3044", "konomi= 0x597d 0x307f", "konomu= 0x597d 0x3080", "koui2= 0x597d 0x610f", "koukan3= 0x597d 0x611f", "koukan4= 0x597d 0x6f22", "koukishin= 0x597d 0x5947 0x5fc3", "koushoku= 0x597d 0x8272", "koujinbutsu= 0x597d 0x4eba 0x7269", "kouchou1= 0x597d 0x8abf", "kouten= 0x597d 0x8ee2", "koutsugou= 0x597d 0x90fd 0x5408", "koubutsu1= 0x597d 0x7269", "kou4= 0x5b5d", "koukou1= 0x5b5d 0x884c", "kouyou2= 0x5b5d 0x990a", "kouin= 0x5de5 0x54e1", "kougaku= 0x5de5 0x5b66", "kougakubu= 0x5de5 0x5b66 0x90e8", "kougyou4= 0x5de5 0x696d", "kougei= 0x5de5 0x82b8", "kousaku2= 0x5de5 0x4f5c", "kouji2= 0x5de5 0x4e8b", "koujou2= 0x5de5 0x5834", "kouba= 0x5de5 0x5834", "koutei3= 0x5de5 0x7a0b", "kufuu= 0x5de5 0x592b", "koufu4= 0x5de5 0x592b", "takumi= 0x5de7 0x307f", "kousha2= 0x5de7 0x8005", "kousetsu= 0x5de7 0x62d9", "koumyou2= 0x5de7 0x5999", "sachi= 0x5e78", "saiwai= 0x5e78 0x3044", "shiawase= 0x5e78 0x305b", "kouun= 0x5e78 0x904b", "koujin= 0x5e78 0x751a", "koufuku1= 0x5e78 0x798f", "hiroi= 0x5e83 0x3044", "hirogaru= 0x5e83 0x304c 0x308b", "hirogeru= 0x5e83 0x3052 0x308b", "hirosa= 0x5e83 0x3055", "hiromaru= 0x5e83 0x307e 0x308b", "hiromeru= 0x5e83 0x3081 0x308b", "koukoku= 0x5e83 0x544a", "koukokutou= 0x5e83 0x544a 0x5854", "hiroba= 0x5e83 0x5834", "koudai= 0x5e83 0x5927", "kouhan3= 0x5e83 0x7bc4", "koukyuu1= 0x6052 0x4e45", "koujou3= 0x6052 0x5e38", "koushin2= 0x6052 0x5fc3", "kousei3= 0x6052 0x661f", "kourei1= 0x6052 0x4f8b", "awatadashii= 0x614c 0x305f 0x3060 0x3057 0x3044", "awateru= 0x614c 0x3066 0x308b", "awatemono= 0x614c 0x3066 0x8005", "kougi1= 0x6297 0x8b70", "koukinsei= 0x6297 0x83cc 0x6027", "kousou1= 0x6297 0x4e89", "kousoku1= 0x62d8 0x675f", "kouchi1= 0x62d8 0x7f6e", "kouchisho= 0x62d8 0x7f6e 0x6240", "koudei= 0x62d8 0x6ce5", "kouryuu3= 0x62d8 0x7559", "hikaeru= 0x63a7 0x3048 0x308b", "hikaeshitsu= 0x63a7 0x3048 0x5ba4", "hikaeme= 0x63a7 0x3048 0x76ee", "koujo1= 0x63a7 0x9664", "kouso1= 0x63a7 0x8a34", "semeru1= 0x653b 0x3081 0x308b", "kougeki= 0x653b 0x6483", "koushu1= 0x653b 0x5b88", "koujou4= 0x653b 0x57ce", "kousei4= 0x653b 0x52e2", "koubou= 0x653b 0x9632", "fukasu1= 0x66f4 0x304b 0x3059", "fukeru1= 0x66f4 0x3051 0x308b", "sarani= 0x66f4 0x306b", "kouishitsu= 0x66f4 0x8863 0x5ba4", "kousei5= 0x66f4 0x751f", "koutetsu1= 0x66f4 0x8fed", "kounenki= 0x66f4 0x5e74 0x671f", "kou5= 0x6821", "kouetsu= 0x6821 0x95b2", "kouki3= 0x6821 0x65d7", "kousha3= 0x6821 0x820e", "kousei6= 0x6821 0x6b63", "kousoku2= 0x6821 0x5247", "kouchou2= 0x6821 0x9577", "koutei4= 0x6821 0x5ead", "koutei5= 0x6821 0x8a02", "kouryou1= 0x6821 0x4e86", "kamau= 0x69cb 0x3046", "kamaeru= 0x69cb 0x3048 0x308b", "kousei7= 0x69cb 0x6210", "kousou2= 0x69cb 0x60f3", "kouzou= 0x69cb 0x9020", "e2= 0x6c5f", "edo= 0x6c5f 0x6238", "edokko= 0x6c5f 0x6238 0x3063 0x5b50", "kouko= 0x6c5f 0x6e56", "kouzui= 0x6d2a 0x6c34", "kousekisou= 0x6d2a 0x7a4d 0x5c64", "minato= 0x6e2f", "minatomachi= 0x6e2f 0x753a", "kounai= 0x6e2f 0x5185", "kouwan= 0x6e2f 0x6e7e", "kouwanroudousha= 0x6e2f 0x6e7e 0x52b4 0x50cd 0x8005", "mizo= 0x6e9d", "kouotsu= 0x7532 0x4e59", "kouotsuhei= 0x7532 0x4e59 0x4e19", "kandakai= 0x7532 0x9ad8 0x3044", "koushu2= 0x7532 0x7a2e", "koujousen= 0x7532 0x72b6 0x817a", "koutetsu2= 0x7532 0x9244", "kanpan= 0x7532 0x677f", "kouhan4= 0x7532 0x677f", "koui3= 0x7687 0x4f4d", "koukyo= 0x7687 0x5c45", "kougou= 0x7687 0x540e", "koushitsu1= 0x7687 0x5ba4", "koujo2= 0x7687 0x5973", "koutaishi= 0x7687 0x592a 0x5b50", "koutaishihi= 0x7687 0x592a 0x5b50 0x5983", "koutei6= 0x7687 0x5e1d", "katai3= 0x786c 0x3044", "katasa3= 0x786c 0x3055", "kouka2= 0x786c 0x5316", "kouka3= 0x786c 0x8ca8", "koushitsu2= 0x786c 0x8cea", "koudo1= 0x786c 0x5ea6", "kou6= 0x7a3f", "kouryou2= 0x7a3f 0x6599", "kurenai= 0x7d05", "beni= 0x7d05", "koushin3= 0x7d05 0x5507", "koucha= 0x7d05 0x8336", "koubai2= 0x7d05 0x6885", "kouhaku= 0x7d05 0x767d", "kouyou3= 0x7d05 0x8449", "momiji= 0x7d05 0x8449", "shimaru1= 0x7d5e 0x307e 0x308b", "shimeru1= 0x7d5e 0x3081 0x308b", "shiboru1= 0x7d5e 0x308b", "kousatsu1= 0x7d5e 0x6bba", "koushukei= 0x7d5e 0x9996 0x5211", "tsuna= 0x7db1", "kouki4= 0x7db1 0x7d00", "tsunawatari= 0x7db1 0x6e21 0x308a", "kouryou3= 0x7db1 0x9818", "tagayasu= 0x8015 0x3059", "kousaku3= 0x8015 0x4f5c", "kouchi2= 0x8015 0x5730", "kangae= 0x8003 0x3048", "kangaeru= 0x8003 0x3048 0x308b", "kangaekata= 0x8003 0x3048 0x65b9", "kouan2= 0x8003 0x6848", "kousatsu2= 0x8003 0x5bdf", "koushou3= 0x8003 0x8a3c", "kouryo= 0x8003 0x616e", "koutei7= 0x80af 0x5b9a", "koukai4= 0x822a 0x6d77", "koukuu= 0x822a 0x7a7a", "koukuuki= 0x822a 0x7a7a 0x6a5f", "koukuuken= 0x822a 0x7a7a 0x5238", "koukuubin= 0x822a 0x7a7a 0x4fbf", "koukuubokan= 0x822a 0x7a7a 0x6bcd 0x8266", "kouro= 0x822a 0x8def", "araarashii= 0x8352 0x3005 0x3057 0x3044", "arai1= 0x8352 0x3044", "arasu1= 0x8352 0x3059", "arappoi= 0x8352 0x3063 0x307d 0x3044", "arasu2= 0x8352 0x3089 0x3059", "areru= 0x8352 0x308c 0x308b", "arekuruu= 0x8352 0x308c 0x72c2 0x3046", "arashigoto= 0x8352 0x4ed5 0x4e8b", "kouhai2= 0x8352 0x5ec3", "areno= 0x8352 0x91ce", "kouya1= 0x8352 0x91ce", "gyou= 0x884c", "okonau= 0x884c 0x3046", "iki1= 0x884c 0x304d", "yuki1= 0x884c 0x304d", "ikichigai= 0x884c 0x304d 0x9055 0x3044", "ikisugi= 0x884c 0x304d 0x904e 0x304e", "ikidomari= 0x884c 0x304d 0x6b62 0x307e 0x308a", "ikisaki= 0x884c 0x304d 0x5148", "ikiwataru1= 0x884c 0x304d 0x6e21 0x308b", "ikitodoku= 0x884c 0x304d 0x5c4a 0x304f", "ikiki= 0x884c 0x304d 0x6765", "iku2= 0x884c 0x304f", "yuku1= 0x884c 0x304f", "koui4= 0x884c 0x70ba", "kouraku= 0x884c 0x697d", "gyoukan= 0x884c 0x9593", "gyougi= 0x884c 0x5100", "koushi4= 0x884c 0x4f7f", "gyouji= 0x884c 0x4e8b", "koushin4= 0x884c 0x9032", "ikinari= 0x884c 0x6210", "gyousei2= 0x884c 0x653f", "koutei8= 0x884c 0x7a0b", "ikiwataru2= 0x884c 0x6e21 0x308b", "koudou2= 0x884c 0x52d5", "yukue= 0x884c 0x65b9", "yukuefumei= 0x884c 0x65b9 0x4e0d 0x660e", "gyouretsu= 0x884c 0x5217", "kouen4= 0x8b1b 0x6f14", "kougi2= 0x8b1b 0x7fa9", "kouza2= 0x8b1b 0x5ea7", "koushi5= 0x8b1b 0x5e2b", "koudou3= 0x8b1b 0x5802", "kouwa= 0x8b1b 0x548c", "mitsugi= 0x8ca2 0x304e", "mitsugimono= 0x8ca2 0x304e 0x7269", "mitsugu= 0x8ca2 0x3050", "kouken= 0x8ca2 0x732e", "koudoku= 0x8cfc 0x8aad", "koudokuryou= 0x8cfc 0x8aad 0x6599", "kounyuu= 0x8cfc 0x5165", "kounyuusha= 0x8cfc 0x5165 0x8005", "koubai3= 0x8cfc 0x8cb7", "kougai2= 0x90ca 0x5916", "kouso2= 0x9175 0x7d20", "koubo2= 0x9175 0x6bcd", "koubokin= 0x9175 0x6bcd 0x83cc", "kougyou5= 0x9271 0x696d", "kouzan= 0x9271 0x5c71", "kouseki2= 0x9271 0x77f3", "koubutsu2= 0x9271 0x7269", "hagane= 0x92fc", "koutetsu3= 0x92fc 0x9244", "kouhan5= 0x92fc 0x677f", "kouban2= 0x92fc 0x677f", "oriru2= 0x964d 0x308a 0x308b", "furu1= 0x964d 0x308b", "orosu3= 0x964d 0x308d 0x3059", "kouuryou= 0x964d 0x96e8 0x91cf", "kouka4= 0x964d 0x4e0b", "kousan2= 0x964d 0x53c2", "kousui1= 0x964d 0x6c34", "koufuku2= 0x964d 0x4f0f", "kou7= 0x9805", "koumoku= 0x9805 0x76ee", "koubashii= 0x9999 0x3070 0x3057 0x3044", "kaori= 0x9999 0x308a", "kaoru2= 0x9999 0x308b", "kouki5= 0x9999 0x6c17", "honkon= 0x9999 0x6e2f", "kousui2= 0x9999 0x6c34", "kouryou4= 0x9999 0x6599", "takai= 0x9ad8 0x3044", "takasa= 0x9ad8 0x3055", "takamaru= 0x9ad8 0x307e 0x308b", "takameru= 0x9ad8 0x3081 0x308b", "kouon1= 0x9ad8 0x6e29", "kouon2= 0x9ad8 0x97f3", "kouka5= 0x9ad8 0x4fa1", "koukan5= 0x9ad8 0x5b98", "koukiatsu= 0x9ad8 0x6c17 0x5727", "koukyuu2= 0x9ad8 0x7d1a", "kouketsu= 0x9ad8 0x6f54", "kougen2= 0x9ad8 0x539f", "koukou2= 0x9ad8 0x6821", "koukousei= 0x9ad8 0x6821 0x751f", "koushokyoufushou= 0x9ad8 0x6240 0x6050 0x6016 0x75c7", "koushou4= 0x9ad8 0x5c1a", "kousou3= 0x9ad8 0x50e7", "kousou4= 0x9ad8 0x5c64", "kousoku3= 0x9ad8 0x901f", "kousokudouro= 0x9ad8 0x901f 0x9053 0x8def", "takadai= 0x9ad8 0x53f0", "kouchi3= 0x9ad8 0x5730", "koutei9= 0x9ad8 0x4f4e", "koudo2= 0x9ad8 0x5ea6", "koudoseichou= 0x9ad8 0x5ea6 0x6210 0x9577", "koutou3= 0x9ad8 0x7b49", "koutougakkou= 0x9ad8 0x7b49 0x5b66 0x6821", "koutou4= 0x9ad8 0x9a30", "kounetsu2= 0x9ad8 0x71b1", "kouhou3= 0x9ad8 0x5cf0", "koumei2= 0x9ad8 0x540d", "kouyou4= 0x9ad8 0x63da", "kourei2= 0x9ad8 0x9f62", "gouken= 0x525b 0x5065", "gouyuu= 0x525b 0x52c7", "gou2= 0x53f7", "gougai= 0x53f7 0x5916", "goukyuu= 0x53f7 0x6ce3", "gouhou1= 0x53f7 0x4ff8", "gourei= 0x53f7 0x4ee4", "au3= 0x5408 0x3046", "awasu= 0x5408 0x308f 0x3059", "awaseru1= 0x5408 0x308f 0x305b 0x308b", "goui= 0x5408 0x610f", "goukaku= 0x5408 0x683c", "aima= 0x5408 0x9593", "goukei= 0x5408 0x8a08", "gasshuku= 0x5408 0x5bbf", "gasshou1= 0x5408 0x5531", "gasshoudan= 0x5408 0x5531 0x56e3", "gasshou2= 0x5408 0x638c", "aizu= 0x5408 0x56f3", "gousei= 0x5408 0x6210", "gouseiseni= 0x5408 0x6210 0x7e4a 0x7dad", "kassen= 0x5408 0x6226", "gacchi= 0x5408 0x81f4", "gaten= 0x5408 0x70b9", "goudou= 0x5408 0x540c", "gouhan= 0x5408 0x677f", "gouban= 0x5408 0x677f", "gappei= 0x5408 0x4f75", "gouhou2= 0x5408 0x6cd5", "gouri= 0x5408 0x7406", "gourika= 0x5408 0x7406 0x5316", "gouriteki= 0x5408 0x7406 0x7684", "goumon= 0x62f7 0x554f", "goumongu= 0x62f7 0x554f 0x5177", "gou3= 0x8c6a", "gouu= 0x8c6a 0x96e8", "gouka= 0x8c6a 0x83ef", "gouketsu= 0x8c6a 0x5091", "gousou= 0x8c6a 0x58ee", "gouzoku= 0x8c6a 0x65cf", "kokki1= 0x514b 0x5df1", "kokufuku= 0x514b 0x670d", "kokumei1= 0x514b 0x660e", "kizamu= 0x523b 0x3080", "kokuikkoku= 0x523b 0x4e00 0x523b", "kokuikkokuto= 0x523b 0x4e00 0x523b 0x3068", "tsugeru= 0x544a 0x3052 0x308b", "kokuso= 0x544a 0x8a34", "kokuhaku= 0x544a 0x767d", "kokuhatsu= 0x544a 0x767a", "kuni= 0x56fd", "kuniguni= 0x56fd 0x3005", "kokuei= 0x56fd 0x55b6", "kokuou= 0x56fd 0x738b", "kokka1= 0x56fd 0x5bb6", "kokka2= 0x56fd 0x6b4c", "kokkai= 0x56fd 0x4f1a", "kokkaigijidou= 0x56fd 0x4f1a 0x8b70 0x4e8b 0x5802", "kokugai= 0x56fd 0x5916", "kokki2= 0x56fd 0x65d7", "kokkyou= 0x56fd 0x5883", "kokkeisetsu= 0x56fd 0x6176 0x7bc0", "kokko= 0x56fd 0x5eab", "kokugo= 0x56fd 0x8a9e", "kokkou= 0x56fd 0x4ea4", "kokusai1= 0x56fd 0x50b5", "kokusai2= 0x56fd 0x969b", "kokusaika= 0x56fd 0x969b 0x5316", "kokusaiteki= 0x56fd 0x969b 0x7684", "kokusan= 0x56fd 0x7523", "kokuji1= 0x56fd 0x5b57", "kokuji2= 0x56fd 0x74bd", "kokusei= 0x56fd 0x52e2", "kokuzei= 0x56fd 0x7a0e", "kokuseki= 0x56fd 0x7c4d", "kokuzoku= 0x56fd 0x8cca", "kokutetsu= 0x56fd 0x9244", "kokuden= 0x56fd 0x96fb", "kokudo= 0x56fd 0x571f", "kokudou= 0x56fd 0x9053", "kokunai= 0x56fd 0x5185", "kokuhi= 0x56fd 0x8cbb", "kokufu= 0x56fd 0x5bcc", "kokuhou= 0x56fd 0x5b9d", "kokubou= 0x56fd 0x9632", "kokumin= 0x56fd 0x6c11", "kokuminshukusha= 0x56fd 0x6c11 0x5bbf 0x820e", "kokuminsouseisan= 0x56fd 0x6c11 0x7dcf 0x751f 0x7523", "kokumu= 0x56fd 0x52d9", "kokumuchoukan= 0x56fd 0x52d9 0x9577 0x5b98", "kokumei2= 0x56fd 0x540d", "kokuyuu= 0x56fd 0x6709", "kokuritsu= 0x56fd 0x7acb", "kokuryoku= 0x56fd 0x529b", "kokuren= 0x56fd 0x9023", "kokusou= 0x7a40 0x5009", "kokumotsu= 0x7a40 0x7269", "kokurui= 0x7a40 0x985e", "hidoi= 0x9177 0x3044", "kokushi= 0x9177 0x4f7f", "kokusho= 0x9177 0x6691", "kokuhyou= 0x9177 0x8a55", "kuro= 0x9ed2", "kuroi= 0x9ed2 0x3044", "kuroikiri= 0x9ed2 0x3044 0x9727", "kokui= 0x9ed2 0x8863", "kokuen= 0x9ed2 0x925b", "kokkasshoku= 0x9ed2 0x8910 0x8272", "kuroko= 0x9ed2 0x5b50", "hokuro= 0x9ed2 0x5b50", "kuroji= 0x9ed2 0x5b57", "kurokoge= 0x9ed2 0x7126 0x3052", "kokujin= 0x9ed2 0x4eba", "kuroshio= 0x9ed2 0x6f6e", "kuroshiro= 0x9ed2 0x767d", "kokuban= 0x9ed2 0x677f", "gokusha= 0x7344 0x820e", "koshi2= 0x8170", "koshikake1= 0x8170 0x639b", "koshikake2= 0x8170 0x639b 0x3051", "koshikakeru= 0x8170 0x639b 0x3051 0x308b", "koshinuno= 0x8170 0x5e03", "youbu= 0x8170 0x90e8", "tachimachi= 0x5ffd 0x3061", "boke1= 0x60da 0x3051", "tobokeru= 0x60da 0x3051 0x308b", "bokeru1= 0x60da 0x3051 0x308b", "horeru= 0x60da 0x308c 0x308b", "hone= 0x9aa8", "kokkaku= 0x9aa8 0x683c", "kosshi= 0x9aa8 0x5b50", "kotsuzui= 0x9aa8 0x9ac4", "honeoshimi= 0x9aa8 0x60dc 0x3057 0x307f", "kossetsu= 0x9aa8 0x6298", "karuta2= 0x9aa8 0x724c", "honenuki= 0x9aa8 0x629c 0x304d", "komu1= 0x8fbc 0x3080", "komeru= 0x8fbc 0x3081 0x308b", "kono= 0x6b64 0x306e", "kore= 0x6b64 0x308c", "korekara= 0x6b64 0x308c 0x304b 0x3089", "koremade= 0x6b64 0x308c 0x8fc4", "koko2= 0x6b64 0x51e6", "kochira= 0x6b64 0x65b9", "kocchi= 0x6b64 0x65b9", "koro= 0x9803", "ima2= 0x4eca", "imagoro= 0x4eca 0x3054 0x308d", "imani= 0x4eca 0x306b", "imanimo= 0x4eca 0x306b 0x3082", "imamade= 0x4eca 0x307e 0x3067", "konkai= 0x4eca 0x56de", "kongyou= 0x4eca 0x6681", "kongetsu= 0x4eca 0x6708", "kongo= 0x4eca 0x5f8c", "imasara= 0x4eca 0x66f4", "konshuu= 0x4eca 0x9031", "konjaku= 0x4eca 0x6614", "kesa= 0x4eca 0x671d", "konchou= 0x4eca 0x671d", "kondo= 0x4eca 0x5ea6", "kyou3= 0x4eca 0x65e5", "konnichi= 0x4eca 0x65e5", "konnichiha= 0x4eca 0x65e5 0x306f", "kotoshi= 0x4eca 0x5e74", "konban= 0x4eca 0x6669", "konbanha= 0x4eca 0x6669 0x306f", "konya1= 0x4eca 0x591c", "komarihateru= 0x56f0 0x308a 0x679c 0x3066 0x308b", "komarikiru= 0x56f0 0x308a 0x5207 0x308b", "komaru= 0x56f0 0x308b", "konkyuu= 0x56f0 0x7aae", "konku= 0x56f0 0x82e6", "konnan= 0x56f0 0x96e3", "konwaku= 0x56f0 0x60d1", "konin= 0x5a5a 0x59fb", "koninhou= 0x5a5a 0x59fb 0x6cd5", "konyaku= 0x5a5a 0x7d04", "urami= 0x6068 0x307f", "uramu= 0x6068 0x3080", "urameshii= 0x6068 0x3081 0x3057 0x3044", "nengoro= 0x61c7 0x308d", "koni= 0x61c7 0x610f", "kongan= 0x61c7 0x9858", "konshinkai= 0x61c7 0x89aa 0x4f1a", "konsetsu= 0x61c7 0x5207", "kondan= 0x61c7 0x8ac7", "konsui= 0x660f 0x7761", "konsuijoutai= 0x660f 0x7761 0x72b6 0x614b", "konchuu= 0x6606 0x866b", "konchuugaku= 0x6606 0x866b 0x5b66", "konchuusaishuu= 0x6606 0x866b 0x63a1 0x96c6", "kobu2= 0x6606 0x5e03", "konbu= 0x6606 0x5e03", "kobucha= 0x6606 0x5e03 0x8336", "ne2= 0x6839", "nekko= 0x6839 0x3063 0x5b50", "nemawashi= 0x6839 0x56de 0x3057", "konkan= 0x6839 0x5e79", "konki= 0x6839 0x6c17", "konkyo= 0x6839 0x62e0", "neduyoi= 0x6839 0x5f37 0x3044", "nehorihahori= 0x6839 0x6398 0x308a 0x8449 0x6398 0x308a", "nemoto1= 0x6839 0x5143", "kongen= 0x6839 0x6e90", "konjou= 0x6839 0x6027", "konzetsu= 0x6839 0x7d76", "kontei= 0x6839 0x5e95", "konpon= 0x6839 0x672c", "nemoto2= 0x6839 0x672c", "konponteki= 0x6839 0x672c 0x7684", "mazaru2= 0x6df7 0x3056 0x308b", "majiru2= 0x6df7 0x3058 0x308b", "mazeru2= 0x6df7 0x305c 0x308b", "mazemono= 0x6df7 0x305c 0x7269", "komu2= 0x6df7 0x3080", "konketsu= 0x6df7 0x8840", "konketsunohito= 0x6df7 0x8840 0x306e 0x4eba", "kongou= 0x6df7 0x5408", "konzatsu= 0x6df7 0x96d1", "kondaku= 0x6df7 0x6fc1", "kondou= 0x6df7 0x540c", "konbou= 0x6df7 0x7d21", "konmei= 0x6df7 0x8ff7", "konran= 0x6df7 0x4e71", "kon= 0x7d3a", "kouya2= 0x7d3a 0x5c4b", "konya2= 0x7d3a 0x5c4b", "koniro= 0x7d3a 0x8272", "tamashii= 0x9b42", "kontan= 0x9b42 0x80c6", "isasaka1= 0x4e9b 0x304b", "chittomo= 0x4e9b 0x3068 0x3082", "sa1= 0x4f50", "sakan1= 0x4f50 0x5b98", "sosonokasu= 0x5506 0x3059", "hidari= 0x5de6", "sayuu= 0x5de6 0x53f3", "sakei= 0x5de6 0x50be", "hidarite= 0x5de6 0x624b", "hidariue= 0x5de6 0x4e0a", "sasen= 0x5de6 0x9077", "hidarigawa= 0x5de6 0x5074", "hidariashi= 0x5de6 0x8db3", "saha= 0x5de6 0x6d3e", "hidarime= 0x5de6 0x76ee", "sayounara= 0x5de6 0x69d8 0x306a 0x3089", "sayonara= 0x5de6 0x69d8 0x306a 0x3089", "sayoku= 0x5de6 0x7ffc", "hidarikiki= 0x5de6 0x5229 0x304d", "sa2= 0x5dee", "sashihiki= 0x5dee 0x3057 0x5f15 0x304d", "sashikakaru= 0x5dee 0x3057 0x639b 0x304b 0x308b", "sashitsukae= 0x5dee 0x3057 0x652f 0x3048", "sashitsukaeru= 0x5dee 0x3057 0x652f 0x3048 0x308b", "sashidasu= 0x5dee 0x3057 0x51fa 0x3059", "sashiageru= 0x5dee 0x3057 0x4e0a 0x3052 0x308b", "sashinoberu= 0x5dee 0x3057 0x4f38 0x3079 0x308b", "sashiatari= 0x5dee 0x3057 0x5f53 0x305f 0x308a", "sashimodosu= 0x5dee 0x3057 0x623b 0x3059", "sasu1= 0x5dee 0x3059", "sagaku= 0x5dee 0x984d", "sabetsu= 0x5dee 0x5225", "sasatsu= 0x67fb 0x5bdf", "satei= 0x67fb 0x5b9a", "samon= 0x67fb 0x554f", "suna= 0x7802", "sakyuu= 0x7802 0x4e18", "sunadokei= 0x7802 0x6642 0x8a08", "satou= 0x7802 0x7cd6", "sabaku1= 0x7802 0x6f20", "sunahama= 0x7802 0x6d5c", "jari= 0x7802 0x5229", "sagi= 0x8a50 0x6b3a", "sagishi= 0x8a50 0x6b3a 0x5e2b", "sashu= 0x8a50 0x53d6", "sashou= 0x8a50 0x79f0", "kusari= 0x9396", "sakoku= 0x9396 0x56fd", "za= 0x5ea7", "suwaru= 0x5ea7 0x308b", "zayuumei= 0x5ea7 0x53f3 0x9298", "zaseki= 0x5ea7 0x5e2d", "zazen= 0x5ea7 0x7985", "zadankai= 0x5ea7 0x8ac7 0x4f1a", "zabuton= 0x5ea7 0x5e03 0x56e3", "zashiki= 0x5ea7 0x6577", "sai1= 0x50b5", "saiken1= 0x50b5 0x5238", "saikensha= 0x50b5 0x6a29 0x8005", "saimusha= 0x50b5 0x52d9 0x8005", "moyooshi= 0x50ac 0x3057", "moyoosu= 0x50ac 0x3059", "saisoku= 0x50ac 0x4fc3", "saimin= 0x50ac 0x7720", "sairuigasu= 0x50ac 0x6d99 0x30ac 0x30b9", "sai2= 0x518d", "futatabi= 0x518d 0x3073", "saikai1= 0x518d 0x4f1a", "saikai2= 0x518d 0x958b", "saiki= 0x518d 0x8d77", "saiken2= 0x518d 0x5efa", "saikon= 0x518d 0x5a5a", "saisan1= 0x518d 0x4e09", "saisei= 0x518d 0x751f", "saido= 0x518d 0x5ea6", "saihensei= 0x518d 0x7de8 0x6210", "saraigetsu= 0x518d 0x6765 0x6708", "saraishuu= 0x518d 0x6765 0x9031", "sarainen= 0x518d 0x6765 0x5e74", "mottomo1= 0x6700 0x3082", "saiaku= 0x6700 0x60aa", "saigo1= 0x6700 0x671f", "saikyou= 0x6700 0x5f37", "saikin1= 0x6700 0x8fd1", "saigo2= 0x6700 0x5f8c", "saikou= 0x6700 0x9ad8", "saishuu1= 0x6700 0x7d42", "saisho= 0x6700 0x521d", "saishou1= 0x6700 0x5c0f", "saishougen= 0x6700 0x5c0f 0x9650", "saijou= 0x6700 0x4e0a", "saishin= 0x6700 0x65b0", "saiseiki= 0x6700 0x76db 0x671f", "saisentan= 0x6700 0x5148 0x7aef", "mohaya= 0x6700 0x65e9", "saidai= 0x6700 0x5927", "saidaigen= 0x6700 0x5927 0x9650", "saichuu= 0x6700 0x4e2d", "saitei= 0x6700 0x4f4e", "saiteki= 0x6700 0x9069", "sairyou= 0x6700 0x826f", "fusagaru= 0x585e 0x304c 0x308b", "fusagu= 0x585e 0x3050", "tsuma= 0x59bb", "saishi1= 0x59bb 0x5b50", "saishou2= 0x5bb0 0x76f8", "irodoru= 0x5f69 0x308b", "saishiki= 0x5f69 0x8272", "saishi2= 0x624d 0x5b50", "sainou= 0x624d 0x80fd", "toru1= 0x63a1 0x308b", "saikutsu= 0x63a1 0x6398", "saiketsu1= 0x63a1 0x6c7a", "saisan2= 0x63a1 0x7b97", "saishu= 0x63a1 0x53d6", "saishuu2= 0x63a1 0x96c6", "saitaku= 0x63a1 0x629e", "saitan= 0x63a1 0x70ad", "saiten= 0x63a1 0x70b9", "saiyou= 0x63a1 0x7528", "sairoku= 0x63a1 0x9332", "sai3= 0x683d", "saibai= 0x683d 0x57f9", "sai4= 0x6b73", "saigetsu= 0x6b73 0x6708", "sainyuusaishutsu= 0x6b73 0x5165 0x6b73 0x51fa", "seibo1= 0x6b73 0x66ae", "saimatsu= 0x6b73 0x672b", "sumasu1= 0x6e08 0x307e 0x3059", "sumaseru= 0x6e08 0x307e 0x305b 0x308b", "sumanai= 0x6e08 0x307e 0x306a 0x3044", "sumimasen= 0x6e08 0x307f 0x307e 0x305b 0x3093", "sumu1= 0x6e08 0x3080", "wazawai= 0x707d 0x3044", "saika= 0x707d 0x798d", "saigai= 0x707d 0x5bb3", "sainan= 0x707d 0x96e3", "sainanniau= 0x707d 0x96e3 0x306b 0x906d 0x3046", "kudaku= 0x7815 0x304f", "kudakeru= 0x7815 0x3051 0x308b", "saiseki= 0x7815 0x77f3", "matsuri1= 0x796d", "matsuri2= 0x796d 0x308a", "matsuru= 0x796d 0x308b", "saidan= 0x796d 0x58c7", "saijitsu= 0x796d 0x65e5", "sairei= 0x796d 0x793c", "saikai3= 0x658e 0x6212", "hosoi= 0x7d30 0x3044", "komaka= 0x7d30 0x304b", "komakai= 0x7d30 0x304b 0x3044", "sasayaka= 0x7d30 0x3084 0x304b", "hosoru= 0x7d30 0x308b", "saikin2= 0x7d30 0x83cc", "saiku= 0x7d30 0x5de5", "saisetsu= 0x7d30 0x8aac", "hosonagai= 0x7d30 0x9577 0x3044", "saibou= 0x7d30 0x80de", "na1= 0x83dc", "saien= 0x83dc 0x5712", "natane= 0x83dc 0x7a2e", "saishoku= 0x83dc 0x98df", "sabaku2= 0x88c1 0x304f", "tatsu3= 0x88c1 0x3064", "saiketsu2= 0x88c1 0x6c7a", "saiban= 0x88c1 0x5224", "saibansho= 0x88c1 0x5224 0x6240", "saihou= 0x88c1 0x7e2b", "noseru1= 0x8f09 0x305b 0x308b", "noru1= 0x8f09 0x308b", "kiwa= 0x969b", "sai5= 0x969b", "saigen= 0x969b 0x9650", "kiwadatsu= 0x969b 0x7acb 0x3064", "zai1= 0x5264", "aru2= 0x5728 0x308b", "zaigai= 0x5728 0x5916", "zaigaku= 0x5728 0x5b66", "zaikohin= 0x5728 0x5eab 0x54c1", "zaiseki= 0x5728 0x7c4d", "zainichi= 0x5728 0x65e5", "zaibeihoujin= 0x5728 0x7c73 0x90a6 0x4eba", "zairyuu= 0x5728 0x7559", "zaimoku= 0x6750 0x6728", "zairyou= 0x6750 0x6599", "tsumi= 0x7f6a", "zaigou= 0x7f6a 0x696d", "zainin= 0x7f6a 0x4eba", "tsumibito= 0x7f6a 0x4eba", "zai2= 0x8ca1", "zaikai= 0x8ca1 0x754c", "zaigen= 0x8ca1 0x6e90", "zaisan= 0x8ca1 0x7523", "zaisei= 0x8ca1 0x653f", "zaibatsu= 0x8ca1 0x95a5", "saifu= 0x8ca1 0x5e03", "zaimu= 0x8ca1 0x52d9", "saeru= 0x51b4 0x3048 0x308b", "saka= 0x5742", "sakamichi= 0x5742 0x9053", "sakidasu= 0x54b2 0x304d 0x51fa 0x3059", "sakimidareru= 0x54b2 0x304d 0x4e71 0x308c 0x308b", "saku2= 0x54b2 0x304f", "saki1= 0x5d0e", "saku3= 0x4f5c", "tsukuriwarai= 0x4f5c 0x308a 0x7b11 0x3044", "tsukuriageru= 0x4f5c 0x308a 0x4e0a 0x3052 0x308b", "tsukuribanashi= 0x4f5c 0x308a 0x8a71", "tsukuru1= 0x4f5c 0x308b", "sakka= 0x4f5c 0x5bb6", "sagyou= 0x4f5c 0x696d", "sakkyoku= 0x4f5c 0x66f2", "sakusha= 0x4f5c 0x8005", "sakusei= 0x4f5c 0x88fd", "sakusen= 0x4f5c 0x6226", "sadou1= 0x4f5c 0x52d5", "sakuhin= 0x4f5c 0x54c1", "sakumotsu= 0x4f5c 0x7269", "sakubun= 0x4f5c 0x6587", "sayou= 0x4f5c 0x7528", "kezuribushi= 0x524a 0x308a 0x7bc0", "kezuru= 0x524a 0x308b", "sakugen= 0x524a 0x6e1b", "sakujo= 0x524a 0x9664", "shiboritoru= 0x643e 0x308a 0x53d6 0x308b", "shiboru2= 0x643e 0x308b", "sakushu= 0x643e 0x53d6", "sakunyuu= 0x643e 0x4e73", "saku4= 0x6628", "sakkon= 0x6628 0x4eca", "kinou2= 0x6628 0x65e5", "sakujitsu= 0x6628 0x65e5", "sakunen= 0x6628 0x5e74", "sakuban= 0x6628 0x6669", "sakuya= 0x6628 0x591c", "yuube= 0x6628 0x591c", "saku5= 0x7b56", "sakuryaku= 0x7b56 0x7565", "saku6= 0x7d22", "sakuin= 0x7d22 0x5f15", "sakkaku= 0x932f 0x899a", "sakugo= 0x932f 0x8aa4", "sakuran= 0x932f 0x4e71", "sakura= 0x685c", "sakuranbo= 0x685c 0x3093 0x307c", "ouka= 0x685c 0x82b1", "sakurairo= 0x685c 0x8272", "outou2= 0x685c 0x6843", "sakuraniku= 0x685c 0x8089", "saji= 0x5319", "satsu1= 0x518a", "sasshi= 0x518a 0x5b50", "surinaosu= 0x5237 0x308a 0x76f4 0x3059", "suru2= 0x5237 0x308b", "sasshin= 0x5237 0x65b0", "sassuru= 0x5bdf 0x3059 0x308b", "toru2= 0x64ae 0x308b", "satsuei= 0x64ae 0x5f71", "satsueijo= 0x64ae 0x5f71 0x6240", "surikizu= 0x64e6 0x308a 0x50b7", "kosuru= 0x64e6 0x308b", "suru3= 0x64e6 0x308b", "sureru= 0x64e6 0x308c 0x308b", "surechigau= 0x64e6 0x308c 0x9055 0x3046", "suresure= 0x64e6 0x308c 0x64e6 0x308c", "sakkashou= 0x64e6 0x904e 0x50b7", "satsu2= 0x672d", "fuda= 0x672d", "satsutaba= 0x672d 0x675f", "korosu= 0x6bba 0x3059", "sakki= 0x6bba 0x6c17", "sakkin= 0x6bba 0x83cc", "satsujin= 0x6bba 0x4eba", "satsujinmisui= 0x6bba 0x4eba 0x672a 0x9042", "sacchuuzai= 0x6bba 0x866b 0x5264", "sattou= 0x6bba 0x5230", "satsubatsu= 0x6bba 0x4f10", "satsumaimo= 0x85a9 0x6469 0x828b", "zatsu= 0x96d1", "zatsuon= 0x96d1 0x97f3", "zakkan= 0x96d1 0x611f", "zoukin= 0x96d1 0x5dfe", "zasshi= 0x96d1 0x8a8c", "zouni= 0x96d1 0x716e", "zousui= 0x96d1 0x708a", "zassou= 0x96d1 0x8349", "zatsudan= 0x96d1 0x8ac7", "zattou= 0x96d1 0x8e0f", "zoukibayashi= 0x96d1 0x6728 0x6797", "sabi1= 0x9306", "sabiru= 0x9306 0x3073 0x308b", "sara= 0x76bf", "saraarai= 0x76bf 0x6d17 0x3044", "sarasu1= 0x6652 0x3059", "san1= 0x4e09", "mi1= 0x4e09", "mittsu= 0x4e09 0x3064", "sangai= 0x4e09 0x968e", "sankaku= 0x4e09 0x89d2", "sankakukei= 0x4e09 0x89d2 0x5f62", "sankenbunritsu= 0x4e09 0x6a29 0x5206 0x7acb", "mikka= 0x4e09 0x65e5", "mikaduki= 0x4e09 0x65e5 0x6708", "sanbai= 0x4e09 0x500d", "shamisen= 0x4e09 0x5473 0x7dda", "sanmenkyou= 0x4e09 0x9762 0x93e1", "sanryuu= 0x4e09 0x6d41", "kasa= 0x5098", "sanka1= 0x5098 0x4e0b", "kasatate= 0x5098 0x7acb 0x3066", "mairu= 0x53c2 0x308b", "sanka2= 0x53c2 0x52a0", "sangiin= 0x53c2 0x8b70 0x9662", "sankou= 0x53c2 0x8003", "sankousho= 0x53c2 0x8003 0x66f8", "sanshou= 0x53c2 0x7167", "sanseiken= 0x53c2 0x653f 0x6a29", "sanpai1= 0x53c2 0x62dd", "sanbou= 0x53c2 0x8b00", "sanretsu= 0x53c2 0x5217", "yama= 0x5c71", "yamayama= 0x5c71 0x3005", "wasabi= 0x5c71 0x8475", "yamaoku= 0x5c71 0x5965", "sangaku= 0x5c71 0x5cb3", "sangakubu= 0x5c71 0x5cb3 0x90e8", "sankyou1= 0x5c71 0x5ce1", "yamaguchiken= 0x5c71 0x53e3 0x770c", "sansai= 0x5c71 0x83dc", "yamashi= 0x5c71 0x5e2b", "sanshisuimei= 0x5c71 0x7d2b 0x6c34 0x660e", "yamadera= 0x5c71 0x5bfa", "sanseki= 0x5c71 0x7a4d", "sansou= 0x5c71 0x8358", "sanzoku= 0x5c71 0x8cca", "sanchou= 0x5c71 0x9802", "yamanobori= 0x5c71 0x767b 0x308a", "yamagatana= 0x5c71 0x5200", "yamaneko= 0x5c71 0x732b", "yamanekosougi= 0x5c71 0x732b 0x4e89 0x8b70", "yamakuzure= 0x5c71 0x5d29 0x308c", "sanmyaku= 0x5c71 0x8108", "sanrin= 0x5c71 0x6797", "sanringaku= 0x5c71 0x6797 0x5b66", "mijime= 0x60e8 0x3081", "zanshi= 0x60e8 0x6b7b", "sanji= 0x60e8 0x4e8b", "sanjou= 0x60e8 0x72b6", "sanpai2= 0x60e8 0x6557", "zanpai= 0x60e8 0x6557", "maku2= 0x6492 0x304f", "sanzan= 0x6563 0x3005", "chirakasu= 0x6563 0x3089 0x304b 0x3059", "chirakaru= 0x6563 0x3089 0x304b 0x308b", "chirashi= 0x6563 0x3089 0x3057", "chirasu= 0x6563 0x3089 0x3059", "chirabaru= 0x6563 0x3089 0x3070 0x308b", "chiru= 0x6563 0x308b", "sankai= 0x6563 0x4f1a", "baramaku= 0x6563 0x8494 0x304f", "sanpatsu= 0x6563 0x9aea", "sanbun= 0x6563 0x6587", "sanpo= 0x6563 0x6b69", "sanman= 0x6563 0x6f2b", "sankyou2= 0x685f 0x6a4b", "sanbashi= 0x685f 0x6a4b", "sandou= 0x685f 0x9053", "sangoshou= 0x73ca 0x745a 0x7901", "umu1= 0x7523 0x3080", "sangyou= 0x7523 0x696d", "sanjiseigen= 0x7523 0x5150 0x5236 0x9650", "sanchi= 0x7523 0x5730", "sanba= 0x7523 0x5a46", "sanfujinka= 0x7523 0x5a66 0x4eba 0x79d1", "sanfujinkai= 0x7523 0x5a66 0x4eba 0x79d1 0x533b", "sanbutsu= 0x7523 0x7269", "sanran= 0x7523 0x5375", "sansuu= 0x7b97 0x6570", "soroban= 0x7b97 0x76e4", "kaiko3= 0x8695", "sanshi= 0x8695 0x7cf8", "sanshoku= 0x8695 0x98df", "sanjo= 0x8cdb 0x52a9", "sansei1= 0x8cdb 0x6210", "sanpi= 0x8cdb 0x5426", "sanbi= 0x8cdb 0x7f8e", "san2= 0x9178", "sui= 0x9178 0x3044", "suppai= 0x9178 0x3063 0x3071 0x3044", "sanka3= 0x9178 0x5316", "sansei2= 0x9178 0x6027", "sanso= 0x9178 0x7d20", "sanmi= 0x9178 0x5473", "shibaraku= 0x66ab 0x304f", "zanji= 0x66ab 0x6642", "zantei= 0x66ab 0x5b9a", "nokosu= 0x6b8b 0x3059", "nokorazu= 0x6b8b 0x3089 0x305a", "nokori= 0x6b8b 0x308a", "nokorimono= 0x6b8b 0x308a 0x7269", "nokoru= 0x6b8b 0x308b", "zangyaku= 0x6b8b 0x8650", "zangyou= 0x6b8b 0x696d", "zandaka= 0x6b8b 0x9ad8", "zankoku= 0x6b8b 0x9177", "zansho= 0x6b8b 0x6691", "zannin= 0x6b8b 0x5fcd", "zannen= 0x6b8b 0x5ff5", "tsukaeru1= 0x4ed5 0x3048 0x308b", "shigoto= 0x4ed5 0x4e8b", "shite= 0x4ed5 0x624b", "shiage= 0x4ed5 0x4e0a 0x3052", "shiageru= 0x4ed5 0x4e0a 0x3052 0x308b", "shikumi= 0x4ed5 0x7d44 0x307f", "shiokuri= 0x4ed5 0x9001 0x308a", "shiire= 0x4ed5 0x5165 0x308c", "shiireru= 0x4ed5 0x5165 0x308c 0x308b", "shimai1= 0x4ed5 0x821e", "shimau= 0x4ed5 0x821e 0x3046", "shikata= 0x4ed5 0x65b9", "shikataganai= 0x4ed5 0x65b9 0x304c 0x306a 0x3044", "shitateru= 0x4ed5 0x7acb 0x3066 0x308b", "shitateya= 0x4ed5 0x7acb 0x3066 0x5c4b", "ukagau= 0x4f3a 0x3046", "shikou1= 0x4f3a 0x5019", "tsukai= 0x4f7f 0x3044", "tsukaisute= 0x4f7f 0x3044 0x6368 0x3066", "tsukaimichi= 0x4f7f 0x3044 0x9053", "tsukaikata= 0x4f7f 0x3044 0x65b9", "tsukau2= 0x4f7f 0x3046", "tsukawasu= 0x4f7f 0x308f 0x3059", "shisetsu1= 0x4f7f 0x7bc0", "shito= 0x4f7f 0x5f92", "shimei1= 0x4f7f 0x547d", "shieki= 0x4f7f 0x5f79", "shiyou1= 0x4f7f 0x7528", "shiyouzumi= 0x4f7f 0x7528 0x6e08 0x307f", "shiyounin= 0x4f7f 0x7528 0x4eba", "shiyouhou= 0x4f7f 0x7528 0x65b9", "sasaru= 0x523a 0x3055 0x308b", "sashikorosu= 0x523a 0x3057 0x6bba 0x3059", "sashikizu= 0x523a 0x3057 0x50b7", "sasu2= 0x523a 0x3059", "shigeki= 0x523a 0x6fc0", "sashimi= 0x523a 0x8eab", "shikai1= 0x53f8 0x4f1a", "shikaisha= 0x53f8 0x4f1a 0x8005", "shisho= 0x53f8 0x66f8", "shihou1= 0x53f8 0x6cd5", "shirei1= 0x53f8 0x4ee4", "shijitsu= 0x53f2 0x5b9f", "shijou1= 0x53f2 0x4e0a", "shiseki= 0x53f2 0x8de1", "shishi1= 0x55e3 0x5b50", "shi1= 0x56db", "yon= 0x56db", "yottsu= 0x56db 0x3064", "yotsukado= 0x56db 0x3064 0x89d2", "shikaku1= 0x56db 0x89d2", "shikakui= 0x56db 0x89d2 0x3044", "shiki1= 0x56db 0x5b63", "yosumi= 0x56db 0x9685", "shikoku= 0x56db 0x56fd", "shishi2= 0x56db 0x80a2", "shishagonyuu= 0x56db 0x6368 0x4e94 0x5165", "yojouhan= 0x56db 0x7573 0x534a", "yokka= 0x56db 0x65e5", "shihou2= 0x56db 0x65b9", "hajimari= 0x59cb 0x307e 0x308a", "hajimaru= 0x59cb 0x307e 0x308b", "hajime1= 0x59cb 0x3081", "hajimeni= 0x59cb 0x3081 0x306b", "hajimeru= 0x59cb 0x3081 0x308b", "shijuu= 0x59cb 0x7d42", "shihatsu= 0x59cb 0x767a", "shimatsu= 0x59cb 0x672b", "ane= 0x59c9", "neesan= 0x59c9 0x3055 0x3093", "shimai2= 0x59c9 0x59b9", "shimaitoshi= 0x59c9 0x59b9 0x90fd 0x5e02", "sugata= 0x59ff", "sugatami= 0x59ff 0x898b", "shisei1= 0x59ff 0x52e2", "shitai1= 0x59ff 0x614b", "ko3= 0x5b50", "shikyuu1= 0x5b50 0x5bae", "koushi6= 0x5b50 0x725b", "kodomo= 0x5b50 0x4f9b", "komori= 0x5b50 0x5b88", "komoriuta= 0x5b50 0x5b88 0x6b4c", "shison= 0x5b50 0x5b6b", "shitei1= 0x5b50 0x5f1f", "kohitsuji1= 0x5b50 0x7f8a", "ichi4= 0x5e02", "shi2= 0x5e02", "shikai2= 0x5e02 0x4f1a", "shigai1= 0x5e02 0x5916", "shigai2= 0x5e02 0x8857", "shikyou= 0x5e02 0x6cc1", "ichiba= 0x5e02 0x5834", "shijou2= 0x5e02 0x5834", "shijoubunseki= 0x5e02 0x5834 0x5206 0x6790", "shisei2= 0x5e02 0x653f", "shichouson= 0x5e02 0x753a 0x6751", "shichou= 0x5e02 0x9577", "shinai1= 0x5e02 0x5185", "shihan1= 0x5e02 0x8ca9", "shimin= 0x5e02 0x6c11", "shiyakusho= 0x5e02 0x5f79 0x6240", "shiritsu1= 0x5e02 0x7acb", "shishou1= 0x5e2b 0x5320", "shiwasu= 0x5e2b 0x8d70", "shidan= 0x5e2b 0x56e3", "shitei2= 0x5e2b 0x5f1f", "shihan2= 0x5e2b 0x7bc4", "kokorozashi= 0x5fd7", "kokorozasu= 0x5fd7 0x3059", "shigan= 0x5fd7 0x9858", "shiganhei= 0x5fd7 0x9858 0x5175", "shikou2= 0x5fd7 0x5411", "shibou1= 0x5fd7 0x671b", "omoi1= 0x601d 0x3044", "omoigakenai= 0x601d 0x3044 0x304c 0x3051 0x306a 0x3044", "omoitodomaru= 0x601d 0x3044 0x3068 0x3069 0x307e 0x308b", "omoiyari= 0x601d 0x3044 0x3084 0x308a", "omoikomu= 0x601d 0x3044 0x8fbc 0x3080", "omoide= 0x601d 0x3044 0x51fa", "omoidasu= 0x601d 0x3044 0x51fa 0x3059", "omoiagaru= 0x601d 0x3044 0x4e0a 0x304c 0x308b", "omoikitte= 0x601d 0x3044 0x5207 0x3063 0x3066", "omoikiri= 0x601d 0x3044 0x5207 0x308a", "omoikiru= 0x601d 0x3044 0x5207 0x308b", "omoinaosu= 0x601d 0x3044 0x76f4 0x3059", "omoiataru= 0x601d 0x3044 0x5f53 0x305f 0x308b", "omoitsuki= 0x601d 0x3044 0x4ed8 0x304d", "omoitsuku= 0x601d 0x3044 0x4ed8 0x304f", "omoiukabu= 0x601d 0x3044 0x6d6e 0x304b 0x3076", "omou= 0x601d 0x3046", "omouzonbun= 0x601d 0x3046 0x5b58 0x5206", "omowaku1= 0x601d 0x308f 0x304f", "omowazu= 0x601d 0x308f 0x305a", "shian= 0x601d 0x6848", "shikou3= 0x601d 0x8003", "shisaku1= 0x601d 0x7d22", "shisou= 0x601d 0x60f3", "shibo= 0x601d 0x6155", "omowaku2= 0x601d 0x60d1", "yubi= 0x6307", "sasu3= 0x6307 0x3059", "shiki2= 0x6307 0x63ee", "shikikan= 0x6307 0x63ee 0x5b98", "shikisha= 0x6307 0x63ee 0x8005", "yubisasu= 0x6307 0x5dee 0x3059", "shiji1= 0x6307 0x793a", "sashizu= 0x6307 0x56f3", "yubikiri= 0x6307 0x5207 0x308a", "shitei3= 0x6307 0x5b9a", "shiteiseki= 0x6307 0x5b9a 0x5e2d", "shiteki= 0x6307 0x6458", "shidou= 0x6307 0x5c0e", "shimei2= 0x6307 0x540d", "shimon1= 0x6307 0x7d0b", "yubiwa= 0x6307 0x8f2a", "shirei2= 0x6307 0x4ee4", "sasaeru= 0x652f 0x3048 0x308b", "tsukaeru2= 0x652f 0x3048 0x308b", "shien1= 0x652f 0x63f4", "shikyuu2= 0x652f 0x7d66", "shikyoku= 0x652f 0x5c40", "shiji2= 0x652f 0x6301", "shisha1= 0x652f 0x793e", "shishutsu= 0x652f 0x51fa", "shishou2= 0x652f 0x969c", "shichuu= 0x652f 0x67f1", "shiten1= 0x652f 0x5e97", "shitenmou= 0x652f 0x5e97 0x7db2", "shitaku= 0x652f 0x5ea6", "shihai= 0x652f 0x914d", "shibu= 0x652f 0x90e8", "shiharai1= 0x652f 0x6255", "shiharai2= 0x652f 0x6255 0x3044", "shiharau= 0x652f 0x6255 0x3046", "shiryuu= 0x652f 0x6d41", "hodokosu= 0x65bd 0x3059", "shikou4= 0x65bd 0x884c", "shisei3= 0x65bd 0x653f", "shisetsu2= 0x65bd 0x8a2d", "seryou= 0x65bd 0x7642", "shi3= 0x65e8", "mune2= 0x65e8", "eda= 0x679d", "shidareyanagi= 0x679d 0x5782 0x308c 0x67f3", "edakiri= 0x679d 0x5207 0x308a", "edatsugi= 0x679d 0x63a5 0x304e", "edamame= 0x679d 0x8c46", "edaha= 0x679d 0x8449", "shiyou2= 0x679d 0x8449", "yosu= 0x6b62 0x3059", "todomaru= 0x6b62 0x307e 0x308b", "tomaru1= 0x6b62 0x307e 0x308b", "yamu1= 0x6b62 0x3080", "yamuwoenai= 0x6b62 0x3080 0x3092 0x5f97 0x306a 0x3044", "tomedonaku= 0x6b62 0x3081 0x3069 0x306a 0x304f", "tomeru1= 0x6b62 0x3081 0x308b", "yameru1= 0x6b62 0x3081 0x308b", "shiketsuzai= 0x6b62 0x8840 0x5264", "shinu= 0x6b7b 0x306c", "shiin= 0x6b7b 0x56e0", "shikyo= 0x6b7b 0x53bb", "shikei= 0x6b7b 0x5211", "shikeishuu= 0x6b7b 0x5211 0x56da", "shigo1= 0x6b7b 0x5f8c", "shigo2= 0x6b7b 0x8a9e", "shisha2= 0x6b7b 0x8005", "shishousha= 0x6b7b 0x50b7 0x8005", "shinin= 0x6b7b 0x4eba", "shitai2= 0x6b7b 0x4f53", "shibou2= 0x6b7b 0x4ea1", "shibousha= 0x6b7b 0x4ea1 0x8005", "uji= 0x6c0f", "ujigami= 0x6c0f 0x795e", "shimei3= 0x6c0f 0x540d", "watakushi= 0x79c1", "watashi= 0x79c1", "watashitachi= 0x79c1 0x305f 0x3061", "shiji3= 0x79c1 0x4e8b", "watakushijishin= 0x79c1 0x81ea 0x8eab", "shishitsu= 0x79c1 0x5ba4", "shishuku= 0x79c1 0x6dd1", "shijuku= 0x79c1 0x587e", "shisetsu3= 0x79c1 0x8a2d", "shitei4= 0x79c1 0x90b8", "shitetsu= 0x79c1 0x9244", "shihi= 0x79c1 0x8cbb", "shibutsu= 0x79c1 0x7269", "shiyuu1= 0x79c1 0x6709", "shiyou3= 0x79c1 0x7528", "shiritsu2= 0x79c1 0x7acb", "ito2= 0x7cf8", "itoguchi= 0x7cf8 0x53e3", "itoguruma= 0x7cf8 0x8eca", "kami1= 0x7d19", "kamiichimai= 0x7d19 0x4e00 0x679a", "kamikuzu= 0x7d19 0x5c51", "kamigata= 0x7d19 0x578b", "kamibukuro= 0x7d19 0x888b", "shihei= 0x7d19 0x5e63", "kamidutsumi= 0x7d19 0x5305 0x307f", "shimen1= 0x7d19 0x9762", "murasaki= 0x7d2b", "shiun= 0x7d2b 0x96f2", "shien2= 0x7d2b 0x7159", "shigaisen= 0x7d2b 0x5916 0x7dda", "murasakiiro= 0x7d2b 0x8272", "shitai3= 0x80a2 0x4f53", "abura1= 0x8102", "aburami= 0x8102 0x8eab", "aburakkoi= 0x8102 0x6fc3 0x3044", "shibou3= 0x8102 0x80aa", "shibousou= 0x8102 0x80aa 0x5c64", "itaru= 0x81f3 0x308b", "itarutokoro= 0x81f3 0x308b 0x6240", "shikyuu3= 0x81f3 0x6025", "itarutoukyou= 0x81f3 0x6771 0x4eac", "shikai3= 0x8996 0x754c", "shisatsu= 0x8996 0x5bdf", "shiten2= 0x8996 0x70b9", "shiya= 0x8996 0x91ce", "shiryoku= 0x8996 0x529b", "shiika= 0x8a69 0x6b4c", "shika1= 0x8a69 0x6b4c", "shigin= 0x8a69 0x541f", "shishuu= 0x8a69 0x96c6", "shishou3= 0x8a69 0x6284", "shijou3= 0x8a69 0x60c5", "shijin= 0x8a69 0x4eba", "tameshi= 0x8a66 0x3057", "tamesu= 0x8a66 0x3059", "kokoromi= 0x8a66 0x307f", "kokoromiru= 0x8a66 0x307f 0x308b", "shiunten= 0x8a66 0x904b 0x8ee2", "shikinseki= 0x8a66 0x91d1 0x77f3", "shiken= 0x8a66 0x9a13", "shikousakugo= 0x8a66 0x884c 0x932f 0x8aa4", "shiai= 0x8a66 0x5408", "shisaku2= 0x8a66 0x4f5c", "shishoku= 0x8a66 0x98df", "shiren= 0x8a66 0x7df4", "shi4= 0x8a8c", "shijou4= 0x8a8c 0x4e0a", "shimen2= 0x8a8c 0x9762", "hakaru2= 0x8aee 0x308b", "shimon2= 0x8aee 0x554f", "shimonkikan= 0x8aee 0x554f 0x6a5f 0x95a2", "shikaku2= 0x8cc7 0x683c", "shikin= 0x8cc7 0x91d1", "shigen= 0x8cc7 0x6e90", "shisan= 0x8cc7 0x7523", "shihon= 0x8cc7 0x672c", "shihonka= 0x8cc7 0x672c 0x5bb6", "shihonshugi= 0x8cc7 0x672c 0x4e3b 0x7fa9", "shiryou1= 0x8cc7 0x6599", "tamawaru= 0x8cdc 0x308b", "shika2= 0x8cdc 0x6687", "mesu1= 0x96cc", "mebana= 0x96cc 0x82b1", "meushi= 0x96cc 0x725b", "mesuinu= 0x96cc 0x72ac", "shifuku= 0x96cc 0x4f0f", "shiyuu2= 0x96cc 0x96c4", "kaiinu= 0x98fc 0x3044 0x72ac", "kainushi= 0x98fc 0x3044 0x4e3b", "kau1= 0x98fc 0x3046", "shiiku= 0x98fc 0x80b2", "shiryou2= 0x98fc 0x6599", "ha1= 0x6b6f", "haburashi= 0x6b6f 0x30d6 0x30e9 0x30b7", "haisha1= 0x6b6f 0x533b 0x8005", "shika3= 0x6b6f 0x79d1", "shikai4= 0x6b6f 0x79d1 0x533b", "haguki= 0x6b6f 0x830e", "hamukau1= 0x6b6f 0x5411 0x3046", "hamukau2= 0x6b6f 0x5411 0x304b 0x3046", "hadome= 0x6b6f 0x6b62 0x3081", "haguruma= 0x6b6f 0x8eca", "hamigaki= 0x6b6f 0x78e8 0x304d", "hagayui= 0x6b6f 0x75d2 0x3044", "koto2= 0x4e8b", "kotoniyoruto= 0x4e8b 0x306b 0x3088 0x308b 0x3068", "jigyou= 0x4e8b 0x696d", "jiken= 0x4e8b 0x4ef6", "jiko1= 0x4e8b 0x6545", "jikou1= 0x4e8b 0x9805", "jikousakuin= 0x4e8b 0x9805 0x7d22 0x5f15", "jijitsu= 0x4e8b 0x5b9f", "jijou1= 0x4e8b 0x60c5", "jizen1= 0x4e8b 0x524d", "jizengo= 0x4e8b 0x524d 0x5f8c", "jitai1= 0x4e8b 0x614b", "kotogara= 0x4e8b 0x67c4", "jimu= 0x4e8b 0x52d9", "jimuin= 0x4e8b 0x52d9 0x54e1", "jimudukue= 0x4e8b 0x52d9 0x673a", "jimushitsu= 0x4e8b 0x52d9 0x5ba4", "jimusho= 0x4e8b 0x52d9 0x6240", "jiyuu1= 0x4e8b 0x7531", "niseru= 0x4f3c 0x305b 0x308b", "niru1= 0x4f3c 0x308b", "nigao= 0x4f3c 0x9854", "nigaoe= 0x4f3c 0x9854 0x7d75", "niai= 0x4f3c 0x5408 0x3044", "niau= 0x4f3c 0x5408 0x3046", "nikayou= 0x4f3c 0x901a 0x3046", "samurai= 0x4f8d", "jii= 0x4f8d 0x533b", "samuraikatagi= 0x4f8d 0x6c17 0x8cea", "jisha= 0x4f8d 0x8005", "jijo1= 0x4f8d 0x5973", "ji1= 0x5150", "jidou1= 0x5150 0x7ae5", "aza1= 0x5b57", "ji2= 0x5b57", "jibiki= 0x5b57 0x5f15", "jikaku1= 0x5b57 0x753b", "jitai2= 0x5b57 0x4f53", "tera= 0x5bfa", "jiin= 0x5bfa 0x9662", "itsukushimu= 0x6148 0x3057 0x3080", "jiai= 0x6148 0x611b", "jiu= 0x6148 0x96e8", "jikei= 0x6148 0x6075", "jizen2= 0x6148 0x5584", "jihi= 0x6148 0x60b2", "mochi1= 0x6301 0x3061", "mochikotaeru1= 0x6301 0x3061 0x582a 0x3048 0x308b", "mochikomu= 0x6301 0x3061 0x8fbc 0x3080", "mochinushi= 0x6301 0x3061 0x4e3b", "mochinaosu1= 0x6301 0x3061 0x76f4 0x3059", "mochimono= 0x6301 0x3061 0x7269", "motteiku= 0x6301 0x3063 0x3066 0x884c 0x304f", "mottekuru= 0x6301 0x3063 0x3066 0x6765 0x308b", "motsu= 0x6301 0x3064", "moteru= 0x6301 0x3066 0x308b", "motenashi= 0x6301 0x3066 0x6210 0x3057", "motenasu= 0x6301 0x3066 0x6210 0x3059", "mochikotaeru2= 0x6301 0x582a 0x3048 0x308b", "jikyuu1= 0x6301 0x4e45", "jisan= 0x6301 0x53c2", "jizoku= 0x6301 0x7d9a", "mochinaosu2= 0x6301 0x76f4 0x3059", "toki= 0x6642", "tokidoki= 0x6642 0x3005", "tokiniha= 0x6642 0x306b 0x306f", "shigure= 0x6642 0x96e8", "jikan1= 0x6642 0x9593", "jikankasegi= 0x6642 0x9593 0x7a3c 0x304e", "jikanwari1= 0x6642 0x9593 0x5272", "jikanwari2= 0x6642 0x9593 0x5272 0x308a", "jikanhyou= 0x6642 0x9593 0x8868", "jiki1= 0x6642 0x671f", "jiki2= 0x6642 0x6a5f", "jikishousou= 0x6642 0x6a5f 0x5c1a 0x65e9", "jigi= 0x6642 0x5b9c", "jikyuu2= 0x6642 0x7d66", "jikyoku= 0x6642 0x5c40", "tokei= 0x6642 0x8a08", "jigen1= 0x6642 0x9650", "jikou2= 0x6642 0x52b9", "jikoku1= 0x6642 0x523b", "jisa= 0x6642 0x5dee", "tokiori= 0x6642 0x6298", "jisetsu= 0x6642 0x7bc0", "jisoku= 0x6642 0x901f", "jidai= 0x6642 0x4ee3", "jihou= 0x6642 0x5831", "tsugi= 0x6b21", "tsugitsugini= 0x6b21 0x3005 0x306b", "tsuide1= 0x6b21 0x3044 0x3067", "tsugu2= 0x6b21 0x3050", "jikai= 0x6b21 0x56de", "jikan2= 0x6b21 0x5b98", "jigen2= 0x6b21 0x5143", "jijo2= 0x6b21 0x5973", "shidai= 0x6b21 0x7b2c", "shidaini= 0x6b21 0x7b2c 0x306b", "jinan= 0x6b21 0x7537", "shigaken= 0x6ecb 0x8cc0 0x770c", "jiyou= 0x6ecb 0x990a", "jiyoubun= 0x6ecb 0x990a 0x5206", "naosu1= 0x6cbb 0x3059", "osamaru1= 0x6cbb 0x307e 0x308b", "osameru1= 0x6cbb 0x3081 0x308b", "naoru1= 0x6cbb 0x308b", "chian= 0x6cbb 0x5b89", "chiyu= 0x6cbb 0x7652", "chiryou= 0x6cbb 0x7642", "ji3= 0x74bd", "jisho1= 0x74bd 0x66f8", "jiki3= 0x78c1 0x5668", "jiki4= 0x78c1 0x6c17", "jijou2= 0x78c1 0x5834", "jiba= 0x78c1 0x5834", "jishaku= 0x78c1 0x77f3", "shimesu1= 0x793a 0x3059", "shisa= 0x793a 0x5506", "jidan= 0x793a 0x8ac7", "mimi= 0x8033", "mimiyori= 0x8033 0x5bc4 0x308a", "mimimoto= 0x8033 0x5143", "mimizawari= 0x8033 0x969c 0x308a", "jibiinkousenmoni= 0x8033 0x9f3b 0x54bd 0x5589 0x5c02 0x9580 0x533b", "jibika= 0x8033 0x9f3b 0x79d1", "jimoku= 0x8033 0x76ee", "onozukara= 0x81ea 0x305a 0x304b 0x3089", "mizukara= 0x81ea 0x3089", "mizukaranotede= 0x81ea 0x3089 0x306e 0x624b 0x3067", "jiei1= 0x81ea 0x55b6", "jieigyou= 0x81ea 0x55b6 0x696d", "jiei2= 0x81ea 0x885b", "jieitai= 0x81ea 0x885b 0x968a", "jiga= 0x81ea 0x6211", "jigazou= 0x81ea 0x753b 0x50cf", "jikaku2= 0x81ea 0x899a", "jikatsu= 0x81ea 0x6d3b", "jiki5= 0x81ea 0x68c4", "yake= 0x81ea 0x68c4", "jigyakuteki= 0x81ea 0x8650 0x7684", "jikyou= 0x81ea 0x4f9b", "jiko2= 0x81ea 0x5df1", "jikoshoukai= 0x81ea 0x5df1 0x7d39 0x4ecb", "jikochuushin= 0x81ea 0x5df1 0x4e2d 0x5fc3", "jikoku2= 0x81ea 0x56fd", "unubore= 0x81ea 0x60da 0x308c", "unuboreru= 0x81ea 0x60da 0x308c 0x308b", "jisatsu= 0x81ea 0x6bba", "jisatsumisui= 0x81ea 0x6bba 0x672a 0x9042", "jichi= 0x81ea 0x6cbb", "jishu1= 0x81ea 0x4e3b", "jishuteki= 0x81ea 0x4e3b 0x7684", "jishu2= 0x81ea 0x9996", "jishuu= 0x81ea 0x7fd2", "jishuku= 0x81ea 0x7c9b", "jijoden= 0x81ea 0x53d9 0x4f1d", "jisei= 0x81ea 0x7701", "jishin1= 0x81ea 0x4fe1", "jishin2= 0x81ea 0x8eab", "jisui= 0x81ea 0x708a", "jiseki= 0x81ea 0x8cac", "jisen= 0x81ea 0x85a6", "shizen= 0x81ea 0x7136", "shizenni= 0x81ea 0x7136 0x306b", "shizenkagaku= 0x81ea 0x7136 0x79d1 0x5b66", "shizenbyousha= 0x81ea 0x7136 0x63cf 0x5199", "jison= 0x81ea 0x5c0a", "jisonshin= 0x81ea 0x5c0a 0x5fc3", "jita= 0x81ea 0x4ed6", "jitai3= 0x81ea 0x4f53", "jitaku= 0x81ea 0x5b85", "jitenjiku= 0x81ea 0x8ee2 0x8ef8", "jitensha= 0x81ea 0x8ee2 0x8eca", "jidou2= 0x81ea 0x52d5", "jidousha= 0x81ea 0x52d5 0x8eca", "jijoujibakuniochiiru= 0x81ea 0x7e04 0x81ea 0x7e1b 0x306b 0x9665 0x308b", "jihaku= 0x81ea 0x767d", "jibaku= 0x81ea 0x7e1b", "jihatsuteki= 0x81ea 0x767a 0x7684", "jihitsu= 0x81ea 0x7b46", "jifu= 0x81ea 0x8ca0", "jibun= 0x81ea 0x5206", "jiheishou= 0x81ea 0x9589 0x75c7", "jiman= 0x81ea 0x6162", "jimei= 0x81ea 0x660e", "jimetsu= 0x81ea 0x6ec5", "jimon= 0x81ea 0x554f", "jiyuu2= 0x81ea 0x7531", "jiyuuboueki= 0x81ea 0x7531 0x8cbf 0x6613", "jiritsushinkei= 0x81ea 0x5f8b 0x795e 0x7d4c", "jiritsu= 0x81ea 0x7acb", "maku3= 0x8494 0x304f", "yameru2= 0x8f9e 0x3081 0x308b", "jisho2= 0x8f9e 0x66f8", "jishoku= 0x8f9e 0x8077", "jitai4= 0x8f9e 0x9000", "jiten= 0x8f9e 0x5178", "jinin= 0x8f9e 0x4efb", "jihyou= 0x8f9e 0x8868", "shiki3= 0x5f0f", "shikiji= 0x5f0f 0x8f9e", "shikibetsu= 0x8b58 0x5225", "jiku= 0x8ef8", "shichi= 0x4e03", "nanatsu= 0x4e03 0x3064", "shichigosan= 0x4e03 0x4e94 0x4e09", "nanoka= 0x4e03 0x65e5", "shichifukujin= 0x4e03 0x798f 0x795e", "tanabata= 0x4e03 0x5915", "shikaru= 0x53f1 0x308b", "toru3= 0x57f7 0x308b", "shikken= 0x57f7 0x6a29", "shikkou= 0x57f7 0x884c", "shikkouyuuyo= 0x57f7 0x884c 0x7336 0x4e88", "shuushin1= 0x57f7 0x5fc3", "shuujaku= 0x57f7 0x7740", "shuuchaku= 0x57f7 0x7740", "shuunen= 0x57f7 0x5ff5", "shippitsu= 0x57f7 0x7b46", "ushinau= 0x5931 0x3046", "shitsui= 0x5931 0x610f", "shikkaku= 0x5931 0x683c", "shikkyaku= 0x5931 0x811a", "shitsugyou= 0x5931 0x696d", "shikkei= 0x5931 0x656c", "shisshin= 0x5931 0x795e", "shittsui= 0x5931 0x589c", "shippai= 0x5931 0x6557", "shitsubou= 0x5931 0x671b", "shitsurei= 0x5931 0x793c", "shitsuren= 0x5931 0x604b", "shitto= 0x5ac9 0x59ac", "shitsu1= 0x5ba4", "muro= 0x5ba4", "muromachi= 0x5ba4 0x753a", "shitsuchou= 0x5ba4 0x9577", "shitsunai= 0x5ba4 0x5185", "kotogotoku= 0x6089 0x304f", "shimesu2= 0x6e7f 0x3059", "shimeppoi= 0x6e7f 0x3063 0x307d 0x3044", "shimeru2= 0x6e7f 0x308b", "shikke= 0x6e7f 0x6c17", "shicchi= 0x6e7f 0x5730", "shitsudo= 0x6e7f 0x5ea6", "shippu= 0x6e7f 0x5e03", "urushi= 0x6f06", "shikki= 0x6f06 0x5668", "shikkoku= 0x6f06 0x9ed2", "urushinuri= 0x6f06 0x5857 0x308a", "tokkuni= 0x75be 0x3063 0x304f 0x306b", "shikkan= 0x75be 0x60a3", "shissou= 0x75be 0x8d70", "shippuu= 0x75be 0x98a8", "shitsu2= 0x8cea", "shichiya= 0x8cea 0x5c4b", "shitsugioutou= 0x8cea 0x7591 0x5fdc 0x7b54", "shisso= 0x8cea 0x7d20", "shitsuboku= 0x8cea 0x6734", "shitsumon= 0x8cea 0x554f", "shitsumonyoushi= 0x8cea 0x554f 0x7528 0x7d19", "shitsuryou= 0x8cea 0x91cf", "jitsu= 0x5b9f", "mi2= 0x5b9f", "jitsuni= 0x5b9f 0x306b", "jitsuha= 0x5b9f 0x306f", "minoru= 0x5b9f 0x308b", "jikka= 0x5b9f 0x5bb6", "jikkan= 0x5b9f 0x611f", "jikkyou= 0x5b9f 0x6cc1", "jitsugyouka= 0x5b9f 0x696d 0x5bb6", "jikkei= 0x5b9f 0x5144", "jikken= 0x5b9f 0x9a13", "jitsugen= 0x5b9f 0x73fe", "jikkou= 0x5b9f 0x884c", "jissai= 0x5b9f 0x969b", "jitsuzai= 0x5b9f 0x5728", "jisshi= 0x5b9f 0x65bd", "jisshuu= 0x5b9f 0x7fd2", "jitsujou= 0x5b9f 0x60c5", "jisseki= 0x5b9f 0x7e3e", "jissen= 0x5b9f 0x8df5", "jissenteki= 0x5b9f 0x8df5 0x7684", "jissenriseihihan= 0x5b9f 0x8df5 0x7406 0x6027 0x6279 0x5224", "jittai= 0x5b9f 0x614b", "jitsudoujikan= 0x5b9f 0x50cd 0x6642 0x9593", "jippi= 0x5b9f 0x8cbb", "jitsubutsu= 0x5b9f 0x7269", "jitsumei= 0x5b9f 0x540d", "jitsuyou= 0x5b9f 0x7528", "jitsuyouteki= 0x5b9f 0x7528 0x7684", "jitsuryoku= 0x5b9f 0x529b", "jitsurei= 0x5b9f 0x4f8b", "jitsuwa= 0x5b9f 0x8a71", "shiba= 0x829d", "shibakariki= 0x829d 0x5208 0x308a 0x6a5f", "shibai= 0x829d 0x5c45", "shibaigoya= 0x829d 0x5c45 0x5c0f 0x5c4b", "shibafu= 0x829d 0x751f", "shibakusa= 0x829d 0x8349", "shibashiba= 0x5c61 0x3005", "shima1= 0x7e1e", "sha= 0x820e", "utsusu3= 0x5199 0x3059", "utsuru3= 0x5199 0x308b", "shajitsuteki= 0x5199 0x5b9f 0x7684", "shashin= 0x5199 0x771f", "shasei= 0x5199 0x751f", "sasu4= 0x5c04 0x3059", "iru2= 0x5c04 0x308b", "shasatsu= 0x5c04 0x6bba", "suteru= 0x6368 0x3066 0x308b", "sutego= 0x6368 0x3066 0x5b50", "shamen1= 0x8d66 0x514d", "naname= 0x659c 0x3081", "shashi= 0x659c 0x8996", "shasen= 0x659c 0x7dda", "shahen= 0x659c 0x8fba", "shamen2= 0x659c 0x9762", "shayou= 0x659c 0x967d", "nieru= 0x716e 0x3048 0x308b", "niyasu= 0x716e 0x3084 0x3059", "niru2= 0x716e 0x308b", "nitsumeru= 0x716e 0x8a70 0x3081 0x308b", "nikomu= 0x716e 0x8fbc 0x3080", "shafutsu= 0x716e 0x6cb8", "yashiro= 0x793e", "shain= 0x793e 0x54e1", "shainryou= 0x793e 0x54e1 0x5bee", "shakai= 0x793e 0x4f1a", "shakaikagaku= 0x793e 0x4f1a 0x79d1 0x5b66", "shakaijin= 0x793e 0x4f1a 0x4eba", "shakaitou= 0x793e 0x4f1a 0x515a", "shakaifukushi= 0x793e 0x4f1a 0x798f 0x7949", "shakou= 0x793e 0x4ea4", "shakouteki= 0x793e 0x4ea4 0x7684", "shasetsu= 0x793e 0x8aac", "shachou= 0x793e 0x9577", "mono1= 0x8005", "ayamaru2= 0x8b1d 0x308b", "shazai= 0x8b1d 0x7f6a", "sharei= 0x8b1d 0x793c", "kuruma= 0x8eca", "kurumaisu= 0x8eca 0x6905 0x5b50", "shako= 0x8eca 0x5eab", "shajiku= 0x8eca 0x8ef8", "shashou= 0x8eca 0x638c", "shasou= 0x8eca 0x7a93", "shadou= 0x8eca 0x9053", "shanai= 0x8eca 0x5185", "sharyou= 0x8eca 0x4e21", "sharin= 0x8eca 0x8f2a", "saegiru= 0x906e 0x308b", "shadan= 0x906e 0x65ad", "shadanki1= 0x906e 0x65ad 0x5668", "shadanki2= 0x906e 0x65ad 0x6a5f", "hebi= 0x86c7", "janome= 0x86c7 0x306e 0x76ee", "jaguchi= 0x86c7 0x53e3", "dakou= 0x86c7 0x884c", "dasoku= 0x86c7 0x8db3", "jabara= 0x86c7 0x8179", "jakyou= 0x90aa 0x6559", "jashuu= 0x90aa 0x5b97", "jasui= 0x90aa 0x63a8", "jadou= 0x90aa 0x9053", "jama= 0x90aa 0x9b54", "kari2= 0x501f 0x308a", "kariru= 0x501f 0x308a 0x308b", "shakkan= 0x501f 0x6b3e", "shakkin= 0x501f 0x91d1", "shakuzai= 0x501f 0x8ca1", "shaku1= 0x52fa", "shaku2= 0x5c3a", "shakkanhou= 0x5c3a 0x8cab 0x6cd5", "shakudo= 0x5c3a 0x5ea6", "shakuhachi= 0x5c3a 0x516b", "shakui= 0x7235 0x4f4d", "shaka= 0x91c8 0x8fe6", "shakuhou= 0x91c8 0x653e", "shakumei= 0x91c8 0x660e", "wakawakashii= 0x82e5 0x3005 0x3057 0x3044", "wakai1= 0x82e5 0x3044", "moshi= 0x82e5 0x3057", "moshikashitara= 0x82e5 0x3057 0x304b 0x3057 0x305f 0x3089", "moshikasuruto= 0x82e5 0x3057 0x304b 0x3059 0x308b 0x3068", "moshikuha= 0x82e5 0x3057 0x304f 0x306f", "moshimo= 0x82e5 0x3057 0x3082", "jakkan1= 0x82e5 0x5e72", "wakajini= 0x82e5 0x6b7b 0x306b", "wakamono= 0x82e5 0x8005", "wakate= 0x82e5 0x624b", "wakoudo= 0x82e5 0x4eba", "wakame1= 0x82e5 0x5e03", "sabi2= 0x5bc2", "sabishii= 0x5bc2 0x3057 0x3044", "sabireru= 0x5bc2 0x308c 0x308b", "jakunen= 0x5bc2 0x7136", "sekizen= 0x5bc2 0x7136", "jaku= 0x5f31", "yowai= 0x5f31 0x3044", "yowamaru= 0x5f31 0x307e 0x308b", "yowami= 0x5f31 0x307f", "yowameru= 0x5f31 0x3081 0x308b", "yowaru= 0x5f31 0x308b", "yowane= 0x5f31 0x97f3", "jakkan2= 0x5f31 0x51a0", "yowaki= 0x5f31 0x6c17", "yowagoshi= 0x5f31 0x8170", "jakutai= 0x5f31 0x4f53", "yowamushi= 0x5f31 0x866b", "jakuten= 0x5f31 0x70b9", "aruji1= 0x4e3b", "omo1= 0x4e3b", "shu= 0x4e3b", "nushi= 0x4e3b", "shutoshite= 0x4e3b 0x3068 0x3057 0x3066", "omoni1= 0x4e3b 0x306b", "shunoinori= 0x4e3b 0x306e 0x7948 0x308a", "shuin1= 0x4e3b 0x56e0", "shuen1= 0x4e3b 0x6f14", "shukan= 0x4e3b 0x89b3", "shukanteki= 0x4e3b 0x89b3 0x7684", "shugi= 0x4e3b 0x7fa9", "shuken= 0x4e3b 0x6a29", "shugo= 0x4e3b 0x8a9e", "shusai1= 0x4e3b 0x50ac", "shusai2= 0x4e3b 0x5bb0", "shusaisha= 0x4e3b 0x5bb0 0x8005", "shushou1= 0x4e3b 0x5531", "shushou2= 0x4e3b 0x5c06", "shushoku= 0x4e3b 0x98df", "aruji2= 0x4e3b 0x4eba", "shujin= 0x4e3b 0x4eba", "shujinkou= 0x4e3b 0x4eba 0x516c", "shuseki= 0x4e3b 0x5e2d", "shutai= 0x4e3b 0x4f53", "shudai= 0x4e3b 0x984c", "shuchou= 0x4e3b 0x5f35", "shudou= 0x4e3b 0x5c0e", "shunin= 0x4e3b 0x4efb", "shufu1= 0x4e3b 0x5a66", "shubousha= 0x4e3b 0x8b00 0x8005", "shuyaku= 0x4e3b 0x5f79", "shuyou= 0x4e3b 0x8981", "totte= 0x53d6 0x3063 0x624b", "toriatsukai1= 0x53d6 0x308a 0x6271", "toriatsukai2= 0x53d6 0x308a 0x6271 0x3044", "toriatsukaichuui1= 0x53d6 0x308a 0x6271 0x3044 0x6ce8 0x610f", "toriatsukaikata= 0x53d6 0x308a 0x6271 0x3044 0x65b9", "toriatsukau= 0x53d6 0x308a 0x6271 0x3046", "torikakomu= 0x53d6 0x308a 0x56f2 0x3080", "torihiki1= 0x53d6 0x308a 0x5f15 0x304d", "torihazusu= 0x53d6 0x308a 0x5916 0x3059", "torikakaru= 0x53d6 0x308a 0x639b 0x304b 0x308b", "torimaku= 0x53d6 0x308a 0x5dfb 0x304f", "toriaezu1= 0x53d6 0x308a 0x6562 0x3048 0x305a", "toriyoseru= 0x53d6 0x308a 0x5bc4 0x305b 0x308b", "torikime1= 0x53d6 0x308a 0x6c7a 0x3081", "torikomu= 0x53d6 0x308a 0x8fbc 0x3080", "toritsugu= 0x53d6 0x308a 0x6b21 0x3050", "toridasu= 0x53d6 0x308a 0x51fa 0x3059", "torinozoku= 0x53d6 0x308a 0x9664 0x304f", "torikeshi1= 0x53d6 0x308a 0x6d88 0x3057", "torikesu= 0x53d6 0x308a 0x6d88 0x3059", "toriageru1= 0x53d6 0x308a 0x4e0a 0x3052 0x308b", "torikumu= 0x53d6 0x308a 0x7d44 0x3080", "torikae= 0x53d6 0x308a 0x66ff 0x3048", "torikaeru= 0x53d6 0x308a 0x66ff 0x3048 0x308b", "torishirabe1= 0x53d6 0x308a 0x8abf 0x3079", "torishimari1= 0x53d6 0x308a 0x7de0 0x307e 0x308a", "torishimaru= 0x53d6 0x308a 0x7de0 0x307e 0x308b", "torishimari2= 0x53d6 0x308a 0x7de0 0x308a", "toriireru= 0x53d6 0x308a 0x5165 0x308c 0x308b", "toriwake= 0x53d6 0x308a 0x5206 0x3051", "torie= 0x53d6 0x308a 0x67c4", "torikaesu= 0x53d6 0x308a 0x8fd4 0x3059", "torimodosu= 0x53d6 0x308a 0x623b 0x3059", "toru4= 0x53d6 0x308b", "toreru= 0x53d6 0x308c 0x308b", "toriatsukai3= 0x53d6 0x6271", "toriatsukai4= 0x53d6 0x6271 0x3044", "toriatsukaichuui2= 0x53d6 0x6271 0x6ce8 0x610f", "torihiki2= 0x53d6 0x5f15", "toriaezu2= 0x53d6 0x6562 0x3048 0x305a", "torikime2= 0x53d6 0x6c7a 0x3081", "shuzai= 0x53d6 0x6750", "shusha= 0x53d6 0x6368", "torikeshi2= 0x53d6 0x6d88 0x3057", "toriageru2= 0x53d6 0x4e0a 0x3052 0x308b", "torishirabe2= 0x53d6 0x8abf 0x3079", "torishimari3= 0x53d6 0x7de0 0x307e 0x308a", "torishimari4= 0x53d6 0x7de0 0x308a", "torishimariyaku= 0x53d6 0x7de0 0x5f79", "shutoku= 0x53d6 0x5f97", "mori1= 0x5b88", "mamoru= 0x5b88 0x308b", "shuei= 0x5b88 0x885b", "shusendo= 0x5b88 0x92ad 0x5974", "shubi1= 0x5b88 0x5099", "te= 0x624b", "tebiki1= 0x624b 0x5f15", "tebiki2= 0x624b 0x5f15 0x304d", "tegotae= 0x624b 0x5fdc 0x3048", "tenimotsu= 0x624b 0x8377 0x7269", "tenimotsuichijiazukarisho= 0x624b 0x8377 0x7269 0x4e00 0x6642 0x9810 0x304b 0x308a 0x6240", "tegakari= 0x624b 0x639b 0x304b 0x308a", "tema= 0x624b 0x9593", "tekagami= 0x624b 0x93e1", "tegata= 0x624b 0x5f62", "tegaru= 0x624b 0x8efd", "tegatai= 0x624b 0x5805 0x3044", "temoto= 0x624b 0x5143", "tekozuru= 0x624b 0x53e4 0x647a 0x308b", "tebikae= 0x624b 0x63a7 0x3048", "taduna= 0x624b 0x7db1", "tegiwa= 0x624b 0x969b", "tegiwayoku= 0x624b 0x969b 0x826f 0x304f", "tedukuri1= 0x624b 0x4f5c 0x308a", "tegami= 0x624b 0x7d19", "tekubi= 0x624b 0x9996", "shujutsu= 0x624b 0x8853", "shujutsushitsu= 0x624b 0x8853 0x5ba4", "tejun= 0x624b 0x9806", "temaneki= 0x624b 0x62db 0x304d", "tejou= 0x624b 0x9320", "tenugui= 0x624b 0x62ed 0x3044", "teburi= 0x624b 0x632f 0x308a", "tesuu= 0x624b 0x6570", "tesuuryou= 0x624b 0x6570 0x6599", "tesuri= 0x624b 0x647a 0x308a", "tearai= 0x624b 0x6d17 0x3044", "temae= 0x624b 0x524d", "tebayai= 0x624b 0x65e9 0x3044", "tedukuri2= 0x624b 0x9020 0x308a", "teashi= 0x624b 0x8db3", "tetsuduki1= 0x624b 0x7d9a", "tetsuduki2= 0x624b 0x7d9a 0x304d", "tebukuro= 0x624b 0x888b", "tesaguri= 0x624b 0x63a2 0x308a", "shudan= 0x624b 0x6bb5", "teokure= 0x624b 0x9045 0x308c", "techou= 0x624b 0x5e33", "tetsudai= 0x624b 0x4f1d 0x3044", "tetsudau= 0x624b 0x4f1d 0x3046", "tewatasu= 0x624b 0x6e21 0x3059", "teate1= 0x624b 0x5f53", "teate2= 0x624b 0x5f53 0x3066", "teire= 0x624b 0x5165 0x308c", "tehai= 0x624b 0x914d", "tejina= 0x624b 0x54c1", "tefuukin= 0x624b 0x98a8 0x7434", "tewake= 0x624b 0x5206 0x3051", "tegara= 0x624b 0x67c4", "teami= 0x624b 0x7de8 0x307f", "tehon= 0x624b 0x672c", "teochi= 0x624b 0x843d 0x3061", "shuin2= 0x6731 0x5370", "shuiro= 0x6731 0x8272", "shuniku= 0x6731 0x8089", "shuhitsuwokuwaeru= 0x6731 0x7b46 0x3092 0x52a0 0x3048 0x308b", "kotoni= 0x6b8a 0x306b", "kotonohoka= 0x6b8a 0x306e 0x5916", "shukun= 0x6b8a 0x52f2", "shushou3= 0x6b8a 0x52dd", "kari3= 0x72e9 0x308a", "karigoya= 0x72e9 0x308a 0x5c0f 0x5c4b", "karu3= 0x72e9 0x308b", "karyuudo= 0x72e9 0x4eba", "shuryou= 0x72e9 0x731f", "shuryouki= 0x72e9 0x731f 0x671f", "shugyoku= 0x73e0 0x7389", "shuzan= 0x73e0 0x7b97", "tane= 0x7a2e", "shuju= 0x7a2e 0x3005", "shushi1= 0x7a2e 0x5b50", "shutou= 0x7a2e 0x75d8", "shumoku= 0x7a2e 0x76ee", "shurui= 0x7a2e 0x985e", "hareru1= 0x816b 0x308c 0x308b", "omomuki1= 0x8da3", "omomuki2= 0x8da3 0x304d", "shui1= 0x8da3 0x610f", "shukou1= 0x8da3 0x5411", "shushi2= 0x8da3 0x65e8", "shumi= 0x8da3 0x5473", "sake= 0x9152", "shuen2= 0x9152 0x5bb4", "sakaya= 0x9152 0x5c4b", "sakaba= 0x9152 0x5834", "shusen= 0x9152 0x4ed9", "kubi= 0x9996", "shui2= 0x9996 0x4f4d", "shukou2= 0x9996 0x80af", "shushou4= 0x9996 0x5531", "kubikazari= 0x9996 0x98fe 0x308a", "shushou5= 0x9996 0x76f8", "shushoukengaishou= 0x9996 0x76f8 0x517c 0x5916 0x76f8", "shuto= 0x9996 0x90fd", "shutoken= 0x9996 0x90fd 0x570f", "shunou= 0x9996 0x8133", "shunoukaidan= 0x9996 0x8133 0x4f1a 0x8ac7", "shuhan= 0x9996 0x73ed", "shubi2= 0x9996 0x5c3e", "shufu2= 0x9996 0x5e9c", "ju= 0x5112", "juka= 0x5112 0x5bb6", "jugaku= 0x5112 0x5b66", "jugakusha= 0x5112 0x5b66 0x8005", "jukyou= 0x5112 0x6559", "ukaru= 0x53d7 0x304b 0x308b", "ukeru1= 0x53d7 0x3051 0x308b", "uketsugu= 0x53d7 0x3051 0x7d99 0x3050", "ukezara= 0x53d7 0x3051 0x76bf", "uketomeru= 0x53d7 0x3051 0x6b62 0x3081 0x308b", "ukemochi= 0x53d7 0x3051 0x6301 0x3061", "ukemotsu= 0x53d7 0x3051 0x6301 0x3064", "uketori1= 0x53d7 0x3051 0x53d6", "uketori2= 0x53d7 0x3051 0x53d6 0x308a", "uketoru= 0x53d7 0x3051 0x53d6 0x308b", "ukemi1= 0x53d7 0x3051 0x8eab", "ukeireru= 0x53d7 0x3051 0x5165 0x308c 0x308b", "uketsuke1= 0x53d7 0x3051 0x4ed8 0x3051", "uketsukeru= 0x53d7 0x3051 0x4ed8 0x3051 0x308b", "juken= 0x53d7 0x9a13", "jukenjigoku= 0x53d7 0x9a13 0x5730 0x7344", "uketori3= 0x53d7 0x53d6", "uketori4= 0x53d7 0x53d6 0x308a", "jushousha= 0x53d7 0x8cde 0x8005", "jushin= 0x53d7 0x4fe1", "ukemi2= 0x53d7 0x8eab", "juzouki= 0x53d7 0x50cf 0x6a5f", "jutai= 0x53d7 0x80ce", "judaku= 0x53d7 0x8afe", "judou= 0x53d7 0x52d5", "judouteki= 0x53d7 0x52d5 0x7684", "uketsuke2= 0x53d7 0x4ed8", "juri= 0x53d7 0x7406", "juwaki= 0x53d7 0x8a71 0x5668", "noroi1= 0x546a 0x3044", "norou= 0x546a 0x3046", "kotobuki= 0x5bff", "sushi= 0x5bff 0x53f8", "jumyou= 0x5bff 0x547d", "sazukaru= 0x6388 0x304b 0x308b", "sazukeru= 0x6388 0x3051 0x308b", "jugyou= 0x6388 0x696d", "jushaku= 0x6388 0x7235", "juju= 0x6388 0x53d7", "jushou= 0x6388 0x8cde", "juyo= 0x6388 0x4e0e", "jushi= 0x6a39 0x8102", "juhi= 0x6a39 0x76ae", "jumoku= 0x6a39 0x6728", "juritsu= 0x6a39 0x7acb", "jukyuu= 0x9700 0x7d66", "juyou= 0x9700 0x8981", "juyoukyoukyuu= 0x9700 0x8981 0x4f9b 0x7d66", "shuujin= 0x56da 0x4eba", "osamaru2= 0x53ce 0x307e 0x308b", "osameru2= 0x53ce 0x3081 0x308b", "shuueki= 0x53ce 0x76ca", "shuukaku= 0x53ce 0x7a6b", "shuukakuki= 0x53ce 0x7a6b 0x671f", "shuukakudaka= 0x53ce 0x7a6b 0x9ad8", "shuushi1= 0x53ce 0x652f", "shuushuu1= 0x53ce 0x62fe", "shuushuu2= 0x53ce 0x96c6", "shuunyuu= 0x53ce 0x5165", "shuuyou= 0x53ce 0x5bb9", "shuuwai= 0x53ce 0x8cc4", "gururi= 0x5468", "mawari2= 0x5468 0x308a", "shuui= 0x5468 0x56f2", "shuuki1= 0x5468 0x671f", "shuusen1= 0x5468 0x65cb", "shuuchi= 0x5468 0x77e5", "shuutou= 0x5468 0x5230", "shuuhen= 0x5468 0x8fba", "shuuyuu= 0x5468 0x904a", "shuuyuuken= 0x5468 0x904a 0x5238", "souke= 0x5b97 0x5bb6", "shuukyou= 0x5b97 0x6559", "soushou1= 0x5b97 0x5320", "shuuso= 0x5b97 0x7956", "shuuto1= 0x5b97 0x5f92", "shuuha= 0x5b97 0x6d3e", "shuumon= 0x5b97 0x9580", "tsuku1= 0x5c31 0x304f", "tsukeru1= 0x5c31 0x3051 0x308b", "shuugyoujikan= 0x5c31 0x696d 0x6642 0x9593", "shuushoku1= 0x5c31 0x8077", "shuunin= 0x5c31 0x4efb", "shuu1= 0x5dde", "su1= 0x5dde", "osamaru3= 0x4fee 0x307e 0x308b", "osameru3= 0x4fee 0x3081 0x308b", "shuugakuryokou= 0x4fee 0x5b66 0x65c5 0x884c", "shuugyou1= 0x4fee 0x696d", "shugyou1= 0x4fee 0x696d", "shuugyou2= 0x4fee 0x884c", "shugyou2= 0x4fee 0x884c", "shuushi2= 0x4fee 0x58eb", "shuushoku2= 0x4fee 0x98fe", "shuusei= 0x4fee 0x6b63", "shuuzen= 0x4fee 0x7e55", "shuuri= 0x4fee 0x7406", "shuuryou1= 0x4fee 0x4e86", "shuuren= 0x4fee 0x7df4", "urei1= 0x6101 0x3044", "ureeru1= 0x6101 0x3048 0x308b", "juu1= 0x62fe", "hiroimono= 0x62fe 0x3044 0x7269", "hirou1= 0x62fe 0x3046", "shuutoku1= 0x62fe 0x5f97", "shuutokubutsu= 0x62fe 0x5f97 0x7269", "juumanen= 0x62fe 0x4e07 0x5186", "hiideru= 0x79c0 0x3067 0x308b", "shuuitsu= 0x79c0 0x9038", "shuusai= 0x79c0 0x624d", "shuurei= 0x79c0 0x9e97", "aki2= 0x79cb", "shuuki2= 0x79cb 0x6c17", "akibare= 0x79cb 0x6674 0x308c", "akikaze= 0x79cb 0x98a8", "shuubun1= 0x79cb 0x5206", "shuubunnohi= 0x79cb 0x5206 0x306e 0x65e5", "oeru= 0x7d42 0x3048 0x308b", "owari= 0x7d42 0x308f 0x308a", "owaru= 0x7d42 0x308f 0x308b", "shuuketsu= 0x7d42 0x7d50", "shuushi3= 0x7d42 0x59cb", "shuushi4= 0x7d42 0x6b62", "shuushifu= 0x7d42 0x6b62 0x7b26", "shuushin2= 0x7d42 0x8eab", "shuushinkoyousei= 0x7d42 0x8eab 0x96c7 0x7528 0x5236", "shuusen2= 0x7d42 0x6226", "shuuchakueki= 0x7d42 0x7740 0x99c5", "shuuten= 0x7d42 0x70b9", "shuuden= 0x7d42 0x96fb", "shuujitsu= 0x7d42 0x65e5", "shuubansen= 0x7d42 0x76e4 0x6226", "shuuryou2= 0x7d42 0x4e86", "narau1= 0x7fd2 0x3046", "shuukan1= 0x7fd2 0x6163", "shuuji= 0x7fd2 0x5b57", "shuutoku2= 0x7fd2 0x5f97", "kusai= 0x81ed 0x3044", "nioi1= 0x81ed 0x3044", "niou1= 0x81ed 0x3046", "shuuki3= 0x81ed 0x6c17", "fune1= 0x821f", "funauta= 0x821f 0x6b4c", "shuutei= 0x821f 0x8247", "funaasobi= 0x821f 0x904a 0x3073", "shuu2= 0x8846", "shuugiin= 0x8846 0x8b70 0x9662", "osou= 0x8972 0x3046", "shuugeki= 0x8972 0x6483", "keru= 0x8e74 0x308b", "shuu3= 0x9031", "shuukan2= 0x9031 0x520a", "shuukanshi= 0x9031 0x520a 0x8a8c", "shuukan3= 0x9031 0x9593", "shuukyuu= 0x9031 0x4f11", "shuumatsu= 0x9031 0x672b", "tsudou= 0x96c6 0x3046", "atsumari= 0x96c6 0x307e 0x308a", "atsumaru= 0x96c6 0x307e 0x308b", "atsumeru= 0x96c6 0x3081 0x308b", "takaru= 0x96c6 0x308b", "shuukai= 0x96c6 0x4f1a", "shuukin= 0x96c6 0x91d1", "shuugou= 0x96c6 0x5408", "shuudan= 0x96c6 0x56e3", "shuudanshinri= 0x96c6 0x56e3 0x5fc3 0x7406", "shuuchuu= 0x96c6 0x4e2d", "shuuraku= 0x96c6 0x843d", "minikui= 0x919c 0x3044", "shuuaku= 0x919c 0x60aa", "shikome= 0x919c 0x5973", "shuujo= 0x919c 0x5973", "shuutai= 0x919c 0x614b", "shuubun2= 0x919c 0x805e", "sumai1= 0x4f4f 0x307e 0x3044", "sumau= 0x4f4f 0x307e 0x3046", "sumigokochi= 0x4f4f 0x307f 0x5fc3 0x5730", "sumu2= 0x4f4f 0x3080", "juukyo= 0x4f4f 0x5c45", "sumai2= 0x4f4f 0x5c45", "juusho= 0x4f4f 0x6240", "juunin= 0x4f4f 0x4eba", "juutaku= 0x4f4f 0x5b85", "juutakuchi= 0x4f4f 0x5b85 0x5730", "juumin= 0x4f4f 0x6c11", "ateru1= 0x5145 0x3066 0x308b", "juuketsushitame= 0x5145 0x8840 0x3057 0x305f 0x76ee", "juujitsu= 0x5145 0x5b9f", "juusoku= 0x5145 0x8db3", "juubun1= 0x5145 0x5206", "juuman= 0x5145 0x6e80", "juu2= 0x5341", "too= 0x5341", "juuendama= 0x5341 0x5186 0x7389", "jikkai= 0x5341 0x6212", "juujika= 0x5341 0x5b57 0x67b6", "juujikazou= 0x5341 0x5b57 0x67b6 0x50cf", "juujihouka= 0x5341 0x5b57 0x7832 0x706b", "juujiro= 0x5341 0x5b57 0x8def", "tooka= 0x5341 0x65e5", "jippun= 0x5341 0x5206", "juubun2= 0x5341 0x5206", "shitagau= 0x5f93 0x3046", "shitagaeru= 0x5f93 0x3048 0x308b", "shitagatte= 0x5f93 0x3063 0x3066", "juugyouin= 0x5f93 0x696d 0x54e1", "itoko= 0x5f93 0x5144 0x5f1f", "juuji= 0x5f93 0x4e8b", "juuzoku= 0x5f93 0x5c5e", "juuboku= 0x5f93 0x50d5", "juurai= 0x5f93 0x6765", "yawaraka1= 0x67d4 0x3089 0x304b", "yawarakai1= 0x67d4 0x3089 0x304b 0x3044", "nyuujaku= 0x67d4 0x5f31", "juujutsu= 0x67d4 0x8853", "juudou= 0x67d4 0x9053", "juunan= 0x67d4 0x8edf", "nyuuwa= 0x67d4 0x548c", "shiru1= 0x6c41", "shiruko= 0x6c41 0x7c89", "shibui= 0x6e0b 0x3044", "shiburu= 0x6e0b 0x308b", "juutai1= 0x6e0b 0x6ede", "shibumi= 0x6e0b 0x5473", "shibudura= 0x6e0b 0x9762", "juumen= 0x6e0b 0x9762", "kedamono= 0x7363", "kemono= 0x7363", "juui= 0x7363 0x533b", "tate1= 0x7e26", "juuou= 0x7e26 0x6a2a", "tateyoko= 0x7e26 0x6a2a", "tategaki1= 0x7e26 0x66f8", "tategaki2= 0x7e26 0x66f8 0x304d", "juusen= 0x7e26 0x7dda", "juudan= 0x7e26 0x65ad", "e3= 0x91cd", "omoi2= 0x91cd 0x3044", "omosa= 0x91cd 0x3055", "omotai= 0x91cd 0x305f 0x3044", "kasanaru= 0x91cd 0x306a 0x308b", "kasaneru= 0x91cd 0x306d 0x308b", "omomi= 0x91cd 0x307f", "omonjiru= 0x91cd 0x3093 0x3058 0x308b", "omonzuru= 0x91cd 0x3093 0x305a 0x308b", "omoni2= 0x91cd 0x8377", "omokurushii= 0x91cd 0x82e6 0x3057 0x3044", "juukougyou= 0x91cd 0x5de5 0x696d", "juushi= 0x91cd 0x8996", "juushou1= 0x91cd 0x50b7", "juushou2= 0x91cd 0x75c7", "juushin= 0x91cd 0x5fc3", "juuseki= 0x91cd 0x8cac", "juutai2= 0x91cd 0x4f53", "juutai3= 0x91cd 0x614b", "juudai= 0x91cd 0x5927", "juuten= 0x91cd 0x70b9", "juubako= 0x91cd 0x7bb1", "juubyou= 0x91cd 0x75c5", "juufuku= 0x91cd 0x8907", "choufuku= 0x91cd 0x8907", "chouhou= 0x91cd 0x5b9d", "juuyaku= 0x91cd 0x5f79", "juuyou= 0x91cd 0x8981", "juuryou= 0x91cd 0x91cf", "juuryoku= 0x91cd 0x529b", "juuki= 0x9283 0x5668", "juusatsu= 0x9283 0x6bba", "oji1= 0x53d4 0x7236", "shukufu= 0x53d4 0x7236", "ojisan1= 0x53d4 0x7236 0x3055 0x3093", "oba1= 0x53d4 0x6bcd", "shukubo= 0x53d4 0x6bcd", "obasan1= 0x53d4 0x6bcd 0x3055 0x3093", "yado= 0x5bbf", "yadosu= 0x5bbf 0x3059", "yadoru= 0x5bbf 0x308b", "yadoya= 0x5bbf 0x5c4b", "shukudai= 0x5bbf 0x984c", "shukuteki= 0x5bbf 0x6575", "shukuhaku= 0x5bbf 0x6cca", "shukubou= 0x5bbf 0x671b", "shukumei= 0x5bbf 0x547d", "shitoyaka= 0x6dd1 0x3084 0x304b", "shukujo= 0x6dd1 0x5973", "shukutoku= 0x6dd1 0x5fb3", "iwai= 0x795d 0x3044", "iwau= 0x795d 0x3046", "shukuga= 0x795d 0x8cc0", "shuugi= 0x795d 0x5100", "shukuji= 0x795d 0x8f9e", "shukuden= 0x795d 0x96fb", "shukujitsu= 0x795d 0x65e5", "shukuhai= 0x795d 0x676f", "shukufuku= 0x795d 0x798f", "chidimaru= 0x7e2e 0x307e 0x308b", "chidimi= 0x7e2e 0x307f", "chidimu= 0x7e2e 0x3080", "chidimeru= 0x7e2e 0x3081 0x308b", "chidireru= 0x7e2e 0x308c 0x308b", "shukushaku= 0x7e2e 0x5c3a", "shukushou= 0x7e2e 0x5c0f", "shukuzu= 0x7e2e 0x56f3", "shukusei= 0x7c9b 0x6e05", "shukutou= 0x7c9b 0x515a", "juku= 0x587e", "jukusei= 0x587e 0x751f", "tsukuduku= 0x719f", "konasu= 0x719f 0x3059", "ureru1= 0x719f 0x308c 0x308b", "jukugo= 0x719f 0x8a9e", "jukusui= 0x719f 0x7761", "jukuren= 0x719f 0x7df4", "dasu= 0x51fa 0x3059", "deru= 0x51fa 0x308b", "izumotaisha= 0x51fa 0x96f2 0x5927 0x793e", "shutsuen= 0x51fa 0x6f14", "shukka1= 0x51fa 0x706b", "dekasegi= 0x51fa 0x7a3c 0x304e", "shukka2= 0x51fa 0x8377", "deau1= 0x51fa 0x4f1a 0x3046", "dekakeru= 0x51fa 0x639b 0x3051 0x308b", "shukkan= 0x51fa 0x68fa", "shutsugan= 0x51fa 0x9858", "shukkin= 0x51fa 0x52e4", "demukae= 0x51fa 0x8fce 0x3048", "shukketsu1= 0x51fa 0x6b20", "shukketsu2= 0x51fa 0x8840", "shutsugen= 0x51fa 0x73fe", "deguchi= 0x51fa 0x53e3", "deau2= 0x51fa 0x5408 0x3046", "shukkoku= 0x51fa 0x56fd", "shutsugoku= 0x51fa 0x7344", "shussan= 0x51fa 0x7523", "shutsujou= 0x51fa 0x5834", "shusshin= 0x51fa 0x8eab", "shusse= 0x51fa 0x4e16", "shussei1= 0x51fa 0x5f81", "shusshou= 0x51fa 0x751f", "shussei2= 0x51fa 0x751f", "shusseikajou= 0x51fa 0x751f 0x904e 0x5270", "shusseki= 0x51fa 0x5e2d", "demae= 0x51fa 0x524d", "shutsudai= 0x51fa 0x984c", "detarame= 0x51fa 0x9c48 0x76ee", "shucchou= 0x51fa 0x5f35", "shucchoujo= 0x51fa 0x5f35 0x6240", "shuttei= 0x51fa 0x5ef7", "shutten= 0x51fa 0x5178", "demise= 0x51fa 0x5e97", "shuttou= 0x51fa 0x982d", "deiri= 0x51fa 0x5165 0x308a", "deiriguchi1= 0x51fa 0x5165 0x308a 0x53e3", "deiriguchi2= 0x51fa 0x5165 0x53e3", "suitou1= 0x51fa 0x7d0d", "shuppatsu= 0x51fa 0x767a", "shuppatsuten= 0x51fa 0x767a 0x70b9", "shuppan1= 0x51fa 0x5e06", "shuppan2= 0x51fa 0x7248", "shuppansha= 0x51fa 0x7248 0x793e", "shuppin= 0x51fa 0x54c1", "shutsubotsu= 0x51fa 0x6ca1", "shuppon= 0x51fa 0x5954", "dekiru= 0x51fa 0x6765 0x308b", "dekirudake= 0x51fa 0x6765 0x308b 0x3060 0x3051", "dekigoto= 0x51fa 0x6765 0x4e8b", "dekiagari= 0x51fa 0x6765 0x4e0a 0x304c 0x308a", "dekiagaru= 0x51fa 0x6765 0x4e0a 0x304c 0x308b", "shutsuryoku= 0x51fa 0x529b", "jutsu= 0x8853", "jutsugo= 0x8853 0x8a9e", "jussaku= 0x8853 0x7b56", "noberu2= 0x8ff0 0x3079 0x308b", "jukkai= 0x8ff0 0x61d0", "shun= 0x4fca", "shunei= 0x4fca 0x82f1", "shunketsu= 0x4fca 0x5091", "shunsai= 0x4fca 0x624d", "shunshuu= 0x4fca 0x79c0", "shunbin= 0x4fca 0x654f", "haru1= 0x6625", "shunkashuutou= 0x6625 0x590f 0x79cb 0x51ac", "shunga= 0x6625 0x753b", "shunjuu= 0x6625 0x79cb", "shunshou= 0x6625 0x5bb5", "shuntou= 0x6625 0x95d8", "shunbun= 0x6625 0x5206", "shunbunnohi= 0x6625 0x5206 0x306e 0x65e5", "matataku= 0x77ac 0x304f", "shunkan= 0x77ac 0x9593", "shunkoku= 0x77ac 0x523b", "shunji= 0x77ac 0x6642", "jun1= 0x51c6", "juni1= 0x51c6 0x5c09", "junkan= 0x5faa 0x74b0", "jun2= 0x65ec", "tatetsuku= 0x696f 0x7a81 0x304f", "junkyousha= 0x6b89 0x6559 0x8005", "junkoku= 0x6b89 0x56fd", "junshi1= 0x6b89 0x6b7b", "junshoku1= 0x6b89 0x8077", "junnan= 0x6b89 0x96e3", "jun3= 0x6e96", "nazoraeru= 0x6e96 0x3048 0x308b", "junkyuu= 0x6e96 0x6025", "junkyo= 0x6e96 0x62e0", "junkesshou= 0x6e96 0x6c7a 0x52dd", "junbi= 0x6e96 0x5099", "uruoi= 0x6f64 0x3044", "uruou= 0x6f64 0x3046", "uruosu= 0x6f64 0x3059", "urumu= 0x6f64 0x3080", "junkatsuyu= 0x6f64 0x6ed1 0x6cb9", "junshoku2= 0x6f64 0x98fe", "junshoku3= 0x6f64 0x8272", "tate2= 0x76fe", "juneki= 0x7d14 0x76ca", "junketsu= 0x7d14 0x6f54", "junjou= 0x7d14 0x60c5", "junsui= 0x7d14 0x7c8b", "junsuibaiyou= 0x7d14 0x7c8b 0x57f9 0x990a", "junnihonfuu= 0x7d14 0x65e5 0x672c 0x98a8", "junbungaku= 0x7d14 0x6587 0x5b66", "junmou= 0x7d14 0x6bdb", "meguriau= 0x5de1 0x308a 0x4f1a 0x3046", "meguru= 0x5de1 0x308b", "junkai= 0x5de1 0x56de", "jungyou= 0x5de1 0x696d", "junkou= 0x5de1 0x822a", "junsa= 0x5de1 0x67fb", "junshi2= 0x5de1 0x8996", "junshitei= 0x5de1 0x8996 0x8247", "junrei= 0x5de1 0x793c", "junshu= 0x9075 0x5b88", "junpou1= 0x9075 0x5949", "junpou2= 0x9075 0x6cd5", "jun4= 0x9806", "junjunni= 0x9806 0x3005 0x306b", "juni2= 0x9806 0x4f4d", "junnou= 0x9806 0x5fdc", "junjo= 0x9806 0x5e8f", "junchou= 0x9806 0x8abf", "junban= 0x9806 0x756a", "junro= 0x9806 0x8def", "shokei= 0x51e6 0x5211", "shojo= 0x51e6 0x5973", "shojomaku= 0x51e6 0x5973 0x819c", "shochi= 0x51e6 0x7f6e", "shobatsu= 0x51e6 0x7f70", "shobun= 0x51e6 0x5206", "shori= 0x51e6 0x7406", "hatsu1= 0x521d", "hajime2= 0x521d 0x3081", "hajimete= 0x521d 0x3081 0x3066", "someru1= 0x521d 0x3081 0x308b", "shoen= 0x521d 0x6f14", "shoka1= 0x521d 0x590f", "shoki1= 0x521d 0x671f", "shokyuu= 0x521d 0x7d1a", "hatsumoude= 0x521d 0x8a63 0x3067", "shoshin1= 0x521d 0x5fc3", "hatsuyuki= 0x521d 0x96ea", "shonichi= 0x521d 0x65e5", "shoninkyuu= 0x521d 0x4efb 0x7d66", "shohan= 0x521d 0x7248", "shoho= 0x521d 0x6b69", "hatsuyume= 0x521d 0x5922", "hatsukoi= 0x521d 0x604b", "tokoro= 0x6240", "tokorodokoro= 0x6240 0x3005", "tokoroga= 0x6240 0x304c", "tokorode= 0x6240 0x3067", "sei1= 0x6240 0x70ba", "iwayuru= 0x6240 0x8b02", "shokatsu= 0x6240 0x8f44", "shozaichi= 0x6240 0x5728 0x5730", "shoshin2= 0x6240 0x4fe1", "shozoku= 0x6240 0x5c5e", "shotai= 0x6240 0x5e2f", "shochou= 0x6240 0x9577", "shotoku= 0x6240 0x5f97", "shotokuzei= 0x6240 0x5f97 0x7a0e", "shoyuu= 0x6240 0x6709", "atsui2= 0x6691 0x3044", "atsusa2= 0x6691 0x3055", "shoki2= 0x6691 0x6c17", "atsukurushii= 0x6691 0x82e6 0x3057 0x3044", "shochuu= 0x6691 0x4e2d", "shochuumimai1= 0x6691 0x4e2d 0x898b 0x821e", "shochuumimai2= 0x6691 0x4e2d 0x898b 0x821e 0x3044", "shochuuukagai= 0x6691 0x4e2d 0x4f3a 0x3044", "nagisa= 0x6e1a", "shoshi= 0x5eb6 0x5b50", "shomin= 0x5eb6 0x6c11", "shominteki= 0x5eb6 0x6c11 0x7684", "shomu= 0x5eb6 0x52d9", "shomuka= 0x5eb6 0x52d9 0x8ab2", "o1= 0x7dd2", "shosen= 0x7dd2 0x6226", "shoron= 0x7dd2 0x8ad6", "shomei1= 0x7f72 0x540d", "kakikotoba= 0x66f8 0x304d 0x8a00 0x8449", "kakitori1= 0x66f8 0x304d 0x53d6 0x308a", "kakitoru= 0x66f8 0x304d 0x53d6 0x308b", "kakizome= 0x66f8 0x304d 0x521d 0x3081", "kakinaosu= 0x66f8 0x304d 0x76f4 0x3059", "kakimonodukue= 0x66f8 0x304d 0x7269 0x673a", "kakikata= 0x66f8 0x304d 0x65b9", "kaku7= 0x66f8 0x304f", "shoka2= 0x66f8 0x67b6", "shokan= 0x66f8 0x7c21", "shoki3= 0x66f8 0x8a18", "shosai= 0x66f8 0x658e", "shoshigaku= 0x66f8 0x8a8c 0x5b66", "kakitori2= 0x66f8 0x53d6", "shoseki= 0x66f8 0x7c4d", "shoten= 0x66f8 0x5e97", "shodou= 0x66f8 0x9053", "shohyou= 0x66f8 0x8a55", "shomotsu= 0x66f8 0x7269", "shomei2= 0x66f8 0x540d", "kakitome= 0x66f8 0x7559", "shorui= 0x66f8 0x985e", "sho= 0x8af8", "shokun= 0x8af8 0x541b", "shokou= 0x8af8 0x4faf", "shokoku= 0x8af8 0x56fd", "shoji= 0x8af8 0x4e8b", "shosetsu= 0x8af8 0x8aac", "shotou= 0x8af8 0x5cf6", "tasukaru= 0x52a9 0x304b 0x308b", "tasukeru= 0x52a9 0x3051 0x308b", "tasukeau= 0x52a9 0x3051 0x5408 0x3046", "jokyouju= 0x52a9 0x6559 0x6388", "jogen= 0x52a9 0x8a00", "josanpu= 0x52a9 0x7523 0x5a66", "joshi1= 0x52a9 0x8a5e", "joshu= 0x52a9 0x624b", "joryoku= 0x52a9 0x529b", "jo= 0x53d9", "jokei= 0x53d9 0x666f", "jojishi= 0x53d9 0x4e8b 0x8a69", "jojutsu= 0x53d9 0x8ff0", "jojoushi= 0x53d9 0x60c5 0x8a69", "onna= 0x5973", "onnanoko= 0x5973 0x306e 0x5b50", "onnanohito= 0x5973 0x306e 0x4eba", "onnarashii= 0x5973 0x3089 0x3057 0x3044", "joi= 0x5973 0x533b", "joou= 0x5973 0x738b", "joouheika= 0x5973 0x738b 0x965b 0x4e0b", "joshi2= 0x5973 0x53f2", "joshi3= 0x5973 0x5b50", "joshuu= 0x5973 0x56da", "josei= 0x5973 0x6027", "joseiteki= 0x5973 0x6027 0x7684", "jochuu= 0x5973 0x4e2d", "nyoubou= 0x5973 0x623f", "joyuu= 0x5973 0x512a", "tsuide2= 0x5e8f 0x3067", "tsuideni= 0x5e8f 0x3067 0x306b", "jokyoku= 0x5e8f 0x66f2", "josetsu= 0x5e8f 0x8aac", "jobun= 0x5e8f 0x6587", "jomaku1= 0x5e8f 0x5e55", "joron= 0x5e8f 0x8ad6", "jojoni1= 0x5f90 0x3005 0x306b", "jokou= 0x5f90 0x884c", "sorosoro= 0x5f90 0x5f90", "jojoni2= 0x5f90 0x5f90 0x306b", "joho= 0x5f90 0x6b69", "nozoku1= 0x9664 0x304f", "jogai= 0x9664 0x5916", "joseki= 0x9664 0x7c4d", "jomaku2= 0x9664 0x5e55", "jomei= 0x9664 0x540d", "kizu= 0x50b7", "itamu1= 0x50b7 0x3080", "itameru1= 0x50b7 0x3081 0x308b", "shougai1= 0x50b7 0x5bb3", "kizuato= 0x50b7 0x8de1", "kizutsuku= 0x50b7 0x4ed8 0x304f", "kizutsukeru= 0x50b7 0x4ed8 0x3051 0x308b", "tsugunau= 0x511f 0x3046", "kachi2= 0x52dd 0x3061", "kachikoshi= 0x52dd 0x3061 0x8d8a 0x3057", "kachihokoru= 0x52dd 0x3061 0x8a87 0x308b", "kachitoosu= 0x52dd 0x3061 0x901a 0x3059", "katsu2= 0x52dd 0x3064", "masaru= 0x52dd 0x308b", "shousha1= 0x52dd 0x8005", "katte= 0x52dd 0x624b", "shouso= 0x52dd 0x8a34", "shouhai= 0x52dd 0x6557", "shoubu1= 0x52dd 0x8ca0", "shouri= 0x52dd 0x5229", "shourisha= 0x52dd 0x5229 0x8005", "shou1= 0x5320", "masu1= 0x5347", "meshiagaru= 0x53ec 0x3057 0x4e0a 0x304c 0x308b", "mesu2= 0x53ec 0x3059", "shoukan= 0x53ec 0x559a", "shoushuu= 0x53ec 0x96c6", "akinau= 0x5546 0x3046", "shougyou= 0x5546 0x696d", "shoukou1= 0x5546 0x5de5", "shoukou2= 0x5546 0x6e2f", "shoukon= 0x5546 0x9b42", "shousha2= 0x5546 0x793e", "shounin1= 0x5546 0x4eba", "shoudan= 0x5546 0x8ac7", "shouten1= 0x5546 0x5e97", "shoubai= 0x5546 0x58f2", "shouhyou= 0x5546 0x6a19", "shouhin1= 0x5546 0x54c1", "shouka1= 0x5531 0x6b4c", "katsute= 0x5617 0x3066", "shougakukin= 0x5968 0x5b66 0x91d1", "shougakusei1= 0x5968 0x5b66 0x751f", "shourei= 0x5968 0x52b1", "yoi1= 0x5bb5", "yoippari= 0x5bb5 0x3063 0x5f35 0x308a", "yoinokuchi= 0x5bb5 0x306e 0x53e3", "yoigoshi= 0x5bb5 0x8d8a 0x3057", "shougi= 0x5c06 0x68cb", "shougidaoshi= 0x5c06 0x68cb 0x5012 0x3057", "shougiban= 0x5c06 0x68cb 0x76e4", "shougun= 0x5c06 0x8ecd", "shoukou3= 0x5c06 0x6821", "shourai= 0x5c06 0x6765", "chiisai= 0x5c0f 0x3055 0x3044", "shoui= 0x5c0f 0x5c09", "kosame= 0x5c0f 0x96e8", "koya= 0x5c0f 0x5c4b", "boya= 0x5c0f 0x706b", "shougakkou= 0x5c0f 0x5b66 0x6821", "shougakusei2= 0x5c0f 0x5b66 0x751f", "koushi7= 0x5c0f 0x725b", "kogata= 0x5c0f 0x578b", "kodukai= 0x5c0f 0x9063 0x3044", "kodukaisen= 0x5c0f 0x9063 0x3044 0x92ad", "kogoto= 0x5c0f 0x8a00", "shoukou4= 0x5c0f 0x5eb7", "kozara= 0x5c0f 0x76bf", "koyama= 0x5c0f 0x5c71", "koyubi= 0x5c0f 0x6307", "koeda= 0x5c0f 0x679d", "shounika= 0x5c0f 0x5150 0x79d1", "shounikai= 0x5c0f 0x5150 0x79d1 0x533b", "shounimahi= 0x5c0f 0x5150 0x9ebb 0x75fa", "kobune= 0x5c0f 0x821f", "shoujuu= 0x5c0f 0x9283", "kobito= 0x5c0f 0x4eba", "shounin2= 0x5c0f 0x4eba", "shousuu1= 0x5c0f 0x6570", "shousuuten= 0x5c0f 0x6570 0x70b9", "koishi= 0x5c0f 0x77f3", "kogitte= 0x5c0f 0x5207 0x624b", "shousetsu= 0x5c0f 0x8aac", "ogawa= 0x5c0f 0x5ddd", "kozeni= 0x5c0f 0x92ad", "kozou= 0x5c0f 0x50e7", "kotori= 0x5c0f 0x9ce5", "kogatana= 0x5c0f 0x5200", "azuki= 0x5c0f 0x8c46", "kouri1= 0x5c0f 0x58f2", "kouri2= 0x5c0f 0x58f2 0x308a", "kouriten1= 0x5c0f 0x58f2 0x308a 0x5e97", "kouriten2= 0x5c0f 0x58f2 0x5e97", "komugi= 0x5c0f 0x9ea6", "komugiko= 0x5c0f 0x9ea6 0x7c89", "ojisan2= 0x5c0f 0x7236 0x3055 0x3093", "komoji= 0x5c0f 0x6587 0x5b57", "shouben= 0x5c0f 0x4fbf", "obasan2= 0x5c0f 0x6bcd 0x3055 0x3093", "kodutsumi1= 0x5c0f 0x5305", "kodutsumi2= 0x5c0f 0x5305 0x307f", "kohitsuji2= 0x5c0f 0x7f8a", "shouryou1= 0x5c0f 0x91cf", "shoushou= 0x5c11 0x3005", "sukoshi= 0x5c11 0x3057", "sukoshizutsu= 0x5c11 0x3057 0x305a 0x3064", "sukoshimo= 0x5c11 0x3057 0x3082", "sukunai= 0x5c11 0x306a 0x3044", "sukunakarazu= 0x5c11 0x306a 0x304b 0x3089 0x305a", "sukunakutomo= 0x5c11 0x306a 0x304f 0x3068 0x3082", "shoukei= 0x5c11 0x61a9", "shousa= 0x5c11 0x4f50", "shoujo= 0x5c11 0x5973", "shousuu2= 0x5c11 0x6570", "shounen= 0x5c11 0x5e74", "shounenhou= 0x5c11 0x5e74 0x6cd5", "shouryou2= 0x5c11 0x91cf", "nao= 0x5c1a", "naosara= 0x5c1a 0x66f4", "shousou1= 0x5c1a 0x65e9", "shoubu2= 0x5c1a 0x6b66", "toko1= 0x5e8a", "yuka= 0x5e8a", "tokonoma= 0x5e8a 0x306e 0x9593", "tokoya= 0x5e8a 0x5c4b", "yukaita= 0x5e8a 0x677f", "uketamawaru= 0x627f 0x308b", "shoudaku= 0x627f 0x8afe", "shouchi= 0x627f 0x77e5", "shounin3= 0x627f 0x8a8d", "shoufuku= 0x627f 0x670d", "shouhon= 0x6284 0x672c", "shouyaku= 0x6284 0x8a33", "shouroku= 0x6284 0x9332", "manekineko= 0x62db 0x304d 0x732b", "maneku= 0x62db 0x304f", "shoutai1= 0x62db 0x5f85", "shoutaijou= 0x62db 0x5f85 0x72b6", "tenohira= 0x638c", "shouaku= 0x638c 0x63e1", "shouchuu1= 0x638c 0x4e2d", "shouchuunotama= 0x638c 0x4e2d 0x306e 0x7389", "noboru1= 0x6607 0x308b", "shoukaku= 0x6607 0x683c", "shoukyuu1= 0x6607 0x7d1a", "shoukyuu2= 0x6607 0x7d66", "shoushin= 0x6607 0x9032", "shouwa= 0x662d 0x548c", "shouwanenkan= 0x662d 0x548c 0x5e74 0x9593", "shouka2= 0x6676 0x5316", "matsu1= 0x677e", "matsubara= 0x677e 0x539f", "matsubayashi= 0x677e 0x6797", "numa= 0x6cbc", "shoutaku= 0x6cbc 0x6ca2", "numachi= 0x6cbc 0x5730", "numata= 0x6cbc 0x7530", "kieru= 0x6d88 0x3048 0x308b", "keshigomu= 0x6d88 0x3057 0x30b4 0x30e0", "kesu= 0x6d88 0x3059", "keshiin= 0x6d88 0x5370", "shouka3= 0x6d88 0x5316", "shouka4= 0x6d88 0x706b", "shoukaki= 0x6d88 0x706b 0x5668", "shoukasen= 0x6d88 0x706b 0x6813", "shoukyokuteki= 0x6d88 0x6975 0x7684", "shousoku= 0x6d88 0x606f", "shoutou= 0x6d88 0x706f", "shoudoku= 0x6d88 0x6bd2", "shouhi= 0x6d88 0x8cbb", "shouhisha= 0x6d88 0x8cbb 0x8005", "shoubou= 0x6d88 0x9632", "shoubousha= 0x6d88 0x9632 0x8eca", "shoubousho= 0x6d88 0x9632 0x7f72", "shoumetsu= 0x6d88 0x6ec5", "shoumou= 0x6d88 0x8017", "yakisoba1= 0x713c 0x304d 0x305d 0x3070", "yakimochi1= 0x713c 0x304d 0x3082 0x3061", "yakiimo1= 0x713c 0x304d 0x828b", "yakitori1= 0x713c 0x304d 0x9ce5", "yakiniku1= 0x713c 0x304d 0x8089", "yaku1= 0x713c 0x304f", "yakeru= 0x713c 0x3051 0x308b", "yakisoba2= 0x713c 0x305d 0x3070", "yakimochi2= 0x713c 0x3082 0x3061", "yakiimo2= 0x713c 0x828b", "shouchuu2= 0x713c 0x914e", "yakitori2= 0x713c 0x9ce5", "yakiniku2= 0x713c 0x8089", "kogasu= 0x7126 0x304c 0x3059", "kogareru= 0x7126 0x304c 0x308c 0x308b", "kogeru= 0x7126 0x3052 0x308b", "aseru1= 0x7126 0x308b", "shousou2= 0x7126 0x71e5", "shouten2= 0x7126 0x70b9", "shounetsujigoku= 0x7126 0x71b1 0x5730 0x7344", "shouryo= 0x7126 0x616e", "terasu= 0x7167 0x3089 0x3059", "teru= 0x7167 0x308b", "tereru= 0x7167 0x308c 0x308b", "shoukai1= 0x7167 0x4f1a", "shoumei1= 0x7167 0x660e", "shou2= 0x75c7", "shoukou5= 0x75c7 0x5019", "shoujou= 0x75c7 0x72b6", "habuku= 0x7701 0x304f", "kaerimiru2= 0x7701 0x307f 0x308b", "shouryaku= 0x7701 0x7565", "shouen= 0x785d 0x7159", "shousan1= 0x785d 0x9178", "shouseki= 0x785d 0x77f3", "shou3= 0x79f0", "shousuru= 0x79f0 0x3059 0x308b", "shougou= 0x79f0 0x53f7", "shou4= 0x7ae0", "warai= 0x7b11 0x3044", "waraigoe= 0x7b11 0x3044 0x58f0", "warau= 0x7b11 0x3046", "emu= 0x7b11 0x3080", "egao= 0x7b11 0x9854", "shoukai2= 0x7d39 0x4ecb", "shouzouga= 0x8096 0x50cf 0x753b", "shougeki= 0x885d 0x6483", "shoudou= 0x885d 0x52d5", "shoudoukoui= 0x885d 0x52d5 0x884c 0x70ba", "shoutotsu= 0x885d 0x7a81", "shouko= 0x8a3c 0x62e0", "shouken= 0x8a3c 0x5238", "shougen= 0x8a3c 0x8a00", "shousho1= 0x8a3c 0x66f8", "shounin4= 0x8a3c 0x4eba", "shouninkanmon= 0x8a3c 0x4eba 0x559a 0x554f", "shoumei2= 0x8a3c 0x660e", "mikotonori= 0x8a54", "shousho2= 0x8a54 0x66f8", "shouchoku= 0x8a54 0x52c5", "kuwashii= 0x8a73 0x3057 0x3044", "shousai= 0x8a73 0x7d30", "shoujutsu= 0x8a73 0x8ff0", "shouhou= 0x8a73 0x5831", "shou5= 0x8c61", "zou1= 0x8c61", "zouge= 0x8c61 0x7259", "zougenotou= 0x8c61 0x7259 0x306e 0x5854", "shouchou= 0x8c61 0x5fb4", "shou6= 0x8cde", "shoukin= 0x8cde 0x91d1", "shousan2= 0x8cde 0x8cdb", "shoubatsu= 0x8cde 0x7f70", "shouhin2= 0x8cde 0x54c1", "shouyo= 0x8cde 0x4e0e", "shouyu= 0x91a4 0x6cb9", "shounyuudou= 0x937e 0x4e73 0x6d1e", "kane2= 0x9418", "shourou= 0x9418 0x697c", "sawaru1= 0x969c 0x308b", "shougai2= 0x969c 0x5bb3", "shouji= 0x969c 0x5b50", "shouheki= 0x969c 0x58c1", "ue= 0x4e0a", "kami2= 0x4e0a", "jou1= 0x4e0a", "agari= 0x4e0a 0x304c 0x308a", "agaru2= 0x4e0a 0x304c 0x308b", "ageru2= 0x4e0a 0x3052 0x308b", "nobosu= 0x4e0a 0x3059", "noboseru2= 0x4e0a 0x305b 0x308b", "nobori= 0x4e0a 0x308a", "noborikudari= 0x4e0a 0x308a 0x4e0b 0x308a", "noborizaka= 0x4e0a 0x308a 0x5742", "noboru2= 0x4e0a 0x308b", "joui= 0x4e0a 0x4f4d", "jouei= 0x4e0a 0x6620", "jouen= 0x4e0a 0x6f14", "ueshita= 0x4e0a 0x4e0b", "jouge= 0x4e0a 0x4e0b", "uwamawaru= 0x4e0a 0x56de 0x308b", "joukan= 0x4e0a 0x5dfb", "joukyuu= 0x4e0a 0x7d1a", "joukyou1= 0x4e0a 0x4eac", "joukuu= 0x4e0a 0x7a7a", "jougen1= 0x4e0a 0x5f26", "joushi1= 0x4e0a 0x53f8", "joushi2= 0x4e0a 0x80a2", "jouzu= 0x4e0a 0x624b", "joujutsu= 0x4e0a 0x8ff0", "joujun= 0x4e0a 0x65ec", "joushou= 0x4e0a 0x6607", "uwakuchibiru= 0x4e0a 0x5507", "joushin1= 0x4e0a 0x5507", "joushin2= 0x4e0a 0x7533", "jousou= 0x4e0a 0x5c64", "joutatsu= 0x4e0a 0x9054", "uwagi= 0x4e0a 0x7740", "joutoushiki= 0x4e0a 0x68df 0x5f0f", "joutou= 0x4e0a 0x7b49", "jouhanshin= 0x4e0a 0x534a 0x8eab", "jouhin= 0x4e0a 0x54c1", "jouriku= 0x4e0a 0x9678", "jouryuu= 0x4e0a 0x6d41", "take2= 0x4e08", "joubu= 0x4e08 0x592b", "joujiru= 0x4e57 0x3058 0x308b", "jouzuru= 0x4e57 0x305a 0x308b", "noseru2= 0x4e57 0x305b 0x308b", "nottoru= 0x4e57 0x3063 0x53d6 0x308b", "norikoeru= 0x4e57 0x308a 0x8d8a 0x3048 0x308b", "norikoshi1= 0x4e57 0x308a 0x8d8a 0x3057", "norikosu1= 0x4e57 0x308a 0x8d8a 0x3059", "norimawasu1= 0x4e57 0x308a 0x56de 0x3059", "norikae1= 0x4e57 0x308a 0x63db 0x3048", "norikaeru= 0x4e57 0x308a 0x63db 0x3048 0x308b", "noriki1= 0x4e57 0x308a 0x6c17", "noriori= 0x4e57 0x308a 0x964d 0x308a", "norikomu= 0x4e57 0x308a 0x8fbc 0x3080", "noridasu= 0x4e57 0x308a 0x51fa 0x3059", "noriba1= 0x4e57 0x308a 0x5834", "noriokureru= 0x4e57 0x308a 0x9045 0x308c 0x308b", "norimono1= 0x4e57 0x308a 0x7269", "noru2= 0x4e57 0x308b", "norikoshi2= 0x4e57 0x8d8a 0x3057", "norikosu2= 0x4e57 0x8d8a 0x3059", "norimawasu2= 0x4e57 0x56de 0x3059", "norikae2= 0x4e57 0x63db 0x3048", "noriki2= 0x4e57 0x6c17", "joukyaku= 0x4e57 0x5ba2", "jousha= 0x4e57 0x8eca", "joushaken= 0x4e57 0x8eca 0x5238", "noriba2= 0x4e57 0x5834", "norikumiin= 0x4e57 0x7d44 0x54e1", "norimono2= 0x4e57 0x7269", "jouyousha= 0x4e57 0x7528 0x8eca", "jou2= 0x5197", "jouin1= 0x5197 0x54e1", "jougen2= 0x5197 0x8a00", "joudan= 0x5197 0x8ac7", "jouchou= 0x5197 0x9577", "jouman= 0x5197 0x6f2b", "jou3= 0x5270", "jouin2= 0x5270 0x54e1", "jouyo= 0x5270 0x4f59", "jouyokin= 0x5270 0x4f59 0x91d1", "shiro1= 0x57ce", "joukamachi= 0x57ce 0x4e0b 0x753a", "joukaku= 0x57ce 0x90ed", "joushu1= 0x57ce 0x4e3b", "joumon1= 0x57ce 0x9580", "ba= 0x5834", "bachigai= 0x5834 0x9055 0x3044", "baai= 0x5834 0x5408", "basho= 0x5834 0x6240", "bamen= 0x5834 0x9762", "jou4= 0x58cc", "jou5= 0x5b22", "toko2= 0x5e38", "tsuneni= 0x5e38 0x306b", "jouki1= 0x5e38 0x8ecc", "joushiki= 0x5e38 0x8b58", "joushuu= 0x5e38 0x7fd2", "jouniniin= 0x5e38 0x4efb 0x59d4 0x54e1", "joumu= 0x5e38 0x52d9", "jouyou= 0x5e38 0x7528", "jouyoukanji= 0x5e38 0x7528 0x6f22 0x5b57", "jou6= 0x60c5", "nasake= 0x60c5 0x3051", "nasakenai= 0x60c5 0x3051 0x306a 0x3044", "nasakebukai= 0x60c5 0x3051 0x6df1 0x3044", "joushu2= 0x60c5 0x8da3", "jousho= 0x60c5 0x7dd2", "joucho= 0x60c5 0x7dd2", "jousei1= 0x60c5 0x52e2", "jounetsu= 0x60c5 0x71b1", "jouhou= 0x60c5 0x5831", "jouken= 0x6761 0x4ef6", "joukou= 0x6761 0x9805", "joubun= 0x6761 0x6587", "jouyaku= 0x6761 0x7d04", "jouyakunoteiketsu= 0x6761 0x7d04 0x306e 0x7de0 0x7d50", "jouri= 0x6761 0x7406", "jourei= 0x6761 0x4f8b", "tsue= 0x6756", "jouka= 0x6d44 0x5316", "jou7= 0x72b6", "joukyou2= 0x72b6 0x6cc1", "joutai= 0x72b6 0x614b", "jou8= 0x7573", "tatami= 0x7573", "tatamu= 0x7573 0x3080", "tatamiya= 0x7573 0x5c4b", "tatamigae= 0x7573 0x66ff 0x3048", "tatamiomote= 0x7573 0x8868", "fukasu2= 0x84b8 0x304b 0x3059", "mushiatsui= 0x84b8 0x3057 0x6691 0x3044", "mushikaesu= 0x84b8 0x3057 0x8fd4 0x3059", "musu= 0x84b8 0x3059", "murasu= 0x84b8 0x3089 0x3059", "mureru2= 0x84b8 0x308c 0x308b", "jouki2= 0x84b8 0x6c17", "jouhatsu= 0x84b8 0x767a", "yuzuriwatasu= 0x8b72 0x308a 0x6e21 0x3059", "yuzuru= 0x8b72 0x308b", "jouho= 0x8b72 0x6b69", "kamosu= 0x91b8 0x3059", "jousei2= 0x91b8 0x6210", "jouzousho= 0x91b8 0x9020 0x6240", "jouzai= 0x9320 0x5264", "joumae= 0x9320 0x524d", "shokutaku1= 0x5631 0x8a17", "shokubou= 0x5631 0x671b", "kazari= 0x98fe 0x308a", "kazarike= 0x98fe 0x308a 0x6c17", "kazaritsuke= 0x98fe 0x308a 0x4ed8 0x3051", "kazaru= 0x98fe 0x308b", "nuguu= 0x62ed 0x3046", "fuku1= 0x62ed 0x304f", "ueru2= 0x690d 0x3048 0x308b", "uwaru= 0x690d 0x308f 0x308b", "shokubutsu= 0x690d 0x7269", "shokubutsuen= 0x690d 0x7269 0x5712", "shokubutsuseishibou= 0x690d 0x7269 0x6027 0x8102 0x80aa", "shokuminchi= 0x690d 0x6c11 0x5730", "ueki= 0x690d 0x6728", "uekibachi= 0x690d 0x6728 0x9262", "fueru1= 0x6b96 0x3048 0x308b", "fuyasu1= 0x6b96 0x3084 0x3059", "oru2= 0x7e54 0x308b", "shokki1= 0x7e54 0x6a5f", "orimono= 0x7e54 0x7269", "shoku= 0x8077", "shokuin= 0x8077 0x54e1", "shokugyou= 0x8077 0x696d", "shokuba= 0x8077 0x5834", "shokunin= 0x8077 0x4eba", "shokumu= 0x8077 0x52d9", "shokureki= 0x8077 0x6b74", "iro= 0x8272", "iroiro= 0x8272 0x3005", "ironna= 0x8272 0x3093 0x306a", "iroka= 0x8272 0x9999", "shikisai= 0x8272 0x5f69", "irogami= 0x8272 0x7d19", "shikishi= 0x8272 0x7d19", "shikimou= 0x8272 0x76f2", "sawaru2= 0x89e6 0x308b", "fureru= 0x89e6 0x308c 0x308b", "fureai= 0x89e6 0x308c 0x5408 0x3044", "fureau= 0x89e6 0x308c 0x5408 0x3046", "shokkaku= 0x89e6 0x899a", "shokubai= 0x89e6 0x5a92", "shokubaisayou= 0x89e6 0x5a92 0x4f5c 0x7528", "kuichigai1= 0x98df 0x3044 0x9055 0x3044", "kuichigau1= 0x98df 0x3044 0x9055 0x3046", "kuisagaru= 0x98df 0x3044 0x4e0b 0x304c 0x308b", "kuikomu= 0x98df 0x3044 0x8fbc 0x3080", "kuitomeru1= 0x98df 0x3044 0x6b62 0x3081 0x308b", "kuu= 0x98df 0x3046", "taberu= 0x98df 0x3079 0x308b", "tabesugiru= 0x98df 0x3079 0x904e 0x304e 0x308b", "tabemono= 0x98df 0x3079 0x7269", "hamidasu= 0x98df 0x307f 0x51fa 0x3059", "hamideru= 0x98df 0x307f 0x51fa 0x308b", "kurau= 0x98df 0x3089 0x3046", "shokupan= 0x98df 0x30d1 0x30f3", "kuichigai2= 0x98df 0x9055 0x3044", "kuichigau2= 0x98df 0x9055 0x3046", "shokuen= 0x98df 0x5869", "shokki2= 0x98df 0x5668", "kuitomeru2= 0x98df 0x6b62 0x3081 0x308b", "shokuji= 0x98df 0x4e8b", "shokutaku2= 0x98df 0x5353", "shokuchuudoku= 0x98df 0x4e2d 0x6bd2", "shokudou= 0x98df 0x5802", "shokuhi= 0x98df 0x8cbb", "shokuhin= 0x98df 0x54c1", "shokumotsu= 0x98df 0x7269", "shokuyoku= 0x98df 0x6b32", "shokuryou1= 0x98df 0x6599", "shokuryouhin= 0x98df 0x6599 0x54c1", "shokuryou2= 0x98df 0x7ce7", "mushibamu= 0x8755 0x3080", "hazukashimeru= 0x8fb1 0x3081 0x308b", "shiri= 0x5c3b", "shippo= 0x5c3b 0x5c3e", "nobasu2= 0x4f38 0x3070 0x3059", "nobi= 0x4f38 0x3073", "nobiyaka= 0x4f38 0x3073 0x3084 0x304b", "nobiru2= 0x4f38 0x3073 0x308b", "nobinobi= 0x4f38 0x3073 0x4f38 0x3073", "nobinayamu= 0x4f38 0x3073 0x60a9 0x3080", "shinshuku= 0x4f38 0x7e2e", "shinchou1= 0x4f38 0x5f35", "shin1= 0x4fe1", "makoto1= 0x4fe1", "shinjiru= 0x4fe1 0x3058 0x308b", "shinzuru= 0x4fe1 0x305a 0x308b", "shinkou1= 0x4fe1 0x4ef0", "shingou= 0x4fe1 0x53f7", "shinja= 0x4fe1 0x8005", "shinjou1= 0x4fe1 0x6761", "shintaku= 0x4fe1 0x8a17", "shinnin= 0x4fe1 0x4efb", "shinnen1= 0x4fe1 0x5ff5", "shinpou= 0x4fe1 0x5949", "shinyou= 0x4fe1 0x7528", "shinrai= 0x4fe1 0x983c", "okasu1= 0x4fb5 0x3059", "shingai= 0x4fb5 0x5bb3", "shinshoku1= 0x4fb5 0x98df", "shinnyuu1= 0x4fb5 0x5165", "shinryaku= 0x4fb5 0x7565", "kuchibiru= 0x5507", "shinon= 0x5507 0x97f3", "nekasu= 0x5bdd 0x304b 0x3059", "nekaseru= 0x5bdd 0x304b 0x305b 0x308b", "nebokeru= 0x5bdd 0x307c 0x3051 0x308b", "neru1= 0x5bdd 0x308b", "nesugosu= 0x5bdd 0x904e 0x3054 0x3059", "nemaki1= 0x5bdd 0x5dfb", "nemaki2= 0x5bdd 0x5dfb 0x304d", "nemaki3= 0x5bdd 0x9593 0x7740", "negao= 0x5bdd 0x9854", "negurushii= 0x5bdd 0x82e6 0x3057 0x3044", "shingu= 0x5bdd 0x5177", "shingurui= 0x5bdd 0x5177 0x985e", "negoto= 0x5bdd 0x8a00", "shinshitsu= 0x5bdd 0x5ba4", "nedoko= 0x5bdd 0x5e8a", "nezou= 0x5bdd 0x76f8", "neiki= 0x5bdd 0x606f", "shindai= 0x5bdd 0x53f0", "nekorobu= 0x5bdd 0x8ee2 0x3076", "netsuki= 0x5bdd 0x4ed8 0x304d", "netsuku= 0x5bdd 0x4ed8 0x304f", "negaeri= 0x5bdd 0x8fd4 0x308a", "negaeru= 0x5bdd 0x8fd4 0x308b", "nebou= 0x5bdd 0x574a", "nebie= 0x5bdd 0x51b7 0x3048", "shingi1= 0x5be9 0x8b70", "shinsa= 0x5be9 0x67fb", "shinban= 0x5be9 0x5224", "shinpan= 0x5be9 0x5224", "shinmon= 0x5be9 0x554f", "kokoro= 0x5fc3", "shin2= 0x5fc3", "kokorogake1= 0x5fc3 0x304c 0x3051", "kokoronokinsen= 0x5fc3 0x306e 0x7434 0x7dda", "kokoronokate= 0x5fc3 0x306e 0x7ce7", "kokorogake2= 0x5fc3 0x639b 0x3051", "kokorogakeru= 0x5fc3 0x639b 0x3051 0x308b", "shinkyou= 0x5fc3 0x5883", "kokoroduyoi= 0x5fc3 0x5f37 0x3044", "kokorodukai= 0x5fc3 0x9063 0x3044", "kokorogamae= 0x5fc3 0x69cb 0x3048", "kokorobosoi= 0x5fc3 0x7d30 0x3044", "shinshinmoujaku= 0x5fc3 0x795e 0x8017 0x5f31", "shinshinmoujakusha= 0x5fc3 0x795e 0x8017 0x5f31 0x8005", "shinshin= 0x5fc3 0x8eab", "shinsui1= 0x5fc3 0x9154", "shinzui1= 0x5fc3 0x9ac4", "shinzou= 0x5fc3 0x81d3", "kokochi= 0x5fc3 0x5730", "shinjuu= 0x5fc3 0x4e2d", "shinchuu1= 0x5fc3 0x4e2d", "kokoroatari= 0x5fc3 0x5f53 0x305f 0x308a", "kokoroe= 0x5fc3 0x5f97", "kokoroeru= 0x5fc3 0x5f97 0x308b", "shinpai= 0x5fc3 0x914d", "shinpuku1= 0x5fc3 0x670d", "shinbou1= 0x5fc3 0x68d2", "shinri1= 0x5fc3 0x7406", "shinrigaku= 0x5fc3 0x7406 0x5b66", "shinribyousha= 0x5fc3 0x7406 0x63cf 0x5199", "shinrou= 0x5fc3 0x52b4", "tsutsushimibukai= 0x614e 0x307f 0x6df1 0x3044", "tsutsushimu2= 0x614e 0x3080", "shinchou2= 0x614e 0x91cd", "furi1= 0x632f 0x308a", "buri= 0x632f 0x308a", "furigana= 0x632f 0x308a 0x4eee 0x540d", "furimuku= 0x632f 0x308a 0x5411 0x304f", "furikae= 0x632f 0x308a 0x66ff 0x3048", "furikaeru= 0x632f 0x308a 0x8fd4 0x308b", "furu2= 0x632f 0x308b", "furumau= 0x632f 0x308b 0x821e 0x3046", "shinkou2= 0x632f 0x8208", "shindou1= 0x632f 0x52d5", "shinpuku2= 0x632f 0x5e45", "shin3= 0x65b0", "atarashii= 0x65b0 0x3057 0x3044", "arata= 0x65b0 0x305f", "shinei= 0x65b0 0x92ed", "shinme= 0x65b0 0x82bd", "shingakki= 0x65b0 0x5b66 0x671f", "niigataken= 0x65b0 0x6f5f 0x770c", "shinkan1= 0x65b0 0x520a", "shinkansen= 0x65b0 0x5e79 0x7dda", "shingao= 0x65b0 0x9854", "shinki= 0x65b0 0x898f", "shinkyuu1= 0x65b0 0x65e7", "shinkou3= 0x65b0 0x8208", "shinkon= 0x65b0 0x5a5a", "shinkonryokou= 0x65b0 0x5a5a 0x65c5 0x884c", "shinshiki= 0x65b0 0x5f0f", "shinjin= 0x65b0 0x4eba", "shinsei1= 0x65b0 0x5236", "shinsetsu1= 0x65b0 0x8a2d", "shinsetsu2= 0x65b0 0x96ea", "shinsen= 0x65b0 0x9bae", "shinchiku= 0x65b0 0x7bc9", "shinchintaisha= 0x65b0 0x9673 0x4ee3 0x8b1d", "shinnen2= 0x65b0 0x5e74", "shinbun= 0x65b0 0x805e", "shinbunshi= 0x65b0 0x805e 0x7d19", "shinbunsha= 0x65b0 0x805e 0x793e", "shinmai= 0x65b0 0x7c73", "shinryoku= 0x65b0 0x7dd1", "shinroushinpu= 0x65b0 0x90ce 0x65b0 0x5a66", "mori2= 0x68ee", "shinkan2= 0x68ee 0x9591", "shinrin= 0x68ee 0x6797", "hitasu= 0x6d78 0x3059", "hitaru= 0x6d78 0x308b", "shinshutsu1= 0x6d78 0x51fa", "shinjun= 0x6d78 0x6f64", "shinshoku2= 0x6d78 0x98df", "shinsui2= 0x6d78 0x6c34", "shintou1= 0x6d78 0x900f", "fukai1= 0x6df1 0x3044", "fukasa= 0x6df1 0x3055", "fukamaru= 0x6df1 0x307e 0x308b", "fukami= 0x6df1 0x307f", "fukameru= 0x6df1 0x3081 0x308b", "shinkoku1= 0x6df1 0x523b", "shindo1= 0x6df1 0x5ea6", "shinya= 0x6df1 0x591c", "moushiawase= 0x7533 0x3057 0x5408 0x308f 0x305b", "moushikomi1= 0x7533 0x3057 0x8fbc 0x307f", "moushikomu= 0x7533 0x3057 0x8fbc 0x3080", "moushideru= 0x7533 0x3057 0x51fa 0x308b", "moushiageru= 0x7533 0x3057 0x4e0a 0x3052 0x308b", "moushiire= 0x7533 0x3057 0x5165 0x308c", "moushibunnonai= 0x7533 0x3057 0x5206 0x306e 0x306a 0x3044", "moushibunnai= 0x7533 0x3057 0x5206 0x7121 0x3044", "moushiwake= 0x7533 0x3057 0x8a33", "moushiwakearimasen= 0x7533 0x3057 0x8a33 0x3042 0x308a 0x307e 0x305b 0x3093", "moushiwakenai= 0x7533 0x3057 0x8a33 0x306a 0x3044", "mousu= 0x7533 0x3059", "shinkoku2= 0x7533 0x544a", "moushikomi2= 0x7533 0x8fbc", "moushikomi3= 0x7533 0x8fbc 0x307f", "shinsei2= 0x7533 0x8acb", "shin4= 0x771f", "ma2= 0x771f", "makkura= 0x771f 0x3063 0x6697", "makkuro= 0x771f 0x3063 0x9ed2", "massaichuu= 0x771f 0x3063 0x6700 0x4e2d", "massao= 0x771f 0x3063 0x9752", "makka= 0x771f 0x3063 0x8d64", "massaki= 0x771f 0x3063 0x5148", "massugu= 0x771f 0x3063 0x76f4 0x3050", "masshiro= 0x771f 0x3063 0x767d", "shinni= 0x771f 0x306b", "manmaru= 0x771f 0x3093 0x4e38", "mannaka= 0x771f 0x3093 0x4e2d", "shini= 0x771f 0x610f", "shinka1= 0x771f 0x4fa1", "manatsu= 0x771f 0x590f", "shingi2= 0x771f 0x507d", "masaka= 0x771f 0x9006", "shinkuu= 0x771f 0x7a7a", "shinken= 0x771f 0x5263", "shinku1= 0x771f 0x7d05", "mashikaku= 0x771f 0x56db 0x89d2", "mane= 0x771f 0x4f3c", "maneru= 0x771f 0x4f3c 0x308b", "shinjitsu= 0x771f 0x5b9f", "shinju= 0x771f 0x73e0", "shinjuwan= 0x771f 0x73e0 0x6e7e", "magokoro= 0x771f 0x5fc3", "shinzui2= 0x771f 0x9ac4", "shinsou= 0x771f 0x76f8", "mafuyu= 0x771f 0x51ac", "majime= 0x771f 0x9762 0x76ee", "mayonaka= 0x771f 0x591c 0x4e2d", "shinri2= 0x771f 0x7406", "kami3= 0x795e", "shinkan3= 0x795e 0x5b98", "jinguu= 0x795e 0x5bae", "kamiwaza= 0x795e 0x696d", "shinkei= 0x795e 0x7d4c", "jinja= 0x795e 0x793e", "kannushi= 0x795e 0x4e3b", "shinzui3= 0x795e 0x9ac4", "shinsei3= 0x795e 0x8056", "shindou2= 0x795e 0x7ae5", "shintou2= 0x795e 0x9053", "shinpi= 0x795e 0x79d8", "shinpu= 0x795e 0x7236", "kamikaze= 0x795e 0x98a8", "kamisama= 0x795e 0x69d8", "shinwa= 0x795e 0x8a71", "shinshi= 0x7d33 0x58eb", "shinshikyoutei= 0x7d33 0x58eb 0x5354 0x5b9a", "shinshifuku= 0x7d33 0x58eb 0x670d", "shinshiyou= 0x7d33 0x58eb 0x7528", "shinka2= 0x81e3 0x4e0b", "shinmin= 0x81e3 0x6c11", "shin5= 0x82af", "takigi= 0x85aa", "shinsui3= 0x85aa 0x6c34", "shintan= 0x85aa 0x70ad", "oya= 0x89aa", "shitashii= 0x89aa 0x3057 0x3044", "shitashimi= 0x89aa 0x3057 0x307f", "shitashimu= 0x89aa 0x3057 0x3080", "shinai2= 0x89aa 0x611b", "oyakoukou= 0x89aa 0x5b5d 0x884c", "oyako= 0x89aa 0x5b50", "oyayubi= 0x89aa 0x6307", "oyayuzuri= 0x89aa 0x8b72 0x308a", "shinseki= 0x89aa 0x621a", "shinsetsu3= 0x89aa 0x5207", "shinzen= 0x89aa 0x5584", "shinzoku= 0x89aa 0x65cf", "shinten1= 0x89aa 0x5c55", "shinnichi= 0x89aa 0x65e5", "oyafukou= 0x89aa 0x4e0d 0x5b5d", "shinboku= 0x89aa 0x7766", "shinmitsu= 0x89aa 0x5bc6", "shinyuu= 0x89aa 0x53cb", "shinrui= 0x89aa 0x985e", "miru3= 0x8a3a 0x308b", "shinsatsu= 0x8a3a 0x5bdf", "shindan= 0x8a3a 0x65ad", "shinryou= 0x8a3a 0x7642", "shinryousho= 0x8a3a 0x7642 0x6240", "mi3= 0x8eab", "minari= 0x8eab 0x306a 0x308a", "minomawari= 0x8eab 0x306e 0x56de 0x308a", "minoue= 0x8eab 0x306e 0x4e0a", "miyori= 0x8eab 0x5bc4 0x308a", "midika= 0x8eab 0x8fd1", "migaru= 0x8eab 0x8efd", "mimoto= 0x8eab 0x5143", "shinjou2= 0x8eab 0x4e0a", "miburi= 0x8eab 0x632f 0x308a", "miburui= 0x8eab 0x9707 0x3044", "shintai1= 0x8eab 0x4f53", "shinchou3= 0x8eab 0x9577", "minage= 0x8eab 0x6295 0x3052", "miuchi= 0x8eab 0x5185", "mibun= 0x8eab 0x5206", "migara= 0x8eab 0x67c4", "karai= 0x8f9b 0x3044", "tsurai= 0x8f9b 0x3044", "shinku2= 0x8f9b 0x82e6", "karakuchi= 0x8f9b 0x53e3", "shinsan= 0x8f9b 0x9178", "karashi= 0x8f9b 0x5b50", "shinshou= 0x8f9b 0x52dd", "shinbou2= 0x8f9b 0x62b1", "karami= 0x8f9b 0x5473", "susumu= 0x9032 0x3080", "susumeru2= 0x9032 0x3081 0x308b", "shinka3= 0x9032 0x5316", "shingaku= 0x9032 0x5b66", "shinkyuu2= 0x9032 0x7d1a", "shinkou4= 0x9032 0x884c", "shinshutsu2= 0x9032 0x51fa", "shintai2= 0x9032 0x9000", "shintaiukagai= 0x9032 0x9000 0x4f3a 0x3044", "shinchuu2= 0x9032 0x99d0", "shintei= 0x9032 0x5448", "shinten2= 0x9032 0x5c55", "shinnyuu2= 0x9032 0x5165", "shinpo= 0x9032 0x6b69", "shinro= 0x9032 0x8def", "hari= 0x91dd", "harigane= 0x91dd 0x91d1", "furuu1= 0x9707 0x3046", "furueru= 0x9707 0x3048 0x308b", "shinou= 0x9707 0x592e", "shingen= 0x9707 0x6e90", "shinsai= 0x9707 0x707d", "shindo2= 0x9707 0x5ea6", "shindou3= 0x9707 0x52d5", "jin1= 0x4eba", "nin1= 0x4eba", "hito= 0x4eba", "hitobito= 0x4eba 0x3005", "hitodakari= 0x4eba 0x3060 0x304b 0x308a", "jiniteki= 0x4eba 0x70ba 0x7684", "hitochigai= 0x4eba 0x9055 0x3044", "jinei1= 0x4eba 0x5f71", "hitokage= 0x4eba 0x5f71", "jinkaku= 0x4eba 0x683c", "ningen= 0x4eba 0x9593", "ningensei= 0x4eba 0x9593 0x6027", "ningendoushi= 0x4eba 0x9593 0x540c 0x58eb", "ninki1= 0x4eba 0x6c17", "ningyou= 0x4eba 0x5f62", "jinken1= 0x4eba 0x6a29", "jinken2= 0x4eba 0x7d79", "hitomishiri= 0x4eba 0x898b 0x77e5 0x308a", "jinkou1= 0x4eba 0x53e3", "jinkoumitsudo= 0x4eba 0x53e3 0x5bc6 0x5ea6", "jinkou2= 0x4eba 0x5de5", "jinkoushiba= 0x4eba 0x5de5 0x829d", "hitogomi= 0x4eba 0x8fbc 0x307f", "hitosashiyubi= 0x4eba 0x5dee 0x3057 0x6307", "jinzai= 0x4eba 0x6750", "hitogoroshi= 0x4eba 0x6bba 0x3057", "ninjin= 0x4eba 0x53c2", "jinji= 0x4eba 0x4e8b", "jinjika= 0x4eba 0x4e8b 0x8ab2", "jinjifusei= 0x4eba 0x4e8b 0x4e0d 0x7701", "hitojichi= 0x4eba 0x8cea", "hitode1= 0x4eba 0x624b", "jinshu= 0x4eba 0x7a2e", "hitode2= 0x4eba 0x51fa", "ninjou= 0x4eba 0x60c5", "ninzuu= 0x4eba 0x6570", "jinsei= 0x4eba 0x751f", "ninmae= 0x4eba 0x524d", "hitomae= 0x4eba 0x524d", "hitomaede= 0x4eba 0x524d 0x3067", "ninsou= 0x4eba 0x76f8", "jinzou= 0x4eba 0x9020", "jintai= 0x4eba 0x4f53", "hitodoori= 0x4eba 0x901a 0x308a", "jindoushugi= 0x4eba 0x9053 0x4e3b 0x7fa9", "jindouteki= 0x4eba 0x9053 0x7684", "jintoku= 0x4eba 0x5fb3", "ninpu1= 0x4eba 0x592b", "jinbutsu= 0x4eba 0x7269", "jinbunkagaku= 0x4eba 0x6587 0x79d1 0x5b66", "hitogara= 0x4eba 0x67c4", "hitonami= 0x4eba 0x4e26 0x307f", "jinmin= 0x4eba 0x6c11", "jinmei= 0x4eba 0x540d", "hitome2= 0x4eba 0x76ee", "jinrikisha= 0x4eba 0x529b 0x8eca", "jinrin= 0x4eba 0x502b", "jinrui= 0x4eba 0x985e", "jin2= 0x4ec1", "jinai= 0x4ec1 0x611b", "niou2= 0x4ec1 0x738b", "nioumon= 0x4ec1 0x738b 0x9580", "jingi= 0x4ec1 0x7fa9", "jinjutsu= 0x4ec1 0x8853", "ha2= 0x5203", "hasaki= 0x5203 0x5148", "hamono= 0x5203 0x7269", "gomi= 0x5875", "chiri1= 0x5875", "tazuneru1= 0x5c0b 0x306d 0x308b", "tazunebito= 0x5c0b 0x306d 0x4eba", "jinjou= 0x5c0b 0x5e38", "jinmon= 0x5c0b 0x554f", "hanahada= 0x751a 0x3060", "hanahadashii= 0x751a 0x3060 0x3057 0x3044", "jindai= 0x751a 0x5927", "jinroku= 0x751a 0x516d", "tsukasu= 0x5c3d 0x304b 0x3059", "tsukiru= 0x5c3d 0x304d 0x308b", "tsukusu= 0x5c3d 0x304f 0x3059", "jinryoku= 0x5c3d 0x529b", "jinsoku= 0x8fc5 0x901f", "jinrai= 0x8fc5 0x96f7", "jinei2= 0x9663 0x55b6", "jinchi= 0x9663 0x5730", "jintsuu= 0x9663 0x75db", "jinyou= 0x9663 0x5bb9", "su2= 0x9162", "sunomono= 0x9162 0x306e 0x7269", "sakusan= 0x9162 0x9178", "zu= 0x56f3", "zuuzuushii= 0x56f3 0x3005 0x3057 0x3044", "hakaru3= 0x56f3 0x308b", "zukei= 0x56f3 0x5f62", "zushi= 0x56f3 0x793a", "tosho= 0x56f3 0x66f8", "toshokan= 0x56f3 0x66f8 0x9928", "toshoshitsu= 0x56f3 0x66f8 0x5ba4", "zuhyou= 0x56f3 0x8868", "fukikomu= 0x5439 0x304d 0x8fbc 0x3080", "fukidasu= 0x5439 0x304d 0x51fa 0x3059", "fukidemono1= 0x5439 0x304d 0x51fa 0x7269", "fukitobu= 0x5439 0x304d 0x98db 0x3076", "fukidamari= 0x5439 0x304d 0x6e9c 0x307e 0x308a", "fuku2= 0x5439 0x304f", "fukidemono2= 0x5439 0x51fa 0x7269", "fubuki= 0x5439 0x96ea", "tarasu= 0x5782 0x3089 0x3059", "tareru= 0x5782 0x308c 0x308b", "suisen1= 0x5782 0x7dda", "suichoku= 0x5782 0x76f4", "osu2= 0x63a8 0x3059", "suishou1= 0x63a8 0x5968", "suishin= 0x63a8 0x9032", "suisen2= 0x63a8 0x85a6", "suisenjou= 0x63a8 0x85a6 0x72b6", "suisoku= 0x63a8 0x6e2c", "suitei= 0x63a8 0x5b9a", "suiri= 0x63a8 0x7406", "suiryou= 0x63a8 0x91cf", "suiron= 0x63a8 0x8ad6", "suikou1= 0x63a8 0x6572", "mizu= 0x6c34", "suitou2= 0x6c34 0x7a32", "suiei= 0x6c34 0x6cf3", "suion= 0x6c34 0x6e29", "mizugashi= 0x6c34 0x83d3 0x5b50", "suigai= 0x6c34 0x5bb3", "suigyuu= 0x6c34 0x725b", "mizutama= 0x6c34 0x7389", "suigin= 0x6c34 0x9280", "suiginchuu= 0x6c34 0x9280 0x67f1", "suisaiga= 0x6c34 0x5f69 0x753b", "mizugiwa= 0x6c34 0x969b", "suisan= 0x6c34 0x7523", "suishi= 0x6c34 0x6b7b", "suisha= 0x6c34 0x8eca", "mizukusai= 0x6c34 0x81ed 0x3044", "suijun= 0x6c34 0x6e96", "suishou2= 0x6c34 0x6676", "suijou1= 0x6c34 0x4e0a", "suijouki= 0x6c34 0x84b8 0x6c17", "mizuiro= 0x6c34 0x8272", "mizubitashi= 0x6c34 0x6d78 0x3057", "suisei1= 0x6c34 0x661f", "suisen3= 0x6c34 0x4ed9", "suisen4= 0x6c34 0x6d17", "suiso= 0x6c34 0x7d20", "suisou= 0x6c34 0x69fd", "mizumashi= 0x6c34 0x5897 0x3057", "suizokukan= 0x6c34 0x65cf 0x9928", "mizugi= 0x6c34 0x7740", "suichuu= 0x6c34 0x4e2d", "suiteki= 0x6c34 0x6ef4", "suiden= 0x6c34 0x7530", "suitou3= 0x6c34 0x75d8", "suitou4= 0x6c34 0x7b52", "suidou= 0x6c34 0x9053", "suidoukan= 0x6c34 0x9053 0x7ba1", "suidousen= 0x6c34 0x9053 0x6813", "mizuirazu= 0x6c34 0x5165 0x3089 0x305a", "suibaku= 0x6c34 0x7206", "suiban= 0x6c34 0x76e4", "suifu= 0x6c34 0x592b", "suibun= 0x6c34 0x5206", "suihei= 0x6c34 0x5e73", "suiheisen= 0x6c34 0x5e73 0x7dda", "suihou= 0x6c34 0x6ce1", "suibokuga= 0x6c34 0x58a8 0x753b", "suimen= 0x6c34 0x9762", "suiyou= 0x6c34 0x66dc", "suiyoubi= 0x6c34 0x66dc 0x65e5", "suiyousei= 0x6c34 0x6eb6 0x6027", "suiryoku= 0x6c34 0x529b", "suiro= 0x6c34 0x8def", "takidashi1= 0x708a 0x304d 0x51fa 0x3057", "taku1= 0x708a 0x304f", "suiji= 0x708a 0x4e8b", "takidashi2= 0x708a 0x51fa 0x3057", "suihanki= 0x708a 0x98ef 0x5668", "suimin= 0x7761 0x7720", "suiminbusoku= 0x7761 0x7720 0x4e0d 0x8db3", "iki2= 0x7c8b", "suikyou= 0x7c8b 0x72c2", "suijin= 0x7c8b 0x4eba", "otoroeru= 0x8870 0x3048 0x308b", "suijaku= 0x8870 0x5f31", "suibi= 0x8870 0x5fae", "suibou= 0x8870 0x4ea1", "togeru= 0x9042 0x3052 0x308b", "tsuini= 0x9042 0x306b", "suikou2= 0x9042 0x884c", "you1= 0x9154 0x3046", "yopparai= 0x9154 0x3063 0x6255 0x3044", "yopparau= 0x9154 0x3063 0x6255 0x3046", "tsumu2= 0x9318", "suijou2= 0x9318 0x72b6", "zuii= 0x968f 0x610f", "zuiichi= 0x968f 0x4e00", "zuihitsu= 0x968f 0x7b46", "zuibun= 0x968f 0x5206", "mizumizushii= 0x745e 0x3005 0x3057 0x3044", "suukei= 0x5d07 0x656c", "suukou= 0x5d07 0x9ad8", "suuhai= 0x5d07 0x62dd", "kazu= 0x6570", "suu2= 0x6570", "kazoeru= 0x6570 0x3048 0x308b", "suuokunen= 0x6570 0x5104 0x5e74", "suugaku= 0x6570 0x5b66", "suuji= 0x6570 0x5b57", "juzu= 0x6570 0x73e0", "suuseki= 0x6570 0x96bb", "suusekinofune= 0x6570 0x96bb 0x306e 0x8239", "kazuooku= 0x6570 0x591a 0x304f", "suuchi= 0x6570 0x5024", "suubyou= 0x6570 0x79d2", "suuryou= 0x6570 0x91cf", "suujiku= 0x67a2 0x8ef8", "suumitsu= 0x67a2 0x5bc6", "suuyou= 0x67a2 0x8981", "hina= 0x96db", "hiyoko= 0x96db", "hinamatsuri= 0x96db 0x796d", "sueru= 0x636e 0x3048 0x308b", "sueoki= 0x636e 0x3048 0x7f6e 0x304d", "sueoku= 0x636e 0x3048 0x7f6e 0x304f", "suetsukeru= 0x636e 0x3048 0x4ed8 0x3051 0x308b", "sugi2= 0x6749", "suginamiki= 0x6749 0x4e26 0x6728", "suzume= 0x96c0", "suso= 0x88fe", "sumashigao= 0x6f84 0x307e 0x3057 0x9854", "sumasu2= 0x6f84 0x307e 0x3059", "sumikiru= 0x6f84 0x307f 0x5207 0x308b", "sumiwataru= 0x6f84 0x307f 0x6e21 0x308b", "sumu3= 0x6f84 0x3080", "sunka= 0x5bf8 0x6687", "sunzen= 0x5bf8 0x524d", "sundan= 0x5bf8 0x65ad", "sunpyou= 0x5bf8 0x8a55", "sunpou= 0x5bf8 0x6cd5", "yo1= 0x4e16", "yononaka= 0x4e16 0x306e 0x4e2d", "sekai= 0x4e16 0x754c", "sekaishi= 0x4e16 0x754c 0x53f2", "seken= 0x4e16 0x9593", "seiki1= 0x4e16 0x7d00", "seji= 0x4e16 0x8f9e", "seshuu= 0x4e16 0x8972", "sesou= 0x4e16 0x76f8", "setai= 0x4e16 0x5e2f", "sedai= 0x4e16 0x4ee3", "seron= 0x4e16 0x8ad6", "yoron= 0x4e16 0x8ad6", "sewa= 0x4e16 0x8a71", "se1= 0x702c", "setogiwa= 0x702c 0x6238 0x969b", "setonaikai= 0x702c 0x6238 0x5185 0x6d77", "setomono= 0x702c 0x6238 0x7269", "une= 0x755d", "se2= 0x755d", "uneru= 0x755d 0x306d 0x308b", "unema= 0x755d 0x9593", "uneori= 0x755d 0x7e54", "zezehihi= 0x662f 0x3005 0x975e 0x3005", "zesei= 0x662f 0x6b63", "zenin1= 0x662f 0x8a8d", "zehi= 0x662f 0x975e", "zehitomo= 0x662f 0x975e 0x3068 0x3082", "sugoi= 0x51c4 0x3044", "susamajii= 0x51c4 0x307e 0x3058 0x3044", "sei2= 0x5236", "seigen= 0x5236 0x9650", "seigyo= 0x5236 0x5fa1", "seisai= 0x5236 0x88c1", "seisaku1= 0x5236 0x4f5c", "seishi1= 0x5236 0x6b62", "seitei= 0x5236 0x5b9a", "seido= 0x5236 0x5ea6", "seidouki= 0x5236 0x52d5 0x6a5f", "seiha= 0x5236 0x8987", "seifuku1= 0x5236 0x670d", "seiyaku1= 0x5236 0x7d04", "ikioi= 0x52e2 0x3044", "seiryoku1= 0x52e2 0x529b", "sei3= 0x59d3", "seimei1= 0x59d3 0x540d", "seibatsu= 0x5f81 0x4f10", "seifuku2= 0x5f81 0x670d", "seifukusha= 0x5f81 0x670d 0x8005", "sei4= 0x6027", "seikaku1= 0x6027 0x683c", "seikyuu1= 0x6027 0x6025", "seikou1= 0x6027 0x4ea4", "seikou2= 0x6027 0x884c", "seishitsu= 0x6027 0x8cea", "seiteki= 0x6027 0x7684", "seinou= 0x6027 0x80fd", "seibyou= 0x6027 0x75c5", "shoubun= 0x6027 0x5206", "seiheki= 0x6027 0x7656", "seibetsu= 0x6027 0x5225", "seiyoku= 0x6027 0x6b32", "nashitogeru= 0x6210 0x3057 0x9042 0x3052 0x308b", "nasu3= 0x6210 0x3059", "nariyuki1= 0x6210 0x308a 0x884c 0x304d", "naritatsu= 0x6210 0x308a 0x7acb 0x3064", "naru1= 0x6210 0x308b", "narubeku= 0x6210 0x308b 0x3079 0x304f", "seika1= 0x6210 0x679c", "seiku= 0x6210 0x53e5", "seikou3= 0x6210 0x529f", "nariyuki2= 0x6210 0x884c 0x304d", "seisan1= 0x6210 0x7b97", "jouju= 0x6210 0x5c31", "seijuku= 0x6210 0x719f", "seijin1= 0x6210 0x4eba", "seiseki= 0x6210 0x7e3e", "seisekihyou= 0x6210 0x7e3e 0x8868", "seichou1= 0x6210 0x9577", "seichouritsu= 0x6210 0x9577 0x7387", "naruhodo= 0x6210 0x7a0b", "seinen1= 0x6210 0x5e74", "seibun= 0x6210 0x5206", "seiritsu= 0x6210 0x7acb", "matsurigoto= 0x653f", "seikai1= 0x653f 0x754c", "seikyoku= 0x653f 0x5c40", "seiken= 0x653f 0x6a29", "seisaku2= 0x653f 0x7b56", "seiji= 0x653f 0x6cbb", "seijika= 0x653f 0x6cbb 0x5bb6", "seitou1= 0x653f 0x515a", "seifu= 0x653f 0x5e9c", "seirei1= 0x653f 0x4ee4", "totonou1= 0x6574 0x3046", "totonoeru1= 0x6574 0x3048 0x308b", "seikeigeka= 0x6574 0x5f62 0x5916 0x79d1", "seisuu= 0x6574 0x6570", "seiton= 0x6574 0x9813", "seibi= 0x6574 0x5099", "seiri1= 0x6574 0x7406", "seiretsu= 0x6574 0x5217", "hoshi= 0x661f", "hoshizora= 0x661f 0x7a7a", "seiza1= 0x661f 0x5ea7", "seijouki= 0x661f 0x6761 0x65d7", "hoshiuranai= 0x661f 0x5360 0x3044", "harasu= 0x6674 0x3089 0x3059", "hare= 0x6674 0x308c", "hareru2= 0x6674 0x308c 0x308b", "seiten= 0x6674 0x5929", "seidon= 0x6674 0x66c7", "sei5= 0x6b63", "tadashii= 0x6b63 0x3057 0x3044", "tadasu1= 0x6b63 0x3059", "masani= 0x6b63 0x306b", "seikai2= 0x6b63 0x89e3", "seikaku2= 0x6b63 0x78ba", "seiki2= 0x6b63 0x898f", "seigi= 0x6b63 0x7fa9", "shougatsu= 0x6b63 0x6708", "seigenkyokusen= 0x6b63 0x5f26 0x66f2 0x7dda", "shougo= 0x6b63 0x5348", "seiza2= 0x6b63 0x5ea7", "seishiki= 0x6b63 0x5f0f", "seijou1= 0x6b63 0x5e38", "seisou1= 0x6b63 0x88c5", "shoutai2= 0x6b63 0x4f53", "shoujiki= 0x6b63 0x76f4", "seitou2= 0x6b63 0x5f53", "seihoukei= 0x6b63 0x65b9 0x5f62", "shoumi= 0x6b63 0x5473", "shoumen= 0x6b63 0x9762", "matomo= 0x6b63 0x9762", "shoumenshoutotsu= 0x6b63 0x9762 0x885d 0x7a81", "seimon1= 0x6b63 0x9580", "sugasugashii= 0x6e05 0x3005 0x3057 0x3044", "kiyoi= 0x6e05 0x3044", "kiyomaru= 0x6e05 0x307e 0x308b", "kiyomeru= 0x6e05 0x3081 0x308b", "kiyoraka= 0x6e05 0x3089 0x304b", "seiketsu= 0x6e05 0x6f54", "seisan2= 0x6e05 0x7b97", "seishu= 0x6e05 0x9152", "seisho1= 0x6e05 0x66f8", "seijou2= 0x6e05 0x6d44", "shimizu= 0x6e05 0x6c34", "seisui1= 0x6e05 0x6c34", "seichou2= 0x6e05 0x6f84", "seisou2= 0x6e05 0x6383", "seisoufu= 0x6e05 0x6383 0x592b", "seidaku= 0x6e05 0x6fc1", "seihin1= 0x6e05 0x8ca7", "seiryouinryou= 0x6e05 0x6dbc 0x98f2 0x6599", "seiren= 0x6e05 0x5ec9", "seirenkeppaku= 0x6e05 0x5ec9 0x6f54 0x767d", "ki4= 0x751f", "nama= 0x751f", "oitachi= 0x751f 0x3044 0x7acb 0x3061", "ou3= 0x751f 0x3046", "haeru3= 0x751f 0x3048 0x308b", "ikasu= 0x751f 0x304b 0x3059", "ikiru= 0x751f 0x304d 0x308b", "ikigai= 0x751f 0x304d 0x7532 0x6590", "ikinokoru= 0x751f 0x304d 0x6b8b 0x308b", "ikiikito= 0x751f 0x304d 0x751f 0x304d 0x3068", "ikimono= 0x751f 0x304d 0x7269", "ikikaeru1= 0x751f 0x304d 0x8fd4 0x308b", "ikikata= 0x751f 0x304d 0x65b9", "ikeru= 0x751f 0x3051 0x308b", "ikebana1= 0x751f 0x3051 0x82b1", "ikegaki= 0x751f 0x3051 0x57a3", "ikedori= 0x751f 0x3051 0x6355 0x308a", "shoujiru= 0x751f 0x3058 0x308b", "shouzuru= 0x751f 0x305a 0x308b", "namanurui= 0x751f 0x306c 0x308b 0x3044", "umare= 0x751f 0x307e 0x308c", "umaretsuki= 0x751f 0x307e 0x308c 0x3064 0x304d", "umareru= 0x751f 0x307e 0x308c 0x308b", "umidasu= 0x751f 0x307f 0x51fa 0x3059", "umu2= 0x751f 0x3080", "hayasu= 0x751f 0x3084 0x3059", "naru2= 0x751f 0x308b", "namaiki= 0x751f 0x610f 0x6c17", "seiiku= 0x751f 0x80b2", "ikebana2= 0x751f 0x82b1", "shougai3= 0x751f 0x6daf", "shougaikyouiku= 0x751f 0x6daf 0x6559 0x80b2", "seikatsu= 0x751f 0x6d3b", "seikatsuhi= 0x751f 0x6d3b 0x8cbb", "seikei= 0x751f 0x8a08", "seisan3= 0x751f 0x7523", "seishi2= 0x751f 0x6b7b", "kiito= 0x751f 0x7cf8", "namanie= 0x751f 0x716e 0x3048", "namagusai= 0x751f 0x81ed 0x3044", "seishoku= 0x751f 0x6b96", "seizen= 0x751f 0x524d", "ainiku= 0x751f 0x618e", "seizon= 0x751f 0x5b58", "seitaikaibou= 0x751f 0x4f53 0x89e3 0x5256", "seitai= 0x751f 0x614b", "seitan= 0x751f 0x8a95", "seitanhyakunen= 0x751f 0x8a95 0x767e 0x5e74", "kiji2= 0x751f 0x5730", "seichi= 0x751f 0x5730", "seichou3= 0x751f 0x9577", "seito= 0x751f 0x5f92", "seinengappi= 0x751f 0x5e74 0x6708 0x65e5", "seibutsu1= 0x751f 0x7269", "namamono= 0x751f 0x7269", "ikikaeru2= 0x751f 0x8fd4 0x308b", "seibo2= 0x751f 0x6bcd", "seimei2= 0x751f 0x547d", "seimeihoken= 0x751f 0x547d 0x4fdd 0x967a", "seiri2= 0x751f 0x7406", "sakari= 0x76db 0x308a", "moriagaru= 0x76db 0x308a 0x4e0a 0x304c 0x308b", "moriageru= 0x76db 0x308a 0x4e0a 0x3052 0x308b", "sakaru= 0x76db 0x308b", "moru1= 0x76db 0x308b", "sakan2= 0x76db 0x3093", "seisui2= 0x76db 0x8870", "seidai= 0x76db 0x5927", "sei6= 0x7cbe", "seizei= 0x7cbe 0x3005", "seiippai= 0x7cbe 0x4e00 0x676f", "seiei= 0x7cbe 0x92ed", "seieki= 0x7cbe 0x6db2", "seikou4= 0x7cbe 0x5de7", "seisan4= 0x7cbe 0x7b97", "seishin= 0x7cbe 0x795e", "shoujin= 0x7cbe 0x9032", "seisui3= 0x7cbe 0x7c8b", "seizui= 0x7cbe 0x9ac4", "seisen2= 0x7cbe 0x9078", "seitsuu= 0x7cbe 0x901a", "seimitsu= 0x7cbe 0x5bc6", "seiryoku2= 0x7cbe 0x529b", "seirei2= 0x7cbe 0x52b1", "seirensho= 0x7cbe 0x932c 0x6240", "seiiki= 0x8056 0x57df", "seisho2= 0x8056 0x66f8", "seijin2= 0x8056 0x4eba", "seidou1= 0x8056 0x5802", "seibo3= 0x8056 0x6bcd", "seirei3= 0x8056 0x970a", "koe1= 0x58f0", "seien= 0x58f0 0x63f4", "kowairo= 0x58f0 0x8272", "koegawari= 0x58f0 0x5909 0x308f 0x308a", "seimei3= 0x58f0 0x660e", "sei7= 0x88fd", "seikankoujou= 0x88fd 0x7f36 0x5de5 0x5834", "seika2= 0x88fd 0x9774", "seikougyou= 0x88fd 0x92fc 0x696d", "seikoujo= 0x88fd 0x92fc 0x6240", "seisaku3= 0x88fd 0x4f5c", "seizu= 0x88fd 0x56f3", "seizou= 0x88fd 0x9020", "seitetsu= 0x88fd 0x9244", "seitou3= 0x88fd 0x7cd6", "seihin2= 0x88fd 0x54c1", "seifunjo= 0x88fd 0x7c89 0x6240", "seiyaku2= 0x88fd 0x85ac", "nishi= 0x897f", "nishidoitsu= 0x897f 0x30c9 0x30a4 0x30c4", "suika= 0x897f 0x74dc", "seiou= 0x897f 0x6b27", "seigan1= 0x897f 0x5cb8", "seinan= 0x897f 0x5357", "nishibi= 0x897f 0x65e5", "seibu= 0x897f 0x90e8", "nishikaze= 0x897f 0x98a8", "seihou= 0x897f 0x65b9", "seiyou= 0x897f 0x6d0b", "seiyoujin= 0x897f 0x6d0b 0x4eba", "seireki= 0x897f 0x66a6", "makoto2= 0x8aa0", "makotoni= 0x8aa0 0x306b", "seii= 0x8aa0 0x610f", "seijitsu= 0x8aa0 0x5b9f", "seishinseii= 0x8aa0 0x5fc3 0x8aa0 0x610f", "chikau= 0x8a93 0x3046", "seimon2= 0x8a93 0x6587", "seiyaku3= 0x8a93 0x7d04", "kou8= 0x8acb 0x3046", "ukeru2= 0x8acb 0x3051 0x308b", "seigan2= 0x8acb 0x9858", "seikyuu2= 0x8acb 0x6c42", "yuku2= 0x901d 0x304f", "seikyo= 0x901d 0x53bb", "ao= 0x9752", "aoi= 0x9752 0x3044", "aozameru= 0x9752 0x3056 0x3081 0x308b", "aozora= 0x9752 0x7a7a", "aozoraichiba= 0x9752 0x7a7a 0x5e02 0x5834", "seisan5= 0x9752 0x9178", "seishun= 0x9752 0x6625", "seishounen= 0x9752 0x5c11 0x5e74", "seidou2= 0x9752 0x9285", "seinen2= 0x9752 0x5e74", "aojiroi= 0x9752 0x767d 0x3044", "aomono= 0x9752 0x7269", "aobukure= 0x9752 0x81a8 0x308c", "shizuka= 0x9759 0x304b", "shizumaru1= 0x9759 0x307e 0x308b", "shizumeru1= 0x9759 0x3081 0x308b", "seishi3= 0x9759 0x6b62", "seijaku= 0x9759 0x5bc2", "seishuku= 0x9759 0x7c9b", "seibutsu2= 0x9759 0x7269", "joumyaku= 0x9759 0x8108", "zeikan= 0x7a0e 0x95a2", "zeikin= 0x7a0e 0x91d1", "zeisei= 0x7a0e 0x5236", "zeimusho= 0x7a0e 0x52d9 0x7f72", "zeirishi= 0x7a0e 0x7406 0x58eb", "moroi= 0x8106 0x3044", "sekigan= 0x96bb 0x773c", "sekishu= 0x96bb 0x624b", "seki3= 0x5e2d", "sekijou= 0x5e2d 0x4e0a", "oshii= 0x60dc 0x3057 0x3044", "oshimu= 0x60dc 0x3057 0x3080", "sekihai= 0x60dc 0x6557", "mukashi= 0x6614", "mukashinokoto= 0x6614 0x306e 0x4e8b", "mukashimukashi= 0x6614 0x6614", "mukashibanashi= 0x6614 0x8a71", "ishi3= 0x77f3", "koku= 0x77f3", "sekiei= 0x77f3 0x82f1", "sekkai= 0x77f3 0x7070", "ishigaki= 0x77f3 0x57a3", "sekkan= 0x77f3 0x68fa", "ishibashi= 0x77f3 0x6a4b", "sekken1= 0x77f3 0x9e78", "ishikiri= 0x77f3 0x5207 0x308a", "sekitan= 0x77f3 0x70ad", "ishidan= 0x77f3 0x6bb5", "ishiatama= 0x77f3 0x982d", "sekihi= 0x77f3 0x7891", "ishibekinkichi= 0x77f3 0x90e8 0x91d1 0x5409", "sekibutsu= 0x77f3 0x4ecf", "ishibei= 0x77f3 0x5840", "sekiyu= 0x77f3 0x6cb9", "tsumikasaneru= 0x7a4d 0x307f 0x91cd 0x306d 0x308b", "tsumitate= 0x7a4d 0x307f 0x7acb 0x3066", "tsumu3= 0x7a4d 0x3080", "tsumori= 0x7a4d 0x3082 0x308a", "tsumoru= 0x7a4d 0x3082 0x308b", "sekkyokuteki= 0x7a4d 0x6975 0x7684", "sekisai= 0x7a4d 0x8f09", "sekisetsu= 0x7a4d 0x96ea", "sekizui= 0x810a 0x9ac4", "semeru2= 0x8cac 0x3081 0x308b", "sekinin= 0x8cac 0x4efb", "sekimu= 0x8cac 0x52d9", "akai= 0x8d64 0x3044", "akachan= 0x8d64 0x3061 0x3083 0x3093", "akaramu1= 0x8d64 0x3089 0x3080", "akarameru= 0x8d64 0x3089 0x3081 0x308b", "akanbou= 0x8d64 0x3093 0x574a", "sekkasshoku= 0x8d64 0x8910 0x8272", "akaji= 0x8d64 0x5b57", "sekijuuji= 0x8d64 0x5341 0x5b57", "sekidou= 0x8d64 0x9053", "sekihan= 0x8d64 0x98ef", "akabou= 0x8d64 0x5e3d", "sekimen= 0x8d64 0x9762", "sekirara= 0x8d64 0x88f8 0x88f8", "sekiri= 0x8d64 0x75e2", "ato2= 0x8de1", "atotsugi= 0x8de1 0x7d99 0x304e", "setsunai= 0x5207 0x306a 0x3044", "kiri1= 0x5207 0x308a", "kirisuteru= 0x5207 0x308a 0x6368 0x3066 0x308b", "kiriage= 0x5207 0x308a 0x4e0a 0x3052", "kirikae= 0x5207 0x308a 0x66ff 0x3048", "kirikuzusu= 0x5207 0x308a 0x5d29 0x3059", "kirihanasu= 0x5207 0x308a 0x96e2 0x3059", "kiru1= 0x5207 0x308b", "kire= 0x5207 0x308c", "kireru= 0x5207 0x308c 0x308b", "kikkake= 0x5207 0x639b", "kirikabu= 0x5207 0x682a", "setsujitsu= 0x5207 0x5b9f", "kitte= 0x5207 0x624b", "setsudan= 0x5207 0x65ad", "seppaku= 0x5207 0x8feb", "kippu= 0x5207 0x7b26", "kippuuriba= 0x5207 0x7b26 0x58f2 0x308a 0x5834", "seppuku= 0x5207 0x8179", "sessaku= 0x62d9 0x7b56", "sessoku= 0x62d9 0x901f", "setsuretsu= 0x62d9 0x52a3", "tsugu3= 0x63a5 0x3050", "sessuru= 0x63a5 0x3059 0x308b", "sekkin= 0x63a5 0x8fd1", "sesshoku= 0x63a5 0x89e6", "setsuzoku= 0x63a5 0x7d9a", "settai= 0x63a5 0x5f85", "sesshi= 0x6442 0x6c0f", "sesshinijuudo= 0x6442 0x6c0f 0xff12 0xff10 0x5ea6", "sesshu1= 0x6442 0x53d6", "sesshou1= 0x6442 0x653f", "sessei= 0x6442 0x751f", "setsuri= 0x6442 0x7406", "ori1= 0x6298", "origami1= 0x6298 0x308a 0x7d19", "oritatami= 0x6298 0x308a 0x7573 0x307f", "orikaeshi= 0x6298 0x308a 0x8fd4 0x3057", "orikaesu= 0x6298 0x308a 0x8fd4 0x3059", "oru3= 0x6298 0x308b", "oreru= 0x6298 0x308c 0x308b", "sekkaku= 0x6298 0x89d2", "origami2= 0x6298 0x7d19", "sesshou2= 0x6298 0x885d", "secchuu= 0x6298 0x8877", "seppan= 0x6298 0x534a", "moukeru1= 0x8a2d 0x3051 0x308b", "sekkei1= 0x8a2d 0x8a08", "secchi= 0x8a2d 0x7f6e", "settei= 0x8a2d 0x5b9a", "setsubi= 0x8a2d 0x5099", "setsuritsu= 0x8a2d 0x7acb", "sesshu2= 0x7a83 0x53d6", "settou= 0x7a83 0x76d7", "settouzai= 0x7a83 0x76d7 0x7f6a", "settouhan= 0x7a83 0x76d7 0x72af", "setsu1= 0x7bc0", "fushi1= 0x7bc0", "sekku= 0x7bc0 0x53e5", "sekken2= 0x7bc0 0x5039", "sessou= 0x7bc0 0x64cd", "setsuyaku= 0x7bc0 0x7d04", "setsu2= 0x8aac", "toku2= 0x8aac 0x304f", "sekkyou= 0x8aac 0x6559", "settoku= 0x8aac 0x5f97", "setsumei= 0x8aac 0x660e", "setsuyu= 0x8aac 0x8aed", "yuki2= 0x96ea", "yukidoke= 0x96ea 0x89e3 0x3051", "setsugai= 0x96ea 0x5bb3", "sekkei2= 0x96ea 0x6e13", "yukigassen= 0x96ea 0x5408 0x6226", "setsujoku= 0x96ea 0x8fb1", "nadare= 0x96ea 0x5d29", "taezu= 0x7d76 0x3048 0x305a", "taeru2= 0x7d76 0x3048 0x308b", "taemanaku= 0x7d76 0x3048 0x9593 0x306a 0x304f", "tatsu4= 0x7d76 0x3064", "tayasu= 0x7d76 0x3084 0x3059", "zetsuen= 0x7d76 0x7e01", "zekkyou= 0x7d76 0x53eb", "zekkou1= 0x7d76 0x4ea4", "zekkou2= 0x7d76 0x597d", "zettai= 0x7d76 0x5bfe", "zettaini= 0x7d76 0x5bfe 0x306b", "zetsudai= 0x7d76 0x5927", "zecchou= 0x7d76 0x9802", "zetsubou= 0x7d76 0x671b", "zetsumyou= 0x7d76 0x5999", "zetsurin= 0x7d76 0x502b", "shita2= 0x820c", "zekka= 0x820c 0x798d", "zessen= 0x820c 0x6226", "shitauchi= 0x820c 0x6253 0x3061", "semi= 0x8749", "sen1= 0x4ed9", "sennyu= 0x4ed9 0x5973", "sennin1= 0x4ed9 0x4eba", "saki2= 0x5148", "mazu= 0x5148 0x305a", "sendatte= 0x5148 0x3060 0x3063 0x3066", "sakini= 0x5148 0x306b", "senku= 0x5148 0x99c6", "senketsu= 0x5148 0x6c7a", "sengetsu= 0x5148 0x6708", "senken1= 0x5148 0x898b", "senken2= 0x5148 0x8ce2", "sakigoro= 0x5148 0x9803", "senshuu= 0x5148 0x9031", "senshinkoku= 0x5148 0x9032 0x56fd", "sensei1= 0x5148 0x751f", "sensengetsu= 0x5148 0x5148 0x6708", "senzo= 0x5148 0x7956", "sentan= 0x5148 0x7aef", "senchaku= 0x5148 0x7740", "sakihodo= 0x5148 0x7a0b", "sentetsu1= 0x5148 0x54f2", "sententeki= 0x5148 0x5929 0x7684", "sentou1= 0x5148 0x982d", "sendou1= 0x5148 0x5c0e", "senjitsu= 0x5148 0x65e5", "sennyuukan= 0x5148 0x5165 0x89b3", "senpai= 0x5148 0x8f29", "senpan= 0x5148 0x822c", "senrei= 0x5148 0x4f8b", "senreininarau= 0x5148 0x4f8b 0x306b 0x5023 0x3046", "sen2= 0x5343", "chi2= 0x5343", "senensatsu= 0x5343 0x5186 0x672d", "chigiru2= 0x5343 0x5207 0x308b", "chigireru= 0x5343 0x5207 0x308c 0x308b", "senri= 0x5343 0x91cc", "senrigan= 0x5343 0x91cc 0x773c", "uranai= 0x5360 0x3044", "uranau= 0x5360 0x3046", "shimeru3= 0x5360 0x3081 0x308b", "senyuu= 0x5360 0x6709", "senryou= 0x5360 0x9818", "senkyoushi= 0x5ba3 0x6559 0x5e2b", "sengen= 0x5ba3 0x8a00", "senkoku= 0x5ba3 0x544a", "sensei2= 0x5ba3 0x8a93", "sensen= 0x5ba3 0x6226", "senden= 0x5ba3 0x4f1d", "moppara= 0x5c02 0x3089", "senou= 0x5c02 0x6a2a", "senkou1= 0x5c02 0x653b", "sensei3= 0x5c02 0x5236", "senzoku= 0x5c02 0x5c5e", "sennin2= 0x5c02 0x4efb", "sennen= 0x5c02 0x5ff5", "senbai= 0x5c02 0x58f2", "senmu= 0x5c02 0x52d9", "senmon= 0x5c02 0x9580", "senmonka= 0x5c02 0x9580 0x5bb6", "senyou= 0x5c02 0x7528", "senyouchuushajou= 0x5c02 0x7528 0x99d0 0x8eca 0x5834", "togaru= 0x5c16 0x308b", "kawa3= 0x5ddd", "kawazoi= 0x5ddd 0x6cbf 0x3044", "kawashimo= 0x5ddd 0x4e0b", "kawagishi2= 0x5ddd 0x5cb8", "kawara3= 0x5ddd 0x539f", "kawakami= 0x5ddd 0x4e0a", "senryuu= 0x5ddd 0x67f3", "ikusa= 0x6226", "tatakai= 0x6226 0x3044", "tatakau1= 0x6226 0x3046", "senka= 0x6226 0x798d", "senkan= 0x6226 0x8266", "sengo= 0x6226 0x5f8c", "sensai1= 0x6226 0x707d", "senshi= 0x6226 0x6b7b", "sensha= 0x6226 0x8eca", "senjou= 0x6226 0x5834", "senzen= 0x6226 0x524d", "sensou= 0x6226 0x4e89", "sentou2= 0x6226 0x95d8", "senryaku= 0x6226 0x7565", "ougi2= 0x6247", "aogu2= 0x6247 0x3050", "ougigata= 0x6247 0x5f62", "senkei= 0x6247 0x5f62", "sensu= 0x6247 0x5b50", "sendou2= 0x6247 0x52d5", "senpuuki= 0x6247 0x98a8 0x6a5f", "sennuki= 0x6813 0x629c 0x304d", "izumi= 0x6cc9", "sensui1= 0x6cc9 0x6c34", "asai= 0x6d45 0x3044", "asahaka= 0x6d45 0x306f 0x304b", "senkai1= 0x6d45 0x6d77", "sengaku= 0x6d45 0x5b66", "senken3= 0x6d45 0x898b", "asaguroi= 0x6d45 0x9ed2 0x3044", "asase= 0x6d45 0x702c", "senpaku1= 0x6d45 0x8584", "araimono= 0x6d17 0x3044 0x7269", "araitateru= 0x6d17 0x3044 0x7acb 0x3066 0x308b", "arau= 0x6d17 0x3046", "senzai1= 0x6d17 0x5264", "sentaku1= 0x6d17 0x6fef", "sentakuki= 0x6d17 0x6fef 0x6a5f", "sentakumono= 0x6d17 0x6fef 0x7269", "sennou= 0x6d17 0x8133", "senpatsu= 0x6d17 0x9aea", "senmen= 0x6d17 0x9762", "senmenki= 0x6d17 0x9762 0x5668", "senmenjo= 0x6d17 0x9762 0x6240", "senren= 0x6d17 0x7df4", "somaru= 0x67d3 0x307e 0x308b", "shimi= 0x67d3 0x307f", "shimiru= 0x67d3 0x307f 0x308b", "someru2= 0x67d3 0x3081 0x308b", "senshoku= 0x67d3 0x8272", "hisomu= 0x6f5c 0x3080", "kuguru= 0x6f5c 0x308b", "moguru= 0x6f5c 0x308b", "senzai2= 0x6f5c 0x5728", "sensui2= 0x6f5c 0x6c34", "sensuikan= 0x6f5c 0x6c34 0x8266", "sensuifu= 0x6f5c 0x6c34 0x592b", "sennyuu= 0x6f5c 0x5165", "senpuku= 0x6f5c 0x4f0f", "senbei= 0x714e 0x9905", "odateru= 0x717d 0x3066 0x308b", "aoru= 0x717d 0x308b", "senkai2= 0x65cb 0x56de", "senpuu= 0x65cb 0x98a8", "senritsu= 0x65cb 0x5f8b", "sen3= 0x7dda", "senkou2= 0x7dda 0x9999", "senro= 0x7dda 0x8def", "seni= 0x7e4a 0x7dad", "senikougyou= 0x7e4a 0x7dad 0x5de5 0x696d", "sensai2= 0x7e4a 0x7d30", "urayamashii= 0x7fa8 0x307e 0x3057 0x3044", "fune2= 0x8239", "senin= 0x8239 0x54e1", "senshitsu= 0x8239 0x5ba4", "funayoi= 0x8239 0x9154 0x3044", "senchou= 0x8239 0x9577", "sentou3= 0x8239 0x706f", "senpaku2= 0x8239 0x8236", "funabin= 0x8239 0x4fbf", "funatabi= 0x8239 0x65c5", "susumeru3= 0x85a6 0x3081 0x308b", "erabu= 0x9078 0x3076", "yoriwakeru= 0x9078 0x308a 0x5206 0x3051 0x308b", "yoru4= 0x9078 0x308b", "senkyo= 0x9078 0x6319", "senshu= 0x9078 0x624b", "senshutsu= 0x9078 0x51fa", "sentaku2= 0x9078 0x629e", "sentakukamoku= 0x9078 0x629e 0x79d1 0x76ee", "sentei= 0x9078 0x5b9a", "sen4= 0x92ad", "sentou4= 0x92ad 0x6e6f", "sentetsu2= 0x9291 0x9244", "hirameku= 0x9583 0x304f", "azayaka= 0x9bae 0x3084 0x304b", "sengyo= 0x9bae 0x9b5a", "sendo= 0x9bae 0x5ea6", "senmei= 0x9bae 0x660e", "zen1= 0x524d", "mae= 0x524d", "maemotte= 0x524d 0x3082 0x3063 0x3066", "zenei= 0x524d 0x885b", "zenkai1= 0x524d 0x56de", "zenki= 0x524d 0x671f", "zengi= 0x524d 0x622f", "zenkei= 0x524d 0x63b2", "zengo= 0x524d 0x5f8c", "maemuki= 0x524d 0x5411 0x304d", "zensha= 0x524d 0x8005", "maegari= 0x524d 0x501f 0x308a", "maegaki= 0x524d 0x66f8 0x304d", "maebure= 0x524d 0x89e6 0x308c", "zenshin1= 0x524d 0x8eab", "zenshin2= 0x524d 0x9032", "zensou1= 0x524d 0x594f", "zendaimimon= 0x524d 0x4ee3 0x672a 0x805e", "maeoki= 0x524d 0x7f6e 0x304d", "zenchou= 0x524d 0x5146", "zentei1= 0x524d 0x5ead", "zentei2= 0x524d 0x63d0", "zento= 0x524d 0x9014", "zennen= 0x524d 0x5e74", "maeuri= 0x524d 0x58f2 0x308a", "maeuriken= 0x524d 0x58f2 0x308a 0x5238", "zenhan= 0x524d 0x534a", "maebarai= 0x524d 0x6255 0x3044", "zenpou= 0x524d 0x65b9", "zenpoukouenfun= 0x524d 0x65b9 0x5f8c 0x5186 0x58b3", "zenya= 0x524d 0x591c", "zenryaku= 0x524d 0x7565", "zenrei= 0x524d 0x4f8b", "zenreki= 0x524d 0x6b74", "zen2= 0x5584", "yoi2= 0x5584 0x3044", "yokumo= 0x5584 0x304f 0x3082", "yokuyoku= 0x5584 0x304f 0x5584 0x304f", "yoshi1= 0x5584 0x3057", "yoshiashi= 0x5584 0x3057 0x60aa 0x3057", "zenaku= 0x5584 0x60aa", "zeni= 0x5584 0x610f", "zenryou= 0x5584 0x826f", "youyaku1= 0x6f38 0x304f", "zengen= 0x6f38 0x6e1b", "zenji= 0x6f38 0x6b21", "zenshin3= 0x6f38 0x9032", "zenzou= 0x6f38 0x5897", "soushite= 0x7136 0x3046 0x3057 0x3066", "shikashi1= 0x7136 0x3057", "soshite= 0x7136 0x3057 0x3066", "shikamo= 0x7136 0x3082", "zen3= 0x5168", "mattaku= 0x5168 0x304f", "subete= 0x5168 0x3066", "zenin2= 0x5168 0x54e1", "zenkai2= 0x5168 0x5feb", "zenkoku= 0x5168 0x56fd", "zenshuu1= 0x5168 0x96c6", "zenshou= 0x5168 0x713c", "zenshin4= 0x5168 0x8eab", "zensei= 0x5168 0x76db", "zenzen= 0x5168 0x7136", "zensokuryoku= 0x5168 0x901f 0x529b", "zentai= 0x5168 0x4f53", "zenpan= 0x5168 0x822c", "zenpanteki= 0x5168 0x822c 0x7684", "zenbu= 0x5168 0x90e8", "zenmetsu= 0x5168 0x6ec5", "zenmenteki= 0x5168 0x9762 0x7684", "zenyaku= 0x5168 0x8a33", "zenryoku= 0x5168 0x529b", "zen4= 0x7985", "zendera= 0x7985 0x5bfa", "zenshuu2= 0x7985 0x5b97", "zensou2= 0x7985 0x50e7", "zenmondou= 0x7985 0x554f 0x7b54", "tsukurou= 0x7e55 0x3046", "sozou= 0x5851 0x50cf", "sochi= 0x63aa 0x7f6e", "souson= 0x66fd 0x5b6b", "himago= 0x66fd 0x5b6b", "nerai= 0x72d9 0x3044", "nerau= 0x72d9 0x3046", "utoi= 0x758e 0x3044", "orosoka= 0x758e 0x304b", "utomu= 0x758e 0x3080", "mabara= 0x758e 0x3089", "soen= 0x758e 0x9060", "sokai1= 0x758e 0x958b", "sogai1= 0x758e 0x5916", "sotsuu= 0x758e 0x901a", "ishizue= 0x790e", "soseki= 0x790e 0x77f3", "sokoku= 0x7956 0x56fd", "sosen= 0x7956 0x5148", "sosensuuhai= 0x7956 0x5148 0x5d07 0x62dd", "sofu= 0x7956 0x7236", "sobo= 0x7956 0x6bcd", "sokai2= 0x79df 0x754c", "soshaku= 0x79df 0x501f", "soshakuchi= 0x79df 0x501f 0x5730", "sozei= 0x79df 0x7a0e", "arai2= 0x7c97 0x3044", "soaku= 0x7c97 0x60aa", "arasuji= 0x7c97 0x7b4b", "soshoku= 0x7c97 0x98df", "sodai= 0x7c97 0x5927", "sobou= 0x7c97 0x66b4", "somatsu= 0x7c97 0x672b", "soya= 0x7c97 0x91ce", "sugao= 0x7d20 0x9854", "sozai= 0x7d20 0x6750", "soshitsu= 0x7d20 0x8cea", "shirouto= 0x7d20 0x4eba", "subarashii= 0x7d20 0x6674 0x3089 0x3057 0x3044", "subayai= 0x7d20 0x65e9 0x3044", "sunao= 0x7d20 0x76f4", "suteki= 0x7d20 0x6575", "sobyou= 0x7d20 0x63cf", "soboku= 0x7d20 0x6734", "soryuushi= 0x7d20 0x7c92 0x5b50", "kumiawase1= 0x7d44 0x307f 0x5408 0x308f 0x305b", "kumiawaseru= 0x7d44 0x307f 0x5408 0x308f 0x305b 0x308b", "kumiawasejou= 0x7d44 0x307f 0x5408 0x308f 0x305b 0x9320", "kumikomu= 0x7d44 0x307f 0x8fbc 0x3080", "kumitate= 0x7d44 0x307f 0x7acb 0x3066", "kumitateru= 0x7d44 0x307f 0x7acb 0x3066 0x308b", "kumu2= 0x7d44 0x3080", "sokaku= 0x7d44 0x95a3", "kumiai= 0x7d44 0x5408", "kumiawase2= 0x7d44 0x5408 0x305b", "kumiawase3= 0x7d44 0x5408 0x308f 0x305b", "soshiki= 0x7d44 0x7e54", "sosei= 0x7d44 0x6210", "uttae= 0x8a34 0x3048", "uttaeru= 0x8a34 0x3048 0x308b", "soshou= 0x8a34 0x8a1f", "soshouhiyou= 0x8a34 0x8a1f 0x8cbb 0x7528", "habamu= 0x963b 0x3080", "sogai2= 0x963b 0x5bb3", "soshi= 0x963b 0x6b62", "sakanoboru= 0x9061 0x308b", "nezumi= 0x9f20", "sou2= 0x50e7", "souin= 0x50e7 0x9662", "soujou= 0x50e7 0x6b63", "soufuku= 0x50e7 0x670d", "souryo= 0x50e7 0x4fb6", "sou3= 0x5275", "soukagakkai= 0x5275 0x4fa1 0x5b66 0x4f1a", "soukan1= 0x5275 0x520a", "sousaku1= 0x5275 0x4f5c", "souzou1= 0x5275 0x9020", "souritsu= 0x5275 0x7acb", "futa2= 0x53cc", "sougankyou= 0x53cc 0x773c 0x93e1", "souken1= 0x53cc 0x80a9", "futago= 0x53cc 0x5b50", "souseiji= 0x53cc 0x751f 0x5150", "souhou= 0x53cc 0x65b9", "kura1= 0x5009", "kurani= 0x5009 0x8377", "souko= 0x5009 0x5eab", "mo1= 0x55aa", "soushitsu= 0x55aa 0x5931", "moshu= 0x55aa 0x4e3b", "moshou= 0x55aa 0x7ae0", "mochuu= 0x55aa 0x4e2d", "mofuku= 0x55aa 0x670d", "souken2= 0x58ee 0x5065", "soudai= 0x58ee 0x5927", "sounen= 0x58ee 0x5e74", "souretsu1= 0x58ee 0x70c8", "kanaderu= 0x594f 0x3067 0x308b", "sawayaka= 0x723d 0x3084 0x304b", "souun= 0x5c64 0x96f2", "sou4= 0x60f3", "souzou2= 0x60f3 0x50cf", "soutei= 0x60f3 0x5b9a", "sagashimawaru1= 0x635c 0x3057 0x56de 0x308b", "sagashiateru= 0x635c 0x3057 0x5f53 0x3066 0x308b", "sagasu1= 0x635c 0x3059", "sousa1= 0x635c 0x67fb", "sousahonbu= 0x635c 0x67fb 0x672c 0x90e8", "sousaku2= 0x635c 0x7d22", "haku1= 0x6383 0x304f", "souji1= 0x6383 0x9664", "soujiki= 0x6383 0x9664 0x6a5f", "soujifu= 0x6383 0x9664 0x5a66", "soutou1= 0x6383 0x8a0e", "sashiki= 0x633f 0x3057 0x6728", "sasu5= 0x633f 0x3059", "sashie= 0x633f 0x7d75", "sounyuu= 0x633f 0x5165", "souwa= 0x633f 0x8a71", "kakimawasu= 0x63bb 0x304d 0x56de 0x3059", "kaku8= 0x63bb 0x304f", "misao= 0x64cd", "ayatsuru= 0x64cd 0x308b", "sougyoutanshuku= 0x64cd 0x696d 0x77ed 0x7e2e", "sousa2= 0x64cd 0x4f5c", "soujuu= 0x64cd 0x7e26", "soutan= 0x64cd 0x77ed", "sousou= 0x65e9 0x3005", "hayabaya= 0x65e9 0x3005", "hayai1= 0x65e9 0x3044", "hayaku1= 0x65e9 0x304f", "hayamaru= 0x65e9 0x307e 0x308b", "hayameru1= 0x65e9 0x3081 0x308b", "wase= 0x65e9 0x7a32", "hayabiki= 0x65e9 0x5f15 0x304d", "hayabike= 0x65e9 0x5f15 0x3051", "souki= 0x65e9 0x671f", "hayaoki= 0x65e9 0x8d77 0x304d", "hayakuchi= 0x65e9 0x53e3", "hayamimi= 0x65e9 0x8033", "soujuku= 0x65e9 0x719f", "soushun= 0x65e9 0x6625", "hayane= 0x65e9 0x5bdd", "hayase= 0x65e9 0x702c", "sassoku= 0x65e9 0x901f", "soutai= 0x65e9 0x9000", "souchou1= 0x65e9 0x671d", "hayameni= 0x65e9 0x76ee 0x306b", "su3= 0x5de3", "sudachi= 0x5de3 0x7acb 0x3061", "kogu= 0x6f15 0x3050", "hashagu= 0x71e5 0x3050", "arasoi= 0x4e89 0x3044", "arasou= 0x4e89 0x3046", "sougi1= 0x4e89 0x8b70", "soudatsu= 0x4e89 0x596a", "soudatsusen= 0x4e89 0x596a 0x6226", "souten= 0x4e89 0x70b9", "yaseru= 0x75e9 0x305b 0x308b", "ai2= 0x76f8", "sou5= 0x76f8", "soui= 0x76f8 0x9055", "souou= 0x76f8 0x5fdc", "fusawashii= 0x76f8 0x5fdc 0x3057 0x3044", "soukan2= 0x76f8 0x95a2", "sougo= 0x76f8 0x4e92", "sousai1= 0x76f8 0x6bba", "souji2= 0x76f8 0x4f3c", "aitsugu= 0x76f8 0x6b21 0x3050", "aite= 0x76f8 0x624b", "soushou2= 0x76f8 0x79f0", "souba= 0x76f8 0x5834", "souzoku= 0x76f8 0x7d9a", "soutaiteki= 0x76f8 0x5bfe 0x7684", "soudan= 0x76f8 0x8ac7", "aiduchi= 0x76f8 0x69cc", "soutou2= 0x76f8 0x5f53", "aitomonau= 0x76f8 0x4f34 0x3046", "aikawarazu= 0x76f8 0x5909 0x308f 0x3089 0x305a", "aibou= 0x76f8 0x68d2", "sumou= 0x76f8 0x64b2", "sumoutori= 0x76f8 0x64b2 0x53d6 0x308a", "mado= 0x7a93", "madoguchi= 0x7a93 0x53e3", "madogiwa= 0x7a93 0x969b", "madogiwanoseki= 0x7a93 0x969b 0x306e 0x5e2d", "madowaku= 0x7a93 0x67a0", "sou6= 0x7dcf", "soukai= 0x7dcf 0x4f1a", "sougaku= 0x7dcf 0x984d", "soukatsu= 0x7dcf 0x62ec", "soukan3= 0x7dcf 0x76e3", "soukei= 0x7dcf 0x8a08", "sougou= 0x7dcf 0x5408", "sousai2= 0x7dcf 0x88c1", "sousui= 0x7dcf 0x5e25", "sousuu= 0x7dcf 0x6570", "soutoku= 0x7dcf 0x7763", "souri= 0x7dcf 0x7406", "souridaijin= 0x7dcf 0x7406 0x5927 0x81e3", "souron= 0x7dcf 0x8ad6", "kusa= 0x8349", "souan= 0x8349 0x6848", "kusabana= 0x8349 0x82b1", "kutabireru= 0x8349 0x81e5 0x308c 0x308b", "kusakanmuri= 0x8349 0x51a0", "sougen= 0x8349 0x539f", "soukou= 0x8349 0x7a3f", "sousho= 0x8349 0x66f8", "soushoku1= 0x8349 0x98df", "kusaki= 0x8349 0x6728", "soumoku= 0x8349 0x6728", "zouri= 0x8349 0x5c65", "sougon= 0x8358 0x53b3", "souchou2= 0x8358 0x91cd", "houmuru= 0x846c 0x308b", "sougi2= 0x846c 0x5100", "sougishiki= 0x846c 0x5100 0x5f0f", "soushiki= 0x846c 0x5f0f", "souretsu2= 0x846c 0x5217", "mo2= 0x85fb", "mogaku= 0x85fb 0x63bb 0x304f", "mogusa= 0x85fb 0x8349", "sourui= 0x85fb 0x985e", "yosoou= 0x88c5 0x3046", "soushoku2= 0x88c5 0x98fe", "souchi= 0x88c5 0x7f6e", "hashirimawaru= 0x8d70 0x308a 0x56de 0x308b", "hashiritakatobi= 0x8d70 0x308a 0x9ad8 0x8df3 0x3073", "hashirigaki= 0x8d70 0x308a 0x66f8 0x304d", "hashiru= 0x8d70 0x308b", "soukoujikan= 0x8d70 0x884c 0x6642 0x9593", "souro= 0x8d70 0x8def", "okurigana= 0x9001 0x308a 0x4eee 0x540d", "okuriana= 0x9001 0x308a 0x7a74", "okurikaesu= 0x9001 0x308a 0x8fd4 0x3059", "okuru1= 0x9001 0x308b", "soukin= 0x9001 0x91d1", "sougei= 0x9001 0x8fce", "soushin= 0x9001 0x4fe1", "soufu= 0x9001 0x4ed8", "soubetsu= 0x9001 0x5225", "soubetsukai= 0x9001 0x5225 0x4f1a", "au4= 0x906d 0x3046", "souguu= 0x906d 0x9047", "sounan= 0x906d 0x96e3", "sounansha= 0x906d 0x96e3 0x8005", "sounanshingou= 0x906d 0x96e3 0x4fe1 0x53f7", "shimo= 0x971c", "shimodoke= 0x971c 0x89e3 0x3051", "sougai= 0x971c 0x5bb3", "shimofuri= 0x971c 0x964d 0x308a", "shimoyake1= 0x971c 0x713c 0x3051", "shimobashira= 0x971c 0x67f1", "souzoushii= 0x9a12 0x3005 0x3057 0x3044", "sawagashii= 0x9a12 0x304c 0x3057 0x3044", "sawagi= 0x9a12 0x304e", "sawagitateru= 0x9a12 0x304e 0x7acb 0x3066 0x308b", "sawagu= 0x9a12 0x3050", "zawameku= 0x9a12 0x3081 0x304f", "souon= 0x9a12 0x97f3", "souzen= 0x9a12 0x7136", "soudou= 0x9a12 0x52d5", "zou2= 0x50cf", "fueru2= 0x5897 0x3048 0x308b", "mashi= 0x5897 0x3057", "masu2= 0x5897 0x3059", "fuyasu2= 0x5897 0x3084 0x3059", "zouka= 0x5897 0x52a0", "zougen= 0x5897 0x6e1b", "zousatsu= 0x5897 0x5237", "zousan= 0x5897 0x7523", "zoushoku= 0x5897 0x6b96", "zoushokuro= 0x5897 0x6b96 0x7089", "zoushin= 0x5897 0x9032", "zouzei= 0x5897 0x7a0e", "zoudai= 0x5897 0x5927", "zoutei1= 0x5897 0x8a02", "nikui1= 0x618e 0x3044", "nikushimi= 0x618e 0x3057 0x307f", "nikumarekko= 0x618e 0x307e 0x308c 0x3063 0x5b50", "nikumareguchi= 0x618e 0x307e 0x308c 0x53e3", "nikumu= 0x618e 0x3080", "nikurashii= 0x618e 0x3089 0x3057 0x3044", "zouo= 0x618e 0x60aa", "zou3= 0x81d3", "zouki= 0x81d3 0x5668", "kura2= 0x8535", "zousho= 0x8535 0x66f8", "zoushou= 0x8535 0x76f8", "okurinushi= 0x8d08 0x308a 0x4e3b", "okurimono1= 0x8d08 0x308a 0x7269", "okuru2= 0x8d08 0x308b", "zoushuuwai= 0x8d08 0x53ce 0x8cc4", "zoutei2= 0x8d08 0x5448", "zoutou= 0x8d08 0x7b54", "okurimono2= 0x8d08 0x7269", "zouyo= 0x8d08 0x4e0e", "zouyoshousho= 0x8d08 0x4e0e 0x8a3c 0x66f8", "zouwai= 0x8d08 0x8cc4", "tsukuru2= 0x9020 0x308b", "zousen= 0x9020 0x8239", "zouheikyoku= 0x9020 0x5e63 0x5c40", "unagasu= 0x4fc3 0x3059", "sokushin= 0x4fc3 0x9032", "sokusei= 0x4fc3 0x6210", "kawa4= 0x5074", "gawa= 0x5074", "soba2= 0x5074", "sokkinsha= 0x5074 0x8fd1 0x8005", "sokumen= 0x5074 0x9762", "sunawachi= 0x5373 0x3061", "sokkyou= 0x5373 0x8208", "sokkin= 0x5373 0x91d1", "sokuza= 0x5373 0x5ea7", "sokushi= 0x5373 0x6b7b", "sokuji= 0x5373 0x6642", "sokuseki1= 0x5373 0x5e2d", "sokujitsu= 0x5373 0x65e5", "iki3= 0x606f", "musuko= 0x606f 0x5b50", "ikigire= 0x606f 0x5207 0x308c", "taba= 0x675f", "tabaneru= 0x675f 0x306d 0x308b", "tsukanoma= 0x675f 0x306e 0x9593", "sokubaku= 0x675f 0x7e1b", "hakaru4= 0x6e2c 0x308b", "sokkoujo= 0x6e2c 0x5019 0x6240", "sokutei= 0x6e2c 0x5b9a", "sokuryou= 0x6e2c 0x91cf", "ashi2= 0x8db3", "tashizan= 0x8db3 0x3057 0x7b97", "tasu= 0x8db3 0x3059", "tariru= 0x8db3 0x308a 0x308b", "taru= 0x8db3 0x308b", "ashioto= 0x8db3 0x97f3", "ashimoto= 0x8db3 0x5143", "ashidome= 0x8db3 0x6b62 0x3081", "ashidori= 0x8db3 0x53d6 0x308a", "ashikubi= 0x8db3 0x9996", "ashiato= 0x8db3 0x8de1", "sokuseki2= 0x8db3 0x8de1", "tabi1= 0x8db3 0x888b", "ashibumi= 0x8db3 0x8e0f 0x307f", "hayai2= 0x901f 0x3044", "hayaku2= 0x901f 0x304f", "hayasa= 0x901f 0x3055", "hayameru2= 0x901f 0x3081 0x308b", "sumiyaka= 0x901f 0x3084 0x304b", "sokki= 0x901f 0x8a18", "sokutatsu= 0x901f 0x9054", "sokutatsubin= 0x901f 0x9054 0x4fbf", "sokudo= 0x901f 0x5ea6", "sokuryoku= 0x901f 0x529b", "sokuryokudo= 0x901f 0x529b 0x5ea6", "zoku1= 0x4fd7", "zokugo= 0x4fd7 0x8a9e", "zokushuu= 0x4fd7 0x81ed", "zokumyou= 0x4fd7 0x540d", "zokusuru= 0x5c5e 0x3059 0x308b", "zokugun= 0x8cca 0x8ecd", "zoku2= 0x65cf", "zokuzoku= 0x7d9a 0x3005", "tsuduki= 0x7d9a 0x304d", "tsuduku= 0x7d9a 0x304f", "tsudukeru= 0x7d9a 0x3051 0x308b", "zokkou= 0x7d9a 0x884c", "zokushutsu= 0x7d9a 0x51fa", "sotsugyou= 0x5352 0x696d", "sotsugyoushiken= 0x5352 0x696d 0x8a66 0x9a13", "sotsugyoushousho= 0x5352 0x696d 0x8a3c 0x66f8", "socchuu= 0x5352 0x4e2d", "sottou= 0x5352 0x5012", "sode= 0x8896", "sonomama= 0x5176 0x306e 0x5118", "sore= 0x5176 0x308c", "sorekara= 0x5176 0x308c 0x304b 0x3089", "sorede= 0x5176 0x308c 0x3067", "soredeha= 0x5176 0x308c 0x3067 0x306f", "soredemo= 0x5176 0x308c 0x3067 0x3082", "soretonaku= 0x5176 0x308c 0x3068 0x7121 0x304f", "sorenara= 0x5176 0x308c 0x306a 0x3089", "soreni= 0x5176 0x308c 0x306b", "soretomo= 0x5176 0x308c 0x5171", "sorehodo= 0x5176 0x308c 0x7a0b", "sokode= 0x5176 0x51e6 0x3067", "soitsu= 0x5176 0x5974", "sochira= 0x5176 0x65b9", "socchi= 0x5176 0x65b9", "sorou= 0x63c3 0x3046", "soroeru= 0x63c3 0x3048 0x308b", "zonjiru= 0x5b58 0x3058 0x308b", "sonzai= 0x5b58 0x5728", "sonzoku= 0x5b58 0x7d9a", "zonbunni= 0x5b58 0x5206 0x306b", "mago= 0x5b6b", "magomusume= 0x5b6b 0x5a18", "tattoi2= 0x5c0a 0x3044", "toutoi2= 0x5c0a 0x3044", "tattobu2= 0x5c0a 0x3076", "toutobu2= 0x5c0a 0x3076", "sonkei= 0x5c0a 0x656c", "songen= 0x5c0a 0x53b3", "sonchou1= 0x5c0a 0x91cd", "sonshou= 0x5c0a 0x79f0", "sondai= 0x5c0a 0x5927", "son= 0x640d", "sokonau1= 0x640d 0x3046", "sonsuru= 0x640d 0x3059 0x308b", "sokonau2= 0x640d 0x306a 0x3046", "sokoneru= 0x640d 0x306d 0x308b", "soneki= 0x640d 0x76ca", "songai= 0x640d 0x5bb3", "songaibaishou= 0x640d 0x5bb3 0x8ce0 0x511f", "sonshitsu= 0x640d 0x5931", "sontoku= 0x640d 0x5f97", "sonmou= 0x640d 0x8017", "mura= 0x6751", "murabito= 0x6751 0x4eba", "sonchou2= 0x6751 0x9577", "sonmin= 0x6751 0x6c11", "takoku= 0x4ed6 0x56fd", "tasatsu= 0x4ed6 0x6bba", "tasha= 0x4ed6 0x8005", "tanin= 0x4ed6 0x4eba", "tasen= 0x4ed6 0x85a6", "tadoushi= 0x4ed6 0x52d5 0x8a5e", "tahou= 0x4ed6 0x65b9", "tamen= 0x4ed6 0x9762", "ta1= 0x591a", "ooi= 0x591a 0x3044", "taka= 0x591a 0x5be1", "takaku= 0x591a 0x89d2", "tagenteki= 0x591a 0x5143 0x7684", "takou= 0x591a 0x5b54", "tasai1= 0x591a 0x5f69", "tasai2= 0x591a 0x624d", "tashitsu= 0x591a 0x6e7f", "tashou= 0x591a 0x5c11", "tasuu= 0x591a 0x6570", "tasou= 0x591a 0x5c64", "tadai= 0x591a 0x5927", "tabun= 0x591a 0x5206", "tahenkei= 0x591a 0x8fba 0x5f62", "tabou= 0x591a 0x5fd9", "tayou= 0x591a 0x69d8", "taryou= 0x591a 0x91cf", "futoi= 0x592a 0x3044", "futoppara= 0x592a 0x3063 0x8179", "futoru= 0x592a 0x308b", "taiko1= 0x592a 0x53e4", "taiko2= 0x592a 0x9f13", "futoji= 0x592a 0x5b57", "tachi1= 0x592a 0x5200", "taiheiyou= 0x592a 0x5e73 0x6d0b", "taiyou= 0x592a 0x967d", "taiyoureki= 0x592a 0x967d 0x66a6", "tsuba= 0x553e", "daeki= 0x553e 0x6db2", "da= 0x5815", "datai= 0x5815 0x80ce", "daraku= 0x5815 0x843d", "dakyou= 0x59a5 0x5354", "dakyouan= 0x59a5 0x5354 0x6848", "daketsu= 0x59a5 0x7d50", "datou= 0x59a5 0x5f53", "daki= 0x60f0 0x6c17", "dasei= 0x60f0 0x6027", "damin= 0x60f0 0x7720", "uchiawase1= 0x6253 0x3061 0x5408 0x305b", "uchiawase2= 0x6253 0x3061 0x5408 0x308f 0x305b", "uchiawaseru= 0x6253 0x3061 0x5408 0x308f 0x305b 0x308b", "uchikomu= 0x6253 0x3061 0x8fbc 0x3080", "uchikeshi1= 0x6253 0x3061 0x6d88 0x3057", "uchikesu1= 0x6253 0x3061 0x6d88 0x3059", "uchiageru= 0x6253 0x3061 0x4e0a 0x3052 0x308b", "uchiakeru= 0x6253 0x3061 0x660e 0x3051 0x308b", "utsu2= 0x6253 0x3064", "butsu= 0x6253 0x3064", "dakai= 0x6253 0x958b", "dagakki= 0x6253 0x697d 0x5668", "dageki= 0x6253 0x6483", "uchiawase3= 0x6253 0x5408 0x305b", "uchiawase4= 0x6253 0x5408 0x308f 0x305b", "dasanteki= 0x6253 0x7b97 0x7684", "uchikeshi2= 0x6253 0x6d88 0x3057", "uchikesu2= 0x6253 0x6d88 0x3059", "dashin= 0x6253 0x8a3a", "daha= 0x6253 0x7834", "butsukeru= 0x6253 0x4ed8 0x3051 0x308b", "daboku= 0x6253 0x64b2", "dabokushou= 0x6253 0x64b2 0x50b7", "kaji3= 0x8235", "daenkei= 0x6955 0x5186 0x5f62", "dagashi= 0x99c4 0x83d3 0x5b50", "dasaku= 0x99c4 0x4f5c", "dachin= 0x99c4 0x8cc3", "dame= 0x99c4 0x76ee", "karada= 0x4f53", "taiiku= 0x4f53 0x80b2", "taion= 0x4f53 0x6e29", "taionkei= 0x4f53 0x6e29 0x8a08", "taikaku= 0x4f53 0x683c", "taikei1= 0x4f53 0x578b", "taikei2= 0x4f53 0x7cfb", "taiken= 0x4f53 0x9a13", "teisai= 0x4f53 0x88c1", "taishitsu= 0x4f53 0x8cea", "taijuu= 0x4f53 0x91cd", "taisei1= 0x4f53 0x5236", "taiseki1= 0x4f53 0x7a4d", "taisou1= 0x4f53 0x64cd", "taichou1= 0x4f53 0x8abf", "taichou2= 0x4f53 0x9577", "taitoku= 0x4f53 0x5f97", "tainai= 0x4f53 0x5185", "taibatsu= 0x4f53 0x7f70", "karadatsuki= 0x4f53 0x4ed8 0x304d", "tairyoku= 0x4f53 0x529b", "taiseki2= 0x5806 0x7a4d", "tai1= 0x5bfe", "tsui= 0x5bfe", "taisuru= 0x5bfe 0x3059 0x308b", "taiou= 0x5bfe 0x5fdc", "taigan= 0x5bfe 0x5cb8", "taiketsu= 0x5bfe 0x6c7a", "taikou= 0x5bfe 0x6297", "taisaku= 0x5bfe 0x7b56", "taisho1= 0x5bfe 0x51e6", "taishou1= 0x5bfe 0x7167", "taishou2= 0x5bfe 0x79f0", "taishou3= 0x5bfe 0x8c61", "taidan= 0x5bfe 0x8ac7", "taitou1= 0x5bfe 0x7b49", "tainichi= 0x5bfe 0x65e5", "taihi1= 0x5bfe 0x6bd4", "taimen= 0x5bfe 0x9762", "tairitsu= 0x5bfe 0x7acb", "taiwa= 0x5bfe 0x8a71", "taeru3= 0x8010 0x3048 0x308b", "taika1= 0x8010 0x706b", "taikyuu= 0x8010 0x4e45", "tainetsu= 0x8010 0x71b1", "taibouseikatsu= 0x8010 0x4e4f 0x751f 0x6d3b", "obi= 0x5e2f", "tai2= 0x5e2f", "obiru= 0x5e2f 0x3073 0x308b", "machidooshii= 0x5f85 0x3061 0x9060 0x3057 0x3044", "machikaneru= 0x5f85 0x3061 0x517c 0x306d 0x308b", "machikamaeru= 0x5f85 0x3061 0x69cb 0x3048 0x308b", "machiawase= 0x5f85 0x3061 0x5408 0x308f 0x305b", "machiawaseru= 0x5f85 0x3061 0x5408 0x308f 0x305b 0x308b", "machiukeru= 0x5f85 0x3061 0x53d7 0x3051 0x308b", "machibuse= 0x5f85 0x3061 0x4f0f 0x305b", "machinozomu= 0x5f85 0x3061 0x671b 0x3080", "matsu2= 0x5f85 0x3064", "taiki1= 0x5f85 0x6a5f", "taiguu= 0x5f85 0x9047", "machiaishitsu= 0x5f85 0x5408 0x5ba4", "taibou= 0x5f85 0x671b", "darui= 0x6020 0x3044", "namakeru= 0x6020 0x3051 0x308b", "namakemono= 0x6020 0x3051 0x8005", "okotaru= 0x6020 0x308b", "taigyou= 0x6020 0x696d", "taida= 0x6020 0x60f0", "taiman= 0x6020 0x6162", "wazawaza= 0x614b 0x3005", "wazato= 0x614b 0x3068", "taisei2= 0x614b 0x52e2", "taido= 0x614b 0x5ea6", "itadakimasu= 0x6234 0x304d 0x307e 0x3059", "itadaku1= 0x6234 0x304f", "kaeru4= 0x66ff 0x3048 0x308b", "kawaru2= 0x66ff 0x308f 0x308b", "taisei3= 0x6cf0 0x897f", "taiseimeiga= 0x6cf0 0x897f 0x540d 0x753b", "taizenjijaku= 0x6cf0 0x7136 0x81ea 0x82e5", "taihei= 0x6cf0 0x5e73", "taizai= 0x6ede 0x5728", "tainou= 0x6ede 0x7d0d", "taiji1= 0x80ce 0x5150", "taidou= 0x80ce 0x52d5", "taiban= 0x80ce 0x76e4", "fukuro= 0x888b", "fukurokouji= 0x888b 0x5c0f 0x8def", "kashi5= 0x8cb8 0x3057", "kashibo-to= 0x8cb8 0x3057 0x30dc 0x30fc 0x30c8", "kashidashi= 0x8cb8 0x3057 0x51fa 0x3057", "kashidasu= 0x8cb8 0x3057 0x51fa 0x3059", "kashikiri1= 0x8cb8 0x3057 0x5207 0x308a", "kasu= 0x8cb8 0x3059", "kashiya2= 0x8cb8 0x5bb6", "kashima= 0x8cb8 0x9593", "taishaku= 0x8cb8 0x501f", "kashikiri2= 0x8cb8 0x5207 0x308a", "taiyo= 0x8cb8 0x4e0e", "shirizoku= 0x9000 0x304f", "shirizokeru= 0x9000 0x3051 0x308b", "dokeru= 0x9000 0x3051 0x308b", "nokeru= 0x9000 0x3051 0x308b", "taiin= 0x9000 0x9662", "taigaku= 0x9000 0x5b66", "taikyaku= 0x9000 0x5374", "taikutsu= 0x9000 0x5c48", "taiji2= 0x9000 0x6cbb", "taishoku= 0x9000 0x8077", "taijin= 0x9000 0x9663", "taihai= 0x9000 0x5ec3", "taihaiteki= 0x9000 0x5ec3 0x7684", "taihi2= 0x9000 0x907f", "taiho= 0x902e 0x6355", "taihojou= 0x902e 0x6355 0x72b6", "tai3= 0x9bdb", "shiro2= 0x4ee3", "yo2= 0x4ee3", "kaeru5= 0x4ee3 0x3048 0x308b", "kawari= 0x4ee3 0x308f 0x308a", "kawaru3= 0x4ee3 0x308f 0x308b", "kawarugawaru= 0x4ee3 0x308f 0x308b 0x4ee3 0x308f 0x308b", "daigishi= 0x4ee3 0x8b70 0x58eb", "daikin= 0x4ee3 0x91d1", "daikou= 0x4ee3 0x884c", "taisha1= 0x4ee3 0x8b1d", "daishou1= 0x4ee3 0x511f", "daigae= 0x4ee3 0x66ff", "daitai1= 0x4ee3 0x66ff", "daidai= 0x4ee3 0x4ee3", "daihyou= 0x4ee3 0x8868", "daihyouteki= 0x4ee3 0x8868 0x7684", "daiben1= 0x4ee3 0x5f01", "daimeishi= 0x4ee3 0x540d 0x8a5e", "daiyou= 0x4ee3 0x7528", "dairi= 0x4ee3 0x7406", "dai1= 0x53f0", "daidokoro= 0x53f0 0x6240", "taifuu= 0x53f0 0x98a8", "daihon= 0x53f0 0x672c", "dainashi= 0x53f0 0x7121 0x3057", "taiwan= 0x53f0 0x6e7e", "ooini= 0x5927 0x3044 0x306b", "ookii= 0x5927 0x304d 0x3044", "ookisa= 0x5927 0x304d 0x3055", "oogesa= 0x5927 0x3052 0x3055", "oozappa= 0x5927 0x3056 0x3063 0x3071", "taishita= 0x5927 0x3057 0x305f", "taishite= 0x5927 0x3057 0x3066", "oomaka= 0x5927 0x307e 0x304b", "taii= 0x5927 0x5c09", "daiuchuu= 0x5927 0x5b87 0x5b99", "ooame= 0x5927 0x96e8", "ooya= 0x5927 0x5c4b", "taika2= 0x5927 0x5bb6", "ookawa= 0x5927 0x6cb3", "taiga= 0x5927 0x6cb3", "taikai1= 0x5927 0x4f1a", "oomisoka= 0x5927 0x6666 0x65e5", "taikai2= 0x5927 0x6d77", "taigai= 0x5927 0x6982", "daigaku= 0x5927 0x5b66", "daigakuin= 0x5927 0x5b66 0x9662", "daigakusei= 0x5927 0x5b66 0x751f", "ooyorokobi= 0x5927 0x559c 0x3073", "taiki2= 0x5927 0x6c17", "taikiosen= 0x5927 0x6c17 0x6c5a 0x67d3", "ooisogi= 0x5927 0x6025 0x304e", "taikin= 0x5927 0x91d1", "oozora= 0x5927 0x7a7a", "oogata= 0x5927 0x578b", "daikirai= 0x5927 0x5acc 0x3044", "daisuki= 0x5927 0x597d 0x304d", "daiku= 0x5927 0x5de5", "ooawate= 0x5927 0x614c 0x3066", "taikoku= 0x5927 0x56fd", "daikokubashira= 0x5927 0x9ed2 0x67f1", "daikon= 0x5927 0x6839", "taisa= 0x5927 0x4f50", "oozara= 0x5927 0x76bf", "taishi= 0x5927 0x4f7f", "taishikan= 0x5927 0x4f7f 0x9928", "ooeda= 0x5927 0x679d", "daiji= 0x5927 0x4e8b", "taisha2= 0x5927 0x8d66", "oote= 0x5927 0x624b", "taishuu= 0x5927 0x8846", "taishuubungaku= 0x5927 0x8846 0x6587 0x5b66", "taisho2= 0x5927 0x6691", "taishou4= 0x5927 0x5c06", "daishou2= 0x5927 0x5c0f", "oowarai= 0x5927 0x7b11 0x3044", "taishou5= 0x5927 0x8a54", "daijoubu= 0x5927 0x4e08 0x592b", "daijin= 0x5927 0x81e3", "otona= 0x5927 0x4eba", "otonashii= 0x5927 0x4eba 0x3057 0x3044", "oomizu= 0x5927 0x6c34", "oozei= 0x5927 0x52e2", "taisei4= 0x5927 0x52e2", "taishou6= 0x5927 0x6b63", "oomori= 0x5927 0x76db 0x308a", "oogoe= 0x5927 0x58f0", "taiseiyou= 0x5927 0x897f 0x6d0b", "oomukashi= 0x5927 0x6614", "taisetsu= 0x5927 0x5207", "ooyuki= 0x5927 0x96ea", "taisen= 0x5927 0x6226", "daizentei= 0x5927 0x524d 0x63d0", "taisou2= 0x5927 0x5c64", "oosouji= 0x5927 0x6383 0x9664", "oozumou= 0x5927 0x76f8 0x64b2", "oosawagi= 0x5927 0x9a12 0x304e", "ookura= 0x5927 0x8535", "ookurashou= 0x5927 0x8535 0x7701", "oozon= 0x5927 0x640d", "daitasuu= 0x5927 0x591a 0x6570", "daitai2= 0x5927 0x4f53", "daitan= 0x5927 0x80c6", "oootoko= 0x5927 0x7537", "daichi= 0x5927 0x5730", "daichou= 0x5927 0x8178", "oodoori= 0x5927 0x901a 0x308a", "taitei= 0x5927 0x62b5", "daitoshi= 0x5927 0x90fd 0x5e02", "taitou2= 0x5927 0x5200", "daitouryou= 0x5927 0x7d71 0x9818", "daizu= 0x5927 0x8c46", "dainou= 0x5927 0x8133", "oomugi= 0x5927 0x9ea6", "taihan= 0x5927 0x534a", "daibubun= 0x5927 0x90e8 0x5206", "oohaba= 0x5927 0x5e45", "daibutsu= 0x5927 0x4ecf", "daibu= 0x5927 0x5206", "daibun= 0x5927 0x5206", "oomoji= 0x5927 0x6587 0x5b57", "taibetsu= 0x5927 0x5225", "taihen= 0x5927 0x5909", "daiben2= 0x5927 0x4fbf", "ookata= 0x5927 0x65b9", "taihou= 0x5927 0x7832", "taimou= 0x5927 0x671b", "taima= 0x5927 0x9ebb", "taimai= 0x5927 0x679a", "daimyou= 0x5927 0x540d", "tairiku= 0x5927 0x9678", "tairikudana= 0x5927 0x9678 0x68da", "tairyou= 0x5927 0x91cf", "tairyouseisan= 0x5927 0x91cf 0x751f 0x7523", "yamatoe= 0x5927 0x548c 0x7d75", "yamatodamashii= 0x5927 0x548c 0x9b42", "dai2= 0x7b2c", "daiichi= 0x7b2c 0x4e00", "daiikka= 0x7b2c 0x4e00 0x8ab2", "daiichigakushou= 0x7b2c 0x4e00 0x697d 0x7ae0", "daiichijou= 0x7b2c 0x4e00 0x6761", "daisansha= 0x7b2c 0x4e09 0x8005", "dai3= 0x984c", "daizai= 0x984c 0x6750", "daimei= 0x984c 0x540d", "taki= 0x6edd", "takiguchi= 0x6edd 0x53e3", "takinobori= 0x6edd 0x767b 0x308a", "taku2= 0x5353", "takuetsu= 0x5353 0x8d8a", "takkyuu= 0x5353 0x7403", "takujou= 0x5353 0x4e0a", "taku3= 0x5b85", "takuchi= 0x5b85 0x5730", "takuitsu= 0x629e 0x4e00", "takushoku= 0x62d3 0x6b96", "takuhon= 0x62d3 0x672c", "sawa= 0x6ca2", "takusan= 0x6ca2 0x5c71", "takusu= 0x8a17 0x3059", "takujisho= 0x8a17 0x5150 0x6240", "takusen= 0x8a17 0x5ba3", "nigosu= 0x6fc1 0x3059", "nigoriten= 0x6fc1 0x308a 0x70b9", "nigoru= 0x6fc1 0x308b", "dakuon= 0x6fc1 0x97f3", "dakuryuu= 0x6fc1 0x6d41", "dakuhi= 0x8afe 0x5426", "kinoko= 0x8338", "tako1= 0x51e7", "tako2= 0x86f8", "tada1= 0x53ea", "hitasura= 0x53ea 0x7ba1", "hataki= 0x53e9 0x304d", "tataku= 0x53e9 0x304f", "tadashi= 0x4f46 0x3057", "tadashigaki= 0x4f46 0x3057 0x66f8 0x304d", "tachi2= 0x9054", "tassuru= 0x9054 0x3059 0x308b", "tatsujin= 0x9054 0x4eba", "tassei= 0x9054 0x6210", "tappitsu= 0x9054 0x7b46", "daruma= 0x9054 0x78e8", "ubaiau= 0x596a 0x3044 0x5408 0x3046", "ubau= 0x596a 0x3046", "dakkai= 0x596a 0x56de", "dakkan= 0x596a 0x9084", "nugu= 0x8131 0x3050", "nugeru= 0x8131 0x3052 0x308b", "datsui= 0x8131 0x8863", "datsuisho= 0x8131 0x8863 0x6240", "datsuijo= 0x8131 0x8863 0x6240", "dakkokuki= 0x8131 0x7a40 0x6a5f", "dasshutsu= 0x8131 0x51fa", "dassui= 0x8131 0x6c34", "datsuzei= 0x8131 0x7a0e", "dassen= 0x8131 0x7dda", "dassou= 0x8131 0x8d70", "dattai= 0x8131 0x9000", "datsuraku= 0x8131 0x843d", "datsurou= 0x8131 0x6f0f", "tategoto= 0x7aea 0x7434", "tadoru= 0x8fbf 0x308b", "tana= 0x68da", "tanaoroshi= 0x68da 0x5378 0x3057", "tanaage= 0x68da 0x4e0a 0x3052", "tani1= 0x8c37", "tanima= 0x8c37 0x9593", "tanigawa= 0x8c37 0x5ddd", "tanisoko= 0x8c37 0x5e95", "dare= 0x8ab0", "dareka= 0x8ab0 0x304b", "tansei1= 0x4e39 0x7cbe", "tansei2= 0x4e39 0x8aa0", "tanzen= 0x4e39 0x524d", "tannen= 0x4e39 0x5ff5", "tannaru= 0x5358 0x306a 0x308b", "tanni= 0x5358 0x306b", "tani2= 0x5358 0x4f4d", "tanitsu= 0x5358 0x4e00", "tanka1= 0x5358 0x4fa1", "tango= 0x5358 0x8a9e", "tankoubon= 0x5358 0x884c 0x672c", "tansaibou= 0x5358 0x7d30 0x80de", "tanjun= 0x5358 0x7d14", "tansuu= 0x5358 0x6570", "tanchou= 0x5358 0x8abf", "tandoku= 0x5358 0x72ec", "nagekawashii= 0x5606 0x304b 0x308f 0x3057 0x3044", "nageki= 0x5606 0x304d", "nageku= 0x5606 0x304f", "tangan= 0x5606 0x9858", "tansoku= 0x5606 0x606f", "ninau= 0x62c5 0x3046", "katsugu= 0x62c5 0x3050", "tanka2= 0x62c5 0x67b6", "tantou1= 0x62c5 0x5f53", "tannin= 0x62c5 0x4efb", "tanpo= 0x62c5 0x4fdd", "sagashimawaru2= 0x63a2 0x3057 0x56de 0x308b", "sagasu2= 0x63a2 0x3059", "saguridasu= 0x63a2 0x308a 0x51fa 0x3059", "saguru= 0x63a2 0x308b", "tankyuu1= 0x63a2 0x6c42", "tankyuu2= 0x63a2 0x7a76", "tanken1= 0x63a2 0x691c", "tankentai= 0x63a2 0x691c 0x968a", "tanken2= 0x63a2 0x967a", "tansaku= 0x63a2 0x7d22", "tanchi= 0x63a2 0x77e5", "tantei= 0x63a2 0x5075", "tanteishousetsu= 0x63a2 0x5075 0x5c0f 0x8aac", "tanbou= 0x63a2 0x8a2a", "danna= 0x65e6 0x90a3", "awai= 0x6de1 0x3044", "tansai= 0x6de1 0x5f69", "tansui= 0x6de1 0x6c34", "awayuki= 0x6de1 0x96ea", "sumi2= 0x70ad", "tankou1= 0x70ad 0x5751", "tansan= 0x70ad 0x9178", "tanso= 0x70ad 0x7d20", "sumidawara= 0x70ad 0x4ff5", "mijikai= 0x77ed 0x3044", "tanka3= 0x77ed 0x6b4c", "tanki1= 0x77ed 0x671f", "tankidaigaku= 0x77ed 0x671f 0x5927 0x5b66", "tanki2= 0x77ed 0x6c17", "tankyori= 0x77ed 0x8ddd 0x96e2", "tanken3= 0x77ed 0x5263", "tanzaku= 0x77ed 0x518a", "tanjuu= 0x77ed 0x9283", "tanshuku= 0x77ed 0x7e2e", "tansho= 0x77ed 0x6240", "tanshin= 0x77ed 0x91dd", "tandai= 0x77ed 0x5927", "tantou2= 0x77ed 0x5200", "tanpa= 0x77ed 0x6ce2", "tanpenshousetsu= 0x77ed 0x7de8 0x5c0f 0x8aac", "tanmei= 0x77ed 0x547d", "hashi2= 0x7aef", "hashitanai= 0x7aef 0x305f 0x306a 0x3044", "hashoru= 0x7aef 0x6298 0x308b", "tanteki= 0x7aef 0x7684", "tanrei= 0x7aef 0x9e97", "tansu= 0x7baa 0x7b25", "hokorobiru= 0x7dbb 0x3073 0x308b", "fukeru2= 0x803d 0x308b", "tanseki= 0x80c6 0x77f3", "tanryoku= 0x80c6 0x529b", "tanpakushitsu= 0x86cb 0x767d 0x8cea", "tanjou= 0x8a95 0x751f", "tanjouiwai= 0x8a95 0x751f 0x795d 0x3044", "tanjoubi= 0x8a95 0x751f 0x65e5", "kitaeru= 0x935b 0x3048 0x308b", "kitaeageru= 0x935b 0x3048 0x4e0a 0x3052 0x308b", "tankou2= 0x935b 0x5de5", "tanren= 0x935b 0x932c", "danketsu= 0x56e3 0x7d50", "uchiwa= 0x56e3 0x6247", "dantai= 0x56e3 0x4f53", "dantairyokou= 0x56e3 0x4f53 0x65c5 0x884c", "danchi= 0x56e3 0x5730", "dan= 0x58c7", "tama3= 0x5f3e", "hajiku= 0x5f3e 0x304f", "hiku2= 0x5f3e 0x304f", "hazumu= 0x5f3e 0x3080", "danatsu= 0x5f3e 0x5727", "dangai= 0x5f3e 0x52be", "dangan= 0x5f3e 0x4e38", "danyaku= 0x5f3e 0x85ac", "danryoku= 0x5f3e 0x529b", "danjite= 0x65ad 0x3058 0x3066", "tatsu5= 0x65ad 0x3064", "kotowaru= 0x65ad 0x308b", "dansui= 0x65ad 0x6c34", "danzetsu= 0x65ad 0x7d76", "danzen= 0x65ad 0x7136", "danchounoomoi= 0x65ad 0x8178 0x306e 0x601d 0x3044", "dantei= 0x65ad 0x5b9a", "dannen= 0x65ad 0x5ff5", "danpen= 0x65ad 0x7247", "atatakai2= 0x6696 0x304b 0x3044", "atatamaru2= 0x6696 0x307e 0x308b", "atatameru2= 0x6696 0x3081 0x308b", "dantou= 0x6696 0x51ac", "danbou= 0x6696 0x623f", "danryuu= 0x6696 0x6d41", "noren= 0x6696 0x7c3e", "danro= 0x6696 0x7089", "dandan= 0x6bb5 0x3005", "dandanbatake= 0x6bb5 0x3005 0x7551", "dankai= 0x6bb5 0x968e", "dandori= 0x6bb5 0x53d6 0x308a", "danraku= 0x6bb5 0x843d", "otoko= 0x7537", "otokonoko= 0x7537 0x306e 0x5b50", "otokonohito= 0x7537 0x306e 0x4eba", "otokorashii= 0x7537 0x3089 0x3057 0x3044", "danshi= 0x7537 0x5b50", "danshiyou= 0x7537 0x5b50 0x7528", "danshaku= 0x7537 0x7235", "danjo= 0x7537 0x5973", "dansei= 0x7537 0x6027", "danseiteki= 0x7537 0x6027 0x7684", "otokomae= 0x7537 0x524d", "dansonjohi= 0x7537 0x5c0a 0x5973 0x5351", "danshou= 0x8ac7 0x7b11", "danwa= 0x8ac7 0x8a71", "ataisuru= 0x5024 0x3059 0x308b", "nebiki= 0x5024 0x5f15 0x304d", "nesagari= 0x5024 0x4e0b 0x304c 0x308a", "nesage= 0x5024 0x4e0b 0x3052", "neagari= 0x5024 0x4e0a 0x304c 0x308a", "neage= 0x5024 0x4e0a 0x3052", "negiru= 0x5024 0x5207 0x308b", "neuchi= 0x5024 0x6253 0x3061", "nedan= 0x5024 0x6bb5", "shirazushirazu= 0x77e5 0x3089 0x305a 0x77e5 0x3089 0x305a", "shirase= 0x77e5 0x3089 0x305b", "shiraseru= 0x77e5 0x3089 0x305b 0x308b", "shirankao= 0x77e5 0x3089 0x3093 0x9854", "shiriai1= 0x77e5 0x308a 0x5408 0x3044", "shiriau1= 0x77e5 0x308a 0x5408 0x3046", "shiru2= 0x77e5 0x308b", "shireru= 0x77e5 0x308c 0x308b", "chikaku2= 0x77e5 0x899a", "chie= 0x77e5 0x6075", "chiesha= 0x77e5 0x6075 0x8005", "chiki1= 0x77e5 0x5df1", "shiriai2= 0x77e5 0x5408 0x3044", "shiriau2= 0x77e5 0x5408 0x3046", "chiji= 0x77e5 0x4e8b", "chishiki= 0x77e5 0x8b58", "chijin1= 0x77e5 0x4eba", "chisei= 0x77e5 0x6027", "chiteki= 0x77e5 0x7684", "chinou= 0x77e5 0x80fd", "chi3= 0x5730", "chii= 0x5730 0x4f4d", "chiiki= 0x5730 0x57df", "chika1= 0x5730 0x4e0b", "chikagai= 0x5730 0x4e0b 0x8857", "chikakei= 0x5730 0x4e0b 0x830e", "chikatetsu= 0x5730 0x4e0b 0x9244", "chikadou= 0x5730 0x4e0b 0x9053", "chika2= 0x5730 0x4fa1", "chikaku3= 0x5730 0x6bbb", "chikakuhendou= 0x5730 0x6bbb 0x5909 0x52d5", "chikyuu= 0x5730 0x7403", "chikyuugi= 0x5730 0x7403 0x5100", "chiku= 0x5730 0x533a", "chikei= 0x5730 0x5f62", "jimoto= 0x5730 0x5143", "jigoku= 0x5730 0x7344", "chishi= 0x5730 0x8a8c", "chijiku= 0x5730 0x8ef8", "chishitsu= 0x5730 0x8cea", "jinushi= 0x5730 0x4e3b", "chijou1= 0x5730 0x4e0a", "jishin3= 0x5730 0x9707", "chizu= 0x5730 0x56f3", "chiso= 0x5730 0x79df", "chitai1= 0x5730 0x5e2f", "chiten= 0x5730 0x70b9", "jihada= 0x5730 0x808c", "chiheisen= 0x5730 0x5e73 0x7dda", "chihou= 0x5730 0x65b9", "jimi= 0x5730 0x5473", "chimei= 0x5730 0x540d", "jimen= 0x5730 0x9762", "jirai= 0x5730 0x96f7", "chiri2= 0x5730 0x7406", "tarumu= 0x5f1b 0x3080", "haji1= 0x6065", "hajisarashi= 0x6065 0x3055 0x3089 0x3057", "hajirau= 0x6065 0x3058 0x3089 0x3046", "hajiru= 0x6065 0x3058 0x308b", "hazukashii= 0x6065 0x305a 0x304b 0x3057 0x3044", "chijoku= 0x6065 0x8fb1", "hajishirazu= 0x6065 0x77e5 0x3089 0x305a", "ike= 0x6c60", "chijou2= 0x75f4 0x60c5", "chijin2= 0x75f4 0x4eba", "chiki2= 0x7a1a 0x6c17", "chigo= 0x7a1a 0x5150", "chisetsu= 0x7a1a 0x62d9", "oku3= 0x7f6e 0x304f", "okimono= 0x7f6e 0x7269", "itasu= 0x81f4 0x3059", "chishiryou= 0x81f4 0x6b7b 0x91cf", "chimeishou= 0x81f4 0x547d 0x50b7", "chimeiteki= 0x81f4 0x547d 0x7684", "kumo2= 0x8718 0x86db", "osoi= 0x9045 0x3044", "okurasu= 0x9045 0x3089 0x3059", "okure= 0x9045 0x308c", "okureru2= 0x9045 0x308c 0x308b", "chien= 0x9045 0x5ef6", "chikoku= 0x9045 0x523b", "osozaki= 0x9045 0x54b2 0x304d", "chisoku= 0x9045 0x901f", "chitai2= 0x9045 0x6ede", "chichaku= 0x9045 0x7740", "chihai= 0x9045 0x914d", "kizuku= 0x7bc9 0x304f", "tsukiyama= 0x7bc9 0x5c71", "chikusan= 0x755c 0x7523", "chikushou= 0x755c 0x751f", "take3= 0x7af9", "takegaki= 0x7af9 0x57a3", "shinai3= 0x7af9 0x5200", "takedutsu= 0x7af9 0x7b52", "takeuma= 0x7af9 0x99ac", "chikuba= 0x7af9 0x99ac", "chikurin= 0x7af9 0x6797", "takuwaeru= 0x84c4 0x3048 0x308b", "chikuseki= 0x84c4 0x7a4d", "chikudenchi= 0x84c4 0x96fb 0x6c60", "chikuichi= 0x9010 0x4e00", "chikugoyaku= 0x9010 0x8a9e 0x8a33", "chikuji= 0x9010 0x6b21", "chikuden= 0x9010 0x96fb", "chitsujo= 0x79e9 0x5e8f", "chisso= 0x7a92 0x7d20", "chissoku= 0x7a92 0x606f", "chissokushi= 0x7a92 0x606f 0x6b7b", "cha= 0x8336", "chanoma= 0x8336 0x306e 0x9593", "chanoyu= 0x8336 0x306e 0x6e6f", "chawan= 0x8336 0x308f 0x3093", "chaka= 0x8336 0x83d3", "chakasshoku= 0x8336 0x8910 0x8272", "chashitsu= 0x8336 0x5ba4", "chairo= 0x8336 0x8272", "chatsumi= 0x8336 0x6458 0x307f", "sadou2= 0x8336 0x9053", "chadou= 0x8336 0x9053", "chabatake= 0x8336 0x7551", "chakushi1= 0x5ae1 0x55e3", "chakushi2= 0x5ae1 0x5b50", "chakushutsushi= 0x5ae1 0x51fa 0x5b50", "chakuson= 0x5ae1 0x5b6b", "chakunan= 0x5ae1 0x7537", "chakuryuu= 0x5ae1 0x6d41", "chaku= 0x7740", "chakuchaku= 0x7740 0x3005", "tsuku2= 0x7740 0x304f", "tsukeru2= 0x7740 0x3051 0x308b", "kiseru= 0x7740 0x305b 0x308b", "kiru2= 0x7740 0x308b", "chakujitsu= 0x7740 0x5b9f", "chakushu= 0x7740 0x624b", "kikazaru= 0x7740 0x98fe 0x308b", "chakushoku= 0x7740 0x8272", "chakuseki= 0x7740 0x5e2d", "kigae= 0x7740 0x66ff 0x3048", "kikaeru= 0x7740 0x66ff 0x3048 0x308b", "kigaeru= 0x7740 0x66ff 0x3048 0x308b", "chakufuku= 0x7740 0x670d", "kimono= 0x7740 0x7269", "chakuriku= 0x7740 0x9678", "naka1= 0x4e2d", "chuui1= 0x4e2d 0x5c09", "chuuou= 0x4e2d 0x592e", "chuuouguchi= 0x4e2d 0x592e 0x53e3", "chuuoubu= 0x4e2d 0x592e 0x90e8", "chuuka= 0x4e2d 0x83ef", "chuukajinminkyouwakoku= 0x4e2d 0x83ef 0x4eba 0x6c11 0x5171 0x548c 0x56fd", "chuukaryouri= 0x4e2d 0x83ef 0x6599 0x7406", "chuukaku= 0x4e2d 0x6838", "chuugaku= 0x4e2d 0x5b66", "chuugakkou= 0x4e2d 0x5b66 0x6821", "chuugakusei= 0x4e2d 0x5b66 0x751f", "chuukan1= 0x4e2d 0x5dfb", "chuukan2= 0x4e2d 0x9593", "nakayasumi= 0x4e2d 0x4f11 0x307f", "chuukyuu= 0x4e2d 0x7d1a", "chuukyorikyousou= 0x4e2d 0x8ddd 0x96e2 0x7af6 0x8d70", "chuukei= 0x4e2d 0x7d99", "nakatsugi1= 0x4e2d 0x7d99 0x304e", "chuuken= 0x4e2d 0x5805", "chuuko= 0x4e2d 0x53e4", "chuugoku= 0x4e2d 0x56fd", "chuusankaikyuu= 0x4e2d 0x7523 0x968e 0x7d1a", "nakayubi= 0x4e2d 0x6307", "chuushi= 0x4e2d 0x6b62", "nakatsugi2= 0x4e2d 0x6b21 0x304e", "chuuji= 0x4e2d 0x8033", "chuujien= 0x4e2d 0x8033 0x708e", "nakasu= 0x4e2d 0x5dde", "chuujun= 0x4e2d 0x65ec", "chuushou1= 0x4e2d 0x50b7", "chuushou2= 0x4e2d 0x5c0f", "chuushoukigyou= 0x4e2d 0x5c0f 0x4f01 0x696d", "chuushin1= 0x4e2d 0x5fc3", "nakami= 0x4e2d 0x8eab", "chuusuu= 0x4e2d 0x67a2", "chuusei1= 0x4e2d 0x4e16", "chuusei2= 0x4e2d 0x6027", "chuuzetsu= 0x4e2d 0x7d76", "chuutai= 0x4e2d 0x9000", "chuudan= 0x4e2d 0x65ad", "nakanaka= 0x4e2d 0x4e2d", "nakaniwa= 0x4e2d 0x5ead", "chuuto= 0x4e2d 0x9014", "chuudou= 0x4e2d 0x9053", "chuudoku= 0x4e2d 0x6bd2", "chuunen= 0x4e2d 0x5e74", "chuufuu= 0x4e2d 0x98a8", "chuuyou= 0x4e2d 0x5eb8", "chuuritsu= 0x4e2d 0x7acb", "chuuryuu= 0x4e2d 0x6d41", "chuuwa= 0x4e2d 0x548c", "naka2= 0x4ef2", "chuukai= 0x4ef2 0x4ecb", "nakama= 0x4ef2 0x9593", "chuusai= 0x4ef2 0x88c1", "nakoudo= 0x4ef2 0x4eba", "nakanaori= 0x4ef2 0x76f4 0x308a", "nakagai= 0x4ef2 0x8cb7", "nakayoku= 0x4ef2 0x826f 0x304f", "nakayoshi= 0x4ef2 0x826f 0x3057", "chuugaeri= 0x5b99 0x8fd4 0x308a", "chuugi= 0x5fe0 0x7fa9", "chuukoku= 0x5fe0 0x544a", "chuujitsu= 0x5fe0 0x5b9f", "mame= 0x5fe0 0x5b9f", "chuushingura= 0x5fe0 0x81e3 0x8535", "chuusei3= 0x5fe0 0x8aa0", "chuushutsu= 0x62bd 0x51fa", "chuushou3= 0x62bd 0x8c61", "chuushouteki= 0x62bd 0x8c61 0x7684", "chuusen= 0x62bd 0x9078", "hiru2= 0x663c", "hirusagari= 0x663c 0x4e0b 0x304c 0x308a", "hirusugi= 0x663c 0x904e 0x304e", "hiruma= 0x663c 0x9593", "hiruyasumi= 0x663c 0x4f11 0x307f", "chuushoku= 0x663c 0x98df", "hirune= 0x663c 0x5bdd", "hirumae= 0x663c 0x524d", "hirumeshi= 0x663c 0x98ef", "chuuya= 0x663c 0x591c", "hashira= 0x67f1", "chuu= 0x6ce8", "sosogu= 0x6ce8 0x3050", "tsugu4= 0x6ce8 0x3050", "sasu6= 0x6ce8 0x3059", "chuui2= 0x6ce8 0x610f", "chuuibukai= 0x6ce8 0x610f 0x6df1 0x3044", "chuusha1= 0x6ce8 0x5c04", "chuushaku= 0x6ce8 0x91c8", "chuunyuu= 0x6ce8 0x5165", "chuumon= 0x6ce8 0x6587", "chuumoku= 0x6ce8 0x76ee", "mushi1= 0x866b", "mushiba= 0x866b 0x6b6f", "chuusui= 0x866b 0x5782", "chuujou= 0x8877 0x60c5", "chuushin2= 0x8877 0x5fc3", "iru3= 0x92f3 0x308b", "igata= 0x92f3 0x578b", "chuuzou= 0x92f3 0x9020", "chuutetsu= 0x92f3 0x9244", "imono= 0x92f3 0x7269", "chuuzai= 0x99d0 0x5728", "chuusha2= 0x99d0 0x8eca", "chuushajou= 0x99d0 0x8eca 0x5834", "chuuton= 0x99d0 0x5c6f", "chuutonchi= 0x99d0 0x5c6f 0x5730", "chuunichi= 0x99d0 0x65e5", "ichijirushii= 0x8457 0x3057 0x3044", "arawasu3= 0x8457 0x3059", "arawasu4= 0x8457 0x308f 0x3059", "chosha= 0x8457 0x8005", "chojutsuka= 0x8457 0x8ff0 0x5bb6", "chosho= 0x8457 0x66f8", "chomei= 0x8457 0x540d", "chokin= 0x8caf 0x91d1", "chokintsuuchou= 0x8caf 0x91d1 0x901a 0x5e33", "chokinbako= 0x8caf 0x91d1 0x7bb1", "chosuichi= 0x8caf 0x6c34 0x6c60", "chozou= 0x8caf 0x8535", "chochiku= 0x8caf 0x84c4", "chou1= 0x4e01", "tei1= 0x4e01", "choudo= 0x4e01 0x5ea6", "teinei= 0x4e01 0x5be7", "choume= 0x4e01 0x76ee", "chou2= 0x5146", "kizashi= 0x5146 0x3057", "kizasu= 0x5146 0x3059", "choukou1= 0x5146 0x5019", "shibomu2= 0x51cb 0x3080", "shaberu= 0x558b 0x308b", "choukeshi= 0x5e33 0x6d88 0x3057", "choubo= 0x5e33 0x7c3f", "choumen= 0x5e33 0x9762", "chou3= 0x5e81", "tomurau= 0x5f14 0x3046", "choui= 0x5f14 0x610f", "chouji= 0x5f14 0x8f9e", "chouden= 0x5f14 0x96fb", "choumon= 0x5f14 0x554f", "haridasu= 0x5f35 0x308a 0x51fa 0x3059", "harikiru= 0x5f35 0x308a 0x5207 0x308b", "haru2= 0x5f35 0x308b", "chouhonnin= 0x5f35 0x672c 0x4eba", "horu2= 0x5f6b 0x308b", "choukin= 0x5f6b 0x91d1", "choukoku= 0x5f6b 0x523b", "chouso= 0x5f6b 0x5851", "chouzou= 0x5f6b 0x50cf", "choukou2= 0x5fb4 0x5019", "choushuu1= 0x5fb4 0x53ce", "chouzei= 0x5fb4 0x7a0e", "chouhei= 0x5fb4 0x5175", "korashimeru= 0x61f2 0x3089 0x3057 0x3081 0x308b", "korasu= 0x61f2 0x3089 0x3059", "koriru= 0x61f2 0x308a 0x308b", "choukai= 0x61f2 0x6212", "choubatsu= 0x61f2 0x7f70", "choueki= 0x61f2 0x5f79", "idomu= 0x6311 0x3080", "chousen1= 0x6311 0x6226", "chousensha= 0x6311 0x6226 0x8005", "chouhatsu= 0x6311 0x767a", "chouhatsuteki= 0x6311 0x767a 0x7684", "nonki= 0x66a2 0x6c17", "asa1= 0x671d", "asagohan1= 0x671d 0x3054 0x98ef", "choukan= 0x671d 0x520a", "asagao= 0x671d 0x9854", "asagohan2= 0x671d 0x5fa1 0x98ef", "choushoku= 0x671d 0x98df", "asanebou= 0x671d 0x5bdd 0x574a", "chousen2= 0x671d 0x9bae", "asahi= 0x671d 0x65e5", "asameshi= 0x671d 0x98ef", "asaban= 0x671d 0x6669", "asagiri= 0x671d 0x9727", "chourei= 0x671d 0x793c", "asatsuyu= 0x671d 0x9732", "shio2= 0x6f6e", "shionokanman= 0x6f6e 0x306e 0x5e72 0x6e80", "shiohigari= 0x6f6e 0x5e72 0x72e9", "shiodoki= 0x6f6e 0x6642", "chouryuu= 0x6f6e 0x6d41", "machi2= 0x753a", "machihazure= 0x753a 0x5916 0x308c", "machikado2= 0x753a 0x89d2", "chounin= 0x753a 0x4eba", "machinaka= 0x753a 0x4e2d", "chounai= 0x753a 0x5185", "machinami1= 0x753a 0x4e26", "machinami2= 0x753a 0x4e26 0x307f", "choumin= 0x753a 0x6c11", "nagame= 0x773a 0x3081", "nagameru= 0x773a 0x3081 0x308b", "choubou= 0x773a 0x671b", "kiku3= 0x8074 0x304f", "choukaku= 0x8074 0x899a", "choukou3= 0x8074 0x8b1b", "choushu= 0x8074 0x53d6", "choushuu2= 0x8074 0x8846", "chou4= 0x8178", "chounenten= 0x8178 0x637b 0x8ee2", "chouheisoku= 0x8178 0x9589 0x585e", "chou5= 0x8776", "chouchou1= 0x8776 0x3005", "chouchou2= 0x8776 0x8776", "totonou2= 0x8abf 0x3046", "totonoeru2= 0x8abf 0x3048 0x308b", "shirabe= 0x8abf 0x3079", "shiraberu= 0x8abf 0x3079 0x308b", "chouin= 0x8abf 0x5370", "chousa= 0x8abf 0x67fb", "chouzai= 0x8abf 0x5264", "choushi= 0x8abf 0x5b50", "chousei= 0x8abf 0x6574", "chousetsu= 0x8abf 0x7bc0", "choutei= 0x8abf 0x505c", "choumiryou= 0x8abf 0x5473 0x6599", "chouri= 0x8abf 0x7406", "chouwa= 0x8abf 0x548c", "chou6= 0x8d85", "koeru2= 0x8d85 0x3048 0x308b", "kosu2= 0x8d85 0x3059", "chouetsu= 0x8d85 0x8d8a", "chouonsoku= 0x8d85 0x97f3 0x901f", "chouka= 0x8d85 0x904e", "choujin= 0x8d85 0x4eba", "choutaikoku= 0x8d85 0x5927 0x56fd", "choutokkyuu= 0x8d85 0x7279 0x6025", "choumanin= 0x8d85 0x6e80 0x54e1", "haneru1= 0x8df3 0x306d 0x308b", "haneagaru= 0x8df3 0x306d 0x4e0a 0x304c 0x308b", "tobiagaru1= 0x8df3 0x3073 0x4e0a 0x304c 0x308b", "tobu1= 0x8df3 0x3076", "chouyaku= 0x8df3 0x8e8d", "nagai2= 0x9577 0x3044", "nagaiaida= 0x9577 0x3044 0x9593", "nagasa= 0x9577 0x3055", "nagaraku= 0x9577 0x3089 0x304f", "nagabiku= 0x9577 0x5f15 0x304f", "nagawazurai= 0x9577 0x60a3 0x3044", "nodoka= 0x9577 0x9591", "chouki= 0x9577 0x671f", "choukishakkan= 0x9577 0x671f 0x501f 0x6b3e", "choukyuu= 0x9577 0x4e45", "nagai3= 0x9577 0x5c45", "choukyori= 0x9577 0x8ddd 0x96e2", "nagamochi= 0x9577 0x6301 0x3061", "choujikan= 0x9577 0x6642 0x9593", "choudanoretsu= 0x9577 0x86c7 0x306e 0x5217", "chouju= 0x9577 0x5bff", "chousho= 0x9577 0x6240", "choujo= 0x9577 0x5973", "nagaiki= 0x9577 0x751f 0x304d", "nagatsuduki= 0x9577 0x7d9a 0x304d", "nagasode= 0x9577 0x8896", "choudai1= 0x9577 0x5927", "choutan= 0x9577 0x77ed", "chounan= 0x9577 0x7537", "naganen= 0x9577 0x5e74", "chouhoukei= 0x9577 0x65b9 0x5f62", "chourou= 0x9577 0x8001", "nagabanashi= 0x9577 0x8a71", "itadaki= 0x9802", "itadaku2= 0x9802 0x304f", "choujou= 0x9802 0x4e0a", "choudai2= 0x9802 0x6234", "chouten= 0x9802 0x70b9", "tori= 0x9ce5", "torii= 0x9ce5 0x5c45", "choujuuhogokuiki= 0x9ce5 0x7363 0x4fdd 0x8b77 0x533a 0x57df", "chotto2= 0x9ce5 0x6e21", "choku1= 0x52c5", "chokugo1= 0x52c5 0x8a9e", "chokushi1= 0x52c5 0x4f7f", "chokumei= 0x52c5 0x547d", "hakadoru= 0x6357 0x308b", "jiki6= 0x76f4", "choku2= 0x76f4", "sugu= 0x76f4 0x3050", "naosu2= 0x76f4 0x3059", "tadachini= 0x76f4 0x3061 0x306b", "jikani= 0x76f4 0x306b", "jikini= 0x76f4 0x306b", "naoru2= 0x76f4 0x308b", "chokkaku1= 0x76f4 0x899a", "chokkaku2= 0x76f4 0x89d2", "chokkatsu= 0x76f4 0x8f44", "chokkan1= 0x76f4 0x611f", "chokkan2= 0x76f4 0x89b3", "chokkei1= 0x76f4 0x5f84", "chokkei2= 0x76f4 0x7cfb", "chokugeki= 0x76f4 0x6483", "chokugo2= 0x76f4 0x5f8c", "chokushi2= 0x76f4 0x8996", "chokujoukeikou= 0x76f4 0x60c5 0x5f84 0x884c", "chokushin= 0x76f4 0x9032", "chokusetsu= 0x76f4 0x63a5", "chokusen= 0x76f4 0x7dda", "chokuzen= 0x76f4 0x524d", "chokutsuu= 0x76f4 0x901a", "chokuretsu= 0x76f4 0x5217", "chin= 0x6715", "chinomouni= 0x6715 0x601d 0x3046 0x306b", "shizumu= 0x6c88 0x3080", "shizumeru2= 0x6c88 0x3081 0x308b", "chinka= 0x6c88 0x4e0b", "chinshi= 0x6c88 0x601d", "chinshimokkou= 0x6c88 0x601d 0x9ed9 0x8003", "chinsei= 0x6c88 0x9759", "chintai1= 0x6c88 0x6ede", "chinchaku= 0x6c88 0x7740", "chinbotsu= 0x6c88 0x6ca1", "chinmoku= 0x6c88 0x9ed9", "mezurashii= 0x73cd 0x3057 0x3044", "chinkyaku= 0x73cd 0x5ba2", "chinchou= 0x73cd 0x91cd", "chindan= 0x73cd 0x8ac7", "chinpin= 0x73cd 0x54c1", "chinmi= 0x73cd 0x5473", "chingin= 0x8cc3 0x91d1", "chinshaku= 0x8cc3 0x501f", "chingari= 0x8cc3 0x501f 0x308a", "chinage= 0x8cc3 0x4e0a 0x3052", "chintai2= 0x8cc3 0x8cb8", "shizumaru2= 0x93ae 0x307e 0x308b", "shizumeru3= 0x93ae 0x3081 0x308b", "chinatsu= 0x93ae 0x5727", "chinkonkyoku= 0x93ae 0x9b42 0x66f2", "chinju= 0x93ae 0x5b88", "chinseizai= 0x93ae 0x9759 0x5264", "chintsuuzai= 0x93ae 0x75db 0x5264", "chinsha= 0x9673 0x8b1d", "chinjutsu= 0x9673 0x8ff0", "chinjou= 0x9673 0x60c5", "chinpu= 0x9673 0x8150", "chinretsu= 0x9673 0x5217", "tsutsuuraura= 0x6d25 0x6d25 0x6d66 0x6d66", "tsunami= 0x6d25 0x6ce2", "tsuishi= 0x589c 0x6b7b", "tsuiraku= 0x589c 0x843d", "oikosu= 0x8ffd 0x3044 0x8d8a 0x3059", "oikakeru= 0x8ffd 0x3044 0x639b 0x3051 0x308b", "oikomu= 0x8ffd 0x3044 0x8fbc 0x3080", "oidasu= 0x8ffd 0x3044 0x51fa 0x3059", "oinuku= 0x8ffd 0x3044 0x629c 0x304f", "oitsuku= 0x8ffd 0x3044 0x4ed8 0x304f", "oikaze= 0x8ffd 0x3044 0x98a8", "ou4= 0x8ffd 0x3046", "tsuika= 0x8ffd 0x52a0", "tsuikyuu1= 0x8ffd 0x53ca", "tsuikyuu2= 0x8ffd 0x6c42", "tsuikyuu3= 0x8ffd 0x7a76", "tsuishin= 0x8ffd 0x4f38", "tsuizui= 0x8ffd 0x968f", "tsuiseki= 0x8ffd 0x8de1", "tsuitou= 0x8ffd 0x60bc", "tsuitoukai= 0x8ffd 0x60bc 0x4f1a", "tsuitoushiki= 0x8ffd 0x60bc 0x5f0f", "tsuitotsu= 0x8ffd 0x7a81", "tsuibo= 0x8ffd 0x6155", "tsuihou= 0x8ffd 0x653e", "itai2= 0x75db 0x3044", "itamashii= 0x75db 0x307e 0x3057 0x3044", "itami= 0x75db 0x307f", "itamu2= 0x75db 0x3080", "itameru2= 0x75db 0x3081 0x308b", "tsuukon= 0x75db 0x6068", "itade= 0x75db 0x624b", "tsuuretsu= 0x75db 0x70c8", "kayou3= 0x901a 0x3046", "tsuujiru= 0x901a 0x3058 0x308b", "toosu= 0x901a 0x3059", "toori= 0x901a 0x308a", "doori= 0x901a 0x308a", "toorisugiru= 0x901a 0x308a 0x904e 0x304e 0x308b", "toorikakaru= 0x901a 0x308a 0x639b 0x304b 0x308b", "tooru= 0x901a 0x308b", "tsuuin= 0x901a 0x9662", "tsuuka1= 0x901a 0x8ca8", "tsuuka2= 0x901a 0x904e", "tsuugaku= 0x901a 0x5b66", "tsuukikou= 0x901a 0x6c17 0x5b54", "tsuugyou= 0x901a 0x6681", "tsuukin= 0x901a 0x52e4", "tsuukou= 0x901a 0x884c", "tsuukoudome= 0x901a 0x884c 0x6b62 0x3081", "tsuukoku= 0x901a 0x544a", "tsuusanshou= 0x901a 0x7523 0x7701", "tsuujou= 0x901a 0x5e38", "tsuushin= 0x901a 0x4fe1", "tsuushinkouza= 0x901a 0x4fe1 0x8b1b 0x5ea7", "tsuuzokuteki= 0x901a 0x4fd7 0x7684", "tsuuzokubungaku= 0x901a 0x4fd7 0x6587 0x5b66", "tsuutatsu= 0x901a 0x9054", "tsuuchi= 0x901a 0x77e5", "tsuuchou= 0x901a 0x5e33", "tsuya2= 0x901a 0x591c", "tsuuyaku= 0x901a 0x8a33", "tsuuyou= 0x901a 0x7528", "tsuuro= 0x901a 0x8def", "tsuuwa= 0x901a 0x8a71", "tsuka= 0x585a", "tsukamaru1= 0x63b4 0x307e 0x308b", "tsukamu= 0x63b4 0x3080", "tsukaru= 0x6f2c 0x304b 0x308b", "tsukeru3= 0x6f2c 0x3051 0x308b", "tsukemono1= 0x6f2c 0x3051 0x7269", "tsukemono2= 0x6f2c 0x7269", "tsukemonoishi= 0x6f2c 0x7269 0x77f3", "tsujitsuma= 0x8fbb 0x8904", "tojiru1= 0x7db4 0x3058 0x308b", "tsuduri= 0x7db4 0x308a", "tsubusu= 0x6f70 0x3059", "tsubureru= 0x6f70 0x308c 0x308b", "tsubo= 0x576a", "tsubosuu= 0x576a 0x6570", "tsuboatari= 0x576a 0x5f53 0x305f 0x308a", "tsume= 0x722a", "tsumekiri= 0x722a 0x5207 0x308a", "tsumasaki= 0x722a 0x5148", "tsumayouji= 0x722a 0x694a 0x679d", "tsuribashi= 0x540a 0x308a 0x6a4b", "tsuru2= 0x540a 0x308b", "tsurusu= 0x540a 0x308b 0x3059", "tsuri= 0x91e3 0x308a", "tsuriai1= 0x91e3 0x308a 0x5408 0x3044", "tsuriau= 0x91e3 0x308a 0x5408 0x3046", "tsuribari= 0x91e3 0x308a 0x91dd", "tsurisen= 0x91e3 0x308a 0x92ad", "tsuridougu= 0x91e3 0x308a 0x9053 0x5177", "tsuribori= 0x91e3 0x308a 0x5800", "tsuru3= 0x91e3 0x308b", "tsuriai2= 0x91e3 0x5408", "tsuriai3= 0x91e3 0x5408 0x3044", "tsuru4= 0x9db4", "teishu= 0x4ead 0x4e3b", "hikui= 0x4f4e 0x3044", "hikumaru= 0x4f4e 0x307e 0x308b", "hikumeru= 0x4f4e 0x3081 0x308b", "teion1= 0x4f4e 0x6e29", "teion2= 0x4f4e 0x97f3", "teika1= 0x4f4e 0x4e0b", "teikiatsu= 0x4f4e 0x6c17 0x5727", "teishotoku= 0x4f4e 0x6240 0x5f97", "teiseichou= 0x4f4e 0x6210 0x9577", "teichi= 0x4f4e 0x5730", "teinou= 0x4f4e 0x80fd", "teimei= 0x4f4e 0x8ff7", "tei2= 0x505c", "teigaku= 0x505c 0x5b66", "teishi= 0x505c 0x6b62", "teisha= 0x505c 0x8eca", "teitai= 0x505c 0x6ede", "teiden= 0x505c 0x96fb", "teiryuujo= 0x505c 0x7559 0x6240", "tei3= 0x5075", "teisatsu= 0x5075 0x5bdf", "soru1= 0x5243 0x308b", "kamisori= 0x5243 0x5200", "teiketsu= 0x8c9e 0x6f54", "teishuku= 0x8c9e 0x6dd1", "teisetsu= 0x8c9e 0x7bc0", "teisou1= 0x8c9e 0x64cd", "tsutsumi1= 0x5824", "teibou= 0x5824 0x9632", "sadaka= 0x5b9a 0x304b", "sadamaru= 0x5b9a 0x307e 0x308b", "sadameru= 0x5b9a 0x3081 0x308b", "teiin= 0x5b9a 0x54e1", "teika2= 0x5b9a 0x4fa1", "teikan= 0x5b9a 0x6b3e", "teiki1= 0x5b9a 0x671f", "teikiken= 0x5b9a 0x671f 0x5238", "jougi= 0x5b9a 0x898f", "teigi1= 0x5b9a 0x7fa9", "teikyuubi= 0x5b9a 0x4f11 0x65e5", "teikei1= 0x5b9a 0x578b", "teikei2= 0x5b9a 0x5f62", "teishoku1= 0x5b9a 0x98df", "teisoshiki= 0x5b9a 0x790e 0x5f0f", "teichaku= 0x5b9a 0x7740", "teinen= 0x5b9a 0x5e74", "teikoku= 0x5e1d 0x56fd", "teikokushugi= 0x5e1d 0x56fd 0x4e3b 0x7fa9", "teisei1= 0x5e1d 0x653f", "soko= 0x5e95", "sokone= 0x5e95 0x5024", "niwa= 0x5ead", "teien= 0x5ead 0x5712", "teikyuu= 0x5ead 0x7403", "teishin1= 0x5ef7 0x81e3", "otouto= 0x5f1f", "deshi= 0x5f1f 0x5b50", "deshiiri= 0x5f1f 0x5b50 0x5165 0x308a", "otoutobun= 0x5f1f 0x5206", "teimai= 0x5f1f 0x59b9", "teikou= 0x62b5 0x6297", "teitou= 0x62b5 0x5f53", "sageru2= 0x63d0 0x3052 0x308b", "teian= 0x63d0 0x6848", "teiki2= 0x63d0 0x8d77", "teigi2= 0x63d0 0x8b70", "teikyou= 0x63d0 0x4f9b", "teikei3= 0x63d0 0x643a", "teishutsu= 0x63d0 0x51fa", "teishou= 0x63d0 0x5531", "teiso= 0x63d0 0x8a34", "hashigo= 0x68af 0x5b50", "hodo= 0x7a0b", "hodonaku= 0x7a0b 0x306a 0x304f", "teido= 0x7a0b 0x5ea6", "shimaru2= 0x7de0 0x307e 0x308b", "shimeru4= 0x7de0 0x3081 0x308b", "shimedasu= 0x7de0 0x3081 0x51fa 0x3059", "shimekiri1= 0x7de0 0x3081 0x5207 0x308a", "shimekiru= 0x7de0 0x3081 0x5207 0x308b", "shimekiri2= 0x7de0 0x5207", "shimekiri3= 0x7de0 0x5207 0x308a", "teiko= 0x8247 0x5eab", "teishin2= 0x8247 0x8eab", "teisei2= 0x8a02 0x6b63", "akirameru= 0x8ae6 0x3081 0x308b", "teigen= 0x9013 0x6e1b", "teishin3= 0x9013 0x4fe1", "teisou2= 0x9013 0x9001", "teizou= 0x9013 0x5897", "teitaku= 0x90b8 0x5b85", "teinai= 0x90b8 0x5185", "kugi= 0x91d8", "doro= 0x6ce5", "doronuma= 0x6ce5 0x6cbc", "deisui= 0x6ce5 0x9154", "deitan= 0x6ce5 0x70ad", "dorobou= 0x6ce5 0x68d2", "tsumamu= 0x6458 0x3080", "tsumu4= 0x6458 0x3080", "tekishutsu= 0x6458 0x51fa", "tekihatsu= 0x6458 0x767a", "tekiyou1= 0x6458 0x8981", "kataki= 0x6575", "teki1= 0x6575", "tekii= 0x6575 0x610f", "tekigun= 0x6575 0x8ecd", "tekitai= 0x6575 0x5bfe", "tekirui= 0x6575 0x5841", "shizuku= 0x6ef4", "shitataru= 0x6ef4 0x308b", "tekika= 0x6ef4 0x4e0b", "teki2= 0x7684", "mato= 0x7684", "tekikaku1= 0x7684 0x78ba", "tekkaku1= 0x7684 0x78ba", "tekichuu= 0x7684 0x4e2d", "fue= 0x7b1b", "tekisuru= 0x9069 0x3059 0x308b", "tekiou= 0x9069 0x5fdc", "tekikaku2= 0x9069 0x78ba", "tekkaku2= 0x9069 0x78ba", "tekigi= 0x9069 0x5b9c", "tekigou= 0x9069 0x5408", "tekisei= 0x9069 0x6027", "tekisetsu= 0x9069 0x5207", "tekido= 0x9069 0x5ea6", "tekitou= 0x9069 0x5f53", "tekiyou2= 0x9069 0x7528", "tekiryou= 0x9069 0x91cf", "tekireiki= 0x9069 0x9f62 0x671f", "oboreru= 0x6eba 0x308c 0x308b", "tetsugaku= 0x54f2 0x5b66", "tetsugakusha= 0x54f2 0x5b66 0x8005", "tetsujin= 0x54f2 0x4eba", "tessuru= 0x5fb9 0x3059 0x308b", "tesshou= 0x5fb9 0x5bb5", "tettei= 0x5fb9 0x5e95", "tetteiteki= 0x5fb9 0x5e95 0x7684", "tetsuya= 0x5fb9 0x591c", "tekkai= 0x64a4 0x56de", "tekkyo= 0x64a4 0x53bb", "tettai= 0x64a4 0x9000", "teppai= 0x64a4 0x5ec3", "teppei= 0x64a4 0x5175", "tetsu= 0x9244", "tekkan= 0x9244 0x7ba1", "tekkyou= 0x9244 0x6a4b", "tekkin= 0x9244 0x7b4b", "tekkou= 0x9244 0x9271", "tekkotsu= 0x9244 0x9aa8", "tekkotsukouji= 0x9244 0x9aa8 0x5de5 0x4e8b", "tetsudou= 0x9244 0x9053", "tetsubin= 0x9244 0x74f6", "teppou= 0x9244 0x7832", "tetsubou= 0x9244 0x68d2", "ten1= 0x5178", "tenkei1= 0x5178 0x578b", "tenkeiteki= 0x5178 0x578b 0x7684", "ten2= 0x5929", "amanogawa1= 0x5929 0x306e 0x6cb3", "amanogawa2= 0x5929 0x306e 0x5ddd", "tenimuhou= 0x5929 0x8863 0x7121 0x7e2b", "tenjou= 0x5929 0x4e95", "tenka1= 0x5929 0x4e0b", "tengai= 0x5929 0x6daf", "tenki= 0x5929 0x6c17", "tenkiyohou= 0x5929 0x6c17 0x4e88 0x5831", "tenkei2= 0x5929 0x5553", "tenkei3= 0x5929 0x6075", "tenkou= 0x5929 0x5019", "tennou= 0x5929 0x7687", "tennouheika= 0x5929 0x7687 0x965b 0x4e0b", "tengoku= 0x5929 0x56fd", "tensai1= 0x5929 0x624d", "tensai2= 0x5929 0x707d", "tenshi= 0x5929 0x4f7f", "tenju= 0x5929 0x5bff", "tensei= 0x5929 0x6027", "tennen= 0x5929 0x7136", "tennenkajuu= 0x5929 0x7136 0x679c 0x6c41", "tennentou= 0x5929 0x7136 0x75d8", "tenson= 0x5929 0x5b6b", "tentai= 0x5929 0x4f53", "tenchou= 0x5929 0x9802", "tenbatsu= 0x5929 0x7f70", "tenpu1= 0x5929 0x8ce6", "tenmongaku= 0x5929 0x6587 0x5b66", "tenmondai= 0x5929 0x6587 0x53f0", "teppen= 0x5929 0x8fba", "tenkai= 0x5c55 0x958b", "tenji1= 0x5c55 0x793a", "tenjikai= 0x5c55 0x793a 0x4f1a", "tenbou= 0x5c55 0x671b", "tenboudai= 0x5c55 0x671b 0x53f0", "tenrankai= 0x5c55 0x89a7 0x4f1a", "ten3= 0x5e97", "mise= 0x5e97", "tenin= 0x5e97 0x54e1", "misebiraki= 0x5e97 0x958b 0x304d", "misesaki= 0x5e97 0x5148", "tenpo= 0x5e97 0x8217", "sou7= 0x6dfb 0x3046", "soeru= 0x6dfb 0x3048 0x308b", "tenka2= 0x6dfb 0x52a0", "tensaku= 0x6dfb 0x524a", "tenjouin= 0x6dfb 0x4e57 0x54e1", "tenpu2= 0x6dfb 0x4ed8", "matomaru= 0x7e8f 0x307e 0x308b", "matome= 0x7e8f 0x3081", "matomeru= 0x7e8f 0x3081 0x308b", "haru3= 0x8cbc 0x308b", "korogasu= 0x8ee2 0x304c 0x3059", "korogaru= 0x8ee2 0x304c 0x308b", "korogeru= 0x8ee2 0x3052 0x308b", "korobu= 0x8ee2 0x3076", "tenka3= 0x8ee2 0x5ac1", "tenkan= 0x8ee2 0x63db", "tenkyo= 0x8ee2 0x5c45", "tenkin= 0x8ee2 0x52e4", "tenshaku= 0x8ee2 0x501f", "tennin= 0x8ee2 0x4efb", "tenpuku= 0x8ee2 0x8986", "tenraku= 0x8ee2 0x843d", "ten4= 0x70b9", "tsuku3= 0x70b9 0x304f", "tsukeru4= 0x70b9 0x3051 0x308b", "tomosu1= 0x70b9 0x3059", "tenka4= 0x70b9 0x706b", "tenken= 0x70b9 0x691c", "tenko= 0x70b9 0x547c", "tenji2= 0x70b9 0x5b57", "tensuu= 0x70b9 0x6570", "tenteki= 0x70b9 0x6ef4", "tenmetsu= 0x70b9 0x6ec5", "tsutau= 0x4f1d 0x3046", "tsutaeru= 0x4f1d 0x3048 0x308b", "tsutawaru= 0x4f1d 0x308f 0x308b", "denki1= 0x4f1d 0x8a18", "dengon= 0x4f1d 0x8a00", "denshou= 0x4f1d 0x627f", "densetsu= 0x4f1d 0x8aac", "densen1= 0x4f1d 0x67d3", "densenbyou= 0x4f1d 0x67d3 0x75c5", "dentatsu= 0x4f1d 0x9054", "dentou1= 0x4f1d 0x7d71", "dendou= 0x4f1d 0x9053", "denpyou= 0x4f1d 0x7968", "tono= 0x6bbf", "dono= 0x6bbf", "denka= 0x6bbf 0x4e0b", "yodomu= 0x6fb1 0x3080", "ta2= 0x7530", "denen= 0x7530 0x5712", "inaka= 0x7530 0x820e", "inakamusume= 0x7530 0x820e 0x5a18", "taue= 0x7530 0x690d 0x3048", "tahata= 0x7530 0x7551", "tanbo= 0x7530 0x5703", "denatsu= 0x96fb 0x5727", "denki2= 0x96fb 0x6c17", "denkyuu= 0x96fb 0x7403", "dengen= 0x96fb 0x6e90", "denkou= 0x96fb 0x5149", "denshi= 0x96fb 0x5b50", "denjishaku= 0x96fb 0x78c1 0x77f3", "densha= 0x96fb 0x8eca", "denshachin= 0x96fb 0x8eca 0x8cc3", "densen2= 0x96fb 0x7dda", "dentaku= 0x96fb 0x5353", "denchi= 0x96fb 0x6c60", "denchuu= 0x96fb 0x67f1", "dentou2= 0x96fb 0x706f", "denpa= 0x96fb 0x6ce2", "denpou= 0x96fb 0x5831", "denryuu= 0x96fb 0x6d41", "denryoku= 0x96fb 0x529b", "denrei= 0x96fb 0x9234", "denwa= 0x96fb 0x8a71", "denwachou= 0x96fb 0x8a71 0x5e33", "usagi= 0x514e", "tonikaku= 0x514e 0x306b 0x89d2", "tomokaku= 0x514e 0x3082 0x89d2", "tokaku= 0x514e 0x89d2", "hakike= 0x5410 0x304d 0x6c17", "hakidasu= 0x5410 0x304d 0x51fa 0x3059", "tsuku4= 0x5410 0x304f", "haku2= 0x5410 0x304f", "toketsu= 0x5410 0x8840", "toiki= 0x5410 0x606f", "toro= 0x5410 0x9732", "nurikaeru= 0x5857 0x308a 0x66ff 0x3048 0x308b", "nurimono= 0x5857 0x308a 0x7269", "nuritate= 0x5857 0x308a 0x7acb 0x3066", "nuru= 0x5857 0x308b", "tofu= 0x5857 0x5e03", "toryou= 0x5857 0x6599", "netamu= 0x59ac 0x3080", "toshu1= 0x5f92 0x624b", "totou= 0x5f92 0x515a", "toho= 0x5f92 0x6b69", "torou= 0x5f92 0x52b4", "to2= 0x6597", "toshu2= 0x6597 0x9152", "zusan= 0x675c 0x64b0", "watashibune= 0x6e21 0x3057 0x8239", "watasu= 0x6e21 0x3059", "wataridori= 0x6e21 0x308a 0x9ce5", "wataru= 0x6e21 0x308b", "torai= 0x6e21 0x6765", "noboru3= 0x767b 0x308b", "touki1= 0x767b 0x8a18", "toukou1= 0x767b 0x6821", "tozan= 0x767b 0x5c71", "toujou1= 0x767b 0x5834", "touyou1= 0x767b 0x5eb8", "touyou2= 0x767b 0x7528", "touroku= 0x767b 0x9332", "kake2= 0x8ced 0x3051", "kakeru6= 0x8ced 0x3051 0x308b", "tojou= 0x9014 0x4e0a", "tojoukoku= 0x9014 0x4e0a 0x56fd", "togireru= 0x9014 0x5207 0x308c 0x308b", "todaeru= 0x9014 0x7d76 0x3048 0x308b", "totan= 0x9014 0x7aef", "tochuu= 0x9014 0x4e2d", "miyako= 0x90fd", "tokai= 0x90fd 0x4f1a", "tsugou= 0x90fd 0x5408", "toshi1= 0x90fd 0x5e02", "toshigasu= 0x90fd 0x5e02 0x30ac 0x30b9", "toshin= 0x90fd 0x5fc3", "tochou= 0x90fd 0x5e81", "todoufuken= 0x90fd 0x9053 0x5e9c 0x770c", "tonai= 0x90fd 0x5185", "toritsu= 0x90fd 0x7acb", "tsutomete= 0x52aa 0x3081 0x3066", "tsutomeru2= 0x52aa 0x3081 0x308b", "doryoku= 0x52aa 0x529b", "doryokuka= 0x52aa 0x529b 0x5bb6", "tabi2= 0x5ea6", "do= 0x5ea6", "tabitabi= 0x5ea6 0x3005", "dokyou= 0x5ea6 0x80f8", "doai= 0x5ea6 0x5408", "dowasure= 0x5ea6 0x5fd8 0x308c", "doryoukou= 0x5ea6 0x91cf 0x8861", "tsuchi= 0x571f", "dokai= 0x571f 0x584a", "doma= 0x571f 0x9593", "doshaburi= 0x571f 0x7802 0x964d 0x308a", "doshakuzure= 0x571f 0x7802 0x5d29 0x308c", "miyage= 0x571f 0x7523", "dote= 0x571f 0x624b", "dojou= 0x571f 0x58cc", "dojin= 0x571f 0x4eba", "dosoku= 0x571f 0x8db3", "dodai= 0x571f 0x53f0", "dotanba= 0x571f 0x58c7 0x5834", "tochi= 0x571f 0x5730", "dohyou= 0x571f 0x4ff5", "dobei= 0x571f 0x5840", "doboku= 0x571f 0x6728", "doyou= 0x571f 0x66dc", "doyoubi= 0x571f 0x66dc 0x65e5", "yatsu= 0x5974", "dorei= 0x5974 0x96b7", "ikari1= 0x6012 0x308a", "okoru3= 0x6012 0x308b", "doki= 0x6012 0x6c17", "dogou= 0x6012 0x53f7", "dohatsutenwotsuku= 0x6012 0x9aea 0x5929 0x3092 0x7a81 0x304f", "donaru= 0x6012 0x9cf4 0x308b", "taosu= 0x5012 0x3059", "taoreru= 0x5012 0x308c 0x308b", "toukaku= 0x5012 0x95a3", "tousaku1= 0x5012 0x932f", "tousan1= 0x5012 0x7523", "touchi1= 0x5012 0x7f6e", "tou1= 0x515a", "touin1= 0x515a 0x54e1", "toushu= 0x515a 0x9996", "touha= 0x515a 0x6d3e", "fuyu= 0x51ac", "touki2= 0x51ac 0x671f", "touki3= 0x51ac 0x5b63", "fuyuyasumi= 0x51ac 0x4f11 0x307f", "fuyuzora= 0x51ac 0x7a7a", "fuyumuki= 0x51ac 0x5411 0x304d", "touji1= 0x51ac 0x81f3", "fuyumono= 0x51ac 0x7269", "toumin= 0x51ac 0x7720", "kogoeru= 0x51cd 0x3048 0x308b", "kogoejini= 0x51cd 0x3048 0x6b7b 0x306b", "kooru= 0x51cd 0x308b", "touketsu= 0x51cd 0x7d50", "toushi1= 0x51cd 0x6b7b", "shimoyake2= 0x51cd 0x50b7", "toushou= 0x51cd 0x50b7", "katana= 0x5200", "touken= 0x5200 0x5263", "tou2= 0x5510", "toushi2= 0x5510 0x8a69", "tougarashi= 0x5510 0x8f9b 0x5b50", "karakusamoyou= 0x5510 0x8349 0x6a21 0x69d8", "toutotsu= 0x5510 0x7a81", "karayou= 0x5510 0x69d8", "tou3= 0x5854", "touba= 0x5854 0x5a46", "shima2= 0x5cf6", "shimajima= 0x5cf6 0x3005", "shimaguni= 0x5cf6 0x56fd", "itamu3= 0x60bc 0x3080", "touji2= 0x60bc 0x8f9e", "nageru= 0x6295 0x3052 0x308b", "toujiru= 0x6295 0x3058 0x308b", "touei= 0x6295 0x5f71", "touki4= 0x6295 0x6a5f", "toukou2= 0x6295 0x7a3f", "toushi3= 0x6295 0x8cc7", "tousha1= 0x6295 0x5c04", "tousho1= 0x6295 0x66f8", "toushoran= 0x6295 0x66f8 0x6b04", "touhyou= 0x6295 0x7968", "tousai= 0x642d 0x8f09", "toujou2= 0x642d 0x4e57", "toujouken= 0x642d 0x4e57 0x5238", "higashi= 0x6771", "higashiajia= 0x6771 0x30a2 0x30b8 0x30a2", "toua= 0x6771 0x4e9c", "touou= 0x6771 0x6b27", "toukyou= 0x6771 0x4eac", "toukyouto= 0x6771 0x4eac 0x90fd", "toukyouwan= 0x6771 0x4eac 0x6e7e", "touzai= 0x6771 0x897f", "toudai1= 0x6771 0x5927", "tounanajia= 0x6771 0x5357 0x30a2 0x30b8 0x30a2", "toubu= 0x6771 0x90e8", "touhou= 0x6771 0x65b9", "touhoku= 0x6771 0x5317", "touyou3= 0x6771 0x6d0b", "momo2= 0x6843", "momonosekku= 0x6843 0x306e 0x7bc0 0x53e5", "tougenkyou= 0x6843 0x6e90 0x90f7", "momoyamajidai= 0x6843 0x5c71 0x6642 0x4ee3", "momoiro= 0x6843 0x8272", "tou4= 0x68df", "mune3= 0x68df", "muneageshiki= 0x68df 0x4e0a 0x3052 0x5f0f", "munagi= 0x68df 0x6728", "nusumu= 0x76d7 0x3080", "tousaku2= 0x76d7 0x4f5c", "touzoku= 0x76d7 0x8cca", "tounan= 0x76d7 0x96e3", "tounanhoken= 0x76d7 0x96e3 0x4fdd 0x967a", "touhin= 0x76d7 0x54c1", "touheki= 0x76d7 0x7656", "touyou4= 0x76d7 0x7528", "yu= 0x6e6f", "yunomi= 0x6e6f 0x98f2 0x307f", "yuge= 0x6e6f 0x6c17", "yumoto= 0x6e6f 0x5143", "touji3= 0x6e6f 0x6cbb", "yuagari= 0x6e6f 0x4e0a 0x304c 0x308a", "yudono= 0x6e6f 0x6bbf", "yuwakashiki= 0x6e6f 0x6cb8 0x304b 0x3057 0x5668", "yuwakashi= 0x6e6f 0x6cb8 0x3057", "hi2= 0x706f", "tomosu2= 0x706f 0x3059", "touka1= 0x706f 0x706b", "toudai2= 0x706f 0x53f0", "touyu= 0x706f 0x6cb9", "atari1= 0x5f53 0x305f 0x308a", "atarimae1= 0x5f53 0x305f 0x308a 0x524d", "ataru= 0x5f53 0x305f 0x308b", "ate2= 0x5f53 0x3066", "atehamaru= 0x5f53 0x3066 0x306f 0x307e 0x308b", "atehameru= 0x5f53 0x3066 0x306f 0x3081 0x308b", "ateru2= 0x5f53 0x3066 0x308b", "ateji= 0x5f53 0x3066 0x5b57", "atari2= 0x5f53 0x308a", "atarimae2= 0x5f53 0x308a 0x524d", "toueki= 0x5f53 0x99c5", "tougaikanchou= 0x5f53 0x8a72 0x5b98 0x5e81", "tougaijinbutsu= 0x5f53 0x8a72 0x4eba 0x7269", "toukyoku= 0x5f53 0x5c40", "toujisha= 0x5f53 0x4e8b 0x8005", "touji4= 0x5f53 0x6642", "tousho2= 0x5f53 0x521d", "tounin= 0x5f53 0x4eba", "tousen= 0x5f53 0x9078", "touzen= 0x5f53 0x7136", "toujitsu= 0x5f53 0x65e5", "touban= 0x5f53 0x756a", "toubun1= 0x5f53 0x5206", "touwaku= 0x5f53 0x60d1", "toubyou= 0x75d8 0x82d7", "hitoshii= 0x7b49 0x3057 0x3044", "touka2= 0x7b49 0x4fa1", "naozari= 0x7b49 0x9591", "toukyuu= 0x7b49 0x7d1a", "toubun2= 0x7b49 0x5206", "kotae1= 0x7b54", "kotae2= 0x7b54 0x3048", "touan= 0x7b54 0x6848", "toushin= 0x7b54 0x7533", "touben= 0x7b54 0x5f01", "tsutsu= 0x7b52", "tou5= 0x7cd6", "toushitsu= 0x7cd6 0x8cea", "tounyoubyou= 0x7cd6 0x5c3f 0x75c5", "toubun3= 0x7cd6 0x5206", "suberu2= 0x7d71 0x3079 0x308b", "touitsu= 0x7d71 0x4e00", "toukatsu= 0x7d71 0x8f44", "toukei= 0x7d71 0x8a08", "tougou= 0x7d71 0x5408", "touji5= 0x7d71 0x6cbb", "touchi2= 0x7d71 0x6cbb", "tousui1= 0x7d71 0x5e25", "tousei= 0x7d71 0x5236", "toutatsu= 0x5230 0x9054", "touchaku= 0x5230 0x7740", "toutei= 0x5230 0x5e95", "toutou= 0x5230 0x982d", "tourai= 0x5230 0x6765", "uchijini= 0x8a0e 0x3061 0x6b7b 0x306b", "uchitoru= 0x8a0e 0x3061 0x53d6 0x308b", "utsu3= 0x8a0e 0x3064", "tougi= 0x8a0e 0x8b70", "toubatsu= 0x8a0e 0x4f10", "touron= 0x8a0e 0x8ad6", "tousha2= 0x8b04 0x5199", "toushaki= 0x8b04 0x5199 0x5668", "toushaban= 0x8b04 0x5199 0x7248", "touhon= 0x8b04 0x672c", "toufu= 0x8c46 0x8150", "mamehon= 0x8c46 0x672c", "fumaeru= 0x8e0f 0x307e 0x3048 0x308b", "fumikiru= 0x8e0f 0x307f 0x5207 0x308b", "fumu= 0x8e0f 0x3080", "funbaru= 0x8e0f 0x3093 0x5f35 0x308b", "tousa= 0x8e0f 0x67fb", "fumikiri1= 0x8e0f 0x5207", "fumikiri2= 0x8e0f 0x5207 0x308a", "nigasu= 0x9003 0x304c 0x3059", "nigeru= 0x9003 0x3052 0x308b", "nigedasu= 0x9003 0x3052 0x51fa 0x3059", "nigeashi= 0x9003 0x3052 0x8db3", "nigemichi= 0x9003 0x3052 0x9053", "nogasu= 0x9003 0x3059", "nogareru= 0x9003 0x308c 0x308b", "tousou1= 0x9003 0x8d70", "touhi= 0x9003 0x907f", "toubou= 0x9003 0x4ea1", "sukasu= 0x900f 0x304b 0x3059", "sukitooru= 0x900f 0x304d 0x901a 0x308b", "suku3= 0x900f 0x304f", "sukeru= 0x900f 0x3051 0x308b", "toushi4= 0x900f 0x8996", "toumei= 0x900f 0x660e", "touki5= 0x9676 0x5668", "tougei= 0x9676 0x82b8", "toukou3= 0x9676 0x5de5", "toujiki= 0x9676 0x78c1 0x5668", "tousui2= 0x9676 0x9154", "atama= 0x982d", "kashira= 0x982d", "tou6= 0x982d", "touin2= 0x982d 0x97fb", "toukotsu= 0x982d 0x9aa8", "zujou= 0x982d 0x4e0a", "zutsuu= 0x982d 0x75db", "zunou= 0x982d 0x8133", "touki6= 0x9a30 0x8cb4", "tatakau2= 0x95d8 0x3046", "tousou2= 0x95d8 0x4e89", "hataraki= 0x50cd 0x304d", "hatarakiguchi= 0x50cd 0x304d 0x53e3", "hatarakimono= 0x50cd 0x304d 0x8005", "hatarakite= 0x50cd 0x304d 0x624b", "hataraku= 0x50cd 0x304f", "ugokasu= 0x52d5 0x304b 0x3059", "ugoki= 0x52d5 0x304d", "ugoku= 0x52d5 0x304f", "doujiru= 0x52d5 0x3058 0x308b", "yayamosureba= 0x52d5 0x3082 0x3059 0x308c 0x3070", "douin= 0x52d5 0x54e1", "douki1= 0x52d5 0x6a5f", "doukou= 0x52d5 0x5411", "dousa= 0x52d5 0x4f5c", "doushi1= 0x52d5 0x8a5e", "doushokubutsu= 0x52d5 0x690d 0x7269", "dousei1= 0x52d5 0x9759", "doubutsu= 0x52d5 0x7269", "doubutsuen= 0x52d5 0x7269 0x5712", "doumyaku= 0x52d5 0x8108", "douyou1= 0x52d5 0x63fa", "douran= 0x52d5 0x4e71", "douryoku= 0x52d5 0x529b", "dou1= 0x540c", "onaji= 0x540c 0x3058", "doui= 0x540c 0x610f", "douitsu= 0x540c 0x4e00", "douon= 0x540c 0x97f3", "douka1= 0x540c 0x5316", "doukan= 0x540c 0x611f", "douki2= 0x540c 0x671f", "dougigo= 0x540c 0x7fa9 0x8a9e", "doukyuusei= 0x540c 0x7d1a 0x751f", "doukyo= 0x540c 0x5c45", "doushi2= 0x540c 0x58eb", "doushi3= 0x540c 0x5fd7", "doushi4= 0x540c 0x6c0f", "douji= 0x540c 0x6642", "doujou1= 0x540c 0x4e0a", "doujou2= 0x540c 0x60c5", "dousei2= 0x540c 0x59d3", "dousei3= 0x540c 0x6027", "dousei4= 0x540c 0x68f2", "dousoukai= 0x540c 0x7a93 0x4f1a", "dousousei= 0x540c 0x7a93 0x751f", "doutou= 0x540c 0x7b49", "dounenpainohito= 0x540c 0x5e74 0x8f29 0x306e 0x4eba", "douhan= 0x540c 0x4f34", "doufuu= 0x540c 0x5c01", "douhou= 0x540c 0x80de", "doumei= 0x540c 0x76df", "douyou2= 0x540c 0x69d8", "douryou= 0x540c 0x50da", "dourui= 0x540c 0x985e", "douretsu= 0x540c 0x5217", "dou2= 0x5802", "doudouto= 0x5802 0x3005 0x3068", "michibiku= 0x5c0e 0x304f", "doukasen= 0x5c0e 0x706b 0x7dda", "dounyuu= 0x5c0e 0x5165", "akogare= 0x61a7 0x308c", "akogareru= 0x61a7 0x308c 0x308b", "hora= 0x6d1e", "doukutsu= 0x6d1e 0x7a9f", "douketsu= 0x6d1e 0x7a74", "dousatsu= 0x6d1e 0x5bdf", "hitomi= 0x77b3", "warabe= 0x7ae5", "dougan= 0x7ae5 0x9854", "doushin= 0x7ae5 0x5fc3", "douyou3= 0x7ae5 0x8b21", "douwa= 0x7ae5 0x8a71", "dou3= 0x80f4", "doumawari= 0x80f4 0x56de 0x308a", "douage= 0x80f4 0x4e0a 0x3052", "doutai= 0x80f4 0x4f53", "douwasure= 0x80f4 0x5fd8 0x308c", "michi1= 0x9053", "michinaranukoi= 0x9053 0x306a 0x3089 0x306c 0x604b", "dougu= 0x9053 0x5177", "michijun= 0x9053 0x9806", "doujou3= 0x9053 0x5834", "michikusa= 0x9053 0x8349", "michibata= 0x9053 0x7aef", "doutoku= 0x9053 0x5fb3", "douri= 0x9053 0x7406", "douro= 0x9053 0x8def", "dou4= 0x9285", "doumedaru= 0x9285 0x30e1 0x30c0 0x30eb", "douka2= 0x9285 0x8ca8", "douzan= 0x9285 0x5c71", "douzou= 0x9285 0x50cf", "douhanga= 0x9285 0x7248 0x753b", "touge= 0x5ce0", "tougewokosu= 0x5ce0 0x3092 0x8d8a 0x3059", "tougemichi= 0x5ce0 0x9053", "tokumei= 0x533f 0x540d", "toku3= 0x5f97", "tokusuru= 0x5f97 0x3059 0x308b", "uru1= 0x5f97 0x308b", "eru2= 0x5f97 0x308b", "tokui1= 0x5f97 0x610f", "tokuten1= 0x5f97 0x70b9", "tokuhyou= 0x5f97 0x7968", "tokuni= 0x7279 0x306b", "tokui2= 0x7279 0x7570", "tokugi= 0x7279 0x6280", "tokkyuu= 0x7279 0x6025", "tokkyo= 0x7279 0x8a31", "tokkyohou= 0x7279 0x8a31 0x6cd5", "tokkun= 0x7279 0x8a13", "tokken= 0x7279 0x6a29", "tokusan= 0x7279 0x7523", "tokushitsu= 0x7279 0x8cea", "tokusha= 0x7279 0x8d66", "tokushu= 0x7279 0x6b8a", "tokushukou= 0x7279 0x6b8a 0x92fc", "tokushusei= 0x7279 0x6b8a 0x6027", "tokuju= 0x7279 0x9700", "tokushuu= 0x7279 0x96c6", "tokushoku= 0x7279 0x8272", "tokutai= 0x7279 0x5f85", "tokuchou1= 0x7279 0x5fb4", "tokuchou2= 0x7279 0x9577", "tokutei= 0x7279 0x5b9a", "tokuten2= 0x7279 0x5178", "tokuhain= 0x7279 0x6d3e 0x54e1", "tokubai= 0x7279 0x58f2", "tokubetsu= 0x7279 0x5225", "tokuyuu= 0x7279 0x6709", "tokurei1= 0x7279 0x4f8b", "tokusoku= 0x7763 0x4fc3", "tokurei2= 0x7763 0x52b1", "hage= 0x79bf", "hageru1= 0x79bf 0x3052 0x308b", "tokugaku= 0x7be4 0x5b66", "tokkou= 0x7be4 0x884c", "tokushika= 0x7be4 0x5fd7 0x5bb6", "tokunouka= 0x7be4 0x8fb2 0x5bb6", "doku= 0x6bd2", "dokusatsu= 0x6bd2 0x6bba", "dokuzetsu= 0x6bd2 0x820c", "dokusou1= 0x6bd2 0x8349", "dokuyaku= 0x6bd2 0x85ac", "doitsu1= 0x72ec", "hitori2= 0x72ec 0x308a", "hitoride2= 0x72ec 0x308a 0x3067", "hitorideni= 0x72ec 0x308a 0x3067 0x306b", "hitoribocchi= 0x72ec 0x308a 0x307c 0x3063 0x3061", "hitorigoto= 0x72ec 0x308a 0x8a00", "hitorijime= 0x72ec 0x308a 0x5360 0x3081", "doitsu2= 0x72ec 0x9038", "dokuen= 0x72ec 0x6f14", "dokugaku= 0x72ec 0x5b66", "koma= 0x72ec 0x697d", "dokugin= 0x72ec 0x541f", "dokusai= 0x72ec 0x88c1", "dokuji= 0x72ec 0x81ea", "dokushaku= 0x72ec 0x914c", "dokushuu= 0x72ec 0x7fd2", "dokushou= 0x72ec 0x5531", "dokushin= 0x72ec 0x8eab", "dokushinryou= 0x72ec 0x8eab 0x5bee", "dokusen= 0x72ec 0x5360", "dokusou2= 0x72ec 0x5275", "dokusou3= 0x72ec 0x594f", "dokudan= 0x72ec 0x65ad", "dokutoku1= 0x72ec 0x5f97", "dokutoku2= 0x72ec 0x7279", "dokubou= 0x72ec 0x623f", "dokuritsu= 0x72ec 0x7acb", "dokuritsusengen= 0x72ec 0x7acb 0x5ba3 0x8a00", "yomi= 0x8aad 0x307f", "yomiayamaru= 0x8aad 0x307f 0x8aa4 0x308b", "yomikaki= 0x8aad 0x307f 0x66f8 0x304d", "yomisokonau= 0x8aad 0x307f 0x640d 0x3046", "yomimono= 0x8aad 0x307f 0x7269", "yomikaesu= 0x8aad 0x307f 0x8fd4 0x3059", "yomikata= 0x8aad 0x307f 0x65b9", "yomu2= 0x8aad 0x3080", "dokusha= 0x8aad 0x8005", "dokushasou= 0x8aad 0x8005 0x5c64", "dokusho= 0x8aad 0x66f8", "tokuhon= 0x8aad 0x672c", "dekoboko= 0x51f8 0x51f9", "toppan= 0x51f8 0x7248", "toppaninsatsu= 0x51f8 0x7248 0x5370 0x5237", "totsumen= 0x51f8 0x9762", "tsukisasu= 0x7a81 0x304d 0x523a 0x3059", "tsukiatari= 0x7a81 0x304d 0x5f53 0x305f 0x308a", "tsukiataru= 0x7a81 0x304d 0x5f53 0x305f 0x308b", "tsukinukeru= 0x7a81 0x304d 0x629c 0x3051 0x308b", "tsuku5= 0x7a81 0x304f", "tsutsuku= 0x7a81 0x304f", "tsukkakeru= 0x7a81 0x3063 0x639b 0x3051 0x308b", "tsukkomu= 0x7a81 0x3063 0x8fbc 0x3080", "tsupparu= 0x7a81 0x3063 0x5f35 0x308b", "tokkan= 0x7a81 0x8cab", "totsuzen= 0x7a81 0x7136", "totsunyuu= 0x7a81 0x5165", "totsujo= 0x7a81 0x5982", "toppa= 0x7a81 0x7834", "todoke1= 0x5c4a", "todoku= 0x5c4a 0x304f", "todoke2= 0x5c4a 0x3051", "todokeru= 0x5c4a 0x3051 0x308b", "todokesaki= 0x5c4a 0x3051 0x5148", "ton= 0x5c6f", "buta= 0x8c5a", "tonkatsu= 0x8c5a 0x30ab 0x30c4", "butagoya= 0x8c5a 0x5c0f 0x5c4b", "butaniku= 0x8c5a 0x8089", "butabako= 0x8c5a 0x7bb1", "kumori= 0x66c7 0x308a", "kumorigachi= 0x66c7 0x308a 0x304c 0x3061", "kumorigarasu= 0x66c7 0x308a 0x30ac 0x30e9 0x30b9", "kumoru= 0x66c7 0x308b", "donten= 0x66c7 0x5929", "nibui= 0x920d 0x3044", "noroi2= 0x920d 0x3044", "niburu= 0x920d 0x308b", "donkaku= 0x920d 0x89d2", "donkan= 0x920d 0x611f", "noroma= 0x920d 0x9593", "donki= 0x920d 0x5668", "donjuu= 0x920d 0x91cd", "uchi2= 0x5185", "naika= 0x5185 0x79d1", "uchiumi= 0x5185 0x6d77", "naigai= 0x5185 0x5916", "naikaku= 0x5185 0x95a3", "uchiki= 0x5185 0x6c17", "naikou1= 0x5185 0x5411", "naikouteki= 0x5185 0x5411 0x7684", "naikou2= 0x5185 0x6e2f", "naishukketsu= 0x5185 0x51fa 0x8840", "naisho= 0x5185 0x7dd2", "naisei1= 0x5185 0x7701", "naishou= 0x5185 0x8a3c", "naishoku= 0x5185 0x8077", "naishin1= 0x5185 0x5fc3", "naishin2= 0x5185 0x7533", "naisei2= 0x5185 0x653f", "naisen1= 0x5185 0x6226", "naisen2= 0x5185 0x7dda", "naizou= 0x5185 0x81d3", "uchigawa= 0x5185 0x5074", "naidaku= 0x5185 0x8afe", "naitei= 0x5185 0x5075", "nainenkikan= 0x5185 0x71c3 0x6a5f 0x95a2", "naibu= 0x5185 0x90e8", "naibunpi= 0x5185 0x5206 0x6ccc", "uchibori= 0x5185 0x5800", "uchimaku= 0x5185 0x5e55", "naimaku= 0x5185 0x5e55", "naimen= 0x5185 0x9762", "naiyou= 0x5185 0x5bb9", "nairan= 0x5185 0x4e71", "nairiku= 0x5185 0x9678", "nazo= 0x8b0e", "nazonazo= 0x8b0e 0x3005", "nabe= 0x934b", "narenareshii= 0x99b4 0x308c 0x99b4 0x308c 0x3057 0x3044", "nawa= 0x7e04", "nawabari1= 0x7e04 0x5f35", "nawatobi= 0x7e04 0x8df3 0x3073", "joumon2= 0x7e04 0x6587", "minami= 0x5357", "minamiarupusu= 0x5357 0x30a2 0x30eb 0x30d7 0x30b9", "nani2= 0x5357 0x7def", "kabocha= 0x5357 0x74dc", "nankyoku= 0x5357 0x6975", "nankyokuken= 0x5357 0x6975 0x570f", "minamiguchi= 0x5357 0x53e3", "nansei= 0x5357 0x897f", "nantou= 0x5357 0x6771", "nanban= 0x5357 0x86ee", "nanbu= 0x5357 0x90e8", "nanbei= 0x5357 0x7c73", "nanboku= 0x5357 0x5317", "yawaraka2= 0x8edf 0x3089 0x304b", "yawarakai2= 0x8edf 0x3089 0x304b 0x3044", "nanka= 0x8edf 0x5316", "nankotsu= 0x8edf 0x9aa8", "nanjaku= 0x8edf 0x5f31", "nanchakuriku= 0x8edf 0x7740 0x9678", "katai4= 0x96e3 0x3044", "nikui2= 0x96e3 0x3044", "muzukashii= 0x96e3 0x3057 0x3044", "nannaku= 0x96e3 0x306a 0x304f", "nani3= 0x96e3 0x6613", "nanido= 0x96e3 0x6613 0x5ea6", "nankai= 0x96e3 0x89e3", "nankan= 0x96e3 0x95a2", "nankou= 0x96e3 0x822a", "nandai= 0x96e3 0x984c", "nanten= 0x96e3 0x70b9", "nanbyou= 0x96e3 0x75c5", "nanmin= 0x96e3 0x6c11", "nanmon= 0x96e3 0x554f", "ni2= 0x4e8c", "futaketa= 0x4e8c 0x3051 0x305f", "futatsu= 0x4e8c 0x3064", "nikai= 0x4e8c 0x968e", "nikaidate= 0x4e8c 0x968e 0x5efa 0x3066", "niji1= 0x4e8c 0x6b21", "nishatakuitsu= 0x4e8c 0x8005 0x629e 0x4e00", "hatachi= 0x4e8c 0x5341 0x6b73", "hatsuka= 0x4e8c 0x5341 0x65e5", "nijuu= 0x4e8c 0x91cd", "futae= 0x4e8c 0x91cd", "nijuusou= 0x4e8c 0x91cd 0x594f", "nijuumado= 0x4e8c 0x91cd 0x7a93", "nishin= 0x4e8c 0x4f38", "futari= 0x4e8c 0x4eba", "nininmae= 0x4e8c 0x4eba 0x524d", "futarimae= 0x4e8c 0x4eba 0x524d", "nisei= 0x4e8c 0x4e16", "futsuka= 0x4e8c 0x65e5", "nibai= 0x4e8c 0x500d", "nibansen= 0x4e8c 0x756a 0x7dda", "nibanme= 0x4e8c 0x756a 0x76ee", "nimaijita= 0x4e8c 0x679a 0x820c", "niryuu= 0x4e8c 0x6d41", "ama2= 0x5c3c", "amadera= 0x5c3c 0x5bfa", "nisou= 0x5c3c 0x50e7", "nioi2= 0x5302 0x3044", "niou3= 0x5302 0x3046", "nigiyaka= 0x8cd1 0x3084 0x304b", "nigiwau= 0x8cd1 0x308f 0x3046", "niku= 0x8089", "nikuya= 0x8089 0x5c4b", "nikkai= 0x8089 0x584a", "nikugan= 0x8089 0x773c", "nikujuu= 0x8089 0x6c41", "nikushoku= 0x8089 0x98df", "nikushin= 0x8089 0x89aa", "nikutai= 0x8089 0x4f53", "nikuhitsu= 0x8089 0x7b46", "nikudukinoyoi= 0x8089 0x4ed8 0x304d 0x306e 0x3088 0x3044", "niji2= 0x8679", "hi3= 0x65e5", "hibi1= 0x65e5 0x3005", "hibinokate= 0x65e5 0x3005 0x306e 0x7ce7", "higoro= 0x65e5 0x3054 0x308d", "hinihini= 0x65e5 0x306b 0x65e5 0x306b", "hinomaru= 0x65e5 0x306e 0x4e38", "hinode= 0x65e5 0x306e 0x51fa", "hinoiri= 0x65e5 0x306e 0x5165 0x308a", "nitsuso= 0x65e5 0x30bd", "hikage= 0x65e5 0x9670", "nikka= 0x65e5 0x8ab2", "nikkan1= 0x65e5 0x520a", "nikkanshi= 0x65e5 0x520a 0x7d19", "nikkanshinbun= 0x65e5 0x520a 0x65b0 0x805e", "nikkan2= 0x65e5 0x97d3", "higaeri= 0x65e5 0x5e30 0x308a", "nikki= 0x65e5 0x8a18", "nikkyuu= 0x65e5 0x7d66", "nichigin= 0x65e5 0x9280", "nikkei= 0x65e5 0x7cfb", "nikkou= 0x65e5 0x5149", "nikkouyoku= 0x65e5 0x5149 0x6d74", "hinata= 0x65e5 0x5411", "hizashi= 0x65e5 0x5dee 0x3057", "higasa= 0x65e5 0x5098", "nisshi= 0x65e5 0x8a8c", "nichiji= 0x65e5 0x6642", "hidori= 0x65e5 0x53d6 0x308a", "hiyake= 0x65e5 0x713c 0x3051", "nichijou= 0x65e5 0x5e38", "nichijouseikatsu= 0x65e5 0x5e38 0x751f 0x6d3b", "nisshoku= 0x65e5 0x98df", "nissuu= 0x65e5 0x6570", "himashini= 0x65e5 0x5897 0x3057 0x306b", "higawari1= 0x65e5 0x66ff 0x308a", "higawari2= 0x65e5 0x66ff 0x308f 0x308a", "nicchuu= 0x65e5 0x4e2d", "nittei= 0x65e5 0x7a0b", "hiatari= 0x65e5 0x5f53 0x305f 0x308a", "nichidoku= 0x65e5 0x72ec", "hinichi= 0x65e5 0x65e5", "hiduke1= 0x65e5 0x4ed8", "hiduke2= 0x65e5 0x4ed8 0x3051", "nichibei= 0x65e5 0x7c73", "nichibeiboueki= 0x65e5 0x7c73 0x8cbf 0x6613", "higure= 0x65e5 0x66ae 0x308c", "nihon= 0x65e5 0x672c", "nihonga= 0x65e5 0x672c 0x753b", "nihonkai= 0x65e5 0x672c 0x6d77", "nihongakusha= 0x65e5 0x672c 0x5b66 0x8005", "nihongo= 0x65e5 0x672c 0x8a9e", "nihongowa-puro= 0x65e5 0x672c 0x8a9e 0x30ef 0x30fc 0x30d7 0x30ed", "nihonshi1= 0x65e5 0x672c 0x53f2", "nihonshi2= 0x65e5 0x672c 0x7d19", "nihonshu= 0x65e5 0x672c 0x9152", "nihonjin= 0x65e5 0x672c 0x4eba", "nihonsei= 0x65e5 0x672c 0x88fd", "nihongawa= 0x65e5 0x672c 0x5074", "nihonjuu= 0x65e5 0x672c 0x4e2d", "nihontou= 0x65e5 0x672c 0x5200", "nihonfuu= 0x65e5 0x672c 0x98a8", "nichiyou= 0x65e5 0x66dc", "nichiyoubi= 0x65e5 0x66dc 0x65e5", "nichiyouhin= 0x65e5 0x7528 0x54c1", "hiyori= 0x65e5 0x548c", "chichi1= 0x4e73", "nyuugan= 0x4e73 0x764c", "nyuuji= 0x4e73 0x5150", "chikubi= 0x4e73 0x9996", "ubaguruma= 0x4e73 0x6bcd 0x8eca", "iriguchi1= 0x5165 0x308a 0x53e3", "irie= 0x5165 0x308a 0x6c5f", "irihi= 0x5165 0x308a 0x65e5", "iru4= 0x5165 0x308b", "hairu= 0x5165 0x308b", "ireru= 0x5165 0x308c 0x308b", "ireba= 0x5165 0x308c 0x6b6f", "iremono= 0x5165 0x308c 0x7269", "irezumi= 0x5165 0x308c 0x58a8", "nyuuin= 0x5165 0x9662", "nyuuka= 0x5165 0x8377", "nyuugaku= 0x5165 0x5b66", "nyuugakushiken= 0x5165 0x5b66 0x8a66 0x9a13", "nyuukin= 0x5165 0x91d1", "iriguchi2= 0x5165 0x53e3", "nyuukoku= 0x5165 0x56fd", "nyuusatsu= 0x5165 0x672d", "nyuushi= 0x5165 0x8a66", "nyuushitsu= 0x5165 0x5ba4", "nyuusha= 0x5165 0x793e", "nyuushu= 0x5165 0x624b", "nyuushou= 0x5165 0x8cde", "nyuujou= 0x5165 0x5834", "nyuujouken= 0x5165 0x5834 0x5238", "nyuuseki= 0x5165 0x7c4d", "nyuusen= 0x5165 0x9078", "nyuudougumo= 0x5165 0x9053 0x96f2", "nyuunen= 0x5165 0x5ff5", "nyuubai= 0x5165 0x6885", "nyuumon= 0x5165 0x9580", "nyuuyoku= 0x5165 0x6d74", "nyuuryoku= 0x5165 0x529b", "gotoshi= 0x5982 0x3057", "ikaga= 0x5982 0x4f55", "dou5= 0x5982 0x4f55", "doushite= 0x5982 0x4f55 0x3057 0x3066", "doushitemo= 0x5982 0x4f55 0x3057 0x3066 0x3082", "ikani= 0x5982 0x4f55 0x306b", "ikanimo= 0x5982 0x4f55 0x306b 0x3082", "nyojitsu= 0x5982 0x5b9f", "nyou= 0x5c3f", "nyousan= 0x5c3f 0x9178", "nyouso= 0x5c3f 0x7d20", "nin2= 0x4efb", "makasu1= 0x4efb 0x3059", "makaseru= 0x4efb 0x305b 0x308b", "nini= 0x4efb 0x610f", "ninki2= 0x4efb 0x671f", "ninkimanryou= 0x4efb 0x671f 0x6e80 0x4e86", "ninmu= 0x4efb 0x52d9", "ninmei= 0x4efb 0x547d", "ninsanpu= 0x598a 0x7523 0x5a66", "ninshin= 0x598a 0x5a20", "ninshinchuuzetsu= 0x598a 0x5a20 0x4e2d 0x7d76", "ninpu2= 0x598a 0x5a66", "ninpufuku= 0x598a 0x5a66 0x670d", "shinobaseru= 0x5fcd 0x3070 0x305b 0x308b", "shinobiashi= 0x5fcd 0x3073 0x8db3", "shinobu= 0x5fcd 0x3076", "ninku= 0x5fcd 0x82e6", "ninja= 0x5fcd 0x8005", "nintai= 0x5fcd 0x8010", "mitome= 0x8a8d 0x3081", "mitomeru= 0x8a8d 0x3081 0x308b", "mitomein= 0x8a8d 0x3081 0x5370", "ninka= 0x8a8d 0x53ef", "ninshiki= 0x8a8d 0x8b58", "nintei= 0x8a8d 0x5b9a", "nurasu= 0x6fe1 0x3089 0x3059", "nureru= 0x6fe1 0x308c 0x308b", "mushiro= 0x5be7 0x308d", "negi= 0x8471", "neko= 0x732b", "nekonadegoe= 0x732b 0x306a 0x3067 0x58f0", "nekonikoban= 0x732b 0x306b 0x5c0f 0x5224", "nekojita= 0x732b 0x820c", "nekoze= 0x732b 0x80cc", "netsu= 0x71b1", "atsui3= 0x71b1 0x3044", "nessuru= 0x71b1 0x3059 0x308b", "netsui= 0x71b1 0x610f", "nekki= 0x71b1 0x6c17", "nesshin= 0x71b1 0x5fc3", "nettai= 0x71b1 0x5e2f", "necchuu= 0x71b1 0x4e2d", "nettou= 0x71b1 0x6e6f", "netsubyou= 0x71b1 0x75c5", "netsuretsu= 0x71b1 0x70c8", "toshi2= 0x5e74", "nennen= 0x5e74 0x3005", "toshishita= 0x5e74 0x4e0b", "nenga= 0x5e74 0x8cc0", "nengajou= 0x5e74 0x8cc0 0x72b6", "nenkan1= 0x5e74 0x9451", "nenkan2= 0x5e74 0x9593", "toshiyori= 0x5e74 0x5bc4 0x308a", "nenkin= 0x5e74 0x91d1", "toshitsuki= 0x5e74 0x6708", "nengetsu= 0x5e74 0x6708", "nengappi= 0x5e74 0x6708 0x65e5", "nenkou= 0x5e74 0x529f", "nenkoukahou= 0x5e74 0x529f 0x52a0 0x4ff8", "nengu= 0x5e74 0x8ca2", "nengou= 0x5e74 0x53f7", "toshigoro= 0x5e74 0x9803", "nenshi= 0x5e74 0x59cb", "toshitotta= 0x5e74 0x53d6 0x3063 0x305f", "nenshuu= 0x5e74 0x53ce", "toshiue= 0x5e74 0x4e0a", "nensei= 0x5e74 0x751f", "nendai= 0x5e74 0x4ee3", "nenjuu= 0x5e74 0x4e2d", "nenchou= 0x5e74 0x9577", "nendo1= 0x5e74 0x5ea6", "nentou1= 0x5e74 0x982d", "nennaini= 0x5e74 0x5185 0x306b", "nenpai1= 0x5e74 0x8f29", "nenpai2= 0x5e74 0x914d", "nenpyou= 0x5e74 0x8868", "nenpu= 0x5e74 0x8b5c", "nenpou= 0x5e74 0x4ff8", "nenmatsu= 0x5e74 0x672b", "nenrin= 0x5e74 0x8f2a", "nenrei= 0x5e74 0x9f62", "nen= 0x5ff5", "nengan= 0x5ff5 0x9858", "nentou2= 0x5ff5 0x982d", "neniri= 0x5ff5 0x5165 0x308a", "nenbutsu= 0x5ff5 0x4ecf", "nenriki= 0x5ff5 0x529b", "nejiru= 0x637b 0x3058 0x308b", "nejireru= 0x637b 0x3058 0x308c 0x308b", "hineru= 0x637b 0x308b", "nenza= 0x637b 0x632b", "neji1= 0x637b 0x5b50", "nenten= 0x637b 0x8ee2", "moeru= 0x71c3 0x3048 0x308b", "moeagaru= 0x71c3 0x3048 0x4e0a 0x304c 0x308b", "mosu= 0x71c3 0x3059", "moyasu1= 0x71c3 0x3059", "moyasu2= 0x71c3 0x3084 0x3059", "nenshou= 0x71c3 0x713c", "nenpi= 0x71c3 0x8cbb", "nenryou= 0x71c3 0x6599", "nebari= 0x7c98 0x308a", "nebariduyoi= 0x7c98 0x308a 0x5f37 0x3044", "nebaru= 0x7c98 0x308b", "neneki= 0x7c98 0x6db2", "nenchaku= 0x7c98 0x7740", "nenchakuryoku= 0x7c98 0x7740 0x529b", "nendo2= 0x7c98 0x571f", "nebaneba= 0x7c98 0x7c98", "nenmaku= 0x7c98 0x819c", "naishi= 0x4e43 0x81f3", "nayamasu= 0x60a9 0x307e 0x3059", "nayami= 0x60a9 0x307f", "nayamu= 0x60a9 0x3080", "nousatsu= 0x60a9 0x6bba", "koi3= 0x6fc3 0x3044", "noukou1= 0x6fc3 0x539a", "noukon= 0x6fc3 0x7d3a", "noushuku= 0x6fc3 0x7e2e", "noutan= 0x6fc3 0x6de1", "noudo1= 0x6fc3 0x5ea6", "noumu= 0x6fc3 0x9727", "osamaru4= 0x7d0d 0x307e 0x308b", "osameru4= 0x7d0d 0x3081 0x308b", "naya= 0x7d0d 0x5c4b", "noukan= 0x7d0d 0x68fa", "nouzei= 0x7d0d 0x7a0e", "nattou= 0x7d0d 0x8c46", "nattoku= 0x7d0d 0x5f97", "nounyuu= 0x7d0d 0x5165", "nou1= 0x80fd", "yoku1= 0x80fd 0x304f", "nougakudou= 0x80fd 0x697d 0x5802", "noudouteki= 0x80fd 0x52d5 0x7684", "nouhitsu= 0x80fd 0x7b46", "noumen= 0x80fd 0x9762", "nouri= 0x80fd 0x540f", "nouritsu= 0x80fd 0x7387", "nouryoku= 0x80fd 0x529b", "nou2= 0x8133", "nouen= 0x8133 0x708e", "noukasuitai= 0x8133 0x4e0b 0x5782 0x4f53", "nousaibou= 0x8133 0x7d30 0x80de", "noushi= 0x8133 0x6b7b", "nouzui= 0x8133 0x9ac4", "nousocchuu= 0x8133 0x5352 0x4e2d", "nou3= 0x8fb2", "nouka= 0x8fb2 0x5bb6", "noukanki= 0x8fb2 0x9591 0x671f", "noukyou= 0x8fb2 0x5354", "nougyou= 0x8fb2 0x696d", "noukou2= 0x8fb2 0x8015", "nousanbutsu= 0x8fb2 0x7523 0x7269", "noujou= 0x8fb2 0x5834", "nouson= 0x8fb2 0x6751", "nouchi= 0x8fb2 0x5730", "noudo2= 0x8fb2 0x5974", "noumin= 0x8fb2 0x6c11", "nourin= 0x8fb2 0x6797", "nozoku2= 0x8997 0x304f", "wa2= 0x628a", "haaku= 0x628a 0x63e1", "haji2= 0x628a 0x6301", "haki1= 0x8987 0x6c17", "haken1= 0x8987 0x6a29", "hasha= 0x8987 0x8005", "nami1= 0x6ce2", "hatoba= 0x6ce2 0x6b62 0x5834", "naminori= 0x6ce2 0x4e57 0x308a", "hachou= 0x6ce2 0x9577", "hamon= 0x6ce2 0x7d0b", "haran= 0x6ce2 0x4e71", "harou= 0x6ce2 0x6d6a", "ha3= 0x6d3e", "haken2= 0x6d3e 0x9063", "hade= 0x6d3e 0x624b", "hashutsujo= 0x6d3e 0x51fa 0x6240", "hasei= 0x6d3e 0x751f", "habatsu= 0x6d3e 0x95a5", "yaburu= 0x7834 0x308b", "yabureru1= 0x7834 0x308c 0x308b", "yabureme= 0x7834 0x308c 0x76ee", "hakai= 0x7834 0x58ca", "haki2= 0x7834 0x68c4", "hakyoku= 0x7834 0x5c40", "hasan= 0x7834 0x7523", "hason= 0x7834 0x640d", "hatan= 0x7834 0x7dbb", "hahen= 0x7834 0x7247", "hametsu= 0x7834 0x6ec5", "hayaku3= 0x7834 0x7d04", "haretsu= 0x7834 0x88c2", "baasan= 0x5a46 0x3055 0x3093", "nonoshiru= 0x7f75 0x308b", "uma= 0x99ac", "baka= 0x99ac 0x9e7f", "bakarashii= 0x99ac 0x9e7f 0x3089 0x3057 0x3044", "bajutsu= 0x99ac 0x8853", "umagoya= 0x99ac 0x5c0f 0x5c4b", "bariki= 0x99ac 0x529b", "hai2= 0x4ff3", "haiku= 0x4ff3 0x53e5", "haijin1= 0x4ff3 0x4eba", "haiyuu= 0x4ff3 0x512a", "sutaru= 0x5ec3 0x308b", "sutareru= 0x5ec3 0x308c 0x308b", "haikibutsu= 0x5ec3 0x68c4 0x7269", "haigyou= 0x5ec3 0x696d", "haikou= 0x5ec3 0x5751", "haishi= 0x5ec3 0x6b62", "haishitsu= 0x5ec3 0x75be", "haijin2= 0x5ec3 0x4eba", "haizetsu= 0x5ec3 0x7d76", "haihanchiken= 0x5ec3 0x85e9 0x7f6e 0x770c", "ogamitaosu= 0x62dd 0x307f 0x5012 0x3059", "ogamu= 0x62dd 0x3080", "haietsu= 0x62dd 0x8b01", "haikei1= 0x62dd 0x5553", "haiken= 0x62dd 0x898b", "haishaku= 0x62dd 0x501f", "haieki= 0x6392 0x6db2", "haikigasu= 0x6392 0x6c17 0x30ac 0x30b9", "haigeki= 0x6392 0x6483", "haijo= 0x6392 0x9664", "haisui= 0x6392 0x6c34", "haiseki= 0x6392 0x65a5", "haisekiundou= 0x6392 0x65a5 0x904b 0x52d5", "haitashugi= 0x6392 0x4ed6 0x4e3b 0x7fa9", "haitateki= 0x6392 0x4ed6 0x7684", "hainichi= 0x6392 0x65e5", "hainyou= 0x6392 0x5c3f", "yabureru2= 0x6557 0x308c 0x308b", "haisha2= 0x6557 0x8005", "haisen= 0x6557 0x6226", "haiso= 0x6557 0x8a34", "haiboku= 0x6557 0x5317", "sakazuki= 0x676f", "sei8= 0x80cc", "somuku= 0x80cc 0x304f", "somukeru= 0x80cc 0x3051 0x308b", "haikei2= 0x80cc 0x666f", "sebiro= 0x80cc 0x5e83", "sebone= 0x80cc 0x9aa8", "setake= 0x80cc 0x4e08", "haishin= 0x80cc 0x4fe1", "senaka= 0x80cc 0x4e2d", "seou= 0x80cc 0x8ca0 0x3046", "hai3= 0x80ba", "haigan= 0x80ba 0x304c 0x3093", "haien= 0x80ba 0x708e", "haikatsuryou= 0x80ba 0x6d3b 0x91cf", "haikan= 0x80ba 0x809d", "haikekkaku= 0x80ba 0x7d50 0x6838", "haizou= 0x80ba 0x81d3", "haibyou= 0x80ba 0x75c5", "haishutsu= 0x8f29 0x51fa", "kubaru= 0x914d 0x308b", "haiguusha= 0x914d 0x5076 0x8005", "haizoku= 0x914d 0x5c5e", "haitatsu= 0x914d 0x9054", "haichi= 0x914d 0x7f6e", "haitou= 0x914d 0x5f53", "haifu= 0x914d 0x5e03", "haibun= 0x914d 0x5206", "hairyo= 0x914d 0x616e", "hairetsu= 0x914d 0x5217", "bai= 0x500d", "bainisuru= 0x500d 0x306b 0x3059 0x308b", "baika= 0x500d 0x52a0", "baizou= 0x500d 0x5897", "bairitsu= 0x500d 0x7387", "tsuchikau= 0x57f9 0x3046", "baiyou= 0x57f9 0x990a", "baiyoueki= 0x57f9 0x990a 0x6db2", "baikai= 0x5a92 0x4ecb", "baikaibutsu= 0x5a92 0x4ecb 0x7269", "baishaku= 0x5a92 0x914c", "baishakunin= 0x5a92 0x914c 0x4eba", "baitai= 0x5a92 0x4f53", "ume= 0x6885", "tsuyu1= 0x6885 0x96e8", "baiu= 0x6885 0x96e8", "tsuyuiri= 0x6885 0x96e8 0x5165 0x308a", "tsuyuake= 0x6885 0x96e8 0x660e 0x3051", "umeboshi1= 0x6885 0x5e72", "umeboshi2= 0x6885 0x5e72 0x3057", "umemi= 0x6885 0x898b", "umeshu= 0x6885 0x9152", "kaikaburu= 0x8cb7 0x3044 0x304b 0x3076 0x308b", "kaite1= 0x8cb7 0x3044 0x624b", "kaishime= 0x8cb7 0x3044 0x5360 0x3081", "kaishimeru= 0x8cb7 0x3044 0x5360 0x3081 0x308b", "kaiireru= 0x8cb7 0x3044 0x5165 0x308c 0x308b", "kaimono1= 0x8cb7 0x3044 0x7269", "kau2= 0x8cb7 0x3046", "kaite2= 0x8cb7 0x624b", "baishuu= 0x8cb7 0x53ce", "kaimono2= 0x8cb7 0x7269", "urikomu= 0x58f2 0x308a 0x8fbc 0x3080", "urite= 0x58f2 0x308a 0x624b", "uridasu= 0x58f2 0x308a 0x51fa 0x3059", "uriage= 0x58f2 0x308a 0x4e0a 0x3052", "uriba= 0x58f2 0x308a 0x5834", "urikire= 0x58f2 0x308a 0x5207 0x308c", "urikireru= 0x58f2 0x308a 0x5207 0x308c 0x308b", "urimono= 0x58f2 0x308a 0x7269", "uru2= 0x58f2 0x308b", "ureru2= 0x58f2 0x308c 0x308b", "baikyaku= 0x58f2 0x5374", "baikokudo= 0x58f2 0x56fd 0x5974", "uriko= 0x58f2 0x5b50", "baishun= 0x58f2 0x6625", "baiten= 0x58f2 0x5e97", "baibai= 0x58f2 0x8cb7", "baishou= 0x8ce0 0x511f", "baishoukin= 0x8ce0 0x511f 0x91d1", "baishoku= 0x966a 0x98df", "baishin= 0x966a 0x5be9", "baiseki= 0x966a 0x5e2d", "hau= 0x9019 0x3046", "hae2= 0x877f", "hakari= 0x79e4", "haku3= 0x4f2f", "hakushaku= 0x4f2f 0x7235", "hakuchuu= 0x4f2f 0x4ef2", "oji2= 0x4f2f 0x7236", "ojisan3= 0x4f2f 0x7236 0x3055 0x3093", "oba2= 0x4f2f 0x6bcd", "obasan3= 0x4f2f 0x6bcd 0x3055 0x3093", "hagasu= 0x5265 0x304c 0x3059", "muku2= 0x5265 0x304f", "hagu= 0x5265 0x3050", "mukeru2= 0x5265 0x3051 0x308b", "hageru2= 0x5265 0x3052 0x308b", "haku4= 0x535a", "hakuai= 0x535a 0x611b", "hakugaku= 0x535a 0x5b66", "hakase= 0x535a 0x58eb", "hakushi1= 0x535a 0x58eb", "hakubutsukan= 0x535a 0x7269 0x9928", "hakurankai= 0x535a 0x89a7 0x4f1a", "hyoushi1= 0x62cd 0x5b50", "hyoushigi= 0x62cd 0x5b50 0x6728", "hakusha= 0x62cd 0x8eca", "hakushu= 0x62cd 0x624b", "tomaru2= 0x6cca 0x307e 0x308b", "tomeru2= 0x6cca 0x3081 0x308b", "tomarikyaku= 0x6cca 0x308a 0x5ba2", "tomarichin= 0x6cca 0x308a 0x8cc3", "shiro3= 0x767d", "shiroi= 0x767d 0x3044", "shirobai= 0x767d 0x30d0 0x30a4", "hakui= 0x767d 0x8863", "shiraha= 0x767d 0x7fbd", "shiragiku= 0x767d 0x83ca", "hakugei= 0x767d 0x9be8", "shirokuro= 0x767d 0x9ed2", "hakusai= 0x767d 0x83dc", "hakushi2= 0x767d 0x7d19", "hakusho= 0x767d 0x66f8", "hakujou1= 0x767d 0x72b6", "hakujin1= 0x767d 0x4eba", "hakujin2= 0x767d 0x5203", "hakusen= 0x767d 0x7dda", "hakuchi= 0x767d 0x75f4", "hakuchou= 0x767d 0x9ce5", "hakunetsu= 0x767d 0x71b1", "shiraga= 0x767d 0x9aea", "hakuhatsu= 0x767d 0x9aea", "oshiroi= 0x767d 0x7c89", "hakumai= 0x767d 0x7c73", "hakuboku= 0x767d 0x58a8", "hakurai= 0x8236 0x6765", "hakuraihin= 0x8236 0x6765 0x54c1", "usui= 0x8584 0x3044", "usumaru= 0x8584 0x307e 0x308b", "usumeru= 0x8584 0x3081 0x308b", "usuragu= 0x8584 0x3089 0x3050", "usureru= 0x8584 0x308c 0x308b", "usugurai= 0x8584 0x6697 0x3044", "usugeshou= 0x8584 0x5316 0x7ca7", "hakujaku= 0x8584 0x5f31", "hakujou2= 0x8584 0x60c5", "usugi= 0x8584 0x7740", "hakumei= 0x8584 0x660e", "semaru= 0x8feb 0x308b", "hakugai= 0x8feb 0x5bb3", "hakuryoku= 0x8feb 0x529b", "sarasu2= 0x66dd 0x3059", "bakuzen= 0x6f20 0x7136", "bakuzento= 0x6f20 0x7136 0x3068", "bakugeki= 0x7206 0x6483", "bakudan= 0x7206 0x5f3e", "bakuhatsu= 0x7206 0x767a", "bakuhatsuteki= 0x7206 0x767a 0x7684", "bakuyaku= 0x7206 0x85ac", "shibarikubi= 0x7e1b 0x308a 0x9996", "shibaru= 0x7e1b 0x308b", "bakudai= 0x83ab 0x5927", "mugi= 0x9ea6", "bakuga= 0x9ea6 0x82bd", "mugicha= 0x9ea6 0x8336", "mugibatake= 0x9ea6 0x7551", "hako= 0x7bb1", "hashi3= 0x7bb8", "hazu= 0x7b48", "hada= 0x808c", "hadasamui= 0x808c 0x5bd2 0x3044", "hadairo= 0x808c 0x8272", "hadazawari= 0x808c 0x89e6 0x308a", "hadagi= 0x808c 0x7740", "hatake= 0x7551", "hachi1= 0x516b", "yattsu1= 0x516b", "yattsu2= 0x516b 0x3064", "yatsuatari= 0x516b 0x3064 0x5f53 0x305f 0x308a", "yaezakura= 0x516b 0x91cd 0x685c", "youka= 0x516b 0x65e5", "yaoya= 0x516b 0x767e 0x5c4b", "happou1= 0x516b 0x65b9", "hachi2= 0x9262", "hachimaki1= 0x9262 0x5dfb", "hachimaki2= 0x9262 0x5dfb 0x304d", "hatsu2= 0x767a", "hassuru= 0x767a 0x3059 0x308b", "hatsuiku= 0x767a 0x80b2", "hatsuen= 0x767a 0x7159", "hatsuentou= 0x767a 0x7159 0x7b52", "hatsuon= 0x767a 0x97f3", "hakka= 0x767a 0x706b", "hatsuga= 0x767a 0x82bd", "hakkaku= 0x767a 0x899a", "hakkan= 0x767a 0x520a", "hakki= 0x767a 0x63ee", "hokkinin= 0x767a 0x8d77 0x4eba", "hakkyou= 0x767a 0x72c2", "hakkin= 0x767a 0x7981", "hakkutsu= 0x767a 0x6398", "hakken= 0x767a 0x898b", "hatsugen= 0x767a 0x8a00", "hakkou1= 0x767a 0x5149", "hakkou2= 0x767a 0x884c", "hakkou3= 0x767a 0x9175", "hossa= 0x767a 0x4f5c", "hassan= 0x767a 0x6563", "hassha1= 0x767a 0x5c04", "hassha2= 0x767a 0x8eca", "hasshou= 0x767a 0x7965", "hasshouchi= 0x767a 0x7965 0x5730", "bane= 0x767a 0x6761", "hasshin= 0x767a 0x4fe1", "hassei1= 0x767a 0x751f", "hassei2= 0x767a 0x58f0", "hassou1= 0x767a 0x60f3", "hassou2= 0x767a 0x9001", "hossoku= 0x767a 0x8db3", "hattatsu= 0x767a 0x9054", "hottan= 0x767a 0x7aef", "hacchaku= 0x767a 0x7740", "hacchuu= 0x767a 0x6ce8", "hatten= 0x767a 0x5c55", "hattentojoukoku= 0x767a 0x5c55 0x9014 0x4e0a 0x56fd", "hatsuden= 0x767a 0x96fb", "hatsudensho= 0x767a 0x96fb 0x6240", "hatsunetsu= 0x767a 0x71b1", "hatsubai= 0x767a 0x58f2", "happyou= 0x767a 0x8868", "hatsubyou= 0x767a 0x75c5", "happun= 0x767a 0x61a4", "happou2= 0x767a 0x6ce1", "happou3= 0x767a 0x7832", "hatsumei= 0x767a 0x660e", "hatsurei= 0x767a 0x4ee4", "kami4= 0x9aea", "kaminoke= 0x9aea 0x306e 0x6bdb", "batsu1= 0x4f10", "bassai= 0x4f10 0x63a1", "bachi= 0x7f70", "batsu2= 0x7f70", "bassuru= 0x7f70 0x3059 0x308b", "bakkin= 0x7f70 0x91d1", "bassoku= 0x7f70 0x5247", "batten= 0x7f70 0x70b9", "bachiatari= 0x7f70 0x5f53 0x305f 0x308a", "nukasu= 0x629c 0x304b 0x3059", "nukaru= 0x629c 0x304b 0x308b", "nuku= 0x629c 0x304f", "nukeru= 0x629c 0x3051 0x308b", "nukedasu= 0x629c 0x3051 0x51fa 0x3059", "batsugun= 0x629c 0x7fa4", "bassui= 0x629c 0x7c8b", "batsu3= 0x95a5", "hato= 0x9ce9", "tomonau= 0x4f34 0x3046", "bansou= 0x4f34 0x594f", "hanryo= 0x4f34 0x4fb6", "han1= 0x5224", "ban1= 0x5224", "hanketsu= 0x5224 0x6c7a", "hanko= 0x5224 0x5b50", "hanji= 0x5224 0x4e8b", "handan= 0x5224 0x65ad", "handanryoku= 0x5224 0x65ad 0x529b", "hantei= 0x5224 0x5b9a", "hanmei= 0x5224 0x660e", "hanrei1= 0x5224 0x4f8b", "han2= 0x534a", "nakaba= 0x534a 0x3070", "hangaku1= 0x534a 0x984d", "hankanhanmin= 0x534a 0x5b98 0x534a 0x6c11", "hanki= 0x534a 0x671f", "hankei= 0x534a 0x5f84", "hantsuki= 0x534a 0x6708", "hangen= 0x534a 0x6e1b", "hanshuu= 0x534a 0x5468", "hanjuku= 0x534a 0x719f", "hanshou1= 0x534a 0x9418", "hanshin= 0x534a 0x8eab", "hansuu= 0x534a 0x6570", "hansode= 0x534a 0x8896", "hanpa= 0x534a 0x7aef", "hantou= 0x534a 0x5cf6", "handoutai= 0x534a 0x5c0e 0x4f53", "hannichi1= 0x534a 0x65e5", "hantoshi= 0x534a 0x5e74", "hannen= 0x534a 0x5e74", "hanbun= 0x534a 0x5206", "hanmen1= 0x534a 0x9762", "tan= 0x53cd", "han3= 0x53cd", "hansuru= 0x53cd 0x3059 0x308b", "sorasu2= 0x53cd 0x3089 0x3059", "kaeru6= 0x53cd 0x308b", "soru2= 0x53cd 0x308b", "hanei1= 0x53cd 0x6620", "hannou= 0x53cd 0x5fdc", "hankan= 0x53cd 0x611f", "hangyaku= 0x53cd 0x9006", "hankyou= 0x53cd 0x97ff", "hangeki= 0x53cd 0x6483", "hankou1= 0x53cd 0x6297", "hansayou= 0x53cd 0x4f5c 0x7528", "hansha= 0x53cd 0x5c04", "hanshateki= 0x53cd 0x5c04 0x7684", "hansei= 0x53cd 0x7701", "hanshou2= 0x53cd 0x8a3c", "hansen1= 0x53cd 0x6226", "hansoku= 0x53cd 0x5247", "hantai= 0x53cd 0x5bfe", "hantaigawa= 0x53cd 0x5bfe 0x5074", "hantaihyou= 0x53cd 0x5bfe 0x7968", "handou= 0x53cd 0x52d5", "hannichi2= 0x53cd 0x65e5", "hanpatsu= 0x53cd 0x767a", "hanpuku= 0x53cd 0x5fa9", "hanmen2= 0x53cd 0x9762", "hanran1= 0x53cd 0x4e71", "hanron= 0x53cd 0x8ad6", "ho1= 0x5e06", "hansen2= 0x5e06 0x8239", "hobune= 0x5e06 0x8239", "hansou1= 0x5e06 0x8d70", "hobashira= 0x5e06 0x67f1", "hanshutsu= 0x642c 0x51fa", "hansou2= 0x642c 0x9001", "hannyuu= 0x642c 0x5165", "hanten= 0x6591 0x70b9", "ita= 0x677f", "itabei= 0x677f 0x5840", "hanran2= 0x6c3e 0x6feb", "han4= 0x7248", "hanga= 0x7248 0x753b", "hanken= 0x7248 0x6a29", "okasu2= 0x72af 0x3059", "hankou2= 0x72af 0x884c", "hanzai= 0x72af 0x7f6a", "hannin= 0x72af 0x4eba", "han5= 0x73ed", "hanchou= 0x73ed 0x9577", "hanei2= 0x7e41 0x6804", "hankagai= 0x7e41 0x83ef 0x8857", "hanshoku= 0x7e41 0x6b96", "hanjou= 0x7e41 0x76db", "hanbou1= 0x7e41 0x5fd9", "hanmo= 0x7e41 0x8302", "han6= 0x85e9", "hangaku2= 0x85e9 0x5b66", "hanshu= 0x85e9 0x4e3b", "hanbatsu= 0x85e9 0x95a5", "hanbai= 0x8ca9 0x58f2", "hanbainedan= 0x8ca9 0x58f2 0x5024 0x6bb5", "hanro= 0x8ca9 0x8def", "hani= 0x7bc4 0x56f2", "hanrei2= 0x7bc4 0x4f8b", "urusai= 0x7169 0x3044", "wazurau2= 0x7169 0x3046", "wazurawashii= 0x7169 0x308f 0x3057 0x3044", "wazurawasu= 0x7169 0x308f 0x3059", "hanzatsu= 0x7169 0x96d1", "bonnou= 0x7169 0x60a9", "hanbou2= 0x7169 0x5fd9", "hanpu= 0x9812 0x5e03", "meshi= 0x98ef", "hanba= 0x98ef 0x5834", "hikiniku= 0x633d 0x8089", "ban2= 0x6669", "banshaku= 0x6669 0x914c", "banshou= 0x6669 0x9418", "bannen= 0x6669 0x5e74", "banken= 0x756a 0x72ac", "bangou= 0x756a 0x53f7", "bangumi= 0x756a 0x7d44", "banchi= 0x756a 0x5730", "banme= 0x756a 0x76ee", "ban3= 0x76e4", "ban4= 0x86ee", "bankou= 0x86ee 0x884c", "banjin1= 0x86ee 0x4eba", "banpuu= 0x86ee 0x98a8", "banyuu= 0x86ee 0x52c7", "iyashii= 0x5351 0x3057 0x3044", "iyashimu= 0x5351 0x3057 0x3080", "iyashimeru= 0x5351 0x3057 0x3081 0x308b", "hikyou= 0x5351 0x602f", "hikutsu= 0x5351 0x5c48", "higo= 0x5351 0x8a9e", "hizoku= 0x5351 0x4fd7", "hiretsu= 0x5351 0x52a3", "hiretsukan= 0x5351 0x52a3 0x6f22", "iie= 0x5426", "ie2= 0x5426", "ina= 0x5426", "hi4= 0x5426", "hiketsu1= 0x5426 0x6c7a", "hitei= 0x5426 0x5b9a", "hinin1= 0x5426 0x8a8d", "iyaiya= 0x5426 0x5426", "hidenka= 0x5983 0x6bbf 0x4e0b", "kabau= 0x5e87 0x3046", "kare= 0x5f7c", "ano= 0x5f7c 0x306e", "karera= 0x5f7c 0x3089", "higan= 0x5f7c 0x5cb8", "arekore= 0x5f7c 0x6b64", "kareshi= 0x5f7c 0x6c0f", "asoko= 0x5f7c 0x51e6", "kanojo= 0x5f7c 0x5973", "aitsu= 0x5f7c 0x5974", "achira= 0x5f7c 0x65b9", "kanata= 0x5f7c 0x65b9", "achikochi= 0x5f7c 0x65b9 0x6b64 0x65b9", "achirakochira= 0x5f7c 0x65b9 0x6b64 0x65b9", "kanashii= 0x60b2 0x3057 0x3044", "kanashimi= 0x60b2 0x3057 0x307f", "kanashimu= 0x60b2 0x3057 0x3080", "hiai= 0x60b2 0x54c0", "hikan= 0x60b2 0x89b3", "hikanteki= 0x60b2 0x89b3 0x7684", "higeki= 0x60b2 0x5287", "hisan= 0x60b2 0x60e8", "hisou1= 0x60b2 0x58ee", "hitan= 0x60b2 0x5606", "himei1= 0x60b2 0x9cf4", "hiren= 0x60b2 0x604b", "tobira= 0x6249", "hijun= 0x6279 0x51c6", "hihan= 0x6279 0x5224", "hihanteki= 0x6279 0x5224 0x7684", "hihyou= 0x6279 0x8a55", "hihyougan= 0x6279 0x8a55 0x773c", "hiken1= 0x62ab 0x898b", "hireki= 0x62ab 0x6b74", "hirou2= 0x62ab 0x9732", "hirouen= 0x62ab 0x9732 0x5bb4", "kuraberu= 0x6bd4 0x3079 0x308b", "hikaku1= 0x6bd4 0x8f03", "hikakukyuu= 0x6bd4 0x8f03 0x7d1a", "hikakugengogaku= 0x6bd4 0x8f03 0x8a00 0x8a9e 0x5b66", "hikakuteki= 0x6bd4 0x8f03 0x7684", "hikakubungaku= 0x6bd4 0x8f03 0x6587 0x5b66", "hiken2= 0x6bd4 0x80a9", "hijuu= 0x6bd4 0x91cd", "hiyokunotori= 0x6bd4 0x7ffc 0x306e 0x9ce5", "hiritsu= 0x6bd4 0x7387", "hirei1= 0x6bd4 0x4f8b", "hiyu= 0x6bd4 0x55a9", "hinyouki= 0x6ccc 0x5c3f 0x5668", "hinyoukika= 0x6ccc 0x5c3f 0x5668 0x79d1", "tsukarasu= 0x75b2 0x3089 0x3059", "tsukare= 0x75b2 0x308c", "tsukareru= 0x75b2 0x308c 0x308b", "tsukarehateru= 0x75b2 0x308c 0x679c 0x3066 0x308b", "hihei= 0x75b2 0x5f0a", "hirou3= 0x75b2 0x52b4", "kawa5= 0x76ae", "hikashibou= 0x76ae 0x4e0b 0x8102 0x80aa", "hikaku2= 0x76ae 0x9769", "kawazaiku= 0x76ae 0x7d30 0x5de5", "kawakiri= 0x76ae 0x5207 0x308a", "hisou2= 0x76ae 0x76f8", "hiniku= 0x76ae 0x8089", "hifu= 0x76ae 0x819a", "hifuishoku= 0x76ae 0x819a 0x79fb 0x690d", "hifubyou= 0x76ae 0x819a 0x75c5", "hibun= 0x7891 0x6587", "himei2= 0x7891 0x9298", "himeru= 0x79d8 0x3081 0x308b", "hiketsu2= 0x79d8 0x8a23", "hisho1= 0x79d8 0x66f8", "himitsu= 0x79d8 0x5bc6", "higyou= 0x7f77 0x696d", "himen= 0x7f77 0x514d", "koe2= 0x80a5", "koeru3= 0x80a5 0x3048 0x308b", "koyashi= 0x80a5 0x3084 0x3057", "koyasu= 0x80a5 0x3084 0x3059", "hidai= 0x80a5 0x5927", "himan= 0x80a5 0x6e80", "hiryou= 0x80a5 0x6599", "kabuseru= 0x88ab 0x305b 0x308b", "kaburu= 0x88ab 0x308b", "koumuru= 0x88ab 0x308b", "higai= 0x88ab 0x5bb3", "higaisha= 0x88ab 0x5bb3 0x8005", "higaimousou= 0x88ab 0x5bb3 0x5984 0x60f3", "hikoku= 0x88ab 0x544a", "hikokunin= 0x88ab 0x544a 0x4eba", "hishatai= 0x88ab 0x5199 0x4f53", "hisenkyoshikaku= 0x88ab 0x9078 0x6319 0x8cc7 0x683c", "hibakusha= 0x88ab 0x7206 0x8005", "hifuku= 0x88ab 0x670d", "hi5= 0x8cbb", "tsuieru= 0x8cbb 0x3048 0x308b", "tsuiyasu= 0x8cbb 0x3084 0x3059", "hiyou= 0x8cbb 0x7528", "sakeru1= 0x907f 0x3051 0x308b", "yokeru= 0x907f 0x3051 0x308b", "hisho2= 0x907f 0x6691", "hinan1= 0x907f 0x96e3", "hinin2= 0x907f 0x598a", "hiraishin= 0x907f 0x96f7 0x91dd", "hi6= 0x975e", "hikoukai= 0x975e 0x516c 0x958b", "hikou1= 0x975e 0x884c", "higouhou= 0x975e 0x5408 0x6cd5", "hijou= 0x975e 0x5e38", "hijouni= 0x975e 0x5e38 0x306b", "hijouguchi= 0x975e 0x5e38 0x53e3", "hijoujitai= 0x975e 0x5e38 0x4e8b 0x614b", "hijoushiki= 0x975e 0x5e38 0x8b58", "hiningenteki= 0x975e 0x4eba 0x9593 0x7684", "hinan2= 0x975e 0x96e3", "hirei2= 0x975e 0x793c", "tobasu= 0x98db 0x3070 0x3059", "tobioriru1= 0x98db 0x3073 0x4e0b 0x308a 0x308b", "tobihi= 0x98db 0x3073 0x706b", "tobioriru2= 0x98db 0x3073 0x964d 0x308a 0x308b", "tobikomu= 0x98db 0x3073 0x8fbc 0x3080", "tobidasu= 0x98db 0x3073 0x51fa 0x3059", "tobiagaru2= 0x98db 0x3073 0x4e0a 0x304c 0x308b", "tobiishi= 0x98db 0x3073 0x77f3", "tobikiri= 0x98db 0x3073 0x5207 0x308a", "tobihaneru= 0x98db 0x3073 0x8df3 0x306d 0x308b", "tobu2= 0x98db 0x3076", "hikou2= 0x98db 0x884c", "hikouki= 0x98db 0x884c 0x6a5f", "hikoujou= 0x98db 0x884c 0x5834", "hiyaku= 0x98db 0x8e8d", "hiryuu= 0x98db 0x7adc", "sonaeru3= 0x5099 0x3048 0x308b", "sonaetsukeru= 0x5099 0x3048 0x4ed8 0x3051 0x308b", "sonawaru2= 0x5099 0x308f 0x308b", "bikou1= 0x5099 0x8003", "bichiku= 0x5099 0x84c4", "o2= 0x5c3e", "bikou2= 0x5c3e 0x884c", "bitou= 0x5c3e 0x706f", "kasuka= 0x5fae 0x304b", "bishou= 0x5fae 0x7b11", "hohoemu= 0x5fae 0x7b11 0x3080", "biseibutsu= 0x5fae 0x751f 0x7269", "binetsu= 0x5fae 0x71b1", "bimyou= 0x5fae 0x5999", "mayu1= 0x7709", "mayuge= 0x7709 0x6bdb", "bi= 0x7f8e", "utsukushii= 0x7f8e 0x3057 0x3044", "bika= 0x7f8e 0x5316", "bigaku= 0x7f8e 0x5b66", "bijireiku= 0x7f8e 0x8f9e 0x9e97 0x53e5", "bishuu= 0x7f8e 0x919c", "bijutsu= 0x7f8e 0x8853", "bijutsukan= 0x7f8e 0x8853 0x9928", "bijo= 0x7f8e 0x5973", "bijin= 0x7f8e 0x4eba", "biten= 0x7f8e 0x70b9", "oishii= 0x7f8e 0x5473 0x3057 0x3044", "biyou= 0x7f8e 0x5bb9", "biyouin= 0x7f8e 0x5bb9 0x9662", "hana3= 0x9f3b", "bion= 0x9f3b 0x97f3", "hanaji= 0x9f3b 0x8840", "bikou3= 0x9f3b 0x5b54", "hanagami= 0x9f3b 0x7d19", "hanao= 0x9f3b 0x7dd2", "hanasaki= 0x9f3b 0x5148", "hanagusuri= 0x9f3b 0x85ac", "hiki= 0x5339", "hitsu= 0x5339", "hitteki= 0x5339 0x6575", "hippu= 0x5339 0x592b", "hige= 0x9aed", "hiza= 0x819d", "hiji= 0x8098", "kanarazu= 0x5fc5 0x305a", "kanarazushimo= 0x5fc5 0x305a 0x3057 0x3082", "hikkei= 0x5fc5 0x643a", "hisshi1= 0x5fc5 0x6b7b", "hisshini= 0x5fc5 0x6b7b 0x306b", "hisshi2= 0x5fc5 0x81f3", "hitsujuhin= 0x5fc5 0x9700 0x54c1", "hisshuu= 0x5fc5 0x4fee", "hisshuukamoku= 0x5fc5 0x4fee 0x79d1 0x76ee", "hisshou= 0x5fc5 0x52dd", "hissu= 0x5fc5 0x9808", "hitsuzen= 0x5fc5 0x7136", "hitsuzenteki= 0x5fc5 0x7136 0x7684", "hicchaku= 0x5fc5 0x7740", "hitsudoku= 0x5fc5 0x8aad", "hitsuyou= 0x5fc5 0x8981", "fude= 0x7b46", "hikki= 0x7b46 0x8a18", "hikkishiken= 0x7b46 0x8a18 0x8a66 0x9a13", "hikkiyougu= 0x7b46 0x8a18 0x7528 0x5177", "hissha= 0x7b46 0x8005", "hitsujun= 0x7b46 0x9806", "fudesaki= 0x7b46 0x5148", "hitsumei= 0x7b46 0x540d", "hime= 0x59eb", "himegimi= 0x59eb 0x541b", "himo= 0x7d10", "hyaku= 0x767e", "hyakkajiten1= 0x767e 0x79d1 0x4e8b 0x5178", "hyakkajiten2= 0x767e 0x79d1 0x8f9e 0x5178", "hyakkaten= 0x767e 0x8ca8 0x5e97", "hyakushou= 0x767e 0x59d3", "hyakunensai= 0x767e 0x5e74 0x796d", "hyakuman= 0x767e 0x4e07", "tawara= 0x4ff5", "hyougo= 0x6a19 0x8a9e", "hyousatsu1= 0x6a19 0x672d", "hyoushiki= 0x6a19 0x8b58", "hyoujun= 0x6a19 0x6e96", "hyoujungo= 0x6a19 0x6e96 0x8a9e", "hyouhon= 0x6a19 0x672c", "koori= 0x6c37", "hi7= 0x6c37", "hyouga= 0x6c37 0x6cb3", "hyouketsu= 0x6c37 0x7d50", "hyouzan= 0x6c37 0x5c71", "hyouten= 0x6c37 0x70b9", "hyoutenka= 0x6c37 0x70b9 0x4e0b", "hyouhyou= 0x6f02 0x3005", "tadayou= 0x6f02 0x3046", "hyouzen= 0x6f02 0x7136", "hyouchaku= 0x6f02 0x7740", "hyouhaku= 0x6f02 0x767d", "hyouhakuzai= 0x6f02 0x767d 0x5264", "hyouryuu= 0x6f02 0x6d41", "hyou1= 0x7968", "omote1= 0x8868", "hyou2= 0x8868", "arawasu5= 0x8868 0x3059", "arawareru3= 0x8868 0x308c 0x308b", "arawasu6= 0x8868 0x308f 0x3059", "hyouki= 0x8868 0x8a18", "hyougen= 0x8868 0x73fe", "hyousatsu2= 0x8868 0x672d", "hyoushi2= 0x8868 0x7d19", "hyoujiban= 0x8868 0x793a 0x677f", "hyoushou= 0x8868 0x5f70", "hyoushoujou= 0x8868 0x5f70 0x72b6", "hyoujou= 0x8868 0x60c5", "hyoudai= 0x8868 0x984c", "omotedoori= 0x8868 0x901a 0x308a", "hyoumen= 0x8868 0x9762", "hyouri= 0x8868 0x88cf", "hyou3= 0x8a55", "hyouka= 0x8a55 0x4fa1", "hyouban= 0x8a55 0x5224", "hyouron= 0x8a55 0x8ad6", "egaku= 0x63cf 0x304f", "byousha= 0x63cf 0x5199", "yamai= 0x75c5", "yamu2= 0x75c5 0x3080", "byouin= 0x75c5 0x9662", "byouki= 0x75c5 0x6c17", "byouku= 0x75c5 0x82e6", "byoushi= 0x75c5 0x6b7b", "byoushitsu= 0x75c5 0x5ba4", "byoujaku= 0x75c5 0x5f31", "byoushou1= 0x75c5 0x5e8a", "byoushou2= 0x75c5 0x75c7", "byoujou= 0x75c5 0x72b6", "byounin= 0x75c5 0x4eba", "byoutou= 0x75c5 0x68df", "byou= 0x79d2", "byoushin= 0x79d2 0x91dd", "byouyomi= 0x79d2 0x8aad 0x307f", "nae= 0x82d7", "myouji1= 0x82d7 0x5b57", "naedoko= 0x82d7 0x5e8a", "nawashiro= 0x82d7 0x4ee3", "naegi= 0x82d7 0x6728", "ikari2= 0x9328", "shina= 0x54c1", "hin= 0x54c1", "hinshi= 0x54c1 0x8a5e", "hinshitsu= 0x54c1 0x8cea", "hinshu= 0x54c1 0x7a2e", "shinagire= 0x54c1 0x5207 0x308c", "shinamono= 0x54c1 0x7269", "hinmei= 0x54c1 0x540d", "hama= 0x6d5c", "hamabe= 0x6d5c 0x8fba", "mazushii= 0x8ca7 0x3057 0x3044", "hinketsu= 0x8ca7 0x8840", "hinkon= 0x8ca7 0x56f0", "hinjaku= 0x8ca7 0x5f31", "hinsou= 0x8ca7 0x76f8", "hinpu= 0x8ca7 0x5bcc", "binbou= 0x8ca7 0x4e4f", "binbounin= 0x8ca7 0x4e4f 0x4eba", "hinkaku= 0x8cd3 0x5ba2", "hinkyaku= 0x8cd3 0x5ba2", "hinpin= 0x983b 0x3005", "shikirini= 0x983b 0x308a 0x306b", "hindo= 0x983b 0x5ea6", "hinpatsu= 0x983b 0x767a", "hinpan= 0x983b 0x7e41", "binkan= 0x654f 0x611f", "binsoku= 0x654f 0x901f", "binwan= 0x654f 0x8155", "bin1= 0x74f6", "bindume1= 0x74f6 0x8a70", "bindume2= 0x74f6 0x8a70 0x3081", "fuan= 0x4e0d 0x5b89", "fuannotane= 0x4e0d 0x5b89 0x306e 0x7a2e", "fuantei= 0x4e0d 0x5b89 0x5b9a", "fui= 0x4e0d 0x610f", "fuini= 0x4e0d 0x610f 0x306b", "fuun= 0x4e0d 0x904b", "fuka1= 0x4e0d 0x53ef", "fukakai= 0x4e0d 0x53ef 0x89e3", "fukaketsu= 0x4e0d 0x53ef 0x6b20", "fukashin= 0x4e0d 0x53ef 0x4fb5", "fukashinjouyaku= 0x4e0d 0x53ef 0x4fb5 0x6761 0x7d04", "fukanou= 0x4e0d 0x53ef 0x80fd", "fukahi= 0x4e0d 0x53ef 0x907f", "fukabun= 0x4e0d 0x53ef 0x5206", "fukai2= 0x4e0d 0x5feb", "futashika= 0x4e0d 0x78ba 0x304b", "fukanzen= 0x4e0d 0x5b8c 0x5168", "funare= 0x4e0d 0x6163 0x308c", "bukiyou1= 0x4e0d 0x5668 0x7528", "fukigen= 0x4e0d 0x6a5f 0x5acc", "bukimi= 0x4e0d 0x6c17 0x5473", "fukisoku= 0x4e0d 0x898f 0x5247", "fukitsu= 0x4e0d 0x5409", "fukyuu1= 0x4e0d 0x673d", "fukyuunomeisaku= 0x4e0d 0x673d 0x306e 0x540d 0x4f5c", "fukyou1= 0x4e0d 0x6cc1", "fugu= 0x4e0d 0x5177", "fukutsu= 0x4e0d 0x5c48", "fukeiki= 0x4e0d 0x666f 0x6c17", "fuketsu= 0x4e0d 0x6f54", "fukenkou= 0x4e0d 0x5065 0x5eb7", "fukouhei= 0x4e0d 0x516c 0x5e73", "fukou1= 0x4e0d 0x5b5d", "fukou2= 0x4e0d 0x5e78", "fushiawase= 0x4e0d 0x5e78 0x305b", "fugoukaku= 0x4e0d 0x5408 0x683c", "fugouri= 0x4e0d 0x5408 0x7406", "fuzai= 0x4e0d 0x5728", "fusaku= 0x4e0d 0x4f5c", "fuzakeru= 0x4e0d 0x5c71 0x622f 0x308b", "fushimatsu= 0x4e0d 0x59cb 0x672b", "fushigi= 0x4e0d 0x601d 0x8b70", "fujimi= 0x4e0d 0x6b7b 0x8eab", "fujichaku= 0x4e0d 0x6642 0x7740", "fushizen= 0x4e0d 0x81ea 0x7136", "fujiyuu= 0x4e0d 0x81ea 0x7531", "fujuubun1= 0x4e0d 0x5145 0x5206", "fujuubun2= 0x4e0d 0x5341 0x5206", "fujun1= 0x4e0d 0x7d14", "fujun2= 0x4e0d 0x9806", "fushouji= 0x4e0d 0x7965 0x4e8b", "fushou1= 0x4e0d 0x8096", "fushou2= 0x4e0d 0x8a73", "fujouri= 0x4e0d 0x6761 0x7406", "fujou= 0x4e0d 0x6d44", "fushin1= 0x4e0d 0x4fe1", "fushin2= 0x4e0d 0x5be9", "fushin3= 0x4e0d 0x632f", "fushinsetsu= 0x4e0d 0x89aa 0x5207", "futo= 0x4e0d 0x56f3", "fusei= 0x4e0d 0x6b63", "bushou1= 0x4e0d 0x7cbe", "fusouou= 0x4e0d 0x76f8 0x5fdc", "fusoku= 0x4e0d 0x8db3", "fudan1= 0x4e0d 0x65ad", "fuchuui= 0x4e0d 0x6ce8 0x610f", "futsuu1= 0x4e0d 0x901a", "futei= 0x4e0d 0x8c9e", "futeki= 0x4e0d 0x6575", "futsugou= 0x4e0d 0x90fd 0x5408", "futou= 0x4e0d 0x5f53", "futoumei= 0x4e0d 0x900f 0x660e", "fudousan= 0x4e0d 0x52d5 0x7523", "fudousanya= 0x4e0d 0x52d5 0x7523 0x5c4b", "futokui= 0x4e0d 0x5f97 0x610f", "futoku= 0x4e0d 0x5fb3", "funin1= 0x4e0d 0x598a", "funensei= 0x4e0d 0x71c3 0x6027", "funenbutsu= 0x4e0d 0x71c3 0x7269", "funou= 0x4e0d 0x80fd", "fubi= 0x4e0d 0x5099", "fuhitsuyou= 0x4e0d 0x5fc5 0x8981", "fufuku= 0x4e0d 0x670d", "fubunritsu= 0x4e0d 0x6587 0x5f8b", "fuhei= 0x4e0d 0x5e73", "fubyoudou= 0x4e0d 0x5e73 0x7b49", "fuhen1= 0x4e0d 0x504f", "fuhenfutou= 0x4e0d 0x504f 0x4e0d 0x515a", "fuhen2= 0x4e0d 0x5909", "fuben= 0x4e0d 0x4fbf", "fuhou= 0x4e0d 0x6cd5", "fuhoni= 0x4e0d 0x672c 0x610f", "fuman= 0x4e0d 0x6e80", "mazui= 0x4e0d 0x5473 0x3044", "fumin= 0x4e0d 0x7720", "fuminshou= 0x4e0d 0x7720 0x75c7", "fumei= 0x4e0d 0x660e", "fumou= 0x4e0d 0x6bdb", "fuyukai= 0x4e0d 0x6109 0x5feb", "fuyou1= 0x4e0d 0x8981", "furi2= 0x4e0d 0x5229", "furieki= 0x4e0d 0x5229 0x76ca", "furyo= 0x4e0d 0x616e", "furyou= 0x4e0d 0x826f", "furin= 0x4e0d 0x502b", "fuwa= 0x4e0d 0x548c", "tsukiai= 0x4ed8 0x304d 0x5408 0x3044", "tsukiau= 0x4ed8 0x304d 0x5408 0x3046", "tsukisoi1= 0x4ed8 0x304d 0x6dfb 0x3044", "tsukimono= 0x4ed8 0x304d 0x7269", "tsuke= 0x4ed8 0x3051", "tsukeru5= 0x4ed8 0x3051 0x308b", "tsukekuwaeru= 0x4ed8 0x3051 0x52a0 0x3048 0x308b", "tsukekomu= 0x4ed8 0x3051 0x8fbc 0x3080", "tsuketasu= 0x4ed8 0x3051 0x8db3 0x3059", "fuka2= 0x4ed8 0x52a0", "fukakachizei= 0x4ed8 0x52a0 0x4fa1 0x5024 0x7a0e", "fukin1= 0x4ed8 0x8fd1", "fuzuigenshou= 0x4ed8 0x968f 0x73fe 0x8c61", "fuzoku1= 0x4ed8 0x5c5e", "fuchaku= 0x4ed8 0x7740", "tsukisoi2= 0x4ed8 0x6dfb 0x3044", "furoku1= 0x4ed8 0x9332", "otto= 0x592b", "sorezore= 0x592b 0x308c 0x592b 0x308c", "fusai1= 0x592b 0x59bb", "fujin1= 0x592b 0x4eba", "fuufu= 0x592b 0x5a66", "fujo1= 0x5a66 0x5973", "fujoshi= 0x5a66 0x5973 0x5b50", "fujin2= 0x5a66 0x4eba", "fuchou1= 0x5a66 0x9577", "tomi= 0x5bcc", "tomu= 0x5bcc 0x3080", "fuuki1= 0x5bcc 0x8cb4", "fukyou2= 0x5bcc 0x5f37", "fugou1= 0x5bcc 0x8c6a", "fujisan= 0x5bcc 0x58eb 0x5c71", "fuusha= 0x5bcc 0x8005", "fusha= 0x5bcc 0x8005", "fuyuu= 0x5bcc 0x88d5", "furyoku= 0x5bcc 0x529b", "nuno= 0x5e03", "fukin2= 0x5e03 0x5dfe", "futon= 0x5e03 0x56e3", "fuchou2= 0x5e9c 0x5e81", "furitsu= 0x5e9c 0x7acb", "kowai= 0x6016 0x3044", "kowagaru= 0x6016 0x304c 0x308b", "fuchi2= 0x6276 0x6301", "fujo2= 0x6276 0x52a9", "fuyou2= 0x6276 0x990a", "fuyougimu= 0x6276 0x990a 0x7fa9 0x52d9", "fuyouryou= 0x6276 0x990a 0x6599", "shikibuton1= 0x6577 0x304d 0x5e03 0x56e3", "shiku= 0x6577 0x304f", "shikii= 0x6577 0x5c45", "shikikin= 0x6577 0x91d1", "fusetsu= 0x6577 0x8a2d", "shikichi= 0x6577 0x5730", "shikifu= 0x6577 0x5e03", "shikibuton2= 0x6577 0x5e03 0x56e3", "fu= 0x666e", "fukyuu2= 0x666e 0x53ca", "fushin4= 0x666e 0x8acb", "fusen= 0x666e 0x9078", "fudan2= 0x666e 0x6bb5", "fudangi= 0x666e 0x6bb5 0x7740", "futsuu2= 0x666e 0x901a", "futsuusenkyo= 0x666e 0x901a 0x9078 0x6319", "fuhen3= 0x666e 0x904d", "ukanukao= 0x6d6e 0x304b 0x306c 0x9854", "ukabu= 0x6d6e 0x304b 0x3076", "ukaberu= 0x6d6e 0x304b 0x3079 0x308b", "ukareru= 0x6d6e 0x304b 0x308c 0x308b", "ukibori= 0x6d6e 0x304d 0x5f6b 0x308a", "ukiuki= 0x6d6e 0x304d 0x6d6e 0x304d", "uku= 0x6d6e 0x304f", "uwaki= 0x6d6e 0x6c17", "ukiyoe= 0x6d6e 0x4e16 0x7d75", "furou= 0x6d6e 0x6d6a", "furousha= 0x6d6e 0x6d6a 0x8005", "chichi2= 0x7236", "tousan2= 0x7236 0x3055 0x3093", "fukei= 0x7236 0x5144", "fushi2= 0x7236 0x5b50", "chichioya= 0x7236 0x89aa", "fubo= 0x7236 0x6bcd", "chichikata= 0x7236 0x65b9", "fugou2= 0x7b26 0x53f7", "fugou3= 0x7b26 0x5408", "kusarasu= 0x8150 0x3089 0x3059", "kusaru= 0x8150 0x308b", "kusareru= 0x8150 0x308c 0x308b", "fukyuu3= 0x8150 0x673d", "fushoku= 0x8150 0x98df", "fushin5= 0x8150 0x5fc3", "fuhai= 0x8150 0x6557", "fumen= 0x8b5c 0x9762", "ou5= 0x8ca0 0x3046", "makasu2= 0x8ca0 0x304b 0x3059", "make= 0x8ca0 0x3051", "makejidamashii= 0x8ca0 0x3051 0x3058 0x9b42", "makeru= 0x8ca0 0x3051 0x308b", "makenki= 0x8ca0 0x3051 0x3093 0x6c17", "makeinu= 0x8ca0 0x3051 0x72ac", "onbu= 0x8ca0 0x3093 0x3076", "fusai2= 0x8ca0 0x50b5", "fushou3= 0x8ca0 0x50b7", "makeoshimi= 0x8ca0 0x60dc 0x3057 0x307f", "futan= 0x8ca0 0x62c5", "fuka3= 0x8ce6 0x8ab2", "fuzei= 0x8ce6 0x7a0e", "fueki= 0x8ce6 0x5f79", "omomuku= 0x8d74 0x304f", "funin2= 0x8d74 0x4efb", "funinchi= 0x8d74 0x4efb 0x5730", "fukin3= 0x9644 0x8fd1", "fuzoku2= 0x9644 0x5c5e", "furoku2= 0x9644 0x9332", "anadoru= 0x4fae 0x308b", "bugen= 0x4fae 0x8a00", "bujoku= 0x4fae 0x8fb1", "bubetsu= 0x4fae 0x8511", "naderu= 0x64ab 0x3067 0x308b", "buki= 0x6b66 0x5668", "bushi= 0x6b66 0x58eb", "musha= 0x6b66 0x8005", "busou= 0x6b66 0x88c5", "budou1= 0x6b66 0x9053", "buyuu= 0x6b66 0x52c7", "buryoku= 0x6b66 0x529b", "mau= 0x821e 0x3046", "bugaku= 0x821e 0x697d", "maiougi= 0x821e 0x6247", "butai1= 0x821e 0x53f0", "butou= 0x821e 0x8e0f", "butoukai= 0x821e 0x8e0f 0x4f1a", "maihime= 0x821e 0x59eb", "buyou= 0x821e 0x8e0a", "budou2= 0x8461 0x8404", "bu1= 0x90e8", "heya= 0x90e8 0x5c4b", "buka= 0x90e8 0x4e0b", "bushu= 0x90e8 0x9996", "busho= 0x90e8 0x7f72", "buzoku= 0x90e8 0x65cf", "butai2= 0x90e8 0x968a", "buchou= 0x90e8 0x9577", "buhin= 0x90e8 0x54c1", "bubun= 0x90e8 0x5206", "bumon= 0x90e8 0x9580", "buraku= 0x90e8 0x843d", "fuu1= 0x5c01", "houkenshugi= 0x5c01 0x5efa 0x4e3b 0x7fa9", "houkenseido= 0x5c01 0x5efa 0x5236 0x5ea6", "houkenteki= 0x5c01 0x5efa 0x7684", "fuusa= 0x5c01 0x9396", "fuusho= 0x5c01 0x66f8", "fuutou= 0x5c01 0x7b52", "fuunyuu= 0x5c01 0x5165", "kaze1= 0x98a8", "fuu2= 0x98a8", "fuuu= 0x98a8 0x96e8", "fuuun= 0x98a8 0x96f2", "kazashimo= 0x98a8 0x4e0b", "fuuga= 0x98a8 0x96c5", "fuuki2= 0x98a8 0x7d00", "fuukin= 0x98a8 0x7434", "fuukei= 0x98a8 0x666f", "fuukouzekka= 0x98a8 0x5149 0x7d76 0x4f73", "kazamuki= 0x98a8 0x5411 0x304d", "fuushi= 0x98a8 0x523a", "kaze2= 0x98a8 0x90aa", "kazegusuri= 0x98a8 0x90aa 0x85ac", "kazakami= 0x98a8 0x4e0a", "fuusen= 0x98a8 0x8239", "fuusoku= 0x98a8 0x901f", "fuuzoku= 0x98a8 0x4fd7", "fuutei= 0x98a8 0x4f53", "fuuchichiku= 0x98a8 0x81f4 0x5730 0x533a", "fuuchou= 0x98a8 0x6f6e", "fuudo= 0x98a8 0x571f", "fuubun= 0x98a8 0x805e", "fuuryuu= 0x98a8 0x6d41", "fuuryoku= 0x98a8 0x529b", "fuurin= 0x98a8 0x9234", "furo= 0x98a8 0x5442", "furoya= 0x98a8 0x5442 0x5c4b", "furoba= 0x98a8 0x5442 0x5834", "furoshiki= 0x98a8 0x5442 0x6577", "fusu= 0x4f0f 0x3059", "fuseru= 0x4f0f 0x305b 0x308b", "fukusen= 0x4f0f 0x7dda", "fukuhei= 0x4f0f 0x5175", "fuku3= 0x526f", "fukugyou= 0x526f 0x696d", "fukusayou= 0x526f 0x4f5c 0x7528", "fukusanbutsu= 0x526f 0x7523 0x7269", "fukushi1= 0x526f 0x8a5e", "fukushachou= 0x526f 0x793e 0x9577", "fukusouhin= 0x526f 0x846c 0x54c1", "fukudai= 0x526f 0x984c", "fukkatsu= 0x5fa9 0x6d3b", "fukki= 0x5fa9 0x5e30", "fukkyuu= 0x5fa9 0x65e7", "fukkou= 0x5fa9 0x8208", "fukushuu1= 0x5fa9 0x7fd2", "fukushuu2= 0x5fa9 0x8b90", "haba= 0x5e45", "habagakiku= 0x5e45 0x304c 0x5229 0x304f", "habanohiroi= 0x5e45 0x306e 0x5e83 0x3044", "habahiroi= 0x5e45 0x5e83 0x3044", "fuku4= 0x670d", "fukujuu= 0x670d 0x5f93", "fukushoku= 0x670d 0x98fe", "fukusou= 0x670d 0x88c5", "fukueki= 0x670d 0x5f79", "fukuyou= 0x670d 0x7528", "fuku5= 0x798f", "fukubiki= 0x798f 0x5f15", "fukuin= 0x798f 0x97f3", "fukushi2= 0x798f 0x7949", "fukushikokka= 0x798f 0x7949 0x56fd 0x5bb6", "hara2= 0x8179", "haraippai= 0x8179 0x4e00 0x676f", "haramaki= 0x8179 0x5dfb 0x304d", "fukumaku= 0x8179 0x819c", "fukumakuen= 0x8179 0x819c 0x708e", "fukugou= 0x8907 0x5408", "fukuzatsu= 0x8907 0x96d1", "fukusha= 0x8907 0x5199", "fukusuu= 0x8907 0x6570", "fukusei= 0x8907 0x88fd", "oou= 0x8986 0x3046", "kutsugaesu= 0x8986 0x3059", "kutsugaeru= 0x8986 0x308b", "fukusuibonnikaerazu= 0x8986 0x6c34 0x76c6 0x306b 0x8fd4 0x3089 0x305a", "fukumen= 0x8986 0x9762", "harai= 0x6255 0x3044", "haraikomu= 0x6255 0x3044 0x8fbc 0x3080", "haraimodosu= 0x6255 0x3044 0x623b 0x3059", "harau= 0x6255 0x3046", "futtei= 0x6255 0x5e95", "wakasu= 0x6cb8 0x304b 0x3059", "wakitatsu= 0x6cb8 0x304d 0x7acb 0x3064", "waku1= 0x6cb8 0x304f", "futten= 0x6cb8 0x70b9", "futtou= 0x6cb8 0x9a30", "futtouten= 0x6cb8 0x9a30 0x70b9", "hotoke= 0x4ecf", "bukkyou= 0x4ecf 0x6559", "butsuzou= 0x4ecf 0x50cf", "mono2= 0x7269", "monokage= 0x7269 0x9670", "monooto= 0x7269 0x97f3", "bukka= 0x7269 0x4fa1", "bukkatouki= 0x7269 0x4fa1 0x9a30 0x8cb4", "monooboe= 0x7269 0x899a 0x3048", "monohoshi= 0x7269 0x5e72 0x3057", "monogatari= 0x7269 0x8a9e", "monogataru= 0x7269 0x8a9e 0x308b", "monozuki= 0x7269 0x597d 0x304d", "monogoshi= 0x7269 0x8170", "monosashi1= 0x7269 0x5dee", "monosashi2= 0x7269 0x5dee 0x3057", "monosashi3= 0x7269 0x6307", "monosashi4= 0x7269 0x6307 0x3057", "busshi= 0x7269 0x8cc7", "monogoto= 0x7269 0x4e8b", "busshitsu= 0x7269 0x8cea", "monoyawaraka= 0x7269 0x67d4 0x3089 0x304b", "monosugoi= 0x7269 0x51c4 0x3044", "bussou= 0x7269 0x9a12", "monotarinai= 0x7269 0x8db3 0x308a 0x306a 0x3044", "buttai= 0x7269 0x4f53", "monooki= 0x7269 0x7f6e", "monoui= 0x7269 0x6182 0x3044", "butsuri= 0x7269 0x7406", "bu2= 0x5206", "bun1= 0x5206", "wakatsu= 0x5206 0x304b 0x3064", "wakarazuya= 0x5206 0x304b 0x3089 0x305a 0x5c4b", "wakaru= 0x5206 0x304b 0x308b", "wakareru1= 0x5206 0x304b 0x308c 0x308b", "wakeru= 0x5206 0x3051 0x308b", "wakemae= 0x5206 0x3051 0x524d", "bunkai= 0x5206 0x89e3", "bunkatsu= 0x5206 0x5272", "bunkatsubarai= 0x5206 0x5272 0x6255 0x3044", "bunki= 0x5206 0x5c90", "bunkiten= 0x5206 0x5c90 0x70b9", "bungyou= 0x5206 0x696d", "bunsatsu= 0x5206 0x518a", "bunsan= 0x5206 0x6563", "bunshi= 0x5206 0x5b50", "bunshitsu= 0x5206 0x5ba4", "bunsuu= 0x5206 0x6570", "bunseki= 0x5206 0x6790", "bunsekikagaku= 0x5206 0x6790 0x5316 0x5b66", "buntan= 0x5206 0x62c5", "bunpai= 0x5206 0x914d", "bunpi= 0x5206 0x6ccc", "bunpitsu1= 0x5206 0x6ccc", "bunpibutsu= 0x5206 0x6ccc 0x7269", "bunpu= 0x5206 0x5e03", "funbetsu= 0x5206 0x5225", "bunbetsu= 0x5206 0x5225", "bunbo= 0x5206 0x6bcd", "bunya= 0x5206 0x91ce", "bunri= 0x5206 0x96e2", "bunritsu= 0x5206 0x7acb", "bunryou= 0x5206 0x91cf", "bunrui= 0x5206 0x985e", "bunretsu= 0x5206 0x88c2", "fuku6= 0x5674 0x304f", "funka= 0x5674 0x706b", "funsha= 0x5674 0x5c04", "funshutsu= 0x5674 0x51fa", "funsui= 0x5674 0x6c34", "funmuki= 0x5674 0x9727 0x5668", "funbo= 0x58b3 0x5893", "fungai= 0x61a4 0x6168", "funzento= 0x61a4 0x7136 0x3068", "taku4= 0x711a 0x304f", "furuu2= 0x596e 0x3046", "furutte= 0x596e 0x3063 0x3066", "funki= 0x596e 0x8d77", "funjin= 0x596e 0x8fc5", "funtou= 0x596e 0x95d8", "funpatsu= 0x596e 0x767a", "kona= 0x7c89", "konamiruku= 0x7c89 0x30df 0x30eb 0x30af", "funsai= 0x7c89 0x7815", "funshoku= 0x7c89 0x98fe", "funmatsu= 0x7c89 0x672b", "magirasu= 0x7d1b 0x3089 0x3059", "magirawashii= 0x7d1b 0x3089 0x308f 0x3057 0x3044", "magirawasu= 0x7d1b 0x3089 0x308f 0x3059", "magure= 0x7d1b 0x308c", "magireru= 0x7d1b 0x308c 0x308b", "funkyuu= 0x7d1b 0x7cfe", "funshitsu= 0x7d1b 0x5931", "funsou= 0x7d1b 0x4e89", "funiki= 0x96f0 0x56f2 0x6c17", "fumi= 0x6587", "bun2= 0x6587", "bunka1= 0x6587 0x5316", "bunkasai= 0x6587 0x5316 0x796d", "bunkazai= 0x6587 0x5316 0x8ca1", "bunkateki= 0x6587 0x5316 0x7684", "bunka2= 0x6587 0x79d1", "bungaku= 0x6587 0x5b66", "bungakushi= 0x6587 0x5b66 0x53f2", "bungakusha= 0x6587 0x5b66 0x8005", "bungakushou= 0x6587 0x5b66 0x8cde", "bunraku= 0x6587 0x697d", "monku= 0x6587 0x53e5", "bunkei= 0x6587 0x7cfb", "bungei= 0x6587 0x82b8", "bungeihihyou= 0x6587 0x82b8 0x6279 0x8a55", "bunken= 0x6587 0x732e", "bunko= 0x6587 0x5eab", "bunkobon= 0x6587 0x5eab 0x672c", "bungo= 0x6587 0x8a9e", "moji= 0x6587 0x5b57", "monji= 0x6587 0x5b57", "mojidoori= 0x6587 0x5b57 0x901a 0x308a", "bunsho= 0x6587 0x66f8", "bunshou= 0x6587 0x7ae0", "buntai= 0x6587 0x4f53", "bundan= 0x6587 0x58c7", "buntsuu= 0x6587 0x901a", "bunpitsu2= 0x6587 0x7b46", "monbushou= 0x6587 0x90e8 0x7701", "bunpou= 0x6587 0x6cd5", "bunbougu= 0x6587 0x623f 0x5177", "bunmyaku= 0x6587 0x8108", "bunmei= 0x6587 0x660e", "monmou= 0x6587 0x76f2", "kikasu= 0x805e 0x304b 0x3059", "kikitori= 0x805e 0x304d 0x53d6 0x308a", "kikitoru= 0x805e 0x304d 0x53d6 0x308b", "kikite= 0x805e 0x304d 0x624b", "kikiireru= 0x805e 0x304d 0x5165 0x308c 0x308b", "kikimorasu= 0x805e 0x304d 0x6f0f 0x3089 0x3059", "kiku4= 0x805e 0x304f", "kikoeru= 0x805e 0x3053 0x3048 0x308b", "hei1= 0x4e19", "shikashi2= 0x4f75 0x3057", "shikashinagara= 0x4f75 0x3057 0x4e4d 0x3089", "awaseru2= 0x4f75 0x305b 0x308b", "heiki1= 0x4f75 0x8a18", "heigou= 0x4f75 0x5408", "heihatsu= 0x4f75 0x767a", "heiyou= 0x4f75 0x7528", "heiki2= 0x5175 0x5668", "heishi= 0x5175 0x58eb", "heisha1= 0x5175 0x820e", "heisotsu= 0x5175 0x5352", "heitai= 0x5175 0x968a", "heieki= 0x5175 0x5f79", "hyourou= 0x5175 0x7ce7", "hei2= 0x5840", "heisei1= 0x5e63 0x5236", "hira= 0x5e73", "hiratai= 0x5e73 0x305f 0x3044", "taira= 0x5e73 0x3089", "heianchou= 0x5e73 0x5b89 0x671d", "hiraoyogi= 0x5e73 0x6cf3 0x304e", "heion= 0x5e73 0x7a4f", "heionbuji= 0x5e73 0x7a4f 0x7121 0x4e8b", "hiragana= 0x5e73 0x4eee 0x540d", "heiki3= 0x5e73 0x6c17", "heikin= 0x5e73 0x5747", "heikou1= 0x5e73 0x884c", "heikou2= 0x5e73 0x8861", "heikoukankaku= 0x5e73 0x8861 0x611f 0x899a", "heijou= 0x5e73 0x5e38", "heisei2= 0x5e73 0x6210", "heisei3= 0x5e73 0x9759", "byoudou= 0x5e73 0x7b49", "heijitsu= 0x5e73 0x65e5", "heinen= 0x5e73 0x5e74", "heinennami= 0x5e73 0x5e74 0x4e26 0x307f", "heihou= 0x5e73 0x65b9", "heihoume-toru= 0x5e73 0x65b9 0x30e1 0x30fc 0x30c8 0x30eb", "heibon= 0x5e73 0x51e1", "heimen= 0x5e73 0x9762", "heiya= 0x5e73 0x91ce", "heiyu= 0x5e73 0x7652", "heiwa= 0x5e73 0x548c", "heigai= 0x5f0a 0x5bb3", "heisha2= 0x5f0a 0x793e", "e4= 0x67c4", "gara= 0x67c4", "nami2= 0x4e26", "narabi= 0x4e26 0x3073", "narabini= 0x4e26 0x3073 0x306b", "narabu= 0x4e26 0x3076", "naraberu= 0x4e26 0x3079 0x308b", "nami3= 0x4e26 0x307f", "heikou3= 0x4e26 0x884c", "namiki= 0x4e26 0x6728", "heiretsu= 0x4e26 0x5217", "tozasu= 0x9589 0x3056 0x3059", "tojikomoru= 0x9589 0x3058 0x3053 0x3082 0x308b", "tojiru2= 0x9589 0x3058 0x308b", "shimaru3= 0x9589 0x307e 0x308b", "shimeru5= 0x9589 0x3081 0x308b", "heikai= 0x9589 0x4f1a", "heikou4= 0x9589 0x53e3", "heisa= 0x9589 0x9396", "heiten= 0x9589 0x5e97", "heika= 0x965b 0x4e0b", "kome= 0x7c73", "beika= 0x7c73 0x4fa1", "komedawara= 0x7c73 0x4ff5", "kometsubu= 0x7c73 0x7c92", "higami= 0x50fb 0x307f", "higamu= 0x50fb 0x3080", "kabe= 0x58c1", "hekiga= 0x58c1 0x753b", "kabegami= 0x58c1 0x7d19", "kuse= 0x7656", "betsu= 0x5225", "betsubetsu= 0x5225 0x3005", "betsuni= 0x5225 0x306b", "wakare= 0x5225 0x308c", "wakareru2= 0x5225 0x308c 0x308b", "bekkan= 0x5225 0x9928", "bekkyo= 0x5225 0x5c45", "bekko= 0x5225 0x500b", "bessatsu= 0x5225 0x518a", "betsujin= 0x5225 0x4eba", "bessou= 0x5225 0x8358", "betsumune= 0x5225 0x68df", "betsubin= 0x5225 0x4fbf", "betsumei= 0x5225 0x540d", "betsumondai= 0x5225 0x554f 0x984c", "sagesumu= 0x8511 0x3080", "katayoru1= 0x504f 0x308b", "henkyou= 0x504f 0x72ed", "henken= 0x504f 0x898b", "henkou1= 0x504f 0x5411", "hensa= 0x504f 0x5dee", "hensachi= 0x504f 0x5dee 0x5024", "henshoku= 0x504f 0x98df", "hen1= 0x5909", "kawaru4= 0x5909 0x308f 0x308b", "heni= 0x5909 0x79fb", "henka= 0x5909 0x5316", "henkaku= 0x5909 0x9769", "henkan1= 0x5909 0x63db", "henkei= 0x5909 0x5f62", "henkou2= 0x5909 0x66f4", "henshu= 0x5909 0x7a2e", "henshin1= 0x5909 0x8eab", "henjin= 0x5909 0x4eba", "hensen= 0x5909 0x9077", "hensoku= 0x5909 0x5247", "hentai= 0x5909 0x614b", "hendou= 0x5909 0x52d5", "henbou= 0x5909 0x8c8c", "henyou= 0x5909 0x5bb9", "katakana= 0x7247 0x4eee 0x540d", "katayoru2= 0x7247 0x5bc4 0x308b", "katasumi= 0x7247 0x9685", "kataomoi= 0x7247 0x601d 0x3044", "katate= 0x7247 0x624b", "katagawa= 0x7247 0x5074", "katamichi= 0x7247 0x9053", "kataduku= 0x7247 0x4ed8 0x304f", "katadukeru= 0x7247 0x4ed8 0x3051 0x308b", "katahou= 0x7247 0x65b9", "katame= 0x7247 0x76ee", "amimono1= 0x7de8 0x307f 0x7269", "amu= 0x7de8 0x3080", "henshuu= 0x7de8 0x96c6", "hensei= 0x7de8 0x6210", "hennyuu= 0x7de8 0x5165", "amimono2= 0x7de8 0x7269", "hen2= 0x8fba", "atari3= 0x8fba 0x308a", "henchi= 0x8fba 0x5730", "kaesu2= 0x8fd4 0x3059", "kaeru7= 0x8fd4 0x308b", "henkan2= 0x8fd4 0x9084", "henkyaku= 0x8fd4 0x5374", "hensai= 0x8fd4 0x6e08", "kaerizaki= 0x8fd4 0x54b2 0x304d", "henji= 0x8fd4 0x4e8b", "henjou= 0x8fd4 0x4e0a", "henshin2= 0x8fd4 0x4fe1", "henshinyouhagaki= 0x8fd4 0x4fe1 0x7528 0x8449 0x66f8", "hentou= 0x8fd4 0x7b54", "henreki= 0x904d 0x6b74", "henro= 0x904d 0x8def", "bin2= 0x4fbf", "ben1= 0x4fbf", "tayori= 0x4fbf 0x308a", "bengi= 0x4fbf 0x5b9c", "bengijou= 0x4fbf 0x5b9c 0x4e0a", "benjo= 0x4fbf 0x6240", "binjou= 0x4fbf 0x4e57", "benpi= 0x4fbf 0x79d8", "benri= 0x4fbf 0x5229", "binsen= 0x4fbf 0x7b8b", "bengaku= 0x52c9 0x5b66", "benkyou= 0x52c9 0x5f37", "benkyouka= 0x52c9 0x5f37 0x5bb6", "ben2= 0x5f01", "wakimaeru= 0x5f01 0x3048 0x308b", "benkai= 0x5f01 0x89e3", "bengo= 0x5f01 0x8b77", "bengoshi= 0x5f01 0x8b77 0x58eb", "bensai= 0x5f01 0x6e08", "benshou= 0x5f01 0x511f", "benzetsu= 0x5f01 0x820c", "bentou= 0x5f01 0x5f53", "benmei= 0x5f01 0x660e", "benron= 0x5f01 0x8ad6", "tamotsu= 0x4fdd 0x3064", "hoan= 0x4fdd 0x5b89", "hoikuen= 0x4fdd 0x80b2 0x5712", "hoikusho= 0x4fdd 0x80b2 0x6240", "hoikujo= 0x4fdd 0x80b2 0x6240", "hoon= 0x4fdd 0x6e29", "hokan= 0x4fdd 0x7ba1", "hokinsha= 0x4fdd 0x83cc 0x8005", "hoken1= 0x4fdd 0x5065", "hoken2= 0x4fdd 0x967a", "hogo= 0x4fdd 0x8b77", "hogosha= 0x4fdd 0x8b77 0x8005", "hoshaku= 0x4fdd 0x91c8", "hoshu= 0x4fdd 0x5b88", "hoshuteki= 0x4fdd 0x5b88 0x7684", "hoshou1= 0x4fdd 0x8a3c", "hoshounin= 0x4fdd 0x8a3c 0x4eba", "hoshou2= 0x4fdd 0x969c", "hozon= 0x4fdd 0x5b58", "hoyousho= 0x4fdd 0x990a 0x6240", "hoyoujo= 0x4fdd 0x990a 0x6240", "horyuu= 0x4fdd 0x7559", "ho2= 0x8217", "hosou= 0x8217 0x88c5", "hosoudouro= 0x8217 0x88c5 0x9053 0x8def", "hodou1= 0x8217 0x9053", "toraeru1= 0x6355 0x3048 0x308b", "tsukamaeru= 0x6355 0x307e 0x3048 0x308b", "tsukamaru2= 0x6355 0x307e 0x308b", "toraeru2= 0x6355 0x3089 0x3048 0x308b", "torawareru1= 0x6355 0x3089 0x308f 0x308c 0x308b", "toru5= 0x6355 0x308b", "torawareru2= 0x6355 0x308f 0x308c 0x308b", "hokaku= 0x6355 0x7372", "hogei= 0x6355 0x9be8", "hogeisen= 0x6355 0x9be8 0x8239", "hobaku= 0x6355 0x7e1b", "horyo= 0x6355 0x865c", "horyoshuuyoujo= 0x6355 0x865c 0x53ce 0x5bb9 0x6240", "ho3= 0x6b69", "aruku= 0x6b69 0x304f", "ayumiyoru= 0x6b69 0x307f 0x5bc4 0x308b", "ayumu= 0x6b69 0x3080", "hokousha= 0x6b69 0x884c 0x8005", "hokoushatengoku= 0x6b69 0x884c 0x8005 0x5929 0x56fd", "buai= 0x6b69 0x5408", "hochou= 0x6b69 0x8abf", "hodou2= 0x6b69 0x9053", "hodoukyou= 0x6b69 0x9053 0x6a4b", "hohei= 0x6b69 0x5175", "oginau= 0x88dc 0x3046", "hokyuu= 0x88dc 0x7d66", "hokyou= 0x88dc 0x5f37", "hoketsu= 0x88dc 0x6b20", "hosa= 0x88dc 0x4f50", "hoshuukyouiku= 0x88dc 0x7fd2 0x6559 0x80b2", "hojuu= 0x88dc 0x5145", "hojo= 0x88dc 0x52a9", "hoshou3= 0x88dc 0x511f", "hosei= 0x88dc 0x6b63", "hosoku= 0x88dc 0x8db3", "ho4= 0x7a42", "hosaki= 0x7a42 0x5148", "tsunoru= 0x52df 0x308b", "bokin= 0x52df 0x91d1", "boshuu= 0x52df 0x96c6", "haka= 0x5893", "boketsu= 0x5893 0x7a74", "hakamairi= 0x5893 0x53c2 0x308a", "boseki= 0x5893 0x77f3", "bochi= 0x5893 0x5730", "bohi= 0x5893 0x7891", "bohyou= 0x5893 0x6a19", "shitau= 0x6155 0x3046", "bojou= 0x6155 0x60c5", "kurashi= 0x66ae 0x3089 0x3057", "kurasu= 0x66ae 0x3089 0x3059", "kure= 0x66ae 0x308c", "kureru2= 0x66ae 0x308c 0x308b", "haha= 0x6bcd", "kaasan= 0x6bcd 0x3055 0x3093", "boin= 0x6bcd 0x97f3", "bokou= 0x6bcd 0x6821", "bokokugo= 0x6bcd 0x56fd 0x8a9e", "boshi= 0x6bcd 0x5b50", "hahaoya= 0x6bcd 0x89aa", "botai= 0x6bcd 0x80ce", "bonyuu= 0x6bcd 0x4e73", "hahakata= 0x6bcd 0x65b9", "boki= 0x7c3f 0x8a18", "narau2= 0x5023 0x3046", "hou1= 0x4ff8", "houkyuu= 0x4ff8 0x7d66", "tsutsumi2= 0x5305 0x307f", "tsutsumigami= 0x5305 0x307f 0x7d19", "kurumu= 0x5305 0x3080", "tsutsumu= 0x5305 0x3080", "houi1= 0x5305 0x56f2", "houkatsuteki= 0x5305 0x62ec 0x7684", "hougan= 0x5305 0x542b", "housou1= 0x5305 0x88c5", "houtai= 0x5305 0x5e2f", "houchou= 0x5305 0x4e01", "houyouryoku= 0x5305 0x5bb9 0x529b", "boke2= 0x5446 0x3051", "bokeru2= 0x5446 0x3051 0x308b", "akireru= 0x5446 0x308c 0x308b", "akke= 0x5446 0x6c17", "hou2= 0x5831", "mukuiru= 0x5831 0x3044 0x308b", "houjiru= 0x5831 0x3058 0x308b", "houzuru= 0x5831 0x305a 0x308b", "houkoku= 0x5831 0x544a", "houshuu= 0x5831 0x916c", "houshou1= 0x5831 0x511f", "houchi1= 0x5831 0x77e5", "houdou= 0x5831 0x9053", "houdoukikan= 0x5831 0x9053 0x6a5f 0x95a2", "houfukusochi= 0x5831 0x5fa9 0x63aa 0x7f6e", "tatematsuru= 0x5949 0x308b", "houken= 0x5949 0x732e", "houkou1= 0x5949 0x516c", "houshi1= 0x5949 0x4ed5", "houshi2= 0x5949 0x4f3a", "hounou= 0x5949 0x7d0d", "takara= 0x5b9d", "takarakuji= 0x5b9d 0x304f 0x3058", "hougyoku= 0x5b9d 0x7389", "houseki= 0x5b9d 0x77f3", "takaramono= 0x5b9d 0x7269", "houmotsu= 0x5b9d 0x7269", "mine= 0x5cf0", "kuzusu= 0x5d29 0x3059", "kuzureru= 0x5d29 0x308c 0x308b", "houkai= 0x5d29 0x58ca", "hougyo= 0x5d29 0x5fa1", "kakaeru= 0x62b1 0x3048 0x308b", "dakiau= 0x62b1 0x304d 0x5408 0x3046", "idaku= 0x62b1 0x304f", "daku= 0x62b1 0x304f", "dakko= 0x62b1 0x3063 0x3053", "houfu1= 0x62b1 0x8ca0", "houyou= 0x62b1 0x64c1", "sasageru= 0x6367 0x3052 0x308b", "hanasu1= 0x653e 0x3059", "hanatsu= 0x653e 0x3064", "houru= 0x653e 0x308b", "hanareru1= 0x653e 0x308c 0x308b", "houka1= 0x653e 0x706b", "houki1= 0x653e 0x68c4", "houshasei= 0x653e 0x5c04 0x6027", "houshanou= 0x653e 0x5c04 0x80fd", "houjuu= 0x653e 0x7e26", "housou2= 0x653e 0x9001", "houdai= 0x653e 0x984c", "houchi2= 0x653e 0x7f6e", "houchiku= 0x653e 0x9010", "hounin= 0x653e 0x4efb", "houboku= 0x653e 0x7267", "kata4= 0x65b9", "hou3= 0x65b9", "katagata= 0x65b9 0x3005", "houbou= 0x65b9 0x3005", "houi2= 0x65b9 0x4f4d", "hougaku1= 0x65b9 0x89d2", "hougen= 0x65b9 0x8a00", "houkou2= 0x65b9 0x5411", "houshiki= 0x65b9 0x5f0f", "houshin= 0x65b9 0x91dd", "houteishiki= 0x65b9 0x7a0b 0x5f0f", "houhou= 0x65b9 0x6cd5", "houmen= 0x65b9 0x9762", "hou4= 0x6cd5", "houan= 0x6cd5 0x6848", "houi3= 0x6cd5 0x8863", "houetsu= 0x6cd5 0x60a6", "houou= 0x6cd5 0x738b", "hougai= 0x6cd5 0x5916", "hougaku2= 0x6cd5 0x5b66", "hougakubu= 0x6cd5 0x5b66 0x90e8", "houki2= 0x6cd5 0x898f", "houshi3= 0x6cd5 0x5e2b", "houjin1= 0x6cd5 0x4eba", "housou3= 0x6cd5 0x66f9", "housoukai= 0x6cd5 0x66f9 0x754c", "housoku= 0x6cd5 0x5247", "houtei= 0x6cd5 0x5ef7", "houteki= 0x6cd5 0x7684", "houten= 0x6cd5 0x5178", "houmu= 0x6cd5 0x52d9", "houmushou= 0x6cd5 0x52d9 0x7701", "houritsu= 0x6cd5 0x5f8b", "hourei= 0x6cd5 0x4ee4", "awa= 0x6ce1", "awawokuu= 0x6ce1 0x3092 0x98df 0x3046", "awadatsu= 0x6ce1 0x7acb 0x3064", "hou5= 0x7832", "houka2= 0x7832 0x706b", "hougeki= 0x7832 0x6483", "houhei= 0x7832 0x5175", "nuime1= 0x7e2b 0x3044 0x76ee", "nuu= 0x7e2b 0x3046", "hougou= 0x7e2b 0x5408", "nuime2= 0x7e2b 0x76ee", "houshi4= 0x80de 0x5b50", "kanbashii= 0x82b3 0x3057 0x3044", "houki3= 0x82b3 0x7d00", "houkou3= 0x82b3 0x9999", "houmei= 0x82b3 0x540d", "houmeiroku= 0x82b3 0x540d 0x9332", "hachi3= 0x8702", "hachimitsu= 0x8702 0x871c", "homeru= 0x8912 0x3081 0x308b", "homeageru= 0x8912 0x3081 0x4e0a 0x3052 0x308b", "hometateru= 0x8912 0x3081 0x7acb 0x3066 0x308b", "houshou2= 0x8912 0x8cde", "houbi= 0x8912 0x7f8e", "tazuneru2= 0x8a2a 0x306d 0x308b", "otozureru= 0x8a2a 0x308c 0x308b", "houkyaku= 0x8a2a 0x5ba2", "hounichi= 0x8a2a 0x65e5", "houmon= 0x8a2a 0x554f", "yutaka= 0x8c4a 0x304b", "houryou= 0x8c4a 0x6f01", "housaku= 0x8c4a 0x4f5c", "hounen= 0x8c4a 0x5e74", "houfu2= 0x8c4a 0x5bcc", "houman= 0x8c4a 0x6e80", "houjishinbun= 0x90a6 0x5b57 0x65b0 0x805e", "houjin2= 0x90a6 0x4eba", "akasu1= 0x98fd 0x304b 0x3059", "aki3= 0x98fd 0x304d", "akiru= 0x98fd 0x304d 0x308b", "akumade= 0x98fd 0x304f 0x8fc4", "houshoku= 0x98fd 0x98df", "houwa= 0x98fd 0x548c", "toboshii= 0x4e4f 0x3057 0x3044", "nai1= 0x4ea1 0x3044", "nakusu1= 0x4ea1 0x304f 0x3059", "nakunaru1= 0x4ea1 0x304f 0x306a 0x308b", "nakigara= 0x4ea1 0x9ab8", "boufu1= 0x4ea1 0x592b", "boufu2= 0x4ea1 0x7236", "boumei= 0x4ea1 0x547d", "bourei= 0x4ea1 0x970a", "katawara= 0x508d 0x3089", "boukan= 0x508d 0x89b3", "boukei= 0x508d 0x7cfb", "bouju= 0x508d 0x53d7", "boushou1= 0x508d 0x8a3c", "bouchou1= 0x508d 0x8074", "bou1= 0x5256", "bousan= 0x574a 0x3055 0x3093", "bocchan1= 0x574a 0x3061 0x3083 0x3093", "bocchan2= 0x574a 0x3063 0x3061 0x3083 0x3093", "bouzu= 0x574a 0x4e3b", "samatageru= 0x59a8 0x3052 0x308b", "bougai= 0x59a8 0x5bb3", "boushi1= 0x5e3d 0x5b50", "boushou2= 0x5e3d 0x7ae0", "wasureru= 0x5fd8 0x308c 0x308b", "wasuremono= 0x5fd8 0x308c 0x7269", "bouon1= 0x5fd8 0x6069", "boukyaku= 0x5fd8 0x5374", "bounenkai= 0x5fd8 0x5e74 0x4f1a", "isogashii= 0x5fd9 0x3057 0x3044", "fusa= 0x623f", "abaku= 0x66b4 0x304f", "abareru= 0x66b4 0x308c 0x308b", "bougyaku= 0x66b4 0x8650", "boutou1= 0x66b4 0x9a30", "boudou= 0x66b4 0x52d5", "boufuu= 0x66b4 0x98a8", "boufuuu= 0x66b4 0x98a8 0x96e8", "bouraku= 0x66b4 0x843d", "bouryoku= 0x66b4 0x529b", "bouryokudan= 0x66b4 0x529b 0x56e3", "bakuro= 0x66b4 0x9732", "nozomashii= 0x671b 0x307e 0x3057 0x3044", "nozomi= 0x671b 0x307f", "nozomu1= 0x671b 0x3080", "bouenkyou= 0x671b 0x9060 0x93e1", "boukyounonen= 0x671b 0x90f7 0x306e 0x5ff5", "bou2= 0x67d0", "boukoku= 0x67d0 0x56fd", "boushi2= 0x67d0 0x6c0f", "bousho= 0x67d0 0x6240", "boujitsu= 0x67d0 0x65e5", "bou3= 0x68d2", "bouanki= 0x68d2 0x6697 0x8a18", "boudachi= 0x68d2 0x7acb 0x3061", "okasu3= 0x5192 0x3059", "boutoku= 0x5192 0x3068 0x304f", "bouken= 0x5192 0x967a", "boukenshousetsu= 0x5192 0x967a 0x5c0f 0x8aac", "boutou2= 0x5192 0x982d", "tsumugu= 0x7d21 0x3050", "boushoku= 0x7d21 0x7e54", "bousui1= 0x7d21 0x9318", "bouseki= 0x7d21 0x7e3e", "bousekikoujou= 0x7d21 0x7e3e 0x5de5 0x5834", "fukuramu= 0x81a8 0x3089 0x3080", "fukurettsura= 0x81a8 0x308c 0x3063 0x9762", "fukureru= 0x81a8 0x308c 0x308b", "boudai= 0x81a8 0x5927", "bouchou2= 0x81a8 0x5f35", "bouchou3= 0x81a8 0x8139", "hakaru5= 0x8b00 0x308b", "bouryaku= 0x8b00 0x7565", "boueki1= 0x8cbf 0x6613", "bouekigaisha= 0x8cbf 0x6613 0x4f1a 0x793e", "bouekishuushi= 0x8cbf 0x6613 0x53ce 0x652f", "fusegu= 0x9632 0x3050", "bouei= 0x9632 0x885b", "boueki2= 0x9632 0x75ab", "bouon2= 0x9632 0x97f3", "bouka= 0x9632 0x706b", "bougyo= 0x9632 0x5fa1", "bousai= 0x9632 0x707d", "boushi3= 0x9632 0x6b62", "bousui2= 0x9632 0x6c34", "bousen= 0x9632 0x6226", "bouhatei= 0x9632 0x6ce2 0x5824", "bouhan= 0x9632 0x72af", "bouheki= 0x9632 0x58c1", "hoeru= 0x5420 0x3048 0x308b", "hoo= 0x982c", "hoho= 0x982c", "hoppeta= 0x982c 0x3063 0x307a 0x305f", "kita= 0x5317", "hokui= 0x5317 0x7def", "hokuoushokoku= 0x5317 0x6b27 0x8af8 0x56fd", "hokkaidou= 0x5317 0x6d77 0x9053", "pekin= 0x5317 0x4eac", "hokkyoku= 0x5317 0x6975", "hokkyokuken= 0x5317 0x6975 0x570f", "hokusei= 0x5317 0x897f", "hokutoshichisei= 0x5317 0x6597 0x4e03 0x661f", "hokutosei= 0x5317 0x6597 0x661f", "hokutou= 0x5317 0x6771", "hokubu= 0x5317 0x90e8", "kitakaze= 0x5317 0x98a8", "hoppou= 0x5317 0x65b9", "hokuhokutou= 0x5317 0x5317 0x6771", "boku= 0x50d5", "bokura= 0x50d5 0x3089", "sumi3= 0x58a8", "sumie= 0x58a8 0x7d75", "bokushu= 0x58a8 0x5b88", "bokujuu= 0x58a8 0x6c41", "bokumetsu= 0x64b2 0x6ec5", "bokuchoku= 0x6734 0x76f4", "bokushi= 0x7267 0x5e2b", "bokujou= 0x7267 0x5834", "makiba= 0x7267 0x5834", "bokusouchi= 0x7267 0x8349 0x5730", "bokuchiku= 0x7267 0x755c", "bokuchikugyou= 0x7267 0x755c 0x696d", "bokuyousha= 0x7267 0x7f8a 0x8005", "botsu= 0x6ca1", "bokkoushou= 0x6ca1 0x4ea4 0x6e09", "bosshuu= 0x6ca1 0x53ce", "bottou= 0x6ca1 0x982d", "botsunyuu= 0x6ca1 0x5165", "botsuraku= 0x6ca1 0x843d", "hotondo= 0x6b86 0x3069", "hori= 0x5800", "horidashimono= 0x5800 0x308a 0x51fa 0x3057 0x7269", "horiwari= 0x5800 0x5272", "horikawa= 0x5800 0x5ddd", "honsou= 0x5954 0x8d70", "honba1= 0x5954 0x99ac", "honpou= 0x5954 0x653e", "hon= 0x672c", "moto2= 0x672c", "motomoto2= 0x672c 0x3005", "honno= 0x672c 0x306e", "honi1= 0x672c 0x4f4d", "honya= 0x672c 0x5c4b", "honne= 0x672c 0x97f3", "honkakuteki= 0x672c 0x683c 0x7684", "honkan= 0x672c 0x9928", "honki= 0x672c 0x6c17", "hongoku= 0x672c 0x56fd", "hongoshi= 0x672c 0x8170", "honshi= 0x672c 0x65e8", "honshitsu= 0x672c 0x8cea", "honsha= 0x672c 0x793e", "honshuu= 0x672c 0x5dde", "honba2= 0x672c 0x5834", "honshin= 0x672c 0x5fc3", "honnin= 0x672c 0x4eba", "honshou= 0x672c 0x6027", "honseki= 0x672c 0x7c4d", "honsen= 0x672c 0x7dda", "honzon= 0x672c 0x5c0a", "hontai= 0x672c 0x4f53", "hondana= 0x672c 0x68da", "honten= 0x672c 0x5e97", "hontou= 0x672c 0x5f53", "hontouni= 0x672c 0x5f53 0x306b", "hondou= 0x672c 0x5802", "honjitsu= 0x672c 0x65e5", "honnen= 0x672c 0x5e74", "honnou= 0x672c 0x80fd", "honbako= 0x672c 0x7bb1", "honban= 0x672c 0x756a", "honbu= 0x672c 0x90e8", "honmono= 0x672c 0x7269", "honbun= 0x672c 0x6587", "honmon= 0x672c 0x6587", "honmyou= 0x672c 0x540d", "honrai= 0x672c 0x6765", "honruida= 0x672c 0x5841 0x6253", "hirugaesu= 0x7ffb 0x3059", "hirugaeru= 0x7ffb 0x308b", "honan= 0x7ffb 0x6848", "honi2= 0x7ffb 0x610f", "honyaku= 0x7ffb 0x8a33", "honrou= 0x7ffb 0x5f04", "bon1= 0x51e1", "oyoso= 0x51e1 0x305d", "bonsai1= 0x51e1 0x624d", "bonjin= 0x51e1 0x4eba", "bonyou= 0x51e1 0x5eb8", "hanrei3= 0x51e1 0x4f8b", "bon2= 0x76c6", "bonkei= 0x76c6 0x666f", "bonsai2= 0x76c6 0x683d", "bonchi= 0x76c6 0x5730", "bonodori= 0x76c6 0x8e0a 0x308a", "sasuru= 0x6469 0x308b", "masatsu= 0x6469 0x64e6", "matenrou= 0x6469 0x5929 0x697c", "mametsu= 0x6469 0x6ec5", "migakiageru= 0x78e8 0x304d 0x4e0a 0x3052 0x308b", "migaku= 0x78e8 0x304f", "majutsu= 0x9b54 0x8853", "mahou= 0x9b54 0x6cd5", "mahoubin= 0x9b54 0x6cd5 0x74f6", "asa2= 0x9ebb", "asaito= 0x9ebb 0x7cf8", "masui= 0x9ebb 0x9154", "maajan= 0x9ebb 0x96c0", "mayaku= 0x9ebb 0x85ac", "mahi= 0x9ebb 0x75fa", "uzumaru= 0x57cb 0x307e 0x308b", "umaru= 0x57cb 0x307e 0x308b", "uzumeru= 0x57cb 0x3081 0x308b", "umeru= 0x57cb 0x3081 0x308b", "umetate= 0x57cb 0x3081 0x7acb 0x3066", "umoreru= 0x57cb 0x3082 0x308c 0x308b", "maisou= 0x57cb 0x846c", "maizou= 0x57cb 0x8535", "maibotsu= 0x57cb 0x6ca1", "imouto= 0x59b9", "mai1= 0x679a", "maikyo= 0x679a 0x6319", "maisuu= 0x679a 0x6570", "goto= 0x6bce", "mai2= 0x6bce", "gotoni= 0x6bce 0x306b", "maigetsu= 0x6bce 0x6708", "maitsuki= 0x6bce 0x6708", "maiji= 0x6bce 0x6642", "maishuu= 0x6bce 0x9031", "maiasa= 0x6bce 0x671d", "maido= 0x6bce 0x5ea6", "mainichi= 0x6bce 0x65e5", "maitoshi= 0x6bce 0x5e74", "mainen= 0x6bce 0x5e74", "maiban= 0x6bce 0x6669", "bakufu= 0x5e55 0x5e9c", "maku4= 0x819c", "makura= 0x6795", "maguro= 0x9baa", "mata2= 0x53c8", "matamata= 0x53c8 0x3005", "mataha= 0x53c8 0x306f", "matagashi= 0x53c8 0x8cb8 0x3057", "matagiki= 0x53c8 0x805e 0x304d", "makkou= 0x62b9 0x9999", "massatsu= 0x62b9 0x6bba", "masshou= 0x62b9 0x6d88", "maccha= 0x62b9 0x8336", "ura2= 0x672b", "sue= 0x672b", "matsu3= 0x672b", "suekko= 0x672b 0x3063 0x5b50", "makki= 0x672b 0x671f", "makkiteki= 0x672b 0x671f 0x7684", "matsudai= 0x672b 0x4ee3", "mattan= 0x672b 0x7aef", "matsujitsu= 0x672b 0x65e5", "matsubi= 0x672b 0x5c3e", "mayu2= 0x7e6d", "mayudama= 0x7e6d 0x7389", "kenshi4= 0x7e6d 0x7cf8", "ban5= 0x4e07", "man= 0x4e07", "manichi= 0x4e07 0x4e00", "manbiki1= 0x4e07 0x5f15", "manbiki2= 0x4e07 0x5f15 0x304d", "bankoku= 0x4e07 0x56fd", "banzai= 0x4e07 0x6b73", "manzai= 0x4e07 0x6b73", "banji= 0x4e07 0x4e8b", "banjin2= 0x4e07 0x4eba", "bannin= 0x4e07 0x4eba", "banzen= 0x4e07 0x5168", "mannenhitsu= 0x4e07 0x5e74 0x7b46", "bannou= 0x4e07 0x80fd", "banpaku= 0x4e07 0x535a", "banbutsunoreichou= 0x4e07 0x7269 0x306e 0x970a 0x9577", "manyoushuu= 0x4e07 0x8449 0x96c6", "mansei= 0x6162 0x6027", "mitasu= 0x6e80 0x305f 0x3059", "michiru= 0x6e80 0x3061 0x308b", "manin= 0x6e80 0x54e1", "manetsu= 0x6e80 0x60a6", "mankitsu= 0x6e80 0x55ab", "mangetsu= 0x6e80 0x6708", "manzara= 0x6e80 0x66f4", "mansai= 0x6e80 0x8f09", "manjou= 0x6e80 0x5834", "manseki= 0x6e80 0x5e2d", "manzoku= 0x6e80 0x8db3", "manchou= 0x6e80 0x6f6e", "manten= 0x6e80 0x70b9", "manmen= 0x6e80 0x9762", "manryou= 0x6e80 0x4e86", "manrui= 0x6e80 0x5841", "manga= 0x6f2b 0x753b", "manzen= 0x6f2b 0x7136", "mandan= 0x6f2b 0x8ac7", "habikoru= 0x8513 0x5ef6 0x308b", "aji2= 0x5473", "ajiwau= 0x5473 0x308f 0x3046", "mikaku= 0x5473 0x899a", "miso= 0x5473 0x564c", "misoshiru= 0x5473 0x564c 0x6c41", "mikata2= 0x5473 0x65b9", "hitsuji= 0x672a", "mi4= 0x672a", "mada= 0x672a 0x3060", "mikai= 0x672a 0x958b", "mikankou= 0x672a 0x520a 0x884c", "mikansei= 0x672a 0x5b8c 0x6210", "miketsu= 0x672a 0x6c7a", "miketsushuu= 0x672a 0x6c7a 0x56da", "mikon= 0x672a 0x5a5a", "mijuku= 0x672a 0x719f", "mishou= 0x672a 0x8a73", "misui= 0x672a 0x9042", "miseinen= 0x672a 0x6210 0x5e74", "mizen= 0x672a 0x7136", "michi2= 0x672a 0x77e5", "mitei= 0x672a 0x5b9a", "minou= 0x672a 0x7d0d", "miboujin= 0x672a 0x4ea1 0x4eba", "miman= 0x672a 0x6e80", "mimei= 0x672a 0x660e", "mirai= 0x672a 0x6765", "miren= 0x672a 0x7df4", "miryou= 0x9b45 0x4e86", "miryoku= 0x9b45 0x529b", "miryokuteki= 0x9b45 0x529b 0x7684", "miwaku= 0x9b45 0x60d1", "mi5= 0x5df3", "misaki= 0x5cac", "hisoka= 0x5bc6 0x304b", "misshuu= 0x5bc6 0x96c6", "missetsu= 0x5bc6 0x63a5", "mitsudo= 0x5bc6 0x5ea6", "mitsunyuukoku= 0x5bc6 0x5165 0x56fd", "mitsubai= 0x5bc6 0x58f2", "mitsuyu= 0x5bc6 0x8f38", "mitsuryousha= 0x5bc6 0x731f 0x8005", "mikan= 0x871c 0x67d1", "myaku= 0x8108", "myakuhaku= 0x8108 0x62cd", "myakuraku= 0x8108 0x7d61", "myou= 0x5999", "myouan= 0x5999 0x6848", "myougi= 0x5999 0x6280", "myoushu= 0x5999 0x624b", "tami= 0x6c11", "minkan= 0x6c11 0x9593", "mingei= 0x6c11 0x82b8", "minjisoshou= 0x6c11 0x4e8b 0x8a34 0x8a1f", "minshu= 0x6c11 0x4e3b", "minshushugi= 0x6c11 0x4e3b 0x4e3b 0x7fa9", "minshuteki= 0x6c11 0x4e3b 0x7684", "minshuu= 0x6c11 0x8846", "minshuku= 0x6c11 0x5bbf", "minzoku1= 0x6c11 0x4fd7", "minzoku2= 0x6c11 0x65cf", "minpou= 0x6c11 0x6cd5", "minyou= 0x6c11 0x8b21", "minwa= 0x6c11 0x8a71", "nemui= 0x7720 0x3044", "nemutai= 0x7720 0x305f 0x3044", "nemuri= 0x7720 0x308a", "nemurigusuri= 0x7720 0x308a 0x85ac", "nemuru= 0x7720 0x308b", "nemuke= 0x7720 0x6c17", "tsutome2= 0x52d9 0x3081", "tsutomeru3= 0x52d9 0x3081 0x308b", "yume= 0x5922", "yumenimo= 0x5922 0x306b 0x3082", "mugen1= 0x5922 0x5e7b", "musou= 0x5922 0x60f3", "muchuu= 0x5922 0x4e2d", "nai2= 0x7121 0x3044", "nakusu2= 0x7121 0x304f 0x3059", "nakunaru2= 0x7121 0x304f 0x306a 0x308b", "nashi= 0x7121 0x3057", "muyamini= 0x7121 0x95c7 0x306b", "muishiki= 0x7121 0x610f 0x8b58", "muimi= 0x7121 0x610f 0x5473", "mui= 0x7121 0x70ba", "mueki= 0x7121 0x76ca", "muen= 0x7121 0x7e01", "muga= 0x7121 0x6211", "mugai= 0x7121 0x5bb3", "mukankei= 0x7121 0x95a2 0x4fc2", "mukanshin= 0x7121 0x95a2 0x5fc3", "bukiyou2= 0x7121 0x5668 0x7528", "mukigen= 0x7121 0x671f 0x9650", "mukibutsu= 0x7121 0x6a5f 0x7269", "mukyuu= 0x7121 0x4f11", "mukin= 0x7121 0x83cc", "mukei= 0x7121 0x5f62", "mugon= 0x7121 0x8a00", "mugen2= 0x7121 0x9650", "mukou2= 0x7121 0x52b9", "mukuchi= 0x7121 0x53e3", "muzai= 0x7121 0x7f6a", "muzan= 0x7121 0x6b8b", "mushi2= 0x7121 0x8996", "buji= 0x7121 0x4e8b", "mujitsu= 0x7121 0x5b9f", "mujaki= 0x7121 0x90aa 0x6c17", "mushou= 0x7121 0x511f", "mujou= 0x7121 0x60c5", "mujouken= 0x7121 0x6761 0x4ef6", "mushoku1= 0x7121 0x8077", "mushoku2= 0x7121 0x8272", "mushin= 0x7121 0x5fc3", "mushinkei= 0x7121 0x795e 0x7d4c", "mujin= 0x7121 0x4eba", "mujintou= 0x7121 0x4eba 0x5cf6", "mujinzou= 0x7121 0x5c3d 0x8535", "musuu= 0x7121 0x6570", "museigen= 0x7121 0x5236 0x9650", "mushouni= 0x7121 0x6027 0x306b", "museifu= 0x7121 0x653f 0x5e9c", "museibutsu= 0x7121 0x751f 0x7269", "bushou2= 0x7121 0x7cbe", "muzei= 0x7121 0x7a0e", "musekinin= 0x7121 0x8cac 0x4efb", "musen= 0x7121 0x7dda", "muzousa= 0x7121 0x9020 0x4f5c", "muda= 0x7121 0x99c4", "mudadukai= 0x7121 0x99c4 0x9063 0x3044", "mudan= 0x7121 0x65ad", "muchi1= 0x7121 0x77e5", "muji= 0x7121 0x5730", "muchi2= 0x7121 0x6065", "muchitsujo= 0x7121 0x79e9 0x5e8f", "mucha= 0x7121 0x8336", "muchakucha= 0x7121 0x8336 0x82e6 0x8336", "mutodoke= 0x7121 0x5c4a 0x3051", "bunan= 0x7121 0x96e3", "munou= 0x7121 0x80fd", "mufuu= 0x7121 0x98a8", "muhoushuu= 0x7121 0x5831 0x916c", "muhou= 0x7121 0x6cd5", "mubou1= 0x7121 0x5e3d", "mubou2= 0x7121 0x8b00", "mumikansou= 0x7121 0x5473 0x4e7e 0x71e5", "mumei= 0x7121 0x540d", "muyou= 0x7121 0x7528", "muyoku= 0x7121 0x6b32", "muri= 0x7121 0x7406", "muriyari= 0x7121 0x7406 0x3084 0x308a", "muryou= 0x7121 0x6599", "muryoku= 0x7121 0x529b", "burei= 0x7121 0x793c", "muron= 0x7121 0x8ad6", "hoko= 0x77db", "mujun= 0x77db 0x76fe", "hokosaki= 0x77db 0x5148", "kiri2= 0x9727", "kirisame= 0x9727 0x96e8", "muteki= 0x9727 0x7b1b", "muko= 0x5a7f", "mukoerabi= 0x5a7f 0x9078 0x3073", "mukoyoushi= 0x5a7f 0x990a 0x5b50", "musume= 0x5a18", "musumegokoro= 0x5a18 0x5fc3", "musumezakari= 0x5a18 0x76db 0x308a", "musumemuko= 0x5a18 0x5a7f", "na2= 0x540d", "meian1= 0x540d 0x6848", "meigi= 0x540d 0x7fa9", "meikyoku= 0x540d 0x66f2", "meigetsu= 0x540d 0x6708", "nadakai= 0x540d 0x9ad8 0x3044", "meisaku= 0x540d 0x4f5c", "nafuda= 0x540d 0x672d", "nagori= 0x540d 0x6b8b", "nagorioshii= 0x540d 0x6b8b 0x60dc 0x3057 0x3044", "meishi1= 0x540d 0x523a", "meishi2= 0x540d 0x8a5e", "myouji2= 0x540d 0x5b57", "meisho= 0x540d 0x6240", "meishou1= 0x540d 0x5320", "meishou2= 0x540d 0x79f0", "meijin= 0x540d 0x4eba", "meisei= 0x540d 0x58f0", "namae= 0x540d 0x524d", "meicho= 0x540d 0x8457", "meitou= 0x540d 0x7b54", "nadukeru= 0x540d 0x4ed8 0x3051 0x308b", "meibutsu= 0x540d 0x7269", "meibo= 0x540d 0x7c3f", "meimoku= 0x540d 0x76ee", "meimon= 0x540d 0x9580", "meiyo= 0x540d 0x8a89", "meiyokyouju= 0x540d 0x8a89 0x6559 0x6388", "meiyoshimin= 0x540d 0x8a89 0x5e02 0x6c11", "meiyoshoku= 0x540d 0x8a89 0x8077", "inochi= 0x547d", "mei1= 0x547d", "meijiru= 0x547d 0x3058 0x308b", "meizuru= 0x547d 0x305a 0x308b", "inochigake= 0x547d 0x61f8 0x3051", "meichuu= 0x547d 0x4e2d", "meinichi= 0x547d 0x65e5", "meirei= 0x547d 0x4ee4", "akasu2= 0x660e 0x304b 0x3059", "akari1= 0x660e 0x304b 0x308a", "aku5= 0x660e 0x304f", "akuru= 0x660e 0x304f 0x308b", "akuruhi= 0x660e 0x304f 0x308b 0x65e5", "akeru3= 0x660e 0x3051 0x308b", "akegata= 0x660e 0x3051 0x65b9", "akiraka= 0x660e 0x3089 0x304b", "akaramu2= 0x660e 0x3089 0x3080", "akari2= 0x660e 0x308a", "akarui= 0x660e 0x308b 0x3044", "meian2= 0x660e 0x6697", "meikaku= 0x660e 0x78ba", "meiki1= 0x660e 0x8a18", "asatte= 0x660e 0x5f8c 0x65e5", "myougonichi= 0x660e 0x5f8c 0x65e5", "meisai1= 0x660e 0x7d30", "meisatsu= 0x660e 0x5bdf", "meiji1= 0x660e 0x6cbb", "meijiishin= 0x660e 0x6cbb 0x7dad 0x65b0", "meijijidai= 0x660e 0x6cbb 0x6642 0x4ee3", "meiji2= 0x660e 0x793a", "myoujou= 0x660e 0x661f", "myouchou= 0x660e 0x671d", "ashita= 0x660e 0x65e5", "asu= 0x660e 0x65e5", "myounichi= 0x660e 0x65e5", "myounen= 0x660e 0x5e74", "meihaku= 0x660e 0x767d", "myouban= 0x660e 0x6669", "shiasatte= 0x660e 0x660e 0x5f8c 0x65e5", "meiryou= 0x660e 0x77ad", "meirou= 0x660e 0x6717", "meishu= 0x76df 0x4e3b", "meiyaku= 0x76df 0x7d04", "mayou= 0x8ff7 0x3046", "meikyuu= 0x8ff7 0x5bae", "meisai2= 0x8ff7 0x5f69", "maigo= 0x8ff7 0x5b50", "meishin= 0x8ff7 0x4fe1", "meimou= 0x8ff7 0x5984", "meiro= 0x8ff7 0x8def", "meiwaku= 0x8ff7 0x60d1", "meimei= 0x9298 0x3005", "meiki2= 0x9298 0x8a18", "meigara= 0x9298 0x67c4", "nakigoe2= 0x9cf4 0x304d 0x58f0", "naku2= 0x9cf4 0x304f", "narasu2= 0x9cf4 0x3089 0x3059", "naru3= 0x9cf4 0x308b", "meidou= 0x9cf4 0x52d5", "mei2= 0x59ea", "horobiru= 0x6ec5 0x3073 0x308b", "horobosu= 0x6ec5 0x307c 0x3059", "metta= 0x6ec5 0x591a", "mettani= 0x6ec5 0x591a 0x306b", "metsubou= 0x6ec5 0x4ea1", "manukareru= 0x514d 0x308c 0x308b", "meneki= 0x514d 0x75ab", "menkyo= 0x514d 0x8a31", "menkyoshou= 0x514d 0x8a31 0x8a3c", "menshuu= 0x514d 0x56da", "menjo= 0x514d 0x9664", "menjou= 0x514d 0x72b6", "menshoku= 0x514d 0x8077", "menzei= 0x514d 0x7a0e", "menseki1= 0x514d 0x8cac", "men1= 0x7dbf", "wata= 0x7dbf", "menorimono= 0x7dbf 0x7e54 0x308a 0x7269", "menpu= 0x7dbf 0x5e03", "menmitsu= 0x7dbf 0x5bc6", "omo2= 0x9762", "omote2= 0x9762", "tsura= 0x9762", "men2= 0x9762", "mensuru= 0x9762 0x3059 0x308b", "omokage= 0x9762 0x5f71", "menkai= 0x9762 0x4f1a", "mentsu= 0x9762 0x5b50", "menseki2= 0x9762 0x7a4d", "mensetsu= 0x9762 0x63a5", "mendan= 0x9762 0x8ac7", "mendou= 0x9762 0x5012", "mendoukusai= 0x9762 0x5012 0x81ed 0x3044", "omoshiroi= 0x9762 0x767d 0x3044", "menboku= 0x9762 0x76ee", "menmoku= 0x9762 0x76ee", "nikibi= 0x9762 0x76b0", "mogi= 0x6a21 0x64ec", "mogishiken= 0x6a21 0x64ec 0x8a66 0x9a13", "mokei= 0x6a21 0x578b", "mozou= 0x6a21 0x9020", "mohan= 0x6a21 0x7bc4", "mohou= 0x6a21 0x5023", "moyou= 0x6a21 0x69d8", "shigeru= 0x8302 0x308b", "boushin= 0x5984 0x4fe1", "mousou= 0x5984 0x60f3", "ke2= 0x6bdb", "kegirai= 0x6bdb 0x5acc 0x3044", "keito= 0x6bdb 0x7cf8", "keorimono= 0x6bdb 0x7e54 0x7269", "kemushi= 0x6bdb 0x866b", "kegawa= 0x6bdb 0x76ae", "mouhitsu= 0x6bdb 0x7b46", "moufu= 0x6bdb 0x5e03", "mouken= 0x731b 0x72ac", "mosa= 0x731b 0x8005", "moujuu1= 0x731b 0x7363", "mousho= 0x731b 0x6691", "mouda= 0x731b 0x6253", "mouretsu= 0x731b 0x70c8", "mekura= 0x76f2", "moujuu2= 0x76f2 0x5f93", "moushin= 0x76f2 0x4fe1", "moujin= 0x76f2 0x4eba", "mouchou= 0x76f2 0x8178", "mouten= 0x76f2 0x70b9", "moumoku= 0x76f2 0x76ee", "ami= 0x7db2", "amibukuro= 0x7db2 0x888b", "moura= 0x7db2 0x7f85", "moukaru= 0x5132 0x304b 0x308b", "mouke= 0x5132 0x3051", "moukeru2= 0x5132 0x3051 0x308b", "ki5= 0x6728", "kigi= 0x6728 0x3005", "kikori= 0x6728 0x3053 0x308a", "kinome= 0x6728 0x306e 0x82bd", "konoha= 0x6728 0x30ce 0x8449", "kokage= 0x6728 0x9670", "mokkin= 0x6728 0x7434", "kogarashi1= 0x6728 0x67af 0x3057", "kogarashi2= 0x6728 0x67af 0x3089 0x3057", "mokuzai= 0x6728 0x6750", "mokusei= 0x6728 0x88fd", "bokuseki= 0x6728 0x77f3", "mokuzou= 0x6728 0x9020", "mokutan= 0x6728 0x70ad", "mokuchou= 0x6728 0x5f6b", "kibori= 0x6728 0x5f6b 0x308a", "mokuhen= 0x6728 0x7247", "momen= 0x6728 0x7dbf", "mokuyou= 0x6728 0x66dc", "mokuyoubi= 0x6728 0x66dc 0x65e5", "damaru= 0x9ed9 0x308b", "mokusatsu= 0x9ed9 0x6bba", "mokunin= 0x9ed9 0x8a8d", "mokuhiken= 0x9ed9 0x79d8 0x6a29", "me3= 0x76ee", "meyasu= 0x76ee 0x5b89", "mejirushi= 0x76ee 0x5370", "meshita= 0x76ee 0x4e0b", "mokka= 0x76ee 0x4e0b", "mezamashi1= 0x76ee 0x899a 0x3057", "mezamashitokei= 0x76ee 0x899a 0x3057 0x6642 0x8a08", "mezamashi2= 0x76ee 0x899a 0x307e 0x3057", "mezamashii= 0x76ee 0x899a 0x307e 0x3057 0x3044", "mezamashidokei= 0x76ee 0x899a 0x307e 0x3057 0x6642 0x8a08", "mezameru= 0x76ee 0x899a 0x3081 0x308b", "medama= 0x76ee 0x7389", "medamashouhin= 0x76ee 0x7389 0x5546 0x54c1", "mokugeki= 0x76ee 0x6483", "mokugekisha= 0x76ee 0x6483 0x8005", "mezasu= 0x76ee 0x6307 0x3059", "mokuji= 0x76ee 0x6b21", "medetai= 0x76ee 0x51fa 0x5ea6 0x3044", "medo= 0x76ee 0x51e6", "meue= 0x76ee 0x4e0a", "memori= 0x76ee 0x76db 0x308a", "mokuzen= 0x76ee 0x524d", "mokusoku= 0x76ee 0x6e2c", "mechakucha= 0x76ee 0x8336 0x82e6 0x8336", "mechamecha= 0x76ee 0x8336 0x76ee 0x8336", "mokuteki= 0x76ee 0x7684", "mokutekichi= 0x76ee 0x7684 0x5730", "meate= 0x76ee 0x5f53 0x3066", "mokuhyou= 0x76ee 0x6a19", "metsuki= 0x76ee 0x4ed8 0x304d", "mekata= 0x76ee 0x65b9", "megusuri= 0x76ee 0x85ac", "medatsu= 0x76ee 0x7acb 0x3064", "mokuroku= 0x76ee 0x9332", "memai= 0x76ee 0x7729", "mottainai= 0x52ff 0x4f53 0x306a 0x3044", "mochiron= 0x52ff 0x8ad6", "mochi2= 0x9905", "mottomo2= 0x5c24 0x3082", "mottomorashii= 0x5c24 0x3082 0x3089 0x3057 0x3044", "modosu= 0x623b 0x3059", "modoru= 0x623b 0x308b", "morau= 0x8cb0 0x3046", "toi= 0x554f 0x3044", "toiawaseru= 0x554f 0x3044 0x5408 0x308f 0x305b 0x308b", "toitadasu= 0x554f 0x3044 0x8cea 0x3059", "tou7= 0x554f 0x3046", "tonya= 0x554f 0x5c4b", "mondai= 0x554f 0x984c", "mondou= 0x554f 0x7b54", "monshou= 0x7d0b 0x7ae0", "monkirigata= 0x7d0b 0x5207 0x308a 0x578b", "kado3= 0x9580", "mon= 0x9580", "monkasei= 0x9580 0x4e0b 0x751f", "mongaikan= 0x9580 0x5916 0x6f22", "kadoguchi= 0x9580 0x53e3", "monshi= 0x9580 0x6b6f", "kadomatsu= 0x9580 0x677e", "montei= 0x9580 0x5f1f", "monbatsu= 0x9580 0x95a5", "monpi= 0x9580 0x6249", "monme= 0x5301", "yoru5= 0x591c", "yagaku= 0x591c 0x5b66", "yakan1= 0x591c 0x9593", "yakansatsuei= 0x591c 0x9593 0x64ae 0x5f71", "yagu= 0x591c 0x5177", "yozora= 0x591c 0x7a7a", "yakei= 0x591c 0x666f", "yofukashi= 0x591c 0x66f4 0x304b 0x3057", "yofuke= 0x591c 0x66f4 0x3051", "yakou= 0x591c 0x884c", "yashuu= 0x591c 0x8972", "yonaka= 0x591c 0x4e2d", "yanyoushou= 0x591c 0x5c3f 0x75c7", "yoake= 0x591c 0x660e 0x3051", "jiisan= 0x723a 0x3055 0x3093", "no= 0x91ce", "yaen= 0x91ce 0x733f", "yagai= 0x91ce 0x5916", "yagaisatsuei= 0x91ce 0x5916 0x64ae 0x5f71", "yakyuu= 0x91ce 0x7403", "yagyuu= 0x91ce 0x725b", "yaken= 0x91ce 0x72ac", "nohara= 0x91ce 0x539f", "yasai= 0x91ce 0x83dc", "yashu= 0x91ce 0x8da3", "yajuu= 0x91ce 0x7363", "yashin= 0x91ce 0x5fc3", "yasei1= 0x91ce 0x6027", "yasei2= 0x91ce 0x751f", "yachou= 0x91ce 0x9ce5", "yatou2= 0x91ce 0x515a", "yaban= 0x91ce 0x86ee", "yabanjin= 0x91ce 0x86ee 0x4eba", "yabo= 0x91ce 0x66ae", "yarou= 0x91ce 0x90ce", "ya= 0x77e2", "yappari= 0x77e2 0x3063 0x5f35 0x308a", "yajirushi= 0x77e2 0x5370", "yatarani= 0x77e2 0x9c48 0x306b", "yahari= 0x77e2 0x5f35 0x308a", "yaku2= 0x5384", "yakkai= 0x5384 0x4ecb", "yakkaimono= 0x5384 0x4ecb 0x8005", "yakubi= 0x5384 0x65e5", "yakudoshi= 0x5384 0x5e74", "yakuharai= 0x5384 0x6255 0x3044", "eki4= 0x5f79", "yaku3= 0x5f79", "yakunitatsu= 0x5f79 0x306b 0x7acb 0x3064", "yakuin= 0x5f79 0x54e1", "yakuwari= 0x5f79 0x5272", "yakusha1= 0x5f79 0x8005", "yakusho= 0x5f79 0x6240", "yakuba= 0x5f79 0x5834", "yakunin= 0x5f79 0x4eba", "yakume= 0x5f79 0x76ee", "yakudatsu= 0x5f79 0x7acb 0x3064", "yaku4= 0x7d04", "yakkan= 0x7d04 0x6b3e", "yakusoku= 0x7d04 0x675f", "yakuhanbun= 0x7d04 0x534a 0x5206", "kusuri= 0x85ac", "kusuriya= 0x85ac 0x5c4b", "yakugaku= 0x85ac 0x5b66", "yakan2= 0x85ac 0x7f36", "yakkyoku= 0x85ac 0x5c40", "yakuzai= 0x85ac 0x5264", "yakuzaishi= 0x85ac 0x5264 0x5e2b", "kusuriyubi= 0x85ac 0x6307", "yakuhin= 0x85ac 0x54c1", "yakumi= 0x85ac 0x5473", "wake= 0x8a33", "yakusu= 0x8a33 0x3059", "yakusha2= 0x8a33 0x8005", "odoru1= 0x8e8d 0x308b", "yakushin= 0x8e8d 0x9032", "yakudou= 0x8e8d 0x52d5", "yakujo= 0x8e8d 0x5982", "yanagi= 0x67f3", "yanagigoshi= 0x67f3 0x8170", "yukai= 0x6109 0x5feb", "yuraku= 0x6109 0x697d", "iyoiyo= 0x6108 0x6108", "abura2= 0x6cb9", "yusei= 0x6cb9 0x4e95", "aburae= 0x6cb9 0x7d75", "yushi1= 0x6cb9 0x8102", "yudan= 0x6cb9 0x65ad", "aburamushi= 0x6cb9 0x866b", "yuden= 0x6cb9 0x7530", "yuchaku= 0x7652 0x7740", "satosu= 0x8aed 0x3059", "yushi2= 0x8aed 0x65e8", "yushutsu= 0x8f38 0x51fa", "yusou= 0x8f38 0x9001", "yunyuu= 0x8f38 0x5165", "tada2= 0x552f", "yuiitsu= 0x552f 0x4e00", "yuitsu= 0x552f 0x4e00", "yuishinron= 0x552f 0x5fc3 0x8ad6", "yuibishugi= 0x552f 0x7f8e 0x4e3b 0x7fa9", "yuibutsuron= 0x552f 0x7269 0x8ad6", "yuiriron= 0x552f 0x7406 0x8ad6", "yasashii2= 0x512a 0x3057 0x3044", "sugureru= 0x512a 0x308c 0x308b", "yuuetsukan= 0x512a 0x8d8a 0x611f", "yuuga= 0x512a 0x96c5", "yuuguu= 0x512a 0x9047", "yuushuu1= 0x512a 0x79c0", "yuujuufudan= 0x512a 0x67d4 0x4e0d 0x65ad", "yuushou= 0x512a 0x52dd", "yuusei= 0x512a 0x52e2", "yuusen= 0x512a 0x5148", "yuutousei= 0x512a 0x7b49 0x751f", "yuuretsu= 0x512a 0x52a3", "isamashii= 0x52c7 0x307e 0x3057 0x3044", "isamiashi= 0x52c7 0x307f 0x8db3", "isamu= 0x52c7 0x3080", "yuukan1= 0x52c7 0x6562", "yuuki= 0x52c7 0x6c17", "yuushi1= 0x52c7 0x58eb", "yuutai= 0x52c7 0x9000", "tomo3= 0x53cb", "yuukou1= 0x53cb 0x597d", "yuujou= 0x53cb 0x60c5", "yuujin= 0x53cb 0x4eba", "tomodachi= 0x53cb 0x9054", "nadameru= 0x5ba5 0x3081 0x308b", "yuugen1= 0x5e7d 0x7384", "yuukoku1= 0x5e7d 0x8c37", "yuuhei= 0x5e7d 0x9589", "yuumon= 0x5e7d 0x9580", "yuurei= 0x5e7d 0x970a", "yuuyuu= 0x60a0 0x3005", "yuukyuu1= 0x60a0 0x4e45", "yuuzen= 0x60a0 0x7136", "yuuchou= 0x60a0 0x9577", "yuuyou= 0x60a0 0x63da", "ui= 0x6182 0x3044", "urei2= 0x6182 0x3044", "ureigao= 0x6182 0x3044 0x9854", "ureeru2= 0x6182 0x3048 0x308b", "ukime= 0x6182 0x304d 0x76ee", "yuukoku2= 0x6182 0x56fd", "yuushuu2= 0x6182 0x6101", "yuuryo= 0x6182 0x616e", "yuuutsu= 0x6182 0x9b31", "yuusuru= 0x6709 0x3059 0x308b", "arayuru= 0x6709 0x3089 0x3086 0x308b", "arinomama= 0x6709 0x308a 0x306e 0x307e 0x307e", "ariawase1= 0x6709 0x308a 0x5408 0x305b", "ariawase2= 0x6709 0x308a 0x5408 0x308f 0x305b", "arifureta= 0x6709 0x308a 0x89e6 0x308c 0x305f", "arigatai1= 0x6709 0x308a 0x96e3 0x3044", "arigatou1= 0x6709 0x308a 0x96e3 0x3046", "arisama1= 0x6709 0x308a 0x69d8", "aru3= 0x6709 0x308b", "yuuigi= 0x6709 0x610f 0x7fa9", "yuueki= 0x6709 0x76ca", "yuukashouken= 0x6709 0x4fa1 0x8a3c 0x5238", "yuugai= 0x6709 0x5bb3", "yuukibutsu= 0x6709 0x6a5f 0x7269", "yuukensha= 0x6709 0x6a29 0x8005", "yuugen2= 0x6709 0x9650", "yuukou2= 0x6709 0x52b9", "yuuzai= 0x6709 0x7f6a", "yuushi2= 0x6709 0x5fd7", "uchouten= 0x6709 0x9802 0x5929", "yuudoku= 0x6709 0x6bd2", "arigatai2= 0x6709 0x96e3 0x3044", "arigatou2= 0x6709 0x96e3 0x3046", "yuunou= 0x6709 0x80fd", "yuubou= 0x6709 0x671b", "umu3= 0x6709 0x7121", "yuumei= 0x6709 0x540d", "uyamuya= 0x6709 0x8036 0x7121 0x8036", "arisama2= 0x6709 0x69d8", "yuuri= 0x6709 0x5229", "yuuryou= 0x6709 0x6599", "yuuryoku= 0x6709 0x529b", "waku2= 0x6e67 0x304f", "yuuyo= 0x7336 0x4e88", "yuuyonaku= 0x7336 0x4e88 0x306a 0x304f", "yoshi2= 0x7531", "yuisho= 0x7531 0x7dd2", "yurai= 0x7531 0x6765", "yuufuku= 0x88d5 0x798f", "sasoimizu= 0x8a98 0x3044 0x6c34", "sasou= 0x8a98 0x3046", "yuuin= 0x8a98 0x56e0", "yuukai= 0x8a98 0x62d0", "yuudou= 0x8a98 0x5c0e", "yuuhatsu= 0x8a98 0x767a", "yuuwaku= 0x8a98 0x60d1", "asobi= 0x904a 0x3073", "asobiaite= 0x904a 0x3073 0x76f8 0x624b", "asobu= 0x904a 0x3076", "yuuenchi= 0x904a 0x5712 0x5730", "yuugi= 0x904a 0x622f", "yuukyuu2= 0x904a 0x4f11", "yuuzei1= 0x904a 0x8aac", "yuuhodou= 0x904a 0x6b69 0x9053", "yuuransen= 0x904a 0x89a7 0x8239", "yuuzei2= 0x90f5 0x7a0e", "yuusou= 0x90f5 0x9001", "yuusouryou= 0x90f5 0x9001 0x6599", "yuubin= 0x90f5 0x4fbf", "yuubinyasan= 0x90f5 0x4fbf 0x5c4b 0x3055 0x3093", "yuubinkyoku= 0x90f5 0x4fbf 0x5c40", "yuubinhaitatsu= 0x90f5 0x4fbf 0x914d 0x9054", "yuubinryoukin= 0x90f5 0x4fbf 0x6599 0x91d1", "osu3= 0x96c4", "yuudai= 0x96c4 0x5927", "ondori= 0x96c4 0x9ce5", "yuuben= 0x96c4 0x5f01", "yuugou= 0x878d 0x5408", "yuushi3= 0x878d 0x8cc7", "yuuzuu= 0x878d 0x901a", "yuuduu= 0x878d 0x901a", "yuu3= 0x5915", "yuubae= 0x5915 0x6620 0x3048", "yuukan2= 0x5915 0x520a", "yuukoku3= 0x5915 0x523b", "yuuyake= 0x5915 0x713c 0x3051", "yuushoku= 0x5915 0x98df", "yuuhi= 0x5915 0x65e5", "yuuhan= 0x5915 0x98ef", "yuumeshi= 0x5915 0x98ef", "yuugure= 0x5915 0x66ae 0x308c", "yuugata= 0x5915 0x65b9", "yuugiri= 0x5915 0x9727", "yuudachi= 0x5915 0x7acb", "yuusuzumi= 0x5915 0x6dbc 0x307f", "kanete= 0x4e88 0x3066", "arakajime= 0x4e88 0x3081", "yokan= 0x4e88 0x611f", "yoki= 0x4e88 0x671f", "yogen= 0x4e88 0x8a00", "yokoku= 0x4e88 0x544a", "yosan= 0x4e88 0x7b97", "yoshuu= 0x4e88 0x7fd2", "yosen= 0x4e88 0x9078", "yosou= 0x4e88 0x60f3", "yosoku= 0x4e88 0x6e2c", "yodan1= 0x4e88 0x65ad", "yochi1= 0x4e88 0x77e5", "yotei= 0x4e88 0x5b9a", "yobi= 0x4e88 0x5099", "yobikou= 0x4e88 0x5099 0x6821", "yobihi= 0x4e88 0x5099 0x8cbb", "yohou= 0x4e88 0x5831", "yobou= 0x4e88 0x9632", "yoyaku= 0x4e88 0x7d04", "amasu= 0x4f59 0x3059", "amari= 0x4f59 0x308a", "anmari= 0x4f59 0x308a", "amaru= 0x4f59 0x308b", "yoka= 0x4f59 0x6687", "yokei= 0x4f59 0x8a08", "yoso= 0x4f59 0x6240", "yojou= 0x4f59 0x5270", "yodan2= 0x4f59 0x8ac7", "yochi2= 0x4f59 0x5730", "yohodo= 0x4f59 0x7a0b", "yoha= 0x4f59 0x6ce2", "yobun= 0x4f59 0x5206", "yomei= 0x4f59 0x547d", "yoyuu= 0x4f59 0x88d5", "ataeru= 0x4e0e 0x3048 0x308b", "yotou= 0x4e0e 0x515a", "homare= 0x8a89 0x308c", "azukarisho= 0x9810 0x304b 0x308a 0x6240", "azukarijo= 0x9810 0x304b 0x308a 0x6240", "azukarimono= 0x9810 0x304b 0x308a 0x7269", "azukaru= 0x9810 0x304b 0x308b", "azukeru= 0x9810 0x3051 0x308b", "yokin= 0x9810 0x91d1", "osanai= 0x5e7c 0x3044", "osananajimi= 0x5e7c 0x306a 0x3058 0x307f", "osanago= 0x5e7c 0x5b50", "youji1= 0x5e7c 0x5150", "youshou= 0x5e7c 0x5c11", "osanagokoro= 0x5e7c 0x5fc3", "youchi= 0x5e7c 0x7a1a", "youchien= 0x5e7c 0x7a1a 0x5712", "youchuu= 0x5e7c 0x866b", "youi1= 0x5bb9 0x6613", "tayasui= 0x5bb9 0x6613 0x3044", "youki1= 0x5bb9 0x5668", "yougisha= 0x5bb9 0x7591 0x8005", "youshi1= 0x5bb9 0x59ff", "yousha= 0x5bb9 0x8d66", "youseki= 0x5bb9 0x7a4d", "youdai1= 0x5bb9 0x4f53", "youdai2= 0x5bb9 0x614b", "youryou1= 0x5bb9 0x91cf", "agaru3= 0x63da 0x304c 0x308b", "ageru3= 0x63da 0x3052 0x308b", "ageku3= 0x63da 0x3052 0x53e5", "ageku4= 0x63da 0x53e5", "yousuisha= 0x63da 0x6c34 0x8eca", "yusaburu= 0x63fa 0x3055 0x3076 0x308b", "yusuburu= 0x63fa 0x3059 0x3076 0x308b", "yusuriokosu= 0x63fa 0x3059 0x308a 0x8d77 0x3053 0x3059", "yusuru= 0x63fa 0x3059 0x308b", "yuragu= 0x63fa 0x3089 0x3050", "yurikago= 0x63fa 0x308a 0x304b 0x3054", "yuriokosu= 0x63fa 0x308a 0x8d77 0x3053 0x3059", "yurikaeshi= 0x63fa 0x308a 0x8fd4 0x3057", "yuru= 0x63fa 0x308b", "yurugasu= 0x63fa 0x308b 0x304c 0x3059", "yurugu= 0x63fa 0x308b 0x3050", "yureru= 0x63fa 0x308c 0x308b", "yougo1= 0x64c1 0x8b77", "youritsu= 0x64c1 0x7acb", "youbi= 0x66dc 0x65e5", "sama= 0x69d8", "you2= 0x69d8", "samazama= 0x69d8 0x3005", "yousu= 0x69d8 0x5b50", "youshiki1= 0x69d8 0x5f0f", "yousou= 0x69d8 0x76f8", "youga= 0x6d0b 0x753b", "youma= 0x6d0b 0x9593", "yousai= 0x6d0b 0x88c1", "youshiki2= 0x6d0b 0x5f0f", "youshitsu= 0x6d0b 0x5ba4", "youshu= 0x6d0b 0x9152", "yousho1= 0x6d0b 0x66f8", "youshoku1= 0x6d0b 0x98df", "youfuu= 0x6d0b 0x98a8", "youfuku= 0x6d0b 0x670d", "tokasu2= 0x6eb6 0x304b 0x3059", "toku4= 0x6eb6 0x304f", "tokeru2= 0x6eb6 0x3051 0x308b", "tokekomu= 0x6eb6 0x3051 0x8fbc 0x3080", "youeki= 0x6eb6 0x6db2", "youkai= 0x6eb6 0x89e3", "yougan= 0x6eb6 0x5ca9", "youkouro= 0x6eb6 0x9271 0x7089", "you3= 0x7528", "mochiiru= 0x7528 0x3044 0x308b", "youi2= 0x7528 0x610f", "yougu= 0x7528 0x5177", "youken1= 0x7528 0x4ef6", "yougo2= 0x7528 0x8a9e", "youshi2= 0x7528 0x7d19", "youji2= 0x7528 0x4e8b", "youjin= 0x7528 0x5fc3", "youjinbukai= 0x7528 0x5fc3 0x6df1 0x3044", "yousui= 0x7528 0x6c34", "yousuichi= 0x7528 0x6c34 0x6c60", "youtashi= 0x7528 0x8db3 0x3057", "youto= 0x7528 0x9014", "yourei= 0x7528 0x4f8b", "kama2= 0x7aaf", "yougyou= 0x7aaf 0x696d", "kamamoto= 0x7aaf 0x5143", "hitsujikai= 0x7f8a 0x98fc 0x3044", "youniku= 0x7f8a 0x8089", "youmou= 0x7f8a 0x6bdb", "ha4= 0x8449", "happa= 0x8449 0x3063 0x3071", "hamaki= 0x8449 0x5dfb", "hagaki= 0x8449 0x66f8", "youryokuso= 0x8449 0x7dd1 0x7d20", "kaname= 0x8981", "yousuru= 0x8981 0x3059 0x308b", "yousuruni= 0x8981 0x3059 0x308b 0x306b", "iru5= 0x8981 0x308b", "youin= 0x8981 0x56e0", "youkyuu= 0x8981 0x6c42", "youken2= 0x8981 0x4ef6", "youkou1= 0x8981 0x9805", "youshi3= 0x8981 0x65e8", "yousho2= 0x8981 0x6240", "yousei1= 0x8981 0x8acb", "youso= 0x8981 0x7d20", "youchuui= 0x8981 0x6ce8 0x610f", "youten= 0x8981 0x70b9", "youbou= 0x8981 0x671b", "youyaku2= 0x8981 0x7d04", "youryou2= 0x8981 0x9818", "utai= 0x8b21", "utau2= 0x8b21 0x3046", "youkyoku= 0x8b21 0x66f2", "odori= 0x8e0a 0x308a", "odorikuruu= 0x8e0a 0x308a 0x72c2 0x3046", "odoriko= 0x8e0a 0x308a 0x5b50", "odoriba= 0x8e0a 0x308a 0x5834", "odoru2= 0x8e0a 0x308b", "haruka= 0x9065 0x304b", "you4= 0x967d", "youki2= 0x967d 0x6c17", "youkou2= 0x967d 0x5149", "youshi4= 0x967d 0x5b50", "yousei2= 0x967d 0x6027", "yashinau= 0x990a 0x3046", "youiku= 0x990a 0x80b2", "youkei= 0x990a 0x9d8f", "yougo3= 0x990a 0x8b77", "yousan= 0x990a 0x8695", "youshi5= 0x990a 0x5b50", "youshoku2= 0x990a 0x6b96", "yousei3= 0x990a 0x6210", "youton= 0x990a 0x8c5a", "yourouin= 0x990a 0x8001 0x9662", "somosomo= 0x6291", "osaeru2= 0x6291 0x3048 0x308b", "yokuatsu= 0x6291 0x5727", "yokushi= 0x6291 0x6b62", "yokusei= 0x6291 0x5236", "yokuyou= 0x6291 0x63da", "yokuryuu= 0x6291 0x7559", "yoku2= 0x6b32", "hoshii= 0x6b32 0x3057 0x3044", "hoshigaru= 0x6b32 0x3057 0x304c 0x308b", "hossuru= 0x6b32 0x3059 0x308b", "yokkyuu= 0x6b32 0x6c42", "yokubuka= 0x6b32 0x6df1", "yokubari= 0x6b32 0x5f35 0x308a", "yokubou= 0x6b32 0x671b", "abiseru= 0x6d74 0x3073 0x305b 0x308b", "abiru= 0x6d74 0x3073 0x308b", "yukata= 0x6d74 0x8863", "yokushitsu= 0x6d74 0x5ba4", "yokusou= 0x6d74 0x69fd", "yokushuu= 0x7fcc 0x9031", "yokuasa= 0x7fcc 0x671d", "yokuchou= 0x7fcc 0x671d", "yokujitsu= 0x7fcc 0x65e5", "yokunen= 0x7fcc 0x5e74", "yokuyokujitsu= 0x7fcc 0x7fcc 0x65e5", "tsubasa= 0x7ffc", "rashin= 0x7f85 0x91dd", "rashinban= 0x7f85 0x91dd 0x76e4", "raretsu= 0x7f85 0x5217", "neji2= 0x87ba 0x65cb", "rasen= 0x87ba 0x65cb", "hadaka= 0x88f8", "hadakaikkan= 0x88f8 0x4e00 0x8cab", "hadashi1= 0x88f8 0x8db3", "rataiga= 0x88f8 0x4f53 0x753b", "hadakauma= 0x88f8 0x99ac", "rafu= 0x88f8 0x5a66", "rai= 0x6765", "kitasu= 0x6765 0x3059", "kitaru= 0x6765 0x308b", "kuru2= 0x6765 0x308b", "raikyaku= 0x6765 0x5ba2", "raikyakuhoumeiroku= 0x6765 0x5ba2 0x82b3 0x540d 0x9332", "raigetsu= 0x6765 0x6708", "raishuu1= 0x6765 0x8972", "raishuu2= 0x6765 0x9031", "rainichi= 0x6765 0x65e5", "rainen= 0x6765 0x5e74", "raihin= 0x6765 0x8cd3", "raihou= 0x6765 0x8a2a", "tanomi= 0x983c 0x307f", "tanomu= 0x983c 0x3080", "tanomoshii= 0x983c 0x3082 0x3057 0x3044", "tayorinai= 0x983c 0x308a 0x306a 0x3044", "tayoru= 0x983c 0x308b", "raishinshi= 0x983c 0x4fe1 0x7d19", "kaminari= 0x96f7", "raiu= 0x96f7 0x96e8", "raimei= 0x96f7 0x9cf4", "karamiau= 0x7d61 0x307f 0x5408 0x3046", "karamitsuku= 0x7d61 0x307f 0x4ed8 0x304f", "karamu= 0x7d61 0x3080", "ochikobore= 0x843d 0x3061 0x3053 0x307c 0x308c", "ochiru= 0x843d 0x3061 0x308b", "ochiau= 0x843d 0x3061 0x5408 0x3046", "ochikomu= 0x843d 0x3061 0x8fbc 0x3080", "ochitsuita= 0x843d 0x3061 0x7740 0x3044 0x305f", "ochitsuki= 0x843d 0x3061 0x7740 0x304d", "ochitsuku= 0x843d 0x3061 0x7740 0x304f", "ochiba= 0x843d 0x3061 0x8449", "otoshiana= 0x843d 0x3068 0x3057 0x7a74", "otoshimono= 0x843d 0x3068 0x3057 0x7269", "otosu= 0x843d 0x3068 0x3059", "rakka= 0x843d 0x4e0b", "rakkan= 0x843d 0x6b3e", "rakugo= 0x843d 0x8a9e", "rakusatsu= 0x843d 0x672d", "rakudai= 0x843d 0x7b2c", "rakutan= 0x843d 0x80c6", "rakurai= 0x843d 0x96f7", "rakuseihin= 0x916a 0x88fd 0x54c1", "rakunou= 0x916a 0x8fb2", "rakunouka= 0x916a 0x8fb2 0x5bb6", "rakunoujou= 0x916a 0x8fb2 0x5834", "midasu= 0x4e71 0x3059", "midareru= 0x4e71 0x308c 0x308b", "rankaku1= 0x4e71 0x7372", "ranzatsu= 0x4e71 0x96d1", "ranbatsu1= 0x4e71 0x4f10", "ranpitsu= 0x4e71 0x7b46", "ranbou= 0x4e71 0x66b4", "ranyou1= 0x4e71 0x7528", "tamago= 0x5375", "tamagonokara= 0x5375 0x306e 0x6bbb", "rankan1= 0x5375 0x7ba1", "tamagogata= 0x5375 0x5f62", "rankei= 0x5375 0x5f62", "ransou= 0x5375 0x5de3", "arashi= 0x5d50", "ran= 0x6b04", "rangai= 0x6b04 0x5916", "rankan2= 0x6b04 0x5e72", "rankaku2= 0x6feb 0x7372", "ransaku= 0x6feb 0x4f5c", "ranbatsu2= 0x6feb 0x4f10", "ranpi= 0x6feb 0x8cbb", "ranyou2= 0x6feb 0x7528", "ri1= 0x5229", "kikime2= 0x5229 0x304d 0x76ee", "kiku5= 0x5229 0x304f", "rieki= 0x5229 0x76ca", "rigai= 0x5229 0x5bb3", "riko= 0x5229 0x5df1", "rikoshugi= 0x5229 0x5df1 0x4e3b 0x7fa9", "rikoteki= 0x5229 0x5df1 0x7684", "rikou1= 0x5229 0x53e3", "rishi= 0x5229 0x5b50", "rijun= 0x5229 0x6f64", "rishoku= 0x5229 0x6b96", "risoku= 0x5229 0x606f", "riyou= 0x5229 0x7528", "riritsu= 0x5229 0x7387", "ri2= 0x540f", "riin= 0x540f 0x54e1", "ritou= 0x540f 0x515a", "hakifurushi= 0x5c65 0x304d 0x53e4 0x3057", "hakimono1= 0x5c65 0x304d 0x7269", "haku5= 0x5c65 0x304f", "rikou2= 0x5c65 0x884c", "hakimono2= 0x5c65 0x7269", "rireki= 0x5c65 0x6b74", "rirekisho= 0x5c65 0x6b74 0x66f8", "rika= 0x7406 0x79d1", "rikai= 0x7406 0x89e3", "rigaku= 0x7406 0x5b66", "rigakubu= 0x7406 0x5b66 0x90e8", "rikutsu= 0x7406 0x5c48", "rikei= 0x7406 0x7cfb", "riji= 0x7406 0x4e8b", "risei= 0x7406 0x6027", "risou= 0x7406 0x60f3", "risouteki= 0x7406 0x60f3 0x7684", "rinen= 0x7406 0x5ff5", "rihatsu= 0x7406 0x9aea", "riyuu= 0x7406 0x7531", "riron= 0x7406 0x8ad6", "ri3= 0x75e2", "uraguchi= 0x88cf 0x53e3", "uragiru= 0x88cf 0x5207 0x308b", "uradoori= 0x88cf 0x901a 0x308a", "uramichi= 0x88cf 0x9053", "uraomote= 0x88cf 0x8868", "uraduke= 0x88cf 0x4ed8 0x3051", "uragaeshi= 0x88cf 0x8fd4 0x3057", "uragaesu= 0x88cf 0x8fd4 0x3059", "uramon= 0x88cf 0x9580", "sato= 0x91cc", "ri4= 0x91cc", "satoimo= 0x91cc 0x828b", "satogo= 0x91cc 0x5b50", "satogokoro= 0x91cc 0x5fc3", "hanasu2= 0x96e2 0x3059", "hanareru2= 0x96e2 0x308c 0x308b", "rikon= 0x96e2 0x5a5a", "rikonsoshou= 0x96e2 0x5a5a 0x8a34 0x8a1f", "rishou= 0x96e2 0x7901", "ridatsu= 0x96e2 0x8131", "rihan= 0x96e2 0x53cd", "ririku= 0x96e2 0x9678", "riku= 0x9678", "rikkyou= 0x9678 0x6a4b", "rikugun= 0x9678 0x8ecd", "rikujou= 0x9678 0x4e0a", "rikuro= 0x9678 0x8def", "ritsu1= 0x5f8b", "ritsu2= 0x7387", "hikiiru= 0x7387 0x3044 0x308b", "sossen= 0x7387 0x5148", "socchoku= 0x7387 0x76f4", "tachinaoru1= 0x7acb 0x3061 0x306a 0x304a 0x308b", "tachiyoru= 0x7acb 0x3061 0x5bc4 0x308b", "tachisaru= 0x7acb 0x3061 0x53bb 0x308b", "tachidomaru= 0x7acb 0x3061 0x6b62 0x307e 0x308b", "tachiagaru= 0x7acb 0x3061 0x4e0a 0x304c 0x308b", "tachinoku= 0x7acb 0x3061 0x9000 0x304f", "tachinaoru2= 0x7acb 0x3061 0x76f4 0x308b", "tachiyomi= 0x7acb 0x3061 0x8aad 0x307f", "tachiirikinshi1= 0x7acb 0x3061 0x5165 0x308a 0x7981 0x6b62", "tachiirikinshi2= 0x7acb 0x3061 0x5165 0x7981 0x6b62", "tachibanashi= 0x7acb 0x3061 0x8a71", "tatsu6= 0x7acb 0x3064", "tateru2= 0x7acb 0x3066 0x308b", "tatekomu= 0x7acb 0x3066 0x8fbc 0x3080", "tatefuda1= 0x7acb 0x3066 0x672d", "tatetsuduke= 0x7acb 0x3066 0x7d9a 0x3051", "tatekaeru= 0x7acb 0x3066 0x66ff 0x3048 0x308b", "tatenaosu= 0x7acb 0x3066 0x76f4 0x3059", "tachioujou= 0x7acb 0x5f80 0x751f", "rikka= 0x7acb 0x590f", "rikkyaku= 0x7acb 0x811a", "rikken= 0x7acb 0x61b2", "rikkenkunshusei= 0x7acb 0x61b2 0x541b 0x4e3b 0x653f", "rikkouho= 0x7acb 0x5019 0x88dc", "tatefuda2= 0x7acb 0x672d", "risshun= 0x7acb 0x6625", "tachiba= 0x7acb 0x5834", "rittai= 0x7acb 0x4f53", "rittou= 0x7acb 0x51ac", "tachiirikinshi3= 0x7acb 0x5165 0x308a 0x7981 0x6b62", "tachiirikinshi4= 0x7acb 0x5165 0x7981 0x6b62", "rippa= 0x7acb 0x6d3e", "rippuku= 0x7acb 0x8179", "rippou= 0x7acb 0x6cd5", "hobo= 0x7565", "ryaku= 0x7565", "ryakusu= 0x7565 0x3059", "ryakugo= 0x7565 0x8a9e", "ryakudatsu= 0x7565 0x596a", "ryakureki= 0x7565 0x6b74", "ryuu= 0x6d41", "nagashi= 0x6d41 0x3057", "nagasu= 0x6d41 0x3059", "nagare= 0x6d41 0x308c", "nagareru= 0x6d41 0x308c 0x308b", "nagareboshi= 0x6d41 0x308c 0x661f", "ryuuiki= 0x6d41 0x57df", "ryuuketsu= 0x6d41 0x8840", "hayari= 0x6d41 0x884c", "ryuukou= 0x6d41 0x884c", "hayaru= 0x6d41 0x884c 0x308b", "ryuukouka= 0x6d41 0x884c 0x6b4c", "sasuga= 0x6d41 0x77f3", "ryuuchou= 0x6d41 0x66a2", "ryuutsuu= 0x6d41 0x901a", "ryuuhyou= 0x6d41 0x6c37", "rurou= 0x6d41 0x6d6a", "tamaru= 0x6e9c 0x307e 0x308b", "tameru2= 0x6e9c 0x3081 0x308b", "tameiki= 0x6e9c 0x3081 0x606f", "tomaru3= 0x7559 0x307e 0x308b", "todomeru= 0x7559 0x3081 0x308b", "tomeru3= 0x7559 0x3081 0x308b", "ryuugaku= 0x7559 0x5b66", "ryuugakusei= 0x7559 0x5b66 0x751f", "rusu= 0x7559 0x5b88", "rusuban= 0x7559 0x5b88 0x756a", "ryuunen= 0x7559 0x5e74", "iou= 0x786b 0x9ec4", "ryuukasuiso= 0x786b 0x5316 0x6c34 0x7d20", "ryuusan= 0x786b 0x9178", "tsubu= 0x7c92", "ryuushi= 0x7c92 0x5b50", "ryuujou= 0x7c92 0x72b6", "ryuuryuu= 0x9686 0x3005", "ryuuki= 0x9686 0x8d77", "ryuusei= 0x9686 0x76db", "tatsumaki= 0x7adc 0x5dfb", "ryuuguu= 0x7adc 0x5bae", "ryuukotsu= 0x7adc 0x9aa8", "tabi3= 0x65c5", "ryokan= 0x65c5 0x9928", "ryokaku= 0x65c5 0x5ba2", "ryokakuki= 0x65c5 0x5ba2 0x6a5f", "ryoken= 0x65c5 0x5238", "ryokou= 0x65c5 0x884c", "ryokousha= 0x65c5 0x884c 0x8005", "ryoshuu= 0x65c5 0x6101", "tabibito= 0x65c5 0x4eba", "tabisaki= 0x65c5 0x5148", "ryohi= 0x65c5 0x8cbb", "tabidatsu= 0x65c5 0x7acb 0x3064", "ryou1= 0x4e86", "ryoukai1= 0x4e86 0x89e3", "ryoushou= 0x4e86 0x627f", "ryou2= 0x50da", "ryouyuu1= 0x50da 0x53cb", "ryouin= 0x4e21 0x9662", "ryougan= 0x4e21 0x773c", "ryoushi2= 0x4e21 0x6c0f", "ryousha= 0x4e21 0x8005", "ryoute= 0x4e21 0x624b", "ryoushin1= 0x4e21 0x89aa", "ryougawa= 0x4e21 0x5074", "ryougae= 0x4e21 0x66ff", "ryouhashi= 0x4e21 0x7aef", "ryoutotsu= 0x4e21 0x51f8", "ryouheika= 0x4e21 0x965b 0x4e0b", "ryouhou= 0x4e21 0x65b9", "ryoumen= 0x4e21 0x9762", "ryouyuu2= 0x4e21 0x96c4", "ryouyoku= 0x4e21 0x7ffc", "ryouritsu= 0x4e21 0x7acb", "shinogu= 0x51cc 0x3050", "ryou3= 0x5bee", "ryousei= 0x5bee 0x751f", "ryouchou= 0x5bee 0x9577", "ryou4= 0x6599", "ryoukin= 0x6599 0x91d1", "ryoutei= 0x6599 0x4ead", "ryouri= 0x6599 0x7406", "suzushii= 0x6dbc 0x3057 0x3044", "suzumu= 0x6dbc 0x3080", "suzukaze= 0x6dbc 0x98a8", "ryoufuu= 0x6dbc 0x98a8", "ryoumi= 0x6dbc 0x5473", "ryou5= 0x731f", "ryouken= 0x731f 0x72ac", "ryoushi3= 0x731f 0x5e2b", "ryoujuu= 0x731f 0x9283", "ryouyou= 0x7642 0x990a", "ryouyousho= 0x7642 0x990a 0x6240", "ryouyoujo= 0x7642 0x990a 0x6240", "ryoushoku= 0x7ce7 0x98df", "ii= 0x826f 0x3044", "yoi3= 0x826f 0x3044", "ryoukou= 0x826f 0x597d", "ryousai= 0x826f 0x59bb", "ryoushitsu= 0x826f 0x8cea", "ryoushin2= 0x826f 0x5fc3", "ryou6= 0x91cf", "hakaru6= 0x91cf 0x308b", "misasagi= 0x9675", "ryouiki= 0x9818 0x57df", "ryoukai2= 0x9818 0x6d77", "ryoukuu= 0x9818 0x7a7a", "ryouji= 0x9818 0x4e8b", "ryoujikan= 0x9818 0x4e8b 0x9928", "ryoushuu= 0x9818 0x53ce", "ryoushuusho= 0x9818 0x53ce 0x66f8", "ryoushuushou= 0x9818 0x53ce 0x8a3c", "ryouchi= 0x9818 0x5730", "ryoudo= 0x9818 0x571f", "chikara= 0x529b", "ryoku= 0x529b", "rikimu= 0x529b 0x3080", "chikaraippai= 0x529b 0x4e00 0x676f", "chikaraduyoi= 0x529b 0x5f37 0x3044", "rikishi= 0x529b 0x58eb", "chikaradameshi= 0x529b 0x8a66 0x3057", "chikaramochi= 0x529b 0x6301 0x3061", "chikarazoe= 0x529b 0x6dfb 0x3048", "midori= 0x7dd1", "midoriiro= 0x7dd1 0x8272", "rokushou= 0x7dd1 0x9752", "ryokuchi= 0x7dd1 0x5730", "rin1= 0x502b", "rinri= 0x502b 0x7406", "rinrigaku= 0x502b 0x7406 0x5b66", "rin2= 0x5398", "rinmou= 0x5398 0x6bdb", "hayashi= 0x6797", "ringaku= 0x6797 0x5b66", "ringyou= 0x6797 0x696d", "ringo= 0x6797 0x6a8e", "rinritsu= 0x6797 0x7acb", "nozomu2= 0x81e8 0x3080", "rinji= 0x81e8 0x6642", "rinjuu= 0x81e8 0x7d42", "rinshou= 0x81e8 0x5e8a", "rinseki= 0x81e8 0x5e2d", "wa3= 0x8f2a", "wagomu= 0x8f2a 0x30b4 0x30e0", "rinkaku= 0x8f2a 0x90ed", "rinban= 0x8f2a 0x756a", "tonari= 0x96a3", "tonariau1= 0x96a3 0x308a 0x5408 0x3046", "tonariawase1= 0x96a3 0x308a 0x5408 0x308f 0x305b", "rinka= 0x96a3 0x5bb6", "tonariau2= 0x96a3 0x5408 0x3046", "tonariawase2= 0x96a3 0x5408 0x308f 0x305b", "ringoku= 0x96a3 0x56fd", "rinjin= 0x96a3 0x4eba", "rinsetsu= 0x96a3 0x63a5", "rui1= 0x5841", "ruishin1= 0x5841 0x5be9", "namida= 0x6d99", "namidagumashii= 0x6d99 0x3050 0x307e 0x3057 0x3044", "namidagoe= 0x6d99 0x58f0", "ruika= 0x7d2f 0x52a0", "ruikei1= 0x7d2f 0x8a08", "ruishin2= 0x7d2f 0x9032", "ruiseki= 0x7d2f 0x7a4d", "rui2= 0x985e", "ruigigo= 0x985e 0x7fa9 0x8a9e", "ruikei2= 0x985e 0x578b", "ruikeiteki= 0x985e 0x578b 0x7684", "ruigo= 0x985e 0x8a9e", "ruiji= 0x985e 0x4f3c", "ruijinen= 0x985e 0x4eba 0x733f", "ruisui= 0x985e 0x63a8", "rei1= 0x4ee4", "reijou1= 0x4ee4 0x5b22", "rei2= 0x4f8b", "tatoe2= 0x4f8b 0x3048", "tatoeba= 0x4f8b 0x3048 0x3070", "tatoeru= 0x4f8b 0x3048 0x308b", "reigai= 0x4f8b 0x5916", "reidai= 0x4f8b 0x984c", "reinen= 0x4f8b 0x5e74", "reibun= 0x4f8b 0x6587", "hieru= 0x51b7 0x3048 0x308b", "hiekomu= 0x51b7 0x3048 0x8fbc 0x3080", "tsumetai= 0x51b7 0x305f 0x3044", "samasu2= 0x51b7 0x307e 0x3059", "sameru2= 0x51b7 0x3081 0x308b", "hiya= 0x51b7 0x3084", "hiyakasu= 0x51b7 0x3084 0x304b 0x3059", "hiyasu= 0x51b7 0x3084 0x3059", "hiyayaka= 0x51b7 0x3084 0x3084 0x304b", "hiyaase1= 0x51b7 0x3084 0x6c57", "hiyaase2= 0x51b7 0x6c57", "reikan= 0x51b7 0x6c57", "reiguu= 0x51b7 0x9047", "reikoku= 0x51b7 0x9177", "reishou= 0x51b7 0x7b11", "reisui= 0x51b7 0x6c34", "reisuimasatsu= 0x51b7 0x6c34 0x6469 0x64e6", "reisei= 0x51b7 0x9759", "reisen1= 0x51b7 0x6226", "reisen2= 0x51b7 0x6cc9", "reizou= 0x51b7 0x8535", "reizouko= 0x51b7 0x8535 0x5eab", "reitan= 0x51b7 0x6de1", "reitetsu= 0x51b7 0x5fb9", "reitou= 0x51b7 0x51cd", "reitouki= 0x51b7 0x51cd 0x5668", "reibou= 0x51b7 0x623f", "hagemasu= 0x52b1 0x307e 0x3059", "hagemu= 0x52b1 0x3080", "reikou= 0x52b1 0x884c", "rei3= 0x793c", "reigi= 0x793c 0x5100", "reigitadashii= 0x793c 0x5100 0x6b63 0x3057 0x3044", "reikin= 0x793c 0x91d1", "reishiki= 0x793c 0x5f0f", "reijou2= 0x793c 0x72b6", "reihai= 0x793c 0x62dd", "reifuku= 0x793c 0x670d", "suzu= 0x9234", "suzumushi= 0x9234 0x866b", "reijuu= 0x96b7 0x5f93", "reizoku= 0x96b7 0x5c5e", "rei4= 0x96f6", "kobosu= 0x96f6 0x3059", "koboreru= 0x96f6 0x308c 0x308b", "reika= 0x96f6 0x4e0b", "reisai= 0x96f6 0x7d30", "reiji= 0x96f6 0x6642", "reiten= 0x96f6 0x70b9", "reido= 0x96f6 0x5ea6", "reien= 0x970a 0x5712", "reiniku= 0x970a 0x8089", "reibai= 0x970a 0x5a92", "reihou= 0x970a 0x5cf0", "uruwashii= 0x9e97 0x3057 0x3044", "reijin= 0x9e97 0x4eba", "koyomi= 0x66a6", "rekishi= 0x6b74 0x53f2", "rekishiteki= 0x6b74 0x53f2 0x7684", "rekizento= 0x6b74 0x7136 0x3068", "rekinin= 0x6b74 0x4efb", "retsu= 0x5217", "rekkyo= 0x5217 0x6319", "rekkoku= 0x5217 0x56fd", "ressha= 0x5217 0x8eca", "rettou1= 0x5217 0x5cf6", "otoru= 0x52a3 0x308b", "retsuaku= 0x52a3 0x60aa", "ressei1= 0x52a3 0x52e2", "ressei2= 0x52a3 0x6027", "rettou2= 0x52a3 0x7b49", "rettoukan= 0x52a3 0x7b49 0x611f", "resshin= 0x70c8 0x9707", "saku7= 0x88c2 0x304f", "sakeru2= 0x88c2 0x3051 0x308b", "sakeme= 0x88c2 0x3051 0x76ee", "renka= 0x5ec9 0x4fa1", "renbai= 0x5ec9 0x58f2", "koi4= 0x604b", "kou9= 0x604b 0x3046", "koishii= 0x604b 0x3057 0x3044", "koisuru= 0x604b 0x3059 0x308b", "koinonayami= 0x604b 0x306e 0x60a9 0x307f", "renai= 0x604b 0x611b", "koigokoro= 0x604b 0x5fc3", "koibito= 0x604b 0x4eba", "koibumi= 0x604b 0x6587", "renbo= 0x604b 0x6155", "renga= 0x7149 0x74e6", "neru2= 0x7df4 0x308b", "renshuu= 0x7df4 0x7fd2", "ren= 0x9023", "tsuranaru= 0x9023 0x306a 0x308b", "tsuraneru= 0x9023 0x306d 0x308b", "tsure= 0x9023 0x308c", "tsureteiku= 0x9023 0x308c 0x3066 0x884c 0x304f", "tsuretekuru= 0x9023 0x308c 0x3066 0x6765 0x308b", "tsureru= 0x9023 0x308c 0x308b", "renkyuu= 0x9023 0x4f11", "renkei1= 0x9023 0x4fc2", "renkei2= 0x9023 0x643a", "rengou= 0x9023 0x5408", "rensai= 0x9023 0x8f09", "rensaishousetsu= 0x9023 0x8f09 0x5c0f 0x8aac", "renshou= 0x9023 0x52dd", "rensou= 0x9023 0x60f3", "renzoku= 0x9023 0x7d9a", "rentai= 0x9023 0x5e2f", "rentaikan= 0x9023 0x5e2f 0x611f", "renchuu= 0x9023 0x4e2d", "renjitsu= 0x9023 0x65e5", "renpa= 0x9023 0x8987", "renpou1= 0x9023 0x5cf0", "renpou2= 0x9023 0x90a6", "renpoushushou= 0x9023 0x90a6 0x9996 0x76f8", "renmei= 0x9023 0x76df", "renraku= 0x9023 0x7d61", "renrakueki= 0x9023 0x7d61 0x99c5", "renrakusen= 0x9023 0x7d61 0x7dda", "renkinjutsu= 0x932c 0x91d1 0x8853", "rensei= 0x932c 0x6210", "rojou= 0x8def 0x4e0a", "roji= 0x8def 0x5730", "tsuyu2= 0x9732", "roken1= 0x9732 0x898b", "roken2= 0x9732 0x9855", "rokotsu= 0x9732 0x9aa8", "roshutsu= 0x9732 0x51fa", "roshutsushou= 0x9732 0x51fa 0x75c7", "rotei= 0x9732 0x5448", "roten= 0x9732 0x5e97", "rou= 0x52b4", "itawaru= 0x52b4 0x308b", "roudou1= 0x52b4 0x50cd", "roudouundou= 0x52b4 0x50cd 0x904b 0x52d5", "roudoujikan= 0x52b4 0x50cd 0x6642 0x9593", "roudousha= 0x52b4 0x50cd 0x8005", "roudoukumiai= 0x52b4 0x50cd 0x7d44 0x5408", "rouryoku= 0x52b4 0x529b", "rouka1= 0x5eca 0x4e0b", "ijiru= 0x5f04 0x308b", "hogaraka= 0x6717 0x3089 0x304b", "rouei= 0x6717 0x8a60", "roudoku= 0x6717 0x8aad", "rouhou= 0x6717 0x5831", "rourou= 0x6717 0x6717", "roukaku= 0x697c 0x95a3", "roumon= 0x697c 0x9580", "rounin= 0x6d6a 0x4eba", "rouhi= 0x6d6a 0x8cbb", "morasu= 0x6f0f 0x3089 0x3059", "moru2= 0x6f0f 0x308b", "moreru= 0x6f0f 0x308c 0x308b", "rouden= 0x6f0f 0x96fb", "oiru= 0x8001 0x3044 0x308b", "fukeru3= 0x8001 0x3051 0x308b", "rouou= 0x8001 0x7fc1", "rouka2= 0x8001 0x5316", "rougan= 0x8001 0x773c", "roukyuu= 0x8001 0x673d", "rougo= 0x8001 0x5f8c", "roukou= 0x8001 0x5de7", "rousai= 0x8001 0x59bb", "roushi= 0x8001 0x5b50", "roujaku= 0x8001 0x82e5", "rounyaku= 0x8001 0x82e5", "roujin= 0x8001 0x4eba", "rousui= 0x8001 0x8870", "rouba= 0x8001 0x5a46", "shinise= 0x8001 0x8217", "rouho= 0x8001 0x8217", "rourei= 0x8001 0x9f62", "rousoku= 0x874b 0x71ed", "roudou2= 0x90ce 0x515a", "muttsu1= 0x516d", "roku= 0x516d", "muttsu2= 0x516d 0x3064", "muika= 0x516d 0x65e5", "fumoto= 0x9e93", "rokuon= 0x9332 0x97f3", "rokuonte-pu= 0x9332 0x97f3 0x30c6 0x30fc 0x30d7", "rokuga= 0x9332 0x753b", "ronjiru= 0x8ad6 0x3058 0x308b", "ronjitsukusu= 0x8ad6 0x3058 0x5c3d 0x304f 0x3059", "ronzuru= 0x8ad6 0x305a 0x308b", "rongi= 0x8ad6 0x8b70", "ronkyuu= 0x8ad6 0x7a76", "ronkyo= 0x8ad6 0x62e0", "ronshi= 0x8ad6 0x65e8", "ronsou= 0x8ad6 0x4e89", "ronpyou= 0x8ad6 0x8a55", "ronbun= 0x8ad6 0x6587", "ronri= 0x8ad6 0x7406", "ronriteki= 0x8ad6 0x7406 0x7684", "wa4= 0x548c", "nagomu= 0x548c 0x3080", "nagoyaka= 0x548c 0x3084 0x304b", "yawaragu= 0x548c 0x3089 0x3050", "yawarageru= 0x548c 0x3089 0x3052 0x308b", "waei= 0x548c 0x82f1", "waka= 0x548c 0x6b4c", "wagashi= 0x548c 0x83d3 0x5b50", "wakai2= 0x548c 0x89e3", "wago= 0x548c 0x8a9e", "washi= 0x548c 0x7d19", "washiki= 0x548c 0x5f0f", "washitsu= 0x548c 0x5ba4", "oshou= 0x548c 0x5c1a", "washoku= 0x548c 0x98df", "wadoku= 0x548c 0x72ec", "wakame2= 0x548c 0x5e03", "wafuu= 0x548c 0x98a8", "wafuku= 0x548c 0x670d", "wabun= 0x548c 0x6587", "wahei= 0x548c 0x5e73", "wayousecchuu= 0x548c 0x6d0b 0x6298 0x8877", "hanashi= 0x8a71", "hanashikakeru= 0x8a71 0x3057 0x639b 0x3051 0x308b", "hanashikotoba= 0x8a71 0x3057 0x8a00 0x8449", "hanashiai1= 0x8a71 0x3057 0x5408 0x3044", "hanashiau= 0x8a71 0x3057 0x5408 0x3046", "hanashikomu1= 0x8a71 0x3057 0x8fbc 0x3080", "hanashite= 0x8a71 0x3057 0x624b", "hanashigoe= 0x8a71 0x3057 0x58f0", "hanasu3= 0x8a71 0x3059", "hanashiai2= 0x8a71 0x5408 0x3044", "hanashikomu2= 0x8a71 0x8fbc 0x3080", "wadai= 0x8a71 0x984c", "yugamu= 0x6b6a 0x3080", "makanaitsuki= 0x8cc4 0x3044 0x4ed8 0x304d", "makanau= 0x8cc4 0x3046", "wairo= 0x8cc4 0x8cc2", "waki= 0x8107", "wakimi= 0x8107 0x898b", "wakiyaku= 0x8107 0x5f79", "madou= 0x60d1 0x3046", "madowasu= 0x60d1 0x308f 0x3059", "wakusei= 0x60d1 0x661f", "waku3= 0x67a0", "wakugumi= 0x67a0 0x7d44", "wakunai= 0x67a0 0x5185", "wabi= 0x8a6b 0x3073", "wabiru= 0x8a6b 0x3073 0x308b", "wara= 0x85c1", "wan1= 0x6900", "mogu= 0x6900 0x3050", "wan2= 0x6e7e", "wankyoku= 0x6e7e 0x66f2", "ude= 0x8155", "udedokei= 0x8155 0x6642 0x8a08", "udemae= 0x8155 0x524d", "wanpaku= 0x8155 0x767d", "wanryoku= 0x8155 0x529b", "udewa= 0x8155 0x8f2a", "donburi= 0x4e3c", "honoka= 0x4ec4 0x304b", "honomekasu= 0x4ec4 0x3081 0x304b 0x3059", "tatazumu= 0x4f47 0x3080", "mama= 0x5118", "manaita= 0x4fce 0x677f", "utsumuku= 0x4fef 0x304f", "utsubuse= 0x4fef 0x305b", "sate= 0x5056", "hakanai= 0x511a 0x3044", "kichoumen= 0x51e0 0x5e33 0x9762", "motareru= 0x51ed 0x308c 0x308b", "kechinbou= 0x541d 0x3061 0x3093 0x574a", "togameru= 0x548e 0x3081 0x308b", "tsubuyaku= 0x545f 0x304f", "tossani= 0x5484 0x55df 0x306b", "kamu2= 0x54ac 0x3080", "unaru= 0x5538 0x308b", "kagu2= 0x55c5 0x3050", "kuchibashi= 0x5634", "azakeru= 0x5632 0x308b", "sazo= 0x5638", "kushami= 0x568f", "sasayaku= 0x56c1 0x304f", "saezuru= 0x56c0 0x308b", "hokori2= 0x57c3", "obitadashii= 0x5925 0x3057 0x3044", "ogoru= 0x5962 0x308b", "enkyoku= 0x5a49 0x66f2", "shinayaka= 0x5acb 0x304b", "haramu= 0x5b55 0x3080", "izure= 0x5b70", "kitto= 0x5c79 0x5ea6", "hamaru= 0x5d4c 0x307e 0x308b", "hameru= 0x5d4c 0x3081 0x308b", "suisei2= 0x5f57 0x661f", "samayou= 0x5f77 0x5fa8 0x3046", "urotsuku= 0x5f77 0x5fa8 0x304f", "kakaru5= 0x7f79 0x308b", "koshiraeru= 0x62f5 0x3048 0x308b", "hasamu2= 0x633e 0x3080", "suri= 0x638f 0x6478", "okite= 0x639f", "momu= 0x63c9 0x3080", "momeru= 0x63c9 0x3081 0x308b", "karakau= 0x63f6 0x63c4 0x3046", "haneru2= 0x64a5 0x306d 0x308b", "kusuguttai= 0x64fd 0x3063 0x305f 0x3044", "kusuguru= 0x64fd 0x308b", "tsukuri= 0x65c1", "bokeru3= 0x6688 0x3051 0x308b", "bokasu= 0x6688 0x3059", "aimai= 0x66d6 0x6627", "toge= 0x68d8", "kaisho= 0x6977 0x66f8", "daidaiiro= 0x6a59 0x8272", "ori2= 0x6abb", "uttoushii= 0x9b31 0x9676 0x3057 0x3044", "share= 0x6d12 0x843d", "shareru= 0x6d12 0x843d 0x308b", "sarau= 0x6d5a 0x3046", "yodare= 0x6d8e", "adana1= 0x6e3e 0x540d", "kangai2= 0x704c 0x6f11", "nijimu= 0x6ef2 0x3080", "itameru3= 0x7092 0x3081 0x308b", "kotatsu= 0x70ac 0x71f5", "konro= 0x711c 0x7089", "kirabiyaka= 0x714c 0x3073 0x3084 0x304b", "hishihishi= 0x7287 0x7287", "zurui= 0x72e1 0x3044", "zurugashikoi= 0x72e1 0x8ce2 0x3044", "yomigaeru= 0x7526 0x308b", "kayui= 0x75d2 0x3044", "aza2= 0x75e3", "shibireru= 0x75fa 0x308c 0x308b", "kobu3= 0x7624", "shiwa= 0x76ba", "mabushii= 0x7729 0x3057 0x3044", "niramu= 0x7768 0x3080", "tsuburu= 0x7791 0x308b", "tsumuru= 0x7791 0x308b", "meisou= 0x7791 0x60f3", "mabuta= 0x77bc", "rokuna= 0x788c 0x306a", "rokuni= 0x788c 0x306b", "yaya= 0x7a0d", "yatsureru= 0x7ab6 0x308c 0x308b", "houki4= 0x7b92", "kago= 0x7c60", "komoru= 0x7c60 0x3082 0x308b", "kuji= 0x7c64", "kujibiki1= 0x7c64 0x5f15", "kujibiki2= 0x7c64 0x5f15 0x304d", "tadasu2= 0x7cfa 0x3059", "juutan= 0x7d68 0x7dde", "adana2= 0x7dbd 0x540d", "sugaru= 0x7e0b 0x308b", "motsureru= 0x7e3a 0x308c 0x308b", "nawabari2= 0x7e69 0x5f35 0x308a", "hibi2= 0x7f45", "wana= 0x7f60", "isasaka2= 0x804a 0x304b", "sobieru= 0x8073 0x3048 0x308b", "sune= 0x811b", "heso= 0x81cd", "shuuto2= 0x8205", "nameru= 0x8210 0x3081 0x308b", "ichigo= 0x82fa", "yuderu= 0x8339 0x3067 0x308b", "goza= 0x8323 0x84d9", "hourensou= 0x83e0 0x8590 0x8349", "bara= 0x8594 0x8587", "barairo= 0x8594 0x8587 0x8272", "tsubomi= 0x857e", "tonbo= 0x873b 0x86c9", "aseru2= 0x892a 0x305b 0x308b", "teishoku2= 0x89dd 0x89e6", "namari2= 0x8a1b 0x308a", "atsuraeru= 0x8a82 0x3048 0x308b", "kudoi= 0x8ac4 0x3044", "utau3= 0x8b33 0x3046", "musaboru= 0x8caa 0x308b", "donyoku= 0x8caa 0x6b32", "kenasu= 0x8cb6 0x3059", "zeitaku= 0x8d05 0x6ca2", "motarasu= 0x9f4e 0x3089 0x3059", "hiiki= 0x8d14 0x5c53", "hizamazuku= 0x8dea 0x304f", "hadashi2= 0x8de3", "kakato= 0x8e35", "yoromeku= 0x8e4c 0x8e09 0x3081 0x304f", "uzukumaru= 0x8e72 0x308b", "tamerau= 0x8e8a 0x8e87 0x3046", "tsumazuku= 0x8e93 0x304f", "shitsuke= 0x8ebe", "yagate= 0x8ec8 0x3066", "hiku3= 0x8f62 0x304f", "totemo= 0x8fda 0x3082", "takumashii= 0x901e 0x3057 0x3044", "kuwaeru2= 0x929c 0x3048 0x308b", "hasami= 0x92cf", "ekubo= 0x9768", "buranko= 0x97a6 0x97c6", "unazuku= 0x9837 0x304f", "gyouza= 0x9903 0x5b50", "an2= 0x9921", "anko= 0x9921 0x3053", "udon= 0x9942 0x98e9", "damasu= 0x9a19 0x3059", "katsura= 0x9b18", "kirin= 0x9e92 0x9e9f", "nabiku= 0x9761 0x304f", "kabi2= 0x9ef4", "ibiki= 0x9f3e", ./mytool/kmap/Devanagari-Phonetic.kmap0000644000175000017500000001161407765355504020015 0ustar henrichhenrich// Phonetic Devanagari.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay //Devanagari letters "V=0x0901", // DEVANAGARI SIGN CANDRABINDU "M=0x0902", // DEVANAGARI SIGN ANUSVARA ":=0x0903", // DEVANAGARI SIGN VISARGA //"=0x0904", // DEVANAGARI LETTER "A=0x0905", // DEVANAGARI LETTER A "Aa=0x0906", // DEVANAGARI LETTER AA "I=0x0907", // DEVANAGARI LETTER I "Ii=0x0908", // DEVANAGARI LETTER II "U=0x0909", // DEVANAGARI LETTER U "Uu=0x090A", // DEVANAGARI LETTER UU "+=0x090B", // DEVANAGARI LETTER VOCALIC R "&=0x090C", // DEVANAGARI LETTER VOCALIC L "Q=0x090D", // DEVANAGARI LETTER CANDRA E "W=0x090E", // DEVANAGARI LETTER SHORT E "E=0x090F", // DEVANAGARI LETTER E "F=0x0910", // DEVANAGARI LETTER AI "Z=0x0911", // DEVANAGARI LETTER CANDRA O "X=0x0912", // DEVANAGARI LETTER SHORT O "O=0x0913", // DEVANAGARI LETTER O "Ou=0x0914", // DEVANAGARI LETTER AU "k=0x0915", // DEVANAGARI LETTER KA "K=0x0916", // DEVANAGARI LETTER KHA "g=0x0917", // DEVANAGARI LETTER GA "G=0x0918", // DEVANAGARI LETTER GHA "{=0x0919", // DEVANAGARI LETTER NGA "c=0x091A", // DEVANAGARI LETTER CA "C=0x091B", // DEVANAGARI LETTER CHA "j=0x091C", // DEVANAGARI LETTER JA "J=0x091D", // DEVANAGARI LETTER JHA "}=0x091E", // DEVANAGARI LETTER NYA "T=0x091F", // DEVANAGARI LETTER TTA "Th=0x0920", // DEVANAGARI LETTER TTHA "D=0x0921", // DEVANAGARI LETTER DDA "Dh=0x0922", // DEVANAGARI LETTER DDHA "N=0x0923", // DEVANAGARI LETTER NNA "t=0x0924", // DEVANAGARI LETTER TA "th=0x0925", // DEVANAGARI LETTER THA "d=0x0926", // DEVANAGARI LETTER DA "dh=0x0927", // DEVANAGARI LETTER DHA "n=0x0928", // DEVANAGARI LETTER NA //"n]=0x0929", // DEVANAGARI LETTER NNNA "p=0x092A", // DEVANAGARI LETTER PA "P=0x092B", // DEVANAGARI LETTER PHA "b=0x092C", // DEVANAGARI LETTER BA "B=0x092D", // DEVANAGARI LETTER BHA "m=0x092E", // DEVANAGARI LETTER MA "y=0x092F", // DEVANAGARI LETTER YA "r=0x0930", // DEVANAGARI LETTER RA //"R=0x0931", // DEVANAGARI LETTER RRA "l=0x0932", // DEVANAGARI LETTER LA "L=0x0933", // DEVANAGARI LETTER LLA //"L]=0x0934", // DEVANAGARI LETTER LLLA "v=0x0935", // DEVANAGARI LETTER VA "sh=0x0936", // DEVANAGARI LETTER SHA "S=0x0937", // DEVANAGARI LETTER SSA "s=0x0938", // DEVANAGARI LETTER SA "h=0x0939", // DEVANAGARI LETTER HA //"=0x093A", // DEVANAGARI LETTER //"=0x093B", // DEVANAGARI LETTER "]=0x093C", // DEVANAGARI SIGN NUKTA "FF=0x093D", // DEVANAGARI SIGN AVAGRAHA "a=0x093E", // DEVANAGARI VOWEL SIGN AA "i=0x093F", // DEVANAGARI VOWEL SIGN I "ii=0x0940", // DEVANAGARI VOWEL SIGN II "u=0x0941", // DEVANAGARI VOWEL SIGN U "uu=0x0942", // DEVANAGARI VOWEL SIGN UU "R=0x0943", // DEVANAGARI VOWEL SIGN VOCALIC R "<=0x0944", // DEVANAGARI VOWEL SIGN VOCALIC RR "q=0x0945", // DEVANAGARI VOWEL SIGN CANDRA E "w=0x0946", // DEVANAGARI VOWEL SIGN SHORT E "e=0x0947", // DEVANAGARI VOWEL SIGN E "ai=0x0948", // DEVANAGARI VOWEL SIGN AI "z=0x0949", // DEVANAGARI VOWEL SIGN CANDRA O "x=0x094A", // DEVANAGARI VOWEL SIGN SHART O "o=0x094B", // DEVANAGARI VOWEL SIGN O "ou=0x094C", // DEVANAGARI VOWEL SIGN OU "H=0x094D", // DEVANAGARI SIGN VIRMA //"=0x094E", // DEVANAGARI LETTER //"=0x094F", // DEVANAGARI LETTER "%=0x0950", // DEVANAGARI OM //"=0x0951", // DEVANAGARI STRESS SIGN UDATTA //"=0x0952", // DEVANAGARI STRESS SIGN ANUDATTA //"=0x0953", // DEVANAGARI GRAVE ACCENT //"=0x0954", // DEVANAGARI ACUTE ACCENT //"=0x0955", // DEVANAGARI LETTER //"=0x0956", // DEVANAGARI LETTER //"=0x0957", // DEVANAGARI LETTER //"k]=0x0958", // DEVANAGARI LETTER QA //"K]=0x0959", // DEVANAGARI LETTER KHHA //"g]=0x095A", // DEVANAGARI LETTER GHHA //"j]=0x095B", // DEVANAGARI LETTER ZA //"D]=0x095C", // DEVANAGARI LETTER DDDHA //"rh=0x095D", // DEVANAGARI LETTER RHA "f=0x095E", // DEVANAGARI LETTER FA //"y]=0x095F", // DEVANAGARI LETTER YYA "^=0x0960", // DEVANAGARI LETTER VOCALIC RR "*=0x0961", // DEVANAGARI LETTER VOCALIC LL "(=0x0962", // DEVANAGARI VOWEL SIGN VOCALIC L ")=0x0963", // DEVANAGARI VOWEL SIGN VOCALIC LL ">=0x0964", // DEVANAGARI DANDA //"||=0x0965", // DEVANAGARI DOUBLE DANDA "0x30=0x0966", // DEVANAGARI DIGIT ZERO "0x31=0x0967", // DEVANAGARI DIGIT ONE "0x32=0x0968", // DEVANAGARI DIGIT TWO "0x33=0x0969", // DEVANAGARI DIGIT THREE "0x34=0x096A", // DEVANAGARI DIGIT FOUR "0x35=0x096B", // DEVANAGARI DIGIT FIVE "0x36=0x096C", // DEVANAGARI DIGIT SIX "0x37=0x096D", // DEVANAGARI DIGIT SEVEN "0x38=0x096E", // DEVANAGARI DIGIT EIGHT "0x39=0x096F", // DEVANAGARI DIGIT NINE //".=0x0970", // DEVANAGARI ABBREVIATION SIGN //"=0x0971", // DEVANAGARI LETTER //"=0x0972", // DEVANAGARI LETTER //"=0x0973", // DEVANAGARI LETTER //"=0x0974", // DEVANAGARI LETTER //"=0x0975", // DEVANAGARI LETTER //"=0x0976", // DEVANAGARI LETTER //"=0x0977", // DEVANAGARI LETTER //"=0x0978", // DEVANAGARI LETTER //"=0x0979", // DEVANAGARI LETTER //"=0x097A", // DEVANAGARI LETTER //"=0x097B", // DEVANAGARI LETTER //"=0x097C", // DEVANAGARI LETTER //"=0x097D", // DEVANAGARI LETTER //"=0x097E", // DEVANAGARI LETTER //"=0x097F", // DEVANAGARI LETTER ./mytool/kmap/Baybayin.kmap0000644000175000017500000000166510227224026015725 0ustar henrichhenrich//Baybayin.kmap for the Unicode editor Yudit //used to input Tagalog unicode script //Roel P. Cantada //This keymap is released under the terms of the //GNU General Public License ver. 2 // //vowels (patinig) "a=0x1700", "A=0x1700", "O=0x1702", "U=0x1702", "E=0x1701", "I=0x1701", //consonants (katinig) "H=0x1711", "h=0x1711", "P=0x1709", "p=0x1709", "K=0x1703", "k=0x1703", "S=0x1710", "s=0x1710", "L=0x170E", "l=0x170E", "T=0x1706", "t=0x1706", "N=0x1708", "n=0x1708", "B=0x170A", "b=0x170A", "M=0x170B", "m=0x170B", "G=0x1704", "g=0x1704", "D=0x1707", "d=0x1707", "R=0x1707", "r=0x1707", "Y=0x170C", "y=0x170C", "J=0x1705", "j=0x1705", "W=0x170F", "w=0x170F", //vowel marks (kudlit) "o=0x1713", "u=0x1713", "e=0x1712", "i=0x1712", //vowel killer (birama) "V=0x1714", "v=0x1714", //punctuation marks //tagalog comma (pahinga) "F=0x1735", "f=0x1735", //tagalog period (wakas) "C=0x1736", "c=0x1736", ./mytool/kmap/Russian-Translit.kmap0000644000175000017500000001150407572774166017432 0ustar henrichhenrich // Transliteration input table for Russian keyboard. // // Composed by Eugene Crosser out of this one: // Cyrillic input table following the 1995 edition of international // standard ISO 9 Transliteration of Cyrillic characters: // Created with Emacs for Yudit and decorated with Yudit // © 1998-04-18 Roman Czyborra@cs.tu-berlin.de // Additions and improvements welcome // modified layout from the above by // Radovan Garabík 2001-08-08 // this uses form of transliteration familiar to speakers // of latin-script slavic languages, with some "enhancements" // and some compatibility with ЯВЕРТЫ layout // 0. Quotation marks and special symbols popular with Cyrillic "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "\"\"=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = // compatibility characters so that you can type them even with this keyboard "\"'=0x0027", // ' = APOSTROPHE "\"`=0x0060", // ` = GRAVE ACCENT // 1. General table for Slavic Cyrillic languages // First the full line of Capital letters for clarity: "A=0x0410", // А = CYRILLIC CAPITAL LETTER A "B=0x0411", // Б = CYRILLIC CAPITAL LETTER BE "V=0x0412", // В = CYRILLIC CAPITAL LETTER VE "W=0x0412", // В = CYRILLIC CAPITAL LETTER VE "G=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "D=0x0414", // Д = CYRILLIC CAPITAL LETTER DE "E=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "E:=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "ZH=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "Zh=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "Z=0x0417", // З = CYRILLIC CAPITAL LETTER ZE "I=0x0418", // И = CYRILLIC CAPITAL LETTER I "J=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "K=0x041A", // К = CYRILLIC CAPITAL LETTER KA "L=0x041B", // Л = CYRILLIC CAPITAL LETTER EL "M=0x041C", // М = CYRILLIC CAPITAL LETTER EM "N=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "O=0x041E", // О = CYRILLIC CAPITAL LETTER O "P=0x041F", // П = CYRILLIC CAPITAL LETTER PE "R=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "S=0x0421", // С = CYRILLIC CAPITAL LETTER ES "T=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "U=0x0423", // У = CYRILLIC CAPITAL LETTER U "F=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "X=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "C=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "CH=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "Ch=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "SH=0x0428", // Ш = CYRILLIC CAPITAL LETTER SHA "Sh=0x0428", // Ш = CYRILLIC CAPITAL LETTER SHA "SHCH=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCHA "Shch=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCHA "~H=0x042A", // Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "Y=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "\"H=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "EH=0x042D", // Э = CYRILLIC CAPITAL LETTER E "Eh=0x042D", // Э = CYRILLIC CAPITAL LETTER E "JU=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "Ju=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "JA=0x042F", // Я = CYRILLIC CAPITAL LETTER YA "Q=0x042F", // Я = CYRILLIC CAPITAL LETTER YA "Ja=0x042F", // Я = CYRILLIC CAPITAL LETTER YA // Then the same thing in lower case: "a=0x0430", // а = CYRILLIC SMALL LETTER A "b=0x0431", // б = CYRILLIC SMALL LETTER BE "v=0x0432", // в = CYRILLIC SMALL LETTER VE "w=0x0432", // в = CYRILLIC SMALL LETTER VE "g=0x0433", // г = CYRILLIC SMALL LETTER GHE "d=0x0434", // д = CYRILLIC SMALL LETTER DE "e=0x0435", // е = CYRILLIC SMALL LETTER IE "e:=0x0451", // ё = CYRILLIC SMALL LETTER IO "zh=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "z=0x0437", // з = CYRILLIC SMALL LETTER ZE "i=0x0438", // и = CYRILLIC SMALL LETTER I "j=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "k=0x043A", // к = CYRILLIC SMALL LETTER KA "l=0x043B", // л = CYRILLIC SMALL LETTER EL "m=0x043C", // м = CYRILLIC SMALL LETTER EM "n=0x043D", // н = CYRILLIC SMALL LETTER EN "o=0x043E", // о = CYRILLIC SMALL LETTER O "p=0x043F", // п = CYRILLIC SMALL LETTER PE "r=0x0440", // р = CYRILLIC SMALL LETTER ER "s=0x0441", // с = CYRILLIC SMALL LETTER ES "t=0x0442", // т = CYRILLIC SMALL LETTER TE "u=0x0443", // у = CYRILLIC SMALL LETTER U "f=0x0444", // ф = CYRILLIC SMALL LETTER EF "x=0x0445", // х = CYRILLIC SMALL LETTER HA "c=0x0446", // ц = CYRILLIC SMALL LETTER TSE "ch =0x0447", // ч = CYRILLIC SMALL LETTER CHE "sh=0x0448", // ш = CYRILLIC SMALL LETTER SHA "shch=0x0449", // щ = CYRILLIC SMALL LETTER SCHCHA "`=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "y=0x044B", // ы = CYRILLIC SMALL LETTER YERU "'=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN "eh=0x044D", // э = CYRILLIC SMALL LETTER E "ju=0x044E", // ю = CYRILLIC SMALL LETTER YU "ja=0x044F", // я = CYRILLIC SMALL LETTER YA "q=0x044F", // я = CYRILLIC SMALL LETTER YA ./mytool/kmap/Pali.kmap0000644000175000017500000000162510477774332015071 0ustar henrichhenrich// pali.kmap input method for yudit // 2006-08-29 jon bressie // // this kmap uses the commonly known velthius // method of writing pali diacritics as its base. // only two letters deviate from the method. // // layout was created for the dvorak keyboard. // this places all three types of 'n' in the top // left corner of the keyboard (',.). however, it is // still plenty comfortable enough for qwerty users. // modified 2006-09-06 jon bressie // added support for dicritics on capital letters. // unicode values assigned to the keystrokes "AA=0x0100", "aa=0x0101", "II=0x012A", "ii=0x012B", "UU=0x016A", "uu=0x016B", ",N=0x1E44", // velthius equivalent = "N ",n=0x1E45", // velthius equivalent = "n "'N=0x00D1", // vel. eq. = ~N "'n=0x00F1", // vel. eq. = ~n ".T=0x1E6C", ".t=0x1E6D", ".D=0x1E0C", ".d=0x1E0D", ".N=0x1E46", ".n=0x1E47", ".L=0x1E36", ".l=0x1E37", ".M=0x1E42", ".m=0x1E43", ./mytool/kmap/Gurmukhi.kmap0000644000175000017500000013571707670120450015774 0ustar henrichhenrich// Gurmukhi kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-01-26 // 2003-06-04 upgraded to Unicode 4.0 // Consonant + vowel/virama ".D=0x0a5c 0x0a4d", ".D.h=0x0a5c 0x0a4d 0x200c", ".DA=0x0a5c 0x0a3e", ".DI=0x0a5c 0x0a40", ".DU=0x0a5c 0x0a42", ".Da=0x0a5c", ".Daa=0x0a5c 0x0a3e", ".Dai=0x0a5c 0x0a48", ".Dau=0x0a5c 0x0a4c", ".De=0x0a5c 0x0a47", ".Di=0x0a5c 0x0a3f", ".Dii=0x0a5c 0x0a40", ".Do=0x0a5c 0x0a4b", ".Du=0x0a5c 0x0a41", ".Duu=0x0a5c 0x0a42", "Ch=0x0a1b 0x0a4d", "Ch.h=0x0a1b 0x0a4d 0x200c", "ChA=0x0a1b 0x0a3e", "ChI=0x0a1b 0x0a40", "ChU=0x0a1b 0x0a42", "Cha=0x0a1b", "Chaa=0x0a1b 0x0a3e", "Chai=0x0a1b 0x0a48", "Chau=0x0a1b 0x0a4c", "Che=0x0a1b 0x0a47", "Chi=0x0a1b 0x0a3f", "Chii=0x0a1b 0x0a40", "Cho=0x0a1b 0x0a4b", "Chu=0x0a1b 0x0a41", "Chuu=0x0a1b 0x0a42", "D=0x0a21 0x0a4d", "D.h=0x0a21 0x0a4d 0x200c", "DA=0x0a21 0x0a3e", "DI=0x0a21 0x0a40", "DU=0x0a21 0x0a42", "Da=0x0a21", "Daa=0x0a21 0x0a3e", "Dai=0x0a21 0x0a48", "Dau=0x0a21 0x0a4c", "De=0x0a21 0x0a47", "Di=0x0a21 0x0a3f", "Dii=0x0a21 0x0a40", "Do=0x0a21 0x0a4b", "Du=0x0a21 0x0a41", "Duu=0x0a21 0x0a42", "Dh=0x0a22 0x0a4d", "Dh.h=0x0a22 0x0a4d 0x200c", "DhA=0x0a22 0x0a3e", "DhI=0x0a22 0x0a40", "DhU=0x0a22 0x0a42", "Dha=0x0a22", "Dhaa=0x0a22 0x0a3e", "Dhai=0x0a22 0x0a48", "Dhau=0x0a22 0x0a4c", "Dhe=0x0a22 0x0a47", "Dhi=0x0a22 0x0a3f", "Dhii=0x0a22 0x0a40", "Dho=0x0a22 0x0a4b", "Dhu=0x0a22 0x0a41", "Dhuu=0x0a22 0x0a42", "G=0x0a5a 0x0a4d", "G.h=0x0a5a 0x0a4d 0x200c", "GA=0x0a5a 0x0a3e", "GI=0x0a5a 0x0a40", "GU=0x0a5a 0x0a42", "Ga=0x0a5a", "Gaa=0x0a5a 0x0a3e", "Gai=0x0a5a 0x0a48", "Gau=0x0a5a 0x0a4c", "Ge=0x0a5a 0x0a47", "Gi=0x0a5a 0x0a3f", "Gii=0x0a5a 0x0a40", "Go=0x0a5a 0x0a4b", "Gu=0x0a5a 0x0a41", "Guu=0x0a5a 0x0a42", "GY=0x0a1c 0x0a4d 0x0a1e 0x0a4d", "GY.h=0x0a1c 0x0a4d 0x0a1e 0x0a4d 0x200c", "GYA=0x0a1c 0x0a4d 0x0a1e 0x0a3e", "GYI=0x0a1c 0x0a4d 0x0a1e 0x0a40", "GYU=0x0a1c 0x0a4d 0x0a1e 0x0a42", "GYa=0x0a1c 0x0a4d 0x0a1e", "GYaa=0x0a1c 0x0a4d 0x0a1e 0x0a3e", "GYai=0x0a1c 0x0a4d 0x0a1e 0x0a48", "GYau=0x0a1c 0x0a4d 0x0a1e 0x0a4c", "GYe=0x0a1c 0x0a4d 0x0a1e 0x0a47", "GYi=0x0a1c 0x0a4d 0x0a1e 0x0a3f", "GYii=0x0a1c 0x0a4d 0x0a1e 0x0a40", "GYo=0x0a1c 0x0a4d 0x0a1e 0x0a4b", "GYu=0x0a1c 0x0a4d 0x0a1e 0x0a41", "GYuu=0x0a1c 0x0a4d 0x0a1e 0x0a42", "J=0x0a5b 0x0a4d", "J.h=0x0a5b 0x0a4d 0x200c", "JA=0x0a5b 0x0a3e", "JI=0x0a5b 0x0a40", "JU=0x0a5b 0x0a42", "Ja=0x0a5b", "Jaa=0x0a5b 0x0a3e", "Jai=0x0a5b 0x0a48", "Jau=0x0a5b 0x0a4c", "Je=0x0a5b 0x0a47", "Ji=0x0a5b 0x0a3f", "Jii=0x0a5b 0x0a40", "Jo=0x0a5b 0x0a4b", "Ju=0x0a5b 0x0a41", "Juu=0x0a5b 0x0a42", "JN=0x0a1e 0x0a4d", "JN.h=0x0a1e 0x0a4d 0x200c", "JNA=0x0a1e 0x0a3e", "JNI=0x0a1e 0x0a40", "JNU=0x0a1e 0x0a42", "JNa=0x0a1e", "JNaa=0x0a1e 0x0a3e", "JNai=0x0a1e 0x0a48", "JNau=0x0a1e 0x0a4c", "JNe=0x0a1e 0x0a47", "JNi=0x0a1e 0x0a3f", "JNii=0x0a1e 0x0a40", "JNo=0x0a1e 0x0a4b", "JNu=0x0a1e 0x0a41", "JNuu=0x0a1e 0x0a42", "K=0x0a59 0x0a4d", "K.h=0x0a59 0x0a4d 0x200c", "KA=0x0a59 0x0a3e", "KI=0x0a59 0x0a40", "KU=0x0a59 0x0a42", "Ka=0x0a59", "Kaa=0x0a59 0x0a3e", "Kai=0x0a59 0x0a48", "Kau=0x0a59 0x0a4c", "Ke=0x0a59 0x0a47", "Ki=0x0a59 0x0a3f", "Kii=0x0a59 0x0a40", "Ko=0x0a59 0x0a4b", "Ku=0x0a59 0x0a41", "Kuu=0x0a59 0x0a42", "L=0x0a33 0x0a4d", "L.h=0x0a33 0x0a4d 0x200c", "LA=0x0a33 0x0a3e", "LI=0x0a33 0x0a40", "LU=0x0a33 0x0a42", "La=0x0a33", "Laa=0x0a33 0x0a3e", "Lai=0x0a33 0x0a48", "Lau=0x0a33 0x0a4c", "Le=0x0a33 0x0a47", "Li=0x0a33 0x0a3f", "Lii=0x0a33 0x0a40", "Lo=0x0a33 0x0a4b", "Lu=0x0a33 0x0a41", "Luu=0x0a33 0x0a42", "N=0x0a23 0x0a4d", "N.h=0x0a23 0x0a4d 0x200c", "NA=0x0a23 0x0a3e", "NI=0x0a23 0x0a40", "NU=0x0a23 0x0a42", "Na=0x0a23", "Naa=0x0a23 0x0a3e", "Nai=0x0a23 0x0a48", "Nau=0x0a23 0x0a4c", "Ne=0x0a23 0x0a47", "Ni=0x0a23 0x0a3f", "Nii=0x0a23 0x0a40", "No=0x0a23 0x0a4b", "Nu=0x0a23 0x0a41", "Nuu=0x0a23 0x0a42", "N^=0x0a19 0x0a4d", "N^.h=0x0a19 0x0a4d 0x200c", "N^A=0x0a19 0x0a3e", "N^I=0x0a19 0x0a40", "N^U=0x0a19 0x0a42", "N^a=0x0a19", "N^aa=0x0a19 0x0a3e", "N^ai=0x0a19 0x0a48", "N^au=0x0a19 0x0a4c", "N^e=0x0a19 0x0a47", "N^i=0x0a19 0x0a3f", "N^ii=0x0a19 0x0a40", "N^o=0x0a19 0x0a4b", "N^u=0x0a19 0x0a41", "N^uu=0x0a19 0x0a42", "T=0x0a1f 0x0a4d", "T.h=0x0a1f 0x0a4d 0x200c", "TA=0x0a1f 0x0a3e", "TI=0x0a1f 0x0a40", "TU=0x0a1f 0x0a42", "Ta=0x0a1f", "Taa=0x0a1f 0x0a3e", "Tai=0x0a1f 0x0a48", "Tau=0x0a1f 0x0a4c", "Te=0x0a1f 0x0a47", "Ti=0x0a1f 0x0a3f", "Tii=0x0a1f 0x0a40", "To=0x0a1f 0x0a4b", "Tu=0x0a1f 0x0a41", "Tuu=0x0a1f 0x0a42", "Th=0x0a20 0x0a4d", "Th.h=0x0a20 0x0a4d 0x200c", "ThA=0x0a20 0x0a3e", "ThI=0x0a20 0x0a40", "ThU=0x0a20 0x0a42", "Tha=0x0a20", "Thaa=0x0a20 0x0a3e", "Thai=0x0a20 0x0a48", "Thau=0x0a20 0x0a4c", "The=0x0a20 0x0a47", "Thi=0x0a20 0x0a3f", "Thii=0x0a20 0x0a40", "Tho=0x0a20 0x0a4b", "Thu=0x0a20 0x0a41", "Thuu=0x0a20 0x0a42", "b=0x0a2c 0x0a4d", "b.h=0x0a2c 0x0a4d 0x200c", "bA=0x0a2c 0x0a3e", "bI=0x0a2c 0x0a40", "bU=0x0a2c 0x0a42", "ba=0x0a2c", "baa=0x0a2c 0x0a3e", "bai=0x0a2c 0x0a48", "bau=0x0a2c 0x0a4c", "be=0x0a2c 0x0a47", "bi=0x0a2c 0x0a3f", "bii=0x0a2c 0x0a40", "bo=0x0a2c 0x0a4b", "bu=0x0a2c 0x0a41", "buu=0x0a2c 0x0a42", "bh=0x0a2d 0x0a4d", "bh.h=0x0a2d 0x0a4d 0x200c", "bhA=0x0a2d 0x0a3e", "bhI=0x0a2d 0x0a40", "bhU=0x0a2d 0x0a42", "bha=0x0a2d", "bhaa=0x0a2d 0x0a3e", "bhai=0x0a2d 0x0a48", "bhau=0x0a2d 0x0a4c", "bhe=0x0a2d 0x0a47", "bhi=0x0a2d 0x0a3f", "bhii=0x0a2d 0x0a40", "bho=0x0a2d 0x0a4b", "bhu=0x0a2d 0x0a41", "bhuu=0x0a2d 0x0a42", "c=0x0a1a 0x0a4d", "c.h=0x0a1a 0x0a4d 0x200c", "cA=0x0a1a 0x0a3e", "cI=0x0a1a 0x0a40", "cU=0x0a1a 0x0a42", "ca=0x0a1a", "caa=0x0a1a 0x0a3e", "cai=0x0a1a 0x0a48", "cau=0x0a1a 0x0a4c", "ce=0x0a1a 0x0a47", "ci=0x0a1a 0x0a3f", "cii=0x0a1a 0x0a40", "co=0x0a1a 0x0a4b", "cu=0x0a1a 0x0a41", "cuu=0x0a1a 0x0a42", "ch=0x0a1b 0x0a4d", "ch.h=0x0a1b 0x0a4d 0x200c", "chA=0x0a1b 0x0a3e", "chI=0x0a1b 0x0a40", "chU=0x0a1b 0x0a42", "cha=0x0a1b", "chaa=0x0a1b 0x0a3e", "chai=0x0a1b 0x0a48", "chau=0x0a1b 0x0a4c", "che=0x0a1b 0x0a47", "chi=0x0a1b 0x0a3f", "chii=0x0a1b 0x0a40", "cho=0x0a1b 0x0a4b", "chu=0x0a1b 0x0a41", "chuu=0x0a1b 0x0a42", "d=0x0a26 0x0a4d", "d.h=0x0a26 0x0a4d 0x200c", "dA=0x0a26 0x0a3e", "dI=0x0a26 0x0a40", "dU=0x0a26 0x0a42", "da=0x0a26", "daa=0x0a26 0x0a3e", "dai=0x0a26 0x0a48", "dau=0x0a26 0x0a4c", "de=0x0a26 0x0a47", "di=0x0a26 0x0a3f", "dii=0x0a26 0x0a40", "do=0x0a26 0x0a4b", "du=0x0a26 0x0a41", "duu=0x0a26 0x0a42", "dh=0x0a27 0x0a4d", "dh.h=0x0a27 0x0a4d 0x200c", "dhA=0x0a27 0x0a3e", "dhI=0x0a27 0x0a40", "dhU=0x0a27 0x0a42", "dha=0x0a27", "dhaa=0x0a27 0x0a3e", "dhai=0x0a27 0x0a48", "dhau=0x0a27 0x0a4c", "dhe=0x0a27 0x0a47", "dhi=0x0a27 0x0a3f", "dhii=0x0a27 0x0a40", "dho=0x0a27 0x0a4b", "dhu=0x0a27 0x0a41", "dhuu=0x0a27 0x0a42", "dny=0x0a1c 0x0a4d 0x0a1e 0x0a4d", "dny.h=0x0a1c 0x0a4d 0x0a1e 0x0a4d 0x200c", "dnyA=0x0a1c 0x0a4d 0x0a1e 0x0a3e", "dnyI=0x0a1c 0x0a4d 0x0a1e 0x0a40", "dnyU=0x0a1c 0x0a4d 0x0a1e 0x0a42", "dnya=0x0a1c 0x0a4d 0x0a1e", "dnyaa=0x0a1c 0x0a4d 0x0a1e 0x0a3e", "dnyai=0x0a1c 0x0a4d 0x0a1e 0x0a48", "dnyau=0x0a1c 0x0a4d 0x0a1e 0x0a4c", "dnye=0x0a1c 0x0a4d 0x0a1e 0x0a47", "dnyi=0x0a1c 0x0a4d 0x0a1e 0x0a3f", "dnyii=0x0a1c 0x0a4d 0x0a1e 0x0a40", "dnyo=0x0a1c 0x0a4d 0x0a1e 0x0a4b", "dnyu=0x0a1c 0x0a4d 0x0a1e 0x0a41", "dnyuu=0x0a1c 0x0a4d 0x0a1e 0x0a42", "f=0x0a5e 0x0a4d", "f.h=0x0a5e 0x0a4d 0x200c", "fA=0x0a5e 0x0a3e", "fI=0x0a5e 0x0a40", "fU=0x0a5e 0x0a42", "fa=0x0a5e", "faa=0x0a5e 0x0a3e", "fai=0x0a5e 0x0a48", "fau=0x0a5e 0x0a4c", "fe=0x0a5e 0x0a47", "fi=0x0a5e 0x0a3f", "fii=0x0a5e 0x0a40", "fo=0x0a5e 0x0a4b", "fu=0x0a5e 0x0a41", "fuu=0x0a5e 0x0a42", "g=0x0a17 0x0a4d", "g.h=0x0a17 0x0a4d 0x200c", "gA=0x0a17 0x0a3e", "gI=0x0a17 0x0a40", "gU=0x0a17 0x0a42", "ga=0x0a17", "gaa=0x0a17 0x0a3e", "gai=0x0a17 0x0a48", "gau=0x0a17 0x0a4c", "ge=0x0a17 0x0a47", "gi=0x0a17 0x0a3f", "gii=0x0a17 0x0a40", "go=0x0a17 0x0a4b", "gu=0x0a17 0x0a41", "guu=0x0a17 0x0a42", "gh=0x0a18 0x0a4d", "gh.h=0x0a18 0x0a4d 0x200c", "ghA=0x0a18 0x0a3e", "ghI=0x0a18 0x0a40", "ghU=0x0a18 0x0a42", "gha=0x0a18", "ghaa=0x0a18 0x0a3e", "ghai=0x0a18 0x0a48", "ghau=0x0a18 0x0a4c", "ghe=0x0a18 0x0a47", "ghi=0x0a18 0x0a3f", "ghii=0x0a18 0x0a40", "gho=0x0a18 0x0a4b", "ghu=0x0a18 0x0a41", "ghuu=0x0a18 0x0a42", "h=0x0a39 0x0a4d", "h.h=0x0a39 0x0a4d 0x200c", "hA=0x0a39 0x0a3e", "hI=0x0a39 0x0a40", "hU=0x0a39 0x0a42", "ha=0x0a39", "haa=0x0a39 0x0a3e", "hai=0x0a39 0x0a48", "hau=0x0a39 0x0a4c", "he=0x0a39 0x0a47", "hi=0x0a39 0x0a3f", "hii=0x0a39 0x0a40", "ho=0x0a39 0x0a4b", "hu=0x0a39 0x0a41", "huu=0x0a39 0x0a42", "j=0x0a1c 0x0a4d", "j.h=0x0a1c 0x0a4d 0x200c", "jA=0x0a1c 0x0a3e", "jI=0x0a1c 0x0a40", "jU=0x0a1c 0x0a42", "ja=0x0a1c", "jaa=0x0a1c 0x0a3e", "jai=0x0a1c 0x0a48", "jau=0x0a1c 0x0a4c", "je=0x0a1c 0x0a47", "ji=0x0a1c 0x0a3f", "jii=0x0a1c 0x0a40", "jo=0x0a1c 0x0a4b", "ju=0x0a1c 0x0a41", "juu=0x0a1c 0x0a42", "jh=0x0a1d 0x0a4d", "jh.h=0x0a1d 0x0a4d 0x200c", "jhA=0x0a1d 0x0a3e", "jhI=0x0a1d 0x0a40", "jhU=0x0a1d 0x0a42", "jha=0x0a1d", "jhaa=0x0a1d 0x0a3e", "jhai=0x0a1d 0x0a48", "jhau=0x0a1d 0x0a4c", "jhe=0x0a1d 0x0a47", "jhi=0x0a1d 0x0a3f", "jhii=0x0a1d 0x0a40", "jho=0x0a1d 0x0a4b", "jhu=0x0a1d 0x0a41", "jhuu=0x0a1d 0x0a42", "k=0x0a15 0x0a4d", "k.h=0x0a15 0x0a4d 0x200c", "kA=0x0a15 0x0a3e", "kI=0x0a15 0x0a40", "kU=0x0a15 0x0a42", "ka=0x0a15", "kaa=0x0a15 0x0a3e", "kai=0x0a15 0x0a48", "kau=0x0a15 0x0a4c", "ke=0x0a15 0x0a47", "ki=0x0a15 0x0a3f", "kii=0x0a15 0x0a40", "ko=0x0a15 0x0a4b", "ku=0x0a15 0x0a41", "kuu=0x0a15 0x0a42", "kh=0x0a16 0x0a4d", "kh.h=0x0a16 0x0a4d 0x200c", "khA=0x0a16 0x0a3e", "khI=0x0a16 0x0a40", "khU=0x0a16 0x0a42", "kha=0x0a16", "khaa=0x0a16 0x0a3e", "khai=0x0a16 0x0a48", "khau=0x0a16 0x0a4c", "khe=0x0a16 0x0a47", "khi=0x0a16 0x0a3f", "khii=0x0a16 0x0a40", "kho=0x0a16 0x0a4b", "khu=0x0a16 0x0a41", "khuu=0x0a16 0x0a42", "l=0x0a32 0x0a4d", "l.h=0x0a32 0x0a4d 0x200c", "lA=0x0a32 0x0a3e", "lI=0x0a32 0x0a40", "lU=0x0a32 0x0a42", "la=0x0a32", "laa=0x0a32 0x0a3e", "lai=0x0a32 0x0a48", "lau=0x0a32 0x0a4c", "le=0x0a32 0x0a47", "li=0x0a32 0x0a3f", "lii=0x0a32 0x0a40", "lo=0x0a32 0x0a4b", "lu=0x0a32 0x0a41", "luu=0x0a32 0x0a42", "ld=0x0a33 0x0a4d", "ld.h=0x0a33 0x0a4d 0x200c", "ldA=0x0a33 0x0a3e", "ldI=0x0a33 0x0a40", "ldU=0x0a33 0x0a42", "lda=0x0a33", "ldaa=0x0a33 0x0a3e", "ldai=0x0a33 0x0a48", "ldau=0x0a33 0x0a4c", "lde=0x0a33 0x0a47", "ldi=0x0a33 0x0a3f", "ldii=0x0a33 0x0a40", "ldo=0x0a33 0x0a4b", "ldu=0x0a33 0x0a41", "lduu=0x0a33 0x0a42", "m=0x0a2e 0x0a4d", "m.h=0x0a2e 0x0a4d 0x200c", "mA=0x0a2e 0x0a3e", "mI=0x0a2e 0x0a40", "mU=0x0a2e 0x0a42", "ma=0x0a2e", "maa=0x0a2e 0x0a3e", "mai=0x0a2e 0x0a48", "mau=0x0a2e 0x0a4c", "me=0x0a2e 0x0a47", "mi=0x0a2e 0x0a3f", "mii=0x0a2e 0x0a40", "mo=0x0a2e 0x0a4b", "mu=0x0a2e 0x0a41", "muu=0x0a2e 0x0a42", "n=0x0a28 0x0a4d", "n.h=0x0a28 0x0a4d 0x200c", "nA=0x0a28 0x0a3e", "nI=0x0a28 0x0a40", "nU=0x0a28 0x0a42", "na=0x0a28", "naa=0x0a28 0x0a3e", "nai=0x0a28 0x0a48", "nau=0x0a28 0x0a4c", "ne=0x0a28 0x0a47", "ni=0x0a28 0x0a3f", "nii=0x0a28 0x0a40", "no=0x0a28 0x0a4b", "nu=0x0a28 0x0a41", "nuu=0x0a28 0x0a42", "p=0x0a2a 0x0a4d", "p.h=0x0a2a 0x0a4d 0x200c", "pA=0x0a2a 0x0a3e", "pI=0x0a2a 0x0a40", "pU=0x0a2a 0x0a42", "pa=0x0a2a", "paa=0x0a2a 0x0a3e", "pai=0x0a2a 0x0a48", "pau=0x0a2a 0x0a4c", "pe=0x0a2a 0x0a47", "pi=0x0a2a 0x0a3f", "pii=0x0a2a 0x0a40", "po=0x0a2a 0x0a4b", "pu=0x0a2a 0x0a41", "puu=0x0a2a 0x0a42", "ph=0x0a2b 0x0a4d", "ph.h=0x0a2b 0x0a4d 0x200c", "phA=0x0a2b 0x0a3e", "phI=0x0a2b 0x0a40", "phU=0x0a2b 0x0a42", "pha=0x0a2b", "phaa=0x0a2b 0x0a3e", "phai=0x0a2b 0x0a48", "phau=0x0a2b 0x0a4c", "phe=0x0a2b 0x0a47", "phi=0x0a2b 0x0a3f", "phii=0x0a2b 0x0a40", "pho=0x0a2b 0x0a4b", "phu=0x0a2b 0x0a41", "phuu=0x0a2b 0x0a42", "r=0x0a30 0x0a4d", "r.h=0x0a30 0x0a4d 0x200c", "rA=0x0a30 0x0a3e", "rI=0x0a30 0x0a40", "rU=0x0a30 0x0a42", "ra=0x0a30", "raa=0x0a30 0x0a3e", "rai=0x0a30 0x0a48", "rau=0x0a30 0x0a4c", "re=0x0a30 0x0a47", "ri=0x0a30 0x0a3f", "rii=0x0a30 0x0a40", "ro=0x0a30 0x0a4b", "ru=0x0a30 0x0a41", "ruu=0x0a30 0x0a42", "s=0x0a38 0x0a4d", "s.h=0x0a38 0x0a4d 0x200c", "sA=0x0a38 0x0a3e", "sI=0x0a38 0x0a40", "sU=0x0a38 0x0a42", "sa=0x0a38", "saa=0x0a38 0x0a3e", "sai=0x0a38 0x0a48", "sau=0x0a38 0x0a4c", "se=0x0a38 0x0a47", "si=0x0a38 0x0a3f", "sii=0x0a38 0x0a40", "so=0x0a38 0x0a4b", "su=0x0a38 0x0a41", "suu=0x0a38 0x0a42", "sh=0x0a36 0x0a4d", "sh.h=0x0a36 0x0a4d 0x200c", "shA=0x0a36 0x0a3e", "shI=0x0a36 0x0a40", "shU=0x0a36 0x0a42", "sha=0x0a36", "shaa=0x0a36 0x0a3e", "shai=0x0a36 0x0a48", "shau=0x0a36 0x0a4c", "she=0x0a36 0x0a47", "shi=0x0a36 0x0a3f", "shii=0x0a36 0x0a40", "sho=0x0a36 0x0a4b", "shu=0x0a36 0x0a41", "shuu=0x0a36 0x0a42", "t=0x0a24 0x0a4d", "t.h=0x0a24 0x0a4d 0x200c", "tA=0x0a24 0x0a3e", "tI=0x0a24 0x0a40", "tU=0x0a24 0x0a42", "ta=0x0a24", "taa=0x0a24 0x0a3e", "tai=0x0a24 0x0a48", "tau=0x0a24 0x0a4c", "te=0x0a24 0x0a47", "ti=0x0a24 0x0a3f", "tii=0x0a24 0x0a40", "to=0x0a24 0x0a4b", "tu=0x0a24 0x0a41", "tuu=0x0a24 0x0a42", "th=0x0a25 0x0a4d", "th.h=0x0a25 0x0a4d 0x200c", "thA=0x0a25 0x0a3e", "thI=0x0a25 0x0a40", "thU=0x0a25 0x0a42", "tha=0x0a25", "thaa=0x0a25 0x0a3e", "thai=0x0a25 0x0a48", "thau=0x0a25 0x0a4c", "the=0x0a25 0x0a47", "thi=0x0a25 0x0a3f", "thii=0x0a25 0x0a40", "tho=0x0a25 0x0a4b", "thu=0x0a25 0x0a41", "thuu=0x0a25 0x0a42", "v=0x0a35 0x0a4d", "v.h=0x0a35 0x0a4d 0x200c", "vA=0x0a35 0x0a3e", "vI=0x0a35 0x0a40", "vU=0x0a35 0x0a42", "va=0x0a35", "vaa=0x0a35 0x0a3e", "vai=0x0a35 0x0a48", "vau=0x0a35 0x0a4c", "ve=0x0a35 0x0a47", "vi=0x0a35 0x0a3f", "vii=0x0a35 0x0a40", "vo=0x0a35 0x0a4b", "vu=0x0a35 0x0a41", "vuu=0x0a35 0x0a42", "w=0x0a35 0x0a4d", "w.h=0x0a35 0x0a4d 0x200c", "wA=0x0a35 0x0a3e", "wI=0x0a35 0x0a40", "wU=0x0a35 0x0a42", "wa=0x0a35", "waa=0x0a35 0x0a3e", "wai=0x0a35 0x0a48", "wau=0x0a35 0x0a4c", "we=0x0a35 0x0a47", "wi=0x0a35 0x0a3f", "wii=0x0a35 0x0a40", "wo=0x0a35 0x0a4b", "wu=0x0a35 0x0a41", "wuu=0x0a35 0x0a42", "y=0x0a2f 0x0a4d", "y.h=0x0a2f 0x0a4d 0x200c", "yA=0x0a2f 0x0a3e", "yI=0x0a2f 0x0a40", "yU=0x0a2f 0x0a42", "ya=0x0a2f", "yaa=0x0a2f 0x0a3e", "yai=0x0a2f 0x0a48", "yau=0x0a2f 0x0a4c", "ye=0x0a2f 0x0a47", "yi=0x0a2f 0x0a3f", "yii=0x0a2f 0x0a40", "yo=0x0a2f 0x0a4b", "yu=0x0a2f 0x0a41", "yuu=0x0a2f 0x0a42", "z=0x0a5b 0x0a4d", "z.h=0x0a5b 0x0a4d 0x200c", "zA=0x0a5b 0x0a3e", "zI=0x0a5b 0x0a40", "zU=0x0a5b 0x0a42", "za=0x0a5b", "zaa=0x0a5b 0x0a3e", "zai=0x0a5b 0x0a48", "zau=0x0a5b 0x0a4c", "ze=0x0a5b 0x0a47", "zi=0x0a5b 0x0a3f", "zii=0x0a5b 0x0a40", "zo=0x0a5b 0x0a4b", "zu=0x0a5b 0x0a41", "zuu=0x0a5b 0x0a42", "~N=0x0a19 0x0a4d", "~N.h=0x0a19 0x0a4d 0x200c", "~NA=0x0a19 0x0a3e", "~NI=0x0a19 0x0a40", "~NU=0x0a19 0x0a42", "~Na=0x0a19", "~Naa=0x0a19 0x0a3e", "~Nai=0x0a19 0x0a48", "~Nau=0x0a19 0x0a4c", "~Ne=0x0a19 0x0a47", "~Ni=0x0a19 0x0a3f", "~Nii=0x0a19 0x0a40", "~No=0x0a19 0x0a4b", "~Nu=0x0a19 0x0a41", "~Nuu=0x0a19 0x0a42", "~n=0x0a1e 0x0a4d", "~n.h=0x0a1e 0x0a4d 0x200c", "~nA=0x0a1e 0x0a3e", "~nI=0x0a1e 0x0a40", "~nU=0x0a1e 0x0a42", "~na=0x0a1e", "~naa=0x0a1e 0x0a3e", "~nai=0x0a1e 0x0a48", "~nau=0x0a1e 0x0a4c", "~ne=0x0a1e 0x0a47", "~ni=0x0a1e 0x0a3f", "~nii=0x0a1e 0x0a40", "~no=0x0a1e 0x0a4b", "~nu=0x0a1e 0x0a41", "~nuu=0x0a1e 0x0a42", // Double consonant + vowel/virama "cCh=0x0a71 0x0a1b 0x0a4d", "cCh.h=0x0a71 0x0a1b 0x0a4d 0x200c", "cChA=0x0a71 0x0a1b 0x0a3e", "cChI=0x0a71 0x0a1b 0x0a40", "cChU=0x0a71 0x0a1b 0x0a42", "cCha=0x0a71 0x0a1b", "cChaa=0x0a71 0x0a1b 0x0a3e", "cChai=0x0a71 0x0a1b 0x0a48", "cChau=0x0a71 0x0a1b 0x0a4c", "cChe=0x0a71 0x0a1b 0x0a47", "cChi=0x0a71 0x0a1b 0x0a3f", "cChii=0x0a71 0x0a1b 0x0a40", "cCho=0x0a71 0x0a1b 0x0a4b", "cChu=0x0a71 0x0a1b 0x0a41", "cChuu=0x0a71 0x0a1b 0x0a42", "DD=0x0a71 0x0a21 0x0a4d", "DD.h=0x0a71 0x0a21 0x0a4d 0x200c", "DDA=0x0a71 0x0a21 0x0a3e", "DDI=0x0a71 0x0a21 0x0a40", "DDU=0x0a71 0x0a21 0x0a42", "DDa=0x0a71 0x0a21", "DDaa=0x0a71 0x0a21 0x0a3e", "DDai=0x0a71 0x0a21 0x0a48", "DDau=0x0a71 0x0a21 0x0a4c", "DDe=0x0a71 0x0a21 0x0a47", "DDi=0x0a71 0x0a21 0x0a3f", "DDii=0x0a71 0x0a21 0x0a40", "DDo=0x0a71 0x0a21 0x0a4b", "DDu=0x0a71 0x0a21 0x0a41", "DDuu=0x0a71 0x0a21 0x0a42", "DDh=0x0a71 0x0a22 0x0a4d", "DDh.h=0x0a71 0x0a22 0x0a4d 0x200c", "DDhA=0x0a71 0x0a22 0x0a3e", "DDhI=0x0a71 0x0a22 0x0a40", "DDhU=0x0a71 0x0a22 0x0a42", "DDha=0x0a71 0x0a22", "DDhaa=0x0a71 0x0a22 0x0a3e", "DDhai=0x0a71 0x0a22 0x0a48", "DDhau=0x0a71 0x0a22 0x0a4c", "DDhe=0x0a71 0x0a22 0x0a47", "DDhi=0x0a71 0x0a22 0x0a3f", "DDhii=0x0a71 0x0a22 0x0a40", "DDho=0x0a71 0x0a22 0x0a4b", "DDhu=0x0a71 0x0a22 0x0a41", "DDhuu=0x0a71 0x0a22 0x0a42", "TT=0x0a71 0x0a1f 0x0a4d", "TT.h=0x0a71 0x0a1f 0x0a4d 0x200c", "TTA=0x0a71 0x0a1f 0x0a3e", "TTI=0x0a71 0x0a1f 0x0a40", "TTU=0x0a71 0x0a1f 0x0a42", "TTa=0x0a71 0x0a1f", "TTaa=0x0a71 0x0a1f 0x0a3e", "TTai=0x0a71 0x0a1f 0x0a48", "TTau=0x0a71 0x0a1f 0x0a4c", "TTe=0x0a71 0x0a1f 0x0a47", "TTi=0x0a71 0x0a1f 0x0a3f", "TTii=0x0a71 0x0a1f 0x0a40", "TTo=0x0a71 0x0a1f 0x0a4b", "TTu=0x0a71 0x0a1f 0x0a41", "TTuu=0x0a71 0x0a1f 0x0a42", "TTh=0x0a71 0x0a20 0x0a4d", "TTh.h=0x0a71 0x0a20 0x0a4d 0x200c", "TThA=0x0a71 0x0a20 0x0a3e", "TThI=0x0a71 0x0a20 0x0a40", "TThU=0x0a71 0x0a20 0x0a42", "TTha=0x0a71 0x0a20", "TThaa=0x0a71 0x0a20 0x0a3e", "TThai=0x0a71 0x0a20 0x0a48", "TThau=0x0a71 0x0a20 0x0a4c", "TThe=0x0a71 0x0a20 0x0a47", "TThi=0x0a71 0x0a20 0x0a3f", "TThii=0x0a71 0x0a20 0x0a40", "TTho=0x0a71 0x0a20 0x0a4b", "TThu=0x0a71 0x0a20 0x0a41", "TThuu=0x0a71 0x0a20 0x0a42", "bb=0x0a71 0x0a2c 0x0a4d", "bb.h=0x0a71 0x0a2c 0x0a4d 0x200c", "bbA=0x0a71 0x0a2c 0x0a3e", "bbI=0x0a71 0x0a2c 0x0a40", "bbU=0x0a71 0x0a2c 0x0a42", "bba=0x0a71 0x0a2c", "bbaa=0x0a71 0x0a2c 0x0a3e", "bbai=0x0a71 0x0a2c 0x0a48", "bbau=0x0a71 0x0a2c 0x0a4c", "bbe=0x0a71 0x0a2c 0x0a47", "bbi=0x0a71 0x0a2c 0x0a3f", "bbii=0x0a71 0x0a2c 0x0a40", "bbo=0x0a71 0x0a2c 0x0a4b", "bbu=0x0a71 0x0a2c 0x0a41", "bbuu=0x0a71 0x0a2c 0x0a42", "bbh=0x0a71 0x0a2d 0x0a4d", "bbh.h=0x0a71 0x0a2d 0x0a4d 0x200c", "bbhA=0x0a71 0x0a2d 0x0a3e", "bbhI=0x0a71 0x0a2d 0x0a40", "bbhU=0x0a71 0x0a2d 0x0a42", "bbha=0x0a71 0x0a2d", "bbhaa=0x0a71 0x0a2d 0x0a3e", "bbhai=0x0a71 0x0a2d 0x0a48", "bbhau=0x0a71 0x0a2d 0x0a4c", "bbhe=0x0a71 0x0a2d 0x0a47", "bbhi=0x0a71 0x0a2d 0x0a3f", "bbhii=0x0a71 0x0a2d 0x0a40", "bbho=0x0a71 0x0a2d 0x0a4b", "bbhu=0x0a71 0x0a2d 0x0a41", "bbhuu=0x0a71 0x0a2d 0x0a42", "cc=0x0a71 0x0a1a 0x0a4d", "cc.h=0x0a71 0x0a1a 0x0a4d 0x200c", "ccA=0x0a71 0x0a1a 0x0a3e", "ccI=0x0a71 0x0a1a 0x0a40", "ccU=0x0a71 0x0a1a 0x0a42", "cca=0x0a71 0x0a1a", "ccaa=0x0a71 0x0a1a 0x0a3e", "ccai=0x0a71 0x0a1a 0x0a48", "ccau=0x0a71 0x0a1a 0x0a4c", "cce=0x0a71 0x0a1a 0x0a47", "cci=0x0a71 0x0a1a 0x0a3f", "ccii=0x0a71 0x0a1a 0x0a40", "cco=0x0a71 0x0a1a 0x0a4b", "ccu=0x0a71 0x0a1a 0x0a41", "ccuu=0x0a71 0x0a1a 0x0a42", "cch=0x0a71 0x0a1b 0x0a4d", "cch.h=0x0a71 0x0a1b 0x0a4d 0x200c", "cchA=0x0a71 0x0a1b 0x0a3e", "cchI=0x0a71 0x0a1b 0x0a40", "cchU=0x0a71 0x0a1b 0x0a42", "ccha=0x0a71 0x0a1b", "cchaa=0x0a71 0x0a1b 0x0a3e", "cchai=0x0a71 0x0a1b 0x0a48", "cchau=0x0a71 0x0a1b 0x0a4c", "cche=0x0a71 0x0a1b 0x0a47", "cchi=0x0a71 0x0a1b 0x0a3f", "cchii=0x0a71 0x0a1b 0x0a40", "ccho=0x0a71 0x0a1b 0x0a4b", "cchu=0x0a71 0x0a1b 0x0a41", "cchuu=0x0a71 0x0a1b 0x0a42", "dd=0x0a71 0x0a26 0x0a4d", "dd.h=0x0a71 0x0a26 0x0a4d 0x200c", "ddA=0x0a71 0x0a26 0x0a3e", "ddI=0x0a71 0x0a26 0x0a40", "ddU=0x0a71 0x0a26 0x0a42", "dda=0x0a71 0x0a26", "ddaa=0x0a71 0x0a26 0x0a3e", "ddai=0x0a71 0x0a26 0x0a48", "ddau=0x0a71 0x0a26 0x0a4c", "dde=0x0a71 0x0a26 0x0a47", "ddi=0x0a71 0x0a26 0x0a3f", "ddii=0x0a71 0x0a26 0x0a40", "ddo=0x0a71 0x0a26 0x0a4b", "ddu=0x0a71 0x0a26 0x0a41", "dduu=0x0a71 0x0a26 0x0a42", "ddh=0x0a71 0x0a27 0x0a4d", "ddh.h=0x0a71 0x0a27 0x0a4d 0x200c", "ddhA=0x0a71 0x0a27 0x0a3e", "ddhI=0x0a71 0x0a27 0x0a40", "ddhU=0x0a71 0x0a27 0x0a42", "ddha=0x0a71 0x0a27", "ddhaa=0x0a71 0x0a27 0x0a3e", "ddhai=0x0a71 0x0a27 0x0a48", "ddhau=0x0a71 0x0a27 0x0a4c", "ddhe=0x0a71 0x0a27 0x0a47", "ddhi=0x0a71 0x0a27 0x0a3f", "ddhii=0x0a71 0x0a27 0x0a40", "ddho=0x0a71 0x0a27 0x0a4b", "ddhu=0x0a71 0x0a27 0x0a41", "ddhuu=0x0a71 0x0a27 0x0a42", "gg=0x0a71 0x0a17 0x0a4d", "gg.h=0x0a71 0x0a17 0x0a4d 0x200c", "ggA=0x0a71 0x0a17 0x0a3e", "ggI=0x0a71 0x0a17 0x0a40", "ggU=0x0a71 0x0a17 0x0a42", "gga=0x0a71 0x0a17", "ggaa=0x0a71 0x0a17 0x0a3e", "ggai=0x0a71 0x0a17 0x0a48", "ggau=0x0a71 0x0a17 0x0a4c", "gge=0x0a71 0x0a17 0x0a47", "ggi=0x0a71 0x0a17 0x0a3f", "ggii=0x0a71 0x0a17 0x0a40", "ggo=0x0a71 0x0a17 0x0a4b", "ggu=0x0a71 0x0a17 0x0a41", "gguu=0x0a71 0x0a17 0x0a42", "ggh=0x0a71 0x0a18 0x0a4d", "ggh.h=0x0a71 0x0a18 0x0a4d 0x200c", "gghA=0x0a71 0x0a18 0x0a3e", "gghI=0x0a71 0x0a18 0x0a40", "gghU=0x0a71 0x0a18 0x0a42", "ggha=0x0a71 0x0a18", "gghaa=0x0a71 0x0a18 0x0a3e", "gghai=0x0a71 0x0a18 0x0a48", "gghau=0x0a71 0x0a18 0x0a4c", "gghe=0x0a71 0x0a18 0x0a47", "gghi=0x0a71 0x0a18 0x0a3f", "gghii=0x0a71 0x0a18 0x0a40", "ggho=0x0a71 0x0a18 0x0a4b", "gghu=0x0a71 0x0a18 0x0a41", "gghuu=0x0a71 0x0a18 0x0a42", "jj=0x0a71 0x0a1c 0x0a4d", "jj.h=0x0a71 0x0a1c 0x0a4d 0x200c", "jjA=0x0a71 0x0a1c 0x0a3e", "jjI=0x0a71 0x0a1c 0x0a40", "jjU=0x0a71 0x0a1c 0x0a42", "jja=0x0a71 0x0a1c", "jjaa=0x0a71 0x0a1c 0x0a3e", "jjai=0x0a71 0x0a1c 0x0a48", "jjau=0x0a71 0x0a1c 0x0a4c", "jje=0x0a71 0x0a1c 0x0a47", "jji=0x0a71 0x0a1c 0x0a3f", "jjii=0x0a71 0x0a1c 0x0a40", "jjo=0x0a71 0x0a1c 0x0a4b", "jju=0x0a71 0x0a1c 0x0a41", "jjuu=0x0a71 0x0a1c 0x0a42", "jjh=0x0a71 0x0a1d 0x0a4d", "jjh.h=0x0a71 0x0a1d 0x0a4d 0x200c", "jjhA=0x0a71 0x0a1d 0x0a3e", "jjhI=0x0a71 0x0a1d 0x0a40", "jjhU=0x0a71 0x0a1d 0x0a42", "jjha=0x0a71 0x0a1d", "jjhaa=0x0a71 0x0a1d 0x0a3e", "jjhai=0x0a71 0x0a1d 0x0a48", "jjhau=0x0a71 0x0a1d 0x0a4c", "jjhe=0x0a71 0x0a1d 0x0a47", "jjhi=0x0a71 0x0a1d 0x0a3f", "jjhii=0x0a71 0x0a1d 0x0a40", "jjho=0x0a71 0x0a1d 0x0a4b", "jjhu=0x0a71 0x0a1d 0x0a41", "jjhuu=0x0a71 0x0a1d 0x0a42", "kk=0x0a71 0x0a15 0x0a4d", "kk.h=0x0a71 0x0a15 0x0a4d 0x200c", "kkA=0x0a71 0x0a15 0x0a3e", "kkI=0x0a71 0x0a15 0x0a40", "kkU=0x0a71 0x0a15 0x0a42", "kka=0x0a71 0x0a15", "kkaa=0x0a71 0x0a15 0x0a3e", "kkai=0x0a71 0x0a15 0x0a48", "kkau=0x0a71 0x0a15 0x0a4c", "kke=0x0a71 0x0a15 0x0a47", "kki=0x0a71 0x0a15 0x0a3f", "kkii=0x0a71 0x0a15 0x0a40", "kko=0x0a71 0x0a15 0x0a4b", "kku=0x0a71 0x0a15 0x0a41", "kkuu=0x0a71 0x0a15 0x0a42", "kkh=0x0a71 0x0a16 0x0a4d", "kkh.h=0x0a71 0x0a16 0x0a4d 0x200c", "kkhA=0x0a71 0x0a16 0x0a3e", "kkhI=0x0a71 0x0a16 0x0a40", "kkhU=0x0a71 0x0a16 0x0a42", "kkha=0x0a71 0x0a16", "kkhaa=0x0a71 0x0a16 0x0a3e", "kkhai=0x0a71 0x0a16 0x0a48", "kkhau=0x0a71 0x0a16 0x0a4c", "kkhe=0x0a71 0x0a16 0x0a47", "kkhi=0x0a71 0x0a16 0x0a3f", "kkhii=0x0a71 0x0a16 0x0a40", "kkho=0x0a71 0x0a16 0x0a4b", "kkhu=0x0a71 0x0a16 0x0a41", "kkhuu=0x0a71 0x0a16 0x0a42", "ll=0x0a71 0x0a32 0x0a4d", "ll.h=0x0a71 0x0a32 0x0a4d 0x200c", "llA=0x0a71 0x0a32 0x0a3e", "llI=0x0a71 0x0a32 0x0a40", "llU=0x0a71 0x0a32 0x0a42", "lla=0x0a71 0x0a32", "llaa=0x0a71 0x0a32 0x0a3e", "llai=0x0a71 0x0a32 0x0a48", "llau=0x0a71 0x0a32 0x0a4c", "lle=0x0a71 0x0a32 0x0a47", "lli=0x0a71 0x0a32 0x0a3f", "llii=0x0a71 0x0a32 0x0a40", "llo=0x0a71 0x0a32 0x0a4b", "llu=0x0a71 0x0a32 0x0a41", "lluu=0x0a71 0x0a32 0x0a42", "pp=0x0a71 0x0a2a 0x0a4d", "pp.h=0x0a71 0x0a2a 0x0a4d 0x200c", "ppA=0x0a71 0x0a2a 0x0a3e", "ppI=0x0a71 0x0a2a 0x0a40", "ppU=0x0a71 0x0a2a 0x0a42", "ppa=0x0a71 0x0a2a", "ppaa=0x0a71 0x0a2a 0x0a3e", "ppai=0x0a71 0x0a2a 0x0a48", "ppau=0x0a71 0x0a2a 0x0a4c", "ppe=0x0a71 0x0a2a 0x0a47", "ppi=0x0a71 0x0a2a 0x0a3f", "ppii=0x0a71 0x0a2a 0x0a40", "ppo=0x0a71 0x0a2a 0x0a4b", "ppu=0x0a71 0x0a2a 0x0a41", "ppuu=0x0a71 0x0a2a 0x0a42", "pph=0x0a71 0x0a2b 0x0a4d", "pph.h=0x0a71 0x0a2b 0x0a4d 0x200c", "pphA=0x0a71 0x0a2b 0x0a3e", "pphI=0x0a71 0x0a2b 0x0a40", "pphU=0x0a71 0x0a2b 0x0a42", "ppha=0x0a71 0x0a2b", "pphaa=0x0a71 0x0a2b 0x0a3e", "pphai=0x0a71 0x0a2b 0x0a48", "pphau=0x0a71 0x0a2b 0x0a4c", "pphe=0x0a71 0x0a2b 0x0a47", "pphi=0x0a71 0x0a2b 0x0a3f", "pphii=0x0a71 0x0a2b 0x0a40", "ppho=0x0a71 0x0a2b 0x0a4b", "pphu=0x0a71 0x0a2b 0x0a41", "pphuu=0x0a71 0x0a2b 0x0a42", "rr=0x0a71 0x0a30 0x0a4d", "rr.h=0x0a71 0x0a30 0x0a4d 0x200c", "rrA=0x0a71 0x0a30 0x0a3e", "rrI=0x0a71 0x0a30 0x0a40", "rrU=0x0a71 0x0a30 0x0a42", "rra=0x0a71 0x0a30", "rraa=0x0a71 0x0a30 0x0a3e", "rrai=0x0a71 0x0a30 0x0a48", "rrau=0x0a71 0x0a30 0x0a4c", "rre=0x0a71 0x0a30 0x0a47", "rri=0x0a71 0x0a30 0x0a3f", "rrii=0x0a71 0x0a30 0x0a40", "rro=0x0a71 0x0a30 0x0a4b", "rru=0x0a71 0x0a30 0x0a41", "rruu=0x0a71 0x0a30 0x0a42", "ss=0x0a71 0x0a38 0x0a4d", "ss.h=0x0a71 0x0a38 0x0a4d 0x200c", "ssA=0x0a71 0x0a38 0x0a3e", "ssI=0x0a71 0x0a38 0x0a40", "ssU=0x0a71 0x0a38 0x0a42", "ssa=0x0a71 0x0a38", "ssaa=0x0a71 0x0a38 0x0a3e", "ssai=0x0a71 0x0a38 0x0a48", "ssau=0x0a71 0x0a38 0x0a4c", "sse=0x0a71 0x0a38 0x0a47", "ssi=0x0a71 0x0a38 0x0a3f", "ssii=0x0a71 0x0a38 0x0a40", "sso=0x0a71 0x0a38 0x0a4b", "ssu=0x0a71 0x0a38 0x0a41", "ssuu=0x0a71 0x0a38 0x0a42", "tt=0x0a71 0x0a24 0x0a4d", "tt.h=0x0a71 0x0a24 0x0a4d 0x200c", "ttA=0x0a71 0x0a24 0x0a3e", "ttI=0x0a71 0x0a24 0x0a40", "ttU=0x0a71 0x0a24 0x0a42", "tta=0x0a71 0x0a24", "ttaa=0x0a71 0x0a24 0x0a3e", "ttai=0x0a71 0x0a24 0x0a48", "ttau=0x0a71 0x0a24 0x0a4c", "tte=0x0a71 0x0a24 0x0a47", "tti=0x0a71 0x0a24 0x0a3f", "ttii=0x0a71 0x0a24 0x0a40", "tto=0x0a71 0x0a24 0x0a4b", "ttu=0x0a71 0x0a24 0x0a41", "ttuu=0x0a71 0x0a24 0x0a42", "tth=0x0a71 0x0a25 0x0a4d", "tth.h=0x0a71 0x0a25 0x0a4d 0x200c", "tthA=0x0a71 0x0a25 0x0a3e", "tthI=0x0a71 0x0a25 0x0a40", "tthU=0x0a71 0x0a25 0x0a42", "ttha=0x0a71 0x0a25", "tthaa=0x0a71 0x0a25 0x0a3e", "tthai=0x0a71 0x0a25 0x0a48", "tthau=0x0a71 0x0a25 0x0a4c", "tthe=0x0a71 0x0a25 0x0a47", "tthi=0x0a71 0x0a25 0x0a3f", "tthii=0x0a71 0x0a25 0x0a40", "ttho=0x0a71 0x0a25 0x0a4b", "tthu=0x0a71 0x0a25 0x0a41", "tthuu=0x0a71 0x0a25 0x0a42", "vv=0x0a71 0x0a35 0x0a4d", "vv.h=0x0a71 0x0a35 0x0a4d 0x200c", "vvA=0x0a71 0x0a35 0x0a3e", "vvI=0x0a71 0x0a35 0x0a40", "vvU=0x0a71 0x0a35 0x0a42", "vva=0x0a71 0x0a35", "vvaa=0x0a71 0x0a35 0x0a3e", "vvai=0x0a71 0x0a35 0x0a48", "vvau=0x0a71 0x0a35 0x0a4c", "vve=0x0a71 0x0a35 0x0a47", "vvi=0x0a71 0x0a35 0x0a3f", "vvii=0x0a71 0x0a35 0x0a40", "vvo=0x0a71 0x0a35 0x0a4b", "vvu=0x0a71 0x0a35 0x0a41", "vvuu=0x0a71 0x0a35 0x0a42", "ww=0x0a71 0x0a35 0x0a4d", "ww.h=0x0a71 0x0a35 0x0a4d 0x200c", "wwA=0x0a71 0x0a35 0x0a3e", "wwI=0x0a71 0x0a35 0x0a40", "wwU=0x0a71 0x0a35 0x0a42", "wwa=0x0a71 0x0a35", "wwaa=0x0a71 0x0a35 0x0a3e", "wwai=0x0a71 0x0a35 0x0a48", "wwau=0x0a71 0x0a35 0x0a4c", "wwe=0x0a71 0x0a35 0x0a47", "wwi=0x0a71 0x0a35 0x0a3f", "wwii=0x0a71 0x0a35 0x0a40", "wwo=0x0a71 0x0a35 0x0a4b", "wwu=0x0a71 0x0a35 0x0a41", "wwuu=0x0a71 0x0a35 0x0a42", "yy=0x0a71 0x0a2f 0x0a4d", "yy.h=0x0a71 0x0a2f 0x0a4d 0x200c", "yyA=0x0a71 0x0a2f 0x0a3e", "yyI=0x0a71 0x0a2f 0x0a40", "yyU=0x0a71 0x0a2f 0x0a42", "yya=0x0a71 0x0a2f", "yyaa=0x0a71 0x0a2f 0x0a3e", "yyai=0x0a71 0x0a2f 0x0a48", "yyau=0x0a71 0x0a2f 0x0a4c", "yye=0x0a71 0x0a2f 0x0a47", "yyi=0x0a71 0x0a2f 0x0a3f", "yyii=0x0a71 0x0a2f 0x0a40", "yyo=0x0a71 0x0a2f 0x0a4b", "yyu=0x0a71 0x0a2f 0x0a41", "yyuu=0x0a71 0x0a2f 0x0a42", // Nasal + consonant + vowel/virama "~nCh=0x0a70 0x0a1b 0x0a4d", "~nCh.h=0x0a70 0x0a1b 0x0a4d 0x200c", "~nChA=0x0a70 0x0a1b 0x0a3e", "~nChI=0x0a70 0x0a1b 0x0a40", "~nChU=0x0a70 0x0a1b 0x0a42", "~nCha=0x0a70 0x0a1b", "~nChaa=0x0a70 0x0a1b 0x0a3e", "~nChai=0x0a70 0x0a1b 0x0a48", "~nChau=0x0a70 0x0a1b 0x0a4c", "~nChe=0x0a70 0x0a1b 0x0a47", "~nChi=0x0a70 0x0a1b 0x0a3f", "~nChii=0x0a70 0x0a1b 0x0a40", "~nCho=0x0a70 0x0a1b 0x0a4b", "~nChu=0x0a70 0x0a1b 0x0a41", "~nChuu=0x0a70 0x0a1b 0x0a42", "JNCh=0x0a70 0x0a1b 0x0a4d", "JNCh.h=0x0a70 0x0a1b 0x0a4d 0x200c", "JNChA=0x0a70 0x0a1b 0x0a3e", "JNChI=0x0a70 0x0a1b 0x0a40", "JNChU=0x0a70 0x0a1b 0x0a42", "JNCha=0x0a70 0x0a1b", "JNChaa=0x0a70 0x0a1b 0x0a3e", "JNChai=0x0a70 0x0a1b 0x0a48", "JNChau=0x0a70 0x0a1b 0x0a4c", "JNChe=0x0a70 0x0a1b 0x0a47", "JNChi=0x0a70 0x0a1b 0x0a3f", "JNChii=0x0a70 0x0a1b 0x0a40", "JNCho=0x0a70 0x0a1b 0x0a4b", "JNChu=0x0a70 0x0a1b 0x0a41", "JNChuu=0x0a70 0x0a1b 0x0a42", "ND=0x0a70 0x0a21 0x0a4d", "ND.h=0x0a70 0x0a21 0x0a4d 0x200c", "NDA=0x0a70 0x0a21 0x0a3e", "NDI=0x0a70 0x0a21 0x0a40", "NDU=0x0a70 0x0a21 0x0a42", "NDa=0x0a70 0x0a21", "NDaa=0x0a70 0x0a21 0x0a3e", "NDai=0x0a70 0x0a21 0x0a48", "NDau=0x0a70 0x0a21 0x0a4c", "NDe=0x0a70 0x0a21 0x0a47", "NDi=0x0a70 0x0a21 0x0a3f", "NDii=0x0a70 0x0a21 0x0a40", "NDo=0x0a70 0x0a21 0x0a4b", "NDu=0x0a70 0x0a21 0x0a41", "NDuu=0x0a70 0x0a21 0x0a42", "NDh=0x0a70 0x0a22 0x0a4d", "NDh.h=0x0a70 0x0a22 0x0a4d 0x200c", "NDhA=0x0a70 0x0a22 0x0a3e", "NDhI=0x0a70 0x0a22 0x0a40", "NDhU=0x0a70 0x0a22 0x0a42", "NDha=0x0a70 0x0a22", "NDhaa=0x0a70 0x0a22 0x0a3e", "NDhai=0x0a70 0x0a22 0x0a48", "NDhau=0x0a70 0x0a22 0x0a4c", "NDhe=0x0a70 0x0a22 0x0a47", "NDhi=0x0a70 0x0a22 0x0a3f", "NDhii=0x0a70 0x0a22 0x0a40", "NDho=0x0a70 0x0a22 0x0a4b", "NDhu=0x0a70 0x0a22 0x0a41", "NDhuu=0x0a70 0x0a22 0x0a42", "~nGY=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d", "~nGY.h=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d 0x200c", "~nGYA=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "~nGYI=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "~nGYU=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "~nGYa=0x0a70 0x0a1c 0x0a4d 0x0a1e", "~nGYaa=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "~nGYai=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a48", "~nGYau=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4c", "~nGYe=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a47", "~nGYi=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3f", "~nGYii=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "~nGYo=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4b", "~nGYu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a41", "~nGYuu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "JNGY=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d", "JNGY.h=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d 0x200c", "JNGYA=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "JNGYI=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "JNGYU=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "JNGYa=0x0a70 0x0a1c 0x0a4d 0x0a1e", "JNGYaa=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "JNGYai=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a48", "JNGYau=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4c", "JNGYe=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a47", "JNGYi=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3f", "JNGYii=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "JNGYo=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4b", "JNGYu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a41", "JNGYuu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "~nJN=0x0a70 0x0a1e 0x0a4d", "~nJN.h=0x0a70 0x0a1e 0x0a4d 0x200c", "~nJNA=0x0a70 0x0a1e 0x0a3e", "~nJNI=0x0a70 0x0a1e 0x0a40", "~nJNU=0x0a70 0x0a1e 0x0a42", "~nJNa=0x0a70 0x0a1e", "~nJNaa=0x0a70 0x0a1e 0x0a3e", "~nJNai=0x0a70 0x0a1e 0x0a48", "~nJNau=0x0a70 0x0a1e 0x0a4c", "~nJNe=0x0a70 0x0a1e 0x0a47", "~nJNi=0x0a70 0x0a1e 0x0a3f", "~nJNii=0x0a70 0x0a1e 0x0a40", "~nJNo=0x0a70 0x0a1e 0x0a4b", "~nJNu=0x0a70 0x0a1e 0x0a41", "~nJNuu=0x0a70 0x0a1e 0x0a42", "JNJN=0x0a70 0x0a1e 0x0a4d", "JNJN.h=0x0a70 0x0a1e 0x0a4d 0x200c", "JNJNA=0x0a70 0x0a1e 0x0a3e", "JNJNI=0x0a70 0x0a1e 0x0a40", "JNJNU=0x0a70 0x0a1e 0x0a42", "JNJNa=0x0a70 0x0a1e", "JNJNaa=0x0a70 0x0a1e 0x0a3e", "JNJNai=0x0a70 0x0a1e 0x0a48", "JNJNau=0x0a70 0x0a1e 0x0a4c", "JNJNe=0x0a70 0x0a1e 0x0a47", "JNJNi=0x0a70 0x0a1e 0x0a3f", "JNJNii=0x0a70 0x0a1e 0x0a40", "JNJNo=0x0a70 0x0a1e 0x0a4b", "JNJNu=0x0a70 0x0a1e 0x0a41", "JNJNuu=0x0a70 0x0a1e 0x0a42", "NN=0x0a70 0x0a23 0x0a4d", "NN.h=0x0a70 0x0a23 0x0a4d 0x200c", "NNA=0x0a70 0x0a23 0x0a3e", "NNI=0x0a70 0x0a23 0x0a40", "NNU=0x0a70 0x0a23 0x0a42", "NNa=0x0a70 0x0a23", "NNaa=0x0a70 0x0a23 0x0a3e", "NNai=0x0a70 0x0a23 0x0a48", "NNau=0x0a70 0x0a23 0x0a4c", "NNe=0x0a70 0x0a23 0x0a47", "NNi=0x0a70 0x0a23 0x0a3f", "NNii=0x0a70 0x0a23 0x0a40", "NNo=0x0a70 0x0a23 0x0a4b", "NNu=0x0a70 0x0a23 0x0a41", "NNuu=0x0a70 0x0a23 0x0a42", "N^N^=0x0a70 0x0a19 0x0a4d", "N^N^.h=0x0a70 0x0a19 0x0a4d 0x200c", "N^N^A=0x0a70 0x0a19 0x0a3e", "N^N^I=0x0a70 0x0a19 0x0a40", "N^N^U=0x0a70 0x0a19 0x0a42", "N^N^a=0x0a70 0x0a19", "N^N^aa=0x0a70 0x0a19 0x0a3e", "N^N^ai=0x0a70 0x0a19 0x0a48", "N^N^au=0x0a70 0x0a19 0x0a4c", "N^N^e=0x0a70 0x0a19 0x0a47", "N^N^i=0x0a70 0x0a19 0x0a3f", "N^N^ii=0x0a70 0x0a19 0x0a40", "N^N^o=0x0a70 0x0a19 0x0a4b", "N^N^u=0x0a70 0x0a19 0x0a41", "N^N^uu=0x0a70 0x0a19 0x0a42", "~NN^=0x0a70 0x0a19 0x0a4d", "~NN^.h=0x0a70 0x0a19 0x0a4d 0x200c", "~NN^A=0x0a70 0x0a19 0x0a3e", "~NN^I=0x0a70 0x0a19 0x0a40", "~NN^U=0x0a70 0x0a19 0x0a42", "~NN^a=0x0a70 0x0a19", "~NN^aa=0x0a70 0x0a19 0x0a3e", "~NN^ai=0x0a70 0x0a19 0x0a48", "~NN^au=0x0a70 0x0a19 0x0a4c", "~NN^e=0x0a70 0x0a19 0x0a47", "~NN^i=0x0a70 0x0a19 0x0a3f", "~NN^ii=0x0a70 0x0a19 0x0a40", "~NN^o=0x0a70 0x0a19 0x0a4b", "~NN^u=0x0a70 0x0a19 0x0a41", "~NN^uu=0x0a70 0x0a19 0x0a42", "NT=0x0a70 0x0a1f 0x0a4d", "NT.h=0x0a70 0x0a1f 0x0a4d 0x200c", "NTA=0x0a70 0x0a1f 0x0a3e", "NTI=0x0a70 0x0a1f 0x0a40", "NTU=0x0a70 0x0a1f 0x0a42", "NTa=0x0a70 0x0a1f", "NTaa=0x0a70 0x0a1f 0x0a3e", "NTai=0x0a70 0x0a1f 0x0a48", "NTau=0x0a70 0x0a1f 0x0a4c", "NTe=0x0a70 0x0a1f 0x0a47", "NTi=0x0a70 0x0a1f 0x0a3f", "NTii=0x0a70 0x0a1f 0x0a40", "NTo=0x0a70 0x0a1f 0x0a4b", "NTu=0x0a70 0x0a1f 0x0a41", "NTuu=0x0a70 0x0a1f 0x0a42", "NTh=0x0a70 0x0a20 0x0a4d", "NTh.h=0x0a70 0x0a20 0x0a4d 0x200c", "NThA=0x0a70 0x0a20 0x0a3e", "NThI=0x0a70 0x0a20 0x0a40", "NThU=0x0a70 0x0a20 0x0a42", "NTha=0x0a70 0x0a20", "NThaa=0x0a70 0x0a20 0x0a3e", "NThai=0x0a70 0x0a20 0x0a48", "NThau=0x0a70 0x0a20 0x0a4c", "NThe=0x0a70 0x0a20 0x0a47", "NThi=0x0a70 0x0a20 0x0a3f", "NThii=0x0a70 0x0a20 0x0a40", "NTho=0x0a70 0x0a20 0x0a4b", "NThu=0x0a70 0x0a20 0x0a41", "NThuu=0x0a70 0x0a20 0x0a42", "mb=0x0a70 0x0a2c 0x0a4d", "mb.h=0x0a70 0x0a2c 0x0a4d 0x200c", "mbA=0x0a70 0x0a2c 0x0a3e", "mbI=0x0a70 0x0a2c 0x0a40", "mbU=0x0a70 0x0a2c 0x0a42", "mba=0x0a70 0x0a2c", "mbaa=0x0a70 0x0a2c 0x0a3e", "mbai=0x0a70 0x0a2c 0x0a48", "mbau=0x0a70 0x0a2c 0x0a4c", "mbe=0x0a70 0x0a2c 0x0a47", "mbi=0x0a70 0x0a2c 0x0a3f", "mbii=0x0a70 0x0a2c 0x0a40", "mbo=0x0a70 0x0a2c 0x0a4b", "mbu=0x0a70 0x0a2c 0x0a41", "mbuu=0x0a70 0x0a2c 0x0a42", "mbh=0x0a70 0x0a2d 0x0a4d", "mbh.h=0x0a70 0x0a2d 0x0a4d 0x200c", "mbhA=0x0a70 0x0a2d 0x0a3e", "mbhI=0x0a70 0x0a2d 0x0a40", "mbhU=0x0a70 0x0a2d 0x0a42", "mbha=0x0a70 0x0a2d", "mbhaa=0x0a70 0x0a2d 0x0a3e", "mbhai=0x0a70 0x0a2d 0x0a48", "mbhau=0x0a70 0x0a2d 0x0a4c", "mbhe=0x0a70 0x0a2d 0x0a47", "mbhi=0x0a70 0x0a2d 0x0a3f", "mbhii=0x0a70 0x0a2d 0x0a40", "mbho=0x0a70 0x0a2d 0x0a4b", "mbhu=0x0a70 0x0a2d 0x0a41", "mbhuu=0x0a70 0x0a2d 0x0a42", "~nc=0x0a70 0x0a1a 0x0a4d", "~nc.h=0x0a70 0x0a1a 0x0a4d 0x200c", "~ncA=0x0a70 0x0a1a 0x0a3e", "~ncI=0x0a70 0x0a1a 0x0a40", "~ncU=0x0a70 0x0a1a 0x0a42", "~nca=0x0a70 0x0a1a", "~ncaa=0x0a70 0x0a1a 0x0a3e", "~ncai=0x0a70 0x0a1a 0x0a48", "~ncau=0x0a70 0x0a1a 0x0a4c", "~nce=0x0a70 0x0a1a 0x0a47", "~nci=0x0a70 0x0a1a 0x0a3f", "~ncii=0x0a70 0x0a1a 0x0a40", "~nco=0x0a70 0x0a1a 0x0a4b", "~ncu=0x0a70 0x0a1a 0x0a41", "~ncuu=0x0a70 0x0a1a 0x0a42", "JNc=0x0a70 0x0a1a 0x0a4d", "JNc.h=0x0a70 0x0a1a 0x0a4d 0x200c", "JNcA=0x0a70 0x0a1a 0x0a3e", "JNcI=0x0a70 0x0a1a 0x0a40", "JNcU=0x0a70 0x0a1a 0x0a42", "JNca=0x0a70 0x0a1a", "JNcaa=0x0a70 0x0a1a 0x0a3e", "JNcai=0x0a70 0x0a1a 0x0a48", "JNcau=0x0a70 0x0a1a 0x0a4c", "JNce=0x0a70 0x0a1a 0x0a47", "JNci=0x0a70 0x0a1a 0x0a3f", "JNcii=0x0a70 0x0a1a 0x0a40", "JNco=0x0a70 0x0a1a 0x0a4b", "JNcu=0x0a70 0x0a1a 0x0a41", "JNcuu=0x0a70 0x0a1a 0x0a42", "~nch=0x0a70 0x0a1b 0x0a4d", "~nch.h=0x0a70 0x0a1b 0x0a4d 0x200c", "~nchA=0x0a70 0x0a1b 0x0a3e", "~nchI=0x0a70 0x0a1b 0x0a40", "~nchU=0x0a70 0x0a1b 0x0a42", "~ncha=0x0a70 0x0a1b", "~nchaa=0x0a70 0x0a1b 0x0a3e", "~nchai=0x0a70 0x0a1b 0x0a48", "~nchau=0x0a70 0x0a1b 0x0a4c", "~nche=0x0a70 0x0a1b 0x0a47", "~nchi=0x0a70 0x0a1b 0x0a3f", "~nchii=0x0a70 0x0a1b 0x0a40", "~ncho=0x0a70 0x0a1b 0x0a4b", "~nchu=0x0a70 0x0a1b 0x0a41", "~nchuu=0x0a70 0x0a1b 0x0a42", "JNch=0x0a70 0x0a1b 0x0a4d", "JNch.h=0x0a70 0x0a1b 0x0a4d 0x200c", "JNchA=0x0a70 0x0a1b 0x0a3e", "JNchI=0x0a70 0x0a1b 0x0a40", "JNchU=0x0a70 0x0a1b 0x0a42", "JNcha=0x0a70 0x0a1b", "JNchaa=0x0a70 0x0a1b 0x0a3e", "JNchai=0x0a70 0x0a1b 0x0a48", "JNchau=0x0a70 0x0a1b 0x0a4c", "JNche=0x0a70 0x0a1b 0x0a47", "JNchi=0x0a70 0x0a1b 0x0a3f", "JNchii=0x0a70 0x0a1b 0x0a40", "JNcho=0x0a70 0x0a1b 0x0a4b", "JNchu=0x0a70 0x0a1b 0x0a41", "JNchuu=0x0a70 0x0a1b 0x0a42", "nd=0x0a70 0x0a26 0x0a4d", "nd.h=0x0a70 0x0a26 0x0a4d 0x200c", "ndA=0x0a70 0x0a26 0x0a3e", "ndI=0x0a70 0x0a26 0x0a40", "ndU=0x0a70 0x0a26 0x0a42", "nda=0x0a70 0x0a26", "ndaa=0x0a70 0x0a26 0x0a3e", "ndai=0x0a70 0x0a26 0x0a48", "ndau=0x0a70 0x0a26 0x0a4c", "nde=0x0a70 0x0a26 0x0a47", "ndi=0x0a70 0x0a26 0x0a3f", "ndii=0x0a70 0x0a26 0x0a40", "ndo=0x0a70 0x0a26 0x0a4b", "ndu=0x0a70 0x0a26 0x0a41", "nduu=0x0a70 0x0a26 0x0a42", "ndh=0x0a70 0x0a27 0x0a4d", "ndh.h=0x0a70 0x0a27 0x0a4d 0x200c", "ndhA=0x0a70 0x0a27 0x0a3e", "ndhI=0x0a70 0x0a27 0x0a40", "ndhU=0x0a70 0x0a27 0x0a42", "ndha=0x0a70 0x0a27", "ndhaa=0x0a70 0x0a27 0x0a3e", "ndhai=0x0a70 0x0a27 0x0a48", "ndhau=0x0a70 0x0a27 0x0a4c", "ndhe=0x0a70 0x0a27 0x0a47", "ndhi=0x0a70 0x0a27 0x0a3f", "ndhii=0x0a70 0x0a27 0x0a40", "ndho=0x0a70 0x0a27 0x0a4b", "ndhu=0x0a70 0x0a27 0x0a41", "ndhuu=0x0a70 0x0a27 0x0a42", "~ndny=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d", "~ndny.h=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d 0x200c", "~ndnyA=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "~ndnyI=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "~ndnyU=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "~ndnya=0x0a70 0x0a1c 0x0a4d 0x0a1e", "~ndnyaa=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "~ndnyai=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a48", "~ndnyau=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4c", "~ndnye=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a47", "~ndnyi=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3f", "~ndnyii=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "~ndnyo=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4b", "~ndnyu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a41", "~ndnyuu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "JNdny=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d", "JNdny.h=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4d 0x200c", "JNdnyA=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "JNdnyI=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "JNdnyU=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "JNdnya=0x0a70 0x0a1c 0x0a4d 0x0a1e", "JNdnyaa=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3e", "JNdnyai=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a48", "JNdnyau=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4c", "JNdnye=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a47", "JNdnyi=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a3f", "JNdnyii=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a40", "JNdnyo=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a4b", "JNdnyu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a41", "JNdnyuu=0x0a70 0x0a1c 0x0a4d 0x0a1e 0x0a42", "N^g=0x0a70 0x0a17 0x0a4d", "N^g.h=0x0a70 0x0a17 0x0a4d 0x200c", "N^gA=0x0a70 0x0a17 0x0a3e", "N^gI=0x0a70 0x0a17 0x0a40", "N^gU=0x0a70 0x0a17 0x0a42", "N^ga=0x0a70 0x0a17", "N^gaa=0x0a70 0x0a17 0x0a3e", "N^gai=0x0a70 0x0a17 0x0a48", "N^gau=0x0a70 0x0a17 0x0a4c", "N^ge=0x0a70 0x0a17 0x0a47", "N^gi=0x0a70 0x0a17 0x0a3f", "N^gii=0x0a70 0x0a17 0x0a40", "N^go=0x0a70 0x0a17 0x0a4b", "N^gu=0x0a70 0x0a17 0x0a41", "N^guu=0x0a70 0x0a17 0x0a42", "~Ng=0x0a70 0x0a17 0x0a4d", "~Ng.h=0x0a70 0x0a17 0x0a4d 0x200c", "~NgA=0x0a70 0x0a17 0x0a3e", "~NgI=0x0a70 0x0a17 0x0a40", "~NgU=0x0a70 0x0a17 0x0a42", "~Nga=0x0a70 0x0a17", "~Ngaa=0x0a70 0x0a17 0x0a3e", "~Ngai=0x0a70 0x0a17 0x0a48", "~Ngau=0x0a70 0x0a17 0x0a4c", "~Nge=0x0a70 0x0a17 0x0a47", "~Ngi=0x0a70 0x0a17 0x0a3f", "~Ngii=0x0a70 0x0a17 0x0a40", "~Ngo=0x0a70 0x0a17 0x0a4b", "~Ngu=0x0a70 0x0a17 0x0a41", "~Nguu=0x0a70 0x0a17 0x0a42", "N^gh=0x0a70 0x0a18 0x0a4d", "N^gh.h=0x0a70 0x0a18 0x0a4d 0x200c", "N^ghA=0x0a70 0x0a18 0x0a3e", "N^ghI=0x0a70 0x0a18 0x0a40", "N^ghU=0x0a70 0x0a18 0x0a42", "N^gha=0x0a70 0x0a18", "N^ghaa=0x0a70 0x0a18 0x0a3e", "N^ghai=0x0a70 0x0a18 0x0a48", "N^ghau=0x0a70 0x0a18 0x0a4c", "N^ghe=0x0a70 0x0a18 0x0a47", "N^ghi=0x0a70 0x0a18 0x0a3f", "N^ghii=0x0a70 0x0a18 0x0a40", "N^gho=0x0a70 0x0a18 0x0a4b", "N^ghu=0x0a70 0x0a18 0x0a41", "N^ghuu=0x0a70 0x0a18 0x0a42", "~Ngh=0x0a70 0x0a18 0x0a4d", "~Ngh.h=0x0a70 0x0a18 0x0a4d 0x200c", "~NghA=0x0a70 0x0a18 0x0a3e", "~NghI=0x0a70 0x0a18 0x0a40", "~NghU=0x0a70 0x0a18 0x0a42", "~Ngha=0x0a70 0x0a18", "~Nghaa=0x0a70 0x0a18 0x0a3e", "~Nghai=0x0a70 0x0a18 0x0a48", "~Nghau=0x0a70 0x0a18 0x0a4c", "~Nghe=0x0a70 0x0a18 0x0a47", "~Nghi=0x0a70 0x0a18 0x0a3f", "~Nghii=0x0a70 0x0a18 0x0a40", "~Ngho=0x0a70 0x0a18 0x0a4b", "~Nghu=0x0a70 0x0a18 0x0a41", "~Nghuu=0x0a70 0x0a18 0x0a42", "~nj=0x0a70 0x0a1c 0x0a4d", "~nj.h=0x0a70 0x0a1c 0x0a4d 0x200c", "~njA=0x0a70 0x0a1c 0x0a3e", "~njI=0x0a70 0x0a1c 0x0a40", "~njU=0x0a70 0x0a1c 0x0a42", "~nja=0x0a70 0x0a1c", "~njaa=0x0a70 0x0a1c 0x0a3e", "~njai=0x0a70 0x0a1c 0x0a48", "~njau=0x0a70 0x0a1c 0x0a4c", "~nje=0x0a70 0x0a1c 0x0a47", "~nji=0x0a70 0x0a1c 0x0a3f", "~njii=0x0a70 0x0a1c 0x0a40", "~njo=0x0a70 0x0a1c 0x0a4b", "~nju=0x0a70 0x0a1c 0x0a41", "~njuu=0x0a70 0x0a1c 0x0a42", "JNj=0x0a70 0x0a1c 0x0a4d", "JNj.h=0x0a70 0x0a1c 0x0a4d 0x200c", "JNjA=0x0a70 0x0a1c 0x0a3e", "JNjI=0x0a70 0x0a1c 0x0a40", "JNjU=0x0a70 0x0a1c 0x0a42", "JNja=0x0a70 0x0a1c", "JNjaa=0x0a70 0x0a1c 0x0a3e", "JNjai=0x0a70 0x0a1c 0x0a48", "JNjau=0x0a70 0x0a1c 0x0a4c", "JNje=0x0a70 0x0a1c 0x0a47", "JNji=0x0a70 0x0a1c 0x0a3f", "JNjii=0x0a70 0x0a1c 0x0a40", "JNjo=0x0a70 0x0a1c 0x0a4b", "JNju=0x0a70 0x0a1c 0x0a41", "JNjuu=0x0a70 0x0a1c 0x0a42", "~njh=0x0a70 0x0a1d 0x0a4d", "~njh.h=0x0a70 0x0a1d 0x0a4d 0x200c", "~njhA=0x0a70 0x0a1d 0x0a3e", "~njhI=0x0a70 0x0a1d 0x0a40", "~njhU=0x0a70 0x0a1d 0x0a42", "~njha=0x0a70 0x0a1d", "~njhaa=0x0a70 0x0a1d 0x0a3e", "~njhai=0x0a70 0x0a1d 0x0a48", "~njhau=0x0a70 0x0a1d 0x0a4c", "~njhe=0x0a70 0x0a1d 0x0a47", "~njhi=0x0a70 0x0a1d 0x0a3f", "~njhii=0x0a70 0x0a1d 0x0a40", "~njho=0x0a70 0x0a1d 0x0a4b", "~njhu=0x0a70 0x0a1d 0x0a41", "~njhuu=0x0a70 0x0a1d 0x0a42", "JNjh=0x0a70 0x0a1d 0x0a4d", "JNjh.h=0x0a70 0x0a1d 0x0a4d 0x200c", "JNjhA=0x0a70 0x0a1d 0x0a3e", "JNjhI=0x0a70 0x0a1d 0x0a40", "JNjhU=0x0a70 0x0a1d 0x0a42", "JNjha=0x0a70 0x0a1d", "JNjhaa=0x0a70 0x0a1d 0x0a3e", "JNjhai=0x0a70 0x0a1d 0x0a48", "JNjhau=0x0a70 0x0a1d 0x0a4c", "JNjhe=0x0a70 0x0a1d 0x0a47", "JNjhi=0x0a70 0x0a1d 0x0a3f", "JNjhii=0x0a70 0x0a1d 0x0a40", "JNjho=0x0a70 0x0a1d 0x0a4b", "JNjhu=0x0a70 0x0a1d 0x0a41", "JNjhuu=0x0a70 0x0a1d 0x0a42", "N^k=0x0a70 0x0a15 0x0a4d", "N^k.h=0x0a70 0x0a15 0x0a4d 0x200c", "N^kA=0x0a70 0x0a15 0x0a3e", "N^kI=0x0a70 0x0a15 0x0a40", "N^kU=0x0a70 0x0a15 0x0a42", "N^ka=0x0a70 0x0a15", "N^kaa=0x0a70 0x0a15 0x0a3e", "N^kai=0x0a70 0x0a15 0x0a48", "N^kau=0x0a70 0x0a15 0x0a4c", "N^ke=0x0a70 0x0a15 0x0a47", "N^ki=0x0a70 0x0a15 0x0a3f", "N^kii=0x0a70 0x0a15 0x0a40", "N^ko=0x0a70 0x0a15 0x0a4b", "N^ku=0x0a70 0x0a15 0x0a41", "N^kuu=0x0a70 0x0a15 0x0a42", "~Nk=0x0a70 0x0a15 0x0a4d", "~Nk.h=0x0a70 0x0a15 0x0a4d 0x200c", "~NkA=0x0a70 0x0a15 0x0a3e", "~NkI=0x0a70 0x0a15 0x0a40", "~NkU=0x0a70 0x0a15 0x0a42", "~Nka=0x0a70 0x0a15", "~Nkaa=0x0a70 0x0a15 0x0a3e", "~Nkai=0x0a70 0x0a15 0x0a48", "~Nkau=0x0a70 0x0a15 0x0a4c", "~Nke=0x0a70 0x0a15 0x0a47", "~Nki=0x0a70 0x0a15 0x0a3f", "~Nkii=0x0a70 0x0a15 0x0a40", "~Nko=0x0a70 0x0a15 0x0a4b", "~Nku=0x0a70 0x0a15 0x0a41", "~Nkuu=0x0a70 0x0a15 0x0a42", "N^kh=0x0a70 0x0a16 0x0a4d", "N^kh.h=0x0a70 0x0a16 0x0a4d 0x200c", "N^khA=0x0a70 0x0a16 0x0a3e", "N^khI=0x0a70 0x0a16 0x0a40", "N^khU=0x0a70 0x0a16 0x0a42", "N^kha=0x0a70 0x0a16", "N^khaa=0x0a70 0x0a16 0x0a3e", "N^khai=0x0a70 0x0a16 0x0a48", "N^khau=0x0a70 0x0a16 0x0a4c", "N^khe=0x0a70 0x0a16 0x0a47", "N^khi=0x0a70 0x0a16 0x0a3f", "N^khii=0x0a70 0x0a16 0x0a40", "N^kho=0x0a70 0x0a16 0x0a4b", "N^khu=0x0a70 0x0a16 0x0a41", "N^khuu=0x0a70 0x0a16 0x0a42", "~Nkh=0x0a70 0x0a16 0x0a4d", "~Nkh.h=0x0a70 0x0a16 0x0a4d 0x200c", "~NkhA=0x0a70 0x0a16 0x0a3e", "~NkhI=0x0a70 0x0a16 0x0a40", "~NkhU=0x0a70 0x0a16 0x0a42", "~Nkha=0x0a70 0x0a16", "~Nkhaa=0x0a70 0x0a16 0x0a3e", "~Nkhai=0x0a70 0x0a16 0x0a48", "~Nkhau=0x0a70 0x0a16 0x0a4c", "~Nkhe=0x0a70 0x0a16 0x0a47", "~Nkhi=0x0a70 0x0a16 0x0a3f", "~Nkhii=0x0a70 0x0a16 0x0a40", "~Nkho=0x0a70 0x0a16 0x0a4b", "~Nkhu=0x0a70 0x0a16 0x0a41", "~Nkhuu=0x0a70 0x0a16 0x0a42", "mm=0x0a70 0x0a2e 0x0a4d", "mm.h=0x0a70 0x0a2e 0x0a4d 0x200c", "mmA=0x0a70 0x0a2e 0x0a3e", "mmI=0x0a70 0x0a2e 0x0a40", "mmU=0x0a70 0x0a2e 0x0a42", "mma=0x0a70 0x0a2e", "mmaa=0x0a70 0x0a2e 0x0a3e", "mmai=0x0a70 0x0a2e 0x0a48", "mmau=0x0a70 0x0a2e 0x0a4c", "mme=0x0a70 0x0a2e 0x0a47", "mmi=0x0a70 0x0a2e 0x0a3f", "mmii=0x0a70 0x0a2e 0x0a40", "mmo=0x0a70 0x0a2e 0x0a4b", "mmu=0x0a70 0x0a2e 0x0a41", "mmuu=0x0a70 0x0a2e 0x0a42", "nn=0x0a70 0x0a28 0x0a4d", "nn.h=0x0a70 0x0a28 0x0a4d 0x200c", "nnA=0x0a70 0x0a28 0x0a3e", "nnI=0x0a70 0x0a28 0x0a40", "nnU=0x0a70 0x0a28 0x0a42", "nna=0x0a70 0x0a28", "nnaa=0x0a70 0x0a28 0x0a3e", "nnai=0x0a70 0x0a28 0x0a48", "nnau=0x0a70 0x0a28 0x0a4c", "nne=0x0a70 0x0a28 0x0a47", "nni=0x0a70 0x0a28 0x0a3f", "nnii=0x0a70 0x0a28 0x0a40", "nno=0x0a70 0x0a28 0x0a4b", "nnu=0x0a70 0x0a28 0x0a41", "nnuu=0x0a70 0x0a28 0x0a42", "mp=0x0a70 0x0a2a 0x0a4d", "mp.h=0x0a70 0x0a2a 0x0a4d 0x200c", "mpA=0x0a70 0x0a2a 0x0a3e", "mpI=0x0a70 0x0a2a 0x0a40", "mpU=0x0a70 0x0a2a 0x0a42", "mpa=0x0a70 0x0a2a", "mpaa=0x0a70 0x0a2a 0x0a3e", "mpai=0x0a70 0x0a2a 0x0a48", "mpau=0x0a70 0x0a2a 0x0a4c", "mpe=0x0a70 0x0a2a 0x0a47", "mpi=0x0a70 0x0a2a 0x0a3f", "mpii=0x0a70 0x0a2a 0x0a40", "mpo=0x0a70 0x0a2a 0x0a4b", "mpu=0x0a70 0x0a2a 0x0a41", "mpuu=0x0a70 0x0a2a 0x0a42", "mph=0x0a70 0x0a2b 0x0a4d", "mph.h=0x0a70 0x0a2b 0x0a4d 0x200c", "mphA=0x0a70 0x0a2b 0x0a3e", "mphI=0x0a70 0x0a2b 0x0a40", "mphU=0x0a70 0x0a2b 0x0a42", "mpha=0x0a70 0x0a2b", "mphaa=0x0a70 0x0a2b 0x0a3e", "mphai=0x0a70 0x0a2b 0x0a48", "mphau=0x0a70 0x0a2b 0x0a4c", "mphe=0x0a70 0x0a2b 0x0a47", "mphi=0x0a70 0x0a2b 0x0a3f", "mphii=0x0a70 0x0a2b 0x0a40", "mpho=0x0a70 0x0a2b 0x0a4b", "mphu=0x0a70 0x0a2b 0x0a41", "mphuu=0x0a70 0x0a2b 0x0a42", "nt=0x0a70 0x0a24 0x0a4d", "nt.h=0x0a70 0x0a24 0x0a4d 0x200c", "ntA=0x0a70 0x0a24 0x0a3e", "ntI=0x0a70 0x0a24 0x0a40", "ntU=0x0a70 0x0a24 0x0a42", "nta=0x0a70 0x0a24", "ntaa=0x0a70 0x0a24 0x0a3e", "ntai=0x0a70 0x0a24 0x0a48", "ntau=0x0a70 0x0a24 0x0a4c", "nte=0x0a70 0x0a24 0x0a47", "nti=0x0a70 0x0a24 0x0a3f", "ntii=0x0a70 0x0a24 0x0a40", "nto=0x0a70 0x0a24 0x0a4b", "ntu=0x0a70 0x0a24 0x0a41", "ntuu=0x0a70 0x0a24 0x0a42", "nth=0x0a70 0x0a25 0x0a4d", "nth.h=0x0a70 0x0a25 0x0a4d 0x200c", "nthA=0x0a70 0x0a25 0x0a3e", "nthI=0x0a70 0x0a25 0x0a40", "nthU=0x0a70 0x0a25 0x0a42", "ntha=0x0a70 0x0a25", "nthaa=0x0a70 0x0a25 0x0a3e", "nthai=0x0a70 0x0a25 0x0a48", "nthau=0x0a70 0x0a25 0x0a4c", "nthe=0x0a70 0x0a25 0x0a47", "nthi=0x0a70 0x0a25 0x0a3f", "nthii=0x0a70 0x0a25 0x0a40", "ntho=0x0a70 0x0a25 0x0a4b", "nthu=0x0a70 0x0a25 0x0a41", "nthuu=0x0a70 0x0a25 0x0a42", "N^~N=0x0a70 0x0a19 0x0a4d", "N^~N.h=0x0a70 0x0a19 0x0a4d 0x200c", "N^~NA=0x0a70 0x0a19 0x0a3e", "N^~NI=0x0a70 0x0a19 0x0a40", "N^~NU=0x0a70 0x0a19 0x0a42", "N^~Na=0x0a70 0x0a19", "N^~Naa=0x0a70 0x0a19 0x0a3e", "N^~Nai=0x0a70 0x0a19 0x0a48", "N^~Nau=0x0a70 0x0a19 0x0a4c", "N^~Ne=0x0a70 0x0a19 0x0a47", "N^~Ni=0x0a70 0x0a19 0x0a3f", "N^~Nii=0x0a70 0x0a19 0x0a40", "N^~No=0x0a70 0x0a19 0x0a4b", "N^~Nu=0x0a70 0x0a19 0x0a41", "N^~Nuu=0x0a70 0x0a19 0x0a42", "~N~N=0x0a70 0x0a19 0x0a4d", "~N~N.h=0x0a70 0x0a19 0x0a4d 0x200c", "~N~NA=0x0a70 0x0a19 0x0a3e", "~N~NI=0x0a70 0x0a19 0x0a40", "~N~NU=0x0a70 0x0a19 0x0a42", "~N~Na=0x0a70 0x0a19", "~N~Naa=0x0a70 0x0a19 0x0a3e", "~N~Nai=0x0a70 0x0a19 0x0a48", "~N~Nau=0x0a70 0x0a19 0x0a4c", "~N~Ne=0x0a70 0x0a19 0x0a47", "~N~Ni=0x0a70 0x0a19 0x0a3f", "~N~Nii=0x0a70 0x0a19 0x0a40", "~N~No=0x0a70 0x0a19 0x0a4b", "~N~Nu=0x0a70 0x0a19 0x0a41", "~N~Nuu=0x0a70 0x0a19 0x0a42", "~n~n=0x0a70 0x0a1e 0x0a4d", "~n~n.h=0x0a70 0x0a1e 0x0a4d 0x200c", "~n~nA=0x0a70 0x0a1e 0x0a3e", "~n~nI=0x0a70 0x0a1e 0x0a40", "~n~nU=0x0a70 0x0a1e 0x0a42", "~n~na=0x0a70 0x0a1e", "~n~naa=0x0a70 0x0a1e 0x0a3e", "~n~nai=0x0a70 0x0a1e 0x0a48", "~n~nau=0x0a70 0x0a1e 0x0a4c", "~n~ne=0x0a70 0x0a1e 0x0a47", "~n~ni=0x0a70 0x0a1e 0x0a3f", "~n~nii=0x0a70 0x0a1e 0x0a40", "~n~no=0x0a70 0x0a1e 0x0a4b", "~n~nu=0x0a70 0x0a1e 0x0a41", "~n~nuu=0x0a70 0x0a1e 0x0a42", "JN~n=0x0a70 0x0a1e 0x0a4d", "JN~n.h=0x0a70 0x0a1e 0x0a4d 0x200c", "JN~nA=0x0a70 0x0a1e 0x0a3e", "JN~nI=0x0a70 0x0a1e 0x0a40", "JN~nU=0x0a70 0x0a1e 0x0a42", "JN~na=0x0a70 0x0a1e", "JN~naa=0x0a70 0x0a1e 0x0a3e", "JN~nai=0x0a70 0x0a1e 0x0a48", "JN~nau=0x0a70 0x0a1e 0x0a4c", "JN~ne=0x0a70 0x0a1e 0x0a47", "JN~ni=0x0a70 0x0a1e 0x0a3f", "JN~nii=0x0a70 0x0a1e 0x0a40", "JN~no=0x0a70 0x0a1e 0x0a4b", "JN~nu=0x0a70 0x0a1e 0x0a41", "JN~nuu=0x0a70 0x0a1e 0x0a42", // Independent vowels "a=0x0a05", "A=0x0a06", "aa=0x0a06", "i=0x0a07", "I=0x0a08", "ii=0x0a08", "u=0x0a09", "U=0x0a0a", "uu=0x0a0a", "e=0x0a0f", "ai=0x0a10", "o=0x0a13", "au=0x0a14", // Numbers "0x30=0x0a66", "0x31=0x0a67", "0x32=0x0a68", "0x33=0x0a69", "0x34=0x0a6a", "0x35=0x0a6b", "0x36=0x0a6c", "0x37=0x0a6d", "0x38=0x0a6e", "0x39=0x0a6f", // Other marks "khNDa=0x262c", "KND=0x262c", ".N=0x0a02", ".n=0x0a70", "M=0x0a70", "H=0x0a03", ".c=0x0a71", ".h=0x0a4d 0x200c", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Croatian.kmap0000644000175000017500000000215007532460064015726 0ustar henrichhenrich// Croatian.kmap for the Unicode editor Yudit // 2001-03-30 Thomas Henlich "C<=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "C'=0x0106", // Ć = LATIN CAPITAL LETTER C WITH ACUTE "DZ<=0x01C4", // DŽ = LATIN CAPITAL LETTER DZ WITH CARON "Dz<=0x01C5", // Dž = LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON "D;=0x0110", // Đ = LATIN CAPITAL LETTER D WITH STROKE "LJ=0x01C7", // LJ = LATIN CAPITAL LETTER LJ "Lj=0x01C8", // Lj = LATIN CAPITAL LETTER L WITH SMALL LETTER J "NJ=0x01CA", // NJ = LATIN CAPITAL LETTER NJ "Nj=0x01CB", // Nj = LATIN CAPITAL LETTER N WITH SMALL LETTER J "S<=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "Z<=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "c<=0x010D", // č = LATIN SMALL LETTER C WITH CARON "c'=0x0107", // ć = LATIN SMALL LETTER C WITH ACUTE "dz<=0x01C6", // dž = LATIN SMALL LETTER DZ WITH CARON "d;=0x0111", // đ = LATIN SMALL LETTER D WITH STROKE "lj=0x01C9", // lj = LATIN SMALL LETTER LJ "nj=0x01CC", // nj = LATIN SMALL LETTER NJ "s<=0x0161", // š = LATIN SMALL LETTER S WITH CARON "z<=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON ./mytool/kmap/Telugu-Inscript.kmap0000644000175000017500000001061407765355504017242 0ustar henrichhenrich// Tel-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri //TELUGU letters "X=0x0C01", // TELUGU SIGN CANDRABINDU "x=0x0C02", // TELUGU SIGN ANUSVARA "_=0x0C03", // TELUGU SIGN VISARGA //"=0x0C04", // TELUGU LETTER "D=0x0C05", // TELUGU LETTER A "E=0x0C06", // TELUGU LETTER AA "F=0x0C07", // TELUGU LETTER I "R=0x0C08", // TELUGU LETTER II "G=0x0C09", // TELUGU LETTER U "T=0x0C0A", // TELUGU LETTER UU "+=0x0C0B", // TELUGU LETTER VOCALIC R "&=0x0C0C", // TELUGU LETTER VOCALIC L //"!=0x0C0D", // TELUGU LETTER CANDRA E "Z=0x0C0E", // TELUGU LETTER SHORT E "S=0x0C0F", // TELUGU LETTER E "W=0x0C10", // TELUGU LETTER AI //"|=0x0C11", // TELUGU LETTER CANDRA O "~=0x0C12", // TELUGU LETTER SHORT O "A=0x0C13", // TELUGU LETTER O "Q=0x0C14", // TELUGU LETTER AU "k=0x0C15", // TELUGU LETTER KA "K=0x0C16", // TELUGU LETTER KHA "i=0x0C17", // TELUGU LETTER GA "I=0x0C18", // TELUGU LETTER GHA "U=0x0C19", // TELUGU LETTER NGA ";=0x0C1A", // TELUGU LETTER CA ":=0x0C1B", // TELUGU LETTER CHA "p=0x0C1C", // TELUGU LETTER JA "P=0x0C1D", // TELUGU LETTER JHA "}=0x0C1E", // TELUGU LETTER NYA "'=0x0C1F", // TELUGU LETTER TTA "\"=0x0C20", // TELUGU LETTER TTHA "[=0x0C21", // TELUGU LETTER DDA "{=0x0C22", // TELUGU LETTER DDHA "C=0x0C23", // TELUGU LETTER NNA "l=0x0C24", // TELUGU LETTER TA "L=0x0C25", // TELUGU LETTER THA "o=0x0C26", // TELUGU LETTER DA "O=0x0C27", // TELUGU LETTER DHA "v=0x0C28", // TELUGU LETTER NA //"V=0x0C29", // TELUGU LETTER NNNA "h=0x0C2A", // TELUGU LETTER PA "H=0x0C2B", // TELUGU LETTER PHA "y=0x0C2C", // TELUGU LETTER BA "Y=0x0C2D", // TELUGU LETTER BHA "c=0x0C2E", // TELUGU LETTER MA "/=0x0C2F", // TELUGU LETTER YA "j=0x0C30", // TELUGU LETTER RA "J=0x0C31", // TELUGU LETTER RRA "n=0x0C32", // TELUGU LETTER LA "N=0x0C33", // TELUGU LETTER LLA //"B=0x0C34", // TELUGU LETTER LLLA "b=0x0C35", // TELUGU LETTER VA "M=0x0C36", // TELUGU LETTER SHA "<=0x0C37", // TELUGU LETTER SSA "m=0x0C38", // TELUGU LETTER SA "u=0x0C39", // TELUGU LETTER HA //"=0x0C3A", // TELUGU LETTER //"=0x0C3B", // TELUGU LETTER "]=0x0C3C", // TELUGU SIGN NUKTA "#=0x0C3D", // TELUGU SIGN AVAGRAHA "e=0x0C3E", // TELUGU VOWEL SIGN AA "f=0x0C3F", // TELUGU VOWEL SIGN I "r=0x0C40", // TELUGU VOWEL SIGN II "g=0x0C41", // TELUGU VOWEL SIGN U "t=0x0C42", // TELUGU VOWEL SIGN UU "\==0x0C43", // TELUGU VOWEL SIGN VOCALIC R "$=0x0C44", // TELUGU VOWEL SIGN VOCALIC RR //"@=0x0C45", // TELUGU VOWEL SIGN CANDRA E "z=0x0C46", // TELUGU VOWEL SIGN SHORT E "s=0x0C47", // TELUGU VOWEL SIGN E "w=0x0C48", // TELUGU VOWEL SIGN AI //"\ \=0x0C49", // TELUGU VOWEL SIGN CANDRA O "`=0x0C4A", // TELUGU VOWEL SIGN SHART O "a=0x0C4B", // TELUGU VOWEL SIGN O "q=0x0C4C", // TELUGU VOWEL SIGN OU "d=0x0C4D", // TELUGU SIGN VIRMA //"=0x0C4E", // TELUGU LETTER //"=0x0C4F", // TELUGU LETTER //"%=0x0C50", // TELUGU OM //"=0x0C51", // TELUGU STRESS SIGN UDATTA //"=0x0C52", // TELUGU STRESS SIGN ANUDATTA //"=0x0C53", // TELUGU GRAVE ACCENT //"=0x0C54", // TELUGU ACUTE ACCENT //"=0x0C55", // TELUGU LETTER //"=0x0C56", // TELUGU LETTER //"=0x0C57", // TELUGU LETTER //"k]=0x0C58", // TELUGU LETTER QA //"K]=0x0C59", // TELUGU LETTER KHHA //"i]=0x0C5A", // TELUGU LETTER GHHA //"p]=0x0C5B", // TELUGU LETTER ZA //"[]=0x0C5C", // TELUGU LETTER DDDHA //"{]=0x0C5D", // TELUGU LETTER RHA //"H]=0x0C5E", // TELUGU LETTER FA //"?=0x0C5F", // TELUGU LETTER YYA "^=0x0C60", // TELUGU LETTER VOCALIC RR "*=0x0C61", // TELUGU LETTER VOCALIC LL //"(=0x0C62", // TELUGU VOWEL SIGN VOCALIC L //")=0x0C63", // TELUGU VOWEL SIGN VOCALIC LL //">=0x0C64", // TELUGU DANDA //">>=0x0C65", // TELUGU DOUBLE DANDA "0x30=0x0C66", // TELUGU DIGIT ZERO "0x31=0x0C67", // TELUGU DIGIT ONE "0x32=0x0C68", // TELUGU DIGIT TWO "0x33=0x0C69", // TELUGU DIGIT THREE "0x34=0x0C6A", // TELUGU DIGIT FOUR "0x35=0x0C6B", // TELUGU DIGIT FIVE "0x36=0x0C6C", // TELUGU DIGIT SIX "0x37=0x0C6D", // TELUGU DIGIT SEVEN "0x38=0x0C6E", // TELUGU DIGIT EIGHT "0x39=0x0C6F", // TELUGU DIGIT NINE //".=0x0C70", // TELUGU ABBREVIATION SIGN //"=0x0C71", // TELUGU LETTER //"=0x0C72", // TELUGU LETTER //"=0x0C73", // TELUGU LETTER //"=0x0C74", // TELUGU LETTER //"=0x0C75", // TELUGU LETTER //"=0x0C76", // TELUGU LETTER //"=0x0C77", // TELUGU LETTER //"=0x0C78", // TELUGU LETTER //"=0x0C79", // TELUGU LETTER //"=0x0C7A", // TELUGU LETTER //"=0x0C7B", // TELUGU LETTER //"=0x0C7C", // TELUGU LETTER //"=0x0C7D", // TELUGU LETTER //"=0x0C7E", // TELUGU LETTER //"=0x0C7F", // TELUGU LETTER ./mytool/kmap/Kana.kmap0000644000175000017500000003115207631526152015045 0ustar henrichhenrich// ============================================================================ // // Kana.kmap (Japanese Phonograms) // // WARNING // ------- // This version of Kana.kmap is different from the one that has been used // with yudit-2.7.2 or earlier. The main difference is that this kmap is // arranged in such a way that it complies with an authorized Japanese // transliteration. As a result, backward compatibility is not guaranteed. // // NOTE // ---- // 1. In general, the transliteration is based on Japanese Government's // Cabinet Notification 1 (Dec. 9, 1954). // // Summary: // // (1) To transliterate Japanese language, Table 1 should be used // primarily. // (2) Table 2 may be used only when existing conventions such as // international relationship should be respected. // (3) Other transliteration is acceptable only when neither Table 1 // nor Table 2 gives any specification of the sound in question // // For details, refer to // // http://xembho.tripod.com/siryo/naikaku_kokuzi.html // // 2. The specification instructed by the Cabinet Notification is rather // inadequate even for daily use. At the present time there are thus // many unauthorized but widely accepted conventions used together with // the authorized transliteration. This kmap contains some of them for // user's convenience (cf. Hiragana 3 and Katakana 3). // // 3. For the unicode mapping relevant to this kmap, refer to 3075--30F5 of // // http://www.macchiato.com/unicode/charts.html // // HISTORY // ------- // 2003-01-22 // // * Submitted to gsinai@yudit.org // // ============================================================================ // ---------------------------------------------------------------------------- // Kigou (Punctuation etc.) // ---------------------------------------------------------------------------- "0x20 =0x3000", ",=0x3001", ".=0x3002", ",,=0x3003", "xx=0x3006", "@=0x3007", "<=0x3008", ">=0x3009", "<<=0x300A", ">>=0x300B" "{=0x300C", "}=0x300D", "{{=0x300E", "}}=0x300F", "[.(=0x3010", ").]=0x3011", "[=0x3014", "]=0x3015", "[(=0x3016", ")]=0x3017", "[[=0x301A", "]]=0x301B", "..=0x30FB", "-=0x30FC", // ---------------------------------------------------------------------------- // Hiragana 1 --- Table 1, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "a=0x3042", "i=0x3044", "u=0x3046", "e=0x3048", "o=0x304A", "ka=0x304B", "ki=0x304D", "ku=0x304F", "ke=0x3051", "ko=0x3053", "sa=0x3055", "si=0x3057", "su=0x3059", "se=0x305B", "so=0x305D", "ta=0x305F", "ti=0x3061", "tu=0x3064", "te=0x3066", "to=0x3068", "na=0x306A", "ni=0x306B", "nu=0x306C", "ne=0x306D", "no=0x306E", "ha=0x306F", "hi=0x3072", "hu=0x3075", "he=0x3078", "ho=0x307B", "ma=0x307E", "mi=0x307F", "mu=0x3080", "me=0x3081", "mo=0x3082", "ya=0x3084", "yu=0x3086", "yo=0x3088", "ra=0x3089", "ri=0x308A", "ru=0x308B", "re=0x308C", "ro=0x308D", "wa=0x308F", "ga=0x304C", "gi=0x304E", "gu=0x3050", "ge=0x3052", "go=0x3054", "za=0x3056", "zi=0x3058", "zu=0x305A", "ze=0x305C", "zo=0x305E", "da=0x3060", "de=0x3067", "do=0x3069", "ba=0x3070", "bi=0x3073", "bu=0x3076", "be=0x3079", "bo=0x307C", "pa=0x3071", "pi=0x3074", "pu=0x3077", "pe=0x307A", "po=0x307D", "kya=0x304D 0x3083", "kyu=0x304D 0x3085", "kyo=0x304D 0x3087", "sya=0x3057 0x3083", "syu=0x3057 0x3085", "syo=0x3057 0x3087", "tya=0x3061 0x3083", "tyu=0x3061 0x3085", "tyo=0x3061 0x3087", "nya=0x306B 0x3083", "nyu=0x306B 0x3085", "nyo=0x306B 0x3087", "hya=0x3072 0x3083", "hyu=0x3072 0x3085", "hyo=0x3072 0x3087", "mya=0x307F 0x3083", "myu=0x307F 0x3085", "myo=0x307F 0x3087", "rya=0x308A 0x3083", "ryu=0x308A 0x3085", "ryo=0x308A 0x3087", "gya=0x304E 0x3083", "gyu=0x304E 0x3085", "gyo=0x304E 0x3087", "zya=0x3058 0x3083", "zyu=0x3058 0x3085", "zyo=0x3058 0x3087", "bya=0x3073 0x3083", "byu=0x3073 0x3085", "byo=0x3073 0x3087", "pya=0x3074 0x3083", "pyu=0x3074 0x3085", "pyo=0x3074 0x3087", "n=0x3093", "n'=0x3093", // ---------------------------------------------------------------------------- // Hiragana 2 --- Table 2, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "sha=0x3057 0x3083", "shi=0x3057", "shu=0x3057 0x3085", "sho=0x3057 0x3087", "tsu=0x3064", "cha=0x3061 0x3083", "chi=0x3061", "chu=0x3061 0x3085", "cho=0x3061 0x3087", "fu=0x3075", "ja=0x3058 0x3083", "ji=0x3058", "ju=0x3058 0x3085", "jo=0x3058 0x3087", "di=0x3062", "du=0x3065", "dya=0x3062 0x3083", "dyu=0x3062 0x3085", "dyo=0x3062 0x3087", "kwa=0x304F 0x308E", "gwa=0x3050 0x308E", "wo=0x3092", // ---------------------------------------------------------------------------- // Hiragana 3 --- Conventional transliterations // ---------------------------------------------------------------------------- // Small Hiragana: The prefix X is never pronounced. It is used as something // like an escape character. "xa=0x3041", "xi=0x3043", "xu=0x3045", "xe=0x3047", "xo=0x3049", "xtu=0x3063", "xya=0x3083", "xyu=0x3085", "xyo=0x3087", "xwa=0x308E", // Historic `wi' and `we' "wi=0x3090", "we=0x3091", // Preceded by a small `tu' "kka=0x3063 0x304B", "kki=0x3063 0x304D", "kku=0x3063 0x304F", "kke=0x3063 0x3051", "kko=0x3063 0x3053", "ssa=0x3063 0x3055", "ssi=0x3063 0x3057", "ssu=0x3063 0x3059", "sse=0x3063 0x305B", "sso=0x3063 0x305D", "tta=0x3063 0x305F", "tti=0x3063 0x3061", "ttu=0x3063 0x3064", "tte=0x3063 0x3066", "tto=0x3063 0x3068", "hha=0x3063 0x306F", "hhi=0x3063 0x3072", "hhu=0x3063 0x3075", "hhe=0x3063 0x3078", "hho=0x3063 0x307B", "mma=0x3063 0x307E", "mmi=0x3063 0x307F", "mmu=0x3063 0x3080", "mme=0x3063 0x3081", "mmo=0x3063 0x3082", "yya=0x3063 0x3084", "yyu=0x3063 0x3086", "yyo=0x3063 0x3088", "rra=0x3063 0x3089", "rri=0x3063 0x308A", "rru=0x3063 0x308B", "rre=0x3063 0x308C", "rro=0x3063 0x308D", "wwa=0x3063 0x308F", "gga=0x3063 0x304C", "ggi=0x3063 0x304E", "ggu=0x3063 0x3050", "gge=0x3063 0x3052", "ggo=0x3063 0x3054", "zza=0x3063 0x3056", "zzi=0x3063 0x3058", "zzu=0x3063 0x305A", "zze=0x3063 0x305C", "zzo=0x3063 0x305E", "dda=0x3063 0x3060", "ddi=0x3063 0x3062", "ddu=0x3063 0x3065", "dde=0x3063 0x3067", "ddo=0x3063 0x3069", "bba=0x3063 0x3070", "bbi=0x3063 0x3073", "bbu=0x3063 0x3076", "bbe=0x3063 0x3079", "bbo=0x3063 0x307C", "ppa=0x3063 0x3071", "ppi=0x3063 0x3074", "ppu=0x3063 0x3077", "ppe=0x3063 0x307A", "ppo=0x3063 0x307D", // Proceded by a small `tu' and followed by a small 'ya', 'yu' or 'yo' "kkya=0x3063 0x304D 0x3083", "kkyu=0x3063 0x304D 0x3085", "kkyo=0x3063 0x304D 0x3087", "ssya=0x3063 0x3057 0x3083", "ssyu=0x3063 0x3057 0x3085", "ssyo=0x3063 0x3057 0x3087", "ttya=0x3063 0x3061 0x3083", "ttyu=0x3063 0x3061 0x3085", "ttyo=0x3063 0x3061 0x3087", "hhya=0x3063 0x3072 0x3083", "hhyu=0x3063 0x3072 0x3085", "hhyo=0x3063 0x3072 0x3087", "mmya=0x3063 0x307F 0x3083", "mmyu=0x3063 0x307F 0x3085", "mmyo=0x3063 0x307F 0x3087", "rrya=0x3063 0x308A 0x3083", "rryu=0x3063 0x308A 0x3085", "rryo=0x3063 0x308A 0x3087", "ggya=0x3063 0x304E 0x3083", "ggyu=0x3063 0x304E 0x3085", "ggyo=0x3063 0x304E 0x3087", "zzya=0x3063 0x3058 0x3083", "zzyu=0x3063 0x3058 0x3085", "zzyo=0x3063 0x3058 0x3087", "bbya=0x3063 0x3073 0x3083", "bbyu=0x3063 0x3073 0x3085", "bbyo=0x3063 0x3073 0x3087", "ppya=0x3063 0x3074 0x3083", "ppyu=0x3063 0x3074 0x3085", "ppyo=0x3063 0x3074 0x3087", // ---------------------------------------------------------------------------- // Katakana 1 --- Table 1, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "A=0x30A2", "I=0x30A4", "U=0x30A6", "E=0x30A8", "O=0x30AA", "KA=0x30AB", "KI=0x30AD", "KU=0x30AF", "KE=0x30B1", "KO=0x30B3", "SA=0x30B5", "SI=0x30B7", "SU=0x30B9", "SE=0x30BB", "SO=0x30BD", "TA=0x30BF", "TI=0x30C1", "TU=0x30C4", "TE=0x30C6", "TO=0x30C8", "NA=0x30CA", "NI=0x30CB", "NU=0x30CC", "NE=0x30CD", "NO=0x30CE", "HA=0x30CF", "HI=0x30D2", "HU=0x30D5", "HE=0x30D8", "HO=0x30DB", "MA=0x30DE", "MI=0x30DF", "MU=0x30E0", "ME=0x30E1", "MO=0x30E2", "YA=0x30E4", "YU=0x30E6", "YO=0x30E8", "RA=0x30E9", "RI=0x30EA", "RU=0x30EB", "RE=0x30EC", "RO=0x30ED", "WA=0x30EF", "GA=0x30AC", "GI=0x30AE", "GU=0x30B0", "GE=0x30B2", "GO=0x30B4", "ZA=0x30B6", "ZI=0x30B8", "ZU=0x30BA", "ZE=0x30BC", "ZO=0x30BE", "DA=0x30C0", "DE=0x30C7", "DO=0x30C9", "BA=0x30D0", "BI=0x30D3", "BU=0x30D6", "BE=0x30D9", "BO=0x30DC", "PA=0x30D1", "PI=0x30D4", "PU=0x30D7", "PE=0x30DA", "PO=0x30DD", "KYA=0x30AD 0x30E3", "KYU=0x30AD 0x30E5", "KYO=0x30AD 0x30E7", "SYA=0x30B7 0x30E3", "SYU=0x30B7 0x30E5", "SYO=0x30B7 0x30E7", "TYA=0x30C1 0x30E3", "TYU=0x30C1 0x30E5", "TYO=0x30C1 0x30E7", "NYA=0x30CB 0x30E3", "NYU=0x30CB 0x30E5", "NYO=0x30Cb 0x30E7", "HYA=0x30D2 0x30E3", "HYU=0x30D2 0x30E5", "HYO=0x30D2 0x30E7", "MYA=0x30DF 0x30E3", "MYU=0x30DF 0x30E5", "MYO=0x30DF 0x30E7", "RYA=0x30EA 0x30E3", "RYU=0x30EA 0x30E5", "RYO=0x30EA 0x30E7", "GYA=0x30AE 0x30E3", "GYU=0x30AE 0x30E5", "GYO=0x30AE 0x30E7", "ZYA=0x30B8 0x30E3", "ZYU=0x30B8 0x30E5", "ZYO=0x30B8 0x30E7", "BYA=0x30D3 0x30E3", "BYU=0x30D3 0x30E5", "BYO=0x30D3 0x30E7", "PYA=0x30D4 0x30E3", "PYU=0x30D4 0x30E5", "PYO=0x30D4 0x30E7", "N=0x30F3", "N'=0x30F3", // ---------------------------------------------------------------------------- // Katakana 2 --- Table 2, Cabinet Notification No. 1 (Dec. 9, 1954) // ---------------------------------------------------------------------------- "SHA=0x30B7 0x30E3", "SHI=0x30B7", "SHU=0x30B7 0x30E5", "SHO=0x30B7 0x30E7", "TSU=0x30C4", "CHA=0x30C1 0x30E3", "CHI=0x30C1", "CHU=0x30C1 0x30E5", "CHO=0x30C1 0x30E7", "FU=0x30D5", "JA=0x30B8 0x30E3", "JI=0x30B8", "JU=0x30B8 0x30E5", "JO=0x30B8 0x30E7", "DI=0x30C2", "DU=0x30C5", "DYA=0x30C2 0x30E3", "DYU=0x30C2 0x30E5", "DYO=0x30C2 0x30E7", "KWA=0x30AF 0x30EE", "GWA=0x30B0 0x30EE", "WO=0x30F2", // ---------------------------------------------------------------------------- // Katakana 3 --- Conventional transliterations // ---------------------------------------------------------------------------- // Small Katakana: The prefix X is never pronounced. It is used as something // like an escape character. "XA=0x30A1", "XI=0x30A3", "XU=0x30A5", "XE=0x30A7", "XO=0x30A9", "XTU=0x30C3", "XYA=0x30E3", "XYU=0x30E5", "XYO=0x30E7", "XWA=0x30EE", // Used only for counting someone or something "XKA=0x30F5", "XKE=0x30F6", // Historic `wi' and `we' "WI=0x30F0", "WE=0x30F1", // Used for the sound `v' of European languages "VA=0x30F4 0x30A1", "VI=0x30F4 0x30A3", "VU=0x30F4", "VE=0x30F4 0x30A7", "VO=0x30F4 0x30A9", "VYU=0x30F4 0x30E5", // Preceded by a small `tu' "KKA=0x30C3 0x30AB", "KKI=0x30C3 0x30AD", "KKU=0x30C3 0x30AF", "KKE=0x30C3 0x30B1", "KKO=0x30C3 0x30B3", "SSA=0x30C3 0x30B5", "SSI=0x30C3 0x30B7", "SSU=0x30C3 0x30B9", "SSE=0x30C3 0x30BB", "SSO=0x30C3 0x30BD", "TTA=0x30C3 0x30BF", "TTI=0x30C3 0x30C1", "TTU=0x30C3 0x30C4", "TTE=0x30C3 0x30C6", "TTO=0x30C3 0x30C8", "HHA=0x30C3 0x30CF", "HHI=0x30C3 0x30D2", "HHU=0x30C3 0x30D5", "HHE=0x30C3 0x30D8", "HHO=0x30C3 0x30DB", "MMA=0x30C3 0x30DE", "MMI=0x30C3 0x30DF", "MMU=0x30C3 0x30E0", "MME=0x30C3 0x30E1", "MMO=0x30C3 0x30E2", "YYA=0x30C3 0x30E4", "YYU=0x30C3 0x30E6", "YYO=0x30C3 0x30E8", "RRA=0x30C3 0x30E9", "RRI=0x30C3 0x30EA", "RRU=0x30C3 0x30EB", "RRE=0x30C3 0x30EC", "RRO=0x30C3 0x30ED", "WWA=0x30C3 0x30EF", "GGA=0x30C3 0x30AC", "GGI=0x30C3 0x30AE", "GGU=0x30C3 0x30B0", "GGE=0x30C3 0x30B2", "GGO=0x30C3 0x30B4", "ZZA=0x30C3 0x30B6", "ZZI=0x30C3 0x30B8", "ZZU=0x30C3 0x30BA", "ZZE=0x30C3 0x30BC", "ZZO=0x30C3 0x30BE", "DDA=0x30C3 0x30C0", "DDI=0x30C3 0x30C2", "DDU=0x30C3 0x30C5", "DDE=0x30C3 0x30C7", "DDO=0x30C3 0x30C9", "BBA=0x30C3 0x30D0", "BBI=0x30C3 0x30D3", "BBU=0x30C3 0x30D6", "BBE=0x30C3 0x30D9", "BBO=0x30C3 0x30DC", "PPA=0x30C3 0x30D1", "PPI=0x30C3 0x30D4", "PPU=0x30C3 0x30D7", "PPE=0x30C3 0x30DA", "PPO=0x30C3 0x30DD", // Proceded by a small `tu' and followed by a small 'ya', 'yu' or 'yo' "KKYA=0x30C3 0x30AD 0x30E3", "KKYU=0x30C3 0x30AD 0x30E5", "KKYO=0x30C3 0x30AD 0x30E7", "SSYA=0x30C3 0x30B7 0x30E3", "SSYU=0x30C3 0x30B7 0x30E5", "SSYO=0x30C3 0x30B7 0x30E7", "TTYA=0x30C3 0x30C1 0x30E3", "TTYU=0x30C3 0x30C1 0x30E5", "TTYO=0x30C3 0x30C1 0x30E7", "HHYA=0x30C3 0x30D2 0x30E3", "HHYU=0x30C3 0x30D2 0x30E5", "HHYO=0x30C3 0x30D2 0x30E7", "MMYA=0x30C3 0x30DF 0x30E3", "MMYU=0x30C3 0x30DF 0x30E5", "MMYO=0x30C3 0x30DF 0x30E7", "RRYA=0x30C3 0x30EA 0x30E3", "RRYU=0x30C3 0x30EA 0x30E5", "RRYO=0x30C3 0x30EA 0x30E7", "GGYA=0x30C3 0x30AE 0x30E3", "GGYU=0x30C3 0x30AE 0x30E5", "GGYO=0x30C3 0x30AE 0x30E7", "ZZYA=0x30C3 0x30B8 0x30E3", "ZZYU=0x30C3 0x30B8 0x30E5", "ZZYO=0x30C3 0x30B8 0x30E7", "BBYA=0x30C3 0x30D3 0x30E3", "BBYU=0x30C3 0x30D3 0x30E5", "BBYO=0x30C3 0x30D3 0x30E7", "PPYA=0x30C3 0x30D4 0x30E3", "PPYU=0x30C3 0x30D4 0x30E5", "PPYO=0x30C3 0x30D4 0x30E7", ./mytool/kmap/Cyrillic.kmap0000644000175000017500000001442007532460064015743 0ustar henrichhenrich// Cyrillic input table following the 1995 edition of international // standard ISO 9 Transliteration of Cyrillic characters: // Created with Emacs for Yudit and decorated with Yudit // © 1998-04-18 Roman Czyborra@cs.tu-berlin.de // Additions and improvements welcome // 0. Quotation marks and special symbols popular with Cyrillic "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "N.=0x2116", // № = NUMERO SIGN "C)=0x00A9", // © = COPYRIGHT SIGN "x)=0x2022", // • = BULLET ":)=0x263A", // ☺ = WHITE SMILING FACE ":(=0x2639", // ☹ = WHITE FROWNING FACE "C-=0x00A4", // ¤ = CURRENCY SIGN "E-=0x20AC", // € = EURO SIGN "L-=0x00A3", // £ = POUND SIGN // 1. General table for Slavic Cyrillic languages // The neat ISO 9 transliterations are worth remembering! // First the full line of Capital letters for clarity: "A =0x0410", // А = CYRILLIC CAPITAL LETTER A "B =0x0411", // Б = CYRILLIC CAPITAL LETTER BE "V =0x0412", // В = CYRILLIC CAPITAL LETTER VE "G =0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "D =0x0414", // Д = CYRILLIC CAPITAL LETTER DE "D-=0x0402", // Ђ = CYRILLIC CAPITAL LETTER DJE "G'=0x0403", // Ѓ = CYRILLIC CAPITAL LETTER GJE "E =0x0415", // Е = CYRILLIC CAPITAL LETTER IE "E:=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "E>=0x0404", // Є = CYRILLIC CAPITAL LETTER UKRAINIAN IE "Z<=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "Z =0x0417", // З = CYRILLIC CAPITAL LETTER ZE "Z>=0x0405", // Ѕ = CYRILLIC CAPITAL LETTER DZE "I =0x0418", // И = CYRILLIC CAPITAL LETTER I "I`=0x0406", // І = CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I "I:=0x0407", // Ї = CYRILLIC CAPITAL LETTER YI "J<=0x0408", // Ј = CYRILLIC CAPITAL LETTER JE "J =0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "K =0x041A", // К = CYRILLIC CAPITAL LETTER KA "L =0x041B", // Л = CYRILLIC CAPITAL LETTER EL "L>=0x0409", // Љ = CYRILLIC CAPITAL LETTER LJE "M =0x041C", // М = CYRILLIC CAPITAL LETTER EM "N =0x041D", // Н = CYRILLIC CAPITAL LETTER EN "N>=0x040A", // Њ = CYRILLIC CAPITAL LETTER NJE "O =0x041E", // О = CYRILLIC CAPITAL LETTER O "P =0x041F", // П = CYRILLIC CAPITAL LETTER PE "R =0x0420", // Р = CYRILLIC CAPITAL LETTER ER "S =0x0421", // С = CYRILLIC CAPITAL LETTER ES "T =0x0422", // Т = CYRILLIC CAPITAL LETTER TE "C'=0x040B", // Ћ = CYRILLIC CAPITAL LETTER TSHE "K'=0x040C", // Ќ = CYRILLIC CAPITAL LETTER KJE "U =0x0423", // У = CYRILLIC CAPITAL LETTER U "U<=0x040E", // Ў = CYRILLIC CAPITAL LETTER SHORT U "F =0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "H =0x0425", // Х = CYRILLIC CAPITAL LETTER HA "C =0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "C<=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "D>=0x040F", // Џ = CYRILLIC CAPITAL LETTER DZHE "S<=0x0428", // Ш = CYRILLIC CAPITAL LETTER SHA "S>=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCHA "\"\"=0x042A",//Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "Y =0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "\"=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "E`=0x042D", // Э = CYRILLIC CAPITAL LETTER E "U>=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "A>=0x042F", // Я = CYRILLIC CAPITAL LETTER YA // Then the same thing in lower case: "a =0x0430", // а = CYRILLIC SMALL LETTER A "b =0x0431", // б = CYRILLIC SMALL LETTER BE "v =0x0432", // в = CYRILLIC SMALL LETTER VE "g =0x0433", // г = CYRILLIC SMALL LETTER GHE "d =0x0434", // д = CYRILLIC SMALL LETTER DE "d-=0x0452", // ђ = CYRILLIC SMALL LETTER DJE "g'=0x0453", // г = CYRILLIC SMALL LETTER GJE "e =0x0435", // е = CYRILLIC SMALL LETTER IE "e:=0x0451", // ё = CYRILLIC SMALL LETTER IO "e>=0x0454", // є = CYRILLIC SMALL LETTER UKRAINIAN IE "z<=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "z =0x0437", // з = CYRILLIC SMALL LETTER ZE "z>=0x0455", // ѕ = CYRILLIC SMALL LETTER DZE "i =0x0438", // и = CYRILLIC SMALL LETTER I "i`=0x0456", // і = CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I "i:=0x0457", // ї = CYRILLIC SMALL LETTER YI "j<=0x0458", // ј = CYRILLIC SMALL LETTER JE "j =0x0439", // й = CYRILLIC SMALL LETTER SHORT I "k =0x043A", // к = CYRILLIC SMALL LETTER KA "l =0x043B", // л = CYRILLIC SMALL LETTER EL "l>=0x0459", // љ = CYRILLIC SMALL LETTER LJE "m =0x043C", // м = CYRILLIC SMALL LETTER EM "n =0x043D", // н = CYRILLIC SMALL LETTER EN "n>=0x045A", // њ = CYRILLIC SMALL LETTER NJE "o =0x043E", // о = CYRILLIC SMALL LETTER O "p =0x043F", // п = CYRILLIC SMALL LETTER PE "r =0x0440", // р = CYRILLIC SMALL LETTER ER "s =0x0441", // с = CYRILLIC SMALL LETTER ES "t =0x0442", // т = CYRILLIC SMALL LETTER TE "c'=0x045B", // ћ = CYRILLIC SMALL LETTER TSHE "k'=0x045C", // ќ = CYRILLIC SMALL LETTER KJE "u =0x0443", // у = CYRILLIC SMALL LETTER U "u<=0x045E", // ў = CYRILLIC SMALL LETTER SHORT U "f =0x0444", // ф = CYRILLIC SMALL LETTER EF "h =0x0445", // х = CYRILLIC SMALL LETTER HA "c =0x0446", // ц = CYRILLIC SMALL LETTER TSE "c<=0x0447", // ч = CYRILLIC SMALL LETTER CHE "d>=0x045F", // џ = CYRILLIC SMALL LETTER DZHE "s<=0x0448", // ш = CYRILLIC SMALL LETTER SHA "s>=0x0449", // щ = CYRILLIC SMALL LETTER SCHCHA "''=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "y =0x044B", // ы = CYRILLIC SMALL LETTER YERU "' =0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN "e`=0x044D", // э = CYRILLIC SMALL LETTER E "u>=0x044E", // ю = CYRILLIC SMALL LETTER YU "a>=0x044F", // я = CYRILLIC SMALL LETTER YA // 2. The so-called complementary table for the Slavic Cyrillic // characters used by some communities established outside the // boundaries of their native countries (Ghe with upturn is also // officially used in the Ukraine again) contains "G`=0x0490", // Ґ = CYRILLIC CAPITAL LETTER GHE WITH UPTURN "g`=0x0491", // ґ = CYRILLIC SMALL LETTER GHE WITH UPTURN "E<=0x0462", // Ѣ = CYRILLIC CAPITAL LETTER YAT "e<=0x0463", // ѣ = CYRILLIC SMALL LETTER YAT "A<=0x046A", // Ѫ = CYRILLIC CAPITAL LETTER BIG YUS "a<=0x046B", // ѫ = CYRILLIC SMALL LETTER BIG YUS "F`=0x0472", // Ѳ = CYRILLIC CAPITAL LETTER FITA "f`=0x0473", // ѳ = CYRILLIC SMALL LETTER FITA "Y`=0x0474", // Ѵ = CYRILLIC CAPITAL LETTER IZHITSA "y`=0x0475", // ѵ = CYRILLIC SMALL LETTER IZHITSA // 3. Cyrillic characters for non-Slavic languages // ... haven't gotten to looking them all up yet :( ./mytool/kmap/Russian-Translit-Slovene.kmap0000644000175000017500000000550607765355504021043 0ustar henrichhenrich// This is an extended Russian.kmap. If you have ISO 8859-2 encoded // Slovenian, Croatian, Czech, Slovak,... keyboard you can quickly // enter Russian letters 'zh', 'ch', 'sh' and 'shch' using // Latin letters 'ch', 'sh' and 'zh' from languages above // WARNING: always open this file in any of 8-bit encoding!!! // If you by accident opened it in any other encoding (7-bit, any version of Unicode) // close it without saving and open it in any 8-bit encoding // or some inputs for 'shch' will not work // // Latest version: Jernej Kovacic 2002-08-02 // //---------------- Capital letters ---------------- // "A=0x0410", "B=0x0411", "V=0x0412", "G=0x0413", "D=0x0414", "E=0x0415", "Yo=0x0401", "YO=0x0401", "ZH=0x0416", "Zh=0x0416", "Z=0x0417", "ZS=0x0417", "Zs=0x0417", "I=0x0418", "Y=0x0419", "K=0x041A", "L=0x041B", "M=0x041C", "N=0x041D", "O=0x041E", "P=0x041F", "R=0x0420", "S=0x0421", "T=0x0422", "U=0x0423", "F=0x0424", "H=0x0425", "TS=0x0426", "Ts=0x0426", "CH=0x0427", "Ch=0x0427", "SH=0x0428", "Sh=0x0428", "SHCH=0x0429", "Shch=0x0429", "Q=0x042A", // HARD SIGN "U x=0x042B", // YERU "X=0x042B", // YERU "C=0x042C", // SOFT SIGN "EE=0x042D", "Ee=0x042D", "W=0x042D", "YU=0x042E", "Yu=0x042E", "YA=0x042F", "Ya=0x042F", "a=0x0430", "b=0x0431", "v=0x0432", "g=0x0433", "d=0x0434", "e=0x0435", "yo=0x0451", "zh=0x0436", "z=0x0437", "zs=0x0437", "i=0x0438", "y=0x0439", "k=0x043A", "l=0x043B", "m=0x043C", "n=0x043D", "o=0x043E", "p=0x043F", "r=0x0440", "s=0x0441", "t=0x0442", "u=0x0443", "f=0x0444", "h=0x0445", "ts=0x0446", "ch=0x0447", "sh=0x0448", "shch=0x0449", "q=0x044A", // HARD SIGN "u x=0x044B", // YERU "x=0x044B", // YERU "c=0x044C", // SOFT SIGN "ee=0x044D", "w=0x044D", "yu=0x044E", "ya=0x044F", // Here start some additions: "0xAE=0x0416", // CYRILLIC CAPITAL LETTER ZH "0xC8=0x0427", // CYRILLIC CAPITAL LETTER CH "0xA9=0x0428", // CYRILLIC CAPITAL LETTER SH "=0x0429", // CYRILLIC CAPITAL LETTER SHCH "=0x0429", // CYRILLIC CAPITAL LETTER SHCH "0xBE=0x0436", // CYRILLIC SMALL LETTER ZH "0xE8=0x0447", // CYRILLIC SMALL LETTER CH "0xB9=0x0448", // CYRILLIC SMALL LETTER SH "=0x0449", // CYRILLIC SMALL LETTER SHCH // and here are some other Slovene transliterations not interfering // with previously defined ones: "J=0x0419", // CYRILLIC CAPITAL LETTER Y "j=0x0439", // CYRILLIC SMALL LETTER Y "JO=0x0401", // CYRILLIC CAPITAL LETTER YO "Jo=0x0401", // CYRILLIC CAPITAL LETTER YO "jo=0x0451", // CYRILLIC SMALL LETTER YO "JU=0x042E", // CYRILLIC CAPITAL LETTER YU "Ju=0x042E", // CYRILLIC CAPITAL LETTER YU "ju=0x044E", // CYRILLIC SMALL LETTER YU "JA=0x042F", // CYRILLIC CAPITAL LETTER YA "Ja=0x042F", // CYRILLIC CAPITAL LETTER YA "ja=0x044F", // CYRILLIC SMALL LETTER YA ./mytool/kmap/BengaliSona.kmap0000644000175000017500000006052007606427176016366 0ustar henrichhenrich// Bengali kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-01-23 // // Modified Bengali.kmap as BengaliSona.kmap 2002-12-22 by Bijon B Shaha // to introduce explicit hasanta in place of default hasanta. This avoids 'a' // keystrokes used to neutralize the unnecessary 'hasantas' and hence improves typing speed. // Consonant + vowel/virama ".D`=0x09dc 0x09cd", ".D.h=0x09dc 0x09cd 0x200c", ".DA=0x09dc 0x09be", ".DI=0x09dc 0x09c0", ".DLLI=0x09dc 0x09e3", ".DLLi=0x09dc 0x09e2", ".DL^I=0x09dc 0x09e3", ".DL^i=0x09dc 0x09e2", ".DRRI=0x09dc 0x09c4", ".DRRi=0x09dc 0x09c3", ".DR^I=0x09dc 0x09c4", ".DR^i=0x09dc 0x09c3", ".DU=0x09dc 0x09c2", ".D=0x09dc", ".Da=0x09dc", ".Daa=0x09dc 0x09be", ".Dai=0x09dc 0x09c8", ".Dau=0x09dc 0x09cc", ".De=0x09dc 0x09c7", ".Di=0x09dc 0x09bf", ".Dii=0x09dc 0x09c0", ".Do=0x09dc 0x09cb", ".Du=0x09dc 0x09c1", ".Duu=0x09dc 0x09c2", ".Dh`=0x09dd 0x09cd", ".Dh.h=0x09dd 0x09cd 0x200c", ".DhA=0x09dd 0x09be", ".DhI=0x09dd 0x09c0", ".DhLLI=0x09dd 0x09e3", ".DhLLi=0x09dd 0x09e2", ".DhL^I=0x09dd 0x09e3", ".DhL^i=0x09dd 0x09e2", ".DhRRI=0x09dd 0x09c4", ".DhRRi=0x09dd 0x09c3", ".DhR^I=0x09dd 0x09c4", ".DhR^i=0x09dd 0x09c3", ".DhU=0x09dd 0x09c2", ".Dh=0x09dd", ".Dha=0x09dd", ".Dhaa=0x09dd 0x09be", ".Dhai=0x09dd 0x09c8", ".Dhau=0x09dd 0x09cc", ".Dhe=0x09dd 0x09c7", ".Dhi=0x09dd 0x09bf", ".Dhii=0x09dd 0x09c0", ".Dho=0x09dd 0x09cb", ".Dhu=0x09dd 0x09c1", ".Dhuu=0x09dd 0x09c2", "Ch`=0x099b 0x09cd", "Ch.h=0x099b 0x09cd 0x200c", "ChA=0x099b 0x09be", "ChI=0x099b 0x09c0", "ChLLI=0x099b 0x09e3", "ChLLi=0x099b 0x09e2", "ChL^I=0x099b 0x09e3", "ChL^i=0x099b 0x09e2", "ChRRI=0x099b 0x09c4", "ChRRi=0x099b 0x09c3", "ChR^I=0x099b 0x09c4", "ChR^i=0x099b 0x09c3", "ChU=0x099b 0x09c2", "Ch=0x099b", "Cha=0x099b", "Chaa=0x099b 0x09be", "Chai=0x099b 0x09c8", "Chau=0x099b 0x09cc", "Che=0x099b 0x09c7", "Chi=0x099b 0x09bf", "Chii=0x099b 0x09c0", "Cho=0x099b 0x09cb", "Chu=0x099b 0x09c1", "Chuu=0x099b 0x09c2", "D`=0x09a1 0x09cd", "D.h=0x09a1 0x09cd 0x200c", "DA=0x09a1 0x09be", "DI=0x09a1 0x09c0", "DLLI=0x09a1 0x09e3", "DLLi=0x09a1 0x09e2", "DL^I=0x09a1 0x09e3", "DL^i=0x09a1 0x09e2", "DRRI=0x09a1 0x09c4", "DRRi=0x09a1 0x09c3", "DR^I=0x09a1 0x09c4", "DR^i=0x09a1 0x09c3", "DU=0x09a1 0x09c2", "D=0x09a1", "Da=0x09a1", "Daa=0x09a1 0x09be", "Dai=0x09a1 0x09c8", "Dau=0x09a1 0x09cc", "De=0x09a1 0x09c7", "Di=0x09a1 0x09bf", "Dii=0x09a1 0x09c0", "Do=0x09a1 0x09cb", "Du=0x09a1 0x09c1", "Duu=0x09a1 0x09c2", "Dh`=0x09a2 0x09cd", "Dh.h=0x09a2 0x09cd 0x200c", "DhA=0x09a2 0x09be", "DhI=0x09a2 0x09c0", "DhLLI=0x09a2 0x09e3", "DhLLi=0x09a2 0x09e2", "DhL^I=0x09a2 0x09e3", "DhL^i=0x09a2 0x09e2", "DhRRI=0x09a2 0x09c4", "DhRRi=0x09a2 0x09c3", "DhR^I=0x09a2 0x09c4", "DhR^i=0x09a2 0x09c3", "DhU=0x09a2 0x09c2", "Dh=0x09a2", "Dha=0x09a2", "Dhaa=0x09a2 0x09be", "Dhai=0x09a2 0x09c8", "Dhau=0x09a2 0x09cc", "Dhe=0x09a2 0x09c7", "Dhi=0x09a2 0x09bf", "Dhii=0x09a2 0x09c0", "Dho=0x09a2 0x09cb", "Dhu=0x09a2 0x09c1", "Dhuu=0x09a2 0x09c2", "GY`=0x099c 0x09cd 0x099e 0x09cd", "GY.h=0x099c 0x09cd 0x099e 0x09cd 0x200c", "GYA=0x099c 0x09cd 0x099e 0x09be", "GYI=0x099c 0x09cd 0x099e 0x09c0", "GYLLI=0x099c 0x09cd 0x099e 0x09e3", "GYLLi=0x099c 0x09cd 0x099e 0x09e2", "GYL^I=0x099c 0x09cd 0x099e 0x09e3", "GYL^i=0x099c 0x09cd 0x099e 0x09e2", "GYRRI=0x099c 0x09cd 0x099e 0x09c4", "GYRRi=0x099c 0x09cd 0x099e 0x09c3", "GYR^I=0x099c 0x09cd 0x099e 0x09c4", "GYR^i=0x099c 0x09cd 0x099e 0x09c3", "GYU=0x099c 0x09cd 0x099e 0x09c2", "GY=0x099c 0x09cd 0x099e", "GYa=0x099c 0x09cd 0x099e", "GYaa=0x099c 0x09cd 0x099e 0x09be", "GYai=0x099c 0x09cd 0x099e 0x09c8", "GYau=0x099c 0x09cd 0x099e 0x09cc", "GYe=0x099c 0x09cd 0x099e 0x09c7", "GYi=0x099c 0x09cd 0x099e 0x09bf", "GYii=0x099c 0x09cd 0x099e 0x09c0", "GYo=0x099c 0x09cd 0x099e 0x09cb", "GYu=0x099c 0x09cd 0x099e 0x09c1", "GYuu=0x099c 0x09cd 0x099e 0x09c2", "J`=0x09af 0x09cd", "J.h=0x09af 0x09cd 0x200c", "JA=0x09af 0x09be", "JI=0x09af 0x09c0", "JLLI=0x09af 0x09e3", "JLLi=0x09af 0x09e2", "JL^I=0x09af 0x09e3", "JL^i=0x09af 0x09e2", "JRRI=0x09af 0x09c4", "JRRi=0x09af 0x09c3", "JR^I=0x09af 0x09c4", "JR^i=0x09af 0x09c3", "JU=0x09af 0x09c2", "J=0x09af", "Ja=0x09af", "Jaa=0x09af 0x09be", "Jai=0x09af 0x09c8", "Jau=0x09af 0x09cc", "Je=0x09af 0x09c7", "Ji=0x09af 0x09bf", "Jii=0x09af 0x09c0", "Jo=0x09af 0x09cb", "Ju=0x09af 0x09c1", "Juu=0x09af 0x09c2", "JN`=0x099e 0x09cd", "JN.h=0x099e 0x09cd 0x200c", "JNA=0x099e 0x09be", "JNI=0x099e 0x09c0", "JNLLI=0x099e 0x09e3", "JNLLi=0x099e 0x09e2", "JNL^I=0x099e 0x09e3", "JNL^i=0x099e 0x09e2", "JNRRI=0x099e 0x09c4", "JNRRi=0x099e 0x09c3", "JNR^I=0x099e 0x09c4", "JNR^i=0x099e 0x09c3", "JNU=0x099e 0x09c2", "JN=0x099e", "JNa=0x099e", "JNaa=0x099e 0x09be", "JNai=0x099e 0x09c8", "JNau=0x099e 0x09cc", "JNe=0x099e 0x09c7", "JNi=0x099e 0x09bf", "JNii=0x099e 0x09c0", "JNo=0x099e 0x09cb", "JNu=0x099e 0x09c1", "JNuu=0x099e 0x09c2", "N`=0x09a3 0x09cd", "N.h=0x09a3 0x09cd 0x200c", "NA=0x09a3 0x09be", "NI=0x09a3 0x09c0", "NLLI=0x09a3 0x09e3", "NLLi=0x09a3 0x09e2", "NL^I=0x09a3 0x09e3", "NL^i=0x09a3 0x09e2", "NRRI=0x09a3 0x09c4", "NRRi=0x09a3 0x09c3", "NR^I=0x09a3 0x09c4", "NR^i=0x09a3 0x09c3", "NU=0x09a3 0x09c2", "N=0x09a3", "Na=0x09a3", "Naa=0x09a3 0x09be", "Nai=0x09a3 0x09c8", "Nau=0x09a3 0x09cc", "Ne=0x09a3 0x09c7", "Ni=0x09a3 0x09bf", "Nii=0x09a3 0x09c0", "No=0x09a3 0x09cb", "Nu=0x09a3 0x09c1", "Nuu=0x09a3 0x09c2", "N^`=0x0999 0x09cd", "N^.h=0x0999 0x09cd 0x200c", "N^A=0x0999 0x09be", "N^I=0x0999 0x09c0", "N^LLI=0x0999 0x09e3", "N^LLi=0x0999 0x09e2", "N^L^I=0x0999 0x09e3", "N^L^i=0x0999 0x09e2", "N^RRI=0x0999 0x09c4", "N^RRi=0x0999 0x09c3", "N^R^I=0x0999 0x09c4", "N^R^i=0x0999 0x09c3", "N^U=0x0999 0x09c2", "N^=0x0999", "N^a=0x0999", "N^aa=0x0999 0x09be", "N^ai=0x0999 0x09c8", "N^au=0x0999 0x09cc", "N^e=0x0999 0x09c7", "N^i=0x0999 0x09bf", "N^ii=0x0999 0x09c0", "N^o=0x0999 0x09cb", "N^u=0x0999 0x09c1", "N^uu=0x0999 0x09c2", "Sh`=0x09b7 0x09cd", "Sh.h=0x09b7 0x09cd 0x200c", "ShA=0x09b7 0x09be", "ShI=0x09b7 0x09c0", "ShLLI=0x09b7 0x09e3", "ShLLi=0x09b7 0x09e2", "ShL^I=0x09b7 0x09e3", "ShL^i=0x09b7 0x09e2", "ShRRI=0x09b7 0x09c4", "ShRRi=0x09b7 0x09c3", "ShR^I=0x09b7 0x09c4", "ShR^i=0x09b7 0x09c3", "ShU=0x09b7 0x09c2", "Sh=0x09b7", "Sha=0x09b7", "Shaa=0x09b7 0x09be", "Shai=0x09b7 0x09c8", "Shau=0x09b7 0x09cc", "She=0x09b7 0x09c7", "Shi=0x09b7 0x09bf", "Shii=0x09b7 0x09c0", "Sho=0x09b7 0x09cb", "Shu=0x09b7 0x09c1", "Shuu=0x09b7 0x09c2", "T`=0x099f 0x09cd", "T.h=0x099f 0x09cd 0x200c", "TA=0x099f 0x09be", "TI=0x099f 0x09c0", "TLLI=0x099f 0x09e3", "TLLi=0x099f 0x09e2", "TL^I=0x099f 0x09e3", "TL^i=0x099f 0x09e2", "TRRI=0x099f 0x09c4", "TRRi=0x099f 0x09c3", "TR^I=0x099f 0x09c4", "TR^i=0x099f 0x09c3", "TU=0x099f 0x09c2", "T=0x099f", "Ta=0x099f", "Taa=0x099f 0x09be", "Tai=0x099f 0x09c8", "Tau=0x099f 0x09cc", "Te=0x099f 0x09c7", "Ti=0x099f 0x09bf", "Tii=0x099f 0x09c0", "To=0x099f 0x09cb", "Tu=0x099f 0x09c1", "Tuu=0x099f 0x09c2", "Th`=0x09a0 0x09cd", "Th.h=0x09a0 0x09cd 0x200c", "ThA=0x09a0 0x09be", "ThI=0x09a0 0x09c0", "ThLLI=0x09a0 0x09e3", "ThLLi=0x09a0 0x09e2", "ThL^I=0x09a0 0x09e3", "ThL^i=0x09a0 0x09e2", "ThRRI=0x09a0 0x09c4", "ThRRi=0x09a0 0x09c3", "ThR^I=0x09a0 0x09c4", "ThR^i=0x09a0 0x09c3", "ThU=0x09a0 0x09c2", "Th=0x09a0", "Tha=0x09a0", "Thaa=0x09a0 0x09be", "Thai=0x09a0 0x09c8", "Thau=0x09a0 0x09cc", "The=0x09a0 0x09c7", "Thi=0x09a0 0x09bf", "Thii=0x09a0 0x09c0", "Tho=0x09a0 0x09cb", "Thu=0x09a0 0x09c1", "Thuu=0x09a0 0x09c2", "Y`=0x09df 0x09cd", "Y.h=0x09df 0x09cd 0x200c", "YA=0x09df 0x09be", "YI=0x09df 0x09c0", "YLLI=0x09df 0x09e3", "YLLi=0x09df 0x09e2", "YL^I=0x09df 0x09e3", "YL^i=0x09df 0x09e2", "YRRI=0x09df 0x09c4", "YRRi=0x09df 0x09c3", "YR^I=0x09df 0x09c4", "YR^i=0x09df 0x09c3", "YU=0x09df 0x09c2", "Y=0x09df", "Ya=0x09df", "Yaa=0x09df 0x09be", "Yai=0x09df 0x09c8", "Yau=0x09df 0x09cc", "Ye=0x09df 0x09c7", "Yi=0x09df 0x09bf", "Yii=0x09df 0x09c0", "Yo=0x09df 0x09cb", "Yu=0x09df 0x09c1", "Yuu=0x09df 0x09c2", "b`=0x09ac 0x09cd", "b.h=0x09ac 0x09cd 0x200c", "bA=0x09ac 0x09be", "bI=0x09ac 0x09c0", "bLLI=0x09ac 0x09e3", "bLLi=0x09ac 0x09e2", "bL^I=0x09ac 0x09e3", "bL^i=0x09ac 0x09e2", "bRRI=0x09ac 0x09c4", "bRRi=0x09ac 0x09c3", "bR^I=0x09ac 0x09c4", "bR^i=0x09ac 0x09c3", "bU=0x09ac 0x09c2", "b=0x09ac", "ba=0x09ac", "baa=0x09ac 0x09be", "bai=0x09ac 0x09c8", "bau=0x09ac 0x09cc", "be=0x09ac 0x09c7", "bi=0x09ac 0x09bf", "bii=0x09ac 0x09c0", "bo=0x09ac 0x09cb", "bu=0x09ac 0x09c1", "buu=0x09ac 0x09c2", "bh`=0x09ad 0x09cd", "bh.h=0x09ad 0x09cd 0x200c", "bhA=0x09ad 0x09be", "bhI=0x09ad 0x09c0", "bhLLI=0x09ad 0x09e3", "bhLLi=0x09ad 0x09e2", "bhL^I=0x09ad 0x09e3", "bhL^i=0x09ad 0x09e2", "bhRRI=0x09ad 0x09c4", "bhRRi=0x09ad 0x09c3", "bhR^I=0x09ad 0x09c4", "bhR^i=0x09ad 0x09c3", "bhU=0x09ad 0x09c2", "bh=0x09ad", "bha=0x09ad", "bhaa=0x09ad 0x09be", "bhai=0x09ad 0x09c8", "bhau=0x09ad 0x09cc", "bhe=0x09ad 0x09c7", "bhi=0x09ad 0x09bf", "bhii=0x09ad 0x09c0", "bho=0x09ad 0x09cb", "bhu=0x09ad 0x09c1", "bhuu=0x09ad 0x09c2", "c`=0x099a 0x09cd", "c.h=0x099a 0x09cd 0x200c", "cA=0x099a 0x09be", "cI=0x099a 0x09c0", "cLLI=0x099a 0x09e3", "cLLi=0x099a 0x09e2", "cL^I=0x099a 0x09e3", "cL^i=0x099a 0x09e2", "cRRI=0x099a 0x09c4", "cRRi=0x099a 0x09c3", "cR^I=0x099a 0x09c4", "cR^i=0x099a 0x09c3", "cU=0x099a 0x09c2", "c=0x099a", "ca=0x099a", "caa=0x099a 0x09be", "cai=0x099a 0x09c8", "cau=0x099a 0x09cc", "ce=0x099a 0x09c7", "ci=0x099a 0x09bf", "cii=0x099a 0x09c0", "co=0x099a 0x09cb", "cu=0x099a 0x09c1", "cuu=0x099a 0x09c2", "ch`=0x099a 0x09cd", "ch.h=0x099a 0x09cd 0x200c", "chA=0x099a 0x09be", "chI=0x099a 0x09c0", "chLLI=0x099a 0x09e3", "chLLi=0x099a 0x09e2", "chL^I=0x099a 0x09e3", "chL^i=0x099a 0x09e2", "chRRI=0x099a 0x09c4", "chRRi=0x099a 0x09c3", "chR^I=0x099a 0x09c4", "chR^i=0x099a 0x09c3", "chU=0x099a 0x09c2", "ch=0x099a", "cha=0x099a", "chaa=0x099a 0x09be", "chai=0x099a 0x09c8", "chau=0x099a 0x09cc", "che=0x099a 0x09c7", "chi=0x099a 0x09bf", "chii=0x099a 0x09c0", "cho=0x099a 0x09cb", "chu=0x099a 0x09c1", "chuu=0x099a 0x09c2", "chh`=0x099b 0x09cd", "chh.h=0x099b 0x09cd 0x200c", "chhA=0x099b 0x09be", "chhI=0x099b 0x09c0", "chhLLI=0x099b 0x09e3", "chhLLi=0x099b 0x09e2", "chhL^I=0x099b 0x09e3", "chhL^i=0x099b 0x09e2", "chhRRI=0x099b 0x09c4", "chhRRi=0x099b 0x09c3", "chhR^I=0x099b 0x09c4", "chhR^i=0x099b 0x09c3", "chhU=0x099b 0x09c2", "chh=0x099b", "chha=0x099b", "chhaa=0x099b 0x09be", "chhai=0x099b 0x09c8", "chhau=0x099b 0x09cc", "chhe=0x099b 0x09c7", "chhi=0x099b 0x09bf", "chhii=0x099b 0x09c0", "chho=0x099b 0x09cb", "chhu=0x099b 0x09c1", "chhuu=0x099b 0x09c2", "d`=0x09a6 0x09cd", "d.h=0x09a6 0x09cd 0x200c", "dA=0x09a6 0x09be", "dI=0x09a6 0x09c0", "dLLI=0x09a6 0x09e3", "dLLi=0x09a6 0x09e2", "dL^I=0x09a6 0x09e3", "dL^i=0x09a6 0x09e2", "dRRI=0x09a6 0x09c4", "dRRi=0x09a6 0x09c3", "dR^I=0x09a6 0x09c4", "dR^i=0x09a6 0x09c3", "dU=0x09a6 0x09c2", "d=0x09a6", "da=0x09a6", "da=0x09a6", "daa=0x09a6 0x09be", "dai=0x09a6 0x09c8", "dau=0x09a6 0x09cc", "de=0x09a6 0x09c7", "di=0x09a6 0x09bf", "dii=0x09a6 0x09c0", "do=0x09a6 0x09cb", "du=0x09a6 0x09c1", "duu=0x09a6 0x09c2", "dh`=0x09a7 0x09cd", "dh.h=0x09a7 0x09cd 0x200c", "dhA=0x09a7 0x09be", "dhI=0x09a7 0x09c0", "dhLLI=0x09a7 0x09e3", "dhLLi=0x09a7 0x09e2", "dhL^I=0x09a7 0x09e3", "dhL^i=0x09a7 0x09e2", "dhRRI=0x09a7 0x09c4", "dhRRi=0x09a7 0x09c3", "dhR^I=0x09a7 0x09c4", "dhR^i=0x09a7 0x09c3", "dhU=0x09a7 0x09c2", "dh=0x09a7", "dha=0x09a7", "dhaa=0x09a7 0x09be", "dhai=0x09a7 0x09c8", "dhau=0x09a7 0x09cc", "dhe=0x09a7 0x09c7", "dhi=0x09a7 0x09bf", "dhii=0x09a7 0x09c0", "dho=0x09a7 0x09cb", "dhu=0x09a7 0x09c1", "dhuu=0x09a7 0x09c2", "dny`=0x099c 0x09cd 0x099e 0x09cd", "dny.h=0x099c 0x09cd 0x099e 0x09cd 0x200c", "dnyA=0x099c 0x09cd 0x099e 0x09be", "dnyI=0x099c 0x09cd 0x099e 0x09c0", "dnyLLI=0x099c 0x09cd 0x099e 0x09e3", "dnyLLi=0x099c 0x09cd 0x099e 0x09e2", "dnyL^I=0x099c 0x09cd 0x099e 0x09e3", "dnyL^i=0x099c 0x09cd 0x099e 0x09e2", "dnyRRI=0x099c 0x09cd 0x099e 0x09c4", "dnyRRi=0x099c 0x09cd 0x099e 0x09c3", "dnyR^I=0x099c 0x09cd 0x099e 0x09c4", "dnyR^i=0x099c 0x09cd 0x099e 0x09c3", "dnyU=0x099c 0x09cd 0x099e 0x09c2", "dny=0x099c 0x09cd 0x099e", "dnya=0x099c 0x09cd 0x099e", "dnyaa=0x099c 0x09cd 0x099e 0x09be", "dnyai=0x099c 0x09cd 0x099e 0x09c8", "dnyau=0x099c 0x09cd 0x099e 0x09cc", "dnye=0x099c 0x09cd 0x099e 0x09c7", "dnyi=0x099c 0x09cd 0x099e 0x09bf", "dnyii=0x099c 0x09cd 0x099e 0x09c0", "dnyo=0x099c 0x09cd 0x099e 0x09cb", "dnyu=0x099c 0x09cd 0x099e 0x09c1", "dnyuu=0x099c 0x09cd 0x099e 0x09c2", "g`=0x0997 0x09cd", "g.h=0x0997 0x09cd 0x200c", "gA=0x0997 0x09be", "gI=0x0997 0x09c0", "gLLI=0x0997 0x09e3", "gLLi=0x0997 0x09e2", "gL^I=0x0997 0x09e3", "gL^i=0x0997 0x09e2", "gRRI=0x0997 0x09c4", "gRRi=0x0997 0x09c3", "gR^I=0x0997 0x09c4", "gR^i=0x0997 0x09c3", "gU=0x0997 0x09c2", "g=0x0997", "ga=0x0997", "gaa=0x0997 0x09be", "gai=0x0997 0x09c8", "gau=0x0997 0x09cc", "ge=0x0997 0x09c7", "gi=0x0997 0x09bf", "gii=0x0997 0x09c0", "go=0x0997 0x09cb", "gu=0x0997 0x09c1", "guu=0x0997 0x09c2", "gh`=0x0998 0x09cd", "gh.h=0x0998 0x09cd 0x200c", "ghA=0x0998 0x09be", "ghI=0x0998 0x09c0", "ghLLI=0x0998 0x09e3", "ghLLi=0x0998 0x09e2", "ghL^I=0x0998 0x09e3", "ghL^i=0x0998 0x09e2", "ghRRI=0x0998 0x09c4", "ghRRi=0x0998 0x09c3", "ghR^I=0x0998 0x09c4", "ghR^i=0x0998 0x09c3", "ghU=0x0998 0x09c2", "gh=0x0998", "gha=0x0998", "ghaa=0x0998 0x09be", "ghai=0x0998 0x09c8", "ghau=0x0998 0x09cc", "ghe=0x0998 0x09c7", "ghi=0x0998 0x09bf", "ghii=0x0998 0x09c0", "gho=0x0998 0x09cb", "ghu=0x0998 0x09c1", "ghuu=0x0998 0x09c2", "h`=0x09b9 0x09cd", "h.h=0x09b9 0x09cd 0x200c", "hA=0x09b9 0x09be", "hI=0x09b9 0x09c0", "hLLI=0x09b9 0x09e3", "hLLi=0x09b9 0x09e2", "hL^I=0x09b9 0x09e3", "hL^i=0x09b9 0x09e2", "hRRI=0x09b9 0x09c4", "hRRi=0x09b9 0x09c3", "hR^I=0x09b9 0x09c4", "hR^i=0x09b9 0x09c3", "hU=0x09b9 0x09c2", "h=0x09b9", "ha=0x09b9", "haa=0x09b9 0x09be", "hai=0x09b9 0x09c8", "hau=0x09b9 0x09cc", "he=0x09b9 0x09c7", "hi=0x09b9 0x09bf", "hii=0x09b9 0x09c0", "ho=0x09b9 0x09cb", "hu=0x09b9 0x09c1", "huu=0x09b9 0x09c2", "j`=0x099c 0x09cd", "j.h=0x099c 0x09cd 0x200c", "jA=0x099c 0x09be", "jI=0x099c 0x09c0", "jLLI=0x099c 0x09e3", "jLLi=0x099c 0x09e2", "jL^I=0x099c 0x09e3", "jL^i=0x099c 0x09e2", "jRRI=0x099c 0x09c4", "jRRi=0x099c 0x09c3", "jR^I=0x099c 0x09c4", "jR^i=0x099c 0x09c3", "jU=0x099c 0x09c2", "j=0x099c", "ja=0x099c", "jaa=0x099c 0x09be", "jai=0x099c 0x09c8", "jau=0x099c 0x09cc", "je=0x099c 0x09c7", "ji=0x099c 0x09bf", "jii=0x099c 0x09c0", "jo=0x099c 0x09cb", "ju=0x099c 0x09c1", "juu=0x099c 0x09c2", "jh`=0x099d 0x09cd", "jh.h=0x099d 0x09cd 0x200c", "jhA=0x099d 0x09be", "jhI=0x099d 0x09c0", "jhLLI=0x099d 0x09e3", "jhLLi=0x099d 0x09e2", "jhL^I=0x099d 0x09e3", "jhL^i=0x099d 0x09e2", "jhRRI=0x099d 0x09c4", "jhRRi=0x099d 0x09c3", "jhR^I=0x099d 0x09c4", "jhR^i=0x099d 0x09c3", "jhU=0x099d 0x09c2", "jh=0x099d", "jha=0x099d", "jhaa=0x099d 0x09be", "jhai=0x099d 0x09c8", "jhau=0x099d 0x09cc", "jhe=0x099d 0x09c7", "jhi=0x099d 0x09bf", "jhii=0x099d 0x09c0", "jho=0x099d 0x09cb", "jhu=0x099d 0x09c1", "jhuu=0x099d 0x09c2", "k`=0x0995 0x09cd", "k.h=0x0995 0x09cd 0x200c", "kA=0x0995 0x09be", "kI=0x0995 0x09c0", "kLLI=0x0995 0x09e3", "kLLi=0x0995 0x09e2", "kL^I=0x0995 0x09e3", "kL^i=0x0995 0x09e2", "kRRI=0x0995 0x09c4", "kRRi=0x0995 0x09c3", "kR^I=0x0995 0x09c4", "kR^i=0x0995 0x09c3", "kU=0x0995 0x09c2", "k=0x0995", "ka=0x0995", "kaa=0x0995 0x09be", "kai=0x0995 0x09c8", "kau=0x0995 0x09cc", "ke=0x0995 0x09c7", "ki=0x0995 0x09bf", "kii=0x0995 0x09c0", "ko=0x0995 0x09cb", "ku=0x0995 0x09c1", "kuu=0x0995 0x09c2", "kh`=0x0996 0x09cd", "kh.h=0x0996 0x09cd 0x200c", "khA=0x0996 0x09be", "khI=0x0996 0x09c0", "khLLI=0x0996 0x09e3", "khLLi=0x0996 0x09e2", "khL^I=0x0996 0x09e3", "khL^i=0x0996 0x09e2", "khRRI=0x0996 0x09c4", "khRRi=0x0996 0x09c3", "khR^I=0x0996 0x09c4", "khR^i=0x0996 0x09c3", "khU=0x0996 0x09c2", "kh=0x0996", "kha=0x0996", "khaa=0x0996 0x09be", "khai=0x0996 0x09c8", "khau=0x0996 0x09cc", "khe=0x0996 0x09c7", "khi=0x0996 0x09bf", "khii=0x0996 0x09c0", "kho=0x0996 0x09cb", "khu=0x0996 0x09c1", "khuu=0x0996 0x09c2", "l`=0x09b2 0x09cd", "l.h=0x09b2 0x09cd 0x200c", "lA=0x09b2 0x09be", "lI=0x09b2 0x09c0", "lLLI=0x09b2 0x09e3", "lLLi=0x09b2 0x09e2", "lL^I=0x09b2 0x09e3", "lL^i=0x09b2 0x09e2", "lRRI=0x09b2 0x09c4", "lRRi=0x09b2 0x09c3", "lR^I=0x09b2 0x09c4", "lR^i=0x09b2 0x09c3", "lU=0x09b2 0x09c2", "l=0x09b2", "la=0x09b2", "laa=0x09b2 0x09be", "lai=0x09b2 0x09c8", "lau=0x09b2 0x09cc", "le=0x09b2 0x09c7", "li=0x09b2 0x09bf", "lii=0x09b2 0x09c0", "lo=0x09b2 0x09cb", "lu=0x09b2 0x09c1", "luu=0x09b2 0x09c2", "m`=0x09ae 0x09cd", "m.h=0x09ae 0x09cd 0x200c", "mA=0x09ae 0x09be", "mI=0x09ae 0x09c0", "mLLI=0x09ae 0x09e3", "mLLi=0x09ae 0x09e2", "mL^I=0x09ae 0x09e3", "mL^i=0x09ae 0x09e2", "mRRI=0x09ae 0x09c4", "mRRi=0x09ae 0x09c3", "mR^I=0x09ae 0x09c4", "mR^i=0x09ae 0x09c3", "mU=0x09ae 0x09c2", "m=0x09ae", "ma=0x09ae", "maa=0x09ae 0x09be", "mai=0x09ae 0x09c8", "mau=0x09ae 0x09cc", "me=0x09ae 0x09c7", "mi=0x09ae 0x09bf", "mii=0x09ae 0x09c0", "mo=0x09ae 0x09cb", "mu=0x09ae 0x09c1", "muu=0x09ae 0x09c2", "n`=0x09a8 0x09cd", "n.h=0x09a8 0x09cd 0x200c", "nA=0x09a8 0x09be", "nI=0x09a8 0x09c0", "nLLI=0x09a8 0x09e3", "nLLi=0x09a8 0x09e2", "nL^I=0x09a8 0x09e3", "nL^i=0x09a8 0x09e2", "nRRI=0x09a8 0x09c4", "nRRi=0x09a8 0x09c3", "nR^I=0x09a8 0x09c4", "nR^i=0x09a8 0x09c3", "nU=0x09a8 0x09c2", "n=0x09a8", "na=0x09a8", "naa=0x09a8 0x09be", "nai=0x09a8 0x09c8", "nau=0x09a8 0x09cc", "ne=0x09a8 0x09c7", "ni=0x09a8 0x09bf", "nii=0x09a8 0x09c0", "no=0x09a8 0x09cb", "nu=0x09a8 0x09c1", "nuu=0x09a8 0x09c2", "p`=0x09aa 0x09cd", "p.h=0x09aa 0x09cd 0x200c", "pA=0x09aa 0x09be", "pI=0x09aa 0x09c0", "pLLI=0x09aa 0x09e3", "pLLi=0x09aa 0x09e2", "pL^I=0x09aa 0x09e3", "pL^i=0x09aa 0x09e2", "pRRI=0x09aa 0x09c4", "pRRi=0x09aa 0x09c3", "pR^I=0x09aa 0x09c4", "pR^i=0x09aa 0x09c3", "pU=0x09aa 0x09c2", "p=0x09aa", "pa=0x09aa", "paa=0x09aa 0x09be", "pai=0x09aa 0x09c8", "pau=0x09aa 0x09cc", "pe=0x09aa 0x09c7", "pi=0x09aa 0x09bf", "pii=0x09aa 0x09c0", "po=0x09aa 0x09cb", "pu=0x09aa 0x09c1", "puu=0x09aa 0x09c2", "ph`=0x09ab 0x09cd", "ph.h=0x09ab 0x09cd 0x200c", "phA=0x09ab 0x09be", "phI=0x09ab 0x09c0", "phLLI=0x09ab 0x09e3", "phLLi=0x09ab 0x09e2", "phL^I=0x09ab 0x09e3", "phL^i=0x09ab 0x09e2", "phRRI=0x09ab 0x09c4", "phRRi=0x09ab 0x09c3", "phR^I=0x09ab 0x09c4", "phR^i=0x09ab 0x09c3", "phU=0x09ab 0x09c2", "ph=0x09ab", "pha=0x09ab", "phaa=0x09ab 0x09be", "phai=0x09ab 0x09c8", "phau=0x09ab 0x09cc", "phe=0x09ab 0x09c7", "phi=0x09ab 0x09bf", "phii=0x09ab 0x09c0", "pho=0x09ab 0x09cb", "phu=0x09ab 0x09c1", "phuu=0x09ab 0x09c2", "r`=0x09b0 0x09cd", "r.h=0x09b0 0x09cd 0x200c", "rA=0x09b0 0x09be", "rI=0x09b0 0x09c0", "rLLI=0x09b0 0x09e3", "rLLi=0x09b0 0x09e2", "rL^I=0x09b0 0x09e3", "rL^i=0x09b0 0x09e2", "rRRI=0x09b0 0x09c4", "rRRi=0x09b0 0x09c3", "rR^I=0x09b0 0x09c4", "rR^i=0x09b0 0x09c3", "rU=0x09b0 0x09c2", "r=0x09b0", "ra=0x09b0", "raa=0x09b0 0x09be", "rai=0x09b0 0x09c8", "rau=0x09b0 0x09cc", "re=0x09b0 0x09c7", "ri=0x09b0 0x09bf", "rii=0x09b0 0x09c0", "ro=0x09b0 0x09cb", "ru=0x09b0 0x09c1", "ruu=0x09b0 0x09c2", "s`=0x09b8 0x09cd", "s.h=0x09b8 0x09cd 0x200c", "sA=0x09b8 0x09be", "sI=0x09b8 0x09c0", "sLLI=0x09b8 0x09e3", "sLLi=0x09b8 0x09e2", "sL^I=0x09b8 0x09e3", "sL^i=0x09b8 0x09e2", "sRRI=0x09b8 0x09c4", "sRRi=0x09b8 0x09c3", "sR^I=0x09b8 0x09c4", "sR^i=0x09b8 0x09c3", "sU=0x09b8 0x09c2", "s=0x09b8", "sa=0x09b8", "saa=0x09b8 0x09be", "sai=0x09b8 0x09c8", "sau=0x09b8 0x09cc", "se=0x09b8 0x09c7", "si=0x09b8 0x09bf", "sii=0x09b8 0x09c0", "so=0x09b8 0x09cb", "su=0x09b8 0x09c1", "suu=0x09b8 0x09c2", "sh`=0x09b6 0x09cd", "sh.h=0x09b6 0x09cd 0x200c", "shA=0x09b6 0x09be", "shI=0x09b6 0x09c0", "shLLI=0x09b6 0x09e3", "shLLi=0x09b6 0x09e2", "shL^I=0x09b6 0x09e3", "shL^i=0x09b6 0x09e2", "shRRI=0x09b6 0x09c4", "shRRi=0x09b6 0x09c3", "shR^I=0x09b6 0x09c4", "shR^i=0x09b6 0x09c3", "shU=0x09b6 0x09c2", "sh=0x09b6", "sha=0x09b6", "shaa=0x09b6 0x09be", "shai=0x09b6 0x09c8", "shau=0x09b6 0x09cc", "she=0x09b6 0x09c7", "shi=0x09b6 0x09bf", "shii=0x09b6 0x09c0", "sho=0x09b6 0x09cb", "shu=0x09b6 0x09c1", "shuu=0x09b6 0x09c2", "shh`=0x09b7 0x09cd", "shh.h=0x09b7 0x09cd 0x200c", "shhA=0x09b7 0x09be", "shhI=0x09b7 0x09c0", "shhLLI=0x09b7 0x09e3", "shhLLi=0x09b7 0x09e2", "shhL^I=0x09b7 0x09e3", "shhL^i=0x09b7 0x09e2", "shhRRI=0x09b7 0x09c4", "shhRRi=0x09b7 0x09c3", "shhR^I=0x09b7 0x09c4", "shhR^i=0x09b7 0x09c3", "shhU=0x09b7 0x09c2", "shh=0x09b7", "shha=0x09b7", "shhaa=0x09b7 0x09be", "shhai=0x09b7 0x09c8", "shhau=0x09b7 0x09cc", "shhe=0x09b7 0x09c7", "shhi=0x09b7 0x09bf", "shhii=0x09b7 0x09c0", "shho=0x09b7 0x09cb", "shhu=0x09b7 0x09c1", "shhuu=0x09b7 0x09c2", "t`=0x09a4 0x09cd", "t.h=0x09a4 0x09cd 0x200c", "tA=0x09a4 0x09be", "tI=0x09a4 0x09c0", "tLLI=0x09a4 0x09e3", "tLLi=0x09a4 0x09e2", "tL^I=0x09a4 0x09e3", "tL^i=0x09a4 0x09e2", "tRRI=0x09a4 0x09c4", "tRRi=0x09a4 0x09c3", "tR^I=0x09a4 0x09c4", "tR^i=0x09a4 0x09c3", "tU=0x09a4 0x09c2", "t=0x09a4", "ta=0x09a4", "taa=0x09a4 0x09be", "tai=0x09a4 0x09c8", "tau=0x09a4 0x09cc", "te=0x09a4 0x09c7", "ti=0x09a4 0x09bf", "tii=0x09a4 0x09c0", "to=0x09a4 0x09cb", "tu=0x09a4 0x09c1", "tuu=0x09a4 0x09c2", "th`=0x09a5 0x09cd", "th.h=0x09a5 0x09cd 0x200c", "thA=0x09a5 0x09be", "thI=0x09a5 0x09c0", "thLLI=0x09a5 0x09e3", "thLLi=0x09a5 0x09e2", "thL^I=0x09a5 0x09e3", "thL^i=0x09a5 0x09e2", "thRRI=0x09a5 0x09c4", "thRRi=0x09a5 0x09c3", "thR^I=0x09a5 0x09c4", "thR^i=0x09a5 0x09c3", "thU=0x09a5 0x09c2", "th=0x09a5", "tha=0x09a5", "thaa=0x09a5 0x09be", "thai=0x09a5 0x09c8", "thau=0x09a5 0x09cc", "the=0x09a5 0x09c7", "thi=0x09a5 0x09bf", "thii=0x09a5 0x09c0", "tho=0x09a5 0x09cb", "thu=0x09a5 0x09c1", "thuu=0x09a5 0x09c2", "v`=0x09ac 0x09cd", "v.h=0x09ac 0x09cd 0x200c", "vA=0x09ac 0x09be", "vI=0x09ac 0x09c0", "vLLI=0x09ac 0x09e3", "vLLi=0x09ac 0x09e2", "vL^I=0x09ac 0x09e3", "vL^i=0x09ac 0x09e2", "vRRI=0x09ac 0x09c4", "vRRi=0x09ac 0x09c3", "vR^I=0x09ac 0x09c4", "vR^i=0x09ac 0x09c3", "vU=0x09ac 0x09c2", "v=0x09ac", "va=0x09ac", "vaa=0x09ac 0x09be", "vai=0x09ac 0x09c8", "vau=0x09ac 0x09cc", "ve=0x09ac 0x09c7", "vi=0x09ac 0x09bf", "vii=0x09ac 0x09c0", "vo=0x09ac 0x09cb", "vu=0x09ac 0x09c1", "vuu=0x09ac 0x09c2", "x`=0x0995 0x09cd 0x09b7 0x09cd", "x.h=0x0995 0x09cd 0x09b7 0x09cd 0x200c", "xA=0x0995 0x09cd 0x09b7 0x09be", "xI=0x0995 0x09cd 0x09b7 0x09c0", "xLLI=0x0995 0x09cd 0x09b7 0x09e3", "xLLi=0x0995 0x09cd 0x09b7 0x09e2", "xL^I=0x0995 0x09cd 0x09b7 0x09e3", "xL^i=0x0995 0x09cd 0x09b7 0x09e2", "xRRI=0x0995 0x09cd 0x09b7 0x09c4", "xRRi=0x0995 0x09cd 0x09b7 0x09c3", "xR^I=0x0995 0x09cd 0x09b7 0x09c4", "xR^i=0x0995 0x09cd 0x09b7 0x09c3", "xU=0x0995 0x09cd 0x09b7 0x09c2", "x=0x0995 0x09cd 0x09b7", "xa=0x0995 0x09cd 0x09b7", "xaa=0x0995 0x09cd 0x09b7 0x09be", "xai=0x0995 0x09cd 0x09b7 0x09c8", "xau=0x0995 0x09cd 0x09b7 0x09cc", "xe=0x0995 0x09cd 0x09b7 0x09c7", "xi=0x0995 0x09cd 0x09b7 0x09bf", "xii=0x0995 0x09cd 0x09b7 0x09c0", "xo=0x0995 0x09cd 0x09b7 0x09cb", "xu=0x0995 0x09cd 0x09b7 0x09c1", "xuu=0x0995 0x09cd 0x09b7 0x09c2", "y`=0x09af 0x09cd", "y.h=0x09af 0x09cd 0x200c", "yA=0x09af 0x09be", "yI=0x09af 0x09c0", "yLLI=0x09af 0x09e3", "yLLi=0x09af 0x09e2", "yL^I=0x09af 0x09e3", "yL^i=0x09af 0x09e2", "yRRI=0x09af 0x09c4", "yRRi=0x09af 0x09c3", "yR^I=0x09af 0x09c4", "yR^i=0x09af 0x09c3", "yU=0x09af 0x09c2", "y=0x09af", "ya=0x09af", "yaa=0x09af 0x09be", "yai=0x09af 0x09c8", "yau=0x09af 0x09cc", "ye=0x09af 0x09c7", "yi=0x09af 0x09bf", "yii=0x09af 0x09c0", "yo=0x09af 0x09cb", "yu=0x09af 0x09c1", "yuu=0x09af 0x09c2", "~N`=0x0999 0x09cd", "~N.h=0x0999 0x09cd 0x200c", "~NA=0x0999 0x09be", "~NI=0x0999 0x09c0", "~NLLI=0x0999 0x09e3", "~NLLi=0x0999 0x09e2", "~NL^I=0x0999 0x09e3", "~NL^i=0x0999 0x09e2", "~NRRI=0x0999 0x09c4", "~NRRi=0x0999 0x09c3", "~NR^I=0x0999 0x09c4", "~NR^i=0x0999 0x09c3", "~NU=0x0999 0x09c2", "~N=0x0999", "~Na=0x0999", "~Naa=0x0999 0x09be", "~Nai=0x0999 0x09c8", "~Nau=0x0999 0x09cc", "~Ne=0x0999 0x09c7", "~Ni=0x0999 0x09bf", "~Nii=0x0999 0x09c0", "~No=0x0999 0x09cb", "~Nu=0x0999 0x09c1", "~Nuu=0x0999 0x09c2", "~n`=0x099e 0x09cd", "~n.h=0x099e 0x09cd 0x200c", "~nA=0x099e 0x09be", "~nI=0x099e 0x09c0", "~nLLI=0x099e 0x09e3", "~nLLi=0x099e 0x09e2", "~nL^I=0x099e 0x09e3", "~nL^i=0x099e 0x09e2", "~nRRI=0x099e 0x09c4", "~nRRi=0x099e 0x09c3", "~nR^I=0x099e 0x09c4", "~nR^i=0x099e 0x09c3", "~nU=0x099e 0x09c2", "~n=0x099e", "~na=0x099e", "~naa=0x099e 0x09be", "~nai=0x099e 0x09c8", "~nau=0x099e 0x09cc", "~ne=0x099e 0x09c7", "~ni=0x099e 0x09bf", "~nii=0x099e 0x09c0", "~no=0x099e 0x09cb", "~nu=0x099e 0x09c1", "~nuu=0x099e 0x09c2", // Independent vowels "a=0x0985", "A=0x0986", "aa=0x0986", "i=0x0987", "I=0x0988", "ii=0x0988", "u=0x0989", "U=0x098a", "uu=0x098a", "R^i=0x098b", "RRi=0x098b", "L^i=0x098c", "LLi=0x098c", "e=0x098f", "ai=0x0990", "o=0x0993", "au=0x0994", "R^I=0x09e0", "RRI=0x09e0", "L^I=0x09e1", "LLI=0x09e1", // Numbers "0x30=0x09e6", "0x31=0x09e7", "0x32=0x09e8", "0x33=0x09e9", "0x34=0x09ea", "0x35=0x09eb", "0x36=0x09ec", "0x37=0x09ed", "0x38=0x09ee", "0x39=0x09ef", // Other marks ".N=0x0981", ".n=0x0982", "M=0x0982", "H=0x0983", ".h=0x09cd 0x200c", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Hangul2.kmap0000644000175000017500000000210007737457032015471 0ustar henrichhenrich// // kmap for type 2 Hangul keyboard // "consonant0+vowel+consonant3", "begin consonant0", "r=0xAC00", "R=0xAE4C", "s=0xB098", "e=0xB2E4", "E=0xB530", "f=0xB77C", "a=0xB9C8", "q=0xBC14", "Q=0xBE60", "t=0xC0AC", "T=0xC2F8", "d=0xC544", "w=0xC790", "W=0xC9DC", "c=0xCC28", "z=0xCE74", "x=0xD0C0", "v=0xD30C", "g=0xD558", "end consonant0", "begin vowel", "k=0x0000", "o=0x001C", "i=0x0038", "O=0x0054", "j=0x0070", "p=0x008C", "u=0x00A8", "P=0x00C4", "h=0x00E0", "hk=0x00FC", "ho=0x0118", "hl=0x0134", "y=0x0150", "n=0x016C", "nj=0x0188", "np=0x01A4", "nl=0x01C0", "b=0x01DC", "m=0x01F8", "ml=0x0214", "l=0x0230", "end vowel", "begin consonant3", // "=0x0000", "r=0x0001", "R=0x0002", "rt=0x0003", "s=0x0004", "sw=0x0005", "sg=0x0006", "e=0x0007", "f=0x0008", "fr=0x0009", "fa=0x000A", "fq=0x000B", "ft=0x000C", "fv=0x000D", "fx=0x000E", "fg=0x000F", "a=0x0010", "q=0x0011", "qt=0x0012", "t=0x0013", "T=0x0014", "d=0x0015", "w=0x0016", "c=0x0017", "z=0x0018", "x=0x0019", "v=0x001A", "g=0x001B", "end consonant3" ./mytool/kmap/TeX-smeTeX.kmap0000644000175000017500000003544107532460064016102 0ustar henrichhenrich// Yudit. // This is smeTex.kmap based on TeX.kmap // for Smi and Romani as written in Finland - some letters present // in ISO-IR-197 and -209 and the unofficial WS2 encoding are added. // // 2001-01-07 // "!`=0x00a1", "?`=0x00bf", "\\\"=0x0308", "\\\"A=0x00c4", "\\\"a=0x00e4", "\\\"E=0x00cb", "\\\"e=0x00eb", "\\\"H=0x1e26", "\\\"h=0x1e27", "\\\"I=0x00cf", "\\\"i=0x00ef", "\\\"O=0x00d6", "\\\"o=0x00f6", "\\\"t=0x1e97", "\\\"U=0x00dc", "\\\"u=0x00fc", "\\\"W=0x1e84", "\\\"w=0x1e85", "\\\"X=0x1e8c", "\\\"x=0x1e8d", "\\\"y=0x00ff", "\\\"Y=0x0178", "\\'=0x0301", "\\'A=0x00c1", // Smi "\\'a=0x00e1", // Smi "\\'C=0x0106", "\\'c=0x0107", "\\'E=0x00c9", "\\'e=0x00e9", "\\'G=0x01f4", "\\'g=0x01f5", "\\'I=0x00cd", "\\'i=0x00ed", "\\'K=0x1e30", "\\'k=0x1e31", "\\'L=0x0139", "\\'l=0x013a", "\\'M=0x1e3e", "\\'m=0x1e3f", "\\'N=0x0143", "\\'n=0x0144", "\\'O=0x00d3", "\\'o=0x00f3", "\\'P=0x1e54", "\\'p=0x1e55", "\\'R=0x0154", "\\'r=0x0155", "\\'S=0x015a", "\\'s=0x015b", "\\'U=0x00da", "\\'u=0x00fa", "\\'W=0x1e82", "\\'w=0x1e83", "\\'Y=0x00dd", "\\'y=0x00fd", "\\'Z=0x0179", "\\'z=0x017a", "\\'\\AE=0x01fc", "\\'\\ae=0x01fd", "\\'\\O=0x01fe", "\\'\\o=0x01ff", "\\,=0x2006", "\\-=0x0082", "\\-{T}=0x0166", // Smi "\\-{t}=0x0167", // Smi "\\-{G}=0x01e4", // Smi "\\-{g}=0x01e5", // Smi "\\.=0x0307", "\\.B=0x1e02", "\\.b=0x1e03", "\\.C=0x010a", "\\.c=0x010b", "\\.D=0x1e0a", "\\.d=0x1e0b", "\\.E=0x0116", "\\.e=0x0117", "\\.F=0x1e1e", "\\.f=0x1e1f", "\\.G=0x0120", "\\.g=0x0121", "\\.H=0x1e22", "\\.h=0x1e23", "\\.I=0x0130", "\\.M=0x1e40", "\\.m=0x1e41", "\\.N=0x1e44", "\\.n=0x1e45", "\\.P=0x1e56", "\\.p=0x1e57", "\\.R=0x1e58", "\\.r=0x1e59", "\\.S=0x1e60", "\\.s=0x1e61", "\\.T=0x1e6a", "\\.t=0x1e6b", "\\.W=0x1e86", "\\.w=0x1e87", "\\.X=0x1e8a", "\\.x=0x1e8b", "\\.Y=0x1e8e", "\\.y=0x1e8f", "\\.Z=0x017b", "\\.z=0x017c", "\\/=0x200c", "\\:=0x2005", "\\;=0x2004", "\\ 0x3D =0x0304", "\\ 0x3D A=0x0100", "\\ 0x3D a=0x0101", "\\ 0x3D E=0x0112", "\\ 0x3D e=0x0113", "\\ 0x3D G=0x1e20", "\\ 0x3D g=0x1e21", "\\ 0x3D I=0x012a", "\\ 0x3D i=0x012b", "\\ 0x3D O=0x014c", "\\ 0x3D o=0x014d", "\\ 0x3D U=0x016a", "\\ 0x3D u=0x016b", "\\ 0x3D \\AE=0x01e2", "\\ 0x3D \\ae=0x01e3", "\\AA=0x00c5", "\\aa=0x00e5", "\\AE=0x00c6", "\\ae=0x00e6", "\\aleph=0x2135", "\\alpha=0x03b1", "\\amalg=0x2210", "\\angle=0x2220", "\\approx=0x2248", "\\approxeq=0x224a", "\\ast=0x2217", "\\asymp=0x224d", "\\b=0x0331", "\\backcong=0x224c", "\\backepsilon=0x220d", "\\backprime=0x2035", "\\backsim=0x223d", "\\backsimeq=0x22cd", "\\backslash=\\", "\\barwedge=0x22bc", "\\because=0x2235", "\\beta=0x03b2", "\\beth=0x2136", "\\between=0x226c", "\\bigcap=0x22c2", "\\bigcirc=0x25ef", "\\bigcup=0x22c3", "\\bigstar=0x2605", "\\bigtriangledown=0x25bd", "\\bigtriangleup=0x25b3", "\\bigvee=0x22c1", "\\bigwedge=0x22c0", "\\blacklozenge=0x2726", "\\blacksquare=0x25aa", "\\blacktriangle=0x25b4", "\\blacktriangledown=0x25be", "\\blacktriangleleft=0x25c2", "\\blacktriangleright=0x25b8", "\\bot=0x22a5", "\\bowtie=0x22c8", "\\Box=0x25a1", "\\boxminus=0x229f", "\\boxplus=0x229e", "\\boxtimes=0x22a0", "\\bullet=0x2022", "\\Bumpeq=0x224e", "\\bumpeq=0x224f", "\\c=0x0327", "\\cap=0x2229", "\\Cap=0x22d2", "\\cdot=0x22c5", "\\cdots=0x22ef", "\\centerdot=0x00b7", "\\checkmark=0x2713", "\\chi=0x03c7", "\\circ=0x25cb", "\\circeq=0x2257", "\\circlearrowleft=0x21ba", "\\circlearrowright=0x21bb", "\\circledast=0x229b", "\\circledcirc=0x229a", "\\circleddash=0x229d", "\\circledR=0x00ae", "\\circledS=0x24c8", "\\clubsuit=0x2663", "\\colon=:", "\\coloneq=0x2254", "\\complement=0x2201", "\\cong=0x2245", "\\coprod=0x2210", "\\copyright=0x00a9", "\\cup=0x222a", "\\Cup=0x22d3", "\\curlyeqprec=0x22de", "\\curlyeqsucc=0x22df", "\\curlypreceq=0x227c", "\\curlyvee=0x22ce", "\\curlywedge=0x22cf", "\\curvearrowleft=0x21b6", "\\curvearrowright=0x21b7", "\\c{C}=0x00c7", "\\c{c}=0x00e7", "\\c{D}=0x1e10", "\\c{d}=0x1e11", "\\c{G}=0x0122", "\\c{g}=0x0123", "\\c{H}=0x1e28", "\\c{h}=0x1e29", "\\c{K}=0x0136", "\\c{k}=0x0137", "\\c{L}=0x013b", "\\c{l}=0x013c", "\\c{N}=0x0145", "\\c{n}=0x0146", "\\c{R}=0x0156", "\\c{r}=0x0157", "\\c{S}=0x015e", "\\c{s}=0x015f", "\\c{T}=0x0162", "\\c{t}=0x0163", "\\d=0x0323", "\\dag=0x2020", "\\dagger=0x2020", "\\daleth=0x2138", "\\dashv=0x22a3", "\\ddag=0x2021", "\\ddagger=0x2021", "\\ddots=0x22f1", "\\Delta=0x0394", "\\delta=0x03b4", "\\DH=0x00d0", // Smi "\\dh=0x00f0", // Smi "\\diamond=0x22c4", "\\Diamond=0x25c7", "\\diamondsuit=0x2662", "\\digamma=0x03dc", "\\div=0x00f7", "\\divideontimes=0x22c7", "\\dj=0x0111", // Smi "\\DJ=0x0110", // Smi "\\doteq=0x2250", "\\doteqdot=0x2251", "\\dotplus=0x2214", "\\dotsquare=0x22a1", "\\doublebarwedge=0x2227\\u033f", "\\downarrow=0x2193", "\\Downarrow=0x21d3", "\\downdownarrows=0x21ca", "\\downleftharpoon=0x21c3", "\\downrightharpoon=0x21c2", "\\d{A}=0x1ea0", "\\d{a}=0x1ea1", "\\d{B}=0x1e04", "\\d{b}=0x1e05", "\\d{D}=0x1e0c", "\\d{d}=0x1e0d", "\\d{E}=0x1eb8", "\\d{e}=0x1eb9", "\\d{H}=0x1e24", "\\d{h}=0x1e25", "\\d{I}=0x1eca", "\\d{i}=0x1ecb", "\\d{K}=0x1e32", "\\d{k}=0x1e33", "\\d{L}=0x1e36", "\\d{l}=0x1e37", "\\d{M}=0x1e42", "\\d{m}=0x1e43", "\\d{N}=0x1e46", "\\d{n}=0x1e47", "\\d{O}=0x1ecc", "\\d{o}=0x1ecd", "\\d{R}=0x1e5a", "\\d{r}=0x1e5b", "\\d{S}=0x1e62", "\\d{s}=0x1e63", "\\d{T}=0x1e6c", "\\d{t}=0x1e6d", "\\d{U}=0x1ee4", "\\d{u}=0x1ee5", "\\d{V}=0x1e7e", "\\d{v}=0x1e7f", "\\d{W}=0x1e88", "\\d{w}=0x1e89", "\\d{Y}=0x1ef4", "\\d{y}=0x1ef5", "\\d{Z}=0x1e92", "\\d{z}=0x1e93", "\\ell=0x2113", "\\emptyset=0x2205", "\\epsilon=0x03b5", "\\eqcirc=0x2256", "\\eqcolon=0x2255", "\\eqslantgtr=0x22dd", "\\eqslantless=0x22dc", "\\equiv=0x2261", "\\eta=0x03b7", "\\euro=0x20ac", "\\exists=0x2203", "\\ezh=0x0292", // Smi "\\EZH=0x01b7", // Smi "\\fallingd7tseq=0x2252", "\\flat=0x266d", "\\forall=0x2200", "\\frac1=0x215f", "\\frac12=0x00bd", "\\frac13=0x2153", "\\frac14=0x00bc", "\\frac15=0x2155", "\\frac16=0x2159", "\\frac18=0x215b", "\\frac23=0x2154", "\\frac25=0x2156", "\\frac34=0x00be", "\\frac35=0x2157", "\\frac38=0x215c", "\\frac45=0x2158", "\\frac56=0x215a", "\\frac58=0x215d", "\\frac78=0x215e", "\\frown=0x2322", "\\Gamma=0x0393", "\\gamma=0x03b3", "\\ge=0x2265", "\\geq=0x2265", "\\geqq=0x2267", "\\geqslant=0x2265", "\\gets=0x2190", "\\gg=0x226b", "\\ggg=0x22d9", "\\gimel=0x2137", "\\gnapprox=0x22e7", "\\gneq=0x2269", "\\gneqq=0x2269", "\\gnsim=0x22e7", "\\gtrapprox=0x2273", "\\gtrdot=0x22d7", "\\gtreqless=0x22db", "\\gtreqqless=0x22db", "\\gtrless=0x2277", "\\gtrsim=0x2273", "\\gvertneqq=0x2269", "\\H=0x030b", "\\hbar=0x210f", "\\heartsuit=0x2665", "\\hookleftarrow=0x21a9", "\\hookrightarrow=0x21aa", "\\H{O}=0x0150", "\\H{o}=0x0151", "\\H{U}=0x0170", "\\H{u}=0x0171", "\\i=0x0131", "\\iff=0x21d4", "\\Im=0x2111", "\\imath=0x0131", "\\in=0x2208", "\\infty=0x221e", "\\int=0x222b", "\\intercal=0x22ba", "\\iota=0x03b9", "\\Join=0x22c8", "\\kappa=0x03ba", "\\L=0x0141", "\\l=0x0142", "\\Lambda=0x039b", "\\lambda=0x03bb", "\\langle=0x2329", "\\lbrace={", "\\lbrack=[", "\\lceil=0x2308", "\\ldots=0x2026", "\\le=0x2264", "\\leadsto=0x219d", "\\leftarrow=0x2190", "\\Leftarrow=0x21d0", "\\leftarrowtail=0x21a2", "\\leftharpoondown=0x21bd", "\\leftharpoonup=0x21bc", "\\leftleftarrows=0x21c7", "\\leftparengtr=0x2329", "\\leftrightarrow=0x2194", "\\Leftrightarrow=0x21d4", "\\leftrightarrows=0x21c6", "\\leftrightharpoons=0x21cb", "\\leftrightsquigarrow=0x21ad", "\\leftthreetimes=0x22cb", "\\leq=0x2264", "\\leqq=0x2266", "\\leqslant=0x2264", "\\lessapprox=0x2272", "\\lessdot=0x22d6", "\\lesseqgtr=0x22da", "\\lesseqqgtr=0x22da", "\\lessgtr=0x2276", "\\lesssim=0x2272", "\\lfloor=0x230a", "\\lhd=0x25c1", "\\ll=0x226a", "\\Ll=0x22d8", "\\llcorner=0x231e", "\\Lleftarrow=0x21da", "\\lnapprox=0x22e6", "\\lneq=0x2268", "\\lneqq=0x2268", "\\lnsim=0x22e6", "\\longleftarrow=0x2190", "\\Longleftarrow=0x21d0", "\\longleftrightarrow=0x2194", "\\Longleftrightarrow=0x21d4", "\\longmapsto=0x21a6", "\\longrightarrow=0x2192", "\\Longrightarrow=0x21d2", "\\looparrowleft=0x21ab", "\\looparrowright=0x21ac", "\\lozenge=0x2727", "\\lq=0x2018", "\\lrcorner=0x231f", "\\Lsh=0x21b0", "\\ltimes=0x22c9", "\\lvertneqq=0x2268", "\\maltese=0x2720", "\\mapsto=0x21a6", "\\measuredangle=0x2221", "\\mho=0x2127", "\\mid=0x2223", "\\models=0x22a7", "\\mp=0x2213", "\\multimap=0x22b8", "\\nabla=0x2207", "\\napprox=0x2249", "\\natural=0x266e", "\\ncong=0x2247", "\\ne=0x2260", "\\nearrow=0x2197", "\\neg=0x00ac", "\\neq=0x2260", "\\nequiv=0x2262", "\\newline=0x2028", "\\nexists=0x2204", "\\ng=0x014b", // Smi "\\NG=0x014a", // Smi "\\ngeq=0x2271", "\\ngeqq=0x2271", "\\ngeqslant=0x2271", "\\ngtr=0x226f", "\\ni=0x220b", "\\nleftarrow=0x219a", "\\nLeftarrow=0x21cd", "\\nleftrightarrow=0x21ae", "\\nLeftrightarrow=0x21ce", "\\nleq=0x2270", "\\nleqq=0x2270", "\\nleqslant=0x2270", "\\nless=0x226e", "\\nmid=0x2224", "\\not=0x0338", "\\notin=0x2209", "\\nparallel=0x2226", "\\nprec=0x2280", "\\npreceq=0x22e0", "\\nrightarrow=0x219b", "\\nRightarrow=0x21cf", "\\nshortmid=0x2224", "\\nshortparallel=0x2226", "\\nsim=0x2241", "\\nsimeq=0x2244", "\\nsubset=0x2284", "\\nsubseteq=0x2288", "\\nsubseteqq=0x2288", "\\nsucc=0x2281", "\\nsucceq=0x22e1", "\\nsupset=0x2285", "\\nsupseteq=0x2289", "\\nsupseteqq=0x2289", "\\ntriangleleft=0x22ea", "\\ntrianglelefteq=0x22ec", "\\ntriangleright=0x22eb", "\\ntrianglerighteq=0x22ed", "\\nu=0x03bd", "\\nvdash=0x22ac", "\\nvDash=0x22ad", "\\nVdash=0x22ae", "\\nVDash=0x22af", "\\nwarrow=0x2196", "\\O=0x00d8", "\\o=0x00f8", "\\odot=0x2299", "\\OE=0x0152", "\\oe=0x0153", "\\oint=0x222e", "\\Omega=0x03a9", "\\omega=0x03c9", "\\ominus=0x2296", "\\oplus=0x2295", "\\oslash=0x2298", "\\otimes=0x2297", "\\P=0x00b6", "\\par=0x2029", "\\parallel=0x2225", "\\partial=0x2202", "\\perp=0x22a5", "\\Phi=0x03a6", "\\phi=0x03c6", "\\Pi=0x03a0", "\\pi=0x03c0", "\\pitchfork=0x22d4", "\\pm=0x00b1", "\\pounds=0x00a3", "\\prec=0x227a", "\\precapprox=0x227e", "\\preceq=0x227c", "\\precnapprox=0x22e8", "\\precnsim=0x22e8", "\\precsim=0x227e", "\\prime=0x2032", "\\prod=0x220f", "\\propto=0x221d", "\\Psi=0x03a8", "\\psi=0x03c8", "\\quad=0x2001", "\\rangle=0x232a", "\\rbrace=}", "\\rbrack=]", "\\rceil=0x2309", "\\Re=0x211c", "\\rfloor=0x230b", "\\rightarrow=0x2192", "\\Rightarrow=0x21d2", "\\rightarrowtail=0x21a3", "\\rightharpoondown=0x21c1", "\\rightharpoonup=0x21c0", "\\rightleftarrows=0x21c4", "\\rightleftharpoons=0x21cc", "\\rightparengtr=0x232a", "\\rightrightarrows=0x21c9", "\\rightthreetimes=0x22cc", "\\risingdotseq=0x2253", "\\rq=0x2019", "\\Rrightarrow=0x21db", "\\Rsh=0x21b1", "\\rtimes=0x22ca", "\\S=0x00a7", "\\sbs=0xfe68", "\\searrow=0x2198", "\\setminus=0x2216", "\\sharp=0x266f", "\\shortmid=0x2223", "\\shortparallel=0x2225", "\\Sigma=0x03a3", "\\sigma=0x03c3", "\\sim=0x223c", "\\simeq=0x2243", "\\smallamalg=0x2210", "\\smallsetminus=0x2216", "\\smallsmile=0x2323", "\\smile=0x2323", "\\spadesuit=0x2660", "\\sphericalangle=0x2222", "\\sqcap=0x2293", "\\sqcup=0x2294", "\\sqsubset=0x228f", "\\sqsubseteq=0x2291", "\\sqsupset=0x2290", "\\sqsupseteq=0x2292", "\\square=0x25a1", "\\squigarrowright=0x21dd", "\\ss=0x00df", "\\star=0x22c6", "\\straightphi=0x03c6", "\\subset=0x2282", "\\Subset=0x22d0", "\\subseteq=0x2286", "\\subseteqq=0x2286", "\\subsetneq=0x228a", "\\subsetneqq=0x228a", "\\succ=0x227b", "\\succapprox=0x227f", "\\succcurlyeq=0x227d", "\\succeq=0x227d", "\\succnapprox=0x22e9", "\\succnsim=0x22e9", "\\succsim=0x227f", "\\sum=0x2211", "\\supset=0x2283", "\\Supset=0x22d1", "\\supseteq=0x2287", "\\supseteqq=0x2287", "\\supsetneq=0x228b", "\\supsetneqq=0x228b", "\\surd=0x221a", "\\swarrow=0x2199", "\\tau=0x03c4", "\\therefore=0x2234", "\\Theta=0x0398", "\\theta=0x03b8", "\\thickapprox=0x2248", "\\thicksim=0x223c", "\\times=0x00d7", "\\to=0x2192", "\\top=0x22a4", "\\triangle=0x25b5", "\\triangledown=0x25bf", "\\triangleleft=0x25c3", "\\trianglelefteq=0x22b4", "\\triangleq=0x225c", "\\triangleright=0x25b9", "\\trianglerighteq=0x22b5", "\\twoheadleftarrow=0x219e", "\\twoheadrightarrow=0x21a0", "\\u=0x0306", "\\ulcorner=0x231c", "\\uparrow=0x2191", "\\Uparrow=0x21d1", "\\updownarrow=0x2195", "\\Updownarrow=0x21d5", "\\upleftharpoon=0x21bf", "\\uplus=0x228e", "\\uprightharpoon=0x21be", "\\Upsilon=0x03a5", "\\upsilon=0x03c5", "\\upuparrows=0x21c8", "\\urcorner=0x231d", "\\u{A}=0x0102", "\\u{a}=0x0103", "\\u{E}=0x0114", "\\u{e}=0x0115", "\\u{G}=0x011e", "\\u{g}=0x011f", "\\u{I}=0x012c", "\\u{i}=0x012d", "\\u{O}=0x014e", "\\u{o}=0x014f", "\\u{U}=0x016c", "\\u{u}=0x016d", "\\v=0x030c", "\\varkappa=0x03f0", "\\varphi=0x03d5", "\\varpi=0x03d6", "\\varprime=0x2032", "\\varpropto=0x221d", "\\varrho=0x03f1", "\\varsigma=0x03c2", "\\vartheta=0x03d1", "\\vartriangleleft=0x22b2", "\\vartriangleright=0x22b3", "\\vdash=0x22a2", "\\vDash=0x22a8", "\\Vdash=0x22a9", "\\vdots=0x22ee", "\\vee=0x2228", "\\veebar=0x22bb", "\\Vert=0x2016", "\\vert=|", "\\Vvdash=0x22aa", "\\v{A}=0x01cd", "\\v{a}=0x01ce", "\\v{C}=0x010c", // Smi "\\v{c}=0x010d", // Smi "\\v{D}=0x010e", "\\v{d}=0x010f", "\\v{E}=0x011a", "\\v{e}=0x011b", "\\v{ezh}=0x01ef", // Smi "\\v{EZH}=0x01ee", // Smi "\\v{G}=0x01e6", // Smi "\\v{g}=0x01e7", // Smi "\\v{H}=0x821e", // Romani "\\v{h}=0x821f", // Romani "\\v{I}=0x01cf", "\\v{i}=0x01d0", "\\v{j}=0x01f0", "\\v{K}=0x01e8", // Smi "\\v{k}=0x01e9", // Smi "\\v{L}=0x013d", "\\v{l}=0x013e", "\\v{N}=0x0147", "\\v{n}=0x0148", "\\v{O}=0x01d1", "\\v{o}=0x01d2", "\\v{R}=0x0158", "\\v{r}=0x0159", "\\v{S}=0x0160", // Smi "\\v{s}=0x0161", // Smi "\\v{T}=0x0164", "\\v{t}=0x0165", "\\v{U}=0x01d3", "\\v{u}=0x01d4", "\\v{Z}=0x017d", // Smi "\\v{z}=0x017e", // Smi "\\wedge=0x2227", "\\wp=0x2118", "\\wr=0x2240", "\\yen=0x00a5", "\\Xi=0x039e", "\\xi=0x03be", "\\zeta=0x03b6", "\\^=0x0302", "\\^A=0x00c2", "\\^a=0x00e2", "\\^C=0x0108", "\\^c=0x0109", "\\^E=0x00ca", "\\^e=0x00ea", "\\^G=0x011c", "\\^g=0x011d", "\\^H=0x0124", "\\^h=0x0125", "\\^I=0x00ce", "\\^i=0x00ee", "\\^J=0x0134", "\\^j=0x0135", "\\^O=0x00d4", "\\^o=0x00f4", "\\^S=0x015c", "\\^s=0x015d", "\\^U=0x00db", "\\^u=0x00fb", "\\^W=0x0174", "\\^w=0x0175", "\\^Y=0x0176", "\\^y=0x0177", "\\^Z=0x1e90", "\\^z=0x1e91", "\\`=0x0300", "\\`A=0x00c0", "\\`a=0x00e0", "\\`E=0x00c8", "\\`e=0x00e8", "\\`I=0x00cc", "\\`i=0x00ec", "\\`O=0x00d2", "\\`o=0x00f2", "\\`U=0x00d9", "\\`u=0x00f9", "\\`W=0x1e80", "\\`w=0x1e81", "\\`Y=0x1ef2", "\\`y=0x1ef3", "\\~=0x0303", "\\~A=0x00c3", "\\~a=0x00e3", "\\~E=0x1ebc", "\\~e=0x1ebd", "\\~I=0x0128", "\\~i=0x0129", "\\~N=0x00d1", "\\~n=0x00f1", "\\~O=0x00d5", "\\~o=0x00f5", "\\~U=0x0168", "\\~u=0x0169", "\\~V=0x1e7c", "\\~v=0x1e7d", "\\~Y=0x1ef8", "\\~y=0x1ef9", "^(=0x207d", "^)=0x207e", "^+=0x207a", "^-=0x207b", "^0=0x2070", "^1=0x00b9", "^2=0x00b2", "^3=0x00b3", "^4=0x2074", "^5=0x2075", "^6=0x2076", "^7=0x2077", "^8=0x2078", "^9=0x2079", "^ 0x3D =0x207c", "^a=0x00aa", "^h=0x02b0", "^j=0x02b2", "^l=0x02e1", "^n=0x207f", "^o=0x00ba", "^r=0x02b3", "^s=0x02e2", "^w=0x02b7", "^x=0x02e3", "^y=0x02b8", "^\\gamma=0x02e0", "^{SM}=0x2120", "^{TEL}=0x2121", "^{TM}=0x2122", "_(=0x208d", "_)=0x208e", "_+=0x208a", "_-=0x208b", "_0=0x2080", "_1=0x2081", "_2=0x2082", "_3=0x2083", "_4=0x2084", "_5=0x2085", "_6=0x2086", "_7=0x2087", "_8=0x2088", "_9=0x2089", "_ 0x3D =0x208c", ./mytool/kmap/Urdu-ArabTeX.kmap0000644000175000017500000001442107532460064016375 0ustar henrichhenrich// Urdu-ArabTeX.kmap // 2002-05-17 Miikka-Markus.Alhonen@tigatieto.com // // corresponds to the standard ArabTeX transliteration "a = 0x0627", // ARABIC LETTER ALEF "b = 0x0628", // ARABIC LETTER BEH "p = 0x067e", // ARABIC LETTER PEH "t = 0x062a", // ARABIC LETTER TEH "T = 0x06c3", // ARABIC LETTER TEH MARBUTA GOAL ",t = 0x0679", // ARABIC LETTER TTEH "_t = 0x062b", // ARABIC LETTER THEH "^g = 0x062c", // ARABIC LETTER JEEM "j = 0x062c", // ARABIC LETTER JEEM "^c = 0x0686", // ARABIC LETTER TCHEH ".h = 0x062d", // ARABIC LETTER HAH "_h = 0x062e", // ARABIC LETTER KHAH "d = 0x062f", // ARABIC LETTER DAL ",d = 0x0688", // ARABIC LETTER DDAL "_d = 0x0630", // ARABIC LETTER THAL "r = 0x0631", // ARABIC LETTER REH ",r = 0x0691", // ARABIC LETTER RREH "z = 0x0632", // ARABIC LETTER ZAIN "^z = 0x0698", // ARABIC LETTER JEH "s = 0x0633", // ARABIC LETTER SEEN "^s = 0x0634", // ARABIC LETTER SHEEN ".s = 0x0635", // ARABIC LETTER SAD ".d = 0x0636", // ARABIC LETTER DAD ".t = 0x0637", // ARABIC LETTER TAH ".z = 0x0638", // ARABIC LETTER ZAH "` = 0x0639", // ARABIC LETTER AIN ".g = 0x063a", // ARABIC LETTER GHAIN "f = 0x0641", // ARABIC LETTER FEH "q = 0x0642", // ARABIC LETTER QAF "k = 0x06a9", // ARABIC LETTER KEHEH "g = 0x06af", // ARABIC LETTER GAF "l = 0x0644", // ARABIC LETTER LAM "m = 0x0645", // ARABIC LETTER MEEM "n = 0x0646", // ARABIC LETTER NOON ".n = 0x06ba", // ARABIC LETTER NOON GHUNNA "w = 0x0648", // ARABIC LETTER WAW ",h = 0x06c1", // ARABIC LETTER HEH GOAL "H = 0x06c1", // ARABIC LETTER HEH GOAL "h = 0x06be", // ARABIC LETTER HEH DOACHASHMEE "y = 0x06cc", // ARABIC LETTER FARSI YEH "E = 0x06d2", // ARABIC LETTER YEH BARREE // Consonants with shadda (tashdiid) "bb = 0x0628 0x0651", "pp = 0x067e 0x0651", "tt = 0x062a 0x0651", ",t,t = 0x0679 0x0651", "_t_t = 0x062b 0x0651", "^g^g = 0x062c 0x0651", "jj = 0x062c 0x0651", "^c^c = 0x0686 0x0651", ".h.h = 0x062d 0x0651", "_h_h = 0x062e 0x0651", "dd = 0x062f 0x0651", ",d,d = 0x0688 0x0651", "_d_d = 0x0630 0x0651", "rr = 0x0631 0x0651", ",r,r = 0x0691 0x0651", "zz = 0x0632 0x0651", "^z^z = 0x0698 0x0651", "ss = 0x0633 0x0651", "^s^s = 0x0634 0x0651", ".s.s = 0x0635 0x0651", ".d.d = 0x0636 0x0651", ".t.t = 0x0637 0x0651", ".z.z = 0x0638 0x0651", "`` = 0x0639 0x0651", ".g.g = 0x063a 0x0651", "ff = 0x0641 0x0651", "qq = 0x0642 0x0651", "kk = 0x06a9 0x0651", "gg = 0x06af 0x0651", "ll = 0x0644 0x0651", "mm = 0x0645 0x0651", "nn = 0x0646 0x0651", "ww = 0x0648 0x0651", ",h,h = 0x06c1 0x0651", "yy = 0x06cc 0x0651", // Two consecutive similar consonants "b|b = 0x0628 0x0628", "p|p = 0x067e 0x067e", "t|t = 0x062a 0x062a", ",t|,t = 0x0679 0x0679", "_t|_t = 0x062b 0x062b", "^g|^g = 0x062c 0x062c", "j|j = 0x062c 0x062c", "^c|^c = 0x0686 0x0686", ".h|.h = 0x062d 0x062d", "_h|_h = 0x062e 0x062e", "d|d = 0x062f 0x062f", ",d|,d = 0x0688 0x0688", "_d|_d = 0x0630 0x0630", "r|r = 0x0631 0x0631", ",r|,r = 0x0691 0x0691", "z|z = 0x0632 0x0632", "^z|^z = 0x0698 0x0698", "s|s = 0x0633 0x0633", "^s|^s = 0x0634 0x0634", ".s|.s = 0x0635 0x0635", ".d|.d = 0x0636 0x0636", ".t|.t = 0x0637 0x0637", ".z|.z = 0x0638 0x0638", "`|` = 0x0639 0x0639", ".g|.g = 0x063a 0x063a", "f|f = 0x0641 0x0641", "q|q = 0x0642 0x0642", "k|k = 0x06a9 0x06a9", "g|g = 0x06af 0x06af", "l|l = 0x0644 0x0644", "m|m = 0x0645 0x0645", "n|n = 0x0646 0x0646", ".n|.n = 0x06ba 0x06ba", "w|w = 0x0648 0x0648", ",h|,h = 0x06c1 0x06c1", "y|y = 0x06cc 0x06cc", // Additional vowel mappings "A = 0x0627", // ARABIC LETTER ALEF "U = 0x0648", // ARABIC LETTER WAW "O = 0x0648", // ARABIC LETTER WAW "ao = 0x0648", // ARABIC LETTER WAW "I = 0x06cc", // ARABIC LETTER FARSI YEH "ae = 0x06d2", // ARABIC LETTER YEH BARREE // Word initial vowels "-a = 0x0627 0x064e", // ARABIC LETTER ALEF + FATHA "-u = 0x0627 0x064f", // ARABIC LETTER ALEF + DAMMA "-i = 0x0627 0x0650", // ARABIC LETTER ALEF + ARABIC KASRA "-A = 0x0622", // ARABIC LETTER ALEF WITH MADDA "-U = 0x0627 0x0648", // ARABIC LETTER ALEF + WAW "-O = 0x0627 0x0648", // ARABIC LETTER ALEF + WAW "-ao = 0x0627 0x0648", // ARABIC LETTER ALEF + WAW "-I = 0x0627 0x06cc", // ARABIC LETTER ALEF + FARSI YEH "-E = 0x0627 0x06d2", // ARABIC LETTER ALEF + YEH BARREE "-ae = 0x0627 0x06d2", // ARABIC LETTER ALEF + YEH BARREE // Diacritics // " = ", // ARABIC WASLA ABOVE // " = 0x0654", // ARABIC HAMZA ABOVE // " = 0x0655", // ARABIC HAMZA BELOW // " = 0x0653", // ARABIC MADDA ABOVE // "a = 0x064e", // ARABIC FATHA "u = 0x064f", // ARABIC DAMMA "i = 0x0650", // ARABIC KASRA "e = 0x0650", // ARABIC KASRA // " = 0x0652", // ARABIC SUKUN "aN = 0x0627 0x064b", // ARABIC LETTER ALEF + FATHATAN "uN = 0x064c", // ARABIC DAMMATAN "iN = 0x064d", // ARABIC KASRATAN "_a = 0x0670", // ARABIC LETTER SUPERSCRIPT ALEF // Numbers "0x30 = 0x06f0", // EXTENDED ARABIC-INDIC DIGIT ZERO "0x31 = 0x06f1", // EXTENDED ARABIC-INDIC DIGIT ONE "0x32 = 0x06f2", // EXTENDED ARABIC-INDIC DIGIT TWO "0x33 = 0x06f3", // EXTENDED ARABIC-INDIC DIGIT THREE "0x34 = 0x06f4", // EXTENDED ARABIC-INDIC DIGIT FOUR "0x35 = 0x06f5", // EXTENDED ARABIC-INDIC DIGIT FIVE "0x36 = 0x06f6", // EXTENDED ARABIC-INDIC DIGIT SIX "0x37 = 0x06f7", // EXTENDED ARABIC-INDIC DIGIT SEVEN "0x38 = 0x06f8", // EXTENDED ARABIC-INDIC DIGIT EIGHT "0x39 = 0x06f9", // EXTENDED ARABIC-INDIC DIGIT NINE // Punctuation ". = 0x06d4", // ARABIC FULL STOP ", = 0x060c", // ARABIC COMMA "; = 0x061b", // ARABIC SEMICOLON "? = 0x061f", // ARABIC QUESTION MARK "- = 0x0640", // ARABIC TATWEEL // Additional keycodes for Arabic "_A = 0x0649", // ARABIC LETTER ALEF MAKSURA "Y = 0x0649", // ARABIC LETTER ALEF MAKSURA "'| = 0x0621", // ARABIC LETTER HAMZA // Ligatures "'A = 0x0622", // ARABIC LETTER ALEF WITH MADDA "'a = 0x0623", // ARABIC LETTER ALEF WITH HAMZA ABOVE "'w = 0x0624", // ARABIC LETTER WAW WITH HAMZA ABOVE "'i = 0x0625", // ARABIC LETTER ALEF WITH HAMZA BELOW "'y = 0x0626", // ARABIC LETTER YEH WITH HAMZA ABOVE // " = 0x0671", // ARABIC LETTER ALEF WASLA "'h = 0x06c2", // ARABIC LETTER HEH GOAL WITH HAMZA ABOVE "'E = 0x06d3", // ARABIC LETTER YEH BARREE WITH HAMZA ABOVE "'B = 0x0640 0x0654", // ARABIC TATWEEL + HAMZA ABOVE "la = 0x0644 0x0627", // ARABIC LETTER LAM + ARABIC LETTER ALEF "l'A = 0x0644 0x0622", // ARABIC LETTER LAM + ALEF WITH MADDA "l'a = 0x0644 0x0623", // ARABIC LETTER LAM + ALEF WITH HAMZA ABOVE "l'i = 0x0644 0x0625", // ARABIC LETTER LAM + ALEF WITH HAMZA BELOW // " = 0x0644 0x0671", // ARABIC LETTER LAM + ALEF WASLA ./mytool/kmap/history/0000755000175000017500000000000010724001350015001 5ustar henrichhenrich./mytool/kmap/history/Arabic.kmap.czyborra0000644000175000017500000000533007532460064020705 0ustar henrichhenrich// Experimental Arabic.kmap for Yudit // 1998-06-18 Roman Czyborra@cs.tu-berlin.de "$=0x064C", // ٌ = ARABIC DAMMATAN "%=0x064F", // ُ = ARABIC DAMMA "&=0x0651", // ّ = ARABIC SHADDA "'=0x064E", // َ = ARABIC FATHA "*=0x0652", // ْ = ARABIC SUKUN ",=0x060C", // ، = ARABIC COMMA "-=0x0640", // ـ = ARABIC TATWEEL "0x30=0x0660", // ٠ = ARABIC-INDIC DIGIT ZERO "0x31=0x0661", // ١ = ARABIC-INDIC DIGIT ONE "0x32=0x0662", // ٢ = ARABIC-INDIC DIGIT TWO "0x33=0x0663", // ٣ = ARABIC-INDIC DIGIT THREE "0x34=0x0664", // ٤ = ARABIC-INDIC DIGIT FOUR "0x35=0x0665", // ٥ = ARABIC-INDIC DIGIT FIVE "0x36=0x0666", // ٦ = ARABIC-INDIC DIGIT SIX "0x37=0x0667", // ٧ = ARABIC-INDIC DIGIT SEVEN "0x38=0x0668", // ٨ = ARABIC-INDIC DIGIT EIGHT "0x39=0x0669", // ٩ = ARABIC-INDIC DIGIT NINE ";=0x061B", // ؛ = ARABIC SEMICOLON "?=0x061F", // ؟ = ARABIC QUESTION MARK "@=0x0621", // ء = ARABIC LETTER HAMZA "A=0x0670", // ٰ = ARABIC LETTER SUPERSCRIPT ALEF "^=0x064B", // ً = ARABIC FATHATAN "_=0x064D", // ٍ = ARABIC KASRATAN "`=0x0650", // ِ = ARABIC KASRA "a=0x0627", // ا = ARABIC LETTER ALEF "aB=0x0625", // إ = ARABIC LETTER ALEF WITH HAMZA BELOW "aH=0x0623", // أ = ARABIC LETTER ALEF WITH HAMZA ABOVE "aM=0x0622", // آ = ARABIC LETTER ALEF WITH MADDA ABOVE "b=0x0628", // ب = ARABIC LETTER BEH "c=0x0635", // ص = ARABIC LETTER SAD "d=0x062F", // د = ARABIC LETTER DAL "dD=0x0636", // ض = ARABIC LETTER DAD "dK=0x0630", // ذ = ARABIC LETTER THAL "e=0x0639", // ع = ARABIC LETTER AIN "f=0x0641", // ف = ARABIC LETTER FEH "g=0x062C", // ج = ARABIC LETTER JEEM "gF=0x06AF", // گ = ARABIC LETTER GAF "h=0x0647", // ه = ARABIC LETTER HEH "hH=0x0681", // ځ = ARABIC LETTER HAH WITH HAMZA ABOVE "hK=0x062D", // ح = ARABIC LETTER HAH "i=0x063A", // غ = ARABIC LETTER GHAIN "j=0x0649", // ى = ARABIC LETTER ALEF MAKSURA "k=0x0643", // ك = ARABIC LETTER KAF "l=0x0644", // ل = ARABIC LETTER LAM "m=0x0645", // م = ARABIC LETTER MEEM "n=0x0646", // ن = ARABIC LETTER NOON "p=0x067E", // پ = ARABIC LETTER PEH "q=0x0642", // ق = ARABIC LETTER QAF "r=0x0631", // ر = ARABIC LETTER REH "s=0x0633", // س = ARABIC LETTER SEEN "S=0x0634", // ش = ARABIC LETTER SHEEN "t=0x062A", // ت = ARABIC LETTER TEH "tC=0x0686", // چ = ARABIC LETTER TCHEH "tJ=0x0637", // ط = ARABIC LETTER TAH "tK=0x062B", // ث = ARABIC LETTER THEH "tM=0x0629", // ة = ARABIC LETTER TEH MARBUTA "v=0x06A4", // ڤ = ARABIC LETTER VEH "w=0x0648", // و = ARABIC LETTER WAW "wH=0x0624", // ؤ = ARABIC LETTER WAW WITH HAMZA ABOVE "x=0x062E", // خ = ARABIC LETTER KHAH "y=0x064A", // ي = ARABIC LETTER YEH "yH=0x0626", // ئ = ARABIC LETTER YEH WITH HAMZA ABOVE "z=0x0632", // ز = ARABIC LETTER ZAIN "zH=0x0638", // ظ = ARABIC LETTER ZAH "zJ=0x0698", // ژ = ARABIC LETTER JEH ./mytool/kmap/Hebrew.kmap0000644000175000017500000000425207532460064015407 0ustar henrichhenrich// Hebrew.kmap for Yudit // 2001-01-30 Raphael Finkel raphael@cs.uky.edu // These are the Yiddish letters, according to the UYIP mapping convention "a=0x05D0 0x05b7", // HEBREW LETTER ALEF, HEBREW POINT PATAH "A=0x05D0", // HEBREW LETTER ALEF "B=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "b=0x05D1", // HEBREW LETTER BET "c=0x05E6", // HEBREW LETTER TSADI "C=0x05E5", // HEBREW LETTER FINAL TSADI "d=0x05D3", // HEBREW LETTER DALET "e=0x05E2", // HEBREW LETTER AYIN "E=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "f=0x05E4 0x05BF", // HEBREW LETTER PE, HEBREW POINT RAFE "F=0x05E3", // HEBREW LETTER FINAL PE "g=0x05D2", // HEBREW LETTER GIMEL "h=0x05D4", // HEBREW LETTER HE "H=0x05D7", // HEBREW LETTER HET "i=0x05D9", // HEBREW LETTER YOD "I=0x05D9 0x05B4", // HEBREW LETTER YOD, HEBREW POINT HIRIQ "j=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "J=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "k=0x05E7", // HEBREW LETTER QOF "K=0x05DB 0x05BC", // HEBREW LETTER KAF, HEBREW POINT DAGESH OR MAPIQ "l=0x05DC", // HEBREW LETTER LAMED "m=0x05DE", // HEBREW LETTER MEM "M=0x05DD", // HEBREW LETTER FINAL MEM "n=0x05E0", // HEBREW LETTER NUN "N=0x05DF", // HEBREW LETTER FINAL NUN "o=0x05D0 0x05B8", // HEBREW LETTER ALEF, HEBREW POINT QAMATS "O=0x05F1", // HEBREW LIGATURE YIDDISH VAV YOD "p=0x05E4 0x05BC", // HEBREW LETTER PE, HEBREW POINT DAGESH OR MAPIQ "q=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "r=0x05E8", // HEBREW LETTER RESH "s=0x05E1", // HEBREW LETTER SAMEKH "S=0x05EA", // HEBREW LETTER TAV "t=0x05D8", // HEBREW LETTER TET "T=0x05EA 0x05BC", // HEBREW LETTER TAV, HEBREW POINT DAGESH OR MAPIQ "u=0x05D5", // HEBREW LETTER VAV "U=0x05D5 0x05BC", // HEBREW LETTER VAV, HEBREW POINT DAGESH OR MAPIQ "v=0x05F0", // HEBREW LIGATURE YIDDISH DOUBLE VAV "V=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "w=0x05E9", // HEBREW LETTER SHIN "W=0x05E9 0x05C2", // HEBREW LETTER SHIN, HEBREW POINT SIN DOT "x=0x05DB", // HEBREW LETTER KAF "X=0x05DA", // HEBREW LETTER FINAL KAF "y=0x05D9", // HEBREW LETTER YOD "Y=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "z=0x05D6", // HEBREW LETTER ZAYIN ./mytool/kmap/Unicode.kmap0000644000175000017500000000262607532460064015564 0ustar henrichhenrich// // Unicode input map for yudit // "unicode+digit1+digit2+digit3+digit4", "begin unicode", "U = 0x0", "u = 0x0", "end unicode", "begin digit1", "0x30=0x0000", "0x31=0x1000", "0x32=0x2000", "0x33=0x3000", "0x34=0x4000", "0x35=0x5000", "0x36=0x6000", "0x37=0x7000", "0x38=0x8000", "0x39=0x9000", "a=0xA000", "b=0xB000", "c=0xC000", "d=0xD000", "e=0xE000", "f=0xF000", "A=0xA000", "B=0xB000", "C=0xC000", "D=0xD000", "E=0xE000", "F=0xF000", "end digit1", "begin digit2", "0x30=0x0000", "0x31=0x0100", "0x32=0x0200", "0x33=0x0300", "0x34=0x0400", "0x35=0x0500", "0x36=0x0600", "0x37=0x0700", "0x38=0x0800", "0x39=0x0900", "a=0x0A00", "b=0x0B00", "c=0x0C00", "d=0x0D00", "e=0x0E00", "f=0x0F00", "A=0x0A00", "B=0x0B00", "C=0x0C00", "D=0x0D00", "E=0x0E00", "F=0x0F00", "end digit2", "begin digit3", "0x30=0x0000", "0x31=0x0010", "0x32=0x0020", "0x33=0x0030", "0x34=0x0040", "0x35=0x0050", "0x36=0x0060", "0x37=0x0070", "0x38=0x0080", "0x39=0x0090", "a=0x00A0", "b=0x00B0", "c=0x00C0", "d=0x00D0", "e=0x00E0", "f=0x00F0", "A=0x00A0", "B=0x00B0", "C=0x00C0", "D=0x00D0", "E=0x00E0", "F=0x00F0", "end digit3", "begin digit4", "0x30=0x0000", "0x31=0x0001", "0x32=0x0002", "0x33=0x0003", "0x34=0x0004", "0x35=0x0005", "0x36=0x0006", "0x37=0x0007", "0x38=0x0008", "0x39=0x0009", "a=0x000A", "b=0x000B", "c=0x000C", "d=0x000D", "e=0x000E", "f=0x000F", "A=0x000A", "B=0x000B", "C=0x000C", "D=0x000D", "E=0x000E", "F=0x000F", "end digit4" ./mytool/kmap/Ethiopic.kmap0000644000175000017500000004440007532460064015736 0ustar henrichhenrich// Ethiopic.kmap for http://www2.gol.com/users/gsinai/'s // Yudit 0.99 Unicode text editor // 1998-05-08 Roman Czyborra@dds.nl (ሮማን ቺቦራ) // based on http://www.unicode.org/pending/ethiopic/ethiopic.html and // http://www.cs.indiana.edu/hyplan/dmulholl/fidel/unicode/new/unicode-sera.html // (SERA = System for Ethiopic Representation in ASCII) // and information provided by ሌታ ምስግና (ኣመሰግናለሁ!). // Add Font2=10646:*-*-ethiopic-unicode to your yuditrc to use the // ftp://ftp.cs.indiana.edu/pub/fidel/fonts/ethiomx16f-uni.bdf font "he=0x1200", // ሀ = ETHIOPIC SYLLABLE HA "hu=0x1201", // ሁ = ETHIOPIC SYLLABLE HU "hi=0x1202", // ሂ = ETHIOPIC SYLLABLE HI "ha=0x1203", // ሃ = ETHIOPIC SYLLABLE HAA "hE=0x1204", // ሄ = ETHIOPIC SYLLABLE HEE "h=0x1205", // ህ = ETHIOPIC SYLLABLE HE "ho=0x1206", // ሆ = ETHIOPIC SYLLABLE HO "le=0x1208", // ለ = ETHIOPIC SYLLABLE LA "lu=0x1209", // ሉ = ETHIOPIC SYLLABLE LU "li=0x120A", // ሊ = ETHIOPIC SYLLABLE LI "la=0x120B", // ላ = ETHIOPIC SYLLABLE LAA "lE=0x120C", // ሌ = ETHIOPIC SYLLABLE LEE "l=0x120D", // ል = ETHIOPIC SYLLABLE LE "lo=0x120E", // ሎ = ETHIOPIC SYLLABLE LO "lWa=0x120F", // ሏ = ETHIOPIC SYLLABLE LWA "He=0x1210", // ሐ = ETHIOPIC SYLLABLE HHA "Hu=0x1211", // ሑ = ETHIOPIC SYLLABLE HHU "Hi=0x1212", // ሒ = ETHIOPIC SYLLABLE HHI "Ha=0x1213", // ሓ = ETHIOPIC SYLLABLE HHAA "HE=0x1214", // ሔ = ETHIOPIC SYLLABLE HHEE "H=0x1215", // ሕ = ETHIOPIC SYLLABLE HHE "Ho=0x1216", // ሖ = ETHIOPIC SYLLABLE HHO "HWa=0x1217", // ሗ = ETHIOPIC SYLLABLE HHWA "me=0x1218", // መ = ETHIOPIC SYLLABLE MA "mu=0x1219", // ሙ = ETHIOPIC SYLLABLE MU "mi=0x121A", // ሚ = ETHIOPIC SYLLABLE MI "ma=0x121B", // ማ = ETHIOPIC SYLLABLE MAA "mE=0x121C", // ሜ = ETHIOPIC SYLLABLE MEE "m=0x121D", // ም = ETHIOPIC SYLLABLE ME "mo=0x121E", // ሞ = ETHIOPIC SYLLABLE MO "mWa=0x121F", // ሟ = ETHIOPIC SYLLABLE MWA "`se=0x1220", // ሠ = ETHIOPIC SYLLABLE SZA "`su=0x1221", // ሡ = ETHIOPIC SYLLABLE SZU "`si=0x1222", // ሢ = ETHIOPIC SYLLABLE SZI "`sa=0x1223", // ሣ = ETHIOPIC SYLLABLE SZAA "`sE=0x1224", // ሤ = ETHIOPIC SYLLABLE SZEE "`s=0x1225", // ሥ = ETHIOPIC SYLLABLE SZE "`so=0x1226", // ሦ = ETHIOPIC SYLLABLE SZO "`sWa=0x1227", // ሧ = ETHIOPIC SYLLABLE SZWA "re=0x1228", // ረ = ETHIOPIC SYLLABLE RA "ru=0x1229", // ሩ = ETHIOPIC SYLLABLE RU "ri=0x122A", // ሪ = ETHIOPIC SYLLABLE RI "ra=0x122B", // ራ = ETHIOPIC SYLLABLE RAA "rE=0x122C", // ሬ = ETHIOPIC SYLLABLE REE "r=0x122D", // ር = ETHIOPIC SYLLABLE RE "ro=0x122E", // ሮ = ETHIOPIC SYLLABLE RO "rWa=0x122F", // ሯ = ETHIOPIC SYLLABLE RWA "se=0x1230", // ሰ = ETHIOPIC SYLLABLE SA "su=0x1231", // ሱ = ETHIOPIC SYLLABLE SU "si=0x1232", // ሲ = ETHIOPIC SYLLABLE SI "sa=0x1233", // ሳ = ETHIOPIC SYLLABLE SAA "sE=0x1234", // ሴ = ETHIOPIC SYLLABLE SEE "s=0x1235", // ስ = ETHIOPIC SYLLABLE SE "so=0x1236", // ሶ = ETHIOPIC SYLLABLE SO "sWa=0x1237", // ሷ = ETHIOPIC SYLLABLE SWA "xe=0x1238", // ሸ = ETHIOPIC SYLLABLE SHA "xu=0x1239", // ሹ = ETHIOPIC SYLLABLE SHU "xi=0x123A", // ሺ = ETHIOPIC SYLLABLE SHI "xa=0x123B", // ሻ = ETHIOPIC SYLLABLE SHAA "xE=0x123C", // ሼ = ETHIOPIC SYLLABLE SHEE "x=0x123D", // ሽ = ETHIOPIC SYLLABLE SHE "xo=0x123E", // ሾ = ETHIOPIC SYLLABLE SHO "xWa=0x123F", // ሿ = ETHIOPIC SYLLABLE SHWA "qe=0x1240", // ቀ = ETHIOPIC SYLLABLE QA "qu=0x1241", // ቁ = ETHIOPIC SYLLABLE QU "qi=0x1242", // ቂ = ETHIOPIC SYLLABLE QI "qa=0x1243", // ቃ = ETHIOPIC SYLLABLE QAA "qE=0x1244", // ቄ = ETHIOPIC SYLLABLE QEE "q=0x1245", // ቅ = ETHIOPIC SYLLABLE QE "qo=0x1246", // ቆ = ETHIOPIC SYLLABLE QO "qWe=0x1248", // ቈ = ETHIOPIC SYLLABLE QWA // "qWu=0x1249", // ቉ "qWi=0x124A", // ቊ = ETHIOPIC SYLLABLE QWI "qWa=0x124B", // ቋ = ETHIOPIC SYLLABLE QWAA "qWE=0x124C", // ቌ = ETHIOPIC SYLLABLE QWEE "qW=0x124D", // ቍ = ETHIOPIC SYLLABLE QWE "Qe=0x1250", // ቐ = ETHIOPIC SYLLABLE QHA "Qu=0x1251", // ቑ = ETHIOPIC SYLLABLE QHU "Qi=0x1252", // ቒ = ETHIOPIC SYLLABLE QHI "Qa=0x1253", // ቓ = ETHIOPIC SYLLABLE QHAA "QE=0x1254", // ቔ = ETHIOPIC SYLLABLE QHEE "Q=0x1255", // ቕ = ETHIOPIC SYLLABLE QHE "Qo=0x1256", // ቖ = ETHIOPIC SYLLABLE QHO "QWe=0x1258", // ቘ = ETHIOPIC SYLLABLE QHWA // "QWu=0x1259", // ቙ "QWi=0x125A", // ቚ = ETHIOPIC SYLLABLE QHWI "QWa=0x125B", // ቛ = ETHIOPIC SYLLABLE QHWAA "QWE=0x125C", // ቜ = ETHIOPIC SYLLABLE QHWEE "QW=0x125D", // ቝ = ETHIOPIC SYLLABLE QHWE "be=0x1260", // በ = ETHIOPIC SYLLABLE BA "bu=0x1261", // ቡ = ETHIOPIC SYLLABLE BU "bi=0x1262", // ቢ = ETHIOPIC SYLLABLE BI "ba=0x1263", // ባ = ETHIOPIC SYLLABLE BAA "bE=0x1264", // ቤ = ETHIOPIC SYLLABLE BEE "b=0x1265", // ብ = ETHIOPIC SYLLABLE BE "bo=0x1266", // ቦ = ETHIOPIC SYLLABLE BO "bWa=0x1267", // ቧ = ETHIOPIC SYLLABLE BWA "ve=0x1268", // ቨ = ETHIOPIC SYLLABLE VA "vu=0x1269", // ቩ = ETHIOPIC SYLLABLE VU "vi=0x126A", // ቪ = ETHIOPIC SYLLABLE VI "va=0x126B", // ቫ = ETHIOPIC SYLLABLE VAA "vE=0x126C", // ቬ = ETHIOPIC SYLLABLE VEE "v=0x126D", // ቭ = ETHIOPIC SYLLABLE VE "vo=0x126E", // ቮ = ETHIOPIC SYLLABLE VO "vWa=0x126F", // ቯ = ETHIOPIC SYLLABLE VWA "te=0x1270", // ተ = ETHIOPIC SYLLABLE TA "tu=0x1271", // ቱ = ETHIOPIC SYLLABLE TU "ti=0x1272", // ቲ = ETHIOPIC SYLLABLE TI "ta=0x1273", // ታ = ETHIOPIC SYLLABLE TAA "tE=0x1274", // ቴ = ETHIOPIC SYLLABLE TEE "t=0x1275", // ት = ETHIOPIC SYLLABLE TE "to=0x1276", // ቶ = ETHIOPIC SYLLABLE TO "tWa=0x1277", // ቷ = ETHIOPIC SYLLABLE TWA "ce=0x1278", // ቸ = ETHIOPIC SYLLABLE CA "cu=0x1279", // ቹ = ETHIOPIC SYLLABLE CU "ci=0x127A", // ቺ = ETHIOPIC SYLLABLE CI "ca=0x127B", // ቻ = ETHIOPIC SYLLABLE CAA "cE=0x127C", // ቼ = ETHIOPIC SYLLABLE CEE "c=0x127D", // ች = ETHIOPIC SYLLABLE CE "co=0x127E", // ቾ = ETHIOPIC SYLLABLE CO "cWa=0x127F", // ቿ = ETHIOPIC SYLLABLE CWA "`he=0x1280", // ኀ = ETHIOPIC SYLLABLE XA "`hu=0x1281", // ኁ = ETHIOPIC SYLLABLE XU "`hi=0x1282", // ኂ = ETHIOPIC SYLLABLE XI "`ha=0x1283", // ኃ = ETHIOPIC SYLLABLE XAA "`hE=0x1284", // ኄ = ETHIOPIC SYLLABLE XEE "`h=0x1285", // ኅ = ETHIOPIC SYLLABLE XE "`ho=0x1286", // ኆ = ETHIOPIC SYLLABLE XO "hWe=0x1288", // ኈ = ETHIOPIC SYLLABLE XWA // "hWu=0x1289", // ኉ "hWi=0x128A", // ኊ = ETHIOPIC SYLLABLE XWI "hWa=0x128B", // ኋ = ETHIOPIC SYLLABLE XWAA "hWE=0x128C", // ኌ = ETHIOPIC SYLLABLE XWEE "hW=0x128D", // ኍ = ETHIOPIC SYLLABLE XWE "ne=0x1290", // ነ = ETHIOPIC SYLLABLE NA "nu=0x1291", // ኑ = ETHIOPIC SYLLABLE NU "ni=0x1292", // ኒ = ETHIOPIC SYLLABLE NI "na=0x1293", // ና = ETHIOPIC SYLLABLE NAA "nE=0x1294", // ኔ = ETHIOPIC SYLLABLE NEE "n=0x1295", // ን = ETHIOPIC SYLLABLE NE "no=0x1296", // ኖ = ETHIOPIC SYLLABLE NO "nWa=0x1297", // ኗ = ETHIOPIC SYLLABLE NWA "Ne=0x1298", // ኘ = ETHIOPIC SYLLABLE NYA "Nu=0x1299", // ኙ = ETHIOPIC SYLLABLE NYU "Ni=0x129A", // ኚ = ETHIOPIC SYLLABLE NYI "Na=0x129B", // ኛ = ETHIOPIC SYLLABLE NYAA "NE=0x129C", // ኜ = ETHIOPIC SYLLABLE NYEE "N=0x129D", // ኝ = ETHIOPIC SYLLABLE NYE "No=0x129E", // ኞ = ETHIOPIC SYLLABLE NYO "NWa=0x129F", // ኟ = ETHIOPIC SYLLABLE NYWA "e=0x12A0", // አ = ETHIOPIC SYLLABLE GLOTTAL A "u=0x12A1", // ኡ = ETHIOPIC SYLLABLE GLOTTAL U "i=0x12A2", // ኢ = ETHIOPIC SYLLABLE GLOTTAL I "a=0x12A3", // ኣ = ETHIOPIC SYLLABLE GLOTTAL AA "E=0x12A4", // ኤ = ETHIOPIC SYLLABLE GLOTTAL EE "I=0x12A5", // እ = ETHIOPIC SYLLABLE GLOTTAL E "o=0x12A6", // ኦ = ETHIOPIC SYLLABLE GLOTTAL O "e3=0x12A7", // ኧ = ETHIOPIC SYLLABLE GLOTTAL WA "ke=0x12A8", // ከ = ETHIOPIC SYLLABLE KA "ku=0x12A9", // ኩ = ETHIOPIC SYLLABLE KU "ki=0x12AA", // ኪ = ETHIOPIC SYLLABLE KI "ka=0x12AB", // ካ = ETHIOPIC SYLLABLE KAA "kE=0x12AC", // ኬ = ETHIOPIC SYLLABLE KEE "k=0x12AD", // ክ = ETHIOPIC SYLLABLE KE "ko=0x12AE", // ኮ = ETHIOPIC SYLLABLE KO "kWe=0x12B0", // ኰ = ETHIOPIC SYLLABLE KWA // "kWu=0x12B1", // ኱ "kWi=0x12B2", // ኲ = ETHIOPIC SYLLABLE KWI "kWa=0x12B3", // ኳ = ETHIOPIC SYLLABLE KWAA "kWE=0x12B4", // ኴ = ETHIOPIC SYLLABLE KWEE "kW=0x12B5", // ኵ = ETHIOPIC SYLLABLE KWE "Ke=0x12B8", // ኸ = ETHIOPIC SYLLABLE KXA "Ku=0x12B9", // ኹ = ETHIOPIC SYLLABLE KXU "Ki=0x12BA", // ኺ = ETHIOPIC SYLLABLE KXI "Ka=0x12BB", // ኻ = ETHIOPIC SYLLABLE KXAA "KE=0x12BC", // ኼ = ETHIOPIC SYLLABLE KXEE "K=0x12BD", // ኽ = ETHIOPIC SYLLABLE KXE "Ko=0x12BE", // ኾ = ETHIOPIC SYLLABLE KXO "KWe=0x12C0", // ዀ = ETHIOPIC SYLLABLE KXWA // "KWu=0x12C1", // ዁ "KWi=0x12C2", // ዂ = ETHIOPIC SYLLABLE KXWI "KWa=0x12C3", // ዃ = ETHIOPIC SYLLABLE KXWAA "KWE=0x12C4", // ዄ = ETHIOPIC SYLLABLE KXWEE "KW=0x12C5", // ዅ = ETHIOPIC SYLLABLE KXWE "we=0x12C8", // ወ = ETHIOPIC SYLLABLE WA "wu=0x12C9", // ዉ = ETHIOPIC SYLLABLE WU "wi=0x12CA", // ዊ = ETHIOPIC SYLLABLE WI "wa=0x12CB", // ዋ = ETHIOPIC SYLLABLE WAA "wE=0x12CC", // ዌ = ETHIOPIC SYLLABLE WEE "w=0x12CD", // ው = ETHIOPIC SYLLABLE WE "wo=0x12CE", // ዎ = ETHIOPIC SYLLABLE WO "`e=0x12D0", // ዐ = ETHIOPIC SYLLABLE PHARYNGEAL A "`u=0x12D1", // ዑ = ETHIOPIC SYLLABLE PHARYNGEAL U "`i=0x12D2", // ዒ = ETHIOPIC SYLLABLE PHARYNGEAL I "`a=0x12D3", // ዓ = ETHIOPIC SYLLABLE PHARYNGEAL AA "`E=0x12D4", // ዔ = ETHIOPIC SYLLABLE PHARYNGEAL EE "`I=0x12D5", // ዕ = ETHIOPIC SYLLABLE PHARYNGEAL E "`o=0x12D6", // ዖ = ETHIOPIC SYLLABLE PHARYNGEAL O "ze=0x12D8", // ዘ = ETHIOPIC SYLLABLE ZA "zu=0x12D9", // ዙ = ETHIOPIC SYLLABLE ZU "zi=0x12DA", // ዚ = ETHIOPIC SYLLABLE ZI "za=0x12DB", // ዛ = ETHIOPIC SYLLABLE ZAA "zE=0x12DC", // ዜ = ETHIOPIC SYLLABLE ZEE "z=0x12DD", // ዝ = ETHIOPIC SYLLABLE ZE "zo=0x12DE", // ዞ = ETHIOPIC SYLLABLE ZO "zWa=0x12DF", // ዟ = ETHIOPIC SYLLABLE ZWA "Ze=0x12E0", // ዠ = ETHIOPIC SYLLABLE ZHA "Zu=0x12E1", // ዡ = ETHIOPIC SYLLABLE ZHU "Zi=0x12E2", // ዢ = ETHIOPIC SYLLABLE ZHI "Za=0x12E3", // ዣ = ETHIOPIC SYLLABLE ZHAA "ZE=0x12E4", // ዤ = ETHIOPIC SYLLABLE ZHEE "Z=0x12E5", // ዥ = ETHIOPIC SYLLABLE ZHE "Zo=0x12E6", // ዦ = ETHIOPIC SYLLABLE ZHO "ZWa=0x12E7", // ዧ = ETHIOPIC SYLLABLE ZHWA "ye=0x12E8", // የ = ETHIOPIC SYLLABLE YA "yu=0x12E9", // ዩ = ETHIOPIC SYLLABLE YU "yi=0x12EA", // ዪ = ETHIOPIC SYLLABLE YI "ya=0x12EB", // ያ = ETHIOPIC SYLLABLE YAA "yE=0x12EC", // ዬ = ETHIOPIC SYLLABLE YEE "y=0x12ED", // ይ = ETHIOPIC SYLLABLE YE "yo=0x12EE", // ዮ = ETHIOPIC SYLLABLE YO // "yWa=0x12EF", // ዯ "de=0x12F0", // ደ = ETHIOPIC SYLLABLE DA "du=0x12F1", // ዱ = ETHIOPIC SYLLABLE DU "di=0x12F2", // ዲ = ETHIOPIC SYLLABLE DI "da=0x12F3", // ዳ = ETHIOPIC SYLLABLE DAA "dE=0x12F4", // ዴ = ETHIOPIC SYLLABLE DEE "d=0x12F5", // ድ = ETHIOPIC SYLLABLE DE "do=0x12F6", // ዶ = ETHIOPIC SYLLABLE DO "dWa=0x12F7", // ዷ = ETHIOPIC SYLLABLE DWA "De=0x12F8", // ዸ = ETHIOPIC SYLLABLE DDA "Du=0x12F9", // ዹ = ETHIOPIC SYLLABLE DDU "Di=0x12FA", // ዺ = ETHIOPIC SYLLABLE DDI "Da=0x12FB", // ዻ = ETHIOPIC SYLLABLE DDAA "DE=0x12FC", // ዼ = ETHIOPIC SYLLABLE DDEE "D=0x12FD", // ዽ = ETHIOPIC SYLLABLE DDE "Do=0x12FE", // ዾ = ETHIOPIC SYLLABLE DDO "DWa=0x12FF", // ዿ = ETHIOPIC SYLLABLE DDWA "je=0x1300", // ጀ = ETHIOPIC SYLLABLE JA "ju=0x1301", // ጁ = ETHIOPIC SYLLABLE JU "ji=0x1302", // ጂ = ETHIOPIC SYLLABLE JI "ja=0x1303", // ጃ = ETHIOPIC SYLLABLE JAA "jE=0x1304", // ጄ = ETHIOPIC SYLLABLE JEE "j=0x1305", // ጅ = ETHIOPIC SYLLABLE JE "jo=0x1306", // ጆ = ETHIOPIC SYLLABLE JO "jWa=0x1307", // ጇ = ETHIOPIC SYLLABLE JWA "ge=0x1308", // ገ = ETHIOPIC SYLLABLE GA "gu=0x1309", // ጉ = ETHIOPIC SYLLABLE GU "gi=0x130A", // ጊ = ETHIOPIC SYLLABLE GI "ga=0x130B", // ጋ = ETHIOPIC SYLLABLE GAA "gE=0x130C", // ጌ = ETHIOPIC SYLLABLE GEE "g=0x130D", // ግ = ETHIOPIC SYLLABLE GE "go=0x130E", // ጎ = ETHIOPIC SYLLABLE GO "gWe=0x1310", // ጐ = ETHIOPIC SYLLABLE GWA "gWu=0x1311", // ጑ "gWi=0x1312", // ጒ = ETHIOPIC SYLLABLE GWI "gWa=0x1313", // ጓ = ETHIOPIC SYLLABLE GWAA "gWE=0x1314", // ጔ = ETHIOPIC SYLLABLE GWEE "gW=0x1315", // ጕ = ETHIOPIC SYLLABLE GWE "Ge=0x1318", // ጘ = ETHIOPIC SYLLABLE GGA "Gu=0x1319", // ጙ = ETHIOPIC SYLLABLE GGU "Gi=0x131A", // ጚ = ETHIOPIC SYLLABLE GGI "Ga=0x131B", // ጛ = ETHIOPIC SYLLABLE GGAA "GE=0x131C", // ጜ = ETHIOPIC SYLLABLE GGEE "G=0x131D", // ጝ = ETHIOPIC SYLLABLE GGE "Go=0x131E", // ጞ = ETHIOPIC SYLLABLE GGO // "GWa=0x131F", // ጟ "Te=0x1320", // ጠ = ETHIOPIC SYLLABLE THA "Tu=0x1321", // ጡ = ETHIOPIC SYLLABLE THU "Ti=0x1322", // ጢ = ETHIOPIC SYLLABLE THI "Ta=0x1323", // ጣ = ETHIOPIC SYLLABLE THAA "TE=0x1324", // ጤ = ETHIOPIC SYLLABLE THEE "T=0x1325", // ጥ = ETHIOPIC SYLLABLE THE "To=0x1326", // ጦ = ETHIOPIC SYLLABLE THO "TWa=0x1327", // ጧ = ETHIOPIC SYLLABLE THWA "Ce=0x1328", // ጨ = ETHIOPIC SYLLABLE CHA "Cu=0x1329", // ጩ = ETHIOPIC SYLLABLE CHU "Ci=0x132A", // ጪ = ETHIOPIC SYLLABLE CHI "Ca=0x132B", // ጫ = ETHIOPIC SYLLABLE CHAA "CE=0x132C", // ጬ = ETHIOPIC SYLLABLE CHEE "C=0x132D", // ጭ = ETHIOPIC SYLLABLE CHE "Co=0x132E", // ጮ = ETHIOPIC SYLLABLE CHO "CWa=0x132F", // ጯ = ETHIOPIC SYLLABLE CHWA "Pe=0x1330", // ጰ = ETHIOPIC SYLLABLE PHA "Pu=0x1331", // ጱ = ETHIOPIC SYLLABLE PHU "Pi=0x1332", // ጲ = ETHIOPIC SYLLABLE PHI "Pa=0x1333", // ጳ = ETHIOPIC SYLLABLE PHAA "PE=0x1334", // ጴ = ETHIOPIC SYLLABLE PHEE "P=0x1335", // ጵ = ETHIOPIC SYLLABLE PHE "Po=0x1336", // ጶ = ETHIOPIC SYLLABLE PHO "PWa=0x1337", // ጷ = ETHIOPIC SYLLABLE PHWA "Se=0x1338", // ጸ = ETHIOPIC SYLLABLE TSA "Su=0x1339", // ጹ = ETHIOPIC SYLLABLE TSU "Si=0x133A", // ጺ = ETHIOPIC SYLLABLE TSI "Sa=0x133B", // ጻ = ETHIOPIC SYLLABLE TSAA "SE=0x133C", // ጼ = ETHIOPIC SYLLABLE TSEE "S=0x133D", // ጽ = ETHIOPIC SYLLABLE TSE "So=0x133E", // ጾ = ETHIOPIC SYLLABLE TSO "SWa=0x133F", // ጿ = ETHIOPIC SYLLABLE TSWA "`Se=0x1340", // ፀ = ETHIOPIC SYLLABLE TZA "`Su=0x1341", // ፁ = ETHIOPIC SYLLABLE TZU "`Si=0x1342", // ፂ = ETHIOPIC SYLLABLE TZI "`Sa=0x1343", // ፃ = ETHIOPIC SYLLABLE TZAA "`SE=0x1344", // ፄ = ETHIOPIC SYLLABLE TZEE "`S=0x1345", // ፅ = ETHIOPIC SYLLABLE TZE "`So=0x1346", // ፆ = ETHIOPIC SYLLABLE TZO "fe=0x1348", // ፈ = ETHIOPIC SYLLABLE FA "fu=0x1349", // ፉ = ETHIOPIC SYLLABLE FU "fi=0x134A", // ፊ = ETHIOPIC SYLLABLE FI "fa=0x134B", // ፋ = ETHIOPIC SYLLABLE FAA "fE=0x134C", // ፌ = ETHIOPIC SYLLABLE FEE "f=0x134D", // ፍ = ETHIOPIC SYLLABLE FE "fo=0x134E", // ፎ = ETHIOPIC SYLLABLE FO "fWa=0x134F", // ፏ = ETHIOPIC SYLLABLE FWA "pe=0x1350", // ፐ = ETHIOPIC SYLLABLE PA "pu=0x1351", // ፑ = ETHIOPIC SYLLABLE PU "pi=0x1352", // ፒ = ETHIOPIC SYLLABLE PI "pa=0x1353", // ፓ = ETHIOPIC SYLLABLE PAA "pE=0x1354", // ፔ = ETHIOPIC SYLLABLE PEE "p=0x1355", // ፕ = ETHIOPIC SYLLABLE PE "po=0x1356", // ፖ = ETHIOPIC SYLLABLE PO "pWa=0x1357", // ፗ = ETHIOPIC SYLLABLE PWA // /usr/src/sera2any-0.25/include/fidel.map has the following // three in wrong order "mYa","rYa","fYa": "rYa=0x1358", // ፘ = ETHIOPIC SYLLABLE RYA "mYa=0x1359", // ፙ = ETHIOPIC SYLLABLE MYA "fYa=0x135A", // ፚ = ETHIOPIC SYLLABLE FYA // Ethiopic punctuation puzzles me: // Why does Ethiopic need its own space character? // How does it differ from ASCII space? // Why does the "Extended Unicode Fidel" try to // reuse the Arabic Presentation Forms' U+FDF0 code space // for Africa symbols, wW, sarcasm mark and others // instead of placing them in the Ethiopic range 0x1200-0x137F? "0x22 0x20 0x22=0x1360", // ፠ = ETHIOPIC SPACE "0x20 : 0x20 =0x1361", // ፡ = ETHIOPIC WORDSPACE "::=0x1362", // ። = ETHIOPIC FULL STOP ",=0x1363", // ፣ = ETHIOPIC COMMA ";=0x1364", // ፤ = ETHIOPIC SEMICOLON "-:=0x1365", // ፥ = ETHIOPIC COLON ":-=0x1366", // ፦ = ETHIOPIC PREFACE COLON "`?=0x1367", // ፧ = ETHIOPIC QUESTION MARK ":|:=0x1368", // ፨ = ETHIOPIC PARAGRAPH SEPARATOR "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK // Ethiopic numbers "`1=0x1369", // ፩ = ETHIOPIC DIGIT ONE "`2=0x136A", // ፪ = ETHIOPIC DIGIT TWO "`3=0x136B", // ፫ = ETHIOPIC DIGIT THREE "`4=0x136C", // ፬ = ETHIOPIC DIGIT FOUR "`5=0x136D", // ፭ = ETHIOPIC DIGIT FIVE "`6=0x136E", // ፮ = ETHIOPIC DIGIT SIX "`7=0x136F", // ፯ = ETHIOPIC DIGIT SEVEN "`8=0x1370", // ፰ = ETHIOPIC DIGIT EIGHT "`9=0x1371", // ፱ = ETHIOPIC DIGIT NINE "`10=0x1372", // ፲ = ETHIOPIC NUMBER TEN "`20=0x1373", // ፳ = ETHIOPIC NUMBER TWENTY "`30=0x1374", // ፴ = ETHIOPIC NUMBER THIRTY "`40=0x1375", // ፵ = ETHIOPIC NUMBER FORTY "`50=0x1376", // ፶ = ETHIOPIC NUMBER FIFTY "`60=0x1377", // ፷ = ETHIOPIC NUMBER SIXTY "`70=0x1378", // ፸ = ETHIOPIC NUMBER SEVENTY "`80=0x1379", // ፹ = ETHIOPIC NUMBER EIGHTY "`90=0x137A", // ፺ = ETHIOPIC NUMBER NINETY "`100=0x137B", // ፻ = ETHIOPIC NUMBER HUNDRED "`10000=0x137C", // ፼ = ETHIOPIC NUMBER TEN THOUSAND // The following biblical syllables do not appear in // http://www.unicode.org/pending/ethiopic/ethiopic.html // and can be approximated. Who's trying to add them? // "`qe=0x1380", // ᎀ ≈ ቐ // "`qu=0x1381", // ᎁ // "`qi=0x1382", // ᎂ // "`qa=0x1383", // ᎃ // "`qE=0x1384", // ᎄ // "`q=0x1385", // ᎅ // "`qo=0x1386", // ᎆ // "mWe=0x1388", // ᎈ // "bWe=0x1389", // ᎉ // "GWe=0x138A", // ᎊ // "fWe=0x138B", // ᎋ // "pWe=0x138C", // ᎌ // "`ke=0x1390", // ᎐ // "`ku=0x1391", // ᎑ // "`ki=0x1392", // ᎒ // "`ka=0x1393", // ᎓ // "`kE=0x1394", // ᎔ // "`k=0x1395", // ᎕ // "`ko=0x1396", // ᎖ // "mWi=0x1398", // ᎘ // "bWi=0x1399", // ᎙ // "GWi=0x139A", // ᎚ // "fWi=0x139B", // ᎛ // "pWi=0x139C", // ᎜ // "Xe=0x13A0", // Ꭰ // "Xu=0x13A1", // Ꭱ // "Xi=0x13A2", // Ꭲ // "Xa=0x13A3", // Ꭳ // "XE=0x13A4", // Ꭴ // "X=0x13A5", // Ꭵ // "Xo=0x13A6", // Ꭶ // "mWE=0x13A8", // Ꭸ // "bWE=0x13A9", // Ꭹ // "GWE=0x13AA", // Ꭺ // "fWE=0x13AB", // Ꭻ // "pWE=0x13AC", // Ꭼ // "`ge=0x13B0", // Ꮀ // "`gu=0x13B1", // Ꮁ // "`gi=0x13B2", // Ꮂ // "`ga=0x13B3", // Ꮃ // "`gE=0x13B4", // Ꮄ // "`g=0x13B5", // Ꮅ // "`go=0x13B6", // Ꮆ // "mW=0x13B8", // Ꮈ // "bW=0x13B9", // Ꮉ // "GW=0x13BA", // Ꮊ // "fW=0x13BB", // Ꮋ // "pW=0x13BC", // Ꮌ // "`le=0x13C0", // Ꮐ // "`lu=0x13C1", // Ꮑ // "`li=0x13C2", // Ꮒ // "`la=0x13C3", // Ꮓ // "`lE=0x13C4", // Ꮔ // "`l=0x13C5", // Ꮕ // "`lo=0x13C6", // Ꮖ // "`me=0x13C8", // Ꮘ // "`mu=0x13C9", // Ꮙ // "`mi=0x13CA", // Ꮚ // "`ma=0x13CB", // Ꮛ // "`mE=0x13CC", // Ꮜ // "`m=0x13CD", // Ꮝ // "`mo=0x13CE", // Ꮞ // "`re=0x13D0", // Ꮠ // "`ru=0x13D1", // Ꮡ // "`ri=0x13D2", // Ꮢ // "`ra=0x13D3", // Ꮣ // "`rE=0x13D4", // Ꮤ // "`r=0x13D5", // Ꮥ // "`ro=0x13D6", // Ꮦ // "`ne=0x13D8", // Ꮨ // "`nu=0x13D9", // Ꮩ // "`ni=0x13DA", // Ꮪ // "`na=0x13DB", // Ꮫ // "`nE=0x13DC", // Ꮬ // "`n=0x13DD", // Ꮭ // "`no=0x13DE", // Ꮮ ./mytool/kmap/Malayalam-Inscript.kmap0000644000175000017500000001142110024070444017643 0ustar henrichhenrich// Mal-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri //MALAYALAM letters //"X=0x0D01", // MALAYALAM SIGN CANDRABINDU "x=0x0D02", // MALAYALAM SIGN ANUSVARA "_=0x0D03", // MALAYALAM SIGN VISARGA //"=0x0D04", // MALAYALAM LETTER "D=0x0D05", // MALAYALAM LETTER A "E=0x0D06", // MALAYALAM LETTER AA "F=0x0D07", // MALAYALAM LETTER I "R=0x0D08", // MALAYALAM LETTER II "G=0x0D09", // MALAYALAM LETTER U "T=0x0D0A", // MALAYALAM LETTER UU "+=0x0D0B", // MALAYALAM LETTER VOCALIC R "&=0x0D0C", // MALAYALAM LETTER VOCALIC L //"!=0x0D0D", // MALAYALAM LETTER CANDRA E "Z=0x0D0E", // MALAYALAM LETTER SHORT E "S=0x0D0F", // MALAYALAM LETTER E "W=0x0D10", // MALAYALAM LETTER AI //"|=0x0D11", // MALAYALAM LETTER CANDRA O "~=0x0D12", // MALAYALAM LETTER SHORT O "A=0x0D13", // MALAYALAM LETTER O "Q=0x0D14", // MALAYALAM LETTER AU "k=0x0D15", // MALAYALAM LETTER KA "K=0x0D16", // MALAYALAM LETTER KHA "i=0x0D17", // MALAYALAM LETTER GA "I=0x0D18", // MALAYALAM LETTER GHA "U=0x0D19", // MALAYALAM LETTER NGA ";=0x0D1A", // MALAYALAM LETTER CA ":=0x0D1B", // MALAYALAM LETTER CHA "p=0x0D1C", // MALAYALAM LETTER JA "P=0x0D1D", // MALAYALAM LETTER JHA "}=0x0D1E", // MALAYALAM LETTER NYA "'=0x0D1F", // MALAYALAM LETTER TTA "\"=0x0D20", // MALAYALAM LETTER TTHA "[=0x0D21", // MALAYALAM LETTER DDA "{=0x0D22", // MALAYALAM LETTER DDHA "C=0x0D23", // MALAYALAM LETTER NNA "l=0x0D24", // MALAYALAM LETTER TA "L=0x0D25", // MALAYALAM LETTER THA "o=0x0D26", // MALAYALAM LETTER DA "O=0x0D27", // MALAYALAM LETTER DHA "v=0x0D28", // MALAYALAM LETTER NA //"V=0x0D29", // MALAYALAM LETTER NNNA "h=0x0D2A", // MALAYALAM LETTER PA "H=0x0D2B", // MALAYALAM LETTER PHA "y=0x0D2C", // MALAYALAM LETTER BA "Y=0x0D2D", // MALAYALAM LETTER BHA "c=0x0D2E", // MALAYALAM LETTER MA "/=0x0D2F", // MALAYALAM LETTER YA "j=0x0D30", // MALAYALAM LETTER RA "J=0x0D31", // MALAYALAM LETTER RRA "n=0x0D32", // MALAYALAM LETTER LA "N=0x0D33", // MALAYALAM LETTER LLA "B=0x0D34", // MALAYALAM LETTER LLLA "b=0x0D35", // MALAYALAM LETTER VA "M=0x0D36", // MALAYALAM LETTER SHA "<=0x0D37", // MALAYALAM LETTER SSA "m=0x0D38", // MALAYALAM LETTER SA "u=0x0D39", // MALAYALAM LETTER HA //"=0x0D3A", // MALAYALAM LETTER //"=0x0D3B", // MALAYALAM LETTER //"]=0x0D3C", // MALAYALAM SIGN NUKTA //"#=0x0D3D, // MALAYALAM SIGN AVAGRAHA "e=0x0D3E", // MALAYALAM VOWEL SIGN AA "f=0x0D3F", // MALAYALAM VOWEL SIGN I "r=0x0D40", // MALAYALAM VOWEL SIGN II "g=0x0D41", // MALAYALAM VOWEL SIGN U "t=0x0D42", // MALAYALAM VOWEL SIGN UU "0x3d=0x0D43", // MALAYALAM VOWEL SIGN VOCALIC R //"$=0x0D44", // MALAYALAM VOWEL SIGN VOCALIC RR //"@=0x0D45", // MALAYALAM VOWEL SIGN CANDRA E "z=0x0D46", // MALAYALAM VOWEL SIGN SHORT E "s=0x0D47", // MALAYALAM VOWEL SIGN E "w=0x0D48", // MALAYALAM VOWEL SIGN AI //"\ \=0x0D49", // MALAYALAM VOWEL SIGN CANDRA O "`=0x0D4A", // MALAYALAM VOWEL SIGN SHART O "a=0x0D4B", // MALAYALAM VOWEL SIGN O "q=0x0D4C", // MALAYALAM VOWEL SIGN OU "d=0x0D4D", // MALAYALAM SIGN VIRMA //"=0x0D4E", // MALAYALAM LETTER //"=0x0D4F", // MALAYALAM LETTER //"%=0x0D50", // MALAYALAM OM //"=0x0D51", // MALAYALAM STRESS SIGN UDATTA //"=0x0D52", // MALAYALAM STRESS SIGN ANUDATTA //"=0x0D53", // MALAYALAM GRAVE ACCENT //"=0x0D54", // MALAYALAM ACUTE ACCENT //"=0x0D55", // MALAYALAM LETTER //"=0x0D56", // MALAYALAM LETTER //"=0x0D57", // MALAYALAM LETTER //"k]=0x0D58", // MALAYALAM LETTER QA //"K]=0x0D59", // MALAYALAM LETTER KHHA //"i]=0x0D5A", // MALAYALAM LETTER GHHA //"p]=0x0D5B", // MALAYALAM LETTER ZA //"[]=0x0D5C", // MALAYALAM LETTER DDDHA //"{]=0x0D5D", // MALAYALAM LETTER RHA //"H]=0x0D5E", // MALAYALAM LETTER FA //"?=0x0D5F", // MALAYALAM LETTER YYA "^=0x0D60", // MALAYALAM LETTER VOCALIC RR "*=0x0D61", // MALAYALAM LETTER VOCALIC LL //"(=0x0D62", // MALAYALAM VOWEL SIGN VOCALIC L //")=0x0D63", // MALAYALAM VOWEL SIGN VOCALIC LL //">=0x0D64", // MALAYALAM DANDA //">>=0x0D65", // MALAYALAM DOUBLE DANDA "0x30=0x0D66", // MALAYALAM DIGIT ZERO "0x31=0x0D67", // MALAYALAM DIGIT ONE "0x32=0x0D68", // MALAYALAM DIGIT TWO "0x33=0x0D69", // MALAYALAM DIGIT THREE "0x34=0x0D6A", // MALAYALAM DIGIT FOUR "0x35=0x0D6B", // MALAYALAM DIGIT FIVE "0x36=0x0D6C", // MALAYALAM DIGIT SIX "0x37=0x0D6D", // MALAYALAM DIGIT SEVEN "0x38=0x0D6E", // MALAYALAM DIGIT EIGHT "0x39=0x0D6F", // MALAYALAM DIGIT NINE ".=0x0D70", // MALAYALAM ABBREVIATION SIGN //"=0x0D71", // MALAYALAM LETTER //"=0x0D72", // MALAYALAM LETTER //"=0x0D73", // MALAYALAM LETTER //"=0x0D74", // MALAYALAM LETTER //"=0x0D75", // MALAYALAM LETTER //"=0x0D76", // MALAYALAM LETTER //"=0x0D77", // MALAYALAM LETTER //"=0x0D78", // MALAYALAM LETTER //"=0x0D79", // MALAYALAM LETTER //"=0x0D7A", // MALAYALAM LETTER //"=0x0D7B", // MALAYALAM LETTER //"=0x0D7C", // MALAYALAM LETTER //"=0x0D7D", // MALAYALAM LETTER //"=0x0D7E", // MALAYALAM LETTER //"=0x0D7F", // MALAYALAM LETTER ./mytool/kmap/Romanian.kmap0000644000175000017500000000064207572774166015755 0ustar henrichhenrich// Romanian.kmap for the Unicode editor Yudit // 1 Sep. 2002 Horia Dumitrescu "S'=0x015E", // S with cedilla "T'=0x0162", // T with cedilla "s'=0x015F", // s with cedilla "t'=0x0163", // t with cedilla "A^=0x00C2", // A with circumflex "a^=0x00E2", // a with circumflex "I^=0x00CE", // I with circumflex "i^=0x00EE", // i with circumflex "A<=0x0102", // A with breve "a<=0x0103", // a with breve ./mytool/kmap/Bengali-Inscript.kmap0000644000175000017500000001105107737457032017330 0ustar henrichhenrich// Ben-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri //BENGALI letters "X=0x0981", // BENGALI SIGN CANDRABINDU "x=0x0982", // BENGALI SIGN ANUSVARA "_=0x0983", // BENGALI SIGN VISARGA //"=0x0984", // BENGALI LETTER "D=0x0985", // BENGALI LETTER A "E=0x0986", // BENGALI LETTER AA "F=0x0987", // BENGALI LETTER I "R=0x0988", // BENGALI LETTER II "G=0x0989", // BENGALI LETTER U "T=0x098A", // BENGALI LETTER UU "+=0x098B", // BENGALI LETTER VOCALIC R "&=0x098C", // BENGALI LETTER VOCALIC L //"!=0x098D", // BENGALI LETTER CANDRA E //"Z=0x098E", // BENGALI LETTER SHORT E "S=0x098F", // BENGALI LETTER E "W=0x0990", // BENGALI LETTER AI //"|=0x0991", // BENGALI LETTER CANDRA O //"~=0x0992", // BENGALI LETTER SHORT O "A=0x0993", // BENGALI LETTER O "Q=0x0994", // BENGALI LETTER AU "k=0x0995", // BENGALI LETTER KA "K=0x0996", // BENGALI LETTER KHA "i=0x0997", // BENGALI LETTER GA "I=0x0998", // BENGALI LETTER GHA "U=0x0999", // BENGALI LETTER NGA ";=0x099A", // BENGALI LETTER CA ":=0x099B", // BENGALI LETTER CHA "p=0x099C", // BENGALI LETTER JA "P=0x099D", // BENGALI LETTER JHA "}=0x099E", // BENGALI LETTER NYA "'=0x099F", // BENGALI LETTER TTA "\"=0x09A0", // BENGALI LETTER TTHA "[=0x09A1", // BENGALI LETTER DDA "{=0x09A2", // BENGALI LETTER DDHA "C=0x09A3", // BENGALI LETTER NNA "l=0x09A4", // BENGALI LETTER TA "L=0x09A5", // BENGALI LETTER THA "o=0x09A6", // BENGALI LETTER DA "O=0x09A7", // BENGALI LETTER DHA "v=0x09A8", // BENGALI LETTER NA //"V=0x09A9", // BENGALI LETTER NNNA "h=0x09AA", // BENGALI LETTER PA "H=0x09AB", // BENGALI LETTER PHA "y=0x09AC", // BENGALI LETTER BA "Y=0x09AD", // BENGALI LETTER BHA "c=0x09AE", // BENGALI LETTER MA "/=0x09AF", // BENGALI LETTER YA "j=0x09B0", // BENGALI LETTER RA //"J=0x09B1", // BENGALI LETTER RRA "n=0x09B2", // BENGALI LETTER LA //"N=0x09B3", // BENGALI LETTER LLA //"B=0x09B4", // BENGALI LETTER LLLA //"b=0x09B5", // BENGALI LETTER VA "M=0x09B6", // BENGALI LETTER SHA "<=0x09B7", // BENGALI LETTER SSA "m=0x09B8", // BENGALI LETTER SA "u=0x09B9", // BENGALI LETTER HA //"=0x09BA", // BENGALI LETTER //"=0x09BB", // BENGALI LETTER "]=0x09BC", // BENGALI SIGN NUKTA //"#=0x09BD, // BENGALI SIGN AVAGRAHA "e=0x09BE", // BENGALI VOWEL SIGN AA "f=0x09BF", // BENGALI VOWEL SIGN I "r=0x09C0", // BENGALI VOWEL SIGN II "g=0x09C1", // BENGALI VOWEL SIGN U "t=0x09C2", // BENGALI VOWEL SIGN UU "\==0x09C3", // BENGALI VOWEL SIGN VOCALIC R "$=0x09C4", // BENGALI VOWEL SIGN VOCALIC RR //"@=0x09C5", // BENGALI VOWEL SIGN CANDRA E //"z=0x09C6", // BENGALI VOWEL SIGN SHORT E "s=0x09C7", // BENGALI VOWEL SIGN E "w=0x09C8", // BENGALI VOWEL SIGN AI //"\ \=0x09C9", // BENGALI VOWEL SIGN CANDRA O //"`=0x09CA", // BENGALI VOWEL SIGN SHART O "a=0x09CB", // BENGALI VOWEL SIGN O "q=0x09CC", // BENGALI VOWEL SIGN OU "d=0x09CD", // BENGALI SIGN VIRMA //"=0x09CE", // BENGALI LETTER //"=0x09CF", // BENGALI LETTER //"%=0x09D0", // BENGALI OM //"=0x09D1", // BENGALI STRESS SIGN UDATTA //"=0x09D2", // BENGALI STRESS SIGN ANUDATTA //"=0x09D3", // BENGALI GRAVE ACCENT //"=0x09D4", // BENGALI ACUTE ACCENT //"=0x09D5", // BENGALI LETTER //"=0x09D6", // BENGALI LETTER //"=0x09D7", // BENGALI AU LENGTH MARK //"k]=0x09D8", // BENGALI LETTER QA //"K]=0x09D9", // BENGALI LETTER KHHA //"i]=0x09DA", // BENGALI LETTER GHHA //"p]=0x09DB", // BENGALI LETTER ZA //"[]=0x09DC", // BENGALI LETTER RRA //"{]=0x09DD", // BENGALI LETTER RHA //"H]=0x09DE", // BENGALI LETTER FA "?=0x09DF", // BENGALI LETTER YYA "^=0x09E0", // BENGALI LETTER VOCALIC RR "*=0x09E1", // BENGALI LETTER VOCALIC LL "(=0x09E2", // BENGALI VOWEL SIGN VOCALIC L ")=0x09E3", // BENGALI VOWEL SIGN VOCALIC LL //">=0x09E4", // BENGALI DANDA //">>=0x09E5", // BENGALI DOUBLE DANDA "0x30=0x09E6", // BENGALI DIGIT ZERO "0x31=0x09E7", // BENGALI DIGIT ONE "0x32=0x09E8", // BENGALI DIGIT TWO "0x33=0x09E9", // BENGALI DIGIT THREE "0x34=0x09EA", // BENGALI DIGIT FOUR "0x35=0x09EB", // BENGALI DIGIT FIVE "0x36=0x09EC", // BENGALI DIGIT SIX "0x37=0x09ED", // BENGALI DIGIT SEVEN "0x38=0x09EE", // BENGALI DIGIT EIGHT "0x39=0x09EF", // BENGALI DIGIT NINE ".=0x09F0", // BENGALI LETTER RA WITH MIDDLE DIAGONAL //"=0x09F1", // BENGALI LETTER RA WITH LOWER DIAGONAL //"=0x09F2", // BENGALI RUPEE MARK //"=0x09F3", // BENGALI RUPEE SIGN //"=0x09F4", // BENGALI CURRENCY NUMERATOR ONE //"=0x09F5", // BENGALI CURRENCY NUMERATOR TWO //"=0x09F6", // BENGALI CURRENCY NUMERATOR THREE //"=0x09F7", // BENGALI CURRENCY NUMERATOR FOUR //"=0x09F8", // BENGALI CURRENCY NUMERATOR ONE LESS THAN DENMONITOR //"=0x09F9", // BENGALI CURRENCY DENOMINOTOR SIXTEEN //"=0x09FA", // BENGALI ISSHAR ./mytool/kmap/Tamil-Inscript.kmap0000644000175000017500000001046707532460064017037 0ustar henrichhenrich// Tam-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri //TAMIL letters //"X=0x0B81", // TAMIL SIGN CANDRABINDU "x=0x0B82", // TAMIL SIGN ANUSVARA "_=0x0B83", // TAMIL SIGN VISARGA //"=0x0B84", // TAMIL LETTER "D=0x0B85", // TAMIL LETTER A "E=0x0B86", // TAMIL LETTER AA "F=0x0B87", // TAMIL LETTER I "R=0x0B88", // TAMIL LETTER II "G=0x0B89", // TAMIL LETTER U "T=0x0B8A", // TAMIL LETTER UU //"+=0x0B8B", // TAMIL LETTER VOCALIC R //"&=0x0B8C", // TAMIL LETTER VOCALIC L //"!=0x0B8D", // TAMIL LETTER CANDRA E "Z=0x0B8E", // TAMIL LETTER SHORT E "S=0x0B8F", // TAMIL LETTER E "W=0x0B90", // TAMIL LETTER AI //"|=0x0B91", // TAMIL LETTER CANDRA O "~=0x0B92", // TAMIL LETTER SHORT O "A=0x0B93", // TAMIL LETTER O "Q=0x0B94", // TAMIL LETTER AU "k=0x0B95", // TAMIL LETTER KA //"K=0x0B96", // TAMIL LETTER KHA //"i=0x0B97", // TAMIL LETTER GA //"I=0x0B98", // TAMIL LETTER GHA "U=0x0B99", // TAMIL LETTER NGA ";=0x0B9A", // TAMIL LETTER CA //":=0x0B9B", // TAMIL LETTER CHA //"p=0x0B9C", // TAMIL LETTER JA //"P=0x0B9D", // TAMIL LETTER JHA "}=0x0B9E", // TAMIL LETTER NYA "'=0x0B9F", // TAMIL LETTER TTA //"\"=0x0BA0", // TAMIL LETTER TTHA //"[=0x0BA1", // TAMIL LETTER DDA //"{=0x0BA2", // TAMIL LETTER DDHA "C=0x0BA3", // TAMIL LETTER NNA "l=0x0BA4", // TAMIL LETTER TA //"L=0x0BA5", // TAMIL LETTER THA //"o=0x0BA6", // TAMIL LETTER DA //"O=0x0BA7", // TAMIL LETTER DHA "v=0x0BA8", // TAMIL LETTER NA "V=0x0BA9", // TAMIL LETTER NNNA "h=0x0BAA", // TAMIL LETTER PA //"H=0x0BAB", // TAMIL LETTER PHA //"y=0x0BAC", // TAMIL LETTER BA //"Y=0x0BAD", // TAMIL LETTER BHA "c=0x0BAE", // TAMIL LETTER MA "/=0x0BAF", // TAMIL LETTER YA "j=0x0BB0", // TAMIL LETTER RA "J=0x0BB1", // TAMIL LETTER RRA "n=0x0BB2", // TAMIL LETTER LA "N=0x0BB3", // TAMIL LETTER LLA "B=0x0BB4", // TAMIL LETTER LLLA "b=0x0BB5", // TAMIL LETTER VA //"M=0x0BB6", // TAMIL LETTER SHA "<=0x0BB7", // TAMIL LETTER SSA "m=0x0BB8", // TAMIL LETTER SA "u=0x0BB9", // TAMIL LETTER HA //"=0x0BBA", // TAMIL LETTER //"=0x0BBB", // TAMIL LETTER //"]=0x0BBC", // TAMIL SIGN NUKTA //"#=0x0BBD, // TAMIL SIGN AVAGRAHA "e=0x0BBE", // TAMIL VOWEL SIGN AA "f=0x0BBF", // TAMIL VOWEL SIGN I "r=0x0BC0", // TAMIL VOWEL SIGN II "g=0x0BC1", // TAMIL VOWEL SIGN U "t=0x0BC2", // TAMIL VOWEL SIGN UU //"\==0x0BC3", // TAMIL VOWEL SIGN VOCALIC R //"$=0x0BC4", // TAMIL VOWEL SIGN VOCALIC RR //"@=0x0BC5", // TAMIL VOWEL SIGN CANDRA E "z=0x0BC6", // TAMIL VOWEL SIGN SHORT E "s=0x0BC7", // TAMIL VOWEL SIGN E "w=0x0BC8", // TAMIL VOWEL SIGN AI //"\ \=0x0BC9", // TAMIL VOWEL SIGN CANDRA O "`=0x0BCA", // TAMIL VOWEL SIGN SHART O "a=0x0BCB", // TAMIL VOWEL SIGN O "q=0x0BCC", // TAMIL VOWEL SIGN OU "d=0x0BCD", // TAMIL SIGN VIRMA //"=0x0BCE", // TAMIL LETTER //"=0x0BCF", // TAMIL LETTER //"%=0x0B50", // TAMIL OM //"=0x0BD1", // TAMIL STRESS SIGN UDATTA //"=0x0BD2", // TAMIL STRESS SIGN ANUDATTA //"=0x0BD3", // TAMIL GRAVE ACCENT //"=0x0BD4", // TAMIL ACUTE ACCENT //"=0x0BD5", // TAMIL LETTER //"=0x0BD6", // TAMIL LETTER //"=0x0BD7", // TAMIL LETTER //"k]=0x0BD8", // TAMIL LETTER QA //"K]=0x0BD9", // TAMIL LETTER KHHA //"i]=0x0BDA", // TAMIL LETTER GHHA //"p]=0x0BDB", // TAMIL LETTER ZA //"[]=0x0BDC", // TAMIL LETTER DDDHA //"{]=0x0BDD", // TAMIL LETTER RHA //"H]=0x0BDE", // TAMIL LETTER FA //"?=0x0BDF", // TAMIL LETTER YYA //"^=0x0B60", // TAMIL LETTER VOCALIC RR //"*=0x0BE1", // TAMIL LETTER VOCALIC LL //"(=0x0BE2", // TAMIL VOWEL SIGN VOCALIC L //")=0x0BE3", // TAMIL VOWEL SIGN VOCALIC LL //">=0x0BE4", // TAMIL DANDA //">>=0x0BE5", // TAMIL DOUBLE DANDA "0x30=0x0BE6", // TAMIL DIGIT ZERO "0x31=0x0BE7", // TAMIL DIGIT ONE "0x32=0x0BE8", // TAMIL DIGIT TWO "0x33=0x0BE9", // TAMIL DIGIT THREE "0x34=0x0BEA", // TAMIL DIGIT FOUR "0x35=0x0BEB", // TAMIL DIGIT FIVE "0x36=0x0BEC", // TAMIL DIGIT SIX "0x37=0x0BED", // TAMIL DIGIT SEVEN "0x38=0x0BEE", // TAMIL DIGIT EIGHT "0x39=0x0BEF", // TAMIL DIGIT NINE ".=0x0BF0", // TAMIL ABBREVIATION SIGN //"=0x0BF1", // TAMIL LETTER //"=0x0BF2", // TAMIL LETTER //"=0x0BF3", // TAMIL LETTER //"=0x0BF4", // TAMIL LETTER //"=0x0BF5", // TAMIL LETTER //"=0x0BF6", // TAMIL LETTER //"=0x0BF7", // TAMIL LETTER //"=0x0BF8", // TAMIL LETTER //"=0x0BF9", // TAMIL LETTER //"=0x0BFA", // TAMIL LETTER //"=0x0BFB", // TAMIL LETTER //"=0x0BFC", // TAMIL LETTER //"=0x0BFD", // TAMIL LETTER //"=0x0BFE", // TAMIL LETTER //"=0x0BFF", // TAMIL LETTER ./mytool/kmap/SAMPA.kmap0000644000175000017500000001316507606426524015044 0ustar henrichhenrich// SAMPA.kmap // Gaspar Sinai // Tokyo 2002-12-06 // (Mikulás napja) // Typed in by hand from: // http://www.phon.ucl.ac.uk/home/sampa/home.htm // // Version 1.1: g,v added and ligatures broken down. // // SAMPA (Speech Assessment Methods Phonetic Alphabet) // is a machine-readable phonetic alphabet. It was originally // developed under the ESPRIT project 1541, SAM (Speech Assessment Methods) // in 1987-89 by an international group of phoneticians, and was applied // in the first instance to the European Communities languages // Danish, Dutch, English, French, German, and Italian (by 1989); // later to Norwegian and Swedish (by 1992); and subsequently to Greek, // Portuguese, and Spanish (1993). Under the BABEL project, // it has now been extended to Bulgarian, Estonian, Hungarian, Polish, // and Romanian (1996). // //------------------------------------------------------------------------- // SAMPA // http://www.phon.ucl.ac.uk/home/sampa/home.htm //------------------------------------------------------------------------- // regex: // :'a,'es/\(^.\)^I[01234567899]*[^0]*\(0[ABCDEF0123456789]*\)\, [01234567899]*^I\(.*\)/"\1 = 0x\2", \/\/\3 // // Vowels // "A = 0x0251", // ɑ open back unrounded, Cardinal 5, Eng. start "{ = 0x00E6", // æ - near-open front unrounded, Eng. trap "0x36 = 0x0250", // ɐ open schwa, Ger. besser "Q = 0x0252", // ɒ open back rounded, Eng. lot "E = 0x025B", // ɛ open-mid front unrounded, C3, Fr. même "@ =0x0259", // ə schwa, Eng. banana "0x33 = 0x025C", // ɜ long mid central, Eng. nurse "I = 0x026A", // ɪ lax close front unrounded, Eng. kit "O = 0x0254", // ɔ open-mid back rounded, Eng. thought "0x32 = 0x00F8", // ø close-mid front rounded, Fr. deux "0x39 = 0x0153", // œ open-mid front rounded, Fr. neuf "& = 0x0276", // ɶ open front rounded "U = 0x028A", // ʊ lax close back rounded, Eng. foot "} = 0x0289", // ʉ close central rounded, Swedish sju "V = 0x028C", // ʌ open-mid back unrounded, Eng. strut "Y = 0x028F", // ʏ lax [y], Ger. hübsch // // Consonants // "B = 0x03B2", // β voiced bilabial fricative, Sp. cabo "C = 0x00E7", // ç voiceless palatal fricative, Ger. ich "D = 0x00F0", // ð voiced dental fricative, Eng. then "G = 0x0263", // ɣ voiced velar fricative, Sp. fuego "L = 0x028E", // ʎ palatal lateral, It. famiglia "J = 0x0272", // ɲ palatal nasal, Sp. año "N = 0x014B", // ŋ velar nasal, Eng. thing "R = 0x0281", // ʁ vd. uvular fric. or trill, Fr. roi "S = 0x0283", // ʃ voiceless palatoalveolar fricative, Eng. ship "T = 0x03B8", // θ voiceless dental fricative, Eng. thin "H = 0x0265", // ɥ labial-palatal semivowel, Fr. huit "Z = 0x0292", // ʒ vd. palatoalveolar fric., Eng. measure "? = 0x0294", // ʔ glottal stop, Ger. Verein, also Danish stød // // Length, stress and tone marks // ": = 0x02D0", // ː length mark "\" = 0x02C8", // ˈ primary stress "% = 0x02CC", // ˌ secondary stress // These SAMPA tone mark recommendations were based on the IPA // as it was up to 1989-90. Since then, however, the IPA has // changed its symbols for falling and rising tones. These SAMPA // tone marks may now be considered obsolete, having in practice // been superseded by the SAMPROSA proposals: // http://www.phon.ucl.ac.uk/home/sampa/samprosa.htm // "` = 0x02E5 0x02E9", // ˥˩ falling tone "' = 0x02E9 0x02E5", // ˩˥ rising tone // I need to type Hungarian. This is from: // http://www.phon.ucl.ac.uk/home/wells/ipa-unicode.htm "aa = 0x0252", // ɒ Hungarian a "d' = 0x025F", // ɟ Hungarian gy "t' = 0x0063", // c Hungarian ty // The latest IPA does not like ligature representation // I just put a dot between words to show that "t.S = 0x02A7", // ʧ Hungarian cs "d.z = 0x02A3", // ʣ Hungarian dz "d.Z = 0x02A4", // ʤ Hungarian dz "t.s = 0x02A6", // ʦ Hungarian c "dZ = 0x0064 0x0361 0x0292", // d͡ʒ Hungarian dzs "tS = 0x0074 0x0361 0x0283", // t͡ʃ Hungarian cs "dz = 0x0064 0x0361 0x007A", // d͡z Hungarian dz "ts = 0x0074 0x0361 0x0073", // t͡s Hungarian c "P = 0x028B", // ʋ "g = 0x0261", // ɡ // // Diacritics "0x3D n = 0x0329", // =n inferior stroke "O ~ = 0x303", // superior tilde //------------------------------------------------------------------------- // X-SAMPA //------------------------------------------------------------------------- // http://www.phon.ucl.ac.uk/home/sampa/x-sampa.htm // // regex: // :'a,'es/^\([^^I]*\)[^I ]*\([^^I ]*\)[^0]*\([0123456789ABCDEF]*\).*/"\2 = 0x\3",\/\/ \1/ // "t` = 0x0288", // ʈ retroflex plosive, voiceless "d` = 0x0256", // ɖ retroflex plosive, voiced "F = 0x0271", // ɱ labiodental nasal "n` = 0x0273", // ɳ retroflex nasal "J = 0x0272", // ɲ palatal nasal "N = 0x014B", // ŋ velar nasal "N\\ = 0x0274", // ɴ uvular nasal "B\\ = 0x0299", // ʙ bilabial trill "R\\ = 0x0280", // ʀ uvular trill "0x34 = 0x027E", // ɾ alveolar tap "r` = 0x027D", // ɽ retroflex flap "p\\ = 0x0278", // ɸ bilabial fricative, voiceless "B = 0x03B2", // β bilabial fricative, voiced "T = 0x03B8", // θ dental fricative, voiceless "D = 0x00F0", // ð dental fricative, voiced "S = 0x0283", // ʃ postalveolar fricative, voiceless "Z = 0x0292", // ʒ postalveolar fricative, voiced "s` = 0x0282", // ʂ retroflex fricative, voiceless "z` = 0x0290", // ʐ retroflex fricative, voiced "C = 0x00E7", // ç palatal fricative, voiceless "j\\ = 0x029D", // ʝ palatal fricative, voiced "G = 0x0263", // ɣ velar fricative, voiced "X = 0x03C7", // χ uvular fricative, voiceless "R = 0x0281", // ʁ uvular fricative, voiced "X\\ = 0x0127", // ħ pharyngeal fricative, voiceless "?\\ = 0x0295", // ʕ pharyngeal fricative, voiced "h\\ = 0x0266", // ɦ glottal fricative, voiced // ./mytool/kmap/Russian-Translit-Nordic.kmap0000644000175000017500000001070507615624716020641 0ustar henrichhenrich// Input table for RuSlav (University of Helsinki) keyboard // http://www.slav.helsinki.fi/atk/kyrilliikka/ruslav/ruslav.html#Windows%20NT%204.0/Windows%202000 // 2003-01-26 Sakari Aaltonen // This layout probably only works for Finnish/Swedish keyboards - these // have some extra keys for Scandinavian characters // Original notes for Russian-YAVERTY follow: // Composed by Eugene Crosser out of this one: // Cyrillic input table following the 1995 edition of international // standard ISO 9 Transliteration of Cyrillic characters: // Created with Emacs for Yudit and decorated with Yudit // © 1998-04-18 Roman Czyborra@cs.tu-berlin.de // Additions and improvements welcome // modified for ЯВЕРТЫ layout (with some enhancements) from the // above by Radovan Garabík 2001-08-08 // 0. Quotation marks and special symbols popular with Cyrillic "<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "\"\"=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "#=0x2116", //= NUMERO SIGN "_=0x2212", //= MINUS SIGN // 1. General table for Slavic Cyrillic languages // The neat ISO 9 transliterations are worth remembering! // First the full line of Capital letters for clarity: "A=0x0410", // А = CYRILLIC CAPITAL LETTER A "B=0x0411", // Б = CYRILLIC CAPITAL LETTER BE "V=0x0412", // В = CYRILLIC CAPITAL LETTER VE "G=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "D=0x0414", // Д = CYRILLIC CAPITAL LETTER DE "E=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "X=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "Z=0x0417", // З = CYRILLIC CAPITAL LETTER ZE "I=0x0418", // И = CYRILLIC CAPITAL LETTER I "J=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "K=0x041A", // К = CYRILLIC CAPITAL LETTER KA "L=0x041B", // Л = CYRILLIC CAPITAL LETTER EL "M=0x041C", // М = CYRILLIC CAPITAL LETTER EM "N=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "O=0x041E", // О = CYRILLIC CAPITAL LETTER O "P=0x041F", // П = CYRILLIC CAPITAL LETTER PE "R=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "S=0x0421", // С = CYRILLIC CAPITAL LETTER ES "T=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "U=0x0423", // У = CYRILLIC CAPITAL LETTER U "F=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "H=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "C=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "W=0x0428", // Ш = CYRILLIC CAPITAL LETTER SHA "Q=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCHA "&=0x042A", // Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "Y=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "`=0x042D", // Э = CYRILLIC CAPITAL LETTER E "^=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "=0x042F", // Я = CYRILLIC CAPITAL LETTER YA // Then the same thing in lower case: "a=0x0430", // а = CYRILLIC SMALL LETTER A "b=0x0431", // б = CYRILLIC SMALL LETTER BE "v=0x0432", // в = CYRILLIC SMALL LETTER VE "g=0x0433", // г = CYRILLIC SMALL LETTER GHE "d=0x0434", // д = CYRILLIC SMALL LETTER DE "e=0x0435", // е = CYRILLIC SMALL LETTER IE "=0x0451", // ё = CYRILLIC SMALL LETTER IO "x=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "z=0x0437", // з = CYRILLIC SMALL LETTER ZE "i=0x0438", // и = CYRILLIC SMALL LETTER I "j=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "k=0x043A", // к = CYRILLIC SMALL LETTER KA "l=0x043B", // л = CYRILLIC SMALL LETTER EL "m=0x043C", // м = CYRILLIC SMALL LETTER EM "n=0x043D", // н = CYRILLIC SMALL LETTER EN "o=0x043E", // о = CYRILLIC SMALL LETTER O "p=0x043F", // п = CYRILLIC SMALL LETTER PE "r=0x0440", // р = CYRILLIC SMALL LETTER ER "s=0x0441", // с = CYRILLIC SMALL LETTER ES "t=0x0442", // т = CYRILLIC SMALL LETTER TE "u=0x0443", // у = CYRILLIC SMALL LETTER U "f=0x0444", // ф = CYRILLIC SMALL LETTER EF "h=0x0445", // х = CYRILLIC SMALL LETTER HA "c=0x0446", // ц = CYRILLIC SMALL LETTER TSE " =0x0447", // ч = CYRILLIC SMALL LETTER CHE "w=0x0448", // ш = CYRILLIC SMALL LETTER SHA "q=0x0449", // щ = CYRILLIC SMALL LETTER SCHCHA "=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "y=0x044B", // ы = CYRILLIC SMALL LETTER YERU "=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN " =0x044D", // э = CYRILLIC SMALL LETTER E "=0x044E", // ю = CYRILLIC SMALL LETTER YU "=0x044F", // я = CYRILLIC SMALL LETTER YA ./mytool/kmap/Slavic.kmap0000644000175000017500000002056110236414624015411 0ustar henrichhenrich// Old Slavic keyboard map file for Yudit // 24.05.2003. Strahinya Radich (mr99164@alas.matf.bg.ac.yu) // Additions and improvements welcome // Sources: // 1. Zvonimir Kulundžić: „Knjiga o knjizi - historija pisama, materijala i // instrumenata za pisanje“, Školska knjiga, Zagreb, 1951. // 2. Петар Ђорђић: „Старословенски језик“, Матица српска, Београд, 1975. // 3. The Unicode Character Database, // http://www.unicode.org/Public/UNIDATA/UnicodeData.txt "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "--=0x2013", // – = EN DASH "---=0x2014", // — = EM DASH "++=0x0482", // = CYRILLIC THOUSANDS SIGN "^~=0x0483", // = COMBINING CYRILLIC TITLO "^)=0x0484", // = COMBINING CYRILLIC PALATALIZATION "^`=0x0300", // = COMBINING GRAVE ACCENT "^^=0x0311", // = COMBINING INVERTED BREVE "^(=0x0488", // = COMBINING CYRILLIC HUNDRED THOUSANDS SIGN "^,=0x0489", // = COMBINING CYRILLIC MILLIONS SIGN "^|=0x033E", // = COMBINING VERTICAL TILDE // Some numbers: "^.=0x00B7", // (num. start) = MIDDLE DOT "0x31=0x0430 0x0483", // 1 "0x32=0x0432 0x0483", // 2 "0x33=0x0433 0x0483", // 3 "0x34=0x0434 0x0483", // 4 "0x35=0x0435 0x0483", // 5 "0x36=0x0455 0x0483", // 6 "0x37=0x0437 0x0483", // 7 "0x38=0x0438 0x0483", // 8 "0x39=0x0473 0x0483", // 9 "0x31 0x30=0x0457 0x0483", // 10 "0x32 0x30=0x043A 0x0483", // 20 "0x33 0x30=0x043B 0x0483", // 30 "0x34 0x30=0x043C 0x0483", // 40 "0x35 0x30=0x043D 0x0483", // 50 "0x36 0x30=0x046F 0x0483", // 60 "0x37 0x30=0x043E 0x0483", // 70 "0x38 0x30=0x043F 0x0483", // 80 "0x39 0x30=0x0447 0x0483", // 90 "0x31 0x30 0x30=0x0440 0x0483", // 100 "0x32 0x30 0x30=0x0441 0x0483", // 200 "0x33 0x30 0x30=0x0442 0x0483", // 300 "0x34 0x30 0x30=0x0443 0x0483", // 400 "0x35 0x30 0x30=0x0444 0x0483", // 500 "0x36 0x30 0x30=0x0445 0x0483", // 600 "0x37 0x30 0x30=0x0471 0x0483", // 700 "0x38 0x30 0x30=0x0461 0x0483", // 800 "0x39 0x30 0x30=0x0446 0x0483", // 900 // The Capital letters: "A =0x0410", // AZ~H = CYRILLIC CAPITAL LETTER A "B =0x0411", // BOUK~HI = CYRILLIC CAPITAL LETTER B "V =0x0412", // VE // to include ä, ĺ, ľ, ó, ô, ö, ŕ, ú, ü and capital variants // (Slovak letters and letters commonly occuring in Czech and Slovak texts) ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "A'=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "A:=0x00C4", // Ä = LATIN CAPITAL LETTER A WITH DIARESIS "C$=0x00A4", // ¤ = CURRENCY SIGN "C<=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "D<=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "E'=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "E<=0x011A", // Ě = LATIN CAPITAL LETTER E WITH CARON "I'=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "L'=0x0139", // Ĺ = LATIN CAPITAL LETTER L WITH ACUTE "L<=0x013D", // Ľ = LATIN CAPITAL LETTER L WITH CARON "N<=0x0147", // Ň = LATIN CAPITAL LETTER N WITH CARON "O'=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "O^=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "O:=0x00D6", // Ö = LATIN CAPITAL LETTER O WITH DIARESIS "R'=0x0154", // Ŕ = LATIN CAPITAL LETTER R WITH ACUTE "R<=0x0158", // Ř = LATIN CAPITAL LETTER R WITH CARON "S<=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "T<=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "U'=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "U0=0x016E", // Ů = LATIN CAPITAL LETTER U WITH RING ABOVE "U:=0x00DC", // Ü = LATIN CAPITAL LETTER U WITH DIARESIS "Y'=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "Z<=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "a'=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "a:=0x00E4", // ä = LATIN SMALL LETTER A WITH DIARESIS "c<=0x010D", // č = LATIN SMALL LETTER C WITH CARON "d<=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "e'=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "e<=0x011B", // ě = LATIN SMALL LETTER E WITH CARON "i'=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "l'=0x013A", // ĺ = LATIN SMALL LETTER L WITH ACUTE "l<=0x013E", // ľ = LATIN SMALL LETTER L WITH CARON "n<=0x0148", // ň = LATIN SMALL LETTER N WITH CARON "o'=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "o^=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "o:=0x00F6", // ö = LATIN SMALL LETTER O WITH DIARESIS "r'=0x0155", // ŕ = LATIN SMALL LETTER R WITH ACUTE "r<=0x0159", // ř = LATIN SMALL LETTER R WITH CARON "s<=0x0161", // š = LATIN SMALL LETTER S WITH CARON "t<=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "u'=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "u0=0x016F", // ů = LATIN SMALL LETTER U WITH RING ABOVE "u:=0x00FC", // ü = LATIN SMALL LETTER U WITH DIARESIS "y'=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "z<=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON ./mytool/kmap/GreekPolytonic.kmap0000644000175000017500000006123107532460064017131 0ustar henrichhenrich// The monotonic part of this kmap was made by Constantine Stathopoulos . // The polytonic part was made by 04/11-1999, Aarhus, Denmark. // It was modified and completed by A. Tsolomitis // The licence allows modifications but redistribution of modifications should // be with an other name. // Any comments can be sent to A. Tsolomitis // The keymap now conforms with the // LaTeX's-Babel Standard by A. Syropoulos // The conventions are as follows: // EURO SIGN is E$ (0x20AC), // Drachma sign is D$ (0x20AF) // RIGHT an LEFT QUOTATION MARKS (0x00BB), (0x00AB), // follow the kikbd conventions (;< abd ;>) AND << and >> // Apostrofos is corrected in order to agree with the Greek grammar rules // of Triantafilidis who requires the PSILI (or Koronis) symbol for an apostrophe. // The Greek ANO TELEIA (0x0387), follows again the kikbd conventions as well // as the Emacs conventions. So it is produced by both ;. and W // All greek accents are added so they can be produced by scholars without // having to combine them with letters (usufull for grammarians in particular) // (especially for dasia and psiln we use ' for psili (that is apostrophe) // and ;' for dasia. This is done in order to preserve the posibility // to write a plain < or >. // Ypogegrammeni is | following the character (the originally proposed i after the // character is problematic: can't write easily ai or vi) : // > dasia // an oxia or baria *always* should follow dasia // < psili // an oxia or baria *always* should follow psili // ; oxia // ` varia // ~ perispomeni // : dialytika // :; or ;: dialytika oxia // :` or `: dialytika baria // || a single ypogegrammeni // vowel followed by | gives ypogegrammeni to the vowel // -vowel gives vowel with macron // ^vowel gives vowel with braxy // -- endash // --- emdash // ;b ;p ;f ;u ;r ;k give alternative forms // && give the Greek kai symbol // #Q and #q give archaic Qoppa and qoppa // ;U is capital Theta symbol // !e and !E are lunate epsilon and Epsilon // #ST stigma // #SP sampi // #G digamma // #Q qoppa // ;# avw tovos (for numerals) // ;## katw tovos (for numerals) // All accents are supported. Even rho with < and > and Rho with < // Also :~i and :~u and macron and braxy a,i,u and their capitals. // PUNCTUATION MARKS - SYMBOLS (GREEK SPECIFIC) // "E$=0x20AC", // EURO SIGN ">>=0x00BB", // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK EISAGOGIKA/OMOIOMATIKA - DEFINITION MISSING FROM UNICODE] ";>=0x00BB", // "<<=0x00AB", // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK EISAGOGIKA - DEFINITION MISSING FROM UNICODE] ";<=0x00AB", // "Q=0x003A", // COLON [GREEK EPEXIGIMATIKA OR ANO & KATO TELEIA - DEFINITION MISSING FROM UNICODE] "q=0x037E", // GREEK QUESTION MARK (EROTIMATIKO) ";.=0x0387", // GREEK ANO TELEIA (KDE/kikbd/Xinput standard) "W=0x0387", // GREEK ANO TELEIA (Emacs standard) "'=0x1FBD", // GREEK APOSTROFOS "--=0x2013", // endash "---=0x2014", // emdash // // GREEK DIACRITICS // ":=0x00A8", // DIAERESIS [GREEK DIALYTIKA - DEFINITION MISSING FROM UNICODE] ";=0x0384", // GREEK TONOS ":;=0x0385", // GREEK DIALYTIKA Oxia ";:=0x0385", // GREEK DIALYTIKA Oxia ":`=0x1FED", // GREEK DIALYTIKA VARIA "`:=0x1FED", // GREEK DIALYTIKA VARIA "`=0x1FEF", // Greek Varia "~=0x1FC0", // Perispomeni ">`=0x1FCD", // Psili Varia "<`=0x1FDD", // Dasia Varia ">;=0x1FCE", // Psili Oxia "<;=0x1FDE", // Dasia Oxia "<~=0x1FDF", // Dasia Perispomeni ">~=0x1FCF", // Psili Perispomeni //For plain psili use apostrophe ";'=0x1FFE" // (Plain) dasia // // GREEK LETTERS // "A=0x0391", // GREEK CAPITAL LETTER ALPHA "B=0x0392", // GREEK CAPITAL LETTER BETA "G=0x0393", // GREEK CAPITAL LETTER GAMMA "D=0x0394", // GREEK CAPITAL LETTER DELTA "E=0x0395", // GREEK CAPITAL LETTER EPSILON "Z=0x0396", // GREEK CAPITAL LETTER ZETA "H=0x0397", // GREEK CAPITAL LETTER ETA "U=0x0398", // GREEK CAPITAL LETTER THETA "I=0x0399", // GREEK CAPITAL LETTER IOTA "K=0x039A", // GREEK CAPITAL LETTER KAPPA "L=0x039B", // GREEK CAPITAL LETTER LAMDA "M=0x039C", // GREEK CAPITAL LETTER MU "N=0x039D", // GREEK CAPITAL LETTER NU "J=0x039E", // GREEK CAPITAL LETTER XI "O=0x039F", // GREEK CAPITAL LETTER OMIKRON "P=0x03A0", // GREEK CAPITAL LETTER PI "R=0x03A1", // GREEK CAPITAL LETTER RHO //"W=0x03A3", // GREEK CAPITAL LETTER SIGMA [CAPITAL ANALOGUE FOR SMALL LETTER FINAL SIGMA] "S=0x03A3", // GREEK CAPITAL LETTER SIGMA "T=0x03A4", // GREEK CAPITAL LETTER TAU "Y=0x03A5", // GREEK CAPITAL LETTER UPSILON "F=0x03A6", // GREEK CAPITAL LETTER PHI "X=0x03A7", // GREEK CAPITAL LETTER CHI "C=0x03A8", // GREEK CAPITAL LETTER PSI "V=0x03A9", // GREEK CAPITAL LETTER OMEGA "a=0x03B1", // GREEK SMALL LETTER ALPHA "b=0x03B2", // GREEK SMALL LETTER BETA "g=0x03B3", // GREEK SMALL LETTER GAMMA "d=0x03B4", // GREEK SMALL LETTER DELTA "e=0x03B5", // GREEK SMALL LETTER EPSILON "z=0x03B6", // GREEK SMALL LETTER ZETA "h=0x03B7", // GREEK SMALL LETTER ETA "u=0x03B8", // GREEK SMALL LETTER THETA "i=0x03B9", // GREEK SMALL LETTER IOTA "k=0x03BA", // GREEK SMALL LETTER KAPPA "l=0x03BB", // GREEK SMALL LETTER LAMDA "m=0x03BC", // GREEK SMALL LETTER MU "n=0x03BD", // GREEK SMALL LETTER NU "j=0x03BE", // GREEK SMALL LETTER XI "o=0x03BF", // GREEK SMALL LETTER OMICRON "p=0x03C0", // GREEK SMALL LETTER PI "r=0x03C1", // GREEK SMALL LETTER RHO "w=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "s=0x03C3", // GREEK SMALL LETTER SIGMA "t=0x03C4", // GREEK SMALL LETTER TAU "y=0x03C5", // GREEK SMALL LETTER UPSILON "f=0x03C6", // GREEK SMALL LETTER PHI "x=0x03C7", // GREEK SMALL LETTER CHI "c=0x03C8", // GREEK SMALL LETTER PSI "v=0x03C9", // GREEK SMALL LETTER OMEGA // //COMBINED GREEK LETTERS WITH DIACRITICS // ";A=0x0386", // GREEK CAPITAL LETTER ALPHA WITH TONOS ";E=0x0388", // GREEK CAPITAL LETTER EPSILON WITH TONOS ";H=0x0389", // GREEK CAPITAL LETTER ETA WITH TONOS ";I=0x038A", // GREEK CAPITAL LETTER IOTA WITH TONOS ";O=0x038C", // GREEK CAPITAL LETTER OMICRON WITH TONOS ";Y=0x038E", // GREEK CAPITAL LETTER UPSILON WITH TONOS ";V=0x038F", // GREEK CAPITAL LETTER OMEGA WITH TONOS ":;i=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS ";:i=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS ":`i=0x1FD2", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND baria "`:i=0x1FD2", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND baria ":I=0x03AA", // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA ":Y=0x03AB", // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA ";a=0x03AC", // GREEK SMALL LETTER ALPHA WITH TONOS ";e=0x03AD", // GREEK SMALL LETTER EPSILON WITH TONOS ";h=0x03AE", // GREEK SMALL LETTER ETA WITH TONOS ";i=0x03AF", // GREEK SMALL LETTER IOTA WITH TONOS ":;y=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS ";:y=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS ":`y=0x1FE2", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND baria "`:y=0x1FE2", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND baria ":i=0x03CA", // GREEK SMALL LETTER IOTA WITH DIALYTIKA ":y=0x03CB", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA ";o=0x03CC", // GREEK SMALL LETTER OMICRON WITH TONOS ";y=0x03CD", // GREEK SMALL LETTER UPSILON WITH TONOS ";v=0x03CE", // GREEK SMALL LETTER OMEGA WITH TONOS // // letters with Varia: // "`A=0x1FBA", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`E=0x1FC8", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`H=0x1FCA", // GREEK CAPITAL LETTER ETA WITH VARIA "`I=0x1FDA", // GREEK CAPITAL LETTER IOTA WITH VARIA "`O=0x1FF8", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`Y=0x1FEA", // GREEK CAPITAL LETTER ALPHA WITH VARIA "`V=0x1FFA", // GREEK CAPITAL LETTER OMEGA WITH VARIA "`a=0x1F70", // GREEK SMALL LETTER ALPHA WITH VARIA "`e=0x1F72", // GREEK SMALL LETTER ALPHA WITH VARIA "`h=0x1F74", // GREEK SMALL LETTER ETA WITH VARIA "`i=0x1F76", // GREEK SMALL LETTER IOTA WITH VARIA "`o=0x1F78", // GREEK SMALL LETTER ALPHA WITH VARIA "`y=0x1F7A", // GREEK SMALL LETTER ALPHA WITH VARIA "`v=0x1F7C", // GREEK SMALL LETTER OMEGA WITH VARIA // // letters with Oxia: // ";A=0x1FBB", // GREEK CAPITAL LETTER ALPHA WITH OXIA ";E=0x1FC9", // GREEK CAPITAL LETTER EPSILON WITH OXIA ";H=0x1FCB", // GREEK CAPITAL LETTER ETA WITH OXIA ";I=0x1FDB", // GREEK CAPITAL LETTER IOTA WITH OXIA ";O=0x1FF9", // GREEK CAPITAL LETTER OMICRON WITH OXIA ";Y=0x1FEB", // GREEK CAPITAL LETTER UPSILON WITH OXIA ";V=0x1FFB", // GREEK CAPITAL LETTER OMEGA WITH OXIA ";a=0x1F71", // GREEK SMALL LETTER ALPHA WITH OXIA ";e=0x1F73", // GREEK SMALL LETTER EPSILON WITH OXIA ";h=0x1F75", // GREEK SMALL LETTER ETA WITH OXIA ";i=0x1F77", // GREEK SMALL LETTER IOTA WITH OXIA ";o=0x1F79", // GREEK SMALL LETTER OMICRON WITH OXIA ";y=0x1F7B", // GREEK SMALL LETTER UPSILON WITH OXIA ";v=0x1F7D", // GREEK SMALL LETTER OMEGA WITH OXIA // // // This area covers 0x1F00-0x1F6F // // letters with Psili: // ">A=0x1F08", // GREEK CAPITAL LETTER ALPHA WITH PSILI ">E=0x1F18", // GREEK CAPITAL LETTER EPSILON WITH PSILI ">H=0x1F28", // GREEK CAPITAL LETTER ETA WITH PSILI ">I=0x1F38", // GREEK CAPITAL LETTER IOTA WITH PSILI ">O=0x1F48", // GREEK CAPITAL LETTER OMICRON WITH PSILI ">Y=0x1F58", // GREEK CAPITAL LETTER UPSILON WITH PSILI ">V=0x1F68", // GREEK CAPITAL LETTER OMEGA WITH PSILI ">a=0x1F00", // GREEK SMALL LETTER ALPHA WITH PSILI ">e=0x1F10", // GREEK SMALL LETTER EPSILON WITH PSILI ">h=0x1F20", // GREEK SMALL LETTER ETA WITH PSILI ">i=0x1F30", // GREEK SMALL LETTER IOTA WITH PSILI ">o=0x1F40", // GREEK SMALL LETTER OMICRON WITH PSILI ">y=0x1F50", // GREEK SMALL LETTER UPSILON WITH PSILI ">v=0x1F60", // GREEK SMALL LETTER OMEGA WITH PSILI // // Letters with Dasia: // "`A=0x1F0A", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA ">`E=0x1F1A", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA ">`H=0x1F2A", // GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA ">`I=0x1F3A", // GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA ">`O=0x1F4A", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA ">`Y=0x1F5A", // GREEK CAPITAL LETTER UPSILON WITH PSILI AND VARIA ">`V=0x1F6A", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA ">`a=0x1F02", // GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA ">`e=0x1F12", // GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA ">`h=0x1F22", // GREEK SMALL LETTER ETA WITH PSILI AND VARIA ">`i=0x1F32", // GREEK SMALL LETTER IOTA WITH PSILI AND VARIA ">`o=0x1F42", // GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA ">`y=0x1F52", // GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA ">`v=0x1F62", // GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA // // Letters with Dasia and Varia: // "<`A=0x1F0B", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA "<`E=0x1F1B", // GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA "<`H=0x1F2B", // GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA "<`I=0x1F3B", // GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA "<`O=0x1F4B", // GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA "<`Y=0x1F5B", // GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA "<`V=0x1F6B", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA "<`a=0x1F03", // GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA "<`e=0x1F13", // GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA "<`h=0x1F23", // GREEK SMALL LETTER ETA WITH DASIA AND VARIA "<`i=0x1F33", // GREEK SMALL LETTER IOTA WITH DASIA AND VARIA "<`o=0x1F43", // GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA "<`y=0x1F53", // GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA "<`v=0x1F63", // GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA // // letters with Psili and Oxia: // ">;A=0x1F0C", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA ">;E=0x1F1C", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA ">;H=0x1F2C", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA ">;I=0x1F3C", // GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA ">;O=0x1F4C", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA ">;Y=0x1F5C", // GREEK CAPITAL LETTER UPSILON WITH PSILI AND OXIA ">;V=0x1F6C", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA ">;a=0x1F04", // GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA ">;e=0x1F14", // GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA ">;h=0x1F24", // GREEK SMALL LETTER ETA WITH PSILI AND OXIA ">;i=0x1F34", // GREEK SMALL LETTER IOTA WITH PSILI AND OXIA ">;o=0x1F44", // GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA ">;y=0x1F54", // GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA ">;v=0x1F64", // GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA // // Letters with Dasia and Oxia: // "<;A=0x1F0D", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA "<;E=0x1F1D", // GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA "<;H=0x1F2D", // GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA "<;I=0x1F3D", // GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA "<;O=0x1F4D", // GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA "<;Y=0x1F5D", // GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA "<;V=0x1F6D", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA "<;a=0x1F05", // GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA "<;e=0x1F15", // GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA "<;h=0x1F25", // GREEK SMALL LETTER ETA WITH DASIA AND OXIA "<;i=0x1F35", // GREEK SMALL LETTER IOTA WITH DASIA AND OXIA "<;o=0x1F45", // GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA "<;y=0x1F55", // GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA "<;v=0x1F65", // GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA // // letters with Psili and Perispomeni: // ">~A=0x1F0E", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI ">~E=0x1F1E", // GREEK CAPITAL LETTER EPSILON WITH PSILI AND PERISPOMENI ">~H=0x1F2E", // GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI ">~I=0x1F3E", // GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI ">~O=0x1F4E", // GREEK CAPITAL LETTER OMICRON WITH PSILI AND PERISPOMENI ">~Y=0x1F5E", // GREEK CAPITAL LETTER UPSILON WITH PSILI AND PERISPOMENI ">~V=0x1F6E", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI ">~a=0x1F06", // GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI ">~e=0x1F16", // GREEK SMALL LETTER EPSILON WITH PSILI AND PERISPOMENI ">~h=0x1F26", // GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI ">~i=0x1F36", // GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI ">~o=0x1F46", // GREEK SMALL LETTER OMICRON WITH PSILI AND PERISPOMENI ">~y=0x1F56", // GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI ">~v=0x1F66", // GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI // // Letters with Dasia and Perispomeni: // "<~A=0x1F0F", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI "<~E=0x1F1F", // GREEK CAPITAL LETTER EPSILON WITH DASIA AND PERISPOMENI "<~H=0x1F2F", // GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI "<~I=0x1F3F", // GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI "<~O=0x1F4F", // GREEK CAPITAL LETTER OMICRON WITH DASIA AND PERISPOMENI "<~Y=0x1F5F", // GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI "<~V=0x1F6F", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI "<~a=0x1F07", // GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI "<~e=0x1F17", // GREEK SMALL LETTER EPSILON WITH DASIA AND PERISPOMENI "<~h=0x1F27", // GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI "<~i=0x1F37", // GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI "<~o=0x1F47", // GREEK SMALL LETTER OMICRON WITH DASIA AND PERISPOMENI "<~y=0x1F57", // GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI "<~v=0x1F67", // GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI // // // // letters with Ypogegrammeni/Prosgegrammeni: // "A|=0x1FBC", // GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI "H|=0x1FCC", // GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI "V|=0x1FFC", // GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI "a|=0x1FB3", // GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI "h|=0x1FC3", // GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI "v|=0x1FF3", // GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI // // // This area covers 0x1F80-0x1FAF // // letters with Psili and Ypogegrammeni/Prosgegrammeni: // ">A|=0x1F88", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI ">H|=0x1F98", // GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI ">V|=0x1FA8", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI ">a|=0x1F80", // GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI ">h|=0x1F90", // GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI ">v|=0x1FA0", // GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI // // letters with Dasia and Ypogegrammeni/Prosgegrammeni: // "`A|=0x1F8A", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI ">`H|=0x1F9A", // GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI ">`V|=0x1FAA", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI ">`a|=0x1F82", // GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI ">`h|=0x1F92", // GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI ">`v|=0x1FA2", // GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI // // letters with Dasia and Varia and Ypogegrammeni/Prosgegrammeni: // "<`A|=0x1F8B", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI "<`H|=0x1F9B", // GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI "<`V|=0x1FAB", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI "<`a|=0x1F83", // GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI "<`h|=0x1F93", // GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI "<`v|=0x1FA3", // GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI // // letters with Psili and Oxia and Ypogegrammeni/Prosgegrammeni: // ">;A|=0x1F8C", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI ">;H|=0x1F9C", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI ">;V|=0x1FAC", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI ">;a|=0x1F84", // GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI ">;h|=0x1F94", // GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI ">;v|=0x1FA4", // GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI // // letters with Dasia and Oxia and Ypogegrammeni/Prosgegrammeni: // "<;A|=0x1F8D", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI "<;H|=0x1F9D", // GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI "<;V|=0x1FAD", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI "<;a|=0x1F85", // GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI "<;h|=0x1F95", // GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI "<;v|=0x1FA5", // GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI // // letters with Psili and Perispomeni and Ypogegrammeni/Prosgegrammeni: // ">~A|=0x1F8E", // GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI ">~H|=0x1F9E", // GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA PERISPOMENI PROSGEGRAMMENI ">~V|=0x1FAE", // GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI ">~a|=0x1F86", // GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI ">~h|=0x1F96", // GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI ">~v|=0x1FA6", // GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI // // letters with Dasia and Perispomeni and Ypogegrammeni/Prosgegrammeni: // "<~A|=0x1F8F", // GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "<~H|=0x1F9F", // GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "<~V|=0x1FAF", // GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI "<~a|=0x1F87", // GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI "<~h|=0x1F97", // GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI "<~v|=0x1FA7", // GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI // // letters with Perispomeni: // "~a=0x1FB6", // GREEK SMALL LETTER ALPHA WITH PERISPOMENI "~h=0x1FC6", // GREEK SMALL LETTER ETA WITH PERISPOMENI "~i=0x1FD6", // GREEK SMALL LETTER IOTA WITH PERISPOMENI "~y=0x1FE6", // GREEK SMALL LETTER UPSILON WITH PERISPOMENI "~v=0x1FF6", // GREEK SMALL LETTER OMEGA WITH PERISPOMENI // // letters with Perispomeni and Ypogegrammeni: // "~a|=0x1FB7", // GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI "~h|=0x1FC7", // GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI "~v|=0x1FF7", // GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI // // // letters with Varia and Ypogegrammeni: // "`a|=0x1FB2", // GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI "`h|=0x1FC2", // GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI "`v|=0x1FF2", // GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI // // letters with Oxia and Ypogegrammeni: // ";a|=0x1FB4", // GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI ";h|=0x1FC4", // GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI ";v|=0x1FF4", // GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI // // // Combining/Nonspacing comma above (0x0313) instead of Psili: // ">,=0x0313", // COMBINING COMMA ABOVE // // Combining/Nonspacing reversed comma above (0x0314) instead of Dasia: // "<,=0x0314", // COMBINING REVERSED COMMA ABOVE // // // Greek Quotes if your keyboard supports them "=0x201C", // QUOTEDBLLEFT "=0x201D", // QUOTEDBLRIGHT // // // // APPENDIX A - Additional characters // // ";#=0x0374", // GREEK NUMERAL SIGN ";##=0x0375", // GREEK LOWER NUMERAL SIGN "||=0x037A", // GREEK YPOGEGRAMMENI ";b=0x03D0", // GREEK BETA SYMBOL ";u=0x03D1", // GREEK THETA SYMBOL // "=0x03D2", // GREEK UPSILON WITH HOOK SYMBOL // "=0x03D3", // GREEK UPSILON WITH ACUTE AND HOOK SYMBOL // "=0x03D4", // GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL ";f=0x03D5", // GREEK PHI SYMBOL ";p=0x03D6", // GREEK PI SYMBOL "#ST=0x03DA", // GREEK LETTER STIGMA "#G=0x03DC", // GREEK LETTER DIGAMMA "#Q=0x03DE", // GREEK LETTER KOPPA "#SP=0x03E0", // GREEK LETTER SAMPI ";k=0x03F0", // GREEK KAPPA SYMBOL ";r=0x03F1", // GREEK RHO SYMBOL // "=0x03F2", // GREEK LUNATE SIGMA SYMBOL // "=0x03F3", // GREEK LETTER YOT ":~=0x1FC1", //dialytika peripswmevn "~:=0x1FC1", //dialytika peripswmevn ":~i=0x1FD7", //iota dialytika perispomeni "~:i=0x1FD7", //iota dialytika perispomeni ":~y=0x1FE7", //upsilon dialytika perispomeni "~:y=0x1FE7", //upsilon dialytika perispomeni "-a=0x1FB1", //alpha macron "-i=0x1FD1", //iota macron "-y=0x1FE1", //upsilon macron "-A=0x1FB9", //Alpha macron "-I=0x1FD9", //Iota macron "-Y=0x1FE9", //Upsilon macron "^a=0x1FB0", //alpha braxy "^i=0x1FD0", //iota braxy "^y=0x1FE0", //upsilon braxy "^A=0x1FB8", //alpha braxy "^I=0x1FD8", //iota braxy "^Y=0x1FE8", //upsilon braxy ">r=0x1FE4", //rho psili " //GURMUKHI letters //"X=0x0A01", // GURMUKHI SIGN CANDRABINDU "x=0x0A02", // GURMUKHI SIGN ANUSVARA //"_=0x0A03", // GURMUKHI SIGN VISARGA //"=0x0A04", // GURMUKHI LETTER "D=0x0A05", // GURMUKHI LETTER A "E=0x0A06", // GURMUKHI LETTER AA "F=0x0A07", // GURMUKHI LETTER I "R=0x0A08", // GURMUKHI LETTER II "G=0x0A09", // GURMUKHI LETTER U "T=0x0A0A", // GURMUKHI LETTER UU //"+=0x0A0B", // GURMUKHI LETTER VOCALIC R //"&=0x0A0C", // GURMUKHI LETTER VOCALIC L //"!=0x0A0D", // GURMUKHI LETTER CANDRA E //"Z=0x0A0E", // GURMUKHI LETTER SHORT E "S=0x0A0F", // GURMUKHI LETTER E "W=0x0A10", // GURMUKHI LETTER AI //"|=0x0A11", // GURMUKHI LETTER CANDRA O //"~=0x0A12", // GURMUKHI LETTER SHORT O "A=0x0A13", // GURMUKHI LETTER O "Q=0x0A14", // GURMUKHI LETTER AU "k=0x0A15", // GURMUKHI LETTER KA "K=0x0A16", // GURMUKHI LETTER KHA "i=0x0A17", // GURMUKHI LETTER GA "I=0x0A18", // GURMUKHI LETTER GHA "U=0x0A19", // GURMUKHI LETTER NGA ";=0x0A1A", // GURMUKHI LETTER CA ":=0x0A1B", // GURMUKHI LETTER CHA "p=0x0A1C", // GURMUKHI LETTER JA "P=0x0A1D", // GURMUKHI LETTER JHA "}=0x0A1E", // GURMUKHI LETTER NYA "'=0x0A1F", // GURMUKHI LETTER TTA "\"=0x0A20", // GURMUKHI LETTER TTHA "[=0x0A21", // GURMUKHI LETTER DDA "{=0x0A22", // GURMUKHI LETTER DDHA "C=0x0A23", // GURMUKHI LETTER NNA "l=0x0A24", // GURMUKHI LETTER TA "L=0x0A25", // GURMUKHI LETTER THA "o=0x0A26", // GURMUKHI LETTER DA "O=0x0A27", // GURMUKHI LETTER DHA "v=0x0A28", // GURMUKHI LETTER NA //"V=0x0A29", // GURMUKHI LETTER NNNA "h=0x0A2A", // GURMUKHI LETTER PA "H=0x0A2B", // GURMUKHI LETTER PHA "y=0x0A2C", // GURMUKHI LETTER BA "Y=0x0A2D", // GURMUKHI LETTER BHA "c=0x0A2E", // GURMUKHI LETTER MA "/=0x0A2F", // GURMUKHI LETTER YA "j=0x0A30", // GURMUKHI LETTER RA //"J=0x0A31", // GURMUKHI LETTER RRA "n=0x0A32", // GURMUKHI LETTER LA "N=0x0A33", // GURMUKHI LETTER LLA //"B=0x0A34", // GURMUKHI LETTER LLLA "b=0x0A35", // GURMUKHI LETTER VA "M=0x0A36", // GURMUKHI LETTER SHA //"<=0x0A37", // GURMUKHI LETTER SSA "m=0x0A38", // GURMUKHI LETTER SA "u=0x0A39", // GURMUKHI LETTER HA //"=0x0A3A", // GURMUKHI LETTER //"=0x0A3B", // GURMUKHI LETTER "]=0x0A3C", // GURMUKHI SIGN NUKTA //"#=0x0A3D, // GURMUKHI SIGN AVAGRAHA "e=0x0A3E", // GURMUKHI VOWEL SIGN AA "f=0x0A3F", // GURMUKHI VOWEL SIGN I "r=0x0A40", // GURMUKHI VOWEL SIGN II "g=0x0A41", // GURMUKHI VOWEL SIGN U "t=0x0A42", // GURMUKHI VOWEL SIGN UU //"\==0x0A43", // GURMUKHI VOWEL SIGN VOCALIC R //"$=0x0A44", // GURMUKHI VOWEL SIGN VOCALIC RR //"@=0x0A45", // GURMUKHI VOWEL SIGN CANDRA E //"z=0x0A46", // GURMUKHI VOWEL SIGN SHORT E "s=0x0A47", // GURMUKHI VOWEL SIGN E "w=0x0A48", // GURMUKHI VOWEL SIGN AI //"\ \=0x0A49", // GURMUKHI VOWEL SIGN CANDRA O //"`=0x0A4A", // GURMUKHI VOWEL SIGN SHART O "a=0x0A4B", // GURMUKHI VOWEL SIGN O "q=0x0A4C", // GURMUKHI VOWEL SIGN OU "d=0x0A4D", // GURMUKHI SIGN VIRMA //"=0x0A4E", // GURMUKHI LETTER //"=0x0A4F", // GURMUKHI LETTER "%=0x0A50", // GURMUKHI OM //"i]=0x0A5A", // GURMUKHI LETTER GHHA //"p]=0x0A5B", // GURMUKHI LETTER ZA //"[]=0x0A5C", // GURMUKHI LETTER DDDHA //"{]=0x0A5D", // GURMUKHI LETTER RHA //"H]=0x0A5E", // GURMUKHI LETTER FA //"?=0x0A5F", // GURMUKHI LETTER YYA "0x30=0x0A66", // GURMUKHI DIGIT ZERO "0x31=0x0A67", // GURMUKHI DIGIT ONE "0x32=0x0A68", // GURMUKHI DIGIT TWO "0x33=0x0A69", // GURMUKHI DIGIT THREE "0x34=0x0A6A", // GURMUKHI DIGIT FOUR "0x35=0x0A6B", // GURMUKHI DIGIT FIVE "0x36=0x0A6C", // GURMUKHI DIGIT SIX "0x37=0x0A6D", // GURMUKHI DIGIT SEVEN "0x38=0x0A6E", // GURMUKHI DIGIT EIGHT "0x39=0x0A6F", // GURMUKHI DIGIT NINE ./mytool/kmap/Inuktitut-KBD.kmap0000644000175000017500000002454207565350106016576 0ustar henrichhenrich// Inuktitut-KBD.kmap for the Unicode editor Yudit // as described in http://www.tiro.com/syllabics/resources/ // under Keyboard Drivers // describes Windows keyboard driver for Inuktitut based on legacy // keyboards // 2002-10-09 by Howard.Johnson@nrc.ca "0x31 = 0x1595", "0x32 = 0x1449", "0x33 = 0x1550", "0x34 = 0x1483", "0x35 = 0x1466", "0x36 = 0x1585", "0x37 = 0x14bb", "0x38 = 0x14d0", "0x39 = 0x14ea", "0x30 = 0x153e", "0x3d = 0x155d", # '=' "q = 0x158f", "w = 0x1403", "e = 0x157f", "r = 0x146d", "t = 0x144e", "y = 0x14ef", "u = 0x14a5", "i = 0x14c2", "o = 0x14d5", "p = 0x1528", "0x5b = 0x14a1", # '[' "a = 0x1591", "s = 0x1405", "d = 0x1581", "f = 0x146f", "g = 0x1450", "h = 0x14f1", "j = 0x14a7", "k = 0x14c4", "l = 0x14d7", "z = 0x1593", "x = 0x140a", "c = 0x1583", "v = 0x1472", "b = 0x1455", "n = 0x14f4", "m = 0x14aa", "0x2f = 0x152d", # '/' "0x21 = 0x0031", "0x40 = 0x0032", "0x23 = 0x0033", "0x24 = 0x0034", "0x25 = 0x0035", "0x5e = 0x0036", "0x26 = 0x0037", "0x2a = 0x0038", "0x28 = 0x0039", "0x29 = 0x0030", "Q = 0x148b", "W = 0x1431", "E = 0x1546", "R = 0x1595", "T = 0x1671", "Y = 0x1673", "U = 0x1675", "I = 0x15a4", "O = 0x15a0", "P = 0x15a6", "0x7b = 0x1505", # '{' "A = 0x148d", "S = 0x1433", "D = 0x1548", "F = 0x1555", "G = 0x0028", "H = 0x0029", "J = 0x152a", "K = 0x1557", "L = 0x15a2", "Z = 0x1490", "X = 0x1438", "C = 0x154b", "V = 0x003F", "B = 0x157c", "N = 0x14c7", "M = 0x14da", "0x3f = 0x1559", # '?' ################################## 5d "0x5d 0x60 = 0x0060", # '`' "0x5d 0x31 = 0x0021", "0x5d 0x32 = 0x0040", "0x5d 0x33 = 0x0023", "0x5d 0x34 = 0x0024", "0x5d 0x35 = 0x0025", "0x5d 0x36 = 0x005e", "0x5d 0x37 = 0x0026", "0x5d 0x38 = 0x002a", "0x5d 0x39 = 0x005b", "0x5d 0x30 = 0x005d", "0x5d 0x2d = 0x002d", # '-' "0x5d 0x3d = 0x003d", # '=' "0x5d q = 0x1590", "0x5d w = 0x1404", "0x5d e = 0x1580", "0x5d r = 0x146e", "0x5d t = 0x144f", "0x5d y = 0x14f0", "0x5d u = 0x14a6", "0x5d i = 0x14c3", "0x5d o = 0x14d6", "0x5d p = 0x1529", "0x5d 0x5b = 0x005b", # '[' "0x5d 0x5d = 0x005d", # ']' "0x5d 0x5c = 0x002f", # '\' "0x5d a = 0x1592", "0x5d s = 0x140b", "0x5d d = 0x1582", "0x5d f = 0x1470", "0x5d g = 0x1451", "0x5d h = 0x14f2", "0x5d j = 0x14a8", "0x5d k = 0x14c5", "0x5d l = 0x14d8", "0x5d 0x3b = 0x003b", # ';' "0x5d 0x27 = 0x0027", # ''' "0x5d z = 0x1594", "0x5d x = 0x1406", "0x5d c = 0x1584", "0x5d v = 0x1473", "0x5d b = 0x1456", "0x5d n = 0x14f5", "0x5d m = 0x14ab", "0x5d 0x2c = 0x00d7", # ',' "0x5d 0x2e = 0x0142", # '.' "0x5d 0x2f = 0x152e", # '/' "0x5d 0x7e = 0x007e", # '~' "0x5d 0x21 = 0x0031", "0x5d 0x40 = 0x0032", "0x5d 0x23 = 0x0033", "0x5d 0x24 = 0x0034", "0x5d 0x25 = 0x0035", "0x5d 0x5e = 0x0036", "0x5d 0x26 = 0x0037", "0x5d 0x2a = 0x0038", "0x5d 0x28 = 0x0039", "0x5d 0x29 = 0x0030", "0x5d 0x5f = 0x005f", # '_' "0x5d 0x2b = 0x002b", # '+' "0x5d Q = 0x148c", "0x5d W = 0x1432", "0x5d E = 0x1547", "0x5d R = 0x0052", "0x5d T = 0x1672", "0x5d Y = 0x1674", "0x5d U = 0x1676", "0x5d I = 0x15a5", "0x5d O = 0x15a1", "0x5d P = 0x0050", "0x5d 0x7b = 0x007b", # '{' "0x5d 0x7d = 0x007d", # '}' "0x5d 0x7c = 0x007c", # '|' "0x5d A = 0x148e", "0x5d S = 0x1434", "0x5d D = 0x1549", "0x5d F = 0x1556", "0x5d G = 0x0047", "0x5d H = 0x0048", "0x5d J = 0x152b", "0x5d K = 0x1558", "0x5d L = 0x15a3", "0x5d 0x3a = 0x003a", # ':' "0x5d 0x22 = 0x0022", # '"' "0x5d Z = 0x1491", "0x5d X = 0x1439", "0x5d C = 0x154c", "0x5d V = 0x0056", "0x5d B = 0x0042", "0x5d N = 0x14c8", "0x5d M = 0x14db", "0x5d 0x3c = 0x003c", # '<' "0x5d 0x3e = 0x003e", # '>' "0x5d 0x3f = 0x155a", # '?' ################################## 60 "0x60 0x60 = 0x0060", # '`' "0x60 0x31 = 0x0021", "0x60 0x32 = 0x0040", "0x60 0x33 = 0x0023", "0x60 0x34 = 0x0024", "0x60 0x35 = 0x0025", "0x60 0x36 = 0x005e", "0x60 0x37 = 0x0026", "0x60 0x38 = 0x002a", "0x60 0x39 = 0x005b", "0x60 0x30 = 0x005d", "0x60 0x2d = 0x002d", # '-' "0x60 0x3d = 0x003d", # '=' "0x60 q = 0x1590", "0x60 w = 0x1404", "0x60 e = 0x1580", "0x60 r = 0x146e", "0x60 t = 0x144f", "0x60 y = 0x14f0", "0x60 u = 0x14a6", "0x60 i = 0x14c3", "0x60 o = 0x14d6", "0x60 p = 0x1529", "0x60 0x5b = 0x005b", # '[' "0x60 0x5d = 0x005d", # ']' "0x60 0x5c = 0x002f", # '\' "0x60 a = 0x1592", "0x60 s = 0x140b", "0x60 d = 0x1582", "0x60 f = 0x1470", "0x60 g = 0x1451", "0x60 h = 0x14f2", "0x60 j = 0x14a8", "0x60 k = 0x14c5", "0x60 l = 0x14d8", "0x60 0x3b = 0x003b", # ';' "0x60 0x27 = 0x0027", # ''' "0x60 z = 0x1594", "0x60 x = 0x1406", "0x60 c = 0x1584", "0x60 v = 0x1473", "0x60 b = 0x1456", "0x60 n = 0x14f5", "0x60 m = 0x14ab", "0x60 0x2c = 0x00d7", # ',' "0x60 0x2e = 0x0142", # '.' "0x60 0x2f = 0x152e", # '/' "0x60 0x7e = 0x007e", # '~' "0x60 0x21 = 0x0031", "0x60 0x40 = 0x0032", "0x60 0x23 = 0x0033", "0x60 0x24 = 0x0034", "0x60 0x25 = 0x0035", "0x60 0x5e = 0x0036", "0x60 0x26 = 0x0037", "0x60 0x2a = 0x0038", "0x60 0x28 = 0x0039", "0x60 0x29 = 0x0030", "0x60 0x5f = 0x005f", # '_' "0x60 0x2b = 0x002b", # '+' "0x60 Q = 0x148c", "0x60 W = 0x1432", "0x60 E = 0x1547", "0x60 R = 0x0052", "0x60 T = 0x1672", "0x60 Y = 0x1674", "0x60 U = 0x1676", "0x60 I = 0x15a5", "0x60 O = 0x15a1", "0x60 P = 0x0050", "0x60 0x7b = 0x007b", # '{' "0x60 0x7d = 0x007d", # '}' "0x60 0x7c = 0x007c", # '|' "0x60 A = 0x148e", "0x60 S = 0x1434", "0x60 D = 0x1549", "0x60 F = 0x1556", "0x60 G = 0x0047", "0x60 H = 0x0048", "0x60 J = 0x152b", "0x60 K = 0x1558", "0x60 L = 0x15a3", "0x60 0x3a = 0x003a", # ':' "0x60 0x22 = 0x0022", # '"' "0x60 Z = 0x1491", "0x60 X = 0x1439", "0x60 C = 0x154c", "0x60 V = 0x0056", "0x60 B = 0x0042", "0x60 N = 0x14c8", "0x60 M = 0x14db", "0x60 0x3c = 0x003c", # '<' "0x60 0x3e = 0x003e", # '>' "0x60 0x3f = 0x155a", # '?' ################################## 7d "0x7d 0x60 = 0x0060", # '`' "0x7d 0x31 = 0x0021", "0x7d 0x32 = 0x0040", "0x7d 0x33 = 0x0023", "0x7d 0x34 = 0x0024", "0x7d 0x35 = 0x0025", "0x7d 0x36 = 0x005e", "0x7d 0x37 = 0x0026", "0x7d 0x38 = 0x002a", "0x7d 0x39 = 0x005b", "0x7d 0x30 = 0x005d", "0x7d 0x2d = 0x002d", # '-' "0x7d 0x3d = 0x003d", # '=' "0x7d q = 0x1590", "0x7d w = 0x1404", "0x7d e = 0x1580", "0x7d r = 0x146e", "0x7d t = 0x144f", "0x7d y = 0x14f0", "0x7d u = 0x14a6", "0x7d i = 0x14c3", "0x7d o = 0x14d6", "0x7d p = 0x1529", "0x7d 0x5b = 0x005b", # '[' "0x7d 0x5d = 0x005d", # ']' "0x7d 0x5c = 0x002f", # '\' "0x7d a = 0x1592", "0x7d s = 0x140b", "0x7d d = 0x1582", "0x7d f = 0x1470", "0x7d g = 0x1451", "0x7d h = 0x14f2", "0x7d j = 0x14a8", "0x7d k = 0x14c5", "0x7d l = 0x14d8", "0x7d 0x3b = 0x003b", # ';' "0x7d 0x27 = 0x0027", # ''' "0x7d z = 0x1594", "0x7d x = 0x1406", "0x7d c = 0x1584", "0x7d v = 0x1473", "0x7d b = 0x1456", "0x7d n = 0x14f5", "0x7d m = 0x14ab", "0x7d 0x2c = 0x00d7", # ',' "0x7d 0x2e = 0x0142", # '.' "0x7d 0x2f = 0x152e", # '/' "0x7d 0x7e = 0x007e", # '~' "0x7d 0x21 = 0x0031", "0x7d 0x40 = 0x0032", "0x7d 0x23 = 0x0033", "0x7d 0x24 = 0x0034", "0x7d 0x25 = 0x0035", "0x7d 0x5e = 0x0036", "0x7d 0x26 = 0x0037", "0x7d 0x2a = 0x0038", "0x7d 0x28 = 0x0039", "0x7d 0x29 = 0x0030", "0x7d 0x5f = 0x005f", # '_' "0x7d 0x2b = 0x002b", # '+' "0x7d Q = 0x148c", "0x7d W = 0x1432", "0x7d E = 0x1547", "0x7d R = 0x0052", "0x7d T = 0x1672", "0x7d Y = 0x1674", "0x7d U = 0x1676", "0x7d I = 0x15a5", "0x7d O = 0x15a1", "0x7d P = 0x0050", "0x7d 0x7b = 0x007b", # '{' "0x7d 0x7d = 0x007d", # '}' "0x7d 0x7c = 0x007c", # '|' "0x7d A = 0x148e", "0x7d S = 0x1434", "0x7d D = 0x1549", "0x7d F = 0x1556", "0x7d G = 0x0047", "0x7d H = 0x0048", "0x7d J = 0x152b", "0x7d K = 0x1558", "0x7d L = 0x15a3", "0x7d 0x3a = 0x003a", # ':' "0x7d 0x22 = 0x0022", # '"' "0x7d Z = 0x1491", "0x7d X = 0x1439", "0x7d C = 0x154c", "0x7d V = 0x0056", "0x7d B = 0x0042", "0x7d N = 0x14c8", "0x7d M = 0x14db", "0x7d 0x3c = 0x003c", # '<' "0x7d 0x3e = 0x003e", # '>' "0x7d 0x3f = 0x155a", # '?' ################################## 7e "0x7e 0x60 = 0x0060", # '`' "0x7e 0x31 = 0x0021", "0x7e 0x32 = 0x0040", "0x7e 0x33 = 0x0023", "0x7e 0x34 = 0x0024", "0x7e 0x35 = 0x0025", "0x7e 0x36 = 0x005e", "0x7e 0x37 = 0x0026", "0x7e 0x38 = 0x002a", "0x7e 0x39 = 0x005b", "0x7e 0x30 = 0x005d", "0x7e 0x2d = 0x002d", # '-' "0x7e 0x3d = 0x003d", # '=' "0x7e q = 0x1590", "0x7e w = 0x1404", "0x7e e = 0x1580", "0x7e r = 0x146e", "0x7e t = 0x144f", "0x7e y = 0x14f0", "0x7e u = 0x14a6", "0x7e i = 0x14c3", "0x7e o = 0x14d6", "0x7e p = 0x1529", "0x7e 0x5b = 0x005b", # '[' "0x7e 0x5d = 0x005d", # ']' "0x7e 0x5c = 0x002f", # '\' "0x7e a = 0x1592", "0x7e s = 0x140b", "0x7e d = 0x1582", "0x7e f = 0x1470", "0x7e g = 0x1451", "0x7e h = 0x14f2", "0x7e j = 0x14a8", "0x7e k = 0x14c5", "0x7e l = 0x14d8", "0x7e 0x3b = 0x003b", # ';' "0x7e 0x27 = 0x0027", # ''' "0x7e z = 0x1594", "0x7e x = 0x1406", "0x7e c = 0x1584", "0x7e v = 0x1473", "0x7e b = 0x1456", "0x7e n = 0x14f5", "0x7e m = 0x14ab", "0x7e 0x2c = 0x00d7", # ',' "0x7e 0x2e = 0x0142", # '.' "0x7e 0x2f = 0x152e", # '/' "0x7e 0x7e = 0x007e", # '~' "0x7e 0x21 = 0x0031", "0x7e 0x40 = 0x0032", "0x7e 0x23 = 0x0033", "0x7e 0x24 = 0x0034", "0x7e 0x25 = 0x0035", "0x7e 0x5e = 0x0036", "0x7e 0x26 = 0x0037", "0x7e 0x2a = 0x0038", "0x7e 0x28 = 0x0039", "0x7e 0x29 = 0x0030", "0x7e 0x5f = 0x005f", # '_' "0x7e 0x2b = 0x002b", # '+' "0x7e Q = 0x148c", "0x7e W = 0x1432", "0x7e E = 0x1547", "0x7e R = 0x0052", "0x7e T = 0x1672", "0x7e Y = 0x1674", "0x7e U = 0x1676", "0x7e I = 0x15a5", "0x7e O = 0x15a1", "0x7e P = 0x0050", "0x7e 0x7b = 0x007b", # '{' "0x7e 0x7d = 0x007d", # '}' "0x7e 0x7c = 0x007c", # '|' "0x7e A = 0x148e", "0x7e S = 0x1434", "0x7e D = 0x1549", "0x7e F = 0x1556", "0x7e G = 0x0047", "0x7e H = 0x0048", "0x7e J = 0x152b", "0x7e K = 0x1558", "0x7e L = 0x15a3", "0x7e 0x3a = 0x003a", # ':' "0x7e 0x22 = 0x0022", # '"' "0x7e Z = 0x1491", "0x7e X = 0x1439", "0x7e C = 0x154c", "0x7e V = 0x0056", "0x7e B = 0x0042", "0x7e N = 0x14c8", "0x7e M = 0x14db", "0x7e 0x3c = 0x003c", # '<' "0x7e 0x3e = 0x003e", # '>' "0x7e 0x3f = 0x155a", # '?' ./mytool/kmap/Chinese-Pinyin.kmap0000644000175000017500000000537007565350106017020 0ustar henrichhenrich// Chinese-Pinyin.kmap for the Unicode editor Yudit // 2000-09-25 by Howard.Johnson@nrc.ca "A1=0x0100", // Ā = LATIN CAPITAL LETTER A WITH MACRON "A2=0x00c1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "A3=0x01cd", // Ǎ = LATIN CAPITAL LETTER A WITH CARON "A4=0x00c0", // À = LATIN CAPITAL LETTER A WITH GRAVE "a1=0x0101", // ā = LATIN SMALL LETTER A WITH MACRON "a2=0x00e1", // á = LATIN SMALL LETTER A WITH ACUTE "a3=0x01ce", // ǎ = LATIN SMALL LETTER A WITH CARON "a4=0x00e0", // à = LATIN SMALL LETTER A WITH GRAVE "E1=0x0112", // Ē = LATIN CAPITAL LETTER E WITH MACRON "E2=0x00c9", // É = LATIN CAPITAL LETTER E WITH ACUTE "E3=0x011a", // Ě = LATIN CAPITAL LETTER E WITH CARON "E4=0x00c8", // È = LATIN CAPITAL LETTER E WITH GRAVE "e1=0x0113", // ē = LATIN SMALL LETTER E WITH MACRON "e2=0x00e9", // é = LATIN SMALL LETTER E WITH ACUTE "e3=0x011b", // ě = LATIN SMALL LETTER E WITH CARON "e4=0x00e8", // è = LATIN SMALL LETTER E WITH GRAVE "I1=0x012a", // Ī = LATIN CAPITAL LETTER I WITH MACRON "I2=0x00cd", // Í = LATIN CAPITAL LETTER I WITH ACUTE "I3=0x01cf", // Ǐ = LATIN CAPITAL LETTER I WITH CARON "I4=0x00cc", // Ì = LATIN CAPITAL LETTER I WITH GRAVE "i1=0x012b", // ī = LATIN SMALL LETTER I WITH MACRON "i2=0x00ed", // í = LATIN SMALL LETTER I WITH ACUTE "i3=0x01d0", // ǐ = LATIN SMALL LETTER I WITH CARON "i4=0x00ec", // ì = LATIN SMALL LETTER I WITH GRAVE "O1=0x014c", // Ō = LATIN CAPITAL LETTER O WITH MACRON "O2=0x00d3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "O3=0x01d1", // Ǒ = LATIN CAPITAL LETTER O WITH CARON "O4=0x00d2", // Ò = LATIN CAPITAL LETTER O WITH GRAVE "o1=0x014d", // ō = LATIN SMALL LETTER O WITH MACRON "o2=0x00f3", // ó = LATIN SMALL LETTER O WITH ACUTE "o3=0x01d2", // ǒ = LATIN SMALL LETTER O WITH CARON "o4=0x00f2", // ò = LATIN SMALL LETTER O WITH GRAVE "U1=0x016a", // Ū = LATIN CAPITAL LETTER U WITH MACRON "U2=0x00da", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "U3=0x01d3", // Ǔ = LATIN CAPITAL LETTER U WITH CARON "U4=0x00d9", // Ù = LATIN CAPITAL LETTER U WITH GRAVE "u1=0x016b", // ū = LATIN SMALL LETTER U WITH MACRON "u2=0x00fa", // ú = LATIN SMALL LETTER U WITH ACUTE "u3=0x01d4", // ǔ = LATIN SMALL LETTER U WITH CARON "u4=0x00f9", // ù = LATIN SMALL LETTER U WITH GRAVE "V1=0x01d5", // Ǖ = LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON "V2=0x01d7", // Ǘ = LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE "V3=0x01d9", // Ǚ = LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON "V4=0x01db", // Ǜ = LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE "v1=0x01d6", // ǖ = LATIN SMALL LETTER U WITH DIAERESIS AND MACRON "v2=0x01d8", // ǘ = LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE "v3=0x01da", // ǚ = LATIN SMALL LETTER U WITH DIAERESIS AND CARON "v4=0x01dc", // ǜ = LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE ./mytool/kmap/Welsh.kmap0000644000175000017500000001036307532460064015255 0ustar henrichhenrich// Welsh.kmap for the Unicode text editor Yudit // 2000-10-29 david@sheetmusic.org.uk - improvements welcome "A\\=0x00c0", // À = LATIN CAPITAL LETTER A WITH GRAVE "A/=0x00c1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "A^=0x00c2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX "A+=0x00c2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX "A\"=0x00c4", // Ä = LATIN CAPITAL LETTER A WITH DIAERESIS "a\\=0x00e0", // à = LATIN SMALL LETTER A WITH GRAVE "a/=0x00e1", // á = LATIN SMALL LETTER A WITH ACUTE "a^=0x00e2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "a+=0x00e2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "a\"=0x00e4", // ä = LATIN SMALL LETTER A WITH DIAERESIS "E\\=0x00c8", // È = LATIN CAPITAL LETTER E WITH GRAVE "E/=0x00c9", // É = LATIN CAPITAL LETTER E WITH ACUTE "E^=0x00ca", // Ê = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "E+=0x00ca", // Ê = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "E\"=0x00cb", // Ë = LATIN CAPITAL LETTER E WITH DIAERESIS "e\\=0x00e8", // è = LATIN SMALL LETTER E WITH GRAVE "e/=0x00e9", // é = LATIN SMALL LETTER E WITH ACUTE "e^=0x00ea", // ê = LATIN SMALL LETTER E WITH CIRCUMFLEX "e+=0x00ea", // ê = LATIN SMALL LETTER E WITH CIRCUMFLEX "e\"=0x00eb", // ë = LATIN SMALL LETTER E WITH DIAERESIS "I\\=0x00cc", // Ì = LATIN CAPITAL LETTER I WITH GRAVE "I/=0x00cd", // Í = LATIN CAPITAL LETTER I WITH ACUTE "I^=0x00ce", // Î = LATIN CAPITAL LETTER I WITH CIRCUMFLEX "I+=0x00ce", // Î = LATIN CAPITAL LETTER I WITH CIRCUMFLEX "I\"=0x00cf", // Ï = LATIN CAPITAL LETTER I WITH DIAERESIS "i\\=0x00ec", // ì = LATIN SMALL LETTER I WITH GRAVE "i/=0x00ed", // í = LATIN SMALL LETTER I WITH ACUTE "i^=0x00ee", // î = LATIN SMALL LETTER I WITH CIRCUMFLEX "i+=0x00ee", // î = LATIN SMALL LETTER I WITH CIRCUMFLEX "i\"=0x00ef", // ï = LATIN SMALL LETTER I WITH DIAERESIS "O\\=0x00d2", // Ò = LATIN CAPITAL LETTER O WITH GRAVE "O/=0x00d3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "O^=0x00d4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "O+=0x00d4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "O\"=0x00d6", // Ö = LATIN CAPITAL LETTER O WITH DIAERESIS "o\\=0x00f2", // ò = LATIN SMALL LETTER O WITH GRAVE "o/=0x00f3", // ó = LATIN SMALL LETTER O WITH ACUTE "o^=0x00f4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "o+=0x00f4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "o\"=0x00f6", // ö = LATIN SMALL LETTER O WITH DIAERESIS "U\\=0x00d9", // Ù = LATIN CAPITAL LETTER U WITH GRAVE "U/=0x00da", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "U^=0x00db", // Û = LATIN CAPITAL LETTER U WITH CIRCUMFLEX "U+=0x00db", // Û = LATIN CAPITAL LETTER U WITH CIRCUMFLEX "U\"=0x00dc", // Ü = LATIN CAPITAL LETTER U WITH DIAERESIS "u\\=0x00f9", // ù = LATIN SMALL LETTER U WITH GRAVE "u/=0x00fa", // ú = LATIN SMALL LETTER U WITH ACUTE "u^=0x00fb", // û = LATIN SMALL LETTER U WITH CIRCUMFLEX "u+=0x00fb", // û = LATIN SMALL LETTER U WITH CIRCUMFLEX "u\"=0x00fc", // ü = LATIN SMALL LETTER U WITH DIAERESIS "Y\\=0x1ef2", // Ỳ = LATIN CAPITAL LETTER Y WITH GRAVE "Y/=0x00dd", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "Y^=0x0176", // Ŷ = LATIN CAPITAL LETTER Y WITH CIRCUMFLEX "Y+=0x0176", // Ŷ = LATIN CAPITAL LETTER Y WITH CIRCUMFLEX "Y\"=0x0178", // Ÿ = LATIN CAPITAL LETTER Y WITH DIAERESIS "y\\=0x1ef3", // ỳ = LATIN SMALL LETTER Y WITH GRAVE "y/=0x00fd", // ý = LATIN SMALL LETTER Y WITH ACUTE "y\"=0x00ff", // ÿ = LATIN SMALL LETTER Y WITH DIAERESIS "y^=0x0177", // ŷ = LATIN SMALL LETTER Y WITH CIRCUMFLEX "y+=0x0177", // ŷ = LATIN SMALL LETTER Y WITH CIRCUMFLEX "W\\=0x1e80", // Ẁ = LATIN CAPITAL LETTER W WITH GRAVE "W/=0x1e82", // Ẃ = LATIN CAPITAL LETTER W WITH ACUTE "W^=0x0174", // Ŵ = LATIN CAPITAL LETTER W WITH CIRCUMFLEX "W+=0x0174", // Ŵ = LATIN CAPITAL LETTER W WITH CIRCUMFLEX "W\"=0x1e84", // Ẅ = LATIN CAPITAL LETTER W WITH DIAERESIS "w\\=0x1e81", // ẁ = LATIN SMALL LETTER W WITH GRAVE "w/=0x1e83", // ẃ = LATIN SMALL LETTER W WITH ACUTE "w^=0x0175", // ŵ = LATIN SMALL LETTER W WITH CIRCUMFLEX "w+=0x0175", // ŵ = LATIN SMALL LETTER W WITH CIRCUMFLEX "w\"=0x1e85", // ẅ = LATIN SMALL LETTER W WITH DIAERESIS // This next one is "hawlfraint" (copyright). Dyma arwyddlun hawlfraint. "(h)=0x24d7", // ⓗ = CIRCLED LATIN SMALL LETTER H ./mytool/kmap/GreekMonotonic.kmap0000644000175000017500000002367507532460064017130 0ustar henrichhenrich// The monotonic part of this kmap was made by Constantine Stathopoulos . // It was modified and completed by A. Tsolomitis // The licence allows modifications but redistribution of modifications should // be with an other name. // Any comments can be sent to A. Tsolomitis // The keymap now conforms with the // LaTeX's-Babel Standard by A. Syropoulos // The conventions are as follows: // EURO SIGN is E$ (0x20AC), // Drachma sign is D$ (0x20AF) // RIGHT an LEFT QUOTATION MARKS (0x00BB), (0x00AB), // follow the kikbd conventions (;< abd ;>) AND << and >> // Apostrofos is corrected in order to agree with the Greek grammar rules // of Triantafilidis who requires the PSILI (or Koronis) symbol for an apostrophe. // The Greek ANO TELEIA (0x0387), follows again the kikbd conventions as well // as the Emacs conventions. So it is produced by both ;. and W // ; oxia // : dialytika // :; or ;: dialytika oxia // -- endash // --- emdash // ;b ;p ;f ;u ;r ;k give alternative forms // && give the Greek kai symbol // !e and !E are lunate epsilon and Epsilon but not enabled since their position // is not finalized in the curect version of Unicode. // #st stigma // #sp sampi // #g digamma // #q qoppa // ;# avw tovos (for numerals) // ;## katw tovos (for numerals) // ******************************************************************* // ****** For Polytonic support use the GreekPolytonic.kmap ********** // ******************************************************************* // PUNCTUATION MARKS - SYMBOLS (GREEK SPECIFIC) // "E$=0x20AC", // EURO SIGN ">>=0x00BB", // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK EISAGOGIKA/OMOIOMATIKA - DEFINITION MISSING FROM UNICODE] "<<=0x00AB", // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK [GREEK EISAGOGIKA - DEFINITION MISSING FROM UNICODE] "Q=0x003A", // COLON [GREEK EPEXIGIMATIKA OR ANO & KATO TELEIA - DEFINITION MISSING FROM UNICODE] "q=0x037E", // GREEK QUESTION MARK (EROTIMATIKO) ";.=0x0387", // GREEK ANO TELEIA "W=0x0387", // GREEK ANO TELEIA // // GREEK DIACRITICS // ":=0x00A8", // DIAERESIS [GREEK DIALYTIKA - DEFINITION MISSING FROM UNICODE] ";=0x0384", // GREEK TONOS ":;=0x0385", // GREEK DIALYTIKA TONOS ";:=0x0385", // GREEK DIALYTIKA TONOS // // GREEK LETTERS // "A=0x0391", // GREEK CAPITAL LETTER ALPHA "B=0x0392", // GREEK CAPITAL LETTER BETA "G=0x0393", // GREEK CAPITAL LETTER GAMMA "D=0x0394", // GREEK CAPITAL LETTER DELTA "E=0x0395", // GREEK CAPITAL LETTER EPSILON "Z=0x0396", // GREEK CAPITAL LETTER ZETA "H=0x0397", // GREEK CAPITAL LETTER ETA "U=0x0398", // GREEK CAPITAL LETTER THETA "I=0x0399", // GREEK CAPITAL LETTER IOTA "K=0x039A", // GREEK CAPITAL LETTER KAPPA "L=0x039B", // GREEK CAPITAL LETTER LAMDA "M=0x039C", // GREEK CAPITAL LETTER MU "N=0x039D", // GREEK CAPITAL LETTER NU "J=0x039E", // GREEK CAPITAL LETTER XI "O=0x039F", // GREEK CAPITAL LETTER OMIKRON "P=0x03A0", // GREEK CAPITAL LETTER PI "R=0x03A1", // GREEK CAPITAL LETTER RHO //"W=0x03A3", // GREEK CAPITAL LETTER SIGMA [CAPITAL ANALOGUE FOR SMALL LETTER FINAL SIGMA] "S=0x03A3", // GREEK CAPITAL LETTER SIGMA "T=0x03A4", // GREEK CAPITAL LETTER TAU "Y=0x03A5", // GREEK CAPITAL LETTER UPSILON "F=0x03A6", // GREEK CAPITAL LETTER PHI "X=0x03A7", // GREEK CAPITAL LETTER CHI "C=0x03A8", // GREEK CAPITAL LETTER PSI "V=0x03A9", // GREEK CAPITAL LETTER OMEGA "a=0x03B1", // GREEK SMALL LETTER ALPHA "b=0x03B2", // GREEK SMALL LETTER BETA "g=0x03B3", // GREEK SMALL LETTER GAMMA "d=0x03B4", // GREEK SMALL LETTER DELTA "e=0x03B5", // GREEK SMALL LETTER EPSILON "z=0x03B6", // GREEK SMALL LETTER ZETA "h=0x03B7", // GREEK SMALL LETTER ETA "u=0x03B8", // GREEK SMALL LETTER THETA "i=0x03B9", // GREEK SMALL LETTER IOTA "k=0x03BA", // GREEK SMALL LETTER KAPPA "l=0x03BB", // GREEK SMALL LETTER LAMDA "m=0x03BC", // GREEK SMALL LETTER MU "n=0x03BD", // GREEK SMALL LETTER NU "j=0x03BE", // GREEK SMALL LETTER XI "o=0x03BF", // GREEK SMALL LETTER OMICRON "p=0x03C0", // GREEK SMALL LETTER PI "r=0x03C1", // GREEK SMALL LETTER RHO "w=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "s=0x03C3", // GREEK SMALL LETTER SIGMA "t=0x03C4", // GREEK SMALL LETTER TAU "y=0x03C5", // GREEK SMALL LETTER UPSILON "f=0x03C6", // GREEK SMALL LETTER PHI "x=0x03C7", // GREEK SMALL LETTER CHI "c=0x03C8", // GREEK SMALL LETTER PSI "v=0x03C9", // GREEK SMALL LETTER OMEGA // //COMBINED GREEK LETTERS WITH DIACRITICS // ";A=0x0386", // GREEK CAPITAL LETTER ALPHA WITH TONOS ";E=0x0388", // GREEK CAPITAL LETTER EPSILON WITH TONOS ";H=0x0389", // GREEK CAPITAL LETTER ETA WITH TONOS ";I=0x038A", // GREEK CAPITAL LETTER IOTA WITH TONOS ";O=0x038C", // GREEK CAPITAL LETTER OMICRON WITH TONOS ";Y=0x038E", // GREEK CAPITAL LETTER UPSILON WITH TONOS ";V=0x038F", // GREEK CAPITAL LETTER OMEGA WITH TONOS ":;i=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS ";:i=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS ":I=0x03AA", // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA ":Y=0x03AB", // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA ";a=0x03AC", // GREEK SMALL LETTER ALPHA WITH TONOS ";e=0x03AD", // GREEK SMALL LETTER EPSILON WITH TONOS ";h=0x03AE", // GREEK SMALL LETTER ETA WITH TONOS ";i=0x03AF", // GREEK SMALL LETTER IOTA WITH TONOS ":;y=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS ";:y=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS ":i=0x03CA", // GREEK SMALL LETTER IOTA WITH DIALYTIKA ":y=0x03CB", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA ";o=0x03CC", // GREEK SMALL LETTER OMICRON WITH TONOS ";y=0x03CD", // GREEK SMALL LETTER UPSILON WITH TONOS ";v=0x03CE", // GREEK SMALL LETTER OMEGA WITH TONOS // APPENDIX A - ALTERNATIVE INPUT COMBINATIONS // // The character combinations below are not standard as far as it concerns // order of input. Greek users type diacritics before characters and // DIALYTIKA before TONOS. However, if you are not used to this, you can // replace the standard combinations with those in this Appendix. You can also // keep both, if you find it difficult to type in a certain order; be warned, // however, that this will affect the display of text while you type. My advice // is to ignore the combinations of Appendix A completely. // // ";.=0x0387", // GREEK ANO TELEIA {ALTERNATIVE INPUT} // ";:=0x0385", // GREEK DIALYTIKA TONOS {ALTERNATIVE INPUT} // "A;=0x0386", // GREEK CAPITAL LETTER ALPHA WITH TONOS {ALTERNATIVE INPUT} // "E;=0x0388", // GREEK CAPITAL LETTER EPSILON WITH TONOS {ALTERNATIVE INPUT} // "H;=0x0389", // GREEK CAPITAL LETTER ETA WITH TONOS {ALTERNATIVE INPUT} // "I;=0x038A", // GREEK CAPITAL LETTER IOTA WITH TONOS {ALTERNATIVE INPUT} // "O;=0x038C", // GREEK CAPITAL LETTER OMICRON WITH TONOS {ALTERNATIVE INPUT} // "Y;=0x038E", // GREEK CAPITAL LETTER UPSILON WITH TONOS {ALTERNATIVE INPUT} // "V;=0x038F", // GREEK CAPITAL LETTER OMEGA WITH TONOS {ALTERNATIVE INPUT} // ";:i=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #1} // "i:;=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #2} // "i;:=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #3} // "I:=0x03AA", // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA {ALTERNATIVE INPUT} // "Y:=0x03AB", // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA {ALTERNATIVE INPUT} // "a;=0x03AC", // GREEK SMALL LETTER ALPHA WITH TONOS {ALTERNATIVE INPUT} // "e;=0x03AD", // GREEK SMALL LETTER EPSILON WITH TONOS {ALTERNATIVE INPUT} // "h;=0x03AE", // GREEK SMALL LETTER ETA WITH TONOS {ALTERNATIVE INPUT} // "i;=0x03AF", // GREEK SMALL LETTER IOTA WITH TONOS {ALTERNATIVE INPUT} // ";:y=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #1} // "y:;=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #2} // "y;:=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS {ALTERNATIVE INPUT #3} // "i:=0x03CA", // GREEK SMALL LETTER IOTA WITH DIALYTIKA {ALTERNATIVE INPUT} // "y:=0x03CB", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA {ALTERNATIVE INPUT} // "o;=0x03CC", // GREEK SMALL LETTER OMICRON WITH TONOS {ALTERNATIVE INPUT} // "y;=0x03CD", // GREEK SMALL LETTER UPSILON WITH TONOS {ALTERNATIVE INPUT} // "v;=0x03CE", // GREEK SMALL LETTER OMEGA WITH TONOS {ALTERNATIVE INPUT} // APPENDIX B - UNUSED CHARACTERS // // The following characters are included in the Basic Greek block of the // Unicode standard, but are not used in Greek standard keyboard maps and // codepages nor are they used for writing Modern Greek (monotonic), // except in very special cases (mainly scholarly). To use any or all, please // unremark needed characters and assign to keys arbitrarily. // ";#=0x0374", // GREEK NUMERAL SIGN ";##=0x0375", // GREEK LOWER NUMERAL SIGN // "=0x037A", // GREEK YPOGEGRAMMENI ";b=0x03D0", // GREEK BETA SYMBOL ";u=0x03D1", // GREEK THETA SYMBOL // "=0x03D2", // GREEK UPSILON WITH HOOK SYMBOL // "=0x03D3", // GREEK UPSILON WITH ACUTE AND HOOK SYMBOL // "=0x03D4", // GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL ";f=0x03D5", // GREEK PHI SYMBOL ";p=0x03D6", // GREEK PI SYMBOL "#st=0x03DA", // GREEK LETTER STIGMA "#g=0x03DC", // GREEK LETTER DIGAMMA "#q=0x03DE", // GREEK LETTER KOPPA "#sp=0x03E0", // GREEK LETTER SAMPI ";k=0x03F0", // GREEK KAPPA SYMBOL ";r=0x03F1", // GREEK RHO SYMBOL ";c=0x03F2", // GREEK LUNATE SIGMA SYMBOL // "=0x03F3", // GREEK LETTER YOT ";.=0x0387", // GREEK ANO TELEIA (KDE/kikbd/Xinput standard) "W=0x0387", // GREEK ANO TELEIA (Emacs standard) "'=0x1FBD", // GREEK APOSTROFOS "--=0x2013", // endash "---=0x2014", // emdash ";>=0x00BB", // ";<=0x00AB", // "&&=0x03D7", //Greek kai "D$=0x20AF", //Drachma symbol // "!e=0x03F5", //Lunate epsilon // "!E=0x03F6", //Lunate Epsilon./mytool/kmap/ASCII-IPA.kmap0000644000175000017500000000564307532460064015437 0ustar henrichhenrich// ASCII-IPA.kmap // Autogenerated by ASCII-IPA.pl at Fri, 18 May 2001 20:49:34 -0400 // Hand-modified later the same evening to add some entries, change the // entry for the letter g, and remove the entries for a-z except r, and the // following day the below licensing information was added: // // Copyright 2001 Jimmy Kaplowitz . This kmap file is // released under the GNU General Public License, version 2, dated June 1991, // by the Free Software Foundation. // The entries below were not specified in the ASCII IPA specification, // except for 0x0261, which is an alternate IPA symbol according to Evan // Kirshenbaum. "dz=0x02A3", // LATIN SMALL LETTER DZ DIGRAPH "dZ=0x02A4", // LATIN SMALL LETTER DEZH DIGRAPH "g=0x0261", // LATIN SMALL LETTER SCRIPT G "t!=0x0287", // LATIN SMALL LETTER TURNED T "ts=0x02A6", // LATIN SMALL LETTER TS DIGRAPH "tS=0x02A7", // LATIN SMALL LETTER TESH DIGRAPH // The Unicode characters below weren't specified in the ASCII IPA // specification, but they are the appropriate characters for the meaning // specified in the beginning of the specification for the ASCII characters // ' (apostrophe) and , (comma). "'=0x02C8", // MODIFIER LETTER VERTICAL LINE ",=0x02CC", // MODIFIER LETTER LOW VERTICAL LINE // Everything after here was autogenerated. "r=0x0279", // LATIN SMALL LETTER TURNED R "A=0x0251", // LATIN SMALL LETTER SCRIPT A "B=0x03B2", // GREEK SMALL LETTER BETA "C=0x00E7", // LATIN SMALL LETTER C CEDILLA "D=0x00F0", // LATIN SMALL LETTER ETH "E=0x025B", // LATIN SMALL LETTER EPSILON "G=0x0262", // LATIN LETTER SMALL CAPITAL G "H=0x0127", // LATIN SMALL LETTER H BAR "I=0x026A", // LATIN LETTER SMALL CAPITAL I "J=0x025F", // LATIN SMALL LETTER DOTLESS J BAR "L=0x026B", // LATIN SMALL LETTER L WITH MIDDLE TILDE "M=0x0271", // LATIN SMALL LETTER M HOOK "N=0x014B", // LATIN SMALL LETTER ENG "O=0x0254", // LATIN SMALL LETTER OPEN O "P=0x03A6", // GREEK CAPITAL LETTER PHI "Q=0x0263", // LATIN SMALL LETTER GAMMA "R=0x025A", // LATIN SMALL LETTER SCHWA HOOK "S=0x0283", // LATIN SMALL LETTER ESH "T=0x03B8", // GREEK SMALL LETTER THETA "U=0x028A", // LATIN SMALL LETTER UPSILON "V=0x028C", // LATIN SMALL LETTER TURNED V "W=0x0153", // LATIN SMALL LETTER O E "X=0x03C7", // GREEK SMALL LETTER CHI "Y=0x00F8", // LATIN SMALL LETTER O SLASH "Z=0x0292", // LATIN SMALL LETTER EZH "?=0x0294", // LATIN SMALL LETTER GLOTTAL STOP "@=0x0259", // LATIN SMALL LETTER SCHWA "&=0x00E6", // LATIN SMALL LETTER A E "*=0x027E", // LATIN SMALL LETTER FISHHOOK R "~=0x0303", // NON-SPACING TILDE ":=0x02D0", // MODIFIER LETTER TRIANGULAR COLON "`=0x02BC", // MODIFIER LETTER APOSTROPHE "[=0x032A", // NON-SPACING BRIDGE BELOW ";=0x02B2", // MODIFIER LETTER SMALL J "=0x0334", // NON-SPACING TILDE OVERLAY "=0x02B0", // MODIFIER LETTER SMALL H "=0x02DA", // SPACING RING ABOVE "=0x02B3", // MODIFIER LETTER SMALL R "=0x02B7", // MODIFIER LETTER SMALL W "=0x02B1", // MODIFIER LETTER SMALL H HOOK ./mytool/kmap/ArmenianEast.kmap0000644000175000017500000000317107532460064016541 0ustar henrichhenrich// // Eastern Armenian Phonetic keyboard (Rafi Papazian) // // Mark Leisher // 1998-11-21 // "!=0x0031", // "#=0x0545", // "$=0x0033", // "%=0x0034", // "&=0x0587", // "'=0x0583", // "(=0x0029", // ")=0x0555", // "*=0x0028", // ",=0x0577", // "-=0x057C", // ".=0x0572", // "/=0x056E", // "0x30=0x0585", // "0x31=0x003A", // "0x32=0x0571", // "0x33=0x0575", // "0x34=0x055B", // "0x35=0x002C", // "0x36=0x002D", // "0x37=0x002E", // "0x38=0x00AB", // "0x39=0x00BB", // ":=0x0539", // ";=0x0569", // "<=0x0547", // "0x3D=0x056A", // ">=0x0542", // "?=0x053E", // "@=0x0541", // "A=0x0531", // "B=0x0532", // "C=0x0533", // "D=0x0534", // "E=0x0537", // "F=0x0556", // "G=0x0554", // "H=0x0540", // "I=0x053B", // "J=0x0543", // "K=0x053F", // "L=0x053C", // "M=0x0544", // "N=0x0546", // "O=0x0548", // "P=0x054A", // "Q=0x053D", // "R=0x0550", // "S=0x054D", // "T=0x054F", // "U=0x0538", // "V=0x054E", // "W=0x0552", // "X=0x0551", // "Y=0x0535", // "Z=0x0536", // "[=0x0579", // "\"=0x0553", // "\+=0x053A", // "\\=0x0027", // "]=0x057B", // "^=0x0039", // "_=0x054C", // "`=0x055D", // "a=0x0561", // "b=0x0562", // "c=0x0563", // "d=0x0564", // "e=0x0567", // "f=0x0586", // "g=0x0584", // "h=0x0570", // "i=0x056B", // "j=0x0573", // "k=0x056F", // "l=0x056C", // "m=0x0574", // "n=0x0576", // "o=0x0578", // "p=0x057A", // "q=0x056D", // "r=0x0580", // "s=0x057D", // "t=0x057F", // "u=0x0568", // "v=0x057E", // "w=0x0582", // "x=0x0581", // "y=0x0565", // "z=0x0566", // "{=0x0549", // "|=0x055E", // "}=0x054B", // "~=0x055C", // ./mytool/kmap/Esperanto.kmap0000644000175000017500000000265507532460064016140 0ustar henrichhenrich// Esperanto.kmap input method for Yudit, Gaspar Sinai's Unicode // text editor for the X Window system, created with the help of // http://www.esperanto.net/veb/faq.txt and the output of // recode -lfull latin3 - inspired by Yves Bellefeuille // 1998-04-20 Roman Czyborra // 2001-11-13: Modified by Bertil Wennergren // to work with all-caps typing "Cx=0x0108", // Ĉ = latin capital letter c with circumflex "CX=0x0108", // Ĉ = latin capital letter c with circumflex "Gx=0x011C", // Ĝ = latin capital letter g with circumflex "GX=0x011C", // Ĝ = latin capital letter g with circumflex "Hx=0x0124", // Ĥ = latin capital letter h with circumflex "HX=0x0124", // Ĥ = latin capital letter h with circumflex "Jx=0x0134", // Ĵ = latin capital letter j with circumflex "JX=0x0134", // Ĵ = latin capital letter j with circumflex "Sx=0x015C", // Ŝ = latin capital letter s with circumflex "SX=0x015C", // Ŝ = latin capital letter s with circumflex "Ux=0x016C", // Ŭ = latin capital letter u with breve "UX=0x016C", // Ŭ = latin capital letter u with breve "cx=0x0109", // ĉ = latin small letter c with circumflex "gx=0x011D", // ĝ = latin small letter g with circumflex "hx=0x0125", // ĥ = latin small letter h with circumflex "jx=0x0135", // ĵ = latin small letter j with circumflex "sx=0x015D", // ŝ = latin small letter s with circumflex "ux=0x016D", // ŭ = latin small letter u with breve ./mytool/kmap/Glagolitic.kmap0000644000175000017500000002054710236414624016252 0ustar henrichhenrich// Glagolitic keyboard map file for Yudit // 05.05.2005. Strahinya Radich (mr99164@alas.matf.bg.ac.yu) // Additions and improvements welcome // Sources: // 1. Zvonimir Kulundžić: „Knjiga o knjizi - historija pisama, materijala i // instrumenata za pisanje“, Školska knjiga, Zagreb, 1951. // 2. Петар Ђорђић: „Старословенски језик“, Матица српска, Београд, 1975. // 3. The Unicode Character Database, // http://www.unicode.org/Public/UNIDATA/UnicodeData.txt "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "--=0x2013", // – = EN DASH "---=0x2014", // — = EM DASH "++=0x0482", // = CYRILLIC THOUSANDS SIGN "^~=0x0483", // = COMBINING CYRILLIC TITLO "^)=0x0484", // = COMBINING CYRILLIC PALATALIZATION "^`=0x0300", // = COMBINING GRAVE ACCENT "^^=0x0311", // = COMBINING INVERTED BREVE "^(=0x0488", // = COMBINING CYRILLIC HUNDRED THOUSANDS SIGN "^,=0x0489", // = COMBINING CYRILLIC MILLIONS SIGN "^|=0x033E", // = COMBINING VERTICAL TILDE // Some numbers: "^.=0x00B7", // (num. start) = MIDDLE DOT "0x31=0x2C30 0x0483", // 1 "0x32=0x2C31 0x0483", // 2 "0x33=0x2C32 0x0483", // 3 "0x34=0x2C33 0x0483", // 4 "0x35=0x2C34 0x0483", // 5 "0x36=0x2C35 0x0483", // 6 "0x37=0x2C36 0x0483", // 7 "0x38=0x2C37 0x0483", // 8 "0x39=0x2C38 0x0483", // 9 "0x31 0x30=0x2C39 0x0483", // 10 "0x32 0x30=0x2C3B 0x0483", // 20 "0x33 0x30=0x2C3C 0x0483", // 30 "0x34 0x30=0x2C3D 0x0483", // 40 "0x35 0x30=0x2C3E 0x0483", // 50 "0x36 0x30=0x2C3F 0x0483", // 60 "0x37 0x30=0x2C40 0x0483", // 70 "0x38 0x30=0x2C41 0x0483", // 80 "0x39 0x30=0x2C42 0x0483", // 90 "0x31 0x30 0x30=0x2C43 0x0483", // 100 "0x32 0x30 0x30=0x2C44 0x0483", // 200 "0x33 0x30 0x30=0x2C45 0x0483", // 300 "0x34 0x30 0x30=0x2C46 0x0483", // 400 "0x35 0x30 0x30=0x2C47 0x0483", // 500 "0x36 0x30 0x30=0x2C48 0x0483", // 600 "0x37 0x30 0x30=0x2C49 0x0483", // 700 "0x38 0x30 0x30=0x2C4B 0x0483", // 800 "0x39 0x30 0x30=0x2C4C 0x0483", // 900 "0x31 0x30 0x30 0x30=0x2C4D 0x0483", // 1000 // The Capital letters: "A =0x2C00", // AZ~H = GLAGOLITIC CAPITAL LETTER AZU "B =0x2C01", // BOUK~HI = GLAGOLITIC CAPITAL LETTER BUKY "V =0x2C02", // VE # on 2001-03-05 # Revision: 1.2 # vowels are mapped to \0, \1, \2, .. \9 "q=0x002F", // SOLIDUS "w=0x0027", // APOSTROPHE "e=0x05E7", // HEBREW LETTER QOF "r=0x05E8", // HEBREW LETTER RESH "t=0x05D0", // HEBREW LETTER ALEF "y=0x05D8", // HEBREW LETTER TET "u=0x05D5", // HEBREW LETTER VAV "i=0x05DF", // HEBREW LETTER FINAL NUN "o=0x05DD", // HEBREW LETTER FINAL MEM "p=0x05E4", // HEBREW LETTER PE "a=0x05E9", // HEBREW LETTER SHIN "s=0x05D3", // HEBREW LETTER DALET "d=0x05D2", // HEBREW LETTER GIMEL "f=0x05DB", // HEBREW LETTER KAF "g=0x05E2", // HEBREW LETTER AYIN "h=0x05D9", // HEBREW LETTER YOD "j=0x05D7", // HEBREW LETTER HET "k=0x05DC", // HEBREW LETTER LAMED "l=0x05DA", // HEBREW LETTER FINAL KAF ";=0x05E3", // HEBREW LETTER FINAL PE "'=0x002C", // COMMA "z=0x05D6", // HEBREW LETTER ZAYIN "x=0x05E1", // HEBREW LETTER SAMEKH "c=0x05D1", // HEBREW LETTER BET "v=0x05D4", // HEBREW LETTER HE "b=0x05E0", // HEBREW LETTER NUN "n=0x05DE", // HEBREW LETTER MEM "m=0x05E6", // HEBREW LETTER TSADI ",=0x05EA", // HEBREW LETTER TAV ".=0x05E5", // HEBREW LETTER FINAL TSADI "/=0x002E", // FULL STOP "`=0x003B", // SEMICOLON "E=0x05E7 0x05BC", // HEBREW LETTER QOF, HEBREW POINT DAGESH OR MAPIQ "R=0x05E8 0x05BC", // HEBREW LETTER RESH, HEBREW POINT DAGESH OR MAPIQ "Y=0x05D8 0x05BC", // HEBREW LETTER TET, HEBREW POINT DAGESH OR MAPIQ "U=0x05D5 0x05BC", // HEBREW LETTER VAV, HEBREW POINT DAGESH OR MAPIQ "I=0x05D5 0x05B9", // HEBREW LETTER VAV, HEBREW POINT HOLAM "P=0x05E4 0x05BC", // HEBREW LETTER PE, HEBREW POINT DAGESH OR MAPIQ "A=0x05E9 0x05BC", // HEBREW LETTER SHIN, HEBREW POINT DAGESH OR MAPIQ "S=0x05D3 0x05BC", // HEBREW LETTER DALET, HEBREW POINT DAGESH OR MAPIQ "D=0x05D2 0x05BC", // HEBREW LETTER GIMEL, HEBREW POINT DAGESH OR MAPIQ "F=0x05DB 0x05BC", // HEBREW LETTER KAF, HEBREW POINT DAGESH OR MAPIQ "H=0x05D9 0x05BC", // HEBREW LETTER YOD, HEBREW POINT DAGESH OR MAPIQ "K=0x05DC 0x05BC", // HEBREW LETTER LAMED, HEBREW POINT DAGESH OR MAPIQ "L=0x05DA 0x05BC", // HEBREW LETTER FINAL KAF, HEBREW POINT DAGESH OR MAPIQ "Z=0x05D6 0x05BC", // HEBREW LETTER ZAYIN, HEBREW POINT DAGESH OR MAPIQ "X=0x05E1 0x05BC", // HEBREW LETTER SAMEKH, HEBREW POINT DAGESH OR MAPIQ "C=0x05D1 0x05BC", // HEBREW LETTER BET, HEBREW POINT DAGESH OR MAPIQ "V=0x05D4 0x05BC", // HEBREW LETTER HE, HEBREW POINT DAGESH OR MAPIQ "B=0x05E0 0x05BC", // HEBREW LETTER NUN, HEBREW POINT DAGESH OR MAPIQ "N=0x05DE 0x05BC", // HEBREW LETTER MEM, HEBREW POINT DAGESH OR MAPIQ "M=0x05E6 0x05BC", // HEBREW LETTER TSADI, HEBREW POINT DAGESH OR MAPIQ "<=0x05EA 0x05BC", // HEBREW LETTER TAV, HEBREW POINT DAGESH OR MAPIQ "0x5C `=0x20AA", // NEW SHEQEL SIGN "0x5C 0x31=0x05B1", // HEBREW POINT HATAF SEGOL "0x5C 0x32=0x05B3", // HEBREW POINT HATAF QAMATS "0x5C 0x33=0x05B2", // HEBREW POINT HATAF PATAH "0x5C 0x34=0x05B6", // HEBREW POINT SEGOL "0x5C 0x35=0x05B5", // HEBREW POINT TSERE "0x5C 0x36=0x05B4", // HEBREW POINT HIRIQ "0x5C 0x37=0x05B0", // HEBREW POINT SHEVA "0x5C 0x38=0x05B8", // HEBREW POINT QAMATS "0x5C 0x39=0x05B7", // HEBREW POINT PATAH "0x5C 0x30=0x05BB", // HEBREW POINT QUBUTS "0x5C -=0x05BE", // HEBREW PUNCTUATION MAQAF "0x5C 0x3D=0x05B9", // HEBREW POINT HOLAM "0x5C [=0x05E9 0x05C2", // HEBREW LETTER SHIN, HEBREW POINT SIN DOT "0x5C ]=0x05E9 0x05C1", // HEBREW LETTER SHIN, HEBREW POINT SHIN DOT "0x5C 0x5C=0x05BD", // HEBREW POINT METEG "0x5C ;=0x05E9 0x05BC 0x05C2", // HEBREW LETTER SHIN, HEBREW POINT DAGESH OR MAPIQ, HEBREW POINT SIN DOT "0x5C '=0x05E9 0x05BC 0x05C1", // HEBREW LETTER SHIN, HEBREW POINT DAGESH OR MAPIQ, HEBREW POINT SHIN DOT "0x5C ,=0x003C", // LESS-THAN SIGN "0x5C .=0x003E", // GREATER-THAN SIGN "0x5C q=0x05BF", // HEBREW POINT RAFE ./mytool/kmap/Azeri.kmap0000644000175000017500000000744707532460064015256 0ustar henrichhenrich// -*-c++-*- // Dutch.kmap for the Unicode editor Yudit // 1998-04-17 Roman Czyborra@cs.tu-berlin.de // The florin currency symbol used for the Dutch guilder and its // prospective successor is the Euro: "EUR;=0x20AC", // € = EURO SIGN // Whenever a vowel pair such as ei eu ie oe must be spoken as two // different sounds, Dutch puts a trema on the second letter: "a:=0x00e4", // ä = LATIN SMALL LETTER A WITH DIAERESIS "e:=0x00eb", // ë = LATIN SMALL LETTER E WITH DIAERESIS "i:=0x00ef", // ï = LATIN SMALL LETTER I WITH DIAERESIS "o:=0x00f6", // ö = LATIN SMALL LETTER O WITH DIAERESIS "u:=0x00fc", // ü = LATIN SMALL LETTER U WITH DIAERESIS "A:=0x00c4", // Ä = LATIN CAPITAL LETTER A WITH DIAERESIS "E:=0x00cb", // Ë = LATIN CAPITAL LETTER E WITH DIAERESIS "I:=0x00cf", // Ï = LATIN CAPITAL LETTER I WITH DIAERESIS "O:=0x00d6", // Ö = LATIN CAPITAL LETTER O WITH DIAERESIS "U:=0x00dc", // Ü = LATIN CAPITAL LETTER U WITH DIAERESIS // Accent aigu is used to mark emphasis on long vowels as in "vóór" "a'=0x00e1", // á = LATIN SMALL LETTER A WITH ACUTE "e'=0x00e9", // é = LATIN SMALL LETTER E WITH ACUTE "i'=0x00ed", // í = LATIN SMALL LETTER I WITH ACUTE "o'=0x00f3", // ó = LATIN SMALL LETTER O WITH ACUTE "u'=0x00fa", // ú = LATIN SMALL LETTER U WITH ACUTE "A'=0x00c1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "E'=0x00c9", // É = LATIN CAPITAL LETTER E WITH ACUTE "I'=0x00cd", // Í = LATIN CAPITAL LETTER I WITH ACUTE "O'=0x00d3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "U'=0x00da", // Ú = LATIN CAPITAL LETTER U WITH ACUTE // Accent grave is used to mark emphasis on short vowels, hè? "a`=0x00e0", // à = LATIN SMALL LETTER A WITH GRAVE "e`=0x00e8", // è = LATIN SMALL LETTER E WITH GRAVE "i`=0x00ec", // ì = LATIN SMALL LETTER I WITH GRAVE "o`=0x00f2", // ò = LATIN SMALL LETTER O WITH GRAVE "u`=0x00f9", // ù = LATIN SMALL LETTER U WITH GRAVE "A`=0x00c0", // À = LATIN CAPITAL LETTER A WITH GRAVE "E`=0x00c8", // È = LATIN CAPITAL LETTER E WITH GRAVE "I`=0x00cc", // Ì = LATIN CAPITAL LETTER I WITH GRAVE "O`=0x00d2", // Ò = LATIN CAPITAL LETTER O WITH GRAVE "U`=0x00d9", // Ù = LATIN CAPITAL LETTER U WITH GRAVE // Dutch contains a lot of French words such as façade, gênant and the // circumflex is also useful for typing the Frisian minority language: "c;=0x00e7", // ç = LATIN SMALL LETTER C WITH CEDILLA "C;=0x00c7", // Ç = LATIN CAPITAL LETTER C WITH CEDILLA "a^=0x00e2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "e^=0x00ea", // ê = LATIN SMALL LETTER E WITH CIRCUMFLEX "i^=0x00ee", // î = LATIN SMALL LETTER I WITH CIRCUMFLEX "o^=0x00f4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "u^=0x00fb", // û = LATIN SMALL LETTER U WITH CIRCUMFLEX "A^=0x00c2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX "E^=0x00ca", // Ê = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "I^=0x00ce", // Î = LATIN CAPITAL LETTER I WITH CIRCUMFLEX "O^=0x00d4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "U^=0x00db", // Û = LATIN CAPITAL LETTER U WITH CIRCUMFLEX // While we're at it, let's follow the example of the Dutch POSIX // locale which uses ISO-8859-9 to cater to the many Turks in the // multicultural Dutch society: "i;=0x0131", // ı = LATIN SMALL LETTER I WITH NO DOT "i.=0x0131", // ı = LATIN SMALL LETTER I WITH NO DOT "I;=0x0130", // İ =LATIN CAPITAL LETTER I WITH DOT ABOVE "s;=0x015f", // ş = LATIN SMALL LETTER S WITH CEDILLA "S;=0x015e", // Ş = LATIN CAPITAL LETTER S WITH CEDILLA "g(=0x011f", // ğ = LATIN SMALL LETTER G WITH BREVE "G(=0x011e", // Ğ = LATIN CAPITAL LETTER G WITH BREVE "g<=0x01e7", // ǧ = LATIN SMALL LETTER G WITH BREVE "G<=0x01e6", // Ǧ = LATIN CAPITAL LETTER G WITH BREVE "g;=0x01e7", // ǧ = LATIN SMALL LETTER G WITH BREVE "G;=0x01e6", // Ǧ = LATIN CAPITAL LETTER G WITH BREVE "a;=0x0259", // ə = LATIN SMALL LETTER SCHWA "A;=0x018f", // Ə = LATIN CAPITAL LETTER SCHWA ./mytool/kmap/Syriac.kmap0000644000175000017500000000360707532460064015430 0ustar henrichhenrich# Syriac kmap # 2002-05-21 by Miikka-Markus.Alhonen@tigatieto.com // Letters "a = 0x0710", "b = 0x0712", "g = 0x0713", "d = 0x0715", "h = 0x0717", "w = 0x0718", "z = 0x0719", "x = 0x071a", "+ = 0x071b", "y = 0x071d", "k = 0x071f", "l = 0x0720", "m = 0x0721", "n = 0x0722", "s = 0x0723", "e = 0x0725", "p = 0x0726", "c = 0x0728", "q = 0x0729", "r = 0x072a", "$ = 0x072b", "t = 0x072c", // Ligatures (Yudit has to interpret them instantly) "r: = 0x072a 0x0308", // Variant forms "YH = 0x071e", // YUDH HE "S = 0x0724", // FINAL SEMKATH "P = 0x0727", // REVERSED PE // Garshuni letters "j = 0x0714", // GAMAL GARSHUNI "J = 0x071c", // TETH GARSHUNI "' = 0x0621", // ARABIC HAMZA // Ancient letters "D = 0x0716", // DOTLESS DALATH RISH // Dotted vowels "u = 0x0718 0x073c", // WAW + ESASA "o = 0x0718 0x073f", // WAW + RWAHA // Greek vowels above "A = 0x0730", // PTHAHA ABOVE (< GREEK ALPHA) "O = 0x0733", // ZQAPHA ABOVE (< GREEK OMIKRON) "E = 0x0736", // RBASA ABOVE (< GREEK EPSILON) "H = 0x073a", // HBASA ABOVE (< GREEK ETA) "U = 0x073d", // ESASA ABOVE (< GREEK YPSILON) // Greek vowels below "A' = 0x0731", // PTHAHA BELOW "O' = 0x0734", // ZQAPHA BELOW "E' = 0x0737", // RBASA BELOW "H' = 0x073b", // HBASA BELOW "U' = 0x073e", // ESASA BELOW // Diacritics "_ = 0x0304", // MACRON = Marhatana, khupaya "_' = 0x0320", // MACRON BELOW = Digit marker (tens of thousands), mhagyana "v = 0x0307", // DOT ABOVE = Digit marker (hundreds), strong vowel "V = 0x0323", // DOT BELOW = weak vowel ": = 0x0308", // DIAERESIS = Seyame, Garshuni teh marbuta, aspirated p "* = 0x0740", // FEMININE DOT "i = 0x0741", // QUSHSHAYA "I = 0x0742", // RUKKAKHA "/ = 0x0747", // OBLIQUE LINE ABOVE = Digit marker (thousands), silent marker // Punctuation ", = 0x060c", // ARABIC COMMA "; = 0x061b", // ARABIC SEMICOLON "? = 0x061f", // ARABIC QUESTION MARK "- = 0x0640", // ARABIC TATWEEL "\\ = 0x0700", // END OF PARAGRAPH ./mytool/kmap/Kannada.kmap0000644000175000017500000005142207670120450015524 0ustar henrichhenrich// Kannada kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-02-17 // 2003-06-04 upgraded to Unicode 4.0 // Consonant + vowel/virama "Ch=0x0c9b 0x0ccd", "Ch.h=0x0c9b 0x0ccd 0x200c", "ChA=0x0c9b 0x0cbe", "ChE=0x0c9b 0x0cc7", "ChI=0x0c9b 0x0cc0", "ChO=0x0c9b 0x0ccb", "ChRRI=0x0c9b 0x0cc4", "ChRRi=0x0c9b 0x0cc3", "ChR^I=0x0c9b 0x0cc4", "ChR^i=0x0c9b 0x0cc3", "ChU=0x0c9b 0x0cc2", "Cha=0x0c9b", "Chaa=0x0c9b 0x0cbe", "Chai=0x0c9b 0x0cc8", "Chau=0x0c9b 0x0ccc", "Che=0x0c9b 0x0cc6", "Chi=0x0c9b 0x0cbf", "Chii=0x0c9b 0x0cc0", "Cho=0x0c9b 0x0cca", "Chu=0x0c9b 0x0cc1", "Chuu=0x0c9b 0x0cc2", "D=0x0ca1 0x0ccd", "D.h=0x0ca1 0x0ccd 0x200c", "DA=0x0ca1 0x0cbe", "DE=0x0ca1 0x0cc7", "DI=0x0ca1 0x0cc0", "DO=0x0ca1 0x0ccb", "DRRI=0x0ca1 0x0cc4", "DRRi=0x0ca1 0x0cc3", "DR^I=0x0ca1 0x0cc4", "DR^i=0x0ca1 0x0cc3", "DU=0x0ca1 0x0cc2", "Da=0x0ca1", "Daa=0x0ca1 0x0cbe", "Dai=0x0ca1 0x0cc8", "Dau=0x0ca1 0x0ccc", "De=0x0ca1 0x0cc6", "Di=0x0ca1 0x0cbf", "Dii=0x0ca1 0x0cc0", "Do=0x0ca1 0x0cca", "Du=0x0ca1 0x0cc1", "Duu=0x0ca1 0x0cc2", "Dh=0x0ca2 0x0ccd", "Dh.h=0x0ca2 0x0ccd 0x200c", "DhA=0x0ca2 0x0cbe", "DhE=0x0ca2 0x0cc7", "DhI=0x0ca2 0x0cc0", "DhO=0x0ca2 0x0ccb", "DhRRI=0x0ca2 0x0cc4", "DhRRi=0x0ca2 0x0cc3", "DhR^I=0x0ca2 0x0cc4", "DhR^i=0x0ca2 0x0cc3", "DhU=0x0ca2 0x0cc2", "Dha=0x0ca2", "Dhaa=0x0ca2 0x0cbe", "Dhai=0x0ca2 0x0cc8", "Dhau=0x0ca2 0x0ccc", "Dhe=0x0ca2 0x0cc6", "Dhi=0x0ca2 0x0cbf", "Dhii=0x0ca2 0x0cc0", "Dho=0x0ca2 0x0cca", "Dhu=0x0ca2 0x0cc1", "Dhuu=0x0ca2 0x0cc2", "GY=0x0c9c 0x0ccd 0x0c9e 0x0ccd", "GY.h=0x0c9c 0x0ccd 0x0c9e 0x0ccd 0x200c", "GYA=0x0c9c 0x0ccd 0x0c9e 0x0cbe", "GYE=0x0c9c 0x0ccd 0x0c9e 0x0cc7", "GYI=0x0c9c 0x0ccd 0x0c9e 0x0cc0", "GYO=0x0c9c 0x0ccd 0x0c9e 0x0ccb", "GYRRI=0x0c9c 0x0ccd 0x0c9e 0x0cc4", "GYRRi=0x0c9c 0x0ccd 0x0c9e 0x0cc3", "GYR^I=0x0c9c 0x0ccd 0x0c9e 0x0cc4", "GYR^i=0x0c9c 0x0ccd 0x0c9e 0x0cc3", "GYU=0x0c9c 0x0ccd 0x0c9e 0x0cc2", "GYa=0x0c9c 0x0ccd 0x0c9e", "GYaa=0x0c9c 0x0ccd 0x0c9e 0x0cbe", "GYai=0x0c9c 0x0ccd 0x0c9e 0x0cc8", "GYau=0x0c9c 0x0ccd 0x0c9e 0x0ccc", "GYe=0x0c9c 0x0ccd 0x0c9e 0x0cc6", "GYi=0x0c9c 0x0ccd 0x0c9e 0x0cbf", "GYii=0x0c9c 0x0ccd 0x0c9e 0x0cc0", "GYo=0x0c9c 0x0ccd 0x0c9e 0x0cca", "GYu=0x0c9c 0x0ccd 0x0c9e 0x0cc1", "GYuu=0x0c9c 0x0ccd 0x0c9e 0x0cc2", "JN=0x0c9e 0x0ccd", "JN.h=0x0c9e 0x0ccd 0x200c", "JNA=0x0c9e 0x0cbe", "JNE=0x0c9e 0x0cc7", "JNI=0x0c9e 0x0cc0", "JNO=0x0c9e 0x0ccb", "JNRRI=0x0c9e 0x0cc4", "JNRRi=0x0c9e 0x0cc3", "JNR^I=0x0c9e 0x0cc4", "JNR^i=0x0c9e 0x0cc3", "JNU=0x0c9e 0x0cc2", "JNa=0x0c9e", "JNaa=0x0c9e 0x0cbe", "JNai=0x0c9e 0x0cc8", "JNau=0x0c9e 0x0ccc", "JNe=0x0c9e 0x0cc6", "JNi=0x0c9e 0x0cbf", "JNii=0x0c9e 0x0cc0", "JNo=0x0c9e 0x0cca", "JNu=0x0c9e 0x0cc1", "JNuu=0x0c9e 0x0cc2", "L=0x0cb3 0x0ccd", "L.h=0x0cb3 0x0ccd 0x200c", "LA=0x0cb3 0x0cbe", "LE=0x0cb3 0x0cc7", "LI=0x0cb3 0x0cc0", "LO=0x0cb3 0x0ccb", "LRRI=0x0cb3 0x0cc4", "LRRi=0x0cb3 0x0cc3", "LR^I=0x0cb3 0x0cc4", "LR^i=0x0cb3 0x0cc3", "LU=0x0cb3 0x0cc2", "La=0x0cb3", "Laa=0x0cb3 0x0cbe", "Lai=0x0cb3 0x0cc8", "Lau=0x0cb3 0x0ccc", "Le=0x0cb3 0x0cc6", "Li=0x0cb3 0x0cbf", "Lii=0x0cb3 0x0cc0", "Lo=0x0cb3 0x0cca", "Lu=0x0cb3 0x0cc1", "Luu=0x0cb3 0x0cc2", "N=0x0ca3 0x0ccd", "N.h=0x0ca3 0x0ccd 0x200c", "NA=0x0ca3 0x0cbe", "NE=0x0ca3 0x0cc7", "NI=0x0ca3 0x0cc0", "NO=0x0ca3 0x0ccb", "NRRI=0x0ca3 0x0cc4", "NRRi=0x0ca3 0x0cc3", "NR^I=0x0ca3 0x0cc4", "NR^i=0x0ca3 0x0cc3", "NU=0x0ca3 0x0cc2", "Na=0x0ca3", "Naa=0x0ca3 0x0cbe", "Nai=0x0ca3 0x0cc8", "Nau=0x0ca3 0x0ccc", "Ne=0x0ca3 0x0cc6", "Ni=0x0ca3 0x0cbf", "Nii=0x0ca3 0x0cc0", "No=0x0ca3 0x0cca", "Nu=0x0ca3 0x0cc1", "Nuu=0x0ca3 0x0cc2", "N^=0x0c99 0x0ccd", "N^.h=0x0c99 0x0ccd 0x200c", "N^A=0x0c99 0x0cbe", "N^E=0x0c99 0x0cc7", "N^I=0x0c99 0x0cc0", "N^O=0x0c99 0x0ccb", "N^RRI=0x0c99 0x0cc4", "N^RRi=0x0c99 0x0cc3", "N^R^I=0x0c99 0x0cc4", "N^R^i=0x0c99 0x0cc3", "N^U=0x0c99 0x0cc2", "N^a=0x0c99", "N^aa=0x0c99 0x0cbe", "N^ai=0x0c99 0x0cc8", "N^au=0x0c99 0x0ccc", "N^e=0x0c99 0x0cc6", "N^i=0x0c99 0x0cbf", "N^ii=0x0c99 0x0cc0", "N^o=0x0c99 0x0cca", "N^u=0x0c99 0x0cc1", "N^uu=0x0c99 0x0cc2", "R=0x0cb1 0x0ccd", "R.h=0x0cb1 0x0ccd 0x200c", "RA=0x0cb1 0x0cbe", "RE=0x0cb1 0x0cc7", "RI=0x0cb1 0x0cc0", "RO=0x0cb1 0x0ccb", "RRRI=0x0cb1 0x0cc4", "RRRi=0x0cb1 0x0cc3", "RR^I=0x0cb1 0x0cc4", "RR^i=0x0cb1 0x0cc3", "RU=0x0cb1 0x0cc2", "Ra=0x0cb1", "Raa=0x0cb1 0x0cbe", "Rai=0x0cb1 0x0cc8", "Rau=0x0cb1 0x0ccc", "Re=0x0cb1 0x0cc6", "Ri=0x0cb1 0x0cbf", "Rii=0x0cb1 0x0cc0", "Ro=0x0cb1 0x0cca", "Ru=0x0cb1 0x0cc1", "Ruu=0x0cb1 0x0cc2", "Sh=0x0cb7 0x0ccd", "Sh.h=0x0cb7 0x0ccd 0x200c", "ShA=0x0cb7 0x0cbe", "ShE=0x0cb7 0x0cc7", "ShI=0x0cb7 0x0cc0", "ShO=0x0cb7 0x0ccb", "ShRRI=0x0cb7 0x0cc4", "ShRRi=0x0cb7 0x0cc3", "ShR^I=0x0cb7 0x0cc4", "ShR^i=0x0cb7 0x0cc3", "ShU=0x0cb7 0x0cc2", "Sha=0x0cb7", "Shaa=0x0cb7 0x0cbe", "Shai=0x0cb7 0x0cc8", "Shau=0x0cb7 0x0ccc", "She=0x0cb7 0x0cc6", "Shi=0x0cb7 0x0cbf", "Shii=0x0cb7 0x0cc0", "Sho=0x0cb7 0x0cca", "Shu=0x0cb7 0x0cc1", "Shuu=0x0cb7 0x0cc2", "T=0x0c9f 0x0ccd", "T.h=0x0c9f 0x0ccd 0x200c", "TA=0x0c9f 0x0cbe", "TE=0x0c9f 0x0cc7", "TI=0x0c9f 0x0cc0", "TO=0x0c9f 0x0ccb", "TRRI=0x0c9f 0x0cc4", "TRRi=0x0c9f 0x0cc3", "TR^I=0x0c9f 0x0cc4", "TR^i=0x0c9f 0x0cc3", "TU=0x0c9f 0x0cc2", "Ta=0x0c9f", "Taa=0x0c9f 0x0cbe", "Tai=0x0c9f 0x0cc8", "Tau=0x0c9f 0x0ccc", "Te=0x0c9f 0x0cc6", "Ti=0x0c9f 0x0cbf", "Tii=0x0c9f 0x0cc0", "To=0x0c9f 0x0cca", "Tu=0x0c9f 0x0cc1", "Tuu=0x0c9f 0x0cc2", "Th=0x0ca0 0x0ccd", "Th.h=0x0ca0 0x0ccd 0x200c", "ThA=0x0ca0 0x0cbe", "ThE=0x0ca0 0x0cc7", "ThI=0x0ca0 0x0cc0", "ThO=0x0ca0 0x0ccb", "ThRRI=0x0ca0 0x0cc4", "ThRRi=0x0ca0 0x0cc3", "ThR^I=0x0ca0 0x0cc4", "ThR^i=0x0ca0 0x0cc3", "ThU=0x0ca0 0x0cc2", "Tha=0x0ca0", "Thaa=0x0ca0 0x0cbe", "Thai=0x0ca0 0x0cc8", "Thau=0x0ca0 0x0ccc", "The=0x0ca0 0x0cc6", "Thi=0x0ca0 0x0cbf", "Thii=0x0ca0 0x0cc0", "Tho=0x0ca0 0x0cca", "Thu=0x0ca0 0x0cc1", "Thuu=0x0ca0 0x0cc2", "b=0x0cac 0x0ccd", "b.h=0x0cac 0x0ccd 0x200c", "bA=0x0cac 0x0cbe", "bE=0x0cac 0x0cc7", "bI=0x0cac 0x0cc0", "bO=0x0cac 0x0ccb", "bRRI=0x0cac 0x0cc4", "bRRi=0x0cac 0x0cc3", "bR^I=0x0cac 0x0cc4", "bR^i=0x0cac 0x0cc3", "bU=0x0cac 0x0cc2", "ba=0x0cac", "baa=0x0cac 0x0cbe", "bai=0x0cac 0x0cc8", "bau=0x0cac 0x0ccc", "be=0x0cac 0x0cc6", "bi=0x0cac 0x0cbf", "bii=0x0cac 0x0cc0", "bo=0x0cac 0x0cca", "bu=0x0cac 0x0cc1", "buu=0x0cac 0x0cc2", "bh=0x0cad 0x0ccd", "bh.h=0x0cad 0x0ccd 0x200c", "bhA=0x0cad 0x0cbe", "bhE=0x0cad 0x0cc7", "bhI=0x0cad 0x0cc0", "bhO=0x0cad 0x0ccb", "bhRRI=0x0cad 0x0cc4", "bhRRi=0x0cad 0x0cc3", "bhR^I=0x0cad 0x0cc4", "bhR^i=0x0cad 0x0cc3", "bhU=0x0cad 0x0cc2", "bha=0x0cad", "bhaa=0x0cad 0x0cbe", "bhai=0x0cad 0x0cc8", "bhau=0x0cad 0x0ccc", "bhe=0x0cad 0x0cc6", "bhi=0x0cad 0x0cbf", "bhii=0x0cad 0x0cc0", "bho=0x0cad 0x0cca", "bhu=0x0cad 0x0cc1", "bhuu=0x0cad 0x0cc2", "c=0x0c9a 0x0ccd", "c.h=0x0c9a 0x0ccd 0x200c", "cA=0x0c9a 0x0cbe", "cE=0x0c9a 0x0cc7", "cI=0x0c9a 0x0cc0", "cO=0x0c9a 0x0ccb", "cRRI=0x0c9a 0x0cc4", "cRRi=0x0c9a 0x0cc3", "cR^I=0x0c9a 0x0cc4", "cR^i=0x0c9a 0x0cc3", "cU=0x0c9a 0x0cc2", "ca=0x0c9a", "caa=0x0c9a 0x0cbe", "cai=0x0c9a 0x0cc8", "cau=0x0c9a 0x0ccc", "ce=0x0c9a 0x0cc6", "ci=0x0c9a 0x0cbf", "cii=0x0c9a 0x0cc0", "co=0x0c9a 0x0cca", "cu=0x0c9a 0x0cc1", "cuu=0x0c9a 0x0cc2", "ch=0x0c9a 0x0ccd", "ch.h=0x0c9a 0x0ccd 0x200c", "chA=0x0c9a 0x0cbe", "chE=0x0c9a 0x0cc7", "chI=0x0c9a 0x0cc0", "chO=0x0c9a 0x0ccb", "chRRI=0x0c9a 0x0cc4", "chRRi=0x0c9a 0x0cc3", "chR^I=0x0c9a 0x0cc4", "chR^i=0x0c9a 0x0cc3", "chU=0x0c9a 0x0cc2", "cha=0x0c9a", "chaa=0x0c9a 0x0cbe", "chai=0x0c9a 0x0cc8", "chau=0x0c9a 0x0ccc", "che=0x0c9a 0x0cc6", "chi=0x0c9a 0x0cbf", "chii=0x0c9a 0x0cc0", "cho=0x0c9a 0x0cca", "chu=0x0c9a 0x0cc1", "chuu=0x0c9a 0x0cc2", "chh=0x0c9b 0x0ccd", "chh.h=0x0c9b 0x0ccd 0x200c", "chhA=0x0c9b 0x0cbe", "chhE=0x0c9b 0x0cc7", "chhI=0x0c9b 0x0cc0", "chhO=0x0c9b 0x0ccb", "chhRRI=0x0c9b 0x0cc4", "chhRRi=0x0c9b 0x0cc3", "chhR^I=0x0c9b 0x0cc4", "chhR^i=0x0c9b 0x0cc3", "chhU=0x0c9b 0x0cc2", "chha=0x0c9b", "chhaa=0x0c9b 0x0cbe", "chhai=0x0c9b 0x0cc8", "chhau=0x0c9b 0x0ccc", "chhe=0x0c9b 0x0cc6", "chhi=0x0c9b 0x0cbf", "chhii=0x0c9b 0x0cc0", "chho=0x0c9b 0x0cca", "chhu=0x0c9b 0x0cc1", "chhuu=0x0c9b 0x0cc2", "d=0x0ca6 0x0ccd", "d.h=0x0ca6 0x0ccd 0x200c", "dA=0x0ca6 0x0cbe", "dE=0x0ca6 0x0cc7", "dI=0x0ca6 0x0cc0", "dO=0x0ca6 0x0ccb", "dRRI=0x0ca6 0x0cc4", "dRRi=0x0ca6 0x0cc3", "dR^I=0x0ca6 0x0cc4", "dR^i=0x0ca6 0x0cc3", "dU=0x0ca6 0x0cc2", "da=0x0ca6", "daa=0x0ca6 0x0cbe", "dai=0x0ca6 0x0cc8", "dau=0x0ca6 0x0ccc", "de=0x0ca6 0x0cc6", "di=0x0ca6 0x0cbf", "dii=0x0ca6 0x0cc0", "do=0x0ca6 0x0cca", "du=0x0ca6 0x0cc1", "duu=0x0ca6 0x0cc2", "dh=0x0ca7 0x0ccd", "dh.h=0x0ca7 0x0ccd 0x200c", "dhA=0x0ca7 0x0cbe", "dhE=0x0ca7 0x0cc7", "dhI=0x0ca7 0x0cc0", "dhO=0x0ca7 0x0ccb", "dhRRI=0x0ca7 0x0cc4", "dhRRi=0x0ca7 0x0cc3", "dhR^I=0x0ca7 0x0cc4", "dhR^i=0x0ca7 0x0cc3", "dhU=0x0ca7 0x0cc2", "dha=0x0ca7", "dhaa=0x0ca7 0x0cbe", "dhai=0x0ca7 0x0cc8", "dhau=0x0ca7 0x0ccc", "dhe=0x0ca7 0x0cc6", "dhi=0x0ca7 0x0cbf", "dhii=0x0ca7 0x0cc0", "dho=0x0ca7 0x0cca", "dhu=0x0ca7 0x0cc1", "dhuu=0x0ca7 0x0cc2", "dny=0x0c9c 0x0ccd 0x0c9e 0x0ccd", "dny.h=0x0c9c 0x0ccd 0x0c9e 0x0ccd 0x200c", "dnyA=0x0c9c 0x0ccd 0x0c9e 0x0cbe", "dnyE=0x0c9c 0x0ccd 0x0c9e 0x0cc7", "dnyI=0x0c9c 0x0ccd 0x0c9e 0x0cc0", "dnyO=0x0c9c 0x0ccd 0x0c9e 0x0ccb", "dnyRRI=0x0c9c 0x0ccd 0x0c9e 0x0cc4", "dnyRRi=0x0c9c 0x0ccd 0x0c9e 0x0cc3", "dnyR^I=0x0c9c 0x0ccd 0x0c9e 0x0cc4", "dnyR^i=0x0c9c 0x0ccd 0x0c9e 0x0cc3", "dnyU=0x0c9c 0x0ccd 0x0c9e 0x0cc2", "dnya=0x0c9c 0x0ccd 0x0c9e", "dnyaa=0x0c9c 0x0ccd 0x0c9e 0x0cbe", "dnyai=0x0c9c 0x0ccd 0x0c9e 0x0cc8", "dnyau=0x0c9c 0x0ccd 0x0c9e 0x0ccc", "dnye=0x0c9c 0x0ccd 0x0c9e 0x0cc6", "dnyi=0x0c9c 0x0ccd 0x0c9e 0x0cbf", "dnyii=0x0c9c 0x0ccd 0x0c9e 0x0cc0", "dnyo=0x0c9c 0x0ccd 0x0c9e 0x0cca", "dnyu=0x0c9c 0x0ccd 0x0c9e 0x0cc1", "dnyuu=0x0c9c 0x0ccd 0x0c9e 0x0cc2", "g=0x0c97 0x0ccd", "g.h=0x0c97 0x0ccd 0x200c", "gA=0x0c97 0x0cbe", "gE=0x0c97 0x0cc7", "gI=0x0c97 0x0cc0", "gO=0x0c97 0x0ccb", "gRRI=0x0c97 0x0cc4", "gRRi=0x0c97 0x0cc3", "gR^I=0x0c97 0x0cc4", "gR^i=0x0c97 0x0cc3", "gU=0x0c97 0x0cc2", "ga=0x0c97", "gaa=0x0c97 0x0cbe", "gai=0x0c97 0x0cc8", "gau=0x0c97 0x0ccc", "ge=0x0c97 0x0cc6", "gi=0x0c97 0x0cbf", "gii=0x0c97 0x0cc0", "go=0x0c97 0x0cca", "gu=0x0c97 0x0cc1", "guu=0x0c97 0x0cc2", "gh=0x0c98 0x0ccd", "gh.h=0x0c98 0x0ccd 0x200c", "ghA=0x0c98 0x0cbe", "ghE=0x0c98 0x0cc7", "ghI=0x0c98 0x0cc0", "ghO=0x0c98 0x0ccb", "ghRRI=0x0c98 0x0cc4", "ghRRi=0x0c98 0x0cc3", "ghR^I=0x0c98 0x0cc4", "ghR^i=0x0c98 0x0cc3", "ghU=0x0c98 0x0cc2", "gha=0x0c98", "ghaa=0x0c98 0x0cbe", "ghai=0x0c98 0x0cc8", "ghau=0x0c98 0x0ccc", "ghe=0x0c98 0x0cc6", "ghi=0x0c98 0x0cbf", "ghii=0x0c98 0x0cc0", "gho=0x0c98 0x0cca", "ghu=0x0c98 0x0cc1", "ghuu=0x0c98 0x0cc2", "h=0x0cb9 0x0ccd", "h.h=0x0cb9 0x0ccd 0x200c", "hA=0x0cb9 0x0cbe", "hE=0x0cb9 0x0cc7", "hI=0x0cb9 0x0cc0", "hO=0x0cb9 0x0ccb", "hRRI=0x0cb9 0x0cc4", "hRRi=0x0cb9 0x0cc3", "hR^I=0x0cb9 0x0cc4", "hR^i=0x0cb9 0x0cc3", "hU=0x0cb9 0x0cc2", "ha=0x0cb9", "haa=0x0cb9 0x0cbe", "hai=0x0cb9 0x0cc8", "hau=0x0cb9 0x0ccc", "he=0x0cb9 0x0cc6", "hi=0x0cb9 0x0cbf", "hii=0x0cb9 0x0cc0", "ho=0x0cb9 0x0cca", "hu=0x0cb9 0x0cc1", "huu=0x0cb9 0x0cc2", "j=0x0c9c 0x0ccd", "j.h=0x0c9c 0x0ccd 0x200c", "jA=0x0c9c 0x0cbe", "jE=0x0c9c 0x0cc7", "jI=0x0c9c 0x0cc0", "jO=0x0c9c 0x0ccb", "jRRI=0x0c9c 0x0cc4", "jRRi=0x0c9c 0x0cc3", "jR^I=0x0c9c 0x0cc4", "jR^i=0x0c9c 0x0cc3", "jU=0x0c9c 0x0cc2", "ja=0x0c9c", "jaa=0x0c9c 0x0cbe", "jai=0x0c9c 0x0cc8", "jau=0x0c9c 0x0ccc", "je=0x0c9c 0x0cc6", "ji=0x0c9c 0x0cbf", "jii=0x0c9c 0x0cc0", "jo=0x0c9c 0x0cca", "ju=0x0c9c 0x0cc1", "juu=0x0c9c 0x0cc2", "jh=0x0c9d 0x0ccd", "jh.h=0x0c9d 0x0ccd 0x200c", "jhA=0x0c9d 0x0cbe", "jhE=0x0c9d 0x0cc7", "jhI=0x0c9d 0x0cc0", "jhO=0x0c9d 0x0ccb", "jhRRI=0x0c9d 0x0cc4", "jhRRi=0x0c9d 0x0cc3", "jhR^I=0x0c9d 0x0cc4", "jhR^i=0x0c9d 0x0cc3", "jhU=0x0c9d 0x0cc2", "jha=0x0c9d", "jhaa=0x0c9d 0x0cbe", "jhai=0x0c9d 0x0cc8", "jhau=0x0c9d 0x0ccc", "jhe=0x0c9d 0x0cc6", "jhi=0x0c9d 0x0cbf", "jhii=0x0c9d 0x0cc0", "jho=0x0c9d 0x0cca", "jhu=0x0c9d 0x0cc1", "jhuu=0x0c9d 0x0cc2", "k=0x0c95 0x0ccd", "k.h=0x0c95 0x0ccd 0x200c", "kA=0x0c95 0x0cbe", "kE=0x0c95 0x0cc7", "kI=0x0c95 0x0cc0", "kO=0x0c95 0x0ccb", "kRRI=0x0c95 0x0cc4", "kRRi=0x0c95 0x0cc3", "kR^I=0x0c95 0x0cc4", "kR^i=0x0c95 0x0cc3", "kU=0x0c95 0x0cc2", "ka=0x0c95", "kaa=0x0c95 0x0cbe", "kai=0x0c95 0x0cc8", "kau=0x0c95 0x0ccc", "ke=0x0c95 0x0cc6", "ki=0x0c95 0x0cbf", "kii=0x0c95 0x0cc0", "ko=0x0c95 0x0cca", "ku=0x0c95 0x0cc1", "kuu=0x0c95 0x0cc2", "kh=0x0c96 0x0ccd", "kh.h=0x0c96 0x0ccd 0x200c", "khA=0x0c96 0x0cbe", "khE=0x0c96 0x0cc7", "khI=0x0c96 0x0cc0", "khO=0x0c96 0x0ccb", "khRRI=0x0c96 0x0cc4", "khRRi=0x0c96 0x0cc3", "khR^I=0x0c96 0x0cc4", "khR^i=0x0c96 0x0cc3", "khU=0x0c96 0x0cc2", "kha=0x0c96", "khaa=0x0c96 0x0cbe", "khai=0x0c96 0x0cc8", "khau=0x0c96 0x0ccc", "khe=0x0c96 0x0cc6", "khi=0x0c96 0x0cbf", "khii=0x0c96 0x0cc0", "kho=0x0c96 0x0cca", "khu=0x0c96 0x0cc1", "khuu=0x0c96 0x0cc2", "l=0x0cb2 0x0ccd", "l.h=0x0cb2 0x0ccd 0x200c", "lA=0x0cb2 0x0cbe", "lE=0x0cb2 0x0cc7", "lI=0x0cb2 0x0cc0", "lO=0x0cb2 0x0ccb", "lRRI=0x0cb2 0x0cc4", "lRRi=0x0cb2 0x0cc3", "lR^I=0x0cb2 0x0cc4", "lR^i=0x0cb2 0x0cc3", "lU=0x0cb2 0x0cc2", "la=0x0cb2", "laa=0x0cb2 0x0cbe", "lai=0x0cb2 0x0cc8", "lau=0x0cb2 0x0ccc", "le=0x0cb2 0x0cc6", "li=0x0cb2 0x0cbf", "lii=0x0cb2 0x0cc0", "lo=0x0cb2 0x0cca", "lu=0x0cb2 0x0cc1", "luu=0x0cb2 0x0cc2", "m=0x0cae 0x0ccd", "m.h=0x0cae 0x0ccd 0x200c", "mA=0x0cae 0x0cbe", "mE=0x0cae 0x0cc7", "mI=0x0cae 0x0cc0", "mO=0x0cae 0x0ccb", "mRRI=0x0cae 0x0cc4", "mRRi=0x0cae 0x0cc3", "mR^I=0x0cae 0x0cc4", "mR^i=0x0cae 0x0cc3", "mU=0x0cae 0x0cc2", "ma=0x0cae", "maa=0x0cae 0x0cbe", "mai=0x0cae 0x0cc8", "mau=0x0cae 0x0ccc", "me=0x0cae 0x0cc6", "mi=0x0cae 0x0cbf", "mii=0x0cae 0x0cc0", "mo=0x0cae 0x0cca", "mu=0x0cae 0x0cc1", "muu=0x0cae 0x0cc2", "n=0x0ca8 0x0ccd", "n.h=0x0ca8 0x0ccd 0x200c", "nA=0x0ca8 0x0cbe", "nE=0x0ca8 0x0cc7", "nI=0x0ca8 0x0cc0", "nO=0x0ca8 0x0ccb", "nRRI=0x0ca8 0x0cc4", "nRRi=0x0ca8 0x0cc3", "nR^I=0x0ca8 0x0cc4", "nR^i=0x0ca8 0x0cc3", "nU=0x0ca8 0x0cc2", "na=0x0ca8", "naa=0x0ca8 0x0cbe", "nai=0x0ca8 0x0cc8", "nau=0x0ca8 0x0ccc", "ne=0x0ca8 0x0cc6", "ni=0x0ca8 0x0cbf", "nii=0x0ca8 0x0cc0", "no=0x0ca8 0x0cca", "nu=0x0ca8 0x0cc1", "nuu=0x0ca8 0x0cc2", "p=0x0caa 0x0ccd", "p.h=0x0caa 0x0ccd 0x200c", "pA=0x0caa 0x0cbe", "pE=0x0caa 0x0cc7", "pI=0x0caa 0x0cc0", "pO=0x0caa 0x0ccb", "pRRI=0x0caa 0x0cc4", "pRRi=0x0caa 0x0cc3", "pR^I=0x0caa 0x0cc4", "pR^i=0x0caa 0x0cc3", "pU=0x0caa 0x0cc2", "pa=0x0caa", "paa=0x0caa 0x0cbe", "pai=0x0caa 0x0cc8", "pau=0x0caa 0x0ccc", "pe=0x0caa 0x0cc6", "pi=0x0caa 0x0cbf", "pii=0x0caa 0x0cc0", "po=0x0caa 0x0cca", "pu=0x0caa 0x0cc1", "puu=0x0caa 0x0cc2", "ph=0x0cab 0x0ccd", "ph.h=0x0cab 0x0ccd 0x200c", "phA=0x0cab 0x0cbe", "phE=0x0cab 0x0cc7", "phI=0x0cab 0x0cc0", "phO=0x0cab 0x0ccb", "phRRI=0x0cab 0x0cc4", "phRRi=0x0cab 0x0cc3", "phR^I=0x0cab 0x0cc4", "phR^i=0x0cab 0x0cc3", "phU=0x0cab 0x0cc2", "pha=0x0cab", "phaa=0x0cab 0x0cbe", "phai=0x0cab 0x0cc8", "phau=0x0cab 0x0ccc", "phe=0x0cab 0x0cc6", "phi=0x0cab 0x0cbf", "phii=0x0cab 0x0cc0", "pho=0x0cab 0x0cca", "phu=0x0cab 0x0cc1", "phuu=0x0cab 0x0cc2", "r=0x0cb0 0x0ccd", "r.h=0x0cb0 0x0ccd 0x200c", "rA=0x0cb0 0x0cbe", "rE=0x0cb0 0x0cc7", "rI=0x0cb0 0x0cc0", "rO=0x0cb0 0x0ccb", "rRRI=0x0cb0 0x0cc4", "rRRi=0x0cb0 0x0cc3", "rR^I=0x0cb0 0x0cc4", "rR^i=0x0cb0 0x0cc3", "rU=0x0cb0 0x0cc2", "ra=0x0cb0", "raa=0x0cb0 0x0cbe", "rai=0x0cb0 0x0cc8", "rau=0x0cb0 0x0ccc", "re=0x0cb0 0x0cc6", "ri=0x0cb0 0x0cbf", "rii=0x0cb0 0x0cc0", "ro=0x0cb0 0x0cca", "ru=0x0cb0 0x0cc1", "ruu=0x0cb0 0x0cc2", "s=0x0cb8 0x0ccd", "s.h=0x0cb8 0x0ccd 0x200c", "sA=0x0cb8 0x0cbe", "sE=0x0cb8 0x0cc7", "sI=0x0cb8 0x0cc0", "sO=0x0cb8 0x0ccb", "sRRI=0x0cb8 0x0cc4", "sRRi=0x0cb8 0x0cc3", "sR^I=0x0cb8 0x0cc4", "sR^i=0x0cb8 0x0cc3", "sU=0x0cb8 0x0cc2", "sa=0x0cb8", "saa=0x0cb8 0x0cbe", "sai=0x0cb8 0x0cc8", "sau=0x0cb8 0x0ccc", "se=0x0cb8 0x0cc6", "si=0x0cb8 0x0cbf", "sii=0x0cb8 0x0cc0", "so=0x0cb8 0x0cca", "su=0x0cb8 0x0cc1", "suu=0x0cb8 0x0cc2", "sh=0x0cb6 0x0ccd", "sh.h=0x0cb6 0x0ccd 0x200c", "shA=0x0cb6 0x0cbe", "shE=0x0cb6 0x0cc7", "shI=0x0cb6 0x0cc0", "shO=0x0cb6 0x0ccb", "shRRI=0x0cb6 0x0cc4", "shRRi=0x0cb6 0x0cc3", "shR^I=0x0cb6 0x0cc4", "shR^i=0x0cb6 0x0cc3", "shU=0x0cb6 0x0cc2", "sha=0x0cb6", "shaa=0x0cb6 0x0cbe", "shai=0x0cb6 0x0cc8", "shau=0x0cb6 0x0ccc", "she=0x0cb6 0x0cc6", "shi=0x0cb6 0x0cbf", "shii=0x0cb6 0x0cc0", "sho=0x0cb6 0x0cca", "shu=0x0cb6 0x0cc1", "shuu=0x0cb6 0x0cc2", "shh=0x0cb7 0x0ccd", "shh.h=0x0cb7 0x0ccd 0x200c", "shhA=0x0cb7 0x0cbe", "shhE=0x0cb7 0x0cc7", "shhI=0x0cb7 0x0cc0", "shhO=0x0cb7 0x0ccb", "shhRRI=0x0cb7 0x0cc4", "shhRRi=0x0cb7 0x0cc3", "shhR^I=0x0cb7 0x0cc4", "shhR^i=0x0cb7 0x0cc3", "shhU=0x0cb7 0x0cc2", "shha=0x0cb7", "shhaa=0x0cb7 0x0cbe", "shhai=0x0cb7 0x0cc8", "shhau=0x0cb7 0x0ccc", "shhe=0x0cb7 0x0cc6", "shhi=0x0cb7 0x0cbf", "shhii=0x0cb7 0x0cc0", "shho=0x0cb7 0x0cca", "shhu=0x0cb7 0x0cc1", "shhuu=0x0cb7 0x0cc2", "t=0x0ca4 0x0ccd", "t.h=0x0ca4 0x0ccd 0x200c", "tA=0x0ca4 0x0cbe", "tE=0x0ca4 0x0cc7", "tI=0x0ca4 0x0cc0", "tO=0x0ca4 0x0ccb", "tRRI=0x0ca4 0x0cc4", "tRRi=0x0ca4 0x0cc3", "tR^I=0x0ca4 0x0cc4", "tR^i=0x0ca4 0x0cc3", "tU=0x0ca4 0x0cc2", "ta=0x0ca4", "taa=0x0ca4 0x0cbe", "tai=0x0ca4 0x0cc8", "tau=0x0ca4 0x0ccc", "te=0x0ca4 0x0cc6", "ti=0x0ca4 0x0cbf", "tii=0x0ca4 0x0cc0", "to=0x0ca4 0x0cca", "tu=0x0ca4 0x0cc1", "tuu=0x0ca4 0x0cc2", "th=0x0ca5 0x0ccd", "th.h=0x0ca5 0x0ccd 0x200c", "thA=0x0ca5 0x0cbe", "thE=0x0ca5 0x0cc7", "thI=0x0ca5 0x0cc0", "thO=0x0ca5 0x0ccb", "thRRI=0x0ca5 0x0cc4", "thRRi=0x0ca5 0x0cc3", "thR^I=0x0ca5 0x0cc4", "thR^i=0x0ca5 0x0cc3", "thU=0x0ca5 0x0cc2", "tha=0x0ca5", "thaa=0x0ca5 0x0cbe", "thai=0x0ca5 0x0cc8", "thau=0x0ca5 0x0ccc", "the=0x0ca5 0x0cc6", "thi=0x0ca5 0x0cbf", "thii=0x0ca5 0x0cc0", "tho=0x0ca5 0x0cca", "thu=0x0ca5 0x0cc1", "thuu=0x0ca5 0x0cc2", "v=0x0cb5 0x0ccd", "v.h=0x0cb5 0x0ccd 0x200c", "vA=0x0cb5 0x0cbe", "vE=0x0cb5 0x0cc7", "vI=0x0cb5 0x0cc0", "vO=0x0cb5 0x0ccb", "vRRI=0x0cb5 0x0cc4", "vRRi=0x0cb5 0x0cc3", "vR^I=0x0cb5 0x0cc4", "vR^i=0x0cb5 0x0cc3", "vU=0x0cb5 0x0cc2", "va=0x0cb5", "vaa=0x0cb5 0x0cbe", "vai=0x0cb5 0x0cc8", "vau=0x0cb5 0x0ccc", "ve=0x0cb5 0x0cc6", "vi=0x0cb5 0x0cbf", "vii=0x0cb5 0x0cc0", "vo=0x0cb5 0x0cca", "vu=0x0cb5 0x0cc1", "vuu=0x0cb5 0x0cc2", "w=0x0cb5 0x0ccd", "w.h=0x0cb5 0x0ccd 0x200c", "wA=0x0cb5 0x0cbe", "wE=0x0cb5 0x0cc7", "wI=0x0cb5 0x0cc0", "wO=0x0cb5 0x0ccb", "wRRI=0x0cb5 0x0cc4", "wRRi=0x0cb5 0x0cc3", "wR^I=0x0cb5 0x0cc4", "wR^i=0x0cb5 0x0cc3", "wU=0x0cb5 0x0cc2", "wa=0x0cb5", "waa=0x0cb5 0x0cbe", "wai=0x0cb5 0x0cc8", "wau=0x0cb5 0x0ccc", "we=0x0cb5 0x0cc6", "wi=0x0cb5 0x0cbf", "wii=0x0cb5 0x0cc0", "wo=0x0cb5 0x0cca", "wu=0x0cb5 0x0cc1", "wuu=0x0cb5 0x0cc2", "x=0x0c95 0x0ccd 0x0cb7 0x0ccd", "x.h=0x0c95 0x0ccd 0x0cb7 0x0ccd 0x200c", "xA=0x0c95 0x0ccd 0x0cb7 0x0cbe", "xE=0x0c95 0x0ccd 0x0cb7 0x0cc7", "xI=0x0c95 0x0ccd 0x0cb7 0x0cc0", "xO=0x0c95 0x0ccd 0x0cb7 0x0ccb", "xRRI=0x0c95 0x0ccd 0x0cb7 0x0cc4", "xRRi=0x0c95 0x0ccd 0x0cb7 0x0cc3", "xR^I=0x0c95 0x0ccd 0x0cb7 0x0cc4", "xR^i=0x0c95 0x0ccd 0x0cb7 0x0cc3", "xU=0x0c95 0x0ccd 0x0cb7 0x0cc2", "xa=0x0c95 0x0ccd 0x0cb7", "xaa=0x0c95 0x0ccd 0x0cb7 0x0cbe", "xai=0x0c95 0x0ccd 0x0cb7 0x0cc8", "xau=0x0c95 0x0ccd 0x0cb7 0x0ccc", "xe=0x0c95 0x0ccd 0x0cb7 0x0cc6", "xi=0x0c95 0x0ccd 0x0cb7 0x0cbf", "xii=0x0c95 0x0ccd 0x0cb7 0x0cc0", "xo=0x0c95 0x0ccd 0x0cb7 0x0cca", "xu=0x0c95 0x0ccd 0x0cb7 0x0cc1", "xuu=0x0c95 0x0ccd 0x0cb7 0x0cc2", "y=0x0caf 0x0ccd", "y.h=0x0caf 0x0ccd 0x200c", "yA=0x0caf 0x0cbe", "yE=0x0caf 0x0cc7", "yI=0x0caf 0x0cc0", "yO=0x0caf 0x0ccb", "yRRI=0x0caf 0x0cc4", "yRRi=0x0caf 0x0cc3", "yR^I=0x0caf 0x0cc4", "yR^i=0x0caf 0x0cc3", "yU=0x0caf 0x0cc2", "ya=0x0caf", "yaa=0x0caf 0x0cbe", "yai=0x0caf 0x0cc8", "yau=0x0caf 0x0ccc", "ye=0x0caf 0x0cc6", "yi=0x0caf 0x0cbf", "yii=0x0caf 0x0cc0", "yo=0x0caf 0x0cca", "yu=0x0caf 0x0cc1", "yuu=0x0caf 0x0cc2", "~N=0x0c99 0x0ccd", "~N.h=0x0c99 0x0ccd 0x200c", "~NA=0x0c99 0x0cbe", "~NE=0x0c99 0x0cc7", "~NI=0x0c99 0x0cc0", "~NO=0x0c99 0x0ccb", "~NRRI=0x0c99 0x0cc4", "~NRRi=0x0c99 0x0cc3", "~NR^I=0x0c99 0x0cc4", "~NR^i=0x0c99 0x0cc3", "~NU=0x0c99 0x0cc2", "~Na=0x0c99", "~Naa=0x0c99 0x0cbe", "~Nai=0x0c99 0x0cc8", "~Nau=0x0c99 0x0ccc", "~Ne=0x0c99 0x0cc6", "~Ni=0x0c99 0x0cbf", "~Nii=0x0c99 0x0cc0", "~No=0x0c99 0x0cca", "~Nu=0x0c99 0x0cc1", "~Nuu=0x0c99 0x0cc2", "~n=0x0c9e 0x0ccd", "~n.h=0x0c9e 0x0ccd 0x200c", "~nA=0x0c9e 0x0cbe", "~nE=0x0c9e 0x0cc7", "~nI=0x0c9e 0x0cc0", "~nO=0x0c9e 0x0ccb", "~nRRI=0x0c9e 0x0cc4", "~nRRi=0x0c9e 0x0cc3", "~nR^I=0x0c9e 0x0cc4", "~nR^i=0x0c9e 0x0cc3", "~nU=0x0c9e 0x0cc2", "~na=0x0c9e", "~naa=0x0c9e 0x0cbe", "~nai=0x0c9e 0x0cc8", "~nau=0x0c9e 0x0ccc", "~ne=0x0c9e 0x0cc6", "~ni=0x0c9e 0x0cbf", "~nii=0x0c9e 0x0cc0", "~no=0x0c9e 0x0cca", "~nu=0x0c9e 0x0cc1", "~nuu=0x0c9e 0x0cc2", // Independent vowels "a=0x0c85", "A=0x0c86", "aa=0x0c86", "i=0x0c87", "I=0x0c88", "ii=0x0c88", "u=0x0c89", "U=0x0c8a", "uu=0x0c8a", "R^i=0x0c8b", "RRi=0x0c8b", "L^i=0x0c8c", "LLi=0x0c8c", "e=0x0c8e", "E=0x0c8f", "ai=0x0c90", "o=0x0c92", "O=0x0c93", "au=0x0c94", "R^I=0x0ce0", "RRI=0x0ce0", "L^I=0x0ce1", "LLI=0x0ce1", // Numbers "0x30=0x0ce6", "0x31=0x0ce7", "0x32=0x0ce8", "0x33=0x0ce9", "0x34=0x0cea", "0x35=0x0ceb", "0x36=0x0cec", "0x37=0x0ced", "0x38=0x0cee", "0x39=0x0cef", // Other marks ".n=0x0c82", "M=0x0c82", "H=0x0c83", ".a=0x0cbd", ".h=0x0ccd 0x200c", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Polish-slash.kmap0000644000175000017500000000232010250557160016526 0ustar henrichhenrich// Polish-slash.kmap for the Unicode editor Yudit // 2005-06-05 HS6_06 HS6_06@o2.pl // I modified Polish.kmap by Roman Czyborra // to let use slash "/" as a prefix-key. // Polish-slash is still popular among Polish TeX users. "/A=0x0104", // Ą = LATIN CAPITAL LETTER A WITH OGONEK "/C=0x0106", // Ć = LATIN CAPITAL LETTER C WITH ACUTE "/E=0x0118", // Ę = LATIN CAPITAL LETTER E WITH OGONEK "/L=0x0141", // Ł = LATIN CAPITAL LETTER L WITH STROKE "/N=0x0143", // Ń = LATIN CAPITAL LETTER N WITH ACUTE "/O=0x00d3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "/S=0x015a", // Ś = LATIN CAPITAL LETTER S WITH ACUTE "/X=0x0179", // Ź = LATIN CAPITAL LETTER Z WITH ACUTE "/Z=0x017b", // Ż = LATIN CAPITAL LETTER Z WITH DOT ABOVE "/a=0x0105", // ą = LATIN SMALL LETTER A WITH OGONEK "/c=0x0107", // ć = LATIN SMALL LETTER C WITH ACUTE "/e=0x0119", // ę = LATIN SMALL LETTER E WITH OGONEK "/l=0x0142", // ł = LATIN SMALL LETTER L WITH STROKE "/n=0x0144", // ń = LATIN SMALL LETTER N WITH ACUTE "/o=0x00f3", // ó = LATIN SMALL LETTER O WITH ACUTE "/s=0x015b", // ś = LATIN SMALL LETTER S WITH ACUTE "/x=0x017a", // ź = LATIN SMALL LETTER Z WITH ACUTE "/z=0x017c", // ż = LATIN SMALL LETTER Z WITH DOT ABOVE ./mytool/kmap/Sanskrit.kmap0000644000175000017500000012777407561456456016024 0ustar henrichhenrich// Sanskrit and Prakrit (Devanagari) kmap // Various signs "\"m=0x0901", // DEVANAGARI SIGN CANDRABINDU ".m=0x0902", // DEVANAGARI SIGN ANUSVARA ".h=0x0903", // DEVANAGARI SIGN VISARGA // Independent vowels "a=0x0905", // DEVANAGARI LETTER A "aa=0x0906", // DEVANAGARI LETTER AA "i=0x0907", // DEVANAGARI LETTER I "ii=0x0908", // DEVANAGARI LETTER II "u=0x0909", // DEVANAGARI LETTER U "uu=0x090A", // DEVANAGARI LETTER UU ".r=0x090B", // DEVANAGARI LETTER VOCALIC R ".r.r=0x0960", // DEVANAGARI LETTER VOCALIC RR ".l=0x090C", // DEVANAGARI LETTER VOCALIC L ".l.l=0x0961", // DEVANAGARI LETTER VOCALIC LL "e=0x090F", // DEVANAGARI LETTER E "ai=0x0910", // DEVANAGARI LETTER AI "o=0x0913", // DEVANAGARI LETTER O "au=0x0914", // DEVANAGARI LETTER AU // Independent vowels in hiatus "\"a=0x0905", // DEVANAGARI LETTER A "\"aa=0x0906", // DEVANAGARI LETTER AA "\"i=0x0907", // DEVANAGARI LETTER I "\"ii=0x0908", // DEVANAGARI LETTER II "\"u=0x0909", // DEVANAGARI LETTER U "\"uu=0x090A", // DEVANAGARI LETTER UU "\".r=0x090B", // DEVANAGARI LETTER VOCALIC R "\".r.r=0x0960", // DEVANAGARI LETTER VOCALIC RR "\".l=0x090C", // DEVANAGARI LETTER VOCALIC L "\".l.l=0x0961", // DEVANAGARI LETTER VOCALIC LL "\"e=0x090F", // DEVANAGARI LETTER E "\"ai=0x0910", // DEVANAGARI LETTER AI "\"o=0x0913", // DEVANAGARI LETTER O "\"au=0x0914", // DEVANAGARI LETTER AU // Consonants "ka=0x0915", // DEVANAGARI LETTER KA "kha=0x0916", // DEVANAGARI LETTER KHA "ga=0x0917", // DEVANAGARI LETTER GA "gha=0x0918", // DEVANAGARI LETTER GHA "\"na=0x0919", // DEVANAGARI LETTER NGA "ca=0x091A", // DEVANAGARI LETTER CA "cha=0x091B", // DEVANAGARI LETTER CHA "ja=0x091C", // DEVANAGARI LETTER JA "jha=0x091D", // DEVANAGARI LETTER JHA "~na=0x091E", // DEVANAGARI LETTER NYA ".ta=0x091F", // DEVANAGARI LETTER TTA ".tha=0x0920", // DEVANAGARI LETTER TTHA ".da=0x0921", // DEVANAGARI LETTER DDA ".dha=0x0922", // DEVANAGARI LETTER DDHA ".na=0x0923", // DEVANAGARI LETTER NNA "ta=0x0924", // DEVANAGARI LETTER TA "tha=0x0925", // DEVANAGARI LETTER THA "da=0x0926", // DEVANAGARI LETTER DA "dha=0x0927", // DEVANAGARI LETTER DHA "na=0x0928", // DEVANAGARI LETTER NA "pa=0x092A", // DEVANAGARI LETTER PA "pha=0x092B", // DEVANAGARI LETTER PHA "ba=0x092C", // DEVANAGARI LETTER BA "bha=0x092D", // DEVANAGARI LETTER BHA "ma=0x092E", // DEVANAGARI LETTER MA "ya=0x092F", // DEVANAGARI LETTER YA "ra=0x0930", // DEVANAGARI LETTER RA "la=0x0932", // DEVANAGARI LETTER LA "\"la=0x0933", // DEVANAGARI LETTER LLA "va=0x0935", // DEVANAGARI LETTER VA "\"sa=0x0936", // DEVANAGARI LETTER SHA ".sa=0x0937", // DEVANAGARI LETTER SSA "sa=0x0938", // DEVANAGARI LETTER SA "ha=0x0939", // DEVANAGARI LETTER HA // Consonants with dependent vowel signs or virama "kaa=0x0915 0x093E", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN AA "ki=0x0915 0x093F", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN I "kii=0x0915 0x0940", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN II "ku=0x0915 0x0941", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN U "kuu=0x0915 0x0942", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN UU "k.r=0x0915 0x0943", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC R "k.r.r=0x0915 0x0944", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC RR "k.l=0x0915 0x0962", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC L "k.l.l=0x0915 0x0963", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN VOCALIC LL "ke=0x0915 0x0947", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN E "kai=0x0915 0x0948", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN AI "ko=0x0915 0x094B", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN O "kau=0x0915 0x094C", // DEVANAGARI LETTER KA + DEVANAGARI VOWEL SIGN AU "k=0x0915 0x094D", // DEVANAGARI LETTER KA + DEVANAGARI SIGN VIRAMA "khaa=0x0916 0x093E", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN AA "khi=0x0916 0x093F", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN I "khii=0x0916 0x0940", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN II "khu=0x0916 0x0941", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN U "khuu=0x0916 0x0942", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN UU "kh.r=0x0916 0x0943", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC R "kh.r.r=0x0916 0x0944", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC RR "kh.l=0x0916 0x0962", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC L "kh.l.l=0x0916 0x0963", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN VOCALIC LL "khe=0x0916 0x0947", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN E "khai=0x0916 0x0948", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN AI "kho=0x0916 0x094B", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN O "khau=0x0916 0x094C", // DEVANAGARI LETTER KHA + DEVANAGARI VOWEL SIGN AU "kh=0x0916 0x094D", // DEVANAGARI LETTER KHA + DEVANAGARI SIGN VIRAMA "gaa=0x0917 0x093E", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN AA "gi=0x0917 0x093F", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN I "gii=0x0917 0x0940", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN II "gu=0x0917 0x0941", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN U "guu=0x0917 0x0942", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN UU "g.r=0x0917 0x0943", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC R "g.r.r=0x0917 0x0944", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC RR "g.l=0x0917 0x0962", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC L "g.l.l=0x0917 0x0963", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN VOCALIC LL "ge=0x0917 0x0947", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN E "gai=0x0917 0x0948", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN AI "go=0x0917 0x094B", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN O "gau=0x0917 0x094C", // DEVANAGARI LETTER GA + DEVANAGARI VOWEL SIGN AU "g=0x0917 0x094D", // DEVANAGARI LETTER GA + DEVANAGARI SIGN VIRAMA "ghaa=0x0918 0x093E", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN AA "ghi=0x0918 0x093F", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN I "ghii=0x0918 0x0940", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN II "ghu=0x0918 0x0941", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN U "ghuu=0x0918 0x0942", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN UU "gh.r=0x0918 0x0943", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC R "gh.r.r=0x0918 0x0944", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC RR "gh.l=0x0918 0x0962", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC L "gh.l.l=0x0918 0x0963", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN VOCALIC LL "ghe=0x0918 0x0947", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN E "ghai=0x0918 0x0948", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN AI "gho=0x0918 0x094B", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN O "ghau=0x0918 0x094C", // DEVANAGARI LETTER GHA + DEVANAGARI VOWEL SIGN AU "gh=0x0918 0x094D", // DEVANAGARI LETTER GHA + DEVANAGARI SIGN VIRAMA "\"naa=0x0919 0x093E", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN AA "\"ni=0x0919 0x093F", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN I "\"nii=0x0919 0x0940", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN II "\"nu=0x0919 0x0941", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN U "\"nuu=0x0919 0x0942", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN UU "\"n.r=0x0919 0x0943", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC R "\"n.r.r=0x0919 0x0944", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC RR "\"n.l=0x0919 0x0962", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC L "\"n.l.l=0x0919 0x0963", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN VOCALIC LL "\"ne=0x0919 0x0947", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN E "\"nai=0x0919 0x0948", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN AI "\"no=0x0919 0x094B", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN O "\"nau=0x0919 0x094C", // DEVANAGARI LETTER NGA + DEVANAGARI VOWEL SIGN AU "\"n=0x0919 0x094D", // DEVANAGARI LETTER NGA + DEVANAGARI SIGN VIRAMA "caa=0x091A 0x093E", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN AA "ci=0x091A 0x093F", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN I "cii=0x091A 0x0940", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN II "cu=0x091A 0x0941", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN U "cuu=0x091A 0x0942", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN UU "c.r=0x091A 0x0943", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC R "c.r.r=0x091A 0x0944", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC RR "c.l=0x091A 0x0962", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC L "c.l.l=0x091A 0x0963", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN VOCALIC LL "ce=0x091A 0x0947", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN E "cai=0x091A 0x0948", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN AI "co=0x091A 0x094B", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN O "cau=0x091A 0x094C", // DEVANAGARI LETTER CA + DEVANAGARI VOWEL SIGN AU "c=0x091A 0x094D", // DEVANAGARI LETTER CA + DEVANAGARI SIGN VIRAMA "chaa=0x091B 0x093E", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN AA "chi=0x091B 0x093F", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN I "chii=0x091B 0x0940", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN II "chu=0x091B 0x0941", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN U "chuu=0x091B 0x0942", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN UU "ch.r=0x091B 0x0943", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC R "ch.r.r=0x091B 0x0944", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC RR "ch.l=0x091B 0x0962", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC L "ch.l.l=0x091B 0x0963", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN VOCALIC LL "che=0x091B 0x0947", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN E "chai=0x091B 0x0948", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN AI "cho=0x091B 0x094B", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN O "chau=0x091B 0x094C", // DEVANAGARI LETTER CHA + DEVANAGARI VOWEL SIGN AU "ch=0x091B 0x094D", // DEVANAGARI LETTER CHA + DEVANAGARI SIGN VIRAMA "jaa=0x091C 0x093E", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN AA "ji=0x091C 0x093F", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN I "jii=0x091C 0x0940", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN II "ju=0x091C 0x0941", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN U "juu=0x091C 0x0942", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN UU "j.r=0x091C 0x0943", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC R "j.r.r=0x091C 0x0944", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC RR "j.l=0x091C 0x0962", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC L "j.l.l=0x091C 0x0963", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN VOCALIC LL "je=0x091C 0x0947", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN E "jai=0x091C 0x0948", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN AI "jo=0x091C 0x094B", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN O "jau=0x091C 0x094C", // DEVANAGARI LETTER JA + DEVANAGARI VOWEL SIGN AU "j=0x091C 0x094D", // DEVANAGARI LETTER JA + DEVANAGARI SIGN VIRAMA "jhaa=0x091D 0x093E", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN AA "jhi=0x091D 0x093F", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN I "jhii=0x091D 0x0940", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN II "jhu=0x091D 0x0941", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN U "jhuu=0x091D 0x0942", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN UU "jh.r=0x091D 0x0943", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC R "jh.r.r=0x091D 0x0944", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC RR "jh.l=0x091D 0x0962", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC L "jh.l.l=0x091D 0x0963", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN VOCALIC LL "jhe=0x091D 0x0947", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN E "jhai=0x091D 0x0948", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN AI "jho=0x091D 0x094B", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN O "jhau=0x091D 0x094C", // DEVANAGARI LETTER JHA + DEVANAGARI VOWEL SIGN AU "jh=0x091D 0x094D", // DEVANAGARI LETTER JHA + DEVANAGARI SIGN VIRAMA "~naa=0x091E 0x093E", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN AA "~ni=0x091E 0x093F", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN I "~nii=0x091E 0x0940", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN II "~nu=0x091E 0x0941", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN U "~nuu=0x091E 0x0942", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN UU "~n.r=0x091E 0x0943", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC R "~n.r.r=0x091E 0x0944", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC RR "~n.l=0x091E 0x0962", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC L "~n.l.l=0x091E 0x0963", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN VOCALIC LL "~ne=0x091E 0x0947", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN E "~nai=0x091E 0x0948", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN AI "~no=0x091E 0x094B", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN O "~nau=0x091E 0x094C", // DEVANAGARI LETTER NYA + DEVANAGARI VOWEL SIGN AU "~n=0x091E 0x094D", // DEVANAGARI LETTER NYA + DEVANAGARI SIGN VIRAMA ".taa=0x091F 0x093E", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN AA ".ti=0x091F 0x093F", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN I ".tii=0x091F 0x0940", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN II ".tu=0x091F 0x0941", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN U ".tuu=0x091F 0x0942", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN UU ".t.r=0x091F 0x0943", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC R ".t.r.r=0x091F 0x0944", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC RR ".t.l=0x091F 0x0962", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC L ".t.l.l=0x091F 0x0963", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN VOCALIC LL ".te=0x091F 0x0947", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN E ".tai=0x091F 0x0948", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN AI ".to=0x091F 0x094B", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN O ".tau=0x091F 0x094C", // DEVANAGARI LETTER TTA + DEVANAGARI VOWEL SIGN AU ".t=0x091F 0x094D", // DEVANAGARI LETTER TTA + DEVANAGARI SIGN VIRAMA ".thaa=0x0920 0x093E", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN AA ".thi=0x0920 0x093F", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN I ".thii=0x0920 0x0940", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN II ".thu=0x0920 0x0941", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN U ".thuu=0x0920 0x0942", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN UU ".th.r=0x0920 0x0943", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC R ".th.r.r=0x0920 0x0944", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC RR ".th.l=0x0920 0x0962", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC L ".th.l.l=0x0920 0x0963", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN VOCALIC LL ".the=0x0920 0x0947", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN E ".thai=0x0920 0x0948", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN AI ".tho=0x0920 0x094B", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN O ".thau=0x0920 0x094C", // DEVANAGARI LETTER TTHA + DEVANAGARI VOWEL SIGN AU ".th=0x0920 0x094D", // DEVANAGARI LETTER TTHA + DEVANAGARI SIGN VIRAMA ".daa=0x0921 0x093E", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN AA ".di=0x0921 0x093F", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN I ".dii=0x0921 0x0940", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN II ".du=0x0921 0x0941", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN U ".duu=0x0921 0x0942", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN UU ".d.r=0x0921 0x0943", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC R ".d.r.r=0x0921 0x0944", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC RR ".d.l=0x0921 0x0962", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC L ".d.l.l=0x0921 0x0963", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN VOCALIC LL ".de=0x0921 0x0947", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN E ".dai=0x0921 0x0948", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN AI ".do=0x0921 0x094B", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN O ".dau=0x0921 0x094C", // DEVANAGARI LETTER DDA + DEVANAGARI VOWEL SIGN AU ".d=0x0921 0x094D", // DEVANAGARI LETTER DDA + DEVANAGARI SIGN VIRAMA ".dhaa=0x0922 0x093E", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN AA ".dhi=0x0922 0x093F", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN I ".dhii=0x0922 0x0940", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN II ".dhu=0x0922 0x0941", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN U ".dhuu=0x0922 0x0942", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN UU ".dh.r=0x0922 0x0943", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC R ".dh.r.r=0x0922 0x0944", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC RR ".dh.l=0x0922 0x0962", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC L ".dh.l.l=0x0922 0x0963", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN VOCALIC LL ".dhe=0x0922 0x0947", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN E ".dhai=0x0922 0x0948", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN AI ".dho=0x0922 0x094B", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN O ".dhau=0x0922 0x094C", // DEVANAGARI LETTER DDHA + DEVANAGARI VOWEL SIGN AU ".dh=0x0922 0x094D", // DEVANAGARI LETTER DDHA + DEVANAGARI SIGN VIRAMA ".naa=0x0923 0x093E", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN AA ".ni=0x0923 0x093F", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN I ".nii=0x0923 0x0940", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN II ".nu=0x0923 0x0941", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN U ".nuu=0x0923 0x0942", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN UU ".n.r=0x0923 0x0943", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC R ".n.r.r=0x0923 0x0944", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC RR ".n.l=0x0923 0x0962", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC L ".n.l.l=0x0923 0x0963", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN VOCALIC LL ".ne=0x0923 0x0947", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN E ".nai=0x0923 0x0948", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN AI ".no=0x0923 0x094B", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN O ".nau=0x0923 0x094C", // DEVANAGARI LETTER NNA + DEVANAGARI VOWEL SIGN AU ".n=0x0923 0x094D", // DEVANAGARI LETTER NNA + DEVANAGARI SIGN VIRAMA "taa=0x0924 0x093E", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN AA "ti=0x0924 0x093F", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN I "tii=0x0924 0x0940", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN II "tu=0x0924 0x0941", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN U "tuu=0x0924 0x0942", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN UU "t.r=0x0924 0x0943", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC R "t.r.r=0x0924 0x0944", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC RR "t.l=0x0924 0x0962", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC L "t.l.l=0x0924 0x0963", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN VOCALIC LL "te=0x0924 0x0947", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN E "tai=0x0924 0x0948", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN AI "to=0x0924 0x094B", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN O "tau=0x0924 0x094C", // DEVANAGARI LETTER TA + DEVANAGARI VOWEL SIGN AU "t=0x0924 0x094D", // DEVANAGARI LETTER TA + DEVANAGARI SIGN VIRAMA "thaa=0x0925 0x093E", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN AA "thi=0x0925 0x093F", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN I "thii=0x0925 0x0940", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN II "thu=0x0925 0x0941", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN U "thuu=0x0925 0x0942", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN UU "th.r=0x0925 0x0943", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC R "th.r.r=0x0925 0x0944", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC RR "th.l=0x0925 0x0962", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC L "th.l.l=0x0925 0x0963", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN VOCALIC LL "the=0x0925 0x0947", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN E "thai=0x0925 0x0948", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN AI "tho=0x0925 0x094B", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN O "thau=0x0925 0x094C", // DEVANAGARI LETTER THA + DEVANAGARI VOWEL SIGN AU "th=0x0925 0x094D", // DEVANAGARI LETTER THA + DEVANAGARI SIGN VIRAMA "daa=0x0926 0x093E", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN AA "di=0x0926 0x093F", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN I "dii=0x0926 0x0940", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN II "du=0x0926 0x0941", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN U "duu=0x0926 0x0942", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN UU "d.r=0x0926 0x0943", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC R "d.r.r=0x0926 0x0944", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC RR "d.l=0x0926 0x0962", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC L "d.l.l=0x0926 0x0963", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN VOCALIC LL "de=0x0926 0x0947", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN E "dai=0x0926 0x0948", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN AI "do=0x0926 0x094B", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN O "dau=0x0926 0x094C", // DEVANAGARI LETTER DA + DEVANAGARI VOWEL SIGN AU "d=0x0926 0x094D", // DEVANAGARI LETTER DA + DEVANAGARI SIGN VIRAMA "dhaa=0x0927 0x093E", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN AA "dhi=0x0927 0x093F", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN I "dhii=0x0927 0x0940", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN II "dhu=0x0927 0x0941", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN U "dhuu=0x0927 0x0942", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN UU "dh.r=0x0927 0x0943", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC R "dh.r.r=0x0927 0x0944", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC RR "dh.l=0x0927 0x0962", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC L "dh.l.l=0x0927 0x0963", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN VOCALIC LL "dhe=0x0927 0x0947", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN E "dhai=0x0927 0x0948", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN AI "dho=0x0927 0x094B", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN O "dhau=0x0927 0x094C", // DEVANAGARI LETTER DHA + DEVANAGARI VOWEL SIGN AU "dh=0x0927 0x094D", // DEVANAGARI LETTER DHA + DEVANAGARI SIGN VIRAMA "naa=0x0928 0x093E", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN AA "ni=0x0928 0x093F", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN I "nii=0x0928 0x0940", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN II "nu=0x0928 0x0941", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN U "nuu=0x0928 0x0942", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN UU "n.r=0x0928 0x0943", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC R "n.r.r=0x0928 0x0944", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC RR "n.l=0x0928 0x0962", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC L "n.l.l=0x0928 0x0963", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN VOCALIC LL "ne=0x0928 0x0947", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN E "nai=0x0928 0x0948", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN AI "no=0x0928 0x094B", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN O "nau=0x0928 0x094C", // DEVANAGARI LETTER NA + DEVANAGARI VOWEL SIGN AU "n=0x0928 0x094D", // DEVANAGARI LETTER NA + DEVANAGARI SIGN VIRAMA "paa=0x092A 0x093E", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN AA "pi=0x092A 0x093F", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN I "pii=0x092A 0x0940", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN II "pu=0x092A 0x0941", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN U "puu=0x092A 0x0942", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN UU "p.r=0x092A 0x0943", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC R "p.r.r=0x092A 0x0944", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC RR "p.l=0x092A 0x0962", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC L "p.l.l=0x092A 0x0963", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN VOCALIC LL "pe=0x092A 0x0947", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN E "pai=0x092A 0x0948", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN AI "po=0x092A 0x094B", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN O "pau=0x092A 0x094C", // DEVANAGARI LETTER PA + DEVANAGARI VOWEL SIGN AU "p=0x092A 0x094D", // DEVANAGARI LETTER PA + DEVANAGARI SIGN VIRAMA "phaa=0x092B 0x093E", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN AA "phi=0x092B 0x093F", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN I "phii=0x092B 0x0940", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN II "phu=0x092B 0x0941", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN U "phuu=0x092B 0x0942", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN UU "ph.r=0x092B 0x0943", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC R "ph.r.r=0x092B 0x0944", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC RR "ph.l=0x092B 0x0962", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC L "ph.l.l=0x092B 0x0963", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN VOCALIC LL "phe=0x092B 0x0947", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN E "phai=0x092B 0x0948", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN AI "pho=0x092B 0x094B", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN O "phau=0x092B 0x094C", // DEVANAGARI LETTER PHA + DEVANAGARI VOWEL SIGN AU "ph=0x092B 0x094D", // DEVANAGARI LETTER PHA + DEVANAGARI SIGN VIRAMA "baa=0x092C 0x093E", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN AA "bi=0x092C 0x093F", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN I "bii=0x092C 0x0940", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN II "bu=0x092C 0x0941", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN U "buu=0x092C 0x0942", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN UU "b.r=0x092C 0x0943", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC R "b.r.r=0x092C 0x0944", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC RR "b.l=0x092C 0x0962", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC L "b.l.l=0x092C 0x0963", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN VOCALIC LL "be=0x092C 0x0947", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN E "bai=0x092C 0x0948", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN AI "bo=0x092C 0x094B", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN O "bau=0x092C 0x094C", // DEVANAGARI LETTER BA + DEVANAGARI VOWEL SIGN AU "b=0x092C 0x094D", // DEVANAGARI LETTER BA + DEVANAGARI SIGN VIRAMA "bhaa=0x092D 0x093E", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN AA "bhi=0x092D 0x093F", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN I "bhii=0x092D 0x0940", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN II "bhu=0x092D 0x0941", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN U "bhuu=0x092D 0x0942", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN UU "bh.r=0x092D 0x0943", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC R "bh.r.r=0x092D 0x0944", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC RR "bh.l=0x092D 0x0962", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC L "bh.l.l=0x092D 0x0963", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN VOCALIC LL "bhe=0x092D 0x0947", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN E "bhai=0x092D 0x0948", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN AI "bho=0x092D 0x094B", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN O "bhau=0x092D 0x094C", // DEVANAGARI LETTER BHA + DEVANAGARI VOWEL SIGN AU "bh=0x092D 0x094D", // DEVANAGARI LETTER BHA + DEVANAGARI SIGN VIRAMA "maa=0x092E 0x093E", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN AA "mi=0x092E 0x093F", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN I "mii=0x092E 0x0940", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN II "mu=0x092E 0x0941", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN U "muu=0x092E 0x0942", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN UU "m.r=0x092E 0x0943", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC R "m.r.r=0x092E 0x0944", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC RR "m.l=0x092E 0x0962", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC L "m.l.l=0x092E 0x0963", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN VOCALIC LL "me=0x092E 0x0947", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN E "mai=0x092E 0x0948", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN AI "mo=0x092E 0x094B", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN O "mau=0x092E 0x094C", // DEVANAGARI LETTER MA + DEVANAGARI VOWEL SIGN AU "m=0x092E 0x094D", // DEVANAGARI LETTER MA + DEVANAGARI SIGN VIRAMA "yaa=0x092F 0x093E", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN AA "yi=0x092F 0x093F", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN I "yii=0x092F 0x0940", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN II "yu=0x092F 0x0941", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN U "yuu=0x092F 0x0942", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN UU "y.r=0x092F 0x0943", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC R "y.r.r=0x092F 0x0944", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC RR "y.l=0x092F 0x0962", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC L "y.l.l=0x092F 0x0963", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN VOCALIC LL "ye=0x092F 0x0947", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN E "yai=0x092F 0x0948", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN AI "yo=0x092F 0x094B", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN O "yau=0x092F 0x094C", // DEVANAGARI LETTER YA + DEVANAGARI VOWEL SIGN AU "y=0x092F 0x094D", // DEVANAGARI LETTER YA + DEVANAGARI SIGN VIRAMA "raa=0x0930 0x093E", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN AA "ri=0x0930 0x093F", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN I "rii=0x0930 0x0940", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN II "ru=0x0930 0x0941", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN U "ruu=0x0930 0x0942", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN UU "r.r=0x0930 0x0943", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC R "r.r.r=0x0930 0x0944", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC RR "r.l=0x0930 0x0962", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC L "r.l.l=0x0930 0x0963", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN VOCALIC LL "re=0x0930 0x0947", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN E "rai=0x0930 0x0948", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN AI "ro=0x0930 0x094B", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN O "rau=0x0930 0x094C", // DEVANAGARI LETTER RA + DEVANAGARI VOWEL SIGN AU "r=0x0930 0x094D", // DEVANAGARI LETTER RA + DEVANAGARI SIGN VIRAMA "laa=0x0932 0x093E", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN AA "li=0x0932 0x093F", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN I "lii=0x0932 0x0940", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN II "lu=0x0932 0x0941", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN U "luu=0x0932 0x0942", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN UU "l.r=0x0932 0x0943", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC R "l.r.r=0x0932 0x0944", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC RR "l.l=0x0932 0x0962", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC L "l.l.l=0x0932 0x0963", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN VOCALIC LL "le=0x0932 0x0947", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN E "lai=0x0932 0x0948", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN AI "lo=0x0932 0x094B", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN O "lau=0x0932 0x094C", // DEVANAGARI LETTER LA + DEVANAGARI VOWEL SIGN AU "l=0x0932 0x094D", // DEVANAGARI LETTER LA + DEVANAGARI SIGN VIRAMA "\"laa=0x0933 0x093E", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN AA "\"li=0x0933 0x093F", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN I "\"lii=0x0933 0x0940", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN II "\"lu=0x0933 0x0941", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN U "\"luu=0x0933 0x0942", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN UU "\"l.r=0x0933 0x0943", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC R "\"l.r.r=0x0933 0x0944", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC RR "\"l.l=0x0933 0x0962", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC L "\"l.l.l=0x0933 0x0963", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN VOCALIC LL "\"le=0x0933 0x0947", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN E "\"lai=0x0933 0x0948", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN AI "\"lo=0x0933 0x094B", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN O "\"lau=0x0933 0x094C", // DEVANAGARI LETTER LLA + DEVANAGARI VOWEL SIGN AU "\"l=0x0933 0x094D", // DEVANAGARI LETTER LLA + DEVANAGARI SIGN VIRAMA "vaa=0x0935 0x093E", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN AA "vi=0x0935 0x093F", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN I "vii=0x0935 0x0940", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN II "vu=0x0935 0x0941", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN U "vuu=0x0935 0x0942", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN UU "v.r=0x0935 0x0943", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC R "v.r.r=0x0935 0x0944", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC RR "v.l=0x0935 0x0962", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC L "v.l.l=0x0935 0x0963", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN VOCALIC LL "ve=0x0935 0x0947", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN E "vai=0x0935 0x0948", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN AI "vo=0x0935 0x094B", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN O "vau=0x0935 0x094C", // DEVANAGARI LETTER VA + DEVANAGARI VOWEL SIGN AU "v=0x0935 0x094D", // DEVANAGARI LETTER VA + DEVANAGARI SIGN VIRAMA "\"saa=0x0936 0x093E", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN AA "\"si=0x0936 0x093F", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN I "\"sii=0x0936 0x0940", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN II "\"su=0x0936 0x0941", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN U "\"suu=0x0936 0x0942", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN UU "\"s.r=0x0936 0x0943", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC R "\"s.r.r=0x0936 0x0944", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC RR "\"s.l=0x0936 0x0962", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC L "\"s.l.l=0x0936 0x0963", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN VOCALIC LL "\"se=0x0936 0x0947", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN E "\"sai=0x0936 0x0948", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN AI "\"so=0x0936 0x094B", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN O "\"sau=0x0936 0x094C", // DEVANAGARI LETTER SHA + DEVANAGARI VOWEL SIGN AU "\"s=0x0936 0x094D", // DEVANAGARI LETTER SHA + DEVANAGARI SIGN VIRAMA ".saa=0x0937 0x093E", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN AA ".si=0x0937 0x093F", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN I ".sii=0x0937 0x0940", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN II ".su=0x0937 0x0941", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN U ".suu=0x0937 0x0942", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN UU ".s.r=0x0937 0x0943", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC R ".s.r.r=0x0937 0x0944", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC RR ".s.l=0x0937 0x0962", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC L ".s.l.l=0x0937 0x0963", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN VOCALIC LL ".se=0x0937 0x0947", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN E ".sai=0x0937 0x0948", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN AI ".so=0x0937 0x094B", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN O ".sau=0x0937 0x094C", // DEVANAGARI LETTER SSA + DEVANAGARI VOWEL SIGN AU ".s=0x0937 0x094D", // DEVANAGARI LETTER SSA + DEVANAGARI SIGN VIRAMA "saa=0x0938 0x093E", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN AA "si=0x0938 0x093F", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN I "sii=0x0938 0x0940", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN II "su=0x0938 0x0941", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN U "suu=0x0938 0x0942", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN UU "s.r=0x0938 0x0943", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC R "s.r.r=0x0938 0x0944", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC RR "s.l=0x0938 0x0962", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC L "s.l.l=0x0938 0x0963", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN VOCALIC LL "se=0x0938 0x0947", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN E "sai=0x0938 0x0948", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN AI "so=0x0938 0x094B", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN O "sau=0x0938 0x094C", // DEVANAGARI LETTER SA + DEVANAGARI VOWEL SIGN AU "s=0x0938 0x094D", // DEVANAGARI LETTER SA + DEVANAGARI SIGN VIRAMA "haa=0x0939 0x093E", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN AA "hi=0x0939 0x093F", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN I "hii=0x0939 0x0940", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN II "hu=0x0939 0x0941", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN U "huu=0x0939 0x0942", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN UU "h.r=0x0939 0x0943", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC R "h.r.r=0x0939 0x0944", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC RR "h.l=0x0939 0x0962", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC L "h.l.l=0x0939 0x0963", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN VOCALIC LL "he=0x0939 0x0947", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN E "hai=0x0939 0x0948", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN AI "ho=0x0939 0x094B", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN O "hau=0x0939 0x094C", // DEVANAGARI LETTER HA + DEVANAGARI VOWEL SIGN AU "h=0x0939 0x094D", // DEVANAGARI LETTER HA + DEVANAGARI SIGN VIRAMA // Various signs ".a=0x093D", // DEVANAGARI SIGN AVAGRAHA ".o=0x0950", // DEVANAGARI OM "!=0x0951", // DEVANAGARI STRESS SIGN UDATTA "_=0x0952", // DEVANAGARI STRESS SIGN ANUDATTA "|=0x0964", // DEVANAGARI DANDA "||=0x0965", // DEVANAGARI DOUBLE DANDA "@=0x0970", // DEVANAGARI ABBREVIATION SIGN "&=0x00A0", // NO-BREAK SPACE // Digits "0x30=0x0966", // DEVANAGARI DIGIT ZERO "0x31=0x0967", // DEVANAGARI DIGIT ONE "0x32=0x0968", // DEVANAGARI DIGIT TWO "0x33=0x0969", // DEVANAGARI DIGIT THREE "0x34=0x096A", // DEVANAGARI DIGIT FOUR "0x35=0x096B", // DEVANAGARI DIGIT FIVE "0x36=0x096C", // DEVANAGARI DIGIT SIX "0x37=0x096D", // DEVANAGARI DIGIT SEVEN "0x38=0x096E", // DEVANAGARI DIGIT EIGHT "0x39=0x096F", // DEVANAGARI DIGIT NINE ./mytool/kmap/Sanskrit-Translit.kmap0000644000175000017500000000233710073513300017553 0ustar henrichhenrich// Sanskrit-Translit.kmap for the Unicode editor Yudit // 27 March 2004 Horia Dumitrescu "a_=0x0101", // a with macron "i_=0x012B", // i with macron "u_=0x016B", // u with macron "r.=0x1E5B", // r with dot below "r._=0x1E5D", // r with dot below and macron "l.=0x1E37", // l with dot below "l._=0x1E39", // l with dot below and macron "t.=0x1E6D", // t with dot below "d.=0x1E0D", // d with dot below "n/=0x1E45", // n with dot above "n~=0x00F1", // n with tilde "n.=0x1E47", // n with dot below "s'=0x015B", // s with acute "s.=0x1E63", // s with dot below "m.=0x1E43", // m with dot below "m/=0x1E41", // m with dot above "h.=0x1E25", // h with dot below "A_=0x0100", // A with macron "I_=0x012A", // I with macron "U_=0x016A", // U with macron "R.=0x1E5A", // R with dot below "R._=0x1E5C", // R with dot below and macron "L.=0x1E36", // L with dot below "L._=0x1E38", // L with dot below and macron "T.=0x1E6C", // T with dot below "D.=0x1E0C", // D with dot below "N/=0x1E44", // N with dot above "N~=0x00D1", // N with tilde "N.=0x1E46", // N with dot below "S'=0x015A", // S with acute "S.=0x1E62", // S with dot below "M.=0x1E42", // M with dot below "M/=0x1E40", // M with dot above "H.=0x1E24", // H with dot below ./mytool/kmap/Tamil.kmap0000644000175000017500000001324507551156750015250 0ustar henrichhenrich//autogenerated by Tamil.cluster.pl "a=0x0b85", "A=0x0b86", "i=0x0b87", "I=0x0b88", "u=0x0b89", "U=0x0b8a", "e=0x0b8e", "E=0x0b8f", "G=0x0b90", "o=0x0b92", "O=0x0b93", "H=0x0b94", "Q=0x0b83", "ka=0x0b95", "nga=0x0b99", "ca=0x0b9a", "ja=0x0b9c", "nja=0x0b9e", "da=0x0b9f", "Na=0x0ba3", "ta=0x0ba4", "qa=0x0ba8", "na=0x0ba9", "pa=0x0baa", "ma=0x0bae", "ya=0x0baf", "ra=0x0bb0", "Ra=0x0bb1", "la=0x0bb2", "La=0x0bb3", "za=0x0bb4", "va=0x0bb5", "sha=0x0bb7", "sa=0x0bb8", "ha=0x0bb9", "kA=0x0b95 0x0bbe", "ngA=0x0b99 0x0bbe", "cA=0x0b9a 0x0bbe", "jA=0x0b9c 0x0bbe", "njA=0x0b9e 0x0bbe", "dA=0x0b9f 0x0bbe", "NA=0x0ba3 0x0bbe", "tA=0x0ba4 0x0bbe", "qA=0x0ba8 0x0bbe", "nA=0x0ba9 0x0bbe", "pA=0x0baa 0x0bbe", "mA=0x0bae 0x0bbe", "yA=0x0baf 0x0bbe", "rA=0x0bb0 0x0bbe", "RA=0x0bb1 0x0bbe", "lA=0x0bb2 0x0bbe", "LA=0x0bb3 0x0bbe", "zA=0x0bb4 0x0bbe", "vA=0x0bb5 0x0bbe", "shA=0x0bb7 0x0bbe", "sA=0x0bb8 0x0bbe", "hA=0x0bb9 0x0bbe", "kf=0x0b95 0x0bcd", "ki=0x0b95 0x0bbf", "kI=0x0b95 0x0bc0", "ku=0x0b95 0x0bc1", "kU=0x0b95 0x0bc2", "ke=0x0b95 0x0bc6", "kE=0x0b95 0x0bc7", "kG=0x0b95 0x0bc8", "ko=0x0b95 0x0bca", "kO=0x0b95 0x0bcb", "kH=0x0b95 0x0bcc", "ngf=0x0b99 0x0bcd", "ngi=0x0b99 0x0bbf", "ngI=0x0b99 0x0bc0", "ngu=0x0b99 0x0bc1", "ngU=0x0b99 0x0bc2", "nge=0x0b99 0x0bc6", "ngE=0x0b99 0x0bc7", "ngG=0x0b99 0x0bc8", "ngo=0x0b99 0x0bca", "ngO=0x0b99 0x0bcb", "ngH=0x0b99 0x0bcc", "cf=0x0b9a 0x0bcd", "ci=0x0b9a 0x0bbf", "cI=0x0b9a 0x0bc0", "cu=0x0b9a 0x0bc1", "cU=0x0b9a 0x0bc2", "ce=0x0b9a 0x0bc6", "cE=0x0b9a 0x0bc7", "cG=0x0b9a 0x0bc8", "co=0x0b9a 0x0bca", "cO=0x0b9a 0x0bcb", "cH=0x0b9a 0x0bcc", "jf=0x0b9c 0x0bcd", "ji=0x0b9c 0x0bbf", "jI=0x0b9c 0x0bc0", "ju=0x0b9c 0x0bc1", "jU=0x0b9c 0x0bc2", "je=0x0b9c 0x0bc6", "jE=0x0b9c 0x0bc7", "jG=0x0b9c 0x0bc8", "jo=0x0b9c 0x0bca", "jO=0x0b9c 0x0bcb", "jH=0x0b9c 0x0bcc", "njf=0x0b9e 0x0bcd", "nji=0x0b9e 0x0bbf", "njI=0x0b9e 0x0bc0", "nju=0x0b9e 0x0bc1", "njU=0x0b9e 0x0bc2", "nje=0x0b9e 0x0bc6", "njE=0x0b9e 0x0bc7", "njG=0x0b9e 0x0bc8", "njo=0x0b9e 0x0bca", "njO=0x0b9e 0x0bcb", "njH=0x0b9e 0x0bcc", "df=0x0b9f 0x0bcd", "di=0x0b9f 0x0bbf", "dI=0x0b9f 0x0bc0", "du=0x0b9f 0x0bc1", "dU=0x0b9f 0x0bc2", "de=0x0b9f 0x0bc6", "dE=0x0b9f 0x0bc7", "dG=0x0b9f 0x0bc8", "do=0x0b9f 0x0bca", "dO=0x0b9f 0x0bcb", "dH=0x0b9f 0x0bcc", "Nf=0x0ba3 0x0bcd", "Ni=0x0ba3 0x0bbf", "NI=0x0ba3 0x0bc0", "Nu=0x0ba3 0x0bc1", "NU=0x0ba3 0x0bc2", "Ne=0x0ba3 0x0bc6", "NE=0x0ba3 0x0bc7", "NG=0x0ba3 0x0bc8", "No=0x0ba3 0x0bca", "NO=0x0ba3 0x0bcb", "NH=0x0ba3 0x0bcc", "tf=0x0ba4 0x0bcd", "ti=0x0ba4 0x0bbf", "tI=0x0ba4 0x0bc0", "tu=0x0ba4 0x0bc1", "tU=0x0ba4 0x0bc2", "te=0x0ba4 0x0bc6", "tE=0x0ba4 0x0bc7", "tG=0x0ba4 0x0bc8", "to=0x0ba4 0x0bca", "tO=0x0ba4 0x0bcb", "tH=0x0ba4 0x0bcc", "qf=0x0ba8 0x0bcd", "qi=0x0ba8 0x0bbf", "qI=0x0ba8 0x0bc0", "qu=0x0ba8 0x0bc1", "qU=0x0ba8 0x0bc2", "qe=0x0ba8 0x0bc6", "qE=0x0ba8 0x0bc7", "qG=0x0ba8 0x0bc8", "qo=0x0ba8 0x0bca", "qO=0x0ba8 0x0bcb", "qH=0x0ba8 0x0bcc", "nf=0x0ba9 0x0bcd", "ni=0x0ba9 0x0bbf", "nI=0x0ba9 0x0bc0", "nu=0x0ba9 0x0bc1", "nU=0x0ba9 0x0bc2", "ne=0x0ba9 0x0bc6", "nE=0x0ba9 0x0bc7", "nG=0x0ba9 0x0bc8", "no=0x0ba9 0x0bca", "nO=0x0ba9 0x0bcb", "nH=0x0ba9 0x0bcc", "pf=0x0baa 0x0bcd", "pi=0x0baa 0x0bbf", "pI=0x0baa 0x0bc0", "pu=0x0baa 0x0bc1", "pU=0x0baa 0x0bc2", "pe=0x0baa 0x0bc6", "pE=0x0baa 0x0bc7", "pG=0x0baa 0x0bc8", "po=0x0baa 0x0bca", "pO=0x0baa 0x0bcb", "pH=0x0baa 0x0bcc", "mf=0x0bae 0x0bcd", "mi=0x0bae 0x0bbf", "mI=0x0bae 0x0bc0", "mu=0x0bae 0x0bc1", "mU=0x0bae 0x0bc2", "me=0x0bae 0x0bc6", "mE=0x0bae 0x0bc7", "mG=0x0bae 0x0bc8", "mo=0x0bae 0x0bca", "mO=0x0bae 0x0bcb", "mH=0x0bae 0x0bcc", "yf=0x0baf 0x0bcd", "yi=0x0baf 0x0bbf", "yI=0x0baf 0x0bc0", "yu=0x0baf 0x0bc1", "yU=0x0baf 0x0bc2", "ye=0x0baf 0x0bc6", "yE=0x0baf 0x0bc7", "yG=0x0baf 0x0bc8", "yo=0x0baf 0x0bca", "yO=0x0baf 0x0bcb", "yH=0x0baf 0x0bcc", "rf=0x0bb0 0x0bcd", "ri=0x0bb0 0x0bbf", "rI=0x0bb0 0x0bc0", "ru=0x0bb0 0x0bc1", "rU=0x0bb0 0x0bc2", "re=0x0bb0 0x0bc6", "rE=0x0bb0 0x0bc7", "rG=0x0bb0 0x0bc8", "ro=0x0bb0 0x0bca", "rO=0x0bb0 0x0bcb", "rH=0x0bb0 0x0bcc", "Rf=0x0bb1 0x0bcd", "Ri=0x0bb1 0x0bbf", "RI=0x0bb1 0x0bc0", "Ru=0x0bb1 0x0bc1", "RU=0x0bb1 0x0bc2", "Re=0x0bb1 0x0bc6", "RE=0x0bb1 0x0bc7", "RG=0x0bb1 0x0bc8", "Ro=0x0bb1 0x0bca", "RO=0x0bb1 0x0bcb", "RH=0x0bb1 0x0bcc", "lf=0x0bb2 0x0bcd", "li=0x0bb2 0x0bbf", "lI=0x0bb2 0x0bc0", "lu=0x0bb2 0x0bc1", "lU=0x0bb2 0x0bc2", "le=0x0bb2 0x0bc6", "lE=0x0bb2 0x0bc7", "lG=0x0bb2 0x0bc8", "lo=0x0bb2 0x0bca", "lO=0x0bb2 0x0bcb", "lH=0x0bb2 0x0bcc", "Lf=0x0bb3 0x0bcd", "Li=0x0bb3 0x0bbf", "LI=0x0bb3 0x0bc0", "Lu=0x0bb3 0x0bc1", "LU=0x0bb3 0x0bc2", "Le=0x0bb3 0x0bc6", "LE=0x0bb3 0x0bc7", "LG=0x0bb3 0x0bc8", "Lo=0x0bb3 0x0bca", "LO=0x0bb3 0x0bcb", "LH=0x0bb3 0x0bcc", "zf=0x0bb4 0x0bcd", "zi=0x0bb4 0x0bbf", "zI=0x0bb4 0x0bc0", "zu=0x0bb4 0x0bc1", "zU=0x0bb4 0x0bc2", "ze=0x0bb4 0x0bc6", "zE=0x0bb4 0x0bc7", "zG=0x0bb4 0x0bc8", "zo=0x0bb4 0x0bca", "zO=0x0bb4 0x0bcb", "zH=0x0bb4 0x0bcc", "vf=0x0bb5 0x0bcd", "vi=0x0bb5 0x0bbf", "vI=0x0bb5 0x0bc0", "vu=0x0bb5 0x0bc1", "vU=0x0bb5 0x0bc2", "ve=0x0bb5 0x0bc6", "vE=0x0bb5 0x0bc7", "vG=0x0bb5 0x0bc8", "vo=0x0bb5 0x0bca", "vO=0x0bb5 0x0bcb", "vH=0x0bb5 0x0bcc", "shf=0x0bb7 0x0bcd", "shi=0x0bb7 0x0bbf", "shI=0x0bb7 0x0bc0", "shu=0x0bb7 0x0bc1", "shU=0x0bb7 0x0bc2", "she=0x0bb7 0x0bc6", "shE=0x0bb7 0x0bc7", "shG=0x0bb7 0x0bc8", "sho=0x0bb7 0x0bca", "shO=0x0bb7 0x0bcb", "shH=0x0bb7 0x0bcc", "sf=0x0bb8 0x0bcd", "si=0x0bb8 0x0bbf", "sI=0x0bb8 0x0bc0", "su=0x0bb8 0x0bc1", "sU=0x0bb8 0x0bc2", "se=0x0bb8 0x0bc6", "sE=0x0bb8 0x0bc7", "sG=0x0bb8 0x0bc8", "so=0x0bb8 0x0bca", "sO=0x0bb8 0x0bcb", "sH=0x0bb8 0x0bcc", "hf=0x0bb9 0x0bcd", "hi=0x0bb9 0x0bbf", "hI=0x0bb9 0x0bc0", "hu=0x0bb9 0x0bc1", "hU=0x0bb9 0x0bc2", "he=0x0bb9 0x0bc6", "hE=0x0bb9 0x0bc7", "hG=0x0bb9 0x0bc8", "ho=0x0bb9 0x0bca", "hO=0x0bb9 0x0bcb", "hH=0x0bb9 0x0bcc", ./mytool/kmap/Russian.kmap0000644000175000017500000001021007572774166015625 0ustar henrichhenrich// Russian input table that follows the standard keyboard layout (Microsoft variant) for Yudit // © 2002-11-23 by Vyacheslav Dikonov // Additions and improvements are welcome // General table for Russian "~=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "!=0x0021", // ! = EXCLAMATION MARK "@=0x0022", // " = QUOTATION MARK "#=0x2116", // № = NUMERO SIGN "$=0x003B", // ; = SEMICOLON "%=0x0025", // % = PERCENT SIGN "^=0x003A", // : = COLON "&=0x003F", // ? = QUESTION MARK "*=0x002A", // * = ASTERISK "(=0x0028", // ( = LEFT PARENTHESIS ")=0x0029", // ) = RIGHT PARENTHESIS "_=0x005F", // _ = LOW LINE "+=0x002B", // + = PLUS SIGN "Q=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "W=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "E=0x0423", // У = CYRILLIC CAPITAL LETTER U "R=0x041A", // К = CYRILLIC CAPITAL LETTER KA "T=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "Y=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "U=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "I=0x0428", // Ш = CYRILLIC CAPITAL LETTER SH "O=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCH "P=0x0417", // З = CYRILLIC CAPITAL LETTER ZE "{=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "A=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "S=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "D=0x0412", // В = CYRILLIC CAPITAL LETTER VE "F=0x0410", // А = CYRILLIC CAPITAL LETTER A "G=0x041F", // П = CYRILLIC CAPITAL LETTER PE "H=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "J=0x041E", // О = CYRILLIC CAPITAL LETTER O "K=0x041B", // Л = CYRILLIC CAPITAL LETTER EL "L=0x0414", // Д = CYRILLIC CAPITAL LETTER DE ":=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "\"=0x042D", // Э = CYRILLIC CAPITAL LETTER E "0x7C=0x002F", // / = SOLIDUS "Z=0x042F", // Я = CYRILLIC CAPITAL LETTER YA "X=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "C=0x0421", // С = CYRILLIC CAPITAL LETTER ES "V=0x041C", // М = CYRILLIC CAPITAL LETTER EM "B=0x0418", // И = CYRILLIC CAPITAL LETTER I "N=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "}=0x042A", // Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "M=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "<=0x0411", // Б = CYRILLIC CAPITAL LETTER BE ">=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "?=0x002C", // , = COMMA // Same, but lower case: "`=0x0451", // ё = CYRILLIC SMALL LETTER IO "0x31=0x0031", // 1 = DIGIT ONE "0x32=0x0032", // 2 = DIGIT TWO "0x33=0x0033", // 3 = DIGIT THREE "0x34=0x0034", // 4 = DIGIT FOUR "0x35=0x0035", // 5 = DIGIT FIVE "0x36=0x0036", // 6 = DIGIT SIX "0x37=0x0037", // 7 = DIGIT SEVEN "0x38=0x0038", // 8 = DIGIT EIGHT "0x39=0x0039", // 9 = DIGIT NINE "0x30=0x0030", // 0 = DIGIT ZERO "-=0x002D", // - = HIPHEN-MINUS "0x30=0x003D", // = = EQUALS SIGN "q=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "w=0x0446", // ц = CYRILLIC SMALL LETTER TSE "e=0x0443", // у = CYRILLIC SMALL LETTER U "r=0x043A", // к = CYRILLIC SMALL LETTER KA "t=0x0435", // е = CYRILLIC SMALL LETTER IE "y=0x043D", // н = CYRILLIC SMALL LETTER EN "u=0x0433", // г = CYRILLIC SMALL LETTER GHE "i=0x0448", // ш = CYRILLIC SMALL LETTER SH "o=0x0449", // щ = CYRILLIC SMALL LETTER SHCH "p=0x0437", // з = CYRILLIC SMALL LETTER ZE "[=0x0445", // х = CYRILLIC SMALL LETTER HA "a=0x0444", // ф = CYRILLIC SMALL LETTER EF "s=0x044B", // ы = CYRILLIC SMALL LETTER YERU "d=0x0432", // в = CYRILLIC SMALL LETTER VE "f=0x0430", // а = CYRILLIC SMALL LETTER A "g=0x043F", // п = CYRILLIC SMALL LETTER PE "h=0x0440", // р = CYRILLIC SMALL LETTER ER "j=0x043E", // о = CYRILLIC SMALL LETTER O "k=0x043B", // л = CYRILLIC SMALL LETTER EL "l=0x0434", // д = CYRILLIC SMALL LETTER DE ";=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "'=0x044D", // э = CYRILLIC SMALL LETTER E "0x5C=0x005C", // \ = REVERSE SOLIDUS "z=0x044F", // я = CYRILLIC SMALL LETTER YA "x=0x0447", // ч = CYRILLIC SMALL LETTER CHE "c=0x0441", // с = CYRILLIC SMALL LETTER ES "v=0x043C", // м = CYRILLIC SMALL LETTER EM "b=0x0438", // и = CYRILLIC SMALL LETTER I "n=0x0442", // т = CYRILLIC SMALL LETTER TE "]=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "m=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN ",=0x0431", // б = CYRILLIC SMALL LETTER BE ".=0x044E", // ю = CYRILLIC SMALL LETTER YU "/=0x002E", // . = FULL STOP ./mytool/kmap/Arabic.kmap0000644000175000017500000000574107532460064015360 0ustar henrichhenrich// This kmap file was generated from // The Experimental Arabic.kmap // 1998-06-18 Roman Czyborra@cs.tu-berlin.de // By Gaspar Sinai's perl script ./arabickmap.pl at 2001-12-05. // "$=0x064C" // 064C@ ARABIC DAMMATAN "%=0x064F" // 064F@ ARABIC DAMMA "&=0x0651" // ʋ ARABIC SHADDA "'=0x064E" // 064E@ ARABIC FATHA "*=0x0652" // ʌ ARABIC SUKUN ",=0x060C" // 060C< ARABIC COMMA "-=0x0640" // ʀ ARABIC TATWEEL "0x30=0x0660" // ʔ ARABIC-INDIC DIGIT ZERO "0x31=0x0661" // ʕ ARABIC-INDIC DIGIT ONE "0x32=0x0662" // ʖ ARABIC-INDIC DIGIT TWO "0x33=0x0663" // ʗ ARABIC-INDIC DIGIT THREE "0x34=0x0664" // ʘ ARABIC-INDIC DIGIT FOUR "0x35=0x0665" // ʙ ARABIC-INDIC DIGIT FIVE "0x36=0x0666" // ʚ ARABIC-INDIC DIGIT SIX "0x37=0x0667" // ʛ ARABIC-INDIC DIGIT SEVEN "0x38=0x0668" // ʜ ARABIC-INDIC DIGIT EIGHT "0x39=0x0669" // ʝ ARABIC-INDIC DIGIT NINE ";=0x061B" // 061B= ARABIC SEMICOLON "?=0x061F" // 061F= ARABIC QUESTION MARK "@=0x0621" // ɭ ARABIC LETTER HAMZA "A=0x0670" // ʞ ARABIC LETTER SUPERSCRIPT ALEF "^=0x064B" // 064B@ ARABIC FATHATAN "_=0x064D" // 064D@ ARABIC KASRATAN "`=0x0650" // ʊ ARABIC KASRA "a=0x0627" // ɳ ARABIC LETTER ALEF "aB=0x0625" // ɱ ARABIC LETTER ALEF WITH HAMZA BELOW "aH=0x0623" // ɯ ARABIC LETTER ALEF WITH HAMZA ABOVE "aM=0x0622" // ɮ ARABIC LETTER ALEF WITH MADDA ABOVE "b=0x0628" // ɴ ARABIC LETTER BEH "c=0x0635" // ɻ ARABIC LETTER SAD "d=0x062F" // 062F> ARABIC LETTER DAL "dD=0x0636" // ɼ ARABIC LETTER DAD "dK=0x0630" // ɶ ARABIC LETTER THAL "e=0x0639" // ɿ ARABIC LETTER AIN "f=0x0641" // ʁ ARABIC LETTER FEH "g=0x062C" // 062C> ARABIC LETTER JEEM "gF=0x06AF" // 06AF ARABIC LETTER GAF "h=0x0647" // ʇ ARABIC LETTER HEH "hH=0x0681" // ʩ ARABIC LETTER HAH WITH HAMZA ABOVE "hK=0x062D" // 062D> ARABIC LETTER HAH "i=0x063A" // 063A? ARABIC LETTER GHAIN "j=0x0649" // ʉ ARABIC LETTER ALEF MAKSURA "k=0x0643" // ʃ ARABIC LETTER KAF "l=0x0644" // ʄ ARABIC LETTER LAM "m=0x0645" // ʅ ARABIC LETTER MEEM "n=0x0646" // ʆ ARABIC LETTER NOON "p=0x067E" // 067EC ARABIC LETTER PEH "q=0x0642" // ʂ ARABIC LETTER QAF "r=0x0631" // ɷ ARABIC LETTER REH "s=0x0633" // ɹ ARABIC LETTER SEEN "S=0x0634" // ɺ ARABIC LETTER SHEEN "t=0x062A" // 062A> ARABIC LETTER TEH "tC=0x0686" // ʮ ARABIC LETTER TCHEH "tJ=0x0637" // ɽ ARABIC LETTER TAH "tK=0x062B" // 062B> ARABIC LETTER THEH "tM=0x0629" // ɵ ARABIC LETTER TEH MARBUTA "v=0x06A4" // 06A4 ARABIC LETTER VEH "w=0x0648" // ʈ ARABIC LETTER WAW "wH=0x0624" // ɰ ARABIC LETTER WAW WITH HAMZA ABOVE "x=0x062E" // 062E> ARABIC LETTER KHAH "y=0x064A" // 064A@ ARABIC LETTER YEH "yH=0x0626" // ɲ ARABIC LETTER YEH WITH HAMZA ABOVE "z=0x0632" // ɸ ARABIC LETTER ZAIN "zH=0x0638" // ɾ ARABIC LETTER ZAH "zJ=0x0698" // ʺ ARABIC LETTER JEH // // Shaping part using shape.mys. Autogenerated. // "l aM=0x0644 0x0622", // لآ LAM ALEF WITH MADDA ABOVE "l aH=0x0644 0x0623", // لأ LAM ALEF WITH HAMZA ABOVE "l aB=0x0644 0x0625", // لإ LAM ALEF WITH HAMZA BELOW "l a=0x0644 0x0627", // لا LAM ALEF // // End of shaping part. Autogenerated. // ./mytool/kmap/Vietnamese-TCVNcombine.kmap0000644000175000017500000000222307532460064020374 0ustar henrichhenrich// TCVN.kmap using the TCVN-6064 // To input Vietnamese into // http://www2.gol.com/users/gsinai/'s Yudit 0.99 Unicode text editor // 2001-09-20 Le.Hong.Boi@quantic.com.vn "0x35=0x0300", // = COMBINING GRAVE "0x36=0x0309", // = COMBINING HOOK ABOVE "0x37=0x0303", // = COMBINING TILDE "0x38=0x0301", // = COMBINING ACUTE "0x39=0x0323", // = COMBINING DOT BELOW "0x31=0x0103", // ă = LATIN SMALL LETTER A WITH BREVE "!=0x0102", // Ă = LATIN CAPITAL LETTER A WITH BREVE "0x32=0x00E2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "@=0x00C2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX "0x33=0x00EA", // ê = LATIN SMALL LETTER E WITH CIRCUMFLEX "#=0x00CA", // Ê = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "0x34=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "$=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "]=0x01A1", // ơ = LATIN SMALL LETTER O WITH HORN "}=0x01A0", // Ơ = LATIN CAPITAL LETTER O WITH HORN "[=0x01B0", // ư = LATIN SMALL LETTER U WITH HORN "{=0x01AF", // Ư = LATIN CAPITAL LETTER U WITH HORN "0x30=0x0111", // đ = LATIN SMALL LETTER D WITH STROKE ")=0x0110", // Đ = LATIN CAPITAL LETTER D WITH STROKE "-=0x20AB", // VND Sign ./mytool/kmap/Devanagari-Inscript.kmap0000644000175000017500000001107207535000342020013 0ustar henrichhenrich// Dev-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri // Modified on 21 April 2002 by Sanjay Khatri // ॥ संजय खत्री ॥ //Devanagari letters "X=0x0901", // DEVANAGARI SIGN CANDRABINDU "x=0x0902", // DEVANAGARI SIGN ANUSVARA "_=0x0903", // DEVANAGARI SIGN VISARGA "D=0x0905", // DEVANAGARI LETTER A "E=0x0906", // DEVANAGARI LETTER AA "F=0x0907", // DEVANAGARI LETTER I "R=0x0908", // DEVANAGARI LETTER II "G=0x0909", // DEVANAGARI LETTER U "T=0x090A", // DEVANAGARI LETTER UU "+=0x090B", // DEVANAGARI LETTER VOCALIC R // "&=0x090C", // DEVANAGARI LETTER VOCALIC L "!=0x090D", // DEVANAGARI LETTER CANDRA E "Z=0x090E", // DEVANAGARI LETTER SHORT E "S=0x090F", // DEVANAGARI LETTER E "W=0x0910", // DEVANAGARI LETTER AI "|=0x0911", // DEVANAGARI LETTER CANDRA O "~=0x0912", // DEVANAGARI LETTER SHORT O "A=0x0913", // DEVANAGARI LETTER O "Q=0x0914", // DEVANAGARI LETTER AU "k=0x0915", // DEVANAGARI LETTER KA "K=0x0916", // DEVANAGARI LETTER KHA "i=0x0917", // DEVANAGARI LETTER GA "I=0x0918", // DEVANAGARI LETTER GHA "U=0x0919", // DEVANAGARI LETTER NGA ";=0x091A", // DEVANAGARI LETTER CA ":=0x091B", // DEVANAGARI LETTER CHA "p=0x091C", // DEVANAGARI LETTER JA "P=0x091D", // DEVANAGARI LETTER JHA "}=0x091E", // DEVANAGARI LETTER NYA "'=0x091F", // DEVANAGARI LETTER TTA "\"=0x0920", // DEVANAGARI LETTER TTHA "[=0x0921", // DEVANAGARI LETTER DDA "{=0x0922", // DEVANAGARI LETTER DDHA "C=0x0923", // DEVANAGARI LETTER NNA "l=0x0924", // DEVANAGARI LETTER TA "L=0x0925", // DEVANAGARI LETTER THA "o=0x0926", // DEVANAGARI LETTER DA "O=0x0927", // DEVANAGARI LETTER DHA "v=0x0928", // DEVANAGARI LETTER NA "V=0x0929", // DEVANAGARI LETTER NNNA "h=0x092A", // DEVANAGARI LETTER PA "H=0x092B", // DEVANAGARI LETTER PHA "y=0x092C", // DEVANAGARI LETTER BA "Y=0x092D", // DEVANAGARI LETTER BHA "c=0x092E", // DEVANAGARI LETTER MA "/=0x092F", // DEVANAGARI LETTER YA "j=0x0930", // DEVANAGARI LETTER RA "J=0x0931", // DEVANAGARI LETTER RRA "n=0x0932", // DEVANAGARI LETTER LA "N=0x0933", // DEVANAGARI LETTER LLA "B=0x0934", // DEVANAGARI LETTER LLLA "b=0x0935", // DEVANAGARI LETTER VA "M=0x0936", // DEVANAGARI LETTER SHA "<=0x0937", // DEVANAGARI LETTER SSA "m=0x0938", // DEVANAGARI LETTER SA "u=0x0939", // DEVANAGARI LETTER HA "]=0x093C", // DEVANAGARI SIGN NUKTA "#=0x093D", // DEVANAGARI SIGN AVAGRAHA (Inscript: # = VIRAMA + RA) "e=0x093E", // DEVANAGARI VOWEL SIGN AA "f=0x093F", // DEVANAGARI VOWEL SIGN I "r=0x0940", // DEVANAGARI VOWEL SIGN II "g=0x0941", // DEVANAGARI VOWEL SIGN U "t=0x0942", // DEVANAGARI VOWEL SIGN UU "0x3D=0x0943", // DEVANAGARI VOWEL SIGN VOCALIC R //"$=0x0944", // DEVANAGARI VOWEL SIGN VOCALIC RR "@=0x0945", // DEVANAGARI VOWEL SIGN CANDRA E "z=0x0946", // DEVANAGARI VOWEL SIGN SHORT E "s=0x0947", // DEVANAGARI VOWEL SIGN E "w=0x0948", // DEVANAGARI VOWEL SIGN AI "0x5c=0x0949", // DEVANAGARI VOWEL SIGN CANDRA O "`=0x094A", // DEVANAGARI VOWEL SIGN SHART O "a=0x094B", // DEVANAGARI VOWEL SIGN O "q=0x094C", // DEVANAGARI VOWEL SIGN OU "d=0x094D", // DEVANAGARI SIGN VIRMA "$=0x0950", // DEVANAGARI OM (Inscript: $ = RA + VIRAMA ) //"=0x0951", // DEVANAGARI STRESS SIGN UDATTA //"=0x0952", // DEVANAGARI STRESS SIGN ANUDATTA //"=0x0953", // DEVANAGARI GRAVE ACCENT //"=0x0954", // DEVANAGARI ACUTE ACCENT //Nukta Charactors "k]=0x0958", // DEVANAGARI LETTER QA "K]=0x0959", // DEVANAGARI LETTER KHHA "i]=0x095A", // DEVANAGARI LETTER GHHA "p]=0x095B", // DEVANAGARI LETTER ZA "[]=0x095C", // DEVANAGARI LETTER DDDHA "{]=0x095D", // DEVANAGARI LETTER RHA "H]=0x095E", // DEVANAGARI LETTER FA "?=0x095F", // DEVANAGARI LETTER YYA //"^=0x0960", // DEVANAGARI LETTER VOCALIC RR //"*=0x0961", // DEVANAGARI LETTER VOCALIC LL "(=0x0962", // DEVANAGARI VOWEL SIGN VOCALIC L (Inscript: '(' has no assignments) ")=0x0963", // DEVANAGARI VOWEL SIGN VOCALIC LL (Inscript: ')' has no assignments) ">=0x0964", // DEVANAGARI DANDA ">>=0x0965", // DEVANAGARI DOUBLE DANDA (Inscript Algr + > = DOUBLE DANDA) //Devanagari Digits "0x30=0x0966", // DEVANAGARI DIGIT ZERO "0x31=0x0967", // DEVANAGARI DIGIT ONE "0x32=0x0968", // DEVANAGARI DIGIT TWO "0x33=0x0969", // DEVANAGARI DIGIT THREE "0x34=0x096A", // DEVANAGARI DIGIT FOUR "0x35=0x096B", // DEVANAGARI DIGIT FIVE "0x36=0x096C", // DEVANAGARI DIGIT SIX "0x37=0x096D", // DEVANAGARI DIGIT SEVEN "0x38=0x096E", // DEVANAGARI DIGIT EIGHT "0x39=0x096F", // DEVANAGARI DIGIT NINE //".=0x0970", // DEVANAGARI ABBREVIATION SIGN //Composite Charactors "%=0x091C 0x094D 0x091E", // JNA "^=0x0924 0x094D 0x0930", // TRA "&=0x0915 0x094D 0x0937", // KSSA "*=0x0936 0x094D 0x0930", // SHRA //END OF FILE ./mytool/kmap/Gujarati-Inscript.kmap0000644000175000017500000000657207765355504017553 0ustar henrichhenrich// Guj-Inscript.kmap for Unicode editor Yudit // 12-jan-2000 Sanjay Khatri //Gujarati letters "X=0x0A81", // GUJARATI SIGN CANDRABINDU "x=0x0A82", // GUJARATI SIGN ANUSVARA "_=0x0A83", // GUJARATI SIGN VISARGA //"=0x0A84", // GUJARATI LETTER "D=0x0A85", // GUJARATI LETTER A "E=0x0A86", // GUJARATI LETTER AA "F=0x0A87", // GUJARATI LETTER I "R=0x0A88", // GUJARATI LETTER II "G=0x0A89", // GUJARATI LETTER U "T=0x0A8A", // GUJARATI LETTER UU "+=0x0A8B", // GUJARATI LETTER VOCALIC R //"&=0x0A8C", // GUJARATI LETTER VOCALIC L "!=0x0A8D", // GUJARATI LETTER CANDRA E //"Z=0x0A8E", // GUJARATI LETTER SHORT E "S=0x0A8F", // GUJARATI LETTER E "W=0x0A90", // GUJARATI LETTER AI "|=0x0A91", // GUJARATI LETTER CANDRA O //"~=0x0A92", // GUJARATI LETTER SHORT O "A=0x0A93", // GUJARATI LETTER O "Q=0x0A94", // GUJARATI LETTER AU "k=0x0A95", // GUJARATI LETTER KA "K=0x0A96", // GUJARATI LETTER KHA "i=0x0A97", // GUJARATI LETTER GA "I=0x0A98", // GUJARATI LETTER GHA "U=0x0A99", // GUJARATI LETTER NGA ";=0x0A9A", // GUJARATI LETTER CA ":=0x0A9B", // GUJARATI LETTER CHA "p=0x0A9C", // GUJARATI LETTER JA "P=0x0A9D", // GUJARATI LETTER JHA "}=0x0A9E", // GUJARATI LETTER NYA "'=0x0A9F", // GUJARATI LETTER TTA "\"=0x0AA0", // GUJARATI LETTER TTHA "[=0x0AA1", // GUJARATI LETTER DDA "{=0x0AA2", // GUJARATI LETTER DDHA "C=0x0AA3", // GUJARATI LETTER NNA "l=0x0AA4", // GUJARATI LETTER TA "L=0x0AA5", // GUJARATI LETTER THA "o=0x0AA6", // GUJARATI LETTER DA "O=0x0AA7", // GUJARATI LETTER DHA "v=0x0AA8", // GUJARATI LETTER NA //"V=0x0AA9", // GUJARATI LETTER NNNA "h=0x0AAA", // GUJARATI LETTER PA "H=0x0AAB", // GUJARATI LETTER PHA "y=0x0AAC", // GUJARATI LETTER BA "Y=0x0AAD", // GUJARATI LETTER BHA "c=0x0AAE", // GUJARATI LETTER MA "/=0x0AAF", // GUJARATI LETTER YA "j=0x0AB0", // GUJARATI LETTER RA //"J=0x0AB1", // GUJARATI LETTER RRA "n=0x0AB2", // GUJARATI LETTER LA "N=0x0AB3", // GUJARATI LETTER LLA //"B=0x0AB4", // GUJARATI LETTER LLLA "b=0x0AB5", // GUJARATI LETTER VA "M=0x0AB6", // GUJARATI LETTER SHA "<=0x0AB7", // GUJARATI LETTER SSA "m=0x0AB8", // GUJARATI LETTER SA "u=0x0AB9", // GUJARATI LETTER HA //"=0x0ABA", // GUJARATI LETTER //"=0x0ABB", // GUJARATI LETTER "]=0x0ABC", // GUJARATI SIGN NUKTA "#=0x0ABD", // GUJARATI SIGN AVAGRAHA "e=0x0ABE", // GUJARATI VOWEL SIGN AA "f=0x0ABF", // GUJARATI VOWEL SIGN I "r=0x0AC0", // GUJARATI VOWEL SIGN II "g=0x0AC1", // GUJARATI VOWEL SIGN U "t=0x0AC2", // GUJARATI VOWEL SIGN UU "\==0x0AC3", // GUJARATI VOWEL SIGN VOCALIC R "$=0x0AC4", // GUJARATI VOWEL SIGN VOCALIC RR "@=0x0AC5", // GUJARATI VOWEL SIGN CANDRA E //"z=0x0AC6", // GUJARATI VOWEL SIGN SHORT E "s=0x0AC7", // GUJARATI VOWEL SIGN E "w=0x0AC8", // GUJARATI VOWEL SIGN AI //"\ \=0x0AC9", // GUJARATI VOWEL SIGN CANDRA O //"`=0x0ACA", // GUJARATI VOWEL SIGN SHART O "a=0x0ACB", // GUJARATI VOWEL SIGN O "q=0x0ACC", // GUJARATI VOWEL SIGN OU "d=0x0ACD", // GUJARATI SIGN VIRMA //"=0x0ACE", // GUJARATI LETTER //"=0x0ACF", // GUJARATI LETTER "%=0x0AD0", // GUJARATI OM "^=0x0AE0", // GUJARATI LETTER VOCALIC RR "0x30=0x0AE6", // GUJARATI DIGIT ZERO "0x31=0x0AE7", // GUJARATI DIGIT ONE "0x32=0x0AE8", // GUJARATI DIGIT TWO "0x33=0x0AE9", // GUJARATI DIGIT THREE "0x34=0x0AEA", // GUJARATI DIGIT FOUR "0x35=0x0AEB", // GUJARATI DIGIT FIVE "0x36=0x0AEC", // GUJARATI DIGIT SIX "0x37=0x0AED", // GUJARATI DIGIT SEVEN "0x38=0x0AEE", // GUJARATI DIGIT EIGHT "0x39=0x0AEF", // GUJARATI DIGIT NINE ./mytool/kmap/Bengali.kmap0000644000175000017500000005676107670120450015543 0ustar henrichhenrich// Bengali kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-01-23 // 2003-06-04 upgraded to Unicode 4.0 // Consonant + vowel/virama ".D=0x09dc 0x09cd", ".D.h=0x09dc 0x09cd 0x200c", ".DA=0x09dc 0x09be", ".DI=0x09dc 0x09c0", ".DLLI=0x09dc 0x09e3", ".DLLi=0x09dc 0x09e2", ".DL^I=0x09dc 0x09e3", ".DL^i=0x09dc 0x09e2", ".DRRI=0x09dc 0x09c4", ".DRRi=0x09dc 0x09c3", ".DR^I=0x09dc 0x09c4", ".DR^i=0x09dc 0x09c3", ".DU=0x09dc 0x09c2", ".Da=0x09dc", ".Daa=0x09dc 0x09be", ".Dai=0x09dc 0x09c8", ".Dau=0x09dc 0x09cc", ".De=0x09dc 0x09c7", ".Di=0x09dc 0x09bf", ".Dii=0x09dc 0x09c0", ".Do=0x09dc 0x09cb", ".Du=0x09dc 0x09c1", ".Duu=0x09dc 0x09c2", ".Dh=0x09dd 0x09cd", ".Dh.h=0x09dd 0x09cd 0x200c", ".DhA=0x09dd 0x09be", ".DhI=0x09dd 0x09c0", ".DhLLI=0x09dd 0x09e3", ".DhLLi=0x09dd 0x09e2", ".DhL^I=0x09dd 0x09e3", ".DhL^i=0x09dd 0x09e2", ".DhRRI=0x09dd 0x09c4", ".DhRRi=0x09dd 0x09c3", ".DhR^I=0x09dd 0x09c4", ".DhR^i=0x09dd 0x09c3", ".DhU=0x09dd 0x09c2", ".Dha=0x09dd", ".Dhaa=0x09dd 0x09be", ".Dhai=0x09dd 0x09c8", ".Dhau=0x09dd 0x09cc", ".Dhe=0x09dd 0x09c7", ".Dhi=0x09dd 0x09bf", ".Dhii=0x09dd 0x09c0", ".Dho=0x09dd 0x09cb", ".Dhu=0x09dd 0x09c1", ".Dhuu=0x09dd 0x09c2", "Ch=0x099b 0x09cd", "Ch.h=0x099b 0x09cd 0x200c", "ChA=0x099b 0x09be", "ChI=0x099b 0x09c0", "ChLLI=0x099b 0x09e3", "ChLLi=0x099b 0x09e2", "ChL^I=0x099b 0x09e3", "ChL^i=0x099b 0x09e2", "ChRRI=0x099b 0x09c4", "ChRRi=0x099b 0x09c3", "ChR^I=0x099b 0x09c4", "ChR^i=0x099b 0x09c3", "ChU=0x099b 0x09c2", "Cha=0x099b", "Chaa=0x099b 0x09be", "Chai=0x099b 0x09c8", "Chau=0x099b 0x09cc", "Che=0x099b 0x09c7", "Chi=0x099b 0x09bf", "Chii=0x099b 0x09c0", "Cho=0x099b 0x09cb", "Chu=0x099b 0x09c1", "Chuu=0x099b 0x09c2", "D=0x09a1 0x09cd", "D.h=0x09a1 0x09cd 0x200c", "DA=0x09a1 0x09be", "DI=0x09a1 0x09c0", "DLLI=0x09a1 0x09e3", "DLLi=0x09a1 0x09e2", "DL^I=0x09a1 0x09e3", "DL^i=0x09a1 0x09e2", "DRRI=0x09a1 0x09c4", "DRRi=0x09a1 0x09c3", "DR^I=0x09a1 0x09c4", "DR^i=0x09a1 0x09c3", "DU=0x09a1 0x09c2", "Da=0x09a1", "Daa=0x09a1 0x09be", "Dai=0x09a1 0x09c8", "Dau=0x09a1 0x09cc", "De=0x09a1 0x09c7", "Di=0x09a1 0x09bf", "Dii=0x09a1 0x09c0", "Do=0x09a1 0x09cb", "Du=0x09a1 0x09c1", "Duu=0x09a1 0x09c2", "Dh=0x09a2 0x09cd", "Dh.h=0x09a2 0x09cd 0x200c", "DhA=0x09a2 0x09be", "DhI=0x09a2 0x09c0", "DhLLI=0x09a2 0x09e3", "DhLLi=0x09a2 0x09e2", "DhL^I=0x09a2 0x09e3", "DhL^i=0x09a2 0x09e2", "DhRRI=0x09a2 0x09c4", "DhRRi=0x09a2 0x09c3", "DhR^I=0x09a2 0x09c4", "DhR^i=0x09a2 0x09c3", "DhU=0x09a2 0x09c2", "Dha=0x09a2", "Dhaa=0x09a2 0x09be", "Dhai=0x09a2 0x09c8", "Dhau=0x09a2 0x09cc", "Dhe=0x09a2 0x09c7", "Dhi=0x09a2 0x09bf", "Dhii=0x09a2 0x09c0", "Dho=0x09a2 0x09cb", "Dhu=0x09a2 0x09c1", "Dhuu=0x09a2 0x09c2", "GY=0x099c 0x09cd 0x099e 0x09cd", "GY.h=0x099c 0x09cd 0x099e 0x09cd 0x200c", "GYA=0x099c 0x09cd 0x099e 0x09be", "GYI=0x099c 0x09cd 0x099e 0x09c0", "GYLLI=0x099c 0x09cd 0x099e 0x09e3", "GYLLi=0x099c 0x09cd 0x099e 0x09e2", "GYL^I=0x099c 0x09cd 0x099e 0x09e3", "GYL^i=0x099c 0x09cd 0x099e 0x09e2", "GYRRI=0x099c 0x09cd 0x099e 0x09c4", "GYRRi=0x099c 0x09cd 0x099e 0x09c3", "GYR^I=0x099c 0x09cd 0x099e 0x09c4", "GYR^i=0x099c 0x09cd 0x099e 0x09c3", "GYU=0x099c 0x09cd 0x099e 0x09c2", "GYa=0x099c 0x09cd 0x099e", "GYaa=0x099c 0x09cd 0x099e 0x09be", "GYai=0x099c 0x09cd 0x099e 0x09c8", "GYau=0x099c 0x09cd 0x099e 0x09cc", "GYe=0x099c 0x09cd 0x099e 0x09c7", "GYi=0x099c 0x09cd 0x099e 0x09bf", "GYii=0x099c 0x09cd 0x099e 0x09c0", "GYo=0x099c 0x09cd 0x099e 0x09cb", "GYu=0x099c 0x09cd 0x099e 0x09c1", "GYuu=0x099c 0x09cd 0x099e 0x09c2", "J=0x09af 0x09cd", "J.h=0x09af 0x09cd 0x200c", "JA=0x09af 0x09be", "JI=0x09af 0x09c0", "JLLI=0x09af 0x09e3", "JLLi=0x09af 0x09e2", "JL^I=0x09af 0x09e3", "JL^i=0x09af 0x09e2", "JRRI=0x09af 0x09c4", "JRRi=0x09af 0x09c3", "JR^I=0x09af 0x09c4", "JR^i=0x09af 0x09c3", "JU=0x09af 0x09c2", "Ja=0x09af", "Jaa=0x09af 0x09be", "Jai=0x09af 0x09c8", "Jau=0x09af 0x09cc", "Je=0x09af 0x09c7", "Ji=0x09af 0x09bf", "Jii=0x09af 0x09c0", "Jo=0x09af 0x09cb", "Ju=0x09af 0x09c1", "Juu=0x09af 0x09c2", "JN=0x099e 0x09cd", "JN.h=0x099e 0x09cd 0x200c", "JNA=0x099e 0x09be", "JNI=0x099e 0x09c0", "JNLLI=0x099e 0x09e3", "JNLLi=0x099e 0x09e2", "JNL^I=0x099e 0x09e3", "JNL^i=0x099e 0x09e2", "JNRRI=0x099e 0x09c4", "JNRRi=0x099e 0x09c3", "JNR^I=0x099e 0x09c4", "JNR^i=0x099e 0x09c3", "JNU=0x099e 0x09c2", "JNa=0x099e", "JNaa=0x099e 0x09be", "JNai=0x099e 0x09c8", "JNau=0x099e 0x09cc", "JNe=0x099e 0x09c7", "JNi=0x099e 0x09bf", "JNii=0x099e 0x09c0", "JNo=0x099e 0x09cb", "JNu=0x099e 0x09c1", "JNuu=0x099e 0x09c2", "N=0x09a3 0x09cd", "N.h=0x09a3 0x09cd 0x200c", "NA=0x09a3 0x09be", "NI=0x09a3 0x09c0", "NLLI=0x09a3 0x09e3", "NLLi=0x09a3 0x09e2", "NL^I=0x09a3 0x09e3", "NL^i=0x09a3 0x09e2", "NRRI=0x09a3 0x09c4", "NRRi=0x09a3 0x09c3", "NR^I=0x09a3 0x09c4", "NR^i=0x09a3 0x09c3", "NU=0x09a3 0x09c2", "Na=0x09a3", "Naa=0x09a3 0x09be", "Nai=0x09a3 0x09c8", "Nau=0x09a3 0x09cc", "Ne=0x09a3 0x09c7", "Ni=0x09a3 0x09bf", "Nii=0x09a3 0x09c0", "No=0x09a3 0x09cb", "Nu=0x09a3 0x09c1", "Nuu=0x09a3 0x09c2", "N^=0x0999 0x09cd", "N^.h=0x0999 0x09cd 0x200c", "N^A=0x0999 0x09be", "N^I=0x0999 0x09c0", "N^LLI=0x0999 0x09e3", "N^LLi=0x0999 0x09e2", "N^L^I=0x0999 0x09e3", "N^L^i=0x0999 0x09e2", "N^RRI=0x0999 0x09c4", "N^RRi=0x0999 0x09c3", "N^R^I=0x0999 0x09c4", "N^R^i=0x0999 0x09c3", "N^U=0x0999 0x09c2", "N^a=0x0999", "N^aa=0x0999 0x09be", "N^ai=0x0999 0x09c8", "N^au=0x0999 0x09cc", "N^e=0x0999 0x09c7", "N^i=0x0999 0x09bf", "N^ii=0x0999 0x09c0", "N^o=0x0999 0x09cb", "N^u=0x0999 0x09c1", "N^uu=0x0999 0x09c2", "Sh=0x09b7 0x09cd", "Sh.h=0x09b7 0x09cd 0x200c", "ShA=0x09b7 0x09be", "ShI=0x09b7 0x09c0", "ShLLI=0x09b7 0x09e3", "ShLLi=0x09b7 0x09e2", "ShL^I=0x09b7 0x09e3", "ShL^i=0x09b7 0x09e2", "ShRRI=0x09b7 0x09c4", "ShRRi=0x09b7 0x09c3", "ShR^I=0x09b7 0x09c4", "ShR^i=0x09b7 0x09c3", "ShU=0x09b7 0x09c2", "Sha=0x09b7", "Shaa=0x09b7 0x09be", "Shai=0x09b7 0x09c8", "Shau=0x09b7 0x09cc", "She=0x09b7 0x09c7", "Shi=0x09b7 0x09bf", "Shii=0x09b7 0x09c0", "Sho=0x09b7 0x09cb", "Shu=0x09b7 0x09c1", "Shuu=0x09b7 0x09c2", "T=0x099f 0x09cd", "T.h=0x099f 0x09cd 0x200c", "TA=0x099f 0x09be", "TI=0x099f 0x09c0", "TLLI=0x099f 0x09e3", "TLLi=0x099f 0x09e2", "TL^I=0x099f 0x09e3", "TL^i=0x099f 0x09e2", "TRRI=0x099f 0x09c4", "TRRi=0x099f 0x09c3", "TR^I=0x099f 0x09c4", "TR^i=0x099f 0x09c3", "TU=0x099f 0x09c2", "Ta=0x099f", "Taa=0x099f 0x09be", "Tai=0x099f 0x09c8", "Tau=0x099f 0x09cc", "Te=0x099f 0x09c7", "Ti=0x099f 0x09bf", "Tii=0x099f 0x09c0", "To=0x099f 0x09cb", "Tu=0x099f 0x09c1", "Tuu=0x099f 0x09c2", "Th=0x09a0 0x09cd", "Th.h=0x09a0 0x09cd 0x200c", "ThA=0x09a0 0x09be", "ThI=0x09a0 0x09c0", "ThLLI=0x09a0 0x09e3", "ThLLi=0x09a0 0x09e2", "ThL^I=0x09a0 0x09e3", "ThL^i=0x09a0 0x09e2", "ThRRI=0x09a0 0x09c4", "ThRRi=0x09a0 0x09c3", "ThR^I=0x09a0 0x09c4", "ThR^i=0x09a0 0x09c3", "ThU=0x09a0 0x09c2", "Tha=0x09a0", "Thaa=0x09a0 0x09be", "Thai=0x09a0 0x09c8", "Thau=0x09a0 0x09cc", "The=0x09a0 0x09c7", "Thi=0x09a0 0x09bf", "Thii=0x09a0 0x09c0", "Tho=0x09a0 0x09cb", "Thu=0x09a0 0x09c1", "Thuu=0x09a0 0x09c2", "Y=0x09df 0x09cd", "Y.h=0x09df 0x09cd 0x200c", "YA=0x09df 0x09be", "YI=0x09df 0x09c0", "YLLI=0x09df 0x09e3", "YLLi=0x09df 0x09e2", "YL^I=0x09df 0x09e3", "YL^i=0x09df 0x09e2", "YRRI=0x09df 0x09c4", "YRRi=0x09df 0x09c3", "YR^I=0x09df 0x09c4", "YR^i=0x09df 0x09c3", "YU=0x09df 0x09c2", "Ya=0x09df", "Yaa=0x09df 0x09be", "Yai=0x09df 0x09c8", "Yau=0x09df 0x09cc", "Ye=0x09df 0x09c7", "Yi=0x09df 0x09bf", "Yii=0x09df 0x09c0", "Yo=0x09df 0x09cb", "Yu=0x09df 0x09c1", "Yuu=0x09df 0x09c2", "b=0x09ac 0x09cd", "b.h=0x09ac 0x09cd 0x200c", "bA=0x09ac 0x09be", "bI=0x09ac 0x09c0", "bLLI=0x09ac 0x09e3", "bLLi=0x09ac 0x09e2", "bL^I=0x09ac 0x09e3", "bL^i=0x09ac 0x09e2", "bRRI=0x09ac 0x09c4", "bRRi=0x09ac 0x09c3", "bR^I=0x09ac 0x09c4", "bR^i=0x09ac 0x09c3", "bU=0x09ac 0x09c2", "ba=0x09ac", "baa=0x09ac 0x09be", "bai=0x09ac 0x09c8", "bau=0x09ac 0x09cc", "be=0x09ac 0x09c7", "bi=0x09ac 0x09bf", "bii=0x09ac 0x09c0", "bo=0x09ac 0x09cb", "bu=0x09ac 0x09c1", "buu=0x09ac 0x09c2", "bh=0x09ad 0x09cd", "bh.h=0x09ad 0x09cd 0x200c", "bhA=0x09ad 0x09be", "bhI=0x09ad 0x09c0", "bhLLI=0x09ad 0x09e3", "bhLLi=0x09ad 0x09e2", "bhL^I=0x09ad 0x09e3", "bhL^i=0x09ad 0x09e2", "bhRRI=0x09ad 0x09c4", "bhRRi=0x09ad 0x09c3", "bhR^I=0x09ad 0x09c4", "bhR^i=0x09ad 0x09c3", "bhU=0x09ad 0x09c2", "bha=0x09ad", "bhaa=0x09ad 0x09be", "bhai=0x09ad 0x09c8", "bhau=0x09ad 0x09cc", "bhe=0x09ad 0x09c7", "bhi=0x09ad 0x09bf", "bhii=0x09ad 0x09c0", "bho=0x09ad 0x09cb", "bhu=0x09ad 0x09c1", "bhuu=0x09ad 0x09c2", "c=0x099a 0x09cd", "c.h=0x099a 0x09cd 0x200c", "cA=0x099a 0x09be", "cI=0x099a 0x09c0", "cLLI=0x099a 0x09e3", "cLLi=0x099a 0x09e2", "cL^I=0x099a 0x09e3", "cL^i=0x099a 0x09e2", "cRRI=0x099a 0x09c4", "cRRi=0x099a 0x09c3", "cR^I=0x099a 0x09c4", "cR^i=0x099a 0x09c3", "cU=0x099a 0x09c2", "ca=0x099a", "caa=0x099a 0x09be", "cai=0x099a 0x09c8", "cau=0x099a 0x09cc", "ce=0x099a 0x09c7", "ci=0x099a 0x09bf", "cii=0x099a 0x09c0", "co=0x099a 0x09cb", "cu=0x099a 0x09c1", "cuu=0x099a 0x09c2", "ch=0x099a 0x09cd", "ch.h=0x099a 0x09cd 0x200c", "chA=0x099a 0x09be", "chI=0x099a 0x09c0", "chLLI=0x099a 0x09e3", "chLLi=0x099a 0x09e2", "chL^I=0x099a 0x09e3", "chL^i=0x099a 0x09e2", "chRRI=0x099a 0x09c4", "chRRi=0x099a 0x09c3", "chR^I=0x099a 0x09c4", "chR^i=0x099a 0x09c3", "chU=0x099a 0x09c2", "cha=0x099a", "chaa=0x099a 0x09be", "chai=0x099a 0x09c8", "chau=0x099a 0x09cc", "che=0x099a 0x09c7", "chi=0x099a 0x09bf", "chii=0x099a 0x09c0", "cho=0x099a 0x09cb", "chu=0x099a 0x09c1", "chuu=0x099a 0x09c2", "chh=0x099b 0x09cd", "chh.h=0x099b 0x09cd 0x200c", "chhA=0x099b 0x09be", "chhI=0x099b 0x09c0", "chhLLI=0x099b 0x09e3", "chhLLi=0x099b 0x09e2", "chhL^I=0x099b 0x09e3", "chhL^i=0x099b 0x09e2", "chhRRI=0x099b 0x09c4", "chhRRi=0x099b 0x09c3", "chhR^I=0x099b 0x09c4", "chhR^i=0x099b 0x09c3", "chhU=0x099b 0x09c2", "chha=0x099b", "chhaa=0x099b 0x09be", "chhai=0x099b 0x09c8", "chhau=0x099b 0x09cc", "chhe=0x099b 0x09c7", "chhi=0x099b 0x09bf", "chhii=0x099b 0x09c0", "chho=0x099b 0x09cb", "chhu=0x099b 0x09c1", "chhuu=0x099b 0x09c2", "d=0x09a6 0x09cd", "d.h=0x09a6 0x09cd 0x200c", "dA=0x09a6 0x09be", "dI=0x09a6 0x09c0", "dLLI=0x09a6 0x09e3", "dLLi=0x09a6 0x09e2", "dL^I=0x09a6 0x09e3", "dL^i=0x09a6 0x09e2", "dRRI=0x09a6 0x09c4", "dRRi=0x09a6 0x09c3", "dR^I=0x09a6 0x09c4", "dR^i=0x09a6 0x09c3", "dU=0x09a6 0x09c2", "da=0x09a6", "daa=0x09a6 0x09be", "dai=0x09a6 0x09c8", "dau=0x09a6 0x09cc", "de=0x09a6 0x09c7", "di=0x09a6 0x09bf", "dii=0x09a6 0x09c0", "do=0x09a6 0x09cb", "du=0x09a6 0x09c1", "duu=0x09a6 0x09c2", "dh=0x09a7 0x09cd", "dh.h=0x09a7 0x09cd 0x200c", "dhA=0x09a7 0x09be", "dhI=0x09a7 0x09c0", "dhLLI=0x09a7 0x09e3", "dhLLi=0x09a7 0x09e2", "dhL^I=0x09a7 0x09e3", "dhL^i=0x09a7 0x09e2", "dhRRI=0x09a7 0x09c4", "dhRRi=0x09a7 0x09c3", "dhR^I=0x09a7 0x09c4", "dhR^i=0x09a7 0x09c3", "dhU=0x09a7 0x09c2", "dha=0x09a7", "dhaa=0x09a7 0x09be", "dhai=0x09a7 0x09c8", "dhau=0x09a7 0x09cc", "dhe=0x09a7 0x09c7", "dhi=0x09a7 0x09bf", "dhii=0x09a7 0x09c0", "dho=0x09a7 0x09cb", "dhu=0x09a7 0x09c1", "dhuu=0x09a7 0x09c2", "dny=0x099c 0x09cd 0x099e 0x09cd", "dny.h=0x099c 0x09cd 0x099e 0x09cd 0x200c", "dnyA=0x099c 0x09cd 0x099e 0x09be", "dnyI=0x099c 0x09cd 0x099e 0x09c0", "dnyLLI=0x099c 0x09cd 0x099e 0x09e3", "dnyLLi=0x099c 0x09cd 0x099e 0x09e2", "dnyL^I=0x099c 0x09cd 0x099e 0x09e3", "dnyL^i=0x099c 0x09cd 0x099e 0x09e2", "dnyRRI=0x099c 0x09cd 0x099e 0x09c4", "dnyRRi=0x099c 0x09cd 0x099e 0x09c3", "dnyR^I=0x099c 0x09cd 0x099e 0x09c4", "dnyR^i=0x099c 0x09cd 0x099e 0x09c3", "dnyU=0x099c 0x09cd 0x099e 0x09c2", "dnya=0x099c 0x09cd 0x099e", "dnyaa=0x099c 0x09cd 0x099e 0x09be", "dnyai=0x099c 0x09cd 0x099e 0x09c8", "dnyau=0x099c 0x09cd 0x099e 0x09cc", "dnye=0x099c 0x09cd 0x099e 0x09c7", "dnyi=0x099c 0x09cd 0x099e 0x09bf", "dnyii=0x099c 0x09cd 0x099e 0x09c0", "dnyo=0x099c 0x09cd 0x099e 0x09cb", "dnyu=0x099c 0x09cd 0x099e 0x09c1", "dnyuu=0x099c 0x09cd 0x099e 0x09c2", "g=0x0997 0x09cd", "g.h=0x0997 0x09cd 0x200c", "gA=0x0997 0x09be", "gI=0x0997 0x09c0", "gLLI=0x0997 0x09e3", "gLLi=0x0997 0x09e2", "gL^I=0x0997 0x09e3", "gL^i=0x0997 0x09e2", "gRRI=0x0997 0x09c4", "gRRi=0x0997 0x09c3", "gR^I=0x0997 0x09c4", "gR^i=0x0997 0x09c3", "gU=0x0997 0x09c2", "ga=0x0997", "gaa=0x0997 0x09be", "gai=0x0997 0x09c8", "gau=0x0997 0x09cc", "ge=0x0997 0x09c7", "gi=0x0997 0x09bf", "gii=0x0997 0x09c0", "go=0x0997 0x09cb", "gu=0x0997 0x09c1", "guu=0x0997 0x09c2", "gh=0x0998 0x09cd", "gh.h=0x0998 0x09cd 0x200c", "ghA=0x0998 0x09be", "ghI=0x0998 0x09c0", "ghLLI=0x0998 0x09e3", "ghLLi=0x0998 0x09e2", "ghL^I=0x0998 0x09e3", "ghL^i=0x0998 0x09e2", "ghRRI=0x0998 0x09c4", "ghRRi=0x0998 0x09c3", "ghR^I=0x0998 0x09c4", "ghR^i=0x0998 0x09c3", "ghU=0x0998 0x09c2", "gha=0x0998", "ghaa=0x0998 0x09be", "ghai=0x0998 0x09c8", "ghau=0x0998 0x09cc", "ghe=0x0998 0x09c7", "ghi=0x0998 0x09bf", "ghii=0x0998 0x09c0", "gho=0x0998 0x09cb", "ghu=0x0998 0x09c1", "ghuu=0x0998 0x09c2", "h=0x09b9 0x09cd", "h.h=0x09b9 0x09cd 0x200c", "hA=0x09b9 0x09be", "hI=0x09b9 0x09c0", "hLLI=0x09b9 0x09e3", "hLLi=0x09b9 0x09e2", "hL^I=0x09b9 0x09e3", "hL^i=0x09b9 0x09e2", "hRRI=0x09b9 0x09c4", "hRRi=0x09b9 0x09c3", "hR^I=0x09b9 0x09c4", "hR^i=0x09b9 0x09c3", "hU=0x09b9 0x09c2", "ha=0x09b9", "haa=0x09b9 0x09be", "hai=0x09b9 0x09c8", "hau=0x09b9 0x09cc", "he=0x09b9 0x09c7", "hi=0x09b9 0x09bf", "hii=0x09b9 0x09c0", "ho=0x09b9 0x09cb", "hu=0x09b9 0x09c1", "huu=0x09b9 0x09c2", "j=0x099c 0x09cd", "j.h=0x099c 0x09cd 0x200c", "jA=0x099c 0x09be", "jI=0x099c 0x09c0", "jLLI=0x099c 0x09e3", "jLLi=0x099c 0x09e2", "jL^I=0x099c 0x09e3", "jL^i=0x099c 0x09e2", "jRRI=0x099c 0x09c4", "jRRi=0x099c 0x09c3", "jR^I=0x099c 0x09c4", "jR^i=0x099c 0x09c3", "jU=0x099c 0x09c2", "ja=0x099c", "jaa=0x099c 0x09be", "jai=0x099c 0x09c8", "jau=0x099c 0x09cc", "je=0x099c 0x09c7", "ji=0x099c 0x09bf", "jii=0x099c 0x09c0", "jo=0x099c 0x09cb", "ju=0x099c 0x09c1", "juu=0x099c 0x09c2", "jh=0x099d 0x09cd", "jh.h=0x099d 0x09cd 0x200c", "jhA=0x099d 0x09be", "jhI=0x099d 0x09c0", "jhLLI=0x099d 0x09e3", "jhLLi=0x099d 0x09e2", "jhL^I=0x099d 0x09e3", "jhL^i=0x099d 0x09e2", "jhRRI=0x099d 0x09c4", "jhRRi=0x099d 0x09c3", "jhR^I=0x099d 0x09c4", "jhR^i=0x099d 0x09c3", "jhU=0x099d 0x09c2", "jha=0x099d", "jhaa=0x099d 0x09be", "jhai=0x099d 0x09c8", "jhau=0x099d 0x09cc", "jhe=0x099d 0x09c7", "jhi=0x099d 0x09bf", "jhii=0x099d 0x09c0", "jho=0x099d 0x09cb", "jhu=0x099d 0x09c1", "jhuu=0x099d 0x09c2", "k=0x0995 0x09cd", "k.h=0x0995 0x09cd 0x200c", "kA=0x0995 0x09be", "kI=0x0995 0x09c0", "kLLI=0x0995 0x09e3", "kLLi=0x0995 0x09e2", "kL^I=0x0995 0x09e3", "kL^i=0x0995 0x09e2", "kRRI=0x0995 0x09c4", "kRRi=0x0995 0x09c3", "kR^I=0x0995 0x09c4", "kR^i=0x0995 0x09c3", "kU=0x0995 0x09c2", "ka=0x0995", "kaa=0x0995 0x09be", "kai=0x0995 0x09c8", "kau=0x0995 0x09cc", "ke=0x0995 0x09c7", "ki=0x0995 0x09bf", "kii=0x0995 0x09c0", "ko=0x0995 0x09cb", "ku=0x0995 0x09c1", "kuu=0x0995 0x09c2", "kh=0x0996 0x09cd", "kh.h=0x0996 0x09cd 0x200c", "khA=0x0996 0x09be", "khI=0x0996 0x09c0", "khLLI=0x0996 0x09e3", "khLLi=0x0996 0x09e2", "khL^I=0x0996 0x09e3", "khL^i=0x0996 0x09e2", "khRRI=0x0996 0x09c4", "khRRi=0x0996 0x09c3", "khR^I=0x0996 0x09c4", "khR^i=0x0996 0x09c3", "khU=0x0996 0x09c2", "kha=0x0996", "khaa=0x0996 0x09be", "khai=0x0996 0x09c8", "khau=0x0996 0x09cc", "khe=0x0996 0x09c7", "khi=0x0996 0x09bf", "khii=0x0996 0x09c0", "kho=0x0996 0x09cb", "khu=0x0996 0x09c1", "khuu=0x0996 0x09c2", "l=0x09b2 0x09cd", "l.h=0x09b2 0x09cd 0x200c", "lA=0x09b2 0x09be", "lI=0x09b2 0x09c0", "lLLI=0x09b2 0x09e3", "lLLi=0x09b2 0x09e2", "lL^I=0x09b2 0x09e3", "lL^i=0x09b2 0x09e2", "lRRI=0x09b2 0x09c4", "lRRi=0x09b2 0x09c3", "lR^I=0x09b2 0x09c4", "lR^i=0x09b2 0x09c3", "lU=0x09b2 0x09c2", "la=0x09b2", "laa=0x09b2 0x09be", "lai=0x09b2 0x09c8", "lau=0x09b2 0x09cc", "le=0x09b2 0x09c7", "li=0x09b2 0x09bf", "lii=0x09b2 0x09c0", "lo=0x09b2 0x09cb", "lu=0x09b2 0x09c1", "luu=0x09b2 0x09c2", "m=0x09ae 0x09cd", "m.h=0x09ae 0x09cd 0x200c", "mA=0x09ae 0x09be", "mI=0x09ae 0x09c0", "mLLI=0x09ae 0x09e3", "mLLi=0x09ae 0x09e2", "mL^I=0x09ae 0x09e3", "mL^i=0x09ae 0x09e2", "mRRI=0x09ae 0x09c4", "mRRi=0x09ae 0x09c3", "mR^I=0x09ae 0x09c4", "mR^i=0x09ae 0x09c3", "mU=0x09ae 0x09c2", "ma=0x09ae", "maa=0x09ae 0x09be", "mai=0x09ae 0x09c8", "mau=0x09ae 0x09cc", "me=0x09ae 0x09c7", "mi=0x09ae 0x09bf", "mii=0x09ae 0x09c0", "mo=0x09ae 0x09cb", "mu=0x09ae 0x09c1", "muu=0x09ae 0x09c2", "n=0x09a8 0x09cd", "n.h=0x09a8 0x09cd 0x200c", "nA=0x09a8 0x09be", "nI=0x09a8 0x09c0", "nLLI=0x09a8 0x09e3", "nLLi=0x09a8 0x09e2", "nL^I=0x09a8 0x09e3", "nL^i=0x09a8 0x09e2", "nRRI=0x09a8 0x09c4", "nRRi=0x09a8 0x09c3", "nR^I=0x09a8 0x09c4", "nR^i=0x09a8 0x09c3", "nU=0x09a8 0x09c2", "na=0x09a8", "naa=0x09a8 0x09be", "nai=0x09a8 0x09c8", "nau=0x09a8 0x09cc", "ne=0x09a8 0x09c7", "ni=0x09a8 0x09bf", "nii=0x09a8 0x09c0", "no=0x09a8 0x09cb", "nu=0x09a8 0x09c1", "nuu=0x09a8 0x09c2", "p=0x09aa 0x09cd", "p.h=0x09aa 0x09cd 0x200c", "pA=0x09aa 0x09be", "pI=0x09aa 0x09c0", "pLLI=0x09aa 0x09e3", "pLLi=0x09aa 0x09e2", "pL^I=0x09aa 0x09e3", "pL^i=0x09aa 0x09e2", "pRRI=0x09aa 0x09c4", "pRRi=0x09aa 0x09c3", "pR^I=0x09aa 0x09c4", "pR^i=0x09aa 0x09c3", "pU=0x09aa 0x09c2", "pa=0x09aa", "paa=0x09aa 0x09be", "pai=0x09aa 0x09c8", "pau=0x09aa 0x09cc", "pe=0x09aa 0x09c7", "pi=0x09aa 0x09bf", "pii=0x09aa 0x09c0", "po=0x09aa 0x09cb", "pu=0x09aa 0x09c1", "puu=0x09aa 0x09c2", "ph=0x09ab 0x09cd", "ph.h=0x09ab 0x09cd 0x200c", "phA=0x09ab 0x09be", "phI=0x09ab 0x09c0", "phLLI=0x09ab 0x09e3", "phLLi=0x09ab 0x09e2", "phL^I=0x09ab 0x09e3", "phL^i=0x09ab 0x09e2", "phRRI=0x09ab 0x09c4", "phRRi=0x09ab 0x09c3", "phR^I=0x09ab 0x09c4", "phR^i=0x09ab 0x09c3", "phU=0x09ab 0x09c2", "pha=0x09ab", "phaa=0x09ab 0x09be", "phai=0x09ab 0x09c8", "phau=0x09ab 0x09cc", "phe=0x09ab 0x09c7", "phi=0x09ab 0x09bf", "phii=0x09ab 0x09c0", "pho=0x09ab 0x09cb", "phu=0x09ab 0x09c1", "phuu=0x09ab 0x09c2", "r=0x09b0 0x09cd", "r.h=0x09b0 0x09cd 0x200c", "rA=0x09b0 0x09be", "rI=0x09b0 0x09c0", "rLLI=0x09b0 0x09e3", "rLLi=0x09b0 0x09e2", "rL^I=0x09b0 0x09e3", "rL^i=0x09b0 0x09e2", "rRRI=0x09b0 0x09c4", "rRRi=0x09b0 0x09c3", "rR^I=0x09b0 0x09c4", "rR^i=0x09b0 0x09c3", "rU=0x09b0 0x09c2", "ra=0x09b0", "raa=0x09b0 0x09be", "rai=0x09b0 0x09c8", "rau=0x09b0 0x09cc", "re=0x09b0 0x09c7", "ri=0x09b0 0x09bf", "rii=0x09b0 0x09c0", "ro=0x09b0 0x09cb", "ru=0x09b0 0x09c1", "ruu=0x09b0 0x09c2", "s=0x09b8 0x09cd", "s.h=0x09b8 0x09cd 0x200c", "sA=0x09b8 0x09be", "sI=0x09b8 0x09c0", "sLLI=0x09b8 0x09e3", "sLLi=0x09b8 0x09e2", "sL^I=0x09b8 0x09e3", "sL^i=0x09b8 0x09e2", "sRRI=0x09b8 0x09c4", "sRRi=0x09b8 0x09c3", "sR^I=0x09b8 0x09c4", "sR^i=0x09b8 0x09c3", "sU=0x09b8 0x09c2", "sa=0x09b8", "saa=0x09b8 0x09be", "sai=0x09b8 0x09c8", "sau=0x09b8 0x09cc", "se=0x09b8 0x09c7", "si=0x09b8 0x09bf", "sii=0x09b8 0x09c0", "so=0x09b8 0x09cb", "su=0x09b8 0x09c1", "suu=0x09b8 0x09c2", "sh=0x09b6 0x09cd", "sh.h=0x09b6 0x09cd 0x200c", "shA=0x09b6 0x09be", "shI=0x09b6 0x09c0", "shLLI=0x09b6 0x09e3", "shLLi=0x09b6 0x09e2", "shL^I=0x09b6 0x09e3", "shL^i=0x09b6 0x09e2", "shRRI=0x09b6 0x09c4", "shRRi=0x09b6 0x09c3", "shR^I=0x09b6 0x09c4", "shR^i=0x09b6 0x09c3", "shU=0x09b6 0x09c2", "sha=0x09b6", "shaa=0x09b6 0x09be", "shai=0x09b6 0x09c8", "shau=0x09b6 0x09cc", "she=0x09b6 0x09c7", "shi=0x09b6 0x09bf", "shii=0x09b6 0x09c0", "sho=0x09b6 0x09cb", "shu=0x09b6 0x09c1", "shuu=0x09b6 0x09c2", "shh=0x09b7 0x09cd", "shh.h=0x09b7 0x09cd 0x200c", "shhA=0x09b7 0x09be", "shhI=0x09b7 0x09c0", "shhLLI=0x09b7 0x09e3", "shhLLi=0x09b7 0x09e2", "shhL^I=0x09b7 0x09e3", "shhL^i=0x09b7 0x09e2", "shhRRI=0x09b7 0x09c4", "shhRRi=0x09b7 0x09c3", "shhR^I=0x09b7 0x09c4", "shhR^i=0x09b7 0x09c3", "shhU=0x09b7 0x09c2", "shha=0x09b7", "shhaa=0x09b7 0x09be", "shhai=0x09b7 0x09c8", "shhau=0x09b7 0x09cc", "shhe=0x09b7 0x09c7", "shhi=0x09b7 0x09bf", "shhii=0x09b7 0x09c0", "shho=0x09b7 0x09cb", "shhu=0x09b7 0x09c1", "shhuu=0x09b7 0x09c2", "t=0x09a4 0x09cd", "t.h=0x09a4 0x09cd 0x200c", "tA=0x09a4 0x09be", "tI=0x09a4 0x09c0", "tLLI=0x09a4 0x09e3", "tLLi=0x09a4 0x09e2", "tL^I=0x09a4 0x09e3", "tL^i=0x09a4 0x09e2", "tRRI=0x09a4 0x09c4", "tRRi=0x09a4 0x09c3", "tR^I=0x09a4 0x09c4", "tR^i=0x09a4 0x09c3", "tU=0x09a4 0x09c2", "ta=0x09a4", "taa=0x09a4 0x09be", "tai=0x09a4 0x09c8", "tau=0x09a4 0x09cc", "te=0x09a4 0x09c7", "ti=0x09a4 0x09bf", "tii=0x09a4 0x09c0", "to=0x09a4 0x09cb", "tu=0x09a4 0x09c1", "tuu=0x09a4 0x09c2", "th=0x09a5 0x09cd", "th.h=0x09a5 0x09cd 0x200c", "thA=0x09a5 0x09be", "thI=0x09a5 0x09c0", "thLLI=0x09a5 0x09e3", "thLLi=0x09a5 0x09e2", "thL^I=0x09a5 0x09e3", "thL^i=0x09a5 0x09e2", "thRRI=0x09a5 0x09c4", "thRRi=0x09a5 0x09c3", "thR^I=0x09a5 0x09c4", "thR^i=0x09a5 0x09c3", "thU=0x09a5 0x09c2", "tha=0x09a5", "thaa=0x09a5 0x09be", "thai=0x09a5 0x09c8", "thau=0x09a5 0x09cc", "the=0x09a5 0x09c7", "thi=0x09a5 0x09bf", "thii=0x09a5 0x09c0", "tho=0x09a5 0x09cb", "thu=0x09a5 0x09c1", "thuu=0x09a5 0x09c2", "v=0x09ac 0x09cd", "v.h=0x09ac 0x09cd 0x200c", "vA=0x09ac 0x09be", "vI=0x09ac 0x09c0", "vLLI=0x09ac 0x09e3", "vLLi=0x09ac 0x09e2", "vL^I=0x09ac 0x09e3", "vL^i=0x09ac 0x09e2", "vRRI=0x09ac 0x09c4", "vRRi=0x09ac 0x09c3", "vR^I=0x09ac 0x09c4", "vR^i=0x09ac 0x09c3", "vU=0x09ac 0x09c2", "va=0x09ac", "vaa=0x09ac 0x09be", "vai=0x09ac 0x09c8", "vau=0x09ac 0x09cc", "ve=0x09ac 0x09c7", "vi=0x09ac 0x09bf", "vii=0x09ac 0x09c0", "vo=0x09ac 0x09cb", "vu=0x09ac 0x09c1", "vuu=0x09ac 0x09c2", "x=0x0995 0x09cd 0x09b7 0x09cd", "x.h=0x0995 0x09cd 0x09b7 0x09cd 0x200c", "xA=0x0995 0x09cd 0x09b7 0x09be", "xI=0x0995 0x09cd 0x09b7 0x09c0", "xLLI=0x0995 0x09cd 0x09b7 0x09e3", "xLLi=0x0995 0x09cd 0x09b7 0x09e2", "xL^I=0x0995 0x09cd 0x09b7 0x09e3", "xL^i=0x0995 0x09cd 0x09b7 0x09e2", "xRRI=0x0995 0x09cd 0x09b7 0x09c4", "xRRi=0x0995 0x09cd 0x09b7 0x09c3", "xR^I=0x0995 0x09cd 0x09b7 0x09c4", "xR^i=0x0995 0x09cd 0x09b7 0x09c3", "xU=0x0995 0x09cd 0x09b7 0x09c2", "xa=0x0995 0x09cd 0x09b7", "xaa=0x0995 0x09cd 0x09b7 0x09be", "xai=0x0995 0x09cd 0x09b7 0x09c8", "xau=0x0995 0x09cd 0x09b7 0x09cc", "xe=0x0995 0x09cd 0x09b7 0x09c7", "xi=0x0995 0x09cd 0x09b7 0x09bf", "xii=0x0995 0x09cd 0x09b7 0x09c0", "xo=0x0995 0x09cd 0x09b7 0x09cb", "xu=0x0995 0x09cd 0x09b7 0x09c1", "xuu=0x0995 0x09cd 0x09b7 0x09c2", "y=0x09af 0x09cd", "y.h=0x09af 0x09cd 0x200c", "yA=0x09af 0x09be", "yI=0x09af 0x09c0", "yLLI=0x09af 0x09e3", "yLLi=0x09af 0x09e2", "yL^I=0x09af 0x09e3", "yL^i=0x09af 0x09e2", "yRRI=0x09af 0x09c4", "yRRi=0x09af 0x09c3", "yR^I=0x09af 0x09c4", "yR^i=0x09af 0x09c3", "yU=0x09af 0x09c2", "ya=0x09af", "yaa=0x09af 0x09be", "yai=0x09af 0x09c8", "yau=0x09af 0x09cc", "ye=0x09af 0x09c7", "yi=0x09af 0x09bf", "yii=0x09af 0x09c0", "yo=0x09af 0x09cb", "yu=0x09af 0x09c1", "yuu=0x09af 0x09c2", "~N=0x0999 0x09cd", "~N.h=0x0999 0x09cd 0x200c", "~NA=0x0999 0x09be", "~NI=0x0999 0x09c0", "~NLLI=0x0999 0x09e3", "~NLLi=0x0999 0x09e2", "~NL^I=0x0999 0x09e3", "~NL^i=0x0999 0x09e2", "~NRRI=0x0999 0x09c4", "~NRRi=0x0999 0x09c3", "~NR^I=0x0999 0x09c4", "~NR^i=0x0999 0x09c3", "~NU=0x0999 0x09c2", "~Na=0x0999", "~Naa=0x0999 0x09be", "~Nai=0x0999 0x09c8", "~Nau=0x0999 0x09cc", "~Ne=0x0999 0x09c7", "~Ni=0x0999 0x09bf", "~Nii=0x0999 0x09c0", "~No=0x0999 0x09cb", "~Nu=0x0999 0x09c1", "~Nuu=0x0999 0x09c2", "~n=0x099e 0x09cd", "~n.h=0x099e 0x09cd 0x200c", "~nA=0x099e 0x09be", "~nI=0x099e 0x09c0", "~nLLI=0x099e 0x09e3", "~nLLi=0x099e 0x09e2", "~nL^I=0x099e 0x09e3", "~nL^i=0x099e 0x09e2", "~nRRI=0x099e 0x09c4", "~nRRi=0x099e 0x09c3", "~nR^I=0x099e 0x09c4", "~nR^i=0x099e 0x09c3", "~nU=0x099e 0x09c2", "~na=0x099e", "~naa=0x099e 0x09be", "~nai=0x099e 0x09c8", "~nau=0x099e 0x09cc", "~ne=0x099e 0x09c7", "~ni=0x099e 0x09bf", "~nii=0x099e 0x09c0", "~no=0x099e 0x09cb", "~nu=0x099e 0x09c1", "~nuu=0x099e 0x09c2", // Independent vowels "a=0x0985", "A=0x0986", "aa=0x0986", "i=0x0987", "I=0x0988", "ii=0x0988", "u=0x0989", "U=0x098a", "uu=0x098a", "R^i=0x098b", "RRi=0x098b", "L^i=0x098c", "LLi=0x098c", "e=0x098f", "ai=0x0990", "o=0x0993", "au=0x0994", "R^I=0x09e0", "RRI=0x09e0", "L^I=0x09e1", "LLI=0x09e1", // Numbers "0x30=0x09e6", "0x31=0x09e7", "0x32=0x09e8", "0x33=0x09e9", "0x34=0x09ea", "0x35=0x09eb", "0x36=0x09ec", "0x37=0x09ed", "0x38=0x09ee", "0x39=0x09ef", // Other marks ".N=0x0981", ".n=0x0982", "M=0x0982", "H=0x0983", ".a=0x09bd", ".h=0x09cd 0x200c", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Urdu-Nastaliq.kmap0000644000175000017500000000651107670120450016657 0ustar henrichhenrich// Urdu-Nastaliq-Unicode.kmap by S H A N // 1 keycode = 1 character //Common Urdu Alphabets from Arabic Unicode (‮اردو حروف تہجی‬) ", = 0x060C", // Urdu Comma(‮،‬) "; = 0x061B", // Urdu Semicolon(‮؛‬) "`= 0x0621", // Urdu Hamza(‮ء‬) "`y= 0x0626", // Urdu Yeh w/Hamza(‮ئ‬) "`Y = 0x06D3", // Urdu Bari Yeh w/ Hamza (‮ۓ‬) "`h = 0x06C2", // Urdu Hey Goal w/ Hamza(‮ۂ‬) "A= 0x0622", // Urdu Alif Mad'a(‮آ‬) "a = 0x0627", // Urdu Alif(‮ا‬) "b = 0x0628", // Urdu Beh(‮ب‬) "t = 0x062A", // Urdu Teh(‮ت‬) "si = 0x062B", // Urdu Seh(‮ث‬) "g = 0x062C", // Urdu Geem(‮ج‬) "hi = 0x062D", // Urdu Hey(‮ح‬) "ki = 0x062E", // Urdu Khey(‮خ‬) "d = 0x062F", // Urdu Dal(‮د‬) "Z = 0x0630", // Urdu Zal(‮ذ‬) "r = 0x0631", // Urdu Ray(‮ر‬) "z = 0x0632", // Urdu Zay(‮ز‬) "s = 0x0633", // Urdu Seen(‮س‬) "S = 0x0634", // Urdu Sheen(‮ش‬) "Si = 0x0635", // Urdu Suad(‮ص‬) "zi = 0x0636", // Urdu Zuad(‮ض‬) "ti = 0x0637", // Urdu Tuay(‮ط‬) "Zi = 0x0638", // Urdu Zuay(‮ظ‬) "e = 0x0639", // Urdu Aien(‮ع‬) "G = 0x063A", // Urdu Ghain(‮غ‬) "f = 0x0641", // Urdu Fay(‮ف‬) "K = 0x0642", // Urdu Qaaf(‮ق‬) "k = 0x06A9", // Urdu Qaf(‮ک‬) "l = 0x0644", // Urdu Laam(‮ل‬) "m = 0x0645", // Urdu Meem(‮م‬) "n = 0x0646", // Urdu Noon (‮ن‬) "H = 0x06BE", // Urdu Duo Chashmi Hey(‮ھ‬) "w = 0x0648", // Urdu Wow(‮و‬) "y = 0x06CC", // Urdu Yeh(‮ﯼ‬) "yi = 0x0649 0x0670", // Urdu Mud Yeh(‮ﱝ‬) //Urdu Numerals‮ (اردو اعداد )‬ "0x30 = 0x06F0", // Urdu Sifar(‮۰‬) "0x31 = 0x06F1", // Urdu Aik(‮۱‬) "0x32 = 0x06F2", // Urdu Duo(‮۲‬) "0x33 = 0x06F3", // Urdu Teen(‮۳‬) "0x34 = 0x06F4", // Urdu Char(‮۴‬) "0x35 = 0x06F5", // Urdu Panch(‮۵‬) "0x36 = 0x06F6", // Urdu Chay(‮۶‬) "0x37 = 0x06F7", // Urdu Saat(‮۷‬) "0x38 = 0x06F8", // Urdu Aath(‮۸‬) "0x39 = 0x06F9", // Urdu Nuo (‮۹‬) // Urdu Mathematical Symbols‮ ‬(‮اردو حسابی ہندسے ‬) "% = 0x066A", // Urdu Percent Symbol (‮٪‬) // Urdu Punctuation ( ‮استامعرات‬ ‮اردو‬) "? = 0x061F", // Urdu Swalia Nishan(‮؟‬) "v = 0x064e", // Urdu Zabar(‮ـَ‬) "V = 0x0650", // Urdu Zair(‮ـِ‬) "vi = 0x064b", // Urdu Double Zabar(‮ـً‬) "Vi = 0x064f", // Urdu Paish(‮ـُ‬) "vo = 0x0651", // Urdu Tashdeed(‮ـّ‬) "- = 0x0640", // Urdu Hyphen(‮ـ‬) ". = 0x06D4", // Urdu Full Stop (‮۔‬) // Special Urdu Alphabets from Arabic Unicode (‮عربی‬) "T = 0x0679", // Urdu Tay(‮ٹ‬) "p = 0x067E", // Urdu Pay(‮پ‬) "c = 0x0686", // Urdu Chey(‮چ‬) "D = 0x0688", // Urdu Daal(‮ڈ‬) "Di = 0x0690", // Urdu Daaal (‮ڐ‬) "R = 0x0691", // Urdu Raay(‮ڑ‬) "j = 0x06AF", // Urdu Gaaf(‮گ‬) "ji = 0x0698", // Urdu Jeh (‮ژ‬) "N = 0x06BA", // Urdu Noon Ghun'a(‮ں‬) "Hi = 0x06C0", // Urdu Izafet (‮ۀ‬) "h = 0x06C1", // Urdu Hey Goal(‮ہ‬) "ho = 0x06C2", // Urdu Hey Goal w/ Hamza(‮ۂ‬) "Ho = 0x06C3", // Urdu Teh Marbuta Goal(‮ۃ‬) "W = 0x0648 0x0657", // Urdu Wow w/ Ulta Pesh(‮وٗ‬) "Y = 0x06D2", // Urdu Bari Yeh(‮ے‬) "Yi = 0x06D3", // Urdu Bari Yeh w/ Hamza (‮ۓ‬) "Ki = 0x06A9 0x200D 0x0644", // Urdu Kal(‮ک‍ل‬) "ko = 0x06A9 0x200D 0x0627", // Urdu Ka(‮ک‍ا‬) ./mytool/kmap/Ukrainian-Translit.kmap0000644000175000017500000001403407535000454017705 0ustar henrichhenrich// Ukrainian input table, following Slovene (and similarly other Slavic languages) // transliteration (except soft sign) // You might want to replace 'j' with 'y' in some examples to obtain English transliteration // Any additions, corrections and comments are welcome (esp. if you're an Ukrainian) // If your keyboard supports ISO 8859-2 you can get letters 'sh', 'ch', 'zh' and 'shch' // using combinations of Latin letters 'ch', 'sh' and 'zh' (in Slovene, Croatian, Czech, Slovak, ...) // WARNING: always open this file in any of 8-bit encodings !!! // If you by accident opened it in any other encoding (7-bit, any version of Unicode, // close it without saving and reopen it in any 8-bit encoding or some inputs for // 'shch' will not work // Latest version: Jernej Kovacic 2002-08-02 // Capital letters first, sorted by Ukrainian alphabet: "A=0x0410", // CYRILLIC CAPITAL LETTER A "B=0x0411", // CYRILLIC CAPITAL LETTER B "V=0x0412", // CYRILLIC CAPITAL LETTER V "G=0x0413", // CYRILLIC CAPITAL LETTER G (same as Russian 'G') "GH=0x0490", // CYRILLIC CAPITAL LETTER UKRAINIAN GHE WITH UPTURN "Gh=0x0490", // CYRILLIC CAPITAL LETTER UKRAINIAN GHE WITH UPTURN "D=0x0414", // CYRILLIC CAPITAL LETTER D "E=0x0415", // CYRILLIC CAPITAL LETTER E "JE=0x0404", // CYRILLIC CAPITAL LETTER UKRAINIAN YE "Je=0x0404", // CYRILLIC CAPITAL LETTER UKRAINIAN YE "YE=0x0404", // CYRILLIC CAPITAL LETTER UKRAINIAN YE "Ye=0x0404", // CYRILLIC CAPITAL LETTER UKRAINIAN YE "ZH=0x0416", // CYRILLIC CAPITAL LETTER ZH "Zh=0x0416", // CYRILLIC CAPITAL LETTER ZH "0xAE=0x0416", // CYRILLIC CAPITAL LETTER ZH "Z=0x0417", // CYRILLIC CAPITAL LETTER Z "Y=0x0418", // CYRILLIC CAPITAL LETTER UKRAINIAN SHORT I (UKRAINIAN EQUIVALENT TO RUSSIAN 'bI') "I=0x0406", // CYRILLIC CAPITAL LETTER UKRAINIAN I "JI=0x0407", // CYRILLIC CAPITAL LETTER UKRAINIAN YI "Ji=0x0407", // CYRILLIC CAPITAL LETTER UKRAINIAN YI "YI=0x0407", // CYRILLIC CAPITAL LETTER UKRAINIAN YI "Yi=0x0407", // CYRILLIC CAPITAL LETTER UKRAINIAN YI "J=0x0419", // CYRILLIC CAPITAL LETTER Y "K=0x041A", // CYRILLIC CAPITAL LETTER K "L=0x041B", // CYRILLIC CAPITAL LETTER L "M=0x041C", // CYRILLIC CAPITAL LETTER M "N=0x041D", // CYRILLIC CAPITAL LETTER N "O=0x041E", // CYRILLIC CAPITAL LETTER O "P=0x041F", // CYRILLIC CAPITAL LETTER P "R=0x0420", // CYRILLIC CAPITAL LETTER R "S=0x0421", // CYRILLIC CAPITAL LETTER S "T=0x0422", // CYRILLIC CAPITAL LETTER T "U=0x0423", // CYRILLIC CAPITAL LETTER U "F=0x0424", // CYRILLIC CAPITAL LETTER F "H=0x0425", // CYRILLIC CAPITAL LETTER KH "KH=0x0425", // CYRILLIC CAPITAL LETTER KH "Kh=0x0425", // CYRILLIC CAPITAL LETTER KH "C=0x0426", // CYRILLIC CAPITAL LETTER TS "CH=0x0427", // CYRILLIC CAPITAL LETTER CH "Ch=0x0427", // CYRILLIC CAPITAL LETTER CH "0xC8=0x0427", // CYRILLIC CAPITAL LETTER CH "SH=0x0428", // CYRILLIC CAPITAL LETTER SH "Sh=0x0428", // CYRILLIC CAPITAL LETTER SH "0xA9=0x0428", // CYRILLIC CAPITAL LETTER SH "SHCH=0x0429", // CYRILLIC CAPITAL LETTER SHCH "Shch=0x0429", // CYRILLIC CAPITAL LETTER SHCH "SHch=0x0429", // CYRILLIC CAPITAL LETTER SHCH "ShCh=0x0429", // CYRILLIC CAPITAL LETTER SHCH "SHCh=0x0429", // CYRILLIC CAPITAL LETTER SHCH "=0x0429", // CYRILLIC CAPITAL LETTER SHCH "=0x0429", // CYRILLIC CAPITAL LETTER SHCH "JU=0x042E", // CYRILLIC CAPITAL LETTER YU "Ju=0x042E", // CYRILLIC CAPITAL LETTER YU "YU=0x042E", // CYRILLIC CAPITAL LETTER YU "Yu=0x042E", // CYRILLIC CAPITAL LETTER YU "JA=0x042F", // CYRILLIC CAPITAL LETTER YA "Ja=0x042F", // CYRILLIC CAPITAL LETTER YA "YA=0x042F", // CYRILLIC CAPITAL LETTER YA "Ya=0x042F", // CYRILLIC CAPITAL LETTER YA "X=0x042C", // CYRILLIC CAPITAL LETTER SOFT SIGN "Q=0x042C", // CYRILLIC CAPITAL LETTER SOFT SIGN // The same thing in lower case: "a=0x0430", // CYRILLIC SMALL LETTER A "b=0x0431", // CYRILLIC SMALL LETTER B "v=0x0432", // CYRILLIC SMALL LETTER V "g=0x0433", // CYRILLIC SMALL LETTER G (same as Russian 'G') "gh=0x0491", // CYRILLIC SMALL LETTER UKRAINIAN GHE WITH UPTURN "d=0x0434", // CYRILLIC SMALL LETTER D "e=0x0435", // CYRILLIC SMALL LETTER E "je=0x0454", // CYRILLIC SMALL LETTER UKRAINIAN YE "ye=0x0454", // CYRILLIC SMALL LETTER UKRAINIAN YE "zh=0x0436", // CYRILLIC SMALL LETTER ZH "0xBE=0x0436", // CYRILLIC SMALL LETTER ZH "z=0x0437", // CYRILLIC SMALL LETTER Z "y=0x0438", // CYRILLIC SMALL LETTER UKRAINIAN SHORT I (UKRAINIAN EQUIVALENT TO RUSSIAN 'bI') "i=0x0456", // CYRILLIC SMALL LETTER UKRAINIAN I "ji=0x0457", // CYRILLIC SMALL LETTER UKRAINIAN YI "yi=0x0457", // CYRILLIC SMALL LETTER UKRAINIAN YI "j=0x0439", // CYRILLIC SMALL LETTER Y "k=0x043A", // CYRILLIC SMALL LETTER K "l=0x043B", // CYRILLIC SMALL LETTER L "m=0x043C", // CYRILLIC SMALL LETTER M "n=0x043D", // CYRILLIC SMALL LETTER N "o=0x043E", // CYRILLIC SMALL LETTER O "p=0x043F", // CYRILLIC SMALL LETTER P "r=0x0440", // CYRILLIC SMALL LETTER R "s=0x0441", // CYRILLIC SMALL LETTER S "t=0x0442", // CYRILLIC SMALL LETTER T "u=0x0443", // CYRILLIC SMALL LETTER U "f=0x0444", // CYRILLIC SMALL LETTER F "h=0x0445", // CYRILLIC SMALL LETTER KH "kh=0x0445", // CYRILLIC SMALL LETTER KH "c=0x0446", // CYRILLIC SMALL LETTER TS "ch=0x0447", // CYRILLIC SMALL LETTER CH "0xE8=0x0447", // CYRILLIC SMALL LETTER CH "sh=0x0448", // CYRILLIC SMALL LETTER SH "0xB9=0x0448", // CYRILLIC SMALL LETTER SH "shch=0x0449", // CYRILLIC SMALL LETTER SHCH "=0x0449", // CYRILLIC SMALL LETTER SHCH "ju=0x044E", // CYRILLIC SMALL LETTER YU "yu=0x044E", // CYRILLIC SMALL LETTER YU "ja=0x044F", // CYRILLIC SMALL LETTER YA "ya=0x044F", // CYRILLIC SMALL LETTER YA "x=0x044C", // CYRILLIC SMALL LETTER SOFT SIGN "q=0x044C", // CYRILLIC SMALL LETTER SOFT SIGN ./mytool/kmap/HungarianRunes.kmap0000644000175000017500000000762507574405042017134 0ustar henrichhenrich// HungarianRunes - renames from OldHungarian.kmap // GNU (C) Gaspar Sinai // This kmap will convert keystrokes to old Hungarian letters // and ligatures into Unicode Private Use Area // The repülőékezet is used: // o + : will become ö for instance. // Note that files created with this kmap may not be portable. // Tokyo 2002-02-01 // OLD HUNGARIAN LETTERS "a = 0xEE00", //  OLD HUNGARIAN LETTER A "a 0x27 = 0xEE01", //  OLD HUNGARIAN LETTER AA "b = 0xEE02", //  OLD HUNGARIAN LETTER EB "c = 0xEE03", //  OLD HUNGARIAN LETTER EC "c s = 0xEE04", //  OLD HUNGARIAN LETTER ECS "d = 0xEE05", //  OLD HUNGARIAN LETTER ED "A E = 0xEE06", //  OLD HUNGARIAN LETTER AE "e = 0xEE07", //  OLD HUNGARIAN LETTER E "e 0x27 = 0xEE08", //  OLD HUNGARIAN LETTER EE "f = 0xEE09", //  OLD HUNGARIAN LETTER EF "g = 0xEE0A", //  OLD HUNGARIAN LETTER EG "g y = 0xEE0B", //  OLD HUNGARIAN LETTER EGY "h = 0xEE0C", //  OLD HUNGARIAN LETTER EH "i = 0xEE0D", //  OLD HUNGARIAN LETTER I "i 0x27 = 0xEE0E", //  OLD HUNGARIAN LETTER II "j = 0xEE0F", //  OLD HUNGARIAN LETTER EJ "K = 0xEE10", //  OLD HUNGARIAN LETTER AK "k = 0xEE11", //  OLD HUNGARIAN LETTER EK "l = 0xEE12", //  OLD HUNGARIAN LETTER EL "l y = 0xEE13", //  OLD HUNGARIAN LETTER ELY "m = 0xEE14", //  OLD HUNGARIAN LETTER EM "n = 0xEE15", //  OLD HUNGARIAN LETTER EN "n y = 0xEE16", //  OLD HUNGARIAN LETTER ENY "o = 0xEE17", //  OLD HUNGARIAN LETTER O "o 0x27 = 0xEE18", //  OLD HUNGARIAN LETTER OO "o 0x3a = 0xEE19", //  OLD HUNGARIAN LETTER OE "o 0x22 = 0xEE1A", //  OLD HUNGARIAN LETTER OEE "p = 0xEE1B", //  OLD HUNGARIAN LETTER EP "r = 0xEE1C", //  OLD HUNGARIAN LETTER ER "S = 0xEE1D", //  OLD HUNGARIAN LETTER AS "s = 0xEE1E", //  OLD HUNGARIAN LETTER ES "s z = 0xEE1F", //  OLD HUNGARIAN LETTER ESZ "t = 0xEE20", //  OLD HUNGARIAN LETTER ET "T Y = 0xEE21", //  OLD HUNGARIAN LETTER ATY "t y = 0xEE22", //  OLD HUNGARIAN LETTER ETY "u = 0xEE23", //  OLD HUNGARIAN LETTER U "u 0x27 = 0xEE24", //  OLD HUNGARIAN LETTER UU "u 0x3a = 0xEE25", //  OLD HUNGARIAN LETTER UE "u 0x22 = 0xEE26", //  OLD HUNGARIAN LETTER UEE "v = 0xEE27", //  OLD HUNGARIAN LETTER EV "z = 0xEE28", //  OLD HUNGARIAN LETTER EZ "z s = 0xEE29", //  OLD HUNGARIAN LETTER EZS // // SEPARATOR // "0x2d = 0xEE2F", // // OLD HUNGARIAN NUMBERS // "0x31 = 0xEE31", //  OLD HUNGARIAN NUMBER ONE "0x35 = 0xEE35", //  OLD HUNGARIAN NUMBER FIVE "0x31 0x30 = 0xEE3A", //  OLD HUNGARIAN NUMBER TEN "0x35 0x30 = 0xEE3B", //  OLD HUNGARIAN NUMBER FIFTY "0x31 0x30 0x30 = 0xEE3C", //  OLD HUNGARIAN NUMBER ONE HUNDRED "0x31 0x30 0x30 0x30 = 0xEE3D", //  OLD HUNGARIAN NUMBER ONE THOUSAND // // OLD HUNGARIAN LIGATURES // "AB = 0xEE40", "AD = 0xEE41", "AL = 0xEE42", "AMB = 0xEE43", "AND = 0xEE44", "ANT = 0xEE45", "AR = 0xEE46", "ATT = 0xEE47", "A 0x27 R = 0xEE48", "BA = 0xEE49", "BE = 0xEE4A", "BET = 0xEE4B", "BI = 0xEE4C", "BO = 0xEE4D", "CAK = 0xEE4E", "CK = 0xEE4F", "CSA = 0xEE50", "CSIN = 0xEE51", "DU = 0xEE52", "EMP = 0xEE53", "ENT = 0xEE54", "GA = 0xEE55", "GE = 0xEE56", "GI = 0xEE57", "GO = 0xEE58", "HA = 0xEE59", "HE = 0xEE5A", "HI = 0xEE5B", "HO = 0xEE5C", "IT = 0xEE5D", "I 0x27 RT = 0xEE5E", "LA = 0xEE5F", "LA 0x27 = 0xEE60", "LE = 0xEE61", "LO = 0xEE62", "LT = 0xEE63", "MB = 0xEE64", "NA = 0xEE65", "NAP = 0xEE66", "NB = 0xEE67", "NC = 0xEE68", "ND = 0xEE69", "NGY = 0xEE6A", "NI = 0xEE6B", "NK = 0xEE6C", "NT = 0xEE6D", "OR = 0xEE6E", "RA = 0xEE6F", "RE = 0xEE70", "RI = 0xEE71", "RO = 0xEE72", "RT = 0xEE73", "RU = 0xEE74", "SA = 0xEE75", "SE = 0xEE76", "SI = 0xEE77", "SK = 0xEE78", "SM = 0xEE79", "SO = 0xEE7A", "SP = 0xEE7B", "ST = 0xEE7C", "SZT = 0xEE7D", "TI = 0xEE7E", "TPRU = 0xEE7F", "TPRUS = 0xEE80", "TYA = 0xEE81", "UL = 0xEE82", "UM = 0xEE83", "UNK = 0xEE84", "UR = 0xEE85", "US = 0xEE86", "VA = 0xEE87", "VA 0x27 R = 0xEE88", "ZA = 0xEE89", "ZR = 0xEE8A", "ZT = 0xEE8B", ./mytool/kmap/SGML.kmap0000644000175000017500000013443410716560546014747 0ustar henrichhenrich// expand /usr/doc/unicode/mappings/obsolete/uni2sgml.txt | // perl -ne 'if(m/^([0-9A-F]{4}).{12}([a-z]\S+)/){for(split(/,/,$2)) // {print "\"&$_;=0x$1\",\n"}}' created this lovely SGML.kmap for // Gaspar Sinai's Unicode text editor Yudit // 1998-04-18 Roman Czyborra@cs.tu-berlin.de // 2001-10-Jernej Kovacic // The SGML keymap contains only small southern Slavic characters. I have added // their capital "counterparts" which cover Slovene, Croatian and Serbian (in // Latin transcription) languages. The 5 new characters are added at the end of // the original file. // // Regenerated with sgml.pl from original SGML file. // Gaspar Sinai 2007-11-14 // "&Aacgr;=0x0386", // GREEK CAPITAL LETTER ALPHA WITH TONOS "&aacgr;=0x03AC", // GREEK SMALL LETTER ALPHA WITH TONOS "Á=0x00C1", // LATIN CAPITAL LETTER A WITH ACUTE "á=0x00E1", // LATIN SMALL LETTER A WITH ACUTE "Ă=0x0102", // LATIN CAPITAL LETTER A WITH BREVE "ă=0x0103", // LATIN SMALL LETTER A WITH BREVE "Â=0x00C2", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX "â=0x00E2", // LATIN SMALL LETTER A WITH CIRCUMFLEX "´=0x00B4", // ACUTE ACCENT "А=0x0410", // CYRILLIC CAPITAL LETTER A "а=0x0430", // CYRILLIC SMALL LETTER A "Æ=0x00C6", // LATIN CAPITAL LETTER AE "æ=0x00E6", // LATIN SMALL LETTER AE "&Agr;=0x0391", // GREEK CAPITAL LETTER ALPHA "&agr;=0x03B1", // GREEK SMALL LETTER ALPHA "À=0x00C0", // LATIN CAPITAL LETTER A WITH GRAVE "à=0x00E0", // LATIN SMALL LETTER A WITH GRAVE "ℵ=0x2135", // ALEF SYMBOL "ℵ=0x2135", // ALEF SYMBOL "Α=0x0391", // GREEK CAPITAL LETTER ALPHA "α=0x03B1", // GREEK SMALL LETTER ALPHA "Ā=0x0100", // LATIN CAPITAL LETTER A WITH MACRON "ā=0x0101", // LATIN SMALL LETTER A WITH MACRON "⨿=0x2210", // N-ARY COPRODUCT "&=0x0026", // AMPERSAND "∧=0x2227", // LOGICAL AND "∠=0x2220", // ANGLE "&ang90;=0x221F", // RIGHT ANGLE "∡=0x2221", // MEASURED ANGLE "∢=0x2222", // SPHERICAL ANGLE "Å=0x212B", // ANGSTROM SIGN "Ą=0x0104", // LATIN CAPITAL LETTER A WITH OGONEK "ą=0x0105", // LATIN SMALL LETTER A WITH OGONEK "≈=0x2248", // ALMOST EQUAL TO "≊=0x224A", // ALMOST EQUAL OR EQUAL TO "'=0x02BC", // MODIFIER LETTER APOSTROPHE "Å=0x00C5", // LATIN CAPITAL LETTER A WITH RING ABOVE "å=0x00E5", // LATIN SMALL LETTER A WITH RING ABOVE "*=0x002A", // ASTERISK "≈=0x2248", // ALMOST EQUAL TO "Ã=0x00C3", // LATIN CAPITAL LETTER A WITH TILDE "ã=0x00E3", // LATIN SMALL LETTER A WITH TILDE "Ä=0x00C4", // LATIN CAPITAL LETTER A WITH DIAERESIS "ä=0x00E4", // LATIN SMALL LETTER A WITH DIAERESIS "&b.alpha;=0x03B1", // GREEK SMALL LETTER ALPHA "⌅=0x22BC", // NAND "⌆=0x2306", // PERSPECTIVE "&b.beta;=0x03B2", // GREEK SMALL LETTER BETA "&b.chi;=0x03C7", // GREEK SMALL LETTER CHI "≌=0x224C", // ALL EQUAL TO "Б=0x0411", // CYRILLIC CAPITAL LETTER BE "б=0x0431", // CYRILLIC SMALL LETTER BE "&b.Delta;=0x0394", // GREEK CAPITAL LETTER DELTA "&b.delta;=0x03B4", // GREEK SMALL LETTER DELTA "„=0x201E", // DOUBLE LOW-9 QUOTATION MARK "∵=0x2235", // BECAUSE "϶=0x220D", // SMALL CONTAINS AS MEMBER "&b.epsi;=0x03B5", // GREEK SMALL LETTER EPSILON "&b.epsis;=0x03B5", // GREEK SMALL LETTER EPSILON "&b.epsiv;=0x03B5", // GREEK SMALL LETTER EPSILON "ℬ=0x212C", // SCRIPT CAPITAL B "Β=0x0392", // GREEK CAPITAL LETTER BETA "β=0x03B2", // GREEK SMALL LETTER BETA "&b.eta;=0x03B7", // GREEK SMALL LETTER ETA "ℶ=0x2136", // BET SYMBOL "&b.Gamma;=0x0393", // GREEK CAPITAL LETTER GAMMA "&b.gamma;=0x03B3", // GREEK SMALL LETTER GAMMA "&b.gammad;=0x03DC", // GREEK LETTER DIGAMMA "&Bgr;=0x0392", // GREEK CAPITAL LETTER BETA "&bgr;=0x03B2", // GREEK SMALL LETTER BETA "&b.iota;=0x03B9", // GREEK SMALL LETTER IOTA "&b.kappa;=0x03BA", // GREEK SMALL LETTER KAPPA "&b.kappav;=0x03F0", // GREEK KAPPA SYMBOL "&b.Lambda;=0x039B", // GREEK CAPITAL LETTER LAMDA "&b.lambda;=0x03BB", // GREEK SMALL LETTER LAMDA "␣=0x2423", // OPEN BOX "▒=0x2592", // MEDIUM SHADE "░=0x2591", // LIGHT SHADE "▓=0x2593", // DARK SHADE "█=0x2588", // FULL BLOCK "&b.mu;=0x03BC", // GREEK SMALL LETTER MU "&b.nu;=0x03BD", // GREEK SMALL LETTER NU "&b.Omega;=0x03A9", // GREEK CAPITAL LETTER OMEGA "&b.omega;=0x03CE", // GREEK SMALL LETTER OMEGA WITH TONOS "⊥=0x22A5", // UP TACK "⋈=0x22C8", // BOWTIE "┐=0x2510", // BOX DRAWINGS LIGHT DOWN AND LEFT "╕=0x2555", // BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE "╖=0x2556", // BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE "╗=0x2557", // BOX DRAWINGS DOUBLE DOWN AND LEFT "┌=0x250C", // BOX DRAWINGS LIGHT DOWN AND RIGHT "╒=0x2552", // BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE "╓=0x2553", // BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE "╔=0x2554", // BOX DRAWINGS DOUBLE DOWN AND RIGHT "─=0x2500", // BOX DRAWINGS LIGHT HORIZONTAL "═=0x2550", // BOX DRAWINGS DOUBLE HORIZONTAL "┬=0x252C", // BOX DRAWINGS LIGHT DOWN AND HORIZONTAL "╤=0x2564", // BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE "╥=0x2565", // BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE "╦=0x2566", // BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL "┴=0x2534", // BOX DRAWINGS LIGHT UP AND HORIZONTAL "╧=0x2567", // BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE "╨=0x2568", // BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE "╩=0x2569", // BOX DRAWINGS DOUBLE UP AND HORIZONTAL "┘=0x2518", // BOX DRAWINGS LIGHT UP AND LEFT "╛=0x255B", // BOX DRAWINGS UP SINGLE AND LEFT DOUBLE "╜=0x255C", // BOX DRAWINGS UP DOUBLE AND LEFT SINGLE "╝=0x255D", // BOX DRAWINGS DOUBLE UP AND LEFT "└=0x2514", // BOX DRAWINGS LIGHT UP AND RIGHT "╘=0x2558", // BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE "╙=0x2559", // BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE "╚=0x255A", // BOX DRAWINGS DOUBLE UP AND RIGHT "│=0x2502", // BOX DRAWINGS LIGHT VERTICAL "║=0x2551", // BOX DRAWINGS DOUBLE VERTICAL "┼=0x253C", // BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL "╪=0x256A", // BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE "╫=0x256B", // BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE "╬=0x256C", // BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL "┤=0x2524", // BOX DRAWINGS LIGHT VERTICAL AND LEFT "╡=0x2561", // BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE "╢=0x2562", // BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE "╣=0x2563", // BOX DRAWINGS DOUBLE VERTICAL AND LEFT "├=0x251C", // BOX DRAWINGS LIGHT VERTICAL AND RIGHT "╞=0x255E", // BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE "╟=0x255F", // BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE "╠=0x2560", // BOX DRAWINGS DOUBLE VERTICAL AND RIGHT "&b.Phi;=0x03A6", // GREEK CAPITAL LETTER PHI "&b.phis;=0x03C6", // GREEK SMALL LETTER PHI "&b.phiv;=0x03D5", // GREEK PHI SYMBOL "&b.Pi;=0x03A0", // GREEK CAPITAL LETTER PI "&b.pi;=0x03C0", // GREEK SMALL LETTER PI "&b.piv;=0x03D6", // GREEK PI SYMBOL "‵=0x2035", // REVERSED PRIME "&b.Psi;=0x03A8", // GREEK CAPITAL LETTER PSI "&b.psi;=0x03C8", // GREEK SMALL LETTER PSI "˘=0x02D8", // BREVE "&b.rho;=0x03C1", // GREEK SMALL LETTER RHO "&b.rhov;=0x03F1", // GREEK RHO SYMBOL "¦=0x00A6", // BROKEN BAR "&b.Sigma;=0x03A3", // GREEK CAPITAL LETTER SIGMA "&b.sigma;=0x03C3", // GREEK SMALL LETTER SIGMA "&b.sigmav;=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "∽=0x223D", // REVERSED TILDE "⋍=0x22CD", // REVERSED TILDE EQUALS "\=0x005C", // REVERSE SOLIDUS "&b.tau;=0x03C4", // GREEK SMALL LETTER TAU "&b.Theta;=0x0398", // GREEK CAPITAL LETTER THETA "&b.thetas;=0x03B8", // GREEK SMALL LETTER THETA "&b.thetav;=0x03D1", // GREEK THETA SYMBOL "•=0x2022", // BULLET "≎=0x224E", // GEOMETRICALLY EQUIVALENT TO "≏=0x224F", // DIFFERENCE BETWEEN "&b.Upsi;=0x03A5", // GREEK CAPITAL LETTER UPSILON "&b.upsi;=0x03C5", // GREEK SMALL LETTER UPSILON "&b.Xi;=0x039E", // GREEK CAPITAL LETTER XI "&b.xi;=0x03BE", // GREEK SMALL LETTER XI "&b.zeta;=0x03B6", // GREEK SMALL LETTER ZETA "Ć=0x0106", // LATIN CAPITAL LETTER C WITH ACUTE "ć=0x0107", // LATIN SMALL LETTER C WITH ACUTE "⋒=0x22D2", // DOUBLE INTERSECTION "∩=0x2229", // INTERSECTION "⁁=0x2041", // CARET INSERTION POINT "ˇ=0x02C7", // CARON "Č=0x010C", // LATIN CAPITAL LETTER C WITH CARON "č=0x010D", // LATIN SMALL LETTER C WITH CARON "Ç=0x00C7", // LATIN CAPITAL LETTER C WITH CEDILLA "ç=0x00E7", // LATIN SMALL LETTER C WITH CEDILLA "Ĉ=0x0108", // LATIN CAPITAL LETTER C WITH CIRCUMFLEX "ĉ=0x0109", // LATIN SMALL LETTER C WITH CIRCUMFLEX "Ċ=0x010A", // LATIN CAPITAL LETTER C WITH DOT ABOVE "ċ=0x010B", // LATIN SMALL LETTER C WITH DOT ABOVE "¸=0x00B8", // CEDILLA "¢=0x00A2", // CENT SIGN "Ч=0x0427", // CYRILLIC CAPITAL LETTER CHE "ч=0x0447", // CYRILLIC SMALL LETTER CHE "✓=0x2713", // CHECK MARK "Χ=0x03A7", // GREEK CAPITAL LETTER CHI "χ=0x03C7", // GREEK SMALL LETTER CHI "○=0x25CB", // WHITE CIRCLE "ˆ=0x02C6", // MODIFIER LETTER CIRCUMFLEX ACCENT "≗=0x2257", // RING EQUAL TO "♣=0x2663", // BLACK CLUB SUIT ":=0x003A", // COLON "≔=0x2254", // COLON EQUALS ",=0x002C", // COMMA "@=0x0040", // COMMERCIAL AT "∁=0x2201", // COMPLEMENT "∘=0x2218", // RING OPERATOR "≅=0x2245", // APPROXIMATELY EQUAL TO "∮=0x222E", // CONTOUR INTEGRAL "∐=0x2210", // N-ARY COPRODUCT "©=0x00A9", // COPYRIGHT SIGN "℗=0x2117", // SOUND RECORDING COPYRIGHT "↵=0x21B5", // DOWNWARDS ARROW WITH CORNER LEFTWARDS "✗=0x2717", // BALLOT X "⋞=0x22DE", // EQUAL TO OR PRECEDES "⋟=0x22DF", // EQUAL TO OR SUCCEEDS "↶=0x21B6", // ANTICLOCKWISE TOP SEMICIRCLE ARROW "⋓=0x22D3", // DOUBLE UNION "∪=0x222A", // UNION "&cupre;=0x227C", // PRECEDES OR EQUAL TO "↷=0x21B7", // CLOCKWISE TOP SEMICIRCLE ARROW "¤=0x00A4", // CURRENCY SIGN "⋎=0x22CE", // CURLY LOGICAL OR "⋏=0x22CF", // CURLY LOGICAL AND "†=0x2020", // DAGGER "‡=0x2021", // DOUBLE DAGGER "ℸ=0x2138", // DALET SYMBOL "⇓=0x21D3", // DOWNWARDS DOUBLE ARROW "↓=0x2193", // DOWNWARDS ARROW "&darr2;=0x21CA", // DOWNWARDS PAIRED ARROWS "‐=0x2010", // HYPHEN "⊣=0x22A3", // LEFT TACK "˝=0x02DD", // DOUBLE ACUTE ACCENT "Ď=0x010E", // LATIN CAPITAL LETTER D WITH CARON "ď=0x010F", // LATIN SMALL LETTER D WITH CARON "Д=0x0414", // CYRILLIC CAPITAL LETTER DE "д=0x0434", // CYRILLIC SMALL LETTER DE "°=0x00B0", // DEGREE SIGN "Δ=0x0394", // GREEK CAPITAL LETTER DELTA "δ=0x03B4", // GREEK SMALL LETTER DELTA "&Dgr;=0x0394", // GREEK CAPITAL LETTER DELTA "&dgr;=0x03B4", // GREEK SMALL LETTER DELTA "⇃=0x21C3", // DOWNWARDS HARPOON WITH BARB LEFTWARDS "⇂=0x21C2", // DOWNWARDS HARPOON WITH BARB RIGHTWARDS "⋄=0x22C4", // DIAMOND OPERATOR "♦=0x2666", // BLACK DIAMOND SUIT "¨=0x00A8", // DIAERESIS "÷=0x00F7", // DIVISION SIGN "⋇=0x22C7", // DIVISION TIMES "Ђ=0x0402", // CYRILLIC CAPITAL LETTER DJE "ђ=0x0452", // CYRILLIC SMALL LETTER DJE "&dlarr;=0x2199", // SOUTH WEST ARROW "⌞=0x231E", // BOTTOM LEFT CORNER "⌍=0x230D", // BOTTOM LEFT CROP "$=0x0024", // DOLLAR SIGN "˙=0x02D9", // DOT ABOVE "¨=0x00A8", // DIAERESIS "⃜=0x20DC", // COMBINING FOUR DOTS ABOVE "&drarr;=0x2198", // SOUTH EAST ARROW "⌟=0x231F", // BOTTOM RIGHT CORNER "⌌=0x230C", // BOTTOM RIGHT CROP "Ѕ=0x0405", // CYRILLIC CAPITAL LETTER DZE "ѕ=0x0455", // CYRILLIC SMALL LETTER DZE "Đ=0x0110", // LATIN CAPITAL LETTER D WITH STROKE "đ=0x0111", // LATIN SMALL LETTER D WITH STROKE "▿=0x25BF", // WHITE DOWN-POINTING SMALL TRIANGLE "▾=0x25BE", // BLACK DOWN-POINTING SMALL TRIANGLE "Џ=0x040F", // CYRILLIC CAPITAL LETTER DZHE "џ=0x045F", // CYRILLIC SMALL LETTER DZHE "&Eacgr;=0x0388", // GREEK CAPITAL LETTER EPSILON WITH TONOS "&eacgr;=0x03AD", // GREEK SMALL LETTER EPSILON WITH TONOS "É=0x00C9", // LATIN CAPITAL LETTER E WITH ACUTE "é=0x00E9", // LATIN SMALL LETTER E WITH ACUTE "Ě=0x011A", // LATIN CAPITAL LETTER E WITH CARON "ě=0x011B", // LATIN SMALL LETTER E WITH CARON "≖=0x2256", // RING IN EQUAL TO "Ê=0x00CA", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX "ê=0x00EA", // LATIN SMALL LETTER E WITH CIRCUMFLEX "≕=0x2255", // EQUALS COLON "Э=0x042D", // CYRILLIC CAPITAL LETTER E "э=0x044D", // CYRILLIC SMALL LETTER E "≑=0x2251", // GEOMETRICALLY EQUAL TO "Ė=0x0116", // LATIN CAPITAL LETTER E WITH DOT ABOVE "ė=0x0117", // LATIN SMALL LETTER E WITH DOT ABOVE "&EEacgr;=0x0389", // GREEK CAPITAL LETTER ETA WITH TONOS "&eeacgr;=0x03AE", // GREEK SMALL LETTER ETA WITH TONOS "&EEgr;=0x0397", // GREEK CAPITAL LETTER ETA "&eegr;=0x03B7", // GREEK SMALL LETTER ETA "≒=0x2252", // APPROXIMATELY EQUAL TO OR THE IMAGE OF "&Egr;=0x0395", // GREEK CAPITAL LETTER EPSILON "&egr;=0x03B5", // GREEK SMALL LETTER EPSILON "È=0x00C8", // LATIN CAPITAL LETTER E WITH GRAVE "è=0x00E8", // LATIN SMALL LETTER E WITH GRAVE "⪖=0x22DD", // EQUAL TO OR GREATER-THAN "ℓ=0x2113", // SCRIPT SMALL L "⪕=0x22DC", // EQUAL TO OR LESS-THAN "Ē=0x0112", // LATIN CAPITAL LETTER E WITH MACRON "ē=0x0113", // LATIN SMALL LETTER E WITH MACRON "∅=0x2205", // EMPTY SET " =0x2003", // EM SPACE " =0x2004", // THREE-PER-EM SPACE " =0x2005", // FOUR-PER-EM SPACE "Ŋ=0x014A", // LATIN CAPITAL LETTER ENG "ŋ=0x014B", // LATIN SMALL LETTER ENG " =0x2002", // EN SPACE "Ę=0x0118", // LATIN CAPITAL LETTER E WITH OGONEK "ę=0x0119", // LATIN SMALL LETTER E WITH OGONEK "ε=0x03B5", // GREEK SMALL LETTER EPSILON "Ε=0x0395", // GREEK CAPITAL LETTER EPSILON "ε=0x03B5", // GREEK SMALL LETTER EPSILON "&epsis;=0x220A", // SMALL ELEMENT OF "ϵ=0x????", // variant epsilon "==0x003D", // EQUALS SIGN "≡=0x2261", // IDENTICAL TO "≓=0x2253", // IMAGE OF OR APPROXIMATELY EQUAL TO "≐=0x2250", // APPROACHES THE LIMIT "Η=0x0397", // GREEK CAPITAL LETTER ETA "η=0x03B7", // GREEK SMALL LETTER ETA "Ð=0x00D0", // LATIN CAPITAL LETTER ETH "ð=0x00F0", // LATIN SMALL LETTER ETH "Ë=0x00CB", // LATIN CAPITAL LETTER E WITH DIAERESIS "ë=0x00EB", // LATIN SMALL LETTER E WITH DIAERESIS "!=0x0021", // EXCLAMATION MARK "∃=0x2203", // THERE EXISTS "Ф=0x0424", // CYRILLIC CAPITAL LETTER EF "ф=0x0444", // CYRILLIC SMALL LETTER EF "♀=0x2640", // FEMALE SIGN "ffi=0xFB03", // LATIN SMALL LIGATURE FFI "ff=0xFB00", // LATIN SMALL LIGATURE FF "ffl=0xFB04", // LATIN SMALL LIGATURE FFL "fi=0xFB01", // LATIN SMALL LIGATURE FI "fj=0x????", // fj ligature "♭=0x266D", // MUSIC FLAT SIGN "fl=0xFB02", // LATIN SMALL LIGATURE FL "ƒ=0x0192", // LATIN SMALL LETTER F WITH HOOK "∀=0x2200", // FOR ALL "⋔=0x22D4", // PITCHFORK "½=0x00BD", // VULGAR FRACTION ONE HALF "⅓=0x2153", // VULGAR FRACTION ONE THIRD "¼=0x00BC", // VULGAR FRACTION ONE QUARTER "⅕=0x2155", // VULGAR FRACTION ONE FIFTH "⅙=0x2159", // VULGAR FRACTION ONE SIXTH "⅛=0x215B", // VULGAR FRACTION ONE EIGHTH "⅔=0x2154", // VULGAR FRACTION TWO THIRDS "⅖=0x2156", // VULGAR FRACTION TWO FIFTHS "¾=0x00BE", // VULGAR FRACTION THREE QUARTERS "⅗=0x2157", // VULGAR FRACTION THREE FIFTHS "⅜=0x215C", // VULGAR FRACTION THREE EIGHTHS "⅘=0x2158", // VULGAR FRACTION FOUR FIFTHS "⅚=0x215A", // VULGAR FRACTION FIVE SIXTHS "⅝=0x215D", // VULGAR FRACTION FIVE EIGHTHS "⅞=0x215E", // VULGAR FRACTION SEVEN EIGHTHS "⁄=0x2044", // FRACTION SLASH "⌢=0x2322", // FROWN "ǵ=0x01F5", // LATIN SMALL LETTER G WITH ACUTE "Γ=0x0393", // GREEK CAPITAL LETTER GAMMA "γ=0x03B3", // GREEK SMALL LETTER GAMMA "ϝ=0x03DC", // GREEK LETTER DIGAMMA "⪆=0x????", // greater-than, approximately equal to "Ğ=0x011E", // LATIN CAPITAL LETTER G WITH BREVE "ğ=0x011F", // LATIN SMALL LETTER G WITH BREVE "Ģ=0x0122", // LATIN CAPITAL LETTER G WITH CEDILLA "&gcedil;=0x0123", // LATIN SMALL LETTER G WITH CEDILLA "Ĝ=0x011C", // LATIN CAPITAL LETTER G WITH CIRCUMFLEX "ĝ=0x011D", // LATIN SMALL LETTER G WITH CIRCUMFLEX "Г=0x0413", // CYRILLIC CAPITAL LETTER GHE "г=0x0433", // CYRILLIC SMALL LETTER GHE "Ġ=0x0120", // LATIN CAPITAL LETTER G WITH DOT ABOVE "ġ=0x0121", // LATIN SMALL LETTER G WITH DOT ABOVE "≧=0x2267", // GREATER-THAN OVER EQUAL TO "≥=0x2265", // GREATER-THAN OR EQUAL TO "⪌=0x????", // greater-than, double equals, less-than "⋛=0x22DB", // GREATER-THAN EQUAL TO OR LESS-THAN "⩾=0x2265", // GREATER-THAN OR EQUAL TO "⋙=0x22D9", // VERY MUCH GREATER-THAN "&Ggr;=0x0393", // GREEK CAPITAL LETTER GAMMA "&ggr;=0x03B3", // GREEK SMALL LETTER GAMMA "ℷ=0x2137", // GIMEL SYMBOL "Ѓ=0x0403", // CYRILLIC CAPITAL LETTER GJE "ѓ=0x0453", // CYRILLIC SMALL LETTER GJE "≷=0x2277", // GREATER-THAN OR LESS-THAN "⪊=0x????", // greater-than, not approximately equal to "⪈=0x2269", // GREATER-THAN BUT NOT EQUAL TO "≩=0x2269", // GREATER-THAN BUT NOT EQUAL TO "⋧=0x22E7", // GREATER-THAN BUT NOT EQUIVALENT TO "`=0x0060", // GRAVE ACCENT "&gsdot;=0x22D7", // GREATER-THAN WITH DOT "≳=0x2273", // GREATER-THAN OR EQUIVALENT TO "≫=0x226B", // MUCH GREATER-THAN ">=0x003E", // GREATER-THAN SIGN "≩︀=0x2269", // GREATER-THAN BUT NOT EQUAL TO " =0x200A", // HAIR SPACE "½=0x00BD", // VULGAR FRACTION ONE HALF "ℋ=0x210B", // SCRIPT CAPITAL H "Ъ=0x042A", // CYRILLIC CAPITAL LETTER HARD SIGN "ъ=0x044A", // CYRILLIC SMALL LETTER HARD SIGN "↔=0x2194", // LEFT RIGHT ARROW "⇔=0x21D4", // LEFT RIGHT DOUBLE ARROW "↭=0x21AD", // LEFT RIGHT WAVE ARROW "Ĥ=0x0124", // LATIN CAPITAL LETTER H WITH CIRCUMFLEX "ĥ=0x0125", // LATIN SMALL LETTER H WITH CIRCUMFLEX "♥=0x2665", // BLACK HEART SUIT "…=0x2026", // HORIZONTAL ELLIPSIS "―=0x2015", // HORIZONTAL BAR "Ħ=0x0126", // LATIN CAPITAL LETTER H WITH STROKE "ħ=0x0127", // LATIN SMALL LETTER H WITH STROKE "⁃=0x2043", // HYPHEN BULLET "‐=0x002D", // HYPHEN-MINUS "&Iacgr;=0x038A", // GREEK CAPITAL LETTER IOTA WITH TONOS "&iacgr;=0x03AF", // GREEK SMALL LETTER IOTA WITH TONOS "Í=0x00CD", // LATIN CAPITAL LETTER I WITH ACUTE "í=0x00ED", // LATIN SMALL LETTER I WITH ACUTE "Î=0x00CE", // LATIN CAPITAL LETTER I WITH CIRCUMFLEX "î=0x00EE", // LATIN SMALL LETTER I WITH CIRCUMFLEX "И=0x0418", // CYRILLIC CAPITAL LETTER I "и=0x0438", // CYRILLIC SMALL LETTER I "&idiagr;=0x0390", // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS "&Idigr;=0x03AA", // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA "&idigr;=0x03CA", // GREEK SMALL LETTER IOTA WITH DIALYTIKA "İ=0x0130", // LATIN CAPITAL LETTER I WITH DOT ABOVE "Е=0x0415", // CYRILLIC CAPITAL LETTER IE "е=0x0435", // CYRILLIC SMALL LETTER IE "¡=0x00A1", // INVERTED EXCLAMATION MARK "⇔=0x21D4", // LEFT RIGHT DOUBLE ARROW "&Igr;=0x0399", // GREEK CAPITAL LETTER IOTA "&igr;=0x03B9", // GREEK SMALL LETTER IOTA "Ì=0x00CC", // LATIN CAPITAL LETTER I WITH GRAVE "ì=0x00EC", // LATIN SMALL LETTER I WITH GRAVE "IJ=0x0132", // LATIN CAPITAL LIGATURE IJ "ij=0x0133", // LATIN SMALL LIGATURE IJ "Ī=0x012A", // LATIN CAPITAL LETTER I WITH MACRON "ī=0x012B", // LATIN SMALL LETTER I WITH MACRON "ℑ=0x2111", // BLACK-LETTER CAPITAL I "℅=0x2105", // CARE OF "∞=0x221E", // INFINITY "ı=0x0131", // LATIN SMALL LETTER DOTLESS I "ı=0x0131", // LATIN SMALL LETTER DOTLESS I "∫=0x222B", // INTEGRAL "⊺=0x22BA", // INTERCALATE "Ё=0x0401", // CYRILLIC CAPITAL LETTER IO "ё=0x0451", // CYRILLIC SMALL LETTER IO "Į=0x012E", // LATIN CAPITAL LETTER I WITH OGONEK "į=0x012F", // LATIN SMALL LETTER I WITH OGONEK "Ι=0x0399", // GREEK CAPITAL LETTER IOTA "ι=0x03B9", // GREEK SMALL LETTER IOTA "¿=0x00BF", // INVERTED QUESTION MARK "∈=0x2208", // ELEMENT OF "Ĩ=0x0128", // LATIN CAPITAL LETTER I WITH TILDE "ĩ=0x0129", // LATIN SMALL LETTER I WITH TILDE "І=0x0406", // CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I "і=0x0456", // CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I "Ï=0x00CF", // LATIN CAPITAL LETTER I WITH DIAERESIS "ï=0x00EF", // LATIN SMALL LETTER I WITH DIAERESIS "Ĵ=0x0134", // LATIN CAPITAL LETTER J WITH CIRCUMFLEX "ĵ=0x0135", // LATIN SMALL LETTER J WITH CIRCUMFLEX "Й=0x0419", // CYRILLIC CAPITAL LETTER SHORT I "й=0x0439", // CYRILLIC SMALL LETTER SHORT I "&jnodot;=0x????", // latin small letter dotless j "Ј=0x0408", // CYRILLIC CAPITAL LETTER JE "ј=0x0458", // CYRILLIC SMALL LETTER JE "Є=0x0404", // CYRILLIC CAPITAL LETTER UKRAINIAN IE "є=0x0454", // CYRILLIC SMALL LETTER UKRAINIAN IE "Κ=0x039A", // GREEK CAPITAL LETTER KAPPA "κ=0x03BA", // GREEK SMALL LETTER KAPPA "ϰ=0x03F0", // GREEK KAPPA SYMBOL "Ķ=0x0136", // LATIN CAPITAL LETTER K WITH CEDILLA "ķ=0x0137", // LATIN SMALL LETTER K WITH CEDILLA "К=0x041A", // CYRILLIC CAPITAL LETTER KA "к=0x043A", // CYRILLIC SMALL LETTER KA "&Kgr;=0x039A", // GREEK CAPITAL LETTER KAPPA "&kgr;=0x03BA", // GREEK SMALL LETTER KAPPA "ĸ=0x0138", // LATIN SMALL LETTER KRA "Х=0x0425", // CYRILLIC CAPITAL LETTER HA "х=0x0445", // CYRILLIC SMALL LETTER HA "&KHgr;=0x03A7", // GREEK CAPITAL LETTER CHI "&khgr;=0x03C7", // GREEK SMALL LETTER CHI "Ќ=0x040C", // CYRILLIC CAPITAL LETTER KJE "ќ=0x045C", // CYRILLIC SMALL LETTER KJE "⇚=0x21DA", // LEFTWARDS TRIPLE ARROW "Ĺ=0x0139", // LATIN CAPITAL LETTER L WITH ACUTE "ĺ=0x013A", // LATIN SMALL LETTER L WITH ACUTE "ℒ=0x2112", // SCRIPT CAPITAL L "Λ=0x039B", // GREEK CAPITAL LETTER LAMDA "λ=0x03BB", // GREEK SMALL LETTER LAMDA "⟨=0x2329", // LEFT-POINTING ANGLE BRACKET "⪅=0x????", // less-than, approximately equal to "«=0x00AB", // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK "↞=0x219E", // LEFTWARDS TWO HEADED ARROW "←=0x2190", // LEFTWARDS ARROW "⇐=0x21D0", // LEFTWARDS DOUBLE ARROW "&larr2;=0x21C7", // LEFTWARDS PAIRED ARROWS "↩=0x21A9", // LEFTWARDS ARROW WITH HOOK "↫=0x21AB", // LEFTWARDS ARROW WITH LOOP "↢=0x21A2", // LEFTWARDS ARROW WITH TAIL "Ľ=0x013D", // LATIN CAPITAL LETTER L WITH CARON "ľ=0x013E", // LATIN SMALL LETTER L WITH CARON "Ļ=0x013B", // LATIN CAPITAL LETTER L WITH CEDILLA "ļ=0x013C", // LATIN SMALL LETTER L WITH CEDILLA "⌈=0x2308", // LEFT CEILING "{=0x007B", // LEFT CURLY BRACKET "Л=0x041B", // CYRILLIC CAPITAL LETTER EL "л=0x043B", // CYRILLIC SMALL LETTER EL "&ldot;=0x22D6", // LESS-THAN WITH DOT "“=0x201C", // LEFT DOUBLE QUOTATION MARK "„=0x201E", // DOUBLE LOW-9 QUOTATION MARK "≦=0x2266", // LESS-THAN OVER EQUAL TO "≤=0x2264", // LESS-THAN OR EQUAL TO "⪋=0x????", // less-than, double equals, greater-than "⋚=0x22DA", // LESS-THAN EQUAL TO OR GREATER-THAN "⩽=0x2264", // LESS-THAN OR EQUAL TO "⌊=0x230A", // LEFT FLOOR "≶=0x2276", // LESS-THAN OR GREATER-THAN "&Lgr;=0x039B", // GREEK CAPITAL LETTER LAMDA "&lgr;=0x03BB", // GREEK SMALL LETTER LAMDA "↽=0x21BD", // LEFTWARDS HARPOON WITH BARB DOWNWARDS "↼=0x21BC", // LEFTWARDS HARPOON WITH BARB UPWARDS "▄=0x2584", // LOWER HALF BLOCK "Љ=0x0409", // CYRILLIC CAPITAL LETTER LJE "љ=0x0459", // CYRILLIC SMALL LETTER LJE "⋘=0x22D8", // VERY MUCH LESS-THAN "Ŀ=0x013F", // LATIN CAPITAL LETTER L WITH MIDDLE DOT "ŀ=0x0140", // LATIN SMALL LETTER L WITH MIDDLE DOT "⪉=0x????", // less-than, not approximately equal to "≨=0x2268", // LESS-THAN BUT NOT EQUAL TO "⪇=0x2268", // LESS-THAN BUT NOT EQUAL TO "⋦=0x22E6", // LESS-THAN BUT NOT EQUIVALENT TO "∗=0x2217", // ASTERISK OPERATOR "_=0x005F", // LOW LINE "◊=0x25CA", // LOZENGE "◊=0x2727", // WHITE FOUR POINTED STAR "⧫=0x2726", // BLACK FOUR POINTED STAR "(=0x0028", // LEFT PARENTHESIS "&lpargt;=0x????", // left parenthesis, greater-than "&lrarr2;=0x21C6", // LEFTWARDS ARROW OVER RIGHTWARDS ARROW "&lrhar2;=0x21CB", // LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON "‎=0x200E", // LEFT-TO-RIGHT MARK "‹=0x2039", // SINGLE LEFT-POINTING ANGLE QUOTATION MARK "↰=0x21B0", // UPWARDS ARROW WITH TIP LEFTWARDS "≲=0x2272", // LESS-THAN OR EQUIVALENT TO "[=0x005B", // LEFT SQUARE BRACKET "‘=0x2018", // LEFT SINGLE QUOTATION MARK "‚=0x201A", // SINGLE LOW-9 QUOTATION MARK "Ł=0x0141", // LATIN CAPITAL LETTER L WITH STROKE "ł=0x0142", // LATIN SMALL LETTER L WITH STROKE "≪=0x226A", // MUCH LESS-THAN "<=0x003C", // LESS-THAN SIGN "⋋=0x22CB", // LEFT SEMIDIRECT PRODUCT "⋉=0x22C9", // LEFT NORMAL FACTOR SEMIDIRECT PRODUCT "◃=0x25C3", // WHITE LEFT-POINTING SMALL TRIANGLE "⊴=0x22B4", // NORMAL SUBGROUP OF OR EQUAL TO "◂=0x25C2", // BLACK LEFT-POINTING SMALL TRIANGLE "≨︀=0x2268", // LESS-THAN BUT NOT EQUAL TO "¯=0x00AF", // MACRON "♂=0x2642", // MALE SIGN "✠=0x2720", // MALTESE CROSS "↦=0x21A6", // RIGHTWARDS ARROW FROM BAR "▮=0x25AE", // BLACK VERTICAL RECTANGLE "М=0x041C", // CYRILLIC CAPITAL LETTER EM "м=0x043C", // CYRILLIC SMALL LETTER EM "—=0x2014", // EM DASH "&Mgr;=0x039C", // GREEK CAPITAL LETTER MU "&mgr;=0x03BC", // GREEK SMALL LETTER MU "µ=0x00B5", // MICRO SIGN "∣=0x2223", // DIVIDES "·=0x00B7", // MIDDLE DOT "−=0x2212", // MINUS SIGN "⊟=0x229F", // SQUARED MINUS "…=0x2026", // HORIZONTAL ELLIPSIS "∓=0x2213", // MINUS-OR-PLUS SIGN "⊧=0x22A7", // MODELS "Μ=0x039C", // GREEK CAPITAL LETTER MU "μ=0x03BC", // GREEK SMALL LETTER MU "⊸=0x22B8", // MULTIMAP "∇=0x2207", // NABLA "Ń=0x0143", // LATIN CAPITAL LETTER N WITH ACUTE "ń=0x0144", // LATIN SMALL LETTER N WITH ACUTE "≉=0x2249", // NOT ALMOST EQUAL TO "ʼn=0x0149", // LATIN SMALL LETTER N PRECEDED BY APOSTROPHE "♮=0x266E", // MUSIC NATURAL SIGN " =0x00A0", // NO-BREAK SPACE "Ň=0x0147", // LATIN CAPITAL LETTER N WITH CARON "ň=0x0148", // LATIN SMALL LETTER N WITH CARON "Ņ=0x0145", // LATIN CAPITAL LETTER N WITH CEDILLA "ņ=0x0146", // LATIN SMALL LETTER N WITH CEDILLA "≇=0x2247", // NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO "Н=0x041D", // CYRILLIC CAPITAL LETTER EN "н=0x043D", // CYRILLIC SMALL LETTER EN "–=0x2013", // EN DASH "≠=0x2260", // NOT EQUAL TO "↗=0x2197", // NORTH EAST ARROW "≢=0x2262", // NOT IDENTICAL TO "∄=0x2204", // THERE DOES NOT EXIST "≧̸=0x????", // not greater-than, double equals "≱=0x2271", // NEITHER GREATER-THAN NOR EQUAL TO "⩾̸=0x2271", // NEITHER GREATER-THAN NOR EQUAL TO "&Ngr;=0x039D", // GREEK CAPITAL LETTER NU "&ngr;=0x03BD", // GREEK SMALL LETTER NU "≯=0x226F", // NOT GREATER-THAN "↮=0x21AE", // LEFT RIGHT ARROW WITH STROKE "⇎=0x21CE", // LEFT RIGHT DOUBLE ARROW WITH STROKE "∋=0x220B", // CONTAINS AS MEMBER "Њ=0x040A", // CYRILLIC CAPITAL LETTER NJE "њ=0x045A", // CYRILLIC SMALL LETTER NJE "↚=0x219A", // LEFTWARDS ARROW WITH STROKE "⇍=0x21CD", // LEFTWARDS DOUBLE ARROW WITH STROKE "‥=0x2025", // TWO DOT LEADER "≦̸=0x????", // not less-than, double equals "≰=0x2270", // NEITHER LESS-THAN NOR EQUAL TO "⩽̸=0x2270", // NEITHER LESS-THAN NOR EQUAL TO "≮=0x226E", // NOT LESS-THAN "⋪=0x22EA", // NOT NORMAL SUBGROUP OF "⋬=0x22EC", // NOT NORMAL SUBGROUP OF OR EQUAL TO "∤=0x2224", // DOES NOT DIVIDE "¬=0x00AC", // NOT SIGN "∉=0x2209", // NOT AN ELEMENT OF "∦=0x2226", // NOT PARALLEL TO "⊀=0x2280", // DOES NOT PRECEDE "⪯̸=0x22E0", // DOES NOT PRECEDE OR EQUAL "↛=0x219B", // RIGHTWARDS ARROW WITH STROKE "⇏=0x21CF", // RIGHTWARDS DOUBLE ARROW WITH STROKE "⋫=0x22EB", // DOES NOT CONTAIN AS NORMAL SUBGROUP "⋭=0x22ED", // DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL "⊁=0x2281", // DOES NOT SUCCEED "⪰̸=0x22E1", // DOES NOT SUCCEED OR EQUAL "≁=0x2241", // NOT TILDE "≄=0x2244", // NOT ASYMPTOTICALLY EQUAL TO "∤=0x????", // nshortmid "∦=0x2226", // NOT PARALLEL TO "⊄=0x2284", // NOT A SUBSET OF "⫅̸=0x2288", // NEITHER A SUBSET OF NOR EQUAL TO "⊈=0x2288", // NEITHER A SUBSET OF NOR EQUAL TO "⊅=0x2285", // NOT A SUPERSET OF "⫆̸=0x2289", // NEITHER A SUPERSET OF NOR EQUAL TO "⊉=0x2289", // NEITHER A SUPERSET OF NOR EQUAL TO "Ñ=0x00D1", // LATIN CAPITAL LETTER N WITH TILDE "ñ=0x00F1", // LATIN SMALL LETTER N WITH TILDE "Ν=0x039D", // GREEK CAPITAL LETTER NU "ν=0x03BD", // GREEK SMALL LETTER NU "#=0x0023", // NUMBER SIGN "№=0x2116", // NUMERO SIGN " =0x2007", // FIGURE SPACE "⊬=0x22AC", // DOES NOT PROVE "⊭=0x22AD", // NOT TRUE "⊮=0x22AE", // DOES NOT FORCE "⊯=0x22AF", // NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT "↖=0x2196", // NORTH WEST ARROW "&Oacgr;=0x038C", // GREEK CAPITAL LETTER OMICRON WITH TONOS "&oacgr;=0x03CC", // GREEK SMALL LETTER OMICRON WITH TONOS "Ó=0x00D3", // LATIN CAPITAL LETTER O WITH ACUTE "ó=0x00F3", // LATIN SMALL LETTER O WITH ACUTE "⊛=0x229B", // CIRCLED ASTERISK OPERATOR "⊚=0x229A", // CIRCLED RING OPERATOR "Ô=0x00D4", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX "ô=0x00F4", // LATIN SMALL LETTER O WITH CIRCUMFLEX "О=0x041E", // CYRILLIC CAPITAL LETTER O "о=0x043E", // CYRILLIC SMALL LETTER O "⊝=0x229D", // CIRCLED DASH "Ő=0x0150", // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE "ő=0x0151", // LATIN SMALL LETTER O WITH DOUBLE ACUTE "⊙=0x2299", // CIRCLED DOT OPERATOR "Œ=0x0152", // LATIN CAPITAL LIGATURE OE "œ=0x0153", // LATIN SMALL LIGATURE OE "˛=0x02DB", // OGONEK "&Ogr;=0x039F", // GREEK CAPITAL LETTER OMICRON "&ogr;=0x03BF", // GREEK SMALL LETTER OMICRON "Ò=0x00D2", // LATIN CAPITAL LETTER O WITH GRAVE "ò=0x00F2", // LATIN SMALL LETTER O WITH GRAVE "&OHacgr;=0x038F", // GREEK CAPITAL LETTER OMEGA WITH TONOS "&ohacgr;=0x03CE", // GREEK SMALL LETTER OMEGA WITH TONOS "&OHgr;=0x03A9", // GREEK CAPITAL LETTER OMEGA "&ohgr;=0x03C9", // GREEK SMALL LETTER OMEGA "Ω=0x2126", // OHM SIGN "↺=0x21BA", // ANTICLOCKWISE OPEN CIRCLE ARROW "‾=0x203E", // OVERLINE "Ō=0x014C", // LATIN CAPITAL LETTER O WITH MACRON "ō=0x014D", // LATIN SMALL LETTER O WITH MACRON "Ω=0x03A9", // GREEK CAPITAL LETTER OMEGA "ω=0x03C9", // GREEK SMALL LETTER OMEGA "Ο=0x039F", // GREEK CAPITAL LETTER OMICRON "ο=0x03BF", // GREEK SMALL LETTER OMICRON "⊖=0x2296", // CIRCLED MINUS "⊕=0x2295", // CIRCLED PLUS "∨=0x2228", // LOGICAL OR "↻=0x21BB", // CLOCKWISE OPEN CIRCLE ARROW "ℴ=0x2134", // SCRIPT SMALL O "ª=0x00AA", // FEMININE ORDINAL INDICATOR "º=0x00BA", // MASCULINE ORDINAL INDICATOR "Ⓢ=0x24C8", // CIRCLED LATIN CAPITAL LETTER S "Ø=0x00D8", // LATIN CAPITAL LETTER O WITH STROKE "ø=0x00F8", // LATIN SMALL LETTER O WITH STROKE "⊘=0x2298", // CIRCLED DIVISION SLASH "Õ=0x00D5", // LATIN CAPITAL LETTER O WITH TILDE "õ=0x00F5", // LATIN SMALL LETTER O WITH TILDE "⊗=0x2297", // CIRCLED TIMES "Ö=0x00D6", // LATIN CAPITAL LETTER O WITH DIAERESIS "ö=0x00F6", // LATIN SMALL LETTER O WITH DIAERESIS "∥=0x2225", // PARALLEL TO "¶=0x00B6", // PILCROW SIGN "∂=0x2202", // PARTIAL DIFFERENTIAL "П=0x041F", // CYRILLIC CAPITAL LETTER PE "п=0x043F", // CYRILLIC SMALL LETTER PE "%=0x0025", // PERCENT SIGN ".=0x002E", // FULL STOP "‰=0x2030", // PER MILLE SIGN "⊥=0x22A5", // UP TACK "&Pgr;=0x03A0", // GREEK CAPITAL LETTER PI "&pgr;=0x03C0", // GREEK SMALL LETTER PI "&PHgr;=0x03A6", // GREEK CAPITAL LETTER PHI "&phgr;=0x03C6", // GREEK SMALL LETTER PHI "φ=0x03C6", // GREEK SMALL LETTER PHI "Φ=0x03A6", // GREEK CAPITAL LETTER PHI "&phis;=0x03C6", // GREEK SMALL LETTER PHI "ϕ=0x03D5", // GREEK PHI SYMBOL "ℳ=0x2133", // SCRIPT CAPITAL M "☎=0x260E", // BLACK TELEPHONE "Π=0x03A0", // GREEK CAPITAL LETTER PI "π=0x03C0", // GREEK SMALL LETTER PI "ϖ=0x03D6", // GREEK PI SYMBOL "ℏ=0x210F", // PLANCK CONSTANT OVER TWO PI "+=0x002B", // PLUS SIGN "⊞=0x229E", // SQUARED PLUS "∔=0x2214", // DOT PLUS "±=0x00B1", // PLUS-MINUS SIGN "£=0x00A3", // POUND SIGN "≺=0x227A", // PRECEDES "⪷=0x????", // precedes, approximately equal to "⪯=0x227C", // PRECEDES OR EQUAL TO "′=0x2032", // PRIME "″=0x2033", // DOUBLE PRIME "⪹=0x????", // precedes, not approximately equal to "⪵=0x????", // precedes, not double equal "⋨=0x22E8", // PRECEDES BUT NOT EQUIVALENT TO "∏=0x220F", // N-ARY PRODUCT "∝=0x221D", // PROPORTIONAL TO "≾=0x227E", // PRECEDES OR EQUIVALENT TO "&PSgr;=0x03A8", // GREEK CAPITAL LETTER PSI "&psgr;=0x03C8", // GREEK SMALL LETTER PSI "Ψ=0x03A8", // GREEK CAPITAL LETTER PSI "ψ=0x03C8", // GREEK SMALL LETTER PSI " =0x2008", // PUNCTUATION SPACE "?=0x003F", // QUESTION MARK ""=0x0022", // QUOTATION MARK "⇛=0x21DB", // RIGHTWARDS TRIPLE ARROW "Ŕ=0x0154", // LATIN CAPITAL LETTER R WITH ACUTE "ŕ=0x0155", // LATIN SMALL LETTER R WITH ACUTE "√=0x221A", // SQUARE ROOT "⟩=0x232A", // RIGHT-POINTING ANGLE BRACKET "»=0x00BB", // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK "↠=0x21A0", // RIGHTWARDS TWO HEADED ARROW "→=0x2192", // RIGHTWARDS ARROW "⇒=0x21D2", // RIGHTWARDS DOUBLE ARROW "&rarr2;=0x21C9", // RIGHTWARDS PAIRED ARROWS "↪=0x21AA", // RIGHTWARDS ARROW WITH HOOK "↬=0x21AC", // RIGHTWARDS ARROW WITH LOOP "↣=0x21A3", // RIGHTWARDS ARROW WITH TAIL "↝=0x219D", // RIGHTWARDS WAVE ARROW "Ř=0x0158", // LATIN CAPITAL LETTER R WITH CARON "ř=0x0159", // LATIN SMALL LETTER R WITH CARON "Ŗ=0x0156", // LATIN CAPITAL LETTER R WITH CEDILLA "ŗ=0x0157", // LATIN SMALL LETTER R WITH CEDILLA "⌉=0x2309", // RIGHT CEILING "}=0x007D", // RIGHT CURLY BRACKET "Р=0x0420", // CYRILLIC CAPITAL LETTER ER "р=0x0440", // CYRILLIC SMALL LETTER ER "”=0x201D", // RIGHT DOUBLE QUOTATION MARK "”=0x201C", // LEFT DOUBLE QUOTATION MARK "ℜ=0x211C", // BLACK-LETTER CAPITAL R "▭=0x25AD", // WHITE RECTANGLE "®=0x00AE", // REGISTERED SIGN "⌋=0x230B", // RIGHT FLOOR "&Rgr;=0x03A1", // GREEK CAPITAL LETTER RHO "&rgr;=0x03C1", // GREEK SMALL LETTER RHO "⇁=0x21C1", // RIGHTWARDS HARPOON WITH BARB DOWNWARDS "⇀=0x21C0", // RIGHTWARDS HARPOON WITH BARB UPWARDS "Ρ=0x03A1", // GREEK CAPITAL LETTER RHO "ρ=0x03C1", // GREEK SMALL LETTER RHO "ϱ=0x03F1", // GREEK RHO SYMBOL "˚=0x02DA", // RING ABOVE "&rlarr2;=0x21C4", // RIGHTWARDS ARROW OVER LEFTWARDS ARROW "&rlhar2;=0x21CC", // RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON "‏=0x200F", // RIGHT-TO-LEFT MARK ")=0x0029", // RIGHT PARENTHESIS "⦔=0x????", // right parenthesis, greater-than "›=0x203A", // SINGLE RIGHT-POINTING ANGLE QUOTATION MARK "↱=0x21B1", // UPWARDS ARROW WITH TIP RIGHTWARDS "]=0x005D", // RIGHT SQUARE BRACKET "’=0x2019", // RIGHT SINGLE QUOTATION MARK "’=0x2018", // LEFT SINGLE QUOTATION MARK "⋌=0x22CC", // RIGHT SEMIDIRECT PRODUCT "⋊=0x22CA", // RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT "▹=0x25B9", // WHITE RIGHT-POINTING SMALL TRIANGLE "⊵=0x22B5", // CONTAINS AS NORMAL SUBGROUP OR EQUAL TO "▸=0x25B8", // BLACK RIGHT-POINTING SMALL TRIANGLE "℞=0x211E", // PRESCRIPTION TAKE "Ś=0x015A", // LATIN CAPITAL LETTER S WITH ACUTE "ś=0x015B", // LATIN SMALL LETTER S WITH ACUTE "&samalg;=0x2210", // N-ARY COPRODUCT "‚=0x201A", // SINGLE LOW-9 QUOTATION MARK "&sbsol;=0x005C", // REVERSE SOLIDUS "≻=0x227B", // SUCCEEDS "⪸=0x????", // succeeds, approximately equal to "Š=0x0160", // LATIN CAPITAL LETTER S WITH CARON "š=0x0161", // LATIN SMALL LETTER S WITH CARON "≽=0x227D", // SUCCEEDS OR EQUAL TO "⪰=0x227D", // SUCCEEDS OR EQUAL TO "Ş=0x015E", // LATIN CAPITAL LETTER S WITH CEDILLA "ş=0x015F", // LATIN SMALL LETTER S WITH CEDILLA "Ŝ=0x015C", // LATIN CAPITAL LETTER S WITH CIRCUMFLEX "ŝ=0x015D", // LATIN SMALL LETTER S WITH CIRCUMFLEX "⪺=0x????", // succeeds, not approximately equal to "⪶=0x????", // succeeds, not double equals "⋩=0x22E9", // SUCCEEDS BUT NOT EQUIVALENT TO "≿=0x227F", // SUCCEEDS OR EQUIVALENT TO "С=0x0421", // CYRILLIC CAPITAL LETTER ES "с=0x0441", // CYRILLIC SMALL LETTER ES "⋅=0x22C5", // DOT OPERATOR "⊡=0x22A1", // SQUARED DOT OPERATOR "§=0x00A7", // SECTION SIGN ";=0x003B", // SEMICOLON "∖=0x2216", // SET MINUS "✶=0x2736", // SIX POINTED BLACK STAR "&sfgr;=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "⌢=0x2322", // FROWN "&Sgr;=0x03A3", // GREEK CAPITAL LETTER SIGMA "&sgr;=0x03C3", // GREEK SMALL LETTER SIGMA "♯=0x266F", // MUSIC SHARP SIGN "Щ=0x0429", // CYRILLIC CAPITAL LETTER SHCHA "щ=0x0449", // CYRILLIC SMALL LETTER SHCHA "Ш=0x0428", // CYRILLIC CAPITAL LETTER SHA "ш=0x0448", // CYRILLIC SMALL LETTER SHA "­=0x00AD", // SOFT HYPHEN "Σ=0x03A3", // GREEK CAPITAL LETTER SIGMA "σ=0x03C3", // GREEK SMALL LETTER SIGMA "ς=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "ς=0x03C2", // GREEK SMALL LETTER FINAL SIGMA "∼=0x223C", // TILDE OPERATOR "≃=0x2243", // ASYMPTOTICALLY EQUAL TO "∣=0x????", // shortmid "⌣=0x2323", // SMILE "Ь=0x042C", // CYRILLIC CAPITAL LETTER SOFT SIGN "ь=0x044C", // CYRILLIC SMALL LETTER SOFT SIGN "/=0x002F", // SOLIDUS "♠=0x2660", // BLACK SPADE SUIT "∥=0x2225", // PARALLEL TO "⊓=0x2293", // SQUARE CAP "⊔=0x2294", // SQUARE CUP "⊏=0x228F", // SQUARE IMAGE OF "⊑=0x2291", // SQUARE IMAGE OF OR EQUAL TO "⊐=0x2290", // SQUARE ORIGINAL OF "⊒=0x2292", // SQUARE ORIGINAL OF OR EQUAL TO "□=0x25A1", // WHITE SQUARE "□=0x25A1", // WHITE SQUARE "▪=0x25AA", // BLACK SMALL SQUARE "∖=0x2216", // SET MINUS "⌣=0x2323", // SMILE "⋆=0x22C6", // STAR OPERATOR "☆=0x2606", // WHITE STAR "★=0x2605", // BLACK STAR "⋐=0x22D0", // DOUBLE SUBSET "⊂=0x2282", // SUBSET OF "⫅=0x2286", // SUBSET OF OR EQUAL TO "⊆=0x2286", // SUBSET OF OR EQUAL TO "⫋=0x228A", // SUBSET OF WITH NOT EQUAL TO "⊊=0x228A", // SUBSET OF WITH NOT EQUAL TO "∑=0x2211", // N-ARY SUMMATION "♪=0x266A", // EIGHTH NOTE "⋑=0x22D1", // DOUBLE SUPERSET "⊃=0x2283", // SUPERSET OF "¹=0x00B9", // SUPERSCRIPT ONE "²=0x00B2", // SUPERSCRIPT TWO "³=0x00B3", // SUPERSCRIPT THREE "⫆=0x2287", // SUPERSET OF OR EQUAL TO "⊇=0x2287", // SUPERSET OF OR EQUAL TO "⫌=0x228B", // SUPERSET OF WITH NOT EQUAL TO "⊋=0x228B", // SUPERSET OF WITH NOT EQUAL TO "ß=0x00DF", // LATIN SMALL LETTER SHARP S "⌖=0x2316", // POSITION INDICATOR "Τ=0x03A4", // GREEK CAPITAL LETTER TAU "τ=0x03C4", // GREEK SMALL LETTER TAU "Ť=0x0164", // LATIN CAPITAL LETTER T WITH CARON "ť=0x0165", // LATIN SMALL LETTER T WITH CARON "Ţ=0x0162", // LATIN CAPITAL LETTER T WITH CEDILLA "ţ=0x0163", // LATIN SMALL LETTER T WITH CEDILLA "Т=0x0422", // CYRILLIC CAPITAL LETTER TE "т=0x0442", // CYRILLIC SMALL LETTER TE "⃛=0x20DB", // COMBINING THREE DOTS ABOVE "⌕=0x2315", // TELEPHONE RECORDER "&Tgr;=0x03A4", // GREEK CAPITAL LETTER TAU "&tgr;=0x03C4", // GREEK SMALL LETTER TAU "∴=0x2234", // THEREFORE "θ=0x03B8", // GREEK SMALL LETTER THETA "Θ=0x0398", // GREEK CAPITAL LETTER THETA "&thetas;=0x03B8", // GREEK SMALL LETTER THETA "ϑ=0x03D1", // GREEK THETA SYMBOL "ϑ=0x03D1", // GREEK THETA SYMBOL "&THgr;=0x0398", // GREEK CAPITAL LETTER THETA "&thgr;=0x03B8", // GREEK SMALL LETTER THETA " =0x2009", // THIN SPACE "≈=0x2248", // ALMOST EQUAL TO "∼=0x223C", // TILDE OPERATOR "Þ=0x00DE", // LATIN CAPITAL LETTER THORN "þ=0x00FE", // LATIN SMALL LETTER THORN "˜=0x02DC", // SMALL TILDE "×=0x00D7", // MULTIPLICATION SIGN "⊠=0x22A0", // SQUARED TIMES "⊤=0x22A4", // DOWN TACK "‴=0x2034", // TRIPLE PRIME "™=0x2122", // TRADE MARK SIGN "≜=0x225C", // DELTA EQUAL TO "Ц=0x0426", // CYRILLIC CAPITAL LETTER TSE "ц=0x0446", // CYRILLIC SMALL LETTER TSE "Ћ=0x040B", // CYRILLIC CAPITAL LETTER TSHE "ћ=0x045B", // CYRILLIC SMALL LETTER TSHE "Ŧ=0x0166", // LATIN CAPITAL LETTER T WITH STROKE "ŧ=0x0167", // LATIN SMALL LETTER T WITH STROKE "≬=0x226C", // BETWEEN "&Uacgr;=0x038E", // GREEK CAPITAL LETTER UPSILON WITH TONOS "&uacgr;=0x03CD", // GREEK SMALL LETTER UPSILON WITH TONOS "Ú=0x00DA", // LATIN CAPITAL LETTER U WITH ACUTE "ú=0x00FA", // LATIN SMALL LETTER U WITH ACUTE "⇑=0x21D1", // UPWARDS DOUBLE ARROW "↑=0x2191", // UPWARDS ARROW "&uarr2;=0x21C8", // UPWARDS PAIRED ARROWS "Ў=0x040E", // CYRILLIC CAPITAL LETTER SHORT U "ў=0x045E", // CYRILLIC SMALL LETTER SHORT U "Ŭ=0x016C", // LATIN CAPITAL LETTER U WITH BREVE "ŭ=0x016D", // LATIN SMALL LETTER U WITH BREVE "Û=0x00DB", // LATIN CAPITAL LETTER U WITH CIRCUMFLEX "û=0x00FB", // LATIN SMALL LETTER U WITH CIRCUMFLEX "У=0x0423", // CYRILLIC CAPITAL LETTER U "у=0x0443", // CYRILLIC SMALL LETTER U "Ű=0x0170", // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE "ű=0x0171", // LATIN SMALL LETTER U WITH DOUBLE ACUTE "&udiagr;=0x03B0", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND "&Udigr;=0x03AB", // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA "&udigr;=0x03CB", // GREEK SMALL LETTER UPSILON WITH DIALYTIKA "&Ugr;=0x03A5", // GREEK CAPITAL LETTER UPSILON "&ugr;=0x03C5", // GREEK SMALL LETTER UPSILON "Ù=0x00D9", // LATIN CAPITAL LETTER U WITH GRAVE "ù=0x00F9", // LATIN SMALL LETTER U WITH GRAVE "↿=0x21BF", // UPWARDS HARPOON WITH BARB LEFTWARDS "↾=0x21BE", // UPWARDS HARPOON WITH BARB RIGHTWARDS "▀=0x2580", // UPPER HALF BLOCK "⌜=0x231C", // TOP LEFT CORNER "⌏=0x230F", // TOP LEFT CROP "Ū=0x016A", // LATIN CAPITAL LETTER U WITH MACRON "ū=0x016B", // LATIN SMALL LETTER U WITH MACRON "¨=0x00A8", // DIAERESIS "Ų=0x0172", // LATIN CAPITAL LETTER U WITH OGONEK "ų=0x0173", // LATIN SMALL LETTER U WITH OGONEK "⊎=0x228E", // MULTISET UNION "ϒ=0x03A5", // GREEK CAPITAL LETTER UPSILON "υ=0x03C5", // GREEK SMALL LETTER UPSILON "ϒ=0x03D2", // GREEK UPSILON WITH HOOK SYMBOL "Υ=0x03A5", // GREEK CAPITAL LETTER UPSILON "υ=0x03C5", // GREEK SMALL LETTER UPSILON "⌝=0x231D", // TOP RIGHT CORNER "⌎=0x230E", // TOP RIGHT CROP "Ů=0x016E", // LATIN CAPITAL LETTER U WITH RING ABOVE "ů=0x016F", // LATIN SMALL LETTER U WITH RING ABOVE "Ũ=0x0168", // LATIN CAPITAL LETTER U WITH TILDE "ũ=0x0169", // LATIN SMALL LETTER U WITH TILDE "▵=0x25B5", // WHITE UP-POINTING SMALL TRIANGLE "▴=0x25B4", // BLACK UP-POINTING SMALL TRIANGLE "Ü=0x00DC", // LATIN CAPITAL LETTER U WITH DIAERESIS "ü=0x00FC", // LATIN SMALL LETTER U WITH DIAERESIS "↕=0x2195", // UP DOWN ARROW "⇕=0x21D5", // UP DOWN DOUBLE ARROW "В=0x0412", // CYRILLIC CAPITAL LETTER VE "в=0x0432", // CYRILLIC SMALL LETTER VE "⊢=0x22A2", // RIGHT TACK "⊨=0x22A8", // TRUE "⊩=0x22A9", // FORCES "⊻=0x22BB", // XOR "⋮=0x22EE", // VERTICAL ELLIPSIS "|=0x007C", // VERTICAL LINE "‖=0x2016", // DOUBLE VERTICAL LINE "⊲=0x22B2", // NORMAL SUBGROUP OF "&vprime;=0x2032", // PRIME "∝=0x221D", // PROPORTIONAL TO "⊳=0x22B3", // CONTAINS AS NORMAL SUBGROUP "⫋︀=0x228A", // SUBSET OF WITH NOT EQUAL TO "⊊︀=0x228A", // SUBSET OF WITH NOT EQUAL TO "⊋︀=0x228B", // SUPERSET OF WITH NOT EQUAL TO "⫌︀=0x228B", // SUPERSET OF WITH NOT EQUAL TO "⊪=0x22AA", // TRIPLE VERTICAL BAR RIGHT TURNSTILE "Ŵ=0x0174", // LATIN CAPITAL LETTER W WITH CIRCUMFLEX "ŵ=0x0175", // LATIN SMALL LETTER W WITH CIRCUMFLEX "≙=0x2259", // ESTIMATES "℘=0x2118", // SCRIPT CAPITAL P "≀=0x2240", // WREATH PRODUCT "◯=0x25CB", // WHITE CIRCLE "▽=0x25BD", // WHITE DOWN-POINTING TRIANGLE "&Xgr;=0x039E", // GREEK CAPITAL LETTER XI "&xgr;=0x03BE", // GREEK SMALL LETTER XI "⟺=0x2194", // LEFT RIGHT ARROW "⟷=0x2194", // LEFT RIGHT ARROW "Ξ=0x039E", // GREEK CAPITAL LETTER XI "ξ=0x03BE", // GREEK SMALL LETTER XI "⟸=0x21D0", // LEFTWARDS DOUBLE ARROW "⟹=0x21D2", // RIGHTWARDS DOUBLE ARROW "△=0x25B3", // WHITE UP-POINTING TRIANGLE "Ý=0x00DD", // LATIN CAPITAL LETTER Y WITH ACUTE "ý=0x00FD", // LATIN SMALL LETTER Y WITH ACUTE "Я=0x042F", // CYRILLIC CAPITAL LETTER YA "я=0x044F", // CYRILLIC SMALL LETTER YA "Ŷ=0x0176", // LATIN CAPITAL LETTER Y WITH CIRCUMFLEX "ŷ=0x0177", // LATIN SMALL LETTER Y WITH CIRCUMFLEX "Ы=0x042B", // CYRILLIC CAPITAL LETTER YERU "ы=0x044B", // CYRILLIC SMALL LETTER YERU "¥=0x00A5", // YEN SIGN "Ї=0x0407", // CYRILLIC CAPITAL LETTER YI "ї=0x0457", // CYRILLIC SMALL LETTER YI "Ю=0x042E", // CYRILLIC CAPITAL LETTER YU "ю=0x044E", // CYRILLIC SMALL LETTER YU "ÿ=0x00FF", // LATIN SMALL LETTER Y WITH DIAERESIS "Ÿ=0x0178", // LATIN CAPITAL LETTER Y WITH DIAERESIS "Ź=0x0179", // LATIN CAPITAL LETTER Z WITH ACUTE "ź=0x017A", // LATIN SMALL LETTER Z WITH ACUTE "Ž=0x017D", // LATIN CAPITAL LETTER Z WITH CARON "ž=0x017E", // LATIN SMALL LETTER Z WITH CARON "З=0x0417", // CYRILLIC CAPITAL LETTER ZE "з=0x0437", // CYRILLIC SMALL LETTER ZE "Ż=0x017B", // LATIN CAPITAL LETTER Z WITH DOT ABOVE "ż=0x017C", // LATIN SMALL LETTER Z WITH DOT ABOVE "Ζ=0x0396", // GREEK CAPITAL LETTER ZETA "ζ=0x03B6", // GREEK SMALL LETTER ZETA "&Zgr;=0x0396", // GREEK CAPITAL LETTER ZETA "&zgr;=0x03B6", // GREEK SMALL LETTER ZETA "Ж=0x0416", // CYRILLIC CAPITAL LETTER ZHE "ж=0x0436", // CYRILLIC SMALL LETTER ZHE "‍=0x200D", // ZERO WIDTH JOINER "‌=0x200C", // ZERO WIDTH NON-JOINER // The following are not in SGML.TXT "&sextile;=0x2736" "€=0x20AC", // EURO SIGN "€=0x20AC", // EURO SIGN ./mytool/kmap/Telugu-Rts.kmap0000644000175000017500000007514707645673150016230 0ustar henrichhenrich// Telugu kmap accordng to RTS transliteration // by Murali Nandula 2003 April 17, nmukri@hotmail.com // // Note on RTS : // RTS stands for Rice Transliteration Standard found in 1992 for writing // Telugu in Phonetic English. A search on soc.culture.indian.telugu(SCIT) // newsgroup will give articles on the origin of RTS standard by // Ananda Kishore and Ramarao Kanneganti. // Consonant + vowel/virama "B=0x0c2d 0x0c4d", "B^=0x0c2d 0x0c4d", "BA=0x0c2d 0x0c3e", "BE=0x0c2d 0x0c47", "BI=0x0c2d 0x0c40", "Bee=0x0c2d 0x0c40", "Bii=0x0c2d 0x0c40", "BO=0x0c2d 0x0c4b", "BRu=0x0c2d 0x0c44", "BR=0x0c2d 0x0c43", "BU=0x0c2d 0x0c42", "Boo=0x0c2d 0x0c42", "Ba=0x0c2d", "Baa=0x0c2d 0x0c3e", "Bai=0x0c2d 0x0c48", "Bau=0x0c2d 0x0c4c", "Be=0x0c2d 0x0c46", "Bi=0x0c2d 0x0c3f", "Bii=0x0c2d 0x0c40", "Bo=0x0c2d 0x0c4a", "Bu=0x0c2d 0x0c41", "Buu=0x0c2d 0x0c42", "C=0x0c1b 0x0c4d", "C^=0x0c1b 0x0c4d", "CA=0x0c1b 0x0c3e", "CE=0x0c1b 0x0c47", "CI=0x0c1b 0x0c40", "Cee=0x0c1b 0x0c40", "Cii=0x0c1b 0x0c40", "CO=0x0c1b 0x0c4b", "CRu=0x0c1b 0x0c44", "CR=0x0c1b 0x0c43", "CU=0x0c1b 0x0c42", "Coo=0x0c1b 0x0c42", "Ca=0x0c1b", "Caa=0x0c1b 0x0c3e", "Cai=0x0c1b 0x0c48", "Cau=0x0c1b 0x0c4c", "Ce=0x0c1b 0x0c46", "Ci=0x0c1b 0x0c3f", "Cii=0x0c1b 0x0c40", "Co=0x0c1b 0x0c4a", "Cu=0x0c1b 0x0c41", "Cuu=0x0c1b 0x0c42", "CH=0x0c1b 0x0c4d", "CH^=0x0c1b 0x0c4d", "CHA=0x0c1b 0x0c3e", "CHE=0x0c1b 0x0c47", "CHI=0x0c1b 0x0c40", "CHee=0x0c1b 0x0c40", "CHii=0x0c1b 0x0c40", "CHO=0x0c1b 0x0c4b", "CHRu=0x0c1b 0x0c44", "CHR=0x0c1b 0x0c43", "CHU=0x0c1b 0x0c42", "CHoo=0x0c1b 0x0c42", "CHoo=0x0c1b 0x0c42", "CHa=0x0c1b", "CHaa=0x0c1b 0x0c3e", "CHai=0x0c1b 0x0c48", "CHau=0x0c1b 0x0c4c", "CHe=0x0c1b 0x0c46", "CHi=0x0c1b 0x0c3f", "CHii=0x0c1b 0x0c40", "CHo=0x0c1b 0x0c4a", "CHu=0x0c1b 0x0c41", "CHuu=0x0c1b 0x0c42", "Ch=0x0c1b 0x0c4d", "Ch^=0x0c1b 0x0c4d", "ChA=0x0c1b 0x0c3e", "ChE=0x0c1b 0x0c47", "ChI=0x0c1b 0x0c40", "Chee=0x0c1b 0x0c40", "Chii=0x0c1b 0x0c40", "ChO=0x0c1b 0x0c4b", "ChRu=0x0c1b 0x0c44", "ChR=0x0c1b 0x0c43", "ChU=0x0c1b 0x0c42", "Choo=0x0c1b 0x0c42", "Choo=0x0c1b 0x0c42", "Cha=0x0c1b", "Chaa=0x0c1b 0x0c3e", "Chai=0x0c1b 0x0c48", "Chau=0x0c1b 0x0c4c", "Che=0x0c1b 0x0c46", "Chi=0x0c1b 0x0c3f", "Chii=0x0c1b 0x0c40", "Cho=0x0c1b 0x0c4a", "Chu=0x0c1b 0x0c41", "Chuu=0x0c1b 0x0c42", "D=0x0c21 0x0c4d", "D^=0x0c21 0x0c4d", "DA=0x0c21 0x0c3e", "DE=0x0c21 0x0c47", "DI=0x0c21 0x0c40", "Dee=0x0c21 0x0c40", "Dii=0x0c21 0x0c40", "DO=0x0c21 0x0c4b", "DRu=0x0c21 0x0c44", "DR=0x0c21 0x0c43", "DU=0x0c21 0x0c42", "Doo=0x0c21 0x0c42", "Da=0x0c21", "Daa=0x0c21 0x0c3e", "Dai=0x0c21 0x0c48", "Dau=0x0c21 0x0c4c", "De=0x0c21 0x0c46", "Di=0x0c21 0x0c3f", "Dii=0x0c21 0x0c40", "Do=0x0c21 0x0c4a", "Du=0x0c21 0x0c41", "Duu=0x0c21 0x0c42", "DH=0x0c22 0x0c4d", "DH^=0x0c22 0x0c4d", "DHA=0x0c22 0x0c3e", "DHE=0x0c22 0x0c47", "DHI=0x0c22 0x0c40", "DHee=0x0c21 0x0c40", "DHii=0x0c21 0x0c40", "DHO=0x0c22 0x0c4b", "DHRu=0x0c22 0x0c44", "DHR=0x0c22 0x0c43", "DHU=0x0c22 0x0c42", "DHoo=0x0c22 0x0c42", "DHa=0x0c22", "DHaa=0x0c22 0x0c3e", "DHai=0x0c22 0x0c48", "DHau=0x0c22 0x0c4c", "DHe=0x0c22 0x0c46", "DHi=0x0c22 0x0c3f", "DHii=0x0c22 0x0c40", "DHo=0x0c22 0x0c4a", "DHu=0x0c22 0x0c41", "DHuu=0x0c22 0x0c42", "Dh=0x0c22 0x0c4d", "Dh^=0x0c22 0x0c4d", "DhA=0x0c22 0x0c3e", "DhE=0x0c22 0x0c47", "DhI=0x0c22 0x0c40", "Dhee=0x0c21 0x0c40", "Dhii=0x0c21 0x0c40", "DhO=0x0c22 0x0c4b", "DhRu=0x0c22 0x0c44", "DhR=0x0c22 0x0c43", "DhU=0x0c22 0x0c42", "Dhoo=0x0c22 0x0c42", "Dha=0x0c22", "Dhaa=0x0c22 0x0c3e", "Dhai=0x0c22 0x0c48", "Dhau=0x0c22 0x0c4c", "Dhe=0x0c22 0x0c46", "Dhi=0x0c22 0x0c3f", "Dhii=0x0c22 0x0c40", "Dho=0x0c22 0x0c4a", "Dhu=0x0c22 0x0c41", "Dhuu=0x0c22 0x0c42", "f=0x0c2b 0x0c4d", "f^=0x0c2b 0x0c4d", "fA=0x0c2b 0x0c3e", "fE=0x0c2b 0x0c47", "fI=0x0c2b 0x0c40", "fee=0x0c2b 0x0c40", "fii=0x0c2b 0x0c40", "fO=0x0c2b 0x0c4b", "fRu=0x0c2b 0x0c44", "fR=0x0c2b 0x0c43", "fU=0x0c2b 0x0c42", "foo=0x0c2b 0x0c42", "fa=0x0c2b", "faa=0x0c2b 0x0c3e", "fai=0x0c2b 0x0c48", "fau=0x0c2b 0x0c4c", "fe=0x0c2b 0x0c46", "fi=0x0c2b 0x0c3f", "fii=0x0c2b 0x0c40", "fo=0x0c2b 0x0c4a", "fu=0x0c2b 0x0c41", "fuu=0x0c2b 0x0c42", "G=0x0c18 0x0c4d", "G^=0x0c18 0x0c4d", "GA=0x0c18 0x0c3e", "GE=0x0c18 0x0c47", "GI=0x0c18 0x0c40", "Gee=0x0c18 0x0c40", "Gii=0x0c18 0x0c40", "GO=0x0c18 0x0c4b", "GRu=0x0c18 0x0c44", "GR=0x0c18 0x0c43", "GU=0x0c18 0x0c42", "Goo=0x0c18 0x0c42", "Ga=0x0c18", "Gaa=0x0c18 0x0c3e", "Gai=0x0c18 0x0c48", "Gau=0x0c18 0x0c4c", "Ge=0x0c18 0x0c46", "Gi=0x0c18 0x0c3f", "Gii=0x0c18 0x0c40", "Go=0x0c18 0x0c4a", "Gu=0x0c18 0x0c41", "Guu=0x0c18 0x0c42", "J=0x0c1d 0x0c4d", "J^=0x0c1d 0x0c4d", "JA=0x0c1d 0x0c3e", "JE=0x0c1d 0x0c47", "JI=0x0c1d 0x0c40", "Jee=0x0c1d 0x0c40", "Jii=0x0c1d 0x0c40", "JO=0x0c1d 0x0c4b", "JRu=0x0c1d 0x0c44", "JR=0x0c1d 0x0c43", "JU=0x0c1d 0x0c42", "Joo=0x0c1d 0x0c42", "Ja=0x0c1d", "Jaa=0x0c1d 0x0c3e", "Jai=0x0c1d 0x0c48", "Jau=0x0c1d 0x0c4c", "Je=0x0c1d 0x0c46", "Ji=0x0c1d 0x0c3f", "Jii=0x0c1d 0x0c40", "Jo=0x0c1d 0x0c4a", "Ju=0x0c1d 0x0c41", "Juu=0x0c1d 0x0c42", "JH=0x0c1d 0x0c4d", "JH^=0x0c1d 0x0c4d", "JHA=0x0c1d 0x0c3e", "JHE=0x0c1d 0x0c47", "JHI=0x0c1d 0x0c40", "JHee=0x0c1d 0x0c40", "JHii=0x0c1d 0x0c40", "JHO=0x0c1d 0x0c4b", "JHRu=0x0c1d 0x0c44", "JHR=0x0c1d 0x0c43", "JHU=0x0c1d 0x0c42", "JHoo=0x0c1d 0x0c42", "JHa=0x0c1d", "JHaa=0x0c1d 0x0c3e", "JHai=0x0c1d 0x0c48", "JHau=0x0c1d 0x0c4c", "JHe=0x0c1d 0x0c46", "JHi=0x0c1d 0x0c3f", "JHii=0x0c1d 0x0c40", "JHo=0x0c1d 0x0c4a", "JHu=0x0c1d 0x0c41", "JHuu=0x0c1d 0x0c42", "Jh=0x0c1d 0x0c4d", "Jh^=0x0c1d 0x0c4d", "JhA=0x0c1d 0x0c3e", "JhE=0x0c1d 0x0c47", "JhI=0x0c1d 0x0c40", "Jhee=0x0c1d 0x0c40", "Jhii=0x0c1d 0x0c40", "JhO=0x0c1d 0x0c4b", "JhRu=0x0c1d 0x0c44", "JhR=0x0c1d 0x0c43", "JhU=0x0c1d 0x0c42", "Jhoo=0x0c1d 0x0c42", "Jha=0x0c1d", "Jhaa=0x0c1d 0x0c3e", "Jhai=0x0c1d 0x0c48", "Jhau=0x0c1d 0x0c4c", "Jhe=0x0c1d 0x0c46", "Jhi=0x0c1d 0x0c3f", "Jhii=0x0c1d 0x0c40", "Jho=0x0c1d 0x0c4a", "Jhu=0x0c1d 0x0c41", "Jhuu=0x0c1d 0x0c42", "L=0x0c33 0x0c4d", "L^=0x0c33 0x0c4d", "LA=0x0c33 0x0c3e", "LE=0x0c33 0x0c47", "LI=0x0c33 0x0c40", "Lee=0x0c33 0x0c40", "Lii=0x0c33 0x0c40", "LO=0x0c33 0x0c4b", "LRu=0x0c33 0x0c44", "LR=0x0c33 0x0c43", "LU=0x0c33 0x0c42", "Loo=0x0c33 0x0c42", "La=0x0c33", "Laa=0x0c33 0x0c3e", "Lai=0x0c33 0x0c48", "Lau=0x0c33 0x0c4c", "Le=0x0c33 0x0c46", "Li=0x0c33 0x0c3f", "Lii=0x0c33 0x0c40", "Lo=0x0c33 0x0c4a", "Lu=0x0c33 0x0c41", "Luu=0x0c33 0x0c42", "N=0x0c23 0x0c4d", "N^=0x0c23 0x0c4d", "NA=0x0c23 0x0c3e", "NE=0x0c23 0x0c47", "NI=0x0c23 0x0c40", "Nee=0x0c23 0x0c40", "Nii=0x0c23 0x0c40", "NO=0x0c23 0x0c4b", "NRu=0x0c23 0x0c44", "NR=0x0c23 0x0c43", "NU=0x0c23 0x0c42", "Noo=0x0c23 0x0c42", "Na=0x0c23", "Naa=0x0c23 0x0c3e", "Nai=0x0c23 0x0c48", "Nau=0x0c23 0x0c4c", "Ne=0x0c23 0x0c46", "Ni=0x0c23 0x0c3f", "Nii=0x0c23 0x0c40", "No=0x0c23 0x0c4a", "Nu=0x0c23 0x0c41", "Nuu=0x0c23 0x0c42", "N^=0x0c19 0x0c4d", "N^^=0x0c19 0x0c4d", "N^A=0x0c19 0x0c3e", "N^E=0x0c19 0x0c47", "N^I=0x0c19 0x0c40", "N^ee=0x0c19 0x0c40", "N^ii=0x0c19 0x0c40", "N^O=0x0c19 0x0c4b", "N^Ru=0x0c19 0x0c44", "N^R=0x0c19 0x0c43", "N^U=0x0c19 0x0c42", "N^oo=0x0c19 0x0c42", "N^a=0x0c19", "N^aa=0x0c19 0x0c3e", "N^ai=0x0c19 0x0c48", "N^au=0x0c19 0x0c4c", "N^e=0x0c19 0x0c46", "N^i=0x0c19 0x0c3f", "N^ii=0x0c19 0x0c40", "N^o=0x0c19 0x0c4a", "N^u=0x0c19 0x0c41", "N^uu=0x0c19 0x0c42", "SH=0x0c37 0x0c4d", "SH^=0x0c37 0x0c4d", "SHA=0x0c37 0x0c3e", "SHE=0x0c37 0x0c47", "SHI=0x0c37 0x0c40", "SHee=0x0c37 0x0c40", "SHii=0x0c37 0x0c40", "SHO=0x0c37 0x0c4b", "SHRu=0x0c37 0x0c44", "SHR=0x0c37 0x0c43", "SHU=0x0c37 0x0c42", "SHoo=0x0c37 0x0c42", "SHa=0x0c37", "SHaa=0x0c37 0x0c3e", "SHai=0x0c37 0x0c48", "SHau=0x0c37 0x0c4c", "SHe=0x0c37 0x0c46", "SHi=0x0c37 0x0c3f", "SHii=0x0c37 0x0c40", "SHo=0x0c37 0x0c4a", "SHu=0x0c37 0x0c41", "SHuu=0x0c37 0x0c42", "Sh=0x0c37 0x0c4d", "Sh^=0x0c37 0x0c4d", "ShA=0x0c37 0x0c3e", "ShE=0x0c37 0x0c47", "ShI=0x0c37 0x0c40", "Shee=0x0c37 0x0c40", "Shii=0x0c37 0x0c40", "ShO=0x0c37 0x0c4b", "ShRu=0x0c37 0x0c44", "ShR=0x0c37 0x0c43", "ShU=0x0c37 0x0c42", "Shoo=0x0c37 0x0c42", "Sha=0x0c37", "Shaa=0x0c37 0x0c3e", "Shai=0x0c37 0x0c48", "Shau=0x0c37 0x0c4c", "She=0x0c37 0x0c46", "Shi=0x0c37 0x0c3f", "Shii=0x0c37 0x0c40", "Sho=0x0c37 0x0c4a", "Shu=0x0c37 0x0c41", "Shuu=0x0c37 0x0c42", "T=0x0c1f 0x0c4d", "T^=0x0c1f 0x0c4d", "TA=0x0c1f 0x0c3e", "TE=0x0c1f 0x0c47", "TI=0x0c1f 0x0c40", "Tee=0x0c1f 0x0c40", "Tii=0x0c1f 0x0c40", "TO=0x0c1f 0x0c4b", "TRu=0x0c1f 0x0c44", "TR=0x0c1f 0x0c43", "TU=0x0c1f 0x0c42", "Too=0x0c1f 0x0c42", "Ta=0x0c1f", "Taa=0x0c1f 0x0c3e", "Tai=0x0c1f 0x0c48", "Tau=0x0c1f 0x0c4c", "Te=0x0c1f 0x0c46", "Ti=0x0c1f 0x0c3f", "Tii=0x0c1f 0x0c40", "To=0x0c1f 0x0c4a", "Tu=0x0c1f 0x0c41", "Tuu=0x0c1f 0x0c42", "TH=0x0c20 0x0c4d", "TH^=0x0c20 0x0c4d", "THA=0x0c20 0x0c3e", "THE=0x0c20 0x0c47", "THI=0x0c20 0x0c40", "THee=0x0c20 0x0c40", "THii=0x0c20 0x0c40", "THO=0x0c20 0x0c4b", "THRu=0x0c20 0x0c44", "THR=0x0c20 0x0c43", "THU=0x0c20 0x0c42", "THoo=0x0c20 0x0c42", "THa=0x0c20", "THaa=0x0c20 0x0c3e", "THai=0x0c20 0x0c48", "THau=0x0c20 0x0c4c", "THe=0x0c20 0x0c46", "THi=0x0c20 0x0c3f", "THii=0x0c20 0x0c40", "THo=0x0c20 0x0c4a", "THu=0x0c20 0x0c41", "THuu=0x0c20 0x0c42", "Th=0x0c20 0x0c4d", "Th^=0x0c20 0x0c4d", "ThA=0x0c20 0x0c3e", "ThE=0x0c20 0x0c47", "ThI=0x0c20 0x0c40", "Thee=0x0c20 0x0c40", "Thii=0x0c20 0x0c40", "ThO=0x0c20 0x0c4b", "ThRu=0x0c20 0x0c44", "ThR=0x0c20 0x0c43", "ThU=0x0c20 0x0c42", "Thoo=0x0c20 0x0c42", "Tha=0x0c20", "Thaa=0x0c20 0x0c3e", "Thai=0x0c20 0x0c48", "Thau=0x0c20 0x0c4c", "The=0x0c20 0x0c46", "Thi=0x0c20 0x0c3f", "Thii=0x0c20 0x0c40", "Tho=0x0c20 0x0c4a", "Thu=0x0c20 0x0c41", "Thuu=0x0c20 0x0c42", "b=0x0c2c 0x0c4d", "b^=0x0c2c 0x0c4d", "bA=0x0c2c 0x0c3e", "bE=0x0c2c 0x0c47", "bI=0x0c2c 0x0c40", "bee=0x0c2c 0x0c40", "bii=0x0c2c 0x0c40", "bO=0x0c2c 0x0c4b", "bRu=0x0c2c 0x0c44", "bR=0x0c2c 0x0c43", "bU=0x0c2c 0x0c42", "boo=0x0c2c 0x0c42", "ba=0x0c2c", "baa=0x0c2c 0x0c3e", "bai=0x0c2c 0x0c48", "bau=0x0c2c 0x0c4c", "be=0x0c2c 0x0c46", "bi=0x0c2c 0x0c3f", "bii=0x0c2c 0x0c40", "bo=0x0c2c 0x0c4a", "bu=0x0c2c 0x0c41", "buu=0x0c2c 0x0c42", "bH=0x0c2d 0x0c4d", "bH^=0x0c2d 0x0c4d", "bHA=0x0c2d 0x0c3e", "bHE=0x0c2d 0x0c47", "bHI=0x0c2d 0x0c40", "bHee=0x0c2d 0x0c40", "bHii=0x0c2d 0x0c40", "bHO=0x0c2d 0x0c4b", "bHRu=0x0c2d 0x0c44", "bHR=0x0c2d 0x0c43", "bHU=0x0c2d 0x0c42", "bHoo=0x0c2d 0x0c42", "bHa=0x0c2d", "bHaa=0x0c2d 0x0c3e", "bHai=0x0c2d 0x0c48", "bHau=0x0c2d 0x0c4c", "bHe=0x0c2d 0x0c46", "bHi=0x0c2d 0x0c3f", "bHii=0x0c2d 0x0c40", "bHo=0x0c2d 0x0c4a", "bHu=0x0c2d 0x0c41", "bHuu=0x0c2d 0x0c42", "bh=0x0c2d 0x0c4d", "bh^=0x0c2d 0x0c4d", "bhA=0x0c2d 0x0c3e", "bhE=0x0c2d 0x0c47", "bhI=0x0c2d 0x0c40", "bhee=0x0c2d 0x0c40", "bhii=0x0c2d 0x0c40", "bhO=0x0c2d 0x0c4b", "bhRu=0x0c2d 0x0c44", "bhR=0x0c2d 0x0c43", "bhU=0x0c2d 0x0c42", "bhoo=0x0c2d 0x0c42", "bha=0x0c2d", "bhaa=0x0c2d 0x0c3e", "bhai=0x0c2d 0x0c48", "bhau=0x0c2d 0x0c4c", "bhe=0x0c2d 0x0c46", "bhi=0x0c2d 0x0c3f", "bhii=0x0c2d 0x0c40", "bho=0x0c2d 0x0c4a", "bhu=0x0c2d 0x0c41", "bhuu=0x0c2d 0x0c42", "c=0x0c1a 0x0c4d", "c^=0x0c1a 0x0c4d", "cA=0x0c1a 0x0c3e", "cE=0x0c1a 0x0c47", "cI=0x0c1a 0x0c40", "cee=0x0c1a 0x0c40", "cii=0x0c1a 0x0c40", "cO=0x0c1a 0x0c4b", "cRu=0x0c1a 0x0c44", "cR=0x0c1a 0x0c43", "cU=0x0c1a 0x0c42", "coo=0x0c1a 0x0c42", "ca=0x0c1a", "caa=0x0c1a 0x0c3e", "cai=0x0c1a 0x0c48", "cau=0x0c1a 0x0c4c", "ce=0x0c1a 0x0c46", "ci=0x0c1a 0x0c3f", "cii=0x0c1a 0x0c40", "co=0x0c1a 0x0c4a", "cu=0x0c1a 0x0c41", "cuu=0x0c1a 0x0c42", "ch=0x0c1a 0x0c4d", "ch^=0x0c1a 0x0c4d", "chA=0x0c1a 0x0c3e", "chE=0x0c1a 0x0c47", "chI=0x0c1a 0x0c40", "chee=0x0c1a 0x0c40", "chii=0x0c1a 0x0c40", "chO=0x0c1a 0x0c4b", "chRu=0x0c1a 0x0c44", "chR=0x0c1a 0x0c43", "chU=0x0c1a 0x0c42", "choo=0x0c1a 0x0c42", "cha=0x0c1a", "chaa=0x0c1a 0x0c3e", "chai=0x0c1a 0x0c48", "chau=0x0c1a 0x0c4c", "che=0x0c1a 0x0c46", "chi=0x0c1a 0x0c3f", "chii=0x0c1a 0x0c40", "cho=0x0c1a 0x0c4a", "chu=0x0c1a 0x0c41", "chuu=0x0c1a 0x0c42", "chh=0x0c1b 0x0c4d", "chh^=0x0c1b 0x0c4d", "chhA=0x0c1b 0x0c3e", "chhE=0x0c1b 0x0c47", "chhI=0x0c1b 0x0c40", "chhee=0x0c1b 0x0c40", "chhii=0x0c1b 0x0c40", "chhO=0x0c1b 0x0c4b", "chhRu=0x0c1b 0x0c44", "chhR=0x0c1b 0x0c43", "chhU=0x0c1b 0x0c42", "chhoo=0x0c1b 0x0c42", "chha=0x0c1b", "chhaa=0x0c1b 0x0c3e", "chhai=0x0c1b 0x0c48", "chhau=0x0c1b 0x0c4c", "chhe=0x0c1b 0x0c46", "chhi=0x0c1b 0x0c3f", "chhii=0x0c1b 0x0c40", "chho=0x0c1b 0x0c4a", "chhu=0x0c1b 0x0c41", "chhuu=0x0c1b 0x0c42", "d=0x0c26 0x0c4d", "d^=0x0c26 0x0c4d", "dA=0x0c26 0x0c3e", "dE=0x0c26 0x0c47", "dI=0x0c26 0x0c40", "dee=0x0c26 0x0c40", "dii=0x0c26 0x0c40", "dO=0x0c26 0x0c4b", "dRu=0x0c26 0x0c44", "dR=0x0c26 0x0c43", "dU=0x0c26 0x0c42", "doo=0x0c26 0x0c42", "da=0x0c26", "daa=0x0c26 0x0c3e", "dai=0x0c26 0x0c48", "dau=0x0c26 0x0c4c", "de=0x0c26 0x0c46", "di=0x0c26 0x0c3f", "dii=0x0c26 0x0c40", "do=0x0c26 0x0c4a", "du=0x0c26 0x0c41", "duu=0x0c26 0x0c42", "dh=0x0c27 0x0c4d", "dh^=0x0c27 0x0c4d", "dhA=0x0c27 0x0c3e", "dhE=0x0c27 0x0c47", "dhI=0x0c27 0x0c40", "dhee=0x0c27 0x0c40", "dhii=0x0c27 0x0c40", "dhO=0x0c27 0x0c4b", "dhRu=0x0c27 0x0c44", "dhR=0x0c27 0x0c43", "dhU=0x0c27 0x0c42", "dhoo=0x0c27 0x0c42", "dha=0x0c27", "dhaa=0x0c27 0x0c3e", "dhai=0x0c27 0x0c48", "dhau=0x0c27 0x0c4c", "dhe=0x0c27 0x0c46", "dhi=0x0c27 0x0c3f", "dhii=0x0c27 0x0c40", "dho=0x0c27 0x0c4a", "dhu=0x0c27 0x0c41", "dhuu=0x0c27 0x0c42", "g=0x0c17 0x0c4d", "g^=0x0c17 0x0c4d", "gA=0x0c17 0x0c3e", "gE=0x0c17 0x0c47", "gI=0x0c17 0x0c40", "gee=0x0c17 0x0c40", "gii=0x0c17 0x0c40", "gO=0x0c17 0x0c4b", "gRu=0x0c17 0x0c44", "gR=0x0c17 0x0c43", "gU=0x0c17 0x0c42", "goo=0x0c17 0x0c42", "ga=0x0c17", "gaa=0x0c17 0x0c3e", "gai=0x0c17 0x0c48", "gau=0x0c17 0x0c4c", "ge=0x0c17 0x0c46", "gi=0x0c17 0x0c3f", "gii=0x0c17 0x0c40", "go=0x0c17 0x0c4a", "gu=0x0c17 0x0c41", "guu=0x0c17 0x0c42", "gH=0x0c18 0x0c4d", "gH^=0x0c18 0x0c4d", "gHA=0x0c18 0x0c3e", "gHE=0x0c18 0x0c47", "gHI=0x0c18 0x0c40", "gHee=0x0c18 0x0c40", "gHii=0x0c18 0x0c40", "gHO=0x0c18 0x0c4b", "gHRu=0x0c18 0x0c44", "gHR=0x0c18 0x0c43", "gHU=0x0c18 0x0c42", "gHoo=0x0c18 0x0c42", "gHa=0x0c18", "gHaa=0x0c18 0x0c3e", "gHai=0x0c18 0x0c48", "gHau=0x0c18 0x0c4c", "gHe=0x0c18 0x0c46", "gHi=0x0c18 0x0c3f", "gHii=0x0c18 0x0c40", "gHo=0x0c18 0x0c4a", "gHu=0x0c18 0x0c41", "gHuu=0x0c18 0x0c42", "gh=0x0c18 0x0c4d", "gh^=0x0c18 0x0c4d", "ghA=0x0c18 0x0c3e", "ghE=0x0c18 0x0c47", "ghI=0x0c18 0x0c40", "ghee=0x0c18 0x0c40", "ghii=0x0c18 0x0c40", "ghO=0x0c18 0x0c4b", "ghRu=0x0c18 0x0c44", "ghR=0x0c18 0x0c43", "ghU=0x0c18 0x0c42", "ghoo=0x0c18 0x0c42", "gha=0x0c18", "ghaa=0x0c18 0x0c3e", "ghai=0x0c18 0x0c48", "ghau=0x0c18 0x0c4c", "ghe=0x0c18 0x0c46", "ghi=0x0c18 0x0c3f", "ghii=0x0c18 0x0c40", "gho=0x0c18 0x0c4a", "ghu=0x0c18 0x0c41", "ghuu=0x0c18 0x0c42", "h=0x0c39 0x0c4d", "h^=0x0c39 0x0c4d", "hA=0x0c39 0x0c3e", "hE=0x0c39 0x0c47", "hI=0x0c39 0x0c40", "hee=0x0c39 0x0c40", "hii=0x0c39 0x0c40", "hO=0x0c39 0x0c4b", "hRu=0x0c39 0x0c44", "hR=0x0c39 0x0c43", "hU=0x0c39 0x0c42", "hoo=0x0c39 0x0c42", "ha=0x0c39", "haa=0x0c39 0x0c3e", "hai=0x0c39 0x0c48", "hau=0x0c39 0x0c4c", "he=0x0c39 0x0c46", "hi=0x0c39 0x0c3f", "hii=0x0c39 0x0c40", "ho=0x0c39 0x0c4a", "hu=0x0c39 0x0c41", "huu=0x0c39 0x0c42", "j=0x0c1c 0x0c4d", "j^=0x0c1c 0x0c4d", "jA=0x0c1c 0x0c3e", "jE=0x0c1c 0x0c47", "jI=0x0c1c 0x0c40", "jee=0x0c1c 0x0c40", "jii=0x0c1c 0x0c40", "jO=0x0c1c 0x0c4b", "jRu=0x0c1c 0x0c44", "jR=0x0c1c 0x0c43", "jU=0x0c1c 0x0c42", "joo=0x0c1c 0x0c42", "ja=0x0c1c", "jaa=0x0c1c 0x0c3e", "jai=0x0c1c 0x0c48", "jau=0x0c1c 0x0c4c", "je=0x0c1c 0x0c46", "ji=0x0c1c 0x0c3f", "jii=0x0c1c 0x0c40", "jo=0x0c1c 0x0c4a", "ju=0x0c1c 0x0c41", "juu=0x0c1c 0x0c42", "jH=0x0c1d 0x0c4d", "jH^=0x0c1d 0x0c4d", "jHA=0x0c1d 0x0c3e", "jHE=0x0c1d 0x0c47", "jHI=0x0c1d 0x0c40", "jHee=0x0c1d 0x0c40", "jHii=0x0c1d 0x0c40", "jHO=0x0c1d 0x0c4b", "jHRu=0x0c1d 0x0c44", "jHR=0x0c1d 0x0c43", "jHU=0x0c1d 0x0c42", "jHoo=0x0c1d 0x0c42", "jHa=0x0c1d", "jHaa=0x0c1d 0x0c3e", "jHai=0x0c1d 0x0c48", "jHau=0x0c1d 0x0c4c", "jHe=0x0c1d 0x0c46", "jHi=0x0c1d 0x0c3f", "jHii=0x0c1d 0x0c40", "jHo=0x0c1d 0x0c4a", "jHu=0x0c1d 0x0c41", "jHuu=0x0c1d 0x0c42", "jh=0x0c1d 0x0c4d", "jh^=0x0c1d 0x0c4d", "jhA=0x0c1d 0x0c3e", "jhE=0x0c1d 0x0c47", "jhI=0x0c1d 0x0c40", "jhee=0x0c1d 0x0c40", "jhii=0x0c1d 0x0c40", "jhO=0x0c1d 0x0c4b", "jhRu=0x0c1d 0x0c44", "jhR=0x0c1d 0x0c43", "jhU=0x0c1d 0x0c42", "jhoo=0x0c1d 0x0c42", "jha=0x0c1d", "jhaa=0x0c1d 0x0c3e", "jhai=0x0c1d 0x0c48", "jhau=0x0c1d 0x0c4c", "jhe=0x0c1d 0x0c46", "jhi=0x0c1d 0x0c3f", "jhii=0x0c1d 0x0c40", "jho=0x0c1d 0x0c4a", "jhu=0x0c1d 0x0c41", "jhuu=0x0c1d 0x0c42", "k=0x0c15 0x0c4d", "k^=0x0c15 0x0c4d", "kA=0x0c15 0x0c3e", "kE=0x0c15 0x0c47", "kI=0x0c15 0x0c40", "kee=0x0c15 0x0c40", "kii=0x0c15 0x0c40", "kO=0x0c15 0x0c4b", "kRu=0x0c15 0x0c44", "kR=0x0c15 0x0c43", "kU=0x0c15 0x0c42", "koo=0x0c15 0x0c42", "ka=0x0c15", "kaa=0x0c15 0x0c3e", "kai=0x0c15 0x0c48", "kau=0x0c15 0x0c4c", "ke=0x0c15 0x0c46", "ki=0x0c15 0x0c3f", "kii=0x0c15 0x0c40", "ko=0x0c15 0x0c4a", "ku=0x0c15 0x0c41", "kuu=0x0c15 0x0c42", "K=0x0c16 0x0c4d", "K^=0x0c16 0x0c4d", "KA=0x0c16 0x0c3e", "KE=0x0c16 0x0c47", "KI=0x0c16 0x0c40", "Kee=0x0c16 0x0c40", "Kii=0x0c16 0x0c40", "KO=0x0c16 0x0c4b", "KRu=0x0c16 0x0c44", "KR=0x0c16 0x0c43", "KU=0x0c16 0x0c42", "Koo=0x0c16 0x0c42", "Ka=0x0c16", "Kaa=0x0c16 0x0c3e", "Kai=0x0c16 0x0c48", "Kau=0x0c16 0x0c4c", "Ke=0x0c16 0x0c46", "Ki=0x0c16 0x0c3f", "Kii=0x0c16 0x0c40", "Ko=0x0c16 0x0c4a", "Ku=0x0c16 0x0c41", "Kuu=0x0c16 0x0c42", "KH=0x0c16 0x0c4d", "KH^=0x0c16 0x0c4d", "KHA=0x0c16 0x0c3e", "KHE=0x0c16 0x0c47", "KHI=0x0c16 0x0c40", "KHee=0x0c16 0x0c40", "KHii=0x0c16 0x0c40", "KHO=0x0c16 0x0c4b", "KHhRu=0x0c16 0x0c44", "KHR=0x0c16 0x0c43", "KHU=0x0c16 0x0c42", "KHoo=0x0c16 0x0c42", "KHa=0x0c16", "KHaa=0x0c16 0x0c3e", "KHai=0x0c16 0x0c48", "KHau=0x0c16 0x0c4c", "KHe=0x0c16 0x0c46", "KHi=0x0c16 0x0c3f", "KHii=0x0c16 0x0c40", "KHo=0x0c16 0x0c4a", "KHu=0x0c16 0x0c41", "KHuu=0x0c16 0x0c42", "Kh=0x0c16 0x0c4d", "Kh^=0x0c16 0x0c4d", "KhA=0x0c16 0x0c3e", "KhE=0x0c16 0x0c47", "KhI=0x0c16 0x0c40", "Khee=0x0c16 0x0c40", "Khii=0x0c16 0x0c40", "KhO=0x0c16 0x0c4b", "KhhRu=0x0c16 0x0c44", "KhR=0x0c16 0x0c43", "KhU=0x0c16 0x0c42", "Khoo=0x0c16 0x0c42", "Kha=0x0c16", "Khaa=0x0c16 0x0c3e", "Khai=0x0c16 0x0c48", "Khau=0x0c16 0x0c4c", "Khe=0x0c16 0x0c46", "Khi=0x0c16 0x0c3f", "Khii=0x0c16 0x0c40", "Kho=0x0c16 0x0c4a", "Khu=0x0c16 0x0c41", "Khuu=0x0c16 0x0c42", "kH=0x0c16 0x0c4d", "kH^=0x0c16 0x0c4d", "kHA=0x0c16 0x0c3e", "kHE=0x0c16 0x0c47", "kHI=0x0c16 0x0c40", "kHee=0x0c16 0x0c40", "kHii=0x0c16 0x0c40", "kHO=0x0c16 0x0c4b", "kHRu=0x0c16 0x0c44", "kHR=0x0c16 0x0c43", "kHU=0x0c16 0x0c42", "kHoo=0x0c16 0x0c42", "kHa=0x0c16", "kHaa=0x0c16 0x0c3e", "kHai=0x0c16 0x0c48", "kHau=0x0c16 0x0c4c", "kHe=0x0c16 0x0c46", "kHi=0x0c16 0x0c3f", "kHii=0x0c16 0x0c40", "kHo=0x0c16 0x0c4a", "kHu=0x0c16 0x0c41", "kHuu=0x0c16 0x0c42", "kh=0x0c16 0x0c4d", "kh^=0x0c16 0x0c4d", "khA=0x0c16 0x0c3e", "khE=0x0c16 0x0c47", "khI=0x0c16 0x0c40", "khee=0x0c16 0x0c40", "khii=0x0c16 0x0c40", "khO=0x0c16 0x0c4b", "khRu=0x0c16 0x0c44", "khR=0x0c16 0x0c43", "khU=0x0c16 0x0c42", "khoo=0x0c16 0x0c42", "kha=0x0c16", "khaa=0x0c16 0x0c3e", "khai=0x0c16 0x0c48", "khau=0x0c16 0x0c4c", "khe=0x0c16 0x0c46", "khi=0x0c16 0x0c3f", "khii=0x0c16 0x0c40", "kho=0x0c16 0x0c4a", "khu=0x0c16 0x0c41", "khuu=0x0c16 0x0c42", "l=0x0c32 0x0c4d", "l^=0x0c32 0x0c4d", "lA=0x0c32 0x0c3e", "lE=0x0c32 0x0c47", "lI=0x0c32 0x0c40", "lee=0x0c32 0x0c40", "lii=0x0c32 0x0c40", "lO=0x0c32 0x0c4b", "lRu=0x0c32 0x0c44", "lR=0x0c32 0x0c43", "lU=0x0c32 0x0c42", "loo=0x0c32 0x0c42", "la=0x0c32", "laa=0x0c32 0x0c3e", "lai=0x0c32 0x0c48", "lau=0x0c32 0x0c4c", "le=0x0c32 0x0c46", "li=0x0c32 0x0c3f", "lii=0x0c32 0x0c40", "lo=0x0c32 0x0c4a", "lu=0x0c32 0x0c41", "luu=0x0c32 0x0c42", "m=0x0c2e 0x0c4d", "m^=0x0c2e 0x0c4d", "mA=0x0c2e 0x0c3e", "mE=0x0c2e 0x0c47", "mI=0x0c2e 0x0c40", "mee=0x0c2e 0x0c40", "mii=0x0c2e 0x0c40", "mO=0x0c2e 0x0c4b", "mRu=0x0c2e 0x0c44", "mR=0x0c2e 0x0c43", "mU=0x0c2e 0x0c42", "moo=0x0c2e 0x0c42", "ma=0x0c2e", "maa=0x0c2e 0x0c3e", "mai=0x0c2e 0x0c48", "mau=0x0c2e 0x0c4c", "me=0x0c2e 0x0c46", "mi=0x0c2e 0x0c3f", "mii=0x0c2e 0x0c40", "mo=0x0c2e 0x0c4a", "mu=0x0c2e 0x0c41", "muu=0x0c2e 0x0c42", "n=0x0c28 0x0c4d", "n^=0x0c28 0x0c4d", "nA=0x0c28 0x0c3e", "nE=0x0c28 0x0c47", "nI=0x0c28 0x0c40", "nee=0x0c28 0x0c40", "nii=0x0c28 0x0c40", "nO=0x0c28 0x0c4b", "nRu=0x0c28 0x0c44", "nR=0x0c28 0x0c43", "nU=0x0c28 0x0c42", "noo=0x0c28 0x0c42", "na=0x0c28", "naa=0x0c28 0x0c3e", "nai=0x0c28 0x0c48", "nau=0x0c28 0x0c4c", "ne=0x0c28 0x0c46", "ni=0x0c28 0x0c3f", "nii=0x0c28 0x0c40", "no=0x0c28 0x0c4a", "nu=0x0c28 0x0c41", "nuu=0x0c28 0x0c42", "p=0x0c2a 0x0c4d", "p^=0x0c2a 0x0c4d", "pA=0x0c2a 0x0c3e", "pE=0x0c2a 0x0c47", "pI=0x0c2a 0x0c40", "pee=0x0c2a 0x0c40", "pii=0x0c2a 0x0c40", "pO=0x0c2a 0x0c4b", "pRu=0x0c2a 0x0c44", "pR=0x0c2a 0x0c43", "pU=0x0c2a 0x0c42", "poo=0x0c2a 0x0c42", "pa=0x0c2a", "paa=0x0c2a 0x0c3e", "pai=0x0c2a 0x0c48", "pau=0x0c2a 0x0c4c", "pe=0x0c2a 0x0c46", "pi=0x0c2a 0x0c3f", "pii=0x0c2a 0x0c40", "po=0x0c2a 0x0c4a", "pu=0x0c2a 0x0c41", "puu=0x0c2a 0x0c42", "P=0x0c2b 0x0c4d", "P^=0x0c2b 0x0c4d", "PA=0x0c2b 0x0c3e", "PE=0x0c2b 0x0c47", "PI=0x0c2b 0x0c40", "Pee=0x0c2b 0x0c40", "Pii=0x0c2b 0x0c40", "PO=0x0c2b 0x0c4b", "PRu=0x0c2b 0x0c44", "PR=0x0c2b 0x0c43", "PU=0x0c2b 0x0c42", "Poo=0x0c2b 0x0c42", "Pa=0x0c2b", "Paa=0x0c2b 0x0c3e", "Pai=0x0c2b 0x0c48", "Pau=0x0c2b 0x0c4c", "Pe=0x0c2b 0x0c46", "Pi=0x0c2b 0x0c3f", "Pii=0x0c2b 0x0c40", "Po=0x0c2b 0x0c4a", "Pu=0x0c2b 0x0c41", "Puu=0x0c2b 0x0c42" "PH=0x0c2b 0x0c4d", "PH^=0x0c2b 0x0c4d", "PHA=0x0c2b 0x0c3e", "PHE=0x0c2b 0x0c47", "PHI=0x0c2b 0x0c40", "PHee=0x0c2b 0x0c40", "PHii=0x0c2b 0x0c40", "PHO=0x0c2b 0x0c4b", "PHRu=0x0c2b 0x0c44", "PHR=0x0c2b 0x0c43", "PHU=0x0c2b 0x0c42", "PHoo=0x0c2b 0x0c42", "PHa=0x0c2b", "PHaa=0x0c2b 0x0c3e", "PHai=0x0c2b 0x0c48", "PHau=0x0c2b 0x0c4c", "PHe=0x0c2b 0x0c46", "PHi=0x0c2b 0x0c3f", "PHii=0x0c2b 0x0c40", "PHo=0x0c2b 0x0c4a", "PHu=0x0c2b 0x0c41", "PHuu=0x0c2b 0x0c42", "Ph=0x0c2b 0x0c4d", "Ph^=0x0c2b 0x0c4d", "PhA=0x0c2b 0x0c3e", "PhE=0x0c2b 0x0c47", "PhI=0x0c2b 0x0c40", "Phee=0x0c2b 0x0c40", "Phii=0x0c2b 0x0c40", "PhO=0x0c2b 0x0c4b", "PhRu=0x0c2b 0x0c44", "PhR=0x0c2b 0x0c43", "PhU=0x0c2b 0x0c42", "Phoo=0x0c2b 0x0c42", "Pha=0x0c2b", "Phaa=0x0c2b 0x0c3e", "Phai=0x0c2b 0x0c48", "Phau=0x0c2b 0x0c4c", "Phe=0x0c2b 0x0c46", "Phi=0x0c2b 0x0c3f", "Phii=0x0c2b 0x0c40", "Pho=0x0c2b 0x0c4a", "Phu=0x0c2b 0x0c41", "Phuu=0x0c2b 0x0c42", "pH=0x0c2b 0x0c4d", "pH^=0x0c2b 0x0c4d", "pHA=0x0c2b 0x0c3e", "pHE=0x0c2b 0x0c47", "pHI=0x0c2b 0x0c40", "pHee=0x0c2b 0x0c40", "pHii=0x0c2b 0x0c40", "pHO=0x0c2b 0x0c4b", "pHRu=0x0c2b 0x0c44", "pHR=0x0c2b 0x0c43", "pHU=0x0c2b 0x0c42", "pHoo=0x0c2b 0x0c42", "pHa=0x0c2b", "pHaa=0x0c2b 0x0c3e", "pHai=0x0c2b 0x0c48", "pHau=0x0c2b 0x0c4c", "pHe=0x0c2b 0x0c46", "pHi=0x0c2b 0x0c3f", "pHii=0x0c2b 0x0c40", "pHo=0x0c2b 0x0c4a", "pHu=0x0c2b 0x0c41", "pHuu=0x0c2b 0x0c42", "ph=0x0c2b 0x0c4d", "ph^=0x0c2b 0x0c4d", "phA=0x0c2b 0x0c3e", "phE=0x0c2b 0x0c47", "phI=0x0c2b 0x0c40", "phee=0x0c2b 0x0c40", "phii=0x0c2b 0x0c40", "phO=0x0c2b 0x0c4b", "phRu=0x0c2b 0x0c44", "phR=0x0c2b 0x0c43", "phU=0x0c2b 0x0c42", "phoo=0x0c2b 0x0c42", "pha=0x0c2b", "phaa=0x0c2b 0x0c3e", "phai=0x0c2b 0x0c48", "phau=0x0c2b 0x0c4c", "phe=0x0c2b 0x0c46", "phi=0x0c2b 0x0c3f", "phii=0x0c2b 0x0c40", "pho=0x0c2b 0x0c4a", "phu=0x0c2b 0x0c41", "phuu=0x0c2b 0x0c42", "r=0x0c30 0x0c4d", "r^=0x0c30 0x0c4d", "rA=0x0c30 0x0c3e", "rE=0x0c30 0x0c47", "rI=0x0c30 0x0c40", "ree=0x0c30 0x0c40", "rii=0x0c30 0x0c40", "rO=0x0c30 0x0c4b", "rRu=0x0c30 0x0c44", "rR=0x0c30 0x0c43", "rU=0x0c30 0x0c42", "roo=0x0c30 0x0c42", "ra=0x0c30", "raa=0x0c30 0x0c3e", "rai=0x0c30 0x0c48", "rau=0x0c30 0x0c4c", "re=0x0c30 0x0c46", "ri=0x0c30 0x0c3f", "rii=0x0c30 0x0c40", "ro=0x0c30 0x0c4a", "ru=0x0c30 0x0c41", "ruu=0x0c30 0x0c42", "s=0x0c38 0x0c4d", "s^=0x0c38 0x0c4d", "sA=0x0c38 0x0c3e", "sE=0x0c38 0x0c47", "sI=0x0c38 0x0c40", "see=0x0c38 0x0c40", "sii=0x0c38 0x0c40", "sO=0x0c38 0x0c4b", "sRu=0x0c38 0x0c44", "sR=0x0c38 0x0c43", "sU=0x0c38 0x0c42", "soo=0x0c38 0x0c42", "sa=0x0c38", "saa=0x0c38 0x0c3e", "sai=0x0c38 0x0c48", "sau=0x0c38 0x0c4c", "se=0x0c38 0x0c46", "si=0x0c38 0x0c3f", "sii=0x0c38 0x0c40", "so=0x0c38 0x0c4a", "su=0x0c38 0x0c41", "suu=0x0c38 0x0c42", "S=0x0c36 0x0c4d", "S^=0x0c36 0x0c4d", "SA=0x0c36 0x0c3e", "SE=0x0c36 0x0c47", "SI=0x0c36 0x0c40", "See=0x0c36 0x0c40", "Sii=0x0c36 0x0c40", "SO=0x0c36 0x0c4b", "SRu=0x0c36 0x0c44", "SR=0x0c36 0x0c43", "SU=0x0c36 0x0c42", "Soo=0x0c36 0x0c42", "Sa=0x0c36", "Saa=0x0c36 0x0c3e", "Sai=0x0c36 0x0c48", "Sau=0x0c36 0x0c4c", "Se=0x0c36 0x0c46", "Si=0x0c36 0x0c3f", "Sii=0x0c36 0x0c40", "So=0x0c36 0x0c4a", "Su=0x0c36 0x0c41", "Suu=0x0c36 0x0c42", "sH=0x0c37 0x0c4d", "sH^=0x0c37 0x0c4d", "sHA=0x0c37 0x0c3e", "sHE=0x0c37 0x0c47", "sHI=0x0c37 0x0c40", "sHee=0x0c37 0x0c40", "sHii=0x0c37 0x0c40", "sHO=0x0c37 0x0c4b", "sHRu=0x0c37 0x0c44", "sHR=0x0c37 0x0c43", "sHU=0x0c37 0x0c42", "sHoo=0x0c37 0x0c42", "sHa=0x0c37", "sHaa=0x0c37 0x0c3e", "sHai=0x0c37 0x0c48", "sHau=0x0c37 0x0c4c", "sHe=0x0c37 0x0c46", "sHi=0x0c37 0x0c3f", "sHii=0x0c37 0x0c40", "sHo=0x0c37 0x0c4a", "sHu=0x0c37 0x0c41", "sHuu=0x0c37 0x0c42", "sh=0x0c37 0x0c4d", "sh^=0x0c37 0x0c4d", "shA=0x0c37 0x0c3e", "shE=0x0c37 0x0c47", "shI=0x0c37 0x0c40", "shee=0x0c37 0x0c40", "shii=0x0c37 0x0c40", "shO=0x0c37 0x0c4b", "shRu=0x0c37 0x0c44", "shR=0x0c37 0x0c43", "shU=0x0c37 0x0c42", "shoo=0x0c37 0x0c42", "sha=0x0c37", "shaa=0x0c37 0x0c3e", "shai=0x0c37 0x0c48", "shau=0x0c37 0x0c4c", "she=0x0c37 0x0c46", "shi=0x0c37 0x0c3f", "shii=0x0c37 0x0c40", "sho=0x0c37 0x0c4a", "shu=0x0c37 0x0c41", "shuu=0x0c37 0x0c42", "t=0x0c24 0x0c4d", "t^=0x0c24 0x0c4d", "tA=0x0c24 0x0c3e", "tE=0x0c24 0x0c47", "tI=0x0c24 0x0c40", "tee=0x0c24 0x0c40", "tii=0x0c24 0x0c40", "tO=0x0c24 0x0c4b", "tRu=0x0c24 0x0c44", "tR=0x0c24 0x0c43", "tU=0x0c24 0x0c42", "too=0x0c24 0x0c42", "ta=0x0c24", "taa=0x0c24 0x0c3e", "tai=0x0c24 0x0c48", "tau=0x0c24 0x0c4c", "te=0x0c24 0x0c46", "ti=0x0c24 0x0c3f", "tii=0x0c24 0x0c40", "to=0x0c24 0x0c4a", "tu=0x0c24 0x0c41", "tuu=0x0c24 0x0c42", "tH=0x0c25 0x0c4d", "tH^=0x0c25 0x0c4d", "tHA=0x0c25 0x0c3e", "tHE=0x0c25 0x0c47", "tHI=0x0c25 0x0c40", "tHee=0x0c25 0x0c40", "tHii=0x0c25 0x0c40", "tHO=0x0c25 0x0c4b", "tHRu=0x0c25 0x0c44", "tHR=0x0c25 0x0c43", "tHU=0x0c25 0x0c42", "tHoo=0x0c25 0x0c42", "tHa=0x0c25", "tHaa=0x0c25 0x0c3e", "tHai=0x0c25 0x0c48", "tHau=0x0c25 0x0c4c", "tHe=0x0c25 0x0c46", "tHi=0x0c25 0x0c3f", "tHii=0x0c25 0x0c40", "tHo=0x0c25 0x0c4a", "tHu=0x0c25 0x0c41", "tHuu=0x0c25 0x0c42", "th=0x0c25 0x0c4d", "th^=0x0c25 0x0c4d", "thA=0x0c25 0x0c3e", "thE=0x0c25 0x0c47", "thI=0x0c25 0x0c40", "thee=0x0c25 0x0c40", "thii=0x0c25 0x0c40", "thO=0x0c25 0x0c4b", "thRu=0x0c25 0x0c44", "thR=0x0c25 0x0c43", "thU=0x0c25 0x0c42", "thoo=0x0c25 0x0c42", "tha=0x0c25", "thaa=0x0c25 0x0c3e", "thai=0x0c25 0x0c48", "thau=0x0c25 0x0c4c", "the=0x0c25 0x0c46", "thi=0x0c25 0x0c3f", "thii=0x0c25 0x0c40", "tho=0x0c25 0x0c4a", "thu=0x0c25 0x0c41", "thuu=0x0c25 0x0c42", "v=0x0c35 0x0c4d", "v^=0x0c35 0x0c4d", "vA=0x0c35 0x0c3e", "vE=0x0c35 0x0c47", "vI=0x0c35 0x0c40", "vee=0x0c35 0x0c40", "vii=0x0c35 0x0c40", "vO=0x0c35 0x0c4b", "vRu=0x0c35 0x0c44", "vR=0x0c35 0x0c43", "vU=0x0c35 0x0c42", "voo=0x0c35 0x0c42", "va=0x0c35", "vaa=0x0c35 0x0c3e", "vai=0x0c35 0x0c48", "vau=0x0c35 0x0c4c", "ve=0x0c35 0x0c46", "vi=0x0c35 0x0c3f", "vii=0x0c35 0x0c40", "vo=0x0c35 0x0c4a", "vu=0x0c35 0x0c41", "vuu=0x0c35 0x0c42", "w=0x0c35 0x0c4d", "w^=0x0c35 0x0c4d", "wA=0x0c35 0x0c3e", "wE=0x0c35 0x0c47", "wI=0x0c35 0x0c40", "wee=0x0c35 0x0c40", "wii=0x0c35 0x0c40", "wO=0x0c35 0x0c4b", "wRu=0x0c35 0x0c44", "wR=0x0c35 0x0c43", "wU=0x0c35 0x0c42", "woo=0x0c35 0x0c42", "wa=0x0c35", "waa=0x0c35 0x0c3e", "wai=0x0c35 0x0c48", "wau=0x0c35 0x0c4c", "we=0x0c35 0x0c46", "wi=0x0c35 0x0c3f", "wii=0x0c35 0x0c40", "wo=0x0c35 0x0c4a", "wu=0x0c35 0x0c41", "wuu=0x0c35 0x0c42", "x=0x0c15 0x0c4d 0x0c37 0x0c4d", "x^=0x0c15 0x0c4d 0x0c37 0x0c4d", "xA=0x0c15 0x0c4d 0x0c37 0x0c3e", "xE=0x0c15 0x0c4d 0x0c37 0x0c47", "xI=0x0c15 0x0c4d 0x0c37 0x0c40", "xee=0x0c15 0x0c4d 0x0c37 0x0c40", "xii=0x0c15 0x0c4d 0x0c37 0x0c40", "xO=0x0c15 0x0c4d 0x0c37 0x0c4b", "xRu=0x0c15 0x0c4d 0x0c37 0x0c44", "xR=0x0c15 0x0c4d 0x0c37 0x0c43", "xU=0x0c15 0x0c4d 0x0c37 0x0c42", "xoo=0x0c15 0x0c4d 0x0c37 0x0c42", "xa=0x0c15 0x0c4d 0x0c37", "xaa=0x0c15 0x0c4d 0x0c37 0x0c3e", "xai=0x0c15 0x0c4d 0x0c37 0x0c48", "xau=0x0c15 0x0c4d 0x0c37 0x0c4c", "xe=0x0c15 0x0c4d 0x0c37 0x0c46", "xi=0x0c15 0x0c4d 0x0c37 0x0c3f", "xii=0x0c15 0x0c4d 0x0c37 0x0c40", "xo=0x0c15 0x0c4d 0x0c37 0x0c4a", "xu=0x0c15 0x0c4d 0x0c37 0x0c41", "xuu=0x0c15 0x0c4d 0x0c37 0x0c42", "y=0x0c2f 0x0c4d", "y^=0x0c2f 0x0c4d", "yA=0x0c2f 0x0c3e", "yE=0x0c2f 0x0c47", "yI=0x0c2f 0x0c40", "yee=0x0c2f 0x0c40", "yii=0x0c2f 0x0c40", "yO=0x0c2f 0x0c4b", "yRu=0x0c2f 0x0c44", "yR=0x0c2f 0x0c43", "yU=0x0c2f 0x0c42", "yoo=0x0c2f 0x0c42", "ya=0x0c2f", "yaa=0x0c2f 0x0c3e", "yai=0x0c2f 0x0c48", "yau=0x0c2f 0x0c4c", "ye=0x0c2f 0x0c46", "yi=0x0c2f 0x0c3f", "yii=0x0c2f 0x0c40", "yo=0x0c2f 0x0c4a", "yu=0x0c2f 0x0c41", "yuu=0x0c2f 0x0c42", "~j=0x0c19 0x0c4d", "~j^=0x0c19 0x0c4d", "~jA=0x0c19 0x0c3e", "~jE=0x0c19 0x0c47", "~jI=0x0c19 0x0c40", "~jee=0x0c19 0x0c40", "~jii=0x0c19 0x0c40", "~jO=0x0c19 0x0c4b", "~jRu=0x0c19 0x0c44", "~jR=0x0c19 0x0c43", "~jU=0x0c19 0x0c42", "~joo=0x0c19 0x0c42", "~ja=0x0c19", "~jaa=0x0c19 0x0c3e", "~jai=0x0c19 0x0c48", "~jau=0x0c19 0x0c4c", "~je=0x0c19 0x0c46", "~ji=0x0c19 0x0c3f", "~jii=0x0c19 0x0c40", "~jo=0x0c19 0x0c4a", "~ju=0x0c19 0x0c41", "~juu=0x0c19 0x0c42", "~m=0x0c19 0x0c4d", "~m^=0x0c19 0x0c4d", "~mA=0x0c19 0x0c3e", "~mE=0x0c19 0x0c47", "~mI=0x0c19 0x0c40", "~mee=0x0c19 0x0c40", "~mii=0x0c19 0x0c40", "~mO=0x0c19 0x0c4b", "~mRu=0x0c19 0x0c44", "~mR=0x0c19 0x0c43", "~mU=0x0c19 0x0c42", "~moo=0x0c19 0x0c42", "~ma=0x0c19", "~maa=0x0c19 0x0c3e", "~mai=0x0c19 0x0c48", "~mau=0x0c19 0x0c4c", "~me=0x0c19 0x0c46", "~mi=0x0c19 0x0c3f", "~mii=0x0c19 0x0c40", "~mo=0x0c19 0x0c4a", "~mu=0x0c19 0x0c41", "~muu=0x0c19 0x0c42", "~n=0x0c1e 0x0c4d", "~n^=0x0c1e 0x0c4d", "~nA=0x0c1e 0x0c3e", "~nE=0x0c1e 0x0c47", "~nI=0x0c1e 0x0c40", "~nee=0x0c1e 0x0c40", "~nii=0x0c1e 0x0c40", "~nO=0x0c1e 0x0c4b", "~nRu=0x0c1e 0x0c44", "~nR=0x0c1e 0x0c43", "~nU=0x0c1e 0x0c42", "~noo=0x0c1e 0x0c42", "~na=0x0c1e", "~naa=0x0c1e 0x0c3e", "~nai=0x0c1e 0x0c48", "~nau=0x0c1e 0x0c4c", "~ne=0x0c1e 0x0c46", "~ni=0x0c1e 0x0c3f", "~nii=0x0c1e 0x0c40", "~no=0x0c1e 0x0c4a", "~nu=0x0c1e 0x0c41", "~nuu=0x0c1e 0x0c42", "~r=0x0c31 0x0c4d", "~r^=0x0c31 0x0c4d", "~rA=0x0c31 0x0c3e", "~rE=0x0c31 0x0c47", "~rI=0x0c31 0x0c40", "~ree=0x0c31 0x0c40", "~rii=0x0c31 0x0c40", "~rO=0x0c31 0x0c4b", "~rRu=0x0c31 0x0c44", "~rR=0x0c31 0x0c43", "~rU=0x0c31 0x0c42", "~roo=0x0c31 0x0c42", "~ra=0x0c31", "~raa=0x0c31 0x0c3e", "~rai=0x0c31 0x0c48", "~rau=0x0c31 0x0c4c", "~re=0x0c31 0x0c46", "~ri=0x0c31 0x0c3f", "~rii=0x0c31 0x0c40", "~ro=0x0c31 0x0c4a", "~ru=0x0c31 0x0c41", "~ruu=0x0c31 0x0c42" // Independent vowels "a=0x0c05", "A=0x0c06", "aa=0x0c06", "i=0x0c07", "I=0x0c08", "ee=0x0c08", "ii=0x0c08", "u=0x0c09", "U=0x0c0a", "uu=0x0c0a", "oo=0x0c0a", "R=0x0c0b", "~l=0x0c0c", "e=0x0c0e", "E=0x0c0f", "ae=0x0c0f", "ai=0x0c10", "o=0x0c12", "O=0x0c13", "au=0x0c14", "ou=0x0c14", "Ru=0x0c60", "~L=0x0c61", // Numbers "0x30=0x0c66", "0x31=0x0c67", "0x32=0x0c68", "0x33=0x0c69", "0x34=0x0c6a", "0x35=0x0c6b", "0x36=0x0c6c", "0x37=0x0c6d", "0x38=0x0c6e", "0x39=0x0c6f", // Other marks "@M=0x0c01", "M=0x0c02", "^=0x0c4d", "@H=0x0c03", "@h=0x0c03", ".=0x0964", "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Vietnamese-TCVNkey.kmap0000644000175000017500000002151607532460064017556 0ustar henrichhenrich// TCVN.kmap using the TCVN-6064 // To input Vietnamese into // http://www2.gol.com/users/gsinai/'s Yudit 0.99 Unicode text editor // 2001-09-20 Le.Hong.Boi@quantic.com.vn "a 0x35=0x00E0", // à = LATIN SMALL LETTER A WITH GRAVE "A 0x35=0x00C0", // À = LATIN CAPITAL LETTER A WITH GRAVE "a 0x36=0x1EA3", // ả = LATIN SMALL LETTER A WITH HOOK ABOVE "A 0x36=0x1EA2", // Ả = LATIN CAPITAL LETTER A WITH HOOK ABOVE "a 0x37=0x00E3", // ã = LATIN SMALL LETTER A WITH TILDE "A 0x37=0x00C3", // à = LATIN CAPITAL LETTER A WITH TILDE "a 0x38=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "A 0x38=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "a 0x39=0x1EA1", // ạ = LATIN SMALL LETTER A WITH DOT BELOW "A 0x39=0x1EA0", // Ạ = LATIN CAPITAL LETTER A WITH DOT BELOW "0x31=0x0103", // ă = LATIN SMALL LETTER A WITH BREVE "!=0x0102", // Ă = LATIN CAPITAL LETTER A WITH BREVE "0x31 0x35=0x1EB1", // ằ = LATIN SMALL LETTER A WITH BREVE AND GRAVE "! 0x35=0x1EB0", // Ằ = LATIN CAPITAL LETTER A WITH BREVE AND GRAVE "0x31 0x36=0x1EB3", // ẳ = LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE "! 0x36=0x1EB2", // Ẳ = LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE "0x31 0x37=0x1EB5", // ẵ = LATIN SMALL LETTER A WITH BREVE AND TILDE "! 0x37=0x1EB4", // Ẵ = LATIN CAPITAL LETTER A WITH BREVE AND TILDE "0x31 0x38=0x1EAF", // ắ = LATIN SMALL LETTER A WITH BREVE AND ACUTE "! 0x38=0x1EAE", // Ắ = LATIN CAPITAL LETTER A WITH BREVE AND ACUTE "0x31 0x39=0x1EB7", // ặ = LATIN SMALL LETTER A WITH BREVE AND DOT BELOW "! 0x39=0x1EB6", // Ặ = LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW "0x32=0x00E2", // â = LATIN SMALL LETTER A WITH CIRCUMFLEX "@=0x00C2", //  = LATIN CAPITAL LETTER A WITH CIRCUMFLEX "0x32 0x35=0x1EA7", // ầ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE "@ 0x35=0x1EA6", // Ầ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE "0x32 0x36=0x1EA9", // ẩ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "@ 0x36=0x1EA8", // Ẩ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "0x32 0x37=0x1EAB", // ẫ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE "@ 0x37=0x1EAA", // Ẫ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE "0x32 0x38=0x1EA5", // ấ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE "@ 0x38=0x1EA4", // Ấ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE "0x32 0x39=0x1EAD", // ậ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW "@ 0x39=0x1EAC", // Ậ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW "e 0x35=0x00E8", // è = LATIN SMALL LETTER E WITH GRAVE "E 0x35=0x00C8", // È = LATIN CAPITAL LETTER E WITH GRAVE "e 0x36=0x1EBB", // ẻ = LATIN SMALL LETTER E WITH HOOK ABOVE "E 0x36=0x1EBA", // Ẻ = LATIN CAPITAL LETTER E WITH HOOK ABOVE "e 0x37=0x1EBD", // ẽ = LATIN SMALL LETTER E WITH TILDE "E 0x37=0x1EBC", // Ẽ = LATIN CAPITAL LETTER E WITH TILDE "e 0x38=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "E 0x38=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "e 0x39=0x1EB9", // ẹ = LATIN SMALL LETTER E WITH DOT BELOW "E 0x39=0x1EB8", // Ẹ = LATIN CAPITAL LETTER E WITH DOT BELOW "0x33=0x00EA", // ê = LATIN SMALL LETTER E WITH CIRCUMFLEX "#=0x00CA", // Ê = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "0x33 0x35=0x1EC1", // ề = LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE "# 0x35=0x1EC0", // Ề = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE "0x33 0x36=0x1EC3", // ể = LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "# 0x36=0x1EC2", // Ể = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "0x33 0x37=0x1EC5", // ễ = LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE "# 0x37=0x1EC4", // Ễ = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE "0x33 0x38=0x1EBF", // ế = LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE "# 0x38=0x1EBE", // Ế = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE "0x33 0x39=0x1EC7", // ệ = LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW "# 0x39=0x1EC6", // Ệ = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW "i 0x35=0x00EC", // ì = LATIN SMALL LETTER I WITH GRAVE "I 0x35=0x00CC", // Ì = LATIN CAPITAL LETTER I WITH GRAVE "i 0x36=0x1EC9", // ỉ = LATIN SMALL LETTER I WITH HOOK ABOVE "I 0x36=0x1EC8", // Ỉ = LATIN CAPITAL LETTER I WITH HOOK ABOVE "i 0x37=0x0129", // ĩ = LATIN SMALL LETTER I WITH TILDE "I 0x37=0x0128", // Ĩ = LATIN CAPITAL LETTER I WITH TILDE "i 0x38=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "I 0x38=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "i 0x39=0x1ECB", // ị = LATIN SMALL LETTER I WITH DOT BELOW "I 0x39=0x1ECA", // Ị = LATIN CAPITAL LETTER I WITH DOT BELOW "o 0x35=0x00F2", // ò = LATIN SMALL LETTER O WITH GRAVE "O 0x35=0x00D2", // Ò = LATIN CAPITAL LETTER O WITH GRAVE "o 0x36=0x1ECF", // ỏ = LATIN SMALL LETTER O WITH HOOK ABOVE "O 0x36=0x1ECE", // Ỏ = LATIN CAPITAL LETTER O WITH HOOK ABOVE "o 0x37=0x00F5", // õ = LATIN SMALL LETTER O WITH TILDE "O 0x37=0x00D5", // Õ = LATIN CAPITAL LETTER O WITH TILDE "o 0x38=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "O 0x38=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "o 0x39=0x1ECD", // ọ = LATIN SMALL LETTER O WITH DOT BELOW "O 0x39=0x1ECC", // Ọ = LATIN CAPITAL LETTER O WITH DOT BELOW "0x34=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "$=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "0x34 0x35=0x1ED3", // ồ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE "$ 0x35=0x1ED2", // Ồ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE "0x34 0x36=0x1ED5", // ổ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "$ 0x36=0x1ED4", // Ổ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "0x34 0x37=0x1ED7", // ỗ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE "$ 0x37=0x1ED6", // Ỗ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE "0x34 0x38=0x1ED1", // ố = LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE "$ 0x38=0x1ED0", // Ố = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE "0x34 0x39=0x1ED9", // ộ = LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW "$ 0x39=0x1ED8", // Ộ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW "]=0x01A1", // ơ = LATIN SMALL LETTER O WITH HORN "}=0x01A0", // Ơ = LATIN CAPITAL LETTER O WITH HORN "] 0x35=0x1EDD", // ờ = LATIN SMALL LETTER O WITH HORN AND GRAVE "} 0x35=0x1EDC", // Ờ = LATIN CAPITAL LETTER O WITH HORN AND GRAVE "] 0x36=0x1EDF", // ở = LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE "} 0x36=0x1EDE", // Ở = LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE "] 0x37=0x1EE1", // ỡ = LATIN SMALL LETTER O WITH HORN AND TILDE "} 0x37=0x1EE0", // Ỡ = LATIN CAPITAL LETTER O WITH HORN AND TILDE "] 0x38=0x1EDB", // ớ = LATIN SMALL LETTER O WITH HORN AND ACUTE "} 0x38=0x1EDA", // Ớ = LATIN CAPITAL LETTER O WITH HORN AND ACUTE "] 0x39=0x1EE3", // ợ = LATIN SMALL LETTER O WITH HORN AND DOT BELOW "} 0x39=0x1EE2", // Ợ = LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW "u 0x35=0x00F9", // ù = LATIN SMALL LETTER U WITH GRAVE "U 0x35=0x00D9", // Ù = LATIN CAPITAL LETTER U WITH GRAVE "u 0x36=0x1EE7", // ủ = LATIN SMALL LETTER U WITH HOOK ABOVE "U 0x36=0x1EE6", // Ủ = LATIN CAPITAL LETTER U WITH HOOK ABOVE "u 0x37=0x0169", // ũ = LATIN SMALL LETTER U WITH TILDE "U 0x37=0x0168", // Ũ = LATIN CAPITAL LETTER U WITH TILDE "u 0x38=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "U 0x38=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "u 0x39=0x1EE5", // ụ = LATIN SMALL LETTER U WITH DOT BELOW "U 0x39=0x1EE4", // Ụ = LATIN CAPITAL LETTER U WITH DOT BELOW "[=0x01B0", // ư = LATIN SMALL LETTER U WITH HORN "{=0x01AF", // Ư = LATIN CAPITAL LETTER U WITH HORN "[ 0x35=0x1EEB", // ừ = LATIN SMALL LETTER U WITH HORN AND GRAVE "{ 0x35=0x1EEA", // Ừ = LATIN CAPITAL LETTER U WITH HORN AND GRAVE "[ 0x36=0x1EED", // ử = LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE "{ 0x36=0x1EEC", // Ử = LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE "[ 0x37=0x1EEF", // ữ = LATIN SMALL LETTER U WITH HORN AND TILDE "{ 0x37=0x1EEE", // Ữ = LATIN CAPITAL LETTER U WITH HORN AND TILDE "[ 0x38=0x1EE9", // ứ = LATIN SMALL LETTER U WITH HORN AND ACUTE "{ 0x38=0x1EE8", // Ứ = LATIN CAPITAL LETTER U WITH HORN AND ACUTE "[ 0x39=0x1EF1", // ự = LATIN SMALL LETTER U WITH HORN AND DOT BELOW "{ 0x39=0x1EF0", // Ự = LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW "y 0x35=0x1EF3", // ỳ = LATIN SMALL LETTER Y WITH GRAVE "Y 0x35=0x1EF2", // Ỳ = LATIN CAPITAL LETTER Y WITH GRAVE "y 0x36=0x1EF7", // ỷ = LATIN SMALL LETTER Y WITH HOOK ABOVE "Y 0x36=0x1EF6", // Ỷ = LATIN CAPITAL LETTER Y WITH HOOK ABOVE "y 0x37=0x1EF9", // ỹ = LATIN SMALL LETTER Y WITH TILDE "Y 0x37=0x1EF8", // Ỹ = LATIN CAPITAL LETTER Y WITH TILDE "y 0x38=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "Y 0x38=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "y 0x39=0x1EF5", // ỵ = LATIN SMALL LETTER Y WITH DOT BELOW "Y 0x39=0x1EF4", // Ỵ = LATIN CAPITAL LETTER Y WITH DOT BELOW "0x30=0x0111", // đ = LATIN SMALL LETTER D WITH STROKE ")=0x0110", // Đ = LATIN CAPITAL LETTER D WITH STROKE "-=0x20AB", // VND Sign ./mytool/kmap/Russian-JAVERTY.kmap0000644000175000017500000001010607572774166016753 0ustar henrichhenrich// Input table for Russian ЯВЕРТЫ keyboard. // // Composed by Eugene Crosser out of this one: // Cyrillic input table following the 1995 edition of international // standard ISO 9 Transliteration of Cyrillic characters: // Created with Emacs for Yudit and decorated with Yudit // © 1998-04-18 Roman Czyborra@cs.tu-berlin.de // Additions and improvements welcome // modified for ЯВЕРТЫ layout (with some enhancements) from the // above by Radovan Garabík 2001-08-08 // 0. Quotation marks and special symbols popular with Cyrillic "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "\"\"=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = // 1. General table for Slavic Cyrillic languages // The neat ISO 9 transliterations are worth remembering! // First the full line of Capital letters for clarity: "A=0x0410", // А = CYRILLIC CAPITAL LETTER A "B=0x0411", // Б = CYRILLIC CAPITAL LETTER BE "W=0x0412", // В = CYRILLIC CAPITAL LETTER VE "G=0x0413", // Г = CYRILLIC CAPITAL LETTER GHE "D=0x0414", // Д = CYRILLIC CAPITAL LETTER DE "E=0x0415", // Е = CYRILLIC CAPITAL LETTER IE "$=0x0401", // Ё = CYRILLIC CAPITAL LETTER IO "V=0x0416", // Ж = CYRILLIC CAPITAL LETTER ZHE "Z=0x0417", // З = CYRILLIC CAPITAL LETTER ZE "I=0x0418", // И = CYRILLIC CAPITAL LETTER I "J=0x0419", // Й = CYRILLIC CAPITAL LETTER SHORT I "K=0x041A", // К = CYRILLIC CAPITAL LETTER KA "L=0x041B", // Л = CYRILLIC CAPITAL LETTER EL "M=0x041C", // М = CYRILLIC CAPITAL LETTER EM "N=0x041D", // Н = CYRILLIC CAPITAL LETTER EN "O=0x041E", // О = CYRILLIC CAPITAL LETTER O "P=0x041F", // П = CYRILLIC CAPITAL LETTER PE "R=0x0420", // Р = CYRILLIC CAPITAL LETTER ER "S=0x0421", // С = CYRILLIC CAPITAL LETTER ES "T=0x0422", // Т = CYRILLIC CAPITAL LETTER TE "U=0x0423", // У = CYRILLIC CAPITAL LETTER U "F=0x0424", // Ф = CYRILLIC CAPITAL LETTER EF "H=0x0425", // Х = CYRILLIC CAPITAL LETTER HA "C=0x0426", // Ц = CYRILLIC CAPITAL LETTER TSE "+=0x0427", // Ч = CYRILLIC CAPITAL LETTER CHE "{=0x0428", // Ш = CYRILLIC CAPITAL LETTER SHA "}=0x0429", // Щ = CYRILLIC CAPITAL LETTER SHCHA "X_=0x042A", // Ъ = CYRILLIC CAPITAL LETTER HARD SIGN "Y=0x042B", // Ы = CYRILLIC CAPITAL LETTER YERU "X=0x042C", // Ь = CYRILLIC CAPITAL LETTER SOFT SIGN "|=0x042D", // Э = CYRILLIC CAPITAL LETTER E "~=0x042E", // Ю = CYRILLIC CAPITAL LETTER YU "Q=0x042F", // Я = CYRILLIC CAPITAL LETTER YA // Then the same thing in lower case: "a=0x0430", // а = CYRILLIC SMALL LETTER A "b=0x0431", // б = CYRILLIC SMALL LETTER BE "w=0x0432", // в = CYRILLIC SMALL LETTER VE "g=0x0433", // г = CYRILLIC SMALL LETTER GHE "d=0x0434", // д = CYRILLIC SMALL LETTER DE "e=0x0435", // е = CYRILLIC SMALL LETTER IE "#=0x0451", // ё = CYRILLIC SMALL LETTER IO "v=0x0436", // ж = CYRILLIC SMALL LETTER ZHE "z=0x0437", // з = CYRILLIC SMALL LETTER ZE "i=0x0438", // и = CYRILLIC SMALL LETTER I "j=0x0439", // й = CYRILLIC SMALL LETTER SHORT I "k=0x043A", // к = CYRILLIC SMALL LETTER KA "l=0x043B", // л = CYRILLIC SMALL LETTER EL "m=0x043C", // м = CYRILLIC SMALL LETTER EM "n=0x043D", // н = CYRILLIC SMALL LETTER EN "o=0x043E", // о = CYRILLIC SMALL LETTER O "p=0x043F", // п = CYRILLIC SMALL LETTER PE "r=0x0440", // р = CYRILLIC SMALL LETTER ER "s=0x0441", // с = CYRILLIC SMALL LETTER ES "t=0x0442", // т = CYRILLIC SMALL LETTER TE "u=0x0443", // у = CYRILLIC SMALL LETTER U "f=0x0444", // ф = CYRILLIC SMALL LETTER EF "h=0x0445", // х = CYRILLIC SMALL LETTER HA "c=0x0446", // ц = CYRILLIC SMALL LETTER TSE "0x3D =0x0447", // ч = CYRILLIC SMALL LETTER CHE "[=0x0448", // ш = CYRILLIC SMALL LETTER SHA "]=0x0449", // щ = CYRILLIC SMALL LETTER SCHCHA "_=0x044A", // ъ = CYRILLIC SMALL LETTER HARD SIGN "y=0x044B", // ы = CYRILLIC SMALL LETTER YERU "x=0x044C", // ь = CYRILLIC SMALL LETTER SOFT SIGN "0x5C =0x044D", // э = CYRILLIC SMALL LETTER E "`=0x044E", // ю = CYRILLIC SMALL LETTER YU "q=0x044F", // я = CYRILLIC SMALL LETTER YA ./mytool/kmap/Yiddish.kmap0000644000175000017500000001210707532460064015566 0ustar henrichhenrich// Yiddish.kmap for Yudit // 2001-01-30 Raphael Finkel raphael@cs.uky.edu // These are the Yiddish letters, according to the UYIP mapping convention // I have excluded the keystrokes using the key. // I have added a few ligatures for YIVO input. "a=0x05D0 0x05b7", // HEBREW LETTER ALEF, HEBREW POINT PATAH "ay=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "A=0x05D0", // HEBREW LETTER ALEF "#=0x05D0" , // HEBREW LETTER ALEF "B=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "b=0x05D1", // HEBREW LETTER BET "c=0x05E6", // HEBREW LETTER TSADI "ts=0x05E6", // HEBREW LETTER TSADI "tsh=0x05D8 0x05E9", // HEBREW LETTER TET, SHIN "ts,=0x05E5 ," , // final form "ts.=0x05E5 ." , // final form "ts?=0x05E5 ?" , // final form "ts:=0x05E5 :" , // final form "ts!=0x05E5 !" , // final form "ts;=0x05E5 ;" , // final form "ts-=0x05E5 -" , // final form "ts)=0x05E5 )" , // final form "ts 0x0020= 0x05E5 0x0020" , // final form "C=0x05E5", // HEBREW LETTER FINAL TSADI "c,=0x05E5 ," , // final form "c.=0x05E5 ." , // final form "c?=0x05E5 ?" , // final form "c:=0x05E5 :" , // final form "c!=0x05E5 !" , // final form "c;=0x05E5 ;" , // final form "c-=0x05E5 -" , // final form "c)=0x05E5 )" , // final form "c 0x0020= 0x05E5 0x0020" , // final form "d=0x05D3", // HEBREW LETTER DALET "dj=0x05D3 0x05D6 0x05E9", // DALET, ZAYIN, SHIN "e=0x05E2", // HEBREW LETTER AYIN "E=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "ey=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "eyi=0x05F2 0x05D9 0x05B4", // DOUBLE YOD, YOD, HIRIQ "f=0x05E4 0x05BF", // HEBREW LETTER PE, HEBREW POINT RAFE "F=0x05E3", // HEBREW LETTER FINAL PE "f,=0x05E3 ," , // final form "f.=0x05E3 ." , // final form "f?=0x05E3 ?" , // final form "f:=0x05E3 :" , // final form "f!=0x05E3 !" , // final form "f;=0x05E3 ;" , // final form "f-=0x05E3 -" , // final form "f)=0x05E3 )" , // final form "f 0x0020= 0x05E3 0x0020" , // final form "g=0x05D2", // HEBREW LETTER GIMEL "h=0x05D4", // HEBREW LETTER HE "H=0x05D7", // HEBREW LETTER HET "i=0x05D9", // HEBREW LETTER YOD "ii=0x05D9 0x05D9 0x05B4", // YOD, YOD, HIRIQ "iy=0x05D9 0x05B4 0x05D9", // YOD, HIRIQ, YOD "I=0x05D9 0x05B4", // HEBREW LETTER YOD, HEBREW POINT HIRIQ "j=0x05F2", // HEBREW LIGATURE YIDDISH DOUBLE YOD "J=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "k=0x05E7", // HEBREW LETTER QOF "kh=0x05DB" , // HEBREW LETTER KAF "kh,=0x05DA ," , // final form "kh.=0x05DA ." , // final form "kh?=0x05DA ?" , // final form "kh:=0x05DA :" , // final form "kh!=0x05DA !" , // final form "kh;=0x05DA ;" , // final form "kh-=0x05DA -" , // final form "kh)=0x05DA )" , // final form "kh 0x0020= 0x05DA 0x0020" , // final form "K=0x05DB 0x05BC", // HEBREW LETTER KAF, HEBREW POINT DAGESH OR MAPIQ "l=0x05DC", // HEBREW LETTER LAMED "m=0x05DE", // HEBREW LETTER MEM "M=0x05DD", // HEBREW LETTER FINAL MEM "m,=0x05DD ," , // final form "m.=0x05DD ." , // final form "m?=0x05DD ?" , // final form "m:=0x05DD :" , // final form "m!=0x05DD !" , // final form "m;=0x05DD ;" , // final form "m-=0x05DD -" , // final form "m)=0x05DD )" , // final form "m 0x0020= 0x05DD 0x0020" , // final form "n=0x05E0", // HEBREW LETTER NUN "N=0x05DF", // HEBREW LETTER FINAL NUN "n,=0x05DF ," , // final form "n.=0x05DF ." , // final form "n?=0x05DF ?" , // final form "n:=0x05DF :" , // final form "n!=0x05DF !" , // final form "n;=0x05DF ;" , // final form "n-=0x05DF -" , // final form "n)=0x05DF )" , // final form "n 0x0020= 0x05DF 0x0020" , // final form "o=0x05D0 0x05B8", // HEBREW LETTER ALEF, HEBREW POINT QAMATS "oy=0x05F1", // HEBREW LIGATURE YIDDISH VAV YOD "O=0x05F1", // HEBREW LIGATURE YIDDISH VAV YOD "p=0x05E4 0x05BC", // HEBREW LETTER PE, HEBREW POINT DAGESH OR MAPIQ "q=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "r=0x05E8", // HEBREW LETTER RESH "s=0x05E1", // HEBREW LETTER SAMEKH "S=0x05EA", // HEBREW LETTER TAV "t=0x05D8", // HEBREW LETTER TET "T=0x05EA 0x05BC", // HEBREW LETTER TAV, HEBREW POINT DAGESH OR MAPIQ "u=0x05D5", // HEBREW LETTER VAV "ui=0x05D5 0x05D9 0x05B4", // HEBREW LETTER VAV, YOD, POINT HIRIQ "uv=0x05D5 0x05BC 0x05F0", // VAV, DAGESH, DOUBLE VAV "uu=0x05D5 0x05BC 0x05D5", // VAV, DAGESH, VAV "U=0x05D5 0x05BC", // HEBREW LETTER VAV, HEBREW POINT DAGESH OR MAPIQ "v=0x05F0", // HEBREW LIGATURE YIDDISH DOUBLE VAV "vu=0x05F0 0x05D5 0x05BC", // DOUBLE VAV, VAV, DAGESH "V=0x05D1 0x05BF", // HEBREW LETTER BET, HEBREW POINT RAFE "w=0x05E9", // HEBREW LETTER SHIN "sh=0x05E9", // HEBREW LETTER SHIN "W=0x05E9 0x05C2", // HEBREW LETTER SHIN, HEBREW POINT SIN DOT "x=0x05DB", // HEBREW LETTER KAF "X=0x05DA", // HEBREW LETTER FINAL KAF "x,=0x05DA ," , // final form "x.=0x05DA ." , // final form "x?=0x05DA ?" , // final form "x:=0x05DA :" , // final form "x!=0x05DA !" , // final form "x;=0x05DA ;" , // final form "x-=0x05DA -" , // final form "x)=0x05DA )" , // final form "x 0x0020= 0x05DA 0x0020" , // final form "y=0x05D9", // HEBREW LETTER YOD "yi=0x05D9 0x05D9 0x05B4", // YOD, YOD, HIRIQ "Y=0x05F2 0x05B7", // HEBREW LIGATURE YIDDISH DOUBLE YOD, HEBREW POINT PATAH "z=0x05D6", // HEBREW LETTER ZAYIN "zh=0x05D5 0x05E9", // ZAYIN, SHIN ./mytool/kmap/Chinese-CJ.kmap0000644000175000017500000107514307532460064016053 0ustar henrichhenrich// Chinese-CJ.kmap, v1.0, GPL (c) 1998.7. // Edited by Wei-Lun Chao // Reference: "PǼзǭܾeJk" by LөM (BIG5 coded) // Chinese keymap with CangJie input method for the unicode editor Yudit // Including BIG5 related: // Han Ideographic, Symbol and Punctuation, // Letterlike Symbol, Bopomofo, Bopomofo Modifier, Fullwidth ASCII // Han Ideographic "a 0x20 = 0x65E5", "aa 0x20 = 0x660C", "aaa 0x20 = 0x6676", "aamh 0x20 = 0x6698", "aaph 0x20 = 0x6679", "aapv 0x20 = 0x668D", "aate 0x20 = 0x66DD", "aayf 0x20 = 0x66BB", "aaz 0x20 = 0x660D", "ab 0x20 = 0x660E", "abac 0x20 = 0x669D", "abbe 0x20 = 0x66D6", "abbt 0x20 = 0x76DF", "abhaf 0x20 = 0x9DF3", "abik 0x20 = 0x7312", "abjcm 0x20 = 0x66CC", "abjj 0x20 = 0x6688", "abjjz 0x20 = 0x6689", "abme 0x20 = 0x6696", "abms 0x20 = 0x52D7", "abof 0x20 = 0x66A9", "abu 0x20 = 0x5192", "abuu 0x20 = 0x665B", "aciy 0x20 = 0x66A1", "acnh 0x20 = 0x665C", "acsh 0x20 = 0x6610", "ad 0x20 = 0x6772", "adhaf 0x20 = 0x9DF4", "adhl 0x20 = 0x6670", "admq 0x20 = 0x6690", "adwf 0x20 = 0x6695", "aenl 0x20 = 0x9124", "af 0x20 = 0x7085", "afbf 0x20 = 0x66ED", "afdq 0x20 = 0x66BD", "aff 0x20 = 0x6671", "afhhh 0x20 = 0x5F71", "afmbc 0x20 = 0x986F", "afmbcz 0x20 = 0x9865", "afmu 0x20 = 0x6643", "afno 0x20 = 0x6B5E", "afz 0x20 = 0x709A", "agbt 0x20 = 0x66C0", "agdi 0x20 = 0x6642", "aggu 0x20 = 0x66C9", "ahbr 0x20 = 0x664C", "ahbrz 0x20 = 0x6651", "ahbu 0x20 = 0x7709", "ahgf 0x20 = 0x66DB", "ahll 0x20 = 0x6634", "ahln 0x20 = 0x5254", "ahml 0x20 = 0x6615", "ahog 0x20 = 0x6680", "ahoo 0x20 = 0x66B0", "ahor 0x20 = 0x6677", "ahqm 0x20 = 0x661F", "ahqo 0x20 = 0x6633", "ahs 0x20 = 0x6608", "ahsk 0x20 = 0x66D2", "aht 0x20 = 0x6607", "ahul 0x20 = 0x6602", "ahxu 0x20 = 0x6672", "ahyo 0x20 = 0x6641", "aice 0x20 = 0x6659", "aihs 0x20 = 0x665F", "aijb 0x20 = 0x6661", "aimvu 0x20 = 0x65E2", "aine 0x20 = 0x6639", "aisl 0x20 = 0x5373", "aitc 0x20 = 0x66E0", "aj 0x20 = 0x65E9", "ajbj 0x20 = 0x6694", "ajd 0x20 = 0x6627", "ajii 0x20 = 0x66B7", "ajka 0x20 = 0x6691", "ajmm 0x20 = 0x6684", "ajmu 0x20 = 0x6665", "ajnu 0x20 = 0x667C", "ajv 0x20 = 0x664F", "ak 0x20 = 0x65F2", "akcf 0x20 = 0x66B8", "akkb 0x20 = 0x665E", "akll 0x20 = 0x6626", "aklv 0x20 = 0x667B", "akms 0x20 = 0x6647", "akn 0x20 = 0x65EF", "albk 0x20 = 0x6620", "alg 0x20 = 0x5832", "alln 0x20 = 0x6632", "alnc 0x20 = 0x66CA", "am 0x20 = 0x65E6", "amam 0x20 = 0x6645", "ambb 0x20 = 0x66D8", "ambc 0x20 = 0x668A", "ambg 0x20 = 0x66E4", "ambi 0x20 = 0x66C7", "amcw 0x20 = 0x6652", "amd 0x20 = 0x65F4", "ame 0x20 = 0x6604", "amg 0x20 = 0x65FA", "amhaf 0x20 = 0x9D20", "ami 0x20 = 0x6225", "amig 0x20 = 0x664A", "amj 0x20 = 0x65F1", "amjz 0x20 = 0x65F0", "amk 0x20 = 0x660A", "amks 0x20 = 0x662E", "ammk 0x20 = 0x6678", "ammp 0x20 = 0x66EC", "ammr 0x20 = 0x6664", "ammv 0x20 = 0x6668", "amo 0x20 = 0x6603", "amob 0x20 = 0x663A", "amsh 0x20 = 0x661C", "amtb 0x20 = 0x66DE", "amwg 0x20 = 0x91CF", "amwj 0x20 = 0x66CB", "amyo 0x20 = 0x662F", "an 0x20 = 0x9580", "ana 0x20 = 0x9593", "anaa 0x20 = 0x95B6", "anasy 0x20 = 0x95D2", "anau 0x20 = 0x665A", "anauz 0x20 = 0x5195", "anayk 0x20 = 0x95BA", "anb 0x20 = 0x9592", "anbbe 0x20 = 0x95BF", "anbue 0x20 = 0x95C5", "anbuk 0x20 = 0x95C3", "ancru 0x20 = 0x95B1", "and 0x20 = 0x9591", "andh 0x20 = 0x9589", "andmq 0x20 = 0x95C8", "andwf 0x20 = 0x95CC", "anehr 0x20 = 0x95CA", "anf 0x20 = 0x711B", "anfbg 0x20 = 0x95DB", "anfbw 0x20 = 0x95E3", "angg 0x20 = 0x95A8", "angit 0x20 = 0x95D4", "anhe 0x20 = 0x6605", "anher 0x20 = 0x95A3", "anhpa 0x20 = 0x95BD", "anhqu 0x20 = 0x9590", "anhud 0x20 = 0x95D1", "anhx 0x20 = 0x95B0", "aniav 0x20 = 0x95AC", "anirm 0x20 = 0x95BE", "anit 0x20 = 0x959E", "anjbc 0x20 = 0x95D0", "anjka 0x20 = 0x95CD", "anki 0x20 = 0x958E", "anklv 0x20 = 0x95B9", "anlmc 0x20 = 0x95E0", "anlmi 0x20 = 0x95A9", "anm 0x20 = 0x9582", "anmfj 0x20 = 0x959B", "anmg 0x20 = 0x958F", "anmj 0x20 = 0x9588", "anmjk 0x20 = 0x95DE", "anmmm 0x20 = 0x9586", "anmnr 0x20 = 0x959C", "anmt 0x20 = 0x958B", "anmwg 0x20 = 0x95C9", "annhx 0x20 = 0x95BB", "annkg 0x20 = 0x95AE", "annok 0x20 = 0x95CB", "ano 0x20 = 0x9583", "anog 0x20 = 0x95B5", "anoi 0x20 = 0x95A5", "anok 0x20 = 0x668C", "anomr 0x20 = 0x95A4", "anory 0x20 = 0x95DF", "anoz 0x20 = 0x6B25", "anp 0x20 = 0x60B6", "anph 0x20 = 0x959F", "anqou 0x20 = 0x95DA", "anr 0x20 = 0x554F", "anrhr 0x20 = 0x95AD", "anrrj 0x20 = 0x95E1", "anrrr 0x20 = 0x95C6", "ansj 0x20 = 0x805E", "ansqf 0x20 = 0x95D6", "ansrj 0x20 = 0x95E2", "antcu 0x20 = 0x95C0", "antuo 0x20 = 0x95D5", "anumt 0x20 = 0x95D3", "anvit 0x20 = 0x95DC", "anwd 0x20 = 0x95AB", "anwl 0x20 = 0x9598", "anwlv 0x20 = 0x95E4", "anygq 0x20 = 0x95E5", "anyhn 0x20 = 0x958C", "anyhs 0x20 = 0x958D", "anyk 0x20 = 0x9594", "anymr 0x20 = 0x8ABE", "anysy 0x20 = 0x95BC", "anyta 0x20 = 0x95C7", "anyvo 0x20 = 0x95A1", "aodmq 0x20 = 0x97D9", "aofh 0x20 = 0x5C1F", "aohaf 0x20 = 0x9D97", "aombc 0x20 = 0x984C", "aomi 0x20 = 0x6624", "aomn 0x20 = 0x6611", "aop 0x20 = 0x5319", "aos 0x20 = 0x6628", "aowy 0x20 = 0x6666", "aphh 0x20 = 0x6613", "aphhz 0x20 = 0x6612", "api 0x20 = 0x65F3", "apmm 0x20 = 0x6600", "app 0x20 = 0x6606", "apr 0x20 = 0x662B", "apu 0x20 = 0x65FD", "apvo 0x20 = 0x66F7", "aqka 0x20 = 0x6699", "aqmb 0x20 = 0x6674", "arf 0x20 = 0x7167", "arfz 0x20 = 0x7166", "armd 0x20 = 0x5194", "arrj 0x20 = 0x66BA", "arrk 0x20 = 0x66EE", "arse 0x20 = 0x6687", "asf 0x20 = 0x715A", "ashr 0x20 = 0x662D", "asje 0x20 = 0x6700", "asp 0x20 = 0x6635", "astr 0x20 = 0x66B1", "asyg 0x20 = 0x66DC", "atak 0x20 = 0x66AF", "atbc 0x20 = 0x666A", "atbo 0x20 = 0x66DA", "atce 0x20 = 0x66B4", "atcr 0x20 = 0x8B08", "atgi 0x20 = 0x66E6", "atlb 0x20 = 0x66AA", "atlf 0x20 = 0x66E3", "atlo 0x20 = 0x66B5", "atmq 0x20 = 0x66C4", "au 0x20 = 0x5DF4", "auam 0x20 = 0x66A8", "aug 0x20 = 0x5848", "auhqu 0x20 = 0x6BF7", "auks 0x20 = 0x52D6", "aumt 0x20 = 0x669F", "aunl 0x20 = 0x90FF", "aunwf 0x20 = 0x9C40", "auu 0x20 = 0x6622", "auuz 0x20 = 0x5C8A", "auz 0x20 = 0x65F5", "av 0x20 = 0x826E", "avhaf 0x20 = 0x9DC3", "avhafz 0x20 = 0x9DA1", "avhafzz 0x20 = 0x9DD0", "avhl 0x20 = 0x66CF", "avhqu 0x20 = 0x6BFC", "avno 0x20 = 0x6B47", "awla 0x20 = 0x66D9", "awle 0x20 = 0x66FC", "aybp 0x20 = 0x66E8", "aydk 0x20 = 0x66BE", "ayhqu 0x20 = 0x6BFE", "ayhs 0x20 = 0x6609", "ayk 0x20 = 0x65FB", "aykz 0x20 = 0x65FC", "ayoj 0x20 = 0x666C", "ayrb 0x20 = 0x66A0", "ayrf 0x20 = 0x666F", "ayrfz 0x20 = 0x667E", "ayrv 0x20 = 0x66E9", "aysd 0x20 = 0x6686", "ayt 0x20 = 0x6631", "ayta 0x20 = 0x6697", "aytg 0x20 = 0x66C8", "aytj 0x20 = 0x66B2", "ayvi 0x20 = 0x6621", "az 0x20 = 0x66F0", "b 0x20 = 0x6708", "bahm 0x20 = 0x8165", "bamh 0x20 = 0x8178", "bau 0x20 = 0x80A5", "bayc 0x20 = 0x51A5", "bb 0x20 = 0x670B", "bbb 0x20 = 0x9AA8", "bbbr 0x20 = 0x8161", "bbbuu 0x20 = 0x89B6", "bbdhe 0x20 = 0x9AB3", "bbdi 0x20 = 0x811F", "bbe 0x20 = 0x53D7", "bbggu 0x20 = 0x9AD0", "bbhaf 0x20 = 0x9DBB", "bbher 0x20 = 0x9ABC", "bbhf 0x20 = 0x9D6C", "bbhhj 0x20 = 0x9AC0", "bbhne 0x20 = 0x9AB0", "bbibi 0x20 = 0x9AC6", "bbidd 0x20 = 0x9ACD", "bbjhr 0x20 = 0x9AC2", "bbjmc 0x20 = 0x9AD5", "bbjr 0x20 = 0x9AB7", "bbjti 0x20 = 0x9AD6", "bbkms 0x20 = 0x9ABB", "bbkni 0x20 = 0x9AAB", "bbllv 0x20 = 0x9ACF", "bbln 0x20 = 0x526E", "bbmbc 0x20 = 0x985D", "bbmj 0x20 = 0x9AAD", "bbmlk 0x20 = 0x9ABE", "bbmr 0x20 = 0x80F4", "bbnd 0x20 = 0x812C", "bbnq 0x20 = 0x821C", "bboll 0x20 = 0x9AB1", "bbpe 0x20 = 0x611B", "bbr 0x20 = 0x54BC", "bbtgm 0x20 = 0x9ACA", "bbtmt 0x20 = 0x9AD2", "bbtt 0x20 = 0x9ABF", "bbtwt 0x20 = 0x9AD4", "bbu 0x20 = 0x4E82", "bbug 0x20 = 0x81DE", "bbun 0x20 = 0x9F0F", "bbuu 0x20 = 0x8993", "bbwd 0x20 = 0x9AC1", "bbwli 0x20 = 0x9AD1", "bbyck 0x20 = 0x9AB9", "bbyhn 0x20 = 0x9AAF", "bbykb 0x20 = 0x9AD3", "bbymp 0x20 = 0x9AB4", "bbyrb 0x20 = 0x9AC7", "bbytj 0x20 = 0x8FAD", "bbyvo 0x20 = 0x9AB8", "bcabu 0x20 = 0x8CF5", "bcaph 0x20 = 0x8CDC", "bcbcc 0x20 = 0x8D14", "bcbcd 0x20 = 0x8CDD", "bcbgr 0x20 = 0x8CD9", "bcbjj 0x20 = 0x8CF1", "bcbuc 0x20 = 0x8CCF", "bcbuu 0x20 = 0x89AD", "bccwa 0x20 = 0x8D08", "bcdh 0x20 = 0x8CA1", "bcff 0x20 = 0x8CE7", "bcgir 0x20 = 0x8CF3", "bcgwc 0x20 = 0x8D16", "bchaf 0x20 = 0x9D59", "bcher 0x20 = 0x8CC2", "bchio 0x20 = 0x8CB6", "bchpm 0x20 = 0x8CBE", "bchqm 0x20 = 0x8CB9", "bcibi 0x20 = 0x8CFB", "bcii 0x20 = 0x8CE4", "bciih 0x20 = 0x8D02", "bcij 0x20 = 0x8CCA", "bcije 0x20 = 0x8CD5", "bcikk 0x20 = 0x8D06", "bcims 0x20 = 0x8D13", "bcir 0x20 = 0x8CBD", "bcj 0x20 = 0x80B8", "bcjka 0x20 = 0x8CED", "bcjmn 0x20 = 0x8CAF", "bckb 0x20 = 0x8CC4", "bcll 0x20 = 0x8CD7", "bclmt 0x20 = 0x8D10", "bcln 0x20 = 0x5247", "bcme 0x20 = 0x8CA9", "bcmj 0x20 = 0x7F55", "bcmln 0x20 = 0x7516", "bcmmv 0x20 = 0x8CD1", "bcmpm 0x20 = 0x8CE6", "bcmwj 0x20 = 0x8D09", "bcncr 0x20 = 0x8D0D", "bcnl 0x20 = 0x910D", "bcnlz 0x20 = 0x90E5", "bcoju 0x20 = 0x7F4C", "bcok 0x20 = 0x6557", "bcomf 0x20 = 0x8CD2", "bcpd 0x20 = 0x8CA4", "bcqka 0x20 = 0x8CF0", "bcr 0x20 = 0x518F", "bcrhu 0x20 = 0x8CBA", "bcrl 0x20 = 0x8173", "bcru 0x20 = 0x812B", "bcrxu 0x20 = 0x9F06", "bcsmv 0x20 = 0x8CEC", "bctbc 0x20 = 0x8CDF", "bctct 0x20 = 0x8CF9", "bcttb 0x20 = 0x8CFC", "bctxc 0x20 = 0x8CFA", "bcv 0x20 = 0x5B30", "bcyhn 0x20 = 0x8CA5", "bcymr 0x20 = 0x8B7B", "bcyoj 0x20 = 0x8CE5", "bcyr 0x20 = 0x8CBC", "bcytr 0x20 = 0x8CE0", "bcyvo 0x20 = 0x8CC5", "bd 0x20 = 0x91C7", "bdhhh 0x20 = 0x5F69", "bdi 0x20 = 0x8098", "bdlw 0x20 = 0x91C9", "bdnl 0x20 = 0x90DB", "bdoe 0x20 = 0x819D", "bdu 0x20 = 0x4E73", "beee 0x20 = 0x814F", "behaf 0x20 = 0x9DA2", "bf 0x20 = 0x7099", "bfbg 0x20 = 0x819B", "bfcb 0x20 = 0x818C", "bfd 0x20 = 0x519E", "bfdq 0x20 = 0x81A6", "bfhvf 0x20 = 0x7E23", "bfmu 0x20 = 0x80F1", "bfoc 0x20 = 0x8CF8", "bfoe 0x20 = 0x6ED5", "bfof 0x20 = 0x9A30", "bfofz 0x20 = 0x7E22", "bfog 0x20 = 0x584D", "bfoi 0x20 = 0x87A3", "bfor 0x20 = 0x8B04", "bfos 0x20 = 0x52DD", "bfou 0x20 = 0x8143", "bfov 0x20 = 0x5AB5", "bfp 0x20 = 0x61F8", "bfq 0x20 = 0x80D6", "bfu 0x20 = 0x4E7F", "bg 0x20 = 0x809A", "bggu 0x20 = 0x81AE", "bghqu 0x20 = 0x6C0D", "bgi 0x20 = 0x80E0", "bgr 0x20 = 0x5468", "bgte 0x20 = 0x81CC", "bgth 0x20 = 0x81A8", "bha 0x20 = 0x80C9", "bhae 0x20 = 0x817A", "bhbue 0x20 = 0x8C9C", "bhbvk 0x20 = 0x8C95", "bhdh 0x20 = 0x8C7A", "bhdv 0x20 = 0x8147", "bhdw 0x20 = 0x81B0", "bher 0x20 = 0x80F3", "bhgf 0x20 = 0x81D0", "bhhau 0x20 = 0x8C8C", "bhher 0x20 = 0x8C89", "bhhh 0x20 = 0x809C", "bhhhj 0x20 = 0x8C8F", "bhhj 0x20 = 0x813E", "bhhv 0x20 = 0x8108", "bhhwp 0x20 = 0x8C94", "bhio 0x20 = 0x80CD", "bhjc 0x20 = 0x8C81", "bhje 0x20 = 0x8176", "bhjg 0x20 = 0x816B", "bhjgz 0x20 = 0x8144", "bhju 0x20 = 0x816F", "bhllv 0x20 = 0x8C97", "bhlq 0x20 = 0x8C84", "bhma 0x20 = 0x8C8A", "bhmam 0x20 = 0x8C86", "bhmj 0x20 = 0x8C7B", "bhml 0x20 = 0x80B5", "bhn 0x20 = 0x5197", "bhne 0x20 = 0x80A1", "bhnz 0x20 = 0x808C", "bhob 0x20 = 0x8C7D", "bhod 0x20 = 0x8C85", "bhomn 0x20 = 0x8C90", "bhon 0x20 = 0x80FB", "bhpi 0x20 = 0x8C79", "bhpm 0x20 = 0x80DD", "bhqm 0x20 = 0x80DC", "bhqo 0x20 = 0x80C5", "bhrrj 0x20 = 0x8C9A", "bhrse 0x20 = 0x8C91", "bhshr 0x20 = 0x8C82", "bhsrr 0x20 = 0x8C99", "bhtak 0x20 = 0x8C98", "bhtw 0x20 = 0x8C93", "bhuc 0x20 = 0x81E2", "bhumb 0x20 = 0x8C92", "bhuu 0x20 = 0x8C80", "bhuuz 0x20 = 0x81AC", "bhwg 0x20 = 0x8C8D", "bhwp 0x20 = 0x818D", "bhx 0x20 = 0x8200", "bhxo 0x20 = 0x8174", "bhyo 0x20 = 0x6713", "bhyoz 0x20 = 0x8101", "bibi 0x20 = 0x818A", "bice 0x20 = 0x6718", "bicez 0x20 = 0x8127", "bijb 0x20 = 0x812F", "bije 0x20 = 0x8119", "bikk 0x20 = 0x80C8", "bioi 0x20 = 0x8151", "bipc 0x20 = 0x81A9", "bipf 0x20 = 0x81D5", "bir 0x20 = 0x80CE", "biypu 0x20 = 0x8662", "bjb 0x20 = 0x80BA", "bjbd 0x20 = 0x8116", "bjbj 0x20 = 0x8169", "bjcg 0x20 = 0x81A3", "bjcm 0x20 = 0x8154", "bjdhe 0x20 = 0x76B8", "bje 0x20 = 0x80A2", "bjhaf 0x20 = 0x9DA4", "bjii 0x20 = 0x819E", "bjlmi 0x20 = 0x8808", "bjmbc 0x20 = 0x9850", "bjmc 0x20 = 0x81CF", "bjmu 0x20 = 0x8118", "bjnl 0x20 = 0x9106", "bjnu 0x20 = 0x8155", "bjtc 0x20 = 0x81B9", "bjti 0x20 = 0x81D7", "bjv 0x20 = 0x80FA", "bjwj 0x20 = 0x8ECD", "bkcf 0x20 = 0x81AB", "bkcor 0x20 = 0x8C3F", "bkf 0x20 = 0x7136", "bkhaf 0x20 = 0x9DAA", "bki 0x20 = 0x80B1", "bkk 0x20 = 0x7F51", "bklv 0x20 = 0x814C", "bkms 0x20 = 0x80EF", "bkn 0x20 = 0x80F0", "bkni 0x20 = 0x8092", "bknl 0x20 = 0x90F9", "bkog 0x20 = 0x96DE", "bkoo 0x20 = 0x8125", "bks 0x20 = 0x808B", "blbk 0x20 = 0x80E6", "blln 0x20 = 0x80C7", "bllv 0x20 = 0x81A2", "blmy 0x20 = 0x8153", "bln 0x20 = 0x5216", "blwl 0x20 = 0x80C2", "blxh 0x20 = 0x80CF", "bm 0x20 = 0x4E14", "bmbb 0x20 = 0x81D1", "bmbg 0x20 = 0x81DB", "bmbl 0x20 = 0x80F9", "bmfm 0x20 = 0x80DA", "bmig 0x20 = 0x80F5", "bmj 0x20 = 0x809D", "bmke 0x20 = 0x7230", "bmks 0x20 = 0x52A9", "bmln 0x20 = 0x521E", "bmmc 0x20 = 0x5177", "bmmu 0x20 = 0x670A", "bmmv 0x20 = 0x8124", "bmog 0x20 = 0x96CE", "bmr 0x20 = 0x540C", "bmrb 0x20 = 0x8188", "bmrt 0x20 = 0x8130", "bmrw 0x20 = 0x8177", "bmso 0x20 = 0x8C5A", "bmsoz 0x20 = 0x51A2", "bmui 0x20 = 0x51A0", "bmvm 0x20 = 0x811B", "bmwf 0x20 = 0x8198", "bmwv 0x20 = 0x8170", "bmz 0x20 = 0x809B", "bmzz 0x20 = 0x56D7", "bn 0x20 = 0x808A", "bnai 0x20 = 0x51A4", "bnau 0x20 = 0x8115", "bncr 0x20 = 0x81BD", "bnd 0x20 = 0x5B5A", "bnii 0x20 = 0x8199", "bnkg 0x20 = 0x8121", "bnkq 0x20 = 0x8171", "bnlii 0x20 = 0x882B", "bnmu 0x20 = 0x8106", "boae 0x20 = 0x8179", "bob 0x20 = 0x80AD", "bobo 0x20 = 0x6712", "bodi 0x20 = 0x80D5", "bog 0x20 = 0x813D", "bogf 0x20 = 0x81B2", "bogs 0x20 = 0x81C7", "bohh 0x20 = 0x80D7", "boma 0x20 = 0x81BE", "bommf 0x20 = 0x796D", "bomn 0x20 = 0x80A3", "bomnz 0x20 = 0x8167", "bomo 0x20 = 0x81C9", "bomrt 0x20 = 0x8C4B", "bon 0x20 = 0x8090", "bonp 0x20 = 0x814D", "boog 0x20 = 0x811E", "bopd 0x20 = 0x80E3", "bos 0x20 = 0x80D9", "botf 0x20 = 0x81B4", "bowy 0x20 = 0x8122", "bpa 0x20 = 0x8102", "bpr 0x20 = 0x6710", "bpru 0x20 = 0x80DE", "bprz 0x20 = 0x80CA", "bpu 0x20 = 0x80AB", "bpuk 0x20 = 0x80F8", "bq 0x20 = 0x7528", "bqkk 0x20 = 0x8160", "bqmf 0x20 = 0x8186", "bqu 0x20 = 0x7529", "brc 0x20 = 0x80D1", "brhaf 0x20 = 0x9D70", "brhg 0x20 = 0x812D", "brhhh 0x20 = 0x5F6B", "bri 0x20 = 0x6219", "brog 0x20 = 0x96D5", "brrd 0x20 = 0x81CA", "brsyy 0x20 = 0x7FE2", "bsd 0x20 = 0x722D", "bsef 0x20 = 0x9D69", "bshh 0x20 = 0x8C78", "bshi 0x20 = 0x8095", "bsjr 0x20 = 0x8152", "bsle 0x20 = 0x670D", "bsmg 0x20 = 0x815B", "bsmv 0x20 = 0x8139", "bss 0x20 = 0x51F8", "bsyh 0x20 = 0x81A0", "bt 0x20 = 0x518A", "bta 0x20 = 0x814A", "btab 0x20 = 0x51AA", "btak 0x20 = 0x819C", "btbc 0x20 = 0x8146", "btbo 0x20 = 0x6726", "btct 0x20 = 0x8189", "btgr 0x20 = 0x81B3", "btis 0x20 = 0x81DF", "btk 0x20 = 0x6715", "btlf 0x20 = 0x81D9", "btlk 0x20 = 0x6720", "btln 0x20 = 0x522A", "btmbc 0x20 = 0x982F", "btmd 0x20 = 0x815C", "btoe 0x20 = 0x81D2", "btt 0x20 = 0x80FC", "btu 0x20 = 0x5CA1", "btwv 0x20 = 0x81BF", "btyj 0x20 = 0x81B5", "btyv 0x20 = 0x7F54", "btz 0x20 = 0x76BF", "bu 0x20 = 0x76EE", "buamj 0x20 = 0x7745", "buamo 0x20 = 0x777C", "buana 0x20 = 0x77B7", "buank 0x20 = 0x77D9", "buav 0x20 = 0x773C", "bubac 0x20 = 0x7791", "bubbq 0x20 = 0x77AC", "bubd 0x20 = 0x776C", "bubgr 0x20 = 0x776D", "bubsd 0x20 = 0x775C", "bubuk 0x20 = 0x7781", "bubuu 0x20 = 0x774D", "bubuuz 0x20 = 0x899E", "buc 0x20 = 0x8C9D", "buce 0x20 = 0x6721", "buciy 0x20 = 0x7788", "bucms 0x20 = 0x76FB", "bucnh 0x20 = 0x7747", "bucsh 0x20 = 0x76FC", "budoo 0x20 = 0x775E", "bufb 0x20 = 0x7744", "bufbf 0x20 = 0x77D8", "bufbg 0x20 = 0x77A0", "bufd 0x20 = 0x772F", "bufdq 0x20 = 0x77B5", "buff 0x20 = 0x7752", "bufh 0x20 = 0x7707", "bufou 0x20 = 0x7760", "bugce 0x20 = 0x7756", "bugcg 0x20 = 0x7766", "bugg 0x20 = 0x772D", "bugit 0x20 = 0x778C", "buhaf 0x20 = 0x9DC2", "buhafz 0x20 = 0x7797", "buhbu 0x20 = 0x7708", "buhdf 0x20 = 0x7785", "buhgf 0x20 = 0x77C4", "buhhj 0x20 = 0x7765", "buhhv 0x20 = 0x773D", "buhio 0x20 = 0x7728", "buhjg 0x20 = 0x7761", "buhju 0x20 = 0x7783", "buhml 0x20 = 0x76FA", "buhni 0x20 = 0x98BB", "buhok 0x20 = 0x89B9", "buhoo 0x20 = 0x779B", "buhpa 0x20 = 0x7767", "buhqi 0x20 = 0x774B", "buhqo 0x20 = 0x7723", "buhqu 0x20 = 0x770A", "buhsk 0x20 = 0x7759", "buhu 0x20 = 0x898B", "buhus 0x20 = 0x77CF", "buhvf 0x20 = 0x7E47", "buhxe 0x20 = 0x778D", "buhxu 0x20 = 0x7768", "buhyo 0x20 = 0x773A", "buihq 0x20 = 0x7738", "buik 0x20 = 0x72CA", "buir 0x20 = 0x7719", "buitc 0x20 = 0x77CC", "buiu 0x20 = 0x7713", "bujbc 0x20 = 0x778B", "bujd 0x20 = 0x771B", "bujka 0x20 = 0x7779", "bujlo 0x20 = 0x776B", "bujmc 0x20 = 0x77C9", "bujmcz 0x20 = 0x779A", "bujmn 0x20 = 0x771D", "bujmu 0x20 = 0x7746", "bujnu 0x20 = 0x7755", "bujqr 0x20 = 0x778E", "bukcf 0x20 = 0x77AD", "bukkb 0x20 = 0x774E", "bukn 0x20 = 0x7731", "bullp 0x20 = 0x77A3", "bullv 0x20 = 0x779C", "bulmc 0x20 = 0x77B6", "bulmi 0x20 = 0x8730", "buln 0x20 = 0x525B", "bulwl 0x20 = 0x7712", "bumbg 0x20 = 0x77D0", "bumd 0x20 = 0x76F1", "bume 0x20 = 0x7705", "bumgg 0x20 = 0x775A", "bumj 0x20 = 0x76F0", "bumjk 0x20 = 0x77B0", "bumls 0x20 = 0x7704", "bummi 0x20 = 0x7703", "bumn 0x20 = 0x76EF", "bumwf 0x20 = 0x779F", "bumwj 0x20 = 0x77AB", "bumym 0x20 = 0x7710", "bunau 0x20 = 0x774C", "bunbk 0x20 = 0x77CE", "buncr 0x20 = 0x77BB", "bunhb 0x20 = 0x77B2", "bunin 0x20 = 0x7735", "bunir 0x20 = 0x7733", "bunok 0x20 = 0x777D", "bunot 0x20 = 0x77AA", "buog 0x20 = 0x77BF", "buoge 0x20 = 0x77CD", "buogf 0x20 = 0x77A7", "buogz 0x20 = 0x7762", "buogzz 0x20 = 0x8197", "buohh 0x20 = 0x7715", "buoma 0x20 = 0x77BA", "buomb 0x20 = 0x7754", "buomn 0x20 = 0x776E", "buomo 0x20 = 0x77BC", "buon 0x20 = 0x76F5", "buotf 0x20 = 0x77B4", "bupa 0x20 = 0x7734", "bupmm 0x20 = 0x76F7", "bupu 0x20 = 0x76F9", "buqmb 0x20 = 0x775B", "buqou 0x20 = 0x77A1", "burb 0x20 = 0x774A", "burrd 0x20 = 0x77C2", "burup 0x20 = 0x7720", "busei 0x20 = 0x77DA", "bushr 0x20 = 0x7727", "busj 0x20 = 0x7732", "busmg 0x20 = 0x7736", "butak 0x20 = 0x7799", "butbo 0x20 = 0x77C7", "butk 0x20 = 0x7739", "butlb 0x20 = 0x779E", "butmo 0x20 = 0x77A8", "butmq 0x20 = 0x77B1", "butq 0x20 = 0x773B", "butrg 0x20 = 0x77D4", "butw 0x20 = 0x7784", "buu 0x20 = 0x670F", "buuz 0x20 = 0x80D0", "buvfb 0x20 = 0x77CA", "buvis 0x20 = 0x7711", "buvmn 0x20 = 0x9F0E", "buvne 0x20 = 0x7769", "buwd 0x20 = 0x774F", "buybp 0x20 = 0x77D3", "buyfd 0x20 = 0x7787", "buyoj 0x20 = 0x775F", "buytg 0x20 = 0x77B3", "buytj 0x20 = 0x7795", "buyub 0x20 = 0x779D", "buyv 0x20 = 0x76F3", "buyvi 0x20 = 0x7729", "bv 0x20 = 0x59A5", "bvg 0x20 = 0x58BE", "bvhaf 0x20 = 0x9E1A", "bvhl 0x20 = 0x81B7", "bvik 0x20 = 0x595A", "bvnl 0x20 = 0x90FB", "bvno 0x20 = 0x815E", "bvp 0x20 = 0x61C7", "bvvu 0x20 = 0x81D8", "bvvw 0x20 = 0x8166", "bwim 0x20 = 0x8195", "bwk 0x20 = 0x80ED", "bwl 0x20 = 0x80DB", "bwlb 0x20 = 0x8162", "bwli 0x20 = 0x7235", "bwliz 0x20 = 0x81C5", "bwmv 0x20 = 0x8172", "bwot 0x20 = 0x8183", "bwp 0x20 = 0x816E", "by 0x20 = 0x4E39", "byav 0x20 = 0x817F", "bybb 0x20 = 0x81BC", "bybp 0x20 = 0x6727", "bybs 0x20 = 0x8180", "byhaf 0x20 = 0x9D05", "byhhh 0x20 = 0x5F64", "byhn 0x20 = 0x80AE", "byhr 0x20 = 0x8187", "byhs 0x20 = 0x80AA", "byia 0x20 = 0x81B1", "byln 0x20 = 0x5210", "byoj 0x20 = 0x813A", "byok 0x20 = 0x814B", "bypo 0x20 = 0x81C4", "bypt 0x20 = 0x81DA", "byrn 0x20 = 0x811D", "byta 0x20 = 0x8164", "bytg 0x20 = 0x81A7", "bytgz 0x20 = 0x6723", "bytoe 0x20 = 0x96D8", "bytp 0x20 = 0x81C6", "byvg 0x20 = 0x81C3", "byvi 0x20 = 0x80D8", "byvo 0x20 = 0x80F2", "bywm 0x20 = 0x81BB", "byx 0x20 = 0x81CD", "byyj 0x20 = 0x819F", "c 0x20 = 0x91D1", "ca 0x20 = 0x9224", "caa 0x20 = 0x9329", "cafu 0x20 = 0x93A4", "cam 0x20 = 0x926D", "camh 0x20 = 0x935A", "camj 0x20 = 0x92B2", "camln 0x20 = 0x7511", "camo 0x20 = 0x9349", "can 0x20 = 0x9346", "canl 0x20 = 0x912B", "canw 0x20 = 0x946D", "caph 0x20 = 0x932B", "capp 0x20 = 0x9315", "capv 0x20 = 0x937B", "casy 0x20 = 0x9389", "cate 0x20 = 0x9464", "cau 0x20 = 0x9200", "cav 0x20 = 0x9280", "cawe 0x20 = 0x93DD", "cb 0x20 = 0x9205", "cbb 0x20 = 0x930B", "cbbe 0x20 = 0x9440", "cbbr 0x20 = 0x934B", "cbcn 0x20 = 0x9358", "cbdi 0x20 = 0x92DD", "cbgr 0x20 = 0x932D", "cbjj 0x20 = 0x9355", "cbm 0x20 = 0x924F", "cbme 0x20 = 0x9370", "cbmr 0x20 = 0x9285", "cbms 0x20 = 0x92E4", "cbsd 0x20 = 0x931A", "cbtu 0x20 = 0x92FC", "cbu 0x20 = 0x926C", "cbuc 0x20 = 0x92C7", "cbue 0x20 = 0x9481", "cbuu 0x20 = 0x92E7", "ccc 0x20 = 0x946B", "cci 0x20 = 0x9206", "ccnh 0x20 = 0x92BB", "ccor 0x20 = 0x92CA", "ccr 0x20 = 0x925B", "ccru 0x20 = 0x92B3", "ccsh 0x20 = 0x9216", "cdh 0x20 = 0x91EE", "cdhe 0x20 = 0x9239", "cdk 0x20 = 0x920C", "cdl 0x20 = 0x92C9", "cdmq 0x20 = 0x934F", "cdoo 0x20 = 0x9338", "cdwf 0x20 = 0x934A", "cea 0x20 = 0x9314", "ceah 0x20 = 0x940B", "ceed 0x20 = 0x939F", "ceee 0x20 = 0x9323", "cehv 0x20 = 0x9383", "cei 0x20 = 0x91F5", "cf 0x20 = 0x9225", "cfb 0x20 = 0x92B7", "cfbc 0x20 = 0x9396", "cfbd 0x20 = 0x93FF", "cfbf 0x20 = 0x9482", "cfbg 0x20 = 0x93DC", "cfbr 0x20 = 0x92FF", "cfbu 0x20 = 0x93B2", "cfbw 0x20 = 0x943A", "cfd 0x20 = 0x92A4", "cfdq 0x20 = 0x93FB", "cff 0x20 = 0x931F", "cffd 0x20 = 0x9445", "cffs 0x20 = 0x9412", "cfh 0x20 = 0x9214", "cfmu 0x20 = 0x92A7", "cfou 0x20 = 0x9308", "cfq 0x20 = 0x9261", "cg 0x20 = 0x91F7", "cgce 0x20 = 0x9302", "cgcg 0x20 = 0x9334", "cgg 0x20 = 0x9288", "cggu 0x20 = 0x9403", "cgi 0x20 = 0x9263", "cgig 0x20 = 0x9435", "cgit 0x20 = 0x9391", "cgni 0x20 = 0x9444", "cgp 0x20 = 0x92D5", "cgr 0x20 = 0x92A1", "cgrv 0x20 = 0x93B1", "cha 0x20 = 0x9251", "chab 0x20 = 0x9326", "chag 0x20 = 0x9360", "chbt 0x20 = 0x76C6", "chbu 0x20 = 0x9202", "chbuc 0x20 = 0x8CA7", "chd 0x20 = 0x924C", "chdb 0x20 = 0x93FC", "chdf 0x20 = 0x936C", "chdn 0x20 = 0x92D3", "chdw 0x20 = 0x9407", "chej 0x20 = 0x92D2", "cher 0x20 = 0x927B", "chey 0x20 = 0x9256", "chf 0x20 = 0x7083", "chg 0x20 = 0x574C", "chgr 0x20 = 0x92EF", "chgu 0x20 = 0x9291", "chhaf 0x20 = 0x9D5C", "chhafz 0x20 = 0x9CFB", "chhe 0x20 = 0x9457", "chhh 0x20 = 0x91E4", "chhj 0x20 = 0x930D", "chhw 0x20 = 0x93A6", "chio 0x20 = 0x9232", "chjd 0x20 = 0x9296", "chje 0x20 = 0x935B", "chjg 0x20 = 0x937E", "chjgz 0x20 = 0x9318", "chju 0x20 = 0x934E", "chlc 0x20 = 0x9455", "chll 0x20 = 0x925A", "chln 0x20 = 0x5243", "chlo 0x20 = 0x91FD", "chmbc 0x20 = 0x9812", "chml 0x20 = 0x91FF", "chmr 0x20 = 0x9297", "chni 0x20 = 0x91E9", "chnl 0x20 = 0x90A0", "chok 0x20 = 0x653D", "choo 0x20 = 0x93E6", "chp 0x20 = 0x5FFF", "chpa 0x20 = 0x9309", "chqi 0x20 = 0x92E8", "chqm 0x20 = 0x924E", "chrf 0x20 = 0x93A2", "cht 0x20 = 0x5F05", "chu 0x20 = 0x5C94", "chuc 0x20 = 0x947D", "chud 0x20 = 0x93B3", "chup 0x20 = 0x93B4", "chwp 0x20 = 0x939E", "chxe 0x20 = 0x93AA", "chxh 0x20 = 0x92B5", "chyo 0x20 = 0x929A", "ci 0x20 = 0x516C", "ciav 0x20 = 0x92C3", "cibi 0x20 = 0x939B", "cice 0x20 = 0x92D1", "cid 0x20 = 0x9265", "cihf 0x20 = 0x93DA", "cihm 0x20 = 0x928A", "cihq 0x20 = 0x927E", "cihr 0x20 = 0x937C", "cihs 0x20 = 0x92EE", "cihu 0x20 = 0x9217", "cii 0x20 = 0x9322", "ciih 0x20 = 0x93D2", "ciil 0x20 = 0x93AF", "cijb 0x20 = 0x92EA", "cije 0x20 = 0x92B6", "cikk 0x20 = 0x9238", "cilb 0x20 = 0x93DE", "cile 0x20 = 0x93EE", "cilr 0x20 = 0x9395", "cimbc 0x20 = 0x980C", "cimln 0x20 = 0x74EE", "cip 0x20 = 0x91F4", "cipf 0x20 = 0x9463", "cipm 0x20 = 0x927D", "cipp 0x20 = 0x92F1", "cir 0x20 = 0x9236", "cisyy 0x20 = 0x7FC1", "citc 0x20 = 0x942E", "cite 0x20 = 0x934D", "citf 0x20 = 0x93E3", "ciu 0x20 = 0x925E", "cixp 0x20 = 0x93D5", "cj 0x20 = 0x91DD", "cjbc 0x20 = 0x93AE", "cjbd 0x20 = 0x92CD", "cjbf 0x20 = 0x938D", "cjcr 0x20 = 0x9394", "cjii 0x20 = 0x93C4", "cjip 0x20 = 0x93F8", "cjka 0x20 = 0x937A", "cjki 0x20 = 0x92D0", "cjkp 0x20 = 0x92A0", "cjks 0x20 = 0x92AC", "cjmc 0x20 = 0x944C", "cjmcz 0x20 = 0x93D4", "cjmf 0x20 = 0x931D", "cjmm 0x20 = 0x9379", "cjmo 0x20 = 0x9320", "cjmoz 0x20 = 0x93B5", "cjmu 0x20 = 0x92CE", "cjnu 0x20 = 0x92FA", "cjp 0x20 = 0x9248", "cjpn 0x20 = 0x944F", "cjr 0x20 = 0x9237", "cjrr 0x20 = 0x9327", "cjtc 0x20 = 0x943C", "cjto 0x20 = 0x9473", "cjv 0x20 = 0x92A8", "ck 0x20 = 0x7236", "ckau 0x20 = 0x7238", "ckb 0x20 = 0x92AA", "ckcf 0x20 = 0x9410", "ckde 0x20 = 0x93A9", "ckgg 0x20 = 0x9377", "ckhml 0x20 = 0x65A7", "cki 0x20 = 0x9226", "ckib 0x20 = 0x9325", "ckiu 0x20 = 0x9283", "ckiz 0x20 = 0x921C", "ckjt 0x20 = 0x931B", "cklb 0x20 = 0x923D", "ckld 0x20 = 0x928C", "ckmf 0x20 = 0x933C", "ckmgc 0x20 = 0x91DC", "ckmr 0x20 = 0x9321", "ckms 0x20 = 0x9299", "ckn 0x20 = 0x9295", "cknin 0x20 = 0x7239", "cknz 0x20 = 0x91DA", "ckoo 0x20 = 0x92CF", "cksjl 0x20 = 0x723A", "ckz 0x20 = 0x91F1", "cl 0x20 = 0x4E2B", "clbk 0x20 = 0x9260", "clio 0x20 = 0x926F", "clll 0x20 = 0x91E7", "cllv 0x20 = 0x93E4", "clmc 0x20 = 0x9400", "cln 0x20 = 0x91D7", "clnc 0x20 = 0x9428", "clw 0x20 = 0x923E", "clx 0x20 = 0x93FD", "cm 0x20 = 0x91ED", "cma 0x20 = 0x9286", "cmbb 0x20 = 0x9450", "cmbc 0x20 = 0x9849", "cmbw 0x20 = 0x9433", "cmd 0x20 = 0x91EA", "cme 0x20 = 0x9211", "cmfb 0x20 = 0x9448", "cmfe 0x20 = 0x92C4", "cmfj 0x20 = 0x9294", "cmgi 0x20 = 0x923A", "cmgiz 0x20 = 0x92A9", "cmig 0x20 = 0x928D", "cmj 0x20 = 0x91EC", "cmjr 0x20 = 0x929B", "cmjx 0x20 = 0x9364", "cmll 0x20 = 0x9282", "cmlm 0x20 = 0x930F", "cmme 0x20 = 0x92A2", "cmmr 0x20 = 0x92D9", "cmms 0x20 = 0x91EB", "cmmv 0x20 = 0x92E0", "cmn 0x20 = 0x91D8", "cmnr 0x20 = 0x9233", "cmp 0x20 = 0x618C", "cmr 0x20 = 0x9250", "cmrb 0x20 = 0x9398", "cmrg 0x20 = 0x9469", "cmrt 0x20 = 0x92C0", "cmt 0x20 = 0x9203", "cmtn 0x20 = 0x9276", "cmua 0x20 = 0x9415", "cmvi 0x20 = 0x9392", "cmvm 0x20 = 0x92DE", "cmvs 0x20 = 0x516E", "cmwf 0x20 = 0x93E2", "cmwj 0x20 = 0x9414", "cmym 0x20 = 0x9266", "cmys 0x20 = 0x9223", "cn 0x20 = 0x91D4", "cnao 0x20 = 0x940C", "cnau 0x20 = 0x92AB", "cnd 0x20 = 0x91E8", "cndt 0x20 = 0x9333", "cng 0x20 = 0x9215", "cnhb 0x20 = 0x940D", "cnhd 0x20 = 0x9352", "cnhe 0x20 = 0x9212", "cnhs 0x20 = 0x91E2", "cnhx 0x20 = 0x930E", "cni 0x20 = 0x91F8", "cnii 0x20 = 0x93F9", "cnin 0x20 = 0x9279", "cnir 0x20 = 0x9298", "cnkg 0x20 = 0x92CC", "cnkm 0x20 = 0x92CB", "cnkq 0x20 = 0x9375", "cnl 0x20 = 0x920F", "cnlh 0x20 = 0x5F1F", "cnlhz 0x20 = 0x940A", "cnlr 0x20 = 0x9312", "cnlz 0x20 = 0x5F1A", "cnn 0x20 = 0x91D5", "cno 0x20 = 0x6B3D", "cnoe 0x20 = 0x93FA", "cnot 0x20 = 0x9419", "cnri 0x20 = 0x9471", "coae 0x20 = 0x9351", "cob 0x20 = 0x9209", "cod 0x20 = 0x929D", "cog 0x20 = 0x9310", "cogd 0x20 = 0x93F6", "cogf 0x20 = 0x940E", "cogj 0x20 = 0x93A8", "cogs 0x20 = 0x942B", "coim 0x20 = 0x946F", "colb 0x20 = 0x9253", "colh 0x20 = 0x9380", "colmi 0x20 = 0x87B8", "comb 0x20 = 0x9470", "combz 0x20 = 0x9300", "comg 0x20 = 0x9293", "comgz 0x20 = 0x928B", "comi 0x20 = 0x9234", "comn 0x20 = 0x9210", "como 0x20 = 0x9431", "comr 0x20 = 0x9397", "comrz 0x20 = 0x927F", "con 0x20 = 0x91F3", "cond 0x20 = 0x938E", "conk 0x20 = 0x936D", "conr 0x20 = 0x92E1", "coog 0x20 = 0x92BC", "cop 0x20 = 0x617E", "cor 0x20 = 0x8C37", "cowy 0x20 = 0x92C2", "cp 0x20 = 0x920A", "cph 0x20 = 0x924D", "cpi 0x20 = 0x91E3", "cpmm 0x20 = 0x921E", "cpou 0x20 = 0x92FE", "cpp 0x20 = 0x921A", "cppa 0x20 = 0x9347", "cpr 0x20 = 0x9264", "cpru 0x20 = 0x924B", "cptd 0x20 = 0x9371", "cpu 0x20 = 0x920D", "cpyr 0x20 = 0x9367", "cqd 0x20 = 0x9287", "cqhk 0x20 = 0x9365", "cqjm 0x20 = 0x93CF", "cqmb 0x20 = 0x9306", "cqmv 0x20 = 0x9336", "cqo 0x20 = 0x9207", "cr 0x20 = 0x91E6", "crb 0x20 = 0x92D7", "crhaf 0x20 = 0x9D52", "crhr 0x20 = 0x92C1", "crhu 0x20 = 0x514C", "crjcm 0x20 = 0x8C3E", "crki 0x20 = 0x8C39", "crmjk 0x20 = 0x8C43", "crnl 0x20 = 0x90E4", "crno 0x20 = 0x6B32", "crnq 0x20 = 0x8C3B", "cronr 0x20 = 0x8C3D", "crp 0x20 = 0x61D6", "crrd 0x20 = 0x9430", "crrs 0x20 = 0x9354", "crse 0x20 = 0x935C", "crsl 0x20 = 0x537B", "crsyh 0x20 = 0x8C42", "crtc 0x20 = 0x8C3C", "crup 0x20 = 0x9231", "crvc 0x20 = 0x9409", "crvk 0x20 = 0x92D8", "crybp 0x20 = 0x8C45", "cseg 0x20 = 0x93D7", "csei 0x20 = 0x9483", "csh 0x20 = 0x5206", "cshr 0x20 = 0x924A", "csj 0x20 = 0x927A", "csje 0x20 = 0x92F7", "csjj 0x20 = 0x9477", "csjr 0x20 = 0x92F8", "cslb 0x20 = 0x9254", "csme 0x20 = 0x92DF", "csmr 0x20 = 0x9270", "csmt 0x20 = 0x9451", "csmv 0x20 = 0x92F9", "csp 0x20 = 0x922E", "csqf 0x20 = 0x93B7", "csrr 0x20 = 0x93C2", "css 0x20 = 0x9245", "cssr 0x20 = 0x92E6", "csyh 0x20 = 0x93D0", "cta 0x20 = 0x932F", "ctak 0x20 = 0x93CC", "ctbc 0x20 = 0x932A", "ctbk 0x20 = 0x93FE", "ctct 0x20 = 0x93B0", "ctei 0x20 = 0x946E", "ctgi 0x20 = 0x9446", "ctgk 0x20 = 0x9382", "ctgm 0x20 = 0x9388", "ctgt 0x20 = 0x9449", "ctgu 0x20 = 0x9313", "ctis 0x20 = 0x9476", "ctm 0x20 = 0x9257", "ctma 0x20 = 0x9420", "ctmc 0x20 = 0x9324", "ctmo 0x20 = 0x93F7", "ctmq 0x20 = 0x93F5", "ctmv 0x20 = 0x9356", "ctoe 0x20 = 0x944A", "ctop 0x20 = 0x9335", "ctor 0x20 = 0x939D", "ctpd 0x20 = 0x9437", "ctrg 0x20 = 0x9475", "ctsr 0x20 = 0x9363", "ctt 0x20 = 0x927C", "ctub 0x20 = 0x9399", "ctvi 0x20 = 0x93A1", "ctw 0x20 = 0x9328", "ctwi 0x20 = 0x940F", "ctxc 0x20 = 0x938C", "ctyj 0x20 = 0x945D", "ctyv 0x20 = 0x92E9", "cu 0x20 = 0x91D3", "cuce 0x20 = 0x9350", "cuhqu 0x20 = 0x6BE4", "cumj 0x20 = 0x930C", "cumt 0x20 = 0x93A7", "cuob 0x20 = 0x9474", "cuog 0x20 = 0x93D9", "cuok 0x20 = 0x6553", "cv 0x20 = 0x91F9", "cvfr 0x20 = 0x9411", "cvid 0x20 = 0x9460", "cvio 0x20 = 0x9416", "cvmi 0x20 = 0x93D8", "cvne 0x20 = 0x9304", "cvr 0x20 = 0x92A3", "cvvu 0x20 = 0x945E", "cvvw 0x20 = 0x9319", "cw 0x20 = 0x923F", "cwa 0x20 = 0x66FE", "cwd 0x20 = 0x9301", "cwg 0x20 = 0x92F0", "cwjr 0x20 = 0x932E", "cwk 0x20 = 0x92A6", "cwl 0x20 = 0x9240", "cwlg 0x20 = 0x947C", "cwli 0x20 = 0x9432", "cwlj 0x20 = 0x9438", "cwlv 0x20 = 0x9436", "cwmv 0x20 = 0x9361", "cwp 0x20 = 0x9376", "cwtq 0x20 = 0x93CE", "cwvf 0x20 = 0x93CD", "cwwg 0x20 = 0x9478", "cwyi 0x20 = 0x9267", "cy 0x20 = 0x91D9", "cybb 0x20 = 0x9357", "cybbz 0x20 = 0x9439", "cybc 0x20 = 0x935E", "cybk 0x20 = 0x9480", "cybp 0x20 = 0x9468", "cybs 0x20 = 0x938A", "cycb 0x20 = 0x93D1", "cyck 0x20 = 0x9278", "cydk 0x20 = 0x9413", "cye 0x20 = 0x9219", "cyg 0x20 = 0x9252", "cygq 0x20 = 0x943D", "cyhaf 0x20 = 0x9DB2", "cyhn 0x20 = 0x9227", "cyhr 0x20 = 0x939A", "cyhs 0x20 = 0x9201", "cyhv 0x20 = 0x92A5", "cyj 0x20 = 0x9204", "cyjj 0x20 = 0x93C8", "cykm 0x20 = 0x93DF", "cylb 0x20 = 0x9230", "cymb 0x20 = 0x9339", "cymh 0x20 = 0x942C", "cymy 0x20 = 0x9272", "cypd 0x20 = 0x93EC", "cypo 0x20 = 0x943B", "cypp 0x20 = 0x9462", "cyps 0x20 = 0x942A", "cypt 0x20 = 0x946A", "cyr 0x20 = 0x9246", "cyrb 0x20 = 0x93AC", "cyrd 0x20 = 0x931E", "cyrv 0x20 = 0x9472", "cysk 0x20 = 0x93C3", "cyso 0x20 = 0x93C7", "cytg 0x20 = 0x9418", "cytj 0x20 = 0x92C5", "cyto 0x20 = 0x9429", "cytp 0x20 = 0x943F", "cytu 0x20 = 0x93E1", "cyvi 0x20 = 0x9249", "cywi 0x20 = 0x93C0", "cyx 0x20 = 0x9447", "d 0x20 = 0x6728", "da 0x20 = 0x6773", "dafu 0x20 = 0x69A5", "dagi 0x20 = 0x69AF", "dahu 0x20 = 0x6963", "dail 0x20 = 0x6956", "daiu 0x20 = 0x6982", "dam 0x20 = 0x67E5", "damh 0x20 = 0x694A", "damj 0x20 = 0x687F", "damz 0x20 = 0x67E6", "dang 0x20 = 0x6A4D", "danr 0x20 = 0x6ADA", "danw 0x20 = 0x6B04", "dapp 0x20 = 0x68CD", "dapv 0x20 = 0x696C", "dasy 0x20 = 0x69BB", "dau 0x20 = 0x6777", "dav 0x20 = 0x6839", "dawe 0x20 = 0x69FE", "db 0x20 = 0x673F", "dbac 0x20 = 0x69A0", "dbb 0x20 = 0x68DA", "dbbb 0x20 = 0x69BE", "dbcd 0x20 = 0x68CE", "dbcv 0x20 = 0x6AFB", "dbd 0x20 = 0x68CC", "dbdb 0x20 = 0x68D8", "dbdbz 0x20 = 0x68D7", "dbgr 0x20 = 0x6906", "dbhx 0x20 = 0x69C4", "dbjj 0x20 = 0x694E", "dbkf 0x20 = 0x6A6A", "dbln 0x20 = 0x523A", "dbm 0x20 = 0x67E4", "dbmc 0x20 = 0x6907", "dbme 0x20 = 0x6965", "dbmr 0x20 = 0x6850", "dbnd 0x20 = 0x6874", "dbo 0x20 = 0x50F0", "dbou 0x20 = 0x69A3", "dbsd 0x20 = 0x68E6", "dbse 0x20 = 0x68F4", "dbt 0x20 = 0x67F5", "dbtu 0x20 = 0x68E1", "dbu 0x20 = 0x76F8", "dbuc 0x20 = 0x6896", "dbug 0x20 = 0x6B0B", "dbv 0x20 = 0x6875", "dbvk 0x20 = 0x69BD", "dc 0x20 = 0x6733", "dcav 0x20 = 0x6AAD", "dchd 0x20 = 0x6915", "dci 0x20 = 0x677E", "dcip 0x20 = 0x68C7", "dcms 0x20 = 0x678D", "dcnh 0x20 = 0x68AF", "dcru 0x20 = 0x68B2", "dcsh 0x20 = 0x678C", "dcwa 0x20 = 0x6A67", "dd 0x20 = 0x6797", "ddam 0x20 = 0x6942", "ddb 0x20 = 0x681C", "ddbuh 0x20 = 0x9B31", "ddcsh 0x20 = 0x68FC", "ddd 0x20 = 0x68EE", "dddo 0x20 = 0x6A9A", "ddec 0x20 = 0x6AC7", "ddf 0x20 = 0x711A", "ddg 0x20 = 0x57DC", "ddh 0x20 = 0x6750", "ddhe 0x20 = 0x67C0", "ddhh 0x20 = 0x5F6C", "ddhni 0x20 = 0x68B5", "ddhniz 0x20 = 0x6A92", "ddi 0x20 = 0x6751", "ddixp 0x20 = 0x9E93", "ddj 0x20 = 0x67BA", "ddk 0x20 = 0x6A0A", "ddkli 0x20 = 0x881C", "ddkmr 0x20 = 0x792C", "ddkq 0x20 = 0x6500", "ddl 0x20 = 0x6880", "ddln 0x20 = 0x694B", "ddlo 0x20 = 0x6A15", "ddmmf 0x20 = 0x7981", "ddmq 0x20 = 0x6932", "ddnl 0x20 = 0x90F4", "ddnyo 0x20 = 0x695A", "ddomn 0x20 = 0x68FD", "ddoo 0x20 = 0x68F6", "ddp 0x20 = 0x61CB", "ddv 0x20 = 0x5A6A", "ddw 0x20 = 0x68DF", "ddwf 0x20 = 0x695D", "ddwz 0x20 = 0x6983", "deee 0x20 = 0x68F3", "defh 0x20 = 0x686B", "dei 0x20 = 0x6748", "deid 0x20 = 0x6A11", "dembc 0x20 = 0x9817", "demj 0x20 = 0x76AF", "depru 0x20 = 0x76B0", "df 0x20 = 0x6770", "dfb 0x20 = 0x68A2", "dfbd 0x20 = 0x6A56", "dfbf 0x20 = 0x6B13", "dfbg 0x20 = 0x6A18", "dfbh 0x20 = 0x6A55", "dfbw 0x20 = 0x6A94", "dfdq 0x20 = 0x6A49", "dff 0x20 = 0x68EA", "dffn 0x20 = 0x6A69", "dffs 0x20 = 0x6A6F", "dfh 0x20 = 0x676A", "dfle 0x20 = 0x96B8", "dfmu 0x20 = 0x6844", "dfou 0x20 = 0x68EC", "dfq 0x20 = 0x67C8", "dg 0x20 = 0x675C", "dgb 0x20 = 0x67DF", "dgce 0x20 = 0x68F1", "dgg 0x20 = 0x6842", "dggi 0x20 = 0x69F8", "dggu 0x20 = 0x6A48", "dgit 0x20 = 0x69BC", "dglc 0x20 = 0x6D7E", "dgni 0x20 = 0x6AAE", "dgou 0x20 = 0x6A3E", "dgow 0x20 = 0x6AA3", "dgr 0x20 = 0x6854", "dgrg 0x20 = 0x6AAF", "dgrv 0x20 = 0x69AC", "dgti 0x20 = 0x6A39", "dgwc 0x20 = 0x6ADD", "dh 0x20 = 0x624D", "dha 0x20 = 0x67CF", "dhab 0x20 = 0x68C9", "dhag 0x20 = 0x697B", "dhaj 0x20 = 0x69D4", "dhal 0x20 = 0x6ADB", "dhbu 0x20 = 0x6795", "dhbun 0x20 = 0x9F12", "dhcq 0x20 = 0x6AF8", "dhdf 0x20 = 0x6978", "dhdw 0x20 = 0x6A4E", "dhe 0x20 = 0x76AE", "dhej 0x20 = 0x687B", "dher 0x20 = 0x683C", "dhey 0x20 = 0x67CA", "dhge 0x20 = 0x6A93", "dhgr 0x20 = 0x688F", "dhhaf 0x20 = 0x9E09", "dhhh 0x20 = 0x6749", "dhhi 0x20 = 0x69AD", "dhhj 0x20 = 0x6911", "dhhw 0x20 = 0x69B4", "dhi 0x20 = 0x69D0", "dhij 0x20 = 0x6AC6", "dhio 0x20 = 0x67E7", "dhioz 0x20 = 0x67C9", "dhja 0x20 = 0x6AE1", "dhjd 0x20 = 0x682A", "dhje 0x20 = 0x6934", "dhjg 0x20 = 0x68F0", "dhjr 0x20 = 0x681D", "dhju 0x20 = 0x696F", "dhkb 0x20 = 0x6A4B", "dhlb 0x20 = 0x6940", "dhlc 0x20 = 0x6ACD", "dhll 0x20 = 0x67F3", "dhml 0x20 = 0x6790", "dhmu 0x20 = 0x6894", "dhmy 0x20 = 0x67DD", "dhn 0x20 = 0x673A", "dhne 0x20 = 0x6778", "dhni 0x20 = 0x6953", "dhniz 0x20 = 0x674B", "dhon 0x20 = 0x6841", "dhonz 0x20 = 0x693C", "dhoo 0x20 = 0x6A05", "dhpa 0x20 = 0x6A41", "dhpaz 0x20 = 0x68D4", "dhpm 0x20 = 0x67E2", "dhqo 0x20 = 0x67E3", "dhqu 0x20 = 0x6786", "dhsb 0x20 = 0x6944", "dhsk 0x20 = 0x6A84", "dhsu 0x20 = 0x69F4", "dhuc 0x20 = 0x6B11", "dhus 0x20 = 0x6ACB", "dhuu 0x20 = 0x6A47", "dhxo 0x20 = 0x6970", "dhyg 0x20 = 0x6A26", "dhyo 0x20 = 0x6843", "dhyu 0x20 = 0x69B9", "di 0x20 = 0x5BF8", "diav 0x20 = 0x6879", "dibi 0x20 = 0x6991", "dice 0x20 = 0x68AD", "digi 0x20 = 0x6AE5", "dihf 0x20 = 0x69ED", "dihr 0x20 = 0x6937", "dii 0x20 = 0x68E7", "diih 0x20 = 0x69EE", "diil 0x20 = 0x6994", "dije 0x20 = 0x6882", "dikk 0x20 = 0x67ED", "dilb 0x20 = 0x69E6", "diln 0x20 = 0x520C", "dilr 0x20 = 0x69B6", "dine 0x20 = 0x6AE0", "ding 0x20 = 0x69B3", "dip 0x20 = 0x6759", "dipc 0x20 = 0x6A32", "dipm 0x20 = 0x683B", "dirm 0x20 = 0x68EB", "dit 0x20 = 0x68B0", "dj 0x20 = 0x672B", "djbc 0x20 = 0x69D9", "djbd 0x20 = 0x6872", "djbj 0x20 = 0x6960", "djbm 0x20 = 0x690D", "djc 0x20 = 0x67FC", "djcm 0x20 = 0x690C", "djcr 0x20 = 0x6995", "djcs 0x20 = 0x69A8", "dje 0x20 = 0x679D", "djhr 0x20 = 0x6941", "djii 0x20 = 0x69EB", "djip 0x20 = 0x6A5E", "djji 0x20 = 0x6A76", "djk 0x20 = 0x6756", "djka 0x20 = 0x696E", "djkp 0x20 = 0x6833", "djks 0x20 = 0x6832", "djlv 0x20 = 0x68F2", "djmc 0x20 = 0x6AB3", "djmf 0x20 = 0x68D5", "djmm 0x20 = 0x6966", "djmo 0x20 = 0x6917", "djmu 0x20 = 0x68A1", "djp 0x20 = 0x67C1", "djpa 0x20 = 0x69B0", "djpn 0x20 = 0x6AB8", "djr 0x20 = 0x67AF", "djrb 0x20 = 0x695C", "djrj 0x20 = 0x6A6D", "djrr 0x20 = 0x68FA", "djtc 0x20 = 0x6A68", "djv 0x20 = 0x6849", "dk 0x20 = 0x592C", "dkb 0x20 = 0x682F", "dkcf 0x20 = 0x6A51", "dkde 0x20 = 0x6A27", "dkgg 0x20 = 0x694F", "dkhaf 0x20 = 0x9DD8", "dkhf 0x20 = 0x6891", "dkiv 0x20 = 0x68B3", "dkkb 0x20 = 0x6878", "dkkk 0x20 = 0x6A09", "dkld 0x20 = 0x682B", "dkmr 0x20 = 0x6905", "dkms 0x20 = 0x684D", "dkmym 0x20 = 0x6574", "dkn 0x20 = 0x684B", "dknz 0x20 = 0x6739", "dkok 0x20 = 0x69C9", "dkoo 0x20 = 0x689C", "dkp 0x20 = 0x6196", "dks 0x20 = 0x6738", "dkso 0x20 = 0x69EC", "dksr 0x20 = 0x67B7", "dksrz 0x20 = 0x6AB6", "dkvt 0x20 = 0x6A40", "dkz 0x20 = 0x6755", "dl 0x20 = 0x675F", "dlbk 0x20 = 0x67CD", "dle 0x20 = 0x68E3", "dlha 0x20 = 0x7699", "dlksf 0x20 = 0x9D92", "dllmi 0x20 = 0x8724", "dlln 0x20 = 0x524C", "dllnz 0x20 = 0x67EB", "dllv 0x20 = 0x6A13", "dlmc 0x20 = 0x6A3B", "dlmy 0x20 = 0x68D1", "dlno 0x20 = 0x6B36", "dlok 0x20 = 0x6555", "dlp 0x20 = 0x60C1", "dlshc 0x20 = 0x8CF4", "dlw 0x20 = 0x67DA", "dlwl 0x20 = 0x67DB", "dlws 0x20 = 0x68AC", "dlx 0x20 = 0x6A5A", "dlxl 0x20 = 0x68E9", "dm 0x20 = 0x672C", "dmam 0x20 = 0x6853", "dmbb 0x20 = 0x6ABD", "dmbc 0x20 = 0x69D3", "dmbe 0x20 = 0x6ACC", "dmbl 0x20 = 0x682D", "dmbm 0x20 = 0x6B1E", "dmbr 0x20 = 0x6AFA", "dmbs 0x20 = 0x6A17", "dmbw 0x20 = 0x6A91", "dmcw 0x20 = 0x6816", "dmd 0x20 = 0x6745", "dmdm 0x20 = 0x6AEA", "dme 0x20 = 0x677F", "dmem 0x20 = 0x6975", "dmf 0x20 = 0x676F", "dmfb 0x20 = 0x6AB7", "dmfj 0x20 = 0x67B0", "dmfm 0x20 = 0x67F8", "dmfn 0x20 = 0x6AA6", "dmfr 0x20 = 0x686E", "dmg 0x20 = 0x6789", "dmgt 0x20 = 0x6887", "dmhf 0x20 = 0x699E", "dmia 0x20 = 0x6997", "dmig 0x20 = 0x684E", "dmj 0x20 = 0x6746", "dmjk 0x20 = 0x6A44", "dmlk 0x20 = 0x6897", "dmll 0x20 = 0x6826", "dmlm 0x20 = 0x690F", "dmmf 0x20 = 0x67F0", "dmmi 0x20 = 0x679F", "dmmo 0x20 = 0x6828", "dmmp 0x20 = 0x6B10", "dmmr 0x20 = 0x68A7", "dmms 0x20 = 0x6747", "dmmu 0x20 = 0x676C", "dmmv 0x20 = 0x686D", "dmn 0x20 = 0x673E", "dmnl 0x20 = 0x684F", "dmnn 0x20 = 0x6835", "dmnr 0x20 = 0x67EF", "dmob 0x20 = 0x67C4", "dmr 0x20 = 0x67D8", "dmrg 0x20 = 0x6AEE", "dmrq 0x20 = 0x97CB", "dmrt 0x20 = 0x68AA", "dmrw 0x20 = 0x6945", "dmso 0x20 = 0x6913", "dmsu 0x20 = 0x6799", "dmsyy 0x20 = 0x7FC9", "dmt 0x20 = 0x6785", "dmto 0x20 = 0x6A5B", "dmu 0x20 = 0x674C", "dmue 0x20 = 0x698E", "dmvh 0x20 = 0x6792", "dmvm 0x20 = 0x6791", "dmvmz 0x20 = 0x6871", "dmvs 0x20 = 0x673D", "dmvvq 0x20 = 0x821D", "dmwc 0x20 = 0x6A9F", "dmwf 0x20 = 0x6A19", "dmwfz 0x20 = 0x69F1", "dmwj 0x20 = 0x6A5D", "dmwm 0x20 = 0x6A7F", "dmz 0x20 = 0x6760", "dnao 0x20 = 0x6A61", "dnbg 0x20 = 0x6877", "dnbj 0x20 = 0x69F2", "dnbq 0x20 = 0x6A9E", "dncr 0x20 = 0x6A90", "dnd 0x20 = 0x674E", "dndf 0x20 = 0x69C2", "dndz 0x20 = 0x674D", "dnet 0x20 = 0x6979", "dnfd 0x20 = 0x6AEF", "dng 0x20 = 0x677B", "dnhb 0x20 = 0x6A58", "dnhd 0x20 = 0x697A", "dnhdz 0x20 = 0x6959", "dnhe 0x20 = 0x6781", "dnib 0x20 = 0x6876", "dnin 0x20 = 0x677C", "dninz 0x20 = 0x6818", "dnkg 0x20 = 0x6883", "dnkm 0x20 = 0x68B4", "dnkq 0x20 = 0x6957", "dnlb 0x20 = 0x6A62", "dnlw 0x20 = 0x6A04", "dnmu 0x20 = 0x6845", "dno 0x20 = 0x6774", "dnob 0x20 = 0x6948", "dnok 0x20 = 0x6951", "dnot 0x20 = 0x6A59", "dnq 0x20 = 0x63E7", "dnqd 0x20 = 0x69A4", "dnri 0x20 = 0x6B03", "dnwa 0x20 = 0x6AD3", "dob 0x20 = 0x6798", "dobg 0x20 = 0x69B7", "dobuc 0x20 = 0x8CDA", "doby 0x20 = 0x6834", "dodi 0x20 = 0x67CE", "doe 0x20 = 0x687C", "dog 0x20 = 0x690E", "dogf 0x20 = 0x6A35", "dogj 0x20 = 0x69AB", "dogs 0x20 = 0x6A87", "dohaf 0x20 = 0x9D86", "doik 0x20 = 0x730C", "doim 0x20 = 0x6AFC", "doj 0x20 = 0x6775", "dok 0x20 = 0x679A", "dokr 0x20 = 0x6925", "dolb 0x20 = 0x6A07", "doma 0x20 = 0x6A9C", "domb 0x20 = 0x68C6", "domd 0x20 = 0x688C", "domg 0x20 = 0x6813", "domi 0x20 = 0x67C3", "domk 0x20 = 0x6969", "domn 0x20 = 0x6986", "domnz 0x20 = 0x6794", "domo 0x20 = 0x6AA2", "domr 0x20 = 0x69CD", "don 0x20 = 0x675A", "donl 0x20 = 0x90F2", "donp 0x20 = 0x68EF", "donr 0x20 = 0x6892", "doo 0x20 = 0x4F86", "doog 0x20 = 0x687D", "dop 0x20 = 0x6779", "dopd 0x20 = 0x67C2", "dos 0x20 = 0x67DE", "dowy 0x20 = 0x6885", "doyb 0x20 = 0x6A8E", "dp 0x20 = 0x677A", "dpa 0x20 = 0x6812", "dpaz 0x20 = 0x683A", "dpd 0x20 = 0x675D", "dpfd 0x20 = 0x6908", "dph 0x20 = 0x67F2", "dpht 0x20 = 0x6993", "dpi 0x20 = 0x6753", "dpiz 0x20 = 0x6784", "dpmm 0x20 = 0x6783", "dpp 0x20 = 0x6787", "dppa 0x20 = 0x6977", "dppg 0x20 = 0x6890", "dpr 0x20 = 0x67B8", "dpru 0x20 = 0x67B9", "dpt 0x20 = 0x67BB", "dptd 0x20 = 0x696A", "dpu 0x20 = 0x6776", "dpz 0x20 = 0x673C", "dq 0x20 = 0x677D", "dqbhx 0x20 = 0x97DC", "dqbjj 0x20 = 0x97D7", "dqdj 0x20 = 0x97CE", "dqgwc 0x20 = 0x97E5", "dqhaj 0x20 = 0x97DF", "dqhk 0x20 = 0x6954", "dqikk 0x20 = 0x97CD", "dqjl 0x20 = 0x6886", "dqjm 0x20 = 0x69E5", "dqka 0x20 = 0x693F", "dqkd 0x20 = 0x699B", "dqkk 0x20 = 0x6971", "dqkq 0x20 = 0x68D2", "dqkx 0x20 = 0x6A01", "dqmb 0x20 = 0x68C8", "dqmc 0x20 = 0x6A0D", "dqmf 0x20 = 0x69A1", "dqnhd 0x20 = 0x97D6", "dqnl 0x20 = 0x90FC", "dqo 0x20 = 0x678E", "dqomr 0x20 = 0x97D0", "dqou 0x20 = 0x69FB", "dqptd 0x20 = 0x97D8", "dqshi 0x20 = 0x97CC", "dqsmv 0x20 = 0x97D4", "dqtmq 0x20 = 0x97E1", "dqttb 0x20 = 0x97DD", "dqwli 0x20 = 0x97E3", "dqwot 0x20 = 0x97DE", "dqyrd 0x20 = 0x97D5", "dr 0x20 = 0x674F", "drb 0x20 = 0x688B", "drc 0x20 = 0x67B3", "drhg 0x20 = 0x686F", "drhr 0x20 = 0x68A0", "drhs 0x20 = 0x67FA", "drhu 0x20 = 0x67F7", "drms 0x20 = 0x67B5", "drrd 0x20 = 0x6A7E", "drrj 0x20 = 0x6A3F", "drse 0x20 = 0x6935", "drsh 0x20 = 0x67B4", "drsj 0x20 = 0x696B", "dsav 0x20 = 0x693B", "dsei 0x20 = 0x6B18", "dseq 0x20 = 0x6A28", "dsfb 0x20 = 0x698D", "dsj 0x20 = 0x682E", "dsje 0x20 = 0x68F7", "dsjl 0x20 = 0x6930", "dsjr 0x20 = 0x6910", "dskr 0x20 = 0x687E", "dslc 0x20 = 0x6AC3", "dsly 0x20 = 0x69A7", "dsme 0x20 = 0x68AB", "dsmg 0x20 = 0x6846", "dsmr 0x20 = 0x67CC", "dsmt 0x20 = 0x6ABB", "dsmv 0x20 = 0x68D6", "dsnd 0x20 = 0x6A3C", "dsno 0x20 = 0x67E9", "dsp 0x20 = 0x67C5", "dsqf 0x20 = 0x69AA", "dsql 0x20 = 0x689B", "dsrg 0x20 = 0x6A89", "dsrr 0x20 = 0x6A1E", "dss 0x20 = 0x67DC", "dssr 0x20 = 0x68AE", "dstv 0x20 = 0x6990", "dsu 0x20 = 0x675E", "dswu 0x20 = 0x6B16", "dsya 0x20 = 0x69E2", "dsyg 0x20 = 0x6AC2", "dsyh 0x20 = 0x6A1B", "dsyy 0x20 = 0x6829", "dta 0x20 = 0x68E4", "dtak 0x20 = 0x6A21", "dtaw 0x20 = 0x6B17", "dtbo 0x20 = 0x6AAC", "dtc 0x20 = 0x6831", "dtcw 0x20 = 0x6962", "dtei 0x20 = 0x6B02", "dtge 0x20 = 0x6A23", "dtgf 0x20 = 0x699A", "dtgi 0x20 = 0x6AA5", "dtgm 0x20 = 0x69CE", "dtgo 0x20 = 0x6AA8", "dtgr 0x20 = 0x6A4F", "dthj 0x20 = 0x6A25", "dtjr 0x20 = 0x695B", "dtk 0x20 = 0x681A", "dtkr 0x20 = 0x6949", "dtlb 0x20 = 0x6A20", "dtlm 0x20 = 0x69FF", "dtlx 0x20 = 0x6AF9", "dtm 0x20 = 0x67D1", "dtmc 0x20 = 0x6A6B", "dtmcz 0x20 = 0x68CB", "dtme 0x20 = 0x6B09", "dtmo 0x20 = 0x6A38", "dtmq 0x20 = 0x6A3A", "dtmv 0x20 = 0x6939", "dtoe 0x20 = 0x6AB4", "dtor 0x20 = 0x6999", "dtpa 0x20 = 0x69C6", "dtrg 0x20 = 0x6B0A", "dtsj 0x20 = 0x69B5", "dtsr 0x20 = 0x6AD9", "dtt 0x20 = 0x681F", "dttb 0x20 = 0x69CB", "dttm 0x20 = 0x692A", "dtwa 0x20 = 0x69FD", "dtwi 0x20 = 0x6A3D", "dtxc 0x20 = 0x69CF", "du 0x20 = 0x672D", "duch 0x20 = 0x68A4", "dulmi 0x20 = 0x86BB", "dumb 0x20 = 0x692F", "dumt 0x20 = 0x69BF", "duob 0x20 = 0x6B08", "duon 0x20 = 0x68A3", "dup 0x20 = 0x60F3", "duu 0x20 = 0x67EE", "duvif 0x20 = 0x7D2E", "dvfo 0x20 = 0x6ADE", "dvid 0x20 = 0x6ADF", "dvio 0x20 = 0x6A5F", "dvis 0x20 = 0x67EA", "dvl 0x20 = 0x673B", "dvmg 0x20 = 0x6889", "dvno 0x20 = 0x693D", "dvoi 0x20 = 0x6B1A", "dvvd 0x20 = 0x6A14", "dvvw 0x20 = 0x6914", "dw 0x20 = 0x6771", "dwc 0x20 = 0x67F6", "dwd 0x20 = 0x68F5", "dwdz 0x20 = 0x68B1", "dwf 0x20 = 0x67EC", "dwg 0x20 = 0x68A9", "dwhaf 0x20 = 0x9D87", "dwhd 0x20 = 0x68DE", "dwim 0x20 = 0x69F6", "dwjr 0x20 = 0x68DD", "dwl 0x20 = 0x67D9", "dwlg 0x20 = 0x6B0F", "dwlj 0x20 = 0x6AA1", "dwls 0x20 = 0x695E", "dwly 0x20 = 0x6A8C", "dwmv 0x20 = 0x6933", "dwp 0x20 = 0x6952", "dwvf 0x20 = 0x6A0F", "dwwf 0x20 = 0x6B19", "dwww 0x20 = 0x6AD1", "dy 0x20 = 0x6734", "dyaj 0x20 = 0x68F9", "dybb 0x20 = 0x6A9B", "dybbz 0x20 = 0x6974", "dybc 0x20 = 0x6968", "dybp 0x20 = 0x6AF3", "dybs 0x20 = 0x699C", "dycb 0x20 = 0x6A00", "dyck 0x20 = 0x6821", "dydk 0x20 = 0x6A54", "dydl 0x20 = 0x69E8", "dydu 0x20 = 0x6AEC", "dyfe 0x20 = 0x6912", "dyg 0x20 = 0x67F1", "dyhn 0x20 = 0x676D", "dyhr 0x20 = 0x69CC", "dyhs 0x20 = 0x678B", "dyia 0x20 = 0x6A34", "dyj 0x20 = 0x6793", "dyjj 0x20 = 0x69E4", "dykh 0x20 = 0x694C", "dylb 0x20 = 0x67FF", "dymh 0x20 = 0x6A85", "dymu 0x20 = 0x6ACF", "dynv 0x20 = 0x6A60", "dyoj 0x20 = 0x690A", "dypk 0x20 = 0x69A9", "dypm 0x20 = 0x6A1D", "dypt 0x20 = 0x6AE8", "dyr 0x20 = 0x67AE", "dyra 0x20 = 0x6AE7", "dyrb 0x20 = 0x69C1", "dyrf 0x20 = 0x690B", "dyrn 0x20 = 0x695F", "dyro 0x20 = 0x6ABA", "dyrv 0x20 = 0x6B00", "dysd 0x20 = 0x6938", "dysr 0x20 = 0x6AB9", "dysy 0x20 = 0x68DC", "dyt 0x20 = 0x67C6", "dytg 0x20 = 0x6A66", "dytj 0x20 = 0x6A1F", "dytjz 0x20 = 0x6893", "dyto 0x20 = 0x6A96", "dytp 0x20 = 0x6A8D", "dytr 0x20 = 0x68D3", "dytu 0x20 = 0x6AA4", "dytuz 0x20 = 0x6A08", "dytv 0x20 = 0x6904", "dyub 0x20 = 0x6A06", "dyvo 0x20 = 0x6838", "dywd 0x20 = 0x6A81", "dywm 0x20 = 0x6A80", "dywv 0x20 = 0x6AF0", "dywvz 0x20 = 0x69B1", "dyx 0x20 = 0x6AC5", "e 0x20 = 0x6C34", "ea 0x20 = 0x6C68", "eaa 0x20 = 0x6DD0", "eafc 0x20 = 0x7066", "eafcz 0x20 = 0x705D", "eafu 0x20 = 0x6EC9", "eag 0x20 = 0x6D85", "eagi 0x20 = 0x6EA1", "eahm 0x20 = 0x6E66", "eahu 0x20 = 0x6E44", "eaiu 0x20 = 0x6E89", "eam 0x20 = 0x6CF9", "eamh 0x20 = 0x6E6F", "eami 0x20 = 0x6DC2", "eamj 0x20 = 0x6D86", "eamk 0x20 = 0x6DCF", "eamo 0x20 = 0x6E5C", "eana 0x20 = 0x6F97", "eand 0x20 = 0x6F96", "eane 0x20 = 0x7041", "eang 0x20 = 0x6F64", "eanj 0x20 = 0x705B", "eank 0x20 = 0x6F63", "eanw 0x20 = 0x703E", "eapp 0x20 = 0x6DF7", "eapv 0x20 = 0x6E34", "eate 0x20 = 0x7011", "eavf 0x20 = 0x6FD5", "eawe 0x20 = 0x6F2B", "eayf 0x20 = 0x6F8B", "eaz 0x20 = 0x6C69", "eazz 0x20 = 0x6C93", "ebac 0x20 = 0x6E9F", "ebau 0x20 = 0x6DDD", "ebb 0x20 = 0x6DDC", "ebbb 0x20 = 0x6ED1", "ebbr 0x20 = 0x6E26", "ebbu 0x20 = 0x6F1E", "ebcd 0x20 = 0x6DF1", "ebci 0x20 = 0x6FFA", "ebcn 0x20 = 0x6E2C", "ebcr 0x20 = 0x6D7B", "ebcrz 0x20 = 0x6ED8", "ebcv 0x20 = 0x7034", "ebgr 0x20 = 0x6DCD", "ebhg 0x20 = 0x6DEB", "ebhu 0x20 = 0x6C89", "ebhx 0x20 = 0x6ED4", "ebjj 0x20 = 0x6E3E", "ebkf 0x20 = 0x9E02", "ebm 0x20 = 0x6CAE", "ebme 0x20 = 0x6E72", "ebmp 0x20 = 0x6FE6", "ebmr 0x20 = 0x6D1E", "ebnd 0x20 = 0x6D6E", "ebof 0x20 = 0x6F08", "ebp 0x20 = 0x61E3", "ebpz 0x20 = 0x61D8", "ebr 0x20 = 0x6CC2", "ebsd 0x20 = 0x6DE8", "ebuc 0x20 = 0x6D7F", "ebug 0x20 = 0x7048", "ebugz 0x20 = 0x6FC9", "ebuh 0x20 = 0x6E3A", "ebuk 0x20 = 0x6E68", "ebun 0x20 = 0x6FCE", "ebuu 0x20 = 0x6D80", "ebv 0x20 = 0x6D7D", "ebvk 0x20 = 0x6EAA", "ebwi 0x20 = 0x7042", "ebyh 0x20 = 0x6D75", "ec 0x20 = 0x6DE6", "ecc 0x20 = 0x9359", "echt 0x20 = 0x6E53", "eciy 0x20 = 0x6EC3", "eckc 0x20 = 0x6ECF", "ecnh 0x20 = 0x6D95", "ecor 0x20 = 0x6D74", "ecr 0x20 = 0x6CBF", "ecru 0x20 = 0x6D97", "ecsh 0x20 = 0x6C7E", "ecwa 0x20 = 0x6F67", "ecz 0x20 = 0x6C43", "ed 0x20 = 0x6C90", "edam 0x20 = 0x6E23", "edbt 0x20 = 0x76D3", "edbu 0x20 = 0x6E58", "edci 0x20 = 0x6DDE", "edd 0x20 = 0x6DCB", "eddb 0x20 = 0x6F78", "eddf 0x20 = 0x6FBF", "eddg 0x20 = 0x6F1C", "eddh 0x20 = 0x706A", "eddn 0x20 = 0x6EFC", "eddo 0x20 = 0x6FCB", "edg 0x20 = 0x5857", "edgg 0x20 = 0x6E8E", "edhe 0x20 = 0x6CE2", "edhl 0x20 = 0x6DC5", "edj 0x20 = 0x6CAB", "edk 0x20 = 0x6C7A", "edl 0x20 = 0x6D91", "edlc 0x20 = 0x7028", "edlo 0x20 = 0x6F31", "edm 0x20 = 0x6CCD", "edmbc 0x20 = 0x9859", "edmf 0x20 = 0x6E3F", "edmq 0x20 = 0x6E4B", "edoe 0x20 = 0x6F06", "edoo 0x20 = 0x6DF6", "edw 0x20 = 0x6DB7", "edwf 0x20 = 0x6E45", "ee 0x20 = 0x6C9D", "eea 0x20 = 0x6DBE", "eee 0x20 = 0x6DFC", "eeed 0x20 = 0x6851", "eeeef 0x20 = 0x9D7D", "eeeek 0x20 = 0x656A", "eeeen 0x20 = 0x525F", "eeeeo 0x20 = 0x6B3C", "eeeeu 0x20 = 0x6BF2", "eei 0x20 = 0x6C4A", "eeii 0x20 = 0x6E9E", "eemr 0x20 = 0x7886", "eetb 0x20 = 0x6FF7", "eev 0x20 = 0x5A46", "efb 0x20 = 0x6D88", "efbg 0x20 = 0x6F1F", "efbk 0x20 = 0x6F4E", "efbr 0x20 = 0x6DCC", "efbw 0x20 = 0x6FA2", "efdc 0x20 = 0x7035", "efdq 0x20 = 0x6F7E", "eff 0x20 = 0x6DE1", "effe 0x20 = 0x6FF4", "efff 0x20 = 0x7020", "effi 0x20 = 0x7005", "effr 0x20 = 0x702F", "effs 0x20 = 0x6F87", "efh 0x20 = 0x6C99", "efhu 0x20 = 0x6E3B", "efmu 0x20 = 0x6D38", "efof 0x20 = 0x6F6B", "efq 0x20 = 0x6CEE", "eg 0x20 = 0x5723", "egce 0x20 = 0x6DE9", "egcg 0x20 = 0x6DD5", "egde 0x20 = 0x6FF2", "egdez 0x20 = 0x7014", "egfe 0x20 = 0x702B", "egg 0x20 = 0x6D3C", "eggu 0x20 = 0x6F86", "eggz 0x20 = 0x5863", "egi 0x20 = 0x6CD5", "egic 0x20 = 0x703B", "egir 0x20 = 0x6E3D", "egit 0x20 = 0x6E98", "egj 0x20 = 0x6E96", "egni 0x20 = 0x6FE4", "egow 0x20 = 0x6FC7", "egr 0x20 = 0x6D01", "egrv 0x20 = 0x6E92", "egsk 0x20 = 0x6EF6", "egth 0x20 = 0x6F8E", "egti 0x20 = 0x6F8D", "egtj 0x20 = 0x6DAC", "egwc 0x20 = 0x7006", "eha 0x20 = 0x6CCA", "ehag 0x20 = 0x6E5F", "ehaj 0x20 = 0x6EDC", "ehal 0x20 = 0x7004", "ehar 0x20 = 0x6F94", "ehbk 0x20 = 0x6FB3", "ehbn 0x20 = 0x6DDB", "ehbt 0x20 = 0x76EA", "ehbtz 0x20 = 0x6D2B", "ehbu 0x20 = 0x6C88", "ehbuz 0x20 = 0x6D0E", "ehbuzz 0x20 = 0x705A", "ehby 0x20 = 0x6D00", "ehcn 0x20 = 0x700F", "ehdb 0x20 = 0x6F72", "ehde 0x20 = 0x6F7B", "ehdf 0x20 = 0x6E6B", "ehdn 0x20 = 0x6D70", "ehdp 0x20 = 0x6E97", "ehdw 0x20 = 0x6F58", "eheq 0x20 = 0x6D1A", "eher 0x20 = 0x6D1B", "ehet 0x20 = 0x700A", "ehf 0x20 = 0x71D9", "ehgr 0x20 = 0x6D69", "ehgu 0x20 = 0x6D17", "ehhv 0x20 = 0x6D3E", "ehhw 0x20 = 0x6E9C", "ehi 0x20 = 0x6EBE", "ehio 0x20 = 0x6CDB", "ehioz 0x20 = 0x6CD2", "ehjd 0x20 = 0x6D19", "ehjg 0x20 = 0x6E69", "ehjr 0x20 = 0x6D3B", "ehk 0x20 = 0x6C83", "ehll 0x20 = 0x6CD6", "ehlq 0x20 = 0x6F77", "ehmgi 0x20 = 0x7497", "ehml 0x20 = 0x6C82", "ehmo 0x20 = 0x6FA8", "ehmr 0x20 = 0x6D09", "ehmrz 0x20 = 0x7870", "ehmy 0x20 = 0x6CDD", "ehni 0x20 = 0x6C4E", "ehniz 0x20 = 0x6E22", "ehnn 0x20 = 0x6D2C", "ehnwf 0x20 = 0x9BCA", "ehob 0x20 = 0x6F43", "ehoe 0x20 = 0x6F93", "ehon 0x20 = 0x6D10", "ehoo 0x20 = 0x6F07", "ehooz 0x20 = 0x6F0E", "ehpa 0x20 = 0x6DBD", "ehpm 0x20 = 0x6CDC", "ehq 0x20 = 0x6332", "ehqi 0x20 = 0x6D90", "ehqj 0x20 = 0x6E43", "ehqm 0x20 = 0x6CE9", "ehqo 0x20 = 0x6CC6", "ehrb 0x20 = 0x6EAE", "ehsd 0x20 = 0x6DED", "ehsk 0x20 = 0x6FC0", "ehskz 0x20 = 0x6DDA", "ehsu 0x20 = 0x6EEC", "ehuc 0x20 = 0x7029", "ehucz 0x20 = 0x7052", "ehuk 0x20 = 0x6EB4", "ehul 0x20 = 0x6FDE", "ehup 0x20 = 0x6C66", "ehv 0x20 = 0x5A11", "ehvu 0x20 = 0x6E5A", "ehxe 0x20 = 0x6EB2", "ehxf 0x20 = 0x6F5F", "ehxu 0x20 = 0x6DE3", "ehyhv 0x20 = 0x88DF", "ehyo 0x20 = 0x6D2E", "ei 0x20 = 0x53C9", "eiav 0x20 = 0x6D6A", "eibi 0x20 = 0x6EA5", "eice 0x20 = 0x6D5A", "eid 0x20 = 0x6881", "eidy 0x20 = 0x7056", "eidz 0x20 = 0x6CAD", "eifd 0x20 = 0x7CB1", "eihf 0x20 = 0x6EC5", "eihq 0x20 = 0x6D20", "eihr 0x20 = 0x6E1B", "eihu 0x20 = 0x6C87", "eii 0x20 = 0x6DFA", "eiih 0x20 = 0x6EF2", "eijb 0x20 = 0x6D66", "eik 0x20 = 0x6C71", "eikf 0x20 = 0x6E88", "eikk 0x20 = 0x6CB7", "eiku 0x20 = 0x6C8B", "eilb 0x20 = 0x6EFD", "eile 0x20 = 0x6F2E", "eilmi 0x20 = 0x86A4", "eilr 0x20 = 0x6E8F", "eine 0x20 = 0x6CF3", "eiok 0x20 = 0x6D98", "eipf 0x20 = 0x700C", "eir 0x20 = 0x6CBB", "eirm 0x20 = 0x6DE2", "eirp 0x20 = 0x6FB8", "eitc 0x20 = 0x6FC2", "eitcz 0x20 = 0x7007", "eite 0x20 = 0x6E21", "eiu 0x20 = 0x6CE7", "eiwg 0x20 = 0x700D", "eixp 0x20 = 0x6F09", "ej 0x20 = 0x6C41", "ejb 0x20 = 0x6C9B", "ejbc 0x20 = 0x6EC7", "ejbd 0x20 = 0x6D61", "ejbf 0x20 = 0x6EB9", "ejbj 0x20 = 0x6E73", "ejbm 0x20 = 0x6DD4", "ejbv 0x20 = 0x7062", "ejc 0x20 = 0x6CEC", "ejcg 0x20 = 0x6F25", "ejck 0x20 = 0x6E65", "ejcm 0x20 = 0x6DB3", "ejco 0x20 = 0x6E9B", "ejcr 0x20 = 0x6EB6", "ejd 0x20 = 0x6CAC", "ejds 0x20 = 0x6E24", "ejdz 0x20 = 0x6D68", "eje 0x20 = 0x6C65", "ejhf 0x20 = 0x7009", "ejhq 0x20 = 0x6D76", "ejhw 0x20 = 0x700B", "ejii 0x20 = 0x6F19", "ejik 0x20 = 0x6D8B", "ejip 0x20 = 0x6F53", "ejjb 0x20 = 0x6F6E", "ejjj 0x20 = 0x6FA3", "ejjjz 0x20 = 0x6FE3", "ejjl 0x20 = 0x6F38", "ejjn 0x20 = 0x6F27", "ejjy 0x20 = 0x701A", "ejka 0x20 = 0x6E1A", "ejkd 0x20 = 0x6D8D", "ejki 0x20 = 0x6D64", "ejks 0x20 = 0x6D18", "ejlv 0x20 = 0x6DD2", "ejmc 0x20 = 0x6F14", "ejmcz 0x20 = 0x6FF1", "ejme 0x20 = 0x6EF1", "ejmf 0x20 = 0x6DD9", "ejmm 0x20 = 0x6E32", "ejmn 0x20 = 0x6CDE", "ejmo 0x20 = 0x6DC0", "ejmu 0x20 = 0x6D63", "ejnu 0x20 = 0x6DB4", "ejp 0x20 = 0x6CB1", "ejpn 0x20 = 0x6FD8", "ejpu 0x20 = 0x6EF5", "ejqp 0x20 = 0x7017", "ejr 0x20 = 0x6CBD", "ejrb 0x20 = 0x6E56", "ejrr 0x20 = 0x6DAB", "ejtc 0x20 = 0x6FC6", "ejv 0x20 = 0x6D1D", "ejye 0x20 = 0x6F03", "ejyj 0x20 = 0x6ED3", "ek 0x20 = 0x6C4F", "ekb 0x20 = 0x6D27", "ekbk 0x20 = 0x6F88", "ekc 0x20 = 0x92C8", "ekcf 0x20 = 0x6F66", "ekf 0x20 = 0x6D03", "ekhr 0x20 = 0x6F2A", "eki 0x20 = 0x6C70", "ekib 0x20 = 0x6DEF", "ekiv 0x20 = 0x6D41", "ekiz 0x20 = 0x6C6F", "ekjt 0x20 = 0x6E00", "ekkb 0x20 = 0x6DC6", "ekkbz 0x20 = 0x6D60", "ekkk 0x20 = 0x6F3A", "ekld 0x20 = 0x6D0A", "eklv 0x20 = 0x6DF9", "ekms 0x20 = 0x6D3F", "ekn 0x20 = 0x6D1F", "ekni 0x20 = 0x6C4D", "eknz 0x20 = 0x6C3F", "ekoo 0x20 = 0x6D79", "ekpb 0x20 = 0x6EEF", "eks 0x20 = 0x6C3B", "eksr 0x20 = 0x6CC7", "el 0x20 = 0x6C96", "elbk 0x20 = 0x6CF1", "elg 0x20 = 0x57BD", "elgm 0x20 = 0x6F85", "elhi 0x20 = 0x9B59", "elim 0x20 = 0x6E31", "elimz 0x20 = 0x7057", "elll 0x20 = 0x6C4C", "elln 0x20 = 0x6CB8", "ellnz 0x20 = 0x6C9C", "ellp 0x20 = 0x6F36", "ellv 0x20 = 0x6F0A", "elmc 0x20 = 0x6F70", "elmt 0x20 = 0x6FDC", "elq 0x20 = 0x6D25", "elw 0x20 = 0x6CB9", "elwp 0x20 = 0x6D29", "elws 0x20 = 0x6D84", "elx 0x20 = 0x6F5A", "elxh 0x20 = 0x6CF2", "elxl 0x20 = 0x6DF5", "em 0x20 = 0x6C5F", "emam 0x20 = 0x6D39", "embb 0x20 = 0x6FE1", "embbz 0x20 = 0x705E", "embe 0x20 = 0x7000", "embg 0x20 = 0x7016", "embi 0x20 = 0x701C", "embiz 0x20 = 0x6FAA", "embizz 0x20 = 0x6F90", "embk 0x20 = 0x6E1C", "embl 0x20 = 0x6D0F", "embu 0x20 = 0x7040", "emcw 0x20 = 0x9152", "emcwz 0x20 = 0x6D12", "emd 0x20 = 0x6C59", "emdm 0x20 = 0x701D", "eme 0x20 = 0x6C73", "emfb 0x20 = 0x6FD4", "emfj 0x20 = 0x6CD9", "emg 0x20 = 0x6C6A", "emgg 0x20 = 0x6DAF", "emgh 0x20 = 0x6FCF", "emhf 0x20 = 0x6E90", "emhfz 0x20 = 0x9D3B", "emia 0x20 = 0x6E8D", "emig 0x20 = 0x6D37", "emj 0x20 = 0x6C57", "emjk 0x20 = 0x6F89", "emkp 0x20 = 0x6DFB", "emlk 0x20 = 0x6D6D", "emll 0x20 = 0x6D32", "emls 0x20 = 0x6C94", "emmc 0x20 = 0x6F92", "emmf 0x20 = 0x6CB6", "emmi 0x20 = 0x6C84", "emmp 0x20 = 0x7051", "emmr 0x20 = 0x6D6F", "emms 0x20 = 0x6C61", "emmu 0x20 = 0x6C85", "emn 0x20 = 0x6C40", "emnn 0x20 = 0x6D0C", "emnr 0x20 = 0x6CB3", "emoa 0x20 = 0x7026", "emoc 0x20 = 0x6FAC", "emr 0x20 = 0x6CB0", "emrb 0x20 = 0x6EC6", "emrr 0x20 = 0x6ED2", "emrt 0x20 = 0x6D62", "emrw 0x20 = 0x6E62", "emso 0x20 = 0x6DBF", "emt 0x20 = 0x6C67", "emtb 0x20 = 0x6FFF", "emua 0x20 = 0x6F5B", "emub 0x20 = 0x704A", "emvb 0x20 = 0x6F18", "emvg 0x20 = 0x6EBC", "emvi 0x20 = 0x6EBD", "emvm 0x20 = 0x6D87", "emvmz 0x20 = 0x6C8D", "emwd 0x20 = 0x6EA7", "emwf 0x20 = 0x6F02", "emwg 0x20 = 0x6E6E", "emwgz 0x20 = 0x6E79", "emwj 0x20 = 0x6F6D", "emwl 0x20 = 0x6E4E", "emyf 0x20 = 0x6F39", "enao 0x20 = 0x6F52", "enau 0x20 = 0x6D7C", "enbk 0x20 = 0x6E19", "enbq 0x20 = 0x6FA5", "enbs 0x20 = 0x6E67", "encr 0x20 = 0x6FB9", "end 0x20 = 0x67D3", "ene 0x20 = 0x6C92", "enhb 0x20 = 0x6F4F", "enhe 0x20 = 0x6C72", "enhx 0x20 = 0x6DCA", "eni 0x20 = 0x6C50", "enib 0x20 = 0x6D8C", "enii 0x20 = 0x6F12", "enin 0x20 = 0x6C80", "enir 0x20 = 0x6D3A", "eniz 0x20 = 0x6CD3", "enj 0x20 = 0x6C5B", "enkm 0x20 = 0x6D8E", "enkq 0x20 = 0x6E55", "enlb 0x20 = 0x7021", "enlc 0x20 = 0x6FFB", "enld 0x20 = 0x6EC1", "enls 0x20 = 0x6CD0", "enmb 0x20 = 0x7030", "enmu 0x20 = 0x6D08", "ennc 0x20 = 0x6FA6", "enob 0x20 = 0x6E51", "enoe 0x20 = 0x6F51", "enok 0x20 = 0x6E40", "enot 0x20 = 0x6F84", "enqd 0x20 = 0x6ED0", "enri 0x20 = 0x703A", "ensj 0x20 = 0x6E33", "ensv 0x20 = 0x6F32", "enue 0x20 = 0x6DB5", "enwf 0x20 = 0x6F01", "enyy 0x20 = 0x6EBA", "eoah 0x20 = 0x6F21", "eob 0x20 = 0x6C6D", "eobt 0x20 = 0x76DC", "eodi 0x20 = 0x6CED", "eodk 0x20 = 0x6F35", "eog 0x20 = 0x6DEE", "eogd 0x20 = 0x6F57", "eogf 0x20 = 0x6F50", "eohh 0x20 = 0x6CB4", "eoik 0x20 = 0x6D11", "eoim 0x20 = 0x7038", "eoj 0x20 = 0x6C7B", "eokf 0x20 = 0x703F", "eolb 0x20 = 0x6EEB", "eold 0x20 = 0x6ECC", "eolk 0x20 = 0x6D5F", "eoma 0x20 = 0x6FAE", "eomb 0x20 = 0x6DEA", "eombz 0x20 = 0x7039", "eomd 0x20 = 0x6D82", "eomi 0x20 = 0x6CE0", "eomn 0x20 = 0x6E1D", "eomo 0x20 = 0x6FB0", "eomr 0x20 = 0x6D3D", "eomrz 0x20 = 0x6EC4", "eomrzz 0x20 = 0x6DBB", "eon 0x20 = 0x6C7D", "eond 0x20 = 0x6ECA", "eonp 0x20 = 0x6DF0", "eonz 0x20 = 0x6C54", "eoob 0x20 = 0x6EA3", "eook 0x20 = 0x7032", "eop 0x20 = 0x6C8E", "eora 0x20 = 0x6F6A", "eort 0x20 = 0x6E30", "eory 0x20 = 0x6F5D", "eosk 0x20 = 0x6D22", "eotf 0x20 = 0x6F55", "eoto 0x20 = 0x6FEE", "eowy 0x20 = 0x6D77", "ep 0x20 = 0x6C81", "epa 0x20 = 0x6D35", "epd 0x20 = 0x6C60", "epdz 0x20 = 0x67D2", "epfd 0x20 = 0x6DD7", "eph 0x20 = 0x6CCC", "ephh 0x20 = 0x6C95", "ephp 0x20 = 0x6DF4", "epi 0x20 = 0x6C4B", "epl 0x20 = 0x6D7A", "epmr 0x20 = 0x6E49", "epou 0x20 = 0x6DD8", "epp 0x20 = 0x6C98", "eppa 0x20 = 0x6E5D", "epr 0x20 = 0x6CC3", "epru 0x20 = 0x6CE1", "epsh 0x20 = 0x6C8F", "ept 0x20 = 0x6CC4", "eptd 0x20 = 0x6E2B", "epu 0x20 = 0x6C8C", "epuk 0x20 = 0x6D36", "epyr 0x20 = 0x6E39", "eqg 0x20 = 0x583B", "eqhf 0x20 = 0x6F54", "eqhl 0x20 = 0x6D59", "eqjr 0x20 = 0x6E71", "eqka 0x20 = 0x6E77", "eqkd 0x20 = 0x6EB1", "eqke 0x20 = 0x6E99", "eqkk 0x20 = 0x6E4A", "eqmb 0x20 = 0x6E05", "eqmc 0x20 = 0x6F2C", "eqor 0x20 = 0x6E41", "er 0x20 = 0x5447", "erau 0x20 = 0x6D65", "erb 0x20 = 0x6D93", "erbc 0x20 = 0x6EB3", "erhg 0x20 = 0x6D67", "erhu 0x20 = 0x6CC1", "erji 0x20 = 0x6FC8", "ermr 0x20 = 0x6F5E", "erp 0x20 = 0x60C9", "erpa 0x20 = 0x6E63", "errd 0x20 = 0x6FA1", "errj 0x20 = 0x6F6C", "ersj 0x20 = 0x6E52", "eru 0x20 = 0x6C5C", "erup 0x20 = 0x6CEF", "ervc 0x20 = 0x6F60", "ervk 0x20 = 0x6D16", "erxu 0x20 = 0x6FA0", "eryo 0x20 = 0x6D5E", "esbn 0x20 = 0x6DAE", "esce 0x20 = 0x6FB1", "esd 0x20 = 0x6E20", "esei 0x20 = 0x705F", "eshr 0x20 = 0x6CBC", "eshu 0x20 = 0x6D58", "esim 0x20 = 0x6F80", "esip 0x20 = 0x6D8A", "esj 0x20 = 0x6D31", "esja 0x20 = 0x6F73", "esjj 0x20 = 0x7044", "esjr 0x20 = 0x6DBA", "eskr 0x20 = 0x6D92", "esll 0x20 = 0x6D0D", "esmb 0x20 = 0x6F0F", "esme 0x20 = 0x6D78", "esmg 0x20 = 0x6E25", "esmgz 0x20 = 0x6D2D", "esmi 0x20 = 0x6F6F", "esmr 0x20 = 0x6CC0", "esmt 0x20 = 0x6FEB", "esnd 0x20 = 0x6F7A", "esp 0x20 = 0x6CE5", "esqf 0x20 = 0x6EA4", "esrj 0x20 = 0x6FBC", "esrr 0x20 = 0x6F1A", "ess 0x20 = 0x6D30", "esu 0x20 = 0x6C3E", "esuu 0x20 = 0x6DC8", "eswu 0x20 = 0x7060", "esyc 0x20 = 0x7037", "esyg 0x20 = 0x6FEF", "esyh 0x20 = 0x6F3B", "esyj 0x20 = 0x6FE2", "etak 0x20 = 0x6F20", "etaw 0x20 = 0x7061", "etbc 0x20 = 0x6DDF", "etbn 0x20 = 0x6E54", "etbo 0x20 = 0x6FDB", "etc 0x20 = 0x6D2A", "etcf 0x20 = 0x6FDD", "etcl 0x20 = 0x6F8C", "etct 0x20 = 0x6EA2", "etcu 0x20 = 0x6E2F", "etge 0x20 = 0x6F3E", "etgf 0x20 = 0x6E94", "etgi 0x20 = 0x6FE7", "etgk 0x20 = 0x6E3C", "etgm 0x20 = 0x6EA0", "etgt 0x20 = 0x6FED", "etgv 0x20 = 0x7001", "etif 0x20 = 0x7033", "etit 0x20 = 0x6F2D", "etk 0x20 = 0x6D42", "etkr 0x20 = 0x6E03", "etlb 0x20 = 0x6EFF", "etlk 0x20 = 0x6E36", "etlo 0x20 = 0x6F22", "etlx 0x20 = 0x701F", "etm 0x20 = 0x6CD4", "etma 0x20 = 0x6F7D", "etmc 0x20 = 0x6DC7", "etmcz 0x20 = 0x6F62", "etmd 0x20 = 0x6FB2", "etmq 0x20 = 0x6F95", "etmr 0x20 = 0x6E2E", "etmv 0x20 = 0x6E5B", "etoe 0x20 = 0x6FE9", "etog 0x20 = 0x7058", "etpp 0x20 = 0x6FCD", "etq 0x20 = 0x6D0B", "etrg 0x20 = 0x704C", "etst 0x20 = 0x7046", "ett 0x20 = 0x6D34", "ettb 0x20 = 0x6E9D", "ettm 0x20 = 0x6E74", "ettz 0x20 = 0x6C6B", "etub 0x20 = 0x6EAF", "etvi 0x20 = 0x6ECB", "etvp 0x20 = 0x6FE8", "etw 0x20 = 0x6D40", "etwa 0x20 = 0x6F15", "etwb 0x20 = 0x6FAB", "etwi 0x20 = 0x700E", "etwt 0x20 = 0x6FA7", "etwv 0x20 = 0x6FC3", "etwz 0x20 = 0x6E35", "etxc 0x20 = 0x6E93", "etym 0x20 = 0x6DFD", "etys 0x20 = 0x6DD3", "eu 0x20 = 0x6C55", "eubb 0x20 = 0x6F30", "euc 0x20 = 0x934C", "eugk 0x20 = 0x6F82", "eujt 0x20 = 0x7043", "eumb 0x20 = 0x6E4D", "eumf 0x20 = 0x6E60", "eumi 0x20 = 0x6ECD", "eumt 0x20 = 0x6EB0", "euog 0x20 = 0x6F3C", "euon 0x20 = 0x6D94", "eutt 0x20 = 0x7069", "euu 0x20 = 0x6CCF", "euuk 0x20 = 0x6EA6", "ev 0x20 = 0x6C5D", "evc 0x20 = 0x938F", "evfd 0x20 = 0x7064", "evfg 0x20 = 0x6FF0", "evfn 0x20 = 0x7063", "evid 0x20 = 0x6FFC", "evis 0x20 = 0x6CD1", "evne 0x20 = 0x6DE5", "evr 0x20 = 0x6D33", "evug 0x20 = 0x7049", "evvd 0x20 = 0x6F05", "evvw 0x20 = 0x6DC4", "ew 0x20 = 0x6CBA", "ewb 0x20 = 0x6E2D", "ewc 0x20 = 0x6CD7", "ewd 0x20 = 0x6D83", "ewdq 0x20 = 0x6F7F", "ewdz 0x20 = 0x6DC9", "ewfq 0x20 = 0x6EBF", "ewg 0x20 = 0x6D6C", "ewgf 0x20 = 0x6F76", "ewim 0x20 = 0x6F0D", "ewjr 0x20 = 0x6DB8", "ewk 0x20 = 0x6D07", "ewlb 0x20 = 0x6E61", "ewli 0x20 = 0x6FC1", "ewlj 0x20 = 0x6FA4", "ewln 0x20 = 0x7031", "ewlo 0x20 = 0x6F40", "ewlv 0x20 = 0x6FB4", "ewml 0x20 = 0x6DE0", "ewmo 0x20 = 0x6EB7", "ewmv 0x20 = 0x6E28", "ewno 0x20 = 0x6B60", "ewo 0x20 = 0x6CC5", "ewot 0x20 = 0x6EAB", "ewr 0x20 = 0x6D04", "ewtc 0x20 = 0x6F69", "ewtq 0x20 = 0x6EED", "ewvf 0x20 = 0x6F2F", "ewwg 0x20 = 0x7045", "eyaj 0x20 = 0x6DD6", "eybb 0x20 = 0x6FC4", "eybbz 0x20 = 0x6E27", "eybc 0x20 = 0x6E5E", "eybg 0x20 = 0x7055", "eybp 0x20 = 0x7027", "eybs 0x20 = 0x6EC2", "eybu 0x20 = 0x6FEC", "eycb 0x20 = 0x6EF4", "eyck 0x20 = 0x6D28", "eycv 0x20 = 0x6EFE", "eydk 0x20 = 0x6F61", "eydl 0x20 = 0x6F37", "eydu 0x20 = 0x7019", "eyed 0x20 = 0x6FAF", "eyem 0x20 = 0x7023", "eyfe 0x20 = 0x6DD1", "eyg 0x20 = 0x6CE8", "eyhc 0x20 = 0x7015", "eyhn 0x20 = 0x6C86", "eyhs 0x20 = 0x6C78", "eyiw 0x20 = 0x6EC0", "eyjc 0x20 = 0x7068", "eyjj 0x20 = 0x6F23", "eyk 0x20 = 0x6C76", "eykm 0x20 = 0x6EFB", "eylc 0x20 = 0x7022", "eylh 0x20 = 0x6D89", "eylm 0x20 = 0x6C9A", "eymh 0x20 = 0x6FCA", "eymp 0x20 = 0x6CDA", "eynv 0x20 = 0x701B", "eyoj 0x20 = 0x6DEC", "eyok 0x20 = 0x6DB2", "eypd 0x20 = 0x6EF9", "eypk 0x20 = 0x6F9E", "eypo 0x20 = 0x6FBD", "eypp 0x20 = 0x6FFE", "eypt 0x20 = 0x7018", "eypu 0x20 = 0x6DF2", "eyr 0x20 = 0x6CBE", "eyrb 0x20 = 0x6EC8", "eyrd 0x20 = 0x6DF3", "eyrf 0x20 = 0x6DBC", "eyrj 0x20 = 0x6EF8", "eyrn 0x20 = 0x6E1F", "eyro 0x20 = 0x6FE0", "eyru 0x20 = 0x6E78", "eyrv 0x20 = 0x703C", "eysd 0x20 = 0x6E38", "eysdz 0x20 = 0x6E64", "eyso 0x20 = 0x6F29", "eysy 0x20 = 0x6DE4", "eyt 0x20 = 0x6CE3", "eyta 0x20 = 0x6E46", "eytb 0x20 = 0x6E47", "eytg 0x20 = 0x6F7C", "eytj 0x20 = 0x6F33", "eytp 0x20 = 0x6FBA", "eytr 0x20 = 0x6DAA", "eyub 0x20 = 0x6F13", "eyuh 0x20 = 0x6EEE", "eyv 0x20 = 0x6C52", "eyvg 0x20 = 0x6FAD", "eyvi 0x20 = 0x6CEB", "eywi 0x20 = 0x6EF7", "eywm 0x20 = 0x6FB6", "eywv 0x20 = 0x7024", "eywvz 0x20 = 0x6ED6", "eyx 0x20 = 0x6FDF", "eyy 0x20 = 0x6C74", "f 0x20 = 0x706B", "fab 0x20 = 0x7128", "fafu 0x20 = 0x7180", "fahm 0x20 = 0x714B", "faht 0x20 = 0x713A", "fahu 0x20 = 0x715D", "fam 0x20 = 0x709F", "famh 0x20 = 0x716C", "famj 0x20 = 0x710A", "fank 0x20 = 0x71D8", "fanp 0x20 = 0x71DC", "fanw 0x20 = 0x721B", "fanx 0x20 = 0x7213", "fapp 0x20 = 0x711C", "fate 0x20 = 0x7206", "fawe 0x20 = 0x71B3", "fayt 0x20 = 0x715C", "fb 0x20 = 0x8096", "fbac 0x20 = 0x7190", "fbbe 0x20 = 0x71F0", "fbhaf 0x20 = 0x9DBA", "fbjj 0x20 = 0x7147", "fbkf 0x20 = 0x71C3", "fbln 0x20 = 0x524A", "fbme 0x20 = 0x7156", "fbmr 0x20 = 0x70D4", "fbnd 0x20 = 0x70F0", "fbok 0x20 = 0x655D", "fbokz 0x20 = 0x655E", "fbr 0x20 = 0x5C1A", "fbrbc 0x20 = 0x8CDE", "fbrd 0x20 = 0x68E0", "fbrg 0x20 = 0x5802", "fbrhu 0x20 = 0x515A", "fbrlb 0x20 = 0x5E38", "fbrmh 0x20 = 0x725A", "fbrmn 0x20 = 0x74FD", "fbrpa 0x20 = 0x5617", "fbrq 0x20 = 0x638C", "fbrw 0x20 = 0x7576", "fbrwf 0x20 = 0x9EE8", "fbryv 0x20 = 0x88F3", "fbrz 0x20 = 0x70AF", "fbwi 0x20 = 0x721D", "fbyh 0x20 = 0x70FF", "fcb 0x20 = 0x810A", "fci 0x20 = 0x7082", "fcnh 0x20 = 0x710D", "fcor 0x20 = 0x7100", "fd 0x20 = 0x7C73", "fdamg 0x20 = 0x7CE7", "fdau 0x20 = 0x7C91", "fdbm 0x20 = 0x7C97", "fdbmr 0x20 = 0x7CA1", "fdbt 0x20 = 0x7CA3", "fdbuu 0x20 = 0x7CAF", "fdcsh 0x20 = 0x7C89", "fddh 0x20 = 0x7229", "fddi 0x20 = 0x7C7F", "fddj 0x20 = 0x7C96", "fdeii 0x20 = 0x7CD4", "fdha 0x20 = 0x7C95", "fdhhj 0x20 = 0x7CBA", "fdhj 0x20 = 0x7C81", "fdhoa 0x20 = 0x7CCC", "fdhqu 0x20 = 0x7C8D", "fdhuk 0x20 = 0x7CD7", "fdibi 0x20 = 0x7CD0", "fdiih 0x20 = 0x7CDD", "fdile 0x20 = 0x7CE0", "fdilr 0x20 = 0x7CD6", "fdixp 0x20 = 0x9E8A", "fdj 0x20 = 0x7C75", "fdjk 0x20 = 0x7C80", "fdjmf 0x20 = 0x7CBD", "fdjrb 0x20 = 0x7CCA", "fdk 0x20 = 0x7094", "fdma 0x20 = 0x7CA8", "fdmbb 0x20 = 0x7CEF", "fdmcw 0x20 = 0x7C9E", "fdme 0x20 = 0x7C84", "fdmlk 0x20 = 0x7CB3", "fdmq 0x20 = 0x7152", "fdmtb 0x20 = 0x7CF2", "fdmwg 0x20 = 0x7CCE", "fdnd 0x20 = 0x7C7D", "fdng 0x20 = 0x7C88", "fdnhd 0x20 = 0x7CC5", "fdnii 0x20 = 0x7CE8", "fdnj 0x20 = 0x7C78", "fdnl 0x20 = 0x7C8C", "fdnob 0x20 = 0x7CC8", "fdnyy 0x20 = 0x7CD1", "fdok 0x20 = 0x6549", "fdon 0x20 = 0x7C7A", "fdphh 0x20 = 0x7C85", "fdqmb 0x20 = 0x7CBE", "fdsmt 0x20 = 0x7CEE", "fdsmv 0x20 = 0x7CBB", "fdss 0x20 = 0x7C94", "fdtak 0x20 = 0x7CE2", "fdtaw 0x20 = 0x7CF7", "fdtbn 0x20 = 0x7CCB", "fdtgf 0x20 = 0x7CD5", "fdthb 0x20 = 0x7CD2", "fdtwa 0x20 = 0x7CDF", "fdv 0x20 = 0x7C79", "fdwd 0x20 = 0x7CBF", "fdwf 0x20 = 0x7149", "fdwg 0x20 = 0x7CB4", "fdwji 0x20 = 0x7CF0", "fdwla 0x20 = 0x7CEC", "fdwtc 0x20 = 0x7CDE", "fdy 0x20 = 0x70DE", "fdyhr 0x20 = 0x7CD9", "fdyj 0x20 = 0x6599", "fdyoj 0x20 = 0x7CB9", "fdyr 0x20 = 0x7C98", "fdyt 0x20 = 0x7C92", "fdz 0x20 = 0x7091", "ff 0x20 = 0x708E", "ffbb 0x20 = 0x818B", "ffbbu 0x20 = 0x89AE", "ffbc 0x20 = 0x93A3", "ffbd 0x20 = 0x69AE", "ffbe 0x20 = 0x6ECE", "ffbf 0x20 = 0x7192", "ffbfz 0x20 = 0x7223", "ffbg 0x20 = 0x584B", "ffbhf 0x20 = 0x9DAF", "ffbhq 0x20 = 0x7296", "ffbks 0x20 = 0x52DE", "ffbli 0x20 = 0x87A2", "ffbmf 0x20 = 0x799C", "ffbmi 0x20 = 0x7469", "ffbmn 0x20 = 0x7507", "ffbmw 0x20 = 0x919F", "ffbnk 0x20 = 0x7162", "ffbou 0x20 = 0x7F43", "ffbrr 0x20 = 0x71DF", "ffbuu 0x20 = 0x89A2", "ffbv 0x20 = 0x5AC8", "ffbvf 0x20 = 0x7E08", "ffbyr 0x20 = 0x8B0D", "ffbyv 0x20 = 0x892E", "ffdq 0x20 = 0x71D0", "ffe 0x20 = 0x71EE", "fff 0x20 = 0x7131", "fffd 0x20 = 0x71CA", "fffdz 0x20 = 0x7203", "ffff 0x20 = 0x71DA", "ffh 0x20 = 0x7092", "ffln 0x20 = 0x5261", "ffmbc 0x20 = 0x9843", "ffmbcz 0x20 = 0x7E87", "ffnl 0x20 = 0x90EF", "ffno 0x20 = 0x6B3B", "ffye 0x20 = 0x6565", "ffypu 0x20 = 0x8669", "ffyr 0x20 = 0x7154", "fg 0x20 = 0x7076", "fgg 0x20 = 0x70D3", "fggu 0x20 = 0x71D2", "fgit 0x20 = 0x7186", "fgni 0x20 = 0x71FD", "fh 0x20 = 0x5C11", "fhag 0x20 = 0x714C", "fhbk 0x20 = 0x71E0", "fhbt 0x20 = 0x70C5", "fhbu 0x20 = 0x7701", "fhdf 0x20 = 0x714D", "fhdn 0x20 = 0x71AA", "fhdw 0x20 = 0x71D4", "fhej 0x20 = 0x70FD", "fher 0x20 = 0x70D9", "fhey 0x20 = 0x70B5", "fhge 0x20 = 0x71EC", "fhgf 0x20 = 0x71FB", "fhgu 0x20 = 0x70CD", "fhjg 0x20 = 0x7144", "fhkb 0x20 = 0x71C6", "fhks 0x20 = 0x52A3", "fhlo 0x20 = 0x712E", "fhml 0x20 = 0x7098", "fhon 0x20 = 0x70C6", "fhsb 0x20 = 0x7178", "fhsu 0x20 = 0x71A9", "fhsy 0x20 = 0x717D", "fhup 0x20 = 0x7184", "fhwp 0x20 = 0x719C", "fhyo 0x20 = 0x70D1", "fiav 0x20 = 0x70FA", "fice 0x20 = 0x710C", "fihr 0x20 = 0x7158", "fijb 0x20 = 0x70F3", "filii 0x20 = 0x883D", "filr 0x20 = 0x717B", "fipf 0x20 = 0x720A", "fipm 0x20 = 0x70D2", "fitc 0x20 = 0x720C", "fixp 0x20 = 0x719D", "fjcm 0x20 = 0x7122", "fjcr 0x20 = 0x7194", "fjhp 0x20 = 0x70E2", "fjks 0x20 = 0x70E4", "fjmu 0x20 = 0x70F7", "fjnp 0x20 = 0x7125", "fk 0x20 = 0x5C16", "fkb 0x20 = 0x70E0", "fkbu 0x20 = 0x77A5", "fkcf 0x20 = 0x71CE", "fkgg 0x20 = 0x7143", "fkhaf 0x20 = 0x9DE9", "fkhqu 0x20 = 0x6C05", "fkik 0x20 = 0x7358", "fkkb 0x20 = 0x70EF", "fklb 0x20 = 0x5E63", "fklmi 0x20 = 0x87DE", "fkmbc 0x20 = 0x985E", "fkmnp 0x20 = 0x6583", "fkn 0x20 = 0x5F46", "fknwf 0x20 = 0x9C49", "fkp 0x20 = 0x618B", "fkrau 0x20 = 0x9128", "fkryo 0x20 = 0x8E69", "fksb 0x20 = 0x7181", "fksc 0x20 = 0x71F2", "fkt 0x20 = 0x5F0A", "fkv 0x20 = 0x5AF3", "flbk 0x20 = 0x70B4", "flii 0x20 = 0x721E", "fllv 0x20 = 0x71A1", "flmt 0x20 = 0x71FC", "flx 0x20 = 0x71BD", "fm 0x20 = 0x7074", "fmam 0x20 = 0x70DC", "fmbb 0x20 = 0x71F8", "fmbc 0x20 = 0x7169", "fmbm 0x20 = 0x7227", "fmmr 0x20 = 0x7110", "fmob 0x20 = 0x70B3", "fmso 0x20 = 0x70FC", "fmu 0x20 = 0x5149", "fmua 0x20 = 0x71B8", "fmvm 0x20 = 0x70F4", "fmwf 0x20 = 0x719B", "fmwg 0x20 = 0x7159", "fmwj 0x20 = 0x71C2", "fmym 0x20 = 0x70A1", "fnbk 0x20 = 0x7165", "fng 0x20 = 0x7084", "fnhb 0x20 = 0x71CF", "fnhd 0x20 = 0x7163", "fnhx 0x20 = 0x7130", "fnkg 0x20 = 0x70F6", "fnkm 0x20 = 0x70FB", "fnkq 0x20 = 0x7161", "fno 0x20 = 0x708A", "fnot 0x20 = 0x71C8", "fnq 0x20 = 0x63F1", "fo 0x20 = 0x5C10", "fobu 0x20 = 0x7737", "fodmq 0x20 = 0x97CF", "fog 0x20 = 0x96C0", "fogf 0x20 = 0x71CB", "fohq 0x20 = 0x7276", "folb 0x20 = 0x5E23", "foma 0x20 = 0x71F4", "fomb 0x20 = 0x721A", "fomg 0x20 = 0x70C7", "fomi 0x20 = 0x70A9", "fomr 0x20 = 0x7197", "fomrz 0x20 = 0x70DA", "fomso 0x20 = 0x8C62", "fon 0x20 = 0x5F2E", "fonbg 0x20 = 0x89E0", "fond 0x20 = 0x7182", "fonr 0x20 = 0x7113", "foq 0x20 = 0x62F3", "fos 0x20 = 0x70B8", "fosh 0x20 = 0x5238", "fosu 0x20 = 0x5377", "fovif 0x20 = 0x7D6D", "fowy 0x20 = 0x70F8", "foymu 0x20 = 0x9F64", "fpd 0x20 = 0x707A", "fpi 0x20 = 0x707C", "fpru 0x20 = 0x70AE", "fptd 0x20 = 0x7160", "fpu 0x20 = 0x7096", "fq 0x20 = 0x534A", "fqln 0x20 = 0x5224", "fqmbc 0x20 = 0x9816", "fqme 0x20 = 0x53DB", "fqmln 0x20 = 0x7510", "fqnl 0x20 = 0x9130", "fqsyy 0x20 = 0x7FF7", "fqu 0x20 = 0x4E83", "fqvv 0x20 = 0x7CBC", "frb 0x20 = 0x7106", "frbc 0x20 = 0x7189", "frhu 0x20 = 0x70BE", "frrd 0x20 = 0x71E5", "frrj 0x20 = 0x71C0", "frrr 0x20 = 0x7170", "frse 0x20 = 0x7146", "fseg 0x20 = 0x719E", "fsh 0x20 = 0x7071", "fshr 0x20 = 0x70A4", "fsmi 0x20 = 0x71D6", "fsmt 0x20 = 0x7201", "fsrr 0x20 = 0x71B0", "fss 0x20 = 0x70AC", "fssr 0x20 = 0x7117", "fswu 0x20 = 0x7226", "fsya 0x20 = 0x71A0", "fsyg 0x20 = 0x71FF", "fsyt 0x20 = 0x71A4", "fta 0x20 = 0x711F", "ftc 0x20 = 0x70D8", "ftcw 0x20 = 0x716A", "ftcz 0x20 = 0x70E1", "ftgi 0x20 = 0x7214", "ftgiz 0x20 = 0x71E8", "ftlj 0x20 = 0x7142", "ftlk 0x20 = 0x7150", "ftlo 0x20 = 0x71AF", "ftmc 0x20 = 0x71BF", "ftmd 0x20 = 0x7164", "ftmq 0x20 = 0x71C1", "ftmv 0x20 = 0x7141", "ftq 0x20 = 0x70CA", "ftrg 0x20 = 0x721F", "ftwb 0x20 = 0x71E4", "ftwi 0x20 = 0x71C7", "fubjj 0x20 = 0x8F1D", "fumb 0x20 = 0x7153", "fusyg 0x20 = 0x8000", "fvid 0x20 = 0x720D", "fwb 0x20 = 0x715F", "fwgg 0x20 = 0x7205", "fwli 0x20 = 0x71ED", "fwlj 0x20 = 0x71E1", "fwmbc 0x20 = 0x9872", "fwmv 0x20 = 0x7168", "fwot 0x20 = 0x7185", "fwtc 0x20 = 0x71BC", "fwtq 0x20 = 0x719A", "fyaj 0x20 = 0x712F", "fycb 0x20 = 0x71B5", "fydk 0x20 = 0x71C9", "fyed 0x20 = 0x71E6", "fyg 0x20 = 0x70B7", "fyhn 0x20 = 0x7095", "fyia 0x20 = 0x71BE", "fyj 0x20 = 0x7093", "fyk 0x20 = 0x7086", "fynb 0x20 = 0x71A5", "fyoj 0x20 = 0x7120", "fyok 0x20 = 0x7132", "fypt 0x20 = 0x7210", "fyrb 0x20 = 0x7187", "fyrd 0x20 = 0x711E", "fyrv 0x20 = 0x7219", "fyto 0x20 = 0x71E7", "fytp 0x20 = 0x71F1", "fytr 0x20 = 0x7119", "fyvi 0x20 = 0x70AB", "fyvo 0x20 = 0x70D7", "g 0x20 = 0x571F", "gagi 0x20 = 0x5852", "gahu 0x20 = 0x5833", "gam 0x20 = 0x5766", "gamh 0x20 = 0x5834", "gamo 0x20 = 0x5824", "ganx 0x20 = 0x58DB", "gaph 0x20 = 0x57F8", "gapv 0x20 = 0x5828", "gasy 0x20 = 0x584C", "gav 0x20 = 0x57A0", "gawe 0x20 = 0x5881", "gb 0x20 = 0x5189", "gbac 0x20 = 0x5853", "gbb 0x20 = 0x580B", "gbbr 0x20 = 0x581D", "gbcd 0x20 = 0x5814", "gbd 0x20 = 0x57F0", "gbdi 0x20 = 0x57D2", "gbhne 0x20 = 0x89F3", "gblm 0x20 = 0x58FA", "gbmc 0x20 = 0x57E7", "gbmm 0x20 = 0x58FC", "gbmo 0x20 = 0x585A", "gbmr 0x20 = 0x578C", "gbmt 0x20 = 0x58F9", "gbnd 0x20 = 0x57BA", "gbr 0x20 = 0x5770", "gbsd 0x20 = 0x57E9", "gbtu 0x20 = 0x5808", "gby 0x20 = 0x574D", "gcbuu 0x20 = 0x89BF", "gcdhe 0x20 = 0x76BE", "gcg 0x20 = 0x5774", "gcglc 0x20 = 0x8D6B", "gche 0x20 = 0x590C", "gcilr 0x20 = 0x8D6F", "gciy 0x20 = 0x5855", "gcjka 0x20 = 0x8D6D", "gclmi 0x20 = 0x8D68", "gcnau 0x20 = 0x8D69", "gcnl 0x20 = 0x90DD", "gcok 0x20 = 0x8D66", "gcrse 0x20 = 0x8D6E", "gcrxu 0x20 = 0x9F00", "gcsh 0x20 = 0x574B", "gcsle 0x20 = 0x8D67", "gcwa 0x20 = 0x589E", "gcybc 0x20 = 0x8D6C", "gdhe 0x20 = 0x5761", "gdhne 0x20 = 0x7A40", "gdhnez 0x20 = 0x6996", "gdi 0x20 = 0x5BFA", "gdw 0x20 = 0x57EC", "gdwf 0x20 = 0x581C", "gebu 0x20 = 0x77BD", "gec 0x20 = 0x93E7", "gee 0x20 = 0x6F00", "geeii 0x20 = 0x9F1C", "gefbg 0x20 = 0x9F1E", "gehda 0x20 = 0x99A8", "gehey 0x20 = 0x9F15", "gehhj 0x20 = 0x9F19", "gehkb 0x20 = 0x6BCA", "gehor 0x20 = 0x9F1B", "gelmi 0x20 = 0x879C", "gelxl 0x20 = 0x9F18", "gemr 0x20 = 0x78EC", "geoju 0x20 = 0x7F44", "gep 0x20 = 0x6128", "gesj 0x20 = 0x8072", "gesmv 0x20 = 0x9F1A", "geymr 0x20 = 0x8B26", "geyta 0x20 = 0x97FE", "gfcb 0x20 = 0x5849", "gff 0x20 = 0x57EE", "gfhne 0x20 = 0x7E20", "gfhnez 0x20 = 0x9DC7", "gfmu 0x20 = 0x5799", "gfno 0x20 = 0x6B3E", "gfou 0x20 = 0x57E2", "gfq 0x20 = 0x5762", "gg 0x20 = 0x572D", "ggce 0x20 = 0x580E", "ggdi 0x20 = 0x5C01", "ggff 0x20 = 0x71C5", "ggg 0x20 = 0x579A", "gggu 0x20 = 0x582F", "ggguz 0x20 = 0x589D", "gghaf 0x20 = 0x9D71", "ggkni 0x20 = 0x57F6", "ggln 0x20 = 0x5232", "ggni 0x20 = 0x58D4", "ggnl 0x20 = 0x90BD", "ggp 0x20 = 0x605A", "ggvk 0x20 = 0x594A", "ggy 0x20 = 0x5366", "ghag 0x20 = 0x582D", "ghbk 0x20 = 0x58BA", "ghdw 0x20 = 0x58A6", "ghfd 0x20 = 0x5780", "ghgf 0x20 = 0x58CE", "ghhj 0x20 = 0x57E4", "ghhw 0x20 = 0x586F", "ghi 0x20 = 0x584A", "ghjg 0x20 = 0x57F5", "ghjgz 0x20 = 0x5839", "ghlm 0x20 = 0x5775", "ghml 0x20 = 0x573B", "ghmln 0x20 = 0x750F", "ghmr 0x20 = 0x57A2", "ghmy 0x20 = 0x577C", "ghnd 0x20 = 0x579B", "ghni 0x20 = 0x5838", "ghpm 0x20 = 0x577B", "ghrf 0x20 = 0x5862", "ghrj 0x20 = 0x57E0", "ghsk 0x20 = 0x58BD", "ghup 0x20 = 0x5741", "ghxu 0x20 = 0x5804", "ghyo 0x20 = 0x5797", "gi 0x20 = 0x53BB", "giapv 0x20 = 0x6705", "giav 0x20 = 0x57CC", "gibt 0x20 = 0x76CD", "gibuc 0x20 = 0x8D04", "gid 0x20 = 0x683D", "gidz 0x20 = 0x69F7", "gif 0x20 = 0x71B1", "gig 0x20 = 0x588A", "gihab 0x20 = 0x5E6B", "gihaf 0x20 = 0x9DD9", "gihq 0x20 = 0x728E", "gihr 0x20 = 0x583F", "gihs 0x20 = 0x57CE", "giih 0x20 = 0x588B", "gijb 0x20 = 0x57D4", "gijwj 0x20 = 0x8F09", "giks 0x20 = 0x52E2", "giksz 0x20 = 0x52AB", "gilb 0x20 = 0x5889", "gilmi 0x20 = 0x87C4", "gilmiz 0x20 = 0x86D3", "gilr 0x20 = 0x5858", "gimcw 0x20 = 0x9168", "gimig 0x20 = 0x81F7", "ginl 0x20 = 0x90BF", "ginn 0x20 = 0x57BF", "giobo 0x20 = 0x80FE", "giog 0x20 = 0x622A", "giok 0x20 = 0x57C3", "gip 0x20 = 0x6179", "giq 0x20 = 0x646F", "giqz 0x20 = 0x6470", "gir 0x20 = 0x54C9", "girm 0x20 = 0x57DF", "girxu 0x20 = 0x9F01", "gisqf 0x20 = 0x9A3A", "gisyy 0x20 = 0x7FFF", "gitc 0x20 = 0x58D9", "gitlj 0x20 = 0x97A4", "givif 0x20 = 0x7E36", "giwtc 0x20 = 0x6234", "gixp 0x20 = 0x5876", "giyhv 0x20 = 0x88C1", "giymr 0x20 = 0x8B3A", "gjbc 0x20 = 0x586B", "gjbm 0x20 = 0x57F4", "gjcr 0x20 = 0x584E", "gjhio 0x20 = 0x74E1", "gjhne 0x20 = 0x8F42", "gjhp 0x20 = 0x579E", "gjii 0x20 = 0x587C", "gjjn 0x20 = 0x5898", "gjka 0x20 = 0x5835", "gjkni 0x20 = 0x57F7", "gjmu 0x20 = 0x57B8", "gjp 0x20 = 0x5768", "gjsle 0x20 = 0x5831", "gjtc 0x20 = 0x58B3", "gjv 0x20 = 0x57B5", "gkbt 0x20 = 0x76E9", "gkbuc 0x20 = 0x8D05", "gkc 0x20 = 0x93CA", "gkf 0x20 = 0x71AC", "gkib 0x20 = 0x5809", "gkik 0x20 = 0x7352", "gkkk 0x20 = 0x587D", "gklmi 0x20 = 0x87AB", "gklmiz 0x20 = 0x87AF", "gkmb 0x20 = 0x5836", "gkmr 0x20 = 0x57FC", "gkms 0x20 = 0x57AE", "gknwf 0x20 = 0x9C32", "gkpb 0x20 = 0x5886", "gkq 0x20 = 0x646E", "gkrxu 0x20 = 0x9F07", "gksj 0x20 = 0x8071", "gksqf 0x20 = 0x9A41", "gkymr 0x20 = 0x8B37", "glbk 0x20 = 0x5771", "gle 0x20 = 0x57ED", "glll 0x20 = 0x5733", "glln 0x20 = 0x5772", "gllv 0x20 = 0x587F", "glnc 0x20 = 0x8D64", "glq 0x20 = 0x578F", "glwl 0x20 = 0x5764", "gmam 0x20 = 0x57A3", "gmbb 0x20 = 0x58E9", "gmbbz 0x20 = 0x58D6", "gmbk 0x20 = 0x5827", "gmc 0x20 = 0x92C6", "gmd 0x20 = 0x5729", "gmdm 0x20 = 0x58E2", "gmf 0x20 = 0x574F", "gmfj 0x20 = 0x576A", "gmfm 0x20 = 0x576F", "gmgg 0x20 = 0x5810", "gmig 0x20 = 0x57A4", "gmlk 0x20 = 0x57C2", "gmlm 0x20 = 0x57E1", "gmms 0x20 = 0x572C", "gmn 0x20 = 0x5722", "gmnr 0x20 = 0x5777", "gmrb 0x20 = 0x5865", "gmrw 0x20 = 0x581B", "gmwd 0x20 = 0x585B", "gmwf 0x20 = 0x5882", "gmwg 0x20 = 0x5819", "gnai 0x20 = 0x580D", "gnbg 0x20 = 0x57C6", "gnhe 0x20 = 0x573E", "gnhne 0x20 = 0x6BBC", "gnhnez 0x20 = 0x5F40", "gnhx 0x20 = 0x57F3", "gnib 0x20 = 0x57C7", "gnkm 0x20 = 0x57CF", "gnmf 0x20 = 0x71FE", "gnmi 0x20 = 0x58FD", "gnmu 0x20 = 0x579D", "gno 0x20 = 0x574E", "gnot 0x20 = 0x58B1", "goamj 0x20 = 0x8D95", "goamo 0x20 = 0x8DA7", "gobm 0x20 = 0x8D84", "goc 0x20 = 0x8D9B", "godk 0x20 = 0x8D7D", "gofb 0x20 = 0x8D99", "gofbr 0x20 = 0x8D9F", "gofh 0x20 = 0x8D7B", "gog 0x20 = 0x5806", "goggu 0x20 = 0x8DAC", "gogr 0x20 = 0x8D8C", "gohjd 0x20 = 0x8D8E", "gohjr 0x20 = 0x8D8F", "gohkb 0x20 = 0x8DAB", "gohnd 0x20 = 0x8D93", "gohne 0x20 = 0x8C70", "gohuc 0x20 = 0x8DB2", "gohyo 0x20 = 0x8D92", "goik 0x20 = 0x5798", "goiu 0x20 = 0x8D8A", "goks 0x20 = 0x8D72", "golxh 0x20 = 0x8D80", "gomi 0x20 = 0x577D", "gomj 0x20 = 0x8D76", "gommo 0x20 = 0x8D91", "gomn 0x20 = 0x582C", "gomnn 0x20 = 0x8D94", "gomnz 0x20 = 0x5745", "gomr 0x20 = 0x57A5", "gon 0x20 = 0x572A", "gonin 0x20 = 0x8D8D", "gonk 0x20 = 0x5820", "goog 0x20 = 0x8DA1", "googf 0x20 = 0x8DAD", "goohh 0x20 = 0x8D81", "gooog 0x20 = 0x8D96", "gopfd 0x20 = 0x8D9C", "gopmm 0x20 = 0x8D79", "gopuu 0x20 = 0x8DA8", "gorrd 0x20 = 0x8DAE", "goru 0x20 = 0x8D77", "goshr 0x20 = 0x8D85", "gosje 0x20 = 0x8DA3", "gosyg 0x20 = 0x8DAF", "gosyy 0x20 = 0x8D90", "gotcw 0x20 = 0x8DA5", "gotmc 0x20 = 0x8DAA", "gou 0x20 = 0x8D78", "gouu 0x20 = 0x8D89", "govl 0x20 = 0x8D73", "gowr 0x20 = 0x55C7", "goy 0x20 = 0x8D74", "goyaj 0x20 = 0x8DA0", "gp 0x20 = 0x5FD7", "gpbuu 0x20 = 0x899F", "gpd 0x20 = 0x5730", "gpi 0x20 = 0x5734", "gpmm 0x20 = 0x5747", "gpmmz 0x20 = 0x5829", "gptd 0x20 = 0x581E", "gpu 0x20 = 0x5749", "gqjl 0x20 = 0x57B9", "gqkq 0x20 = 0x57F2", "gqmb 0x20 = 0x57E5", "gr 0x20 = 0x5409", "grbc 0x20 = 0x5864", "grbg 0x20 = 0x81FA", "grgrr 0x20 = 0x56CD", "grhaf 0x20 = 0x9D36", "grhg 0x20 = 0x57D5", "grhne 0x20 = 0x55C0", "grhv 0x20 = 0x8881", "grks 0x20 = 0x52BC", "grmbc 0x20 = 0x9821", "grmfr 0x20 = 0x56AD", "grno 0x20 = 0x6B2F", "grnoz 0x20 = 0x6B56", "grrj 0x20 = 0x58A0", "grrk 0x20 = 0x58E7", "grrs 0x20 = 0x582E", "grrv 0x20 = 0x55AA", "grt 0x20 = 0x58F4", "grtf 0x20 = 0x71B9", "grtr 0x20 = 0x559C", "grtrz 0x20 = 0x5609", "gru 0x20 = 0x572F", "grye 0x20 = 0x657C", "gsav 0x20 = 0x5830", "gseq 0x20 = 0x5880", "gsjt 0x20 = 0x58E3", "gsmb 0x20 = 0x57FD", "gsme 0x20 = 0x57D0", "gsmt 0x20 = 0x58CF", "gsok 0x20 = 0x6556", "gsp 0x20 = 0x576D", "gsu 0x20 = 0x572E", "gsuu 0x20 = 0x5800", "gtak 0x20 = 0x587B", "gtcp 0x20 = 0x5868", "gtdi 0x20 = 0x5C0C", "gtgr 0x20 = 0x58A1", "gtgt 0x20 = 0x58D2", "gthhh 0x20 = 0x5F6D", "gtj 0x20 = 0x5E78", "gtje 0x20 = 0x9F13", "gtlm 0x20 = 0x5890", "gtm 0x20 = 0x5769", "gtmo 0x20 = 0x58A3", "gtmop 0x20 = 0x61FF", "gtmv 0x20 = 0x582A", "gtor 0x20 = 0x5854", "gtq 0x20 = 0x579F", "gtss 0x20 = 0x58FE", "gtu 0x20 = 0x4E84", "gtvs 0x20 = 0x5888", "gtwi 0x20 = 0x58AB", "gtwiz 0x20 = 0x58FF", "gu 0x20 = 0x5720", "gubb 0x20 = 0x5874", "guhne 0x20 = 0x7789", "gumbc 0x20 = 0x9864", "gumt 0x20 = 0x584F", "guog 0x20 = 0x5894", "guon 0x20 = 0x57C1", "gusyy 0x20 = 0x7FF9", "gvis 0x20 = 0x5773", "gwd 0x20 = 0x5801", "gwg 0x20 = 0x57CB", "gwj 0x20 = 0x6BD0", "gwjr 0x20 = 0x580C", "gwlb 0x20 = 0x5823", "gwlc 0x20 = 0x8CE3", "gwlj 0x20 = 0x58BF", "gwlm 0x20 = 0x583D", "gwot 0x20 = 0x586D", "gwyi 0x20 = 0x5776", "gybs 0x20 = 0x585D", "gycb 0x20 = 0x5891", "gydk 0x20 = 0x58A9", "gydl 0x20 = 0x588E", "gyfe 0x20 = 0x57F1", "gyhn 0x20 = 0x5751", "gyhs 0x20 = 0x574A", "gylc 0x20 = 0x58DD", "gylm 0x20 = 0x5740", "gyo 0x20 = 0x8D70", "gyoj 0x20 = 0x57E3", "gypm 0x20 = 0x589F", "gypo 0x20 = 0x58C9", "gypt 0x20 = 0x58DA", "gyr 0x20 = 0x576B", "gyrb 0x20 = 0x5859", "gyrd 0x20 = 0x57FB", "gyro 0x20 = 0x58D5", "gyrv 0x20 = 0x58E4", "gyt 0x20 = 0x5783", "gyta 0x20 = 0x5837", "gytg 0x20 = 0x58A5", "gytj 0x20 = 0x5887", "gytjz 0x20 = 0x57B6", "gytr 0x20 = 0x57F9", "gytu 0x20 = 0x5883", "gyvo 0x20 = 0x5793", "gywd 0x20 = 0x58C8", "gywm 0x20 = 0x58C7", "gywv 0x20 = 0x58DE", "h 0x20 = 0x7AF9", "ha 0x20 = 0x767D", "habwi 0x20 = 0x76AD", "hae 0x20 = 0x6CC9", "hahaa 0x20 = 0x769B", "hahaaz 0x20 = 0x99AB", "hahaj 0x20 = 0x769E", "hahdw 0x20 = 0x76A4", "hahgr 0x20 = 0x7693", "hahi 0x20 = 0x9B44", "hahqi 0x20 = 0x7692", "hahsk 0x20 = 0x76A6", "hail 0x20 = 0x7BC0", "haipf 0x20 = 0x76AB", "haj 0x20 = 0x7681", "hajbd 0x20 = 0x999E", "hajmu 0x20 = 0x7696", "hakj 0x20 = 0x768B", "haklv 0x20 = 0x99A3", "halb 0x20 = 0x5E1B", "halmy 0x20 = 0x99A1", "ham 0x20 = 0x7B2A", "hame 0x20 = 0x7688", "hamg 0x20 = 0x7687", "hamj 0x20 = 0x7B78", "hana 0x20 = 0x7C21", "hank 0x20 = 0x7C22", "hanw 0x20 = 0x7C63", "haoae 0x20 = 0x99A5", "haomi 0x20 = 0x768A", "hap 0x20 = 0x7682", "haph 0x20 = 0x999D", "hapi 0x20 = 0x7684", "hasp 0x20 = 0x999C", "hatt 0x20 = 0x768F", "hatxc 0x20 = 0x99A6", "hau 0x20 = 0x7B06", "haumt 0x20 = 0x769A", "hauz 0x20 = 0x767F", "havid 0x20 = 0x76AA", "havt 0x20 = 0x7C0B", "hawot 0x20 = 0x99A7", "hayck 0x20 = 0x768E", "hayd 0x20 = 0x689F", "hayf 0x20 = 0x9CE5", "haymp 0x20 = 0x7689", "hayrb 0x20 = 0x769C", "hayu 0x20 = 0x5CF6", "hayv 0x20 = 0x88CA", "hbbm 0x20 = 0x820B", "hbbuu 0x20 = 0x89BA", "hbddf 0x20 = 0x7228", "hbe 0x20 = 0x6FA9", "hbf 0x20 = 0x71E2", "hbfe 0x20 = 0x7C50", "hbfz 0x20 = 0x7202", "hbg 0x20 = 0x58C6", "hbhaf 0x20 = 0x9DFD", "hbhafz 0x20 = 0x9DA3", "hbhafzz 0x20 = 0x9DEE", "hbhafzzz 0x20 = 0x9D73", "hbhgr 0x20 = 0x56B3", "hbk 0x20 = 0x5967", "hbks 0x20 = 0x7B4B", "hbku 0x20 = 0x5DB4", "hbln 0x20 = 0x5236", "hbmbc 0x20 = 0x9845", "hbmgi 0x20 = 0x74BA", "hbmln 0x20 = 0x7502", "hbmms 0x20 = 0x7CB5", "hbmr 0x20 = 0x7B52", "hbmrz 0x20 = 0x7910", "hbmwh 0x20 = 0x91C1", "hbnbg 0x20 = 0x89F7", "hbnd 0x20 = 0x5B78", "hbnl 0x20 = 0x9105", "hbnwf 0x20 = 0x9C5F", "hbok 0x20 = 0x657F", "hbq 0x20 = 0x752A", "hbr 0x20 = 0x5411", "hbsd 0x20 = 0x7B8F", "hbse 0x20 = 0x7B99", "hbsyy 0x20 = 0x7FE9", "hbt 0x20 = 0x8840", "hbtmc 0x20 = 0x9ECC", "hbu 0x20 = 0x81EA", "hbuf 0x20 = 0x7E82", "hbuh 0x20 = 0x7BCE", "hbui 0x20 = 0x7BE1", "hbut 0x20 = 0x7B97", "hbuu 0x20 = 0x7B67", "hbuuz 0x20 = 0x7BF9", "hbuz 0x20 = 0x5198", "hbuzz 0x20 = 0x5DA8", "hbyi 0x20 = 0x821F", "hchaf 0x20 = 0x9E12", "hchg 0x20 = 0x7C66", "hcii 0x20 = 0x7C5B", "hcjwj 0x20 = 0x8F5D", "hcln 0x20 = 0x5289", "hclnz 0x20 = 0x5297", "hcmr 0x20 = 0x791C", "hcnl 0x20 = 0x9147", "hcnlz 0x20 = 0x912E", "hcno 0x20 = 0x6B5F", "hcq 0x20 = 0x8209", "hcv 0x20 = 0x5B03", "hcve 0x20 = 0x7C59", "hcymr 0x20 = 0x8B7D", "hd 0x20 = 0x79BE", "hda 0x20 = 0x9999", "hdaiu 0x20 = 0x7A4A", "hdamj 0x20 = 0x7A08", "hdb 0x20 = 0x7B56", "hdbgb 0x20 = 0x7A31", "hdbgr 0x20 = 0x7A20", "hdbhx 0x20 = 0x7A3B", "hdbm 0x20 = 0x79DF", "hdbmp 0x20 = 0x7A69", "hdbnd 0x20 = 0x7A03", "hdbof 0x20 = 0x7A44", "hdbt 0x20 = 0x76C9", "hdbu 0x20 = 0x7BB1", "hdbwi 0x20 = 0x7A71", "hdcnh 0x20 = 0x7A0A", "hdcru 0x20 = 0x7A05", "hdcsh 0x20 = 0x79CE", "hdd 0x20 = 0x7B96", "hddj 0x20 = 0x79E3", "hddmq 0x20 = 0x7A26", "hdf 0x20 = 0x79CB", "hdfb 0x20 = 0x7A0D", "hdfh 0x20 = 0x79D2", "hdgce 0x20 = 0x7A1C", "hdgcg 0x20 = 0x7A11", "hdggu 0x20 = 0x7A58", "hdgow 0x20 = 0x7A61", "hdgr 0x20 = 0x79F8", "hdhaf 0x20 = 0x9D38", "hdhafz 0x20 = 0x9DCD", "hdhah 0x20 = 0x7A46", "hdhd 0x20 = 0x79DD", "hdhhj 0x20 = 0x7A17", "hdhjg 0x20 = 0x7A2E", "hdhkb 0x20 = 0x7A5A", "hdhne 0x20 = 0x6BC7", "hdhp 0x20 = 0x79C5", "hdhpm 0x20 = 0x79EA", "hdhqo 0x20 = 0x79E9", "hdhqu 0x20 = 0x79CF", "hdhsb 0x20 = 0x7A28", "hdhu 0x20 = 0x79BF", "hdhup 0x20 = 0x79D6", "hdi 0x20 = 0x79C1", "hdiav 0x20 = 0x7A02", "hdice 0x20 = 0x7A04", "hdid 0x20 = 0x79EB", "hdiih 0x20 = 0x7A47", "hdipf 0x20 = 0x7A6E", "hdir 0x20 = 0x79EE", "hdirm 0x20 = 0x7A22", "hditc 0x20 = 0x7A6C", "hdiua 0x20 = 0x7A3D", "hdiuu 0x20 = 0x5D47", "hdjbc 0x20 = 0x7A39", "hdjbm 0x20 = 0x7A19", "hdjhp 0x20 = 0x79FA", "hdjip 0x20 = 0x7A57", "hdjmo 0x20 = 0x7A3C", "hdkkb 0x20 = 0x7A00", "hdl 0x20 = 0x79C9", "hdlbk 0x20 = 0x79E7", "hdlc 0x20 = 0x7C5F", "hdln 0x20 = 0x5229", "hdlnz 0x20 = 0x5241", "hdlo 0x20 = 0x7C0C", "hdlp 0x20 = 0x4E58", "hdlw 0x20 = 0x79DE", "hdlxh 0x20 = 0x79ED", "hdlz 0x20 = 0x79CD", "hdm 0x20 = 0x7B28", "hdmfj 0x20 = 0x79E4", "hdmfm 0x20 = 0x79E0", "hdmig 0x20 = 0x79F7", "hdmln 0x20 = 0x7508", "hdmrw 0x20 = 0x7A2B", "hdnd 0x20 = 0x5B63", "hdnhs 0x20 = 0x79C0", "hdnin 0x20 = 0x79FB", "hdnl 0x20 = 0x90BE", "hdnlz 0x20 = 0x9121", "hdnmu 0x20 = 0x81F2", "hdnob 0x20 = 0x7A30", "hdnwa 0x20 = 0x7A6D", "hdoe 0x20 = 0x9ECD", "hdog 0x20 = 0x7A1A", "hdogf 0x20 = 0x7A5B", "hdomb 0x20 = 0x7A10", "hdomd 0x20 = 0x7A0C", "hdonp 0x20 = 0x7A14", "hdoo 0x20 = 0x7B82", "hdp 0x20 = 0x6089", "hdph 0x20 = 0x79D8", "hdpp 0x20 = 0x79D5", "hdqmc 0x20 = 0x7A4D", "hdr 0x20 = 0x548C", "hdrhg 0x20 = 0x7A0B", "hdsp 0x20 = 0x79DC", "hdss 0x20 = 0x79EC", "hdsyh 0x20 = 0x7A4B", "hdta 0x20 = 0x7A13", "hdtmc 0x20 = 0x7A18", "hdtmcz 0x20 = 0x7A54", "hdtoe 0x20 = 0x7A6B", "hdtwv 0x20 = 0x7A60", "hdu 0x20 = 0x79C8", "hduce 0x20 = 0x7A2F", "hdv 0x20 = 0x59D4", "hdvio 0x20 = 0x7A56", "hdw 0x20 = 0x756A", "hdwce 0x20 = 0x7A37", "hdwd 0x20 = 0x7A1E", "hdwhd 0x20 = 0x7A1B", "hdwjr 0x20 = 0x7A12", "hdwlj 0x20 = 0x91CB", "hdyj 0x20 = 0x79D1", "hdymh 0x20 = 0x7A62", "hdyrb 0x20 = 0x7A3F", "hdyrd 0x20 = 0x7A15", "hdyrv 0x20 = 0x7A70", "hdytg 0x20 = 0x7A5C", "hdyto 0x20 = 0x7A5F", "hdyx 0x20 = 0x7A67", "heah 0x20 = 0x7C1C", "heam 0x20 = 0x7BDE", "hebt 0x20 = 0x76E4", "hed 0x20 = 0x69C3", "heg 0x20 = 0x57BC", "heha 0x20 = 0x7B94", "hehee 0x20 = 0x7065", "hehw 0x20 = 0x7C53", "heii 0x20 = 0x7C3F", "heir 0x20 = 0x7B88", "helb 0x20 = 0x5E4B", "hemr 0x20 = 0x78D0", "henl 0x20 = 0x910B", "hep 0x20 = 0x6147", "heq 0x20 = 0x642B", "heqj 0x20 = 0x5906", "her 0x20 = 0x5404", "hesu 0x20 = 0x7B35", "hetc 0x20 = 0x7BCA", "hetlj 0x20 = 0x97B6", "hev 0x20 = 0x5ABB", "hevif 0x20 = 0x7E0F", "hey 0x20 = 0x51AC", "heyhv 0x20 = 0x8929", "heyr 0x20 = 0x9ECF", "heyub 0x20 = 0x9ED0", "hfaht 0x20 = 0x9D7F", "hfate 0x20 = 0x9E14", "hfb 0x20 = 0x7B72", "hfbn 0x20 = 0x7BBE", "hfbw 0x20 = 0x7C39", "hfd 0x20 = 0x4E4E", "hfdk 0x20 = 0x9D03", "hfdz 0x20 = 0x91C6", "hffs 0x20 = 0x7C29", "hfhaf 0x20 = 0x9D96", "hfhn 0x20 = 0x9CE7", "hfhrb 0x20 = 0x9DB3", "hfhu 0x20 = 0x7BB5", "hfhyu 0x20 = 0x9DC8", "hfice 0x20 = 0x9D54", "hfjc 0x20 = 0x9D25", "hfjp 0x20 = 0x9D15", "hfks 0x20 = 0x52F3", "hflmi 0x20 = 0x8775", "hfmln 0x20 = 0x7503", "hfn 0x20 = 0x9CE6", "hfnl 0x20 = 0x9114", "hfno 0x20 = 0x6B4D", "hfog 0x20 = 0x9D7B", "hfomd 0x20 = 0x9D4C", "hfp 0x20 = 0x6101", "hfq 0x20 = 0x63EB", "hfsqf 0x20 = 0x9DCC", "hftgi 0x20 = 0x9E03", "hftmc 0x20 = 0x9D80", "hfv 0x20 = 0x5A9D", "hfydk 0x20 = 0x9DFB", "hgdi 0x20 = 0x7B49", "hgea 0x20 = 0x6FCC", "hgf 0x20 = 0x718F", "hgfmu 0x20 = 0x769D", "hgg 0x20 = 0x7B40", "hghne 0x20 = 0x6BC0", "hghu 0x20 = 0x5148", "hgit 0x20 = 0x7BD5", "hgks 0x20 = 0x52D5", "hgmbc 0x20 = 0x9867", "hgmln 0x20 = 0x7500", "hgni 0x20 = 0x7C4C", "hgnl 0x20 = 0x90F5", "hgor 0x20 = 0x7C2D", "hgpm 0x20 = 0x7B60", "hgr 0x20 = 0x544A", "hgrg 0x20 = 0x7C49", "hgrly 0x20 = 0x9760", "hhag 0x20 = 0x7BC1", "hhbuc 0x20 = 0x8CBF", "hhdi 0x20 = 0x5C04", "hhdn 0x20 = 0x7C03", "hhdnz 0x20 = 0x7B63", "hhfbr 0x20 = 0x8EBA", "hhffs 0x20 = 0x8EC2", "hhgr 0x20 = 0x7B76", "hhgu 0x20 = 0x7B45", "hhhaf 0x20 = 0x9D79", "hhhj 0x20 = 0x7B84", "hhhnd 0x20 = 0x8EB2", "hhj 0x20 = 0x5351", "hhjg 0x20 = 0x7BA0", "hhjmc 0x20 = 0x8EC9", "hhjr 0x20 = 0x7B48", "hhk 0x20 = 0x7B11", "hhkb 0x20 = 0x7C25", "hhlo 0x20 = 0x7B0A", "hhmbc 0x20 = 0x9808", "hhn 0x20 = 0x8EAC", "hhnwf 0x20 = 0x9BEC", "hhoe 0x20 = 0x9ECE", "hhol 0x20 = 0x7BFD", "hhoo 0x20 = 0x7C01", "hhqm 0x20 = 0x7B19", "hhrb 0x20 = 0x7BE9", "hhsav 0x20 = 0x8EBD", "hhsb 0x20 = 0x7BC7", "hhsrr 0x20 = 0x8EC0", "hhuc 0x20 = 0x7C6B", "hhw 0x20 = 0x7559", "hhwgf 0x20 = 0x9EE7", "hhwp 0x20 = 0x7BE6", "hhxc 0x20 = 0x7C45", "hhyo 0x20 = 0x7B44", "hhyu 0x20 = 0x7BEA", "hi 0x20 = 0x9B3C", "hiav 0x20 = 0x7B64", "hibt 0x20 = 0x7C20", "hibtv 0x20 = 0x9B4D", "hifb 0x20 = 0x9B48", "hihaf 0x20 = 0x9D5D", "hihml 0x20 = 0x9B3F", "hihq 0x20 = 0x72A9", "hihr 0x20 = 0x7BB4", "hii 0x20 = 0x7B8B", "hiih 0x20 = 0x7BF8", "hiikk 0x20 = 0x9B43", "hiirm 0x20 = 0x9B4A", "hiiu 0x20 = 0x9B46", "hijd 0x20 = 0x9B45", "hije 0x20 = 0x9B3E", "himlb 0x20 = 0x9B4E", "himwf 0x20 = 0x9B52", "hino 0x20 = 0x4E4F", "hio 0x20 = 0x74DC", "hiog 0x20 = 0x9B4B", "hir 0x20 = 0x7B1E", "hit 0x20 = 0x7B32", "hitc 0x20 = 0x7C3E", "hitmc 0x20 = 0x9B4C", "hivio 0x20 = 0x9B55", "hixp 0x20 = 0x7C0F", "hiyj 0x20 = 0x9B41", "hiypm 0x20 = 0x9B56", "hiyub 0x20 = 0x9B51", "hiz 0x20 = 0x4E48", "hj 0x20 = 0x5343", "hjbu 0x20 = 0x76FE", "hjcm 0x20 = 0x7B9C", "hjd 0x20 = 0x6731", "hjhaf 0x20 = 0x9D6F", "hjhafz 0x20 = 0x9DCE", "hjhne 0x20 = 0x6BB5", "hjii 0x20 = 0x7BFF", "hjiiz 0x20 = 0x7C19", "hjjj 0x20 = 0x7C33", "hjjo 0x20 = 0x7C10", "hjju 0x20 = 0x7BC4", "hjka 0x20 = 0x7BB8", "hjlo 0x20 = 0x7B91", "hjlp 0x20 = 0x4E56", "hjmbc 0x20 = 0x984A", "hjmk 0x20 = 0x7C06", "hjmu 0x20 = 0x7B66", "hjnl 0x20 = 0x90EB", "hjrr 0x20 = 0x7BA1", "hjsyy 0x20 = 0x7FF1", "hjtg 0x20 = 0x5782", "hjwg 0x20 = 0x91CD", "hk 0x20 = 0x592D", "hka 0x20 = 0x660B", "hkcf 0x20 = 0x7C1D", "hkd 0x20 = 0x68E8", "hkhaf 0x20 = 0x9E04", "hkk 0x20 = 0x7B05", "hklq 0x20 = 0x8087", "hkoo 0x20 = 0x7B74", "hkp 0x20 = 0x61F2", "hkrbr 0x20 = 0x55AC", "hks 0x20 = 0x7AFB", "hksr 0x20 = 0x7B33", "hkvif 0x20 = 0x7DAE", "hkymr 0x20 = 0x8B65", "hlail 0x20 = 0x537F", "hlapv 0x20 = 0x9F43", "hlbi 0x20 = 0x79B9", "hlbuc 0x20 = 0x8CEA", "hljbv 0x20 = 0x9F49", "hlkn 0x20 = 0x9F3D", "hlle 0x20 = 0x9F42", "hlln 0x20 = 0x5293", "hllnz 0x20 = 0x7B30", "hllv 0x20 = 0x7C0D", "hlm 0x20 = 0x4E18", "hlmbc 0x20 = 0x980E", "hlmc 0x20 = 0x7C23", "hlmj 0x20 = 0x9F3E", "hlmln 0x20 = 0x9F40", "hlmmf 0x20 = 0x79A6", "hlnj 0x20 = 0x7C30", "hlno 0x20 = 0x6B23", "hlo 0x20 = 0x722A", "hlpr 0x20 = 0x9F41", "hlq 0x20 = 0x7B46", "hlsl 0x20 = 0x536F", "hlslc 0x20 = 0x8D15", "hlsld 0x20 = 0x5B75", "hlsle 0x20 = 0x6BC8", "hlsli 0x20 = 0x5375", "hltwv 0x20 = 0x9F48", "hlvk 0x20 = 0x7C54", "hlvvu 0x20 = 0x9F46", "hlw 0x20 = 0x7B1B", "hlwli 0x20 = 0x65B6", "hlx 0x20 = 0x7C2B", "hlxh 0x20 = 0x7B2B", "hlypm 0x20 = 0x9F47", "hm 0x20 = 0x7B01", "hmbc 0x20 = 0x7BE2", "hmbg 0x20 = 0x7C57", "hmbu 0x20 = 0x771A", "hmc 0x20 = 0x5175", "hmd 0x20 = 0x7AFD", "hmgn 0x20 = 0x7C48", "hmgnz 0x20 = 0x7B8C", "hmgt 0x20 = 0x7B6D", "hmh 0x20 = 0x4E52", "hmhaf 0x20 = 0x9D1F", "hmhqm 0x20 = 0x7521", "hmi 0x20 = 0x4E53", "hmj 0x20 = 0x7AFF", "hmkd 0x20 = 0x7BC9", "hmkq 0x20 = 0x7BEB", "hml 0x20 = 0x65A4", "hmm 0x20 = 0x7AFA", "hmmu 0x20 = 0x7B0E", "hmnk 0x20 = 0x7B51", "hmnl 0x20 = 0x90B1", "hmnlz 0x20 = 0x90B8", "hmnlzz 0x20 = 0x7B3B", "hmnr 0x20 = 0x7B34", "hmoo 0x20 = 0x7B6E", "hmr 0x20 = 0x540E", "hmsl 0x20 = 0x7B47", "hmsmb 0x20 = 0x6B78", "hmsp 0x20 = 0x5C54", "hmsu 0x20 = 0x536E", "hmt 0x20 = 0x7B04", "hmu 0x20 = 0x5CB3", "hmua 0x20 = 0x7C2A", "hmwd 0x20 = 0x7BE5", "hmwf 0x20 = 0x7BFB", "hmwj 0x20 = 0x7C1F", "hmwks 0x20 = 0x7525", "hmy 0x20 = 0x65A5", "hn 0x20 = 0x51E0", "hnamh 0x20 = 0x98BA", "hnbmc 0x20 = 0x98B6", "hncr 0x20 = 0x7C37", "hnd 0x20 = 0x6735", "hndo 0x20 = 0x7B9B", "hndz 0x20 = 0x68A8", "hne 0x20 = 0x6BB3", "hnef 0x20 = 0x7BDC", "hneii 0x20 = 0x98BE", "hnhag 0x20 = 0x51F0", "hnhe 0x20 = 0x7B08", "hnhhh 0x20 = 0x98A9", "hnhhw 0x20 = 0x98C0", "hnhjr 0x20 = 0x98B3", "hnhq 0x20 = 0x7281", "hnhxe 0x20 = 0x98BC", "hni 0x20 = 0x51E1", "hnib 0x20 = 0x7B69", "hnir 0x20 = 0x98B1", "hnkcf 0x20 = 0x98C9", "hnkg 0x20 = 0x7B73", "hnkm 0x20 = 0x7B75", "hnld 0x20 = 0x7BE8", "hnlh 0x20 = 0x7B2C", "hnmaf 0x20 = 0x9CF3", "hnmgh 0x20 = 0x98CB", "hnmli 0x20 = 0x98A8", "hnmni 0x20 = 0x5919", "hnmnn 0x20 = 0x98B2", "hnmvh 0x20 = 0x98AC", "hnot 0x20 = 0x7C26", "hnp 0x20 = 0x6106", "hnpru 0x20 = 0x98AE", "hnq 0x20 = 0x63A3", "hnryo 0x20 = 0x8E97", "hnsyh 0x20 = 0x98C2", "hnwp 0x20 = 0x98B8", "hnyhv 0x20 = 0x88FD", "hnymr 0x20 = 0x8B86", "hnyr 0x20 = 0x98AD", "hnyy 0x20 = 0x7BDB", "ho 0x20 = 0x516B", "hoa 0x20 = 0x661D", "hoami 0x20 = 0x5F97", "hoamo 0x20 = 0x5FA5", "hoau 0x20 = 0x722C", "hoaue 0x20 = 0x5FC1", "hoav 0x20 = 0x5F88", "hobc 0x20 = 0x7C72", "hobg 0x20 = 0x7BE7", "hobgn 0x20 = 0x8862", "hobgr 0x20 = 0x5F9F", "hobm 0x20 = 0x5F82", "hobou 0x20 = 0x5FAD", "hobrn 0x20 = 0x8855", "hobvk 0x20 = 0x5FAF", "hoci 0x20 = 0x5F78", "hocmn 0x20 = 0x929C", "hodhe 0x20 = 0x5F7C", "hodi 0x20 = 0x7B26", "hodmq 0x20 = 0x5FAB", "hodoo 0x20 = 0x5FA0", "hodqn 0x20 = 0x885B", "hoemn 0x20 = 0x884D", "hof 0x20 = 0x71A7", "hofbk 0x20 = 0x5FB6", "hofbr 0x20 = 0x5F9C", "hogdi 0x20 = 0x5F85", "hoggn 0x20 = 0x8857", "hogyo 0x20 = 0x5F92", "hohaf 0x20 = 0x9D14", "hohafz 0x20 = 0x9D29", "hohag 0x20 = 0x5FA8", "hohgn 0x20 = 0x885D", "hohju 0x20 = 0x5FAA", "hohne 0x20 = 0x5F79", "hohpm 0x20 = 0x5F7D", "hohqo 0x20 = 0x74DE", "hohsk 0x20 = 0x5FBC", "hoi 0x20 = 0x7B4F", "hoidn 0x20 = 0x8853", "hoim 0x20 = 0x7C64", "hojmf 0x20 = 0x5F96", "hojrn 0x20 = 0x885A", "hojwp 0x20 = 0x5FB7", "hokbk 0x20 = 0x5FB9", "hokmr 0x20 = 0x5F9B", "hoks 0x20 = 0x52AE", "hold 0x20 = 0x7BE0", "holii 0x20 = 0x74E5", "holk 0x20 = 0x7B71", "holln 0x20 = 0x5F7F", "holmy 0x20 = 0x5F98", "holq 0x20 = 0x5F8B", "homb 0x20 = 0x7C65", "homcw 0x20 = 0x5F86", "homd 0x20 = 0x7B61", "homg 0x20 = 0x7B4C", "homi 0x20 = 0x7B2D", "homjn 0x20 = 0x884E", "homk 0x20 = 0x7BAF", "hommn 0x20 = 0x884C", "homn 0x20 = 0x7B12", "homo 0x20 = 0x7C3D", "homr 0x20 = 0x7B54", "homrn 0x20 = 0x8859", "homvm 0x20 = 0x5F91", "homym 0x20 = 0x5F81", "honhe 0x20 = 0x5F76", "honk 0x20 = 0x7BCC", "honkn 0x20 = 0x8861", "hooae 0x20 = 0x5FA9", "hooma 0x20 = 0x5FBB", "hoomd 0x20 = 0x5F90", "hoomi 0x20 = 0x5F7E", "hoooo 0x20 = 0x5F9E", "hoos 0x20 = 0x7B70", "hoovl 0x20 = 0x5FA1", "hop 0x20 = 0x616B", "hopa 0x20 = 0x5F87", "hopi 0x20 = 0x5F74", "hopiz 0x20 = 0x74DD", "hopru 0x20 = 0x74DF", "hoqb 0x20 = 0x7BDF", "hor 0x20 = 0x548E", "horse 0x20 = 0x5FA6", "hos 0x20 = 0x7B2E", "hoseq 0x20 = 0x5FB2", "hosj 0x20 = 0x8073", "hotcn 0x20 = 0x8856", "hotq 0x20 = 0x5F89", "houfk 0x20 = 0x5FBD", "houfkz 0x20 = 0x9EF4", "houfkzz 0x20 = 0x9C34", "hougk 0x20 = 0x5FB5", "hourk 0x20 = 0x5FBE", "houuk 0x20 = 0x5FAE", "hovie 0x20 = 0x5F8C", "howr 0x20 = 0x5F8A", "hoybp 0x20 = 0x5FBF", "hoybs 0x20 = 0x5FAC", "hoyg 0x20 = 0x5F80", "hoyhs 0x20 = 0x5F77", "hoyin 0x20 = 0x8852", "hoyj 0x20 = 0x659E", "hoylo 0x20 = 0x5F99", "hoyrv 0x20 = 0x5FC0", "hoz 0x20 = 0x4E42", "hozz 0x20 = 0x5F73", "hp 0x20 = 0x4E47", "hpa 0x20 = 0x660F", "hpaz 0x20 = 0x7B4D", "hpdk 0x20 = 0x7B77", "hphaf 0x20 = 0x9D56", "hphh 0x20 = 0x7B0F", "hpln 0x20 = 0x5269", "hpm 0x20 = 0x6C10", "hpmm 0x20 = 0x7B09", "hpnl 0x20 = 0x910E", "hpp 0x20 = 0x7B13", "hpr 0x20 = 0x7B31", "hpru 0x20 = 0x7B23", "hpsl 0x20 = 0x5370", "hpuu 0x20 = 0x7BD8", "hq 0x20 = 0x725B", "hqate 0x20 = 0x72A6", "hqbmc 0x20 = 0x728B", "hqbtu 0x20 = 0x7285", "hqbu 0x20 = 0x770B", "hqbuk 0x20 = 0x7291", "hqda 0x20 = 0x7C4D", "hqfou 0x20 = 0x7288", "hqg 0x20 = 0x7261", "hqgdi 0x20 = 0x7279", "hqgwc 0x20 = 0x72A2", "hqhdj 0x20 = 0x7290", "hqhgr 0x20 = 0x727F", "hqhkb 0x20 = 0x729E", "hqhpm 0x20 = 0x7274", "hqhq 0x20 = 0x726A", "hqhqm 0x20 = 0x7272", "hqhw 0x20 = 0x7C40", "hqi 0x20 = 0x6211", "hqipf 0x20 = 0x72A5", "hqiuh 0x20 = 0x727B", "hqjbm 0x20 = 0x7286", "hqjm 0x20 = 0x7BF2", "hqjnd 0x20 = 0x7278", "hqjqr 0x20 = 0x7297", "hqjr 0x20 = 0x726F", "hqkmr 0x20 = 0x7284", "hqks 0x20 = 0x725E", "hqlw 0x20 = 0x7270", "hqlxh 0x20 = 0x726C", "hqm 0x20 = 0x751F", "hqmb 0x20 = 0x7B90", "hqmc 0x20 = 0x7C00", "hqmmr 0x20 = 0x727E", "hqmqj 0x20 = 0x62DC", "hqmtb 0x20 = 0x72A1", "hqmvm 0x20 = 0x727C", "hqnbg 0x20 = 0x89D5", "hqnkq 0x20 = 0x728D", "hqo 0x20 = 0x5931", "hqok 0x20 = 0x7267", "hqomg 0x20 = 0x7277", "hqp 0x20 = 0x725D", "hqpd 0x20 = 0x7260", "hqphh 0x20 = 0x7269", "hqpuu 0x20 = 0x7293", "hqr 0x20 = 0x7B58", "hqrse 0x20 = 0x728C", "hqsb 0x20 = 0x7B8D", "hqshi 0x20 = 0x7263", "hqta 0x20 = 0x7C0E", "hqtb 0x20 = 0x7C3C", "hqtce 0x20 = 0x72AA", "hqtgi 0x20 = 0x72A7", "hqthb 0x20 = 0x7295", "hqtm 0x20 = 0x7B9D", "hqu 0x20 = 0x6BDB", "hqvvu 0x20 = 0x72A3", "hqwj 0x20 = 0x7C5C", "hqwlp 0x20 = 0x72A4", "hqwyi 0x20 = 0x7273", "hqyrb 0x20 = 0x7292", "hqyrd 0x20 = 0x7289", "hqytg 0x20 = 0x729D", "hrbc 0x20 = 0x7BD4", "hrg 0x20 = 0x5795", "hrhaf 0x20 = 0x9D60", "hrhafz 0x20 = 0x9D45", "hrhafzz 0x20 = 0x9D30", "hrhafzzz 0x20 = 0x9D2D", "hrhr 0x20 = 0x7B65", "hrj 0x20 = 0x961C", "hrks 0x20 = 0x52C2", "hrlb 0x20 = 0x5E25", "hrlmi 0x20 = 0x86D7", "hrln 0x20 = 0x522E", "hrlnz 0x20 = 0x5284", "hrmbc 0x20 = 0x9827", "hrmlb 0x20 = 0x5E2B", "hrmr 0x20 = 0x7C2C", "hrnl 0x20 = 0x90C8", "hrnlz 0x20 = 0x90DC", "hrog 0x20 = 0x96D2", "hrok 0x20 = 0x555F", "hrrj 0x20 = 0x7C1E", "hru 0x20 = 0x5CCA", "hrup 0x20 = 0x7B22", "hrvc 0x20 = 0x7C28", "hryf 0x20 = 0x70CF", "hs 0x20 = 0x6236", "hsb 0x20 = 0x80A9", "hsbr 0x20 = 0x6243", "hsbt 0x20 = 0x6241", "hsff 0x20 = 0x624A", "hshml 0x20 = 0x6240", "hshne 0x20 = 0x6BB7", "hshr 0x20 = 0x7B24", "hshu 0x20 = 0x515C", "hsik 0x20 = 0x623E", "hsko 0x20 = 0x7BCB", "hslmy 0x20 = 0x6249", "hsly 0x20 = 0x7BDA", "hsmg 0x20 = 0x7B50", "hsmr 0x20 = 0x7B25", "hsmt 0x20 = 0x7C43", "hsog 0x20 = 0x96C7", "hsqf 0x20 = 0x7BE4", "hsr 0x20 = 0x7B38", "hsrau 0x20 = 0x6248", "hsru 0x20 = 0x623A", "hssyy 0x20 = 0x6247", "hsyg 0x20 = 0x7C4A", "hsyhs 0x20 = 0x623F", "hsyhv 0x20 = 0x6246", "hsyj 0x20 = 0x623D", "hsyr 0x20 = 0x6242", "ht 0x20 = 0x5347", "htbn 0x20 = 0x7BAD", "htce 0x20 = 0x7C38", "htcg 0x20 = 0x7C0A", "hthaf 0x20 = 0x9DD1", "htkr 0x20 = 0x7BAC", "htmc 0x20 = 0x7C27", "htmcz 0x20 = 0x7B95", "htmf 0x20 = 0x8843", "htng 0x20 = 0x8844", "htsj 0x20 = 0x8848", "htsl 0x20 = 0x5379", "httb 0x20 = 0x7BDD", "httwi 0x20 = 0x884A", "hu 0x20 = 0x513F", "hubjj 0x20 = 0x9F32", "hubuc 0x20 = 0x8D0A", "hubucz 0x20 = 0x9F30", "hubuk 0x20 = 0x9F33", "hubvk 0x20 = 0x9F37", "hucsh 0x20 = 0x9F22", "hud 0x20 = 0x81EC", "hue 0x20 = 0x6C8A", "huff 0x20 = 0x6BEF", "hugdi 0x20 = 0x9F2D", "huhaf 0x20 = 0x9D06", "huhafz 0x20 = 0x9D5A", "huhafzz 0x20 = 0x9D82", "huhafzzz 0x20 = 0x9D9E", "huhey 0x20 = 0x9F28", "huhgu 0x20 = 0x6BE8", "huhguz 0x20 = 0x515F", "huhqm 0x20 = 0x9F2A", "huhuu 0x20 = 0x6BF3", "huhyu 0x20 = 0x9F36", "huij 0x20 = 0x6BE7", "huije 0x20 = 0x6BEC", "huik 0x20 = 0x81ED", "huikk 0x20 = 0x7782", "huikkz 0x20 = 0x9F25", "huikz 0x20 = 0x9F23", "hujck 0x20 = 0x9F35", "hulmc 0x20 = 0x7A68", "hulw 0x20 = 0x9F2C", "humbc 0x20 = 0x9839", "humcw 0x20 = 0x6BE2", "hummr 0x20 = 0x9F2F", "humr 0x20 = 0x9F2B", "hunkg 0x20 = 0x9F2E", "hunkq 0x20 = 0x6BFD", "hunl 0x20 = 0x90A5", "hunlz 0x20 = 0x90CB", "hunlzz 0x20 = 0x90F3", "huno 0x20 = 0x6B4B", "hunwa 0x20 = 0x6C0C", "huooo 0x20 = 0x81EE", "hup 0x20 = 0x606F", "hupr 0x20 = 0x9F29", "hupz 0x20 = 0x6C0F", "huqmb 0x20 = 0x9F31", "husav 0x20 = 0x9F34", "husl 0x20 = 0x536C", "hutak 0x20 = 0x6C01", "hutma 0x20 = 0x6C06", "hutxc 0x20 = 0x9F38", "huwml 0x20 = 0x9F3B", "huwp 0x20 = 0x6BF8", "huyk 0x20 = 0x9F24", "huytr 0x20 = 0x6BF0", "hvbu 0x20 = 0x80E4", "hvbuu 0x20 = 0x899B", "hvbuuz 0x20 = 0x89A3", "hve 0x20 = 0x7B2F", "hvfi 0x20 = 0x7BB9", "hvhi 0x20 = 0x9B4F", "hvif 0x20 = 0x7CFB", "hvil 0x20 = 0x7C6A", "hvmln 0x20 = 0x74FE", "hvno 0x20 = 0x7BC6", "hvr 0x20 = 0x7B4E", "hwe 0x20 = 0x7B1D", "hwgtj 0x20 = 0x777E", "hwhaf 0x20 = 0x9DED", "hwhafz 0x20 = 0x9DB9", "hwhd 0x20 = 0x7B98", "hwim 0x20 = 0x7C02", "hwjr 0x20 = 0x7B87", "hwk 0x20 = 0x56DF", "hwkk 0x20 = 0x56EA", "hwks 0x20 = 0x52EB", "hwl 0x20 = 0x7B1A", "hwlg 0x20 = 0x7C6E", "hwli 0x20 = 0x7BFE", "hwml 0x20 = 0x7B85", "hwnl 0x20 = 0x9131", "hwsyy 0x20 = 0x7FFB", "hwtq 0x20 = 0x7BF3", "hx 0x20 = 0x81FC", "hxbc 0x20 = 0x8208", "hxbt 0x20 = 0x76E5", "hxh 0x20 = 0x8EAB", "hxhu 0x20 = 0x5152", "hxjc 0x20 = 0x8F3F", "hxjj 0x20 = 0x8201", "hxlb 0x20 = 0x5E20", "hxle 0x20 = 0x53DF", "hxo 0x20 = 0x81FE", "hxpf 0x20 = 0x8204", "hxumu 0x20 = 0x9F20", "hxwks 0x20 = 0x8205", "hxyc 0x20 = 0x8207", "hyabu 0x20 = 0x8252", "hyau 0x20 = 0x8225", "hybb 0x20 = 0x7C3B", "hybg 0x20 = 0x7C6C", "hybnd 0x20 = 0x8240", "hybp 0x20 = 0x7C60", "hybs 0x20 = 0x7BE3", "hyck 0x20 = 0x7B4A", "hycr 0x20 = 0x8239", "hyfb 0x20 = 0x8244", "hyfbw 0x20 = 0x8261", "hyha 0x20 = 0x8236", "hyhaf 0x20 = 0x9D43", "hyhag 0x20 = 0x824E", "hyhej 0x20 = 0x8242", "hyheq 0x20 = 0x823D", "hyhho 0x20 = 0x825E", "hyhj 0x20 = 0x7BF7", "hyhn 0x20 = 0x7B10", "hyhne 0x20 = 0x822C", "hyhr 0x20 = 0x7C09", "hyhs 0x20 = 0x7C69", "hyhsb 0x20 = 0x8251", "hyhxe 0x20 = 0x8258", "hyjp 0x20 = 0x8235", "hykm 0x20 = 0x7C05", "hykms 0x20 = 0x823F", "hykpb 0x20 = 0x825C", "hyl 0x20 = 0x822F", "hylii 0x20 = 0x87BD", "hyllv 0x20 = 0x825B", "hylw 0x20 = 0x8233", "hym 0x20 = 0x8221", "hyme 0x20 = 0x8228", "hymnr 0x20 = 0x8238", "hymo 0x20 = 0x7BF4", "hync 0x20 = 0x7C6F", "hyndt 0x20 = 0x824B", "hynkg 0x20 = 0x8247", "hynri 0x20 = 0x826C", "hyoge 0x20 = 0x826D", "hyoj 0x20 = 0x7BA4", "hyomd 0x20 = 0x8245", "hyomi 0x20 = 0x8232", "hyomr 0x20 = 0x8259", "hyos 0x20 = 0x8234", "hypt 0x20 = 0x7C5A", "hyptd 0x20 = 0x8253", "hypu 0x20 = 0x7B8E", "hypuz 0x20 = 0x8652", "hyr 0x20 = 0x7B18", "hyrb 0x20 = 0x7BD9", "hyrl 0x20 = 0x7BF0", "hyro 0x20 = 0x7C47", "hysd 0x20 = 0x7BB7", "hysh 0x20 = 0x8220", "hyshu 0x20 = 0x8249", "hysk 0x20 = 0x7C07", "hysmt 0x20 = 0x8266", "hysy 0x20 = 0x7B8A", "hyt 0x20 = 0x7B20", "hytbo 0x20 = 0x8268", "hytc 0x20 = 0x823C", "hytct 0x20 = 0x8257", "hytgi 0x20 = 0x8264", "hytgm 0x20 = 0x8256", "hythu 0x20 = 0x824F", "hytwa 0x20 = 0x825A", "hyu 0x20 = 0x8222", "hyub 0x20 = 0x7BF1", "hyuce 0x20 = 0x8250", "hyuo 0x20 = 0x5146", "hyuoc 0x20 = 0x982B", "hyuou 0x20 = 0x899C", "hyv 0x20 = 0x7B00", "hywl 0x20 = 0x823A", "hywv 0x20 = 0x7C11", "hyybs 0x20 = 0x8255", "hyyhn 0x20 = 0x822A", "hyyhs 0x20 = 0x822B", "hyyo 0x20 = 0x7C67", "hyyps 0x20 = 0x8263", "hyypt 0x20 = 0x826B", "hyytg 0x20 = 0x825F", "hyyvi 0x20 = 0x8237", "hyyx 0x20 = 0x8269", "i 0x20 = 0x6208", "iaie 0x20 = 0x5EC4", "iav 0x20 = 0x826F", "ibcn 0x20 = 0x5EC1", "ibcv 0x20 = 0x5EEE", "ibdi 0x20 = 0x5C03", "ibg 0x20 = 0x5871", "ibhaf 0x20 = 0x9D4F", "ibhafz 0x20 = 0x9DDB", "ibnl 0x20 = 0x9118", "ibnlz 0x20 = 0x90D9", "ibpp 0x20 = 0x80FD", "icnl 0x20 = 0x913A", "icno 0x20 = 0x5EDE", "id 0x20 = 0x5E8A", "idbu 0x20 = 0x5EC2", "idd 0x20 = 0x9EBB", "idfd 0x20 = 0x7CDC", "idg 0x20 = 0x587A", "idhd 0x20 = 0x7A48", "idhi 0x20 = 0x9B54", "idhq 0x20 = 0x7298", "idhqu 0x20 = 0x9EBE", "idjtc 0x20 = 0x9EC2", "idlmy 0x20 = 0x9761", "idlyf 0x20 = 0x7222", "idmr 0x20 = 0x78E8", "idoo 0x20 = 0x5EB2", "idp 0x20 = 0x6037", "idq 0x20 = 0x6469", "idsje 0x20 = 0x9EC0", "idvi 0x20 = 0x9EBC", "idvif 0x20 = 0x7E3B", "idz 0x20 = 0x672E", "iea 0x20 = 0x6636", "iebt 0x20 = 0x76DA", "iedhe 0x20 = 0x76B4", "ieln 0x20 = 0x526B", "ieok 0x20 = 0x6551", "ieyhv 0x20 = 0x88D8", "ifamh 0x20 = 0x7993", "ifamo 0x20 = 0x7994", "ifasy 0x20 = 0x79A2", "ifbbr 0x20 = 0x798D", "ifbgr 0x20 = 0x7982", "ifbjj 0x20 = 0x7988", "ifbk 0x20 = 0x5EE0", "ifbm 0x20 = 0x7956", "ifbme 0x20 = 0x7990", "ifbuu 0x20 = 0x8996", "ifdmq 0x20 = 0x7995", "iffkc 0x20 = 0x79B7", "ifg 0x20 = 0x793E", "ifgi 0x20 = 0x795B", "ifgni 0x20 = 0x79B1", "ifgrr 0x20 = 0x79A7", "ifhaf 0x20 = 0x9DD3", "ifhgr 0x20 = 0x7970", "ifhjd 0x20 = 0x7969", "ifhk 0x20 = 0x7945", "ifhml 0x20 = 0x7948", "ifhne 0x20 = 0x794B", "ifhpm 0x20 = 0x7957", "ifhqo 0x20 = 0x7951", "ifhuc 0x20 = 0x79B6", "ifhup 0x20 = 0x7947", "ifhyo 0x20 = 0x7967", "ifhyu 0x20 = 0x79A0", "ifikk 0x20 = 0x7953", "ifit 0x20 = 0x7974", "ifjbc 0x20 = 0x799B", "ifjr 0x20 = 0x795C", "ifkr 0x20 = 0x7950", "ifl 0x20 = 0x794C", "iflwl 0x20 = 0x795E", "ifmbc 0x20 = 0x9863", "ifmfb 0x20 = 0x79B0", "ifmk 0x20 = 0x7946", "ifmmv 0x20 = 0x7973", "ifmr 0x20 = 0x794F", "ifmrw 0x20 = 0x798F", "ifmtb 0x20 = 0x79B2", "ifmwg 0x20 = 0x798B", "ifmwj 0x20 = 0x79AB", "ifnhs 0x20 = 0x793D", "ifnl 0x20 = 0x7941", "ifnlz 0x20 = 0x912C", "ifnmu 0x20 = 0x796A", "ifodi 0x20 = 0x7954", "ifohv 0x20 = 0x7963", "ifoll 0x20 = 0x7944", "ifoma 0x20 = 0x79AC", "ifomb 0x20 = 0x79B4", "ifomr 0x20 = 0x796B", "ifos 0x20 = 0x795A", "ifp 0x20 = 0x617C", "ifpd 0x20 = 0x7942", "ifph 0x20 = 0x7955", "ifpi 0x20 = 0x793F", "ifpou 0x20 = 0x7979", "ifqhk 0x20 = 0x798A", "ifrhu 0x20 = 0x795D", "ifrrj 0x20 = 0x79AA", "ifru 0x20 = 0x7940", "ifryo 0x20 = 0x8E59", "ifshr 0x20 = 0x7952", "ifsme 0x20 = 0x7972", "ifsmr 0x20 = 0x7960", "ifsqf 0x20 = 0x79A1", "ifsyy 0x20 = 0x7964", "iftgf 0x20 = 0x799A", "iftmc 0x20 = 0x797A", "iftmd 0x20 = 0x7996", "iftq 0x20 = 0x7965", "iftwt 0x20 = 0x79AE", "ifvio 0x20 = 0x79A8", "ifvne 0x20 = 0x797F", "ifvno 0x20 = 0x7992", "ifwd 0x20 = 0x797C", "ifwly 0x20 = 0x79A4", "ifwp 0x20 = 0x7997", "ifybb 0x20 = 0x7998", "ifybc 0x20 = 0x798E", "ifyhs 0x20 = 0x794A", "ifylm 0x20 = 0x7949", "ifyoj 0x20 = 0x797D", "ifyrv 0x20 = 0x79B3", "ifyto 0x20 = 0x79AD", "ig 0x20 = 0x5E84", "igce 0x20 = 0x5EB1", "igdi 0x20 = 0x5EA4", "igit 0x20 = 0x5EC5", "igow 0x20 = 0x5EE7", "igsk 0x20 = 0x5ED2", "igti 0x20 = 0x5EDA", "ih 0x20 = 0x620A", "ihhj 0x20 = 0x5EB3", "ihhqu 0x20 = 0x6BFF", "ihhw 0x20 = 0x5EC7", "ihi 0x20 = 0x620D", "ihiz 0x20 = 0x5EC6", "ihji 0x20 = 0x882F", "ihln 0x20 = 0x527C", "ihm 0x20 = 0x620C", "ihml 0x20 = 0x5E8D", "ihmr 0x20 = 0x54B8", "ihmv 0x20 = 0x5A01", "ihpm 0x20 = 0x5E95", "ihq 0x20 = 0x725F", "ihrm 0x20 = 0x5F67", "ihs 0x20 = 0x6210", "ihu 0x20 = 0x5141", "ihxe 0x20 = 0x5ECB", "ihxo 0x20 = 0x5EBE", "ihymf 0x20 = 0x621A", "ihyo 0x20 = 0x5EA3", "ii 0x20 = 0x6214", "iib 0x20 = 0x6717", "iibt 0x20 = 0x76DE", "iiif 0x20 = 0x7D6B", "iiih 0x20 = 0x53C3", "iiil 0x20 = 0x5ECA", "iiln 0x20 = 0x5246", "iinl 0x20 = 0x90CE", "iino 0x20 = 0x6B34", "iiuh 0x20 = 0x5EAC", "iixp 0x20 = 0x5ED8", "ij 0x20 = 0x620E", "ijb 0x20 = 0x752B", "ije 0x20 = 0x6C42", "ijez 0x20 = 0x5E8B", "ijjb 0x20 = 0x5EDF", "ijkd 0x20 = 0x5EA8", "ijlmi 0x20 = 0x87B7", "ijwj 0x20 = 0x5EAB", "ik 0x20 = 0x72AC", "ikbuc 0x20 = 0x8CB5", "ikhni 0x20 = 0x98C6", "ikikk 0x20 = 0x730B", "ikjwj 0x20 = 0x8EEC", "ikk 0x20 = 0x72AE", "iklv 0x20 = 0x5EB5", "iknf 0x20 = 0x70BA", "ikno 0x20 = 0x6B38", "ikp 0x20 = 0x6166", "ikpb 0x20 = 0x5ED7", "iku 0x20 = 0x5C24", "ikw 0x20 = 0x755A", "ilb 0x20 = 0x5EB8", "ile 0x20 = 0x5EB7", "illv 0x20 = 0x5ED4", "iln 0x20 = 0x5212", "ilo 0x20 = 0x5E9A", "iloc 0x20 = 0x8CE1", "ilr 0x20 = 0x5510", "imcw 0x20 = 0x5EAE", "imig 0x20 = 0x5EA2", "immp 0x20 = 0x5EF2", "imp 0x20 = 0x60D1", "imsll 0x20 = 0x81E7", "imue 0x20 = 0x5EC8", "imvh 0x20 = 0x5E8C", "inbq 0x20 = 0x5EE8", "ine 0x20 = 0x6C38", "infq 0x20 = 0x5EEF", "inin 0x20 = 0x5E8F", "inkg 0x20 = 0x5EAD", "inli 0x20 = 0x5ED5", "ino 0x20 = 0x4E4B", "inoe 0x20 = 0x5EE2", "io 0x20 = 0x5E82", "iod 0x20 = 0x5EA5", "iodi 0x20 = 0x5E9C", "iogb 0x20 = 0x81BA", "iogf 0x20 = 0x9DF9", "iogp 0x20 = 0x61C9", "iohaf 0x20 = 0x9D8A", "ioib 0x20 = 0x8150", "iok 0x20 = 0x77E3", "ioma 0x20 = 0x5EE5", "iomn 0x20 = 0x5E88", "ioog 0x20 = 0x5EA7", "iotf 0x20 = 0x5EE1", "ip 0x20 = 0x5F0B", "ipbm 0x20 = 0x9E86", "ipbuc 0x20 = 0x8CA3", "ipc 0x20 = 0x93D6", "ipf 0x20 = 0x718A", "ipfd 0x20 = 0x9E8B", "ipfdq 0x20 = 0x9E9F", "ipfz 0x20 = 0x9E83", "ipg 0x20 = 0x5875", "iphaf 0x20 = 0x9CF6", "iphd 0x20 = 0x9E87", "iphhi 0x20 = 0x9E9D", "iphn 0x20 = 0x9E82", "iphor 0x20 = 0x9E94", "iphxu 0x20 = 0x9E91", "ipihr 0x20 = 0x9E99", "ipipp 0x20 = 0x9EA4", "ipkiv 0x20 = 0x9E8D", "iplmi 0x20 = 0x879A", "ipm 0x20 = 0x5F0F", "ipmc 0x20 = 0x5ECE", "ipmmc 0x20 = 0x8CB3", "ipmmv 0x20 = 0x9E8E", "ipmwd 0x20 = 0x9E9C", "ipmwm 0x20 = 0x9EA0", "ipnl 0x20 = 0x911C", "ipnsj 0x20 = 0x9E9B", "ipog 0x20 = 0x96BF", "ipp 0x20 = 0x614B", "ippz 0x20 = 0x5E87", "ippzz 0x20 = 0x5FD2", "ippzzz 0x20 = 0x9E80", "iprse 0x20 = 0x9E9A", "ipru 0x20 = 0x5E96", "iprvk 0x20 = 0x9E8C", "iptmc 0x20 = 0x9E92", "ipu 0x20 = 0x5E89", "ipyg 0x20 = 0x9E88", "ipyx 0x20 = 0x9EA1", "ipz 0x20 = 0x5E80", "iqhaf 0x20 = 0x9D3E", "iqhf 0x20 = 0x7DF3", "iqje 0x20 = 0x5EAA", "ir 0x20 = 0x53F0", "ird 0x20 = 0x67B2", "irf 0x20 = 0x70B1", "irhaf 0x20 = 0x9DB6", "irm 0x20 = 0x6216", "irmbc 0x20 = 0x9851", "irmln 0x20 = 0x74F5", "irnbg 0x20 = 0x89F1", "irnl 0x20 = 0x90B0", "irp 0x20 = 0x611F", "irpz 0x20 = 0x6020", "isbt 0x20 = 0x76DB", "isgp 0x20 = 0x5EF3", "isja 0x20 = 0x5EDC", "isnl 0x20 = 0x90D5", "isok 0x20 = 0x6577", "isrj 0x20 = 0x5EE6", "isyh 0x20 = 0x5ED6", "it 0x20 = 0x6212", "ita 0x20 = 0x5EB4", "itcl 0x20 = 0x5EDD", "ite 0x20 = 0x5EA6", "itf 0x20 = 0x5EB6", "ithaf 0x20 = 0x9D18", "itlb 0x20 = 0x5E2D", "itlm 0x20 = 0x5ED1", "itmc 0x20 = 0x5EE3", "itq 0x20 = 0x5EA0", "itso 0x20 = 0x5EB9", "itt 0x20 = 0x5EB0", "itxc 0x20 = 0x5EC9", "itz 0x20 = 0x5F01", "iu 0x20 = 0x6209", "iuhhh 0x20 = 0x5C28", "ivug 0x20 = 0x5EF1", "iwcg 0x20 = 0x5EDB", "iwtc 0x20 = 0x5ED9", "ixe 0x20 = 0x6176", "ixf 0x20 = 0x5ECC", "ixp 0x20 = 0x9E7F", "iybp 0x20 = 0x9F90", "iydl 0x20 = 0x5ED3", "iyln 0x20 = 0x5298", "iymp 0x20 = 0x5E9B", "iypt 0x20 = 0x5EEC", "iyr 0x20 = 0x5E97", "iywd 0x20 = 0x5EE9", "j 0x20 = 0x5341", "jaf 0x20 = 0x716E", "jamo 0x20 = 0x5BD4", "janl 0x20 = 0x90FD", "jasyy 0x20 = 0x7FE5", "jav 0x20 = 0x5BB4", "jb 0x20 = 0x5DFF", "jbd 0x20 = 0x5BC0", "jbhaf 0x20 = 0x9DA6", "jbhod 0x20 = 0x6ADC", "jbm 0x20 = 0x5B9C", "jbmc 0x20 = 0x771F", "jbmm 0x20 = 0x76F4", "jbmrd 0x20 = 0x6A50", "jbmri 0x20 = 0x8839", "jbnd 0x20 = 0x5B5B", "jbof 0x20 = 0x5BDF", "jbrrv 0x20 = 0x56CA", "jbtj 0x20 = 0x5357", "jbuui 0x20 = 0x87D7", "jbvif 0x20 = 0x7D22", "jbwno 0x20 = 0x7590", "jc 0x20 = 0x7A74", "jcbbr 0x20 = 0x7AA9", "jcbu 0x20 = 0x7A85", "jcegg 0x20 = 0x7AAA", "jcemd 0x20 = 0x7A8F", "jcfdj 0x20 = 0x7AB2", "jcgfo 0x20 = 0x7ABE", "jcgg 0x20 = 0x7A90", "jcgwc 0x20 = 0x7AC7", "jchaf 0x20 = 0x7AB5", "jchafz 0x20 = 0x9DCF", "jchdb 0x20 = 0x7ACA", "jchdp 0x20 = 0x7AB8", "jchgr 0x20 = 0x7A96", "jchhn 0x20 = 0x7AAE", "jchio 0x20 = 0x7A8A", "jchioz 0x20 = 0x7A86", "jchk 0x20 = 0x7A7E", "jchll 0x20 = 0x7A8C", "jchoo 0x20 = 0x7AB3", "jchsk 0x20 = 0x7AC5", "jchuu 0x20 = 0x7AC1", "jchwk 0x20 = 0x7A97", "jchxu 0x20 = 0x7AC4", "jchyo 0x20 = 0x7A95", "jci 0x20 = 0x622D", "jcik 0x20 = 0x7A81", "jcirm 0x20 = 0x7AA2", "jcjbc 0x20 = 0x7AB4", "jcjkd 0x20 = 0x7A99", "jckn 0x20 = 0x7A76", "jclb 0x20 = 0x5E18", "jcllv 0x20 = 0x7AB6", "jcm 0x20 = 0x7A7A", "jcmbc 0x20 = 0x985B", "jcmd 0x20 = 0x7A7B", "jcmig 0x20 = 0x7A92", "jcmmu 0x20 = 0x7AC0", "jcmob 0x20 = 0x7A89", "jcmvh 0x20 = 0x7A7F", "jcn 0x20 = 0x7A79", "jcnhx 0x20 = 0x7A9E", "jcni 0x20 = 0x7A78", "jcnlm 0x20 = 0x7ABF", "jcno 0x20 = 0x6B55", "jcnz 0x20 = 0x7A75", "jcold 0x20 = 0x7AB1", "jcomn 0x20 = 0x7AAC", "jcor 0x20 = 0x5BB9", "jcos 0x20 = 0x7A84", "jcpru 0x20 = 0x7A87", "jcpu 0x20 = 0x7A80", "jcqhk 0x20 = 0x7AAB", "jcqou 0x20 = 0x7ABA", "jcsjl 0x20 = 0x7AB7", "jcskr 0x20 = 0x7A98", "jcsuu 0x20 = 0x7A9F", "jcsyy 0x20 = 0x7FF8", "jctgf 0x20 = 0x7AAF", "jcuu 0x20 = 0x7A8B", "jcvis 0x20 = 0x7A88", "jcwd 0x20 = 0x7AA0", "jcyck 0x20 = 0x7A94", "jcyoj 0x20 = 0x7AA3", "jcyta 0x20 = 0x7AA8", "jd 0x20 = 0x672A", "jdhaf 0x20 = 0x9D53", "jdi 0x20 = 0x5B88", "jdks 0x20 = 0x52C3", "jdnl 0x20 = 0x90E3", "jdok 0x20 = 0x6559", "jdz 0x20 = 0x5B8B", "je 0x20 = 0x652F", "jed 0x20 = 0x6A95", "jeg 0x20 = 0x58BC", "jegi 0x20 = 0x9EAE", "jehaf 0x20 = 0x9CF7", "jeihq 0x20 = 0x9EB0", "jejwj 0x20 = 0x8F5A", "jelmi 0x20 = 0x87FF", "jembc 0x20 = 0x980D", "jemwl 0x20 = 0x9EB5", "jeoju 0x20 = 0x7F4A", "jeon 0x20 = 0x9EA7", "jepfd 0x20 = 0x9EB4", "jepru 0x20 = 0x9EAD", "jeq 0x20 = 0x64CA", "jeqo 0x20 = 0x9EA9", "jese 0x20 = 0x5BD6", "jesmi 0x20 = 0x6533", "jesyy 0x20 = 0x7FC5", "jeujt 0x20 = 0x9EB7", "jevif 0x20 = 0x7E6B", "jeyub 0x20 = 0x9EB6", "jfb 0x20 = 0x5BB5", "jhdw 0x20 = 0x5BE9", "jher 0x20 = 0x5BA2", "jhk 0x20 = 0x5B8E", "jhoo 0x20 = 0x5BD9", "jhp 0x20 = 0x5B85", "jhq 0x20 = 0x7262", "jhqu 0x20 = 0x5B92", "jhxf 0x20 = 0x5BEB", "jhyo 0x20 = 0x5BA8", "jibi 0x20 = 0x535A", "jidi 0x20 = 0x5C08", "jihaf 0x20 = 0x9DD2", "jihs 0x20 = 0x5BAC", "jikf 0x20 = 0x5BEA", "jiln 0x20 = 0x5278", "jinl 0x20 = 0x911F", "jip 0x20 = 0x60E0", "jj 0x20 = 0x5EFE", "jjapp 0x20 = 0x8F25", "jjapv 0x20 = 0x8F35", "jjb 0x20 = 0x671D", "jjbb 0x20 = 0x8F23", "jjbc 0x20 = 0x5BD8", "jjbgr 0x20 = 0x8F16", "jjbtv 0x20 = 0x8F1E", "jjcor 0x20 = 0x8F0D", "jjdmq 0x20 = 0x97D3", "jjeee 0x20 = 0x8F1F", "jjfb 0x20 = 0x8F0E", "jjfdq 0x20 = 0x8F54", "jjgce 0x20 = 0x8F18", "jjgow 0x20 = 0x8F56", "jjgrv 0x20 = 0x8F45", "jjhby 0x20 = 0x8F08", "jjhdw 0x20 = 0x8F53", "jjher 0x20 = 0x8F05", "jjhg 0x20 = 0x8EE0", "jjhio 0x20 = 0x8EF1", "jjhju 0x20 = 0x8F34", "jjhkb 0x20 = 0x8F4E", "jjhml 0x20 = 0x65AC", "jjhne 0x20 = 0x8ED7", "jjhni 0x20 = 0x8ED3", "jjhpm 0x20 = 0x8EE7", "jjhqo 0x20 = 0x8EFC", "jjhqu 0x20 = 0x8EDE", "jjhsn 0x20 = 0x8EF6", "jjhup 0x20 = 0x8EDD", "jjhxu 0x20 = 0x8F17", "jji 0x20 = 0x621F", "jjii 0x20 = 0x8F1A", "jjijb 0x20 = 0x8F14", "jjikk 0x20 = 0x8EF7", "jjipm 0x20 = 0x8EFE", "jjir 0x20 = 0x8EE9", "jjirp 0x20 = 0x8F57", "jjixp 0x20 = 0x8F46", "jjjii 0x20 = 0x8F49", "jjjjj 0x20 = 0x8F5F", "jjjmu 0x20 = 0x8F10", "jjjqr 0x20 = 0x8F44", "jjjtc 0x20 = 0x8F52", "jjk 0x20 = 0x8ED1", "jjkbk 0x20 = 0x8F4D", "jjkcf 0x20 = 0x8F51", "jjkn 0x20 = 0x8ECC", "jjlbk 0x20 = 0x8EEE", "jjlo 0x20 = 0x5BC1", "jjlw 0x20 = 0x8EF8", "jjmbl 0x20 = 0x8F00", "jjmdm 0x20 = 0x8F63", "jjmfj 0x20 = 0x8EEF", "jjmig 0x20 = 0x8F0A", "jjmj 0x20 = 0x8ED2", "jjmlb 0x20 = 0x8F1B", "jjmnr 0x20 = 0x8EFB", "jjmrw 0x20 = 0x8F3B", "jjmsu 0x20 = 0x8EDB", "jjmu 0x20 = 0x8ECF", "jjmvm 0x20 = 0x8F15", "jjnau 0x20 = 0x8F13", "jjnhd 0x20 = 0x8F2E", "jjno 0x20 = 0x8EDF", "jjoae 0x20 = 0x8F39", "jjob 0x20 = 0x8EDC", "jjod 0x20 = 0x69A6", "jjodi 0x20 = 0x8EF5", "jjohf 0x20 = 0x9DBE", "jjohh 0x20 = 0x8EEB", "jjoli 0x20 = 0x8792", "jjomb 0x20 = 0x8F2A", "jjomg 0x20 = 0x8F07", "jjomi 0x20 = 0x8EE8", "jjomj 0x20 = 0x5E79", "jjomn 0x20 = 0x8F38", "jjomnz 0x20 = 0x8EE1", "jjon 0x20 = 0x4E7E", "jjoog 0x20 = 0x96D7", "jjosy 0x20 = 0x7FF0", "jjoyj 0x20 = 0x65A1", "jjpr 0x20 = 0x8EE5", "jjpu 0x20 = 0x8ED8", "jjpyr 0x20 = 0x8F37", "jjqkd 0x20 = 0x8F43", "jjqkk 0x20 = 0x8F33", "jjqmb 0x20 = 0x8F24", "jjrc 0x20 = 0x8EF9", "jjrhu 0x20 = 0x8EE6", "jjrsj 0x20 = 0x8F2F", "jjshi 0x20 = 0x8ED4", "jjshr 0x20 = 0x8EFA", "jjsju 0x20 = 0x8F12", "jjskr 0x20 = 0x8F11", "jjsmt 0x20 = 0x8F5E", "jjsnd 0x20 = 0x8F4F", "jjstv 0x20 = 0x8F3E", "jjsyh 0x20 = 0x8F47", "jjtav 0x20 = 0x8F55", "jjtc 0x20 = 0x8F01", "jjtcw 0x20 = 0x8F36", "jjtgi 0x20 = 0x8F59", "jjtgiz 0x20 = 0x8F5B", "jjtmo 0x20 = 0x8F50", "jjtt 0x20 = 0x8EFF", "jju 0x20 = 0x8ECB", "jjumb 0x20 = 0x8F32", "jjvid 0x20 = 0x8F62", "jjvvd 0x20 = 0x8F48", "jjvvw 0x20 = 0x8F1C", "jjwd 0x20 = 0x8F20", "jjwlv 0x20 = 0x8F58", "jjwot 0x20 = 0x8F40", "jjwww 0x20 = 0x8F60", "jjyck 0x20 = 0x8F03", "jjyg 0x20 = 0x8EF4", "jjyjj 0x20 = 0x8F4B", "jjypt 0x20 = 0x8F64", "jjyrf 0x20 = 0x8F2C", "jjyvo 0x20 = 0x8F06", "jk 0x20 = 0x4E08", "jka 0x20 = 0x8005", "jkb 0x20 = 0x5BA5", "jkcf 0x20 = 0x5BEE", "jkhaf 0x20 = 0x9D9F", "jki 0x20 = 0x5B8F", "jkmdo 0x20 = 0x6584", "jkme 0x20 = 0x6F26", "jkmhq 0x20 = 0x729B", "jkmhu 0x20 = 0x6C02", "jkmnd 0x20 = 0x5B77", "jkmr 0x20 = 0x5BC4", "jkms 0x20 = 0x8003", "jkmsh 0x20 = 0x527A", "jkmv 0x20 = 0x5AE0", "jkmwg 0x20 = 0x91D0", "jkn 0x20 = 0x5B84", "jknd 0x20 = 0x5B5D", "jkp 0x20 = 0x8001", "jkpr 0x20 = 0x8007", "jkss 0x20 = 0x5354", "jla 0x20 = 0x66AB", "jlc 0x20 = 0x93E8", "jld 0x20 = 0x69E7", "jlg 0x20 = 0x5879", "jlk 0x20 = 0x540F", "jlln 0x20 = 0x4E8B", "jllv 0x20 = 0x5BE0", "jlmr 0x20 = 0x78DB", "jlryo 0x20 = 0x8E54", "jlv 0x20 = 0x59BB", "jlw 0x20 = 0x5B99", "jlyo 0x20 = 0x758C", "jm 0x20 = 0x58EB", "jmam 0x20 = 0x5BA3", "jmc 0x20 = 0x944B", "jmch 0x20 = 0x5BE1", "jmd 0x20 = 0x5B87", "jmhc 0x20 = 0x8CD3", "jmig 0x20 = 0x5BA4", "jmjmm 0x20 = 0x77D7", "jmlc 0x20 = 0x5BC5", "jmmc 0x20 = 0x8CE8", "jmmf 0x20 = 0x5B97", "jmmu 0x20 = 0x5B8C", "jmmv 0x20 = 0x5BB8", "jmn 0x20 = 0x5B81", "jmr 0x20 = 0x5B95", "jmrw 0x20 = 0x5BCC", "jmso 0x20 = 0x5BB6", "jmuc 0x20 = 0x5BF6", "jmue 0x20 = 0x5BC7", "jmyo 0x20 = 0x5B9A", "jnd 0x20 = 0x5B57", "jnhaf 0x20 = 0x9E0B", "jniu 0x20 = 0x5B9B", "jnln 0x20 = 0x525A", "jnup 0x20 = 0x60CC", "jogs 0x20 = 0x5BEF", "johe 0x20 = 0x9EA5", "joma 0x20 = 0x5BBF", "jombc 0x20 = 0x9841", "jose 0x20 = 0x5BD1", "jp 0x20 = 0x5B83", "jpa 0x20 = 0x8006", "jpbn 0x20 = 0x5BE7", "jpbq 0x20 = 0x752F", "jpbt 0x20 = 0x5BCD", "jph 0x20 = 0x5B93", "jphi 0x20 = 0x871C", "jphqu 0x20 = 0x8004", "jphu 0x20 = 0x5BC6", "jpko 0x20 = 0x5BF2", "jpmig 0x20 = 0x800B", "jqmp 0x20 = 0x61B2", "jqmr 0x20 = 0x5BB3", "jr 0x20 = 0x53E4", "jrb 0x20 = 0x80E1", "jrbhf 0x20 = 0x9D98", "jrcor 0x20 = 0x8C41", "jrhaf 0x20 = 0x9D23", "jrhafz 0x20 = 0x9DB7", "jrhne 0x20 = 0x6BC4", "jrhr 0x20 = 0x5BAE", "jrhu 0x20 = 0x514B", "jrln 0x20 = 0x5272", "jrlr 0x20 = 0x5B98", "jrmbc 0x20 = 0x984D", "jrok 0x20 = 0x6545", "jrrp 0x20 = 0x60B9", "jrrse 0x20 = 0x560F", "jrytj 0x20 = 0x8F9C", "jskr 0x20 = 0x5BAD", "jsll 0x20 = 0x5BA6", "jsllz 0x20 = 0x5BA7", "jsyh 0x20 = 0x5BE5", "jt 0x20 = 0x5349", "jtak 0x20 = 0x5BDE", "jtbi 0x20 = 0x5BEC", "jtbuc 0x20 = 0x8CC1", "jtcc 0x20 = 0x8CFD", "jtcd 0x20 = 0x5BE8", "jtcf 0x20 = 0x9A2B", "jtcfz 0x20 = 0x9DB1", "jtcg 0x20 = 0x585E", "jtco 0x20 = 0x8E47", "jtcq 0x20 = 0x6434", "jtcr 0x20 = 0x8B07", "jtcu 0x20 = 0x5BCB", "jtcv 0x20 = 0x8930", "jtcy 0x20 = 0x5BD2", "jtgte 0x20 = 0x9F16", "jucsh 0x20 = 0x515D", "juhaf 0x20 = 0x9D77", "juhj 0x20 = 0x515B", "juhqu 0x20 = 0x515E", "juj 0x20 = 0x5159", "jujru 0x20 = 0x5162", "juks 0x20 = 0x52C0", "juln 0x20 = 0x524B", "julnz 0x20 = 0x525C", "juma 0x20 = 0x5161", "jumwg 0x20 = 0x5163", "jv 0x20 = 0x5B89", "jvd 0x20 = 0x6848", "jvhaf 0x20 = 0x9D33", "jvhafz 0x20 = 0x9D88", "jvmb 0x20 = 0x5BCE", "jvmbc 0x20 = 0x981E", "jvmd 0x20 = 0x5BD0", "jvmdz 0x20 = 0x5BF1", "jvme 0x20 = 0x5BE2", "jvmr 0x20 = 0x5BE4", "jvmrz 0x20 = 0x5BE3", "jvnl 0x20 = 0x90EA", "jvz 0x20 = 0x4E03", "jwbuu 0x20 = 0x89BE", "jwj 0x20 = 0x8ECA", "jwjc 0x20 = 0x5BE6", "jwlb 0x20 = 0x5BD3", "jwlv 0x20 = 0x5BF0", "jybc 0x20 = 0x5BCA", "jybp 0x20 = 0x5BF5", "jyfe 0x20 = 0x5BC2", "jytj 0x20 = 0x5BB0", "k 0x20 = 0x5927", "kam 0x20 = 0x75B8", "kamh 0x20 = 0x760D", "kanb 0x20 = 0x7647", "karrj 0x20 = 0x5972", "kau 0x20 = 0x75A4", "kav 0x20 = 0x75D5", "kb 0x20 = 0x6709", "kbb 0x20 = 0x75ED", "kbbr 0x20 = 0x7611", "kbcv 0x20 = 0x766D", "kbhaf 0x20 = 0x9D57", "kbhne 0x20 = 0x6BBD", "kbhqu 0x20 = 0x6BFB", "kbirm 0x20 = 0x622B", "kbm 0x20 = 0x75BD", "kbmln 0x20 = 0x74FB", "kbmr 0x20 = 0x75CC", "kbnl 0x20 = 0x90C1", "kbnlz 0x20 = 0x90D7", "kbnlzz 0x20 = 0x90E9", "kbno 0x20 = 0x6B37", "kbof 0x20 = 0x7635", "kbz 0x20 = 0x5187", "kcano 0x20 = 0x95B7", "kdd 0x20 = 0x75F2", "kddz 0x20 = 0x75F3", "kdhe 0x20 = 0x75B2", "kdhne 0x20 = 0x6BBA", "kdipm 0x20 = 0x5F12", "kdlc 0x20 = 0x7669", "kdln 0x20 = 0x524E", "kdlnz 0x20 = 0x760C", "ke 0x20 = 0x53CB", "kefh 0x20 = 0x75E7", "keii 0x20 = 0x7619", "kell 0x20 = 0x596B", "kf 0x20 = 0x7070", "kfb 0x20 = 0x75DF", "kfbt 0x20 = 0x76D4", "kfcb 0x20 = 0x7620", "kff 0x20 = 0x75F0", "kffs 0x20 = 0x7646", "kfhaf 0x20 = 0x9DEF", "kfp 0x20 = 0x6090", "kfz 0x20 = 0x75A2", "kgdi 0x20 = 0x75D4", "kgg 0x20 = 0x594E", "kghaf 0x20 = 0x9D5F", "kgp 0x20 = 0x75E3", "khaa 0x20 = 0x7316", "khahm 0x20 = 0x7329", "khal 0x20 = 0x7664", "kham 0x20 = 0x72DA", "khapp 0x20 = 0x7311", "khapv 0x20 = 0x7332", "khav 0x20 = 0x72E0", "khawe 0x20 = 0x734C", "khbbb 0x20 = 0x733E", "khbbr 0x20 = 0x7327", "khbm 0x20 = 0x72D9", "khbmr 0x20 = 0x72EA", "khbn 0x20 = 0x75F8", "khbou 0x20 = 0x733A", "khbsd 0x20 = 0x7319", "khbtt 0x20 = 0x72E6", "khbuc 0x20 = 0x72FD", "khbue 0x20 = 0x7383", "khdc 0x20 = 0x766A", "khdd 0x20 = 0x75F5", "khdlc 0x20 = 0x737A", "khdn 0x20 = 0x75E2", "khdv 0x20 = 0x75FF", "khefh 0x20 = 0x7300", "khey 0x20 = 0x75BC", "khf 0x20 = 0x72C4", "khfbk 0x20 = 0x7359", "khggu 0x20 = 0x735F", "khgr 0x20 = 0x72E4", "khgrv 0x20 = 0x733F", "khhbn 0x20 = 0x7318", "khhdn 0x20 = 0x7301", "khhg 0x20 = 0x72C5", "khhgf 0x20 = 0x736F", "khhhj 0x20 = 0x7308", "khhio 0x20 = 0x72D0", "khhj 0x20 = 0x75FA", "khhkb 0x20 = 0x7362", "khhl 0x20 = 0x5945", "khhni 0x20 = 0x7326", "khhqm 0x20 = 0x72CC", "khhrb 0x20 = 0x7345", "khhsb 0x20 = 0x730F", "khhsbz 0x20 = 0x7335", "khhsk 0x20 = 0x7365", "khhw 0x20 = 0x7624", "khhxe 0x20 = 0x7340", "khhxf 0x20 = 0x7361", "khhxu 0x20 = 0x730A", "khhyo 0x20 = 0x72E3", "khi 0x20 = 0x7623", "khiav 0x20 = 0x72FC", "khibi 0x20 = 0x733C", "khice 0x20 = 0x72FB", "khihu 0x20 = 0x72C1", "khij 0x20 = 0x72E8", "khio 0x20 = 0x75BA", "khitc 0x20 = 0x7377", "khiu 0x20 = 0x72D8", "khjc 0x20 = 0x72D6", "khjdi 0x20 = 0x72E9", "khjjl 0x20 = 0x7351", "khjkp 0x20 = 0x72EB", "khjpn 0x20 = 0x7370", "khjr 0x20 = 0x72DC", "khjrb 0x20 = 0x7322", "khkcf 0x20 = 0x7360", "khkkb 0x20 = 0x72F6", "khkmr 0x20 = 0x7317", "khkn 0x20 = 0x72B0", "khkoo 0x20 = 0x72F9", "khl 0x20 = 0x72C6", "khlln 0x20 = 0x72D2", "khmam 0x20 = 0x72DF", "khmbb 0x20 = 0x7373", "khmbe 0x20 = 0x7376", "khmce 0x20 = 0x737F", "khmfb 0x20 = 0x736E", "khmfm 0x20 = 0x72C9", "khmg 0x20 = 0x72C2", "khmhf 0x20 = 0x7342", "khmj 0x20 = 0x72B4", "khmmf 0x20 = 0x72CB", "khmto 0x20 = 0x7357", "khmvh 0x20 = 0x72BD", "khnbq 0x20 = 0x736C", "khndf 0x20 = 0x733B", "khndt 0x20 = 0x731B", "khne 0x20 = 0x75AB", "khng 0x20 = 0x72C3", "khngu 0x20 = 0x5CF1", "khnhb 0x20 = 0x735D", "khnhd 0x20 = 0x7331", "khni 0x20 = 0x760B", "khnkm 0x20 = 0x72FF", "khnmb 0x20 = 0x737C", "khok 0x20 = 0x7665", "khokz 0x20 = 0x7653", "khoma 0x20 = 0x736A", "khomd 0x20 = 0x72F3", "khomi 0x20 = 0x72D1", "khomo 0x20 = 0x736B", "khomr 0x20 = 0x731E", "khomrz 0x20 = 0x734A", "khon 0x20 = 0x72B5", "khonk 0x20 = 0x7334", "khoo 0x20 = 0x7632", "khpa 0x20 = 0x75FB", "khppg 0x20 = 0x72F4", "khpr 0x20 = 0x72D7", "khqhk 0x20 = 0x7330", "khqhl 0x20 = 0x72FE", "khqkd 0x20 = 0x7349", "khqmb 0x20 = 0x731C", "khrb 0x20 = 0x72F7", "khrrk 0x20 = 0x7381", "khrse 0x20 = 0x7333", "khsp 0x20 = 0x72D4", "khsu 0x20 = 0x72AF", "khtav 0x20 = 0x7366", "khtcw 0x20 = 0x7336", "khtjl 0x20 = 0x7382", "khtmc 0x20 = 0x735A", "khtmo 0x20 = 0x735B", "khtoe 0x20 = 0x7372", "khtrg 0x20 = 0x737E", "khub 0x20 = 0x765F", "khuce 0x20 = 0x7323", "khup 0x20 = 0x761C", "khupz 0x20 = 0x75A7", "khvno 0x20 = 0x732D", "khvvu 0x20 = 0x7375", "khwd 0x20 = 0x7313", "khwg 0x20 = 0x72F8", "khwl 0x20 = 0x72CE", "khwlg 0x20 = 0x7380", "khwli 0x20 = 0x7368", "khwlv 0x20 = 0x7367", "khwmv 0x20 = 0x7325", "khxe 0x20 = 0x7626", "khxo 0x20 = 0x7610", "khxu 0x20 = 0x7659", "khyck 0x20 = 0x72E1", "khye 0x20 = 0x7622", "khyhn 0x20 = 0x72BA", "khymh 0x20 = 0x7369", "khymr 0x20 = 0x72FA", "khyoj 0x20 = 0x731D", "khypu 0x20 = 0x7307", "khyrk 0x20 = 0x7344", "khyrv 0x20 = 0x737D", "khytg 0x20 = 0x735E", "khytj 0x20 = 0x7350", "khytu 0x20 = 0x734D", "khyy 0x20 = 0x72BF", "ki 0x20 = 0x592A", "kib 0x20 = 0x80B2", "kice 0x20 = 0x75E0", "kihu 0x20 = 0x5145", "kijb 0x20 = 0x75E1", "kiku 0x20 = 0x75A3", "kiog 0x20 = 0x96C4", "kisyy 0x20 = 0x7FC3", "kitd 0x20 = 0x68C4", "kiuh 0x20 = 0x75DD", "kjbc 0x20 = 0x7628", "kjcc 0x20 = 0x7672", "kjka 0x20 = 0x5962", "kjkaz 0x20 = 0x760F", "kjkd 0x20 = 0x75DA", "kjrr 0x20 = 0x75EF", "kjt 0x20 = 0x5954", "kk 0x20 = 0x723B", "kkb 0x20 = 0x80B4", "kkbz 0x20 = 0x75CF", "kkcf 0x20 = 0x7642", "kkhaf 0x20 = 0x9DDE", "kkhafz 0x20 = 0x9E11", "kkkk 0x20 = 0x723D", "kklb 0x20 = 0x5E0C", "kklv 0x20 = 0x75F7", "kkn 0x20 = 0x75CD", "kkog 0x20 = 0x761E", "kkop 0x20 = 0x7631", "kkrb 0x20 = 0x7638", "kks 0x20 = 0x592F", "kksr 0x20 = 0x75C2", "klb 0x20 = 0x5E03", "klg 0x20 = 0x5728", "klll 0x20 = 0x593C", "klln 0x20 = 0x75BF", "klmi 0x20 = 0x75CB", "klmy 0x20 = 0x75F1", "kln 0x20 = 0x5208", "klnd 0x20 = 0x5B58", "klwv 0x20 = 0x5944", "km 0x20 = 0x5DE6", "kmaa 0x20 = 0x596D", "kmbw 0x20 = 0x7657", "kmfr 0x20 = 0x75DE", "kmmf 0x20 = 0x5948", "kmmr 0x20 = 0x75E6", "kmms 0x20 = 0x5938", "kmn 0x20 = 0x7594", "kmnr 0x20 = 0x5947", "kmob 0x20 = 0x75C5", "kmrt 0x20 = 0x75D8", "kmso 0x20 = 0x7603", "kmvm 0x20 = 0x75D9", "kmwf 0x20 = 0x762D", "kmym 0x20 = 0x75C7", "kmz 0x20 = 0x7598", "kn 0x20 = 0x4E5D", "kna 0x20 = 0x65ED", "knaz 0x20 = 0x65EE", "knbk 0x20 = 0x7613", "kncr 0x20 = 0x765A", "knfq 0x20 = 0x766C", "knhaf 0x20 = 0x9CE9", "kni 0x20 = 0x4E38", "knib 0x20 = 0x75DB", "knin 0x20 = 0x5953", "kninz 0x20 = 0x75D1", "kniz 0x20 = 0x53B9", "knlm 0x20 = 0x7643", "knlp 0x20 = 0x766E", "knlr 0x20 = 0x75FE", "knmbc 0x20 = 0x9804", "kno 0x20 = 0x759A", "knoe 0x20 = 0x7648", "knthu 0x20 = 0x9997", "knv 0x20 = 0x597F", "knymr 0x20 = 0x8A04", "knypu 0x20 = 0x8653", "knz 0x20 = 0x5937", "kog 0x20 = 0x75FD", "kogi 0x20 = 0x596A", "kogw 0x20 = 0x596E", "kohaf 0x20 = 0x9D4A", "kohh 0x20 = 0x75B9", "kok 0x20 = 0x75BE", "kokr 0x20 = 0x75F4", "koll 0x20 = 0x75A5", "koma 0x20 = 0x7650", "kombc 0x20 = 0x9830", "komg 0x20 = 0x75CA", "komn 0x20 = 0x7609", "komp 0x20 = 0x7652", "komr 0x20 = 0x7621", "kon 0x20 = 0x7599", "konk 0x20 = 0x760A", "konl 0x20 = 0x90DF", "koo 0x20 = 0x593E", "koog 0x20 = 0x75E4", "kos 0x20 = 0x75C4", "kowy 0x20 = 0x75D7", "kp 0x20 = 0x7595", "kpblb 0x20 = 0x5E36", "kpko 0x20 = 0x7661", "kpp 0x20 = 0x75AA", "kpr 0x20 = 0x75C0", "kpt 0x20 = 0x75B6", "kqhk 0x20 = 0x7608", "kqhp 0x20 = 0x761B", "kr 0x20 = 0x53F3", "krbuc 0x20 = 0x8CC0", "krc 0x20 = 0x75BB", "krd 0x20 = 0x67B6", "krhaf 0x20 = 0x9D78", "krhafz 0x20 = 0x9D10", "krhqu 0x20 = 0x6BE0", "krje 0x20 = 0x6532", "krln 0x20 = 0x525E", "krmnr 0x20 = 0x54FF", "krno 0x20 = 0x6B39", "kromb 0x20 = 0x55E7", "krrj 0x20 = 0x7649", "krru 0x20 = 0x764C", "krse 0x20 = 0x7615", "krsqf 0x20 = 0x99D5", "krye 0x20 = 0x6567", "kryhv 0x20 = 0x8888", "ks 0x20 = 0x529B", "ksce 0x20 = 0x765C", "kshaf 0x20 = 0x9D2E", "kshio 0x20 = 0x74E0", "kshvf 0x20 = 0x7D94", "ksj 0x20 = 0x8037", "ksksb 0x20 = 0x8105", "kskss 0x20 = 0x52A6", "ksksv 0x20 = 0x59ED", "ksln 0x20 = 0x5233", "ksmb 0x20 = 0x763A", "ksmi 0x20 = 0x5957", "kspru 0x20 = 0x530F", "ksr 0x20 = 0x52A0", "ksrj 0x20 = 0x7656", "ksrr 0x20 = 0x5969", "kswp 0x20 = 0x52F0", "ksyh 0x20 = 0x7633", "ktak 0x20 = 0x763C", "ktbc 0x20 = 0x75F6", "ktgm 0x20 = 0x7625", "ktgv 0x20 = 0x7662", "ktjr 0x20 = 0x7614", "ktlm 0x20 = 0x763D", "ktm 0x20 = 0x75B3", "ktog 0x20 = 0x7671", "ktor 0x20 = 0x7629", "ktq 0x20 = 0x75D2", "ktqz 0x20 = 0x7F8D", "ktuo 0x20 = 0x761A", "ktwb 0x20 = 0x7658", "ku 0x20 = 0x759D", "kubbb 0x20 = 0x5C33", "kuhjg 0x20 = 0x5C30", "kumg 0x20 = 0x5C2A", "kuoll 0x20 = 0x5C2C", "kupi 0x20 = 0x5C25", "kusmt 0x20 = 0x5C37", "kuz 0x20 = 0x5C22", "kvfb 0x20 = 0x7675", "kvhaf 0x20 = 0x9D6A", "kvug 0x20 = 0x7670", "kwjr 0x20 = 0x75FC", "kwly 0x20 = 0x761D", "kwml 0x20 = 0x75F9", "kwot 0x20 = 0x761F", "kwr 0x20 = 0x75D0", "kwvf 0x20 = 0x7630", "kyg 0x20 = 0x75B0", "kymp 0x20 = 0x75B5", "kyoj 0x20 = 0x7601", "kypm 0x20 = 0x7627", "kyr 0x20 = 0x75C1", "kysk 0x20 = 0x762F", "kysy 0x20 = 0x7600", "kyta 0x20 = 0x7616", "kytj 0x20 = 0x7634", "kyvo 0x20 = 0x75CE", "kyx 0x20 = 0x7660", "l 0x20 = 0x4E2D", "la 0x20 = 0x8875", "laa 0x20 = 0x88EE", "lam 0x20 = 0x8892", "lamo 0x20 = 0x8906", "lanb 0x20 = 0x8949", "lanw 0x20 = 0x8974", "laph 0x20 = 0x88FC", "lapv 0x20 = 0x8910", "lasy 0x20 = 0x891F", "late 0x20 = 0x896E", "lav 0x20 = 0x88C9", "lb 0x20 = 0x5DFE", "lbabu 0x20 = 0x5E3D", "lbafu 0x20 = 0x5E4C", "lbau 0x20 = 0x5E0A", "lbawe 0x20 = 0x5E54", "lbayf 0x20 = 0x5E5C", "lbbac 0x20 = 0x5E4E", "lbbhx 0x20 = 0x5E4D", "lbcru 0x20 = 0x5E28", "lbdhe 0x20 = 0x5E14", "lbdmq 0x20 = 0x5E43", "lbfb 0x20 = 0x5E29", "lbgni 0x20 = 0x5E6C", "lbgr 0x20 = 0x88EF", "lbha 0x20 = 0x5E15", "lbhal 0x20 = 0x5E6F", "lbhbu 0x20 = 0x5E0E", "lbhdw 0x20 = 0x5E61", "lbhni 0x20 = 0x5E06", "lbhqo 0x20 = 0x5E19", "lbigi 0x20 = 0x5E6E", "lbii 0x20 = 0x5E34", "lbiih 0x20 = 0x5E53", "lbikk 0x20 = 0x5E17", "lbjj 0x20 = 0x890C", "lbjka 0x20 = 0x5E3E", "lbjmo 0x20 = 0x5E4F", "lbjqp 0x20 = 0x5E70", "lbjtc 0x20 = 0x5E69", "lbk 0x20 = 0x592E", "lbm 0x20 = 0x8893", "lbmbc 0x20 = 0x5E4A", "lbmbcz 0x20 = 0x5E41", "lbme 0x20 = 0x8911", "lbmi 0x20 = 0x79B8", "lbmn 0x20 = 0x5E04", "lbmrw 0x20 = 0x5E45", "lbncr 0x20 = 0x5E68", "lbnl 0x20 = 0x9101", "lbog 0x20 = 0x5E37", "lbomr 0x20 = 0x5E22", "lbotf 0x20 = 0x5E60", "lbqmc 0x20 = 0x5E58", "lbrrd 0x20 = 0x5E67", "lbrrj 0x20 = 0x5E5D", "lbsmg 0x20 = 0x5E44", "lbsmv 0x20 = 0x5E33", "lbt 0x20 = 0x76C5", "lbtak 0x20 = 0x5E59", "lbtbo 0x20 = 0x5E6A", "lbtt 0x20 = 0x5E21", "lbtwi 0x20 = 0x5E6D", "lbwim 0x20 = 0x5E57", "lbybc 0x20 = 0x5E40", "lbyia 0x20 = 0x5E5F", "lbyr 0x20 = 0x5E16", "lbytg 0x20 = 0x5E62", "lbytj 0x20 = 0x5E5B", "lcnl 0x20 = 0x912A", "lcor 0x20 = 0x88D5", "lcru 0x20 = 0x88DE", "lcsh 0x20 = 0x886F", "ldbb 0x20 = 0x894B", "lddf 0x20 = 0x895F", "lddq 0x20 = 0x897B", "ldhe 0x20 = 0x88AB", "ldk 0x20 = 0x8882", "ldmq 0x20 = 0x8918", "leed 0x20 = 0x892C", "leee 0x20 = 0x88F0", "lei 0x20 = 0x8869", "lfbk 0x20 = 0x8952", "lfbw 0x20 = 0x8960", "lff 0x20 = 0x88E7", "lfou 0x20 = 0x88F7", "lfq 0x20 = 0x88A2", "lga 0x20 = 0x66F8", "lgam 0x20 = 0x665D", "lgb 0x20 = 0x88A1", "lgce 0x20 = 0x88EC", "lggu 0x20 = 0x8953", "lggy 0x20 = 0x8902", "lgi 0x20 = 0x88AA", "lgic 0x20 = 0x8976", "lgr 0x20 = 0x88BA", "lgrc 0x20 = 0x896D", "lgwc 0x20 = 0x8969", "lgwm 0x20 = 0x756B", "lha 0x20 = 0x8899", "lhbk 0x20 = 0x8956", "lhbu 0x20 = 0x8874", "lheq 0x20 = 0x88B6", "lher 0x20 = 0x88BC", "lhhh 0x20 = 0x886B", "lhhj 0x20 = 0x88E8", "lhjd 0x20 = 0x88BE", "lhoo 0x20 = 0x8937", "lhpm 0x20 = 0x889B", "lhqo 0x20 = 0x889F", "lhsb 0x20 = 0x890A", "lhul 0x20 = 0x8963", "lhup 0x20 = 0x8879", "lhyu 0x20 = 0x892B", "lia 0x20 = 0x868E", "liabu 0x20 = 0x8750", "liahu 0x20 = 0x875E", "liail 0x20 = 0x874D", "liamh 0x20 = 0x876A", "liamo 0x20 = 0x876D", "liaph 0x20 = 0x8734", "liapv 0x20 = 0x874E", "liau 0x20 = 0x8686", "liav 0x20 = 0x86DD", "liavo 0x20 = 0x880D", "liawe 0x20 = 0x87C3", "libac 0x20 = 0x879F", "libbb 0x20 = 0x8796", "libbr 0x20 = 0x8778", "libcv 0x20 = 0x8833", "libdi 0x20 = 0x86F6", "libgr 0x20 = 0x8729", "libm 0x20 = 0x86C6", "libme 0x20 = 0x876F", "libnd 0x20 = 0x8709", "libp 0x20 = 0x8926", "libue 0x20 = 0x883C", "libug 0x20 = 0x8837", "libuu 0x20 = 0x8706", "libvk 0x20 = 0x8787", "lici 0x20 = 0x86A3", "liciy 0x20 = 0x8789", "lick 0x20 = 0x86A5", "licru 0x20 = 0x86FB", "licsh 0x20 = 0x86A1", "lid 0x20 = 0x869E", "lidci 0x20 = 0x8719", "lidhe 0x20 = 0x86BE", "lidhl 0x20 = 0x8725", "lidk 0x20 = 0x8697", "lidw 0x20 = 0x8740", "lieee 0x20 = 0x8743", "liesd 0x20 = 0x87DD", "lifb 0x20 = 0x86F8", "lifbg 0x20 = 0x87B3", "lifbw 0x20 = 0x87F7", "liffd 0x20 = 0x8811", "liffs 0x20 = 0x87E7", "lifou 0x20 = 0x8737", "ligb 0x20 = 0x86BA", "ligg 0x20 = 0x86D9", "liggu 0x20 = 0x87EF", "ligr 0x20 = 0x86E3", "ligrr 0x20 = 0x87E2", "ligth 0x20 = 0x87DB", "lihad 0x20 = 0x87C2", "lihag 0x20 = 0x8757", "lihdj 0x20 = 0x874C", "lihdn 0x20 = 0x870A", "lihdp 0x20 = 0x87CB", "lihdv 0x20 = 0x8732", "lihdw 0x20 = 0x87E0", "lihej 0x20 = 0x8702", "lihhj 0x20 = 0x8731", "lihi 0x20 = 0x879D", "lihio 0x20 = 0x86CC", "lihjd 0x20 = 0x86DB", "lihjg 0x20 = 0x8769", "lihjr 0x20 = 0x86DE", "lihkb 0x20 = 0x87DC", "lihlb 0x20 = 0x877A", "lihlm 0x20 = 0x86AF", "lihml 0x20 = 0x869A", "lihmy 0x20 = 0x86B8", "lihn 0x20 = 0x866E", "lihp 0x20 = 0x8674", "lihpm 0x20 = 0x86B3", "lihqi 0x20 = 0x86FE", "lihqo 0x20 = 0x86C8", "lihqu 0x20 = 0x869D", "lihrb 0x20 = 0x8784", "lihrf 0x20 = 0x8790", "lihsb 0x20 = 0x8759", "lihsk 0x20 = 0x8727", "lihsu 0x20 = 0x8685", "lihuk 0x20 = 0x8791", "lihup 0x20 = 0x8785", "lihupz 0x20 = 0x8694", "lihwp 0x20 = 0x87CC", "lihxu 0x20 = 0x873A", "lihyu 0x20 = 0x8794", "liiav 0x20 = 0x870B", "liih 0x20 = 0x8942", "liihq 0x20 = 0x86D1", "liihv 0x20 = 0x875B", "liiil 0x20 = 0x8782", "liijb 0x20 = 0x8705", "liije 0x20 = 0x86F7", "liikf 0x20 = 0x87E1", "liikk 0x20 = 0x86C2", "liiku 0x20 = 0x8698", "liilr 0x20 = 0x8797", "liirm 0x20 = 0x872E", "liitc 0x20 = 0x880A", "liitf 0x20 = 0x87C5", "liitu 0x20 = 0x8777", "liiuh 0x20 = 0x86D6", "liixp 0x20 = 0x87B0", "lijb 0x20 = 0x88DC", "lijbj 0x20 = 0x877B", "lijcg 0x20 = 0x87B2", "lije 0x20 = 0x8691", "lijip 0x20 = 0x87EA", "lijj 0x20 = 0x8932", "lijjl 0x20 = 0x87B9", "lijka 0x20 = 0x876B", "lijlo 0x20 = 0x8728", "lijmc 0x20 = 0x8819", "lijmcz 0x20 = 0x87BE", "lijmm 0x20 = 0x8756", "lijnu 0x20 = 0x873F", "lijp 0x20 = 0x86C7", "lijqr 0x20 = 0x879B", "lijr 0x20 = 0x86C4", "lijrb 0x20 = 0x8774", "lijtc 0x20 = 0x87E6", "likcf 0x20 = 0x87DF", "likk 0x20 = 0x889A", "likn 0x20 = 0x86E6", "likok 0x20 = 0x878F", "likoo 0x20 = 0x86FA", "likpb 0x20 = 0x87AE", "lilii 0x20 = 0x87F2", "lilit 0x20 = 0x8831", "lillv 0x20 = 0x87BB", "lilne 0x20 = 0x8742", "lilw 0x20 = 0x86B0", "lilxl 0x20 = 0x8735", "lim 0x20 = 0x8679", "lima 0x20 = 0x86E8", "limbb 0x20 = 0x8815", "limbc 0x20 = 0x8762", "limbk 0x20 = 0x8761", "limfm 0x20 = 0x86BD", "limhf 0x20 = 0x8788", "limig 0x20 = 0x86ED", "limj 0x20 = 0x8677", "limmu 0x20 = 0x8696", "limmv 0x20 = 0x8704", "limn 0x20 = 0x8670", "limnn 0x20 = 0x86DA", "limnr 0x20 = 0x86B5", "limob 0x20 = 0x86C3", "limoc 0x20 = 0x8800", "limrw 0x20 = 0x8760", "limtb 0x20 = 0x8823", "limvh 0x20 = 0x869C", "limvm 0x20 = 0x86F5", "limwf 0x20 = 0x87B5", "limwj 0x20 = 0x87EB", "limwl 0x20 = 0x8752", "linao 0x20 = 0x87D3", "linbc 0x20 = 0x875C", "lincr 0x20 = 0x87FE", "lindt 0x20 = 0x8722", "linhd 0x20 = 0x875A", "linhx 0x20 = 0x872D", "linib 0x20 = 0x86F9", "linkg 0x20 = 0x8713", "linkm 0x20 = 0x8712", "linl 0x20 = 0x8693", "linmu 0x20 = 0x86EB", "linob 0x20 = 0x8751", "linue 0x20 = 0x872C", "lio 0x20 = 0x4EE5", "lioae 0x20 = 0x876E", "liob 0x20 = 0x868B", "liodi 0x20 = 0x86B9", "liog 0x20 = 0x873C", "liogf 0x20 = 0x87ED", "liokr 0x20 = 0x8718", "lioll 0x20 = 0x86A7", "liomb 0x20 = 0x8726", "liomd 0x20 = 0x870D", "liomi 0x20 = 0x86C9", "liomn 0x20 = 0x8753", "liomnz 0x20 = 0x8699", "liomr 0x20 = 0x86E4", "lion 0x20 = 0x867C", "liono 0x20 = 0x8701", "liopc 0x20 = 0x87D8", "lios 0x20 = 0x86B1", "liosk 0x20 = 0x86DC", "lipi 0x20 = 0x8673", "lipmm 0x20 = 0x8690", "lipou 0x20 = 0x872A", "lipp 0x20 = 0x868D", "lippa 0x20 = 0x8754", "lippg 0x20 = 0x870C", "lipr 0x20 = 0x86BC", "liptd 0x20 = 0x8776", "liqj 0x20 = 0x868C", "liqkd 0x20 = 0x8793", "liqmb 0x20 = 0x873B", "liqmy 0x20 = 0x8773", "liqo 0x20 = 0x86A8", "lirb 0x20 = 0x870E", "lirrj 0x20 = 0x87EC", "lirse 0x20 = 0x8766", "lirvc 0x20 = 0x87E4", "lirvk 0x20 = 0x8708", "lirxu 0x20 = 0x8805", "lisav 0x20 = 0x8758", "lisei 0x20 = 0x883E", "lisey 0x20 = 0x882E", "lish 0x20 = 0x866D", "lishr 0x20 = 0x86C1", "lisjr 0x20 = 0x871B", "lismi 0x20 = 0x87F3", "liso 0x20 = 0x8687", "lisqf 0x20 = 0x879E", "lisrg 0x20 = 0x87F6", "liss 0x20 = 0x86B7", "lisyg 0x20 = 0x8817", "lisyh 0x20 = 0x87C9", "lita 0x20 = 0x8721", "litak 0x20 = 0x87C6", "litb 0x20 = 0x892F", "litbo 0x20 = 0x8813", "litcw 0x20 = 0x8764", "litgi 0x20 = 0x87FB", "litgu 0x20 = 0x8723", "litit 0x20 = 0x87D2", "litlj 0x20 = 0x8746", "litlk 0x20 = 0x8767", "litlm 0x20 = 0x87BC", "litlx 0x20 = 0x8828", "litm 0x20 = 0x86B6", "litmc 0x20 = 0x87E5", "litmcz 0x20 = 0x871E", "litoe 0x20 = 0x8816", "litpd 0x20 = 0x8802", "litq 0x20 = 0x86D8", "litrg 0x20 = 0x8838", "litt 0x20 = 0x86E2", "litw 0x20 = 0x86D0", "litwa 0x20 = 0x87AC", "litwi 0x20 = 0x881B", "liuce 0x20 = 0x876C", "liumt 0x20 = 0x8798", "liuob 0x20 = 0x8835", "livio 0x20 = 0x87E3", "livis 0x20 = 0x86B4", "livl 0x20 = 0x866F", "livno 0x20 = 0x875D", "livvu 0x20 = 0x881F", "liwb 0x20 = 0x875F", "liwd 0x20 = 0x873E", "liwgf 0x20 = 0x87D4", "liwhd 0x20 = 0x8720", "liwim 0x20 = 0x87C8", "liwli 0x20 = 0x880B", "liwlj 0x20 = 0x880C", "liwlv 0x20 = 0x8809", "liwot 0x20 = 0x8779", "liwr 0x20 = 0x86D4", "liwvf 0x20 = 0x87BA", "liwww 0x20 = 0x881D", "liyav 0x20 = 0x8781", "liybp 0x20 = 0x882C", "liybs 0x20 = 0x8783", "liycb 0x20 = 0x87AA", "liyck 0x20 = 0x86DF", "liyg 0x20 = 0x86C0", "liyhn 0x20 = 0x86A2", "liyia 0x20 = 0x87D9", "liyj 0x20 = 0x86AA", "liyk 0x20 = 0x868A", "liypt 0x20 = 0x8826", "liyr 0x20 = 0x86C5", "liyra 0x20 = 0x8829", "liyrd 0x20 = 0x8733", "liyrn 0x20 = 0x874F", "liyro 0x20 = 0x8814", "liyrv 0x20 = 0x8830", "liysd 0x20 = 0x8763", "liytj 0x20 = 0x87D1", "liyub 0x20 = 0x87AD", "liyv 0x20 = 0x867B", "liyvi 0x20 = 0x86BF", "liywm 0x20 = 0x87FA", "liyx 0x20 = 0x8810", "liyyj 0x20 = 0x87C0", "ljc 0x20 = 0x8895", "ljcr 0x20 = 0x8923", "lje 0x20 = 0x887C", "ljka 0x20 = 0x891A", "ljp 0x20 = 0x8889", "lk 0x20 = 0x53F2", "lkbt 0x20 = 0x76CE", "lkhaf 0x20 = 0x9D26", "lkiv 0x20 = 0x88D7", "lkld 0x20 = 0x88B8", "lklv 0x20 = 0x88FA", "lkma 0x20 = 0x896B", "lkoo 0x20 = 0x88CC", "ll 0x20 = 0x4E32", "llamh 0x20 = 0x66A2", "lldwf 0x20 = 0x6704", "lll 0x20 = 0x5DDD", "lllc 0x20 = 0x9806", "lllv 0x20 = 0x8938", "llmn 0x20 = 0x7247", "llmy 0x20 = 0x88F6", "lln 0x20 = 0x5F17", "llp 0x20 = 0x60A3", "llpb 0x20 = 0x8919", "llv 0x20 = 0x5A41", "llw 0x20 = 0x8896", "llww 0x20 = 0x4E33", "llxl 0x20 = 0x88EB", "llz 0x20 = 0x8876", "lma 0x20 = 0x88B9", "lmbb 0x20 = 0x8966", "lmbuc 0x20 = 0x8CB4", "lmd 0x20 = 0x8867", "lmfbc 0x20 = 0x8CEE", "lmfbt 0x20 = 0x76E1", "lmg 0x20 = 0x887D", "lmi 0x20 = 0x866B", "lmlb 0x20 = 0x88F2", "lmln 0x20 = 0x5283", "lmmm 0x20 = 0x97ED", "lmmp 0x20 = 0x8979", "lmmv 0x20 = 0x88D6", "lmp 0x20 = 0x5317", "lmpnl 0x20 = 0x90B6", "lmrt 0x20 = 0x88CB", "lmrw 0x20 = 0x8914", "lmsy 0x20 = 0x975E", "lmsyn 0x20 = 0x5255", "lmvi 0x20 = 0x8925", "lmwf 0x20 = 0x893E", "lmwu 0x20 = 0x893C", "ln 0x20 = 0x9B25", "lnao 0x20 = 0x8950", "lnbuc 0x20 = 0x8CBB", "lncr 0x20 = 0x895C", "lnfq 0x20 = 0x7249", "lngwc 0x20 = 0x7258", "lnhe 0x20 = 0x8871", "lnhhj 0x20 = 0x724C", "lnhsb 0x20 = 0x7256", "lnhxu 0x20 = 0x9B29", "lnii 0x20 = 0x8941", "lniiz 0x20 = 0x724B", "lnln 0x20 = 0x521C", "lnme 0x20 = 0x7248", "lnmjk 0x20 = 0x9B2B", "lnnau 0x20 = 0x8274", "lnnxu 0x20 = 0x9B2E", "lnoe 0x20 = 0x894F", "lnomn 0x20 = 0x724F", "lnptd 0x20 = 0x7252", "lnshr 0x20 = 0x724A", "lntc 0x20 = 0x9B28", "lnybs 0x20 = 0x7253", "lnylb 0x20 = 0x9B27", "loae 0x20 = 0x8907", "lob 0x20 = 0x8872", "lohh 0x20 = 0x8897", "loik 0x20 = 0x88B1", "loim 0x20 = 0x8973", "loma 0x20 = 0x8958", "lomn 0x20 = 0x887F", "lomnz 0x20 = 0x8915", "lomo 0x20 = 0x895D", "lomr 0x20 = 0x88B7", "lopd 0x20 = 0x8898", "lord 0x20 = 0x8913", "lp 0x20 = 0x5FE0", "lpb 0x20 = 0x80CC", "lpd 0x20 = 0x886A", "lpmm 0x20 = 0x8880", "lpr 0x20 = 0x88A7", "lpru 0x20 = 0x888D", "lptd 0x20 = 0x890B", "lpwtc 0x20 = 0x5180", "lq 0x20 = 0x807F", "lqhk 0x20 = 0x8909", "lqmat 0x20 = 0x884B", "lqmv 0x20 = 0x88F1", "lqo 0x20 = 0x886D", "lrb 0x20 = 0x88D0", "lrhg 0x20 = 0x88CE", "lrrd 0x20 = 0x8959", "lrrj 0x20 = 0x894C", "lsav 0x20 = 0x8917", "lsh 0x20 = 0x521D", "lshr 0x20 = 0x8891", "lsjr 0x20 = 0x88FE", "lskr 0x20 = 0x88D9", "lsmi 0x20 = 0x8951", "lsmt 0x20 = 0x8964", "lsya 0x20 = 0x8936", "ltbi 0x20 = 0x897A", "ltgi 0x20 = 0x897C", "ltmo 0x20 = 0x8946", "ltor 0x20 = 0x8921", "ltwi 0x20 = 0x896A", "ltwv 0x20 = 0x895B", "lvhaf 0x20 = 0x9DDC", "lvhqu 0x20 = 0x6C00", "lvis 0x20 = 0x888E", "lvno 0x20 = 0x8916", "lvok 0x20 = 0x6578", "lvr 0x20 = 0x88BD", "lw 0x20 = 0x7531", "lwb 0x20 = 0x5191", "lwbz 0x20 = 0x80C4", "lwd 0x20 = 0x88F8", "lwdz 0x20 = 0x88CD", "lwg 0x20 = 0x88E1", "lwk 0x20 = 0x88C0", "lwl 0x20 = 0x7533", "lwli 0x20 = 0x8961", "lwlj 0x20 = 0x8957", "lwlp 0x20 = 0x896C", "lwmvs 0x20 = 0x7539", "lwot 0x20 = 0x891E", "lwp 0x20 = 0x66F3", "lx 0x20 = 0x8085", "lxhaf 0x20 = 0x9DEB", "lyav 0x20 = 0x892A", "lybb 0x20 = 0x8905", "lybp 0x20 = 0x8971", "lyd 0x20 = 0x68D0", "lydu 0x20 = 0x896F", "lyjj 0x20 = 0x8933", "lyjwj 0x20 = 0x8F29", "lyk 0x20 = 0x595C", "lylmi 0x20 = 0x871A", "lyomv 0x20 = 0x9925", "lyp 0x20 = 0x60B2", "lysyy 0x20 = 0x7FE1", "lyto 0x20 = 0x895A", "lyub 0x20 = 0x8935", "lyv 0x20 = 0x5A53", "lyvi 0x20 = 0x88A8", "lywm 0x20 = 0x8962", "lyyhv 0x20 = 0x88F4", "lyyk 0x20 = 0x6590", "m 0x20 = 0x4E00", "ma 0x20 = 0x767E", "mabk 0x20 = 0x53AD", "mad 0x20 = 0x6AEB", "mahr 0x20 = 0x53AC", "mai 0x20 = 0x6229", "mama 0x20 = 0x7695", "mamr 0x20 = 0x78A7", "mand 0x20 = 0x539A", "manl 0x20 = 0x9111", "mbbhg 0x20 = 0x973E", "mbbhv 0x20 = 0x9722", "mbbmo 0x20 = 0x9725", "mbcsh 0x20 = 0x96F0", "mbdbu 0x20 = 0x971C", "mbdd 0x20 = 0x9716", "mbddh 0x20 = 0x9726", "mbdi 0x20 = 0x8010", "mbebg 0x20 = 0x972A", "mbebr 0x20 = 0x9718", "mbed 0x20 = 0x9702", "mbejb 0x20 = 0x9708", "mbemm 0x20 = 0x974B", "mbeni 0x20 = 0x9710", "mbetc 0x20 = 0x971F", "mbetv 0x20 = 0x972E", "mbeyr 0x20 = 0x9711", "mbfb 0x20 = 0x9704", "mbhaf 0x20 = 0x9D2F", "mbhafz 0x20 = 0x9E0D", "mbhafzz 0x20 = 0x9DCA", "mbhfd 0x20 = 0x96FD", "mbhhh 0x20 = 0x800F", "mbhhw 0x20 = 0x9724", "mbhok 0x20 = 0x973A", "mbhxu 0x20 = 0x9713", "mbhyo 0x20 = 0x96FF", "mbjlv 0x20 = 0x970B", "mbk 0x20 = 0x800E", "mbks 0x20 = 0x52F5", "mblbk 0x20 = 0x96F5", "mbll 0x20 = 0x800C", "mblmi 0x20 = 0x878D", "mblmy 0x20 = 0x970F", "mblwv 0x20 = 0x96FB", "mbmbl 0x20 = 0x9700", "mbmdm 0x20 = 0x9742", "mbmgi 0x20 = 0x74BD", "mbmmi 0x20 = 0x96F2", "mbmms 0x20 = 0x96E9", "mbmmv 0x20 = 0x9707", "mbnhs 0x20 = 0x9727", "mbnhu 0x20 = 0x973F", "mbnih 0x20 = 0x96FA", "mbnkg 0x20 = 0x9706", "mbnl 0x20 = 0x90B4", "mbnot 0x20 = 0x972F", "mboah 0x20 = 0x9B3A", "mbog 0x20 = 0x970D", "mbogg 0x20 = 0x9743", "mbomi 0x20 = 0x96F6", "mbowy 0x20 = 0x9709", "mbp 0x20 = 0x6067", "mbphe 0x20 = 0x6182", "mbpru 0x20 = 0x96F9", "mbrbc 0x20 = 0x9723", "mbrji 0x20 = 0x9735", "mbrmr 0x20 = 0x9732", "mbrrm 0x20 = 0x9748", "mbrrr 0x20 = 0x971D", "mbrse 0x20 = 0x971E", "mbsfi 0x20 = 0x9728", "mbsm 0x20 = 0x96EA", "mbsrj 0x20 = 0x9739", "mbsya 0x20 = 0x972B", "mbsyy 0x20 = 0x7FEE", "mbtbk 0x20 = 0x9730", "mbtjb 0x20 = 0x9738", "mbtlj 0x20 = 0x97B7", "mbtlk 0x20 = 0x9719", "mbtm 0x20 = 0x96F8", "mbuc 0x20 = 0x9801", "mbuce 0x20 = 0x9B37", "mbucz 0x20 = 0x8CA2", "mbv 0x20 = 0x800D", "mbw 0x20 = 0x96F7", "mbwtc 0x20 = 0x972C", "mbybp 0x20 = 0x9747", "mbydl 0x20 = 0x9729", "mbyhs 0x20 = 0x96F1", "mbyk 0x20 = 0x96EF", "mbymr 0x20 = 0x9705", "mbyrv 0x20 = 0x9744", "mbytn 0x20 = 0x9720", "mbytv 0x20 = 0x970E", "mbyx 0x20 = 0x973D", "mche 0x20 = 0x5912", "mcw 0x20 = 0x897F", "mcwm 0x20 = 0x9149", "md 0x20 = 0x4E8E", "mda 0x20 = 0x66C6", "mdbt 0x20 = 0x76C2", "mdhaf 0x20 = 0x9DC5", "mdm 0x20 = 0x4E94", "mdmr 0x20 = 0x78FF", "mdnl 0x20 = 0x9098", "mdylm 0x20 = 0x6B77", "me 0x20 = 0x53CD", "mem 0x20 = 0x4E9F", "menl 0x20 = 0x913E", "mez 0x20 = 0x6C5E", "mf 0x20 = 0x4E0D", "mfbk 0x20 = 0x723E", "mfbq 0x20 = 0x752D", "mfbt 0x20 = 0x76C3", "mfbuu 0x20 = 0x899D", "mfhaf 0x20 = 0x9D00", "mfhhh 0x20 = 0x5F6F", "mfhio 0x20 = 0x74E2", "mfhni 0x20 = 0x98C4", "mfj 0x20 = 0x5E73", "mfk 0x20 = 0x5940", "mfln 0x20 = 0x527D", "mfm 0x20 = 0x4E15", "mfmbc 0x20 = 0x9858", "mfmbcz 0x20 = 0x9860", "mfmym 0x20 = 0x6B6A", "mfnl 0x20 = 0x9122", "mfp 0x20 = 0x613F", "mfr 0x20 = 0x5426", "mfsyy 0x20 = 0x7FF2", "mfvnd 0x20 = 0x5B6C", "mg 0x20 = 0x738B", "mgaa 0x20 = 0x7429", "mgabu 0x20 = 0x7441", "mgahm 0x20 = 0x7446", "mgahu 0x20 = 0x7442", "mgamh 0x20 = 0x7452", "mgapp 0x20 = 0x7428", "mgau 0x20 = 0x7436", "mgayf 0x20 = 0x749F", "mgayk 0x20 = 0x741D", "mgb 0x20 = 0x518D", "mgbbe 0x20 = 0x74A6", "mgbcd 0x20 = 0x741B", "mgbcv 0x20 = 0x74D4", "mgbgr 0x20 = 0x7431", "mgbjj 0x20 = 0x743F", "mgbm 0x20 = 0x73C7", "mgbme 0x20 = 0x7457", "mgbnd 0x20 = 0x7408", "mgbou 0x20 = 0x7464", "mgbsd 0x20 = 0x7424", "mgbt 0x20 = 0x73CA", "mgbuc 0x20 = 0x73FC", "mgbuu 0x20 = 0x73FE", "mgby 0x20 = 0x73AC", "mgbz 0x20 = 0x73A5", "mgcnh 0x20 = 0x73F6", "mgcsh 0x20 = 0x73A2", "mgcwa 0x20 = 0x7494", "mgdd 0x20 = 0x7433", "mgdhe 0x20 = 0x73BB", "mgdk 0x20 = 0x73A6", "mgdmq 0x20 = 0x744B", "mgegi 0x20 = 0x743A", "mgeii 0x20 = 0x7475", "mgfbc 0x20 = 0x7463", "mgfbw 0x20 = 0x74AB", "mgfdq 0x20 = 0x7498", "mgff 0x20 = 0x7430", "mgfmu 0x20 = 0x73D6", "mggb 0x20 = 0x73C3", "mggg 0x20 = 0x73EA", "mggnf 0x20 = 0x74D9", "mggsk 0x20 = 0x7488", "mgha 0x20 = 0x73C0", "mghae 0x20 = 0x7454", "mghaf 0x20 = 0x9CFF", "mghby 0x20 = 0x73D8", "mghdn 0x20 = 0x740D", "mghds 0x20 = 0x7407", "mghdw 0x20 = 0x74A0", "mgher 0x20 = 0x73DE", "mghgu 0x20 = 0x73D7", "mghhl 0x20 = 0x73CB", "mghi 0x20 = 0x7470", "mghjd 0x20 = 0x73E0", "mghlb 0x20 = 0x7440", "mghnb 0x20 = 0x73EE", "mghon 0x20 = 0x73E9", "mghoo 0x20 = 0x747D", "mghqi 0x20 = 0x73F4", "mghuc 0x20 = 0x74DA", "mghwp 0x20 = 0x7481", "mghxc 0x20 = 0x74B5", "mghyo 0x20 = 0x73E7", "mgi 0x20 = 0x4E1F", "mgiav 0x20 = 0x7405", "mgihg 0x20 = 0x73ED", "mgihr 0x20 = 0x744A", "mgihs 0x20 = 0x81F9", "mgii 0x20 = 0x7416", "mgiil 0x20 = 0x746F", "mgije 0x20 = 0x7403", "mgilr 0x20 = 0x746D", "mgir 0x20 = 0x73C6", "mgisk 0x20 = 0x74B7", "mgiz 0x20 = 0x7389", "mgjbc 0x20 = 0x7471", "mgjch 0x20 = 0x744F", "mgjcr 0x20 = 0x7462", "mgjii 0x20 = 0x747C", "mgjmc 0x20 = 0x74B8", "mgjmf 0x20 = 0x742E", "mgjmm 0x20 = 0x7444", "mgjnu 0x20 = 0x742C", "mgjrb 0x20 = 0x745A", "mgjrr 0x20 = 0x742F", "mgkb 0x20 = 0x73DB", "mgkiu 0x20 = 0x73EB", "mgkiv 0x20 = 0x7409", "mgkkb 0x20 = 0x740B", "mgkld 0x20 = 0x73D4", "mgkmr 0x20 = 0x7426", "mgksr 0x20 = 0x73C8", "mglll 0x20 = 0x7394", "mglmt 0x20 = 0x74B6", "mglmy 0x20 = 0x7432", "mgln 0x20 = 0x5230", "mglq 0x20 = 0x73D2", "mglwl 0x20 = 0x73C5", "mgm 0x20 = 0x7392", "mgmbb 0x20 = 0x74C0", "mgmbc 0x20 = 0x980A", "mgmd 0x20 = 0x7397", "mgmfj 0x20 = 0x73B6", "mgmg 0x20 = 0x73A8", "mgmgh 0x20 = 0x74B1", "mgmhl 0x20 = 0x740A", "mgmig 0x20 = 0x81F8", "mgmj 0x20 = 0x7395", "mgmln 0x20 = 0x7504", "mgmmr 0x20 = 0x73F8", "mgmmu 0x20 = 0x73A9", "mgmn 0x20 = 0x738E", "mgmnr 0x20 = 0x73C2", "mgmso 0x20 = 0x7422", "mgmvh 0x20 = 0x73A1", "mgmwd 0x20 = 0x746E", "mgnbk 0x20 = 0x74CA", "mgnbkz 0x20 = 0x744D", "mgnhb 0x20 = 0x749A", "mgnkg 0x20 = 0x73FD", "mgnl 0x20 = 0x90C5", "mgnlz 0x20 = 0x9104", "mgno 0x20 = 0x7396", "mgnot 0x20 = 0x7492", "mgnoz 0x20 = 0x6B45", "mgohh 0x20 = 0x73CD", "mgoip 0x20 = 0x73B3", "mgoj 0x20 = 0x739D", "mgok 0x20 = 0x81F4", "mgokz 0x20 = 0x73AB", "mgoll 0x20 = 0x73A0", "mgoma 0x20 = 0x74AF", "mgomi 0x20 = 0x73B2", "mgomn 0x20 = 0x7434", "mgomnz 0x20 = 0x745C", "mgomr 0x20 = 0x7472", "mgomrz 0x20 = 0x73E8", "mgono 0x20 = 0x7401", "mgonr 0x20 = 0x7400", "mgpa 0x20 = 0x73E3", "mgph 0x20 = 0x745F", "mgphz 0x20 = 0x73CC", "mgpi 0x20 = 0x7393", "mgpp 0x20 = 0x7435", "mgppa 0x20 = 0x744E", "mgppz 0x20 = 0x73AD", "mgpru 0x20 = 0x73B8", "mgpt 0x20 = 0x73B4", "mgqj 0x20 = 0x73A4", "mgqkd 0x20 = 0x81FB", "mgqkdz 0x20 = 0x7467", "mgqkq 0x20 = 0x742B", "mgrb 0x20 = 0x7404", "mgrhg 0x20 = 0x73F5", "mgrmr 0x20 = 0x7490", "mgrrd 0x20 = 0x74AA", "mgrse 0x20 = 0x7455", "mgryo 0x20 = 0x73FF", "mgshr 0x20 = 0x73BF", "mgsj 0x20 = 0x73E5", "mgsjr 0x20 = 0x741A", "mgskr 0x20 = 0x73FA", "mgsmi 0x20 = 0x7495", "mgsqf 0x20 = 0x746A", "mgsyh 0x20 = 0x7486", "mgsyj 0x20 = 0x74BB", "mgsyy 0x20 = 0x73DD", "mgt 0x20 = 0x5F04", "mgtbc 0x20 = 0x7420", "mgtbn 0x20 = 0x7450", "mgtc 0x20 = 0x73D9", "mgtgm 0x20 = 0x7473", "mgtgt 0x20 = 0x74C2", "mgtlb 0x20 = 0x748A", "mgtlk 0x20 = 0x745B", "mgtlm 0x20 = 0x747E", "mgtm 0x20 = 0x73B5", "mgtmc 0x20 = 0x742A", "mgtmcz 0x20 = 0x749C", "mgtmo 0x20 = 0x749E", "mgtod 0x20 = 0x7479", "mgtoe 0x20 = 0x74C1", "mgtq 0x20 = 0x73DC", "mgtrg 0x20 = 0x74D8", "mgtrk 0x20 = 0x74A5", "mgumb 0x20 = 0x745E", "mguob 0x20 = 0x74D7", "mguog 0x20 = 0x7480", "mguon 0x20 = 0x740C", "mgvid 0x20 = 0x74C5", "mgvio 0x20 = 0x74A3", "mgvne 0x20 = 0x742D", "mgvno 0x20 = 0x7451", "mgvvd 0x20 = 0x7485", "mgvvw 0x20 = 0x7459", "mgwg 0x20 = 0x7406", "mgwk 0x20 = 0x73DA", "mgwl 0x20 = 0x73BE", "mgwlv 0x20 = 0x74B0", "mgwww 0x20 = 0x74C3", "mgybj 0x20 = 0x74AD", "mgybk 0x20 = 0x74DB", "mgybp 0x20 = 0x74CF", "mgybu 0x20 = 0x74BF", "mgyck 0x20 = 0x73D3", "mgyed 0x20 = 0x74A8", "mgyfe 0x20 = 0x7421", "mgyjj 0x20 = 0x7489", "mgyk 0x20 = 0x739F", "mgykg 0x20 = 0x6591", "mgymp 0x20 = 0x73BC", "mgyog 0x20 = 0x74A1", "mgypo 0x20 = 0x74A9", "mgypu 0x20 = 0x7425", "mgyr 0x20 = 0x73B7", "mgyrv 0x20 = 0x74D6", "mgyso 0x20 = 0x7487", "mgytj 0x20 = 0x748B", "mgyto 0x20 = 0x74B2", "mgytr 0x20 = 0x7423", "mgyub 0x20 = 0x7483", "mgyvi 0x20 = 0x73B9", "mgyx 0x20 = 0x74BE", "mgyyb 0x20 = 0x74CB", "mgz 0x20 = 0x58EC", "mh 0x20 = 0x5382", "mhaf 0x20 = 0x539F", "mhdd 0x20 = 0x53A4", "mhhaf 0x20 = 0x9D09", "mhjg 0x20 = 0x539C", "mhnl 0x20 = 0x90AA", "mhog 0x20 = 0x96C5", "mhomv 0x20 = 0x992E", "mhpm 0x20 = 0x538E", "mibbe 0x20 = 0x9749", "mig 0x20 = 0x81F3", "migz 0x20 = 0x738A", "mihi 0x20 = 0x9B42", "miia 0x20 = 0x6649", "minl 0x20 = 0x910F", "miomn 0x20 = 0x9712", "miuh 0x20 = 0x5396", "miyle 0x20 = 0x9746", "mj 0x20 = 0x5E72", "mjbc 0x20 = 0x53A7", "mjf 0x20 = 0x70CE", "mjhaf 0x20 = 0x9CF1", "mjhafz 0x20 = 0x9DE3", "mjhx 0x20 = 0x81FF", "mjixp 0x20 = 0x9E89", "mjln 0x20 = 0x520A", "mjmbc 0x20 = 0x9807", "mjmj 0x20 = 0x5E75", "mjnl 0x20 = 0x9097", "mjok 0x20 = 0x6562", "mjr 0x20 = 0x820C", "mjwj 0x20 = 0x5399", "mk 0x20 = 0x5929", "mkc 0x20 = 0x928E", "mkg 0x20 = 0x58D3", "mkhi 0x20 = 0x9B58", "mkhqm 0x20 = 0x7526", "mklmi 0x20 = 0x86E9", "mklmiz 0x20 = 0x8695", "mkmwl 0x20 = 0x9768", "mknl 0x20 = 0x90E0", "mkomv 0x20 = 0x995C", "mkp 0x20 = 0x6050", "mkpz 0x20 = 0x5FDD", "mkpzz 0x20 = 0x61A8", "mkr 0x20 = 0x541E", "mkryo 0x20 = 0x8DEB", "mks 0x20 = 0x529F", "mktlj 0x20 = 0x978F", "mkv 0x20 = 0x5B2E", "mkwgf 0x20 = 0x9EF6", "mkwl 0x20 = 0x53B4", "ml 0x20 = 0x4E0C", "mlbe 0x20 = 0x96E8", "mlbo 0x20 = 0x5169", "mllm 0x20 = 0x4E9E", "mlm 0x20 = 0x5DE5", "mlmll 0x20 = 0x5DDE", "mlmn 0x20 = 0x74E6", "mlmy 0x20 = 0x539E", "mlvs 0x20 = 0x4E0F", "mlwk 0x20 = 0x66F4", "mm 0x20 = 0x4E8C", "mmbbp 0x20 = 0x9E97", "mmbc 0x20 = 0x9805", "mmf 0x20 = 0x793A", "mmg 0x20 = 0x580A", "mmhaf 0x20 = 0x9D61", "mmhafz 0x20 = 0x9D5B", "mmi 0x20 = 0x4E91", "mmig 0x20 = 0x5394", "mmkiv 0x20 = 0x5DF0", "mmks 0x20 = 0x52C1", "mml 0x20 = 0x4E93", "mmlmi 0x20 = 0x8741", "mmln 0x20 = 0x5244", "mmlnz 0x20 = 0x74E8", "mmm 0x20 = 0x4E09", "mmmbc 0x20 = 0x9838", "mmmv 0x20 = 0x8FB0", "mmn 0x20 = 0x4E8D", "mmnl 0x20 = 0x90B3", "mmno 0x20 = 0x6B21", "mmok 0x20 = 0x653F", "mmp 0x20 = 0x60E1", "mmr 0x20 = 0x543E", "mmu 0x20 = 0x5143", "mmuu 0x20 = 0x9EFF", "mmvh 0x20 = 0x538A", "mmvs 0x20 = 0x5DE7", "mmypu 0x20 = 0x8663", "mn 0x20 = 0x4E01", "mnbm 0x20 = 0x6B82", "mnbnd 0x20 = 0x6B8D", "mnf 0x20 = 0x70C8", "mng 0x20 = 0x578B", "mngbt 0x20 = 0x6BAA", "mngwc 0x20 = 0x6BB0", "mnhaf 0x20 = 0x6BA6", "mnhafz 0x20 = 0x9D37", "mnhbt 0x20 = 0x6B88", "mnhjd 0x20 = 0x6B8A", "mnhk 0x20 = 0x6B80", "mnhpa 0x20 = 0x6B99", "mnhuk 0x20 = 0x6BA0", "mni 0x20 = 0x6B79", "mnii 0x20 = 0x6B98", "mnije 0x20 = 0x6B8F", "mnip 0x20 = 0x6B7B", "mnir 0x20 = 0x6B86", "mnjbm 0x20 = 0x6B96", "mnjmc 0x20 = 0x6BAF", "mnjmcz 0x20 = 0x6BA5", "mnjru 0x20 = 0x6B91", "mnklv 0x20 = 0x6B97", "mnkoo 0x20 = 0x6B8E", "mnkpb 0x20 = 0x6BA2", "mnl 0x20 = 0x909B", "mnlbk 0x20 = 0x6B83", "mnle 0x20 = 0x6B94", "mnln 0x20 = 0x5217", "mnlq 0x20 = 0x8082", "mnmbc 0x20 = 0x9802", "mnmem 0x20 = 0x6B9B", "mnmvm 0x20 = 0x6B8C", "mnmwm 0x20 = 0x6BAD", "mnne 0x20 = 0x6B7F", "mnnwf 0x20 = 0x9BA4", "mnoah 0x20 = 0x6BA4", "mnohh 0x20 = 0x6B84", "mnoim 0x20 = 0x6BB2", "mnomo 0x20 = 0x6BAE", "mnpa 0x20 = 0x6B89", "mnphh 0x20 = 0x6B7E", "mnr 0x20 = 0x53EF", "mnrbc 0x20 = 0x6B9E", "mnrrj 0x20 = 0x6BAB", "mntlm 0x20 = 0x6BA3", "mnv 0x20 = 0x59F4", "mnwot 0x20 = 0x6B9F", "mnyfu 0x20 = 0x6BA7", "mnyhv 0x20 = 0x88C2", "mnym 0x20 = 0x4E99", "mnytr 0x20 = 0x6B95", "mo 0x20 = 0x4EC4", "moau 0x20 = 0x8C5D", "moav 0x20 = 0x8C64", "mob 0x20 = 0x4E19", "mobuc 0x20 = 0x8CC7", "mobuu 0x20 = 0x89A1", "mobvk 0x20 = 0x8C6F", "mod 0x20 = 0x6825", "mof 0x20 = 0x71F9", "mofc 0x20 = 0x8D17", "mofd 0x20 = 0x7CA2", "mogbt 0x20 = 0x8C77", "mohaf 0x20 = 0x9DE2", "mohd 0x20 = 0x79F6", "mohf 0x20 = 0x9D08", "mohoo 0x20 = 0x8C75", "mohsu 0x20 = 0x8C5F", "mojka 0x20 = 0x8C6C", "mojtc 0x20 = 0x8C76", "moju 0x20 = 0x5392", "mok 0x20 = 0x653B", "mokkb 0x20 = 0x8C68", "molmi 0x20 = 0x87E8", "moln 0x20 = 0x5282", "molnz 0x20 = 0x5262", "momhf 0x20 = 0x8C72", "momln 0x20 = 0x74F7", "momso 0x20 = 0x8C69", "momt 0x20 = 0x8C5C", "moo 0x20 = 0x5DEB", "moog 0x20 = 0x96C1", "moomv 0x20 = 0x9908", "mop 0x20 = 0x6063", "mor 0x20 = 0x54A8", "mord 0x20 = 0x6976", "morse 0x20 = 0x8C6D", "mos 0x20 = 0x538F", "mov 0x20 = 0x59FF", "mowot 0x20 = 0x8C71", "moyvo 0x20 = 0x8C65", "mphaf 0x20 = 0x9E1D", "mpnl 0x20 = 0x9148", "mpylm 0x20 = 0x6B66", "mr 0x20 = 0x77F3", "mramh 0x20 = 0x78AD", "mrapv 0x20 = 0x78A3", "mrav 0x20 = 0x784D", "mrbb 0x20 = 0x787C", "mrbbr 0x20 = 0x78A2", "mrbgr 0x20 = 0x7889", "mrbl 0x20 = 0x9B32", "mrbm 0x20 = 0x7820", "mrbmr 0x20 = 0x7850", "mrbsd 0x20 = 0x7880", "mrbtu 0x20 = 0x7899", "mrbuu 0x20 = 0x786F", "mrbvk 0x20 = 0x78CE", "mrby 0x20 = 0x7803", "mrcsh 0x20 = 0x780F", "mrcwa 0x20 = 0x78F3", "mrdam 0x20 = 0x78B4", "mrdci 0x20 = 0x7879", "mrdd 0x20 = 0x7884", "mrddo 0x20 = 0x790E", "mrdhe 0x20 = 0x7834", "mrdm 0x20 = 0x7835", "mre 0x20 = 0x6CF5", "mreed 0x20 = 0x78C9", "mresd 0x20 = 0x78F2", "mrez 0x20 = 0x7805", "mrfb 0x20 = 0x785D", "mrfbw 0x20 = 0x7911", "mrfdq 0x20 = 0x78F7", "mrff 0x20 = 0x8215", "mrfff 0x20 = 0x792F", "mrfh 0x20 = 0x7802", "mrgb 0x20 = 0x8211", "mrgg 0x20 = 0x7845", "mrggu 0x20 = 0x78FD", "mrgi 0x20 = 0x781D", "mrgit 0x20 = 0x78D5", "mrgr 0x20 = 0x7848", "mrgrr 0x20 = 0x7902", "mrgsk 0x20 = 0x78DD", "mrhdw 0x20 = 0x78FB", "mrher 0x20 = 0x784C", "mrhgr 0x20 = 0x785E", "mrhhj 0x20 = 0x7891", "mrhi 0x20 = 0x78C8", "mrhio 0x20 = 0x782D", "mrhjd 0x20 = 0x7843", "mrhje 0x20 = 0x78AB", "mrhjg 0x20 = 0x787E", "mrhkb 0x20 = 0x7904", "mrhlc 0x20 = 0x7929", "mrhml 0x20 = 0x65AB", "mrhne 0x20 = 0x7813", "mrhp 0x20 = 0x77FA", "mrhpm 0x20 = 0x7825", "mrhqi 0x20 = 0x786A", "mrhsb 0x20 = 0x78A5", "mrhsk 0x20 = 0x7909", "mrhsn 0x20 = 0x7828", "mrhuc 0x20 = 0x7938", "mrhup 0x20 = 0x8210", "mrhyu 0x20 = 0x78C3", "mriav 0x20 = 0x7860", "mrie 0x20 = 0x782F", "mrihf 0x20 = 0x78E9", "mriih 0x20 = 0x78E3", "mrilr 0x20 = 0x78C4", "mritc 0x20 = 0x7926", "mriuh 0x20 = 0x7865", "mrjbc 0x20 = 0x78CC", "mrjcm 0x20 = 0x787F", "mrjii 0x20 = 0x78DA", "mrjmc 0x20 = 0x7917", "mrjmo 0x20 = 0x7887", "mrjnu 0x20 = 0x7897", "mrjp 0x20 = 0x7823", "mrjqr 0x20 = 0x78CD", "mrjwj 0x20 = 0x7868", "mrkiv 0x20 = 0x786B", "mrkkk 0x20 = 0x78E2", "mrkmr 0x20 = 0x7895", "mrkoo 0x20 = 0x7864", "mrlln 0x20 = 0x7829", "mrlq 0x20 = 0x7849", "mrlwl 0x20 = 0x7837", "mrm 0x20 = 0x77FC", "mrmbb 0x20 = 0x791D", "mrmbc 0x20 = 0x78A9", "mrmbg 0x20 = 0x792D", "mrmbu 0x20 = 0x7935", "mrmbw 0x20 = 0x790C", "mrmcw 0x20 = 0x7852", "mrmfj 0x20 = 0x7830", "mrmgi 0x20 = 0x7821", "mrmj 0x20 = 0x77F8", "mrmkp 0x20 = 0x8214", "mrmlk 0x20 = 0x786C", "mrmnr 0x20 = 0x7822", "mrmpm 0x20 = 0x7894", "mrmr 0x20 = 0x7833", "mrmrr 0x20 = 0x78CA", "mrmt 0x20 = 0x7814", "mrmtb 0x20 = 0x792A", "mrmtn 0x20 = 0x784E", "mrmu 0x20 = 0x77F9", "mrmvb 0x20 = 0x78ED", "mrmvh 0x20 = 0x7811", "mrmvm 0x20 = 0x785C", "mrmwj 0x20 = 0x78F9", "mrmwm 0x20 = 0x7913", "mrnbg 0x20 = 0x786E", "mrnd 0x20 = 0x77F7", "mrnhe 0x20 = 0x7810", "mrni 0x20 = 0x77FD", "mrnl 0x20 = 0x90DA", "mrnlz 0x20 = 0x9143", "mrnmu 0x20 = 0x784A", "mrno 0x20 = 0x6B4C", "mrnot 0x20 = 0x78F4", "mrnoz 0x20 = 0x780D", "mrnqd 0x20 = 0x78D4", "mrnr 0x20 = 0x54E5", "mrobg 0x20 = 0x78BA", "mrog 0x20 = 0x7893", "mrogd 0x20 = 0x78FC", "mrogf 0x20 = 0x7901", "mrok 0x20 = 0x6554", "mroll 0x20 = 0x780E", "mromb 0x20 = 0x7896", "mromd 0x20 = 0x7862", "mromi 0x20 = 0x7831", "mron 0x20 = 0x77FB", "mros 0x20 = 0x781F", "mrpko 0x20 = 0x7919", "mrpp 0x20 = 0x7812", "mrpru 0x20 = 0x7832", "mrpsh 0x20 = 0x780C", "mrptd 0x20 = 0x789F", "mrqmb 0x20 = 0x7883", "mrqmc 0x20 = 0x78E7", "mrqmy 0x20 = 0x78A1", "mrqo 0x20 = 0x7806", "mrrg 0x20 = 0x5669", "mrrrj 0x20 = 0x78FE", "mrrrk 0x20 = 0x7939", "mrrse 0x20 = 0x78AC", "mrsec 0x20 = 0x7925", "mrslb 0x20 = 0x7838", "mrsmt 0x20 = 0x791B", "mrsqf 0x20 = 0x78BC", "mrsrj 0x20 = 0x7914", "mrstv 0x20 = 0x78BE", "mrsyh 0x20 = 0x78DF", "mrt 0x20 = 0x8C46", "mrta 0x20 = 0x788F", "mrtbc 0x20 = 0x7898", "mrtbf 0x20 = 0x7924", "mrtbo 0x20 = 0x791E", "mrtgi 0x20 = 0x7912", "mrtgm 0x20 = 0x78CB", "mrtii 0x20 = 0x7921", "mrtlk 0x20 = 0x78A4", "mrtm 0x20 = 0x751C", "mrtmc 0x20 = 0x78FA", "mrtmv 0x20 = 0x78AA", "mrttm 0x20 = 0x78B0", "mrtvi 0x20 = 0x78C1", "mrtvs 0x20 = 0x78E1", "mrtwi 0x20 = 0x7923", "mrtxc 0x20 = 0x78CF", "mrtyv 0x20 = 0x786D", "mrubb 0x20 = 0x78DE", "mrumf 0x20 = 0x78B3", "mrumt 0x20 = 0x78D1", "mruog 0x20 = 0x78EA", "mrvid 0x20 = 0x792B", "mrvio 0x20 = 0x78EF", "mrvne 0x20 = 0x788C", "mrwd 0x20 = 0x7871", "mrwhd 0x20 = 0x7885", "mrwmv 0x20 = 0x78A8", "mrwvf 0x20 = 0x78E5", "mrwww 0x20 = 0x7927", "mrwyi 0x20 = 0x782A", "mrybb 0x20 = 0x78B2", "mrybs 0x20 = 0x78C5", "mrydk 0x20 = 0x7905", "mryg 0x20 = 0x782B", "mryoj 0x20 = 0x788E", "mryr 0x20 = 0x7827", "mryrb 0x20 = 0x78BB", "mryrn 0x20 = 0x78A0", "mryt 0x20 = 0x782C", "mrytr 0x20 = 0x789A", "mrywi 0x20 = 0x78E0", "ms 0x20 = 0x4E07", "msho 0x20 = 0x8C55", "msko 0x20 = 0x8C56", "msnl 0x20 = 0x9120", "msok 0x20 = 0x6537", "msu 0x20 = 0x5384", "mta 0x20 = 0x539D", "mthaf 0x20 = 0x9CFD", "mthhh 0x20 = 0x5F62", "mthhj 0x20 = 0x8C4D", "mtje 0x20 = 0x8C49", "mtjnu 0x20 = 0x8C4C", "mtln 0x20 = 0x5211", "mtm 0x20 = 0x8C47", "mtmbc 0x20 = 0x982D", "mtnl 0x20 = 0x90A2", "mtnlz 0x20 = 0x90D6", "mtog 0x20 = 0x96C3", "mtq 0x20 = 0x63C5", "mttxc 0x20 = 0x8C4F", "mtuo 0x20 = 0x53A5", "mtwb 0x20 = 0x53B2", "mu 0x20 = 0x5140", "mua 0x20 = 0x6701", "muali 0x20 = 0x8836", "mub 0x20 = 0x897E", "muhe 0x20 = 0x590F", "muhj 0x20 = 0x74E9", "mui 0x20 = 0x621B", "mukll 0x20 = 0x5961", "mulmi 0x20 = 0x867A", "muln 0x20 = 0x5213", "mumbc 0x20 = 0x9811", "mumrb 0x20 = 0x9B35", "mumso 0x20 = 0x8C57", "munl 0x20 = 0x90A7", "munmu 0x20 = 0x537C", "mup 0x20 = 0x61A9", "mv 0x20 = 0x531A", "mvb 0x20 = 0x8123", "mvdh 0x20 = 0x7259", "mvdi 0x20 = 0x8FB1", "mvku 0x20 = 0x65E1", "mvlmi 0x20 = 0x8703", "mvnm 0x20 = 0x4E92", "mvphh 0x20 = 0x8985", "mvr 0x20 = 0x5507", "mvvm 0x20 = 0x5DE0", "mwahm 0x20 = 0x9192", "mwaj 0x20 = 0x8983", "mwamo 0x20 = 0x918D", "mwbdi 0x20 = 0x9179", "mwbmr 0x20 = 0x916E", "mwbuc 0x20 = 0x8CC8", "mwbuu 0x20 = 0x9766", "mwbwi 0x20 = 0x91C2", "mwcsh 0x20 = 0x915A", "mwd 0x20 = 0x6817", "mwdd 0x20 = 0x9182", "mwdi 0x20 = 0x914E", "mweee 0x20 = 0x918A", "mwfd 0x20 = 0x7C9F", "mwg 0x20 = 0x5398", "mwgz 0x20 = 0x5794", "mwhaf 0x20 = 0x9D9D", "mwhbu 0x20 = 0x9156", "mwhd 0x20 = 0x9165", "mwher 0x20 = 0x916A", "mwhgf 0x20 = 0x91BA", "mwhgr 0x20 = 0x9177", "mwhi 0x20 = 0x919C", "mwhio 0x20 = 0x8982", "mwhne 0x20 = 0x9158", "mwhoe 0x20 = 0x8986", "mwhqu 0x20 = 0x9155", "mwhsk 0x20 = 0x8988", "mwhut 0x20 = 0x9193", "mwhxe 0x20 = 0x9199", "mwice 0x20 = 0x9178", "mwidd 0x20 = 0x91BE", "mwii 0x20 = 0x9186", "mwijb 0x20 = 0x917A", "mwilr 0x20 = 0x91A3", "mwjcs 0x20 = 0x91A1", "mwjka 0x20 = 0x918F", "mwjkd 0x20 = 0x9175", "mwjp 0x20 = 0x9161", "mwjr 0x20 = 0x9164", "mwjrb 0x20 = 0x9190", "mwklv 0x20 = 0x9183", "mwkrt 0x20 = 0x91A2", "mwkvt 0x20 = 0x91AF", "mwlii 0x20 = 0x8820", "mwlkt 0x20 = 0x91A0", "mwln 0x20 = 0x526F", "mwmbb 0x20 = 0x91B9", "mwmbr 0x20 = 0x91BD", "mwmj 0x20 = 0x9150", "mwmll 0x20 = 0x916C", "mwmmf 0x20 = 0x7968", "mwmmp 0x20 = 0x91C3", "mwmn 0x20 = 0x914A", "mwmnr 0x20 = 0x9160", "mwmwf 0x20 = 0x91A5", "mwmwj 0x20 = 0x91B0", "mwnir 0x20 = 0x9169", "mwnob 0x20 = 0x9191", "mwnoe 0x20 = 0x91B1", "mwog 0x20 = 0x9180", "mwogf 0x20 = 0x91AE", "mwomd 0x20 = 0x9174", "mwos 0x20 = 0x9162", "mwpa 0x20 = 0x916F", "mwpd 0x20 = 0x914F", "mwpi 0x20 = 0x914C", "mwpou 0x20 = 0x9184", "mwrhg 0x20 = 0x9172", "mwrrk 0x20 = 0x91C5", "mwsl 0x20 = 0x9762", "mwsrr 0x20 = 0x91A7", "mwsu 0x20 = 0x914D", "mwsyh 0x20 = 0x91AA", "mwta 0x20 = 0x918B", "mwtgm 0x20 = 0x919D", "mwtlf 0x20 = 0x91BC", "mwtm 0x20 = 0x9163", "mwtmo 0x20 = 0x91AD", "mwtog 0x20 = 0x919B", "mwtwt 0x20 = 0x91B4", "mwtwv 0x20 = 0x91B2", "mwuk 0x20 = 0x9157", "mwv 0x20 = 0x8981", "mwvib 0x20 = 0x9173", "mwvne 0x20 = 0x9181", "mwwlj 0x20 = 0x91B3", "mwwot 0x20 = 0x919E", "mwyfd 0x20 = 0x919A", "mwyoj 0x20 = 0x9189", "mwypo 0x20 = 0x91B5", "mwyr 0x20 = 0x915F", "mwyrd 0x20 = 0x9187", "mwyrv 0x20 = 0x91C0", "mwytp 0x20 = 0x91B7", "mwytr 0x20 = 0x9185", "mwyub 0x20 = 0x91A8", "mxno 0x20 = 0x6B43", "my 0x20 = 0x4E0B", "mylf 0x20 = 0x7109", "mylm 0x20 = 0x6B63", "myp 0x20 = 0x5FD1", "mytj 0x20 = 0x5397", "myvs 0x20 = 0x4E10", "n 0x20 = 0x5F13", "nahi 0x20 = 0x5154", "nahu 0x20 = 0x514D", "napo 0x20 = 0x8C61", "nau 0x20 = 0x8272", "nauz 0x20 = 0x5F1D", "nbam 0x20 = 0x89DB", "nbb 0x20 = 0x5F38", "nbbuk 0x20 = 0x657B", "nbdk 0x20 = 0x89D6", "nbdl 0x20 = 0x89EB", "nbfmu 0x20 = 0x89E5", "nbg 0x20 = 0x89D2", "nbgg 0x20 = 0x89DF", "nbgz 0x20 = 0x58AE", "nbhaf 0x20 = 0x9DF8", "nbher 0x20 = 0x89E1", "nbhio 0x20 = 0x89DA", "nbhpm 0x20 = 0x89DD", "nbhqu 0x20 = 0x6C04", "nbhxu 0x20 = 0x89EC", "nbije 0x20 = 0x89E9", "nbjka 0x20 = 0x89F0", "nbk 0x20 = 0x5950", "nbkmr 0x20 = 0x89ED", "nbks 0x20 = 0x52C7", "nbksz 0x20 = 0x89D4", "nblmi 0x20 = 0x89E6", "nbln 0x20 = 0x5280", "nbme 0x20 = 0x89E8", "nbmgi 0x20 = 0x74D5", "nbnbk 0x20 = 0x89FC", "nbnhe 0x20 = 0x89D9", "nbnmu 0x20 = 0x89E4", "nboah 0x20 = 0x89F4", "nbop 0x20 = 0x96B3", "nbp 0x20 = 0x607F", "nbrrj 0x20 = 0x89F6", "nbshq 0x20 = 0x89E3", "nbtgq 0x20 = 0x89F2", "nbtlf 0x20 = 0x89FE", "nbu 0x20 = 0x5D9E", "nbuc 0x20 = 0x8CA0", "nbue 0x20 = 0x5F4F", "nbuob 0x20 = 0x89FF", "nbvid 0x20 = 0x89FB", "nbvl 0x20 = 0x89D3", "nbwli 0x20 = 0x89F8", "nbyj 0x20 = 0x659B", "nc 0x20 = 0x5C0F", "ncymr 0x20 = 0x8A79", "nd 0x20 = 0x5B50", "ndbt 0x20 = 0x5B5F", "ndhaf 0x20 = 0x9D94", "ndhio 0x20 = 0x5B64", "ndhvf 0x20 = 0x5B6B", "ndjmf 0x20 = 0x5B6E", "ndlmt 0x20 = 0x5B7B", "ndmbb 0x20 = 0x5B7A", "ndmlm 0x20 = 0x5B72", "ndnd 0x20 = 0x5B56", "ndok 0x20 = 0x5B5C", "ndpru 0x20 = 0x5B62", "ndu 0x20 = 0x5B54", "ndyvo 0x20 = 0x5B69", "ne 0x20 = 0x6C36", "nebt 0x20 = 0x76C8", "nem 0x20 = 0x4E1E", "nemb 0x20 = 0x8100", "nemf 0x20 = 0x70DD", "nemsu 0x20 = 0x5DF9", "nfaa 0x20 = 0x9BE7", "nfagi 0x20 = 0x9C23", "nfail 0x20 = 0x9BFD", "nfamo 0x20 = 0x9BF7", "nfapp 0x20 = 0x9BE4", "nfasy 0x20 = 0x9C28", "nfawe 0x20 = 0x9C3B", "nfb 0x20 = 0x5F30", "nfbgr 0x20 = 0x9BDB", "nfbmr 0x20 = 0x9BA6", "nfbof 0x20 = 0x9C36", "nfbou 0x20 = 0x9C29", "nfcru 0x20 = 0x9BB5", "nfcsh 0x20 = 0x9B75", "nfdn 0x20 = 0x7CA5", "nfdoo 0x20 = 0x9BE0", "nffb 0x20 = 0x9BB9", "nffba 0x20 = 0x9C68", "nffdq 0x20 = 0x9C57", "nffh 0x20 = 0x9B66", "nfgce 0x20 = 0x9BEA", "nfgcg 0x20 = 0x9BE5", "nfgg 0x20 = 0x9BAD", "nfggu 0x20 = 0x9C59", "nfgi 0x20 = 0x9B7C", "nfgr 0x20 = 0x9B9A", "nfhag 0x20 = 0x9C09", "nfhd 0x20 = 0x7A4C", "nfhdd 0x20 = 0x9BDA", "nfhdf 0x20 = 0x9C0D", "nfhdw 0x20 = 0x9C55", "nfher 0x20 = 0x9BA5", "nfhhw 0x20 = 0x9C21", "nfhir 0x20 = 0x9C75", "nfhjd 0x20 = 0x9BA2", "nfhkb 0x20 = 0x9C4E", "nfhor 0x20 = 0x9BE6", "nfhp 0x20 = 0x9B60", "nfhrb 0x20 = 0x9C24", "nfhvf 0x20 = 0x9BC0", "nfhxc 0x20 = 0x9C6E", "nfhxh 0x20 = 0x9BD3", "nfhxu 0x20 = 0x9BE2", "nfhyo 0x20 = 0x9BA1", "nfihr 0x20 = 0x9C14", "nfijb 0x20 = 0x9BC6", "nfije 0x20 = 0x9BC4", "nfiku 0x20 = 0x9B77", "nfir 0x20 = 0x9B90", "nfjcr 0x20 = 0x9C2B", "nfjd 0x20 = 0x9B87", "nfjii 0x20 = 0x9C44", "nfjmu 0x20 = 0x9BC7", "nfjp 0x20 = 0x9B80", "nfjpa 0x20 = 0x9C2D", "nfjr 0x20 = 0x9B95", "nfjrb 0x20 = 0x9C17", "nfkb 0x20 = 0x9BAA", "nflmy 0x20 = 0x9BE1", "nflx 0x20 = 0x9C50", "nfm 0x20 = 0x9B5F", "nfmbl 0x20 = 0x9B9E", "nfmbm 0x20 = 0x9C48", "nfme 0x20 = 0x9B6C", "nfmfm 0x20 = 0x9B7E", "nfmlk 0x20 = 0x9BC1", "nfmmp 0x20 = 0x9C7A", "nfmmr 0x20 = 0x9BC3", "nfmnr 0x20 = 0x9B7A", "nfmrg 0x20 = 0x9C77", "nfmtb 0x20 = 0x9C71", "nfmto 0x20 = 0x9C56", "nfmvm 0x20 = 0x9B71", "nfmwf 0x20 = 0x9C3E", "nfnao 0x20 = 0x9C4C", "nfnau 0x20 = 0x9BB8", "nfnhb 0x20 = 0x9C4A", "nfnhd 0x20 = 0x9C07", "nfnkq 0x20 = 0x9C0E", "nfnmu 0x20 = 0x9BA0", "nfnoe 0x20 = 0x9C4D", "nfoae 0x20 = 0x9C12", "nfob 0x20 = 0x9B76", "nfodi 0x20 = 0x9B92", "nfold 0x20 = 0x9C37", "nfoma 0x20 = 0x9C60", "nfomd 0x20 = 0x9BBD", "nfomr 0x20 = 0x9BAF", "nfonk 0x20 = 0x9BF8", "nfonp 0x20 = 0x9BF0", "nfop 0x20 = 0x9B64", "nfos 0x20 = 0x9B93", "nfp 0x20 = 0x613B", "nfpa 0x20 = 0x9BA8", "nfph 0x20 = 0x9B85", "nfpi 0x20 = 0x9B61", "nfpr 0x20 = 0x9B88", "nfpru 0x20 = 0x9B91", "nfptd 0x20 = 0x9C08", "nfpu 0x20 = 0x9B68", "nfqka 0x20 = 0x9C06", "nfqmb 0x20 = 0x9BD6", "nfqmc 0x20 = 0x9C3F", "nfrrd 0x20 = 0x9C62", "nfrxu 0x20 = 0x9C66", "nfsav 0x20 = 0x9C0B", "nfseg 0x20 = 0x9C39", "nfsh 0x20 = 0x9B5B", "nfsje 0x20 = 0x9BEB", "nfsju 0x20 = 0x9BBF", "nfskr 0x20 = 0x9BB6", "nfsmb 0x20 = 0x9BDE", "nfsmi 0x20 = 0x9C58", "nfsya 0x20 = 0x9C3C", "nftgr 0x20 = 0x9C54", "nftjs 0x20 = 0x9C33", "nftm 0x20 = 0x9B7D", "nftmc 0x20 = 0x9BD5", "nftq 0x20 = 0x9BAE", "nftrg 0x20 = 0x9C79", "nftwa 0x20 = 0x9C3D", "nftwi 0x20 = 0x9C52", "nftwiz 0x20 = 0x9C74", "nftwt 0x20 = 0x9C67", "nftxc 0x20 = 0x9C1C", "nfvid 0x20 = 0x9C73", "nfvvw 0x20 = 0x9BD4", "nfwg 0x20 = 0x9BC9", "nfwl 0x20 = 0x9B7B", "nfwlb 0x20 = 0x9C05", "nfwle 0x20 = 0x9C25", "nfwlv 0x20 = 0x9C5E", "nfwo 0x20 = 0x9B82", "nfwp 0x20 = 0x9C13", "nfyck 0x20 = 0x9BAB", "nfyhn 0x20 = 0x9B67", "nfyhs 0x20 = 0x9B74", "nfyjj 0x20 = 0x9C31", "nfyk 0x20 = 0x9B70", "nfymf 0x20 = 0x9B9B", "nfymo 0x20 = 0x9C41", "nfypk 0x20 = 0x9C2C", "nfypm 0x20 = 0x9C4B", "nfypt 0x20 = 0x9C78", "nfyrb 0x20 = 0x9C1D", "nfyrd 0x20 = 0x9BD9", "nfyrf 0x20 = 0x9BE8", "nfytj 0x20 = 0x9C46", "nfytv 0x20 = 0x9BDC", "nfywm 0x20 = 0x9C63", "nfyx 0x20 = 0x9C6D", "ng 0x20 = 0x4E11", "ngmbc 0x20 = 0x9832", "ngmwm 0x20 = 0x7586", "nhbcr 0x20 = 0x77DE", "nhd 0x20 = 0x67D4", "nhe 0x20 = 0x53CA", "nhio 0x20 = 0x5F27", "nhlii 0x20 = 0x87CA", "nhoks 0x20 = 0x52D9", "nhomn 0x20 = 0x77DC", "nhpm 0x20 = 0x5F24", "nhs 0x20 = 0x4E43", "nhsqf 0x20 = 0x9A2D", "nhta 0x20 = 0x77E0", "ni 0x20 = 0x5915", "nibq 0x20 = 0x752C", "nihaf 0x20 = 0x9D75", "nijmc 0x20 = 0x5924", "nili 0x20 = 0x5F37", "niln 0x20 = 0x5296", "ninh 0x20 = 0x77DB", "nini 0x20 = 0x591A", "ninl 0x20 = 0x9141", "ninn 0x20 = 0x4E88", "niomv 0x20 = 0x98E7", "niq 0x20 = 0x821B", "nir 0x20 = 0x540D", "nisu 0x20 = 0x5917", "niy 0x20 = 0x5916", "niymr 0x20 = 0x8B3D", "niz 0x20 = 0x5F18", "njhaf 0x20 = 0x9CF5", "njlii 0x20 = 0x8768", "nk 0x20 = 0x53C8", "nkbu 0x20 = 0x7780", "nkc 0x20 = 0x936A", "nkd 0x20 = 0x6958", "nkf 0x20 = 0x715E", "nkg 0x20 = 0x5825", "nkhaf 0x20 = 0x9DA9", "nkhg 0x20 = 0x5EF7", "nkhym 0x20 = 0x5EF6", "nki 0x20 = 0x6223", "nklmi 0x20 = 0x8765", "nklq 0x20 = 0x5EFA", "nknl 0x20 = 0x9108", "nksqf 0x20 = 0x9A16", "nktlj 0x20 = 0x97AA", "nkv 0x20 = 0x5A7A", "nl 0x20 = 0x5F15", "nlamh 0x20 = 0x967D", "nlamo 0x20 = 0x9684", "nlav 0x20 = 0x9650", "nlavf 0x20 = 0x96B0", "nlbm 0x20 = 0x963B", "nlbmp 0x20 = 0x96B1", "nlbof 0x20 = 0x969B", "nlbt 0x20 = 0x76C4", "nldhe 0x20 = 0x9642", "nldw 0x20 = 0x9673", "nldwk 0x20 = 0x6576", "nlfhf 0x20 = 0x9699", "nlgce 0x20 = 0x9675", "nlgcg 0x20 = 0x9678", "nlggu 0x20 = 0x96A2", "nlgi 0x20 = 0x9639", "nlgsk 0x20 = 0x969E", "nlgyo 0x20 = 0x9661", "nlhag 0x20 = 0x968D", "nlhbk 0x20 = 0x96A9", "nlhem 0x20 = 0x9686", "nlheq 0x20 = 0x964D", "nlhhj 0x20 = 0x9674", "nlhi 0x20 = 0x9697", "nlhj 0x20 = 0x9621", "nlhjd 0x20 = 0x964E", "nlhjg 0x20 = 0x9672", "nlhjgz 0x20 = 0x9680", "nlhpm 0x20 = 0x963A", "nlhtg 0x20 = 0x965E", "nlhxg 0x20 = 0x9689", "nlihu 0x20 = 0x962D", "nlihv 0x20 = 0x9687", "nljka 0x20 = 0x967C", "nljmu 0x20 = 0x9662", "nljp 0x20 = 0x9640", "nljwj 0x20 = 0x9663", "nlkb 0x20 = 0x964F", "nlkmb 0x20 = 0x968B", "nlkmm 0x20 = 0x9693", "nlkmr 0x20 = 0x966D", "nlkms 0x20 = 0x9653", "nlkoo 0x20 = 0x965D", "nlkooz 0x20 = 0x965C", "nlks 0x20 = 0x961E", "nllmc 0x20 = 0x96A4", "nllmy 0x20 = 0x966B", "nlma 0x20 = 0x964C", "nlmbk 0x20 = 0x967E", "nlmbl 0x20 = 0x9651", "nlmbv 0x20 = 0x964B", "nlme 0x20 = 0x962A", "nlmfb 0x20 = 0x96AC", "nlmmu 0x20 = 0x962E", "nlmnr 0x20 = 0x963F", "nlmob 0x20 = 0x9643", "nlmrb 0x20 = 0x9694", "nlmsu 0x20 = 0x9628", "nlmu 0x20 = 0x9622", "nlmvm 0x20 = 0x9658", "nlnhx 0x20 = 0x9677", "nlnin 0x20 = 0x964A", "nlnj 0x20 = 0x9620", "nlodi 0x20 = 0x9644", "nlomb 0x20 = 0x966F", "nlomd 0x20 = 0x9664", "nlomn 0x20 = 0x9683", "nlomo 0x20 = 0x96AA", "nlon 0x20 = 0x9623", "nloni 0x20 = 0x9670", "nlos 0x20 = 0x963C", "nlpd 0x20 = 0x9624", "nlpfd 0x20 = 0x9671", "nlpou 0x20 = 0x9676", "nlpp 0x20 = 0x9630", "nlppa 0x20 = 0x968E", "nlppg 0x20 = 0x965B", "nlrbc 0x20 = 0x9695", "nlsje 0x20 = 0x966C", "nltct 0x20 = 0x9698", "nltpo 0x20 = 0x968A", "nltt 0x20 = 0x9631", "nltxc 0x20 = 0x9692", "nlumt 0x20 = 0x9691", "nlwlb 0x20 = 0x9685", "nlwmv 0x20 = 0x9688", "nlybp 0x20 = 0x96B4", "nlyhn 0x20 = 0x962C", "nlyhs 0x20 = 0x9632", "nlykb 0x20 = 0x96A8", "nlykm 0x20 = 0x96A1", "nlylh 0x20 = 0x965F", "nlylm 0x20 = 0x962F", "nlyr 0x20 = 0x963D", "nlytj 0x20 = 0x969C", "nlyto 0x20 = 0x96A7", "nlytr 0x20 = 0x966A", "nlyvo 0x20 = 0x9654", "nlyx 0x20 = 0x96AE", "nlz 0x20 = 0x5F14", "nman 0x20 = 0x5F3C", "nmd 0x20 = 0x6A83", "nmfb 0x20 = 0x5F4C", "nmfft 0x20 = 0x5F5D", "nmkiv 0x20 = 0x758F", "nmli 0x20 = 0x8671", "nmlmi 0x20 = 0x8711", "nmnl 0x20 = 0x90D4", "nmp 0x20 = 0x6025", "nmsu 0x20 = 0x5371", "nmvm 0x20 = 0x5F33", "nmwm 0x20 = 0x5F4A", "nn 0x20 = 0x4E86", "nnm 0x20 = 0x5B51", "nnmbc 0x20 = 0x9810", "nnmrb 0x20 = 0x9B3B", "nnnao 0x20 = 0x8C6B", "nno 0x20 = 0x5B53", "nnpr 0x20 = 0x5920", "nnqo 0x20 = 0x627F", "nnsyy 0x20 = 0x7FD7", "nnvvu 0x20 = 0x90FA", "no 0x20 = 0x4E45", "nob 0x20 = 0x80E5", "noc 0x20 = 0x9406", "nodi 0x20 = 0x5F23", "nof 0x20 = 0x7078", "nog 0x20 = 0x589C", "nogz 0x20 = 0x58AC", "nohne 0x20 = 0x7679", "nohto 0x20 = 0x98DB", "nolmi 0x20 = 0x86CB", "nomk 0x20 = 0x7678", "nomrn 0x20 = 0x51F3", "nomrt 0x20 = 0x767B", "nonhe 0x20 = 0x767C", "noz 0x20 = 0x6B20", "npd 0x20 = 0x5F1B", "nq 0x20 = 0x4E2E", "nqd 0x20 = 0x6840", "nqlmi 0x20 = 0x87F9", "nrmln 0x20 = 0x7514", "nrppi 0x20 = 0x6BDA", "nrrj 0x20 = 0x5F48", "nsbun 0x20 = 0x9F10", "nsf 0x20 = 0x5C15", "nshe 0x20 = 0x5903", "nshr 0x20 = 0x5F28", "nsj 0x20 = 0x5F2D", "nsmv 0x20 = 0x5F35", "nsnd 0x20 = 0x5B55", "nsrr 0x20 = 0x5F44", "nti 0x20 = 0x6224", "ntmc 0x20 = 0x5F49", "ntnl 0x20 = 0x9127", "nu 0x20 = 0x4E59", "nubu 0x20 = 0x7722", "nue 0x20 = 0x51FD", "nuez 0x20 = 0x5F22", "nuhaf 0x20 = 0x9D1B", "nuks 0x20 = 0x52C9", "numbc 0x20 = 0x9844", "numbcz 0x20 = 0x9820", "nup 0x20 = 0x6028", "nusqf 0x20 = 0x99CC", "nuv 0x20 = 0x59B4", "nwf 0x20 = 0x9B5A", "nwfa 0x20 = 0x9B6F", "nwlmi 0x20 = 0x87B4", "nwlv 0x20 = 0x5F4B", "nwtq 0x20 = 0x5F43", "nx 0x20 = 0x534D", "nxff 0x20 = 0x71C4", "nxno 0x20 = 0x6B3F", "nxu 0x20 = 0x9F9C", "nyny 0x20 = 0x5F31", "nynyf 0x20 = 0x9DB8", "nyo 0x20 = 0x758B", "nyrf 0x20 = 0x5F36", "nyvi 0x20 = 0x5F26", "o 0x20 = 0x4EBA", "oaa 0x20 = 0x5021", "oahe 0x20 = 0x590D", "oaln 0x20 = 0x528A", "oam 0x20 = 0x4F46", "oamo 0x20 = 0x504D", "oan 0x20 = 0x5011", "oanb 0x20 = 0x50E9", "oanl 0x20 = 0x9136", "oapp 0x20 = 0x5031", "oapv 0x20 = 0x5048", "oasy 0x20 = 0x509D", "oate 0x20 = 0x5124", "oav 0x20 = 0x4F77", "oavf 0x20 = 0x5111", "oawe 0x20 = 0x50C8", "ob 0x20 = 0x5167", "obau 0x20 = 0x4FF7", "obb 0x20 = 0x5017", "obbe 0x20 = 0x50FE", "obch 0x20 = 0x5129", "obcn 0x20 = 0x5074", "obgb 0x20 = 0x5041", "obgr 0x20 = 0x501C", "obhaf 0x20 = 0x9E19", "obhd 0x20 = 0x9FA2", "obhu 0x20 = 0x4F14", "obmc 0x20 = 0x4FF1", "obmr 0x20 = 0x4F97", "obnd 0x20 = 0x4FD8", "obo 0x20 = 0x8089", "obof 0x20 = 0x50BA", "obou 0x20 = 0x509C", "obp 0x20 = 0x618A", "obppa 0x20 = 0x9FA4", "obq 0x20 = 0x4F63", "obuu 0x20 = 0x4FD4", "obv 0x20 = 0x4FC0", "obvk 0x20 = 0x5092", "obz 0x20 = 0x4EF4", "oc 0x20 = 0x4EC8", "ocb 0x20 = 0x4F7E", "oci 0x20 = 0x4F00", "ocor 0x20 = 0x4FD7", "ocru 0x20 = 0x4FBB", "ocsh 0x20 = 0x4EFD", "ocwa 0x20 = 0x50E7", "od 0x20 = 0x4F11", "odc 0x20 = 0x93A5", "odci 0x20 = 0x502F", "oddf 0x20 = 0x50F8", "oddo 0x20 = 0x510A", "odf 0x20 = 0x7172", "odfz 0x20 = 0x70CB", "odg 0x20 = 0x5821", "odhf 0x20 = 0x9D42", "odi 0x20 = 0x4ED8", "odm 0x20 = 0x4F53", "odmq 0x20 = 0x5049", "odog 0x20 = 0x96D3", "odok 0x20 = 0x6558", "odp 0x20 = 0x6086", "odpz 0x20 = 0x6039", "odsyg 0x20 = 0x7CF4", "odu 0x20 = 0x5CF9", "oduu 0x20 = 0x5D5E", "odw 0x20 = 0x756C", "odyj 0x20 = 0x659C", "oe 0x20 = 0x6C46", "of 0x20 = 0x4F19", "ofb 0x20 = 0x4FCF", "ofbc 0x20 = 0x511F", "ofbf 0x20 = 0x513B", "ofbr 0x20 = 0x5018", "ofbw 0x20 = 0x5105", "ofdq 0x20 = 0x50EF", "off 0x20 = 0x5013", "offs 0x20 = 0x50D7", "ofhaf 0x20 = 0x9DE6", "ofhafz 0x20 = 0x9DE1", "ofhu 0x20 = 0x5057", "ofln 0x20 = 0x5281", "ofmln 0x20 = 0x7512", "ofnl 0x20 = 0x9126", "ofou 0x20 = 0x5026", "ofp 0x20 = 0x60A8", "ofq 0x20 = 0x4F34", "ofz 0x20 = 0x5C12", "og 0x20 = 0x4ED5", "ogbuc 0x20 = 0x8CC3", "ogce 0x20 = 0x5030", "ogd 0x20 = 0x96C6", "ogdi 0x20 = 0x4F8D", "ogdz 0x20 = 0x6820", "oge 0x20 = 0x96D9", "ogez 0x20 = 0x96BB", "ogf 0x20 = 0x7126", "ogg 0x20 = 0x4F73", "oggu 0x20 = 0x50E5", "oghaf 0x20 = 0x9DB4", "oghafz 0x20 = 0x9D40", "oghq 0x20 = 0x72A8", "ogi 0x20 = 0x4F49", "ogj 0x20 = 0x96BC", "ogln 0x20 = 0x5249", "oglns 0x20 = 0x96CB", "ogni 0x20 = 0x5114", "ogog 0x20 = 0x96D4", "ogogg 0x20 = 0x96E5", "ogp 0x20 = 0x6041", "ogr 0x20 = 0x552E", "ogrg 0x20 = 0x5113", "ogrr 0x20 = 0x50D6", "ogrz 0x20 = 0x4F76", "ogsk 0x20 = 0x50B2", "ogtj 0x20 = 0x5016", "ogwc 0x20 = 0x5125", "ogyrg 0x20 = 0x8B8E", "ogz 0x20 = 0x96B9", "oh 0x20 = 0x5165", "oha 0x20 = 0x4F2F", "ohag 0x20 = 0x505F", "ohbt 0x20 = 0x4F90", "ohby 0x20 = 0x4F9C", "ohce 0x20 = 0x50BB", "ohdf 0x20 = 0x5062", "ohdi 0x20 = 0x4FEC", "ohdn 0x20 = 0x4FD0", "ohdp 0x20 = 0x50C1", "ohdv 0x20 = 0x502D", "ohdw 0x20 = 0x50E0", "oher 0x20 = 0x4F6B", "ohey 0x20 = 0x4F5F", "ohfp 0x20 = 0x50FD", "ohgu 0x20 = 0x4F81", "ohhj 0x20 = 0x4FFE", "ohi 0x20 = 0x5080", "ohj 0x20 = 0x4EDF", "ohjd 0x20 = 0x4F8F", "ohjg 0x20 = 0x5015", "ohjgz 0x20 = 0x5045", "ohjr 0x20 = 0x4F78", "ohkb 0x20 = 0x50D1", "ohlb 0x20 = 0x504A", "ohml 0x20 = 0x4F12", "ohn 0x20 = 0x4EC9", "ohnb 0x20 = 0x4F69", "ohni 0x20 = 0x5051", "ohoa 0x20 = 0x507A", "ohoi 0x20 = 0x506B", "ohoo 0x20 = 0x50B1", "ohpm 0x20 = 0x4F4E", "ohq 0x20 = 0x4EF6", "ohqi 0x20 = 0x4FC4", "ohqo 0x20 = 0x4F5A", "ohsb 0x20 = 0x504F", "ohsg 0x20 = 0x50F1", "ohsk 0x20 = 0x510C", "ohuc 0x20 = 0x5139", "ohul 0x20 = 0x4EF0", "ohvf 0x20 = 0x4FC2", "ohwp 0x20 = 0x50AF", "ohxu 0x20 = 0x502A", "ohyo 0x20 = 0x4F7B", "ohyu 0x20 = 0x5082", "oi 0x20 = 0x4F10", "oiamh 0x20 = 0x9933", "oiapp 0x20 = 0x991B", "oiapv 0x20 = 0x9932", "oiav 0x20 = 0x4FCD", "oiawe 0x20 = 0x9945", "oibi 0x20 = 0x5085", "oibjj 0x20 = 0x992B", "oibmr 0x20 = 0x9907", "oibv 0x20 = 0x9912", "oice 0x20 = 0x4FCA", "oicyo 0x20 = 0x9929", "oidl 0x20 = 0x9917", "oieee 0x20 = 0x991F", "oifbd 0x20 = 0x9953", "oiff 0x20 = 0x9924", "oigbt 0x20 = 0x9950", "oiggu 0x20 = 0x9952", "oigit 0x20 = 0x9941", "oigrr 0x20 = 0x994E", "oihaf 0x20 = 0x9D12", "oihag 0x20 = 0x992D", "oihbr 0x20 = 0x9909", "oihdv 0x20 = 0x9927", "oihf 0x20 = 0x50B6", "oihhw 0x20 = 0x993E", "oihi 0x20 = 0x993D", "oihk 0x20 = 0x98EB", "oihll 0x20 = 0x98F9", "oihn 0x20 = 0x98E2", "oihon 0x20 = 0x9930", "oihp 0x20 = 0x98E5", "oihpz 0x20 = 0x4F82", "oihq 0x20 = 0x4F94", "oihqi 0x20 = 0x9913", "oihuc 0x20 = 0x9961", "oihxe 0x20 = 0x993F", "oii 0x20 = 0x4FF4", "oiibi 0x20 = 0x993A", "oiice 0x20 = 0x9915", "oiii 0x20 = 0x991E", "oiijb 0x20 = 0x9914", "oiir 0x20 = 0x98F4", "oijbd 0x20 = 0x9911", "oije 0x20 = 0x4FC5", "oijrb 0x20 = 0x992C", "oijrr 0x20 = 0x9928", "oijtc 0x20 = 0x9959", "oik 0x20 = 0x4F0F", "oikf 0x20 = 0x507D", "oikkb 0x20 = 0x991A", "oiku 0x20 = 0x4F18", "oilb 0x20 = 0x50AD", "oilmc 0x20 = 0x994B", "oilmi 0x20 = 0x8755", "oilmm 0x20 = 0x97F1", "oimbc 0x20 = 0x9818", "oimbk 0x20 = 0x992A", "oime 0x20 = 0x98EF", "oimg 0x20 = 0x98EA", "oimjr 0x20 = 0x9902", "oimln 0x20 = 0x74F4", "oimn 0x20 = 0x98E3", "oimrt 0x20 = 0x9916", "oinhx 0x20 = 0x9921", "oino 0x20 = 0x98F2", "oinri 0x20 = 0x995E", "oioi 0x20 = 0x4FEF", "oiok 0x20 = 0x4FDF", "oioks 0x20 = 0x98ED", "oiolb 0x20 = 0x98FE", "oiomd 0x20 = 0x9918", "oiond 0x20 = 0x993C", "oionk 0x20 = 0x9931", "oip 0x20 = 0x4EE3", "oipf 0x20 = 0x5126", "oiph 0x20 = 0x98F6", "oipru 0x20 = 0x98FD", "oipu 0x20 = 0x98E9", "oipz 0x20 = 0x6024", "oir 0x20 = 0x4F41", "oirvc 0x20 = 0x994C", "oisj 0x20 = 0x990C", "oismr 0x20 = 0x98FC", "oisrr 0x20 = 0x9947", "oisyy 0x20 = 0x7FCE", "oitak 0x20 = 0x9943", "oitbo 0x20 = 0x995B", "oitgg 0x20 = 0x9948", "oitk 0x20 = 0x9900", "oitlm 0x20 = 0x9949", "oitt 0x20 = 0x9905", "oiv 0x20 = 0x59C7", "oivio 0x20 = 0x9951", "oivno 0x20 = 0x992F", "oiwmv 0x20 = 0x9935", "oiyck 0x20 = 0x9903", "oiymh 0x20 = 0x9956", "oiyrv 0x20 = 0x995F", "oiywm 0x20 = 0x9958", "oj 0x20 = 0x5348", "ojb 0x20 = 0x4F02", "ojbc 0x20 = 0x508E", "ojbm 0x20 = 0x503C", "ojcm 0x20 = 0x5025", "ojcr 0x20 = 0x509B", "oje 0x20 = 0x4F0E", "ojhp 0x20 = 0x4F98", "ojii 0x20 = 0x50B3", "ojk 0x20 = 0x4ED7", "ojkp 0x20 = 0x4F6C", "ojlk 0x20 = 0x4F7F", "ojln 0x20 = 0x5033", "ojlo 0x20 = 0x5022", "ojmc 0x20 = 0x5110", "ojmf 0x20 = 0x5027", "ojmmr 0x20 = 0x554E", "ojmn 0x20 = 0x4F47", "ojmo 0x20 = 0x50A2", "ojnu 0x20 = 0x5007", "ojp 0x20 = 0x4F57", "ojpn 0x20 = 0x511C", "ojr 0x20 = 0x4F30", "ojrk 0x20 = 0x505A", "ojrr 0x20 = 0x500C", "ojtc 0x20 = 0x50E8", "ojtg 0x20 = 0x50FF", "oju 0x20 = 0x7F36", "ojv 0x20 = 0x4F92", "ojz 0x20 = 0x4EC0", "ok 0x20 = 0x77E2", "okb 0x20 = 0x4F91", "okcf 0x20 = 0x50DA", "okcwa 0x20 = 0x77F0", "okf 0x20 = 0x7102", "okhae 0x20 = 0x702A", "okhaf 0x20 = 0x9D19", "okhdv 0x20 = 0x77EE", "okhg 0x20 = 0x4FC7", "okhk 0x20 = 0x77E8", "okhkb 0x20 = 0x77EF", "okkb 0x20 = 0x4FD9", "okkk 0x20 = 0x50B8", "oklb 0x20 = 0x4F48", "oklv 0x20 = 0x4FFA", "okm 0x20 = 0x4F50", "okmf 0x20 = 0x5037", "okmr 0x20 = 0x501A", "okmrt 0x20 = 0x77ED", "okms 0x20 = 0x4F89", "okn 0x20 = 0x4EC7", "oknl 0x20 = 0x77E7", "oknz 0x20 = 0x4F87", "okog 0x20 = 0x96C9", "okoo 0x20 = 0x4FE0", "okoog 0x20 = 0x77EC", "okp 0x20 = 0x60A0", "okr 0x20 = 0x77E5", "okryo 0x20 = 0x8DFE", "okrz 0x20 = 0x4F51", "oks 0x20 = 0x4EC2", "oksr 0x20 = 0x4F3D", "okss 0x20 = 0x77E9", "oktoe 0x20 = 0x77F1", "okvif 0x20 = 0x7E41", "okwlp 0x20 = 0x77F2", "ol 0x20 = 0x4EF2", "olbk 0x20 = 0x4F52", "olio 0x20 = 0x4F3C", "oll 0x20 = 0x4ECB", "olln 0x20 = 0x4F5B", "ollv 0x20 = 0x50C2", "olmc 0x20 = 0x50D3", "olmt 0x20 = 0x5118", "olmy 0x20 = 0x4FF3", "olnk 0x20 = 0x5019", "olob 0x20 = 0x8129", "olod 0x20 = 0x689D", "olof 0x20 = 0x9BC8", "olofz 0x20 = 0x7D5B", "olofzz 0x20 = 0x5135", "oloh 0x20 = 0x4FEE", "oloj 0x20 = 0x9797", "olok 0x20 = 0x6538", "olokz 0x20 = 0x500F", "oloy 0x20 = 0x7FDB", "olpb 0x20 = 0x505D", "olwl 0x20 = 0x4F38", "olws 0x20 = 0x4FDC", "om 0x20 = 0x4EDD", "oma 0x20 = 0x4F70", "omar 0x20 = 0x5009", "omav 0x20 = 0x98DF", "ombb 0x20 = 0x5112", "ombe 0x20 = 0x512A", "ombl 0x20 = 0x4F95", "ombn 0x20 = 0x4FDE", "ombp 0x20 = 0x6108", "ombt 0x20 = 0x4F96", "omd 0x20 = 0x4F59", "omdm 0x20 = 0x4F0D", "omdmz 0x20 = 0x512E", "omf 0x20 = 0x4F13", "omfj 0x20 = 0x4F3B", "omfm 0x20 = 0x4F3E", "omfr 0x20 = 0x4FD6", "omg 0x20 = 0x4EFB", "omgn 0x20 = 0x5012", "omgz 0x20 = 0x5168", "omig 0x20 = 0x4F84", "omjr 0x20 = 0x820D", "omjx 0x20 = 0x505B", "omlb 0x20 = 0x5006", "omlk 0x20 = 0x4FBF", "omln 0x20 = 0x4F64", "omm 0x20 = 0x4EC1", "ommf 0x20 = 0x4F58", "ommi 0x20 = 0x4F1D", "ommm 0x20 = 0x4EE8", "ommo 0x20 = 0x4F7D", "ommp 0x20 = 0x5137", "ommr 0x20 = 0x4FC9", "ommv 0x20 = 0x4F5E", "ommvz 0x20 = 0x4FB2", "omn 0x20 = 0x4ECA", "omni 0x20 = 0x4EE4", "omnn 0x20 = 0x4F8B", "omnr 0x20 = 0x4F55", "omnz 0x20 = 0x4EC3", "ompm 0x20 = 0x5035", "omr 0x20 = 0x5408", "omrb 0x20 = 0x9FA0", "omrl 0x20 = 0x547D", "omro 0x20 = 0x50C9", "omrw 0x20 = 0x506A", "omtn 0x20 = 0x4F80", "omua 0x20 = 0x50ED", "omvh 0x20 = 0x4F22", "omvm 0x20 = 0x4FD3", "omwa 0x20 = 0x6703", "omwc 0x20 = 0x50F9", "omwd 0x20 = 0x50F3", "omwf 0x20 = 0x50C4", "omwl 0x20 = 0x506D", "omwm 0x20 = 0x50F5", "omwu 0x20 = 0x50CA", "omwv 0x20 = 0x5060", "omyf 0x20 = 0x50BF", "omz 0x20 = 0x4EDC", "on 0x20 = 0x4E5E", "onao 0x20 = 0x50CF", "onau 0x20 = 0x4FDB", "onbc 0x20 = 0x5069", "onbuc 0x20 = 0x8CAA", "onbuu 0x20 = 0x89A6", "oncr 0x20 = 0x510B", "oncsh 0x20 = 0x6C1B", "ond 0x20 = 0x4ED4", "onf 0x20 = 0x4F60", "onfd 0x20 = 0x6C23", "onff 0x20 = 0x6C2E", "onh 0x20 = 0x6C15", "onhaf 0x20 = 0x9CF9", "onhb 0x20 = 0x50EA", "onhe 0x20 = 0x4F0B", "onhey 0x20 = 0x6C21", "onhqu 0x20 = 0x6BF9", "onhs 0x20 = 0x4ECD", "onib 0x20 = 0x4FD1", "onin 0x20 = 0x4F88", "onjru 0x20 = 0x6C2A", "onjv 0x20 = 0x6C28", "onkg 0x20 = 0x4FB9", "onkl 0x20 = 0x9107", "onkq 0x20 = 0x5065", "onl 0x20 = 0x4F04", "onll 0x20 = 0x6C18", "onlll 0x20 = 0x6C1A", "onlln 0x20 = 0x6C1F", "onln 0x20 = 0x5209", "onlwl 0x20 = 0x6C20", "onmcw 0x20 = 0x6C25", "onmcwz 0x20 = 0x9153", "onmk 0x20 = 0x4FAF", "onmlm 0x20 = 0x6C2C", "onmu 0x20 = 0x4F79", "onmvm 0x20 = 0x6C2B", "onmwt 0x20 = 0x76E6", "onnhs 0x20 = 0x6C16", "onnl 0x20 = 0x9103", "onno 0x20 = 0x6B48", "onob 0x20 = 0x6C1D", "onog 0x20 = 0x96C2", "onp 0x20 = 0x5FF5", "onpz 0x20 = 0x5FE5", "onqd 0x20 = 0x5091", "onqmb 0x20 = 0x6C30", "onr 0x20 = 0x542B", "onri 0x20 = 0x5133", "ontq 0x20 = 0x6C27", "onu 0x20 = 0x6C19", "onvne 0x20 = 0x6C2F", "onwk 0x20 = 0x6C24", "onwot 0x20 = 0x6C33", "onyhv 0x20 = 0x887E", "onyvo 0x20 = 0x6C26", "onz 0x20 = 0x6C14", "ooah 0x20 = 0x50B7", "oobg 0x20 = 0x5095", "oobm 0x20 = 0x4FCE", "oobo 0x20 = 0x808F", "oog 0x20 = 0x5750", "ooge 0x20 = 0x590E", "oogf 0x20 = 0x50EC", "oogz 0x20 = 0x5020", "ooj 0x20 = 0x4EF5", "ooll 0x20 = 0x4EF7", "ooln 0x20 = 0x528D", "ooma 0x20 = 0x5108", "oomb 0x20 = 0x502B", "oombc 0x20 = 0x9869", "oomg 0x20 = 0x4F7A", "oomi 0x20 = 0x4F36", "oomn 0x20 = 0x5077", "oomnz 0x20 = 0x4EF1", "oomo 0x20 = 0x5109", "oomr 0x20 = 0x5096", "oomrz 0x20 = 0x4F6E", "oon 0x20 = 0x4EE1", "oonc 0x20 = 0x50CB", "oono 0x20 = 0x6B5B", "ooog 0x20 = 0x4FB3", "oooj 0x20 = 0x5098", "oook 0x20 = 0x6582", "oos 0x20 = 0x4F5C", "oou 0x20 = 0x4F61", "oowy 0x20 = 0x4FAE", "op 0x20 = 0x5316", "opa 0x20 = 0x4F9A", "opbuc 0x20 = 0x8CA8", "opbucz 0x20 = 0x8CB8", "opd 0x20 = 0x4ED6", "opdz 0x20 = 0x67CB", "oph 0x20 = 0x4F56", "ophq 0x20 = 0x726E", "opko 0x20 = 0x5117", "opmc 0x20 = 0x50BE", "opok 0x20 = 0x655C", "opp 0x20 = 0x4EF3", "oppa 0x20 = 0x5055", "opr 0x20 = 0x4F5D", "opt 0x20 = 0x4F33", "optd 0x20 = 0x505E", "opu 0x20 = 0x5CB1", "opuz 0x20 = 0x4F05", "opwgf 0x20 = 0x9EDB", "opyhv 0x20 = 0x888B", "opz 0x20 = 0x4F08", "oq 0x20 = 0x5E74", "oqhk 0x20 = 0x5070", "oqka 0x20 = 0x5046", "oqke 0x20 = 0x50A3", "oqkq 0x20 = 0x4FF8", "oqmb 0x20 = 0x5029", "oqmc 0x20 = 0x50B5", "oqmf 0x20 = 0x5083", "oqmv 0x20 = 0x4FF5", "oqo 0x20 = 0x4F15", "oqoa 0x20 = 0x50E3", "ora 0x20 = 0x667A", "orau 0x20 = 0x4FCB", "orbt 0x20 = 0x76D2", "orc 0x20 = 0x4F3F", "ord 0x20 = 0x4FDD", "ordmr 0x20 = 0x6A16", "orhaf 0x20 = 0x9D3F", "orhafz 0x20 = 0x9D68", "orhafzz 0x20 = 0x9DAC", "orhr 0x20 = 0x4FB6", "orhv 0x20 = 0x4F83", "ori 0x20 = 0x6227", "orijb 0x20 = 0x8216", "orln 0x20 = 0x5275", "ormbc 0x20 = 0x9837", "ormbcz 0x20 = 0x981C", "ornin 0x20 = 0x8212", "ornl 0x20 = 0x90C3", "orno 0x20 = 0x6B31", "orq 0x20 = 0x62FF", "orrj 0x20 = 0x50E4", "orrk 0x20 = 0x513C", "orse 0x20 = 0x5047", "orsj 0x20 = 0x506E", "orsyy 0x20 = 0x7FD5", "ort 0x20 = 0x5F07", "orvc 0x20 = 0x50CE", "orvk 0x20 = 0x4FC1", "orw 0x20 = 0x7563", "orxu 0x20 = 0x50F6", "orybp 0x20 = 0x9F95", "orye 0x20 = 0x6546", "oryo 0x20 = 0x4FC3", "os 0x20 = 0x4E4D", "osav 0x20 = 0x5043", "oshi 0x20 = 0x4EDE", "osj 0x20 = 0x4F74", "osjr 0x20 = 0x5028", "osk 0x20 = 0x4F0A", "osme 0x20 = 0x4FB5", "osmg 0x20 = 0x5053", "osmr 0x20 = 0x4F3A", "osmv 0x20 = 0x5000", "osnd 0x20 = 0x50DD", "oso 0x20 = 0x4F2C", "osp 0x20 = 0x600E", "osqf 0x20 = 0x508C", "osrj 0x20 = 0x50FB", "osrr 0x20 = 0x50B4", "oss 0x20 = 0x4F62", "ossr 0x20 = 0x4FB7", "ostt 0x20 = 0x504B", "osuu 0x20 = 0x5014", "osyh 0x20 = 0x50C7", "ota 0x20 = 0x501F", "otbc 0x20 = 0x500E", "otc 0x20 = 0x4F9B", "otco 0x20 = 0x50DB", "otcw 0x20 = 0x5064", "otdd 0x20 = 0x6A46", "otf 0x20 = 0x7121", "otgi 0x20 = 0x5100", "otgm 0x20 = 0x509E", "othb 0x20 = 0x5099", "otif 0x20 = 0x5130", "otkr 0x20 = 0x504C", "otlk 0x20 = 0x5040", "otlm 0x20 = 0x50C5", "otmc 0x20 = 0x501B", "otmo 0x20 = 0x50D5", "otmv 0x20 = 0x5061", "otniq 0x20 = 0x821E", "otog 0x20 = 0x513A", "otq 0x20 = 0x4F6F", "otrk 0x20 = 0x5106", "otsj 0x20 = 0x5087", "ott 0x20 = 0x4F75", "ottb 0x20 = 0x508B", "otwa 0x20 = 0x50AE", "otwi 0x20 = 0x50D4", "otwn 0x20 = 0x511A", "otwv 0x20 = 0x5102", "otxc 0x20 = 0x5094", "ou 0x20 = 0x4ED9", "oubb 0x20 = 0x50B0", "oudk 0x20 = 0x7F3A", "oudm 0x20 = 0x7F3D", "ouf 0x20 = 0x7F39", "ouhmr 0x20 = 0x7F3F", "oum 0x20 = 0x7F38", "oumb 0x20 = 0x5073", "oumwj 0x20 = 0x7F48", "ouog 0x20 = 0x50AC", "ouon 0x20 = 0x4FBA", "outrg 0x20 = 0x7F50", "outt 0x20 = 0x7F3E", "ouypd 0x20 = 0x7F45", "ouypt 0x20 = 0x7F4F", "ouz 0x20 = 0x4EDA", "ouzz 0x20 = 0x5C73", "ovr 0x20 = 0x4F9E", "ovsl 0x20 = 0x5378", "ovvu 0x20 = 0x5120", "ow 0x20 = 0x4F43", "owg 0x20 = 0x4FDA", "owjr 0x20 = 0x500B", "owlb 0x20 = 0x5076", "owlg 0x20 = 0x5138", "owlv 0x20 = 0x5107", "owmv 0x20 = 0x504E", "owp 0x20 = 0x5072", "owr 0x20 = 0x4F6A", "owwf 0x20 = 0x513D", "owww 0x20 = 0x5121", "owyi 0x20 = 0x6BCF", "owyta 0x20 = 0x97FD", "oy 0x20 = 0x4EC6", "oyaj 0x20 = 0x502C", "oybc 0x20 = 0x5075", "oybp 0x20 = 0x5131", "oybs 0x20 = 0x508D", "oyck 0x20 = 0x4F7C", "oydu 0x20 = 0x512D", "oyfe 0x20 = 0x4FF6", "oyfu 0x20 = 0x50E6", "oyg 0x20 = 0x4F4F", "oyhn 0x20 = 0x4F09", "oyhs 0x20 = 0x4EFF", "oyhv 0x20 = 0x4F9D", "oyjj 0x20 = 0x50C6", "oykiv 0x20 = 0x6BD3", "oykk 0x20 = 0x509A", "oylm 0x20 = 0x4F01", "oym 0x20 = 0x4EE9", "oymp 0x20 = 0x4F4C", "oymr 0x20 = 0x4FE1", "oymy 0x20 = 0x4F67", "oyno 0x20 = 0x6B59", "oyoj 0x20 = 0x5005", "oyok 0x20 = 0x654F", "oypd 0x20 = 0x5068", "oypp 0x20 = 0x5122", "oyr 0x20 = 0x4F54", "oyra 0x20 = 0x5132", "oyrf 0x20 = 0x501E", "oyrn 0x20 = 0x505C", "oyrv 0x20 = 0x5134", "oyrvz 0x20 = 0x506F", "oysk 0x20 = 0x5023", "oyt 0x20 = 0x4F4D", "oyta 0x20 = 0x5063", "oytg 0x20 = 0x50EE", "oytj 0x20 = 0x50BD", "oytp 0x20 = 0x5104", "oytr 0x20 = 0x500D", "oyub 0x20 = 0x79BD", "oyvi 0x20 = 0x4F2D", "oyvo 0x20 = 0x4F85", "oywm 0x20 = 0x5103", "oyx 0x20 = 0x5115", "p 0x20 = 0x5FC3", "pa 0x20 = 0x65E8", "pahaf 0x20 = 0x9D9B", "pahm 0x20 = 0x60FA", "paiu 0x20 = 0x6168", "paks 0x20 = 0x52D3", "pam 0x20 = 0x601B", "pamh 0x20 = 0x6113", "pamj 0x20 = 0x608D", "pamo 0x20 = 0x60FF", "panb 0x20 = 0x61AA", "pank 0x20 = 0x61AB", "panl 0x20 = 0x90C7", "paph 0x20 = 0x60D5", "papp 0x20 = 0x60C3", "papv 0x20 = 0x6112", "pate 0x20 = 0x61EA", "pav 0x20 = 0x6068", "pawe 0x20 = 0x6162", "payf 0x20 = 0x61AC", "paz 0x20 = 0x65EC", "pbac 0x20 = 0x614F", "pbbb 0x20 = 0x6132", "pbcn 0x20 = 0x60FB", "pbg 0x20 = 0x58AF", "pbgr 0x20 = 0x60C6", "pbhx 0x20 = 0x6146", "pbjj 0x20 = 0x60F2", "pbm 0x20 = 0x601A", "pbme 0x20 = 0x610B", "pbmr 0x20 = 0x606B", "pbou 0x20 = 0x612E", "pbtv 0x20 = 0x60D8", "pbue 0x20 = 0x6204", "pbug 0x20 = 0x61FC", "pbvk 0x20 = 0x6140", "pc 0x20 = 0x60CD", "pci 0x20 = 0x5FEA", "pcks 0x20 = 0x52E9", "pcnh 0x20 = 0x608C", "pcru 0x20 = 0x6085", "pcwa 0x20 = 0x618E", "pd 0x20 = 0x4E5F", "pdd 0x20 = 0x60CF", "pdhaf 0x20 = 0x9D74", "pdi 0x20 = 0x5FD6", "pdk 0x20 = 0x5FEB", "pdl 0x20 = 0x609A", "pdlc 0x20 = 0x61F6", "pdmbc 0x20 = 0x7A4E", "peee 0x20 = 0x60D9", "peg 0x20 = 0x602A", "peii 0x20 = 0x6145", "pembc 0x20 = 0x6F41", "pfb 0x20 = 0x6084", "pfbf 0x20 = 0x6203", "pfbr 0x20 = 0x60DD", "pfd 0x20 = 0x530A", "pfdq 0x20 = 0x6190", "pff 0x20 = 0x60D4", "pfmbc 0x20 = 0x9848", "pfmbcz 0x20 = 0x71B2", "pfmu 0x20 = 0x604D", "pfou 0x20 = 0x60D3", "pfq 0x20 = 0x6011", "pgdi 0x20 = 0x6043", "pggu 0x20 = 0x61A2", "pgi 0x20 = 0x602F", "pgni 0x20 = 0x61E4", "pgr 0x20 = 0x6044", "pgth 0x20 = 0x6189", "pgtj 0x20 = 0x60BB", "ph 0x20 = 0x5FC5", "pha 0x20 = 0x6015", "phag 0x20 = 0x60F6", "phaz 0x20 = 0x66F6", "phbk 0x20 = 0x61CA", "phbq 0x20 = 0x752E", "phbr 0x20 = 0x6066", "phbt 0x20 = 0x6064", "phbu 0x20 = 0x5FF1", "phbuu 0x20 = 0x8995", "phcn 0x20 = 0x61F0", "phdb 0x20 = 0x61A1", "phdd 0x20 = 0x60B8", "phdf 0x20 = 0x6100", "pher 0x20 = 0x606A", "phgr 0x20 = 0x608E", "phgs 0x20 = 0x615F", "phh 0x20 = 0x52FF", "phhn 0x20 = 0x5311", "phi 0x20 = 0x6127", "phj 0x20 = 0x5FCF", "phkb 0x20 = 0x618D", "phlc 0x20 = 0x61EB", "phln 0x20 = 0x520E", "phml 0x20 = 0x5FFB", "phnl 0x20 = 0x90B2", "php 0x20 = 0x5FFD", "phpa 0x20 = 0x60DB", "phqm 0x20 = 0x6027", "phqo 0x20 = 0x6022", "phsb 0x20 = 0x60FC", "phsk 0x20 = 0x60B7", "phskz 0x20 = 0x61BF", "phup 0x20 = 0x5FEF", "phyhv 0x20 = 0x8883", "phyo 0x20 = 0x604C", "pi 0x20 = 0x52FE", "piav 0x20 = 0x60A2", "pice 0x20 = 0x609B", "pid 0x20 = 0x6035", "piih 0x20 = 0x6158", "pijb 0x20 = 0x530D", "pilb 0x20 = 0x6175", "pile 0x20 = 0x6177", "pir 0x20 = 0x6021", "pirp 0x20 = 0x61BE", "pit 0x20 = 0x6088", "pitc 0x20 = 0x61ED", "piu 0x20 = 0x6034", "piyr 0x20 = 0x60E6", "piz 0x20 = 0x52FA", "pjbc 0x20 = 0x614E", "pjbd 0x20 = 0x6096", "pjbo 0x20 = 0x61E5", "pjcm 0x20 = 0x60BE", "pje 0x20 = 0x5FEE", "pjhaf 0x20 = 0x9D07", "pjhr 0x20 = 0x6118", "pjii 0x20 = 0x6171", "pjip 0x20 = 0x6193", "pjjl 0x20 = 0x615A", "pjkp 0x20 = 0x6045", "pjlv 0x20 = 0x60BD", "pjmf 0x20 = 0x60B0", "pjmm 0x20 = 0x6103", "pjnu 0x20 = 0x60CB", "pjpn 0x20 = 0x61E7", "pjr 0x20 = 0x6019", "pjrr 0x20 = 0x60BA", "pjsqf 0x20 = 0x99C2", "pjtc 0x20 = 0x61A4", "pk 0x20 = 0x5FD5", "pkcf 0x20 = 0x61AD", "pkf 0x20 = 0x6062", "pkk 0x20 = 0x5306", "pkkb 0x20 = 0x6095", "pkkk 0x20 = 0x6161", "pklb 0x20 = 0x6016", "pklq 0x20 = 0x8084", "pklv 0x20 = 0x530E", "pkmb 0x20 = 0x60F0", "pkn 0x20 = 0x605E", "pknio 0x20 = 0x7591", "pknz 0x20 = 0x52FC", "pksb 0x20 = 0x6136", "pl 0x20 = 0x5FE1", "plbk 0x20 = 0x600F", "plln 0x20 = 0x602B", "pllv 0x20 = 0x617A", "plmc 0x20 = 0x6192", "plmy 0x20 = 0x60B1", "plpc 0x20 = 0x61FB", "plw 0x20 = 0x601E", "pmak 0x20 = 0x61E8", "pmbb 0x20 = 0x61E6", "pmbc 0x20 = 0x9803", "pmbcz 0x20 = 0x6129", "pmbe 0x20 = 0x61EE", "pmcw 0x20 = 0x6053", "pmf 0x20 = 0x6000", "pmfj 0x20 = 0x6026", "pmfjz 0x20 = 0x5309", "pmfm 0x20 = 0x600C", "pmjr 0x20 = 0x606C", "pmkp 0x20 = 0x60BF", "pmm 0x20 = 0x52FB", "pmmr 0x20 = 0x609F", "pmmu 0x20 = 0x5FE8", "pmnm 0x20 = 0x6046", "pmob 0x20 = 0x6032", "pmrw 0x20 = 0x5310", "pmrwz 0x20 = 0x610A", "pmua 0x20 = 0x61AF", "pmwd 0x20 = 0x6144", "pmwdz 0x20 = 0x619F", "pmwf 0x20 = 0x6153", "pmwj 0x20 = 0x619B", "pmwl 0x20 = 0x6110", "pmym 0x20 = 0x6014", "pn 0x20 = 0x4E5C", "pnau 0x20 = 0x6097", "pnbq 0x20 = 0x61C8", "pncr 0x20 = 0x61BA", "png 0x20 = 0x5FF8", "pnhb 0x20 = 0x61B0", "pnhe 0x20 = 0x5FE3", "pnib 0x20 = 0x6080", "pnin 0x20 = 0x6040", "pno 0x20 = 0x5FFA", "pnyi 0x20 = 0x60E4", "poae 0x20 = 0x610E", "pod 0x20 = 0x6058", "pog 0x20 = 0x60DF", "poge 0x20 = 0x612F", "pogf 0x20 = 0x6194", "poim 0x20 = 0x61FA", "poj 0x20 = 0x5FE4", "poju 0x20 = 0x530B", "pomb 0x20 = 0x60C0", "pomd 0x20 = 0x6087", "pomg 0x20 = 0x606E", "pomi 0x20 = 0x601C", "pomn 0x20 = 0x6109", "pomnz 0x20 = 0x5FF4", "pomo 0x20 = 0x61B8", "pomr 0x20 = 0x6070", "pomrz 0x20 = 0x6134", "pon 0x20 = 0x5FD4", "ponbg 0x20 = 0x89FA", "pond 0x20 = 0x613E", "pos 0x20 = 0x600D", "potf 0x20 = 0x61AE", "powy 0x20 = 0x6094", "pp 0x20 = 0x6BD4", "ppa 0x20 = 0x6042", "ppad 0x20 = 0x60F8", "ppaz 0x20 = 0x6049", "ppfd 0x20 = 0x7C8A", "ppg 0x20 = 0x5752", "pph 0x20 = 0x602D", "ppha 0x20 = 0x7686", "pphp 0x20 = 0x60DA", "pphqu 0x20 = 0x6BDE", "ppp 0x20 = 0x60E2", "pppd 0x20 = 0x6A64", "pppf 0x20 = 0x7E60", "ppph 0x20 = 0x6BD6", "ppr 0x20 = 0x6010", "ppru 0x20 = 0x6009", "pptd 0x20 = 0x60F5", "ppu 0x20 = 0x5FF3", "ppuk 0x20 = 0x605F", "pqmb 0x20 = 0x60C5", "pqmf 0x20 = 0x612B", "pr 0x20 = 0x53E5", "prau 0x20 = 0x6092", "prb 0x20 = 0x6081", "prhaf 0x20 = 0x9D1D", "prhg 0x20 = 0x609C", "prhml 0x20 = 0x65AA", "prhu 0x20 = 0x6033", "prks 0x20 = 0x52AC", "prno 0x20 = 0x6B28", "prog 0x20 = 0x96CA", "prrd 0x20 = 0x61C6", "prrj 0x20 = 0x619A", "prrs 0x20 = 0x6115", "pru 0x20 = 0x5305", "prup 0x20 = 0x600B", "prxu 0x20 = 0x61B4", "psav 0x20 = 0x611D", "pseg 0x20 = 0x6173", "psh 0x20 = 0x5207", "pshr 0x20 = 0x600A", "pshz 0x20 = 0x5FC9", "psjj 0x20 = 0x61FE", "psko 0x20 = 0x611C", "psmg 0x20 = 0x6047", "psmi 0x20 = 0x61B3", "psmv 0x20 = 0x60B5", "psp 0x20 = 0x6029", "psrr 0x20 = 0x616A", "psya 0x20 = 0x6174", "psyh 0x20 = 0x6180", "pt 0x20 = 0x4E16", "pta 0x20 = 0x60DC", "ptak 0x20 = 0x6154", "ptbo 0x20 = 0x61DE", "ptbuc 0x20 = 0x8CB0", "ptgv 0x20 = 0x61E9", "pthg 0x20 = 0x61C2", "ptlb 0x20 = 0x6172", "ptlj 0x20 = 0x6105", "ptlm 0x20 = 0x616C", "ptmv 0x20 = 0x6116", "ptor 0x20 = 0x5312", "ptrg 0x20 = 0x61FD", "ptt 0x20 = 0x6072", "ptwa 0x20 = 0x6152", "ptwi 0x20 = 0x61F1", "ptwu 0x20 = 0x61F5", "ptxc 0x20 = 0x614A", "ptyv 0x20 = 0x614C", "pu 0x20 = 0x5C6F", "puce 0x20 = 0x60FE", "pudhe 0x20 = 0x76BA", "puf 0x20 = 0x70B0", "puhaf 0x20 = 0x9DB5", "puk 0x20 = 0x5308", "pukz 0x20 = 0x5FF7", "puln 0x20 = 0x5228", "pumb 0x20 = 0x60F4", "pumbc 0x20 = 0x9813", "pumt 0x20 = 0x6137", "punl 0x20 = 0x9112", "puog 0x20 = 0x96DB", "puogz 0x20 = 0x615B", "pupu 0x20 = 0x82BB", "pve 0x20 = 0x6013", "pvis 0x20 = 0x602E", "pvvw 0x20 = 0x60F1", "pw 0x20 = 0x7538", "pwc 0x20 = 0x602C", "pwd 0x20 = 0x6083", "pwdz 0x20 = 0x60C8", "pwg 0x20 = 0x609D", "pwim 0x20 = 0x6156", "pwjc 0x20 = 0x6163", "pwlj 0x20 = 0x61CC", "pwls 0x20 = 0x6123", "pwlv 0x20 = 0x61C1", "pwmv 0x20 = 0x6104", "pwot 0x20 = 0x614D", "pwr 0x20 = 0x605B", "pyaj 0x20 = 0x60BC", "pyck 0x20 = 0x6054", "pyfu 0x20 = 0x61B1", "pyhr 0x20 = 0x6165", "pymr 0x20 = 0x8A07", "pyoj 0x20 = 0x60B4", "pypo 0x20 = 0x61C5", "pyr 0x20 = 0x6017", "pyrd 0x20 = 0x60C7", "pyrf 0x20 = 0x60CA", "pyrv 0x20 = 0x61F9", "pyta 0x20 = 0x6114", "pytg 0x20 = 0x61A7", "pytj 0x20 = 0x615E", "pytp 0x20 = 0x61B6", "pyv 0x20 = 0x5FD9", "pyvw 0x20 = 0x6149", "pywd 0x20 = 0x61CD", "pywv 0x20 = 0x61F7", "pyx 0x20 = 0x61E0", "pyy 0x20 = 0x5FED", "q 0x20 = 0x624B", "qa 0x20 = 0x6287", "qag 0x20 = 0x634F", "qail 0x20 = 0x63E4", "qaiu 0x20 = 0x6461", "qalii 0x20 = 0x8822", "qamh 0x20 = 0x63DA", "qamj 0x20 = 0x634D", "qamo 0x20 = 0x63D0", "qan 0x20 = 0x636B", "qanb 0x20 = 0x648A", "qang 0x20 = 0x648B", "qanr 0x20 = 0x64F1", "qanw 0x20 = 0x6514", "qap 0x20 = 0x60F7", "qapp 0x20 = 0x638D", "qapv 0x20 = 0x63ED", "qase 0x20 = 0x64AE", "qasy 0x20 = 0x6428", "qau 0x20 = 0x628A", "qav 0x20 = 0x62EB", "qavk 0x20 = 0x6351", "qb 0x20 = 0x6288", "qbb 0x20 = 0x63A4", "qbbb 0x20 = 0x6430", "qbbe 0x20 = 0x6388", "qbbsd 0x20 = 0x975C", "qbbuu 0x20 = 0x975A", "qbcd 0x20 = 0x63A2", "qbcv 0x20 = 0x6516", "qbd 0x20 = 0x63A1", "qbdi 0x20 = 0x634B", "qbhaf 0x20 = 0x9D84", "qbhx 0x20 = 0x642F", "qbjj 0x20 = 0x63EE", "qbjmo 0x20 = 0x975B", "qbkf 0x20 = 0x649A", "qbm 0x20 = 0x62AF", "qbme 0x20 = 0x63F4", "qbmr 0x20 = 0x630F", "qbnau 0x20 = 0x9758", "qbnd 0x20 = 0x634A", "qbnl 0x20 = 0x90EC", "qbou 0x20 = 0x6416", "qbsd 0x20 = 0x6399", "qbue 0x20 = 0x652B", "qbuu 0x20 = 0x6338", "qbv 0x20 = 0x633C", "qc 0x20 = 0x6252", "qchq 0x20 = 0x63B0", "qcks 0x20 = 0x52E3", "qcno 0x20 = 0x64B3", "qcru 0x20 = 0x6329", "qcsh 0x20 = 0x626E", "qd 0x20 = 0x8012", "qdau 0x20 = 0x8019", "qdb 0x20 = 0x62FA", "qdbms 0x20 = 0x8021", "qdfh 0x20 = 0x8016", "qdhe 0x20 = 0x62AB", "qdhqu 0x20 = 0x8017", "qdir 0x20 = 0x801B", "qdj 0x20 = 0x62B9", "qdk 0x20 = 0x6289", "qdksr 0x20 = 0x801E", "qdllv 0x20 = 0x802C", "qdmbc 0x20 = 0x981B", "qdmbe 0x20 = 0x8030", "qdmmi 0x20 = 0x8018", "qdmvi 0x20 = 0x8028", "qdnd 0x20 = 0x8014", "qdrlr 0x20 = 0x801C", "qdss 0x20 = 0x801F", "qdta 0x20 = 0x8024", "qdtt 0x20 = 0x8015", "qdttb 0x20 = 0x8029", "qdwf 0x20 = 0x63C0", "qdwlb 0x20 = 0x8026", "qdybs 0x20 = 0x802A", "qeed 0x20 = 0x6421", "qeee 0x20 = 0x6387", "qei 0x20 = 0x6260", "qeii 0x20 = 0x6414", "qfb 0x20 = 0x634E", "qfbf 0x20 = 0x6529", "qfbh 0x20 = 0x6490", "qfbk 0x20 = 0x6487", "qfbw 0x20 = 0x64CB", "qff 0x20 = 0x639E", "qffs 0x20 = 0x6488", "qfh 0x20 = 0x6284", "qfou 0x20 = 0x6372", "qfq 0x20 = 0x62CC", "qgb 0x20 = 0x62A9", "qgdi 0x20 = 0x6301", "qgg 0x20 = 0x6302", "qggu 0x20 = 0x6493", "qggy 0x20 = 0x639B", "qgi 0x20 = 0x62BE", "qgit 0x20 = 0x6415", "qglc 0x20 = 0x6347", "qgni 0x20 = 0x64E3", "qgr 0x20 = 0x62EE", "qgrc 0x20 = 0x64F7", "qha 0x20 = 0x62CD", "qhag 0x20 = 0x63D8", "qhal 0x20 = 0x64F3", "qhau 0x20 = 0x6417", "qhbf 0x20 = 0x6525", "qhbk 0x20 = 0x64D9", "qhbu 0x20 = 0x652A", "qhbuz 0x20 = 0x628C", "qhd 0x20 = 0x6814", "qhdf 0x20 = 0x63EA", "qhdv 0x20 = 0x637C", "qhdw 0x20 = 0x64AD", "qhe 0x20 = 0x6D2F", "qhej 0x20 = 0x6340", "qher 0x20 = 0x630C", "qhgr 0x20 = 0x6341", "qhhj 0x20 = 0x636D", "qhhv 0x20 = 0x6300", "qhio 0x20 = 0x62B8", "qhj 0x20 = 0x6266", "qhjg 0x20 = 0x6376", "qhjgz 0x20 = 0x63F0", "qhjr 0x20 = 0x62EC", "qhju 0x20 = 0x63D7", "qhk 0x20 = 0x5951", "qhkb 0x20 = 0x649F", "qhkz 0x20 = 0x6277", "qhlmi 0x20 = 0x86EA", "qhlo 0x20 = 0x6293", "qhloz 0x20 = 0x6380", "qhml 0x20 = 0x6298", "qhmy 0x20 = 0x62C6", "qhnbg 0x20 = 0x89E2", "qhne 0x20 = 0x6295", "qhoa 0x20 = 0x63DD", "qhoo 0x20 = 0x6450", "qhor 0x20 = 0x6498", "qhp 0x20 = 0x6258", "qhpm 0x20 = 0x62B5", "qhpz 0x20 = 0x605D", "qhq 0x20 = 0x6308", "qhqo 0x20 = 0x62B6", "qhrf 0x20 = 0x6440", "qhsb 0x20 = 0x63AE", "qhsbz 0x20 = 0x63D9", "qhsk 0x20 = 0x6369", "qhskz 0x20 = 0x64BD", "qhsy 0x20 = 0x6427", "qhuc 0x20 = 0x6522", "qhul 0x20 = 0x6291", "qhulz 0x20 = 0x64E4", "qhuo 0x20 = 0x64E8", "qhup 0x20 = 0x627A", "qhuu 0x20 = 0x64AC", "qhvif 0x20 = 0x7D5C", "qhwp 0x20 = 0x6460", "qhxe 0x20 = 0x641C", "qhxu 0x20 = 0x639C", "qhye 0x20 = 0x642C", "qhymu 0x20 = 0x9F67", "qhyo 0x20 = 0x6311", "qhyu 0x20 = 0x640B", "qi 0x20 = 0x627E", "qibi 0x20 = 0x640F", "qice 0x20 = 0x6358", "qidy 0x20 = 0x6520", "qihf 0x20 = 0x6423", "qihfz 0x20 = 0x6475", "qihu 0x20 = 0x6281", "qiih 0x20 = 0x647B", "qijb 0x20 = 0x6355", "qije 0x20 = 0x6344", "qikf 0x20 = 0x649D", "qikk 0x20 = 0x62D4", "qiku 0x20 = 0x6270", "qilr 0x20 = 0x642A", "qiok 0x20 = 0x6328", "qipd 0x20 = 0x6517", "qipm 0x20 = 0x62ED", "qir 0x20 = 0x62AC", "qirm 0x20 = 0x639D", "qirp 0x20 = 0x64BC", "qit 0x20 = 0x62DA", "qitc 0x20 = 0x64F4", "qitf 0x20 = 0x646D", "qixp 0x20 = 0x645D", "qiyr 0x20 = 0x6382", "qj 0x20 = 0x4E30", "qjbc 0x20 = 0x6437", "qjbd 0x20 = 0x632C", "qjbf 0x20 = 0x64E6", "qjbj 0x20 = 0x63C7", "qjbv 0x20 = 0x652E", "qjcm 0x20 = 0x63A7", "qjcn 0x20 = 0x6316", "qjcs 0x20 = 0x643E", "qjcu 0x20 = 0x651B", "qje 0x20 = 0x6280", "qjhp 0x20 = 0x6313", "qjhu 0x20 = 0x62AD", "qjii 0x20 = 0x6476", "qjji 0x20 = 0x64A0", "qjjj 0x20 = 0x641F", "qjjl 0x20 = 0x6472", "qjk 0x20 = 0x6259", "qjks 0x20 = 0x62F7", "qjlo 0x20 = 0x6377", "qjmc 0x20 = 0x64EF", "qjmm 0x20 = 0x63CE", "qjmo 0x20 = 0x639F", "qjmr 0x20 = 0x7809", "qjmu 0x20 = 0x6356", "qjnl 0x20 = 0x90A6", "qjnlz 0x20 = 0x913B", "qjnu 0x20 = 0x6365", "qjoa 0x20 = 0x644D", "qjpa 0x20 = 0x6418", "qjpn 0x20 = 0x64F0", "qjqp 0x20 = 0x6507", "qjqr 0x20 = 0x6433", "qjsm 0x20 = 0x5F57", "qjsmp 0x20 = 0x6167", "qjto 0x20 = 0x6513", "qjtv 0x20 = 0x6510", "qjv 0x20 = 0x6309", "qjwj 0x20 = 0x6359", "qka 0x20 = 0x6625", "qkbk 0x20 = 0x64A4", "qkcf 0x20 = 0x64A9", "qkde 0x20 = 0x644B", "qke 0x20 = 0x6CF0", "qkf 0x20 = 0x62FB", "qkhd 0x20 = 0x79E6", "qkhx 0x20 = 0x8202", "qkja 0x20 = 0x64A6", "qklb 0x20 = 0x62AA", "qkld 0x20 = 0x62F5", "qklv 0x20 = 0x63A9", "qkmf 0x20 = 0x637A", "qkmk 0x20 = 0x594F", "qkmr 0x20 = 0x638E", "qkms 0x20 = 0x630E", "qkoo 0x20 = 0x633E", "qkq 0x20 = 0x5949", "qks 0x20 = 0x6250", "qksb 0x20 = 0x641A", "qkso 0x20 = 0x6466", "qkss 0x20 = 0x62F9", "qkus 0x20 = 0x62CB", "qla 0x20 = 0x6662", "qlbk 0x20 = 0x62B0", "qlc 0x20 = 0x92B4", "qld 0x20 = 0x688A", "qle 0x20 = 0x6378", "qlf 0x20 = 0x710E", "qllmi 0x20 = 0x8707", "qlln 0x20 = 0x62C2", "qllv 0x20 = 0x645F", "qlmc 0x20 = 0x648C", "qlmr 0x20 = 0x7869", "qlmy 0x20 = 0x6392", "qlp 0x20 = 0x608A", "qlpb 0x20 = 0x63F9", "qlr 0x20 = 0x54F2", "qlryo 0x20 = 0x8E05", "qlvk 0x20 = 0x64FB", "qlw 0x20 = 0x62BD", "qlwl 0x20 = 0x62BB", "qlwp 0x20 = 0x62FD", "qlyhv 0x20 = 0x88DA", "qlymr 0x20 = 0x8A93", "qm 0x20 = 0x625B", "qmak 0x20 = 0x64EB", "qmb 0x20 = 0x9752", "qmbb 0x20 = 0x64E9", "qmbc 0x20 = 0x6443", "qmbe 0x20 = 0x64FE", "qmbg 0x20 = 0x6509", "qmbs 0x20 = 0x6474", "qmbuc 0x20 = 0x8CAC", "qmbw 0x20 = 0x64C2", "qmd 0x20 = 0x625C", "qme 0x20 = 0x6273", "qmf 0x20 = 0x6294", "qmfj 0x20 = 0x62A8", "qmgg 0x20 = 0x6371", "qmgn 0x20 = 0x636F", "qmia 0x20 = 0x6422", "qmig 0x20 = 0x6303", "qmj 0x20 = 0x625E", "qmjk 0x20 = 0x6496", "qmjx 0x20 = 0x63D2", "qmkp 0x20 = 0x63AD", "qmlk 0x20 = 0x632D", "qmlm 0x20 = 0x6397", "qmmi 0x20 = 0x628E", "qmmp 0x20 = 0x6526", "qmmr 0x20 = 0x6342", "qmmu 0x20 = 0x628F", "qmmv 0x20 = 0x632F", "qmn 0x20 = 0x6253", "qmr 0x20 = 0x62D3", "qmrb 0x20 = 0x6439", "qmrw 0x20 = 0x63CA", "qmsu 0x20 = 0x627C", "qmto 0x20 = 0x6485", "qmu 0x20 = 0x6264", "qmv 0x20 = 0x8868", "qmvif 0x20 = 0x7D20", "qmvm 0x20 = 0x6333", "qmwd 0x20 = 0x642E", "qmwf 0x20 = 0x647D", "qmwj 0x20 = 0x64A2", "qmwjf 0x20 = 0x7E9B", "qmwyi 0x20 = 0x6BD2", "qnau 0x20 = 0x633D", "qnbg 0x20 = 0x6354", "qnbk 0x20 = 0x63DB", "qncr 0x20 = 0x64D4", "qndf 0x20 = 0x640E", "qnem 0x20 = 0x62EF", "qng 0x20 = 0x626D", "qnhd 0x20 = 0x63C9", "qnhe 0x20 = 0x6271", "qnhs 0x20 = 0x6254", "qnhx 0x20 = 0x6390", "qnib 0x20 = 0x6345", "qnin 0x20 = 0x6292", "qninz 0x20 = 0x62F8", "qnkg 0x20 = 0x633A", "qnkm 0x20 = 0x633B", "qnkq 0x20 = 0x63F5", "qnlb 0x20 = 0x64B1", "qno 0x20 = 0x627B", "qnob 0x20 = 0x63DF", "qnoe 0x20 = 0x64A5", "qnok 0x20 = 0x63C6", "qnot 0x20 = 0x649C", "qnri 0x20 = 0x6519", "qnwa 0x20 = 0x64FC", "qnyy 0x20 = 0x6426", "qo 0x20 = 0x592B", "qoa 0x20 = 0x66FF", "qoah 0x20 = 0x6465", "qobg 0x20 = 0x6409", "qobuu 0x20 = 0x898F", "qodi 0x20 = 0x62CA", "qog 0x20 = 0x63A8", "qohaf 0x20 = 0x9CFA", "qohh 0x20 = 0x62AE", "qoim 0x20 = 0x6515", "qojwj 0x20 = 0x8F26", "qoll 0x20 = 0x6274", "qomb 0x20 = 0x6384", "qomd 0x20 = 0x6348", "qomg 0x20 = 0x62F4", "qomgz 0x20 = 0x62F0", "qomi 0x20 = 0x62CE", "qomn 0x20 = 0x63C4", "qomnz 0x20 = 0x6272", "qomo 0x20 = 0x64BF", "qomr 0x20 = 0x62FE", "qomrz 0x20 = 0x6368", "qomrzz 0x20 = 0x6436", "qon 0x20 = 0x6262", "qonl 0x20 = 0x909E", "qonp 0x20 = 0x637B", "qoog 0x20 = 0x632B", "qopd 0x20 = 0x62D6", "qorq 0x20 = 0x643F", "qort 0x20 = 0x63DC", "qotf 0x20 = 0x64AB", "qowy 0x20 = 0x6334", "qoya 0x20 = 0x647F", "qoyb 0x20 = 0x64D2", "qpa 0x20 = 0x6307", "qpd 0x20 = 0x6261", "qpfd 0x20 = 0x63AC", "qpi 0x20 = 0x625A", "qpko 0x20 = 0x64EC", "qpmm 0x20 = 0x63EF", "qpou 0x20 = 0x638F", "qpp 0x20 = 0x6279", "qppa 0x20 = 0x63E9", "qpr 0x20 = 0x62D8", "qpru 0x20 = 0x62B1", "qpt 0x20 = 0x62B4", "qptd 0x20 = 0x63F2", "qpu 0x20 = 0x627D", "qpuu 0x20 = 0x640A", "qpyr 0x20 = 0x63C8", "qqhk 0x20 = 0x63F3", "qqkk 0x20 = 0x63CD", "qqkq 0x20 = 0x6367", "qqmb 0x20 = 0x6385", "qqo 0x20 = 0x6276", "qqoj 0x20 = 0x6506", "qqou 0x20 = 0x646B", "qqq 0x20 = 0x63B1", "qqu 0x20 = 0x6265", "qr 0x20 = 0x6263", "qrau 0x20 = 0x6339", "qrb 0x20 = 0x6350", "qrbc 0x20 = 0x640D", "qrrd 0x20 = 0x64CD", "qrrj 0x20 = 0x64A3", "qrsh 0x20 = 0x62D0", "qrsj 0x20 = 0x63D6", "qrsn 0x20 = 0x634C", "qrup 0x20 = 0x62BF", "qrvc 0x20 = 0x64B0", "qryo 0x20 = 0x6349", "qsav 0x20 = 0x63E0", "qseq 0x20 = 0x6468", "qshr 0x20 = 0x62DB", "qsj 0x20 = 0x6315", "qsje 0x20 = 0x63AB", "qsjj 0x20 = 0x651D", "qsjl 0x20 = 0x63F6", "qsjr 0x20 = 0x636E", "qskr 0x20 = 0x6343", "qsll 0x20 = 0x630B", "qsmb 0x20 = 0x6383", "qsmg 0x20 = 0x63E1", "qsmi 0x20 = 0x648F", "qsmv 0x20 = 0x6381", "qsp 0x20 = 0x62B3", "qsql 0x20 = 0x632A", "qsrj 0x20 = 0x64D7", "qsrr 0x20 = 0x6473", "qss 0x20 = 0x62D2", "qssr 0x20 = 0x6336", "qstt 0x20 = 0x6452", "qstv 0x20 = 0x640C", "qsuu 0x20 = 0x6398", "qswu 0x20 = 0x652C", "qsya 0x20 = 0x647A", "qsyg 0x20 = 0x64E2", "qsyh 0x20 = 0x644E", "qta 0x20 = 0x63AA", "qtak 0x20 = 0x6478", "qtav 0x20 = 0x64D6", "qtbc 0x20 = 0x6375", "qtbf 0x20 = 0x6503", "qtbk 0x20 = 0x6492", "qtbn 0x20 = 0x63C3", "qtc 0x20 = 0x62F1", "qtcl 0x20 = 0x6495", "qtct 0x20 = 0x6424", "qtcw 0x20 = 0x63C2", "qtgm 0x20 = 0x6413", "qtgv 0x20 = 0x6501", "qtkl 0x20 = 0x64F2", "qtm 0x20 = 0x62D1", "qtmc 0x20 = 0x6391", "qtmcz 0x20 = 0x6497", "qtmo 0x20 = 0x64B2", "qtmv 0x20 = 0x63D5", "qtod 0x20 = 0x643D", "qtoe 0x20 = 0x64ED", "qtog 0x20 = 0x6524", "qtor 0x20 = 0x642D", "qtpd 0x20 = 0x64DB", "qtrk 0x20 = 0x64CF", "qtt 0x20 = 0x62FC", "qttb 0x20 = 0x6406", "qttm 0x20 = 0x63BD", "qtub 0x20 = 0x6420", "qtw 0x20 = 0x63CF", "qtwi 0x20 = 0x6499", "qtwv 0x20 = 0x64C3", "qtxc 0x20 = 0x641B", "qu 0x20 = 0x624E", "qud 0x20 = 0x69FC", "qumb 0x20 = 0x63E3", "quob 0x20 = 0x651C", "quog 0x20 = 0x6467", "quu 0x20 = 0x62D9", "quv 0x20 = 0x5AE2", "qvid 0x20 = 0x64FD", "qvis 0x20 = 0x62D7", "qvno 0x20 = 0x63BE", "qvoi 0x20 = 0x652D", "qvvd 0x20 = 0x6477", "qvvn 0x20 = 0x62F6", "qvvu 0x20 = 0x64F8", "qwd 0x20 = 0x6346", "qwdz 0x20 = 0x6370", "qwg 0x20 = 0x635A", "qwhr 0x20 = 0x6482", "qwim 0x20 = 0x6451", "qwjc 0x20 = 0x645C", "qwkp 0x20 = 0x6441", "qwl 0x20 = 0x62BC", "qwli 0x20 = 0x64C9", "qwlj 0x20 = 0x64C7", "qwlp 0x20 = 0x64FA", "qwlv 0x20 = 0x64D0", "qwmv 0x20 = 0x63CB", "qwot 0x20 = 0x6435", "qwp 0x20 = 0x63CC", "qwvf 0x20 = 0x645E", "qwwv 0x20 = 0x650C", "qwyi 0x20 = 0x62C7", "qxp 0x20 = 0x6183", "qy 0x20 = 0x6251", "qyaj 0x20 = 0x6389", "qybb 0x20 = 0x64BE", "qybbz 0x20 = 0x63E5", "qybg 0x20 = 0x6521", "qybp 0x20 = 0x650F", "qybs 0x20 = 0x6412", "qycb 0x20 = 0x6458", "qyck 0x20 = 0x630D", "qyg 0x20 = 0x62C4", "qygq 0x20 = 0x64BB", "qyhj 0x20 = 0x6453", "qyhn 0x20 = 0x6297", "qyhr 0x20 = 0x6425", "qyhv 0x20 = 0x6314", "qyj 0x20 = 0x6296", "qyjj 0x20 = 0x6459", "qyk 0x20 = 0x6286", "qylh 0x20 = 0x6357", "qylm 0x20 = 0x626F", "qymb 0x20 = 0x63AF", "qynv 0x20 = 0x650D", "qyoj 0x20 = 0x637D", "qyok 0x20 = 0x6396", "qypo 0x20 = 0x64DA", "qypp 0x20 = 0x6504", "qyps 0x20 = 0x64C4", "qypt 0x20 = 0x650E", "qyr 0x20 = 0x62C8", "qyrb 0x20 = 0x641E", "qyrf 0x20 = 0x63A0", "qyrn 0x20 = 0x63E8", "qyrv 0x20 = 0x6518", "qysd 0x20 = 0x63D3", "qyt 0x20 = 0x62C9", "qytg 0x20 = 0x649E", "qytr 0x20 = 0x638A", "qytu 0x20 = 0x646C", "qytv 0x20 = 0x63A5", "qyub 0x20 = 0x645B", "qyvg 0x20 = 0x64C1", "qyvw 0x20 = 0x6410", "qywm 0x20 = 0x64C5", "qyx 0x20 = 0x64E0", "qyy 0x20 = 0x6283", "qyyb 0x20 = 0x64FF", "qyyj 0x20 = 0x6454", "r 0x20 = 0x53E3", "raa 0x20 = 0x5531", "rail 0x20 = 0x5527", "ram 0x20 = 0x547E", "ramj 0x20 = 0x54FB", "ranx 0x20 = 0x56AA", "rapv 0x20 = 0x559D", "rase 0x20 = 0x562C", "rate 0x20 = 0x5697", "rau 0x20 = 0x5427", "rauz 0x20 = 0x9091", "rav 0x20 = 0x54CF", "raye 0x20 = 0x656F", "rb 0x20 = 0x8099", "rbbe 0x20 = 0x566F", "rbbr 0x20 = 0x558E", "rbcv 0x20 = 0x56B6", "rbd 0x20 = 0x554B", "rbdi 0x20 = 0x54F7", "rbgr 0x20 = 0x5541", "rbhaf 0x20 = 0x9D51", "rbm 0x20 = 0x5480", "rbmr 0x20 = 0x54C3", "rbou 0x20 = 0x55C2", "rbsmr 0x20 = 0x55E3", "rbuc 0x20 = 0x54E1", "rbucz 0x20 = 0x5504", "rbv 0x20 = 0x54F8", "rbwi 0x20 = 0x56BC", "rc 0x20 = 0x53EA", "rciy 0x20 = 0x55E1", "rckn 0x20 = 0x55F2", "rcks 0x20 = 0x52DB", "rcnl 0x20 = 0x9116", "rcsh 0x20 = 0x5429", "rcwa 0x20 = 0x564C", "rcz 0x20 = 0x53ED", "rd 0x20 = 0x5446", "rdam 0x20 = 0x55B3", "rddf 0x20 = 0x5664", "rdhqu 0x20 = 0x6C09", "rdi 0x20 = 0x540B", "rdk 0x20 = 0x5437", "rdln 0x20 = 0x5587", "rdlnz 0x20 = 0x528B", "rdlo 0x20 = 0x55FD", "rdm 0x20 = 0x5460", "rdmq 0x20 = 0x55A1", "rdnl 0x20 = 0x9135", "rdoo 0x20 = 0x553B", "rede 0x20 = 0x5575", "reed 0x20 = 0x55D3", "reee 0x20 = 0x555C", "refh 0x20 = 0x5526", "reoy 0x20 = 0x55E8", "rf 0x20 = 0x5419", "rfb 0x20 = 0x54E8", "rfba 0x20 = 0x5690", "rfbc 0x20 = 0x55E9", "rfbw 0x20 = 0x5679", "rfd 0x20 = 0x54AA", "rff 0x20 = 0x5556", "rffs 0x20 = 0x562E", "rfh 0x20 = 0x5435", "rg 0x20 = 0x5410", "rgb 0x20 = 0x5465", "rgbt 0x20 = 0x564E", "rgcc 0x20 = 0x5687", "rgg 0x20 = 0x54C7", "rggu 0x20 = 0x5635", "rghaf 0x20 = 0x9DD5", "rgi 0x20 = 0x547F", "rgit 0x20 = 0x55D1", "rgkc 0x20 = 0x56BD", "rglc 0x20 = 0x54E7", "rgnl 0x20 = 0x90E2", "rgr 0x20 = 0x54AD", "rgrr 0x20 = 0x563B", "rgsk 0x20 = 0x55F7", "rgtj 0x20 = 0x5548", "rgyo 0x20 = 0x5517", "rhad 0x20 = 0x5604", "rhaf 0x20 = 0x9CF4", "rhag 0x20 = 0x55A4", "rhaj 0x20 = 0x55E5", "rhbk 0x20 = 0x5662", "rhbu 0x20 = 0x54B1", "rhdf 0x20 = 0x557E", "rhdn 0x20 = 0x550E", "rher 0x20 = 0x54AF", "rhey 0x20 = 0x549A", "rhfd 0x20 = 0x547C", "rhg 0x20 = 0x5448", "rhgr 0x20 = 0x54E0", "rhhj 0x20 = 0x5564", "rhio 0x20 = 0x5471", "rhjd 0x20 = 0x54AE", "rhjg 0x20 = 0x553E", "rhjr 0x20 = 0x54B6", "rhkb 0x20 = 0x563A", "rhml 0x20 = 0x542C", "rhmo 0x20 = 0x566C", "rhoa 0x20 = 0x5592", "rhp 0x20 = 0x5412", "rhpm 0x20 = 0x5467", "rhq 0x20 = 0x543D", "rhqi 0x20 = 0x54E6", "rhr 0x20 = 0x5442", "rhrf 0x20 = 0x55DA", "rhsk 0x20 = 0x5533", "rhskz 0x20 = 0x566D", "rht 0x20 = 0x544F", "rhu 0x20 = 0x5144", "rhuc 0x20 = 0x56CB", "rhuk 0x20 = 0x55C5", "rhxe 0x20 = 0x55D6", "rhxu 0x20 = 0x5532", "rhyo 0x20 = 0x54B7", "rice 0x20 = 0x5506", "ridd 0x20 = 0x561B", "rihf 0x20 = 0x5601", "rihq 0x20 = 0x54DE", "rihr 0x20 = 0x558A", "rihu 0x20 = 0x542E", "riil 0x20 = 0x5577", "rijb 0x20 = 0x54FA", "rik 0x20 = 0x5420", "rikf 0x20 = 0x5645", "riog 0x20 = 0x96D6", "riok 0x20 = 0x5509", "rir 0x20 = 0x548D", "ritc 0x20 = 0x569D", "rite 0x20 = 0x55A5", "riuh 0x20 = 0x54E4", "rjal 0x20 = 0x561F", "rjbc 0x20 = 0x55D4", "rjbd 0x20 = 0x54F1", "rjbf 0x20 = 0x5693", "rjbfz 0x20 = 0x55E6", "rjbj 0x20 = 0x5583", "rjbo 0x20 = 0x568F", "rjbv 0x20 = 0x56D4", "rjca 0x20 = 0x567E", "rjd 0x20 = 0x5473", "rje 0x20 = 0x5431", "rjhaf 0x20 = 0x9DE4", "rjhr 0x20 = 0x5580", "rji 0x20 = 0x6230", "rjiz 0x20 = 0x6222", "rjjb 0x20 = 0x5632", "rjji 0x20 = 0x56C0", "rjkd 0x20 = 0x54EE", "rjkp 0x20 = 0x54BE", "rjlo 0x20 = 0x5551", "rjmm 0x20 = 0x55A7", "rjmmv 0x20 = 0x8FB4", "rjmo 0x20 = 0x5576", "rjnl 0x20 = 0x9132", "rjoe 0x20 = 0x561C", "rjpa 0x20 = 0x55DC", "rjpn 0x20 = 0x5680", "rjpu 0x20 = 0x5627", "rjqr 0x20 = 0x55D0", "rjr 0x20 = 0x5495", "rjstv 0x20 = 0x56C5", "rjtc 0x20 = 0x5674", "rka 0x20 = 0x668B", "rkbu 0x20 = 0x776F", "rkcf 0x20 = 0x5639", "rki 0x20 = 0x5454", "rkib 0x20 = 0x5537", "rkiz 0x20 = 0x5430", "rkkb 0x20 = 0x550F", "rklb 0x20 = 0x5498", "rklv 0x20 = 0x5535", "rkn 0x20 = 0x54A6", "rkoo 0x20 = 0x550A", "rkp 0x20 = 0x610D", "rks 0x20 = 0x53E6", "rksb 0x20 = 0x55CB", "rksr 0x20 = 0x5496", "rksz 0x20 = 0x53FB", "rlb 0x20 = 0x540A", "rlln 0x20 = 0x5488", "rllv 0x20 = 0x560D", "rlmc 0x20 = 0x5633", "rlmt 0x20 = 0x568D", "rlmy 0x20 = 0x5561", "rlwl 0x20 = 0x547B", "rlx 0x20 = 0x562F", "rmam 0x20 = 0x54BA", "rmamh 0x20 = 0x8E3C", "rmamo 0x20 = 0x8E36", "rmanw 0x20 = 0x8E9D", "rmaph 0x20 = 0x8E22", "rmasy 0x20 = 0x8E4B", "rmau 0x20 = 0x8DC1", "rmav 0x20 = 0x8DDF", "rmbb 0x20 = 0x5685", "rmbc 0x20 = 0x55CA", "rmbd 0x20 = 0x8E29", "rmbe 0x20 = 0x5698", "rmbhx 0x20 = 0x8E48", "rmbm 0x20 = 0x8DD9", "rmbt 0x20 = 0x8DDA", "rmbue 0x20 = 0x8EA9", "rmbug 0x20 = 0x8EA3", "rmbvk 0x20 = 0x8E4A", "rmc 0x20 = 0x8DB4", "rmcw 0x20 = 0x54C2", "rmcwa 0x20 = 0x8E6D", "rmcwz 0x20 = 0x5512", "rmd 0x20 = 0x5401", "rmdam 0x20 = 0x8E45", "rmdhe 0x20 = 0x8DDB", "rmdk 0x20 = 0x8DB9", "rmdm 0x20 = 0x56A6", "rmea 0x20 = 0x8E0F", "rmf 0x20 = 0x5425", "rmfb 0x20 = 0x8E03", "rmfbg 0x20 = 0x8E5A", "rmfcb 0x20 = 0x8E50", "rmfdq 0x20 = 0x8E78", "rmffe 0x20 = 0x8E9E", "rmfj 0x20 = 0x546F", "rmfm 0x20 = 0x5478", "rmfou 0x20 = 0x8E21", "rmfq 0x20 = 0x8DD8", "rmgce 0x20 = 0x8E1C", "rmgcg 0x20 = 0x8E1B", "rmgdi 0x20 = 0x8DF1", "rmgg 0x20 = 0x8DEC", "rmggu 0x20 = 0x8E7A", "rmggz 0x20 = 0x5540", "rmgni 0x20 = 0x8E8A", "rmgt 0x20 = 0x54E2", "rmgyo 0x20 = 0x8DFF", "rmhdf 0x20 = 0x8E3F", "rmhdv 0x20 = 0x8E12", "rmhdw 0x20 = 0x8E6F", "rmher 0x20 = 0x8DEF", "rmhgu 0x20 = 0x8DE3", "rmhhw 0x20 = 0x8E53", "rmhjd 0x20 = 0x8DE6", "rmhjg 0x20 = 0x8E35", "rmhkb 0x20 = 0x8E7B", "rmhlb 0x20 = 0x8E3D", "rmhlc 0x20 = 0x8E93", "rmhml 0x20 = 0x65B2", "rmhmy 0x20 = 0x8DC5", "rmhnd 0x20 = 0x8DFA", "rmhoo 0x20 = 0x8E64", "rmhooz 0x20 = 0x8E5D", "rmhqo 0x20 = 0x8DCC", "rmhsb 0x20 = 0x8E41", "rmhsk 0x20 = 0x8E88", "rmhuc 0x20 = 0x8EA6", "rmhyo 0x20 = 0x8DF3", "rmiav 0x20 = 0x8E09", "rmice 0x20 = 0x8E06", "rmig 0x20 = 0x54A5", "rmigi 0x20 = 0x8E95", "rmii 0x20 = 0x8E10", "rmikk 0x20 = 0x8DCB", "rmir 0x20 = 0x8DC6", "rmite 0x20 = 0x8E31", "rmitf 0x20 = 0x8E60", "rmiwg 0x20 = 0x8E94", "rmixp 0x20 = 0x8E57", "rmiyr 0x20 = 0x8E2E", "rmjbc 0x20 = 0x8E4E", "rmjcu 0x20 = 0x8EA5", "rmje 0x20 = 0x8DC2", "rmjk 0x20 = 0x5649", "rmjkd 0x20 = 0x8E0D", "rmjlo 0x20 = 0x8E15", "rmjnu 0x20 = 0x8E20", "rmjoa 0x20 = 0x8E5C", "rmjp 0x20 = 0x8DCE", "rmjr 0x20 = 0x8DCD", "rmjx 0x20 = 0x55A2", "rmkmr 0x20 = 0x8E26", "rmkms 0x20 = 0x8DE8", "rmkn 0x20 = 0x8DE0", "rmkpb 0x20 = 0x8E5B", "rmksr 0x20 = 0x8DCF", "rmlb 0x20 = 0x5562", "rmlk 0x20 = 0x54FD", "rmlm 0x20 = 0x555E", "rmlmc 0x20 = 0x8E6A", "rmlwp 0x20 = 0x8DE9", "rmmcw 0x20 = 0x8DF4", "rmmd 0x20 = 0x8DB6", "rmmfb 0x20 = 0x8E8E", "rmmig 0x20 = 0x8DEE", "rmmp 0x20 = 0x5641", "rmmr 0x20 = 0x5514", "rmmrw 0x20 = 0x8E3E", "rmmrz 0x20 = 0x8DD6", "rmmt 0x20 = 0x8DBC", "rmmto 0x20 = 0x8E76", "rmn 0x20 = 0x53EE", "rmnbs 0x20 = 0x8E34", "rmnhd 0x20 = 0x8E42", "rmnhe 0x20 = 0x8DBF", "rmnib 0x20 = 0x8E0A", "rmnin 0x20 = 0x8DE2", "rmnmu 0x20 = 0x8DEA", "rmnn 0x20 = 0x54A7", "rmnoe 0x20 = 0x8E73", "rmnot 0x20 = 0x8E6C", "rmnr 0x20 = 0x5475", "rmodi 0x20 = 0x8DD7", "rmog 0x20 = 0x8E13", "rmohh 0x20 = 0x8DC8", "rmokr 0x20 = 0x8E1F", "rmomb 0x20 = 0x8E1A", "rmomg 0x20 = 0x8DE7", "rmomn 0x20 = 0x8E30", "rmomr 0x20 = 0x8E4C", "rmomrz 0x20 = 0x8DF2", "rmon 0x20 = 0x8DB7", "rmonp 0x20 = 0x8E17", "rmotq 0x20 = 0x8E8C", "rmowy 0x20 = 0x8E07", "rmpfd 0x20 = 0x8E18", "rmpi 0x20 = 0x8DB5", "rmpmc 0x20 = 0x8E5E", "rmpru 0x20 = 0x8DD1", "rmpt 0x20 = 0x8DC7", "rmptd 0x20 = 0x8E40", "rmqka 0x20 = 0x8E33", "rmqkx 0x20 = 0x8E56", "rmqmc 0x20 = 0x8E5F", "rmqo 0x20 = 0x8DBA", "rmrb 0x20 = 0x55DD", "rmrrd 0x20 = 0x8E81", "rmryo 0x20 = 0x8E00", "rmsje 0x20 = 0x8E19", "rmsjj 0x20 = 0x8EA1", "rmsjr 0x20 = 0x8E1E", "rmsju 0x20 = 0x8E02", "rmso 0x20 = 0x5544", "rmsp 0x20 = 0x8DDC", "rmss 0x20 = 0x8DDD", "rmssr 0x20 = 0x8DFC", "rmstv 0x20 = 0x8E4D", "rmsu 0x20 = 0x5443", "rmsup 0x20 = 0x8DFD", "rmsyg 0x20 = 0x8E8D", "rmta 0x20 = 0x8E16", "rmtag 0x20 = 0x8EAA", "rmtce 0x20 = 0x8EA8", "rmtgm 0x20 = 0x8E49", "rmtja 0x20 = 0x8E87", "rmtkl 0x20 = 0x8E91", "rmtlb 0x20 = 0x8E63", "rmtmc 0x20 = 0x8E11", "rmtmo 0x20 = 0x8E7C", "rmtmv 0x20 = 0x8E38", "rmto 0x20 = 0x5658", "rmtqa 0x20 = 0x8EA4", "rmtt 0x20 = 0x8DF0", "rmttm 0x20 = 0x8E2B", "rmtwa 0x20 = 0x8E67", "rmtwi 0x20 = 0x8E72", "rmua 0x20 = 0x5646", "rmubb 0x20 = 0x8E66", "rmue 0x20 = 0x55C4", "rmui 0x20 = 0x560E", "rmumb 0x20 = 0x8E39", "rmvh 0x20 = 0x5440", "rmvi 0x20 = 0x55D5", "rmvid 0x20 = 0x8E92", "rmvim 0x20 = 0x8E96", "rmvmi 0x20 = 0x8E61", "rmvvu 0x20 = 0x8E90", "rmwd 0x20 = 0x8E1D", "rmwf 0x20 = 0x560C", "rmwg 0x20 = 0x55B1", "rmwj 0x20 = 0x563E", "rmwl 0x20 = 0x5595", "rmwli 0x20 = 0x8E85", "rmwtq 0x20 = 0x8E55", "rmwv 0x20 = 0x5593", "rmyaj 0x20 = 0x8E14", "rmybb 0x20 = 0x8E44", "rmybp 0x20 = 0x8E98", "rmycb 0x20 = 0x8E62", "rmyck 0x20 = 0x8DE4", "rmyf 0x20 = 0x5615", "rmyfe 0x20 = 0x8E27", "rmyfu 0x20 = 0x8E74", "rmyg 0x20 = 0x8DD3", "rmygq 0x20 = 0x8E82", "rmyjj 0x20 = 0x8E65", "rmylc 0x20 = 0x8DE1", "rmylh 0x20 = 0x8E04", "rmylm 0x20 = 0x8DBE", "rmymp 0x20 = 0x8DD0", "rmymu 0x20 = 0x8E9A", "rmyoj 0x20 = 0x8E24", "rmypo 0x20 = 0x8E86", "rmyr 0x20 = 0x8DD5", "rmyrv 0x20 = 0x8E9F", "rmytr 0x20 = 0x8E23", "rmytv 0x20 = 0x8E25", "rmyx 0x20 = 0x8E8B", "rnbg 0x20 = 0x5503", "rnbj 0x20 = 0x561D", "rnbk 0x20 = 0x559A", "rnd 0x20 = 0x5407", "rndu 0x20 = 0x543C", "rng 0x20 = 0x541C", "rnhb 0x20 = 0x564A", "rnhe 0x20 = 0x5438", "rnhx 0x20 = 0x5557", "rnin 0x20 = 0x54C6", "rnkm 0x20 = 0x550C", "rnlr 0x20 = 0x554A", "rno 0x20 = 0x5439", "rnri 0x20 = 0x56B5", "rnwa 0x20 = 0x5695", "rob 0x20 = 0x5436", "rod 0x20 = 0x54BB", "rodi 0x20 = 0x5490", "rog 0x20 = 0x552F", "roj 0x20 = 0x5418", "roll 0x20 = 0x5424", "roma 0x20 = 0x5672", "romd 0x20 = 0x550B", "romi 0x20 = 0x5464", "romn 0x20 = 0x55BB", "romnz 0x20 = 0x541F", "romo 0x20 = 0x565E", "romr 0x20 = 0x54C8", "romrz 0x20 = 0x5565", "romrzz 0x20 = 0x55C6", "ron 0x20 = 0x5403", "ronc 0x20 = 0x55FF", "ronk 0x20 = 0x5589", "ronp 0x20 = 0x5538", "ronr 0x20 = 0x5505", "roog 0x20 = 0x5511", "rop 0x20 = 0x542A", "roq 0x20 = 0x54D6", "rort 0x20 = 0x557D", "ros 0x20 = 0x548B", "rosk 0x20 = 0x54BF", "rotf 0x20 = 0x5638", "rovl 0x20 = 0x5563", "royb 0x20 = 0x5659", "rp 0x20 = 0x53F1", "rpa 0x20 = 0x54B0", "rph 0x20 = 0x5487", "rphh 0x20 = 0x543B", "rpln 0x20 = 0x5221", "rpmm 0x20 = 0x5441", "rpok 0x20 = 0x6543", "rpou 0x20 = 0x5555", "rppa 0x20 = 0x5588", "rpr 0x20 = 0x5474", "rpru 0x20 = 0x5486", "rptd 0x20 = 0x558B", "rpu 0x20 = 0x5428", "rpuc 0x20 = 0x5678", "rpuk 0x20 = 0x54C5", "rqha 0x20 = 0x556A", "rqhk 0x20 = 0x55AB", "rqhl 0x20 = 0x54F3", "rqhu 0x20 = 0x56D3", "rqjm 0x20 = 0x5612", "rqkq 0x20 = 0x552A", "rqmc 0x20 = 0x5616", "rqmf 0x20 = 0x55C9", "rqmn 0x20 = 0x5491", "rqyt 0x20 = 0x5566", "rrau 0x20 = 0x5508", "rrbyj 0x20 = 0x659D", "rrf 0x20 = 0x55A3", "rrhaf 0x20 = 0x9DFA", "rrhn 0x20 = 0x5492", "rrik 0x20 = 0x54ED", "rrikr 0x20 = 0x5668", "rrikz 0x20 = 0x7378", "rrmcr 0x20 = 0x56C2", "rrmll 0x20 = 0x558C", "rrmmk 0x20 = 0x56B4", "rrmms 0x20 = 0x54A2", "rrms 0x20 = 0x547A", "rrnl 0x20 = 0x90D8", "rrr 0x20 = 0x54C1", "rrrd 0x20 = 0x566A", "rrrdz 0x20 = 0x55BF", "rrrj 0x20 = 0x563D", "rrrr 0x20 = 0x789E", "rrru 0x20 = 0x5D52", "rrruz 0x20 = 0x55A6", "rrslr 0x20 = 0x569A", "rrup 0x20 = 0x5461", "rrvc 0x20 = 0x5640", "rrvlr 0x20 = 0x5602", "rrwj 0x20 = 0x55AE", "rrwmu 0x20 = 0x9F09", "rryo 0x20 = 0x54EB", "rsbn 0x20 = 0x5530", "rsei 0x20 = 0x56D1", "rsh 0x20 = 0x53E8", "rshaf 0x20 = 0x9D1E", "rshafz 0x20 = 0x9D9A", "rsj 0x20 = 0x54A1", "rsjj 0x20 = 0x56C1", "rsjz 0x20 = 0x54A0", "rsl 0x20 = 0x53E9", "rslb 0x20 = 0x5482", "rsln 0x20 = 0x5225", "rsm 0x20 = 0x53FC", "rsmbc 0x20 = 0x984E", "rsme 0x20 = 0x551A", "rsmg 0x20 = 0x5594", "rsmi 0x20 = 0x565A", "rsmt 0x20 = 0x5682", "rsnl 0x20 = 0x9102", "rso 0x20 = 0x544E", "rsp 0x20 = 0x5462", "rsqf 0x20 = 0x55CE", "rsql 0x20 = 0x54EA", "rsrr 0x20 = 0x5614", "rsuu 0x20 = 0x5552", "rsyg 0x20 = 0x5681", "rsyh 0x20 = 0x5610", "rsyj 0x20 = 0x567F", "rsypu 0x20 = 0x865F", "rta 0x20 = 0x5536", "rtak 0x20 = 0x55FC", "rtav 0x20 = 0x5676", "rtc 0x20 = 0x54C4", "rtcl 0x20 = 0x5636", "rtct 0x20 = 0x55CC", "rtgi 0x20 = 0x56C8", "rtgm 0x20 = 0x55DF", "rtgu 0x20 = 0x5534", "rtk 0x20 = 0x54CE", "rtkr 0x20 = 0x558F", "rtlf 0x20 = 0x56A5", "rtlo 0x20 = 0x5606", "rtm 0x20 = 0x5481", "rtmc 0x20 = 0x552D", "rtmo 0x20 = 0x5657", "rtmq 0x20 = 0x5629", "rtmv 0x20 = 0x557F", "rtnd 0x20 = 0x56CC", "rtod 0x20 = 0x55CF", "rtoe 0x20 = 0x5684", "rtor 0x20 = 0x55D2", "rtq 0x20 = 0x54A9", "rtrg 0x20 = 0x56BE", "rtub 0x20 = 0x55CD", "rtw 0x20 = 0x55B5", "rtwa 0x20 = 0x5608", "rtwi 0x20 = 0x5642", "rtwiz 0x20 = 0x56C6", "rtwv 0x20 = 0x5665", "rtxc 0x20 = 0x55DB", "rtyb 0x20 = 0x5686", "ru 0x20 = 0x5DF3", "rumb 0x20 = 0x5598", "rumi 0x20 = 0x55E4", "runl 0x20 = 0x9133", "ruog 0x20 = 0x55FA", "ruomv 0x20 = 0x9955", "rup 0x20 = 0x6C11", "ruu 0x20 = 0x5484", "rve 0x20 = 0x5476", "rvfi 0x20 = 0x55B2", "rvi 0x20 = 0x5406", "rvio 0x20 = 0x5630", "rvis 0x20 = 0x5466", "rvl 0x20 = 0x53EB", "rvnk 0x20 = 0x5433", "rvno 0x20 = 0x5599", "rvtc 0x20 = 0x5DFD", "rvvu 0x20 = 0x55C8", "rwb 0x20 = 0x559F", "rwc 0x20 = 0x546C", "rwg 0x20 = 0x54E9", "rwgf 0x20 = 0x563F", "rwgg 0x20 = 0x569C", "rwim 0x20 = 0x5613", "rwk 0x20 = 0x54BD", "rwkp 0x20 = 0x55EF", "rwl 0x20 = 0x5477", "rwlb 0x20 = 0x5581", "rwlc 0x20 = 0x562A", "rwlg 0x20 = 0x56C9", "rwli 0x20 = 0x5663", "rwlv 0x20 = 0x566E", "rwmv 0x20 = 0x5582", "rwnl 0x20 = 0x9119", "rwot 0x20 = 0x55E2", "rwtq 0x20 = 0x55F6", "rwyi 0x20 = 0x5463", "rxu 0x20 = 0x9EFD", "ryaj 0x20 = 0x5545", "ryao 0x20 = 0x5677", "rybb 0x20 = 0x557C", "rybp 0x20 = 0x56A8", "rybs 0x20 = 0x55D9", "rycb 0x20 = 0x5600", "ryck 0x20 = 0x54AC", "rydg 0x20 = 0x56C3", "rydu 0x20 = 0x56AB", "ryfu 0x20 = 0x5648", "rygq 0x20 = 0x5660", "ryhc 0x20 = 0x56AC", "ryhn 0x20 = 0x542D", "ryjj 0x20 = 0x55F9", "ryk 0x20 = 0x5445", "rykh 0x20 = 0x55AD", "rymb 0x20 = 0x5543", "rymh 0x20 = 0x5666", "rymp 0x20 = 0x5472", "rymr 0x20 = 0x5501", "rymu 0x20 = 0x5699", "ryo 0x20 = 0x8DB3", "ryoj 0x20 = 0x5550", "rypb 0x20 = 0x5634", "rypd 0x20 = 0x558D", "rypk 0x20 = 0x5673", "rypm 0x20 = 0x5653", "rypo 0x20 = 0x5671", "rypt 0x20 = 0x56A7", "rypu 0x20 = 0x552C", "ryr 0x20 = 0x546B", "ryrb 0x20 = 0x55C3", "ryrd 0x20 = 0x554D", "ryrn 0x20 = 0x54FC", "ryro 0x20 = 0x568E", "ryru 0x20 = 0x55A8", "ryrv 0x20 = 0x56B7", "rysk 0x20 = 0x55FE", "rysy 0x20 = 0x5539", "ryta 0x20 = 0x5591", "rytp 0x20 = 0x566B", "rytv 0x20 = 0x553C", "ryvg 0x20 = 0x5670", "ryvo 0x20 = 0x54B3", "rywe 0x20 = 0x5683", "ryx 0x20 = 0x568C", "s 0x20 = 0x5C38", "sahaf 0x20 = 0x9DF5", "sahni 0x20 = 0x98C1", "sammu 0x20 = 0x7FEB", "sav 0x20 = 0x533D", "sbcc 0x20 = 0x5C6D", "sbhg 0x20 = 0x6722", "sbln 0x20 = 0x5237", "sbug 0x20 = 0x5337", "sc 0x20 = 0x5339", "schaf 0x20 = 0x9D04", "schne 0x20 = 0x6BBF", "scwa 0x20 = 0x5C64", "se 0x20 = 0x5C3F", "seb 0x20 = 0x814E", "sebuc 0x20 = 0x8CE2", "sebucz 0x20 = 0x8D00", "sebz 0x20 = 0x81C0", "sec 0x20 = 0x92FB", "sed 0x20 = 0x68F8", "sef 0x20 = 0x7123", "seg 0x20 = 0x5805", "segz 0x20 = 0x58C2", "sehaf 0x20 = 0x9DD6", "sehq 0x20 = 0x7280", "selmi 0x20 = 0x8738", "semcw 0x20 = 0x91AB", "semgi 0x20 = 0x747F", "semoo 0x20 = 0x6BC9", "semr 0x20 = 0x787B", "semrt 0x20 = 0x8C4E", "seog 0x20 = 0x532F", "seooo 0x20 = 0x805A", "seq 0x20 = 0x6394", "sesyy 0x20 = 0x7FF3", "sev 0x20 = 0x5A36", "sevif 0x20 = 0x7DCA", "sevifz 0x20 = 0x7E44", "sevz 0x20 = 0x5A5C", "sevzz 0x20 = 0x5ADB", "sewgf 0x20 = 0x9EF3", "sewi 0x20 = 0x5C6C", "sfa 0x20 = 0x99B9", "sfajv 0x20 = 0x9A34", "sfamj 0x20 = 0x99FB", "sfamo 0x20 = 0x9A20", "sfapp 0x20 = 0x9A09", "sfapv 0x20 = 0x9A14", "sfb 0x20 = 0x5C51", "sfbbr 0x20 = 0x9A27", "sfbgr 0x20 = 0x9A06", "sfbm 0x20 = 0x99D4", "sfbmr 0x20 = 0x99E7", "sfbr 0x20 = 0x99C9", "sfbvk 0x20 = 0x9A31", "sfcru 0x20 = 0x99FE", "sfcwa 0x20 = 0x9A53", "sfd 0x20 = 0x5C4E", "sfdi 0x20 = 0x5C09", "sfdk 0x20 = 0x99C3", "sfdl 0x20 = 0x99F7", "sfdoo 0x20 = 0x9A0B", "sfe 0x20 = 0x99AD", "sfeii 0x20 = 0x9A37", "sffdq 0x20 = 0x9A4E", "sfggu 0x20 = 0x9A4D", "sfgig 0x20 = 0x9A56", "sfhag 0x20 = 0x9A1C", "sfhdp 0x20 = 0x9A2C", "sfher 0x20 = 0x99F1", "sfhgu 0x20 = 0x99EA", "sfhhw 0x20 = 0x9A2E", "sfhi 0x20 = 0x9A29", "sfhkb 0x20 = 0x9A55", "sfhni 0x20 = 0x98BF", "sfhp 0x20 = 0x99B2", "sfhsb 0x20 = 0x9A19", "sfhsy 0x20 = 0x9A38", "sfhwp 0x20 = 0x9A44", "sfhxe 0x20 = 0x9A2A", "sfhyo 0x20 = 0x99E3", "sfiav 0x20 = 0x99FA", "sfice 0x20 = 0x99FF", "sfihu 0x20 = 0x99BB", "sfiih 0x20 = 0x9A42", "sfij 0x20 = 0x99E5", "sfiok 0x20 = 0x9A03", "sfir 0x20 = 0x99D8", "sfit 0x20 = 0x99F4", "sfiuh 0x20 = 0x99F9", "sfjmc 0x20 = 0x9A5E", "sfjp 0x20 = 0x99DD", "sfk 0x20 = 0x99B1", "sfkk 0x20 = 0x99C1", "sfkmr 0x20 = 0x9A0E", "sfl 0x20 = 0x99BD", "sflk 0x20 = 0x99DB", "sflll 0x20 = 0x99B4", "sflmy 0x20 = 0x9A11", "sflpc 0x20 = 0x9A65", "sflw 0x20 = 0x99CE", "sflws 0x20 = 0x9A01", "sflx 0x20 = 0x9A4C", "sfmbu 0x20 = 0x9A66", "sfmfj 0x20 = 0x99CD", "sfmfm 0x20 = 0x99D3", "sfmhf 0x20 = 0x9A35", "sfmig 0x20 = 0x99E4", "sfmj 0x20 = 0x99AF", "sfmmp 0x20 = 0x9A6A", "sfmwf 0x20 = 0x9A43", "sfmwj 0x20 = 0x9A54", "sfmwv 0x20 = 0x9A15", "sfnhb 0x20 = 0x9A48", "sfnhd 0x20 = 0x9A25", "sfnhe 0x20 = 0x99BA", "sfnkq 0x20 = 0x9A1D", "sfnok 0x20 = 0x9A24", "sfnoo 0x20 = 0x9A1B", "sfodi 0x20 = 0x99D9", "sfog 0x20 = 0x9A05", "sfohh 0x20 = 0x99D7", "sfok 0x20 = 0x99C7", "sfomd 0x20 = 0x99FC", "sfomg 0x20 = 0x99E9", "sfomi 0x20 = 0x99D6", "sfomo 0x20 = 0x9A57", "sfomr 0x20 = 0x9A07", "sfpd 0x20 = 0x99B3", "sfph 0x20 = 0x99DC", "sfpi 0x20 = 0x99B0", "sfpou 0x20 = 0x9A0A", "sfpr 0x20 = 0x99D2", "sfpuu 0x20 = 0x9A36", "sfqjr 0x20 = 0x9A1E", "sfrb 0x20 = 0x99FD", "sfrrj 0x20 = 0x9A52", "sfrse 0x20 = 0x9A22", "sfseo 0x20 = 0x9A5F", "sfsff 0x20 = 0x9A6B", "sfshr 0x20 = 0x99CB", "sfsj 0x20 = 0x99EC", "sfsme 0x20 = 0x99F8", "sfsnd 0x20 = 0x9A4F", "sfsrr 0x20 = 0x9A45", "sfss 0x20 = 0x99CF", "sfssr 0x20 = 0x99F6", "sfsya 0x20 = 0x9A3D", "sft 0x20 = 0x99B5", "sftaj 0x20 = 0x9A32", "sftbn 0x20 = 0x9A1A", "sftjd 0x20 = 0x9A67", "sftlf 0x20 = 0x9A60", "sftlm 0x20 = 0x9A39", "sftmc 0x20 = 0x9A0F", "sftmq 0x20 = 0x9A4A", "sftrg 0x20 = 0x9A69", "sftt 0x20 = 0x99E2", "sfuce 0x20 = 0x9A23", "sfuob 0x20 = 0x9A68", "sfvne 0x20 = 0x9A04", "sfwc 0x20 = 0x99DF", "sfwd 0x20 = 0x9A0D", "sfwk 0x20 = 0x99F0", "sfwlj 0x20 = 0x9A5B", "sfwtq 0x20 = 0x9A46", "sfwvf 0x20 = 0x9A3E", "sfyck 0x20 = 0x99EE", "sfydk 0x20 = 0x9A50", "sfyg 0x20 = 0x99D0", "sfyhv 0x20 = 0x8927", "sfypm 0x20 = 0x9A49", "sfypt 0x20 = 0x9A62", "sfyrv 0x20 = 0x9A64", "sfytj 0x20 = 0x9A02", "sfytjz 0x20 = 0x9A3F", "sfyvo 0x20 = 0x99ED", "sfywm 0x20 = 0x9A59", "sghaf 0x20 = 0x9E10", "sgi 0x20 = 0x6233", "sgjwp 0x20 = 0x807D", "sgks 0x20 = 0x52BB", "sgln 0x20 = 0x526D", "sh 0x20 = 0x5200", "shaf 0x20 = 0x9CF2", "shaph 0x20 = 0x9B04", "shawe 0x20 = 0x9B18", "shbb 0x20 = 0x9B05", "shbt 0x20 = 0x5334", "shcwa 0x20 = 0x9B19", "shdci 0x20 = 0x9B06", "shdhe 0x20 = 0x9AF2", "shdln 0x20 = 0x9B0E", "shfb 0x20 = 0x9AFE", "shfou 0x20 = 0x9B08", "shgb 0x20 = 0x9AEF", "shgr 0x20 = 0x9AFB", "shhaf 0x20 = 0x9DDA", "shhafz 0x20 = 0x9CED", "shhbu 0x20 = 0x9AE7", "shhdn 0x20 = 0x9B01", "shhej 0x20 = 0x9AFC", "shhhc 0x20 = 0x9B1A", "shhjr 0x20 = 0x9AFA", "shhqu 0x20 = 0x9AE6", "shi 0x20 = 0x5203", "shiih 0x20 = 0x9B16", "shikk 0x20 = 0x9AEE", "shiz 0x20 = 0x622E", "shjbc 0x20 = 0x9B12", "shjmc 0x20 = 0x9B22", "shjmf 0x20 = 0x9B03", "shjpa 0x20 = 0x9B10", "shjrb 0x20 = 0x9B0D", "shkmb 0x20 = 0x9B0C", "shmbc 0x20 = 0x985F", "shmfm 0x20 = 0x9AEC", "shml 0x20 = 0x5320", "shmu 0x20 = 0x9AE1", "shnih 0x20 = 0x9AF3", "shnl 0x20 = 0x911D", "shob 0x20 = 0x5C69", "shod 0x20 = 0x9AF9", "shodz 0x20 = 0x5C67", "shoe 0x20 = 0x5C65", "shoez 0x20 = 0x5C50", "shog 0x20 = 0x96E1", "shoma 0x20 = 0x9B20", "shoo 0x20 = 0x5C63", "shoog 0x20 = 0x9AFD", "shot 0x20 = 0x5C5C", "shov 0x20 = 0x5C68", "shpru 0x20 = 0x9AF1", "shqka 0x20 = 0x9B0A", "shqu 0x20 = 0x5C3E", "shr 0x20 = 0x53EC", "shsb 0x20 = 0x533E", "shshr 0x20 = 0x9AEB", "shsj 0x20 = 0x9AF6", "shtak 0x20 = 0x9B15", "shtbn 0x20 = 0x9B0B", "shtlb 0x20 = 0x9B17", "shtw 0x20 = 0x9AF7", "shtwv 0x20 = 0x9B1E", "shtxc 0x20 = 0x9B11", "shvvu 0x20 = 0x9B23", "shwlv 0x20 = 0x9B1F", "shyhs 0x20 = 0x9AE3", "shymp 0x20 = 0x9AED", "shyrv 0x20 = 0x9B24", "sif 0x20 = 0x71A8", "sihhh 0x20 = 0x9ADF", "sihk 0x20 = 0x957A", "sihml 0x20 = 0x65B8", "sihq 0x20 = 0x729A", "sihqo 0x20 = 0x957B", "sikcf 0x20 = 0x957D", "silq 0x20 = 0x8086", "sinl 0x20 = 0x9129", "sip 0x20 = 0x5FCD", "sipz 0x20 = 0x6170", "sisuu 0x20 = 0x957C", "siyhv 0x20 = 0x893D", "sj 0x20 = 0x8033", "sjb 0x20 = 0x81C2", "sjc 0x20 = 0x5C44", "sjciy 0x20 = 0x806C", "sjd 0x20 = 0x6A97", "sje 0x20 = 0x53D6", "sjenl 0x20 = 0x90F0", "sjf 0x20 = 0x803F", "sjfd 0x20 = 0x7CEA", "sjg 0x20 = 0x58C1", "sjgb 0x20 = 0x8043", "sjgr 0x20 = 0x8050", "sjhaf 0x20 = 0x9DFF", "sjhbu 0x20 = 0x803D", "sjhjr 0x20 = 0x8052", "sjhll 0x20 = 0x804A", "sjhqu 0x20 = 0x6BE6", "sjhwp 0x20 = 0x8070", "sjirm 0x20 = 0x805D", "sjjcm 0x20 = 0x805C", "sjjn 0x20 = 0x532D", "sjjpn 0x20 = 0x8079", "sjka 0x20 = 0x5C60", "sjkf 0x20 = 0x5C6A", "sjki 0x20 = 0x803E", "sjlb 0x20 = 0x5E66", "sjlmc 0x20 = 0x8075", "sjln 0x20 = 0x5235", "sjlws 0x20 = 0x8058", "sjmbc 0x20 = 0x9873", "sjmbl 0x20 = 0x804F", "sjmgi 0x20 = 0x74A7", "sjmln 0x20 = 0x7513", "sjmn 0x20 = 0x8035", "sjmym 0x20 = 0x8047", "sjncr 0x20 = 0x8078", "sjnl 0x20 = 0x8036", "sjnok 0x20 = 0x8067", "sjomi 0x20 = 0x8046", "sjomn 0x20 = 0x8039", "sjp 0x20 = 0x6065", "sjpz 0x20 = 0x61B5", "sjq 0x20 = 0x64D8", "sjr 0x20 = 0x5C45", "sjrxu 0x20 = 0x9F0A", "sjryo 0x20 = 0x8E84", "sjsh 0x20 = 0x5288", "sjsj 0x20 = 0x8051", "sjsjj 0x20 = 0x8076", "sju 0x20 = 0x8034", "sjv 0x20 = 0x5B16", "sjvif 0x20 = 0x7E74", "sjvis 0x20 = 0x8048", "sjvit 0x20 = 0x806F", "sjyhv 0x20 = 0x895E", "sjyia 0x20 = 0x8077", "sjymr 0x20 = 0x8B6C", "sjyrn 0x20 = 0x8064", "sk 0x20 = 0x5C39", "skn 0x20 = 0x5C3B", "skr 0x20 = 0x541B", "slb 0x20 = 0x531D", "sllv 0x20 = 0x5C62", "slmbc 0x20 = 0x9824", "slmc 0x20 = 0x5331", "slmy 0x20 = 0x532A", "slmyz 0x20 = 0x5C5D", "slo 0x20 = 0x81E5", "slorr 0x20 = 0x81E8", "slqmc 0x20 = 0x8CFE", "slsl 0x20 = 0x81E3", "slsll 0x20 = 0x81E6", "sm 0x20 = 0x5201", "smblb 0x20 = 0x5E1A", "smbt 0x20 = 0x76E3", "smg 0x20 = 0x5321", "smig 0x20 = 0x5C4B", "smmri 0x20 = 0x5C0B", "smnp 0x20 = 0x5C4D", "smr 0x20 = 0x53F8", "smv 0x20 = 0x9577", "sndd 0x20 = 0x5B71", "snlr 0x20 = 0x5C59", "so 0x20 = 0x5C3A", "somr 0x20 = 0x533C", "sonl 0x20 = 0x9139", "sorc 0x20 = 0x54AB", "sp 0x20 = 0x5C3C", "spd 0x20 = 0x531C", "sphaf 0x20 = 0x9D4B", "sphh 0x20 = 0x5322", "spp 0x20 = 0x5C41", "sqnl 0x20 = 0x90A3", "sqsf 0x20 = 0x99AC", "sr 0x20 = 0x53F5", "srbt 0x20 = 0x76EC", "srbuu 0x20 = 0x8997", "srf 0x20 = 0x7104", "srhaf 0x20 = 0x9DD7", "srhafz 0x20 = 0x9D58", "srhafzz 0x20 = 0x9D8B", "srhg 0x20 = 0x8056", "srhne 0x20 = 0x6BC6", "srks 0x20 = 0x52AD", "srlb 0x20 = 0x5C4C", "srmbc 0x20 = 0x9835", "srmln 0x20 = 0x750C", "srnl 0x20 = 0x90B5", "srnlz 0x20 = 0x90E1", "srno 0x20 = 0x6B50", "srp 0x20 = 0x615D", "srrj 0x20 = 0x5330", "srrr 0x20 = 0x5340", "srsl 0x20 = 0x5372", "srtq 0x20 = 0x7FA4", "srye 0x20 = 0x657A", "srytj 0x20 = 0x8F9F", "ss 0x20 = 0x5DE8", "ssf 0x20 = 0x71DB", "sskll 0x20 = 0x81E9", "sslii 0x20 = 0x87B6", "ssr 0x20 = 0x5C40", "ssu 0x20 = 0x51F9", "stkr 0x20 = 0x533F", "stqq 0x20 = 0x7FBC", "stt 0x20 = 0x5C4F", "stv 0x20 = 0x5C55", "su 0x20 = 0x5DF1", "suf 0x20 = 0x7199", "sug 0x20 = 0x5C46", "suhaf 0x20 = 0x9D8C", "suhu 0x20 = 0x5155", "sund 0x20 = 0x5C58", "sunl 0x20 = 0x9094", "suok 0x20 = 0x6539", "sup 0x20 = 0x5FCC", "sut 0x20 = 0x5F02", "suu 0x20 = 0x5C48", "suv 0x20 = 0x5980", "suvz 0x20 = 0x5A90", "suz 0x20 = 0x5DF2", "svhaf 0x20 = 0x9DA0", "svnl 0x20 = 0x90FE", "sw 0x20 = 0x5C47", "swbt 0x20 = 0x9E7D", "swbuu 0x20 = 0x89BD", "swc 0x20 = 0x9452", "swl 0x20 = 0x5323", "syamo 0x20 = 0x7FE8", "sybjj 0x20 = 0x7FEC", "sycsh 0x20 = 0x7FC2", "sydhe 0x20 = 0x7FCD", "syha 0x20 = 0x7FD2", "syhaf 0x20 = 0x7FF5", "syhn 0x20 = 0x531F", "syhqo 0x20 = 0x7FD0", "syhqu 0x20 = 0x6BE3", "syikk 0x20 = 0x7FC7", "sykoo 0x20 = 0x7FDC", "syl 0x20 = 0x7FC0", "sym 0x20 = 0x7FBE", "symbc 0x20 = 0x9828", "syog 0x20 = 0x7FDF", "syohh 0x20 = 0x7FCF", "syonk 0x20 = 0x7FED", "sypr 0x20 = 0x7FD1", "sysy 0x20 = 0x7FBD", "syt 0x20 = 0x7FBF", "sytj 0x20 = 0x5C56", "syuce 0x20 = 0x7FEA", "sywtc 0x20 = 0x7FFC", "syyjj 0x20 = 0x7FF4", "syyoj 0x20 = 0x7FE0", "syyrb 0x20 = 0x7FEF", "syyrf 0x20 = 0x7FDE", "syyt 0x20 = 0x7FCC", "syytv 0x20 = 0x7FE3", "syytz 0x20 = 0x7FCB", "t 0x20 = 0x5EFF", "ta 0x20 = 0x6614", "taa 0x20 = 0x83D6", "tab 0x20 = 0x840C", "tabu 0x20 = 0x843A", "tadhe 0x20 = 0x76B5", "tagi 0x20 = 0x8494", "tahaf 0x20 = 0x9D72", "tahml 0x20 = 0x65AE", "taiu 0x20 = 0x8507", "taj 0x20 = 0x8349", "tak 0x20 = 0x83AB", "taka 0x20 = 0x66AE", "takb 0x20 = 0x5E55", "takf 0x20 = 0x9A40", "takg 0x20 = 0x5893", "takp 0x20 = 0x6155", "takq 0x20 = 0x6479", "taks 0x20 = 0x52DF", "taln 0x20 = 0x5252", "tan 0x20 = 0x83DB", "tanb 0x20 = 0x8551", "tang 0x20 = 0x85FA", "tanp 0x20 = 0x8544", "tanw 0x20 = 0x862D", "taos 0x20 = 0x8443", "tapp 0x20 = 0x83CE", "tapv 0x20 = 0x845B", "tase 0x20 = 0x855E", "tau 0x20 = 0x82AD", "tav 0x20 = 0x831B", "tawe 0x20 = 0x8513", "tbac 0x20 = 0x84C2", "tbau 0x20 = 0x8409", "tbbb 0x20 = 0x84C7", "tbbe 0x20 = 0x8586", "tbbq 0x20 = 0x8563", "tbbr 0x20 = 0x8435", "tbbu 0x20 = 0x858D", "tbbuu 0x20 = 0x89AF", "tbc 0x20 = 0x5178", "tbcn 0x20 = 0x8434", "tbcsh 0x20 = 0x9EFA", "tbcv 0x20 = 0x8621", "tbd 0x20 = 0x83DC", "tbdz 0x20 = 0x69CA", "tbfe 0x20 = 0x85E4", "tbg 0x20 = 0x5851", "tbhaf 0x20 = 0x9DA7", "tbhg 0x20 = 0x85B6", "tbhu 0x20 = 0x85D0", "tbijb 0x20 = 0x9EFC", "tbikk 0x20 = 0x9EFB", "tbjj 0x20 = 0x8477", "tbks 0x20 = 0x52F1", "tbln 0x20 = 0x524D", "tblnz 0x20 = 0x84AF", "tbm 0x20 = 0x82F4", "tbmbc 0x20 = 0x9862", "tbmbcz 0x20 = 0x985C", "tbme 0x20 = 0x8432", "tbmo 0x20 = 0x8499", "tbmr 0x20 = 0x833C", "tbms 0x20 = 0x8387", "tbmw 0x20 = 0x848F", "tbnd 0x20 = 0x83A9", "tbnf 0x20 = 0x714E", "tbnh 0x20 = 0x526A", "tbni 0x20 = 0x84AC", "tbny 0x20 = 0x7FE6", "tbof 0x20 = 0x8521", "tbok 0x20 = 0x6563", "tbos 0x20 = 0x8444", "tbp 0x20 = 0x612C", "tbpr 0x20 = 0x844B", "tbse 0x20 = 0x83D4", "tbtv 0x20 = 0x83F5", "tbu 0x20 = 0x82DC", "tbud 0x20 = 0x851D", "tbuk 0x20 = 0x85C8", "tbun 0x20 = 0x85A1", "tbut 0x20 = 0x841B", "tbuu 0x20 = 0x83A7", "tbv 0x20 = 0x837D", "tbvi 0x20 = 0x7E6D", "tbyj 0x20 = 0x65A0", "tc 0x20 = 0x5171", "tcb 0x20 = 0x671F", "tcbt 0x20 = 0x76CA", "tcg 0x20 = 0x57FA", "tchaf 0x20 = 0x9DBC", "tchafz 0x20 = 0x9DEC", "tchd 0x20 = 0x68FB", "tche 0x20 = 0x5914", "tchml 0x20 = 0x65AF", "tcht 0x20 = 0x8450", "tciy 0x20 = 0x84CA", "tcjwj 0x20 = 0x8F02", "tclmi 0x20 = 0x86EC", "tcno 0x20 = 0x6B3A", "tcnoz 0x20 = 0x6B49", "tcp 0x20 = 0x606D", "tcpz 0x20 = 0x60CE", "tcq 0x20 = 0x62F2", "tcru 0x20 = 0x5DF7", "tcruz 0x20 = 0x838C", "tcsh 0x20 = 0x82AC", "tcvif 0x20 = 0x7DA6", "tcwm 0x20 = 0x914B", "tcyg 0x20 = 0x9EC8", "tcyj 0x20 = 0x65A2", "tcymr 0x20 = 0x8AC5", "tcz 0x20 = 0x83F3", "tdb 0x20 = 0x8326", "tdbb 0x20 = 0x8540", "tdbk 0x20 = 0x84DB", "tdbn 0x20 = 0x83BF", "tdbu 0x20 = 0x8459", "tdci 0x20 = 0x83D8", "tdd 0x20 = 0x83FB", "tdhaf 0x20 = 0x9DCB", "tdhl 0x20 = 0x83E5", "tdj 0x20 = 0x8309", "tdk 0x20 = 0x82B5", "tdlc 0x20 = 0x85FE", "tdlo 0x20 = 0x850C", "tdm 0x20 = 0x82EF", "tdmq 0x20 = 0x8466", "tdnl 0x20 = 0x9134", "tdoo 0x20 = 0x840A", "tdr 0x20 = 0x8395", "tdsr 0x20 = 0x85F2", "tdw 0x20 = 0x83C4", "tdwf 0x20 = 0x8430", "teah 0x20 = 0x8569", "tebm 0x20 = 0x83F9", "tec 0x20 = 0x947F", "ted 0x20 = 0x83AF", "tede 0x20 = 0x83E0", "tefh 0x20 = 0x838E", "tege 0x20 = 0x8506", "tehr 0x20 = 0x843D", "tehrz 0x20 = 0x843F", "tehu 0x20 = 0x8390", "tehv 0x20 = 0x848E", "tehw 0x20 = 0x85E9", "teib 0x20 = 0x84B2", "teii 0x20 = 0x8584", "teiv 0x20 = 0x8497", "tekv 0x20 = 0x84C5", "tem 0x20 = 0x8333", "temf 0x20 = 0x85B8", "temj 0x20 = 0x840D", "temjz 0x20 = 0x85EB", "temr 0x20 = 0x83CF", "tene 0x20 = 0x8388", "teod 0x20 = 0x84A4", "teom 0x20 = 0x8643", "teon 0x20 = 0x854D", "teot 0x20 = 0x849E", "terd 0x20 = 0x85FB", "tesd 0x20 = 0x8556", "tesr 0x20 = 0x83EC", "tess 0x20 = 0x83C3", "tesu 0x20 = 0x8303", "tett 0x20 = 0x84F1", "tewb 0x20 = 0x8545", "tewt 0x20 = 0x8580", "teyb 0x20 = 0x8583", "teye 0x20 = 0x850B", "teyv 0x20 = 0x832B", "tf 0x20 = 0x82C2", "tfaj 0x20 = 0x850A", "tfb 0x20 = 0x83A6", "tfbk 0x20 = 0x853D", "tfbn 0x20 = 0x8437", "tff 0x20 = 0x83FC", "tfff 0x20 = 0x85C0", "tfkc 0x20 = 0x8631", "tfku 0x20 = 0x864C", "tfmc 0x20 = 0x85A0", "tfmu 0x20 = 0x832A", "tfnl 0x20 = 0x9140", "tfou 0x20 = 0x83E4", "tg 0x20 = 0x828F", "tgb 0x20 = 0x82D2", "tgbuu 0x20 = 0x89C0", "tgce 0x20 = 0x83F1", "tgcnf 0x20 = 0x9BD7", "tgdi 0x20 = 0x5C0D", "tgeno 0x20 = 0x7FA8", "tgf 0x20 = 0x7F94", "tgftk 0x20 = 0x7FB9", "tgg 0x20 = 0x8325", "tggi 0x20 = 0x8451", "tggiz 0x20 = 0x84FA", "tggu 0x20 = 0x8558", "tghaf 0x20 = 0x9E1B", "tghg 0x20 = 0x7F9E", "tghm 0x20 = 0x5DEE", "tghni 0x20 = 0x98CC", "tghqi 0x20 = 0x7FA9", "tghsi 0x20 = 0x7FB2", "tghu 0x20 = 0x7F8C", "tgif 0x20 = 0x7207", "tgii 0x20 = 0x85DD", "tgine 0x20 = 0x7F95", "tgit 0x20 = 0x84CB", "tgje 0x20 = 0x8554", "tgji 0x20 = 0x84FB", "tgk 0x20 = 0x7F8E", "tgks 0x20 = 0x52F8", "tglln 0x20 = 0x7F9B", "tgmbc 0x20 = 0x9874", "tgmmo 0x20 = 0x7FA1", "tgni 0x20 = 0x85B5", "tgnl 0x20 = 0x9144", "tgno 0x20 = 0x6B61", "tgnoz 0x20 = 0x7F91", "tgnozz 0x20 = 0x83B0", "tgobo 0x20 = 0x81E1", "tgomv 0x20 = 0x990A", "tgow 0x20 = 0x8594", "tgp 0x20 = 0x6059", "tgpm 0x20 = 0x837A", "tgpz 0x20 = 0x6201", "tgrg 0x20 = 0x85B9", "tgsk 0x20 = 0x851C", "tgte 0x20 = 0x85A3", "tgtr 0x20 = 0x5584", "tgv 0x20 = 0x59DC", "tgwc 0x20 = 0x85DA", "tgyv 0x20 = 0x863E", "thaf 0x20 = 0x8526", "thafz 0x20 = 0x8624", "thag 0x20 = 0x845F", "thai 0x20 = 0x83C2", "thau 0x20 = 0x8469", "thbh 0x20 = 0x864B", "thbk 0x20 = 0x8581", "thbu 0x20 = 0x9996", "thcn 0x20 = 0x85F0", "thda 0x20 = 0x842B", "thdb 0x20 = 0x8571", "thde 0x20 = 0x8590", "thdf 0x20 = 0x8429", "thdh 0x20 = 0x83DE", "thdhz 0x20 = 0x855B", "thdm 0x20 = 0x84A9", "thdn 0x20 = 0x8389", "thds 0x20 = 0x83A0", "thdv 0x20 = 0x840E", "thdvz 0x20 = 0x85D2", "thdw 0x20 = 0x8543", "ther 0x20 = 0x8316", "they 0x20 = 0x82F3", "thgf 0x20 = 0x85B0", "thhaf 0x20 = 0x9D9C", "thhc 0x20 = 0x8566", "thhd 0x20 = 0x853E", "thhe 0x20 = 0x85DC", "thhj 0x20 = 0x8406", "thi 0x20 = 0x8490", "thj 0x20 = 0x828A", "thjd 0x20 = 0x5B7D", "thjdz 0x20 = 0x8331", "thje 0x20 = 0x846E", "thjg 0x20 = 0x8463", "thjgz 0x20 = 0x83D9", "thjo 0x20 = 0x8EA0", "thk 0x20 = 0x82BA", "thkb 0x20 = 0x854E", "thlb 0x20 = 0x842D", "thlf 0x20 = 0x860C", "thll 0x20 = 0x8306", "thmb 0x20 = 0x862C", "thml 0x20 = 0x82B9", "thmr 0x20 = 0x8329", "thne 0x20 = 0x829F", "thni 0x20 = 0x8283", "thoe 0x20 = 0x8567", "thok 0x20 = 0x8587", "thokz 0x20 = 0x85E2", "thol 0x20 = 0x84F9", "thon 0x20 = 0x8605", "thonz 0x20 = 0x8347", "thoo 0x20 = 0x84CF", "thooz 0x20 = 0x84F0", "thoozz 0x20 = 0x84D7", "thoozzz 0x20 = 0x84EF", "thoq 0x20 = 0x844E", "thqi 0x20 = 0x83AA", "thqo 0x20 = 0x82F5", "thqu 0x20 = 0x82BC", "thrj 0x20 = 0x859B", "thsb 0x20 = 0x8439", "thsbz 0x20 = 0x83FA", "thse 0x20 = 0x8491", "thsk 0x20 = 0x8582", "thsu 0x20 = 0x8530", "thup 0x20 = 0x84A0", "thvi 0x20 = 0x8636", "thwp 0x20 = 0x8525", "thwpz 0x20 = 0x84D6", "thxc 0x20 = 0x85C7", "thxf 0x20 = 0x856E", "thxo 0x20 = 0x8438", "thye 0x20 = 0x84B0", "tiav 0x20 = 0x83A8", "tibi 0x20 = 0x84AA", "tice 0x20 = 0x837E", "tidq 0x20 = 0x85E6", "tidr 0x20 = 0x8611", "tidy 0x20 = 0x863C", "tih 0x20 = 0x8302", "tihaf 0x20 = 0x9DF7", "tihc 0x20 = 0x8546", "tihm 0x20 = 0x83E7", "tihr 0x20 = 0x8474", "tihrz 0x20 = 0x84A7", "tihs 0x20 = 0x837F", "tihv 0x20 = 0x8473", "tiih 0x20 = 0x8518", "tij 0x20 = 0x8319", "tijb 0x20 = 0x8386", "tije 0x20 = 0x838D", "tikf 0x20 = 0x848D", "tikk 0x20 = 0x8307", "tikt 0x20 = 0x83BD", "tilo 0x20 = 0x83EE", "tilr 0x20 = 0x84CE", "tims 0x20 = 0x85CF", "tino 0x20 = 0x829D", "tip 0x20 = 0x61DF", "tipd 0x20 = 0x862A", "tipf 0x20 = 0x85E8", "tipz 0x20 = 0x8285", "tir 0x20 = 0x82D4", "titb 0x20 = 0x84C6", "titc 0x20 = 0x8595", "titf 0x20 = 0x8517", "tixf 0x20 = 0x85A6", "tixp 0x20 = 0x850D", "tj 0x20 = 0x5345", "tjam 0x20 = 0x977C", "tjamo 0x20 = 0x97AE", "tjapv 0x20 = 0x97A8", "tjau 0x20 = 0x9776", "tjav 0x20 = 0x978E", "tjavf 0x20 = 0x97C5", "tjb 0x20 = 0x82BE", "tjbd 0x20 = 0x8378", "tjbj 0x20 = 0x8433", "tjbm 0x20 = 0x8413", "tjbmz 0x20 = 0x977B", "tjck 0x20 = 0x8456", "tjcn 0x20 = 0x85ED", "tjcr 0x20 = 0x84C9", "tjdhe 0x20 = 0x9781", "tjdj 0x20 = 0x977A", "tjds 0x20 = 0x8467", "tje 0x20 = 0x82B0", "tjea 0x20 = 0x979C", "tjef 0x20 = 0x863B", "tjfb 0x20 = 0x9798", "tjfbr 0x20 = 0x979D", "tjfq 0x20 = 0x977D", "tjgg 0x20 = 0x978B", "tjgr 0x20 = 0x978A", "tjgwc 0x20 = 0x97C7", "tjhd 0x20 = 0x9782", "tjhdf 0x20 = 0x97A6", "tjhhj 0x20 = 0x979E", "tjhml 0x20 = 0x9773", "tjii 0x20 = 0x84F4", "tjip 0x20 = 0x8559", "tjjcm 0x20 = 0x979A", "tjjj 0x20 = 0x84D2", "tjjl 0x20 = 0x852A", "tjjv 0x20 = 0x978D", "tjka 0x20 = 0x8457", "tjkp 0x20 = 0x8356", "tjks 0x20 = 0x52D2", "tjlbk 0x20 = 0x9785", "tjllv 0x20 = 0x97BB", "tjlo 0x20 = 0x8410", "tjlv 0x20 = 0x840B", "tjmc 0x20 = 0x8529", "tjme 0x20 = 0x853B", "tjmj 0x20 = 0x976C", "tjmm 0x20 = 0x8431", "tjmn 0x20 = 0x82E7", "tjmnz 0x20 = 0x976A", "tjmo 0x20 = 0x8423", "tjmr 0x20 = 0x83EA", "tjmu 0x20 = 0x839E", "tjmuz 0x20 = 0x9770", "tjmwm 0x20 = 0x97C1", "tjnau 0x20 = 0x9794", "tjnhd 0x20 = 0x97A3", "tjnhe 0x20 = 0x9778", "tjni 0x20 = 0x9783", "tjnkq 0x20 = 0x97AC", "tjnl 0x20 = 0x9777", "tjnlz 0x20 = 0x913F", "tjnu 0x20 = 0x83C0", "tjoa 0x20 = 0x84FF", "tjomk 0x20 = 0x97AD", "tjomn 0x20 = 0x9772", "tjomr 0x20 = 0x9788", "tjop 0x20 = 0x9774", "tjort 0x20 = 0x97A5", "tjpa 0x20 = 0x84CD", "tjpfd 0x20 = 0x97A0", "tjpi 0x20 = 0x976E", "tjpn 0x20 = 0x85B4", "tjpru 0x20 = 0x9784", "tjpt 0x20 = 0x977E", "tjptd 0x20 = 0x97A2", "tjpu 0x20 = 0x8524", "tjpyr 0x20 = 0x97AB", "tjqyt 0x20 = 0x97A1", "tjr 0x20 = 0x82E6", "tjrb 0x20 = 0x846B", "tjrbz 0x20 = 0x9799", "tjrr 0x20 = 0x83C5", "tjshr 0x20 = 0x9780", "tjtc 0x20 = 0x8561", "tjtif 0x20 = 0x97C9", "tjtoe 0x20 = 0x97C4", "tjtor 0x20 = 0x97B3", "tjtq 0x20 = 0x85C6", "tjv 0x20 = 0x834C", "tjvio 0x20 = 0x97BF", "tjvis 0x20 = 0x977F", "tjwj 0x20 = 0x8397", "tjydl 0x20 = 0x97B9", "tjygq 0x20 = 0x97C3", "tjymu 0x20 = 0x97C6", "tk 0x20 = 0x827E", "tkd 0x20 = 0x6AA0", "tkde 0x20 = 0x8531", "tke 0x20 = 0x82C3", "tkhaf 0x20 = 0x9D31", "tkhf 0x20 = 0x837B", "tkhg 0x20 = 0x83A5", "tkhi 0x20 = 0x85F1", "tkhw 0x20 = 0x8555", "tkiu 0x20 = 0x833A", "tkkb 0x20 = 0x8383", "tkld 0x20 = 0x8350", "tklg 0x20 = 0x832C", "tklmi 0x20 = 0x87FC", "tklv 0x20 = 0x83F4", "tkms 0x20 = 0x8342", "tkn 0x20 = 0x8351", "tkni 0x20 = 0x8284", "tknl 0x20 = 0x912D", "tknlz 0x20 = 0x911A", "tknz 0x20 = 0x827D", "tkok 0x20 = 0x84BA", "tkoo 0x20 = 0x83A2", "tkp 0x20 = 0x61BC", "tkpb 0x20 = 0x8515", "tkq 0x20 = 0x64CE", "tkr 0x20 = 0x82E5", "tkrp 0x20 = 0x60F9", "tksqf 0x20 = 0x9A5A", "tksr 0x20 = 0x8304", "tkss 0x20 = 0x8354", "tkymr 0x20 = 0x8B66", "tlbk 0x20 = 0x82F1", "tlio 0x20 = 0x82E1", "tlj 0x20 = 0x9769", "tllmi 0x20 = 0x87F4", "tlln 0x20 = 0x8300", "tllv 0x20 = 0x851E", "tlmc 0x20 = 0x8562", "tlmi 0x20 = 0x8327", "tlmj 0x20 = 0x7F8B", "tlmt 0x20 = 0x85CE", "tlmy 0x20 = 0x83F2", "tlpf 0x20 = 0x71D5", "tlpfz 0x20 = 0x9DF0", "tlqm 0x20 = 0x5807", "tlvk 0x20 = 0x85EA", "tlw 0x20 = 0x82D6", "tlx 0x20 = 0x856D", "tm 0x20 = 0x7518", "tma 0x20 = 0x666E", "tmam 0x20 = 0x8341", "tmbb 0x20 = 0x85B7", "tmbg 0x20 = 0x85FF", "tmbi 0x20 = 0x8576", "tmbiz 0x20 = 0x8553", "tmbl 0x20 = 0x834B", "tmbr 0x20 = 0x8626", "tmbuu 0x20 = 0x89B2", "tmbw 0x20 = 0x857E", "tmcw 0x20 = 0x831C", "tmcwz 0x20 = 0x83A4", "tmd 0x20 = 0x67D0", "tmdm 0x20 = 0x85F6", "tmdz 0x20 = 0x828B", "tmf 0x20 = 0x82A3", "tmfb 0x20 = 0x9EF9", "tmfbz 0x20 = 0x85BE", "tmff 0x20 = 0x849C", "tmfj 0x20 = 0x82F9", "tmfm 0x20 = 0x82E4", "tmgf 0x20 = 0x8638", "tmgn 0x20 = 0x85BD", "tmgnz 0x20 = 0x83FF", "tmhf 0x20 = 0x849D", "tmhg 0x20 = 0x8565", "tmhml 0x20 = 0x65B3", "tmig 0x20 = 0x834E", "tmkp 0x20 = 0x83FE", "tmks 0x20 = 0x52E4", "tmkv 0x20 = 0x8486", "tmlm 0x20 = 0x83EB", "tmmc 0x20 = 0x5176", "tmmi 0x20 = 0x82B8", "tmmo 0x20 = 0x8328", "tmms 0x20 = 0x845D", "tmmu 0x20 = 0x82AB", "tmmv 0x20 = 0x751A", "tmn 0x20 = 0x827C", "tmnh 0x20 = 0x859A", "tmnk 0x20 = 0x833F", "tmnl 0x20 = 0x90AF", "tmnlz 0x20 = 0x911E", "tmnm 0x20 = 0x85A4", "tmnn 0x20 = 0x8322", "tmnr 0x20 = 0x82DB", "tmnv 0x20 = 0x859E", "tmoa 0x20 = 0x85F8", "tmob 0x20 = 0x82EA", "tmoc 0x20 = 0x858B", "tmom 0x20 = 0x8564", "tmoo 0x20 = 0x8381", "tmpt 0x20 = 0x846C", "tmrb 0x20 = 0x849A", "tmrg 0x20 = 0x8601", "tmrr 0x20 = 0x85DE", "tmrt 0x20 = 0x8373", "tmrw 0x20 = 0x844D", "tmtd 0x20 = 0x696D", "tmte 0x20 = 0x53E2", "tmtn 0x20 = 0x834A", "tmto 0x20 = 0x8568", "tmtq 0x20 = 0x83EF", "tmvh 0x20 = 0x82BD", "tmvi 0x20 = 0x84D0", "tmvm 0x20 = 0x8396", "tmwc 0x20 = 0x9EC3", "tmwf 0x20 = 0x8508", "tmwj 0x20 = 0x8548", "tmwm 0x20 = 0x8591", "tmwv 0x20 = 0x847D", "tmy 0x20 = 0x8290", "tmyf 0x20 = 0x852B", "tmymu 0x20 = 0x9F79", "tn 0x20 = 0x828E", "tnai 0x20 = 0x83DF", "tnbc 0x20 = 0x842F", "tnbk 0x20 = 0x85D1", "tnbq 0x20 = 0x85A2", "tncr 0x20 = 0x859D", "tnd 0x20 = 0x8293", "tndf 0x20 = 0x84C0", "tndo 0x20 = 0x83F0", "tndu 0x20 = 0x82A4", "tnef 0x20 = 0x84B8", "tnfd 0x20 = 0x8607", "tnfn 0x20 = 0x858A", "tnfq 0x20 = 0x861A", "tnhd 0x20 = 0x8447", "tnhe 0x20 = 0x82A8", "tnhs 0x20 = 0x827F", "tnhsz 0x20 = 0x84E9", "tnhx 0x20 = 0x840F", "tni 0x20 = 0x82F0", "tnih 0x20 = 0x8305", "tnin 0x20 = 0x82A7", "tninz 0x20 = 0x8324", "tniq 0x20 = 0x8348", "tnir 0x20 = 0x8317", "tniu 0x20 = 0x82D1", "tniv 0x20 = 0x8575", "tnkg 0x20 = 0x839B", "tnkm 0x20 = 0x839A", "tnlc 0x20 = 0x85EC", "tnld 0x20 = 0x84A2", "tnli 0x20 = 0x852D", "tnlm 0x20 = 0x85A9", "tnlp 0x20 = 0x861F", "tnlw 0x20 = 0x852F", "tnmv 0x20 = 0x852C", "tnnc 0x20 = 0x8577", "tnnl 0x20 = 0x9138", "tno 0x20 = 0x82A1", "tnok 0x20 = 0x8475", "tnsj 0x20 = 0x845E", "tntg 0x20 = 0x8647", "tnue 0x20 = 0x83E1", "tnup 0x20 = 0x847E", "tnus 0x20 = 0x8442", "tnyy 0x20 = 0x84BB", "toav 0x20 = 0x8271", "tob 0x20 = 0x82AE", "tobg 0x20 = 0x84AE", "tod 0x20 = 0x8336", "todi 0x20 = 0x82FB", "todz 0x20 = 0x8320", "tof 0x20 = 0x82F6", "tog 0x20 = 0x830C", "togf 0x20 = 0x8549", "togx 0x20 = 0x820A", "togz 0x20 = 0x8411", "togzz 0x20 = 0x96C8", "tohaf 0x20 = 0x9E0F", "tohqu 0x20 = 0x6C0B", "toi 0x20 = 0x8337", "toie 0x20 = 0x8470", "toik 0x20 = 0x832F", "tokf 0x20 = 0x8629", "tokg 0x20 = 0x8599", "tolb 0x20 = 0x84E8", "told 0x20 = 0x84E7", "toll 0x20 = 0x82A5", "toma 0x20 = 0x8588", "tomb 0x20 = 0x83D5", "tombz 0x20 = 0x8625", "tomd 0x20 = 0x837C", "tomg 0x20 = 0x8343", "tomgz 0x20 = 0x834F", "tomi 0x20 = 0x82D3", "tomm 0x20 = 0x82A2", "tomn 0x20 = 0x82A9", "tomo 0x20 = 0x859F", "tomr 0x20 = 0x8377", "tomrz 0x20 = 0x84BC", "tomrzz 0x20 = 0x8345", "ton 0x20 = 0x829E", "tonk 0x20 = 0x8454", "tono 0x20 = 0x6B4E", "tooe 0x20 = 0x84CC", "toog 0x20 = 0x96E3", "toogz 0x20 = 0x839D", "took 0x20 = 0x861E", "toom 0x20 = 0x8445", "toos 0x20 = 0x838B", "top 0x20 = 0x82B1", "toqb 0x20 = 0x84A8", "tord 0x20 = 0x8446", "tos 0x20 = 0x82F2", "tose 0x20 = 0x8460", "totf 0x20 = 0x856A", "touk 0x20 = 0x849B", "towy 0x20 = 0x8393", "toyr 0x20 = 0x84D3", "tp 0x20 = 0x82AF", "tpa 0x20 = 0x8340", "tpfd 0x20 = 0x83CA", "tph 0x20 = 0x82FE", "tphh 0x20 = 0x82B4", "tpi 0x20 = 0x828D", "tpib 0x20 = 0x8461", "tpiz 0x20 = 0x82B6", "tpko 0x20 = 0x85BF", "tpmw 0x20 = 0x8514", "tpou 0x20 = 0x8404", "tpp 0x20 = 0x8298", "tppp 0x20 = 0x854A", "tpr 0x20 = 0x82DF", "tpru 0x20 = 0x82DE", "tprz 0x20 = 0x830D", "tptd 0x20 = 0x8449", "tpu 0x20 = 0x829A", "tpyv 0x20 = 0x8639", "tq 0x20 = 0x7F8A", "tqapv 0x20 = 0x7FAF", "tqcsh 0x20 = 0x7F92", "tqda 0x20 = 0x85C9", "tqdb 0x20 = 0x85D5", "tqfh 0x20 = 0x838F", "tqhaf 0x20 = 0x9DE8", "tqhdw 0x20 = 0x7FB3", "tqhne 0x20 = 0x7F96", "tqhpm 0x20 = 0x7F9D", "tqhr 0x20 = 0x8440", "tqib 0x20 = 0x84B1", "tqice 0x20 = 0x7FA7", "tqihr 0x20 = 0x7FAC", "tqij 0x20 = 0x7FA2", "tqik 0x20 = 0x83DD", "tqixe 0x20 = 0x7FBB", "tqjm 0x20 = 0x8527", "tqjmn 0x20 = 0x7F9C", "tqjmu 0x20 = 0x7FA6", "tqjtc 0x20 = 0x7FB5", "tqka 0x20 = 0x8436", "tqkd 0x20 = 0x84C1", "tqkn 0x20 = 0x7FA0", "tqkq 0x20 = 0x83F6", "tqlw 0x20 = 0x83D7", "tqmb 0x20 = 0x83C1", "tqmbb 0x20 = 0x7FBA", "tqmhf 0x20 = 0x7FB1", "tqmvm 0x20 = 0x7FA5", "tqo 0x20 = 0x8299", "tqog 0x20 = 0x84F7", "tqomi 0x20 = 0x7F9A", "tqomn 0x20 = 0x7FAD", "tqomo 0x20 = 0x7FB7", "tqpu 0x20 = 0x83E2", "tqqo 0x20 = 0x8374", "tqsyy 0x20 = 0x7FD4", "tqumf 0x20 = 0x7FB0", "tqwj 0x20 = 0x8600", "tqyt 0x20 = 0x83C8", "tqywm 0x20 = 0x7FB6", "trhr 0x20 = 0x8392", "trjd 0x20 = 0x83CB", "trji 0x20 = 0x857A", "trjl 0x20 = 0x8604", "trmr 0x20 = 0x8557", "trnl 0x20 = 0x912F", "trnlz 0x20 = 0x9100", "trog 0x20 = 0x84F6", "trok 0x20 = 0x656C", "tron 0x20 = 0x8376", "trrg 0x20 = 0x96DA", "trrj 0x20 = 0x8547", "trrr 0x20 = 0x8648", "trrs 0x20 = 0x843C", "trse 0x20 = 0x846D", "trsj 0x20 = 0x847A", "trup 0x20 = 0x82E0", "tseo 0x20 = 0x85C2", "tsey 0x20 = 0x8619", "tsfi 0x20 = 0x851A", "tsh 0x20 = 0x8280", "tshr 0x20 = 0x82D5", "tsic 0x20 = 0x857B", "tsip 0x20 = 0x85EF", "tsipz 0x20 = 0x8375", "tsiq 0x20 = 0x857C", "tsj 0x20 = 0x8338", "tsja 0x20 = 0x8635", "tsjd 0x20 = 0x8617", "tsje 0x20 = 0x83C6", "tsk 0x20 = 0x829B", "tskr 0x20 = 0x8399", "tsle 0x20 = 0x83E3", "tsll 0x20 = 0x831E", "tsmi 0x20 = 0x8541", "tsmt 0x20 = 0x85CD", "tsmv 0x20 = 0x8407", "tsp 0x20 = 0x61C3", "tspz 0x20 = 0x82E8", "tsrf 0x20 = 0x8512", "tsrj 0x20 = 0x859C", "tsrr 0x20 = 0x84F2", "tss 0x20 = 0x82E3", "tsu 0x20 = 0x8291", "tsyg 0x20 = 0x85CB", "tsyh 0x20 = 0x84FC", "tt 0x20 = 0x5E76", "ttbn 0x20 = 0x8465", "ttcf 0x20 = 0x85C4", "ttcg 0x20 = 0x8623", "ttcgz 0x20 = 0x8633", "ttgb 0x20 = 0x5193", "ttgf 0x20 = 0x84D4", "ttgi 0x20 = 0x85B1", "ttgm 0x20 = 0x84AB", "tthaf 0x20 = 0x9DC1", "tthafz 0x20 = 0x9D67", "tti 0x20 = 0x4E3C", "ttjd 0x20 = 0x861C", "ttlm 0x20 = 0x84F3", "ttm 0x20 = 0x4E26", "ttmbc 0x20 = 0x9829", "ttmc 0x20 = 0x8401", "ttmln 0x20 = 0x74F6", "ttmv 0x20 = 0x845A", "ttnau 0x20 = 0x8275", "ttnl 0x20 = 0x90F1", "ttshi 0x20 = 0x5231", "ttt 0x20 = 0x8353", "ttub 0x20 = 0x84B4", "ttvb 0x20 = 0x861B", "ttwli 0x20 = 0x8832", "ttxc 0x20 = 0x84B9", "ttz 0x20 = 0x4E95", "ttzz 0x20 = 0x534C", "tub 0x20 = 0x6714", "tuirm 0x20 = 0x9998", "tujt 0x20 = 0x8634", "tuu 0x20 = 0x8301", "tvff 0x20 = 0x856C", "tvfh 0x20 = 0x84B6", "tvfi 0x20 = 0x846F", "tvfm 0x20 = 0x8452", "tvft 0x20 = 0x860A", "tvfu 0x20 = 0x855D", "tvfy 0x20 = 0x8520", "tvhl 0x20 = 0x858C", "tvi 0x20 = 0x6221", "tvid 0x20 = 0x85E5", "tvidz 0x20 = 0x5B73", "tvif 0x20 = 0x9DBF", "tvii 0x20 = 0x8332", "tvip 0x20 = 0x6148", "tvis 0x20 = 0x82ED", "tvjr 0x20 = 0x83C7", "tvks 0x20 = 0x52D8", "tvlk 0x20 = 0x834D", "tvmg 0x20 = 0x838A", "tvmi 0x20 = 0x8523", "tvmiz 0x20 = 0x8585", "tvmw 0x20 = 0x8620", "tvne 0x20 = 0x83C9", "tvno 0x20 = 0x6B41", "tvr 0x20 = 0x8339", "tvrf 0x20 = 0x8560", "tvrq 0x20 = 0x8498", "tvvv 0x20 = 0x844C", "tvvw 0x20 = 0x83D1", "tvyj 0x20 = 0x659F", "tw 0x20 = 0x66F2", "twa 0x20 = 0x66F9", "twbbu 0x20 = 0x77A2", "twbi 0x20 = 0x8806", "twbmn 0x20 = 0x750D", "twbmp 0x20 = 0x85A8", "twbni 0x20 = 0x5922", "twbo 0x20 = 0x8E89", "twboe 0x20 = 0x8609", "twboi 0x20 = 0x858E", "twcb 0x20 = 0x8394", "twdi 0x20 = 0x5C0A", "twfu 0x20 = 0x8528", "twhd 0x20 = 0x83CC", "twik 0x20 = 0x7337", "twim 0x20 = 0x852E", "twk 0x20 = 0x8335", "twks 0x20 = 0x83AE", "twkz 0x20 = 0x5960", "twla 0x20 = 0x85AF", "twlb 0x20 = 0x842C", "twlg 0x20 = 0x863F", "twli 0x20 = 0x8511", "twlii 0x20 = 0x8824", "twln 0x20 = 0x85C5", "twlnz 0x20 = 0x862E", "twlp 0x20 = 0x85E3", "twmmv 0x20 = 0x8FB2", "twmrt 0x20 = 0x8C4A", "twmv 0x20 = 0x8468", "two 0x20 = 0x82EC", "twp 0x20 = 0x8478", "twr 0x20 = 0x8334", "twtq 0x20 = 0x84FD", "twvf 0x20 = 0x8502", "twwf 0x20 = 0x8646", "twwg 0x20 = 0x8632", "twww 0x20 = 0x85DF", "twyi 0x20 = 0x82FA", "twz 0x20 = 0x82D7", "txc 0x20 = 0x517C", "tybb 0x20 = 0x8482", "tybbz 0x20 = 0x8596", "tybg 0x20 = 0x863A", "tybo 0x20 = 0x85C3", "tybp 0x20 = 0x8622", "tybs 0x20 = 0x84A1", "tycb 0x20 = 0x850F", "tyck 0x20 = 0x832D", "tycu 0x20 = 0x8412", "tycv 0x20 = 0x8509", "tydl 0x20 = 0x85AA", "tydo 0x20 = 0x85D7", "tydu 0x20 = 0x85FD", "tyfe 0x20 = 0x83FD", "tygq 0x20 = 0x8598", "tygv 0x20 = 0x85B3", "tyhc 0x20 = 0x860B", "tyhj 0x20 = 0x84EC", "tyhn 0x20 = 0x82C0", "tyhs 0x20 = 0x82B3", "tyjj 0x20 = 0x84EE", "tyk 0x20 = 0x82A0", "tylm 0x20 = 0x82B7", "tymh 0x20 = 0x8589", "tymo 0x20 = 0x84EB", "tymp 0x20 = 0x8308", "tynb 0x20 = 0x84EA", "tyoe 0x20 = 0x85D9", "tyoj 0x20 = 0x8403", "typm 0x20 = 0x8516", "typp 0x20 = 0x85D8", "typt 0x20 = 0x8606", "tyr 0x20 = 0x82EB", "tyra 0x20 = 0x85F7", "tyrb 0x20 = 0x84BF", "tyre 0x20 = 0x8578", "tyrez 0x20 = 0x850E", "tyrl 0x20 = 0x8500", "tyrn 0x20 = 0x8476", "tyrp 0x20 = 0x85A7", "tyrv 0x20 = 0x85F9", "tyrvz 0x20 = 0x8618", "tysd 0x20 = 0x8479", "tysk 0x20 = 0x851F", "tysm 0x20 = 0x8640", "tyso 0x20 = 0x8519", "tysy 0x20 = 0x83F8", "tyt 0x20 = 0x82D9", "tyta 0x20 = 0x843B", "tytg 0x20 = 0x856B", "tytj 0x20 = 0x8398", "tytp 0x20 = 0x858F", "tytr 0x20 = 0x83E9", "tytrz 0x20 = 0x849F", "tytv 0x20 = 0x83E8", "tyv 0x20 = 0x8292", "tyvg 0x20 = 0x8579", "tyvo 0x20 = 0x8344", "tyvp 0x20 = 0x83A3", "tyvv 0x20 = 0x8352", "tyvw 0x20 = 0x84C4", "tywi 0x20 = 0x84FE", "tywv 0x20 = 0x84D1", "tyx 0x20 = 0x85BA", "tyyb 0x20 = 0x85E1", "tyyo 0x20 = 0x8627", "u 0x20 = 0x5C71", "uahu 0x20 = 0x5D4B", "uamh 0x20 = 0x5D35", "uamo 0x20 = 0x5D3C", "uapp 0x20 = 0x5D11", "uapv 0x20 = 0x5D51", "uav 0x20 = 0x5CCE", "ubb 0x20 = 0x5D29", "ubcn 0x20 = 0x5D31", "ubln 0x20 = 0x527B", "ublnz 0x20 = 0x526C", "ubm 0x20 = 0x5CA8", "ubmbc 0x20 = 0x9853", "ubmr 0x20 = 0x5CD2", "ubnl 0x20 = 0x9145", "ubno 0x20 = 0x6B42", "ubsd 0x20 = 0x5D22", "ubtu 0x20 = 0x5D17", "ubuu 0x20 = 0x5CF4", "uc 0x20 = 0x5D1F", "ucno 0x20 = 0x5D94", "ucor 0x20 = 0x5CEA", "ucwa 0x20 = 0x5D92", "udci 0x20 = 0x5D27", "udhe 0x20 = 0x5CA5", "udoo 0x20 = 0x5D0D", "udsyg 0x20 = 0x7CF6", "udw 0x20 = 0x5D20", "udyg 0x20 = 0x5D40", "ufb 0x20 = 0x5CED", "ufdq 0x20 = 0x5D99", "uffd 0x20 = 0x5DB8", "uffr 0x20 = 0x5DC6", "uffs 0x20 = 0x5D97", "ufgi 0x20 = 0x5DC0", "ugce 0x20 = 0x5D1A", "ugdi 0x20 = 0x5CD9", "uggi 0x20 = 0x5D36", "uggu 0x20 = 0x5DA2", "ugno 0x20 = 0x5D01", "uh 0x20 = 0x5315", "uha 0x20 = 0x5CB6", "uhag 0x20 = 0x5D32", "uhdj 0x20 = 0x5D59", "uhdp 0x20 = 0x5D4A", "uhdv 0x20 = 0x5D23", "uhdw 0x20 = 0x5D93", "uhej 0x20 = 0x5CF0", "uher 0x20 = 0x5CC9", "uherz 0x20 = 0x5CC8", "uhhj 0x20 = 0x5D25", "uhhw 0x20 = 0x5D67", "uhi 0x20 = 0x5D6C", "uhk 0x20 = 0x5C86", "uhkb 0x20 = 0x5DA0", "uhmb 0x20 = 0x5DCB", "uhml 0x20 = 0x5C93", "uhni 0x20 = 0x5D50", "uhoo 0x20 = 0x5D77", "uhoq 0x20 = 0x5D42", "uhpa 0x20 = 0x5D0F", "uhqi 0x20 = 0x5CE8", "uhrf 0x20 = 0x5D68", "uhrj 0x20 = 0x5DAD", "uhuc 0x20 = 0x5DD1", "uhud 0x20 = 0x5D72", "uhvi 0x20 = 0x5DCD", "uhxc 0x20 = 0x5DBC", "uiav 0x20 = 0x5D00", "uice 0x20 = 0x5CFB", "uihr 0x20 = 0x5D45", "uihs 0x20 = 0x5CF8", "uihv 0x20 = 0x5D34", "uiih 0x20 = 0x5D7E", "uijb 0x20 = 0x5CEC", "uilr 0x20 = 0x5D63", "uip 0x20 = 0x9B2F", "ujc 0x20 = 0x5CA4", "ujcc 0x20 = 0x5DD4", "ujcm 0x20 = 0x5D06", "ujcr 0x20 = 0x5D71", "ujd 0x20 = 0x6AF1", "uje 0x20 = 0x5C90", "ujfd 0x20 = 0x7CF1", "ujjl 0x20 = 0x5D84", "ujkp 0x20 = 0x5CD4", "ujlmi 0x20 = 0x8825", "ujlo 0x20 = 0x5D28", "ujmf 0x20 = 0x5D07", "ujmrt 0x20 = 0x8C50", "ujp 0x20 = 0x5CAE", "ujr 0x20 = 0x5CB5", "ujv 0x20 = 0x5CD6", "uk 0x20 = 0x51F6", "ukb 0x20 = 0x5CDF", "ukcf 0x20 = 0x5D9A", "ukg 0x20 = 0x5CDA", "ukhk 0x20 = 0x5DBD", "ukhu 0x20 = 0x5147", "ukjwj 0x20 = 0x8F0B", "ukkb 0x20 = 0x5D24", "uklv 0x20 = 0x5D26", "ukmr 0x20 = 0x5D0E", "ukn 0x20 = 0x5CD3", "ukoo 0x20 = 0x5CFD", "ukpb 0x20 = 0x5D7D", "uks 0x20 = 0x5C74", "ul 0x20 = 0x5C6E", "ulbk 0x20 = 0x5C9F", "ulln 0x20 = 0x5CAA", "ullv 0x20 = 0x5D81", "ulw 0x20 = 0x5CAB", "umam 0x20 = 0x5CD8", "umbc 0x20 = 0x5D38", "umbl 0x20 = 0x8011", "umblz 0x20 = 0x5CCF", "umbs 0x20 = 0x5D80", "umf 0x20 = 0x70AD", "umfm 0x20 = 0x5CAF", "umgg 0x20 = 0x5D16", "umig 0x20 = 0x5CCC", "umli 0x20 = 0x86A9", "ummj 0x20 = 0x5CB8", "ummr 0x20 = 0x5CFF", "ummu 0x20 = 0x5C8F", "umnc 0x20 = 0x5D7F", "umnn 0x20 = 0x5CDB", "umnr 0x20 = 0x5CA2", "umoo 0x20 = 0x8C73", "umr 0x20 = 0x5CA9", "umrt 0x20 = 0x8C48", "umt 0x20 = 0x5C8D", "umto 0x20 = 0x5DA1", "umtq 0x20 = 0x5D0B", "umu 0x20 = 0x5C7C", "umua 0x20 = 0x5D9C", "umvh 0x20 = 0x5C88", "unbq 0x20 = 0x5DB0", "unhe 0x20 = 0x5C8C", "unhez 0x20 = 0x5C8B", "unii 0x20 = 0x5D79", "unmu 0x20 = 0x5CD7", "unmuz 0x20 = 0x5CDE", "unot 0x20 = 0x5D9D", "unqd 0x20 = 0x5D65", "unri 0x20 = 0x5DC9", "uog 0x20 = 0x5D14", "uogb 0x20 = 0x5DC2", "uogbz 0x20 = 0x96DF", "uogf 0x20 = 0x5D95", "uogs 0x20 = 0x5DB2", "uoic 0x20 = 0x5DBA", "uoll 0x20 = 0x5C95", "uomb 0x20 = 0x5D19", "uomi 0x20 = 0x5CAD", "uomn 0x20 = 0x5C91", "uomnz 0x20 = 0x5C92", "uomnzz 0x20 = 0x5D33", "uomo 0x20 = 0x5DAE", "uomr 0x20 = 0x5CC7", "uomrz 0x20 = 0x5CC6", "uomrzz 0x20 = 0x5D62", "uon 0x20 = 0x5C79", "uos 0x20 = 0x5C9D", "upa 0x20 = 0x5CCB", "uphh 0x20 = 0x5C89", "upko 0x20 = 0x5DB7", "upr 0x20 = 0x5CA3", "uqmb 0x20 = 0x5D1D", "uqog 0x20 = 0x5D8A", "urji 0x20 = 0x5DAF", "urog 0x20 = 0x5D89", "urrk 0x20 = 0x5DD6", "urrs 0x20 = 0x5D3F", "urup 0x20 = 0x5CB7", "ushi 0x20 = 0x5C7B", "ushr 0x20 = 0x5CA7", "usjr 0x20 = 0x5D0C", "uskr 0x20 = 0x5CEE", "usrr 0x20 = 0x5D87", "uss 0x20 = 0x5CA0", "usu 0x20 = 0x5C7A", "usuu 0x20 = 0x5D1B", "usya 0x20 = 0x5D8D", "usyh 0x20 = 0x5D7A", "utav 0x20 = 0x5DB1", "utbuu 0x20 = 0x89AC", "utcw 0x20 = 0x5D37", "utgi 0x20 = 0x5DAC", "utgit 0x20 = 0x8C54", "utgm 0x20 = 0x5D6F", "uthn 0x20 = 0x51F1", "uthni 0x20 = 0x98BD", "uthv 0x20 = 0x5DD5", "utik 0x20 = 0x7343", "utln 0x20 = 0x5274", "utmbc 0x20 = 0x9857", "utmd 0x20 = 0x5DAA", "utmo 0x20 = 0x5D4C", "utmv 0x20 = 0x5D41", "utnau 0x20 = 0x8277", "utnl 0x20 = 0x9146", "utok 0x20 = 0x6573", "utrg 0x20 = 0x5DCF", "utvi 0x20 = 0x5D6B", "utwa 0x20 = 0x5D86", "utwi 0x20 = 0x5D9F", "utwv 0x20 = 0x5DA9", "uu 0x20 = 0x51FA", "uuce 0x20 = 0x5D55", "uummf 0x20 = 0x795F", "uuu 0x20 = 0x8294", "uuuu 0x20 = 0x833B", "uuz 0x20 = 0x8278", "uuzz 0x20 = 0x5C7E", "uvii 0x20 = 0x5E7D", "uvis 0x20 = 0x5CB0", "uvmi 0x20 = 0x5D88", "uvvw 0x20 = 0x5D30", "uwjr 0x20 = 0x5D2E", "uwl 0x20 = 0x5CAC", "uwlb 0x20 = 0x5D4E", "uwlj 0x20 = 0x5DA7", "uwly 0x20 = 0x5DB5", "uwp 0x20 = 0x5D3D", "uybb 0x20 = 0x5D39", "uybk 0x20 = 0x5DD8", "uybp 0x20 = 0x5DC3", "uykh 0x20 = 0x5D43", "uykm 0x20 = 0x5D7C", "uyoj 0x20 = 0x5D12", "uyrb 0x20 = 0x5D69", "uyrd 0x20 = 0x5D1E", "uyrn 0x20 = 0x5D49", "uysd 0x20 = 0x5D3A", "uyt 0x20 = 0x5CA6", "uyti 0x20 = 0x5DC7", "uytj 0x20 = 0x5D82", "uytjz 0x20 = 0x5CF7", "uyvo 0x20 = 0x5CD0", "v 0x20 = 0x5973", "vaa 0x20 = 0x5A3C", "vabu 0x20 = 0x5AA2", "vahu 0x20 = 0x5A9A", "vam 0x20 = 0x59B2", "vamh 0x20 = 0x5A78", "vamo 0x20 = 0x5A9E", "vand 0x20 = 0x5AFB", "vawe 0x20 = 0x5ADA", "vbac 0x20 = 0x5AC7", "vbbe 0x20 = 0x5B21", "vbbr 0x20 = 0x5AA7", "vbd 0x20 = 0x5A47", "vbgr 0x20 = 0x5A64", "vbhg 0x20 = 0x5A6C", "vbhx 0x20 = 0x5ACD", "vbm 0x20 = 0x59D0", "vbme 0x20 = 0x5A9B", "vbmr 0x20 = 0x59DB", "vbou 0x20 = 0x5AB1", "vbt 0x20 = 0x59CD", "vbuu 0x20 = 0x5A0A", "vbv 0x20 = 0x5A1E", "vci 0x20 = 0x5990", "vcnh 0x20 = 0x5A23", "vcsh 0x20 = 0x59A2", "vdj 0x20 = 0x59BA", "vdks 0x20 = 0x52E6", "vdl 0x20 = 0x5A15", "vdlc 0x20 = 0x5B3E", "vdlk 0x20 = 0x5AE9", "vdln 0x20 = 0x527F", "vdnl 0x20 = 0x911B", "ve 0x20 = 0x5974", "vebt 0x20 = 0x76DD", "veks 0x20 = 0x52AA", "velb 0x20 = 0x5E11", "veln 0x20 = 0x525D", "vemr 0x20 = 0x782E", "ven 0x20 = 0x5F29", "vend 0x20 = 0x5B65", "vep 0x20 = 0x6012", "veq 0x20 = 0x62CF", "vesqf 0x20 = 0x99D1", "vfa 0x20 = 0x66EB", "vfamo 0x20 = 0x7DF9", "vfaph 0x20 = 0x7DC6", "vfapp 0x20 = 0x7DC4", "vfase 0x20 = 0x7E53", "vfawe 0x20 = 0x7E35", "vfbb 0x20 = 0x5AE6", "vfbbb 0x20 = 0x7E0E", "vfbbe 0x20 = 0x7DAC", "vfbbr 0x20 = 0x7DFA", "vfbcv 0x20 = 0x7E93", "vfbd 0x20 = 0x7DB5", "vfbgr 0x20 = 0x7DA2", "vfbhx 0x20 = 0x7E1A", "vfbjj 0x20 = 0x7DF7", "vfbm 0x20 = 0x7D44", "vfbme 0x20 = 0x7DE9", "vfbmr 0x20 = 0x7D67", "vfbnd 0x20 = 0x7D92", "vfbof 0x20 = 0x7E29", "vfbr 0x20 = 0x7D45", "vfbsh 0x20 = 0x7D7C", "vfbtu 0x20 = 0x7DB1", "vfbtv 0x20 = 0x7DB2", "vfbu 0x20 = 0x77D5", "vfbuh 0x20 = 0x7DF2", "vfbuo 0x20 = 0x7E49", "vfbv 0x20 = 0x7D8F", "vfc 0x20 = 0x947E", "vfcnh 0x20 = 0x7D88", "vfcor 0x20 = 0x7D8C", "vfcsh 0x20 = 0x7D1B", "vfcwa 0x20 = 0x7E52", "vfd 0x20 = 0x6B12", "vfdbu 0x20 = 0x7DD7", "vfdd 0x20 = 0x7D9D", "vfdi 0x20 = 0x7D02", "vfdl 0x20 = 0x7D80", "vfdm 0x20 = 0x7D4A", "vfdmq 0x20 = 0x7DEF", "vfdwf 0x20 = 0x7DF4", "vfeed 0x20 = 0x7E14", "vfeee 0x20 = 0x7DB4", "vff 0x20 = 0x5A52", "vffb 0x20 = 0x7D83", "vffdq 0x20 = 0x7E57", "vfff 0x20 = 0x7DC2", "vffh 0x20 = 0x7D17", "vffmu 0x20 = 0x7D56", "vffou 0x20 = 0x7DA3", "vffq 0x20 = 0x7D46", "vfgce 0x20 = 0x7DBE", "vfgg 0x20 = 0x7D53", "vfggu 0x20 = 0x7E5E", "vfgi 0x20 = 0x7D36", "vfgr 0x20 = 0x7D50", "vfgrc 0x20 = 0x7E88", "vfgwc 0x20 = 0x7E8C", "vfh 0x20 = 0x5999", "vfhab 0x20 = 0x7DBF", "vfhae 0x20 = 0x7DDA", "vfhaf 0x20 = 0x9E1E", "vfhafz 0x20 = 0x9DE5", "vfhbu 0x20 = 0x7D1E", "vfhce 0x20 = 0x7E4C", "vfhdv 0x20 = 0x7DCC", "vfhdw 0x20 = 0x7E59", "vfheq 0x20 = 0x7D73", "vfher 0x20 = 0x7D61", "vfhey 0x20 = 0x7D42", "vfhgf 0x20 = 0x7E81", "vfhhj 0x20 = 0x7DBC", "vfhjd 0x20 = 0x7D51", "vfhje 0x20 = 0x7DDE", "vfhjg 0x20 = 0x7D9E", "vfhjgz 0x20 = 0x7DDF", "vfhkb 0x20 = 0x7E51", "vfhon 0x20 = 0x7D4E", "vfhoo 0x20 = 0x7E31", "vfhooz 0x20 = 0x7E30", "vfhor 0x20 = 0x7DB9", "vfhqo 0x20 = 0x7D29", "vfhsb 0x20 = 0x7DE8", "vfhsk 0x20 = 0x7E73", "vfhskz 0x20 = 0x7D9F", "vfhuc 0x20 = 0x7E98", "vfhup 0x20 = 0x7D19", "vfhwp 0x20 = 0x7E3D", "vfhyo 0x20 = 0x7D69", "vfibi 0x20 = 0x7E1B", "vfihr 0x20 = 0x7DD8", "vfiih 0x20 = 0x7E3F", "vfij 0x20 = 0x7D68", "vfije 0x20 = 0x7D7F", "vfik 0x20 = 0x7D01", "vfikk 0x20 = 0x7D31", "vfiku 0x20 = 0x7D0C", "vfikz 0x20 = 0x7D0E", "vfir 0x20 = 0x7D3F", "vfirm 0x20 = 0x7DCE", "vfitc 0x20 = 0x7E8A", "vfiwg 0x20 = 0x7E8F", "vfjbc 0x20 = 0x7E1D", "vfjbd 0x20 = 0x7D8D", "vfjii 0x20 = 0x7E33", "vfjip 0x20 = 0x7E50", "vfjka 0x20 = 0x7DD2", "vfjlo 0x20 = 0x7DC1", "vfjlv 0x20 = 0x7DC0", "vfjmc 0x20 = 0x7E7D", "vfjmcz 0x20 = 0x7E2F", "vfjmf 0x20 = 0x7D9C", "vfjmn 0x20 = 0x7D35", "vfjmo 0x20 = 0x7DBB", "vfjmu 0x20 = 0x7D84", "vfjnu 0x20 = 0x7DA9", "vfjoa 0x20 = 0x7E2E", "vfjp 0x20 = 0x7D3D", "vfjqr 0x20 = 0x7E16", "vfjrr 0x20 = 0x7DB0", "vfjyj 0x20 = 0x7E21", "vfk 0x20 = 0x5971", "vfkcf 0x20 = 0x7E5A", "vfki 0x20 = 0x7D18", "vfkiu 0x20 = 0x7D71", "vfkkb 0x20 = 0x7D7A", "vfkmr 0x20 = 0x7DBA", "vfkni 0x20 = 0x7D08", "vflbk 0x20 = 0x7D3B", "vflgm 0x20 = 0x7E63", "vflll 0x20 = 0x7D03", "vflln 0x20 = 0x7D3C", "vfllv 0x20 = 0x7E37", "vflmc 0x20 = 0x7E62", "vflmi 0x20 = 0x883B", "vflmy 0x20 = 0x7DCB", "vflw 0x20 = 0x7D2C", "vflwl 0x20 = 0x7D33", "vflwp 0x20 = 0x7D4F", "vflx 0x20 = 0x7E61", "vfm 0x20 = 0x7D05", "vfma 0x20 = 0x7D54", "vfmbb 0x20 = 0x7E7B", "vfmbe 0x20 = 0x7E8B", "vfmbk 0x20 = 0x7DDB", "vfmd 0x20 = 0x7D06", "vfmf 0x20 = 0x7D11", "vfmg 0x20 = 0x7D1D", "vfmge 0x20 = 0x7DFB", "vfmhf 0x20 = 0x7E13", "vfmia 0x20 = 0x7E09", "vfmig 0x20 = 0x7D70", "vfmlb 0x20 = 0x7DC9", "vfmlk 0x20 = 0x7D86", "vfmll 0x20 = 0x7D52", "vfmmi 0x20 = 0x7D1C", "vfmmo 0x20 = 0x7D58", "vfmmp 0x20 = 0x7E9A", "vfmn 0x20 = 0x7CFD", "vfmvi 0x20 = 0x7E1F", "vfmvm 0x20 = 0x7D93", "vfmwf 0x20 = 0x7E39", "vfmwl 0x20 = 0x7DEC", "vfn 0x20 = 0x5F4E", "vfnau 0x20 = 0x7D7B", "vfnbq 0x20 = 0x7E72", "vfnd 0x20 = 0x5B7F", "vfng 0x20 = 0x7D10", "vfnhb 0x20 = 0x7E58", "vfnhe 0x20 = 0x7D1A", "vfnii 0x20 = 0x7E48", "vfnin 0x20 = 0x7D13", "vfnkf 0x20 = 0x7E7A", "vfnkg 0x20 = 0x7D8E", "vfnkm 0x20 = 0x7D96", "vfnl 0x20 = 0x7D16", "vfnob 0x20 = 0x7E03", "vfnri 0x20 = 0x7E94", "vfoae 0x20 = 0x7DEE", "vfob 0x20 = 0x7D0D", "vfobo 0x20 = 0x81E0", "vfodi 0x20 = 0x7D28", "vfog 0x20 = 0x7DAD", "vfohh 0x20 = 0x7D3E", "vfoim 0x20 = 0x7E96", "vfok 0x20 = 0x8B8A", "vfoll 0x20 = 0x7D12", "vfoma 0x20 = 0x7E6A", "vfomb 0x20 = 0x7DB8", "vfomg 0x20 = 0x7D5F", "vfomk 0x20 = 0x7DF6", "vfomn 0x20 = 0x7D1F", "vfomnz 0x20 = 0x7DF0", "vfomr 0x20 = 0x7D66", "vfon 0x20 = 0x7D07", "vfonk 0x20 = 0x7DF1", "vfopd 0x20 = 0x7D41", "vfoto 0x20 = 0x7E80", "vfou 0x20 = 0x5A58", "vfp 0x20 = 0x6200", "vfpa 0x20 = 0x7D62", "vfpi 0x20 = 0x7D04", "vfpmm 0x20 = 0x7DEA", "vfpou 0x20 = 0x7DAF", "vfpp 0x20 = 0x7D15", "vfpr 0x20 = 0x7D47", "vfpt 0x20 = 0x7D32", "vfpu 0x20 = 0x7D14", "vfpuu 0x20 = 0x7E10", "vfq 0x20 = 0x6523", "vfqjl 0x20 = 0x7D81", "vfqkd 0x20 = 0x7E25", "vfqmb 0x20 = 0x7DAA", "vfqmc 0x20 = 0x7E3E", "vfqmf 0x20 = 0x7E24", "vfqz 0x20 = 0x59C5", "vfr 0x20 = 0x8F61", "vfrb 0x20 = 0x7D79", "vfrbc 0x20 = 0x7E1C", "vfrhr 0x20 = 0x7D7D", "vfrpa 0x20 = 0x7DE1", "vfrrd 0x20 = 0x7E70", "vfrrj 0x20 = 0x7E5F", "vfrsj 0x20 = 0x7DDD", "vfrxu 0x20 = 0x7E69", "vfshi 0x20 = 0x7D09", "vfshr 0x20 = 0x7D39", "vfshu 0x20 = 0x7D55", "vfsje 0x20 = 0x7DC5", "vfsme 0x20 = 0x7D85", "vfsu 0x20 = 0x7D00", "vfswu 0x20 = 0x7E9C", "vfsyh 0x20 = 0x7E46", "vftak 0x20 = 0x7E38", "vftbk 0x20 = 0x7E56", "vftct 0x20 = 0x7E0A", "vftcw 0x20 = 0x7DE7", "vftgm 0x20 = 0x7E12", "vftgr 0x20 = 0x7E55", "vftlj 0x20 = 0x7DD9", "vftm 0x20 = 0x7D3A", "vftt 0x20 = 0x7D63", "vftwi 0x20 = 0x7E5C", "vftwv 0x20 = 0x7E77", "vftxc 0x20 = 0x7E11", "vfu 0x20 = 0x5DD2", "vfubb 0x20 = 0x7E43", "vfuob 0x20 = 0x7E97", "vfuog 0x20 = 0x7E40", "vfuu 0x20 = 0x7D40", "vfv 0x20 = 0x5B4C", "vfvif 0x20 = 0x7D72", "vfvl 0x20 = 0x7CFE", "vfvne 0x20 = 0x7DA0", "vfvno 0x20 = 0x7DE3", "vfvvd 0x20 = 0x7E45", "vfvvi 0x20 = 0x7E7C", "vfvvw 0x20 = 0x7DC7", "vfw 0x20 = 0x7D30", "vfwd 0x20 = 0x7D91", "vfwgg 0x20 = 0x7E86", "vfwk 0x20 = 0x7D6A", "vfwlg 0x20 = 0x7E99", "vfwlj 0x20 = 0x7E79", "vfwlv 0x20 = 0x7E6F", "vfwot 0x20 = 0x7E15", "vfwp 0x20 = 0x7DE6", "vfwtq 0x20 = 0x7E2A", "vfwvf 0x20 = 0x7E32", "vfyaj 0x20 = 0x7DBD", "vfybb 0x20 = 0x7DE0", "vfybq 0x20 = 0x7E34", "vfybs 0x20 = 0x7E0D", "vfyck 0x20 = 0x7D5E", "vfyg 0x20 = 0x7D38", "vfygq 0x20 = 0x7E68", "vfyhj 0x20 = 0x7E2B", "vfyhr 0x20 = 0x7E0B", "vfyhs 0x20 = 0x7D21", "vfyia 0x20 = 0x7E54", "vfyj 0x20 = 0x7D0F", "vfyjj 0x20 = 0x7E3A", "vfyk 0x20 = 0x7D0B", "vfylr 0x20 = 0x7E7E", "vfyoj 0x20 = 0x7DB7", "vfypt 0x20 = 0x7E91", "vfyrb 0x20 = 0x7E1E", "vfyrd 0x20 = 0x7DA7", "vfyrf 0x20 = 0x7DA1", "vfyrv 0x20 = 0x7E95", "vfyso 0x20 = 0x7E3C", "vfyto 0x20 = 0x7E78", "vfytp 0x20 = 0x7E76", "vfytu 0x20 = 0x7E0C", "vfyub 0x20 = 0x7E2D", "vfyvi 0x20 = 0x7D43", "vfyvo 0x20 = 0x7D6F", "vfywm 0x20 = 0x7E75", "vfywv 0x20 = 0x7E17", "vfyyj 0x20 = 0x7E42", "vgb 0x20 = 0x59CC", "vgce 0x20 = 0x5A48", "vgf 0x20 = 0x710B", "vgg 0x20 = 0x5A03", "vggu 0x20 = 0x5B08", "vgk 0x20 = 0x5958", "vgni 0x20 = 0x5B26", "vgow 0x20 = 0x5B19", "vgr 0x20 = 0x59DE", "vgrg 0x20 = 0x5B2F", "vgrr 0x20 = 0x5B09", "vgrv 0x20 = 0x5AB4", "vgtj 0x20 = 0x5A5E", "vgyhv 0x20 = 0x88DD", "vhab 0x20 = 0x5A42", "vhag 0x20 = 0x5A93", "vhav 0x20 = 0x5B1D", "vhbr 0x20 = 0x59E0", "vhcn 0x20 = 0x5B3C", "vhd 0x20 = 0x59C0", "vhdn 0x20 = 0x5A33", "vhdv 0x20 = 0x5A51", "vhdw 0x20 = 0x5B0F", "vhgu 0x20 = 0x59FA", "vhhj 0x20 = 0x5A62", "vhhw 0x20 = 0x5AB9", "vhi 0x20 = 0x5ABF", "vhiil 0x20 = 0x9109", "vhj 0x20 = 0x5977", "vhjd 0x20 = 0x59DD", "vhjg 0x20 = 0x5A37", "vhjr 0x20 = 0x59E1", "vhk 0x20 = 0x5996", "vhkb 0x20 = 0x5B0C", "vhml 0x20 = 0x59A1", "vhmr 0x20 = 0x59E4", "vhnb 0x20 = 0x59F5", "vhp 0x20 = 0x597C", "vhpa 0x20 = 0x5A5A", "vhqi 0x20 = 0x5A25", "vhqm 0x20 = 0x59D3", "vhs 0x20 = 0x5992", "vhsb 0x20 = 0x5AA5", "vhsk 0x20 = 0x5B13", "vhup 0x20 = 0x5AB3", "vhwp 0x20 = 0x5AB2", "vhxe 0x20 = 0x5AC2", "vhxu 0x20 = 0x5A57", "vhyo 0x20 = 0x59DA", "viav 0x20 = 0x5A18", "vid 0x20 = 0x6A02", "vidi 0x20 = 0x5B24", "vidz 0x20 = 0x69F3", "vie 0x20 = 0x6F3F", "vif 0x20 = 0x7CF8", "vig 0x20 = 0x588F", "vihml 0x20 = 0x65B7", "viik 0x20 = 0x734E", "vij 0x20 = 0x5A00", "vikf 0x20 = 0x5AAF", "viks 0x20 = 0x5E7C", "viksf 0x20 = 0x9D22", "vilb 0x20 = 0x5ADE", "vile 0x20 = 0x5ADD", "vilmi 0x20 = 0x87BF", "viln 0x20 = 0x5299", "vimcw 0x20 = 0x91AC", "vio 0x20 = 0x5E7E", "viok 0x20 = 0x5A2D", "vir 0x20 = 0x59CB", "vis 0x20 = 0x5E7B", "vitc 0x20 = 0x5B1A", "vitf 0x20 = 0x5AEC", "viuh 0x20 = 0x5A0F", "viw 0x20 = 0x757F", "vjbj 0x20 = 0x5A7B", "vjcr 0x20 = 0x5AC6", "vjd 0x20 = 0x59B9", "vje 0x20 = 0x5993", "vjhw 0x20 = 0x5B38", "vjii 0x20 = 0x5AE5", "vjka 0x20 = 0x5A8E", "vjkp 0x20 = 0x59E5", "vjlo 0x20 = 0x5A55", "vjmc 0x20 = 0x5B2A", "vjmf 0x20 = 0x5A43", "vjmm 0x20 = 0x5A97", "vjmo 0x20 = 0x5AC1", "vjmoz 0x20 = 0x5A5D", "vjnu 0x20 = 0x5A49", "vjpn 0x20 = 0x5B23", "vjr 0x20 = 0x59D1", "vjrb 0x20 = 0x5AA9", "vjrj 0x20 = 0x5AF4", "vjrr 0x20 = 0x5A60", "vjv 0x20 = 0x59F2", "vkb 0x20 = 0x59F7", "vkbt 0x20 = 0x76ED", "vkcf 0x20 = 0x5AFD", "vkmr 0x20 = 0x5A4D", "vkms 0x20 = 0x59F1", "vkn 0x20 = 0x59E8", "vkok 0x20 = 0x5AC9", "vl 0x20 = 0x51F5", "vlbk 0x20 = 0x59CE", "vlgm 0x20 = 0x5AFF", "vlhbr 0x20 = 0x56AE", "vlio 0x20 = 0x59D2", "vlllm 0x20 = 0x4E31", "vllmi 0x20 = 0x8801", "vlm 0x20 = 0x723F", "vlmc 0x20 = 0x5B07", "vlmt 0x20 = 0x5B27", "vlok 0x20 = 0x6536", "vlomv 0x20 = 0x9957", "vlw 0x20 = 0x59AF", "vlwl 0x20 = 0x59BD", "vlws 0x20 = 0x5A09", "vlxh 0x20 = 0x59CA", "vlyta 0x20 = 0x97FF", "vm 0x20 = 0x5985", "vmam 0x20 = 0x59EE", "vmbb 0x20 = 0x5B2C", "vmbdi 0x20 = 0x5C07", "vmbs 0x20 = 0x5AEE", "vmbu 0x20 = 0x5B40", "vmbwd 0x20 = 0x5F59", "vmfb 0x20 = 0x5B2D", "vmg 0x20 = 0x58EF", "vmgg 0x20 = 0x5A3E", "vmgow 0x20 = 0x7246", "vmgz 0x20 = 0x598A", "vmhf 0x20 = 0x5AC4", "vmhml 0x20 = 0x65A8", "vmi 0x20 = 0x6215", "vmig 0x20 = 0x59EA", "vmik 0x20 = 0x72C0", "vmj 0x20 = 0x5978", "vmkp 0x20 = 0x5A56", "vmlii 0x20 = 0x883F", "vmlm 0x20 = 0x5A6D", "vmmi 0x20 = 0x5998", "vmmnr 0x20 = 0x7241", "vmmp 0x20 = 0x5B4B", "vmmu 0x20 = 0x59A7", "vmmv 0x20 = 0x5A20", "vmomr 0x20 = 0x7244", "vmpop 0x20 = 0x5F58", "vmt 0x20 = 0x598D", "vmtq 0x20 = 0x7242", "vmv 0x20 = 0x599D", "vmvi 0x20 = 0x5AB7", "vmvm 0x20 = 0x5A19", "vmwf 0x20 = 0x5AD6", "vmwl 0x20 = 0x5A94", "vmyf 0x20 = 0x5AE3", "vmym 0x20 = 0x59C3", "vnau 0x20 = 0x5A29", "vnd 0x20 = 0x597D", "vnf 0x20 = 0x59B3", "vng 0x20 = 0x599E", "vnhd 0x20 = 0x5A83", "vnhs 0x20 = 0x5976", "vnim 0x20 = 0x5B14", "vnin 0x20 = 0x59A4", "vninz 0x20 = 0x59FC", "vnir 0x20 = 0x59F3", "vnkg 0x20 = 0x5A17", "vnlb 0x20 = 0x5AF7", "vnlr 0x20 = 0x5A40", "vnme 0x20 = 0x5F54", "vnmo 0x20 = 0x5F56", "vnmu 0x20 = 0x59FD", "vnob 0x20 = 0x5A7F", "vnot 0x20 = 0x5B01", "vnyi 0x20 = 0x5A39", "vnyy 0x20 = 0x5ACB", "vob 0x20 = 0x59A0", "voge 0x20 = 0x5B47", "vogf 0x20 = 0x5AF6", "vohaf 0x20 = 0x9DA8", "voim 0x20 = 0x5B45", "volii 0x20 = 0x8821", "voll 0x20 = 0x598E", "vomg 0x20 = 0x59FE", "vomi 0x20 = 0x59C8", "vomn 0x20 = 0x5997", "vomnz 0x20 = 0x5AAE", "vomo 0x20 = 0x5B10", "vomr 0x20 = 0x59F6", "voq 0x20 = 0x59E9", "vord 0x20 = 0x5AAC", "vort 0x20 = 0x5A95", "votf 0x20 = 0x5AF5", "vpd 0x20 = 0x5979", "vph 0x20 = 0x59BC", "vpi 0x20 = 0x5981", "vpp 0x20 = 0x59A3", "vpr 0x20 = 0x59C1", "vptd 0x20 = 0x5A9F", "vpuu 0x20 = 0x5AB0", "vqj 0x20 = 0x59A6", "vqka 0x20 = 0x5A8B", "vqkd 0x20 = 0x5AC0", "vqmb 0x20 = 0x5A67", "vqmf 0x20 = 0x5ACA", "vqmv 0x20 = 0x5A4A", "vr 0x20 = 0x5982", "vrb 0x20 = 0x5A1F", "vrhaf 0x20 = 0x9D3D", "vrlb 0x20 = 0x5E24", "vrp 0x20 = 0x6055", "vrq 0x20 = 0x6310", "vrrd 0x20 = 0x5B20", "vrrj 0x20 = 0x5B0B", "vrrk 0x20 = 0x5B4D", "vrse 0x20 = 0x5A7D", "vrvif 0x20 = 0x7D6E", "vrvk 0x20 = 0x5A1B", "vryo 0x20 = 0x5A16", "vsei 0x20 = 0x5B4E", "vshaf 0x20 = 0x9DAD", "vshr 0x20 = 0x59B1", "vshu 0x20 = 0x5A13", "vsje 0x20 = 0x5A35", "vskp 0x20 = 0x5AD5", "vsll 0x20 = 0x59EC", "vsmb 0x20 = 0x5A66", "vsp 0x20 = 0x59AE", "vsqf 0x20 = 0x5ABD", "vsql 0x20 = 0x5A1C", "vsrr 0x20 = 0x5AD7", "vss 0x20 = 0x59D6", "vstr 0x20 = 0x5ADF", "vsu 0x20 = 0x5983", "vsyg 0x20 = 0x5B25", "vsyh 0x20 = 0x5AEA", "vtak 0x20 = 0x5AEB", "vtbc 0x20 = 0x5A70", "vtbn 0x20 = 0x5A8A", "vtgk 0x20 = 0x5A84", "vtgr 0x20 = 0x5AF8", "vthg 0x20 = 0x5B1E", "vtkr 0x20 = 0x5A7C", "vtlf 0x20 = 0x5B3F", "vtlo 0x20 = 0x5AE8", "vtm 0x20 = 0x59CF", "vtmc 0x20 = 0x5A38", "vtmcz 0x20 = 0x5AF9", "vtmd 0x20 = 0x5A92", "vtmq 0x20 = 0x5B05", "vtsj 0x20 = 0x5AB6", "vtt 0x20 = 0x59D8", "vttb 0x20 = 0x5ABE", "vtvp 0x20 = 0x5B28", "vtw 0x20 = 0x5A8C", "vtxc 0x20 = 0x5ACC", "vu 0x20 = 0x597E", "vumb 0x20 = 0x5A8F", "vumi 0x20 = 0x5AB8", "vumj 0x20 = 0x5A69", "vuob 0x20 = 0x5B48", "vuog 0x20 = 0x96DD", "vuuk 0x20 = 0x5ABA", "vv 0x20 = 0x597B", "vvf 0x20 = 0x707D", "vvrau 0x20 = 0x9095", "vvv 0x20 = 0x59E6", "vvw 0x20 = 0x753E", "vvwd 0x20 = 0x5DE2", "vwb 0x20 = 0x5AA6", "vwd 0x20 = 0x5A50", "vwg 0x20 = 0x5A0C", "vwhaf 0x20 = 0x9D85", "vwjlo 0x20 = 0x7580", "vwjr 0x20 = 0x5A5F", "vwk 0x20 = 0x59FB", "vwlk 0x20 = 0x5B3D", "vwlv 0x20 = 0x5B1B", "vwot 0x20 = 0x5ABC", "vwvf 0x20 = 0x5AD8", "vwyi 0x20 = 0x59C6", "vyaj 0x20 = 0x5A65", "vybc 0x20 = 0x5A9C", "vycb 0x20 = 0x5AE1", "vyck 0x20 = 0x59E3", "vyfe 0x20 = 0x5A4C", "vyg 0x20 = 0x59B5", "vyhs 0x20 = 0x59A8", "vyia 0x20 = 0x5B02", "vyk 0x20 = 0x598F", "vymr 0x20 = 0x5A2E", "vypd 0x20 = 0x5AED", "vyrf 0x20 = 0x5A5B", "vyrn 0x20 = 0x5A77", "vyrv 0x20 = 0x5B43", "vyso 0x20 = 0x5AD9", "vytj 0x20 = 0x5ADC", "vytr 0x20 = 0x5A44", "vyvi 0x20 = 0x59B6", "vywm 0x20 = 0x5B17", "w 0x20 = 0x7530", "wb 0x20 = 0x80C3", "wbmbc 0x20 = 0x9852", "wbp 0x20 = 0x611A", "wc 0x20 = 0x56DB", "wcb 0x20 = 0x56E7", "wchaf 0x20 = 0x9DF6", "wche 0x20 = 0x755F", "wd 0x20 = 0x679C", "wdhv 0x20 = 0x8901", "wdmbc 0x20 = 0x9846", "wdmq 0x20 = 0x570D", "wdnin 0x20 = 0x5925", "wdye 0x20 = 0x6564", "wdz 0x20 = 0x56F0", "weee 0x20 = 0x7577", "wfdq 0x20 = 0x7584", "wfgr 0x20 = 0x9EE0", "wfgwc 0x20 = 0x9EF7", "wfhbu 0x20 = 0x9ED5", "wfiih 0x20 = 0x9EF2", "wfik 0x20 = 0x9ED8", "wfip 0x20 = 0x9ED3", "wfjbc 0x20 = 0x9EF0", "wfjnu 0x20 = 0x9EE6", "wfklv 0x20 = 0x9EE4", "wfmvu 0x20 = 0x9ED6", "wfmwg 0x20 = 0x9EEB", "wfncr 0x20 = 0x9EF5", "wfnin 0x20 = 0x9EDF", "wfomn 0x20 = 0x9ED4", "wfort 0x20 = 0x9EED", "wfou 0x20 = 0x5708", "wfq 0x20 = 0x7554", "wftm 0x20 = 0x9EDA", "wftmv 0x20 = 0x9EEE", "wfuu 0x20 = 0x9EDC", "wfvis 0x20 = 0x9EDD", "wfyr 0x20 = 0x9EDE", "wfyrf 0x20 = 0x9EE5", "wfyta 0x20 = 0x9EEF", "wg 0x20 = 0x91CC", "wgdi 0x20 = 0x7564", "wgf 0x20 = 0x9ED1", "wgfg 0x20 = 0x58A8", "wgg 0x20 = 0x7566", "wgit 0x20 = 0x5714", "wgni 0x20 = 0x7587", "wgnin 0x20 = 0x91CE", "wgrv 0x20 = 0x5712", "wgtj 0x20 = 0x5709", "whd 0x20 = 0x56F7", "wher 0x20 = 0x7565", "whjg 0x20 = 0x757D", "wice 0x20 = 0x756F", "wihaf 0x20 = 0x9E00", "wijb 0x20 = 0x5703", "wik 0x20 = 0x754E", "wino 0x20 = 0x6B5C", "wirm 0x20 = 0x570B", "wiye 0x20 = 0x6580", "wj 0x20 = 0x6BCB", "wjbuc 0x20 = 0x8CAB", "wjhaf 0x20 = 0x9E05", "wjii 0x20 = 0x5718", "wjnu 0x20 = 0x7579", "wjok 0x20 = 0x6581", "wjr 0x20 = 0x56FA", "wjz 0x20 = 0x6BCC", "wk 0x20 = 0x56E0", "wkb 0x20 = 0x56FF", "wkmr 0x20 = 0x7578", "wkno 0x20 = 0x6B2D", "wkp 0x20 = 0x6069", "wks 0x20 = 0x7537", "wl 0x20 = 0x7532", "wlbi 0x20 = 0x79BA", "wlbm 0x20 = 0x7F5D", "wlbnd 0x20 = 0x7F66", "wlbuc 0x20 = 0x8CB7", "wlcwa 0x20 = 0x7F7E", "wldd 0x20 = 0x7F67", "wleee 0x20 = 0x7F6C", "wlgg 0x20 = 0x7F63", "wlggy 0x20 = 0x7F6B", "wlgrv 0x20 = 0x778F", "wlgtj 0x20 = 0x776A", "wlhaf 0x20 = 0x9D28", "wlhhw 0x20 = 0x7F76", "wlhio 0x20 = 0x7F5B", "wlibp 0x20 = 0x7F77", "wlipf 0x20 = 0x7F86", "wlirm 0x20 = 0x7F6D", "wljbm 0x20 = 0x7F6E", "wljka 0x20 = 0x7F72", "wljr 0x20 = 0x7F5F", "wlklv 0x20 = 0x7F68", "wlll 0x20 = 0x753D", "wllmy 0x20 = 0x7F6A", "wlmc 0x20 = 0x571A", "wlmf 0x20 = 0x7F58", "wlmfn 0x20 = 0x7F7D", "wlmym 0x20 = 0x7F61", "wlnih 0x20 = 0x7F5E", "wlooo 0x20 = 0x773E", "wlpli 0x20 = 0x8700", "wlpog 0x20 = 0x7F79", "wlrb 0x20 = 0x7F65", "wlrup 0x20 = 0x7F60", "wlsfi 0x20 = 0x7F7B", "wlsqf 0x20 = 0x7F75", "wltab 0x20 = 0x7F83", "wltjf 0x20 = 0x7F88", "wltjr 0x20 = 0x7F87", "wlvff 0x20 = 0x7F89", "wlvfg 0x20 = 0x7F85", "wlvvd 0x20 = 0x7F7A", "wlwp 0x20 = 0x7F73", "wlwtq 0x20 = 0x7F7C", "wlwwk 0x20 = 0x5970", "wlyaj 0x20 = 0x7F69", "wlyg 0x20 = 0x7F5C", "wlymr 0x20 = 0x8A48", "wlyrn 0x20 = 0x7F70", "wlytg 0x20 = 0x7F7F", "wme 0x20 = 0x7548", "wml 0x20 = 0x7540", "wmmr 0x20 = 0x5704", "wmn 0x20 = 0x753A", "wmso 0x20 = 0x5702", "wmv 0x20 = 0x754F", "wnd 0x20 = 0x56DD", "wng 0x20 = 0x5885", "wo 0x20 = 0x56DA", "wohh 0x20 = 0x755B", "wok 0x20 = 0x754B", "woll 0x20 = 0x754C", "womb 0x20 = 0x5707", "womi 0x20 = 0x56F9", "wop 0x20 = 0x56EE", "wopz 0x20 = 0x6141", "wp 0x20 = 0x601D", "wphh 0x20 = 0x56EB", "wpmm 0x20 = 0x7547", "wpp 0x20 = 0x6BD7", "wppz 0x20 = 0x6BD8", "wpu 0x20 = 0x56E4", "wqhaf 0x20 = 0x9DDD", "wqmb 0x20 = 0x570A", "wr 0x20 = 0x56DE", "wrbc 0x20 = 0x5713", "wryw 0x20 = 0x5716", "wsvws 0x20 = 0x5B32", "wtc 0x20 = 0x7570", "wtq 0x20 = 0x7562", "wumb 0x20 = 0x570C", "wv 0x20 = 0x56E1", "wvfd 0x20 = 0x571E", "wvif 0x20 = 0x7D2F", "wvsyy 0x20 = 0x7FFE", "wwhaf 0x20 = 0x9E13", "wwlj 0x20 = 0x571B", "wwlv 0x20 = 0x571C", "www 0x20 = 0x757E", "wwwd 0x20 = 0x6AD0", "wwwf 0x20 = 0x7E8D", "wwwg 0x20 = 0x58D8", "wwwm 0x20 = 0x758A", "wwwr 0x20 = 0x7928", "wwwu 0x20 = 0x7F4D", "wwwwg 0x20 = 0x58E8", "wyhn 0x20 = 0x56E5", "wyi 0x20 = 0x6BCD", "wymr 0x20 = 0x5701", "wyv 0x20 = 0x753F", "y 0x20 = 0x535C", "yad 0x20 = 0x684C", "yahag 0x20 = 0x97F9", "yahej 0x20 = 0x97F8", "yai 0x20 = 0x6220", "yaj 0x20 = 0x5353", "yamh 0x20 = 0x903F", "yano 0x20 = 0x6B46", "yaog 0x20 = 0x66B9", "yapv 0x20 = 0x904F", "yarbc 0x20 = 0x97FB", "yashr 0x20 = 0x97F6", "yasy 0x20 = 0x9062", "yatlk 0x20 = 0x97FA", "yatoe 0x20 = 0x9800", "yav 0x20 = 0x9000", "ybaht 0x20 = 0x9ADC", "ybbr 0x20 = 0x904E", "ybgr 0x20 = 0x9031", "ybgrz 0x20 = 0x51CB", "ybhaf 0x20 = 0x9D99", "ybhg 0x20 = 0x671B", "ybhne 0x20 = 0x6BC3", "ybhq 0x20 = 0x727D", "ybhu 0x20 = 0x9088", "ybik 0x20 = 0x737B", "ybjj 0x20 = 0x904B", "yblb 0x20 = 0x5E1D", "yblbr 0x20 = 0x557B", "ybmcu 0x20 = 0x777F", "ybmln 0x20 = 0x7517", "ybmlnz 0x20 = 0x750B", "ybmo 0x20 = 0x906F", "ybmr 0x20 = 0x8FF5", "ybnl 0x20 = 0x9117", "ybno 0x20 = 0x6B4A", "ybnoz 0x20 = 0x6B33", "ybog 0x20 = 0x96E2", "ybok 0x20 = 0x6575", "ybou 0x20 = 0x9059", "ybr 0x20 = 0x8FE5", "ybsd 0x20 = 0x51C8", "ybuc 0x20 = 0x8C9E", "ybye 0x20 = 0x6572", "ybyhs 0x20 = 0x65C1", "ybysp 0x20 = 0x9F8D", "yc 0x20 = 0x516D", "ycbr 0x20 = 0x5546", "ychhj 0x20 = 0x9870", "yck 0x20 = 0x4EA4", "yckz 0x20 = 0x5955", "yclb 0x20 = 0x5E1F", "ycp 0x20 = 0x6207", "ycrhu 0x20 = 0x5157", "ycrhv 0x20 = 0x889E", "yct 0x20 = 0x5F08", "ycz 0x20 = 0x51CE", "ydbuu 0x20 = 0x89AA", "ydhaf 0x20 = 0x9D89", "ydhafz 0x20 = 0x9D90", "ydhhh 0x20 = 0x8668", "ydhml 0x20 = 0x65B0", "ydkni 0x20 = 0x5B70", "ydl 0x20 = 0x901F", "ydlk 0x20 = 0x906B", "ydmq 0x20 = 0x9055", "ydnl 0x20 = 0x90ED", "ydno 0x20 = 0x6B51", "ydog 0x20 = 0x96DC", "ydok 0x20 = 0x6566", "ydokz 0x20 = 0x6579", "ydrrj 0x20 = 0x56B2", "ydw 0x20 = 0x51CD", "ye 0x20 = 0x51B0", "yebu 0x20 = 0x7763", "yec 0x20 = 0x9316", "yefd 0x20 = 0x7CB2", "yefh 0x20 = 0x9024", "yeg 0x20 = 0x58D1", "yelmm 0x20 = 0x97F0", "yeomv 0x20 = 0x9910", "yep 0x20 = 0x60C4", "yeyhv 0x20 = 0x88FB", "yfb 0x20 = 0x900D", "yfd 0x20 = 0x8FF7", "yfdq 0x20 = 0x9074", "yfe 0x20 = 0x53D4", "yfhaf 0x20 = 0x9D81", "yfiku 0x20 = 0x5C31", "yfks 0x20 = 0x52CD", "yfp 0x20 = 0x6191", "yfye 0x20 = 0x654A", "yg 0x20 = 0x4E3B", "ygce 0x20 = 0x51CC", "ygcg 0x20 = 0x9035", "yggu 0x20 = 0x9076", "yghne 0x20 = 0x6BB6", "yghqu 0x20 = 0x6C03", "ygiv 0x20 = 0x893B", "ygmms 0x20 = 0x8667", "ygr 0x20 = 0x8FFC", "ygrv 0x20 = 0x9060", "ygsk 0x20 = 0x9068", "ygtq 0x20 = 0x9054", "yha 0x20 = 0x8FEB", "yhaf 0x20 = 0x9CEA", "yhag 0x20 = 0x9051", "yhbm 0x20 = 0x4EB9", "yhds 0x20 = 0x900F", "yhdv 0x20 = 0x9036", "yhdvz 0x20 = 0x890E", "yhee 0x20 = 0x908D", "yhej 0x20 = 0x9022", "yheq 0x20 = 0x9004", "yhgr 0x20 = 0x9020", "yhgu 0x20 = 0x51BC", "yhhw 0x20 = 0x905B", "yhiv 0x20 = 0x8922", "yhjr 0x20 = 0x9002", "yhju 0x20 = 0x9041", "yhln 0x20 = 0x528C", "yhmbc 0x20 = 0x983B", "yhmbcz 0x20 = 0x984F", "yhmbczz 0x20 = 0x986A", "yhml 0x20 = 0x8FD1", "yhmo 0x20 = 0x907E", "yhmr 0x20 = 0x9005", "yhn 0x20 = 0x4EA2", "yhqo 0x20 = 0x8FED", "yhrr 0x20 = 0x8FFD", "yhs 0x20 = 0x65B9", "yhsb 0x20 = 0x904D", "yhsk 0x20 = 0x9080", "yhsyy 0x20 = 0x7FFD", "yhul 0x20 = 0x8FCE", "yhus 0x20 = 0x908A", "yhv 0x20 = 0x8863", "yhxv 0x20 = 0x88D2", "yhyo 0x20 = 0x9003", "yhyu 0x20 = 0x905E", "yice 0x20 = 0x9021", "yid 0x20 = 0x8FF0", "yif 0x20 = 0x719F", "yifh 0x20 = 0x7385", "yig 0x20 = 0x587E", "yihxo 0x20 = 0x6594", "yijb 0x20 = 0x900B", "yije 0x20 = 0x9011", "yik 0x20 = 0x8FD6", "yikk 0x20 = 0x51B9", "yilwo 0x20 = 0x87A4", "yiohv 0x20 = 0x7388", "yir 0x20 = 0x51B6", "yirv 0x20 = 0x88AC", "yirz 0x20 = 0x8FE8", "yitf 0x20 = 0x906E", "yiw 0x20 = 0x755C", "yiyvi 0x20 = 0x7386", "yj 0x20 = 0x6597", "yjco 0x20 = 0x9083", "yjdl 0x20 = 0x8FA3", "yjhaf 0x20 = 0x9D6B", "yjhec 0x20 = 0x8D1B", "yjhee 0x20 = 0x7AF7", "yjhhh 0x20 = 0x5F70", "yjhoj 0x20 = 0x74E3", "yjihj 0x20 = 0x8FA8", "yjksj 0x20 = 0x8FA6", "yjlv 0x20 = 0x51C4", "yjnl 0x20 = 0x9123", "yjrr 0x20 = 0x902D", "yjvfj 0x20 = 0x8FAE", "yjwj 0x20 = 0x9023", "yjyrj 0x20 = 0x8FAF", "yk 0x20 = 0x6587", "ykanw 0x20 = 0x6595", "ykb 0x20 = 0x8FF6", "ykcf 0x20 = 0x907C", "ykhaf 0x20 = 0x9CFC", "ykhafz 0x20 = 0x9D41", "ykhafzz 0x20 = 0x9DDF", "ykhafzzz 0x20 = 0x9E06", "ykhbm 0x20 = 0x6596", "ykhf 0x20 = 0x9016", "ykhg 0x20 = 0x901B", "ykhsb 0x20 = 0x6592", "ykmbc 0x20 = 0x981D", "ykmhh 0x20 = 0x5F65", "ykmhm 0x20 = 0x7522", "ykmpm 0x20 = 0x658C", "yknl 0x20 = 0x90CA", "ykok 0x20 = 0x6548", "ykp 0x20 = 0x619D", "ykpb 0x20 = 0x9070", "ykpz 0x20 = 0x5FDE", "ykq 0x20 = 0x6489", "ykr 0x20 = 0x541D", "yksr 0x20 = 0x8FE6", "ykvif 0x20 = 0x7D0A", "ykymu 0x20 = 0x9F7E", "ylb 0x20 = 0x5E02", "yle 0x20 = 0x902E", "ylhv 0x20 = 0x8877", "ylm 0x20 = 0x6B62", "ylmc 0x20 = 0x907A", "ylmh 0x20 = 0x6B65", "ylmr 0x20 = 0x9063", "ylnc 0x20 = 0x4EA6", "ylw 0x20 = 0x8FEA", "ym 0x20 = 0x4E0A", "ymb 0x20 = 0x80AF", "ymbuc 0x20 = 0x8D07", "ymbuu 0x20 = 0x89B7", "ymcw 0x20 = 0x8FFA", "ymd 0x20 = 0x8FC2", "ymdhe 0x20 = 0x76BB", "ymdhez 0x20 = 0x76BD", "yme 0x20 = 0x8FD4", "ymfb 0x20 = 0x9087", "ymg 0x20 = 0x8FCB", "ymgdi 0x20 = 0x6B6D", "ymhaf 0x20 = 0x9E07", "ymhqu 0x20 = 0x6C08", "ymihh 0x20 = 0x6B72", "ymje 0x20 = 0x6B67", "ymk 0x20 = 0x8FD7", "ymks 0x20 = 0x52EF", "ymln 0x20 = 0x5277", "ymmbc 0x20 = 0x986B", "ymmp 0x20 = 0x9090", "ymmr 0x20 = 0x8A00", "ymmrz 0x20 = 0x901C", "ymnn 0x20 = 0x51BD", "ymnnz 0x20 = 0x8FFE", "ymno 0x20 = 0x6B54", "ymp 0x20 = 0x6B64", "ympog 0x20 = 0x96CC", "ympz 0x20 = 0x5FD0", "ymrt 0x20 = 0x9017", "ymrw 0x20 = 0x903C", "ymso 0x20 = 0x9010", "ymuoo 0x20 = 0x9F52", "ymvh 0x20 = 0x8FD3", "ymvm 0x20 = 0x9015", "ymvmz 0x20 = 0x51B1", "ymwg 0x20 = 0x51D0", "ymwu 0x20 = 0x9077", "ymy 0x20 = 0x5361", "ynai 0x20 = 0x9038", "ynbq 0x20 = 0x9082", "ynbuc 0x20 = 0x8D0F", "yndf 0x20 = 0x905C", "ynhaf 0x20 = 0x9E01", "ynhb 0x20 = 0x9079", "ynhv 0x20 = 0x88A4", "ynib 0x20 = 0x901A", "ynin 0x20 = 0x8FFB", "ynj 0x20 = 0x8FC5", "ynlmi 0x20 = 0x8803", "ynmbc 0x20 = 0x980F", "ynnl 0x20 = 0x909F", "ynnv 0x20 = 0x88B2", "ynot 0x20 = 0x9086", "yntq 0x20 = 0x7FB8", "ynv 0x20 = 0x5B34", "ynwd 0x20 = 0x81DD", "yobuc 0x20 = 0x8CCC", "yodv 0x20 = 0x8912", "yog 0x20 = 0x9032", "yogz 0x20 = 0x51C6", "yohne 0x20 = 0x6BC5", "yoj 0x20 = 0x8FD5", "yoks 0x20 = 0x52BE", "yoln 0x20 = 0x523B", "yolnz 0x20 = 0x5287", "yombc 0x20 = 0x9826", "yomd 0x20 = 0x9014", "yomi 0x20 = 0x51B7", "yomn 0x20 = 0x903E", "yomr 0x20 = 0x51BE", "yomrz 0x20 = 0x51D4", "yon 0x20 = 0x8FC4", "yonk 0x20 = 0x591C", "yono 0x20 = 0x6B2C", "yooj 0x20 = 0x5352", "yopd 0x20 = 0x8FE4", "yos 0x20 = 0x8FEE", "yp 0x20 = 0x864D", "ypa 0x20 = 0x8FFF", "ypbu 0x20 = 0x7725", "ypbuc 0x20 = 0x8CB2", "ypc 0x20 = 0x922D", "ypd 0x20 = 0x67F4", "ypdz 0x20 = 0x8FC6", "ypg 0x20 = 0x58DF", "yphaf 0x20 = 0x9DFE", "yphafz 0x20 = 0x9E17", "yphen 0x20 = 0x8655", "yphfd 0x20 = 0x8656", "yphu 0x20 = 0x864E", "ypko 0x20 = 0x51DD", "ypks 0x20 = 0x52F4", "yplmi 0x20 = 0x882A", "ypmk 0x20 = 0x9F91", "ypmm 0x20 = 0x4E9B", "ypmmf 0x20 = 0x7961", "ypmmfz 0x20 = 0x9F92", "ypmr 0x20 = 0x7826", "ypmrb 0x20 = 0x9B33", "ypmrz 0x20 = 0x7931", "ypmso 0x20 = 0x8C66", "ypnbg 0x20 = 0x89DC", "ypnwf 0x20 = 0x9B86", "ypobo 0x20 = 0x80D4", "ypomv 0x20 = 0x98FA", "ypph 0x20 = 0x8659", "ypr 0x20 = 0x5470", "yprvk 0x20 = 0x865E", "ypsj 0x20 = 0x807E", "ypsm 0x20 = 0x8650", "ypt 0x20 = 0x8FE3", "yptc 0x20 = 0x9F94", "yptm 0x20 = 0x865B", "yptmc 0x20 = 0x8661", "ypu 0x20 = 0x8FCD", "ypuv 0x20 = 0x888C", "ypvif 0x20 = 0x7D2B", "ypwb 0x20 = 0x819A", "ypwbt 0x20 = 0x76E7", "ypwks 0x20 = 0x865C", "ypwlb 0x20 = 0x6B76", "ypwp 0x20 = 0x616E", "ypyhv 0x20 = 0x8972", "ypyk 0x20 = 0x8654", "ypymr 0x20 = 0x8A3E", "ypymrz 0x20 = 0x8B8B", "ypypp 0x20 = 0x9F98", "yqhl 0x20 = 0x901D", "yqmb 0x20 = 0x51CA", "yr 0x20 = 0x5360", "yramo 0x20 = 0x8ADF", "yranb 0x20 = 0x8B4B", "yranw 0x20 = 0x8B95", "yrapv 0x20 = 0x8B01", "yrav 0x20 = 0x88DB", "yrawe 0x20 = 0x8B3E", "yrbb 0x20 = 0x818F", "yrbgr 0x20 = 0x8ABF", "yrbjj 0x20 = 0x8AE2", "yrbm 0x20 = 0x8A5B", "yrbme 0x20 = 0x8AFC", "yrbmr 0x20 = 0x8A77", "yrbn 0x20 = 0x4EAD", "yrbo 0x20 = 0x8C6A", "yrbou 0x20 = 0x8B20", "yrbp 0x20 = 0x4EB3", "yrbr 0x20 = 0x9AD8", "yrbrz 0x20 = 0x8A57", "yrbsd 0x20 = 0x8ACD", "yrbu 0x20 = 0x4EAE", "yrbuu 0x20 = 0x8998", "yrbuz 0x20 = 0x6BEB", "yrbvk 0x20 = 0x8B11", "yrci 0x20 = 0x8A1F", "yrcru 0x20 = 0x8AAA", "yrcst 0x20 = 0x8AE1", "yrdd 0x20 = 0x8AC3", "yrdhe 0x20 = 0x8A56", "yrdi 0x20 = 0x8A0E", "yrdk 0x20 = 0x8A23", "yrdmq 0x20 = 0x8AF1", "yrdoo 0x20 = 0x8ABA", "yrdwf 0x20 = 0x8AEB", "yrea 0x20 = 0x8ABB", "yrf 0x20 = 0x4EAC", "yrfb 0x20 = 0x8A9A", "yrfbf 0x20 = 0x8B9C", "yrff 0x20 = 0x8AC7", "yrfh 0x20 = 0x8A2C", "yrfq 0x20 = 0x8A4A", "yrgcr 0x20 = 0x8B9F", "yrgdi 0x20 = 0x8A69", "yrgg 0x20 = 0x8A7F", "yrggu 0x20 = 0x8B4A", "yrgni 0x20 = 0x8B78", "yrgp 0x20 = 0x8A8C", "yrgr 0x20 = 0x8A70", "yrgrr 0x20 = 0x8B46", "yrgwc 0x20 = 0x8B80", "yrhag 0x20 = 0x8AFB", "yrhdn 0x20 = 0x8B3B", "yrhds 0x20 = 0x8A98", "yrhdv 0x20 = 0x8AC9", "yrhdw 0x20 = 0x8B52", "yrher 0x20 = 0x8A7B", "yrhg 0x20 = 0x901E", "yrhge 0x20 = 0x8B6D", "yrhgr 0x20 = 0x8AA5", "yrhgu 0x20 = 0x8A75", "yrhhi 0x20 = 0x8B1D", "yrhhj 0x20 = 0x8AC0", "yrhjd 0x20 = 0x8A85", "yrhjg 0x20 = 0x8AC8", "yrhjr 0x20 = 0x8A71", "yrhk 0x20 = 0x8A1E", "yrhkb 0x20 = 0x8B51", "yrhml 0x20 = 0x8A22", "yrhmr 0x20 = 0x8A6C", "yrhmy 0x20 = 0x8A34", "yrhne 0x20 = 0x8A2D", "yrhni 0x20 = 0x8AF7", "yrhor 0x20 = 0x8B57", "yrhp 0x20 = 0x8A17", "yrhpa 0x20 = 0x8AD9", "yrhpm 0x20 = 0x8A46", "yrhqo 0x20 = 0x8A44", "yrhsb 0x20 = 0x8ADE", "yrhsy 0x20 = 0x8B06", "yrhuc 0x20 = 0x8B9A", "yrhv 0x20 = 0x54C0", "yrhwp 0x20 = 0x8B25", "yrhxe 0x20 = 0x8B0F", "yrhxo 0x20 = 0x8ADB", "yrhxu 0x20 = 0x8ABD", "yrhyo 0x20 = 0x8A82", "yrhyu 0x20 = 0x8B15", "yriav 0x20 = 0x8A8F", "yrid 0x20 = 0x8A39", "yrihr 0x20 = 0x8AF4", "yrihs 0x20 = 0x8AA0", "yrii 0x20 = 0x8AD3", "yrijb 0x20 = 0x8AA7", "yrikk 0x20 = 0x8A59", "yriku 0x20 = 0x8A27", "yrine 0x20 = 0x8A60", "yriok 0x20 = 0x8A92", "yripm 0x20 = 0x8A66", "yrir 0x20 = 0x8A52", "yrit 0x20 = 0x8AA1", "yritc 0x20 = 0x8B67", "yritf 0x20 = 0x8B36", "yrj 0x20 = 0x8A08", "yrjbc 0x20 = 0x8B13", "yrjbd 0x20 = 0x8A96", "yrjbj 0x20 = 0x8AF5", "yrjbm 0x20 = 0x8ABC", "yrjhp 0x20 = 0x8A6B", "yrjhw 0x20 = 0x8B85", "yrjip 0x20 = 0x8B53", "yrjka 0x20 = 0x8AF8", "yrjmm 0x20 = 0x8AE0", "yrjp 0x20 = 0x8A51", "yrjr 0x20 = 0x8A41", "yrkb 0x20 = 0x8A74", "yrkf 0x20 = 0x8A7C", "yrkhg 0x20 = 0x8A91", "yrkja 0x20 = 0x8B47", "yrkms 0x20 = 0x8A87", "yrlll 0x20 = 0x8A13", "yrllv 0x20 = 0x8B31", "yrlmy 0x20 = 0x8AB9", "yrln 0x20 = 0x5256", "yrm 0x20 = 0x8A0C", "yrmbs 0x20 = 0x8B23", "yrmd 0x20 = 0x8A0F", "yrmdm 0x20 = 0x8B88", "yrmfj 0x20 = 0x8A55", "yrmhf 0x20 = 0x8B1C", "yrmj 0x20 = 0x8A10", "yrmjk 0x20 = 0x8B40", "yrmll 0x20 = 0x8A76", "yrmln 0x20 = 0x74FF", "yrmmr 0x20 = 0x8A9E", "yrmmv 0x20 = 0x8AAB", "yrmn 0x20 = 0x8A02", "yrmnr 0x20 = 0x8A36", "yrmoo 0x20 = 0x8AA3", "yrmor 0x20 = 0x8AEE", "yrmrw 0x20 = 0x8AE8", "yrmso 0x20 = 0x8AD1", "yrmua 0x20 = 0x8B56", "yrmvh 0x20 = 0x8A1D", "yrmvm 0x20 = 0x8A99", "yrmwf 0x20 = 0x8B24", "yrmwg 0x20 = 0x8AF2", "yrmwj 0x20 = 0x8B5A", "yrmym 0x20 = 0x8A3C", "yrnbk 0x20 = 0x8B82", "yrncr 0x20 = 0x8B6B", "yrnd 0x20 = 0x4EAB", "yrnf 0x20 = 0x70F9", "yrnhb 0x20 = 0x8B4E", "yrnhx 0x20 = 0x8AC2", "yrnib 0x20 = 0x8AA6", "yrnin 0x20 = 0x8A83", "yrnir 0x20 = 0x8A7A", "yrnj 0x20 = 0x8A0A", "yrnkm 0x20 = 0x8A95", "yrnl 0x20 = 0x90E8", "yrnlp 0x20 = 0x8B94", "yrnmu 0x20 = 0x8A6D", "yrnn 0x20 = 0x4EA8", "yrnob 0x20 = 0x8ADD", "yrnot 0x20 = 0x8B49", "yrnqd 0x20 = 0x8B0B", "yrnri 0x20 = 0x8B92", "yrnyi 0x20 = 0x8AB8", "yrob 0x20 = 0x8A25", "yrog 0x20 = 0x8AB0", "yroge 0x20 = 0x8B22", "yrogf 0x20 = 0x8B59", "yrohh 0x20 = 0x8A3A", "yroim 0x20 = 0x8B96", "yroj 0x20 = 0x8A31", "yrok 0x20 = 0x6568", "yromb 0x20 = 0x8AD6", "yromg 0x20 = 0x8A6E", "yromi 0x20 = 0x8A45", "yromn 0x20 = 0x8AED", "yromo 0x20 = 0x8B63", "yromr 0x20 = 0x8B12", "yron 0x20 = 0x8A16", "yronp 0x20 = 0x8AD7", "yrop 0x20 = 0x8A1B", "yros 0x20 = 0x8A50", "yrotf 0x20 = 0x8B55", "yrowy 0x20 = 0x8AA8", "yrpa 0x20 = 0x8A62", "yrpaz 0x20 = 0x8A63", "yrpd 0x20 = 0x8A11", "yrpht 0x20 = 0x8B10", "yrpko 0x20 = 0x8B7A", "yrppa 0x20 = 0x8AE7", "yrpt 0x20 = 0x8A4D", "yrptd 0x20 = 0x8ADC", "yrpu 0x20 = 0x8A30", "yrpuu 0x20 = 0x8B05", "yrqd 0x20 = 0x8A84", "yrqjp 0x20 = 0x8B7F", "yrqmb 0x20 = 0x8ACB", "yrqmc 0x20 = 0x8B2E", "yrqmv 0x20 = 0x8AD8", "yrrrd 0x20 = 0x8B5F", "yrrrj 0x20 = 0x8B42", "yrrrs 0x20 = 0x8AE4", "yrrsj 0x20 = 0x8AFF", "yrru 0x20 = 0x907B", "yrrv 0x20 = 0x8944", "yrrvc 0x20 = 0x8B54", "yrrvk 0x20 = 0x8AA4", "yrrxu 0x20 = 0x8B5D", "yrse 0x20 = 0x9050", "yrshi 0x20 = 0x8A12", "yrshr 0x20 = 0x8A54", "yrsim 0x20 = 0x8B45", "yrsip 0x20 = 0x8A8D", "yrsje 0x20 = 0x8ACF", "yrsjj 0x20 = 0x8B98", "yrsmg 0x20 = 0x8A86", "yrsmr 0x20 = 0x8A5E", "yrsrr 0x20 = 0x8B33", "yrss 0x20 = 0x8A4E", "yrsu 0x20 = 0x8A18", "yrsup 0x20 = 0x8A8B", "yrsya 0x20 = 0x8B35", "yrsyh 0x20 = 0x8B2C", "yrsyj 0x20 = 0x8B18", "yrsyy 0x20 = 0x8A61", "yrtak 0x20 = 0x8B28", "yrtav 0x20 = 0x8B6A", "yrtby 0x20 = 0x8B7E", "yrtct 0x20 = 0x8B1A", "yrtgi 0x20 = 0x8B70", "yrtkr 0x20 = 0x8AFE", "yrtlf 0x20 = 0x8B8C", "yrtlm 0x20 = 0x8B39", "yrtm 0x20 = 0x8A4C", "yrtma 0x20 = 0x8B5C", "yrtmc 0x20 = 0x8AC6", "yrtmd 0x20 = 0x8B00", "yrtmq 0x20 = 0x8B41", "yrtmv 0x20 = 0x8AF6", "yrtoe 0x20 = 0x8B77", "yrtq 0x20 = 0x8A73", "yrtrg 0x20 = 0x8B99", "yrtt 0x20 = 0x8A81", "yrttb 0x20 = 0x8B1B", "yrtwi 0x20 = 0x8B50", "yrtwv 0x20 = 0x8B68", "yrtxc 0x20 = 0x8B19", "yrtyv 0x20 = 0x8B0A", "yru 0x20 = 0x4E69", "yrumb 0x20 = 0x8AEF", "yruu 0x20 = 0x8A58", "yruz 0x20 = 0x8A15", "yrvc 0x20 = 0x9078", "yrvio 0x20 = 0x8B4F", "yrvis 0x20 = 0x8A4F", "yrwb 0x20 = 0x8B02", "yrwce 0x20 = 0x8B16", "yrwd 0x20 = 0x8AB2", "yrwlj 0x20 = 0x8B6F", "yrwp 0x20 = 0x8AF0", "yrwww 0x20 = 0x8B84", "yry 0x20 = 0x8A03", "yrybb 0x20 = 0x8AE6", "yrybk 0x20 = 0x8B9E", "yrybs 0x20 = 0x8B17", "yrycb 0x20 = 0x8B2B", "yrycbz 0x20 = 0x8B2A", "yryck 0x20 = 0x8A68", "yrydk 0x20 = 0x8B48", "yrye 0x20 = 0x6541", "yryfd 0x20 = 0x8B0E", "yryfe 0x20 = 0x8AD4", "yryg 0x20 = 0x8A3B", "yryhs 0x20 = 0x8A2A", "yryia 0x20 = 0x8B58", "yryjj 0x20 = 0x8B30", "yrykh 0x20 = 0x8AFA", "yrylr 0x20 = 0x8B74", "yrymp 0x20 = 0x8A3F", "yryoj 0x20 = 0x8AB6", "yrypd 0x20 = 0x8B3C", "yrypm 0x20 = 0x8B14", "yrypmz 0x20 = 0x8B2F", "yrypu 0x20 = 0x8AD5", "yryr 0x20 = 0x8A40", "yryrb 0x20 = 0x8B1E", "yryrd 0x20 = 0x8AC4", "yryrf 0x20 = 0x8AD2", "yryro 0x20 = 0x8B79", "yryrv 0x20 = 0x8B93", "yryta 0x20 = 0x8AF3", "yryub 0x20 = 0x8B27", "yryvo 0x20 = 0x8A72", "yrywm 0x20 = 0x8B60", "ys 0x20 = 0x8FC9", "yseq 0x20 = 0x9072", "ysfv 0x20 = 0x892D", "yshr 0x20 = 0x8FE2", "ysm 0x20 = 0x4E0E", "ysmln 0x20 = 0x74EC", "ysnl 0x20 = 0x90A1", "ysoby 0x20 = 0x65C3", "ysofb 0x20 = 0x65D3", "ysohc 0x20 = 0x65DF", "ysohl 0x20 = 0x65C2", "ysohm 0x20 = 0x65CC", "ysohn 0x20 = 0x65BB", "ysoho 0x20 = 0x65D0", "ysohu 0x20 = 0x65C4", "ysohv 0x20 = 0x65C5", "ysohw 0x20 = 0x65DB", "ysojb 0x20 = 0x65C6", "ysok 0x20 = 0x653E", "ysokr 0x20 = 0x65D6", "ysokv 0x20 = 0x65D2", "ysomf 0x20 = 0x65DA", "ysond 0x20 = 0x65BF", "ysono 0x20 = 0x65CB", "ysooa 0x20 = 0x65DD", "ysooi 0x20 = 0x65CD", "ysook 0x20 = 0x65CF", "ysopd 0x20 = 0x65BD", "ysosp 0x20 = 0x65CE", "ysotc 0x20 = 0x65D7", "ysoy 0x20 = 0x65BC", "ysoyo 0x20 = 0x65DE", "ysp 0x20 = 0x8FE1", "ysqf 0x20 = 0x99AE", "ysrj 0x20 = 0x907F", "yt 0x20 = 0x7ACB", "yta 0x20 = 0x97F3", "ytahu 0x20 = 0x7ADF", "ytaj 0x20 = 0x7AE0", "ytap 0x20 = 0x610F", "ytapv 0x20 = 0x7AED", "ytbsd 0x20 = 0x7AEB", "ytcl 0x20 = 0x51D8", "ytcw 0x20 = 0x9052", "ytdl 0x20 = 0x7AE6", "ythaf 0x20 = 0x9E15", "ythafz 0x20 = 0x9D17", "ythni 0x20 = 0x98AF", "ythu 0x20 = 0x9053", "yti 0x20 = 0x6232", "ytice 0x20 = 0x7AE3", "ytj 0x20 = 0x8F9B", "ytjki 0x20 = 0x7AE4", "ytk 0x20 = 0x9001", "ytki 0x20 = 0x7AD1", "ytkr 0x20 = 0x903D", "ytmbc 0x20 = 0x9871", "ytog 0x20 = 0x9073", "ytpo 0x20 = 0x9042", "ytpr 0x20 = 0x7AD8", "ytqmb 0x20 = 0x9756", "ytstt 0x20 = 0x7AEE", "ytsyy 0x20 = 0x7FCA", "ytt 0x20 = 0x8FF8", "yttb 0x20 = 0x9058", "ytu 0x20 = 0x9006", "ytumb 0x20 = 0x7AEF", "ytv 0x20 = 0x59BE", "ytwa 0x20 = 0x906D", "ytwb 0x20 = 0x9081", "ytwg 0x20 = 0x7AE5", "ytwi 0x20 = 0x9075", "ytyr 0x20 = 0x7AD9", "yu 0x20 = 0x8FBF", "yuav 0x20 = 0x9F66", "yubm 0x20 = 0x9F5F", "yubuc 0x20 = 0x8D19", "yubuu 0x20 = 0x89A4", "yudi 0x20 = 0x5C0E", "yue 0x20 = 0x53E1", "yuf 0x20 = 0x51DE", "yuhaf 0x20 = 0x9DF2", "yuhhh 0x20 = 0x5F6A", "yuhlb 0x20 = 0x9F72", "yuhml 0x20 = 0x9F57", "yuhxu 0x20 = 0x9F6F", "yuii 0x20 = 0x8665", "yuir 0x20 = 0x9F5D", "yujbc 0x20 = 0x9F7B", "yukmr 0x20 = 0x9F6E", "yulb 0x20 = 0x79BB", "yulwp 0x20 = 0x9F65", "yumb 0x20 = 0x9044", "yummr 0x20 = 0x9F6C", "yumvh 0x20 = 0x9F56", "yuog 0x20 = 0x51D7", "yuolf 0x20 = 0x866A", "yuoll 0x20 = 0x9F58", "yuomi 0x20 = 0x9F61", "yuon 0x20 = 0x9F55", "yup 0x20 = 0x9F54", "yupr 0x20 = 0x9F63", "yupru 0x20 = 0x9F59", "yupt 0x20 = 0x9F5B", "yupuu 0x20 = 0x9F7A", "yurc 0x20 = 0x9F5E", "yurrs 0x20 = 0x9F76", "yuryo 0x20 = 0x9F6A", "yushr 0x20 = 0x9F60", "yusje 0x20 = 0x9F71", "yusmg 0x20 = 0x9F77", "yuta 0x20 = 0x9F70", "yutct 0x20 = 0x9F78", "yutm 0x20 = 0x751D", "yuwd 0x20 = 0x9F6B", "yuwlb 0x20 = 0x9F75", "yuykh 0x20 = 0x9F74", "yuymp 0x20 = 0x9F5C", "yuypu 0x20 = 0x8664", "yuytu 0x20 = 0x7AF6", "yv 0x20 = 0x4EA1", "yvb 0x20 = 0x8093", "yvbcr 0x20 = 0x88D4", "yvbu 0x20 = 0x76F2", "yvbz 0x20 = 0x8182", "yvd 0x20 = 0x6757", "yvgg 0x20 = 0x58C5", "yvgn 0x20 = 0x7515", "yvgu 0x20 = 0x7F4B", "yvgv 0x20 = 0x9954", "yvhbt 0x20 = 0x8841", "yvhg 0x20 = 0x96CD", "yvhio 0x20 = 0x74E4", "yvhlv 0x20 = 0x5DDF", "yvho 0x20 = 0x4EA5", "yvi 0x20 = 0x7384", "yvks 0x20 = 0x52F7", "yvne 0x20 = 0x902F", "yvnl 0x20 = 0x9099", "yvp 0x20 = 0x5FD8", "yvrup 0x20 = 0x6C13", "yvv 0x20 = 0x5984", "yvvu 0x20 = 0x908B", "yvvv 0x20 = 0x5DE1", "ywdv 0x20 = 0x88F9", "ywihr 0x20 = 0x9E79", "ywii 0x20 = 0x9E75", "ywjr 0x20 = 0x51C5", "ywlb 0x20 = 0x9047", "ywle 0x20 = 0x905D", "ywlg 0x20 = 0x908F", "ywlv 0x20 = 0x9084", "ywlvz 0x20 = 0x8931", "ywmv 0x20 = 0x8870", "ywnl 0x20 = 0x9110", "ywno 0x20 = 0x755D", "ywomo 0x20 = 0x9E7C", "ywr 0x20 = 0x8FF4", "ywrd 0x20 = 0x7A1F", "ywrm 0x20 = 0x4EB6", "yws 0x20 = 0x5363", "ywtgm 0x20 = 0x9E7A", "yx 0x20 = 0x9F4A", "yxbt 0x20 = 0x9F4D", "yxbuc 0x20 = 0x9F4E", "yxf 0x20 = 0x9F4B", "yxfz 0x20 = 0x9F4C", "yxlmm 0x20 = 0x9F4F", "yxln 0x20 = 0x5291", "yy 0x20 = 0x535E", "yyaj 0x20 = 0x9034", "yybc 0x20 = 0x9049", "yycb 0x20 = 0x9069", "yyhn 0x20 = 0x8FD2", "yymr 0x20 = 0x9019", "yyoj 0x20 = 0x7387", "yypo 0x20 = 0x907D", "yyr 0x20 = 0x8FE0", "yysd 0x20 = 0x904A", "yytj 0x20 = 0x9067", "yywd 0x20 = 0x51DC", "yywm 0x20 = 0x9085", "yyws 0x20 = 0x900C", // Symbol and Punctuation "x, 0x20= 0xff0c", // double with "z, 0x20" "x,z 0x20= 0x3001", // or 0xff64 "x. 0x20= 0x3002", // or 0xff61 "x.z 0x20= 0x2022", // or 0xff65 "x\" 0x20= 0x3003", "x< 0x20= 0x3008", "x> 0x20= 0x3009", "x<< 0x20= 0x300a", "x>> 0x20= 0x300b", "x( 0x20= 0x300c", // or 0xff62 "x) 0x20= 0x300d", // or 0xff63 "x(( 0x20= 0x300e", "x)) 0x20= 0x300f", "x[( 0x20= 0x3010", "x)] 0x20= 0x3011", "x[ 0x20= 0x3014", "x] 0x20= 0x3015", "x[(z 0x20= 0x3016", "x)]z 0x20= 0x3017", // Letterlike Symbol "xni 0x20= 0x3005", "xomym 0x20= 0x32a3", "x()m 0x20= 0x3220", "x()mm 0x20= 0x3221", "x()mmm 0x20= 0x3222", "x()wc 0x20= 0x3223", "x()mdm 0x20= 0x3224", "x()yc 0x20= 0x3225", "x()jv 0x20= 0x3226", "x()ho 0x20= 0x3227", "x()kn 0x20= 0x3228", "x()j 0x20= 0x3229", "xom 0x20= 0x3280", "xomm 0x20= 0x3281", "xommm 0x20= 0x3282", "xowc 0x20= 0x3283", "xomdm 0x20= 0x3284", "xoyc 0x20= 0x3285", "xojv 0x20= 0x3286", "xoho 0x20= 0x3287", "xokn 0x20= 0x3288", "xoj 0x20= 0x3289", // Bopomofo "xvs 0x20= 0x3105", "xve 0x20= 0x3106", "xb 0x20= 0x3107", "xs 0x20= 0x3108", "xvsh 0x20= 0x3109", "xki 0x20= 0x310a", "xns 0x20= 0x310b", "xvks 0x20= 0x310c", "xvv 0x20= 0x310d", "xmvs 0x20= 0x310e", "xmz 0x20= 0x310f", "xvl 0x20= 0x3110", "xv 0x20= 0x3111", "xml 0x20= 0x3112", "xum 0x20= 0x3113", "xho 0x20= 0x3114", "xsh 0x20= 0x3115", "xwi 0x20= 0x3116", "xsl 0x20= 0x3117", "xkn 0x20= 0x3118", "xi 0x20= 0x3119", "xcl 0x20= 0x311a", "xmls 0x20= 0x311b", "xjd 0x20= 0x311c", "xpj 0x20= 0x311d", "xmvks 0x20= 0x311e", "xmo 0x20= 0x311f", "xvi 0x20= 0x3120", "xe 0x20= 0x3121", "xnvn 0x20= 0x3122", "xvn 0x20= 0x3123", "xkv 0x20= 0x3124", "xvz 0x20= 0x3125", "xc 0x20= 0x3126", "xm 0x20= 0x3127", "xk 0x20= 0x3128", "xu 0x20= 0x3129", // Bopomofo Modifier "x0 0x20= 0x02d9", "x1 0x20= 0x02c9", "x2 0x20= 0x02ca", "x3 0x20= 0x02c7", "x4 0x20= 0x02cb", // Fullwidth ASCII "z 0x20= 0x3000", "z! 0x20= 0xff01", "z\" 0x20= 0xff02", "z# 0x20= 0xff03", "z$ 0x20= 0xff04", "z% 0x20= 0xff05", "z& 0x20= 0xff06", "z' 0x20= 0xff07", "z( 0x20= 0xff08", "z) 0x20= 0xff09", "z* 0x20= 0xff0a", "z+ 0x20= 0xff0b", "z, 0x20= 0xff0c", "z- 0x20= 0xff0d", "z. 0x20= 0xff0e", "z/ 0x20= 0xff0f", "z0 0x20= 0xff10", "z1 0x20= 0xff11", "z2 0x20= 0xff12", "z3 0x20= 0xff13", "z4 0x20= 0xff14", "z5 0x20= 0xff15", "z6 0x20= 0xff16", "z7 0x20= 0xff17", "z8 0x20= 0xff18", "z9 0x20= 0xff19", "z: 0x20= 0xff1a", "z; 0x20= 0xff1b", "z< 0x20= 0xff1c", "z 0x3d 0x20= 0xff1d", "z> 0x20= 0xff1e", "z? 0x20= 0xff1f", "z@ 0x20= 0xff20", "zA 0x20= 0xff21", "zB 0x20= 0xff22", "zC 0x20= 0xff23", "zD 0x20= 0xff24", "zE 0x20= 0xff25", "zF 0x20= 0xff26", "zG 0x20= 0xff27", "zH 0x20= 0xff28", "zI 0x20= 0xff29", "zJ 0x20= 0xff2a", "zK 0x20= 0xff2b", "zL 0x20= 0xff2c", "zM 0x20= 0xff2d", "zN 0x20= 0xff2e", "zO 0x20= 0xff2f", "zP 0x20= 0xff30", "zQ 0x20= 0xff31", "zR 0x20= 0xff32", "zS 0x20= 0xff33", "zT 0x20= 0xff34", "zU 0x20= 0xff35", "zV 0x20= 0xff36", "zW 0x20= 0xff37", "zX 0x20= 0xff38", "zY 0x20= 0xff39", "zZ 0x20= 0xff3a", "z[ 0x20= 0xff3b", "z 0x5c 0x20= 0xff3c", "z] 0x20= 0xff3d", "z^ 0x20= 0xff3e", "z_ 0x20= 0xff3f", "z` 0x20= 0xff40", "za 0x20= 0xff41", "zb 0x20= 0xff42", "zc 0x20= 0xff43", "zd 0x20= 0xff44", "ze 0x20= 0xff45", "zf 0x20= 0xff46", "zg 0x20= 0xff47", "zh 0x20= 0xff48", "zi 0x20= 0xff49", "zj 0x20= 0xff4a", "zk 0x20= 0xff4b", "zl 0x20= 0xff4c", "zm 0x20= 0xff4d", "zn 0x20= 0xff4e", "zo 0x20= 0xff4f", "zp 0x20= 0xff50", "zq 0x20= 0xff51", "zr 0x20= 0xff52", "zs 0x20= 0xff53", "zt 0x20= 0xff54", "zu 0x20= 0xff55", "zv 0x20= 0xff56", "zw 0x20= 0xff57", "zx 0x20= 0xff58", "zy 0x20= 0xff59", "zz 0x20= 0xff5a", "z{ 0x20= 0xff5b", "z| 0x20= 0xff5c", "z} 0x20= 0xff5d", "z~ 0x20= 0xff5e", ./mytool/kmap/Latin.kmap0000644000175000017500000000276407640716214015251 0ustar henrichhenrich// $Id: Latin.kmap,v 1.1 2003/03/27 22:53:03 Glutexo $ // send your criticism to glutexo@pikachu.cz // // modified by Glutexo // included ā ī ū ē ō Ā Ī Ū Ē Ō acuted letters, Ë ë accents used in some older transcriptions, and á í ú é ó Á Í Ú É Ó used rarely as stress marks "A|=0x0100", // Ā = LATIN CAPITAL LETTER A WITH MACRON "A'=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "E:=0x00CB", // Ë = LATIN CAPITAL LETTER E WITH DIAERESIS "E|=0x0112", // Ē = LATIN CAPITAL LETTER E WITH MACRON "E'=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "I|=0x012A", // Ī = LATIN CAPITAL LETTER I WITH MACRON "I'=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "O|=0x014C", // Ō = LATIN CAPITAL LETTER O WITH MACRON "O'=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "U|=0x016A", // Ū = LATIN CAPITAL LETTER U WITH MACRON "U'=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "a|=0x0101", // ā = LATIN SMALL LETTER A WITH MACRON "a'=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "e:=0x00EB", // ë = LATIN SMALL LETTER E WITH DIAERESIS "e|=0x0113", // ē = LATIN SMALL LETTER E WITH MACRON "e'=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "i|=0x012B", // ī = LATIN SMALL LETTER I WITH MACRON "i'=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "o|=0x014D", // ō = LATIN SMALL LETTER O WITH MACRON "o'=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "u|=0x016B", // ū = LATIN SMALL LETTER U WITH MACRON "u'=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE ./mytool/kmap/Gujarati.kmap0000644000175000017500000006224207670120450015737 0ustar henrichhenrich// Gujarati kmap according to Itrans transliteration // by Miikka-Markus Alhonen 2002-01-26 // 2003-06-04 upgraded to Unicode 4.0 // Consonant + vowel/virama "Ch=0x0a9b 0x0acd", "Ch.h=0x0a9b 0x0acd 0x200c", "ChA=0x0a9b 0x0abe", "ChA.c=0x0a9b 0x0ac9", "ChI=0x0a9b 0x0ac0", "ChLLI=0x0a9b 0x0ae3", "ChLLi=0x0a9b 0x0ae2", "ChL^I=0x0a9b 0x0ae3", "ChL^i=0x0a9b 0x0ae2", "ChRRI=0x0a9b 0x0ac4", "ChRRi=0x0a9b 0x0ac3", "ChR^I=0x0a9b 0x0ac4", "ChR^i=0x0a9b 0x0ac3", "ChU=0x0a9b 0x0ac2", "Cha=0x0a9b", "Chaa=0x0a9b 0x0abe", "Chaa.c=0x0a9b 0x0ac9", "Chai=0x0a9b 0x0ac8", "Chau=0x0a9b 0x0acc", "Che=0x0a9b 0x0ac7", "Chi=0x0a9b 0x0abf", "Chii=0x0a9b 0x0ac0", "Cho=0x0a9b 0x0acb", "Chu=0x0a9b 0x0ac1", "Chuu=0x0a9b 0x0ac2", "D=0x0aa1 0x0acd", "D.h=0x0aa1 0x0acd 0x200c", "DA=0x0aa1 0x0abe", "DA.c=0x0aa1 0x0ac9", "DI=0x0aa1 0x0ac0", "DLLI=0x0aa1 0x0ae3", "DLLi=0x0aa1 0x0ae2", "DL^I=0x0aa1 0x0ae3", "DL^i=0x0aa1 0x0ae2", "DRRI=0x0aa1 0x0ac4", "DRRi=0x0aa1 0x0ac3", "DR^I=0x0aa1 0x0ac4", "DR^i=0x0aa1 0x0ac3", "DU=0x0aa1 0x0ac2", "Da=0x0aa1", "Daa=0x0aa1 0x0abe", "Daa.c=0x0aa1 0x0ac9", "Dai=0x0aa1 0x0ac8", "Dau=0x0aa1 0x0acc", "De=0x0aa1 0x0ac7", "Di=0x0aa1 0x0abf", "Dii=0x0aa1 0x0ac0", "Do=0x0aa1 0x0acb", "Du=0x0aa1 0x0ac1", "Duu=0x0aa1 0x0ac2", "Dh=0x0aa2 0x0acd", "Dh.h=0x0aa2 0x0acd 0x200c", "DhA=0x0aa2 0x0abe", "DhA.c=0x0aa2 0x0ac9", "DhI=0x0aa2 0x0ac0", "DhLLI=0x0aa2 0x0ae3", "DhLLi=0x0aa2 0x0ae2", "DhL^I=0x0aa2 0x0ae3", "DhL^i=0x0aa2 0x0ae2", "DhRRI=0x0aa2 0x0ac4", "DhRRi=0x0aa2 0x0ac3", "DhR^I=0x0aa2 0x0ac4", "DhR^i=0x0aa2 0x0ac3", "DhU=0x0aa2 0x0ac2", "Dha=0x0aa2", "Dhaa=0x0aa2 0x0abe", "Dhaa.c=0x0aa2 0x0ac9", "Dhai=0x0aa2 0x0ac8", "Dhau=0x0aa2 0x0acc", "Dhe=0x0aa2 0x0ac7", "Dhi=0x0aa2 0x0abf", "Dhii=0x0aa2 0x0ac0", "Dho=0x0aa2 0x0acb", "Dhu=0x0aa2 0x0ac1", "Dhuu=0x0aa2 0x0ac2", "GY=0x0a9c 0x0acd 0x0a9e 0x0acd", "GY.h=0x0a9c 0x0acd 0x0a9e 0x0acd 0x200c", "GYA=0x0a9c 0x0acd 0x0a9e 0x0abe", "GYA.c=0x0a9c 0x0acd 0x0a9e 0x0ac9", "GYI=0x0a9c 0x0acd 0x0a9e 0x0ac0", "GYLLI=0x0a9c 0x0acd 0x0a9e 0x0ae3", "GYLLi=0x0a9c 0x0acd 0x0a9e 0x0ae2", "GYL^I=0x0a9c 0x0acd 0x0a9e 0x0ae3", "GYL^i=0x0a9c 0x0acd 0x0a9e 0x0ae2", "GYRRI=0x0a9c 0x0acd 0x0a9e 0x0ac4", "GYRRi=0x0a9c 0x0acd 0x0a9e 0x0ac3", "GYR^I=0x0a9c 0x0acd 0x0a9e 0x0ac4", "GYR^i=0x0a9c 0x0acd 0x0a9e 0x0ac3", "GYU=0x0a9c 0x0acd 0x0a9e 0x0ac2", "GYa=0x0a9c 0x0acd 0x0a9e", "GYaa=0x0a9c 0x0acd 0x0a9e 0x0abe", "GYaa.c=0x0a9c 0x0acd 0x0a9e 0x0ac9", "GYai=0x0a9c 0x0acd 0x0a9e 0x0ac8", "GYau=0x0a9c 0x0acd 0x0a9e 0x0acc", "GYe=0x0a9c 0x0acd 0x0a9e 0x0ac7", "GYi=0x0a9c 0x0acd 0x0a9e 0x0abf", "GYii=0x0a9c 0x0acd 0x0a9e 0x0ac0", "GYo=0x0a9c 0x0acd 0x0a9e 0x0acb", "GYu=0x0a9c 0x0acd 0x0a9e 0x0ac1", "GYuu=0x0a9c 0x0acd 0x0a9e 0x0ac2", "JN=0x0a9e 0x0acd", "JN.h=0x0a9e 0x0acd 0x200c", "JNA=0x0a9e 0x0abe", "JNA.c=0x0a9e 0x0ac9", "JNI=0x0a9e 0x0ac0", "JNLLI=0x0a9e 0x0ae3", "JNLLi=0x0a9e 0x0ae2", "JNL^I=0x0a9e 0x0ae3", "JNL^i=0x0a9e 0x0ae2", "JNRRI=0x0a9e 0x0ac4", "JNRRi=0x0a9e 0x0ac3", "JNR^I=0x0a9e 0x0ac4", "JNR^i=0x0a9e 0x0ac3", "JNU=0x0a9e 0x0ac2", "JNa=0x0a9e", "JNaa=0x0a9e 0x0abe", "JNaa.c=0x0a9e 0x0ac9", "JNai=0x0a9e 0x0ac8", "JNau=0x0a9e 0x0acc", "JNe=0x0a9e 0x0ac7", "JNi=0x0a9e 0x0abf", "JNii=0x0a9e 0x0ac0", "JNo=0x0a9e 0x0acb", "JNu=0x0a9e 0x0ac1", "JNuu=0x0a9e 0x0ac2", "L=0x0ab3 0x0acd", "L.h=0x0ab3 0x0acd 0x200c", "LA=0x0ab3 0x0abe", "LA.c=0x0ab3 0x0ac9", "LI=0x0ab3 0x0ac0", "LLLI=0x0ab3 0x0ae3", "LLLi=0x0ab3 0x0ae2", "LL^I=0x0ab3 0x0ae3", "LL^i=0x0ab3 0x0ae2", "LRRI=0x0ab3 0x0ac4", "LRRi=0x0ab3 0x0ac3", "LR^I=0x0ab3 0x0ac4", "LR^i=0x0ab3 0x0ac3", "LU=0x0ab3 0x0ac2", "La=0x0ab3", "Laa=0x0ab3 0x0abe", "Laa.c=0x0ab3 0x0ac9", "Lai=0x0ab3 0x0ac8", "Lau=0x0ab3 0x0acc", "Le=0x0ab3 0x0ac7", "Li=0x0ab3 0x0abf", "Lii=0x0ab3 0x0ac0", "Lo=0x0ab3 0x0acb", "Lu=0x0ab3 0x0ac1", "Luu=0x0ab3 0x0ac2", "N=0x0aa3 0x0acd", "N.h=0x0aa3 0x0acd 0x200c", "NA=0x0aa3 0x0abe", "NA.c=0x0aa3 0x0ac9", "NI=0x0aa3 0x0ac0", "NLLI=0x0aa3 0x0ae3", "NLLi=0x0aa3 0x0ae2", "NL^I=0x0aa3 0x0ae3", "NL^i=0x0aa3 0x0ae2", "NRRI=0x0aa3 0x0ac4", "NRRi=0x0aa3 0x0ac3", "NR^I=0x0aa3 0x0ac4", "NR^i=0x0aa3 0x0ac3", "NU=0x0aa3 0x0ac2", "Na=0x0aa3", "Naa=0x0aa3 0x0abe", "Naa.c=0x0aa3 0x0ac9", "Nai=0x0aa3 0x0ac8", "Nau=0x0aa3 0x0acc", "Ne=0x0aa3 0x0ac7", "Ni=0x0aa3 0x0abf", "Nii=0x0aa3 0x0ac0", "No=0x0aa3 0x0acb", "Nu=0x0aa3 0x0ac1", "Nuu=0x0aa3 0x0ac2", "N^=0x0a99 0x0acd", "N^.h=0x0a99 0x0acd 0x200c", "N^A=0x0a99 0x0abe", "N^A.c=0x0a99 0x0ac9", "N^I=0x0a99 0x0ac0", "N^LLI=0x0a99 0x0ae3", "N^LLi=0x0a99 0x0ae2", "N^L^I=0x0a99 0x0ae3", "N^L^i=0x0a99 0x0ae2", "N^RRI=0x0a99 0x0ac4", "N^RRi=0x0a99 0x0ac3", "N^R^I=0x0a99 0x0ac4", "N^R^i=0x0a99 0x0ac3", "N^U=0x0a99 0x0ac2", "N^a=0x0a99", "N^aa=0x0a99 0x0abe", "N^aa.c=0x0a99 0x0ac9", "N^ai=0x0a99 0x0ac8", "N^au=0x0a99 0x0acc", "N^e=0x0a99 0x0ac7", "N^i=0x0a99 0x0abf", "N^ii=0x0a99 0x0ac0", "N^o=0x0a99 0x0acb", "N^u=0x0a99 0x0ac1", "N^uu=0x0a99 0x0ac2", "Sh=0x0ab7 0x0acd", "Sh.h=0x0ab7 0x0acd 0x200c", "ShA=0x0ab7 0x0abe", "ShA.c=0x0ab7 0x0ac9", "ShI=0x0ab7 0x0ac0", "ShLLI=0x0ab7 0x0ae3", "ShLLi=0x0ab7 0x0ae2", "ShL^I=0x0ab7 0x0ae3", "ShL^i=0x0ab7 0x0ae2", "ShRRI=0x0ab7 0x0ac4", "ShRRi=0x0ab7 0x0ac3", "ShR^I=0x0ab7 0x0ac4", "ShR^i=0x0ab7 0x0ac3", "ShU=0x0ab7 0x0ac2", "Sha=0x0ab7", "Shaa=0x0ab7 0x0abe", "Shaa.c=0x0ab7 0x0ac9", "Shai=0x0ab7 0x0ac8", "Shau=0x0ab7 0x0acc", "She=0x0ab7 0x0ac7", "Shi=0x0ab7 0x0abf", "Shii=0x0ab7 0x0ac0", "Sho=0x0ab7 0x0acb", "Shu=0x0ab7 0x0ac1", "Shuu=0x0ab7 0x0ac2", "T=0x0a9f 0x0acd", "T.h=0x0a9f 0x0acd 0x200c", "TA=0x0a9f 0x0abe", "TA.c=0x0a9f 0x0ac9", "TI=0x0a9f 0x0ac0", "TLLI=0x0a9f 0x0ae3", "TLLi=0x0a9f 0x0ae2", "TL^I=0x0a9f 0x0ae3", "TL^i=0x0a9f 0x0ae2", "TRRI=0x0a9f 0x0ac4", "TRRi=0x0a9f 0x0ac3", "TR^I=0x0a9f 0x0ac4", "TR^i=0x0a9f 0x0ac3", "TU=0x0a9f 0x0ac2", "Ta=0x0a9f", "Taa=0x0a9f 0x0abe", "Taa.c=0x0a9f 0x0ac9", "Tai=0x0a9f 0x0ac8", "Tau=0x0a9f 0x0acc", "Te=0x0a9f 0x0ac7", "Ti=0x0a9f 0x0abf", "Tii=0x0a9f 0x0ac0", "To=0x0a9f 0x0acb", "Tu=0x0a9f 0x0ac1", "Tuu=0x0a9f 0x0ac2", "Th=0x0aa0 0x0acd", "Th.h=0x0aa0 0x0acd 0x200c", "ThA=0x0aa0 0x0abe", "ThA.c=0x0aa0 0x0ac9", "ThI=0x0aa0 0x0ac0", "ThLLI=0x0aa0 0x0ae3", "ThLLi=0x0aa0 0x0ae2", "ThL^I=0x0aa0 0x0ae3", "ThL^i=0x0aa0 0x0ae2", "ThRRI=0x0aa0 0x0ac4", "ThRRi=0x0aa0 0x0ac3", "ThR^I=0x0aa0 0x0ac4", "ThR^i=0x0aa0 0x0ac3", "ThU=0x0aa0 0x0ac2", "Tha=0x0aa0", "Thaa=0x0aa0 0x0abe", "Thaa.c=0x0aa0 0x0ac9", "Thai=0x0aa0 0x0ac8", "Thau=0x0aa0 0x0acc", "The=0x0aa0 0x0ac7", "Thi=0x0aa0 0x0abf", "Thii=0x0aa0 0x0ac0", "Tho=0x0aa0 0x0acb", "Thu=0x0aa0 0x0ac1", "Thuu=0x0aa0 0x0ac2", "b=0x0aac 0x0acd", "b.h=0x0aac 0x0acd 0x200c", "bA=0x0aac 0x0abe", "bA.c=0x0aac 0x0ac9", "bI=0x0aac 0x0ac0", "bLLI=0x0aac 0x0ae3", "bLLi=0x0aac 0x0ae2", "bL^I=0x0aac 0x0ae3", "bL^i=0x0aac 0x0ae2", "bRRI=0x0aac 0x0ac4", "bRRi=0x0aac 0x0ac3", "bR^I=0x0aac 0x0ac4", "bR^i=0x0aac 0x0ac3", "bU=0x0aac 0x0ac2", "ba=0x0aac", "baa=0x0aac 0x0abe", "baa.c=0x0aac 0x0ac9", "bai=0x0aac 0x0ac8", "bau=0x0aac 0x0acc", "be=0x0aac 0x0ac7", "bi=0x0aac 0x0abf", "bii=0x0aac 0x0ac0", "bo=0x0aac 0x0acb", "bu=0x0aac 0x0ac1", "buu=0x0aac 0x0ac2", "bh=0x0aad 0x0acd", "bh.h=0x0aad 0x0acd 0x200c", "bhA=0x0aad 0x0abe", "bhA.c=0x0aad 0x0ac9", "bhI=0x0aad 0x0ac0", "bhLLI=0x0aad 0x0ae3", "bhLLi=0x0aad 0x0ae2", "bhL^I=0x0aad 0x0ae3", "bhL^i=0x0aad 0x0ae2", "bhRRI=0x0aad 0x0ac4", "bhRRi=0x0aad 0x0ac3", "bhR^I=0x0aad 0x0ac4", "bhR^i=0x0aad 0x0ac3", "bhU=0x0aad 0x0ac2", "bha=0x0aad", "bhaa=0x0aad 0x0abe", "bhaa.c=0x0aad 0x0ac9", "bhai=0x0aad 0x0ac8", "bhau=0x0aad 0x0acc", "bhe=0x0aad 0x0ac7", "bhi=0x0aad 0x0abf", "bhii=0x0aad 0x0ac0", "bho=0x0aad 0x0acb", "bhu=0x0aad 0x0ac1", "bhuu=0x0aad 0x0ac2", "c=0x0a9a 0x0acd", "c.h=0x0a9a 0x0acd 0x200c", "cA=0x0a9a 0x0abe", "cA.c=0x0a9a 0x0ac9", "cI=0x0a9a 0x0ac0", "cLLI=0x0a9a 0x0ae3", "cLLi=0x0a9a 0x0ae2", "cL^I=0x0a9a 0x0ae3", "cL^i=0x0a9a 0x0ae2", "cRRI=0x0a9a 0x0ac4", "cRRi=0x0a9a 0x0ac3", "cR^I=0x0a9a 0x0ac4", "cR^i=0x0a9a 0x0ac3", "cU=0x0a9a 0x0ac2", "ca=0x0a9a", "caa=0x0a9a 0x0abe", "caa.c=0x0a9a 0x0ac9", "cai=0x0a9a 0x0ac8", "cau=0x0a9a 0x0acc", "ce=0x0a9a 0x0ac7", "ci=0x0a9a 0x0abf", "cii=0x0a9a 0x0ac0", "co=0x0a9a 0x0acb", "cu=0x0a9a 0x0ac1", "cuu=0x0a9a 0x0ac2", "ch=0x0a9a 0x0acd", "ch.h=0x0a9a 0x0acd 0x200c", "chA=0x0a9a 0x0abe", "chA.c=0x0a9a 0x0ac9", "chI=0x0a9a 0x0ac0", "chLLI=0x0a9a 0x0ae3", "chLLi=0x0a9a 0x0ae2", "chL^I=0x0a9a 0x0ae3", "chL^i=0x0a9a 0x0ae2", "chRRI=0x0a9a 0x0ac4", "chRRi=0x0a9a 0x0ac3", "chR^I=0x0a9a 0x0ac4", "chR^i=0x0a9a 0x0ac3", "chU=0x0a9a 0x0ac2", "cha=0x0a9a", "chaa=0x0a9a 0x0abe", "chaa.c=0x0a9a 0x0ac9", "chai=0x0a9a 0x0ac8", "chau=0x0a9a 0x0acc", "che=0x0a9a 0x0ac7", "chi=0x0a9a 0x0abf", "chii=0x0a9a 0x0ac0", "cho=0x0a9a 0x0acb", "chu=0x0a9a 0x0ac1", "chuu=0x0a9a 0x0ac2", "chh=0x0a9b 0x0acd", "chh.h=0x0a9b 0x0acd 0x200c", "chhA=0x0a9b 0x0abe", "chhA.c=0x0a9b 0x0ac9", "chhI=0x0a9b 0x0ac0", "chhLLI=0x0a9b 0x0ae3", "chhLLi=0x0a9b 0x0ae2", "chhL^I=0x0a9b 0x0ae3", "chhL^i=0x0a9b 0x0ae2", "chhRRI=0x0a9b 0x0ac4", "chhRRi=0x0a9b 0x0ac3", "chhR^I=0x0a9b 0x0ac4", "chhR^i=0x0a9b 0x0ac3", "chhU=0x0a9b 0x0ac2", "chha=0x0a9b", "chhaa=0x0a9b 0x0abe", "chhaa.c=0x0a9b 0x0ac9", "chhai=0x0a9b 0x0ac8", "chhau=0x0a9b 0x0acc", "chhe=0x0a9b 0x0ac7", "chhi=0x0a9b 0x0abf", "chhii=0x0a9b 0x0ac0", "chho=0x0a9b 0x0acb", "chhu=0x0a9b 0x0ac1", "chhuu=0x0a9b 0x0ac2", "d=0x0aa6 0x0acd", "d.h=0x0aa6 0x0acd 0x200c", "dA=0x0aa6 0x0abe", "dA.c=0x0aa6 0x0ac9", "dI=0x0aa6 0x0ac0", "dLLI=0x0aa6 0x0ae3", "dLLi=0x0aa6 0x0ae2", "dL^I=0x0aa6 0x0ae3", "dL^i=0x0aa6 0x0ae2", "dRRI=0x0aa6 0x0ac4", "dRRi=0x0aa6 0x0ac3", "dR^I=0x0aa6 0x0ac4", "dR^i=0x0aa6 0x0ac3", "dU=0x0aa6 0x0ac2", "da=0x0aa6", "daa=0x0aa6 0x0abe", "daa.c=0x0aa6 0x0ac9", "dai=0x0aa6 0x0ac8", "dau=0x0aa6 0x0acc", "de=0x0aa6 0x0ac7", "di=0x0aa6 0x0abf", "dii=0x0aa6 0x0ac0", "do=0x0aa6 0x0acb", "du=0x0aa6 0x0ac1", "duu=0x0aa6 0x0ac2", "dh=0x0aa7 0x0acd", "dh.h=0x0aa7 0x0acd 0x200c", "dhA=0x0aa7 0x0abe", "dhA.c=0x0aa7 0x0ac9", "dhI=0x0aa7 0x0ac0", "dhLLI=0x0aa7 0x0ae3", "dhLLi=0x0aa7 0x0ae2", "dhL^I=0x0aa7 0x0ae3", "dhL^i=0x0aa7 0x0ae2", "dhRRI=0x0aa7 0x0ac4", "dhRRi=0x0aa7 0x0ac3", "dhR^I=0x0aa7 0x0ac4", "dhR^i=0x0aa7 0x0ac3", "dhU=0x0aa7 0x0ac2", "dha=0x0aa7", "dhaa=0x0aa7 0x0abe", "dhaa.c=0x0aa7 0x0ac9", "dhai=0x0aa7 0x0ac8", "dhau=0x0aa7 0x0acc", "dhe=0x0aa7 0x0ac7", "dhi=0x0aa7 0x0abf", "dhii=0x0aa7 0x0ac0", "dho=0x0aa7 0x0acb", "dhu=0x0aa7 0x0ac1", "dhuu=0x0aa7 0x0ac2", "dny=0x0a9c 0x0acd 0x0a9e 0x0acd", "dny.h=0x0a9c 0x0acd 0x0a9e 0x0acd 0x200c", "dnyA=0x0a9c 0x0acd 0x0a9e 0x0abe", "dnyA.c=0x0a9c 0x0acd 0x0a9e 0x0ac9", "dnyI=0x0a9c 0x0acd 0x0a9e 0x0ac0", "dnyLLI=0x0a9c 0x0acd 0x0a9e 0x0ae3", "dnyLLi=0x0a9c 0x0acd 0x0a9e 0x0ae2", "dnyL^I=0x0a9c 0x0acd 0x0a9e 0x0ae3", "dnyL^i=0x0a9c 0x0acd 0x0a9e 0x0ae2", "dnyRRI=0x0a9c 0x0acd 0x0a9e 0x0ac4", "dnyRRi=0x0a9c 0x0acd 0x0a9e 0x0ac3", "dnyR^I=0x0a9c 0x0acd 0x0a9e 0x0ac4", "dnyR^i=0x0a9c 0x0acd 0x0a9e 0x0ac3", "dnyU=0x0a9c 0x0acd 0x0a9e 0x0ac2", "dnya=0x0a9c 0x0acd 0x0a9e", "dnyaa=0x0a9c 0x0acd 0x0a9e 0x0abe", "dnyaa.c=0x0a9c 0x0acd 0x0a9e 0x0ac9", "dnyai=0x0a9c 0x0acd 0x0a9e 0x0ac8", "dnyau=0x0a9c 0x0acd 0x0a9e 0x0acc", "dnye=0x0a9c 0x0acd 0x0a9e 0x0ac7", "dnyi=0x0a9c 0x0acd 0x0a9e 0x0abf", "dnyii=0x0a9c 0x0acd 0x0a9e 0x0ac0", "dnyo=0x0a9c 0x0acd 0x0a9e 0x0acb", "dnyu=0x0a9c 0x0acd 0x0a9e 0x0ac1", "dnyuu=0x0a9c 0x0acd 0x0a9e 0x0ac2", "g=0x0a97 0x0acd", "g.h=0x0a97 0x0acd 0x200c", "gA=0x0a97 0x0abe", "gA.c=0x0a97 0x0ac9", "gI=0x0a97 0x0ac0", "gLLI=0x0a97 0x0ae3", "gLLi=0x0a97 0x0ae2", "gL^I=0x0a97 0x0ae3", "gL^i=0x0a97 0x0ae2", "gRRI=0x0a97 0x0ac4", "gRRi=0x0a97 0x0ac3", "gR^I=0x0a97 0x0ac4", "gR^i=0x0a97 0x0ac3", "gU=0x0a97 0x0ac2", "ga=0x0a97", "gaa=0x0a97 0x0abe", "gaa.c=0x0a97 0x0ac9", "gai=0x0a97 0x0ac8", "gau=0x0a97 0x0acc", "ge=0x0a97 0x0ac7", "gi=0x0a97 0x0abf", "gii=0x0a97 0x0ac0", "go=0x0a97 0x0acb", "gu=0x0a97 0x0ac1", "guu=0x0a97 0x0ac2", "gh=0x0a98 0x0acd", "gh.h=0x0a98 0x0acd 0x200c", "ghA=0x0a98 0x0abe", "ghA.c=0x0a98 0x0ac9", "ghI=0x0a98 0x0ac0", "ghLLI=0x0a98 0x0ae3", "ghLLi=0x0a98 0x0ae2", "ghL^I=0x0a98 0x0ae3", "ghL^i=0x0a98 0x0ae2", "ghRRI=0x0a98 0x0ac4", "ghRRi=0x0a98 0x0ac3", "ghR^I=0x0a98 0x0ac4", "ghR^i=0x0a98 0x0ac3", "ghU=0x0a98 0x0ac2", "gha=0x0a98", "ghaa=0x0a98 0x0abe", "ghaa.c=0x0a98 0x0ac9", "ghai=0x0a98 0x0ac8", "ghau=0x0a98 0x0acc", "ghe=0x0a98 0x0ac7", "ghi=0x0a98 0x0abf", "ghii=0x0a98 0x0ac0", "gho=0x0a98 0x0acb", "ghu=0x0a98 0x0ac1", "ghuu=0x0a98 0x0ac2", "h=0x0ab9 0x0acd", "h.h=0x0ab9 0x0acd 0x200c", "hA=0x0ab9 0x0abe", "hA.c=0x0ab9 0x0ac9", "hI=0x0ab9 0x0ac0", "hLLI=0x0ab9 0x0ae3", "hLLi=0x0ab9 0x0ae2", "hL^I=0x0ab9 0x0ae3", "hL^i=0x0ab9 0x0ae2", "hRRI=0x0ab9 0x0ac4", "hRRi=0x0ab9 0x0ac3", "hR^I=0x0ab9 0x0ac4", "hR^i=0x0ab9 0x0ac3", "hU=0x0ab9 0x0ac2", "ha=0x0ab9", "haa=0x0ab9 0x0abe", "haa.c=0x0ab9 0x0ac9", "hai=0x0ab9 0x0ac8", "hau=0x0ab9 0x0acc", "he=0x0ab9 0x0ac7", "hi=0x0ab9 0x0abf", "hii=0x0ab9 0x0ac0", "ho=0x0ab9 0x0acb", "hu=0x0ab9 0x0ac1", "huu=0x0ab9 0x0ac2", "j=0x0a9c 0x0acd", "j.h=0x0a9c 0x0acd 0x200c", "jA=0x0a9c 0x0abe", "jA.c=0x0a9c 0x0ac9", "jI=0x0a9c 0x0ac0", "jLLI=0x0a9c 0x0ae3", "jLLi=0x0a9c 0x0ae2", "jL^I=0x0a9c 0x0ae3", "jL^i=0x0a9c 0x0ae2", "jRRI=0x0a9c 0x0ac4", "jRRi=0x0a9c 0x0ac3", "jR^I=0x0a9c 0x0ac4", "jR^i=0x0a9c 0x0ac3", "jU=0x0a9c 0x0ac2", "ja=0x0a9c", "jaa=0x0a9c 0x0abe", "jaa.c=0x0a9c 0x0ac9", "jai=0x0a9c 0x0ac8", "jau=0x0a9c 0x0acc", "je=0x0a9c 0x0ac7", "ji=0x0a9c 0x0abf", "jii=0x0a9c 0x0ac0", "jo=0x0a9c 0x0acb", "ju=0x0a9c 0x0ac1", "juu=0x0a9c 0x0ac2", "jh=0x0a9d 0x0acd", "jh.h=0x0a9d 0x0acd 0x200c", "jhA=0x0a9d 0x0abe", "jhA.c=0x0a9d 0x0ac9", "jhI=0x0a9d 0x0ac0", "jhLLI=0x0a9d 0x0ae3", "jhLLi=0x0a9d 0x0ae2", "jhL^I=0x0a9d 0x0ae3", "jhL^i=0x0a9d 0x0ae2", "jhRRI=0x0a9d 0x0ac4", "jhRRi=0x0a9d 0x0ac3", "jhR^I=0x0a9d 0x0ac4", "jhR^i=0x0a9d 0x0ac3", "jhU=0x0a9d 0x0ac2", "jha=0x0a9d", "jhaa=0x0a9d 0x0abe", "jhaa.c=0x0a9d 0x0ac9", "jhai=0x0a9d 0x0ac8", "jhau=0x0a9d 0x0acc", "jhe=0x0a9d 0x0ac7", "jhi=0x0a9d 0x0abf", "jhii=0x0a9d 0x0ac0", "jho=0x0a9d 0x0acb", "jhu=0x0a9d 0x0ac1", "jhuu=0x0a9d 0x0ac2", "k=0x0a95 0x0acd", "k.h=0x0a95 0x0acd 0x200c", "kA=0x0a95 0x0abe", "kA.c=0x0a95 0x0ac9", "kI=0x0a95 0x0ac0", "kLLI=0x0a95 0x0ae3", "kLLi=0x0a95 0x0ae2", "kL^I=0x0a95 0x0ae3", "kL^i=0x0a95 0x0ae2", "kRRI=0x0a95 0x0ac4", "kRRi=0x0a95 0x0ac3", "kR^I=0x0a95 0x0ac4", "kR^i=0x0a95 0x0ac3", "kU=0x0a95 0x0ac2", "ka=0x0a95", "kaa=0x0a95 0x0abe", "kaa.c=0x0a95 0x0ac9", "kai=0x0a95 0x0ac8", "kau=0x0a95 0x0acc", "ke=0x0a95 0x0ac7", "ki=0x0a95 0x0abf", "kii=0x0a95 0x0ac0", "ko=0x0a95 0x0acb", "ku=0x0a95 0x0ac1", "kuu=0x0a95 0x0ac2", "kh=0x0a96 0x0acd", "kh.h=0x0a96 0x0acd 0x200c", "khA=0x0a96 0x0abe", "khA.c=0x0a96 0x0ac9", "khI=0x0a96 0x0ac0", "khLLI=0x0a96 0x0ae3", "khLLi=0x0a96 0x0ae2", "khL^I=0x0a96 0x0ae3", "khL^i=0x0a96 0x0ae2", "khRRI=0x0a96 0x0ac4", "khRRi=0x0a96 0x0ac3", "khR^I=0x0a96 0x0ac4", "khR^i=0x0a96 0x0ac3", "khU=0x0a96 0x0ac2", "kha=0x0a96", "khaa=0x0a96 0x0abe", "khaa.c=0x0a96 0x0ac9", "khai=0x0a96 0x0ac8", "khau=0x0a96 0x0acc", "khe=0x0a96 0x0ac7", "khi=0x0a96 0x0abf", "khii=0x0a96 0x0ac0", "kho=0x0a96 0x0acb", "khu=0x0a96 0x0ac1", "khuu=0x0a96 0x0ac2", "l=0x0ab2 0x0acd", "l.h=0x0ab2 0x0acd 0x200c", "lA=0x0ab2 0x0abe", "lA.c=0x0ab2 0x0ac9", "lI=0x0ab2 0x0ac0", "lLLI=0x0ab2 0x0ae3", "lLLi=0x0ab2 0x0ae2", "lL^I=0x0ab2 0x0ae3", "lL^i=0x0ab2 0x0ae2", "lRRI=0x0ab2 0x0ac4", "lRRi=0x0ab2 0x0ac3", "lR^I=0x0ab2 0x0ac4", "lR^i=0x0ab2 0x0ac3", "lU=0x0ab2 0x0ac2", "la=0x0ab2", "laa=0x0ab2 0x0abe", "laa.c=0x0ab2 0x0ac9", "lai=0x0ab2 0x0ac8", "lau=0x0ab2 0x0acc", "le=0x0ab2 0x0ac7", "li=0x0ab2 0x0abf", "lii=0x0ab2 0x0ac0", "lo=0x0ab2 0x0acb", "lu=0x0ab2 0x0ac1", "luu=0x0ab2 0x0ac2", "ld=0x0ab3 0x0acd", "ld.h=0x0ab3 0x0acd 0x200c", "ldA=0x0ab3 0x0abe", "ldA.c=0x0ab3 0x0ac9", "ldI=0x0ab3 0x0ac0", "ldLLI=0x0ab3 0x0ae3", "ldLLi=0x0ab3 0x0ae2", "ldL^I=0x0ab3 0x0ae3", "ldL^i=0x0ab3 0x0ae2", "ldRRI=0x0ab3 0x0ac4", "ldRRi=0x0ab3 0x0ac3", "ldR^I=0x0ab3 0x0ac4", "ldR^i=0x0ab3 0x0ac3", "ldU=0x0ab3 0x0ac2", "lda=0x0ab3", "ldaa=0x0ab3 0x0abe", "ldaa.c=0x0ab3 0x0ac9", "ldai=0x0ab3 0x0ac8", "ldau=0x0ab3 0x0acc", "lde=0x0ab3 0x0ac7", "ldi=0x0ab3 0x0abf", "ldii=0x0ab3 0x0ac0", "ldo=0x0ab3 0x0acb", "ldu=0x0ab3 0x0ac1", "lduu=0x0ab3 0x0ac2", "m=0x0aae 0x0acd", "m.h=0x0aae 0x0acd 0x200c", "mA=0x0aae 0x0abe", "mA.c=0x0aae 0x0ac9", "mI=0x0aae 0x0ac0", "mLLI=0x0aae 0x0ae3", "mLLi=0x0aae 0x0ae2", "mL^I=0x0aae 0x0ae3", "mL^i=0x0aae 0x0ae2", "mRRI=0x0aae 0x0ac4", "mRRi=0x0aae 0x0ac3", "mR^I=0x0aae 0x0ac4", "mR^i=0x0aae 0x0ac3", "mU=0x0aae 0x0ac2", "ma=0x0aae", "maa=0x0aae 0x0abe", "maa.c=0x0aae 0x0ac9", "mai=0x0aae 0x0ac8", "mau=0x0aae 0x0acc", "me=0x0aae 0x0ac7", "mi=0x0aae 0x0abf", "mii=0x0aae 0x0ac0", "mo=0x0aae 0x0acb", "mu=0x0aae 0x0ac1", "muu=0x0aae 0x0ac2", "n=0x0aa8 0x0acd", "n.h=0x0aa8 0x0acd 0x200c", "nA=0x0aa8 0x0abe", "nA.c=0x0aa8 0x0ac9", "nI=0x0aa8 0x0ac0", "nLLI=0x0aa8 0x0ae3", "nLLi=0x0aa8 0x0ae2", "nL^I=0x0aa8 0x0ae3", "nL^i=0x0aa8 0x0ae2", "nRRI=0x0aa8 0x0ac4", "nRRi=0x0aa8 0x0ac3", "nR^I=0x0aa8 0x0ac4", "nR^i=0x0aa8 0x0ac3", "nU=0x0aa8 0x0ac2", "na=0x0aa8", "naa=0x0aa8 0x0abe", "naa.c=0x0aa8 0x0ac9", "nai=0x0aa8 0x0ac8", "nau=0x0aa8 0x0acc", "ne=0x0aa8 0x0ac7", "ni=0x0aa8 0x0abf", "nii=0x0aa8 0x0ac0", "no=0x0aa8 0x0acb", "nu=0x0aa8 0x0ac1", "nuu=0x0aa8 0x0ac2", "p=0x0aaa 0x0acd", "p.h=0x0aaa 0x0acd 0x200c", "pA=0x0aaa 0x0abe", "pA.c=0x0aaa 0x0ac9", "pI=0x0aaa 0x0ac0", "pLLI=0x0aaa 0x0ae3", "pLLi=0x0aaa 0x0ae2", "pL^I=0x0aaa 0x0ae3", "pL^i=0x0aaa 0x0ae2", "pRRI=0x0aaa 0x0ac4", "pRRi=0x0aaa 0x0ac3", "pR^I=0x0aaa 0x0ac4", "pR^i=0x0aaa 0x0ac3", "pU=0x0aaa 0x0ac2", "pa=0x0aaa", "paa=0x0aaa 0x0abe", "paa.c=0x0aaa 0x0ac9", "pai=0x0aaa 0x0ac8", "pau=0x0aaa 0x0acc", "pe=0x0aaa 0x0ac7", "pi=0x0aaa 0x0abf", "pii=0x0aaa 0x0ac0", "po=0x0aaa 0x0acb", "pu=0x0aaa 0x0ac1", "puu=0x0aaa 0x0ac2", "ph=0x0aab 0x0acd", "ph.h=0x0aab 0x0acd 0x200c", "phA=0x0aab 0x0abe", "phA.c=0x0aab 0x0ac9", "phI=0x0aab 0x0ac0", "phLLI=0x0aab 0x0ae3", "phLLi=0x0aab 0x0ae2", "phL^I=0x0aab 0x0ae3", "phL^i=0x0aab 0x0ae2", "phRRI=0x0aab 0x0ac4", "phRRi=0x0aab 0x0ac3", "phR^I=0x0aab 0x0ac4", "phR^i=0x0aab 0x0ac3", "phU=0x0aab 0x0ac2", "pha=0x0aab", "phaa=0x0aab 0x0abe", "phaa.c=0x0aab 0x0ac9", "phai=0x0aab 0x0ac8", "phau=0x0aab 0x0acc", "phe=0x0aab 0x0ac7", "phi=0x0aab 0x0abf", "phii=0x0aab 0x0ac0", "pho=0x0aab 0x0acb", "phu=0x0aab 0x0ac1", "phuu=0x0aab 0x0ac2", "r=0x0ab0 0x0acd", "r.h=0x0ab0 0x0acd 0x200c", "rA=0x0ab0 0x0abe", "rA.c=0x0ab0 0x0ac9", "rI=0x0ab0 0x0ac0", "rLLI=0x0ab0 0x0ae3", "rLLi=0x0ab0 0x0ae2", "rL^I=0x0ab0 0x0ae3", "rL^i=0x0ab0 0x0ae2", "rRRI=0x0ab0 0x0ac4", "rRRi=0x0ab0 0x0ac3", "rR^I=0x0ab0 0x0ac4", "rR^i=0x0ab0 0x0ac3", "rU=0x0ab0 0x0ac2", "ra=0x0ab0", "raa=0x0ab0 0x0abe", "raa.c=0x0ab0 0x0ac9", "rai=0x0ab0 0x0ac8", "rau=0x0ab0 0x0acc", "re=0x0ab0 0x0ac7", "ri=0x0ab0 0x0abf", "rii=0x0ab0 0x0ac0", "ro=0x0ab0 0x0acb", "ru=0x0ab0 0x0ac1", "ruu=0x0ab0 0x0ac2", "s=0x0ab8 0x0acd", "s.h=0x0ab8 0x0acd 0x200c", "sA=0x0ab8 0x0abe", "sA.c=0x0ab8 0x0ac9", "sI=0x0ab8 0x0ac0", "sLLI=0x0ab8 0x0ae3", "sLLi=0x0ab8 0x0ae2", "sL^I=0x0ab8 0x0ae3", "sL^i=0x0ab8 0x0ae2", "sRRI=0x0ab8 0x0ac4", "sRRi=0x0ab8 0x0ac3", "sR^I=0x0ab8 0x0ac4", "sR^i=0x0ab8 0x0ac3", "sU=0x0ab8 0x0ac2", "sa=0x0ab8", "saa=0x0ab8 0x0abe", "saa.c=0x0ab8 0x0ac9", "sai=0x0ab8 0x0ac8", "sau=0x0ab8 0x0acc", "se=0x0ab8 0x0ac7", "si=0x0ab8 0x0abf", "sii=0x0ab8 0x0ac0", "so=0x0ab8 0x0acb", "su=0x0ab8 0x0ac1", "suu=0x0ab8 0x0ac2", "sh=0x0ab6 0x0acd", "sh.h=0x0ab6 0x0acd 0x200c", "shA=0x0ab6 0x0abe", "shA.c=0x0ab6 0x0ac9", "shI=0x0ab6 0x0ac0", "shLLI=0x0ab6 0x0ae3", "shLLi=0x0ab6 0x0ae2", "shL^I=0x0ab6 0x0ae3", "shL^i=0x0ab6 0x0ae2", "shRRI=0x0ab6 0x0ac4", "shRRi=0x0ab6 0x0ac3", "shR^I=0x0ab6 0x0ac4", "shR^i=0x0ab6 0x0ac3", "shU=0x0ab6 0x0ac2", "sha=0x0ab6", "shaa=0x0ab6 0x0abe", "shaa.c=0x0ab6 0x0ac9", "shai=0x0ab6 0x0ac8", "shau=0x0ab6 0x0acc", "she=0x0ab6 0x0ac7", "shi=0x0ab6 0x0abf", "shii=0x0ab6 0x0ac0", "sho=0x0ab6 0x0acb", "shu=0x0ab6 0x0ac1", "shuu=0x0ab6 0x0ac2", "shh=0x0ab7 0x0acd", "shh.h=0x0ab7 0x0acd 0x200c", "shhA=0x0ab7 0x0abe", "shhA.c=0x0ab7 0x0ac9", "shhI=0x0ab7 0x0ac0", "shhLLI=0x0ab7 0x0ae3", "shhLLi=0x0ab7 0x0ae2", "shhL^I=0x0ab7 0x0ae3", "shhL^i=0x0ab7 0x0ae2", "shhRRI=0x0ab7 0x0ac4", "shhRRi=0x0ab7 0x0ac3", "shhR^I=0x0ab7 0x0ac4", "shhR^i=0x0ab7 0x0ac3", "shhU=0x0ab7 0x0ac2", "shha=0x0ab7", "shhaa=0x0ab7 0x0abe", "shhaa.c=0x0ab7 0x0ac9", "shhai=0x0ab7 0x0ac8", "shhau=0x0ab7 0x0acc", "shhe=0x0ab7 0x0ac7", "shhi=0x0ab7 0x0abf", "shhii=0x0ab7 0x0ac0", "shho=0x0ab7 0x0acb", "shhu=0x0ab7 0x0ac1", "shhuu=0x0ab7 0x0ac2", "t=0x0aa4 0x0acd", "t.h=0x0aa4 0x0acd 0x200c", "tA=0x0aa4 0x0abe", "tA.c=0x0aa4 0x0ac9", "tI=0x0aa4 0x0ac0", "tLLI=0x0aa4 0x0ae3", "tLLi=0x0aa4 0x0ae2", "tL^I=0x0aa4 0x0ae3", "tL^i=0x0aa4 0x0ae2", "tRRI=0x0aa4 0x0ac4", "tRRi=0x0aa4 0x0ac3", "tR^I=0x0aa4 0x0ac4", "tR^i=0x0aa4 0x0ac3", "tU=0x0aa4 0x0ac2", "ta=0x0aa4", "taa=0x0aa4 0x0abe", "taa.c=0x0aa4 0x0ac9", "tai=0x0aa4 0x0ac8", "tau=0x0aa4 0x0acc", "te=0x0aa4 0x0ac7", "ti=0x0aa4 0x0abf", "tii=0x0aa4 0x0ac0", "to=0x0aa4 0x0acb", "tu=0x0aa4 0x0ac1", "tuu=0x0aa4 0x0ac2", "th=0x0aa5 0x0acd", "th.h=0x0aa5 0x0acd 0x200c", "thA=0x0aa5 0x0abe", "thA.c=0x0aa5 0x0ac9", "thI=0x0aa5 0x0ac0", "thLLI=0x0aa5 0x0ae3", "thLLi=0x0aa5 0x0ae2", "thL^I=0x0aa5 0x0ae3", "thL^i=0x0aa5 0x0ae2", "thRRI=0x0aa5 0x0ac4", "thRRi=0x0aa5 0x0ac3", "thR^I=0x0aa5 0x0ac4", "thR^i=0x0aa5 0x0ac3", "thU=0x0aa5 0x0ac2", "tha=0x0aa5", "thaa=0x0aa5 0x0abe", "thaa.c=0x0aa5 0x0ac9", "thai=0x0aa5 0x0ac8", "thau=0x0aa5 0x0acc", "the=0x0aa5 0x0ac7", "thi=0x0aa5 0x0abf", "thii=0x0aa5 0x0ac0", "tho=0x0aa5 0x0acb", "thu=0x0aa5 0x0ac1", "thuu=0x0aa5 0x0ac2", "v=0x0ab5 0x0acd", "v.h=0x0ab5 0x0acd 0x200c", "vA=0x0ab5 0x0abe", "vA.c=0x0ab5 0x0ac9", "vI=0x0ab5 0x0ac0", "vLLI=0x0ab5 0x0ae3", "vLLi=0x0ab5 0x0ae2", "vL^I=0x0ab5 0x0ae3", "vL^i=0x0ab5 0x0ae2", "vRRI=0x0ab5 0x0ac4", "vRRi=0x0ab5 0x0ac3", "vR^I=0x0ab5 0x0ac4", "vR^i=0x0ab5 0x0ac3", "vU=0x0ab5 0x0ac2", "va=0x0ab5", "vaa=0x0ab5 0x0abe", "vaa.c=0x0ab5 0x0ac9", "vai=0x0ab5 0x0ac8", "vau=0x0ab5 0x0acc", "ve=0x0ab5 0x0ac7", "vi=0x0ab5 0x0abf", "vii=0x0ab5 0x0ac0", "vo=0x0ab5 0x0acb", "vu=0x0ab5 0x0ac1", "vuu=0x0ab5 0x0ac2", "w=0x0ab5 0x0acd", "w.h=0x0ab5 0x0acd 0x200c", "wA=0x0ab5 0x0abe", "wA.c=0x0ab5 0x0ac9", "wI=0x0ab5 0x0ac0", "wLLI=0x0ab5 0x0ae3", "wLLi=0x0ab5 0x0ae2", "wL^I=0x0ab5 0x0ae3", "wL^i=0x0ab5 0x0ae2", "wRRI=0x0ab5 0x0ac4", "wRRi=0x0ab5 0x0ac3", "wR^I=0x0ab5 0x0ac4", "wR^i=0x0ab5 0x0ac3", "wU=0x0ab5 0x0ac2", "wa=0x0ab5", "waa=0x0ab5 0x0abe", "waa.c=0x0ab5 0x0ac9", "wai=0x0ab5 0x0ac8", "wau=0x0ab5 0x0acc", "we=0x0ab5 0x0ac7", "wi=0x0ab5 0x0abf", "wii=0x0ab5 0x0ac0", "wo=0x0ab5 0x0acb", "wu=0x0ab5 0x0ac1", "wuu=0x0ab5 0x0ac2", "x=0x0a95 0x0acd 0x0ab7 0x0acd", "x.h=0x0a95 0x0acd 0x0ab7 0x0acd 0x200c", "xA=0x0a95 0x0acd 0x0ab7 0x0abe", "xA.c=0x0a95 0x0acd 0x0ab7 0x0ac9", "xI=0x0a95 0x0acd 0x0ab7 0x0ac0", "xLLI=0x0a95 0x0acd 0x0ab7 0x0ae3", "xLLi=0x0a95 0x0acd 0x0ab7 0x0ae2", "xL^I=0x0a95 0x0acd 0x0ab7 0x0ae3", "xL^i=0x0a95 0x0acd 0x0ab7 0x0ae2", "xRRI=0x0a95 0x0acd 0x0ab7 0x0ac4", "xRRi=0x0a95 0x0acd 0x0ab7 0x0ac3", "xR^I=0x0a95 0x0acd 0x0ab7 0x0ac4", "xR^i=0x0a95 0x0acd 0x0ab7 0x0ac3", "xU=0x0a95 0x0acd 0x0ab7 0x0ac2", "xa=0x0a95 0x0acd 0x0ab7", "xaa=0x0a95 0x0acd 0x0ab7 0x0abe", "xaa.c=0x0a95 0x0acd 0x0ab7 0x0ac9", "xai=0x0a95 0x0acd 0x0ab7 0x0ac8", "xau=0x0a95 0x0acd 0x0ab7 0x0acc", "xe=0x0a95 0x0acd 0x0ab7 0x0ac7", "xi=0x0a95 0x0acd 0x0ab7 0x0abf", "xii=0x0a95 0x0acd 0x0ab7 0x0ac0", "xo=0x0a95 0x0acd 0x0ab7 0x0acb", "xu=0x0a95 0x0acd 0x0ab7 0x0ac1", "xuu=0x0a95 0x0acd 0x0ab7 0x0ac2", "y=0x0aaf 0x0acd", "y.h=0x0aaf 0x0acd 0x200c", "yA=0x0aaf 0x0abe", "yA.c=0x0aaf 0x0ac9", "yI=0x0aaf 0x0ac0", "yLLI=0x0aaf 0x0ae3", "yLLi=0x0aaf 0x0ae2", "yL^I=0x0aaf 0x0ae3", "yL^i=0x0aaf 0x0ae2", "yRRI=0x0aaf 0x0ac4", "yRRi=0x0aaf 0x0ac3", "yR^I=0x0aaf 0x0ac4", "yR^i=0x0aaf 0x0ac3", "yU=0x0aaf 0x0ac2", "ya=0x0aaf", "yaa=0x0aaf 0x0abe", "yaa.c=0x0aaf 0x0ac9", "yai=0x0aaf 0x0ac8", "yau=0x0aaf 0x0acc", "ye=0x0aaf 0x0ac7", "yi=0x0aaf 0x0abf", "yii=0x0aaf 0x0ac0", "yo=0x0aaf 0x0acb", "yu=0x0aaf 0x0ac1", "yuu=0x0aaf 0x0ac2", "~N=0x0a99 0x0acd", "~N.h=0x0a99 0x0acd 0x200c", "~NA=0x0a99 0x0abe", "~NA.c=0x0a99 0x0ac9", "~NI=0x0a99 0x0ac0", "~NLLI=0x0a99 0x0ae3", "~NLLi=0x0a99 0x0ae2", "~NL^I=0x0a99 0x0ae3", "~NL^i=0x0a99 0x0ae2", "~NRRI=0x0a99 0x0ac4", "~NRRi=0x0a99 0x0ac3", "~NR^I=0x0a99 0x0ac4", "~NR^i=0x0a99 0x0ac3", "~NU=0x0a99 0x0ac2", "~Na=0x0a99", "~Naa=0x0a99 0x0abe", "~Naa.c=0x0a99 0x0ac9", "~Nai=0x0a99 0x0ac8", "~Nau=0x0a99 0x0acc", "~Ne=0x0a99 0x0ac7", "~Ni=0x0a99 0x0abf", "~Nii=0x0a99 0x0ac0", "~No=0x0a99 0x0acb", "~Nu=0x0a99 0x0ac1", "~Nuu=0x0a99 0x0ac2", "~n=0x0a9e 0x0acd", "~n.h=0x0a9e 0x0acd 0x200c", "~nA=0x0a9e 0x0abe", "~nA.c=0x0a9e 0x0ac9", "~nI=0x0a9e 0x0ac0", "~nLLI=0x0a9e 0x0ae3", "~nLLi=0x0a9e 0x0ae2", "~nL^I=0x0a9e 0x0ae3", "~nL^i=0x0a9e 0x0ae2", "~nRRI=0x0a9e 0x0ac4", "~nRRi=0x0a9e 0x0ac3", "~nR^I=0x0a9e 0x0ac4", "~nR^i=0x0a9e 0x0ac3", "~nU=0x0a9e 0x0ac2", "~na=0x0a9e", "~naa=0x0a9e 0x0abe", "~naa.c=0x0a9e 0x0ac9", "~nai=0x0a9e 0x0ac8", "~nau=0x0a9e 0x0acc", "~ne=0x0a9e 0x0ac7", "~ni=0x0a9e 0x0abf", "~nii=0x0a9e 0x0ac0", "~no=0x0a9e 0x0acb", "~nu=0x0a9e 0x0ac1", "~nuu=0x0a9e 0x0ac2", // Independent vowels "a=0x0a85", "A=0x0a86", "aa=0x0a86", "i=0x0a87", "I=0x0a88", "ii=0x0a88", "u=0x0a89", "U=0x0a8a", "uu=0x0a8a", "R^i=0x0a8b", "RRi=0x0a8b", "L^i=0x0a8c", "LLi=0x0a8c", "e.c=0x0a8d", "e=0x0a8f", "ai=0x0a90", "A.c=0x0a91", "aa.c=0x0a91", "o=0x0a93", "au=0x0a94", "R^I=0x0ae0", "RRI=0x0ae0", "L^I=0x0ae1", "LLI=0x0ae1", // Numbers "0x30=0x0ae6", "0x31=0x0ae7", "0x32=0x0ae8", "0x33=0x0ae9", "0x34=0x0aea", "0x35=0x0aeb", "0x36=0x0aec", "0x37=0x0aed", "0x38=0x0aee", "0x39=0x0aef", // Other marks ".N=0x0a81", ".n=0x0a82", "M=0x0a82", "H=0x0a83", ".a=0x0abd", ".c=0x0ac5", ".h=0x0acd 0x200c", "AUM=0x0ad0", "OM=0x0ad0", // Removed by gaspar ".=0x0964", // Removed by gaspar "..=0x0965", "|=0x0964", "||=0x0965", ";=0x0965", "{\\rm 0x20 .}=0x002e", "{}=0x200d", ./mytool/kmap/Runic.kmap0000644000175000017500000000514507630417040015250 0ustar henrichhenrich// ----------------------------------------------------------------------- // ᚦᛖ᛫ᛞᚹᚫᚱᛞ᛫ᚱᚢᚾᛖᛋ᛬ᚩᚱ᛬ᚫ᛫ᛈᚩᛁᚾᛏᛚᛖᛋᛋ᛫ᛖᚾᛞᛠᚢᚩᚢᚱ᛬ᛒᛖᛁᛝ᛫ᚦᛖ᛫ᛈᚱᚩᛞᚢᚳᛏ᛫ᚩᚠ᛫ᚻᚫᛚᚠ᛫ᚫᚾ᛫ᚻᚩᚢᚱᛋ // ᛖᛞᛁᛏᛁᛝ᛫ᛞᚩᚾᛖ᛫ᛒᚣ᛫ᛞᚫᚢᛁᛞ᛫ᚩᚠᛏᛖᛞᚫᛚ᛫ᚩᚠ᛫ᚩᛋᛚᚩ᛬ᚾᚩᚱᚹᚫᚣ᛫ᚫᚾᛞ᛫ᛈᚢᛒᛚᛁᛋᚻᛖᛞ᛫ᛒᚣ᛫ᚣᚢᛞᛁᛏ᛫ᚩᚱᚷ᛬ // ----------------------------------------------------------------------- // Dwarf Runes from The Hobbit for the Unicode editor Yudit // 2003-03-02 david@start.no // Borrowed from http://heima.olivant.fo/~styrheim/tools/runes/rtable.html // ----------------------------------------------------------------------- // Changes: // None // ----------------------------------------------------------------------- //"a=0x16A8", // ᚨ RUNIC LETTER ANSUZ A "a=0x16AB", // ᚫ RUNIC LETTER AESC "b=0x16D2", // ᛒ RUNIC LETTER BERKANAN BEORC BJARKAN B "c=0x16B3", // ᚳ RUNIC LETTER CEN "d=0x16DE", // ᛞ RUNIC LETTER DAGAZ DAEG D "e=0x16D6", // ᛖ RUNIC LETTER EHWAZ EH E "f=0x16A0", // ᚠ RUNIC LETTER FEHU FEOH FE F "g=0x16B7", // ᚷ RUNIC LETTER GEBO GYFU G "h=0x16BB", // ᚻ RUNIC LETTER HAEGL H "i=0x16C1", // ᛁ RUNIC LETTER ISAZ IS ISS I "j=0x16C1", // ᛁ RUNIC LETTER ISAZ IS ISS I "k=0x16B4", // ᚴ RUNIC LETTER KAUN K - NOT THE K THAT TOLKIEN USED "l=0x16DA", // ᛚ RUNIC LETTER LAUKAZ LAGU LOGR L "m=0x16D7", // ᛗ RUNIC LETTER MANNAZ MAN M "n=0x16BE", // ᚾ RUNIC LETTER NAUDIZ NYD NAUD N "o=0x16A9", // ᚩ RUNIC LETTER OS O "p=0x16C8", // ᛈ RUNIC LETTER PERTHO PEORTH P "q=0x16B3 0x16B9", // TOLKIEN USED CW INSTEAD OF Q "r=0x16B1", // ᚱ RUNIC LETTER RAIDO RAD REID R "s=0x16CB", // ᛋ RUNIC LETTER SIGEL LONG-BRANCH-SOL S "t=0x16CF", // ᛏ RUNIC LETTER TIWAZ TIR TYR T "u=0x16A2", // ᚢ RUNIC LETTER U "v=0x16A2", // ᚢ RUNIC LETTER URUZ UR U "w=0x16B9", // ᚹ RUNIC LETTER WUNJO WYNN W → 01BF ƿ latin letter wynn "x=0x16D8", // ᛘ RUNIC LETTER LONG-BRANCH-MADR M "y=0x16A3", // ᚣ RUNIC LETTER YR "z=0x16E3", // ᛣ RUNIC LETTER CALC // COMPOUND CHARACTERS "th=0x16A6", // ᚦ RUNIC LETTER THURISAZ THURS THORN → 00FE þ latin small letter thorn "ng=0x16DD", // ᛝ RUNIC LETTER ING "ee=0x16DF", // ᛟ RUNIC LETTER OTHALAN ETHEL O "ea=0x16E0", // ᛠ RUNIC LETTER EAR //"st=0x0000", // N/A, KIND OF LOOKS LIKE ᛞ, BUT NOT QUITE "eo=Z", // A Z. Why not? ".=0x16EB", // ᛫ RUNIC SINGLE PUNCTUATION (SPACE) ":=0x16EC", // ᛬ RUNIC MULTIPLE PUNCTUATION (COMMA) // TOLKIEN USED THREE DOTS AS A PERIOD. ./mytool/kmap/ArmenianWest.kmap0000644000175000017500000000317107532460064016567 0ustar henrichhenrich// // Western Armenian Phonetic keyboard (Rafi Papazian) // // Mark Leisher // 1998-11-21 // "!=0x0031", // "#=0x0545", // "$=0x0033", // "%=0x0034", // "&=0x0587", // "'=0x0583", // "(=0x0029", // ")=0x0555", // "*=0x0028", // ",=0x0577", // "-=0x057C", // ".=0x0572", // "/=0x056E", // "0x30=0x0585", // "0x31=0x003A", // "0x32=0x0571", // "0x33=0x0575", // "0x34=0x055B", // "0x35=0x002C", // "0x36=0x002D", // "0x37=0x002E", // "0x38=0x00AB", // "0x39=0x00BB", // ":=0x0539", // ";=0x0569", // "<=0x0547", // "0x3D=0x056A", // ">=0x0542", // "?=0x053E", // "@=0x0541", // "A=0x0531", // "B=0x054A", // "C=0x0533", // "D=0x054F", // "E=0x0537", // "F=0x0556", // "G=0x053F", // "H=0x0540", // "I=0x053B", // "J=0x0543", // "K=0x0554", // "L=0x053C", // "M=0x0544", // "N=0x0546", // "O=0x0548", // "P=0x0532", // "Q=0x053D", // "R=0x0550", // "S=0x054D", // "T=0x0534", // "U=0x0538", // "V=0x0552", // "W=0x054E", // "X=0x0551", // "Y=0x0535", // "Z=0x0536", // "[=0x0579", // "\"=0x0553", // "\+=0x053A", // "\\=0x0027", // "]=0x057B", // "^=0x0039", // "_=0x054C", // "`=0x055D", // "a=0x0561", // "b=0x057A", // "c=0x0563", // "d=0x057F", // "e=0x0567", // "f=0x0586", // "g=0x056F", // "h=0x0570", // "i=0x056B", // "j=0x0573", // "k=0x0584", // "l=0x056C", // "m=0x0574", // "n=0x0576", // "o=0x0578", // "p=0x0562", // "q=0x056D", // "r=0x0580", // "s=0x057D", // "t=0x0564", // "u=0x0568", // "v=0x0582", // "w=0x057E", // "x=0x0581", // "y=0x0565", // "z=0x0566", // "{=0x0549", // "|=0x055E", // "}=0x054B", // "~=0x055C", // ./mytool/kmap/Czech-deadkeys.kmap0000644000175000017500000000676407532460064017030 0ustar henrichhenrich// CS-dead.kmap,v 1.0 2001/08/08 // Radovan Garabík // Czech and Slovak keyboard - dead key only "0x3D 0x3D=0x003D", // EQUALS SIGN "++=0x002B", // PLUS SIGN "0x3D +=0x002B", // PLUS SIGN "0x3D +=0x003D", // EQUALS SIGN "+0x3D=0x003D", // EQUALS SIGN "0x3D A=0x00C1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "+A=0x00C4", // Ä = LATIN CAPITAL LETTER A WITH DIARESIS "+C=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "0x3D C=0x010C", // Č = LATIN CAPITAL LETTER C WITH CARON "+D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D D=0x010E", // Ď = LATIN CAPITAL LETTER D WITH CARON "0x3D E=0x00C9", // É = LATIN CAPITAL LETTER E WITH ACUTE "+E=0x011A", // Ě = LATIN CAPITAL LETTER E WITH CARON "0x3D I=0x00CD", // Í = LATIN CAPITAL LETTER I WITH ACUTE "0x3D L=0x0139", // Ĺ = LATIN CAPITAL LETTER L WITH ACUTE "+L=0x013D", // Ľ = LATIN CAPITAL LETTER L WITH CARON "+N=0x0147", // Ň = LATIN CAPITAL LETTER N WITH CARON "0x3D N=0x0147", // Ň = LATIN CAPITAL LETTER N WITH CARON "0x3D O=0x00D3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "+O=0x00D4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "+P=0x00D6", // Ö = LATIN CAPITAL LETTER O WITH DIARESIS "0x3D R=0x0154", // Ŕ = LATIN CAPITAL LETTER R WITH ACUTE "+R=0x0158", // Ř = LATIN CAPITAL LETTER R WITH CARON "+S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "0x3D S=0x0160", // Š = LATIN CAPITAL LETTER S WITH CARON "+T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D T=0x0164", // Ť = LATIN CAPITAL LETTER T WITH CARON "0x3D U=0x00DA", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "+U=0x016E", // Ů = LATIN CAPITAL LETTER U WITH RING ABOVE "+I=0x00DC", // Ü = LATIN CAPITAL LETTER U WITH DIARESIS "0x3D Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Y=0x00DD", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "+Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x3D Z=0x017D", // Ž = LATIN CAPITAL LETTER Z WITH CARON "0x3D a=0x00E1", // á = LATIN SMALL LETTER A WITH ACUTE "+a=0x00E4", // ä = LATIN SMALL LETTER A WITH DIARESIS "+c=0x010D", // č = LATIN SMALL LETTER C WITH CARON "0x3D c=0x010D", // č = LATIN SMALL LETTER C WITH CARON "+d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x3D d=0x010F", // ď = LATIN SMALL LETTER D WITH CARON "0x3D e=0x00E9", // é = LATIN SMALL LETTER E WITH ACUTE "+e=0x011B", // ě = LATIN SMALL LETTER E WITH CARON "0x3D i=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "0x3D l=0x013A", // ĺ = LATIN SMALL LETTER L WITH ACUTE "+l=0x013E", // ľ = LATIN SMALL LETTER L WITH CARON "+n=0x0148", // ň = LATIN SMALL LETTER N WITH CARON "0x3D n=0x0148", // ň = LATIN SMALL LETTER N WITH CARON "0x3D o=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "+o=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "+p=0x00F6", // ö = LATIN SMALL LETTER O WITH DIARESIS "0x3D r=0x0155", // ŕ = LATIN SMALL LETTER R WITH ACUTE "+r=0x0159", // ř = LATIN SMALL LETTER R WITH CARON "+s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "0x3D s=0x0161", // š = LATIN SMALL LETTER S WITH CARON "+t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "0x3D t=0x0165", // ť = LATIN SMALL LETTER T WITH CARON "0x3D u=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "+u=0x016F", // ů = LATIN SMALL LETTER U WITH RING ABOVE "+i=0x00FC", // ü = LATIN SMALL LETTER U WITH DIARESIS "0x3D y=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "+y=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "+z=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON "0x3D z=0x017E", // ž = LATIN SMALL LETTER Z WITH CARON ./mytool/kmap/ArmenianEastPhon.kmap0000644000175000017500000000313407565565734017405 0ustar henrichhenrich// Eastern Armenian keymap for Latin keyboards 1.1.2 // 2002-11-16 by S. Hakim Hamdani // The newest version of this and other keymaps is // available from http://hamdani.cc/unicode/yudit/kmap // This keymap is released under the terms of the GPL // Non-combining characters capitals "A=0x0531", "B=0x0532", "F=0x0556", "H=0x0540", "I=0x053B", "J=0x0552", "L=0x053C", "M=0x0544", "N=0x0546", "Q=0x0538", "U=0x0548 0x0552", // Combining hierarchies capitals "C'=0x0549", "CH=0x053D", "D=0x0534", "DJ=0x054B", "DZ=0x0541", "DZ'=0x0543", "E=0x0535", "E'=0x0537", "G=0x0533", "GH=0x0542", "K=0x053F", "K'=0x0554", "O=0x0548", "OO=0x0555", "P=0x054A", "P'=0x0553", "R=0x0550", "RR=0x054C", "S=0x054D", "SH=0x0547", "T=0x054F", "T'=0x0539", "TS=0x053E", "TS'=0x0551", "V=0x054E", "Y=0x0545", "YE=0x0535", "Ye=0x0535", "Z=0x0536", "ZH=0x053A", // Non-combining characters minuscles "a=0x0561", "b=0x0562", "f=0x0586", "h=0x0570", "i=0x056B", "j=0x0582", "l=0x056C", "m=0x0574", "n=0x0576", "q=0x0568", "u=0x0578 0x0582", // Combining hierarchies minuscles "c'=0x0579", "ch=0x056D", "d=0x0564", "dj=0x057B", "dz=0x0571", "dz'=0x0573", "e=0x0565", "e'=0x0567", "g=0x0563", "gh=0x0572", "k=0x056F", "k'=0x0584", "o=0x0578", "oo=0x0585", "p=0x057A", "p'=0x0583", "r=0x0580", "rr=0x057C", "s=0x057D", "sh=0x0577", "t=0x057F", "t'=0x0569", "ts=0x056E", "ts'=0x0581", "v=0x057E", "y=0x0575", "ye=0x0565", "z=0x0566", "zh=0x056A", // Ligatures "ev=0x0587", "yev=0x0587", // Punctuation ".=0x0589", ",=0x055D", "-=0x058A", "!=0x055C", "?=0x055E", "`=0x055B" ./mytool/kmap/Vietnamese-Telex2.kmap0000644000175000017500000001753307532460064017442 0ustar henrichhenrich// VNtelex.kmap using the "telex" inputing Method // // Modified from "Vietnamese.kmap" by Nguyn Dai Qu // 07/1999 "af=0x00E0", // "Af=0x00C0", // "as=0x00E1", // "As=0x00C1", // "aa=0x00E2", // "AA=0x00C2", // "ax=0x00E3", // a~ "Ax=0x00C3", // A~ "ef=0x00E8", // "Ef=0x00C8", // "es=0x00E9", // "Es=0x00C9", // "ee=0x00EA", // "EE=0x00CA", // S = LATIN CAPITAL LETTER E WITH CIRCUMFLEX "if=0x00EC", // ì = LATIN SMALL LETTER I WITH GRAVE "If=0x00CC", // ? = LATIN CAPITAL LETTER I WITH GRAVE "is=0x00ED", // í = LATIN SMALL LETTER I WITH ACUTE "Is=0x00CD", // ? = LATIN CAPITAL LETTER I WITH ACUTE "of=0x00F2", // ò = LATIN SMALL LETTER O WITH GRAVE "Of=0x00D2", // ? = LATIN CAPITAL LETTER O WITH GRAVE "os=0x00F3", // ó = LATIN SMALL LETTER O WITH ACUTE "Os=0x00D3", // ? = LATIN CAPITAL LETTER O WITH ACUTE "oo=0x00F4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "OO=0x00D4", // ? = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "ox=0x00F5", // õ = LATIN SMALL LETTER O WITH TILDE "Ox=0x00D5", // * = LATIN CAPITAL LETTER O WITH TILDE "uf=0x00F9", // ù = LATIN SMALL LETTER U WITH GRAVE "Uf=0x00D9", // ? = LATIN CAPITAL LETTER U WITH GRAVE "us=0x00FA", // ú = LATIN SMALL LETTER U WITH ACUTE "Us=0x00DA", // s = LATIN CAPITAL LETTER U WITH ACUTE "ys=0x00FD", // ý = LATIN SMALL LETTER Y WITH ACUTE "Ys=0x00DD", // ? = LATIN CAPITAL LETTER Y WITH ACUTE "aw=0x0103", // f = LATIN SMALL LETTER A WITH BREVE "Aw=0x0102", // , = LATIN CAPITAL LETTER A WITH BREVE "ix=0x0129", // ĩ = LATIN SMALL LETTER I WITH TILDE "Ix=0x0128", // Ĩ = LATIN CAPITAL LETTER I WITH TILDE "ux=0x0169", // ũ = LATIN SMALL LETTER U WITH TILDE "Ux=0x0168", // Ũ = LATIN CAPITAL LETTER U WITH TILDE "ow=0x01A1", // ơ = LATIN SMALL LETTER O WITH HORN "Ow=0x01A0", // Ơ = LATIN CAPITAL LETTER O WITH HORN "uw=0x01B0", // ư = LATIN SMALL LETTER U WITH HORN "Uw=0x01AF", // Ư = LATIN CAPITAL LETTER U WITH HORN "aj=0x1EA1", // ạ = LATIN SMALL LETTER A WITH DOT BELOW "Aj=0x1EA0", // Ạ = LATIN CAPITAL LETTER A WITH DOT BELOW "ar=0x1EA3", // ả = LATIN SMALL LETTER A WITH HOOK ABOVE "Ar=0x1EA2", // Ả = LATIN CAPITAL LETTER A WITH HOOK ABOVE "aas=0x1EA5", // ấ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE "AAs=0x1EA4", // Ấ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE "aaf=0x1EA7", // ầ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE "AAf=0x1EA6", // Ầ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE "aar=0x1EA9", // Ẩ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "AAr=0x1EA8", // Ẩ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE "aax=0x1EAB", // ẫ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE "AAx=0x1EAA", // Ẫ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE "aaj=0x1EAD", // ậ = LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW "AAj=0x1EAC", // Ậ = LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW "aws=0x1EAF", // ắ = LATIN SMALL LETTER A WITH BREVE AND ACUTE "Aws=0x1EAE", // Ắ = LATIN CAPITAL LETTER A WITH BREVE AND ACUTE "awf=0x1EB1", // ằ = LATIN SMALL LETTER A WITH BREVE AND GRAVE "Awf=0x1EB0", // Ằ = LATIN CAPITAL LETTER A WITH BREVE AND GRAVE "awr=0x1EB3", // ẳ = LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE "Awr=0x1EB2", // Ẳ = LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE "awx=0x1EB5", // ẵ = LATIN SMALL LETTER A WITH BREVE AND TILDE "Awx=0x1EB4", // Ẵ = LATIN CAPITAL LETTER A WITH BREVE AND TILDE "awj=0x1EB7", // ặ = LATIN SMALL LETTER A WITH BREVE AND DOT BELOW "Awj=0x1EB6", // Ặ = LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW "ej=0x1EB9", // ẹ = LATIN SMALL LETTER E WITH DOT BELOW "Ej=0x1EB8", // Ẹ = LATIN CAPITAL LETTER E WITH DOT BELOW "er=0x1EBB", // ẻ = LATIN SMALL LETTER E WITH HOOK ABOVE "Er=0x1EBA", // Ẻ = LATIN CAPITAL LETTER E WITH HOOK ABOVE "ex=0x1EBD", // ẽ = LATIN SMALL LETTER E WITH TILDE "Ex=0x1EBC", // Ẽ = LATIN CAPITAL LETTER E WITH TILDE "ees=0x1EBF", // ế = LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE "EEs=0x1EBE", // Ế = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE "eef=0x1EC1", // ? = LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE "EEf=0x1EC0", // ? = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE "eer=0x1EC3", // f = LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "EEr=0x1EC2", // , = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE "eex=0x1EC5", // ? = LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE "EEx=0x1EC4", // ? = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE "eej=0x1EC7", // ? = LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW "EEj=0x1EC6", // ? = LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW "ir=0x1EC9", // ? = LATIN SMALL LETTER I WITH HOOK ABOVE "Ir=0x1EC8", // ^ = LATIN CAPITAL LETTER I WITH HOOK ABOVE "ij=0x1ECB", // < = LATIN SMALL LETTER I WITH DOT BELOW "Ij=0x1ECA", // S = LATIN CAPITAL LETTER I WITH DOT BELOW "oj=0x1ECD", // ? = LATIN SMALL LETTER O WITH DOT BELOW "Oj=0x1ECC", // ? = LATIN CAPITAL LETTER O WITH DOT BELOW "or=0x1ECF", // ? = LATIN SMALL LETTER O WITH HOOK ABOVE "Or=0x1ECE", // ? = LATIN CAPITAL LETTER O WITH HOOK ABOVE "oos=0x1ED1", // ? = LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE "OOs=0x1ED0", // ? = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE "oof=0x1ED3", // ? = LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE "OOf=0x1ED2", // ? = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE "oor=0x1ED5", // * = LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "OOr=0x1ED4", // ? = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE "oox=0x1ED7", // - = LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE "OOx=0x1ED6", // - = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE "ooj=0x1ED9", // ? = LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW "OOj=0x1ED8", // ~ = LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW "ows=0x1EDB", // > = LATIN SMALL LETTER O WITH HORN AND ACUTE "Ows=0x1EDA", // s = LATIN CAPITAL LETTER O WITH HORN AND ACUTE "owf=0x1EDD", // ? = LATIN SMALL LETTER O WITH HORN AND GRAVE "Owf=0x1EDC", // ? = LATIN CAPITAL LETTER O WITH HORN AND GRAVE "owr=0x1EDF", // Y = LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE "Owr=0x1EDE", // ? = LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE "owx=0x1EE1", // ỡ = LATIN SMALL LETTER O WITH HORN AND TILDE "Owx=0x1EE0", // Ỡ = LATIN CAPITAL LETTER O WITH HORN AND TILDE "owj=0x1EE3", // ợ = LATIN SMALL LETTER O WITH HORN AND DOT BELOW "Owj=0x1EE2", // Ợ = LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW "uj=0x1EE5", // ụ = LATIN SMALL LETTER U WITH DOT BELOW "Uj=0x1EE4", // Ụ = LATIN CAPITAL LETTER U WITH DOT BELOW "ur=0x1EE7", // ủ = LATIN SMALL LETTER U WITH HOOK ABOVE "Ur=0x1EE6", // Ủ = LATIN CAPITAL LETTER U WITH HOOK ABOVE "uws=0x1EE9", // ứ = LATIN SMALL LETTER U WITH HORN AND ACUTE "Uws=0x1EE8", // Ứ = LATIN CAPITAL LETTER U WITH HORN AND ACUTE "uwf=0x1EEB", // ừ = LATIN SMALL LETTER U WITH HORN AND GRAVE "Uwf=0x1EEA", // Ừ = LATIN CAPITAL LETTER U WITH HORN AND GRAVE "uwr=0x1EED", // ử = LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE "Uwr=0x1EEC", // Ử = LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE "uwx=0x1EEF", // ữ = LATIN SMALL LETTER U WITH HORN AND TILDE "Uwx=0x1EEE", // Ữ = LATIN CAPITAL LETTER U WITH HORN AND TILDE "uwj=0x1EF1", // ự = LATIN SMALL LETTER U WITH HORN AND DOT BELOW "Uwj=0x1EF0", // Ự = LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW "yf=0x1EF3", // ỳ = LATIN SMALL LETTER Y WITH GRAVE "Yf=0x1EF2", // Ỳ = LATIN CAPITAL LETTER Y WITH GRAVE "yj=0x1EF5", // ỵ = LATIN SMALL LETTER Y WITH DOT BELOW "Yj=0x1EF4", // Ỵ = LATIN CAPITAL LETTER Y WITH DOT BELOW "yr=0x1EF7", // ỷ = LATIN SMALL LETTER Y WITH HOOK ABOVE "Yr=0x1EF6", // Ỷ = LATIN CAPITAL LETTER Y WITH HOOK ABOVE "yx=0x1EF9", // ỹ = LATIN SMALL LETTER Y WITH TILDE "Yx=0x1EF8", // Ỹ = LATIN CAPITAL LETTER Y WITH TILDE "dd=0x0111", // ? = LATIN SMALL LETTER D WITH STROKE "DD=0x0110", // ? = LATIN CAPITAL LETTER D WITH STROKE ./mytool/kmap/Danish.kmap0000644000175000017500000001025207532460064015376 0ustar henrichhenrich// Danish.kmap for the Unicode editor Yudit // 1998-04-17 Roman Czyborra@cs.tu-berlin.de // Danish letters // BL: In a few cases, for transcribing foreign names (like frensh), // oe = oslash may be a problem, but it is the way danes always transcribe it. "AA=0x00c5", // Å = LATIN CAPITAL LETTER A WITH RING ABOVE "AE=0x00c6", // Æ = LATIN CAPITAL LETTER AE "OE=0x00d8", // Ø = LATIN CAPITAL LETTER O WITH STROKE "aa=0x00e5", // å = LATIN SMALL LETTER A WITH RING ABOVE "ae=0x00e6", // æ = LATIN SMALL LETTER AE "oe=0x00f8", // ø = LATIN SMALL LETTER O WITH STROKE // The international currency sign looks like a crown and is thus well // suited for any Skandinavian krona: // BL: Please strike this, it is not very good. Kroner = kr. // "kr.=0x00A4", // ¤ = CURRENCY SIGN // http://domen.uninett.no/~hta/ietf/lang-chars.txt lists the // following optional Danish accents: // BL: Dead accents should be used, ppl are used to this. // See a more updated keymap on // http://www.dkuug.dk/keld/xkb_latin1.html "´A=0x00c1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "´E=0x00c9", // É = LATIN CAPITAL LETTER E WITH ACUTE "´I=0x00cd", // Í = LATIN CAPITAL LETTER I WITH ACUTE "´O=0x00d3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "´U=0x00da", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "´Y=0x00dd", // Ý = LATIN CAPITAL LETTER Y WITH ACUTE "´a=0x00e1", // á = LATIN SMALL LETTER A WITH ACUTE "´e=0x00e9", // é = LATIN SMALL LETTER E WITH ACUTE "´i=0x00ed", // í = LATIN SMALL LETTER I WITH ACUTE "´o=0x00f3", // ó = LATIN SMALL LETTER O WITH ACUTE "´u=0x00fa", // ú = LATIN SMALL LETTER U WITH ACUTE "´y=0x00fd", // ý = LATIN SMALL LETTER Y WITH ACUTE // optional Norwegian accents // BL: Dunno if they are especially norwegian but they are // potentially useful for writing foreign ppl's names. // Better to have too many than too few. "A<=0x01cd", // Ǎ = LATIN CAPITAL LETTER A WITH CARON "¸C=0x00c7", // Ç = LATIN CAPITAL LETTER C WITH CEDILLA "~N=0x00d1", // Ñ = LATIN CAPITAL LETTER N WITH TILDE "^O=0x00d4", // Ô = LATIN CAPITAL LETTER O WITH CIRCUMFLEX "¨U=0x00dc", // Ü = LATIN CAPITAL LETTER U WITH DIAERESIS // for us-ascii-only systems: ":U=0x00dc", // Ü = LATIN CAPITAL LETTER U WITH DIAERESIS "a<=0x01ce", // ǎ = LATIN SMALL LETTER A WITH CARON "¸c=0x00e7", // ç = LATIN SMALL LETTER C WITH CEDILLA "~n=0x00f1", // ñ = LATIN SMALL LETTER N WITH TILDE "^o=0x00f4", // ô = LATIN SMALL LETTER O WITH CIRCUMFLEX "¨u=0x00fc", // ü = LATIN SMALL LETTER U WITH DIAERESIS // for us-ascii-only systems: ":u=0x00fc", // ü = LATIN SMALL LETTER U WITH DIAERESIS "`A=0x00c0", // À = LATIN CAPITAL LETTER A WITH GRAVE "`E=0x00c8", // È = LATIN CAPITAL LETTER E WITH GRAVE "`I=0x00cc", // Ì = LATIN CAPITAL LETTER I WITH GRAVE "`O=0x00d2", // Ò = LATIN CAPITAL LETTER O WITH GRAVE "`U=0x00d9", // Ù = LATIN CAPITAL LETTER U WITH GRAVE "`a=0x00e0", // à = LATIN SMALL LETTER A WITH GRAVE "`e=0x00e8", // è = LATIN SMALL LETTER E WITH GRAVE "`i=0x00ec", // ì = LATIN SMALL LETTER I WITH GRAVE "`o=0x00f2", // ò = LATIN SMALL LETTER O WITH GRAVE "`u=0x00f9", // ù = LATIN SMALL LETTER U WITH GRAVE // Swedish letters. // BL: Swedish is the same as danish except o-diaresis is used // instead of o-slash and a-diaresis instead of a-ring. "¨A=0x00c4", // Ä = LATIN CAPITAL LETTER A WITH DIAERESIS "¨O=0x00d6", // Ö = LATIN CAPITAL LETTER O WITH DIAERESIS "¨a=0x00e4", // ä = LATIN SMALL LETTER A WITH DIAERESIS "¨o=0x00f6", // ö = LATIN SMALL LETTER O WITH DIAERESIS // for us-ascii-only systems: ":A=0x00c4", // Ä = LATIN CAPITAL LETTER A WITH DIAERESIS ":O=0x00d6", // Ö = LATIN CAPITAL LETTER O WITH DIAERESIS ":a=0x00e4", // ä = LATIN SMALL LETTER A WITH DIAERESIS ":o=0x00f6", // ö = LATIN SMALL LETTER O WITH DIAERESIS // Not much missing for Faeroese and Icelandic: "D-=0x00d0", // Ð = LATIN CAPITAL LETTER ETH "d-=0x00f0", // ð = LATIN SMALL LETTER ETH "T-=0x00de", // Þ = LATIN CAPITAL LETTER THORN "t-=0x00fe", // þ = LATIN SMALL LETTER THORN // Doublequotes. Swedes use «» (or so I've heard), but I prefer doublequotes. // Uncomment if you feel the same way: "«=0x201c", // “ = QUOTEDBLLEFT "»=0x201d", // ” = QUOTEDBLRIGHT ./mytool/kmap/SpanishPrefix.kmap0000644000175000017500000000354110004720546016746 0ustar henrichhenrich// $Id: SpanishPrefix.kmap,v 1.3 2001/11/11 18:26:53 jr Exp jr $ // Mapa de teclado para el español // Modified and make if a prefix kmap: // Jesús Marín" 2004-01-21 // Escrito por Juan Rafael Fernández García // Shamelessly based on Czyborra's work (all © Roman Czyborra@cs.tu-berlin.de) "'A = 0xc1", // Á = LATIN CAPITAL LETTER A WITH ACUTE "'E = 0xc9", // É = LATIN CAPITAL LETTER E WITH ACUTE "'I = 0xcd", // Í = LATIN CAPITAL LETTER I WITH ACUTE "'O = 0xd3", // Ó = LATIN CAPITAL LETTER O WITH ACUTE "'U = 0xda", // Ú = LATIN CAPITAL LETTER U WITH ACUTE "'a = 0xe1", // á = LATIN SMALL LETTER A WITH ACUTE "'e = 0xe9", // é = LATIN SMALL LETTER E WITH ACUTE "'i = 0xed", // í = LATIN SMALL LETTER I WITH ACUTE "'o = 0xf3", // ó = LATIN SMALL LETTER O WITH ACUTE "'u = 0xfa", // ú = LATIN SMALL LETTER U WITH ACUTE ":U = 0xdc", // Ü = LATIN CAPITAL LETTER U WITH DIAERESIS ":u = 0xfc", // ü = LATIN SMALL LETTER U WITH DIAERESIS "~N=0x00D1", // Ñ = LATIN CAPITAL LETTER N WITH TILDE "~n=0x00F1", // ñ = LATIN SMALL LETTER N WITH TILDE ";c=0x00E7", // ç = LATIN SMALL LETTER C WITH CEDILLA ";C=0x00C7", // Ç = LATIN CAPITAL LETTER C WITH CEDILLA "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "C)=0x00A9", // © = COPYRIGHT SIGN "E-=0x20AC", // € = EURO SIGN "Ct=0x00A2", // ¢ = CENT SIGN "L-=0x00A3", // £ = POUND SIGN "Y-=0x00A5", // = YEN SIGN "-: = 0xf7", // ÷ = DIVISION SIGN "S$=0x00A7", // § = SECTION SIGN ".!=0x00A1", // ¡ = INVERTED EXCLAMATION MARK ".?=0x00BF", // ¿ = INVERTED QUESTION MARK "a_=0x00AA", // ª = FEMININE ORDINAL INDICATOR "o_=0x00BA", // º = MASCULINE ORDINAL INDICATOR ./mytool/kmap/Klingon.kmap0000644000175000017500000000477610073513110015570 0ustar henrichhenrich// // This kmap is contributed by: Nathan Stewart // "a=0x10D0", // ა "b=0x10D1", // ბ "g=0x10D2", // გ "d=0x10D3", // დ "e=0x10D4", // ე "v=0x10D5", // ვ "z=0x10D6", // ზ "t=0x10D7", // თ "i=0x10D8", // ი ".k=0x10D9", // კ "l=0x10DA", // ლ "m=0x10DB", // მ "n=0x10DC", // ნ "o=0x10DD", // ო ".p=0x10DE", // პ "\+z=0x10DF", // ჟ "r=0x10E0", // რ "s=0x10E1", // ს ".t=0x10E2", // ტ "u=0x10E3", // უ "p=0x10E4", // ფ "k=0x10E5", // ქ ".g=0x10E6", // ღ "q=0x10E7", // ყ "\+s=0x10E8", // შ "\+c=0x10E9", // ჩ "c=0x10EA", // ც "j=0x10EB", // ძ ".c=0x10EC", // წ ".\+c=0x10ED", // ჭ "x=0x10EE", // ხ "\+j=0x10EF", // ჯ "h=0x10F0", // ჰ "q1=0x10F4", // ჴ "e0=0x10F1", // ჱ "o1=0x10F5", // ჵ "i1=0x10F2", // ჲ "w=0x10F3", // ჳ "f=0x10F6", // ჶ "y=0xF0F7", //  Letter not in Unicode. "e1=0xF0F8", //  Letter not in Unicode. ./mytool/kmap/ArabicBuck.kmap0000644000175000017500000002444207630255752016171 0ustar henrichhenrich// ArabicBuck.kmap // Kenneth R. Beesley, 2003-01-19 // revised 2003-02-06 // revised 2003-02-11 // revised 2003-02-17 // revixed 2003-02-20 version 1.0 // kmap to allow use of Buckwalter Transliteration // (see http://www.xrce.xerox.com/competencies/content-analysis/arabic/info/buckwalter-about.html) // for inputting Arabic to yudit (and perhaps someday to qemacs) // Philosophy of the Input Method: // 1. When ArabicBuck is chosen as the input method, the assumption is // that the user wants to enter Arabic letters, Arabic punctuation and // ARABIC-INDIC style digits. // 2. To allow input of ASCII (without changing the whole input method back // to 'straight') the Arabic assumption can be overridden temporarily // inside ArabicBuck by preposing a backslash to "literalize" or // ASCII-ize the symbol being typed. // Thus when ArabicBuck is active, the user usually types a 'b' to input // 0x0628, the Arabic baa' letter; but one can also type \b to get an // ASCII 'b' letter. Similarly, one can type \, to get an ASCII // comma (rather than an Arabic comma), \3 to get a European/ASCII '3' // rather than an ARABIC-INDIC style 3, etc. // this file ArabicBuck.kmap and the ArabicBuck.my file produced from it // (see below) will be included and ready-to-go in some future release of Yudit. // For now, this ArabicBuck.kmap file should be copied into the directory // /share/yudit/src/ // or perhaps in your personal ~/.yudit/src/ // // This ArabicBuck.kmap source file must used to create a .my file thus, // using the 'mytool' program supplied with yudit: // $ mytool -type kmap -kmap ArabicBuck.kmap -rkmap ArabicBuck.kmap -write ArabicBuck.my // This command should produce ArabicBuck.my, which should be // copied into your personal directory ~/.yudit/data/ // and perhaps into /share/yudit/data/ to make it visible to other users // yudit directly uses the .my file, not the .kmap file // ********************************************************************* // ********************************************************************* // ********************************************************************* // the following mappings are organized (mostly) in Unicode order // Arabic Punctuation (early in the Unicode chart; more punctuation below) " , = 0x060c " , // ARABIC COMMA " ; = 0x061b " , // ARABIC SEMICOLON " ? = 0x061f " , // ARABIC QUESTION MARK // Letters " ' = 0x0621 " , // ARABIC LETTER HAMZA (hamza on the line) " | = 0x0622 " , // ARABIC LETTER ALEF WITH MADDA ABOVE " > = 0x0623 " , // ARABIC LETTER ALEF WITH HAMZA ABOVE " & = 0x0624 " , // ARABIC LETTER WAW WITH HAMZA ABOVE " < = 0x0625 " , // ARABIC LETTER ALEF WITH HAMZA BELOW " } = 0x0626 " , // ARABIC LETTER YEH WITH HAMZA ABOVE " A = 0x0627 " , // ARABIC LETTER ALEF (bare 'alif) " b = 0x0628 " , // ARABIC LETTER BEH (baa') " p = 0x0629 " , // ARABIC LETTER TEH MARBUTA (taa' marbuuTa) " t = 0x062a " , // ARABIC LETTER TEH (taa') " v = 0x062b " , // ARABIC LETTER THEH (thaa') " j = 0x062c " , // ARABIC LETTER JEEM (jiim) " H = 0x062d " , // ARABIC LETTER HAH (Haa') voiceless pharyngeal fricative " x = 0x062e " , // ARABIC LETTER KHAH (xaa' or khaa') // voiceless velar fricative, e.g. German ch in Bach " d = 0x062f " , // ARABIC LETTER DAL (daal) " * = 0x0630 " , // ARABIC LETTER THAL (dhaal) " r = 0x0631 " , // ARABIC LETTER REH (raa') " z = 0x0632 " , // ARABIC LETTER ZAIN " s = 0x0633 " , // ARABIC LETTER SEEN (siin) " $ = 0x0634 " , // ARABIC LETTER SHEEN (shiin) " S = 0x0635 " , // ARABIC LETTER SAD (Saad) " D = 0x0636 " , // ARABIC LETTER DAD (Daad) " T = 0x0637 " , // ARABIC LETTER TAH (Taa') " Z = 0x0638 " , // ARABIC LETTER ZAH (Zaa' or DHaa') " E = 0x0639 " , // ARABIC LETTER AIN (Eayn or cayn) // voiced pharyngeal fricative " g = 0x063a " , // ARABIC LETTER GHAIN // voiced velar fricative (like Parisian R) " _ = 0x0640 " , // ARABIC TATWEEL (taTwiil) " f = 0x0641 " , // ARABIC LETTER FEH (faa') " q = 0x0642 " , // ARABIC LETTER QAF (qaaf) " k = 0x0643 " , // ARABIC LETTER KAF (kaaf) " l = 0x0644 " , // ARABIC LETTER LAM (laam) " m = 0x0645 " , // ARABIC LETTER MEEM (miim) " n = 0x0646 " , // ARABIC LETTER NOON (nuun) " h = 0x0647 " , // ARABIC LETTER HEH (haa') like English /h/ " w = 0x0648 " , // ARABIC LETTER WAW (waaw) " Y = 0x0649 " , // ARABIC LETTER ALEF MAKSURA ('alif maqSuura) " y = 0x064a " , // ARABIC LETTER YEH " F = 0x064b " , // ARABIC FATHATAN " N = 0x064c " , // ARABIC DAMMATAN " K = 0x064d " , // ARABIC KASRATAN " a = 0x064e " , // ARABIC FATHA " u = 0x064f " , // ARABIC DAMMA " i = 0x0650 " , // ARABIC KASRA " ~ = 0x0651 " , // ARABIC SHADDA " o = 0x0652 " , // ARABIC SUKUN // Arabic-Indic Digits // need numeric value on left, just 0, 1, 2 etc. // would be interpreted as numbers, not letters " 0x30 = 0x0660 " , // ARABIC-INDIC DIGIT ZERO " 0x31 = 0x0661 " , // ARABIC-INDIC DIGIT ONE " 0x32 = 0x0662 " , // ARABIC-INDIC DIGIT TWO " 0x33 = 0x0663 " , // ARABIC-INDIC DIGIT THREE " 0x34 = 0x0664 " , // ARABIC-INDIC DIGIT FOUR " 0x35 = 0x0665 " , // ARABIC-INDIC DIGIT FIVE " 0x36 = 0x0666 " , // ARABIC-INDIC DIGIT SIX " 0x37 = 0x0667 " , // ARABIC-INDIC DIGIT SEVEN " 0x38 = 0x0668 " , // ARABIC-INDIC DIGIT EIGHT " 0x39 = 0x0669 " , // ARABIC-INDIC DIGIT NINE // Punctuation " % = 0x066a " , // ARABIC PERCENT SIGN // Number punctuation " ADS = 0x066b " , // ARABIC DECIMAL SEPARATOR ("decimal point") // Tim Buckwalter says: // this looks like a miniature raa' (0x0631); // the letter raa' is sometimes used as a decimal // separator in 8-bit texts " ATS = 0x066c " , // ARABIC THOUSANDS SEPARATOR // Tim Buckwalter has never seen this one " AFPS = 0x066d " , // ARABIC FIVE POINTED STAR // " Point", and one Extended Arabic Letter " ` = 0x0670 " , // ARABIC LETTER SUPERSCRIPT ALEF ("dagger 'alif") " { = 0x0671 " , // ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE (waSla on 'alif) //******************************************************************* // Literalized Inputs--to allow the temporary overriding of the // mappings shown above, without having to switch to a different input // method; input the literal ASCII character by preceding // the input with the backslash "literalizer" //******************************************************************* // Literal ASCII punctuation " \\ , = 0x002c " , // COMMA " \\ ; = 0x003b " , // SEMICOLON " \\ ? = 0x003f " , // QUESTION MARK // Literal ASCII letters " \\ ' = 0x0027 " , // "literal" ASCII ' " \\ | = 0x007c " , // "literal" ASCII | " \\ > = 0x003e " , // "literal" ASCII > " \\ & = 0x0026 " , // "literal" ASCII & " \\ < = 0x003c " , // "literal" ASCII < " \\ } = 0x007d " , // "literal" ASCII } " \\ A = 0x0041 " , // "literal" ASCII A " \\ b = 0x0062 " , // "literal" ASCII b " \\ p = 0x0070 " , // "literal" ASCII p " \\ t = 0x0074 " , // "literal" ASCII t " \\ v = 0x0076 " , // "literal" ASCII v " \\ j = 0x006a " , // "literal" ASCII j " \\ H = 0x0048 " , // "literal" ASCII H " \\ x = 0x0078 " , // "literal" ASCII x " \\ d = 0x0064 " , // "literal" ASCII d " \\ * = 0x002a " , // "literal" ASCII * " \\ r = 0x0072 " , // "literal" ASCII r " \\ z = 0x007a " , // "literal" ASCII z " \\ s = 0x0073 " , // "literal" ASCII s " \\ $ = 0x0024 " , // "literal" ASCII $ " \\ S = 0x0053 " , // "literal" ASCII S " \\ D = 0x0044 " , // "literal" ASCII D " \\ T = 0x0054 " , // "literal" ASCII T " \\ Z = 0x005a " , // "literal" ASCII Z " \\ E = 0x0045 " , // "literal" ASCII E " \\ g = 0x0067 " , // "literal" ASCII g " \\ _ = 0x005f " , // "literal" ASCII _ " \\ f = 0x0066 " , // "literal" ASCII f " \\ q = 0x0071 " , // "literal" ASCII q " \\ k = 0x006b " , // "literal" ASCII k " \\ l = 0x006c " , // "literal" ASCII l " \\ m = 0x006d " , // "literal" ASCII m " \\ n = 0x006e " , // "literal" ASCII n " \\ h = 0x0068 " , // "literal" ASCII h " \\ w = 0x0077 " , // "literal" ASCII w " \\ Y = 0x0059 " , // "literal" ASCII Y " \\ y = 0x0079 " , // "literal" ASCII y " \\ F = 0x0046 " , // "literal" ASCII F " \\ N = 0x004e " , // "literal" ASCII N " \\ K = 0x004b " , // "literal" ASCII K " \\ a = 0x0061 " , // "literal" ASCII a " \\ u = 0x0075 " , // "literal" ASCII u " \\ i = 0x0069 " , // "literal" ASCII i " \\ ~ = 0x007e " , // "literal" ASCII ~ " \\ o = 0x006f " , // "literal" ASCII o // For ASCII Digits " \\ 0x30 = 0x0030 " , // DIGIT ZERO " \\ 0x31 = 0x0031 " , // DIGIT ONE " \\ 0x32 = 0x0032 " , // DIGIT TWO " \\ 0x33 = 0x0033 " , // DIGIT THREE " \\ 0x34 = 0x0034 " , // DIGIT FOUR " \\ 0x35 = 0x0035 " , // DIGIT FIVE " \\ 0x36 = 0x0036 " , // DIGIT SIX " \\ 0x37 = 0x0037 " , // DIGIT SEVEN " \\ 0x38 = 0x0038 " , // DIGIT EIGHT " \\ 0x39 = 0x0039 " , // DIGIT NINE // Punctuation " \\ % = 0x0025 " , // PERCENT SIGN " \\ ` = 0x0060 " , // "literal" ASCII ` " \\ { = 0x007b " , // "literal" ASCII { " \\ \\ = 0x005c " , // "literal" ASCII \ (backslash) //*********************************************************************** // Joiner and Direction characters //*********************************************************************** // Joiners " ZWNJ = 0x200c" , // ZERO WIDTH NON-JOINER " ZWJ = 0x200d" , // ZERO WIDTH JOINER // Explicit direction " LTR = 0x200e " , // LEFT-TO-RIGHT MARK " RTL = 0x200f " , // RIGHT-TO-LEFT MARK // Directional Embedding " LRE = 0x202a " , // LEFT TO RIGHT EMBEDDING " RLE = 0x202b " , // RIGHT TO LEFT EMBEDDING " PDF = 0x202c " , // POP DIRECTIONAL FORMAT " LRO = 0x202d " , // LEFT TO RIGHT OVERRIDE " RLO = 0x202e " , // RIGHT TO LEFT OVERRIDE // Possible future additions for Persian and other "foreign" words/sounds // seen in other kmap files for Arabic // 06af ARABIC LETTER GAF Persian, Urdu // 0681 ARABIC LETTER HAH WITH HAMZA ABOVE // 067e ARABIC LETTER PEH Persian, Urdu... // 0686 ARABIC LETTER TCHECH Persian // 06a4 ARABIC LETTER VEH in Arabic, for foreign words // 0698 ARABIC LETTER JEH Persian, Urdu // Shaping info (copied from other Arabic kmap files) // no longer necessary //" l | = 0x0644 0x0622" , //" l > = 0x0644 0x0623" , //" l < = 0x0644 0x0625" , //" l A = 0x0644 0x0627" , // end of shaping info // quote from Gaspar, Jan 2003 // "Please note: in fact in yudit 2.7.+ you don't need to have it // because additional characters and diacritics will automatically be // added to form a ligature, so in fact the aforementioned ligature // can be entered by simply inputting the components."./mytool/kmap/TestH.kmap0000644000175000017500000000122511056414242015210 0ustar henrichhenrich// Accents for ISO-8859-2Hungarian and German "Ss = 0xa7", "A' = 0xc1", "A: = 0xc4", "E' = 0xc9", "E$ = 0x20AC", "e$ = 0x20AC", "Y$ =0xFFE5", "y$ =0x00A5", "I' = 0xcd", "O' = 0xd3", "O\" = 0x0150", "O: = 0xd6", "U' = 0xda", "U\" = 0x0170", "U: = 0xdc", "SS = 0xdf", "a' = 0xe1", "a: = 0xe4", "e' = 0xe9", "i' = 0xed", "o' = 0xf3", "o\" = 0x0151", "o: = 0xf6", "-: = 0xf7", "u' = 0xfa", "u\" = 0x0171", "u: = 0xfc", ":) = 0x263A", "'' = 0x201D", // ” RIGHT DOUBLE QUOTATION MARK ",,=0x201E", // „ DOUBLE LOW-9 QUOTATION MARK "``=0x201C", // “ LEFT DOUBLE QUOTATION MARK "...=0x2026", // … "--=0x2013", // – "0xc5 0x91 = 0xe9", "0xc3 0xa9 = 0x151", ./mytool/kmap/Hangul3.kmap0000644000175000017500000000226607737457032015507 0ustar henrichhenrich// // Hangul kmap for type 3 keyboards. // "b+m+e", "begin b", "k=0xAC00", "kk=0xAE4C", "h=0xB098", "u=0xB2E4", "uu=0xB530", "y=0xB77C", "i=0xB9C8", ";=0xBC14", ";;=0xBE60", "n=0xC0AC", "nn=0xC2F8", "j=0xC544", "l=0xC790", "ll=0xC9DC", "o=0xCC28", "0x30=0xCE74", "'=0xD0C0", "p=0xD30C", "m=0xD558", "end b", "begin m", "f=0x0000", "r=0x001C", "0x36=0x0038", "G=0x0054", "t=0x0070", "c=0x008C", "e=0x00A8", "0x37=0x00C4", "/=0x00E0", "v=0x00E0", "/f=0x00FC", "vf=0x00FC", "/r=0x0118", "vr=0x0118", "/d=0x0134", "vd=0x0134", "0x34=0x0150", "b=0x016C", "0x39=0x016C", "bt=0x0188", "0x39 t=0x0188", "bc=0x01A4", "0x39 c=0x01A4", "bd=0x01C0", "0x39 d=0x01C0", "0x35=0x01DC", "g=0x01F8", "0x38=0x0214", "d=0x0230", "end m", "begin e", // this should be made legal, sweat here // "=0x0000", "x=0x0001", "!=0x0002", "V=0x0003", "s=0x0004", "E=0x0005", "S=0x0006", "A=0x0007", "w=0x0008", "@=0x0009", "F=0x000A", "D=0x000B", "T=0x000C", "%=0x000D", "$=0x000E", "R=0x000F", "z=0x0010", "0x33=0x0011", "X=0x0012", "q=0x0013", "0x32=0x0014", "a=0x0015", "#=0x0016", "Z=0x0017", "C=0x0018", "W=0x0019", "Q=0x001A", "0x31=0x001B", "end e" ./mytool/kmap/Inuktitut-ICI.kmap0000644000175000017500000000536507565350106016604 0ustar henrichhenrich// Inuktitut-ICI.kmap for the Unicode editor Yudit // based on standard romanization of syllabics used by Nunavut // ICI standardized qaliujaaqpait --> qaniujaaqpait // see http://www.langcom.nu.ca/english/languages/writing.html // or http://www.nunavut.com/nunavut99/english/our.html // Extensions: // 'lh' treated as an alternative for '&' (unvoiced l) // Revision history // 2002-10-07 first version by Howard.Johnson@nrc.ca // 2002-11-10 revised to correctly handle qqi qqii, etc. "i = 0x1403", "ii = 0x1404", "u = 0x1405", "uu = 0x1406", "a = 0x140a", "aa = 0x140b", "h = 0x157c", "pi = 0x1431", "pii = 0x1432", "pu = 0x1433", "puu = 0x1434", "pa = 0x1438", "paa = 0x1439", "p = 0x1449", "ti = 0x144e", "tii = 0x144f", "tu = 0x1450", "tuu = 0x1451", "ta = 0x1455", "taa = 0x1456", "t = 0x1466", "ki = 0x146d", "kii = 0x146e", "ku = 0x146f", "kuu = 0x1470", "ka = 0x1472", "kaa = 0x1473", "k = 0x1483", "gi = 0x148b", "gii = 0x148c", "gu = 0x148d", "guu = 0x148e", "ga = 0x1490", "gaa = 0x1491", "g = 0x14a1", "mi = 0x14a5", "mii = 0x14a6", "mu = 0x14a7", "muu = 0x14a8", "ma = 0x14aa", "maa = 0x14ab", "m = 0x14bb", "ni = 0x14c2", "nii = 0x14c3", "nu = 0x14c4", "nuu = 0x14c5", "na = 0x14c7", "naa = 0x14c8", "n = 0x14d0", "si = 0x14ef", "sii = 0x14f0", "su = 0x14f1", "suu = 0x14f2", "sa = 0x14f4", "saa = 0x14f5", "s = 0x1505", "li = 0x14d5", "lii = 0x14d6", "lu = 0x14d7", "luu = 0x14d8", "la = 0x14da", "laa = 0x14db", "l = 0x14ea", "ji = 0x1528", "jii = 0x1529", "ju = 0x152a", "juu = 0x152b", "ja = 0x152d", "jaa = 0x152e", "j = 0x153e", "vi = 0x1555", "vii = 0x1556", "vu = 0x1557", "vuu = 0x1558", "va = 0x1559", "vaa = 0x155a", "v = 0x155d", "ri = 0x1546", "rii = 0x1547", "ru = 0x1548", "ruu = 0x1549", "ra = 0x154b", "raa = 0x154c", "r = 0x1550", "qi = 0x157f", "qii = 0x1580", "qu = 0x1581", "quu = 0x1582", "qa = 0x1583", "qaa = 0x1584", "q = 0x1585", "ngi = 0x158f", "ngii = 0x1590", "ngu = 0x1591", "nguu = 0x1592", "nga = 0x1593", "ngaa = 0x1594", "ng = 0x1595", "lhi = 0x15a0", "lhii = 0x15a1", "lhu = 0x15a2", "lhuu = 0x15a3", "lha = 0x15a4", "lhaa = 0x15a5", "lh = 0x15a6", "&i = 0x15a0", "&ii = 0x15a1", "&u = 0x15a2", "&uu = 0x15a3", "&a = 0x15a4", "&aa = 0x15a5", "& = 0x15a6", "nngi = 0x1671", "nngii = 0x1672", "nngu = 0x1673", "nnguu = 0x1674", "nnga = 0x1675", "nngaa = 0x1676", "nng = 0x1596", "qqi = 0x1585 0x146d", "qqii = 0x1585 0x146e", "qqu = 0x1585 0x146f", "qquu = 0x1585 0x1470", "qqa = 0x1585 0x1472", "qqaa = 0x1585 0x1473", ./mytool/kmap/Cherokee.kmap0000644000175000017500000000622607532460064015723 0ustar henrichhenrich// CHEROKEE.KMAP // Mnemonic input method for Cherokee language and the Yudit editor. // // 2002-04-29 Steve Juranich "a=0x13A0", // CHEROKEE LETTER A "e=0x13A1", // CHEROKEE LETTER E "i=0x13A2", // CHEROKEE LETTER I "o=0x13A3", // CHEROKEE LETTER O "u=0x13A4", // CHEROKEE LETTER U "v=0x13A5", // CHEROKEE LETTER V "ga=0x13A6", // CHEROKEE LETTER GA "ka=0x13A7", // CHEROKEE LETTER KA "ge=0x13A8", // CHEROKEE LETTER GE "gi=0x13A9", // CHEROKEE LETTER GI "go=0x13AA", // CHEROKEE LETTER GO "gu=0x13AB", // CHEROKEE LETTER GU "gv=0x13AC", // CHEROKEE LETTER GV "ha=0x13AD", // CHEROKEE LETTER HA "he=0x13AE", // CHEROKEE LETTER HE "hi=0x13AF", // CHEROKEE LETTER HI "ho=0x13B0", // CHEROKEE LETTER HO "hu=0x13B1", // CHEROKEE LETTER HU "hv=0x13B2", // CHEROKEE LETTER HV "la=0x13B3", // CHEROKEE LETTER LA "le=0x13B4", // CHEROKEE LETTER LE "li=0x13B5", // CHEROKEE LETTER LI "lo=0x13B6", // CHEROKEE LETTER LO "lu=0x13B7", // CHEROKEE LETTER LU "lv=0x13B8", // CHEROKEE LETTER LV "ma=0x13B9", // CHEROKEE LETTER MA "me=0x13BA", // CHEROKEE LETTER ME "mi=0x13BB", // CHEROKEE LETTER MI "mo=0x13BC", // CHEROKEE LETTER MO "mu=0x13BD", // CHEROKEE LETTER MU "na=0x13BE", // CHEROKEE LETTER NA "hna=0x13BF", // CHEROKEE LETTER HNA "nah=0x13C0", // CHEROKEE LETTER NAH "ne=0x13C1", // CHEROKEE LETTER NE "ni=0x13C2", // CHEROKEE LETTER NI "no=0x13C3", // CHEROKEE LETTER NO "nu=0x13C4", // CHEROKEE LETTER NU "nv=0x13C5", // CHEROKEE LETTER NV "qua=0x13C6", // CHEROKEE LETTER QUA "que=0x13C7", // CHEROKEE LETTER QUE "qui=0x13C8", // CHEROKEE LETTER QUI "quo=0x13C9", // CHEROKEE LETTER QUO "quu=0x13CA", // CHEROKEE LETTER QUU "quv=0x13CB", // CHEROKEE LETTER QUV "sa=0x13CC", // CHEROKEE LETTER SA "s=0x13CD", // CHEROKEE LETTER S "se=0x13CE", // CHEROKEE LETTER SE "si=0x13CF", // CHEROKEE LETTER SI "so=0x13D0", // CHEROKEE LETTER SO "su=0x13D1", // CHEROKEE LETTER SU "sv=0x13D2", // CHEROKEE LETTER SV "da=0x13D3", // CHEROKEE LETTER DA "ta=0x13D4", // CHEROKEE LETTER TA "de=0x13D5", // CHEROKEE LETTER DE "te=0x13D6", // CHEROKEE LETTER TE "di=0x13D7", // CHEROKEE LETTER DI "ti=0x13D8", // CHEROKEE LETTER TI "do=0x13D9", // CHEROKEE LETTER DO "du=0x13DA", // CHEROKEE LETTER DU "dv=0x13DB", // CHEROKEE LETTER DV "dla=0x13DC", // CHEROKEE LETTER DLA "tla=0x13DD", // CHEROKEE LETTER TLA "tle=0x13DE", // CHEROKEE LETTER TLE "tli=0x13DF", // CHEROKEE LETTER TLI "tlo=0x13E0", // CHEROKEE LETTER TLO "tlu=0x13E1", // CHEROKEE LETTER TLU "tlv=0x13E2", // CHEROKEE LETTER TLV "tsa=0x13E3", // CHEROKEE LETTER TSA "tse=0x13E4", // CHEROKEE LETTER TSE "tsi=0x13E5", // CHEROKEE LETTER TSI "tso=0x13E6", // CHEROKEE LETTER TSO "tsu=0x13E7", // CHEROKEE LETTER TSU "tsv=0x13E8", // CHEROKEE LETTER TSV "wa=0x13E9", // CHEROKEE LETTER WA "we=0x13EA", // CHEROKEE LETTER WE "wi=0x13EB", // CHEROKEE LETTER WI "wo=0x13EC", // CHEROKEE LETTER WO "wu=0x13ED", // CHEROKEE LETTER WU "wv=0x13EE", // CHEROKEE LETTER WV "ya=0x13EF", // CHEROKEE LETTER YA "ye=0x13F0", // CHEROKEE LETTER YE "yi=0x13F1", // CHEROKEE LETTER YI "yo=0x13F2", // CHEROKEE LETTER YO "yu=0x13F3", // CHEROKEE LETTER YU "yv=0x13F4", // CHEROKEE LETTER YV ./mytool/kmap/German.kmap0000644000175000017500000000477007532460064015411 0ustar henrichhenrich// German.kmap for the Unicode editor Yudit // 1998-04-17 Roman Czyborra@cs.tu-berlin.de // Changes: // 202-04-02 Gaspar Sinai : // o added die Auslassungspunkte ellipsis dots omission marks … // o added der Gedankenstrich long dash – "...=0x2026", // … die Auslassungspunkte "--=0x2013", // – der Gedankenstrich "'' = 0x201D", // “ RIGHT DOUBLE QUOTATION MARK // „German“ quotation marks: ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = // In a lot of German books you will also find: »...« ">>=0x00BB", // » = RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK = "<<=0x00AB", // « = LEFT-POINTING DOUBLE ANGLE QUOTATION MARK = // The Paragraphenzeichen is used to number // paragrahs of the legal code (§ 1 StVO): "S$=0x00A7", // § = SECTION SIGN // Germany and Austria are trading their currencies for the Euro: "E$=0x20AC", // € = EURO SIGN // The following definitions give German umlaut vowels to typers of // German who are used to typing their umlauts on American // (ASCII-QWERTY) keyboards as with ae, oe, ue, and sz replacements. "Ae=0x00c4", // Ä = Aumlaut = LATIN CAPITAL LETTER A WITH DIAERESIS "Oe=0x00d6", // Ö = Oumlaut = LATIN CAPITAL LETTER O WITH DIAERESIS "Ue=0x00dc", // Ü = Uumlaut = LATIN CAPITAL LETTER U WITH DIAERESIS "ae=0x00e4", // ä = LATIN SMALL LETTER A WITH DIAERESIS "oe=0x00f6", // ö = LATIN SMALL LETTER O WITH DIAERESIS "ue=0x00fc", // ü = LATIN SMALL LETTER U WITH DIAERESIS "sz=0x00df", // ß = eszet = germandbls = LATIN SMALL LETTER SHARP S // WARNING: With this method you will get a lot of funny typing errors // for all words containing real ae, oe or ue combinations like a // nonsensical "Maür" instead of the correct "Mauer". To prevent this, // you can try to remember to always insert a period and type "Mau.er": ".e=0x0065", // e = LATIN SMALL LETTER E ".z=0x007A", // z = LATIN SMALL LETTER Z // You're probably better off editing the umlaut input sequence to // something less ambiguous (ä a; a' a: a" a= "a or \"a) depending on // whether your keyboard already has straight umlaut keys or whatever // composition sequence you're used to. // German typewriters traditionally also allowed to type the following // two accented letters in words imported from French: We want to be // able to type sentences like „André kaufte zwei Karten à 10 DM.“ "e'=0x00e9", // é = LATIN SMALL LETTER E WITH ACUTE "`a=0x00e0", // à = LATIN SMALL LETTER A WITH GRAVE ./mytool/kmap/Serbian.kmap0000644000175000017500000001521607725105712015560 0ustar henrichhenrich// Created with Emacs for Yudit // 04/07/2001 Jernej Kovacic (jkovacic@email.si) // Mod: 19.05.2003. Strahinya Radich (mr99164@alas.matf.bg.ac.yu) // Additions and improvements welcome // Directly converts Latin "Yugoslav" characters from ISO 8859-2 into // Serbian Cyrillic. Also converts lj, nj, dž correctly. // Strahinya Radich, 01.09.2003.: // Added “en-dash”, “em-dash”, and the. // inevitable “euro” sign. // Commented out the “ambiguous” “lj”, “nj”, “dj”. // For example, „ињекција“ and „инјекција“ are two // different words, the last of which could not be // entered easily with the “?+j” digraphs. Another examples are: // „предјело“, „одједном“, etc. // Strahinya Radich, 20.05.2003.: // Changed some ISO 8859-2 codes to 0xNN, since saving the file // in UTF-8 messed them all up. // Strahinya Radich, 19.05.2003.: // Adjusted for more input sequences: dual (CX = hard CH), // and symbolic (C< = hard CH). Also added the diacritical // marks, such as quotes (,,``) and apostrophes (`'). // This part added by Strahinya Radich "--=0x2013", // – = EN DASH "---=0x2014", // — = EM DASH "E/=0x20AC", // € = EURO SIGN ",,=0x201E", // „ = DOUBLE LOW-9 QUOTATION MARK = "``=0x201C", // “ = LEFT DOUBLE QUOTATION MARK = "\`=0x2018", // ‘ = LEFT SINGLE QUOTATION MARK "'=0x2019", // ’ = RIGHT SINGLE QUOTATION MARK // End of part // First the full line of Capital letters for clarity: // This part added by Strahinya Radich "C< =0x0427", // CYRILLIC CAPITAL LETTER HARD CH "CX =0x0427", // CYRILLIC CAPITAL LETTER HARD CH "Cx =0x0427", // CYRILLIC CAPITAL LETTER HARD CH "C' =0x040B", // CYRILLIC CAPITAL LETTER SOFT CH "CY =0x040B", // CYRILLIC CAPITAL LETTER SOFT CH "Cy =0x040B", // CYRILLIC CAPITAL LETTER SOFT CH "DZ<=0x040F", // CYRILLIC CAPITAL LETTER HARD DZH "Dz<=0x040F", // CYRILLIC CAPITAL LETTER HARD DZH "DX =0x040F", // CYRILLIC CAPITAL LETTER HARD DZH "Dx =0x040F", // CYRILLIC CAPITAL LETTER HARD DZH "DJ =0x0402", // CYRILLIC CAPITAL LETTER SOFT DJ "Dj =0x0402", // CYRILLIC CAPITAL LETTER SOFT DJ "DY =0x0402", // CYRILLIC CAPITAL LETTER SOFT DJ "Dy =0x0402", // CYRILLIC CAPITAL LETTER SOFT DJ "LY =0x0409", // CYRILLIC CAPITAL LETTER LJ (L+Y) "Ly =0x0409", // CYRILLIC CAPITAL LETTER LJ (L+y) "Q =0x0409", // CYRILLIC CAPITAL LETTER LJ "NY =0x040A", // CYRILLIC CAPITAL LETTER NJ (N+Y) "Ny =0x040A", // CYRILLIC CAPITAL LETTER NJ (N+y) "W =0x040A", // CYRILLIC CAPITAL LETTER NJ "S< =0x0428", // CYRILLIC CAPITAL LETTER SH "SX =0x0428", // CYRILLIC CAPITAL LETTER SH "Sx =0x0428", // CYRILLIC CAPITAL LETTER SH "Z< =0x0416", // CYRILLIC CAPITAL LETTER ZH "ZX =0x0416", // CYRILLIC CAPITAL LETTER ZH "Zx =0x0416", // CYRILLIC CAPITAL LETTER ZH "Y =0x0417", // CYRILLIC CAPITAL LETTER Z // End of part "A =0x0410", // CYRILLIC CAPITAL LETTER A "B =0x0411", // CYRILLIC CAPITAL LETTER B "C =0x0426", // CYRILLIC CAPITAL LETTER C "0xC8=0x0427", // CYRILLIC CAPITAL LETTER HARD CH "0xC6=0x040B", // CYRILLIC CAPITAL LETTER SOFT CH "D =0x0414", // CYRILLIC CAPITAL LETTER DE "D0xAE=0x040F", // CYRILLIC CAPITAL LETTER HARD DZH (D+ZH) "D0xBE=0x040F", // CYRILLIC CAPITAL LETTER HARD DZH (D+zh) "0xD0=0x0402", // CYRILLIC CAPITAL LETTER SOFT DJ "E =0x0415", // CYRILLIC CAPITAL LETTER E "F =0x0424", // CYRILLIC CAPITAL LETTER F "G =0x0413", // CYRILLIC CAPITAL LETTER G "H =0x0425", // CYRILLIC CAPITAL LETTER H "I =0x0418", // CYRILLIC CAPITAL LETTER I "J =0x0408", // CYRILLIC CAPITAL LETTER J "K =0x041A", // CYRILLIC CAPITAL LETTER K "L =0x041B", // CYRILLIC CAPITAL LETTER L // Commented out by Strahinya Radich //"LJ=0x0409", // CYRILLIC CAPITAL LETTER LJ (L+J) //"Lj=0x0409", // CYRILLIC CAPITAL LETTER LJ (L+j) "M =0x041C", // CYRILLIC CAPITAL LETTER M "N =0x041D", // CYRILLIC CAPITAL LETTER N // Commented out by Strahinya Radich //"NJ=0x040A", // CYRILLIC CAPITAL LETTER NJ (N+J) //"Nj=0x040A", // CYRILLIC CAPITAL LETTER NJ (N+j) "O =0x041E", // CYRILLIC CAPITAL LETTER O "P =0x041F", // CYRILLIC CAPITAL LETTER P "R =0x0420", // CYRILLIC CAPITAL LETTER R "S =0x0421", // CYRILLIC CAPITAL LETTER S "0xA9=0x0428", // CYRILLIC CAPITAL LETTER SH "T =0x0422", // CYRILLIC CAPITAL LETTER T "U =0x0423", // CYRILLIC CAPITAL LETTER U "V =0x0412", // CYRILLIC CAPITAL LETTER V "Z =0x0417", // CYRILLIC CAPITAL LETTER Z "0xAE=0x0416", // CYRILLIC CAPITAL LETTER ZH // Then the same thing in lower case: // This part added by Strahinya Radich "c< =0x0447", // CYRILLIC SMALL LETTER HARD CH "cx =0x0447", // CYRILLIC SMALL LETTER HARD CH "c' =0x045B", // CYRILLIC SMALL LETTER SOFT CH "cy =0x045B", // CYRILLIC SMALL LETTER SOFT CH "dz<=0x045F", // CYRILLIC SMALL LETTER HARD DZH "dx =0x045F", // CYRILLIC SMALL LETTER HARD DZH // Commented out by Strahinya Radich //"dj =0x0452", // CYRILLIC SMALL LETTER SOFT DJ "dy =0x0452", // CYRILLIC SMALL LETTER SOFT DJ "ly =0x0459", // CYRILLIC SMALL LETTER LJ (l+Y) "q =0x0459", // CYRILLIC SMALL LETTER LJ "ny =0x045A", // CYRILLIC SMALL LETTER NJ (n+y) "w =0x045A", // CYRILLIC SMALL LETTER NJ "s< =0x0448", // CYRILLIC SMALL LETTER SH "sx =0x0448", // CYRILLIC SMALL LETTER SH "z< =0x0436", // CYRILLIC SMALL LETTER ZH "zx =0x0436", // CYRILLIC SMALL LETTER ZH "y =0x0437", // CYRILLIC SMALL LETTER Z // End of part "a =0x0430", // CYRILLIC SMALL LETTER A "b =0x0431", // CYRILLIC SMALL LETTER B "c =0x0446", // CYRILLIC SMALL LETTER C "0xE8=0x0447", // CYRILLIC SMALL LETTER HARD CH "0xE6=0x045B", // CYRILLIC SMALL LETTER SOFT CH "d =0x0434", // CYRILLIC SMALL LETTER DE "d0xBE=0x045F", // CYRILLIC SMALL LETTER HARD DZH (d+zh) "0xF0=0x0452", // CYRILLIC SMALL LETTER SOFT DJ "e =0x0435", // CYRILLIC SMALL LETTER E "f =0x0444", // CYRILLIC SMALL LETTER F "g =0x0433", // CYRILLIC SMALL LETTER G "h =0x0445", // CYRILLIC SMALL LETTER H "i =0x0438", // CYRILLIC SMALL LETTER I "j =0x0458", // CYRILLIC SMALL LETTER J "k =0x043A", // CYRILLIC SMALL LETTER K "l =0x043B", // CYRILLIC SMALL LETTER L // Commented out by Strahinya Radich //"lj=0x0459", // CYRILLIC SMALL LETTER LJ (l+j) "m =0x043C", // CYRILLIC SMALL LETTER M "n =0x043D", // CYRILLIC SMALL LETTER N // Commented out by Strahinya Radich //"nj=0x045A", // CYRILLIC SMALL LETTER NJ (n+j) "o =0x043E", // CYRILLIC SMALL LETTER O "p =0x043F", // CYRILLIC SMALL LETTER P "r =0x0440", // CYRILLIC SMALL LETTER R "s =0x0441", // CYRILLIC SMALL LETTER S "0xB9=0x0448", // CYRILLIC SMALL LETTER SH "t =0x0442", // CYRILLIC SMALL LETTER T "u =0x0443", // CYRILLIC SMALL LETTER U "v =0x0432", // CYRILLIC SMALL LETTER V "z =0x0437", // CYRILLIC SMALL LETTER Z "0xBE=0x0436", // CYRILLIC SMALL LETTER ZH ./mytool/mytool.10000644000175000017500000001274107532460064014000 0ustar henrichhenrich.\" @(#)mytool 1.1 97/11/5 .TH MYTOOL 1 "Jan 03 2000" "LINUX COMMANDS" "LINUX COMMANDS" .SH NAME .LP mytool \- manipulate map files for yudit, uniconv and uniprint .SH SYNOPSIS .LP .B mytool [ .B -info ] [ .B -test ] [ .B -showkeys ] [ .B -decode ] [ .B -encode ] [ .B -strip ] [ .B -benchmark ] [ .BI "-name " new-name ] [ .BI "-comment " new-comment ] [ .BI "-type " new-type ] [ .BI "-write " output-file ] [ .BI "-my " input-file ] [ .BI "-mys " input-file ] [ .BI "-rmys " input-file ] [ .BI "-kmap " input-file ] [ .BI "-rkmap " input-file ] [ .BI "-uni:l,u " input-file [ .B -8 ] [ .B -high ] [ .B -low ] [ .BI "-runi:l,u " input-file [ .B -8 ] [ .B -high ] [ .B -low ] ] [ .BI "-convert " out-file-format ] .LP .SH DESCRIPTION .LP .B mytool is a .B my map file manipulation program in the yudit distribution. It can generates so-called binary nbit ( .B my ) map file that can map any sequences of bytes into any sequences of bytes. These sequences of bytes can be grouped into 1,2,4 and 8 bytes long words. The input sequence length may be different from the matched sequence length. 'i / 'n -> 'b specifies that the word 'in' produces 'b' but only the 'i is consumed from the input buffer. .sp It can also generate a so-called .B "binary umap" file, that maps 8 or 16 bit single words into 16 bit single words and it contains the reverse map too. .sp It can also disassemble the input map and produce a .B mys source file. .sp The input can be a binary umap file, a .B my file, .B mys file a .B uni and a kmap file for yudit. It is recommended that all kmap files use the new .B mys format because it gives more freedom to define the mapping. .sp The yudit distribution has a simple document .B yudit/doc/my.doc on the binary map formats, and a source file example file .B yudit/mytool/my/example.mys please refer to this for more details. .LP .SH OPTIONS .TP .B "-info " prints out a small information on the current map. .TP .B "-test " lets you test the map interactively. .TP .B "-showkeys " show alls the keys in the map file. .TP .B "-encode " builds a state machine in the encoding part of the map file. The resulting map file can be written to disk with the .B "-write" option The resulting .B my files can contain state machines to speed-up conversion. A state machine based .B my file can manifest 10%-70% performance improvement, so it may be desirable for encoding .B fontmaps. For .B fontmaps the .B bumap format might be better suited where only one character and not a sequence of characters need to be mapped. .TP .B "-decode " builds a state machine in the decoding part of the map file. .TP .B "-strip " strips off the state machines from the map files. The .B "-write" option can be used to save the new map file. .TP .B "-benchmark " option performs a simple benchmark test on the map file, to compare speed of simple, state machine based and binary map based map files. .TP .B "-nocomment " option strips all comments from an input source file of format .B "mys kmap uni." It does not strip comments from a binary file. .TP .BI "-name " new-name assigns a name to the map file. .TP .BI "-comment " new-comment assigns a comment to the map file. .TP .BI "-type " new-type assigns a map file a distinctive type, that can be .B kmap or .B fontmap but it is only informative. Keymaps can be used as fontmaps and vice versa. .TP .BI "-write " output-file writes the data into an output file. .B mytool never modifies the original file. All modifications should be explicitly saved with the this option. Never specify the same file for input and output. .TP .BI "-my " input-file load a binary map file. Only one of this option can be specified. .TP .BI "-mys " input-source-file load a source file. .TP .BI "-rmys " input-source-file load a source file and reverse it - make encoding from decoding and vice versa. .TP .BI "-kmap " input-source-file load a source file in kmap format. .TP .BI "-rkmap " input-source-file load a source file and reverse it - make encoding from decoding and vice versa. .TP .BI "-uni:l,u " input-source-file load a source file in Unicode Consortium format. This format has the local code in column l, and unicode in column u. The numbering of columns start from 0. .TP .BI "-runi:l,u " input-source-file load a source file in Unicode Consortium format and reverses it. Make encoding from decoding and vice versa. .TP .B "-8 " option can be used with the .B "-uni " or .B "-runi " options. It specifies that the input is 8 bit and not 16 bit. .TP .B "-high" option can be used with the .B "-uni " or .B "-runi " options. It specifies that the key should be or'ed with 0x8080. .TP .B "-low" option can be used with the .B "-uni " or .B "-runi " options. It specifies that the key should be and'ed with 0x7f7f. .TP .BI "-convert " output-file-format converts the map file to a format. It is useful only when combined with .B "-write " otion. The possible formats are .BI "my " "-binary, " "mys " "-source, " "myc " "-my-c-source, " "umap -umap-c-source, " "bumap " "-binary-umap" formats. For maps where only a single 8 or 16 bit local code should be converted into 16 bit unicode and vice versa, the umap file formats are recommended. The c-source files are provided so that you can inlucde a full map into the c program. .SH DIAGNOSTICS .BR .B mytool prints out an error message and exits with a non-zero status on error. If there is no error the exit status is zero. .SH SEE ALSO .BR uniconv .SH AUTHOR .LP This program was written by gsinai@iname.com (Gaspar Sinai). Tokyo, 03 January, 2000. ./mytool/ProcessFile.h0000644000175000017500000000323010434025606014745 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef ProcessFile_h #define ProcessFile_h #include "stoolkit/SBMap.h" #define MAX_COMMENT_SIZE 2048 #define MAX_NMAPS 256 class SBMapItemVector { public: SBMapItemVector(); // For kmaps SBMapItemVector(int _size, const char** _names, int _reverse); ~SBMapItemVector(); int addKLine (int index, const char* line, const unsigned char* comment, int commentSize, int reverse); int count; SBMapItem* maps[MAX_NMAPS]; }; SBMapItemVector* processUNI (const char* filename, SInputStream& file, int nocomment, int hilo, int keysize, int from, int to, int reverse, char* comment, char* name, int* type); SBMapItemVector* processMYS (const char* filename, SInputStream& file, int nocomment, int reverse, char* comment, char*name, int* type); SBMapItemVector* processKMap (const char* filename, SInputStream& file, int nocomment, int reverse, char* comment, char*name, int* type); #endif /* ProcessFile_h */ ./mytool/Main.cpp0000644000175000017500000006633611326624762013777 0ustar henrichhenrich/** * Yudit Unicode Editor Source File * * GNU Copyright (C) 1997-2006 Gaspar Sinai * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2, * dated June 1991. See file COPYYING for details. * * This program 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 this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "stoolkit/SBMap.h" #include "stoolkit/STypes.h" #include "stoolkit/SUtil.h" #include "ProcessFile.h" #include #include #include /* They'll stone me for this */ #include #ifdef USE_WINAPI #include #else #include #endif unsigned int hexVle (char in); char hexStr (SS_WORD64, int nibble); int encode(void* buffer, char* input, int bytesize); void decode(char* buffer, void* input, int bytesize, int len); int doBenchMark(SBMap* map, int index); #define ISHEX(a) ((a>='A' && a<='F') || (a>='a' && a<='f') || (a>='0' && a<='9')) #define MAX_INPUT_FILES 256 typedef enum {KMAP, RKMAP, UNI, RUNI, MYS, RMYS } MapType; typedef struct { MapType type; int from; int to; const char* name; SBMapItemVector* item; } InputFiles; char shortComment[MAX_COMMENT_SIZE]; InputFiles inputFiles[MAX_INPUT_FILES]; int inputFileCount=0; char inputName[32]; int inputType = -1; char nameb[1024]; char commentb[1024]; char in[1024]; char enc[1024]; int strip=0; int info=0; int test=0; int stateEnc = 0; int stateDec = 0; int mapType = -1; char* mapName = 0; char* mapComment = 0; char* file=0; char* mapFile=0; int showKeys=0; int benchmark=0; int circle=-1; int highLow=0; int keySize=1; int nocomment=0; SFileFormat outformat=SS_BINARY; static void usage(); static void print_version (); #define BUFFER_SIZE 512 char readBuffer[BUFFER_SIZE]; /** * @author Gaspar Sinai 1999-12-18 * @version 1.0 * This is a program to create, convert and test character maps. */ int main (int argc, char* argv[]) { int i, j; if (argc < 2) { usage(); exit (1); } if (argc==3 && strcmp ("-installdir", argv[1])==0) { SString pref(argv[2]); SDir d (pref); bool ret = false; if (d.exists() && d.readable()) { ret = setPrefix (pref); } else { fprintf (stderr, "Can not read directory [%*.*s]\n", SSARGS(pref)); } return (ret); } /** * This option puts everything in a tmp file and * calls the program with agruents specified after cmd, * with the filename as the last argument. * when porgram exists remove the tmp file. */ if (argc>=3 && strcmp ("-pipecmd", argv[1])==0) { FILE* input=stdin; SString tmpfile = getTemporaryFileName (); if (tmpfile.size()==0) { fprintf (stderr, "Can not create tmp file.\n"); return (1); } tmpfile.append ((char)0); FILE* output=stdout; #ifdef USE_WINAPI if ((output = fopen (tmpfile.array(), "wb")) == 0) #else if ((output = fopen (tmpfile.array(), "w")) == 0) #endif { fprintf (stderr, "mytool: can not open '%s' to write.\n", tmpfile.array()); return 1; } int len; while (!feof(input) && (len=fread(readBuffer, 1, BUFFER_SIZE, input))>0) { int wlen = fwrite(readBuffer, 1, len, output); if (wlen!= len) { fprintf (stderr, "mytool: failed to write %*.*s.\n", SSARGS(tmpfile)); return 1; } } fclose (output); /* call argv[2]...argc - with this file */ SStringVector vargs; /* on linux it is foreground by default */ for (int i=2; i= MAX_INPUT_FILES) { fprintf (stderr, "mytool: maximum % input files can be specified.\n", MAX_INPUT_FILES); exit (1); } if (strcmp (argv[i],"-info")==0) { info=1; continue; } if (strcmp (argv[i],"-test")==0) { test=1; continue; } if (strcmp (argv[i],"-benchmark")==0) { benchmark=1; continue; } if (strcmp (argv[i],"-strip")==0) { strip=1; continue; } if (strcmp (argv[i],"-version")==0) { print_version (); exit (0); } if (strcmp (argv[i],"-encode")==0) { stateEnc=1; continue; } if (strcmp (argv[i],"-decode")==0) { stateDec=1; continue; } if (strcmp (argv[i],"-high")==0) { highLow=1; continue; } if (strcmp (argv[i],"-8")==0) { keySize=0; continue; } if (strcmp (argv[i],"-low")==0) { highLow=-1; continue; } if (strcmp (argv[i],"-showkeys")==0) { showKeys=1; continue; } if (strcmp (argv[i],"-nocomment")==0) { nocomment=1; continue; } if (i < argc-1 && strcmp (argv[i],"-kmap")==0) { inputFiles [inputFileCount].name = argv[++i]; inputFiles [inputFileCount].type = KMAP; inputFileCount++; continue; } if (i < argc-1 && strcmp (argv[i],"-rkmap")==0) { inputFiles [inputFileCount].name = argv[++i]; inputFiles [inputFileCount].type = RKMAP; inputFileCount++; continue; } if (i < argc-1 && strcmp (argv[i],"-mys")==0) { inputFiles [inputFileCount].name = argv[++i]; inputFiles [inputFileCount].type = MYS; inputFileCount++; continue; } if (i < argc-1 && strcmp (argv[i],"-rmys")==0) { inputFiles [inputFileCount].name = argv[++i]; inputFiles [inputFileCount].type = RMYS; inputFileCount++; continue; } if (i < argc-1 && sscanf (argv[i],"-uni:%d,%d", &inputFiles[inputFileCount].from, &inputFiles[inputFileCount].to)==2) { inputFiles [inputFileCount].name = argv[++i]; inputFiles [inputFileCount].type = UNI; inputFileCount++; continue; } if (i < argc-1 && sscanf (argv[i],"-runi:%d,%d", &inputFiles[inputFileCount].from, &inputFiles[inputFileCount].to)==2) { inputFiles [inputFileCount].name = argv[++i]; inputFiles [inputFileCount].type = RUNI; inputFileCount++; continue; } if (i < argc-1 && strcmp (argv[i],"-write")==0) { if (file != 0) { fprintf (stderr, "mytool: only one '-write' option can be specified.\n"); exit (1); } file = argv[++i]; continue; } if (i < argc-1 && strcmp (argv[i],"-type")==0) { i++; if (strcmp (argv[i], "kmap")==0) { mapType = 1; } else if (strcmp (argv[i], "clkmap")==0) { mapType = 4; } else if (strcmp (argv[i], "fontmap")==0) { mapType = 2; } else { fprintf (stderr, "mytool: unknown maptype '%s'\n", argv[i]); exit (1); } continue; } if (i < argc-1 && strcmp (argv[i],"-name")==0) { mapName = argv[++i]; continue; } if (i < argc-1 && strcmp (argv[i],"-comment")==0) { mapComment = argv[++i]; continue; } if (i < argc-1 && strcmp (argv[i],"-my")==0) { if (mapFile != 0) { fprintf (stderr, "mytool: only one '-my' option can be specified.\n"); exit (1); } mapFile = argv[++i]; continue; } if (i < argc-1 && strcmp (argv[i],"-convert")==0) { i++; if (strcmp (argv[i],"my")==0) { outformat = SS_BINARY; } else if (strcmp (argv[i],"mys")==0) { outformat = SS_TEXT_MAP; } else if (strcmp (argv[i],"myc")==0) { outformat = SS_CTEXT; } else if (strcmp (argv[i],"bumap")==0) { outformat = SS_BUMAP; } else if (strcmp (argv[i],"cumap")==0) { outformat = SS_CUMAP; } else { usage (); return (1); } continue; } usage (); exit (1); } if (mapFile!=0) { SFile f(mapFile); map.setFileImage (f.getFileImage()); if (f.size() < 0 || !map.getStatus()) { if (mapFile==0) { usage (); return (1); } fprintf (stderr, "mytool: can not find valid '%s' map file\n", mapFile); return (1); } if (strip) { map.strip (); } } // Process input files for (i=0; icount; j++) { delete inputFiles[i].item->maps[j]; } delete inputFiles[i].item; inputFiles[i].item = 0; } } while (i-->0); fprintf (stderr, "mytool: can not read '%s'.\n", inputFiles[i].name); return (1); } SInputStream is = in.getInputStream(); switch (inputFiles[i].type) { case KMAP: inputFiles[i].item = processKMap (inputFiles[i].name, is, nocomment, 0, shortComment, inputName, &inputType); break; case RKMAP: inputFiles[i].item = processKMap (inputFiles[i].name, is, nocomment, 1, shortComment, inputName, &inputType); break; case MYS: inputFiles[i].item = processMYS (inputFiles[i].name, is, nocomment, 0, shortComment, inputName, &inputType); break; case RMYS: inputFiles[i].item = processMYS (inputFiles[i].name, is, nocomment, 1, shortComment, inputName, &inputType); break; case UNI: inputFiles[i].item = processUNI (inputFiles[i].name, is, nocomment, keySize, highLow, inputFiles[i].from, inputFiles[i].to, 0, shortComment, inputName, &inputType); break; case RUNI: inputFiles[i].item = processUNI (inputFiles[i].name, is, nocomment, keySize, highLow, inputFiles[i].from, inputFiles[i].to, 1, shortComment, inputName, &inputType); break; default: fprintf (stderr, "mytool: internal error: %d \n", inputFiles[i].type); break; } if (inputFiles[i].item==0) { fprintf (stderr, "mytool: bad source file '%s'.\n", inputFiles[i].name); do { if (inputFiles[i].item!=0) { delete inputFiles[i].item; inputFiles[i].item = 0; } } while (i-->0); return (1); } } if (mapComment != 0) { map.setComment ((const unsigned char*) mapComment, strlen (mapComment)); } else if (shortComment[0] != 0) { map.setComment ((const unsigned char*) shortComment, strlen (shortComment)); } else if (inputFileCount) { time_t tim = time(0); struct tm* ts = localtime (&tim); sprintf (shortComment, "created by mytool %04d-%02d-%02d", ts->tm_year+1900, ts->tm_mon+1, ts->tm_mday); map.setComment ((const unsigned char*) shortComment, strlen (shortComment)); } if (mapType > 0) { map.setType (mapType); } else if (inputType > 0) { map.setType (inputType); } if (mapName != 0) { map.setName ((const unsigned char*) mapName); } else if (inputName[0] != 0) { map.setName ((const unsigned char*) inputName); } for (i=0; icount; j++) { map.add (inputFiles[i].item->maps[j]); inputFiles[i].item->maps[j] = 0; } delete inputFiles[i].item; inputFiles[i].item = 0; } // Build encoding state machine. if (stateEnc) { for (i=0; iitemType == SBMapItem::SBMapNToN) type = "my"; if (mp->itemType == SBMapItem::SBMapBumap) type = "bumap"; fprintf (stdout, "%d.itemType...........: %s\n", i, type); fprintf (stdout, "%d.size...............: %d matches \n", i, map.getSize(i)); type="unknown"; if (map.getType(i)==SBMap::SBMap_DECODE) type="decode"; if (map.getType(i)==SBMap::SBMap_ENCODE) type="encode"; fprintf (stdout, "%d.type...............: %s\n",i, type); type = (map.getStateMachine(i) ==0) ? "no" : "yes"; fprintf (stdout, "%d.state machine based: %s\n",i, type); integ = 8 << map.getInWordSize(i); fprintf (stdout, "%d.input..............: %d bits\n", i, integ); integ = 8 << map.getOutWordSize(i); fprintf (stdout, "%d.output.............: %d bits\n", i, integ); if (showKeys) { char buf[256]; int k; const unsigned char* tmp; unsigned int len; unsigned int matched; for (k=0; kgetKey (k, &len, &matched); memcpy (buf, tmp, len); buf[len] = 0; fprintf (stdout, "%d.keys............: [%d] |%s|\n" ,i, k, buf); } } if (benchmark) { fprintf (stdout, "%d.benchmark.speed......: %d\n", i, doBenchMark (&map, i)); } } if (benchmark) { fprintf (stdout, "encode.benchmark.speed.: %d\n", doBenchMark (&map, -1-(int)SBMap::SBMap_ENCODE)); fprintf (stdout, "decode.benchmark.speed.: %d\n", doBenchMark (&map, -1-(int)SBMap::SBMap_DECODE)); } } else if (benchmark) { for (i=0; i= map.getSize()) { fprintf (stderr, "Bad argument for index. Should be [0..%d]\n", (int) map.getSize()-1); return (1); } SStateModel model (in_bytesize, map.getInWordSize (index), map.getOutWordSize (index), out_bytesize); while (!feof(stdin)) { if (in_bytesize_orig==1) { fprintf (stdout, "Enter bytestring: "); } else { fprintf (stdout, "Enter hex bytestring nibbles: "); } fflush (stdout); in[1023] = 0; if (fscanf (stdin, "%1023s", in) == 0) { fprintf (stdout, "Can not parse line"); return (1); } if (in_bytesize_orig==1) { len = strlen (in); memcpy (enc, in, len); } else { len = encode (enc, in, in_bytesize); } if (circle>=0) { fprintf (stderr, "circle..\n"); len = map.circle ((SBMap::SBMapType)circle, enc, len, &model, 1); } else { len = map.encode (index, enc, len, &model, 1); } switch (len) { case SS_REJECT: model.reset(); fprintf(stdout, "reposnse: REJECT\n"); break; case SS_ACCEPT: fprintf(stdout, "reposnse: ACCEPT\n"); break; default: fprintf (stdout, "result: MATCH length %d -> %d:", len, model.out.length); switch (out_bytesize) { case 0: memcpy (enc, model.out.u.u8, model.out.length); break; case 1: memcpy (enc, model.out.u.u16, model.out.length*2); break; case 2: memcpy (enc, model.out.u.u32, model.out.length*4); break; case 3: memcpy (enc, model.out.u.u64, model.out.length*64); break; default: // Debug it.. return (1); } if (out_bytesize_orig==1) { memcpy (in, enc, model.out.length); in[model.out.length] = 0; } else { decode (in, enc, out_bytesize, model.out.length); } fprintf (stdout, "'%s'\n", in); model.reset(); } } } if (file != 0) { SFile f(file); SOutputStream os = f.getOutputStream(); if (!os.isOK()) { fprintf (stderr, "mytool: can not open file: '%s'\n",file); return (1); } int size = map.serialize (os, outformat); if (size <= 0) { fprintf (stderr, "mytool: can serialize map into file: '%s'\n", file); return (1); } } return (0); } int encode(void* buffer, char* input, int bytesize) { SS_WORD8 o8[1024]; SS_WORD16 o16[1024]; SS_WORD32 o32[1024]; SS_WORD64 o64[1024]; int i, index; SS_WORD64 result; index = 0; i=0; result=0; switch (bytesize) { case 0: for (i=0; input[i]!=0; i++) { if (!ISHEX(input[i])) continue; result = (result << 4) + hexVle(input[i]); index++; if ((index%2)==0) { o8[index/2-1] = (SS_WORD8) result; result = 0; } } memcpy (buffer, o8, index/2); return index/2; case 1: for (i=0; input[i]!=0; i++) { if (!ISHEX(input[i])) continue; result = (result << 4) + hexVle(input[i]); index++; if ((index%4)==0) { o16[index/4-1] = (SS_WORD16) result; result = 0; } } memcpy (buffer, o16, index/2); return index/4; case 2: for (i=0; input[i]!=0; i++) { if (!ISHEX(input[i])) continue; result = (result << 4) + hexVle(input[i]); index++; if ((index%8)==0) { o32[index/8-1] = (SS_WORD32) result; result = 0; } } memcpy (buffer, o32, index/2); return index/8; case 3: for (i=0; input[i]!=0; i++) { if (!ISHEX(input[i])) continue; result = (result << 4) + hexVle(input[i]); index++; if ((index%16)==0) { o64[index/16-1] = (SS_WORD32) result; result = 0; } } memcpy (buffer, o64, index/2); return index/16; default: break; } return 0; } void decode(char* buffer, void* input, int bytesize, int len) { int i; int index; SS_WORD64 word; unsigned char* in = (unsigned char*) input; switch (bytesize) { case 0: index=0; for (i=0; i='0' && in<='9') return in-'0'; if (in>='a' && in<='z') return in-'a'+10; if (in>='A' && in<='Z') return in-'A'+10; return 256; } char hexStr (SS_WORD64 in, int nibble) { SS_WORD64 newIn; newIn = (in>>(4*nibble))&0x0f; if (newIn < 10) return (char) (newIn + '0'); return (char) (newIn + 'A' - 10); } int doBenchMark(SBMap* map, int index) { SS_WORD16 in; SS_WORD16 input[256]; int ind; int count = 0; time_t t0, t1; int len; t0 = time(0); ind=0; in = 0; int i; int which=index; if (which < 0) { for (i=0; igetSize(); i++) { if (map->getType(i) == (SBMap::SBMapType)(-index-1)) { which = i; break; } } } if (which < 0) { return 0; } SStateModel model (1, map->getInWordSize (which), map->getOutWordSize (which), 1); while (1) { input[ind]++; if (input[ind]==0 && ind>0) { ind--; } model.reset(); if (index<0) { len = map->circle ((SBMap::SBMapType)(-index-1), input, ind+1, &model, 1); } else { len = map->encode (index, input, ind+1, &model, 1); } switch (len) { case SS_REJECT: break; case 0: if (index<0) fprintf (stderr, "Match 0.\n"); default: if (ind<255) { ind++; input[ind] = 0; } break; } in++; if ((in&0x0f)==0) { count++; t1 = time(0); if (t1-t0 > 5 || t0-t1 > 5) { break; } } } return count; } static void print_version () { fprintf (stderr, "mytool version %s GNU (C) Gaspar Sinai\n", SD_YUDIT_VERSION); } static void usage () { fprintf (stderr, "usage: mytool [-convert {myc|mys|my|bumap|cumap} [-info [-showkeys]] [-test] [-encode] [-decode]"); fprintf (stderr, " [-write new-map] [-name map-name] [-nocomment] [-comment comment] [-type map-type]"); fprintf (stderr, " [-my binary-mapfile] [-benchmark] [-high|-low]"); fprintf (stderr, " [-uni:1,2 plainfile [-8]] [-runi:1,2 plainfile [-8]]"); fprintf (stderr, " [-mys mapfile] [-rmys reverse-map-file]"); fprintf (stderr, " [-kmap keymap-file] [-rkmap reverse-keymap-file]\n"); fprintf (stderr, " [-installdir \"Install Dir\"] [-pipecmd command [args]]\n"); fprintf (stderr, " -info print out useful info about the map.\n"); fprintf (stderr, " -test print out useful info about the map and test it.\n"); fprintf (stderr, " -strip delete the state machine, before doing anything else.\n"); fprintf (stderr, " -name Assign a max 32-byte-long name.\n"); fprintf (stderr, " -comment Assign a comment of arbitrary length.\n"); fprintf (stderr, " -type Assign a map type. 0=None, 1=Font, 2=kmap - not used.\n"); fprintf (stderr, " -encode build a state machine for all encoding maps.\n"); fprintf (stderr, " -decode build a state machine for all decoding maps.\n"); fprintf (stderr, " -write write out the latest map before exiting.\n"); fprintf (stderr, " -convert {mys|c|my} convert the file to 'c' or 'my' \n"); fprintf (stderr, " -uni:local,unicode a 16 bit file format with columns precified.\n"); fprintf (stderr, " -runi:local,unicode a 16 bit file format in reverse with columns precified.\n"); fprintf (stderr, " -my assign a fully specified binary mapfile to input.\n"); fprintf (stderr, " -mys assign a fully specified mapfile source to input.\n"); fprintf (stderr, " -rmys same as mys but key - value pairs will be reversed.\n"); fprintf (stderr, " -kmap assign a fully specified keymap file source to input.\n"); fprintf (stderr, " -rkmap same as kmap but key - value pairs will be reversed.\n"); } ./OldHungarian.txt0000644000175000017500000000235611053726334014163 0ustar henrichhenrichIn preparation for Old Hungarian (Rovasiras) I made this beta hacked version of Yudit to test rendering. Currently there are two proposals for this script, Michael Everson's and Hosszu Gabor's proposal. From Unicode's point of view I personaly like the M.Everson's proposal, but historically Unicode's rules has been bended before so I can't predict the future. In this beta I assigned 10C00..10FFF area as a strict Right-To-Left area for this script. I added two true type fonts for default fontset: rovasSMP.ttf (Hosszu) ohunSMP.ttf (Michael Everson) Thes fonts can be placed in ~/.yudit/fonts (linux) or C:\Program Files\Yudit\font Currently I support ZWJ ligatures for this script with 'liga' and 'rlig' OpenType feature. Currently I do not expect any script tag in the font. In the future, I plan to add support for variation selectors for this script. Currently there is only one incomplete keymap (a,b,c,cs,cs.a,b.a) - Hosszu.kmap. You can edit this keymap in C:\Program Files\Yudit\src\Hosszu.kmap To compile the keymap on windows, exit Yudit, open a cmd window and cd C:\Program Files\Yudit\bin .\mytool -convert my -write ..\data\Hosszu.my -mys ..\src\Hosszu.mys -rmys ..\src\Hosszu.mys Gaspar Sinai Tokyo, 2008-08-23 ./COPYING.TXT0000644000175000017500000004352407532460062012562 0ustar henrichhenrich GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 2, dated June 1991, by the Free Software Foundation. This program 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 this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ./Makefile.conf0000644000175000017500000000447411334661333013435 0ustar henrichhenrichifeq ($(wildcard /etc/passwd),/etc/passwd) TOPDIR = /home/gsinai/Build/Yudit/yudit-2.9.2 MSGMERGE=/usr/bin/msgmerge HAVE_LOCALE = -DHAVE_LOCALE HAVE_SET_IM_VALUES=-DHAVE_SET_IM_VALUES NEED_SET_IM_VALUES_PROTO=-DNEED_SET_IM_VALUES_PROTO prefix = /usr exec_prefix = ${prefix} libexecdir = ${exec_prefix}/libexec bindir = ${exec_prefix}/bin datadir = ${prefix}/share mandir = ${prefix}/man LPR_COMMAND = /usr/bin/lpr LPR_CFLAGS = -DLPR_COMMAND=\"/usr/bin/lpr\" CXX = g++ CXXFLAGS = -g -O2 CFLAGS = -g -O2 LDFLAGS = LIBS = -ldl TRANSLATE_LFLAGS = CPPFLAGS = -I$(TOPDIR) -DHAVE_LONG_LONG -Wall -DHAVE_MMAP $(CFLAGS) INSTALL = @INSTALL@ YUDIT_DATA = /usr/share/yudit INSTALL = $(TOPDIR)/bin/install-sh -c # Strip binary INSTALL_PROGRAM = $(TOPDIR)/bin/install-sh -c -s INSTALL_DATA = $(TOPDIR)/bin/install-sh -c -m 644 X_CFLAGS = X_LIBS = X_PRE_LIBS = -lSM -lICE X_EXTRA_LIBS = USE_X11 = -DUSE_X11=1 X11_LIB = -lX11 AR = ar cr # # For Sun's SUNWspro compiler you need to have CC's AR # otherwise you get linking errors, like: # # SVector::__vtbl ../stoolkit/libstoolkit.a(SStringVector.o) # [Hint: try checking whether the first non-inlined, # non-pure virtual function of class SVector is defined] # # Todo: put this in configure. # AR = CC -xar -o # #ALL_LIBS=wsock32.lib RANLIB=ranlib LD= $(CXX) $(LDFLAGS) LOCALE_DIR=$(YUDIT_DATA)/locale #INSTALL_DATA=/bin/cp #INSTALL_PROGRAM=/bin/cp MESSAGES=messages OBJS=$(MODULES) SPLATFORM=UNIX SWINDOWS=X11 SWINDOW_FLAGS=$(USE_X11) $(X_CFLAGS) # # This TRANSLATE_LFLAGS should not be here. But this works on solaris... # or, does it? ALL_LIBS=$(X_EXTRA_LIBS) $(X_LIBS) $(X11_LIB) $(LIBS) $(TRANSLATE_LFLAGS) else # # TOPDIR and YUDIT_DATA is all your need. # TOPDIR=/Build/Yudit/yudit-2.9.2 YUDIT_DATA=/usr/share/yudit CPPFLAGS:=$(CPPFLAGS) -nologo -DUSE_WINAPI -I$(TOPDIR) # Zi is debug on CXX=cl /Zi LD=cl /Zi AR=lib /out: ALL_LIBS=advapi32.lib wsock32.lib shell32.lib SPLATFORM=WINDOWS SWINDOWS=WIN32 SWINDOW_FLAGS= # # Do not define HAVE_WS2_32_DLL # because it wont work on Windows95 # #SWINDOW_LIBS=user32.lib ws2_32.lib gdi32.lib imm32.lib SWINDOW_LIBS=user32.lib gdi32.lib imm32.lib HAVE_LOCALE= HAVE_SET_IM_VALUES= NEED_SET_IM_VALUES_PROTO=-DNEED_SET_IM_VALUES_PROTO endif ifeq (x${YUDIT_MYTOOL},x) MYTOOL := $(TOPDIR)/mytool/mytool else MYTOOL := ${YUDIT_MYTOOL} endif ./doc/0000755000175000017500000000000011334661333011605 5ustar henrichhenrich./doc/HOWTO-build.txt0000644000175000017500000000266611331207240014343 0ustar henrichhenrichHow to build Yudit? Author: Gaspar Sinai Version: 2010-01-31 Unix/Linux using rpm -------------------- rpmbuild -tb yudit-version.tar.gz Unix/Linux using tar -------------------- tar xfz yudit-version.tar.gz cd yudit-version ./configure make make install Windows95..XP ------------- You need: - Freely Downlodable Microsoft SDK (Current release is 9.0) - GNU tools in C:/Build/Unix/usr/local/wbin cp.exe rm.exe make.exe tar.exe gunzip.exe from http://gnuwin32.sourceforge.net/ - Innno Setup (http://www.jrsoftware.org/isinfo.php) Get a DOS Prompt at C:\Build\Yudit (This is hardcoded in bin/wininst.bat, Makefile.conf(TOPDIR) and yudit.iss) C: cd \Build\Yudit mkdir Install "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat" gunzip yudit-version.tar.gz cd yudit-version cd bin cd .. cp Makefile.in Makefile make cd bin wininst.bat (this will copy the necessary install files to C:\BuildYudit\Install) open C:\Build\Yudit\yudit-version\yudit.iss with Innno Setup build will create an install file in C:\Build\Yudit\Output Minor version change ---------------------- If you want to change the minor version of Yudit you need to change the following files: stoolkit/STypes.h #define SD_YUDIT_VERSION "2.9.2" yudit-2.9.2.spec Version: 2.9.2 yudit.iss (Win32 Only) AppVerName=Yudit-2.9.2 OutputBaseFileName=yudit-2.9.2 [Registry] 2 places 2.9.2 bin/wininst.bat (Win32 Only) set TOPLEVEL="D:\yudit\yudit-2.9.2" ./doc/sr/0000755000175000017500000000000011334661334012232 5ustar henrichhenrich./doc/sr/FAQ.TXT0000644000175000017500000002464611334661334013256 0ustar henrichhenrichЧесто постављана питања за уређивач Уникода Јудит ================================================= Верзија: 2.9.2 Аутор: Гашпар Синаји (Gaspar Sinai) Датум: Токио, 21.05.2006. Превод: Страхиња Радић , СРД „Уликс“ http://uliks.sourceforge.net/ П1: Како могу да поново прикажем ова често постављана питања и одговоре? О1: Откуцајте ‘help’ у командној области. На исти начин можете доћи до пробне стране ако откуцате ‘test’ у командној области. Откуцајте ‘howto japanese’, ‘howto configure’ да бисте приказали какода стране. П2: Где могу да набавим ажурне верзије? О2: Преузмите их са http://www.yudit.org/ П3: Притиснуо сам дугме „Сачувај“ а ништа се није десило. Зашто? О3: Јудит поседује командну линију. Највероватније је потребно само да притиснете тастер Enter. П4: Шта значи оно [Прелом реда] са десне стране што углавном показује „Уникс“? О4: Знаци за крај реда су: Уникс='\n' - Униксовски прелом реда ДОС='\r\n' - ДОС-овски прелом реда Мек='\r' - Меков прелом реда ЛС = U+2028 - Уникодов раздвајач реда ПС = U+2029 - Уникодов раздвајач пасуса У Јудиту можете да ове знаке користите напоредо — на пример, можете да створите фајл који садржи ДОС-овске и Униксовске редове. Али ако је икако могуће, требало би да избегавате мешање. П5: Како могу да видим списак кодирања (избор -e)? О5: Откуцајте ‘man uniconv’ или ‘uniconv -h’ у прозору љуске. П6: Како могу да додам мој фајл за унос са тастатуре? О6: Фајл можда већ постоји у /usr/share/yudit/data и у том случају је потребно само да то додате у /usr/share/yudit/config/yudit.properties Ако то није случај, потребно је да претворите изворни kmap фајл у бинарни формат: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my и онда да ископирате My.my у ~/.yudit/data cp My.my ~/.yudit/data Молим вас да ми пошаљете ваш kmap фајл (извор) како бих га укључио у следећој дистрибуцији. За више информација о kmap фајловима, погледајте /usr/share/yudit/doc/keymap-format.txt Изворни код kmap фајлова који се испоручују са Јудитом се налази у /usr/share/yudit/src/ Приметите да се kmap фајлови могу искористити и као претварачи текста и мапе фонтова. П7: Како да видим поруке у мом језику? О7: Преузмите изворни код и прочитајте README.TXT. У њему је описано како да то урадите. Молим вас да ми пошаљете превод, како бих га укључио у будуће верзије. П8: Како да додам TrueType фонт? О8: Поставите font-file.ttf и some-other-font-file.ttf у /usr/share/yudit/fonts или ~/.yudit/fonts и после тога измените /usr/share/yudit/config/yudit.properties додајући нови виртуални фонт MyFont yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Сада можете да користите овај фонт у прозору уређивача ако га додате у yudit.editor.fonts=...,MyFont,... или у ГКС ако га додате у: yudit.fonts=...,MyFont,... П9: Да ли ће бити верзије за Виндовс? О9: Јудит поседује апстрактни прозорски прибор. Ово омогућава прилагођавање Јудита, на пример за svgalib, и то веома брзо. Прилагодио сам га за моју жену Јуко у децембру 2001. Ово је био први и последњи пут да сам дирао Виндовс. П10: Колико је Јудит добар као уређивач Уникода? О10: Покушао сам да остварим стандард Уникод гдегод је то имало смисла. Постоје неке особености, погледајте /usr/share/yudit/doc/HOWTO-bidi.txt за информације о усаглашености са двосмерношћу. П11: Задао сам 3 фајла у командној линији а сад могу да видим само један. О11: Они су у прихватнику историје. Ако одете до области за унос наредби и притиснете стрелицу нагоре (или Ctrl-k) или стрелицу надоле (или Ctrl-j) можете да се шетате кроз историју фајлова. П12: Које пречице постоје? О12: Можете видети већину пречица - жути описи их приказују подвучене. Већина их ради са тастером Ctrl као и са Alt. Уређивач за сада има следеће пречице: Escape - пребацивање између командног режима и режима уређивања Home - иди на почетак реда End - иди на крај реда b - страна горе f - страна доле k - горе n,j - доле h - лево l - десно m - обриши цео ред x - обриши избор v - залепи последњи избор Ако се Meta држи притиснут док се помера курсор, текст ће бити изабран. Двоструки притисак миша бира реч а троструки бира цео ред. П13: Како да учитам садржај бинарног фајла са мапом тастатуре? О13: Можете да направите отисак извора на овај начин: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys П14: Како да брзо унесем знак из Уникода? О14: Промените унос на [unicode], унесите uxxxx или Uxxxxxxxx где је x хексадекадни број. П15: Може ли Јудит да замени један текст другим? О15: Потребно је да у командној области откуцате replace стари-текст нови-текст и притиснете Enter за сваку замену. П16: Где се може наћи рукописни начин уноса? О16: Притисните плаву стрелу (начин уноса). Доделите freehand једном од F-тастера. П17: Како да искључим истицање синтаксе? О17: Из командне области откуцајте: ‘syntax none’. Доступни избори ће бити исписани у ознаци грешке уколико само откуцате ‘syntax’. Ово можете подесити и у датотеци са подешавањима. П18: Како да искључим аутоматски прелом редова? О18: Из командне области откуцајте: ‘wordwrap false’. Ако откуцате 'wordwrap true’ укључићете аутоматски прелом редова. Ово можете подесити и у фајлу са подешавањима. Додатак ======= 1.1. Примери мапа тастатуре Следећи примери су узети из неких мапа које долазе уз Јудит. Russian Мапира фонетска руска слова. Нека која нису толико очита су: yo даје ё , c даје ь, q даје ъ x даје ы ee даје э Hungarian Мапира мађарске и немачке знаке. Акцентовани знаци се могу уносити преко енглеског знака за којим следи акценат. Примери: a' постаје á , o: постаје ö , o" постаје ő SS производи ß , Ss даје знак за параграф §. Kana Мапира ромађи у хирагану и катакану. Мала слова се користе за хирагану а велика за катакану. Она која нису толико очигледна су: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Са овом мапом можете да користите описе из RFC1345 да бисте уносили знаке. Ево неких примера: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML мапира SGML у Уникод. Примери: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul мапира латинично пресловљавање у знаке хангула. Користи се ISO/TC46/SC2/WG4 пресловаљавање. Више о њему можете сазнати на http://www.hansoft.com/hangul/faq.html Неки примери: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/sr/FAQ.TXT.in0000644000175000017500000002460611331217554013655 0ustar henrichhenrichЧесто постављана питања за уређивач Уникода Јудит ================================================= Верзија: 2.9.2 Аутор: Гашпар Синаји (Gaspar Sinai) Датум: Токио, 21.05.2006. Превод: Страхиња Радић , СРД „Уликс“ http://uliks.sourceforge.net/ П1: Како могу да поново прикажем ова често постављана питања и одговоре? О1: Откуцајте ‘help’ у командној области. На исти начин можете доћи до пробне стране ако откуцате ‘test’ у командној области. Откуцајте ‘howto japanese’, ‘howto configure’ да бисте приказали какода стране. П2: Где могу да набавим ажурне верзије? О2: Преузмите их са http://www.yudit.org/ П3: Притиснуо сам дугме „Сачувај“ а ништа се није десило. Зашто? О3: Јудит поседује командну линију. Највероватније је потребно само да притиснете тастер Enter. П4: Шта значи оно [Прелом реда] са десне стране што углавном показује „Уникс“? О4: Знаци за крај реда су: Уникс='\n' - Униксовски прелом реда ДОС='\r\n' - ДОС-овски прелом реда Мек='\r' - Меков прелом реда ЛС = U+2028 - Уникодов раздвајач реда ПС = U+2029 - Уникодов раздвајач пасуса У Јудиту можете да ове знаке користите напоредо — на пример, можете да створите фајл који садржи ДОС-овске и Униксовске редове. Али ако је икако могуће, требало би да избегавате мешање. П5: Како могу да видим списак кодирања (избор -e)? О5: Откуцајте ‘man uniconv’ или ‘uniconv -h’ у прозору љуске. П6: Како могу да додам мој фајл за унос са тастатуре? О6: Фајл можда већ постоји у @YUDIT_DATA@/data и у том случају је потребно само да то додате у @YUDIT_DATA@/config/yudit.properties Ако то није случај, потребно је да претворите изворни kmap фајл у бинарни формат: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my и онда да ископирате My.my у ~/.yudit/data cp My.my ~/.yudit/data Молим вас да ми пошаљете ваш kmap фајл (извор) како бих га укључио у следећој дистрибуцији. За више информација о kmap фајловима, погледајте @YUDIT_DATA@/doc/keymap-format.txt Изворни код kmap фајлова који се испоручују са Јудитом се налази у @YUDIT_DATA@/src/ Приметите да се kmap фајлови могу искористити и као претварачи текста и мапе фонтова. П7: Како да видим поруке у мом језику? О7: Преузмите изворни код и прочитајте README.TXT. У њему је описано како да то урадите. Молим вас да ми пошаљете превод, како бих га укључио у будуће верзије. П8: Како да додам TrueType фонт? О8: Поставите font-file.ttf и some-other-font-file.ttf у @YUDIT_DATA@/fonts или ~/.yudit/fonts и после тога измените @YUDIT_DATA@/config/yudit.properties додајући нови виртуални фонт MyFont yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Сада можете да користите овај фонт у прозору уређивача ако га додате у yudit.editor.fonts=...,MyFont,... или у ГКС ако га додате у: yudit.fonts=...,MyFont,... П9: Да ли ће бити верзије за Виндовс? О9: Јудит поседује апстрактни прозорски прибор. Ово омогућава прилагођавање Јудита, на пример за svgalib, и то веома брзо. Прилагодио сам га за моју жену Јуко у децембру 2001. Ово је био први и последњи пут да сам дирао Виндовс. П10: Колико је Јудит добар као уређивач Уникода? О10: Покушао сам да остварим стандард Уникод гдегод је то имало смисла. Постоје неке особености, погледајте @YUDIT_DATA@/doc/HOWTO-bidi.txt за информације о усаглашености са двосмерношћу. П11: Задао сам 3 фајла у командној линији а сад могу да видим само један. О11: Они су у прихватнику историје. Ако одете до области за унос наредби и притиснете стрелицу нагоре (или Ctrl-k) или стрелицу надоле (или Ctrl-j) можете да се шетате кроз историју фајлова. П12: Које пречице постоје? О12: Можете видети већину пречица - жути описи их приказују подвучене. Већина их ради са тастером Ctrl као и са Alt. Уређивач за сада има следеће пречице: Escape - пребацивање између командног режима и режима уређивања Home - иди на почетак реда End - иди на крај реда b - страна горе f - страна доле k - горе n,j - доле h - лево l - десно m - обриши цео ред x - обриши избор v - залепи последњи избор Ако се Meta држи притиснут док се помера курсор, текст ће бити изабран. Двоструки притисак миша бира реч а троструки бира цео ред. П13: Како да учитам садржај бинарног фајла са мапом тастатуре? О13: Можете да направите отисак извора на овај начин: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys П14: Како да брзо унесем знак из Уникода? О14: Промените унос на [unicode], унесите uxxxx или Uxxxxxxxx где је x хексадекадни број. П15: Може ли Јудит да замени један текст другим? О15: Потребно је да у командној области откуцате replace стари-текст нови-текст и притиснете Enter за сваку замену. П16: Где се може наћи рукописни начин уноса? О16: Притисните плаву стрелу (начин уноса). Доделите freehand једном од F-тастера. П17: Како да искључим истицање синтаксе? О17: Из командне области откуцајте: ‘syntax none’. Доступни избори ће бити исписани у ознаци грешке уколико само откуцате ‘syntax’. Ово можете подесити и у датотеци са подешавањима. П18: Како да искључим аутоматски прелом редова? О18: Из командне области откуцајте: ‘wordwrap false’. Ако откуцате 'wordwrap true’ укључићете аутоматски прелом редова. Ово можете подесити и у фајлу са подешавањима. Додатак ======= 1.1. Примери мапа тастатуре Следећи примери су узети из неких мапа које долазе уз Јудит. Russian Мапира фонетска руска слова. Нека која нису толико очита су: yo даје ё , c даје ь, q даје ъ x даје ы ee даје э Hungarian Мапира мађарске и немачке знаке. Акцентовани знаци се могу уносити преко енглеског знака за којим следи акценат. Примери: a' постаје á , o: постаје ö , o" постаје ő SS производи ß , Ss даје знак за параграф §. Kana Мапира ромађи у хирагану и катакану. Мала слова се користе за хирагану а велика за катакану. Она која нису толико очигледна су: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Са овом мапом можете да користите описе из RFC1345 да бисте уносили знаке. Ево неких примера: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML мапира SGML у Уникод. Примери: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul мапира латинично пресловљавање у знаке хангула. Користи се ISO/TC46/SC2/WG4 пресловаљавање. Више о њему можете сазнати на http://www.hansoft.com/hangul/faq.html Неки примери: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/HOWTO-bidi.txt0000644000175000017500000002253311054512720014152 0ustar henrichhenrich--------------------------------------------------------------- HOWTO-bidi.txt: Editing Bidirectional Documents With Yudit --------------------------------------------------------------- From version 2.7 Yudit should show bidirectional text just as any other Unicode application that implement Unicode Bidirectional algorithm. Paragraphs with initial directionality LR, like English text will be aligned to the left while texts with RL initial directionality will be aligned to the right. As Unicode Standard allows higher level protocols to impose Document embedding, Yudit can enforce an LR or RL embedding on the whole document if the user sets it with the text embedding button. This will force left or right alignment on the whole text. --------------------------------------------------------------- Usage --------------------------------------------------------------- 1. What is implicit bidirectional behavior? All characters in a Unicode belong to one of the many bidirectional classes. Depending on these character properties all characters in the documents must be reordered into a visual order dictated by a rather convoluted algorithm in UAX#9. Under implicit bidirectional behavior I mean the behavior that purely relies on the characters bidirectional class property. 2. How to invoke implicit bidi? You don't need to do anything, just type: He said “سلام!‏” Please note that I cheated here: I added a RLM (Right Left Mark) U+200F at the end. I wanted to make the text more digestible in this English document. This mark is visible in the editor window but it will not appear when printing, or, when used in labels. 3. What is explicit embedding and override In addition to the inherent bidirectional properties of the characters, Unicode allows text between certain markers to render Left to Right or believe that the embedding context is Left or Right. These markers can be nested. The PDF (POP directional format) marker restores the last embedding state. a) Directional Override Text between RLO (Right to Left Override) … PDF (Pop Directional Format) LRO (Left to Right Override) … PDF (Pop Directional Format) Will have an LR or RL explicit directionality, regardless of their bidirectional property. However, this directional property is (unfortunately) not used when the initial directionality is determined, so your text might not be aligned as you expect. UAX#9 P2: In each paragraph, find the first character of type L, AL, or R. Because paragraph separators delimit text in this algorithm, this will generally be the first strong character after a paragraph separator or at the very beginning of the text. Note that the characters of type LRE, LRO, RLE, RLO are ignored in this rule. This is because typically they are used to indicate that the embedded text is the opposite direction than the paragraph level b) Directional Embedding Text between RLE (Right to Left Embedding) … PDF (Pop Directional Format) LRE (Left to Right Embedding) … PDF (Pop Directional Format) are embedded. Embeddings supposed to give some protection for the embedding context. The text in the embedding is (in most cases) rendered as if the initial, embedding of the text would be RL or LR. Please note that there are some characters that make this mission impossible: in fact it is not really possible to make use of RLE or LRE if you use those characters. (Should they be forbidden? Read on). In Yudit you do not need to care about markers for a) and b), they are totally hidden. Your embedded text will have a brighter or darker ‪background‬, this way you can tell the embedding range. Unicode allows for 3 levels of the bidirectional algorithm: 1. No bidirectional formatting. This implies that the system does not visually interpret characters from right-to-left scripts. 2. Implicit bi-directionality. The implicit bidirectional algorithm and the directional marks RLM and LRM are supported. 3. Full bi-directionality. The implicit bidirectional algorithm, the implicit directional marks, and the explicit directional embedding codes are supported: RLM, LRM, LRE, RLE, LRO, RLO, PDF. Yudit has now full bidirectional support (3). 4. How to do Explicit Direction Override? To override implicit directionality of characters press Override Direction to change direction. Then simply continue typing. You can get out of this by the cursor (Yield Direction) button. You can clearly distinguish the embedded text. I said “‮NO WAY!‬”. 5, How to do simple Explicit Embedding Similarly embedding a Right-Left text in a Left-Right document needs (Embedding Override). This is good, for instance if you want to say: He said: “‫سلام!‬” Without the Right-to-Left embedding this would look pretty bad in this English document: He said “سلام!” 6. I already have a text that I need to embed/un-embed. How to do this? Before embedding/un-embedding select the text. Selection can be made for instance with arrow keys. After selection with the keys keep pressing and press for Direction Override or for Embedding Override. You can bring back the text to no embedding level with (Yield Embedding). 7. What is Document Text Embedding? Yudit can enforce an initial embedding level to the whole document. When Yudit is started the initial embedding is reset to none. The text is also saved without initial embedding enforcement tags. When no initial embedding is enforced, your text can show up aligned to the left or to the right, depending on the natural paragraph embedding level. 8. I want to embed LR text but my embedding arrow is RL. The direction of the embedding arrows on the tool-bar always point to the opposite direction of the current embedding; the context where the cursor is. This is to make the operation faster and make less errors. It is usually not desired to embed a text in an LR document as LR. However, you can do this with this trick: If you want to embed LR text in the document with LR embedding change the Document Text Embedding to the RL. Now you can make the LR embedding. 9. Notes In po file translations you might want to consider embedding your RL text with explicit RLO so that you will see what you will get on that label: Without explicit embedding: msgstr "سلام Gáspár, محمد" With explicit embedding, you will see what the label will eventually show: msgstr "‫سلام Gáspár, محمد‬" Please note that most applications do not support Explicit Embedding, so deal with them sparingly. Moreover, explicit embedding does not save you from the effects of Unicode Bidirectional algorithm. You have this text: msgstr "‫سلام Gáspár محمد‬" I put the whole thing into RL embedding marks, because I want to see them this way, in my RL text label. It works. But what if I replace the leftmost space with a tab? msgstr "‫سلام Gáspár محمد‬" Now try to put this in a label. (Try pressing the Document Text Embedding button in Yudit for the same effect). Now you see what you will see in that label. Well, to tell the truth nothing saves you from these effects of Unicode Bidirectional algorithm. If you want to see why this happens please read Surprise Effects in this document. Fortunately, if you use gettext you will be able to use '\t' character for TAB. So when translating po file please always use '\t', like this: msgstr "‫سلام Gáspár\tمحمد‬" But in short: do not use segment separators in your po translation text as is. In case of a non-computer, non-gettext text you are on your own. 10. Comparing With Other Applications I tried to compare Yudit bidi to other applications but, the applications had problems even with this simple text: Hello ‫العربية 14محمد‬ ‮RLTXT‬ nothing I may try it again at a later time. --------------------------------------------------------------- Technical Details --------------------------------------------------------------- The current Yudit Bidi implementation is trying to reverse an irreversible algorithm when resolving explicit levels. This is text embedded within LRE-PDF, RLE-PDF, LRO-PDF and RLO-PDF pairs. The algorithm can re-create the text from the view. This also means that superfluous embedding tags will be dropped when saving alien (non-Yudit) texts. These tags will be dropped from portions of the document that were at least once viewed. I will not give you an exhaustive list of such cases. 1. While alien Unicode stream text1text2text3 will be saved the same way, text1text2 will be saved as text1text2 as they are equivalent, and the latter is shorter. 2. Empty pairs of or will be deleted from the text, as they have no effect. 3. Spurious with no matching embedding marks will be deleted from the document. 4. To keep the text editable, LRM and RLM zero with marks are displayed in the editing window, but they will not appear when printing or when used in non-editable places, like labels. Document version 1.8 2008-08-19 Document version 1.7 2006-05-21 Document version 1.6 2002-11-19 Gaspar Sinai ./doc/FAQ.TXT0000644000175000017500000001470011334661333012617 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2010-01-31 Q1: How can I display this FAQ again? A1: Type `help' in the command area. Similarly you can get a testpage if you type `test' in the command area. Type 'howto japanese', 'howto configure' to get the howto pages. Q2: Where can I get updates? A2: Download them from http://www.yudit.org/ Q3: I pressed Save Button and nothing happens. Why? A3: Yudit has a command line. Most probably you just need to hit Enter Key. Q4: What is that [Line Break] on the right hand side that is mostly showing "Unix"? A4: The line end marks are: UNIX='\n' - Unix line break DOS='\r\n' - DOS line break MAC='\r' - MAC line break LS = U+2028 - Unicode line separator PS = U+2029 - Unicode paragraph separator In Yudit you can mix these - you can create a file that has DOS and Unix lines for instance. But you should avoid mixing them if possible. Q5: How can I get the list of encodings (-e options)? A5: Type `man uniconv' or `uniconv -h' in a shell window. Q6: How can I add my keyboard input file? A6: The file may already exist in /usr/share/yudit/data in this case you just need to add this to /usr/share/yudit/config/yudit.properties If not, you need to convert the source kmap file into binary format: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Then you need to copy My.my to ~/.yudit/data cp My.my ~/.yudit/data Please send me your kmap file (source) to include it in the next distribution. For more info on kmap files, look at /usr/share/yudit/doc/keymap-format.txt The source code of the kmaps came with yudit are in /usr/share/yudit/src/ Note that kmap files can be used as text converters and font maps too. Q7: How can I see messages in my own language? A7: Download the source code and read the README.TXT. It tells you how to do it. Please send me the translations so that I can include them in future versions. Q8: How can I add a TrueType font? A8: Put font-file.ttf and some-other-font-file.ttf into /usr/share/yudit/fonts or ~/.yudit/fonts after that modify /usr/share/yudit/config/yudit.properties adding a new virtual font MyFont yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Now you can use this font in the editor window if you add it to yudit.editor.fonts=...,MyFont,... or the gui if you add it to: yudit.fonts=...,MyFont,... Q9: Will there be a Windows version? A9: Yudit has an abstract windowing toolkit. This makes it possible to port Yudit to, like svgalib for instance, very quickly. I ported it for my wife Yuko in 2001 December. This was the first and last time I touched Windows. Q10: How good of a Unicode editor is Yudit? A10: I tried to implement the Unicode standard wherever it made sense. There are some quirks, please read the /usr/share/yudit/doc/HOWTO-bidi.txt for bidirectional compliance information. Q11: I specified 3 files on the command line and I can see only one now. A11: They are in the history buffer. If you go to the command input area and hit Arrow-Up (or Ctrl-k) or Arrow-Down (or Ctrl-j) you can walk through the file history. Q12: What are the hot-key bindings? A12: You can see most of them - the yellow tooltip shows them underlined. Most of them should work with Ctrl as well as Alt keys. The pluggable editor currently has the following keybindings: Escape - switch between command mode and editing mode Home - go to beginning of line End - go to end of line b - Page Up f - Page Down k - Up n,j - Down h - Left l - Right m - Delete Whole Line x - Delete Selection v - Paste Last Selection If Meta is kept down while moving the caret, the text will be selected. Mouse double click selects a word triple click selects a full line. Q13: How can I read the contents of a binary keymap file? A13: You can make a source dump like this: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: How can I quickly enter a unicode character? A14: Change input to [unicode], enter uxxxx or Uxxxxxxxx where x is a hexadecimal number. Q15: Can Yudit do replace functions? A15: In The command area you need to type replace old-text new-text and hit an enter for each find/replace. Q16: When can I find the handwriting input method? A16: Click on the blue arrow (input method). Assign freehand to one of the F keys. Q17: How can I turn off syntax highlighting? A17: From the command area by typing: 'syntax none'. The available options are printed in error label if you just type 'syntax'. You can set this in the config file too. If you type "howto syntax" in the editor command area a help file is displayed, which describes spell checker support too. Q18: How can I turn off word wrapping? A18: From the command area by typing: 'wordwrap false'. Typing 'wordwrap true' turns on word wrapping. You can set this in the config file too. Appendix ======== 1.1. Keymap Examples The following examples are for some kmaps that came with Yudit. Russian It maps phonetic Russian letters. The not so obvious ones are: yo yields ё , c yields ь, q yields ъ x yields ы ee yields э Hungarian It maps Hungarian and German characters. The accented characters can be input with the English character followed by the accent. Examples: a' becomes á , o: becomes ö , o" becomes ő SS produces the German ß , Ss gives the paragraph sign §. Kana It maps Romaji into Hiragana and Katakana. Small letters are used for Hiragana and capitals are used for Katakana. The not so obvious ones are: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic With this map you can use RFC1345 mnemonics to enter the characters. Some examples: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML maps SGML to unicode. Examples: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul maps Roman transliteration into Hangul characters. The ISO/TC46/SC2/WG4 transliteration is used. You can find out about it more at http://www.hansoft.com/hangul/faq.html Some examples: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/kinput2.protocol.utf80000644000175000017500000006727007532460062015666 0ustar henrichhenrich$Id: protocol.doc,v 1.1 1991/09/27 10:14:10 ishisone Rel $ ** kinput2 プロトコル ** *はじめに kinput2 プロトコルはオリジナルの kinput が使用していたプロトコル (kinput プロトコルと呼ぶ) に対して上位互換性を持つ。 kinput プロトコルでは変換開始のリクエスト時にオプションとしてプロパティ 名を指定できるようになっていた。これは将来の拡張のために用意されたものであ り、プロトコルスペックではここに None を指定するように書かれていたが、将来 はここにあるデータが入ったプロパティ名を指定し、クライアントから変換サーバ に対して変換の属性などを指定することを狙ったものであった。 kinput2 プロトコルではこの拡張データの形式を定義し、かつ kinput プロトコ ルを実装したものと区別がつくよう、プロトコルバージョンを追加した。 拡張データに指定する変換属性は、ここに定義したスタンダードなものに加えて、 プライベートな拡張が可能なように設計されている。 さらに変換途中でも属性の変更を伝えられるようにプロトコルの拡張を行なった。 * 概要 まず、簡単にプロトコルの内容を説明しておくことにする。 変換サーバは立ち上がると、変換サーバと同じディスプレイを共有する他のクラ イアントに対して、変換サービスを提供することを宣言する。これにはセレクショ ンのメカニズムを使用する。つまり、変換サーバは入力言語毎に決められたあるセ レクションのオーナーとなる。一つのディスプレイで同じセレクション名に対して 複数のオーナーは存在できないため、変換サーバは各言語について一つずつしか存 在できない。 変換サーバはセレクションのオーナーとなると同時に、サポートする入力スタイ ルなどの情報をオーナーウィンドウのプロパティに格納する。 ある言語の変換サービスを受けたいクライアントは、まずその言語に対応するセ レクションのオーナーを探す。もしオーナーが見つかれば、まずプロパティをチェッ クし、自分のリクエストしようとしている入力スタイルなどを変換サーバがサポー トしているかをチェックすることができる。その後、オーナーに対して変換入力を リクエストする。これはオーナーのウィンドウに対して ClientMessage イベント を送ることで行なわれる。 このリクエストイベントには、クライアントの希望する入力スタイルや、使用す るフォントなどさまざまな属性が書かれたプロパティ名が含まれている。変換サー バは、このイベントを受けとると同時にそのプロパティの内容を調べて変換の属性 を設定する。変換属性には次のようなものがある。 * 変換テキストの表示開始位置 * 表示フォント * 表示色 その後変換をスタートさせ、同時にクライアントに対して変換サービスを始めた ことを ClientMessage イベントで通知する。 変換はすべて変換サーバ側で行なわれ、クライアントは変換結果が返ってくるの を待つだけである。ただし変換中にフォントが変わったりして変換の属性が変化し た場合には ClientMessage イベントを利用してそれを変換サーバに伝えることが できる。 一つ問題となるのは変換サーバの入力イベントの取得方法である。変換中はクラ イアントにいく入力イベントを変換サーバが横取りしなくてはならない。これには 3 種類の方法があり、クライアントは変換属性としてどれを使用するか指定するこ とができる。 一つは、kinput プロトコルで採用されていた、変換サーバがクライアントのウィ ンドウの上に InputOnly ウィンドウを作り、そのウィンドウで入力イベントを 「盗む」方法である。クライアントにとってはこれが一番処理が楽 (自分では何も しなくてもよい) が、フォーカスの関係で、変換サーバにキーイベントが来ないこ とがある。 次は変換サーバがクライアントのウィンドウ (正確にはフォーカスウィンドウ) で入力イベントをセレクトするという方法である。この場合イベントは変換サーバ とクライアントの両方に送られるので、この方式を選択したクライアントは、変換 中は入力されたイベントを無視しなくてはならない。 3番目は何もしない、という方法で、つまりこれは変換中はクライアントはフォー カスウィンドウに来たキーイベントをすべて変換サーバに SendEvent で送る、と いうことである。 変換サーバは変換された文字列を適宜クライアントに送ることができる。これは クライアントのウィンドウのプロパティに文字列を書き込むことで実現する。 変換が終了すると、変換サーバはクライアントに ClientMessage を送り、知ら せる。クライアントからも変換サーバに対して ClientMessage イベントを送って 変換の終了をリクエストすることができる。この場合も変換サーバは変換が終了し たことをクライアントに知らせる。 * プロトコル詳説 概要に引続きここでは kinput2 プロトコルについて kinput プロトコルと比べ ながら解説していく。 * 変換サーバスタートアップ ** セレクション 変換サーバは、クライアントに対して変換サービスを提供することを示すために セレクションオーナーとなる。これは kinput プロトコルと全く同じだが、セレク ションアトムとしては "_CONVERSION" ではなく、正式に登録されたセ レクション名である "__CONVERSION" (日本語であれば "_JAPANESE_CONVERSION") を使用することにする。ただしバックワードコンパチビ リティのため、オリジナル kinput が使用していたセレクション名を使うことも認 められる。 変換サーバは SetSelectionOwner を利用してセレクションオーナーになる。 SetSelectionOwner selection: "__CONVERSION" owner: 変換サーバのウィンドウID time: timestamp または CurrentTime クライアントは GetSelectionOwner により、変換サーバの存在とウィンドウID を 知ることができる。 GetSelectionOwner selection: "__CONVERSION" => owner: 変換サーバのウィンドウID *** SelectionClear イベントの扱いについて もし変換サーバがセレクションオーナーになった後 SelectionClear イベントを 受けとった時には、現在変換中のクライアントがあればそれらすべてに対して変換 終了の処理、つまり、もしまだクライアントに送っていない変換テキストがあれば 送り、その後変換終了の ClientMessage イベントを送出する、という処理を行な い、その後すみやかに exit する。 ** 変換プロファイル これだけではクライアントは変換サーバが kinput のプロトコルをインプリメン トしたものなのか、それとも kinput2 プロトコルをインプリメントしたものなの かがわからない。また、変換サーバがどのような入力スタイルをサポートしている かもわからない。 そこでセレクションのオーナーウィンドウにそれらの情報が書かれたプロパティ を置くことにする。 ChangeProperty window: セレクションのオーナーウィンドウ property: Atom "_CONVERSION_PROFILE" type: Atom "_CONVERSION_ATTRIBUTE_TYPE" format: 32 mode: Replace data: 後述 これを変換プロファイルと呼ぶことにする。変換プロファイルが存在するかどう かで、クライアントは変換サーバが kinput2 プロトコルをサポートしているのか、 それとも kinput のプロトコルしかサポートしていないのかを知ることができる。 クライアントは GetProperty を使用してこのデータを読み出すことができる。 GetProperty window: セレクションのオーナーウィンドウ property: Atom "_CONVERSION_PROFILE" type: Atom "_CONVERSION_ATTRIBUTE_TYPE" format: 32 delete: False 変換プロファイルのフォーマットが 32 であることからもわかるように、このプロ パティの内容は 32bit 値の配列である。変換プロファイルに含まれる各々の情報 は、情報の種類とデータ長を表す1ワードのヘッダとそれに続くデータ (データは なくてもよい) から構成される。ヘッダの上位 16bit がその情報の種類を表し、 下位 16 bit は続くデータのワード数 (32bit 単位) を表す。 +----------------+----------------+ | Code (16bit) | Length (16bit) | +----------------+----------------+ | Data1 | +---------------------------------+ | ..... | +---------------------------------+ | DataN | +---------------------------------+ 定義されている情報は次の4つである。 + Protocol Version (code = 1, length = 1) 変換サーバが使用しているプロトコルのバージョン名を示す。データには プロトコルのバージョン名そのものではなく、それをアトム化した値が入 る。このドキュメントは "PROTOCOL-2.0" というバージョンについて記述 している。 + Supported Styles (code = 2, length = 1) 変換サーバがサポートしている入力スタイルを示す。定義されている入力 スタイルは次の通りである。 root window style: 1 off-the-spot style: 2 over-the-spot style: 4 データには変換サーバがサポートするスタイルの bitwise-or 値が入る。 + Supported Extensions (code = 3, length = N) 変換サーバがサポートしている拡張を示す。データにはサポートしている 拡張名をアトム化した値が入る。複数の拡張を入れることができる。 + Extension Data (code = 4, length = N) 拡張特有のプロファイルデータを示す。従ってここでデータの内容につい て記述することはできないが、ただ一つ決まっていることはデータの先頭 はその拡張名をアトム化した値でなければならないということだけである。 残りのデータの内容は完全に各拡張の自由であり、ここでは規定しない。 クライアント側の無用の混乱を防ぐため、Protocol Version と Supported Stylesの項目は必ずなければならない。また、Extension Data 以外はプロファイ ルデータの中に同じコードのデータが複数あってはならない。 * 変換のリクエスト 変換のリクエストの方法はオリジナルのプロトコルと同じである。つまり、クラ イアントはまず XGetSelectionOwner() を使用して変換サーバを探す。見つかれば オーナーウィンドウに対して変換開始をリクエストするイベントを送る。 SendEvent destination: セレクションオーナーウィンドウ propergate: False event-mask: NoEventMask event: ClientMessage window: セレクションオーナー type: Atom "CONVERSION_REQUEST" format: 32 data: l[0]: セレクションアトム l[1]: クライアントウィンドウID l[2]: 変換テキストのエンコーディングアトム l[3]: 変換テキスト用プロパティ or None l[4]: プロパティ名か None data.l[0] はセレクションアトムを入れる。data.l[1] はクライアントウィンド ウID である。クライアントウィンドウは変換サーバが各変換セッションを区別す るのに使われる。これは同一のクライアントウィンドウで複数の変換を同時に行な うことができないことを意味する。 data.l[2] には、変換結果文字列のエンコーディングとしてクライアントの希望 するエンコーディングのアトムを入れる。例えば COMPOUND_TEXT である。変換文 字列はプロパティでクライアントに送られるので、このエンコーディングというの は実はそのプロパティのタイプである。ただしこれはあくまでも変換サーバに対す るヒントであって、変換サーバはこれと異なるエンコーディングを使用するかもし れない。ただし、変換サーバは COMPOUND_TEXT エンコーディングだけはサポート しなくてはならない。つまり、もしクライアントが COMPOUND_TEXT エンコーディ ングを希望した場合には、そのエンコーディングで文字列が返されることが保証さ れる。 data.l[3] には変換結果文字列を入れるプロパティ名を指定する。変換結果は data.l[1] で指定したウィンドウの、data.l[3] で指定されるプロパティに送られ る。もしプロパティ名として None を指定した場合、プロパティ名は変換サーバに よって決定される。 kinput プロトコルと異なる点は data.l[4] である。オリジナルではここには None を指定することになっていた。変換サーバは、もしここが None であればク ライアントが kinput プロトコルを使用するものとして扱う。None でなければ、 これは変換属性のはいっているプロパティ名である。これはクライアントウィンド ウ (data.l[1] に指定したもの) のプロパティで、タイプは変換プロファイルと同 じく "_CONVERSION_ATTRIBUTE_TYPE" である。従ってこの変換属性プロパティの構 造も変換プロファイルプロパティと同じで、1 ワードのヘッダとそれに続く 0 ワー ド以上のデータとからなる。変換サーバは GetProperty を用いてこの変換属性を 読み出す。 GetProperty window: クライアントウィンドウ property: "CONVERSION_REQUEST" で指定されたプロパティ type: Atom "_CONVERSION_ATTRIBUTE_TYPE" format: 32 delete: False * 変換属性 変換プロファイルと同じく、変換属性プロパティも各々の情報は、情報の種類と データ長を表す 32bit 1ワードのヘッダとそれに続くデータ(データはなくてもよ い) から構成される。ヘッダの上位 16bit が属性コードを表し、下位 16bit は続 くデータのワード数 (32bit 単位) を表す。 属性コードとして 0 から 65535 までの値が使用できるが、これを次のような 2 つの領域に分ける。 0 - 255: 標準属性コード 256 - 65535: 拡張で使用する属性コード さらに標準属性コードは2つの領域に分けられる。 0 - 127: 変換の途中で値を変えてもよい属性のコード 128 - 255: 変換開始時にしか設定できない属性のコード 定義されている属性を示す。 + No Operation (code = 0, length = N) 何もしない。length は任意なのでプロパティのある部分をスキップさせ るのに便利。 + Indirect Attribute (code = 1, length = 1) 属性の間接指定である。データにはプロパティ名が入っており、そのプロ パティに従って属性を設定する。指定したプロパティはクライアントウィ ンドウのプロパティでなければならない。CONVERSION_ATTRIBUTEイベント (後述) で複数の属性データを設定したい時や、イベントに属性データが 入り切らない時に使用する。 + Focus Window (code = 2, length = 1) フォーカスウィンドウを指定する。データにはフォーカスウィンドウのウィ ンドウID が入る。この属性が指定されなかった時はクライアントウィン ドウがフォーカスウィンドウとなる。 + Spot Location (code = 3, length = 1) スポットロケーションを指定する。ベースラインの開始点で指定する。デー タの上位 16bit が x 座標、下位 16bit が y 座標である。この属性は over-the-spot style の変換の時しか意味を持たない。 + Client Area (code = 4, length = 2) 変換テキスト表示領域を指定する。データは 32bit 2ワードからなり、最 初のワードの上位 16bit / 下位 16bit が領域の左上の x / y 座標、次 のワードの上位 16bit / 下位 16bit が領域の幅と高さを表す。デフォル トはフォーカスウィンドウ全体である。 + Status Area (code = 5, length = 2) ステータス表示領域を指定する。データのフォーマットは前と同じ。 + Colormap (code = 6, length = 1) カラーマップを指定する。データにはカラーマップID が入る。デフォル トはスクリーンのデフォルトカラーマップである。 + Color (code = 7, length = 2) フォアグラウンドとバックグラウンドのピクセル値を指定する。データは 2ワードからなり、最初のワードがフォアグラウンドのピクセル値、次の ワードがバックグラウンドのピクセル値である。指定されなかった場合、 変換サーバは適当な値を使用する。 + Background Pixmap (code = 8, length = 1) バックグラウンドの Pixmap を指定する。データには Pixmap ID が入る。 + Line Spacing (code = 9, length = 1) 行間を指定する。ベースライン間の距離で指定する。指定されなかった場 合、変換サーバは次の使用されるフォントから適当な値を算出して使用す る。 + Font Atoms (code = 10, length = N) 使用するフォントを指定する。データには各フォントの "FONT" プロパティ (これはそのフォントの正式名をアトム化したものになっている) のリス トを指定する。リスト中の順番は任意である。変換サーバは与えられたフォ ントのプロパティからキャラクタセットを調べ、必要なものを利用するか らである。指定されなかった場合、変換サーバは適当なフォントを使用す る。 + Cursor (code = 11, length = 1) カーソルを指定する。データにはカーソル ID が入る。指定されなかった 場合、変換サーバは適当なカーソルを使用する。 以降は変換開始時にしか指定できない属性である。 + Input Style (code = 128, length = 1) 入力方法を指定する。値は root window style: 1 off-the-spot style: 2 over-the-spot style: 4 のどれかでなければならず、変換プロファイルの Supported Styles に入っ ているスタイルでなければならない。この属性が指定されなかった時のデ フォルトは Root Window Style である。 + Event Capture Method (code = 129, length = 1) クライアントウィンドウからのイベントの取得方法を指定する。イベント の取得方法は3種類あり、それぞれデータに指定する値は なにもしない: 0 InputOnly ウィンドウによる方法: 1 フォーカスウィンドウをセレクト: 2 である。デフォルトは InputOnly ウィンドウによる方法である。 + Use Extension (code = 130, length = N) この属性設定で使用される拡張を指定する。ここで指定する拡張はサーバ がサポートしているもの、つまりプロファイルデータ中のSupported Extensions に書かれた拡張でなければならない。また、この設定は使用 する拡張属性コードが属性データ中に現れる前になければならない。 * 変換開始の通知 変換のリクエストを受けた変換サーバは変換属性の読み出しなど必要な処理を行 なった後、クライアントに対して変換開始の通知をするとともに実際の変換作業を 始める。 変換開始の通知は ClientMessage イベントにより行なう。 SendEvent destination: クライアントウィンドウ propergate: False event-mask: NoEventMask event: ClientMessage window: クライアントウィンドウ type: Atom "CONVERSION_NOTIFY" format: 32 data: l[0]: セレクションアトム l[1]: 変換テキストのエンコーディングアトム l[2]: 変換テキスト用プロパティ or None l[3]: 変換ウィンドウID l[4]: unused data.l[1] は変換文字列をクライアントに送る時の文字列のエンコーディングで ある。data.l[2] はその文字列が送られるプロパティであり、 "CONVERSION_REQUEST" でクライアントが指定した場合にはそれがそのまま入り、 None を指定した場合には変換サーバは適当なプロパティを選んでそれを入れる。 もし、なんらかの理由で変換サーバがそのクライアントのための変換サービスを 提供できない場合には data.l[2] には None を入れる。 data.l[3] は実際に変換処理が行なわれるウィンドウID を指定する。これは、 クライアントが自分のところに来たキーイベントを変換サーバに送る時にその送り 先として使用するためのものである。 このイベントを送った時にはすでに変換サーバは属性プロパティの内容を読んで しまっているので、このイベントを受けとったクライアントは変換属性プロパティ を消したり内容を変更したりしてよい。 * 変換属性の変更 変換開始が通知された後、変換が終了するまでの間に変換属性の変化が起こった 場合、クライアントはそれを変換サーバに伝えることができる。 クライアントは変換サーバに ClientMessage イベントを送ることで変換属性の 変化を通知する。 SendEvent destination: セレクションオーナーウィンドウ propergate: False event-mask: NoEventMask event: ClientMessage window: セレクションオーナーウィンドウ type: Atom "CONVERSION_ATTRIBUTE_NOTIFY" format: 32 data: l[0]: セレクションアトム l[1]: クライアントウィンドウID l[2]-l[4]: 属性データ data.l[2] から data.l[4] に変更された属性データを入れる。属性データの形 式は変換属性のプロパティの形式と全く同じである。ただし見ればわかるようにイ ベントに入れられる属性データの大きさは最大3ワードである。従って変更された 属性データがこれより大きいとか、変更された属性データが複数あるとき (この場 合にはこのイベントを複数回送ってもいいのだが) には属性データはプロパティに 入れ、Indirect Attribute の機能を使ってそのプロパティを指定すればよい。 * 変換文字列の送信 確定された変換文字列は、随時変換サーバからクライアントにプロパティを使用 して送られる。 ChangeProperty window: クライアントウィンドウ property: "CONVERSION_NOTIFY" で指定したプロパティ type: "CONVERSION_NOTIFY" で指定したエンコーディング format: エンコーディングによる mode: Append data: 変換文字列 クライアントはあらかじめクライアントウィンドウの PropertyNotify イベント をセレクトしておき、プロパティが変更されたら変換結果を取り出すようにする。 GetProperty window: クライアントウィンドウ property: "CONVERSION_NOTIFY" で指定されたプロパティ type: "CONVERSION_NOTIFY" で指定されたエンコーディング format: エンコーディングによる delete: True * 変換終了の通知 変換サーバは変換が終了するとクライアントに ClientMessage を送ってそれを 通知する。 SendEvent destination: クライアントウィンドウ propergate: False event-mask: NoEventMask event: ClientMessage window: クライアントウィンドウ type: Atom "CONVERSION_END" format: 32 data: l[0]: セレクションアトム l[1]: セレクションオーナーウィンドウID l[2]-l[4]: unused * 変換終了のリクエスト クライアント側から変換サーバに対して変換の終了をリクエストすることもでき る。クライアントは変換サーバに次のような ClientMessage を送る。 SendEvent destination: セレクションオーナーウィンドウ propergate: False event-mask: NoEventMask event: ClientMessage window: セレクションオーナー type: Atom "CONVERSION_END_REQUEST" format: 32 data: l[0]: セレクションアトム l[1]: クライアントウィンドウID l[2]-l[4]: unused 変換サーバはこのイベントを受けとると、まだクライアントに送っていない変換 文字列があればそれを送り、その後 CONVERSION_END の ClientMessage を送る。 * 拡張について 拡張には属性の拡張とプロトコル拡張とがある。属性の拡張は変換属性の追加で あり、プロトコル拡張は変換サーバとクライアントの通信に新たなメッセージを追 加することである。もちろん一つの拡張がこの両方を含んでいてもよい。 どちらのタイプの拡張をするにしてもまずその拡張に名前をつけなくてはならな い。そしてその拡張を実装した変換サーバは変換プロファイルの Supported Extensionsにその拡張名を入れ、クライアントに対してその拡張を実装しているこ とを宣言しなくてはならない。 拡張を使おうとするクライアントはまず変換サーバの変換プロファイルを調べ、 サーバがその拡張をサポートしているか確かめる必要がある。もしサーバがその拡 張をサポートしていなければ、そのサーバに対してその拡張を使ってはならない。 属性の拡張の場合、新たに拡張属性コードを決めなくてはならない。このコード についてはそのコードの範囲が 256 から 65535 でなければならないということを 除き、このプロトコルでは一切規定しない。拡張コードはこの範囲で勝手にコード を決めることができる。この場合、複数の拡張で使うコードが重複することが考え られる。しかしこの事態を避ける手段は一切提供されない。もし二つの拡張で定義 されたコードが重なってしまった場合にはその二つの拡張は同時に使えないだけの ことである。 このような不幸な事態を避けるために、拡張をしたらその拡張名とその拡張の詳 細を発表するのがよいだろうと思われるが、どこにどう発表するかなどの詳細は明 らかにプロトコルで規定すべきものではないのでここには書かない。だいたいこの プロトコルを拡張しようなどというものはほとんどいないであろうが。 ./doc/de/0000755000175000017500000000000011334661334012176 5ustar henrichhenrich./doc/de/FAQ.TXT0000644000175000017500000001644411334661334013217 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Autor: Thomas Wohlfarth Datum: Wittgendorf, den 25.June 2003 F1: Wie kann ich diese Seite wieder sehen? A1: Schreiben Sie 'help' unten in die Kommandozeile und bestätigen Sie mit der Eingabetaste (Return). Auf ähnliche Weise können Sie eine Testseite darstellen: Schreiben Sie einfach 'test' in die Kommandozeile. Schreiben Sie 'howto configure', 'howto japanese' um die HowTo-Seiten (noch englisch) zu erhalten. F2: Wo finde ich die aktuelle Version? A2: Im Internet unter http://www.yudit.org/ F3: Ich habe auf [Speichern] gedrückt - nichts passiert. Warum? A3: Yudit hat eine Kommandozeile. Überprüfen Sie die Richtigkeit und drücken Sie die Eingabetaste. F4: Was bedeutet dieses [Zeilenumbruch] auf der rechten Seite, welches meist "Unix" anzeigt? A4: Die Zeilenendzeichen sind: UNIX='\n' - Unix Zeilenumbruch DOS='\r\n' - DOS Zeilenumbruch MAC='\r' - MAC Zeilenumbruch LS = U+2028 = - Unicode Zeilentrenner PS = U+2029 - Unicode Absatztrenner In Yudit können Sie diese Vermischen - Sie können so Dateien schaffen welche UNIX und DOS Zeilen enthalten, jedoch sollte man dies vermeiden. F5: Wie erhalte ich eine Liste der vorhandenen Kodierungen für die -e Option? A5: Schreiben Sie in ein Konsolenfenster `man uniconv' oder `uniconv -h'. F6: Wie kann ich meine Tastatur-Eingabedatei hinzufügen? A6: Die Datei könnte schon sich schon in /usr/share/yudit/data befinden. In diesem Fall müssen Sie den Dateinamen in /usr/share/yudit/config/yudit.properties hinzufügen. Falls nicht, müssen Sie die Quelle der kmap-Datei in das Binärformat umwandeln: mytool -type kmap -kmap Mein.kmap -rkmap Mein.kmap -write Mein.my Dann kopieren Sie Mein.my nach ~/.yudit/data: cp Mein.my ~/.yudit/data Bitte senden Sie mir Ihre kmap-Datei (Quelle) um Sie in die nächste Version aufzunehmen. Mehr Informationen (bisher englisch) über kmap-Dateien erhalten Sie in /usr/share/yudit/doc/keymap-format.txt lesen (englisch) Beachten Sie, daß kmap-Dateien auch zur Konvertierung von Texten und als Font-Tabellen verwendet werden können. F7: Wie Kann ich Meldungen in meiner Sprache erhalten? A7: Besorgen Sie sich die Quelldateien (source) und lesen Sie README.TXT (englisch). Bitte senden Sie uns Ihre Übersetzungen, damit sie hinzugefügt werden können. F8: Wie kann ich einen TrueType-Font hinzufügen? A8: Setzen Sie eine symbolische Verknüpfung (Link) nach /usr/share/yudit/fonts oder kopieren Sie den Font dorthin. Fügen Sie den Namen der Font-Datei zu "editor.fonts.TrueType" in der Datei /usr/share/yudit/config/yudit.properties oder Ihren ~/.yudit/fonts und ~/.yudit/yudit.properties dazu. F9: Wird es eine Windowsversion geben? A9: Gibt es jetzt :-) Gaspar hat es für seine Frau Yuko auf Windows übertragen. Es soll das erste und das letzte Mal gewesen sein. Aber sicher ist jeder eingeladen, die Windowsversion zu pflegen. F10: Wie gut ist Yudit als Unicode-Editor? A10: Es wurde versucht den Unicode-Standard zu implementieren, wenn es sinvoll erschien. Es gibt einige Besonderheiten, bitte lesen Sie (englisch) /usr/share/yudit/doc/HOWTO-bidi.txt zur Rechts-Links-Unterstützung. Die Unterstützung für zusammengesetzte Zeichen kann leicht hinzugefügt werden (simple/STextData.cpp), aber die Idee finden wir nicht so gut, so werden nur Patches hinzugefügt - falls wir welche erhalten. F11: Ich habe drei Dateien in der Kommandozeile angegeben, jedoch kann ich nur eine sehen. A11: Die Eingabe merkt sich die anderen (history buffer). Wenn Sie in die Kommandozeile wechseln, können Sie mit (oder +k) oder (oder -j) zwischen den Dateien wechseln F12: Welche Tastenkürzel (hot-keys) gibt es? A12: Die meisten können Sie sehen - die gelben Kontexthilfen zeigen sie unterstrichen. Der Editor besitzt augenblicklich folgende Zuordnungen der Kürzel. Esc - schaltet zwischen Schreib- und Kommandomodus um Pos1 - Sprung zur ersten Position im Dokument + b - Seite hoch f - Seite runter k - hoch n,j - runter h - links l - rechts m - ganze Zeile löschen x - Auswahl löschen bzw. aussschneiden v - letzte Auswahl einfügen Wird beim Bewegen des Schreibcursors niedergehalten, wird der Text ausgewählt. Ein Doppelklick mit der Maus wählt das darunter liegende Wort, ein dreifacher Klick die gesamte Zeile. F13: Wie kann ich den Inhalt einer binären Keymap-Datei lesen? A13: Sie können eine Quelldatei folgendermaßen erstellen: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys F14: Wie kann ich schnell ein einzelnes Unicode-Zeichen eingeben? A14: Wechseln Sie die Eingabemethode auf [Unicode], und geben Sie den Code in der Form uxxxx oder Uxxxxxxxx ein - x ist hexadezimal. F15: Wie kann ich ersetzen? A15: In der Kommandozeile geben Sie ein: replace alter_Text neuer_Text drücken Sie für jede gewünschte Stelle. F16: Wie kann ich die Handschrifteingabe finden? A16: Klicken Sie auf das blaue Dreieck (Input oder Eingabe). Weisen Sie "freehand" der gewünschten Funktionstaste (F1...F12) zu F17: Wie kann ich die Hervorhebung der Syntax ausschalten? A17: Indem Sie in der Kommandozeile 'syntax none' eingeben. Die möglichen Optionen werden im Fehlerbereich gezeigt wenn Sie einfach 'syntax' eingeben. Sie können das auch in der Konfigurationsdatei einstellen. F18: Wie kann ich den Wortumbruch ausschalten? A18: Durch Eingeben von 'wordwrap false' in der Kommandozeile. 'wordwrap true' schaltet den Wortumbruch wieder ein. Sei können das auch in der Konfigurationsdatei einstellen. Appendix ======== 1.1. Keymap Beispiele Die nachfolgenden Beispiele zeigen Kmaps die mit Yudit kommen Sehen Sie am Besten in *.kmap Dateien nach, dort sind die Tastatur- eingaben und ihre Entsprechungen aufgelistet. So können Sie auch lernen diese Dateien anzupassen. Russian Damit kann man phonetisches Russisch eingeben. Es gibt auch eine an das Deutsche angepaßte Version (DE-RU)) yo wird ё , c wird ь, q wird ъ x wird ы ee wird э Hungarian setzt in ungarische und deutsche Buchstaben um Examples: a' wird á , o: wird ö , o" wird ő SS wird ß , Ss wird §. Kana setzt Romaji in Hiragana und Katakana um. Kleine Buchstaben sind für Hiragana und große für Katakana. Die nicht so ersichtlichen sind: PP wird 〒 <> wird ◇ <>> wird ◆ [] wird □ []] wird ■ OO wird ● * wird ☆ ** wird ★ ~ wird ・ Oo wird ◎ o+ wird ♀ o- wird ♂ oC wird ℃ Y= wird ¥ Mnemonic Setzt RFC1345 Mnemonics in Zeiechen um. Einige Beispiele: &0u wird ☺ &0U wird ☻ &tel wird ☏ &PI wird ¶ &SU wird ☼ &cHwird wird ♥ &M2=♫ &sn wird ش SGML setzt SGML in Unicode. Beispiele: ♀ wird ♀ ♠ wird ♠, ╞ wird ╞ █ wird █ ░ wird ░ ⅛ wird ⅛ Hangul setzt Lateinische Transliteration in Hangul um. Die ISO/TC46/SC2/WG4 Transliteration wird verwendet. Sie können mehr darüber unter http://www.hansoft.com/hangul/faq.html erfahren Einige Beispiele: ulyanghan wird 우량한 pyohyeon wird 표현 cinseon wird 친선, jageug wird 자극 hwang geum 황금 ./doc/de/FAQ.TXT.in0000644000175000017500000001641011331217507013611 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Autor: Thomas Wohlfarth Datum: Wittgendorf, den 25.June 2003 F1: Wie kann ich diese Seite wieder sehen? A1: Schreiben Sie 'help' unten in die Kommandozeile und bestätigen Sie mit der Eingabetaste (Return). Auf ähnliche Weise können Sie eine Testseite darstellen: Schreiben Sie einfach 'test' in die Kommandozeile. Schreiben Sie 'howto configure', 'howto japanese' um die HowTo-Seiten (noch englisch) zu erhalten. F2: Wo finde ich die aktuelle Version? A2: Im Internet unter http://www.yudit.org/ F3: Ich habe auf [Speichern] gedrückt - nichts passiert. Warum? A3: Yudit hat eine Kommandozeile. Überprüfen Sie die Richtigkeit und drücken Sie die Eingabetaste. F4: Was bedeutet dieses [Zeilenumbruch] auf der rechten Seite, welches meist "Unix" anzeigt? A4: Die Zeilenendzeichen sind: UNIX='\n' - Unix Zeilenumbruch DOS='\r\n' - DOS Zeilenumbruch MAC='\r' - MAC Zeilenumbruch LS = U+2028 = - Unicode Zeilentrenner PS = U+2029 - Unicode Absatztrenner In Yudit können Sie diese Vermischen - Sie können so Dateien schaffen welche UNIX und DOS Zeilen enthalten, jedoch sollte man dies vermeiden. F5: Wie erhalte ich eine Liste der vorhandenen Kodierungen für die -e Option? A5: Schreiben Sie in ein Konsolenfenster `man uniconv' oder `uniconv -h'. F6: Wie kann ich meine Tastatur-Eingabedatei hinzufügen? A6: Die Datei könnte schon sich schon in @YUDIT_DATA@/data befinden. In diesem Fall müssen Sie den Dateinamen in @YUDIT_DATA@/config/yudit.properties hinzufügen. Falls nicht, müssen Sie die Quelle der kmap-Datei in das Binärformat umwandeln: mytool -type kmap -kmap Mein.kmap -rkmap Mein.kmap -write Mein.my Dann kopieren Sie Mein.my nach ~/.yudit/data: cp Mein.my ~/.yudit/data Bitte senden Sie mir Ihre kmap-Datei (Quelle) um Sie in die nächste Version aufzunehmen. Mehr Informationen (bisher englisch) über kmap-Dateien erhalten Sie in @YUDIT_DATA@/doc/keymap-format.txt lesen (englisch) Beachten Sie, daß kmap-Dateien auch zur Konvertierung von Texten und als Font-Tabellen verwendet werden können. F7: Wie Kann ich Meldungen in meiner Sprache erhalten? A7: Besorgen Sie sich die Quelldateien (source) und lesen Sie README.TXT (englisch). Bitte senden Sie uns Ihre Übersetzungen, damit sie hinzugefügt werden können. F8: Wie kann ich einen TrueType-Font hinzufügen? A8: Setzen Sie eine symbolische Verknüpfung (Link) nach @YUDIT_DATA@/fonts oder kopieren Sie den Font dorthin. Fügen Sie den Namen der Font-Datei zu "editor.fonts.TrueType" in der Datei @YUDIT_DATA@/config/yudit.properties oder Ihren ~/.yudit/fonts und ~/.yudit/yudit.properties dazu. F9: Wird es eine Windowsversion geben? A9: Gibt es jetzt :-) Gaspar hat es für seine Frau Yuko auf Windows übertragen. Es soll das erste und das letzte Mal gewesen sein. Aber sicher ist jeder eingeladen, die Windowsversion zu pflegen. F10: Wie gut ist Yudit als Unicode-Editor? A10: Es wurde versucht den Unicode-Standard zu implementieren, wenn es sinvoll erschien. Es gibt einige Besonderheiten, bitte lesen Sie (englisch) @YUDIT_DATA@/doc/HOWTO-bidi.txt zur Rechts-Links-Unterstützung. Die Unterstützung für zusammengesetzte Zeichen kann leicht hinzugefügt werden (simple/STextData.cpp), aber die Idee finden wir nicht so gut, so werden nur Patches hinzugefügt - falls wir welche erhalten. F11: Ich habe drei Dateien in der Kommandozeile angegeben, jedoch kann ich nur eine sehen. A11: Die Eingabe merkt sich die anderen (history buffer). Wenn Sie in die Kommandozeile wechseln, können Sie mit (oder +k) oder (oder -j) zwischen den Dateien wechseln F12: Welche Tastenkürzel (hot-keys) gibt es? A12: Die meisten können Sie sehen - die gelben Kontexthilfen zeigen sie unterstrichen. Der Editor besitzt augenblicklich folgende Zuordnungen der Kürzel. Esc - schaltet zwischen Schreib- und Kommandomodus um Pos1 - Sprung zur ersten Position im Dokument + b - Seite hoch f - Seite runter k - hoch n,j - runter h - links l - rechts m - ganze Zeile löschen x - Auswahl löschen bzw. aussschneiden v - letzte Auswahl einfügen Wird beim Bewegen des Schreibcursors niedergehalten, wird der Text ausgewählt. Ein Doppelklick mit der Maus wählt das darunter liegende Wort, ein dreifacher Klick die gesamte Zeile. F13: Wie kann ich den Inhalt einer binären Keymap-Datei lesen? A13: Sie können eine Quelldatei folgendermaßen erstellen: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys F14: Wie kann ich schnell ein einzelnes Unicode-Zeichen eingeben? A14: Wechseln Sie die Eingabemethode auf [Unicode], und geben Sie den Code in der Form uxxxx oder Uxxxxxxxx ein - x ist hexadezimal. F15: Wie kann ich ersetzen? A15: In der Kommandozeile geben Sie ein: replace alter_Text neuer_Text drücken Sie für jede gewünschte Stelle. F16: Wie kann ich die Handschrifteingabe finden? A16: Klicken Sie auf das blaue Dreieck (Input oder Eingabe). Weisen Sie "freehand" der gewünschten Funktionstaste (F1...F12) zu F17: Wie kann ich die Hervorhebung der Syntax ausschalten? A17: Indem Sie in der Kommandozeile 'syntax none' eingeben. Die möglichen Optionen werden im Fehlerbereich gezeigt wenn Sie einfach 'syntax' eingeben. Sie können das auch in der Konfigurationsdatei einstellen. F18: Wie kann ich den Wortumbruch ausschalten? A18: Durch Eingeben von 'wordwrap false' in der Kommandozeile. 'wordwrap true' schaltet den Wortumbruch wieder ein. Sei können das auch in der Konfigurationsdatei einstellen. Appendix ======== 1.1. Keymap Beispiele Die nachfolgenden Beispiele zeigen Kmaps die mit Yudit kommen Sehen Sie am Besten in *.kmap Dateien nach, dort sind die Tastatur- eingaben und ihre Entsprechungen aufgelistet. So können Sie auch lernen diese Dateien anzupassen. Russian Damit kann man phonetisches Russisch eingeben. Es gibt auch eine an das Deutsche angepaßte Version (DE-RU)) yo wird ё , c wird ь, q wird ъ x wird ы ee wird э Hungarian setzt in ungarische und deutsche Buchstaben um Examples: a' wird á , o: wird ö , o" wird ő SS wird ß , Ss wird §. Kana setzt Romaji in Hiragana und Katakana um. Kleine Buchstaben sind für Hiragana und große für Katakana. Die nicht so ersichtlichen sind: PP wird 〒 <> wird ◇ <>> wird ◆ [] wird □ []] wird ■ OO wird ● * wird ☆ ** wird ★ ~ wird ・ Oo wird ◎ o+ wird ♀ o- wird ♂ oC wird ℃ Y= wird ¥ Mnemonic Setzt RFC1345 Mnemonics in Zeiechen um. Einige Beispiele: &0u wird ☺ &0U wird ☻ &tel wird ☏ &PI wird ¶ &SU wird ☼ &cHwird wird ♥ &M2=♫ &sn wird ش SGML setzt SGML in Unicode. Beispiele: ♀ wird ♀ ♠ wird ♠, ╞ wird ╞ █ wird █ ░ wird ░ ⅛ wird ⅛ Hangul setzt Lateinische Transliteration in Hangul um. Die ISO/TC46/SC2/WG4 Transliteration wird verwendet. Sie können mehr darüber unter http://www.hansoft.com/hangul/faq.html erfahren Einige Beispiele: ulyanghan wird 우량한 pyohyeon wird 표현 cinseon wird 친선, jageug wird 자극 hwang geum 황금 ./doc/yuditwindow.txt0000644000175000017500000001062510434024106014727 0ustar henrichhenrichYudit Design Document ===================== Author: Gáspár Sinai Date: 2001-03-03 Tokyo Modified: 2006-05-21 Tokyo 1 Intoduction ===================================================================== This document describes the basic design of yudit, THE unicode text editor. You may find a lot of things missing, I am adding things to this document in a priority order. 1.1 Global Overview ===================================================================== Yudit source code contains the following library directories: o stoolkit contains the basic toolkit. Yudit uses only c library and it relies solely on this toolkit. You may find the following components most useful: SString - a string Object SVector - a vector for Objects SBinVector - a vector for basic types, integer pointer, e.t.c. SHashtable - a hashtable for Objects SBinhashtable - a hashtable for basic types SEncoder - a text conversion utility SEvent - platform independent event handling STimer - a timer SIO - io classes: files, directories, pipes SIOStream - io interaction class, streams, readers and writers. o swindow contains the platform independent gui library You may find the following components most useful: SCanvas - a drawing interface to draw lines, cubic splines, native fonts, images. SGEngine - a drawing engine to implement splines for platforms where splices are not supported. SAwt - the asbtract widget toolkit. Every platform should extend this. SWindow - the abstract window, implements SCanvas. Every platform should extend this. SFontNative - a native font. Postscript fonts are rendered with the drawing interface; native fonts are renderes by the platform dependent window. Every platform should extend this, if native fonts are supported. SColor - a basic color object with alpha transparency SPen - a pen that has a color and some with. SPrinter - a canvas, that renders on a printer, a SPostscript printer for instance. o swidget contains high level widgets that rely on the abstract window. You may find the following components most useful: SComponent - a basic component with no window and no layout. SPanel - a component that has window and layout SFrame - a top level SPanel SDialog - a top level SFrame that is modal and has a parent SPanel. SLabel - a label to draw text and icons STextEdit - a text editor SListBox - a list SButton - a button STextTable - a multi-column list SIconFactory - a factory that loads icons SFileDialog - a file selection box. STextDialog - a dialog to display messages, ask questions o tests This directory is normally not compiled. It has drawing tests like Speed.cpp - rendering speed measurement utility. You need to set swidget/STextView.cpp: #define DEBUG_SPEED 0 should be redefined 1 to make speed measurements with ./speed speed.txt Yuko.cpp - a simple spline-draw test. Test.cpp - any current test 2 True Type Font Drawing ===================================================================== 1. When drawing a glyph in a font, font creates a cache name using the glyph, actual font, fontsize (not implemented: rotation parameter, penwidth), well basically everything minus the translation component in the matrix. 2. font tries to write itself on a canvas object using newpath(x, y, cachename). 3. If newpath returns true, the rendered image is cached so nothing but fill(pen) is called where pen contains additional parameters like linewidth + fore and back colors. 4. If newpath returns false, the canvas drawing functions are called to actually draw the glyph. Then fill(pen) is called. This may cache the object in canvas unless the cache name is "". The actual drawing functions I implemented in yudit are postscript drawing functions, as you can see in swindow/SCanvas.h. - swindow/SPrinter (this is a canvas too!) uses these using SPostscript as a printer. (It does almost nothing but translates the drawing functions to strings). In case of printer I draw the same text twice, once to cache all glyphs, second to use cache to do the actual printout. - swindow/sx11/SX11Window (this is a canvas too, and it is pluggable because it is SWindow) uses the swindow/SGEngine as a helper to make these drawing functions available in X11. If X11 starts to support some of these functions (like transparency, splines etc.) then SGEngine would not be needed at all. ./doc/yi/0000755000175000017500000000000011334661334012227 5ustar henrichhenrich./doc/yi/FAQ.TXT0000644000175000017500000001703411334661334013244 0ustar henrichhenrichיוניקאָד װאָרטירער "יודיט" FAQ ‏=========================== װערסיע: 2.9.2 מחבר: גאַספּאַר סינײַ טאָג: טאָקיאָ, 2006-05-21 איבערגעזעצט: רפֿאל פֿינקל פֿ'1: װי אַזױ קען איך נאָכאַמאָל זען די-אָ FAQ? ע'1: שרײַב help אין באַפֿעל־אָרט. איר קענט ענלעך באַקומען אַ פּרוּװ-זײַטל מיט אַרײַנשרײַבן test אין באַפֿעל־אָרט. מען קען אַרײַנשרײַבן howto japanese און howto configure צו באַקומען די אינסטרוקציע זײַטן. פֿ'2: פֿון װאַנען קען איך באַקומען דערהײַנטיקונגען? ע'2: פֿון .http://www.yudit.org/ פֿ'3: איך האָב געדריקט אױף save קנעפּל, אָבער גאָרניט פּאַסירט. פֿאַרװאָס? ע'3: יודיט פֿאַרמאָגט אַ באַפֿעל-שורה (אונטן). מסתּמא דאַרפֿט איר נאָר דריקן די קלאַװיש enter. פֿ'4: װאָס באַדײַט דאָס קנעפּל Line break אױבן אױף רעכטס, װאָס װײַזט געװײנטלעך Unix? ע'4: צום סוף פֿון אַ שורה זײַנען כּלערלײ קאָדן אין פֿאַרשידענע אָפּעריר-סיסטעמען. יודיט לאָזט איר זאָלט קענען אַרײַנמישן פֿאַרשידענע פֿאָרמען אין אײן טעקע, כאָטש ס'איז ניט קײן גוטע עצה. אָט זײַנען די קאָדן: UNIX='\n' DOS='\r\n' MAC='\r' LS = U+2028 יוניקאָד שורה ענדונג PS = U+2029 יוניקאָד פּאַראַגראַף ענדונג פֿ'5: װי קען איך זען אַ רשימה פֿון אַרײַנשרײַב קאָדן (-e ברירות)? ע'5: שרײַב man uniconv אָדער uniconv -h אין אַ "שעל" (באַפֿעל) פֿענצטער. פֿ'6: װי קען איך צולײגן מײַן קלאַװיאַטור אַרײַנשרײַב טעקע? ע'6: קען זײַן אַז יענע טעקע געפֿינט זיך שױן אין /usr/share/yudit/data אױב אַזױ, דאַרפֿט איר איבערװאַנדלען די kmap טעקע אין אַ my טעקע: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my דערנאָך דאַרפֿט איר איבערציען ~/.yudit/data צום אָרט My.my אַזױ: cp My.my ~/.yudit/data זײַט אַזױ גוט און שיקט מיר אײַער kmap טעקע איך זאָל קענען אַרײַנשטעלן אין קומענדיקער אױסגאַבע. נאָך פּרטים װעגן kmap טעקעס קען מען זען אין /usr/share/yudit/doc/keymap-format.txt די קװאַל-פֿאָרעם פֿון יענע kmapען װאָס קומען מיט יודיט זײַנען אין /usr/share/yudit/src/. פֿ'8: װי קען איך צושטעלן אַ TrueType שריפֿט? ע'8: אָדער לײג אַרײַן אַ צובינד (symbolic link) אָדער די שריפֿט אַלײן אין /usr/share/yudit/fonts און לײג צו דער שורה editor.fonts.TrueType אין /usr/share/yudit/config/yudit.properties. פֿ'9: צי װעט אַרױס אַמאָל אַ מיקראָסאָפֿט-פֿענצטער װערסיע? ע'9: יודיט ניצט אַן אַבסטראַקטן פֿענצטער פּראָגראַמװאַרג. אַזױ איז מעגלעך איבערצוברענגען יודיט אין פֿאַרשידענע קאָנטעקסטן, װי, למשל, svgalib. איך האָב אַלײן איבערגעפֿירט צוליב מײַן פֿרױ יוקאָ אין דעצעמבער, 2001; דאָס איז געװען מײַן ערשט און לעצט מאָל אָנצוטאַפּן מיקראָסאָפֿט פֿענצטער. 10פֿ': װי גוט איז יודיט װי אַ יוניקאָד װאָרטירער? 10ע': איך האָב זיך געמיט פֿאָלגן דעם יוניקאָד סטאַנדאַרט װען נאָר מעגלעך. עס זײַנען אָבער דאָ פּישטשעװקעס װאָס מען קען זען אין /usr/share/yudit/doc/HOWTO-bidi.txt בפֿרט בנוגע צװײקאַנטישקײַט. 11פֿ': איך האָב געשריבן דרײַ טעקעס אין דעם באַפֿעל-שורה, אָבער בלױז אײנע לאָזט זיך װײַזן. 11ע': זײ געפֿינען זיך נאָך אין געשיכטע רשימה. אין באַפֿעל-אָרט, אָדער איר קענט אַרײַנקלאַפּן "פֿײַל אַרױף" (Ctrl-k) אָדער "פֿײַל אַראָפּ" (Ctrl-j) אַדורכצובלעטערן די טעקע געשיכטע. 12פֿ': װאָס זײַנען די הײס־קלאַװישן? 12ע': דו קענסט זען דאָס רובֿ. דאָס געלע מכשיר פּינטל װײַזט זײ אונטערגעשטראָכן. דאָס רובֿ פֿון זײ גײען אי מיט איבערשטעל־קלאַװיש און אי מיט אַלט'־קלאַװיש. דער אַרײַנשטעך־גרײט װאָרטירער האָט דערװײַל די דאָזיקע טײַטשן: Esc: פֿאַרקער צװישן באַפֿעל און װאָרטיר מאָדע. Home: צו אָנהײב שורה End: צו סוף שורה b: אַרױף מיט אײן זײַט f: אַראָפּ מיט אײן זײַט k: אַרױף מיט אײן שורה n: אַראָפּ מיט אײן שורה h: לינקס l: רעכטס m: מעק אָפּ גאַנצע שורה x: מעק אָפּ אױסגעקליבענע טעקסט v: קלעפּ צו פֿריִערדיקן אױסקלײַב אױב מען דריקט meta בשעת מען פֿאַררוקט דעם אָרט־װײַזער, װעט מען אױסקלײַבן טעקסט. אַ טאָפּל־שנאָל מיט דעם מײַזל קלײַבט אױס אַ װאָרט; דרײַפֿאַכיק־שנאָל קלײַבט אױס אַ שורה. 13פֿ': װי קען איך לײענען די אינהאַלט פֿון אַ בינאַרישער קלאַװיש-דעפֿיניציע (keymap) טעקע? 13ע': מען קען אַרױסברענגען אַזױ: mytool -my /usr/share/yudit/data/GreekBible.my -convert mys -write GreekBible.mys 14פֿ': װי קען איך גיך אַרײַנקלאַפּן אַ יוניקאָד אות? 14ע': בײַט די אַרײַנשרײַב פֿאָרעם צו יוניקאָד, קלאַפּ אַרײַן uxxxx אָדער Uxxxxxxxx װוּ x איז אַ נומער אין העקסידעצימיש. 15פֿ': װי קען איך איבערבײַטן טעקסט? 15ע': אין באַפֿעל-אָרט שרײַבט אַזױ: replace old-text new-text 16פֿ': װוּ קען איך געפֿינען די האַנטשריפֿט־אַרײַנשטעל אופֿן? 16ע': גיב אַ שנאָל אױף דער בלױער פֿײַל (אַרײַנשטעל אופֿן). בינד האַנטשריפֿט צו יענע פֿון די פֿונקציע קלאַװישן. 17פֿ': װי קען איך אױסלעשן סינטאַקס־פֿאַרשטאַרק? 17ע': אין באַפֿעל־שטח טיפּיר אַרײַן syntax none. די פּאַסיקע ברירות װײַזן זיך אין טעות־שטח אױב דו װעסט נאָר אַרײַנטיפּירן syntax. אַזױ קען מען אױך באַשטעטיקן אין צופּאַס־טעקע. 18פֿ': װי קען איך אױסלעשן װאָרט־שאַר? 18ע': אין באַפֿעל־שטח טיפּיר אַרײַן wordwrap false. מען קען אָנצינדן אױפֿסנײַ מיט wordwrap true. אַזױ קען מען אױך באַשטעטיקן אין צופּאַס־טעקע. ./doc/yi/FAQ.TXT.in0000644000175000017500000001700011331217566013643 0ustar henrichhenrichיוניקאָד װאָרטירער "יודיט" FAQ ‏=========================== װערסיע: 2.9.2 מחבר: גאַספּאַר סינײַ טאָג: טאָקיאָ, 2006-05-21 איבערגעזעצט: רפֿאל פֿינקל פֿ'1: װי אַזױ קען איך נאָכאַמאָל זען די-אָ FAQ? ע'1: שרײַב help אין באַפֿעל־אָרט. איר קענט ענלעך באַקומען אַ פּרוּװ-זײַטל מיט אַרײַנשרײַבן test אין באַפֿעל־אָרט. מען קען אַרײַנשרײַבן howto japanese און howto configure צו באַקומען די אינסטרוקציע זײַטן. פֿ'2: פֿון װאַנען קען איך באַקומען דערהײַנטיקונגען? ע'2: פֿון .http://www.yudit.org/ פֿ'3: איך האָב געדריקט אױף save קנעפּל, אָבער גאָרניט פּאַסירט. פֿאַרװאָס? ע'3: יודיט פֿאַרמאָגט אַ באַפֿעל-שורה (אונטן). מסתּמא דאַרפֿט איר נאָר דריקן די קלאַװיש enter. פֿ'4: װאָס באַדײַט דאָס קנעפּל Line break אױבן אױף רעכטס, װאָס װײַזט געװײנטלעך Unix? ע'4: צום סוף פֿון אַ שורה זײַנען כּלערלײ קאָדן אין פֿאַרשידענע אָפּעריר-סיסטעמען. יודיט לאָזט איר זאָלט קענען אַרײַנמישן פֿאַרשידענע פֿאָרמען אין אײן טעקע, כאָטש ס'איז ניט קײן גוטע עצה. אָט זײַנען די קאָדן: UNIX='\n' DOS='\r\n' MAC='\r' LS = U+2028 יוניקאָד שורה ענדונג PS = U+2029 יוניקאָד פּאַראַגראַף ענדונג פֿ'5: װי קען איך זען אַ רשימה פֿון אַרײַנשרײַב קאָדן (-e ברירות)? ע'5: שרײַב man uniconv אָדער uniconv -h אין אַ "שעל" (באַפֿעל) פֿענצטער. פֿ'6: װי קען איך צולײגן מײַן קלאַװיאַטור אַרײַנשרײַב טעקע? ע'6: קען זײַן אַז יענע טעקע געפֿינט זיך שױן אין @YUDIT_DATA@/data אױב אַזױ, דאַרפֿט איר איבערװאַנדלען די kmap טעקע אין אַ my טעקע: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my דערנאָך דאַרפֿט איר איבערציען ~/.yudit/data צום אָרט My.my אַזױ: cp My.my ~/.yudit/data זײַט אַזױ גוט און שיקט מיר אײַער kmap טעקע איך זאָל קענען אַרײַנשטעלן אין קומענדיקער אױסגאַבע. נאָך פּרטים װעגן kmap טעקעס קען מען זען אין @YUDIT_DATA@/doc/keymap-format.txt די קװאַל-פֿאָרעם פֿון יענע kmapען װאָס קומען מיט יודיט זײַנען אין @YUDIT_DATA@/src/. פֿ'8: װי קען איך צושטעלן אַ TrueType שריפֿט? ע'8: אָדער לײג אַרײַן אַ צובינד (symbolic link) אָדער די שריפֿט אַלײן אין @YUDIT_DATA@/fonts און לײג צו דער שורה editor.fonts.TrueType אין @YUDIT_DATA@/config/yudit.properties. פֿ'9: צי װעט אַרױס אַמאָל אַ מיקראָסאָפֿט-פֿענצטער װערסיע? ע'9: יודיט ניצט אַן אַבסטראַקטן פֿענצטער פּראָגראַמװאַרג. אַזױ איז מעגלעך איבערצוברענגען יודיט אין פֿאַרשידענע קאָנטעקסטן, װי, למשל, svgalib. איך האָב אַלײן איבערגעפֿירט צוליב מײַן פֿרױ יוקאָ אין דעצעמבער, 2001; דאָס איז געװען מײַן ערשט און לעצט מאָל אָנצוטאַפּן מיקראָסאָפֿט פֿענצטער. 10פֿ': װי גוט איז יודיט װי אַ יוניקאָד װאָרטירער? 10ע': איך האָב זיך געמיט פֿאָלגן דעם יוניקאָד סטאַנדאַרט װען נאָר מעגלעך. עס זײַנען אָבער דאָ פּישטשעװקעס װאָס מען קען זען אין @YUDIT_DATA@/doc/HOWTO-bidi.txt בפֿרט בנוגע צװײקאַנטישקײַט. 11פֿ': איך האָב געשריבן דרײַ טעקעס אין דעם באַפֿעל-שורה, אָבער בלױז אײנע לאָזט זיך װײַזן. 11ע': זײ געפֿינען זיך נאָך אין געשיכטע רשימה. אין באַפֿעל-אָרט, אָדער איר קענט אַרײַנקלאַפּן "פֿײַל אַרױף" (Ctrl-k) אָדער "פֿײַל אַראָפּ" (Ctrl-j) אַדורכצובלעטערן די טעקע געשיכטע. 12פֿ': װאָס זײַנען די הײס־קלאַװישן? 12ע': דו קענסט זען דאָס רובֿ. דאָס געלע מכשיר פּינטל װײַזט זײ אונטערגעשטראָכן. דאָס רובֿ פֿון זײ גײען אי מיט איבערשטעל־קלאַװיש און אי מיט אַלט'־קלאַװיש. דער אַרײַנשטעך־גרײט װאָרטירער האָט דערװײַל די דאָזיקע טײַטשן: Esc: פֿאַרקער צװישן באַפֿעל און װאָרטיר מאָדע. Home: צו אָנהײב שורה End: צו סוף שורה b: אַרױף מיט אײן זײַט f: אַראָפּ מיט אײן זײַט k: אַרױף מיט אײן שורה n: אַראָפּ מיט אײן שורה h: לינקס l: רעכטס m: מעק אָפּ גאַנצע שורה x: מעק אָפּ אױסגעקליבענע טעקסט v: קלעפּ צו פֿריִערדיקן אױסקלײַב אױב מען דריקט meta בשעת מען פֿאַררוקט דעם אָרט־װײַזער, װעט מען אױסקלײַבן טעקסט. אַ טאָפּל־שנאָל מיט דעם מײַזל קלײַבט אױס אַ װאָרט; דרײַפֿאַכיק־שנאָל קלײַבט אױס אַ שורה. 13פֿ': װי קען איך לײענען די אינהאַלט פֿון אַ בינאַרישער קלאַװיש-דעפֿיניציע (keymap) טעקע? 13ע': מען קען אַרױסברענגען אַזױ: mytool -my @YUDIT_DATA@/data/GreekBible.my -convert mys -write GreekBible.mys 14פֿ': װי קען איך גיך אַרײַנקלאַפּן אַ יוניקאָד אות? 14ע': בײַט די אַרײַנשרײַב פֿאָרעם צו יוניקאָד, קלאַפּ אַרײַן uxxxx אָדער Uxxxxxxxx װוּ x איז אַ נומער אין העקסידעצימיש. 15פֿ': װי קען איך איבערבײַטן טעקסט? 15ע': אין באַפֿעל-אָרט שרײַבט אַזױ: replace old-text new-text 16פֿ': װוּ קען איך געפֿינען די האַנטשריפֿט־אַרײַנשטעל אופֿן? 16ע': גיב אַ שנאָל אױף דער בלױער פֿײַל (אַרײַנשטעל אופֿן). בינד האַנטשריפֿט צו יענע פֿון די פֿונקציע קלאַװישן. 17פֿ': װי קען איך אױסלעשן סינטאַקס־פֿאַרשטאַרק? 17ע': אין באַפֿעל־שטח טיפּיר אַרײַן syntax none. די פּאַסיקע ברירות װײַזן זיך אין טעות־שטח אױב דו װעסט נאָר אַרײַנטיפּירן syntax. אַזױ קען מען אױך באַשטעטיקן אין צופּאַס־טעקע. 18פֿ': װי קען איך אױסלעשן װאָרט־שאַר? 18ע': אין באַפֿעל־שטח טיפּיר אַרײַן wordwrap false. מען קען אָנצינדן אױפֿסנײַ מיט wordwrap true. אַזױ קען מען אױך באַשטעטיקן אין צופּאַס־טעקע. ./doc/my-format.txt0000644000175000017500000001015107532460062014260 0ustar henrichhenrich# # Gaspar Sinai Tokyo 1999-12-03 # Binary Map Formats Sn = n long 8 bit unsigned char string U1 = 8 bit unsigned integer U2 = 16 bit unsigned integer network orderccessing: LOW = INPUT%256 HIGH = INPUT/256 returning 0 means no mappping. It also means that 0 can not be mapped to or from. so is if (LOW < LOW_MIN || LOW > LOW_MAX || HIGH < HIGH_MIN || HIGH > HIGH_MAX) U4 = 32 bit unsigned integer network order I4 = 32 bit signed integer network order ARRAY16 = 16 bit unsigned integer network order compressed array The size of the array: (LOW_MAX - LOW_MIN + 1) * (HIGH_MAX = HIGH_MIN+1) Where: LOW_MIN = min (code[n]%256) LOW_MAX = max (code[n]%256) HIGH_MIN = min (code[n]/256) HIGH_MAX = max (code[n]/256) Accessing: LOW = INPUT%256 HIGH = INPUT/256 returning 0 means no mappping. It also means that 0 can not be mapped to or from. so is if (LOW < LOW_MIN || LOW > LOW_MAX || HIGH < HIGH_MIN || HIGH > HIGH_MAX) if there is mapping it can be ARRAY[(HIGH - HIGH_MIN) * (LOW_MAX - LOW_MIN+1) + (LOW-LOW_MIN)] 1 to 1 bmap =========== This umap allows 1 to 1 mapping and reverse mapping of unsigned shorts. S16: "YUDIT-UMAP 1.0" S32: "alias name" U2: SOFFSET start of data offset from beginning of file # # FREE AREA till SOFFSET # # Bounds of Local Code Array that maps to Unicode # Start of data SOFFSET U2: decode HIGH_MIN U2: decode HIGH_MAX U2: decode LOW_MIN U2: decode LOW_MAX # Bounds of Unicode Array that maps to Local Code U2: encode HIGH_MIN U2: encode HIGH_MAX U2: encode LOW_MIN U2: encode LOW_MAX ARRAY16: decode ARRAY16: encode <---end---> n to n bmap =========== This maps max 255 byte long string to a max 256 byte string. S16: "YUDIT-NtoN 1.0" S32: "alias name" U4 COMMENT_SIZE U1 COMMENT[COMMENT_SIZE] U4: MAP_TYPE - 0. undefined 1. kmap 2. fontmap 3. clustered kmap U4: MAP_SIZE - the number of maps in this coder U4: OFFSET[0] - the offsets pointing to CODE_AREAs ... note that we have one more... U4: OFFSET[MAP_SIZE] - the offsets pointing to END # # Start of CODE AREA. array rererences start here. # S32: "alias name" U4 COMMENT_SIZE U1 COMMENT[COMMENT_SIZE] U1 DECODE - bit 0 is 0 if decode, 1 if encode (reverse = from unicode) map U1 INPUT_BYTE_SIZE - This many bytes supposed to form an input word (hint) U1 OUTPUT_BYTE_SIZE- This many bytes supposed to form an output word (hint) U1 INPUT_BYTE_LENGTH - The size of the length indicator in data. 0,1,2 or 3 U1 OUTPUT_BYTE_LENGTH - The size of the length indicator in data 0,1,2 or 3 0=8bit, 1=16bit, 2=32bit, 3=64bit U4 STATE_MACHINE - Index to state machine if zero there is no state machine. State machine should come after code area. U4 SPARE - UNUSED. 0. U4 CODE_SIZE - The size of the struct map. U4 CODE_MAP[0] - points to the first element starting from DATA_AREA .. note that we have 1 more element in this array!!! U4 CODE_MAP[CODE_SIZE] - points to the end of last element # # DATA_AREA array references start here. # unpadded struct { Ui KEY_SIZE Ui SUB_SIZE # The size of elements macthed. U1 [KEY_SIZE] KEY Uo RESULT_SIZE U1 [RESULT_SIZE] RESULT U1 COMMENT SIZE # A max 255 byte comment. U1 [COMMENT_SIZE] COMMENT } [CODE_SIZE] # # State Machine (optional) # The integers point to next state inside this state machine. # If -1, reject. # Currently ther is no implementation for this yet. # STATE_MACHINE this can be added here or collectively at the end of # this file. U4[32] size - state machine size in 64 byte words. (states) U4[16] state0 U4[16] state1 [..] * Each state contains a nibble. (FB -> F one state, B another state.) * Each state is has an index of 30 bit integers pointing to next state or the matched value. * They can point to matched value. by having the upper 2 bits value: REJECT: 0 - points to nowhere MORE: 1 - points to STATE_MACHINE MATCH: 3 - points to CODE_MAP * The match more is not used. # # FREE AREA till OFFSET[1] # ./doc/bidi/0000755000175000017500000000000010724001346012506 5ustar henrichhenrich./doc/bidi/surprise.html0000644000175000017500000002373507572561502015276 0ustar henrichhenrich Unicode Bidirectional Surprise Effects

        Unicode Bidirectional Surprise Effects



        This page is Unicode utf-8 encoded. In case your browser did not detect this, you may need to manually set the encoding. Please refer to the manual of your browser.

        Unicode Text Editors with a full bidirectional support must behave as if they implemented the official Unicode Bidirectional Algorithm. This algorithm is a convoluted process where, in several pass, the logically ordered Unicode text is scanned, and finally reordered into illogical visual order.

        This documents describes the unexpected effects of Unicode Bidirectional Algorithm UAX#9 If you browser does not have a bug-free and full support for bidirectional characters, you might not see what I want to show you. You might need to get a compliant browser.

        I have no affiliation with Unicode Consortium. Never had, never will.

        The Problem Of Not Having Arabic RLM

        Unicode Standard Annex #9 requires:

        W2: search backward from each instance of a European number until the first strong type (R, L, AL, or sor) is found. If an AL is found, change the type of the European number to Arabic number.

        Probably nobody was thinking that sor can never be AL at the beginning of the line?

        X10: The remaining rules are applied to each run of characters at the same level. For each run, determine the start-of-level-run (sor) and end-of-level-run (eor) type, either L or R. This depends on the higher of the two levels on either side of the boundary (at the start or end of the paragraph, the level of the “other” run is the base embedding level). If the higher level is odd, the type is R, otherwise it is L.

        I think this is ridiculous. In Arabic context you will get:
        Logical Visual
        -10% TEST ARABIC TSET CIBARA -10%
        ARABIC -10% TEST TSET %10- CIBARA

        So what is the solution? The standard says that Higher-Level Protocols can:

        Override the number handling to use information provided by a broader context. For example, information from other paragraphs in a document could be used to conclude that the document was fundamentally Arabic, and that EN should generally be converted to AN.

        In Yudit I decided not to do this hack. The reason is this:

        When text using a higher-level protocol is to be converted to Unicode plain text, formatting codes should be inserted to ensure that the order matches that of the higher-level protocol...
        What a hack...

        The Problem Of Characters That Have Global Effects

        What are these characters?
        Segment Separator Its effect is well defined, but surprising.
        Boundary Neutral The location is not defined it can pop up at any place.

        So let’s see what we get for at least the one, that is defined: Segment Separator - like Tab. I tried to use RLE in my translation, so that I can see what I will see in this Label as a label Text:
        msgstr "‫سلام Gáspár محمد‬"
        For this html document I have to write it this way:
          msgstr "‫سلام Gáspár	محمد‬"
        
        As you see, I can not protect the text. If you set Yudit Editor’s Document Text Alignment to the right, you will see what the label will show. Something totally different.

        Unfortunately the Unicode Algorithm requires me to. UAX #9 L1:

        On each line, reset the embedding level of the following characters to the paragraph embedding level:
        1. Segment Separators.


        Well this means that regardless of having this tab embedded in our text I have to reset it to this English document’s embedding level. If you use gettext, please use '\t' instead of Tab.

        The Problem Of Having Only One Set Of + - / * . % Characters

        You might find it surprising, that programs conforming to Unicode Standard Annex #9 I must render the following text segments as you see. I just substituted HEBREW with ‫עברית‬ and ARABIC with ‫العربية‬. and I also inserted a Right to Left embedding mark so that you see what is going on):

        Surprise #1:
        Input : HEBREW ~~~23%%% HEBREW abc
        Output : ‫עברית ~~~23%%% עברית abc‬
        Input : ARABIC ~~~23%%% ARABIC abc
        Output : ‫العربية ~~~23%%% العربية abc‬

        Surprise #2:
        Input: HEBREW 1*5 1-5 1/5 1+5
        Output: ‫עברית 1*5 1-5 1/5 1+5‬
        Input: ARABIC 1*5 1-5 1/5 1+5
        Output: ‫العربية 1*5 1-5 1/5 1+5‬

        I have checked this with java reference code from Unicode Consortium


        http://www.unicode.org/unicode/reports/tr9/BidiReferenceJava/

        so what you see here in Yudit is correct. Did you expect this? I feel like there is a fundamental flaw in the official Unicode Bidirectional algorithm that can not be solved unless there are separate character pairs for

        + - / * %

        Without that all you can do is embed your mathematical equations with explicit direction overrides. And don’t use tab because that can not be embedded. And don’t use Boundary Neutrals. What else? Did I miss something?

        The Problem Of Ir-reversibility

        The Unicode Bidirectional Algorithm is irreversible. In other words, the logical text can be reordered into visual order, but there is no way to guess what the logically ordered text is, just by looking at the visual text.

        This is a serious problem for digital signatures. If you want to sign a document, what you sign is the bit-stream, but what you see is the text. As there is no algorithm provided you can not possibly imagine, what you sign if you are just looking at the text.

        The Problem Of Stateful Encoding

        Unicode always made a laugh at other stateful encodings like iso-2022-x. In fact the stateliness they introduced with the explicit bidirectional marks is even worse, and it would make binary editing of Unicode Text files with proper undo operation next to impossible.

        Remarks

        I tested Yudit and found that it is, probably, 100% Compliant to the full Unicode Bidirectional UAX #9 algorithm. I can not prove that because of it is not possible to test that properly (the Unicode algorithm is inherently un-testable). However

        I do not think that that UAX #9 algorithm is good.

        Moreover, I think that that algorithm should be replaced with one that makes more sense. My clean-room implementation of the implicit algorithm mostly lies in


        stoolkit/SBiDi.h
        stoolkit/SBiDi.cpp,

        You can use it in your GNU programs. If Unicode Consortium ever change their mind it would be very easy to replace that file.

        So how much is:
        Input: HEBREW 10-2*5
        Output: ‫עברי 10-2*5‬
        If you don’t see: hebrew2x5.gif here it means your browser does not have full bidirectional support, or it is buggy. This means that you saw these pages all wrong. You should download Yudit and type “howto bidi” in the command area of the editor.
        Input: ARABIC 10-2*5
        Output: ‫العربية 10-2*5‬
        If you don’t see: arabic2x5.gif here it means your browser does not have full bidirectional support, or it is buggy. This means that you saw these pages all wrong.You should download Yudit and type “howto bidi” in the command area of the editor.

        It is your choice. They both have 0 values, literally.

        [Back] [User Guide] [Story] [Yudit]

        Gaspar Sinai
        Last updated: 2002-11-21

        MadeWithYudit.png

        ./doc/bidi/userguide.html0000644000175000017500000002544007572561502015411 0ustar henrichhenrich Editing Bidirectional Documents With Yudit

        Editing Bidirectional Documents With Yudit



        This page is Unicode utf-8 encoded. In case your browser did not detect this, you may need to manually set the encoding. Please refer to the manual of your browser.

        From version 2.7 Yudit should show bidirectional text just as any other Unicode application that implement Unicode Bidirectional Algorithm UAX#9

        Paragraphs with initial directionality LR, like English text will be aligned to the left while texts with RL initial directionality will be aligned to the right.

        As Unicode Standard allows higher level protocols to impose a Document Embedding, Yudit can enforce an LR or RL embedding on the whole document if the user sets it with the text embedding button. This will force left or right alignment on the whole text.

        What is implicit bidirectional behavior?

        All characters in a Unicode belong to one of the many bidirectional classes. Depending on these character properties all characters in the documents must be reordered into a visual order dictated by a rather convoluted algorithm in UAX#9. Under implicit bidirectional behavior I mean the behavior that purely relies on the characters bidirectional class property.

        How to invoke implicit bidi?

        You don’t need to do anything, just type:
        He said “سلام!‏”

        Please note that I cheated here: I added a RLM (Right Left Mark) U+200F at the end. I wanted to make the text more digestible in this English document. This mark is visible in the editor window but it will not appear when printing, or, when used in labels.

        What is explicit embedding and override?

        In addition to the inherent bidirectional properties of the characters, Unicode allows text between certain markers to render Left to Right or believe that the embedding context is Left or Right.

        These markers can be nested. The PDF (POP directional format) marker restores the last embedding state.

        1. Directional Override

          RLO (Right to Left Override)Embedded TextPDF (Pop Directional Format)
          LRO (Left to Right Override)Embedded TextPDF (Pop Directional Format)


          This encloses a text with an LR or RL explicit directionality, regardless of their bidirectional property. However, this directional property is (unfortunately) not used when the initial directionality is determined, so your text might not be aligned as you expect.

          According to UAX#9 P2:
          In each paragraph, find the first character of type L, AL, or R. Because paragraph separators delimit text in this algorithm, this will generally be the first strong character after a paragraph separator or at the very beginning of the text. Note that the characters of type LRE, LRO, RLE, RLO are ignored in this rule. This is because typically they are used to indicate that the embedded text is the opposite direction than the paragraph level

        2. Directional Embedding

          RLE (Right to Left Embedding)Embedded TextPDF (Pop Directional Format)
          LRE (Left to Right Embedding)Embedded TextPDF (Pop Directional Format)


          This encloses an embedded text. Embeddings supposed to give some protection for the embedding context. The text in the embedding is (in most cases) rendered as if the initial, embedding of the text would be RL or LR. Please note that there are some characters that make this mission impossible: in fact it is not really possible to make use of RLE or LRE if you use those characters. (Should they be forbidden? Read on).

        In Yudit you do not need to care about LRE,RLE,RLO,LRO,PDF markers, they are totally hidden. Your embedded text will have a brighter or darker background, this way you can tell the embedding range.

        Unicode allows for 3 levels of support for bidirectional algorithm:

        1. No bidirectional formatting. This implies that the system does not visually interpret characters from right-to-left scripts.

        2. Implicit bi-directionality. The implicit bidirectional algorithm and the directional marks RLM and LRM are supported.

        3. Full bi-directionality. The implicit bidirectional algorithm, the implicit directional marks, and the explicit directional embedding codes are supported: RLM, LRM, LRE, RLE, LRO, RLO, PDF.

        Yudit has now full bidirectional support (3).

        How to do explicit direction override?

        To override implicit directionality of characters press Override Direction <Ctrl><D> to change direction. Then simply continue typing. You can get out of this by the cursor <Ctrl><Y> (Yield Direction) button. You can clearly distinguish the embedded text.
        I said “‮NO WAY!‬”.

        How to do simple explicit embedding?

        Similarly embedding a Right-Left text in a Left-Right document needs <Ctrl><E> (Embedding Override). This is good, for instance if you want to say:
        He said: “‫سلام!‬
        Without the Right-to-Left embedding this would look pretty bad in this English document:
        He said “سلام!”

        I already have a text that I need to embed/un-embed. How to do that?

        Before embedding/un-embedding select the text. Selection can be made for instance with <Alt> arrow keys. After selection with the keys keep pressing <Alt> and press <D> for Direction Override or <Alt><E> for Embedding Override. You can bring back the text to no embedding level with <Alt><Y> (Yield Embedding).

        What is document text embedding?

        Yudit can enforce an initial embedding level to the whole document. When Yudit is started the initial embedding is reset to none. The text is also saved without initial embedding enforcement tags. When no initial embedding is enforced, your text can show up aligned to the left or to the right, depending on the natural paragraph embedding level.

        I want to embed LR text but my embedding arrow is RL

        The direction of the embedding arrows on the tool-bar always point to the opposite direction of the current embedding; the context where the cursor is. This is to make the operation faster and make less errors. It is usually not desired to embed a text in an LR document as LR. However, you can do this with this trick: If you want to embed LR text in the document with LR embedding change the Document Text Embedding to the RL. Now you can make the LR embedding.

        Important Notes

        In po file translations you might want to consider embedding your RL text with explicit RLO so that you will see what you will get on that label: Without explicit embedding:
        msgstr "سلام Gáspár, محمد"
        With explicit embedding, you will see what the label will eventually show:
        msgstr "‫سلام Gáspár, محمد‬"
        Please note that most applications do not support explicit embedding, so deal with them sparingly. Moreover, explicit embedding does not save you from the effects of Unicode Bidirectional algorithm. You have this text:
        msgstr "‫سلام Gáspár محمد‬"
        I put the whole thing into RL embedding marks, because I want to see them this way, in my RL text label. It works. But what if I replace the leftmost space with a tab?
        msgstr "‫سلام Gáspár محمد‬"
        For this html document I have to use the pre tag to see it:
             msgstr "‫سلام Gáspár	محمد‬"
        
        Now try to put this in a label. (Try pressing the Document Text Embedding button in Yudit for the same effect). Now you see what you will see in that label. Well, to tell the truth nothing saves you from these effects of Unicode Bidirectional algorithm. If you want to see why this happens please read Surprise Effects on this server.

        Fortunately, if you use gettext you will be able to use '\t' character for TAB. So when translating po file please always use '\t', like this:
        msgstr "‫سلام Gáspár\tمحمد‬"
        But in short: do not use segment separators in your po translation text as is. In case of a non-computer, non-gettext text you are on your own.

        Comparing With Other Applications

        I tried to compare Yudit bidi to other applications but, the applications had problems even with this simple text:
        Hello ‫العربية 14محمد‬ ‮RLTXT‬ nothing
        I may try it again at a later time.

        Links

        [Back] [Surprise] [Story] [Yudit]

        Gaspar Sinai
        Last updated: 2002-11-20

        MadeWithYudit.png

        ./doc/bidi/template.html0000644000175000017500000000215607572561502015227 0ustar henrichhenrich Title

        Yudit Bidirectional Information

        This page will contain someting. sometime
        [HOME] [Reference]

        Last updated: 2002-11-20

        MadeWithYudit.png

        ./doc/bidi/index.html0000644000175000017500000000372607572561500014525 0ustar henrichhenrich Yudit Bidirectional Information

        Yudit Bidirectional Information



        This page is Unicode utf-8 encoded. In case your browser did not detect this, you may need to manually set the encoding. Please refer to the manual of your browser.

        I have no affiliation with Unicode Consortium. Never had, never will.

        Local Documents




        [Yudit Home]

        Gaspar Sinai
        Last updated: 2002-11-21

        MadeWithYudit.png

        ./doc/bidi/images/0000755000175000017500000000000010724001346013753 5ustar henrichhenrich./doc/bidi/images/hebrew2x5.gif0000644000175000017500000000277207567100720016274 0ustar henrichhenrichGIF87ar ((((((008h88t8@`@HHHHTHXTH``@hh8pt80((( pa2 ^m@@@X\[ @@fXQ+@'d`@@ܨr`a[ ^Y(@7Xj@8` 0c$`ЛK(͌bXB`( ח@K` c@%f`b@h!rH"`p@`!h@46fr\X&'`@@,rH*\ȰÅ"JHŋ3jȱ#ECIǁ&S\Y$˗0cJtQ&-X3cO;'fGD ** i (C"v@ 7!-lZ^BÆ. @z@D !.t@ *&@42h<@Bh֬!!@L ZhCla. L 9X=AXQ_ D4 F;@^Za O `| AE 20-s XE#:QB IahK[DTA bvsP@V p\DFUAq6FePJ]@ $PV8~4FX-s!L(Q!h %@͗VDNJx'Q#fiEB  D5&ja刁" p~t6gFb%Fot1ZQf'b8є1w+J<A(GDqxbDfvjE kFB؟0DL9Z[]1(oYy !-0GF 7bjbdJ9NXf7I\^(a% \bk`LYw-OAD4ɈG$+QjyDT *xSESZ3NL7NG-L(MmP_5Lu`P@;./doc/bidi/images/MadeWithYudit.png0000644000175000017500000001246507566606332017232 0ustar henrichhenrichPNG  IHDR0ZVgAMA abKGD pHYs  #utIME9%MvIDATxkl׵3s^9~ 6ܐ$4$RsVIi[@jZ0jJR) PzC  m9{x<{K3gϞ=kfgZ{K.__l߾M6ݗnt]8z! K"dp'dMn y;w.d҅嫏?i/ 3cҥB!ˍd2⥗M6@-4t합kvfs=gUm۶䡪*. gw$I}Cw |rDR:rA[fJNDCq\M"X]O:xxH_ zM]*@uEǢt߸Aɜ9,\P(DOOTœ8A:>U&^vyXe)PWjHUQSmJ^j M: {JeI%^L+ 4!mHpIm믿'Lx4 UU4 7oA9׏St"~#d_ YF+6W&vSPGjIkvKxr+t/s)k?adll߾!rrr|T/_FQUP EQ|x)nگ~2 Auq.G( czHg_|OEnZ eaHI;H\v͌ii&v~˅22<̅3g̯`Ag?&^xa=7oO#H$߾Wϖ-[$~&ΒuOy٘ݖoCsIGfCjP9`ٿ2(**b޽|/*999B0?%~xmL~_!?>54ug~:!S0fFVù$$;mZ hM C]e?[xobZvg|>^Z Y|r3fϙM,W_]"_?1C$F.XCrvd[c*%2%D$Q2)Xn0| zR'Dw}ѣG̶Ga˖egϞ> PRRBNG!HLa̺4MCT2y%͈1γ>CO=}`w$N)v:PMG].B44ͅj;^ V9ƴ7Mb1˜(<쳬]ɐfր_bE<*,^8tqN=郱1vY'sc0 dijƴt]gh`˗. gg'DEQ`CT,3_FS !ڈIA"MSٺu LM =Mh#sǔﱜ# Nu#NOroƴ;ʡCꦠUUx,iNOբET̝1 сϗCss3/^n0Guu5Fgҥ|i f;ya!4iFN%jq atݘ>7vYʬJ{@W" ei54yUUUTp444D>Á%54 wP\\LNN.]ٳSPo VUUI(2I)3L1,'L7y m&6bF@bZK/(rt2J8GEE!"0XbfϙŝA{zqK,!  0{lz{{fڵ_1d---455*+V,7] 9rVg߾} |A oleuv߁)1Q9˰_0bלSY_΂ (((dy bFI 999x<@*.FUZZ[g޼̜9|֬YC=p8rRSt Ś5kz;wlڴuquS1;HLCcV8 #Nphjf2hlK첍L^mh:j D:S9麎7WN@_x&***EQQf :P.s044#@MM eee\rӧOSQQ(躎/^J & 콖|cH[ى+m] &Slזls ( UA^^~.̯Ƶv<89{zQRB?~`0HQQEEE7hqva!k֬Al?xpc?Su(3~6MLuluƬ șӱLvѝFa BVTPUSߎp1GOW|V?K>χc޼yx^S wn+ \|'N7鱗^]l4yKCL,s7\.>]dY󄜮n۟r (޽Mnn.@ǂ*^L~Q}^J$Eo}YfcɗGAAP7oL<~?;î]'czzz ̞=͛ߐf3&g2evYm>p{=fכ yIΜ`c}5` rX'k>~ӟ,p0%_ s7Xqg?#FQ),,p8BAOOgΜѣ|cǎىnjjjX|9>( Vǖ-[~:X MsL&y뭟~ltDi"eZW4,ǭCՋ,gm8{mVYYaBFhomexh x<,I,yBFFFFOA<&~mzzzD"hƜ9sxGx5,]0@^**댌PSSFWTϟ?g!9Lhכu0NC5 +iˉ#1:p?̈C˖ƕ&.66F]VFow7HMUy䡇hinfAeI۷fn޼J׸ի駿Ί+(.BiTUFT`-]n:>c]'1fPNNͤ98ZתUvM v)xWF Q￟qC̜5G\VXõ,yA|}gϞc33gTU,m L'"f# 4A&t%dVXVX:@3o޼FPK2$??Ek̎dƙgyꩧx77 O>ɯ~+s}tT&Fiw) DDh1[LD&ڋFY%ɴr@$ \.n;~^3g2A[[tQQG)s3UVUӛ|x y| {vyyEyQcd0517_jI@m6NM@@]` ^D Fv)hTGjh AZhPF ei%AF+^bF!QKDA`$8YbF!HMZ8b%QQ`vrmmI@4_d]'y5F!!FiXG{iL0zwfG h'AI=h A Little Unicode Story

        A Little Unicode Story


        Ihis is a short story that happened to me when I was developing my free Unicode text editor program Yudit. This is a plain recording of events, this report as much unbiased as it can be.

        The story contains just a little technical knowledge but even people without that knowledge will understand it.

        The Beginning

        In 2001 November I published this article. to utf8-linux mailing list. I was looking for testers to test a newly introduced feature, shaping support. Shaping support is needed to render texts, like Arabic and Syriac. In parallel to shaping changes I also allocated some time and ported Yudit to Windows.

        The Windows Port

        Windows port itself was not very difficult, because Yudit does all the work internally, including keyboard mapping and font rendering. What took some time is getting around weird limitations.

        For instance Windows refused to copy the glyph image rendered by Yudit. I had no intentions to use the font rendering engine the comes with Windows so I decided to track down the problem. I found out Windows 98 silently refuses to create more than about 500 bitmap images, to the screen, an it does it without any error message. As some scripts, like Chinese and Japanese need more than 500 glyphs I made a workaround: instead of creating a bitmap for each glyph I just create one, really big bitmap, and use different areas of that big map.This worked and the Windows version was born. Without this workaround you can not render your own glyphs.

        The Mysteriously Disappearing riched20.dll

        One day we could not compose any emails on that computer in Outlook Express. I found out that riched20.dll, which does text rendering, was missing. A quick look at google’s Usenet archive revealed that this is a common problem

        "Subject: Re: riched.dll missing - me too!"

        So this dll does indeed disappear mysteriously on Windows. They suggest to get the latest version of this dll on such an occasion. This was not the last time I had to deal with this dll.

        The Official Unicode Mailing List

        In 2002, February I wanted to start a discussion on the official Unicode mailing list about what I believe are serious security problems in Unicode:

        Off the list, I immediately received a direct reply from Unicode Consortium that this is already in the archives and there are no security problems with Unicode as "security experts" already examined it.

        One of the things I wanted to figure out how to solve a problem of irreversible algorithms introduced by Unicode Bidirectional Algorithm UAX#9

        Why do I feel irreversibly is a problem?

        The Unicode Bidirectional Algorithm is irreversible. In other words, the logical text can be reordered into visual order, but there is no way to guess what the logically ordered text is, just by looking at the visual text.

        This is a serious problem for digital signatures. If you want to sign a document, what you sign is the bit-stream, but what you see is the text. As there is no algorithm provided you can not possibly imagine, what you sign if you are just looking at the text.

        I showed the first example. This text could represent a problem for translators of Unix getmessage .po files where Arabic text is embedded in English text.

        http://www.yudit.org/security/

        Without RLE,PDF marks the text will be rendered in different order in the GUI than what you see in the po file. An explicit embedding mark is needed to avoid ambiguity (but sometimes as in TAB even an explicit mark wont help).

        Creating the screen-shot in the second example on the second example on that page leads us to another story.

        The riched20.dll Is In Trouble Again

        I sent an email to my colleague. I was slightly hindered because my company just had a nimda virus attack. It was the first (and hopefully the last) time that this company was successfully attacked by a virus. I admit first I thought it came through Unicode mailing list like this:

        unicode#10564 or unicode#10559

        Fortunately on my Linux box it was trapped in my pine mailer causing no harm. The sender was a guy who after he asked some questions on the list.

        I have to apologize for having thought so. As it turned out it did NOT come from the mailing list. Someone accidentally picked it up from the web with Internet Explorer.

        It took almost a week to get rid of the virus. Our system administrator distributed a paper listing all the steps. One of the steps was replacing riched20.dll. You can check this out.

        Back To Unicode Mailing List

        During this turmoil my colleague received my test email, so I could send my second example to the official Unicode mailing list.

        The second example shows how the same ordering difference appears in certain applications that override the document embedding. Overriding document embedding is allowed by the Unicode Standard.

        After the second example I received several very clear messages from the list indicating that I am unwanted on the official Unicode Mailing List:

        unicode#10746 or unicode#10751

        I am not on the list any more. Still, I will continue to improve Yudit. Yudit now has Full Bidirectional Support. For better or worse.

        You can find the documents related to this story, locally at: http://www.yudit.org/bidi/reference/

        This page will probably never exist: http://www.unicode.org/security/

        [Back] [User Guide] [Surprise] [Yudit]

        Gaspar Sinai
        Last updated: 2002-11-21

        MadeWithYudit.png

        ./doc/bidi/reference/0000755000175000017500000000000010724001346014444 5ustar henrichhenrich./doc/bidi/reference/unicode10694.txt0000644000175000017500000001075507567067204017267 0ustar henrichhenrichFrom gsinai@yudit.org Sun Feb 3 13:51:32 2002 +0900 Status: X-Status: X-Keywords: Received: by macska.yudit.org id g134pVA12138; Sun, 3 Feb 2002 13:51:31 +0900 Delivered-To: yuditorg-gsinai@yudit.org Received: from mail.yudit.org [206.245.164.55] by localhost with POP3 (fetchmail-5.7.4) for gsinai@localhost (single-drop); Sun, 03 Feb 2002 13:51:31 +0900 (JST) Received: (qmail 32128 invoked from network); 3 Feb 2002 03:44:58 -0000 Received: from unicode.org (209.235.17.55) by mailserv2.iuinc.com with SMTP; 3 Feb 2002 03:44:58 -0000 Received: from sarasvati.unicode.org (localhost.localdomain [127.0.0.1]) by unicode.org (8.9.3/8.9.3) with ESMTP id UAA08878; Sat, 2 Feb 2002 20:22:20 -0500 Received: with LISTAR (v1.0.0; list unicode); Sat, 02 Feb 2002 20:22:20 -0500 (EST) Received: from mailserv2.iuinc.com (mailserv2.iuinc.com [206.245.164.55]) by unicode.org (8.9.3/8.9.3) with SMTP id UAA08872 for ; Sat, 2 Feb 2002 20:22:20 -0500 Received: (qmail 4080 invoked from network); 3 Feb 2002 02:41:14 -0000 Received: from 27.pool0.ipctokyo.att.ne.jp (HELO macska.yudit.org) (165.76.244.27) by mailserv2.iuinc.com with SMTP; 3 Feb 2002 02:41:14 -0000 Received: by macska.yudit.org id g132fBA11996; Sun, 3 Feb 2002 11:41:11 +0900 Date: Sun, 3 Feb 2002 11:41:11 +0900 (JST) From: Gaspar Sinai To: Unicode List Subject: Unicode and Security Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-archive-position: 1370 X-listar-version: Listar v1.0.0 Sender: unicode-bounce@unicode.org Errors-to: unicode-bounce@unicode.org X-original-sender: gsinai@yudit.org Precedence: bulk List-help: List-unsubscribe: List-software: Listar version 1.0.0 X-List-ID: X-list: unicode Unicode and Security I would like to start a series of discussion about the security aspects of Unicode. I would also like to know your opinion about the need to create another or an 'intermediate' standard. I have a lot of issues in my mind - Security is the top one. With the introduction of digital signatures security will became a very important part of the character encoding. Is Unicode secure? What character standards can be considered secure? I had the following problems where unicode could not be used because of security issues. In all cases the signer of a document can be lured into believing that the wording of the document he/she is about to sign is different. How can it be? I had the following problems: 1. Character Order Problem The BIDI algorithm is too complex and not reversible. I could create a BIDI document where only RLO LRO and PDF characters were used, and the WORD, JAVA and KDE produced different word ordering. I don't have access to MS platform now to reproduce this but as far as I can tell it was like: text1U+0020text2 Because the BIDI algorithm is too complex and vague it can be said that these programs all displayed the text correctly, still differently. text1 text2 text2 text1 2. Character Shape Problem I had different character shapes, because: a) Ligatures In complex scripts, in Devanagari for instance the ZERO WITH JOINER should be used to prevent ligature forming and normally join the characters. Whether ligature forming will actually happen or not is completely up to the font. If the font does have the ligature, it will be formed. The standard does not define all the compulsory ligatures. I was even thinking about putting ZERO WITH JOINER after each character. But why we have ZERO WITH JOINER at all? I think a ZERO WITH LIGATURE FORMER would be better. In this case at least I would know that a ligature may appear at that point. b) Hidden Marks It is possible to make a combining mark, like a negation mark appear in the base characters body making it invisible. It is nearly impossible to test the rendering engine for all possible combinations. 3. Text Search Problem It is possible to create texts that look the same, but the can not be searched because even when fully decomposed and ordered they will be different. I am sure this is not a full list, but these are the things that concern me most at the moment. Thank you for you attention Gaspar ./doc/bidi/reference/riched20.dll.txt0000644000175000017500000000421407567067204017400 0ustar henrichhenrichFrom: "Sue Mosher" References: <196b01c1434a$31a23740$9be62ecf@tkmsftngxa03> <29dc01c1445e$beaabe40$3bef2ecf@TKMSFTNGXA10> Subject: Re: riched.dll missing - me too! Date: Sun, 23 Sep 2001 16:20:26 -0400 Lines: 42 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Message-ID: Newsgroups: microsoft.public.outlook.installation NNTP-Posting-Host: 63.215.138.76 Try this procedure: 1. If you have a copy of Riched20.dll on your computer, locate and rename this file to Riched20.old, otherwise go to step 2. 2. In Windows Explorer, open the Msi folder on your Office 2000 CD. 3. If you are using Microsoft Windows 95 or Microsoft Windows 98, double-click Instmsi.exe. If you are using Microsoft Windows NT 4.0 or Microsoft Windows 2000, double-click Instmsiw.exe. 4. Click OK to the alert advising you the Windows Installer installed successfully. 5. Run Setup for Office : Setup ran in maintenance mode : running detect and repair: Completed successfully -- Sue Mosher, Outlook MVP Author of Teach Yourself Microsoft Outlook 2000 Programming in 24 Hours Microsoft Outlook 2000 E-mail and Fax Guide Outlook and Exchange solutions at http://www.slipstick.com "Joyce C." wrote in message news:29dc01c1445e$beaabe40$3bef2ecf@TKMSFTNGXA10... > I was wondering if you had found a solution to this yet. > > We are also having trouble using MS Word - get the > message "insufficient memory." Both apps starting > misbehaving at the same time. We tried re-installing > Outlook, but it doesn't help. > > >-----Original Message----- > >MS Outlook from Office 97 running perfectly under Win 98 > >till today. Now it will display all email but when trying > >to open any new or old email, error message pops out > >reading a "riched20.dll" is missing. > >Any info where to get it or how to re-install MS Outlook ? > >Able to receive open and read email with Outlook Express > >at majka@powersurfr.com > >. > > ./doc/bidi/reference/unicodevirus.txt0000644000175000017500000000453007567067204017746 0ustar henrichhenrichFrom unicode-bounce@unicode.org Tue Jan 29 12:23:08 2002 Received: by suse id g0T3N8I11277; Tue, 29 Jan 2002 12:23:08 +0900 Delivered-To: yuditorg-gsinai@yudit.org Received: from mail.yudit.org [206.245.164.55] by localhost with POP3 (fetchmail-5.9.6) for gsinai@localhost (single-drop); Tue, 29 Jan 2002 12:23:08 +0900 (JST) Received: (qmail 29013 invoked from network); 29 Jan 2002 03:02:27 -0000 Received: from unicode.org (209.235.17.55) by mailserv2.iuinc.com with SMTP; 29 Jan 2002 03:02:27 -0000 Received: from sarasvati.unicode.org (localhost.localdomain [127.0.0.1]) by unicode.org (8.9.3/8.9.3) with ESMTP id TAA00890; Mon, 28 Jan 2002 19:58:31 -0500 Received: with LISTAR (v1.0.0; list unicode); Mon, 28 Jan 2002 19:58:30 -0500 (EST) Received: from mail.broadpark.no (217-13-4-9.dd.nextgentel.com [217.13.4.9]) by unicode.org (8.9.3/8.9.3) with ESMTP id TAA00883 for ; Mon, 28 Jan 2002 19:58:29 -0500 Received: from hdm2t6h1qt7 (213-145-181-45.dd.nextgentel.com [213.145.181.45]) by mail.broadpark.no (Postfix) with ESMTP id 909DF7DE5; Tue, 29 Jan 2002 03:16:41 +0100 (MET) From: "Audun H. Lona" To: "'Polykarpos Karamaounas'" , Subject: SV: new photos from my party! Date: Tue, 29 Jan 2002 03:17:10 +0100 Message-ID: <000901c1a86b$0ec5dde0$0200000a@hdm2t6h1qt7> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook, Build 10.0.3416 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 In-Reply-To: <200201281600.SAA12032@ismene.ics.forth.gr> Importance: Normal Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by unicode.org id TAA00883 X-archive-position: 1257 X-listar-version: Listar v1.0.0 Sender: unicode-bounce@unicode.org Errors-to: unicode-bounce@unicode.org X-original-sender: alona@c2i.net Precedence: bulk List-help: List-unsubscribe: List-software: Listar version 1.0.0 X-List-ID: X-list: unicode Status: RO X-Status: X-Keywords: X-UID: 2 I think Polykapros has got the latest virus, that evrybody is talking about...perhaps a anti-virus programme would help.... Best regards Audun Lona ./doc/bidi/reference/utf8-linux00153.txt0000644000175000017500000000471707567067204017652 0ustar henrichhenrich ------------------------------------------------------------------------ [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Yudit + Arabic (Betas) ------------------------------------------------------------------------ * To: linux-utf8@nl.linux.org * Subject: Yudit + Arabic (Betas) * From: Gaspar Sinai * Date: Wed, 28 Nov 2001 11:03:49 +0900 (JST) * cc: i18n@XFree86.Org, Thomas Wohlfarth * List-archive: * List-help: * List-owner: * List-post: * List-software: Listar version 1.0.0 * List-subscribe: * List-unsubscribe: * Original-Recipient: rfc822;linux-utf8-archive@nl.linux.org * Reply-to: linux-utf8@nl.linux.org * Sender: linux-utf8-bounce@nl.linux.org ------------------------------------------------------------------------ Hi folks, Yudit betas are available for download for beta testers. As I have very little time, please write me only short emails if you find some problems. New feature: =========== * shaping (Arabic) support. Please bang on it. I consider it pretty much finished. Don't test it on Win32 yet - swindow/swin32/SWin32.cpp is not yet totally finished. Download: ======== http://www.yudit.org/download.html Latest beta at this point is: http://www.yudit.org/download/yudit-2.5.beta1.tar.gz Please read doc/HOWTO-arabic.txt. If you want to rewrite that document or write other translations please notify me. You can get that document after installation by typing howto arabic in command line area. Timeline: ======== Version 2.5 is planned to be releasd in December or January. Thank you, Gaspar -- Linux-UTF8: i18n of Linux on all levels Archive: http://mail.nl.linux.org/linux-utf8/ ------------------------------------------------------------------------ * Follow-Ups: o Re: Yudit + Arabic (Betas) + From: Karl Koehler * Prev by Date: Re: "Universal Locales for Linux" and ICU Locales * Next by Date: Re: getting locale's charset from a script * Prev by thread: Re: "Universal Locales for Linux" and ICU Locales * Next by thread: Re: Yudit + Arabic (Betas) * Index(es): o Date o Thread ./doc/bidi/reference/nimda02.txt0000644000175000017500000000302407567067204016456 0ustar henrichhenrichFrom: Terry Halligan Newsgroups: comp.bugs.misc Subject: W.32 Nimda.A@mm virus Date: Sun, 14 Apr 2002 15:10:23 +0100 Message-ID: NNTP-Posting-Host: tagh.demon.co.uk X-NNTP-Posting-Host: tagh.demon.co.uk:158.152.48.225 X-Trace: news.demon.co.uk 1018793560 nnrp-12:5530 NO-IDENT tagh.demon.co.uk:158.152.48.225 X-Complaints-To: abuse@demon.net MIME-Version: 1.0 X-Newsreader: Turnpike Integrated Version 5.01 U Lines: 24 I seem to have acquired this worm. I was first aware of it when I found I was getting an error message when I tried to open Word 2000. I was repeatedly told I was out of memory and then got "Internal error 2889." I went onto the Norton website and downloaded a removal tool which I opened to remove the worm manifestation. However, the notes warn that my operating system, Windows ME has a file Riched20.dll which I need to locate and remove or rename and then reinstall from my Windows ME CD- ROM. I've updated my Explorer to v6 which includes some security not in the earlier version I used. The Symantec notes on removal of the corrupt Riched20.dll file give an example of the command to be used in Dos if Windows 98 were used: extract /a d:\win98\win98_28.cab riched20.dll /\\\\l c:\windows\system However, although alternative command are given for Windows 95,NT and 2000, Windows ME alternative command details are not given and I'm not sure what to do. Does anyone have any experience of this problem? -- Terry Halligan ./doc/bidi/reference/unicode10746.txt0000644000175000017500000000625307567067204017263 0ustar henrichhenrichFrom michka@trigeminal.com Tue Feb 5 14:27:54 2002 Received: by suse.blue-edge-tech.com id g155RsI16226; Tue, 5 Feb 2002 14:27:54 +0900 Delivered-To: yuditorg-gsinai@yudit.org Received: from mail.yudit.org [206.245.164.55] by localhost with POP3 (fetchmail-5.9.6) for gsinai@localhost (single-drop); Tue, 05 Feb 2002 14:27:54 +0900 (JST) Received: (qmail 12060 invoked from network); 5 Feb 2002 05:00:32 -0000 Received: from smarthost.microsoft.com (HELO smarthost.redmond.corp.microsoft.com) (131.107.3.106) by mailserv2.iuinc.com with SMTP; 5 Feb 2002 05:00:32 -0000 Received: from vmichka3 ([172.30.84.61]) by smarthost.redmond.corp.microsoft.com with Microsoft SMTPSVC(5.0.2195.2966); Mon, 4 Feb 2002 21:00:18 -0800 Message-ID: <004801c1ae02$095fb780$13a52640@redmond.corp.microsoft.com> From: "Michael \(michka\) Kaplan" To: "Gaspar Sinai" Cc: "Unicode List" References: Subject: Re: Unicode and Security Date: Mon, 4 Feb 2002 21:00:30 -0800 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 5 X-MSMail-Priority: Low X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 X-OriginalArrivalTime: 05 Feb 2002 05:00:19.0012 (UTC) FILETIME=[0204C840:01C1AE02] Status: RO X-Status: X-Keywords: From: "Gaspar Sinai" > If the standard wants me to confuse the user, I would > rather dump the standard than comply. Well, don't let the door hit you in the a** on the way out? Te users will be less confused than you realize -- only people who walk in with agendas see the flaws you claim. > Talking about characters: I think bi-di should not be in > Unicode Standard because it is not a character. > It is an algorithm. And it is documented as such. Clearly what you want of Unicode does not match what it actually is -- when my wife and I realized such about each other, she became my ex-wife. Since that is your goal here, I guess your "divorce" from Unicode should not be a surprise? > Thank you for mentioning Yudit - I don't need > advertisement, there are enough users. Perhaps some will leave if you are honest about your "divorce" though -- you might be surprised how many people follow the standard? > I also start think this thread is a waste of time. > This thread won't solve the our problem. The only issue though is that we do not have a problem, here? > I feel sorry for interrupting in the "Let's praise and > celebrate Unicode" mood of this mailing list. Sorry, thats not the mood of the list. But in order to have a healthy respect for the people who give sound and reasonable arguments, we must show a matching lack of respect for those who give specious arguments. > I updated: > http://www.yudit.org/security/ > I wanted to remove it after solving the problem, but > it seems that this page will stay. The problem is solved, though. The real problem at this point can be found at http://www.yudit.org/gaspar/ though. MichKa Michael Kaplan Trigeminal Software, Inc. -- http://www.trigeminal.com/ ./doc/bidi/reference/unicode10751.txt0000644000175000017500000001003207567067204017245 0ustar henrichhenrichFrom unicode-bounce@unicode.org Wed Feb 6 09:12:34 2002 Received: by suse.blue-edge-tech.com id g160CYI18960; Wed, 6 Feb 2002 09:12:34 +0900 Delivered-To: yuditorg-gsinai@yudit.org Received: from mail.yudit.org [206.245.164.55] by localhost with POP3 (fetchmail-5.9.6) for gsinai@localhost (single-drop); Wed, 06 Feb 2002 09:12:34 +0900 (JST) Received: (qmail 26986 invoked from network); 5 Feb 2002 10:49:55 -0000 Received: from unicode.org (209.235.17.55) by mailserv2.iuinc.com with SMTP; 5 Feb 2002 10:49:55 -0000 Received: from sarasvati.unicode.org (localhost.localdomain [127.0.0.1]) by unicode.org (8.9.3/8.9.3) with ESMTP id DAA02827; Tue, 5 Feb 2002 03:35:25 -0500 Received: with LISTAR (v1.0.0; list unicode); Tue, 05 Feb 2002 03:35:25 -0500 (EST) Received: from relay03.esat.net (relay03.esat.net [192.111.39.46]) by unicode.org (8.9.3/8.9.3) with ESMTP id DAA02821 for ; Tue, 5 Feb 2002 03:35:24 -0500 Received: from dialup40.ts101.bmt.esat.net ([193.120.28.150]) [193.120.28.40] by relay03.esat.net with esmtp id 16Y2J0-0000uX-00; Tue, 05 Feb 2002 09:54:27 +0000 Mime-Version: 1.0 X-Sender: ever001@pop.officelink.esat.net Message-Id: In-Reply-To: References: Date: Tue, 5 Feb 2002 09:36:35 +0000 To: unicode@unicode.org From: Michael Everson Subject: Re: Unicode and Security Content-Type: text/plain; charset="us-ascii" ; format="flowed" X-archive-position: 1428 X-listar-version: Listar v1.0.0 Sender: unicode-bounce@unicode.org Errors-to: unicode-bounce@unicode.org X-original-sender: everson@evertype.com Precedence: bulk List-help: List-unsubscribe: List-software: Listar version 1.0.0 X-List-ID: X-list: unicode Status: RO X-Status: X-Keywords: At 13:27 +0900 2002-02-05, Gaspar Sinai wrote: >Just because some companies who have influence on Unicode >Consortium use some algorithm, like backing store and re-mapping, >it does not mean that this is the only way. And I don't even >think they do in cases when character conversion is necessary. Backing store and remapping are fundamental principles of Unicode. They are implemented by people who want to implement the Unicode standard. >For me it is very imprtant what a naive user sees on the screen. For me, too. >Yudit does convert the input to view order and back. Text >direction and end of line is clearly indicated. [...] > >If the standard wants me to confuse the user, I would rather dump the >standard than comply. I haven't been able to follow how I, the user, am confused by the Unicode Standard. It sounds to me as though you want a "Show Invisibles" option to disassemble Hebrew or Arabic text and display them in LTR order without any ligation so that the user can see what is in the backing store. That's a valid thing to want to do, but it's a special case of rendering, which has little to do with the algorithm. >I wish there was another world character standard besides >Unicode and not only half-hearted attempts like bytext. >Talking about characters: I think bi-di should not be in >Unicode Standard because it is not a character. >It is an algorithm. Yes, it is. The Unicode Standard does not just encode characters. It also provides tools for implementation. >I feel sorry for interrupting in the "Let's praise and >celebrate Unicode" mood of this mailing list. We like Unicode. We work to make it better. Sometimes people come to us with problems that aren't problems, or raise issues that have been dealt with many times before. Sometimes people bring us real problems that need real solutions. We're an intelligent bunch, methinks, and we can tell the difference. Unicode may have warts, but it's a lot better than ISO 2022. -- Michael Everson *** Everson Typography *** http://www.evertype.com ./doc/bidi/reference/nimda01.txt0000644000175000017500000000155407567067204016463 0ustar henrichhenrichFrom: "David" Subject: Riched20.dll missing after W32/Nimda@MM virus infection Date: Thu, 20 Sep 2001 15:57:55 -0300 Lines: 14 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2919.6600 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Message-ID: Newsgroups: microsoft.public.outlook.general NNTP-Posting-Host: 200.162.199.118 Hi there, Can someone search for c:\windows\system\riched20.dll in the hard disk and send me by e-mail? My computer was infected by W32/Nimda@MM virus yesterday. I cleaned it up today. But my Outlook 2000 is not working at all and is showing the message "You may be out of memory, system, resources or missing a .dll file". I think the answer is the last, since I had to delete the corrupted riched20.dll file. Thank you, David david_l@bol.com.br ./doc/HOWTO-rovasiras.txt0000644000175000017500000002024010434023672015251 0ustar henrichhenrichHow to use Yudit to edit Hungarian Runic text Written by: Gáspár Sinai Date: Tokyo 2002-02-25 Modified: Tokyo 2006-06-21 Important On 2002-12-07 I renamed OldHungarian.kmap to HungarianRunes.kmap. They mean the same thing rovásírás but I prefer to use Hungarian Runes. You can use yudit for rovásírás out of the box because yudit.ttf comes with rovas glyphs in PUA, so in theory you need this document only if you want to use the original rovas fonts. Introduction Hungarian Runes is the script that was used by Hungarians before Latin letters were introduced. Please see the References section for more details. Hungarian Runes support was added to Yudit to enable researchers and enthusiasts to make plain text email correspondence in mixed old Hungarian (rovasiras) and modern Hungarian. If a font is created it would even be possible to set up an utf-8 encoded web page that contains both old and new Hungarian. The PUA codes in Yudit are not a replacement to Hungarian Rovas Standard, they just let us create mixed language plain text. Yudit will always be able to use legacy Hungarian Rovas Standard fonts and texts with the built-in rovas converter. Installation Follow the instructions from http://www.yudit.org. If you have a previous installation, after unistallation of the previous version, it is advised to remove the yudit.properties file: ~/.yudit/yudit.properties Please read Remarks section to see what ~/ means here. This is an important step because yudit.ttf encoding has been changed and you may not be able to display text with it if old configuration files are lying around. 1. It is usually as simple as, ./configure make make install (as root) By default the yudit executable is installed in /usr/bin/ directory. Other files will be placed under /usr/share/yudit. 2. Download the following fonts: rovstdjb.ttf - Font for right-to-left writing rovstd.ttf - Font for left-to-right writing they were created by Dr. Hosszú Gábor. They are freely downloadable from: http://geocities.com/rovasiras/betuk/index.html Please note: yudit-2.5.4 yudit.ttf incorporated rovstd.ttf into PUA so you don't need to download them (you may skip 2,3,4). 3. Locate font directory: Windows: C:\Program Files\yudit\fonts or ~/.yudit/fonts Linux: /usr/share/yudit/fonts or ~/.yudit/fonts 4. Copy rovstd.ttf and rovstdjb.ttf to fonts directory. If you don't have an existing configuration, that came, for instance from a previous installation of yudit, you can skip steps 5 and 6. 5. Modify ~/.yudit/yudit.properties, add virtual fonts yudit.editor.fonts=default,TrueType,Misc,Rovas yudit.font.Rovas=rovstd.ttf:rovas:LR,rovstd.ttf:rovas:RL,yudit.ttf As LR glyphs are mirrored images of their RL counterparts we should to attach the LR (left-to-Right) and RL (Right-to-Left) attributes to the appropriate fonts. The encoding rovas option need to be used for the font encoding. You can omit the direction - LR direction is assumed then. The mirrored glyphs are calculated from their LR and RL counterparts if they are not specified explicitly: yudit.font.Rovas=rovstd.ttf:rovas,yudit.ttf As yudit.ttf already has rovas characters, put it to the end as a last resort font. Here are a few other font examples (some of them unnecessarily use two fonts to get the mirroring done): yudit.editor.fonts=default,TrueType,Misc,Rovas,Csenge,RovFS,RovSada,RovV1,Sumer yudit.font.Rovas=arial.ttf,rovstd.ttf:rovas yudit.font.Csenge=arial.ttf,csengejb.ttf:rovas:RL yudit.font.RovFS=arial.ttf,rov_fsjb.ttf:rovas:RL yudit.font.RovSada=arial.ttf,rovsada.ttf:rovas:LR yudit.font.RovV1=arial.ttf,rov_v1jb.ttf:rovas:RL,rov_v1.ttf:rovas:LR yudit.font.Sumer=arial.ttf,sumerjb.ttf:rovas:RL,sumer.ttf:rovas:LR Of course the simplest case is when we just use one font, yudit.ttf yudit.font.Simplest=yudit.ttf it has rovas characters in PUA. Please note that filenames are case sensitive in Linux. 6. Invoke Yudit Change font (with this configuration it is F4) Change input to HungarianRunes Small letters like o o" o: produce normal letters. Capital letter combinations like AB produce ligatures. 7. Enjoy (optional) Remarks: a) ~/ means HOME directory. This is the directory that you see when you press home button in Yudit file manager. b) In yudit file manager .yudit is not visible unless you press the "hidden" button. c) After fresh installation you need to invoke yudit and exit so that ~/.yudit/yudit.properties file gets created. This is needed only if ~/.yudit/yudit.properties is missing. Important Technical Notes Reading Dr. Hosszú Gábor's specification: http://geocities.com/rovasiras/cikkl/bevezet/bevezet.htm I decided to make the following remapping: 0xEE00..0xEE29 HUNGARIAN RUNIC LETTERS (42) 0xEE2F HUNGARIAN RUNIC PUNCTUATION (1) 0xEE30..0xEE3D HUNGARIAN RUNIC NUMBERS (6) 0xEE40..0xEEAF HUNGARIAN RUNIC LIGATURES (76) WARNING: This is the Private Use Area of Unicode. Files created will not be portable, and in the (unlikely) event that Unicode will include Hungarian Runes your files would need conversion. As of 2002-03-01 EE00-EEAF is unassigned by ConScript Unicode Registry. Please note that ConScript Unicode Registry: http://www.evertype.com/standards/csur/ is an place to register PUA characters. You may want to try to get Old Hungarian registered - it would help font makers so that they would not use these characters for other purposes in fonts. Even Klingon is registered there, so you might get lucky, but personally I don't think you will succeed registering it. Unrelated information: Conscript is organized by the same people who make the official Unicode. Note that not registering may actually be even good for Old Hungarian, because, for instance, we are not forced to use ZWJ and ZWNJ zero with characters to accept ligature formation, and we will have the freedom to specify ligatures directly when we want them, and also make conversion possible with the legacy Rovas Standard. What is most important of all can use reversible algorithms that are usually not very popular at Unicode Consortium. Reversible algorithms are very useful to preserve the integrity of plain text. With the use of PUA we also have the freedom to put Old Hungarian into BMP so we can encode our emails in utf-7, as utf-7 can encode only 16 bits. Old Hungarian Unicode Proposal (dated 1998): http://wwwold.dkuug.dk/JTC1/SC2/WG2/docs/n1686/n1686.htm does not have HUNGARIAN RUNIC LETTER CLOSED E HUNGARIAN RUNIC LETTER AS HUNGARIAN RUNIC LETTER ATY All 3 of them can be used in Yudit. Conversion If text contains only Old Hungarian, conversion to/from the Hungarian Rovas Standard is possible if the file is read/written with rovas converter as a file-type. OldHungarian file-type can be used to make a transliteration of the text with the keyboard input map. Be aware that 8-bit encoding is correctly encoding the Rovas standard fonts. If Unicode encoding table is used in True Type fonts I found the following differences in rovstd.ttf, for instance: Glyph Character Format4 Format0 (8-bit) GO 0xEE58 0x0152 0x8C  HA 0xEE59 0x0178 0x9F  HI 0xEE5B 0x02DC 0x98  IT 0xEE5D 0x2026 0x85  NT 0xEE6D 0x0153 0x9C  SK 0xEE78 0x0192 0x83  UNK 0xEE84 0x2122 0x99  Yudit automatically uses 8 bit encoding when necessary so you don't need to know this subtle detail. References Dr. Hosszú Gábor http://geocities.com/rovasiras/ Heves Gábor http://fang.fa.gau.hu/~heves/ Lehoczki Endre http://www.dsuper.net/~elehoczk/ Hungarian Letters and Writing http://www2.4dcomm.com/millenia/alphabet.htm Ancient Hungarian Runic Writing http://www.interlog.com/~photodsk/magyar/rovas/rovaseng.html Rovástól Írásig (Hungarian) http://www.sztaki.hu/~smarton/erdely/rovas.htm Magyar Törzsnevek http://www2.4dcomm.com/millenia/tribe.htm ./doc/HOWTO-freehand.txt0000644000175000017500000001163210434023152015012 0ustar henrichhenrichDescription For Yudit a new input method was added. It is called freehand and it can be configured just like any other input method (top menu). The original The handwriting recognition algorithms were made by Todd David Rudick (in Java) for his program JavaDict: http://www.cs.arizona.edu/japan/JavaDict/ For Yudit a new algorithm was developed, based upon the old idea. Yudit uses outside files for handwriting recognition. The file format is very simple, all you need is a utf-8 enabled text editor - Yudit to create one. The extension of these files is .hwd. Two file format versions are recognized: '#HWD 1.0' and '#HWD 2.0'. You have to put this mark at the beginning of each hwd file. The recommended file format is 2.0. 1.0 format was kept because JStroke files and gtkkanjipad files can be converted to 1.0 format only, so you can use them in Yudit. I Yudit comes with kanji.hwd - converted from JStroke http://www.wellscs.com/pilot/ hanzi.hwd - converted from gtkkanjipad http://www.kotnet.org/~skimo/kanji/ If you notice some error in data please send me the description of error. I already have one patch for kanji.hwd in mytool/hwd. Version 1.0 Yudit files can not be converted from one to another because the use different angles (32 vs. 12). When making a hwd file please be aware of the limitation imposed by the handwriting recognition algorithm: a) Strokes have a specific order. If you write something in a different order, the algorithm will ignore it. b) Recognition work with angle-order. If two glyph have the same or similar angles. Just a few additional flags are available to specify relative positions. The following files are shipped with 2.4.8 and they are made by Inui Yuko. hiragana.hwd katakana.hwd If you create such files please put the in share/yudit/data or your ~/.yudit/data. Algorithm used in freehand input (Yudit specific) The scalar product of the unit vector described in the guide and the vector drawn on the screen is calculated. Please note that this number could be negative if the strokes are in the opposite direction. In case Yudit's 'directed' flag is used, we assume the stroke has been drawn in the opposite order and we re-apply the algorithm with the lines drawn in the opposite order. In case of multiple vectors in the guide vector array Yudit tries to subdivide the lines with moving point maximize the scalar product. The longer the length is the closer we are to the guide. You see, the maximum value of the scalar product is the length of the line multiplied by the unit vector's length, and this happens if the strokes can exactly be aligned to the guide. Extra Hints The original algorithm added some hints in case directionality is not enough. This algorithm does it too. Use this if it is absolutely necessary. Add fuzz with the flags, winner is the one that has length-of-projection) +/- fuzz largest. Please note that the real-length is constant for the full stroke. so this method really gives us the best candidate. The length of projection can never reach full-length. They can be equals at most. Data file format I think it is better if I start with a real file (please remove leading spaces) #HWD 2.0 DO NOT REMOVE THIS LINE # roman.hwd Gaspar Sinai # Roman Letters for Yudit freehand 01 C 8-6-4 02 A 1-5,3 02 B 6,4-7-4-7 The file has a header. It must start with '#HWD 2.0'. Lines starting with '#' are comments. subsequent lines are broken into 3 words, separated by ' ' (not double-width) space. 1. The number of strokes in the character. I use leading zero for easy sort. Data needs to be in ascending order. 2. The utf-8 encoded character or string 3. Guide Guide This tells Yudit how you draw the character. Each stroke is separated with commas. You always have to imagine that a vector array will be matched to the drawing, and that should become as close to the pattern as possible. Still, do not try to over-describe the character. In the example I described 'C' like this. Go toward 8 o'clock then from the new point go toward 6 o'clock, then from the point you are at, go in the direction of 4 o'clock. You don't really need extra flags, but if you ever need them it looks like this: 02 X 5,7 | j2-b1 02 Y 5,7 This calculates (stoke.2.end.y) - (stroke.1.mid.y). We work on screen coordinates, where origo is upper left corner of the screen, so this number will distinguish X. You can emphasize a filter by putting a '!' at the end: j2-b1! and you can specify multiple filters, separated by spaces (' '). Flag names x x-start y y-start i x-end j y-end a x-middle b y-middle l length In case you made a cool *.hwd please send it to me. Gaspar Sinai Tokyo 2006-05-21 ./doc/UTF-8-test.txt0000644000175000017500000005052707567405652014154 0ustar henrichhenrichUTF-8 decoder capability and stress test | ---------------------------------------- | | Markus Kuhn - 2002-11-08 | | This test text examines, how UTF-8 decoders handle various types of | corrupted or otherwise interesting UTF-8 sequences. | | According to ISO 10646-1, sections R.7 and 2.3c, a device receiving | UTF-8 shall interpret a "malformed sequence in the same way that it | interprets a character that is outside the adopted subset". This means | usually that the malformed UTF-8 sequence is replaced by a replacement | character (U+FFFD), which looks a bit like an inverted question mark, | or a similar symbol. It might be a good idea to visually distinguish a | malformed UTF-8 sequence from a correctly encoded Unicode character | that is just not available in the current font but otherwise fully | legal. For both cases, a clearly recognisable symbol should be used. | Just ignoring malformed sequences or unavailable characters will make | debugging more difficult and can lead to user confusion. | | Test sequences: | | Check, whether a malformed UTF-8 sequence is (1) represented at all, | (2) represented by exactly one replacement character (or equivalent | signal), and (3) the following quotation mark after an illegal UTF-8 | sequence is correctly displayed, i.e. proper resynchronization takes | place. This file says "THE END" in the last line, so if you don't see | that, your decoder crashed somehow before, which is also not nice. | | All lines in this file are exactly 79 characters long (plus the line | feed). In addition, all lines end with "|", except for the two test | lines 2.1.1 and 2.2.1, which contain non-printable ASCII controls | U+0000 and U+007F. If you display this file with a fixed-width font, | these "|" characters should all line up in column 79 (right margin). | This allows you to test quickly, whether your UTF-8 decoder finds the | correct number of characters in every line. | | Note that as an alternative to the notion of malformed sequence used | here, it is also a perfectly acceptable (and in some situations even | preferable) solution to represent each individual byte of a malformed | sequence by a replacement character. If you follow this strategy in | your decoder, then ignore the "|" column. | | | Here come the tests: | | 1 Some correct UTF-8 text | | You should see the Greek word 'kosme': "κόσμε" | | 2 Boundary condition test cases | | You should see a correctly encoded character each time (which is not | necessarily an existing character). | | 2.1 First possible sequence of a certain length | | 2.1.1 1 byte (U-00000000): "" 2.1.2 2 bytes (U-00000080): "€" | 2.1.3 3 bytes (U-00000800): "ࠀ" | 2.1.4 4 bytes (U-00010000): "𐀀" | 2.1.5 5 bytes (U-00200000): "" | 2.1.6 6 bytes (U-04000000): "" | | 2.2 Last possible sequence of a certain length | | 2.2.1 1 byte (U-0000007F): "" 2.2.2 2 bytes (U-000007FF): "߿" | 2.2.3 3 bytes (U-0000FFFF): "￿" | 2.2.4 4 bytes (U-001FFFFF): "" | 2.2.5 5 bytes (U-03FFFFFF): "" | 2.2.6 6 bytes (U-7FFFFFFF): "" | | 2.3 Other boundary conditions | | 2.3.1 U-0000D7FF = ed 9f bf = "퟿" | 2.3.2 U-0000E000 = ee 80 80 = "" | 2.3.3 U-0000FFFD = ef bf bd = "�" | 2.3.4 U-0010FFFF = f4 8f bf bf = "􏿿" | 2.3.5 U-00110000 = f4 90 80 80 = "" | | 3 Malformed sequences | | 3.1 Unexpected continuation bytes | | Each unexpected continuation byte should be separately signalled as a | malformed sequence of its own. | | 3.1.1 First continuation byte 0x80: "" | 3.1.2 Last continuation byte 0xbf: "" | | 3.1.3 2 continuation bytes: "" | 3.1.4 3 continuation bytes: "" | 3.1.5 4 continuation bytes: "" | 3.1.6 5 continuation bytes: "" | 3.1.7 6 continuation bytes: "" | 3.1.8 7 continuation bytes: "" | | 3.1.9 Sequence of all 64 possible continuation bytes (0x80-0xbf): | | " | | | " | | 3.2 Lonely start characters | | 3.2.1 All 32 first bytes of 2-byte sequences (0xc0-0xdf), | each followed by a space character: | | " | " | | 3.2.2 All 16 first bytes of 3-byte sequences (0xe0-0xef), | each followed by a space character: | | " " | | 3.2.3 All 8 first bytes of 4-byte sequences (0xf0-0xf7), | each followed by a space character: | | " " | | 3.2.4 All 4 first bytes of 5-byte sequences (0xf8-0xfb), | each followed by a space character: | | " " | | 3.2.5 All 2 first bytes of 6-byte sequences (0xfc-0xfd), | each followed by a space character: | | " " | | 3.3 Sequences with last continuation byte missing | | All bytes of an incomplete sequence should be signalled as a single | malformed sequence, i.e., you should see only a single replacement | characters in each of the next 10 tests. (Characters as in section 2) | | 3.3.1 2-byte sequence with last byte missing (U+0000): "" | 3.3.2 3-byte sequence with last byte missing (U+0000): "" | 3.3.3 4-byte sequence with last byte missing (U+0000): "" | 3.3.4 5-byte sequence with last byte missing (U+0000): "" | 3.3.5 6-byte sequence with last byte missing (U+0000): "" | 3.3.6 2-byte sequence with last byte missing (U-000007FF): "" | 3.3.7 3-byte sequence with last byte missing (U-0000FFFF): "" | 3.3.8 4-byte sequence with last byte missing (U-001FFFFF): "" | 3.3.9 5-byte sequence with last byte missing (U-03FFFFFF): "" | 3.3.10 6-byte sequence with last byte missing (U-7FFFFFFF): "" | | 3.4 Concatenation of incomplete sequences | | All the 10 sequences of 3.3 concatenated, you should see 10 malformed | sequences being signalled: | | "" | | 3.5 Impossible bytes | | The following two bytes cannot appear in a correct UTF-8 string | | 3.5.1 fe = "" | 3.5.2 ff = "" | 3.5.3 fe fe ff ff = "" | | 4 Overlong sequences | | The following sequences are not malformed according to the letter of | the Unicode 2.0 standard. However, they are longer then necessary and | a correct UTF-8 encoder is not allowed to produce them. A "safe UTF-8 | decoder" should reject them just like malformed sequences for two | reasons: (1) It helps to debug applications if overlong sequences are | not treated as valid representations of characters, because this helps | to spot problems more quickly. (2) Overlong sequences provide | alternative representations of characters, that could maliciously be | used to bypass filters that check only for ASCII characters. For | instance, a 2-byte encoded line feed (LF) would not be caught by a | line counter that counts only 0x0a bytes, but it would still be | processed as a line feed by an unsafe UTF-8 decoder later in the | pipeline. From a security point of view, ASCII compatibility of UTF-8 | sequences means also, that ASCII characters are *only* allowed to be | represented by ASCII bytes in the range 0x00-0x7f. To ensure this | aspect of ASCII compatibility, use only "safe UTF-8 decoders" that | reject overlong UTF-8 sequences for which a shorter encoding exists. | | 4.1 Examples of an overlong ASCII character | | With a safe UTF-8 decoder, all of the following five overlong | representations of the ASCII character slash ("/") should be rejected | like a malformed UTF-8 sequence, for instance by substituting it with | a replacement character. If you see a slash below, you do not have a | safe UTF-8 decoder! | | 4.1.1 U+002F = c0 af = "" | 4.1.2 U+002F = e0 80 af = "" | 4.1.3 U+002F = f0 80 80 af = "" | 4.1.4 U+002F = f8 80 80 80 af = "" | 4.1.5 U+002F = fc 80 80 80 80 af = "" | | 4.2 Maximum overlong sequences | | Below you see the highest Unicode value that is still resulting in an | overlong sequence if represented with the given number of bytes. This | is a boundary test for safe UTF-8 decoders. All five characters should | be rejected like malformed UTF-8 sequences. | | 4.2.1 U-0000007F = c1 bf = "" | 4.2.2 U-000007FF = e0 9f bf = "" | 4.2.3 U-0000FFFF = f0 8f bf bf = "" | 4.2.4 U-001FFFFF = f8 87 bf bf bf = "" | 4.2.5 U-03FFFFFF = fc 83 bf bf bf bf = "" | | 4.3 Overlong representation of the NUL character | | The following five sequences should also be rejected like malformed | UTF-8 sequences and should not be treated like the ASCII NUL | character. | | 4.3.1 U+0000 = c0 80 = "" | 4.3.2 U+0000 = e0 80 80 = "" | 4.3.3 U+0000 = f0 80 80 80 = "" | 4.3.4 U+0000 = f8 80 80 80 80 = "" | 4.3.5 U+0000 = fc 80 80 80 80 80 = "" | | 5 Illegal code positions | | The following UTF-8 sequences should be rejected like malformed | sequences, because they never represent valid ISO 10646 characters and | a UTF-8 decoder that accepts them might introduce security problems | comparable to overlong UTF-8 sequences. | | 5.1 Single UTF-16 surrogates | | 5.1.1 U+D800 = ed a0 80 = "" | 5.1.2 U+DB7F = ed ad bf = "" | 5.1.3 U+DB80 = ed ae 80 = "" | 5.1.4 U+DBFF = ed af bf = "" | 5.1.5 U+DC00 = ed b0 80 = "" | 5.1.6 U+DF80 = ed be 80 = "" | 5.1.7 U+DFFF = ed bf bf = "" | | 5.2 Paired UTF-16 surrogates | | 5.2.1 U+D800 U+DC00 = ed a0 80 ed b0 80 = "" | 5.2.2 U+D800 U+DFFF = ed a0 80 ed bf bf = "" | 5.2.3 U+DB7F U+DC00 = ed ad bf ed b0 80 = "" | 5.2.4 U+DB7F U+DFFF = ed ad bf ed bf bf = "" | 5.2.5 U+DB80 U+DC00 = ed ae 80 ed b0 80 = "" | 5.2.6 U+DB80 U+DFFF = ed ae 80 ed bf bf = "" | 5.2.7 U+DBFF U+DC00 = ed af bf ed b0 80 = "" | 5.2.8 U+DBFF U+DFFF = ed af bf ed bf bf = "" | | 5.3 Other illegal code positions | | 5.3.1 U+FFFE = ef bf be = "￾" | 5.3.2 U+FFFF = ef bf bf = "￿" | | THE END | ./doc/es/0000755000175000017500000000000011334661334012215 5ustar henrichhenrich./doc/es/FAQ.TXT0000644000175000017500000002054411334661334013232 0ustar henrichhenrichPreguntas Más Frecuentes sobre el editor unicode Yudit ====================================================== Versión: 2.9.2 Autor: Gaspar Sinai Fecha: Tokyo 2006-05-21 Traducción: Juan Rafael Fernández García Fecha: 2002-11-13 © Juan Rafael Fernández García , 2002 Permission is granted to freely copy and distribute this file and modified versions, provided that this header is not removed and modified versions are marked as such. Q1: ¿Cómo puedo volver a ver este documento? A1: Escriba ‘help’ o ‘ayuda’ en el área de comandos. Del mismo modo que verá una página de prueba si teclea ‘test’ en el área de comandos. Teclee ‘howto japanese’ o ‘howto configure’ para ver las páginas howto (con más información). Q2: ¿Dónde puedo encontrar actualizaciones? A2: Descárguelas de http://www.yudit.org/ Q3: He pulsado el botón de Guardar y no hace nada. ¿Por qué? A3: Yudit tiene una línea de comandos. Lo más probable es que falte pulsar la tecla Intro. Q4: ¿Qué significa el mensaje [Salto de línea] que aparece a la derecha y que dice casi siempre «Unix»? A4: Las marcas de fin de línea son: UNIX='\n' - Salto de línea Unix DOS='\r\n' - Salto de línea DOS MAC='\r' - Salto de línea MAC LS = U+2028 - Separador de línea unicode PS = U+2029 - Separador de párrafo unicode En Yudit pueden combinarse - puede crearse un fichero con saltos de línea DOS y Unix por ejemplo. Sin embargo debe evitarse mezclar los tipos de salto de línea en la medida de lo posible. Q5: ¿Cómo puedo averiguar la lista de codificaciones (opciones -e)? A5: Teclee ‘man uniconv’ o ‘uniconv -h’ en una ventana de shell. Q6: ¿Cómo puedo añadir mi propio mapa de teclado? A6: Quizás el fichero ya exista en /usr/share/yudit/data en tal caso basta con añadirlo a /usr/share/yudit/config/yudit.properties De no existir, deberá convertir el fichero kmap fuente al formato binario: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Después deberá copiar My.my a ~/.yudit/data cp My.my ~/.yudit/data Por favor envíeme su fichero kmap fuente para incluirlo en la próxima distribución. Si desea más información sobre los ficheros kmap, consulte /usr/share/yudit/doc/HOWTO-keymap.txt El código fuente de los kmaps proporcionados con yudit está en /usr/share/yudit/src/ Advierta que los ficheros kmap pueden utilizarse como conversores de texto y como mapas de fuentes también. Q7: ¿Cómo puedo ver los mensajes en mi propio idioma? A7: Descargue el código fuente y lea el fichero README.TXT. Le explica cómo lograrlo. Por favor envíenme traducciones para que pueda incluirlas en versiones futuras. Q8: ¿Cómo puedo añadir una fuente TrueType? A8: Ponga fichero-fuente.ttf y otro-fichero-fuente.ttf en /usr/share/yudit/fonts o ~/.yudit/fonts después modifique /usr/share/yudit/config/yudit.properties con la adición de una nueva fuente virtual MiFuente yudit.font.MiFuente=fichero-fuente.ttf,otro-fichero-fuente.ttf,.. Puede utilizar esta fuente en la ventana de edición si la añade a yudit.editor.fonts=...,MiFuente,... o en el entorno gráfico si lo añade a yudit.fonts=...,MiFuente,... Q9: ¿Habrá una versión para Windows? A9: Yudit utiliza un conjunto de librerías (toolkit) de ventanas abstracto. Esto hace posible y muy fácil portar Yudit a por ejemplo svgalib. Hice la versión Windows para mi mujer Yuko en Diciembre de 2001. Esta fue la primera y última vez que he tocado Windows. Q10: ¿Qué tal editor unicode es Yudit? A10: He tratado de implementar el estándar unicode siempre que tenía sentido. Hay algunos detalles, por favor lea /usr/share/yudit/doc/HOWTO-bidi.txt con información sobre la implementación de la bidireccionalidad. Los caracteres compuestos funcionan, el ‘shaping' está en construcción. Q11: He especificado 3 ficheros en la línea de comandos y ahora sólo puedo ver uno. A11: Están en el búfer histórico. Si pulsa Flecha-Arriba (o Ctrl-k) o Flecha-Abajo (o Ctrl-j) en el área de entrada de comandos, puede recorrer el fichero histórico. Q12: ¿Cuáles son las ligaduras de teclas predefinidas (hot-key bindings)? A12: Puede ver la mayor parte de ellas - los cuadros amarillos de ayuda las muestran subrayadas. La mayoría debería funcionar tanto con la tecla Ctrl como con Alt. El editor actualmente obedece a las siguientes ligaduras: Escape - cambiar entre el modo de introducción de comandos y modo de edición Inicio (Home) - ir al comienzo de línea Fin (End) - ir al final de la línea b - ir al comienzo de la página f - ir al final de la página k - Arriba n,j - Abajo h - Izquierda l - Derecha m - Borrar la línea entera x - Borrar selección v - Pegar la última selección Si mantiene presionada la tecla Meta mientras mueve el cursor de texto, el texto quedará seleccionado. Doble click del ratón selecciona una palabra, triple click selecciona toda una línea. Q13: ¿Cómo puedo leer el contenido de un fichero binario de mapa de teclado? A13: Puede hacer un volcado del fuente del siguiente modo: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: ¿Cómo puedo introducir fácilmente un caracter unicode? A14: Cambie la entrada a [unicode], e introduzca uxxxx o Uxxxxxxxx, donde x es un número hexadecimal. Q15: ¿Puede Yudit reemplazar texto? A15: En el área de comandos debe teclear replace texto-antiguo texto-nuevo y pulse Intro para cada caso buscar/reemplazar. Q16: ¿Cómo puedo acceder al modo de entrada a mano alzada? A16: Haga click sobre la flecha azul (Métodos de entrada). Asigne a `freehand' una de las teclas de función (F1...F12). Q17: ¿Cómo puedo desactivar el realce de sintaxis? A17: En el Área de mandatos, tecleando `syntax none'. Las opciones disponibles aparecerán en una etiqueta de error si teclea únicamente `syntax'. También puede activar o desactivar esta opción en el fichero de configuración. Q18: ¿Cómo puedo desactivar la alineación automática de palabras? A18: En el Área de mandatos, tecleando `wordwrap false'. Teclear `wordwrap true' activa la alineación automática. También puede hacerse en el fichero de configuración. Apéndice ======== 1.1. Ejemplos de mapas de teclado Los siguientes ejemplos proceden de algunos de los mapas de teclado (kmaps) incluidos con Yudit. (Nota del traductor: la mejor forma de conocer las combinaciones de teclas que producen el caracter español que buscamos es consultar Spanish.kmap) Russian Mapea las letras rusas fonéticamente. Las combinaciones no tan obvias son: yo da ё , c produce ь, q produce ъ x produce ы, ee produce э Hungarian Mapea los caracteres húngaros y alemanes. Se pueden introducir los caracteres acentuados tecleando el caracter inglés seguido del acento. (Nota del traductor: el mapa, de Roman Czyborra, fue la inspiración de Spanish.kmap. Por «acento» se refiere a la tecla que normalmente se usa para escribir los apóstropos) Ejemplos: a' > á , o: > ö , o" > ő SS produce la ß alemana, Ss compone el signo de parágrafo §. Kana Mapea Romaji (caracteres occidentales) en Hiragana and Katakana. Las minúsculas se usan para escribir Hiragana y las mayúsculas, Katakana. Las combinaciones no tan obvias son: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Con este mapa puede usar los mnemónicos de RFC1345 para introducir los caracteres. Ejemplos: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH - ♥ &M2 = ♫ &sn - ش SGML convierte SGML en unicode. Ejemplos: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul mapea la transliteración Roman (occidental) en caracteres Hangul. Se usa la transliteración ISO/TC46/SC2/WG4. Para más información, puede consultar http://www.hansoft.com/hangul/faq.html Ejemplos: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/es/FAQ.TXT.in0000644000175000017500000002050411331217515013626 0ustar henrichhenrichPreguntas Más Frecuentes sobre el editor unicode Yudit ====================================================== Versión: 2.9.2 Autor: Gaspar Sinai Fecha: Tokyo 2006-05-21 Traducción: Juan Rafael Fernández García Fecha: 2002-11-13 © Juan Rafael Fernández García , 2002 Permission is granted to freely copy and distribute this file and modified versions, provided that this header is not removed and modified versions are marked as such. Q1: ¿Cómo puedo volver a ver este documento? A1: Escriba ‘help’ o ‘ayuda’ en el área de comandos. Del mismo modo que verá una página de prueba si teclea ‘test’ en el área de comandos. Teclee ‘howto japanese’ o ‘howto configure’ para ver las páginas howto (con más información). Q2: ¿Dónde puedo encontrar actualizaciones? A2: Descárguelas de http://www.yudit.org/ Q3: He pulsado el botón de Guardar y no hace nada. ¿Por qué? A3: Yudit tiene una línea de comandos. Lo más probable es que falte pulsar la tecla Intro. Q4: ¿Qué significa el mensaje [Salto de línea] que aparece a la derecha y que dice casi siempre «Unix»? A4: Las marcas de fin de línea son: UNIX='\n' - Salto de línea Unix DOS='\r\n' - Salto de línea DOS MAC='\r' - Salto de línea MAC LS = U+2028 - Separador de línea unicode PS = U+2029 - Separador de párrafo unicode En Yudit pueden combinarse - puede crearse un fichero con saltos de línea DOS y Unix por ejemplo. Sin embargo debe evitarse mezclar los tipos de salto de línea en la medida de lo posible. Q5: ¿Cómo puedo averiguar la lista de codificaciones (opciones -e)? A5: Teclee ‘man uniconv’ o ‘uniconv -h’ en una ventana de shell. Q6: ¿Cómo puedo añadir mi propio mapa de teclado? A6: Quizás el fichero ya exista en @YUDIT_DATA@/data en tal caso basta con añadirlo a @YUDIT_DATA@/config/yudit.properties De no existir, deberá convertir el fichero kmap fuente al formato binario: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Después deberá copiar My.my a ~/.yudit/data cp My.my ~/.yudit/data Por favor envíeme su fichero kmap fuente para incluirlo en la próxima distribución. Si desea más información sobre los ficheros kmap, consulte @YUDIT_DATA@/doc/HOWTO-keymap.txt El código fuente de los kmaps proporcionados con yudit está en @YUDIT_DATA@/src/ Advierta que los ficheros kmap pueden utilizarse como conversores de texto y como mapas de fuentes también. Q7: ¿Cómo puedo ver los mensajes en mi propio idioma? A7: Descargue el código fuente y lea el fichero README.TXT. Le explica cómo lograrlo. Por favor envíenme traducciones para que pueda incluirlas en versiones futuras. Q8: ¿Cómo puedo añadir una fuente TrueType? A8: Ponga fichero-fuente.ttf y otro-fichero-fuente.ttf en @YUDIT_DATA@/fonts o ~/.yudit/fonts después modifique @YUDIT_DATA@/config/yudit.properties con la adición de una nueva fuente virtual MiFuente yudit.font.MiFuente=fichero-fuente.ttf,otro-fichero-fuente.ttf,.. Puede utilizar esta fuente en la ventana de edición si la añade a yudit.editor.fonts=...,MiFuente,... o en el entorno gráfico si lo añade a yudit.fonts=...,MiFuente,... Q9: ¿Habrá una versión para Windows? A9: Yudit utiliza un conjunto de librerías (toolkit) de ventanas abstracto. Esto hace posible y muy fácil portar Yudit a por ejemplo svgalib. Hice la versión Windows para mi mujer Yuko en Diciembre de 2001. Esta fue la primera y última vez que he tocado Windows. Q10: ¿Qué tal editor unicode es Yudit? A10: He tratado de implementar el estándar unicode siempre que tenía sentido. Hay algunos detalles, por favor lea @YUDIT_DATA@/doc/HOWTO-bidi.txt con información sobre la implementación de la bidireccionalidad. Los caracteres compuestos funcionan, el ‘shaping' está en construcción. Q11: He especificado 3 ficheros en la línea de comandos y ahora sólo puedo ver uno. A11: Están en el búfer histórico. Si pulsa Flecha-Arriba (o Ctrl-k) o Flecha-Abajo (o Ctrl-j) en el área de entrada de comandos, puede recorrer el fichero histórico. Q12: ¿Cuáles son las ligaduras de teclas predefinidas (hot-key bindings)? A12: Puede ver la mayor parte de ellas - los cuadros amarillos de ayuda las muestran subrayadas. La mayoría debería funcionar tanto con la tecla Ctrl como con Alt. El editor actualmente obedece a las siguientes ligaduras: Escape - cambiar entre el modo de introducción de comandos y modo de edición Inicio (Home) - ir al comienzo de línea Fin (End) - ir al final de la línea b - ir al comienzo de la página f - ir al final de la página k - Arriba n,j - Abajo h - Izquierda l - Derecha m - Borrar la línea entera x - Borrar selección v - Pegar la última selección Si mantiene presionada la tecla Meta mientras mueve el cursor de texto, el texto quedará seleccionado. Doble click del ratón selecciona una palabra, triple click selecciona toda una línea. Q13: ¿Cómo puedo leer el contenido de un fichero binario de mapa de teclado? A13: Puede hacer un volcado del fuente del siguiente modo: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: ¿Cómo puedo introducir fácilmente un caracter unicode? A14: Cambie la entrada a [unicode], e introduzca uxxxx o Uxxxxxxxx, donde x es un número hexadecimal. Q15: ¿Puede Yudit reemplazar texto? A15: En el área de comandos debe teclear replace texto-antiguo texto-nuevo y pulse Intro para cada caso buscar/reemplazar. Q16: ¿Cómo puedo acceder al modo de entrada a mano alzada? A16: Haga click sobre la flecha azul (Métodos de entrada). Asigne a `freehand' una de las teclas de función (F1...F12). Q17: ¿Cómo puedo desactivar el realce de sintaxis? A17: En el Área de mandatos, tecleando `syntax none'. Las opciones disponibles aparecerán en una etiqueta de error si teclea únicamente `syntax'. También puede activar o desactivar esta opción en el fichero de configuración. Q18: ¿Cómo puedo desactivar la alineación automática de palabras? A18: En el Área de mandatos, tecleando `wordwrap false'. Teclear `wordwrap true' activa la alineación automática. También puede hacerse en el fichero de configuración. Apéndice ======== 1.1. Ejemplos de mapas de teclado Los siguientes ejemplos proceden de algunos de los mapas de teclado (kmaps) incluidos con Yudit. (Nota del traductor: la mejor forma de conocer las combinaciones de teclas que producen el caracter español que buscamos es consultar Spanish.kmap) Russian Mapea las letras rusas fonéticamente. Las combinaciones no tan obvias son: yo da ё , c produce ь, q produce ъ x produce ы, ee produce э Hungarian Mapea los caracteres húngaros y alemanes. Se pueden introducir los caracteres acentuados tecleando el caracter inglés seguido del acento. (Nota del traductor: el mapa, de Roman Czyborra, fue la inspiración de Spanish.kmap. Por «acento» se refiere a la tecla que normalmente se usa para escribir los apóstropos) Ejemplos: a' > á , o: > ö , o" > ő SS produce la ß alemana, Ss compone el signo de parágrafo §. Kana Mapea Romaji (caracteres occidentales) en Hiragana and Katakana. Las minúsculas se usan para escribir Hiragana y las mayúsculas, Katakana. Las combinaciones no tan obvias son: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Con este mapa puede usar los mnemónicos de RFC1345 para introducir los caracteres. Ejemplos: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH - ♥ &M2 = ♫ &sn - ش SGML convierte SGML en unicode. Ejemplos: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul mapea la transliteración Roman (occidental) en caracteres Hangul. Se usa la transliteración ISO/TC46/SC2/WG4. Para más información, puede consultar http://www.hansoft.com/hangul/faq.html Ejemplos: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/HOWTO-windows.txt0000644000175000017500000001064011332766170014742 0ustar henrichhenrichYudit is a free Unicode text editor, which is created by Gaspar Sinai. Originally it was a X-windows application, but there is now a Windows version. General information about Yudit, and a link to the Unix dowload, can be found at: http://www.yudit.org/ As of December, 2002, the most recent Windows release is: http://www.yudit.org/download/binary/yudit-2.7-1.exe Some documentation on the Windows release can be found in: http://www.yudit.org/download/binary/WINDOWS.TXT The document you are reading was not written by the creator of Yudit, just a Windows user who tried it out. This document is meant to supplement that documentation, and the FAQ.txt file which is included with Yudit. For printing and print preview you will need ghostscript and ghostview for windows. Originaly written by Matt Fishar. Modified by Anirban Mitra ----- Charecteristically Yudit is installed in folder C:\Program Files\Yudit or whatever path you chose during installation. When it cannot detect a user home directory in MS Windows, it creates another directory like C:\Home and puts user specific configuration files in a subdirectory ".yudit". You can open this directory by pressing Home button of the open file window. [ It is a good idea to save your unicoded text file in this home directory of its subdirectories especially in Windows 9x (95, 98 and Me) systems to prevent them getting corrupted by Notepad which does not understand unicode in that platform.] As Yudit is made for Unix systems, it followes Unix conventions which are different to MS Windows Systems. Significant operational differences are (this list is not all-inclusive) : 1. In Yudit, file path are indicated by forward slashes("/") unlike backward slashes ("\") in MS Windows. It also does not accept space in a folder name while in command mode. You have to remember this while entering directory name and pressing "cd" (change directory). It is easier to use the open window. The ".." mark at top of the directory listing act like "up" button in Explorer. 2. Unix commands are case-sensitive unlike Windows or DOS. So if you type "HELP" instead of "help" or "Replace" instead of "replace" in command line, it would not work. 3. Files or folders starting with a dot (such as C:\Home\.yudit) are considered hidden. You have to click "show hidden" button to see them. *Changing configuration file for Windows (Also see "howto configure" )* Open the Home/.yudit/yudit.properties file in Yudit and change entries as below: Set yudit.fontpath=c:/windows/fonts,c:/home/.yudit/fonts {According to font directory of your computer. You can know the path by going to control panel -> fonts. Remember: Do not keep pure unicode fonts like raghu.ttf in windows font folder in Windows 9x systems as they would corrupt your system fonts. Keep them in C:\home\.yudit\fonts instead. Yudit does not follow Windows mouse conventions (e.g., double-clicking on a file to open it) and keyboard shortcuts (e.g., Ctrl-n for new file, Ctrl-c for copy, Ctrl-v for paste, Ctrl-z for undo, Ctrl-y for redo). Yudit's keyboard shortcuts are explained in the following file: C:\Program Files\Yudit\doc\FAQ.txt If Ctrl-x (for cut),Ctrl-c (for copy), Ctrl-v (for paste) etc doesn't work use Alt-x, Alt-c, Pressing "Esc" switches Yudit between edit mode and command mode, and vice versa. In edit mode, you have to press Ctrl at the same time as the keyboard shortcut, e.g., Ctrl-b for page up. See item Q12 in the FAQ for more details. The arrow and page up/down keys also work. To find and replace text, you have to switch to command mode. Replacing is explained in Q15, and finding works similarly (except that you don't have to specify a value for new-text). To select text using keyboard, press Alt and use arrow keys Please note, if you have set up Hebrew or Yiddish "input locales" for Windows, they are not needed for Yudit. If you don't know what an "input locale" is, never mind. Update 2010-02-05 ================= From version 2.9.2 there is no C:\HOME folder, Yudit uses the My Documents folder of the current user. Another change is to add native Unicode support for filenames and this comes with a sacrifice: Yudit might not work with Windows 95 and Windows 98 any more. For these systems I will continue providing a binary of the 2.8.x version. If someone could make a conditional compilation in the source code, later versions of Yudit might add back support to Windows95. Gaspar Sinai Tokyo, 2010-02-05. ./doc/hu/0000755000175000017500000000000011334661334012222 5ustar henrichhenrich./doc/hu/FAQ.TXT0000644000175000017500000001606611334661334013243 0ustar henrichhenrichYudit Unicode Editor GYIK ========================== Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2007-12-22 K1: Hogyan láthatnám viszont ezt a FAQ-t? V1: A parancs területre `help' -et írva. Hasonlóképpen a parancsterületre 'test' -et írva a tesztoldalt láthatjuk viszont. 'howto japanese' vagy 'howto configure' a howto oldalakat adja. K2: Honnan kaphatok frissítést? V2: Innen lehet letölteni: http://www.yudit.org/ K3: Az 'elment' gombot megnyomtam és mégsem történik semmi. Miért? V3: Yuditnak parancsterülete van. Valószínűleg csak Enter gombot kell nyomni. K4: Mi az a [tördelés] a jobb oldalon, amelyik legtöbbször "Unix" -ot mutat? V4: A tördelés jelek a következők: UNIX='\n' - Unix tördelés jel DOS='\r\n' - DOS tördelés jel MAC='\r' - MAC tördelés jel LS = U+2028 - Unicode sorelválasztó jel PS = U+2029 - Unicode paragrafus-elválasztó jel Yudit tudja ezeket keverni is - lehet olyan fájlt csinálni, amelyben DOS és Unix sorok is vannak. Ennek ellenére kerülni kell az ilyet. K5: Honnan lehet tudni a kódolási (-e kód) opciókat? V5: Egy shell ablakban `man uniconv' vagy `uniconv -h' beírásával. K6: Hogyan adhatom hozzá az én billentyű-fájlomat? V6: Lehet, hogy a fájl már létezik: /usr/share/yudit/data ebben az esetben csak hozzá kell adni a property fájlhoz: /usr/share/yudit/config/yudit.properties Ha nincs, akkor a forrás kmap-ot bináris mappá kell alakítani: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Ezután a My.my -t a ~/.yudit/data helyre kell másolni. cp My.my ~/.yudit/data Kérlek küldd el a kmap fájlodat (forrás kódban), hogy a következő verzióba bele tudjam tenni. A kmap fájlokkan kapcsolatos információ: /usr/share/yudit/doc/keymap-format.txt A Yudittal adott forráskódú kmap fájlok itt találhatók: /usr/share/yudit/src/ Megjegyzendő, hogy a kmap fájlok szövegkonverzióra is használhatók. K7: Hogyan láthatom az üzeneteket az én nyelvemen? V7: Le kell tölteni hozzá a forráskódot és el kell olvasni a README.TXT-t. Ebben benne van, hogy hogyan kell csinálni. Kérlek küldd el nekem a fordításodat, hogy a következő verzióba bele tudjam tenni. K8: Hogyan adhatok hozzá egy True Type fontot? V8: Csinálj egy symbolic link-et vagy tedd a fontot font ide: /usr/share/yudit/fonts vagy ~/.yudit/fonts és módosítsd a /usr/share/yudit/config/yudit.properties egy új virtuális font, MyFont létrehozásával: yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Most már ez a font az editorban használható, ha eképpen: yudit.editor.fonts=...,MyFont,... hozzá van adva az editor fontokhoz, vagy a gui esetén: yudit.fonts=...,MyFont,... definiálva van. és módosítsd a "editor.fonts.TrueType" property-t: K9: Lesz Windows verzió? V9: Yudit abstract windowing toolkittel működik Ezt azt jelenti, hogy lehetséges nagyon gyorsan portot csinálni, például svgalib-re. 2001 decemberében feleségemnek, Yúkonak megcsináltam a Windows verziót. Ez volt az első és utolsó alkalom, hogy Windowshoz nyúltam. K10: Mennyire jó Unikód editor a Yudit? V10: Ahol csak volt értelme, megpróbáltam a Unikód szabvány szerint eljárni. Vannak furcsaságok, például a kétirányú írás: /usr/share/yudit/doc/HOWTO-bidi.txt Kompozíciós karakterek támogatva vannak, és a shaping működik. K11: A paracssor alatt 3 fájlnevet adtam meg, de most csak egyet látok. Hol vannak a többiek? V11: A history buffer-ben. Ha a paracssorba mész, akkor a fel-nyíl (vagy Ctrl-k) és le-nyíl gombokkal lehet végiglépkedni. K12: Mik a hot-key-k? V12: A legtöbb a sárga tooltip ablakban látható aláhúzva. Legtöbbjük azt alt és a ctrl gombokkal működik. A szövegszerkesztő jelenleg a következőket ismeri: Escape - parancs- és edit módot váltogatja Home - a sor elejére megy End - a sor végére megy b - egy oldal hátra f - egy oldal előre k - előre n,j - hátra h - balra l - jobbra m - egy sor törlése x - a kiválasztott rész törlése v - az utolsónak kiválasztott szöveg törlése. Ha a kurzor mozgatása közben a meta gobot is nyomva tartjuk, akkor kiválaszthatunk szöveget. Dupla mouse click szót tripla click sort választ ki. K13: Hogyan olvashatom el a bináris keymap fájlt? V13: Így lehet: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys K14: Hogyan írhatnék be gyorsan egy unicode karaktert? V14: Válassz [unicode] bevitelt és írj uxxxx-t vagy Uxxxxxxxx-t ahol x egy hexadecimális szám. K15: Hogyan helyettesíthetek? V15: A parancssorba a következőt kell írni: replace régi-szöveg új-szöveg majd minden egyes find/replace -hez egy enter billentyűt nyomunk. K16: Hol van a kézírásos bevitel? V16: A kék nyilat (bevitelt) kell megnyomni. Rendeljük hozzá az egyik „F” billentyűhöz. K17: Hogyan kapcsolhanám ki a syntax kiemelést? V17: A parancs területre a 'syntax none' beírásával. Ha csak 'syntax'-ot írunk, akkor az hibaüzenetből megtudhatjuk az összes lehetséges opciót. A konfigurációs fájllal is állíthatjuk a syntax kiemelést. A Yudit parancsmezőjébe „howto syntax”-ot írva több segítséget kaphatunk. Ebben benne van a hunspell támogatás is. K18: Hogyan kapcsolhanám ki a szótördelést? V18: A parancs területre a 'wordwrap false' beírásával. A 'wordwrap true' beírásával a tördelést visszaállíthatjuk. A konfigurációs fájllal is állíthatjuk a tördelést. Függelék ======== 1.1. Keymap példák Nehány a Yudittal installált kmapok közül: Russian Fonetikus orosz karaktereket alakít át. A nem magától érthedődőek: yo ad ё , c ad ь, q ad ъ x ad ы ee ad э karaktereket. Hungarian Magyar és német karaktereket alakít át. Ha az angol karaktert ', " vagy : követi ez az angolban nem létező karaktereket adja. Példák: a' lesz á , o: lesz ö , o" lesz ő SS lesz német ß , Ss lesz a paragrafus §. Kana Romadzsit alakít át hiraganává vagy katakanává. A kisbetűk hiraganát, a nagybetűk katakanát adnak. A nem magától érthetődőek: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Ezzek a kmappal az RFC1345 mnemonic segítségével vihetjük be a karaktereket: Néhány példa: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML SGML-t alakít unikóddá. Példák: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul Római átírást alakít hangul betűkké. Az ISO/TC46/SC2/WG4 átírást használjuk. Erről bővebben a http://www.hansoft.com/hangul/faq.html lapon olvashatunk. Néhány példa: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/hu/FAQ.TXT.in0000644000175000017500000001602611331217525013640 0ustar henrichhenrichYudit Unicode Editor GYIK ========================== Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2007-12-22 K1: Hogyan láthatnám viszont ezt a FAQ-t? V1: A parancs területre `help' -et írva. Hasonlóképpen a parancsterületre 'test' -et írva a tesztoldalt láthatjuk viszont. 'howto japanese' vagy 'howto configure' a howto oldalakat adja. K2: Honnan kaphatok frissítést? V2: Innen lehet letölteni: http://www.yudit.org/ K3: Az 'elment' gombot megnyomtam és mégsem történik semmi. Miért? V3: Yuditnak parancsterülete van. Valószínűleg csak Enter gombot kell nyomni. K4: Mi az a [tördelés] a jobb oldalon, amelyik legtöbbször "Unix" -ot mutat? V4: A tördelés jelek a következők: UNIX='\n' - Unix tördelés jel DOS='\r\n' - DOS tördelés jel MAC='\r' - MAC tördelés jel LS = U+2028 - Unicode sorelválasztó jel PS = U+2029 - Unicode paragrafus-elválasztó jel Yudit tudja ezeket keverni is - lehet olyan fájlt csinálni, amelyben DOS és Unix sorok is vannak. Ennek ellenére kerülni kell az ilyet. K5: Honnan lehet tudni a kódolási (-e kód) opciókat? V5: Egy shell ablakban `man uniconv' vagy `uniconv -h' beírásával. K6: Hogyan adhatom hozzá az én billentyű-fájlomat? V6: Lehet, hogy a fájl már létezik: @YUDIT_DATA@/data ebben az esetben csak hozzá kell adni a property fájlhoz: @YUDIT_DATA@/config/yudit.properties Ha nincs, akkor a forrás kmap-ot bináris mappá kell alakítani: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Ezután a My.my -t a ~/.yudit/data helyre kell másolni. cp My.my ~/.yudit/data Kérlek küldd el a kmap fájlodat (forrás kódban), hogy a következő verzióba bele tudjam tenni. A kmap fájlokkan kapcsolatos információ: @YUDIT_DATA@/doc/keymap-format.txt A Yudittal adott forráskódú kmap fájlok itt találhatók: @YUDIT_DATA@/src/ Megjegyzendő, hogy a kmap fájlok szövegkonverzióra is használhatók. K7: Hogyan láthatom az üzeneteket az én nyelvemen? V7: Le kell tölteni hozzá a forráskódot és el kell olvasni a README.TXT-t. Ebben benne van, hogy hogyan kell csinálni. Kérlek küldd el nekem a fordításodat, hogy a következő verzióba bele tudjam tenni. K8: Hogyan adhatok hozzá egy True Type fontot? V8: Csinálj egy symbolic link-et vagy tedd a fontot font ide: @YUDIT_DATA@/fonts vagy ~/.yudit/fonts és módosítsd a @YUDIT_DATA@/config/yudit.properties egy új virtuális font, MyFont létrehozásával: yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Most már ez a font az editorban használható, ha eképpen: yudit.editor.fonts=...,MyFont,... hozzá van adva az editor fontokhoz, vagy a gui esetén: yudit.fonts=...,MyFont,... definiálva van. és módosítsd a "editor.fonts.TrueType" property-t: K9: Lesz Windows verzió? V9: Yudit abstract windowing toolkittel működik Ezt azt jelenti, hogy lehetséges nagyon gyorsan portot csinálni, például svgalib-re. 2001 decemberében feleségemnek, Yúkonak megcsináltam a Windows verziót. Ez volt az első és utolsó alkalom, hogy Windowshoz nyúltam. K10: Mennyire jó Unikód editor a Yudit? V10: Ahol csak volt értelme, megpróbáltam a Unikód szabvány szerint eljárni. Vannak furcsaságok, például a kétirányú írás: @YUDIT_DATA@/doc/HOWTO-bidi.txt Kompozíciós karakterek támogatva vannak, és a shaping működik. K11: A paracssor alatt 3 fájlnevet adtam meg, de most csak egyet látok. Hol vannak a többiek? V11: A history buffer-ben. Ha a paracssorba mész, akkor a fel-nyíl (vagy Ctrl-k) és le-nyíl gombokkal lehet végiglépkedni. K12: Mik a hot-key-k? V12: A legtöbb a sárga tooltip ablakban látható aláhúzva. Legtöbbjük azt alt és a ctrl gombokkal működik. A szövegszerkesztő jelenleg a következőket ismeri: Escape - parancs- és edit módot váltogatja Home - a sor elejére megy End - a sor végére megy b - egy oldal hátra f - egy oldal előre k - előre n,j - hátra h - balra l - jobbra m - egy sor törlése x - a kiválasztott rész törlése v - az utolsónak kiválasztott szöveg törlése. Ha a kurzor mozgatása közben a meta gobot is nyomva tartjuk, akkor kiválaszthatunk szöveget. Dupla mouse click szót tripla click sort választ ki. K13: Hogyan olvashatom el a bináris keymap fájlt? V13: Így lehet: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys K14: Hogyan írhatnék be gyorsan egy unicode karaktert? V14: Válassz [unicode] bevitelt és írj uxxxx-t vagy Uxxxxxxxx-t ahol x egy hexadecimális szám. K15: Hogyan helyettesíthetek? V15: A parancssorba a következőt kell írni: replace régi-szöveg új-szöveg majd minden egyes find/replace -hez egy enter billentyűt nyomunk. K16: Hol van a kézírásos bevitel? V16: A kék nyilat (bevitelt) kell megnyomni. Rendeljük hozzá az egyik „F” billentyűhöz. K17: Hogyan kapcsolhanám ki a syntax kiemelést? V17: A parancs területre a 'syntax none' beírásával. Ha csak 'syntax'-ot írunk, akkor az hibaüzenetből megtudhatjuk az összes lehetséges opciót. A konfigurációs fájllal is állíthatjuk a syntax kiemelést. A Yudit parancsmezőjébe „howto syntax”-ot írva több segítséget kaphatunk. Ebben benne van a hunspell támogatás is. K18: Hogyan kapcsolhanám ki a szótördelést? V18: A parancs területre a 'wordwrap false' beírásával. A 'wordwrap true' beírásával a tördelést visszaállíthatjuk. A konfigurációs fájllal is állíthatjuk a tördelést. Függelék ======== 1.1. Keymap példák Nehány a Yudittal installált kmapok közül: Russian Fonetikus orosz karaktereket alakít át. A nem magától érthedődőek: yo ad ё , c ad ь, q ad ъ x ad ы ee ad э karaktereket. Hungarian Magyar és német karaktereket alakít át. Ha az angol karaktert ', " vagy : követi ez az angolban nem létező karaktereket adja. Példák: a' lesz á , o: lesz ö , o" lesz ő SS lesz német ß , Ss lesz a paragrafus §. Kana Romadzsit alakít át hiraganává vagy katakanává. A kisbetűk hiraganát, a nagybetűk katakanát adnak. A nem magától érthetődőek: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Ezzek a kmappal az RFC1345 mnemonic segítségével vihetjük be a karaktereket: Néhány példa: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML SGML-t alakít unikóddá. Példák: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul Római átírást alakít hangul betűkké. Az ISO/TC46/SC2/WG4 átírást használjuk. Erről bővebben a http://www.hansoft.com/hangul/faq.html lapon olvashatunk. Néhány példa: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/problems/0000755000175000017500000000000010724001346013422 5ustar henrichhenrich./doc/problems/goals.txt0000644000175000017500000000525007532460062015301 0ustar henrichhenrich1. Some words on yudit-style cut & paste. In the original code I certainly could convert COMPOUND_TEXT to unicode but I was at a loss when I wanted to convert unicode to COMPUND_TEXT. If I look at a Japanese text which COMPUND_TEXT should I use? If I only use chinese charaters this might be Chineese. At that point I decided that user should select the encoding he wants and put it on the clipboard - a hack that worked. 2. Could you tell me how Xutf8TextListToTextProperty - XCompoundTextStyle knows which compund text should be used? Yudit does not use locale, as you know.... 3. Channges. I made a change that makes cut and paste usable on X11 without Xutf8 functionality. When cut&caste encoding is manually set.. Please take a look at the patch attached to this mail message. 4. Future of yudit-1.5 -- We need to write or get our own Xutf8... functions, and they should be incorporated into my patch (3) -- We need to modify src/UWidget.cpp and pass utf8 text to uGetClipboard and uPutClipboard. 5. Real future of yudit. I am slowly but surely working on a new version of yudit. http://yudit.org/download/workingon/yudit-pre-2.0-9/ Goals: --standalone - no dependency on ANYTHING. --there is no seperate font and key map file. Only one multi-purpose map. -- bidirectional support. -- composing support (I dont like the idea, but this is a unicode editor after all) -- high level drawing functions on an abstract window. I made a postscript interface to X11 in the abstract window (swindow) dir. Currently it is using an in house rendering engine. If the canvas does have higher level drawing functions it can easily use that (I expect X11 guys to improve X11 and make alpha + spline) -- much nicer widget set. I want a style like swing in java. -- multi-platform (windows version planned, hated and stagnating.) -- cleaner code. Completely different code. -- easy to use icon-buttons tabs and no menus. The current stage is: -- simple components and abstract window toolkit finished. -- the latest test is ./testwidget . It brings up a widget with bidi-text in it, rendering with a mixtrue of multiple true type fonts and x11 fonts. I will do in the very near future: -- The complete widget set. After the main thing, the edit window is done things will progress faster. I expect to produce a widget set within 1-2 month if someone depends on it. I will need help -- simple/STextData.cpp - implement a better bidi. Literature: doc/Yudit.bidi.txt -- imple/STextData.cpp - guess composing characters and put them in a single glyph. -- MS Windows port of abstract window. Currently the rest of the code is compilable and works with visual c++ -- Help pages and translations. -- optimization. -- gui ./doc/HOWTO-tamil.txt0000644000175000017500000000445310434023710014347 0ustar henrichhenrichTamil in Yudit By Thuraiappah Vaseeharan Mon Dec 24 20:45:55 CST 2001 Introduction Yudit is a free (as in beer and speech) Unicode editor written by Gaspar Sinai. It is the first open source editor to fully support Unicode text creation in Tamil. Currently, the following fonts have been tested to display Unicode Tamil text. a. code2000.ttf shareware font. It is an OpenType Font with proper layout tables for Tamil. If you have a similar font, it should work as well. b. TSCII (http://www.tscii.org) fonts: If you don't have code2000 font, you can use any tscii font to _display_ tamil text. Note that TSCII is used only for displaying text. The file will be read/written in unicode (UTF-8) format. Installations Follow the instructions from http://www.yudit.org 1. It is usually as simple as, ./configure make make install (as root) By default the yudit executable is installed in /usr/bin/ directory. Other files will be placed under /usr/share/yudit. 2. Download the code2000.ttf font from http://home.att.net/~jameskass/ and copy it into the /usr/share/yudit/fonts or ~/.yudit/fonts If you want to use a TSCII font that you already have, just copy it in one of the above directories. 3. Edit /usr/share/yudit/config/yudit.properties or ~/.yudit/yudit.properties and add the font file name in the field "yudit.font.TrueType" e.g. yudit.font.TrueType=code2000.ttf, Arial.ttf, ... yudit.font.TrueType=TimesTSC.ttf:tscii, Arial.ttf, ... Don't forget to add the ":tscii" suffix after the filename of TSCII fonts! 4. Start Yudit. Switch the fonts to truetype. Type test in the command window. You'll get a multi-lingual document. Near the end, you should be able to see the famous Tamil verse "Yaathum Uure Yaavarum Kelir". 5. Click on the keymap button and add Tamil to the available keymaps. Change the key map to Tamil. Now you can enter tamil text. The default keyboard is a romanized keyboard similar to the Murasu Anjal keyboard. See /usr/share/yudit/src/Tamil.kmap for the complete map. Enjoy! ******************************************************************************** If you find Yudit useful, write a note to Gaspar Sinai and say "Nandri (நன்றி)"! ******************************************************************************** ./doc/fi/0000755000175000017500000000000011334661334012204 5ustar henrichhenrich./doc/fi/FAQ.TXT0000644000175000017500000001763011334661334013223 0ustar henrichhenrichUnicode-editori Yuditin UKK (Usein kysytyt kysymykset) =========================== Versio: 2.9.2 Tekijä: Gáspár Sinai Päiväys: Tokio 2006-05-21 Käännös: Miikka-Markus Alhonen K1: Kuinka saan näkyviin tämän ohjeen uudelleen? V1: Kirjoita ’help’ komentoriville. Vastaavalla tavalla saat näkyviin testisivun kirjoittaessasi komentoriville ’test’. Kirjoita ’howto japanese’ ja ’howto configure’ saadaksesi näkyviin howto-sivut. K2: Mistä saan päivityksiä ohjelmaan? V2: WWW-osoitteesta http://www.yudit.org/ K3: Painoin Tallenna-nappia, eikä mitään tapahtunut. Miksei? V3: Yuditilla on komentorivi. Luultavimmin sinun tarvitsee vain painaa Enteriä. K4: Mitä tarkoittaa ikkunan oikeassa yläkulmassa oleva [Rivinvaihto], jossa useimmiten lukee ”Unix”? V4: Rivinlopetusmerkit ovat: UNIX = '\n' – Unix-rivinvaihto DOS = '\r\n' – DOS-rivinvaihto MAC = '\r' – Macintosh-rivinvaihto LS = U+2028 – Unicode-rivinerotin PS = U+2029 – Unicode-kappaleenerotin Yuditissa voit yhdistellä näitä keskenään – voit luoda tiedoston, jossa on esimerkiksi sekä DOS- että Unix-rivinvaihtoja. Niiden sekakäyttöä tulisi kuitenkin välttää, kun vain mahdollista. K5: Kuinka saan näkyviin listan koodaustavoista (optiolle -e)? V5: Kirjoita ’man uniconv’ tai ’uniconv -h’ komentokehoteikkunassa (shell). K6: Kuinka voin lisätä oman näppäimistösyötetiedostoni? V6: Tiedosto saattaa jo löytyä hakemistosta /usr/share/yudit/data Tässä tapauksessa sinun tarvitsee vain lisätä tiedostonimi asetustiedostoon /usr/share/yudit/config/yudit.properties Muuten sinun pitää muuttaa kmap-lähdetiedostosi binäärimuotoon käskyllä mytool -type kmap -kmap Oma.kmap -rkmap Oma.kmap -write Oma.my ja sitten kopioida Oma.my hakemistoon ~/.yudit/data cp Oma.my ~/.yudit/data Lähetä minulle kmap-lähdetiedostosi, jotta voin sisällyttää sen seuraavaan ohjelmaversioon, kiitos. Lisätietoa kmap-tiedostomuodosta löydät englannin kielellä tiedostosta /usr/share/yudit/doc/keymap-format.txt Yuditin mukana tulleiden kmap-tiedostojen lähdekoodit ovat hakemistossa /usr/share/yudit/src/ Huomaa, että kmap-tiedostoja voi käyttää myös tekstimuuntimina ja fonttikarttoina. K7: Miten näen viestit omalla kielelläni? V7: Hanki Yuditin lähdekoodi ja lue englanninkielinen tiedosto README.TXT. Siinä kerrotaan, kuinka käännöstyön voi tehdä. Lähetä valmis käännöksesi minulle, jotta voin sisällyttää sen ohjelman tuleviin versioihin, kiitos. K8: Kuinka voin lisätä TrueType-fontin? V8: Laita esim. tiedostot fontti.ttf ja toinen-fontti.ttf hakemistoon /usr/share/yudit/fonts tai ~/.yudit/fonts ja muokkaa tiedostoa /usr/share/yudit/config/yudit.properties lisäämällä uuden virtuaalifontin nimeltä OmaFontti: yudit.font.OmaFontti=fontti.ttf,toinen-fontti.ttf,... Nyt voit käyttää tätä fonttia editori-ikkunassa, jos lisäät sen kohtaan yudit.editor.fonts=...,OmaFontti,... tai graafisessa käyttöliittymässä, jos lisäät sen kohtaan yudit.fonts=...,OmaFontti,... K9: Tehdäänkö Yuditista koskaan Windows-versiota? V9: Yuditin ikkunointimenetelmä on hyvin abstrakti. Tämän vuoksi ohjelma on hyvin helppo siirtää (portata) muihinkin ympäristöihin kuten svgalib-kirjastolle. Tein ohjelmasta Windows-version vaimolleni Yukolle joulukuussa 2001. Tämä oli ensimmäinen ja sai olla myös viimeinen kerta, kun ohjelmoin Windowsille. K10: Kuinka hyvä Unicode-editori Yudit on? V10: Koetin noudattaa Unicode-standardia aina, kun se ei tuntunut kohtuuttomalta. Joitakin erikoisuuksia Yuditissa on; lue englanninkielinen tiedosto /usr/share/yudit/doc/HOWTO-bidi.txt kahdensuuntaisen tekstin käsittelyn standardinmukaisuudesta. Merkin eri osien yhdisteleminen (composing) toimii, mutta yhdistelmien ulkomuodossa on vielä parantamisen varaa. K11: Määritin komentorivillä kolme avattavaa tiedostoa ja nyt näen niistä vain yhden. V11: Ne ovat muistissa ohjelman tiedostohistoriassa (history buffer). Pääset selaamaan tiedostohistoriaa ylös- ja alas-nuolinäppäimillä (tai näppäimillä Ctrl-k ja Ctrl-j) ohjelman komentokehotteessa. K12: Mitä pikanäppäinyhdistelmiä (hot-key) ohjelmassa on? V12: Näet useimmat niistä alleviivattuina viemällä hiiren osoittimen kunkin toimintonapin päälle. Useimpien näistä pitäisi toimia sekä Ctrl- että Alt-näppäimen kanssa. Itse editorissa pikanäppäimiä ovat: Esc – vaihtaa kirjoitusmoodista komentomoodiin ja toisinpäin Home – menee rivin alkuun End – menee rivin loppuun b – sivu ylöspäin f – sivu alaspäin k – ylös n,j – alas h – vasemmalle l – oikealle m – tuhoaa koko rivin x – tuhoaa valitun alueen v – liittää viimeksi valittuna olleen alueen Tekstiä voidaan valita liikuttamalla kohdistinta ja samalla painaen Meta- (alt) tai Shift-näppäintä. Hiiren kaksoisnäpäytys valitsee yhden sanan, kolmoisnäpäytys koko rivin. K13: Kuinka voin lukea binäärisen näppäimistökarttatiedoston sisällön? V13: Voit tehdä siitä lähdekoodiversion käskyllä: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys K14: Kuinka voin nopeasti syöttää minkä tahansa Unicode-merkin? V14: Vaihda syöte [unicode]:ksi ja näppäile uxxxx tai Uxxxxxxxx, jossa x on mikä tahansa heksadesimaalinumero. K15: Pystyykö Yuditissa korvaamaan tekstiä etsimisen yhteydessä? V15: Kyllä. Kirjoita komentoriville: replace vanhateksti uusiteksti ja paina Enteriä jokaisen etsi/korvaa -toiminnon toteuttamiseksi. K16: Miten voin syöttää merkkejä piirtämällä? V16: Paina hiirellä sinistä nuolta (syöte) ja aseta ”freehand” johonkin F-näppäimeen. K17: Miten saan ohjelman syntaksikorostuksen pois päältä? V17: Kirjoita komentoriville ’syntax none’. Käytettävissä olevat vaihtoehdot saat näkyviin virheilmoituksessa, kun kirjoitat pelkästään sanan ’syntax’. Voit asettaa tämän myös asetustiedostoon. K18: Kuinka saan automaattisen rivityksen pois päältä? V18: Kirjoita komentoriville ’wordwrap false’. Saat sen takaisin päälle käskyllä ’wordwrap true’. Voit asettaa tämän myös asetustiedostoon. Liite ===== 1.1. Syötekarttaesimerkkejä Seuraavat esimerkit ovat eräistä Yuditin mukana tulevista kmap:eista. Russian Syöte venäjän lausumisen mukaan. Vaikeammin pääteltävät tapaukset ovat: yo – ё, c – ь, q – ъ, x – ы, ee – э Lisäksi muutkin translitteroinnit menevät englantilaisittain eli: zh – ж, y – й, ch – ч, sh – ш, shch – щ, yu – ю, ya – я Hungarian Syöte unkarin ja saksan kirjaimille. Aksentilliset merkit voidaan syöttää kirjoittamalla peruskirjaimen jälkeen aksentti. Esimerkkejä: a' – á, o: – ö, o" – ő, SS – ß, Ss – § Kana Roomaji-syöte hiraganalle ja katakanalle. Pieniä kirjaimia käytetään hiraganalle ja isoja katakanalle. Vaikeammin pääteltävät merkit ovat: PP – 〒 <> – ◇ <>> – ◆ [] – □ []] – ■ OO – ● * – ☆ ** – ★ ~ – ・ Oo – ◎ o+ – ♀ o- – ♂ oC – ℃ Y= – ¥ Mnemonic Syöte RFC1345 mnemonic -merkintätavan kautta. Joitakin esimerkkejä: &0u – ☺ &0U – ☻ &tel – ☏ &PI – ¶ &SU – ☼ &cH- – ♥ &M2 – ♫ &sn – ش SGML Syöte SGML-koodeista Unicodeen. Esimerkkejä: ♀ – ♀ ♠ – ♠, ╞ – ╞ █ – █ ░ – ░ ⅛ – ⅛ Hangul Syöte roomalaisten aakkosten kautta hangul-merkeiksi. Käytetty translitterointi on ISO/TC46/SC2/WG4 -standardien mukainen. Lisätietoa siitä löydät osoitteesta: http://www.hansoft.com/hangul/faq.html Joitakin esimerkkejä: ulyanghan – 우량한, pyohyeon – 표현 cinseon – 친선, jageug – 자극, hwang geum – 황금 ./doc/fi/FAQ.TXT.in0000644000175000017500000001757011331217521013623 0ustar henrichhenrichUnicode-editori Yuditin UKK (Usein kysytyt kysymykset) =========================== Versio: 2.9.2 Tekijä: Gáspár Sinai Päiväys: Tokio 2006-05-21 Käännös: Miikka-Markus Alhonen K1: Kuinka saan näkyviin tämän ohjeen uudelleen? V1: Kirjoita ’help’ komentoriville. Vastaavalla tavalla saat näkyviin testisivun kirjoittaessasi komentoriville ’test’. Kirjoita ’howto japanese’ ja ’howto configure’ saadaksesi näkyviin howto-sivut. K2: Mistä saan päivityksiä ohjelmaan? V2: WWW-osoitteesta http://www.yudit.org/ K3: Painoin Tallenna-nappia, eikä mitään tapahtunut. Miksei? V3: Yuditilla on komentorivi. Luultavimmin sinun tarvitsee vain painaa Enteriä. K4: Mitä tarkoittaa ikkunan oikeassa yläkulmassa oleva [Rivinvaihto], jossa useimmiten lukee ”Unix”? V4: Rivinlopetusmerkit ovat: UNIX = '\n' – Unix-rivinvaihto DOS = '\r\n' – DOS-rivinvaihto MAC = '\r' – Macintosh-rivinvaihto LS = U+2028 – Unicode-rivinerotin PS = U+2029 – Unicode-kappaleenerotin Yuditissa voit yhdistellä näitä keskenään – voit luoda tiedoston, jossa on esimerkiksi sekä DOS- että Unix-rivinvaihtoja. Niiden sekakäyttöä tulisi kuitenkin välttää, kun vain mahdollista. K5: Kuinka saan näkyviin listan koodaustavoista (optiolle -e)? V5: Kirjoita ’man uniconv’ tai ’uniconv -h’ komentokehoteikkunassa (shell). K6: Kuinka voin lisätä oman näppäimistösyötetiedostoni? V6: Tiedosto saattaa jo löytyä hakemistosta @YUDIT_DATA@/data Tässä tapauksessa sinun tarvitsee vain lisätä tiedostonimi asetustiedostoon @YUDIT_DATA@/config/yudit.properties Muuten sinun pitää muuttaa kmap-lähdetiedostosi binäärimuotoon käskyllä mytool -type kmap -kmap Oma.kmap -rkmap Oma.kmap -write Oma.my ja sitten kopioida Oma.my hakemistoon ~/.yudit/data cp Oma.my ~/.yudit/data Lähetä minulle kmap-lähdetiedostosi, jotta voin sisällyttää sen seuraavaan ohjelmaversioon, kiitos. Lisätietoa kmap-tiedostomuodosta löydät englannin kielellä tiedostosta @YUDIT_DATA@/doc/keymap-format.txt Yuditin mukana tulleiden kmap-tiedostojen lähdekoodit ovat hakemistossa @YUDIT_DATA@/src/ Huomaa, että kmap-tiedostoja voi käyttää myös tekstimuuntimina ja fonttikarttoina. K7: Miten näen viestit omalla kielelläni? V7: Hanki Yuditin lähdekoodi ja lue englanninkielinen tiedosto README.TXT. Siinä kerrotaan, kuinka käännöstyön voi tehdä. Lähetä valmis käännöksesi minulle, jotta voin sisällyttää sen ohjelman tuleviin versioihin, kiitos. K8: Kuinka voin lisätä TrueType-fontin? V8: Laita esim. tiedostot fontti.ttf ja toinen-fontti.ttf hakemistoon @YUDIT_DATA@/fonts tai ~/.yudit/fonts ja muokkaa tiedostoa @YUDIT_DATA@/config/yudit.properties lisäämällä uuden virtuaalifontin nimeltä OmaFontti: yudit.font.OmaFontti=fontti.ttf,toinen-fontti.ttf,... Nyt voit käyttää tätä fonttia editori-ikkunassa, jos lisäät sen kohtaan yudit.editor.fonts=...,OmaFontti,... tai graafisessa käyttöliittymässä, jos lisäät sen kohtaan yudit.fonts=...,OmaFontti,... K9: Tehdäänkö Yuditista koskaan Windows-versiota? V9: Yuditin ikkunointimenetelmä on hyvin abstrakti. Tämän vuoksi ohjelma on hyvin helppo siirtää (portata) muihinkin ympäristöihin kuten svgalib-kirjastolle. Tein ohjelmasta Windows-version vaimolleni Yukolle joulukuussa 2001. Tämä oli ensimmäinen ja sai olla myös viimeinen kerta, kun ohjelmoin Windowsille. K10: Kuinka hyvä Unicode-editori Yudit on? V10: Koetin noudattaa Unicode-standardia aina, kun se ei tuntunut kohtuuttomalta. Joitakin erikoisuuksia Yuditissa on; lue englanninkielinen tiedosto @YUDIT_DATA@/doc/HOWTO-bidi.txt kahdensuuntaisen tekstin käsittelyn standardinmukaisuudesta. Merkin eri osien yhdisteleminen (composing) toimii, mutta yhdistelmien ulkomuodossa on vielä parantamisen varaa. K11: Määritin komentorivillä kolme avattavaa tiedostoa ja nyt näen niistä vain yhden. V11: Ne ovat muistissa ohjelman tiedostohistoriassa (history buffer). Pääset selaamaan tiedostohistoriaa ylös- ja alas-nuolinäppäimillä (tai näppäimillä Ctrl-k ja Ctrl-j) ohjelman komentokehotteessa. K12: Mitä pikanäppäinyhdistelmiä (hot-key) ohjelmassa on? V12: Näet useimmat niistä alleviivattuina viemällä hiiren osoittimen kunkin toimintonapin päälle. Useimpien näistä pitäisi toimia sekä Ctrl- että Alt-näppäimen kanssa. Itse editorissa pikanäppäimiä ovat: Esc – vaihtaa kirjoitusmoodista komentomoodiin ja toisinpäin Home – menee rivin alkuun End – menee rivin loppuun b – sivu ylöspäin f – sivu alaspäin k – ylös n,j – alas h – vasemmalle l – oikealle m – tuhoaa koko rivin x – tuhoaa valitun alueen v – liittää viimeksi valittuna olleen alueen Tekstiä voidaan valita liikuttamalla kohdistinta ja samalla painaen Meta- (alt) tai Shift-näppäintä. Hiiren kaksoisnäpäytys valitsee yhden sanan, kolmoisnäpäytys koko rivin. K13: Kuinka voin lukea binäärisen näppäimistökarttatiedoston sisällön? V13: Voit tehdä siitä lähdekoodiversion käskyllä: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys K14: Kuinka voin nopeasti syöttää minkä tahansa Unicode-merkin? V14: Vaihda syöte [unicode]:ksi ja näppäile uxxxx tai Uxxxxxxxx, jossa x on mikä tahansa heksadesimaalinumero. K15: Pystyykö Yuditissa korvaamaan tekstiä etsimisen yhteydessä? V15: Kyllä. Kirjoita komentoriville: replace vanhateksti uusiteksti ja paina Enteriä jokaisen etsi/korvaa -toiminnon toteuttamiseksi. K16: Miten voin syöttää merkkejä piirtämällä? V16: Paina hiirellä sinistä nuolta (syöte) ja aseta ”freehand” johonkin F-näppäimeen. K17: Miten saan ohjelman syntaksikorostuksen pois päältä? V17: Kirjoita komentoriville ’syntax none’. Käytettävissä olevat vaihtoehdot saat näkyviin virheilmoituksessa, kun kirjoitat pelkästään sanan ’syntax’. Voit asettaa tämän myös asetustiedostoon. K18: Kuinka saan automaattisen rivityksen pois päältä? V18: Kirjoita komentoriville ’wordwrap false’. Saat sen takaisin päälle käskyllä ’wordwrap true’. Voit asettaa tämän myös asetustiedostoon. Liite ===== 1.1. Syötekarttaesimerkkejä Seuraavat esimerkit ovat eräistä Yuditin mukana tulevista kmap:eista. Russian Syöte venäjän lausumisen mukaan. Vaikeammin pääteltävät tapaukset ovat: yo – ё, c – ь, q – ъ, x – ы, ee – э Lisäksi muutkin translitteroinnit menevät englantilaisittain eli: zh – ж, y – й, ch – ч, sh – ш, shch – щ, yu – ю, ya – я Hungarian Syöte unkarin ja saksan kirjaimille. Aksentilliset merkit voidaan syöttää kirjoittamalla peruskirjaimen jälkeen aksentti. Esimerkkejä: a' – á, o: – ö, o" – ő, SS – ß, Ss – § Kana Roomaji-syöte hiraganalle ja katakanalle. Pieniä kirjaimia käytetään hiraganalle ja isoja katakanalle. Vaikeammin pääteltävät merkit ovat: PP – 〒 <> – ◇ <>> – ◆ [] – □ []] – ■ OO – ● * – ☆ ** – ★ ~ – ・ Oo – ◎ o+ – ♀ o- – ♂ oC – ℃ Y= – ¥ Mnemonic Syöte RFC1345 mnemonic -merkintätavan kautta. Joitakin esimerkkejä: &0u – ☺ &0U – ☻ &tel – ☏ &PI – ¶ &SU – ☼ &cH- – ♥ &M2 – ♫ &sn – ش SGML Syöte SGML-koodeista Unicodeen. Esimerkkejä: ♀ – ♀ ♠ – ♠, ╞ – ╞ █ – █ ░ – ░ ⅛ – ⅛ Hangul Syöte roomalaisten aakkosten kautta hangul-merkeiksi. Käytetty translitterointi on ISO/TC46/SC2/WG4 -standardien mukainen. Lisätietoa siitä löydät osoitteesta: http://www.hansoft.com/hangul/faq.html Joitakin esimerkkejä: ulyanghan – 우량한, pyohyeon – 표현 cinseon – 친선, jageug – 자극, hwang geum – 황금 ./doc/HOWTO-greekancient.txt0000644000175000017500000003166710103416012015701 0ustar henrichhenrichGreekAncient.kmap, by Yves Codet (June 2004), after Unicode 4.0.1 Please send comments to: ycodet@club-internet.fr Most inputs are the same as for "cbgreek", the default Greek font of "Babel" extension for LaTeX. Accents, breathings and diaeresis (": double quote) must be typed before a vowel or rho: 'a ==> ά `a ==> ὰ ~a ==> ᾶ >a ==> ἀ ῥ "i ==> ϊ Breathings and diaeresis must be typed before an accent: >~a ==> ἆ "~i ==> ῗ Iota subscript and adscript must be typed after a vowel: >~a| ==> ᾆ <'A| ==> ᾍ (some fonts display iota adscript as subscript) Apostrophe is typed '' (twice '): met'' >emo~u ==> μετ᾽ ἐμοῦ Koronis is typed > like smooth breathing: k>ag'w ==> κἀγώ Macron is typed =: =a ==> ᾱ Here is the complete list with abridged Unicode names (full names ae in "GreekAncient.kmap"). LETTERS A = Α, CAPITAL ALPHA B = Β, CAPITAL BETA G = Γ, CAPITAL GAMMA D = Δ, CAPITAL DELTA E = Ε, CAPITAL EPSILON Z = Ζ, CAPITAL ZETA H = Η, CAPITAL ETA J = Θ, CAPITAL THETA I = Ι, CAPITAL IOTA K = Κ, CAPITAL KAPPA L = Λ, CAPITAL LAMDA M = Μ, CAPITAL MU N = Ν, CAPITAL NU X = Ξ, CAPITAL XI O = Ο, CAPITAL OMICRON P = Π, CAPITAL PI R = Ρ, CAPITAL RHO S = Σ, CAPITAL SIGMA T = Τ, CAPITAL TAU U = Υ, CAPITAL UPSILON F = Φ, CAPITAL PHI Q = Χ, CAPITAL CHI Y = Ψ, CAPITAL PSI W = Ω, CAPITAL OMEGA a = α, ALPHA b = β, BETA g = γ, GAMMA d = δ, DELTA e = ε, EPSILON z = ζ, ZETA h = η, ETA j = θ, THETA i = ι, IOTA k = κ, KAPPA l = λ, LAMDA m = μ, MU n = ν, NU x = ξ, XI o = ο, OMICRON p = π, PI r = ρ, RHO c = ς, FINAL SIGMA s = σ, SIGMA t = τ, TAU u = υ, UPSILON f = φ, PHI q = χ, CHI y = ψ, PSI w = ω, OMEGA VOWELS WITH DIACRITICS `A = Ὰ, CAPITAL ALPHA WITH VARIA 'A = Ά, CAPITAL ALPHA WITH OXIA >A = Ἀ, CAPITAL ALPHA WITH PSILI `A = Ἂ, CAPITAL ALPHA WITH PSILI AND VARIA <`A = Ἃ, CAPITAL ALPHA WITH DASIA AND VARIA >'A = Ἄ, CAPITAL ALPHA WITH PSILI AND OXIA <'A = Ἅ, CAPITAL ALPHA WITH DASIA AND OXIA >~A = Ἆ, CAPITAL ALPHA WITH PSILI AND PERISPOMENI <~A = Ἇ, CAPITAL ALPHA WITH DASIA AND PERISPOMENI A| = ᾼ, CAPITAL ALPHA WITH PROSGEGRAMMENI >A| = ᾈ, CAPITAL ALPHA WITH PSILI AND PROSGEGRAMMENI `A| = ᾊ, CAPITAL ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI <`A| = ᾋ, CAPITAL ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI >'A| = ᾌ, CAPITAL ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI <'A| = ᾍ, CAPITAL ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI >~A| = ᾎ, CAPITAL ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI <~A| = ᾏ, CAPITAL ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI `a = ὰ, ALPHA WITH VARIA 'a = ά, ALPHA WITH OXIA ~a = ᾶ, ALPHA WITH PERISPOMENI >a = ἀ, ALPHA WITH PSILI `a = ἂ, ALPHA WITH PSILI AND VARIA <`a = ἃ, ALPHA WITH DASIA AND VARIA >'a = ἄ, ALPHA WITH PSILI AND OXIA <'a = ἅ, ALPHA WITH DASIA AND OXIA >~a = ἆ, ALPHA WITH PSILI AND PERISPOMENI <~a = ἇ, ALPHA WITH DASIA AND PERISPOMENI a| = ᾳ, ALPHA WITH YPOGEGRAMMENI `a| = ᾲ, ALPHA WITH VARIA AND YPOGEGRAMMENI 'a| = ᾴ, ALPHA WITH OXIA AND YPOGEGRAMMENI ~a| = ᾷ, ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI >a| = ᾀ, ALPHA WITH PSILI AND YPOGEGRAMMENI `a| = ᾂ, ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI <`a| = ᾃ, ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI >'a| = ᾄ, ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI <'a| = ᾅ, ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI >~a| = ᾆ, ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI <~a| = ᾇ, ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI `E = Ὲ, CAPITAL EPSILON WITH VARIA 'E = Έ, CAPITAL EPSILON WITH OXIA >E = Ἐ, CAPITAL EPSILON WITH PSILI `E = Ἒ, CAPITAL EPSILON WITH PSILI AND VARIA <`E = Ἓ, CAPITAL EPSILON WITH DASIA AND VARIA >'E = Ἔ, CAPITAL EPSILON WITH PSILI AND OXIA <'E = Ἕ, CAPITAL EPSILON WITH DASIA AND OXIA `e = ὲ, EPSILON WITH VARIA 'e = έ, EPSILON WITH OXIA >e = ἐ, EPSILON WITH PSILI `e = ἒ, EPSILON WITH PSILI AND VARIA <`e = ἓ, EPSILON WITH DASIA AND VARIA >'e = ἔ, EPSILON WITH PSILI AND OXIA <'e = ἕ, EPSILON WITH DASIA AND OXIA `H = Ὴ, CAPITAL ETA WITH VARIA 'H = Ή, CAPITAL ETA WITH OXIA >H = Ἠ, CAPITAL ETA WITH PSILI `H = Ἢ, CAPITAL ETA WITH PSILI AND VARIA <`H = Ἣ, CAPITAL ETA WITH DASIA AND VARIA >'H = Ἤ, CAPITAL ETA WITH PSILI AND OXIA <'H = Ἥ, CAPITAL ETA WITH DASIA AND OXIA >~H = Ἦ, CAPITAL ETA WITH PSILI AND PERISPOMENI <~H = Ἧ, CAPITAL ETA WITH DASIA AND PERISPOMENI H| = ῌ, CAPITAL ETA WITH PROSGEGRAMMENI >H| = ᾘ, CAPITAL ETA WITH PSILI AND PROSGEGRAMMENI `H| = ᾚ, CAPITAL ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI <`H| = ᾛ, CAPITAL ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI >'H| = ᾜ, CAPITAL ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI <'H| = ᾝ, CAPITAL ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI >~H| = ᾞ, CAPITAL ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI <~H| = ᾟ, CAPITAL ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI `h = ὴ, ETA WITH VARIA 'h = ή, ETA WITH OXIA ~h = ῆ, ETA WITH PERISPOMENI >h = ἠ, ETA WITH PSILI `h = ἢ, ETA WITH PSILI AND VARIA <`h = ἣ, ETA WITH DASIA AND VARIA >'h = ἤ, ETA WITH PSILI AND OXIA <'h = ἥ, ETA WITH DASIA AND OXIA >~h = ἦ, ETA WITH PSILI AND PERISPOMENI <~h = ἧ, ETA WITH DASIA AND PERISPOMENI h| = ῃ, ETA WITH YPOGEGRAMMENI `h| = ῂ, ETA WITH VARIA AND YPOGEGRAMMENI 'h| = ῄ, ETA WITH OXIA AND YPOGEGRAMMENI ~h| = ῇ, ETA WITH PERISPOMENI AND YPOGEGRAMMENI >h| = ᾐ, ETA WITH PSILI AND YPOGEGRAMMENI `h| = ᾒ, ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI <`h| = ᾓ, ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI >'h| = ᾔ, ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI <'h| = ᾕ, ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI >~h| = ᾖ, ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI <~h| = ᾗ, ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI `I = Ὶ, CAPITAL IOTA WITH VARIA 'I = Ί, CAPITAL IOTA WITH OXIA "I = Ϊ, CAPITAL IOTA WITH DIALYTIKA >I = Ἰ, CAPITAL IOTA WITH PSILI `I = Ἲ, CAPITAL IOTA WITH PSILI AND VARIA <`I = Ἳ, CAPITAL IOTA WITH DASIA AND VARIA >'I = Ἴ, CAPITAL IOTA WITH PSILI AND OXIA <'I = Ἵ, CAPITAL IOTA WITH DASIA AND OXIA >~I = Ἶ, CAPITAL IOTA WITH PSILI AND PERISPOMENI <~I = Ἷ, CAPITAL IOTA WITH DASIA AND PERISPOMENI `i = ὶ, IOTA WITH VARIA 'i = ί, IOTA WITH OXIA ~i = ῖ, IOTA WITH PERISPOMENI "i = ϊ, IOTA WITH DIALYTIKA "`i = ῒ, IOTA WITH DIALYTIKA AND VARIA "'i = ΐ, IOTA WITH DIALYTIKA AND OXIA "~i = ῗ, IOTA WITH DIALYTIKA AND PERISPOMENI >i = ἰ, IOTA WITH PSILI `i = ἲ, IOTA WITH PSILI AND VARIA <`i = ἳ, IOTA WITH DASIA AND VARIA >'i = ἴ, IOTA WITH PSILI AND OXIA <'i = ἵ, IOTA WITH DASIA AND OXIA >~i = ἶ, IOTA WITH PSILI AND PERISPOMENI <~i = ἷ, IOTA WITH DASIA AND PERISPOMENI `O = Ὸ, CAPITAL OMICRON WITH VARIA 'O = Ό, CAPITAL OMICRON WITH OXIA >O = Ὀ, CAPITAL OMICRON WITH PSILI `O = Ὂ, CAPITAL OMICRON WITH PSILI AND VARIA <`O = Ὃ, CAPITAL OMICRON WITH DASIA AND VARIA >'O = Ὄ, CAPITAL OMICRON WITH PSILI AND OXIA <'O = Ὅ, CAPITAL OMICRON WITH DASIA AND OXIA `o = ὸ, OMICRON WITH VARIA 'o = ό, OMICRON WITH OXIA >o = ὀ, OMICRON WITH PSILI `o = ὂ, OMICRON WITH PSILI AND VARIA <`o = ὃ, OMICRON WITH DASIA AND VARIA >'o = ὄ, OMICRON WITH PSILI AND OXIA <'o = ὅ, OMICRON WITH DASIA AND OXIA `U = Ὺ, CAPITAL UPSILON WITH VARIA 'U = Ύ, CAPITAL UPSILON WITH OXIA "U = Ϋ, CAPITAL UPSILON WITH DIALYTIKA u = ὐ, UPSILON WITH PSILI `u = ὒ, UPSILON WITH PSILI AND VARIA <`u = ὓ, UPSILON WITH DASIA AND VARIA >'u = ὔ, UPSILON WITH PSILI AND OXIA <'u = ὕ, UPSILON WITH DASIA AND OXIA >~u = ὖ, UPSILON WITH PSILI AND PERISPOMENI <~u = ὗ, UPSILON WITH DASIA AND PERISPOMENI `W = Ὼ, CAPITAL OMEGA WITH VARIA 'W = Ώ, CAPITAL OMEGA WITH OXIA >W = Ὠ, CAPITAL OMEGA WITH PSILI `W = Ὢ, CAPITAL OMEGA WITH PSILI AND VARIA <`W = Ὣ, CAPITAL OMEGA WITH DASIA AND VARIA >'W = Ὤ, CAPITAL OMEGA WITH PSILI AND OXIA <'W = Ὥ, CAPITAL OMEGA WITH DASIA AND OXIA >~W = Ὦ, CAPITAL OMEGA WITH PSILI AND PERISPOMENI <~W = Ὧ, CAPITAL OMEGA WITH DASIA AND PERISPOMENI W| = ῼ, CAPITAL OMEGA WITH PROSGEGRAMMENI >W| = ᾨ, CAPITAL OMEGA WITH PSILI AND PROSGEGRAMMENI `W| = ᾪ, CAPITAL OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI <`W| = ᾫ, CAPITAL OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI >'W| = ᾬ, CAPITAL OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI <'W| = ᾭ, CAPITAL OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI >~W| = ᾮ, CAPITAL OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI <~W| = ᾯ, CAPITAL OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI `w = ὼ, OMEGA WITH VARIA 'w = ώ, OMEGA WITH OXIA ~w = ῶ, OMEGA WITH PERISPOMENI >w = ὠ, OMEGA WITH PSILI `w = ὢ, OMEGA WITH PSILI AND VARIA <`w = ὣ, OMEGA WITH DASIA AND VARIA >'w = ὤ, OMEGA WITH PSILI AND OXIA <'w = ὥ, OMEGA WITH DASIA AND OXIA >~w = ὦ, OMEGA WITH PSILI AND PERISPOMENI <~w = ὧ, OMEGA WITH DASIA AND PERISPOMENI w| = ῳ, OMEGA WITH YPOGEGRAMMENI `w| = ῲ, OMEGA WITH VARIA AND YPOGEGRAMMENI 'w| = ῴ, OMEGA WITH OXIA AND YPOGEGRAMMENI ~w| = ῷ, OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI >w| = ᾠ, OMEGA WITH PSILI AND YPOGEGRAMMENI `w| = ᾢ, OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI <`w| = ᾣ, OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI >'w| = ᾤ, OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI <'w| = ᾥ, OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI >~w| = ᾦ, OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI <~w| = ᾧ, OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI VOWELS WITH NON ORTHOGRAPHICAL DIACRITICS .A = Ᾰ, CAPITAL ALPHA WITH VRACHY =A = Ᾱ, CAPITAL ALPHA WITH MACRON .a = ᾰ, ALPHA WITH VRACHY =a = ᾱ, ALPHA WITH MACRON .I = Ῐ, CAPITAL IOTA WITH VRACHY =I = Ῑ, CAPITAL IOTA WITH MACRON .i = ῐ, IOTA WITH VRACHY =i = ῑ, IOTA WITH MACRON .U = Ῠ, CAPITAL UPSILON WITH VRACHY =U = Ῡ, CAPITAL UPSILON WITH MACRON .u = ῠ, UPSILON WITH VRACHY =u = ῡ, UPSILON WITH MACRON CONSONANTS WITH DIACRITICS r = ῤ, RHO WITH PSILI ; inputs shown below can be used to type single characters, if needed. ` = `, VARIA ' = ´, OXIA ~ = ῀, PERISPOMENI " = ¨, DIAERESIS "` = ῭, DIALYTIKA AND VARIA "' = ΅, DIALYTIKA AND OXIA "~ = ῁, DIALYTIKA AND PERISPOMENI > = ᾿, PSILI < = ῾, DASIA >` = ῍, PSILI AND VARIA >' = ῎, PSILI AND OXIA >~ = ῏, PSILI AND PERISPOMENI <` = ῝, DASIA AND VARIA <' = ῞, DASIA AND OXIA <~ = ῟, DASIA AND PERISPOMENI | = ͺ, YPOGEGRAMMENI *| = ι, PROSGEGRAMMENI NUMERAL SIGNS #' = ʹ, NUMERAL SIGN #, = ͵, LOWER NUMERAL SIGN PUNCTUATION MARKS The following two characters allow to type <...> in an XML file. *< = 〈, LEFT-POINTING ANGLE BRACKET *> = 〉, RIGHT-POINTING ANGLE BRACKET << = «, LEFT-POINTING DOUBLE ANGLE QUOTATION MARK >> = », RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK *``= ‘, LEFT SINGLE QUOTATION MARK *'' = ’, RIGHT SINGLE QUOTATION MARK ? = ;, QUESTION MARK ; = ·, ANO TELEIA The following character is also apostrophe. '' = ᾽, KORONIS -- = –, EN DASH --- = —, EM DASH & =  , NO-BREAK SPACE VARIANT LETTERFORMS AND SYMBOLS *b = ϐ, BETA SYMBOL *j = ϑ, THETA SYMBOL *U = ϒ, CAPITAL UPSILON WITH HOOK SYMBOL *'U = ϓ, CAPITAL UPSILON WITH ACUTE AND HOOK SYMBOL *"U = ϔ, CAPITAL UPSILON WITH DIAERESIS AND HOOK SYMBOL *f = ϕ, PHI SYMBOL *p = ϖ, PI SYMBOL *kai = ϗ, KAI SYMBOL *k = ϰ, KAPPA SYMBOL *r = ϱ, RHO SYMBOL *c = ϲ, LUNATE SIGMA SYMBOL *J = ϴ, CAPITAL THETA SYMBOL *e = ϵ, LUNATE EPSILON SYMBOL */e = ϶, REVERSED LUNATE EPSILON SYMBOL *C = Ϲ, CAPITAL LUNATE SIGMA SYMBOL ARCHAIC LETTERS *Q = Ϙ, ARCHAIC KOPPA *q = ϙ, SMALL ARCHAIC KOPPA *St = Ϛ, STIGMA *st = ϛ, SMALL STIGMA *W = Ϝ, DIGAMMA *w = ϝ, SMALL DIGAMMA *Ko = Ϟ, KOPPA *ko = ϟ, SMALL KOPPA *Sm = Ϡ, SAMPI *sm = ϡ, SMALL SAMPI *Sn = Ϻ, SAN *sn = ϻ, SMALL SAN ADDITIONAL ARCHAIC LETTERS FOR BACTRIAN *Sh = Ϸ, CAPITAL SHO *sh = ϸ, SHO ADDITIONAL LETTER *y = ϳ, YOT ./doc/HOWTO-syntax.txt0000644000175000017500000000310511331202377014565 0ustar henrichhenrichYudit Author: Gaspar Sinai Version: 2010-01-31 This document describes the "Highlighting" functionality in Yudit. With highlighting, characters can have different colors according to ceratain highlighting rules. The rules can be selected from the "Highlighting" dialog that is accessible from the toolbar or the hot-key . Highlighting modes are organized by Category. The legacy editor command "syntax" can also be used instead of the new dialog box: syntax simple syntax simple-dark syntax category:highlighting One major addition to highlighting was the support of hunspell program. Hunspell is an external module that Yudit can use for spell checking. It was written by Nemeth Laszlo for Open Office (nemeth (at) OpenOffice.org). To use hunspell, you need libhunspell.so (Linux), libhunspell.dylib (Mac) libhunspell.dll (Windows) installed and you need to download and install the actual .dic and .aff files for your language. If you just want a quick setup, you can simply drop these files into ~/.yudit/syntax directory. Hunspell web-site (to compile hunspell.so): http://hunspell.sourceforge.net/ Dictionaries (.dic, .aff files) http://wiki.services.openoffice.org/wiki/Dictionaries Please note, that there is a configuration parameter "yudit.syntaxpath" that tells yudit where the external syntax files are, but as ~/.yudit/syntax directory is always used, you can put the dif, aff files as well as the library itself. To see this document in Yudit, just type howto syntax in the editor command area. ./doc/HOWTO-devanagari.txt0000644000175000017500000000603010434023120015326 0ustar henrichhenrichHow to use Devanagari fonts in Yudit Original: Sanjay Khatri 2000-02-03 Modified: Gaspar Sinai 2002-01-19 Modified: Gaspar Sinai 2006-05-21 Introduction Yudit is a free Unicode Editor, it can be used for editing text in Indic scripts in Unicode. Devnag fonts are modified public_domain dev fonts by Sandeep Sibal, , http://www.sibal.com/sandeep/dev/ Pre-requites 1. Download yudit-2.5.2 or later from www.yudit.org Follow installation instructions from http://www.yudit.org. 2. Download raghu.ttf font from http://rohini.ncst.ernet.in/indix/download/font/ and copy it into the /usr/share/yudit/fonts or ~/.yudit/fonts Note that raghu.ttf contains glyphs for Devanagari only - if you want to use other scripts you might want to consider code2000.ttf True Type font from http://home.att.net/~jameskass/ Note that code2000.ttf is a shareware font. For a non-paying free font just stick to raghu.ttf font. Good quality printing can be achieved only by using True Type fonts. Steps 3-5 (optional) 3. Get pango X11 font files for Indic. Please not that Yudit utilizes the PANGO_LIGATURE_HACK font property to render Indic scripts with X11 fonts: export CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome' cvs login cvs get pango-fonts Alternatively you can get them from: ftp://ftp.gtk.org/pub/gtk/v1.3/extras/ 4. Make pcf binary fonts: cd pango-fonts/indic/ make mkfontdir 5. Set up font search path - you should set this whenever X11 is restarted: cd pango-fonts/indic/ xset fp+ `pwd` Configuration After installing Yudit and the fonts you need to configure the fonts to be able to use them. First invoke and exit Yudit. This will create a ~/.yudit/yudit.properties file. You need to edit a font property in this file, for instance: yudit.font.TrueType=arial.ttf,raghu.ttf... yudit.font.Misc=*-iso10646-dev,*-iso8859-1, ... Select Devanagari for input in Yudit gui. This is a clustering kmap - which means that a whole cluster needs to be entered to get proper shaping. Developers To create other clustering kmaps use the mytool -type clkmap option, like: mytool -type clkmap -kmap MyKMap.kmap -rkmap MyKMap.kmap -write MyKMap.my Other Indic scripts could be added easily to Yudit. If you want to add Please look at the following files: mytool/uni/indic.txt - new character types need to be added swindow/SFontTTF.cpp - very little change is expected. swindow/sx11/SX11Font.cpp - some changes for pango fonts are needed. stoolkit/SCluster.cpp - vowel placement for fall-back rendering modifications are needed. More Font Links raghu.ttf: http://rohini.ncst.ernet.in/indix/download/font/ Author of Code2000: James Kass code2000.ttf: http://home.att.net/~jameskass/ Have fun! Gaspar Tokyo 2002-01-24 ./doc/HOWTO-vietnamese.txt0000644000175000017500000000271610434023716015407 0ustar henrichhenrichPhiên bản:2.5.4 Hộ trú: http://www.yudit.org/ Tác giả: Gaspar Sinai Bản quyền: Phát hành dưới điều kiện GNU General public license phiên bản 2 tháng 6 1991 dựa trên Tổ chức phần mềm tự do Đặc điểm: -soạn thảo văn bản Unicode với khả năng 2 hướng trái<-->phải -cho phép soạn ký tự. -cho phép biến dạng. -các script ấn-độ dương: Tamil,Devanagari,Bengali,Gujarati,Gurmukhi,Oriya Malayalam,Telugu,Kannada. -Giao diện họa -GUI- nhiều ngôn ngữ. -Chuyển đổi ký tự giữa các hệ mã. -DOS/Unix/Mac hệ tệp -có bàn phím đủ ngôn ngữ. -nhận dạng viết tay. -nhận 3 loại font :True type,Open type, và X11 -thử nghiệm font Pango X11 -Font ảo do chộn nhiều font true type với X11 -In dạng postcript với font ttf và bitmap X11 -tha hồ gỡ lại/làm lại -phóng độ nhấn phím -Giúp đỡ on-line -Cắt và ráp -Tìm/thay bài -Tới dòng/cột -UCS 4 được dùng -Kéo và Thả (chỉ trong unix) -Địa điểm dùng tư nhân- tiếng Hung cổ Càu đặt trong Linux configure --prefix=/usr/local make make install Phiên bản này đã để mặc định unicode tiếng việt. Sau khi đánh lịnh yudit nhớ chọn font : Misc tất cả lỗi lầm dịch sang tiếng việt đều do tôi.Không tị nào tại yudit và tác giả G Sinai. Xin gửi nhận sét cho hoan@wanadoo.fr ./doc/HOWTO-japanese.txt0000644000175000017500000000426110434023210015017 0ustar henrichhenrichJapanese input with canna and kinput2 ===================================== Canna - a conversion engine, like FreeWnn but it works on my machine (which is alpha) It does not need X server to run. Kinput2 - a front-end. This will display a nice input window. Yudit suppports kinut2 protocol, _JAPANESE_CONVERSION. This needs X server to run. Installation ============ http://www.yudit.org/download/Japanese Short install guide. *.alpha.rpm should be substituted with file names reported by the rpm --rebuild command. rpm --rebuild Canna-3.5b2-51.src.rpm rpm --i Canna-3.5b2-51.alpha.rpm rpm -iU Canna-devel-3.5b2-51.alpha.rpm rpm -iU Canna-libs-3.5b2-51.alpha.rpm rpm --rebuild kinput2-v3-14.src.rpm rpm -i kinput2-canna-wnn6-v3-14.alpha.rpm Start ===== probably in /etc/rc.d. Please use chkconfig --add canna for automatic start. Seee CHKCONFIG(8) for more info. manually: /etc/rc.d/init.d/canna start Make this start after you run X: kinput2 -canna & Usage ===== Kinput2 window should appear after you switch input to kinput2 in yudit. Udpate 2002-04-08 ================== I have added mappings between national standard JIS X 0213 on a best effort basis. For Yudit National standards are preferred to Unicode when selecting a fonts - this is the only way to select a particular glyph variant from unified CJK character. Font support is the only reason why I still keep these maps - text conversion is just a bonus. X11 bitmap fonts with -jisx0213*-1 -jisx0213*-2 are automatically recognized. They can be found at many places, for instance: http://www.mars.sphere.ne.jp/imamura/jisx0213.html For Shift_JISX0213 encoded True Type fonts please use shift-jis-3 converter, like this: yudit.font.JIS2000=wlmaru2000p.ttf:shift-jis-3 lmaru2000p.ttf can be found in: http://members11.tsukaeru.net/rare/font/ extendedWatanabeMincho3.ttf can be found in: http://www.asahi-net.or.jp/~sd5a-ucd/freefonts/extended-watanabe-mincho/index.html.ja.sjis New bonus text converters that can handle text with JISX0213 iso-2022-jp-3 euc-jp-3 - official name should be EUC-JISX0213 shift-jis-3 - official name should be Shift_JISX0213 Gaspar Sinai gaspar@yudit.org 2006-06-21 ./doc/HOWTO-keymap.txt0000644000175000017500000005223710437544076014552 0ustar henrichhenrich About .kmap files Mind Tuning: The Unicode theory and Unicode-savvy text editors make a clear (and useful) distinction among 1. the keyboard key(s) typed 2. the Unicode character(s) entered and stored in a file or buffer, and 3. the glyph(s) (i.e. the graphic shapes) that are displayed. Rendering: The mapping between the Unicode characters stored in a file or buffer and the display of glyphs is handled by a Rendering Engine, which can vary considerably in complexity, being fairly straightforward for Latin scripts and very complex for Arabic or Devanagari. Most users should be able to assume that the Rendering Engine is taken care of. Input Method: The mapping between the keyboard key(s) typed and the Unicode character(s) entered in a file or buffer is defined by an Input Method. Defining Input Methods: In Yudit, .kmap ("keymap") files with names like Arabic.kmap, Dutch.kmap and Hungarian.kmap provide the mapping between the key or keys physically typed by the user and the desired Unicode character(s) to be inserted in the edit buffer. Each .kmap file defines an Input Method, and almost 100 .kmap files are supplied with the Yudit download. Yudit users can switch among the input methods at will to facilitate entering text in multiple languages/scripts, even within the same document. Users can also define their own .kmap files to handle new exotic scripts or simply to define new entry methods that satisfy their own needs and tastes. For a single script, e.g. Arabic, Chinese, Esperanto or Hangul, there may be different kmap-defined input methods that appeal to different users. For example, Yudit comes supplied with three different .kmap files for Arabic input: Arabic.kmap ArabicTranslit.kmap ArabicKeyboard.kmap and you might not like any of them. That's OK, because it is fairly simple to write your own .kmap file. Writing a New .kmap File To write a new .kmap file, the user should first study the Unicode character implementation of the target script to determine the full set of Unicode values that need to be entered. For a Roman-based script like Esperanto, most of the characters are standard lower ASCII Roman and need no special handling; you type 'b' in Yudit and a 'b' gets inserted into the buffer. But Esperanto orthography has six oddly accented letters that need to be entered via a .kmap-defined input method. The six letters can be uppercase or lowercase, resulting in 12 separate characters, and these characters are defined in Unicode. For example, Esperanto orthography includes a 'c' letter with a circumflex accent. The Unicode codepoint for the lowercase version is 0x0109, and the codepoint for the uppercase version is 0x0108. In the Unicode specification, these are listed as Codepoint Official Unicode Name 0x0108 LATIN CAPITAL LETTER C WITH CIRCUMFLEX 0x0109 LATIN SMALL LETTER C WITH CIRCUMFLEX As there is no key on the ASCII keyboard for entering either of these characters directly, the most obvious solution is to enter them using multiple keystrokes. The basic syntax of each entry in the .kmap file is " InputKeystroke(s) = OutputUnicodeCharacter(s)" , surrounded by double quotes and terminated with a comma. Spaces around the equal sign and between the symbols are optional and are ignored if present. (Such spaces can improve the human readability of the file.) The format of these entries will be discussed in detail below. The Esperanto.kmap file supplied with Yudit includes the following straightforward entries. [The terminating commas do not appear to be absolutely necessary to the current parser, but technically they should be present.] "cx = 0x0109" , // LATIN SMALL LETTER C WITH CIRCUMFLEX "Cx = 0x0108" , // LATIN CAPITAL LETTER C WITH CIRCUMFLEX "CX = 0x0108" , // LATIN CAPITAL LETTER C WITH CIRCUMFLEX The InputKeystrokes are 8-bit values, entered either as printable letters like c and x (as in this example) or by their numerical ASCII values (see formats and special cases below). The output characters are 16-bit Unicode values, notated 0xHHHH, where H is a hex digit 0 to F. These entries have optional comments starting with // and continuing to the end of line. When the Esperanto entry method compiled from this source file is selected and the user types c followed by x, the sequence of these two keystrokes will be detected and intercepted by the input method, and a single Unicode character 0x0109 will be inserted into the edit buffer. (And if a suitable font is installed, Yudit will render the appropriate glyph on the screen.) Similarly, if the user types big C followed by either little x or big X, then the sequence will be intercepted and mapped into a single 0x0108 Unicode character. Thus multiple input keystrokes can be mapped to a single Unicode character, and there can be multiple sequences that map to the same Unicode character. Input keystroke sequences should be chosen with care to avoid ambiguity and clashes; for human convenience, the input sequences should also be maximally mnemonic. The choice of "cx" is a very suitable sequence for Esperanto entry of c-with-circumflex because 1. The letter x is not normally used in Esperanto orthography, and 2. There is already a well-known convention for typing Esperanto that uses "cx" for c-with-circumflex when the real letter is not available. However, there are other conventions for typing Esperanto, and some other user might prefer to define a slightly different Esperanto kmap file to satisfy their own taste and habits. The following entries, for example, could be put into a different EsperantoB.kmap file, or even added to the original Esperanto.kmap file. "c^ = 0x0109" , // LATIN SMALL LETTER C WITH CIRCUMFLEX "C^ = 0x0108" , // LATIN CAPITAL LETTER C WITH CIRCUMFLEX If such entries were defined, the typing c followed by ^ would result in Unicode character 0x0109 being inserted in the buffer. Similar for C followed by ^. The mappings can also be one-InputKey-to-one-UnicodeCharacter, and this is very common with keymaps for non-Roman scripts. Arabic has a letter named siin that sounds like 's' and one named raa' that sounds like 'r'. In ArabicTranslit.kmap, which as its name implies is based on a Roman transliteration, one finds the following straightforward one-to-one mappings. "s = 0x0633" , // type 's', get Unicode Arabic siin character "r = 0x0631" , // type 'r', get Unicode Arabic raa' character (In this case and elsewhere, one must study the Unicode documentation to see what the Unicode codepoint values are; in this case, you simply have to look up the information that Arabic siin has value 0x0633 and Arabic raa' has the value 0x0631. The Unicode charts for Arabic and other languages are easily examined starting from http://www.unicode.org/charts/) An Arabic keymap like this one, covering a whole Roman transliteration system, would appeal only to those people who know and like that particular transliteration. Those who prefer a different transliteration should define their own keymap. The only formal restriction for a new transliteration is that it be unambiguously mappable into proper Arabic Unicode characters. Other people entering Arabic might already be used to the keyboard layout on the PC or the Mac, and they might prefer to define keymaps that correspond to their favorite keyboard layouts (rather than to some kind of Roman transliteration). It is also conceivable that one (or multiple) input keystrokes could be mapped to multiple Arabic Unicode characters. For example, the Arabic sequence of characters laam followed by a bare 'alif character is properly and preferably encoded in a file or buffer just like that, as 0x0644 (laam) followed by 0x0627 (bare 'alif). One can therefore simply type laam, followed by 'alif, but suppose that some user preferred to think of them as a unit and preferred to enter them together with a single keystroke, say X. In such a case, the following one-to-many entry in a .kmap file would be appropriate: "X = 0x0644 0x0627" , // type just X to enter laam followed by 'alif Remember that Unicode makes a distinction between the key(s) typed, the Unicode character(s) encoded, and the glyph(s) rendered. Whether the user chooses to type laam followed by 'alif, or both at once using the shortcut defined just above, the Unicode characters inserted into the file or buffer should be the same. Unicode doesn't care how you _enter_ the characters--it simply defines what the encoded file should look like. Arabic orthography requires that laam followed by 'alif be _rendered_ together, and all Arabic fonts supply special glyphs for rendering the laam-'alif sequences. But the font-and-rendering considerations are altogether separate from the entry and encoding, and in a properly set up Arabic-capable system, the user should not have to worry about the rendering. Converting .kmap Files to .my Files .kmap files are the human-edited and human-readable _source_ files for keyboard mappings. Yudit, however, really works with .my files, which must be generated from the .kmap files. Study some of the .kmap files provided with the yudit release. By default, the yudit installation "prefix" is /usr, and the yudit executable is installed in /bin/yudit, which by default is /usr/bin/yudit. The .kmap source files are stored in /share/yudit/src/ and the .my files for the whole site are stored in /share/yudit/data/. (During installation, the 'prefix' variable may be modified manually, in which case the relevant bin and share directories may be somewhere other than /usr, which is the default prefix.) Files with names like Esperanto.kmap and Georgian.kmap are source files, written using any convenient text editor. To be used by Yudit, an .my file must be generated from the .kmap source file according to the following example, using the 'mytool' program supplied with Yudit. Let's assume that we have just written Georgian2.kmap to define a new input method for Georgian. $ mytool -type kmap -kmap Georgian2.kmap -rkmap Georgian2.kmap -write Georgian2.my If this new input method is intended only for private use by one user, then the user should copy the Georgian2.my file to the directory ~/.yudit/data/, i.e. to the directory named 'data', under the directory named ".yudit", which is in the user's own home directory. If the new entry method is intended for your whole site, then copy it to /share/yudit/data/, which by default is /usr/share/yudit/data/. More Detail on the Syntax of .kmap Files: Comments: Comments in .kmap files start with // and continue to the end of line. The sequence // is therefore "special" to the parser. It's a good idea to comment each entry. Mapping Entries: There can be only one entry (mapping) to a line. Each entry must be surrounded by double quotes. Technically, each entry should also be terminated with a comma. Each entry is of the form: " InputSymbol(s) = OutputSymbol(s) " , where the Input is one or more 8-bit ASCII keystrokes, represented as printable ASCII characters, or as octal, decimal or hexadecimal numbers. Eight-bit hexadecimal numbers are represented as 0xHH, where H is a hex digit from 0 to F. Octal-format numbers start with \0, e.g. \037. The Input and Output symbols are separated by an equal sign. The Output consists of one or more 16-bit _Unicode_ characters, each represented as 0xHHHH, where H is a hexadecimal digit 0 to F. Spaces around the equal sign and between symbols are ignored. From the point of view of the Input Method, the Input Symbols are keystrokes coming from the user; the Output Symbols are the Unicode characters to be inserted into the Yudit edit buffer. The following symbols are "special" inside .kmap files and require special attention: " double quotes (used to surround an entry) = equal sign (used to separate Input Symbols and Output Symbols) space (ignored around the equal sign and between symbols) + plus sign (interpreted by default as a positive prefix to a number) - minus sign (interpreted by default as a negative prefix to a number) \ backslash (used to literalize a special symbol) Th special symbols are literalized, where necessary, by preceding them with the backslash "literalizer" symbol; e.g. \= denotes a literal equal sign. The literal backslash itself is notated \\. Examples: " s = 0x0633 " , // one to one " cx = 0x0109 " , // many to one " \= = 0x0109 " , // type a literal equal sign to input 0x0109 " \\ ~ n = 0x00f1 " , // allow LaTeX-like input of n-with-tilde; // the user types literal \ then ~ then n " \\ \" a = 0x00E4 " , // allow LaTeX-like input of a-with-dieresis; // the user types literal \ then literal " // then a to input Unicode a-with-dieresis // (a with two dots above) " \+u = 0x00FC " , // user types literal + followed by u // to input 0x00FC, which is u with dieresis // (two dots above) " X = 0x0644 0x0627 ", // one to many " 0x32 = 0x0662 " , // type ASCII '2' get ARABIC-INDIC DIGIT 2 Literal double quote: Each whole entry is surrounded by double quotes, so the double quote is "special" in .kmap files. A literal double quote can be included inside an entry by typing \", where the backslash is the escape or "literalizing" character. Another way to indicate a literal double quote is to give its 8-bit lower ASCII value, e.g. " \\ 0x22 a = 0x00E1 " , // 0x22 is the literal double quote symbol Literal backslash: To indicate a literal backslash as input, use \\ or indicate the 8-bit ASCII numeric value. " \\ \" a = 0x00E4 " , // \\ denotes a literal backslash symbol " 0x5c 0x22 a = 0x00E1 " , // equivalent to the entry just above Similarly, the equal sign separates the Input and Output; where necessary, a literal input equal sign is indicated as \= or \0x3D. " \= = 0x2345 " , " 0x3D = 0x2345 " , // 0x3d is the literal equal sign The + and - can are interpreted by default by the parser as part of a numerical value, so if they are intended as literal input, then they should be literalized in the usual ways, as in this example from Georgian.kmap "\+z = 0x10df " , or using the ASCII value of the plus sign (0x2B) " 0x2b z = 0x10df " , Literal white spaces: Whitespace between between characters in a kmap entry are normally ignored; this allows you to space out the input sequences for better human readability. To notate a literal space as part of the Input, literalize it with a preceding backslash or indicate the 8-bit ASCII value. " \ = 0x0020 " , // space literalized with preceding backslash " 0x20 = 0x0020 " , // 0x20 is the space ASCII value Digits: By default a string segment that starts with a digit 0-9 is considered a numeric value, not the literal symbols 0-9. To indicate the input of a literal digit, indicate its 8-bit ASCII value. " 0x32 = 0x0662 " , // 0x32 is the ASCII value of '2' Number formats. Input keystrokes can be notated as octal, decimal or hexadecimal numbers, e.g. a period (full stop) could be notated equivalently as 46 (decimal), \056 (octal) or 0x2E. More Examples, taken from Kana.kmap: "\033 KE=0x30F5", // SMALL KE "\"R=0x201D", // RIGHT DOUBLE QUOTATION MARK "kke=0x3063 0x3051", "0x20 = 0x201D", // INPUT LITERAL BLANK "0x3D=0x003D", // INPUT '=' SIGN THIS WAY The // sequence is special in kmap files, being the introducer of a comment. If you want the sequence // as part of the Input, then the two slashes need to be separated by a space, e.g "&/ /=0x005C", // YUDIT NEEDS SPACE BETWEEN / / // to avoid treating // as the comment introducer Yudit Strategy for Input Matching Clashes: It is illegal to have the same input sequence map into two different outputs. // this is an illegal clash " cx = 0x0109 " , " cx = 0x0108 " , Where multiple input sequences start with the same substring but have different lengths, the "greedy" matching algorithm prefers the longest match. The Esperanto mapping for c-with-circumflex could conceivably be done as follows: " cx = 0x0109 " , // lowercase c with circumflex " cxx = 0x0108 " , // uppercase C with circumflex Then if the user typed c, x, and anything but another x, the value 0x0109 would be inserted in the buffer. If the user typed c, x, and x, then the greedy algorithm would match the longer input sequence and insert 0x0108 into the buffer. (Such tricks are possible, but are hardly recommended.) Sub-translations: "Sub-translations" are currently used only for the Yudit-supplied Hangul-entry keymap (for Korean orthography) and for the Yudit-supplied Unicode-entry keymap; most users don't need to know about sub-translations. [This part of the documentation should be reviewed and expanded. I may have completely misunderstood it.] For entering whole Hangul characters, one can use a notation involving "sub-translations". If the translation can be broken down to (maximum 5) sub-translations then the first line in the .kmap file may contain: "string1+string2+string3...", The subsequent lines between "begin string1", and "end string1" contain the sub-translation lines. The resulting Unicode number is the value of the sub-translations added up. Sub-translation may contain empty strings "=0x0021", but consecutive ones cannot. Matching strategy for sub-translations: When the first sub-translation would match the null string, one character may be borrowed from the previous translation. Autoshaping information [This section needs to be reviewed and expanded.] The Yudit-supplied Arabic.kmap and ArabicTranslit.kmap files contain "shaping" information, presumably for proper rendering of Arabic. (Many special ligatures are possible in Arabic rendering, but only the laam+alif ones are absolutely required. The following four mysterious entries would appear to indicate the entry sequences and Unicode value sequences that require special rendering.) // Shaping part using shape.mys. Autogenerated. // "l aM=0x0644 0x0622", // ?? LAM ALEF WITH MADDA ABOVE "l aH=0x0644 0x0623", // ?? LAM ALEF WITH HAMZA ABOVE "l aB=0x0644 0x0625", // ?? LAM ALEF WITH HAMZA BELOW "l a=0x0644 0x0627", // ?? LAM ALEF // // End of shaping part. Autogenerated. // Gaspar [2003-01-21] clarifies that this section was auto-generated by bin/arabickmap.pl, and "bin/shape.pl generates a shape.mys shaper map that is responsible for Arabic/Syriac shaping. As Yudit is a plain text editor, it needs to know the obligatory ligatures, the ones that definitely should go into one box. Those four ligatures in the example are the obligatory ligatures. "Please note: in fact in yudit 2.7.+ you don't need to have it because additional characters and diacritics will automatically be added to form a ligature, so in fact the aforementioned ligature can be entered by simply inputting the components." [end of quotation] As I interpret this, Arabic kmap files can now be written without these four mysterious lines; when the user types laam followed by some variety of 'alif letter, the appropriate ligature glyph should be displayed automatically. [This section subject to correction.] Generic .mys Source Text-Conversion Files [for the future] [This section needs to be reviewed and expanded.] This document describes the format for .kmap files, which are converted into .my files. The generic .mys source files provide a few more features than the standard .kmap files, and the .mys format will someday be recommended as a source format for new kmap files. The only documentation currently available for .mys files is in the Yudit download: http://www.yudit.org/download/yudit-2.7.2/mytool/mys/example.mys Better documentation will be required before the average user can understand and use .mys files. If you need a keymap file for SMP (Supplementary Multilingual Plane) all you can use is mys format. Take a look at the source mys file in Yudit source tree: yudit-2.7.8/mytool/mys/OldItalic.mys You can compile OldItalic.mys with mytool -convert my -write OldItalic.my -mys OldItalic.mys Gaspar Sinai Tokyo 2006-05-21 Gaspar Sinai Tokyo 2001-01-11 Edited and augmented: ken.beesley@xrce.xerox.com 2003-02-06 ./doc/HOWTO-berber.txt0000644000175000017500000000151407572027124014511 0ustar henrichhenrichYudit in Berber By Bruno_Cauchy_Lefebvre Sun Nov 24 19:42:07 UTC 2002 Introduction Yudit in Berber has been validated with Caslon font http://bibliofile.mc.duke.edu/gww/fonts/Caslon/Caslon.html Note that Berber use extensively diacritics in 03xx Unicode range Berber keyboards maps are usable with both French AZERTY or English QWERTY keyboards. Berber keyboards maps are : 1) Berbere-standard : for standard texts in Berber 2) Berbere-etendu : for linguistic texts about Berber variants 3) Berbere-conversion1 : for conversion of texts written with fonts that have substituted iso-8859-1 glyphs with Berber glyphs. To convert these texts, open it with "File Type => Berbere-conversion1" and save them with "File Type => utf-8". More documentation on http://www.yudit.org http://edition.berbere.free.fr ./doc/it/0000755000175000017500000000000011334661334012222 5ustar henrichhenrich./doc/it/FAQ.TXT0000644000175000017500000001611011334661334013231 0ustar henrichhenrichDomande ricorrenti sull'editor unicode Yudit ============================================ Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2006-05-21 Traduzione: Marco Ciampa Q1: Come posso vedere ancora questo documento? A1: Battere `help' nell'area di comando. Allo stesso modo è possibile ottenere una pagina di test se si batte `test' nell'area di comando. Battere per esempio 'howto japanese' o 'howto configure' per ottenere le pagine howto. Q2: Dove posso trovare degli aggiornamenti? A2: Scaricali da http://www.yudit.org/ Q3: Ho premuto il tasto di salvataggio ma non è successo niente. Perché? A3: Yudit ha una riga di comando. Molto probabilmente si deve solo premere il tasto invio. Q4: Cos'è l'[A capo] sull'angolo in alto a destra che mostra "Unix"? A4: I caratteri di 'ritorno a capo' sono: UNIX='\n' - fine riga Unix DOS='\r\n' - fine riga DOS MAC='\r' - fine riga MAC LS = U+2028 - separatore di riga Unicode PS = U+2029 - separatore di paragrafo Unicode In Yudit li puoi mescolare - puoi per esempio creare un file che ha caratteri di a capo DOS e Unix. Ma è meglio evitare di mescolare se possibile. Q5: Come posso ottenere l'elenco delle codifiche (opzione -e)? A5: Batti 'man uniconv' o `uniconv -h' in una finestra comandi. Q6: Come posso aggiungere il mio file di inserimento tastiera? A6: Il file potrebbe già esistere in /usr/share/yudit/data in questo caso basta aggiungerlo questo a /usr/share/yudit/config/yudit.properties Se non c'è, è necessario convertire il file sorgente kmap nel formato binario: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Poi bisogna copiare My.my in ~/.yudit/data cp My.my ~/.yudit/data Speditemi il vostro file kmap (sorgente) per l'inclusione nella prossima distribuzione. Per ulteriori informazioni sui file kmap, vedere /usr/share/yudit/doc/keymap-format.txt Il codice sorgente delle kmap accompagnano yudit in /usr/share/yudit/src/ Notare che i file kmap possono essere usati come convertitori di testo e anche come mappe caratteri. Q7: Come posso vedere i messaggi nella mia lingua? A7: Scarica il codice sorgente e leggi il file README.TXT che contiene le spiegazioni su come fare. Poi speditemi le traduzioni in maniera che possa includerle nelle future versioni. Q8: Come posso aggiungere un carattere TrueType? A8: Mettere file-carattere.ttf e qualche-altro-file-carattere.ttf in /usr/share/yudit/fonts o in ~/.yudit/fonts dopodiché modificare /usr/share/yudit/config/yudit.properties aggiungendo un nuovo carattere virtuale MioCarattere yudit.font.MioCarattere=file-carattere.ttf, qualche-altro-file-carattere.ttf,.. Ora è possibile usare questo carattere nella finestra dell'editor se si aggiunge in yudit.editor.fonts=...,MioCarattere,... o nella finestra grafica se lo si aggiunge a: yudit.fonts=...,MioCarattere,... Q9: Ci sarà una versione per Windows? A9: Yudit ha un toolkit generico a finestre. Questo rende possibile il port di Yudit su, per esempio svgalib, molto veloce. Ho fatto il port per mia moglie Yuko in dicembre del 2001. Questa è stata la prima e ultima volta che ho toccato Windows. Q10: Quanto è buono Yudit come editor Unicode? A10: Ho provato a implementare lo standard Unicode dove aveva senso. Ci sono alcuni punti oscuri, vedere /usr/share/yudit/doc/HOWTO-bidi.txt per le informazioni sull'aderenza alla bidirezionalità. Q11: Ho specificato 3 file nella riga di comando ma ne vedo solo uno. A11: Sono nel buffer della cronologia. Se si va nell'area di immissione comandi e si preme il tasto freccia in su (o Ctrl-k) o freccia in giù (o Ctrl-j) puoi scorrere la cronologia dei file. Q12: Cosa sono le scorciatoie? A12: Molti sono visibili - i suggerimenti gialli li mostrano come una sottolineatura. Alcuni funzionano sia con il tasto Ctrl che con il tasto Alt. Attualmente l'editor ha le seguenti scorciatoie: Escape - passa da modalità comando a modalità modifica Home - va all'inizio della riga End - va alla fine della riga b - Pagina su f - Pagina giù k - Su n,j - Giù h - Sinistra l - Destra m - Cancella l'intera riga x - Cancella la selezione v - Incolla l'ultima selezione Se il tasto Meta viene premuto durante il movimento del cursore, verrà selezionato il testo. Il doppio clic del mouse seleziona una parola e il triplo clic l'intera riga. Q13: Come posso leggere il contenuto di un file mappa tasti binario? A13: È possibile fare un'estrazione del sorgente in questo modo: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: Come posso inserire velocemente un carattere unicode? A14: Cambiare ingresso a [unicode], inserire uxxxx o Uxxxxxxxx dove x è un numero esadecimale. Q15: Yudit è in grado di sostituire del testo? A15: Nell'area di comando battere replace vecchio-testo nuovo-testo e premere invio per ogni ricerca/sostituzione. Q16: Come posso trovare la modalità manuale di inserimento testo? A16: Fare clic sulla freccia blu (metodo di inserimento). Seleziona manolibera a uno dei tasti F. Q17: Come posso disabilitare l'evidenziazione della sintassi? A17: Dall'area di comando battere: 'syntax none'. Le opzioni disponibili vengono stampate nel messaggio di errore che viene generato battendo semplicemente 'syntax'. Si può impostare anche nel file di configurazione. Q18: Come si fa a disabilitare la funzione di word wrap? A18: Dall'area di comando battere: 'wordwrap false'. Battendo 'wordwrap true' si abilita il word wrap. Si può impostare anche nel file di configurazione. Appendice ========= 1.1. Esempi di mappa tasti I seguenti esempi riguradano alcune mappe tasti che accompagnano Yudit. Russo Mappa le lettere fonetiche Russe. Quelle non ovvie sono: yo ottiene ё , c ottiene ь, q ottiene ъ x ottiene ы ee ottiene э Ungerese Mappa i caratteri ungheresi e tedeschi. I caratteri accentati possono essere inseriti con il carattere inglese seguito dall'accento. Esempi: a' diventa á , o: diventa ö , o" diventa ő SS produce la tedesca ß , Ss ottiene il carattere di paragrafo §. Kana Mappa Romaji in Hiragana e Katakana. Le minuscole sono usate per l'Hiragana e le maiuscole per il Katakana. Le non ovvie sono: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonici Con questa mappa si può usare gli mnemonici RFC1345 per inserire i caratteri. Alcuni esempi: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML mappa SGML a unicode. Esempi: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul mappa la transliterazione Roman nei caratteri Hangul. Viene usata la transliterazione ISO/TC46/SC2/WG4. Per ulteriori informazioni vedere: http://www.hansoft.com/hangul/faq.html Alcuni esempi: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/it/FAQ.TXT.in0000644000175000017500000001605011331217532013633 0ustar henrichhenrichDomande ricorrenti sull'editor unicode Yudit ============================================ Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2006-05-21 Traduzione: Marco Ciampa Q1: Come posso vedere ancora questo documento? A1: Battere `help' nell'area di comando. Allo stesso modo è possibile ottenere una pagina di test se si batte `test' nell'area di comando. Battere per esempio 'howto japanese' o 'howto configure' per ottenere le pagine howto. Q2: Dove posso trovare degli aggiornamenti? A2: Scaricali da http://www.yudit.org/ Q3: Ho premuto il tasto di salvataggio ma non è successo niente. Perché? A3: Yudit ha una riga di comando. Molto probabilmente si deve solo premere il tasto invio. Q4: Cos'è l'[A capo] sull'angolo in alto a destra che mostra "Unix"? A4: I caratteri di 'ritorno a capo' sono: UNIX='\n' - fine riga Unix DOS='\r\n' - fine riga DOS MAC='\r' - fine riga MAC LS = U+2028 - separatore di riga Unicode PS = U+2029 - separatore di paragrafo Unicode In Yudit li puoi mescolare - puoi per esempio creare un file che ha caratteri di a capo DOS e Unix. Ma è meglio evitare di mescolare se possibile. Q5: Come posso ottenere l'elenco delle codifiche (opzione -e)? A5: Batti 'man uniconv' o `uniconv -h' in una finestra comandi. Q6: Come posso aggiungere il mio file di inserimento tastiera? A6: Il file potrebbe già esistere in @YUDIT_DATA@/data in questo caso basta aggiungerlo questo a @YUDIT_DATA@/config/yudit.properties Se non c'è, è necessario convertire il file sorgente kmap nel formato binario: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Poi bisogna copiare My.my in ~/.yudit/data cp My.my ~/.yudit/data Speditemi il vostro file kmap (sorgente) per l'inclusione nella prossima distribuzione. Per ulteriori informazioni sui file kmap, vedere @YUDIT_DATA@/doc/keymap-format.txt Il codice sorgente delle kmap accompagnano yudit in @YUDIT_DATA@/src/ Notare che i file kmap possono essere usati come convertitori di testo e anche come mappe caratteri. Q7: Come posso vedere i messaggi nella mia lingua? A7: Scarica il codice sorgente e leggi il file README.TXT che contiene le spiegazioni su come fare. Poi speditemi le traduzioni in maniera che possa includerle nelle future versioni. Q8: Come posso aggiungere un carattere TrueType? A8: Mettere file-carattere.ttf e qualche-altro-file-carattere.ttf in @YUDIT_DATA@/fonts o in ~/.yudit/fonts dopodiché modificare @YUDIT_DATA@/config/yudit.properties aggiungendo un nuovo carattere virtuale MioCarattere yudit.font.MioCarattere=file-carattere.ttf, qualche-altro-file-carattere.ttf,.. Ora è possibile usare questo carattere nella finestra dell'editor se si aggiunge in yudit.editor.fonts=...,MioCarattere,... o nella finestra grafica se lo si aggiunge a: yudit.fonts=...,MioCarattere,... Q9: Ci sarà una versione per Windows? A9: Yudit ha un toolkit generico a finestre. Questo rende possibile il port di Yudit su, per esempio svgalib, molto veloce. Ho fatto il port per mia moglie Yuko in dicembre del 2001. Questa è stata la prima e ultima volta che ho toccato Windows. Q10: Quanto è buono Yudit come editor Unicode? A10: Ho provato a implementare lo standard Unicode dove aveva senso. Ci sono alcuni punti oscuri, vedere @YUDIT_DATA@/doc/HOWTO-bidi.txt per le informazioni sull'aderenza alla bidirezionalità. Q11: Ho specificato 3 file nella riga di comando ma ne vedo solo uno. A11: Sono nel buffer della cronologia. Se si va nell'area di immissione comandi e si preme il tasto freccia in su (o Ctrl-k) o freccia in giù (o Ctrl-j) puoi scorrere la cronologia dei file. Q12: Cosa sono le scorciatoie? A12: Molti sono visibili - i suggerimenti gialli li mostrano come una sottolineatura. Alcuni funzionano sia con il tasto Ctrl che con il tasto Alt. Attualmente l'editor ha le seguenti scorciatoie: Escape - passa da modalità comando a modalità modifica Home - va all'inizio della riga End - va alla fine della riga b - Pagina su f - Pagina giù k - Su n,j - Giù h - Sinistra l - Destra m - Cancella l'intera riga x - Cancella la selezione v - Incolla l'ultima selezione Se il tasto Meta viene premuto durante il movimento del cursore, verrà selezionato il testo. Il doppio clic del mouse seleziona una parola e il triplo clic l'intera riga. Q13: Come posso leggere il contenuto di un file mappa tasti binario? A13: È possibile fare un'estrazione del sorgente in questo modo: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: Come posso inserire velocemente un carattere unicode? A14: Cambiare ingresso a [unicode], inserire uxxxx o Uxxxxxxxx dove x è un numero esadecimale. Q15: Yudit è in grado di sostituire del testo? A15: Nell'area di comando battere replace vecchio-testo nuovo-testo e premere invio per ogni ricerca/sostituzione. Q16: Come posso trovare la modalità manuale di inserimento testo? A16: Fare clic sulla freccia blu (metodo di inserimento). Seleziona manolibera a uno dei tasti F. Q17: Come posso disabilitare l'evidenziazione della sintassi? A17: Dall'area di comando battere: 'syntax none'. Le opzioni disponibili vengono stampate nel messaggio di errore che viene generato battendo semplicemente 'syntax'. Si può impostare anche nel file di configurazione. Q18: Come si fa a disabilitare la funzione di word wrap? A18: Dall'area di comando battere: 'wordwrap false'. Battendo 'wordwrap true' si abilita il word wrap. Si può impostare anche nel file di configurazione. Appendice ========= 1.1. Esempi di mappa tasti I seguenti esempi riguradano alcune mappe tasti che accompagnano Yudit. Russo Mappa le lettere fonetiche Russe. Quelle non ovvie sono: yo ottiene ё , c ottiene ь, q ottiene ъ x ottiene ы ee ottiene э Ungerese Mappa i caratteri ungheresi e tedeschi. I caratteri accentati possono essere inseriti con il carattere inglese seguito dall'accento. Esempi: a' diventa á , o: diventa ö , o" diventa ő SS produce la tedesca ß , Ss ottiene il carattere di paragrafo §. Kana Mappa Romaji in Hiragana e Katakana. Le minuscole sono usate per l'Hiragana e le maiuscole per il Katakana. Le non ovvie sono: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonici Con questa mappa si può usare gli mnemonici RFC1345 per inserire i caratteri. Alcuni esempi: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML mappa SGML a unicode. Esempi: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul mappa la transliterazione Roman nei caratteri Hangul. Viene usata la transliterazione ISO/TC46/SC2/WG4. Per ulteriori informazioni vedere: http://www.hansoft.com/hangul/faq.html Alcuni esempi: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/vi/0000755000175000017500000000000011334661334012224 5ustar henrichhenrich./doc/vi/FAQ.TXT0000644000175000017500000001223411334661334013236 0ustar henrichhenrichFAQ soạn thảo unicode Yudit ---------------------------- phiên bản: 2.9.2 tác giả: Gaspar Sinai ngày: Tokyo 2006-05-21 H1: Làm sao hiển thị lại cái faq này? Đ1: Trong thanh_lệnh ở khung dưới ,nhấn 'help' hoặc có thể nhấn 'howto configure' ,'howto japanese' để xem các trang "háo_tu" H2: Lấy cập nhật ở đâu? (tư liệu mới của yudit) Đ2: Tải về từ http://www.yudit.org H3: Tôi ấn nút 'Lưu" chẳng thấy phát hiện gì cả. tại sao? Đ3: Yudit hoạt động trên từng 'dòng lịnh' .Chắc chỉ cần nhấn 'enter hay return' H4: cái chữ 'xuống dòng' trên thanh nhãn góc phải ,thường có chữ Unix nghĩa là gì ? Đ4: Đánh dấu cuối dòng tùy hệ tệp dùng: Unix='\n' DOS='\r\n' Mac='\r' LS= U+2028 xuống dòng trong unicode PS= U+2029 xuống đoạn văn Trong Yudit có thể chộn các dấu này được,nhưng hãy tránh dùng chộn H5: Làm sao biết các hệ mã ký tự? (chọn -e) Đ5: Dùng lịnh 'man uniconv' hay 'uniconv -h' trong một "cửa shell" H6: Làm sao dùng tệp phím riêng của tôi? Đ6: Rất có thể đã có trong /usr/share/yudit/data trong trường hợp này chỉ cần cài thêm /usr/share/yudit/config/yudit.properties nếu không , phải đổi nguồn kmap sang dạng bin bằng: mytool -type kmap -kmap My.kmap -rkmap -My.kmap -write My.my Sau đó phải cóp My.my vào ~/.yudit/data cp My.my ~/.yudit/data Nhớ gửi cho tôi tệp kmap nguồn phím đồ họa của bạn Chi tiết về kmap đọc ở /usr/share/yudit/doc/keymap-format.txt Các nguồn kmap cho yudit trong /usr/share/yudit/src/ Nhắc lại là các tệp kmap dùng chuyển được code và làm font đồ họa nữa. H7: Làm sao xem các báo hiệu trong tiếng nước tôi? Đ7: Trong Readme.txt có dẫn cách dịch và chuyển tiếng.Khi làm xong nhớ gửi bản dịch cho tôi để ghép vào cho phiên bản mới. H8: Làm sao ghép thêm font True type ? Đ8: Cài các font-file.ttf,some-other-font.ttf này vào /usr/share/yudit/fonts hay ~/.yudit/fonts sau đó nhớ đổi /usr/share/yudit/config/yudit.properties nạp thêm font ảo Myfont yudit.font.Myfont=font-file.ttf, some-other-font.ttf muốn dùng trong soạn thảo windows nạp thêm yudit.editor.fonts=...,Myfont,... muốn dùng trong GUI , thêm yudit.fonts=...,Myfont,.. H9: Bao giờ có phiên bản cho Windows ? Đ9: Yudit là công cụ trừu tượng màn hình.Cái này ,cũng như svgalib ,cho chuyển hệ màn hình rất nhanh. Tôi đã làm cho bà vợ Yuko tháng chạp năm 2001.Chắc đó là lần đầu và cũng sẽ là lần cuối tôi chạm tới Windows. H10: Cái soạn thảo unicode Yudit có tuyệt lắm không? Đ10: Tôi đã cố theo chuẩn unicode, nhưng vẫn vướng đôi chuyện về hướng viết (trái và phải) xin đọc /usr/share/yudit/doc/HOWTO_bidi.txt phần "vẽ chữ " (ng dịch: chắc chữ tầu,ấn,arập...) đang tiến hành H11: tôi định rõ 3 tệp trong dòng lịnh mà chỉ thấy có 1. Đ11: Nó nằm trong buffer đã qua;Vào thanh lệnh ,nhấn phím mũi tên lên/xuống (ctrl-k/ctrl-j)sẽ xem lại các lịnh đã qua H12 Kết nối các phím_liên_kết nóng hổi như thế nào ? Đ12 Có thể xem hầu hết - chỉ dẫn thủ thuật mầu vàng gạch dưới chữ.. Đa số chạy với phím Ctrl hay Alt. Hiện tại bộ biên soạn ghép có các phím_liên_kết sau: Escape - chuyển qua lại giữa dạng hoạt động và dạng biên soạn Home- Trở tới đầu dòng End - Đi tới cuối dòng b - Trang trước f - Trang sau k - Lên n,j - Xuống h - Trái l - Phải m - Xóa cả dòng x - Xóa chỗ đã chọn v - Ghép chỗ đã chọn lần trước. Muốn chọn dòng viết thì cùng nhấn phím Meta trong lúc chuyển mui trỏ.Kích_đôi chuột cho chọn chữ,kích_ba_lần chuột thì chọn cả câu. H13:Làm sao đọc tệp kmap dạng bin? Đ13: Tạo lại nguồn bằng: mytool -my /usr/share/yudit/data/GreekBible.my -convert mys -write GreekBible.mys H14:Làm sao nhập lẹ một ký tự unicode? Đ14: Đổi "input" sang unicode nhấn uxxxx hay uxxxxxxxx x là số hệ 16 H15: Yudit có dùng hàm "thay" được không? Đ15: trong thanh lệnh đánh replace bàicũ bàimới rồi nhấn enter mỗi lần find/replace H16: Làm sao kiếm được phương án cài chữ ? Đ16: Kích vào mui tên xanh (phương án cài chữ).Chọn cách viết tay -freehand- cho một phím F. H17: Làm sao tắt cái bật sáng cú pháp ? Đ17: Đánh vào vùng truyền lịnh :'không cú_pháp' -syntax none- Các phần được chọn sẽ in trong lá báo lỗi nếu bạn chỉ đánh 'syntax' Điều này có thể ghi vào tệp config H18: Làm sao ngăn sự cố cuối_dòng _vòng trở_lại ? Đ18 Trong vùng chuyền lịnh ,đánh 'wordwrap false' Nếu đánh 'wordwrap true' lại cho phép cuối_dòng _vòng trở_lại Điều này có thể ghi vào tệp config Phụ lục ------- xin đọc faq.txt ./doc/vi/FAQ.TXT.in0000644000175000017500000001223411331217560013636 0ustar henrichhenrichFAQ soạn thảo unicode Yudit ---------------------------- phiên bản: 2.9.2 tác giả: Gaspar Sinai ngày: Tokyo 2006-05-21 H1: Làm sao hiển thị lại cái faq này? Đ1: Trong thanh_lệnh ở khung dưới ,nhấn 'help' hoặc có thể nhấn 'howto configure' ,'howto japanese' để xem các trang "háo_tu" H2: Lấy cập nhật ở đâu? (tư liệu mới của yudit) Đ2: Tải về từ http://www.yudit.org H3: Tôi ấn nút 'Lưu" chẳng thấy phát hiện gì cả. tại sao? Đ3: Yudit hoạt động trên từng 'dòng lịnh' .Chắc chỉ cần nhấn 'enter hay return' H4: cái chữ 'xuống dòng' trên thanh nhãn góc phải ,thường có chữ Unix nghĩa là gì ? Đ4: Đánh dấu cuối dòng tùy hệ tệp dùng: Unix='\n' DOS='\r\n' Mac='\r' LS= U+2028 xuống dòng trong unicode PS= U+2029 xuống đoạn văn Trong Yudit có thể chộn các dấu này được,nhưng hãy tránh dùng chộn H5: Làm sao biết các hệ mã ký tự? (chọn -e) Đ5: Dùng lịnh 'man uniconv' hay 'uniconv -h' trong một "cửa shell" H6: Làm sao dùng tệp phím riêng của tôi? Đ6: Rất có thể đã có trong /usr/share/yudit/data trong trường hợp này chỉ cần cài thêm /usr/share/yudit/config/yudit.properties nếu không , phải đổi nguồn kmap sang dạng bin bằng: mytool -type kmap -kmap My.kmap -rkmap -My.kmap -write My.my Sau đó phải cóp My.my vào ~/.yudit/data cp My.my ~/.yudit/data Nhớ gửi cho tôi tệp kmap nguồn phím đồ họa của bạn Chi tiết về kmap đọc ở /usr/share/yudit/doc/keymap-format.txt Các nguồn kmap cho yudit trong /usr/share/yudit/src/ Nhắc lại là các tệp kmap dùng chuyển được code và làm font đồ họa nữa. H7: Làm sao xem các báo hiệu trong tiếng nước tôi? Đ7: Trong Readme.txt có dẫn cách dịch và chuyển tiếng.Khi làm xong nhớ gửi bản dịch cho tôi để ghép vào cho phiên bản mới. H8: Làm sao ghép thêm font True type ? Đ8: Cài các font-file.ttf,some-other-font.ttf này vào /usr/share/yudit/fonts hay ~/.yudit/fonts sau đó nhớ đổi /usr/share/yudit/config/yudit.properties nạp thêm font ảo Myfont yudit.font.Myfont=font-file.ttf, some-other-font.ttf muốn dùng trong soạn thảo windows nạp thêm yudit.editor.fonts=...,Myfont,... muốn dùng trong GUI , thêm yudit.fonts=...,Myfont,.. H9: Bao giờ có phiên bản cho Windows ? Đ9: Yudit là công cụ trừu tượng màn hình.Cái này ,cũng như svgalib ,cho chuyển hệ màn hình rất nhanh. Tôi đã làm cho bà vợ Yuko tháng chạp năm 2001.Chắc đó là lần đầu và cũng sẽ là lần cuối tôi chạm tới Windows. H10: Cái soạn thảo unicode Yudit có tuyệt lắm không? Đ10: Tôi đã cố theo chuẩn unicode, nhưng vẫn vướng đôi chuyện về hướng viết (trái và phải) xin đọc /usr/share/yudit/doc/HOWTO_bidi.txt phần "vẽ chữ " (ng dịch: chắc chữ tầu,ấn,arập...) đang tiến hành H11: tôi định rõ 3 tệp trong dòng lịnh mà chỉ thấy có 1. Đ11: Nó nằm trong buffer đã qua;Vào thanh lệnh ,nhấn phím mũi tên lên/xuống (ctrl-k/ctrl-j)sẽ xem lại các lịnh đã qua H12 Kết nối các phím_liên_kết nóng hổi như thế nào ? Đ12 Có thể xem hầu hết - chỉ dẫn thủ thuật mầu vàng gạch dưới chữ.. Đa số chạy với phím Ctrl hay Alt. Hiện tại bộ biên soạn ghép có các phím_liên_kết sau: Escape - chuyển qua lại giữa dạng hoạt động và dạng biên soạn Home- Trở tới đầu dòng End - Đi tới cuối dòng b - Trang trước f - Trang sau k - Lên n,j - Xuống h - Trái l - Phải m - Xóa cả dòng x - Xóa chỗ đã chọn v - Ghép chỗ đã chọn lần trước. Muốn chọn dòng viết thì cùng nhấn phím Meta trong lúc chuyển mui trỏ.Kích_đôi chuột cho chọn chữ,kích_ba_lần chuột thì chọn cả câu. H13:Làm sao đọc tệp kmap dạng bin? Đ13: Tạo lại nguồn bằng: mytool -my /usr/share/yudit/data/GreekBible.my -convert mys -write GreekBible.mys H14:Làm sao nhập lẹ một ký tự unicode? Đ14: Đổi "input" sang unicode nhấn uxxxx hay uxxxxxxxx x là số hệ 16 H15: Yudit có dùng hàm "thay" được không? Đ15: trong thanh lệnh đánh replace bàicũ bàimới rồi nhấn enter mỗi lần find/replace H16: Làm sao kiếm được phương án cài chữ ? Đ16: Kích vào mui tên xanh (phương án cài chữ).Chọn cách viết tay -freehand- cho một phím F. H17: Làm sao tắt cái bật sáng cú pháp ? Đ17: Đánh vào vùng truyền lịnh :'không cú_pháp' -syntax none- Các phần được chọn sẽ in trong lá báo lỗi nếu bạn chỉ đánh 'syntax' Điều này có thể ghi vào tệp config H18: Làm sao ngăn sự cố cuối_dòng _vòng trở_lại ? Đ18 Trong vùng chuyền lịnh ,đánh 'wordwrap false' Nếu đánh 'wordwrap true' lại cho phép cuối_dòng _vòng trở_lại Điều này có thể ghi vào tệp config Phụ lục ------- xin đọc faq.txt ./doc/te/0000755000175000017500000000000011334661334012216 5ustar henrichhenrich./doc/te/FAQ.TXT0000644000175000017500000003310411334661334013227 0ustar henrichhenrichవైయుడిట్ యూనికోడ్ ఎడిటొర్ తరచుగా అడిగే ప్రశ్నలు ======================== వర్శన్: ౨.౮.౧ రచయత: గాశ్పర్ సినాయి స్తలము మరియు తేది: టోక్యో ౨౦౦౩-౦౬-౨౫ తెలుగు అనువాదకుడు: కృష్ణ దాస కవి రాజు స్తలము మరియు తేది: హైదరాబాదు ౨౦౦౪-౦౬-౦౨ ప్రశ్న ౧: ఈ తరచుగా అడిగే ప్రస్నలు మరళ నేను ఎలా ప్రదర్శించగలను? జవాబు ౧: 'help' అని కమాండ్ ప్రదేశములో టైపు చెయ్యగలరు. (బహుశ ఇది మీకు ఇంగ్లీషు లో ఈ తరచూ అడిగే ప్రశ్నలు ప్రదర్శించవచ్చు-అనువాదకుడు). అలాగే మీరు 'test' ని కమాండ్ ప్రదేశము లో టైపు చేసి పరిక్ష కాగితము పొందవచ్చు. ఇంకా 'howto japanese', 'howto configure' అని టైపు చేసి ఎల చేయడము అను కాగితములు పొందవచ్చు. ప్రశ్న ౨: తరువాతి వర్శన్లకు ఎలా మెరుగు పరచగలను? జవాబు౨: http://www.yudit.org/ నుండి మీరు దిగుమతి చేసుకొనండి. ప్రశ్న౩: నేను దాచిపెట్టు (సేవ్) మీఠ నొక్కినాను, కాని ఏమీ జరగలేదు. ఎందుకని? జవాబు౩: వైయుడిట్ కి కమాండు లిను కలదు, మీరు ఎంటరు మీఠ నొక్కవలెను అనుకుంట. ప్రశ్న౪: సాదారణముగా "Unix" ("యునిక్ష్") అని చూపిస్తూ కుడివైపు గల ఆ [లైను విరామము] ఏమిటి? జవాబు౪: లైను విరామ గుర్తులు: యునిక్ష్= '\n' - యునిక్ష్ లైను విరామము డాస్= '\r\n' - డాస్ లైను విరామము మాక్='\r'-మాక్ లైను విరామము యెల్ యెస్ = యూ + ౨౦౨౮ - యూనీకోడ్ లైను విరామము పి యస్ = యూ + ౨౦౨౯ - యూనీకోడ్ పరాగ్రాఫు విరామము వైయుడిట్ నన్ందు మీరు వీటిని కలపవచ్చు- ఉదాహరణకు మీరు డాస్ మరియు యునిక్ష్ రెండు రకాల లైను విరామములు గల ఫైలు సృష్టించవచ్చు, కాని ఇలా కలపడము సాద్యమైనంతవరకు చేయవద్దు ప్రశ్న౫: వివిధ సంకేతీకరణల వివరములు పొందడము ఎలా? (-e ఎంపిక) జవాబు౫:మీ లైనక్షు పెట్టలో 'man uniconv' లేదా 'uniconv -h' అని ఏదో ఒక షెల్ లో టైపు చెయ్యండి. ప్రశ్న౬: నెను నా స్వంత కీబోర్డ్ లోపలి సమాచార ఫైలు ఎలా కలప గలను? జవాబు౬: మీ ఫైలు /home/మీ_యూజర్ పేరు_/Test/share/yudit/data లో ఉండవచ్చు, in this case you just need to add this to ఇటువంటి స్థితిలో ఆ సమాచరాన్ని /home/మీ_యూజర్ పేరు_/Test/share/yudit/config/yudit.properties కు కలపగలరు. అలా కాకున్న, మీరు sourcd kmap ఫైలు ని ద్విపద నిర్మాణము లోనికి మార్చవలెను. దీని కోసము ఈ క్రింది కమాండు ఉపయోగించండి mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my ఆ తరువాత కాపీ చెయ్యండి cp My.my ~/.yudit/data Note that kmap files can be used as text converters and font maps too. దయచేసి ఆ kmap souce ఫైలు ని నాకు పంపించగలరు, తరువాతి పంపకములో నేను కలుపుతాను. ఈ kmap ఫైలు గురించిన మరింత సమాచారము కొరకు /usr/share/yudit/doc/keymap-format.txt ని చూడగలరు. వైయుడిట్ తో పాటు వచ్చే kmap ఫైల్ల మూల కోడ్ కొరకు /usr/share/yudit/src/ ని చూడగలరు. గమనిక: kmap ఫైల్లు వచన మార్పిడిగా మరియు పదరూపము మ్యాపు చెయ్యడానికి కూడా ఉపయోగపడతాయి ప్రశ్న౭: నా స్వంత భాష లో సమాచారము ఎలా చూడగలను? జవాబు౭: మూల కోడ్ ని దిగుమతి చేసుకోని దానిలోని README.TXT (రీడ్ మీ . టెక్ష్ట్ ) ని చదవండి. అది మీకు ఎలా చెయ్యాలో చెపుతుంది. దయచేసి నాకు అనువాదములు పంపించండి, వాటిని భవిష్యత్తు వర్షన్ పంపకములలో ఉంచగలను. ప్రశ్న౮: నేను ఒక ట్రూ టైపు పదరూపము ఎలా కలపగలను? జవాబు౮: font-file.ttf మరియు ఇతర టి టి యఫ్ ఫైలులను /usr/share/yudit/fonts or ~/.yudit/fonts నందు ఉంచగలరు ఆ తరువాత ఒక కొత్త కాల్పనిక పదరూపము కలుపుతూ /usr/share/yudit/config/yudit.properties ని మార్చగలరు. ఉదాహరణకు yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. yudit.editor.fonts=...,MyFont,... అని కలిపిన లేదా yudit.fonts=....,MyFont,...అని కలిపిన మీరు ఈ పదరూపము ని ఉపయోగించగలరు ప్రశ్న౯: విండోస్ వర్సన్ ఎక్కడ వుంది? జవాబు౯: వైయుడిట్ సిటు నందే మీకు విండోస్ వర్సన్ లింకు (కలయిక ) వుంటుంది, కాని అది కొత్త వర్సన్ కాక పోవచ్చు. (ఈ జవాబు ఇంగ్లీషు FAQ కి బిన్నమైనది - అనువాదకుడు) ప్రశ్న౧౦: వైయుడిట్ ఎంత మంచి యూనికోడ్ ఎడిటరు? జవాబు౧౦: ఎక్కడైతే బాగుంది అనిపించినదో అక్కడ నేను యూనికోడ్ ప్రమాణము అమలు చేసినాను, కాని అక్కడక్కడ కొన్ని తేడాలు వునాయి. దయచేసి ఇరువైపులనుండి (కుడినుండి ఎడమకు మరియు ఎడమ నుండి కుడికి -ఉర్దూ లాగా)వ్రాయు విషయముల కొరకు /usr/share/yudit/doc/HOWTO-bidi.txt ని చదవగలరు. ప్రశ్న౧౧: నేను కమాండు గీత లో ౩ ఫైల్లు నిర్దేశించినాను కాని నాకు ఒకటే ఫైలు కనిపిస్తున్నది. ఎందుకు? జవాబు౧౧: అవి చరిత్ర లో తాత్కాలికముగా ఉనాయి. మీకు కావలెనన్న కమాండు లోకిని వెల్లి, పై బాణము(Ctrl -k , కంట్రోలు కె) మరియు క్రింది బాణము(ctrl j కంట్రోలు జె) ఉపయోగించవచ్చు. ప్రశ్న౧౨: హాట్ కీ బైండింఘులు (hot-key bindings ) ఏమిటి? జవాబు౧౨: You can see most of them - the yellow tooltip shows them underlined. Most of them should work with Ctrl as well as Alt keys. The pluggable editor currently has the following keybindings: Escape - కమాండు విధము మరియు ఎడిటర్ విధము మధ్య మారడానికి ఉపయోగ పడుతుంది. Home - లైను మొదటికి వెళ్ళడానికి End - లైను చివరకు వెళ్ళడానికి b - కాగితము పైకి f - కాగితము క్రిందకి k - పైకి n,j - క్రిందకి h - ఎడమకు l - కుడివైపునకు m - లైను మొత్తము తొలగించండి x - ఎన్నుకొనబడినది తొలగించండి v - చివరగ ఎన్నుకొనబడినది అతికించండి If Meta is kept down while moving the caret, the text will be selected. Mouse double click selects a word triple click selects a full line. ప్రశ్న౧౩: నేను ద్విపద కీమ్యాపు (binary kmap) ఫైలు ని ఎలా చదవగలను? జవాబు౧౩: మీరు ఈ క్రింది విధముగా మూల కోడు ని చూడగలరు. mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys ప్రశ్న౧౪: నేను ఒక యూనికోడ్ అక్షరాన్ని ఎలా త్వరగా ప్రవేశపెట్టగలను? జవాబు౧౪: లోపలకి ప్రవేశపెట్టు పద్దతిని (ఇన్ పుట్, input) యూనికోడ్ [unicode] కి మార్చి, uxxxx లేదా Uxxxxxxxx గాని ప్రవేశపెట్టండి, x అనునది ఇక్కడ షష్ట్యాంశ మానము లోని అంకె ప్రశ్న౧౫: వైయుడిట్ ఎలా వెతుకుట మరియు మార్చుట ప్రమేయములు చేయగలదు? జవాబు౧౫: కమాండు గీత లోన replace పాత_వచనము కొత్త_వచనము అని టైపు చేసి ప్రతి మార్పునకు ఎంటరు కీ నొక్కండి. ప్రశ్న౧౬: నేను చేతి వ్రాత పద్దతి ఎలా ఉపయోగించగలను? జవాబు౧౬: నీలి రంగు బాణపు (లోపలికి పంపించు పద్దతి input method)పై నొక్కి ఒక కీ ని freehand (ఫ్రీ హ్యాండు ) కి జత చెయ్యగలరు. ప్రశ్న౧౭: నేను వాక్యవిన్యాస (syntax) ప్రతేకముగా చూపడాన్ని ఎలా ఆపగలను? జవాబు౧౭: కమాండు ప్రదేశము నుండి 'syntax none' అని టైపు చెయ్యడము ద్వారా మీరు ఆపుచెయ్యగలరు. అలాగే మీరు 'syntax' అని టైపు చేసిన తిరిగి పొందవచ్చు. దీనిని కాన్ఫిగ్ ఫైలు లో కూడా చెయ్యవచ్చు. ప్రశ్న౧౮: నేను పదాలు స్వయముగా లైనులు గా మరడము ఎలా ఆపు చెయ్యగలను? జవాబు౧౮: కమాండు ప్రదేశము లోన 'wordwrap false' అని టైపు చేయ్యడము ద్వారా ఆపు చెయ్యగలరు. అలాగే 'wordwrap true' అని టైపు చెయ్యడము ద్వారా మరళ మొదలు పెట్టగలరు. ప్రశ్న౧౯: ఈ తెలుగు అనువాదము లో తప్పులు ఉన్న ఏమి చెయ్యాలి? జవాబు౧౯: పైన తెలపబడిన అనువాదకుడి కి ఈ ఉత్తరము వ్రాయగలరు. దయచేసి ఈ పదము బాగా లేదు అని వ్రాయకండి, మరొక పదము సూచించండి. అనుబంధము ======== ౧.౧. కీ మ్యాపు ఉదాహరణలు: ఈ క్రిందవి కొన్ని Telugu-Rts (తెలుగు ఆర్ టి యస్ ) ఉదాహరణలు amma అమ్మ aavu ఆవు illu ఇల్లు Iga ఈగ telugu తెలుగు AMdhrapradESu ఆంధ్రప్రదేశు ./doc/te/FAQ.TXT.in0000644000175000017500000003305410434024450013630 0ustar henrichhenrichవైయుడిట్ యూనికోడ్ ఎడిటొర్ తరచుగా అడిగే ప్రశ్నలు ======================== వర్శన్: ౨.౮.౧ రచయత: గాశ్పర్ సినాయి స్తలము మరియు తేది: టోక్యో ౨౦౦౩-౦౬-౨౫ తెలుగు అనువాదకుడు: కృష్ణ దాస కవి రాజు స్తలము మరియు తేది: హైదరాబాదు ౨౦౦౪-౦౬-౦౨ ప్రశ్న ౧: ఈ తరచుగా అడిగే ప్రస్నలు మరళ నేను ఎలా ప్రదర్శించగలను? జవాబు ౧: 'help' అని కమాండ్ ప్రదేశములో టైపు చెయ్యగలరు. (బహుశ ఇది మీకు ఇంగ్లీషు లో ఈ తరచూ అడిగే ప్రశ్నలు ప్రదర్శించవచ్చు-అనువాదకుడు). అలాగే మీరు 'test' ని కమాండ్ ప్రదేశము లో టైపు చేసి పరిక్ష కాగితము పొందవచ్చు. ఇంకా 'howto japanese', 'howto configure' అని టైపు చేసి ఎల చేయడము అను కాగితములు పొందవచ్చు. ప్రశ్న ౨: తరువాతి వర్శన్లకు ఎలా మెరుగు పరచగలను? జవాబు౨: http://www.yudit.org/ నుండి మీరు దిగుమతి చేసుకొనండి. ప్రశ్న౩: నేను దాచిపెట్టు (సేవ్) మీఠ నొక్కినాను, కాని ఏమీ జరగలేదు. ఎందుకని? జవాబు౩: వైయుడిట్ కి కమాండు లిను కలదు, మీరు ఎంటరు మీఠ నొక్కవలెను అనుకుంట. ప్రశ్న౪: సాదారణముగా "Unix" ("యునిక్ష్") అని చూపిస్తూ కుడివైపు గల ఆ [లైను విరామము] ఏమిటి? జవాబు౪: లైను విరామ గుర్తులు: యునిక్ష్= '\n' - యునిక్ష్ లైను విరామము డాస్= '\r\n' - డాస్ లైను విరామము మాక్='\r'-మాక్ లైను విరామము యెల్ యెస్ = యూ + ౨౦౨౮ - యూనీకోడ్ లైను విరామము పి యస్ = యూ + ౨౦౨౯ - యూనీకోడ్ పరాగ్రాఫు విరామము వైయుడిట్ నన్ందు మీరు వీటిని కలపవచ్చు- ఉదాహరణకు మీరు డాస్ మరియు యునిక్ష్ రెండు రకాల లైను విరామములు గల ఫైలు సృష్టించవచ్చు, కాని ఇలా కలపడము సాద్యమైనంతవరకు చేయవద్దు ప్రశ్న౫: వివిధ సంకేతీకరణల వివరములు పొందడము ఎలా? (-e ఎంపిక) జవాబు౫:మీ లైనక్షు పెట్టలో 'man uniconv' లేదా 'uniconv -h' అని ఏదో ఒక షెల్ లో టైపు చెయ్యండి. ప్రశ్న౬: నెను నా స్వంత కీబోర్డ్ లోపలి సమాచార ఫైలు ఎలా కలప గలను? జవాబు౬: మీ ఫైలు /home/మీ_యూజర్ పేరు_/Test/share/yudit/data లో ఉండవచ్చు, in this case you just need to add this to ఇటువంటి స్థితిలో ఆ సమాచరాన్ని /home/మీ_యూజర్ పేరు_/Test/share/yudit/config/yudit.properties కు కలపగలరు. అలా కాకున్న, మీరు sourcd kmap ఫైలు ని ద్విపద నిర్మాణము లోనికి మార్చవలెను. దీని కోసము ఈ క్రింది కమాండు ఉపయోగించండి mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my ఆ తరువాత కాపీ చెయ్యండి cp My.my ~/.yudit/data Note that kmap files can be used as text converters and font maps too. దయచేసి ఆ kmap souce ఫైలు ని నాకు పంపించగలరు, తరువాతి పంపకములో నేను కలుపుతాను. ఈ kmap ఫైలు గురించిన మరింత సమాచారము కొరకు @YUDIT_DATA@/doc/keymap-format.txt ని చూడగలరు. వైయుడిట్ తో పాటు వచ్చే kmap ఫైల్ల మూల కోడ్ కొరకు @YUDIT_DATA@/src/ ని చూడగలరు. గమనిక: kmap ఫైల్లు వచన మార్పిడిగా మరియు పదరూపము మ్యాపు చెయ్యడానికి కూడా ఉపయోగపడతాయి ప్రశ్న౭: నా స్వంత భాష లో సమాచారము ఎలా చూడగలను? జవాబు౭: మూల కోడ్ ని దిగుమతి చేసుకోని దానిలోని README.TXT (రీడ్ మీ . టెక్ష్ట్ ) ని చదవండి. అది మీకు ఎలా చెయ్యాలో చెపుతుంది. దయచేసి నాకు అనువాదములు పంపించండి, వాటిని భవిష్యత్తు వర్షన్ పంపకములలో ఉంచగలను. ప్రశ్న౮: నేను ఒక ట్రూ టైపు పదరూపము ఎలా కలపగలను? జవాబు౮: font-file.ttf మరియు ఇతర టి టి యఫ్ ఫైలులను @YUDIT_DATA@/fonts or ~/.yudit/fonts నందు ఉంచగలరు ఆ తరువాత ఒక కొత్త కాల్పనిక పదరూపము కలుపుతూ @YUDIT_DATA@/config/yudit.properties ని మార్చగలరు. ఉదాహరణకు yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. yudit.editor.fonts=...,MyFont,... అని కలిపిన లేదా yudit.fonts=....,MyFont,...అని కలిపిన మీరు ఈ పదరూపము ని ఉపయోగించగలరు ప్రశ్న౯: విండోస్ వర్సన్ ఎక్కడ వుంది? జవాబు౯: వైయుడిట్ సిటు నందే మీకు విండోస్ వర్సన్ లింకు (కలయిక ) వుంటుంది, కాని అది కొత్త వర్సన్ కాక పోవచ్చు. (ఈ జవాబు ఇంగ్లీషు FAQ కి బిన్నమైనది - అనువాదకుడు) ప్రశ్న౧౦: వైయుడిట్ ఎంత మంచి యూనికోడ్ ఎడిటరు? జవాబు౧౦: ఎక్కడైతే బాగుంది అనిపించినదో అక్కడ నేను యూనికోడ్ ప్రమాణము అమలు చేసినాను, కాని అక్కడక్కడ కొన్ని తేడాలు వునాయి. దయచేసి ఇరువైపులనుండి (కుడినుండి ఎడమకు మరియు ఎడమ నుండి కుడికి -ఉర్దూ లాగా)వ్రాయు విషయముల కొరకు @YUDIT_DATA@/doc/HOWTO-bidi.txt ని చదవగలరు. ప్రశ్న౧౧: నేను కమాండు గీత లో ౩ ఫైల్లు నిర్దేశించినాను కాని నాకు ఒకటే ఫైలు కనిపిస్తున్నది. ఎందుకు? జవాబు౧౧: అవి చరిత్ర లో తాత్కాలికముగా ఉనాయి. మీకు కావలెనన్న కమాండు లోకిని వెల్లి, పై బాణము(Ctrl -k , కంట్రోలు కె) మరియు క్రింది బాణము(ctrl j కంట్రోలు జె) ఉపయోగించవచ్చు. ప్రశ్న౧౨: హాట్ కీ బైండింఘులు (hot-key bindings ) ఏమిటి? జవాబు౧౨: You can see most of them - the yellow tooltip shows them underlined. Most of them should work with Ctrl as well as Alt keys. The pluggable editor currently has the following keybindings: Escape - కమాండు విధము మరియు ఎడిటర్ విధము మధ్య మారడానికి ఉపయోగ పడుతుంది. Home - లైను మొదటికి వెళ్ళడానికి End - లైను చివరకు వెళ్ళడానికి b - కాగితము పైకి f - కాగితము క్రిందకి k - పైకి n,j - క్రిందకి h - ఎడమకు l - కుడివైపునకు m - లైను మొత్తము తొలగించండి x - ఎన్నుకొనబడినది తొలగించండి v - చివరగ ఎన్నుకొనబడినది అతికించండి If Meta is kept down while moving the caret, the text will be selected. Mouse double click selects a word triple click selects a full line. ప్రశ్న౧౩: నేను ద్విపద కీమ్యాపు (binary kmap) ఫైలు ని ఎలా చదవగలను? జవాబు౧౩: మీరు ఈ క్రింది విధముగా మూల కోడు ని చూడగలరు. mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys ప్రశ్న౧౪: నేను ఒక యూనికోడ్ అక్షరాన్ని ఎలా త్వరగా ప్రవేశపెట్టగలను? జవాబు౧౪: లోపలకి ప్రవేశపెట్టు పద్దతిని (ఇన్ పుట్, input) యూనికోడ్ [unicode] కి మార్చి, uxxxx లేదా Uxxxxxxxx గాని ప్రవేశపెట్టండి, x అనునది ఇక్కడ షష్ట్యాంశ మానము లోని అంకె ప్రశ్న౧౫: వైయుడిట్ ఎలా వెతుకుట మరియు మార్చుట ప్రమేయములు చేయగలదు? జవాబు౧౫: కమాండు గీత లోన replace పాత_వచనము కొత్త_వచనము అని టైపు చేసి ప్రతి మార్పునకు ఎంటరు కీ నొక్కండి. ప్రశ్న౧౬: నేను చేతి వ్రాత పద్దతి ఎలా ఉపయోగించగలను? జవాబు౧౬: నీలి రంగు బాణపు (లోపలికి పంపించు పద్దతి input method)పై నొక్కి ఒక కీ ని freehand (ఫ్రీ హ్యాండు ) కి జత చెయ్యగలరు. ప్రశ్న౧౭: నేను వాక్యవిన్యాస (syntax) ప్రతేకముగా చూపడాన్ని ఎలా ఆపగలను? జవాబు౧౭: కమాండు ప్రదేశము నుండి 'syntax none' అని టైపు చెయ్యడము ద్వారా మీరు ఆపుచెయ్యగలరు. అలాగే మీరు 'syntax' అని టైపు చేసిన తిరిగి పొందవచ్చు. దీనిని కాన్ఫిగ్ ఫైలు లో కూడా చెయ్యవచ్చు. ప్రశ్న౧౮: నేను పదాలు స్వయముగా లైనులు గా మరడము ఎలా ఆపు చెయ్యగలను? జవాబు౧౮: కమాండు ప్రదేశము లోన 'wordwrap false' అని టైపు చేయ్యడము ద్వారా ఆపు చెయ్యగలరు. అలాగే 'wordwrap true' అని టైపు చెయ్యడము ద్వారా మరళ మొదలు పెట్టగలరు. ప్రశ్న౧౯: ఈ తెలుగు అనువాదము లో తప్పులు ఉన్న ఏమి చెయ్యాలి? జవాబు౧౯: పైన తెలపబడిన అనువాదకుడి కి ఈ ఉత్తరము వ్రాయగలరు. దయచేసి ఈ పదము బాగా లేదు అని వ్రాయకండి, మరొక పదము సూచించండి. అనుబంధము ======== ౧.౧. కీ మ్యాపు ఉదాహరణలు: ఈ క్రిందవి కొన్ని Telugu-Rts (తెలుగు ఆర్ టి యస్ ) ఉదాహరణలు amma అమ్మ aavu ఆవు illu ఇల్లు Iga ఈగ telugu తెలుగు AMdhrapradESu ఆంధ్రప్రదేశు ./doc/UTF-8-demo-README.txt0000644000175000017500000000374510434023766015041 0ustar henrichhenrichWARNING: This file is encoded with Yudit utf-8-s encoder. I have downloaded the Markus Kuhn's UTF-8-demo.txt test file from: http://www.cl.cam.ac.uk/~mgk25/ucs/examples/ This file contains purposefully malformed sequences. utf-8 text files should not contain surrogates. Yudit reads them and indicates that they came as surrogates, but displays them as a supplementary plane characters. The Glyph Info clearly indicates that something is wrong. When you move the cursor after this character: Glyph Info: [sgt:00010000] DC80 DC00 is displayed. For well formed sequences Glyph Info should never show [sgt:]: http://www.unicode.org/versions/corrigendum1.html When such surrogates are written back to disk, Yudit's build-in utf-8 converter will write the shortest form, as required by utf-8, thus they will not be written back as surrogates, but as shorter supplementary plane characters. If you want to keep the binary integrity of the file, with malformed sequences and surrogate utf-8 characters, you should use Yudit's build-in utf-8-s converter instead of utf-8. The usage of the built-in utf-8-s converter is not recommended, only use it for test purpose. On the other hand the utf-8 encoder will always generate the shortest form. Gáspár Sinai 2002-11-22 5.1 Single UTF-16 surrogates 5.1.1 U+D800 = ed a0 80 = "" 5.1.2 U+DB7F = ed ad bf = "" 5.1.3 U+DB80 = ed ae 80 = "" 5.1.4 U+DBFF = ed af bf = "" 5.1.5 U+DC00 = ed b0 80 = "" 5.1.6 U+DF80 = ed be 80 = "" 5.1.7 U+DFFF = ed bf bf = "" 5.2 Paired UTF-16 surrogates 5.2.1 U+D800 U+DC00 = ed a0 80 ed b0 80 = "" 5.2.2 U+D800 U+DFFF = ed a0 80 ed bf bf = "" 5.2.3 U+DB7F U+DC00 = ed ad bf ed b0 80 = "" 5.2.4 U+DB7F U+DFFF = ed ad bf ed bf bf = "" 5.2.5 U+DB80 U+DC00 = ed ae 80 ed b0 80 = "" 5.2.6 U+DB80 U+DFFF = ed ae 80 ed bf bf = "" 5.2.7 U+DBFF U+DC00 = ed af bf ed b0 80 = "" 5.2.8 U+DBFF U+DFFF = ed af bf ed bf bf = "" ./doc/ja/0000755000175000017500000000000011334661334012200 5ustar henrichhenrich./doc/ja/FAQ.TXT0000644000175000017500000001774211334661334013223 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Author: Gaspar Sinai 訳:乾優子 Date: Tokyo 2007-12-22 質問1:どうやってこのFAQをもう一度表示しますか? 答え1:Yudit 下部のコマンドバーの所で"help"と入力して下さい。同じく"test"と入力すれば テストのページが出て来ます。"howto Japanese"か"howto Configure" を入力するとhowto書類が出て来ます。 質問2:新しいバージョンはどこでもらえますか? 答え2:ここから: http://www.yudit.org/ 質問3:'保存'ボタンを押したのに何もおこりません。なぜですか? 答え3:Yudit下部のコマンドバーにファイル名を入力し、エンターキーを押して下さい。 質問4:右上にある'行選択'って何ですか?ほとんどいつも'Unix'ですが。 答え4:次の選択があります: A4: UNIX='\n' - Unix 行 DOS='\r\n' - DOS 行 MAC='\r' - MAC 行 LS = U+2028 - Unicode line separator PS = U+2029 - Unicode paragraph separator Yudit これらを混ぜることもできますが(同じファイルにDOSとUnix 行があること)、できるだけ混ぜないで 下さい。 質問5: エンコードのオプション(-e)はどうやって分かりますか? 答え5:シェルで`man uniconv' か`uniconv -h' を入力して下さい。 質問6:自分のkmapファイルをどうやって加えますか? 答え6:もうそのファイルがあるかも知れません: /usr/share/yudit/data この場合は次のファイルを変更して下さい: /usr/share/yudit/config/yudit.properties 無かったらソースからバイナリにして下さい: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my 後でMy.my を~/.yudit/data にコピーして下さい: cp My.my ~/.yudit/data ソースファイルを私にも送って下さい。次のリリースに加えます。 もっとkmapファイルを知りたいのなら、これを参考にして下さい: /usr/share/yudit/doc/keymap-format.txt Yuditにもともと付いているソースkmapファイルはここにあります: /usr/share/yudit/src/ kmap ファイルをテキストに変換する時も使えます。 質問7:自分の言語でYuditが使えますか? 答え7:はい。ソースコードのREADME.TXTを参考にして下さい。 .po を私にも送って下さい。次のリリースに加えます。 質問8:TrueType書体はどうやって使うのですか? 答え8:フォントファイルをここにリンク、あるいはコピーして 下さい: /usr/share/yudit/fonts あるいは ~/.yudit/fonts 後でこのファイルを変更して下さい: /usr/share/yudit/config/yudit.properties 新しいフォント、『MyFont』 を作りましょう: yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. EDITORで yudit.editor.fonts=...,MyFont,... でこのフォントが使えます。メニュー等には: yudit.fonts=...,MyFont,... をいれれば使えます。 質問9:Windowsバージョンは予定していますか? 答え9:Yuditにはabstract windowing toolkitがありますから 簡単に、svgalib等に移動出来ます。2001年12月で 妻の優子の為にWindowsバージョンを作りました。 Windowsを触ったのがこれで最初で最後です。 質問10: Yuditはどんなによいユニコードエディタですか? 答え10: 出来だけ標準にしたがって作っていたんですが、可笑しい所 もありますから、BI-DIに関しては次の書類を読んで下さい: /usr/share/yudit/doc/HOWTO-bidi.txt コンポウージングができて、シェーピングも動いています。 質問11: コマンドの所で三つのファイルがあったのに今は一つ しかありません。どこにありますか? 答え11:歴史バファーにあります。Arrow-Up (Ctrl-k) あるいは Arrow-Down (Ctrl-j)を押すと出て来ます。 質問12:どんなhot-keyがありますか? 答え12:黄色のtooltipに上にアンダーラインをして表示してあります。 エディタのhot-keyは次です: Escape - コマンドモードと表示モードの切替え Home - カーサルを行の始めまで動かす。 End - カーサルを行の終りまで動かす b - ページアップ f - ページダウン k - アップ n,j - ダウン h - 左 l - 右 m - 行削除 x - セレクト削除 v - 最後のセレクト削除 Alt を押しながらカーサルを動かすとテキストを セレクトすることが出来ます。 ダブルクリックでワードトリプルクリックで行がセレクトできます。 質問13: バイナリkmapファイルの中身がどうやって見れますか? 答え13:このようにソースダンプが出来ます: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys 質問14:早くユニコード文字を入れたいですが、どうやって 出来ますか? 答え14:入力を[unicode]にして下さい、uxxxx か Uxxxxxxxx を入力すると、16進数のunicode文字が現れます。 質問15:どうやって文字列を変換しますか? 答え15:コマンドの所で replace 古いー文字列 新しいー文字列 を入れて下さい。 質問16:手書き入力はどこですか。 答え16:青い矢印 【 入力】 を押してください。 一つのFキーに割り当ててください。 質問17:シンタクス・ハイライトはどうやって解除されますか? 答え17:コマンドには『syntax none』を入力すればシンタクス・ハイ ライトは解除されます。『syntax』だけを入力すれば『syntax』の すべてのオプションが表示されます。config ファイルをつかっても シンタクス・ハイライトを解除することが出来ます。 Yuditの一番下のコマンド入力欄に『howto syntax』を入れて、 ヘルプが出て来ます。この中にスペルチェックの機能についても 説明してあります。 質問18:ワードラップはどうやって解除されますか? 答え18:コマンドには'wordwrap false'を入力すればワードラップは 解除されます。'wordwrap' だけを入力すれば 'wordwrap' の すべてのオプションが表示されます。config ファイルをつかっても ワードラップを解除することが出来ます。 Appendix ======== 1.1. Keymap Examples The following examples are for some kmaps that came with Yudit. Russian It maps phonetical Russian letters. The not so obvious ones are: yo yields ё , c yields ь, q yields ъ x yields ы ee yields э Hungarian It maps Hungarian and German characters. The accented characters can be input with the English character followed by the accent. Examples: a' becomes á , o: becomes ö , o" becomes ő SS produces the German ß , Ss gives the paragraph sign §. Kana It maps Romaji into Hiragana and Katakana. Small letters are used for Hiragana and capitals are used for Katakana. The not so obvious ones are: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic With this map you can use RFC1345 mnemonics to enter the characters. Some examples: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML maps SGML to unicode. Examples: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul maps Roman transliteration into Hangul characters. The ISO/TC46/SC2/WG4 transliteration is used. You can find out about it more at http://www.hansoft.com/hangul/faq.html Some examples: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/ja/FAQ.TXT.in0000644000175000017500000001770211331217537013623 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Author: Gaspar Sinai 訳:乾優子 Date: Tokyo 2007-12-22 質問1:どうやってこのFAQをもう一度表示しますか? 答え1:Yudit 下部のコマンドバーの所で"help"と入力して下さい。同じく"test"と入力すれば テストのページが出て来ます。"howto Japanese"か"howto Configure" を入力するとhowto書類が出て来ます。 質問2:新しいバージョンはどこでもらえますか? 答え2:ここから: http://www.yudit.org/ 質問3:'保存'ボタンを押したのに何もおこりません。なぜですか? 答え3:Yudit下部のコマンドバーにファイル名を入力し、エンターキーを押して下さい。 質問4:右上にある'行選択'って何ですか?ほとんどいつも'Unix'ですが。 答え4:次の選択があります: A4: UNIX='\n' - Unix 行 DOS='\r\n' - DOS 行 MAC='\r' - MAC 行 LS = U+2028 - Unicode line separator PS = U+2029 - Unicode paragraph separator Yudit これらを混ぜることもできますが(同じファイルにDOSとUnix 行があること)、できるだけ混ぜないで 下さい。 質問5: エンコードのオプション(-e)はどうやって分かりますか? 答え5:シェルで`man uniconv' か`uniconv -h' を入力して下さい。 質問6:自分のkmapファイルをどうやって加えますか? 答え6:もうそのファイルがあるかも知れません: @YUDIT_DATA@/data この場合は次のファイルを変更して下さい: @YUDIT_DATA@/config/yudit.properties 無かったらソースからバイナリにして下さい: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my 後でMy.my を~/.yudit/data にコピーして下さい: cp My.my ~/.yudit/data ソースファイルを私にも送って下さい。次のリリースに加えます。 もっとkmapファイルを知りたいのなら、これを参考にして下さい: @YUDIT_DATA@/doc/keymap-format.txt Yuditにもともと付いているソースkmapファイルはここにあります: @YUDIT_DATA@/src/ kmap ファイルをテキストに変換する時も使えます。 質問7:自分の言語でYuditが使えますか? 答え7:はい。ソースコードのREADME.TXTを参考にして下さい。 .po を私にも送って下さい。次のリリースに加えます。 質問8:TrueType書体はどうやって使うのですか? 答え8:フォントファイルをここにリンク、あるいはコピーして 下さい: @YUDIT_DATA@/fonts あるいは ~/.yudit/fonts 後でこのファイルを変更して下さい: @YUDIT_DATA@/config/yudit.properties 新しいフォント、『MyFont』 を作りましょう: yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. EDITORで yudit.editor.fonts=...,MyFont,... でこのフォントが使えます。メニュー等には: yudit.fonts=...,MyFont,... をいれれば使えます。 質問9:Windowsバージョンは予定していますか? 答え9:Yuditにはabstract windowing toolkitがありますから 簡単に、svgalib等に移動出来ます。2001年12月で 妻の優子の為にWindowsバージョンを作りました。 Windowsを触ったのがこれで最初で最後です。 質問10: Yuditはどんなによいユニコードエディタですか? 答え10: 出来だけ標準にしたがって作っていたんですが、可笑しい所 もありますから、BI-DIに関しては次の書類を読んで下さい: @YUDIT_DATA@/doc/HOWTO-bidi.txt コンポウージングができて、シェーピングも動いています。 質問11: コマンドの所で三つのファイルがあったのに今は一つ しかありません。どこにありますか? 答え11:歴史バファーにあります。Arrow-Up (Ctrl-k) あるいは Arrow-Down (Ctrl-j)を押すと出て来ます。 質問12:どんなhot-keyがありますか? 答え12:黄色のtooltipに上にアンダーラインをして表示してあります。 エディタのhot-keyは次です: Escape - コマンドモードと表示モードの切替え Home - カーサルを行の始めまで動かす。 End - カーサルを行の終りまで動かす b - ページアップ f - ページダウン k - アップ n,j - ダウン h - 左 l - 右 m - 行削除 x - セレクト削除 v - 最後のセレクト削除 Alt を押しながらカーサルを動かすとテキストを セレクトすることが出来ます。 ダブルクリックでワードトリプルクリックで行がセレクトできます。 質問13: バイナリkmapファイルの中身がどうやって見れますか? 答え13:このようにソースダンプが出来ます: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys 質問14:早くユニコード文字を入れたいですが、どうやって 出来ますか? 答え14:入力を[unicode]にして下さい、uxxxx か Uxxxxxxxx を入力すると、16進数のunicode文字が現れます。 質問15:どうやって文字列を変換しますか? 答え15:コマンドの所で replace 古いー文字列 新しいー文字列 を入れて下さい。 質問16:手書き入力はどこですか。 答え16:青い矢印 【 入力】 を押してください。 一つのFキーに割り当ててください。 質問17:シンタクス・ハイライトはどうやって解除されますか? 答え17:コマンドには『syntax none』を入力すればシンタクス・ハイ ライトは解除されます。『syntax』だけを入力すれば『syntax』の すべてのオプションが表示されます。config ファイルをつかっても シンタクス・ハイライトを解除することが出来ます。 Yuditの一番下のコマンド入力欄に『howto syntax』を入れて、 ヘルプが出て来ます。この中にスペルチェックの機能についても 説明してあります。 質問18:ワードラップはどうやって解除されますか? 答え18:コマンドには'wordwrap false'を入力すればワードラップは 解除されます。'wordwrap' だけを入力すれば 'wordwrap' の すべてのオプションが表示されます。config ファイルをつかっても ワードラップを解除することが出来ます。 Appendix ======== 1.1. Keymap Examples The following examples are for some kmaps that came with Yudit. Russian It maps phonetical Russian letters. The not so obvious ones are: yo yields ё , c yields ь, q yields ъ x yields ы ee yields э Hungarian It maps Hungarian and German characters. The accented characters can be input with the English character followed by the accent. Examples: a' becomes á , o: becomes ö , o" becomes ő SS produces the German ß , Ss gives the paragraph sign §. Kana It maps Romaji into Hiragana and Katakana. Small letters are used for Hiragana and capitals are used for Katakana. The not so obvious ones are: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic With this map you can use RFC1345 mnemonics to enter the characters. Some examples: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML maps SGML to unicode. Examples: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul maps Roman transliteration into Hangul characters. The ISO/TC46/SC2/WG4 transliteration is used. You can find out about it more at http://www.hansoft.com/hangul/faq.html Some examples: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/HOWTO-malayalam.txt0000644000175000017500000000547107551666512015223 0ustar henrichhenrichHow to use Yudit to edit Malayalam text. Written by: Rajkumar S Date: 2002-03-09 Yudit (http://www.yudit.org/) is a free Unicode Editor, it can be used for editing text in Indic scripts in Unicode. To input and edit Malayalam you need a Unicode Malayalam font. A Unicode Malayalam font is the font which has correct Malayalam glyph in correct Unicode Codepoints. code2000.ttf True Type font from http://home.att.net/~jameskass/ is one such example. Yudit can also use any Opentype rendering that is present in the font if it is corresponding to the Indic spec at http://microsoft.com/typography/OTSPEC/indicot/default.htm, In order to render Malayalam properly a good set of glyph for consonant conjuncts as well as corresponding Opentype tables are a must. A sample font, dc-font.ttf, has been made for Yudit which has a fairly decent collection of glyphs as well as Opentype layout tables to render Malayalam. It will be available for download separately at: http://www.yudit.org/download/fonts After downloading the font you need to install it: 1. Locate font directory: Windows: C:\Program Files\yudit\fonts or ~/.yudit/fonts Linux: /usr/share/yudit/fonts or ~/.yudit/fonts 2. Copy dc-font.ttf or any other Malayalam Open Type/True Type font you need to install to the fonts directory. 3. Invoke and exit Yudit. This will create a ~/.yudit/yudit.properties file. You need to edit a font property in this file, for instance: yudit.font.TrueType=arial.ttf,raghu.ttf... Add the name of your font to this line, like this: yudit.font.TrueType=arial.ttf,raghu.ttf,dc-font.ttf Two key maps are provided with Yudit, one following the CDAC Inscript format (Mal-Inscript) and another (Malayalam) following a phonetic scheme. See the end of this document for the key assignment. If you are not familiar with Inscript then the Malayalam keymap will be more intuitive. Select one that is convenient for you. you are all set to use Malayalam. Please contact me if you are having any further queries with Malayalam Malayalam keymap a അ ai ഐ ka ക .ta ട pa പ sha ശ aa ആ o ഒ kha ഖ .tha ഠ pha ഫ .sa ഷ i ഇ oo ഓ ga ഗ .da ഡ ba ബ sa സ ii ഈ au ഔ gha ഘ .dha ഢ bha ഭ ha ഹ u ഉ .m ം "na ങ .na ണ ma മ .la ള uu ഊ .h ഃ ca ച ta ത ya യ zha ഴ R ഋ cha ഛ tha ഥ ra ര + ്‌ L ഌ ja ജ da ദ .ra റ e എ jha ഝ dha ധ la ല ee ഏ ~na ഞ na ന va വ ./doc/notinstalled/0000755000175000017500000000000010724001346014277 5ustar henrichhenrich./doc/notinstalled/ConvProto.h0000644000175000017500000002526010217441210016401 0ustar henrichhenrich/* $Id: ConvProto.h,v 1.5 1991/10/24 04:12:41 ishisone Rel $ */ /* * Copyright (c) 1991 Software Research Associates, Inc. * GNU Copyright (C) 1997-2005 Gaspar Sinai * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the name of Software Research Associates not be * used in advertising or publicity pertaining to distribution of the * software without specific, written prior permission. Software Research * Associates makes no representations about the suitability of this software * for any purpose. It is provided "as is" without express or implied * warranty. * * Author: Makoto Ishisone, Software Research Associates, Inc., Japan */ #ifndef _ConvProto_h #define _ConvProto_h /* 変換サーバのプロファイルが入るプロパティ名 */ #define CONVERSION_PROFILE "_CONVERSION_PROFILE" /* 変換サーバのプロファイルのプロパティと変換属性のプロパティのタイプ */ #define CONVERSION_ATTRIBUTE_TYPE "_CONVERSION_ATTRIBUTE_TYPE" /* プロトコルバージョン名 */ #define PROTOCOL_VERSION "PROTOCOL-2.0" #define CONV_ATTR(code,len) ((unsigned long)((code)<<16)+(len)) #define UPPER16U(data) (((data)>>16)&0xffff) #define UPPER16S(data) ((short)(((data)>>16)&0xffff)) #define LOWER16U(data) ((data)&0xffff) #define LOWER16S(data) ((short)((data)&0xffff)) #define CODE_OF_ATTR(head) UPPER16U(head) #define LENGTH_OF_ATTR(head) LOWER16U(head) /* * Conversion Profile Codes */ #define CONVPROF_PROTOCOL_VERSION 1 #define CONVPROF_SUPPORTED_STYLES 2 #define CONVPROF_SUPPORTED_EXTENSIONS 3 #define CONVPROF_EXTENSION_DATA 4 /* * Standard Conversion Attribute Codes (0-255) */ /* 0-127: can be specified at any time (startup and during conversion) */ #define CONVATTR_NONE 0 #define CONVATTR_INDIRECT 1 #define CONVATTR_FOCUS_WINDOW 2 #define CONVATTR_SPOT_LOCATION 3 #define CONVATTR_CLIENT_AREA 4 #define CONVATTR_STATUS_AREA 5 #define CONVATTR_COLORMAP 6 #define CONVATTR_COLOR 7 #define CONVATTR_BACKGROUND_PIXMAP 8 #define CONVATTR_LINE_SPACING 9 #define CONVATTR_FONT_ATOMS 10 #define CONVATTR_CURSOR 11 /* 128-255: can be specified only at startup time */ #define CONVATTR_INPUT_STYLE 128 #define CONVATTR_EVENT_CAPTURE_METHOD 129 #define CONVATTR_USE_EXTENSION 255 /* argument for CONVATTR_INPUT_STYLE and CONVPROP_SUPPORTED_STYLES */ #define CONVARG_ROOTWINDOW 1L #define CONVARG_OFFTHESPOT 2L #define CONVARG_OVERTHESPOT 4L /* argument for CONVATTR_EVENT_CAPTURE_METHOD */ #define CONVARG_NONE 0L #define CONVARG_CREATE_INPUTONLY 1L #define CONVARG_SELECT_FOCUS_WINDOW 2L /* * プロファイルデータ / 変換属性データの表現方法 * * 変換サーバの特性を表すプロファイルデータと、変換に関する属性を指定す * る変換属性データは共通のフォーマットを用いる。 * * 個々のデータは 32bit値の配列で表現される。最初の 1ワードはヘッダで、 * それに 0ワード以上のデータが続く。ヘッダの上位 16bit はそのプロファイ * ル / 変換属性のコードを表し、下位 16 bit は続くデータのワード数 * (32bit 単位) を表す。 * * +----------------+----------------+ * | Code (16bit) | Length (16bit) | * +----------------+----------------+ * | Data0 | * +---------------------------------+ * | ..... | * +---------------------------------+ * | DataN | * +---------------------------------+ * * 実際のプロファイルデータや変換属性データはこのデータがいくつか連続し * たものである。 */ /* * プロファイルデータ * * プロファイルデータ用のコードは次の 4種類が定義されている。変換属性 * データと異なり、プライベート用のコード領域などは用意されていない。 * * Protocol Version * code: 1 * data-length: 1 * data[0]: * CARD32: protocol version atom ("PROTOCOL-2.0") * * データは変換サーバのプロトコルバージョンを表すアトムである。ここ * で定義されているプロトコルのバージョンは "PROTOCOL-2.0" である。 * * Supported Styles * code: 2 * data-length: 1 * data[0]: * CARD32: input styles * * データは変換サーバがサポートする入力スタイルを表す。サポートする * 入力スタイルの値の bitwise-or である。 * * Supported Extensions * code: 3 * data-length: N * data[0]: * CARD32: extension atom 1 (Atom) * ... * data[N-1]: * CARD32: extension atom N (Atom) * * データは変換サーバがサポートする拡張を表すアトムのリストである。 * * Extension Data * code: 4 * data-length: N * data[0]: * CARD32: extension atom (Atom) * data[1] - data[N-1]: * extension specific data * * データは拡張独自に定義したプロファイルデータである。標準プロトコ * ルとしてはデータの先頭に拡張アトム (これはSupported Extensions * に指定されたものでなければならない)をつけることを規定するだけで、 * その後のデータに関しては一切規定しない。 * * クライアント側の無用の混乱を防ぐため、Protocol Version と Supported * Stylesの項目は必ずなければならない。また、Extension Data 以外はプロファ * イルデータの中に同じコードのデータが複数あってはならない。 */ /* * 変換属性データ * * 属性コードのうち、0 から 255 までは標準プロトコルが使用するもので、現 * 在属性が割り振られていないからといって勝手に使用してはならない。その * ような目的のため属性コード 256 から 65535 がプライベートコード拡張領 * 域として用意されている。ただしこの領域の使用に当たってはあらかじめそ * の拡張コードを使用することを Use Extension (下記参照) を用いてあらか * じめ宣言する必要がある。 * * 属性データの指定方法には、変換開始時に指定する方法と、変換中に指定す * る方法の 2通りがあるが、属性コードによっては変換開始時にしか指定でき * ないものがある。そこで、0-255 の標準コードのうち、0 から 127 までは変 * 換開始時でも変換中でも指定できるもの、128 から 255 までは変換開始時に * しか指定できないもの、に分けてある。拡張コードについては特にこのよう * な区別は定めない。 * * このプロトコルで定義される属性コードは次の通りである。 * * -- 変換開始時にも、変換途中にも指定できるもの -- * * No Operation: * code: 0 * data-length: N (could be 0) * data: anything * * 何もしない。プロパティのある部分をスキップさせるのに便利。 * * Indirect Attribute: * code: 1 * data-length: 1 * data[0]: * CARD32: property name (Atom) * * 指定されたプロパティに従って属性を設定する。CONVERSION_ATTRIBUTE * イベントで複数の属性データを設定したい時や、イベントに属性データが * 入り切らない時に使用する。 * * Focus Window: * code: 2 * data-length: 1 * data[0]: * CARD32: focus window (Window) * * フォーカスウィンドウを指定する。 * * Spot Location: * data-length: 1 * data[0]: * INT16(upper 16bit): X * INT16(lower 16bit): Y * * スポットロケーションを指定する。ベースラインの開始点で指定する。 * * Client Area: * data-length: 2 * data[0]: * INT16(upper 16bit): X * INT16(lower 16bit): Y * data[1]: * CARD16(upper 16bit): Width * CARD16(lower 16bit): Height * * 変換テキスト表示領域を指定する。 * * Status Area: * data-length: 2 * data[0]: * INT16(upper 16bit): X * INT16(lower 16bit): Y * data[1]: * CARD16(upper 16bit): Width * CARD16(lower 16bit): Height * * ステータス表示領域を指定する。 * * Colormap: * data-length: 1 * data[0]: * CARD32: colormap (XID) * * カラーマップ ID を指定する。 * * Color: * data-length: 2 * data[0]: * CARD32: foreground pixel * data[1]: * CARD32: background pixel * * フォアグラウンドとバックグラウンドのピクセル値を指定する。 * * Background Pixmap: * data-length: 1 * data[0]: * CARD32: background pixmap (Pixmap) * * バックグラウンドの Pixmap ID を指定する。 * * Line Spacing: * data-length: 1 * data[0]: * CARD32: line spacing * * 行間を指定する。ベースライン間の距離で指定する。 * * Font Atoms: * data-length: N (>0) * data[0]: * CARD32: font atom 1 (Atom) * ... * data[N-1]: * CARD32: font atom N (Atom) * * 使用するフォントの "FONT" アトムのリストを指定する。 * * Cursor: * data-length: 1 * data[0]: * CARD32: cursor (Cursor) * * カーソル ID を指定する。 * * -- 変換開始時のみ指定できるもの -- * * Input Style: * data-length: 1 * data[0]: * CARD32: input style * * 入力方法を指定する。 * デフォルトは Root Window Style である。 * * Event Capture Method: * data-length: 1 * data[0]: * CARD32: event capture method * * クライアントウィンドウからのイベントの取得方法を指定する。デフォ * ルトはクライアントウィンドウの前に InputOnly ウィンドウを作って * そのキーイベントをセレクトするというものである。他の方法としては、 * フォーカスウィンドウ (フォーカスウィンドウが指定されていなければ * クライアントウィンドウ) のキーイベントを直接セレクトする (この場 * 合、変換中はクライアントはキーイベントを無視しなくてはならない) * ものと、何もしない、つまり変換中のクライアントはキーイベントをフ * ロントエンドに SendEvent しなくてはならない、という方法がある。 * * Use Extension: * data-length: N * data[0]: * CARD32: extension atom 1 (Atom) * ... * data[N-1]: * CARD32: extension atom N (Atom) * * この属性設定で使用される拡張を指定する。ここで指定する拡張はサー * バがサポートしているもの、つまりプロファイルデータ中のSupported * Extensions に書かれた拡張でなければならない。 */ #endif ./doc/notinstalled/enc-x0213.txt0000644000175000017500000002730007532460062016371 0ustar henrichhenrichJIS X 0213の代表的な符号化方式 JIS X 0213の符号化方式のうち、パソコンでよく使われるもの3種類を説明 します。 文字コードの構造(ISO 2022)の基礎知識については、『 文字コードの世界』のよう な参考書を参照してください。G0, G1, GL, GR といった用語の理解が必要です。ウ ェブで読める解説では「文字コードの話」の第4章がよいでしょう。 以下、0xで始まる数は16進表記です。 * 文字表の構成 * EUC-JISX0213 * ISO-2022-JP-3 * Shift_JISX0213 ------------------------------------------------------------------------ 文字表の構成 JIS X 0213の文字表は、ISO 2022に則った94×94の表が2面あるという構成 になって います。 * 1面: JIS X 0208の上位互換の表 (非漢字、漢字第1〜第3水準) * 2面: 第4水準漢字のみからなる表 94×94の表の行と列 (規格の用語ではそれぞれ区と 点と呼びます) が、符号化表現 の第1・第2バイトにそれぞれ 対応します。文字表の中の位置は、面番号と区番 号と 点番号の組み合わせで示されます。これを 面区点番号と呼びます。普通、面区点番 号は、各番号をハ イフンでつないで、1-14-6 (1面14区6点)のように表します。 文字表はISO-IRのサイトから入手できます(PDF版)。 次の節から、具体的な符号化方式の説明に入ります。 EUC-JISX0213 EUC-JISX0213はISO 2022に準拠した構造をしており、以下のような割り当 てを行っ た文字コードです。 * G0にISO/IEC 646 IRV (要するにASCII) * G1にJIS X 0213の1面 * (G2にJIS X 0201の片仮名) * G3にJIS X 0213の2面 ここでG2を括弧に入れてあるのは原則として使用しないためです。従来 のEUC-JPと の互換性のためだけに割り当てられています。 GLには常にG0 (ASCII)が呼び出されています。つまり0x20〜0x7fは常にASCII。 GRには通常G1が呼び出されています。つまり、0xa1〜0xfeは2バイトでJIS X 0213の1 面の文字を表します。 ただし、SS3 (0x8f)でGRにG3を呼び出します。この呼び出しは直後1文字分 だけ有効 で、その次の文字からはまたG1に戻ります。G3に割り当てられている 文字集合(JIS X 0213の2面)は2バイトコードなので、SS3の直後にきた2バイト (0xa1〜0xfeの範囲) が2面の文字を表すことになります。2面の文字が連続する 場合でも、1文字ごとに SS3で呼び出す必要があります。 また、SS2 (0x8e)でGRにG2を呼び出します。この呼び出しは1文字分だけ有 効で、次 の文字からはまたG1に戻ります。ただし、前述の通り、G2は原則とし て使用しませ ん。 なお、従来のEUC-JPはG3にJIS X 0212補助漢字を割り当てていました。こ こでJIS X 0213の2面が衝突していますが、JIS X 0213は補助漢字と重ならな い範囲に文字を定 義しているので、補助漢字かJIS X 0213かを見分けることが できます。(同時に使用 するという意味ではない) コード値の算出 面区点番号からEUC-JISX0213の第1・第2バイトを求めるのは簡単です。 区番号に 0xa0を足せば第1バイトに、点番号に0xa0を足せば第2バイトになります。 2面の文字 はその直前に0x8fを付けると覚えておけばよいでしょう。 2バイトコードの見分け方 0x7f以下のバイトは、文脈によらず常にASCII (1バイトコード)です。 0xa1〜0xfeのバイトは、通常は1面の文字を表す2バイトコードを構成しま す (第1バ イトも第2バイトも同じ範囲のバイト値であることに注意)。ただし、 * 直前のバイトが0x8eだったら、JIS X 0201片仮名を表す1バイトコードです。 * 直前のバイトが0x8fだったら、2面の文字を表す2バイトコードの1バイト 目で す。 EUC-JPとの違い 構造の違いはありません。中に何が (どんな文字が) 入っているかの違い だけで す。 * G1がJIS X 0208でなくJIS X 0213の1面: つまり、従来空き領域だった コード ポイントも文字として使用 * G3がJIS X 0212でなくJIS X 0213の2面 従来EUC-JPをフルサポートしていたプログラムは、ほとんど何もせずとも EUC-JISX0213を扱えることが多いでしょう。ただし、JIS X 0212に対応してい なか ったプログラムは、SS3に対応させる必要があります。 ISO-2022-JP-3 ISO-2022-JP-3は7ビットのコードで、G0へ文字集合を指示するエスケープ シーケン スによってGLの文字集合を切り替えます。(つまり、GLにG0を呼び出し た状態が固定 されており、G0への指示によって文字集合の切り替えを実現する) 指示のエスケープシーケンスは以下の表の通りです。ここで「文字表記」 は、各バ イトを便宜的にASCIIの文字で表わしたものです。 符号化文字集合 16進表記 文字表記 ISO/IEC 646 IRV (要するにASCII)1b 28 42 ESC ( B JIS X 0213の1面 1b 24 28 4f ESC $ ( O JIS X 0213の2面 1b 24 28 50 ESC $ ( P ただし、ISO-2022-JPとの互換性のため、1面の指示には「1b 24 42」を使 うことも できます。この指示を行った状態では、規格票の附属書2表1(64ペー ジ) にある文字 を使用することはできません〔編注: 表を自作する予定〕。使っ てはいけない文字 は、JIS X 0208に無い文字、包摂規準が変更された文字が中 心です。これらの文字 を表すには必ず「1b 24 28 4f」の指示を使わなければ なりません。 さらに、状態について以下の規則があります。(ISO-2022-JPと同じ) * 初期状態はASCII。つまり、ファイルの先頭のバイト列は (それがエスケー プ シーケンスでなかったら) ASCIIの文字列を表します。 * 改行コード(CRLF; 即ち、0x0d 0x0aの2バイト)が現れるのはASCIIの状態の と きに限る。つまり、改行の前でASCIIに戻しておく必要があります。 * 情報交換の終了はASCIIの状態のときに限る。つまり、ファイルの最後では ASCIIに戻しておく必要があります。 余談になりますが、Mule-UCSでサポートされるEmacsのコーディングシステム “iso-2022-jp-3-strict”は、規格に適合する範囲でできる限り「1b 24 42」 を使 って符号化する方式です。これを使って符号化したテキストは、 ISO-2022-JPにしか 対応していないソフトウェアでもある程度読むことができ ます。常に「1b 24 28 4f」を使うと、このエスケープシーケンスを知らないプ ログラムでは漢字が全く表 示できません。(参考: 『JIS X 0213の特徴と、Emacs上での実装』) なお、ISO-2022-JP-3は、ISO-2022-JP-2 (RFC 1554)の上位互換ではありま せん。 コード値の算出 面区点番号からISO-2022-JP-3の第1・第2バイトを求めるのは簡単です。区 番号に 0x20を足せば第1バイトに、点番号に0x20を足せば第2バイトになります。 2バイトコードの見分け方 上記のエスケープシーケンスによります。文字を表すバイトの範囲は1バイ ト文字も 2バイト文字も同じなので、エスケープシーケンスが無いと見分けが つきません。 ISO-2022-JPとの違い エスケープシーケンスの違いだけです。 * JIS X 0213の1面・2面のエスケープシーケンスを導入 * 83JISのエスケープシーケンスを一部制限 (上記「1b 24 42」) * 78JISのエスケープシーケンスを廃止 (「1b 24 40」) * JIS X 0201のエスケープシーケンスを廃止 (「1b 28 4a」) Shift_JISX0213 Shift_JISX0213は、JIS X 0201の8ビットコードの隙間に無理矢理JIS X 0213 を詰め 込んだコードです。従来のShift_JISとの互換性を保った構造になっ ています。前述 のEUC-JISX0213やISO-2022-JP-3とは異なり、ISO 2022に整合 的ではありません。 コード値0x20〜0x7fはJIS X 0201ラテン文字、0xa0〜0xdfはJIS X 0201 片 仮名と同 じです。JIS X 0213の文字はややこしい入り方をしています。詳細は 以下で述べま すが、おおまかにいうと「第1バイトを縮めて、第2バイトを広げ る」ような方法で す。第1バイトを縮めないとJIS X 0201の隙間に入りきらな いのです。 コード値の算出 面区点番号からShift_JISX0213の第1・第2バイトは以下の通り求められます。 面番号を m、区番号を k、点番号を t とする。また、記号 ÷ は整数除算 (小数点 以下切捨て)を表す。 第1バイト(S1)は、以下による: 1. m = 1 で 1 ≦ k ≦ 62 のとき, S1 = (k + 0x101) ÷ 2. 2. m = 1 で 63 ≦ k ≦ 94 のとき, S1 = (k + 0x181) ÷ 2. 3. m = 2 で, k = 1, 3, 4, 5, 8, 12, 13, 14, 15 のとき, S1 = (k + 0x1df) ÷ 2 − (k ÷ 8) × 3. 4. m = 2 で, 78 ≦ k ≦ 94 のとき, S1 = (k + 0x19b) ÷ 2. 第2バイト(S2)は、以下による: 1. k が奇数の場合: 1. 1 ≦ t ≦ 63 のとき, S2 = t + 0x3f. 2. 64 ≦ t ≦ 94 のとき, S2 = t + 0x40. 2. k が偶数の場合, S2 = t + 0x9e. 2バイトコードの見分け方 2バイトコードの第1バイトになるのは以下の範囲です。 * 0x81〜0x9f, 0xe0〜0xfc それ以外のバイトは1バイトコードおよび保留域です。保留域となるバイト は0x80、 0xa0、0xfd、0xfe、0xffです。 なお、2バイトコードの2バイト目になる範囲は以下の通りです。1バイトコー ドの範 囲と重なっているので注意が必要です(バイト列の途中の1バイトだけ取 り出しても1 バイトコードか否かを判断できない)。 * 0x40〜0x7e, 0x80〜0xfc Shift_JISとの違い 従来空き領域だったコードポイントを文字として使用。特に、2バイトコー ドの第1 バイトに0xf0〜0xfcの範囲を使用して2面の文字を割り当てています。 ------------------------------------------------------------------------ 蛇足 以上は全て規格の附属書に記述されている符号化方式です。このほか規格 本体にも 符号化方式はあるのですが、パソコンではあまり使われないので割愛 します。とは いえ、EUC-JISX0213は実質的に本体の「国際基準版・漢字用8ビッ ト符号」と同じな のですが。 蛇足2 (面)区点番号は参照用の番号であり、符号化方式ではありません。符号化 表現(バイ ト列)は区点番号から求められますが、区点番号自体は符号化表現で はないのです。 市販の本の中には区点番号を「区点コード」と呼んでEUCやシ フトJISと同列の符号 化方式として分類しているものがありますが、基礎的な 理解を欠いているという批 判を免れないでしょう。 ------------------------------------------------------------------------ 関連規格、文献、URL * JIS X 0201-1997 * JIS X 0202:1998 * JIS X 0208:1997 * JIS X 0213:2000 * 人文学と情報処理 (26), 特集「文字コード論から文字論へ」, 勉誠出版 * JISX0213 InfoCenter ------------------------------------------------------------------------ 2000年11月 矢野啓介 (yano@moon.email.ne.jp) 文責・権利等は諸注意のページによります。 ./doc/notinstalled/rovas.html.old0000644000175000017500000000462607532460062017113 0ustar henrichhenrich Rovasiras Page

        Rovásírás Lap

        Kostantinápolyi felirat

        ‮‬
                 
             
               

        Székely himnusz összevonásokkal

         

          ,    ,
         ,   .

            ,
          .

             ,
           .

             ,
            !

        Székely himnusz összevonások nélkül

         

          ,    ,
         ,   .

            ,
          .

             ,
           .

             ,
            ! ./doc/notinstalled/cl.help0000644000175000017500000000774207532460062015570 0ustar henrichhenrichWindows: C/C++ COMPILER OPTIONS -OPTIMIZATION- /O1 minimize space /Op[-] improve floating-pt consistency /O2 maximize speed /Os favor code space /Oa assume no aliasing /Ot favor code speed /Ob inline expansion (default n=0) /Ow assume cross-function aliasing /Od disable optimizations (default) /Ox maximum opts. (/Ogityb1 /Gs) /Og enable global optimization /Oy[-] enable frame pointer omission /Oi enable intrinsic functions -CODE GENERATION- /G3 optimize for 80386 /Gy separate functions for linker /G4 optimize for 80486 /Ge force stack checking for all funcs /G5 optimize for Pentium /Gs[num] disable stack checking calls /G6 optimize for Pentium Pro /Gh enable hook function call /GB optimize for blended model (default) /GR[-] enable C++ RTTI /Gd __cdecl calling convention /GX[-] enable C++ EH (same as /EHsc) /Gr __fastcall calling convention /Gi[-] enable incremental compilation /Gz __stdcall calling convention /Gm[-] enable minimal rebuild /GA optimize for Windows Application /EHs enable synchronous C++ EH /GD optimize for Windows DLL /EHa enable asynchronous C++ EH /Gf enable string pooling /EHc extern "C" defaults to nothrow /GF enable read-only string pooling /QIfdiv[-] enable Pentium FDIV fix /GZ enable runtime debug checks /QI0f[-] enable Pentium 0x0f fix -OUTPUT FILES- /Fa[file] name assembly listing file /Fo name object file /FA[sc] configure assembly listing /Fp name precompiled header file /Fd[file] name .PDB file /Fr[file] name source browser file /Fe name executable file /FR[file] name extended .SBR file /Fm[file] name map file -PREPROCESSOR- /C don't strip comments /FI name forced include file /D{=|#} define macro /U remove predefined macro /E preprocess to stdout /u remove all predefined macros /EP preprocess to stdout, no #line /I
        add to include search path /P preprocess to file /X ignore "standard places" -LANGUAGE- /Zi enable debugging information /Zl omit default library name in .OBJ /ZI enable Edit and Continue debug info /Zg generate function prototypes /Z7 enable old-style debug info /Zs syntax check only /Zd line number debugging info only /vd{0|1} disable/enable vtordisp /Zp[n] pack structs on n-byte boundary /vm type of pointers to members /Za disable extensions (implies /Op) /noBool disable "bool" keyword /Ze enable extensions (default) -MISCELLANEOUS- /?, /help print this help message /V set version string /c compile only, no link /w disable all warnings /H max external name length /W set warning level (default n=1) /J default char type is unsigned /WX treat warnings as errors /nologo suppress copyright message /Yc[file] create .PCH file /Tc compile file as .c /Yd put debug info in every .OBJ /Tp compile file as .cpp /Yu[file] use .PCH file /TC compile all files as .c /YX[file] automatic .PCH /TP compile all files as .cpp /Zm max memory alloc (% of default) -LINKING- /MD link with MSVCRT.LIB /MDd link with MSVCRTD.LIB debug lib /ML link with LIBC.LIB /MLd link with LIBCD.LIB debug lib /MT link with LIBCMT.LIB /MTd link with LIBCMTD.LIB debug lib /LD Create .DLL /F set stack size /LDd Create .DLL debug libary /link [linker options and libraries] ./doc/notinstalled/X11Hints.txt0000644000175000017500000005452307532460062016437 0ustar henrichhenrich------------------------------------------------------------------------------- Using `editdres' in your applications You have to register an event handler named '_EditResCheckMessages' on each toplevel window in your application. This event handler is defined in libXmu.a. --- I don't think this is actually true! ------------------------------------------------------------------------------- Permanent Objects in X Server dpy: your existing connection tempdpy: a secondary connection dedicated to make something permanent. tempdpy = XOpenDisplay(DisplayName(dpy)); XSetCloseDownMode(tempdpy, RetainPermanent); create_something_to_be_permanent(tempdpy); XCloseDisplay(tempdpy); Don't do anything else with this second display connection, as you don't want anything else to become permanent. For more information, have a look in the Xmu source code for the creation of standard colormap atoms. DO NOT USE the dpy of a normal Xlib or Xt client to make something permanent. You would make things permanent you wouldn't like to leave on the display when your program is finished. ;-) For Example: If you open a window with the `RetainPermanent' connection, then after the client closes down the window will still be there. If the window manager then makes an explicite XKillClient() requests for that window, all of the permanent set of information will then be deleted. ------------------------------------------------------------------------------- ColorMap allocation XInstallColormap() call is used only be window managers to change the actual colormap. To set the color map an application uses use the call XSetWMColormapWindows() or XtSetWMColormapWindows() to set the WM_COLORMAP_WINDOWS property on the toplevel windows. NOTE: you must have the widgets realised before using this call in Xt ------------------------------------------------------------------------------- Color allocation notes * To convert a color range of 0-255 to a X11 color range of 0-65535 you must multiple by 257 not 256. The reason for this is that 255*257 => 65535 This would also result in color #aabbcc becoming #aaaabbbbcccc which is the correct solution as used by the RGB data base. * The reverse of the above can divide by either 256 or 257 due to the integer division of each color compenent. ------------------------------------------------------------------------------- Color Allocation My color program always fails on XAllocColorCells()! Your program is assuming that the default colormap for the screen is a dynamic one, that is, one out of which you can allocate nonshared color cells via XAllocColorCells(). Some servers have a static colormap as their default colormap, so XAllocColorCells() will fail. You have several alternatives. One possibility is to change your program to use XAllocColor(). You won't be able to alter the color once you've allocated it, but you may not have needed to do that in the first place. You should use XAllocColor() in preference to XAllocColorCells() if you simply want to get colors on the screen. The reason is that XAllocColor() allows the same colors to be shared amongst different clients. If you really need to allocate and change colormap cells, then you still need to use XAllocColorCells() or XAllocColorPlanes(). For these calls to work, you must search the server's visual list for a visual that supports dynamic colormaps. Then, you must create a colormap against this visual and allocate colors out of this colormap. If the server doesn't have any dynamic visuals, your program simply won't work on this server. If you successfully create and use your own dynamic colormap, you'll also have to create a window using the same visual and set that window's colormap attribute to be your newly created colormap. Don't forget to set up WM_COLORMAP_WINDOWS so the window manager can install your colormap. ------------------------------------------------------------------------------- Drawing a large `fat' point The Best method from the network is Draw a line of length 0, with a width of desired diameter and a cap style of rounded. Other methods are more difficult or slow. ------------------------------------------------------------------------------- Notes on Drawing Bitmaps * XCopyPlane copies a bitmap to a pixmap with the appropriate foreground and background colours of the GC. (0-back 1-fore) * XCopyArea copies a pixmap map to a destination of the SAME depth without any changes to the coloring of the output. * Icon bitmaps have to be given to the window manager as bitmaps as that is what is expected. A pixmap icon must be setup as a icon window instead of a true icon. :-( Results :- To set a bitmap for command widgets from an included data file (IE not via a resource setting) requires a pixmap to be created with the bitmap stored in it using the correct color scheme. I suggest the following (though there may be a better way).. 1/ Copy the bitmap data into a pixmap of depth 1 in the server. 2/ perform a XCopyPlane from this `bitmap' into a pixmap of the correct depth using a GC with the appropite foreground and background colors set. 3/ destroy the intermediate depth 1 pixmap if you don't what it for other purposes. WARNING: Label Widgets handle its image as a Bitmap is pixmap depth is equal to 1. This can produce an inverted image for pixmaps on some monocrome displays. (those with black pixel == 0) ------------------------------------------------------------------------------- Drawing non-rectangular bitmaps/pixmaps If you are using the XPM library then the mask is created for you when you are making the pixmap. Here is how to use it or another bitmap as a mask to what you are drawing. METHOD 1: Here is the clip mask method mentioned above... The solution is to use your bitmap as a clip mask in the Graphics context. What the mask does is only allow drawing on the pixels where 1's are in the bitmap. XSetClipMask( display, gc, bitmapmask ); XSetClipOrigin( display, gc, 0, 0 ); XCopyArea( display, pixmap, XtWindow(widget), gc, 0, 0, width, height, 0, 0 ); /* clean up */ XSetClipMask( display, gc, None ); x and y are the upper left corner of the rectangle where the bitmap is to be placed. The mask must be a 2 plane pixmap (i.e. a bitmap); These masks are automatically created by the Xpm libraries. This is slow due to mask convertsion to rectangle lists. -- Jason Schmidt leolore@iastate.edu METHOD 2: XCopyArea(display, pixmap, window, gcxor, 0, 0, w, h, x, y); XSetForeground(display, gcand, 0); XSetBackground(display, gcand, ~0); XCopyPlane(display, mask, window, gcand, 0, 0, w, h, x, y, 1L); XCopyArea(display, pixmap, window, gcxor, 0, 0, w, h, x, y); NOTE: pixmap = colour pixmap mask = 1 plane pixmap It is pretty quick and you don't need clip masks, shape extensions etc. -- Justin Kibell jck@jaguar.catt.citri.edu.au METHOD 3: Use the mask as a shapemask with the X11 Nonrectangular Shape Window Extension. Typically this is what should be done when the icon is used in a desktop. -- Arnaud Le Hors But you can do this witha widget window too. (See my IconLabel Widget) ------------------------------------------------------------------------------- Pixmap in a Label Widgets The label widget draws bitmaps differently to bitmaps, but it can't tell the difference on monochrome displays. Thus on some monochrome displays pixmaps are drawn inverted as the white and black pixel values don't match that of a normal bitmap (white=0 and black=1). IE: pixmaps in labels on SUN monochrome consoles are correct but are inverted on NCD monochrome displays. To fix this if ( display_depth == 1 || white_pixel == 1 ) Invert the colors of your pixmap before assigning to a label. NOTE: swapping white and black on a label is not a good solution as the internal spacing will then have the wrong color. Solution ...insert example here...anyone?... ------------------------------------------------------------------------------- X Pixmaps with the color None.. The Color None if not masked using the Mask Bitmap generated comes out as Pixel Value 0. This pixel value is white on Sun and Dec X servers but black on NCD's, and other X Terminals and many other workstations like Silicon Graphic machines. The simple fix is to use the following coding.. ======8<------ static XpmColorSymbol attr_nonesymbol[] = { {NULL, "none", 0} }; static unsigned long attr_valuemask = XpmColorSymbols | XpmReturnPixels | XpmCloseness; /* ...initialize... */ attr_nonesymbols[0].pixel = app_data.icon_trans; /* transparent color */ /* do the job */ item->attr.valuemask = attr_valuemask; item->attr.colorsymbols = attr_nonesymbols; item->attr.numsymbols = XtNumber(attr_nonesymbols); item->attr.closeness = 40000; status = XpmReadPixmapFile(display, DefaultRootWindow(display), item->fname, &item->pixmap, NULL, &item->attr); /* Now remove the transparent pixel from the pixel list ** Otherwise it will be freed later when it shouldn't. :-( */ { int i,j; for( i = j = 0; i < item->attr.npixels; i++ ) { if( item->attr.pixels[i] == app_data.icon_trans ) continue; /* don't include the none pixel color */ item->attr.pixels[j++] = item->attr.pixels[i]; } item->attr.npixels = j; /* the number of pixels now */ } ======8<------ WARNING: The above is not really as simple as it seems. See the latest xbmbrowser program and look at the Chnages made for version 4.4 of the program. NOTE: The XpmColorSymbol array elements has three items of which only two are ever used for the substitution. This means there are three ways the substitution can be performed. XpmColorSymbol Elements | name value pixel | Results in -------------------------------+------------------------------------ "symbol" "color" ? | symbol with the color "color" "symbol" NULL pixel | symbol with the specified pixel NULL "color" pixel | "color" with the value of pixel -------------------------------+------------------------------------ ------------------------------------------------------------------------------- Panning Pixmaps A pixmap that is larger than the window(viewport) and you can move it (display it) without having to do more redraws and heavy IO. 1) Draw into a pixmap, then do the panning by hand using XCopyArea() though this doesn't sound like something you want to do.. 2) Create a window. Create a subwindow. Draw into your pixmap. Set that pixmap as the background of the subwindow. Use XMoveWindow() to move the subwindow for panning. ------------------------------------------------------------------------------- Nonrectangular pointer zones (many) in window (non-orthogonal) It is perfectly feasible and pretty easy to do with the SHAPE routines. Another solution is to just draw all the zones in the englobbing rectangular window an track the pointer motion events and calculate manually in which zone the pointer is (to highlight it or do whatever you want). You should probably try the first solution first, but many X servers are a bit sluggish when dealing with non-rectangular windows (Clip mask problem). lecom@slhp1.epfl.ch (Claude Lecommandeur) ------------------------------------------------------------------------------- General Speedup hints Joe English (joe@trystero.art.com) : * Don't create and destroy widgets on the fly. Try to reuse them. (This will avoid many problems with buggy toolkits, too.) * Use a line width of 0 in GCs. On some servers this makes a HUGE difference. * Compress and collapse multiple Expose events. This can make the difference between a fast application and a completely unusable one. Francois Staes (frans@kiwi.uia.ac.be) : * Just a small remark: I once heard that using a better malloc function would greatly increase performance of Xt based applications since they use malloc heavily. They suggested trying out the GNUY malloc, but I didn't find the time yet. I did some tests on small programs just doing malloc and free, and the differences were indeed very noticeable ( somewhat 5 times faster) Joe Stewart (joes@lpi.liant.com) * for long button press actions -- fork off a sub-process to deal with the problem. This leaves the application running normally. Or start a WorkProc in Xt. ------------------------------------------------------------------------------- Icons and Window state There are three states for windows: Withdrawn, Normal, and Iconic. Newly created top-level windows are in the Withdrawn state. Withdrawn -> Any The client should map the window with WM_HINTS.initial_state being set to NormalState or IconicState as appropriate. Any -> Withdrawen The client should unmap the window and follow it with a synthetic UnmapNotify event to itself to allow correct event programming. R5 has a new library routine to do this properly for WM. Normal -> Iconic The client should send a client message to iconify itself. This is done for you by the Xlib routine XIconifyWindow to make this job easier. Iconic -> Normal The client should map the window. WM_HINTS.initial_state is irrelevent. --- der Mouse mouse@larry.mcrcim.mcgill.edu ------------------------------------------------------------------------------- Application Exits Note that in many Unix-based implementations of Xlib, there's a sort of race condition around XIO errors; because of the way the connection between the server and the client is implemented, you may get a SIGPIPE before the next time you try to interact with the X11 server, ie, before you notice the XIO error. Since the default action for SIGPIPE is to abort the program, this is something of a problem. --- Matt Landau matt@centerline.com For applications that do not use WM_DELETE_WINDOW, a I/O error handler that exits quietly instead of printing a noisy complaint first. should be used. IE: myIOerror(d) Display *d; { exit(0); } ... SetIOErrorHandler(myIOerror); --- der Mouse mouse@larry.mcrcim.mcgill.edu The problem with your (above) solution is that while it cures the single erroneous error, it also defeats the the reporting of other, real errors in the same "swell foop", which is why I said, "IMHO, programs that don't participate..." --- Kaleb Keithley kaleb@thyme.jpl.nasa.gov ------------------------------------------------------------------------------- Signal Handling in X There IS a reason not to do Xt or Xlib calls within a signal handler. It has to do with confusing the X protocol, as well as this, the libraries are not re-entrent. Two safe methods are 1/ Set a flag (the only truly safe method) and Check this flag in you Work Procedure, or a XtTimeer Proc. 2/ Create a pipe added to the event loop with XtAppAddInput(). This method seems most universal on the network. ----- How to use a pipe to handle signals * In your X application startup code create a pipe. * Attach the readable end of the pipe to the X event queue using XtAppAddInput. * Create a signal handler and register it with the signals you want to handle in the event loop. * In the signal handler code, build a message with the signal number and any other info you might need to handle the signal, then write() it to the writable end of the pipe. Now when you get a signal, your signal handler will write to the pipe which will make the event dispatcher call your input event handler that can really process the signal... --- Tom Horsley tahorsley@csd.harris.com ----- This is not totally safe unless you are careful about overflowing the buffering capacity of the pipe. And I don't think anyone guarantees how much buffering pipes have, or even that they have any at all. At the price of a few of extra syscalls per signal received, you can avoid assuming more than one byte of buffering.... --- der Mouse -- mouse@larry.mcrcim.mcgill.edu ------------------------------------------------------------------------------- Multiple Displays | I have an Xt application that uses multiple displays (one app context). | When I try to call XtOpenDisplay on a display that currently has the | xdm login prompt, my application hangs (waiting for XtOpenDisplay to | return). Sure, opening the display hangs, but only for a certain amount of time. You could interrupt it by winding up a timer, doing a setjump and then XtOpenDisplay. When the timer strikes you longjump back. And don't forget to cancel the timer if opening the display succeeded. signal (SIGALRM, XtOpenTimeout); if (setjmp (xtOpenJump)) { LogError ("XtOpenDisplay timeout expired for display %s.\n", d->name); signal (SIGALRM, SIG_DFL); alarm (0); return False; } else { alarm ((unsigned) d->openTimeout); argc = 0; d->display = XtOpenDisplay (applicationContext, d->name, "xlogin", "Xlogin", NULL, 0, &argc, NULL); signal (SIGALRM, SIG_DFL); alarm (0); if (d->display == NULL) return False; Debug (1, "XtOpenDisplay (%s) successful\n", DisplayString (d->display)); /* ... */ return True; } NOTE: I can't get this to work - Anthony ------------------------------------------------------------------------------- Ephemeral Annotations (Rubberbanding Color Screens) XOR On color screens XOR can produce `random' color selections which may or maynot be actually visiable. Only if you install your own color map can you be sure that this would would as expecated directly. What's often appropriate is to interchange the foreground color with the background color. If your graphics has the concept of a foreground and a background, you can do XOR animation that switches foreground and background by setting the GC foreground pixel to the XOR of the foreground and background pixels. In C, this would be XGCValues gcvalues; gcvalues.foreground = fgpixel ^ bgpixel; XChangeGC(dpy,gc,GCForeground,&gcvalues); For monochrome graphics, you can use gcvalues.foreground = BlackPixel(dpy,DefaultScreen(dpy))^WhitePixel(dpy,DefaultScreen(dpy)); --- X11 Top Ten Questions: Dave Lemke (lemke@ncd.com) XOR with color cycling XOR works poorly in pictures involving randomized or `grainy' data (such as satalite maps). --- rosenth@vision.ethz.ch (Lukas Rosenthaler) Although a XOR'ed line may be hard to see. A flashing one is almost certainly visible. While the annotation is up, continually erase and redraw it three times a second slightly different using an Xt timer proc. IE: XOR plane 1 then 2, 3, 4... and repeat. to remove just xor all the planes that is currently xor'ed. Even though the effect of XOR drawing in a random color map yields random colors, this technique should yield enough different random colors on your annotation lines over a period of a couple of seconds that users will see them clearly. --- Oliver Jones (miki.pictel.com) XOR with `ant' dash lines Same principle as above. Draw the annotation lines dashed, and redraw them continually as you reset the origin of the dash pattern. This will make the annotation lines crawl, the way lassos and marquees do on Mac drawing programs. --- Oliver Jones (miki.pictel.com) Overlay Color plane An alternative is to devote one or two color planes to be overlay planes. This means that you lose those planes for displaying colors for your main image, but you gain the ability of being able to "overlay" an image over your main image. I should also point out that this technique is further simplified by technology that allows you to selectively write to certain pixel planes, instead of all of them. I believe X supports this, via the XSetPlaneMask function. --- Doug Young Backing Plane This works by using the backing pixmap used for expose redraws, as a tiling pattern. Just draw your annotation as normal but to undraw from the backing pixmap use the following GC. function: GXcopy fill_style: FillSolid tile: the backing pixmap ts_x_origin: 0 ts_y_origin: 0 And draw the annotation again to erase it. --- Jim Mayer (mayer@wrc.xerox.com) ------------------------------------------------------------------------------- Double Buffering One method is to divid the color planes into two sections to flip between. This is used by the Xpilot program. Problem is, this solution requires num_colours * num_colours colours to be allocated, limiting you to 16 colours on a 256 color machine. Alternitively, you can add support for the MIT double buffering extension. This should give a noticeable increase in speed. Lacking that, I would implement it much like the original ICO did in that I would draw into pixmaps and copy them into the window as needed. ------------------------------------------------------------------------------- Xresources from Xlib programs If you just want to get resources, look at XGetDefault, which "[...] provides a simple interface for clients not wishing to use the X toolkit or the more elaborate interfaces provided by the resource manager [...].". If you want something more complicated, look at XResourceManagerString and XScreenResourceString (the latter does not exist pre-R5), XrmGetFileDatabase, XrmGetStringDatabase, and XrmGetResource. There are many other Xrm* functions; check out the Xlib documentation. (And don't forget to call XrmInitialize.) der Mouse --- mouse@mcrcim.mcgill.edu ------------------------------------------------------------------------------- ./doc/notinstalled/wcwidth.c0000644000175000017500000001127207532460062016126 0ustar henrichhenrich/* * This is an implementation of wcwidth() and wcswidth() as defined in * "The Single UNIX Specification, Version 2, The Open Group, 1997" * * * Markus Kuhn -- 2000-02-08 -- public domain */ #include /* These functions define the column width of an ISO 10646 character * as follows: * * - The null character (U+0000) has a column width of 0. * * - Other C0/C1 control characters and DEL will lead to a return * value of -1. * * - Non-spacing and enclosing combining characters (general * category code Mn or Me in the Unicode database) have a * column width of 0. * * - Spacing characters in the East Asian Wide (W) or East Asian * FullWidth (F) category as defined in Unicode Technical * Report #11 have a column width of 2. * * - All remaining characters (including all printable * ISO 8859-1 and WGL4 characters, Unicode control characters, * etc.) have a column width of 1. * * This implementation assumes that wchar_t characters are encoded * in ISO 10646. */ int wcwidth(wchar_t ucs) { /* sorted list of non-overlapping intervals of non-spacing characters */ static const struct interval { unsigned short first; unsigned short last; } combining[] = { { 0x0300, 0x034E }, { 0x0360, 0x0362 }, { 0x0483, 0x0486 }, { 0x0488, 0x0489 }, { 0x0591, 0x05A1 }, { 0x05A3, 0x05B9 }, { 0x05BB, 0x05BD }, { 0x05BF, 0x05BF }, { 0x05C1, 0x05C2 }, { 0x05C4, 0x05C4 }, { 0x064B, 0x0655 }, { 0x0670, 0x0670 }, { 0x06D6, 0x06E4 }, { 0x06E7, 0x06E8 }, { 0x06EA, 0x06ED }, { 0x0711, 0x0711 }, { 0x0730, 0x074A }, { 0x07A6, 0x07B0 }, { 0x0901, 0x0902 }, { 0x093C, 0x093C }, { 0x0941, 0x0948 }, { 0x094D, 0x094D }, { 0x0951, 0x0954 }, { 0x0962, 0x0963 }, { 0x0981, 0x0981 }, { 0x09BC, 0x09BC }, { 0x09C1, 0x09C4 }, { 0x09CD, 0x09CD }, { 0x09E2, 0x09E3 }, { 0x0A02, 0x0A02 }, { 0x0A3C, 0x0A3C }, { 0x0A41, 0x0A42 }, { 0x0A47, 0x0A48 }, { 0x0A4B, 0x0A4D }, { 0x0A70, 0x0A71 }, { 0x0A81, 0x0A82 }, { 0x0ABC, 0x0ABC }, { 0x0AC1, 0x0AC5 }, { 0x0AC7, 0x0AC8 }, { 0x0ACD, 0x0ACD }, { 0x0B01, 0x0B01 }, { 0x0B3C, 0x0B3C }, { 0x0B3F, 0x0B3F }, { 0x0B41, 0x0B43 }, { 0x0B4D, 0x0B4D }, { 0x0B56, 0x0B56 }, { 0x0B82, 0x0B82 }, { 0x0BC0, 0x0BC0 }, { 0x0BCD, 0x0BCD }, { 0x0C3E, 0x0C40 }, { 0x0C46, 0x0C48 }, { 0x0C4A, 0x0C4D }, { 0x0C55, 0x0C56 }, { 0x0CBF, 0x0CBF }, { 0x0CC6, 0x0CC6 }, { 0x0CCC, 0x0CCD }, { 0x0D41, 0x0D43 }, { 0x0D4D, 0x0D4D }, { 0x0DCA, 0x0DCA }, { 0x0DD2, 0x0DD4 }, { 0x0DD6, 0x0DD6 }, { 0x0E31, 0x0E31 }, { 0x0E34, 0x0E3A }, { 0x0E47, 0x0E4E }, { 0x0EB1, 0x0EB1 }, { 0x0EB4, 0x0EB9 }, { 0x0EBB, 0x0EBC }, { 0x0EC8, 0x0ECD }, { 0x0F18, 0x0F19 }, { 0x0F35, 0x0F35 }, { 0x0F37, 0x0F37 }, { 0x0F39, 0x0F39 }, { 0x0F71, 0x0F7E }, { 0x0F80, 0x0F84 }, { 0x0F86, 0x0F87 }, { 0x0F90, 0x0F97 }, { 0x0F99, 0x0FBC }, { 0x0FC6, 0x0FC6 }, { 0x102D, 0x1030 }, { 0x1032, 0x1032 }, { 0x1036, 0x1037 }, { 0x1039, 0x1039 }, { 0x1058, 0x1059 }, { 0x17B7, 0x17BD }, { 0x17C6, 0x17C6 }, { 0x17C9, 0x17D3 }, { 0x18A9, 0x18A9 }, { 0x20D0, 0x20E3 }, { 0x302A, 0x302F }, { 0x3099, 0x309A }, { 0xFB1E, 0xFB1E }, { 0xFE20, 0xFE23 } }; int min = 0; int max = sizeof(combining) / sizeof(struct interval) - 1; int mid; /* test for 8-bit control characters */ if (ucs == 0) return 0; if (ucs < 32 || (ucs >= 0x7f && ucs < 0xa0)) return -1; /* first quick check for Latin-1 etc. characters */ if (ucs < combining[0].first) return 1; /* binary search in table of non-spacing characters */ while (max >= min) { mid = (min + max) / 2; if (combining[mid].last < ucs) min = mid + 1; else if (combining[mid].first > ucs) max = mid - 1; else if (combining[mid].first <= ucs && combining[mid].last >= ucs) return 0; } /* if we arrive here, ucs is not a combining or C0/C1 control character */ /* fast test for majority of non-wide scripts */ if (ucs < 0x1100) return 1; return 1 + ((ucs >= 0x1100 && ucs <= 0x115f) || /* Hangul Jamo */ (ucs >= 0x2e80 && ucs <= 0xa4cf && (ucs & ~0x0011) != 0x300a && ucs != 0x303f) || /* CJK ... Yi */ (ucs >= 0xac00 && ucs <= 0xd7a3) || /* Hangul Syllables */ (ucs >= 0xf900 && ucs <= 0xfaff) || /* CJK Compatibility Ideographs */ (ucs >= 0xfe30 && ucs <= 0xfe6f) || /* CJK Compatibility Forms */ (ucs >= 0xff00 && ucs <= 0xff5f) || /* Fullwidth Forms */ (ucs >= 0xffe0 && ucs <= 0xffe6)); } int wcswidth(const wchar_t *pwcs, size_t n) { int w, width = 0; for (;*pwcs && n-- > 0; pwcs++) if ((w = wcwidth(*pwcs)) < 0) return -1; else width += w; return width; } ./doc/notinstalled/ttf2pfa.c0000644000175000017500000014037307532460062016030 0ustar henrichhenrich/** * Andrew Weeks was kind anough * to contribute this code to us. * Picked up by Gaspar Sinai on December 1997. */ #include #include #include #include #include #include #include #include #include "ttf.h" typedef struct glyph { int char_no; /* Encoding of glyph */ int unicode; /* Unicode value of glyph */ char *name; /* Postscript name of glyph */ int xMin, yMin, xMax, yMax; int width, lsb; } GLYPH; static GLYPH *glyph_list; static short encoding[256]; /* inverse of glyph[].char_no */ static FILE *pfa_file, *afm_file; static TTF_DIRECTORY *directory; static TTF_DIR_ENTRY *dir_entry ; static char *filebuffer; static TTF_NAME *name_table = NULL; static TTF_NAME_REC *name_record; static TTF_HEAD *head_table = NULL; static TTF_HHEA *hhea_table = NULL; static TTF_KERN *kern_table = NULL; static TTF_CMAP *cmap_table = NULL; static LONGHORMETRIC *hmtx_table = NULL; static TTF_GLYF *glyf_table; static BYTE *glyf_start = NULL; static TTF_MAXP *maxp_table = NULL; static TTF_POST_HEAD *post_table = NULL; static USHORT *short_loca_table = NULL; static ULONG *long_loca_table = NULL; static int ttf_file, numglyphs, long_offsets, ncurves; static short cmap_n_segs; static USHORT *cmap_seg_start, *cmap_seg_end; static short *cmap_idDelta, *cmap_idRangeOffset; static int ps_fmt_3 = 0, unicode = 0; static float scale_factor; static char *Unknown_glyph = "UNKN"; static char name_buffer[2000]; static char *name_fields[8]; static char *ISOLatin1Encoding[256] = { ".null", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", "CR", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", ".notdef", "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand", "quoteright", "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period", "slash", "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "colon", "semicolon", "less", "equal", "greater", "question", "at", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "bracketleft", "backslash", "bracketright", "asciicircum", "underscore", "grave", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "braceleft", "bar", "braceright", "asciitilde", ".notdef", ".notdef", ".notdef", "quotesinglbase", "florin", "quotedblbase", "ellipsis", "dagger", "daggerdbl", "circumflex", "perthousand", "Scaron", "guilsinglleft", "OE", ".notdef", ".notdef", ".notdef", ".notdef", "quoteleft", "quoteright", "quotedblleft", "quotedblright", "bullet", "endash", "emdash", "tilde", "trademark", "scaron", "guilsinglright", "oe", ".notdef", ".notdef", "Ydieresis", "nbspace", "exclamdown", "cent", "sterling", "currency", "yen", "brokenbar", "section", "dieresis", "copyright", "ordfeminine", "guillemotleft", "logicalnot", "sfthyphen", "registered", "macron", "degree", "plusminus", "twosuperior", "threesuperior", "acute", "mu", "paragraph", "periodcentered", "cedilla", "onesuperior", "ordmasculine", "guillemotright", "onequarter", "onehalf", "threequarters", "questiondown", "Agrave", "Aacute", "Acircumflex", "Atilde", "Adieresis", "Aring", "AE", "Ccedilla", "Egrave", "Eacute", "Ecircumflex", "Edieresis", "Igrave", "Iacute", "Icircumflex", "Idieresis", "Eth", "Ntilde", "Ograve", "Oacute", "Ocircumflex", "Otilde", "Odieresis", "multiply", "Oslash", "Ugrave", "Uacute", "Ucircumflex", "Udieresis", "Yacute", "Thorn", "germandbls", "agrave", "aacute", "acircumflex", "atilde", "adieresis", "aring", "ae", "ccedilla", "egrave", "eacute", "ecircumflex", "edieresis", "igrave", "iacute", "icircumflex", "idieresis", "eth", "ntilde", "ograve", "oacute", "ocircumflex", "otilde", "odieresis", "divide", "oslash", "ugrave", "uacute", "ucircumflex", "udieresis", "yacute", "thorn", "ydieresis"}; static char *adobe_StandardEncoding[256] = { ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", "space","exclam","quotedbl","numbersign", "dollar","percent","ampersand","quoteright", "parenleft","parenright","asterisk","plus", "comma","hyphen","period","slash", "zero","one","two","three", "four","five","six","seven", "eight","nine","colon","semicolon", "less","equal","greater","question", "at","A","B","C","D","E","F","G", "H","I","J","K","L","M","N","O", "P","Q","R","S","T","U","V","W", "X","Y","Z","bracketleft", "backslash","bracketright","asciicircum","underscore", "grave","a","b","c","d","e","f","g", "h","i","j","k","l","m","n","o", "p","q","r","s","t","u","v","w", "x","y","z","braceleft", "bar","braceright","asciitilde",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef","exclamdown","cent","sterling", "fraction","yen","florin","section", "currency","quotesingle","quotedblleft","guillemotleft", "guilsinglleft","guilsinglright","fi","fl", ".notdef","endash","dagger","daggerdbl", "periodcentered",".notdef","paragraph","bullet", "quotesinglbase","quotedblbase","quotedblright","guillemotright", "ellipsis","perthousand",".notdef","questiondown", ".notdef","grave","acute","circumflex", "tilde","macron","breve","dotaccent", "dieresis",".notdef","ring","cedilla", ".notdef","hungarumlaut","ogonek","caron", "emdash",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef",".notdef",".notdef",".notdef", ".notdef","AE",".notdef","ordfeminine", ".notdef",".notdef",".notdef",".notdef", "Lslash","Oslash","OE","ordmasculine", ".notdef",".notdef",".notdef",".notdef", ".notdef","ae",".notdef",".notdef", ".notdef","dotlessi",".notdef",".notdef", "lslash","oslash","oe","germandbls", ".notdef",".notdef",".notdef",".notdef"}; static char *mac_glyph_names[258] = { ".notdef", ".null", "CR", "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand", "quotesingle", "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period", "slash", "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "colon", "semicolon", "less", "equal", "greater", "question", "at", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "bracketleft", "backslash", "bracketright", "asciicircum", "underscore", "grave", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "braceleft", "bar", "braceright", "asciitilde", "Adieresis", "Aring", "Ccedilla", "Eacute", "Ntilde", "Odieresis", "Udieresis", "aacute", "agrave", "acircumflex", "adieresis", "atilde", "aring", "ccedilla", "eacute", "egrave", "ecircumflex", "edieresis", "iacute", "igrave", "icircumflex", "idieresis", "ntilde", "oacute", "ograve", "ocircumflex", "odieresis", "otilde", "uacute", "ugrave", "ucircumflex", "udieresis", "dagger", "degree", "cent", "sterling", "section", "bullet", "paragraph", "germandbls", "registered", "copyright", "trademark", "acute", "dieresis", "notequal", "AE", "Oslash", "infinity", "plusminus", "lessequal", "greaterequal", "yen", "mu", "partialdiff", "summation", "product", "pi", "integral", "ordfeminine", "ordmasculine", "Omega", "ae", "oslash", "questiondown", "exclamdown", "logicalnot", "radical", "florin", "approxequal", "increment", "guillemotleft", "guillemotright", "ellipsis", "nbspace", "Agrave", "Atilde", "Otilde", "OE", "oe", "endash", "emdash", "quotedblleft", "quotedblright", "quoteleft", "quoteright", "divide", "lozenge", "ydieresis", "Ydieresis", "fraction", "currency", "guilsinglleft", "guilsinglright", "fi", "fl", "daggerdbl", "periodcentered", "quotesinglbase", "quotedblbase", "perthousand", "Acircumflex", "Ecircumflex", "Aacute", "Edieresis", "Egrave", "Iacute", "Icircumflex", "Idieresis", "Igrave", "Oacute", "Ocircumflex", "applelogo", "Ograve", "Uacute", "Ucircumflex", "Ugrave", "dotlessi", "circumflex", "tilde", "macron", "breve", "dotaccent", "ring", "cedilla", "hungarumlaut", "ogonek", "caron", "Lslash", "lslash", "Scaron", "scaron", "Zcaron", "zcaron", "brokenbar", "Eth", "eth", "Yacute", "yacute", "Thorn", "thorn", "minus", "multiply", "onesuperior", "twosuperior", "threesuperior", "onehalf", "onequarter", "threequarters", "franc", "Gbreve", "gbreve", "Idot", "Scedilla", "scedilla", "Cacute", "cacute", "Ccaron", "ccaron", "dmacron"}; static int unicode_to_win31 (int unival) { if (unival <= 0x0081) { return unival; } else if (unival >= 0x00a0 && unival <= 0x00ff) { return unival; } else { switch (unival) { case 0x008d: return 0x8d; case 0x008e: return 0x8e; case 0x008f: return 0x8f; case 0x0090: return 0x90; case 0x009d: return 0x9d; case 0x009e: return 0x9e; case 0x0152: return 0x8c; case 0x0153: return 0x9c; case 0x0160: return 0x8a; case 0x0161: return 0x9a; case 0x0178: return 0x9f; case 0x0192: return 0x83; case 0x02c6: return 0x88; case 0x02dc: return 0x98; case 0x2013: return 0x96; case 0x2014: return 0x97; case 0x2018: return 0x91; case 0x2019: return 0x92; case 0x201a: return 0x82; case 0x201c: return 0x93; case 0x201d: return 0x94; case 0x201e: return 0x84; case 0x2020: return 0x86; case 0x2021: return 0x87; case 0x2022: return 0x95; case 0x2026: return 0x85; case 0x2030: return 0x89; case 0x2039: return 0x8b; case 0x203a: return 0x9b; case 0x2122: return 0x99; default: return 0xffff; } } } static void handle_name () { int j, k, lang, len, platform; char *p, *ptr, *string_area; char *nbp = name_buffer; int found3 = 0; string_area = (char *)name_table + ntohs(name_table->offset); name_record = &(name_table->nameRecords); for (j=0; j<8; j++) { name_fields[j] = NULL; } for (j=0; j < ntohs(name_table->numberOfNameRecords); j++) { platform = ntohs(name_record->platformID); if (platform == 3) { found3 = 1; lang = ntohs(name_record->languageID) & 0xff; len = ntohs(name_record->stringLength); if (lang == 0 || lang == 9) { k = ntohs(name_record->nameID); if (k < 8) { name_fields[k] = nbp; p = string_area+ntohs(name_record->stringOffset); for ( k = 0; k < len; k++) { if (p[k] != '\0') { if (p[k] == '(') { *nbp = '['; } else if (p[k] == ')') { *nbp = ']'; } else { *nbp = p[k]; } nbp ++; } } *nbp = '\0'; nbp ++; } } } name_record++; } string_area = (char *)name_table + ntohs(name_table->offset); name_record = &(name_table->nameRecords); if (!found3) { for (j=0; j < ntohs(name_table->numberOfNameRecords); j++) { platform = ntohs(name_record->platformID); if (platform == 1) { found3 = 1; lang = ntohs(name_record->languageID) & 0xff; len = ntohs(name_record->stringLength); if (lang == 0 || lang == 9) { k = ntohs(name_record->nameID); if (k < 8) { name_fields[k] = nbp; p = string_area+ntohs(name_record->stringOffset); for ( k = 0; k < len; k++) { if (p[k] != '\0') { if (p[k] == '(') { *nbp = '['; } else if (p[k] == ')') { *nbp = ']'; } else { *nbp = p[k]; } nbp ++; } } *nbp = '\0'; nbp ++; } } } name_record++; } } if (!found3) { fprintf(stderr, "**** Cannot decode font name fields ****\n"); exit(-1); } if (name_fields[6] == NULL) { name_fields[6] = name_fields[4]; } p = name_fields[6]; while (*p != '\0') { if (!isalnum(*p)) { *p = '_'; } p++; } } static void handle_cmap () { int num_tables = ntohs(cmap_table->numberOfEncodingTables); BYTE *ptr; int i, j, k, kk, size, format, offset, seg_c2, found, set_ok; int platform, encoding_id; TTF_CMAP_ENTRY *table_entry; TTF_CMAP_FMT0 *encoding0; TTF_CMAP_FMT4 *encoding4; USHORT start, end, ro; short delta, n; found = 0; for (i=0; i<256; i++) { encoding[i] = 0; } for (i=0; i < num_tables && !found; i++) { table_entry = &(cmap_table->encodingTable[i]); offset = ntohl(table_entry->offset); encoding4 = (TTF_CMAP_FMT4 *) ((BYTE *)cmap_table + offset); format = ntohs(encoding4->format); platform = ntohs(table_entry->platformID); encoding_id = ntohs(table_entry->encodingID); if (platform == 3 && format == 4) { switch (encoding_id) { case 0: fputs("Found Symbol Encoding\n", stderr); break; case 1: fputs("Found Unicode Encoding\n", stderr); unicode = 1; break; default: fprintf(stderr, "****MS Encoding ID %d not supported****\n", encoding_id); exit(-1); break; } found = 1; seg_c2 = ntohs(encoding4->segCountX2); cmap_n_segs = seg_c2 >> 1; ptr = (BYTE *)encoding4 + 14; cmap_seg_end = (USHORT *) ptr; cmap_seg_start = (USHORT *) (ptr + seg_c2 + 2); cmap_idDelta = (short *) (ptr + (seg_c2 * 2 )+ 2); cmap_idRangeOffset = (short *) (ptr + (seg_c2 * 3) + 2); for (j=0; j < cmap_n_segs-1; j++) { start = ntohs(cmap_seg_start[j]); end = ntohs(cmap_seg_end[j]); delta = ntohs(cmap_idDelta[j]); ro = ntohs(cmap_idRangeOffset[j]); for (k = start; k <= end; k++) { if (delta != 0) { n = k + delta; } else { n = ntohs(*( (ro >> 1) + (k - start) + &(cmap_idRangeOffset[j]))); } if (glyph_list[n].unicode != -1) { if (strcmp(glyph_list[n].name, ".notdef") != 0) { fprintf(stderr, "Glyph %s has >= two encodings (A), %4.4x & %4.4x\n", glyph_list[n].name, glyph_list[n].unicode, k); } set_ok = 0; } else { set_ok = 1; } if (unicode) { kk = unicode_to_win31 (k); if (set_ok) { glyph_list[n].unicode = k; glyph_list[n].char_no = kk; } if (kk <= 0xff) encoding[kk] = n; } else { if ((k & 0xff00) == 0xf000) { encoding[k & 0x00ff] = n; if (set_ok) { glyph_list[n].char_no = k & 0x00ff; glyph_list[n].unicode = k; } } else { if (set_ok) { glyph_list[n].char_no = k; glyph_list[n].unicode = k; } fprintf(stderr, "Glyph %s has non-symbol encoding %4.4x\n", glyph_list[n].name, k & 0xffff); } } } } } } if (!found) { fputs ("No Microsoft encoding, looking for MAC encoding\n", stderr); for (i=0; i < num_tables && !found; i++) { table_entry = &(cmap_table->encodingTable[i]); offset = ntohl(table_entry->offset); encoding0 = (TTF_CMAP_FMT0 *) ((BYTE *)cmap_table + offset); format = ntohs(encoding0->format); platform = ntohs(table_entry->platformID); encoding_id = ntohs(table_entry->encodingID); if (format == 0) { found = 1; size = ntohs(encoding0->length) - 6; for (j=0; jglyphIdArray[j]; if (glyph_list[n].char_no != -1) { fprintf(stderr, "Glyph %s has >= two encodings (B), %4.4x & %4.4x\n", glyph_list[n].name, glyph_list[n].char_no, j); } else { glyph_list[n].char_no = j; if (j < 256) { encoding[j] = n; } } } } } } if (!found) { fprintf(stderr, "**** No Recognised Encoding Table ****\n"); exit(-1); } } static void handle_head () { long_offsets = ntohs(head_table->indexToLocFormat); if (long_offsets != 0 && long_offsets != 1) { fprintf(stderr, "**** indexToLocFormat wrong ****\n"); exit(-1); } } static void draw_glyf(int glyphno, int parent) { int i, j, k, k1, len, first, cs, ce; int finished, nguide, contour_start, contour_end; short ncontours, n_inst, last_point; USHORT *contour_end_pt; BYTE *ptr; short xcoord[2000], ycoord[2000], xrel[2000], yrel[2000]; BYTE flags[2000]; if (long_offsets) { glyf_table = (TTF_GLYF *) (glyf_start + ntohl(long_loca_table[glyphno])); len = ntohl(long_loca_table[glyphno+1]) - ntohl(long_loca_table[glyphno]); } else { glyf_table = (TTF_GLYF *) (glyf_start + (ntohs(short_loca_table[glyphno]) << 1)); len = (ntohs(short_loca_table[glyphno+1]) - ntohs(short_loca_table[glyphno])) << 1; } if (len <= 0) { fprintf(stderr, "**** Composite glyph %s refers to non-existent glyph %s ****\n", glyph_list[parent].name, glyph_list[glyphno].name); fprintf(pfa_file, "\n%%**** Composite glyph %s refers to non-existent glyph %s ****\n", glyph_list[parent].name, glyph_list[glyphno].name); return; } ncontours = ntohs(glyf_table->numberOfContours); if (ncontours <= 0) { fprintf(stderr, "**** Composite glyph %s refers to composite glyph %s ****\n", glyph_list[parent].name, glyph_list[glyphno].name); fprintf(pfa_file, "\n%%**** Composite glyph %s refers to composite glyph %s ****\n", glyph_list[parent].name, glyph_list[glyphno].name); return; } contour_end_pt = (USHORT *) ((char *)glyf_table + sizeof(TTF_GLYF)); last_point = ntohs(contour_end_pt[ncontours-1]); n_inst = ntohs(contour_end_pt[ncontours]); ptr = ((BYTE *)contour_end_pt) + (ncontours << 1) + n_inst + 2; j = k = 0; while (k <= last_point) { flags[k] = ptr[j]; if (ptr[j] & REPEAT) { for (k1=0; k1 < ptr[j+1]; k1++) { k++; flags[k] = ptr[j]; } j++; } j++; k++; } for (k=0; k <= last_point; k++) { if (flags[k] & XSHORT) { if (flags[k] & XSAME) { xrel[k] = ptr[j]; } else { xrel[k] = - ptr[j]; } j++; } else if (flags[k] & XSAME) { xrel[k] = 0; } else { xrel[k] = ptr[j] * 256 + ptr[j+1]; j += 2; } if (k==0) { xcoord[k] = xrel[k]; } else { xcoord[k] = xrel[k] + xcoord[k-1]; } } for (k=0; k <= last_point; k++) { if (flags[k] & YSHORT) { if (flags[k] & YSAME) { yrel[k] = ptr[j]; } else { yrel[k] = - ptr[j]; } j++; } else if (flags[k] & YSAME) { yrel[k] = 0; } else { yrel[k] = ptr[j] * 256 + ptr[j+1]; j += 2; } if (k==0) { ycoord[k] = yrel[k]; } else { ycoord[k] = yrel[k] + ycoord[k-1]; } } i = j = 0; first = 1; while (i <= ntohs(contour_end_pt[ncontours-1])) { contour_end = ntohs(contour_end_pt[j]); if (first) { fprintf(pfa_file, "%d %d moveto\n", xcoord[i], ycoord[i]); ncurves ++; contour_start = i; first = 0; } else if (flags[i] & ONOROFF) { fprintf(pfa_file, "%d %d lineto\n", xcoord[i], ycoord[i]); ncurves ++; } else { cs = i-1; finished = nguide = 0; while (!finished) { if (i == contour_end+1) { ce = contour_start; finished = 1; } else if (flags[i] & ONOROFF) { ce = i; finished = 1; } else { i++; nguide++; } } switch (nguide) { case 0: fprintf( pfa_file,"%d %d lineto\n", xcoord[ce], ycoord[ce]); ncurves ++; break; case 1: fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (2*xcoord[cs+1]+xcoord[ce])/3, (2*ycoord[cs+1]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); ncurves ++; break; case 2: fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (-xcoord[cs]+4*xcoord[cs+1])/3, (-ycoord[cs]+4*ycoord[cs+1])/3, (4*xcoord[cs+2]-xcoord[ce])/3, (4*ycoord[cs+2]-ycoord[ce])/3, xcoord[ce], ycoord[ce]); ncurves ++; break; case 3: fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (5*xcoord[cs+1]+xcoord[cs+2])/6, (5*ycoord[cs+1]+ycoord[cs+2])/6, (xcoord[cs+1]+xcoord[cs+2])/2, (ycoord[cs+1]+ycoord[cs+2])/2); fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (xcoord[cs+1]+5*xcoord[cs+2])/6, (ycoord[cs+1]+5*ycoord[cs+2])/6, (5*xcoord[cs+2]+xcoord[cs+3])/6, (5*ycoord[cs+2]+ycoord[cs+3])/6, (xcoord[cs+3]+xcoord[cs+2])/2, (ycoord[cs+3]+ycoord[cs+2])/2); fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (xcoord[cs+2]+5*xcoord[cs+3])/6, (ycoord[cs+2]+5*ycoord[cs+3])/6, (2*xcoord[cs+3]+xcoord[ce])/3, (2*ycoord[cs+3]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); ncurves += 3; break; default:k1 = cs + nguide; fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (xcoord[cs]+2*xcoord[cs+1])/3, (ycoord[cs]+2*ycoord[cs+1])/3, (5*xcoord[cs+1]+xcoord[cs+2])/6, (5*ycoord[cs+1]+ycoord[cs+2])/6, (xcoord[cs+1]+xcoord[cs+2])/2, (ycoord[cs+1]+ycoord[cs+2])/2); for (k = cs+2; k <= k1-1; k++) { fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (xcoord[k-1]+5*xcoord[k])/6, (ycoord[k-1]+5*ycoord[k])/6, (5*xcoord[k]+xcoord[k+1])/6, (5*ycoord[k]+ycoord[k+1])/6, (xcoord[k]+xcoord[k+1])/2, (ycoord[k]+ycoord[k+1])/2); } fprintf( pfa_file, "%d %d %d %d %d %d curveto\n", (xcoord[k1-1]+5*xcoord[k1])/6, (ycoord[k1-1]+5*ycoord[k1])/6, (2*xcoord[k1]+xcoord[ce])/3, (2*ycoord[k1]+ycoord[ce])/3, xcoord[ce], ycoord[ce]); ncurves += nguide; break; } } if (i >= contour_end) { fprintf(pfa_file, " closepath "); first = 1; i = contour_end + 1; j++; } else { i++; } } } static float f2dot14 (short x) { short y = ntohs(x); return (y >> 14) + ((y & 0x3fff) / 16384.0); } static void do_glyf(int glyphno) { int len, c; short ncontours; USHORT flagbyte, glyphindex, xscale, yscale, scale01, scale10; SHORT arg1, arg2; BYTE *ptr; char *bptr; SHORT *sptr; float matrix[4]; ncurves = 0; if (long_offsets) { glyf_table = (TTF_GLYF *) (glyf_start + ntohl(long_loca_table[glyphno])); len = ntohl(long_loca_table[glyphno+1]) - ntohl(long_loca_table[glyphno]); } else { glyf_table = (TTF_GLYF *) (glyf_start + (ntohs(short_loca_table[glyphno]) << 1)); len = (ntohs(short_loca_table[glyphno+1]) - ntohs(short_loca_table[glyphno])) << 1; } if (unicode) { fprintf(pfa_file, "/%s { %% %d - U+%4.4x\n", glyph_list[glyphno].name, glyphno, (unsigned short)glyph_list[glyphno].unicode); } else { fprintf(pfa_file, "/%s { %% %d - 0x%2.2x\n", glyph_list[glyphno].name, glyphno, (unsigned short)glyph_list[glyphno].char_no); } c = glyph_list[glyphno].char_no; fprintf(afm_file, "C %d ; WX %.0f ; N %s ; B %.0f %.0f %.0f %.0f ;\n", c < 256 ? c : -1, scale_factor * glyph_list[glyphno].width, glyph_list[glyphno].name, scale_factor * (short)ntohs(glyf_table->xMin), scale_factor * (short)ntohs(glyf_table->yMin), scale_factor * (short)ntohs(glyf_table->xMax), scale_factor * (short)ntohs(glyf_table->yMax)); fprintf(pfa_file, "%d 0 %hd %hd %hd %hd setcachedevice\n", glyph_list[glyphno].width, (short)ntohs(glyf_table->xMin), (short)ntohs(glyf_table->yMin), (short)ntohs(glyf_table->xMax), (short)ntohs(glyf_table->yMax)); if (len != 0) { ncontours = ntohs(glyf_table->numberOfContours); if (ncontours <= 0) { ptr = ((BYTE *)glyf_table + sizeof(TTF_GLYF)); sptr = (SHORT *) ptr; do { flagbyte = ntohs(*sptr); sptr ++; glyphindex = ntohs(*sptr); sptr ++; fprintf(pfa_file, "%% flags %x glyph %s\n", flagbyte, glyph_list[glyphindex].name); if (flagbyte & ARG_1_AND_2_ARE_WORDS) { arg1 = ntohs(*sptr); sptr++; arg2 = ntohs(*sptr); sptr++; } else { bptr = (char *)sptr; arg1 = (signed char)bptr[0]; arg2 = (signed char)bptr[1]; sptr ++; } matrix[1] = matrix[2] = 0.0; if (flagbyte & WE_HAVE_A_SCALE) { matrix[0] = matrix[3] = f2dot14(*sptr); sptr ++; } else if (flagbyte & WE_HAVE_AN_X_AND_Y_SCALE) { matrix[0] = f2dot14(*sptr); sptr ++; matrix[3] = f2dot14(*sptr); sptr ++; } else if (flagbyte & WE_HAVE_A_TWO_BY_TWO) { matrix[0] = f2dot14(*sptr); sptr ++; matrix[1] = f2dot14(*sptr); sptr ++; matrix[2] = f2dot14(*sptr); sptr ++; matrix[3] = f2dot14(*sptr); sptr ++; } else { matrix[0] = matrix[3] = 1.0; } fprintf(pfa_file, "matrix currentmatrix\n[ %9.7f %9.7f %9.7f %9.7f %hd %hd ] concat\n", matrix[0], matrix[1], matrix[2], matrix[3], arg1, arg2); draw_glyf(glyphindex, glyphno); /*fputs("setmatrix closepath\n", pfa_file);*/ fputs("setmatrix\n", pfa_file); } while (flagbyte & MORE_COMPONENTS); } else { draw_glyf(glyphno, glyphno); /*fprintf( pfa_file, "closepath ");*/ } if (ncurves > 100) { fprintf(stderr, "**Glyf %s is too long, may have to be removed**\n", glyph_list[glyphno].name); fprintf(pfa_file, "\n%%**Glyf %s is too long, may have to be removed**\n", glyph_list[glyphno].name); } } fprintf(pfa_file, "fill } bind def\n"); } static void handle_hmtx() { int i; int n_hmetrics = ntohs(hhea_table->numberOfHMetrics); GLYPH *g; LONGHORMETRIC *hmtx_entry = hmtx_table; FWORD *lsblist; for (i = 0; i < n_hmetrics; i++) { g = &(glyph_list[i]); g->width = ntohs(hmtx_entry->advanceWidth); g->lsb = ntohs(hmtx_entry->lsb); hmtx_entry++; } lsblist = (FWORD *)hmtx_entry; hmtx_entry--; for (i = n_hmetrics; i < numglyphs; i++) { g = &(glyph_list[i]); g->width = ntohs(hmtx_entry->advanceWidth); g->lsb = ntohs(lsblist [i-n_hmetrics]); } } static void handle_post() { int i, len, n, found; unsigned int format; USHORT *name_index; char *ptr; char **ps_name_ptr = (char **) malloc (numglyphs * sizeof (char *)); int *ps_name_len = (int *) malloc (numglyphs * sizeof (int)); int n_ps_names; format = ntohl(post_table->formatType); if (format == 0x00010000) { for (i=0; i<258; i++) { glyph_list[i].name = mac_glyph_names[i]; } } else if (format == 0x00020000) { n = ntohs(post_table->numGlyphs); if (numglyphs != n) { fprintf(stderr, "**** Postscript table size mismatch %d/%d ****\n", n, numglyphs); exit(-1); } ptr = (char *)post_table + 34 + (numglyphs << 1); n_ps_names = 0; while (*ptr > 0) { len = ps_name_len[n_ps_names] = *ptr; ps_name_ptr[n_ps_names] = ptr+1; *ptr = '\0'; n_ps_names ++; ptr += len + 1; } *ptr = '\0'; /* for (i=0; iglyphNameIndex); for (i=0; inumGlyphs); for (i=0; inTables); int npairs; char *ptr = (char *)kern_table + 4; for (i=0; i < ntables; i++) { subtable = (TTF_KERN_SUB *)ptr; if ((ntohs(subtable->coverage) & 0xff00) == 0) { npairs = (short)ntohs(subtable->nPairs); fprintf(afm_file, "StartKernPairs %hd\n", npairs); kern_entry = (TTF_KERN_ENTRY *)(ptr + sizeof(TTF_KERN_SUB)); for (j=0; jleft)].name, glyph_list[ntohs(kern_entry->right)].name, scale_factor * (short) ntohs(kern_entry->value)); kern_entry ++; } fprintf(afm_file, "EndKernPairs\n"); } ptr += subtable->length; } } main (int argc, char **argv) { int i; time_t now; float italic_angle; struct stat statbuf; char filename[100]; if (argc != 3) { fputs("ttf2pfa \n", stderr); exit(-1); } if (stat(argv[1], &statbuf) == -1) { fprintf(stderr, "**** Cannot access %s ****\n", argv[1]); exit(-1); } if ((filebuffer = malloc (statbuf.st_size)) == NULL) { fprintf(stderr, "**** Cannot malloc space for file ****\n"); exit(-1); } if ((ttf_file=open(argv[1], O_RDONLY, 0)) == -1) { fprintf(stderr, "**** Cannot open %s ****\n", argv[1]); exit(-1); } else { fprintf(stderr, "Processing file %s\n", argv[1]); } if (read (ttf_file, filebuffer, statbuf.st_size) != statbuf.st_size) { fprintf(stderr, "**** Could not read whole file ****\n"); exit(-1); } directory = (TTF_DIRECTORY *) filebuffer; if (ntohl(directory->sfntVersion) != 0x00010000) { fprintf(stderr, "****Unknown File Version number [%x], or not a TrueType file****\n", directory->sfntVersion); exit(-1); } if(argv[2][0]=='-' && argv[2][1]==0) { pfa_file=stdout; if ((afm_file = fopen("/dev/null", "w+")) == NULL) { fprintf(stderr, "**** Cannot create %s ****\n", filename); exit(-1); } } else { sprintf(filename, "%s.pfa", argv[2]) ; if ((pfa_file = fopen(filename, "w+")) == NULL) { fprintf(stderr, "**** Cannot create %s ****\n", filename); exit(-1); } else { fprintf(stderr, "Creating file %s\n", filename); } sprintf(filename, "%s.afm", argv[2]) ; if ((afm_file = fopen(filename, "w+")) == NULL) { fprintf(stderr, "**** Cannot create %s ****\n", filename); exit(-1); } } dir_entry = &(directory->list); for (i=0; i < ntohs(directory->numTables); i++) { if (memcmp(dir_entry->tag, "name", 4) == 0) { name_table = (TTF_NAME *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "head", 4) == 0) { head_table = (TTF_HEAD *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "hhea", 4) == 0) { hhea_table = (TTF_HHEA *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "post", 4) == 0) { post_table = (TTF_POST_HEAD *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "glyf", 4) == 0) { glyf_start = (BYTE *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "cmap", 4) == 0) { cmap_table = (TTF_CMAP *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "kern", 4) == 0) { kern_table = (TTF_KERN *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "maxp", 4) == 0) { maxp_table = (TTF_MAXP *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "hmtx", 4) == 0) { hmtx_table = (LONGHORMETRIC *) (filebuffer+ntohl(dir_entry->offset)); } else if (memcmp(dir_entry->tag, "loca", 4) == 0) { long_loca_table = (ULONG *) (filebuffer+ntohl(dir_entry->offset)); short_loca_table = (USHORT *) long_loca_table; } else if (memcmp(dir_entry->tag, "EBDT", 4) == 0 || memcmp(dir_entry->tag, "EBLC", 4) == 0 || memcmp(dir_entry->tag, "EBSC", 4) == 0) { fprintf (stderr, "Font contains bitmaps\n"); } dir_entry++; } handle_name(); handle_head(); numglyphs = ntohs(maxp_table->numGlyphs); fprintf(stderr, "numglyphs = %d\n", numglyphs); glyph_list = (GLYPH *) malloc (numglyphs * sizeof (GLYPH)); for (i=0; iitalicAngle.upper)) + (ntohs(post_table->italicAngle.lower) / 65536.0); fprintf(pfa_file, "/italicAngle %f def\n", italic_angle); fprintf(afm_file, "ItalicAngle %f\n", italic_angle); scale_factor = 1000.0 / ntohs(head_table->unitsPerEm); fprintf(afm_file, "Ascender %.0f\n", scale_factor * (short)ntohs(hhea_table->ascender)); fprintf(afm_file, "Descender %.0f\n", scale_factor * (short)ntohs(hhea_table->descender)); fprintf(pfa_file, "/underlineThickness %hd def\n", (short)ntohs(post_table->underlineThickness)); fprintf(afm_file, "UnderlineThickness %.0f\n", scale_factor * (short)ntohs(post_table->underlineThickness)); fprintf(pfa_file, "/underlinePosition %hd def\n", (short)ntohs(post_table->underlinePosition)); fprintf(afm_file, "UnderlinePosition %.0f\n", scale_factor * (short)ntohs(post_table->underlinePosition)); fprintf(pfa_file, "/isFixedPitch %s def end def\n", ntohl(post_table->isFixedPitch) ? "true" : "false" ); fprintf(afm_file, "IsFixedPitch %s\n", ntohl(post_table->isFixedPitch) ? "true" : "false" ); fprintf(pfa_file, "/FontMatrix [%9.7f 0 0 %9.7f 0 0] def\n", scale_factor/1000.0, scale_factor/1000.0); fprintf(pfa_file, "/FontBBox [%hd %hd %hd %hd] def\n", (short)ntohs(head_table->xMin), (short)ntohs(head_table->yMin), (short)ntohs(head_table->xMax), (short)ntohs(head_table->yMax)); fprintf(afm_file, "FontBBox %.0f %.0f %.0f %.0f\n", scale_factor * (short)ntohs(head_table->xMin), scale_factor * (short)ntohs(head_table->yMin), scale_factor * (short)ntohs(head_table->xMax), scale_factor * (short)ntohs(head_table->yMax)); fprintf(pfa_file, "/Encoding [\n"); for (i=0; i<256; i++) { fprintf(pfa_file, "/%s ", glyph_list[encoding[i]].name); if (i%4 == 3) { fprintf(pfa_file, "%% 0x%x\n", i-3); } } fprintf(pfa_file, "] def\n/CharProcs %d dict def CharProcs begin\n", numglyphs+1); fprintf(afm_file, "StartCharMetrics %d\n", numglyphs); for (i=0; icount_styles; i++) { XIMStyle tmpStyle; tmpStyle = IMcando->support_styles[i]; if ( ((tmpStyle & clientCanDo) == tmpStyle) ) styleWeWillUse = tmpStyle; } if (styleWeWillUse = NULL) exit_with_error(); XFree(IMcando); /* styleWeWillUse is set, which is what we were after */ IC Values There are several pieces of information an input method may require, depending on the input context and style chosen by the application. The input method can acquire any such information it needs from the input context, ignoring any information that does not affect the style or IM. A full description of every item of information available to the IM is supplied in X Window System, Third Edition. The following is a brief list: XNClientWindow Specifies to the IM which client window it can display data in or create child windows in. Set once and cannot be changed. An additional event mask for event selection on the client window. XNFilterEvents The window to receive processed (composed) Key events. XNFocusWindow A geometry handler that is called if the client allows an IM to change the XNGeometryCallback geometry of the window. Specifies the style for this IC. XNInputStyle XNResourceClass, XNResourceName The resource class and name to use when the IM looks up resources that vary by IC. XNStatusAttributes, The attributes to be used for any XNPreeditAttributes status and pre-edit areas (nested, variable-length lists). Pre-Edit and Status Attributes When an IM is going to provide state, it needs some simple X information with which to do its work. For example, if an IM is going to draw status information in a client window in an Off-the-Spot style, it needs to know where the area is, what color and font to render text in, and so on. The application gives this data to the IC for use by the IM. As with the "IC Values" section, full details are available in X Window System, Third Edition. XNArea A rectangle to be used as a status or pre-edit area. The rectangle desired by the attribute writer. Either the application or the IM XNAreaNeeded may provide this information, depending on circumstances. A pixmap to be used for the background of windows the IM creates. XNBackgroundPixmap The colormap to use. XNColormap The cursor to use. XNCursor The fontset to use for rendering text. XNFontSet XNForeground, XNBackground The colors to use for rendering. The line spacing to be used in the pre-edit window if more than one line is used. XNLineSpacing Specifies where the next insertion point is, for use by XIMPreeditPosition styles. XNSpotLocation XNStdColormap Specifies that the IM should use XGetRGBColormaps() with the supplied property (passed as an Atom) in order to find out which colormap to use. Creating an Input Context Creating an input context is a simple matter of calling XCreateIC() with a variable-length list of parameters specifying IC values. Example 16-10 shows a simple example that works for the root window. Example 16-10 : Creating an Input Context With XCreateIC() XVaNestedList arglist; XIC ic; arglist = XVaCreateNestedList(0, XNFontSet, fontset, XNForeground, WhitePixel(dpy, screen), XNBackground, BlackPixel(dpy, screen), NULL); ic = XCreateIC(im, XNInputStyle, styleWeWillUse, XNClientWindow, window, XNFocusWindow, window, XNStatusAttributes, arglist, XNPreeditAttributes, arglist, NULL); XFree(arglist); if (ic == NULL) exit_with_error(); Using the IC A multi-window application may choose to use several input contexts. But for simplicity, assume that the application just wants to get to the internationalized input using one method in one window. Using the IC is a matter of making sure you check events the IC wants, and of setting IC focus. If you are setting up a window for the first time, you know the event mask you want, and you can use it directly. If you are attaching an IC to a previously configured window, you should query the window and add in the new event mask. Example 16-11 : Using the IC unsigned long imEventMask; XGetWindowAttributes(dpy, win, &winAtts); XGetICValues(ic, XNFilterEvents, &imEventMask, NULL); imEventMask |= winAtts.your_event_mask; XSelectInput(dpy, window, imEventMask); XSetICFocus(ic); At this point, the window is ready to be used. Events Under IM Control Processing events under input method control is almost the same in X11R6 as it was under R4 and before. There are two essential differences: the XFilterEvent() and X*LookupString() routines. Using XFilterEvent() Every event received by your application should be fed to the IM via XFilterEvent(), which returns a value telling you whether or not to disregard the event. IMs asks you to disregard the event if they have extracted the data and plan on giving it to you later, possibly in some other form. All events (not just KeyPress and KeyRelease events) go to XFilterEvent(). If you compacted the event processing into a single routine, a typical event loop would look something like the code in Example 16-12. Example 16-12 : Event Loop Xevent event; while (TRUE) { XNextEvent(dpy, &event); if (XFilterEvent(&event, None)) continue; DealWithEvent(&event); } Using XLookupString(), XwcLookupString(), and XmbLookupString() When using an input method, you should replace calls to XLookupString() with calls to XwcLookupString() or XmbLookupString(). The MB and WC versions have very similar interfaces. The examples below arbitrarily use XmbLookupString(), but apply to both versions. There are two new situations to deal with: 1. The string returned may be long. 2. There may be an interesting keysym returned, an interesting set of characters returned, both, or neither. Dealing with the former is a matter of maintaining an arena, as in Example 16-13. To tell the application what to pay attention to for a given event, XmbLookupString() returns a status value in a passed parameter, equal to one of the following: XLookupKeysym Indicates that the keysym should be checked. Indicates that a string has been typed or composed. XLookupChars Means both of the above. XLookupBoth Means neither is ready for processing. XLookupNone Means the supplied buffer is too small - call XmbLookupString() again with a bigger buffer XBufferOverflow XmbLookupString() also returns the length of the string in question. Note that XmbLookupString() returns the length of the string in bytes, while XwcLookupString() returns the length of the string in characters. The example below should help show how these functions work. Most event processors perform a switch on the event type; assume you have done that and have received a KeyPress event. Example 16-13 : KeyPress Event case KeyPress: { Keysym keysym; Status status; int buflength; static int bufsize = 16; static char *buf = NULL; if (buf == NULL) { buf = malloc(bufsize); if (buf < 0) StopSequence(); } buflength = XmbLookupString(ic, &event, buf, bufsize, &keysym, &status); /* first, check to see if that worked */ if (status == XBufferOverflow) { buf = realloc(buf, (bufsize = buflength)); buflength = XmbLookupString(ic, &event, buf, bufsize, &keysym, &status); } /* We have a valid status. Check that */ switch(status) { case XLookupKeysym: DealWithKeysym(keysym); break; case XLookupBoth: DealWithKeysym(keysym); /* **FALL INTO** charcter case */ case XLookupChars: DealWithString(buf, buflength); case XLookupNone: break; } /* end switch(status) */ } /* end case KeyPress segment */ break; /* we are in a switch(event.type) statement */ ./doc/notinstalled/compund.text.html0000644000175000017500000006146107532460062017634 0ustar henrichhenrich X Window System Programmer's Guide Chapter4
        Page: 1 2 3 4 5 6 7 8 9 10 11

        Chapter 4


        Compound Text Encoding

        Version 1.1 X consortium Standard

        X version 11, Release 6

        Robert W. Scheifler

        Copyright C 1989 by X Consortium

        Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

        The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

        Except as contained in this notice, the name of the X Consortium shall not be used in advertising or other-wise to promote the sale, use or other dealings i this Software without prior written authorization from the X Consortium.

        Home


        1. Overview

        Compound Text is a format for multiple character set data, such as multi-lingual text. The format is based on ISO standards for encoding and combining character sets. Compound Text is intended to be used in three main contexts: inter-client communication using selections (as defined in the ICCCM); window properties (e.g. window manager hints as defined in the ICCCM); and resources (e.g. as defined in Xlib and the Xt Intrinsics).

        Compound Text is intended as an external representation, or interchange format, not as an internal representation. It is expected (but not required) that clients will convert Compound Text to some internal representation for processing and rendering, and convert from that internal representation to Compound Text when providing textual data to another client.

        Home


        2. Values

        The name of this encoding is "COMPOUND_TEXT". When text values are used in the ICCCMcompliant selection mechanism or are stored as window properties in the server, the type used should be the atom for "COMPOUND_TEXT".

        Octet values are represented in this document as two decimal numbers in the form col/row. This means the value (col * 16) + row. For example, 02/01 means the value 33.

        For our purposes, the octet encoding space is divided into four ranges:

        C0 octets from 00/00 to 01/15
        GL octets from 02/00 to 07/15
        C1 octets from 08/00 to 09/15
        GR octets from 10/00 to 15/15

        C0 and C1 are "control character" sets, while GL and GR are "graphic character" sets. Only a subset of C0 and C1 octets are used in the encoding, and depending on the character set encoding defined as GL or GR, a subset of GL and GR octets may be used; see below for details. All octets (00/00 to 15/15) may appear inside the text of extended segments (defined below).

        [For those familiar with ISO 2022, we will use only an 8-bit environment, and we will always use G0 for GL and G1 for GR.]

        Home


        3. Control Characters

        In C0, only the following values will be used:

        00/09HTHORIZONTAL TABULATION
        00/10NLNEW LINE
        01/11ESC(ESCAPE)

        In C1, only the following value will be used:

        09/11 CSI CONTROL SEQUENCE INTRODUCER

        [The alternate 7-bit CSI encoding 01/11 05/11 is not used in Compound Text.]

        No control sequences are defined in Compound Text for changing the C0 and C1 sets.

        A horizontal tab can be represented with the octet 00/09. Specification of tabulation width settings is not part of Compound Text, and must be obtained from context (in an unspecified manner).

        [Inclusion of horizontal tab is for consistency with the STRING type currently defined in the ICCCM.]

        A newline (line separator/terminator) can be represented with the octet 00/10.

        [Note that 00/10 is normally LINEFEED, but is being interpreted as NEWLINE. This can be thought of as using the (deprecated) NEW LINE mode, E.1.3, in ISO 6429. Use of this value instead of 08/05 (NEL, NEXT LINE) is for consistency with the STRING type currently defined in the ICCCM.]

        The remaining C0 and C1 values (01/11 and 09/11) are only used in the control sequences defined below.

        Home


        4. Standard Character Set Encodings

        The default GL and GR sets in Compound Text correspond to the left and right halves of ISO 8859-1 (Latin 1). As such, any legal instance of a STRING type (as defined in the ICCCM) is also a legal instance of type COMPOUND_TEXT.

        [The implied initial state in ISO 2022 is defined with the sequence:
        01/11 02/00 04/03GO and G1 in an 8-bit environment only. Designation also invokes.
        01/11 02/00 04/07In an 8-bit environment, C1 represented as 8-bits.
        01/11 02/00 04/09In an 8-bit environment, C1 represented as 8-bits.
        01/11 02/00 04/118-bit code is used.
        01/11 02/08 04/02Designate ASCII into G0.
        01/11 02/13 04/01Designate right-hand part of ISO Latin-1 into G1.
        ]

        To define one of the approved standard character set encodings to be the GL set, one of lhe following control sequences is used:

        01/11 02/08 {I} F94 characterset
        01/11 02/04 02/08 {I} F94N character set

        To define one of the approved standard character set encodings to be the GR set, one of the following control sequences is used:

        01/11 02/09 {I} F94 characterset
        01/11 02/13 {I} F96 characterset
        01/11 02/0402/09 {I} F94N characterset

        The "F" in the control sequences above stands for "Final character", which is always in the range 04/00 to 07/14. The " { I } " stands for zero or more "intermediate characters", which are always in the range 02/00 to 02/15, with the first intermediate character always in the range 02/01 to 02/03. The registration authority has defined an " { I ) F" sequence for each registered character set encoding.

        [Final characters for private encodings (in the range 03/00 to 03/15, are not permitted here in Compound Text.]

        For GL, octet 02/00 is always defined as SPACE, and octet 07/15 (normally DELETE) is never used. For a 94-character set defined as GR, octets 10/00 and 15/15 are never used.

        [This is consistent with ISO 2022.]

        A 94N character set uses N octets (N>1) for each character. The value of N is derived from the column value for F:

        column 04 or 052 octets
        column 063 octets
        column 074 or more octets

        In a 94N encoding, the octet values 02/00 and 07/15 (in GL) and 10/00 and 15/15 (in GR) are never used.

        [The column definitions come from ISO 2022.]

        Once a GL or GR set has been defined, all further octets in that range (except within control sequences and extended segments) are interpreted with respect to that character set encoding, until the GL or GR set is redefined.- GL and GR sets can be defined independently, they do not have to be defined in pairs.

        Note that when actually using a character set encoding as the GR set, you must force the most significant bit (08/00) of each octet to be a one, so that it falls in the range 10/00 to 15/15.

        [Control sequences to specify character set encoding revisions (as in Section 6.3.13 of ISO 2022) are not used in Compound Text. Revision indicators do not appear to provide useful information in the context of Compound Text. The most recent revision can always be assumed, since revisions are upward compatible.]

        Home


        5. Approved Standard Encodings

        The following are the approved standard encodings to be used with Compound Text. Note that none have Intermediate characters; however, a good parser will still deal with Intermediate characters in the event that additional encodings are later added to this list.

        {I} F94/96Description
        04/02947-bit ASCII graphics (ANSI X3.4-1968),
        Left half of ISO 8859 sets
        04/0994Right half of JIS X0201-1976 (reaffirmed 1984),
        8-Bit Alphanumeric-Katakana Code
        04/1094Left half of JIS X0201-1976 (reaffirmed 1984),
        8-Bit Alphanumeric-Katakana Code
        04/0196Right half of ISO 8859-1, Latin alphabet No. 1
        04/0296Right half of ISO 8859-2, Latin alphabet No. 2
        04/0396Right half of ISO 8859-3, Latin alphabet No. 3
        04/0496Right half of ISO 8859-4, Latin alphabet No. 4
        04/0696Right half of ISO 8859-7, Latin/Greek alphabet
        04/0796Right half of ISO 8859-6, Latin/Arabic alphabet
        04/0896Right half of ISO 8859-8, Latin/Hebrew alphabet
        04/1296Right half of ISO 8859-5, Latin/Cyrillic alphabet
        04/1396Right half of ISO 8859-9, Latin alphabet No. 5
        04/01942GB2312-1980, China (PRC) Hanzi
        04/02942JIS X0208-1983, Japanese Graphic Character Set
        04/0394KS C5601-1987, Korean Graphic Character Set

        The sets listed as "Left half of ..." should always be defined as GL. The sets listed as "Right half of ..." should always be defined as GR. Other sets can be defined either as GL or GR.

        Home


        6. Non-Standard Character Set Encodings

        Character set encodings that are not in the list of approved standard encodings can be included using "extended segments". An extended segment begins with one of the following sequences:

        01/11 02/05 02/15 03/00 M Lvariable number of octets per character
        01/11 02/05 02/15 03/01 M L1 octet per character
        01/11 02/05 02/15 03/02 M L2 octets per character
        01/11 02/05 02/15 03/03 M L3 octets per character
        01/11 02/05 02/15 03/04 M L4 octets per character

        [This uses the "other coding system" of ISO 2022, using private Final characters.]

        The "M" and "L" octets represent a 14-bit unsigned value giving the number of octets that appear in the remainder of the segment. The number is computed as ((M - 128) * 128) + (L - 128). The most significant bit M and L are always set to one. The remainder of the segment consists of two parts, the name of the character set encoding and the actual text. The name of the encoding comes first, and is separated from the text by the octet 00/02 (STX, START OF TEXT). Note that the length defined by M and L includes the encoding name and separator.

        [The encoding of the length is chosen to avoid having zero octets in Compound Text when possible, because embedded NUL values are problematic in many C language routines. The use of zero octets cannot be ruled out entirely however, since some octets in the actual text of the extended segment may have to be zero.]

        The name of the encoding should be registered with the X Consortium to avoid conflicts, and should when appropriate match the CharSet Registry and Encoding registration used in the X Logical Font Description. The name itself should be encoded using ISO 8859-1 (Latin 1), should not use question mark (03/15) or asterisk (02/10), and should use hyphen (02/13) only in accordance with the X Logical Font Description.

        Extended segments are not to be used for any character set encoding which can be constructed from a GL/GR pair of approved standard encodings. For example, it is incorrect to use an extended segment for any of the ISO 8859 family of encodings.

        It should be noted that the contents of an extended segment are arbitrary; e.g., they may contain octets in the C0 and C1 ranges, including 00/00, and octets comprising a given character may differ in their most significant bit.

        [ISO registered "other coding systems" are not used in Compound Text; extended segments arc thc only mechanism for non-2022 encodings.]

        Home


        7. Directionality

        If desired, horizontal text direction can be indicated using the following control sequences:

        09/11 03/01 05/13begin left-to-right text
        09/11 03/02 05/13begin right-to-left text
        09/11 05/13end of string

        [This is a subset of the SDS (START DIRECTED STRING) control in the Draft Bidirectional Addendum to ISO 6429.]

        Directionality can be nested. Logically, a stack of directions is maintained. Each of the first two control sequences pushes a new direction on the stack, and the third sequence (revert) pops a direction from the stack. The stack starts out empty at the beginning of a Compound Text string. When the stack is empty, the directionality of the text is unspecified.

        Directionality applies to all subsequent text, whether in GL, GR, or an extended segment. Lf the desired directionality of GL, GR, or extended segments differ, then directionality control sequences must be inserted when switching between them.

        Note that definition of GL and GR sets is independent of directionality; defining a new GL or GR set does not change the current directionality, and pushing or popping a directionality does not change the current GL and GR definitions.

        Specification of directionality is entirely optional; text direction should be clear from context in most cases. However, it must be the case that either all characters in a Compound Text string have explicitly specified direction, or that all characters have unspecified direction. That is, if directionality control sequences are used, the first such control sequence must precede the first graphic character in a Compound Text string, and graphic characters are not permitted whenever the directionality stack is empty.

        Home


        8. Resources

        To use Compound Text in a resource, you can simply treat all octets as if they were ASCII/Latin-l, and just replace all "\" octets (05/12) with the two octets "\\", all newline octets (00/10) with the two octets 'An", and all zero octets with the four octets "\000". It is up to the client making use of the resource to interpret the data as Compound Text; the policy by which this is ascertained is not constrained by the Compound Text specification.

        Home


        9. FontNames

        The following CharSet names for the standard character set encodings are registered for use in font names under the X Logical Font Description:

        NameEncoding Standard
        ISO8859-1ISO 8859-1
        ISO8859-2ISO 8859-2
        ISO8859-3ISO 8859-3
        ISO8859-4ISO 8859-4
        ISO8859-5ISO 8859-5
        ISO8859-6ISO 8859-6
        ISO8859-7ISO 8859-7
        ISO8859-8ISO 8859-8
        ISO8859-9ISO 8859-9
        JISX0201.1976-0JIS X0201-1976 (reaffirmed 1984)
        GB2312.1980-0GB2312-1980, GL encoding
        JISX0208.1983-0JIS X0208-1983, GL encoding
        KSC5601.1987-0KS C5601-1987, GL encoding

        Home


        10. Extensions

        There is no absolute requirement for a parser to deal with anything but the particular encoding syntax defined in this specification. However, it is possible that Compound Text may be extended in the future, and as such it may be desirable to construct the parser to handle 2022/6429 syntax more generally.

        There are two general formats covering all control sequences that are expected to appear in extensions:

        01/11 {I} F

        For this format, l is always in the range 02/00 to 02/15, and F is always in the range 03/00 to 07/14.

        09/11 {P} {I} F

        For this format, P is always in the range 03/00 to 03/15,1 is always in the range 02/00 to 02/15, and F is always in the range 04/00 to 07/14.

        In addition, new (singleton) control characters (in the C0 and C1 ranges) might be defined in the future.

        Finally, new kinds of "segments" might be defined in the future using syntax similar to extended segments:

        01/11 02/05 02/15 F M L

        For this format, F is in the range 03/05 to 3/15. M and L are as defined in extended segments. Such a segment will always be followed by the number of octets defined by M and L. These octets can have arbitrary values, and need not follow the internal structure defined for current extended segments.
        If extensions to this specification are defined in the future, then any string incorporating instances of such extensions must start with one of the following control sequences:

        01/11 02/03 V 03/00ignoring extensions is OK
        01/11 02/03 V 03/01ignoring extensions is not OK

        In either case, V is in the range 02/00 to 02/15 and indicates the major version minus one of the specification being used. These version control sequences are for use by clients that implement earlier versions, but have implemented a general parser. The first control sequence indicates that it is acceptable to ignore all extension control sequences; no mandatory information will be lost in the process. The second control sequence indicates that it is unacceptable to ignore any extension control sequences; mandatory information would be lost in the process. In general, it will be up to the client generating lhe Compound Text to decide which control sequence to use.

        Home


        11. Errors

        If a Compound Text string does not match the specification here (e.g. uses undefined control characters, or undefined control sequences, or incorrectly formatted extended segments), it is best to treat the entire string as invalid, except as indicated by a version control sequence.

        Home
        ./doc/notinstalled/readme.raghu.txt0000644000175000017500000000407607532460062017420 0ustar henrichhenrichFrom MAILER-DAEMON Thu Jan 24 15:30:35 2002 Date: 24 Jan 2002 15:30:35 +0900 From: Mail System Internal Data Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATA X-IMAP: 1011853835 0000000000 Status: RO This text is part of the internal format of your mail folder, and is not a real message. It is created automatically by the mail system software. If deleted, important folder data will be lost, and it will be re-created with the data reset to initial values. From gsinai@yudit.org Thu Jan 24 15:24:48 2002 +0900 Status: R X-Status: A X-Keywords: Received: by suse.blue-edge-tech.com id g0O6OlI06643; Thu, 24 Jan 2002 15:24:47 +0900 Delivered-To: yuditorg-gsinai@yudit.org Received: from mail.yudit.org [206.245.164.55] by localhost with POP3 (fetchmail-5.9.0) for gsinai@localhost (single-drop); Thu, 24 Jan 2002 15:24:47 +0900 (JST) Received: (qmail 14668 invoked from network); 24 Jan 2002 06:22:05 -0000 Received: from web13301.mail.yahoo.com (216.136.175.37) by mailserv2.iuinc.com with SMTP; 24 Jan 2002 06:22:05 -0000 Message-ID: <20020124061809.28721.qmail@web13301.mail.yahoo.com> Received: from [202.141.151.92] by web13301.mail.yahoo.com via HTTP; Wed, 23 Jan 2002 22:18:09 PST Date: Wed, 23 Jan 2002 22:18:09 -0800 (PST) From: Keyur Shroff Subject: Hindi support in yudit To: gsinai@yudit.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Hello, We have designed one OpenType font for Hindi and put it in Public domain. You can use and distribute the font in your yudit package. The font can be downloaded from http://rohini.ncst.ernet.in/indix/download/font/ For more details about our project, visit http://rohini.ncst.ernet.in/indix/ By the way, I somewhere read (probably on some mailing list) that you have plans to provide OpenType support in your yudit package without using FreeType library. Please let me know the status of your work. Regards, Keyur __________________________________________________ Do You Yahoo!? Great stuff seeking new owners in Yahoo! Auctions! http://auctions.yahoo.com ./doc/notinstalled/JISX0213.ERR.TXT0000644000175000017500000001577707532460062016442 0ustar henrichhenrichAll Unicode Maps ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA became obsolete from Unicode 3.2. To be able to continue working on our Unicode Projects we needed to create JISX0213-1.TXT for men-1 (Plane 1) and JISX0213-2.TXT men-2 (Plane 2). These two maps are reconciled between Bruno Haible and Gaspar Sinai . These two maps are totally unofficial, and they will not solve any problems mentioned by Tomohiro KUBOTA http://www.debian.or.jp/~kubota/unicode-symbols.html. It should also be noted that tone letters that are used in this mapping are mentioned mentioned in Section 7.8 (Modifier Letters). The rendering engine must render at least the following glyphs: U+02E9 U+02E5 # RISING (声調記号上昇調) in JIS X 0213 U+02E5 U+02E9 # FALLING (声調記号下降調) in JIS X 0213 ------------------------------------------------------------------ Further Unresolved Issues ------------------------------------------------------------------ 1) 0x83F6 0x2678 0x31F7 0x309A # 1-6-88 This character is a 'small' variant of 0x30D7. It will be the task of the display engine to position the small circle at the right position. Differences between unofficial mappings: m-k-t SJIS WAKABA IBM_GLY LINUX ------------------------------------------------------------------ 1-1-17 8150 0000203E 0000FFE3 0000FFE3  ̄ 1-1-29 815C 00002014 00002014 00002015 ― 1-1-79 818F 000000A5 0000FFE5 0000FFE5 ¥ 1-1-81 8191 000000A2 0000FFE0 000000A2 ¢ 1-1-82 8192 000000A3 0000FFE1 000000A3 £ 1-2-44 81CA 000000AC 0000FFE2 000000AC ¬ 1-2-54 81D4 00002985 00002985 0000FF5F ⦅ 1-2-55 81D5 00002986 00002986 0000FF60 ⦆ 1-3-26 8259 000029BF 000029BF 00002299 ⊙ 1-4-87 82F5 00000000 0000304B+0000309A 0000304B+0000309A か゚ 1-4-88 82F6 00000000 0000304D+0000309A 0000304D+0000309A き゚ 1-4-89 82F7 00000000 0000304F+0000309A 0000304F+0000309A く゚ 1-4-90 82F8 00000000 00003051+0000309A 00003051+0000309A け゚ 1-4-91 82F9 00000000 00003053+0000309A 00003053+0000309A こ゚ 1-5-87 8397 00000000 000030AB+0000309A 000030AB+0000309A カ゚ 1-5-88 8398 00000000 000030AD+0000309A 000030AD+0000309A キ゚ 1-5-89 8399 00000000 000030AF+0000309A 000030AF+0000309A ク゚ 1-5-90 839A 00000000 000030B1+0000309A 000030B1+0000309A ケ゚ 1-5-91 839B 00000000 000030B3+0000309A 000030B3+0000309A コ゚ 1-5-92 839C 00000000 000030BB+0000309A 000030BB+0000309A セ゚ 1-5-93 839D 00000000 000030C4+0000309A 000030C4+0000309A ツ゚ 1-5-94 839E 00000000 000030C8+0000309A 000030C8+0000309A ト゚ 1-6-88 83F6 00000000 000031F7+0000309A 000031F7+0000309A ㇷ゚ 1-11-36 8663 00000000 000000E6+00000300 000000E6+00000300 æ̀ 1-11-40 8667 00000000 00000254+00000300 00000254+00000300 ɔ̀ 1-11-41 8668 00000000 00000254+00000301 00000254+00000301 ɔ́ 1-11-42 8669 00000000 0000028C+00000300 0000028C+00000300 ʌ̀ 1-11-43 866A 00000000 0000028C+00000301 0000028C+00000301 ʌ́ 1-11-44 866B 00000000 00000259+00000300 00000259+00000300 ə̀ 1-11-45 866C 00000000 00000259+00000301 00000259+00000301 ə́ 1-11-46 866D 00000000 0000025A+00000300 0000025A+00000300 ɚ̀ 1-11-47 866E 00000000 0000025A+00000301 0000025A+00000301 ɚ́ 1-11-69 8685 00000000 000002E9+000002E5 000002E9+000002E5 ˩˥ 1-11-70 8686 00000000 000002E5+000002E9 000002E5+000002E9 ˥˩ 1-86-4 EBA2 000069EA 0000FA45 000069EA 槪 1-86-73 EBE7 0000FA45 0000FA46 0000FA45 海 1-86-87 EBF5 0000FA46 0000FA47 0000FA46 渚 1-87-5 EC44 0000FA47 0000FA48 0000FA47 漢 1-87-53 EC74 0000FA48 0000FA49 0000FA48 煮 1-88-5 ECA3 0000FA4A 0000FA4B 0000FA4A 琢 1-89-7 ED46 0000FA4B 0000FA4C 0000FA4B 碑 1-89-19 ED52 0000FA4C 0000FA4D 0000FA4C 社 1-89-20 ED53 0000FA4D 0000FA4E 0000FA4D 祉 1-89-23 ED56 0000FA4E 0000FA4F 0000FA4E 祈 1-89-24 ED57 0000FA4F 0000FA50 0000FA4F 祐 1-89-25 ED58 0000FA50 0000FA51 0000FA50 祖 1-89-27 ED5A 0000FA51 0000FA52 0000FA51 祝 1-89-31 ED5E 0000FA52 0000FA53 0000FA52 禍 1-89-32 ED5F 0000FA53 0000FA54 0000FA53 禎 1-89-45 ED6C 0000FA54 0000FA55 0000FA54 穀 1-89-49 ED70 0000FA55 0000FA56 0000FA55 突 1-89-68 ED84 0000FA56 0000FA57 0000FA56 節 1-90-14 EDAC 0000FA57 0000FA58 0000FA57 練 1-90-19 EDB1 0000FA59 0000FA5A 0000FA59 繁 1-90-26 EDB8 0000FA5A 0000FA5B 0000FA5A 署 1-90-36 EDC2 0000FA5B 0000FA5C 0000FA5B 者 1-90-56 EDD6 0000FA5C 0000FA5D 0000FA5C 臭 1-91-7 EE46 0000FA5F 0000FA60 0000FA5F 著 1-91-79 EE8F 0000FA60 0000FA61 0000FA60 褐 1-91-89 EE99 0000FA61 0000FA62 0000FA61 視 1-92-15 EEAD 0000FA62 0000FA63 0000FA62 謁 1-92-16 EEAE 0000FA63 0000FA64 0000FA63 謹 1-92-24 EEB6 0000FA64 0000FA65 0000FA64 賓 1-92-29 EEBB 0000FA65 0000FA66 0000FA65 贈 1-92-57 EED7 0000FA67 0000FA68 0000FA67 逸 1-93-67 EF83 0000FA68 0000FA69 0000FA68 難 1-93-86 EF96 0000FA69 0000FA6A 0000FA69 響 1-93-91 EF9B 0000FA6A 0000FA6B 0000FA6A 頻 2-80-9 F5A7 0000FA49 0000FA4A 0000FA49 爫 2-84-48 F7CE 0000FA58 0000FA59 0000FA58 縉 2-85-84 F894 0000FA5D 0000FA5E 0000FA5D 艹 2-85-85 F895 0000FA5E 0000FA5F 0000FA5E 艹 2-89-73 FA89 0000FA66 0000FA67 0000FA66 辶 2-93-27 FC5A 00009B1D 00009B1D 00009B1C 鬜 Resources --------- Input file LINUX: Version 1.1 JIS0213-1.TXT JIS0213-2.TXT URL: http://www.yudit.org/MAPPINGS/ Input file WAKABA: jisx0213code-csv32.txt URL: http://www.ksky.ne.jp/~smile4me/charcode/jisx0213code-csv_u32.lzh Input file IBM_GLY: IBM1394toUCS4-GLY.txt URL: http://www.cse.cuhk.edu.hk/~irg/irg/N807_TablesX0123-UCS.zip Script: ./recmat.pl URL: http://www.yudit.org/MAPPINGS/recmat.pl.gz Shift_JISX0213 Encoding: URL[euc-jp]: http://www.asahi-net.or.jp/~wq6k-yn/code/enc-x0213.html Note: IBM_GLY provides Shift_JISX0213 and Unicode codepoints only. This is why Shift_JISX0213 was used to synchronize the files. Gaspar Sinai Tokyo, 2002-04-16 ./doc/notinstalled/biditest.txt0000644000175000017500000000743307565341152016671 0ustar henrichhenrich# This is a test file grabbed from # # http://crl.nmsu.edu/~mleisher/ucdata.html # # A test with capital letters treated as RTL # # I tested yudit-2.7.beta13 with a modified bidiclass file, so that # capital letters are treated as AL, or R. # # I typed in what I saw on screen, with no document embedding set. # # The first like is the original # The second line is when capital letters are treated as R # The third line is when capital lettesr are treated as AL # (The third line may be omitted when it is the same as second.) # The difference between the reference code and this: # # Problem #1: # Original : TEST ~~~23%%% ONCE abc # Yudit R: abc ECNO 23%%%~~~ TSET # Yudit AL: abc ECNO %%%23~~~ TSET # Reference: abc ECNO 23%%%~~~ TSET # This can be explained by Reference Code having Hebrew letters. # # Problem #2: # Original : SOLVE 1*5 1-5 1/5 1+5 # Yudit R : 1+5 1/5 1-5 5*1 EVLOS # Yudit AL : 5+1 5/1 5-1 5*1 EVLOS # Reference: 5+1 5/1 5-1 5*1 EVLOS # This can be explained if Reference Code treats all letters # as Arabic letters. This contradicts problem #1. # # So what is going on? Lets track it down: # ----- from http://crl.nmsu.edu/~mleisher/ucdata.html ----- # Input :TEST ~~~23%%% ONCE abc # Output: abc ECNO 23%%%~~~ TSET # # Input : SOLVE 1*5 1-5 1/5 1+5 # Output: 5+1 5/1 5-1 5*1 EVLOS # ---------------------------------------------------------- # I have downloaded the java reference code from Unicode Consortium: # # http://www.unicode.org/unicode/reports/tr9/BidiReferenceJava/ # # And I ran it. To produce a result identical to what test web site # claims as “reference code” I had to switch the RL directionality # to Ararbic for the second test case. Here is what I got: # -------------------- BidiReferenceJava -------------------- # -hebrew: # TEST ~~~23%%% ONCE abc # abc ECNO 23%%%~~~ TSET # # SOLVE 1*5 1-5 1/5 1+5 # 1+5 1/5 1-5 5*1 EVLOS # # -arabic: # TEST ~~~23%%% ONCE abc # abc ECNO %%%23~~~ TSET # # SOLVE 1*5 1-5 1/5 1+5 # 5+1 5/1 5-1 5*1 EVLOS # ------------------------------------------------------------ # So the problem is solved: # # I thought that he always runs the reference code either with # Arabic or with Hebrew, consistently. Well, he never said that. # So http://crl.nmsu.edu/~mleisher/ucdata.html Reference # column sometimes contain Ararbic and somtimes Hebrew # context, mixed, with no clear indication which is which. # # Gaspar Sinai , Tokyo 2002-11-15 # # So here are my test results, typed in from Yudit screen: # -------------------------------------------------------- car is THE CAR in arabic car is RAC EHT in arabic CAR IS the car IN ENGLISH HSILGNE NI the car SI RAC he said "IT IS 123, 456, OK" he said "KO ,456 ,123 SI TI" he said "IT IS (123, 456), OK" he said "KO ,(456 ,123) SI TI" he said "IT IS 123,456, OK" he said "KO ,123,456 SI TI" he said "IT IS (123,456), OK" he said "KO ,(123,456) SI TI" HE SAID "it is 123, 456, ok" "it is 123, 456, ok" DIAS EH shalom <123H/>shalom<123H> SAALAM MALAAS HE SAID "it is a car!" AND RAN NAR DNA "!it is a car" DIAS EH HE SAID "it is a car!x" AND RAN NAR DNA "it is a car!x" DIAS EH -2 CELSIUS IS COLD DLOC SI SUISLEC -2 -10% CHANGE EGNAHC -10% SOLVE 1*5 1-5 1/5 1+5 1+5 1/5 1-5 5*1 EVLOS 5+1 5/1 5-1 5*1 EVLOS THE RANGE IS 2.5..5 5..2.5 SI EGNAR EHT # # Adapted from one of the FriBidi test files. # he said "IT IS A CAR!" he said "RAC A SI TI!" he said "IT IS A CAR!X" he said "X!RAC A SI TI" (TEST) abc abc (TSET) abc (TEST) abc (TSET) #@$ TEST TSET $@# TEST 23 ONCE abc abc ECNO 23 TSET TEST ~~~23%%% ONCE abc abc ECNO 23%%%~~~ TSET abc ECNO %%%23~~~ TSET TEST abc ~~~23%%% ONCE abc abc ECNO abc ~~~23%%% TSET TEST abc@23@cde ONCE ECNO abc@23@cde TSET TEST abc 23 cde ONCE ECNO abc 23 cde TSET TEST abc 23 ONCE cde cde ECNO abc 23 TSET Xa 2 Z Z a 2X ./doc/notinstalled/transtab/0000755000175000017500000000000010724001346016115 5ustar henrichhenrich./doc/notinstalled/transtab/Makefile0000644000175000017500000000172707532460062017573 0ustar henrichhenrichTARGETS=transtab transtab.repertoire transtab.missing-MES-2 transtab.changes all: $(TARGETS) # transtab.utf is the file that should be edited transtab: transtab.utf format=iso ./transcomp $< >$@ format=isoutf ./transcomp transtab >transtab.utf transtab.repertoire: transtab format=utf ./transcomp transtab >$@ transtab.missing-MES-2: transtab.repertoire uniset + ../MES-2 - transtab.repertoire - 0000-007f clean table | \ format=isoutf ./transcomp - >$@ transtab.missing-TARGET1: transtab.repertoire uniset + ../../font/ucs-fonts/TARGET1 - transtab.repertoire \ - 0000-007f clean table | \ format=isoutf ./transcomp - >$@ transtab.changes: transtab.utf rlog $< >$@ distribution: $(TARGETS) ci -l transtab.utf cd .. ; tar cvf transtab.tar \ transtab/README transtab/REFERENCES transtab/Makefile \ transtab/transcomp \ transtab/transtab.utf $(TARGETS:%=transtab/%) ; \ gzip -9f transtab.tar ; \ mv transtab.tar.gz $(HOME)/.www/download/ clean: rm -f *~ ./doc/notinstalled/transtab/transtab.changes0000644000175000017500000000305407532460062021276 0ustar henrichhenrich RCS file: RCS/transtab.utf,v Working file: transtab.utf head: 1.8 branch: locks: strict mgk25: 1.8 access list: symbolic names: keyword substitution: kv total revisions: 8; selected revisions: 8 description: Transliteration table in ISO/IEC TR 14652 format ---------------------------- revision 1.8 locked by: mgk25; date: 2000-10-12 11:01:28+01; author: mgk25; state: Exp; lines: +2 -0 RCS id added ---------------------------- revision 1.7 date: 2000-10-12 09:38:41+01; author: mgk25; state: Exp; lines: +4 -4 added ae->a ---------------------------- revision 1.6 date: 2000-10-10 09:13:10+01; author: mgk25; state: Exp; lines: +20 -20 Byrial Jensen added transliterations for Esperanto, such that C, G, H, J, S with circumflex are presented by the base character followed by an H. ---------------------------- revision 1.5 date: 2000-10-09 11:33:26+01; author: mgk25; state: Exp; lines: +2 -2 *** empty log message *** ---------------------------- revision 1.4 date: 2000-10-09 11:23:38+01; author: mgk25; state: Exp; lines: +541 -232 *** empty log message *** ---------------------------- revision 1.3 date: 2000-10-09 00:35:12+01; author: mgk25; state: Exp; lines: +372 -0 *** empty log message *** ---------------------------- revision 1.2 date: 2000-10-08 23:43:06+01; author: mgk25; state: Exp; lines: +88 -4 *** empty log message *** ---------------------------- revision 1.1 date: 2000-10-08 23:19:22+01; author: mgk25; state: Exp; Initial revision ============================================================================= ./doc/notinstalled/transtab/transtab.missing-MES-20000644000175000017500000010436207532460062022124 0ustar henrichhenrich% $Id: $ % CURRENCY SIGN % ¤ -> "" % LATIN CAPITAL LETTER SCHWA % Ə -> "" % LATIN CAPITAL LETTER EZH % Ʒ -> "" % LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON % Ǟ -> "" % LATIN SMALL LETTER A WITH DIAERESIS AND MACRON % ǟ -> "" % LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON % Ǡ -> "" % LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON % ǡ -> "" % LATIN CAPITAL LETTER AE WITH MACRON % Ǣ -> "" % LATIN SMALL LETTER AE WITH MACRON % ǣ -> "" % LATIN CAPITAL LETTER G WITH STROKE % Ǥ -> "" % LATIN SMALL LETTER G WITH STROKE % ǥ -> "" % LATIN CAPITAL LETTER G WITH CARON % Ǧ -> "" % LATIN SMALL LETTER G WITH CARON % ǧ -> "" % LATIN CAPITAL LETTER K WITH CARON % Ǩ -> "" % LATIN SMALL LETTER K WITH CARON % ǩ -> "" % LATIN CAPITAL LETTER O WITH OGONEK % Ǫ -> "" % LATIN SMALL LETTER O WITH OGONEK % ǫ -> "" % LATIN CAPITAL LETTER O WITH OGONEK AND MACRON % Ǭ -> "" % LATIN SMALL LETTER O WITH OGONEK AND MACRON % ǭ -> "" % LATIN CAPITAL LETTER EZH WITH CARON % Ǯ -> "" % LATIN SMALL LETTER EZH WITH CARON % ǯ -> "" % LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE % Ǻ -> "" % LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE % ǻ -> "" % LATIN CAPITAL LETTER AE WITH ACUTE % Ǽ -> "" % LATIN SMALL LETTER AE WITH ACUTE % ǽ -> "" % LATIN CAPITAL LETTER O WITH STROKE AND ACUTE % Ǿ -> "" % LATIN SMALL LETTER O WITH STROKE AND ACUTE % ǿ -> "" % LATIN CAPITAL LETTER H WITH CARON % Ȟ -> "" % LATIN SMALL LETTER H WITH CARON % ȟ -> "" % LATIN SMALL LETTER SCHWA % ə -> "" % LATIN SMALL LETTER R WITH LONG LEG % ɼ -> "" % LATIN SMALL LETTER EZH % ʒ -> "" % CARON % ˇ -> "" % BREVE % ˘ -> "" % DOT ABOVE % ˙ -> "" % OGONEK % ˛ -> "" % MODIFIER LETTER DOUBLE APOSTROPHE % ˮ -> "" % GREEK YPOGEGRAMMENI % ͺ -> "" % GREEK TONOS % ΄ -> "" % GREEK DIALYTIKA TONOS % ΅ -> "" % GREEK CAPITAL LETTER ALPHA WITH TONOS % Ά -> "" % GREEK ANO TELEIA % · -> "" % GREEK CAPITAL LETTER EPSILON WITH TONOS % Έ -> "" % GREEK CAPITAL LETTER ETA WITH TONOS % Ή -> "" % GREEK CAPITAL LETTER IOTA WITH TONOS % Ί -> "" % GREEK CAPITAL LETTER OMICRON WITH TONOS % Ό -> "" % GREEK CAPITAL LETTER UPSILON WITH TONOS % Ύ -> "" % GREEK CAPITAL LETTER OMEGA WITH TONOS % Ώ -> "" % GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS % ΐ -> "" % GREEK CAPITAL LETTER ALPHA % Α -> "" % GREEK CAPITAL LETTER BETA % Β -> "" % GREEK CAPITAL LETTER GAMMA % Γ -> "" % GREEK CAPITAL LETTER DELTA % Δ -> "" % GREEK CAPITAL LETTER EPSILON % Ε -> "" % GREEK CAPITAL LETTER ZETA % Ζ -> "" % GREEK CAPITAL LETTER ETA % Η -> "" % GREEK CAPITAL LETTER THETA % Θ -> "" % GREEK CAPITAL LETTER IOTA % Ι -> "" % GREEK CAPITAL LETTER KAPPA % Κ -> "" % GREEK CAPITAL LETTER LAMDA % Λ -> "" % GREEK CAPITAL LETTER MU % Μ -> "" % GREEK CAPITAL LETTER NU % Ν -> "" % GREEK CAPITAL LETTER XI % Ξ -> "" % GREEK CAPITAL LETTER OMICRON % Ο -> "" % GREEK CAPITAL LETTER PI % Π -> "" % GREEK CAPITAL LETTER RHO % Ρ -> "" % GREEK CAPITAL LETTER SIGMA % Σ -> "" % GREEK CAPITAL LETTER TAU % Τ -> "" % GREEK CAPITAL LETTER UPSILON % Υ -> "" % GREEK CAPITAL LETTER PHI % Φ -> "" % GREEK CAPITAL LETTER CHI % Χ -> "" % GREEK CAPITAL LETTER PSI % Ψ -> "" % GREEK CAPITAL LETTER OMEGA % Ω -> "" % GREEK CAPITAL LETTER IOTA WITH DIALYTIKA % Ϊ -> "" % GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA % Ϋ -> "" % GREEK SMALL LETTER ALPHA WITH TONOS % ά -> "" % GREEK SMALL LETTER EPSILON WITH TONOS % έ -> "" % GREEK SMALL LETTER ETA WITH TONOS % ή -> "" % GREEK SMALL LETTER IOTA WITH TONOS % ί -> "" % GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS % ΰ -> "" % GREEK SMALL LETTER ALPHA % α -> "" % GREEK SMALL LETTER BETA % β -> "" % GREEK SMALL LETTER GAMMA % γ -> "" % GREEK SMALL LETTER DELTA % δ -> "" % GREEK SMALL LETTER EPSILON % ε -> "" % GREEK SMALL LETTER ZETA % ζ -> "" % GREEK SMALL LETTER ETA % η -> "" % GREEK SMALL LETTER THETA % θ -> "" % GREEK SMALL LETTER IOTA % ι -> "" % GREEK SMALL LETTER KAPPA % κ -> "" % GREEK SMALL LETTER LAMDA % λ -> "" % GREEK SMALL LETTER MU % μ -> "" % GREEK SMALL LETTER NU % ν -> "" % GREEK SMALL LETTER XI % ξ -> "" % GREEK SMALL LETTER OMICRON % ο -> "" % GREEK SMALL LETTER PI % π -> "" % GREEK SMALL LETTER RHO % ρ -> "" % GREEK SMALL LETTER FINAL SIGMA % ς -> "" % GREEK SMALL LETTER SIGMA % σ -> "" % GREEK SMALL LETTER TAU % τ -> "" % GREEK SMALL LETTER UPSILON % υ -> "" % GREEK SMALL LETTER PHI % φ -> "" % GREEK SMALL LETTER CHI % χ -> "" % GREEK SMALL LETTER PSI % ψ -> "" % GREEK SMALL LETTER OMEGA % ω -> "" % GREEK SMALL LETTER IOTA WITH DIALYTIKA % ϊ -> "" % GREEK SMALL LETTER UPSILON WITH DIALYTIKA % ϋ -> "" % GREEK SMALL LETTER OMICRON WITH TONOS % ό -> "" % GREEK SMALL LETTER UPSILON WITH TONOS % ύ -> "" % GREEK SMALL LETTER OMEGA WITH TONOS % ώ -> "" % GREEK KAI SYMBOL % ϗ -> "" % GREEK LETTER STIGMA % Ϛ -> "" % GREEK SMALL LETTER STIGMA % ϛ -> "" % GREEK LETTER DIGAMMA % Ϝ -> "" % GREEK SMALL LETTER DIGAMMA % ϝ -> "" % GREEK LETTER KOPPA % Ϟ -> "" % GREEK SMALL LETTER KOPPA % ϟ -> "" % GREEK LETTER SAMPI % Ϡ -> "" % GREEK SMALL LETTER SAMPI % ϡ -> "" % CYRILLIC CAPITAL LETTER IE WITH GRAVE % Ѐ -> "" % CYRILLIC CAPITAL LETTER IO % Ё -> "" % CYRILLIC CAPITAL LETTER DJE % Ђ -> "" % CYRILLIC CAPITAL LETTER GJE % Ѓ -> "" % CYRILLIC CAPITAL LETTER UKRAINIAN IE % Є -> "" % CYRILLIC CAPITAL LETTER DZE % Ѕ -> "" % CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I % І -> "" % CYRILLIC CAPITAL LETTER YI % Ї -> "" % CYRILLIC CAPITAL LETTER JE % Ј -> "" % CYRILLIC CAPITAL LETTER LJE % Љ -> "" % CYRILLIC CAPITAL LETTER NJE % Њ -> "" % CYRILLIC CAPITAL LETTER TSHE % Ћ -> "" % CYRILLIC CAPITAL LETTER KJE % Ќ -> "" % CYRILLIC CAPITAL LETTER I WITH GRAVE % Ѝ -> "" % CYRILLIC CAPITAL LETTER SHORT U % Ў -> "" % CYRILLIC CAPITAL LETTER DZHE % Џ -> "" % CYRILLIC CAPITAL LETTER A % А -> "" % CYRILLIC CAPITAL LETTER BE % Б -> "" % CYRILLIC CAPITAL LETTER VE % В -> "" % CYRILLIC CAPITAL LETTER GHE % Г -> "" % CYRILLIC CAPITAL LETTER DE % Д -> "" % CYRILLIC CAPITAL LETTER IE % Е -> "" % CYRILLIC CAPITAL LETTER ZHE % Ж -> "" % CYRILLIC CAPITAL LETTER ZE % З -> "" % CYRILLIC CAPITAL LETTER I % И -> "" % CYRILLIC CAPITAL LETTER SHORT I % Й -> "" % CYRILLIC CAPITAL LETTER KA % К -> "" % CYRILLIC CAPITAL LETTER EL % Л -> "" % CYRILLIC CAPITAL LETTER EM % М -> "" % CYRILLIC CAPITAL LETTER EN % Н -> "" % CYRILLIC CAPITAL LETTER O % О -> "" % CYRILLIC CAPITAL LETTER PE % П -> "" % CYRILLIC CAPITAL LETTER ER % Р -> "" % CYRILLIC CAPITAL LETTER ES % С -> "" % CYRILLIC CAPITAL LETTER TE % Т -> "" % CYRILLIC CAPITAL LETTER U % У -> "" % CYRILLIC CAPITAL LETTER EF % Ф -> "" % CYRILLIC CAPITAL LETTER HA % Х -> "" % CYRILLIC CAPITAL LETTER TSE % Ц -> "" % CYRILLIC CAPITAL LETTER CHE % Ч -> "" % CYRILLIC CAPITAL LETTER SHA % Ш -> "" % CYRILLIC CAPITAL LETTER SHCHA % Щ -> "" % CYRILLIC CAPITAL LETTER HARD SIGN % Ъ -> "" % CYRILLIC CAPITAL LETTER YERU % Ы -> "" % CYRILLIC CAPITAL LETTER SOFT SIGN % Ь -> "" % CYRILLIC CAPITAL LETTER E % Э -> "" % CYRILLIC CAPITAL LETTER YU % Ю -> "" % CYRILLIC CAPITAL LETTER YA % Я -> "" % CYRILLIC SMALL LETTER A % а -> "" % CYRILLIC SMALL LETTER BE % б -> "" % CYRILLIC SMALL LETTER VE % в -> "" % CYRILLIC SMALL LETTER GHE % г -> "" % CYRILLIC SMALL LETTER DE % д -> "" % CYRILLIC SMALL LETTER IE % е -> "" % CYRILLIC SMALL LETTER ZHE % ж -> "" % CYRILLIC SMALL LETTER ZE % з -> "" % CYRILLIC SMALL LETTER I % и -> "" % CYRILLIC SMALL LETTER SHORT I % й -> "" % CYRILLIC SMALL LETTER KA % к -> "" % CYRILLIC SMALL LETTER EL % л -> "" % CYRILLIC SMALL LETTER EM % м -> "" % CYRILLIC SMALL LETTER EN % н -> "" % CYRILLIC SMALL LETTER O % о -> "" % CYRILLIC SMALL LETTER PE % п -> "" % CYRILLIC SMALL LETTER ER % р -> "" % CYRILLIC SMALL LETTER ES % с -> "" % CYRILLIC SMALL LETTER TE % т -> "" % CYRILLIC SMALL LETTER U % у -> "" % CYRILLIC SMALL LETTER EF % ф -> "" % CYRILLIC SMALL LETTER HA % х -> "" % CYRILLIC SMALL LETTER TSE % ц -> "" % CYRILLIC SMALL LETTER CHE % ч -> "" % CYRILLIC SMALL LETTER SHA % ш -> "" % CYRILLIC SMALL LETTER SHCHA % щ -> "" % CYRILLIC SMALL LETTER HARD SIGN % ъ -> "" % CYRILLIC SMALL LETTER YERU % ы -> "" % CYRILLIC SMALL LETTER SOFT SIGN % ь -> "" % CYRILLIC SMALL LETTER E % э -> "" % CYRILLIC SMALL LETTER YU % ю -> "" % CYRILLIC SMALL LETTER YA % я -> "" % CYRILLIC SMALL LETTER IE WITH GRAVE % ѐ -> "" % CYRILLIC SMALL LETTER IO % ё -> "" % CYRILLIC SMALL LETTER DJE % ђ -> "" % CYRILLIC SMALL LETTER GJE % ѓ -> "" % CYRILLIC SMALL LETTER UKRAINIAN IE % є -> "" % CYRILLIC SMALL LETTER DZE % ѕ -> "" % CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I % і -> "" % CYRILLIC SMALL LETTER YI % ї -> "" % CYRILLIC SMALL LETTER JE % ј -> "" % CYRILLIC SMALL LETTER LJE % љ -> "" % CYRILLIC SMALL LETTER NJE % њ -> "" % CYRILLIC SMALL LETTER TSHE % ћ -> "" % CYRILLIC SMALL LETTER KJE % ќ -> "" % CYRILLIC SMALL LETTER I WITH GRAVE % ѝ -> "" % CYRILLIC SMALL LETTER SHORT U % ў -> "" % CYRILLIC SMALL LETTER DZHE % џ -> "" % CYRILLIC CAPITAL LETTER GHE WITH UPTURN % Ґ -> "" % CYRILLIC SMALL LETTER GHE WITH UPTURN % ґ -> "" % CYRILLIC CAPITAL LETTER GHE WITH STROKE % Ғ -> "" % CYRILLIC SMALL LETTER GHE WITH STROKE % ғ -> "" % CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK % Ҕ -> "" % CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK % ҕ -> "" % CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER % Җ -> "" % CYRILLIC SMALL LETTER ZHE WITH DESCENDER % җ -> "" % CYRILLIC CAPITAL LETTER ZE WITH DESCENDER % Ҙ -> "" % CYRILLIC SMALL LETTER ZE WITH DESCENDER % ҙ -> "" % CYRILLIC CAPITAL LETTER KA WITH DESCENDER % Қ -> "" % CYRILLIC SMALL LETTER KA WITH DESCENDER % қ -> "" % CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE % Ҝ -> "" % CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE % ҝ -> "" % CYRILLIC CAPITAL LETTER KA WITH STROKE % Ҟ -> "" % CYRILLIC SMALL LETTER KA WITH STROKE % ҟ -> "" % CYRILLIC CAPITAL LETTER BASHKIR KA % Ҡ -> "" % CYRILLIC SMALL LETTER BASHKIR KA % ҡ -> "" % CYRILLIC CAPITAL LETTER EN WITH DESCENDER % Ң -> "" % CYRILLIC SMALL LETTER EN WITH DESCENDER % ң -> "" % CYRILLIC CAPITAL LIGATURE EN GHE % Ҥ -> "" % CYRILLIC SMALL LIGATURE EN GHE % ҥ -> "" % CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK % Ҧ -> "" % CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK % ҧ -> "" % CYRILLIC CAPITAL LETTER ABKHASIAN HA % Ҩ -> "" % CYRILLIC SMALL LETTER ABKHASIAN HA % ҩ -> "" % CYRILLIC CAPITAL LETTER ES WITH DESCENDER % Ҫ -> "" % CYRILLIC SMALL LETTER ES WITH DESCENDER % ҫ -> "" % CYRILLIC CAPITAL LETTER TE WITH DESCENDER % Ҭ -> "" % CYRILLIC SMALL LETTER TE WITH DESCENDER % ҭ -> "" % CYRILLIC CAPITAL LETTER STRAIGHT U % Ү -> "" % CYRILLIC SMALL LETTER STRAIGHT U % ү -> "" % CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE % Ұ -> "" % CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE % ұ -> "" % CYRILLIC CAPITAL LETTER HA WITH DESCENDER % Ҳ -> "" % CYRILLIC SMALL LETTER HA WITH DESCENDER % ҳ -> "" % CYRILLIC CAPITAL LIGATURE TE TSE % Ҵ -> "" % CYRILLIC SMALL LIGATURE TE TSE % ҵ -> "" % CYRILLIC CAPITAL LETTER CHE WITH DESCENDER % Ҷ -> "" % CYRILLIC SMALL LETTER CHE WITH DESCENDER % ҷ -> "" % CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE % Ҹ -> "" % CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE % ҹ -> "" % CYRILLIC CAPITAL LETTER SHHA % Һ -> "" % CYRILLIC SMALL LETTER SHHA % һ -> "" % CYRILLIC CAPITAL LETTER ABKHASIAN CHE % Ҽ -> "" % CYRILLIC SMALL LETTER ABKHASIAN CHE % ҽ -> "" % CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER % Ҿ -> "" % CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER % ҿ -> "" % CYRILLIC LETTER PALOCHKA % Ӏ -> "" % CYRILLIC CAPITAL LETTER ZHE WITH BREVE % Ӂ -> "" % CYRILLIC SMALL LETTER ZHE WITH BREVE % ӂ -> "" % CYRILLIC CAPITAL LETTER KA WITH HOOK % Ӄ -> "" % CYRILLIC SMALL LETTER KA WITH HOOK % ӄ -> "" % CYRILLIC CAPITAL LETTER EN WITH HOOK % Ӈ -> "" % CYRILLIC SMALL LETTER EN WITH HOOK % ӈ -> "" % CYRILLIC CAPITAL LETTER KHAKASSIAN CHE % Ӌ -> "" % CYRILLIC SMALL LETTER KHAKASSIAN CHE % ӌ -> "" % CYRILLIC CAPITAL LETTER A WITH BREVE % Ӑ -> "" % CYRILLIC SMALL LETTER A WITH BREVE % ӑ -> "" % CYRILLIC CAPITAL LETTER A WITH DIAERESIS % Ӓ -> "" % CYRILLIC SMALL LETTER A WITH DIAERESIS % ӓ -> "" % CYRILLIC CAPITAL LIGATURE A IE % Ӕ -> "" % CYRILLIC SMALL LIGATURE A IE % ӕ -> "" % CYRILLIC CAPITAL LETTER IE WITH BREVE % Ӗ -> "" % CYRILLIC SMALL LETTER IE WITH BREVE % ӗ -> "" % CYRILLIC CAPITAL LETTER SCHWA % Ә -> "" % CYRILLIC SMALL LETTER SCHWA % ә -> "" % CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS % Ӛ -> "" % CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS % ӛ -> "" % CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS % Ӝ -> "" % CYRILLIC SMALL LETTER ZHE WITH DIAERESIS % ӝ -> "" % CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS % Ӟ -> "" % CYRILLIC SMALL LETTER ZE WITH DIAERESIS % ӟ -> "" % CYRILLIC CAPITAL LETTER ABKHASIAN DZE % Ӡ -> "" % CYRILLIC SMALL LETTER ABKHASIAN DZE % ӡ -> "" % CYRILLIC CAPITAL LETTER I WITH MACRON % Ӣ -> "" % CYRILLIC SMALL LETTER I WITH MACRON % ӣ -> "" % CYRILLIC CAPITAL LETTER I WITH DIAERESIS % Ӥ -> "" % CYRILLIC SMALL LETTER I WITH DIAERESIS % ӥ -> "" % CYRILLIC CAPITAL LETTER O WITH DIAERESIS % Ӧ -> "" % CYRILLIC SMALL LETTER O WITH DIAERESIS % ӧ -> "" % CYRILLIC CAPITAL LETTER BARRED O % Ө -> "" % CYRILLIC SMALL LETTER BARRED O % ө -> "" % CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS % Ӫ -> "" % CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS % ӫ -> "" % CYRILLIC CAPITAL LETTER U WITH MACRON % Ӯ -> "" % CYRILLIC SMALL LETTER U WITH MACRON % ӯ -> "" % CYRILLIC CAPITAL LETTER U WITH DIAERESIS % Ӱ -> "" % CYRILLIC SMALL LETTER U WITH DIAERESIS % ӱ -> "" % CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE % Ӳ -> "" % CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE % ӳ -> "" % CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS % Ӵ -> "" % CYRILLIC SMALL LETTER CHE WITH DIAERESIS % ӵ -> "" % CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS % Ӹ -> "" % CYRILLIC SMALL LETTER YERU WITH DIAERESIS % ӹ -> "" % LATIN SMALL LETTER LONG S WITH DOT ABOVE % ẛ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI % ἀ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA % ἁ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA % ἂ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA % ἃ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA % ἄ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA % ἅ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI % ἆ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI % ἇ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI % Ἀ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA % Ἁ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA % Ἂ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA % Ἃ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA % Ἄ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA % Ἅ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI % Ἆ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI % Ἇ -> "" % GREEK SMALL LETTER EPSILON WITH PSILI % ἐ -> "" % GREEK SMALL LETTER EPSILON WITH DASIA % ἑ -> "" % GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA % ἒ -> "" % GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA % ἓ -> "" % GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA % ἔ -> "" % GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA % ἕ -> "" % GREEK CAPITAL LETTER EPSILON WITH PSILI % Ἐ -> "" % GREEK CAPITAL LETTER EPSILON WITH DASIA % Ἑ -> "" % GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA % Ἒ -> "" % GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA % Ἓ -> "" % GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA % Ἔ -> "" % GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA % Ἕ -> "" % GREEK SMALL LETTER ETA WITH PSILI % ἠ -> "" % GREEK SMALL LETTER ETA WITH DASIA % ἡ -> "" % GREEK SMALL LETTER ETA WITH PSILI AND VARIA % ἢ -> "" % GREEK SMALL LETTER ETA WITH DASIA AND VARIA % ἣ -> "" % GREEK SMALL LETTER ETA WITH PSILI AND OXIA % ἤ -> "" % GREEK SMALL LETTER ETA WITH DASIA AND OXIA % ἥ -> "" % GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI % ἦ -> "" % GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI % ἧ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI % Ἠ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA % Ἡ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA % Ἢ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA % Ἣ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA % Ἤ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA % Ἥ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI % Ἦ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI % Ἧ -> "" % GREEK SMALL LETTER IOTA WITH PSILI % ἰ -> "" % GREEK SMALL LETTER IOTA WITH DASIA % ἱ -> "" % GREEK SMALL LETTER IOTA WITH PSILI AND VARIA % ἲ -> "" % GREEK SMALL LETTER IOTA WITH DASIA AND VARIA % ἳ -> "" % GREEK SMALL LETTER IOTA WITH PSILI AND OXIA % ἴ -> "" % GREEK SMALL LETTER IOTA WITH DASIA AND OXIA % ἵ -> "" % GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI % ἶ -> "" % GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI % ἷ -> "" % GREEK CAPITAL LETTER IOTA WITH PSILI % Ἰ -> "" % GREEK CAPITAL LETTER IOTA WITH DASIA % Ἱ -> "" % GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA % Ἲ -> "" % GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA % Ἳ -> "" % GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA % Ἴ -> "" % GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA % Ἵ -> "" % GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI % Ἶ -> "" % GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI % Ἷ -> "" % GREEK SMALL LETTER OMICRON WITH PSILI % ὀ -> "" % GREEK SMALL LETTER OMICRON WITH DASIA % ὁ -> "" % GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA % ὂ -> "" % GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA % ὃ -> "" % GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA % ὄ -> "" % GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA % ὅ -> "" % GREEK CAPITAL LETTER OMICRON WITH PSILI % Ὀ -> "" % GREEK CAPITAL LETTER OMICRON WITH DASIA % Ὁ -> "" % GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA % Ὂ -> "" % GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA % Ὃ -> "" % GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA % Ὄ -> "" % GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA % Ὅ -> "" % GREEK SMALL LETTER UPSILON WITH PSILI % ὐ -> "" % GREEK SMALL LETTER UPSILON WITH DASIA % ὑ -> "" % GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA % ὒ -> "" % GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA % ὓ -> "" % GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA % ὔ -> "" % GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA % ὕ -> "" % GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI % ὖ -> "" % GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI % ὗ -> "" % GREEK CAPITAL LETTER UPSILON WITH DASIA % Ὑ -> "" % GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA % Ὓ -> "" % GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA % Ὕ -> "" % GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI % Ὗ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI % ὠ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA % ὡ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA % ὢ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA % ὣ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA % ὤ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA % ὥ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI % ὦ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI % ὧ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI % Ὠ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA % Ὡ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA % Ὢ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA % Ὣ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA % Ὤ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA % Ὥ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI % Ὦ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI % Ὧ -> "" % GREEK SMALL LETTER ALPHA WITH VARIA % ὰ -> "" % GREEK SMALL LETTER ALPHA WITH OXIA % ά -> "" % GREEK SMALL LETTER EPSILON WITH VARIA % ὲ -> "" % GREEK SMALL LETTER EPSILON WITH OXIA % έ -> "" % GREEK SMALL LETTER ETA WITH VARIA % ὴ -> "" % GREEK SMALL LETTER ETA WITH OXIA % ή -> "" % GREEK SMALL LETTER IOTA WITH VARIA % ὶ -> "" % GREEK SMALL LETTER IOTA WITH OXIA % ί -> "" % GREEK SMALL LETTER OMICRON WITH VARIA % ὸ -> "" % GREEK SMALL LETTER OMICRON WITH OXIA % ό -> "" % GREEK SMALL LETTER UPSILON WITH VARIA % ὺ -> "" % GREEK SMALL LETTER UPSILON WITH OXIA % ύ -> "" % GREEK SMALL LETTER OMEGA WITH VARIA % ὼ -> "" % GREEK SMALL LETTER OMEGA WITH OXIA % ώ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI % ᾀ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI % ᾁ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI % ᾂ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI % ᾃ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI % ᾄ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI % ᾅ -> "" % GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI % ᾆ -> "" % GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI % ᾇ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI % ᾈ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI % ᾉ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI % ᾊ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI % ᾋ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI % ᾌ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI % ᾍ -> "" % GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI % ᾎ -> "" % GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI % ᾏ -> "" % GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI % ᾐ -> "" % GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI % ᾑ -> "" % GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI % ᾒ -> "" % GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI % ᾓ -> "" % GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI % ᾔ -> "" % GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI % ᾕ -> "" % GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI % ᾖ -> "" % GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI % ᾗ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI % ᾘ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI % ᾙ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI % ᾚ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI % ᾛ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI % ᾜ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI % ᾝ -> "" % GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI % ᾞ -> "" % GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI % ᾟ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI % ᾠ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI % ᾡ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI % ᾢ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI % ᾣ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI % ᾤ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI % ᾥ -> "" % GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI % ᾦ -> "" % GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI % ᾧ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI % ᾨ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI % ᾩ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI % ᾪ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI % ᾫ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI % ᾬ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI % ᾭ -> "" % GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI % ᾮ -> "" % GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI % ᾯ -> "" % GREEK SMALL LETTER ALPHA WITH VRACHY % ᾰ -> "" % GREEK SMALL LETTER ALPHA WITH MACRON % ᾱ -> "" % GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI % ᾲ -> "" % GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI % ᾳ -> "" % GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI % ᾴ -> "" % GREEK SMALL LETTER ALPHA WITH PERISPOMENI % ᾶ -> "" % GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI % ᾷ -> "" % GREEK CAPITAL LETTER ALPHA WITH VRACHY % Ᾰ -> "" % GREEK CAPITAL LETTER ALPHA WITH MACRON % Ᾱ -> "" % GREEK CAPITAL LETTER ALPHA WITH VARIA % Ὰ -> "" % GREEK CAPITAL LETTER ALPHA WITH OXIA % Ά -> "" % GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI % ᾼ -> "" % GREEK KORONIS % ᾽ -> "" % GREEK PROSGEGRAMMENI % ι -> "" % GREEK PSILI % ᾿ -> "" % GREEK PERISPOMENI % ῀ -> "" % GREEK DIALYTIKA AND PERISPOMENI % ῁ -> "" % GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI % ῂ -> "" % GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI % ῃ -> "" % GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI % ῄ -> "" % GREEK SMALL LETTER ETA WITH PERISPOMENI % ῆ -> "" % GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI % ῇ -> "" % GREEK CAPITAL LETTER EPSILON WITH VARIA % Ὲ -> "" % GREEK CAPITAL LETTER EPSILON WITH OXIA % Έ -> "" % GREEK CAPITAL LETTER ETA WITH VARIA % Ὴ -> "" % GREEK CAPITAL LETTER ETA WITH OXIA % Ή -> "" % GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI % ῌ -> "" % GREEK PSILI AND VARIA % ῍ -> "" % GREEK PSILI AND OXIA % ῎ -> "" % GREEK PSILI AND PERISPOMENI % ῏ -> "" % GREEK SMALL LETTER IOTA WITH VRACHY % ῐ -> "" % GREEK SMALL LETTER IOTA WITH MACRON % ῑ -> "" % GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA % ῒ -> "" % GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA % ΐ -> "" % GREEK SMALL LETTER IOTA WITH PERISPOMENI % ῖ -> "" % GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI % ῗ -> "" % GREEK CAPITAL LETTER IOTA WITH VRACHY % Ῐ -> "" % GREEK CAPITAL LETTER IOTA WITH MACRON % Ῑ -> "" % GREEK CAPITAL LETTER IOTA WITH VARIA % Ὶ -> "" % GREEK CAPITAL LETTER IOTA WITH OXIA % Ί -> "" % GREEK DASIA AND VARIA % ῝ -> "" % GREEK DASIA AND OXIA % ῞ -> "" % GREEK DASIA AND PERISPOMENI % ῟ -> "" % GREEK SMALL LETTER UPSILON WITH VRACHY % ῠ -> "" % GREEK SMALL LETTER UPSILON WITH MACRON % ῡ -> "" % GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA % ῢ -> "" % GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA % ΰ -> "" % GREEK SMALL LETTER RHO WITH PSILI % ῤ -> "" % GREEK SMALL LETTER RHO WITH DASIA % ῥ -> "" % GREEK SMALL LETTER UPSILON WITH PERISPOMENI % ῦ -> "" % GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI % ῧ -> "" % GREEK CAPITAL LETTER UPSILON WITH VRACHY % Ῠ -> "" % GREEK CAPITAL LETTER UPSILON WITH MACRON % Ῡ -> "" % GREEK CAPITAL LETTER UPSILON WITH VARIA % Ὺ -> "" % GREEK CAPITAL LETTER UPSILON WITH OXIA % Ύ -> "" % GREEK CAPITAL LETTER RHO WITH DASIA % Ῥ -> "" % GREEK DIALYTIKA AND VARIA % ῭ -> "" % GREEK DIALYTIKA AND OXIA % ΅ -> "" % GREEK VARIA % ` -> "" % GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI % ῲ -> "" % GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI % ῳ -> "" % GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI % ῴ -> "" % GREEK SMALL LETTER OMEGA WITH PERISPOMENI % ῶ -> "" % GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI % ῷ -> "" % GREEK CAPITAL LETTER OMICRON WITH VARIA % Ὸ -> "" % GREEK CAPITAL LETTER OMICRON WITH OXIA % Ό -> "" % GREEK CAPITAL LETTER OMEGA WITH VARIA % Ὼ -> "" % GREEK CAPITAL LETTER OMEGA WITH OXIA % Ώ -> "" % GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI % ῼ -> "" % GREEK OXIA % ´ -> "" % GREEK DASIA % ῾ -> "" % FRENCH FRANC SIGN % ₣ -> "" % LIRA SIGN % ₤ -> "" % PESETA SIGN % ₧ -> "" % DRACHMA SIGN % ₯ -> "" % UP DOWN ARROW % ↕ -> "" % UP DOWN ARROW WITH BASE % ↨ -> "" % FOR ALL % ∀ -> "" % PARTIAL DIFFERENTIAL % ∂ -> "" % THERE EXISTS % ∃ -> "" % INCREMENT % ∆ -> "" % ELEMENT OF % ∈ -> "" % NOT AN ELEMENT OF % ∉ -> "" % N-ARY PRODUCT % ∏ -> "" % N-ARY SUMMATION % ∑ -> "" % SQUARE ROOT % √ -> "" % RIGHT ANGLE % ∟ -> "" % LOGICAL AND % ∧ -> "" % LOGICAL OR % ∨ -> "" % INTERSECTION % ∩ -> "" % UNION % ∪ -> "" % INTEGRAL % ∫ -> "" % ALMOST EQUAL TO % ≈ -> "" % ESTIMATES % ≙ -> "" % SUBSET OF % ⊂ -> "" % SUPERSET OF % ⊃ -> "" % HOUSE % ⌂ -> "" % REVERSED NOT SIGN % ⌐ -> "" % TOP HALF INTEGRAL % ⌠ -> "" % BOTTOM HALF INTEGRAL % ⌡ -> "" % UPPER HALF BLOCK % ▀ -> "" % LOWER HALF BLOCK % ▄ -> "" % FULL BLOCK % █ -> "" % LEFT HALF BLOCK % ▌ -> "" % RIGHT HALF BLOCK % ▐ -> "" % LIGHT SHADE % ░ -> "" % MEDIUM SHADE % ▒ -> "" % DARK SHADE % ▓ -> "" % BLACK SQUARE % ■ -> "" % BLACK RECTANGLE % ▬ -> "" % BLACK UP-POINTING TRIANGLE % ▲ -> "" % BLACK RIGHT-POINTING POINTER % ► -> "" % BLACK DOWN-POINTING TRIANGLE % ▼ -> "" % BLACK LEFT-POINTING POINTER % ◄ -> "" % LOZENGE % ◊ -> "" % INVERSE BULLET % ◘ -> "" % INVERSE WHITE CIRCLE % ◙ -> "" % WHITE SUN WITH RAYS % ☼ -> "" % FEMALE SIGN % ♀ -> "" % MALE SIGN % ♂ -> "" % BLACK SPADE SUIT % ♠ -> "" % BLACK CLUB SUIT % ♣ -> "" % BLACK HEART SUIT % ♥ -> "" % BLACK DIAMOND SUIT % ♦ -> "" % EIGHTH NOTE % ♪ -> "" % BEAMED EIGHTH NOTES % ♫ -> "" ./doc/notinstalled/transtab/transcomp0000644000175000017500000001222307532460062020055 0ustar henrichhenrich#!/usr/bin/perl sub utf8 ($) { my $c = shift(@_); if ($c < 0x80) { return sprintf("%c", $c); } elsif ($c < 0x800) { return sprintf("%c%c", 0xc0 | ($c >> 6), 0x80 | ($c & 0x3f)); } elsif ($c < 0x10000) { return sprintf("%c%c%c", 0xe0 | ($c >> 12), 0x80 | (($c >> 6) & 0x3f), 0x80 | ( $c & 0x3f)); } elsif ($c < 0x200000) { return sprintf("%c%c%c%c", 0xf0 | ($c >> 18), 0x80 | (($c >> 12) & 0x3f), 0x80 | (($c >> 6) & 0x3f), 0x80 | ( $c & 0x3f)); } elsif ($c < 0x4000000) { return sprintf("%c%c%c%c%c", 0xf8 | ($c >> 24), 0x80 | (($c >> 18) & 0x3f), 0x80 | (($c >> 12) & 0x3f), 0x80 | (($c >> 6) & 0x3f), 0x80 | ( $c & 0x3f)); } elsif ($c < 0x80000000) { return sprintf("%c%c%c%c%c%c", 0xfe | ($c >> 30), 0x80 | (($c >> 24) & 0x3f), 0x80 | (($c >> 18) & 0x3f), 0x80 | (($c >> 12) & 0x3f), 0x80 | (($c >> 6) & 0x3f), 0x80 | ( $c & 0x3f)); } else { return utf8(0xfffd); } } sub append_translit { my ($ucs, $t) = @_; $ucs =~ /^[0-9A-F]{4}$/ || die("ERROR: append_translit('$ucs','$t')\n"); $t =~ /^([0-9A-F]{4})*$/ || die("ERROR: append_translit('$ucs','$t')\n"); #print STDERR "append_translit('$ucs','$t')\n"; if (!defined($trans{$ucs})) { $trans{$ucs} = []; } push(@{$trans{$ucs}}, $t); } $unicodedata = "UnicodeData-Latest.txt"; $datadir = "$ENV{HOME}/local/lib/ucs"; # read list of all Unicode names if (!open(UDATA, $unicodedata) && !open(UDATA, "$datadir/$unicodedata")) { die ("Can't open Unicode database '$unicodedata':\n$!\n\n" . "Please make sure that you have downloaded the file\n" . "ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData-Latest.txt\n"); } while () { if (/^([0-9,A-F]{4});([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*)$/) { $name{$1} = $2; } else { die("Syntax error in line '$_' in file '$unicodedata'"); } } close(UDATA); while () { next if /^\s*[\%\#]/; next if /^\s*$/; if (/^([0-9a-fA-F]{4})\s*(\#.*)?$/) { # uniset table format $ucs = $1; $ucs =~ tr/a-f/A-F/; if (!$trans{$ucs}) { append_translit($ucs, ""); } } elsif (/^\s*\s+(.*?)(\%.*)?$/) { # ISO/IEC TR 14652 format $ucs = $1; $ucs =~ tr/a-f/A-F/; $_ = $2; while (1) { if (/^;?(.*)$/) { $t = $1; $t =~ tr/a-f/A-F/; $_=$2; append_translit($ucs, $t); } elsif (/^\"((?:)*)\";?(.*)$/) { $t = $1; $_ = $2; $t =~ tr/a-f/A-F/; $t =~ s///g; append_translit($ucs, $t); } elsif (/^\"([^<\"]+)\";?(.*)$/) { $_ = $2; $t = ""; for ($i = 0; $i < length($1); $i++) { $t .= sprintf("%04X", ord(substr($1,$i,1))); } append_translit($ucs, $t); } elsif (/^\s*\%/ || /^\s*$/) { last; } else { die("parsing problem: '$_'\n"); } } } elsif (/^U\+([0-9a-fA-F]{4}):(.*)$/ || /^U\+([0-9a-fA-F]{4})\s*\"(.*)\"\s*(\#.*)?$/) { # Lynx format $ucs = $1; $ucs =~ tr/a-f/A-F/; $t = ""; for ($i = 0; $i < length($2); $i++) { $t .= sprintf("%04X", ord(substr($2,$i,1))); } append_translit($ucs, $t); } elsif (/0x([0-9a-fA-F]{2})\s*(.*?)\s*(\#.*)?$/) { # Lynx format $t = hex($1); $_=$2; while ($_) { if (/^U\+([0-9a-fA-F]{4})-U\+([0-9a-fA-F]{4})\s*(.*)$/) { $ucs1=$1; $ucs2=$2; $_=$3; for ($ucs=hex($ucs1); $ucs <= hex($ucs2); $ucs++) { append_translit(sprintf("%04X", $ucs), sprintf("%04X", $t)); } } elsif (/^U\+([0-9a-fA-F]{4})\s*(.*)$/) { $_=$3; append_translit(sprintf("%04X", hex($1)), sprintf("%04X", $t)); } else { print STDERR "Can't handle suffix: '$_'\n"; last; } } } else { print STDERR "Can't handle: $_"; } } $ENV{format} = iso if !$ENV{format}; if ($ENV{format} =~ /^iso/) { # output in ISO/IEC DTR 14652 format print "% \$Id: \$\n\n"; for $ucs (sort(keys(%trans))) { print "% $name{$ucs}\n"; if ($ENV{format} eq isoutf) { print "% " . utf8(hex($ucs)) . " -> "; @l = @{$trans{$ucs}}; while ($t = shift @l) { print "'"; while ($t =~ /^(....)/) { $t = $'; print utf8(hex($1)); } print "'"; print ", " if @l; } print "\n"; } print " "; @l = @{$trans{$ucs}}; while (defined($t = shift @l)) { if (length($t) == 4) { print ""; } else { $t =~ s/(....)//g; print "\"$t\""; } print ";" if @l; } print "\n"; } } if ($ENV{format} eq utf) { for $ucs (sort(keys(%trans))) { print "U+$ucs # " . utf8(hex($ucs)) . " -> "; @l = @{$trans{$ucs}}; while ($t = shift @l) { print "'"; while ($t =~ /^(....)/) { $t = $'; print utf8(hex($1)); } print "'"; print ", " if @l; } print "\n"; } } ./doc/notinstalled/transtab/transtab.repertoire0000644000175000017500000004321607532460062022052 0ustar henrichhenrichU+0027 # ' -> '’' U+0060 # ` -> '‛', '‘' U+00A0 #   -> ' ' U+00A1 # ¡ -> '!' U+00A2 # ¢ -> 'c' U+00A3 # £ -> 'GBP' U+00A5 # ¥ -> 'Y' U+00A6 # ¦ -> '|' U+00A7 # § -> 'S' U+00A8 # ¨ -> '"' U+00A9 # © -> '(c)', 'c' U+00AA # ª -> 'a' U+00AB # « -> '<<' U+00AC # ¬ -> '-' U+00AD # ­ -> '-' U+00AE # ® -> '(R)' U+00AF # ¯ -> '-' U+00B0 # ° -> ' ' U+00B1 # ± -> '+/-' U+00B2 # ² -> '^2', '2' U+00B3 # ³ -> '^3', '3' U+00B4 # ´ -> ''' U+00B5 # µ -> 'μ', 'u' U+00B6 # ¶ -> 'P' U+00B7 # · -> '.' U+00B8 # ¸ -> ',' U+00B9 # ¹ -> '^1', '1' U+00BA # º -> 'o' U+00BB # » -> '>>' U+00BC # ¼ -> ' 1/4' U+00BD # ½ -> ' 1/2' U+00BE # ¾ -> ' 3/4' U+00BF # ¿ -> '?' U+00C0 # À -> 'A' U+00C1 # Á -> 'A' U+00C2 #  -> 'A' U+00C3 # à -> 'A' U+00C4 # Ä -> 'Ae', 'A' U+00C5 # Å -> 'Aa', 'A' U+00C6 # Æ -> 'AE', 'A' U+00C7 # Ç -> 'C' U+00C8 # È -> 'E' U+00C9 # É -> 'E' U+00CA # Ê -> 'E' U+00CB # Ë -> 'E' U+00CC # Ì -> 'I' U+00CD # Í -> 'I' U+00CE # Î -> 'I' U+00CF # Ï -> 'I' U+00D0 # Ð -> 'D' U+00D1 # Ñ -> 'N' U+00D2 # Ò -> 'O' U+00D3 # Ó -> 'O' U+00D4 # Ô -> 'O' U+00D5 # Õ -> 'O' U+00D6 # Ö -> 'Oe', 'O' U+00D7 # × -> 'x' U+00D8 # Ø -> 'O' U+00D9 # Ù -> 'U' U+00DA # Ú -> 'U' U+00DB # Û -> 'U' U+00DC # Ü -> 'Ue', 'U' U+00DD # Ý -> 'Y' U+00DE # Þ -> 'Th' U+00DF # ß -> 'ss', 'β' U+00E0 # à -> 'a' U+00E1 # á -> 'a' U+00E2 # â -> 'a' U+00E3 # ã -> 'a' U+00E4 # ä -> 'ae', 'a' U+00E5 # å -> 'aa', 'a' U+00E6 # æ -> 'ae', 'a' U+00E7 # ç -> 'c' U+00E8 # è -> 'e' U+00E9 # é -> 'e' U+00EA # ê -> 'e' U+00EB # ë -> 'e' U+00EC # ì -> 'i' U+00ED # í -> 'i' U+00EE # î -> 'i' U+00EF # ï -> 'i' U+00F0 # ð -> 'd' U+00F1 # ñ -> 'n' U+00F2 # ò -> 'o' U+00F3 # ó -> 'o' U+00F4 # ô -> 'o' U+00F5 # õ -> 'o' U+00F6 # ö -> 'oe', 'o' U+00F7 # ÷ -> ':' U+00F8 # ø -> 'o' U+00F9 # ù -> 'u' U+00FA # ú -> 'u' U+00FB # û -> 'u' U+00FC # ü -> 'ue', 'u' U+00FD # ý -> 'y' U+00FE # þ -> 'th' U+00FF # ÿ -> 'y' U+0100 # Ā -> 'A' U+0101 # ā -> 'a' U+0102 # Ă -> 'A' U+0103 # ă -> 'a' U+0104 # Ą -> 'A' U+0105 # ą -> 'a' U+0106 # Ć -> 'C' U+0107 # ć -> 'c' U+0108 # Ĉ -> 'Ch', 'C' U+0109 # ĉ -> 'ch', 'c' U+010A # Ċ -> 'C' U+010B # ċ -> 'c' U+010C # Č -> 'C' U+010D # č -> 'c' U+010E # Ď -> 'D' U+010F # ď -> 'd' U+0110 # Đ -> 'D' U+0111 # đ -> 'd' U+0112 # Ē -> 'E' U+0113 # ē -> 'e' U+0114 # Ĕ -> 'E' U+0115 # ĕ -> 'e' U+0116 # Ė -> 'E' U+0117 # ė -> 'e' U+0118 # Ę -> 'E' U+0119 # ę -> 'e' U+011A # Ě -> 'E' U+011B # ě -> 'e' U+011C # Ĝ -> 'Gh', 'G' U+011D # ĝ -> 'gh', 'g' U+011E # Ğ -> 'G' U+011F # ğ -> 'g' U+0120 # Ġ -> 'G' U+0121 # ġ -> 'g' U+0122 # Ģ -> 'G' U+0123 # ģ -> 'g' U+0124 # Ĥ -> 'Hh', 'H' U+0125 # ĥ -> 'hh', 'h' U+0126 # Ħ -> 'H' U+0127 # ħ -> 'h' U+0128 # Ĩ -> 'I' U+0129 # ĩ -> 'i' U+012A # Ī -> 'I' U+012B # ī -> 'i' U+012C # Ĭ -> 'I' U+012D # ĭ -> 'i' U+012E # Į -> 'I' U+012F # į -> 'i' U+0130 # İ -> 'I' U+0131 # ı -> 'i' U+0132 # IJ -> 'IJ' U+0133 # ij -> 'ij' U+0134 # Ĵ -> 'Jh', 'J' U+0135 # ĵ -> 'jh', 'j' U+0136 # Ķ -> 'K' U+0137 # ķ -> 'k' U+0138 # ĸ -> 'k' U+0139 # Ĺ -> 'L' U+013A # ĺ -> 'l' U+013B # Ļ -> 'L' U+013C # ļ -> 'l' U+013D # Ľ -> 'L' U+013E # ľ -> 'l' U+013F # Ŀ -> 'L·', 'L.', 'L' U+0140 # ŀ -> 'l·', 'l.', 'l' U+0141 # Ł -> 'L' U+0142 # ł -> 'l' U+0143 # Ń -> 'N' U+0144 # ń -> 'n' U+0145 # Ņ -> 'N' U+0146 # ņ -> 'n' U+0147 # Ň -> 'N' U+0148 # ň -> 'n' U+0149 # ʼn -> ''n' U+014A # Ŋ -> 'NG', 'N' U+014B # ŋ -> 'ng', 'n' U+014C # Ō -> 'O' U+014D # ō -> 'o' U+014E # Ŏ -> 'O' U+014F # ŏ -> 'o' U+0150 # Ő -> 'O' U+0151 # ő -> 'o' U+0152 # Œ -> 'OE' U+0153 # œ -> 'oe' U+0154 # Ŕ -> 'R' U+0155 # ŕ -> 'r' U+0156 # Ŗ -> 'R' U+0157 # ŗ -> 'r' U+0158 # Ř -> 'R' U+0159 # ř -> 'r' U+015A # Ś -> 'S' U+015B # ś -> 's' U+015C # Ŝ -> 'Sh', 'S' U+015D # ŝ -> 'sh', 's' U+015E # Ş -> 'S' U+015F # ş -> 's' U+0160 # Š -> 'S' U+0161 # š -> 's' U+0162 # Ţ -> 'T' U+0163 # ţ -> 't' U+0164 # Ť -> 'T' U+0165 # ť -> 't' U+0166 # Ŧ -> 'T' U+0167 # ŧ -> 't' U+0168 # Ũ -> 'U' U+0169 # ũ -> 'u' U+016A # Ū -> 'U' U+016B # ū -> 'u' U+016C # Ŭ -> 'U' U+016D # ŭ -> 'u' U+016E # Ů -> 'U' U+016F # ů -> 'u' U+0170 # Ű -> 'U' U+0171 # ű -> 'u' U+0172 # Ų -> 'U' U+0173 # ų -> 'u' U+0174 # Ŵ -> 'W' U+0175 # ŵ -> 'w' U+0176 # Ŷ -> 'Y' U+0177 # ŷ -> 'y' U+0178 # Ÿ -> 'Y' U+0179 # Ź -> 'Z' U+017A # ź -> 'z' U+017B # Ż -> 'Z' U+017C # ż -> 'z' U+017D # Ž -> 'Z' U+017E # ž -> 'z' U+017F # ſ -> 's' U+0192 # ƒ -> 'f' U+0218 # Ș -> 'Ş', 'S' U+0219 # ș -> 'ş', 's' U+021A # Ț -> 'Ţ', 'T' U+021B # ț -> 'ţ', 't' U+02B9 # ʹ -> '′', ''' U+02BB # ʻ -> '‘' U+02BC # ʼ -> '’', ''' U+02BD # ʽ -> '‛' U+02C6 # ˆ -> '^' U+02C8 # ˈ -> ''' U+02C9 # ˉ -> '¯' U+02CC # ˌ -> ',' U+02D0 # ː -> ':' U+02DA # ˚ -> '°' U+02DC # ˜ -> '~' U+02DD # ˝ -> '"' U+0374 # ʹ -> ''' U+0375 # ͵ -> ',' U+037E # ; -> ';' U+1E02 # Ḃ -> 'B' U+1E03 # ḃ -> 'b' U+1E0A # Ḋ -> 'D' U+1E0B # ḋ -> 'd' U+1E1E # Ḟ -> 'F' U+1E1F # ḟ -> 'f' U+1E40 # Ṁ -> 'M' U+1E41 # ṁ -> 'm' U+1E56 # Ṗ -> 'P' U+1E57 # ṗ -> 'p' U+1E60 # Ṡ -> 'S' U+1E61 # ṡ -> 's' U+1E6A # Ṫ -> 'T' U+1E6B # ṫ -> 't' U+1E80 # Ẁ -> 'W' U+1E81 # ẁ -> 'w' U+1E82 # Ẃ -> 'W' U+1E83 # ẃ -> 'w' U+1E84 # Ẅ -> 'W' U+1E85 # ẅ -> 'w' U+1EF2 # Ỳ -> 'Y' U+1EF3 # ỳ -> 'y' U+2000 #   -> ' ' U+2001 #   -> ' ' U+2002 #   -> ' ' U+2003 #   -> ' ' U+2004 #   -> ' ' U+2005 #   -> ' ' U+2006 #   -> ' ' U+2007 #   -> ' ' U+2008 #   -> ' ' U+2009 #   -> ' ' U+200A #   -> U+200B # ​ -> U+200C # ‌ -> U+200D # ‍ -> U+200E # ‎ -> U+200F # ‏ -> U+2010 # ‐ -> '-' U+2011 # ‑ -> '-' U+2012 # ‒ -> '-' U+2013 # – -> '-' U+2014 # — -> '--' U+2015 # ― -> '--' U+2016 # ‖ -> '||' U+2017 # ‗ -> '_' U+2018 # ‘ -> ''' U+2019 # ’ -> ''' U+201A # ‚ -> ''' U+201B # ‛ -> ''' U+201C # “ -> '"' U+201D # ” -> '"' U+201E # „ -> '"' U+201F # ‟ -> '"' U+2020 # † -> '+' U+2021 # ‡ -> '++' U+2022 # • -> 'o' U+2023 # ‣ -> '>' U+2024 # ․ -> '.' U+2025 # ‥ -> '..' U+2026 # … -> '...' U+2027 # ‧ -> '-' U+202A # ‪ -> U+202B # ‫ -> U+202C # ‬ -> U+202D # ‭ -> U+202E # ‮ -> U+202F #   -> ' ' U+2030 # ‰ -> ' 0/00' U+2032 # ′ -> ''' U+2033 # ″ -> '"' U+2034 # ‴ -> ''''' U+2035 # ‵ -> '`' U+2036 # ‶ -> '``' U+2037 # ‷ -> '```' U+2039 # ‹ -> '<' U+203A # › -> '>' U+203C # ‼ -> '!!' U+203E # ‾ -> '-' U+2043 # ⁃ -> '-' U+2044 # ⁄ -> '/' U+2048 # ⁈ -> '?!' U+2049 # ⁉ -> '!?' U+204A # ⁊ -> '7' U+2070 # ⁰ -> '^0', '0' U+2074 # ⁴ -> '^4', '4' U+2075 # ⁵ -> '^5', '5' U+2076 # ⁶ -> '^6', '6' U+2077 # ⁷ -> '^7', '7' U+2078 # ⁸ -> '^8', '8' U+2079 # ⁹ -> '^9', '9' U+207A # ⁺ -> '^+', '+' U+207B # ⁻ -> '^-', '-' U+207C # ⁼ -> '^=', '=' U+207D # ⁽ -> '^(', '(' U+207E # ⁾ -> '^)', ')' U+207F # ⁿ -> '^n', 'n' U+2080 # ₀ -> '_0', '0' U+2081 # ₁ -> '_1', '1' U+2082 # ₂ -> '_2', '2' U+2083 # ₃ -> '_3', '3' U+2084 # ₄ -> '_4', '4' U+2085 # ₅ -> '_5', '5' U+2086 # ₆ -> '_6', '6' U+2087 # ₇ -> '_7', '7' U+2088 # ₈ -> '_8', '8' U+2089 # ₉ -> '_9', '9' U+208A # ₊ -> '_+', '+' U+208B # ₋ -> '_-', '-' U+208C # ₌ -> '_=', '=' U+208D # ₍ -> '_(', '(' U+208E # ₎ -> '_)', ')' U+20AC # € -> 'EUR', 'E' U+2100 # ℀ -> 'a/c' U+2101 # ℁ -> 'a/s' U+2103 # ℃ -> '°C', 'C' U+2105 # ℅ -> 'c/o' U+2106 # ℆ -> 'c/u' U+2109 # ℉ -> '°F', 'F' U+2113 # ℓ -> 'l' U+2116 # № -> 'Nº', 'No' U+2117 # ℗ -> '(P)' U+2120 # ℠ -> '[SM]' U+2121 # ℡ -> 'TEL' U+2122 # ™ -> '[TM]' U+2126 # Ω -> 'Ω', 'ohm', 'O' U+212A # K -> 'K' U+212B # Å -> 'Å' U+212E # ℮ -> 'e' U+2153 # ⅓ -> ' 1/3' U+2154 # ⅔ -> ' 2/3' U+2155 # ⅕ -> ' 1/5' U+2156 # ⅖ -> ' 2/5' U+2157 # ⅗ -> ' 3/5' U+2158 # ⅘ -> ' 4/5' U+2159 # ⅙ -> ' 1/6' U+215A # ⅚ -> ' 5/6' U+215B # ⅛ -> ' 1/8' U+215C # ⅜ -> ' 3/8' U+215D # ⅝ -> ' 5/8' U+215E # ⅞ -> ' 7/8' U+215F # ⅟ -> ' 1/' U+2160 # Ⅰ -> 'I' U+2161 # Ⅱ -> 'II' U+2162 # Ⅲ -> 'III' U+2163 # Ⅳ -> 'IV' U+2164 # Ⅴ -> 'V' U+2165 # Ⅵ -> 'VI' U+2166 # Ⅶ -> 'VII' U+2167 # Ⅷ -> 'VIII' U+2168 # Ⅸ -> 'IX' U+2169 # Ⅹ -> 'X' U+216A # Ⅺ -> 'XI' U+216B # Ⅻ -> 'XII' U+216C # Ⅼ -> 'L' U+216D # Ⅽ -> 'C' U+216E # Ⅾ -> 'D' U+216F # Ⅿ -> 'M' U+2170 # ⅰ -> 'i' U+2171 # ⅱ -> 'ii' U+2172 # ⅲ -> 'iii' U+2173 # ⅳ -> 'iv' U+2174 # ⅴ -> 'v' U+2175 # ⅵ -> 'vi' U+2176 # ⅶ -> 'vii' U+2177 # ⅷ -> 'viii' U+2178 # ⅸ -> 'ix' U+2179 # ⅹ -> 'x' U+217A # ⅺ -> 'xi' U+217B # ⅻ -> 'xii' U+217C # ⅼ -> 'l' U+217D # ⅽ -> 'c' U+217E # ⅾ -> 'd' U+217F # ⅿ -> 'm' U+2190 # ← -> '<-' U+2191 # ↑ -> '^' U+2192 # → -> '->' U+2193 # ↓ -> 'v' U+2194 # ↔ -> '<->' U+21D0 # ⇐ -> '<=' U+21D2 # ⇒ -> '=>' U+21D4 # ⇔ -> '<=>' U+2212 # − -> '–', '-' U+2215 # ∕ -> '/' U+2216 # ∖ -> '\' U+2217 # ∗ -> '*' U+2218 # ∘ -> 'o' U+2219 # ∙ -> '·' U+221E # ∞ -> 'inf' U+2223 # ∣ -> '|' U+2225 # ∥ -> '||' U+2236 # ∶ -> ':' U+223C # ∼ -> '~' U+2260 # ≠ -> '/=' U+2261 # ≡ -> '=' U+2264 # ≤ -> '<=' U+2265 # ≥ -> '>=' U+226A # ≪ -> '<<' U+226B # ≫ -> '>>' U+2295 # ⊕ -> '(+)' U+2296 # ⊖ -> '(-)' U+2297 # ⊗ -> '(x)' U+2298 # ⊘ -> '(/)' U+22A2 # ⊢ -> '|-' U+22A3 # ⊣ -> '-|' U+22A6 # ⊦ -> '|-' U+22A7 # ⊧ -> '|=' U+22A8 # ⊨ -> '|=' U+22A9 # ⊩ -> '||-' U+22C5 # ⋅ -> '·' U+22C6 # ⋆ -> '*' U+22D5 # ⋕ -> '#' U+22D8 # ⋘ -> '<<<' U+22D9 # ⋙ -> '>>>' U+22EF # ⋯ -> '...' U+2329 # 〈 -> '<' U+232A # 〉 -> '>' U+2400 # ␀ -> 'NUL' U+2401 # ␁ -> 'SOH' U+2402 # ␂ -> 'STX' U+2403 # ␃ -> 'ETX' U+2404 # ␄ -> 'EOT' U+2405 # ␅ -> 'ENQ' U+2406 # ␆ -> 'ACK' U+2407 # ␇ -> 'BEL' U+2408 # ␈ -> 'BS' U+2409 # ␉ -> 'HT' U+240A # ␊ -> 'LF' U+240B # ␋ -> 'VT' U+240C # ␌ -> 'FF' U+240D # ␍ -> 'CR' U+240E # ␎ -> 'SO' U+240F # ␏ -> 'SI' U+2410 # ␐ -> 'DLE' U+2411 # ␑ -> 'DC1' U+2412 # ␒ -> 'DC2' U+2413 # ␓ -> 'DC3' U+2414 # ␔ -> 'DC4' U+2415 # ␕ -> 'NAK' U+2416 # ␖ -> 'SYN' U+2417 # ␗ -> 'ETB' U+2418 # ␘ -> 'CAN' U+2419 # ␙ -> 'EM' U+241A # ␚ -> 'SUB' U+241B # ␛ -> 'ESC' U+241C # ␜ -> 'FS' U+241D # ␝ -> 'GS' U+241E # ␞ -> 'RS' U+241F # ␟ -> 'US' U+2420 # ␠ -> 'SP' U+2421 # ␡ -> 'DEL' U+2423 # ␣ -> '_' U+2424 # ␤ -> 'NL' U+2425 # ␥ -> '///' U+2426 # ␦ -> '?' U+2460 # ① -> '(1)', '1' U+2461 # ② -> '(2)', '2' U+2462 # ③ -> '(3)', '3' U+2463 # ④ -> '(4)', '4' U+2464 # ⑤ -> '(5)', '5' U+2465 # ⑥ -> '(6)', '6' U+2466 # ⑦ -> '(7)', '7' U+2467 # ⑧ -> '(8)', '8' U+2468 # ⑨ -> '(9)', '9' U+2469 # ⑩ -> '(10)' U+246A # ⑪ -> '(11)' U+246B # ⑫ -> '(12)' U+246C # ⑬ -> '(13)' U+246D # ⑭ -> '(14)' U+246E # ⑮ -> '(15)' U+246F # ⑯ -> '(16)' U+2470 # ⑰ -> '(17)' U+2471 # ⑱ -> '(18)' U+2472 # ⑲ -> '(19)' U+2473 # ⑳ -> '(20)' U+2474 # ⑴ -> '(1)', '1' U+2475 # ⑵ -> '(2)', '2' U+2476 # ⑶ -> '(3)', '3' U+2477 # ⑷ -> '(4)', '4' U+2478 # ⑸ -> '(5)', '5' U+2479 # ⑹ -> '(6)', '6' U+247A # ⑺ -> '(7)', '7' U+247B # ⑻ -> '(8)', '8' U+247C # ⑼ -> '(9)', '9' U+247D # ⑽ -> '(10)' U+247E # ⑾ -> '(11)' U+247F # ⑿ -> '(12)' U+2480 # ⒀ -> '(13)' U+2481 # ⒁ -> '(14)' U+2482 # ⒂ -> '(15)' U+2483 # ⒃ -> '(16)' U+2484 # ⒄ -> '(17)' U+2485 # ⒅ -> '(18)' U+2486 # ⒆ -> '(19)' U+2487 # ⒇ -> '(20)' U+2488 # ⒈ -> '1.', '1' U+2489 # ⒉ -> '2.', '2' U+248A # ⒊ -> '3.', '3' U+248B # ⒋ -> '4.', '4' U+248C # ⒌ -> '5.', '5' U+248D # ⒍ -> '6.', '6' U+248E # ⒎ -> '7.', '7' U+248F # ⒏ -> '8.', '8' U+2490 # ⒐ -> '9.', '9' U+2491 # ⒑ -> '10.' U+2492 # ⒒ -> '11.' U+2493 # ⒓ -> '12.' U+2494 # ⒔ -> '13.' U+2495 # ⒕ -> '14.' U+2496 # ⒖ -> '15.' U+2497 # ⒗ -> '16.' U+2498 # ⒘ -> '17.' U+2499 # ⒙ -> '18.' U+249A # ⒚ -> '19.' U+249B # ⒛ -> '20.' U+249C # ⒜ -> '(a)', 'a' U+249D # ⒝ -> '(b)', 'b' U+249E # ⒞ -> '(c)', 'c' U+249F # ⒟ -> '(d)', 'd' U+24A0 # ⒠ -> '(e)', 'e' U+24A1 # ⒡ -> '(f)', 'f' U+24A2 # ⒢ -> '(g)', 'g' U+24A3 # ⒣ -> '(h)', 'h' U+24A4 # ⒤ -> '(i)', 'i' U+24A5 # ⒥ -> '(j)', 'j' U+24A6 # ⒦ -> '(k)', 'k' U+24A7 # ⒧ -> '(l)', 'l' U+24A8 # ⒨ -> '(m)', 'm' U+24A9 # ⒩ -> '(n)', 'n' U+24AA # ⒪ -> '(o)', 'o' U+24AB # ⒫ -> '(p)', 'p' U+24AC # ⒬ -> '(q)', 'q' U+24AD # ⒭ -> '(r)', 'r' U+24AE # ⒮ -> '(s)', 's' U+24AF # ⒯ -> '(t)', 't' U+24B0 # ⒰ -> '(u)', 'u' U+24B1 # ⒱ -> '(v)', 'v' U+24B2 # ⒲ -> '(w)', 'w' U+24B3 # ⒳ -> '(x)', 'x' U+24B4 # ⒴ -> '(y)', 'y' U+24B5 # ⒵ -> '(z)', 'z' U+24B6 # Ⓐ -> '(A)', 'A' U+24B7 # Ⓑ -> '(B)', 'B' U+24B8 # Ⓒ -> '(C)', 'C' U+24B9 # Ⓓ -> '(D)', 'D' U+24BA # Ⓔ -> '(E)', 'E' U+24BB # Ⓕ -> '(F)', 'F' U+24BC # Ⓖ -> '(G)', 'G' U+24BD # Ⓗ -> '(H)', 'H' U+24BE # Ⓘ -> '(I)', 'I' U+24BF # Ⓙ -> '(J)', 'J' U+24C0 # Ⓚ -> '(K)', 'K' U+24C1 # Ⓛ -> '(L)', 'L' U+24C2 # Ⓜ -> '(M)', 'M' U+24C3 # Ⓝ -> '(N)', 'N' U+24C4 # Ⓞ -> '(O)', 'O' U+24C5 # Ⓟ -> '(P)', 'P' U+24C6 # Ⓠ -> '(Q)', 'Q' U+24C7 # Ⓡ -> '(R)', 'R' U+24C8 # Ⓢ -> '(S)', 'S' U+24C9 # Ⓣ -> '(T)', 'T' U+24CA # Ⓤ -> '(U)', 'U' U+24CB # Ⓥ -> '(V)', 'V' U+24CC # Ⓦ -> '(W)', 'W' U+24CD # Ⓧ -> '(X)', 'X' U+24CE # Ⓨ -> '(Y)', 'Y' U+24CF # Ⓩ -> '(Z)', 'Z' U+24D0 # ⓐ -> '(a)', 'a' U+24D1 # ⓑ -> '(b)', 'b' U+24D2 # ⓒ -> '(c)', 'c' U+24D3 # ⓓ -> '(d)', 'd' U+24D4 # ⓔ -> '(e)', 'e' U+24D5 # ⓕ -> '(f)', 'f' U+24D6 # ⓖ -> '(g)', 'g' U+24D7 # ⓗ -> '(h)', 'h' U+24D8 # ⓘ -> '(i)', 'i' U+24D9 # ⓙ -> '(j)', 'j' U+24DA # ⓚ -> '(k)', 'k' U+24DB # ⓛ -> '(l)', 'l' U+24DC # ⓜ -> '(m)', 'm' U+24DD # ⓝ -> '(n)', 'n' U+24DE # ⓞ -> '(o)', 'o' U+24DF # ⓟ -> '(p)', 'p' U+24E0 # ⓠ -> '(q)', 'q' U+24E1 # ⓡ -> '(r)', 'r' U+24E2 # ⓢ -> '(s)', 's' U+24E3 # ⓣ -> '(t)', 't' U+24E4 # ⓤ -> '(u)', 'u' U+24E5 # ⓥ -> '(v)', 'v' U+24E6 # ⓦ -> '(w)', 'w' U+24E7 # ⓧ -> '(x)', 'x' U+24E8 # ⓨ -> '(y)', 'y' U+24E9 # ⓩ -> '(z)', 'z' U+24EA # ⓪ -> '(0)', '0' U+2500 # ─ -> '-' U+2501 # ━ -> '=' U+2502 # │ -> '|' U+2503 # ┃ -> '|' U+2504 # ┄ -> '-' U+2505 # ┅ -> '=' U+2506 # ┆ -> '|' U+2507 # ┇ -> '|' U+2508 # ┈ -> '-' U+2509 # ┉ -> '=' U+250A # ┊ -> '|' U+250B # ┋ -> '|' U+250C # ┌ -> '+' U+250D # ┍ -> '+' U+250E # ┎ -> '+' U+250F # ┏ -> '+' U+2510 # ┐ -> '+' U+2511 # ┑ -> '+' U+2512 # ┒ -> '+' U+2513 # ┓ -> '+' U+2514 # └ -> '+' U+2515 # ┕ -> '+' U+2516 # ┖ -> '+' U+2517 # ┗ -> '+' U+2518 # ┘ -> '+' U+2519 # ┙ -> '+' U+251A # ┚ -> '+' U+251B # ┛ -> '+' U+251C # ├ -> '+' U+251D # ┝ -> '+' U+251E # ┞ -> '+' U+251F # ┟ -> '+' U+2520 # ┠ -> '+' U+2521 # ┡ -> '+' U+2522 # ┢ -> '+' U+2523 # ┣ -> '+' U+2524 # ┤ -> '+' U+2525 # ┥ -> '+' U+2526 # ┦ -> '+' U+2527 # ┧ -> '+' U+2528 # ┨ -> '+' U+2529 # ┩ -> '+' U+252A # ┪ -> '+' U+252B # ┫ -> '+' U+252C # ┬ -> '+' U+252D # ┭ -> '+' U+252E # ┮ -> '+' U+252F # ┯ -> '+' U+2530 # ┰ -> '+' U+2531 # ┱ -> '+' U+2532 # ┲ -> '+' U+2533 # ┳ -> '+' U+2534 # ┴ -> '+' U+2535 # ┵ -> '+' U+2536 # ┶ -> '+' U+2537 # ┷ -> '+' U+2538 # ┸ -> '+' U+2539 # ┹ -> '+' U+253A # ┺ -> '+' U+253B # ┻ -> '+' U+253C # ┼ -> '+' U+253D # ┽ -> '+' U+253E # ┾ -> '+' U+253F # ┿ -> '+' U+2540 # ╀ -> '+' U+2541 # ╁ -> '+' U+2542 # ╂ -> '+' U+2543 # ╃ -> '+' U+2544 # ╄ -> '+' U+2545 # ╅ -> '+' U+2546 # ╆ -> '+' U+2547 # ╇ -> '+' U+2548 # ╈ -> '+' U+2549 # ╉ -> '+' U+254A # ╊ -> '+' U+254B # ╋ -> '+' U+254C # ╌ -> '-' U+254D # ╍ -> '=' U+254E # ╎ -> '|' U+254F # ╏ -> '|' U+2550 # ═ -> '=' U+2551 # ║ -> '|' U+2552 # ╒ -> '+' U+2553 # ╓ -> '+' U+2554 # ╔ -> '+' U+2555 # ╕ -> '+' U+2556 # ╖ -> '+' U+2557 # ╗ -> '+' U+2558 # ╘ -> '+' U+2559 # ╙ -> '+' U+255A # ╚ -> '+' U+255B # ╛ -> '+' U+255C # ╜ -> '+' U+255D # ╝ -> '+' U+255E # ╞ -> '+' U+255F # ╟ -> '+' U+2560 # ╠ -> '+' U+2561 # ╡ -> '+' U+2562 # ╢ -> '+' U+2563 # ╣ -> '+' U+2564 # ╤ -> '+' U+2565 # ╥ -> '+' U+2566 # ╦ -> '+' U+2567 # ╧ -> '+' U+2568 # ╨ -> '+' U+2569 # ╩ -> '+' U+256A # ╪ -> '+' U+256B # ╫ -> '+' U+256C # ╬ -> '+' U+256D # ╭ -> '+' U+256E # ╮ -> '+' U+256F # ╯ -> '+' U+2570 # ╰ -> '+' U+2571 # ╱ -> '/' U+2572 # ╲ -> '\' U+2573 # ╳ -> 'X' U+257C # ╼ -> '-' U+257D # ╽ -> '|' U+257E # ╾ -> '-' U+257F # ╿ -> '|' U+25CB # ○ -> 'o' U+25E6 # ◦ -> 'o' U+2605 # ★ -> '*' U+2606 # ☆ -> '*' U+2612 # ☒ -> 'X' U+2613 # ☓ -> 'X' U+2639 # ☹ -> ':-(' U+263A # ☺ -> ':-)' U+263B # ☻ -> '(-:' U+266D # ♭ -> 'b' U+266F # ♯ -> '#' U+2701 # ✁ -> '%<' U+2702 # ✂ -> '%<' U+2703 # ✃ -> '%<' U+2704 # ✄ -> '%<' U+270C # ✌ -> 'V' U+2713 # ✓ -> '√' U+2714 # ✔ -> '√' U+2715 # ✕ -> 'x' U+2716 # ✖ -> 'x' U+2717 # ✗ -> 'X' U+2718 # ✘ -> 'X' U+2719 # ✙ -> '+' U+271A # ✚ -> '+' U+271B # ✛ -> '+' U+271C # ✜ -> '+' U+271D # ✝ -> '+' U+271E # ✞ -> '+' U+271F # ✟ -> '+' U+2720 # ✠ -> '+' U+2721 # ✡ -> '*' U+2722 # ✢ -> '+' U+2723 # ✣ -> '+' U+2724 # ✤ -> '+' U+2725 # ✥ -> '+' U+2726 # ✦ -> '+' U+2727 # ✧ -> '+' U+2729 # ✩ -> '*' U+272A # ✪ -> '*' U+272B # ✫ -> '*' U+272C # ✬ -> '*' U+272D # ✭ -> '*' U+272E # ✮ -> '*' U+272F # ✯ -> '*' U+2730 # ✰ -> '*' U+2731 # ✱ -> '*' U+2732 # ✲ -> '*' U+2733 # ✳ -> '*' U+2734 # ✴ -> '*' U+2735 # ✵ -> '*' U+2736 # ✶ -> '*' U+2737 # ✷ -> '*' U+2738 # ✸ -> '*' U+2739 # ✹ -> '*' U+273A # ✺ -> '*' U+273B # ✻ -> '*' U+273C # ✼ -> '*' U+273D # ✽ -> '*' U+273E # ✾ -> '*' U+273F # ✿ -> '*' U+2740 # ❀ -> '*' U+2741 # ❁ -> '*' U+2742 # ❂ -> '*' U+2743 # ❃ -> '*' U+2744 # ❄ -> '*' U+2745 # ❅ -> '*' U+2746 # ❆ -> '*' U+2747 # ❇ -> '*' U+2748 # ❈ -> '*' U+2749 # ❉ -> '*' U+274A # ❊ -> '*' U+274B # ❋ -> '*' U+FB00 # ff -> 'ff' U+FB01 # fi -> 'fi' U+FB02 # fl -> 'fl' U+FB03 # ffi -> 'ffi' U+FB04 # ffl -> 'ffl' U+FB05 # ſt -> 'ſt', 'st' U+FB06 # st -> 'st' U+FEFF #  -> U+FFFD # � -> '?' ./doc/notinstalled/transtab/README0000644000175000017500000000675107532460062017015 0ustar henrichhenrich Unicode to 8-bit charset transliteration table ---------------------------------------------- Markus Kuhn -- 2000-10-09 This package contains a table for transliterating ISO 10646 texts into best-effort representations using smaller coded character sets (ASCII, ISO 8859, etc.). It is primarily intended for inclusion into the GNU C library, but might be of use for other applications as well. The table is freely available to anyone. Files: transtab This is the table in the format suggested in ISO/IEC TR 14652 transtab.utf Same as transtab, but with added comments that show the strings encoded in UTF-8. This is the file that should be edited to make changes. The makefile will build the others from this one. transtab.repertoire List of characters covered by transtab suitable for feeding into uniset. Also contains the UTF-8 strings as comments. transtab.missing-MES-2 List of characters in CEN MES-2 minus those in transtab.repertoire. Intended to help getting an overview of what is and what is not covered. Transtab does not aim to cover MES-2 completely. It aims to provide transliterations only for those characters where they are feasible. transcomp Perl script to reformat and merge transliteration tables The transliteration table contains a list of substitution strings for each member of the covered Unicode subset. Applications are expected to use this list as follows: - Remove all substitution strings that contain Unicode characters that are not available in the destination character set. - Remove all substitution strings that are longer (or shorter) than required by the application (in particular, some applications might need substitution strings that are exactly one character long). - Of the remaining substitution strings, pick the first one in the list. - If no substitution string remains for a Unicode character, use a default character such as for instance "?". Applications are not required or supposed to recursively substitute Unicode characters found in substitution strings. The substitution strings make no use of combining characters, that is the output will be ISO 10646 Level 1. The input strings should preferably be normalized into decomposed form first. The substitution strings in this table aim to be visually or semantically equivalent to the characters they replace. Ideally, they should correspond to the fallback notation that people naturally use in email or on typewriters to substitute unavailable characters. They are not intended as unique mnemonics for characters (such as for example those in RFC 1345). If you use transliteration in C library locales, please make sure that the X/Open function wcwidth() and wcswidth() accurately predict how many character cell position the cursor will advance, even when transliteration is used. This is essential to allow applications to perform correct terminal screen layout even when multi-character transliterations are used. The latest version of this package is available from http://www.cl.cam.ac.uk/~mgk25/download/transtab.tar.gz Please send comments and patches (preferably diff -u on transtab.utf) to Markus.Kuhn@cl.cam.ac.uk Acknowledgements: Some parts of this table were inspired and recycled from the def7_uni.tbl file in lynx-2.8.4. Enjoy ... Markus -- Markus G. Kuhn, Computer Laboratory, University of Cambridge, UK Email: mkuhn at acm.org, WWW: ./doc/notinstalled/transtab/transtab0000644000175000017500000013021007532460062017662 0ustar henrichhenrich% $Id: $ % APOSTROPHE % GRAVE ACCENT ; % NO-BREAK SPACE % INVERTED EXCLAMATION MARK % CENT SIGN % POUND SIGN "" % YEN SIGN % BROKEN BAR % SECTION SIGN % DIAERESIS % COPYRIGHT SIGN ""; % FEMININE ORDINAL INDICATOR % LEFT-POINTING DOUBLE ANGLE QUOTATION MARK "" % NOT SIGN % SOFT HYPHEN % REGISTERED SIGN "" % MACRON % DEGREE SIGN % PLUS-MINUS SIGN "" % SUPERSCRIPT TWO ""; % SUPERSCRIPT THREE ""; % ACUTE ACCENT % MICRO SIGN ; % PILCROW SIGN % MIDDLE DOT % CEDILLA % SUPERSCRIPT ONE ""; % MASCULINE ORDINAL INDICATOR % RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK "" % VULGAR FRACTION ONE QUARTER "" % VULGAR FRACTION ONE HALF "" % VULGAR FRACTION THREE QUARTERS "" % INVERTED QUESTION MARK % LATIN CAPITAL LETTER A WITH GRAVE % LATIN CAPITAL LETTER A WITH ACUTE % LATIN CAPITAL LETTER A WITH CIRCUMFLEX % LATIN CAPITAL LETTER A WITH TILDE % LATIN CAPITAL LETTER A WITH DIAERESIS ""; % LATIN CAPITAL LETTER A WITH RING ABOVE ""; % LATIN CAPITAL LETTER AE ""; % LATIN CAPITAL LETTER C WITH CEDILLA % LATIN CAPITAL LETTER E WITH GRAVE % LATIN CAPITAL LETTER E WITH ACUTE % LATIN CAPITAL LETTER E WITH CIRCUMFLEX % LATIN CAPITAL LETTER E WITH DIAERESIS % LATIN CAPITAL LETTER I WITH GRAVE % LATIN CAPITAL LETTER I WITH ACUTE % LATIN CAPITAL LETTER I WITH CIRCUMFLEX % LATIN CAPITAL LETTER I WITH DIAERESIS % LATIN CAPITAL LETTER ETH % LATIN CAPITAL LETTER N WITH TILDE % LATIN CAPITAL LETTER O WITH GRAVE % LATIN CAPITAL LETTER O WITH ACUTE % LATIN CAPITAL LETTER O WITH CIRCUMFLEX % LATIN CAPITAL LETTER O WITH TILDE % LATIN CAPITAL LETTER O WITH DIAERESIS ""; % MULTIPLICATION SIGN % LATIN CAPITAL LETTER O WITH STROKE % LATIN CAPITAL LETTER U WITH GRAVE % LATIN CAPITAL LETTER U WITH ACUTE % LATIN CAPITAL LETTER U WITH CIRCUMFLEX % LATIN CAPITAL LETTER U WITH DIAERESIS ""; % LATIN CAPITAL LETTER Y WITH ACUTE % LATIN CAPITAL LETTER THORN "" % LATIN SMALL LETTER SHARP S ""; % LATIN SMALL LETTER A WITH GRAVE % LATIN SMALL LETTER A WITH ACUTE % LATIN SMALL LETTER A WITH CIRCUMFLEX % LATIN SMALL LETTER A WITH TILDE % LATIN SMALL LETTER A WITH DIAERESIS ""; % LATIN SMALL LETTER A WITH RING ABOVE ""; % LATIN SMALL LETTER AE ""; % LATIN SMALL LETTER C WITH CEDILLA % LATIN SMALL LETTER E WITH GRAVE % LATIN SMALL LETTER E WITH ACUTE % LATIN SMALL LETTER E WITH CIRCUMFLEX % LATIN SMALL LETTER E WITH DIAERESIS % LATIN SMALL LETTER I WITH GRAVE % LATIN SMALL LETTER I WITH ACUTE % LATIN SMALL LETTER I WITH CIRCUMFLEX % LATIN SMALL LETTER I WITH DIAERESIS % LATIN SMALL LETTER ETH % LATIN SMALL LETTER N WITH TILDE % LATIN SMALL LETTER O WITH GRAVE % LATIN SMALL LETTER O WITH ACUTE % LATIN SMALL LETTER O WITH CIRCUMFLEX % LATIN SMALL LETTER O WITH TILDE % LATIN SMALL LETTER O WITH DIAERESIS ""; % DIVISION SIGN % LATIN SMALL LETTER O WITH STROKE % LATIN SMALL LETTER U WITH GRAVE % LATIN SMALL LETTER U WITH ACUTE % LATIN SMALL LETTER U WITH CIRCUMFLEX % LATIN SMALL LETTER U WITH DIAERESIS ""; % LATIN SMALL LETTER Y WITH ACUTE % LATIN SMALL LETTER THORN "" % LATIN SMALL LETTER Y WITH DIAERESIS % LATIN CAPITAL LETTER A WITH MACRON % LATIN SMALL LETTER A WITH MACRON % LATIN CAPITAL LETTER A WITH BREVE % LATIN SMALL LETTER A WITH BREVE % LATIN CAPITAL LETTER A WITH OGONEK % LATIN SMALL LETTER A WITH OGONEK % LATIN CAPITAL LETTER C WITH ACUTE % LATIN SMALL LETTER C WITH ACUTE % LATIN CAPITAL LETTER C WITH CIRCUMFLEX ""; % LATIN SMALL LETTER C WITH CIRCUMFLEX ""; % LATIN CAPITAL LETTER C WITH DOT ABOVE % LATIN SMALL LETTER C WITH DOT ABOVE % LATIN CAPITAL LETTER C WITH CARON % LATIN SMALL LETTER C WITH CARON % LATIN CAPITAL LETTER D WITH CARON % LATIN SMALL LETTER D WITH CARON % LATIN CAPITAL LETTER D WITH STROKE % LATIN SMALL LETTER D WITH STROKE % LATIN CAPITAL LETTER E WITH MACRON % LATIN SMALL LETTER E WITH MACRON % LATIN CAPITAL LETTER E WITH BREVE % LATIN SMALL LETTER E WITH BREVE % LATIN CAPITAL LETTER E WITH DOT ABOVE % LATIN SMALL LETTER E WITH DOT ABOVE % LATIN CAPITAL LETTER E WITH OGONEK % LATIN SMALL LETTER E WITH OGONEK % LATIN CAPITAL LETTER E WITH CARON % LATIN SMALL LETTER E WITH CARON % LATIN CAPITAL LETTER G WITH CIRCUMFLEX ""; % LATIN SMALL LETTER G WITH CIRCUMFLEX ""; % LATIN CAPITAL LETTER G WITH BREVE % LATIN SMALL LETTER G WITH BREVE % LATIN CAPITAL LETTER G WITH DOT ABOVE % LATIN SMALL LETTER G WITH DOT ABOVE % LATIN CAPITAL LETTER G WITH CEDILLA % LATIN SMALL LETTER G WITH CEDILLA % LATIN CAPITAL LETTER H WITH CIRCUMFLEX ""; % LATIN SMALL LETTER H WITH CIRCUMFLEX ""; % LATIN CAPITAL LETTER H WITH STROKE % LATIN SMALL LETTER H WITH STROKE % LATIN CAPITAL LETTER I WITH TILDE % LATIN SMALL LETTER I WITH TILDE % LATIN CAPITAL LETTER I WITH MACRON % LATIN SMALL LETTER I WITH MACRON % LATIN CAPITAL LETTER I WITH BREVE % LATIN SMALL LETTER I WITH BREVE % LATIN CAPITAL LETTER I WITH OGONEK % LATIN SMALL LETTER I WITH OGONEK % LATIN CAPITAL LETTER I WITH DOT ABOVE % LATIN SMALL LETTER DOTLESS I % LATIN CAPITAL LIGATURE IJ "" % LATIN SMALL LIGATURE IJ "" % LATIN CAPITAL LETTER J WITH CIRCUMFLEX ""; % LATIN SMALL LETTER J WITH CIRCUMFLEX ""; % LATIN CAPITAL LETTER K WITH CEDILLA % LATIN SMALL LETTER K WITH CEDILLA % LATIN SMALL LETTER KRA % LATIN CAPITAL LETTER L WITH ACUTE % LATIN SMALL LETTER L WITH ACUTE % LATIN CAPITAL LETTER L WITH CEDILLA % LATIN SMALL LETTER L WITH CEDILLA % LATIN CAPITAL LETTER L WITH CARON % LATIN SMALL LETTER L WITH CARON % LATIN CAPITAL LETTER L WITH MIDDLE DOT "";""; % LATIN SMALL LETTER L WITH MIDDLE DOT "";""; % LATIN CAPITAL LETTER L WITH STROKE % LATIN SMALL LETTER L WITH STROKE % LATIN CAPITAL LETTER N WITH ACUTE % LATIN SMALL LETTER N WITH ACUTE % LATIN CAPITAL LETTER N WITH CEDILLA % LATIN SMALL LETTER N WITH CEDILLA % LATIN CAPITAL LETTER N WITH CARON % LATIN SMALL LETTER N WITH CARON % LATIN SMALL LETTER N PRECEDED BY APOSTROPHE "" % LATIN CAPITAL LETTER ENG ""; % LATIN SMALL LETTER ENG ""; % LATIN CAPITAL LETTER O WITH MACRON % LATIN SMALL LETTER O WITH MACRON % LATIN CAPITAL LETTER O WITH BREVE % LATIN SMALL LETTER O WITH BREVE % LATIN CAPITAL LETTER O WITH DOUBLE ACUTE % LATIN SMALL LETTER O WITH DOUBLE ACUTE % LATIN CAPITAL LIGATURE OE "" % LATIN SMALL LIGATURE OE "" % LATIN CAPITAL LETTER R WITH ACUTE % LATIN SMALL LETTER R WITH ACUTE % LATIN CAPITAL LETTER R WITH CEDILLA % LATIN SMALL LETTER R WITH CEDILLA % LATIN CAPITAL LETTER R WITH CARON % LATIN SMALL LETTER R WITH CARON % LATIN CAPITAL LETTER S WITH ACUTE % LATIN SMALL LETTER S WITH ACUTE % LATIN CAPITAL LETTER S WITH CIRCUMFLEX ""; % LATIN SMALL LETTER S WITH CIRCUMFLEX ""; % LATIN CAPITAL LETTER S WITH CEDILLA % LATIN SMALL LETTER S WITH CEDILLA % LATIN CAPITAL LETTER S WITH CARON % LATIN SMALL LETTER S WITH CARON % LATIN CAPITAL LETTER T WITH CEDILLA % LATIN SMALL LETTER T WITH CEDILLA % LATIN CAPITAL LETTER T WITH CARON % LATIN SMALL LETTER T WITH CARON % LATIN CAPITAL LETTER T WITH STROKE % LATIN SMALL LETTER T WITH STROKE % LATIN CAPITAL LETTER U WITH TILDE % LATIN SMALL LETTER U WITH TILDE % LATIN CAPITAL LETTER U WITH MACRON % LATIN SMALL LETTER U WITH MACRON % LATIN CAPITAL LETTER U WITH BREVE % LATIN SMALL LETTER U WITH BREVE % LATIN CAPITAL LETTER U WITH RING ABOVE % LATIN SMALL LETTER U WITH RING ABOVE % LATIN CAPITAL LETTER U WITH DOUBLE ACUTE % LATIN SMALL LETTER U WITH DOUBLE ACUTE % LATIN CAPITAL LETTER U WITH OGONEK % LATIN SMALL LETTER U WITH OGONEK % LATIN CAPITAL LETTER W WITH CIRCUMFLEX % LATIN SMALL LETTER W WITH CIRCUMFLEX % LATIN CAPITAL LETTER Y WITH CIRCUMFLEX % LATIN SMALL LETTER Y WITH CIRCUMFLEX % LATIN CAPITAL LETTER Y WITH DIAERESIS % LATIN CAPITAL LETTER Z WITH ACUTE % LATIN SMALL LETTER Z WITH ACUTE % LATIN CAPITAL LETTER Z WITH DOT ABOVE % LATIN SMALL LETTER Z WITH DOT ABOVE % LATIN CAPITAL LETTER Z WITH CARON % LATIN SMALL LETTER Z WITH CARON % LATIN SMALL LETTER LONG S % LATIN SMALL LETTER F WITH HOOK % LATIN CAPITAL LETTER S WITH COMMA BELOW ; % LATIN SMALL LETTER S WITH COMMA BELOW ; % LATIN CAPITAL LETTER T WITH COMMA BELOW ; % LATIN SMALL LETTER T WITH COMMA BELOW ; % MODIFIER LETTER PRIME ; % MODIFIER LETTER TURNED COMMA % MODIFIER LETTER APOSTROPHE ; % MODIFIER LETTER REVERSED COMMA % MODIFIER LETTER CIRCUMFLEX ACCENT % MODIFIER LETTER VERTICAL LINE % MODIFIER LETTER MACRON % MODIFIER LETTER LOW VERTICAL LINE % MODIFIER LETTER TRIANGULAR COLON % RING ABOVE % SMALL TILDE % DOUBLE ACUTE ACCENT % GREEK NUMERAL SIGN % GREEK LOWER NUMERAL SIGN % GREEK QUESTION MARK % LATIN CAPITAL LETTER B WITH DOT ABOVE % LATIN SMALL LETTER B WITH DOT ABOVE % LATIN CAPITAL LETTER D WITH DOT ABOVE % LATIN SMALL LETTER D WITH DOT ABOVE % LATIN CAPITAL LETTER F WITH DOT ABOVE % LATIN SMALL LETTER F WITH DOT ABOVE % LATIN CAPITAL LETTER M WITH DOT ABOVE % LATIN SMALL LETTER M WITH DOT ABOVE % LATIN CAPITAL LETTER P WITH DOT ABOVE % LATIN SMALL LETTER P WITH DOT ABOVE % LATIN CAPITAL LETTER S WITH DOT ABOVE % LATIN SMALL LETTER S WITH DOT ABOVE % LATIN CAPITAL LETTER T WITH DOT ABOVE % LATIN SMALL LETTER T WITH DOT ABOVE % LATIN CAPITAL LETTER W WITH GRAVE % LATIN SMALL LETTER W WITH GRAVE % LATIN CAPITAL LETTER W WITH ACUTE % LATIN SMALL LETTER W WITH ACUTE % LATIN CAPITAL LETTER W WITH DIAERESIS % LATIN SMALL LETTER W WITH DIAERESIS % LATIN CAPITAL LETTER Y WITH GRAVE % LATIN SMALL LETTER Y WITH GRAVE % EN QUAD % EM QUAD "" % EN SPACE % EM SPACE "" % THREE-PER-EM SPACE % FOUR-PER-EM SPACE % SIX-PER-EM SPACE % FIGURE SPACE % PUNCTUATION SPACE % THIN SPACE % HAIR SPACE "" % ZERO WIDTH SPACE "" % ZERO WIDTH NON-JOINER "" % ZERO WIDTH JOINER "" % LEFT-TO-RIGHT MARK "" % RIGHT-TO-LEFT MARK "" % HYPHEN % NON-BREAKING HYPHEN % FIGURE DASH % EN DASH % EM DASH "" % HORIZONTAL BAR "" % DOUBLE VERTICAL LINE "" % DOUBLE LOW LINE % LEFT SINGLE QUOTATION MARK % RIGHT SINGLE QUOTATION MARK % SINGLE LOW-9 QUOTATION MARK % SINGLE HIGH-REVERSED-9 QUOTATION MARK % LEFT DOUBLE QUOTATION MARK % RIGHT DOUBLE QUOTATION MARK % DOUBLE LOW-9 QUOTATION MARK % DOUBLE HIGH-REVERSED-9 QUOTATION MARK % DAGGER % DOUBLE DAGGER "" % BULLET % TRIANGULAR BULLET % ONE DOT LEADER % TWO DOT LEADER "" % HORIZONTAL ELLIPSIS "" % HYPHENATION POINT % LEFT-TO-RIGHT EMBEDDING "" % RIGHT-TO-LEFT EMBEDDING "" % POP DIRECTIONAL FORMATTING "" % LEFT-TO-RIGHT OVERRIDE "" % RIGHT-TO-LEFT OVERRIDE "" % NARROW NO-BREAK SPACE % PER MILLE SIGN "" % PRIME % DOUBLE PRIME % TRIPLE PRIME "" % REVERSED PRIME % REVERSED DOUBLE PRIME "" % REVERSED TRIPLE PRIME "" % SINGLE LEFT-POINTING ANGLE QUOTATION MARK % SINGLE RIGHT-POINTING ANGLE QUOTATION MARK % DOUBLE EXCLAMATION MARK "" % OVERLINE % HYPHEN BULLET % FRACTION SLASH % QUESTION EXCLAMATION MARK "" % EXCLAMATION QUESTION MARK "" % TIRONIAN SIGN ET % SUPERSCRIPT ZERO ""; % SUPERSCRIPT FOUR ""; % SUPERSCRIPT FIVE ""; % SUPERSCRIPT SIX ""; % SUPERSCRIPT SEVEN ""; % SUPERSCRIPT EIGHT ""; % SUPERSCRIPT NINE ""; % SUPERSCRIPT PLUS SIGN ""; % SUPERSCRIPT MINUS ""; % SUPERSCRIPT EQUALS SIGN ""; % SUPERSCRIPT LEFT PARENTHESIS ""; % SUPERSCRIPT RIGHT PARENTHESIS ""; % SUPERSCRIPT LATIN SMALL LETTER N ""; % SUBSCRIPT ZERO ""; % SUBSCRIPT ONE ""; % SUBSCRIPT TWO ""; % SUBSCRIPT THREE ""; % SUBSCRIPT FOUR ""; % SUBSCRIPT FIVE ""; % SUBSCRIPT SIX ""; % SUBSCRIPT SEVEN ""; % SUBSCRIPT EIGHT ""; % SUBSCRIPT NINE ""; % SUBSCRIPT PLUS SIGN ""; % SUBSCRIPT MINUS ""; % SUBSCRIPT EQUALS SIGN ""; % SUBSCRIPT LEFT PARENTHESIS ""; % SUBSCRIPT RIGHT PARENTHESIS ""; % EURO SIGN ""; % ACCOUNT OF "" % ADDRESSED TO THE SUBJECT "" % DEGREE CELSIUS ""; % CARE OF "" % CADA UNA "" % DEGREE FAHRENHEIT ""; % SCRIPT SMALL L % NUMERO SIGN "";"" % SOUND RECORDING COPYRIGHT "" % SERVICE MARK "" % TELEPHONE SIGN "" % TRADE MARK SIGN "" % OHM SIGN ;""; % KELVIN SIGN % ANGSTROM SIGN % ESTIMATED SYMBOL % VULGAR FRACTION ONE THIRD "" % VULGAR FRACTION TWO THIRDS "" % VULGAR FRACTION ONE FIFTH "" % VULGAR FRACTION TWO FIFTHS "" % VULGAR FRACTION THREE FIFTHS "" % VULGAR FRACTION FOUR FIFTHS "" % VULGAR FRACTION ONE SIXTH "" % VULGAR FRACTION FIVE SIXTHS "" % VULGAR FRACTION ONE EIGHTH "" % VULGAR FRACTION THREE EIGHTHS "" % VULGAR FRACTION FIVE EIGHTHS "" % VULGAR FRACTION SEVEN EIGHTHS "" % FRACTION NUMERATOR ONE "" % ROMAN NUMERAL ONE % ROMAN NUMERAL TWO "" % ROMAN NUMERAL THREE "" % ROMAN NUMERAL FOUR "" % ROMAN NUMERAL FIVE % ROMAN NUMERAL SIX "" % ROMAN NUMERAL SEVEN "" % ROMAN NUMERAL EIGHT "" % ROMAN NUMERAL NINE "" % ROMAN NUMERAL TEN % ROMAN NUMERAL ELEVEN "" % ROMAN NUMERAL TWELVE "" % ROMAN NUMERAL FIFTY % ROMAN NUMERAL ONE HUNDRED % ROMAN NUMERAL FIVE HUNDRED % ROMAN NUMERAL ONE THOUSAND % SMALL ROMAN NUMERAL ONE % SMALL ROMAN NUMERAL TWO "" % SMALL ROMAN NUMERAL THREE "" % SMALL ROMAN NUMERAL FOUR "" % SMALL ROMAN NUMERAL FIVE % SMALL ROMAN NUMERAL SIX "" % SMALL ROMAN NUMERAL SEVEN "" % SMALL ROMAN NUMERAL EIGHT "" % SMALL ROMAN NUMERAL NINE "" % SMALL ROMAN NUMERAL TEN % SMALL ROMAN NUMERAL ELEVEN "" % SMALL ROMAN NUMERAL TWELVE "" % SMALL ROMAN NUMERAL FIFTY % SMALL ROMAN NUMERAL ONE HUNDRED % SMALL ROMAN NUMERAL FIVE HUNDRED % SMALL ROMAN NUMERAL ONE THOUSAND % LEFTWARDS ARROW "" % UPWARDS ARROW % RIGHTWARDS ARROW "" % DOWNWARDS ARROW % LEFT RIGHT ARROW "" % LEFTWARDS DOUBLE ARROW "" % RIGHTWARDS DOUBLE ARROW "" % LEFT RIGHT DOUBLE ARROW "" % MINUS SIGN ; % DIVISION SLASH % SET MINUS % ASTERISK OPERATOR % RING OPERATOR % BULLET OPERATOR % INFINITY "" % DIVIDES % PARALLEL TO "" % RATIO % TILDE OPERATOR % NOT EQUAL TO "" % IDENTICAL TO % LESS-THAN OR EQUAL TO "" % GREATER-THAN OR EQUAL TO "" % MUCH LESS-THAN "" % MUCH GREATER-THAN "" % CIRCLED PLUS "" % CIRCLED MINUS "" % CIRCLED TIMES "" % CIRCLED DIVISION SLASH "" % RIGHT TACK "" % LEFT TACK "" % ASSERTION "" % MODELS "" % TRUE "" % FORCES "" % DOT OPERATOR % STAR OPERATOR % EQUAL AND PARALLEL TO % VERY MUCH LESS-THAN "" % VERY MUCH GREATER-THAN "" % MIDLINE HORIZONTAL ELLIPSIS "" % LEFT-POINTING ANGLE BRACKET % RIGHT-POINTING ANGLE BRACKET % SYMBOL FOR NULL "" % SYMBOL FOR START OF HEADING "" % SYMBOL FOR START OF TEXT "" % SYMBOL FOR END OF TEXT "" % SYMBOL FOR END OF TRANSMISSION "" % SYMBOL FOR ENQUIRY "" % SYMBOL FOR ACKNOWLEDGE "" % SYMBOL FOR BELL "" % SYMBOL FOR BACKSPACE "" % SYMBOL FOR HORIZONTAL TABULATION "" % SYMBOL FOR LINE FEED "" % SYMBOL FOR VERTICAL TABULATION "" % SYMBOL FOR FORM FEED "" % SYMBOL FOR CARRIAGE RETURN "" % SYMBOL FOR SHIFT OUT "" % SYMBOL FOR SHIFT IN "" % SYMBOL FOR DATA LINK ESCAPE "" % SYMBOL FOR DEVICE CONTROL ONE "" % SYMBOL FOR DEVICE CONTROL TWO "" % SYMBOL FOR DEVICE CONTROL THREE "" % SYMBOL FOR DEVICE CONTROL FOUR "" % SYMBOL FOR NEGATIVE ACKNOWLEDGE "" % SYMBOL FOR SYNCHRONOUS IDLE "" % SYMBOL FOR END OF TRANSMISSION BLOCK "" % SYMBOL FOR CANCEL "" % SYMBOL FOR END OF MEDIUM "" % SYMBOL FOR SUBSTITUTE "" % SYMBOL FOR ESCAPE "" % SYMBOL FOR FILE SEPARATOR "" % SYMBOL FOR GROUP SEPARATOR "" % SYMBOL FOR RECORD SEPARATOR "" % SYMBOL FOR UNIT SEPARATOR "" % SYMBOL FOR SPACE "" % SYMBOL FOR DELETE "" % OPEN BOX % SYMBOL FOR NEWLINE "" % SYMBOL FOR DELETE FORM TWO "" % SYMBOL FOR SUBSTITUTE FORM TWO % CIRCLED DIGIT ONE ""; % CIRCLED DIGIT TWO ""; % CIRCLED DIGIT THREE ""; % CIRCLED DIGIT FOUR ""; % CIRCLED DIGIT FIVE ""; % CIRCLED DIGIT SIX ""; % CIRCLED DIGIT SEVEN ""; % CIRCLED DIGIT EIGHT ""; % CIRCLED DIGIT NINE ""; % CIRCLED NUMBER TEN "" % CIRCLED NUMBER ELEVEN "" % CIRCLED NUMBER TWELVE "" % CIRCLED NUMBER THIRTEEN "" % CIRCLED NUMBER FOURTEEN "" % CIRCLED NUMBER FIFTEEN "" % CIRCLED NUMBER SIXTEEN "" % CIRCLED NUMBER SEVENTEEN "" % CIRCLED NUMBER EIGHTEEN "" % CIRCLED NUMBER NINETEEN "" % CIRCLED NUMBER TWENTY "" % PARENTHESIZED DIGIT ONE ""; % PARENTHESIZED DIGIT TWO ""; % PARENTHESIZED DIGIT THREE ""; % PARENTHESIZED DIGIT FOUR ""; % PARENTHESIZED DIGIT FIVE ""; % PARENTHESIZED DIGIT SIX ""; % PARENTHESIZED DIGIT SEVEN ""; % PARENTHESIZED DIGIT EIGHT ""; % PARENTHESIZED DIGIT NINE ""; % PARENTHESIZED NUMBER TEN "" % PARENTHESIZED NUMBER ELEVEN "" % PARENTHESIZED NUMBER TWELVE "" % PARENTHESIZED NUMBER THIRTEEN "" % PARENTHESIZED NUMBER FOURTEEN "" % PARENTHESIZED NUMBER FIFTEEN "" % PARENTHESIZED NUMBER SIXTEEN "" % PARENTHESIZED NUMBER SEVENTEEN "" % PARENTHESIZED NUMBER EIGHTEEN "" % PARENTHESIZED NUMBER NINETEEN "" % PARENTHESIZED NUMBER TWENTY "" % DIGIT ONE FULL STOP ""; % DIGIT TWO FULL STOP ""; % DIGIT THREE FULL STOP ""; % DIGIT FOUR FULL STOP ""; % DIGIT FIVE FULL STOP ""; % DIGIT SIX FULL STOP ""; % DIGIT SEVEN FULL STOP ""; % DIGIT EIGHT FULL STOP ""; % DIGIT NINE FULL STOP ""; % NUMBER TEN FULL STOP "" % NUMBER ELEVEN FULL STOP "" % NUMBER TWELVE FULL STOP "" % NUMBER THIRTEEN FULL STOP "" % NUMBER FOURTEEN FULL STOP "" % NUMBER FIFTEEN FULL STOP "" % NUMBER SIXTEEN FULL STOP "" % NUMBER SEVENTEEN FULL STOP "" % NUMBER EIGHTEEN FULL STOP "" % NUMBER NINETEEN FULL STOP "" % NUMBER TWENTY FULL STOP "" % PARENTHESIZED LATIN SMALL LETTER A ""; % PARENTHESIZED LATIN SMALL LETTER B ""; % PARENTHESIZED LATIN SMALL LETTER C ""; % PARENTHESIZED LATIN SMALL LETTER D ""; % PARENTHESIZED LATIN SMALL LETTER E ""; % PARENTHESIZED LATIN SMALL LETTER F ""; % PARENTHESIZED LATIN SMALL LETTER G ""; % PARENTHESIZED LATIN SMALL LETTER H ""; % PARENTHESIZED LATIN SMALL LETTER I ""; % PARENTHESIZED LATIN SMALL LETTER J ""; % PARENTHESIZED LATIN SMALL LETTER K ""; % PARENTHESIZED LATIN SMALL LETTER L ""; % PARENTHESIZED LATIN SMALL LETTER M ""; % PARENTHESIZED LATIN SMALL LETTER N ""; % PARENTHESIZED LATIN SMALL LETTER O ""; % PARENTHESIZED LATIN SMALL LETTER P ""; % PARENTHESIZED LATIN SMALL LETTER Q ""; % PARENTHESIZED LATIN SMALL LETTER R ""; % PARENTHESIZED LATIN SMALL LETTER S ""; % PARENTHESIZED LATIN SMALL LETTER T ""; % PARENTHESIZED LATIN SMALL LETTER U ""; % PARENTHESIZED LATIN SMALL LETTER V ""; % PARENTHESIZED LATIN SMALL LETTER W ""; % PARENTHESIZED LATIN SMALL LETTER X ""; % PARENTHESIZED LATIN SMALL LETTER Y ""; % PARENTHESIZED LATIN SMALL LETTER Z ""; % CIRCLED LATIN CAPITAL LETTER A ""; % CIRCLED LATIN CAPITAL LETTER B ""; % CIRCLED LATIN CAPITAL LETTER C ""; % CIRCLED LATIN CAPITAL LETTER D ""; % CIRCLED LATIN CAPITAL LETTER E ""; % CIRCLED LATIN CAPITAL LETTER F ""; % CIRCLED LATIN CAPITAL LETTER G ""; % CIRCLED LATIN CAPITAL LETTER H ""; % CIRCLED LATIN CAPITAL LETTER I ""; % CIRCLED LATIN CAPITAL LETTER J ""; % CIRCLED LATIN CAPITAL LETTER K ""; % CIRCLED LATIN CAPITAL LETTER L ""; % CIRCLED LATIN CAPITAL LETTER M ""; % CIRCLED LATIN CAPITAL LETTER N ""; % CIRCLED LATIN CAPITAL LETTER O ""; % CIRCLED LATIN CAPITAL LETTER P ""; % CIRCLED LATIN CAPITAL LETTER Q ""; % CIRCLED LATIN CAPITAL LETTER R ""; % CIRCLED LATIN CAPITAL LETTER S ""; % CIRCLED LATIN CAPITAL LETTER T ""; % CIRCLED LATIN CAPITAL LETTER U ""; % CIRCLED LATIN CAPITAL LETTER V ""; % CIRCLED LATIN CAPITAL LETTER W ""; % CIRCLED LATIN CAPITAL LETTER X ""; % CIRCLED LATIN CAPITAL LETTER Y ""; % CIRCLED LATIN CAPITAL LETTER Z ""; % CIRCLED LATIN SMALL LETTER A ""; % CIRCLED LATIN SMALL LETTER B ""; % CIRCLED LATIN SMALL LETTER C ""; % CIRCLED LATIN SMALL LETTER D ""; % CIRCLED LATIN SMALL LETTER E ""; % CIRCLED LATIN SMALL LETTER F ""; % CIRCLED LATIN SMALL LETTER G ""; % CIRCLED LATIN SMALL LETTER H ""; % CIRCLED LATIN SMALL LETTER I ""; % CIRCLED LATIN SMALL LETTER J ""; % CIRCLED LATIN SMALL LETTER K ""; % CIRCLED LATIN SMALL LETTER L ""; % CIRCLED LATIN SMALL LETTER M ""; % CIRCLED LATIN SMALL LETTER N ""; % CIRCLED LATIN SMALL LETTER O ""; % CIRCLED LATIN SMALL LETTER P ""; % CIRCLED LATIN SMALL LETTER Q ""; % CIRCLED LATIN SMALL LETTER R ""; % CIRCLED LATIN SMALL LETTER S ""; % CIRCLED LATIN SMALL LETTER T ""; % CIRCLED LATIN SMALL LETTER U ""; % CIRCLED LATIN SMALL LETTER V ""; % CIRCLED LATIN SMALL LETTER W ""; % CIRCLED LATIN SMALL LETTER X ""; % CIRCLED LATIN SMALL LETTER Y ""; % CIRCLED LATIN SMALL LETTER Z ""; % CIRCLED DIGIT ZERO ""; % BOX DRAWINGS LIGHT HORIZONTAL % BOX DRAWINGS HEAVY HORIZONTAL % BOX DRAWINGS LIGHT VERTICAL % BOX DRAWINGS HEAVY VERTICAL % BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL % BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL % BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL % BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL % BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL % BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL % BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL % BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL % BOX DRAWINGS LIGHT DOWN AND RIGHT % BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY % BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT % BOX DRAWINGS HEAVY DOWN AND RIGHT % BOX DRAWINGS LIGHT DOWN AND LEFT % BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY % BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT % BOX DRAWINGS HEAVY DOWN AND LEFT % BOX DRAWINGS LIGHT UP AND RIGHT % BOX DRAWINGS UP LIGHT AND RIGHT HEAVY % BOX DRAWINGS UP HEAVY AND RIGHT LIGHT % BOX DRAWINGS HEAVY UP AND RIGHT % BOX DRAWINGS LIGHT UP AND LEFT % BOX DRAWINGS UP LIGHT AND LEFT HEAVY % BOX DRAWINGS UP HEAVY AND LEFT LIGHT % BOX DRAWINGS HEAVY UP AND LEFT % BOX DRAWINGS LIGHT VERTICAL AND RIGHT % BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY % BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT % BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT % BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT % BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY % BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY % BOX DRAWINGS HEAVY VERTICAL AND RIGHT % BOX DRAWINGS LIGHT VERTICAL AND LEFT % BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY % BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT % BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT % BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT % BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY % BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY % BOX DRAWINGS HEAVY VERTICAL AND LEFT % BOX DRAWINGS LIGHT DOWN AND HORIZONTAL % BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT % BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT % BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY % BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT % BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY % BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY % BOX DRAWINGS HEAVY DOWN AND HORIZONTAL % BOX DRAWINGS LIGHT UP AND HORIZONTAL % BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT % BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT % BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY % BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT % BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY % BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY % BOX DRAWINGS HEAVY UP AND HORIZONTAL % BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL % BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT % BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT % BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY % BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT % BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT % BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT % BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT % BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT % BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT % BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT % BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY % BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY % BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY % BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY % BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL % BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL % BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL % BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL % BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL % BOX DRAWINGS DOUBLE HORIZONTAL % BOX DRAWINGS DOUBLE VERTICAL % BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE % BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE % BOX DRAWINGS DOUBLE DOWN AND RIGHT % BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE % BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE % BOX DRAWINGS DOUBLE DOWN AND LEFT % BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE % BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE % BOX DRAWINGS DOUBLE UP AND RIGHT % BOX DRAWINGS UP SINGLE AND LEFT DOUBLE % BOX DRAWINGS UP DOUBLE AND LEFT SINGLE % BOX DRAWINGS DOUBLE UP AND LEFT % BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE % BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE % BOX DRAWINGS DOUBLE VERTICAL AND RIGHT % BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE % BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE % BOX DRAWINGS DOUBLE VERTICAL AND LEFT % BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE % BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE % BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL % BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE % BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE % BOX DRAWINGS DOUBLE UP AND HORIZONTAL % BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE % BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE % BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL % BOX DRAWINGS LIGHT ARC DOWN AND RIGHT % BOX DRAWINGS LIGHT ARC DOWN AND LEFT % BOX DRAWINGS LIGHT ARC UP AND LEFT % BOX DRAWINGS LIGHT ARC UP AND RIGHT % BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT % BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT % BOX DRAWINGS LIGHT DIAGONAL CROSS % BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT % BOX DRAWINGS LIGHT UP AND HEAVY DOWN % BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT % BOX DRAWINGS HEAVY UP AND LIGHT DOWN % WHITE CIRCLE % WHITE BULLET % BLACK STAR % WHITE STAR % BALLOT BOX WITH X % SALTIRE % WHITE FROWNING FACE "" % WHITE SMILING FACE "" % BLACK SMILING FACE "" % MUSIC FLAT SIGN % MUSIC SHARP SIGN % UPPER BLADE SCISSORS "" % BLACK SCISSORS "" % LOWER BLADE SCISSORS "" % WHITE SCISSORS "" % VICTORY HAND % CHECK MARK % HEAVY CHECK MARK % MULTIPLICATION X % HEAVY MULTIPLICATION X % BALLOT X % HEAVY BALLOT X % OUTLINED GREEK CROSS % HEAVY GREEK CROSS % OPEN CENTRE CROSS % HEAVY OPEN CENTRE CROSS % LATIN CROSS % SHADOWED WHITE LATIN CROSS % OUTLINED LATIN CROSS % MALTESE CROSS % STAR OF DAVID % FOUR TEARDROP-SPOKED ASTERISK % FOUR BALLOON-SPOKED ASTERISK % HEAVY FOUR BALLOON-SPOKED ASTERISK % FOUR CLUB-SPOKED ASTERISK % BLACK FOUR POINTED STAR % WHITE FOUR POINTED STAR % STRESS OUTLINED WHITE STAR % CIRCLED WHITE STAR % OPEN CENTRE BLACK STAR % BLACK CENTRE WHITE STAR % OUTLINED BLACK STAR % HEAVY OUTLINED BLACK STAR % PINWHEEL STAR % SHADOWED WHITE STAR % HEAVY ASTERISK % OPEN CENTRE ASTERISK % EIGHT SPOKED ASTERISK % EIGHT POINTED BLACK STAR % EIGHT POINTED PINWHEEL STAR % SIX POINTED BLACK STAR % EIGHT POINTED RECTILINEAR BLACK STAR % HEAVY EIGHT POINTED RECTILINEAR BLACK STAR % TWELVE POINTED BLACK STAR % SIXTEEN POINTED ASTERISK % TEARDROP-SPOKED ASTERISK % OPEN CENTRE TEARDROP-SPOKED ASTERISK % HEAVY TEARDROP-SPOKED ASTERISK % SIX PETALLED BLACK AND WHITE FLORETTE % BLACK FLORETTE % WHITE FLORETTE % EIGHT PETALLED OUTLINED BLACK FLORETTE % CIRCLED OPEN CENTRE EIGHT POINTED STAR % HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK % SNOWFLAKE % TIGHT TRIFOLIATE SNOWFLAKE % HEAVY CHEVRON SNOWFLAKE % SPARKLE % HEAVY SPARKLE % BALLOON-SPOKED ASTERISK % EIGHT TEARDROP-SPOKED PROPELLER ASTERISK % HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK % LATIN SMALL LIGATURE FF "" % LATIN SMALL LIGATURE FI "" % LATIN SMALL LIGATURE FL "" % LATIN SMALL LIGATURE FFI "" % LATIN SMALL LIGATURE FFL "" % LATIN SMALL LIGATURE LONG S T "";"" % LATIN SMALL LIGATURE ST "" % ZERO WIDTH NO-BREAK SPACE "" % REPLACEMENT CHARACTER ./doc/notinstalled/transtab/REFERENCES0000644000175000017500000000325107532460062017471 0ustar henrichhenrich Some Literature References on Transliteration and Transcription --------------------------------------------------------------- Markus Kuhn -- 2000-10-12 Arabic ISO 233:1984 Documentation -- Transliteration of Arabic characters into Latin characters ISO 233-2:1993 Information and documentation -- Transliteration of Arabic characters into Latin characters -- Part 2: Arabic language -- Simplified transliteration ISO 233-3:1999 Information and documentation -- Transliteration of Arabic characters into Latin characters -- Part 3: Persian language -- Simplified transliteration (available in English only) Armenian ISO 9985:1996 Information and documentation -- Transliteration of Armenian characters into Latin characters Esperanto L.L. Zamenhof: Fundamento de Esperanto, 1905 http://www.esperanto.net/veb/faq-15.html Georgian ISO 9984:1996 Information and documentation -- Transliteration of Georgian characters into Latin characters Hebrew ISO 259:1984 Documentation -- Transliteration of Hebrew characters into Latin characters ISO 259-2:1994 Information and documentation -- Transliteration of Hebrew characters into Latin characters -- Part 2: Simplified transliteration International Phonetic Alphabet http://www.hpl.hp.com/personal/Evan_Kirshenbaum/IPA/faq.html Korean ISO/TR 11941:1996 Information and documentation -- Transliteration of Korean script into Latin characters Russian ISO 9:1995 Information and documentation -- Transliteration of Cyrillic characters into Latin characters -- Slavic and non-Slavic languages Thai ISO 11940:1998 Information and documentation -- Transliteration of Thai ./doc/notinstalled/transtab/transtab.utf0000644000175000017500000016012207532460062020464 0ustar henrichhenrich% $Id: transtab.utf,v 1.8 2000-10-12 11:01:28+01 mgk25 Exp $ % APOSTROPHE % ' -> '’' % GRAVE ACCENT % ` -> '‛', '‘' ; % NO-BREAK SPACE %   -> ' ' % INVERTED EXCLAMATION MARK % ¡ -> '!' % CENT SIGN % ¢ -> 'c' % POUND SIGN % £ -> 'GBP' "" % YEN SIGN % ¥ -> 'Y' % BROKEN BAR % ¦ -> '|' % SECTION SIGN % § -> 'S' % DIAERESIS % ¨ -> '"' % COPYRIGHT SIGN % © -> '(c)', 'c' ""; % FEMININE ORDINAL INDICATOR % ª -> 'a' % LEFT-POINTING DOUBLE ANGLE QUOTATION MARK % « -> '<<' "" % NOT SIGN % ¬ -> '-' % SOFT HYPHEN % ­ -> '-' % REGISTERED SIGN % ® -> '(R)' "" % MACRON % ¯ -> '-' % DEGREE SIGN % ° -> ' ' % PLUS-MINUS SIGN % ± -> '+/-' "" % SUPERSCRIPT TWO % ² -> '^2', '2' ""; % SUPERSCRIPT THREE % ³ -> '^3', '3' ""; % ACUTE ACCENT % ´ -> ''' % MICRO SIGN % µ -> 'μ', 'u' ; % PILCROW SIGN % ¶ -> 'P' % MIDDLE DOT % · -> '.' % CEDILLA % ¸ -> ',' % SUPERSCRIPT ONE % ¹ -> '^1', '1' ""; % MASCULINE ORDINAL INDICATOR % º -> 'o' % RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK % » -> '>>' "" % VULGAR FRACTION ONE QUARTER % ¼ -> ' 1/4' "" % VULGAR FRACTION ONE HALF % ½ -> ' 1/2' "" % VULGAR FRACTION THREE QUARTERS % ¾ -> ' 3/4' "" % INVERTED QUESTION MARK % ¿ -> '?' % LATIN CAPITAL LETTER A WITH GRAVE % À -> 'A' % LATIN CAPITAL LETTER A WITH ACUTE % Á -> 'A' % LATIN CAPITAL LETTER A WITH CIRCUMFLEX %  -> 'A' % LATIN CAPITAL LETTER A WITH TILDE % à -> 'A' % LATIN CAPITAL LETTER A WITH DIAERESIS % Ä -> 'Ae', 'A' ""; % LATIN CAPITAL LETTER A WITH RING ABOVE % Å -> 'Aa', 'A' ""; % LATIN CAPITAL LETTER AE % Æ -> 'AE', 'A' ""; % LATIN CAPITAL LETTER C WITH CEDILLA % Ç -> 'C' % LATIN CAPITAL LETTER E WITH GRAVE % È -> 'E' % LATIN CAPITAL LETTER E WITH ACUTE % É -> 'E' % LATIN CAPITAL LETTER E WITH CIRCUMFLEX % Ê -> 'E' % LATIN CAPITAL LETTER E WITH DIAERESIS % Ë -> 'E' % LATIN CAPITAL LETTER I WITH GRAVE % Ì -> 'I' % LATIN CAPITAL LETTER I WITH ACUTE % Í -> 'I' % LATIN CAPITAL LETTER I WITH CIRCUMFLEX % Î -> 'I' % LATIN CAPITAL LETTER I WITH DIAERESIS % Ï -> 'I' % LATIN CAPITAL LETTER ETH % Ð -> 'D' % LATIN CAPITAL LETTER N WITH TILDE % Ñ -> 'N' % LATIN CAPITAL LETTER O WITH GRAVE % Ò -> 'O' % LATIN CAPITAL LETTER O WITH ACUTE % Ó -> 'O' % LATIN CAPITAL LETTER O WITH CIRCUMFLEX % Ô -> 'O' % LATIN CAPITAL LETTER O WITH TILDE % Õ -> 'O' % LATIN CAPITAL LETTER O WITH DIAERESIS % Ö -> 'Oe', 'O' ""; % MULTIPLICATION SIGN % × -> 'x' % LATIN CAPITAL LETTER O WITH STROKE % Ø -> 'O' % LATIN CAPITAL LETTER U WITH GRAVE % Ù -> 'U' % LATIN CAPITAL LETTER U WITH ACUTE % Ú -> 'U' % LATIN CAPITAL LETTER U WITH CIRCUMFLEX % Û -> 'U' % LATIN CAPITAL LETTER U WITH DIAERESIS % Ü -> 'Ue', 'U' ""; % LATIN CAPITAL LETTER Y WITH ACUTE % Ý -> 'Y' % LATIN CAPITAL LETTER THORN % Þ -> 'Th' "" % LATIN SMALL LETTER SHARP S % ß -> 'ss', 'β' ""; % LATIN SMALL LETTER A WITH GRAVE % à -> 'a' % LATIN SMALL LETTER A WITH ACUTE % á -> 'a' % LATIN SMALL LETTER A WITH CIRCUMFLEX % â -> 'a' % LATIN SMALL LETTER A WITH TILDE % ã -> 'a' % LATIN SMALL LETTER A WITH DIAERESIS % ä -> 'ae', 'a' ""; % LATIN SMALL LETTER A WITH RING ABOVE % å -> 'aa', 'a' ""; % LATIN SMALL LETTER AE % æ -> 'ae', 'a' ""; % LATIN SMALL LETTER C WITH CEDILLA % ç -> 'c' % LATIN SMALL LETTER E WITH GRAVE % è -> 'e' % LATIN SMALL LETTER E WITH ACUTE % é -> 'e' % LATIN SMALL LETTER E WITH CIRCUMFLEX % ê -> 'e' % LATIN SMALL LETTER E WITH DIAERESIS % ë -> 'e' % LATIN SMALL LETTER I WITH GRAVE % ì -> 'i' % LATIN SMALL LETTER I WITH ACUTE % í -> 'i' % LATIN SMALL LETTER I WITH CIRCUMFLEX % î -> 'i' % LATIN SMALL LETTER I WITH DIAERESIS % ï -> 'i' % LATIN SMALL LETTER ETH % ð -> 'd' % LATIN SMALL LETTER N WITH TILDE % ñ -> 'n' % LATIN SMALL LETTER O WITH GRAVE % ò -> 'o' % LATIN SMALL LETTER O WITH ACUTE % ó -> 'o' % LATIN SMALL LETTER O WITH CIRCUMFLEX % ô -> 'o' % LATIN SMALL LETTER O WITH TILDE % õ -> 'o' % LATIN SMALL LETTER O WITH DIAERESIS % ö -> 'oe', 'o' ""; % DIVISION SIGN % ÷ -> ':' % LATIN SMALL LETTER O WITH STROKE % ø -> 'o' % LATIN SMALL LETTER U WITH GRAVE % ù -> 'u' % LATIN SMALL LETTER U WITH ACUTE % ú -> 'u' % LATIN SMALL LETTER U WITH CIRCUMFLEX % û -> 'u' % LATIN SMALL LETTER U WITH DIAERESIS % ü -> 'ue', 'u' ""; % LATIN SMALL LETTER Y WITH ACUTE % ý -> 'y' % LATIN SMALL LETTER THORN % þ -> 'th' "" % LATIN SMALL LETTER Y WITH DIAERESIS % ÿ -> 'y' % LATIN CAPITAL LETTER A WITH MACRON % Ā -> 'A' % LATIN SMALL LETTER A WITH MACRON % ā -> 'a' % LATIN CAPITAL LETTER A WITH BREVE % Ă -> 'A' % LATIN SMALL LETTER A WITH BREVE % ă -> 'a' % LATIN CAPITAL LETTER A WITH OGONEK % Ą -> 'A' % LATIN SMALL LETTER A WITH OGONEK % ą -> 'a' % LATIN CAPITAL LETTER C WITH ACUTE % Ć -> 'C' % LATIN SMALL LETTER C WITH ACUTE % ć -> 'c' % LATIN CAPITAL LETTER C WITH CIRCUMFLEX % Ĉ -> 'Ch', 'C' ""; % LATIN SMALL LETTER C WITH CIRCUMFLEX % ĉ -> 'ch', 'c' ""; % LATIN CAPITAL LETTER C WITH DOT ABOVE % Ċ -> 'C' % LATIN SMALL LETTER C WITH DOT ABOVE % ċ -> 'c' % LATIN CAPITAL LETTER C WITH CARON % Č -> 'C' % LATIN SMALL LETTER C WITH CARON % č -> 'c' % LATIN CAPITAL LETTER D WITH CARON % Ď -> 'D' % LATIN SMALL LETTER D WITH CARON % ď -> 'd' % LATIN CAPITAL LETTER D WITH STROKE % Đ -> 'D' % LATIN SMALL LETTER D WITH STROKE % đ -> 'd' % LATIN CAPITAL LETTER E WITH MACRON % Ē -> 'E' % LATIN SMALL LETTER E WITH MACRON % ē -> 'e' % LATIN CAPITAL LETTER E WITH BREVE % Ĕ -> 'E' % LATIN SMALL LETTER E WITH BREVE % ĕ -> 'e' % LATIN CAPITAL LETTER E WITH DOT ABOVE % Ė -> 'E' % LATIN SMALL LETTER E WITH DOT ABOVE % ė -> 'e' % LATIN CAPITAL LETTER E WITH OGONEK % Ę -> 'E' % LATIN SMALL LETTER E WITH OGONEK % ę -> 'e' % LATIN CAPITAL LETTER E WITH CARON % Ě -> 'E' % LATIN SMALL LETTER E WITH CARON % ě -> 'e' % LATIN CAPITAL LETTER G WITH CIRCUMFLEX % Ĝ -> 'Gh', 'G' ""; % LATIN SMALL LETTER G WITH CIRCUMFLEX % ĝ -> 'gh', 'g' ""; % LATIN CAPITAL LETTER G WITH BREVE % Ğ -> 'G' % LATIN SMALL LETTER G WITH BREVE % ğ -> 'g' % LATIN CAPITAL LETTER G WITH DOT ABOVE % Ġ -> 'G' % LATIN SMALL LETTER G WITH DOT ABOVE % ġ -> 'g' % LATIN CAPITAL LETTER G WITH CEDILLA % Ģ -> 'G' % LATIN SMALL LETTER G WITH CEDILLA % ģ -> 'g' % LATIN CAPITAL LETTER H WITH CIRCUMFLEX % Ĥ -> 'Hh', 'H' ""; % LATIN SMALL LETTER H WITH CIRCUMFLEX % ĥ -> 'hh', 'h' ""; % LATIN CAPITAL LETTER H WITH STROKE % Ħ -> 'H' % LATIN SMALL LETTER H WITH STROKE % ħ -> 'h' % LATIN CAPITAL LETTER I WITH TILDE % Ĩ -> 'I' % LATIN SMALL LETTER I WITH TILDE % ĩ -> 'i' % LATIN CAPITAL LETTER I WITH MACRON % Ī -> 'I' % LATIN SMALL LETTER I WITH MACRON % ī -> 'i' % LATIN CAPITAL LETTER I WITH BREVE % Ĭ -> 'I' % LATIN SMALL LETTER I WITH BREVE % ĭ -> 'i' % LATIN CAPITAL LETTER I WITH OGONEK % Į -> 'I' % LATIN SMALL LETTER I WITH OGONEK % į -> 'i' % LATIN CAPITAL LETTER I WITH DOT ABOVE % İ -> 'I' % LATIN SMALL LETTER DOTLESS I % ı -> 'i' % LATIN CAPITAL LIGATURE IJ % IJ -> 'IJ' "" % LATIN SMALL LIGATURE IJ % ij -> 'ij' "" % LATIN CAPITAL LETTER J WITH CIRCUMFLEX % Ĵ -> 'Jh', 'J' ""; % LATIN SMALL LETTER J WITH CIRCUMFLEX % ĵ -> 'jh', 'j' ""; % LATIN CAPITAL LETTER K WITH CEDILLA % Ķ -> 'K' % LATIN SMALL LETTER K WITH CEDILLA % ķ -> 'k' % LATIN SMALL LETTER KRA % ĸ -> 'k' % LATIN CAPITAL LETTER L WITH ACUTE % Ĺ -> 'L' % LATIN SMALL LETTER L WITH ACUTE % ĺ -> 'l' % LATIN CAPITAL LETTER L WITH CEDILLA % Ļ -> 'L' % LATIN SMALL LETTER L WITH CEDILLA % ļ -> 'l' % LATIN CAPITAL LETTER L WITH CARON % Ľ -> 'L' % LATIN SMALL LETTER L WITH CARON % ľ -> 'l' % LATIN CAPITAL LETTER L WITH MIDDLE DOT % Ŀ -> 'L·', 'L.', 'L' "";""; % LATIN SMALL LETTER L WITH MIDDLE DOT % ŀ -> 'l·', 'l.', 'l' "";""; % LATIN CAPITAL LETTER L WITH STROKE % Ł -> 'L' % LATIN SMALL LETTER L WITH STROKE % ł -> 'l' % LATIN CAPITAL LETTER N WITH ACUTE % Ń -> 'N' % LATIN SMALL LETTER N WITH ACUTE % ń -> 'n' % LATIN CAPITAL LETTER N WITH CEDILLA % Ņ -> 'N' % LATIN SMALL LETTER N WITH CEDILLA % ņ -> 'n' % LATIN CAPITAL LETTER N WITH CARON % Ň -> 'N' % LATIN SMALL LETTER N WITH CARON % ň -> 'n' % LATIN SMALL LETTER N PRECEDED BY APOSTROPHE % ʼn -> ''n' "" % LATIN CAPITAL LETTER ENG % Ŋ -> 'NG', 'N' ""; % LATIN SMALL LETTER ENG % ŋ -> 'ng', 'n' ""; % LATIN CAPITAL LETTER O WITH MACRON % Ō -> 'O' % LATIN SMALL LETTER O WITH MACRON % ō -> 'o' % LATIN CAPITAL LETTER O WITH BREVE % Ŏ -> 'O' % LATIN SMALL LETTER O WITH BREVE % ŏ -> 'o' % LATIN CAPITAL LETTER O WITH DOUBLE ACUTE % Ő -> 'O' % LATIN SMALL LETTER O WITH DOUBLE ACUTE % ő -> 'o' % LATIN CAPITAL LIGATURE OE % Œ -> 'OE' "" % LATIN SMALL LIGATURE OE % œ -> 'oe' "" % LATIN CAPITAL LETTER R WITH ACUTE % Ŕ -> 'R' % LATIN SMALL LETTER R WITH ACUTE % ŕ -> 'r' % LATIN CAPITAL LETTER R WITH CEDILLA % Ŗ -> 'R' % LATIN SMALL LETTER R WITH CEDILLA % ŗ -> 'r' % LATIN CAPITAL LETTER R WITH CARON % Ř -> 'R' % LATIN SMALL LETTER R WITH CARON % ř -> 'r' % LATIN CAPITAL LETTER S WITH ACUTE % Ś -> 'S' % LATIN SMALL LETTER S WITH ACUTE % ś -> 's' % LATIN CAPITAL LETTER S WITH CIRCUMFLEX % Ŝ -> 'Sh', 'S' ""; % LATIN SMALL LETTER S WITH CIRCUMFLEX % ŝ -> 'sh', 's' ""; % LATIN CAPITAL LETTER S WITH CEDILLA % Ş -> 'S' % LATIN SMALL LETTER S WITH CEDILLA % ş -> 's' % LATIN CAPITAL LETTER S WITH CARON % Š -> 'S' % LATIN SMALL LETTER S WITH CARON % š -> 's' % LATIN CAPITAL LETTER T WITH CEDILLA % Ţ -> 'T' % LATIN SMALL LETTER T WITH CEDILLA % ţ -> 't' % LATIN CAPITAL LETTER T WITH CARON % Ť -> 'T' % LATIN SMALL LETTER T WITH CARON % ť -> 't' % LATIN CAPITAL LETTER T WITH STROKE % Ŧ -> 'T' % LATIN SMALL LETTER T WITH STROKE % ŧ -> 't' % LATIN CAPITAL LETTER U WITH TILDE % Ũ -> 'U' % LATIN SMALL LETTER U WITH TILDE % ũ -> 'u' % LATIN CAPITAL LETTER U WITH MACRON % Ū -> 'U' % LATIN SMALL LETTER U WITH MACRON % ū -> 'u' % LATIN CAPITAL LETTER U WITH BREVE % Ŭ -> 'U' % LATIN SMALL LETTER U WITH BREVE % ŭ -> 'u' % LATIN CAPITAL LETTER U WITH RING ABOVE % Ů -> 'U' % LATIN SMALL LETTER U WITH RING ABOVE % ů -> 'u' % LATIN CAPITAL LETTER U WITH DOUBLE ACUTE % Ű -> 'U' % LATIN SMALL LETTER U WITH DOUBLE ACUTE % ű -> 'u' % LATIN CAPITAL LETTER U WITH OGONEK % Ų -> 'U' % LATIN SMALL LETTER U WITH OGONEK % ų -> 'u' % LATIN CAPITAL LETTER W WITH CIRCUMFLEX % Ŵ -> 'W' % LATIN SMALL LETTER W WITH CIRCUMFLEX % ŵ -> 'w' % LATIN CAPITAL LETTER Y WITH CIRCUMFLEX % Ŷ -> 'Y' % LATIN SMALL LETTER Y WITH CIRCUMFLEX % ŷ -> 'y' % LATIN CAPITAL LETTER Y WITH DIAERESIS % Ÿ -> 'Y' % LATIN CAPITAL LETTER Z WITH ACUTE % Ź -> 'Z' % LATIN SMALL LETTER Z WITH ACUTE % ź -> 'z' % LATIN CAPITAL LETTER Z WITH DOT ABOVE % Ż -> 'Z' % LATIN SMALL LETTER Z WITH DOT ABOVE % ż -> 'z' % LATIN CAPITAL LETTER Z WITH CARON % Ž -> 'Z' % LATIN SMALL LETTER Z WITH CARON % ž -> 'z' % LATIN SMALL LETTER LONG S % ſ -> 's' % LATIN SMALL LETTER F WITH HOOK % ƒ -> 'f' % LATIN CAPITAL LETTER S WITH COMMA BELOW % Ș -> 'Ş', 'S' ; % LATIN SMALL LETTER S WITH COMMA BELOW % ș -> 'ş', 's' ; % LATIN CAPITAL LETTER T WITH COMMA BELOW % Ț -> 'Ţ', 'T' ; % LATIN SMALL LETTER T WITH COMMA BELOW % ț -> 'ţ', 't' ; % MODIFIER LETTER PRIME % ʹ -> '′', ''' ; % MODIFIER LETTER TURNED COMMA % ʻ -> '‘' % MODIFIER LETTER APOSTROPHE % ʼ -> '’', ''' ; % MODIFIER LETTER REVERSED COMMA % ʽ -> '‛' % MODIFIER LETTER CIRCUMFLEX ACCENT % ˆ -> '^' % MODIFIER LETTER VERTICAL LINE % ˈ -> ''' % MODIFIER LETTER MACRON % ˉ -> '¯' % MODIFIER LETTER LOW VERTICAL LINE % ˌ -> ',' % MODIFIER LETTER TRIANGULAR COLON % ː -> ':' % RING ABOVE % ˚ -> '°' % SMALL TILDE % ˜ -> '~' % DOUBLE ACUTE ACCENT % ˝ -> '"' % GREEK NUMERAL SIGN % ʹ -> ''' % GREEK LOWER NUMERAL SIGN % ͵ -> ',' % GREEK QUESTION MARK % ; -> ';' % LATIN CAPITAL LETTER B WITH DOT ABOVE % Ḃ -> 'B' % LATIN SMALL LETTER B WITH DOT ABOVE % ḃ -> 'b' % LATIN CAPITAL LETTER D WITH DOT ABOVE % Ḋ -> 'D' % LATIN SMALL LETTER D WITH DOT ABOVE % ḋ -> 'd' % LATIN CAPITAL LETTER F WITH DOT ABOVE % Ḟ -> 'F' % LATIN SMALL LETTER F WITH DOT ABOVE % ḟ -> 'f' % LATIN CAPITAL LETTER M WITH DOT ABOVE % Ṁ -> 'M' % LATIN SMALL LETTER M WITH DOT ABOVE % ṁ -> 'm' % LATIN CAPITAL LETTER P WITH DOT ABOVE % Ṗ -> 'P' % LATIN SMALL LETTER P WITH DOT ABOVE % ṗ -> 'p' % LATIN CAPITAL LETTER S WITH DOT ABOVE % Ṡ -> 'S' % LATIN SMALL LETTER S WITH DOT ABOVE % ṡ -> 's' % LATIN CAPITAL LETTER T WITH DOT ABOVE % Ṫ -> 'T' % LATIN SMALL LETTER T WITH DOT ABOVE % ṫ -> 't' % LATIN CAPITAL LETTER W WITH GRAVE % Ẁ -> 'W' % LATIN SMALL LETTER W WITH GRAVE % ẁ -> 'w' % LATIN CAPITAL LETTER W WITH ACUTE % Ẃ -> 'W' % LATIN SMALL LETTER W WITH ACUTE % ẃ -> 'w' % LATIN CAPITAL LETTER W WITH DIAERESIS % Ẅ -> 'W' % LATIN SMALL LETTER W WITH DIAERESIS % ẅ -> 'w' % LATIN CAPITAL LETTER Y WITH GRAVE % Ỳ -> 'Y' % LATIN SMALL LETTER Y WITH GRAVE % ỳ -> 'y' % EN QUAD %   -> ' ' % EM QUAD %   -> ' ' "" % EN SPACE %   -> ' ' % EM SPACE %   -> ' ' "" % THREE-PER-EM SPACE %   -> ' ' % FOUR-PER-EM SPACE %   -> ' ' % SIX-PER-EM SPACE %   -> ' ' % FIGURE SPACE %   -> ' ' % PUNCTUATION SPACE %   -> ' ' % THIN SPACE %   -> ' ' % HAIR SPACE %   -> "" % ZERO WIDTH SPACE % ​ -> "" % ZERO WIDTH NON-JOINER % ‌ -> "" % ZERO WIDTH JOINER % ‍ -> "" % LEFT-TO-RIGHT MARK % ‎ -> "" % RIGHT-TO-LEFT MARK % ‏ -> "" % HYPHEN % ‐ -> '-' % NON-BREAKING HYPHEN % ‑ -> '-' % FIGURE DASH % ‒ -> '-' % EN DASH % – -> '-' % EM DASH % — -> '--' "" % HORIZONTAL BAR % ― -> '--' "" % DOUBLE VERTICAL LINE % ‖ -> '||' "" % DOUBLE LOW LINE % ‗ -> '_' % LEFT SINGLE QUOTATION MARK % ‘ -> ''' % RIGHT SINGLE QUOTATION MARK % ’ -> ''' % SINGLE LOW-9 QUOTATION MARK % ‚ -> ''' % SINGLE HIGH-REVERSED-9 QUOTATION MARK % ‛ -> ''' % LEFT DOUBLE QUOTATION MARK % “ -> '"' % RIGHT DOUBLE QUOTATION MARK % ” -> '"' % DOUBLE LOW-9 QUOTATION MARK % „ -> '"' % DOUBLE HIGH-REVERSED-9 QUOTATION MARK % ‟ -> '"' % DAGGER % † -> '+' % DOUBLE DAGGER % ‡ -> '++' "" % BULLET % • -> 'o' % TRIANGULAR BULLET % ‣ -> '>' % ONE DOT LEADER % ․ -> '.' % TWO DOT LEADER % ‥ -> '..' "" % HORIZONTAL ELLIPSIS % … -> '...' "" % HYPHENATION POINT % ‧ -> '-' % LEFT-TO-RIGHT EMBEDDING % ‪ -> "" % RIGHT-TO-LEFT EMBEDDING % ‫ -> "" % POP DIRECTIONAL FORMATTING % ‬ -> "" % LEFT-TO-RIGHT OVERRIDE % ‭ -> "" % RIGHT-TO-LEFT OVERRIDE % ‮ -> "" % NARROW NO-BREAK SPACE %   -> ' ' % PER MILLE SIGN % ‰ -> ' 0/00' "" % PRIME % ′ -> ''' % DOUBLE PRIME % ″ -> '"' % TRIPLE PRIME % ‴ -> ''''' "" % REVERSED PRIME % ‵ -> '`' % REVERSED DOUBLE PRIME % ‶ -> '``' "" % REVERSED TRIPLE PRIME % ‷ -> '```' "" % SINGLE LEFT-POINTING ANGLE QUOTATION MARK % ‹ -> '<' % SINGLE RIGHT-POINTING ANGLE QUOTATION MARK % › -> '>' % DOUBLE EXCLAMATION MARK % ‼ -> '!!' "" % OVERLINE % ‾ -> '-' % HYPHEN BULLET % ⁃ -> '-' % FRACTION SLASH % ⁄ -> '/' % QUESTION EXCLAMATION MARK % ⁈ -> '?!' "" % EXCLAMATION QUESTION MARK % ⁉ -> '!?' "" % TIRONIAN SIGN ET % ⁊ -> '7' % SUPERSCRIPT ZERO % ⁰ -> '^0', '0' ""; % SUPERSCRIPT FOUR % ⁴ -> '^4', '4' ""; % SUPERSCRIPT FIVE % ⁵ -> '^5', '5' ""; % SUPERSCRIPT SIX % ⁶ -> '^6', '6' ""; % SUPERSCRIPT SEVEN % ⁷ -> '^7', '7' ""; % SUPERSCRIPT EIGHT % ⁸ -> '^8', '8' ""; % SUPERSCRIPT NINE % ⁹ -> '^9', '9' ""; % SUPERSCRIPT PLUS SIGN % ⁺ -> '^+', '+' ""; % SUPERSCRIPT MINUS % ⁻ -> '^-', '-' ""; % SUPERSCRIPT EQUALS SIGN % ⁼ -> '^=', '=' ""; % SUPERSCRIPT LEFT PARENTHESIS % ⁽ -> '^(', '(' ""; % SUPERSCRIPT RIGHT PARENTHESIS % ⁾ -> '^)', ')' ""; % SUPERSCRIPT LATIN SMALL LETTER N % ⁿ -> '^n', 'n' ""; % SUBSCRIPT ZERO % ₀ -> '_0', '0' ""; % SUBSCRIPT ONE % ₁ -> '_1', '1' ""; % SUBSCRIPT TWO % ₂ -> '_2', '2' ""; % SUBSCRIPT THREE % ₃ -> '_3', '3' ""; % SUBSCRIPT FOUR % ₄ -> '_4', '4' ""; % SUBSCRIPT FIVE % ₅ -> '_5', '5' ""; % SUBSCRIPT SIX % ₆ -> '_6', '6' ""; % SUBSCRIPT SEVEN % ₇ -> '_7', '7' ""; % SUBSCRIPT EIGHT % ₈ -> '_8', '8' ""; % SUBSCRIPT NINE % ₉ -> '_9', '9' ""; % SUBSCRIPT PLUS SIGN % ₊ -> '_+', '+' ""; % SUBSCRIPT MINUS % ₋ -> '_-', '-' ""; % SUBSCRIPT EQUALS SIGN % ₌ -> '_=', '=' ""; % SUBSCRIPT LEFT PARENTHESIS % ₍ -> '_(', '(' ""; % SUBSCRIPT RIGHT PARENTHESIS % ₎ -> '_)', ')' ""; % EURO SIGN % € -> 'EUR', 'E' ""; % ACCOUNT OF % ℀ -> 'a/c' "" % ADDRESSED TO THE SUBJECT % ℁ -> 'a/s' "" % DEGREE CELSIUS % ℃ -> '°C', 'C' ""; % CARE OF % ℅ -> 'c/o' "" % CADA UNA % ℆ -> 'c/u' "" % DEGREE FAHRENHEIT % ℉ -> '°F', 'F' ""; % SCRIPT SMALL L % ℓ -> 'l' % NUMERO SIGN % № -> 'Nº', 'No' "";"" % SOUND RECORDING COPYRIGHT % ℗ -> '(P)' "" % SERVICE MARK % ℠ -> '[SM]' "" % TELEPHONE SIGN % ℡ -> 'TEL' "" % TRADE MARK SIGN % ™ -> '[TM]' "" % OHM SIGN % Ω -> 'Ω', 'ohm', 'O' ;""; % KELVIN SIGN % K -> 'K' % ANGSTROM SIGN % Å -> 'Å' % ESTIMATED SYMBOL % ℮ -> 'e' % VULGAR FRACTION ONE THIRD % ⅓ -> ' 1/3' "" % VULGAR FRACTION TWO THIRDS % ⅔ -> ' 2/3' "" % VULGAR FRACTION ONE FIFTH % ⅕ -> ' 1/5' "" % VULGAR FRACTION TWO FIFTHS % ⅖ -> ' 2/5' "" % VULGAR FRACTION THREE FIFTHS % ⅗ -> ' 3/5' "" % VULGAR FRACTION FOUR FIFTHS % ⅘ -> ' 4/5' "" % VULGAR FRACTION ONE SIXTH % ⅙ -> ' 1/6' "" % VULGAR FRACTION FIVE SIXTHS % ⅚ -> ' 5/6' "" % VULGAR FRACTION ONE EIGHTH % ⅛ -> ' 1/8' "" % VULGAR FRACTION THREE EIGHTHS % ⅜ -> ' 3/8' "" % VULGAR FRACTION FIVE EIGHTHS % ⅝ -> ' 5/8' "" % VULGAR FRACTION SEVEN EIGHTHS % ⅞ -> ' 7/8' "" % FRACTION NUMERATOR ONE % ⅟ -> ' 1/' "" % ROMAN NUMERAL ONE % Ⅰ -> 'I' % ROMAN NUMERAL TWO % Ⅱ -> 'II' "" % ROMAN NUMERAL THREE % Ⅲ -> 'III' "" % ROMAN NUMERAL FOUR % Ⅳ -> 'IV' "" % ROMAN NUMERAL FIVE % Ⅴ -> 'V' % ROMAN NUMERAL SIX % Ⅵ -> 'VI' "" % ROMAN NUMERAL SEVEN % Ⅶ -> 'VII' "" % ROMAN NUMERAL EIGHT % Ⅷ -> 'VIII' "" % ROMAN NUMERAL NINE % Ⅸ -> 'IX' "" % ROMAN NUMERAL TEN % Ⅹ -> 'X' % ROMAN NUMERAL ELEVEN % Ⅺ -> 'XI' "" % ROMAN NUMERAL TWELVE % Ⅻ -> 'XII' "" % ROMAN NUMERAL FIFTY % Ⅼ -> 'L' % ROMAN NUMERAL ONE HUNDRED % Ⅽ -> 'C' % ROMAN NUMERAL FIVE HUNDRED % Ⅾ -> 'D' % ROMAN NUMERAL ONE THOUSAND % Ⅿ -> 'M' % SMALL ROMAN NUMERAL ONE % ⅰ -> 'i' % SMALL ROMAN NUMERAL TWO % ⅱ -> 'ii' "" % SMALL ROMAN NUMERAL THREE % ⅲ -> 'iii' "" % SMALL ROMAN NUMERAL FOUR % ⅳ -> 'iv' "" % SMALL ROMAN NUMERAL FIVE % ⅴ -> 'v' % SMALL ROMAN NUMERAL SIX % ⅵ -> 'vi' "" % SMALL ROMAN NUMERAL SEVEN % ⅶ -> 'vii' "" % SMALL ROMAN NUMERAL EIGHT % ⅷ -> 'viii' "" % SMALL ROMAN NUMERAL NINE % ⅸ -> 'ix' "" % SMALL ROMAN NUMERAL TEN % ⅹ -> 'x' % SMALL ROMAN NUMERAL ELEVEN % ⅺ -> 'xi' "" % SMALL ROMAN NUMERAL TWELVE % ⅻ -> 'xii' "" % SMALL ROMAN NUMERAL FIFTY % ⅼ -> 'l' % SMALL ROMAN NUMERAL ONE HUNDRED % ⅽ -> 'c' % SMALL ROMAN NUMERAL FIVE HUNDRED % ⅾ -> 'd' % SMALL ROMAN NUMERAL ONE THOUSAND % ⅿ -> 'm' % LEFTWARDS ARROW % ← -> '<-' "" % UPWARDS ARROW % ↑ -> '^' % RIGHTWARDS ARROW % → -> '->' "" % DOWNWARDS ARROW % ↓ -> 'v' % LEFT RIGHT ARROW % ↔ -> '<->' "" % LEFTWARDS DOUBLE ARROW % ⇐ -> '<=' "" % RIGHTWARDS DOUBLE ARROW % ⇒ -> '=>' "" % LEFT RIGHT DOUBLE ARROW % ⇔ -> '<=>' "" % MINUS SIGN % − -> '–', '-' ; % DIVISION SLASH % ∕ -> '/' % SET MINUS % ∖ -> '\' % ASTERISK OPERATOR % ∗ -> '*' % RING OPERATOR % ∘ -> 'o' % BULLET OPERATOR % ∙ -> '·' % INFINITY % ∞ -> 'inf' "" % DIVIDES % ∣ -> '|' % PARALLEL TO % ∥ -> '||' "" % RATIO % ∶ -> ':' % TILDE OPERATOR % ∼ -> '~' % NOT EQUAL TO % ≠ -> '/=' "" % IDENTICAL TO % ≡ -> '=' % LESS-THAN OR EQUAL TO % ≤ -> '<=' "" % GREATER-THAN OR EQUAL TO % ≥ -> '>=' "" % MUCH LESS-THAN % ≪ -> '<<' "" % MUCH GREATER-THAN % ≫ -> '>>' "" % CIRCLED PLUS % ⊕ -> '(+)' "" % CIRCLED MINUS % ⊖ -> '(-)' "" % CIRCLED TIMES % ⊗ -> '(x)' "" % CIRCLED DIVISION SLASH % ⊘ -> '(/)' "" % RIGHT TACK % ⊢ -> '|-' "" % LEFT TACK % ⊣ -> '-|' "" % ASSERTION % ⊦ -> '|-' "" % MODELS % ⊧ -> '|=' "" % TRUE % ⊨ -> '|=' "" % FORCES % ⊩ -> '||-' "" % DOT OPERATOR % ⋅ -> '·' % STAR OPERATOR % ⋆ -> '*' % EQUAL AND PARALLEL TO % ⋕ -> '#' % VERY MUCH LESS-THAN % ⋘ -> '<<<' "" % VERY MUCH GREATER-THAN % ⋙ -> '>>>' "" % MIDLINE HORIZONTAL ELLIPSIS % ⋯ -> '...' "" % LEFT-POINTING ANGLE BRACKET % 〈 -> '<' % RIGHT-POINTING ANGLE BRACKET % 〉 -> '>' % SYMBOL FOR NULL % ␀ -> 'NUL' "" % SYMBOL FOR START OF HEADING % ␁ -> 'SOH' "" % SYMBOL FOR START OF TEXT % ␂ -> 'STX' "" % SYMBOL FOR END OF TEXT % ␃ -> 'ETX' "" % SYMBOL FOR END OF TRANSMISSION % ␄ -> 'EOT' "" % SYMBOL FOR ENQUIRY % ␅ -> 'ENQ' "" % SYMBOL FOR ACKNOWLEDGE % ␆ -> 'ACK' "" % SYMBOL FOR BELL % ␇ -> 'BEL' "" % SYMBOL FOR BACKSPACE % ␈ -> 'BS' "" % SYMBOL FOR HORIZONTAL TABULATION % ␉ -> 'HT' "" % SYMBOL FOR LINE FEED % ␊ -> 'LF' "" % SYMBOL FOR VERTICAL TABULATION % ␋ -> 'VT' "" % SYMBOL FOR FORM FEED % ␌ -> 'FF' "" % SYMBOL FOR CARRIAGE RETURN % ␍ -> 'CR' "" % SYMBOL FOR SHIFT OUT % ␎ -> 'SO' "" % SYMBOL FOR SHIFT IN % ␏ -> 'SI' "" % SYMBOL FOR DATA LINK ESCAPE % ␐ -> 'DLE' "" % SYMBOL FOR DEVICE CONTROL ONE % ␑ -> 'DC1' "" % SYMBOL FOR DEVICE CONTROL TWO % ␒ -> 'DC2' "" % SYMBOL FOR DEVICE CONTROL THREE % ␓ -> 'DC3' "" % SYMBOL FOR DEVICE CONTROL FOUR % ␔ -> 'DC4' "" % SYMBOL FOR NEGATIVE ACKNOWLEDGE % ␕ -> 'NAK' "" % SYMBOL FOR SYNCHRONOUS IDLE % ␖ -> 'SYN' "" % SYMBOL FOR END OF TRANSMISSION BLOCK % ␗ -> 'ETB' "" % SYMBOL FOR CANCEL % ␘ -> 'CAN' "" % SYMBOL FOR END OF MEDIUM % ␙ -> 'EM' "" % SYMBOL FOR SUBSTITUTE % ␚ -> 'SUB' "" % SYMBOL FOR ESCAPE % ␛ -> 'ESC' "" % SYMBOL FOR FILE SEPARATOR % ␜ -> 'FS' "" % SYMBOL FOR GROUP SEPARATOR % ␝ -> 'GS' "" % SYMBOL FOR RECORD SEPARATOR % ␞ -> 'RS' "" % SYMBOL FOR UNIT SEPARATOR % ␟ -> 'US' "" % SYMBOL FOR SPACE % ␠ -> 'SP' "" % SYMBOL FOR DELETE % ␡ -> 'DEL' "" % OPEN BOX % ␣ -> '_' % SYMBOL FOR NEWLINE % ␤ -> 'NL' "" % SYMBOL FOR DELETE FORM TWO % ␥ -> '///' "" % SYMBOL FOR SUBSTITUTE FORM TWO % ␦ -> '?' % CIRCLED DIGIT ONE % ① -> '(1)', '1' ""; % CIRCLED DIGIT TWO % ② -> '(2)', '2' ""; % CIRCLED DIGIT THREE % ③ -> '(3)', '3' ""; % CIRCLED DIGIT FOUR % ④ -> '(4)', '4' ""; % CIRCLED DIGIT FIVE % ⑤ -> '(5)', '5' ""; % CIRCLED DIGIT SIX % ⑥ -> '(6)', '6' ""; % CIRCLED DIGIT SEVEN % ⑦ -> '(7)', '7' ""; % CIRCLED DIGIT EIGHT % ⑧ -> '(8)', '8' ""; % CIRCLED DIGIT NINE % ⑨ -> '(9)', '9' ""; % CIRCLED NUMBER TEN % ⑩ -> '(10)' "" % CIRCLED NUMBER ELEVEN % ⑪ -> '(11)' "" % CIRCLED NUMBER TWELVE % ⑫ -> '(12)' "" % CIRCLED NUMBER THIRTEEN % ⑬ -> '(13)' "" % CIRCLED NUMBER FOURTEEN % ⑭ -> '(14)' "" % CIRCLED NUMBER FIFTEEN % ⑮ -> '(15)' "" % CIRCLED NUMBER SIXTEEN % ⑯ -> '(16)' "" % CIRCLED NUMBER SEVENTEEN % ⑰ -> '(17)' "" % CIRCLED NUMBER EIGHTEEN % ⑱ -> '(18)' "" % CIRCLED NUMBER NINETEEN % ⑲ -> '(19)' "" % CIRCLED NUMBER TWENTY % ⑳ -> '(20)' "" % PARENTHESIZED DIGIT ONE % ⑴ -> '(1)', '1' ""; % PARENTHESIZED DIGIT TWO % ⑵ -> '(2)', '2' ""; % PARENTHESIZED DIGIT THREE % ⑶ -> '(3)', '3' ""; % PARENTHESIZED DIGIT FOUR % ⑷ -> '(4)', '4' ""; % PARENTHESIZED DIGIT FIVE % ⑸ -> '(5)', '5' ""; % PARENTHESIZED DIGIT SIX % ⑹ -> '(6)', '6' ""; % PARENTHESIZED DIGIT SEVEN % ⑺ -> '(7)', '7' ""; % PARENTHESIZED DIGIT EIGHT % ⑻ -> '(8)', '8' ""; % PARENTHESIZED DIGIT NINE % ⑼ -> '(9)', '9' ""; % PARENTHESIZED NUMBER TEN % ⑽ -> '(10)' "" % PARENTHESIZED NUMBER ELEVEN % ⑾ -> '(11)' "" % PARENTHESIZED NUMBER TWELVE % ⑿ -> '(12)' "" % PARENTHESIZED NUMBER THIRTEEN % ⒀ -> '(13)' "" % PARENTHESIZED NUMBER FOURTEEN % ⒁ -> '(14)' "" % PARENTHESIZED NUMBER FIFTEEN % ⒂ -> '(15)' "" % PARENTHESIZED NUMBER SIXTEEN % ⒃ -> '(16)' "" % PARENTHESIZED NUMBER SEVENTEEN % ⒄ -> '(17)' "" % PARENTHESIZED NUMBER EIGHTEEN % ⒅ -> '(18)' "" % PARENTHESIZED NUMBER NINETEEN % ⒆ -> '(19)' "" % PARENTHESIZED NUMBER TWENTY % ⒇ -> '(20)' "" % DIGIT ONE FULL STOP % ⒈ -> '1.', '1' ""; % DIGIT TWO FULL STOP % ⒉ -> '2.', '2' ""; % DIGIT THREE FULL STOP % ⒊ -> '3.', '3' ""; % DIGIT FOUR FULL STOP % ⒋ -> '4.', '4' ""; % DIGIT FIVE FULL STOP % ⒌ -> '5.', '5' ""; % DIGIT SIX FULL STOP % ⒍ -> '6.', '6' ""; % DIGIT SEVEN FULL STOP % ⒎ -> '7.', '7' ""; % DIGIT EIGHT FULL STOP % ⒏ -> '8.', '8' ""; % DIGIT NINE FULL STOP % ⒐ -> '9.', '9' ""; % NUMBER TEN FULL STOP % ⒑ -> '10.' "" % NUMBER ELEVEN FULL STOP % ⒒ -> '11.' "" % NUMBER TWELVE FULL STOP % ⒓ -> '12.' "" % NUMBER THIRTEEN FULL STOP % ⒔ -> '13.' "" % NUMBER FOURTEEN FULL STOP % ⒕ -> '14.' "" % NUMBER FIFTEEN FULL STOP % ⒖ -> '15.' "" % NUMBER SIXTEEN FULL STOP % ⒗ -> '16.' "" % NUMBER SEVENTEEN FULL STOP % ⒘ -> '17.' "" % NUMBER EIGHTEEN FULL STOP % ⒙ -> '18.' "" % NUMBER NINETEEN FULL STOP % ⒚ -> '19.' "" % NUMBER TWENTY FULL STOP % ⒛ -> '20.' "" % PARENTHESIZED LATIN SMALL LETTER A % ⒜ -> '(a)', 'a' ""; % PARENTHESIZED LATIN SMALL LETTER B % ⒝ -> '(b)', 'b' ""; % PARENTHESIZED LATIN SMALL LETTER C % ⒞ -> '(c)', 'c' ""; % PARENTHESIZED LATIN SMALL LETTER D % ⒟ -> '(d)', 'd' ""; % PARENTHESIZED LATIN SMALL LETTER E % ⒠ -> '(e)', 'e' ""; % PARENTHESIZED LATIN SMALL LETTER F % ⒡ -> '(f)', 'f' ""; % PARENTHESIZED LATIN SMALL LETTER G % ⒢ -> '(g)', 'g' ""; % PARENTHESIZED LATIN SMALL LETTER H % ⒣ -> '(h)', 'h' ""; % PARENTHESIZED LATIN SMALL LETTER I % ⒤ -> '(i)', 'i' ""; % PARENTHESIZED LATIN SMALL LETTER J % ⒥ -> '(j)', 'j' ""; % PARENTHESIZED LATIN SMALL LETTER K % ⒦ -> '(k)', 'k' ""; % PARENTHESIZED LATIN SMALL LETTER L % ⒧ -> '(l)', 'l' ""; % PARENTHESIZED LATIN SMALL LETTER M % ⒨ -> '(m)', 'm' ""; % PARENTHESIZED LATIN SMALL LETTER N % ⒩ -> '(n)', 'n' ""; % PARENTHESIZED LATIN SMALL LETTER O % ⒪ -> '(o)', 'o' ""; % PARENTHESIZED LATIN SMALL LETTER P % ⒫ -> '(p)', 'p' ""; % PARENTHESIZED LATIN SMALL LETTER Q % ⒬ -> '(q)', 'q' ""; % PARENTHESIZED LATIN SMALL LETTER R % ⒭ -> '(r)', 'r' ""; % PARENTHESIZED LATIN SMALL LETTER S % ⒮ -> '(s)', 's' ""; % PARENTHESIZED LATIN SMALL LETTER T % ⒯ -> '(t)', 't' ""; % PARENTHESIZED LATIN SMALL LETTER U % ⒰ -> '(u)', 'u' ""; % PARENTHESIZED LATIN SMALL LETTER V % ⒱ -> '(v)', 'v' ""; % PARENTHESIZED LATIN SMALL LETTER W % ⒲ -> '(w)', 'w' ""; % PARENTHESIZED LATIN SMALL LETTER X % ⒳ -> '(x)', 'x' ""; % PARENTHESIZED LATIN SMALL LETTER Y % ⒴ -> '(y)', 'y' ""; % PARENTHESIZED LATIN SMALL LETTER Z % ⒵ -> '(z)', 'z' ""; % CIRCLED LATIN CAPITAL LETTER A % Ⓐ -> '(A)', 'A' ""; % CIRCLED LATIN CAPITAL LETTER B % Ⓑ -> '(B)', 'B' ""; % CIRCLED LATIN CAPITAL LETTER C % Ⓒ -> '(C)', 'C' ""; % CIRCLED LATIN CAPITAL LETTER D % Ⓓ -> '(D)', 'D' ""; % CIRCLED LATIN CAPITAL LETTER E % Ⓔ -> '(E)', 'E' ""; % CIRCLED LATIN CAPITAL LETTER F % Ⓕ -> '(F)', 'F' ""; % CIRCLED LATIN CAPITAL LETTER G % Ⓖ -> '(G)', 'G' ""; % CIRCLED LATIN CAPITAL LETTER H % Ⓗ -> '(H)', 'H' ""; % CIRCLED LATIN CAPITAL LETTER I % Ⓘ -> '(I)', 'I' ""; % CIRCLED LATIN CAPITAL LETTER J % Ⓙ -> '(J)', 'J' ""; % CIRCLED LATIN CAPITAL LETTER K % Ⓚ -> '(K)', 'K' ""; % CIRCLED LATIN CAPITAL LETTER L % Ⓛ -> '(L)', 'L' ""; % CIRCLED LATIN CAPITAL LETTER M % Ⓜ -> '(M)', 'M' ""; % CIRCLED LATIN CAPITAL LETTER N % Ⓝ -> '(N)', 'N' ""; % CIRCLED LATIN CAPITAL LETTER O % Ⓞ -> '(O)', 'O' ""; % CIRCLED LATIN CAPITAL LETTER P % Ⓟ -> '(P)', 'P' ""; % CIRCLED LATIN CAPITAL LETTER Q % Ⓠ -> '(Q)', 'Q' ""; % CIRCLED LATIN CAPITAL LETTER R % Ⓡ -> '(R)', 'R' ""; % CIRCLED LATIN CAPITAL LETTER S % Ⓢ -> '(S)', 'S' ""; % CIRCLED LATIN CAPITAL LETTER T % Ⓣ -> '(T)', 'T' ""; % CIRCLED LATIN CAPITAL LETTER U % Ⓤ -> '(U)', 'U' ""; % CIRCLED LATIN CAPITAL LETTER V % Ⓥ -> '(V)', 'V' ""; % CIRCLED LATIN CAPITAL LETTER W % Ⓦ -> '(W)', 'W' ""; % CIRCLED LATIN CAPITAL LETTER X % Ⓧ -> '(X)', 'X' ""; % CIRCLED LATIN CAPITAL LETTER Y % Ⓨ -> '(Y)', 'Y' ""; % CIRCLED LATIN CAPITAL LETTER Z % Ⓩ -> '(Z)', 'Z' ""; % CIRCLED LATIN SMALL LETTER A % ⓐ -> '(a)', 'a' ""; % CIRCLED LATIN SMALL LETTER B % ⓑ -> '(b)', 'b' ""; % CIRCLED LATIN SMALL LETTER C % ⓒ -> '(c)', 'c' ""; % CIRCLED LATIN SMALL LETTER D % ⓓ -> '(d)', 'd' ""; % CIRCLED LATIN SMALL LETTER E % ⓔ -> '(e)', 'e' ""; % CIRCLED LATIN SMALL LETTER F % ⓕ -> '(f)', 'f' ""; % CIRCLED LATIN SMALL LETTER G % ⓖ -> '(g)', 'g' ""; % CIRCLED LATIN SMALL LETTER H % ⓗ -> '(h)', 'h' ""; % CIRCLED LATIN SMALL LETTER I % ⓘ -> '(i)', 'i' ""; % CIRCLED LATIN SMALL LETTER J % ⓙ -> '(j)', 'j' ""; % CIRCLED LATIN SMALL LETTER K % ⓚ -> '(k)', 'k' ""; % CIRCLED LATIN SMALL LETTER L % ⓛ -> '(l)', 'l' ""; % CIRCLED LATIN SMALL LETTER M % ⓜ -> '(m)', 'm' ""; % CIRCLED LATIN SMALL LETTER N % ⓝ -> '(n)', 'n' ""; % CIRCLED LATIN SMALL LETTER O % ⓞ -> '(o)', 'o' ""; % CIRCLED LATIN SMALL LETTER P % ⓟ -> '(p)', 'p' ""; % CIRCLED LATIN SMALL LETTER Q % ⓠ -> '(q)', 'q' ""; % CIRCLED LATIN SMALL LETTER R % ⓡ -> '(r)', 'r' ""; % CIRCLED LATIN SMALL LETTER S % ⓢ -> '(s)', 's' ""; % CIRCLED LATIN SMALL LETTER T % ⓣ -> '(t)', 't' ""; % CIRCLED LATIN SMALL LETTER U % ⓤ -> '(u)', 'u' ""; % CIRCLED LATIN SMALL LETTER V % ⓥ -> '(v)', 'v' ""; % CIRCLED LATIN SMALL LETTER W % ⓦ -> '(w)', 'w' ""; % CIRCLED LATIN SMALL LETTER X % ⓧ -> '(x)', 'x' ""; % CIRCLED LATIN SMALL LETTER Y % ⓨ -> '(y)', 'y' ""; % CIRCLED LATIN SMALL LETTER Z % ⓩ -> '(z)', 'z' ""; % CIRCLED DIGIT ZERO % ⓪ -> '(0)', '0' ""; % BOX DRAWINGS LIGHT HORIZONTAL % ─ -> '-' % BOX DRAWINGS HEAVY HORIZONTAL % ━ -> '=' % BOX DRAWINGS LIGHT VERTICAL % │ -> '|' % BOX DRAWINGS HEAVY VERTICAL % ┃ -> '|' % BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL % ┄ -> '-' % BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL % ┅ -> '=' % BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL % ┆ -> '|' % BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL % ┇ -> '|' % BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL % ┈ -> '-' % BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL % ┉ -> '=' % BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL % ┊ -> '|' % BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL % ┋ -> '|' % BOX DRAWINGS LIGHT DOWN AND RIGHT % ┌ -> '+' % BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY % ┍ -> '+' % BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT % ┎ -> '+' % BOX DRAWINGS HEAVY DOWN AND RIGHT % ┏ -> '+' % BOX DRAWINGS LIGHT DOWN AND LEFT % ┐ -> '+' % BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY % ┑ -> '+' % BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT % ┒ -> '+' % BOX DRAWINGS HEAVY DOWN AND LEFT % ┓ -> '+' % BOX DRAWINGS LIGHT UP AND RIGHT % └ -> '+' % BOX DRAWINGS UP LIGHT AND RIGHT HEAVY % ┕ -> '+' % BOX DRAWINGS UP HEAVY AND RIGHT LIGHT % ┖ -> '+' % BOX DRAWINGS HEAVY UP AND RIGHT % ┗ -> '+' % BOX DRAWINGS LIGHT UP AND LEFT % ┘ -> '+' % BOX DRAWINGS UP LIGHT AND LEFT HEAVY % ┙ -> '+' % BOX DRAWINGS UP HEAVY AND LEFT LIGHT % ┚ -> '+' % BOX DRAWINGS HEAVY UP AND LEFT % ┛ -> '+' % BOX DRAWINGS LIGHT VERTICAL AND RIGHT % ├ -> '+' % BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY % ┝ -> '+' % BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT % ┞ -> '+' % BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT % ┟ -> '+' % BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT % ┠ -> '+' % BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY % ┡ -> '+' % BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY % ┢ -> '+' % BOX DRAWINGS HEAVY VERTICAL AND RIGHT % ┣ -> '+' % BOX DRAWINGS LIGHT VERTICAL AND LEFT % ┤ -> '+' % BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY % ┥ -> '+' % BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT % ┦ -> '+' % BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT % ┧ -> '+' % BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT % ┨ -> '+' % BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY % ┩ -> '+' % BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY % ┪ -> '+' % BOX DRAWINGS HEAVY VERTICAL AND LEFT % ┫ -> '+' % BOX DRAWINGS LIGHT DOWN AND HORIZONTAL % ┬ -> '+' % BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT % ┭ -> '+' % BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT % ┮ -> '+' % BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY % ┯ -> '+' % BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT % ┰ -> '+' % BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY % ┱ -> '+' % BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY % ┲ -> '+' % BOX DRAWINGS HEAVY DOWN AND HORIZONTAL % ┳ -> '+' % BOX DRAWINGS LIGHT UP AND HORIZONTAL % ┴ -> '+' % BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT % ┵ -> '+' % BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT % ┶ -> '+' % BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY % ┷ -> '+' % BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT % ┸ -> '+' % BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY % ┹ -> '+' % BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY % ┺ -> '+' % BOX DRAWINGS HEAVY UP AND HORIZONTAL % ┻ -> '+' % BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL % ┼ -> '+' % BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT % ┽ -> '+' % BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT % ┾ -> '+' % BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY % ┿ -> '+' % BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT % ╀ -> '+' % BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT % ╁ -> '+' % BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT % ╂ -> '+' % BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT % ╃ -> '+' % BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT % ╄ -> '+' % BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT % ╅ -> '+' % BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT % ╆ -> '+' % BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY % ╇ -> '+' % BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY % ╈ -> '+' % BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY % ╉ -> '+' % BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY % ╊ -> '+' % BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL % ╋ -> '+' % BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL % ╌ -> '-' % BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL % ╍ -> '=' % BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL % ╎ -> '|' % BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL % ╏ -> '|' % BOX DRAWINGS DOUBLE HORIZONTAL % ═ -> '=' % BOX DRAWINGS DOUBLE VERTICAL % ║ -> '|' % BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE % ╒ -> '+' % BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE % ╓ -> '+' % BOX DRAWINGS DOUBLE DOWN AND RIGHT % ╔ -> '+' % BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE % ╕ -> '+' % BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE % ╖ -> '+' % BOX DRAWINGS DOUBLE DOWN AND LEFT % ╗ -> '+' % BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE % ╘ -> '+' % BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE % ╙ -> '+' % BOX DRAWINGS DOUBLE UP AND RIGHT % ╚ -> '+' % BOX DRAWINGS UP SINGLE AND LEFT DOUBLE % ╛ -> '+' % BOX DRAWINGS UP DOUBLE AND LEFT SINGLE % ╜ -> '+' % BOX DRAWINGS DOUBLE UP AND LEFT % ╝ -> '+' % BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE % ╞ -> '+' % BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE % ╟ -> '+' % BOX DRAWINGS DOUBLE VERTICAL AND RIGHT % ╠ -> '+' % BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE % ╡ -> '+' % BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE % ╢ -> '+' % BOX DRAWINGS DOUBLE VERTICAL AND LEFT % ╣ -> '+' % BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE % ╤ -> '+' % BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE % ╥ -> '+' % BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL % ╦ -> '+' % BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE % ╧ -> '+' % BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE % ╨ -> '+' % BOX DRAWINGS DOUBLE UP AND HORIZONTAL % ╩ -> '+' % BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE % ╪ -> '+' % BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE % ╫ -> '+' % BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL % ╬ -> '+' % BOX DRAWINGS LIGHT ARC DOWN AND RIGHT % ╭ -> '+' % BOX DRAWINGS LIGHT ARC DOWN AND LEFT % ╮ -> '+' % BOX DRAWINGS LIGHT ARC UP AND LEFT % ╯ -> '+' % BOX DRAWINGS LIGHT ARC UP AND RIGHT % ╰ -> '+' % BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT % ╱ -> '/' % BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT % ╲ -> '\' % BOX DRAWINGS LIGHT DIAGONAL CROSS % ╳ -> 'X' % BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT % ╼ -> '-' % BOX DRAWINGS LIGHT UP AND HEAVY DOWN % ╽ -> '|' % BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT % ╾ -> '-' % BOX DRAWINGS HEAVY UP AND LIGHT DOWN % ╿ -> '|' % WHITE CIRCLE % ○ -> 'o' % WHITE BULLET % ◦ -> 'o' % BLACK STAR % ★ -> '*' % WHITE STAR % ☆ -> '*' % BALLOT BOX WITH X % ☒ -> 'X' % SALTIRE % ☓ -> 'X' % WHITE FROWNING FACE % ☹ -> ':-(' "" % WHITE SMILING FACE % ☺ -> ':-)' "" % BLACK SMILING FACE % ☻ -> '(-:' "" % MUSIC FLAT SIGN % ♭ -> 'b' % MUSIC SHARP SIGN % ♯ -> '#' % UPPER BLADE SCISSORS % ✁ -> '%<' "" % BLACK SCISSORS % ✂ -> '%<' "" % LOWER BLADE SCISSORS % ✃ -> '%<' "" % WHITE SCISSORS % ✄ -> '%<' "" % VICTORY HAND % ✌ -> 'V' % CHECK MARK % ✓ -> '√' % HEAVY CHECK MARK % ✔ -> '√' % MULTIPLICATION X % ✕ -> 'x' % HEAVY MULTIPLICATION X % ✖ -> 'x' % BALLOT X % ✗ -> 'X' % HEAVY BALLOT X % ✘ -> 'X' % OUTLINED GREEK CROSS % ✙ -> '+' % HEAVY GREEK CROSS % ✚ -> '+' % OPEN CENTRE CROSS % ✛ -> '+' % HEAVY OPEN CENTRE CROSS % ✜ -> '+' % LATIN CROSS % ✝ -> '+' % SHADOWED WHITE LATIN CROSS % ✞ -> '+' % OUTLINED LATIN CROSS % ✟ -> '+' % MALTESE CROSS % ✠ -> '+' % STAR OF DAVID % ✡ -> '*' % FOUR TEARDROP-SPOKED ASTERISK % ✢ -> '+' % FOUR BALLOON-SPOKED ASTERISK % ✣ -> '+' % HEAVY FOUR BALLOON-SPOKED ASTERISK % ✤ -> '+' % FOUR CLUB-SPOKED ASTERISK % ✥ -> '+' % BLACK FOUR POINTED STAR % ✦ -> '+' % WHITE FOUR POINTED STAR % ✧ -> '+' % STRESS OUTLINED WHITE STAR % ✩ -> '*' % CIRCLED WHITE STAR % ✪ -> '*' % OPEN CENTRE BLACK STAR % ✫ -> '*' % BLACK CENTRE WHITE STAR % ✬ -> '*' % OUTLINED BLACK STAR % ✭ -> '*' % HEAVY OUTLINED BLACK STAR % ✮ -> '*' % PINWHEEL STAR % ✯ -> '*' % SHADOWED WHITE STAR % ✰ -> '*' % HEAVY ASTERISK % ✱ -> '*' % OPEN CENTRE ASTERISK % ✲ -> '*' % EIGHT SPOKED ASTERISK % ✳ -> '*' % EIGHT POINTED BLACK STAR % ✴ -> '*' % EIGHT POINTED PINWHEEL STAR % ✵ -> '*' % SIX POINTED BLACK STAR % ✶ -> '*' % EIGHT POINTED RECTILINEAR BLACK STAR % ✷ -> '*' % HEAVY EIGHT POINTED RECTILINEAR BLACK STAR % ✸ -> '*' % TWELVE POINTED BLACK STAR % ✹ -> '*' % SIXTEEN POINTED ASTERISK % ✺ -> '*' % TEARDROP-SPOKED ASTERISK % ✻ -> '*' % OPEN CENTRE TEARDROP-SPOKED ASTERISK % ✼ -> '*' % HEAVY TEARDROP-SPOKED ASTERISK % ✽ -> '*' % SIX PETALLED BLACK AND WHITE FLORETTE % ✾ -> '*' % BLACK FLORETTE % ✿ -> '*' % WHITE FLORETTE % ❀ -> '*' % EIGHT PETALLED OUTLINED BLACK FLORETTE % ❁ -> '*' % CIRCLED OPEN CENTRE EIGHT POINTED STAR % ❂ -> '*' % HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK % ❃ -> '*' % SNOWFLAKE % ❄ -> '*' % TIGHT TRIFOLIATE SNOWFLAKE % ❅ -> '*' % HEAVY CHEVRON SNOWFLAKE % ❆ -> '*' % SPARKLE % ❇ -> '*' % HEAVY SPARKLE % ❈ -> '*' % BALLOON-SPOKED ASTERISK % ❉ -> '*' % EIGHT TEARDROP-SPOKED PROPELLER ASTERISK % ❊ -> '*' % HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK % ❋ -> '*' % LATIN SMALL LIGATURE FF % ff -> 'ff' "" % LATIN SMALL LIGATURE FI % fi -> 'fi' "" % LATIN SMALL LIGATURE FL % fl -> 'fl' "" % LATIN SMALL LIGATURE FFI % ffi -> 'ffi' "" % LATIN SMALL LIGATURE FFL % ffl -> 'ffl' "" % LATIN SMALL LIGATURE LONG S T % ſt -> 'ſt', 'st' "";"" % LATIN SMALL LIGATURE ST % st -> 'st' "" % ZERO WIDTH NO-BREAK SPACE %  -> "" % REPLACEMENT CHARACTER % � -> '?' ./doc/notinstalled/translation.txt0000644000175000017500000000062107547466160017417 0ustar henrichhenrichbg Alexander Shopov 17,18 de Thomas Wohlfarth 16,17,18 es Juan Rafael Fernández García 17,18 fi Miikka-Markus Alhonen 17,18 ko Jungshik Shin 17,18 vi Hoan 17,18 yi Raphael Finkel 16,17,18 zh Joe Man 16,17,18 ./doc/notinstalled/ttf-scale.txt0000644000175000017500000001150207532460062016730 0ustar henrichhenrichttf2afm problems solved Ulrik Vieth vieth@thphy.uni-duesseldorf.de Fri, 29 May 1998 13:57:05 +0200 Previous message: explanation of test message Next message: ttf2afm problems solved Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] After all this discussion, I've downloaded and tried out ttfdump myself, and I think it is clear now, what needs to be done: > ; TrueType v1.0 Dump Program - v1.60, Jul 10 1995, rrt, dra, gch, ddb, lcp > ; Copyright (C) 1991 ZSoft Corporation. All rights reserved. > ; Portions Copyright (C) 1991-1995 Microsoft Corporation. All rights reserved. > > ; Dumping file '\windows\system\times.ttf' > > > 'head' Table - Font Header > -------------------------- > Size = 54 bytes (expecting 54 bytes) > 'head' version: 1.0 > fontRevision: 1.0 > checkSumAdjustment: 0xA92387E7 > magicNumber: 0x5F0F3CF5 > flags: 0x0019- baseline(y)=0 - int ppem - nonlin aw > unitsPerEm: 2048 This seems to be the scale factor that needs to applied to all values written to AFM file. In the examples I checked, I have seen values of 1000 as well 2048, so it appears that 'unitsPerEm' doesn't always have to be a power of 2. > created: Mon Aug 06 21:14:42 1990 > modified: Fri Jan 31 04:26:07 1992 > xMin: -157 > yMin: -442 > xMax: 2066 > yMax: 1797 These might be the FontBBox values in scaled units. Are they really? (yMin and xMax match ttf2afm's values, but xMin and yMax are different.) > macStyle bits: 0x0000 > lowestRecPPEM: 11 > fontDirectionHint: 1 > indexToLocFormat: 0 > glyphDataFormat: 0 > > 'hhea' Table - Horizontal Header > -------------------------------- > Size = 36 bytes (expecting 36 bytes) > 'hhea' version: 1.0 > yAscender: 1825 > yDescender: -443 These are not quite the values of Ascender and Descender we need for the AFM files. There are better elsewhere, see below. > yLineGap: 87 > advanceWidthMax: 2048 > minLeftSideBearing: -157 > minRightSideBearing: -208 > xMaxExtent: 2066 > horizCaretSlopeNum: 1 > horizCaretSlopeDenom: 0 > reserved0: 0 > reserved1: 0 > reserved2: 0 > reserved3: 0 > reserved4: 0 > metricDataFormat: 0 > numOf_LongHorMetrics: 220 > > 'OS/2' Table - OS/2 and Windows Metrics > --------------------------------------- > Size = 78 bytes (expecting 78 bytes) > 'OS/2' version: 0 > xAvgCharWidth: 821 > usWeightClass: 400 > usWidthClass: 5 > fsType: 0x0000 > ySubscriptXSize: 1434 > ySubscriptYSize: 1331 > ySubscriptXOffset: 0 > ySubscriptYOffset: 293 > ySuperscriptXSize: 1434 > ySuperscriptYSize: 1331 > ySuperscriptXOffset: 0 > ySuperscriptYOffset: 928 > yStrikeoutSize: 102 > yStrikeoutPosition: 530 This is potentially interesting information for math fonts. Unfortunately, there doesn't seem to be standard method for representing these values in AFM files. 1434 * 10.00 / 2048 = 7.00pt = scriptsize width ratio 1331 * 10.00 / 2048 = 6.49pt = scriptsize height ratio 293 * 10.00 / 2048 = 1.43pt = top(?) of superscript 928 * 10.00 / 2048 = 4.53pt = bottom of superscript 102 * 10.00 / 2048 = 0.49pt = rule_thickness 530 * 10.00 / 2048 = 2.58pt = math_axis > sFamilyClass: 1 subclass = 5 > PANOSE: 2 2 6 3 5 4 5 2 3 4 > Character Range: 0x00000000000000000000000000000000 > achVendID: 'Mono' > fsSelection 0x0040 > usFirstCharIndex: 0x0020 > usLastCharIndex: 0x2219 > sTypoAscender 1420 > sTypoDescender -442 These are the good values of Ascender and Descender in scaled units. 1420 * 1000 / 2048 = 693 (height of 'f') -442 * 1000 / 2048 = -215 (depth of 'g') > sTypoLineGap 307 > usWinAscent 1825 > usWinDescent 443 These are the values of Ascender and Descender which have been used so far. Apart from missing the scale factor 'usWinAscent' is quite different from 'sTypeAscender', so these are not what we want. > > 'post' Table - PostScript Metrics > --------------------------------- > Size = 492 bytes > 'post' version: 2.0 > italicAngle: 0.0000 > underlinePosition: -223 > underlineThickness: 100 > isFixedPitch: 0 These are the values copied to the AFM file. Again, the scale factor (of 2048) needs to be applied to get consistent results. That's all. Hope it is clear now, what needs to be done to get the remaining ttf2afm problems fixed, once and for all. Cheers, Ulrik. ./doc/notinstalled/missingtranslations.txt0000644000175000017500000000606207564057312021173 0ustar henrichhenrichHi Guys, Thank you very much for # # This sets the embedding of the Document # Left-, Rright- or no-embedding. # The text will be alignem to the left/right or depending on # the implicit initial paragraph directionality both. # File: SToolBar.cpp, line: 508 msgid "Document __T__ext Embedding" msgstr "" # # This starts an LRE / PDF or RLE /PDF explicit text embedding # # File: SToolBar.cpp, line: 510 msgid "__E__mbedding Override" msgstr "" # # This starts an LRO / PDF or RLO /PDF explicit text embedding with # The implicit directionality of the embeeded characters is overridden. # # # File: SToolBar.cpp, line: 509 #, fuzzy msgid "__D__irection Override" msgstr "" # # This resets embedding of selected text, or gets out of # current embedding. # # File: SToolBar.cpp, line: 511 msgid "__Y__ield Embedding" msgstr "" # # This is printed when a selected text has beed converted with a # Yield Embedding button. # # File: SYudit.cpp, line: 595 msgid "Direction of selected text has been re-set." msgstr "" # # This is printed when the last line in the saved text file does # not have a proper line-ending character. # # File: SYudit.cpp, line: 1221 # File: SYudit.cpp, line: 1352 msgid " Incomplete Last Line..." msgstr "" Notes: o The lines with #,fuzzy comment is not good because they indicate a mistaken translation, this comment should be removed from po files after chacking the translation. o The character between underbars (__X__) will be underlined and will indicate the shortcut. So __Y__ield Embedding should be translated as csinalj vmit (__Y__) to kep the shortcut intact. Thank you very much! Gaspar --------------------------------------------------------------------------- am Amharic/Ethiopia Daniel Yacob ar Arabic/ Mohamed kebdani az Azerbaijani Turkish Vasif İsmailoglu bn Bengali Anirban Mitra bg Bulgaria/Bulgarian Alexander Shopov de Germany/German Thomas Wohlfarth es Spain/Spanish Juan Rafael Fernández García fi Finland/Finnish Miikka-Markus Alhonen fr France/French Olivier Faucheux hi Hindi Sanjay Khatri ko Korea/Korean Jungshik Shin pl Polish/Poland Pawel Zawila-Niedzwiecki sl Slovenia/Slovenian Roman Maurer sr Yugoslavia/Serbian Slobodan Marković ta Tamil Thuraiappah Vaseeharan uk Ukrainian Solotskyy Mykola ur Urdu/Pakistan S H A N vi Vietnamese/Vietnam Hoan yi Israel/Yiddish Raphael Finkel zh Chinese/HongKong Joe Man ---------------------------------------------------------------------------- ./doc/notinstalled/rovas.html0000644000175000017500000000462607532460062016336 0ustar henrichhenrich Rovasiras Page

        Rovásírás Lap

        Kostantinápolyi felirat

        ‮‬
                 
             
               

        Székely himnusz összevonásokkal

         

          ,    ,
         ,   .

            ,
          .

             ,
           .

             ,
            !

        Székely himnusz összevonások nélkül

         

          ,    ,
         ,   .

            ,
          .

             ,
           .

             ,
            ! ./doc/ru/0000755000175000017500000000000011334661334012234 5ustar henrichhenrich./doc/ru/FAQ.TXT0000644000175000017500000004065311334661334013254 0ustar henrichhenrichЧасто задаваемые вопросы о редакторе UNICODE текста Yudit ========================================================= Версия: 2.9.2 Автор: Гаспар Синай , 21-05-2006, Токио Адаптация и перевод: Диконов Вячеслав, 10-12-2002, Москва В1: Как увидеть этот текст повторно? О1: Наберите «help» в командной строке. Командой «test» можно вызвать тестовую страницу, а введя команды «howto japanese», «howto configure» вы увидите соответствующие страницы помощи. В2: Где найти новые версии программы? О2: Их можно скачать по адресу http://www.yudit.org/ . В3: После нажатия кнопки «Сохранить» ничего не происходит. Почему? О3: В Yudit есть командная строка. Скорее всего нужно просто нажать клавишу «Enter». В4: Что означает кнопка [Символ конца строки] справа, где обычно написано «Юникс»? О4: Существует несколько различных способов обозначения конца строки: Юникс=\n - символ конца строки используемый в ЮНИКС ДОС=\r\n - символ конца строки ДОС Макинтош=\r - символ конца строки в МакОС Параграф Unicode= U+2029 - Разделитель параграфов Unicode Yudit позволяет смешивать разные типы, например можно создать файл содержащий как ДОС, так и Юникс разделители строк.Однако этого следует избегать. В5: Как получить список поддерживаемых кодировок(параметр -e)? О5: Введите команды «man uniconv» или «uniconv -h» в системной консоли. В6: Как добавить собственную раскладку клавиатуры? О6: Если файл с описанием подходящей раскладки уже есть в каталоге /usr/share/yudit/data, то нужно нажать на кнопку с индикатором текущей раскладки и ввести её в список из 12 активных раскладок. Если нужной раскладки нет в комплекте редактора, то можно самостоятельно описать нужный вариант клавиатуры в файле kmap. После этого следует преобразовать kmap файл в двоичный формат командой: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Затем нужно скопировать файл My.my в каталог ~/.yudit/data. cp My.my ~/.yudit/data Пришлите, пожалуйста, ваш исходный kmap файл автору Yudit для включения его в следующую версию редактора. Подробное описа- ние формата kmap находится в файле /usr/share/yudit/doc/keymap-format.txt. Стандартные kmap файлы из комплекта редактора находятся в ка- талоге /usr/share/yudit/src/. Обратите внимание, что kmap файлы могут быть использованы для преобразования текстов и описания кодировки шрифтов. В7: Как перевести пользовательский интерфейс на родной язык? О7: Для этого нужно скачать исходный текст программы. В файле README.TXT Вы найдёте описание того, как сделать перевод. Пришлите, пожалуйста, новый перевод автору Yudit для включе- ния в следующую версию программы. В8: Как добавить новый шрифт формата TrueType? О8: Поместите TTF файлы в каталоги /usr/share/yudit/fonts или ~/.yudit/fonts. Затем отредактируйте файл /usr/share/yudit/config/yudit.properties, добавив новый виртуальный шрифт MyFont: yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Чтобы начать пользоваться шрифтом надо добавить его в список шрифтов редактора: yudit.editor.fonts=...,MyFont,... или в список шрифтов интерфейса: yudit.fonts=...,MyFont,... В9: Будет ли версия для Windows? О9: Yudit никак не связан с используемой графической средой. Это даёт возможность быстро перенести Yudit в любую ОС или, например, на svgalib. Первая и единственная версия для Win32 была создана в декабре 2001 года. Никаких планов переноса Yudit на эту платформу нет. В10: Насколько хорош Yudit как редактор Unicode текста? О10: При создании программы прилагались все усилия для исполь- зования и поддержки стандарта Unicode во всех случаях, когда это имело смысл. В11: При запуске программы в командной строке были заданы имена трёх файлов, но лишь один из них был открыт для редактирования. Почему? О11: Остальные файлы находятся в списке недавно открывавшихся. Для выбора файла из этого списка следует перейти в командную строку и нажать клавиши «Стрелка вверх» (или Ctrl-k) или «Стрелка вниз» (или Ctrl-j). В12: Какие горячие клавиши используются в Yudit? О12: Большинство горячих клавиш перечислено в появляющихся над кнопками подсказках (жёлтого цвета). Большинство горячих кла- виш действуют одинаково при нажатии с Ctrl и Alt. Встроенный редактор поддерживает следующие комбинации: Escape - переключение между режимами редактирования и команд Home - переход к началу строки End - переход к концу строки b - на страницу вверх f - на страницу вниз k - вверх n,j - вниз h - налево l - направо m - удалить строку целиком x - удалить выделенную часть текста v - вставить выделенный последним фрагмент текста Удерживание Meta клавиши во время перемещения курсора приво- дит к выделению текста. Двойной щелчок мыши выделяет слово, тройной - всю строку. В13: Как прочесть содержимое двоичного файла раскладки? О13: Можно декомпилировать двоичный файл при помощи команды: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys В14: Есть ли быстрый способ вводе символа unicode? О14: Выберите раскладку [unicode], введите код символа в виде uxxxx или Uxxxxxxxx, где x - шестнадцатиричное число. В15: Есть ли у Yudit функции поиска/замены фрагментов текста? О15: Нужно набрать в командной строке «replace "исходный текст" "новый текст"». Нажатие клавиши «Enter» производит очередную операцию поиска/замены. В16: Как вызвать функцию распознавания рукописного ввода? О16: Нажмите кнопку с синей стрелкой (выбор раскладки клавиатуры) и ассоциируйте метод ввода «freehand» с одной из функциональных клавиш. В17: Как выключить подсветку групп символов? О17: Введите команду «syntax none». Если набрать только слово «syntax», то в сообщении об ошибке будут перечислены все возможные аргументы. Этот параметр также можно изменить отредактировав личный файл настроек. В18: Как отключить перенос строк? О18: Введите команду «wordwrap false». Команда «wordwrap true» включает режим автоматического переноса строк. Этот параметр можно изменить отредактировав файл настроек. В19: Может ли Yudit работать со старыми не UNICODE текстами? О19: Да. Редактор понимает множество различных кодировок, но не имеет функции автораспознавания. При открытии файла надо выбрать соответствующий тип текста из списка справа. Если текст содержит псевдографику или таблицы, то нужно исполь- зовать моноширинный шрифт подобный FreeMono из пакета UCS FreeFont либо растровые шрифты. Приложение ========== Примеры раскладок клавиатуры Здесь вы найдёте описание некоторых раскладок клавиатуры из комплекта редактора Yudit. Russian Стандартная раскладка «ЙЦУКЕН» в версии Микрософт (обычная клавиатура). Russian-Extended Раскладка «ЙЦУКЕН» с поддержкой специальных последователь- ностей для ввода дополнительных букв кириллицы и типограф- ских символов. Позволяет вводить текст в дореволюционной орфографии, на белорусском, украинском, болгарском языках. Дополнительные буквы: D- - Ђ, G' - Ѓ, E> - Є, Z> - Ѕ, I/ - І, I: - Ї, J< - Ј, L> - Љ, N> - Њ, C' - Ћ, K' - Ќ, U' - Ў, D> - Џ, G` - Ґ, E< - Ѣ (ять), A< - Ѫ (юс большой), F` - Ѳ (фита), Y` - Ѵ (ижица), то же для строчных букв. Типографские знаки: << - « (открывающие угловые кавычки), >> - » (закрывающие угловые кавычки), ,, - „ (открывающие кавычки), `` - “ (закрывающие кавычки), '' - ' (апостроф), C) - ©, x) - • (пулька), :) - ☺, :( - ☹, C- - ¤, E- - €, L- - £. Russian-JAVERTY Раскладка «ЯВЕРТЫ». Применяется при отсутствии изображений букв кириллицы на клавишах клавиатуры. Russian-Translit Подобно предыдущей используется если русской клавиатуры нет под руками, но использует транслитерационный ввод. Некоторые буквы вводятся только при помощи последователь- ностей латинских символов. Некоторые менее очевидные сочетания: yo - ё, c - ь, q - ъ, x - ы, ee - э. Russian-Translit-German Использует немецкую транслитерацию, например: jh - ж, s - з, wz - ь, sch - ш, schtsch - щ, и т.д. Russian-Translit-Slovene Использует транслитерацию, привычную для носителей западно-славянских языков: польского, чешского, словенского и т.д. Учитывает особенности клавиатур, размеченных по стандарту ISO8859-2. Russian-ISO-Latinitsa Предназначена для записи русского текста латиницей по принятому ISO стандарту. Для замены недостающих букв кириллицы используются акцентированные символы, подобные применяемым в польском и чешском языках. Примеры: A^ -  (вместо Я) C< - Č (вместо Ч) E` - È (вместо Э) E: - Ë (вместо Ё) S< - Š (вместо Ш) S^ - Ŝ (вместо Щ) U^ - Û (вместо Ю) Z< - Ž (вместо Ж) ... тоже самое для строчных букв ' - ′ (вместо Ь/ь) '' - ″ (вместо Ъ/ъ) Belarusian Белорусская раскладка, имитирующая стандартную клавиатуру STB955-94. Позволяет вводить дополнительные символы при помощи тех же сочетаний-мнемоник что и в раскладке Russian-Extended. Ukrainian Украинская раскладка. Ukrainian-Extended Расширенная украинская раскладка. Ukrainian-Translit Транслитерационная украинская раскладка. Hungarian Включает буквы немецкого и венгерского алфавитов. Акценты вводятся в виде сочетаний английская буква + акцент. Примеры: a' - á , o: - ö , o" - ő, SS - ß , Ss - §. Kana Предназначена для ввода японского текста и преобразует ромаджи в хирагана и катакана. Строчные буквы используются для хирагана, а заглавные для катакана. Не слишком очевидные сочетания: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Позволяет вводить символы посредством мнемоник RFC1345. Примеры: &0u - ☺, &0U - ☻, &tel - ☏, &PI - ¶ &SU - ☼, &cH - ♥, &M2 - ♫, &sn - ش SGML Преобразует нотацию SGML в уникод. Примеры: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul Предназначена для ввода корейского текста посредством латинской транслитерации. Используется стандартный метод ISO/TC46/SC2/WG4. Подробное описание доступно по адресу http://www.hansoft.com/hangul/faq.html Примеры: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선 jageug - 자극 hwang geum 황금 ./doc/ru/FAQ.TXT.in0000644000175000017500000004062311331217550013650 0ustar henrichhenrichЧасто задаваемые вопросы о редакторе UNICODE текста Yudit ========================================================= Версия: 2.9.2 Автор: Гаспар Синай , 21-05-2006, Токио Адаптация и перевод: Диконов Вячеслав, 10-12-2002, Москва В1: Как увидеть этот текст повторно? О1: Наберите «help» в командной строке. Командой «test» можно вызвать тестовую страницу, а введя команды «howto japanese», «howto configure» вы увидите соответствующие страницы помощи. В2: Где найти новые версии программы? О2: Их можно скачать по адресу http://www.yudit.org/ . В3: После нажатия кнопки «Сохранить» ничего не происходит. Почему? О3: В Yudit есть командная строка. Скорее всего нужно просто нажать клавишу «Enter». В4: Что означает кнопка [Символ конца строки] справа, где обычно написано «Юникс»? О4: Существует несколько различных способов обозначения конца строки: Юникс=\n - символ конца строки используемый в ЮНИКС ДОС=\r\n - символ конца строки ДОС Макинтош=\r - символ конца строки в МакОС Параграф Unicode= U+2029 - Разделитель параграфов Unicode Yudit позволяет смешивать разные типы, например можно создать файл содержащий как ДОС, так и Юникс разделители строк.Однако этого следует избегать. В5: Как получить список поддерживаемых кодировок(параметр -e)? О5: Введите команды «man uniconv» или «uniconv -h» в системной консоли. В6: Как добавить собственную раскладку клавиатуры? О6: Если файл с описанием подходящей раскладки уже есть в каталоге @YUDIT_DATA@/data, то нужно нажать на кнопку с индикатором текущей раскладки и ввести её в список из 12 активных раскладок. Если нужной раскладки нет в комплекте редактора, то можно самостоятельно описать нужный вариант клавиатуры в файле kmap. После этого следует преобразовать kmap файл в двоичный формат командой: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Затем нужно скопировать файл My.my в каталог ~/.yudit/data. cp My.my ~/.yudit/data Пришлите, пожалуйста, ваш исходный kmap файл автору Yudit для включения его в следующую версию редактора. Подробное описа- ние формата kmap находится в файле @YUDIT_DATA@/doc/keymap-format.txt. Стандартные kmap файлы из комплекта редактора находятся в ка- талоге @YUDIT_DATA@/src/. Обратите внимание, что kmap файлы могут быть использованы для преобразования текстов и описания кодировки шрифтов. В7: Как перевести пользовательский интерфейс на родной язык? О7: Для этого нужно скачать исходный текст программы. В файле README.TXT Вы найдёте описание того, как сделать перевод. Пришлите, пожалуйста, новый перевод автору Yudit для включе- ния в следующую версию программы. В8: Как добавить новый шрифт формата TrueType? О8: Поместите TTF файлы в каталоги @YUDIT_DATA@/fonts или ~/.yudit/fonts. Затем отредактируйте файл @YUDIT_DATA@/config/yudit.properties, добавив новый виртуальный шрифт MyFont: yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Чтобы начать пользоваться шрифтом надо добавить его в список шрифтов редактора: yudit.editor.fonts=...,MyFont,... или в список шрифтов интерфейса: yudit.fonts=...,MyFont,... В9: Будет ли версия для Windows? О9: Yudit никак не связан с используемой графической средой. Это даёт возможность быстро перенести Yudit в любую ОС или, например, на svgalib. Первая и единственная версия для Win32 была создана в декабре 2001 года. Никаких планов переноса Yudit на эту платформу нет. В10: Насколько хорош Yudit как редактор Unicode текста? О10: При создании программы прилагались все усилия для исполь- зования и поддержки стандарта Unicode во всех случаях, когда это имело смысл. В11: При запуске программы в командной строке были заданы имена трёх файлов, но лишь один из них был открыт для редактирования. Почему? О11: Остальные файлы находятся в списке недавно открывавшихся. Для выбора файла из этого списка следует перейти в командную строку и нажать клавиши «Стрелка вверх» (или Ctrl-k) или «Стрелка вниз» (или Ctrl-j). В12: Какие горячие клавиши используются в Yudit? О12: Большинство горячих клавиш перечислено в появляющихся над кнопками подсказках (жёлтого цвета). Большинство горячих кла- виш действуют одинаково при нажатии с Ctrl и Alt. Встроенный редактор поддерживает следующие комбинации: Escape - переключение между режимами редактирования и команд Home - переход к началу строки End - переход к концу строки b - на страницу вверх f - на страницу вниз k - вверх n,j - вниз h - налево l - направо m - удалить строку целиком x - удалить выделенную часть текста v - вставить выделенный последним фрагмент текста Удерживание Meta клавиши во время перемещения курсора приво- дит к выделению текста. Двойной щелчок мыши выделяет слово, тройной - всю строку. В13: Как прочесть содержимое двоичного файла раскладки? О13: Можно декомпилировать двоичный файл при помощи команды: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys В14: Есть ли быстрый способ вводе символа unicode? О14: Выберите раскладку [unicode], введите код символа в виде uxxxx или Uxxxxxxxx, где x - шестнадцатиричное число. В15: Есть ли у Yudit функции поиска/замены фрагментов текста? О15: Нужно набрать в командной строке «replace "исходный текст" "новый текст"». Нажатие клавиши «Enter» производит очередную операцию поиска/замены. В16: Как вызвать функцию распознавания рукописного ввода? О16: Нажмите кнопку с синей стрелкой (выбор раскладки клавиатуры) и ассоциируйте метод ввода «freehand» с одной из функциональных клавиш. В17: Как выключить подсветку групп символов? О17: Введите команду «syntax none». Если набрать только слово «syntax», то в сообщении об ошибке будут перечислены все возможные аргументы. Этот параметр также можно изменить отредактировав личный файл настроек. В18: Как отключить перенос строк? О18: Введите команду «wordwrap false». Команда «wordwrap true» включает режим автоматического переноса строк. Этот параметр можно изменить отредактировав файл настроек. В19: Может ли Yudit работать со старыми не UNICODE текстами? О19: Да. Редактор понимает множество различных кодировок, но не имеет функции автораспознавания. При открытии файла надо выбрать соответствующий тип текста из списка справа. Если текст содержит псевдографику или таблицы, то нужно исполь- зовать моноширинный шрифт подобный FreeMono из пакета UCS FreeFont либо растровые шрифты. Приложение ========== Примеры раскладок клавиатуры Здесь вы найдёте описание некоторых раскладок клавиатуры из комплекта редактора Yudit. Russian Стандартная раскладка «ЙЦУКЕН» в версии Микрософт (обычная клавиатура). Russian-Extended Раскладка «ЙЦУКЕН» с поддержкой специальных последователь- ностей для ввода дополнительных букв кириллицы и типограф- ских символов. Позволяет вводить текст в дореволюционной орфографии, на белорусском, украинском, болгарском языках. Дополнительные буквы: D- - Ђ, G' - Ѓ, E> - Є, Z> - Ѕ, I/ - І, I: - Ї, J< - Ј, L> - Љ, N> - Њ, C' - Ћ, K' - Ќ, U' - Ў, D> - Џ, G` - Ґ, E< - Ѣ (ять), A< - Ѫ (юс большой), F` - Ѳ (фита), Y` - Ѵ (ижица), то же для строчных букв. Типографские знаки: << - « (открывающие угловые кавычки), >> - » (закрывающие угловые кавычки), ,, - „ (открывающие кавычки), `` - “ (закрывающие кавычки), '' - ' (апостроф), C) - ©, x) - • (пулька), :) - ☺, :( - ☹, C- - ¤, E- - €, L- - £. Russian-JAVERTY Раскладка «ЯВЕРТЫ». Применяется при отсутствии изображений букв кириллицы на клавишах клавиатуры. Russian-Translit Подобно предыдущей используется если русской клавиатуры нет под руками, но использует транслитерационный ввод. Некоторые буквы вводятся только при помощи последователь- ностей латинских символов. Некоторые менее очевидные сочетания: yo - ё, c - ь, q - ъ, x - ы, ee - э. Russian-Translit-German Использует немецкую транслитерацию, например: jh - ж, s - з, wz - ь, sch - ш, schtsch - щ, и т.д. Russian-Translit-Slovene Использует транслитерацию, привычную для носителей западно-славянских языков: польского, чешского, словенского и т.д. Учитывает особенности клавиатур, размеченных по стандарту ISO8859-2. Russian-ISO-Latinitsa Предназначена для записи русского текста латиницей по принятому ISO стандарту. Для замены недостающих букв кириллицы используются акцентированные символы, подобные применяемым в польском и чешском языках. Примеры: A^ -  (вместо Я) C< - Č (вместо Ч) E` - È (вместо Э) E: - Ë (вместо Ё) S< - Š (вместо Ш) S^ - Ŝ (вместо Щ) U^ - Û (вместо Ю) Z< - Ž (вместо Ж) ... тоже самое для строчных букв ' - ′ (вместо Ь/ь) '' - ″ (вместо Ъ/ъ) Belarusian Белорусская раскладка, имитирующая стандартную клавиатуру STB955-94. Позволяет вводить дополнительные символы при помощи тех же сочетаний-мнемоник что и в раскладке Russian-Extended. Ukrainian Украинская раскладка. Ukrainian-Extended Расширенная украинская раскладка. Ukrainian-Translit Транслитерационная украинская раскладка. Hungarian Включает буквы немецкого и венгерского алфавитов. Акценты вводятся в виде сочетаний английская буква + акцент. Примеры: a' - á , o: - ö , o" - ő, SS - ß , Ss - §. Kana Предназначена для ввода японского текста и преобразует ромаджи в хирагана и катакана. Строчные буквы используются для хирагана, а заглавные для катакана. Не слишком очевидные сочетания: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic Позволяет вводить символы посредством мнемоник RFC1345. Примеры: &0u - ☺, &0U - ☻, &tel - ☏, &PI - ¶ &SU - ☼, &cH - ♥, &M2 - ♫, &sn - ش SGML Преобразует нотацию SGML в уникод. Примеры: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul Предназначена для ввода корейского текста посредством латинской транслитерации. Используется стандартный метод ISO/TC46/SC2/WG4. Подробное описание доступно по адресу http://www.hansoft.com/hangul/faq.html Примеры: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선 jageug - 자극 hwang geum 황금 ./doc/bg/0000755000175000017500000000000011334661334012176 5ustar henrichhenrich./doc/bg/FAQ.TXT0000644000175000017500000002756411334661334013224 0ustar henrichhenrichЧесто задавани въпроси за редактора на Уникод — Юдит (Yudit) ================================================================ Версия: 2.9.2 Автор : Гаспар Синай (Gaspar Sinai) Дата : Токио, 2007-12-22 В1: Как мога отново да видя този списък с въпроси и отговори? О1: Напишете „help“ в областта за команди. По аналогия ще видите тестова страница, ако напишете „test“ в областта за команди. Напишете „howto japanese“, „howto configure“, за да видите съответните документи. В2: Откъде мога да получа новите версии на програмата? О2: Можете да ги свалите от http://www.yudit.org/ В3: Натиснах бутона за записване, обаче нищо не се случва. Защо? О3: Юдит работи със своя област за команди. Най-вероятно трябва да натиснете бутона „Enter“. В4: Какво означава бутона [Край на ред] горе вдясно, който най-често показва „Unix“? О4: Символите за край на ред са: UNIX = „\n“ - Край на ред в Юникс DOS = „\r\n“ - Край на ред в ДОС MAC = „\r“ - Край на ред в Макинтош LS = U+2028 - Разделител за редове в Уникод PS = U+2029 - Разделител за абзаци в Уникод В Юдит можете да смесвате разделителите на редове - например, можете да създадете файл с разделители на ДОС и Юникс. По възможност избягвайте да смесвате различните разделители в рамките на един файл. В5: Как мога да получа списъка с поддържаните кодирания (опцията -e)? O5: Въведете „man uniconv" или „uniconv -h" в прозорец на обвивката. В6: Как мога да добавя мой файл за начин за въвеждане от клавиатурата? О6: Подобен файл може вече да съществува в /usr/share/yudit В такъв случай просто трябва да го добавите в /usr/share/yudit/config/yudit.properties Ако го няма, трябва да прехвърлите входния файл kmap в двоичен формат: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my След това трябва да копирате My.my в ~/.yudit/data cp My.my ~/.yudit/data Ако обичате, изпратете ми Вашия файл kmap (в изходен вид), за да го включа в следващата версия. За повече информация за файловете kmap, проверете в /usr/share/yudit/doc/keymap-format.txt Изходният код на файловете kmap, които идват с yudit са в /usr/share/yudit/src/ Забележете, че файловете kmap могат да се използват и като конвертори за текстове и като карти на клавиши. В7: Как мога да получавам съобщенията на собствения си език? О7: Изтеглете изходния код и прочетете файла README.TXT. В него е описано какво да направите. Ако обичате, изпратете ми превода си, за да го включа в следващите версии. В8: Как мога да добавя шрифт във формат TrueType? О8: Сложете файла-на-шрифта.ttf и друг-файл-ако-искате.ttf в /usr/share/yudit/fonts или ~/.yudit/fonts След това променете /usr/share/yudit/config/yudit.properties като добавите нов виртуален шрифт MyFont yudit.font.MyFont=файла-на-шрифта.ttf,друг-файл-ако-искате.ttf,.. След това можете да използвате тези шрифтове в прозореца за редакция, ако го добавите в: yudit.editor.fonts=...,MyFont,... или можете да го използвате в графичния интерфейс, ако го добавите в: yudit.fonts=...,MyFont,... В9: Ще има ли версия за Уиндоус? О9: Юдит ползва комплект от абстрактни графични обекти. Това позволява много лесно да бъде пренасян към графични среди като svgalib. Аз пренесох програмата за моята съпруга Юко през декември 2001г. Това бе първият и последен път, когато се докоснах до Уиндоус. В10: Доколко добър редактор за Уникод е Юдит? О10: Опитах се да се придържам към стандарта Уникод, където това е смислено. Има някои особености, проверете файла: /usr/share/yudit/doc/HOWTO-bidi.txt за информация относно придържането към правилата за двупосочно писане. Поддържа се съставяне на символи, сега работя по оформяне на символи. В11: Посочих три файла на командния ред, а виждам само един. О11: Останалите са в историческия буфер. Ако отидете на командния ред в редактора и натиснете Стрелка_нагоре (или Ctrl-k) или Стрелка_надолу (или Ctrl-j), можете да преминете през историята на файловете. В12: Кои са бързите клавиши? О12: Можете да видите повечето от тях - жълтите подсказки ги показват подчертани. Повечето от тях трябва да работят и при натиснат Shift и/или Alt клавиш. Редакторът в момента разполага със следните бързи клавиши: Escape - Смяна на команден режим с режим редактиране и обратно Home - Отиване в началото на документа b - Страница нагоре f - Страница надолу k - Нагоре n,j - Надолу h - Наляво l - Надясно m - Изтриване на целия ред x - Изтриване на избрания текст v - Вмъкване на последно избрания текст Ако е натиснат Shift (или Meta, или и двата) по време на движение на курсора, текстът се избира. Двойно натискане с мишката избира дума, тройно - цял ред. В13: Как мога да разгледам съдържанието на двоичен файл keymap? О13: Можете да го превърнете в изходен вид с командата: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys В14: Как мога бързо да въведа знак от Уникод? О14: Сменете типа на въведените данни към [unicode], въведете uxxxx или Uxxxxxxxx, където x е шестнадесетично число. В15: Има ли Юдит функция за търсене и заместване? О15: В областта за команди напишете replace стар-текст нов-текст и натискайте Enter, за всяко намиране и заместване. В16: Как мога да ползвам въвеждане с изписване на буквата? О16: Натиснете синята стрелка (Метод за въвеждане). Присвоете „freehand“ (въвеждане с изписване на буквата) на някой от функционалните клавиши. В17: Как мога да изключа осветяването на синтаксиса? О17: Напишете „syntax none“ в областта за команди на Юдит. Ако просто напишете „syntax“, излиза списъка с наличните опции. Може да зададете това в конфигурационния файл. В18: Как мага да спра пренасянето на думи? О18: Напишете „wordwrap false“ в областта за команди на Юдит. Напишете „wordwrap true“, за да го пуснете наново. Може да зададете това в конфигурационния файл. Приложение ========== 1.1. Примери за клавишни карти Следващите примери са от някои файлове kmap, които идват с Юдит. * Russian Присвоява фонетичните стойности на буквите. Някои примери: yo дава ё, c дава ь, q дава ъ x дава ы, ee дава э * Hungarian Присвоява на клавиатурата немските и унгарските букви. Буквите с диакретични знаци могат да се въвеждат като след английската буква се въведе диакретика. Някои примери: a' дава á, o: дава ö, o" дава ő SS дава немското ß, Ss дава символа за член §. * Kana Присвоява Romaji на Hiragana и Katakana. Малките букви се използват за Hiragana, за главните за Katakana. Някои примери: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ * Mnemonic С тази карта можете да използвате мнемоничните записи от RFC1345, за да въвеждате символите. Някои примери: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش * SGML присвоява SGML на Уникод. Някои примери: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ * Hangul присвоява латинска транслитерация на знаците от Hangul. Използва се транслитерацията от ISO/TC46/SC2/WG4. Можете да получите повече информация за това от: http://www.hansoft.com/hangul/faq.html Някои примери: ulyanghan - 우량한, pyohyeon - 표현 cinseon - 친선, jageug - 자극, hwang geum 황금 ./doc/bg/FAQ.TXT.in0000644000175000017500000002752411331217476013626 0ustar henrichhenrichЧесто задавани въпроси за редактора на Уникод — Юдит (Yudit) ================================================================ Версия: 2.9.2 Автор : Гаспар Синай (Gaspar Sinai) Дата : Токио, 2007-12-22 В1: Как мога отново да видя този списък с въпроси и отговори? О1: Напишете „help“ в областта за команди. По аналогия ще видите тестова страница, ако напишете „test“ в областта за команди. Напишете „howto japanese“, „howto configure“, за да видите съответните документи. В2: Откъде мога да получа новите версии на програмата? О2: Можете да ги свалите от http://www.yudit.org/ В3: Натиснах бутона за записване, обаче нищо не се случва. Защо? О3: Юдит работи със своя област за команди. Най-вероятно трябва да натиснете бутона „Enter“. В4: Какво означава бутона [Край на ред] горе вдясно, който най-често показва „Unix“? О4: Символите за край на ред са: UNIX = „\n“ - Край на ред в Юникс DOS = „\r\n“ - Край на ред в ДОС MAC = „\r“ - Край на ред в Макинтош LS = U+2028 - Разделител за редове в Уникод PS = U+2029 - Разделител за абзаци в Уникод В Юдит можете да смесвате разделителите на редове - например, можете да създадете файл с разделители на ДОС и Юникс. По възможност избягвайте да смесвате различните разделители в рамките на един файл. В5: Как мога да получа списъка с поддържаните кодирания (опцията -e)? O5: Въведете „man uniconv" или „uniconv -h" в прозорец на обвивката. В6: Как мога да добавя мой файл за начин за въвеждане от клавиатурата? О6: Подобен файл може вече да съществува в @YUDIT_DATA@ В такъв случай просто трябва да го добавите в @YUDIT_DATA@/config/yudit.properties Ако го няма, трябва да прехвърлите входния файл kmap в двоичен формат: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my След това трябва да копирате My.my в ~/.yudit/data cp My.my ~/.yudit/data Ако обичате, изпратете ми Вашия файл kmap (в изходен вид), за да го включа в следващата версия. За повече информация за файловете kmap, проверете в @YUDIT_DATA@/doc/keymap-format.txt Изходният код на файловете kmap, които идват с yudit са в @YUDIT_DATA@/src/ Забележете, че файловете kmap могат да се използват и като конвертори за текстове и като карти на клавиши. В7: Как мога да получавам съобщенията на собствения си език? О7: Изтеглете изходния код и прочетете файла README.TXT. В него е описано какво да направите. Ако обичате, изпратете ми превода си, за да го включа в следващите версии. В8: Как мога да добавя шрифт във формат TrueType? О8: Сложете файла-на-шрифта.ttf и друг-файл-ако-искате.ttf в @YUDIT_DATA@/fonts или ~/.yudit/fonts След това променете @YUDIT_DATA@/config/yudit.properties като добавите нов виртуален шрифт MyFont yudit.font.MyFont=файла-на-шрифта.ttf,друг-файл-ако-искате.ttf,.. След това можете да използвате тези шрифтове в прозореца за редакция, ако го добавите в: yudit.editor.fonts=...,MyFont,... или можете да го използвате в графичния интерфейс, ако го добавите в: yudit.fonts=...,MyFont,... В9: Ще има ли версия за Уиндоус? О9: Юдит ползва комплект от абстрактни графични обекти. Това позволява много лесно да бъде пренасян към графични среди като svgalib. Аз пренесох програмата за моята съпруга Юко през декември 2001г. Това бе първият и последен път, когато се докоснах до Уиндоус. В10: Доколко добър редактор за Уникод е Юдит? О10: Опитах се да се придържам към стандарта Уникод, където това е смислено. Има някои особености, проверете файла: @YUDIT_DATA@/doc/HOWTO-bidi.txt за информация относно придържането към правилата за двупосочно писане. Поддържа се съставяне на символи, сега работя по оформяне на символи. В11: Посочих три файла на командния ред, а виждам само един. О11: Останалите са в историческия буфер. Ако отидете на командния ред в редактора и натиснете Стрелка_нагоре (или Ctrl-k) или Стрелка_надолу (или Ctrl-j), можете да преминете през историята на файловете. В12: Кои са бързите клавиши? О12: Можете да видите повечето от тях - жълтите подсказки ги показват подчертани. Повечето от тях трябва да работят и при натиснат Shift и/или Alt клавиш. Редакторът в момента разполага със следните бързи клавиши: Escape - Смяна на команден режим с режим редактиране и обратно Home - Отиване в началото на документа b - Страница нагоре f - Страница надолу k - Нагоре n,j - Надолу h - Наляво l - Надясно m - Изтриване на целия ред x - Изтриване на избрания текст v - Вмъкване на последно избрания текст Ако е натиснат Shift (или Meta, или и двата) по време на движение на курсора, текстът се избира. Двойно натискане с мишката избира дума, тройно - цял ред. В13: Как мога да разгледам съдържанието на двоичен файл keymap? О13: Можете да го превърнете в изходен вид с командата: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys В14: Как мога бързо да въведа знак от Уникод? О14: Сменете типа на въведените данни към [unicode], въведете uxxxx или Uxxxxxxxx, където x е шестнадесетично число. В15: Има ли Юдит функция за търсене и заместване? О15: В областта за команди напишете replace стар-текст нов-текст и натискайте Enter, за всяко намиране и заместване. В16: Как мога да ползвам въвеждане с изписване на буквата? О16: Натиснете синята стрелка (Метод за въвеждане). Присвоете „freehand“ (въвеждане с изписване на буквата) на някой от функционалните клавиши. В17: Как мога да изключа осветяването на синтаксиса? О17: Напишете „syntax none“ в областта за команди на Юдит. Ако просто напишете „syntax“, излиза списъка с наличните опции. Може да зададете това в конфигурационния файл. В18: Как мага да спра пренасянето на думи? О18: Напишете „wordwrap false“ в областта за команди на Юдит. Напишете „wordwrap true“, за да го пуснете наново. Може да зададете това в конфигурационния файл. Приложение ========== 1.1. Примери за клавишни карти Следващите примери са от някои файлове kmap, които идват с Юдит. * Russian Присвоява фонетичните стойности на буквите. Някои примери: yo дава ё, c дава ь, q дава ъ x дава ы, ee дава э * Hungarian Присвоява на клавиатурата немските и унгарските букви. Буквите с диакретични знаци могат да се въвеждат като след английската буква се въведе диакретика. Някои примери: a' дава á, o: дава ö, o" дава ő SS дава немското ß, Ss дава символа за член §. * Kana Присвоява Romaji на Hiragana и Katakana. Малките букви се използват за Hiragana, за главните за Katakana. Някои примери: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ * Mnemonic С тази карта можете да използвате мнемоничните записи от RFC1345, за да въвеждате символите. Някои примери: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش * SGML присвоява SGML на Уникод. Някои примери: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ * Hangul присвоява латинска транслитерация на знаците от Hangul. Използва се транслитерацията от ISO/TC46/SC2/WG4. Можете да получите повече информация за това от: http://www.hansoft.com/hangul/faq.html Някои примери: ulyanghan - 우량한, pyohyeon - 표현 cinseon - 친선, jageug - 자극, hwang geum 황금 ./doc/UTF-8-demo.txt0000644000175000017500000003332607567422410014106 0ustar henrichhenrich UTF-8 encoded sample plain-text file ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ Markus Kuhn [ˈmaʳkʊs kuːn] — 2002-07-25 The ASCII compatible UTF-8 encoding used in this plain-text file is defined in Unicode, ISO 10646-1, and RFC 2279. Using Unicode/UTF-8, you can write in emails and source code things such as Mathematics and sciences: ∮ E⋅da = Q, n → ∞, ∑ f(i) = ∏ g(i), ⎧⎡⎛┌─────┐⎞⎤⎫ ⎪⎢⎜│a²+b³ ⎟⎥⎪ ∀x∈ℝ: ⌈x⌉ = −⌊−x⌋, α ∧ ¬β = ¬(¬α ∨ β), ⎪⎢⎜│───── ⎟⎥⎪ ⎪⎢⎜⎷ c₈ ⎟⎥⎪ ℕ ⊆ ℕ₀ ⊂ ℤ ⊂ ℚ ⊂ ℝ ⊂ ℂ, ⎨⎢⎜ ⎟⎥⎬ ⎪⎢⎜ ∞ ⎟⎥⎪ ⊥ < a ≠ b ≡ c ≤ d ≪ ⊤ ⇒ (⟦A⟧ ⇔ ⟪B⟫), ⎪⎢⎜ ⎲ ⎟⎥⎪ ⎪⎢⎜ ⎳aⁱ-bⁱ⎟⎥⎪ 2H₂ + O₂ ⇌ 2H₂O, R = 4.7 kΩ, ⌀ 200 mm ⎩⎣⎝i=1 ⎠⎦⎭ Linguistics and dictionaries: ði ıntəˈnæʃənəl fəˈnɛtık əsoʊsiˈeıʃn Y [ˈʏpsilɔn], Yen [jɛn], Yoga [ˈjoːgɑ] APL: ((V⍳V)=⍳⍴V)/V←,V ⌷←⍳→⍴∆∇⊃‾⍎⍕⌈ Nicer typography in plain text files: ╔══════════════════════════════════════════╗ ║ ║ ║ • ‘single’ and “double” quotes ║ ║ ║ ║ • Curly apostrophes: “We’ve been here” ║ ║ ║ ║ • Latin-1 apostrophe and accents: '´` ║ ║ ║ ║ • ‚deutsche‘ „Anführungszeichen“ ║ ║ ║ ║ • †, ‡, ‰, •, 3–4, —, −5/+5, ™, … ║ ║ ║ ║ • ASCII safety test: 1lI|, 0OD, 8B ║ ║ ╭─────────╮ ║ ║ • the euro symbol: │ 14.95 € │ ║ ║ ╰─────────╯ ║ ╚══════════════════════════════════════════╝ Combining characters: STARGΛ̊TE SG-1, a = v̇ = r̈, a⃑ ⊥ b⃑ Greek (in Polytonic): The Greek anthem: Σὲ γνωρίζω ἀπὸ τὴν κόψη τοῦ σπαθιοῦ τὴν τρομερή, σὲ γνωρίζω ἀπὸ τὴν ὄψη ποὺ μὲ βία μετράει τὴ γῆ. ᾿Απ᾿ τὰ κόκκαλα βγαλμένη τῶν ῾Ελλήνων τὰ ἱερά καὶ σὰν πρῶτα ἀνδρειωμένη χαῖρε, ὦ χαῖρε, ᾿Ελευθεριά! From a speech of Demosthenes in the 4th century BC: Οὐχὶ ταὐτὰ παρίσταταί μοι γιγνώσκειν, ὦ ἄνδρες ᾿Αθηναῖοι, ὅταν τ᾿ εἰς τὰ πράγματα ἀποβλέψω καὶ ὅταν πρὸς τοὺς λόγους οὓς ἀκούω· τοὺς μὲν γὰρ λόγους περὶ τοῦ τιμωρήσασθαι Φίλιππον ὁρῶ γιγνομένους, τὰ δὲ πράγματ᾿ εἰς τοῦτο προήκοντα, ὥσθ᾿ ὅπως μὴ πεισόμεθ᾿ αὐτοὶ πρότερον κακῶς σκέψασθαι δέον. οὐδέν οὖν ἄλλο μοι δοκοῦσιν οἱ τὰ τοιαῦτα λέγοντες ἢ τὴν ὑπόθεσιν, περὶ ἧς βουλεύεσθαι, οὐχὶ τὴν οὖσαν παριστάντες ὑμῖν ἁμαρτάνειν. ἐγὼ δέ, ὅτι μέν ποτ᾿ ἐξῆν τῇ πόλει καὶ τὰ αὑτῆς ἔχειν ἀσφαλῶς καὶ Φίλιππον τιμωρήσασθαι, καὶ μάλ᾿ ἀκριβῶς οἶδα· ἐπ᾿ ἐμοῦ γάρ, οὐ πάλαι γέγονεν ταῦτ᾿ ἀμφότερα· νῦν μέντοι πέπεισμαι τοῦθ᾿ ἱκανὸν προλαβεῖν ἡμῖν εἶναι τὴν πρώτην, ὅπως τοὺς συμμάχους σώσομεν. ἐὰν γὰρ τοῦτο βεβαίως ὑπάρξῃ, τότε καὶ περὶ τοῦ τίνα τιμωρήσεταί τις καὶ ὃν τρόπον ἐξέσται σκοπεῖν· πρὶν δὲ τὴν ἀρχὴν ὀρθῶς ὑποθέσθαι, μάταιον ἡγοῦμαι περὶ τῆς τελευτῆς ὁντινοῦν ποιεῖσθαι λόγον. Δημοσθένους, Γ´ ᾿Ολυνθιακὸς Georgian: From a Unicode conference invitation: გთხოვთ ახლავე გაიაროთ რეგისტრაცია Unicode-ის მეათე საერთაშორისო კონფერენციაზე დასასწრებად, რომელიც გაიმართება 10-12 მარტს, ქ. მაინცში, გერმანიაში. კონფერენცია შეჰკრებს ერთად მსოფლიოს ექსპერტებს ისეთ დარგებში როგორიცაა ინტერნეტი და Unicode-ი, ინტერნაციონალიზაცია და ლოკალიზაცია, Unicode-ის გამოყენება ოპერაციულ სისტემებსა, და გამოყენებით პროგრამებში, შრიფტებში, ტექსტების დამუშავებასა და მრავალენოვან კომპიუტერულ სისტემებში. Russian: From a Unicode conference invitation: Зарегистрируйтесь сейчас на Десятую Международную Конференцию по Unicode, которая состоится 10-12 марта 1997 года в Майнце в Германии. Конференция соберет широкий круг экспертов по вопросам глобального Интернета и Unicode, локализации и интернационализации, воплощению и применению Unicode в различных операционных системах и программных приложениях, шрифтах, верстке и многоязычных компьютерных системах. Thai (UCS Level 2): Excerpt from a poetry on The Romance of The Three Kingdoms (a Chinese classic 'San Gua'): [----------------------------|------------------------] ๏ แผ่นดินฮั่นเสื่อมโทรมแสนสังเวช พระปกเกศกองบู๊กู้ขึ้นใหม่ สิบสองกษัตริย์ก่อนหน้าแลถัดไป สององค์ไซร้โง่เขลาเบาปัญญา ทรงนับถือขันทีเป็นที่พึ่ง บ้านเมืองจึงวิปริตเป็นนักหนา โฮจิ๋นเรียกทัพทั่วหัวเมืองมา หมายจะฆ่ามดชั่วตัวสำคัญ เหมือนขับไสไล่เสือจากเคหา รับหมาป่าเข้ามาเลยอาสัญ ฝ่ายอ้องอุ้นยุแยกให้แตกกัน ใช้สาวนั้นเป็นชนวนชื่นชวนใจ พลันลิฉุยกุยกีกลับก่อเหตุ ช่างอาเพศจริงหนาฟ้าร้องไห้ ต้องรบราฆ่าฟันจนบรรลัย ฤๅหาใครค้ำชูกู้บรรลังก์ ฯ (The above is a two-column text. If combining characters are handled correctly, the lines of the second column should be aligned with the | character above.) Ethiopian: Proverbs in the Amharic language: ሰማይ አይታረስ ንጉሥ አይከሰስ። ብላ ካለኝ እንደአባቴ በቆመጠኝ። ጌጥ ያለቤቱ ቁምጥና ነው። ደሀ በሕልሙ ቅቤ ባይጠጣ ንጣት በገደለው። የአፍ ወለምታ በቅቤ አይታሽም። አይጥ በበላ ዳዋ ተመታ። ሲተረጉሙ ይደረግሙ። ቀስ በቀስ፥ ዕንቁላል በእግሩ ይሄዳል። ድር ቢያብር አንበሳ ያስር። ሰው እንደቤቱ እንጅ እንደ ጉረቤቱ አይተዳደርም። እግዜር የከፈተውን ጉሮሮ ሳይዘጋው አይድርም። የጎረቤት ሌባ፥ ቢያዩት ይስቅ ባያዩት ያጠልቅ። ሥራ ከመፍታት ልጄን ላፋታት። ዓባይ ማደሪያ የለው፥ ግንድ ይዞ ይዞራል። የእስላም አገሩ መካ የአሞራ አገሩ ዋርካ። ተንጋሎ ቢተፉ ተመልሶ ባፉ። ወዳጅህ ማር ቢሆን ጨርስህ አትላሰው። እግርህን በፍራሽህ ልክ ዘርጋ። Runes: ᚻᛖ ᚳᚹᚫᚦ ᚦᚫᛏ ᚻᛖ ᛒᚢᛞᛖ ᚩᚾ ᚦᚫᛗ ᛚᚪᚾᛞᛖ ᚾᚩᚱᚦᚹᛖᚪᚱᛞᚢᛗ ᚹᛁᚦ ᚦᚪ ᚹᛖᛥᚫ (Old English, which transcribed into Latin reads 'He cwaeth that he bude thaem lande northweardum with tha Westsae.' and means 'He said that he lived in the northern land near the Western Sea.') Braille: ⡌⠁⠧⠑ ⠼⠁⠒ ⡍⠜⠇⠑⠹⠰⠎ ⡣⠕⠌ ⡍⠜⠇⠑⠹ ⠺⠁⠎ ⠙⠑⠁⠙⠒ ⠞⠕ ⠃⠑⠛⠔ ⠺⠊⠹⠲ ⡹⠻⠑ ⠊⠎ ⠝⠕ ⠙⠳⠃⠞ ⠱⠁⠞⠑⠧⠻ ⠁⠃⠳⠞ ⠹⠁⠞⠲ ⡹⠑ ⠗⠑⠛⠊⠌⠻ ⠕⠋ ⠙⠊⠎ ⠃⠥⠗⠊⠁⠇ ⠺⠁⠎ ⠎⠊⠛⠝⠫ ⠃⠹ ⠹⠑ ⠊⠇⠻⠛⠹⠍⠁⠝⠂ ⠹⠑ ⠊⠇⠻⠅⠂ ⠹⠑ ⠥⠝⠙⠻⠞⠁⠅⠻⠂ ⠁⠝⠙ ⠹⠑ ⠡⠊⠑⠋ ⠍⠳⠗⠝⠻⠲ ⡎⠊⠗⠕⠕⠛⠑ ⠎⠊⠛⠝⠫ ⠊⠞⠲ ⡁⠝⠙ ⡎⠊⠗⠕⠕⠛⠑⠰⠎ ⠝⠁⠍⠑ ⠺⠁⠎ ⠛⠕⠕⠙ ⠥⠏⠕⠝ ⠰⡡⠁⠝⠛⠑⠂ ⠋⠕⠗ ⠁⠝⠹⠹⠔⠛ ⠙⠑ ⠡⠕⠎⠑ ⠞⠕ ⠏⠥⠞ ⠙⠊⠎ ⠙⠁⠝⠙ ⠞⠕⠲ ⡕⠇⠙ ⡍⠜⠇⠑⠹ ⠺⠁⠎ ⠁⠎ ⠙⠑⠁⠙ ⠁⠎ ⠁ ⠙⠕⠕⠗⠤⠝⠁⠊⠇⠲ ⡍⠔⠙⠖ ⡊ ⠙⠕⠝⠰⠞ ⠍⠑⠁⠝ ⠞⠕ ⠎⠁⠹ ⠹⠁⠞ ⡊ ⠅⠝⠪⠂ ⠕⠋ ⠍⠹ ⠪⠝ ⠅⠝⠪⠇⠫⠛⠑⠂ ⠱⠁⠞ ⠹⠻⠑ ⠊⠎ ⠏⠜⠞⠊⠊⠥⠇⠜⠇⠹ ⠙⠑⠁⠙ ⠁⠃⠳⠞ ⠁ ⠙⠕⠕⠗⠤⠝⠁⠊⠇⠲ ⡊ ⠍⠊⠣⠞ ⠙⠁⠧⠑ ⠃⠑⠲ ⠔⠊⠇⠔⠫⠂ ⠍⠹⠎⠑⠇⠋⠂ ⠞⠕ ⠗⠑⠛⠜⠙ ⠁ ⠊⠕⠋⠋⠔⠤⠝⠁⠊⠇ ⠁⠎ ⠹⠑ ⠙⠑⠁⠙⠑⠌ ⠏⠊⠑⠊⠑ ⠕⠋ ⠊⠗⠕⠝⠍⠕⠝⠛⠻⠹ ⠔ ⠹⠑ ⠞⠗⠁⠙⠑⠲ ⡃⠥⠞ ⠹⠑ ⠺⠊⠎⠙⠕⠍ ⠕⠋ ⠳⠗ ⠁⠝⠊⠑⠌⠕⠗⠎ ⠊⠎ ⠔ ⠹⠑ ⠎⠊⠍⠊⠇⠑⠆ ⠁⠝⠙ ⠍⠹ ⠥⠝⠙⠁⠇⠇⠪⠫ ⠙⠁⠝⠙⠎ ⠩⠁⠇⠇ ⠝⠕⠞ ⠙⠊⠌⠥⠗⠃ ⠊⠞⠂ ⠕⠗ ⠹⠑ ⡊⠳⠝⠞⠗⠹⠰⠎ ⠙⠕⠝⠑ ⠋⠕⠗⠲ ⡹⠳ ⠺⠊⠇⠇ ⠹⠻⠑⠋⠕⠗⠑ ⠏⠻⠍⠊⠞ ⠍⠑ ⠞⠕ ⠗⠑⠏⠑⠁⠞⠂ ⠑⠍⠏⠙⠁⠞⠊⠊⠁⠇⠇⠹⠂ ⠹⠁⠞ ⡍⠜⠇⠑⠹ ⠺⠁⠎ ⠁⠎ ⠙⠑⠁⠙ ⠁⠎ ⠁ ⠙⠕⠕⠗⠤⠝⠁⠊⠇⠲ (The first couple of paragraphs of "A Christmas Carol" by Dickens) Compact font selection example text: ABCDEFGHIJKLMNOPQRSTUVWXYZ /0123456789 abcdefghijklmnopqrstuvwxyz £©µÀÆÖÞßéöÿ –—‘“”„†•…‰™œŠŸž€ ΑΒΓΔΩαβγδω АБВГДабвгд ∀∂∈ℝ∧∪≡∞ ↑↗↨↻⇣ ┐┼╔╘░►☺♀ fi�⑀₂ἠḂӥẄɐː⍎אԱა Greetings in various languages: Hello world, Καλημέρα κόσμε, コンニチハ Box drawing alignment tests: █ ▉ ╔══╦══╗ ┌──┬──┐ ╭──┬──╮ ╭──┬──╮ ┏━━┳━━┓ ┎┒┏┑ ╷ ╻ ┏┯┓ ┌┰┐ ▊ ╱╲╱╲╳╳╳ ║┌─╨─┐║ │╔═╧═╗│ │╒═╪═╕│ │╓─╁─╖│ ┃┌─╂─┐┃ ┗╃╄┙ ╶┼╴╺╋╸┠┼┨ ┝╋┥ ▋ ╲╱╲╱╳╳╳ ║│╲ ╱│║ │║ ║│ ││ │ ││ │║ ┃ ║│ ┃│ ╿ │┃ ┍╅╆┓ ╵ ╹ ┗┷┛ └┸┘ ▌ ╱╲╱╲╳╳╳ ╠╡ ╳ ╞╣ ├╢ ╟┤ ├┼─┼─┼┤ ├╫─╂─╫┤ ┣┿╾┼╼┿┫ ┕┛┖┚ ┌┄┄┐ ╎ ┏┅┅┓ ┋ ▍ ╲╱╲╱╳╳╳ ║│╱ ╲│║ │║ ║│ ││ │ ││ │║ ┃ ║│ ┃│ ╽ │┃ ░░▒▒▓▓██ ┊ ┆ ╎ ╏ ┇ ┋ ▎ ║└─╥─┘║ │╚═╤═╝│ │╘═╪═╛│ │╙─╀─╜│ ┃└─╂─┘┃ ░░▒▒▓▓██ ┊ ┆ ╎ ╏ ┇ ┋ ▏ ╚══╩══╝ └──┴──┘ ╰──┴──╯ ╰──┴──╯ ┗━━┻━━┛ ▗▄▖▛▀▜ └╌╌┘ ╎ ┗╍╍┛ ┋ ▁▂▃▄▅▆▇█ ▝▀▘▙▄▟ ./doc/Kanji.kmap.html0000644000175000017500000000470607633003742014466 0ustar henrichhenrich

        kanji.kmap

        The kanji keymap includes 14892 kanji words, and was generated from a selection of words from edict, (c) EDRG. Go to http://www.csse.monash.edu.au/groups/edrdg/ for more information on edict. It also includes the Kana keymap from Yudit. All the kanji words included are said to be among the 20,000 more common words in Japanese. The others were left out because of the size limitation on keymaps, and the number of homonyms. Here's how it works:

        ひらがな

        Hiragana can be input simply by typing their romaji equivalent. However, sometimes an unwanted kanji may pop up. Remove it, and press the right-arrow key after a syllable to indicate that it's not part of a kanji word. If possible, try to switch to Kana.kmap whenever you enter a Hiragana-only word. In Yudit, you can assign keymaps to one of the F-keys.

        カタカナ

        Katakana can be input by typing in CAPITAL LETTERS. To get special combinations such as ヴィ, use XI for the small ィ.

        漢字

        This keymap includes almost 15,000 kanji words. They must be input using Hepburn romaji (sho instead of syo, chi instead of ti etc.) Long vowels are input as they are written, for instance kouen, oose, or akademi-shou. The differences here are important: watasi will yield 綿し, while watashi will yield 私 .

        Nouns and い-adjectives

        The keymap only includes dictionary forms, so to write 楽しかった you'll have to write tanoshii, backspace, and katta. 御免ね!

        Homonyms

        Many kanji words have the same spelling in romaji. To get a particular variant of a word, append a number at the end. You can for instance type "kouen1", "kouen2", "kouen3" or "kouen4" for the different variants of "kouen". You'll have to try every variant until you get the one you want. Writing only "kouen" will give you nonsense.

        That's it for now. Send all your compla, er, praise to <david@start.no>.

        Last but not least, special thanks go out to Jim Breen for making edict, and to lejordet, Miikka-Markus Alhonen, Gaspar Sinai, odin of Real Fansubbers, Alex Bochannek and the Unicode mailing list, without whose invaluable support this project would probably never have been done. ./doc/HOWTO-georgian.txt0000644000175000017500000000637307630256002015045 0ustar henrichhenrich A TrueType Solution to Editing Georgian in Yudit Kenneth R. Beesley ken.beesley@xrce.xerox.com 1 March 2003 I've found a solution to Georgian-script editing in Yudit, using the k_grigol.ttf font downloadable from http://www.main.osgf.ge/. Compared to the other solutions that I am aware of, k_grigol.ttf offers the advantage of multiple glyph sizes. Previous solutions: 1. First, I wish to thank Gaspar Sinai and Mark Leisher for their kind help in getting me (a font novice) started with Georgian-script editing using Leisher's ClearlyU font. The only problem that I sense using this solution is that ClearlyU is an X11 bitmap font fixed at size 17. The glyphs are high-quality, and this solution works well at the set size. 2. The other solution that I'm aware of is to use the 'default' font of Yudit, making sure that you install a newer 'augmented' version of the unifont.hex font, such as that downloadable from http://www.yudit.org/download/fonts/bitmap/ Install this unifont.hex font in your ~/.yudit/fonts/ directory, select the 'default' font, and you can instantly edit Georgian, but only at size 16. (Beware: An earlier version of unifont.hex that I tried did not include Georgian glyphs at all, and the unifont glyphs are not of high quality.) *************************** My new solution: 1. Download the file k_grigol.zip (the "Georgian (Unicode)" font) from http://www.main.osgf.ge/. 2. Unzip the file unzip k_grigol.zip which should produce a TrueType file named k_grigol.ttf 3. Move this TrueType font to ~/.yudit/fonts mv k_grigol.ttf ~/.yudit/fonts 4. Edit your ~/.yudit/yudit.properties file a. Add a new virtual font name, something like GeoUni (for "Georgian Unicode"), to yudit.editor.fonts yudit.editor.fonts=default,TrueType,GeoUni,... After this is done, Yudit will allow you to select the GeoUni virtual font, whenever you want it, from the font menu in the GUI. b. You have to tell Yudit which real fonts the virtual font "GeoUni" is based on. Add something like the following line to your yudit.properties file yudit.font.GeoUni=k_grigol.ttf,-adobe-times-medium-r-normal--*-*-75-75-p-*-iso10646-1,-adobe-times-*-iso8859-1,*-iso8859-1 This tells Yudit to use, by preference, glyphs from k_grigol.ttf whenever GeoUni is chosen as the virtual font, resorting (when necessary) to using X11 fonts in the order specified. 5. To facilitate entering Georgian, you probably want to use a specialized input method such as Mark Leisher's Georgian.kmap or my own GeorgianB.kmap. Georgian.kmap is already included with the current yudit release; perhaps GeorgianB.kmap will be included in a future release. (GeorgianB.kmap, with instructions for installation, is available from me at ken.beesley@xrce.xerox.com). The Yudit GUI allows you to assign your favorite set of input methods to the function keys for easy selection during actual editing. 6. Problems noted with k_grigol.ttf. It seems to lack glyphs for the archaic letter GEORGIAN LETTER FI (0x10F6) and for the GEORGIAN LETTER YN (0x10f7) and GEORGIAN LETTER ELIFI (0x10f8) letters, which are actually used in Mingrelian and/or Svan rather than Georgian proper. This doesn't cause any problems for me. ./doc/FAQ.TXT.in0000644000175000017500000001464011331201563013217 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2010-01-31 Q1: How can I display this FAQ again? A1: Type `help' in the command area. Similarly you can get a testpage if you type `test' in the command area. Type 'howto japanese', 'howto configure' to get the howto pages. Q2: Where can I get updates? A2: Download them from http://www.yudit.org/ Q3: I pressed Save Button and nothing happens. Why? A3: Yudit has a command line. Most probably you just need to hit Enter Key. Q4: What is that [Line Break] on the right hand side that is mostly showing "Unix"? A4: The line end marks are: UNIX='\n' - Unix line break DOS='\r\n' - DOS line break MAC='\r' - MAC line break LS = U+2028 - Unicode line separator PS = U+2029 - Unicode paragraph separator In Yudit you can mix these - you can create a file that has DOS and Unix lines for instance. But you should avoid mixing them if possible. Q5: How can I get the list of encodings (-e options)? A5: Type `man uniconv' or `uniconv -h' in a shell window. Q6: How can I add my keyboard input file? A6: The file may already exist in @YUDIT_DATA@/data in this case you just need to add this to @YUDIT_DATA@/config/yudit.properties If not, you need to convert the source kmap file into binary format: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my Then you need to copy My.my to ~/.yudit/data cp My.my ~/.yudit/data Please send me your kmap file (source) to include it in the next distribution. For more info on kmap files, look at @YUDIT_DATA@/doc/keymap-format.txt The source code of the kmaps came with yudit are in @YUDIT_DATA@/src/ Note that kmap files can be used as text converters and font maps too. Q7: How can I see messages in my own language? A7: Download the source code and read the README.TXT. It tells you how to do it. Please send me the translations so that I can include them in future versions. Q8: How can I add a TrueType font? A8: Put font-file.ttf and some-other-font-file.ttf into @YUDIT_DATA@/fonts or ~/.yudit/fonts after that modify @YUDIT_DATA@/config/yudit.properties adding a new virtual font MyFont yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. Now you can use this font in the editor window if you add it to yudit.editor.fonts=...,MyFont,... or the gui if you add it to: yudit.fonts=...,MyFont,... Q9: Will there be a Windows version? A9: Yudit has an abstract windowing toolkit. This makes it possible to port Yudit to, like svgalib for instance, very quickly. I ported it for my wife Yuko in 2001 December. This was the first and last time I touched Windows. Q10: How good of a Unicode editor is Yudit? A10: I tried to implement the Unicode standard wherever it made sense. There are some quirks, please read the @YUDIT_DATA@/doc/HOWTO-bidi.txt for bidirectional compliance information. Q11: I specified 3 files on the command line and I can see only one now. A11: They are in the history buffer. If you go to the command input area and hit Arrow-Up (or Ctrl-k) or Arrow-Down (or Ctrl-j) you can walk through the file history. Q12: What are the hot-key bindings? A12: You can see most of them - the yellow tooltip shows them underlined. Most of them should work with Ctrl as well as Alt keys. The pluggable editor currently has the following keybindings: Escape - switch between command mode and editing mode Home - go to beginning of line End - go to end of line b - Page Up f - Page Down k - Up n,j - Down h - Left l - Right m - Delete Whole Line x - Delete Selection v - Paste Last Selection If Meta is kept down while moving the caret, the text will be selected. Mouse double click selects a word triple click selects a full line. Q13: How can I read the contents of a binary keymap file? A13: You can make a source dump like this: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: How can I quickly enter a unicode character? A14: Change input to [unicode], enter uxxxx or Uxxxxxxxx where x is a hexadecimal number. Q15: Can Yudit do replace functions? A15: In The command area you need to type replace old-text new-text and hit an enter for each find/replace. Q16: When can I find the handwriting input method? A16: Click on the blue arrow (input method). Assign freehand to one of the F keys. Q17: How can I turn off syntax highlighting? A17: From the command area by typing: 'syntax none'. The available options are printed in error label if you just type 'syntax'. You can set this in the config file too. If you type "howto syntax" in the editor command area a help file is displayed, which describes spell checker support too. Q18: How can I turn off word wrapping? A18: From the command area by typing: 'wordwrap false'. Typing 'wordwrap true' turns on word wrapping. You can set this in the config file too. Appendix ======== 1.1. Keymap Examples The following examples are for some kmaps that came with Yudit. Russian It maps phonetic Russian letters. The not so obvious ones are: yo yields ё , c yields ь, q yields ъ x yields ы ee yields э Hungarian It maps Hungarian and German characters. The accented characters can be input with the English character followed by the accent. Examples: a' becomes á , o: becomes ö , o" becomes ő SS produces the German ß , Ss gives the paragraph sign §. Kana It maps Romaji into Hiragana and Katakana. Small letters are used for Hiragana and capitals are used for Katakana. The not so obvious ones are: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic With this map you can use RFC1345 mnemonics to enter the characters. Some examples: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML maps SGML to unicode. Examples: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul maps Roman transliteration into Hangul characters. The ISO/TC46/SC2/WG4 transliteration is used. You can find out about it more at http://www.hansoft.com/hangul/faq.html Some examples: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/zh/0000755000175000017500000000000011334661334012227 5ustar henrichhenrich./doc/zh/FAQ.TXT0000644000175000017500000001410011334661334013233 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2006-05-21 Q1: 我如何再一次顯示本 FAQ? A1: 在命令區鍵入 `help'. 同樣地你可以取得一個 testpage 如果你在命令區鍵入 `test'. 鍵入 'howto japanese', 'howto configure' 取得 howto pages. Q2: 哪裡可以取得更新? A2: 從 http://www.yudit.org/ 下載. Q3: 我按了 Save Button 而沒有反應. 為何? A3: Yudit 有一個命令列. 很有可能你只需按 Enter 鍵. Q4: 在大多數顯示"Unix"的右手邊的 [Line Break] 是什麼? A4: 行尾標記是: UNIX='\n' - Unix line break DOS='\r\n' - DOS line break MAC='\r' - MAC line break LS = U+2028 - Unicode line separator PS = U+2029 - Unicode paragraph separator 在 Yudit 你可以混用 - 例如你可以建立一個檔案有 DOS 和 Unix 行尾. 但是如果可能的話應該避免混用. Q5: 我如何取得編碼表列(-e 選項)? A5: 在 shell 視窗鍵入 `man uniconv' 或 `uniconv -h'. Q6: 我如何加入我的鍵盤輸入檔案? A6: 此檔案可能已經存在於 /usr/share/yudit/data 此時你只需需要加入它到 /usr/share/yudit/config/yudit.properties 如果不是, 你需要轉換來源 kmap 檔案成為二進位格式: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my 然後你需要複製 My.my 到 ~/.yudit/data cp My.my ~/.yudit/data 請送給我你的 kmap 檔案 (原始碼) 以便將之含入下一版. 欲知更多關於 kmap 檔案的資訊, 請查閱 /usr/share/yudit/doc/keymap-format.txt 和 yudit 一起的 kmaps 原始碼, 位於 /usr/share/yudit/src/ 注意 kmap 檔案也能被當作文字轉換和字型對照. Q7: 我如何看見我自己語言的訊息? A7: 下載原始碼並讀 README.TXT. 他告訴你如何做. 請將翻譯送給我, 我可以將之放入未來的版本. Q8: 我如何加入一個 TrueType 字型? A8: 建立一個 symbolic link 或放入字型到 /usr/share/yudit/fonts 並加入它到 "editor.fonts.TrueType" /usr/share/yudit/config/yudit.properties 或你自己的 ~/.yudit/fonts 和 ~/.yudit/yudit.properties Q9: 會有 Windows 版嗎? A9: Yudit 有一個 abstract windowing toolkit. 這將使得移植 Yudit 更加快速. 例如像移植到 svgalib. 它只需花某些使用 Windows 並熟悉 C++ 的人一個星期的時間. 整個套件在 Visual Studio 命令列工具下編譯大部分正常, 但是畫面部分不能動因為我並沒有實作視窗功能. 我沒有計劃去作它但是我會散佈所有貢獻的程式碼. Q10: 離達到 Unicode 編輯器的標準有多遠? A10: 我嘗試去實作 Unicode 標準, 只要是合理的. 有一些 quirks, 請閱讀 /usr/share/yudit/doc/HOWTO-bidi.txt 關於雙向的資訊. 組字的支援很容易實作 (simple/STextData.cpp - 插入方法) 但是我不喜歡這想法 所以我只用修補的方式 - 如果我收到任何修補檔的話. Q11: 我在命令列指定三個檔案, 但我現在只能看見一個. A11: 它們在歷史緩衝區. 如果你到命令輸入區 並按下 Arrow-Up (或 Ctrl-k) 或 Arrow-Down (或 Ctrl-j) 你可以檢視此緩衝區. Q12: 什麼是 hot-key bindings? A12: 你可以看見大多數的它們 - 黃色提示將之用底線顯示. 大多數應該和 Shift 以及 Alt 鍵一起用. 本編輯器目前有下列 keybindings: Escape - 切換命令模式與編輯模式 Home - 跳至游標位置 1,1 b - 上一頁 f - 下一頁 k - 上 n,j - 下 h - 左 l - 右 m - 刪除整行 x - 刪除選擇文字 v - 貼上上一個選擇文字 如果當移動游標時 Shift (或 Meta, 或 both) 被按住, 文字會被選擇. 滑鼠雙擊選擇一個字, 三擊選擇一整行. Q13: 我如何讀一個 binary keymap 檔案的內容? A13: 你可以產生一個來源傾印像這樣: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: 我如何快速輸入一個 unicode 字元? A14: 改變輸入為 [unicode], 輸入 uxxxx 或 Uxxxxxxxx 其中 x 為 一個十六進位數字. Q15: 我如何替換? A15: 在命令區你需要鍵入 replace old-text new-text 並對每一個 find/replace 按輸入鍵. Q16: When can I find the handwriting input method? A16: Click on the blue arrow (input method). Assign freehand to one of the F keys. Q17: How can I turn off syntax highlighting? A17: From the command area by typing: 'syntax none'. The available options are printed in error label if you just type 'syntax'. You can set this in the config file too. Q18: How can I turn off word wrapping? A18: From the command area by typing: 'wordwrap false'. Typing 'wordwrap true' turns on word wrapping. You can set this in the config file too. 附錄 ==== 1.1. Keymap 範例 以下範例是給一些附在 Yudit 的 kmaps. Russian 它對照 Russian 發音字母. 比較不明顯的有: yo yields ё , c yields ь, q yields ъ x yields ы ee yields э Hungarian 它對照 Hungarian 和 German 字元. 重音字元 能被用英語字元輸入跟著重音. 範例: a' 變成 á , o: 變成 ö , o" 變成 ő SS 產生 German ß , Ss 產生段落符號 §. Kana 它對照 Romaji 到 Hiragana 和 Katakana. 小寫字母用於 Hiragana 而大寫用於 Katakana. 比較不明顯的有: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic 用這對照你可以使用 RFC1345 助憶符號輸入 字元. 一些範例: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML 對照 SGML 到 unicode. 範例: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul 對照 Roman 字譯為 Hangul 字元. 使用 ISO/TC46/SC2/WG4 字譯. 你 可以找到更多關於它的資料於 http://www.hansoft.com/hangul/faq.html 一些範例: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/zh/FAQ.TXT.in0000644000175000017500000001410011331217576013642 0ustar henrichhenrichYudit Unicode Editor FAQ ======================== Version: 2.9.2 Author: Gaspar Sinai Date: Tokyo 2006-05-21 Q1: 我如何再一次顯示本 FAQ? A1: 在命令區鍵入 `help'. 同樣地你可以取得一個 testpage 如果你在命令區鍵入 `test'. 鍵入 'howto japanese', 'howto configure' 取得 howto pages. Q2: 哪裡可以取得更新? A2: 從 http://www.yudit.org/ 下載. Q3: 我按了 Save Button 而沒有反應. 為何? A3: Yudit 有一個命令列. 很有可能你只需按 Enter 鍵. Q4: 在大多數顯示"Unix"的右手邊的 [Line Break] 是什麼? A4: 行尾標記是: UNIX='\n' - Unix line break DOS='\r\n' - DOS line break MAC='\r' - MAC line break LS = U+2028 - Unicode line separator PS = U+2029 - Unicode paragraph separator 在 Yudit 你可以混用 - 例如你可以建立一個檔案有 DOS 和 Unix 行尾. 但是如果可能的話應該避免混用. Q5: 我如何取得編碼表列(-e 選項)? A5: 在 shell 視窗鍵入 `man uniconv' 或 `uniconv -h'. Q6: 我如何加入我的鍵盤輸入檔案? A6: 此檔案可能已經存在於 /usr/share/yudit/data 此時你只需需要加入它到 /usr/share/yudit/config/yudit.properties 如果不是, 你需要轉換來源 kmap 檔案成為二進位格式: mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my 然後你需要複製 My.my 到 ~/.yudit/data cp My.my ~/.yudit/data 請送給我你的 kmap 檔案 (原始碼) 以便將之含入下一版. 欲知更多關於 kmap 檔案的資訊, 請查閱 /usr/share/yudit/doc/keymap-format.txt 和 yudit 一起的 kmaps 原始碼, 位於 /usr/share/yudit/src/ 注意 kmap 檔案也能被當作文字轉換和字型對照. Q7: 我如何看見我自己語言的訊息? A7: 下載原始碼並讀 README.TXT. 他告訴你如何做. 請將翻譯送給我, 我可以將之放入未來的版本. Q8: 我如何加入一個 TrueType 字型? A8: 建立一個 symbolic link 或放入字型到 /usr/share/yudit/fonts 並加入它到 "editor.fonts.TrueType" /usr/share/yudit/config/yudit.properties 或你自己的 ~/.yudit/fonts 和 ~/.yudit/yudit.properties Q9: 會有 Windows 版嗎? A9: Yudit 有一個 abstract windowing toolkit. 這將使得移植 Yudit 更加快速. 例如像移植到 svgalib. 它只需花某些使用 Windows 並熟悉 C++ 的人一個星期的時間. 整個套件在 Visual Studio 命令列工具下編譯大部分正常, 但是畫面部分不能動因為我並沒有實作視窗功能. 我沒有計劃去作它但是我會散佈所有貢獻的程式碼. Q10: 離達到 Unicode 編輯器的標準有多遠? A10: 我嘗試去實作 Unicode 標準, 只要是合理的. 有一些 quirks, 請閱讀 /usr/share/yudit/doc/HOWTO-bidi.txt 關於雙向的資訊. 組字的支援很容易實作 (simple/STextData.cpp - 插入方法) 但是我不喜歡這想法 所以我只用修補的方式 - 如果我收到任何修補檔的話. Q11: 我在命令列指定三個檔案, 但我現在只能看見一個. A11: 它們在歷史緩衝區. 如果你到命令輸入區 並按下 Arrow-Up (或 Ctrl-k) 或 Arrow-Down (或 Ctrl-j) 你可以檢視此緩衝區. Q12: 什麼是 hot-key bindings? A12: 你可以看見大多數的它們 - 黃色提示將之用底線顯示. 大多數應該和 Shift 以及 Alt 鍵一起用. 本編輯器目前有下列 keybindings: Escape - 切換命令模式與編輯模式 Home - 跳至游標位置 1,1 b - 上一頁 f - 下一頁 k - 上 n,j - 下 h - 左 l - 右 m - 刪除整行 x - 刪除選擇文字 v - 貼上上一個選擇文字 如果當移動游標時 Shift (或 Meta, 或 both) 被按住, 文字會被選擇. 滑鼠雙擊選擇一個字, 三擊選擇一整行. Q13: 我如何讀一個 binary keymap 檔案的內容? A13: 你可以產生一個來源傾印像這樣: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys Q14: 我如何快速輸入一個 unicode 字元? A14: 改變輸入為 [unicode], 輸入 uxxxx 或 Uxxxxxxxx 其中 x 為 一個十六進位數字. Q15: 我如何替換? A15: 在命令區你需要鍵入 replace old-text new-text 並對每一個 find/replace 按輸入鍵. Q16: When can I find the handwriting input method? A16: Click on the blue arrow (input method). Assign freehand to one of the F keys. Q17: How can I turn off syntax highlighting? A17: From the command area by typing: 'syntax none'. The available options are printed in error label if you just type 'syntax'. You can set this in the config file too. Q18: How can I turn off word wrapping? A18: From the command area by typing: 'wordwrap false'. Typing 'wordwrap true' turns on word wrapping. You can set this in the config file too. 附錄 ==== 1.1. Keymap 範例 以下範例是給一些附在 Yudit 的 kmaps. Russian 它對照 Russian 發音字母. 比較不明顯的有: yo yields ё , c yields ь, q yields ъ x yields ы ee yields э Hungarian 它對照 Hungarian 和 German 字元. 重音字元 能被用英語字元輸入跟著重音. 範例: a' 變成 á , o: 變成 ö , o" 變成 ő SS 產生 German ß , Ss 產生段落符號 §. Kana 它對照 Romaji 到 Hiragana 和 Katakana. 小寫字母用於 Hiragana 而大寫用於 Katakana. 比較不明顯的有: PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic 用這對照你可以使用 RFC1345 助憶符號輸入 字元. 一些範例: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML 對照 SGML 到 unicode. 範例: ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul 對照 Roman 字譯為 Hangul 字元. 使用 ISO/TC46/SC2/WG4 字譯. 你 可以找到更多關於它的資料於 http://www.hansoft.com/hangul/faq.html 一些範例: ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/HOWTO-configure.txt0000644000175000017500000004372010434023064015224 0ustar henrichhenrichYudit: HOWTO-configure.txt ===================================================================== Version: 2.3 Author: Gaspar Sinai Date: Tokyo 2006-05-21 This Document describes how to configure Yudit. ===================================================================== 1 Configuration File Loading At start-up Yudit reads the configuration file: /share/yudit/config/yudit-properties where is the installation prefix, usually /usr. This is the system configuration file. If the file is found, it merges the entries with the default compiled in the binary. After start-up it tries to create ~/.yudit ~/.yudit/fonts ~/.yudit/data directories, if they are not there. ~/ means the user's home directory, like '/home/gsinai'. It tries to load ~/.yudit/yudit.properties file. The existing entries in this file will override the previously loaded system configuration entries. When exiting Yudit, yudit will merge certain parameters in this file with some parameters that the user can change inside Yudit. Currently the overwritten parameters are: yudit.editor.font yudit.editor.fontsize yudit.editor.input yudit.filetypes ===================================================================== 2 Configuration File Format The configuration files consists of lines of: hierarchical.key.string=value or hierarchical.key.string=value1,value2,value3 It is very important that no extra space is left anywhere. It is possible to use the '\' character to join two separate lines but it is not desirable, especially in the user config file. Yudit will join these lines in that file. Keep in mind: when an array is specified in the system config file with value1,value2,value3 and the same array is in the user config file, with myvalue1,myvalue2 all elements of the array will be coming from the user config file: myvalue1,myvalue2. ===================================================================== 3 Basic Configuration Parameters These are the parameters that have profound effect on yudit. You can add virtual fonts, choices to the editor window like font sizes, input methods. --------------------------------------------------------------------- 3.1 yudit.datapath Array parameter. Example: yudit.datapath=/usr/share/yudit/data,/home/gsinai/data,... This is a very important parameter. This will define the search path, yudit will locate the my-files it needs to map fonts, create input methods and converters. Note that /yudit/data ~/.yudit/data directories will always be appended to the list. --------------------------------------------------------------------- 3.2 yudit.fontpath Array parameter. Example: yudit.fontpath=/usr/share/yudit/fonts,/usr/share/truetype/,... This parameter defines the search path for True Type fonts. Note that /yudit/fonts ~/.yudit/fonts directories will always be appended to the list. --------------------------------------------------------------------- 3.3 yudit.fonts, yudit.editor.fonts (4.1) Array parameters. Both define the available fonts. yudit.editor.fonts(4.1) defines the available fonts that can be selected from Yudit in the editor window. The available fonts in other parts of the gui (labels, buttons) are a superset of the two. Example: yudit.editor.fonts=default,TrueType,Bitmap yudit.fonts=buttonfont,labelfont With this the following virtual fonts will be available: Shift-F1 - default Shift-F2 - TrueType Shift-F3 - Bitmap Any names can be used. The name "None" or "none" are specials they mean that no font change is desirable even though the corresponding Shift-Fxx combination was pressed. These virtual font names should be defined later in yudit.font. parameter. The name default is defined internally, and it is not desirable to be defined in yudit.font.default unless you know what you are doing. The default font has unicode.hex in the first line. So it you drop unifont.hex into ~/.yudit/fonts you can edit files immediatelly. --------------------------------------------------------------------- 3.4 yudit.font. Array. This defines the virtual font that was specified in 3.3. Example: yudit.font.TrueType=arial.ttf,cyberbit.ttf,*-iso8859-1 This defines a virtual font that can be referred to by the TrueType alias. This virtual font tries to find, 3 font files in the fontpath (3.2) and if not found it tries to load them as x11 fonts. Most likely it will find: /usr/share/yudit/font/arial.ttf /usr/share/yudit/font/cyberbit.ttf and it won't find any file name *-iso8859-1, so it will try to get the closes match from X11 server, some font like: -adobe-courier-bold-o-normal--12-120-75-75-m-70-iso8859-1 in case the font size we use was 12. The *-iso8859-1 was a bit lazy declaration, it can be defined to be more accurate. Yudit has built-in converters for most of the standard X11 font encodings.(source swindow/sx11/SX11Font.cpp) *-iso10646-1 *-iso10646p2-<1-16> *-iso8859-<1-9> *-koi8-1 *-koi8-r *-ksc5601* *-jisx0208* *-jisx0201* *-jisx0212*-0 *-big5* *-gb2312* *-iso646* To check the fonts available in your X11 server types xlsfonts at the shell prompt. Yudit has has built-in ucs-2 converter for True Type fonts. This is good for True Type fonts that have platform=3 encoding=1 platform=2 encoding=1 or platform=1 attributes. If you have a font that does not have unicode table I need to modify the encodingVector in swindow/SFontTTF.cpp in the yudit source tree to add an encoder. Please send me your modifications if any. If the font is not a unicode font, and if there exists a .my map it can be assigned with and optional parameter: yudit.font.:something.ttf: The special keyword 'unicode' can be attached to unicode encoded fonts. Another additional parameter can be attached to the font that specifies its initial directionality, like: yudit.ttf:unicode:LR - left-right directionality yudit.ttf:unicode:RL - right-left directionality This is only important when you need to do glyphs mirroring, like for Old Italic or Old Hungarian. GNU Unifont can be rendered directly by specifying the filename together with the .hex extension, like: unifont.hex. ===================================================================== 4 Menu Configuration Parameters These configuration parameters will make up choices in the editor. --------------------------------------------------------------------- 4.1 yudit.editor.fonts Array. It defines the font choices in the gui. See also yudit.fonts --------------------------------------------------------------------- 4.2 yudit.editor.fontsizes Array. It defines the available font sizes. Example: yudit.editor.fontsize=12,14,16,18,24,48 As X11 font sizes will be defined as integers, please do not use floating point values here. This value will replace the font size in XLFD for X11 fonts. True Type fonts will be scaled as if the screen were 72dpi. --------------------------------------------------------------------- 4.3 yudit.editor.inputs Array. It defines the user-selectable input methods. These input methods can come from a .my file on yudit.datapath (3.1.). Please note the the kmap files in /yudit/src are installed for reference only. They can only be used after being converted into .my format and properly put in a directory on yudit.datapath - most of them are. config example: yudit.editor.inputs=straight,unicode,kinput2,Hungarian,None,Esperanto\ freehand This will load: F1 straight: built-in - no mapping F2 unicode: build-in - \uxxxx escapes F3 kinput2: built-in - _JAPANESE_CONVERSION F4 Hungarian: external Hungarian.my file is searched and possibly found in /usr/share/yudit/data/Hungarian.my F5 None: nothing will happen when pressing F5 F6 Esperanto: external, like Hungarian F7 freehand: internal, handwriting engine with external handwriting description files. If you want to create you own .my keyboard input file, you should read the /share/yudit/doc/keymap-format.txt file, and consult the man page for the mytool program. As kmaps can be used as external text converters, uniconv -h will list the ones it can find on the datapath. You can also create your own freehand recognition file. Please read /share/yudit/doc/README-FREEHAND for a recepie. --------------------------------------------------------------------- 4.3 yudit.editor.xinputs A list of x input methods in the form of name:locale where :locale is optional. The input will appear in the toolbar as x-name. Example: interxim,kinput2:ja_JP.eucJP,xcin:zh_TW.big5,Ami:ko_KR Special method: utf-8 - this will pass all X11 strings as is - in unicode if utf-8 is supported by X11. If you specify the locale, like 'utf-8:hu_HU' then locale is set before switching to this mode, allowing for X11 style composition of characters. You should note that if locale has encoding in the form of: language_VARIANT.codepage form Yudit's own string converter will be used for encoding. Some aliasing also takes place: eucjp -> euc-jp; euckr -> euc-kr; big5 -> big-5; In an effort to eliminated gb-2312 the following compatible aliases are also used: gb2312 -> gb-18030; gb-2312 -> gb-18030; gb18030 -> gb-18030 Of course you can omit encoding altogether: ko_KR means use utf-8 lookups. Note that the conversion starts and ends with . Start kinput2 with canna: kinput2 -canna & Start Ami: export LC_ALL=ko_KR; ami Start xcin (big5 mode): export LC_ALL=zh_TW.big5; xcin Start xcin (gb2312 mode): export LC_ALL=zh_CN.GB2312; xcin Please not that kinput2 may have a config file in your home directory: called '.canna'. In that I recommend you comment this: ;;(global-set-key "\F1" 'extend-mode) otherwise funny things may happen when you press F1. --------------------------------------------------------------------- 4.4 yudit.editor.xinputs.style String. Set the input method input style to one of the following values: preedit-root-status-root - input method is goung to open a seperate window. preedit-over-status-over - input method is going to write at the cursor preedit-under-status-under - input method is going to write at the bottom of the main text window. preedit-over-status-under - input method is going to show the status at the bottom of the main text window but preediting is at the cursor. The default value is 'preedit-over-status-over'. --------------------------------------------------------------------- 4.5 yudit.editor.filetypes Array. This list will be appended to the original list of file types in the File Dialog. Normally File Dialog would show the built-in types only. This is also known as encoding (3.6.) Example: yudit.editor.filetypes=Hungarian,Hangul I use these key maps to transliterate Hungarian or Hangul text. ===================================================================== 5. Default Configuration Parameters These parameters set some initial values. --------------------------------------------------------------------- 5.1 yudit.default.filtype String. It defines the encoding used initially when invoking Yudit. To get a full list of supported encodings type uniconv -h in a shell window. This is also known as File Type in the file dialog window. Example: yudit.default.filetype=utf-8 --------------------------------------------------------------------- 5.2 yudit.default.printer.options String. It defines the options that is passed to the 'lpr' command when printing. Example: yudit.default.printer.options=-P PrinterName --------------------------------------------------------------------- 5.3 yudit.default.preview.command String. It defines the command used when the preview button is pressed. This is a full unix command that will be executed by /bin/sh -c 'whatever you configured' and the postscript output will be piped into this command. Example: yudit.default.preview.command=ghostview - --------------------------------------------------------------------- 5.4 yudit.default.clipboard.encoding This is the clipboard encoder to cut and paste in X11 if the requested text type is COMPOUND_TEXT. COMPOUND_TEXT could be decoded with yudit if there were an universal decoder. Encoding on the other hand, has some ambiguity as there are characters that occupy the same unicode character but they are distinct in COMPOUND_TEXT. For this, reason, and because yudit does not have a universal decoder, we need to explicitly set this encoder. Try to use some iso-2022-x11 for Japanese XWindow or ksc-5601-x11 for Korean XWindow. 5.5 yudit.default.geometry This specifies the initial size of the editor window. The default value is "780x480". That is 780 pixels wide 480 pixels high. ===================================================================== 6 Configuration Parameters to Change Appearance These parameters change the colors, fonts in the gui and the editing area. All these parameters are strings. All colors can be color names or #rrggbb values where rr,gg and bb are 8-bit hexadecimal color codes for red, green and blue color components. Boolean values can be true or false. --------------------------------------------------------------------- 6.1 yudit.default.language The language of the user interface. Please take a look at /share/yudit/locale/ to see the two letter names the are supported. Example: yudit.default.language=ja If this parameter is not present or it is a zero sized string the environment variable LANG or if not present LANGUAGE is used. If everything fails English is used. If you are interested in translating yudit to your own language you should read /share/yudit/README.TXT --------------------------------------------------------------------- 6.2 yudit.default.font While yudit.editor.font sets the initial font in the editing area this will set the font in other components, labels and buttons. --------------------------------------------------------------------- 6.3 yudit.default.fontsize While yudit.editor.fontsize sets the initial font size in the editing area this will set the font size in other components, labels and buttons. --------------------------------------------------------------------- 6.4 yudit.background The background color of Yudit windows. --------------------------------------------------------------------- 6.5 yudit.label.foreground The foreground color of labels-like windows. --------------------------------------------------------------------- 6.6 yudit.title.foreground The foreground color of title-like windows. --------------------------------------------------------------------- 6.7 yudit.editor.background The background color of the editor area. --------------------------------------------------------------------- 6.8 yudit.editor.left.foreground The foreground color of left-to-right text in editor window. --------------------------------------------------------------------- 6.9 yudit.editor.right.foreground The foreground color of right-to-left text in editor window. --------------------------------------------------------------------- 6.10 yudit.editor.caret.left.foreground The color of the left-to-right caret in the editor window. --------------------------------------------------------------------- 6.11 yudit.editor.caret.right.foreground The color of the right-to-left caret in the editor window. --------------------------------------------------------------------- 6.12 yudit.editor.showbreak Boolean. Accepted values: true or false. If this is true yudit will visually indicate the end of line characters. --------------------------------------------------------------------- 6.13 yudit.editor.wordwrap Boolean. Accepted values: true or false. If this value is true, yudit will wrap words with a simple algorithm. --------------------------------------------------------------------- 6.14 yudit.editor.syntax String. Currently only the following values are supported: none - no highlighting simple - numbers: orange, delimiter: blue --------------------------------------------------------------------- 6.15 yudit.command.background The background color of the command area. --------------------------------------------------------------------- 6.16 yudit.command.left.foreground The foreground color of left-to-right text in command area. --------------------------------------------------------------------- 6.17 yudit.command.right.foreground=yellow The foreground color of right-to-left text in command area. --------------------------------------------------------------------- 6.18 yudit.command.caret.left.foreground The color of the left-to-right caret in the command area. --------------------------------------------------------------------- 6.19 yudit.command.caret.right.foreground The color of the right-to-left caret in the command area. --------------------------------------------------------------------- 6.20 yudit.command.font String. Virtual font in the command area --------------------------------------------------------------------- 6.21 yudit.command.fontsize String. The font size in the command area. --------------------------------------------------------------------- 6.22 yudit.slider.background The color of the slider. ===================================================================== 7 Configuration Parameters Overwritten by Yudit The following parameters are updated by yudit when it exists. --------------------------------------------------------------------- 7.1 yudit.editor.input String. Last input that was used by the editor when it exited. See yudit.editor.inputs. --------------------------------------------------------------------- 7.2 yudit.editor.font String. Virtual font that was used by the editor when it exited.. See yudit.editor.fonts. --------------------------------------------------------------------- 7.3 yudit.editor.fontsize String. The font size that was used by the editor when it exited. See yudit.editor.fontsizes. ./doc/HOWTO-tibetan.txt0000644000175000017500000001300607713454750014703 0ustar henrichhenrichHow to use Tibetan fonts and keyboard map in Yudit Original: Gregory Mokhin 2002-10-10 Last modified: 2003-08-03 Tibetan support in Yudit is still at beta stage, however it can be useful both for testing purposes and for typing many Tibetan texts using Unicode. You can type Tibetan using Wylie transliteration and you will have proper conversion to Unicode symbols as you type. In case you have an OpenType font, you will have proper display of the majority of Tibetan glyphs, including very complex Tibetan-Sanskrit stacks. But you may still see something unexpected. Introduction Yudit ( http://www.yudit.org ) is a free Unicode editor which can be applied to editing text in Tibetan script (including Tibetan proper and Dzongkha, used mainly in Bhutan). Pre-requisites 1. Download the latest version of Yudit from http://www.yudit.org and follow the installation instructions. 2. Download utibetan.ttf font from *** and copy it into the /usr/share/yudit/fonts or ~/.yudit/fonts UTibetan.ttf font is available under GPL. It was developed by Gregory Mokhin, based on the glyph outlines of the LTibetan.ttf font by Pierre Robillard, who had designed LTibetan and had made it available under GPL (see http://www.interlog.com/~pierrer). 3. There are OpenType Tibetan fonts available elsewhere, but they are not yet supplied with this distribution due to unclear licensing issues. Configuration After installing Yudit and the fonts you need to configure the fonts. First invoke and exit Yudit. This will create a ~/.yudit/yudit.properties file. Edit the font property in this file to add your Tibetan font, for instance: yudit.font.TrueType=arial.ttf,utibetan.ttf ... Add OpenType font to this line if you have one. Select Tibetan for input in the Yudit GUI. This is a clustering kmap, which means that a whole cluster needs to be entered to get proper shaping. Tibetan text rendering It is important to keep in mind the difference between proper encoding of a text (i.e., correct Unicode values for the typed letters and syllables) and proper rendering and display of the text by a word processor. Yudit is capable of using glyph substitution and positioning required for proper display of Tibetan, but only when the font itself has OpenType tables (technically speaking, GSUB and GPOS) and the other OpenType features necessary for the rendering engine to work properly (see the Appendix). Utibetan.ttf is an incomplete version of the font. It contains the glyphs for the basic Unicode points for Tibetan but lacks the OpenType features necessary for proper Tibetan support. These features are currently under development. There exist other Tibetan fonts that do support OpenType features, and Tibetan texts typed in Yudit will be displayed properly with these fonts (when/if these fonts become available for public download by their authors). Typing Tibetan Use Wylie transliteration to type Tibetan. For example, try typing ye shes mig gcig dri ma med to see what manifests. To learn the Wylie transliteration system for Tibetan, one may consult an excellent document prepared by Prof. David Germano and THDL team, http://www.thdl.org, which presents both the original Wylie scheme and their extensions to classic Wylie, called "Extended Wylie." See http://iris.lib.virginia.edu/tibet/tools/ewts.pdf (but note the errata at http://sourceforge.net/tracker/index.php?func=detail&aid=646583&group_id=61934&atid=502515). Thanks to David Chandler for informing me about this.) Note that there is still no consensus regarding a standardized set of extensions to classic Wylie transliteration. However, the differences mainly concern Tibetanized Sanskrit stacks and mantras and punctuation details. Modifying Tibetan kmap If you modify the Tibetan-Wylie.kmap to your needs, you should compile it as follows: $ mytool -convert my -write Tibetan-Wylie.my -kmap Tibetan-Wylie.kmap and substitute the original Tibetan-Wylie.my file coming with Yudit distribution by the compiled Tibetan-Wylie.my file. Please send your comments to the Yudit developers and to me. Gregory Mokhin, Moscow, 03 August 2003 ================================================= Appendix: Technical notes In addition to the general flow of text from left to right, a number of Tibetan letters may also be combined from top to bottom, and the Unicode chart for Tibetan does attempt to take into account this property of Tibetan writing. Unfortunately, the existing Unicode chart for Tibetan is not sufficient for proper display of all Tibetan syllables, and, similar to Indic scripts, requires OpenType glyph substitution and positioning tables to be implemented and applied for proper font rendering. Different variants of subjoined letters should be used for different initial syllables. For example, the "r" in "kr", "khr", "tr", "thr" should represent different variants of subjoined "r", because the vertical position in the syllable with respect to the baseline depends on the initial (upper) part of the syllable. The same is true for subjoined "ya", "wa", and "u". One should also take into account the variations in vertical positioning of the elements mantric syllable stacks, which were originally borrowed from Sanskrit and are quite common in Tibetan texts. In fact, OpenType support for Tibetan is simpler than for Indic scripts. The main registered OpenType layout features needed to support Tibetan script are: 'ccmp', 'blws', 'abvs' - all belonging to GSUB (glyph substitution) 'blwm', 'abvm', 'kern' - all GPOS (glyph positioning) ./doc/HOWTO-arabic.txt0000644000175000017500000000170210434022776014467 0ustar henrichhenrichAbstract -------- This document is about Yudit's Arabic support. There are a couple of Arabic keymaps; you can select one if you click on the blue arrow at the toolbar. Arabic: A transliterated keyboard map. ArabicKeyboard: a keyboard imitation map. Let's select Arabic and type in some letters with spaces in between: ‎ أ ه لاً ب ا ل ع ا ل م!‏ I cheated here: The character ‪U+200E‬ (‪‎‬) at the beginning is to make this line an English text, with embedded Arabic. The ‭‏‬ at the end is to keep the ‪!‬ belonging to RL group. If you take out the spaces we get: ‎ أهلاً بالعالم!‏ Using presentation forms is possible, but not recommended: ‎ ﺃﻫﻼ ً ﺑﺎﻟﻌﺎﻟﻢ!‏ Further Reading: You should also read HOWTO-bidi.txt by typing ‪howto bidi‬ in the command window of Yudit. Version: 1.1 2002-11-14 Version: 1.0 2001-11-25 Gaspar Sinai ./doc/TestPage.txt0000644000175000017500000001457407563714166014111 0ustar henrichhenrich░░░░░░░░░░ Arabic - ‫العربية‬ ░░░░░░░░░░ رأيتها وكانت كالفراشة باهية الألوان وإنما الرقة فهي عنوانه ولكن يا ريتها تتكلم اللغة العربية ░░░░░░░░░░ Azerbaijani Turkish ░░░░░░░░░░ Əzizim kətan yaxşı, |Belədimi qürbət el, Geyməyə kətan yaxşı, |İgid oğul, qürbət el, Qürbət yer cənnət olsa, |Adamı tez qocaldar, Yenə də vətən yaxşı. |Qərib ölkə, qürbət el. | Bu yoldan ötən yaxşı, |Bu yerlər tala yeri, Geyməyə kətan yaxşı, |Bürc yeri, qala yeri, Gəzməyə qürbət ölkə, |Qiyamət o gün qopar, Ölməyə vətən yaxşı. |El köçə, qala yeri. ░░░░░░░░░░ Bengali-বাংলা ░░░░░░░░░░ জগতে আনন্দযজ্ঞে আমার নিমন্ত্রণ ধন্য হল ধন্য হল মানব জীবন । নয়ন আমার রূপের পুরে সাধ মিটায়ে বেড়ায় ঘুরে শ্রবণ আমার বাঁশির সুরে হয়েছে মগন ॥ ░░░░░░░░░░ Bulgarian - Български ░░░░░░░░░░ Настане вечер - месец изгрее, звезди обсипят свода небесен; Гора зашуми, вятър повее, Балканът пее хайдушка песен! Христо Ботев ░░░░░░░░░░ Chinese 中文 ░░░░░░░░░░ 古原草     白居易 离离原上草,一岁一枯荣。 野火烧不尽,春风吹又生。 远芳侵古道,晴翠接荒城。 又送王孙去,萋萋满别情。 ░░░░░░░░░░ German - Deutsch ░░░░░░░░░░ Wenn der Hahn kräht auf dem Mist, ändert sich das Wetter, oder es bleibt wie es ist. ░░░░░░░░░░ Greek - ΕΛΛΗΝΙΚΑ ░░░░░░░░░░ Ὢ ϖόποι, ἦ μέγα ϖένθος οὐκ᾽ Ἀχαιίδα γῆν μόνον, ἀλλὰ καί ϖᾶσαν ὁπόσην ὁ Ῥωμαίων κοσμεῖ ϑεσμός, κατείληφε· μᾶλλον μὲν γὰρ ἴσως ἣν Ἕλληνες οἰκοῦσιν ἅτε και μᾶλλον αἰσθανομένην τοῦ κακοῦ, διήκει δ᾽ οὐν καὶ διὰ ϖάσης γῆς, ὡς ἔϕην, ἡ ϖληγὴ τύπτουσά τε καὶ κατατέμνουσα τὰς ψυχάς, ὡς οὐκέτ᾽ ὂν βιωτὸν ἀνδρὶ βελτίστῳ τε καὶ ὅτῳ τοῦ εὖ ζῆν ἐπιθυμία. ░░░░░░░░░░ Hebrew - ‫עברית‬ ░░░░░░░░░░ שַׂחֲקִי, שַׂחֲקִי עַל הַחֲלוֹמוֹת זוּ אֲנִי הַחוֹלֵם שָׂח שַׂחֲקִי כִּי בָּאָדָם אַאֲמִין כִּי עוֹדֶנִי מַאֲמִין בָּךְ ░░░░░░░░░░ Hindi - हिन्दी ░░░░░░░░░░ होगें कामयाब, होगें कामयाब, हम होगें कामयाब एक दिन । नहीं डर किसी का आज के दिन होगीं शान्ति चारों ओर आज के दिन हम चलेगें साथ-साथ आज क दिन मन में हैं विश्वास, पूरा हैं विश्वास ।। ░░░░░░░░░░ Hungarian - Magyar ░░░░░░░░░░░ A tanyákon túl a puszta mélyén Áll magányos, dőlt kéményű csárda; Látogatják a szomjas betyárok, Kecskemétre menvén a vásárra. ░░░░░░░░░░ Hungarian Runes - Rovásírás ░░░░░░░░░░ ‮‬                         ░░░░░░░░░░ Japanese 日本語 ░░░░░░░░░░ あかねさす 紫野行き 標野行き 野守は見ずや 君が袖振る 額田王 巻一|二十 紫のにほへる妹を憎くあらば 人妻ゆゑに 我恋ひめやも 大海人皇子 巻一|二十一 JISX0213-1:海海𡚴𡸴 JISX0213-2: 呃姮𡜆𡧃 ░░░░░░░░░░ Korean 한국어 ░░░░░░░░░░ 별 : 김남주 밤 들어 세상은/온통 고요한데/그리워 못 잊어 홀로 잠 못 이뤄 불 밝혀 지새우는 것이 있다./사람들은 그것을 별이라 그런다. 기약이라 소망이라 그런다./밤 깊어/가장 괴로울 때면 사람들은 저마다 별이 되어/어머니 어머니라 부른다. ░░░░░░░░░░ Malayalam - മലയാള ം ░░░░░░░░░░ ജാതിഭേദംമതദ്വേഷമേതുമില്ലാതെ സറ്‍വ്വരും സോദരത്വേന വാഴുന്ന മാതൃകാസ്ഥാനമാണിത്‌. ░░░░░░░░░░ Russian - Русский ░░░░░░░░░░ Люблю грозу в начале мая, Когда весенний первый гром, Как бы резвяся и играя, Грохочет в небе голубом. ░░░░░░░░░░ Tamil ░░░░░░░░░░ யாதும் ஊரே யாவரும் கேளிர் தீதும் நன்றும் பிறர் தர வாரா ░░░░░░░░░░ Yiddish - ‫ייִדיש‬ ░░░░░░░░░░ האָב איך מיר אַ מאַנטל פֿון פֿאַרצײַטיקן שטאָף, האָט עס ניט בײַ זיך קײן גאַנצענע שטאָך. דאַרום האָב איך זיך באַטראַכט. פֿון מײַן מאַנטל אַ רעקל געמאַכט. ░░░░░░░░░░ Signs ░░░░░░░░░░ Furigana (Ruby) Text: 漢字かんじ Smiley U+263A[☺]; Smiley (black)U+263B[☻] Tone Letters: ˥˦˧˨˩ Contour Tones: Falling˥˩ Rising ˩˥ Euro U+20AC[€] ./doc/cs/0000755000175000017500000000000011334661334012213 5ustar henrichhenrich./doc/cs/TODO-DOCS.TXT0000644000175000017500000000051307620572546014117 0ustar henrichhenrich2003-02-07 Luboš Staněk o přeložit by bylo možné i některé další zprávy programu (titulky dialogových oken...), návrh na doplnění zdrojů byl předán autorovi o bylo by vhodné vyzkoušet a doporučit nejvhodnější nastavení programu pro české prostředí (písma, kmapy) ./doc/cs/FAQ.TXT0000644000175000017500000001604111334661334013225 0ustar henrichhenrichFAQ pro unikódový editor Yudit ============================== Verze: 2.9.2 Autor: Gaspar Sinai Datum: Tokyo 2007-12-22 Ot1: Jak mohu zobrazit tento FAQ znovu? Od1: Napište `help' do příkazové oblasti. Podobně otevřete testovací stranu, když napíšete `test' do příkazové oblasti. Napište 'howto japanese', 'howto configure' a otevřete stránky jaknato. Ot2: Kde mohu získat aktualizaci? Od2: Stáhněte ji z http://www.yudit.org/ Ot3: Po stisku tlačítka Uložit se nic nestalo. Proč? Od3: Yudit je na příkazové řádce. Nejpravděpodobněji je třeba stisknout klávesu Enter. Ot4: Co znamená [Zalomení řádku] na pravé straně, kde se nejčastěji zobrazuje "Unix"? Od4: Znaky konce řádků jsou: UNIX='\n' - konec řádku v Unixu DOS='\r\n' - konec řádku v DOSu MAC='\r' - konec řádku MAC LS = U+2028 - unikódový oddělovač řádků PS = U+2029 - unikódový oddělovač odstavců V Yuditu je můžete kombinovat - můžete například vytvořit soubor, který má DOSové a Unixové konce řádků. Měli byste se však jejich kombinování vyhnout, pokud je to možné. Ot5: Jak získat seznam kódování (volby -e)? Od5: Napište `man uniconv' nebo `uniconv -h' v okně shellu. Ot6: Jak lze přidat můj soubor klávesnicového vstupu? Od6: Soubor se již může vyskytovat v /usr/share/yudit/data, v tom případě je třeba jej přidat do /usr/share/yudit/config/yudit.properties. Pokud neexistuje, je třeba převést zdrojový soubor kmap do binárního formátu: mytool -type kmap -kmap Moje.kmap -rkmap Moje.kmap -write Moje.my. Pak je třeba zkopírovat Moje.my do ~/.yudit/data cp Moje.my ~/.yudit/data. Prosím, pošlete mi váš soubor kmap (zdroj), abych jej zahrnul do další distribuce. Pro více informací o souborech kmap se podívejte do /usr/share/yudit/doc/keymap-format.txt. Zdrojový kód kmap distribuovaných s yuditem je v /usr/share/yudit/src/. Všimněte si, že soubory kmap mohou být také použity jako textové převodníky a mapy písma. Ot7: Jak lze lokalizovat zprávy do mého vlastního jazyka? Od7: Stáhněte si zdrojový kód a přečtěte si README.TXT. Tam zjistíte, jak to udělat. Prosím, pošlete mi překlady, abych je mohl zahrnout do dalších verzí. Ot8: Jak lze přidat písmo TrueType? Od8: Umístěte soubor-písma.ttf a nějaký-další-soubor-písma.ttf do /usr/share/yudit/fonts nebo ~/.yudit/fonts, pak vložte do /usr/share/yudit/config/yudit.properties nové virtuální písmo MojePismo yudit.font.MojePismo=soubor-písma.ttf,nějaký-další-soubor-písma.ttf,.. Nyní můžete toto písmo použít v okně editoru, pokud jej přidáte do yudit.editor.fonts=...,MojePismo,... nebo v grafickém rozhraní, pokud jej přidáte do yudit.fonts=...,MojePismo,... Ot9: Bude verze pro Windows? Od9: Yudit má abstraktní grafickou knihovnu. Ta umožňuje Yudit přenést velice rychle, jako např. svgalib. Přenesl jsem jej pro svou manželku Yuko v prosinci 2001. To bylo poprvé a naposledy, co jsem se dotkl Windows. Ot10: Jak dobrý unikódový editor je Yudit? Od10: Pokusil jsem se implementovat unikódový standard všude, kde to mělo smysl. Jsou zde však některé zvláštností. Prosím, přečtěte si /usr/share/yudit/doc/HOWTO-bidi.txt, kde najdete informace, jak vyhovuje standardu obousměrnost. Ot11: Na příkazové řádce jsem specifikoval 3 soubory a nyní vidím jen jeden. Od11: Jsou v paměti historie. Pokud přejdete do oblasti příkazového vstupu a stisknete Šipka-nahoru (nebo Ctrl-k) nebo Šipka-dolů (nebo Ctrl-j), můžete procházet historií souborů. Ot12: Co jsou klávesové zkratky? Od12: Většinu z nich můžete vidět - žlutá nápověda je zobrazuje podtržené. Většina z nich by měla pracovat s klávesami Ctrl a Alt. Editor nyní registruje následující vazby kláves: Escape - přepíná mezi příkazovým a editačním režimem, Home - jdi na začátek řádky, End - jdi na konec řádky, b - o stranu výše, f - o stranu níže, k - nahoru, n,j - dolů, h - vlevo, l - vpravo, m - vymazat celý řádek, x - vymazat výběr, v - vložit poslední výběr. Pokud je při pohybu kurzoru stisknuta klávesa Meta, bude text vybírán. Dvojitý klik myší vybírá slovo, trojitý klik vybírá celou řádku. Ot13: Jak si mohu prohlédnout obsah binárního souboru klávesové mapy? Od13: Můžete takto vytvořit výpis zdroje: mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys. Ot14: Jak rychle vložím unikódový znak? Od14: Změňte vstup na [unicode], napište uxxxx nebo Uxxxxxxxx, kde x je a šestnáctkové číslo. Ot15: Má Yudit funkci nahradit? Od15: Je třeba, abyste v příkazové oblasti napsali replace starý-text nový-text a stiskli klávesu enter při každém hledej/nahraď. Ot16: Kde je režim ručního písma? Od16: Klikněte na modrou šipku (režim vstupu). Přiřaďte freehand k jedné z kláves F. Ot17: Jak mohu vypnout zvýrazňování syntaxe? Od17: V příkazové oblasti zadejte: 'syntax none'. Dostupné možnosti jsou zobrazeny chybovou zprávou ve stavové řádce, pokud zadáte pouze 'syntax'. Tuto možnost lze také nastavit v konfiguračním souboru. Ot18: Jak lze vypnout lámání slov? Od18: V příkazové oblasti zadejte: 'wordwrap false'. Zadáním 'wordwrap true' lámání slov zapnete. Tuto možnost lze také nastavit v konfiguračním souboru. Dodatek ======= 1.1. Příklady klávesových map Následující příklady jsou pro některé kmapy, které obsahuje Yudit. Ruská Mapuje foneticky ruská písmena. Nepříliš zřejmá jsou: yo tvoří ё, c tvoří ь, q tvoří ъ, x tvoří ы, ee tvoří э. Maďarská Mapuje maďarské a německé znaky. Akcentované znaky lze vložit jako anglický znak následovaný akcentem. Příklady: a' bude á , o: bude ö , o" bude ő SS vytváří německé ß, Ss dává znak paragrafu §. Kana Mapuje písmo Romaji do písma Hiragana a Katakana. Malá písmena jsou použita pro písmo Hiragana a velká písmena jsou použita pro písmo Katakana. Nepříliš zřejmá jsou: PP - 〒 <> - ◇ <>> - ◆ [] - □, []] - ■ OO - ● * - ☆ ** - ★, ~ - ・ Oo - ◎ o+ - ♀ o- - ♂, oC - ℃ Y= - ¥. Mnemotechnická Pomocí této mapy můžete používat mnemotechniku podle RFC1345 k zadávání znaků. Některé příklady: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶, &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش, SGML mapuje SGML do unikódu. Příklady: ♀ - ♀ ♠ - ♠, ╞ - ╞, █ - █ ░ - ░ ⅛ - ⅛. Hangul mapuje římský přepis do znaků písma Hangul. Je použit přepis podle ISO/TC46/SC2/WG4. Více informací o tom najdete na http://www.hansoft.com/hangul/faq.html. Některé příklady: ulyanghan - 우량한 pyohyeon - 표현, cinseon - 친선, jageug - 자극 hwang geum 황금. ./doc/cs/CHANGELOG-DOCS.TXT0000644000175000017500000000052607620573160014636 0ustar henrichhenrich2003-02-07 Luboš Staněk o vytvořen soubor CHANGELOG-DOCS.TXT o přidán soubor COPYING-DOCS o přeložen soubor FAQ.TXT.in o přeložen soubor HOWTO-configure.txt o přeložen soubor HOWTO-keymap.txt o přeložen soubor HOWTO-windows.txt o přidán soubor TODO-DOCS.TXT o přeložen soubor messages.po ./doc/cs/COPYING-DOCS0000644000175000017500000004327507465360064014015 0ustar henrichhenrich GNU Free Documentation License Version 1.1, March 2000 Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. 0. PREAMBLE The purpose of this License is to make a manual, textbook, or other written document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference. 1. APPLICABILITY AND DEFINITIONS This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not "Transparent" is called "Opaque". Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML produced by some word processors for output purposes only. The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. 2. VERBATIM COPYING You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies. 3. COPYING IN QUANTITY If you publish printed copies of the Document numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages. If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publicly-accessible computer-network location containing a complete Transparent copy of the Document, free of added material, which the general network-using public has access to download anonymously at no charge using public-standard network protocols. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public. It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document. 4. MODIFICATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version: A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission. B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has less than five). C. State on the Title page the name of the publisher of the Modified Version, as the publisher. D. Preserve all the copyright notices of the Document. E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices. F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below. G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice. H. Include an unaltered copy of this License. I. Preserve the section entitled "History", and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence. J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission. K. In any section entitled "Acknowledgements" or "Dedications", preserve the section's title, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein. L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles. M. Delete any section entitled "Endorsements". Such a section may not be included in the Modified Version. N. Do not retitle any existing section as "Endorsements" or to conflict in title with any Invariant Section. If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. You may add a section entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard. You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version. 5. COMBINING DOCUMENTS You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice. The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. In the combination, you must combine any sections entitled "History" in the various original documents, forming one section entitled "History"; likewise combine any sections entitled "Acknowledgements", and any sections entitled "Dedications". You must delete all sections entitled "Endorsements." 6. COLLECTIONS OF DOCUMENTS You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document. 7. AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an "aggregate", and this License does not apply to the other self-contained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document's Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate. 8. TRANSLATION Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail. 9. TERMINATION You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 10. FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/. Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. ADDENDUM: How to use this License for your documents To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page: Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. A copy of the license is included in the section entitled "GNU Free Documentation License". If you have no Invariant Sections, write "with no Invariant Sections" instead of saying which ones are invariant. If you have no Front-Cover Texts, write "no Front-Cover Texts" instead of "Front-Cover Texts being LIST"; likewise for Back-Cover Texts. If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software. ./doc/cs/HOWTO-windows.txt0000644000175000017500000001042207616443446015355 0ustar henrichhenrichYudit je volný unikódový textový editor, který vytvořil Gaspar Sinai. Původně to byla aplikace pro X-windows, ale nyní existuje i verze pro Windows. Základní informace o Yuditu a odkaz ke stažení pro Unix lze nalézt na: http://www.yudit.org/ K prosinci 2002 je nejaktuálnější verze pro Windows: http://www.yudit.org/download/binary/yudit-2.7-1.exe Nějaké informace o verzi pro Windows lze nalézt v: http://www.yudit.org/download/binary/WINDOWS.TXT Dokument, který právě čtete nebyl napsán autorem Yuditu, ale pouze uživatelem Windows, který Yudit vyzkoušel. Cílem tohoto dokumentu je doplnit dokumentaci a soubor FAQ.txt, který je zahrnut v distribuci Yuditu. Pro tisk a náhled tisku budete potřebovat ghostscript a ghostview pro windows. Původně napsal Matt Fishar. Upravil Anirban Mitra. ----- Standardně se Yudit instaluje do složky C:\Program Files\Yudit nebo do libovolné složky, kterou vyberete v průběhu instalace. Když v MS Windows nemůže detekovat uživatelův domácí adresář, vytvoří další adresář, třeba C:\Home a umístí soubory uživatelské dokumentace do podadresáře ".yudit". Tento adresář můžete otevřít stiskem tlačítka Domů v dialogu otevření souboru. [ Je vhodné ukládat vaše unikódové textové soubory do podadresářů tohoto adresáře, zejména v systémech Windows 9x (95, 98 a Me), abyste zabránili jejich poškození Poznámkovým blokem, který na této platformě nerozumí unikódu.] Protože je Yudit vytvořen pro systémy Unix, dodržuje konvence Unixu, které se liší v systémech MS Windows. Podstatné pracovní rozdíly jsou (tento seznam není vyčerpávající): 1. V Yuditu jsou souborové cesty označovány pomocí lomítek ("/") na rozdíl od zpětných lomítek ("\") v MS Windows. Také není akceptována mezera v názvu složky v příkazovém režimu. Musíte si to pamatovat, když otevíráte adresář příkazem "cd" (změnit adresář). Je snadnější použít dialog otevření souboru. Znaky ".." na začátku výpisu adresáře fungují jako tlačítko "nahoru" v Průzkumníku. 2. Unixové příkazy rozlišují malá a velká písmena na rozdíl od Windows nebo DOSu. Takže, napíšete-li v příkazovém režimu "HELP" místo "help" nebo "Replace" místo "replace", nebude to fungovat. 3. Soubory a složky začínající tečkou (jako C:\Home\.yudit) jsou považovány za skryté. Musíte kliknout na tlačítko "zobrazit skryté", abyste je viděli. *Úpravy konfiguračního souboru pro Windows (viz též "howto configure" )* Otevřete soubor Home/.yudit/yudit.properties v Yuditu a změňte následovně položky: Nastavte yudit.fontpath=c:/windows/fonts,c:/home/.yudit/fonts {Podle adresáře písem na vašem počítači}. Cestu zjistíte otevřením ovládacích panelů -> písma. Zapamatujte si: Neukládejte čistá unikódová písma jako raghu.ttf ve složce písem systémů Windows 9x, protože se poškodí vaše systémová písma. Umístěte je místo toho do složky C:\home\.yudit\fonts. Yudit nedodržuje konvence Windows pro práci s myší (t.j., dvojitý klik na souboru k jeho otevření) a klávesové zkratky (t.j., Ctrl-n pro nový soubor, Ctrl-c pro kopírovat, Ctrl-v pro vkládat, Ctrl-z pro akci zpět, Ctrl-y pro akci znovu). Klávesové zkratky Yuditu jsou vysvětleny v následujícím souboru: C:\Program Files\Yudit\doc\FAQ.txt Pokud nefunguje Ctrl-x (pro vyjmout), Ctrl-c (pro kopírovat), Ctrl-v (pro vložit), atd., použijte Alt-x, Alt-c, Stisk "Esc" přepíná Yudit mezi režimem editace a příkazovým režimem a naopak. V editačním režimu musíte stisknout Ctrl současně s klávesovou zkratkou, t.j. Ctrl-b pro stránku nahoru. Více podrobností najdete v Ot12 v souboru FAQ. Klávesy šipek a klávesy stránka nahoru/dolů také pracují. Abyste nalezli a nahradili text, musíte se přepnout do příkazového režimu. Nahrazování je vysvětleno v Ot15 a hledání pracuje podobně (vyjma toho, nemusíte zadávat hodnotu pro nový-text). Text vyberete z klávesnice stiskem Alt a použitím kláves se šipkami. Povšimněte si, že pokud je vaše místní nastavení nakonfigurováno na Hebrejštinu nebo Jidiš "národní prostředí" pro Windows, není to pro Yudit potřeba. Pokud nevíte, co je to "národní prostředí", nevadí. ./doc/cs/README-DOCS.TXT0000644000175000017500000001247007620572524014310 0ustar henrichhenrichNotice: all texts in this directory are utf-8 coded Poznámka: všechny texty v tomto adresáři jsou v kódování utf-8 Český překlad dokumentace editoru Yudit Verze: 2.7.2 Překlad: (c) 2003 Luboš Staněk Licence: Tato dokumentace je volný software; můžete ji kopírovat distribuovat a/nebo modifikovat v souladu s pravidly GNU Free Documentation License, verze 1.1 nebo pozdější, kterou publikovala Free Software Foundation; s žádnou neměnnou sekcí, s žádným textem na přední stranu přebalu a s žádným textem na zadní stranu přebalu. Kopii GNU licence svobodné dokumentace můžete obdržet spolu s tímto programem; pokud zde není, navštivte webové stránky nadace (http://www.fsf.org/) nebo napište na Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Český překlad licencí a často kladené otázky naleznete na českých (http://www.gnu.cz/) nebo anglických (http://www.gnu.org/) stránkách GNU projektu. Tento překlad právní doložky je podle původní licence modifikací, a postrádá tedy její právní závaznost. Z tohoto důvodu je přiloženo její původní znění a současně i plný text licence GFDL. --------- Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy of the GFDL at this address http://www.fsf.org/ or in the file COPYING-DOCS distributed with this manual. This manual is part of a collection of GNOME manuals distributed under the GFDL. If you want to distribute this manual separately from the collection, you can do so by adding a copy of the license to the manual, as described in section 6 of the license. Many of the names used by companies to distinguish their products and services are claimed as trademarks. Where those names appear in any GNOME documentation, and the members of the GNOME Documentation Project are made aware of those trademarks, then the names are in capital letters or initial capital letters. DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: 1. DOCUMENT IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND 2. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. --------- Přeložené soubory: FAQ.TXT.in HOWTO-configure.txt HOWTO-keymap.txt HOWTO-windows.txt messages.po Dokumenty vztahující se k překladu: COPYING-DOCS CHANGELOG-DOCS.TXT README-DOCS.TXT TODO-DOCS.TXT Při překladu jsem používal co možná nejvíce českých zaužívaných termínů. Snažil jsem se, pokud to bylo možné, vyhnout se českému přepisu anglických výrazů, protože pro běžného člověka nejčastěji vypadají jako slangové výrazy z neznámého prostředí, kterým nerozumí stejně jako originálnímu výrazu. Mám vlastní rodný jazyk velmi rád, při překladu jsem se nechtěl stát tvůrcem nových slov ani jsem nechtěl suplovat funkce institucí zodpovědných za správu naší mateřštiny. K smrti mne však děsí výrazy třeba jako "pucle". Poznámky: - překlad byl poskytnut autorovi programu, takže jediným místem, kde jej lze získat, je originální distribuce editoru Yudit - některé překlady termínů, zejména v oblasti obousměrného písma, nemusí být přesné nebo dostatečně jasné, pak se obraťte na původní dokumentaci programu - máte-li zásadní výhrady vůči překladu, buď je předejte autorovi programu, který je pravděpodobně pošle nějakému překladateli, nebo je pošlete přímo na mou adresu, samozřejmě vám ani já ani licence nebráníme si vytvořit vlastní překlad =============================== Luboš Staněk Praha 2003-02-07 ./doc/cs/HOWTO-keymap.txt0000644000175000017500000000445007620557716015156 0ustar henrichhenrich O souborech kmap kmap soubory poskytují vstupní mapování mezi napsanými znaky a požadovanými unikódovými znakovými řetězci. Tyto zdrojové soubory by měly být převedeny pomocí programu mytool do binárního mapového souboru "jméno.my". Obecné zdrojové soubory .mys poskytují více vlastností, Tento formát je doporučeným zdrojem pro nové soubory kmap. Syntaxe je velmi jednoduchá a je navržena tak, aby bylo možné soubor zahrnout do progamu v c++. Poznámky poznámky by měly začínat // mapa Jedna řádka může obsahovat pouze jednu mapu. Mapa začíná a končí znakem uvozovek. Znak uvozovek může být vložen do řádky s použitím oddělovače \". Mezery jsou ignorovány. Část řetězce, která začíná číslem je považována za unikódový znakový kód. Lze specifikovat osmičková, desítková a šestnáctková čísla. Levá strana znaku '=' je napsaný znakový řetězec a pravá strana je mapovaný unikódový řetězec. Vzorové mapové řádky z Kana.kmap: "\033 KE=0x30F5", // SMALL KE "\"R=0x201D", // RIGHT DOUBLE QUOTATION MARK "kke=0x3063 0x3051", "0x20 = 0x201D", // INPUT LITERAL BLANK "0x31= 0x31", // DIGITS "&/ /=0x005C", // YUDIT NEEDS SPACE BETWEEN / / "0x3D=0x003D", // INPUT '=' SIGN THIS WAY Pokud lze překlad rozdělit na (maximálně 5) podřízené překlady, pak může první řádka v souboru kmap obsahovat: "řetězec1+řetězec2+řetězec...", Následující řádky obsahují mezi "begin řetězec1" a "end řetězec1" řádky podřízených překladů. Výsledné unikódové číslo je hodnota sloučených podřízených překladů. Vestavěné unikódové řazení a kmapy Hangul používají tuto metodu. Podřízené překlady mohou obsahovat prázdné řetězce "=0x0021", ale samostatné nemohou. Překlad používá lačný algoritmus, avšak je-li první podřízený překlad rovný prázdnému řetězci, může být jeden znak vypůjčen z předchozího překladu. Gaspar Sinai Tokyo 2001-01-11 ./doc/cs/FAQ.TXT.in0000644000175000017500000001600111331217502013615 0ustar henrichhenrichFAQ pro unikódový editor Yudit ============================== Verze: 2.9.2 Autor: Gaspar Sinai Datum: Tokyo 2007-12-22 Ot1: Jak mohu zobrazit tento FAQ znovu? Od1: Napište `help' do příkazové oblasti. Podobně otevřete testovací stranu, když napíšete `test' do příkazové oblasti. Napište 'howto japanese', 'howto configure' a otevřete stránky jaknato. Ot2: Kde mohu získat aktualizaci? Od2: Stáhněte ji z http://www.yudit.org/ Ot3: Po stisku tlačítka Uložit se nic nestalo. Proč? Od3: Yudit je na příkazové řádce. Nejpravděpodobněji je třeba stisknout klávesu Enter. Ot4: Co znamená [Zalomení řádku] na pravé straně, kde se nejčastěji zobrazuje "Unix"? Od4: Znaky konce řádků jsou: UNIX='\n' - konec řádku v Unixu DOS='\r\n' - konec řádku v DOSu MAC='\r' - konec řádku MAC LS = U+2028 - unikódový oddělovač řádků PS = U+2029 - unikódový oddělovač odstavců V Yuditu je můžete kombinovat - můžete například vytvořit soubor, který má DOSové a Unixové konce řádků. Měli byste se však jejich kombinování vyhnout, pokud je to možné. Ot5: Jak získat seznam kódování (volby -e)? Od5: Napište `man uniconv' nebo `uniconv -h' v okně shellu. Ot6: Jak lze přidat můj soubor klávesnicového vstupu? Od6: Soubor se již může vyskytovat v @YUDIT_DATA@/data, v tom případě je třeba jej přidat do @YUDIT_DATA@/config/yudit.properties. Pokud neexistuje, je třeba převést zdrojový soubor kmap do binárního formátu: mytool -type kmap -kmap Moje.kmap -rkmap Moje.kmap -write Moje.my. Pak je třeba zkopírovat Moje.my do ~/.yudit/data cp Moje.my ~/.yudit/data. Prosím, pošlete mi váš soubor kmap (zdroj), abych jej zahrnul do další distribuce. Pro více informací o souborech kmap se podívejte do @YUDIT_DATA@/doc/keymap-format.txt. Zdrojový kód kmap distribuovaných s yuditem je v @YUDIT_DATA@/src/. Všimněte si, že soubory kmap mohou být také použity jako textové převodníky a mapy písma. Ot7: Jak lze lokalizovat zprávy do mého vlastního jazyka? Od7: Stáhněte si zdrojový kód a přečtěte si README.TXT. Tam zjistíte, jak to udělat. Prosím, pošlete mi překlady, abych je mohl zahrnout do dalších verzí. Ot8: Jak lze přidat písmo TrueType? Od8: Umístěte soubor-písma.ttf a nějaký-další-soubor-písma.ttf do @YUDIT_DATA@/fonts nebo ~/.yudit/fonts, pak vložte do @YUDIT_DATA@/config/yudit.properties nové virtuální písmo MojePismo yudit.font.MojePismo=soubor-písma.ttf,nějaký-další-soubor-písma.ttf,.. Nyní můžete toto písmo použít v okně editoru, pokud jej přidáte do yudit.editor.fonts=...,MojePismo,... nebo v grafickém rozhraní, pokud jej přidáte do yudit.fonts=...,MojePismo,... Ot9: Bude verze pro Windows? Od9: Yudit má abstraktní grafickou knihovnu. Ta umožňuje Yudit přenést velice rychle, jako např. svgalib. Přenesl jsem jej pro svou manželku Yuko v prosinci 2001. To bylo poprvé a naposledy, co jsem se dotkl Windows. Ot10: Jak dobrý unikódový editor je Yudit? Od10: Pokusil jsem se implementovat unikódový standard všude, kde to mělo smysl. Jsou zde však některé zvláštností. Prosím, přečtěte si @YUDIT_DATA@/doc/HOWTO-bidi.txt, kde najdete informace, jak vyhovuje standardu obousměrnost. Ot11: Na příkazové řádce jsem specifikoval 3 soubory a nyní vidím jen jeden. Od11: Jsou v paměti historie. Pokud přejdete do oblasti příkazového vstupu a stisknete Šipka-nahoru (nebo Ctrl-k) nebo Šipka-dolů (nebo Ctrl-j), můžete procházet historií souborů. Ot12: Co jsou klávesové zkratky? Od12: Většinu z nich můžete vidět - žlutá nápověda je zobrazuje podtržené. Většina z nich by měla pracovat s klávesami Ctrl a Alt. Editor nyní registruje následující vazby kláves: Escape - přepíná mezi příkazovým a editačním režimem, Home - jdi na začátek řádky, End - jdi na konec řádky, b - o stranu výše, f - o stranu níže, k - nahoru, n,j - dolů, h - vlevo, l - vpravo, m - vymazat celý řádek, x - vymazat výběr, v - vložit poslední výběr. Pokud je při pohybu kurzoru stisknuta klávesa Meta, bude text vybírán. Dvojitý klik myší vybírá slovo, trojitý klik vybírá celou řádku. Ot13: Jak si mohu prohlédnout obsah binárního souboru klávesové mapy? Od13: Můžete takto vytvořit výpis zdroje: mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys. Ot14: Jak rychle vložím unikódový znak? Od14: Změňte vstup na [unicode], napište uxxxx nebo Uxxxxxxxx, kde x je a šestnáctkové číslo. Ot15: Má Yudit funkci nahradit? Od15: Je třeba, abyste v příkazové oblasti napsali replace starý-text nový-text a stiskli klávesu enter při každém hledej/nahraď. Ot16: Kde je režim ručního písma? Od16: Klikněte na modrou šipku (režim vstupu). Přiřaďte freehand k jedné z kláves F. Ot17: Jak mohu vypnout zvýrazňování syntaxe? Od17: V příkazové oblasti zadejte: 'syntax none'. Dostupné možnosti jsou zobrazeny chybovou zprávou ve stavové řádce, pokud zadáte pouze 'syntax'. Tuto možnost lze také nastavit v konfiguračním souboru. Ot18: Jak lze vypnout lámání slov? Od18: V příkazové oblasti zadejte: 'wordwrap false'. Zadáním 'wordwrap true' lámání slov zapnete. Tuto možnost lze také nastavit v konfiguračním souboru. Dodatek ======= 1.1. Příklady klávesových map Následující příklady jsou pro některé kmapy, které obsahuje Yudit. Ruská Mapuje foneticky ruská písmena. Nepříliš zřejmá jsou: yo tvoří ё, c tvoří ь, q tvoří ъ, x tvoří ы, ee tvoří э. Maďarská Mapuje maďarské a německé znaky. Akcentované znaky lze vložit jako anglický znak následovaný akcentem. Příklady: a' bude á , o: bude ö , o" bude ő SS vytváří německé ß, Ss dává znak paragrafu §. Kana Mapuje písmo Romaji do písma Hiragana a Katakana. Malá písmena jsou použita pro písmo Hiragana a velká písmena jsou použita pro písmo Katakana. Nepříliš zřejmá jsou: PP - 〒 <> - ◇ <>> - ◆ [] - □, []] - ■ OO - ● * - ☆ ** - ★, ~ - ・ Oo - ◎ o+ - ♀ o- - ♂, oC - ℃ Y= - ¥. Mnemotechnická Pomocí této mapy můžete používat mnemotechniku podle RFC1345 k zadávání znaků. Některé příklady: &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶, &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش, SGML mapuje SGML do unikódu. Příklady: ♀ - ♀ ♠ - ♠, ╞ - ╞, █ - █ ░ - ░ ⅛ - ⅛. Hangul mapuje římský přepis do znaků písma Hangul. Je použit přepis podle ISO/TC46/SC2/WG4. Více informací o tom najdete na http://www.hansoft.com/hangul/faq.html. Některé příklady: ulyanghan - 우량한 pyohyeon - 표현, cinseon - 친선, jageug - 자극 hwang geum 황금. ./doc/cs/HOWTO-configure.txt0000644000175000017500000004470507620433114015641 0ustar henrichhenrichYudit: HOWTO-configure.txt ===================================================================== Verze: 2.2 Autor: Gaspar Sinai Datum: Tokyo 2001-02-06 Tento dokument popisuje, jak konfigurovat Yudit. ===================================================================== 1 Načítání konfiguračního souboru Při spuštění načítá Yudit konfigurační soubor: /share/yudit/config/yudit-properties, kde je instalační prefix, obvykle /usr. To je systémový konfigurační soubor. Pokud je soubor nalezen, jeho položky jsou sloučeny se základní konfigurací zabudovanou v programu. Po startu se pokusí vytvořit adresáře: ~/.yudit ~/.yudit/fonts ~/.yudit/data, pokud ještě neexistují. ~/ znamená domovský adresář uživatele, například '/home/gsinai'. Pokusí se načíst soubor ~/.yudit/yudit.properties. Existující položky v tomto souboru přepíší dříve načtené položky systémové konfigurace. Při ukončení Yuditu se pokusí sloučit určité parametry v tomto souboru s některými parametry, které může uživatel změnit v prostředí Yuditu. V současnosti jsou nahrazovány tyto parametry: yudit.editor.font yudit.editor.fontsize yudit.editor.input yudit.filetypes. ===================================================================== 2 Formát konfiguračního souboru Konfigurační soubory obsahují takovéto řádky: hierarchical.key.string=value nebo hierarchical.key.string=value1,value2,value3 Je velmi důležité, že nikde nemají být žádné mezery navíc. Dvě samostatné řádky lze spojit znakem '\', ale není to žádoucí, zejména v uživatelově konfiguračním souboru. Yudit spojí tyto řádky v souboru. Mějte na paměti: je-li specifikováno pole v systémovém konfiguračním souboru s prvky hodnota1,hodnota2,hodnota3 a stejné pole je i v konfiguračním souboru uživatele s prvky máhodnota1,máhodnota2, všechny prvky pole budou načteny z konfiguračního souboru uživatele: máhodnota1,máhodnota2. ===================================================================== 3 Základní konfigurační parametry Jsou to parametry, které mají podstatný vliv na yudit. Můžete přidat virtuální písma, volby okna editoru, jako je velikost písma, +vstupní metody. --------------------------------------------------------------------- 3.1 yudit.datapath Parametr pole. Příklad: yudit.datapath=/usr/share/yudit/data,/home/gsinai/data,... Je to velmi důležitý parametr. Definuje vyhledávací cestu, Yudit zde bude hledat soubory-my, které potřebuje k mapování písem, vytváření vstupních metod, a převodníky. Všimněte si, že adresáře /yudit/data ~/.yudit/data budou vždy přidány do seznamu. --------------------------------------------------------------------- 3.2 yudit.fontpath Parameter pole. Příklad: yudit.fontpath=/usr/share/yudit/fonts,/usr/share/truetype/,... Tento parametr definuje vyhledávací cestu pro písma True Type. Všimněte si, že adresáře /yudit/fonts ~/.yudit/fonts budou vždy přidány do seznamu. --------------------------------------------------------------------- 3.3 yudit.fonts, yudit.editor.fonts (4.1) Parametry pole. Oba definují dostupná písma. yudit.editor.fonts(4.1) definuje dostupná písma, která mohou být zvolena v editačním okně Yuditu. Písma dostupná v dalších částech rozhraní (popisky, tlačítka) jsou množinou obou. Příklad: yudit.editor.fonts=default,TrueType,Bitmap yudit.fonts=buttonfont,labelfont Pak budou dostupná následující virtuální písma: Shift-F1 - default Shift-F2 - TrueType Shift-F3 - Bitmap Lze použít jakékoli názvy. Názvy "None" nebo "none" jsou speciální. Znamenají, že nejsou žádány žádné změny písma, i když byla stisknuta odpovídající kombinace kláves Shift-Fxx. Tyto názvy virtuálních písem by měly být definovány později parametrem yudit.font.. Název default je definován interně a není požadováno, aby byl definován v parametru yudit.font.default, pokud to neděláte úmyslně se znalostí věci. Písmo default má na první řádce unicode.hex. Takže, pokud vložíte unifont.hex do ~/.yudit/fonts můžete okamžitě editovat soubory. --------------------------------------------------------------------- 3.4 yudit.font. Pole. Tento parametr definuje virtuální písmo, které bylo specifikováno v 3.3. Příklad: yudit.font.TrueType=arial.ttf,cyberbit.ttf,*-iso8859-1 Takto se definuje a virtuální písmo, na které se lze odkazovat aliasem TrueType. Toto virtuální písmo se pokouší nalézt 3 soubory písem v cestách fontpath (3.2), a pokud je nenalezne, pokouší se je načíst jako písma x11. Nejpravděpodobněji najde: /usr/share/yudit/font/arial.ttf /usr/share/yudit/font/cyberbit.ttf, a nenajde žádný soubor jména *-iso8859-1, takže se pokusí najít nejbližší shodu u X11 serveru, písmo jako: -adobe-courier-bold-o-normal--12-120-75-75-m-70-iso8859-1, v případě, že použitá velikost písma byla 12. Deklarace *-iso8859-1 byla dost neúplná, může být definována mnohem přesněji. Yudit má zabudované převodníky pro většinu standardních kódování písem X11. (zdroj swindow/sx11/SX11Font.cpp) *-iso10646-1 *-iso10646p2-<1-16> *-iso8859-<1-9> *-koi8-1 *-koi8-r *-ksc5601* *-jisx0208* *-jisx0201* *-jisx0212*-0 *-big5* *-gb2312* *-iso646* Písma dostupná ve vašem X11 serveru ověříte příkazem xlsfonts na příkazové řádce shellu. Yudit má zabudovaný převodník ucs-2 pro písma True Type. To je užitečné pro písma True Type, která mají atributy platform=3 encoding=1, platform=2 encoding=1 nebo platform=1. Pokud máte písmo, které neobsahuje unikódovou tabulku, musím upravit encodingVector v swindow/SFontTTF.cpp ve zdrojovém stromu yuditu a přidat převodník. Prosím, pošlete mi vaše případné úpravy. Pokud písmo není unikódové a existuje převodník .my, lze mu přiřadit volitelný parametr: yudit.font.:něc.ttf: Speciální klíčové slovo 'unicode' lze připojit k písmům kódovaným v unikódu. Ještě další parametr lze připojit k písmům, která specifikují svůj počáteční směr, např.: yudit.ttf:unicode:LR - směr zleva-doprava yudit.ttf:unicode:RL - směr zprava-doleva. To je důležité jen tehdy, když potřebujete zrcadlit glyfy, jako Old Italic nebo Old Hungarian. GNU Unifont může být použit přímo zadáním jména s příponou .hex, takto: unifont.hex. ===================================================================== 4 Konfigurační parametry menu Tyto konfigurační parametry vytvoří možnosti v editoru. --------------------------------------------------------------------- 4.1 yudit.editor.fonts Pole. Definuje volby písma pro grafické rozhraní. Viz též yudit.fonts --------------------------------------------------------------------- 4.2 yudit.editor.fontsizes Pole. Definuje dostupné velikosti písma. Příklad: yudit.editor.fontsize=12,14,16,18,24,48 Protože velikosti písem X11 budou definovány jako celá čísla, nepoužívejte zde, prosím, reálné hodnoty. Tato hodnota nahradí velikost písma v XLFD pro písma X11. Písma True Type budou používány v měřítku, jako by obrazovka byla v rozlišení 72 dpi. --------------------------------------------------------------------- 4.3 yudit.editor.inputs Pole. Definuje uživatelsky volitelné vstupní metody. Tyto vstupní metody mohou pocházet ze souboru .my podle parametru yudit.datapath (3.1.). Všimněte si, prosím, že soubory kmap v /yudit/src jsou nainstalovány pouze pro referenci. Mohou být použity až po převodu do formátu .my a po správném umístění do adresáře v cestě yudit.datapath - většina z nich tam je. Konfigurační příklad: yudit.editor.inputs=straight,unicode,kinput2,Hungarian,None,Esperanto\ freehand Pak se načtou: F1 straight: zabudovaná - žádné mapování F2 unicode: zabudovaná - \uxxxx oddělovačem uvozené kódy F3 kinput2: zabudovaná - _JAPANESE_CONVERSION F4 Hungarian: externí soubor Hungarian.my, který je hledán a pravděpodobně nalezen v /usr/share/yudit/data/Hungarian.my F5 None: při stisku F5 se nic nestane F6 Esperanto: externí, jako Hungarian F7 freehand: interní, stroj ručního písma s externími popisnými soubory ručního písma. Pokud si chcete vytvořit vlastní vstupní soubor klávesnice .my, měli byste si přečíst soubor /share/yudit/doc/keymap-format.txt a konzultovat manuálovou stránku programu mytool. Protože kmapy mohou být použity jako externí textové převodníky, uniconv -h vypíše seznam těch, které nalezne v cestě datapath. Můžete si také vytvořit vlastní soubor rozpoznávání ručního písma. Přečtěte si, prosím, /share/yudit/doc/README-FREEHAND, kde najdete návod. --------------------------------------------------------------------- 4.3 yudit.editor.xinputs Seznam x vstupních metod ve formě jméno:lokalizace, kde :lokalizace je volitelná. Vstup se objeví na liště jako x-jméno. Příklad: interxim,kinput2:ja_JP.eucJP,xcin:zh_TW.big5,Ami:ko_KR Speciální metoda: utf-8 - předá všechny řetězce X11, jak jsou - v unikódu, pokud X11 podporuje utf-8. Jestliže specifikujete lokalizaci, např, 'utf-8:hu_HU', pak je lokalizace nastavena před přepnutím do tohoto režimu, což umožňuje sestavování znaků ve stylu X11. Všímněte si, že pokud má lokalizace kódování ve formě: jazyk_VARIANTA.kódovástránka, bude pro kódování použit vlastní převodník řetězců Yuditu. Také se budou používat některé aliasy: eucjp -> euc-jp; euckr -> euc-kr; big5 -> big-5; V zájmu nahradit vyřazené gb-2312 se také použijí následující kompatibilní aliasy: gb2312 -> gb-18030; gb-2312 -> gb-18030; gb18030 -> gb-18030 Samozřejmě můžete úplně vynechat kódování: ko_KR znamená použít vyhledávání utf-8. Všimněte si, že konverze začíná a končí stiskem . Spustit kinput2 a canna: kinput2 -canna & Spustit Ami: export LC_ALL=ko_KR; ami Spustit xcin (režim big5): export LC_ALL=zh_TW.big5; xcin Spustit xcin (režim gb2312): export LC_ALL=zh_CN.GB2312; xcin Všimněte si, že kinput2 může mít konfigurační soubor ve vašem domovském adresáři: nazvaný '.canna'. Pak doporučuji, abyste okomentovali toto: ;;(global-set-key "\F1" 'extend-mode), jinak se mohou dít podivné věci, když stisknete F1. --------------------------------------------------------------------- 4.4 yudit.editor.filetypes Pole. Tento seznam se přidá k původnímu seznamu souborových typů v dialogu souborů. Normálně by dialog souborů zobrazil jen zabudované typy. Jinak se tomu říká kódování (3.6.) Příklad: yudit.editor.filetypes=Hungarian,Hangul Používám tyto klávesnicové mapy k převodu textů maďarštiny nebo hangul. ===================================================================== 5. Výchozí konfigurační parametry Tyto parametry nastavují některé počáteční hodnoty. --------------------------------------------------------------------- 5.1 yudit.default.filtype Řetězec. Definuje, které kódování se použije zpočátku při spuštění Yuditu. Úplný seznam podporovaných kódování získáte zadáním uniconv -h v okně shellu. Jinak se tomu říká typ souborů v dialogu souborů. Příklad: yudit.default.filetype=utf-8 --------------------------------------------------------------------- 5.2 yudit.default.printer.options Řetězec. Definuje možnosti, které jsou předány příkazu 'lpr' při tisku. Příklad: yudit.default.printer.options=-P NázevTiskárny --------------------------------------------------------------------- 5.3 yudit.default.preview.command Řetězec. Definuje příkaz použitý, je-li stisknuto tlačítko náhled tisku. Jde o úplný unixový příkaz, který se provede takto /bin/sh -c 'cokoli jste konfigurovali' a postscriptový výstup se předá tomuto příkazu. Příklad: yudit.default.preview.command=ghostview - --------------------------------------------------------------------- 5.4 yudit.default.clipboard.encoding Převodník schránky pro vyjmout a vložit v X11, pokud je požadovaný text typu COMPOUND_TEXT. COMPOUND_TEXT by mohl být dekódován yuditem, pokud by existoval univerzální dekodér. Na druhé straně kódování není jednoznačné, protože existují znaky, které zaujímají stejné místo v unikódu, ale liší se v typu COMPOUND_TEXT. Z toho důvodu a proto, že yudit nemá univerzální dekodér, je třeba výslovně nastavit tento převodník. Zkuste použít nějaký iso-2022-x11 pro japonský nebo ksc-5601-x11 pro korejský systém XWindow. 5.5 yudit.default.geometry Specifikuje počáteční velikost okna editoru. Předvolená hodnota je "780x480". To znamená 780 pixelů šířky a 480 pixelů výšky. ===================================================================== 6 Konfigurační parametry ke změně vzhledu Tyto parametry mění barvy, písma v grafické rozhraní a editační oblasti. Všechny tyto parametry jsou řetězce. Všechny barvy mohou být názvy barev nebo hodnoty #rrggbb, kde rr, gg a bb jsou 8-bitové šestnáctkové kódy pro červenou, zelenou a modrou barevnou komponentu. Booleovské hodnoty mohou být true nebo false. --------------------------------------------------------------------- 6.1 yudit.default.language Jazyk uživatelského rozhraní. Podívejte se, prosím, do /share/yudit/locale/, kde zjistíte, která dvoupísmenná jména jsou podporována. Příklad: yudit.default.language=ja Pokud tento parametr chybí nebo obsahuje prázdný řetězec použije se proměnná prostředí LANG nebo pokud chybí, tak proměnná LANGUAGE. Pokud tohle všechno selže, použije se angličtina. Pokud máte zájem přeložit yudit do vašeho vlastního jazyka, měli byste si přečíst /share/yudit/README.TXT. --------------------------------------------------------------------- 6.2 yudit.default.font Zatímco yudit.editor.font nastavuje počáteční písmo v editační oblasti, tímto se nastaví písmo v dalších komponentách, popiskách a tlačítkách. --------------------------------------------------------------------- 6.3 yudit.default.fontsize Zatímco yudit.editor.fontsize nastavuje počáteční velikost písma v editační oblasti, tímto se nastaví velikost písma v dalších komponentách, popiskách a tlačítkách. --------------------------------------------------------------------- 6.4 yudit.background Barva pozadí oken Yuditu. --------------------------------------------------------------------- 6.5 yudit.label.foreground Barva popředí oken vzhledu popisků. --------------------------------------------------------------------- 6.6 yudit.title.foreground Barva popředí oken vzhledu titulků. --------------------------------------------------------------------- 6.7 yudit.editor.background Barva pozadí editační oblasti. --------------------------------------------------------------------- 6.8 yudit.editor.left.foreground Barva popředí textu zleva-doprava v okně editoru. --------------------------------------------------------------------- 6.9 yudit.editor.right.foreground Barva popředí textu zprava-doleva v okně editoru. --------------------------------------------------------------------- 6.10 yudit.editor.caret.left.foreground Barva kurzoru zleva-doprava v okně editoru. --------------------------------------------------------------------- 6.11 yudit.editor.caret.right.foreground Barva kurzoru zprava-doleva v okně editoru. --------------------------------------------------------------------- 6.12 yudit.editor.showbreak Booleovská hodnota. Akceptované hodnoty: true nebo false. Je-li nastavena true, yudit bude vzhledově indikovat znaky konce řádky. --------------------------------------------------------------------- 6.13 yudit.editor.wordwrap Booleovská hodnota. Akceptované hodnoty: true nebo false. Je-li nastavena true, yudit bude jednoduchým algoritmem lámat slova. --------------------------------------------------------------------- 6.14 yudit.editor.syntax Řetězec. Nyní jsou podporovány pouze tyto hodnoty: none - žádné zvýrazňování simple - čísla: oranžová, oddělovač: modrá --------------------------------------------------------------------- 6.15 yudit.command.background Barva pozadí příkazové oblasti. --------------------------------------------------------------------- 6.16 yudit.command.left.foreground Barva popředí textu zleva-doprava v příkazové oblasti. --------------------------------------------------------------------- 6.17 yudit.command.right.foreground=yellow Barva popředí textu zprava-doleva v příkazové oblasti. --------------------------------------------------------------------- 6.18 yudit.command.caret.left.foreground Barva kurzoru zleva-doprava v příkazové oblasti. --------------------------------------------------------------------- 6.19 yudit.command.caret.right.foreground Barva kurzoru zprava-doleva v příkazové oblasti. --------------------------------------------------------------------- 6.20 yudit.command.font Řetězec. Virtuální písmo v příkazové oblasti. --------------------------------------------------------------------- 6.21 yudit.command.fontsize Řetězec. Velikost písma v příkazové oblasti. --------------------------------------------------------------------- 6.22 yudit.slider.background Barva posuvníku. ===================================================================== 7 Konfigurační parametry přepisované Yuditem Následující parametry jsou aktualizovány yuditem, pokud existují. --------------------------------------------------------------------- 7.1 yudit.editor.input Řetězec. Poslední použitá vstupní metoda, než byl editor ukončen. Viz yudit.editor.inputs. --------------------------------------------------------------------- 7.2 yudit.editor.font Řetězec. Virtuální písmo, které bylo naposledy použito před ukončením editoru. Viz yudit.editor.fonts. --------------------------------------------------------------------- 7.3 yudit.editor.fontsize Řetězec. Velikost písma, která byla naposledy použita před ukončením editoru. Viz yudit.editor.fontsizes. ./doc/otfsupport.txt0000644000175000017500000000304107720670652014601 0ustar henrichhenrichYudit-2.7.6. Open Type Support Whenever there is a font that needs support for some table it can be added: swindow/SFontOTF.cpp: #define PRINT_UNSUPPORTED 1 #define PRINT_UNDEBUGGED 1 This will print out the unsupported formats in a particular font. ================================================ GSUB ================================================ 1 Single Substitution 1.1 Format-1 YES 1.2 Format-2 YES 2 Multiple Substitution 2.1 Fomrat-1 NO 3 Alternate Substitution 3.1 Fomrat-1 PARTIAL (as Contextual Substitution Reference) 4 Ligature Substitution 4.1 Format-1 YES 5 Contextual Substitution 5.1 Simple NO 5.2 Class-Based YES 5.3 Coverage-Based NO 6 Chaining Contextual Substitution 6.1 Simple NO 6.2 Class-Based YES 6.2 Coverage-Based YES 7 Extension Substitution 7.1 Fomrat-1 NO 8 Reverse Chainin Contextual Single Substitution 8.1 Coverage-Based NO ================================================ GPOS ================================================ 1 Single Adjustment 1.1 Format-1 NO 1.2 Format-2 NO 2 Pair Adjustment 2.1 Format-1 NO 2.2 Format-2 NO - Undebugged 3 Cursigne Attachment 3.1 Format-1 NO 4 MarkToBase Attachment 4.1 Format-1 YES 5 MarkToLigature Attachment 5.1 Format-1 NO 6 MarkToMark Attachment 6.1 Format-1 YES 7 Contextual Positioning 7.1 Simple NO 7.2 Class-Based NO 7.3 Coverage-Based NO 8 Chaining Contextual Positioning 8.1 Simple NO 8.2 Class-Based NO - Undebugged 8.3 Coverage-Based NO 9 Extension Positioning 9.1 Formta-1 NO ./doc/HOWTO-baybayin.txt0000644000175000017500000000426610227223726015052 0ustar henrichhenrichBaybayin input in Yudit with Baybayin.kmap Introduction ------------ Babayin in the ancient writing system of the Tagalog people and other tribes in the Philippines. It is a syllabary with 3 vowels, 14 consonants and 2 punctuation marks. Later in time, a virama or vowel killer was added. Installation ------------ It is assumed in this document that you have already installed yudit in your machine. 1. Download a unicode baybayin font preferably the opentype font "bbyiOT.ttf" and the keymap "Baybayin.my" from http://tagalog.ws. 2. Copy "bbyiOT.ttf" or any unicode baybayin font to /usr/share/yudit/fonts/ or ~/.yudit/fonts/ 3. After that modify /usr/share/config/yudit.properties or ~/.yudit/yudit.properties with a text editor. Add a your new font by inserting the following line: yudit.font.MyFont=bbyiOT.ttf,... You can use this font in the editor window if you add it to: yudit.editor.fonts=.../MyFont,... 4. Copy "Baybayin.my" /usr/share/yudit/data/ or ~/.yudit/data/ 5. Start Yudit and select Myfont for fonts and Baybayin for keymap. Now you can start typing in baybayin. Have fun! Keymap ------ The following are the keys that are not the same as latin keys. A/a = Tagalog A capital O/U = Tagalog O/U capital E/I = Tagalog E/I small letter o/u = Tagalog vowel mark o/u below the letter small letter e/i = Tagalog vowel mark e/i above the letter J/j = Tagalog NGA C/c = Tagalog period F/f = Tagalog comma V/v = Tagalog virama The rest are intuitive for latin typist. h/H = Tagalog HA p/P = Tagalog PA k/K = Tagalog KA s/S = Tagalog SA l/L = Tagalog LA t/T = Tagalog TA n/N = Tagalog NA b/B = Tagalog BA m/M = Tagalog MA g/G = Tagalog GA r/R = Tagalog RA d/D = Tagalog DA y/Y = Tagalog YA w/W = Tagalog WA If you wish to create a phonetic transliteration from latin to baybayin, read the HOWTO-keymap.txt of yudit. Sample text ----------- ᜀᜅ᜔ ᜑᜒᜈ᜔ᜇᜒ ᜋᜄ᜔ᜋᜑᜎ᜔ ᜐ ᜐᜇᜒᜎᜒᜅ᜔ ᜏᜒᜃ ᜀᜌ᜔ ᜋᜐᜑᜓᜎ᜔ ᜉ ᜐ ᜋᜎᜈ᜔ᜐᜅ᜔ ᜁᜐ᜔ᜇ by Roel P. Cantada Philippines, 4-11-2005 ./doc/ko/0000755000175000017500000000000011334661334012217 5ustar henrichhenrich./doc/ko/FAQ.TXT0000644000175000017500000002420711334661334013234 0ustar henrichhenrichYudit 유니코드 편집기 잦은 질문과 답 ======================== 판: 2.9.2 저자: Gaspar Sinai 최종 수정일: 2003년 6월 25일 (동경, 일본) 질문 1: 이 질문과 답을 다시 보려면 어떻게 해야 합니까? 답 1: 명령어 영역에서 `help'라고 치십시오. 또, 거기에서 `test'라고 치면 유디트 시험 페이지를 볼 수 있습니다. `howto ' (예를 들어, `howto configure')를 치면 howto 문서를 볼 수 있습니다. 질문 2: 최신판은 어디서 구할 수 있나요? 답 2: 에서 내려 받을 수 있습니다. 질문 3: 저장 단추를 클릭했는데도 아무런 일이 안 생깁니다. 왜 그런가요? 답 3: Yudit has a command line. Most propbably you just need to hit Enter Key. 질문 4: 거의 항상 "Unix"라고 설정되어 있는 메뉴바의 맨 오른쪽에 있는 [줄 바꿈]은 무엇을 위한 것인가요? A4: 줄바꿈 문자는 운영 체계나 사용자 필요에 따라 다릅니다. 유디트는 다음을 지원합니다. UNIX='\n' - 유닉스 방식 줄 바꿈 DOS='\r\n' - 도스 방식 줄 바꿈 MAC='\r' - 맥 방식 줄 바꿈 LS = U+2028 - 유니코드의 줄 바꿈 문자 PS = U+2029 - 유니코드의 단락 바꿈 문자 유디트에서는 이들 줄 바꿈 문자를 섞어 쓸 수 있습니다. 예를 들어, 도스 방식 줄 바꿈과 유닉스 방식 줄 바꿈이 섞인 문서를 만들 수 있습니다. 하지만, 가능하면 둘 이상의 줄 바꿈 문자를 섞는 일은 피하십시오. 질문 5: 어떻게 하면 `-e 인코딩' 옵션에 지정할 인코딩 목록을 알 수 있나요? 답 5: `man uniconv' 혹은 `uniconv -h'이라고 명령행 프롬프트에서 치십시오. 질문 6: 어떻게 키보드 설정 파일을 추가할 수 있나요? 답 6: 더하고자 하는 파일이 이미 다음 장소에 있는지 먼저 확인해 보십시오. /usr/share/yudit/data 그런 경우에는 다음 파일에 추가하기만 하면 됩니다. /usr/share/yudit/config/yudit.properties If not, you need to convert the source kmap file into binary format: 그렇지 않은 경우엔 컴파일되지 않은 kmap 파일을 이진 형식으로 컴파일해야 합니다. mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my 이렇게 얻은 My.my를 ~/.yudit/data에 복사해 넣으십시오. cp My.my ~/.yudit/data 새로 만든 kmap 파일이 있다면 그 소스 파일을 다음 판에 넣을 수 있도록 제게 보내 주십시오. kmap 파일 형식에 대해 더 자세히 알고 싶으면 다음 파일을 참고하십시오. /usr/share/yudit/doc/keymap-format.txt 유디트에 이미 들어 있는 kmap 소스 파일은 다음 장소에 있습니다. /usr/share/yudit/src/ kmap 파일은 인코딩 변환과 글꼴 맵 파일로도 쓰일 수 있답니다. 질문 7: 유디트의 메뉴나 도움말 등을 한국어나 다른 영어 이외의 언어로 나오게 하려면 어떻게 합니까? 답 7: 유디트 소스 파일을 다운로드한 후에 README.TXT를 읽어 보면, 어떻게 해야 하는지 알 수 있습니다. 아직 지원되지 않는 언어로 번역했다면, 다음 판에 넣을 수 있도록 그 결과를 제게 보내 주시기 바랍니다. 질문 8: 트루타잎 글꼴은 어떻게 추가합니까? 답 8: font1.ttf와 font2.ttf를 /usr/share/yudit/fonts 혹은 ~/.yudit/fonts 에 복사하십시오. 그 다음에 /usr/share/yudit/config/yudit.properties 에 새로운 가상 글꼴 MyFont를 다음과 같이 더해 주십시오. yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. 편집기에서 쓰려면 다음을 더하시고, yudit.editor.fonts=...,MyFont,... GUI 메뉴 등에서 쓰려면 다음을 더하십시오. yudit.fonts=...,MyFont,... 질문 9: 윈도 버전을 내놓을 계획인가요? 답 9: 유디트는 플랫폼 독립적인 창 관련 툴킷을 쓰고 있어서 현재 지원하는 GUI 플랫폼이 아닌 다른 플랫폼 (예를 들어, svgalib나 윈도)에 이식하는 일은 매우 손쉽습니다. 2001년 12월에 제 아내 유코를 위해 윈도에 이식했습니다. 그것은 제가 윈도를 만진 처음이자 마지막이었습니다. 질문 10: 유디트는 얼마나 좋은 유니코드 편집기인가요? 답 10: 저는 유니코드 표준이 합리적이라고 생각하는 부분에서는 이 표준을 구현하려고 노력했습니다. 유니코드 표준에는 하지만 몇 가지 저에겐 이상해 보이는 부분이 있습니다. BIDI (아랍어, 히브리어 등에서 필요한 양방향) 지원이 유니코드 표준에 얼마나 부합하는지에 대해서는 다음 문서를 읽어 보십시오. /usr/share/yudit/doc/HOWTO-bidi.txt 바탕 글자(base character)와 `액센트' (여러 유럽이나 아프리카의 언어나 베트남어, 수학 기호 등에서 필요한)를 결합해서 새로운 글자를 만들어 내는 것은 (A와 U+0302 - circumflex - 를 잇달아 써서 Â를 나타내는 일 따위) 지원합니다. 아랍어나 히브리어, 인도의 여러 스크립트에서 필요한 `shaping'도 지원을 더하는 중입니다. (역주 : 중세 한국어 지원은 아직 더해지지 않았습니다.) 질문 11: 명령행에 3개의 문서를 지정했습니다만, 오직 하나만 보입니다. 답 11: 나머지 두 개는 전에 편집한 문서 목록에 들어 있습니다. 명령 입력 영역으로 가서 위 화살표 (혹은 Ctrl-k)나 아래 화살표 (혹은 Ctrl-j)를 누르면 이 목록에 있는 문서 사이를 이동할 수 있습니다. 질문 12: 단축 키는 무엇 무엇이 있나요? 답 12: 대부분의 단축 키는 노란색 `풍선' 도움말을 통해 알 수 있습니다. 이들 대부분은 Alt는 물론 Shift와도 같이 작동합니다. 유디트에 있는 편집기는 다음과 같은 키를 지원합니다. Escape : 명령 모드와 편집 모드 사이를 전환합니다. Home : 화면 맨 위 왼쪽으로 이동합니다. CTRL-b : 한 쪽 아래 CTRL-f : 한 쪽 아래 CTRL-k : 위 CTRL-n,CTRL-j : 아래 CTRL-h : 왼쪽 CTRL-l : 오른쪽 CTRL-m : 한 줄 지움 CTRL-x : 선택한 부분 지움 CTRL-v : 마지막으로 선택한 부분 오려 붙이기 CTRL 대신 Shift나 Meta(대부분 PC 키보드에서 Alt)를 누른 채로 커서를 움직이면 문서의 부분을 선택할 수 있습니다. 마우스를 두 번 클릭하면 단어를 선택하고, 세 번 연속 클릭하면 줄 전체를 선택합니다. 질문 13: 이진 kmap 파일의 내용을 알고 싶으면 어떻게 해야 합니까? 답13: 다음과 같이 하면 이진 파일로부터 원본 파일을 얻을 수 있습니다. mytool -my /usr/share/yudit/data/GreekBible.my \ -convert mys -write GreekBible.mys 질문 14: 코드 포인트를 아는 유니코드 글자를 쉽게 넣는 방법이 있나요? 답 14: 입력 모드를 [unicode]로 바꾼 후에 `uxxxx' 혹은 `Uxxxxxxxx'를 치면 됩니다. `x'는 16진 숫자입니다. 질문 15: 치환 기능이 있나요? 답 15: 명령 영역에서 다음을 넣은 후에 커서가 `old-text'에 가 있을 때 [enter]를 누르십시오. replace old-text new-text 질문 16: 마우스로 그려 입력하기를 쓰려면 어떻게 하나요? 답 16: 파란 화살표(입력 방법)을 클릭한 후에 `freehand'를 기능 키 가운데 하나에 할당하면 됩니다. Q17: How can I turn off syntax highlighting? A17: From the command area by typing: 'syntax none'. The available options are printed in error label if you just type 'syntax'. You can set this in the config file too. Q18: How can I turn off word wrapping? A18: From the command area by typing: 'wordwrap false'. Typing 'wordwrap true' turns on word wrapping. You can set this in the config file too. 부록 ======== 1.1. 키보드 맵 보기 다음 보기는 유디트에 들어 있는 몇몇 kmap입니다. 러시아어 (Russian) 라틴 알파벳으로 키릴 알파벳의 러시아어 발음을 입력하면 해당하는 키릴 알파벳을 입력할 수 있습니다. 그다지 직관적이지 않은 것들에는 다음이 있습니다. yo -> ё , c -> ь, q -> ъ x -> ы , ee -> э 헝가리어 (Hungarian) 헝가리어와 독일어에 쓰이는 액센트 붙은 글자를 넣을 때 쓰입니다. 액센트 붙은 글자는 액센트 없는 라틴 알파벳을 친 다음에 액센트를 쳐서 입력할 수 있습니다. 보기 : a' -> á , o: -> ö , o" -> ő SS -> 독일어의 ß , Ss -> 문단/절 기호 §. 카나 일본어 입력에 쓰이는 방식으로 Romaji (로마자)를 히라가나와 카타카나로 바꿔 줍니다. 소문자는 히라가나에 대문자는 카타카나에 씁니다. 직관적으로 알 수 없는 보기는 아래와 같습니다. PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic IETF RFC 1345에서 정의한 니모닉을 써서 입력할 수 있습니다. 보기 : &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML SGML entity 이름을 Unicode 글자로 대응시킵니다. 보기 : ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul 한국어 로마자 표기법대로 로마자를 넣으면 대응하는 한글을 입력할 수 있습니다. 한국어 로마자 표기법은 ISO/TC46/SC2/WG4 규정을 따릅니다. 자세한 것은 다음 웹 사이트에서 찾을 수 있습니다. http://www.hansoft.com/hangul/faq.html 오토마타가 쓰이는 것이 아니고 단순히 키보드 맵만을 쓰고 있으므로 때로는 음절 구별을 위해 공백 문자를 쳐야 하는 경우도 있습니다. 보기 : ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./doc/ko/FAQ.TXT.in0000644000175000017500000002414711331217543013640 0ustar henrichhenrichYudit 유니코드 편집기 잦은 질문과 답 ======================== 판: 2.9.2 저자: Gaspar Sinai 최종 수정일: 2003년 6월 25일 (동경, 일본) 질문 1: 이 질문과 답을 다시 보려면 어떻게 해야 합니까? 답 1: 명령어 영역에서 `help'라고 치십시오. 또, 거기에서 `test'라고 치면 유디트 시험 페이지를 볼 수 있습니다. `howto ' (예를 들어, `howto configure')를 치면 howto 문서를 볼 수 있습니다. 질문 2: 최신판은 어디서 구할 수 있나요? 답 2: 에서 내려 받을 수 있습니다. 질문 3: 저장 단추를 클릭했는데도 아무런 일이 안 생깁니다. 왜 그런가요? 답 3: Yudit has a command line. Most propbably you just need to hit Enter Key. 질문 4: 거의 항상 "Unix"라고 설정되어 있는 메뉴바의 맨 오른쪽에 있는 [줄 바꿈]은 무엇을 위한 것인가요? A4: 줄바꿈 문자는 운영 체계나 사용자 필요에 따라 다릅니다. 유디트는 다음을 지원합니다. UNIX='\n' - 유닉스 방식 줄 바꿈 DOS='\r\n' - 도스 방식 줄 바꿈 MAC='\r' - 맥 방식 줄 바꿈 LS = U+2028 - 유니코드의 줄 바꿈 문자 PS = U+2029 - 유니코드의 단락 바꿈 문자 유디트에서는 이들 줄 바꿈 문자를 섞어 쓸 수 있습니다. 예를 들어, 도스 방식 줄 바꿈과 유닉스 방식 줄 바꿈이 섞인 문서를 만들 수 있습니다. 하지만, 가능하면 둘 이상의 줄 바꿈 문자를 섞는 일은 피하십시오. 질문 5: 어떻게 하면 `-e 인코딩' 옵션에 지정할 인코딩 목록을 알 수 있나요? 답 5: `man uniconv' 혹은 `uniconv -h'이라고 명령행 프롬프트에서 치십시오. 질문 6: 어떻게 키보드 설정 파일을 추가할 수 있나요? 답 6: 더하고자 하는 파일이 이미 다음 장소에 있는지 먼저 확인해 보십시오. @YUDIT_DATA@/data 그런 경우에는 다음 파일에 추가하기만 하면 됩니다. @YUDIT_DATA@/config/yudit.properties If not, you need to convert the source kmap file into binary format: 그렇지 않은 경우엔 컴파일되지 않은 kmap 파일을 이진 형식으로 컴파일해야 합니다. mytool -type kmap -kmap My.kmap -rkmap My.kmap -write My.my 이렇게 얻은 My.my를 ~/.yudit/data에 복사해 넣으십시오. cp My.my ~/.yudit/data 새로 만든 kmap 파일이 있다면 그 소스 파일을 다음 판에 넣을 수 있도록 제게 보내 주십시오. kmap 파일 형식에 대해 더 자세히 알고 싶으면 다음 파일을 참고하십시오. @YUDIT_DATA@/doc/keymap-format.txt 유디트에 이미 들어 있는 kmap 소스 파일은 다음 장소에 있습니다. @YUDIT_DATA@/src/ kmap 파일은 인코딩 변환과 글꼴 맵 파일로도 쓰일 수 있답니다. 질문 7: 유디트의 메뉴나 도움말 등을 한국어나 다른 영어 이외의 언어로 나오게 하려면 어떻게 합니까? 답 7: 유디트 소스 파일을 다운로드한 후에 README.TXT를 읽어 보면, 어떻게 해야 하는지 알 수 있습니다. 아직 지원되지 않는 언어로 번역했다면, 다음 판에 넣을 수 있도록 그 결과를 제게 보내 주시기 바랍니다. 질문 8: 트루타잎 글꼴은 어떻게 추가합니까? 답 8: font1.ttf와 font2.ttf를 @YUDIT_DATA@/fonts 혹은 ~/.yudit/fonts 에 복사하십시오. 그 다음에 @YUDIT_DATA@/config/yudit.properties 에 새로운 가상 글꼴 MyFont를 다음과 같이 더해 주십시오. yudit.font.MyFont=font-file.ttf,some-other-fontfile.ttf,.. 편집기에서 쓰려면 다음을 더하시고, yudit.editor.fonts=...,MyFont,... GUI 메뉴 등에서 쓰려면 다음을 더하십시오. yudit.fonts=...,MyFont,... 질문 9: 윈도 버전을 내놓을 계획인가요? 답 9: 유디트는 플랫폼 독립적인 창 관련 툴킷을 쓰고 있어서 현재 지원하는 GUI 플랫폼이 아닌 다른 플랫폼 (예를 들어, svgalib나 윈도)에 이식하는 일은 매우 손쉽습니다. 2001년 12월에 제 아내 유코를 위해 윈도에 이식했습니다. 그것은 제가 윈도를 만진 처음이자 마지막이었습니다. 질문 10: 유디트는 얼마나 좋은 유니코드 편집기인가요? 답 10: 저는 유니코드 표준이 합리적이라고 생각하는 부분에서는 이 표준을 구현하려고 노력했습니다. 유니코드 표준에는 하지만 몇 가지 저에겐 이상해 보이는 부분이 있습니다. BIDI (아랍어, 히브리어 등에서 필요한 양방향) 지원이 유니코드 표준에 얼마나 부합하는지에 대해서는 다음 문서를 읽어 보십시오. @YUDIT_DATA@/doc/HOWTO-bidi.txt 바탕 글자(base character)와 `액센트' (여러 유럽이나 아프리카의 언어나 베트남어, 수학 기호 등에서 필요한)를 결합해서 새로운 글자를 만들어 내는 것은 (A와 U+0302 - circumflex - 를 잇달아 써서 Â를 나타내는 일 따위) 지원합니다. 아랍어나 히브리어, 인도의 여러 스크립트에서 필요한 `shaping'도 지원을 더하는 중입니다. (역주 : 중세 한국어 지원은 아직 더해지지 않았습니다.) 질문 11: 명령행에 3개의 문서를 지정했습니다만, 오직 하나만 보입니다. 답 11: 나머지 두 개는 전에 편집한 문서 목록에 들어 있습니다. 명령 입력 영역으로 가서 위 화살표 (혹은 Ctrl-k)나 아래 화살표 (혹은 Ctrl-j)를 누르면 이 목록에 있는 문서 사이를 이동할 수 있습니다. 질문 12: 단축 키는 무엇 무엇이 있나요? 답 12: 대부분의 단축 키는 노란색 `풍선' 도움말을 통해 알 수 있습니다. 이들 대부분은 Alt는 물론 Shift와도 같이 작동합니다. 유디트에 있는 편집기는 다음과 같은 키를 지원합니다. Escape : 명령 모드와 편집 모드 사이를 전환합니다. Home : 화면 맨 위 왼쪽으로 이동합니다. CTRL-b : 한 쪽 아래 CTRL-f : 한 쪽 아래 CTRL-k : 위 CTRL-n,CTRL-j : 아래 CTRL-h : 왼쪽 CTRL-l : 오른쪽 CTRL-m : 한 줄 지움 CTRL-x : 선택한 부분 지움 CTRL-v : 마지막으로 선택한 부분 오려 붙이기 CTRL 대신 Shift나 Meta(대부분 PC 키보드에서 Alt)를 누른 채로 커서를 움직이면 문서의 부분을 선택할 수 있습니다. 마우스를 두 번 클릭하면 단어를 선택하고, 세 번 연속 클릭하면 줄 전체를 선택합니다. 질문 13: 이진 kmap 파일의 내용을 알고 싶으면 어떻게 해야 합니까? 답13: 다음과 같이 하면 이진 파일로부터 원본 파일을 얻을 수 있습니다. mytool -my @YUDIT_DATA@/data/GreekBible.my \ -convert mys -write GreekBible.mys 질문 14: 코드 포인트를 아는 유니코드 글자를 쉽게 넣는 방법이 있나요? 답 14: 입력 모드를 [unicode]로 바꾼 후에 `uxxxx' 혹은 `Uxxxxxxxx'를 치면 됩니다. `x'는 16진 숫자입니다. 질문 15: 치환 기능이 있나요? 답 15: 명령 영역에서 다음을 넣은 후에 커서가 `old-text'에 가 있을 때 [enter]를 누르십시오. replace old-text new-text 질문 16: 마우스로 그려 입력하기를 쓰려면 어떻게 하나요? 답 16: 파란 화살표(입력 방법)을 클릭한 후에 `freehand'를 기능 키 가운데 하나에 할당하면 됩니다. Q17: How can I turn off syntax highlighting? A17: From the command area by typing: 'syntax none'. The available options are printed in error label if you just type 'syntax'. You can set this in the config file too. Q18: How can I turn off word wrapping? A18: From the command area by typing: 'wordwrap false'. Typing 'wordwrap true' turns on word wrapping. You can set this in the config file too. 부록 ======== 1.1. 키보드 맵 보기 다음 보기는 유디트에 들어 있는 몇몇 kmap입니다. 러시아어 (Russian) 라틴 알파벳으로 키릴 알파벳의 러시아어 발음을 입력하면 해당하는 키릴 알파벳을 입력할 수 있습니다. 그다지 직관적이지 않은 것들에는 다음이 있습니다. yo -> ё , c -> ь, q -> ъ x -> ы , ee -> э 헝가리어 (Hungarian) 헝가리어와 독일어에 쓰이는 액센트 붙은 글자를 넣을 때 쓰입니다. 액센트 붙은 글자는 액센트 없는 라틴 알파벳을 친 다음에 액센트를 쳐서 입력할 수 있습니다. 보기 : a' -> á , o: -> ö , o" -> ő SS -> 독일어의 ß , Ss -> 문단/절 기호 §. 카나 일본어 입력에 쓰이는 방식으로 Romaji (로마자)를 히라가나와 카타카나로 바꿔 줍니다. 소문자는 히라가나에 대문자는 카타카나에 씁니다. 직관적으로 알 수 없는 보기는 아래와 같습니다. PP - 〒 <> - ◇ <>> - ◆ [] - □ []] - ■ OO - ● * - ☆ ** - ★ ~ - ・ Oo - ◎ o+ - ♀ o- - ♂ oC - ℃ Y= - ¥ Mnemonic IETF RFC 1345에서 정의한 니모닉을 써서 입력할 수 있습니다. 보기 : &0u - ☺ &0U - ☻ &tel - ☏ &PI - ¶ &SU - ☼ &cH- - ♥ &M2=♫ &sn - ش SGML SGML entity 이름을 Unicode 글자로 대응시킵니다. 보기 : ♀ - ♀ ♠ - ♠, ╞ - ╞ █ - █ ░ - ░ ⅛ - ⅛ Hangul 한국어 로마자 표기법대로 로마자를 넣으면 대응하는 한글을 입력할 수 있습니다. 한국어 로마자 표기법은 ISO/TC46/SC2/WG4 규정을 따릅니다. 자세한 것은 다음 웹 사이트에서 찾을 수 있습니다. http://www.hansoft.com/hangul/faq.html 오토마타가 쓰이는 것이 아니고 단순히 키보드 맵만을 쓰고 있으므로 때로는 음절 구별을 위해 공백 문자를 쳐야 하는 경우도 있습니다. 보기 : ulyanghan - 우량한 pyohyeon - 표현 cinseon - 친선, jageug - 자극 hwang geum 황금 ./yuditw.properties0000644000175000017500000002662511331173671014516 0ustar henrichhenrich# Yudit properties # # A property file for yudit. If a particular property is # both present in # # @prefix@/share/yudit/yudit.properties # # and in # # ~/.yudit/yudit.properties # # the latter will be used. # # Format: # property=value # property=listelement1,listelement2 # '\' is treated as a line joiner if it stands at the end of line. # # Caution # Entries should not contain any white space. # Lines that start with '#' are treated as comments of the # line below. # Comments are merged too. # The following properties will always have system comments: # # 00HEADER # yudit.default.language # 00HEADER= # # This is where the .my files are # yudit.datapath=/home/gsinai/build/share/yudit/data # # This is where the .ttf (True Type font) files are # yudit.fontpath=/home/gsinai/build/share/yudit/fonts,/usr/share/yudit/data # # This is where the .syn (Syntax Highlighting) files are # yudit.syntaxpath=/home/gsinai/build/share/yudit/syntax # The overall background. # new #yudit.editor.background=black yudit.background=gray50 # The overall foreground (text labels, e.t.c.) yudit.label.foreground=moccasin # The overall foreground (labels that have titles) yudit.title.foreground=white # The overall font, fontsize yudit.default.font=default yudit.default.fontsize=16 # # The size of the window # yudit.default.geometry=765x510 # This is the handwriting (freehand) input. you need 'kanji.hwd' for this. yudit.freehand.converter=kanji # # Put your language here. currently I have # am Amharic/Ethiopia # ar Arabic/ # az Azerbaijani Turkish # bn Bengali # bg Bulgaria/Bulgarian # de Germany/German # cs Czechia/Czech # en US/English # el Greece/Greek # es Spain/Spanish # fi Finland/Finnish # fr France/French # ga Irish # gu Gujarati # hi Hindi # hu Hungary/Hungarian # ja Japan/Japanese # ko Korea/Korean # mn Mongolia/Mongolian # mr Marathi # pa Punjabi # pl Polish/Poland # ru Russian/Russia # sl Slovenia/Slovenian # sr Yugoslavia/Serbian # ta Tamil # uk Ukrainian # ur Urdu/Pakistan # vi Vietnamese/Vietnam # yi Israel/Yiddish # zh Chinese/HongKong # zh_CN Chinese (Simplified) # # If you leave it empty English is used. # If you specify yudit.default.language=default, then LANG environment # variable is used. Be careful - you may not have the font! # yudit.default.language= # # Things will be put on X11 clipboard with this encoding. # This should be a compound text encoding. # # For new systems: yudit.default.clipboard.encoding=shift-jis-3 # # The following always get updated and written to # ~/.yudit/yudit.properties # yudit.default.filetype=utf-8 yudit.default.printer.options= # # From version 2.5 -e will be passed to mytool -pipecmd # Which will create a tmp file and pass it to gv. # when gv exits the temporary file is deleted # On windows only preview/printing is available for now. # # yudit.default.preview.command=gv # # Windows. # http://pages.cs.wisc.edu/~ghost/ # (or www.ghostgum.com.au) # yudit.default.preview.command="C:/Program Files/Ghostgum/gsview/gsview32.exe" # # The text edit area background. # # try yudit.editor.background=black #yudit.editor.background=white # # # Syntax highlighter / spelling checker colors # # There is no # # yudit.editor.syntax.none.foreground # # For NONE and ERROR yudit.editor.left.foreground or # yudit.editor.right.foreground is used. For ERROR # it is underlined with yudit.editor.syntax.error.foreground # yudit.editor.syntax.error.foreground=red yudit.editor.syntax.number.foreground=orange yudit.editor.syntax.string.foreground=magenta yudit.editor.syntax.comment.foreground=lightgray yudit.editor.syntax.token.foreground=yellow yudit.editor.syntax.variable.foreground=red yudit.editor.syntax.define.foreground=cyan yudit.editor.syntax.control.foreground=CornflowerBlue # # Left and right indicate text directions # # try yudit.editor.left.foreground=green yudit.editor.right.foreground=yellow #yudit.editor.left.foreground=black #yudit.editor.right.foreground=blue yudit.editor.caret.left.foreground=red yudit.editor.caret.right.foreground=red # # This one is to show end of line. # yudit.editor.showbreak=true # # use true to turn word wrapping on # yudit.editor.wordwrap=false # # possible values for syntax hightlighting: # none - no highlighting # simple - letters: yudit.editor.left.foreground, numbers: orange, other: blue # dark - letters: yudit.editor.left.foreground, numbers: orange4, other: blue # yudit.editor.syntax=simple # # The same for command area # yudit.command.background=black yudit.command.left.foreground=green yudit.command.right.foreground=yellow yudit.command.caret.left.foreground=red yudit.command.caret.right.foreground=red # # Slider color # yudit.slider.background=#497986 # # The fontsizes to choose from. # yudit.editor.fontsizes=10,12,13,14,15,16,18,20,24,48 # # The fonts. All of these should be defined in yudit.font. # yudit.editor.fonts=default,TrueType,Serif,SansSerif,Box,Full,Indic-F,Indic-M yudit.editor.inputs=straight,unicode,WindowsIM,Hungarian,freehand,Hangul,\ Kana,Mnemonic,Esperanto,Tamil,Yiddish,HungarianRunes yudit.editor.fontsize=18 yudit.editor.font=default yudit.editor.input=straight yudit.fonts=default,TrueType,Bitmap,Japanese,Courier,Times,Helvetica,Lucida,Misc # # The font definitions used by yudit.editor.fonts and yudit.fonts # Don't mess with 'default' font unless you have to. It is internally defined. # # 1. For convention always have one yudit.font.TrueType # 2. Fonts additionally can have an encoding specified, the # ':' character is used as a separator. # 3. Fonts, in addition to encoding can have attributes specified. # currently used attributes: # # RL - Strictly Right-To-Left font # LR - Strictly Left-To-Right font # # If not specified it is used as LR or RL and for RL mirrored glyphs # it will get mirrored by software. # # The font definitions used by yudit.editor.fonts and yudit.fonts # Don't mess with 'default' font unless you have to. It is internally defined. # # - For convention always have one yudit.font.TrueType # - Fonts additionally can have an encoding specified, the # ':' character is used as a separator. # The following font hard-coded encoders will act as range selectors: # # unicode: U+0000..U+7FFFFFFF # indic: U+0900..U+0FFF # deva: U+0900..U+097F # beng: U+0980..U+09FF # guru: U+0A00..U+0A7F # gujr: U+0A80..U+0AFF # orya: U+0B00..U+0B7F # taml: U+0B80..U+0BFF # telu: U+0C00..U+0C7F # knda: U+0C80..U+0CFF # mlym: U+0D00..U+0D7F # sinh: U+0D80..U+0DFF # thai: U+0E00..U+0E7F # lao: U+0E80..U+0EFF # tibt: U+0F00..U+0FFF # jamo: U+1100..U+11FF # # - Fonts, in addition to encoding can have attributes specified. # currently used attributes: # # RL - Strictly Right-To-Left font # LR - Strictly Left-To-Right font # # If not specified it is used as LR or RL and for RL mirrored glyphs # it will get mirrored by software. # yudit.font.TrueType=arial.ttf,gulim.ttf,ogulim.ttf:raghu.ttf,tsckanna.ttf:tscii,dc-font.ttf:mlym,MalOtf.ttf:mlym,code2000.ttf,code2001.ttf:unicode:RL,cyberbit.ttf,yudit.ttf # # This is a package for full coverage of testpage # MuktiNarrow.ttf: # http://savannah.nongnu.org/download/freebangfont/MuktiNarrow-0.94.tar.bz2 # yudit.font.Full=hln.ttf,MuktiNarrow.ttf:beng,ani.ttf:beng,raghu.ttf:deva,dc-font.ttf:mlym,latha.ttf:taml,tunga.ttf:knda,tibt.ttf:tibt,TCRCYoutsoUnicode.ttf:tibt,raavi.ttf:guru,shruti.ttf:gujr,yudit.ttf,cyberbit.ttf,code2001.ttf,code2000.ttf # # Serif.ttf is in fact a paid font DFMinchoPPro5-W5.ttf # yudit.font.Serif=Serif.ttf,times.ttf,cyberbit.ttf,yudit.ttf # # SansSerif.ttf is in fact a paid font DFGothicPPro5-W5.ttf # yudit.font.SansSerif=SansSerif.ttf,arialuni.ttf,yudit.ttf # # A fairly good set of free or almost free fonts. # As you might have noticed I used the selectors so that # they won't mix up with each other. OpenType script name # can be used for this purpose. # yudit.font.Indic-F=raghu.ttf:deva,bangla.ttf:beng,ani.ttf:beng,sampige.ttf:knda,pothana2000.ttf:telu,TCRCYoutsoUnicode.ttf:tibt,MalOtf.ttf:mlym,code2000.ttf,yudit.ttf # # A set of fonts that you usually can find on MS systems. # yudit.font.Indic-M=mangal.ttf:deva,vrinda.ttf:beng,tunga.ttf:knda,latha.ttf:taml,gautami.ttf:telu,raavi.ttf:guru,shruti.ttf:gujr,tibt.ttf:tibt,arialuni.ttf,yudit.ttf # # For convention always have one yudit.font.Bitmap # yudit.font.Bitmap=\ -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1,*-iso8859-1,\ -sony-fixed-medium-r-normal--*-230-75-75-c-120-iso8859-1 # # Direct rendering if you have unifont.hex. # yudit.font.Unifont=unifont.hex yudit.font.Japanese=\ *-jisx0208.1983-0,\ *-jisx0201.1976-0,\ *-jisx0212.1990-0,\ -adobe-helvetica-medium-r-normal--*-*-*-*-*-*-iso8859-1 # # Get Courier, Helvetice and Times from Markus Kuhn's Unicode FAQ. # Fallback same with iso9959-1. # yudit.font.Helvetica=\ -adobe-helvetica-medium-r-normal--*-*-75-75-p-*-iso10646-1,\ -adobe-helvetica-*-iso8859-1 yudit.font.Times=\ -adobe-times-medium-r-normal--*-*-75-75-p-*-iso10646-1,\ -adobe-times-*-iso8859-1 # Some experiment with bold yudit.font.Courier=\ -adobe-courier-bold-r-normal--*-*-75-75-m-*-iso10646-1,\ -adobe-courier-*-iso8859-1 # Some experiment with bold yudit.font.Lucida=\ -*-lucidabright-demibold-r-normal--*-*-75-75-p-*-iso10646-1,\ -*-lucidabright-*-r-normal-*-iso8859-1 # http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz yudit.font.Bitmap=-gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1,*-iso8859-1,-sony-fixed-medium-r-normal--*-230-75-75-c-120-iso8859-1 # These size 18 fonts are in ucs-fonts.tar.gz. #yudit.font.Misc=-misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1,\ #-misc-fixed-medium-r-normal--18-120-100-100-c-90-iso8859-2,\ #-misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 # # These size 18,13 fonts are in ucs-fonts.tar.gz - help yourself # wget http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz # wget http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts-asian.tar.gz # mkdir ucs-fonts; cd ucs-fonts # tar xfz ../ucs-fonts.tar.gz # tar xfz ../ucs-fonts-asian.tar.gz # xset fp+ `pwd` # yudit.font.Misc=-misc-fixed-medium-r-*--18-*-*-*-c-*-iso10646-1,\ -misc-fixed-medium-r-*-ja-18-*-*-*-c-*-iso10646-1,\ -freetype-unitamil-medium-r-*--18-*-*-*-p-*-iso10646-1,\ -*-iso10646-tam,\ -*-iso10646-dev,\ -misc-fixed-medium-r-*--18-*-*-*-c-*-iso8859-2,\ yudit.ttf:cp-1250 # http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz yudit.font.MiscBold=\ -misc-fixed-bold-r-normal--*-*-75-75-*-*-iso10646-1,\ -misc-fixed-bold-r-normal--*-*-75-75-*-*-iso8859-1\ # # Get a full list from uniconv -h. Only internal encoding are added, # The rest is appended from this list. # yudit.editor.filetypes=Devanagari,Bengali,Tamil,Hungarian,HungarianRunes,Hangul,Bulgarian,Russian,Russian-ISO-Translit,SGML,Yiddish,Troff,Chinese-CJ,DE-RU,GreekBible,Kana,Mnemonic,RU-translit,IS_AS,IS_BN,IS_DV,IS_GJ,IS_KN,IS_ML,IS_OR,IS_PJ,IS_RM,IS_TL,IS_TM yudit.command.font=default yudit.command.fontsize=18 # # This is a bitmap font, good for box drawing # No markus18x18ja.bdf can be scepified because of ascent # yudit.font.Box=unifont.hex,markus9x18.bdf # # The x input style for the editor window. # Available styles: # preedit-root-status-root # preedit-over-status-over # preedit-over-status-under # preedit-under-status-under # yudit.editor.xinputs.style=preedit-over-status-under ./PUA/0000755000175000017500000000000011334266623011470 5ustar henrichhenrich./PUA/README.TXT0000644000175000017500000000043211334266617013030 0ustar henrichhenrichThere are some characters that Yudit can use and yudit.ttf contains, but they are not in Unicode. These characters use the Unicode Private Use Area. The code assignments for Yudit PUA can be found in mytool/uni/ROVASIRAS.TXT mytool/uni/BLISSYMBOLICS.TXT Gaspar Sinai 2010-02-09